diff --git a/lerna.json b/lerna.json index 183d2fcd1a7..1e3316d2506 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.0", + "version": "1.0.34", "lerna": "2.0.0", "command": { "init": { diff --git a/package-lock.json b/package-lock.json index c4110c37bcb..b66600b0ed0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1203,6 +1203,76 @@ "minimist": "^1.2.0" } }, + "@definitelytyped/header-parser": { + "version": "0.0.111", + "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", + "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", + "requires": { + "@definitelytyped/typescript-versions": "^0.0.111", + "@types/parsimmon": "^1.10.1", + "parsimmon": "^1.13.0" + } + }, + "@definitelytyped/typescript-versions": { + "version": "0.0.111", + "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", + "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==" + }, + "@definitelytyped/utils": { + "version": "0.0.111", + "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", + "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", + "requires": { + "@definitelytyped/typescript-versions": "^0.0.111", + "@qiwi/npm-registry-client": "^8.9.1", + "@types/node": "^14.14.35", + "charm": "^1.0.2", + "fs-extra": "^8.1.0", + "fstream": "^1.0.12", + "tar": "^2.2.2", + "tar-stream": "^2.1.4" + }, + "dependencies": { + "@types/node": { + "version": "14.18.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", + "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==" + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "tar": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", + "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", + "requires": { + "block-stream": "*", + "fstream": "^1.0.12", + "inherits": "2" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + } + } + }, "@discoveryjs/json-ext": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.5.tgz", @@ -1659,9 +1729,9 @@ "dev": true }, "@grpc/grpc-js": { - "version": "1.5.8", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.8.tgz", - "integrity": "sha512-sfoF2yMVJcqEoX8E3o9+idUckv/w4cM+lt3U7Qz6GUBLgxAh1NS/3fEZKOMhwdvOEgWvPqbls/EgLXGKI0sm2A==", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.2.tgz", + "integrity": "sha512-9+89Ne1K8F9u86T+l1yIV2DS+dWHYVK61SsDZN4MFTFehOOaJ4rHxa1cW8Lwdn2/6tOx7N3+SY/vfcjztOHopA==", "requires": { "@grpc/proto-loader": "^0.6.4", "@types/node": ">=12.12.47" @@ -1755,15 +1825,15 @@ } }, "@hashgraph/cryptography": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@hashgraph/cryptography/-/cryptography-1.1.1.tgz", - "integrity": "sha512-/0G9p9W/m9M/dQY1W7p3osrDP5YQndHvgwbrruoMr5uBD1ZKBVmJjG4+iqbOgA/J+/dLiwPEor6IEEE6gofv2w==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@hashgraph/cryptography/-/cryptography-1.1.2.tgz", + "integrity": "sha512-oSnDDs5foNq6Yni4kCwbA01NuVY2mewVr1jhkJG7yNDT6+xIBCztRWDeINb1JuShXe57Cuf88M1zmN5iFN7JgA==", "requires": { "bignumber.js": "^9.0.2", "crypto-js": "^4.1.1", "elliptic": "^6.5.4", - "expo-crypto": "^10.1.1", - "expo-random": "^12.1.1", + "expo-crypto": "^10.1.2", + "expo-random": "^12.1.2", "js-base64": "^3.7.2", "tweetnacl": "^1.0.3", "utf8": "^3.0.0" @@ -1782,25 +1852,26 @@ } }, "@hashgraph/proto": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@hashgraph/proto/-/proto-2.1.4.tgz", - "integrity": "sha512-gZP206s1SuWb4By8BIyAtRwXoO59ARfhShg4YIG+7Cp0rWXe0I1D+uQm4HRaPIWMU0S7xXUec/JPwnMefetTSg==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@hashgraph/proto/-/proto-2.1.5.tgz", + "integrity": "sha512-7iKO98T3iS+V+Ddy3Ew7+u8nzFT8MjRs6HczPE2scCjwKRhsodtYfGyOxVji+HN6WDqZmylr1VJwhNy5de/CRQ==", "requires": { "long": "^4.0.0", "protobufjs": "^6.11.2" } }, "@hashgraph/sdk": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/@hashgraph/sdk/-/sdk-2.10.1.tgz", - "integrity": "sha512-5vnh1S5gnwBSRlh6EEqYVOnBeTPiuzcz9A+Sb0nC/DfhjSkhlMo9gTiWCDJxDYktsoXrhrTNwETg0KRsHjh8zw==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@hashgraph/sdk/-/sdk-2.11.0.tgz", + "integrity": "sha512-VlzhxMiIfCypEuLh0Peg4KcRmbkKzus+PtLmflugA6bGabqn4XmOKRHteSS26sJj94plittsE2dgDLWkqjquFw==", "requires": { "@grpc/grpc-js": "^1.5.3", "@hashgraph/cryptography": "^1.1.0-beta.5", - "@hashgraph/proto": "2.1.4", + "@hashgraph/proto": "2.1.5", "bignumber.js": "^9.0.2", "crypto-js": "^4.1.1", "js-base64": "^3.7.2", + "js-logger": "^1.6.1", "long": "^4.0.0", "protobufjs": "^6.11.2", "utf8": "^3.0.0" @@ -1937,9 +2008,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -2092,9 +2163,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -2349,9 +2420,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -2566,9 +2637,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -2732,9 +2803,9 @@ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "source-map": { "version": "0.6.1", @@ -2886,9 +2957,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -5003,6 +5074,11 @@ "typedarray": "^0.0.6" } }, + "lru-cache": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.8.1.tgz", + "integrity": "sha512-E1v547OCgJvbvevfjgK9sNKIVXO96NnsTsFPBlg4ZxjhsJSODoH9lk8Bm0OxvHNm6Vm5Yqkl/1fErDxhYL8Skg==" + }, "readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -5014,11 +5090,11 @@ } }, "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.3.6", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.6.tgz", + "integrity": "sha512-HZWqcgwLsjaX1HBD31msI/rXktuIhS+lWvdE4kN9z+8IVT4Itc7vqU2WvYsyD6/sjYCt4dEKH/m1M3dwI9CC5w==", "requires": { - "lru-cache": "^6.0.0" + "lru-cache": "^7.4.0" } } } @@ -5058,9 +5134,9 @@ "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==" }, "@types/babel__core": { - "version": "7.1.18", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.18.tgz", - "integrity": "sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ==", + "version": "7.1.19", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz", + "integrity": "sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==", "requires": { "@babel/parser": "^7.1.0", "@babel/types": "^7.0.0", @@ -5234,9 +5310,9 @@ } }, "@types/prettier": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.4.tgz", - "integrity": "sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA==" + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.6.0.tgz", + "integrity": "sha512-G/AdOadiZhnJp0jXCaBQU449W2h716OW/EoXeYkCytxKL06X1WCXB4DZpp8TpZ8eyIJVS1cw4lrlkkSYU21cDw==" }, "@types/secp256k1": { "version": "4.0.3", @@ -8470,6 +8546,135 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.0.tgz", "integrity": "sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q==" }, + "dts-critic": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", + "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", + "requires": { + "@definitelytyped/header-parser": "^0.0.111", + "command-exists": "^1.2.8", + "rimraf": "^3.0.2", + "semver": "^6.2.0", + "tmp": "^0.2.1", + "yargs": "^15.3.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "requires": { + "p-limit": "^2.2.0" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, "dtslint": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", @@ -8486,53 +8691,6 @@ "yargs": "^15.1.0" }, "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==" - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==" - }, "ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -8569,19 +8727,6 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -8633,14 +8778,6 @@ "p-limit": "^2.2.0" } }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - } - }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -8654,16 +8791,6 @@ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, "universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", @@ -9995,12 +10122,17 @@ "rimraf": "2" }, "dependencies": { + "minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "requires": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" } } } @@ -12476,9 +12608,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -12726,9 +12858,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -12929,9 +13061,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -13200,9 +13332,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -13324,9 +13456,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -13425,9 +13557,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -13568,9 +13700,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -13824,9 +13956,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -14022,9 +14154,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -14299,9 +14431,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -14502,9 +14634,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -14724,9 +14856,9 @@ "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -14816,6 +14948,11 @@ } } }, + "lru-cache": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.8.1.tgz", + "integrity": "sha512-E1v547OCgJvbvevfjgK9sNKIVXO96NnsTsFPBlg4ZxjhsJSODoH9lk8Bm0OxvHNm6Vm5Yqkl/1fErDxhYL8Skg==" + }, "pretty-format": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", @@ -14834,11 +14971,11 @@ } }, "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.3.6", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.6.tgz", + "integrity": "sha512-HZWqcgwLsjaX1HBD31msI/rXktuIhS+lWvdE4kN9z+8IVT4Itc7vqU2WvYsyD6/sjYCt4dEKH/m1M3dwI9CC5w==", "requires": { - "lru-cache": "^6.0.0" + "lru-cache": "^7.4.0" } }, "slash": { @@ -15099,9 +15236,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -15161,6 +15298,11 @@ "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz", "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" }, + "js-logger": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/js-logger/-/js-logger-1.6.1.tgz", + "integrity": "sha512-yTgMCPXVjhmg28CuUH8CKjU+cIKL/G+zTu4Fn4lQxs8mRFH/03QTNvEFngcxfg/gRDiQAOoyCKmMTOm9ayOzXA==" + }, "js-sha3": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", @@ -18273,9 +18415,9 @@ }, "dependencies": { "@types/node": { - "version": "17.0.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", - "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==" + "version": "17.0.23", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz", + "integrity": "sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==" } } }, @@ -21316,9 +21458,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "has-flag": { "version": "4.0.0", @@ -21343,12 +21485,17 @@ "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=" }, + "lru-cache": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.8.1.tgz", + "integrity": "sha512-E1v547OCgJvbvevfjgK9sNKIVXO96NnsTsFPBlg4ZxjhsJSODoH9lk8Bm0OxvHNm6Vm5Yqkl/1fErDxhYL8Skg==" + }, "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.3.6", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.6.tgz", + "integrity": "sha512-HZWqcgwLsjaX1HBD31msI/rXktuIhS+lWvdE4kN9z+8IVT4Itc7vqU2WvYsyD6/sjYCt4dEKH/m1M3dwI9CC5w==", "requires": { - "lru-cache": "^6.0.0" + "lru-cache": "^7.4.0" } }, "supports-color": { @@ -21413,12 +21560,17 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, + "minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "requires": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" } }, "semver": { diff --git a/package.json b/package.json index 91f54f4abe8..135fb5bcf26 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "scripts": { "version": "npm run build", "postinstall": "npm run bootstrap", - "build": "npm run bootstrap && lerna run compile && lerna run compile:cjs && webpack && cp -r ./dist ./packages/hweb3", + "build": "npm run bootstrap && lerna run compile && lerna run compile:cjs", "publish": "lerna publish", "bootstrap": "lerna bootstrap --hoist", "lint": "jshint *.js packages", diff --git a/packages/hweb3-bzz/package-lock.json b/packages/hweb3-bzz/package-lock.json index 7a795d1fd11..0b490600179 100644 --- a/packages/hweb3-bzz/package-lock.json +++ b/packages/hweb3-bzz/package-lock.json @@ -1,2669 +1,19 @@ { "name": "@arianelabs/hweb3-bzz", - "version": "1.0.0", + "version": "1.0.21", "lockfileVersion": 1, "requires": true, "dependencies": { - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, - "@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==" - }, - "@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", - "requires": { - "defer-to-connect": "^1.0.1" - } - }, "@types/node": { "version": "12.20.33", "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.33.tgz", "integrity": "sha512-5XmYX2GECSa+CxMYaFsr2mrql71Q4EvHjKS+ox/SiwSdaASMoBIWE6UmZqFO+VX1jIcsYLStI4FFoB6V7FeIYw==" }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - }, - "async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==" - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" - }, - "dependencies": { - "qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==" - } - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "buffer-to-arraybuffer": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz", - "integrity": "sha1-YGSkD6dutDxyOrqe+PbhIW0QURo=" - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - }, - "cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "requires": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "dependencies": { - "get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "requires": { - "pump": "^3.0.0" - } - }, - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" - } - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "clone-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", - "requires": { - "mimic-response": "^1.0.0" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "requires": { - "safe-buffer": "5.2.1" - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" - }, - "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" - }, - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", - "requires": { - "mimic-response": "^1.0.0" - } - }, - "defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dom-walk": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", - "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "requires": { - "once": "^1.4.0" - } - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" - }, - "eth-lib": { - "version": "0.1.29", - "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.1.29.tgz", - "integrity": "sha512-bfttrr3/7gG4E02HoWTDUcDDslN003OlOoBxk9virpAZQ1ja/jDgwkWB8QfJF7ojuEowrqy+lzp9VcJG7/k5bQ==", - "requires": { - "bn.js": "^4.11.6", - "elliptic": "^6.4.0", - "nano-json-stream-parser": "^0.1.2", - "servify": "^0.1.12", - "ws": "^3.0.0", - "xhr-request-promise": "^0.1.2" - } - }, - "express": { - "version": "4.17.3", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", - "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.19.2", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.4.2", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "~1.1.2", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.9.7", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.17.2", - "serve-static": "1.14.2", - "setprototypeof": "1.2.0", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==" - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", - "requires": { - "minipass": "^2.6.0" - }, - "dependencies": { - "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - } - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "requires": { - "pump": "^3.0.0" - } - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "global": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", - "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", - "requires": { - "min-document": "^2.19.0", - "process": "^0.11.10" - } - }, - "got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "requires": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-symbol-support-x": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", - "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==" - }, - "has-to-string-tag-x": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", - "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", - "requires": { - "has-symbol-support-x": "^1.4.1" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" - }, - "http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz", - "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==" - }, - "is-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", - "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==" - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" - }, - "is-retry-allowed": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", - "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==" - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "isurl": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", - "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", - "requires": { - "has-to-string-tag-x": "^1.2.0", - "is-object": "^1.0.1" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" - }, - "json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", - "requires": { - "json-buffer": "3.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" - }, - "min-document": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", - "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", - "requires": { - "dom-walk": "^0.1.0" - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", - "requires": { - "minipass": "^2.9.0" - }, - "dependencies": { - "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - } - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "requires": { - "minimist": "^1.2.5" - } - }, - "mkdirp-promise": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz", - "integrity": "sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE=", - "requires": { - "mkdirp": "*" - } - }, - "mock-fs": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", - "integrity": "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==" - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "nano-json-stream-parser": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", - "integrity": "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=" - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==" - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==" - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-timeout": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", - "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", - "requires": { - "p-finally": "^1.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parse-headers": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz", - "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==" - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=" - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - } - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==" - }, - "query-string": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", - "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", - "requires": { - "decode-uri-component": "^0.2.0", - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - }, - "raw-body": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", - "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", - "requires": { - "bytes": "3.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", - "requires": { - "lowercase-keys": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "send": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", - "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", - "requires": { - "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "1.8.1", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "~2.3.0", - "range-parser": "~1.2.1", - "statuses": "~1.5.0" - }, - "dependencies": { - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - } - } - }, - "serve-static": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", - "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.17.2" - } - }, - "servify": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", - "integrity": "sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==", - "requires": { - "body-parser": "^1.16.0", - "cors": "^2.8.1", - "express": "^4.14.0", - "request": "^2.79.0", - "xhr": "^2.3.3" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" - }, - "simple-get": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.2.tgz", - "integrity": "sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==", - "requires": { - "decompress-response": "^3.3.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" - }, - "strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "swarm-js": { - "version": "0.1.40", - "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.40.tgz", - "integrity": "sha512-yqiOCEoA4/IShXkY3WKwP5PvZhmoOOD8clsKA7EEcRILMkTEYHCQ21HDCAcVpmIxZq4LyZvWeRJ6quIyHk1caA==", - "requires": { - "bluebird": "^3.5.0", - "buffer": "^5.0.5", - "eth-lib": "^0.1.26", - "fs-extra": "^4.0.2", - "got": "^7.1.0", - "mime-types": "^2.1.16", - "mkdirp-promise": "^5.0.1", - "mock-fs": "^4.1.0", - "setimmediate": "^1.0.5", - "tar": "^4.0.2", - "xhr-request": "^1.0.1" - }, - "dependencies": { - "fs-extra": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", - "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" - }, - "got": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", - "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", - "requires": { - "decompress-response": "^3.2.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-plain-obj": "^1.1.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "isurl": "^1.0.0-alpha5", - "lowercase-keys": "^1.0.0", - "p-cancelable": "^0.3.0", - "p-timeout": "^1.1.1", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "url-parse-lax": "^1.0.0", - "url-to-options": "^1.0.1" - } - }, - "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "p-cancelable": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", - "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==" - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" - }, - "tar": { - "version": "4.4.19", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", - "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", - "requires": { - "chownr": "^1.1.4", - "fs-minipass": "^1.2.7", - "minipass": "^2.9.0", - "minizlib": "^1.3.3", - "mkdirp": "^0.5.5", - "safe-buffer": "^5.2.1", - "yallist": "^3.1.1" - } - }, - "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "requires": { - "prepend-http": "^1.0.1" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - } - } - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==" - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "requires": { - "punycode": "^2.1.0" - } - }, - "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", - "requires": { - "prepend-http": "^2.0.0" - } - }, - "url-set-query": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", - "integrity": "sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk=" - }, - "url-to-options": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", - "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } - } - }, - "xhr": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", - "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", - "requires": { - "global": "~4.4.0", - "is-function": "^1.0.1", - "parse-headers": "^2.0.0", - "xtend": "^4.0.0" - } - }, - "xhr-request": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.1.0.tgz", - "integrity": "sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==", - "requires": { - "buffer-to-arraybuffer": "^0.0.5", - "object-assign": "^4.1.1", - "query-string": "^5.0.1", - "simple-get": "^2.7.0", - "timed-out": "^4.0.1", - "url-set-query": "^1.0.0", - "xhr": "^2.0.4" - } - }, - "xhr-request-promise": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz", - "integrity": "sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==", - "requires": { - "xhr-request": "^1.1.0" - } - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } } diff --git a/packages/hweb3-bzz/package.json b/packages/hweb3-bzz/package.json index fc2d25d3d90..1f763e3f094 100644 --- a/packages/hweb3-bzz/package.json +++ b/packages/hweb3-bzz/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-bzz", - "version": "1.0.0", + "version": "1.0.21", "description": "Web3 module to interact with the Swarm network.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-bzz", "license": "LGPL-3.0", diff --git a/packages/hweb3-bzz/src/index.js b/packages/hweb3-bzz/src/index.js index b81e7f67433..810c56fe18f 100644 --- a/packages/hweb3-bzz/src/index.js +++ b/packages/hweb3-bzz/src/index.js @@ -83,5 +83,5 @@ Bzz.prototype.setProvider = function(provider) { }; -module.exports = Bzz; +export default Bzz; diff --git a/packages/hweb3-core-helpers/package-lock.json b/packages/hweb3-core-helpers/package-lock.json index 92c7f537eeb..6906ac959c0 100644 --- a/packages/hweb3-core-helpers/package-lock.json +++ b/packages/hweb3-core-helpers/package-lock.json @@ -1,1866 +1,13 @@ { "name": "@arianelabs/hweb3-core-helpers", - "version": "1.0.0", + "version": "1.0.33", "lockfileVersion": 1, "requires": true, "dependencies": { - "@grpc/grpc-js": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.9.tgz", - "integrity": "sha512-un+cXqErq5P4p3+WgYVNVh7FB51MSnaoRef7QWDcMXKR6FX2R6Z/bltcJMxNNdTUMC85lkOQcpnAAetFziPSng==", - "requires": { - "@grpc/proto-loader": "^0.6.4", - "@types/node": ">=12.12.47" - } - }, - "@grpc/proto-loader": { - "version": "0.6.9", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.9.tgz", - "integrity": "sha512-UlcCS8VbsU9d3XTXGiEVFonN7hXk+oMXZtoHHG2oSA1/GcDP1q6OUgs20PzHDGizzyi8ufGSUDlk3O2NyY7leg==", - "requires": { - "@types/long": "^4.0.1", - "lodash.camelcase": "^4.3.0", - "long": "^4.0.0", - "protobufjs": "^6.10.0", - "yargs": "^16.2.0" - } - }, - "@hashgraph/cryptography": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@hashgraph/cryptography/-/cryptography-1.1.1.tgz", - "integrity": "sha512-/0G9p9W/m9M/dQY1W7p3osrDP5YQndHvgwbrruoMr5uBD1ZKBVmJjG4+iqbOgA/J+/dLiwPEor6IEEE6gofv2w==", - "requires": { - "bignumber.js": "^9.0.2", - "crypto-js": "^4.1.1", - "elliptic": "^6.5.4", - "expo-crypto": "^10.1.1", - "expo-random": "^12.1.1", - "js-base64": "^3.7.2", - "tweetnacl": "^1.0.3", - "utf8": "^3.0.0" - } - }, - "@hashgraph/proto": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@hashgraph/proto/-/proto-2.1.4.tgz", - "integrity": "sha512-gZP206s1SuWb4By8BIyAtRwXoO59ARfhShg4YIG+7Cp0rWXe0I1D+uQm4HRaPIWMU0S7xXUec/JPwnMefetTSg==", - "requires": { - "long": "^4.0.0", - "protobufjs": "^6.11.2" - } - }, - "@hashgraph/sdk": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/@hashgraph/sdk/-/sdk-2.10.1.tgz", - "integrity": "sha512-5vnh1S5gnwBSRlh6EEqYVOnBeTPiuzcz9A+Sb0nC/DfhjSkhlMo9gTiWCDJxDYktsoXrhrTNwETg0KRsHjh8zw==", - "requires": { - "@grpc/grpc-js": "^1.5.3", - "@hashgraph/cryptography": "^1.1.0-beta.5", - "@hashgraph/proto": "2.1.4", - "bignumber.js": "^9.0.2", - "crypto-js": "^4.1.1", - "js-base64": "^3.7.2", - "long": "^4.0.0", - "protobufjs": "^6.11.2", - "utf8": "^3.0.0" - } - }, - "@protobufjs/aspromise": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", - "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" - }, - "@protobufjs/base64": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", - "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" - }, - "@protobufjs/codegen": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" - }, - "@protobufjs/eventemitter": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" - }, - "@protobufjs/fetch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", - "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", - "requires": { - "@protobufjs/aspromise": "^1.1.1", - "@protobufjs/inquire": "^1.1.0" - } - }, - "@protobufjs/float": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", - "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" - }, - "@protobufjs/inquire": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", - "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" - }, - "@protobufjs/path": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", - "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" - }, - "@protobufjs/pool": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", - "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" - }, - "@protobufjs/utf8": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", - "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" - }, - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, - "@types/long": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz", - "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" - }, "@types/node": { "version": "12.20.33", "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.33.tgz", - "integrity": "sha512-5XmYX2GECSa+CxMYaFsr2mrql71Q4EvHjKS+ox/SiwSdaASMoBIWE6UmZqFO+VX1jIcsYLStI4FFoB6V7FeIYw==" - }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - } - } - }, - "bignumber.js": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", - "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==" - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "crypto-js": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", - "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==" - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "expo-crypto": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/expo-crypto/-/expo-crypto-10.1.2.tgz", - "integrity": "sha512-TYaBtV9oK5OH+EfsAUHQkWkRPifZjCMDn6Yf9gk3/LyHdJHDYnB6NQWTJo9Qkl6vzI9svQ6PMnQTm2Yxrb3ZfQ==" - }, - "expo-random": { - "version": "12.1.2", - "resolved": "https://registry.npmjs.org/expo-random/-/expo-random-12.1.2.tgz", - "integrity": "sha512-ajB+Mwff9PdglsyLliaU4K9BtVwKvAVVI2hQhnvlS3QgsAhHf+jQVUfAysQJHuioF6ADMEsab/kRUy4Dy03aoQ==", - "requires": { - "base64-js": "^1.3.0" - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-base64": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz", - "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "protobufjs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", - "integrity": "sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==", - "requires": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/long": "^4.0.1", - "@types/node": ">=13.7.0", - "long": "^4.0.0" - }, - "dependencies": { - "@types/node": { - "version": "17.0.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", - "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==" - } - } - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - } - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "integrity": "sha512-5XmYX2GECSa+CxMYaFsr2mrql71Q4EvHjKS+ox/SiwSdaASMoBIWE6UmZqFO+VX1jIcsYLStI4FFoB6V7FeIYw==", "dev": true }, "typescript": { @@ -1868,180 +15,6 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", - "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" } } } diff --git a/packages/hweb3-core-helpers/package.json b/packages/hweb3-core-helpers/package.json index 50532d64438..6fbeee4f8eb 100644 --- a/packages/hweb3-core-helpers/package.json +++ b/packages/hweb3-core-helpers/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-core-helpers", - "version": "1.0.0", + "version": "1.0.33", "description": "Hweb3 core tools helper for sub packages. This is an internal package.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-core-helpers", "license": "LGPL-3.0", @@ -16,9 +16,9 @@ "main": "lib/cjs/index.js", "module": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-eth-iban": "1.0.0", - "@arianelabs/hweb3-utils": "1.0.0", - "@hashgraph/sdk": "^2.9.1" + "@arianelabs/hweb3-eth-iban": "1.0.28", + "@arianelabs/hweb3-utils": "1.0.28", + "@hashgraph/sdk": "2.11.0" }, "devDependencies": { "@types/node": "^12.12.6", diff --git a/packages/hweb3-core-helpers/src/errors.js b/packages/hweb3-core-helpers/src/errors.js index 9f16f677313..d1ffb11a8ed 100644 --- a/packages/hweb3-core-helpers/src/errors.js +++ b/packages/hweb3-core-helpers/src/errors.js @@ -23,7 +23,7 @@ "use strict"; -module.exports = { +export default { ErrorResponse: function (result) { var message = !!result && !!result.error && !!result.error.message ? result.error.message : JSON.stringify(result); var data = (!!result.error && !!result.error.data) ? result.error.data : null; diff --git a/packages/hweb3-core-helpers/src/formatters.js b/packages/hweb3-core-helpers/src/formatters.js index bb1d47ff9f9..1b761b2d673 100644 --- a/packages/hweb3-core-helpers/src/formatters.js +++ b/packages/hweb3-core-helpers/src/formatters.js @@ -23,7 +23,7 @@ "use strict"; -var utils = require('@arianelabs/hweb3-utils'); +import utils from '@arianelabs/hweb3-utils'; var Iban = require('@arianelabs/hweb3-eth-iban'); @@ -396,7 +396,6 @@ var inputLogFormatter = function (options) { * @returns {Object} log */ var outputLogFormatter = function (log) { - // generate a custom log id if (typeof log.blockHash === 'string' && typeof log.transactionHash === 'string' && @@ -414,10 +413,6 @@ var outputLogFormatter = function (log) { if (log.logIndex !== null) log.logIndex = utils.hexToNumber(log.logIndex); - if (log.address) { - log.address = utils.toChecksumAddress(log.address); - } - return log; }; @@ -508,7 +503,7 @@ var outputSyncingFormatter = function (result) { return result; }; -module.exports = { +export default { inputDefaultBlockNumberFormatter: inputDefaultBlockNumberFormatter, inputBlockNumberFormatter: inputBlockNumberFormatter, inputCallFormatter: inputCallFormatter, diff --git a/packages/hweb3-core-helpers/src/index.js b/packages/hweb3-core-helpers/src/index.js index b0f9a4db528..94d612ef81c 100644 --- a/packages/hweb3-core-helpers/src/index.js +++ b/packages/hweb3-core-helpers/src/index.js @@ -22,11 +22,7 @@ "use strict"; -var errors = require('./errors'); -var formatters = require('./formatters'); +export { default as errors } from './errors'; +export { default as formatters } from './formatters'; -module.exports = { - errors: errors, - formatters: formatters -}; diff --git a/packages/hweb3-core-method/package-lock.json b/packages/hweb3-core-method/package-lock.json index b25e90a4ed7..a329bc7cdd8 100644 --- a/packages/hweb3-core-method/package-lock.json +++ b/packages/hweb3-core-method/package-lock.json @@ -1,1884 +1,14 @@ { "name": "@arianelabs/hweb3-core-method", - "version": "1.0.0", + "version": "1.0.33", "lockfileVersion": 1, "requires": true, "dependencies": { - "@ethersproject/address": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.6.0.tgz", - "integrity": "sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ==", - "requires": { - "@ethersproject/bignumber": "^5.6.0", - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/keccak256": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "@ethersproject/rlp": "^5.6.0" - } - }, - "@ethersproject/bignumber": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.6.0.tgz", - "integrity": "sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA==", - "requires": { - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "bn.js": "^4.11.9" - } - }, - "@ethersproject/bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.0.tgz", - "integrity": "sha512-3hJPlYemb9V4VLfJF5BfN0+55vltPZSHU3QKUyP9M3Y2TcajbiRrz65UG+xVHOzBereB1b9mn7r12o177xgN7w==", - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/constants": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.6.0.tgz", - "integrity": "sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA==", - "requires": { - "@ethersproject/bignumber": "^5.6.0" - } - }, - "@ethersproject/keccak256": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", - "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", - "requires": { - "@ethersproject/bytes": "^5.6.0", - "js-sha3": "0.8.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==" - }, - "@ethersproject/properties": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.6.0.tgz", - "integrity": "sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg==", - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/rlp": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.6.0.tgz", - "integrity": "sha512-dz9WR1xpcTL+9DtOT/aDO+YyxSSdO8YIS0jyZwHHSlAmnxA6cKU3TrTd4Xc/bHayctxTgGLYNuVVoiXE4tTq1g==", - "requires": { - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/signing-key": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.6.0.tgz", - "integrity": "sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA==", - "requires": { - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "@ethersproject/properties": "^5.6.0", - "bn.js": "^4.11.9", - "elliptic": "6.5.4", - "hash.js": "1.1.7" - } - }, - "@ethersproject/transactions": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.6.0.tgz", - "integrity": "sha512-4HX+VOhNjXHZyGzER6E/LVI2i6lf9ejYeWD6l4g50AdmimyuStKc39kvKf1bXWQMg7QNVh+uC7dYwtaZ02IXeg==", - "requires": { - "@ethersproject/address": "^5.6.0", - "@ethersproject/bignumber": "^5.6.0", - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/constants": "^5.6.0", - "@ethersproject/keccak256": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "@ethersproject/properties": "^5.6.0", - "@ethersproject/rlp": "^5.6.0", - "@ethersproject/signing-key": "^5.6.0" - } - }, - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } } diff --git a/packages/hweb3-core-method/package.json b/packages/hweb3-core-method/package.json index 4367f462ba1..78a87166fb6 100644 --- a/packages/hweb3-core-method/package.json +++ b/packages/hweb3-core-method/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-core-method", - "version": "1.0.0", + "version": "1.0.33", "description": "Creates the methods on the web3 modules. This is an internal package.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-core-method", "license": "LGPL-3.0", @@ -16,10 +16,10 @@ "main": "lib/cjs/index.js", "module": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-core-helpers": "1.0.0", - "@arianelabs/hweb3-core-promievent": "1.0.0", - "@arianelabs/hweb3-core-subscriptions": "1.0.0", - "@arianelabs/hweb3-utils": "1.0.0", + "@arianelabs/hweb3-core-helpers": "1.0.33", + "@arianelabs/hweb3-core-promievent": "1.0.18", + "@arianelabs/hweb3-core-subscriptions": "1.0.33", + "@arianelabs/hweb3-utils": "1.0.28", "@ethersproject/transactions": "^5.0.0-beta.135" }, "devDependencies": { diff --git a/packages/hweb3-core-method/src/index.js b/packages/hweb3-core-method/src/index.js index 9dd43d6cf4a..b47c0345222 100644 --- a/packages/hweb3-core-method/src/index.js +++ b/packages/hweb3-core-method/src/index.js @@ -23,11 +23,10 @@ 'use strict'; -var errors = require('@arianelabs/hweb3-core-helpers').errors; -var formatters = require('@arianelabs/hweb3-core-helpers').formatters; -var utils = require('@arianelabs/hweb3-utils'); -var promiEvent = require('@arianelabs/hweb3-core-promievent'); -var Subscriptions = require('@arianelabs/hweb3-core-subscriptions').subscriptions; +import { errors, formatters } from '@arianelabs/hweb3-core-helpers'; +import utils from '@arianelabs/hweb3-utils'; +import promiEvent from '@arianelabs/hweb3-core-promievent'; +import Subscriptions from '@arianelabs/hweb3-core-subscriptions'; var EthersTransactionUtils = require('@ethersproject/transactions'); @@ -967,4 +966,4 @@ Method.prototype.request = function () { return payload; }; -module.exports = Method; +export default Method; diff --git a/packages/hweb3-core-promievent/package-lock.json b/packages/hweb3-core-promievent/package-lock.json index 709980e9f01..85da6df2d31 100644 --- a/packages/hweb3-core-promievent/package-lock.json +++ b/packages/hweb3-core-promievent/package-lock.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-core-promievent", - "version": "1.0.0", + "version": "1.0.18", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/hweb3-core-promievent/package.json b/packages/hweb3-core-promievent/package.json index 9e47bfa27f3..9a38e51260e 100644 --- a/packages/hweb3-core-promievent/package.json +++ b/packages/hweb3-core-promievent/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-core-promievent", - "version": "1.0.0", + "version": "1.0.18", "description": "This package extends the EventEmitter with the Promise class to allow chaining as well as multiple final states of a function.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-core-promievent", "license": "LGPL-3.0", diff --git a/packages/hweb3-core-promievent/src/index.js b/packages/hweb3-core-promievent/src/index.js index e1468349c35..103d844e7de 100644 --- a/packages/hweb3-core-promievent/src/index.js +++ b/packages/hweb3-core-promievent/src/index.js @@ -71,4 +71,4 @@ PromiEvent.resolve = function(value) { return promise.eventEmitter; }; -module.exports = PromiEvent; +export default PromiEvent; diff --git a/packages/hweb3-core-requestmanager/package-lock.json b/packages/hweb3-core-requestmanager/package-lock.json index 4850791f728..203b08185e9 100644 --- a/packages/hweb3-core-requestmanager/package-lock.json +++ b/packages/hweb3-core-requestmanager/package-lock.json @@ -1,9 +1,52 @@ { "name": "@arianelabs/hweb3-core-requestmanager", - "version": "1.0.0", + "version": "1.0.33", "lockfileVersion": 1, "requires": true, "dependencies": { + "@arianelabs/hweb3-core-helpers": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/@arianelabs/hweb3-core-helpers/-/hweb3-core-helpers-1.0.19.tgz", + "integrity": "sha512-h5IOQPH25Le5OeE1D0TMd109RtxPsIYEqj0lb0xS30vdIAtQe9vE+KPoDE/XCj/qhC1WzVfcH1V/hFnK9WnNhw==", + "requires": { + "@arianelabs/hweb3-eth-iban": "1.0.19", + "@arianelabs/hweb3-utils": "1.0.19", + "@hashgraph/sdk": "^2.9.1" + } + }, + "@arianelabs/hweb3-eth-iban": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/@arianelabs/hweb3-eth-iban/-/hweb3-eth-iban-1.0.19.tgz", + "integrity": "sha512-Tyfr5Rv0cAufWl8ccTwNgedixsRpfDODpeckHDa85X17pzjEQ6QEStbF7uHFylAsv8kFSAXJvytUoK1jO7gcpA==", + "requires": { + "@arianelabs/hweb3-utils": "1.0.19", + "bn.js": "^4.11.9" + } + }, + "@arianelabs/hweb3-providers-http": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/@arianelabs/hweb3-providers-http/-/hweb3-providers-http-1.0.19.tgz", + "integrity": "sha512-duxs/MJnHXvQsfYHICuhrbWhptJYEe5eBWHXv+Jl0RHCXoXhtedzNQpKXvTJg0dkVUK8YxLx/iQCboqRA3S1zQ==", + "requires": { + "@arianelabs/hweb3-core-helpers": "1.0.19", + "@hashgraph/sdk": "^2.9.1" + } + }, + "@arianelabs/hweb3-utils": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/@arianelabs/hweb3-utils/-/hweb3-utils-1.0.19.tgz", + "integrity": "sha512-D+HFd2PEQA9dLFHJYJN8cn8yMYI4VaKU8iSR3mZAwm5S4jJfd3gscv+a1dQzuNFQ/NE+Zq5Eq7qKMd7kfr5VkA==", + "requires": { + "@hashgraph/sdk": "^2.9.1", + "bn.js": "^4.11.9", + "ethereum-bloom-filters": "^1.0.6", + "ethereumjs-util": "^7.1.0", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "utf8": "3.0.0" + } + }, "@grpc/grpc-js": { "version": "1.5.9", "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.9.tgz", @@ -119,6 +162,14 @@ "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" }, + "@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "requires": { + "@types/node": "*" + } + }, "@types/long": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz", @@ -129,6 +180,22 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==" }, + "@types/pbkdf2": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", + "integrity": "sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==", + "requires": { + "@types/node": "*" + } + }, + "@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "requires": { + "@types/node": "*" + } + }, "ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -147,6 +214,14 @@ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" }, + "base-x": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", + "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", + "requires": { + "safe-buffer": "^5.0.1" + } + }, "base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", @@ -157,6 +232,11 @@ "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==" }, + "blakejs": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", + "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" + }, "bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", @@ -167,6 +247,42 @@ "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha1-vhYedsNU9veIrkBx9j806MTwpCo=", + "requires": { + "base-x": "^3.0.2" + } + }, + "bs58check": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", + "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "requires": { + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" + } + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, "call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -176,6 +292,15 @@ "get-intrinsic": "^1.0.2" } }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -199,6 +324,31 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, "crypto-js": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", @@ -273,6 +423,80 @@ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" }, + "ethereum-bloom-filters": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz", + "integrity": "sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA==", + "requires": { + "js-sha3": "^0.8.0" + } + }, + "ethereum-cryptography": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", + "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "requires": { + "@types/pbkdf2": "^3.0.0", + "@types/secp256k1": "^4.0.1", + "blakejs": "^1.1.0", + "browserify-aes": "^1.2.0", + "bs58check": "^2.1.2", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "hash.js": "^1.1.7", + "keccak": "^3.0.0", + "pbkdf2": "^3.0.17", + "randombytes": "^2.1.0", + "safe-buffer": "^5.1.2", + "scrypt-js": "^3.0.0", + "secp256k1": "^4.0.1", + "setimmediate": "^1.0.5" + } + }, + "ethereumjs-util": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.4.tgz", + "integrity": "sha512-p6KmuPCX4mZIqsQzXfmSx9Y0l2hqf+VkAiwSisW3UKUFdk8ZkAt+AYaor83z2nSi6CU2zSsXMlD80hAbNEGM0A==", + "requires": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "rlp": "^2.2.4" + }, + "dependencies": { + "bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + } + } + }, + "ethjs-unit": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", + "integrity": "sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=", + "requires": { + "bn.js": "4.11.6", + "number-to-bn": "1.7.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + } + } + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, "expo-crypto": { "version": "10.1.2", "resolved": "https://registry.npmjs.org/expo-crypto/-/expo-crypto-10.1.2.tgz", @@ -346,6 +570,23 @@ "has-symbols": "^1.0.2" } }, + "hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, "hash.js": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", @@ -432,6 +673,11 @@ "has-tostringtag": "^1.0.0" } }, + "is-hex-prefixed": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", + "integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=" + }, "is-negative-zero": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", @@ -500,6 +746,21 @@ "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz", "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" }, + "js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "keccak": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", + "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", + "requires": { + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0", + "readable-stream": "^3.6.0" + } + }, "lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", @@ -510,6 +771,16 @@ "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", @@ -520,6 +791,32 @@ "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" }, + "node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + }, + "node-gyp-build": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.4.0.tgz", + "integrity": "sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ==" + }, + "number-to-bn": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", + "integrity": "sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA=", + "requires": { + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + } + } + }, "object-inspect": { "version": "1.12.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", @@ -541,6 +838,18 @@ "object-keys": "^1.1.1" } }, + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, "protobufjs": { "version": "6.11.2", "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", @@ -561,16 +870,87 @@ "long": "^4.0.0" } }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rlp": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", + "integrity": "sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==", + "requires": { + "bn.js": "^5.2.0" + }, + "dependencies": { + "bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + } + } + }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, + "scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" + }, + "secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", + "requires": { + "elliptic": "^6.5.4", + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0" + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", @@ -609,6 +989,21 @@ "define-properties": "^1.1.3" } }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -617,6 +1012,14 @@ "ansi-regex": "^5.0.1" } }, + "strip-hex-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", + "integrity": "sha1-DF8VX+8RUTczd96du1iNoFUA428=", + "requires": { + "is-hex-prefixed": "1.0.0" + } + }, "tweetnacl": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", @@ -651,6 +1054,11 @@ "which-typed-array": "^1.1.2" } }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, "which-boxed-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", diff --git a/packages/hweb3-core-requestmanager/package.json b/packages/hweb3-core-requestmanager/package.json index a82004fe595..1b329a17683 100644 --- a/packages/hweb3-core-requestmanager/package.json +++ b/packages/hweb3-core-requestmanager/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-core-requestmanager", - "version": "1.0.0", + "version": "1.0.33", "description": "Hweb3 module to handle requests to external providers.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-core-requestmanager", "license": "LGPL-3.0", @@ -11,12 +11,13 @@ "module": "lib/index.js", "scripts": { "compile": "tsc -b tsconfig.json", - "compile:cjs": "tsc -b tsconfig.cjs.json" + "compile:cjs": "tsc -b tsconfig.cjs.json", + "dtslint": "dtslint --localTs ../../node_modules/typescript/lib types" }, "dependencies": { - "@arianelabs/hweb3-core-helpers": "1.0.0", - "@arianelabs/hweb3-providers-http": "1.0.0", - "@hashgraph/sdk": "^2.9.1", + "@arianelabs/hweb3-core-helpers": "1.0.33", + "@arianelabs/hweb3-providers-http": "1.0.33", + "@hashgraph/sdk": "2.11.0", "util": "^0.12.0" } } diff --git a/packages/hweb3-core-requestmanager/src/batch.js b/packages/hweb3-core-requestmanager/src/batch.js index e4a46773549..7cd6ff160a7 100644 --- a/packages/hweb3-core-requestmanager/src/batch.js +++ b/packages/hweb3-core-requestmanager/src/batch.js @@ -22,8 +22,8 @@ "use strict"; -var Jsonrpc = require('./jsonrpc'); -var errors = require('@arianelabs/hweb3-core-helpers').errors; +import Jsonrpc from './jsonrpc'; +import { errors } from '@arianelabs/hweb3-core-helpers'; var Batch = function (requestManager) { this.requestManager = requestManager; diff --git a/packages/hweb3-core-requestmanager/src/index.js b/packages/hweb3-core-requestmanager/src/index.js index 019cacf5e24..3bda52ce8d9 100644 --- a/packages/hweb3-core-requestmanager/src/index.js +++ b/packages/hweb3-core-requestmanager/src/index.js @@ -20,12 +20,10 @@ "use strict"; -var errors = require('@arianelabs/hweb3-core-helpers').errors; -import givenProvider from './givenProvider.js'; -import { Transaction, Client, TransactionResponse } from '@hashgraph/sdk'; -import { HttpProviderBase } from '@arianelabs/hweb3-core-helpers'; +import { errors } from '@arianelabs/hweb3-core-helpers'; import { HttpProvider } from '@arianelabs/hweb3-providers-http'; +import givenProvider from './givenProvider.js'; export { default as BatchManager } from './batch.js'; /** @@ -44,6 +42,7 @@ var RequestManager = function RequestManager(client) { this.setProvider(client); this.subscriptions = new Map(); + this.polling = null; }; @@ -154,9 +153,9 @@ RequestManager.prototype.send = async function (tx, callback) { } try { - const repsponse = await this.provider.sendRequest(tx); + const response = await this.provider.sendRequest(tx); - return callback(null, repsponse); + return callback(null, response); } catch (e) { return callback(e); } @@ -213,6 +212,36 @@ RequestManager.prototype.sendBatch = function (txs, callback) { return callback('Not supported'); }; +/** + * Create pollLink request to fetch logs + * + * @method addSubscription + * @param {ContractId} contractId + * @param {EventEmitter} eventEmitter + */ +RequestManager.prototype.createPolling = function (contractId, eventEmitter) { + let lastTimestamp = '1234567890'; + const executePoll = async () => { + try { + const network = this.provider.getNetwork(); + const url = `https://${network}.mirrornode.hedera.com/api/v1/contracts/${contractId}/results/logs?timestamp=gt%3A${lastTimestamp}&order=asc`; + const result = await fetch(url) + .then(res => res.json()); + + if (result.logs.length) { + lastTimestamp = result.logs[result.logs.length - 1].timestamp; + eventEmitter.emit('data', result.logs); + } + } catch (e) { + console.log({ e }); + eventEmitter.emit('error', e); + } finally { + return setTimeout(executePoll, 2000); + } + }; + + return executePoll(); +}; /** * Waits for notifications diff --git a/packages/hweb3-core-subscriptions/package-lock.json b/packages/hweb3-core-subscriptions/package-lock.json index 96d3cebbae9..5045781898a 100644 --- a/packages/hweb3-core-subscriptions/package-lock.json +++ b/packages/hweb3-core-subscriptions/package-lock.json @@ -1,1734 +1,14 @@ { "name": "@arianelabs/hweb3-core-subscriptions", - "version": "1.0.0", + "version": "1.0.33", "lockfileVersion": 1, "requires": true, "dependencies": { - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } } diff --git a/packages/hweb3-core-subscriptions/package.json b/packages/hweb3-core-subscriptions/package.json index 8e26db7056e..9dfb57fc8db 100644 --- a/packages/hweb3-core-subscriptions/package.json +++ b/packages/hweb3-core-subscriptions/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-core-subscriptions", - "version": "1.0.0", + "version": "1.0.33", "description": "Manages hweb3 subscriptions. This is an internal package.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-core-subscriptions", "license": "LGPL-3.0", @@ -16,7 +16,7 @@ "main": "lib/cjs/index.js", "module": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-core-helpers": "1.0.0", + "@arianelabs/hweb3-core-helpers": "1.0.33", "eventemitter3": "4.0.4" }, "devDependencies": { diff --git a/packages/hweb3-core-subscriptions/src/index.js b/packages/hweb3-core-subscriptions/src/index.js index 113f6757fd9..46d37df6fea 100644 --- a/packages/hweb3-core-subscriptions/src/index.js +++ b/packages/hweb3-core-subscriptions/src/index.js @@ -69,7 +69,7 @@ Subscriptions.prototype.buildCall = function() { }; -module.exports = { +export default { subscriptions: Subscriptions, subscription: Subscription }; diff --git a/packages/hweb3-core/package-lock.json b/packages/hweb3-core/package-lock.json index b0e5a25606d..fbdbf5764b7 100644 --- a/packages/hweb3-core/package-lock.json +++ b/packages/hweb3-core/package-lock.json @@ -1,144 +1,9 @@ { "name": "@arianelabs/hweb3-core", - "version": "1.0.0", + "version": "1.0.33", "lockfileVersion": 1, "requires": true, "dependencies": { - "@grpc/grpc-js": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.9.tgz", - "integrity": "sha512-un+cXqErq5P4p3+WgYVNVh7FB51MSnaoRef7QWDcMXKR6FX2R6Z/bltcJMxNNdTUMC85lkOQcpnAAetFziPSng==", - "requires": { - "@grpc/proto-loader": "^0.6.4", - "@types/node": ">=12.12.47" - } - }, - "@grpc/proto-loader": { - "version": "0.6.9", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.9.tgz", - "integrity": "sha512-UlcCS8VbsU9d3XTXGiEVFonN7hXk+oMXZtoHHG2oSA1/GcDP1q6OUgs20PzHDGizzyi8ufGSUDlk3O2NyY7leg==", - "requires": { - "@types/long": "^4.0.1", - "lodash.camelcase": "^4.3.0", - "long": "^4.0.0", - "protobufjs": "^6.10.0", - "yargs": "^16.2.0" - } - }, - "@hashgraph/cryptography": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@hashgraph/cryptography/-/cryptography-1.1.1.tgz", - "integrity": "sha512-/0G9p9W/m9M/dQY1W7p3osrDP5YQndHvgwbrruoMr5uBD1ZKBVmJjG4+iqbOgA/J+/dLiwPEor6IEEE6gofv2w==", - "requires": { - "bignumber.js": "^9.0.2", - "crypto-js": "^4.1.1", - "elliptic": "^6.5.4", - "expo-crypto": "^10.1.1", - "expo-random": "^12.1.1", - "js-base64": "^3.7.2", - "tweetnacl": "^1.0.3", - "utf8": "^3.0.0" - } - }, - "@hashgraph/proto": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@hashgraph/proto/-/proto-2.1.4.tgz", - "integrity": "sha512-gZP206s1SuWb4By8BIyAtRwXoO59ARfhShg4YIG+7Cp0rWXe0I1D+uQm4HRaPIWMU0S7xXUec/JPwnMefetTSg==", - "requires": { - "long": "^4.0.0", - "protobufjs": "^6.11.2" - } - }, - "@hashgraph/sdk": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/@hashgraph/sdk/-/sdk-2.10.1.tgz", - "integrity": "sha512-5vnh1S5gnwBSRlh6EEqYVOnBeTPiuzcz9A+Sb0nC/DfhjSkhlMo9gTiWCDJxDYktsoXrhrTNwETg0KRsHjh8zw==", - "requires": { - "@grpc/grpc-js": "^1.5.3", - "@hashgraph/cryptography": "^1.1.0-beta.5", - "@hashgraph/proto": "2.1.4", - "bignumber.js": "^9.0.2", - "crypto-js": "^4.1.1", - "js-base64": "^3.7.2", - "long": "^4.0.0", - "protobufjs": "^6.11.2", - "utf8": "^3.0.0" - } - }, - "@protobufjs/aspromise": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", - "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" - }, - "@protobufjs/base64": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", - "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" - }, - "@protobufjs/codegen": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" - }, - "@protobufjs/eventemitter": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" - }, - "@protobufjs/fetch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", - "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", - "requires": { - "@protobufjs/aspromise": "^1.1.1", - "@protobufjs/inquire": "^1.1.0" - } - }, - "@protobufjs/float": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", - "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" - }, - "@protobufjs/inquire": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", - "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" - }, - "@protobufjs/path": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", - "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" - }, - "@protobufjs/pool": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", - "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" - }, - "@protobufjs/utf8": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", - "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" - }, - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, "@types/bn.js": { "version": "4.11.6", "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", @@ -147,1909 +12,21 @@ "@types/node": "*" } }, - "@types/long": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz", - "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" - }, "@types/node": { "version": "12.20.33", "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.33.tgz", "integrity": "sha512-5XmYX2GECSa+CxMYaFsr2mrql71Q4EvHjKS+ox/SiwSdaASMoBIWE6UmZqFO+VX1jIcsYLStI4FFoB6V7FeIYw==" }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - } - } - }, "bignumber.js": { "version": "9.0.2", "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==" }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "crypto-js": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", - "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==" - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "expo-crypto": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/expo-crypto/-/expo-crypto-10.1.2.tgz", - "integrity": "sha512-TYaBtV9oK5OH+EfsAUHQkWkRPifZjCMDn6Yf9gk3/LyHdJHDYnB6NQWTJo9Qkl6vzI9svQ6PMnQTm2Yxrb3ZfQ==" - }, - "expo-random": { - "version": "12.1.2", - "resolved": "https://registry.npmjs.org/expo-random/-/expo-random-12.1.2.tgz", - "integrity": "sha512-ajB+Mwff9PdglsyLliaU4K9BtVwKvAVVI2hQhnvlS3QgsAhHf+jQVUfAysQJHuioF6ADMEsab/kRUy4Dy03aoQ==", - "requires": { - "base64-js": "^1.3.0" - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-base64": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz", - "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "protobufjs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", - "integrity": "sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==", - "requires": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/long": "^4.0.1", - "@types/node": ">=13.7.0", - "long": "^4.0.0" - }, - "dependencies": { - "@types/node": { - "version": "17.0.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", - "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==" - } - } - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - } - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", - "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" } } } diff --git a/packages/hweb3-core/package.json b/packages/hweb3-core/package.json index b0b08966ba0..35f2f9b3d4c 100644 --- a/packages/hweb3-core/package.json +++ b/packages/hweb3-core/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-core", - "version": "1.0.0", + "version": "1.0.33", "description": "Hweb3 core tools for sub-packages. This is an internal package.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-core", "license": "LGPL-3.0", @@ -16,11 +16,11 @@ "main": "lib/cjs/index.js", "module": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-core-helpers": "1.0.0", - "@arianelabs/hweb3-core-method": "1.0.0", - "@arianelabs/hweb3-core-requestmanager": "1.0.0", - "@arianelabs/hweb3-utils": "1.0.0", - "@hashgraph/sdk": "^2.9.1", + "@arianelabs/hweb3-core-helpers": "1.0.33", + "@arianelabs/hweb3-core-method": "1.0.33", + "@arianelabs/hweb3-core-requestmanager": "1.0.33", + "@arianelabs/hweb3-utils": "1.0.28", + "@hashgraph/sdk": "2.11.0", "@types/bn.js": "^4.11.5", "@types/node": "^12.12.6", "bignumber.js": "^9.0.0" diff --git a/packages/hweb3-core/src/extend.js b/packages/hweb3-core/src/extend.js index f31d1a6dc57..c32890a1ada 100644 --- a/packages/hweb3-core/src/extend.js +++ b/packages/hweb3-core/src/extend.js @@ -25,7 +25,7 @@ var formatters = require('@arianelabs/hweb3-core-helpers').formatters; var Method = require('@arianelabs/hweb3-core-method'); -var utils = require('@arianelabs/hweb3-utils'); +import utils from '@arianelabs/hweb3-utils'; var extend = function (pckg) { @@ -65,5 +65,5 @@ var extend = function (pckg) { -module.exports = extend; +export default extend; diff --git a/packages/hweb3-core/src/index.js b/packages/hweb3-core/src/index.js index e7473f1085c..3e9f96ee92e 100644 --- a/packages/hweb3-core/src/index.js +++ b/packages/hweb3-core/src/index.js @@ -21,7 +21,7 @@ */ import { Manager, BatchManager } from "@arianelabs/hweb3-core-requestmanager"; -const extend = require("./extend"); +import extend from "./extend"; export const packageInit = (pkg, args) => { args = Array.prototype.slice.call(args); @@ -74,7 +74,7 @@ export const packageInit = (pkg, args) => { // attach extend function pkg.extend = extend(pkg); -} +}; export const addProviders = (pkg) => { pkg.givenProvider = Manager.givenProvider; diff --git a/packages/hweb3-core/types/index.d.ts b/packages/hweb3-core/types/index.d.ts index d4cadf2ca5b..9e782a148ef 100644 --- a/packages/hweb3-core/types/index.d.ts +++ b/packages/hweb3-core/types/index.d.ts @@ -39,7 +39,6 @@ import { TransactionResponse, TransactionReceipt as TransactionReceiptHashgraph, } from '@hashgraph/sdk'; -import { ITransactionResponse } from "@hashgraph/proto"; export { Transaction @@ -434,7 +433,7 @@ export interface RequestArguments { export interface AbstractProvider { sendAsync(payload: JsonRpcPayload, callback: (error: Error | null, result?: JsonRpcResponse) => void): void; - send?(tx: Transaction, callback: (error: Error | null, result?: ITransactionResponse) => void): void; + send?(tx: Transaction, callback: (error: Error | null, result?: TransactionResponse) => void): void; request?(args: RequestArguments): Promise; connected?: boolean; } diff --git a/packages/hweb3-eth-abi/package-lock.json b/packages/hweb3-eth-abi/package-lock.json index 96f4a769db6..1b9fa74dbc1 100644 --- a/packages/hweb3-eth-abi/package-lock.json +++ b/packages/hweb3-eth-abi/package-lock.json @@ -1,9 +1,24 @@ { "name": "@arianelabs/hweb3-eth-abi", - "version": "1.0.0", + "version": "1.0.34", "lockfileVersion": 1, "requires": true, "dependencies": { + "@arianelabs/hweb3-utils": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/@arianelabs/hweb3-utils/-/hweb3-utils-1.0.19.tgz", + "integrity": "sha512-D+HFd2PEQA9dLFHJYJN8cn8yMYI4VaKU8iSR3mZAwm5S4jJfd3gscv+a1dQzuNFQ/NE+Zq5Eq7qKMd7kfr5VkA==", + "requires": { + "@hashgraph/sdk": "^2.9.1", + "bn.js": "^4.11.9", + "ethereum-bloom-filters": "^1.0.6", + "ethereumjs-util": "^7.1.0", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "utf8": "3.0.0" + } + }, "@definitelytyped/header-parser": { "version": "0.0.111", "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", @@ -129,9 +144,9 @@ } }, "@ethersproject/bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.0.tgz", - "integrity": "sha512-3hJPlYemb9V4VLfJF5BfN0+55vltPZSHU3QKUyP9M3Y2TcajbiRrz65UG+xVHOzBereB1b9mn7r12o177xgN7w==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", + "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", "requires": { "@ethersproject/logger": "^5.6.0" } @@ -174,9 +189,9 @@ "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==" }, "@ethersproject/networks": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.6.0.tgz", - "integrity": "sha512-DaVzgyThzHgSDLuURhvkp4oviGoGe9iTZW4jMEORHDRCgSZ9K9THGFKqL+qGXqPAYLEgZTf5z2w56mRrPR1MjQ==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.6.1.tgz", + "integrity": "sha512-b2rrupf3kCTcc3jr9xOWBuHylSFtbpJf79Ga7QR98ienU2UqGimPGEsYMgbI29KHJfA5Us89XwGVmxrlxmSrMg==", "requires": { "@ethersproject/logger": "^5.6.0" } @@ -250,9 +265,9 @@ } }, "@grpc/grpc-js": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.9.tgz", - "integrity": "sha512-un+cXqErq5P4p3+WgYVNVh7FB51MSnaoRef7QWDcMXKR6FX2R6Z/bltcJMxNNdTUMC85lkOQcpnAAetFziPSng==", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.2.tgz", + "integrity": "sha512-9+89Ne1K8F9u86T+l1yIV2DS+dWHYVK61SsDZN4MFTFehOOaJ4rHxa1cW8Lwdn2/6tOx7N3+SY/vfcjztOHopA==", "requires": { "@grpc/proto-loader": "^0.6.4", "@types/node": ">=12.12.47" @@ -385,6 +400,14 @@ "ssri": "^8.0.0" } }, + "@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "requires": { + "@types/node": "*" + } + }, "@types/long": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz", @@ -401,6 +424,22 @@ "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", "dev": true }, + "@types/pbkdf2": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", + "integrity": "sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==", + "requires": { + "@types/node": "*" + } + }, + "@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "requires": { + "@types/node": "*" + } + }, "ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -574,6 +613,14 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, + "base-x": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", + "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", + "requires": { + "safe-buffer": "^5.0.1" + } + }, "base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", @@ -612,6 +659,11 @@ "readable-stream": "^3.4.0" } }, + "blakejs": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", + "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" + }, "block-stream": { "version": "0.0.9", "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", @@ -641,6 +693,37 @@ "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha1-vhYedsNU9veIrkBx9j806MTwpCo=", + "requires": { + "base-x": "^3.0.2" + } + }, + "bs58check": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", + "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "requires": { + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" + } + }, "buffer": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", @@ -657,6 +740,11 @@ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, "builtin-modules": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", @@ -736,6 +824,15 @@ "inherits": "^2.0.1" } }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -819,6 +916,31 @@ "dev": true, "optional": true }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, "crypto-js": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", @@ -1083,6 +1205,80 @@ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, + "ethereum-bloom-filters": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz", + "integrity": "sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA==", + "requires": { + "js-sha3": "^0.8.0" + } + }, + "ethereum-cryptography": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", + "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "requires": { + "@types/pbkdf2": "^3.0.0", + "@types/secp256k1": "^4.0.1", + "blakejs": "^1.1.0", + "browserify-aes": "^1.2.0", + "bs58check": "^2.1.2", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "hash.js": "^1.1.7", + "keccak": "^3.0.0", + "pbkdf2": "^3.0.17", + "randombytes": "^2.1.0", + "safe-buffer": "^5.1.2", + "scrypt-js": "^3.0.0", + "secp256k1": "^4.0.1", + "setimmediate": "^1.0.5" + } + }, + "ethereumjs-util": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.4.tgz", + "integrity": "sha512-p6KmuPCX4mZIqsQzXfmSx9Y0l2hqf+VkAiwSisW3UKUFdk8ZkAt+AYaor83z2nSi6CU2zSsXMlD80hAbNEGM0A==", + "requires": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "rlp": "^2.2.4" + }, + "dependencies": { + "bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + } + } + }, + "ethjs-unit": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", + "integrity": "sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=", + "requires": { + "bn.js": "4.11.6", + "number-to-bn": "1.7.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + } + } + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, "expo-crypto": { "version": "10.1.2", "resolved": "https://registry.npmjs.org/expo-crypto/-/expo-crypto-10.1.2.tgz", @@ -1275,9 +1471,9 @@ } }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, "har-schema": { @@ -1335,6 +1531,16 @@ "dev": true, "optional": true }, + "hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, "hash.js": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", @@ -1409,6 +1615,11 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, + "is-hex-prefixed": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", + "integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=" + }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -1519,6 +1730,16 @@ "verror": "1.10.0" } }, + "keccak": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", + "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", + "requires": { + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0", + "readable-stream": "^3.6.0" + } + }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -1547,6 +1768,16 @@ "yallist": "^4.0.0" } }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, "mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", @@ -1605,6 +1836,16 @@ "minimist": "^1.2.6" } }, + "node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + }, + "node-gyp-build": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.4.0.tgz", + "integrity": "sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ==" + }, "normalize-package-data": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", @@ -1648,6 +1889,22 @@ "dev": true, "optional": true }, + "number-to-bn": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", + "integrity": "sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA=", + "requires": { + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" + } + } + }, "oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", @@ -1718,6 +1975,18 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -1769,11 +2038,18 @@ "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", "dev": true }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "requires": { + "safe-buffer": "^5.1.0" + } + }, "readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -1845,11 +2121,34 @@ "glob": "^7.1.3" } }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rlp": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", + "integrity": "sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==", + "requires": { + "bn.js": "^5.2.0" + }, + "dependencies": { + "bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + } + } + }, "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safer-buffer": { "version": "2.1.2", @@ -1857,13 +2156,36 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, + "scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" + }, + "secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", + "requires": { + "elliptic": "^6.5.4", + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0" + } + }, "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.3.6", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.6.tgz", + "integrity": "sha512-HZWqcgwLsjaX1HBD31msI/rXktuIhS+lWvdE4kN9z+8IVT4Itc7vqU2WvYsyD6/sjYCt4dEKH/m1M3dwI9CC5w==", "dev": true, "requires": { - "lru-cache": "^6.0.0" + "lru-cache": "^7.4.0" + }, + "dependencies": { + "lru-cache": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.8.0.tgz", + "integrity": "sha512-AmXqneQZL3KZMIgBpaPTeI6pfwh+xQ2vutMsyqOu1TBdEXFZgpG/80wuJ531w2ZN7TI0/oc8CPxzh/DKQudZqg==", + "dev": true + } } }, "set-blocking": { @@ -1872,6 +2194,20 @@ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", "dev": true }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -1971,7 +2307,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, "requires": { "safe-buffer": "~5.2.0" } @@ -1984,6 +2319,14 @@ "ansi-regex": "^5.0.1" } }, + "strip-hex-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", + "integrity": "sha1-DF8VX+8RUTczd96du1iNoFUA428=", + "requires": { + "is-hex-prefixed": "1.0.0" + } + }, "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", @@ -2149,8 +2492,7 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, "uuid": { "version": "3.4.0", diff --git a/packages/hweb3-eth-abi/package.json b/packages/hweb3-eth-abi/package.json index a552e4017a5..23c4f1c0df0 100644 --- a/packages/hweb3-eth-abi/package.json +++ b/packages/hweb3-eth-abi/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-eth-abi", - "version": "1.0.0", + "version": "1.0.34", "description": "Hweb3 module encode and decode EVM in/output.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-eth-abi", "license": "LGPL-3.0", @@ -10,10 +10,15 @@ "types": "types/index.d.ts", "main": "lib/cjs/index.js", "module": "lib/index.js", + "scripts": { + "compile": "tsc -b tsconfig.json", + "compile:cjs": "tsc -b tsconfig.cjs.json", + "dtslint": "dtslint --localTs ../../node_modules/typescript/lib types" + }, "dependencies": { - "@arianelabs/hweb3-utils": "1.0.0", + "@arianelabs/hweb3-utils": "1.0.28", "@ethersproject/abi": "5.0.7", - "@hashgraph/sdk": "^2.10.1" + "@hashgraph/sdk": "2.11.0" }, "devDependencies": { "dtslint": "^3.4.1", diff --git a/packages/hweb3-eth-abi/src/index.js b/packages/hweb3-eth-abi/src/index.js index 93914a43173..131dc985bb2 100644 --- a/packages/hweb3-eth-abi/src/index.js +++ b/packages/hweb3-eth-abi/src/index.js @@ -21,9 +21,9 @@ * @date 2018 */ -import { ContractFunctionParameters } from '@hashgraph/sdk'; +import { ContractFunctionParameters, AccountId } from '@hashgraph/sdk'; var Buffer = require('buffer').Buffer; -var utils = require('@arianelabs/hweb3-utils'); +import utils from '@arianelabs/hweb3-utils'; var EthersAbiCoder = require('@ethersproject/abi').AbiCoder; var ParamType = require('@ethersproject/abi').ParamType; @@ -102,6 +102,10 @@ ABICoder.prototype.encodeParameters = function (types, params) { var self = this; types = self.mapTypes(types); + if (!params.length) { + return undefined; + } + return params.reduce(function (parameters, param, index) { let type = types[index]; if (typeof type === 'object' && type.type) { @@ -109,9 +113,13 @@ ABICoder.prototype.encodeParameters = function (types, params) { type = type.type; } + if (type === 'address' && !param.includes('0x')) { + param = AccountId.fromString(param).toSolidityAddress(); + } + parameters[`add${type[0].toUpperCase() + type.slice(1)}`](param); return parameters; - }, new ContractFunctionParameters());; + }, new ContractFunctionParameters()); }; /** @@ -418,4 +426,4 @@ ABICoder.prototype.decodeLog = function (inputs, data, topics) { var coder = new ABICoder(); -module.exports = coder; +export default coder; diff --git a/packages/hweb3-eth-accounts/package-lock.json b/packages/hweb3-eth-accounts/package-lock.json index 51cc6da5451..683ab02a8c5 100644 --- a/packages/hweb3-eth-accounts/package-lock.json +++ b/packages/hweb3-eth-accounts/package-lock.json @@ -1,437 +1,19 @@ { "name": "@arianelabs/hweb3-eth-accounts", - "version": "1.0.0", + "version": "1.0.33", "lockfileVersion": 1, "requires": true, "dependencies": { - "@ethereumjs/common": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.6.2.tgz", - "integrity": "sha512-vDwye5v0SVeuDky4MtKsu+ogkH2oFUV8pBKzH/eNBzT8oI91pKa8WyzDuYuxOQsgNgv5R34LfFDh2aaw3H4HbQ==", - "requires": { - "crc-32": "^1.2.0", - "ethereumjs-util": "^7.1.4" - } - }, - "@ethereumjs/tx": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-3.5.0.tgz", - "integrity": "sha512-/+ZNbnJhQhXC83Xuvy6I9k4jT5sXiV0tMR9C+AzSSpcCV64+NB8dTE1m3x98RYMqb8+TLYWA+HML4F5lfXTlJw==", - "requires": { - "@ethereumjs/common": "^2.6.1", - "ethereumjs-util": "^7.1.4" - } - }, - "@grpc/grpc-js": { - "version": "1.5.7", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.7.tgz", - "integrity": "sha512-RAlSbZ9LXo0wNoHKeUlwP9dtGgVBDUbnBKFpfAv5iSqMG4qWz9um2yLH215+Wow1I48etIa1QMS+WAGmsE/7HQ==", - "requires": { - "@grpc/proto-loader": "^0.6.4", - "@types/node": ">=12.12.47" - } - }, - "@grpc/proto-loader": { - "version": "0.6.9", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.9.tgz", - "integrity": "sha512-UlcCS8VbsU9d3XTXGiEVFonN7hXk+oMXZtoHHG2oSA1/GcDP1q6OUgs20PzHDGizzyi8ufGSUDlk3O2NyY7leg==", - "requires": { - "@types/long": "^4.0.1", - "lodash.camelcase": "^4.3.0", - "long": "^4.0.0", - "protobufjs": "^6.10.0", - "yargs": "^16.2.0" - } - }, - "@hashgraph/cryptography": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@hashgraph/cryptography/-/cryptography-1.1.1.tgz", - "integrity": "sha512-/0G9p9W/m9M/dQY1W7p3osrDP5YQndHvgwbrruoMr5uBD1ZKBVmJjG4+iqbOgA/J+/dLiwPEor6IEEE6gofv2w==", - "requires": { - "bignumber.js": "^9.0.2", - "crypto-js": "^4.1.1", - "elliptic": "^6.5.4", - "expo-crypto": "^10.1.1", - "expo-random": "^12.1.1", - "js-base64": "^3.7.2", - "tweetnacl": "^1.0.3", - "utf8": "^3.0.0" - } - }, - "@hashgraph/proto": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@hashgraph/proto/-/proto-2.1.4.tgz", - "integrity": "sha512-gZP206s1SuWb4By8BIyAtRwXoO59ARfhShg4YIG+7Cp0rWXe0I1D+uQm4HRaPIWMU0S7xXUec/JPwnMefetTSg==", - "requires": { - "long": "^4.0.0", - "protobufjs": "^6.11.2" - } - }, - "@hashgraph/sdk": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/@hashgraph/sdk/-/sdk-2.10.1.tgz", - "integrity": "sha512-5vnh1S5gnwBSRlh6EEqYVOnBeTPiuzcz9A+Sb0nC/DfhjSkhlMo9gTiWCDJxDYktsoXrhrTNwETg0KRsHjh8zw==", - "requires": { - "@grpc/grpc-js": "^1.5.3", - "@hashgraph/cryptography": "^1.1.0-beta.5", - "@hashgraph/proto": "2.1.4", - "bignumber.js": "^9.0.2", - "crypto-js": "^4.1.1", - "js-base64": "^3.7.2", - "long": "^4.0.0", - "protobufjs": "^6.11.2", - "utf8": "^3.0.0" - } - }, - "@protobufjs/aspromise": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", - "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" - }, - "@protobufjs/base64": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", - "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" - }, - "@protobufjs/codegen": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" - }, - "@protobufjs/eventemitter": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" - }, - "@protobufjs/fetch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", - "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", - "requires": { - "@protobufjs/aspromise": "^1.1.1", - "@protobufjs/inquire": "^1.1.0" - } - }, - "@protobufjs/float": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", - "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" - }, - "@protobufjs/inquire": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", - "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" - }, - "@protobufjs/path": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", - "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" - }, - "@protobufjs/pool": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", - "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" - }, - "@protobufjs/utf8": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", - "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" - }, - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, - "@types/long": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz", - "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" - }, "@types/node": { "version": "17.0.21", "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==" }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - } - } - }, - "bignumber.js": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", - "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==" - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, "bn.js": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, "brorand": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", @@ -450,148 +32,11 @@ "safe-buffer": "^5.0.1" } }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", - "requires": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" - } - }, - "browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "requires": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "buffer-to-arraybuffer": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz", - "integrity": "sha1-YGSkD6dutDxyOrqe+PbhIW0QURo=" - }, "buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - } - } - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, "cipher-base": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", @@ -601,113 +46,6 @@ "safe-buffer": "^5.0.1" } }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "crc-32": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.1.tgz", - "integrity": "sha512-Dn/xm/1vFFgs3nfrpEVScHoIslO9NZRITWGz/1E/St6u4xw99vfZzVkW0OSnzx2h9egej9xwMCEut6sqwokM/w==", - "requires": { - "exit-on-epipe": "~1.0.1", - "printj": "~1.3.1" - } - }, - "create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, "create-hash": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", @@ -733,265 +71,6 @@ "sha.js": "^2.4.8" } }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "crypto-js": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", - "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==" - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" - }, - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", - "requires": { - "mimic-response": "^1.0.0" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "dom-walk": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", - "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, "elliptic": { "version": "6.5.4", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", @@ -1013,60 +92,6 @@ } } }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "eth-lib": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", - "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", - "requires": { - "bn.js": "^4.11.6", - "elliptic": "^6.4.0", - "xhr-request-promise": "^0.1.2" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, "ethereumjs-util": { "version": "7.1.4", "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.4.tgz", @@ -1205,283 +230,6 @@ "safe-buffer": "^5.1.1" } }, - "exit-on-epipe": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", - "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==" - }, - "expo-crypto": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/expo-crypto/-/expo-crypto-10.1.2.tgz", - "integrity": "sha512-TYaBtV9oK5OH+EfsAUHQkWkRPifZjCMDn6Yf9gk3/LyHdJHDYnB6NQWTJo9Qkl6vzI9svQ6PMnQTm2Yxrb3ZfQ==" - }, - "expo-random": { - "version": "12.1.2", - "resolved": "https://registry.npmjs.org/expo-random/-/expo-random-12.1.2.tgz", - "integrity": "sha512-ajB+Mwff9PdglsyLliaU4K9BtVwKvAVVI2hQhnvlS3QgsAhHf+jQVUfAysQJHuioF6ADMEsab/kRUy4Dy03aoQ==", - "requires": { - "base64-js": "^1.3.0" - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - } - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "global": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", - "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", - "requires": { - "min-document": "^2.19.0", - "process": "^0.11.10" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, "hash-base": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", @@ -1508,197 +256,14 @@ "requires": { "hash.js": "^1.0.3", "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "is-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz", - "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==" - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-base64": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz", - "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" + "minimalistic-crypto-utils": "^1.0.1" } }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, "md5.js": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", @@ -1709,50 +274,6 @@ "safe-buffer": "^5.1.2" } }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" - }, - "min-document": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", - "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", - "requires": { - "dom-walk": "^0.1.0" - } - }, "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", @@ -1763,171 +284,11 @@ "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, "node-gyp-build": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.3.0.tgz", "integrity": "sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==" }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "requires": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "parse-headers": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz", - "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==" - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, "pbkdf2": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", @@ -1940,97 +301,6 @@ "sha.js": "^2.4.8" } }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "printj": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/printj/-/printj-1.3.1.tgz", - "integrity": "sha512-GA3TdL8szPK4AQ2YnOe/b+Y1jUFwmmGMMK/qbY7VcE3Z7FU8JstbKiKRzO6CIiAKPhTO8m01NoQ0V5f3jc4OGg==" - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "protobufjs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", - "integrity": "sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==", - "requires": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/long": "^4.0.1", - "@types/node": ">=13.7.0", - "long": "^4.0.0" - } - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "query-string": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", - "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", - "requires": { - "decode-uri-component": "^0.2.0", - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - } - }, "randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -2039,15 +309,6 @@ "safe-buffer": "^5.1.0" } }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, "readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -2058,71 +319,6 @@ "util-deprecate": "^1.0.1" } }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, "ripemd160": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", @@ -2137,31 +333,11 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, "scrypt-js": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, "sha.js": { "version": "2.4.11", "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", @@ -2171,121 +347,6 @@ "safe-buffer": "^5.0.1" } }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" - }, - "simple-get": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.2.tgz", - "integrity": "sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==", - "requires": { - "decompress-response": "^3.3.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - } - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, "string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -2294,316 +355,16 @@ "safe-buffer": "~5.2.0" } }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "url-set-query": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", - "integrity": "sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk=" - }, - "utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", - "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" - }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "xhr": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", - "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", - "requires": { - "global": "~4.4.0", - "is-function": "^1.0.1", - "parse-headers": "^2.0.0", - "xtend": "^4.0.0" - } - }, - "xhr-request": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.1.0.tgz", - "integrity": "sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==", - "requires": { - "buffer-to-arraybuffer": "^0.0.5", - "object-assign": "^4.1.1", - "query-string": "^5.0.1", - "simple-get": "^2.7.0", - "timed-out": "^4.0.1", - "url-set-query": "^1.0.0", - "xhr": "^2.0.4" - } - }, - "xhr-request-promise": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz", - "integrity": "sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==", - "requires": { - "xhr-request": "^1.1.0" - } - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" } } } diff --git a/packages/hweb3-eth-accounts/package.json b/packages/hweb3-eth-accounts/package.json index 088c263a80f..592b957eaed 100644 --- a/packages/hweb3-eth-accounts/package.json +++ b/packages/hweb3-eth-accounts/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-eth-accounts", - "version": "1.0.0", + "version": "1.0.33", "description": "Hweb3 module to generate Hedera accounts and sign data and transactions.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-eth-accounts", "license": "LGPL-3.0", @@ -16,13 +16,13 @@ "main": "lib/cjs/index.js", "module": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-core": "1.0.0", - "@arianelabs/hweb3-core-helpers": "1.0.0", - "@arianelabs/hweb3-core-method": "1.0.0", - "@arianelabs/hweb3-utils": "1.0.0", + "@arianelabs/hweb3-core": "1.0.33", + "@arianelabs/hweb3-core-helpers": "1.0.33", + "@arianelabs/hweb3-core-method": "1.0.33", + "@arianelabs/hweb3-utils": "1.0.28", "@ethereumjs/common": "^2.5.0", "@ethereumjs/tx": "^3.3.2", - "@hashgraph/sdk": "^2.10.1", + "@hashgraph/sdk": "2.11.0", "crypto-browserify": "3.12.0", "eth-lib": "0.2.8", "ethereumjs-util": "^7.0.10", diff --git a/packages/hweb3-eth-accounts/src/createClient.js b/packages/hweb3-eth-accounts/src/createClient.js index 2210dfebb66..c3d796776d6 100644 --- a/packages/hweb3-eth-accounts/src/createClient.js +++ b/packages/hweb3-eth-accounts/src/createClient.js @@ -7,4 +7,4 @@ const createClient = function(accountId, privateKey) { return client; }; -module.exports = createClient; +export default createClient; diff --git a/packages/hweb3-eth-ens/package-lock.json b/packages/hweb3-eth-ens/package-lock.json index 238346c95aa..a8d0a9eb2fe 100644 --- a/packages/hweb3-eth-ens/package-lock.json +++ b/packages/hweb3-eth-ens/package-lock.json @@ -1,1843 +1,14 @@ { "name": "@arianelabs/hweb3-eth-ens", - "version": "1.0.0", + "version": "1.0.34", "lockfileVersion": 1, "requires": true, "dependencies": { - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base-x": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", - "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "cids": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/cids/-/cids-0.7.5.tgz", - "integrity": "sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==", - "requires": { - "buffer": "^5.5.0", - "class-is": "^1.1.0", - "multibase": "~0.6.0", - "multicodec": "^1.0.0", - "multihashes": "~0.4.15" - }, - "dependencies": { - "multicodec": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-1.0.4.tgz", - "integrity": "sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==", - "requires": { - "buffer": "^5.6.0", - "varint": "^5.0.0" - } - } - } - }, - "class-is": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/class-is/-/class-is-1.1.0.tgz", - "integrity": "sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==" - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "content-hash": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/content-hash/-/content-hash-2.5.2.tgz", - "integrity": "sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==", - "requires": { - "cids": "^0.7.1", - "multicodec": "^0.5.5", - "multihashes": "^0.4.15" - } - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "eth-ens-namehash": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz", - "integrity": "sha1-IprEbsqG1S4MmR58sq74P/D2i88=", - "requires": { - "idna-uts46-hx": "^2.3.1", - "js-sha3": "^0.5.7" - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "idna-uts46-hx": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/idna-uts46-hx/-/idna-uts46-hx-2.3.1.tgz", - "integrity": "sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==", - "requires": { - "punycode": "2.1.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-sha3": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", - "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=" - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "multibase": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.6.1.tgz", - "integrity": "sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==", - "requires": { - "base-x": "^3.0.8", - "buffer": "^5.5.0" - } - }, - "multicodec": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-0.5.7.tgz", - "integrity": "sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==", - "requires": { - "varint": "^5.0.0" - } - }, - "multihashes": { - "version": "0.4.21", - "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-0.4.21.tgz", - "integrity": "sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==", - "requires": { - "buffer": "^5.5.0", - "multibase": "^0.7.0", - "varint": "^5.0.0" - }, - "dependencies": { - "multibase": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.7.0.tgz", - "integrity": "sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==", - "requires": { - "base-x": "^3.0.8", - "buffer": "^5.5.0" - } - } - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", - "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=" - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - }, - "dependencies": { - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - } - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "varint": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.2.tgz", - "integrity": "sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==" - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } } diff --git a/packages/hweb3-eth-ens/package.json b/packages/hweb3-eth-ens/package.json index 2b9d847e3cb..f6e143581ba 100644 --- a/packages/hweb3-eth-ens/package.json +++ b/packages/hweb3-eth-ens/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-eth-ens", - "version": "1.0.0", + "version": "1.0.34", "description": "ENS support for web3.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-eth-ens", "license": "LGPL-3.0", @@ -10,10 +10,10 @@ "types": "types/index.d.ts", "main": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-core": "1.0.0", - "@arianelabs/hweb3-core-helpers": "1.0.0", - "@arianelabs/hweb3-eth": "1.0.0", - "@arianelabs/hweb3-hed-contract": "1.0.0", + "@arianelabs/hweb3-core": "1.0.33", + "@arianelabs/hweb3-core-helpers": "1.0.33", + "@arianelabs/hweb3-eth": "1.0.34", + "@arianelabs/hweb3-hed-contract": "1.0.34", "content-hash": "^2.5.2", "eth-ens-namehash": "2.0.8" }, diff --git a/packages/hweb3-eth-ens/src/ENS.js b/packages/hweb3-eth-ens/src/ENS.js index d5014bc45f6..03fec7cfd24 100644 --- a/packages/hweb3-eth-ens/src/ENS.js +++ b/packages/hweb3-eth-ens/src/ENS.js @@ -534,4 +534,4 @@ ENS.prototype.checkNetwork = async function () { return this._detectedAddress; }; -module.exports = ENS; +export default ENS; diff --git a/packages/hweb3-eth-ens/src/config.js b/packages/hweb3-eth-ens/src/config.js index b12e5f5b717..a81ba54b3bf 100644 --- a/packages/hweb3-eth-ens/src/config.js +++ b/packages/hweb3-eth-ens/src/config.js @@ -46,4 +46,4 @@ var config = { } }; -module.exports = config; +export default config; diff --git a/packages/hweb3-eth-ens/src/index.js b/packages/hweb3-eth-ens/src/index.js index cb39092a827..5742d7860c0 100644 --- a/packages/hweb3-eth-ens/src/index.js +++ b/packages/hweb3-eth-ens/src/index.js @@ -22,4 +22,4 @@ var ENS = require('./ENS'); -module.exports = ENS; +export default ENS; diff --git a/packages/hweb3-eth-ens/src/resources/ABI/Registry.js b/packages/hweb3-eth-ens/src/resources/ABI/Registry.js index 092788a55b3..aced1227439 100644 --- a/packages/hweb3-eth-ens/src/resources/ABI/Registry.js +++ b/packages/hweb3-eth-ens/src/resources/ABI/Registry.js @@ -359,4 +359,4 @@ var REGISTRY = [ } ]; -module.exports = REGISTRY; +export default REGISTRY; diff --git a/packages/hweb3-eth-ens/src/resources/ABI/Resolver.js b/packages/hweb3-eth-ens/src/resources/ABI/Resolver.js index 1d897391299..b84a05861da 100644 --- a/packages/hweb3-eth-ens/src/resources/ABI/Resolver.js +++ b/packages/hweb3-eth-ens/src/resources/ABI/Resolver.js @@ -407,4 +407,4 @@ var RESOLVER = [ } ]; -module.exports = RESOLVER; \ No newline at end of file +export default RESOLVER; diff --git a/packages/hweb3-eth-iban/package-lock.json b/packages/hweb3-eth-iban/package-lock.json index d5a41262e74..a4dd60e65b0 100644 --- a/packages/hweb3-eth-iban/package-lock.json +++ b/packages/hweb3-eth-iban/package-lock.json @@ -1,1734 +1,14 @@ { "name": "@arianelabs/hweb3-eth-iban", - "version": "1.0.0", + "version": "1.0.28", "lockfileVersion": 1, "requires": true, "dependencies": { - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } } diff --git a/packages/hweb3-eth-iban/package.json b/packages/hweb3-eth-iban/package.json index a173d07ea27..1df5d4245f1 100644 --- a/packages/hweb3-eth-iban/package.json +++ b/packages/hweb3-eth-iban/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-eth-iban", - "version": "1.0.0", + "version": "1.0.28", "description": "This package converts Hedera accountId to IBAN addresses a vice versa.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-eth-iban", "license": "LGPL-3.0", @@ -13,9 +13,10 @@ "compile:cjs": "tsc -b tsconfig.cjs.json", "dtslint": "dtslint --localTs ../../node_modules/typescript/lib types" }, - "main": "lib/index.js", + "main": "lib/cjs/index.js", + "module": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-utils": "1.0.0", + "@arianelabs/hweb3-utils": "1.0.28", "bn.js": "^4.11.9" }, "devDependencies": { diff --git a/packages/hweb3-eth-iban/src/index.js b/packages/hweb3-eth-iban/src/index.js index 9e813277f41..882a04dce70 100644 --- a/packages/hweb3-eth-iban/src/index.js +++ b/packages/hweb3-eth-iban/src/index.js @@ -266,4 +266,4 @@ class Iban { }; } -module.exports = Iban; +export default Iban; diff --git a/packages/hweb3-eth-personal/package-lock.json b/packages/hweb3-eth-personal/package-lock.json index 919a3b901ee..87418256c0e 100644 --- a/packages/hweb3-eth-personal/package-lock.json +++ b/packages/hweb3-eth-personal/package-lock.json @@ -1,1734 +1,19 @@ { "name": "@arianelabs/hweb3-eth-personal", - "version": "1.0.0", + "version": "1.0.33", "lockfileVersion": 1, "requires": true, "dependencies": { - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, "@types/node": { "version": "12.20.33", "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.33.tgz", "integrity": "sha512-5XmYX2GECSa+CxMYaFsr2mrql71Q4EvHjKS+ox/SiwSdaASMoBIWE6UmZqFO+VX1jIcsYLStI4FFoB6V7FeIYw==" }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } } diff --git a/packages/hweb3-eth-personal/package.json b/packages/hweb3-eth-personal/package.json index 92aa42359f7..19de12e3b13 100644 --- a/packages/hweb3-eth-personal/package.json +++ b/packages/hweb3-eth-personal/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-eth-personal", - "version": "1.0.0", + "version": "1.0.33", "description": "Web3 module to interact with the Ethereum blockchain accounts stored in the node.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-eth-personal", "license": "LGPL-3.0", @@ -16,11 +16,11 @@ "main": "lib/cjs/index.js", "module": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-core": "1.0.0", - "@arianelabs/hweb3-core-helpers": "1.0.0", - "@arianelabs/hweb3-core-method": "1.0.0", - "@arianelabs/hweb3-net": "1.0.0", - "@arianelabs/hweb3-utils": "1.0.0", + "@arianelabs/hweb3-core": "1.0.33", + "@arianelabs/hweb3-core-helpers": "1.0.33", + "@arianelabs/hweb3-core-method": "1.0.33", + "@arianelabs/hweb3-net": "1.0.33", + "@arianelabs/hweb3-utils": "1.0.28", "@types/node": "^12.12.6" }, "devDependencies": { diff --git a/packages/hweb3-eth-personal/src/index.js b/packages/hweb3-eth-personal/src/index.js index 02a001c4bd6..d84f0228d8f 100644 --- a/packages/hweb3-eth-personal/src/index.js +++ b/packages/hweb3-eth-personal/src/index.js @@ -23,9 +23,9 @@ "use strict"; import { packageInit, addProviders } from '@arianelabs/hweb3-core'; -var Method = require('@arianelabs/hweb3-core-method'); -var utils = require('@arianelabs/hweb3-utils'); -var Net = require('@arianelabs/hweb3-net'); +import Method from '@arianelabs/hweb3-core-method'; +import utils from '@arianelabs/hweb3-utils'; +import Net from '@arianelabs/hweb3-net'; var formatters = require('@arianelabs/hweb3-core-helpers').formatters; @@ -51,9 +51,9 @@ var Personal = function Personal() { } // update defaultBlock - methods.forEach(function(method) { - method.defaultAccount = defaultAccount; - }); + // methods.forEach(function(method) { + // method.defaultAccount = defaultAccount; + // }); return val; }, @@ -67,9 +67,9 @@ var Personal = function Personal() { defaultBlock = val; // update defaultBlock - methods.forEach(function(method) { - method.defaultBlock = defaultBlock; - }); + // methods.forEach(function(method) { + // method.defaultBlock = defaultBlock; + // }); return val; }, @@ -77,68 +77,68 @@ var Personal = function Personal() { }); - var methods = [ - new Method({ - name: 'getAccounts', - call: 'personal_listAccounts', - params: 0, - outputFormatter: utils.toChecksumAddress - }), - new Method({ - name: 'newAccount', - call: 'personal_newAccount', - params: 1, - inputFormatter: [null], - outputFormatter: utils.toChecksumAddress - }), - new Method({ - name: 'unlockAccount', - call: 'personal_unlockAccount', - params: 3, - inputFormatter: [formatters.inputAddressFormatter, null, null] - }), - new Method({ - name: 'lockAccount', - call: 'personal_lockAccount', - params: 1, - inputFormatter: [formatters.inputAddressFormatter] - }), - new Method({ - name: 'importRawKey', - call: 'personal_importRawKey', - params: 2 - }), - new Method({ - name: 'sendTransaction', - call: 'personal_sendTransaction', - params: 2, - inputFormatter: [formatters.inputTransactionFormatter, null] - }), - new Method({ - name: 'signTransaction', - call: 'personal_signTransaction', - params: 2, - inputFormatter: [formatters.inputTransactionFormatter, null] - }), - new Method({ - name: 'sign', - call: 'personal_sign', - params: 3, - inputFormatter: [formatters.inputSignFormatter, formatters.inputAddressFormatter, null] - }), - new Method({ - name: 'ecRecover', - call: 'personal_ecRecover', - params: 2, - inputFormatter: [formatters.inputSignFormatter, null] - }) - ]; - methods.forEach(function(method) { - method.attachToObject(_this); - method.setRequestManager(_this._requestManager); - method.defaultBlock = _this.defaultBlock; - method.defaultAccount = _this.defaultAccount; - }); + // var methods = [ + // new Method({ + // name: 'getAccounts', + // call: 'personal_listAccounts', + // params: 0, + // outputFormatter: utils.toChecksumAddress + // }), + // new Method({ + // name: 'newAccount', + // call: 'personal_newAccount', + // params: 1, + // inputFormatter: [null], + // outputFormatter: utils.toChecksumAddress + // }), + // new Method({ + // name: 'unlockAccount', + // call: 'personal_unlockAccount', + // params: 3, + // inputFormatter: [formatters.inputAddressFormatter, null, null] + // }), + // new Method({ + // name: 'lockAccount', + // call: 'personal_lockAccount', + // params: 1, + // inputFormatter: [formatters.inputAddressFormatter] + // }), + // new Method({ + // name: 'importRawKey', + // call: 'personal_importRawKey', + // params: 2 + // }), + // new Method({ + // name: 'sendTransaction', + // call: 'personal_sendTransaction', + // params: 2, + // inputFormatter: [formatters.inputTransactionFormatter, null] + // }), + // new Method({ + // name: 'signTransaction', + // call: 'personal_signTransaction', + // params: 2, + // inputFormatter: [formatters.inputTransactionFormatter, null] + // }), + // new Method({ + // name: 'sign', + // call: 'personal_sign', + // params: 3, + // inputFormatter: [formatters.inputSignFormatter, formatters.inputAddressFormatter, null] + // }), + // new Method({ + // name: 'ecRecover', + // call: 'personal_ecRecover', + // params: 2, + // inputFormatter: [formatters.inputSignFormatter, null] + // }) + // ]; + // methods.forEach(function(method) { + // method.attachToObject(_this); + // method.setRequestManager(_this._requestManager); + // method.defaultBlock = _this.defaultBlock; + // method.defaultAccount = _this.defaultAccount; + // }); }; addProviders(Personal); diff --git a/packages/hweb3-eth/package-lock.json b/packages/hweb3-eth/package-lock.json index de8f035286f..22789639438 100644 --- a/packages/hweb3-eth/package-lock.json +++ b/packages/hweb3-eth/package-lock.json @@ -1,1729 +1,14 @@ { "name": "@arianelabs/hweb3-eth", - "version": "1.0.0", + "version": "1.0.34", "lockfileVersion": 1, "requires": true, "dependencies": { - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } } diff --git a/packages/hweb3-eth/package.json b/packages/hweb3-eth/package.json index 9f8909dad4c..d7ed328e36f 100644 --- a/packages/hweb3-eth/package.json +++ b/packages/hweb3-eth/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-eth", - "version": "1.0.0", + "version": "1.0.34", "description": "Hweb3 module to interact with the Hedera hashgraph and smart contracts.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-eth", "license": "LGPL-3.0", @@ -16,18 +16,18 @@ "dtslint": "dtslint --localTs ../../node_modules/typescript/lib types" }, "dependencies": { - "@arianelabs/hweb3-core": "1.0.0", - "@arianelabs/hweb3-core-helpers": "1.0.0", - "@arianelabs/hweb3-core-method": "1.0.0", - "@arianelabs/hweb3-core-subscriptions": "1.0.0", - "@arianelabs/hweb3-eth-abi": "1.0.0", - "@arianelabs/hweb3-eth-accounts": "1.0.0", - "@arianelabs/hweb3-eth-ens": "1.0.0", - "@arianelabs/hweb3-eth-iban": "1.0.0", - "@arianelabs/hweb3-eth-personal": "1.0.0", - "@arianelabs/hweb3-hed-contract": "1.0.0", - "@arianelabs/hweb3-net": "1.0.0", - "@arianelabs/hweb3-utils": "1.0.0" + "@arianelabs/hweb3-core": "1.0.33", + "@arianelabs/hweb3-core-helpers": "1.0.33", + "@arianelabs/hweb3-core-method": "1.0.33", + "@arianelabs/hweb3-core-subscriptions": "1.0.33", + "@arianelabs/hweb3-eth-abi": "1.0.34", + "@arianelabs/hweb3-eth-accounts": "1.0.33", + "@arianelabs/hweb3-eth-ens": "1.0.34", + "@arianelabs/hweb3-eth-iban": "1.0.28", + "@arianelabs/hweb3-eth-personal": "1.0.33", + "@arianelabs/hweb3-hed-contract": "1.0.34", + "@arianelabs/hweb3-net": "1.0.33", + "@arianelabs/hweb3-utils": "1.0.28" }, "devDependencies": { "dtslint": "^3.4.1", diff --git a/packages/hweb3-eth/src/getNetworkType.js b/packages/hweb3-eth/src/getNetworkType.js index dec73702753..eb7563369e4 100644 --- a/packages/hweb3-eth/src/getNetworkType.js +++ b/packages/hweb3-eth/src/getNetworkType.js @@ -73,4 +73,4 @@ var getNetworkType = function (callback) { }); }; -module.exports = getNetworkType; +export default getNetworkType; diff --git a/packages/hweb3-eth/src/index.js b/packages/hweb3-eth/src/index.js index ab1e21ad684..3ff0ae0f068 100644 --- a/packages/hweb3-eth/src/index.js +++ b/packages/hweb3-eth/src/index.js @@ -23,22 +23,22 @@ "use strict"; import { packageInit, addProviders } from '@arianelabs/hweb3-core'; -var helpers = require('@arianelabs/hweb3-core-helpers'); -var Subscriptions = require('@arianelabs/hweb3-core-subscriptions').subscriptions; -var Method = require('@arianelabs/hweb3-core-method'); -var utils = require('@arianelabs/hweb3-utils'); -var Net = require('@arianelabs/hweb3-net'); +import { formatters } from '@arianelabs/hweb3-core-helpers'; +import { subscriptions } from '@arianelabs/hweb3-core-subscriptions'; +import Method from '@arianelabs/hweb3-core-method'; +import utils from '@arianelabs/hweb3-utils'; +import Net from '@arianelabs/hweb3-net'; import Personal from '@arianelabs/hweb3-eth-personal'; import Accounts from '@arianelabs/hweb3-eth-accounts'; -var BaseContract = require('@arianelabs/hweb3-hed-contract'); +import BaseContract from '@arianelabs/hweb3-hed-contract'; // var ENS = require('@arianelabs/hweb3-eth-ens'); // var Iban = require('@arianelabs/hweb3-eth-iban'); // var abi = require('@arianelabs/hweb3-eth-abi'); -var getNetworkType = require('./getNetworkType.js'); -var formatter = helpers.formatters; +import getNetworkType from './getNetworkType.js'; +var formatter = formatters; var blockCall = function (args) { diff --git a/packages/hweb3-eth2-beaconchain/package-lock.json b/packages/hweb3-eth2-beaconchain/package-lock.json index c6ca1d40829..53a46bb3647 100644 --- a/packages/hweb3-eth2-beaconchain/package-lock.json +++ b/packages/hweb3-eth2-beaconchain/package-lock.json @@ -1,15 +1,9 @@ { "name": "@arianelabs/hweb3-eth2-beaconchain", - "version": "1.0.0", + "version": "1.0.21", "lockfileVersion": 1, "requires": true, "dependencies": { - "@assemblyscript/loader": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.9.4.tgz", - "integrity": "sha512-HazVq9zwTVwGmqdwYzu7WyQ6FQVZ7SwET0KKQuKm55jD0IfUpZgN0OPIiZG3zV1iSrVYcN0bdwLRXI/VNCYsUA==", - "dev": true - }, "@babel/cli": { "version": "7.15.7", "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.15.7.tgz", @@ -1886,58 +1880,6 @@ "to-fast-properties": "^2.0.0" } }, - "@chainsafe/as-sha256": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@chainsafe/as-sha256/-/as-sha256-0.2.4.tgz", - "integrity": "sha512-rYfIOaQm0OlFcHdJFUu5VyYOA1HVeQXxOivUsawBjd7WXc3lMQ0bXMfCgN50gPPLWT92G4ioZ0EZz8RnH+YT/g==", - "dev": true, - "requires": { - "@assemblyscript/loader": "^0.9.2", - "buffer": "^5.4.3" - } - }, - "@chainsafe/lodestar-params": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@chainsafe/lodestar-params/-/lodestar-params-0.13.0.tgz", - "integrity": "sha512-rd88F8fy3CE4UGUhf33xLZXdfwFiSdKX7omSISiI9YFluCU7yh0BZEtST4EmGd+v8wMm44i/R6CBOXVxf7eDoA==", - "dev": true, - "requires": { - "@chainsafe/ssz": "^0.6.13", - "@types/js-yaml": "^3.12.2", - "axios": "^0.21.0", - "js-yaml": "^3.13.1" - } - }, - "@chainsafe/lodestar-types": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@chainsafe/lodestar-types/-/lodestar-types-0.13.0.tgz", - "integrity": "sha512-+CJiK0ArS2XRoQQ9tvIup6L4cjfadfX4MInWvEkl9SENCDtNjI0LYspIJNDfNZcz+2lMZ/ZpxNw92YrG8mbMpw==", - "dev": true, - "requires": { - "@chainsafe/lodestar-params": "^0.13.0", - "@chainsafe/ssz": "^0.6.13" - } - }, - "@chainsafe/persistent-merkle-tree": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@chainsafe/persistent-merkle-tree/-/persistent-merkle-tree-0.2.3.tgz", - "integrity": "sha512-Cgqh1taB9ItxFHhcK4xg+Sna+qHTyey79BI1869scJS0VlA6xL0Vga2FcYGYW2t4FZ4o54zjCwGGS/0ZZxD4Lw==", - "dev": true, - "requires": { - "@chainsafe/as-sha256": "^0.2.0" - } - }, - "@chainsafe/ssz": { - "version": "0.6.13", - "resolved": "https://registry.npmjs.org/@chainsafe/ssz/-/ssz-0.6.13.tgz", - "integrity": "sha512-pKb1nlIRD3YvVlgbgB5kir+H2tu1pUhiZd9SIrwUr3xq/vQvoYcs3z+DBrhl1WtW5zwQorxgMe/1pnXp7raLtA==", - "dev": true, - "requires": { - "@chainsafe/as-sha256": "^0.2.0", - "@chainsafe/persistent-merkle-tree": "^0.2.1", - "case": "^1.6.3" - } - }, "@cnakazawa/watch": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", @@ -2185,22 +2127,6 @@ "@types/istanbul-lib-report": "*" } }, - "@types/jest": { - "version": "26.0.24", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.24.tgz", - "integrity": "sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w==", - "dev": true, - "requires": { - "jest-diff": "^26.0.0", - "pretty-format": "^26.0.0" - } - }, - "@types/js-yaml": { - "version": "3.12.7", - "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.7.tgz", - "integrity": "sha512-S6+8JAYTE1qdsc9HMVsfY7+SgSuUU/Tp6TYTmITW0PZxiyIMvol3Gy//y69Wkhs0ti4py5qgR3uZH6uz/DNzJQ==", - "dev": true - }, "@types/node": { "version": "14.17.27", "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.27.tgz", @@ -2292,15 +2218,6 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", "dev": true }, - "axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", - "dev": true, - "requires": { - "follow-redirects": "^1.14.0" - } - }, "babel-jest": { "version": "26.6.3", "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", @@ -2455,12 +2372,6 @@ } } }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -2489,16 +2400,6 @@ "node-int64": "^0.4.0" } }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, "cache-base": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", @@ -2531,12 +2432,6 @@ "rsvp": "^4.8.4" } }, - "case": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/case/-/case-1.6.3.tgz", - "integrity": "sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ==", - "dev": true - }, "chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -2979,12 +2874,6 @@ "path-exists": "^4.0.0" } }, - "follow-redirects": { - "version": "1.14.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", - "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", - "dev": true - }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -3118,12 +3007,6 @@ } } }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", diff --git a/packages/hweb3-eth2-beaconchain/package.json b/packages/hweb3-eth2-beaconchain/package.json index 21a06b4427f..e81049412b8 100644 --- a/packages/hweb3-eth2-beaconchain/package.json +++ b/packages/hweb3-eth2-beaconchain/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-eth2-beaconchain", - "version": "1.0.0", + "version": "1.0.21", "description": "Hweb3 api", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/web3-eth2-beaconchain", "license": "LGPL-3.0", @@ -16,7 +16,7 @@ }, "main": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-eth2-core": "1.0.0" + "@arianelabs/hweb3-eth2-core": "1.0.19" }, "devDependencies": { "@babel/cli": "^7.12.10", diff --git a/packages/hweb3-eth2-core/package-lock.json b/packages/hweb3-eth2-core/package-lock.json index d3b43303d44..6b0d6da4754 100644 --- a/packages/hweb3-eth2-core/package-lock.json +++ b/packages/hweb3-eth2-core/package-lock.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-eth2-core", - "version": "1.0.0", + "version": "1.0.19", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -2221,16 +2221,6 @@ "@types/istanbul-lib-report": "*" } }, - "@types/jest": { - "version": "26.0.24", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.24.tgz", - "integrity": "sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w==", - "dev": true, - "requires": { - "jest-diff": "^26.0.0", - "pretty-format": "^26.0.0" - } - }, "@types/node": { "version": "14.17.27", "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.27.tgz", @@ -2400,14 +2390,6 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", "dev": true }, - "axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", - "requires": { - "follow-redirects": "^1.14.0" - } - }, "babel-jest": { "version": "26.6.3", "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", @@ -3336,11 +3318,6 @@ "path-exists": "^4.0.0" } }, - "follow-redirects": { - "version": "1.14.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", - "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==" - }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -6728,12 +6705,6 @@ "is-typedarray": "^1.0.0" } }, - "typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", - "dev": true - }, "union-value": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", diff --git a/packages/hweb3-eth2-core/package.json b/packages/hweb3-eth2-core/package.json index 44e05f6a9fc..c8abbbbada1 100644 --- a/packages/hweb3-eth2-core/package.json +++ b/packages/hweb3-eth2-core/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-eth2-core", - "version": "1.0.0", + "version": "1.0.19", "description": "Web3 ETH2 core tools for sub-packages. This is an internal package.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-eth2-core", "license": "LGPL-3.0", diff --git a/packages/hweb3-hed-contract/package-lock.json b/packages/hweb3-hed-contract/package-lock.json index bdb907068e2..a2800d58da9 100644 --- a/packages/hweb3-hed-contract/package-lock.json +++ b/packages/hweb3-hed-contract/package-lock.json @@ -1,143 +1,9 @@ { "name": "@arianelabs/hweb3-hed-contract", - "version": "1.0.0", + "version": "1.0.34", "lockfileVersion": 1, "requires": true, "dependencies": { - "@grpc/grpc-js": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.9.tgz", - "integrity": "sha512-un+cXqErq5P4p3+WgYVNVh7FB51MSnaoRef7QWDcMXKR6FX2R6Z/bltcJMxNNdTUMC85lkOQcpnAAetFziPSng==", - "requires": { - "@grpc/proto-loader": "^0.6.4", - "@types/node": ">=12.12.47" - } - }, - "@grpc/proto-loader": { - "version": "0.6.9", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.9.tgz", - "integrity": "sha512-UlcCS8VbsU9d3XTXGiEVFonN7hXk+oMXZtoHHG2oSA1/GcDP1q6OUgs20PzHDGizzyi8ufGSUDlk3O2NyY7leg==", - "requires": { - "@types/long": "^4.0.1", - "lodash.camelcase": "^4.3.0", - "long": "^4.0.0", - "protobufjs": "^6.10.0", - "yargs": "^16.2.0" - } - }, - "@hashgraph/cryptography": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@hashgraph/cryptography/-/cryptography-1.1.2.tgz", - "integrity": "sha512-oSnDDs5foNq6Yni4kCwbA01NuVY2mewVr1jhkJG7yNDT6+xIBCztRWDeINb1JuShXe57Cuf88M1zmN5iFN7JgA==", - "requires": { - "bignumber.js": "^9.0.2", - "crypto-js": "^4.1.1", - "elliptic": "^6.5.4", - "expo-crypto": "^10.1.2", - "expo-random": "^12.1.2", - "js-base64": "^3.7.2", - "tweetnacl": "^1.0.3", - "utf8": "^3.0.0" - } - }, - "@hashgraph/proto": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@hashgraph/proto/-/proto-2.1.2.tgz", - "integrity": "sha512-kuSZrKL6rvrqHltj+ZNr0zLsXqBJpVkchTBU7Wa++2Vzr7iuaH4kTKOozOcNKVgVDP8tEImOOP0DcyOb1t7VPQ==", - "requires": { - "protobufjs": "^6.11.2" - } - }, - "@hashgraph/sdk": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/@hashgraph/sdk/-/sdk-2.7.1.tgz", - "integrity": "sha512-c7J8TMZTte2jWbu++4570/ZoI8JQLfBkUrCIS4JCMvci068Valf8yPJkZ8l9rWdafYI94qbEOhw9po6dr3oSaA==", - "requires": { - "@grpc/grpc-js": "^1.5.1", - "@hashgraph/cryptography": "^1.1.0-beta.5", - "@hashgraph/proto": "2.1.2", - "bignumber.js": "^9.0.2", - "crypto-js": "^4.1.1", - "js-base64": "^3.7.2", - "long": "^4.0.0", - "protobufjs": "^6.11.2", - "utf8": "^3.0.0" - } - }, - "@protobufjs/aspromise": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", - "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" - }, - "@protobufjs/base64": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", - "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" - }, - "@protobufjs/codegen": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" - }, - "@protobufjs/eventemitter": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" - }, - "@protobufjs/fetch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", - "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", - "requires": { - "@protobufjs/aspromise": "^1.1.1", - "@protobufjs/inquire": "^1.1.0" - } - }, - "@protobufjs/float": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", - "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" - }, - "@protobufjs/inquire": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", - "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" - }, - "@protobufjs/path": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", - "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" - }, - "@protobufjs/pool": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", - "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" - }, - "@protobufjs/utf8": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", - "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" - }, - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, "@types/bn.js": { "version": "4.11.6", "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", @@ -146,1902 +12,21 @@ "@types/node": "*" } }, - "@types/long": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz", - "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" - }, "@types/node": { "version": "17.0.22", "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.22.tgz", "integrity": "sha512-8FwbVoG4fy+ykY86XCAclKZDORttqE5/s7dyWZKLXTdv3vRy5HozBEinG5IqhvPXXzIZEcTVbuHlQEI6iuwcmw==" }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - } - } - }, - "bignumber.js": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", - "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==" - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "crypto-js": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", - "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==" - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "expo-crypto": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/expo-crypto/-/expo-crypto-10.1.2.tgz", - "integrity": "sha512-TYaBtV9oK5OH+EfsAUHQkWkRPifZjCMDn6Yf9gk3/LyHdJHDYnB6NQWTJo9Qkl6vzI9svQ6PMnQTm2Yxrb3ZfQ==" - }, - "expo-random": { - "version": "12.1.2", - "resolved": "https://registry.npmjs.org/expo-random/-/expo-random-12.1.2.tgz", - "integrity": "sha512-ajB+Mwff9PdglsyLliaU4K9BtVwKvAVVI2hQhnvlS3QgsAhHf+jQVUfAysQJHuioF6ADMEsab/kRUy4Dy03aoQ==", - "requires": { - "base64-js": "^1.3.0" - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-base64": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz", - "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "protobufjs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", - "integrity": "sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==", - "requires": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/long": "^4.0.1", - "@types/node": ">=13.7.0", - "long": "^4.0.0" - } - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - } - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true + "eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", - "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" } } } diff --git a/packages/hweb3-hed-contract/package.json b/packages/hweb3-hed-contract/package.json index a58b9de0f40..50b82cc13e5 100644 --- a/packages/hweb3-hed-contract/package.json +++ b/packages/hweb3-hed-contract/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-hed-contract", - "version": "1.0.0", + "version": "1.0.34", "description": "Hweb3 module to interact with Hedera smart contracts.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-hed-contract", "license": "LGPL-3.0", @@ -16,15 +16,16 @@ "main": "lib/cjs/index.js", "module": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-core": "1.0.0", - "@arianelabs/hweb3-core-helpers": "1.0.0", - "@arianelabs/hweb3-core-method": "1.0.0", - "@arianelabs/hweb3-core-promievent": "1.0.0", - "@arianelabs/hweb3-core-subscriptions": "1.0.0", - "@arianelabs/hweb3-eth-abi": "1.0.0", - "@arianelabs/hweb3-utils": "1.0.0", - "@hashgraph/sdk": "2.7.1", - "@types/bn.js": "^4.11.5" + "@arianelabs/hweb3-core": "1.0.33", + "@arianelabs/hweb3-core-helpers": "1.0.33", + "@arianelabs/hweb3-core-method": "1.0.33", + "@arianelabs/hweb3-core-promievent": "1.0.18", + "@arianelabs/hweb3-core-subscriptions": "1.0.33", + "@arianelabs/hweb3-eth-abi": "1.0.34", + "@arianelabs/hweb3-utils": "1.0.28", + "@hashgraph/sdk": "2.11.0", + "@types/bn.js": "^4.11.5", + "eventemitter3": "^4.0.7" }, "devDependencies": { "dtslint": "^3.4.1", diff --git a/packages/hweb3-hed-contract/src/index.js b/packages/hweb3-hed-contract/src/index.js index 14a5668ca37..dec08b045c7 100644 --- a/packages/hweb3-hed-contract/src/index.js +++ b/packages/hweb3-hed-contract/src/index.js @@ -31,21 +31,19 @@ "use strict"; import { - ContractCallQuery, ContractCreateTransaction, - ContractExecuteTransaction, ContractFunctionParameters, - FileAppendTransaction, - FileCreateTransaction, FileId, + AccountId, + ContractCallQuery, + ContractCreateFlow, + ContractExecuteTransaction, } from '@hashgraph/sdk'; +import utils from '@arianelabs/hweb3-utils'; import { packageInit } from '@arianelabs/hweb3-core'; -var Method = require('@arianelabs/hweb3-core-method'); -var utils = require('@arianelabs/hweb3-utils'); -var Subscription = require('@arianelabs/hweb3-core-subscriptions').subscription; -var formatters = require('@arianelabs/hweb3-core-helpers').formatters; -var errors = require('@arianelabs/hweb3-core-helpers').errors; -var promiEvent = require('@arianelabs/hweb3-core-promievent'); -var abi = require('@arianelabs/hweb3-eth-abi'); - +import { formatters, errors } from '@arianelabs/hweb3-core-helpers'; +import promiEvent from '@arianelabs/hweb3-core-promievent'; +import abi from '@arianelabs/hweb3-eth-abi'; +import { EventEmitter } from 'eventemitter3'; +console.log({ utils }); /** * Should be called to create new contract instance * @@ -322,12 +320,14 @@ var Contract = function Contract(jsonInterface, address, options) { this.events = {}; this._address = null; + this._polling = null; + this._emiter = new EventEmitter(); + this.subscriptions = {}; this._jsonInterface = []; // set getter/setter properties this.options.address = address; this.options.jsonInterface = jsonInterface; - }; /** @@ -348,7 +348,6 @@ Contract.setProvider = function(provider, accounts) { this._ethAccounts = accounts; }; - /** * Get the callback and modify the array if necessary * @@ -376,7 +375,6 @@ Contract.prototype._checkListener = function(type, event){ } }; - /** * Use default values, if options are not available * @@ -399,7 +397,6 @@ Contract.prototype._getOrSetDefaultOptions = function getOrSetDefaultOptions(opt return options; }; - /** * Should be used to encode indexed params and options to one final object * @@ -425,7 +422,6 @@ Contract.prototype._encodeEventABI = function (event, options) { // create topics based on filter } else { - result.topics = []; // add event signature @@ -541,43 +537,28 @@ Contract.prototype._encodeMethodABI = function _encodeMethodABI() { var methodSignature = this._method.signature, args = this.arguments || []; - var signature = false, - paramsABI = this._parent.options.jsonInterface.filter(function (json) { - return ((methodSignature === 'constructor' && json.type === methodSignature) || - ((json.signature === methodSignature || json.signature === methodSignature.replace('0x','') || json.name === methodSignature) && json.type === 'function')); - }).map(function (json) { - var inputLength = (Array.isArray(json.inputs)) ? json.inputs.length : 0; - - if (inputLength !== args.length) { - throw new Error('The number of arguments is not matching the methods required number. You need to pass '+ inputLength +' arguments.'); - } - - return Array.isArray(json.inputs) ? json.inputs : []; - }).map(function (inputs) { - return abi.encodeParameters(inputs, args); - })[0] || ''; - - // return constructor - if(methodSignature === 'constructor') { - if(!this._deployData) - throw new Error('The contract has no contract data option set. This is necessary to append the constructor parameters.'); - - if(!this._deployData.startsWith('0x')) { - this._deployData = '0x' + this._deployData; + return this._parent.options.jsonInterface.filter(function (json) { + return ( + (methodSignature === 'constructor' && json.type === methodSignature) + || ( + (json.signature === methodSignature + || json.signature === methodSignature.replace('0x','') + || json.name === methodSignature + ) + && json.type === 'function' + ) + ); + }).map(function (json) { + var inputLength = (Array.isArray(json.inputs)) ? json.inputs.length : 0; + + if (inputLength !== args.length) { + throw new Error('The number of arguments is not matching the methods required number. You need to pass '+ inputLength +' arguments.'); } - return this._deployData + paramsABI; - - } - - // return method - var returnValue = (signature) ? signature + paramsABI : paramsABI; - - if(!returnValue) { - throw new Error('Couldn\'t find a matching contract method named "'+ this._method.name +'".'); - } - - return paramsABI; + return Array.isArray(json.inputs) ? json.inputs : []; + }).map(function (inputs) { + return abi.encodeParameters(inputs, args); + })[0] || undefined; }; /** @@ -614,60 +595,28 @@ Contract.prototype._decodeMethodReturn = function (outputs, returnValues) { * @param {Function} callback * @return {Object} EventEmitter possible events are "error", "transactionHash" and "receipt" */ -Contract.prototype.deploy = function(options){ - const _this = this; - const txObject = {}; +Contract.prototype.deploy = function(options, callback) { options = options || {}; - options.arguments = options.arguments || []; + options = this._getOrSetDefaultOptions(options); - if(!options.fileId) { + if(!options.data) { + if (typeof callback === 'function'){ + return callback(errors.ContractMissingDeployDataError()); + } throw errors.ContractMissingDeployDataError(); } - txObject.send = (args, cb) => { - const contractTx = new ContractCreateTransaction() - .setBytecodeFileId(options.fileId) - ; - - if(!args.gas) { - return cb(errors.ContractMissingDeployDataError()); - } - - contractTx.setGas(args.gas.toTinybars()); - if (options.arguments.constructorParameters) { - contractTx.setConstructorParameters(options.arguments.constructorParameters); - } - if (options.arguments.initialBalance) { - contractTx.setInitialBalance(options.arguments.initialBalance); - } - if (options.arguments.memo) { - contractTx.setContractMemo(options.arguments.memo); - } - if (options.arguments.renewPeriod) { - contractTx.setAutoRenewPeriod(options.arguments.renewPeriod); - } - - _this._requestManager.send(contractTx, (err, res) => { - if (err) cb(err); - - _this._requestManager.getReceipt(res, (err, receipt) => { - if (err) cb(err); - - cb(null, new _this.constructor(_this.options.jsonInterface, receipt.contractId.toString())); - }); - }); - }; - - txObject.estimateGas = function () { - throw new Error('Not implemented'); - }; - - txObject.createAccessList = function () { - throw new Error('Not implemented'); - }; + var constructor = this.options.jsonInterface.find((method) => { + return (method.type === 'constructor'); + }) || {}; + constructor.signature = 'constructor'; - return txObject; + return this._createTxObject.apply({ + method: constructor, + parent: this, + deployData: options.data, + }, options.arguments); }; /** @@ -767,45 +716,52 @@ Contract.prototype.once = function(event, options, callback) { * @return {Object} the event subscription */ Contract.prototype._on = function(){ + // TODO: apply filters, topics, parameters, + // use contract interval option to create polling var subOptions = this._generateEventOptions.apply(this, arguments); - if (subOptions.params && subOptions.params.toBlock) { - delete subOptions.params.toBlock; - console.warn('Invalid option: toBlock. Use getPastEvents for specific range.'); + console.log({ subOptions }); + + if (!this._polling) { + this._polling = this._requestManager.createPolling(subOptions.params.address, this._emiter); + + this._emiter.on('data', this._parseLogs, this); } - // prevent the event "newListener" and "removeListener" from being overwritten - this._checkListener('newListener', subOptions.event.name); - this._checkListener('removeListener', subOptions.event.name); - - // TODO check if listener already exists? and reuse subscription if options are the same. - - // create new subscription - var subscription = new Subscription({ - subscription: { - params: 1, - inputFormatter: [formatters.inputLogFormatter], - outputFormatter: this._decodeEventABI.bind(subOptions.event), - // DUBLICATE, also in web3-eth - subscriptionHandler: function (output) { - if(output.removed) { - this.emit('changed', output); - } else { - this.emit('data', output); - } + // add event listener + this._emiter.on(subOptions.event.signature, subOptions.callback); + + if (!(subOptions.event.signature in this.subscriptions)) { + this.subscriptions[subOptions.event.signature] = { + emiter: new EventEmitter(), + event: subOptions.event, + }; + } + + return this.subscriptions[subOptions.event.signature].emiter; +}; + +Contract.prototype._parseLogs = function (logs) { + const subscribedTopics = Object.keys(this.subscriptions); + + logs.forEach(log => { + subscribedTopics.forEach(topic => { + if (log.topics.includes(topic)) { + const decodedLog = this._decodeEventABI.call( + this.subscriptions[topic].event, + log, + ); - if (typeof this.callback === 'function') { - this.callback(null, output, this); + if (decodedLog) { + this._emiter.emit(topic, null, decodedLog); + this.subscriptions[topic].emiter.emit('data', decodedLog); + } else { + this._emiter.emit(topic, decodedLog); + this.subscriptions[topic].emiter.emit('error', decodedLog); } } - }, - type: 'eth', - requestManager: this._requestManager + }); }); - - subscription.subscribe('logs', subOptions.params, subOptions.callback || function () {}); - - return subscription; }; /** @@ -820,22 +776,21 @@ Contract.prototype._on = function(){ Contract.prototype.getPastEvents = function(){ var subOptions = this._generateEventOptions.apply(this, arguments); - var getPastLogs = new Method({ - name: 'getPastLogs', - call: 'eth_getLogs', - params: 1, - inputFormatter: [formatters.inputLogFormatter], - outputFormatter: this._decodeEventABI.bind(subOptions.event) - }); - getPastLogs.setRequestManager(this._requestManager); - var call = getPastLogs.buildCall(); + // var getPastLogs = new Method({ + // name: 'getPastLogs', + // call: 'eth_getLogs', + // params: 1, + // inputFormatter: [formatters.inputLogFormatter], + // outputFormatter: this._decodeEventABI.bind(subOptions.event) + // }); + // getPastLogs.setRequestManager(this._requestManager); + // var call = getPastLogs.buildCall(); - getPastLogs = null; + // getPastLogs = null; return call(subOptions.params, subOptions.callback); }; - /** * returns the an object with call, send, estimate functions * @@ -876,7 +831,6 @@ Contract.prototype._createTxObject = function _createTxObject(){ return txObject; }; - /** * Generates the options for the execute call * @@ -915,8 +869,8 @@ Contract.prototype._processExecuteArguments = function _processExecuteArguments( processedArgs.options.to = this._parent.options.address; // return error, if no "data" is specified - if(!processedArgs.options.data) - return utils._fireError(new Error('Couldn\'t find a matching contract method, or the number of parameters is wrong.'), defer.eventEmitter, defer.reject, processedArgs.callback); + // if(!processedArgs.options.data) + // return utils._fireError(new Error('Couldn\'t find a matching contract method, or the number of parameters is wrong.'), defer.eventEmitter, defer.reject, processedArgs.callback); return processedArgs; }; @@ -963,40 +917,101 @@ Contract.prototype._executeMethod = function _executeMethod() { case 'call': var query = new ContractCallQuery() .setContractId(_this._parent.options.address) - .setFunction(_this._method.name, args.options.data || undefined) + .setFunction(_this._method.name) .setGas(args.options.gas) .setQueryPayment(args.options.queryPayment) ; return _this._parent._requestManager.send(query, args.callback); case 'send': - // return error, if no "from" is specified - if(!utils.isAddress(args.options.from)) { - return utils._fireError(errors.ContractNoFromAddressDefinedError(), defer.eventEmitter, defer.reject, args.callback); - } - if (typeof this._method.payable === 'boolean' && !this._method.payable && args.options.value && args.options.value > 0) { return utils._fireError(new Error('Can not send value to non-payable contract method or constructor'), defer.eventEmitter, defer.reject, args.callback); } // make sure receipt logs are decoded - var transaction = new ContractExecuteTransaction() - .setContractId(_this._parent.options.address) - .setFunction(_this._method.name) - .setGas(args.options.gas) - .setPayableAmount(args.options.value) + var transaction = this._method.type === 'constructor' ? this._parent._contractCreateTransaction(this._deployData, args.options) : this._parent._contractExecuteTransaction( + _this._parent.options.address, + _this._method.name, + args.options + ) ; - if (args.options.data) { - transaction - .setFunctionParameters(args.options.data) - ; - } + return _this._parent._requestManager.send(transaction, (err, response) => { + if (err) { + args.callback(err); + return; + } + + return _this._parent._requestManager.getReceipt(response, (err, response) => { + if (err) { + args.callback(err); + } + if (_this._method.type === 'constructor') { + const newContract = _this._parent.clone(); + newContract.options.address = response.contractId.toString(); + response = newContract; + } - return _this._parent._requestManager.send(transaction, args.callback); + return args.callback(null, response); + }); + }); default: throw new Error('Method "' + args.type + '" not implemented.'); } }; -module.exports = Contract; +/** + * Generates the ContractCreateFlow transaction for the execute send + * + * @method _contractCreateTransaction + * @param {Uint8Array | string} bytecode + * @param {Object} options + */ +Contract.prototype._contractCreateTransaction = function (bytecode, options) { + const tx = new ContractCreateFlow() + .setBytecode(bytecode) + ; + + if(!options.gas) { + throw errors.ContractMissingDeployDataError(); + } + + tx.setGas(options.gas); + + if (options.data) { + tx.setConstructorParameters(options.data); + } + + if (options.initialBalance) { + tx.setInitialBalance(options.initialBalance); + } + + if (options.memo) { + tx.setContractMemo(options.memo); + } + if (options.renewPeriod) { + tx.setAutoRenewPeriod(options.renewPeriod); + } + + return tx; +}; + +/** + * Generates the ContractExecuteTransaction transaction for the execute send + * + * @method _contractCreateTransaction + * @param {ContractId | string} contractId + * @param {string} methodName + * @param {Object} options + */ +Contract.prototype._contractExecuteTransaction = function (contractId, methodName, options) { + const tx = new ContractExecuteTransaction() + .setContractId(contractId) + .setFunction(methodName, options.data || undefined) + .setGas(options.gas) + .setPayableAmount(options.value) + ; + return tx; +}; + +export default Contract; diff --git a/packages/hweb3-hed-contract/types/index.d.ts b/packages/hweb3-hed-contract/types/index.d.ts index 258284a0a95..32de0686c8f 100644 --- a/packages/hweb3-hed-contract/types/index.d.ts +++ b/packages/hweb3-hed-contract/types/index.d.ts @@ -89,8 +89,8 @@ export interface ContractArguments { } export interface DeployOptions { - fileId: FileId; - arguments?: ContractArguments; + data: string | Uint8Array; + arguments?: any[]; } export interface ContractSendMethod { diff --git a/packages/hweb3-net/package-lock.json b/packages/hweb3-net/package-lock.json index cb9faf30f51..2502077ae35 100644 --- a/packages/hweb3-net/package-lock.json +++ b/packages/hweb3-net/package-lock.json @@ -1,1729 +1,14 @@ { "name": "@arianelabs/hweb3-net", - "version": "1.0.0", + "version": "1.0.33", "lockfileVersion": 1, "requires": true, "dependencies": { - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } } diff --git a/packages/hweb3-net/package.json b/packages/hweb3-net/package.json index c58530bcc1b..2122f2e4332 100644 --- a/packages/hweb3-net/package.json +++ b/packages/hweb3-net/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-net", - "version": "1.0.0", + "version": "1.0.33", "description": "Web3 module to interact with the Ethereum nodes networking properties.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-net", "license": "LGPL-3.0", @@ -8,11 +8,17 @@ "node": ">=8.0.0" }, "types": "types/index.d.ts", - "main": "lib/index.js", + "scripts": { + "compile": "tsc -b tsconfig.json", + "compile:cjs": "tsc -b tsconfig.cjs.json", + "dtslint": "dtslint --localTs ../../node_modules/typescript/lib types" + }, + "main": "lib/cjs/index.js", + "module": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-core": "1.0.0", - "@arianelabs/hweb3-core-method": "1.0.0", - "@arianelabs/hweb3-utils": "1.0.0" + "@arianelabs/hweb3-core": "1.0.33", + "@arianelabs/hweb3-core-method": "1.0.33", + "@arianelabs/hweb3-utils": "1.0.28" }, "devDependencies": { "dtslint": "^3.4.1", diff --git a/packages/hweb3-net/src/index.js b/packages/hweb3-net/src/index.js index 8cbf3cf360e..682ccf5bbe9 100644 --- a/packages/hweb3-net/src/index.js +++ b/packages/hweb3-net/src/index.js @@ -23,7 +23,7 @@ "use strict"; var core = require('@arianelabs/hweb3-core'); -var Method = require('@arianelabs/hweb3-core-method'); +// var Method = require('@arianelabs/hweb3-core-method'); var utils = require('@arianelabs/hweb3-utils'); @@ -34,34 +34,34 @@ var Net = function () { core.packageInit(this, arguments); - [ - new Method({ - name: 'getId', - call: 'net_version', - params: 0, - outputFormatter: parseInt - }), - new Method({ - name: 'isListening', - call: 'net_listening', - params: 0 - }), - new Method({ - name: 'getPeerCount', - call: 'net_peerCount', - params: 0, - outputFormatter: utils.hexToNumber - }) - ].forEach(function(method) { - method.attachToObject(_this); - method.setRequestManager(_this._requestManager); - }); + // [ + // new Method({ + // name: 'getId', + // call: 'net_version', + // params: 0, + // outputFormatter: parseInt + // }), + // new Method({ + // name: 'isListening', + // call: 'net_listening', + // params: 0 + // }), + // new Method({ + // name: 'getPeerCount', + // call: 'net_peerCount', + // params: 0, + // outputFormatter: utils.hexToNumber + // }) + // ].forEach(function(method) { + // method.attachToObject(_this); + // method.setRequestManager(_this._requestManager); + // }); }; core.addProviders(Net); -module.exports = Net; +export default Net; diff --git a/packages/hweb3-providers-http/package-lock.json b/packages/hweb3-providers-http/package-lock.json index db3d59826ea..775893e527f 100644 --- a/packages/hweb3-providers-http/package-lock.json +++ b/packages/hweb3-providers-http/package-lock.json @@ -1,4445 +1,133 @@ { "name": "@arianelabs/hweb3-providers-http", - "version": "1.0.0", + "version": "1.0.33", "lockfileVersion": 1, "requires": true, "dependencies": { - "@ampproject/remapping": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz", - "integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.0" - } - }, - "@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", - "dev": true, - "requires": { - "@babel/highlight": "^7.16.7" - } - }, - "@babel/compat-data": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", - "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", - "dev": true - }, - "@babel/core": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.8.tgz", - "integrity": "sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.7", - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-module-transforms": "^7.17.7", - "@babel/helpers": "^7.17.8", - "@babel/parser": "^7.17.8", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.3", - "@babel/types": "^7.17.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.1.2", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", - "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", - "dev": true, - "requires": { - "@babel/types": "^7.17.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } - } - }, - "@babel/helper-compilation-targets": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", - "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-validator-option": "^7.16.7", - "browserslist": "^4.17.5", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", - "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-function-name": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz", - "integrity": "sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz", - "integrity": "sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", - "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-module-imports": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", - "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-module-transforms": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", - "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.17.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/helper-validator-identifier": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.3", - "@babel/types": "^7.17.0" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz", - "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==", - "dev": true - }, - "@babel/helper-simple-access": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", - "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", - "dev": true, - "requires": { - "@babel/types": "^7.17.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", - "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", - "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", - "dev": true - }, - "@babel/helpers": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.8.tgz", - "integrity": "sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==", - "dev": true, - "requires": { - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.3", - "@babel/types": "^7.17.0" - } - }, - "@babel/highlight": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz", - "integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@babel/parser": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", - "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", - "dev": true - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-typescript": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz", - "integrity": "sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" - } - }, - "@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" - } - }, - "@babel/traverse": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz", - "integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.3", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.16.7", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.3", - "@babel/types": "^7.17.0", - "debug": "^4.1.0", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", - "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "to-fast-properties": "^2.0.0" - } - }, - "@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "@grpc/grpc-js": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.9.tgz", - "integrity": "sha512-un+cXqErq5P4p3+WgYVNVh7FB51MSnaoRef7QWDcMXKR6FX2R6Z/bltcJMxNNdTUMC85lkOQcpnAAetFziPSng==", - "requires": { - "@grpc/proto-loader": "^0.6.4", - "@types/node": ">=12.12.47" - } - }, - "@grpc/proto-loader": { - "version": "0.6.9", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.9.tgz", - "integrity": "sha512-UlcCS8VbsU9d3XTXGiEVFonN7hXk+oMXZtoHHG2oSA1/GcDP1q6OUgs20PzHDGizzyi8ufGSUDlk3O2NyY7leg==", - "requires": { - "@types/long": "^4.0.1", - "lodash.camelcase": "^4.3.0", - "long": "^4.0.0", - "protobufjs": "^6.10.0", - "yargs": "^16.2.0" - } - }, - "@hashgraph/cryptography": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@hashgraph/cryptography/-/cryptography-1.1.1.tgz", - "integrity": "sha512-/0G9p9W/m9M/dQY1W7p3osrDP5YQndHvgwbrruoMr5uBD1ZKBVmJjG4+iqbOgA/J+/dLiwPEor6IEEE6gofv2w==", - "requires": { - "bignumber.js": "^9.0.2", - "crypto-js": "^4.1.1", - "elliptic": "^6.5.4", - "expo-crypto": "^10.1.1", - "expo-random": "^12.1.1", - "js-base64": "^3.7.2", - "tweetnacl": "^1.0.3", - "utf8": "^3.0.0" - } - }, - "@hashgraph/proto": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@hashgraph/proto/-/proto-2.1.4.tgz", - "integrity": "sha512-gZP206s1SuWb4By8BIyAtRwXoO59ARfhShg4YIG+7Cp0rWXe0I1D+uQm4HRaPIWMU0S7xXUec/JPwnMefetTSg==", - "requires": { - "long": "^4.0.0", - "protobufjs": "^6.11.2" - } - }, - "@hashgraph/sdk": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/@hashgraph/sdk/-/sdk-2.10.1.tgz", - "integrity": "sha512-5vnh1S5gnwBSRlh6EEqYVOnBeTPiuzcz9A+Sb0nC/DfhjSkhlMo9gTiWCDJxDYktsoXrhrTNwETg0KRsHjh8zw==", - "requires": { - "@grpc/grpc-js": "^1.5.3", - "@hashgraph/cryptography": "^1.1.0-beta.5", - "@hashgraph/proto": "2.1.4", - "bignumber.js": "^9.0.2", - "crypto-js": "^4.1.1", - "js-base64": "^3.7.2", - "long": "^4.0.0", - "protobufjs": "^6.11.2", - "utf8": "^3.0.0" - } - }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - } - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@jest/console": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0" - } - }, - "@jest/core": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", - "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "@jest/environment": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", - "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", - "dev": true, - "requires": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1" - } - }, - "@jest/fake-timers": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", - "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - } - }, - "@jest/globals": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", - "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" - } - }, - "@jest/reporters": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", - "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", - "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" - } - }, - "@jest/source-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", - "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", - "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" - } - }, - "@jest/test-result": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", - "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/test-sequencer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", - "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", - "dev": true, - "requires": { - "@jest/test-result": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" - } - }, - "@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz", - "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==", - "dev": true - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.11", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz", - "integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz", - "integrity": "sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@protobufjs/aspromise": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", - "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" - }, - "@protobufjs/base64": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", - "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" - }, - "@protobufjs/codegen": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" - }, - "@protobufjs/eventemitter": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" - }, - "@protobufjs/fetch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", - "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", - "requires": { - "@protobufjs/aspromise": "^1.1.1", - "@protobufjs/inquire": "^1.1.0" - } - }, - "@protobufjs/float": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", - "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" - }, - "@protobufjs/inquire": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", - "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" - }, - "@protobufjs/path": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", - "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" - }, - "@protobufjs/pool": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", - "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" - }, - "@protobufjs/utf8": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", - "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" - }, - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, - "@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", - "dev": true - }, - "@types/babel__core": { - "version": "7.1.19", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz", - "integrity": "sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==", - "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@types/babel__template": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", - "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", - "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@types/babel__traverse": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz", - "integrity": "sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==", - "dev": true, - "requires": { - "@babel/types": "^7.3.0" - } - }, - "@types/graceful-fs": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", - "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", - "dev": true - }, - "@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "*" - } - }, - "@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", - "dev": true, - "requires": { - "@types/istanbul-lib-report": "*" - } - }, - "@types/jest": { - "version": "27.4.1", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.4.1.tgz", - "integrity": "sha512-23iPJADSmicDVrWk+HT58LMJtzLAnB2AgIzplQuq/bSrGaxCrlvRFjGbXmamnnk/mAmCdLStiGqggu28ocUyiw==", - "dev": true, - "requires": { - "jest-matcher-utils": "^27.0.0", - "pretty-format": "^27.0.0" - } - }, - "@types/long": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz", - "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" - }, - "@types/node": { - "version": "17.0.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", - "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==" - }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "@types/prettier": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.4.tgz", - "integrity": "sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA==", - "dev": true - }, - "@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", - "dev": true - }, - "@types/yargs": { - "version": "16.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz", - "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", - "dev": true - }, - "abab": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", - "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", - "dev": true - }, - "acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", - "dev": true - }, - "acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", - "dev": true, - "requires": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - } - } - }, - "acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "requires": { - "debug": "4" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "requires": { - "type-fest": "^0.21.3" - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "babel-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", - "dev": true, - "requires": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - } - }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - } - }, - "babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", - "dev": true, - "requires": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" - } - }, - "babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", - "dev": true, - "requires": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - } - }, - "babel-preset-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", - "dev": true, - "requires": { - "babel-plugin-jest-hoist": "^27.5.1", - "babel-preset-current-node-syntax": "^1.0.0" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - } - } - }, - "bignumber.js": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", - "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==" - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true - }, - "browserslist": { - "version": "4.20.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz", - "integrity": "sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001317", - "electron-to-chromium": "^1.4.84", - "escalade": "^3.1.1", - "node-releases": "^2.0.2", - "picocolors": "^1.0.0" - } - }, - "bs-logger": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", - "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", - "dev": true, - "requires": { - "fast-json-stable-stringify": "2.x" - } - }, - "bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - "dev": true, - "requires": { - "node-int64": "^0.4.0" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001323", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001323.tgz", - "integrity": "sha512-e4BF2RlCVELKx8+RmklSEIVub1TWrmdhvA5kEUueummz1XyySW0DVk+3x9HyhU9MuWTa2BhqLgEuEmUwASAdCA==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "dev": true - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "ci-info": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.3.0.tgz", - "integrity": "sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw==", - "dev": true - }, - "cjs-module-lexer": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", - "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", - "dev": true - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "collect-v8-coverage": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", - "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", - "dev": true - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - } - } - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "crypto-js": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", - "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==" - }, - "cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true - }, - "cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", - "dev": true, - "requires": { - "cssom": "~0.3.6" - }, - "dependencies": { - "cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - } - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", - "dev": true, - "requires": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" - } - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decimal.js": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz", - "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==", - "dev": true - }, - "dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", - "dev": true - }, - "deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true - }, - "domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", - "dev": true, - "requires": { - "webidl-conversions": "^5.0.0" - }, - "dependencies": { - "webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", - "dev": true - } - } - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "electron-to-chromium": { - "version": "1.4.103", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.103.tgz", - "integrity": "sha512-c/uKWR1Z/W30Wy/sx3dkZoj4BijbXX85QKWu9jJfjho3LBAXNEGAEW3oWiGb+dotA6C6BzCTxL2/aLes7jlUeg==", - "dev": true - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "escodegen": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", - "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", - "dev": true, - "requires": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - } - }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true - }, - "expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - } - }, - "expo-crypto": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/expo-crypto/-/expo-crypto-10.1.2.tgz", - "integrity": "sha512-TYaBtV9oK5OH+EfsAUHQkWkRPifZjCMDn6Yf9gk3/LyHdJHDYnB6NQWTJo9Qkl6vzI9svQ6PMnQTm2Yxrb3ZfQ==" - }, - "expo-random": { - "version": "12.1.2", - "resolved": "https://registry.npmjs.org/expo-random/-/expo-random-12.1.2.tgz", - "integrity": "sha512-ajB+Mwff9PdglsyLliaU4K9BtVwKvAVVI2hQhnvlS3QgsAhHf+jQVUfAysQJHuioF6ADMEsab/kRUy4Dy03aoQ==", - "requires": { - "base64-js": "^1.3.0" - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "fb-watchman": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", - "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", - "dev": true, - "requires": { - "bser": "2.1.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true - }, - "get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", - "dev": true, - "requires": { - "whatwg-encoding": "^1.0.5" - } - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "dev": true, - "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "requires": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz", - "integrity": "sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - } - }, - "istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - } - }, - "istanbul-reports": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", - "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", - "dev": true, - "requires": { - "@jest/core": "^27.5.1", - "import-local": "^3.0.2", - "jest-cli": "^27.5.1" - }, - "dependencies": { - "jest-cli": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", - "dev": true, - "requires": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - } - } - } - }, - "jest-changed-files": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "execa": "^5.0.0", - "throat": "^6.0.1" - } - }, - "jest-circus": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" - } - }, - "jest-config": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", - "dev": true, - "requires": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", - "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - } - } - }, - "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-docblock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", - "dev": true, - "requires": { - "detect-newline": "^3.0.0" - } - }, - "jest-each": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-environment-jsdom": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" - } - }, - "jest-environment-node": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - } - }, - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.3.2", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - } - }, - "jest-jasmine2": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" - } - }, - "jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", - "dev": true, - "requires": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-mock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*" - } - }, - "jest-pnp-resolver": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", - "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", - "dev": true - }, - "jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true - }, - "jest-resolve": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "resolve": "^1.20.0", - "resolve.exports": "^1.1.0", - "slash": "^3.0.0" - } - }, - "jest-resolve-dependencies": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" - } - }, - "jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" - } - }, - "jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - } - }, - "jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", - "dev": true, - "requires": { - "@types/node": "*", - "graceful-fs": "^4.2.9" - } - }, - "jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", - "dev": true, - "requires": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - }, - "jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "leven": "^3.1.0", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true - } - } - }, - "jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", - "dev": true, - "requires": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.5.1", - "string-length": "^4.0.1" - } - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "dependencies": { - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "js-base64": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz", - "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", - "dev": true, - "requires": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" - }, - "dependencies": { - "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "tough-cookie": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", - "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", - "dev": true, - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.1.2" - } - } - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true - }, - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" - }, - "lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", - "dev": true - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "dev": true, - "requires": { - "tmpl": "1.0.5" - } - }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", - "dev": true - }, - "node-releases": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz", - "integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==", - "dev": true - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "nwsapi": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", - "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", - "dev": true - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true - }, - "pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true - } - } - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "dev": true, - "requires": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - } - }, - "protobufjs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", - "integrity": "sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==", - "requires": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/long": "^4.0.1", - "@types/node": ">=13.7.0", - "long": "^4.0.0" - } - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "dev": true, - "requires": { - "resolve-from": "^5.0.0" - } - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, - "resolve.exports": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz", - "integrity": "sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==", - "dev": true - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", - "dev": true, - "requires": { - "xmlchars": "^2.2.0" - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - } - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "stack-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", - "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", - "dev": true, - "requires": { - "escape-string-regexp": "^2.0.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true - } - } - }, - "string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "@types/jest": { + "version": "27.4.1", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.4.1.tgz", + "integrity": "sha512-23iPJADSmicDVrWk+HT58LMJtzLAnB2AgIzplQuq/bSrGaxCrlvRFjGbXmamnnk/mAmCdLStiGqggu28ocUyiw==", "dev": true, "requires": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } + "jest-matcher-utils": "^27.0.0", + "pretty-format": "^27.0.0" } }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "safe-buffer": "~5.2.0" + "color-convert": "^2.0.1" } }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true - }, - "strip-json-comments": { + "color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "supports-hyperlinks": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz", - "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "requires": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" + "color-name": "~1.1.4" } }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", "dev": true }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "terminal-link": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" - } - }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - } - }, - "throat": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz", - "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==", + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", "dev": true, "requires": { - "rimraf": "^3.0.0" + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" } }, - "tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", "dev": true }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", - "dev": true, - "requires": { - "punycode": "^2.1.1" - } - }, - "ts-jest": { - "version": "27.1.4", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-27.1.4.tgz", - "integrity": "sha512-qjkZlVPWVctAezwsOD1OPzbZ+k7zA5z3oxII4dGdZo5ggX/PL7kvwTM0pXTr10fAtbiVpJaL3bWd502zAhpgSQ==", + "jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", "dev": true, "requires": { - "bs-logger": "0.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^27.0.0", - "json5": "2.x", - "lodash.memoize": "4.x", - "make-error": "1.x", - "semver": "7.x", - "yargs-parser": "20.x" + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" } }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", "dev": true, "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" }, "dependencies": { "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } } } }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, - "type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", "dev": true }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "requires": { - "is-typedarray": "^1.0.0" + "has-flag": "^4.0.0" } }, "typescript": { @@ -4447,303 +135,6 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", - "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "v8-to-istanbul": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", - "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - }, - "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - } - } - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "dev": true, - "requires": { - "browser-process-hrtime": "^1.0.0" - } - }, - "w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", - "dev": true, - "requires": { - "xml-name-validator": "^3.0.0" - } - }, - "walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "dev": true, - "requires": { - "makeerror": "1.0.12" - } - }, - "webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", - "dev": true - }, - "whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", - "dev": true, - "requires": { - "iconv-lite": "0.4.24" - } - }, - "whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true - }, - "whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", - "dev": true, - "requires": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "ws": { - "version": "7.5.7", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz", - "integrity": "sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==", - "dev": true - }, - "xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true - }, - "xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" } } } diff --git a/packages/hweb3-providers-http/package.json b/packages/hweb3-providers-http/package.json index 5c043dce684..ce4b74aa5a5 100644 --- a/packages/hweb3-providers-http/package.json +++ b/packages/hweb3-providers-http/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-providers-http", - "version": "1.0.0", + "version": "1.0.33", "description": "Module to handle Hweb3 transactions.", "repository": "https://github.com/ArianeLabs/hweb3.js/tree/1.x/packages/hweb3-providers-http", "license": "LGPL-3.0", @@ -17,8 +17,8 @@ "main": "lib/cjs/index.js", "module": "lib/index.js", "dependencies": { - "@arianelabs/hweb3-core-helpers": "1.0.0", - "@hashgraph/sdk": "^2.9.1" + "@arianelabs/hweb3-core-helpers": "1.0.33", + "@hashgraph/sdk": "2.11.0" }, "devDependencies": { "@types/jest": "^27.4.1", diff --git a/packages/hweb3-providers-http/src/index.ts b/packages/hweb3-providers-http/src/index.ts index e4773868f9b..96bf0654960 100644 --- a/packages/hweb3-providers-http/src/index.ts +++ b/packages/hweb3-providers-http/src/index.ts @@ -34,7 +34,9 @@ import { TransactionId, TransactionReceipt, PrivateKey, - ClientNetworkName, AccountCreateTransaction, + ClientNetworkName, + Executable, + ContractCreateFlow, } from '@hashgraph/sdk'; import { HttpProviderBase } from "@arianelabs/hweb3-core-helpers"; @@ -94,7 +96,7 @@ export class HttpProvider implements HttpProviderBase { * @returns {[key: string]: string | AccountId} */ getNetwork = function(): {[key: string]: string | AccountId} { - return this.client.network; + return this.client.ledgerId.toString(); }; /** @@ -171,11 +173,11 @@ export class HttpProvider implements HttpProviderBase { * Sign and send a request using the wallet. * * @method sendRequest - * @param {Transaction} tx - * @returns Promise + * @param {Executable | ContractCreateFlow} tx + * @returns Promise */ - sendRequest = async function(tx: Transaction): Promise { - if (!(tx instanceof Transaction)) { + sendRequest = async function(tx: Executable | ContractCreateFlow): Promise { + if (!(tx instanceof Executable) && !(tx instanceof ContractCreateFlow)) { throw new Error('Pass correct tx: Transaction argument') } return tx.execute(this.client); diff --git a/packages/hweb3-providers-http/types/index.d.ts b/packages/hweb3-providers-http/types/index.d.ts index 250fb8d5aac..004ce4356d6 100644 --- a/packages/hweb3-providers-http/types/index.d.ts +++ b/packages/hweb3-providers-http/types/index.d.ts @@ -21,9 +21,7 @@ */ import { HttpProviderBase } from '@arianelabs/hweb3-core-helpers'; -import { Client, Transaction } from '@hashgraph/sdk'; -import { ITransactionResponse, ITransactionReceipt } from "@hashgraph/proto"; -import {proto} from '@hashgraph/proto/lib/proto'; +import { Client, Transaction, TransactionResponse, TransactionReceipt } from '@hashgraph/sdk'; export class HttpProvider extends HttpProviderBase { client: Client; @@ -33,14 +31,14 @@ export class HttpProvider extends HttpProviderBase { send( tx: Transaction, - callback: (error: Error | null, result?: proto.ITransactionResponse) => void + callback: (error: Error | null, result?: TransactionResponse) => void ): void; getReceipt( - txReceipt: ITransactionResponse, + txReceipt: TransactionResponse, callback?: ( error: Error | null, - result: ITransactionReceipt | undefined + result: TransactionReceipt | undefined ) => void ): void; diff --git a/packages/hweb3-shh/package-lock.json b/packages/hweb3-shh/package-lock.json index db799785a2b..57ba5194fa9 100644 --- a/packages/hweb3-shh/package-lock.json +++ b/packages/hweb3-shh/package-lock.json @@ -1,1735 +1,20 @@ { "name": "@arianelabs/hweb3-shh", - "version": "1.0.0", + "version": "1.0.33", "lockfileVersion": 1, "requires": true, "dependencies": { - "@qiwi/npm-registry-client": { - "version": "8.9.1", - "resolved": "https://registry.npmjs.org/@qiwi/npm-registry-client/-/npm-registry-client-8.9.1.tgz", - "integrity": "sha512-rZF+mG+NfijR0SHphhTLHRr4aM4gtfdwoAMY6we2VGQam8vkN1cxGG1Lg/Llrj8Dd0Mu6VjdFQRyMMRZxtZR2A==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "graceful-fs": "^4.2.4", - "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0", - "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0", - "npmlog": "2 || ^3.1.0 || ^4.0.0", - "once": "^1.4.0", - "request": "^2.88.2", - "retry": "^0.12.0", - "safe-buffer": "^5.2.1", - "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7", - "slide": "^1.1.6", - "ssri": "^8.0.0" - } - }, "@types/node": { "version": "12.20.33", "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.33.tgz", "integrity": "sha512-5XmYX2GECSa+CxMYaFsr2mrql71Q4EvHjKS+ox/SiwSdaASMoBIWE6UmZqFO+VX1jIcsYLStI4FFoB6V7FeIYw==", "dev": true }, - "@types/parsimmon": { - "version": "1.10.6", - "resolved": "https://registry.npmjs.org/@types/parsimmon/-/parsimmon-1.10.6.tgz", - "integrity": "sha512-FwAQwMRbkhx0J6YELkwIpciVzCcgEqXEbIrIn3a2P5d3kGEHQ3wVhlN3YdVepYP+bZzCYO6OjmD4o9TGOZ40rA==", - "dev": true - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "charm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", - "integrity": "sha1-it02cVOm2aWBMxBSxAkJkdqZXjU=", - "dev": true, - "requires": { - "inherits": "^2.0.1" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" - }, - "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-package-arg": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", - "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parsimmon": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/parsimmon/-/parsimmon-1.18.1.tgz", - "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "optional": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tslint": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", - "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } } diff --git a/packages/hweb3-shh/package.json b/packages/hweb3-shh/package.json index 47d0fa792f7..b919b39b391 100644 --- a/packages/hweb3-shh/package.json +++ b/packages/hweb3-shh/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-shh", - "version": "1.0.0", + "version": "1.0.33", "description": "Hweb3 module to interact with the Whisper messaging protocol.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-shh", "license": "LGPL-3.0", @@ -21,9 +21,9 @@ "typescript": "^3.9.5" }, "dependencies": { - "@arianelabs/hweb3-core": "1.0.0", - "@arianelabs/hweb3-core-method": "1.0.0", - "@arianelabs/hweb3-core-subscriptions": "1.0.0", - "@arianelabs/hweb3-net": "1.0.0" + "@arianelabs/hweb3-core": "1.0.33", + "@arianelabs/hweb3-core-method": "1.0.33", + "@arianelabs/hweb3-core-subscriptions": "1.0.33", + "@arianelabs/hweb3-net": "1.0.33" } } diff --git a/packages/hweb3-shh/src/index.js b/packages/hweb3-shh/src/index.js index 4352937cfe8..3c936fbbc75 100644 --- a/packages/hweb3-shh/src/index.js +++ b/packages/hweb3-shh/src/index.js @@ -198,6 +198,6 @@ core.addProviders(Shh); -module.exports = Shh; +export default Shh; diff --git a/packages/hweb3-utils/package-lock.json b/packages/hweb3-utils/package-lock.json index be92baec448..9ff4e51b686 100644 --- a/packages/hweb3-utils/package-lock.json +++ b/packages/hweb3-utils/package-lock.json @@ -1,13 +1,65 @@ { "name": "@arianelabs/hweb3-utils", - "version": "1.0.0", + "version": "1.0.28", "lockfileVersion": 1, "requires": true, "dependencies": { + "@definitelytyped/header-parser": { + "version": "0.0.111", + "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", + "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", + "dev": true, + "requires": { + "@definitelytyped/typescript-versions": "^0.0.111", + "@types/parsimmon": "^1.10.1", + "parsimmon": "^1.13.0" + } + }, + "@definitelytyped/typescript-versions": { + "version": "0.0.111", + "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", + "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", + "dev": true + }, + "@definitelytyped/utils": { + "version": "0.0.111", + "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", + "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", + "dev": true, + "requires": { + "@definitelytyped/typescript-versions": "^0.0.111", + "@qiwi/npm-registry-client": "^8.9.1", + "@types/node": "^14.14.35", + "charm": "^1.0.2", + "fs-extra": "^8.1.0", + "fstream": "^1.0.12", + "tar": "^2.2.2", + "tar-stream": "^2.1.4" + }, + "dependencies": { + "@types/node": { + "version": "14.18.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", + "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", + "dev": true + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + } + } + }, "@grpc/grpc-js": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.9.tgz", - "integrity": "sha512-un+cXqErq5P4p3+WgYVNVh7FB51MSnaoRef7QWDcMXKR6FX2R6Z/bltcJMxNNdTUMC85lkOQcpnAAetFziPSng==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.3.tgz", + "integrity": "sha512-2B9WnKGowOHvcicX5WOVpA3KlLqm1qfPdd4oFeyzJCT6g8hk6aobBnD7QhqZc8/2e5GU0OGTV4QvvzMdDRAH+w==", "requires": { "@grpc/proto-loader": "^0.6.4", "@types/node": ">=12.12.47" @@ -26,40 +78,41 @@ } }, "@hashgraph/cryptography": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@hashgraph/cryptography/-/cryptography-1.1.1.tgz", - "integrity": "sha512-/0G9p9W/m9M/dQY1W7p3osrDP5YQndHvgwbrruoMr5uBD1ZKBVmJjG4+iqbOgA/J+/dLiwPEor6IEEE6gofv2w==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@hashgraph/cryptography/-/cryptography-1.1.2.tgz", + "integrity": "sha512-oSnDDs5foNq6Yni4kCwbA01NuVY2mewVr1jhkJG7yNDT6+xIBCztRWDeINb1JuShXe57Cuf88M1zmN5iFN7JgA==", "requires": { "bignumber.js": "^9.0.2", "crypto-js": "^4.1.1", "elliptic": "^6.5.4", - "expo-crypto": "^10.1.1", - "expo-random": "^12.1.1", + "expo-crypto": "^10.1.2", + "expo-random": "^12.1.2", "js-base64": "^3.7.2", "tweetnacl": "^1.0.3", "utf8": "^3.0.0" } }, "@hashgraph/proto": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@hashgraph/proto/-/proto-2.1.4.tgz", - "integrity": "sha512-gZP206s1SuWb4By8BIyAtRwXoO59ARfhShg4YIG+7Cp0rWXe0I1D+uQm4HRaPIWMU0S7xXUec/JPwnMefetTSg==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@hashgraph/proto/-/proto-2.1.5.tgz", + "integrity": "sha512-7iKO98T3iS+V+Ddy3Ew7+u8nzFT8MjRs6HczPE2scCjwKRhsodtYfGyOxVji+HN6WDqZmylr1VJwhNy5de/CRQ==", "requires": { "long": "^4.0.0", "protobufjs": "^6.11.2" } }, "@hashgraph/sdk": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/@hashgraph/sdk/-/sdk-2.10.1.tgz", - "integrity": "sha512-5vnh1S5gnwBSRlh6EEqYVOnBeTPiuzcz9A+Sb0nC/DfhjSkhlMo9gTiWCDJxDYktsoXrhrTNwETg0KRsHjh8zw==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@hashgraph/sdk/-/sdk-2.11.0.tgz", + "integrity": "sha512-VlzhxMiIfCypEuLh0Peg4KcRmbkKzus+PtLmflugA6bGabqn4XmOKRHteSS26sJj94plittsE2dgDLWkqjquFw==", "requires": { "@grpc/grpc-js": "^1.5.3", "@hashgraph/cryptography": "^1.1.0-beta.5", - "@hashgraph/proto": "2.1.4", + "@hashgraph/proto": "2.1.5", "bignumber.js": "^9.0.2", "crypto-js": "^4.1.1", "js-base64": "^3.7.2", + "js-logger": "^1.6.1", "long": "^4.0.0", "protobufjs": "^6.11.2", "utf8": "^3.0.0" @@ -153,9 +206,9 @@ "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" }, "@types/node": { - "version": "17.0.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", - "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==" + "version": "17.0.23", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz", + "integrity": "sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==" }, "@types/parsimmon": { "version": "1.10.6", @@ -310,6 +363,12 @@ "js-tokens": "^3.0.2" }, "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", @@ -329,17 +388,14 @@ "supports-color": "^2.0.0" } }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } } } }, @@ -396,9 +452,9 @@ } }, "blakejs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.1.1.tgz", - "integrity": "sha512-bLG6PHOCZJKNshTjGRBvET0vTciwQE6zFKOKKXPDJfwFBd4Ac0yBfPZqcGvGJap50l7ktvlpFqc2jGVaUgbJgg==" + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", + "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" }, "block-stream": { "version": "0.0.9", @@ -505,6 +561,52 @@ "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", "dev": true }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, "charm": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/charm/-/charm-1.0.2.tgz", @@ -531,31 +633,6 @@ "string-width": "^4.2.0", "strip-ansi": "^6.0.0", "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "code-point-at": { @@ -593,6 +670,12 @@ "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", "dev": true }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -619,10 +702,11 @@ "optional": true }, "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true, + "optional": true }, "create-hash": { "version": "1.2.0", @@ -688,75 +772,20 @@ "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", "dev": true }, - "dtslint": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", - "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", + "dts-critic": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", + "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", "dev": true, "requires": { "@definitelytyped/header-parser": "^0.0.111", - "@definitelytyped/typescript-versions": "^0.0.111", - "@definitelytyped/utils": "^0.0.111", - "dts-critic": "^3.3.11", - "fs-extra": "^6.0.1", - "json-stable-stringify": "^1.0.1", - "strip-json-comments": "^2.0.1", - "tslint": "5.14.0", - "yargs": "^15.1.0" + "command-exists": "^1.2.8", + "rimraf": "^3.0.2", + "semver": "^6.2.0", + "tmp": "^0.2.1", + "yargs": "^15.3.1" }, "dependencies": { - "@definitelytyped/header-parser": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.111.tgz", - "integrity": "sha512-5NqrHDnoH7fG4wTOlWF9xtgiq8hqYdWe/5Sr7bJmbIXf8KY+XfYtC5gHuOMPStU2tSHzn+6Q+cyrfBkIaFGM2Q==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@types/parsimmon": "^1.10.1", - "parsimmon": "^1.13.0" - } - }, - "@definitelytyped/typescript-versions": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.111.tgz", - "integrity": "sha512-kq3ExoHSySxe2nlHy/iXpecyypD8ZGj4Iz7b1zssUfONRrLxQsgs/F91DHLJFGXFjHUltmJgy02HabuQ/irvHw==", - "dev": true - }, - "@definitelytyped/utils": { - "version": "0.0.111", - "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.111.tgz", - "integrity": "sha512-zt9SP5K1FDhISNaXAJdlVVW8Z3YfHV90fP4ieywWcpG1Q1yVfKGBqN5kRgmzh7v1qukrSfOpPYgX3GWMf/E/dA==", - "dev": true, - "requires": { - "@definitelytyped/typescript-versions": "^0.0.111", - "@qiwi/npm-registry-client": "^8.9.1", - "@types/node": "^14.14.35", - "charm": "^1.0.2", - "fs-extra": "^8.1.0", - "fstream": "^1.0.12", - "tar": "^2.2.2", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "@types/node": { - "version": "14.18.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz", - "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==", - "dev": true - }, "cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -768,93 +797,95 @@ "wrap-ansi": "^6.2.0" } }, - "dts-critic": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/dts-critic/-/dts-critic-3.3.11.tgz", - "integrity": "sha512-HMO2f9AO7ge44YO8OK18f+cxm/IaE1CFuyNFbfJRCEbyazWj5X5wWDF6W4CGdo5Ax0ILYVfJ7L/rOwuUN1fzWw==", - "dev": true, - "requires": { - "@definitelytyped/header-parser": "^0.0.111", - "command-exists": "^1.2.8", - "rimraf": "^3.0.2", - "semver": "^6.2.0", - "tmp": "^0.2.1", - "yargs": "^15.3.1" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "glob": "^7.1.3" } }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, "requires": { - "p-locate": "^4.1.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" } }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } + "y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", "dev": true, "requires": { - "p-limit": "^2.2.0" + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" } }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + } + } + }, + "dtslint": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/dtslint/-/dtslint-3.7.0.tgz", + "integrity": "sha512-kVFV+zI2zwCUuwjLl2XVuIoSeLIqba6SmFlBKicwrlk1v0If+x6/cNm7UljSsqN5fJM/K2JJfd9NPPDVBXjjuA==", + "dev": true, + "requires": { + "@definitelytyped/header-parser": "^0.0.111", + "@definitelytyped/typescript-versions": "^0.0.111", + "@definitelytyped/utils": "^0.0.111", + "dts-critic": "^3.3.11", + "fs-extra": "^6.0.1", + "json-stable-stringify": "^1.0.1", + "strip-json-comments": "^2.0.1", + "tslint": "5.14.0", + "yargs": "^15.1.0" + }, + "dependencies": { + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", "dev": true, "requires": { - "ansi-regex": "^5.0.1" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" } }, "wrap-ansi": { @@ -1077,6 +1108,16 @@ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", @@ -1127,17 +1168,6 @@ "inherits": "~2.0.0", "mkdirp": ">=0.5 0", "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } } }, "function-bind": { @@ -1161,6 +1191,47 @@ "string-width": "^1.0.1", "strip-ansi": "^3.0.1", "wide-align": "^1.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "optional": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "optional": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } } }, "get-caller-file": { @@ -1178,9 +1249,9 @@ } }, "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "dev": true, "requires": { "fs.realpath": "^1.0.0", @@ -1192,9 +1263,9 @@ } }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, "har-schema": { @@ -1239,6 +1310,12 @@ } } }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -1326,14 +1403,9 @@ } }, "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "is-hex-prefixed": { "version": "1.0.0", @@ -1364,11 +1436,22 @@ "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz", "integrity": "sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==" }, + "js-logger": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/js-logger/-/js-logger-1.6.1.tgz", + "integrity": "sha512-yTgMCPXVjhmg28CuUH8CKjU+cIKL/G+zTu4Fn4lQxs8mRFH/03QTNvEFngcxfg/gRDiQAOoyCKmMTOm9ayOzXA==" + }, "js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -1449,6 +1532,15 @@ "readable-stream": "^3.6.0" } }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, "lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", @@ -1513,9 +1605,9 @@ } }, "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", "dev": true }, "minipass": { @@ -1528,12 +1620,12 @@ } }, "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, "requires": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" } }, "node-addon-api": { @@ -1542,9 +1634,9 @@ "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" }, "node-gyp-build": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.3.0.tgz", - "integrity": "sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==" + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.4.0.tgz", + "integrity": "sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ==" }, "normalize-package-data": { "version": "3.0.3", @@ -1627,6 +1719,24 @@ "wrappy": "1" } }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, "p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", @@ -1639,6 +1749,12 @@ "integrity": "sha512-u7p959wLfGAhJpSDJVYXoyMCXWYwHia78HhRBWqk7AIbxdmlrfdp5wX0l3xv/iTSH5HvhN9K7o26hwwpgS5Nmw==", "dev": true }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -1789,9 +1905,9 @@ "dev": true }, "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, "requires": { "glob": "^7.1.3" @@ -1848,12 +1964,20 @@ } }, "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.3.6", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.6.tgz", + "integrity": "sha512-HZWqcgwLsjaX1HBD31msI/rXktuIhS+lWvdE4kN9z+8IVT4Itc7vqU2WvYsyD6/sjYCt4dEKH/m1M3dwI9CC5w==", "dev": true, "requires": { - "lru-cache": "^6.0.0" + "lru-cache": "^7.4.0" + }, + "dependencies": { + "lru-cache": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.8.1.tgz", + "integrity": "sha512-E1v547OCgJvbvevfjgK9sNKIVXO96NnsTsFPBlg4ZxjhsJSODoH9lk8Bm0OxvHNm6Vm5Yqkl/1fErDxhYL8Skg==", + "dev": true + } } }, "set-blocking": { @@ -1962,15 +2086,13 @@ } }, "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "optional": true, + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" } }, "string_decoder": { @@ -1982,20 +2104,11 @@ } }, "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } + "ansi-regex": "^5.0.1" } }, "strip-hex-prefix": { @@ -2012,6 +2125,12 @@ "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "dev": true }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, "supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", @@ -2049,6 +2168,17 @@ "dev": true, "requires": { "rimraf": "^3.0.0" + }, + "dependencies": { + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, "tough-cookie": { @@ -2088,67 +2218,11 @@ "tsutils": "^2.29.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } } } }, @@ -2246,6 +2320,14 @@ "assert-plus": "^1.0.0", "core-util-is": "1.0.2", "extsprintf": "^1.2.0" + }, + "dependencies": { + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + } } }, "which-module": { @@ -2272,31 +2354,6 @@ "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "wrappy": { @@ -2328,31 +2385,6 @@ "string-width": "^4.2.0", "y18n": "^5.0.5", "yargs-parser": "^20.2.2" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "yargs-parser": { diff --git a/packages/hweb3-utils/package.json b/packages/hweb3-utils/package.json index f9316c29b8e..4a0d5ed855e 100644 --- a/packages/hweb3-utils/package.json +++ b/packages/hweb3-utils/package.json @@ -1,6 +1,6 @@ { "name": "@arianelabs/hweb3-utils", - "version": "1.0.0", + "version": "1.0.28", "description": "Collection of utility functions used in hweb3.js.", "repository": "https://github.com/Arianelabs/hweb3.js/tree/1.x/packages/hweb3-utils", "license": "LGPL-3.0", @@ -8,9 +8,15 @@ "node": ">=8.0.0" }, "types": "types/index.d.ts", - "main": "lib/index.js", + "scripts": { + "compile": "tsc -b tsconfig.json", + "compile:cjs": "tsc -b tsconfig.cjs.json", + "dtslint": "dtslint --localTs ../../node_modules/typescript/lib types" + }, + "main": "lib/cjs/index.js", + "module": "lib/index.js", "dependencies": { - "@hashgraph/sdk": "^2.9.1", + "@hashgraph/sdk": "2.11.0", "bn.js": "^4.11.9", "ethereum-bloom-filters": "^1.0.6", "ethereumjs-util": "^7.1.0", diff --git a/packages/hweb3-utils/src/index.js b/packages/hweb3-utils/src/index.js index a371ee3c6f5..cdec610a0f6 100644 --- a/packages/hweb3-utils/src/index.js +++ b/packages/hweb3-utils/src/index.js @@ -22,11 +22,12 @@ */ var { Hbar, HbarUnit } = require('@hashgraph/sdk'); var ethjsUnit = require('ethjs-unit'); -var utils = require('./utils.js'); -var soliditySha3 = require('./soliditySha3.js'); var randombytes = require('randombytes'); var BN = require('bn.js'); +import utils from './utils.js'; +import soliditySha3 from './soliditySha3.js'; + /** * Fires an error in an event emitter and callback and returns the eventemitter @@ -144,7 +145,6 @@ var _flattenTypes = function(includeTuple, puts) return types; }; -  /** * Returns a random hex string by the given bytes size @@ -269,11 +269,11 @@ var toTinybar = function (number, unit) { * * @method toChecksumAddress * @param {String} address - * @param {NodeClient} client + * @param {String} ledgerId * @return {String} */ -var toChecksumAddress = function (address, client) { - return utils.getChecksumAddress(address, client); +var toChecksumAddress = function (address, ledgerId) { + return utils.getChecksumAddress(address, ledgerId); }; @@ -333,7 +333,7 @@ var compareBlockNumbers = function(a, b) { } }; -module.exports = { +export default { _fireError: _fireError, _jsonInterfaceMethodToString: _jsonInterfaceMethodToString, _flattenTypes: _flattenTypes, diff --git a/packages/hweb3-utils/src/soliditySha3.js b/packages/hweb3-utils/src/soliditySha3.js index 3366180c446..99a1d205c10 100644 --- a/packages/hweb3-utils/src/soliditySha3.js +++ b/packages/hweb3-utils/src/soliditySha3.js @@ -267,7 +267,7 @@ var encodePacked = function () { }; -module.exports = { +export default { soliditySha3: soliditySha3, soliditySha3Raw: soliditySha3Raw, encodePacked: encodePacked diff --git a/packages/hweb3-utils/src/utils.js b/packages/hweb3-utils/src/utils.js index 75467495eaf..5e749a77089 100644 --- a/packages/hweb3-utils/src/utils.js +++ b/packages/hweb3-utils/src/utils.js @@ -84,7 +84,7 @@ var toTwosComplement = function (number) { */ var isAddress = function (address) { // check if it has the basic requirements of an address - return /^0\.0\.\d+$/.test(address); + return /^0\.0\.\d+$/.test(address) || /^0x[0-9A-Fa-f]{40}$/.test(address); }; @@ -518,9 +518,9 @@ var toNumber = function(value) { } /** - * Hedera checksum algorithm - * @param {string} ledgerId - * @param {string} addr + * Hedera checksum algorithm + * @param {string} ledgerId + * @param {string} addr * @returns string */ var _checksum = function (addr, ledgerId) { @@ -569,22 +569,22 @@ var _checksum = function (addr, ledgerId) { /** * return a hedera checksum address - * @param {string} address - * @param {NodeClient} client - * @returns + * @param {String} address + * @param {String} ledgerId + * @returns */ -var getChecksumAddress = function (address, client) { +var getChecksumAddress = function (address, ledgerId) { if (!isAddress(address)) { throw new Error('Address is incorrect'); } - if (!client._network.ledgerId._ledgerId) { + if (!ledgerId) { throw new Error('Incorrect client'); } - return _checksum(address, client._network.ledgerId._ledgerId); + return _checksum(address, ledgerId); } -module.exports = { +export default { BN: BN, isBN: isBN, isBigNumber: isBigNumber, diff --git a/packages/hweb3-utils/types/index.d.ts b/packages/hweb3-utils/types/index.d.ts index f1ccf8d5164..66ef0c6cd07 100644 --- a/packages/hweb3-utils/types/index.d.ts +++ b/packages/hweb3-utils/types/index.d.ts @@ -103,7 +103,7 @@ export function sha3Raw(value: string | BN): string; export function randomHex(bytesSize: number): string; export function utf8ToHex(string: string): string; export function stringToHex(string: string): string; -export function toChecksumAddress(address: string, client: NodeClient): string; +export function toChecksumAddress(address: string, client: string): string; export function toDecimal(hex: Hex): number; export function toHex(value: number | string | BN): string; export function toUtf8(string: string): string; diff --git a/packages/hweb3/dist/hweb3.min.js b/packages/hweb3/dist/hweb3.min.js index bff96889bdf..2d2b45783d6 100644 --- a/packages/hweb3/dist/hweb3.min.js +++ b/packages/hweb3/dist/hweb3.min.js @@ -1,27 +1,37 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.Web3=t():e.Web3=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=565)}([function(e,t,n){"use strict";e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";function r(e,t){for(var n=0;nr?1:n0?p.default._fromProtobufKey(d.Key.decode(t.alias)):void 0;return n instanceof h.default||(n=void 0),new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.accountNum?t.accountNum:0,n)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.AccountID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(f.fromSolidityAddress(t)))}}]),e}();t.default=v,y.default.accountIdConstructor=function(e,t,n){return new v(e,t,l.default.ZERO,n)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(76)),i=r(n(42)),u=r(n(11)),c=r(n(1)),s=r(n(2)),l=r(n(17)),f=m(n(148)),d=m(n(31)),p=r(n(37)),h=r(n(90)),y=r(n(103));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var v=function(){function e(t,n,r,o){(0,c.default)(this,e);var a=f.constructor(t,n,r);this.shard=a.shard,this.realm=a.realm,this.num=a.num,this.aliasKey=null!=o?o:null,this._checksum=null}return(0,s.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{alias:null!=this.aliasKey?d.Key.encode(this.aliasKey._toProtobufKey()).finish():null,accountNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toBytes",value:function(){return d.AccountID.encode(this._toProtobuf()).finish()}},{key:"toString",value:function(){var e=null!=this.aliasKey?this.aliasKey.toString():this.num.toString();return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(e)}},{key:"toStringWithChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");return f.toStringWithChecksum(this.toString(),e)}},{key:"equals",value:function(e){var t=!1;return null!=this.aliasKey&&null!=e.aliasKey?t=this.aliasKey.equals(e.aliasKey):null==this.aliasKey&&null==e.aliasKey&&(t=this.num.eq(e.num)),this.shard.eq(e.shard)&&this.realm.eq(e.realm)&&t}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){var t=this.shard.compare(e.shard);if(0!=t)return t;if(0!=(t=this.realm.compare(e.realm)))return t;if(null!=this.aliasKey&&null!=e.aliasKey){var n=this.aliasKey.toString(),r=e.aliasKey.toString();return n>r?1:n0?p.default._fromProtobufKey(d.Key.decode(t.alias)):void 0;return n instanceof h.default||(n=void 0),new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.accountNum?t.accountNum:0,n)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.AccountID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(f.fromSolidityAddress(t)))}}]),e}();t.default=v,y.default.accountIdConstructor=function(e,t,n){return new v(e,t,l.default.ZERO,n)}},function(e,t,n){"use strict";var r=n(579),o=n(580),a=n(306),i=n(581);e.exports=function(e,t){return r(e)||o(e,t)||a(e,t)||i()},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";(function(e){ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.Web3=t():e.Web3=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=704)}([function(e,t,n){"use strict";e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";function r(e,t){for(var n=0;n=65&&n<=70?n-55:n>=97&&n<=102?n-87:n-48&15}function s(e,t,n){var r=c(e,n);return n-1>=t&&(r|=c(e,n-1)<<4),r}function l(e,t,n,r){for(var o=0,a=Math.min(e.length,n),i=t;i=49?u-49+10:u>=17?u-17+10:u}return o}i.isBN=function(e){return e instanceof i||null!==e&&"object"===(0,t.default)(e)&&e.constructor.wordSize===i.wordSize&&Array.isArray(e.words)},i.max=function(e,t){return e.cmp(t)>0?e:t},i.min=function(e,t){return e.cmp(t)<0?e:t},i.prototype._init=function(e,n,r){if("number"==typeof e)return this._initNumber(e,n,r);if("object"===(0,t.default)(e))return this._initArray(e,n,r);"hex"===n&&(n=16),o(n===(0|n)&&n>=2&&n<=36);var a=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(a++,this.negative=1),a=0;r-=3)i=e[r]|e[r-1]<<8|e[r-2]<<16,this.words[a]|=i<>>26-u&67108863,(u+=24)>=26&&(u-=26,a++);else if("le"===n)for(r=0,a=0;r>>26-u&67108863,(u+=24)>=26&&(u-=26,a++);return this.strip()},i.prototype._parseHex=function(e,t,n){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r=t;r-=2)o=s(e,t,r)<=18?(a-=18,i+=1,this.words[i]|=o>>>26):a+=8;else for(r=(e.length-t)%2==0?t+1:t;r=18?(a-=18,i+=1,this.words[i]|=o>>>26):a+=8;this.strip()},i.prototype._parseBase=function(e,t,n){this.words=[0],this.length=1;for(var r=0,o=1;o<=67108863;o*=t)r++;r--,o=o/t|0;for(var a=e.length-n,i=a%r,u=Math.min(a,a-i)+n,c=0,s=n;s1&&0===this.words[this.length-1];)this.length--;return this._normSign()},i.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},i.prototype.inspect=function(){return(this.red?""};var f=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],d=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],p=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function h(e,t,n){n.negative=t.negative^e.negative;var r=e.length+t.length|0;n.length=r,r=r-1|0;var o=0|e.words[0],a=0|t.words[0],i=o*a,u=67108863&i,c=i/67108864|0;n.words[0]=u;for(var s=1;s>>26,f=67108863&c,d=Math.min(s,t.length-1),p=Math.max(0,s-e.length+1);p<=d;p++){var h=s-p|0;l+=(i=(o=0|e.words[h])*(a=0|t.words[p])+f)/67108864|0,f=67108863&i}n.words[s]=0|f,c=0|l}return 0!==c?n.words[s]=0|c:n.length--,n.strip()}i.prototype.toString=function(e,t){var n;if(t=0|t||1,16===(e=e||10)||"hex"===e){n="";for(var r=0,a=0,i=0;i>>24-r&16777215)||i!==this.length-1?f[6-c.length]+c+n:c+n,(r+=2)>=26&&(r-=26,i--)}for(0!==a&&(n=a.toString(16)+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(e===(0|e)&&e>=2&&e<=36){var s=d[e],l=p[e];n="";var h=this.clone();for(h.negative=0;!h.isZero();){var y=h.modn(l).toString(e);n=(h=h.idivn(l)).isZero()?y+n:f[s-y.length]+y+n}for(this.isZero()&&(n="0"+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}o(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&o(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(e,t){return o(void 0!==u),this.toArrayLike(u,e,t)},i.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},i.prototype.toArrayLike=function(e,t,n){var r=this.byteLength(),a=n||Math.max(1,r);o(r<=a,"byte array longer than desired length"),o(a>0,"Requested array length <= 0"),this.strip();var i,u,c="le"===t,s=new e(a),l=this.clone();if(c){for(u=0;!l.isZero();u++)i=l.andln(255),l.iushrn(8),s[u]=i;for(;u=4096&&(n+=13,t>>>=13),t>=64&&(n+=7,t>>>=7),t>=8&&(n+=4,t>>>=4),t>=2&&(n+=2,t>>>=2),n+t},i.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,n=0;return 0==(8191&t)&&(n+=13,t>>>=13),0==(127&t)&&(n+=7,t>>>=7),0==(15&t)&&(n+=4,t>>>=4),0==(3&t)&&(n+=2,t>>>=2),0==(1&t)&&n++,n},i.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},i.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},i.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var n=0;ne.length?this.clone().iand(e):e.clone().iand(this)},i.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},i.prototype.iuxor=function(e){var t,n;this.length>e.length?(t=this,n=e):(t=e,n=this);for(var r=0;re.length?this.clone().ixor(e):e.clone().ixor(this)},i.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},i.prototype.inotn=function(e){o("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),n=e%26;this._expand(t),n>0&&t--;for(var r=0;r0&&(this.words[r]=~this.words[r]&67108863>>26-n),this.strip()},i.prototype.notn=function(e){return this.clone().inotn(e)},i.prototype.setn=function(e,t){o("number"==typeof e&&e>=0);var n=e/26|0,r=e%26;return this._expand(n+1),this.words[n]=t?this.words[n]|1<e.length?(n=this,r=e):(n=e,r=this);for(var o=0,a=0;a>>26;for(;0!==o&&a>>26;if(this.length=n.length,0!==o)this.words[this.length]=o,this.length++;else if(n!==this)for(;ae.length?this.clone().iadd(e):e.clone().iadd(this)},i.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var n,r,o=this.cmp(e);if(0===o)return this.negative=0,this.length=1,this.words[0]=0,this;o>0?(n=this,r=e):(n=e,r=this);for(var a=0,i=0;i>26,this.words[i]=67108863&t;for(;0!==a&&i>26,this.words[i]=67108863&t;if(0===a&&i>>13,p=0|i[1],h=8191&p,y=p>>>13,m=0|i[2],b=8191&m,v=m>>>13,k=0|i[3],g=8191&k,_=k>>>13,w=0|i[4],I=8191&w,A=w>>>13,T=0|i[5],O=8191&T,P=T>>>13,E=0|i[6],S=8191&E,R=E>>>13,D=0|i[7],C=8191&D,N=D>>>13,B=0|i[8],M=8191&B,j=B>>>13,x=0|i[9],F=8191&x,U=x>>>13,L=0|u[0],G=8191&L,K=L>>>13,z=0|u[1],Q=8191&z,H=z>>>13,V=0|u[2],W=8191&V,q=V>>>13,Y=0|u[3],Z=8191&Y,J=Y>>>13,X=0|u[4],$=8191&X,ee=X>>>13,te=0|u[5],ne=8191&te,re=te>>>13,oe=0|u[6],ae=8191&oe,ie=oe>>>13,ue=0|u[7],ce=8191&ue,se=ue>>>13,le=0|u[8],fe=8191&le,de=le>>>13,pe=0|u[9],he=8191&pe,ye=pe>>>13;n.negative=e.negative^t.negative,n.length=19;var me=(s+(r=Math.imul(f,G))|0)+((8191&(o=(o=Math.imul(f,K))+Math.imul(d,G)|0))<<13)|0;s=((a=Math.imul(d,K))+(o>>>13)|0)+(me>>>26)|0,me&=67108863,r=Math.imul(h,G),o=(o=Math.imul(h,K))+Math.imul(y,G)|0,a=Math.imul(y,K);var be=(s+(r=r+Math.imul(f,Q)|0)|0)+((8191&(o=(o=o+Math.imul(f,H)|0)+Math.imul(d,Q)|0))<<13)|0;s=((a=a+Math.imul(d,H)|0)+(o>>>13)|0)+(be>>>26)|0,be&=67108863,r=Math.imul(b,G),o=(o=Math.imul(b,K))+Math.imul(v,G)|0,a=Math.imul(v,K),r=r+Math.imul(h,Q)|0,o=(o=o+Math.imul(h,H)|0)+Math.imul(y,Q)|0,a=a+Math.imul(y,H)|0;var ve=(s+(r=r+Math.imul(f,W)|0)|0)+((8191&(o=(o=o+Math.imul(f,q)|0)+Math.imul(d,W)|0))<<13)|0;s=((a=a+Math.imul(d,q)|0)+(o>>>13)|0)+(ve>>>26)|0,ve&=67108863,r=Math.imul(g,G),o=(o=Math.imul(g,K))+Math.imul(_,G)|0,a=Math.imul(_,K),r=r+Math.imul(b,Q)|0,o=(o=o+Math.imul(b,H)|0)+Math.imul(v,Q)|0,a=a+Math.imul(v,H)|0,r=r+Math.imul(h,W)|0,o=(o=o+Math.imul(h,q)|0)+Math.imul(y,W)|0,a=a+Math.imul(y,q)|0;var ke=(s+(r=r+Math.imul(f,Z)|0)|0)+((8191&(o=(o=o+Math.imul(f,J)|0)+Math.imul(d,Z)|0))<<13)|0;s=((a=a+Math.imul(d,J)|0)+(o>>>13)|0)+(ke>>>26)|0,ke&=67108863,r=Math.imul(I,G),o=(o=Math.imul(I,K))+Math.imul(A,G)|0,a=Math.imul(A,K),r=r+Math.imul(g,Q)|0,o=(o=o+Math.imul(g,H)|0)+Math.imul(_,Q)|0,a=a+Math.imul(_,H)|0,r=r+Math.imul(b,W)|0,o=(o=o+Math.imul(b,q)|0)+Math.imul(v,W)|0,a=a+Math.imul(v,q)|0,r=r+Math.imul(h,Z)|0,o=(o=o+Math.imul(h,J)|0)+Math.imul(y,Z)|0,a=a+Math.imul(y,J)|0;var ge=(s+(r=r+Math.imul(f,$)|0)|0)+((8191&(o=(o=o+Math.imul(f,ee)|0)+Math.imul(d,$)|0))<<13)|0;s=((a=a+Math.imul(d,ee)|0)+(o>>>13)|0)+(ge>>>26)|0,ge&=67108863,r=Math.imul(O,G),o=(o=Math.imul(O,K))+Math.imul(P,G)|0,a=Math.imul(P,K),r=r+Math.imul(I,Q)|0,o=(o=o+Math.imul(I,H)|0)+Math.imul(A,Q)|0,a=a+Math.imul(A,H)|0,r=r+Math.imul(g,W)|0,o=(o=o+Math.imul(g,q)|0)+Math.imul(_,W)|0,a=a+Math.imul(_,q)|0,r=r+Math.imul(b,Z)|0,o=(o=o+Math.imul(b,J)|0)+Math.imul(v,Z)|0,a=a+Math.imul(v,J)|0,r=r+Math.imul(h,$)|0,o=(o=o+Math.imul(h,ee)|0)+Math.imul(y,$)|0,a=a+Math.imul(y,ee)|0;var _e=(s+(r=r+Math.imul(f,ne)|0)|0)+((8191&(o=(o=o+Math.imul(f,re)|0)+Math.imul(d,ne)|0))<<13)|0;s=((a=a+Math.imul(d,re)|0)+(o>>>13)|0)+(_e>>>26)|0,_e&=67108863,r=Math.imul(S,G),o=(o=Math.imul(S,K))+Math.imul(R,G)|0,a=Math.imul(R,K),r=r+Math.imul(O,Q)|0,o=(o=o+Math.imul(O,H)|0)+Math.imul(P,Q)|0,a=a+Math.imul(P,H)|0,r=r+Math.imul(I,W)|0,o=(o=o+Math.imul(I,q)|0)+Math.imul(A,W)|0,a=a+Math.imul(A,q)|0,r=r+Math.imul(g,Z)|0,o=(o=o+Math.imul(g,J)|0)+Math.imul(_,Z)|0,a=a+Math.imul(_,J)|0,r=r+Math.imul(b,$)|0,o=(o=o+Math.imul(b,ee)|0)+Math.imul(v,$)|0,a=a+Math.imul(v,ee)|0,r=r+Math.imul(h,ne)|0,o=(o=o+Math.imul(h,re)|0)+Math.imul(y,ne)|0,a=a+Math.imul(y,re)|0;var we=(s+(r=r+Math.imul(f,ae)|0)|0)+((8191&(o=(o=o+Math.imul(f,ie)|0)+Math.imul(d,ae)|0))<<13)|0;s=((a=a+Math.imul(d,ie)|0)+(o>>>13)|0)+(we>>>26)|0,we&=67108863,r=Math.imul(C,G),o=(o=Math.imul(C,K))+Math.imul(N,G)|0,a=Math.imul(N,K),r=r+Math.imul(S,Q)|0,o=(o=o+Math.imul(S,H)|0)+Math.imul(R,Q)|0,a=a+Math.imul(R,H)|0,r=r+Math.imul(O,W)|0,o=(o=o+Math.imul(O,q)|0)+Math.imul(P,W)|0,a=a+Math.imul(P,q)|0,r=r+Math.imul(I,Z)|0,o=(o=o+Math.imul(I,J)|0)+Math.imul(A,Z)|0,a=a+Math.imul(A,J)|0,r=r+Math.imul(g,$)|0,o=(o=o+Math.imul(g,ee)|0)+Math.imul(_,$)|0,a=a+Math.imul(_,ee)|0,r=r+Math.imul(b,ne)|0,o=(o=o+Math.imul(b,re)|0)+Math.imul(v,ne)|0,a=a+Math.imul(v,re)|0,r=r+Math.imul(h,ae)|0,o=(o=o+Math.imul(h,ie)|0)+Math.imul(y,ae)|0,a=a+Math.imul(y,ie)|0;var Ie=(s+(r=r+Math.imul(f,ce)|0)|0)+((8191&(o=(o=o+Math.imul(f,se)|0)+Math.imul(d,ce)|0))<<13)|0;s=((a=a+Math.imul(d,se)|0)+(o>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,r=Math.imul(M,G),o=(o=Math.imul(M,K))+Math.imul(j,G)|0,a=Math.imul(j,K),r=r+Math.imul(C,Q)|0,o=(o=o+Math.imul(C,H)|0)+Math.imul(N,Q)|0,a=a+Math.imul(N,H)|0,r=r+Math.imul(S,W)|0,o=(o=o+Math.imul(S,q)|0)+Math.imul(R,W)|0,a=a+Math.imul(R,q)|0,r=r+Math.imul(O,Z)|0,o=(o=o+Math.imul(O,J)|0)+Math.imul(P,Z)|0,a=a+Math.imul(P,J)|0,r=r+Math.imul(I,$)|0,o=(o=o+Math.imul(I,ee)|0)+Math.imul(A,$)|0,a=a+Math.imul(A,ee)|0,r=r+Math.imul(g,ne)|0,o=(o=o+Math.imul(g,re)|0)+Math.imul(_,ne)|0,a=a+Math.imul(_,re)|0,r=r+Math.imul(b,ae)|0,o=(o=o+Math.imul(b,ie)|0)+Math.imul(v,ae)|0,a=a+Math.imul(v,ie)|0,r=r+Math.imul(h,ce)|0,o=(o=o+Math.imul(h,se)|0)+Math.imul(y,ce)|0,a=a+Math.imul(y,se)|0;var Ae=(s+(r=r+Math.imul(f,fe)|0)|0)+((8191&(o=(o=o+Math.imul(f,de)|0)+Math.imul(d,fe)|0))<<13)|0;s=((a=a+Math.imul(d,de)|0)+(o>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,r=Math.imul(F,G),o=(o=Math.imul(F,K))+Math.imul(U,G)|0,a=Math.imul(U,K),r=r+Math.imul(M,Q)|0,o=(o=o+Math.imul(M,H)|0)+Math.imul(j,Q)|0,a=a+Math.imul(j,H)|0,r=r+Math.imul(C,W)|0,o=(o=o+Math.imul(C,q)|0)+Math.imul(N,W)|0,a=a+Math.imul(N,q)|0,r=r+Math.imul(S,Z)|0,o=(o=o+Math.imul(S,J)|0)+Math.imul(R,Z)|0,a=a+Math.imul(R,J)|0,r=r+Math.imul(O,$)|0,o=(o=o+Math.imul(O,ee)|0)+Math.imul(P,$)|0,a=a+Math.imul(P,ee)|0,r=r+Math.imul(I,ne)|0,o=(o=o+Math.imul(I,re)|0)+Math.imul(A,ne)|0,a=a+Math.imul(A,re)|0,r=r+Math.imul(g,ae)|0,o=(o=o+Math.imul(g,ie)|0)+Math.imul(_,ae)|0,a=a+Math.imul(_,ie)|0,r=r+Math.imul(b,ce)|0,o=(o=o+Math.imul(b,se)|0)+Math.imul(v,ce)|0,a=a+Math.imul(v,se)|0,r=r+Math.imul(h,fe)|0,o=(o=o+Math.imul(h,de)|0)+Math.imul(y,fe)|0,a=a+Math.imul(y,de)|0;var Te=(s+(r=r+Math.imul(f,he)|0)|0)+((8191&(o=(o=o+Math.imul(f,ye)|0)+Math.imul(d,he)|0))<<13)|0;s=((a=a+Math.imul(d,ye)|0)+(o>>>13)|0)+(Te>>>26)|0,Te&=67108863,r=Math.imul(F,Q),o=(o=Math.imul(F,H))+Math.imul(U,Q)|0,a=Math.imul(U,H),r=r+Math.imul(M,W)|0,o=(o=o+Math.imul(M,q)|0)+Math.imul(j,W)|0,a=a+Math.imul(j,q)|0,r=r+Math.imul(C,Z)|0,o=(o=o+Math.imul(C,J)|0)+Math.imul(N,Z)|0,a=a+Math.imul(N,J)|0,r=r+Math.imul(S,$)|0,o=(o=o+Math.imul(S,ee)|0)+Math.imul(R,$)|0,a=a+Math.imul(R,ee)|0,r=r+Math.imul(O,ne)|0,o=(o=o+Math.imul(O,re)|0)+Math.imul(P,ne)|0,a=a+Math.imul(P,re)|0,r=r+Math.imul(I,ae)|0,o=(o=o+Math.imul(I,ie)|0)+Math.imul(A,ae)|0,a=a+Math.imul(A,ie)|0,r=r+Math.imul(g,ce)|0,o=(o=o+Math.imul(g,se)|0)+Math.imul(_,ce)|0,a=a+Math.imul(_,se)|0,r=r+Math.imul(b,fe)|0,o=(o=o+Math.imul(b,de)|0)+Math.imul(v,fe)|0,a=a+Math.imul(v,de)|0;var Oe=(s+(r=r+Math.imul(h,he)|0)|0)+((8191&(o=(o=o+Math.imul(h,ye)|0)+Math.imul(y,he)|0))<<13)|0;s=((a=a+Math.imul(y,ye)|0)+(o>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,r=Math.imul(F,W),o=(o=Math.imul(F,q))+Math.imul(U,W)|0,a=Math.imul(U,q),r=r+Math.imul(M,Z)|0,o=(o=o+Math.imul(M,J)|0)+Math.imul(j,Z)|0,a=a+Math.imul(j,J)|0,r=r+Math.imul(C,$)|0,o=(o=o+Math.imul(C,ee)|0)+Math.imul(N,$)|0,a=a+Math.imul(N,ee)|0,r=r+Math.imul(S,ne)|0,o=(o=o+Math.imul(S,re)|0)+Math.imul(R,ne)|0,a=a+Math.imul(R,re)|0,r=r+Math.imul(O,ae)|0,o=(o=o+Math.imul(O,ie)|0)+Math.imul(P,ae)|0,a=a+Math.imul(P,ie)|0,r=r+Math.imul(I,ce)|0,o=(o=o+Math.imul(I,se)|0)+Math.imul(A,ce)|0,a=a+Math.imul(A,se)|0,r=r+Math.imul(g,fe)|0,o=(o=o+Math.imul(g,de)|0)+Math.imul(_,fe)|0,a=a+Math.imul(_,de)|0;var Pe=(s+(r=r+Math.imul(b,he)|0)|0)+((8191&(o=(o=o+Math.imul(b,ye)|0)+Math.imul(v,he)|0))<<13)|0;s=((a=a+Math.imul(v,ye)|0)+(o>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,r=Math.imul(F,Z),o=(o=Math.imul(F,J))+Math.imul(U,Z)|0,a=Math.imul(U,J),r=r+Math.imul(M,$)|0,o=(o=o+Math.imul(M,ee)|0)+Math.imul(j,$)|0,a=a+Math.imul(j,ee)|0,r=r+Math.imul(C,ne)|0,o=(o=o+Math.imul(C,re)|0)+Math.imul(N,ne)|0,a=a+Math.imul(N,re)|0,r=r+Math.imul(S,ae)|0,o=(o=o+Math.imul(S,ie)|0)+Math.imul(R,ae)|0,a=a+Math.imul(R,ie)|0,r=r+Math.imul(O,ce)|0,o=(o=o+Math.imul(O,se)|0)+Math.imul(P,ce)|0,a=a+Math.imul(P,se)|0,r=r+Math.imul(I,fe)|0,o=(o=o+Math.imul(I,de)|0)+Math.imul(A,fe)|0,a=a+Math.imul(A,de)|0;var Ee=(s+(r=r+Math.imul(g,he)|0)|0)+((8191&(o=(o=o+Math.imul(g,ye)|0)+Math.imul(_,he)|0))<<13)|0;s=((a=a+Math.imul(_,ye)|0)+(o>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,r=Math.imul(F,$),o=(o=Math.imul(F,ee))+Math.imul(U,$)|0,a=Math.imul(U,ee),r=r+Math.imul(M,ne)|0,o=(o=o+Math.imul(M,re)|0)+Math.imul(j,ne)|0,a=a+Math.imul(j,re)|0,r=r+Math.imul(C,ae)|0,o=(o=o+Math.imul(C,ie)|0)+Math.imul(N,ae)|0,a=a+Math.imul(N,ie)|0,r=r+Math.imul(S,ce)|0,o=(o=o+Math.imul(S,se)|0)+Math.imul(R,ce)|0,a=a+Math.imul(R,se)|0,r=r+Math.imul(O,fe)|0,o=(o=o+Math.imul(O,de)|0)+Math.imul(P,fe)|0,a=a+Math.imul(P,de)|0;var Se=(s+(r=r+Math.imul(I,he)|0)|0)+((8191&(o=(o=o+Math.imul(I,ye)|0)+Math.imul(A,he)|0))<<13)|0;s=((a=a+Math.imul(A,ye)|0)+(o>>>13)|0)+(Se>>>26)|0,Se&=67108863,r=Math.imul(F,ne),o=(o=Math.imul(F,re))+Math.imul(U,ne)|0,a=Math.imul(U,re),r=r+Math.imul(M,ae)|0,o=(o=o+Math.imul(M,ie)|0)+Math.imul(j,ae)|0,a=a+Math.imul(j,ie)|0,r=r+Math.imul(C,ce)|0,o=(o=o+Math.imul(C,se)|0)+Math.imul(N,ce)|0,a=a+Math.imul(N,se)|0,r=r+Math.imul(S,fe)|0,o=(o=o+Math.imul(S,de)|0)+Math.imul(R,fe)|0,a=a+Math.imul(R,de)|0;var Re=(s+(r=r+Math.imul(O,he)|0)|0)+((8191&(o=(o=o+Math.imul(O,ye)|0)+Math.imul(P,he)|0))<<13)|0;s=((a=a+Math.imul(P,ye)|0)+(o>>>13)|0)+(Re>>>26)|0,Re&=67108863,r=Math.imul(F,ae),o=(o=Math.imul(F,ie))+Math.imul(U,ae)|0,a=Math.imul(U,ie),r=r+Math.imul(M,ce)|0,o=(o=o+Math.imul(M,se)|0)+Math.imul(j,ce)|0,a=a+Math.imul(j,se)|0,r=r+Math.imul(C,fe)|0,o=(o=o+Math.imul(C,de)|0)+Math.imul(N,fe)|0,a=a+Math.imul(N,de)|0;var De=(s+(r=r+Math.imul(S,he)|0)|0)+((8191&(o=(o=o+Math.imul(S,ye)|0)+Math.imul(R,he)|0))<<13)|0;s=((a=a+Math.imul(R,ye)|0)+(o>>>13)|0)+(De>>>26)|0,De&=67108863,r=Math.imul(F,ce),o=(o=Math.imul(F,se))+Math.imul(U,ce)|0,a=Math.imul(U,se),r=r+Math.imul(M,fe)|0,o=(o=o+Math.imul(M,de)|0)+Math.imul(j,fe)|0,a=a+Math.imul(j,de)|0;var Ce=(s+(r=r+Math.imul(C,he)|0)|0)+((8191&(o=(o=o+Math.imul(C,ye)|0)+Math.imul(N,he)|0))<<13)|0;s=((a=a+Math.imul(N,ye)|0)+(o>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,r=Math.imul(F,fe),o=(o=Math.imul(F,de))+Math.imul(U,fe)|0,a=Math.imul(U,de);var Ne=(s+(r=r+Math.imul(M,he)|0)|0)+((8191&(o=(o=o+Math.imul(M,ye)|0)+Math.imul(j,he)|0))<<13)|0;s=((a=a+Math.imul(j,ye)|0)+(o>>>13)|0)+(Ne>>>26)|0,Ne&=67108863;var Be=(s+(r=Math.imul(F,he))|0)+((8191&(o=(o=Math.imul(F,ye))+Math.imul(U,he)|0))<<13)|0;return s=((a=Math.imul(U,ye))+(o>>>13)|0)+(Be>>>26)|0,Be&=67108863,c[0]=me,c[1]=be,c[2]=ve,c[3]=ke,c[4]=ge,c[5]=_e,c[6]=we,c[7]=Ie,c[8]=Ae,c[9]=Te,c[10]=Oe,c[11]=Pe,c[12]=Ee,c[13]=Se,c[14]=Re,c[15]=De,c[16]=Ce,c[17]=Ne,c[18]=Be,0!==s&&(c[19]=s,n.length++),n};function m(e,t,n){return(new b).mulp(e,t,n)}function b(e,t){this.x=e,this.y=t}Math.imul||(y=h),i.prototype.mulTo=function(e,t){var n=this.length+e.length;return 10===this.length&&10===e.length?y(this,e,t):n<63?h(this,e,t):n<1024?function(e,t,n){n.negative=t.negative^e.negative,n.length=e.length+t.length;for(var r=0,o=0,a=0;a>>26)|0)>>>26,i&=67108863}n.words[a]=u,r=i,i=o}return 0!==r?n.words[a]=r:n.length--,n.strip()}(this,e,t):m(this,e,t)},b.prototype.makeRBT=function(e){for(var t=new Array(e),n=i.prototype._countBits(e)-1,r=0;r>=1;return r},b.prototype.permute=function(e,t,n,r,o,a){for(var i=0;i>>=1)o++;return 1<>>=13,n[2*i+1]=8191&a,a>>>=13;for(i=2*t;i>=26,t+=r/67108864|0,t+=a>>>26,this.words[n]=67108863&a}return 0!==t&&(this.words[n]=t,this.length++),this},i.prototype.muln=function(e){return this.clone().imuln(e)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),n=0;n>>o}return t}(e);if(0===t.length)return new i(1);for(var n=this,r=0;r=0);var t,n=e%26,r=(e-n)/26,a=67108863>>>26-n<<26-n;if(0!==n){var i=0;for(t=0;t>>26-n}i&&(this.words[t]=i,this.length++)}if(0!==r){for(t=this.length-1;t>=0;t--)this.words[t+r]=this.words[t];for(t=0;t=0),r=t?(t-t%26)/26:0;var a=e%26,i=Math.min((e-a)/26,this.length),u=67108863^67108863>>>a<i)for(this.length-=i,s=0;s=0&&(0!==l||s>=r);s--){var f=0|this.words[s];this.words[s]=l<<26-a|f>>>a,l=f&u}return c&&0!==l&&(c.words[c.length++]=l),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(e,t,n){return o(0===this.negative),this.iushrn(e,t,n)},i.prototype.shln=function(e){return this.clone().ishln(e)},i.prototype.ushln=function(e){return this.clone().iushln(e)},i.prototype.shrn=function(e){return this.clone().ishrn(e)},i.prototype.ushrn=function(e){return this.clone().iushrn(e)},i.prototype.testn=function(e){o("number"==typeof e&&e>=0);var t=e%26,n=(e-t)/26,r=1<=0);var t=e%26,n=(e-t)/26;if(o(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==t&&n++,this.length=Math.min(n,this.length),0!==t){var r=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},i.prototype.isubn=function(e){if(o("number"==typeof e),o(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[r+n]=67108863&a}for(;r>26,this.words[r+n]=67108863&a;if(0===u)return this.strip();for(o(-1===u),u=0,r=0;r>26,this.words[r]=67108863&a;return this.negative=1,this.strip()},i.prototype._wordDiv=function(e,t){var n=(this.length,e.length),r=this.clone(),o=e,a=0|o.words[o.length-1];0!==(n=26-this._countBits(a))&&(o=o.ushln(n),r.iushln(n),a=0|o.words[o.length-1]);var u,c=r.length-o.length;if("mod"!==t){(u=new i(null)).length=c+1,u.words=new Array(u.length);for(var s=0;s=0;f--){var d=67108864*(0|r.words[o.length+f])+(0|r.words[o.length+f-1]);for(d=Math.min(d/a|0,67108863),r._ishlnsubmul(o,d,f);0!==r.negative;)d--,r.negative=0,r._ishlnsubmul(o,1,f),r.isZero()||(r.negative^=1);u&&(u.words[f]=d)}return u&&u.strip(),r.strip(),"div"!==t&&0!==n&&r.iushrn(n),{div:u||null,mod:r}},i.prototype.divmod=function(e,t,n){return o(!e.isZero()),this.isZero()?{div:new i(0),mod:new i(0)}:0!==this.negative&&0===e.negative?(u=this.neg().divmod(e,t),"mod"!==t&&(r=u.div.neg()),"div"!==t&&(a=u.mod.neg(),n&&0!==a.negative&&a.iadd(e)),{div:r,mod:a}):0===this.negative&&0!==e.negative?(u=this.divmod(e.neg(),t),"mod"!==t&&(r=u.div.neg()),{div:r,mod:u.mod}):0!=(this.negative&e.negative)?(u=this.neg().divmod(e.neg(),t),"div"!==t&&(a=u.mod.neg(),n&&0!==a.negative&&a.isub(e)),{div:u.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new i(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new i(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new i(this.modn(e.words[0]))}:this._wordDiv(e,t);var r,a,u},i.prototype.div=function(e){return this.divmod(e,"div",!1).div},i.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},i.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},i.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var n=0!==t.div.negative?t.mod.isub(e):t.mod,r=e.ushrn(1),o=e.andln(1),a=n.cmp(r);return a<0||1===o&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},i.prototype.modn=function(e){o(e<=67108863);for(var t=(1<<26)%e,n=0,r=this.length-1;r>=0;r--)n=(t*n+(0|this.words[r]))%e;return n},i.prototype.idivn=function(e){o(e<=67108863);for(var t=0,n=this.length-1;n>=0;n--){var r=(0|this.words[n])+67108864*t;this.words[n]=r/e|0,t=r%e}return this.strip()},i.prototype.divn=function(e){return this.clone().idivn(e)},i.prototype.egcd=function(e){o(0===e.negative),o(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var r=new i(1),a=new i(0),u=new i(0),c=new i(1),s=0;t.isEven()&&n.isEven();)t.iushrn(1),n.iushrn(1),++s;for(var l=n.clone(),f=t.clone();!t.isZero();){for(var d=0,p=1;0==(t.words[0]&p)&&d<26;++d,p<<=1);if(d>0)for(t.iushrn(d);d-- >0;)(r.isOdd()||a.isOdd())&&(r.iadd(l),a.isub(f)),r.iushrn(1),a.iushrn(1);for(var h=0,y=1;0==(n.words[0]&y)&&h<26;++h,y<<=1);if(h>0)for(n.iushrn(h);h-- >0;)(u.isOdd()||c.isOdd())&&(u.iadd(l),c.isub(f)),u.iushrn(1),c.iushrn(1);t.cmp(n)>=0?(t.isub(n),r.isub(u),a.isub(c)):(n.isub(t),u.isub(r),c.isub(a))}return{a:u,b:c,gcd:n.iushln(s)}},i.prototype._invmp=function(e){o(0===e.negative),o(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var r,a=new i(1),u=new i(0),c=n.clone();t.cmpn(1)>0&&n.cmpn(1)>0;){for(var s=0,l=1;0==(t.words[0]&l)&&s<26;++s,l<<=1);if(s>0)for(t.iushrn(s);s-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var f=0,d=1;0==(n.words[0]&d)&&f<26;++f,d<<=1);if(f>0)for(n.iushrn(f);f-- >0;)u.isOdd()&&u.iadd(c),u.iushrn(1);t.cmp(n)>=0?(t.isub(n),a.isub(u)):(n.isub(t),u.isub(a))}return(r=0===t.cmpn(1)?a:u).cmpn(0)<0&&r.iadd(e),r},i.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),n=e.clone();t.negative=0,n.negative=0;for(var r=0;t.isEven()&&n.isEven();r++)t.iushrn(1),n.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;n.isEven();)n.iushrn(1);var o=t.cmp(n);if(o<0){var a=t;t=n,n=a}else if(0===o||0===n.cmpn(1))break;t.isub(n)}return n.iushln(r)},i.prototype.invm=function(e){return this.egcd(e).a.umod(e)},i.prototype.isEven=function(){return 0==(1&this.words[0])},i.prototype.isOdd=function(){return 1==(1&this.words[0])},i.prototype.andln=function(e){return this.words[0]&e},i.prototype.bincn=function(e){o("number"==typeof e);var t=e%26,n=(e-t)/26,r=1<>>26,u&=67108863,this.words[i]=u}return 0!==a&&(this.words[i]=a,this.length++),this},i.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},i.prototype.cmpn=function(e){var t,n=e<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)t=1;else{n&&(e=-e),o(e<=67108863,"Number is too big");var r=0|this.words[0];t=r===e?0:re.length)return 1;if(this.length=0;n--){var r=0|this.words[n],o=0|e.words[n];if(r!==o){ro&&(t=1);break}}return t},i.prototype.gtn=function(e){return 1===this.cmpn(e)},i.prototype.gt=function(e){return 1===this.cmp(e)},i.prototype.gten=function(e){return this.cmpn(e)>=0},i.prototype.gte=function(e){return this.cmp(e)>=0},i.prototype.ltn=function(e){return-1===this.cmpn(e)},i.prototype.lt=function(e){return-1===this.cmp(e)},i.prototype.lten=function(e){return this.cmpn(e)<=0},i.prototype.lte=function(e){return this.cmp(e)<=0},i.prototype.eqn=function(e){return 0===this.cmpn(e)},i.prototype.eq=function(e){return 0===this.cmp(e)},i.red=function(e){return new A(e)},i.prototype.toRed=function(e){return o(!this.red,"Already a number in reduction context"),o(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},i.prototype.fromRed=function(){return o(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(e){return this.red=e,this},i.prototype.forceRed=function(e){return o(!this.red,"Already a number in reduction context"),this._forceRed(e)},i.prototype.redAdd=function(e){return o(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},i.prototype.redIAdd=function(e){return o(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},i.prototype.redSub=function(e){return o(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},i.prototype.redISub=function(e){return o(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},i.prototype.redShl=function(e){return o(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},i.prototype.redMul=function(e){return o(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},i.prototype.redIMul=function(e){return o(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},i.prototype.redSqr=function(){return o(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return o(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return o(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return o(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return o(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(e){return o(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var v={k256:null,p224:null,p192:null,p25519:null};function k(e,t){this.name=e,this.p=new i(t,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function g(){k.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function _(){k.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){k.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function I(){k.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function A(e){if("string"==typeof e){var t=i._prime(e);this.m=t.p,this.prime=t}else o(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function T(e){A.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}k.prototype._tmp=function(){var e=new i(null);return e.words=new Array(Math.ceil(this.n/13)),e},k.prototype.ireduce=function(e){var t,n=e;do{this.split(n,this.tmp),t=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(t>this.n);var r=t0?n.isub(this.p):void 0!==n.strip?n.strip():n._strip(),n},k.prototype.split=function(e,t){e.iushrn(this.n,0,t)},k.prototype.imulK=function(e){return e.imul(this.k)},a(g,k),g.prototype.split=function(e,t){for(var n=Math.min(e.length,9),r=0;r>>22,o=a}o>>>=22,e.words[r-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},g.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,n=0;n>>=26,e.words[n]=o,t=r}return 0!==t&&(e.words[e.length++]=t),e},i._prime=function(e){if(v[e])return v[e];var t;if("k256"===e)t=new g;else if("p224"===e)t=new _;else if("p192"===e)t=new w;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new I}return v[e]=t,t},A.prototype._verify1=function(e){o(0===e.negative,"red works only with positives"),o(e.red,"red works only with red numbers")},A.prototype._verify2=function(e,t){o(0==(e.negative|t.negative),"red works only with positives"),o(e.red&&e.red===t.red,"red works only with red numbers")},A.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},A.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},A.prototype.add=function(e,t){this._verify2(e,t);var n=e.add(t);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},A.prototype.iadd=function(e,t){this._verify2(e,t);var n=e.iadd(t);return n.cmp(this.m)>=0&&n.isub(this.m),n},A.prototype.sub=function(e,t){this._verify2(e,t);var n=e.sub(t);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},A.prototype.isub=function(e,t){this._verify2(e,t);var n=e.isub(t);return n.cmpn(0)<0&&n.iadd(this.m),n},A.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},A.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},A.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},A.prototype.isqr=function(e){return this.imul(e,e.clone())},A.prototype.sqr=function(e){return this.mul(e,e)},A.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(o(t%2==1),3===t){var n=this.m.add(new i(1)).iushrn(2);return this.pow(e,n)}for(var r=this.m.subn(1),a=0;!r.isZero()&&0===r.andln(1);)a++,r.iushrn(1);o(!r.isZero());var u=new i(1).toRed(this),c=u.redNeg(),s=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new i(2*l*l).toRed(this);0!==this.pow(l,s).cmp(c);)l.redIAdd(c);for(var f=this.pow(l,r),d=this.pow(e,r.addn(1).iushrn(1)),p=this.pow(e,r),h=a;0!==p.cmp(u);){for(var y=p,m=0;0!==y.cmp(u);m++)y=y.redSqr();o(m=0;r--){for(var s=t.words[r],l=c-1;l>=0;l--){var f=s>>l&1;o!==n[0]&&(o=this.sqr(o)),0!==f||0!==a?(a<<=1,a|=f,(4===++u||0===r&&0===l)&&(o=this.mul(o,n[a]),u=0,a=0)):u=0}c=26}return o},A.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},A.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},i.mont=function(e){return new T(e)},a(T,A),T.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},T.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},T.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var n=e.imul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),o=n.isub(r).iushrn(this.shift),a=o;return o.cmp(this.m)>=0?a=o.isub(this.m):o.cmpn(0)<0&&(a=o.iadd(this.m)),a._forceRed(this)},T.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new i(0)._forceRed(this);var n=e.mul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),o=n.isub(r).iushrn(this.shift),a=o;return o.cmp(this.m)>=0?a=o.isub(this.m):o.cmpn(0)<0&&(a=o.iadd(this.m)),a._forceRed(this)},T.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e)}).call(this,n(227)(e))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(71)),i=r(n(41)),u=r(n(9)),c=r(n(1)),s=r(n(2)),l=r(n(20)),f=b(n(168)),d=b(n(36)),p=r(n(43)),h=r(n(106)),y=r(n(116));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var v=function(){function e(t,n,r,o){(0,c.default)(this,e);var a=f.constructor(t,n,r);this.shard=a.shard,this.realm=a.realm,this.num=a.num,this.aliasKey=null!=o?o:null,this._checksum=null}return(0,s.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{alias:null!=this.aliasKey?d.Key.encode(this.aliasKey._toProtobufKey()).finish():null,accountNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toBytes",value:function(){return d.AccountID.encode(this._toProtobuf()).finish()}},{key:"toString",value:function(){var e=null!=this.aliasKey?this.aliasKey.toString():this.num.toString();return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(e)}},{key:"toStringWithChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");return f.toStringWithChecksum(this.toString(),e)}},{key:"equals",value:function(e){var t=!1;return null!=this.aliasKey&&null!=e.aliasKey?t=this.aliasKey.equals(e.aliasKey):null==this.aliasKey&&null==e.aliasKey&&(t=this.num.eq(e.num)),this.shard.eq(e.shard)&&this.realm.eq(e.realm)&&t}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){var t=this.shard.compare(e.shard);if(0!=t)return t;if(0!=(t=this.realm.compare(e.realm)))return t;if(null!=this.aliasKey&&null!=e.aliasKey){var n=this.aliasKey.toString(),r=e.aliasKey.toString();return n>r?1:n0?p.default._fromProtobufKey(d.Key.decode(t.alias)):void 0;return n instanceof h.default||(n=void 0),new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.accountNum?t.accountNum:0,n)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.AccountID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(f.fromSolidityAddress(t)))}}]),e}();t.default=v,y.default.accountIdConstructor=function(e,t,n){return new v(e,t,l.default.ZERO,n)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(71)),i=r(n(41)),u=r(n(9)),c=r(n(1)),s=r(n(2)),l=r(n(21)),f=b(n(179)),d=b(n(37)),p=r(n(45)),h=r(n(110)),y=r(n(123));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var v=function(){function e(t,n,r,o){(0,c.default)(this,e);var a=f.constructor(t,n,r);this.shard=a.shard,this.realm=a.realm,this.num=a.num,this.aliasKey=null!=o?o:null,this._checksum=null}return(0,s.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{alias:null!=this.aliasKey?d.Key.encode(this.aliasKey._toProtobufKey()).finish():null,accountNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toBytes",value:function(){return d.AccountID.encode(this._toProtobuf()).finish()}},{key:"toString",value:function(){var e=null!=this.aliasKey?this.aliasKey.toString():this.num.toString();return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(e)}},{key:"toStringWithChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");return f.toStringWithChecksum(this.toString(),e)}},{key:"equals",value:function(e){var t=!1;return null!=this.aliasKey&&null!=e.aliasKey?t=this.aliasKey.equals(e.aliasKey):null==this.aliasKey&&null==e.aliasKey&&(t=this.num.eq(e.num)),this.shard.eq(e.shard)&&this.realm.eq(e.realm)&&t}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){var t=this.shard.compare(e.shard);if(0!=t)return t;if(0!=(t=this.realm.compare(e.realm)))return t;if(null!=this.aliasKey&&null!=e.aliasKey){var n=this.aliasKey.toString(),r=e.aliasKey.toString();return n>r?1:n0?p.default._fromProtobufKey(d.Key.decode(t.alias)):void 0;return n instanceof h.default||(n=void 0),new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.accountNum?t.accountNum:0,n)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.AccountID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(f.fromSolidityAddress(t)))}}]),e}();t.default=v,y.default.accountIdConstructor=function(e,t,n){return new v(e,t,l.default.ZERO,n)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(71)),i=r(n(41)),u=r(n(9)),c=r(n(1)),s=r(n(2)),l=r(n(18)),f=b(n(188)),d=b(n(38)),p=r(n(47)),h=r(n(127)),y=r(n(126));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var v=function(){function e(t,n,r,o){(0,c.default)(this,e);var a=f.constructor(t,n,r);this.shard=a.shard,this.realm=a.realm,this.num=a.num,this.aliasKey=null!=o?o:null,this._checksum=null}return(0,s.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{alias:null!=this.aliasKey?d.Key.encode(this.aliasKey._toProtobufKey()).finish():null,accountNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toBytes",value:function(){return d.AccountID.encode(this._toProtobuf()).finish()}},{key:"toString",value:function(){var e=null!=this.aliasKey?this.aliasKey.toString():this.num.toString();return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(e)}},{key:"toStringWithChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");return f.toStringWithChecksum(this.toString(),e)}},{key:"equals",value:function(e){var t=!1;return null!=this.aliasKey&&null!=e.aliasKey?t=this.aliasKey.equals(e.aliasKey):null==this.aliasKey&&null==e.aliasKey&&(t=this.num.eq(e.num)),this.shard.eq(e.shard)&&this.realm.eq(e.realm)&&t}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){var t=this.shard.compare(e.shard);if(0!=t)return t;if(0!=(t=this.realm.compare(e.realm)))return t;if(null!=this.aliasKey&&null!=e.aliasKey){var n=this.aliasKey.toString(),r=e.aliasKey.toString();return n>r?1:n0?p.default._fromProtobufKey(d.Key.decode(t.alias)):void 0;return n instanceof h.default||(n=void 0),new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.accountNum?t.accountNum:0,n)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.AccountID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(f.fromSolidityAddress(t)))}}]),e}();t.default=v,y.default.accountIdConstructor=function(e,t,n){return new v(e,t,l.default.ZERO,n)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(71)),i=r(n(41)),u=r(n(9)),c=r(n(1)),s=r(n(2)),l=r(n(19)),f=b(n(192)),d=b(n(39)),p=r(n(49)),h=r(n(132)),y=r(n(131));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var v=function(){function e(t,n,r,o){(0,c.default)(this,e);var a=f.constructor(t,n,r);this.shard=a.shard,this.realm=a.realm,this.num=a.num,this.aliasKey=null!=o?o:null,this._checksum=null}return(0,s.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{alias:null!=this.aliasKey?d.Key.encode(this.aliasKey._toProtobufKey()).finish():null,accountNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toBytes",value:function(){return d.AccountID.encode(this._toProtobuf()).finish()}},{key:"toString",value:function(){var e=null!=this.aliasKey?this.aliasKey.toString():this.num.toString();return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(e)}},{key:"toStringWithChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");return f.toStringWithChecksum(this.toString(),e)}},{key:"equals",value:function(e){var t=!1;return null!=this.aliasKey&&null!=e.aliasKey?t=this.aliasKey.equals(e.aliasKey):null==this.aliasKey&&null==e.aliasKey&&(t=this.num.eq(e.num)),this.shard.eq(e.shard)&&this.realm.eq(e.realm)&&t}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){var t=this.shard.compare(e.shard);if(0!=t)return t;if(0!=(t=this.realm.compare(e.realm)))return t;if(null!=this.aliasKey&&null!=e.aliasKey){var n=this.aliasKey.toString(),r=e.aliasKey.toString();return n>r?1:n0?p.default._fromProtobufKey(d.Key.decode(t.alias)):void 0;return n instanceof h.default||(n=void 0),new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.accountNum?t.accountNum:0,n)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.AccountID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(f.fromSolidityAddress(t)))}}]),e}();t.default=v,y.default.accountIdConstructor=function(e,t,n){return new v(e,t,l.default.ZERO,n)}},function(e,t,n){"use strict";(function(e){ /*! * The buffer module from node.js, for the browser. * * @author Feross Aboukhadijeh * @license MIT */ -var r=n(732),o=n(733),a=n(364);function i(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function u(e,t){if(i()=i())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i().toString(16)+" bytes");return 0|e}function h(e,t){if(c.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return L(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return K(e).length;default:if(r)return L(e).length;t=(""+t).toLowerCase(),r=!0}}function y(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return S(this,t,n);case"utf8":case"utf-8":return O(this,t,n);case"ascii":return E(this,t,n);case"latin1":case"binary":return P(this,t,n);case"base64":return T(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return R(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function b(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function m(e,t,n,r,o){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof t&&(t=c.from(t,r)),c.isBuffer(t))return 0===t.length?-1:v(e,t,n,r,o);if("number"==typeof t)return t&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):v(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function v(e,t,n,r,o){var a,i=1,u=e.length,c=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;i=2,u/=2,c/=2,n/=2}function s(e,t){return 1===i?e[t]:e.readUInt16BE(t*i)}if(o){var l=-1;for(a=n;au&&(n=u-c),a=n;a>=0;a--){for(var f=!0,d=0;do&&(r=o):r=o;var a=t.length;if(a%2!=0)throw new TypeError("Invalid hex string");r>a/2&&(r=a/2);for(var i=0;i>8,o=n%256,a.push(o),a.push(r);return a}(t,e.length-n),e,n,r)}function T(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function O(e,t,n){n=Math.min(e.length,n);for(var r=[],o=t;o239?4:s>223?3:s>191?2:1;if(o+f<=n)switch(f){case 1:s<128&&(l=s);break;case 2:128==(192&(a=e[o+1]))&&(c=(31&s)<<6|63&a)>127&&(l=c);break;case 3:a=e[o+1],i=e[o+2],128==(192&a)&&128==(192&i)&&(c=(15&s)<<12|(63&a)<<6|63&i)>2047&&(c<55296||c>57343)&&(l=c);break;case 4:a=e[o+1],i=e[o+2],u=e[o+3],128==(192&a)&&128==(192&i)&&128==(192&u)&&(c=(15&s)<<18|(63&a)<<12|(63&i)<<6|63&u)>65535&&c<1114112&&(l=c)}null===l?(l=65533,f=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),o+=f}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},c.prototype.compare=function(e,t,n,r,o){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),t<0||n>e.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&t>=n)return 0;if(r>=o)return-1;if(t>=n)return 1;if(this===e)return 0;for(var a=(o>>>=0)-(r>>>=0),i=(n>>>=0)-(t>>>=0),u=Math.min(a,i),s=this.slice(r,o),l=e.slice(t,n),f=0;fo)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return g(this,e,t,n);case"utf8":case"utf-8":return k(this,e,t,n);case"ascii":return _(this,e,t,n);case"latin1":case"binary":return w(this,e,t,n);case"base64":return I(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return A(this,e,t,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function E(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;or)&&(n=r);for(var o="",a=t;an)throw new RangeError("Trying to access beyond buffer length")}function C(e,t,n,r,o,a){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function N(e,t,n,r){t<0&&(t=65535+t+1);for(var o=0,a=Math.min(e.length-n,2);o>>8*(r?o:1-o)}function B(e,t,n,r){t<0&&(t=4294967295+t+1);for(var o=0,a=Math.min(e.length-n,4);o>>8*(r?o:3-o)&255}function M(e,t,n,r,o,a){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function j(e,t,n,r,a){return a||M(e,0,n,4),o.write(e,t,n,r,23,4),n+4}function x(e,t,n,r,a){return a||M(e,0,n,8),o.write(e,t,n,r,52,8),n+8}c.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(o*=256);)r+=this[e+--t]*o;return r},c.prototype.readUInt8=function(e,t){return t||D(e,1,this.length),this[e]},c.prototype.readUInt16LE=function(e,t){return t||D(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUInt16BE=function(e,t){return t||D(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUInt32LE=function(e,t){return t||D(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUInt32BE=function(e,t){return t||D(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||D(e,t,this.length);for(var r=this[e],o=1,a=0;++a=(o*=128)&&(r-=Math.pow(2,8*t)),r},c.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||D(e,t,this.length);for(var r=t,o=1,a=this[e+--r];r>0&&(o*=256);)a+=this[e+--r]*o;return a>=(o*=128)&&(a-=Math.pow(2,8*t)),a},c.prototype.readInt8=function(e,t){return t||D(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){t||D(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt16BE=function(e,t){t||D(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt32LE=function(e,t){return t||D(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return t||D(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return t||D(e,4,this.length),o.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return t||D(e,4,this.length),o.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return t||D(e,8,this.length),o.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return t||D(e,8,this.length),o.read(this,e,!1,52,8)},c.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||C(this,e,t,n,Math.pow(2,8*n)-1,0);var o=1,a=0;for(this[t]=255&e;++a=0&&(a*=256);)this[t+o]=e/a&255;return t+n},c.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,1,255,0),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},c.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},c.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},c.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):B(this,e,t,!0),t+4},c.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):B(this,e,t,!1),t+4},c.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);C(this,e,t,n,o-1,-o)}var a=0,i=1,u=0;for(this[t]=255&e;++a>0)-u&255;return t+n},c.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);C(this,e,t,n,o-1,-o)}var a=n-1,i=1,u=0;for(this[t+a]=255&e;--a>=0&&(i*=256);)e<0&&0===u&&0!==this[t+a+1]&&(u=1),this[t+a]=(e/i>>0)-u&255;return t+n},c.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,1,127,-128),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},c.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},c.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):B(this,e,t,!0),t+4},c.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):B(this,e,t,!1),t+4},c.prototype.writeFloatLE=function(e,t,n){return j(this,e,t,!0,n)},c.prototype.writeFloatBE=function(e,t,n){return j(this,e,t,!1,n)},c.prototype.writeDoubleLE=function(e,t,n){return x(this,e,t,!0,n)},c.prototype.writeDoubleBE=function(e,t,n){return x(this,e,t,!1,n)},c.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else if(a<1e3||!c.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(a=t;a55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(i+1===r){(t-=3)>-1&&a.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&a.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function K(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(F,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function G(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}}).call(this,n(33))},function(e,t,n){"use strict";(function(e){var t=n(0)(n(3));!function(e,r){function o(e,t){if(!e)throw new Error(t||"Assertion failed")}function a(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}function i(e,t,n){if(i.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(n=t,t=10),this._init(e||0,t||10,n||"be"))}var u;"object"===(0,t.default)(e)?e.exports=i:(void 0).BN=i,i.BN=i,i.wordSize=26;try{u="undefined"!=typeof window&&void 0!==window.Buffer?window.Buffer:n(593).Buffer}catch(e){}function c(e,t){var n=e.charCodeAt(t);return n>=65&&n<=70?n-55:n>=97&&n<=102?n-87:n-48&15}function s(e,t,n){var r=c(e,n);return n-1>=t&&(r|=c(e,n-1)<<4),r}function l(e,t,n,r){for(var o=0,a=Math.min(e.length,n),i=t;i=49?u-49+10:u>=17?u-17+10:u}return o}i.isBN=function(e){return e instanceof i||null!==e&&"object"===(0,t.default)(e)&&e.constructor.wordSize===i.wordSize&&Array.isArray(e.words)},i.max=function(e,t){return e.cmp(t)>0?e:t},i.min=function(e,t){return e.cmp(t)<0?e:t},i.prototype._init=function(e,n,r){if("number"==typeof e)return this._initNumber(e,n,r);if("object"===(0,t.default)(e))return this._initArray(e,n,r);"hex"===n&&(n=16),o(n===(0|n)&&n>=2&&n<=36);var a=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(a++,this.negative=1),a=0;r-=3)i=e[r]|e[r-1]<<8|e[r-2]<<16,this.words[a]|=i<>>26-u&67108863,(u+=24)>=26&&(u-=26,a++);else if("le"===n)for(r=0,a=0;r>>26-u&67108863,(u+=24)>=26&&(u-=26,a++);return this.strip()},i.prototype._parseHex=function(e,t,n){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r=t;r-=2)o=s(e,t,r)<=18?(a-=18,i+=1,this.words[i]|=o>>>26):a+=8;else for(r=(e.length-t)%2==0?t+1:t;r=18?(a-=18,i+=1,this.words[i]|=o>>>26):a+=8;this.strip()},i.prototype._parseBase=function(e,t,n){this.words=[0],this.length=1;for(var r=0,o=1;o<=67108863;o*=t)r++;r--,o=o/t|0;for(var a=e.length-n,i=a%r,u=Math.min(a,a-i)+n,c=0,s=n;s1&&0===this.words[this.length-1];)this.length--;return this._normSign()},i.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},i.prototype.inspect=function(){return(this.red?""};var f=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],d=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],p=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function h(e,t,n){n.negative=t.negative^e.negative;var r=e.length+t.length|0;n.length=r,r=r-1|0;var o=0|e.words[0],a=0|t.words[0],i=o*a,u=67108863&i,c=i/67108864|0;n.words[0]=u;for(var s=1;s>>26,f=67108863&c,d=Math.min(s,t.length-1),p=Math.max(0,s-e.length+1);p<=d;p++){var h=s-p|0;l+=(i=(o=0|e.words[h])*(a=0|t.words[p])+f)/67108864|0,f=67108863&i}n.words[s]=0|f,c=0|l}return 0!==c?n.words[s]=0|c:n.length--,n.strip()}i.prototype.toString=function(e,t){var n;if(t=0|t||1,16===(e=e||10)||"hex"===e){n="";for(var r=0,a=0,i=0;i>>24-r&16777215)||i!==this.length-1?f[6-c.length]+c+n:c+n,(r+=2)>=26&&(r-=26,i--)}for(0!==a&&(n=a.toString(16)+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(e===(0|e)&&e>=2&&e<=36){var s=d[e],l=p[e];n="";var h=this.clone();for(h.negative=0;!h.isZero();){var y=h.modn(l).toString(e);n=(h=h.idivn(l)).isZero()?y+n:f[s-y.length]+y+n}for(this.isZero()&&(n="0"+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}o(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&o(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(e,t){return o(void 0!==u),this.toArrayLike(u,e,t)},i.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},i.prototype.toArrayLike=function(e,t,n){var r=this.byteLength(),a=n||Math.max(1,r);o(r<=a,"byte array longer than desired length"),o(a>0,"Requested array length <= 0"),this.strip();var i,u,c="le"===t,s=new e(a),l=this.clone();if(c){for(u=0;!l.isZero();u++)i=l.andln(255),l.iushrn(8),s[u]=i;for(;u=4096&&(n+=13,t>>>=13),t>=64&&(n+=7,t>>>=7),t>=8&&(n+=4,t>>>=4),t>=2&&(n+=2,t>>>=2),n+t},i.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,n=0;return 0==(8191&t)&&(n+=13,t>>>=13),0==(127&t)&&(n+=7,t>>>=7),0==(15&t)&&(n+=4,t>>>=4),0==(3&t)&&(n+=2,t>>>=2),0==(1&t)&&n++,n},i.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},i.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},i.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var n=0;ne.length?this.clone().iand(e):e.clone().iand(this)},i.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},i.prototype.iuxor=function(e){var t,n;this.length>e.length?(t=this,n=e):(t=e,n=this);for(var r=0;re.length?this.clone().ixor(e):e.clone().ixor(this)},i.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},i.prototype.inotn=function(e){o("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),n=e%26;this._expand(t),n>0&&t--;for(var r=0;r0&&(this.words[r]=~this.words[r]&67108863>>26-n),this.strip()},i.prototype.notn=function(e){return this.clone().inotn(e)},i.prototype.setn=function(e,t){o("number"==typeof e&&e>=0);var n=e/26|0,r=e%26;return this._expand(n+1),this.words[n]=t?this.words[n]|1<e.length?(n=this,r=e):(n=e,r=this);for(var o=0,a=0;a>>26;for(;0!==o&&a>>26;if(this.length=n.length,0!==o)this.words[this.length]=o,this.length++;else if(n!==this)for(;ae.length?this.clone().iadd(e):e.clone().iadd(this)},i.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var n,r,o=this.cmp(e);if(0===o)return this.negative=0,this.length=1,this.words[0]=0,this;o>0?(n=this,r=e):(n=e,r=this);for(var a=0,i=0;i>26,this.words[i]=67108863&t;for(;0!==a&&i>26,this.words[i]=67108863&t;if(0===a&&i>>13,p=0|i[1],h=8191&p,y=p>>>13,b=0|i[2],m=8191&b,v=b>>>13,g=0|i[3],k=8191&g,_=g>>>13,w=0|i[4],I=8191&w,A=w>>>13,T=0|i[5],O=8191&T,E=T>>>13,P=0|i[6],S=8191&P,R=P>>>13,D=0|i[7],C=8191&D,N=D>>>13,B=0|i[8],M=8191&B,j=B>>>13,x=0|i[9],F=8191&x,U=x>>>13,L=0|u[0],K=8191&L,G=L>>>13,z=0|u[1],Q=8191&z,H=z>>>13,V=0|u[2],q=8191&V,W=V>>>13,Y=0|u[3],Z=8191&Y,J=Y>>>13,X=0|u[4],$=8191&X,ee=X>>>13,te=0|u[5],ne=8191&te,re=te>>>13,oe=0|u[6],ae=8191&oe,ie=oe>>>13,ue=0|u[7],ce=8191&ue,se=ue>>>13,le=0|u[8],fe=8191&le,de=le>>>13,pe=0|u[9],he=8191&pe,ye=pe>>>13;n.negative=e.negative^t.negative,n.length=19;var be=(s+(r=Math.imul(f,K))|0)+((8191&(o=(o=Math.imul(f,G))+Math.imul(d,K)|0))<<13)|0;s=((a=Math.imul(d,G))+(o>>>13)|0)+(be>>>26)|0,be&=67108863,r=Math.imul(h,K),o=(o=Math.imul(h,G))+Math.imul(y,K)|0,a=Math.imul(y,G);var me=(s+(r=r+Math.imul(f,Q)|0)|0)+((8191&(o=(o=o+Math.imul(f,H)|0)+Math.imul(d,Q)|0))<<13)|0;s=((a=a+Math.imul(d,H)|0)+(o>>>13)|0)+(me>>>26)|0,me&=67108863,r=Math.imul(m,K),o=(o=Math.imul(m,G))+Math.imul(v,K)|0,a=Math.imul(v,G),r=r+Math.imul(h,Q)|0,o=(o=o+Math.imul(h,H)|0)+Math.imul(y,Q)|0,a=a+Math.imul(y,H)|0;var ve=(s+(r=r+Math.imul(f,q)|0)|0)+((8191&(o=(o=o+Math.imul(f,W)|0)+Math.imul(d,q)|0))<<13)|0;s=((a=a+Math.imul(d,W)|0)+(o>>>13)|0)+(ve>>>26)|0,ve&=67108863,r=Math.imul(k,K),o=(o=Math.imul(k,G))+Math.imul(_,K)|0,a=Math.imul(_,G),r=r+Math.imul(m,Q)|0,o=(o=o+Math.imul(m,H)|0)+Math.imul(v,Q)|0,a=a+Math.imul(v,H)|0,r=r+Math.imul(h,q)|0,o=(o=o+Math.imul(h,W)|0)+Math.imul(y,q)|0,a=a+Math.imul(y,W)|0;var ge=(s+(r=r+Math.imul(f,Z)|0)|0)+((8191&(o=(o=o+Math.imul(f,J)|0)+Math.imul(d,Z)|0))<<13)|0;s=((a=a+Math.imul(d,J)|0)+(o>>>13)|0)+(ge>>>26)|0,ge&=67108863,r=Math.imul(I,K),o=(o=Math.imul(I,G))+Math.imul(A,K)|0,a=Math.imul(A,G),r=r+Math.imul(k,Q)|0,o=(o=o+Math.imul(k,H)|0)+Math.imul(_,Q)|0,a=a+Math.imul(_,H)|0,r=r+Math.imul(m,q)|0,o=(o=o+Math.imul(m,W)|0)+Math.imul(v,q)|0,a=a+Math.imul(v,W)|0,r=r+Math.imul(h,Z)|0,o=(o=o+Math.imul(h,J)|0)+Math.imul(y,Z)|0,a=a+Math.imul(y,J)|0;var ke=(s+(r=r+Math.imul(f,$)|0)|0)+((8191&(o=(o=o+Math.imul(f,ee)|0)+Math.imul(d,$)|0))<<13)|0;s=((a=a+Math.imul(d,ee)|0)+(o>>>13)|0)+(ke>>>26)|0,ke&=67108863,r=Math.imul(O,K),o=(o=Math.imul(O,G))+Math.imul(E,K)|0,a=Math.imul(E,G),r=r+Math.imul(I,Q)|0,o=(o=o+Math.imul(I,H)|0)+Math.imul(A,Q)|0,a=a+Math.imul(A,H)|0,r=r+Math.imul(k,q)|0,o=(o=o+Math.imul(k,W)|0)+Math.imul(_,q)|0,a=a+Math.imul(_,W)|0,r=r+Math.imul(m,Z)|0,o=(o=o+Math.imul(m,J)|0)+Math.imul(v,Z)|0,a=a+Math.imul(v,J)|0,r=r+Math.imul(h,$)|0,o=(o=o+Math.imul(h,ee)|0)+Math.imul(y,$)|0,a=a+Math.imul(y,ee)|0;var _e=(s+(r=r+Math.imul(f,ne)|0)|0)+((8191&(o=(o=o+Math.imul(f,re)|0)+Math.imul(d,ne)|0))<<13)|0;s=((a=a+Math.imul(d,re)|0)+(o>>>13)|0)+(_e>>>26)|0,_e&=67108863,r=Math.imul(S,K),o=(o=Math.imul(S,G))+Math.imul(R,K)|0,a=Math.imul(R,G),r=r+Math.imul(O,Q)|0,o=(o=o+Math.imul(O,H)|0)+Math.imul(E,Q)|0,a=a+Math.imul(E,H)|0,r=r+Math.imul(I,q)|0,o=(o=o+Math.imul(I,W)|0)+Math.imul(A,q)|0,a=a+Math.imul(A,W)|0,r=r+Math.imul(k,Z)|0,o=(o=o+Math.imul(k,J)|0)+Math.imul(_,Z)|0,a=a+Math.imul(_,J)|0,r=r+Math.imul(m,$)|0,o=(o=o+Math.imul(m,ee)|0)+Math.imul(v,$)|0,a=a+Math.imul(v,ee)|0,r=r+Math.imul(h,ne)|0,o=(o=o+Math.imul(h,re)|0)+Math.imul(y,ne)|0,a=a+Math.imul(y,re)|0;var we=(s+(r=r+Math.imul(f,ae)|0)|0)+((8191&(o=(o=o+Math.imul(f,ie)|0)+Math.imul(d,ae)|0))<<13)|0;s=((a=a+Math.imul(d,ie)|0)+(o>>>13)|0)+(we>>>26)|0,we&=67108863,r=Math.imul(C,K),o=(o=Math.imul(C,G))+Math.imul(N,K)|0,a=Math.imul(N,G),r=r+Math.imul(S,Q)|0,o=(o=o+Math.imul(S,H)|0)+Math.imul(R,Q)|0,a=a+Math.imul(R,H)|0,r=r+Math.imul(O,q)|0,o=(o=o+Math.imul(O,W)|0)+Math.imul(E,q)|0,a=a+Math.imul(E,W)|0,r=r+Math.imul(I,Z)|0,o=(o=o+Math.imul(I,J)|0)+Math.imul(A,Z)|0,a=a+Math.imul(A,J)|0,r=r+Math.imul(k,$)|0,o=(o=o+Math.imul(k,ee)|0)+Math.imul(_,$)|0,a=a+Math.imul(_,ee)|0,r=r+Math.imul(m,ne)|0,o=(o=o+Math.imul(m,re)|0)+Math.imul(v,ne)|0,a=a+Math.imul(v,re)|0,r=r+Math.imul(h,ae)|0,o=(o=o+Math.imul(h,ie)|0)+Math.imul(y,ae)|0,a=a+Math.imul(y,ie)|0;var Ie=(s+(r=r+Math.imul(f,ce)|0)|0)+((8191&(o=(o=o+Math.imul(f,se)|0)+Math.imul(d,ce)|0))<<13)|0;s=((a=a+Math.imul(d,se)|0)+(o>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,r=Math.imul(M,K),o=(o=Math.imul(M,G))+Math.imul(j,K)|0,a=Math.imul(j,G),r=r+Math.imul(C,Q)|0,o=(o=o+Math.imul(C,H)|0)+Math.imul(N,Q)|0,a=a+Math.imul(N,H)|0,r=r+Math.imul(S,q)|0,o=(o=o+Math.imul(S,W)|0)+Math.imul(R,q)|0,a=a+Math.imul(R,W)|0,r=r+Math.imul(O,Z)|0,o=(o=o+Math.imul(O,J)|0)+Math.imul(E,Z)|0,a=a+Math.imul(E,J)|0,r=r+Math.imul(I,$)|0,o=(o=o+Math.imul(I,ee)|0)+Math.imul(A,$)|0,a=a+Math.imul(A,ee)|0,r=r+Math.imul(k,ne)|0,o=(o=o+Math.imul(k,re)|0)+Math.imul(_,ne)|0,a=a+Math.imul(_,re)|0,r=r+Math.imul(m,ae)|0,o=(o=o+Math.imul(m,ie)|0)+Math.imul(v,ae)|0,a=a+Math.imul(v,ie)|0,r=r+Math.imul(h,ce)|0,o=(o=o+Math.imul(h,se)|0)+Math.imul(y,ce)|0,a=a+Math.imul(y,se)|0;var Ae=(s+(r=r+Math.imul(f,fe)|0)|0)+((8191&(o=(o=o+Math.imul(f,de)|0)+Math.imul(d,fe)|0))<<13)|0;s=((a=a+Math.imul(d,de)|0)+(o>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,r=Math.imul(F,K),o=(o=Math.imul(F,G))+Math.imul(U,K)|0,a=Math.imul(U,G),r=r+Math.imul(M,Q)|0,o=(o=o+Math.imul(M,H)|0)+Math.imul(j,Q)|0,a=a+Math.imul(j,H)|0,r=r+Math.imul(C,q)|0,o=(o=o+Math.imul(C,W)|0)+Math.imul(N,q)|0,a=a+Math.imul(N,W)|0,r=r+Math.imul(S,Z)|0,o=(o=o+Math.imul(S,J)|0)+Math.imul(R,Z)|0,a=a+Math.imul(R,J)|0,r=r+Math.imul(O,$)|0,o=(o=o+Math.imul(O,ee)|0)+Math.imul(E,$)|0,a=a+Math.imul(E,ee)|0,r=r+Math.imul(I,ne)|0,o=(o=o+Math.imul(I,re)|0)+Math.imul(A,ne)|0,a=a+Math.imul(A,re)|0,r=r+Math.imul(k,ae)|0,o=(o=o+Math.imul(k,ie)|0)+Math.imul(_,ae)|0,a=a+Math.imul(_,ie)|0,r=r+Math.imul(m,ce)|0,o=(o=o+Math.imul(m,se)|0)+Math.imul(v,ce)|0,a=a+Math.imul(v,se)|0,r=r+Math.imul(h,fe)|0,o=(o=o+Math.imul(h,de)|0)+Math.imul(y,fe)|0,a=a+Math.imul(y,de)|0;var Te=(s+(r=r+Math.imul(f,he)|0)|0)+((8191&(o=(o=o+Math.imul(f,ye)|0)+Math.imul(d,he)|0))<<13)|0;s=((a=a+Math.imul(d,ye)|0)+(o>>>13)|0)+(Te>>>26)|0,Te&=67108863,r=Math.imul(F,Q),o=(o=Math.imul(F,H))+Math.imul(U,Q)|0,a=Math.imul(U,H),r=r+Math.imul(M,q)|0,o=(o=o+Math.imul(M,W)|0)+Math.imul(j,q)|0,a=a+Math.imul(j,W)|0,r=r+Math.imul(C,Z)|0,o=(o=o+Math.imul(C,J)|0)+Math.imul(N,Z)|0,a=a+Math.imul(N,J)|0,r=r+Math.imul(S,$)|0,o=(o=o+Math.imul(S,ee)|0)+Math.imul(R,$)|0,a=a+Math.imul(R,ee)|0,r=r+Math.imul(O,ne)|0,o=(o=o+Math.imul(O,re)|0)+Math.imul(E,ne)|0,a=a+Math.imul(E,re)|0,r=r+Math.imul(I,ae)|0,o=(o=o+Math.imul(I,ie)|0)+Math.imul(A,ae)|0,a=a+Math.imul(A,ie)|0,r=r+Math.imul(k,ce)|0,o=(o=o+Math.imul(k,se)|0)+Math.imul(_,ce)|0,a=a+Math.imul(_,se)|0,r=r+Math.imul(m,fe)|0,o=(o=o+Math.imul(m,de)|0)+Math.imul(v,fe)|0,a=a+Math.imul(v,de)|0;var Oe=(s+(r=r+Math.imul(h,he)|0)|0)+((8191&(o=(o=o+Math.imul(h,ye)|0)+Math.imul(y,he)|0))<<13)|0;s=((a=a+Math.imul(y,ye)|0)+(o>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,r=Math.imul(F,q),o=(o=Math.imul(F,W))+Math.imul(U,q)|0,a=Math.imul(U,W),r=r+Math.imul(M,Z)|0,o=(o=o+Math.imul(M,J)|0)+Math.imul(j,Z)|0,a=a+Math.imul(j,J)|0,r=r+Math.imul(C,$)|0,o=(o=o+Math.imul(C,ee)|0)+Math.imul(N,$)|0,a=a+Math.imul(N,ee)|0,r=r+Math.imul(S,ne)|0,o=(o=o+Math.imul(S,re)|0)+Math.imul(R,ne)|0,a=a+Math.imul(R,re)|0,r=r+Math.imul(O,ae)|0,o=(o=o+Math.imul(O,ie)|0)+Math.imul(E,ae)|0,a=a+Math.imul(E,ie)|0,r=r+Math.imul(I,ce)|0,o=(o=o+Math.imul(I,se)|0)+Math.imul(A,ce)|0,a=a+Math.imul(A,se)|0,r=r+Math.imul(k,fe)|0,o=(o=o+Math.imul(k,de)|0)+Math.imul(_,fe)|0,a=a+Math.imul(_,de)|0;var Ee=(s+(r=r+Math.imul(m,he)|0)|0)+((8191&(o=(o=o+Math.imul(m,ye)|0)+Math.imul(v,he)|0))<<13)|0;s=((a=a+Math.imul(v,ye)|0)+(o>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,r=Math.imul(F,Z),o=(o=Math.imul(F,J))+Math.imul(U,Z)|0,a=Math.imul(U,J),r=r+Math.imul(M,$)|0,o=(o=o+Math.imul(M,ee)|0)+Math.imul(j,$)|0,a=a+Math.imul(j,ee)|0,r=r+Math.imul(C,ne)|0,o=(o=o+Math.imul(C,re)|0)+Math.imul(N,ne)|0,a=a+Math.imul(N,re)|0,r=r+Math.imul(S,ae)|0,o=(o=o+Math.imul(S,ie)|0)+Math.imul(R,ae)|0,a=a+Math.imul(R,ie)|0,r=r+Math.imul(O,ce)|0,o=(o=o+Math.imul(O,se)|0)+Math.imul(E,ce)|0,a=a+Math.imul(E,se)|0,r=r+Math.imul(I,fe)|0,o=(o=o+Math.imul(I,de)|0)+Math.imul(A,fe)|0,a=a+Math.imul(A,de)|0;var Pe=(s+(r=r+Math.imul(k,he)|0)|0)+((8191&(o=(o=o+Math.imul(k,ye)|0)+Math.imul(_,he)|0))<<13)|0;s=((a=a+Math.imul(_,ye)|0)+(o>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,r=Math.imul(F,$),o=(o=Math.imul(F,ee))+Math.imul(U,$)|0,a=Math.imul(U,ee),r=r+Math.imul(M,ne)|0,o=(o=o+Math.imul(M,re)|0)+Math.imul(j,ne)|0,a=a+Math.imul(j,re)|0,r=r+Math.imul(C,ae)|0,o=(o=o+Math.imul(C,ie)|0)+Math.imul(N,ae)|0,a=a+Math.imul(N,ie)|0,r=r+Math.imul(S,ce)|0,o=(o=o+Math.imul(S,se)|0)+Math.imul(R,ce)|0,a=a+Math.imul(R,se)|0,r=r+Math.imul(O,fe)|0,o=(o=o+Math.imul(O,de)|0)+Math.imul(E,fe)|0,a=a+Math.imul(E,de)|0;var Se=(s+(r=r+Math.imul(I,he)|0)|0)+((8191&(o=(o=o+Math.imul(I,ye)|0)+Math.imul(A,he)|0))<<13)|0;s=((a=a+Math.imul(A,ye)|0)+(o>>>13)|0)+(Se>>>26)|0,Se&=67108863,r=Math.imul(F,ne),o=(o=Math.imul(F,re))+Math.imul(U,ne)|0,a=Math.imul(U,re),r=r+Math.imul(M,ae)|0,o=(o=o+Math.imul(M,ie)|0)+Math.imul(j,ae)|0,a=a+Math.imul(j,ie)|0,r=r+Math.imul(C,ce)|0,o=(o=o+Math.imul(C,se)|0)+Math.imul(N,ce)|0,a=a+Math.imul(N,se)|0,r=r+Math.imul(S,fe)|0,o=(o=o+Math.imul(S,de)|0)+Math.imul(R,fe)|0,a=a+Math.imul(R,de)|0;var Re=(s+(r=r+Math.imul(O,he)|0)|0)+((8191&(o=(o=o+Math.imul(O,ye)|0)+Math.imul(E,he)|0))<<13)|0;s=((a=a+Math.imul(E,ye)|0)+(o>>>13)|0)+(Re>>>26)|0,Re&=67108863,r=Math.imul(F,ae),o=(o=Math.imul(F,ie))+Math.imul(U,ae)|0,a=Math.imul(U,ie),r=r+Math.imul(M,ce)|0,o=(o=o+Math.imul(M,se)|0)+Math.imul(j,ce)|0,a=a+Math.imul(j,se)|0,r=r+Math.imul(C,fe)|0,o=(o=o+Math.imul(C,de)|0)+Math.imul(N,fe)|0,a=a+Math.imul(N,de)|0;var De=(s+(r=r+Math.imul(S,he)|0)|0)+((8191&(o=(o=o+Math.imul(S,ye)|0)+Math.imul(R,he)|0))<<13)|0;s=((a=a+Math.imul(R,ye)|0)+(o>>>13)|0)+(De>>>26)|0,De&=67108863,r=Math.imul(F,ce),o=(o=Math.imul(F,se))+Math.imul(U,ce)|0,a=Math.imul(U,se),r=r+Math.imul(M,fe)|0,o=(o=o+Math.imul(M,de)|0)+Math.imul(j,fe)|0,a=a+Math.imul(j,de)|0;var Ce=(s+(r=r+Math.imul(C,he)|0)|0)+((8191&(o=(o=o+Math.imul(C,ye)|0)+Math.imul(N,he)|0))<<13)|0;s=((a=a+Math.imul(N,ye)|0)+(o>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,r=Math.imul(F,fe),o=(o=Math.imul(F,de))+Math.imul(U,fe)|0,a=Math.imul(U,de);var Ne=(s+(r=r+Math.imul(M,he)|0)|0)+((8191&(o=(o=o+Math.imul(M,ye)|0)+Math.imul(j,he)|0))<<13)|0;s=((a=a+Math.imul(j,ye)|0)+(o>>>13)|0)+(Ne>>>26)|0,Ne&=67108863;var Be=(s+(r=Math.imul(F,he))|0)+((8191&(o=(o=Math.imul(F,ye))+Math.imul(U,he)|0))<<13)|0;return s=((a=Math.imul(U,ye))+(o>>>13)|0)+(Be>>>26)|0,Be&=67108863,c[0]=be,c[1]=me,c[2]=ve,c[3]=ge,c[4]=ke,c[5]=_e,c[6]=we,c[7]=Ie,c[8]=Ae,c[9]=Te,c[10]=Oe,c[11]=Ee,c[12]=Pe,c[13]=Se,c[14]=Re,c[15]=De,c[16]=Ce,c[17]=Ne,c[18]=Be,0!==s&&(c[19]=s,n.length++),n};function b(e,t,n){return(new m).mulp(e,t,n)}function m(e,t){this.x=e,this.y=t}Math.imul||(y=h),i.prototype.mulTo=function(e,t){var n=this.length+e.length;return 10===this.length&&10===e.length?y(this,e,t):n<63?h(this,e,t):n<1024?function(e,t,n){n.negative=t.negative^e.negative,n.length=e.length+t.length;for(var r=0,o=0,a=0;a>>26)|0)>>>26,i&=67108863}n.words[a]=u,r=i,i=o}return 0!==r?n.words[a]=r:n.length--,n.strip()}(this,e,t):b(this,e,t)},m.prototype.makeRBT=function(e){for(var t=new Array(e),n=i.prototype._countBits(e)-1,r=0;r>=1;return r},m.prototype.permute=function(e,t,n,r,o,a){for(var i=0;i>>=1)o++;return 1<>>=13,n[2*i+1]=8191&a,a>>>=13;for(i=2*t;i>=26,t+=r/67108864|0,t+=a>>>26,this.words[n]=67108863&a}return 0!==t&&(this.words[n]=t,this.length++),this},i.prototype.muln=function(e){return this.clone().imuln(e)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),n=0;n>>o}return t}(e);if(0===t.length)return new i(1);for(var n=this,r=0;r=0);var t,n=e%26,r=(e-n)/26,a=67108863>>>26-n<<26-n;if(0!==n){var i=0;for(t=0;t>>26-n}i&&(this.words[t]=i,this.length++)}if(0!==r){for(t=this.length-1;t>=0;t--)this.words[t+r]=this.words[t];for(t=0;t=0),r=t?(t-t%26)/26:0;var a=e%26,i=Math.min((e-a)/26,this.length),u=67108863^67108863>>>a<i)for(this.length-=i,s=0;s=0&&(0!==l||s>=r);s--){var f=0|this.words[s];this.words[s]=l<<26-a|f>>>a,l=f&u}return c&&0!==l&&(c.words[c.length++]=l),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(e,t,n){return o(0===this.negative),this.iushrn(e,t,n)},i.prototype.shln=function(e){return this.clone().ishln(e)},i.prototype.ushln=function(e){return this.clone().iushln(e)},i.prototype.shrn=function(e){return this.clone().ishrn(e)},i.prototype.ushrn=function(e){return this.clone().iushrn(e)},i.prototype.testn=function(e){o("number"==typeof e&&e>=0);var t=e%26,n=(e-t)/26,r=1<=0);var t=e%26,n=(e-t)/26;if(o(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==t&&n++,this.length=Math.min(n,this.length),0!==t){var r=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},i.prototype.isubn=function(e){if(o("number"==typeof e),o(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[r+n]=67108863&a}for(;r>26,this.words[r+n]=67108863&a;if(0===u)return this.strip();for(o(-1===u),u=0,r=0;r>26,this.words[r]=67108863&a;return this.negative=1,this.strip()},i.prototype._wordDiv=function(e,t){var n=(this.length,e.length),r=this.clone(),o=e,a=0|o.words[o.length-1];0!==(n=26-this._countBits(a))&&(o=o.ushln(n),r.iushln(n),a=0|o.words[o.length-1]);var u,c=r.length-o.length;if("mod"!==t){(u=new i(null)).length=c+1,u.words=new Array(u.length);for(var s=0;s=0;f--){var d=67108864*(0|r.words[o.length+f])+(0|r.words[o.length+f-1]);for(d=Math.min(d/a|0,67108863),r._ishlnsubmul(o,d,f);0!==r.negative;)d--,r.negative=0,r._ishlnsubmul(o,1,f),r.isZero()||(r.negative^=1);u&&(u.words[f]=d)}return u&&u.strip(),r.strip(),"div"!==t&&0!==n&&r.iushrn(n),{div:u||null,mod:r}},i.prototype.divmod=function(e,t,n){return o(!e.isZero()),this.isZero()?{div:new i(0),mod:new i(0)}:0!==this.negative&&0===e.negative?(u=this.neg().divmod(e,t),"mod"!==t&&(r=u.div.neg()),"div"!==t&&(a=u.mod.neg(),n&&0!==a.negative&&a.iadd(e)),{div:r,mod:a}):0===this.negative&&0!==e.negative?(u=this.divmod(e.neg(),t),"mod"!==t&&(r=u.div.neg()),{div:r,mod:u.mod}):0!=(this.negative&e.negative)?(u=this.neg().divmod(e.neg(),t),"div"!==t&&(a=u.mod.neg(),n&&0!==a.negative&&a.isub(e)),{div:u.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new i(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new i(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new i(this.modn(e.words[0]))}:this._wordDiv(e,t);var r,a,u},i.prototype.div=function(e){return this.divmod(e,"div",!1).div},i.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},i.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},i.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var n=0!==t.div.negative?t.mod.isub(e):t.mod,r=e.ushrn(1),o=e.andln(1),a=n.cmp(r);return a<0||1===o&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},i.prototype.modn=function(e){o(e<=67108863);for(var t=(1<<26)%e,n=0,r=this.length-1;r>=0;r--)n=(t*n+(0|this.words[r]))%e;return n},i.prototype.idivn=function(e){o(e<=67108863);for(var t=0,n=this.length-1;n>=0;n--){var r=(0|this.words[n])+67108864*t;this.words[n]=r/e|0,t=r%e}return this.strip()},i.prototype.divn=function(e){return this.clone().idivn(e)},i.prototype.egcd=function(e){o(0===e.negative),o(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var r=new i(1),a=new i(0),u=new i(0),c=new i(1),s=0;t.isEven()&&n.isEven();)t.iushrn(1),n.iushrn(1),++s;for(var l=n.clone(),f=t.clone();!t.isZero();){for(var d=0,p=1;0==(t.words[0]&p)&&d<26;++d,p<<=1);if(d>0)for(t.iushrn(d);d-- >0;)(r.isOdd()||a.isOdd())&&(r.iadd(l),a.isub(f)),r.iushrn(1),a.iushrn(1);for(var h=0,y=1;0==(n.words[0]&y)&&h<26;++h,y<<=1);if(h>0)for(n.iushrn(h);h-- >0;)(u.isOdd()||c.isOdd())&&(u.iadd(l),c.isub(f)),u.iushrn(1),c.iushrn(1);t.cmp(n)>=0?(t.isub(n),r.isub(u),a.isub(c)):(n.isub(t),u.isub(r),c.isub(a))}return{a:u,b:c,gcd:n.iushln(s)}},i.prototype._invmp=function(e){o(0===e.negative),o(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var r,a=new i(1),u=new i(0),c=n.clone();t.cmpn(1)>0&&n.cmpn(1)>0;){for(var s=0,l=1;0==(t.words[0]&l)&&s<26;++s,l<<=1);if(s>0)for(t.iushrn(s);s-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var f=0,d=1;0==(n.words[0]&d)&&f<26;++f,d<<=1);if(f>0)for(n.iushrn(f);f-- >0;)u.isOdd()&&u.iadd(c),u.iushrn(1);t.cmp(n)>=0?(t.isub(n),a.isub(u)):(n.isub(t),u.isub(a))}return(r=0===t.cmpn(1)?a:u).cmpn(0)<0&&r.iadd(e),r},i.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),n=e.clone();t.negative=0,n.negative=0;for(var r=0;t.isEven()&&n.isEven();r++)t.iushrn(1),n.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;n.isEven();)n.iushrn(1);var o=t.cmp(n);if(o<0){var a=t;t=n,n=a}else if(0===o||0===n.cmpn(1))break;t.isub(n)}return n.iushln(r)},i.prototype.invm=function(e){return this.egcd(e).a.umod(e)},i.prototype.isEven=function(){return 0==(1&this.words[0])},i.prototype.isOdd=function(){return 1==(1&this.words[0])},i.prototype.andln=function(e){return this.words[0]&e},i.prototype.bincn=function(e){o("number"==typeof e);var t=e%26,n=(e-t)/26,r=1<>>26,u&=67108863,this.words[i]=u}return 0!==a&&(this.words[i]=a,this.length++),this},i.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},i.prototype.cmpn=function(e){var t,n=e<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)t=1;else{n&&(e=-e),o(e<=67108863,"Number is too big");var r=0|this.words[0];t=r===e?0:re.length)return 1;if(this.length=0;n--){var r=0|this.words[n],o=0|e.words[n];if(r!==o){ro&&(t=1);break}}return t},i.prototype.gtn=function(e){return 1===this.cmpn(e)},i.prototype.gt=function(e){return 1===this.cmp(e)},i.prototype.gten=function(e){return this.cmpn(e)>=0},i.prototype.gte=function(e){return this.cmp(e)>=0},i.prototype.ltn=function(e){return-1===this.cmpn(e)},i.prototype.lt=function(e){return-1===this.cmp(e)},i.prototype.lten=function(e){return this.cmpn(e)<=0},i.prototype.lte=function(e){return this.cmp(e)<=0},i.prototype.eqn=function(e){return 0===this.cmpn(e)},i.prototype.eq=function(e){return 0===this.cmp(e)},i.red=function(e){return new A(e)},i.prototype.toRed=function(e){return o(!this.red,"Already a number in reduction context"),o(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},i.prototype.fromRed=function(){return o(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(e){return this.red=e,this},i.prototype.forceRed=function(e){return o(!this.red,"Already a number in reduction context"),this._forceRed(e)},i.prototype.redAdd=function(e){return o(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},i.prototype.redIAdd=function(e){return o(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},i.prototype.redSub=function(e){return o(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},i.prototype.redISub=function(e){return o(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},i.prototype.redShl=function(e){return o(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},i.prototype.redMul=function(e){return o(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},i.prototype.redIMul=function(e){return o(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},i.prototype.redSqr=function(){return o(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return o(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return o(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return o(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return o(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(e){return o(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var v={k256:null,p224:null,p192:null,p25519:null};function g(e,t){this.name=e,this.p=new i(t,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function k(){g.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function _(){g.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){g.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function I(){g.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function A(e){if("string"==typeof e){var t=i._prime(e);this.m=t.p,this.prime=t}else o(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function T(e){A.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}g.prototype._tmp=function(){var e=new i(null);return e.words=new Array(Math.ceil(this.n/13)),e},g.prototype.ireduce=function(e){var t,n=e;do{this.split(n,this.tmp),t=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(t>this.n);var r=t0?n.isub(this.p):void 0!==n.strip?n.strip():n._strip(),n},g.prototype.split=function(e,t){e.iushrn(this.n,0,t)},g.prototype.imulK=function(e){return e.imul(this.k)},a(k,g),k.prototype.split=function(e,t){for(var n=Math.min(e.length,9),r=0;r>>22,o=a}o>>>=22,e.words[r-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},k.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,n=0;n>>=26,e.words[n]=o,t=r}return 0!==t&&(e.words[e.length++]=t),e},i._prime=function(e){if(v[e])return v[e];var t;if("k256"===e)t=new k;else if("p224"===e)t=new _;else if("p192"===e)t=new w;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new I}return v[e]=t,t},A.prototype._verify1=function(e){o(0===e.negative,"red works only with positives"),o(e.red,"red works only with red numbers")},A.prototype._verify2=function(e,t){o(0==(e.negative|t.negative),"red works only with positives"),o(e.red&&e.red===t.red,"red works only with red numbers")},A.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},A.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},A.prototype.add=function(e,t){this._verify2(e,t);var n=e.add(t);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},A.prototype.iadd=function(e,t){this._verify2(e,t);var n=e.iadd(t);return n.cmp(this.m)>=0&&n.isub(this.m),n},A.prototype.sub=function(e,t){this._verify2(e,t);var n=e.sub(t);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},A.prototype.isub=function(e,t){this._verify2(e,t);var n=e.isub(t);return n.cmpn(0)<0&&n.iadd(this.m),n},A.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},A.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},A.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},A.prototype.isqr=function(e){return this.imul(e,e.clone())},A.prototype.sqr=function(e){return this.mul(e,e)},A.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(o(t%2==1),3===t){var n=this.m.add(new i(1)).iushrn(2);return this.pow(e,n)}for(var r=this.m.subn(1),a=0;!r.isZero()&&0===r.andln(1);)a++,r.iushrn(1);o(!r.isZero());var u=new i(1).toRed(this),c=u.redNeg(),s=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new i(2*l*l).toRed(this);0!==this.pow(l,s).cmp(c);)l.redIAdd(c);for(var f=this.pow(l,r),d=this.pow(e,r.addn(1).iushrn(1)),p=this.pow(e,r),h=a;0!==p.cmp(u);){for(var y=p,b=0;0!==y.cmp(u);b++)y=y.redSqr();o(b=0;r--){for(var s=t.words[r],l=c-1;l>=0;l--){var f=s>>l&1;o!==n[0]&&(o=this.sqr(o)),0!==f||0!==a?(a<<=1,a|=f,(4===++u||0===r&&0===l)&&(o=this.mul(o,n[a]),u=0,a=0)):u=0}c=26}return o},A.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},A.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},i.mont=function(e){return new T(e)},a(T,A),T.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},T.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},T.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var n=e.imul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),o=n.isub(r).iushrn(this.shift),a=o;return o.cmp(this.m)>=0?a=o.isub(this.m):o.cmpn(0)<0&&(a=o.iadd(this.m)),a._forceRed(this)},T.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new i(0)._forceRed(this);var n=e.mul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),o=n.isub(r).iushrn(this.shift),a=o;return o.cmp(this.m)>=0?a=o.isub(this.m):o.cmpn(0)<0&&(a=o.iadd(this.m)),a._forceRed(this)},T.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e)}).call(this,n(134)(e))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(76)),i=r(n(42)),u=r(n(1)),c=r(n(2)),s=r(n(25)),l=b(n(157)),f=b(n(34)),d=r(n(39)),p=r(n(94)),h=r(n(128));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var m=new RegExp("^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.((?:[0-9a-fA-F][0-9a-fA-F])+)$"),v=function(){function e(t,n,r){(0,u.default)(this,e);var o=l.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this.aliasKey=o.aliasKey,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");l.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return l.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{alias:null!=this.aliasKey?f.Key.encode(this.aliasKey._toProtobufKey()).finish():null,accountNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toBytes",value:function(){return f.AccountID.encode(this._toProtobuf()).finish()}},{key:"toString",value:function(){var e=null!=this.aliasKey?this.aliasKey.toString():this.num.toString();return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(e)}},{key:"toStringWithChecksum",value:function(e){if(null!=this.aliasKey)throw new Error("cannot calculate checksum with an account ID that has a aliasKey");return l.toStringWithChecksum(this.toString(),e)}},{key:"equals",value:function(e){var t=!1;return null!=this.aliasKey&&null!=e.aliasKey?t=this.aliasKey.equals(e.aliasKey):null==this.aliasKey&&null==e.aliasKey&&(t=this.num.eq(e.num)),this.shard.eq(e.shard)&&this.realm.eq(e.realm)&&t}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){var t=this.shard.compare(e.shard);if(0!=t)return t;if(0!=(t=this.realm.compare(e.realm)))return t;if(null!=this.aliasKey&&null!=e.aliasKey){var n=this.aliasKey.toString(),r=e.aliasKey.toString();return n>r?1:n0?d.default._fromProtobufKey(f.Key.decode(t.alias)):null;n instanceof p.default||(n=null);var r=null!=n?n:t.accountNum;return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,r)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(f.AccountID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(l.fromSolidityAddress(t)))}}]),e}();t.default=v,h.default.accountIdConstructor=function(e,t,n){return new v(e,t,n)}},function(e,t,n){"use strict";"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},function(e,t,n){"use strict";e.exports=o;var r=null;try{r=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch(e){}function o(e,t,n){this.low=0|e,this.high=0|t,this.unsigned=!!n}function a(e){return!0===(e&&e.__isLong__)}o.prototype.__isLong__,Object.defineProperty(o.prototype,"__isLong__",{value:!0}),o.isLong=a;var i={},u={};function c(e,t){var n,r,o;return t?(o=0<=(e>>>=0)&&e<256)&&(r=u[e])?r:(n=l(e,(0|e)<0?-1:0,!0),o&&(u[e]=n),n):(o=-128<=(e|=0)&&e<128)&&(r=i[e])?r:(n=l(e,e<0?-1:0,!1),o&&(i[e]=n),n)}function s(e,t){if(isNaN(e))return t?g:v;if(t){if(e<0)return g;if(e>=y)return A}else{if(e<=-b)return T;if(e+1>=b)return I}return e<0?s(-e,t).neg():l(e%h|0,e/h|0,t)}function l(e,t,n){return new o(e,t,n)}o.fromInt=c,o.fromNumber=s,o.fromBits=l;var f=Math.pow;function d(e,t,n){if(0===e.length)throw Error("empty string");if("NaN"===e||"Infinity"===e||"+Infinity"===e||"-Infinity"===e)return v;if("number"==typeof t?(n=t,t=!1):t=!!t,(n=n||10)<2||360)throw Error("interior hyphen");if(0===r)return d(e.substring(1),t,n).neg();for(var o=s(f(n,8)),a=v,i=0;i>>0:this.low},O.toNumber=function(){return this.unsigned?(this.high>>>0)*h+(this.low>>>0):this.high*h+(this.low>>>0)},O.toString=function(e){if((e=e||10)<2||36>>0).toString(e);if((a=u).isZero())return c+i;for(;c.length<6;)c="0"+c;i=""+c+i}},O.getHighBits=function(){return this.high},O.getHighBitsUnsigned=function(){return this.high>>>0},O.getLowBits=function(){return this.low},O.getLowBitsUnsigned=function(){return this.low>>>0},O.getNumBitsAbs=function(){if(this.isNegative())return this.eq(T)?64:this.neg().getNumBitsAbs();for(var e=0!=this.high?this.high:this.low,t=31;t>0&&0==(e&1<=0},O.isOdd=function(){return 1==(1&this.low)},O.isEven=function(){return 0==(1&this.low)},O.equals=function(e){return a(e)||(e=p(e)),(this.unsigned===e.unsigned||this.high>>>31!=1||e.high>>>31!=1)&&(this.high===e.high&&this.low===e.low)},O.eq=O.equals,O.notEquals=function(e){return!this.eq(e)},O.neq=O.notEquals,O.ne=O.notEquals,O.lessThan=function(e){return this.comp(e)<0},O.lt=O.lessThan,O.lessThanOrEqual=function(e){return this.comp(e)<=0},O.lte=O.lessThanOrEqual,O.le=O.lessThanOrEqual,O.greaterThan=function(e){return this.comp(e)>0},O.gt=O.greaterThan,O.greaterThanOrEqual=function(e){return this.comp(e)>=0},O.gte=O.greaterThanOrEqual,O.ge=O.greaterThanOrEqual,O.compare=function(e){if(a(e)||(e=p(e)),this.eq(e))return 0;var t=this.isNegative(),n=e.isNegative();return t&&!n?-1:!t&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},O.comp=O.compare,O.negate=function(){return!this.unsigned&&this.eq(T)?T:this.not().add(k)},O.neg=O.negate,O.add=function(e){a(e)||(e=p(e));var t=this.high>>>16,n=65535&this.high,r=this.low>>>16,o=65535&this.low,i=e.high>>>16,u=65535&e.high,c=e.low>>>16,s=0,f=0,d=0,h=0;return d+=(h+=o+(65535&e.low))>>>16,f+=(d+=r+c)>>>16,s+=(f+=n+u)>>>16,s+=t+i,l((d&=65535)<<16|(h&=65535),(s&=65535)<<16|(f&=65535),this.unsigned)},O.subtract=function(e){return a(e)||(e=p(e)),this.add(e.neg())},O.sub=O.subtract,O.multiply=function(e){if(this.isZero())return v;if(a(e)||(e=p(e)),r)return l(r.mul(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned);if(e.isZero())return v;if(this.eq(T))return e.isOdd()?T:v;if(e.eq(T))return this.isOdd()?T:v;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(m)&&e.lt(m))return s(this.toNumber()*e.toNumber(),this.unsigned);var t=this.high>>>16,n=65535&this.high,o=this.low>>>16,i=65535&this.low,u=e.high>>>16,c=65535&e.high,f=e.low>>>16,d=65535&e.low,h=0,y=0,b=0,g=0;return b+=(g+=i*d)>>>16,y+=(b+=o*d)>>>16,b&=65535,y+=(b+=i*f)>>>16,h+=(y+=n*d)>>>16,y&=65535,h+=(y+=o*f)>>>16,y&=65535,h+=(y+=i*c)>>>16,h+=t*d+n*f+o*c+i*u,l((b&=65535)<<16|(g&=65535),(h&=65535)<<16|(y&=65535),this.unsigned)},O.mul=O.multiply,O.divide=function(e){if(a(e)||(e=p(e)),e.isZero())throw Error("division by zero");var t,n,o;if(r)return this.unsigned||-2147483648!==this.high||-1!==e.low||-1!==e.high?l((this.unsigned?r.div_u:r.div_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this;if(this.isZero())return this.unsigned?g:v;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return g;if(e.gt(this.shru(1)))return _;o=g}else{if(this.eq(T))return e.eq(k)||e.eq(w)?T:e.eq(T)?k:(t=this.shr(1).div(e).shl(1)).eq(v)?e.isNegative()?k:w:(n=this.sub(e.mul(t)),o=t.add(n.div(e)));if(e.eq(T))return this.unsigned?g:v;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();o=v}for(n=this;n.gte(e);){t=Math.max(1,Math.floor(n.toNumber()/e.toNumber()));for(var i=Math.ceil(Math.log(t)/Math.LN2),u=i<=48?1:f(2,i-48),c=s(t),d=c.mul(e);d.isNegative()||d.gt(n);)d=(c=s(t-=u,this.unsigned)).mul(e);c.isZero()&&(c=k),o=o.add(c),n=n.sub(d)}return o},O.div=O.divide,O.modulo=function(e){return a(e)||(e=p(e)),r?l((this.unsigned?r.rem_u:r.rem_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this.sub(this.div(e).mul(e))},O.mod=O.modulo,O.rem=O.modulo,O.not=function(){return l(~this.low,~this.high,this.unsigned)},O.and=function(e){return a(e)||(e=p(e)),l(this.low&e.low,this.high&e.high,this.unsigned)},O.or=function(e){return a(e)||(e=p(e)),l(this.low|e.low,this.high|e.high,this.unsigned)},O.xor=function(e){return a(e)||(e=p(e)),l(this.low^e.low,this.high^e.high,this.unsigned)},O.shiftLeft=function(e){return a(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?l(this.low<>>32-e,this.unsigned):l(0,this.low<>>e|this.high<<32-e,this.high>>e,this.unsigned):l(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},O.shr=O.shiftRight,O.shiftRightUnsigned=function(e){if(a(e)&&(e=e.toInt()),0===(e&=63))return this;var t=this.high;return e<32?l(this.low>>>e|t<<32-e,t>>>e,this.unsigned):l(32===e?t:t>>>e-32,0,this.unsigned)},O.shru=O.shiftRightUnsigned,O.shr_u=O.shiftRightUnsigned,O.toSigned=function(){return this.unsigned?l(this.low,this.high,!1):this},O.toUnsigned=function(){return this.unsigned?this:l(this.low,this.high,!0)},O.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},O.toBytesLE=function(){var e=this.high,t=this.low;return[255&t,t>>>8&255,t>>>16&255,t>>>24,255&e,e>>>8&255,e>>>16&255,e>>>24]},O.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,255&e,t>>>24,t>>>16&255,t>>>8&255,255&t]},o.fromBytes=function(e,t,n){return n?o.fromBytesLE(e,t):o.fromBytesBE(e,t)},o.fromBytesLE=function(e,t){return new o(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)},o.fromBytesBE=function(e,t){return new o(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)}},function(e,t,n){"use strict";e.exports=o;var r=null;try{r=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch(e){}function o(e,t,n){this.low=0|e,this.high=0|t,this.unsigned=!!n}function a(e){return!0===(e&&e.__isLong__)}o.prototype.__isLong__,Object.defineProperty(o.prototype,"__isLong__",{value:!0}),o.isLong=a;var i={},u={};function c(e,t){var n,r,o;return t?(o=0<=(e>>>=0)&&e<256)&&(r=u[e])?r:(n=l(e,(0|e)<0?-1:0,!0),o&&(u[e]=n),n):(o=-128<=(e|=0)&&e<128)&&(r=i[e])?r:(n=l(e,e<0?-1:0,!1),o&&(i[e]=n),n)}function s(e,t){if(isNaN(e))return t?g:v;if(t){if(e<0)return g;if(e>=y)return A}else{if(e<=-b)return T;if(e+1>=b)return I}return e<0?s(-e,t).neg():l(e%h|0,e/h|0,t)}function l(e,t,n){return new o(e,t,n)}o.fromInt=c,o.fromNumber=s,o.fromBits=l;var f=Math.pow;function d(e,t,n){if(0===e.length)throw Error("empty string");if("NaN"===e||"Infinity"===e||"+Infinity"===e||"-Infinity"===e)return v;if("number"==typeof t?(n=t,t=!1):t=!!t,(n=n||10)<2||360)throw Error("interior hyphen");if(0===r)return d(e.substring(1),t,n).neg();for(var o=s(f(n,8)),a=v,i=0;i>>0:this.low},O.toNumber=function(){return this.unsigned?(this.high>>>0)*h+(this.low>>>0):this.high*h+(this.low>>>0)},O.toString=function(e){if((e=e||10)<2||36>>0).toString(e);if((a=u).isZero())return c+i;for(;c.length<6;)c="0"+c;i=""+c+i}},O.getHighBits=function(){return this.high},O.getHighBitsUnsigned=function(){return this.high>>>0},O.getLowBits=function(){return this.low},O.getLowBitsUnsigned=function(){return this.low>>>0},O.getNumBitsAbs=function(){if(this.isNegative())return this.eq(T)?64:this.neg().getNumBitsAbs();for(var e=0!=this.high?this.high:this.low,t=31;t>0&&0==(e&1<=0},O.isOdd=function(){return 1==(1&this.low)},O.isEven=function(){return 0==(1&this.low)},O.equals=function(e){return a(e)||(e=p(e)),(this.unsigned===e.unsigned||this.high>>>31!=1||e.high>>>31!=1)&&(this.high===e.high&&this.low===e.low)},O.eq=O.equals,O.notEquals=function(e){return!this.eq(e)},O.neq=O.notEquals,O.ne=O.notEquals,O.lessThan=function(e){return this.comp(e)<0},O.lt=O.lessThan,O.lessThanOrEqual=function(e){return this.comp(e)<=0},O.lte=O.lessThanOrEqual,O.le=O.lessThanOrEqual,O.greaterThan=function(e){return this.comp(e)>0},O.gt=O.greaterThan,O.greaterThanOrEqual=function(e){return this.comp(e)>=0},O.gte=O.greaterThanOrEqual,O.ge=O.greaterThanOrEqual,O.compare=function(e){if(a(e)||(e=p(e)),this.eq(e))return 0;var t=this.isNegative(),n=e.isNegative();return t&&!n?-1:!t&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},O.comp=O.compare,O.negate=function(){return!this.unsigned&&this.eq(T)?T:this.not().add(k)},O.neg=O.negate,O.add=function(e){a(e)||(e=p(e));var t=this.high>>>16,n=65535&this.high,r=this.low>>>16,o=65535&this.low,i=e.high>>>16,u=65535&e.high,c=e.low>>>16,s=0,f=0,d=0,h=0;return d+=(h+=o+(65535&e.low))>>>16,f+=(d+=r+c)>>>16,s+=(f+=n+u)>>>16,s+=t+i,l((d&=65535)<<16|(h&=65535),(s&=65535)<<16|(f&=65535),this.unsigned)},O.subtract=function(e){return a(e)||(e=p(e)),this.add(e.neg())},O.sub=O.subtract,O.multiply=function(e){if(this.isZero())return v;if(a(e)||(e=p(e)),r)return l(r.mul(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned);if(e.isZero())return v;if(this.eq(T))return e.isOdd()?T:v;if(e.eq(T))return this.isOdd()?T:v;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(m)&&e.lt(m))return s(this.toNumber()*e.toNumber(),this.unsigned);var t=this.high>>>16,n=65535&this.high,o=this.low>>>16,i=65535&this.low,u=e.high>>>16,c=65535&e.high,f=e.low>>>16,d=65535&e.low,h=0,y=0,b=0,g=0;return b+=(g+=i*d)>>>16,y+=(b+=o*d)>>>16,b&=65535,y+=(b+=i*f)>>>16,h+=(y+=n*d)>>>16,y&=65535,h+=(y+=o*f)>>>16,y&=65535,h+=(y+=i*c)>>>16,h+=t*d+n*f+o*c+i*u,l((b&=65535)<<16|(g&=65535),(h&=65535)<<16|(y&=65535),this.unsigned)},O.mul=O.multiply,O.divide=function(e){if(a(e)||(e=p(e)),e.isZero())throw Error("division by zero");var t,n,o;if(r)return this.unsigned||-2147483648!==this.high||-1!==e.low||-1!==e.high?l((this.unsigned?r.div_u:r.div_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this;if(this.isZero())return this.unsigned?g:v;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return g;if(e.gt(this.shru(1)))return _;o=g}else{if(this.eq(T))return e.eq(k)||e.eq(w)?T:e.eq(T)?k:(t=this.shr(1).div(e).shl(1)).eq(v)?e.isNegative()?k:w:(n=this.sub(e.mul(t)),o=t.add(n.div(e)));if(e.eq(T))return this.unsigned?g:v;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();o=v}for(n=this;n.gte(e);){t=Math.max(1,Math.floor(n.toNumber()/e.toNumber()));for(var i=Math.ceil(Math.log(t)/Math.LN2),u=i<=48?1:f(2,i-48),c=s(t),d=c.mul(e);d.isNegative()||d.gt(n);)d=(c=s(t-=u,this.unsigned)).mul(e);c.isZero()&&(c=k),o=o.add(c),n=n.sub(d)}return o},O.div=O.divide,O.modulo=function(e){return a(e)||(e=p(e)),r?l((this.unsigned?r.rem_u:r.rem_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this.sub(this.div(e).mul(e))},O.mod=O.modulo,O.rem=O.modulo,O.not=function(){return l(~this.low,~this.high,this.unsigned)},O.and=function(e){return a(e)||(e=p(e)),l(this.low&e.low,this.high&e.high,this.unsigned)},O.or=function(e){return a(e)||(e=p(e)),l(this.low|e.low,this.high|e.high,this.unsigned)},O.xor=function(e){return a(e)||(e=p(e)),l(this.low^e.low,this.high^e.high,this.unsigned)},O.shiftLeft=function(e){return a(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?l(this.low<>>32-e,this.unsigned):l(0,this.low<>>e|this.high<<32-e,this.high>>e,this.unsigned):l(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},O.shr=O.shiftRight,O.shiftRightUnsigned=function(e){if(a(e)&&(e=e.toInt()),0===(e&=63))return this;var t=this.high;return e<32?l(this.low>>>e|t<<32-e,t>>>e,this.unsigned):l(32===e?t:t>>>e-32,0,this.unsigned)},O.shru=O.shiftRightUnsigned,O.shr_u=O.shiftRightUnsigned,O.toSigned=function(){return this.unsigned?l(this.low,this.high,!1):this},O.toUnsigned=function(){return this.unsigned?this:l(this.low,this.high,!0)},O.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},O.toBytesLE=function(){var e=this.high,t=this.low;return[255&t,t>>>8&255,t>>>16&255,t>>>24,255&e,e>>>8&255,e>>>16&255,e>>>24]},O.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,255&e,t>>>24,t>>>16&255,t>>>8&255,255&t]},o.fromBytes=function(e,t,n){return n?o.fromBytesLE(e,t):o.fromBytesBE(e,t)},o.fromBytesLE=function(e,t){return new o(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)},o.fromBytesBE=function(e,t){return new o(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.TRANSACTION_REGISTRY=t.SCHEDULE_CREATE_TRANSACTION=t.DEFAULT_RECORD_THRESHOLD=t.DEFAULT_AUTO_RENEW_PERIOD=t.CHUNK_SIZE=void 0;var a=r(n(7)),i=r(n(109)),u=r(n(8)),c=r(n(1)),s=r(n(2)),l=r(n(20)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(26)),y=r(n(327)),b=r(n(61)),m=r(n(641)),v=r(n(642)),g=D(n(112)),k=r(n(110)),_=r(n(16)),w=D(n(341)),I=D(n(60)),A=n(30),T=r(n(162)),O=r(n(9)),E=r(n(86)),P=r(n(241)),S=r(n(36));function R(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(R=function(e){return e?n:t})(e)}function D(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=R(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function C(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return N(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return N(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0}},{key:"_getTransactionId",value:function(){return this.transactionId}},{key:"_validateChecksums",value:function(e){}},{key:"_beforeExecute",value:(R=(0,u.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._isFrozen()||this.freezeWith(t),t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),null==this._operator){e.next=5;break}return e.next=5,this.signWith(this._operator.publicKey,this._operator.transactionSigner);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return R.apply(this,arguments)})},{key:"_makeRequestAsync",value:(d=(0,u.default)(a.default.mark((function e(){var t;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this._nextTransactionIndex*this._nodeAccountIds.length+this._nodeAccountIds.index,this._signOnDemand){e.next=4;break}return this._buildTransaction(t),e.abrupt("return",this._transactions.get(t));case 4:return e.next=6,this._buildTransactionAsync();case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"_signTransaction",value:(o=(0,u.default)(a.default.mark((function e(){var t,n,r,o,i,u;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this._makeSignedTransaction(this._nodeAccountIds.next),n=t.bodyBytes,r=0;case 3:if(!(r0||this._transactions.length>0}},{key:"_requireNotFrozen",value:function(){if(this._isFrozen())throw new Error("transaction is immutable; it has at least one signature or has been explicitly frozen")}},{key:"_requireNotSignOnDemand",value:function(){if(this._signOnDemand)throw new Error("Please use `toBytesAsync()` if `signOnDemand` is enabled")}},{key:"_requireFrozen",value:function(){if(!this._isFrozen())throw new Error("transaction must have been frozen before calculating the hash will be stable, try calling `freeze`")}},{key:"_requireOneNodeAccountId",value:function(){if(1!=this._nodeAccountIds.length)throw"transaction did not have exactly one node ID set"}}],[{key:"fromBytes",value:function(e){var t=[],n=[],r=[],o=[],a=[],i=[],u=A.TransactionList.decode(e).transactionList;if(0===u.length){var c=A.Transaction.decode(e);0!==c.signedTransactionBytes.length?u.push(c):u.push({signedTransactionBytes:A.SignedTransaction.encode({bodyBytes:c.bodyBytes,sigMap:c.sigMap}).finish()})}var s,l=C(u);try{for(l.s();!(s=l.n()).done;){var f=s.value;if(null==f.signedTransactionBytes)throw new Error("Transaction.signedTransactionBytes are null");var d=A.SignedTransaction.decode(f.signedTransactionBytes);t.push(d);var p=A.TransactionBody.decode(d.bodyBytes);if(null==p.data)throw new Error("(BUG) body.data was not set in the protobuf");if(i.push(p),null!=p.transactionID){var h=b.default._fromProtobuf(p.transactionID);o.includes(h.toString())||(n.push(h),o.push(h.toString()))}if(null!=p.nodeAccountID){var y=O.default._fromProtobuf(p.nodeAccountID);a.includes(y.toString())||(r.push(y),a.push(y.toString()))}}}catch(e){l.e(e)}finally{l.f()}var m=i[0];if(null==m||null==m.data)throw new Error("No transaction found in bytes or failed to decode TransactionBody");var v=x.get(m.data);if(null==v)throw new Error("(BUG) Transaction.fromBytes() not implemented for type ".concat(m.data));return v(u,t,n,r,i)}},{key:"_fromProtobufTransactions",value:function(e,t,n,r,o,a){for(var i=a[0],u=new O.default(0),c=0;c=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0}},{key:"_getTransactionId",value:function(){return this.transactionId}},{key:"_validateChecksums",value:function(e){}},{key:"_beforeExecute",value:(R=(0,u.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._isFrozen()||this.freezeWith(t),t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),null==this._operator){e.next=5;break}return e.next=5,this.signWith(this._operator.publicKey,this._operator.transactionSigner);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return R.apply(this,arguments)})},{key:"_makeRequestAsync",value:(d=(0,u.default)(a.default.mark((function e(){var t;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this._nextTransactionIndex*this._nodeAccountIds.length+this._nodeAccountIds.index,this._signOnDemand){e.next=4;break}return this._buildTransaction(t),e.abrupt("return",this._transactions.get(t));case 4:return e.next=6,this._buildTransactionAsync();case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"_signTransaction",value:(o=(0,u.default)(a.default.mark((function e(){var t,n,r,o,i,u;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this._makeSignedTransaction(this._nodeAccountIds.next),n=t.bodyBytes,r=0;case 3:if(!(r0||this._transactions.length>0}},{key:"_requireNotFrozen",value:function(){if(this._isFrozen())throw new Error("transaction is immutable; it has at least one signature or has been explicitly frozen")}},{key:"_requireNotSignOnDemand",value:function(){if(this._signOnDemand)throw new Error("Please use `toBytesAsync()` if `signOnDemand` is enabled")}},{key:"_requireFrozen",value:function(){if(!this._isFrozen())throw new Error("transaction must have been frozen before calculating the hash will be stable, try calling `freeze`")}},{key:"_requireOneNodeAccountId",value:function(){if(1!=this._nodeAccountIds.length)throw"transaction did not have exactly one node ID set"}}],[{key:"fromBytes",value:function(e){var t=[],n=[],r=[],o=[],a=[],i=[],u=A.TransactionList.decode(e).transactionList;if(0===u.length){var c=A.Transaction.decode(e);0!==c.signedTransactionBytes.length?u.push(c):u.push({signedTransactionBytes:A.SignedTransaction.encode({bodyBytes:c.bodyBytes,sigMap:c.sigMap}).finish()})}var s,l=C(u);try{for(l.s();!(s=l.n()).done;){var f=s.value;if(null==f.signedTransactionBytes)throw new Error("Transaction.signedTransactionBytes are null");var d=A.SignedTransaction.decode(f.signedTransactionBytes);t.push(d);var p=A.TransactionBody.decode(d.bodyBytes);if(null==p.data)throw new Error("(BUG) body.data was not set in the protobuf");if(i.push(p),null!=p.transactionID){var h=b.default._fromProtobuf(p.transactionID);o.includes(h.toString())||(n.push(h),o.push(h.toString()))}if(null!=p.nodeAccountID){var y=O.default._fromProtobuf(p.nodeAccountID);a.includes(y.toString())||(r.push(y),a.push(y.toString()))}}}catch(e){l.e(e)}finally{l.f()}var m=i[0];if(null==m||null==m.data)throw new Error("No transaction found in bytes or failed to decode TransactionBody");var v=x.get(m.data);if(null==v)throw new Error("(BUG) Transaction.fromBytes() not implemented for type ".concat(m.data));return v(u,t,n,r,i)}},{key:"_fromProtobufTransactions",value:function(e,t,n,r,o,a){for(var i=a[0],u=new O.default(0),c=0;c=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function C(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0);else{if(null==e)throw new Error("`nodeAccountId` must be set or `client` must be provided with `freezeWith`");this._nodeIds=e._network.getNodeAccountIdsForExecute()}return this._signedTransactions=this._nodeIds.map((function(e){return t._makeSignedTransaction(e)})),this}},{key:"toBytes",value:function(){if(this._requireFrozen(),this._signOnDemand)throw new Error("Please use `toBytesAsync()` if `signOnDemand` is enabled");return this._buildAllTransactions(),A.TransactionList.encode({transactionList:this._transactions}).finish()}},{key:"toBytesAsync",value:(B=(0,u.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._requireFrozen(),e.next=3,this._buildAllTransactionsAsync();case 3:return e.abrupt("return",A.TransactionList.encode({transactionList:this._transactions}).finish());case 4:case"end":return e.stop()}}),e,this)}))),function(){return B.apply(this,arguments)})},{key:"getTransactionHash",value:(C=(0,u.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._requireFrozen(),e.next=3,this._buildAllTransactionsAsync();case 3:return e.abrupt("return",w.digest(this._transactions[0].signedTransactionBytes));case 4:case"end":return e.stop()}}),e,this)}))),function(){return C.apply(this,arguments)})},{key:"getTransactionHashPerNode",value:(R=(0,u.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._requireFrozen(),e.next=3,this._buildAllTransactionsAsync();case 3:return e.next=5,m.default._fromTransaction(this);case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e,this)}))),function(){return R.apply(this,arguments)})},{key:"isFrozen",value:function(){return this._signedTransactions.length>0}},{key:"_getTransactionId",value:function(){return this.transactionId}},{key:"_validateChecksums",value:function(e){}},{key:"_beforeExecute",value:(S=(0,u.default)(a.default.mark((function e(t){var n,r;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._isFrozen()||this.freezeWith(t),t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),n=this.transactionId,null==(r=t.operatorAccountId)||null==n.accountId||!r.equals(n.accountId)){e.next=7;break}return e.next=7,this.signWithOperator(t);case 7:case"end":return e.stop()}}),e,this)}))),function(e){return S.apply(this,arguments)})},{key:"_makeRequestAsync",value:(d=(0,u.default)(a.default.mark((function e(){var t;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this._nextTransactionIndex*this._nodeIds.length+this._nextNodeIndex,!this._signOnDemand){e.next=6;break}return e.next=4,this._buildTransactionAsync(t);case 4:e.next=7;break;case 6:this._buildTransaction(t);case 7:return e.abrupt("return",this._transactions[t]);case 8:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"_signTranscation",value:(o=(0,u.default)(a.default.mark((function e(t){var n,r,o,i,u,c,s,l,f;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this._signedTransactions[t],r=n.bodyBytes,!(null!=n.sigMap&&null!=n.sigMap.sigPair&&n.sigMap.sigPair.length>0)){e.next=12;break}o=0;case 4:if(!(ot&&null!=this._transactions[t]&&null!=this._transactions[t].signedTransactionBytes)){e.next=6;break}return e.abrupt("return");case 6:return e.next=8,this._signTranscation(t);case 8:this._transactions.push({signedTransactionBytes:A.SignedTransaction.encode(this._signedTransactions[t]).finish()});case 9:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"_shouldRetry",value:function(e,t){var n=t.nodeTransactionPrecheckCode;switch(k.default._fromCode(null!=n?n:A.ResponseCodeEnum.OK)){case k.default.Busy:case k.default.Unknown:case k.default.PlatformTransactionNotCreated:return g.ExecutionState.Retry;case k.default.Ok:return g.ExecutionState.Finished;default:return g.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=t.nodeTransactionPrecheckCode,r=k.default._fromCode(null!=n?n:A.ResponseCodeEnum.OK);return new T.default({status:r,transactionId:this._getTransactionId()})}},{key:"_mapResponse",value:(t=(0,u.default)(a.default.mark((function e(t,n,r){var o,i;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,w.digest(r.signedTransactionBytes);case 2:return o=e.sent,i=this.transactionId,this._nextTransactionIndex=(this._nextTransactionIndex+1)%this._transactionIds.length,e.abrupt("return",new y.default({nodeId:n,transactionHash:o,transactionId:i}));case 6:case"end":return e.stop()}}),e,this)}))),function(e,n,r){return t.apply(this,arguments)})},{key:"_getNodeAccountId",value:function(){if(0===this._nodeIds.length)throw new Error("(BUG) Transaction::_getNodeAccountId called before transaction has been frozen");return this._nodeIds[this._nextNodeIndex%this._nodeIds.length]}},{key:"_makeSignedTransaction",value:function(e){var t=this._makeTransactionBody(e);return{bodyBytes:A.TransactionBody.encode(t).finish(),sigMap:{sigPair:[]}}}},{key:"_makeTransactionBody",value:function(e){var t;return t={},(0,i.default)(t,this._getTransactionDataCase(),this._makeTransactionData()),(0,i.default)(t,"transactionFee",null!=this._maxTransactionFee?this._maxTransactionFee.toTinybars():null),(0,i.default)(t,"memo",this._transactionMemo),(0,i.default)(t,"transactionID",null!=this._transactionIds[this._nextTransactionIndex]?this._transactionIds[this._nextTransactionIndex]._toProtobuf():null),(0,i.default)(t,"nodeAccountID",null!=e?e._toProtobuf():null),(0,i.default)(t,"transactionValidDuration",{seconds:_.default.fromNumber(this._transactionValidDuration)}),t}},{key:"_getTransactionDataCase",value:function(){throw new Error("not implemented")}},{key:"_getScheduledTransactionBody",value:function(){return(0,i.default)({memo:this.transactionMemo,transactionFee:null!=this.maxTransactionFee?this.maxTransactionFee.toTinybars():null},this._getTransactionDataCase(),this._makeTransactionData())}},{key:"_makeTransactionData",value:function(){throw new Error("not implemented")}},{key:"_isFrozen",value:function(){return this._signedTransactions.length>0}},{key:"_requireNotFrozen",value:function(){if(this._isFrozen())throw new Error("transaction is immutable; it has at least one signature or has been explicitly frozen")}},{key:"_requireFrozen",value:function(){if(!this._isFrozen())throw new Error("transaction must have been frozen before calculating the hash will be stable, try calling `freeze`")}}],[{key:"fromBytes",value:function(e){var t=[],n=[],r=[],o=[],a=[],i=[],u=A.TransactionList.decode(e).transactionList;if(0==u.length){var c=A.Transaction.decode(e);0!=c.signedTransactionBytes.length?u.push(c):u.push({signedTransactionBytes:A.SignedTransaction.encode({bodyBytes:c.bodyBytes,sigMap:c.sigMap}).finish()})}var s,l=D(u);try{for(l.s();!(s=l.n()).done;){var f=s.value;if(null==f.signedTransactionBytes)throw new Error("Transaction.signedTransactionBytes are null");var d=A.SignedTransaction.decode(f.signedTransactionBytes);t.push(d);var p=A.TransactionBody.decode(d.bodyBytes);if(null==p.data)throw new Error("(BUG) body.data was not set in the protobuf");if(i.push(p),null!=p.transactionID){var h=b.default._fromProtobuf(p.transactionID);o.includes(h.toString())||(n.push(h),o.push(h.toString()))}if(null!=p.nodeAccountID){var y=O.default._fromProtobuf(p.nodeAccountID);a.includes(y.toString())||(r.push(y),a.push(y.toString()))}}}catch(e){l.e(e)}finally{l.f()}var m=i[0];if(null==m||null==m.data)throw new Error("No transaction found in bytes or failed to decode TransactionBody");var v=j.get(m.data);if(null==v)throw new Error("(BUG) Transaction.fromBytes() not implemented for type ".concat(m.data));return v(u,t,n,r,i)}},{key:"_fromProtobufTransactions",value:function(e,t,n,r,o,a){for(var i=a[0],u=new O.default(0),c=0;c */var r=n(12),o=r.Buffer;function a(e,t){for(var n in e)t[n]=e[n]}function i(e,t,n){return o(e,t,n)}o.from&&o.alloc&&o.allocUnsafe&&o.allocUnsafeSlow?e.exports=r:(a(r,t),t.Buffer=i),i.prototype=Object.create(o.prototype),a(o,i),i.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return o(e,t,n)},i.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=o(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},i.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return o(e)},i.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(76)),i=r(n(42)),u=r(n(1)),c=r(n(2)),s=d(n(137)),l=d(n(30));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=function(){function e(t,n,r){(0,u.default)(this,e);var o=s.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){s.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return s.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{tokenNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return s.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return l.TokenID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return s.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=s.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.tokenNum?t.tokenNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TokenID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(s.fromSolidityAddress(t)))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(76)),i=r(n(42)),u=r(n(1)),c=r(n(2)),s=d(n(148)),l=d(n(31));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=function(){function e(t,n,r){(0,u.default)(this,e);var o=s.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){s.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return s.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{tokenNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return s.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return l.TokenID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return s.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=s.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.tokenNum?t.tokenNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TokenID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(s.fromSolidityAddress(t)))}}]),e}();t.default=p},function(e,t,n){"use strict";e.exports=o;var r=null;try{r=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch(e){}function o(e,t,n){this.low=0|e,this.high=0|t,this.unsigned=!!n}function a(e){return!0===(e&&e.__isLong__)}o.prototype.__isLong__,Object.defineProperty(o.prototype,"__isLong__",{value:!0}),o.isLong=a;var i={},u={};function c(e,t){var n,r,o;return t?(o=0<=(e>>>=0)&&e<256)&&(r=u[e])?r:(n=l(e,(0|e)<0?-1:0,!0),o&&(u[e]=n),n):(o=-128<=(e|=0)&&e<128)&&(r=i[e])?r:(n=l(e,e<0?-1:0,!1),o&&(i[e]=n),n)}function s(e,t){if(isNaN(e))return t?g:v;if(t){if(e<0)return g;if(e>=y)return A}else{if(e<=-b)return T;if(e+1>=b)return I}return e<0?s(-e,t).neg():l(e%h|0,e/h|0,t)}function l(e,t,n){return new o(e,t,n)}o.fromInt=c,o.fromNumber=s,o.fromBits=l;var f=Math.pow;function d(e,t,n){if(0===e.length)throw Error("empty string");if("NaN"===e||"Infinity"===e||"+Infinity"===e||"-Infinity"===e)return v;if("number"==typeof t?(n=t,t=!1):t=!!t,(n=n||10)<2||360)throw Error("interior hyphen");if(0===r)return d(e.substring(1),t,n).neg();for(var o=s(f(n,8)),a=v,i=0;i>>0:this.low},O.toNumber=function(){return this.unsigned?(this.high>>>0)*h+(this.low>>>0):this.high*h+(this.low>>>0)},O.toString=function(e){if((e=e||10)<2||36>>0).toString(e);if((a=u).isZero())return c+i;for(;c.length<6;)c="0"+c;i=""+c+i}},O.getHighBits=function(){return this.high},O.getHighBitsUnsigned=function(){return this.high>>>0},O.getLowBits=function(){return this.low},O.getLowBitsUnsigned=function(){return this.low>>>0},O.getNumBitsAbs=function(){if(this.isNegative())return this.eq(T)?64:this.neg().getNumBitsAbs();for(var e=0!=this.high?this.high:this.low,t=31;t>0&&0==(e&1<=0},O.isOdd=function(){return 1==(1&this.low)},O.isEven=function(){return 0==(1&this.low)},O.equals=function(e){return a(e)||(e=p(e)),(this.unsigned===e.unsigned||this.high>>>31!=1||e.high>>>31!=1)&&(this.high===e.high&&this.low===e.low)},O.eq=O.equals,O.notEquals=function(e){return!this.eq(e)},O.neq=O.notEquals,O.ne=O.notEquals,O.lessThan=function(e){return this.comp(e)<0},O.lt=O.lessThan,O.lessThanOrEqual=function(e){return this.comp(e)<=0},O.lte=O.lessThanOrEqual,O.le=O.lessThanOrEqual,O.greaterThan=function(e){return this.comp(e)>0},O.gt=O.greaterThan,O.greaterThanOrEqual=function(e){return this.comp(e)>=0},O.gte=O.greaterThanOrEqual,O.ge=O.greaterThanOrEqual,O.compare=function(e){if(a(e)||(e=p(e)),this.eq(e))return 0;var t=this.isNegative(),n=e.isNegative();return t&&!n?-1:!t&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},O.comp=O.compare,O.negate=function(){return!this.unsigned&&this.eq(T)?T:this.not().add(k)},O.neg=O.negate,O.add=function(e){a(e)||(e=p(e));var t=this.high>>>16,n=65535&this.high,r=this.low>>>16,o=65535&this.low,i=e.high>>>16,u=65535&e.high,c=e.low>>>16,s=0,f=0,d=0,h=0;return d+=(h+=o+(65535&e.low))>>>16,f+=(d+=r+c)>>>16,s+=(f+=n+u)>>>16,s+=t+i,l((d&=65535)<<16|(h&=65535),(s&=65535)<<16|(f&=65535),this.unsigned)},O.subtract=function(e){return a(e)||(e=p(e)),this.add(e.neg())},O.sub=O.subtract,O.multiply=function(e){if(this.isZero())return v;if(a(e)||(e=p(e)),r)return l(r.mul(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned);if(e.isZero())return v;if(this.eq(T))return e.isOdd()?T:v;if(e.eq(T))return this.isOdd()?T:v;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(m)&&e.lt(m))return s(this.toNumber()*e.toNumber(),this.unsigned);var t=this.high>>>16,n=65535&this.high,o=this.low>>>16,i=65535&this.low,u=e.high>>>16,c=65535&e.high,f=e.low>>>16,d=65535&e.low,h=0,y=0,b=0,g=0;return b+=(g+=i*d)>>>16,y+=(b+=o*d)>>>16,b&=65535,y+=(b+=i*f)>>>16,h+=(y+=n*d)>>>16,y&=65535,h+=(y+=o*f)>>>16,y&=65535,h+=(y+=i*c)>>>16,h+=t*d+n*f+o*c+i*u,l((b&=65535)<<16|(g&=65535),(h&=65535)<<16|(y&=65535),this.unsigned)},O.mul=O.multiply,O.divide=function(e){if(a(e)||(e=p(e)),e.isZero())throw Error("division by zero");var t,n,o;if(r)return this.unsigned||-2147483648!==this.high||-1!==e.low||-1!==e.high?l((this.unsigned?r.div_u:r.div_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this;if(this.isZero())return this.unsigned?g:v;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return g;if(e.gt(this.shru(1)))return _;o=g}else{if(this.eq(T))return e.eq(k)||e.eq(w)?T:e.eq(T)?k:(t=this.shr(1).div(e).shl(1)).eq(v)?e.isNegative()?k:w:(n=this.sub(e.mul(t)),o=t.add(n.div(e)));if(e.eq(T))return this.unsigned?g:v;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();o=v}for(n=this;n.gte(e);){t=Math.max(1,Math.floor(n.toNumber()/e.toNumber()));for(var i=Math.ceil(Math.log(t)/Math.LN2),u=i<=48?1:f(2,i-48),c=s(t),d=c.mul(e);d.isNegative()||d.gt(n);)d=(c=s(t-=u,this.unsigned)).mul(e);c.isZero()&&(c=k),o=o.add(c),n=n.sub(d)}return o},O.div=O.divide,O.modulo=function(e){return a(e)||(e=p(e)),r?l((this.unsigned?r.rem_u:r.rem_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this.sub(this.div(e).mul(e))},O.mod=O.modulo,O.rem=O.modulo,O.not=function(){return l(~this.low,~this.high,this.unsigned)},O.and=function(e){return a(e)||(e=p(e)),l(this.low&e.low,this.high&e.high,this.unsigned)},O.or=function(e){return a(e)||(e=p(e)),l(this.low|e.low,this.high|e.high,this.unsigned)},O.xor=function(e){return a(e)||(e=p(e)),l(this.low^e.low,this.high^e.high,this.unsigned)},O.shiftLeft=function(e){return a(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?l(this.low<>>32-e,this.unsigned):l(0,this.low<>>e|this.high<<32-e,this.high>>e,this.unsigned):l(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},O.shr=O.shiftRight,O.shiftRightUnsigned=function(e){if(a(e)&&(e=e.toInt()),0===(e&=63))return this;var t=this.high;return e<32?l(this.low>>>e|t<<32-e,t>>>e,this.unsigned):l(32===e?t:t>>>e-32,0,this.unsigned)},O.shru=O.shiftRightUnsigned,O.shr_u=O.shiftRightUnsigned,O.toSigned=function(){return this.unsigned?l(this.low,this.high,!1):this},O.toUnsigned=function(){return this.unsigned?this:l(this.low,this.high,!0)},O.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},O.toBytesLE=function(){var e=this.high,t=this.low;return[255&t,t>>>8&255,t>>>16&255,t>>>24,255&e,e>>>8&255,e>>>16&255,e>>>24]},O.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,255&e,t>>>24,t>>>16&255,t>>>8&255,255&t]},o.fromBytes=function(e,t,n){return n?o.fromBytesLE(e,t):o.fromBytesBE(e,t)},o.fromBytesLE=function(e,t){return new o(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)},o.fromBytesBE=function(e,t){return new o(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2)),u=r(n(107)),c=n(619),s=r(n(326)),l=r(n(16)),f=function(){function e(t){var n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar;((0,a.default)(this,e),r===s.default.Tinybar)?this._valueInTinybar=(0,c.valueToLong)(t):(n=l.default.isLong(t)?new u.default(t.toString(10)):u.default.isBigNumber(t)||"string"==typeof t||"number"==typeof t?new u.default(t):new u.default(0),this._valueInTinybar=n.multipliedBy(r._tinybar));if(!this._valueInTinybar.isInteger())throw new Error("Hbar in tinybars contains decimals")}return(0,i.default)(e,[{key:"to",value:function(e){return this._valueInTinybar.dividedBy(e._tinybar)}},{key:"toBigNumber",value:function(){return this.to(s.default.Hbar)}},{key:"toTinybars",value:function(){return l.default.fromValue(this._valueInTinybar.toFixed())}},{key:"negated",value:function(){return e.fromTinybars(this._valueInTinybar.negated())}},{key:"toString",value:function(e){return null!=e?"".concat(this._valueInTinybar.dividedBy(e._tinybar).toString()," ").concat(e._symbol):this._valueInTinybar.isLessThan(1e4)&&this._valueInTinybar.isGreaterThan(-1e4)?"".concat(this._valueInTinybar.toFixed()," ").concat(s.default.Tinybar._symbol):"".concat(this.to(s.default.Hbar).toString()," ").concat(s.default.Hbar._symbol)}}],[{key:"from",value:function(t,n){return new e(t,n)}},{key:"fromTinybars",value:function(t){return"string"==typeof t?this.fromString(t,s.default.Tinybar):new e(t,s.default.Tinybar)}},{key:"fromString",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar,r=/^((?:\+|-)?\d+(?:\.\d+)?)(?: (tℏ|μℏ|mℏ|ℏ|kℏ|Mℏ|Gℏ))?$/;if(r.test(t)){var a=t.split(" "),i=(0,o.default)(a,2),c=i[0],l=i[1];return null!=l&&(n=s.default.fromString(l)),new e(new u.default(c),n)}throw new Error("invalid argument provided")}}]),e}();t.default=f},function(e,t,n){"use strict";var r,o,a=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function u(){throw new Error("clearTimeout has not been defined")}function c(e){if(r===setTimeout)return setTimeout(e,0);if((r===i||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(t){return r.call(this,e,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:i}catch(e){r=i}try{o="function"==typeof clearTimeout?clearTimeout:u}catch(e){o=u}}();var s,l=[],f=!1,d=-1;function p(){f&&s&&(f=!1,s.length?l=s.concat(l):d=-1,l.length&&h())}function h(){if(!f){var e=c(p);f=!0;for(var t=l.length;t;){for(s=l,l=[];++d1)for(var n=1;n1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar;((0,a.default)(this,e),r===s.default.Tinybar)?this._valueInTinybar=(0,c.valueToLong)(t):(n=l.default.isLong(t)?new u.default(t.toString(10)):u.default.isBigNumber(t)||"string"==typeof t||"number"==typeof t?new u.default(t):new u.default(0),this._valueInTinybar=n.multipliedBy(r._tinybar));if(!this._valueInTinybar.isInteger())throw new Error("Hbar in tinybars contains decimals")}return(0,i.default)(e,[{key:"to",value:function(e){return this._valueInTinybar.dividedBy(e._tinybar)}},{key:"toBigNumber",value:function(){return this.to(s.default.Hbar)}},{key:"toTinybars",value:function(){return l.default.fromValue(this._valueInTinybar.toFixed())}},{key:"negated",value:function(){return e.fromTinybars(this._valueInTinybar.negated())}},{key:"toString",value:function(e){return null!=e?"".concat(this._valueInTinybar.dividedBy(e._tinybar).toString()," ").concat(e._symbol):this._valueInTinybar.isLessThan(1e4)&&this._valueInTinybar.isGreaterThan(-1e4)?"".concat(this._valueInTinybar.toFixed()," ").concat(s.default.Tinybar._symbol):"".concat(this.to(s.default.Hbar).toString()," ").concat(s.default.Hbar._symbol)}}],[{key:"from",value:function(t,n){return new e(t,n)}},{key:"fromTinybars",value:function(t){return"string"==typeof t?this.fromString(t,s.default.Tinybar):new e(t,s.default.Tinybar)}},{key:"fromString",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar,r=/^((?:\+|-)?\d+(?:\.\d+)?)(?: (tℏ|μℏ|mℏ|ℏ|kℏ|Mℏ|Gℏ))?$/;if(r.test(t)){var a=t.split(" "),i=(0,o.default)(a,2),c=i[0],l=i[1];return null!=l&&(n=s.default.fromString(l)),new e(new u.default(c),n)}throw new Error("invalid argument provided")}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(76)),i=r(n(42)),u=r(n(1)),c=r(n(2)),s=d(n(157)),l=d(n(34));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=function(){function e(t,n,r){(0,u.default)(this,e);var o=s.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){s.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return s.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{tokenNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return s.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return l.TokenID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return s.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=s.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.tokenNum?t.tokenNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TokenID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(s.fromSolidityAddress(t)))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.TransactionResponse=t.TransactionRecord=t.TransactionReceipt=t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.Writer=t.UncheckedSubmitBody=t.UInt64Value=t.UInt32Value=t.TransferList=t.TransactionResponse=t.TransactionRecord=t.TransactionReceipt=t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0;var a,i=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(329)),u=n(635),c=r(n(16));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}null==(a=i.util).Long&&(console.log("Patching Protobuf Long.js instance..."),a.Long=c.default,null!=i.Reader._configure&&i.Reader._configure(i.BufferReader));var l=i.Reader;t.Reader=l;var f=i.Writer;t.Writer=f;var d=u.proto.TokenUnitBalance;t.TokenUnitBalance=d;var p=u.proto.SingleAccountBalances;t.SingleAccountBalances=p;var h=u.proto.AllAccountBalances;t.AllAccountBalances=h;var y=u.proto.ShardID;t.ShardID=y;var b=u.proto.RealmID;t.RealmID=b;var m=u.proto.AccountID;t.AccountID=m;var v=u.proto.FileID;t.FileID=v;var g=u.proto.ContractID;t.ContractID=g;var k=u.proto.TransactionID;t.TransactionID=k;var _=u.proto.AccountAmount;t.AccountAmount=_;var w=u.proto.TransferList;t.TransferList=w;var I=u.proto.NftTransfer;t.NftTransfer=I;var A=u.proto.TokenTransferList;t.TokenTransferList=A;var T=u.proto.Fraction;t.Fraction=T;var O=u.proto.TopicID;t.TopicID=O;var E=u.proto.TokenID;t.TokenID=E;var P=u.proto.ScheduleID;t.ScheduleID=P;var S=u.proto.TokenType;t.TokenType=S;var R=u.proto.SubType;t.SubType=R;var D=u.proto.TokenSupplyType;t.TokenSupplyType=D;var C=u.proto.TokenFreezeStatus;t.TokenFreezeStatus=C;var N=u.proto.TokenKycStatus;t.TokenKycStatus=N;var B=u.proto.Key;t.Key=B;var M=u.proto.ThresholdKey;t.ThresholdKey=M;var j=u.proto.KeyList;t.KeyList=j;var x=u.proto.Signature;t.Signature=x;var F=u.proto.ThresholdSignature;t.ThresholdSignature=F;var U=u.proto.SignatureList;t.SignatureList=U;var L=u.proto.SignaturePair;t.SignaturePair=L;var K=u.proto.SignatureMap;t.SignatureMap=K;var G=u.proto.HederaFunctionality;t.HederaFunctionality=G;var z=u.proto.FeeComponents;t.FeeComponents=z;var Q=u.proto.TransactionFeeSchedule;t.TransactionFeeSchedule=Q;var H=u.proto.FeeData;t.FeeData=H;var V=u.proto.FeeSchedule;t.FeeSchedule=V;var q=u.proto.CurrentAndNextFeeSchedule;t.CurrentAndNextFeeSchedule=q;var W=u.proto.ServiceEndpoint;t.ServiceEndpoint=W;var Y=u.proto.NodeAddress;t.NodeAddress=Y;var Z=u.proto.NodeAddressBook;t.NodeAddressBook=Z;var J=u.proto.SemanticVersion;t.SemanticVersion=J;var X=u.proto.Setting;t.Setting=X;var $=u.proto.ServicesConfigurationList;t.ServicesConfigurationList=$;var ee=u.proto.TokenRelationship;t.TokenRelationship=ee;var te=u.proto.TokenBalance;t.TokenBalance=te;var ne=u.proto.TokenBalances;t.TokenBalances=ne;var re=u.proto.Timestamp;t.Timestamp=re;var oe=u.proto.TimestampSeconds;t.TimestampSeconds=oe;var ae=u.proto.ConsensusCreateTopicTransactionBody;t.ConsensusCreateTopicTransactionBody=ae;var ie=u.proto.Duration;t.Duration=ie;var ue=u.proto.ConsensusDeleteTopicTransactionBody;t.ConsensusDeleteTopicTransactionBody=ue;var ce=u.proto.ConsensusGetTopicInfoQuery;t.ConsensusGetTopicInfoQuery=ce;var se=u.proto.ConsensusGetTopicInfoResponse;t.ConsensusGetTopicInfoResponse=se;var le=u.proto.ResponseType;t.ResponseType=le;var fe=u.proto.QueryHeader;t.QueryHeader=fe;var de=u.proto.Transaction;t.Transaction=de;var pe=u.proto.TransactionBody;t.TransactionBody=pe;var he=u.proto.SystemDeleteTransactionBody;t.SystemDeleteTransactionBody=he;var ye=u.proto.SystemUndeleteTransactionBody;t.SystemUndeleteTransactionBody=ye;var be=u.proto.FreezeTransactionBody;t.FreezeTransactionBody=be;var me=u.proto.ContractCallTransactionBody;t.ContractCallTransactionBody=me;var ve=u.proto.ContractCreateTransactionBody;t.ContractCreateTransactionBody=ve;var ge=u.proto.ContractUpdateTransactionBody;t.ContractUpdateTransactionBody=ge;var ke=u.proto.LiveHash;t.LiveHash=ke;var _e=u.proto.CryptoAddLiveHashTransactionBody;t.CryptoAddLiveHashTransactionBody=_e;var we=u.proto.CryptoCreateTransactionBody;t.CryptoCreateTransactionBody=we;var Ie=u.proto.CryptoDeleteTransactionBody;t.CryptoDeleteTransactionBody=Ie;var Ae=u.proto.CryptoDeleteLiveHashTransactionBody;t.CryptoDeleteLiveHashTransactionBody=Ae;var Te=u.proto.CryptoTransferTransactionBody;t.CryptoTransferTransactionBody=Te;var Oe=u.proto.CryptoUpdateTransactionBody;t.CryptoUpdateTransactionBody=Oe;var Ee=u.proto.CryptoApproveAllowanceTransactionBody;t.CryptoApproveAllowanceTransactionBody=Ee;var Pe=u.proto.CryptoAdjustAllowanceTransactionBody;t.CryptoAdjustAllowanceTransactionBody=Pe;var Se=u.proto.FileAppendTransactionBody;t.FileAppendTransactionBody=Se;var Re=u.proto.FileCreateTransactionBody;t.FileCreateTransactionBody=Re;var De=u.proto.FileDeleteTransactionBody;t.FileDeleteTransactionBody=De;var Ce=u.proto.FileUpdateTransactionBody;t.FileUpdateTransactionBody=Ce;var Ne=u.proto.ContractDeleteTransactionBody;t.ContractDeleteTransactionBody=Ne;var Be=u.proto.ConsensusUpdateTopicTransactionBody;t.ConsensusUpdateTopicTransactionBody=Be;var Me=u.proto.ConsensusMessageChunkInfo;t.ConsensusMessageChunkInfo=Me;var je=u.proto.ConsensusSubmitMessageTransactionBody;t.ConsensusSubmitMessageTransactionBody=je;var xe=u.proto.UncheckedSubmitBody;t.UncheckedSubmitBody=xe;var Fe=u.proto.TokenCreateTransactionBody;t.TokenCreateTransactionBody=Fe;var Ue=u.proto.FractionalFee;t.FractionalFee=Ue;var Le=u.proto.FixedFee;t.FixedFee=Le;var Ke=u.proto.CustomFee;t.CustomFee=Ke;var Ge=u.proto.AssessedCustomFee;t.AssessedCustomFee=Ge;var ze=u.proto.RoyaltyFee;t.RoyaltyFee=ze;var Qe=u.proto.TokenFreezeAccountTransactionBody;t.TokenFreezeAccountTransactionBody=Qe;var He=u.proto.TokenUnfreezeAccountTransactionBody;t.TokenUnfreezeAccountTransactionBody=He;var Ve=u.proto.TokenGrantKycTransactionBody;t.TokenGrantKycTransactionBody=Ve;var qe=u.proto.TokenRevokeKycTransactionBody;t.TokenRevokeKycTransactionBody=qe;var We=u.proto.TokenDeleteTransactionBody;t.TokenDeleteTransactionBody=We;var Ye=u.proto.TokenUpdateTransactionBody;t.TokenUpdateTransactionBody=Ye;var Ze=u.proto.TokenMintTransactionBody;t.TokenMintTransactionBody=Ze;var Je=u.proto.TokenBurnTransactionBody;t.TokenBurnTransactionBody=Je;var Xe=u.proto.TokenWipeAccountTransactionBody;t.TokenWipeAccountTransactionBody=Xe;var $e=u.proto.TokenAssociateTransactionBody;t.TokenAssociateTransactionBody=$e;var et=u.proto.TokenDissociateTransactionBody;t.TokenDissociateTransactionBody=et;var tt=u.proto.TokenFeeScheduleUpdateTransactionBody;t.TokenFeeScheduleUpdateTransactionBody=tt;var nt=u.proto.ScheduleCreateTransactionBody;t.ScheduleCreateTransactionBody=nt;var rt=u.proto.SchedulableTransactionBody;t.SchedulableTransactionBody=rt;var ot=u.proto.ScheduleDeleteTransactionBody;t.ScheduleDeleteTransactionBody=ot;var at=u.proto.ScheduleSignTransactionBody;t.ScheduleSignTransactionBody=at;var it=u.proto.ResponseHeader;t.ResponseHeader=it;var ut=u.proto.TransactionResponse;t.TransactionResponse=ut;var ct=u.proto.ResponseCodeEnum;t.ResponseCodeEnum=ct;var st=u.proto.ConsensusTopicInfo;t.ConsensusTopicInfo=st;var lt=u.proto.ConsensusService;t.ConsensusService=lt;var ft=u.proto.Query;t.Query=ft;var dt=u.proto.GetByKeyQuery;t.GetByKeyQuery=dt;var pt=u.proto.EntityID;t.EntityID=pt;var ht=u.proto.GetByKeyResponse;t.GetByKeyResponse=ht;var yt=u.proto.GetBySolidityIDQuery;t.GetBySolidityIDQuery=yt;var bt=u.proto.GetBySolidityIDResponse;t.GetBySolidityIDResponse=bt;var mt=u.proto.ContractLoginfo;t.ContractLoginfo=mt;var vt=u.proto.ContractFunctionResult;t.ContractFunctionResult=vt;var gt=u.proto.ContractCallLocalQuery;t.ContractCallLocalQuery=gt;var kt=u.proto.ContractCallLocalResponse;t.ContractCallLocalResponse=kt;var _t=u.proto.ContractGetInfoQuery;t.ContractGetInfoQuery=_t;var wt=u.proto.ContractGetInfoResponse;t.ContractGetInfoResponse=wt;var It=u.proto.ContractGetInfoResponse.ContractInfo;t.ContractInfo=It;var At=u.proto.ContractGetBytecodeQuery;t.ContractGetBytecodeQuery=At;var Tt=u.proto.ContractGetBytecodeResponse;t.ContractGetBytecodeResponse=Tt;var Ot=u.proto.ContractGetRecordsQuery;t.ContractGetRecordsQuery=Ot;var Et=u.proto.ContractGetRecordsResponse;t.ContractGetRecordsResponse=Et;var Pt=u.proto.ContractStateChange;t.ContractStateChange=Pt;var St=u.proto.StorageChange;t.StorageChange=St;var Rt=u.proto.TransactionRecord;t.TransactionRecord=Rt;var Dt=u.proto.TransactionReceipt;t.TransactionReceipt=Dt;var Ct=u.proto.ExchangeRate;t.ExchangeRate=Ct;var Nt=u.proto.ExchangeRateSet;t.ExchangeRateSet=Nt;var Bt=u.proto.CryptoGetAccountBalanceQuery;t.CryptoGetAccountBalanceQuery=Bt;var Mt=u.proto.CryptoGetAccountBalanceResponse;t.CryptoGetAccountBalanceResponse=Mt;var jt=u.proto.CryptoGetAccountRecordsQuery;t.CryptoGetAccountRecordsQuery=jt;var xt=u.proto.CryptoGetAccountRecordsResponse;t.CryptoGetAccountRecordsResponse=xt;var Ft=u.proto.CryptoGetInfoQuery;t.CryptoGetInfoQuery=Ft;var Ut=u.proto.CryptoGetInfoResponse;t.CryptoGetInfoResponse=Ut;var Lt=u.proto.CryptoGetInfoResponse.AccountInfo;t.AccountInfo=Lt;var Kt=u.proto.CryptoAllowance;t.CryptoAllowance=Kt;var Gt=u.proto.TokenAllowance;t.TokenAllowance=Gt;var zt=u.proto.NftAllowance;t.NftAllowance=zt;var Qt=u.proto.CryptoGetLiveHashQuery;t.CryptoGetLiveHashQuery=Qt;var Ht=u.proto.CryptoGetLiveHashResponse;t.CryptoGetLiveHashResponse=Ht;var Vt=u.proto.CryptoGetStakersQuery;t.CryptoGetStakersQuery=Vt;var qt=u.proto.ProxyStaker;t.ProxyStaker=qt;var Wt=u.proto.AllProxyStakers;t.AllProxyStakers=Wt;var Yt=u.proto.CryptoGetStakersResponse;t.CryptoGetStakersResponse=Yt;var Zt=u.proto.FileGetContentsQuery;t.FileGetContentsQuery=Zt;var Jt=u.proto.FileGetContentsResponse;t.FileGetContentsResponse=Jt;var Xt=u.proto.FileGetContentsResponse.FileContents;t.FileContents=Xt;var $t=u.proto.FileGetInfoQuery;t.FileGetInfoQuery=$t;var en=u.proto.FileGetInfoResponse;t.FileGetInfoResponse=en;var tn=u.proto.FileGetInfoResponse.FileInfo;t.FileInfo=tn;var nn=u.proto.TransactionGetReceiptQuery;t.TransactionGetReceiptQuery=nn;var rn=u.proto.TransactionGetReceiptResponse;t.TransactionGetReceiptResponse=rn;var on=u.proto.TransactionGetRecordQuery;t.TransactionGetRecordQuery=on;var an=u.proto.TransactionGetRecordResponse;t.TransactionGetRecordResponse=an;var un=u.proto.TransactionGetFastRecordQuery;t.TransactionGetFastRecordQuery=un;var cn=u.proto.TransactionGetFastRecordResponse;t.TransactionGetFastRecordResponse=cn;var sn=u.proto.NetworkGetVersionInfoQuery;t.NetworkGetVersionInfoQuery=sn;var ln=u.proto.NetworkGetVersionInfoResponse;t.NetworkGetVersionInfoResponse=ln;var fn=u.proto.TokenGetInfoQuery;t.TokenGetInfoQuery=fn;var dn=u.proto.TokenInfo;t.TokenInfo=dn;var pn=u.proto.TokenGetInfoResponse;t.TokenGetInfoResponse=pn;var hn=u.proto.ScheduleGetInfoQuery;t.ScheduleGetInfoQuery=hn;var yn=u.proto.ScheduleInfo;t.ScheduleInfo=yn;var bn=u.proto.ScheduleGetInfoResponse;t.ScheduleGetInfoResponse=bn;var mn=u.proto.TokenGetAccountNftInfosQuery;t.TokenGetAccountNftInfosQuery=mn;var vn=u.proto.TokenGetAccountNftInfosResponse;t.TokenGetAccountNftInfosResponse=vn;var gn=u.proto.NftID;t.NftID=gn;var kn=u.proto.TokenGetNftInfoQuery;t.TokenGetNftInfoQuery=kn;var _n=u.proto.TokenNftInfo;t.TokenNftInfo=_n;var wn=u.proto.TokenGetNftInfoResponse;t.TokenGetNftInfoResponse=wn;var In=u.proto.TokenGetNftInfosQuery;t.TokenGetNftInfosQuery=In;var An=u.proto.TokenGetNftInfosResponse;t.TokenGetNftInfosResponse=An;var Tn=u.proto.Response;t.Response=Tn;var On=u.proto.CryptoService;t.CryptoService=On;var En=u.proto.FileService;t.FileService=En;var Pn=u.proto.FreezeService;t.FreezeService=Pn;var Sn=u.proto.ConsensusTopicQuery;t.ConsensusTopicQuery=Sn;var Rn=u.proto.ConsensusTopicResponse;t.ConsensusTopicResponse=Rn;var Dn=u.proto.MirrorConsensusService;t.MirrorConsensusService=Dn;var Cn=u.proto.NetworkService;t.NetworkService=Cn;var Nn=u.proto.ScheduleService;t.ScheduleService=Nn;var Bn=u.proto.SmartContractService;t.SmartContractService=Bn;var Mn=u.proto.ThrottleGroup;t.ThrottleGroup=Mn;var jn=u.proto.ThrottleBucket;t.ThrottleBucket=jn;var xn=u.proto.ThrottleDefinitions;t.ThrottleDefinitions=xn;var Fn=u.proto.TokenService;t.TokenService=Fn;var Un=u.proto.SignedTransaction;t.SignedTransaction=Un;var Ln=u.proto.TransactionList;t.TransactionList=Ln;var Kn=u.proto.DoubleValue;t.DoubleValue=Kn;var Gn=u.proto.FloatValue;t.FloatValue=Gn;var zn=u.proto.UInt64Value;t.UInt64Value=zn;var Qn=u.proto.UInt32Value;t.UInt32Value=Qn;var Hn=u.proto.BoolValue;t.BoolValue=Hn;var Vn=u.proto.StringValue;t.StringValue=Vn;var qn=u.proto.BytesValue;t.BytesValue=qn;var Wn=u.proto.TokenPauseTransactionBody;t.TokenPauseTransactionBody=Wn;var Yn=u.proto.TokenUnpauseTransactionBody;t.TokenUnpauseTransactionBody=Yn;var Zn=u.proto.TokenPauseStatus;t.TokenPauseStatus=Zn;var Jn=u.proto.FreezeType;t.FreezeType=Jn;var Xn=u.proto.AddressBookQuery;t.AddressBookQuery=Xn;var $n=u.proto.MirrorNetworkService;t.MirrorNetworkService=$n},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.TransactionResponse=t.TransactionRecord=t.TransactionReceipt=t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.Writer=t.UncheckedSubmitBody=t.UInt64Value=t.UInt32Value=t.TransferList=t.TransactionResponse=t.TransactionRecord=t.TransactionReceipt=t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0;var a,i=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(424)),u=n(856),c=r(n(17));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}null==(a=i.util).Long&&(console.log("Patching Protobuf Long.js instance..."),a.Long=c.default,null!=i.Reader._configure&&i.Reader._configure(i.BufferReader));var l=i.Reader;t.Reader=l;var f=i.Writer;t.Writer=f;var d=u.proto.TokenUnitBalance;t.TokenUnitBalance=d;var p=u.proto.SingleAccountBalances;t.SingleAccountBalances=p;var h=u.proto.AllAccountBalances;t.AllAccountBalances=h;var y=u.proto.ShardID;t.ShardID=y;var b=u.proto.RealmID;t.RealmID=b;var m=u.proto.AccountID;t.AccountID=m;var v=u.proto.FileID;t.FileID=v;var g=u.proto.ContractID;t.ContractID=g;var k=u.proto.TransactionID;t.TransactionID=k;var _=u.proto.AccountAmount;t.AccountAmount=_;var w=u.proto.TransferList;t.TransferList=w;var I=u.proto.NftTransfer;t.NftTransfer=I;var A=u.proto.TokenTransferList;t.TokenTransferList=A;var T=u.proto.Fraction;t.Fraction=T;var O=u.proto.TopicID;t.TopicID=O;var E=u.proto.TokenID;t.TokenID=E;var P=u.proto.ScheduleID;t.ScheduleID=P;var S=u.proto.TokenType;t.TokenType=S;var R=u.proto.SubType;t.SubType=R;var D=u.proto.TokenSupplyType;t.TokenSupplyType=D;var C=u.proto.TokenFreezeStatus;t.TokenFreezeStatus=C;var N=u.proto.TokenKycStatus;t.TokenKycStatus=N;var B=u.proto.Key;t.Key=B;var M=u.proto.ThresholdKey;t.ThresholdKey=M;var j=u.proto.KeyList;t.KeyList=j;var x=u.proto.Signature;t.Signature=x;var F=u.proto.ThresholdSignature;t.ThresholdSignature=F;var U=u.proto.SignatureList;t.SignatureList=U;var L=u.proto.SignaturePair;t.SignaturePair=L;var K=u.proto.SignatureMap;t.SignatureMap=K;var G=u.proto.HederaFunctionality;t.HederaFunctionality=G;var z=u.proto.FeeComponents;t.FeeComponents=z;var Q=u.proto.TransactionFeeSchedule;t.TransactionFeeSchedule=Q;var H=u.proto.FeeData;t.FeeData=H;var V=u.proto.FeeSchedule;t.FeeSchedule=V;var q=u.proto.CurrentAndNextFeeSchedule;t.CurrentAndNextFeeSchedule=q;var W=u.proto.ServiceEndpoint;t.ServiceEndpoint=W;var Y=u.proto.NodeAddress;t.NodeAddress=Y;var Z=u.proto.NodeAddressBook;t.NodeAddressBook=Z;var J=u.proto.SemanticVersion;t.SemanticVersion=J;var X=u.proto.Setting;t.Setting=X;var $=u.proto.ServicesConfigurationList;t.ServicesConfigurationList=$;var ee=u.proto.TokenRelationship;t.TokenRelationship=ee;var te=u.proto.TokenBalance;t.TokenBalance=te;var ne=u.proto.TokenBalances;t.TokenBalances=ne;var re=u.proto.Timestamp;t.Timestamp=re;var oe=u.proto.TimestampSeconds;t.TimestampSeconds=oe;var ae=u.proto.ConsensusCreateTopicTransactionBody;t.ConsensusCreateTopicTransactionBody=ae;var ie=u.proto.Duration;t.Duration=ie;var ue=u.proto.ConsensusDeleteTopicTransactionBody;t.ConsensusDeleteTopicTransactionBody=ue;var ce=u.proto.ConsensusGetTopicInfoQuery;t.ConsensusGetTopicInfoQuery=ce;var se=u.proto.ConsensusGetTopicInfoResponse;t.ConsensusGetTopicInfoResponse=se;var le=u.proto.ResponseType;t.ResponseType=le;var fe=u.proto.QueryHeader;t.QueryHeader=fe;var de=u.proto.Transaction;t.Transaction=de;var pe=u.proto.TransactionBody;t.TransactionBody=pe;var he=u.proto.SystemDeleteTransactionBody;t.SystemDeleteTransactionBody=he;var ye=u.proto.SystemUndeleteTransactionBody;t.SystemUndeleteTransactionBody=ye;var be=u.proto.FreezeTransactionBody;t.FreezeTransactionBody=be;var me=u.proto.ContractCallTransactionBody;t.ContractCallTransactionBody=me;var ve=u.proto.ContractCreateTransactionBody;t.ContractCreateTransactionBody=ve;var ge=u.proto.ContractUpdateTransactionBody;t.ContractUpdateTransactionBody=ge;var ke=u.proto.LiveHash;t.LiveHash=ke;var _e=u.proto.CryptoAddLiveHashTransactionBody;t.CryptoAddLiveHashTransactionBody=_e;var we=u.proto.CryptoCreateTransactionBody;t.CryptoCreateTransactionBody=we;var Ie=u.proto.CryptoDeleteTransactionBody;t.CryptoDeleteTransactionBody=Ie;var Ae=u.proto.CryptoDeleteLiveHashTransactionBody;t.CryptoDeleteLiveHashTransactionBody=Ae;var Te=u.proto.CryptoTransferTransactionBody;t.CryptoTransferTransactionBody=Te;var Oe=u.proto.CryptoUpdateTransactionBody;t.CryptoUpdateTransactionBody=Oe;var Ee=u.proto.CryptoApproveAllowanceTransactionBody;t.CryptoApproveAllowanceTransactionBody=Ee;var Pe=u.proto.CryptoAdjustAllowanceTransactionBody;t.CryptoAdjustAllowanceTransactionBody=Pe;var Se=u.proto.FileAppendTransactionBody;t.FileAppendTransactionBody=Se;var Re=u.proto.FileCreateTransactionBody;t.FileCreateTransactionBody=Re;var De=u.proto.FileDeleteTransactionBody;t.FileDeleteTransactionBody=De;var Ce=u.proto.FileUpdateTransactionBody;t.FileUpdateTransactionBody=Ce;var Ne=u.proto.ContractDeleteTransactionBody;t.ContractDeleteTransactionBody=Ne;var Be=u.proto.ConsensusUpdateTopicTransactionBody;t.ConsensusUpdateTopicTransactionBody=Be;var Me=u.proto.ConsensusMessageChunkInfo;t.ConsensusMessageChunkInfo=Me;var je=u.proto.ConsensusSubmitMessageTransactionBody;t.ConsensusSubmitMessageTransactionBody=je;var xe=u.proto.UncheckedSubmitBody;t.UncheckedSubmitBody=xe;var Fe=u.proto.TokenCreateTransactionBody;t.TokenCreateTransactionBody=Fe;var Ue=u.proto.FractionalFee;t.FractionalFee=Ue;var Le=u.proto.FixedFee;t.FixedFee=Le;var Ke=u.proto.CustomFee;t.CustomFee=Ke;var Ge=u.proto.AssessedCustomFee;t.AssessedCustomFee=Ge;var ze=u.proto.RoyaltyFee;t.RoyaltyFee=ze;var Qe=u.proto.TokenFreezeAccountTransactionBody;t.TokenFreezeAccountTransactionBody=Qe;var He=u.proto.TokenUnfreezeAccountTransactionBody;t.TokenUnfreezeAccountTransactionBody=He;var Ve=u.proto.TokenGrantKycTransactionBody;t.TokenGrantKycTransactionBody=Ve;var qe=u.proto.TokenRevokeKycTransactionBody;t.TokenRevokeKycTransactionBody=qe;var We=u.proto.TokenDeleteTransactionBody;t.TokenDeleteTransactionBody=We;var Ye=u.proto.TokenUpdateTransactionBody;t.TokenUpdateTransactionBody=Ye;var Ze=u.proto.TokenMintTransactionBody;t.TokenMintTransactionBody=Ze;var Je=u.proto.TokenBurnTransactionBody;t.TokenBurnTransactionBody=Je;var Xe=u.proto.TokenWipeAccountTransactionBody;t.TokenWipeAccountTransactionBody=Xe;var $e=u.proto.TokenAssociateTransactionBody;t.TokenAssociateTransactionBody=$e;var et=u.proto.TokenDissociateTransactionBody;t.TokenDissociateTransactionBody=et;var tt=u.proto.TokenFeeScheduleUpdateTransactionBody;t.TokenFeeScheduleUpdateTransactionBody=tt;var nt=u.proto.ScheduleCreateTransactionBody;t.ScheduleCreateTransactionBody=nt;var rt=u.proto.SchedulableTransactionBody;t.SchedulableTransactionBody=rt;var ot=u.proto.ScheduleDeleteTransactionBody;t.ScheduleDeleteTransactionBody=ot;var at=u.proto.ScheduleSignTransactionBody;t.ScheduleSignTransactionBody=at;var it=u.proto.ResponseHeader;t.ResponseHeader=it;var ut=u.proto.TransactionResponse;t.TransactionResponse=ut;var ct=u.proto.ResponseCodeEnum;t.ResponseCodeEnum=ct;var st=u.proto.ConsensusTopicInfo;t.ConsensusTopicInfo=st;var lt=u.proto.ConsensusService;t.ConsensusService=lt;var ft=u.proto.Query;t.Query=ft;var dt=u.proto.GetByKeyQuery;t.GetByKeyQuery=dt;var pt=u.proto.EntityID;t.EntityID=pt;var ht=u.proto.GetByKeyResponse;t.GetByKeyResponse=ht;var yt=u.proto.GetBySolidityIDQuery;t.GetBySolidityIDQuery=yt;var bt=u.proto.GetBySolidityIDResponse;t.GetBySolidityIDResponse=bt;var mt=u.proto.ContractLoginfo;t.ContractLoginfo=mt;var vt=u.proto.ContractFunctionResult;t.ContractFunctionResult=vt;var gt=u.proto.ContractCallLocalQuery;t.ContractCallLocalQuery=gt;var kt=u.proto.ContractCallLocalResponse;t.ContractCallLocalResponse=kt;var _t=u.proto.ContractGetInfoQuery;t.ContractGetInfoQuery=_t;var wt=u.proto.ContractGetInfoResponse;t.ContractGetInfoResponse=wt;var It=u.proto.ContractGetInfoResponse.ContractInfo;t.ContractInfo=It;var At=u.proto.ContractGetBytecodeQuery;t.ContractGetBytecodeQuery=At;var Tt=u.proto.ContractGetBytecodeResponse;t.ContractGetBytecodeResponse=Tt;var Ot=u.proto.ContractGetRecordsQuery;t.ContractGetRecordsQuery=Ot;var Et=u.proto.ContractGetRecordsResponse;t.ContractGetRecordsResponse=Et;var Pt=u.proto.ContractStateChange;t.ContractStateChange=Pt;var St=u.proto.StorageChange;t.StorageChange=St;var Rt=u.proto.TransactionRecord;t.TransactionRecord=Rt;var Dt=u.proto.TransactionReceipt;t.TransactionReceipt=Dt;var Ct=u.proto.ExchangeRate;t.ExchangeRate=Ct;var Nt=u.proto.ExchangeRateSet;t.ExchangeRateSet=Nt;var Bt=u.proto.CryptoGetAccountBalanceQuery;t.CryptoGetAccountBalanceQuery=Bt;var Mt=u.proto.CryptoGetAccountBalanceResponse;t.CryptoGetAccountBalanceResponse=Mt;var jt=u.proto.CryptoGetAccountRecordsQuery;t.CryptoGetAccountRecordsQuery=jt;var xt=u.proto.CryptoGetAccountRecordsResponse;t.CryptoGetAccountRecordsResponse=xt;var Ft=u.proto.CryptoGetInfoQuery;t.CryptoGetInfoQuery=Ft;var Ut=u.proto.CryptoGetInfoResponse;t.CryptoGetInfoResponse=Ut;var Lt=u.proto.CryptoGetInfoResponse.AccountInfo;t.AccountInfo=Lt;var Kt=u.proto.CryptoAllowance;t.CryptoAllowance=Kt;var Gt=u.proto.TokenAllowance;t.TokenAllowance=Gt;var zt=u.proto.NftAllowance;t.NftAllowance=zt;var Qt=u.proto.CryptoGetLiveHashQuery;t.CryptoGetLiveHashQuery=Qt;var Ht=u.proto.CryptoGetLiveHashResponse;t.CryptoGetLiveHashResponse=Ht;var Vt=u.proto.CryptoGetStakersQuery;t.CryptoGetStakersQuery=Vt;var qt=u.proto.ProxyStaker;t.ProxyStaker=qt;var Wt=u.proto.AllProxyStakers;t.AllProxyStakers=Wt;var Yt=u.proto.CryptoGetStakersResponse;t.CryptoGetStakersResponse=Yt;var Zt=u.proto.FileGetContentsQuery;t.FileGetContentsQuery=Zt;var Jt=u.proto.FileGetContentsResponse;t.FileGetContentsResponse=Jt;var Xt=u.proto.FileGetContentsResponse.FileContents;t.FileContents=Xt;var $t=u.proto.FileGetInfoQuery;t.FileGetInfoQuery=$t;var en=u.proto.FileGetInfoResponse;t.FileGetInfoResponse=en;var tn=u.proto.FileGetInfoResponse.FileInfo;t.FileInfo=tn;var nn=u.proto.TransactionGetReceiptQuery;t.TransactionGetReceiptQuery=nn;var rn=u.proto.TransactionGetReceiptResponse;t.TransactionGetReceiptResponse=rn;var on=u.proto.TransactionGetRecordQuery;t.TransactionGetRecordQuery=on;var an=u.proto.TransactionGetRecordResponse;t.TransactionGetRecordResponse=an;var un=u.proto.TransactionGetFastRecordQuery;t.TransactionGetFastRecordQuery=un;var cn=u.proto.TransactionGetFastRecordResponse;t.TransactionGetFastRecordResponse=cn;var sn=u.proto.NetworkGetVersionInfoQuery;t.NetworkGetVersionInfoQuery=sn;var ln=u.proto.NetworkGetVersionInfoResponse;t.NetworkGetVersionInfoResponse=ln;var fn=u.proto.TokenGetInfoQuery;t.TokenGetInfoQuery=fn;var dn=u.proto.TokenInfo;t.TokenInfo=dn;var pn=u.proto.TokenGetInfoResponse;t.TokenGetInfoResponse=pn;var hn=u.proto.ScheduleGetInfoQuery;t.ScheduleGetInfoQuery=hn;var yn=u.proto.ScheduleInfo;t.ScheduleInfo=yn;var bn=u.proto.ScheduleGetInfoResponse;t.ScheduleGetInfoResponse=bn;var mn=u.proto.TokenGetAccountNftInfosQuery;t.TokenGetAccountNftInfosQuery=mn;var vn=u.proto.TokenGetAccountNftInfosResponse;t.TokenGetAccountNftInfosResponse=vn;var gn=u.proto.NftID;t.NftID=gn;var kn=u.proto.TokenGetNftInfoQuery;t.TokenGetNftInfoQuery=kn;var _n=u.proto.TokenNftInfo;t.TokenNftInfo=_n;var wn=u.proto.TokenGetNftInfoResponse;t.TokenGetNftInfoResponse=wn;var In=u.proto.TokenGetNftInfosQuery;t.TokenGetNftInfosQuery=In;var An=u.proto.TokenGetNftInfosResponse;t.TokenGetNftInfosResponse=An;var Tn=u.proto.Response;t.Response=Tn;var On=u.proto.CryptoService;t.CryptoService=On;var En=u.proto.FileService;t.FileService=En;var Pn=u.proto.FreezeService;t.FreezeService=Pn;var Sn=u.proto.ConsensusTopicQuery;t.ConsensusTopicQuery=Sn;var Rn=u.proto.ConsensusTopicResponse;t.ConsensusTopicResponse=Rn;var Dn=u.proto.MirrorConsensusService;t.MirrorConsensusService=Dn;var Cn=u.proto.NetworkService;t.NetworkService=Cn;var Nn=u.proto.ScheduleService;t.ScheduleService=Nn;var Bn=u.proto.SmartContractService;t.SmartContractService=Bn;var Mn=u.proto.ThrottleGroup;t.ThrottleGroup=Mn;var jn=u.proto.ThrottleBucket;t.ThrottleBucket=jn;var xn=u.proto.ThrottleDefinitions;t.ThrottleDefinitions=xn;var Fn=u.proto.TokenService;t.TokenService=Fn;var Un=u.proto.SignedTransaction;t.SignedTransaction=Un;var Ln=u.proto.TransactionList;t.TransactionList=Ln;var Kn=u.proto.DoubleValue;t.DoubleValue=Kn;var Gn=u.proto.FloatValue;t.FloatValue=Gn;var zn=u.proto.UInt64Value;t.UInt64Value=zn;var Qn=u.proto.UInt32Value;t.UInt32Value=Qn;var Hn=u.proto.BoolValue;t.BoolValue=Hn;var Vn=u.proto.StringValue;t.StringValue=Vn;var qn=u.proto.BytesValue;t.BytesValue=qn;var Wn=u.proto.TokenPauseTransactionBody;t.TokenPauseTransactionBody=Wn;var Yn=u.proto.TokenUnpauseTransactionBody;t.TokenUnpauseTransactionBody=Yn;var Zn=u.proto.TokenPauseStatus;t.TokenPauseStatus=Zn;var Jn=u.proto.FreezeType;t.FreezeType=Jn;var Xn=u.proto.AddressBookQuery;t.AddressBookQuery=Xn;var $n=u.proto.MirrorNetworkService;t.MirrorNetworkService=$n},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2)),u=r(n(126)),c=n(1071),s=r(n(527)),l=r(n(25)),f=function(){function e(t){var n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar;((0,a.default)(this,e),r===s.default.Tinybar)?this._valueInTinybar=(0,c.valueToLong)(t):(n=l.default.isLong(t)?new u.default(t.toString(10)):u.default.isBigNumber(t)||"string"==typeof t||"number"==typeof t?new u.default(t):new u.default(0),this._valueInTinybar=n.multipliedBy(r._tinybar));if(!this._valueInTinybar.isInteger())throw new Error("Hbar in tinybars contains decimals")}return(0,i.default)(e,[{key:"to",value:function(e){return this._valueInTinybar.dividedBy(e._tinybar)}},{key:"toBigNumber",value:function(){return this.to(s.default.Hbar)}},{key:"toTinybars",value:function(){return l.default.fromValue(this._valueInTinybar.toFixed())}},{key:"negated",value:function(){return e.fromTinybars(this._valueInTinybar.negated())}},{key:"toString",value:function(e){return null!=e?"".concat(this._valueInTinybar.dividedBy(e._tinybar).toString()," ").concat(e._symbol):this._valueInTinybar.isLessThan(1e4)&&this._valueInTinybar.isGreaterThan(-1e4)?"".concat(this._valueInTinybar.toFixed()," ").concat(s.default.Tinybar._symbol):"".concat(this.to(s.default.Hbar).toString()," ").concat(s.default.Hbar._symbol)}}],[{key:"from",value:function(t,n){return new e(t,n)}},{key:"fromTinybars",value:function(t){return"string"==typeof t?this.fromString(t,s.default.Tinybar):new e(t,s.default.Tinybar)}},{key:"fromString",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar,r=/^((?:\+|-)?\d+(?:\.\d+)?)(?: (tℏ|μℏ|mℏ|ℏ|kℏ|Mℏ|Gℏ))?$/;if(r.test(t)){var a=t.split(" "),i=(0,o.default)(a,2),c=i[0],l=i[1];return null!=l&&(n=s.default.fromString(l)),new e(new u.default(c),n)}throw new Error("invalid argument provided")}}]),e}();t.default=f},function(e,t,n){"use strict";var r,o=n(0)(n(3));r=function(){return this}();try{r=r||new Function("return this")()}catch(e){"object"===("undefined"==typeof window?"undefined":(0,o.default)(window))&&(r=window)}e.exports=r},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.Writer=t.UncheckedSubmitBody=t.UInt64Value=t.UInt32Value=t.TransferList=t.TransactionResponse=t.TransactionRecord=t.TransactionReceipt=t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AccountInfo=t.AccountID=t.AccountAmount=void 0;var o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=i(t);if(n&&n.has(e))return n.get(e);var o={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=a?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}o.default=e,n&&n.set(e,o);return o}(n(528)),a=n(1087);function i(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(i=function(e){return e?n:t})(e)}var u=o.Reader;t.Reader=u;var c=o.Writer;t.Writer=c;var s=a.proto.TokenUnitBalance;t.TokenUnitBalance=s;var l=a.proto.SingleAccountBalances;t.SingleAccountBalances=l;var f=a.proto.AllAccountBalances;t.AllAccountBalances=f;var d=a.proto.ShardID;t.ShardID=d;var p=a.proto.RealmID;t.RealmID=p;var h=a.proto.AccountID;t.AccountID=h;var y=a.proto.FileID;t.FileID=y;var b=a.proto.ContractID;t.ContractID=b;var m=a.proto.TransactionID;t.TransactionID=m;var v=a.proto.AccountAmount;t.AccountAmount=v;var g=a.proto.TransferList;t.TransferList=g;var k=a.proto.NftTransfer;t.NftTransfer=k;var _=a.proto.TokenTransferList;t.TokenTransferList=_;var w=a.proto.Fraction;t.Fraction=w;var I=a.proto.TopicID;t.TopicID=I;var A=a.proto.TokenID;t.TokenID=A;var T=a.proto.ScheduleID;t.ScheduleID=T;var O=a.proto.TokenType;t.TokenType=O;var E=a.proto.SubType;t.SubType=E;var P=a.proto.TokenSupplyType;t.TokenSupplyType=P;var S=a.proto.TokenFreezeStatus;t.TokenFreezeStatus=S;var R=a.proto.TokenKycStatus;t.TokenKycStatus=R;var D=a.proto.Key;t.Key=D;var C=a.proto.ThresholdKey;t.ThresholdKey=C;var N=a.proto.KeyList;t.KeyList=N;var B=a.proto.Signature;t.Signature=B;var M=a.proto.ThresholdSignature;t.ThresholdSignature=M;var j=a.proto.SignatureList;t.SignatureList=j;var x=a.proto.SignaturePair;t.SignaturePair=x;var F=a.proto.SignatureMap;t.SignatureMap=F;var U=a.proto.HederaFunctionality;t.HederaFunctionality=U;var L=a.proto.FeeComponents;t.FeeComponents=L;var K=a.proto.TransactionFeeSchedule;t.TransactionFeeSchedule=K;var G=a.proto.FeeData;t.FeeData=G;var z=a.proto.FeeSchedule;t.FeeSchedule=z;var Q=a.proto.CurrentAndNextFeeSchedule;t.CurrentAndNextFeeSchedule=Q;var H=a.proto.ServiceEndpoint;t.ServiceEndpoint=H;var V=a.proto.NodeAddress;t.NodeAddress=V;var q=a.proto.NodeAddressBook;t.NodeAddressBook=q;var W=a.proto.SemanticVersion;t.SemanticVersion=W;var Y=a.proto.Setting;t.Setting=Y;var Z=a.proto.ServicesConfigurationList;t.ServicesConfigurationList=Z;var J=a.proto.TokenRelationship;t.TokenRelationship=J;var X=a.proto.TokenBalance;t.TokenBalance=X;var $=a.proto.TokenBalances;t.TokenBalances=$;var ee=a.proto.Timestamp;t.Timestamp=ee;var te=a.proto.TimestampSeconds;t.TimestampSeconds=te;var ne=a.proto.ConsensusCreateTopicTransactionBody;t.ConsensusCreateTopicTransactionBody=ne;var re=a.proto.Duration;t.Duration=re;var oe=a.proto.ConsensusDeleteTopicTransactionBody;t.ConsensusDeleteTopicTransactionBody=oe;var ae=a.proto.ConsensusGetTopicInfoQuery;t.ConsensusGetTopicInfoQuery=ae;var ie=a.proto.ConsensusGetTopicInfoResponse;t.ConsensusGetTopicInfoResponse=ie;var ue=a.proto.ResponseType;t.ResponseType=ue;var ce=a.proto.QueryHeader;t.QueryHeader=ce;var se=a.proto.Transaction;t.Transaction=se;var le=a.proto.TransactionBody;t.TransactionBody=le;var fe=a.proto.SystemDeleteTransactionBody;t.SystemDeleteTransactionBody=fe;var de=a.proto.SystemUndeleteTransactionBody;t.SystemUndeleteTransactionBody=de;var pe=a.proto.FreezeTransactionBody;t.FreezeTransactionBody=pe;var he=a.proto.ContractCallTransactionBody;t.ContractCallTransactionBody=he;var ye=a.proto.ContractCreateTransactionBody;t.ContractCreateTransactionBody=ye;var be=a.proto.ContractUpdateTransactionBody;t.ContractUpdateTransactionBody=be;var me=a.proto.LiveHash;t.LiveHash=me;var ve=a.proto.CryptoAddLiveHashTransactionBody;t.CryptoAddLiveHashTransactionBody=ve;var ge=a.proto.CryptoCreateTransactionBody;t.CryptoCreateTransactionBody=ge;var ke=a.proto.CryptoDeleteTransactionBody;t.CryptoDeleteTransactionBody=ke;var _e=a.proto.CryptoDeleteLiveHashTransactionBody;t.CryptoDeleteLiveHashTransactionBody=_e;var we=a.proto.CryptoTransferTransactionBody;t.CryptoTransferTransactionBody=we;var Ie=a.proto.CryptoUpdateTransactionBody;t.CryptoUpdateTransactionBody=Ie;var Ae=a.proto.FileAppendTransactionBody;t.FileAppendTransactionBody=Ae;var Te=a.proto.FileCreateTransactionBody;t.FileCreateTransactionBody=Te;var Oe=a.proto.FileDeleteTransactionBody;t.FileDeleteTransactionBody=Oe;var Ee=a.proto.FileUpdateTransactionBody;t.FileUpdateTransactionBody=Ee;var Pe=a.proto.ContractDeleteTransactionBody;t.ContractDeleteTransactionBody=Pe;var Se=a.proto.ConsensusUpdateTopicTransactionBody;t.ConsensusUpdateTopicTransactionBody=Se;var Re=a.proto.ConsensusMessageChunkInfo;t.ConsensusMessageChunkInfo=Re;var De=a.proto.ConsensusSubmitMessageTransactionBody;t.ConsensusSubmitMessageTransactionBody=De;var Ce=a.proto.UncheckedSubmitBody;t.UncheckedSubmitBody=Ce;var Ne=a.proto.TokenCreateTransactionBody;t.TokenCreateTransactionBody=Ne;var Be=a.proto.FractionalFee;t.FractionalFee=Be;var Me=a.proto.FixedFee;t.FixedFee=Me;var je=a.proto.CustomFee;t.CustomFee=je;var xe=a.proto.AssessedCustomFee;t.AssessedCustomFee=xe;var Fe=a.proto.RoyaltyFee;t.RoyaltyFee=Fe;var Ue=a.proto.TokenFreezeAccountTransactionBody;t.TokenFreezeAccountTransactionBody=Ue;var Le=a.proto.TokenUnfreezeAccountTransactionBody;t.TokenUnfreezeAccountTransactionBody=Le;var Ke=a.proto.TokenGrantKycTransactionBody;t.TokenGrantKycTransactionBody=Ke;var Ge=a.proto.TokenRevokeKycTransactionBody;t.TokenRevokeKycTransactionBody=Ge;var ze=a.proto.TokenDeleteTransactionBody;t.TokenDeleteTransactionBody=ze;var Qe=a.proto.TokenUpdateTransactionBody;t.TokenUpdateTransactionBody=Qe;var He=a.proto.TokenMintTransactionBody;t.TokenMintTransactionBody=He;var Ve=a.proto.TokenBurnTransactionBody;t.TokenBurnTransactionBody=Ve;var qe=a.proto.TokenWipeAccountTransactionBody;t.TokenWipeAccountTransactionBody=qe;var We=a.proto.TokenAssociateTransactionBody;t.TokenAssociateTransactionBody=We;var Ye=a.proto.TokenDissociateTransactionBody;t.TokenDissociateTransactionBody=Ye;var Ze=a.proto.TokenFeeScheduleUpdateTransactionBody;t.TokenFeeScheduleUpdateTransactionBody=Ze;var Je=a.proto.ScheduleCreateTransactionBody;t.ScheduleCreateTransactionBody=Je;var Xe=a.proto.SchedulableTransactionBody;t.SchedulableTransactionBody=Xe;var $e=a.proto.ScheduleDeleteTransactionBody;t.ScheduleDeleteTransactionBody=$e;var et=a.proto.ScheduleSignTransactionBody;t.ScheduleSignTransactionBody=et;var tt=a.proto.ResponseHeader;t.ResponseHeader=tt;var nt=a.proto.TransactionResponse;t.TransactionResponse=nt;var rt=a.proto.ResponseCodeEnum;t.ResponseCodeEnum=rt;var ot=a.proto.ConsensusTopicInfo;t.ConsensusTopicInfo=ot;var at=a.proto.ConsensusService;t.ConsensusService=at;var it=a.proto.Query;t.Query=it;var ut=a.proto.GetByKeyQuery;t.GetByKeyQuery=ut;var ct=a.proto.EntityID;t.EntityID=ct;var st=a.proto.GetByKeyResponse;t.GetByKeyResponse=st;var lt=a.proto.GetBySolidityIDQuery;t.GetBySolidityIDQuery=lt;var ft=a.proto.GetBySolidityIDResponse;t.GetBySolidityIDResponse=ft;var dt=a.proto.ContractLoginfo;t.ContractLoginfo=dt;var pt=a.proto.ContractFunctionResult;t.ContractFunctionResult=pt;var ht=a.proto.ContractCallLocalQuery;t.ContractCallLocalQuery=ht;var yt=a.proto.ContractCallLocalResponse;t.ContractCallLocalResponse=yt;var bt=a.proto.ContractGetInfoQuery;t.ContractGetInfoQuery=bt;var mt=a.proto.ContractGetInfoResponse;t.ContractGetInfoResponse=mt;var vt=a.proto.ContractGetInfoResponse.ContractInfo;t.ContractInfo=vt;var gt=a.proto.ContractGetBytecodeQuery;t.ContractGetBytecodeQuery=gt;var kt=a.proto.ContractGetBytecodeResponse;t.ContractGetBytecodeResponse=kt;var _t=a.proto.ContractGetRecordsQuery;t.ContractGetRecordsQuery=_t;var wt=a.proto.ContractGetRecordsResponse;t.ContractGetRecordsResponse=wt;var It=a.proto.TransactionRecord;t.TransactionRecord=It;var At=a.proto.TransactionReceipt;t.TransactionReceipt=At;var Tt=a.proto.ExchangeRate;t.ExchangeRate=Tt;var Ot=a.proto.ExchangeRateSet;t.ExchangeRateSet=Ot;var Et=a.proto.CryptoGetAccountBalanceQuery;t.CryptoGetAccountBalanceQuery=Et;var Pt=a.proto.CryptoGetAccountBalanceResponse;t.CryptoGetAccountBalanceResponse=Pt;var St=a.proto.CryptoGetAccountRecordsQuery;t.CryptoGetAccountRecordsQuery=St;var Rt=a.proto.CryptoGetAccountRecordsResponse;t.CryptoGetAccountRecordsResponse=Rt;var Dt=a.proto.CryptoGetInfoQuery;t.CryptoGetInfoQuery=Dt;var Ct=a.proto.CryptoGetInfoResponse;t.CryptoGetInfoResponse=Ct;var Nt=a.proto.CryptoGetInfoResponse.AccountInfo;t.AccountInfo=Nt;var Bt=a.proto.CryptoGetLiveHashQuery;t.CryptoGetLiveHashQuery=Bt;var Mt=a.proto.CryptoGetLiveHashResponse;t.CryptoGetLiveHashResponse=Mt;var jt=a.proto.CryptoGetStakersQuery;t.CryptoGetStakersQuery=jt;var xt=a.proto.ProxyStaker;t.ProxyStaker=xt;var Ft=a.proto.AllProxyStakers;t.AllProxyStakers=Ft;var Ut=a.proto.CryptoGetStakersResponse;t.CryptoGetStakersResponse=Ut;var Lt=a.proto.FileGetContentsQuery;t.FileGetContentsQuery=Lt;var Kt=a.proto.FileGetContentsResponse;t.FileGetContentsResponse=Kt;var Gt=a.proto.FileGetContentsResponse.FileContents;t.FileContents=Gt;var zt=a.proto.FileGetInfoQuery;t.FileGetInfoQuery=zt;var Qt=a.proto.FileGetInfoResponse;t.FileGetInfoResponse=Qt;var Ht=a.proto.FileGetInfoResponse.FileInfo;t.FileInfo=Ht;var Vt=a.proto.TransactionGetReceiptQuery;t.TransactionGetReceiptQuery=Vt;var qt=a.proto.TransactionGetReceiptResponse;t.TransactionGetReceiptResponse=qt;var Wt=a.proto.TransactionGetRecordQuery;t.TransactionGetRecordQuery=Wt;var Yt=a.proto.TransactionGetRecordResponse;t.TransactionGetRecordResponse=Yt;var Zt=a.proto.TransactionGetFastRecordQuery;t.TransactionGetFastRecordQuery=Zt;var Jt=a.proto.TransactionGetFastRecordResponse;t.TransactionGetFastRecordResponse=Jt;var Xt=a.proto.NetworkGetVersionInfoQuery;t.NetworkGetVersionInfoQuery=Xt;var $t=a.proto.NetworkGetVersionInfoResponse;t.NetworkGetVersionInfoResponse=$t;var en=a.proto.TokenGetInfoQuery;t.TokenGetInfoQuery=en;var tn=a.proto.TokenInfo;t.TokenInfo=tn;var nn=a.proto.TokenGetInfoResponse;t.TokenGetInfoResponse=nn;var rn=a.proto.ScheduleGetInfoQuery;t.ScheduleGetInfoQuery=rn;var on=a.proto.ScheduleInfo;t.ScheduleInfo=on;var an=a.proto.ScheduleGetInfoResponse;t.ScheduleGetInfoResponse=an;var un=a.proto.TokenGetAccountNftInfosQuery;t.TokenGetAccountNftInfosQuery=un;var cn=a.proto.TokenGetAccountNftInfosResponse;t.TokenGetAccountNftInfosResponse=cn;var sn=a.proto.NftID;t.NftID=sn;var ln=a.proto.TokenGetNftInfoQuery;t.TokenGetNftInfoQuery=ln;var fn=a.proto.TokenNftInfo;t.TokenNftInfo=fn;var dn=a.proto.TokenGetNftInfoResponse;t.TokenGetNftInfoResponse=dn;var pn=a.proto.TokenGetNftInfosQuery;t.TokenGetNftInfosQuery=pn;var hn=a.proto.TokenGetNftInfosResponse;t.TokenGetNftInfosResponse=hn;var yn=a.proto.Response;t.Response=yn;var bn=a.proto.CryptoService;t.CryptoService=bn;var mn=a.proto.FileService;t.FileService=mn;var vn=a.proto.FreezeService;t.FreezeService=vn;var gn=a.proto.ConsensusTopicQuery;t.ConsensusTopicQuery=gn;var kn=a.proto.ConsensusTopicResponse;t.ConsensusTopicResponse=kn;var _n=a.proto.MirrorConsensusService;t.MirrorConsensusService=_n;var wn=a.proto.NetworkService;t.NetworkService=wn;var In=a.proto.ScheduleService;t.ScheduleService=In;var An=a.proto.SmartContractService;t.SmartContractService=An;var Tn=a.proto.ThrottleGroup;t.ThrottleGroup=Tn;var On=a.proto.ThrottleBucket;t.ThrottleBucket=On;var En=a.proto.ThrottleDefinitions;t.ThrottleDefinitions=En;var Pn=a.proto.TokenService;t.TokenService=Pn;var Sn=a.proto.SignedTransaction;t.SignedTransaction=Sn;var Rn=a.proto.TransactionList;t.TransactionList=Rn;var Dn=a.proto.DoubleValue;t.DoubleValue=Dn;var Cn=a.proto.FloatValue;t.FloatValue=Cn;var Nn=a.proto.UInt64Value;t.UInt64Value=Nn;var Bn=a.proto.UInt32Value;t.UInt32Value=Bn;var Mn=a.proto.BoolValue;t.BoolValue=Mn;var jn=a.proto.StringValue;t.StringValue=jn;var xn=a.proto.BytesValue;t.BytesValue=xn;var Fn=a.proto.TokenPauseTransactionBody;t.TokenPauseTransactionBody=Fn;var Un=a.proto.TokenUnpauseTransactionBody;t.TokenUnpauseTransactionBody=Un;var Ln=a.proto.TokenPauseStatus;t.TokenPauseStatus=Ln;var Kn=a.proto.FreezeType;t.FreezeType=Kn},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(97)),u=function(){function e(){(0,o.default)(this,e)}return(0,a.default)(e,[{key:"_toProtobufKey",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobufKey",value:function(e){if(null!=e.contractID){if(null==i.default.contractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.contractId(e.contractID)}if(null!=e.delegatableContractId){if(null==i.default.delegateContractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.delegateContractId(e.delegatableContractId)}if(null!=e.ed25519&&e.ed25519.byteLength>0){if(null==i.default.publicKeyED25519)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyED25519(e.ed25519)}if(null!=e.ECDSASecp256k1&&e.ECDSASecp256k1.byteLength>0){if(null==i.default.publicKeyECDSA)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyECDSA(e.ECDSASecp256k1)}if(null!=e.thresholdKey&&null!=e.thresholdKey.threshold){if(null==i.default.thresholdKey)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.thresholdKey(e.thresholdKey)}if(null!=e.keyList){if(null==i.default.keyList)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.keyList(e.keyList)}throw new Error("(BUG) keyFromProtobuf: not implemented key case: ".concat(JSON.stringify(e)))}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(3)),a=r(n(1)),i=r(n(2)),u=r(n(16)),c=u.default.fromNumber(1e9),s=function(){function e(t,n){(0,a.default)(this,e),this.seconds=t instanceof u.default?t:u.default.fromNumber(t),this.nanos=n instanceof u.default?n:u.default.fromNumber(n),Object.freeze(this)}return(0,i.default)(e,[{key:"toDate",value:function(){return new Date(1e3*this.seconds.toInt()+Math.floor(this.nanos.toInt()/1e6))}},{key:"plusNanos",value:function(t){var n=this.nanos.add(t);return new e(this.seconds.add(n.div(c)),n.mod(c))}},{key:"_toProtobuf",value:function(){return{seconds:this.seconds,nanos:this.nanos.toInt()}}},{key:"toString",value:function(){return"".concat(this.seconds.toString(),".").concat(this.nanos.toString())}},{key:"compare",value:function(e){var t=this.seconds.compare(e.seconds);return 0!=t?t:this.nanos.compare(e.nanos)}}],[{key:"generate",value:function(){var t=Math.floor(5e3*Math.random())+8e3,n=Date.now()-t;return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3)+Math.floor(1e6*Math.random()))}},{key:"fromDate",value:function(t){var n;if("number"==typeof t)n=t;else if("string"==typeof t)n=Date.parse(t);else{if(!(t instanceof Date))throw new TypeError("invalid type '".concat((0,o.default)(t),"' for 'data', expected 'Date'"));n=t.getTime()}return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3))}},{key:"_fromProtobuf",value:function(t){return new e(t.seconds instanceof u.default?t.seconds.toInt():null!=t.seconds?t.seconds:0,null!=t.nanos?t.nanos:0)}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(103)),u=function(){function e(){(0,o.default)(this,e)}return(0,a.default)(e,[{key:"_toProtobufKey",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobufKey",value:function(e){if(null!=e.contractID){if(null==i.default.contractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.contractId(e.contractID)}if(null!=e.delegatableContractId){if(null==i.default.delegateContractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.delegateContractId(e.delegatableContractId)}if(null!=e.ed25519&&e.ed25519.byteLength>0){if(null==i.default.publicKeyED25519)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyED25519(e.ed25519)}if(null!=e.ECDSASecp256k1&&e.ECDSASecp256k1.byteLength>0){if(null==i.default.publicKeyECDSA)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyECDSA(e.ECDSASecp256k1)}if(null!=e.thresholdKey&&null!=e.thresholdKey.threshold){if(null==i.default.thresholdKey)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.thresholdKey(e.thresholdKey)}if(null!=e.keyList){if(null==i.default.keyList)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.keyList(e.keyList)}throw new Error("(BUG) keyFromProtobuf: not implemented key case: ".concat(JSON.stringify(e)))}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(3)),a=r(n(1)),i=r(n(2)),u=r(n(17)),c=u.default.fromNumber(1e9),s=function(){function e(t,n){(0,a.default)(this,e),this.seconds=t instanceof u.default?t:u.default.fromNumber(t),this.nanos=n instanceof u.default?n:u.default.fromNumber(n),Object.freeze(this)}return(0,i.default)(e,[{key:"toDate",value:function(){return new Date(1e3*this.seconds.toInt()+Math.floor(this.nanos.toInt()/1e6))}},{key:"plusNanos",value:function(t){var n=this.nanos.add(t);return new e(this.seconds.add(n.div(c)),n.mod(c))}},{key:"_toProtobuf",value:function(){return{seconds:this.seconds,nanos:this.nanos.toInt()}}},{key:"toString",value:function(){return"".concat(this.seconds.toString(),".").concat(this.nanos.toString())}},{key:"compare",value:function(e){var t=this.seconds.compare(e.seconds);return 0!=t?t:this.nanos.compare(e.nanos)}}],[{key:"generate",value:function(){var t=Math.floor(5e3*Math.random())+8e3,n=Date.now()-t;return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3)+Math.floor(1e6*Math.random()))}},{key:"fromDate",value:function(t){var n;if("number"==typeof t)n=t;else if("string"==typeof t)n=Date.parse(t);else{if(!(t instanceof Date))throw new TypeError("invalid type '".concat((0,o.default)(t),"' for 'data', expected 'Date'"));n=t.getTime()}return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3))}},{key:"_fromProtobuf",value:function(t){return new e(t.seconds instanceof u.default?t.seconds.toInt():null!=t.seconds?t.seconds:0,null!=t.nanos?t.nanos:0)}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(128)),u=function(){function e(){(0,o.default)(this,e)}return(0,a.default)(e,[{key:"_toProtobufKey",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobufKey",value:function(e){if(null!=e.contractID){if(null==i.default.contractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.contractId(e.contractID)}if(null!=e.delegatableContractId){if(null==i.default.delegateContractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.delegateContractId(e.delegatableContractId)}if(null!=e.ed25519&&e.ed25519.byteLength>0){if(null==i.default.publicKeyED25519)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyED25519(e.ed25519)}if(null!=e.ECDSASecp256k1&&e.ECDSASecp256k1.byteLength>0){if(null==i.default.publicKeyECDSA)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyECDSA(e.ECDSASecp256k1)}if(null!=e.thresholdKey&&null!=e.thresholdKey.threshold){if(null==i.default.thresholdKey)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.thresholdKey(e.thresholdKey)}if(null!=e.keyList){if(null==i.default.keyList)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.keyList(e.keyList)}throw new Error("(BUG) keyFromProtobuf: not implemented key case: ".concat(JSON.stringify(e)))}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(3)),a=r(n(1)),i=r(n(2)),u=r(n(25)),c=u.default.fromNumber(1e9),s=function(){function e(t,n){(0,a.default)(this,e),this.seconds=t instanceof u.default?t:u.default.fromNumber(t),this.nanos=n instanceof u.default?n:u.default.fromNumber(n),Object.freeze(this)}return(0,i.default)(e,[{key:"toDate",value:function(){return new Date(1e3*this.seconds.toInt()+Math.floor(this.nanos.toInt()/1e6))}},{key:"plusNanos",value:function(t){var n=this.nanos.add(t);return new e(this.seconds.add(n.div(c)),n.mod(c))}},{key:"_toProtobuf",value:function(){return{seconds:this.seconds,nanos:this.nanos.toInt()}}},{key:"toString",value:function(){return"".concat(this.seconds.toString(),".").concat(this.nanos.toString())}},{key:"compare",value:function(e){var t=this.seconds.compare(e.seconds);return 0!=t?t:this.nanos.compare(e.nanos)}}],[{key:"generate",value:function(){var t=Math.floor(5e3*Math.random())+8e3,n=Date.now()-t;return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3)+Math.floor(1e6*Math.random()))}},{key:"fromDate",value:function(t){var n;if("number"==typeof t)n=t;else if("string"==typeof t)n=Date.parse(t);else{if(!(t instanceof Date))throw new TypeError("invalid type '".concat((0,o.default)(t),"' for 'data', expected 'Date'"));n=t.getTime()}return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3))}},{key:"_fromProtobuf",value:function(t){return new e(t.seconds instanceof u.default?t.seconds.toInt():null!=t.seconds?t.seconds:0,null!=t.nanos?t.nanos:0)}}]),e}();t.default=s},function(e,t,n){"use strict";"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},function(e,t,n){"use strict";var r=n(582),o=n(583),a=n(306),i=n(584);e.exports=function(e){return r(e)||o(e)||a(e)||i()},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.QUERY_REGISTRY=t.COST_QUERY=void 0,t._makePaymentTransaction=S,t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(87)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(110)),y=r(n(9)),b=r(n(26)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(112)),v=r(n(61)),g=n(30),k=r(n(162)),_=r(n(637)),w=r(n(16));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return T(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return T(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function T(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)){e.next=2;break}return e.abrupt("return");case 2:if(t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),this._nodeAccountIds.isEmpty&&this._nodeAccountIds.setList(t._network.getNodeAccountIdsForExecute()),n=t._operator,null!=this._paymentTransactionId){e.next=15;break}if(!this._isPaymentRequired()){e.next=14;break}if(null==n){e.next=11;break}this._paymentTransactionId=v.default.generate(n.accountId),e.next=12;break;case 11:throw new Error("`client` must have an `operator` or an explicit payment transaction must be provided");case 12:e.next=15;break;case 14:this._paymentTransactionId=v.default.generate(new y.default(0));case 15:if(r=null!=this._queryPayment?this._queryPayment:t.maxQueryPayment,0===this._paymentTransactions.length&&this._isPaymentRequired()){e.next=20;break}r=new b.default(0),e.next=27;break;case 20:if(null!=this._queryPayment){e.next=27;break}return e.next=23,this.getCost(t);case 23:if(o=e.sent,!(r.toTinybars().toInt()0&&(e={responseType:g.ResponseType.ANSWER_ONLY,payment:this._paymentTransactions[this._nextNodeAccountIdIndex]}),e}},{key:"_onMakeRequest",value:function(e){throw new Error("not implemented")}},{key:"_makeRequest",value:function(){var e={};return this._isPaymentRequired()&&null!=this._paymentTransactions&&(e={payment:this._paymentTransactions[this._nextNodeAccountIdIndex],responseType:g.ResponseType.ANSWER_ONLY}),this._onMakeRequest(e)}},{key:"_makeRequestAsync",value:function(){return Promise.resolve(this._makeRequest())}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode;switch(h.default._fromCode(null!=n?n:g.ResponseCodeEnum.OK)){case h.default.Busy:case h.default.Unknown:case h.default.PlatformTransactionNotCreated:return m.ExecutionState.Retry;case h.default.Ok:return m.ExecutionState.Finished;default:return m.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:g.ResponseCodeEnum.OK);return new k.default({status:r,transactionId:this._getTransactionId()})}},{key:"_getNodeAccountId",value:function(){if(this._nodeAccountIds.isEmpty)throw new Error("(BUG) nodeAccountIds were not set for query before executing");return this._nodeAccountIds.list[this._nextNodeAccountIdIndex]}},{key:"_advanceRequest",value:function(){this._isPaymentRequired()&&this._paymentTransactions.length>0?(0,l.default)((0,p.default)(r.prototype),"_nextNodeAccountIdIndex",(this._nextNodeAccountIdIndex+1)%this._paymentTransactions.length,this,!0):(0,s.default)((0,p.default)(r.prototype),"_advanceRequest",this).call(this)}}],[{key:"fromBytes",value:function(e){var t=g.Query.decode(e);if(null==t.query)throw new Error("(BUG) query.query was not set in the protobuf");var n=E.get(t.query);if(null==n)throw new Error("(BUG) Query.fromBytes() not implemented for type ".concat(t.query));return n(t)}}]),r}(m.default);function S(e,t,n,r){return R.apply(this,arguments)}function R(){return(R=(0,i.default)(a.default.mark((function e(t,n,r,o){var i,u,c,s;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=[],null!=r?(i.push({accountID:r.accountId._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})):(i.push({accountID:new y.default(0)._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})),u={transactionID:t._toProtobuf(),nodeAccountID:n._toProtobuf(),transactionFee:new b.default(1).toTinybars(),transactionValidDuration:{seconds:w.default.fromNumber(120)},cryptoTransfer:{transfers:{accountAmounts:i}}},c={bodyBytes:g.TransactionBody.encode(u).finish()},null==r){e.next=9;break}return e.next=7,r.transactionSigner(c.bodyBytes);case 7:s=e.sent,c.sigMap={sigPair:[r.publicKey._toProtobufSignature(s)]};case 9:return e.abrupt("return",{signedTransactionBytes:g.SignedTransaction.encode(c).finish()});case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}t.default=P;var D=[];t.COST_QUERY=D},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.QUERY_REGISTRY=t.COST_QUERY=void 0,t._makePaymentTransaction=S,t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(87)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(121)),y=r(n(10)),b=r(n(28)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(123)),v=r(n(65)),g=n(31),k=r(n(169)),_=r(n(858)),w=r(n(17));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return T(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return T(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function T(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)){e.next=2;break}return e.abrupt("return");case 2:if(t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),this._nodeAccountIds.isEmpty&&this._nodeAccountIds.setList(t._network.getNodeAccountIdsForExecute()),n=t._operator,null!=this._paymentTransactionId){e.next=15;break}if(!this._isPaymentRequired()){e.next=14;break}if(null==n){e.next=11;break}this._paymentTransactionId=v.default.generate(n.accountId),e.next=12;break;case 11:throw new Error("`client` must have an `operator` or an explicit payment transaction must be provided");case 12:e.next=15;break;case 14:this._paymentTransactionId=v.default.generate(new y.default(0));case 15:if(r=null!=this._queryPayment?this._queryPayment:t.maxQueryPayment,0===this._paymentTransactions.length&&this._isPaymentRequired()){e.next=20;break}r=new b.default(0),e.next=27;break;case 20:if(null!=this._queryPayment){e.next=27;break}return e.next=23,this.getCost(t);case 23:if(o=e.sent,!(r.toTinybars().toInt()0&&(e={responseType:g.ResponseType.ANSWER_ONLY,payment:this._paymentTransactions[this._nextNodeAccountIdIndex]}),e}},{key:"_onMakeRequest",value:function(e){throw new Error("not implemented")}},{key:"_makeRequest",value:function(){var e={};return this._isPaymentRequired()&&null!=this._paymentTransactions&&(e={payment:this._paymentTransactions[this._nextNodeAccountIdIndex],responseType:g.ResponseType.ANSWER_ONLY}),this._onMakeRequest(e)}},{key:"_makeRequestAsync",value:function(){return Promise.resolve(this._makeRequest())}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode;switch(h.default._fromCode(null!=n?n:g.ResponseCodeEnum.OK)){case h.default.Busy:case h.default.Unknown:case h.default.PlatformTransactionNotCreated:return m.ExecutionState.Retry;case h.default.Ok:return m.ExecutionState.Finished;default:return m.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:g.ResponseCodeEnum.OK);return new k.default({status:r,transactionId:this._getTransactionId()})}},{key:"_getNodeAccountId",value:function(){if(this._nodeAccountIds.isEmpty)throw new Error("(BUG) nodeAccountIds were not set for query before executing");return this._nodeAccountIds.list[this._nextNodeAccountIdIndex]}},{key:"_advanceRequest",value:function(){this._isPaymentRequired()&&this._paymentTransactions.length>0?(0,l.default)((0,p.default)(r.prototype),"_nextNodeAccountIdIndex",(this._nextNodeAccountIdIndex+1)%this._paymentTransactions.length,this,!0):(0,s.default)((0,p.default)(r.prototype),"_advanceRequest",this).call(this)}}],[{key:"fromBytes",value:function(e){var t=g.Query.decode(e);if(null==t.query)throw new Error("(BUG) query.query was not set in the protobuf");var n=E.get(t.query);if(null==n)throw new Error("(BUG) Query.fromBytes() not implemented for type ".concat(t.query));return n(t)}}]),r}(m.default);function S(e,t,n,r){return R.apply(this,arguments)}function R(){return(R=(0,i.default)(a.default.mark((function e(t,n,r,o){var i,u,c,s;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=[],null!=r?(i.push({accountID:r.accountId._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})):(i.push({accountID:new y.default(0)._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})),u={transactionID:t._toProtobuf(),nodeAccountID:n._toProtobuf(),transactionFee:new b.default(1).toTinybars(),transactionValidDuration:{seconds:w.default.fromNumber(120)},cryptoTransfer:{transfers:{accountAmounts:i}}},c={bodyBytes:g.TransactionBody.encode(u).finish()},null==r){e.next=9;break}return e.next=7,r.transactionSigner(c.bodyBytes);case 7:s=e.sent,c.sigMap={sigPair:[r.publicKey._toProtobufSignature(s)]};case 9:return e.abrupt("return",{signedTransactionBytes:g.SignedTransaction.encode(c).finish()});case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}t.default=P;var D=[];t.COST_QUERY=D},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.QUERY_REGISTRY=t.COST_QUERY=void 0,t._makePaymentTransaction=S,t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(87)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(131)),y=r(n(14)),b=r(n(32)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(158)),v=r(n(67)),g=n(34),k=r(n(177)),_=r(n(1091)),w=r(n(25));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return T(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return T(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function T(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)){e.next=2;break}return e.abrupt("return");case 2:if(t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),0==this._nodeIds.length&&(this._nodeIds=t._network.getNodeAccountIdsForExecute()),n=t._operator,null!=this._paymentTransactionId){e.next=15;break}if(!this._isPaymentRequired()){e.next=14;break}if(null==n){e.next=11;break}this._paymentTransactionId=v.default.generate(n.accountId),e.next=12;break;case 11:throw new Error("`client` must have an `operator` or an explicit payment transaction must be provided");case 12:e.next=15;break;case 14:this._paymentTransactionId=v.default.generate(new y.default(0));case 15:if(r=null!=this._queryPayment?this._queryPayment:t.maxQueryPayment,0===this._paymentTransactions.length&&this._isPaymentRequired()){e.next=20;break}r=new b.default(0),e.next=27;break;case 20:if(null!=this._queryPayment){e.next=27;break}return e.next=23,this.getCost(t);case 23:if(o=e.sent,!(r.toTinybars().toInt()0&&(e={responseType:g.ResponseType.ANSWER_ONLY,payment:this._paymentTransactions[this._nextNodeIndex]}),e}},{key:"_onMakeRequest",value:function(e){throw new Error("not implemented")}},{key:"_makeRequest",value:function(){var e={};return this._isPaymentRequired()&&null!=this._paymentTransactions&&(e={payment:this._paymentTransactions[this._nextNodeIndex],responseType:g.ResponseType.ANSWER_ONLY}),this._onMakeRequest(e)}},{key:"_makeRequestAsync",value:function(){return Promise.resolve(this._makeRequest())}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode;switch(h.default._fromCode(null!=n?n:g.ResponseCodeEnum.OK)){case h.default.Busy:case h.default.Unknown:case h.default.PlatformTransactionNotCreated:return m.ExecutionState.Retry;case h.default.Ok:return m.ExecutionState.Finished;default:return m.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:g.ResponseCodeEnum.OK);return new k.default({status:r,transactionId:this._getTransactionId()})}},{key:"_getNodeAccountId",value:function(){if(this._nodeIds.length>0)return this._nodeIds[this._nextNodeIndex];throw new Error("(BUG) nodeAccountIds were not set for query before executing")}},{key:"_advanceRequest",value:function(){this._isPaymentRequired()&&this._paymentTransactions.length>0?(0,l.default)((0,p.default)(r.prototype),"_nextNodeIndex",(this._nextNodeIndex+1)%this._paymentTransactions.length,this,!0):(0,s.default)((0,p.default)(r.prototype),"_advanceRequest",this).call(this)}}],[{key:"fromBytes",value:function(e){var t=g.Query.decode(e);if(null==t.query)throw new Error("(BUG) query.query was not set in the protobuf");var n=E.get(t.query);if(null==n)throw new Error("(BUG) Query.fromBytes() not implemented for type ".concat(t.query));return n(t)}}]),r}(m.default);function S(e,t,n,r){return R.apply(this,arguments)}function R(){return(R=(0,i.default)(a.default.mark((function e(t,n,r,o){var i,u,c,s;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=[],null!=r?(i.push({accountID:r.accountId._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})):(i.push({accountID:new y.default(0)._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})),u={transactionID:t._toProtobuf(),nodeAccountID:n._toProtobuf(),transactionFee:new b.default(1).toTinybars(),transactionValidDuration:{seconds:w.default.fromNumber(120)},cryptoTransfer:{transfers:{accountAmounts:i}}},c={bodyBytes:g.TransactionBody.encode(u).finish()},null==r){e.next=9;break}return e.next=7,r.transactionSigner(c.bodyBytes);case 7:s=e.sent,c.sigMap={sigPair:[r.publicKey._toProtobufSignature(s)]};case 9:return e.abrupt("return",{signedTransactionBytes:g.SignedTransaction.encode(c).finish()});case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}t.default=P;var D=[];t.COST_QUERY=D},function(e,t,n){"use strict";var r=n(4),o=n(233),a=n(585),i=n(76);function u(t){var n="function"==typeof Map?new Map:void 0;return e.exports=u=function(e){if(null===e||!a(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==n){if(n.has(e))return n.get(e);n.set(e,t)}function t(){return i(e,arguments,r(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),o(t,e)},e.exports.default=e.exports,e.exports.__esModule=!0,u(t)}e.exports=u,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayify=f,t.concat=d,t.hexConcat=function(e){var t="0x";return e.forEach((function(e){t+=y(e).substring(2)})),t},t.hexDataLength=function(e){if("string"!=typeof e)e=y(e);else if(!h(e)||e.length%2)return null;return(e.length-2)/2},t.hexDataSlice=function(e,t,n){"string"!=typeof e?e=y(e):(!h(e)||e.length%2)&&a.throwArgumentError("invalid hexData","value",e);if(t=2+2*t,null!=n)return"0x"+e.substring(t,2+2*n);return"0x"+e.substring(t)},t.hexStripZeros=b,t.hexValue=function(e){var t=b(y(e,{hexPad:"left"}));if("0x"===t)return"0x0";return t},t.hexZeroPad=m,t.hexlify=y,t.isBytes=l,t.isBytesLike=c,t.isHexString=h,t.joinSignature=function(e){return y(d([(e=v(e)).r,e.s,e.recoveryParam?"0x1c":"0x1b"]))},t.splitSignature=v,t.stripZeros=function(e){var t=f(e);if(0===t.length)return t;var n=0;for(;n=256)return!1}return!0}function f(e,t){if(t||(t={}),"number"==typeof e){a.checkSafeUint53(e,"invalid arrayify value");for(var n=[];e;)n.unshift(255&e),e=parseInt(String(e/256));return 0===n.length&&n.push(0),u(new Uint8Array(n))}if(t.allowMissingPrefix&&"string"==typeof e&&"0x"!==e.substring(0,2)&&(e="0x"+e),i(e)&&(e=e.toHexString()),h(e)){var r=e.substring(2);r.length%2&&("left"===t.hexPad?r="0x0"+r.substring(2):"right"===t.hexPad?r+="0":a.throwArgumentError("hex data is odd-length","value",e));for(var o=[],c=0;ct&&a.throwArgumentError("value out of range","value",arguments[0]);var n=new Uint8Array(t);return n.set(e,t-e.length),u(n)}function h(e,t){return!("string"!=typeof e||!e.match(/^0x[0-9A-Fa-f]*$/))&&(!t||e.length===2+2*t)}function y(e,t){if(t||(t={}),"number"==typeof e){a.checkSafeUint53(e,"invalid hexlify value");for(var n="";e;)n="0123456789abcdef"[15&e]+n,e=Math.floor(e/16);return n.length?(n.length%2&&(n="0"+n),"0x"+n):"0x00"}if("bigint"==typeof e)return(e=e.toString(16)).length%2?"0x0"+e:"0x"+e;if(t.allowMissingPrefix&&"string"==typeof e&&"0x"!==e.substring(0,2)&&(e="0x"+e),i(e))return e.toHexString();if(h(e))return e.length%2&&("left"===t.hexPad?e="0x0"+e.substring(2):"right"===t.hexPad?e+="0":a.throwArgumentError("hex data is odd-length","value",e)),e.toLowerCase();if(l(e)){for(var r="0x",o=0;o>4]+"0123456789abcdef"[15&u]}return r}return a.throwArgumentError("invalid hexlify value","value",e)}function b(e){"string"!=typeof e&&(e=y(e)),h(e)||a.throwArgumentError("invalid hex string","value",e),e=e.substring(2);for(var t=0;t2*t+2&&a.throwArgumentError("value out of range","value",arguments[1]);e.length<2*t+2;)e="0x0"+e.substring(2);return e}function v(e){var t={r:"0x",s:"0x",_vs:"0x",recoveryParam:0,v:0};if(c(e)){var n=f(e);65!==n.length&&a.throwArgumentError("invalid signature string; must be 65 bytes","signature",e),t.r=y(n.slice(0,32)),t.s=y(n.slice(32,64)),t.v=n[64],t.v<27&&(0===t.v||1===t.v?t.v+=27:a.throwArgumentError("signature invalid v byte","signature",e)),t.recoveryParam=1-t.v%2,t.recoveryParam&&(n[32]|=128),t._vs=y(n.slice(32,64))}else{if(t.r=e.r,t.s=e.s,t.v=e.v,t.recoveryParam=e.recoveryParam,t._vs=e._vs,null!=t._vs){var r=p(f(t._vs),32);t._vs=y(r);var o=r[0]>=128?1:0;null==t.recoveryParam?t.recoveryParam=o:t.recoveryParam!==o&&a.throwArgumentError("signature recoveryParam mismatch _vs","signature",e),r[0]&=127;var i=y(r);null==t.s?t.s=i:t.s!==i&&a.throwArgumentError("signature v mismatch _vs","signature",e)}if(null==t.recoveryParam)null==t.v?a.throwArgumentError("signature missing v and recoveryParam","signature",e):0===t.v||1===t.v?t.recoveryParam=t.v:t.recoveryParam=1-t.v%2;else if(null==t.v)t.v=27+t.recoveryParam;else{var u=0===t.v||1===t.v?t.v:1-t.v%2;t.recoveryParam!==u&&a.throwArgumentError("signature recoveryParam mismatch v","signature",e)}null!=t.r&&h(t.r)?t.r=m(t.r,32):a.throwArgumentError("signature missing or invalid r","signature",e),null!=t.s&&h(t.s)?t.s=m(t.s,32):a.throwArgumentError("signature missing or invalid s","signature",e);var s=f(t.s);s[0]>=128&&a.throwArgumentError("signature s out of range","signature",e),t.recoveryParam&&(s[0]|=128);var l=y(s);t._vs&&(h(t._vs)||a.throwArgumentError("signature invalid _vs","signature",e),t._vs=m(t._vs,32)),null==t._vs?t._vs=l:t._vs!==l&&a.throwArgumentError("signature _vs mismatch v and s","signature",e)}return t}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=v(n(137)),d=r(n(35)),p=v(n(30)),h=r(n(97)),y=v(n(60)),b=r(n(16));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var k=function(e){(0,c.default)(n,e);var t=g(n);function n(e,r,o,a){var u;(0,i.default)(this,n),u=t.call(this);var c=f.constructor(e,r,o);return u.shard=c.shard,u.realm=c.realm,u.num=c.num,u.evmAddress=null!=a?a:null,u._checksum=null,u}return(0,u.default)(n,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return null!=this.evmAddress?y.encode(this.evmAddress):f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{contractNum:this.num,shardNum:this.shard,realmNum:this.realm,evmAddress:this.evmAddress}}},{key:"toString",value:function(){return null!=this.evmAddress?"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(y.encode(this.evmAddress)):"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return f.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return p.ContractID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e.evmAddress=this.evmAddress,e}},{key:"compare",value:function(e){return f.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}},{key:"_toProtobufKey",value:function(){return{contractID:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,y.decode(r))}},{key:"fromString",value:function(e){var t=f.fromStringSplitter(e);if(Number.isNaN(t.shard)||Number.isNaN(t.realm))throw new Error("invalid format for entity ID");var r=null!=t.shard?b.default.fromString(t.shard):b.default.ZERO,o=null!=t.realm?b.default.fromString(t.realm):b.default.ZERO,i=t.numOrHex.length<40?[b.default.fromString(t.numOrHex),void 0]:[b.default.ZERO,y.decode(t.numOrHex)],u=(0,a.default)(i,2);return new n(r,o,u[0],u[1])}},{key:"_fromProtobuf",value:function(e){return new n(null!=e.shardNum?e.shardNum:0,null!=e.realmNum?e.realmNum:0,null!=e.contractNum?e.contractNum:0)}},{key:"fromBytes",value:function(e){return n._fromProtobuf(p.ContractID.decode(e))}},{key:"fromSolidityAddress",value:function(e){console.warn("Deprecated: use `ContractId.fromEvmAdress()` instead");var t=f.fromSolidityAddress(e),r=(0,a.default)(t,3);return new n(r[0],r[1],r[2])}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(d.default);t.default=k,h.default.contractId=function(e){return k.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.Logger=t.LogLevel=t.ErrorCode=void 0;var o=r(n(1)),a=r(n(2)),i=n(791),u=!1,c=!1,s={debug:1,default:2,info:2,warning:3,error:4,off:5},l=s.default,f=null;var d,p,h=function(){try{var e=[];if(["NFD","NFC","NFKD","NFKC"].forEach((function(t){try{if("test"!=="test".normalize(t))throw new Error("bad normalize")}catch(n){e.push(t)}})),e.length)throw new Error("missing "+e.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(e){return e.message}return null}();t.LogLevel=d,function(e){e.DEBUG="DEBUG",e.INFO="INFO",e.WARNING="WARNING",e.ERROR="ERROR",e.OFF="OFF"}(d||(t.LogLevel=d={})),t.ErrorCode=p,function(e){e.UNKNOWN_ERROR="UNKNOWN_ERROR",e.NOT_IMPLEMENTED="NOT_IMPLEMENTED",e.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",e.NETWORK_ERROR="NETWORK_ERROR",e.SERVER_ERROR="SERVER_ERROR",e.TIMEOUT="TIMEOUT",e.BUFFER_OVERRUN="BUFFER_OVERRUN",e.NUMERIC_FAULT="NUMERIC_FAULT",e.MISSING_NEW="MISSING_NEW",e.INVALID_ARGUMENT="INVALID_ARGUMENT",e.MISSING_ARGUMENT="MISSING_ARGUMENT",e.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",e.CALL_EXCEPTION="CALL_EXCEPTION",e.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",e.NONCE_EXPIRED="NONCE_EXPIRED",e.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",e.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT",e.TRANSACTION_REPLACED="TRANSACTION_REPLACED"}(p||(t.ErrorCode=p={}));var y="0123456789abcdef",b=function(){function e(t){(0,o.default)(this,e),Object.defineProperty(this,"version",{enumerable:!0,value:t,writable:!1})}return(0,a.default)(e,[{key:"_log",value:function(e,t){var n=e.toLowerCase();null==s[n]&&this.throwArgumentError("invalid log level name","logLevel",e),l>s[n]||console.log.apply(console,t)}},{key:"debug",value:function(){for(var t=arguments.length,n=new Array(t),r=0;r>4],n+=y[15&t[a]];o.push(e+"=Uint8Array(0x"+n+")")}else o.push(e+"="+JSON.stringify(t))}catch(t){o.push(e+"="+JSON.stringify(r[e].toString()))}})),o.push("code=".concat(n)),o.push("version=".concat(this.version));var a=t;o.length&&(t+=" ("+o.join(", ")+")");var i=new Error(t);return i.reason=a,i.code=n,Object.keys(r).forEach((function(e){i[e]=r[e]})),i}},{key:"throwError",value:function(e,t,n){throw this.makeError(e,t,n)}},{key:"throwArgumentError",value:function(t,n,r){return this.throwError(t,e.errors.INVALID_ARGUMENT,{argument:n,value:r})}},{key:"assert",value:function(e,t,n,r){e||this.throwError(t,n,r)}},{key:"assertArgument",value:function(e,t,n,r){e||this.throwArgumentError(t,n,r)}},{key:"checkNormalize",value:function(t){null==t&&(t="platform missing String.prototype.normalize"),h&&this.throwError("platform missing String.prototype.normalize",e.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:h})}},{key:"checkSafeUint53",value:function(t,n){"number"==typeof t&&(null==n&&(n="value not safe"),(t<0||t>=9007199254740991)&&this.throwError(n,e.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:t}),t%1&&this.throwError(n,e.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:t}))}},{key:"checkArgumentCount",value:function(t,n,r){r=r?": "+r:"",tn&&this.throwError("too many arguments"+r,e.errors.UNEXPECTED_ARGUMENT,{count:t,expectedCount:n})}},{key:"checkNew",value:function(t,n){t!==Object&&null!=t||this.throwError("missing new",e.errors.MISSING_NEW,{name:n.name})}},{key:"checkAbstract",value:function(t,n){t===n?this.throwError("cannot instantiate abstract class "+JSON.stringify(n.name)+" directly; use a sub-class",e.errors.UNSUPPORTED_OPERATION,{name:t.name,operation:"new"}):t!==Object&&null!=t||this.throwError("missing new",e.errors.MISSING_NEW,{name:n.name})}}],[{key:"globalLogger",value:function(){return f||(f=new e(i.version)),f}},{key:"setCensorship",value:function(t,n){if(!t&&n&&this.globalLogger().throwError("cannot permanently disable censorship",e.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),u){if(!t)return;this.globalLogger().throwError("error censorship permanent",e.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}c=!!t,u=!!n}},{key:"setLogLevel",value:function(t){var n=s[t.toLowerCase()];null!=n?l=n:e.globalLogger().warn("invalid log level - "+t)}},{key:"from",value:function(t){return new e(t)}}]),e}();t.Logger=b,b.errors=p,b.levels=d},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=v(n(148)),d=r(n(37)),p=v(n(31)),h=r(n(103)),y=v(n(64)),b=r(n(17));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var k=function(e){(0,c.default)(n,e);var t=g(n);function n(e,r,o,a){var u;(0,i.default)(this,n),u=t.call(this);var c=f.constructor(e,r,o);return u.shard=c.shard,u.realm=c.realm,u.num=c.num,u.evmAddress=null!=a?a:null,u._checksum=null,u}return(0,u.default)(n,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return null!=this.evmAddress?y.encode(this.evmAddress):f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{contractNum:this.num,shardNum:this.shard,realmNum:this.realm,evmAddress:this.evmAddress}}},{key:"toString",value:function(){return null!=this.evmAddress?"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(y.encode(this.evmAddress)):"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return f.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return p.ContractID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e.evmAddress=this.evmAddress,e}},{key:"compare",value:function(e){return f.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}},{key:"_toProtobufKey",value:function(){return{contractID:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,y.decode(r))}},{key:"fromString",value:function(e){var t=f.fromStringSplitter(e);if(Number.isNaN(t.shard)||Number.isNaN(t.realm))throw new Error("invalid format for entity ID");var r=null!=t.shard?b.default.fromString(t.shard):b.default.ZERO,o=null!=t.realm?b.default.fromString(t.realm):b.default.ZERO,i=t.numOrHex.length<40?[b.default.fromString(t.numOrHex),void 0]:[b.default.ZERO,y.decode(t.numOrHex)],u=(0,a.default)(i,2);return new n(r,o,u[0],u[1])}},{key:"_fromProtobuf",value:function(e){return new n(null!=e.shardNum?e.shardNum:0,null!=e.realmNum?e.realmNum:0,null!=e.contractNum?e.contractNum:0)}},{key:"fromBytes",value:function(e){return n._fromProtobuf(p.ContractID.decode(e))}},{key:"fromSolidityAddress",value:function(e){console.warn("Deprecated: use `ContractId.fromEvmAdress()` instead");var t=f.fromSolidityAddress(e),r=(0,a.default)(t,3);return new n(r[0],r[1],r[2])}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(d.default);t.default=k,h.default.contractId=function(e){return k.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=f(n(137)),s=f(n(30));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{fileNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.FileID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.fileNum?t.fileNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.FileID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(16)),u=function(){function e(t){(0,o.default)(this,e),this.seconds=t instanceof i.default?t:i.default.fromNumber(t),Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{seconds:this.seconds}}}],[{key:"_fromProtobuf",value:function(t){return new e(t.seconds)}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=f(n(148)),s=f(n(31));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{fileNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.FileID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.fileNum?t.fileNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.FileID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(17)),u=function(){function e(t){(0,o.default)(this,e),this.seconds=t instanceof i.default?t:i.default.fromNumber(t),Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{seconds:this.seconds}}}],[{key:"_fromProtobuf",value:function(t){return new e(t.seconds)}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=b(n(157)),d=r(n(39)),p=b(n(34)),h=r(n(128));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var v=function(e){(0,c.default)(n,e);var t=m(n);function n(e,r,o){var a;(0,i.default)(this,n),a=t.call(this);var u=f.constructor(e,r,o);return a.shard=u.shard,a.realm=u.realm,a.num=u.num,a._checksum=null,a}return(0,u.default)(n,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{contractNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return f.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return p.ContractID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e}},{key:"compare",value:function(e){return f.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}},{key:"_toProtobufKey",value:function(){return{contractID:this._toProtobuf()}}}],[{key:"fromString",value:function(e){var t=f.fromString(e),r=new n(t);return r._checksum=t.checksum,r}},{key:"_fromProtobuf",value:function(e){return new n(null!=e.shardNum?e.shardNum:0,null!=e.realmNum?e.realmNum:0,null!=e.contractNum?e.contractNum:0)}},{key:"fromBytes",value:function(e){return n._fromProtobuf(p.ContractID.decode(e))}},{key:"fromSolidityAddress",value:function(e){var t=f.fromSolidityAddress(e),r=(0,a.default)(t,3);return new n(r[0],r[1],r[2])}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(d.default);t.default=v,h.default.contractId=function(e){return v.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(25)),u=function(){function e(t){(0,o.default)(this,e),this.seconds=t instanceof i.default?t:i.default.fromNumber(t),Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{seconds:this.seconds}}}],[{key:"_fromProtobuf",value:function(t){return new e(t.seconds)}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=f(n(157)),s=f(n(34));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{fileNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.FileID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.fileNum?t.fileNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.FileID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=d},function(e,t,n){"use strict";var r=t,o=n(13),a=n(59),i=n(315);r.assert=a,r.toArray=i.toArray,r.zero2=i.zero2,r.toHex=i.toHex,r.encode=i.encode,r.getNAF=function(e,t,n){var r=new Array(Math.max(e.bitLength(),n)+1);r.fill(0);for(var o=1<(o>>1)-1?(o>>1)-c:c,a.isubn(u)):u=0,r[i]=u,a.iushrn(1)}return r},r.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r,o=0,a=0;e.cmpn(-o)>0||t.cmpn(-a)>0;){var i,u,c=e.andln(3)+o&3,s=t.andln(3)+a&3;3===c&&(c=-1),3===s&&(s=-1),i=0==(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[0].push(i),u=0==(1&s)?0:3!==(r=t.andln(7)+a&7)&&5!==r||2!==c?s:-s,n[1].push(u),2*o===i+1&&(o=1-o),2*a===u+1&&(a=1-a),e.iushrn(1),t.iushrn(1)}return n},r.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new o(e,"hex","le")}},function(e,t,n){"use strict";function r(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=r,r.equal=function(e,t,n){if(e!=t)throw new Error(n||"Assertion failed: "+e+" != "+t)}},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=r(n(9)),s=r(n(36)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30)),f=r(n(16));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;(0,i.default)(this,e),this.accountId=t,this.validStart=n,this.scheduled=r,this.nonce=null,null!=o&&0!=o&&this.setNonce(o),Object.freeze(this)}return(0,u.default)(e,[{key:"setNonce",value:function(e){return this.nonce="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"setScheduled",value:function(e){return this.scheduled=e,this}},{key:"toString",value:function(){if(null!=this.accountId&&null!=this.validStart){var e=null!=this.nonce?"/".concat(this.nonce.toString()):"",t=this.scheduled?"?scheduled":"";return"".concat(this.accountId.toString(),"@").concat(this.validStart.seconds.toString(),".").concat(this.validStart.nanos.toString()).concat(t).concat(e)}throw new Error("neither `accountId` nor `validStart` are set")}},{key:"_toProtobuf",value:function(){return{accountID:null!=this.accountId?this.accountId._toProtobuf():null,transactionValidStart:null!=this.validStart?this.validStart._toProtobuf():null,scheduled:this.scheduled,nonce:null!=this.nonce?this.nonce.toInt():null}}},{key:"toBytes",value:function(){return l.TransactionID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){return new e(this.accountId,this.validStart,this.scheduled,this.nonce)}},{key:"compare",value:function(e){var t=this.accountId.compare(e.accountId);return 0!=t?t:this.validStart.compare(e.validStart)}}],[{key:"withValidStart",value:function(t,n){return new e(t,n,null)}},{key:"generate",value:function(t){return new e("string"==typeof t?c.default.fromString(t):new c.default(t),s.default.generate())}},{key:"fromString",value:function(t){var n,r,o,i,u,l,d=t.split("@"),p=(0,a.default)(d,2);n=p[0];var h=(l=p[1]).split("."),y=(0,a.default)(h,2);if(r=y[0],(l=y[1]).includes("?")){var b=l.split("?scheduled"),m=(0,a.default)(b,2);o=m[0],i=!0,u=(l=m[1]).includes("/")?l.replace("/",""):null}else if(l.includes("/")){var v=l.split("/"),g=(0,a.default)(v,2);o=g[0],u=g[1],i=!1}else o=l;return new e(c.default.fromString(n),new s.default(f.default.fromValue(r),f.default.fromValue(o)),i,null!=u?f.default.fromString(u):null)}},{key:"_fromProtobuf",value:function(t){if(null!=t.accountID&&null!=t.transactionValidStart)return new e(c.default._fromProtobuf(t.accountID),s.default._fromProtobuf(t.transactionValidStart),t.scheduled,t.nonce);throw new Error("Neither `nonce` or `accountID` and `transactionValidStart` are set")}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TransactionID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(22).Buffer,o=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===o||!o(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=s,t=4;break;case"utf8":this.fillLast=u,t=4;break;case"base64":this.text=l,this.end=f,t=3;break;default:return this.write=d,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function i(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function u(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function s(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function f(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.StringDecoder=a,a.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return o>0&&(e.lastNeed=o-1),o;if(--r=0)return o>0&&(e.lastNeed=o-2),o;if(--r=0)return o>0&&(2===o?o=0:e.lastNeed=o-3),o;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,n){"use strict";var r=t,o=n(13),a=n(119),i=n(410);r.assert=a,r.toArray=i.toArray,r.zero2=i.zero2,r.toHex=i.toHex,r.encode=i.encode,r.getNAF=function(e,t,n){var r=new Array(Math.max(e.bitLength(),n)+1);r.fill(0);for(var o=1<(o>>1)-1?(o>>1)-c:c,a.isubn(u)):u=0,r[i]=u,a.iushrn(1)}return r},r.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r,o=0,a=0;e.cmpn(-o)>0||t.cmpn(-a)>0;){var i,u,c=e.andln(3)+o&3,s=t.andln(3)+a&3;3===c&&(c=-1),3===s&&(s=-1),i=0==(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[0].push(i),u=0==(1&s)?0:3!==(r=t.andln(7)+a&7)&&5!==r||2!==c?s:-s,n[1].push(u),2*o===i+1&&(o=1-o),2*a===u+1&&(a=1-a),e.iushrn(1),t.iushrn(1)}return n},r.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new o(e,"hex","le")}},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=r(n(10)),s=r(n(38)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31)),f=r(n(17));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;(0,i.default)(this,e),this.accountId=t,this.validStart=n,this.scheduled=r,this.nonce=null,null!=o&&0!=o&&this.setNonce(o),Object.freeze(this)}return(0,u.default)(e,[{key:"setNonce",value:function(e){return this.nonce="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"setScheduled",value:function(e){return this.scheduled=e,this}},{key:"toString",value:function(){if(null!=this.accountId&&null!=this.validStart){var e=null!=this.nonce?"/".concat(this.nonce.toString()):"",t=this.scheduled?"?scheduled":"";return"".concat(this.accountId.toString(),"@").concat(this.validStart.seconds.toString(),".").concat(this.validStart.nanos.toString()).concat(t).concat(e)}throw new Error("neither `accountId` nor `validStart` are set")}},{key:"_toProtobuf",value:function(){return{accountID:null!=this.accountId?this.accountId._toProtobuf():null,transactionValidStart:null!=this.validStart?this.validStart._toProtobuf():null,scheduled:this.scheduled,nonce:null!=this.nonce?this.nonce.toInt():null}}},{key:"toBytes",value:function(){return l.TransactionID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){return new e(this.accountId,this.validStart,this.scheduled,this.nonce)}},{key:"compare",value:function(e){var t=this.accountId.compare(e.accountId);return 0!=t?t:this.validStart.compare(e.validStart)}}],[{key:"withValidStart",value:function(t,n){return new e(t,n,null)}},{key:"generate",value:function(t){return new e("string"==typeof t?c.default.fromString(t):new c.default(t),s.default.generate())}},{key:"fromString",value:function(t){var n,r,o,i,u,l,d=t.split("@"),p=(0,a.default)(d,2);n=p[0];var h=(l=p[1]).split("."),y=(0,a.default)(h,2);if(r=y[0],(l=y[1]).includes("?")){var b=l.split("?scheduled"),m=(0,a.default)(b,2);o=m[0],i=!0,u=(l=m[1]).includes("/")?l.replace("/",""):null}else if(l.includes("/")){var v=l.split("/"),g=(0,a.default)(v,2);o=g[0],u=g[1],i=!1}else o=l;return new e(c.default.fromString(n),new s.default(f.default.fromValue(r),f.default.fromValue(o)),i,null!=u?f.default.fromString(u):null)}},{key:"_fromProtobuf",value:function(t){if(null!=t.accountID&&null!=t.transactionValidStart)return new e(c.default._fromProtobuf(t.accountID),s.default._fromProtobuf(t.transactionValidStart),t.scheduled,t.nonce);throw new Error("Neither `nonce` or `accountID` and `transactionValidStart` are set")}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TransactionID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=t,o=n(13),a=n(127),i=n(514);r.assert=a,r.toArray=i.toArray,r.zero2=i.zero2,r.toHex=i.toHex,r.encode=i.encode,r.getNAF=function(e,t,n){var r=new Array(Math.max(e.bitLength(),n)+1);r.fill(0);for(var o=1<(o>>1)-1?(o>>1)-c:c,a.isubn(u)):u=0,r[i]=u,a.iushrn(1)}return r},r.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r,o=0,a=0;e.cmpn(-o)>0||t.cmpn(-a)>0;){var i,u,c=e.andln(3)+o&3,s=t.andln(3)+a&3;3===c&&(c=-1),3===s&&(s=-1),i=0==(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[0].push(i),u=0==(1&s)?0:3!==(r=t.andln(7)+a&7)&&5!==r||2!==c?s:-s,n[1].push(u),2*o===i+1&&(o=1-o),2*a===u+1&&(a=1-a),e.iushrn(1),t.iushrn(1)}return n},r.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new o(e,"hex","le")}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=r(n(14)),s=r(n(40)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(34)),f=r(n(25));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;(0,i.default)(this,e),this.accountId=t,this.validStart=n,this.scheduled=r,this.nonce=null,null!=o&&this.setNonce(o),Object.freeze(this)}return(0,u.default)(e,[{key:"setNonce",value:function(e){return this.nonce="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"setScheduled",value:function(e){return this.scheduled=e,this}},{key:"toString",value:function(){if(null!=this.accountId&&null!=this.validStart){var e=null!=this.nonce?"/".concat(this.nonce.toString()):"",t=this.scheduled?"?scheduled":"";return"".concat(this.accountId.toString(),"@").concat(this.validStart.seconds.toString(),".").concat(this.validStart.nanos.toString()).concat(t).concat(e)}throw new Error("neither `accountId` nor `validStart` are set")}},{key:"_toProtobuf",value:function(){return{accountID:null!=this.accountId?this.accountId._toProtobuf():null,transactionValidStart:null!=this.validStart?this.validStart._toProtobuf():null,scheduled:this.scheduled,nonce:null!=this.nonce?this.nonce.toInt():null}}},{key:"toBytes",value:function(){return l.TransactionID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){return new e(this.accountId,this.validStart,this.scheduled,this.nonce)}},{key:"compare",value:function(e){var t=this.accountId.compare(e.accountId);return 0!=t?t:this.validStart.compare(e.validStart)}}],[{key:"withValidStart",value:function(t,n){return new e(t,n,null)}},{key:"generate",value:function(t){return new e("string"==typeof t?c.default.fromString(t):new c.default(t),s.default.generate())}},{key:"fromString",value:function(t){var n,r,o,i,u,l,d=t.split("@"),p=(0,a.default)(d,2);n=p[0];var h=(l=p[1]).split("."),y=(0,a.default)(h,2);if(r=y[0],(l=y[1]).includes("?")){var b=l.split("?scheduled"),m=(0,a.default)(b,2);o=m[0],i=!0,u=(l=m[1]).includes("/")?l.replace("/",""):null}else if(l.includes("/")){var v=l.split("/"),g=(0,a.default)(v,2);o=g[0],u=g[1],i=!1}else o=l;return new e(c.default.fromString(n),new s.default(f.default.fromValue(r),f.default.fromValue(o)),i,null!=u?f.default.fromString(u):null)}},{key:"_fromProtobuf",value:function(t){if(null!=t.accountID&&null!=t.transactionValidStart)return new e(c.default._fromProtobuf(t.accountID),s.default._fromProtobuf(t.transactionValidStart),t.scheduled,t.nonce);throw new Error("Neither `nonce` or `accountID` and `transactionValidStart` are set")}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TransactionID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2));function u(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return c(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return c(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&i.length>o&&!i.warned){i.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+i.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=i.length,u=c,console&&console.warn&&console.warn(u)}return e}function p(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},o=p.bind(r);return o.listener=n,r.wrapFn=o,o}function y(e,t,n){var r=e._events;if(void 0===r)return[];var o=r[t];return void 0===o?[]:"function"==typeof o?n?[o.listener||o]:[o]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(a=t[0]),a instanceof Error)throw a;var u=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw u.context=a,u}var c=o[e];if(void 0===c)return!1;if("function"==typeof c)i(c,this,t);else{var s=c.length,l=m(c,s);for(n=0;n=0;a--)if(n[a]===t||n[a].listener===t){i=n[a].listener,o=a;break}if(o<0)return this;0===o?n.shift():function(e,t){for(;t+1=0;r--)this.removeListener(e,t[r]);return this},c.prototype.listeners=function(e){return y(this,e,!0)},c.prototype.rawListeners=function(e){return y(this,e,!1)},c.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):b.call(e,t)},c.prototype.listenerCount=b,c.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2));function u(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return c(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return c(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n */var r=n(12),o=r.Buffer;function a(e,t){for(var n in e)t[n]=e[n]}function i(e,t,n){return o(e,t,n)}o.from&&o.alloc&&o.allocUnsafe&&o.allocUnsafeSlow?e.exports=r:(a(r,t),t.Buffer=i),i.prototype=Object.create(o.prototype),a(o,i),i.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return o(e,t,n)},i.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=o(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},i.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return o(e)},i.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2));function u(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return c(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return c(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nthis.wordSize&&f.throwError("value out-of-bounds",s.Logger.errors.BUFFER_OVERRUN,{length:this.wordSize,offset:t.length}),t.length%this.wordSize&&(t=(0,i.concat)([this._padding.slice(t.length%this.wordSize),t])),t}},{key:"writeValue",value:function(e){return this._writeData(this._getValue(e))}},{key:"writeUpdatableValue",value:function(){var e=this,t=this._data.length;return this._data.push(this._padding),this._dataLength+=this.wordSize,function(n){e._data[t]=e._getValue(n)}}}]),e}();t.Writer=p;var h=function(){function e(t,n,r,a){(0,o.default)(this,e),(0,c.defineReadOnly)(this,"_data",(0,i.arrayify)(t)),(0,c.defineReadOnly)(this,"wordSize",n||32),(0,c.defineReadOnly)(this,"_coerceFunc",r),(0,c.defineReadOnly)(this,"allowLoose",a),this._offset=0}return(0,a.default)(e,[{key:"data",get:function(){return(0,i.hexlify)(this._data)}},{key:"consumed",get:function(){return this._offset}},{key:"coerce",value:function(t,n){return this._coerceFunc?this._coerceFunc(t,n):e.coerce(t,n)}},{key:"_peekBytes",value:function(e,t,n){var r=Math.ceil(t/this.wordSize)*this.wordSize;return this._offset+r>this._data.length&&(this.allowLoose&&n&&this._offset+t<=this._data.length?r=t:f.throwError("data out-of-bounds",s.Logger.errors.BUFFER_OVERRUN,{length:this._data.length,offset:this._offset+r})),this._data.slice(this._offset,this._offset+r)}},{key:"subReader",value:function(t){return new e(this._data.slice(this._offset+t),this.wordSize,this._coerceFunc,this.allowLoose)}},{key:"readBytes",value:function(e,t){var n=this._peekBytes(0,e,!!t);return this._offset+=n.length,n.slice(0,e)}},{key:"readValue",value:function(){return u.BigNumber.from(this.readBytes(this.wordSize))}}],[{key:"coerce",value:function(e,t){var n=e.match("^u?int([0-9]+)$");return n&&parseInt(n[1])<=48&&(t=t.toNumber()),t}}]),e}();t.Reader=h},function(e,t,n){"use strict";e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(233),o=n(586);function a(t,n,i){return o()?(e.exports=a=Reflect.construct,e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=a=function(e,t,n){var o=[null];o.push.apply(o,t);var a=new(Function.bind.apply(e,o));return n&&r(a,n.prototype),a},e.exports.default=e.exports,e.exports.__esModule=!0),a.apply(null,arguments)}e.exports=a,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(59),o=n(15);function a(e,t){return 55296==(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1)))}function i(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function u(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=o,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var n=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),o=0;o>6|192,n[r++]=63&i|128):a(e,o)?(i=65536+((1023&i)<<10)+(1023&e.charCodeAt(++o)),n[r++]=i>>18|240,n[r++]=i>>12&63|128,n[r++]=i>>6&63|128,n[r++]=63&i|128):(n[r++]=i>>12|224,n[r++]=i>>6&63|128,n[r++]=63&i|128)}else for(o=0;o>>0}return i},t.split32=function(e,t){for(var n=new Array(4*e.length),r=0,o=0;r>>24,n[o+1]=a>>>16&255,n[o+2]=a>>>8&255,n[o+3]=255&a):(n[o+3]=a>>>24,n[o+2]=a>>>16&255,n[o+1]=a>>>8&255,n[o]=255&a)}return n},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,n){return e+t+n>>>0},t.sum32_4=function(e,t,n,r){return e+t+n+r>>>0},t.sum32_5=function(e,t,n,r,o){return e+t+n+r+o>>>0},t.sum64=function(e,t,n,r){var o=e[t],a=r+e[t+1]>>>0,i=(a>>0,e[t+1]=a},t.sum64_hi=function(e,t,n,r){return(t+r>>>0>>0},t.sum64_lo=function(e,t,n,r){return t+r>>>0},t.sum64_4_hi=function(e,t,n,r,o,a,i,u){var c=0,s=t;return c+=(s=s+r>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,n,r,o,a,i,u){return t+r+a+u>>>0},t.sum64_5_hi=function(e,t,n,r,o,a,i,u,c,s){var l=0,f=t;return l+=(f=f+r>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,n,r,o,a,i,u,c,s){return t+r+a+u+s>>>0},t.rotr64_hi=function(e,t,n){return(t<<32-n|e>>>n)>>>0},t.rotr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0},t.shr64_hi=function(e,t,n){return e>>>n},t.shr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(60));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this._ledgerId=t,Object.freeze(this)}return(0,i.default)(e,[{key:"toString",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return l[0];case 1:return l[1];case 2:return l[2];default:return u.encode(this._ledgerId)}}},{key:"_toStringForChecksum",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return"0";case 1:return"1";case 2:return"2";default:return u.encode(this._ledgerId)}}},{key:"toBytes",value:function(){return this._ledgerId}},{key:"isMainnet",value:function(){return this.toString()==l[0]}},{key:"isTestnet",value:function(){return this.toString()==l[1]}},{key:"isPreviewnet",value:function(){return this.toString()==l[2]}}],[{key:"fromString",value:function(t){switch(t){case l[0]:case"0":return e.MAINNET;case l[1]:case"1":return e.TESTNET;case l[2]:case"2":return e.PREVIEWNET;default:var n=u.decode(t);if(0==n.length&&0!=t.length)throw new Error("Default reached for fromString");return new e(n)}}},{key:"fromBytes",value:function(t){return new e(t)}}]),e}();t.default=s;var l=["mainnet","testnet","previewnet"];s.MAINNET=new s(new Uint8Array([0])),s.TESTNET=new s(new Uint8Array([1])),s.PREVIEWNET=new s(new Uint8Array([2]))},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(303),a=o.Hbar,i=o.HbarUnit,u=n(729),c=n(363),s=n(786),l=n(99),f=n(13),d=function e(t,n){var o=[];return n.forEach((function(n){if("object"===(0,r.default)(n.components)){if("tuple"!==n.type.substring(0,5))throw new Error("components found but type is not tuple; report on GitHub");var a="",i=n.type.indexOf("[");i>=0&&(a=n.type.substring(i));var u=e(t,n.components);Array.isArray(u)&&t?o.push("tuple("+u.join(",")+")"+a):t?o.push("("+u+")"):o.push("("+u.join(",")+")"+a)}else o.push(n.type)})),o},p=function(e){if(!c.isHexStrict(e))throw new Error("The parameter must be a valid HEX string.");var t="",n=0,r=e.length;for("0x"===e.substring(0,2)&&(n=2);n=e.length)&&56320==(64512&e.charCodeAt(t+1)))}function i(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function u(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=o,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var n=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),o=0;o>6|192,n[r++]=63&i|128):a(e,o)?(i=65536+((1023&i)<<10)+(1023&e.charCodeAt(++o)),n[r++]=i>>18|240,n[r++]=i>>12&63|128,n[r++]=i>>6&63|128,n[r++]=63&i|128):(n[r++]=i>>12|224,n[r++]=i>>6&63|128,n[r++]=63&i|128)}else for(o=0;o>>0}return i},t.split32=function(e,t){for(var n=new Array(4*e.length),r=0,o=0;r>>24,n[o+1]=a>>>16&255,n[o+2]=a>>>8&255,n[o+3]=255&a):(n[o+3]=a>>>24,n[o+2]=a>>>16&255,n[o+1]=a>>>8&255,n[o]=255&a)}return n},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,n){return e+t+n>>>0},t.sum32_4=function(e,t,n,r){return e+t+n+r>>>0},t.sum32_5=function(e,t,n,r,o){return e+t+n+r+o>>>0},t.sum64=function(e,t,n,r){var o=e[t],a=r+e[t+1]>>>0,i=(a>>0,e[t+1]=a},t.sum64_hi=function(e,t,n,r){return(t+r>>>0>>0},t.sum64_lo=function(e,t,n,r){return t+r>>>0},t.sum64_4_hi=function(e,t,n,r,o,a,i,u){var c=0,s=t;return c+=(s=s+r>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,n,r,o,a,i,u){return t+r+a+u>>>0},t.sum64_5_hi=function(e,t,n,r,o,a,i,u,c,s){var l=0,f=t;return l+=(f=f+r>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,n,r,o,a,i,u,c,s){return t+r+a+u+s>>>0},t.rotr64_hi=function(e,t,n){return(t<<32-n|e>>>n)>>>0},t.rotr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0},t.shr64_hi=function(e,t,n){return e>>>n},t.shr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(64));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this._ledgerId=t,Object.freeze(this)}return(0,i.default)(e,[{key:"toString",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return l[0];case 1:return l[1];case 2:return l[2];default:return u.encode(this._ledgerId)}}},{key:"_toStringForChecksum",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return"0";case 1:return"1";case 2:return"2";default:return u.encode(this._ledgerId)}}},{key:"toBytes",value:function(){return this._ledgerId}},{key:"isMainnet",value:function(){return this.toString()==l[0]}},{key:"isTestnet",value:function(){return this.toString()==l[1]}},{key:"isPreviewnet",value:function(){return this.toString()==l[2]}}],[{key:"fromString",value:function(t){switch(t){case l[0]:case"0":return e.MAINNET;case l[1]:case"1":return e.TESTNET;case l[2]:case"2":return e.PREVIEWNET;default:var n=u.decode(t);if(0==n.length&&0!=t.length)throw new Error("Default reached for fromString");return new e(n)}}},{key:"fromBytes",value:function(t){return new e(t)}}]),e}();t.default=s;var l=["mainnet","testnet","previewnet"];s.MAINNET=new s(new Uint8Array([0])),s.TESTNET=new s(new Uint8Array([1])),s.PREVIEWNET=new s(new Uint8Array([2]))},function(e,t,n){"use strict";var r=n(127),o=n(222);function a(e,t){return 55296==(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1)))}function i(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function u(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=o,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var n=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),o=0;o>6|192,n[r++]=63&i|128):a(e,o)?(i=65536+((1023&i)<<10)+(1023&e.charCodeAt(++o)),n[r++]=i>>18|240,n[r++]=i>>12&63|128,n[r++]=i>>6&63|128,n[r++]=63&i|128):(n[r++]=i>>12|224,n[r++]=i>>6&63|128,n[r++]=63&i|128)}else for(o=0;o>>0}return i},t.split32=function(e,t){for(var n=new Array(4*e.length),r=0,o=0;r>>24,n[o+1]=a>>>16&255,n[o+2]=a>>>8&255,n[o+3]=255&a):(n[o+3]=a>>>24,n[o+2]=a>>>16&255,n[o+1]=a>>>8&255,n[o]=255&a)}return n},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,n){return e+t+n>>>0},t.sum32_4=function(e,t,n,r){return e+t+n+r>>>0},t.sum32_5=function(e,t,n,r,o){return e+t+n+r+o>>>0},t.sum64=function(e,t,n,r){var o=e[t],a=r+e[t+1]>>>0,i=(a>>0,e[t+1]=a},t.sum64_hi=function(e,t,n,r){return(t+r>>>0>>0},t.sum64_lo=function(e,t,n,r){return t+r>>>0},t.sum64_4_hi=function(e,t,n,r,o,a,i,u){var c=0,s=t;return c+=(s=s+r>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,n,r,o,a,i,u){return t+r+a+u>>>0},t.sum64_5_hi=function(e,t,n,r,o,a,i,u,c,s){var l=0,f=t;return l+=(f=f+r>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,n,r,o,a,i,u,c,s){return t+r+a+u+s>>>0},t.rotr64_hi=function(e,t,n){return(t<<32-n|e>>>n)>>>0},t.rotr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0},t.shr64_hi=function(e,t,n){return e>>>n},t.shr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0}},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(83));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this._ledgerId=t,Object.freeze(this)}return(0,i.default)(e,[{key:"toString",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return l[0];case 1:return l[1];case 2:return l[2];default:return u.encode(this._ledgerId)}}},{key:"_toStringForChecksum",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return"0";case 1:return"1";case 2:return"2";default:return u.encode(this._ledgerId)}}},{key:"toBytes",value:function(){return this._ledgerId}},{key:"isMainnet",value:function(){return this.toString()==l[0]}},{key:"isTestnet",value:function(){return this.toString()==l[1]}},{key:"isPreviewnet",value:function(){return this.toString()==l[2]}}],[{key:"fromString",value:function(t){switch(t){case l[0]:case"0":return e.MAINNET;case l[1]:case"1":return e.TESTNET;case l[2]:case"2":return e.PREVIEWNET;default:var n=u.decode(t);if(0==n.length&&0!=t.length)throw new Error("Default reached for fromString");return new e(n)}}},{key:"fromBytes",value:function(t){return new e(t)}}]),e}();t.default=s;var l=["mainnet","testnet","previewnet"];s.MAINNET=new s(new Uint8Array([0])),s.TESTNET=new s(new Uint8Array([1])),s.PREVIEWNET=new s(new Uint8Array([2]))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e){var r;return(0,o.default)(this,n),(r=t.call(this,e instanceof Error?e.message:e)).name="BadKeyError",e instanceof Error&&(r.cause=e,r.stack=e.stack),r}return n}((0,r(n(46)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(180)),f=n(617),d=r(n(35)),p=r(n(97));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={contractId:null,keyList:null,thresholdKey:null,publicKeyED25519:null,publicKeyECDSA:null,privateKeyConstructor:null,accountIdConstructor:null,delegateContractId:null};t.default=r},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(137)),s=n(30);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{topicNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.TopicID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.topicNum?t.topicNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.TopicID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=f},function(e,t,n){"use strict";(function(t,r){var o=n(22).Buffer,a=t.crypto||t.msCrypto;a&&a.getRandomValues?e.exports=function(e,t){if(e>4294967295)throw new RangeError("requested too many random bytes");var n=o.allocUnsafe(e);if(e>0)if(e>65536)for(var i=0;ie.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={contractId:null,keyList:null,thresholdKey:null,publicKeyED25519:null,publicKeyECDSA:null,privateKeyConstructor:null,accountIdConstructor:null,delegateContractId:null};t.default=r},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(148)),s=n(31);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{topicNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.TopicID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.topicNum?t.topicNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.TopicID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=f},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(157)),s=n(34);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{topicNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.TopicID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.topicNum?t.topicNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.TopicID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=f},function(e,t,n){"use strict";var r,o=n(0)(n(3));!function(a){var i,u=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,c=Math.ceil,s=Math.floor,l="[BigNumber Error] ",f=l+"Number primitive has more than 15 significant digits: ",d=1e14,p=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],h=1e9;function y(e){var t=0|e;return e>0||e===t?t:t-1}function b(e){for(var t,n,r=1,o=e.length,a=e[0]+"";rs^n?1:-1;for(u=(c=o.length)<(s=a.length)?c:s,i=0;ia[i]^n?1:-1;return c==s?0:c>s^n?1:-1}function v(e,t,n,r){if(en||e!==s(e))throw Error(l+(r||"Argument")+("number"==typeof e?en?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function g(e){var t=e.c.length-1;return y(e.e/14)==t&&e.c[t]%2!=0}function k(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function _(e,t,n){var r,o;if(t<0){for(o=n+".";++t;o+=n);e=o+e}else if(++t>(r=e.length)){for(o=n,t-=r;--t;o+=n);e+=o}else tB?y.c=y.e=null:e.e=10;l/=10,c++);return void(c>B?y.c=y.e=null:(y.e=c,y.c=[e]))}h=String(e)}else{if(!u.test(h=String(e)))return a(y,h,d);y.s=45==h.charCodeAt(0)?(h=h.slice(1),-1):1}(c=h.indexOf("."))>-1&&(h=h.replace(".","")),(l=h.search(/e/i))>0?(c<0&&(c=l),c+=+h.slice(l+1),h=h.substring(0,l)):c<0&&(c=h.length)}else{if(v(t,2,U.length,"Base"),10==t&&L)return H(y=new K(e),S+y.e+1,R);if(h=String(e),d="number"==typeof e){if(0*e!=0)return a(y,h,d,t);if(y.s=1/e<0?(h=h.slice(1),-1):1,K.DEBUG&&h.replace(/^0\.0*|\./,"").length>15)throw Error(f+e)}else y.s=45===h.charCodeAt(0)?(h=h.slice(1),-1):1;for(n=U.slice(0,t),c=l=0,p=h.length;lc){c=p;continue}}else if(!i&&(h==h.toUpperCase()&&(h=h.toLowerCase())||h==h.toLowerCase()&&(h=h.toUpperCase()))){i=!0,l=-1,c=0;continue}return a(y,String(e),d,t)}d=!1,(c=(h=r(h,t,10,y.s)).indexOf("."))>-1?h=h.replace(".",""):c=h.length}for(l=0;48===h.charCodeAt(l);l++);for(p=h.length;48===h.charCodeAt(--p););if(h=h.slice(l,++p)){if(p-=l,d&&K.DEBUG&&p>15&&(e>9007199254740991||e!==s(e)))throw Error(f+y.s*e);if((c=c-l-1)>B)y.c=y.e=null;else if(c=C)?k(c,i):_(c,i,"0");else if(a=(e=H(new K(e),t,n)).e,u=(c=b(e.c)).length,1==r||2==r&&(t<=a||a<=D)){for(;uu){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=a-u)>0)for(a+1==u&&(c+=".");t--;c+="0");return e.s<0&&o?"-"+c:c}function z(e,t){for(var n,r=1,o=new K(e[0]);r=10;o/=10,r++);return(n=r+14*n-1)>B?e.c=e.e=null:n=10;u/=10,o++);if((a=t-o)<0)a+=14,i=t,h=(l=y[f=0])/b[o-i-1]%10|0;else if((f=c((a+1)/14))>=y.length){if(!r)break e;for(;y.length<=f;y.push(0));l=h=0,o=1,i=(a%=14)-14+1}else{for(l=u=y[f],o=1;u>=10;u/=10,o++);h=(i=(a%=14)-14+o)<0?0:l/b[o-i-1]%10|0}if(r=r||t<0||null!=y[f+1]||(i<0?l:l%b[o-i-1]),r=n<4?(h||r)&&(0==n||n==(e.s<0?3:2)):h>5||5==h&&(4==n||r||6==n&&(a>0?i>0?l/b[o-i]:0:y[f-1])%10&1||n==(e.s<0?8:7)),t<1||!y[0])return y.length=0,r?(t-=e.e+1,y[0]=b[(14-t%14)%14],e.e=-t||0):y[0]=e.e=0,e;if(0==a?(y.length=f,u=1,f--):(y.length=f+1,u=b[14-a],y[f]=i>0?s(l/b[o-i]%b[i])*u:0),r)for(;;){if(0==f){for(a=1,i=y[0];i>=10;i/=10,a++);for(i=y[0]+=u,u=1;i>=10;i/=10,u++);a!=u&&(e.e++,y[0]==d&&(y[0]=1));break}if(y[f]+=u,y[f]!=d)break;y[f--]=0,u=1}for(a=y.length;0===y[--a];y.pop());}e.e>B?e.c=e.e=null:e.e=C?k(t,n):_(t,n,"0"),e.s<0?"-"+t:t)}return K.clone=e,K.ROUND_UP=0,K.ROUND_DOWN=1,K.ROUND_CEIL=2,K.ROUND_FLOOR=3,K.ROUND_HALF_UP=4,K.ROUND_HALF_DOWN=5,K.ROUND_HALF_EVEN=6,K.ROUND_HALF_CEIL=7,K.ROUND_HALF_FLOOR=8,K.EUCLID=9,K.config=K.set=function(e){var t,n;if(null!=e){if("object"!=(0,o.default)(e))throw Error(l+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(v(n=e[t],0,h,t),S=n),e.hasOwnProperty(t="ROUNDING_MODE")&&(v(n=e[t],0,8,t),R=n),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((n=e[t])&&n.pop?(v(n[0],-h,0,t),v(n[1],0,h,t),D=n[0],C=n[1]):(v(n,-h,h,t),D=-(C=n<0?-n:n))),e.hasOwnProperty(t="RANGE"))if((n=e[t])&&n.pop)v(n[0],-h,-1,t),v(n[1],1,h,t),N=n[0],B=n[1];else{if(v(n,-h,h,t),!n)throw Error(l+t+" cannot be zero: "+n);N=-(B=n<0?-n:n)}if(e.hasOwnProperty(t="CRYPTO")){if((n=e[t])!==!!n)throw Error(l+t+" not true or false: "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw M=!n,Error(l+"crypto unavailable");M=n}else M=n}if(e.hasOwnProperty(t="MODULO_MODE")&&(v(n=e[t],0,9,t),j=n),e.hasOwnProperty(t="POW_PRECISION")&&(v(n=e[t],0,h,t),x=n),e.hasOwnProperty(t="FORMAT")){if(n=e[t],"object"!=(0,o.default)(n))throw Error(l+t+" not an object: "+n);F=n}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(n=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(n))throw Error(l+t+" invalid: "+n);L="0123456789"==n.slice(0,10),U=n}}return{DECIMAL_PLACES:S,ROUNDING_MODE:R,EXPONENTIAL_AT:[D,C],RANGE:[N,B],CRYPTO:M,MODULO_MODE:j,POW_PRECISION:x,FORMAT:F,ALPHABET:U}},K.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!K.DEBUG)return!0;var t,n,r=e.c,o=e.e,a=e.s;e:if("[object Array]"=={}.toString.call(r)){if((1===a||-1===a)&&o>=-h&&o<=h&&o===s(o)){if(0===r[0]){if(0===o&&1===r.length)return!0;break e}if((t=(o+1)%14)<1&&(t+=14),String(r[0]).length==t){for(t=0;t=d||n!==s(n))break e;if(0!==n)return!0}}}else if(null===r&&null===o&&(null===a||1===a||-1===a))return!0;throw Error(l+"Invalid BigNumber: "+e)},K.maximum=K.max=function(){return z(arguments,E.lt)},K.minimum=K.min=function(){return z(arguments,E.gt)},K.random=(i=9007199254740992*Math.random()&2097151?function(){return s(9007199254740992*Math.random())}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,n,r,o,a,u=0,f=[],d=new K(P);if(null==e?e=S:v(e,0,h),o=c(e/14),M)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(o*=2));u>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),t[u]=n[0],t[u+1]=n[1]):(f.push(a%1e14),u+=2);u=o/2}else{if(!crypto.randomBytes)throw M=!1,Error(l+"crypto unavailable");for(t=crypto.randomBytes(o*=7);u=9e15?crypto.randomBytes(7).copy(t,u):(f.push(a%1e14),u+=7);u=o/7}if(!M)for(;u=10;a/=10,u++);u<14&&(r-=14-u)}return d.e=r,d.c=f,d}),K.sum=function(){for(var e=1,t=arguments,n=new K(t[0]);en-1&&(null==i[o+1]&&(i[o+1]=0),i[o+1]+=i[o]/n|0,i[o]%=n)}return i.reverse()}return function(t,r,o,a,i){var u,c,s,l,f,d,p,h,y=t.indexOf("."),m=S,v=R;for(y>=0&&(l=x,x=0,t=t.replace(".",""),d=(h=new K(r)).pow(t.length-y),x=l,h.c=e(_(b(d.c),d.e,"0"),10,o,"0123456789"),h.e=h.c.length),s=l=(p=e(t,r,o,i?(u=U,"0123456789"):(u="0123456789",U))).length;0==p[--l];p.pop());if(!p[0])return u.charAt(0);if(y<0?--s:(d.c=p,d.e=s,d.s=a,p=(d=n(d,h,m,v,o)).c,f=d.r,s=d.e),y=p[c=s+m+1],l=o/2,f=f||c<0||null!=p[c+1],f=v<4?(null!=y||f)&&(0==v||v==(d.s<0?3:2)):y>l||y==l&&(4==v||f||6==v&&1&p[c-1]||v==(d.s<0?8:7)),c<1||!p[0])t=f?_(u.charAt(1),-m,u.charAt(0)):u.charAt(0);else{if(p.length=c,f)for(--o;++p[--c]>o;)p[c]=0,c||(++s,p=[1].concat(p));for(l=p.length;!p[--l];);for(y=0,t="";y<=l;t+=u.charAt(p[y++]));t=_(t,s,u.charAt(0))}return t}}(),n=function(){function e(e,t,n){var r,o,a,i,u=0,c=e.length,s=t%1e7,l=t/1e7|0;for(e=e.slice();c--;)u=((o=s*(a=e[c]%1e7)+(r=l*a+(i=e[c]/1e7|0)*s)%1e7*1e7+u)/n|0)+(r/1e7|0)+l*i,e[c]=o%n;return u&&(e=[u].concat(e)),e}function t(e,t,n,r){var o,a;if(n!=r)a=n>r?1:-1;else for(o=a=0;ot[o]?1:-1;break}return a}function n(e,t,n,r){for(var o=0;n--;)e[n]-=o,o=e[n]1;e.splice(0,1));}return function(r,o,a,i,u){var c,l,f,p,h,b,m,v,g,k,_,w,I,A,T,O,E,P=r.s==o.s?1:-1,S=r.c,R=o.c;if(!(S&&S[0]&&R&&R[0]))return new K(r.s&&o.s&&(S?!R||S[0]!=R[0]:R)?S&&0==S[0]||!R?0*P:P/0:NaN);for(g=(v=new K(P)).c=[],P=a+(l=r.e-o.e)+1,u||(u=d,l=y(r.e/14)-y(o.e/14),P=P/14|0),f=0;R[f]==(S[f]||0);f++);if(R[f]>(S[f]||0)&&l--,P<0)g.push(1),p=!0;else{for(A=S.length,O=R.length,f=0,P+=2,(h=s(u/(R[0]+1)))>1&&(R=e(R,h,u),S=e(S,h,u),O=R.length,A=S.length),I=O,_=(k=S.slice(0,O)).length;_=u/2&&T++;do{if(h=0,(c=t(R,k,O,_))<0){if(w=k[0],O!=_&&(w=w*u+(k[1]||0)),(h=s(w/T))>1)for(h>=u&&(h=u-1),m=(b=e(R,h,u)).length,_=k.length;1==t(b,k,m,_);)h--,n(b,O=10;P/=10,f++);H(v,a+(v.e=f+14*l-1)+1,i,p)}else v.e=l,v.r=+p;return v}}(),w=/^(-?)0([xbo])(?=\w[\w.]*$)/i,I=/^([^.]+)\.$/,A=/^\.([^.]+)$/,T=/^-?(Infinity|NaN)$/,O=/^\s*\+(?=[\w.])|^\s+|\s+$/g,a=function(e,t,n,r){var o,a=n?t:t.replace(O,"");if(T.test(a))e.s=isNaN(a)?null:a<0?-1:1;else{if(!n&&(a=a.replace(w,(function(e,t,n){return o="x"==(n=n.toLowerCase())?16:"b"==n?2:8,r&&r!=o?e:t})),r&&(o=r,a=a.replace(I,"$1").replace(A,"0.$1")),t!=a))return new K(a,o);if(K.DEBUG)throw Error(l+"Not a"+(r?" base "+r:"")+" number: "+t);e.s=null}e.c=e.e=null},E.absoluteValue=E.abs=function(){var e=new K(this);return e.s<0&&(e.s=1),e},E.comparedTo=function(e,t){return m(this,new K(e,t))},E.decimalPlaces=E.dp=function(e,t){var n,r,o,a=this;if(null!=e)return v(e,0,h),null==t?t=R:v(t,0,8),H(new K(a),e+a.e+1,t);if(!(n=a.c))return null;if(r=14*((o=n.length-1)-y(this.e/14)),o=n[o])for(;o%10==0;o/=10,r--);return r<0&&(r=0),r},E.dividedBy=E.div=function(e,t){return n(this,new K(e,t),S,R)},E.dividedToIntegerBy=E.idiv=function(e,t){return n(this,new K(e,t),0,1)},E.exponentiatedBy=E.pow=function(e,t){var n,r,o,a,i,u,f,d,p=this;if((e=new K(e)).c&&!e.isInteger())throw Error(l+"Exponent not an integer: "+V(e));if(null!=t&&(t=new K(t)),i=e.e>14,!p.c||!p.c[0]||1==p.c[0]&&!p.e&&1==p.c.length||!e.c||!e.c[0])return d=new K(Math.pow(+V(p),i?2-g(e):+V(e))),t?d.mod(t):d;if(u=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new K(NaN);(r=!u&&p.isInteger()&&t.isInteger())&&(p=p.mod(t))}else{if(e.e>9&&(p.e>0||p.e<-1||(0==p.e?p.c[0]>1||i&&p.c[1]>=24e7:p.c[0]<8e13||i&&p.c[0]<=9999975e7)))return a=p.s<0&&g(e)?-0:0,p.e>-1&&(a=1/a),new K(u?1/a:a);x&&(a=c(x/14+2))}for(i?(n=new K(.5),u&&(e.s=1),f=g(e)):f=(o=Math.abs(+V(e)))%2,d=new K(P);;){if(f){if(!(d=d.times(p)).c)break;a?d.c.length>a&&(d.c.length=a):r&&(d=d.mod(t))}if(o){if(0===(o=s(o/2)))break;f=o%2}else if(H(e=e.times(n),e.e+1,1),e.e>14)f=g(e);else{if(0===(o=+V(e)))break;f=o%2}p=p.times(p),a?p.c&&p.c.length>a&&(p.c.length=a):r&&(p=p.mod(t))}return r?d:(u&&(d=P.div(d)),t?d.mod(t):a?H(d,x,R,void 0):d)},E.integerValue=function(e){var t=new K(this);return null==e?e=R:v(e,0,8),H(t,t.e+1,e)},E.isEqualTo=E.eq=function(e,t){return 0===m(this,new K(e,t))},E.isFinite=function(){return!!this.c},E.isGreaterThan=E.gt=function(e,t){return m(this,new K(e,t))>0},E.isGreaterThanOrEqualTo=E.gte=function(e,t){return 1===(t=m(this,new K(e,t)))||0===t},E.isInteger=function(){return!!this.c&&y(this.e/14)>this.c.length-2},E.isLessThan=E.lt=function(e,t){return m(this,new K(e,t))<0},E.isLessThanOrEqualTo=E.lte=function(e,t){return-1===(t=m(this,new K(e,t)))||0===t},E.isNaN=function(){return!this.s},E.isNegative=function(){return this.s<0},E.isPositive=function(){return this.s>0},E.isZero=function(){return!!this.c&&0==this.c[0]},E.minus=function(e,t){var n,r,o,a,i=this,u=i.s;if(t=(e=new K(e,t)).s,!u||!t)return new K(NaN);if(u!=t)return e.s=-t,i.plus(e);var c=i.e/14,s=e.e/14,l=i.c,f=e.c;if(!c||!s){if(!l||!f)return l?(e.s=-t,e):new K(f?i:NaN);if(!l[0]||!f[0])return f[0]?(e.s=-t,e):new K(l[0]?i:3==R?-0:0)}if(c=y(c),s=y(s),l=l.slice(),u=c-s){for((a=u<0)?(u=-u,o=l):(s=c,o=f),o.reverse(),t=u;t--;o.push(0));o.reverse()}else for(r=(a=(u=l.length)<(t=f.length))?u:t,u=t=0;t0)for(;t--;l[n++]=0);for(t=d-1;r>u;){if(l[--r]=0;){for(n=0,p=k[o]%1e7,h=k[o]/1e7|0,a=o+(i=c);a>o;)n=((s=p*(s=g[--i]%1e7)+(u=h*s+(l=g[i]/1e7|0)*p)%1e7*1e7+b[a]+n)/m|0)+(u/1e7|0)+h*l,b[a--]=s%m;b[a]=n}return n?++r:b.splice(0,1),Q(e,b,r)},E.negated=function(){var e=new K(this);return e.s=-e.s||null,e},E.plus=function(e,t){var n,r=this,o=r.s;if(t=(e=new K(e,t)).s,!o||!t)return new K(NaN);if(o!=t)return e.s=-t,r.minus(e);var a=r.e/14,i=e.e/14,u=r.c,c=e.c;if(!a||!i){if(!u||!c)return new K(o/0);if(!u[0]||!c[0])return c[0]?e:new K(u[0]?r:0*o)}if(a=y(a),i=y(i),u=u.slice(),o=a-i){for(o>0?(i=a,n=c):(o=-o,n=u),n.reverse();o--;n.push(0));n.reverse()}for((o=u.length)-(t=c.length)<0&&(n=c,c=u,u=n,t=o),o=0;t;)o=(u[--t]=u[t]+c[t]+o)/d|0,u[t]=d===u[t]?0:u[t]%d;return o&&(u=[o].concat(u),++i),Q(e,u,i)},E.precision=E.sd=function(e,t){var n,r,o,a=this;if(null!=e&&e!==!!e)return v(e,1,h),null==t?t=R:v(t,0,8),H(new K(a),e,t);if(!(n=a.c))return null;if(r=14*(o=n.length-1)+1,o=n[o]){for(;o%10==0;o/=10,r--);for(o=n[0];o>=10;o/=10,r++);}return e&&a.e+1>r&&(r=a.e+1),r},E.shiftedBy=function(e){return v(e,-9007199254740991,9007199254740991),this.times("1e"+e)},E.squareRoot=E.sqrt=function(){var e,t,r,o,a,i=this,u=i.c,c=i.s,s=i.e,l=S+4,f=new K("0.5");if(1!==c||!u||!u[0])return new K(!c||c<0&&(!u||u[0])?NaN:u?i:1/0);if(0==(c=Math.sqrt(+V(i)))||c==1/0?(((t=b(u)).length+s)%2==0&&(t+="0"),c=Math.sqrt(+t),s=y((s+1)/2)-(s<0||s%2),r=new K(t=c==1/0?"5e"+s:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+s)):r=new K(c+""),r.c[0])for((c=(s=r.e)+l)<3&&(c=0);;)if(a=r,r=f.times(a.plus(n(i,a,l,1))),b(a.c).slice(0,c)===(t=b(r.c)).slice(0,c)){if(r.e0&&b>0){for(i=b%c||c,d=y.substr(0,i);i0&&(d+=f+y.slice(i)),h&&(d="-"+d)}r=p?d+(n.decimalSeparator||"")+((s=+n.fractionGroupSize)?p.replace(new RegExp("\\d{"+s+"}\\B","g"),"$&"+(n.fractionGroupSeparator||"")):p):d}return(n.prefix||"")+r+(n.suffix||"")},E.toFraction=function(e){var t,r,o,a,i,u,c,s,f,d,h,y,m=this,v=m.c;if(null!=e&&(!(c=new K(e)).isInteger()&&(c.c||1!==c.s)||c.lt(P)))throw Error(l+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+V(c));if(!v)return new K(m);for(t=new K(P),f=r=new K(P),o=s=new K(P),y=b(v),i=t.e=y.length-m.e-1,t.c[0]=p[(u=i%14)<0?14+u:u],e=!e||c.comparedTo(t)>0?i>0?t:f:c,u=B,B=1/0,c=new K(y),s.c[0]=0;d=n(c,t,0,1),1!=(a=r.plus(d.times(o))).comparedTo(e);)r=o,o=a,f=s.plus(d.times(a=f)),s=a,t=c.minus(d.times(a=t)),c=a;return a=n(e.minus(r),o,0,1),s=s.plus(a.times(f)),r=r.plus(a.times(o)),s.s=f.s=m.s,h=n(f,o,i*=2,R).minus(m).abs().comparedTo(n(s,r,i,R).minus(m).abs())<1?[f,o]:[s,r],B=u,h},E.toNumber=function(){return+V(this)},E.toPrecision=function(e,t){return null!=e&&v(e,1,h),G(this,e,t,2)},E.toString=function(e){var t,n=this,o=n.s,a=n.e;return null===a?o?(t="Infinity",o<0&&(t="-"+t)):t="NaN":(null==e?t=a<=D||a>=C?k(b(n.c),a):_(b(n.c),a,"0"):10===e&&L?t=_(b((n=H(new K(n),S+a+1,R)).c),n.e,"0"):(v(e,2,U.length,"Base"),t=r(_(b(n.c),a,"0"),10,e,o,!0)),o<0&&n.c[0]&&(t="-"+t)),t},E.valueOf=E.toJSON=function(){return V(this)},E._isBigNumber=!0,null!=t&&K.set(t),K}()).default=i.BigNumber=i,void 0===(r=function(){return i}.call(t,n,t,e))||(e.exports=r)}()},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(35)),l=r(n(97));function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e,t){(0,i.default)(r,e);var n=f(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i0)},o.Buffer=function(){try{var e=o.inquire("buffer").Buffer;return e.prototype.utf8Write?e:null}catch(e){return null}}(),o._Buffer_from=null,o._Buffer_allocUnsafe=null,o.newBuffer=function(e){return"number"==typeof e?o.Buffer?o._Buffer_allocUnsafe(e):new o.Array(e):o.Buffer?o._Buffer_from(e):"undefined"==typeof Uint8Array?e:new Uint8Array(e)},o.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,o.Long=o.global.dcodeIO&&o.global.dcodeIO.Long||o.global.Long||o.inquire("long"),o.key2Re=/^true|false|0|1$/,o.key32Re=/^-?(?:0|[1-9][0-9]*)$/,o.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,o.longToHash=function(e){return e?o.LongBits.from(e).toHash():o.LongBits.zeroHash},o.longFromHash=function(e,t){var n=o.LongBits.fromHash(e);return o.Long?o.Long.fromBits(n.lo,n.hi,t):n.toNumber(Boolean(t))},o.merge=a,o.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)},o.newError=i,o.ProtocolError=i("ProtocolError"),o.oneOfGetter=function(e){for(var t={},n=0;n-1;--n)if(1===t[e[n]]&&void 0!==this[e[n]]&&null!==this[e[n]])return e[n]}},o.oneOfSetter=function(e){return function(t){for(var n=0;nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(null!=this._minBackoff&&eDate.now())){e.next=10;break}throw new Error("timeout exceeded");case 10:if(u=this._getNodeAccountId(),null!=(s=t._network.getNode(u))){e.next=14;break}throw new Error("NodeAccountId not recognized: ".concat(u.toString()));case 14:return l=s.getChannel(),e.next=17,this._makeRequestAsync();case 17:if(d=e.sent,this._advanceRequest(),p=void 0,s.isHealthy()){e.next=23;break}return e.next=23,s.wait();case 23:return e.prev=23,y=[],null!=this._grpcDeadline&&y.push(new Promise((function(e,t){return setTimeout((function(){return t(new Error("grpc deadline exceeded"))}),m._grpcDeadline)}))),y.push(this._execute(l,d)),e.next=29,Promise.race(y);case 29:p=e.sent,e.next=39;break;case 32:if(e.prev=32,e.t0=e.catch(23),!((b=c.default._fromResponse(e.t0))instanceof c.default&&this._shouldRetryExceptionally(b)&&i<=r)){e.next=38;break}return s.increaseDelay(),e.abrupt("continue",49);case 38:throw e.t0;case 39:s.decreaseDelay(),e.t1=this._shouldRetry(d,p),e.next=e.t1===f.Retry?43:e.t1===f.Finished?46:e.t1===f.Error?47:48;break;case 43:return e.next=45,h(i,this._minBackoff,this._maxBackoff);case 45:return e.abrupt("continue",49);case 46:return e.abrupt("return",this._mapResponse(p,u,d));case 47:throw this._mapStatusError(d,p);case 48:throw new Error("(BUG) non-exhuastive switch statement for `ExecutionState`");case 49:i+=1,e.next=8;break;case 52:case"end":return e.stop()}}),e,this,[[23,32]])}))),function(e,n){return t.apply(this,arguments)})}]),e}();function h(e,t,n){var r=Math.min(Math.floor(t*Math.pow(2,e)),n);return new Promise((function(e){return setTimeout(e,r)}))}t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(76)),i=r(n(42)),u=r(n(1)),c=r(n(2)),s=d(n(137)),l=d(n(30));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=function(){function e(t,n,r){(0,u.default)(this,e);var o=s.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){s.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return s.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{scheduleNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return s.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return l.ScheduleID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return s.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=s.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.scheduleNum?t.scheduleNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.ScheduleID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(s.fromSolidityAddress(t)))}}]),e}();t.default=p},function(e,t,n){"use strict";(function(e){var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.baToJSON=t.toUtf8=t.addHexPrefix=t.toUnsigned=t.fromSigned=t.bufferToHex=t.bufferToInt=t.toBuffer=t.unpadHexString=t.unpadArray=t.unpadBuffer=t.setLengthRight=t.setLengthLeft=t.zeros=t.intToBuffer=t.intToHex=void 0;var o=r(n(13)),a=n(140),i=n(196);t.intToHex=function(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("Received an invalid integer type: "+e);return"0x"+e.toString(16)};t.intToBuffer=function(n){var r=(0,t.intToHex)(n);return e.from((0,a.padToEven)(r.slice(2)),"hex")};t.zeros=function(t){return e.allocUnsafe(t).fill(0)};var u=function(e,n,r){var o=(0,t.zeros)(n);return r?e.length0&&"0"===t.toString();)t=(e=e.slice(1))[0];return e};t.unpadBuffer=function(e){return(0,i.assertIsBuffer)(e),c(e)};t.unpadArray=function(e){return(0,i.assertIsArray)(e),c(e)};t.unpadHexString=function(e){return(0,i.assertIsHexString)(e),e=(0,a.stripHexPrefix)(e),c(e)};t.toBuffer=function(n){if(null==n)return e.allocUnsafe(0);if(e.isBuffer(n))return e.from(n);if(Array.isArray(n)||n instanceof Uint8Array)return e.from(n);if("string"==typeof n){if(!(0,a.isHexString)(n))throw new Error("Cannot convert string to buffer. toBuffer only supports 0x-prefixed hex strings and this string was given: "+n);return e.from((0,a.padToEven)((0,a.stripHexPrefix)(n)),"hex")}if("number"==typeof n)return(0,t.intToBuffer)(n);if(o.default.isBN(n))return n.toArrayLike(e);if(n.toArray)return e.from(n.toArray());if(n.toBuffer)return e.from(n.toBuffer());throw new Error("invalid type")};t.bufferToInt=function(e){return new o.default((0,t.toBuffer)(e)).toNumber()};t.bufferToHex=function(e){return"0x"+(e=(0,t.toBuffer)(e)).toString("hex")};t.fromSigned=function(e){return new o.default(e).fromTwos(256)};t.toUnsigned=function(t){return e.from(t.toTwos(256).toArray())};t.addHexPrefix=function(e){return"string"!=typeof e||(0,a.isHexPrefixed)(e)?e:"0x"+e};t.toUtf8=function(t){if((t=(0,a.stripHexPrefix)(t)).length%2!=0)throw new Error("Invalid non-even hex string input for toUtf8() provided");return e.from(t.replace(/^(00)+|(00)+$/g,""),"hex").toString("utf8")};t.baToJSON=function(n){if(e.isBuffer(n))return"0x"+n.toString("hex");if(n instanceof Array){for(var r=[],o=0;o0||e===t?t:t-1}function b(e){for(var t,n,r=1,o=e.length,a=e[0]+"";rs^n?1:-1;for(u=(c=o.length)<(s=a.length)?c:s,i=0;ia[i]^n?1:-1;return c==s?0:c>s^n?1:-1}function v(e,t,n,r){if(en||e!==s(e))throw Error(l+(r||"Argument")+("number"==typeof e?en?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function g(e){var t=e.c.length-1;return y(e.e/14)==t&&e.c[t]%2!=0}function k(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function _(e,t,n){var r,o;if(t<0){for(o=n+".";++t;o+=n);e=o+e}else if(++t>(r=e.length)){for(o=n,t-=r;--t;o+=n);e+=o}else tB?y.c=y.e=null:e.e=10;l/=10,c++);return void(c>B?y.c=y.e=null:(y.e=c,y.c=[e]))}h=String(e)}else{if(!u.test(h=String(e)))return a(y,h,d);y.s=45==h.charCodeAt(0)?(h=h.slice(1),-1):1}(c=h.indexOf("."))>-1&&(h=h.replace(".","")),(l=h.search(/e/i))>0?(c<0&&(c=l),c+=+h.slice(l+1),h=h.substring(0,l)):c<0&&(c=h.length)}else{if(v(t,2,U.length,"Base"),10==t&&L)return H(y=new K(e),S+y.e+1,R);if(h=String(e),d="number"==typeof e){if(0*e!=0)return a(y,h,d,t);if(y.s=1/e<0?(h=h.slice(1),-1):1,K.DEBUG&&h.replace(/^0\.0*|\./,"").length>15)throw Error(f+e)}else y.s=45===h.charCodeAt(0)?(h=h.slice(1),-1):1;for(n=U.slice(0,t),c=l=0,p=h.length;lc){c=p;continue}}else if(!i&&(h==h.toUpperCase()&&(h=h.toLowerCase())||h==h.toLowerCase()&&(h=h.toUpperCase()))){i=!0,l=-1,c=0;continue}return a(y,String(e),d,t)}d=!1,(c=(h=r(h,t,10,y.s)).indexOf("."))>-1?h=h.replace(".",""):c=h.length}for(l=0;48===h.charCodeAt(l);l++);for(p=h.length;48===h.charCodeAt(--p););if(h=h.slice(l,++p)){if(p-=l,d&&K.DEBUG&&p>15&&(e>9007199254740991||e!==s(e)))throw Error(f+y.s*e);if((c=c-l-1)>B)y.c=y.e=null;else if(c=C)?k(c,i):_(c,i,"0");else if(a=(e=H(new K(e),t,n)).e,u=(c=b(e.c)).length,1==r||2==r&&(t<=a||a<=D)){for(;uu){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=a-u)>0)for(a+1==u&&(c+=".");t--;c+="0");return e.s<0&&o?"-"+c:c}function z(e,t){for(var n,r=1,o=new K(e[0]);r=10;o/=10,r++);return(n=r+14*n-1)>B?e.c=e.e=null:n=10;u/=10,o++);if((a=t-o)<0)a+=14,i=t,h=(l=y[f=0])/b[o-i-1]%10|0;else if((f=c((a+1)/14))>=y.length){if(!r)break e;for(;y.length<=f;y.push(0));l=h=0,o=1,i=(a%=14)-14+1}else{for(l=u=y[f],o=1;u>=10;u/=10,o++);h=(i=(a%=14)-14+o)<0?0:l/b[o-i-1]%10|0}if(r=r||t<0||null!=y[f+1]||(i<0?l:l%b[o-i-1]),r=n<4?(h||r)&&(0==n||n==(e.s<0?3:2)):h>5||5==h&&(4==n||r||6==n&&(a>0?i>0?l/b[o-i]:0:y[f-1])%10&1||n==(e.s<0?8:7)),t<1||!y[0])return y.length=0,r?(t-=e.e+1,y[0]=b[(14-t%14)%14],e.e=-t||0):y[0]=e.e=0,e;if(0==a?(y.length=f,u=1,f--):(y.length=f+1,u=b[14-a],y[f]=i>0?s(l/b[o-i]%b[i])*u:0),r)for(;;){if(0==f){for(a=1,i=y[0];i>=10;i/=10,a++);for(i=y[0]+=u,u=1;i>=10;i/=10,u++);a!=u&&(e.e++,y[0]==d&&(y[0]=1));break}if(y[f]+=u,y[f]!=d)break;y[f--]=0,u=1}for(a=y.length;0===y[--a];y.pop());}e.e>B?e.c=e.e=null:e.e=C?k(t,n):_(t,n,"0"),e.s<0?"-"+t:t)}return K.clone=e,K.ROUND_UP=0,K.ROUND_DOWN=1,K.ROUND_CEIL=2,K.ROUND_FLOOR=3,K.ROUND_HALF_UP=4,K.ROUND_HALF_DOWN=5,K.ROUND_HALF_EVEN=6,K.ROUND_HALF_CEIL=7,K.ROUND_HALF_FLOOR=8,K.EUCLID=9,K.config=K.set=function(e){var t,n;if(null!=e){if("object"!=(0,o.default)(e))throw Error(l+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(v(n=e[t],0,h,t),S=n),e.hasOwnProperty(t="ROUNDING_MODE")&&(v(n=e[t],0,8,t),R=n),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((n=e[t])&&n.pop?(v(n[0],-h,0,t),v(n[1],0,h,t),D=n[0],C=n[1]):(v(n,-h,h,t),D=-(C=n<0?-n:n))),e.hasOwnProperty(t="RANGE"))if((n=e[t])&&n.pop)v(n[0],-h,-1,t),v(n[1],1,h,t),N=n[0],B=n[1];else{if(v(n,-h,h,t),!n)throw Error(l+t+" cannot be zero: "+n);N=-(B=n<0?-n:n)}if(e.hasOwnProperty(t="CRYPTO")){if((n=e[t])!==!!n)throw Error(l+t+" not true or false: "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw M=!n,Error(l+"crypto unavailable");M=n}else M=n}if(e.hasOwnProperty(t="MODULO_MODE")&&(v(n=e[t],0,9,t),j=n),e.hasOwnProperty(t="POW_PRECISION")&&(v(n=e[t],0,h,t),x=n),e.hasOwnProperty(t="FORMAT")){if(n=e[t],"object"!=(0,o.default)(n))throw Error(l+t+" not an object: "+n);F=n}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(n=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(n))throw Error(l+t+" invalid: "+n);L="0123456789"==n.slice(0,10),U=n}}return{DECIMAL_PLACES:S,ROUNDING_MODE:R,EXPONENTIAL_AT:[D,C],RANGE:[N,B],CRYPTO:M,MODULO_MODE:j,POW_PRECISION:x,FORMAT:F,ALPHABET:U}},K.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!K.DEBUG)return!0;var t,n,r=e.c,o=e.e,a=e.s;e:if("[object Array]"=={}.toString.call(r)){if((1===a||-1===a)&&o>=-h&&o<=h&&o===s(o)){if(0===r[0]){if(0===o&&1===r.length)return!0;break e}if((t=(o+1)%14)<1&&(t+=14),String(r[0]).length==t){for(t=0;t=d||n!==s(n))break e;if(0!==n)return!0}}}else if(null===r&&null===o&&(null===a||1===a||-1===a))return!0;throw Error(l+"Invalid BigNumber: "+e)},K.maximum=K.max=function(){return z(arguments,E.lt)},K.minimum=K.min=function(){return z(arguments,E.gt)},K.random=(i=9007199254740992*Math.random()&2097151?function(){return s(9007199254740992*Math.random())}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,n,r,o,a,u=0,f=[],d=new K(P);if(null==e?e=S:v(e,0,h),o=c(e/14),M)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(o*=2));u>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),t[u]=n[0],t[u+1]=n[1]):(f.push(a%1e14),u+=2);u=o/2}else{if(!crypto.randomBytes)throw M=!1,Error(l+"crypto unavailable");for(t=crypto.randomBytes(o*=7);u=9e15?crypto.randomBytes(7).copy(t,u):(f.push(a%1e14),u+=7);u=o/7}if(!M)for(;u=10;a/=10,u++);u<14&&(r-=14-u)}return d.e=r,d.c=f,d}),K.sum=function(){for(var e=1,t=arguments,n=new K(t[0]);en-1&&(null==i[o+1]&&(i[o+1]=0),i[o+1]+=i[o]/n|0,i[o]%=n)}return i.reverse()}return function(t,r,o,a,i){var u,c,s,l,f,d,p,h,y=t.indexOf("."),m=S,v=R;for(y>=0&&(l=x,x=0,t=t.replace(".",""),d=(h=new K(r)).pow(t.length-y),x=l,h.c=e(_(b(d.c),d.e,"0"),10,o,"0123456789"),h.e=h.c.length),s=l=(p=e(t,r,o,i?(u=U,"0123456789"):(u="0123456789",U))).length;0==p[--l];p.pop());if(!p[0])return u.charAt(0);if(y<0?--s:(d.c=p,d.e=s,d.s=a,p=(d=n(d,h,m,v,o)).c,f=d.r,s=d.e),y=p[c=s+m+1],l=o/2,f=f||c<0||null!=p[c+1],f=v<4?(null!=y||f)&&(0==v||v==(d.s<0?3:2)):y>l||y==l&&(4==v||f||6==v&&1&p[c-1]||v==(d.s<0?8:7)),c<1||!p[0])t=f?_(u.charAt(1),-m,u.charAt(0)):u.charAt(0);else{if(p.length=c,f)for(--o;++p[--c]>o;)p[c]=0,c||(++s,p=[1].concat(p));for(l=p.length;!p[--l];);for(y=0,t="";y<=l;t+=u.charAt(p[y++]));t=_(t,s,u.charAt(0))}return t}}(),n=function(){function e(e,t,n){var r,o,a,i,u=0,c=e.length,s=t%1e7,l=t/1e7|0;for(e=e.slice();c--;)u=((o=s*(a=e[c]%1e7)+(r=l*a+(i=e[c]/1e7|0)*s)%1e7*1e7+u)/n|0)+(r/1e7|0)+l*i,e[c]=o%n;return u&&(e=[u].concat(e)),e}function t(e,t,n,r){var o,a;if(n!=r)a=n>r?1:-1;else for(o=a=0;ot[o]?1:-1;break}return a}function n(e,t,n,r){for(var o=0;n--;)e[n]-=o,o=e[n]1;e.splice(0,1));}return function(r,o,a,i,u){var c,l,f,p,h,b,m,v,g,k,_,w,I,A,T,O,E,P=r.s==o.s?1:-1,S=r.c,R=o.c;if(!(S&&S[0]&&R&&R[0]))return new K(r.s&&o.s&&(S?!R||S[0]!=R[0]:R)?S&&0==S[0]||!R?0*P:P/0:NaN);for(g=(v=new K(P)).c=[],P=a+(l=r.e-o.e)+1,u||(u=d,l=y(r.e/14)-y(o.e/14),P=P/14|0),f=0;R[f]==(S[f]||0);f++);if(R[f]>(S[f]||0)&&l--,P<0)g.push(1),p=!0;else{for(A=S.length,O=R.length,f=0,P+=2,(h=s(u/(R[0]+1)))>1&&(R=e(R,h,u),S=e(S,h,u),O=R.length,A=S.length),I=O,_=(k=S.slice(0,O)).length;_=u/2&&T++;do{if(h=0,(c=t(R,k,O,_))<0){if(w=k[0],O!=_&&(w=w*u+(k[1]||0)),(h=s(w/T))>1)for(h>=u&&(h=u-1),m=(b=e(R,h,u)).length,_=k.length;1==t(b,k,m,_);)h--,n(b,O=10;P/=10,f++);H(v,a+(v.e=f+14*l-1)+1,i,p)}else v.e=l,v.r=+p;return v}}(),w=/^(-?)0([xbo])(?=\w[\w.]*$)/i,I=/^([^.]+)\.$/,A=/^\.([^.]+)$/,T=/^-?(Infinity|NaN)$/,O=/^\s*\+(?=[\w.])|^\s+|\s+$/g,a=function(e,t,n,r){var o,a=n?t:t.replace(O,"");if(T.test(a))e.s=isNaN(a)?null:a<0?-1:1;else{if(!n&&(a=a.replace(w,(function(e,t,n){return o="x"==(n=n.toLowerCase())?16:"b"==n?2:8,r&&r!=o?e:t})),r&&(o=r,a=a.replace(I,"$1").replace(A,"0.$1")),t!=a))return new K(a,o);if(K.DEBUG)throw Error(l+"Not a"+(r?" base "+r:"")+" number: "+t);e.s=null}e.c=e.e=null},E.absoluteValue=E.abs=function(){var e=new K(this);return e.s<0&&(e.s=1),e},E.comparedTo=function(e,t){return m(this,new K(e,t))},E.decimalPlaces=E.dp=function(e,t){var n,r,o,a=this;if(null!=e)return v(e,0,h),null==t?t=R:v(t,0,8),H(new K(a),e+a.e+1,t);if(!(n=a.c))return null;if(r=14*((o=n.length-1)-y(this.e/14)),o=n[o])for(;o%10==0;o/=10,r--);return r<0&&(r=0),r},E.dividedBy=E.div=function(e,t){return n(this,new K(e,t),S,R)},E.dividedToIntegerBy=E.idiv=function(e,t){return n(this,new K(e,t),0,1)},E.exponentiatedBy=E.pow=function(e,t){var n,r,o,a,i,u,f,d,p=this;if((e=new K(e)).c&&!e.isInteger())throw Error(l+"Exponent not an integer: "+V(e));if(null!=t&&(t=new K(t)),i=e.e>14,!p.c||!p.c[0]||1==p.c[0]&&!p.e&&1==p.c.length||!e.c||!e.c[0])return d=new K(Math.pow(+V(p),i?2-g(e):+V(e))),t?d.mod(t):d;if(u=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new K(NaN);(r=!u&&p.isInteger()&&t.isInteger())&&(p=p.mod(t))}else{if(e.e>9&&(p.e>0||p.e<-1||(0==p.e?p.c[0]>1||i&&p.c[1]>=24e7:p.c[0]<8e13||i&&p.c[0]<=9999975e7)))return a=p.s<0&&g(e)?-0:0,p.e>-1&&(a=1/a),new K(u?1/a:a);x&&(a=c(x/14+2))}for(i?(n=new K(.5),u&&(e.s=1),f=g(e)):f=(o=Math.abs(+V(e)))%2,d=new K(P);;){if(f){if(!(d=d.times(p)).c)break;a?d.c.length>a&&(d.c.length=a):r&&(d=d.mod(t))}if(o){if(0===(o=s(o/2)))break;f=o%2}else if(H(e=e.times(n),e.e+1,1),e.e>14)f=g(e);else{if(0===(o=+V(e)))break;f=o%2}p=p.times(p),a?p.c&&p.c.length>a&&(p.c.length=a):r&&(p=p.mod(t))}return r?d:(u&&(d=P.div(d)),t?d.mod(t):a?H(d,x,R,void 0):d)},E.integerValue=function(e){var t=new K(this);return null==e?e=R:v(e,0,8),H(t,t.e+1,e)},E.isEqualTo=E.eq=function(e,t){return 0===m(this,new K(e,t))},E.isFinite=function(){return!!this.c},E.isGreaterThan=E.gt=function(e,t){return m(this,new K(e,t))>0},E.isGreaterThanOrEqualTo=E.gte=function(e,t){return 1===(t=m(this,new K(e,t)))||0===t},E.isInteger=function(){return!!this.c&&y(this.e/14)>this.c.length-2},E.isLessThan=E.lt=function(e,t){return m(this,new K(e,t))<0},E.isLessThanOrEqualTo=E.lte=function(e,t){return-1===(t=m(this,new K(e,t)))||0===t},E.isNaN=function(){return!this.s},E.isNegative=function(){return this.s<0},E.isPositive=function(){return this.s>0},E.isZero=function(){return!!this.c&&0==this.c[0]},E.minus=function(e,t){var n,r,o,a,i=this,u=i.s;if(t=(e=new K(e,t)).s,!u||!t)return new K(NaN);if(u!=t)return e.s=-t,i.plus(e);var c=i.e/14,s=e.e/14,l=i.c,f=e.c;if(!c||!s){if(!l||!f)return l?(e.s=-t,e):new K(f?i:NaN);if(!l[0]||!f[0])return f[0]?(e.s=-t,e):new K(l[0]?i:3==R?-0:0)}if(c=y(c),s=y(s),l=l.slice(),u=c-s){for((a=u<0)?(u=-u,o=l):(s=c,o=f),o.reverse(),t=u;t--;o.push(0));o.reverse()}else for(r=(a=(u=l.length)<(t=f.length))?u:t,u=t=0;t0)for(;t--;l[n++]=0);for(t=d-1;r>u;){if(l[--r]=0;){for(n=0,p=k[o]%1e7,h=k[o]/1e7|0,a=o+(i=c);a>o;)n=((s=p*(s=g[--i]%1e7)+(u=h*s+(l=g[i]/1e7|0)*p)%1e7*1e7+b[a]+n)/m|0)+(u/1e7|0)+h*l,b[a--]=s%m;b[a]=n}return n?++r:b.splice(0,1),Q(e,b,r)},E.negated=function(){var e=new K(this);return e.s=-e.s||null,e},E.plus=function(e,t){var n,r=this,o=r.s;if(t=(e=new K(e,t)).s,!o||!t)return new K(NaN);if(o!=t)return e.s=-t,r.minus(e);var a=r.e/14,i=e.e/14,u=r.c,c=e.c;if(!a||!i){if(!u||!c)return new K(o/0);if(!u[0]||!c[0])return c[0]?e:new K(u[0]?r:0*o)}if(a=y(a),i=y(i),u=u.slice(),o=a-i){for(o>0?(i=a,n=c):(o=-o,n=u),n.reverse();o--;n.push(0));n.reverse()}for((o=u.length)-(t=c.length)<0&&(n=c,c=u,u=n,t=o),o=0;t;)o=(u[--t]=u[t]+c[t]+o)/d|0,u[t]=d===u[t]?0:u[t]%d;return o&&(u=[o].concat(u),++i),Q(e,u,i)},E.precision=E.sd=function(e,t){var n,r,o,a=this;if(null!=e&&e!==!!e)return v(e,1,h),null==t?t=R:v(t,0,8),H(new K(a),e,t);if(!(n=a.c))return null;if(r=14*(o=n.length-1)+1,o=n[o]){for(;o%10==0;o/=10,r--);for(o=n[0];o>=10;o/=10,r++);}return e&&a.e+1>r&&(r=a.e+1),r},E.shiftedBy=function(e){return v(e,-9007199254740991,9007199254740991),this.times("1e"+e)},E.squareRoot=E.sqrt=function(){var e,t,r,o,a,i=this,u=i.c,c=i.s,s=i.e,l=S+4,f=new K("0.5");if(1!==c||!u||!u[0])return new K(!c||c<0&&(!u||u[0])?NaN:u?i:1/0);if(0==(c=Math.sqrt(+V(i)))||c==1/0?(((t=b(u)).length+s)%2==0&&(t+="0"),c=Math.sqrt(+t),s=y((s+1)/2)-(s<0||s%2),r=new K(t=c==1/0?"5e"+s:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+s)):r=new K(c+""),r.c[0])for((c=(s=r.e)+l)<3&&(c=0);;)if(a=r,r=f.times(a.plus(n(i,a,l,1))),b(a.c).slice(0,c)===(t=b(r.c)).slice(0,c)){if(r.e0&&b>0){for(i=b%c||c,d=y.substr(0,i);i0&&(d+=f+y.slice(i)),h&&(d="-"+d)}r=p?d+(n.decimalSeparator||"")+((s=+n.fractionGroupSize)?p.replace(new RegExp("\\d{"+s+"}\\B","g"),"$&"+(n.fractionGroupSeparator||"")):p):d}return(n.prefix||"")+r+(n.suffix||"")},E.toFraction=function(e){var t,r,o,a,i,u,c,s,f,d,h,y,m=this,v=m.c;if(null!=e&&(!(c=new K(e)).isInteger()&&(c.c||1!==c.s)||c.lt(P)))throw Error(l+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+V(c));if(!v)return new K(m);for(t=new K(P),f=r=new K(P),o=s=new K(P),y=b(v),i=t.e=y.length-m.e-1,t.c[0]=p[(u=i%14)<0?14+u:u],e=!e||c.comparedTo(t)>0?i>0?t:f:c,u=B,B=1/0,c=new K(y),s.c[0]=0;d=n(c,t,0,1),1!=(a=r.plus(d.times(o))).comparedTo(e);)r=o,o=a,f=s.plus(d.times(a=f)),s=a,t=c.minus(d.times(a=t)),c=a;return a=n(e.minus(r),o,0,1),s=s.plus(a.times(f)),r=r.plus(a.times(o)),s.s=f.s=m.s,h=n(f,o,i*=2,R).minus(m).abs().comparedTo(n(s,r,i,R).minus(m).abs())<1?[f,o]:[s,r],B=u,h},E.toNumber=function(){return+V(this)},E.toPrecision=function(e,t){return null!=e&&v(e,1,h),G(this,e,t,2)},E.toString=function(e){var t,n=this,o=n.s,a=n.e;return null===a?o?(t="Infinity",o<0&&(t="-"+t)):t="NaN":(null==e?t=a<=D||a>=C?k(b(n.c),a):_(b(n.c),a,"0"):10===e&&L?t=_(b((n=H(new K(n),S+a+1,R)).c),n.e,"0"):(v(e,2,U.length,"Base"),t=r(_(b(n.c),a,"0"),10,e,o,!0)),o<0&&n.c[0]&&(t="-"+t)),t},E.valueOf=E.toJSON=function(){return V(this)},E._isBigNumber=!0,null!=t&&K.set(t),K}()).default=i.BigNumber=i,void 0===(r=function(){return i}.call(t,n,t,e))||(e.exports=r)}()},function(e,t,n){"use strict";function r(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=r,r.equal=function(e,t,n){if(e!=t)throw new Error(n||"Assertion failed: "+e+" != "+t)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(37)),l=r(n(103));function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e,t){(0,i.default)(r,e);var n=f(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i0)},o.Buffer=function(){try{var e=o.inquire("buffer").Buffer;return e.prototype.utf8Write?e:null}catch(e){return null}}(),o._Buffer_from=null,o._Buffer_allocUnsafe=null,o.newBuffer=function(e){return"number"==typeof e?o.Buffer?o._Buffer_allocUnsafe(e):new o.Array(e):o.Buffer?o._Buffer_from(e):"undefined"==typeof Uint8Array?e:new Uint8Array(e)},o.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,o.Long=o.global.dcodeIO&&o.global.dcodeIO.Long||o.global.Long||o.inquire("long"),o.key2Re=/^true|false|0|1$/,o.key32Re=/^-?(?:0|[1-9][0-9]*)$/,o.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,o.longToHash=function(e){return e?o.LongBits.from(e).toHash():o.LongBits.zeroHash},o.longFromHash=function(e,t){var n=o.LongBits.fromHash(e);return o.Long?o.Long.fromBits(n.lo,n.hi,t):n.toNumber(Boolean(t))},o.merge=a,o.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)},o.newError=i,o.ProtocolError=i("ProtocolError"),o.oneOfGetter=function(e){for(var t={},n=0;n-1;--n)if(1===t[e[n]]&&void 0!==this[e[n]]&&null!==this[e[n]])return e[n]}},o.oneOfSetter=function(e){return function(t){for(var n=0;nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(null!=this._minBackoff&&eDate.now())){e.next=10;break}throw new Error("timeout exceeded");case 10:if(u=this._getNodeAccountId(),null!=(s=t._network.getNode(u))){e.next=14;break}throw new Error("NodeAccountId not recognized: ".concat(u.toString()));case 14:return l=s.getChannel(),e.next=17,this._makeRequestAsync();case 17:if(d=e.sent,this._advanceRequest(),p=void 0,s.isHealthy()){e.next=23;break}return e.next=23,s.wait();case 23:return e.prev=23,y=[],null!=this._grpcDeadline&&y.push(new Promise((function(e,t){return setTimeout((function(){return t(new Error("grpc deadline exceeded"))}),m._grpcDeadline)}))),y.push(this._execute(l,d)),e.next=29,Promise.race(y);case 29:p=e.sent,e.next=39;break;case 32:if(e.prev=32,e.t0=e.catch(23),!((b=c.default._fromResponse(e.t0))instanceof c.default&&this._shouldRetryExceptionally(b)&&i<=r)){e.next=38;break}return s.increaseDelay(),e.abrupt("continue",49);case 38:throw e.t0;case 39:s.decreaseDelay(),e.t1=this._shouldRetry(d,p),e.next=e.t1===f.Retry?43:e.t1===f.Finished?46:e.t1===f.Error?47:48;break;case 43:return e.next=45,h(i,this._minBackoff,this._maxBackoff);case 45:return e.abrupt("continue",49);case 46:return e.abrupt("return",this._mapResponse(p,u,d));case 47:throw this._mapStatusError(d,p);case 48:throw new Error("(BUG) non-exhuastive switch statement for `ExecutionState`");case 49:i+=1,e.next=8;break;case 52:case"end":return e.stop()}}),e,this,[[23,32]])}))),function(e,n){return t.apply(this,arguments)})}]),e}();function h(e,t,n){var r=Math.min(Math.floor(t*Math.pow(2,e)),n);return new Promise((function(e){return setTimeout(e,r)}))}t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(76)),i=r(n(42)),u=r(n(1)),c=r(n(2)),s=d(n(148)),l=d(n(31));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=function(){function e(t,n,r){(0,u.default)(this,e);var o=s.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){s.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return s.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{scheduleNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return s.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return l.ScheduleID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return s.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=s.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.scheduleNum?t.scheduleNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.ScheduleID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(s.fromSolidityAddress(t)))}}]),e}();t.default=p},function(e,t,n){"use strict";(function(e){var r=function(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0}),t.bufArrToArr=t.arrToBufArr=t.validateNoLeadingZeroes=t.baToJSON=t.toUtf8=t.addHexPrefix=t.toUnsigned=t.fromSigned=t.bufferToHex=t.bufferToInt=t.toBuffer=t.unpadHexString=t.unpadArray=t.unpadBuffer=t.setLengthRight=t.setLengthLeft=t.zeros=t.intToBuffer=t.intToHex=void 0;var a=n(92),i=n(152),u=n(217);t.intToHex=function(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("Received an invalid integer type: ".concat(e));return"0x".concat(e.toString(16))};t.intToBuffer=function(n){var r=(0,t.intToHex)(n);return e.from((0,i.padToEven)(r.slice(2)),"hex")};t.zeros=function(t){return e.allocUnsafe(t).fill(0)};var c=function(e,n,r){var o=(0,t.zeros)(n);return r?e.length0&&"0"===t.toString();)t=(e=e.slice(1))[0];return e};t.unpadBuffer=function(e){return(0,u.assertIsBuffer)(e),s(e)};t.unpadArray=function(e){return(0,u.assertIsArray)(e),s(e)};t.unpadHexString=function(e){return(0,u.assertIsHexString)(e),e=(0,i.stripHexPrefix)(e),s(e)};t.toBuffer=function(n){if(null==n)return e.allocUnsafe(0);if(e.isBuffer(n))return e.from(n);if(Array.isArray(n)||n instanceof Uint8Array)return e.from(n);if("string"==typeof n){if(!(0,i.isHexString)(n))throw new Error("Cannot convert string to buffer. toBuffer only supports 0x-prefixed hex strings and this string was given: ".concat(n));return e.from((0,i.padToEven)((0,i.stripHexPrefix)(n)),"hex")}if("number"==typeof n)return(0,t.intToBuffer)(n);if(a.BN.isBN(n)){if(n.isNeg())throw new Error("Cannot convert negative BN to buffer. Given: ".concat(n));return n.toArrayLike(e)}if(n.toArray)return e.from(n.toArray());if(n.toBuffer)return e.from(n.toBuffer());throw new Error("invalid type")};t.bufferToInt=function(e){return new a.BN((0,t.toBuffer)(e)).toNumber()};t.bufferToHex=function(e){return"0x"+(e=(0,t.toBuffer)(e)).toString("hex")};t.fromSigned=function(e){return new a.BN(e).fromTwos(256)};t.toUnsigned=function(t){return e.from(t.toTwos(256).toArray())};t.addHexPrefix=function(e){return"string"!=typeof e||(0,i.isHexPrefixed)(e)?e:"0x"+e};t.toUtf8=function(t){if((t=(0,i.stripHexPrefix)(t)).length%2!=0)throw new Error("Invalid non-even hex string input for toUtf8() provided");return e.from(t.replace(/^(00)+|(00)+$/g,""),"hex").toString("utf8")};t.baToJSON=function(n){if(e.isBuffer(n))return"0x".concat(n.toString("hex"));if(n instanceof Array){for(var r=[],o=0;o0&&0===s[0])throw new Error("".concat(c," cannot have leading zeroes, received: ").concat(s.toString("hex")))}}catch(e){t={error:e}}finally{try{i&&!i.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}},t.arrToBufArr=function t(n){return Array.isArray(n)?n.map((function(e){return t(e)})):e.from(n)},t.bufArrToArr=function e(t){return Array.isArray(t)?t.map((function(t){return e(t)})):Uint8Array.from(null!=t?t:[])}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";var r,o=n(0)(n(3));!function(a){var i,u=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,c=Math.ceil,s=Math.floor,l="[BigNumber Error] ",f=l+"Number primitive has more than 15 significant digits: ",d=1e14,p=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],h=1e9;function y(e){var t=0|e;return e>0||e===t?t:t-1}function b(e){for(var t,n,r=1,o=e.length,a=e[0]+"";rs^n?1:-1;for(u=(c=o.length)<(s=a.length)?c:s,i=0;ia[i]^n?1:-1;return c==s?0:c>s^n?1:-1}function v(e,t,n,r){if(en||e!==s(e))throw Error(l+(r||"Argument")+("number"==typeof e?en?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function g(e){var t=e.c.length-1;return y(e.e/14)==t&&e.c[t]%2!=0}function k(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function _(e,t,n){var r,o;if(t<0){for(o=n+".";++t;o+=n);e=o+e}else if(++t>(r=e.length)){for(o=n,t-=r;--t;o+=n);e+=o}else tB?y.c=y.e=null:e.e=10;l/=10,c++);return void(c>B?y.c=y.e=null:(y.e=c,y.c=[e]))}h=String(e)}else{if(!u.test(h=String(e)))return a(y,h,d);y.s=45==h.charCodeAt(0)?(h=h.slice(1),-1):1}(c=h.indexOf("."))>-1&&(h=h.replace(".","")),(l=h.search(/e/i))>0?(c<0&&(c=l),c+=+h.slice(l+1),h=h.substring(0,l)):c<0&&(c=h.length)}else{if(v(t,2,U.length,"Base"),10==t&&L)return H(y=new K(e),S+y.e+1,R);if(h=String(e),d="number"==typeof e){if(0*e!=0)return a(y,h,d,t);if(y.s=1/e<0?(h=h.slice(1),-1):1,K.DEBUG&&h.replace(/^0\.0*|\./,"").length>15)throw Error(f+e)}else y.s=45===h.charCodeAt(0)?(h=h.slice(1),-1):1;for(n=U.slice(0,t),c=l=0,p=h.length;lc){c=p;continue}}else if(!i&&(h==h.toUpperCase()&&(h=h.toLowerCase())||h==h.toLowerCase()&&(h=h.toUpperCase()))){i=!0,l=-1,c=0;continue}return a(y,String(e),d,t)}d=!1,(c=(h=r(h,t,10,y.s)).indexOf("."))>-1?h=h.replace(".",""):c=h.length}for(l=0;48===h.charCodeAt(l);l++);for(p=h.length;48===h.charCodeAt(--p););if(h=h.slice(l,++p)){if(p-=l,d&&K.DEBUG&&p>15&&(e>9007199254740991||e!==s(e)))throw Error(f+y.s*e);if((c=c-l-1)>B)y.c=y.e=null;else if(c=C)?k(c,i):_(c,i,"0");else if(a=(e=H(new K(e),t,n)).e,u=(c=b(e.c)).length,1==r||2==r&&(t<=a||a<=D)){for(;uu){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=a-u)>0)for(a+1==u&&(c+=".");t--;c+="0");return e.s<0&&o?"-"+c:c}function z(e,t){for(var n,r=1,o=new K(e[0]);r=10;o/=10,r++);return(n=r+14*n-1)>B?e.c=e.e=null:n=10;u/=10,o++);if((a=t-o)<0)a+=14,i=t,h=(l=y[f=0])/b[o-i-1]%10|0;else if((f=c((a+1)/14))>=y.length){if(!r)break e;for(;y.length<=f;y.push(0));l=h=0,o=1,i=(a%=14)-14+1}else{for(l=u=y[f],o=1;u>=10;u/=10,o++);h=(i=(a%=14)-14+o)<0?0:l/b[o-i-1]%10|0}if(r=r||t<0||null!=y[f+1]||(i<0?l:l%b[o-i-1]),r=n<4?(h||r)&&(0==n||n==(e.s<0?3:2)):h>5||5==h&&(4==n||r||6==n&&(a>0?i>0?l/b[o-i]:0:y[f-1])%10&1||n==(e.s<0?8:7)),t<1||!y[0])return y.length=0,r?(t-=e.e+1,y[0]=b[(14-t%14)%14],e.e=-t||0):y[0]=e.e=0,e;if(0==a?(y.length=f,u=1,f--):(y.length=f+1,u=b[14-a],y[f]=i>0?s(l/b[o-i]%b[i])*u:0),r)for(;;){if(0==f){for(a=1,i=y[0];i>=10;i/=10,a++);for(i=y[0]+=u,u=1;i>=10;i/=10,u++);a!=u&&(e.e++,y[0]==d&&(y[0]=1));break}if(y[f]+=u,y[f]!=d)break;y[f--]=0,u=1}for(a=y.length;0===y[--a];y.pop());}e.e>B?e.c=e.e=null:e.e=C?k(t,n):_(t,n,"0"),e.s<0?"-"+t:t)}return K.clone=e,K.ROUND_UP=0,K.ROUND_DOWN=1,K.ROUND_CEIL=2,K.ROUND_FLOOR=3,K.ROUND_HALF_UP=4,K.ROUND_HALF_DOWN=5,K.ROUND_HALF_EVEN=6,K.ROUND_HALF_CEIL=7,K.ROUND_HALF_FLOOR=8,K.EUCLID=9,K.config=K.set=function(e){var t,n;if(null!=e){if("object"!=(0,o.default)(e))throw Error(l+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(v(n=e[t],0,h,t),S=n),e.hasOwnProperty(t="ROUNDING_MODE")&&(v(n=e[t],0,8,t),R=n),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((n=e[t])&&n.pop?(v(n[0],-h,0,t),v(n[1],0,h,t),D=n[0],C=n[1]):(v(n,-h,h,t),D=-(C=n<0?-n:n))),e.hasOwnProperty(t="RANGE"))if((n=e[t])&&n.pop)v(n[0],-h,-1,t),v(n[1],1,h,t),N=n[0],B=n[1];else{if(v(n,-h,h,t),!n)throw Error(l+t+" cannot be zero: "+n);N=-(B=n<0?-n:n)}if(e.hasOwnProperty(t="CRYPTO")){if((n=e[t])!==!!n)throw Error(l+t+" not true or false: "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw M=!n,Error(l+"crypto unavailable");M=n}else M=n}if(e.hasOwnProperty(t="MODULO_MODE")&&(v(n=e[t],0,9,t),j=n),e.hasOwnProperty(t="POW_PRECISION")&&(v(n=e[t],0,h,t),x=n),e.hasOwnProperty(t="FORMAT")){if(n=e[t],"object"!=(0,o.default)(n))throw Error(l+t+" not an object: "+n);F=n}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(n=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(n))throw Error(l+t+" invalid: "+n);L="0123456789"==n.slice(0,10),U=n}}return{DECIMAL_PLACES:S,ROUNDING_MODE:R,EXPONENTIAL_AT:[D,C],RANGE:[N,B],CRYPTO:M,MODULO_MODE:j,POW_PRECISION:x,FORMAT:F,ALPHABET:U}},K.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!K.DEBUG)return!0;var t,n,r=e.c,o=e.e,a=e.s;e:if("[object Array]"=={}.toString.call(r)){if((1===a||-1===a)&&o>=-h&&o<=h&&o===s(o)){if(0===r[0]){if(0===o&&1===r.length)return!0;break e}if((t=(o+1)%14)<1&&(t+=14),String(r[0]).length==t){for(t=0;t=d||n!==s(n))break e;if(0!==n)return!0}}}else if(null===r&&null===o&&(null===a||1===a||-1===a))return!0;throw Error(l+"Invalid BigNumber: "+e)},K.maximum=K.max=function(){return z(arguments,E.lt)},K.minimum=K.min=function(){return z(arguments,E.gt)},K.random=(i=9007199254740992*Math.random()&2097151?function(){return s(9007199254740992*Math.random())}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,n,r,o,a,u=0,f=[],d=new K(P);if(null==e?e=S:v(e,0,h),o=c(e/14),M)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(o*=2));u>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),t[u]=n[0],t[u+1]=n[1]):(f.push(a%1e14),u+=2);u=o/2}else{if(!crypto.randomBytes)throw M=!1,Error(l+"crypto unavailable");for(t=crypto.randomBytes(o*=7);u=9e15?crypto.randomBytes(7).copy(t,u):(f.push(a%1e14),u+=7);u=o/7}if(!M)for(;u=10;a/=10,u++);u<14&&(r-=14-u)}return d.e=r,d.c=f,d}),K.sum=function(){for(var e=1,t=arguments,n=new K(t[0]);en-1&&(null==i[o+1]&&(i[o+1]=0),i[o+1]+=i[o]/n|0,i[o]%=n)}return i.reverse()}return function(t,r,o,a,i){var u,c,s,l,f,d,p,h,y=t.indexOf("."),m=S,v=R;for(y>=0&&(l=x,x=0,t=t.replace(".",""),d=(h=new K(r)).pow(t.length-y),x=l,h.c=e(_(b(d.c),d.e,"0"),10,o,"0123456789"),h.e=h.c.length),s=l=(p=e(t,r,o,i?(u=U,"0123456789"):(u="0123456789",U))).length;0==p[--l];p.pop());if(!p[0])return u.charAt(0);if(y<0?--s:(d.c=p,d.e=s,d.s=a,p=(d=n(d,h,m,v,o)).c,f=d.r,s=d.e),y=p[c=s+m+1],l=o/2,f=f||c<0||null!=p[c+1],f=v<4?(null!=y||f)&&(0==v||v==(d.s<0?3:2)):y>l||y==l&&(4==v||f||6==v&&1&p[c-1]||v==(d.s<0?8:7)),c<1||!p[0])t=f?_(u.charAt(1),-m,u.charAt(0)):u.charAt(0);else{if(p.length=c,f)for(--o;++p[--c]>o;)p[c]=0,c||(++s,p=[1].concat(p));for(l=p.length;!p[--l];);for(y=0,t="";y<=l;t+=u.charAt(p[y++]));t=_(t,s,u.charAt(0))}return t}}(),n=function(){function e(e,t,n){var r,o,a,i,u=0,c=e.length,s=t%1e7,l=t/1e7|0;for(e=e.slice();c--;)u=((o=s*(a=e[c]%1e7)+(r=l*a+(i=e[c]/1e7|0)*s)%1e7*1e7+u)/n|0)+(r/1e7|0)+l*i,e[c]=o%n;return u&&(e=[u].concat(e)),e}function t(e,t,n,r){var o,a;if(n!=r)a=n>r?1:-1;else for(o=a=0;ot[o]?1:-1;break}return a}function n(e,t,n,r){for(var o=0;n--;)e[n]-=o,o=e[n]1;e.splice(0,1));}return function(r,o,a,i,u){var c,l,f,p,h,b,m,v,g,k,_,w,I,A,T,O,E,P=r.s==o.s?1:-1,S=r.c,R=o.c;if(!(S&&S[0]&&R&&R[0]))return new K(r.s&&o.s&&(S?!R||S[0]!=R[0]:R)?S&&0==S[0]||!R?0*P:P/0:NaN);for(g=(v=new K(P)).c=[],P=a+(l=r.e-o.e)+1,u||(u=d,l=y(r.e/14)-y(o.e/14),P=P/14|0),f=0;R[f]==(S[f]||0);f++);if(R[f]>(S[f]||0)&&l--,P<0)g.push(1),p=!0;else{for(A=S.length,O=R.length,f=0,P+=2,(h=s(u/(R[0]+1)))>1&&(R=e(R,h,u),S=e(S,h,u),O=R.length,A=S.length),I=O,_=(k=S.slice(0,O)).length;_=u/2&&T++;do{if(h=0,(c=t(R,k,O,_))<0){if(w=k[0],O!=_&&(w=w*u+(k[1]||0)),(h=s(w/T))>1)for(h>=u&&(h=u-1),m=(b=e(R,h,u)).length,_=k.length;1==t(b,k,m,_);)h--,n(b,O=10;P/=10,f++);H(v,a+(v.e=f+14*l-1)+1,i,p)}else v.e=l,v.r=+p;return v}}(),w=/^(-?)0([xbo])(?=\w[\w.]*$)/i,I=/^([^.]+)\.$/,A=/^\.([^.]+)$/,T=/^-?(Infinity|NaN)$/,O=/^\s*\+(?=[\w.])|^\s+|\s+$/g,a=function(e,t,n,r){var o,a=n?t:t.replace(O,"");if(T.test(a))e.s=isNaN(a)?null:a<0?-1:1;else{if(!n&&(a=a.replace(w,(function(e,t,n){return o="x"==(n=n.toLowerCase())?16:"b"==n?2:8,r&&r!=o?e:t})),r&&(o=r,a=a.replace(I,"$1").replace(A,"0.$1")),t!=a))return new K(a,o);if(K.DEBUG)throw Error(l+"Not a"+(r?" base "+r:"")+" number: "+t);e.s=null}e.c=e.e=null},E.absoluteValue=E.abs=function(){var e=new K(this);return e.s<0&&(e.s=1),e},E.comparedTo=function(e,t){return m(this,new K(e,t))},E.decimalPlaces=E.dp=function(e,t){var n,r,o,a=this;if(null!=e)return v(e,0,h),null==t?t=R:v(t,0,8),H(new K(a),e+a.e+1,t);if(!(n=a.c))return null;if(r=14*((o=n.length-1)-y(this.e/14)),o=n[o])for(;o%10==0;o/=10,r--);return r<0&&(r=0),r},E.dividedBy=E.div=function(e,t){return n(this,new K(e,t),S,R)},E.dividedToIntegerBy=E.idiv=function(e,t){return n(this,new K(e,t),0,1)},E.exponentiatedBy=E.pow=function(e,t){var n,r,o,a,i,u,f,d,p=this;if((e=new K(e)).c&&!e.isInteger())throw Error(l+"Exponent not an integer: "+V(e));if(null!=t&&(t=new K(t)),i=e.e>14,!p.c||!p.c[0]||1==p.c[0]&&!p.e&&1==p.c.length||!e.c||!e.c[0])return d=new K(Math.pow(+V(p),i?2-g(e):+V(e))),t?d.mod(t):d;if(u=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new K(NaN);(r=!u&&p.isInteger()&&t.isInteger())&&(p=p.mod(t))}else{if(e.e>9&&(p.e>0||p.e<-1||(0==p.e?p.c[0]>1||i&&p.c[1]>=24e7:p.c[0]<8e13||i&&p.c[0]<=9999975e7)))return a=p.s<0&&g(e)?-0:0,p.e>-1&&(a=1/a),new K(u?1/a:a);x&&(a=c(x/14+2))}for(i?(n=new K(.5),u&&(e.s=1),f=g(e)):f=(o=Math.abs(+V(e)))%2,d=new K(P);;){if(f){if(!(d=d.times(p)).c)break;a?d.c.length>a&&(d.c.length=a):r&&(d=d.mod(t))}if(o){if(0===(o=s(o/2)))break;f=o%2}else if(H(e=e.times(n),e.e+1,1),e.e>14)f=g(e);else{if(0===(o=+V(e)))break;f=o%2}p=p.times(p),a?p.c&&p.c.length>a&&(p.c.length=a):r&&(p=p.mod(t))}return r?d:(u&&(d=P.div(d)),t?d.mod(t):a?H(d,x,R,void 0):d)},E.integerValue=function(e){var t=new K(this);return null==e?e=R:v(e,0,8),H(t,t.e+1,e)},E.isEqualTo=E.eq=function(e,t){return 0===m(this,new K(e,t))},E.isFinite=function(){return!!this.c},E.isGreaterThan=E.gt=function(e,t){return m(this,new K(e,t))>0},E.isGreaterThanOrEqualTo=E.gte=function(e,t){return 1===(t=m(this,new K(e,t)))||0===t},E.isInteger=function(){return!!this.c&&y(this.e/14)>this.c.length-2},E.isLessThan=E.lt=function(e,t){return m(this,new K(e,t))<0},E.isLessThanOrEqualTo=E.lte=function(e,t){return-1===(t=m(this,new K(e,t)))||0===t},E.isNaN=function(){return!this.s},E.isNegative=function(){return this.s<0},E.isPositive=function(){return this.s>0},E.isZero=function(){return!!this.c&&0==this.c[0]},E.minus=function(e,t){var n,r,o,a,i=this,u=i.s;if(t=(e=new K(e,t)).s,!u||!t)return new K(NaN);if(u!=t)return e.s=-t,i.plus(e);var c=i.e/14,s=e.e/14,l=i.c,f=e.c;if(!c||!s){if(!l||!f)return l?(e.s=-t,e):new K(f?i:NaN);if(!l[0]||!f[0])return f[0]?(e.s=-t,e):new K(l[0]?i:3==R?-0:0)}if(c=y(c),s=y(s),l=l.slice(),u=c-s){for((a=u<0)?(u=-u,o=l):(s=c,o=f),o.reverse(),t=u;t--;o.push(0));o.reverse()}else for(r=(a=(u=l.length)<(t=f.length))?u:t,u=t=0;t0)for(;t--;l[n++]=0);for(t=d-1;r>u;){if(l[--r]=0;){for(n=0,p=k[o]%1e7,h=k[o]/1e7|0,a=o+(i=c);a>o;)n=((s=p*(s=g[--i]%1e7)+(u=h*s+(l=g[i]/1e7|0)*p)%1e7*1e7+b[a]+n)/m|0)+(u/1e7|0)+h*l,b[a--]=s%m;b[a]=n}return n?++r:b.splice(0,1),Q(e,b,r)},E.negated=function(){var e=new K(this);return e.s=-e.s||null,e},E.plus=function(e,t){var n,r=this,o=r.s;if(t=(e=new K(e,t)).s,!o||!t)return new K(NaN);if(o!=t)return e.s=-t,r.minus(e);var a=r.e/14,i=e.e/14,u=r.c,c=e.c;if(!a||!i){if(!u||!c)return new K(o/0);if(!u[0]||!c[0])return c[0]?e:new K(u[0]?r:0*o)}if(a=y(a),i=y(i),u=u.slice(),o=a-i){for(o>0?(i=a,n=c):(o=-o,n=u),n.reverse();o--;n.push(0));n.reverse()}for((o=u.length)-(t=c.length)<0&&(n=c,c=u,u=n,t=o),o=0;t;)o=(u[--t]=u[t]+c[t]+o)/d|0,u[t]=d===u[t]?0:u[t]%d;return o&&(u=[o].concat(u),++i),Q(e,u,i)},E.precision=E.sd=function(e,t){var n,r,o,a=this;if(null!=e&&e!==!!e)return v(e,1,h),null==t?t=R:v(t,0,8),H(new K(a),e,t);if(!(n=a.c))return null;if(r=14*(o=n.length-1)+1,o=n[o]){for(;o%10==0;o/=10,r--);for(o=n[0];o>=10;o/=10,r++);}return e&&a.e+1>r&&(r=a.e+1),r},E.shiftedBy=function(e){return v(e,-9007199254740991,9007199254740991),this.times("1e"+e)},E.squareRoot=E.sqrt=function(){var e,t,r,o,a,i=this,u=i.c,c=i.s,s=i.e,l=S+4,f=new K("0.5");if(1!==c||!u||!u[0])return new K(!c||c<0&&(!u||u[0])?NaN:u?i:1/0);if(0==(c=Math.sqrt(+V(i)))||c==1/0?(((t=b(u)).length+s)%2==0&&(t+="0"),c=Math.sqrt(+t),s=y((s+1)/2)-(s<0||s%2),r=new K(t=c==1/0?"5e"+s:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+s)):r=new K(c+""),r.c[0])for((c=(s=r.e)+l)<3&&(c=0);;)if(a=r,r=f.times(a.plus(n(i,a,l,1))),b(a.c).slice(0,c)===(t=b(r.c)).slice(0,c)){if(r.e0&&b>0){for(i=b%c||c,d=y.substr(0,i);i0&&(d+=f+y.slice(i)),h&&(d="-"+d)}r=p?d+(n.decimalSeparator||"")+((s=+n.fractionGroupSize)?p.replace(new RegExp("\\d{"+s+"}\\B","g"),"$&"+(n.fractionGroupSeparator||"")):p):d}return(n.prefix||"")+r+(n.suffix||"")},E.toFraction=function(e){var t,r,o,a,i,u,c,s,f,d,h,y,m=this,v=m.c;if(null!=e&&(!(c=new K(e)).isInteger()&&(c.c||1!==c.s)||c.lt(P)))throw Error(l+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+V(c));if(!v)return new K(m);for(t=new K(P),f=r=new K(P),o=s=new K(P),y=b(v),i=t.e=y.length-m.e-1,t.c[0]=p[(u=i%14)<0?14+u:u],e=!e||c.comparedTo(t)>0?i>0?t:f:c,u=B,B=1/0,c=new K(y),s.c[0]=0;d=n(c,t,0,1),1!=(a=r.plus(d.times(o))).comparedTo(e);)r=o,o=a,f=s.plus(d.times(a=f)),s=a,t=c.minus(d.times(a=t)),c=a;return a=n(e.minus(r),o,0,1),s=s.plus(a.times(f)),r=r.plus(a.times(o)),s.s=f.s=m.s,h=n(f,o,i*=2,R).minus(m).abs().comparedTo(n(s,r,i,R).minus(m).abs())<1?[f,o]:[s,r],B=u,h},E.toNumber=function(){return+V(this)},E.toPrecision=function(e,t){return null!=e&&v(e,1,h),G(this,e,t,2)},E.toString=function(e){var t,n=this,o=n.s,a=n.e;return null===a?o?(t="Infinity",o<0&&(t="-"+t)):t="NaN":(null==e?t=a<=D||a>=C?k(b(n.c),a):_(b(n.c),a,"0"):10===e&&L?t=_(b((n=H(new K(n),S+a+1,R)).c),n.e,"0"):(v(e,2,U.length,"Base"),t=r(_(b(n.c),a,"0"),10,e,o,!0)),o<0&&n.c[0]&&(t="-"+t)),t},E.valueOf=E.toJSON=function(){return V(this)},E._isBigNumber=!0,null!=t&&K.set(t),K}()).default=i.BigNumber=i,void 0===(r=function(){return i}.call(t,n,t,e))||(e.exports=r)}()},function(e,t,n){"use strict";function r(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=r,r.equal=function(e,t,n){if(e!=t)throw new Error(n||"Assertion failed: "+e+" != "+t)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={contractId:null,keyList:null,thresholdKey:null,publicKeyED25519:null,publicKeyECDSA:null,privateKeyConstructor:null,accountIdConstructor:null,delegateContractId:null};t.default=r},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(39)),l=r(n(128));function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e,t){(0,i.default)(r,e);var n=f(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i0)},o.Buffer=function(){try{var e=o.inquire("buffer").Buffer;return e.prototype.utf8Write?e:null}catch(e){return null}}(),o._Buffer_from=null,o._Buffer_allocUnsafe=null,o.newBuffer=function(e){return"number"==typeof e?o.Buffer?o._Buffer_allocUnsafe(e):new o.Array(e):o.Buffer?o._Buffer_from(e):"undefined"==typeof Uint8Array?e:new Uint8Array(e)},o.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,o.Long=o.global.dcodeIO&&o.global.dcodeIO.Long||o.global.Long||o.inquire("long"),o.key2Re=/^true|false|0|1$/,o.key32Re=/^-?(?:0|[1-9][0-9]*)$/,o.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,o.longToHash=function(e){return e?o.LongBits.from(e).toHash():o.LongBits.zeroHash},o.longFromHash=function(e,t){var n=o.LongBits.fromHash(e);return o.Long?o.Long.fromBits(n.lo,n.hi,t):n.toNumber(Boolean(t))},o.merge=a,o.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)},o.newError=i,o.ProtocolError=i("ProtocolError"),o.oneOfGetter=function(e){for(var t={},n=0;n-1;--n)if(1===t[e[n]]&&void 0!==this[e[n]]&&null!==this[e[n]])return e[n]}},o.oneOfSetter=function(e){return function(t){for(var n=0;n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n1?t.split("/"):t.split("@"),o=f(r);try{for(o.s();!(n=o.n()).done;){if(""===n.value)throw new Error("invalid format for NftId: use [token]/[serial] or [token]@[serial]")}}catch(e){o.e(e)}finally{o.f()}return new e(c.default.fromString(r[0]),s.default.fromString(r[1]))}},{key:"_fromProtobuf",value:function(t){return new e(c.default._fromProtobuf(t.tokenID),null!=t.serialNumber?t.serialNumber:s.default.ZERO)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.NftID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";(function(t){var r=n(0)(n(3)),o=n(736); +var r=n(861),o=n(862),a=n(436);function i(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function u(e,t){if(i()=i())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i().toString(16)+" bytes");return 0|e}function h(e,t){if(c.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return L(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return G(e).length;default:if(r)return L(e).length;t=(""+t).toLowerCase(),r=!0}}function y(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return S(this,t,n);case"utf8":case"utf-8":return O(this,t,n);case"ascii":return P(this,t,n);case"latin1":case"binary":return E(this,t,n);case"base64":return T(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return R(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function m(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function b(e,t,n,r,o){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof t&&(t=c.from(t,r)),c.isBuffer(t))return 0===t.length?-1:v(e,t,n,r,o);if("number"==typeof t)return t&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):v(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function v(e,t,n,r,o){var a,i=1,u=e.length,c=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;i=2,u/=2,c/=2,n/=2}function s(e,t){return 1===i?e[t]:e.readUInt16BE(t*i)}if(o){var l=-1;for(a=n;au&&(n=u-c),a=n;a>=0;a--){for(var f=!0,d=0;do&&(r=o):r=o;var a=t.length;if(a%2!=0)throw new TypeError("Invalid hex string");r>a/2&&(r=a/2);for(var i=0;i>8,o=n%256,a.push(o),a.push(r);return a}(t,e.length-n),e,n,r)}function T(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function O(e,t,n){n=Math.min(e.length,n);for(var r=[],o=t;o239?4:s>223?3:s>191?2:1;if(o+f<=n)switch(f){case 1:s<128&&(l=s);break;case 2:128==(192&(a=e[o+1]))&&(c=(31&s)<<6|63&a)>127&&(l=c);break;case 3:a=e[o+1],i=e[o+2],128==(192&a)&&128==(192&i)&&(c=(15&s)<<12|(63&a)<<6|63&i)>2047&&(c<55296||c>57343)&&(l=c);break;case 4:a=e[o+1],i=e[o+2],u=e[o+3],128==(192&a)&&128==(192&i)&&128==(192&u)&&(c=(15&s)<<18|(63&a)<<12|(63&i)<<6|63&u)>65535&&c<1114112&&(l=c)}null===l?(l=65533,f=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),o+=f}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},c.prototype.compare=function(e,t,n,r,o){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),t<0||n>e.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&t>=n)return 0;if(r>=o)return-1;if(t>=n)return 1;if(this===e)return 0;for(var a=(o>>>=0)-(r>>>=0),i=(n>>>=0)-(t>>>=0),u=Math.min(a,i),s=this.slice(r,o),l=e.slice(t,n),f=0;fo)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return k(this,e,t,n);case"utf8":case"utf-8":return g(this,e,t,n);case"ascii":return _(this,e,t,n);case"latin1":case"binary":return w(this,e,t,n);case"base64":return I(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return A(this,e,t,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function P(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;or)&&(n=r);for(var o="",a=t;an)throw new RangeError("Trying to access beyond buffer length")}function C(e,t,n,r,o,a){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function N(e,t,n,r){t<0&&(t=65535+t+1);for(var o=0,a=Math.min(e.length-n,2);o>>8*(r?o:1-o)}function B(e,t,n,r){t<0&&(t=4294967295+t+1);for(var o=0,a=Math.min(e.length-n,4);o>>8*(r?o:3-o)&255}function M(e,t,n,r,o,a){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function j(e,t,n,r,a){return a||M(e,0,n,4),o.write(e,t,n,r,23,4),n+4}function x(e,t,n,r,a){return a||M(e,0,n,8),o.write(e,t,n,r,52,8),n+8}c.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(o*=256);)r+=this[e+--t]*o;return r},c.prototype.readUInt8=function(e,t){return t||D(e,1,this.length),this[e]},c.prototype.readUInt16LE=function(e,t){return t||D(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUInt16BE=function(e,t){return t||D(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUInt32LE=function(e,t){return t||D(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUInt32BE=function(e,t){return t||D(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||D(e,t,this.length);for(var r=this[e],o=1,a=0;++a=(o*=128)&&(r-=Math.pow(2,8*t)),r},c.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||D(e,t,this.length);for(var r=t,o=1,a=this[e+--r];r>0&&(o*=256);)a+=this[e+--r]*o;return a>=(o*=128)&&(a-=Math.pow(2,8*t)),a},c.prototype.readInt8=function(e,t){return t||D(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){t||D(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt16BE=function(e,t){t||D(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt32LE=function(e,t){return t||D(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return t||D(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return t||D(e,4,this.length),o.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return t||D(e,4,this.length),o.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return t||D(e,8,this.length),o.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return t||D(e,8,this.length),o.read(this,e,!1,52,8)},c.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||C(this,e,t,n,Math.pow(2,8*n)-1,0);var o=1,a=0;for(this[t]=255&e;++a=0&&(a*=256);)this[t+o]=e/a&255;return t+n},c.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,1,255,0),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},c.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},c.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},c.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):B(this,e,t,!0),t+4},c.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):B(this,e,t,!1),t+4},c.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);C(this,e,t,n,o-1,-o)}var a=0,i=1,u=0;for(this[t]=255&e;++a>0)-u&255;return t+n},c.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);C(this,e,t,n,o-1,-o)}var a=n-1,i=1,u=0;for(this[t+a]=255&e;--a>=0&&(i*=256);)e<0&&0===u&&0!==this[t+a+1]&&(u=1),this[t+a]=(e/i>>0)-u&255;return t+n},c.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,1,127,-128),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},c.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},c.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):B(this,e,t,!0),t+4},c.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):B(this,e,t,!1),t+4},c.prototype.writeFloatLE=function(e,t,n){return j(this,e,t,!0,n)},c.prototype.writeFloatBE=function(e,t,n){return j(this,e,t,!1,n)},c.prototype.writeDoubleLE=function(e,t,n){return x(this,e,t,!0,n)},c.prototype.writeDoubleBE=function(e,t,n){return x(this,e,t,!1,n)},c.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else if(a<1e3||!c.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(a=t;a55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(i+1===r){(t-=3)>-1&&a.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&a.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function G(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(F,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function K(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}}).call(this,n(40))},function(e,t,n){"use strict";"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},function(e,t,n){"use strict";var r=n(397);function o(t,n,a){return"undefined"!=typeof Reflect&&Reflect.get?(e.exports=o=Reflect.get,e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=o=function(e,t,n){var o=r(e,t);if(o){var a=Object.getOwnPropertyDescriptor(o,t);return a.get?a.get.call(n):a.value}},e.exports.default=e.exports,e.exports.__esModule=!0),o(t,n,a||t)}e.exports=o,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";e.exports=o;var r=null;try{r=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch(e){}function o(e,t,n){this.low=0|e,this.high=0|t,this.unsigned=!!n}function a(e){return!0===(e&&e.__isLong__)}o.prototype.__isLong__,Object.defineProperty(o.prototype,"__isLong__",{value:!0}),o.isLong=a;var i={},u={};function c(e,t){var n,r,o;return t?(o=0<=(e>>>=0)&&e<256)&&(r=u[e])?r:(n=l(e,(0|e)<0?-1:0,!0),o&&(u[e]=n),n):(o=-128<=(e|=0)&&e<128)&&(r=i[e])?r:(n=l(e,e<0?-1:0,!1),o&&(i[e]=n),n)}function s(e,t){if(isNaN(e))return t?k:v;if(t){if(e<0)return k;if(e>=y)return A}else{if(e<=-m)return T;if(e+1>=m)return I}return e<0?s(-e,t).neg():l(e%h|0,e/h|0,t)}function l(e,t,n){return new o(e,t,n)}o.fromInt=c,o.fromNumber=s,o.fromBits=l;var f=Math.pow;function d(e,t,n){if(0===e.length)throw Error("empty string");if("NaN"===e||"Infinity"===e||"+Infinity"===e||"-Infinity"===e)return v;if("number"==typeof t?(n=t,t=!1):t=!!t,(n=n||10)<2||360)throw Error("interior hyphen");if(0===r)return d(e.substring(1),t,n).neg();for(var o=s(f(n,8)),a=v,i=0;i>>0:this.low},O.toNumber=function(){return this.unsigned?(this.high>>>0)*h+(this.low>>>0):this.high*h+(this.low>>>0)},O.toString=function(e){if((e=e||10)<2||36>>0).toString(e);if((a=u).isZero())return c+i;for(;c.length<6;)c="0"+c;i=""+c+i}},O.getHighBits=function(){return this.high},O.getHighBitsUnsigned=function(){return this.high>>>0},O.getLowBits=function(){return this.low},O.getLowBitsUnsigned=function(){return this.low>>>0},O.getNumBitsAbs=function(){if(this.isNegative())return this.eq(T)?64:this.neg().getNumBitsAbs();for(var e=0!=this.high?this.high:this.low,t=31;t>0&&0==(e&1<=0},O.isOdd=function(){return 1==(1&this.low)},O.isEven=function(){return 0==(1&this.low)},O.equals=function(e){return a(e)||(e=p(e)),(this.unsigned===e.unsigned||this.high>>>31!=1||e.high>>>31!=1)&&(this.high===e.high&&this.low===e.low)},O.eq=O.equals,O.notEquals=function(e){return!this.eq(e)},O.neq=O.notEquals,O.ne=O.notEquals,O.lessThan=function(e){return this.comp(e)<0},O.lt=O.lessThan,O.lessThanOrEqual=function(e){return this.comp(e)<=0},O.lte=O.lessThanOrEqual,O.le=O.lessThanOrEqual,O.greaterThan=function(e){return this.comp(e)>0},O.gt=O.greaterThan,O.greaterThanOrEqual=function(e){return this.comp(e)>=0},O.gte=O.greaterThanOrEqual,O.ge=O.greaterThanOrEqual,O.compare=function(e){if(a(e)||(e=p(e)),this.eq(e))return 0;var t=this.isNegative(),n=e.isNegative();return t&&!n?-1:!t&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},O.comp=O.compare,O.negate=function(){return!this.unsigned&&this.eq(T)?T:this.not().add(g)},O.neg=O.negate,O.add=function(e){a(e)||(e=p(e));var t=this.high>>>16,n=65535&this.high,r=this.low>>>16,o=65535&this.low,i=e.high>>>16,u=65535&e.high,c=e.low>>>16,s=0,f=0,d=0,h=0;return d+=(h+=o+(65535&e.low))>>>16,f+=(d+=r+c)>>>16,s+=(f+=n+u)>>>16,s+=t+i,l((d&=65535)<<16|(h&=65535),(s&=65535)<<16|(f&=65535),this.unsigned)},O.subtract=function(e){return a(e)||(e=p(e)),this.add(e.neg())},O.sub=O.subtract,O.multiply=function(e){if(this.isZero())return v;if(a(e)||(e=p(e)),r)return l(r.mul(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned);if(e.isZero())return v;if(this.eq(T))return e.isOdd()?T:v;if(e.eq(T))return this.isOdd()?T:v;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(b)&&e.lt(b))return s(this.toNumber()*e.toNumber(),this.unsigned);var t=this.high>>>16,n=65535&this.high,o=this.low>>>16,i=65535&this.low,u=e.high>>>16,c=65535&e.high,f=e.low>>>16,d=65535&e.low,h=0,y=0,m=0,k=0;return m+=(k+=i*d)>>>16,y+=(m+=o*d)>>>16,m&=65535,y+=(m+=i*f)>>>16,h+=(y+=n*d)>>>16,y&=65535,h+=(y+=o*f)>>>16,y&=65535,h+=(y+=i*c)>>>16,h+=t*d+n*f+o*c+i*u,l((m&=65535)<<16|(k&=65535),(h&=65535)<<16|(y&=65535),this.unsigned)},O.mul=O.multiply,O.divide=function(e){if(a(e)||(e=p(e)),e.isZero())throw Error("division by zero");var t,n,o;if(r)return this.unsigned||-2147483648!==this.high||-1!==e.low||-1!==e.high?l((this.unsigned?r.div_u:r.div_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this;if(this.isZero())return this.unsigned?k:v;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return k;if(e.gt(this.shru(1)))return _;o=k}else{if(this.eq(T))return e.eq(g)||e.eq(w)?T:e.eq(T)?g:(t=this.shr(1).div(e).shl(1)).eq(v)?e.isNegative()?g:w:(n=this.sub(e.mul(t)),o=t.add(n.div(e)));if(e.eq(T))return this.unsigned?k:v;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();o=v}for(n=this;n.gte(e);){t=Math.max(1,Math.floor(n.toNumber()/e.toNumber()));for(var i=Math.ceil(Math.log(t)/Math.LN2),u=i<=48?1:f(2,i-48),c=s(t),d=c.mul(e);d.isNegative()||d.gt(n);)d=(c=s(t-=u,this.unsigned)).mul(e);c.isZero()&&(c=g),o=o.add(c),n=n.sub(d)}return o},O.div=O.divide,O.modulo=function(e){return a(e)||(e=p(e)),r?l((this.unsigned?r.rem_u:r.rem_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this.sub(this.div(e).mul(e))},O.mod=O.modulo,O.rem=O.modulo,O.not=function(){return l(~this.low,~this.high,this.unsigned)},O.and=function(e){return a(e)||(e=p(e)),l(this.low&e.low,this.high&e.high,this.unsigned)},O.or=function(e){return a(e)||(e=p(e)),l(this.low|e.low,this.high|e.high,this.unsigned)},O.xor=function(e){return a(e)||(e=p(e)),l(this.low^e.low,this.high^e.high,this.unsigned)},O.shiftLeft=function(e){return a(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?l(this.low<>>32-e,this.unsigned):l(0,this.low<>>e|this.high<<32-e,this.high>>e,this.unsigned):l(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},O.shr=O.shiftRight,O.shiftRightUnsigned=function(e){if(a(e)&&(e=e.toInt()),0===(e&=63))return this;var t=this.high;return e<32?l(this.low>>>e|t<<32-e,t>>>e,this.unsigned):l(32===e?t:t>>>e-32,0,this.unsigned)},O.shru=O.shiftRightUnsigned,O.shr_u=O.shiftRightUnsigned,O.toSigned=function(){return this.unsigned?l(this.low,this.high,!1):this},O.toUnsigned=function(){return this.unsigned?this:l(this.low,this.high,!0)},O.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},O.toBytesLE=function(){var e=this.high,t=this.low;return[255&t,t>>>8&255,t>>>16&255,t>>>24,255&e,e>>>8&255,e>>>16&255,e>>>24]},O.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,255&e,t>>>24,t>>>16&255,t>>>8&255,255&t]},o.fromBytes=function(e,t,n){return n?o.fromBytesLE(e,t):o.fromBytesBE(e,t)},o.fromBytesLE=function(e,t){return new o(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)},o.fromBytesBE=function(e,t){return new o(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)}},function(e,t,n){"use strict";e.exports=o;var r=null;try{r=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch(e){}function o(e,t,n){this.low=0|e,this.high=0|t,this.unsigned=!!n}function a(e){return!0===(e&&e.__isLong__)}o.prototype.__isLong__,Object.defineProperty(o.prototype,"__isLong__",{value:!0}),o.isLong=a;var i={},u={};function c(e,t){var n,r,o;return t?(o=0<=(e>>>=0)&&e<256)&&(r=u[e])?r:(n=l(e,(0|e)<0?-1:0,!0),o&&(u[e]=n),n):(o=-128<=(e|=0)&&e<128)&&(r=i[e])?r:(n=l(e,e<0?-1:0,!1),o&&(i[e]=n),n)}function s(e,t){if(isNaN(e))return t?k:v;if(t){if(e<0)return k;if(e>=y)return A}else{if(e<=-m)return T;if(e+1>=m)return I}return e<0?s(-e,t).neg():l(e%h|0,e/h|0,t)}function l(e,t,n){return new o(e,t,n)}o.fromInt=c,o.fromNumber=s,o.fromBits=l;var f=Math.pow;function d(e,t,n){if(0===e.length)throw Error("empty string");if("NaN"===e||"Infinity"===e||"+Infinity"===e||"-Infinity"===e)return v;if("number"==typeof t?(n=t,t=!1):t=!!t,(n=n||10)<2||360)throw Error("interior hyphen");if(0===r)return d(e.substring(1),t,n).neg();for(var o=s(f(n,8)),a=v,i=0;i>>0:this.low},O.toNumber=function(){return this.unsigned?(this.high>>>0)*h+(this.low>>>0):this.high*h+(this.low>>>0)},O.toString=function(e){if((e=e||10)<2||36>>0).toString(e);if((a=u).isZero())return c+i;for(;c.length<6;)c="0"+c;i=""+c+i}},O.getHighBits=function(){return this.high},O.getHighBitsUnsigned=function(){return this.high>>>0},O.getLowBits=function(){return this.low},O.getLowBitsUnsigned=function(){return this.low>>>0},O.getNumBitsAbs=function(){if(this.isNegative())return this.eq(T)?64:this.neg().getNumBitsAbs();for(var e=0!=this.high?this.high:this.low,t=31;t>0&&0==(e&1<=0},O.isOdd=function(){return 1==(1&this.low)},O.isEven=function(){return 0==(1&this.low)},O.equals=function(e){return a(e)||(e=p(e)),(this.unsigned===e.unsigned||this.high>>>31!=1||e.high>>>31!=1)&&(this.high===e.high&&this.low===e.low)},O.eq=O.equals,O.notEquals=function(e){return!this.eq(e)},O.neq=O.notEquals,O.ne=O.notEquals,O.lessThan=function(e){return this.comp(e)<0},O.lt=O.lessThan,O.lessThanOrEqual=function(e){return this.comp(e)<=0},O.lte=O.lessThanOrEqual,O.le=O.lessThanOrEqual,O.greaterThan=function(e){return this.comp(e)>0},O.gt=O.greaterThan,O.greaterThanOrEqual=function(e){return this.comp(e)>=0},O.gte=O.greaterThanOrEqual,O.ge=O.greaterThanOrEqual,O.compare=function(e){if(a(e)||(e=p(e)),this.eq(e))return 0;var t=this.isNegative(),n=e.isNegative();return t&&!n?-1:!t&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},O.comp=O.compare,O.negate=function(){return!this.unsigned&&this.eq(T)?T:this.not().add(g)},O.neg=O.negate,O.add=function(e){a(e)||(e=p(e));var t=this.high>>>16,n=65535&this.high,r=this.low>>>16,o=65535&this.low,i=e.high>>>16,u=65535&e.high,c=e.low>>>16,s=0,f=0,d=0,h=0;return d+=(h+=o+(65535&e.low))>>>16,f+=(d+=r+c)>>>16,s+=(f+=n+u)>>>16,s+=t+i,l((d&=65535)<<16|(h&=65535),(s&=65535)<<16|(f&=65535),this.unsigned)},O.subtract=function(e){return a(e)||(e=p(e)),this.add(e.neg())},O.sub=O.subtract,O.multiply=function(e){if(this.isZero())return v;if(a(e)||(e=p(e)),r)return l(r.mul(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned);if(e.isZero())return v;if(this.eq(T))return e.isOdd()?T:v;if(e.eq(T))return this.isOdd()?T:v;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(b)&&e.lt(b))return s(this.toNumber()*e.toNumber(),this.unsigned);var t=this.high>>>16,n=65535&this.high,o=this.low>>>16,i=65535&this.low,u=e.high>>>16,c=65535&e.high,f=e.low>>>16,d=65535&e.low,h=0,y=0,m=0,k=0;return m+=(k+=i*d)>>>16,y+=(m+=o*d)>>>16,m&=65535,y+=(m+=i*f)>>>16,h+=(y+=n*d)>>>16,y&=65535,h+=(y+=o*f)>>>16,y&=65535,h+=(y+=i*c)>>>16,h+=t*d+n*f+o*c+i*u,l((m&=65535)<<16|(k&=65535),(h&=65535)<<16|(y&=65535),this.unsigned)},O.mul=O.multiply,O.divide=function(e){if(a(e)||(e=p(e)),e.isZero())throw Error("division by zero");var t,n,o;if(r)return this.unsigned||-2147483648!==this.high||-1!==e.low||-1!==e.high?l((this.unsigned?r.div_u:r.div_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this;if(this.isZero())return this.unsigned?k:v;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return k;if(e.gt(this.shru(1)))return _;o=k}else{if(this.eq(T))return e.eq(g)||e.eq(w)?T:e.eq(T)?g:(t=this.shr(1).div(e).shl(1)).eq(v)?e.isNegative()?g:w:(n=this.sub(e.mul(t)),o=t.add(n.div(e)));if(e.eq(T))return this.unsigned?k:v;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();o=v}for(n=this;n.gte(e);){t=Math.max(1,Math.floor(n.toNumber()/e.toNumber()));for(var i=Math.ceil(Math.log(t)/Math.LN2),u=i<=48?1:f(2,i-48),c=s(t),d=c.mul(e);d.isNegative()||d.gt(n);)d=(c=s(t-=u,this.unsigned)).mul(e);c.isZero()&&(c=g),o=o.add(c),n=n.sub(d)}return o},O.div=O.divide,O.modulo=function(e){return a(e)||(e=p(e)),r?l((this.unsigned?r.rem_u:r.rem_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this.sub(this.div(e).mul(e))},O.mod=O.modulo,O.rem=O.modulo,O.not=function(){return l(~this.low,~this.high,this.unsigned)},O.and=function(e){return a(e)||(e=p(e)),l(this.low&e.low,this.high&e.high,this.unsigned)},O.or=function(e){return a(e)||(e=p(e)),l(this.low|e.low,this.high|e.high,this.unsigned)},O.xor=function(e){return a(e)||(e=p(e)),l(this.low^e.low,this.high^e.high,this.unsigned)},O.shiftLeft=function(e){return a(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?l(this.low<>>32-e,this.unsigned):l(0,this.low<>>e|this.high<<32-e,this.high>>e,this.unsigned):l(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},O.shr=O.shiftRight,O.shiftRightUnsigned=function(e){if(a(e)&&(e=e.toInt()),0===(e&=63))return this;var t=this.high;return e<32?l(this.low>>>e|t<<32-e,t>>>e,this.unsigned):l(32===e?t:t>>>e-32,0,this.unsigned)},O.shru=O.shiftRightUnsigned,O.shr_u=O.shiftRightUnsigned,O.toSigned=function(){return this.unsigned?l(this.low,this.high,!1):this},O.toUnsigned=function(){return this.unsigned?this:l(this.low,this.high,!0)},O.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},O.toBytesLE=function(){var e=this.high,t=this.low;return[255&t,t>>>8&255,t>>>16&255,t>>>24,255&e,e>>>8&255,e>>>16&255,e>>>24]},O.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,255&e,t>>>24,t>>>16&255,t>>>8&255,255&t]},o.fromBytes=function(e,t,n){return n?o.fromBytesLE(e,t):o.fromBytesBE(e,t)},o.fromBytesLE=function(e,t){return new o(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)},o.fromBytesBE=function(e,t){return new o(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)}},function(e,t,n){"use strict";e.exports=o;var r=null;try{r=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch(e){}function o(e,t,n){this.low=0|e,this.high=0|t,this.unsigned=!!n}function a(e){return!0===(e&&e.__isLong__)}o.prototype.__isLong__,Object.defineProperty(o.prototype,"__isLong__",{value:!0}),o.isLong=a;var i={},u={};function c(e,t){var n,r,o;return t?(o=0<=(e>>>=0)&&e<256)&&(r=u[e])?r:(n=l(e,(0|e)<0?-1:0,!0),o&&(u[e]=n),n):(o=-128<=(e|=0)&&e<128)&&(r=i[e])?r:(n=l(e,e<0?-1:0,!1),o&&(i[e]=n),n)}function s(e,t){if(isNaN(e))return t?k:v;if(t){if(e<0)return k;if(e>=y)return A}else{if(e<=-m)return T;if(e+1>=m)return I}return e<0?s(-e,t).neg():l(e%h|0,e/h|0,t)}function l(e,t,n){return new o(e,t,n)}o.fromInt=c,o.fromNumber=s,o.fromBits=l;var f=Math.pow;function d(e,t,n){if(0===e.length)throw Error("empty string");if("NaN"===e||"Infinity"===e||"+Infinity"===e||"-Infinity"===e)return v;if("number"==typeof t?(n=t,t=!1):t=!!t,(n=n||10)<2||360)throw Error("interior hyphen");if(0===r)return d(e.substring(1),t,n).neg();for(var o=s(f(n,8)),a=v,i=0;i>>0:this.low},O.toNumber=function(){return this.unsigned?(this.high>>>0)*h+(this.low>>>0):this.high*h+(this.low>>>0)},O.toString=function(e){if((e=e||10)<2||36>>0).toString(e);if((a=u).isZero())return c+i;for(;c.length<6;)c="0"+c;i=""+c+i}},O.getHighBits=function(){return this.high},O.getHighBitsUnsigned=function(){return this.high>>>0},O.getLowBits=function(){return this.low},O.getLowBitsUnsigned=function(){return this.low>>>0},O.getNumBitsAbs=function(){if(this.isNegative())return this.eq(T)?64:this.neg().getNumBitsAbs();for(var e=0!=this.high?this.high:this.low,t=31;t>0&&0==(e&1<=0},O.isOdd=function(){return 1==(1&this.low)},O.isEven=function(){return 0==(1&this.low)},O.equals=function(e){return a(e)||(e=p(e)),(this.unsigned===e.unsigned||this.high>>>31!=1||e.high>>>31!=1)&&(this.high===e.high&&this.low===e.low)},O.eq=O.equals,O.notEquals=function(e){return!this.eq(e)},O.neq=O.notEquals,O.ne=O.notEquals,O.lessThan=function(e){return this.comp(e)<0},O.lt=O.lessThan,O.lessThanOrEqual=function(e){return this.comp(e)<=0},O.lte=O.lessThanOrEqual,O.le=O.lessThanOrEqual,O.greaterThan=function(e){return this.comp(e)>0},O.gt=O.greaterThan,O.greaterThanOrEqual=function(e){return this.comp(e)>=0},O.gte=O.greaterThanOrEqual,O.ge=O.greaterThanOrEqual,O.compare=function(e){if(a(e)||(e=p(e)),this.eq(e))return 0;var t=this.isNegative(),n=e.isNegative();return t&&!n?-1:!t&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},O.comp=O.compare,O.negate=function(){return!this.unsigned&&this.eq(T)?T:this.not().add(g)},O.neg=O.negate,O.add=function(e){a(e)||(e=p(e));var t=this.high>>>16,n=65535&this.high,r=this.low>>>16,o=65535&this.low,i=e.high>>>16,u=65535&e.high,c=e.low>>>16,s=0,f=0,d=0,h=0;return d+=(h+=o+(65535&e.low))>>>16,f+=(d+=r+c)>>>16,s+=(f+=n+u)>>>16,s+=t+i,l((d&=65535)<<16|(h&=65535),(s&=65535)<<16|(f&=65535),this.unsigned)},O.subtract=function(e){return a(e)||(e=p(e)),this.add(e.neg())},O.sub=O.subtract,O.multiply=function(e){if(this.isZero())return v;if(a(e)||(e=p(e)),r)return l(r.mul(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned);if(e.isZero())return v;if(this.eq(T))return e.isOdd()?T:v;if(e.eq(T))return this.isOdd()?T:v;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(b)&&e.lt(b))return s(this.toNumber()*e.toNumber(),this.unsigned);var t=this.high>>>16,n=65535&this.high,o=this.low>>>16,i=65535&this.low,u=e.high>>>16,c=65535&e.high,f=e.low>>>16,d=65535&e.low,h=0,y=0,m=0,k=0;return m+=(k+=i*d)>>>16,y+=(m+=o*d)>>>16,m&=65535,y+=(m+=i*f)>>>16,h+=(y+=n*d)>>>16,y&=65535,h+=(y+=o*f)>>>16,y&=65535,h+=(y+=i*c)>>>16,h+=t*d+n*f+o*c+i*u,l((m&=65535)<<16|(k&=65535),(h&=65535)<<16|(y&=65535),this.unsigned)},O.mul=O.multiply,O.divide=function(e){if(a(e)||(e=p(e)),e.isZero())throw Error("division by zero");var t,n,o;if(r)return this.unsigned||-2147483648!==this.high||-1!==e.low||-1!==e.high?l((this.unsigned?r.div_u:r.div_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this;if(this.isZero())return this.unsigned?k:v;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return k;if(e.gt(this.shru(1)))return _;o=k}else{if(this.eq(T))return e.eq(g)||e.eq(w)?T:e.eq(T)?g:(t=this.shr(1).div(e).shl(1)).eq(v)?e.isNegative()?g:w:(n=this.sub(e.mul(t)),o=t.add(n.div(e)));if(e.eq(T))return this.unsigned?k:v;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();o=v}for(n=this;n.gte(e);){t=Math.max(1,Math.floor(n.toNumber()/e.toNumber()));for(var i=Math.ceil(Math.log(t)/Math.LN2),u=i<=48?1:f(2,i-48),c=s(t),d=c.mul(e);d.isNegative()||d.gt(n);)d=(c=s(t-=u,this.unsigned)).mul(e);c.isZero()&&(c=g),o=o.add(c),n=n.sub(d)}return o},O.div=O.divide,O.modulo=function(e){return a(e)||(e=p(e)),r?l((this.unsigned?r.rem_u:r.rem_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this.sub(this.div(e).mul(e))},O.mod=O.modulo,O.rem=O.modulo,O.not=function(){return l(~this.low,~this.high,this.unsigned)},O.and=function(e){return a(e)||(e=p(e)),l(this.low&e.low,this.high&e.high,this.unsigned)},O.or=function(e){return a(e)||(e=p(e)),l(this.low|e.low,this.high|e.high,this.unsigned)},O.xor=function(e){return a(e)||(e=p(e)),l(this.low^e.low,this.high^e.high,this.unsigned)},O.shiftLeft=function(e){return a(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?l(this.low<>>32-e,this.unsigned):l(0,this.low<>>e|this.high<<32-e,this.high>>e,this.unsigned):l(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},O.shr=O.shiftRight,O.shiftRightUnsigned=function(e){if(a(e)&&(e=e.toInt()),0===(e&=63))return this;var t=this.high;return e<32?l(this.low>>>e|t<<32-e,t>>>e,this.unsigned):l(32===e?t:t>>>e-32,0,this.unsigned)},O.shru=O.shiftRightUnsigned,O.shr_u=O.shiftRightUnsigned,O.toSigned=function(){return this.unsigned?l(this.low,this.high,!1):this},O.toUnsigned=function(){return this.unsigned?this:l(this.low,this.high,!0)},O.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},O.toBytesLE=function(){var e=this.high,t=this.low;return[255&t,t>>>8&255,t>>>16&255,t>>>24,255&e,e>>>8&255,e>>>16&255,e>>>24]},O.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,255&e,t>>>24,t>>>16&255,t>>>8&255,255&t]},o.fromBytes=function(e,t,n){return n?o.fromBytesLE(e,t):o.fromBytesBE(e,t)},o.fromBytesLE=function(e,t){return new o(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)},o.fromBytesBE=function(e,t){return new o(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)}},function(e,t,n){"use strict";e.exports=o;var r=null;try{r=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch(e){}function o(e,t,n){this.low=0|e,this.high=0|t,this.unsigned=!!n}function a(e){return!0===(e&&e.__isLong__)}o.prototype.__isLong__,Object.defineProperty(o.prototype,"__isLong__",{value:!0}),o.isLong=a;var i={},u={};function c(e,t){var n,r,o;return t?(o=0<=(e>>>=0)&&e<256)&&(r=u[e])?r:(n=l(e,(0|e)<0?-1:0,!0),o&&(u[e]=n),n):(o=-128<=(e|=0)&&e<128)&&(r=i[e])?r:(n=l(e,e<0?-1:0,!1),o&&(i[e]=n),n)}function s(e,t){if(isNaN(e))return t?k:v;if(t){if(e<0)return k;if(e>=y)return A}else{if(e<=-m)return T;if(e+1>=m)return I}return e<0?s(-e,t).neg():l(e%h|0,e/h|0,t)}function l(e,t,n){return new o(e,t,n)}o.fromInt=c,o.fromNumber=s,o.fromBits=l;var f=Math.pow;function d(e,t,n){if(0===e.length)throw Error("empty string");if("NaN"===e||"Infinity"===e||"+Infinity"===e||"-Infinity"===e)return v;if("number"==typeof t?(n=t,t=!1):t=!!t,(n=n||10)<2||360)throw Error("interior hyphen");if(0===r)return d(e.substring(1),t,n).neg();for(var o=s(f(n,8)),a=v,i=0;i>>0:this.low},O.toNumber=function(){return this.unsigned?(this.high>>>0)*h+(this.low>>>0):this.high*h+(this.low>>>0)},O.toString=function(e){if((e=e||10)<2||36>>0).toString(e);if((a=u).isZero())return c+i;for(;c.length<6;)c="0"+c;i=""+c+i}},O.getHighBits=function(){return this.high},O.getHighBitsUnsigned=function(){return this.high>>>0},O.getLowBits=function(){return this.low},O.getLowBitsUnsigned=function(){return this.low>>>0},O.getNumBitsAbs=function(){if(this.isNegative())return this.eq(T)?64:this.neg().getNumBitsAbs();for(var e=0!=this.high?this.high:this.low,t=31;t>0&&0==(e&1<=0},O.isOdd=function(){return 1==(1&this.low)},O.isEven=function(){return 0==(1&this.low)},O.equals=function(e){return a(e)||(e=p(e)),(this.unsigned===e.unsigned||this.high>>>31!=1||e.high>>>31!=1)&&(this.high===e.high&&this.low===e.low)},O.eq=O.equals,O.notEquals=function(e){return!this.eq(e)},O.neq=O.notEquals,O.ne=O.notEquals,O.lessThan=function(e){return this.comp(e)<0},O.lt=O.lessThan,O.lessThanOrEqual=function(e){return this.comp(e)<=0},O.lte=O.lessThanOrEqual,O.le=O.lessThanOrEqual,O.greaterThan=function(e){return this.comp(e)>0},O.gt=O.greaterThan,O.greaterThanOrEqual=function(e){return this.comp(e)>=0},O.gte=O.greaterThanOrEqual,O.ge=O.greaterThanOrEqual,O.compare=function(e){if(a(e)||(e=p(e)),this.eq(e))return 0;var t=this.isNegative(),n=e.isNegative();return t&&!n?-1:!t&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},O.comp=O.compare,O.negate=function(){return!this.unsigned&&this.eq(T)?T:this.not().add(g)},O.neg=O.negate,O.add=function(e){a(e)||(e=p(e));var t=this.high>>>16,n=65535&this.high,r=this.low>>>16,o=65535&this.low,i=e.high>>>16,u=65535&e.high,c=e.low>>>16,s=0,f=0,d=0,h=0;return d+=(h+=o+(65535&e.low))>>>16,f+=(d+=r+c)>>>16,s+=(f+=n+u)>>>16,s+=t+i,l((d&=65535)<<16|(h&=65535),(s&=65535)<<16|(f&=65535),this.unsigned)},O.subtract=function(e){return a(e)||(e=p(e)),this.add(e.neg())},O.sub=O.subtract,O.multiply=function(e){if(this.isZero())return v;if(a(e)||(e=p(e)),r)return l(r.mul(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned);if(e.isZero())return v;if(this.eq(T))return e.isOdd()?T:v;if(e.eq(T))return this.isOdd()?T:v;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(b)&&e.lt(b))return s(this.toNumber()*e.toNumber(),this.unsigned);var t=this.high>>>16,n=65535&this.high,o=this.low>>>16,i=65535&this.low,u=e.high>>>16,c=65535&e.high,f=e.low>>>16,d=65535&e.low,h=0,y=0,m=0,k=0;return m+=(k+=i*d)>>>16,y+=(m+=o*d)>>>16,m&=65535,y+=(m+=i*f)>>>16,h+=(y+=n*d)>>>16,y&=65535,h+=(y+=o*f)>>>16,y&=65535,h+=(y+=i*c)>>>16,h+=t*d+n*f+o*c+i*u,l((m&=65535)<<16|(k&=65535),(h&=65535)<<16|(y&=65535),this.unsigned)},O.mul=O.multiply,O.divide=function(e){if(a(e)||(e=p(e)),e.isZero())throw Error("division by zero");var t,n,o;if(r)return this.unsigned||-2147483648!==this.high||-1!==e.low||-1!==e.high?l((this.unsigned?r.div_u:r.div_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this;if(this.isZero())return this.unsigned?k:v;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return k;if(e.gt(this.shru(1)))return _;o=k}else{if(this.eq(T))return e.eq(g)||e.eq(w)?T:e.eq(T)?g:(t=this.shr(1).div(e).shl(1)).eq(v)?e.isNegative()?g:w:(n=this.sub(e.mul(t)),o=t.add(n.div(e)));if(e.eq(T))return this.unsigned?k:v;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();o=v}for(n=this;n.gte(e);){t=Math.max(1,Math.floor(n.toNumber()/e.toNumber()));for(var i=Math.ceil(Math.log(t)/Math.LN2),u=i<=48?1:f(2,i-48),c=s(t),d=c.mul(e);d.isNegative()||d.gt(n);)d=(c=s(t-=u,this.unsigned)).mul(e);c.isZero()&&(c=g),o=o.add(c),n=n.sub(d)}return o},O.div=O.divide,O.modulo=function(e){return a(e)||(e=p(e)),r?l((this.unsigned?r.rem_u:r.rem_s)(this.low,this.high,e.low,e.high),r.get_high(),this.unsigned):this.sub(this.div(e).mul(e))},O.mod=O.modulo,O.rem=O.modulo,O.not=function(){return l(~this.low,~this.high,this.unsigned)},O.and=function(e){return a(e)||(e=p(e)),l(this.low&e.low,this.high&e.high,this.unsigned)},O.or=function(e){return a(e)||(e=p(e)),l(this.low|e.low,this.high|e.high,this.unsigned)},O.xor=function(e){return a(e)||(e=p(e)),l(this.low^e.low,this.high^e.high,this.unsigned)},O.shiftLeft=function(e){return a(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?l(this.low<>>32-e,this.unsigned):l(0,this.low<>>e|this.high<<32-e,this.high>>e,this.unsigned):l(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},O.shr=O.shiftRight,O.shiftRightUnsigned=function(e){if(a(e)&&(e=e.toInt()),0===(e&=63))return this;var t=this.high;return e<32?l(this.low>>>e|t<<32-e,t>>>e,this.unsigned):l(32===e?t:t>>>e-32,0,this.unsigned)},O.shru=O.shiftRightUnsigned,O.shr_u=O.shiftRightUnsigned,O.toSigned=function(){return this.unsigned?l(this.low,this.high,!1):this},O.toUnsigned=function(){return this.unsigned?this:l(this.low,this.high,!0)},O.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},O.toBytesLE=function(){var e=this.high,t=this.low;return[255&t,t>>>8&255,t>>>16&255,t>>>24,255&e,e>>>8&255,e>>>16&255,e>>>24]},O.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,255&e,t>>>24,t>>>16&255,t>>>8&255,255&t]},o.fromBytes=function(e,t,n){return n?o.fromBytesLE(e,t):o.fromBytesBE(e,t)},o.fromBytesLE=function(e,t){return new o(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)},o.fromBytesBE=function(e,t){return new o(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.TRANSACTION_REGISTRY=t.SCHEDULE_CREATE_TRANSACTION=t.DEFAULT_RECORD_THRESHOLD=t.DEFAULT_AUTO_RENEW_PERIOD=t.CHUNK_SIZE=void 0;var a=r(n(7)),i=r(n(107)),u=r(n(8)),c=r(n(1)),s=r(n(2)),l=r(n(17)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(33)),y=r(n(399)),m=r(n(75)),b=r(n(774)),v=r(n(775)),k=D(n(139)),g=r(n(137)),_=r(n(20)),w=D(n(413)),I=D(n(74)),A=n(36),T=r(n(198)),O=r(n(11)),P=r(n(106)),E=r(n(297)),S=r(n(44));function R(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(R=function(e){return e?n:t})(e)}function D(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=R(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function C(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return N(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return N(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0}},{key:"_getTransactionId",value:function(){return this.transactionId}},{key:"_validateChecksums",value:function(e){}},{key:"_beforeExecute",value:(R=(0,u.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._isFrozen()||this.freezeWith(t),t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),null==this._operator){e.next=5;break}return e.next=5,this.signWith(this._operator.publicKey,this._operator.transactionSigner);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return R.apply(this,arguments)})},{key:"_makeRequestAsync",value:(d=(0,u.default)(a.default.mark((function e(){var t;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this._nextTransactionIndex*this._nodeAccountIds.length+this._nodeAccountIds.index,this._signOnDemand){e.next=4;break}return this._buildTransaction(t),e.abrupt("return",this._transactions.get(t));case 4:return e.next=6,this._buildTransactionAsync();case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"_signTransaction",value:(o=(0,u.default)(a.default.mark((function e(){var t,n,r,o,i,u;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this._makeSignedTransaction(this._nodeAccountIds.next),n=t.bodyBytes,r=0;case 3:if(!(r0||this._transactions.length>0}},{key:"_requireNotFrozen",value:function(){if(this._isFrozen())throw new Error("transaction is immutable; it has at least one signature or has been explicitly frozen")}},{key:"_requireNotSignOnDemand",value:function(){if(this._signOnDemand)throw new Error("Please use `toBytesAsync()` if `signOnDemand` is enabled")}},{key:"_requireFrozen",value:function(){if(!this._isFrozen())throw new Error("transaction must have been frozen before calculating the hash will be stable, try calling `freeze`")}},{key:"_requireOneNodeAccountId",value:function(){if(1!=this._nodeAccountIds.length)throw"transaction did not have exactly one node ID set"}}],[{key:"fromBytes",value:function(e){var t=[],n=[],r=[],o=[],a=[],i=[],u=A.TransactionList.decode(e).transactionList;if(0===u.length){var c=A.Transaction.decode(e);0!==c.signedTransactionBytes.length?u.push(c):u.push({signedTransactionBytes:A.SignedTransaction.encode({bodyBytes:c.bodyBytes,sigMap:c.sigMap}).finish()})}var s,l=C(u);try{for(l.s();!(s=l.n()).done;){var f=s.value;if(null==f.signedTransactionBytes)throw new Error("Transaction.signedTransactionBytes are null");var d=A.SignedTransaction.decode(f.signedTransactionBytes);t.push(d);var p=A.TransactionBody.decode(d.bodyBytes);if(null==p.data)throw new Error("(BUG) body.data was not set in the protobuf");if(i.push(p),null!=p.transactionID){var h=m.default._fromProtobuf(p.transactionID);o.includes(h.toString())||(n.push(h),o.push(h.toString()))}if(null!=p.nodeAccountID){var y=O.default._fromProtobuf(p.nodeAccountID);a.includes(y.toString())||(r.push(y),a.push(y.toString()))}}}catch(e){l.e(e)}finally{l.f()}var b=i[0];if(null==b||null==b.data)throw new Error("No transaction found in bytes or failed to decode TransactionBody");var v=x.get(b.data);if(null==v)throw new Error("(BUG) Transaction.fromBytes() not implemented for type ".concat(b.data));return v(u,t,n,r,i)}},{key:"_fromProtobufTransactions",value:function(e,t,n,r,o,a){for(var i=a[0],u=new O.default(0),c=0;c=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0}},{key:"_getTransactionId",value:function(){return this.transactionId}},{key:"_validateChecksums",value:function(e){}},{key:"_beforeExecute",value:(R=(0,u.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._isFrozen()||this.freezeWith(t),t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),null==this._operator){e.next=5;break}return e.next=5,this.signWith(this._operator.publicKey,this._operator.transactionSigner);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return R.apply(this,arguments)})},{key:"_makeRequestAsync",value:(d=(0,u.default)(a.default.mark((function e(){var t;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this._nextTransactionIndex*this._nodeAccountIds.length+this._nodeAccountIds.index,this._signOnDemand){e.next=4;break}return this._buildTransaction(t),e.abrupt("return",this._transactions.get(t));case 4:return e.next=6,this._buildTransactionAsync();case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"_signTransaction",value:(o=(0,u.default)(a.default.mark((function e(){var t,n,r,o,i,u;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this._makeSignedTransaction(this._nodeAccountIds.next),n=t.bodyBytes,r=0;case 3:if(!(r0||this._transactions.length>0}},{key:"_requireNotFrozen",value:function(){if(this._isFrozen())throw new Error("transaction is immutable; it has at least one signature or has been explicitly frozen")}},{key:"_requireNotSignOnDemand",value:function(){if(this._signOnDemand)throw new Error("Please use `toBytesAsync()` if `signOnDemand` is enabled")}},{key:"_requireFrozen",value:function(){if(!this._isFrozen())throw new Error("transaction must have been frozen before calculating the hash will be stable, try calling `freeze`")}},{key:"_requireOneNodeAccountId",value:function(){if(1!=this._nodeAccountIds.length)throw"transaction did not have exactly one node ID set"}}],[{key:"fromBytes",value:function(e){var t=[],n=[],r=[],o=[],a=[],i=[],u=A.TransactionList.decode(e).transactionList;if(0===u.length){var c=A.Transaction.decode(e);0!==c.signedTransactionBytes.length?u.push(c):u.push({signedTransactionBytes:A.SignedTransaction.encode({bodyBytes:c.bodyBytes,sigMap:c.sigMap}).finish()})}var s,l=C(u);try{for(l.s();!(s=l.n()).done;){var f=s.value;if(null==f.signedTransactionBytes)throw new Error("Transaction.signedTransactionBytes are null");var d=A.SignedTransaction.decode(f.signedTransactionBytes);t.push(d);var p=A.TransactionBody.decode(d.bodyBytes);if(null==p.data)throw new Error("(BUG) body.data was not set in the protobuf");if(i.push(p),null!=p.transactionID){var h=m.default._fromProtobuf(p.transactionID);o.includes(h.toString())||(n.push(h),o.push(h.toString()))}if(null!=p.nodeAccountID){var y=O.default._fromProtobuf(p.nodeAccountID);a.includes(y.toString())||(r.push(y),a.push(y.toString()))}}}catch(e){l.e(e)}finally{l.f()}var b=i[0];if(null==b||null==b.data)throw new Error("No transaction found in bytes or failed to decode TransactionBody");var v=x.get(b.data);if(null==v)throw new Error("(BUG) Transaction.fromBytes() not implemented for type ".concat(b.data));return v(u,t,n,r,i)}},{key:"_fromProtobufTransactions",value:function(e,t,n,r,o,a){for(var i=a[0],u=new O.default(0),c=0;c=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function B(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0}},{key:"_getTransactionId",value:function(){return this.transactionId}},{key:"_validateChecksums",value:function(e){}},{key:"_beforeExecute",value:(D=(0,u.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._isFrozen()||this.freezeWith(t),t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),this._operator=null!=t?t._operator:null,null==this._operator){e.next=6;break}return e.next=6,this.signWith(this._operator.publicKey,this._operator.transactionSigner);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return D.apply(this,arguments)})},{key:"_makeRequestAsync",value:(d=(0,u.default)(a.default.mark((function e(){var t;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this._transactionIds.index*this._nodeAccountIds.length+this._nodeAccountIds.index,this._signOnDemand){e.next=4;break}return this._buildTransaction(t),e.abrupt("return",this._transactions.get(t));case 4:return e.next=6,this._buildTransactionAsync();case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"_signTransaction",value:(o=(0,u.default)(a.default.mark((function e(){var t,n,r,o,i,u;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this._makeSignedTransaction(this._nodeAccountIds.next),n=t.bodyBytes,r=0;case 3:if(!(r0||this._transactions.length>0}},{key:"_requireNotFrozen",value:function(){if(this._isFrozen())throw new Error("transaction is immutable; it has at least one signature or has been explicitly frozen")}},{key:"_requireNotSignOnDemand",value:function(){if(this._signOnDemand)throw new Error("Please use `toBytesAsync()` if `signOnDemand` is enabled")}},{key:"_requireFrozen",value:function(){if(!this._isFrozen())throw new Error("transaction must have been frozen before calculating the hash will be stable, try calling `freeze`")}},{key:"_requireOneNodeAccountId",value:function(){if(1!=this._nodeAccountIds.length)throw"transaction did not have exactly one node ID set"}}],[{key:"fromBytes",value:function(e){var t=[],n=[],r=[],o=[],a=[],i=[],u=A.TransactionList.decode(e).transactionList;if(0===u.length){var c=A.Transaction.decode(e);0!==c.signedTransactionBytes.length?u.push(c):u.push({signedTransactionBytes:A.SignedTransaction.encode({bodyBytes:c.bodyBytes,sigMap:c.sigMap}).finish()})}var s,l=N(u);try{for(l.s();!(s=l.n()).done;){var f=s.value;if(null==f.signedTransactionBytes)throw new Error("Transaction.signedTransactionBytes are null");var d=A.SignedTransaction.decode(f.signedTransactionBytes);t.push(d);var p=A.TransactionBody.decode(d.bodyBytes);if(null==p.data)throw new Error("(BUG) body.data was not set in the protobuf");if(i.push(p),null!=p.transactionID){var h=m.default._fromProtobuf(p.transactionID);o.includes(h.toString())||(n.push(h),o.push(h.toString()))}if(null!=p.nodeAccountID){var y=O.default._fromProtobuf(p.nodeAccountID);a.includes(y.toString())||(r.push(y),a.push(y.toString()))}}}catch(e){l.e(e)}finally{l.f()}var b=i[0];if(null==b||null==b.data)throw new Error("No transaction found in bytes or failed to decode TransactionBody");var v=F.get(b.data);if(null==v)throw new Error("(BUG) Transaction.fromBytes() not implemented for type ".concat(b.data));return v(u,t,n,r,i)}},{key:"_fromProtobufTransactions",value:function(e,t,n,r,o,a){for(var i=a[0],u=new O.default(0),c=0;c=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function B(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0}},{key:"_getTransactionId",value:function(){return this.transactionId}},{key:"_validateChecksums",value:function(e){}},{key:"_beforeExecute",value:(D=(0,u.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._isFrozen()||this.freezeWith(t),t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),this._operator=null!=t?t._operator:null,null==this._operator){e.next=6;break}return e.next=6,this.signWith(this._operator.publicKey,this._operator.transactionSigner);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return D.apply(this,arguments)})},{key:"_makeRequestAsync",value:(d=(0,u.default)(a.default.mark((function e(){var t;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this._transactionIds.index*this._nodeAccountIds.length+this._nodeAccountIds.index,this._signOnDemand){e.next=4;break}return this._buildTransaction(t),e.abrupt("return",this._transactions.get(t));case 4:return e.next=6,this._buildTransactionAsync();case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"_signTransaction",value:(o=(0,u.default)(a.default.mark((function e(){var t,n,r,o,i,u;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this._makeSignedTransaction(this._nodeAccountIds.next),n=t.bodyBytes,r=0;case 3:if(!(r0||this._transactions.length>0}},{key:"_requireNotFrozen",value:function(){if(this._isFrozen())throw new Error("transaction is immutable; it has at least one signature or has been explicitly frozen")}},{key:"_requireNotSignOnDemand",value:function(){if(this._signOnDemand)throw new Error("Please use `toBytesAsync()` if `signOnDemand` is enabled")}},{key:"_requireFrozen",value:function(){if(!this._isFrozen())throw new Error("transaction must have been frozen before calculating the hash will be stable, try calling `freeze`")}},{key:"_requireOneNodeAccountId",value:function(){if(1!=this._nodeAccountIds.length)throw"transaction did not have exactly one node ID set"}}],[{key:"fromBytes",value:function(e){var t=[],n=[],r=[],o=[],a=[],i=[],u=A.TransactionList.decode(e).transactionList;if(0===u.length){var c=A.Transaction.decode(e);0!==c.signedTransactionBytes.length?u.push(c):u.push({signedTransactionBytes:A.SignedTransaction.encode({bodyBytes:c.bodyBytes,sigMap:c.sigMap}).finish()})}var s,l=N(u);try{for(l.s();!(s=l.n()).done;){var f=s.value;if(null==f.signedTransactionBytes)throw new Error("Transaction.signedTransactionBytes are null");var d=A.SignedTransaction.decode(f.signedTransactionBytes);t.push(d);var p=A.TransactionBody.decode(d.bodyBytes);if(null==p.data)throw new Error("(BUG) body.data was not set in the protobuf");if(i.push(p),null!=p.transactionID){var h=m.default._fromProtobuf(p.transactionID);o.includes(h.toString())||(n.push(h),o.push(h.toString()))}if(null!=p.nodeAccountID){var y=O.default._fromProtobuf(p.nodeAccountID);a.includes(y.toString())||(r.push(y),a.push(y.toString()))}}}catch(e){l.e(e)}finally{l.f()}var b=i[0];if(null==b||null==b.data)throw new Error("No transaction found in bytes or failed to decode TransactionBody");var v=F.get(b.data);if(null==v)throw new Error("(BUG) Transaction.fromBytes() not implemented for type ".concat(b.data));return v(u,t,n,r,i)}},{key:"_fromProtobufTransactions",value:function(e,t,n,r,o,a){for(var i=a[0],u=new O.default(0),c=0;c */var r=n(15),o=r.Buffer;function a(e,t){for(var n in e)t[n]=e[n]}function i(e,t,n){return o(e,t,n)}o.from&&o.alloc&&o.allocUnsafe&&o.allocUnsafeSlow?e.exports=r:(a(r,t),t.Buffer=i),i.prototype=Object.create(o.prototype),a(o,i),i.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return o(e,t,n)},i.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=o(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},i.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return o(e)},i.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(71)),i=r(n(41)),u=r(n(1)),c=r(n(2)),s=d(n(168)),l=d(n(36));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=function(){function e(t,n,r){(0,u.default)(this,e);var o=s.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){s.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return s.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{tokenNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return s.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return l.TokenID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return s.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=s.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.tokenNum?t.tokenNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TokenID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(s.fromSolidityAddress(t)))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(71)),i=r(n(41)),u=r(n(1)),c=r(n(2)),s=d(n(179)),l=d(n(37));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=function(){function e(t,n,r){(0,u.default)(this,e);var o=s.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){s.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return s.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{tokenNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return s.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return l.TokenID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return s.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=s.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.tokenNum?t.tokenNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TokenID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(s.fromSolidityAddress(t)))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(71)),i=r(n(41)),u=r(n(1)),c=r(n(2)),s=d(n(188)),l=d(n(38));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=function(){function e(t,n,r){(0,u.default)(this,e);var o=s.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){s.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return s.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{tokenNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return s.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return l.TokenID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return s.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=s.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.tokenNum?t.tokenNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TokenID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(s.fromSolidityAddress(t)))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(71)),i=r(n(41)),u=r(n(1)),c=r(n(2)),s=d(n(192)),l=d(n(39));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=function(){function e(t,n,r){(0,u.default)(this,e);var o=s.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){s.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return s.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{tokenNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return s.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return l.TokenID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return s.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=s.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.tokenNum?t.tokenNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TokenID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(s.fromSolidityAddress(t)))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(153)),c=n(1207),s=r(n(598)),l=r(n(18)),f=function(){function e(t){var n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar;((0,a.default)(this,e),r===s.default.Tinybar)?this._valueInTinybar=(0,c.valueToLong)(t):(n=l.default.isLong(t)?new u.default(t.toString(10)):u.default.isBigNumber(t)||"string"==typeof t||"number"==typeof t?new u.default(t):new u.default(0),this._valueInTinybar=n.multipliedBy(r._tinybar));if(!this._valueInTinybar.isInteger())throw new Error("Hbar in tinybars contains decimals")}return(0,i.default)(e,[{key:"to",value:function(e){return this._valueInTinybar.dividedBy(e._tinybar)}},{key:"toBigNumber",value:function(){return this.to(s.default.Hbar)}},{key:"toTinybars",value:function(){return l.default.fromValue(this._valueInTinybar.toFixed())}},{key:"negated",value:function(){return e.fromTinybars(this._valueInTinybar.negated())}},{key:"isNegative",value:function(){return this._valueInTinybar.isNegative()}},{key:"toString",value:function(e){return null!=e?"".concat(this._valueInTinybar.dividedBy(e._tinybar).toString()," ").concat(e._symbol):this._valueInTinybar.isLessThan(1e4)&&this._valueInTinybar.isGreaterThan(-1e4)?"".concat(this._valueInTinybar.toFixed()," ").concat(s.default.Tinybar._symbol):"".concat(this.to(s.default.Hbar).toString()," ").concat(s.default.Hbar._symbol)}}],[{key:"from",value:function(t,n){return new e(t,n)}},{key:"fromTinybars",value:function(t){return"string"==typeof t?this.fromString(t,s.default.Tinybar):new e(t,s.default.Tinybar)}},{key:"fromString",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar,r=/^((?:\+|-)?\d+(?:\.\d+)?)(?: (tℏ|μℏ|mℏ|ℏ|kℏ|Mℏ|Gℏ))?$/;if(r.test(t)){var a=t.split(" "),i=(0,o.default)(a,2),c=i[0],l=i[1];return null!=l&&(n=s.default.fromString(l)),new e(new u.default(c),n)}throw new Error("invalid argument provided")}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(159)),c=n(1351),s=r(n(658)),l=r(n(19)),f=function(){function e(t){var n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar;((0,a.default)(this,e),r===s.default.Tinybar)?this._valueInTinybar=(0,c.valueToLong)(t):(n=l.default.isLong(t)?new u.default(t.toString(10)):u.default.isBigNumber(t)||"string"==typeof t||"number"==typeof t?new u.default(t):new u.default(0),this._valueInTinybar=n.multipliedBy(r._tinybar));if(!this._valueInTinybar.isInteger())throw new Error("Hbar in tinybars contains decimals")}return(0,i.default)(e,[{key:"to",value:function(e){return this._valueInTinybar.dividedBy(e._tinybar)}},{key:"toBigNumber",value:function(){return this.to(s.default.Hbar)}},{key:"toTinybars",value:function(){return l.default.fromValue(this._valueInTinybar.toFixed())}},{key:"negated",value:function(){return e.fromTinybars(this._valueInTinybar.negated())}},{key:"isNegative",value:function(){return this._valueInTinybar.isNegative()}},{key:"toString",value:function(e){return null!=e?"".concat(this._valueInTinybar.dividedBy(e._tinybar).toString()," ").concat(e._symbol):this._valueInTinybar.isLessThan(1e4)&&this._valueInTinybar.isGreaterThan(-1e4)?"".concat(this._valueInTinybar.toFixed()," ").concat(s.default.Tinybar._symbol):"".concat(this.to(s.default.Hbar).toString()," ").concat(s.default.Hbar._symbol)}}],[{key:"from",value:function(t,n){return new e(t,n)}},{key:"fromTinybars",value:function(t){return"string"==typeof t?this.fromString(t,s.default.Tinybar):new e(t,s.default.Tinybar)}},{key:"fromString",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar,r=/^((?:\+|-)?\d+(?:\.\d+)?)(?: (tℏ|μℏ|mℏ|ℏ|kℏ|Mℏ|Gℏ))?$/;if(r.test(t)){var a=t.split(" "),i=(0,o.default)(a,2),c=i[0],l=i[1];return null!=l&&(n=s.default.fromString(l)),new e(new u.default(c),n)}throw new Error("invalid argument provided")}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(135)),c=n(752),s=r(n(398)),l=r(n(20)),f=function(){function e(t){var n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar;((0,a.default)(this,e),r===s.default.Tinybar)?this._valueInTinybar=(0,c.valueToLong)(t):(n=l.default.isLong(t)?new u.default(t.toString(10)):u.default.isBigNumber(t)||"string"==typeof t||"number"==typeof t?new u.default(t):new u.default(0),this._valueInTinybar=n.multipliedBy(r._tinybar));if(!this._valueInTinybar.isInteger())throw new Error("Hbar in tinybars contains decimals")}return(0,i.default)(e,[{key:"to",value:function(e){return this._valueInTinybar.dividedBy(e._tinybar)}},{key:"toBigNumber",value:function(){return this.to(s.default.Hbar)}},{key:"toTinybars",value:function(){return l.default.fromValue(this._valueInTinybar.toFixed())}},{key:"negated",value:function(){return e.fromTinybars(this._valueInTinybar.negated())}},{key:"toString",value:function(e){return null!=e?"".concat(this._valueInTinybar.dividedBy(e._tinybar).toString()," ").concat(e._symbol):this._valueInTinybar.isLessThan(1e4)&&this._valueInTinybar.isGreaterThan(-1e4)?"".concat(this._valueInTinybar.toFixed()," ").concat(s.default.Tinybar._symbol):"".concat(this.to(s.default.Hbar).toString()," ").concat(s.default.Hbar._symbol)}}],[{key:"from",value:function(t,n){return new e(t,n)}},{key:"fromTinybars",value:function(t){return"string"==typeof t?this.fromString(t,s.default.Tinybar):new e(t,s.default.Tinybar)}},{key:"fromString",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar,r=/^((?:\+|-)?\d+(?:\.\d+)?)(?: (tℏ|μℏ|mℏ|ℏ|kℏ|Mℏ|Gℏ))?$/;if(r.test(t)){var a=t.split(" "),i=(0,o.default)(a,2),c=i[0],l=i[1];return null!=l&&(n=s.default.fromString(l)),new e(new u.default(c),n)}throw new Error("invalid argument provided")}}]),e}();t.default=f},function(e,t,n){"use strict";var r,o,a=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function u(){throw new Error("clearTimeout has not been defined")}function c(e){if(r===setTimeout)return setTimeout(e,0);if((r===i||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(t){return r.call(this,e,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:i}catch(e){r=i}try{o="function"==typeof clearTimeout?clearTimeout:u}catch(e){o=u}}();var s,l=[],f=!1,d=-1;function p(){f&&s&&(f=!1,s.length?l=s.concat(l):d=-1,l.length&&h())}function h(){if(!f){var e=c(p);f=!0;for(var t=l.length;t;){for(s=l,l=[];++d1)for(var n=1;n1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar;((0,a.default)(this,e),r===s.default.Tinybar)?this._valueInTinybar=(0,c.valueToLong)(t):(n=l.default.isLong(t)?new u.default(t.toString(10)):u.default.isBigNumber(t)||"string"==typeof t||"number"==typeof t?new u.default(t):new u.default(0),this._valueInTinybar=n.multipliedBy(r._tinybar));if(!this._valueInTinybar.isInteger())throw new Error("Hbar in tinybars contains decimals")}return(0,i.default)(e,[{key:"to",value:function(e){return this._valueInTinybar.dividedBy(e._tinybar)}},{key:"toBigNumber",value:function(){return this.to(s.default.Hbar)}},{key:"toTinybars",value:function(){return l.default.fromValue(this._valueInTinybar.toFixed())}},{key:"negated",value:function(){return e.fromTinybars(this._valueInTinybar.negated())}},{key:"toString",value:function(e){return null!=e?"".concat(this._valueInTinybar.dividedBy(e._tinybar).toString()," ").concat(e._symbol):this._valueInTinybar.isLessThan(1e4)&&this._valueInTinybar.isGreaterThan(-1e4)?"".concat(this._valueInTinybar.toFixed()," ").concat(s.default.Tinybar._symbol):"".concat(this.to(s.default.Hbar).toString()," ").concat(s.default.Hbar._symbol)}}],[{key:"from",value:function(t,n){return new e(t,n)}},{key:"fromTinybars",value:function(t){return"string"==typeof t?this.fromString(t,s.default.Tinybar):new e(t,s.default.Tinybar)}},{key:"fromString",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.default.Hbar,r=/^((?:\+|-)?\d+(?:\.\d+)?)(?: (tℏ|μℏ|mℏ|ℏ|kℏ|Mℏ|Gℏ))?$/;if(r.test(t)){var a=t.split(" "),i=(0,o.default)(a,2),c=i[0],l=i[1];return null!=l&&(n=s.default.fromString(l)),new e(new u.default(c),n)}throw new Error("invalid argument provided")}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.TransactionResponse=t.TransactionRecord=t.TransactionReceipt=t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.Writer=t.UncheckedSubmitBody=t.UInt64Value=t.UInt32Value=t.TransferList=t.TransactionResponse=t.TransactionRecord=t.TransactionReceipt=t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0;var a,i=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(401)),u=n(768),c=r(n(20));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}null==(a=i.util).Long&&(console.log("Patching Protobuf Long.js instance..."),a.Long=c.default,null!=i.Reader._configure&&i.Reader._configure(i.BufferReader));var l=i.Reader;t.Reader=l;var f=i.Writer;t.Writer=f;var d=u.proto.TokenUnitBalance;t.TokenUnitBalance=d;var p=u.proto.SingleAccountBalances;t.SingleAccountBalances=p;var h=u.proto.AllAccountBalances;t.AllAccountBalances=h;var y=u.proto.ShardID;t.ShardID=y;var m=u.proto.RealmID;t.RealmID=m;var b=u.proto.AccountID;t.AccountID=b;var v=u.proto.FileID;t.FileID=v;var k=u.proto.ContractID;t.ContractID=k;var g=u.proto.TransactionID;t.TransactionID=g;var _=u.proto.AccountAmount;t.AccountAmount=_;var w=u.proto.TransferList;t.TransferList=w;var I=u.proto.NftTransfer;t.NftTransfer=I;var A=u.proto.TokenTransferList;t.TokenTransferList=A;var T=u.proto.Fraction;t.Fraction=T;var O=u.proto.TopicID;t.TopicID=O;var P=u.proto.TokenID;t.TokenID=P;var E=u.proto.ScheduleID;t.ScheduleID=E;var S=u.proto.TokenType;t.TokenType=S;var R=u.proto.SubType;t.SubType=R;var D=u.proto.TokenSupplyType;t.TokenSupplyType=D;var C=u.proto.TokenFreezeStatus;t.TokenFreezeStatus=C;var N=u.proto.TokenKycStatus;t.TokenKycStatus=N;var B=u.proto.Key;t.Key=B;var M=u.proto.ThresholdKey;t.ThresholdKey=M;var j=u.proto.KeyList;t.KeyList=j;var x=u.proto.Signature;t.Signature=x;var F=u.proto.ThresholdSignature;t.ThresholdSignature=F;var U=u.proto.SignatureList;t.SignatureList=U;var L=u.proto.SignaturePair;t.SignaturePair=L;var G=u.proto.SignatureMap;t.SignatureMap=G;var K=u.proto.HederaFunctionality;t.HederaFunctionality=K;var z=u.proto.FeeComponents;t.FeeComponents=z;var Q=u.proto.TransactionFeeSchedule;t.TransactionFeeSchedule=Q;var H=u.proto.FeeData;t.FeeData=H;var V=u.proto.FeeSchedule;t.FeeSchedule=V;var W=u.proto.CurrentAndNextFeeSchedule;t.CurrentAndNextFeeSchedule=W;var q=u.proto.ServiceEndpoint;t.ServiceEndpoint=q;var Y=u.proto.NodeAddress;t.NodeAddress=Y;var Z=u.proto.NodeAddressBook;t.NodeAddressBook=Z;var J=u.proto.SemanticVersion;t.SemanticVersion=J;var X=u.proto.Setting;t.Setting=X;var $=u.proto.ServicesConfigurationList;t.ServicesConfigurationList=$;var ee=u.proto.TokenRelationship;t.TokenRelationship=ee;var te=u.proto.TokenBalance;t.TokenBalance=te;var ne=u.proto.TokenBalances;t.TokenBalances=ne;var re=u.proto.Timestamp;t.Timestamp=re;var oe=u.proto.TimestampSeconds;t.TimestampSeconds=oe;var ae=u.proto.ConsensusCreateTopicTransactionBody;t.ConsensusCreateTopicTransactionBody=ae;var ie=u.proto.Duration;t.Duration=ie;var ue=u.proto.ConsensusDeleteTopicTransactionBody;t.ConsensusDeleteTopicTransactionBody=ue;var ce=u.proto.ConsensusGetTopicInfoQuery;t.ConsensusGetTopicInfoQuery=ce;var se=u.proto.ConsensusGetTopicInfoResponse;t.ConsensusGetTopicInfoResponse=se;var le=u.proto.ResponseType;t.ResponseType=le;var fe=u.proto.QueryHeader;t.QueryHeader=fe;var de=u.proto.Transaction;t.Transaction=de;var pe=u.proto.TransactionBody;t.TransactionBody=pe;var he=u.proto.SystemDeleteTransactionBody;t.SystemDeleteTransactionBody=he;var ye=u.proto.SystemUndeleteTransactionBody;t.SystemUndeleteTransactionBody=ye;var me=u.proto.FreezeTransactionBody;t.FreezeTransactionBody=me;var be=u.proto.ContractCallTransactionBody;t.ContractCallTransactionBody=be;var ve=u.proto.ContractCreateTransactionBody;t.ContractCreateTransactionBody=ve;var ke=u.proto.ContractUpdateTransactionBody;t.ContractUpdateTransactionBody=ke;var ge=u.proto.LiveHash;t.LiveHash=ge;var _e=u.proto.CryptoAddLiveHashTransactionBody;t.CryptoAddLiveHashTransactionBody=_e;var we=u.proto.CryptoCreateTransactionBody;t.CryptoCreateTransactionBody=we;var Ie=u.proto.CryptoDeleteTransactionBody;t.CryptoDeleteTransactionBody=Ie;var Ae=u.proto.CryptoDeleteLiveHashTransactionBody;t.CryptoDeleteLiveHashTransactionBody=Ae;var Te=u.proto.CryptoTransferTransactionBody;t.CryptoTransferTransactionBody=Te;var Oe=u.proto.CryptoUpdateTransactionBody;t.CryptoUpdateTransactionBody=Oe;var Pe=u.proto.CryptoApproveAllowanceTransactionBody;t.CryptoApproveAllowanceTransactionBody=Pe;var Ee=u.proto.CryptoAdjustAllowanceTransactionBody;t.CryptoAdjustAllowanceTransactionBody=Ee;var Se=u.proto.FileAppendTransactionBody;t.FileAppendTransactionBody=Se;var Re=u.proto.FileCreateTransactionBody;t.FileCreateTransactionBody=Re;var De=u.proto.FileDeleteTransactionBody;t.FileDeleteTransactionBody=De;var Ce=u.proto.FileUpdateTransactionBody;t.FileUpdateTransactionBody=Ce;var Ne=u.proto.ContractDeleteTransactionBody;t.ContractDeleteTransactionBody=Ne;var Be=u.proto.ConsensusUpdateTopicTransactionBody;t.ConsensusUpdateTopicTransactionBody=Be;var Me=u.proto.ConsensusMessageChunkInfo;t.ConsensusMessageChunkInfo=Me;var je=u.proto.ConsensusSubmitMessageTransactionBody;t.ConsensusSubmitMessageTransactionBody=je;var xe=u.proto.UncheckedSubmitBody;t.UncheckedSubmitBody=xe;var Fe=u.proto.TokenCreateTransactionBody;t.TokenCreateTransactionBody=Fe;var Ue=u.proto.FractionalFee;t.FractionalFee=Ue;var Le=u.proto.FixedFee;t.FixedFee=Le;var Ge=u.proto.CustomFee;t.CustomFee=Ge;var Ke=u.proto.AssessedCustomFee;t.AssessedCustomFee=Ke;var ze=u.proto.RoyaltyFee;t.RoyaltyFee=ze;var Qe=u.proto.TokenFreezeAccountTransactionBody;t.TokenFreezeAccountTransactionBody=Qe;var He=u.proto.TokenUnfreezeAccountTransactionBody;t.TokenUnfreezeAccountTransactionBody=He;var Ve=u.proto.TokenGrantKycTransactionBody;t.TokenGrantKycTransactionBody=Ve;var We=u.proto.TokenRevokeKycTransactionBody;t.TokenRevokeKycTransactionBody=We;var qe=u.proto.TokenDeleteTransactionBody;t.TokenDeleteTransactionBody=qe;var Ye=u.proto.TokenUpdateTransactionBody;t.TokenUpdateTransactionBody=Ye;var Ze=u.proto.TokenMintTransactionBody;t.TokenMintTransactionBody=Ze;var Je=u.proto.TokenBurnTransactionBody;t.TokenBurnTransactionBody=Je;var Xe=u.proto.TokenWipeAccountTransactionBody;t.TokenWipeAccountTransactionBody=Xe;var $e=u.proto.TokenAssociateTransactionBody;t.TokenAssociateTransactionBody=$e;var et=u.proto.TokenDissociateTransactionBody;t.TokenDissociateTransactionBody=et;var tt=u.proto.TokenFeeScheduleUpdateTransactionBody;t.TokenFeeScheduleUpdateTransactionBody=tt;var nt=u.proto.ScheduleCreateTransactionBody;t.ScheduleCreateTransactionBody=nt;var rt=u.proto.SchedulableTransactionBody;t.SchedulableTransactionBody=rt;var ot=u.proto.ScheduleDeleteTransactionBody;t.ScheduleDeleteTransactionBody=ot;var at=u.proto.ScheduleSignTransactionBody;t.ScheduleSignTransactionBody=at;var it=u.proto.ResponseHeader;t.ResponseHeader=it;var ut=u.proto.TransactionResponse;t.TransactionResponse=ut;var ct=u.proto.ResponseCodeEnum;t.ResponseCodeEnum=ct;var st=u.proto.ConsensusTopicInfo;t.ConsensusTopicInfo=st;var lt=u.proto.ConsensusService;t.ConsensusService=lt;var ft=u.proto.Query;t.Query=ft;var dt=u.proto.GetByKeyQuery;t.GetByKeyQuery=dt;var pt=u.proto.EntityID;t.EntityID=pt;var ht=u.proto.GetByKeyResponse;t.GetByKeyResponse=ht;var yt=u.proto.GetBySolidityIDQuery;t.GetBySolidityIDQuery=yt;var mt=u.proto.GetBySolidityIDResponse;t.GetBySolidityIDResponse=mt;var bt=u.proto.ContractLoginfo;t.ContractLoginfo=bt;var vt=u.proto.ContractFunctionResult;t.ContractFunctionResult=vt;var kt=u.proto.ContractCallLocalQuery;t.ContractCallLocalQuery=kt;var gt=u.proto.ContractCallLocalResponse;t.ContractCallLocalResponse=gt;var _t=u.proto.ContractGetInfoQuery;t.ContractGetInfoQuery=_t;var wt=u.proto.ContractGetInfoResponse;t.ContractGetInfoResponse=wt;var It=u.proto.ContractGetInfoResponse.ContractInfo;t.ContractInfo=It;var At=u.proto.ContractGetBytecodeQuery;t.ContractGetBytecodeQuery=At;var Tt=u.proto.ContractGetBytecodeResponse;t.ContractGetBytecodeResponse=Tt;var Ot=u.proto.ContractGetRecordsQuery;t.ContractGetRecordsQuery=Ot;var Pt=u.proto.ContractGetRecordsResponse;t.ContractGetRecordsResponse=Pt;var Et=u.proto.ContractStateChange;t.ContractStateChange=Et;var St=u.proto.StorageChange;t.StorageChange=St;var Rt=u.proto.TransactionRecord;t.TransactionRecord=Rt;var Dt=u.proto.TransactionReceipt;t.TransactionReceipt=Dt;var Ct=u.proto.ExchangeRate;t.ExchangeRate=Ct;var Nt=u.proto.ExchangeRateSet;t.ExchangeRateSet=Nt;var Bt=u.proto.CryptoGetAccountBalanceQuery;t.CryptoGetAccountBalanceQuery=Bt;var Mt=u.proto.CryptoGetAccountBalanceResponse;t.CryptoGetAccountBalanceResponse=Mt;var jt=u.proto.CryptoGetAccountRecordsQuery;t.CryptoGetAccountRecordsQuery=jt;var xt=u.proto.CryptoGetAccountRecordsResponse;t.CryptoGetAccountRecordsResponse=xt;var Ft=u.proto.CryptoGetInfoQuery;t.CryptoGetInfoQuery=Ft;var Ut=u.proto.CryptoGetInfoResponse;t.CryptoGetInfoResponse=Ut;var Lt=u.proto.CryptoGetInfoResponse.AccountInfo;t.AccountInfo=Lt;var Gt=u.proto.CryptoAllowance;t.CryptoAllowance=Gt;var Kt=u.proto.TokenAllowance;t.TokenAllowance=Kt;var zt=u.proto.NftAllowance;t.NftAllowance=zt;var Qt=u.proto.CryptoGetLiveHashQuery;t.CryptoGetLiveHashQuery=Qt;var Ht=u.proto.CryptoGetLiveHashResponse;t.CryptoGetLiveHashResponse=Ht;var Vt=u.proto.CryptoGetStakersQuery;t.CryptoGetStakersQuery=Vt;var Wt=u.proto.ProxyStaker;t.ProxyStaker=Wt;var qt=u.proto.AllProxyStakers;t.AllProxyStakers=qt;var Yt=u.proto.CryptoGetStakersResponse;t.CryptoGetStakersResponse=Yt;var Zt=u.proto.FileGetContentsQuery;t.FileGetContentsQuery=Zt;var Jt=u.proto.FileGetContentsResponse;t.FileGetContentsResponse=Jt;var Xt=u.proto.FileGetContentsResponse.FileContents;t.FileContents=Xt;var $t=u.proto.FileGetInfoQuery;t.FileGetInfoQuery=$t;var en=u.proto.FileGetInfoResponse;t.FileGetInfoResponse=en;var tn=u.proto.FileGetInfoResponse.FileInfo;t.FileInfo=tn;var nn=u.proto.TransactionGetReceiptQuery;t.TransactionGetReceiptQuery=nn;var rn=u.proto.TransactionGetReceiptResponse;t.TransactionGetReceiptResponse=rn;var on=u.proto.TransactionGetRecordQuery;t.TransactionGetRecordQuery=on;var an=u.proto.TransactionGetRecordResponse;t.TransactionGetRecordResponse=an;var un=u.proto.TransactionGetFastRecordQuery;t.TransactionGetFastRecordQuery=un;var cn=u.proto.TransactionGetFastRecordResponse;t.TransactionGetFastRecordResponse=cn;var sn=u.proto.NetworkGetVersionInfoQuery;t.NetworkGetVersionInfoQuery=sn;var ln=u.proto.NetworkGetVersionInfoResponse;t.NetworkGetVersionInfoResponse=ln;var fn=u.proto.TokenGetInfoQuery;t.TokenGetInfoQuery=fn;var dn=u.proto.TokenInfo;t.TokenInfo=dn;var pn=u.proto.TokenGetInfoResponse;t.TokenGetInfoResponse=pn;var hn=u.proto.ScheduleGetInfoQuery;t.ScheduleGetInfoQuery=hn;var yn=u.proto.ScheduleInfo;t.ScheduleInfo=yn;var mn=u.proto.ScheduleGetInfoResponse;t.ScheduleGetInfoResponse=mn;var bn=u.proto.TokenGetAccountNftInfosQuery;t.TokenGetAccountNftInfosQuery=bn;var vn=u.proto.TokenGetAccountNftInfosResponse;t.TokenGetAccountNftInfosResponse=vn;var kn=u.proto.NftID;t.NftID=kn;var gn=u.proto.TokenGetNftInfoQuery;t.TokenGetNftInfoQuery=gn;var _n=u.proto.TokenNftInfo;t.TokenNftInfo=_n;var wn=u.proto.TokenGetNftInfoResponse;t.TokenGetNftInfoResponse=wn;var In=u.proto.TokenGetNftInfosQuery;t.TokenGetNftInfosQuery=In;var An=u.proto.TokenGetNftInfosResponse;t.TokenGetNftInfosResponse=An;var Tn=u.proto.Response;t.Response=Tn;var On=u.proto.CryptoService;t.CryptoService=On;var Pn=u.proto.FileService;t.FileService=Pn;var En=u.proto.FreezeService;t.FreezeService=En;var Sn=u.proto.ConsensusTopicQuery;t.ConsensusTopicQuery=Sn;var Rn=u.proto.ConsensusTopicResponse;t.ConsensusTopicResponse=Rn;var Dn=u.proto.MirrorConsensusService;t.MirrorConsensusService=Dn;var Cn=u.proto.NetworkService;t.NetworkService=Cn;var Nn=u.proto.ScheduleService;t.ScheduleService=Nn;var Bn=u.proto.SmartContractService;t.SmartContractService=Bn;var Mn=u.proto.ThrottleGroup;t.ThrottleGroup=Mn;var jn=u.proto.ThrottleBucket;t.ThrottleBucket=jn;var xn=u.proto.ThrottleDefinitions;t.ThrottleDefinitions=xn;var Fn=u.proto.TokenService;t.TokenService=Fn;var Un=u.proto.SignedTransaction;t.SignedTransaction=Un;var Ln=u.proto.TransactionList;t.TransactionList=Ln;var Gn=u.proto.DoubleValue;t.DoubleValue=Gn;var Kn=u.proto.FloatValue;t.FloatValue=Kn;var zn=u.proto.UInt64Value;t.UInt64Value=zn;var Qn=u.proto.UInt32Value;t.UInt32Value=Qn;var Hn=u.proto.BoolValue;t.BoolValue=Hn;var Vn=u.proto.StringValue;t.StringValue=Vn;var Wn=u.proto.BytesValue;t.BytesValue=Wn;var qn=u.proto.TokenPauseTransactionBody;t.TokenPauseTransactionBody=qn;var Yn=u.proto.TokenUnpauseTransactionBody;t.TokenUnpauseTransactionBody=Yn;var Zn=u.proto.TokenPauseStatus;t.TokenPauseStatus=Zn;var Jn=u.proto.FreezeType;t.FreezeType=Jn;var Xn=u.proto.AddressBookQuery;t.AddressBookQuery=Xn;var $n=u.proto.MirrorNetworkService;t.MirrorNetworkService=$n},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.TransactionResponse=t.TransactionRecord=t.TransactionReceipt=t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.Writer=t.UncheckedSubmitBody=t.UInt64Value=t.UInt32Value=t.TransferList=t.TransactionResponse=t.TransactionRecord=t.TransactionReceipt=t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0;var a,i=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(497)),u=n(990),c=r(n(21));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}null==(a=i.util).Long&&(console.log("Patching Protobuf Long.js instance..."),a.Long=c.default,null!=i.Reader._configure&&i.Reader._configure(i.BufferReader));var l=i.Reader;t.Reader=l;var f=i.Writer;t.Writer=f;var d=u.proto.TokenUnitBalance;t.TokenUnitBalance=d;var p=u.proto.SingleAccountBalances;t.SingleAccountBalances=p;var h=u.proto.AllAccountBalances;t.AllAccountBalances=h;var y=u.proto.ShardID;t.ShardID=y;var m=u.proto.RealmID;t.RealmID=m;var b=u.proto.AccountID;t.AccountID=b;var v=u.proto.FileID;t.FileID=v;var k=u.proto.ContractID;t.ContractID=k;var g=u.proto.TransactionID;t.TransactionID=g;var _=u.proto.AccountAmount;t.AccountAmount=_;var w=u.proto.TransferList;t.TransferList=w;var I=u.proto.NftTransfer;t.NftTransfer=I;var A=u.proto.TokenTransferList;t.TokenTransferList=A;var T=u.proto.Fraction;t.Fraction=T;var O=u.proto.TopicID;t.TopicID=O;var P=u.proto.TokenID;t.TokenID=P;var E=u.proto.ScheduleID;t.ScheduleID=E;var S=u.proto.TokenType;t.TokenType=S;var R=u.proto.SubType;t.SubType=R;var D=u.proto.TokenSupplyType;t.TokenSupplyType=D;var C=u.proto.TokenFreezeStatus;t.TokenFreezeStatus=C;var N=u.proto.TokenKycStatus;t.TokenKycStatus=N;var B=u.proto.Key;t.Key=B;var M=u.proto.ThresholdKey;t.ThresholdKey=M;var j=u.proto.KeyList;t.KeyList=j;var x=u.proto.Signature;t.Signature=x;var F=u.proto.ThresholdSignature;t.ThresholdSignature=F;var U=u.proto.SignatureList;t.SignatureList=U;var L=u.proto.SignaturePair;t.SignaturePair=L;var G=u.proto.SignatureMap;t.SignatureMap=G;var K=u.proto.HederaFunctionality;t.HederaFunctionality=K;var z=u.proto.FeeComponents;t.FeeComponents=z;var Q=u.proto.TransactionFeeSchedule;t.TransactionFeeSchedule=Q;var H=u.proto.FeeData;t.FeeData=H;var V=u.proto.FeeSchedule;t.FeeSchedule=V;var W=u.proto.CurrentAndNextFeeSchedule;t.CurrentAndNextFeeSchedule=W;var q=u.proto.ServiceEndpoint;t.ServiceEndpoint=q;var Y=u.proto.NodeAddress;t.NodeAddress=Y;var Z=u.proto.NodeAddressBook;t.NodeAddressBook=Z;var J=u.proto.SemanticVersion;t.SemanticVersion=J;var X=u.proto.Setting;t.Setting=X;var $=u.proto.ServicesConfigurationList;t.ServicesConfigurationList=$;var ee=u.proto.TokenRelationship;t.TokenRelationship=ee;var te=u.proto.TokenBalance;t.TokenBalance=te;var ne=u.proto.TokenBalances;t.TokenBalances=ne;var re=u.proto.Timestamp;t.Timestamp=re;var oe=u.proto.TimestampSeconds;t.TimestampSeconds=oe;var ae=u.proto.ConsensusCreateTopicTransactionBody;t.ConsensusCreateTopicTransactionBody=ae;var ie=u.proto.Duration;t.Duration=ie;var ue=u.proto.ConsensusDeleteTopicTransactionBody;t.ConsensusDeleteTopicTransactionBody=ue;var ce=u.proto.ConsensusGetTopicInfoQuery;t.ConsensusGetTopicInfoQuery=ce;var se=u.proto.ConsensusGetTopicInfoResponse;t.ConsensusGetTopicInfoResponse=se;var le=u.proto.ResponseType;t.ResponseType=le;var fe=u.proto.QueryHeader;t.QueryHeader=fe;var de=u.proto.Transaction;t.Transaction=de;var pe=u.proto.TransactionBody;t.TransactionBody=pe;var he=u.proto.SystemDeleteTransactionBody;t.SystemDeleteTransactionBody=he;var ye=u.proto.SystemUndeleteTransactionBody;t.SystemUndeleteTransactionBody=ye;var me=u.proto.FreezeTransactionBody;t.FreezeTransactionBody=me;var be=u.proto.ContractCallTransactionBody;t.ContractCallTransactionBody=be;var ve=u.proto.ContractCreateTransactionBody;t.ContractCreateTransactionBody=ve;var ke=u.proto.ContractUpdateTransactionBody;t.ContractUpdateTransactionBody=ke;var ge=u.proto.LiveHash;t.LiveHash=ge;var _e=u.proto.CryptoAddLiveHashTransactionBody;t.CryptoAddLiveHashTransactionBody=_e;var we=u.proto.CryptoCreateTransactionBody;t.CryptoCreateTransactionBody=we;var Ie=u.proto.CryptoDeleteTransactionBody;t.CryptoDeleteTransactionBody=Ie;var Ae=u.proto.CryptoDeleteLiveHashTransactionBody;t.CryptoDeleteLiveHashTransactionBody=Ae;var Te=u.proto.CryptoTransferTransactionBody;t.CryptoTransferTransactionBody=Te;var Oe=u.proto.CryptoUpdateTransactionBody;t.CryptoUpdateTransactionBody=Oe;var Pe=u.proto.CryptoApproveAllowanceTransactionBody;t.CryptoApproveAllowanceTransactionBody=Pe;var Ee=u.proto.CryptoAdjustAllowanceTransactionBody;t.CryptoAdjustAllowanceTransactionBody=Ee;var Se=u.proto.FileAppendTransactionBody;t.FileAppendTransactionBody=Se;var Re=u.proto.FileCreateTransactionBody;t.FileCreateTransactionBody=Re;var De=u.proto.FileDeleteTransactionBody;t.FileDeleteTransactionBody=De;var Ce=u.proto.FileUpdateTransactionBody;t.FileUpdateTransactionBody=Ce;var Ne=u.proto.ContractDeleteTransactionBody;t.ContractDeleteTransactionBody=Ne;var Be=u.proto.ConsensusUpdateTopicTransactionBody;t.ConsensusUpdateTopicTransactionBody=Be;var Me=u.proto.ConsensusMessageChunkInfo;t.ConsensusMessageChunkInfo=Me;var je=u.proto.ConsensusSubmitMessageTransactionBody;t.ConsensusSubmitMessageTransactionBody=je;var xe=u.proto.UncheckedSubmitBody;t.UncheckedSubmitBody=xe;var Fe=u.proto.TokenCreateTransactionBody;t.TokenCreateTransactionBody=Fe;var Ue=u.proto.FractionalFee;t.FractionalFee=Ue;var Le=u.proto.FixedFee;t.FixedFee=Le;var Ge=u.proto.CustomFee;t.CustomFee=Ge;var Ke=u.proto.AssessedCustomFee;t.AssessedCustomFee=Ke;var ze=u.proto.RoyaltyFee;t.RoyaltyFee=ze;var Qe=u.proto.TokenFreezeAccountTransactionBody;t.TokenFreezeAccountTransactionBody=Qe;var He=u.proto.TokenUnfreezeAccountTransactionBody;t.TokenUnfreezeAccountTransactionBody=He;var Ve=u.proto.TokenGrantKycTransactionBody;t.TokenGrantKycTransactionBody=Ve;var We=u.proto.TokenRevokeKycTransactionBody;t.TokenRevokeKycTransactionBody=We;var qe=u.proto.TokenDeleteTransactionBody;t.TokenDeleteTransactionBody=qe;var Ye=u.proto.TokenUpdateTransactionBody;t.TokenUpdateTransactionBody=Ye;var Ze=u.proto.TokenMintTransactionBody;t.TokenMintTransactionBody=Ze;var Je=u.proto.TokenBurnTransactionBody;t.TokenBurnTransactionBody=Je;var Xe=u.proto.TokenWipeAccountTransactionBody;t.TokenWipeAccountTransactionBody=Xe;var $e=u.proto.TokenAssociateTransactionBody;t.TokenAssociateTransactionBody=$e;var et=u.proto.TokenDissociateTransactionBody;t.TokenDissociateTransactionBody=et;var tt=u.proto.TokenFeeScheduleUpdateTransactionBody;t.TokenFeeScheduleUpdateTransactionBody=tt;var nt=u.proto.ScheduleCreateTransactionBody;t.ScheduleCreateTransactionBody=nt;var rt=u.proto.SchedulableTransactionBody;t.SchedulableTransactionBody=rt;var ot=u.proto.ScheduleDeleteTransactionBody;t.ScheduleDeleteTransactionBody=ot;var at=u.proto.ScheduleSignTransactionBody;t.ScheduleSignTransactionBody=at;var it=u.proto.ResponseHeader;t.ResponseHeader=it;var ut=u.proto.TransactionResponse;t.TransactionResponse=ut;var ct=u.proto.ResponseCodeEnum;t.ResponseCodeEnum=ct;var st=u.proto.ConsensusTopicInfo;t.ConsensusTopicInfo=st;var lt=u.proto.ConsensusService;t.ConsensusService=lt;var ft=u.proto.Query;t.Query=ft;var dt=u.proto.GetByKeyQuery;t.GetByKeyQuery=dt;var pt=u.proto.EntityID;t.EntityID=pt;var ht=u.proto.GetByKeyResponse;t.GetByKeyResponse=ht;var yt=u.proto.GetBySolidityIDQuery;t.GetBySolidityIDQuery=yt;var mt=u.proto.GetBySolidityIDResponse;t.GetBySolidityIDResponse=mt;var bt=u.proto.ContractLoginfo;t.ContractLoginfo=bt;var vt=u.proto.ContractFunctionResult;t.ContractFunctionResult=vt;var kt=u.proto.ContractCallLocalQuery;t.ContractCallLocalQuery=kt;var gt=u.proto.ContractCallLocalResponse;t.ContractCallLocalResponse=gt;var _t=u.proto.ContractGetInfoQuery;t.ContractGetInfoQuery=_t;var wt=u.proto.ContractGetInfoResponse;t.ContractGetInfoResponse=wt;var It=u.proto.ContractGetInfoResponse.ContractInfo;t.ContractInfo=It;var At=u.proto.ContractGetBytecodeQuery;t.ContractGetBytecodeQuery=At;var Tt=u.proto.ContractGetBytecodeResponse;t.ContractGetBytecodeResponse=Tt;var Ot=u.proto.ContractGetRecordsQuery;t.ContractGetRecordsQuery=Ot;var Pt=u.proto.ContractGetRecordsResponse;t.ContractGetRecordsResponse=Pt;var Et=u.proto.ContractStateChange;t.ContractStateChange=Et;var St=u.proto.StorageChange;t.StorageChange=St;var Rt=u.proto.TransactionRecord;t.TransactionRecord=Rt;var Dt=u.proto.TransactionReceipt;t.TransactionReceipt=Dt;var Ct=u.proto.ExchangeRate;t.ExchangeRate=Ct;var Nt=u.proto.ExchangeRateSet;t.ExchangeRateSet=Nt;var Bt=u.proto.CryptoGetAccountBalanceQuery;t.CryptoGetAccountBalanceQuery=Bt;var Mt=u.proto.CryptoGetAccountBalanceResponse;t.CryptoGetAccountBalanceResponse=Mt;var jt=u.proto.CryptoGetAccountRecordsQuery;t.CryptoGetAccountRecordsQuery=jt;var xt=u.proto.CryptoGetAccountRecordsResponse;t.CryptoGetAccountRecordsResponse=xt;var Ft=u.proto.CryptoGetInfoQuery;t.CryptoGetInfoQuery=Ft;var Ut=u.proto.CryptoGetInfoResponse;t.CryptoGetInfoResponse=Ut;var Lt=u.proto.CryptoGetInfoResponse.AccountInfo;t.AccountInfo=Lt;var Gt=u.proto.CryptoAllowance;t.CryptoAllowance=Gt;var Kt=u.proto.TokenAllowance;t.TokenAllowance=Kt;var zt=u.proto.NftAllowance;t.NftAllowance=zt;var Qt=u.proto.CryptoGetLiveHashQuery;t.CryptoGetLiveHashQuery=Qt;var Ht=u.proto.CryptoGetLiveHashResponse;t.CryptoGetLiveHashResponse=Ht;var Vt=u.proto.CryptoGetStakersQuery;t.CryptoGetStakersQuery=Vt;var Wt=u.proto.ProxyStaker;t.ProxyStaker=Wt;var qt=u.proto.AllProxyStakers;t.AllProxyStakers=qt;var Yt=u.proto.CryptoGetStakersResponse;t.CryptoGetStakersResponse=Yt;var Zt=u.proto.FileGetContentsQuery;t.FileGetContentsQuery=Zt;var Jt=u.proto.FileGetContentsResponse;t.FileGetContentsResponse=Jt;var Xt=u.proto.FileGetContentsResponse.FileContents;t.FileContents=Xt;var $t=u.proto.FileGetInfoQuery;t.FileGetInfoQuery=$t;var en=u.proto.FileGetInfoResponse;t.FileGetInfoResponse=en;var tn=u.proto.FileGetInfoResponse.FileInfo;t.FileInfo=tn;var nn=u.proto.TransactionGetReceiptQuery;t.TransactionGetReceiptQuery=nn;var rn=u.proto.TransactionGetReceiptResponse;t.TransactionGetReceiptResponse=rn;var on=u.proto.TransactionGetRecordQuery;t.TransactionGetRecordQuery=on;var an=u.proto.TransactionGetRecordResponse;t.TransactionGetRecordResponse=an;var un=u.proto.TransactionGetFastRecordQuery;t.TransactionGetFastRecordQuery=un;var cn=u.proto.TransactionGetFastRecordResponse;t.TransactionGetFastRecordResponse=cn;var sn=u.proto.NetworkGetVersionInfoQuery;t.NetworkGetVersionInfoQuery=sn;var ln=u.proto.NetworkGetVersionInfoResponse;t.NetworkGetVersionInfoResponse=ln;var fn=u.proto.TokenGetInfoQuery;t.TokenGetInfoQuery=fn;var dn=u.proto.TokenInfo;t.TokenInfo=dn;var pn=u.proto.TokenGetInfoResponse;t.TokenGetInfoResponse=pn;var hn=u.proto.ScheduleGetInfoQuery;t.ScheduleGetInfoQuery=hn;var yn=u.proto.ScheduleInfo;t.ScheduleInfo=yn;var mn=u.proto.ScheduleGetInfoResponse;t.ScheduleGetInfoResponse=mn;var bn=u.proto.TokenGetAccountNftInfosQuery;t.TokenGetAccountNftInfosQuery=bn;var vn=u.proto.TokenGetAccountNftInfosResponse;t.TokenGetAccountNftInfosResponse=vn;var kn=u.proto.NftID;t.NftID=kn;var gn=u.proto.TokenGetNftInfoQuery;t.TokenGetNftInfoQuery=gn;var _n=u.proto.TokenNftInfo;t.TokenNftInfo=_n;var wn=u.proto.TokenGetNftInfoResponse;t.TokenGetNftInfoResponse=wn;var In=u.proto.TokenGetNftInfosQuery;t.TokenGetNftInfosQuery=In;var An=u.proto.TokenGetNftInfosResponse;t.TokenGetNftInfosResponse=An;var Tn=u.proto.Response;t.Response=Tn;var On=u.proto.CryptoService;t.CryptoService=On;var Pn=u.proto.FileService;t.FileService=Pn;var En=u.proto.FreezeService;t.FreezeService=En;var Sn=u.proto.ConsensusTopicQuery;t.ConsensusTopicQuery=Sn;var Rn=u.proto.ConsensusTopicResponse;t.ConsensusTopicResponse=Rn;var Dn=u.proto.MirrorConsensusService;t.MirrorConsensusService=Dn;var Cn=u.proto.NetworkService;t.NetworkService=Cn;var Nn=u.proto.ScheduleService;t.ScheduleService=Nn;var Bn=u.proto.SmartContractService;t.SmartContractService=Bn;var Mn=u.proto.ThrottleGroup;t.ThrottleGroup=Mn;var jn=u.proto.ThrottleBucket;t.ThrottleBucket=jn;var xn=u.proto.ThrottleDefinitions;t.ThrottleDefinitions=xn;var Fn=u.proto.TokenService;t.TokenService=Fn;var Un=u.proto.SignedTransaction;t.SignedTransaction=Un;var Ln=u.proto.TransactionList;t.TransactionList=Ln;var Gn=u.proto.DoubleValue;t.DoubleValue=Gn;var Kn=u.proto.FloatValue;t.FloatValue=Kn;var zn=u.proto.UInt64Value;t.UInt64Value=zn;var Qn=u.proto.UInt32Value;t.UInt32Value=Qn;var Hn=u.proto.BoolValue;t.BoolValue=Hn;var Vn=u.proto.StringValue;t.StringValue=Vn;var Wn=u.proto.BytesValue;t.BytesValue=Wn;var qn=u.proto.TokenPauseTransactionBody;t.TokenPauseTransactionBody=qn;var Yn=u.proto.TokenUnpauseTransactionBody;t.TokenUnpauseTransactionBody=Yn;var Zn=u.proto.TokenPauseStatus;t.TokenPauseStatus=Zn;var Jn=u.proto.FreezeType;t.FreezeType=Jn;var Xn=u.proto.AddressBookQuery;t.AddressBookQuery=Xn;var $n=u.proto.MirrorNetworkService;t.MirrorNetworkService=$n},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GrantedTokenAllowance=t.GrantedNftAllowance=t.GrantedCryptoAllowance=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GrantedTokenAllowance=t.GrantedNftAllowance=t.GrantedCryptoAllowance=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.Writer=t.UncheckedSubmitBody=t.UInt64Value=t.UInt32Value=t.TransferList=t.TransactionResponse=t.TransactionRecord=t.TransactionReceipt=t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GrantedTokenAllowance=t.GrantedNftAllowance=t.GrantedCryptoAllowance=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0;var a,i=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(601)),u=n(1223),c=r(n(18));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}null==(a=i.util).Long&&(console.log("Patching Protobuf Long.js instance..."),a.Long=c.default,null!=i.Reader._configure&&i.Reader._configure(i.BufferReader));var l=i.Reader;t.Reader=l;var f=i.Writer;t.Writer=f;var d=u.proto.TokenUnitBalance;t.TokenUnitBalance=d;var p=u.proto.SingleAccountBalances;t.SingleAccountBalances=p;var h=u.proto.AllAccountBalances;t.AllAccountBalances=h;var y=u.proto.ShardID;t.ShardID=y;var m=u.proto.RealmID;t.RealmID=m;var b=u.proto.AccountID;t.AccountID=b;var v=u.proto.FileID;t.FileID=v;var k=u.proto.ContractID;t.ContractID=k;var g=u.proto.TransactionID;t.TransactionID=g;var _=u.proto.AccountAmount;t.AccountAmount=_;var w=u.proto.TransferList;t.TransferList=w;var I=u.proto.NftTransfer;t.NftTransfer=I;var A=u.proto.TokenTransferList;t.TokenTransferList=A;var T=u.proto.Fraction;t.Fraction=T;var O=u.proto.TopicID;t.TopicID=O;var P=u.proto.TokenID;t.TokenID=P;var E=u.proto.ScheduleID;t.ScheduleID=E;var S=u.proto.TokenType;t.TokenType=S;var R=u.proto.SubType;t.SubType=R;var D=u.proto.TokenSupplyType;t.TokenSupplyType=D;var C=u.proto.TokenFreezeStatus;t.TokenFreezeStatus=C;var N=u.proto.TokenKycStatus;t.TokenKycStatus=N;var B=u.proto.Key;t.Key=B;var M=u.proto.ThresholdKey;t.ThresholdKey=M;var j=u.proto.KeyList;t.KeyList=j;var x=u.proto.Signature;t.Signature=x;var F=u.proto.ThresholdSignature;t.ThresholdSignature=F;var U=u.proto.SignatureList;t.SignatureList=U;var L=u.proto.SignaturePair;t.SignaturePair=L;var G=u.proto.SignatureMap;t.SignatureMap=G;var K=u.proto.HederaFunctionality;t.HederaFunctionality=K;var z=u.proto.FeeComponents;t.FeeComponents=z;var Q=u.proto.TransactionFeeSchedule;t.TransactionFeeSchedule=Q;var H=u.proto.FeeData;t.FeeData=H;var V=u.proto.FeeSchedule;t.FeeSchedule=V;var W=u.proto.CurrentAndNextFeeSchedule;t.CurrentAndNextFeeSchedule=W;var q=u.proto.ServiceEndpoint;t.ServiceEndpoint=q;var Y=u.proto.NodeAddress;t.NodeAddress=Y;var Z=u.proto.NodeAddressBook;t.NodeAddressBook=Z;var J=u.proto.SemanticVersion;t.SemanticVersion=J;var X=u.proto.Setting;t.Setting=X;var $=u.proto.ServicesConfigurationList;t.ServicesConfigurationList=$;var ee=u.proto.TokenRelationship;t.TokenRelationship=ee;var te=u.proto.TokenBalance;t.TokenBalance=te;var ne=u.proto.TokenBalances;t.TokenBalances=ne;var re=u.proto.Timestamp;t.Timestamp=re;var oe=u.proto.TimestampSeconds;t.TimestampSeconds=oe;var ae=u.proto.ConsensusCreateTopicTransactionBody;t.ConsensusCreateTopicTransactionBody=ae;var ie=u.proto.Duration;t.Duration=ie;var ue=u.proto.ConsensusDeleteTopicTransactionBody;t.ConsensusDeleteTopicTransactionBody=ue;var ce=u.proto.ConsensusGetTopicInfoQuery;t.ConsensusGetTopicInfoQuery=ce;var se=u.proto.ConsensusGetTopicInfoResponse;t.ConsensusGetTopicInfoResponse=se;var le=u.proto.ResponseType;t.ResponseType=le;var fe=u.proto.QueryHeader;t.QueryHeader=fe;var de=u.proto.Transaction;t.Transaction=de;var pe=u.proto.TransactionBody;t.TransactionBody=pe;var he=u.proto.SystemDeleteTransactionBody;t.SystemDeleteTransactionBody=he;var ye=u.proto.SystemUndeleteTransactionBody;t.SystemUndeleteTransactionBody=ye;var me=u.proto.FreezeTransactionBody;t.FreezeTransactionBody=me;var be=u.proto.ContractCallTransactionBody;t.ContractCallTransactionBody=be;var ve=u.proto.ContractCreateTransactionBody;t.ContractCreateTransactionBody=ve;var ke=u.proto.ContractUpdateTransactionBody;t.ContractUpdateTransactionBody=ke;var ge=u.proto.LiveHash;t.LiveHash=ge;var _e=u.proto.CryptoAddLiveHashTransactionBody;t.CryptoAddLiveHashTransactionBody=_e;var we=u.proto.CryptoCreateTransactionBody;t.CryptoCreateTransactionBody=we;var Ie=u.proto.CryptoDeleteTransactionBody;t.CryptoDeleteTransactionBody=Ie;var Ae=u.proto.CryptoDeleteLiveHashTransactionBody;t.CryptoDeleteLiveHashTransactionBody=Ae;var Te=u.proto.CryptoTransferTransactionBody;t.CryptoTransferTransactionBody=Te;var Oe=u.proto.CryptoUpdateTransactionBody;t.CryptoUpdateTransactionBody=Oe;var Pe=u.proto.CryptoApproveAllowanceTransactionBody;t.CryptoApproveAllowanceTransactionBody=Pe;var Ee=u.proto.CryptoAdjustAllowanceTransactionBody;t.CryptoAdjustAllowanceTransactionBody=Ee;var Se=u.proto.FileAppendTransactionBody;t.FileAppendTransactionBody=Se;var Re=u.proto.FileCreateTransactionBody;t.FileCreateTransactionBody=Re;var De=u.proto.FileDeleteTransactionBody;t.FileDeleteTransactionBody=De;var Ce=u.proto.FileUpdateTransactionBody;t.FileUpdateTransactionBody=Ce;var Ne=u.proto.ContractDeleteTransactionBody;t.ContractDeleteTransactionBody=Ne;var Be=u.proto.ConsensusUpdateTopicTransactionBody;t.ConsensusUpdateTopicTransactionBody=Be;var Me=u.proto.ConsensusMessageChunkInfo;t.ConsensusMessageChunkInfo=Me;var je=u.proto.ConsensusSubmitMessageTransactionBody;t.ConsensusSubmitMessageTransactionBody=je;var xe=u.proto.UncheckedSubmitBody;t.UncheckedSubmitBody=xe;var Fe=u.proto.TokenCreateTransactionBody;t.TokenCreateTransactionBody=Fe;var Ue=u.proto.FractionalFee;t.FractionalFee=Ue;var Le=u.proto.FixedFee;t.FixedFee=Le;var Ge=u.proto.CustomFee;t.CustomFee=Ge;var Ke=u.proto.AssessedCustomFee;t.AssessedCustomFee=Ke;var ze=u.proto.RoyaltyFee;t.RoyaltyFee=ze;var Qe=u.proto.TokenFreezeAccountTransactionBody;t.TokenFreezeAccountTransactionBody=Qe;var He=u.proto.TokenUnfreezeAccountTransactionBody;t.TokenUnfreezeAccountTransactionBody=He;var Ve=u.proto.TokenGrantKycTransactionBody;t.TokenGrantKycTransactionBody=Ve;var We=u.proto.TokenRevokeKycTransactionBody;t.TokenRevokeKycTransactionBody=We;var qe=u.proto.TokenDeleteTransactionBody;t.TokenDeleteTransactionBody=qe;var Ye=u.proto.TokenUpdateTransactionBody;t.TokenUpdateTransactionBody=Ye;var Ze=u.proto.TokenMintTransactionBody;t.TokenMintTransactionBody=Ze;var Je=u.proto.TokenBurnTransactionBody;t.TokenBurnTransactionBody=Je;var Xe=u.proto.TokenWipeAccountTransactionBody;t.TokenWipeAccountTransactionBody=Xe;var $e=u.proto.TokenAssociateTransactionBody;t.TokenAssociateTransactionBody=$e;var et=u.proto.TokenDissociateTransactionBody;t.TokenDissociateTransactionBody=et;var tt=u.proto.TokenFeeScheduleUpdateTransactionBody;t.TokenFeeScheduleUpdateTransactionBody=tt;var nt=u.proto.ScheduleCreateTransactionBody;t.ScheduleCreateTransactionBody=nt;var rt=u.proto.SchedulableTransactionBody;t.SchedulableTransactionBody=rt;var ot=u.proto.ScheduleDeleteTransactionBody;t.ScheduleDeleteTransactionBody=ot;var at=u.proto.ScheduleSignTransactionBody;t.ScheduleSignTransactionBody=at;var it=u.proto.ResponseHeader;t.ResponseHeader=it;var ut=u.proto.TransactionResponse;t.TransactionResponse=ut;var ct=u.proto.ResponseCodeEnum;t.ResponseCodeEnum=ct;var st=u.proto.ConsensusTopicInfo;t.ConsensusTopicInfo=st;var lt=u.proto.ConsensusService;t.ConsensusService=lt;var ft=u.proto.Query;t.Query=ft;var dt=u.proto.GetByKeyQuery;t.GetByKeyQuery=dt;var pt=u.proto.EntityID;t.EntityID=pt;var ht=u.proto.GetByKeyResponse;t.GetByKeyResponse=ht;var yt=u.proto.GetBySolidityIDQuery;t.GetBySolidityIDQuery=yt;var mt=u.proto.GetBySolidityIDResponse;t.GetBySolidityIDResponse=mt;var bt=u.proto.ContractLoginfo;t.ContractLoginfo=bt;var vt=u.proto.ContractFunctionResult;t.ContractFunctionResult=vt;var kt=u.proto.ContractCallLocalQuery;t.ContractCallLocalQuery=kt;var gt=u.proto.ContractCallLocalResponse;t.ContractCallLocalResponse=gt;var _t=u.proto.ContractGetInfoQuery;t.ContractGetInfoQuery=_t;var wt=u.proto.ContractGetInfoResponse;t.ContractGetInfoResponse=wt;var It=u.proto.ContractGetInfoResponse.ContractInfo;t.ContractInfo=It;var At=u.proto.ContractGetBytecodeQuery;t.ContractGetBytecodeQuery=At;var Tt=u.proto.ContractGetBytecodeResponse;t.ContractGetBytecodeResponse=Tt;var Ot=u.proto.ContractGetRecordsQuery;t.ContractGetRecordsQuery=Ot;var Pt=u.proto.ContractGetRecordsResponse;t.ContractGetRecordsResponse=Pt;var Et=u.proto.ContractStateChange;t.ContractStateChange=Et;var St=u.proto.StorageChange;t.StorageChange=St;var Rt=u.proto.TransactionRecord;t.TransactionRecord=Rt;var Dt=u.proto.TransactionReceipt;t.TransactionReceipt=Dt;var Ct=u.proto.ExchangeRate;t.ExchangeRate=Ct;var Nt=u.proto.ExchangeRateSet;t.ExchangeRateSet=Nt;var Bt=u.proto.CryptoGetAccountBalanceQuery;t.CryptoGetAccountBalanceQuery=Bt;var Mt=u.proto.CryptoGetAccountBalanceResponse;t.CryptoGetAccountBalanceResponse=Mt;var jt=u.proto.CryptoGetAccountRecordsQuery;t.CryptoGetAccountRecordsQuery=jt;var xt=u.proto.CryptoGetAccountRecordsResponse;t.CryptoGetAccountRecordsResponse=xt;var Ft=u.proto.CryptoGetInfoQuery;t.CryptoGetInfoQuery=Ft;var Ut=u.proto.CryptoGetInfoResponse;t.CryptoGetInfoResponse=Ut;var Lt=u.proto.CryptoGetInfoResponse.AccountInfo;t.AccountInfo=Lt;var Gt=u.proto.CryptoAllowance;t.CryptoAllowance=Gt;var Kt=u.proto.TokenAllowance;t.TokenAllowance=Kt;var zt=u.proto.NftAllowance;t.NftAllowance=zt;var Qt=u.proto.GrantedCryptoAllowance;t.GrantedCryptoAllowance=Qt;var Ht=u.proto.GrantedTokenAllowance;t.GrantedTokenAllowance=Ht;var Vt=u.proto.GrantedNftAllowance;t.GrantedNftAllowance=Vt;var Wt=u.proto.CryptoGetLiveHashQuery;t.CryptoGetLiveHashQuery=Wt;var qt=u.proto.CryptoGetLiveHashResponse;t.CryptoGetLiveHashResponse=qt;var Yt=u.proto.CryptoGetStakersQuery;t.CryptoGetStakersQuery=Yt;var Zt=u.proto.ProxyStaker;t.ProxyStaker=Zt;var Jt=u.proto.AllProxyStakers;t.AllProxyStakers=Jt;var Xt=u.proto.CryptoGetStakersResponse;t.CryptoGetStakersResponse=Xt;var $t=u.proto.FileGetContentsQuery;t.FileGetContentsQuery=$t;var en=u.proto.FileGetContentsResponse;t.FileGetContentsResponse=en;var tn=u.proto.FileGetContentsResponse.FileContents;t.FileContents=tn;var nn=u.proto.FileGetInfoQuery;t.FileGetInfoQuery=nn;var rn=u.proto.FileGetInfoResponse;t.FileGetInfoResponse=rn;var on=u.proto.FileGetInfoResponse.FileInfo;t.FileInfo=on;var an=u.proto.TransactionGetReceiptQuery;t.TransactionGetReceiptQuery=an;var un=u.proto.TransactionGetReceiptResponse;t.TransactionGetReceiptResponse=un;var cn=u.proto.TransactionGetRecordQuery;t.TransactionGetRecordQuery=cn;var sn=u.proto.TransactionGetRecordResponse;t.TransactionGetRecordResponse=sn;var ln=u.proto.TransactionGetFastRecordQuery;t.TransactionGetFastRecordQuery=ln;var fn=u.proto.TransactionGetFastRecordResponse;t.TransactionGetFastRecordResponse=fn;var dn=u.proto.NetworkGetVersionInfoQuery;t.NetworkGetVersionInfoQuery=dn;var pn=u.proto.NetworkGetVersionInfoResponse;t.NetworkGetVersionInfoResponse=pn;var hn=u.proto.TokenGetInfoQuery;t.TokenGetInfoQuery=hn;var yn=u.proto.TokenInfo;t.TokenInfo=yn;var mn=u.proto.TokenGetInfoResponse;t.TokenGetInfoResponse=mn;var bn=u.proto.ScheduleGetInfoQuery;t.ScheduleGetInfoQuery=bn;var vn=u.proto.ScheduleInfo;t.ScheduleInfo=vn;var kn=u.proto.ScheduleGetInfoResponse;t.ScheduleGetInfoResponse=kn;var gn=u.proto.TokenGetAccountNftInfosQuery;t.TokenGetAccountNftInfosQuery=gn;var _n=u.proto.TokenGetAccountNftInfosResponse;t.TokenGetAccountNftInfosResponse=_n;var wn=u.proto.NftID;t.NftID=wn;var In=u.proto.TokenGetNftInfoQuery;t.TokenGetNftInfoQuery=In;var An=u.proto.TokenNftInfo;t.TokenNftInfo=An;var Tn=u.proto.TokenGetNftInfoResponse;t.TokenGetNftInfoResponse=Tn;var On=u.proto.TokenGetNftInfosQuery;t.TokenGetNftInfosQuery=On;var Pn=u.proto.TokenGetNftInfosResponse;t.TokenGetNftInfosResponse=Pn;var En=u.proto.Response;t.Response=En;var Sn=u.proto.CryptoService;t.CryptoService=Sn;var Rn=u.proto.FileService;t.FileService=Rn;var Dn=u.proto.FreezeService;t.FreezeService=Dn;var Cn=u.proto.ConsensusTopicQuery;t.ConsensusTopicQuery=Cn;var Nn=u.proto.ConsensusTopicResponse;t.ConsensusTopicResponse=Nn;var Bn=u.proto.MirrorConsensusService;t.MirrorConsensusService=Bn;var Mn=u.proto.NetworkService;t.NetworkService=Mn;var jn=u.proto.ScheduleService;t.ScheduleService=jn;var xn=u.proto.SmartContractService;t.SmartContractService=xn;var Fn=u.proto.ThrottleGroup;t.ThrottleGroup=Fn;var Un=u.proto.ThrottleBucket;t.ThrottleBucket=Un;var Ln=u.proto.ThrottleDefinitions;t.ThrottleDefinitions=Ln;var Gn=u.proto.TokenService;t.TokenService=Gn;var Kn=u.proto.SignedTransaction;t.SignedTransaction=Kn;var zn=u.proto.TransactionList;t.TransactionList=zn;var Qn=u.proto.DoubleValue;t.DoubleValue=Qn;var Hn=u.proto.FloatValue;t.FloatValue=Hn;var Vn=u.proto.UInt64Value;t.UInt64Value=Vn;var Wn=u.proto.UInt32Value;t.UInt32Value=Wn;var qn=u.proto.BoolValue;t.BoolValue=qn;var Yn=u.proto.StringValue;t.StringValue=Yn;var Zn=u.proto.BytesValue;t.BytesValue=Zn;var Jn=u.proto.TokenPauseTransactionBody;t.TokenPauseTransactionBody=Jn;var Xn=u.proto.TokenUnpauseTransactionBody;t.TokenUnpauseTransactionBody=Xn;var $n=u.proto.TokenPauseStatus;t.TokenPauseStatus=$n;var er=u.proto.FreezeType;t.FreezeType=er;var tr=u.proto.AddressBookQuery;t.AddressBookQuery=tr;var nr=u.proto.MirrorNetworkService;t.MirrorNetworkService=nr},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GrantedTokenAllowance=t.GrantedNftAllowance=t.GrantedCryptoAllowance=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GrantedTokenAllowance=t.GrantedNftAllowance=t.GrantedCryptoAllowance=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0,t.Writer=t.UncheckedSubmitBody=t.UInt64Value=t.UInt32Value=t.TransferList=t.TransactionResponse=t.TransactionRecord=t.TransactionReceipt=t.TransactionList=t.TransactionID=t.TransactionGetRecordResponse=t.TransactionGetRecordQuery=t.TransactionGetReceiptResponse=t.TransactionGetReceiptQuery=t.TransactionGetFastRecordResponse=t.TransactionGetFastRecordQuery=t.TransactionFeeSchedule=t.TransactionBody=t.Transaction=t.TopicID=t.TokenWipeAccountTransactionBody=t.TokenUpdateTransactionBody=t.TokenUnpauseTransactionBody=t.TokenUnitBalance=t.TokenUnfreezeAccountTransactionBody=t.TokenType=t.TokenTransferList=t.TokenSupplyType=t.TokenService=t.TokenRevokeKycTransactionBody=t.TokenRelationship=t.TokenPauseTransactionBody=t.TokenPauseStatus=t.TokenNftInfo=t.TokenMintTransactionBody=t.TokenKycStatus=t.TokenInfo=t.TokenID=t.TokenGrantKycTransactionBody=t.TokenGetNftInfosResponse=t.TokenGetNftInfosQuery=t.TokenGetNftInfoResponse=t.TokenGetNftInfoQuery=t.TokenGetInfoResponse=t.TokenGetInfoQuery=t.TokenGetAccountNftInfosResponse=t.TokenGetAccountNftInfosQuery=t.TokenFreezeStatus=t.TokenFreezeAccountTransactionBody=t.TokenFeeScheduleUpdateTransactionBody=t.TokenDissociateTransactionBody=t.TokenDeleteTransactionBody=t.TokenCreateTransactionBody=t.TokenBurnTransactionBody=t.TokenBalances=t.TokenBalance=t.TokenAssociateTransactionBody=t.TokenAllowance=t.TimestampSeconds=t.Timestamp=t.ThrottleGroup=t.ThrottleDefinitions=t.ThrottleBucket=t.ThresholdSignature=t.ThresholdKey=t.SystemUndeleteTransactionBody=t.SystemDeleteTransactionBody=t.SubType=t.StringValue=t.StorageChange=t.SmartContractService=t.SingleAccountBalances=t.SignedTransaction=t.SignaturePair=t.SignatureMap=t.SignatureList=t.Signature=t.ShardID=t.Setting=t.ServicesConfigurationList=t.ServiceEndpoint=t.SemanticVersion=t.ScheduleSignTransactionBody=t.ScheduleService=t.ScheduleInfo=t.ScheduleID=t.ScheduleGetInfoResponse=t.ScheduleGetInfoQuery=t.ScheduleDeleteTransactionBody=t.ScheduleCreateTransactionBody=t.SchedulableTransactionBody=t.RoyaltyFee=t.ResponseType=t.ResponseHeader=t.ResponseCodeEnum=t.Response=t.RealmID=t.Reader=t.QueryHeader=t.Query=t.ProxyStaker=t.NodeAddressBook=t.NodeAddress=t.NftTransfer=t.NftID=t.NftAllowance=t.NetworkService=t.NetworkGetVersionInfoResponse=t.NetworkGetVersionInfoQuery=t.MirrorNetworkService=t.MirrorConsensusService=t.LiveHash=t.KeyList=t.Key=t.HederaFunctionality=t.GrantedTokenAllowance=t.GrantedNftAllowance=t.GrantedCryptoAllowance=t.GetBySolidityIDResponse=t.GetBySolidityIDQuery=t.GetByKeyResponse=t.GetByKeyQuery=t.FreezeType=t.FreezeTransactionBody=t.FreezeService=t.FractionalFee=t.Fraction=t.FloatValue=t.FixedFee=t.FileUpdateTransactionBody=t.FileService=t.FileInfo=t.FileID=t.FileGetInfoResponse=t.FileGetInfoQuery=t.FileGetContentsResponse=t.FileGetContentsQuery=t.FileDeleteTransactionBody=t.FileCreateTransactionBody=t.FileContents=t.FileAppendTransactionBody=t.FeeSchedule=t.FeeData=t.FeeComponents=t.ExchangeRateSet=t.ExchangeRate=t.EntityID=t.Duration=t.DoubleValue=t.CustomFee=t.CurrentAndNextFeeSchedule=t.CryptoUpdateTransactionBody=t.CryptoTransferTransactionBody=t.CryptoService=t.CryptoGetStakersResponse=t.CryptoGetStakersQuery=t.CryptoGetLiveHashResponse=t.CryptoGetLiveHashQuery=t.CryptoGetInfoResponse=t.CryptoGetInfoQuery=t.CryptoGetAccountRecordsResponse=t.CryptoGetAccountRecordsQuery=t.CryptoGetAccountBalanceResponse=t.CryptoGetAccountBalanceQuery=t.CryptoDeleteTransactionBody=t.CryptoDeleteLiveHashTransactionBody=t.CryptoCreateTransactionBody=t.CryptoApproveAllowanceTransactionBody=t.CryptoAllowance=t.CryptoAdjustAllowanceTransactionBody=t.CryptoAddLiveHashTransactionBody=t.ContractUpdateTransactionBody=t.ContractStateChange=t.ContractLoginfo=t.ContractInfo=t.ContractID=t.ContractGetRecordsResponse=t.ContractGetRecordsQuery=t.ContractGetInfoResponse=t.ContractGetInfoQuery=t.ContractGetBytecodeResponse=t.ContractGetBytecodeQuery=t.ContractFunctionResult=t.ContractDeleteTransactionBody=t.ContractCreateTransactionBody=t.ContractCallTransactionBody=t.ContractCallLocalResponse=t.ContractCallLocalQuery=t.ConsensusUpdateTopicTransactionBody=t.ConsensusTopicResponse=t.ConsensusTopicQuery=t.ConsensusTopicInfo=t.ConsensusSubmitMessageTransactionBody=t.ConsensusService=t.ConsensusMessageChunkInfo=t.ConsensusGetTopicInfoResponse=t.ConsensusGetTopicInfoQuery=t.ConsensusDeleteTopicTransactionBody=t.ConsensusCreateTopicTransactionBody=t.BytesValue=t.BoolValue=t.AssessedCustomFee=t.AllProxyStakers=t.AllAccountBalances=t.AddressBookQuery=t.AccountInfo=t.AccountID=t.AccountAmount=void 0;var a,i=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(661)),u=n(1367),c=r(n(19));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}null==(a=i.util).Long&&(console.log("Patching Protobuf Long.js instance..."),a.Long=c.default,null!=i.Reader._configure&&i.Reader._configure(i.BufferReader));var l=i.Reader;t.Reader=l;var f=i.Writer;t.Writer=f;var d=u.proto.TokenUnitBalance;t.TokenUnitBalance=d;var p=u.proto.SingleAccountBalances;t.SingleAccountBalances=p;var h=u.proto.AllAccountBalances;t.AllAccountBalances=h;var y=u.proto.ShardID;t.ShardID=y;var m=u.proto.RealmID;t.RealmID=m;var b=u.proto.AccountID;t.AccountID=b;var v=u.proto.FileID;t.FileID=v;var k=u.proto.ContractID;t.ContractID=k;var g=u.proto.TransactionID;t.TransactionID=g;var _=u.proto.AccountAmount;t.AccountAmount=_;var w=u.proto.TransferList;t.TransferList=w;var I=u.proto.NftTransfer;t.NftTransfer=I;var A=u.proto.TokenTransferList;t.TokenTransferList=A;var T=u.proto.Fraction;t.Fraction=T;var O=u.proto.TopicID;t.TopicID=O;var P=u.proto.TokenID;t.TokenID=P;var E=u.proto.ScheduleID;t.ScheduleID=E;var S=u.proto.TokenType;t.TokenType=S;var R=u.proto.SubType;t.SubType=R;var D=u.proto.TokenSupplyType;t.TokenSupplyType=D;var C=u.proto.TokenFreezeStatus;t.TokenFreezeStatus=C;var N=u.proto.TokenKycStatus;t.TokenKycStatus=N;var B=u.proto.Key;t.Key=B;var M=u.proto.ThresholdKey;t.ThresholdKey=M;var j=u.proto.KeyList;t.KeyList=j;var x=u.proto.Signature;t.Signature=x;var F=u.proto.ThresholdSignature;t.ThresholdSignature=F;var U=u.proto.SignatureList;t.SignatureList=U;var L=u.proto.SignaturePair;t.SignaturePair=L;var G=u.proto.SignatureMap;t.SignatureMap=G;var K=u.proto.HederaFunctionality;t.HederaFunctionality=K;var z=u.proto.FeeComponents;t.FeeComponents=z;var Q=u.proto.TransactionFeeSchedule;t.TransactionFeeSchedule=Q;var H=u.proto.FeeData;t.FeeData=H;var V=u.proto.FeeSchedule;t.FeeSchedule=V;var W=u.proto.CurrentAndNextFeeSchedule;t.CurrentAndNextFeeSchedule=W;var q=u.proto.ServiceEndpoint;t.ServiceEndpoint=q;var Y=u.proto.NodeAddress;t.NodeAddress=Y;var Z=u.proto.NodeAddressBook;t.NodeAddressBook=Z;var J=u.proto.SemanticVersion;t.SemanticVersion=J;var X=u.proto.Setting;t.Setting=X;var $=u.proto.ServicesConfigurationList;t.ServicesConfigurationList=$;var ee=u.proto.TokenRelationship;t.TokenRelationship=ee;var te=u.proto.TokenBalance;t.TokenBalance=te;var ne=u.proto.TokenBalances;t.TokenBalances=ne;var re=u.proto.Timestamp;t.Timestamp=re;var oe=u.proto.TimestampSeconds;t.TimestampSeconds=oe;var ae=u.proto.ConsensusCreateTopicTransactionBody;t.ConsensusCreateTopicTransactionBody=ae;var ie=u.proto.Duration;t.Duration=ie;var ue=u.proto.ConsensusDeleteTopicTransactionBody;t.ConsensusDeleteTopicTransactionBody=ue;var ce=u.proto.ConsensusGetTopicInfoQuery;t.ConsensusGetTopicInfoQuery=ce;var se=u.proto.ConsensusGetTopicInfoResponse;t.ConsensusGetTopicInfoResponse=se;var le=u.proto.ResponseType;t.ResponseType=le;var fe=u.proto.QueryHeader;t.QueryHeader=fe;var de=u.proto.Transaction;t.Transaction=de;var pe=u.proto.TransactionBody;t.TransactionBody=pe;var he=u.proto.SystemDeleteTransactionBody;t.SystemDeleteTransactionBody=he;var ye=u.proto.SystemUndeleteTransactionBody;t.SystemUndeleteTransactionBody=ye;var me=u.proto.FreezeTransactionBody;t.FreezeTransactionBody=me;var be=u.proto.ContractCallTransactionBody;t.ContractCallTransactionBody=be;var ve=u.proto.ContractCreateTransactionBody;t.ContractCreateTransactionBody=ve;var ke=u.proto.ContractUpdateTransactionBody;t.ContractUpdateTransactionBody=ke;var ge=u.proto.LiveHash;t.LiveHash=ge;var _e=u.proto.CryptoAddLiveHashTransactionBody;t.CryptoAddLiveHashTransactionBody=_e;var we=u.proto.CryptoCreateTransactionBody;t.CryptoCreateTransactionBody=we;var Ie=u.proto.CryptoDeleteTransactionBody;t.CryptoDeleteTransactionBody=Ie;var Ae=u.proto.CryptoDeleteLiveHashTransactionBody;t.CryptoDeleteLiveHashTransactionBody=Ae;var Te=u.proto.CryptoTransferTransactionBody;t.CryptoTransferTransactionBody=Te;var Oe=u.proto.CryptoUpdateTransactionBody;t.CryptoUpdateTransactionBody=Oe;var Pe=u.proto.CryptoApproveAllowanceTransactionBody;t.CryptoApproveAllowanceTransactionBody=Pe;var Ee=u.proto.CryptoAdjustAllowanceTransactionBody;t.CryptoAdjustAllowanceTransactionBody=Ee;var Se=u.proto.FileAppendTransactionBody;t.FileAppendTransactionBody=Se;var Re=u.proto.FileCreateTransactionBody;t.FileCreateTransactionBody=Re;var De=u.proto.FileDeleteTransactionBody;t.FileDeleteTransactionBody=De;var Ce=u.proto.FileUpdateTransactionBody;t.FileUpdateTransactionBody=Ce;var Ne=u.proto.ContractDeleteTransactionBody;t.ContractDeleteTransactionBody=Ne;var Be=u.proto.ConsensusUpdateTopicTransactionBody;t.ConsensusUpdateTopicTransactionBody=Be;var Me=u.proto.ConsensusMessageChunkInfo;t.ConsensusMessageChunkInfo=Me;var je=u.proto.ConsensusSubmitMessageTransactionBody;t.ConsensusSubmitMessageTransactionBody=je;var xe=u.proto.UncheckedSubmitBody;t.UncheckedSubmitBody=xe;var Fe=u.proto.TokenCreateTransactionBody;t.TokenCreateTransactionBody=Fe;var Ue=u.proto.FractionalFee;t.FractionalFee=Ue;var Le=u.proto.FixedFee;t.FixedFee=Le;var Ge=u.proto.CustomFee;t.CustomFee=Ge;var Ke=u.proto.AssessedCustomFee;t.AssessedCustomFee=Ke;var ze=u.proto.RoyaltyFee;t.RoyaltyFee=ze;var Qe=u.proto.TokenFreezeAccountTransactionBody;t.TokenFreezeAccountTransactionBody=Qe;var He=u.proto.TokenUnfreezeAccountTransactionBody;t.TokenUnfreezeAccountTransactionBody=He;var Ve=u.proto.TokenGrantKycTransactionBody;t.TokenGrantKycTransactionBody=Ve;var We=u.proto.TokenRevokeKycTransactionBody;t.TokenRevokeKycTransactionBody=We;var qe=u.proto.TokenDeleteTransactionBody;t.TokenDeleteTransactionBody=qe;var Ye=u.proto.TokenUpdateTransactionBody;t.TokenUpdateTransactionBody=Ye;var Ze=u.proto.TokenMintTransactionBody;t.TokenMintTransactionBody=Ze;var Je=u.proto.TokenBurnTransactionBody;t.TokenBurnTransactionBody=Je;var Xe=u.proto.TokenWipeAccountTransactionBody;t.TokenWipeAccountTransactionBody=Xe;var $e=u.proto.TokenAssociateTransactionBody;t.TokenAssociateTransactionBody=$e;var et=u.proto.TokenDissociateTransactionBody;t.TokenDissociateTransactionBody=et;var tt=u.proto.TokenFeeScheduleUpdateTransactionBody;t.TokenFeeScheduleUpdateTransactionBody=tt;var nt=u.proto.ScheduleCreateTransactionBody;t.ScheduleCreateTransactionBody=nt;var rt=u.proto.SchedulableTransactionBody;t.SchedulableTransactionBody=rt;var ot=u.proto.ScheduleDeleteTransactionBody;t.ScheduleDeleteTransactionBody=ot;var at=u.proto.ScheduleSignTransactionBody;t.ScheduleSignTransactionBody=at;var it=u.proto.ResponseHeader;t.ResponseHeader=it;var ut=u.proto.TransactionResponse;t.TransactionResponse=ut;var ct=u.proto.ResponseCodeEnum;t.ResponseCodeEnum=ct;var st=u.proto.ConsensusTopicInfo;t.ConsensusTopicInfo=st;var lt=u.proto.ConsensusService;t.ConsensusService=lt;var ft=u.proto.Query;t.Query=ft;var dt=u.proto.GetByKeyQuery;t.GetByKeyQuery=dt;var pt=u.proto.EntityID;t.EntityID=pt;var ht=u.proto.GetByKeyResponse;t.GetByKeyResponse=ht;var yt=u.proto.GetBySolidityIDQuery;t.GetBySolidityIDQuery=yt;var mt=u.proto.GetBySolidityIDResponse;t.GetBySolidityIDResponse=mt;var bt=u.proto.ContractLoginfo;t.ContractLoginfo=bt;var vt=u.proto.ContractFunctionResult;t.ContractFunctionResult=vt;var kt=u.proto.ContractCallLocalQuery;t.ContractCallLocalQuery=kt;var gt=u.proto.ContractCallLocalResponse;t.ContractCallLocalResponse=gt;var _t=u.proto.ContractGetInfoQuery;t.ContractGetInfoQuery=_t;var wt=u.proto.ContractGetInfoResponse;t.ContractGetInfoResponse=wt;var It=u.proto.ContractGetInfoResponse.ContractInfo;t.ContractInfo=It;var At=u.proto.ContractGetBytecodeQuery;t.ContractGetBytecodeQuery=At;var Tt=u.proto.ContractGetBytecodeResponse;t.ContractGetBytecodeResponse=Tt;var Ot=u.proto.ContractGetRecordsQuery;t.ContractGetRecordsQuery=Ot;var Pt=u.proto.ContractGetRecordsResponse;t.ContractGetRecordsResponse=Pt;var Et=u.proto.ContractStateChange;t.ContractStateChange=Et;var St=u.proto.StorageChange;t.StorageChange=St;var Rt=u.proto.TransactionRecord;t.TransactionRecord=Rt;var Dt=u.proto.TransactionReceipt;t.TransactionReceipt=Dt;var Ct=u.proto.ExchangeRate;t.ExchangeRate=Ct;var Nt=u.proto.ExchangeRateSet;t.ExchangeRateSet=Nt;var Bt=u.proto.CryptoGetAccountBalanceQuery;t.CryptoGetAccountBalanceQuery=Bt;var Mt=u.proto.CryptoGetAccountBalanceResponse;t.CryptoGetAccountBalanceResponse=Mt;var jt=u.proto.CryptoGetAccountRecordsQuery;t.CryptoGetAccountRecordsQuery=jt;var xt=u.proto.CryptoGetAccountRecordsResponse;t.CryptoGetAccountRecordsResponse=xt;var Ft=u.proto.CryptoGetInfoQuery;t.CryptoGetInfoQuery=Ft;var Ut=u.proto.CryptoGetInfoResponse;t.CryptoGetInfoResponse=Ut;var Lt=u.proto.CryptoGetInfoResponse.AccountInfo;t.AccountInfo=Lt;var Gt=u.proto.CryptoAllowance;t.CryptoAllowance=Gt;var Kt=u.proto.TokenAllowance;t.TokenAllowance=Kt;var zt=u.proto.NftAllowance;t.NftAllowance=zt;var Qt=u.proto.GrantedCryptoAllowance;t.GrantedCryptoAllowance=Qt;var Ht=u.proto.GrantedTokenAllowance;t.GrantedTokenAllowance=Ht;var Vt=u.proto.GrantedNftAllowance;t.GrantedNftAllowance=Vt;var Wt=u.proto.CryptoGetLiveHashQuery;t.CryptoGetLiveHashQuery=Wt;var qt=u.proto.CryptoGetLiveHashResponse;t.CryptoGetLiveHashResponse=qt;var Yt=u.proto.CryptoGetStakersQuery;t.CryptoGetStakersQuery=Yt;var Zt=u.proto.ProxyStaker;t.ProxyStaker=Zt;var Jt=u.proto.AllProxyStakers;t.AllProxyStakers=Jt;var Xt=u.proto.CryptoGetStakersResponse;t.CryptoGetStakersResponse=Xt;var $t=u.proto.FileGetContentsQuery;t.FileGetContentsQuery=$t;var en=u.proto.FileGetContentsResponse;t.FileGetContentsResponse=en;var tn=u.proto.FileGetContentsResponse.FileContents;t.FileContents=tn;var nn=u.proto.FileGetInfoQuery;t.FileGetInfoQuery=nn;var rn=u.proto.FileGetInfoResponse;t.FileGetInfoResponse=rn;var on=u.proto.FileGetInfoResponse.FileInfo;t.FileInfo=on;var an=u.proto.TransactionGetReceiptQuery;t.TransactionGetReceiptQuery=an;var un=u.proto.TransactionGetReceiptResponse;t.TransactionGetReceiptResponse=un;var cn=u.proto.TransactionGetRecordQuery;t.TransactionGetRecordQuery=cn;var sn=u.proto.TransactionGetRecordResponse;t.TransactionGetRecordResponse=sn;var ln=u.proto.TransactionGetFastRecordQuery;t.TransactionGetFastRecordQuery=ln;var fn=u.proto.TransactionGetFastRecordResponse;t.TransactionGetFastRecordResponse=fn;var dn=u.proto.NetworkGetVersionInfoQuery;t.NetworkGetVersionInfoQuery=dn;var pn=u.proto.NetworkGetVersionInfoResponse;t.NetworkGetVersionInfoResponse=pn;var hn=u.proto.TokenGetInfoQuery;t.TokenGetInfoQuery=hn;var yn=u.proto.TokenInfo;t.TokenInfo=yn;var mn=u.proto.TokenGetInfoResponse;t.TokenGetInfoResponse=mn;var bn=u.proto.ScheduleGetInfoQuery;t.ScheduleGetInfoQuery=bn;var vn=u.proto.ScheduleInfo;t.ScheduleInfo=vn;var kn=u.proto.ScheduleGetInfoResponse;t.ScheduleGetInfoResponse=kn;var gn=u.proto.TokenGetAccountNftInfosQuery;t.TokenGetAccountNftInfosQuery=gn;var _n=u.proto.TokenGetAccountNftInfosResponse;t.TokenGetAccountNftInfosResponse=_n;var wn=u.proto.NftID;t.NftID=wn;var In=u.proto.TokenGetNftInfoQuery;t.TokenGetNftInfoQuery=In;var An=u.proto.TokenNftInfo;t.TokenNftInfo=An;var Tn=u.proto.TokenGetNftInfoResponse;t.TokenGetNftInfoResponse=Tn;var On=u.proto.TokenGetNftInfosQuery;t.TokenGetNftInfosQuery=On;var Pn=u.proto.TokenGetNftInfosResponse;t.TokenGetNftInfosResponse=Pn;var En=u.proto.Response;t.Response=En;var Sn=u.proto.CryptoService;t.CryptoService=Sn;var Rn=u.proto.FileService;t.FileService=Rn;var Dn=u.proto.FreezeService;t.FreezeService=Dn;var Cn=u.proto.ConsensusTopicQuery;t.ConsensusTopicQuery=Cn;var Nn=u.proto.ConsensusTopicResponse;t.ConsensusTopicResponse=Nn;var Bn=u.proto.MirrorConsensusService;t.MirrorConsensusService=Bn;var Mn=u.proto.NetworkService;t.NetworkService=Mn;var jn=u.proto.ScheduleService;t.ScheduleService=jn;var xn=u.proto.SmartContractService;t.SmartContractService=xn;var Fn=u.proto.ThrottleGroup;t.ThrottleGroup=Fn;var Un=u.proto.ThrottleBucket;t.ThrottleBucket=Un;var Ln=u.proto.ThrottleDefinitions;t.ThrottleDefinitions=Ln;var Gn=u.proto.TokenService;t.TokenService=Gn;var Kn=u.proto.SignedTransaction;t.SignedTransaction=Kn;var zn=u.proto.TransactionList;t.TransactionList=zn;var Qn=u.proto.DoubleValue;t.DoubleValue=Qn;var Hn=u.proto.FloatValue;t.FloatValue=Hn;var Vn=u.proto.UInt64Value;t.UInt64Value=Vn;var Wn=u.proto.UInt32Value;t.UInt32Value=Wn;var qn=u.proto.BoolValue;t.BoolValue=qn;var Yn=u.proto.StringValue;t.StringValue=Yn;var Zn=u.proto.BytesValue;t.BytesValue=Zn;var Jn=u.proto.TokenPauseTransactionBody;t.TokenPauseTransactionBody=Jn;var Xn=u.proto.TokenUnpauseTransactionBody;t.TokenUnpauseTransactionBody=Xn;var $n=u.proto.TokenPauseStatus;t.TokenPauseStatus=$n;var er=u.proto.FreezeType;t.FreezeType=er;var tr=u.proto.AddressBookQuery;t.AddressBookQuery=tr;var nr=u.proto.MirrorNetworkService;t.MirrorNetworkService=nr},function(e,t,n){"use strict";var r,o=n(0)(n(3));r=function(){return this}();try{r=r||new Function("return this")()}catch(e){"object"===("undefined"==typeof window?"undefined":(0,o.default)(window))&&(r=window)}e.exports=r},function(e,t,n){"use strict";var r=n(715),o=n(716),a=n(378),i=n(717);e.exports=function(e){return r(e)||o(e)||a(e)||i()},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(4),o=n(289),a=n(718),i=n(71);function u(t){var n="function"==typeof Map?new Map:void 0;return e.exports=u=function(e){if(null===e||!a(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==n){if(n.has(e))return n.get(e);n.set(e,t)}function t(){return i(e,arguments,r(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),o(t,e)},e.exports.default=e.exports,e.exports.__esModule=!0,u(t)}e.exports=u,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(116)),u=function(){function e(){(0,o.default)(this,e)}return(0,a.default)(e,[{key:"_toProtobufKey",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobufKey",value:function(e){if(null!=e.contractID){if(null==i.default.contractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.contractId(e.contractID)}if(null!=e.delegatableContractId){if(null==i.default.delegateContractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.delegateContractId(e.delegatableContractId)}if(null!=e.ed25519&&e.ed25519.byteLength>0){if(null==i.default.publicKeyED25519)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyED25519(e.ed25519)}if(null!=e.ECDSASecp256k1&&e.ECDSASecp256k1.byteLength>0){if(null==i.default.publicKeyECDSA)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyECDSA(e.ECDSASecp256k1)}if(null!=e.thresholdKey&&null!=e.thresholdKey.threshold){if(null==i.default.thresholdKey)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.thresholdKey(e.thresholdKey)}if(null!=e.keyList){if(null==i.default.keyList)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.keyList(e.keyList)}throw new Error("(BUG) keyFromProtobuf: not implemented key case: ".concat(JSON.stringify(e)))}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(3)),a=r(n(1)),i=r(n(2)),u=r(n(20)),c=u.default.fromNumber(1e9),s=function(){function e(t,n){(0,a.default)(this,e),this.seconds=t instanceof u.default?t:u.default.fromNumber(t),this.nanos=n instanceof u.default?n:u.default.fromNumber(n),Object.freeze(this)}return(0,i.default)(e,[{key:"toDate",value:function(){return new Date(1e3*this.seconds.toInt()+Math.floor(this.nanos.toInt()/1e6))}},{key:"plusNanos",value:function(t){var n=this.nanos.add(t);return new e(this.seconds.add(n.div(c)),n.mod(c))}},{key:"_toProtobuf",value:function(){return{seconds:this.seconds,nanos:this.nanos.toInt()}}},{key:"toString",value:function(){return"".concat(this.seconds.toString(),".").concat(this.nanos.toString())}},{key:"compare",value:function(e){var t=this.seconds.compare(e.seconds);return 0!=t?t:this.nanos.compare(e.nanos)}}],[{key:"generate",value:function(){var t=Math.floor(5e3*Math.random())+8e3,n=Date.now()-t;return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3)+Math.floor(1e6*Math.random()))}},{key:"fromDate",value:function(t){var n;if("number"==typeof t)n=t;else if("string"==typeof t)n=Date.parse(t);else{if(!(t instanceof Date))throw new TypeError("invalid type '".concat((0,o.default)(t),"' for 'data', expected 'Date'"));n=t.getTime()}return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3))}},{key:"_fromProtobuf",value:function(t){return new e(t.seconds instanceof u.default?t.seconds.toInt():null!=t.seconds?t.seconds:0,null!=t.nanos?t.nanos:0)}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(123)),u=function(){function e(){(0,o.default)(this,e)}return(0,a.default)(e,[{key:"_toProtobufKey",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobufKey",value:function(e){if(null!=e.contractID){if(null==i.default.contractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.contractId(e.contractID)}if(null!=e.delegatableContractId){if(null==i.default.delegateContractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.delegateContractId(e.delegatableContractId)}if(null!=e.ed25519&&e.ed25519.byteLength>0){if(null==i.default.publicKeyED25519)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyED25519(e.ed25519)}if(null!=e.ECDSASecp256k1&&e.ECDSASecp256k1.byteLength>0){if(null==i.default.publicKeyECDSA)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyECDSA(e.ECDSASecp256k1)}if(null!=e.thresholdKey&&null!=e.thresholdKey.threshold){if(null==i.default.thresholdKey)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.thresholdKey(e.thresholdKey)}if(null!=e.keyList){if(null==i.default.keyList)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.keyList(e.keyList)}throw new Error("(BUG) keyFromProtobuf: not implemented key case: ".concat(JSON.stringify(e)))}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(3)),a=r(n(1)),i=r(n(2)),u=r(n(21)),c=u.default.fromNumber(1e9),s=function(){function e(t,n){(0,a.default)(this,e),this.seconds=t instanceof u.default?t:u.default.fromNumber(t),this.nanos=n instanceof u.default?n:u.default.fromNumber(n),Object.freeze(this)}return(0,i.default)(e,[{key:"toDate",value:function(){return new Date(1e3*this.seconds.toInt()+Math.floor(this.nanos.toInt()/1e6))}},{key:"plusNanos",value:function(t){var n=this.nanos.add(t);return new e(this.seconds.add(n.div(c)),n.mod(c))}},{key:"_toProtobuf",value:function(){return{seconds:this.seconds,nanos:this.nanos.toInt()}}},{key:"toString",value:function(){return"".concat(this.seconds.toString(),".").concat(this.nanos.toString())}},{key:"compare",value:function(e){var t=this.seconds.compare(e.seconds);return 0!=t?t:this.nanos.compare(e.nanos)}}],[{key:"generate",value:function(){var t=Math.floor(5e3*Math.random())+8e3,n=Date.now()-t;return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3)+Math.floor(1e6*Math.random()))}},{key:"fromDate",value:function(t){var n;if("number"==typeof t)n=t;else if("string"==typeof t)n=Date.parse(t);else{if(!(t instanceof Date))throw new TypeError("invalid type '".concat((0,o.default)(t),"' for 'data', expected 'Date'"));n=t.getTime()}return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3))}},{key:"_fromProtobuf",value:function(t){return new e(t.seconds instanceof u.default?t.seconds.toInt():null!=t.seconds?t.seconds:0,null!=t.nanos?t.nanos:0)}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(126)),u=function(){function e(){(0,o.default)(this,e)}return(0,a.default)(e,[{key:"_toProtobufKey",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobufKey",value:function(e){if(null!=e.contractID){if(null==i.default.contractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.contractId(e.contractID)}if(null!=e.delegatableContractId){if(null==i.default.delegateContractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.delegateContractId(e.delegatableContractId)}if(null!=e.ed25519&&e.ed25519.byteLength>0){if(null==i.default.publicKeyED25519)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyED25519(e.ed25519)}if(null!=e.ECDSASecp256k1&&e.ECDSASecp256k1.byteLength>0){if(null==i.default.publicKeyECDSA)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyECDSA(e.ECDSASecp256k1)}if(null!=e.thresholdKey&&null!=e.thresholdKey.threshold){if(null==i.default.thresholdKey)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.thresholdKey(e.thresholdKey)}if(null!=e.keyList){if(null==i.default.keyList)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.keyList(e.keyList)}throw new Error("(BUG) keyFromProtobuf: not implemented key case: ".concat(JSON.stringify(e)))}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(3)),a=r(n(1)),i=r(n(2)),u=r(n(18)),c=u.default.fromNumber(1e9),s=function(){function e(t,n){(0,a.default)(this,e),this.seconds=t instanceof u.default?t:u.default.fromNumber(t),this.nanos=n instanceof u.default?n:u.default.fromNumber(n),Object.freeze(this)}return(0,i.default)(e,[{key:"toDate",value:function(){return new Date(1e3*this.seconds.toInt()+Math.floor(this.nanos.toInt()/1e6))}},{key:"plusNanos",value:function(t){var n=this.nanos.add(t);return new e(this.seconds.add(n.div(c)),n.mod(c))}},{key:"_toProtobuf",value:function(){return{seconds:this.seconds,nanos:this.nanos.toInt()}}},{key:"toString",value:function(){return"".concat(this.seconds.toString(),".").concat(this.nanos.toString())}},{key:"compare",value:function(e){var t=this.seconds.compare(e.seconds);return 0!=t?t:this.nanos.compare(e.nanos)}}],[{key:"generate",value:function(){var t=Math.floor(5e3*Math.random())+8e3,n=Date.now()-t;return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3)+Math.floor(1e6*Math.random()))}},{key:"fromDate",value:function(t){var n;if("number"==typeof t)n=u.default.fromNumber(t);else if("string"==typeof t)n=u.default.fromNumber(Date.parse(t)).mul(1e6);else{if(!(t instanceof Date))throw new TypeError("invalid type '".concat((0,o.default)(t),"' for 'data', expected 'Date'"));n=u.default.fromNumber(t.getTime()).mul(1e6)}return new e(0,0).plusNanos(n)}},{key:"_fromProtobuf",value:function(t){return new e(t.seconds instanceof u.default?t.seconds.toInt():null!=t.seconds?t.seconds:0,null!=t.nanos?t.nanos:0)}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(131)),u=function(){function e(){(0,o.default)(this,e)}return(0,a.default)(e,[{key:"_toProtobufKey",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobufKey",value:function(e){if(null!=e.contractID){if(null==i.default.contractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.contractId(e.contractID)}if(null!=e.delegatableContractId){if(null==i.default.delegateContractId)throw new Error("`ContractId` was not loaded before decoding `Key`");return i.default.delegateContractId(e.delegatableContractId)}if(null!=e.ed25519&&e.ed25519.byteLength>0){if(null==i.default.publicKeyED25519)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyED25519(e.ed25519)}if(null!=e.ECDSASecp256k1&&e.ECDSASecp256k1.byteLength>0){if(null==i.default.publicKeyECDSA)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.publicKeyECDSA(e.ECDSASecp256k1)}if(null!=e.thresholdKey&&null!=e.thresholdKey.threshold){if(null==i.default.thresholdKey)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.thresholdKey(e.thresholdKey)}if(null!=e.keyList){if(null==i.default.keyList)throw new Error("`PublicKey` was not loaded before decoding `Key`");return i.default.keyList(e.keyList)}throw new Error("(BUG) keyFromProtobuf: not implemented key case: ".concat(JSON.stringify(e)))}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(3)),a=r(n(1)),i=r(n(2)),u=r(n(19)),c=u.default.fromNumber(1e9),s=function(){function e(t,n){(0,a.default)(this,e),this.seconds=t instanceof u.default?t:u.default.fromNumber(t),this.nanos=n instanceof u.default?n:u.default.fromNumber(n),Object.freeze(this)}return(0,i.default)(e,[{key:"toDate",value:function(){return new Date(1e3*this.seconds.toInt()+Math.floor(this.nanos.toInt()/1e6))}},{key:"plusNanos",value:function(t){var n=this.nanos.add(t);return new e(this.seconds.add(n.div(c)),n.mod(c))}},{key:"_toProtobuf",value:function(){return{seconds:this.seconds,nanos:this.nanos.toInt()}}},{key:"toString",value:function(){return"".concat(this.seconds.toString(),".").concat(this.nanos.toString())}},{key:"compare",value:function(e){var t=this.seconds.compare(e.seconds);return 0!=t?t:this.nanos.compare(e.nanos)}}],[{key:"generate",value:function(){var t=Math.floor(5e3*Math.random())+8e3,n=Date.now()-t;return new e(Math.floor(n/1e3),1e6*Math.floor(n%1e3)+Math.floor(1e6*Math.random()))}},{key:"fromDate",value:function(t){var n;if("number"==typeof t)n=u.default.fromNumber(t);else if("string"==typeof t)n=u.default.fromNumber(Date.parse(t)).mul(1e6);else{if(!(t instanceof Date))throw new TypeError("invalid type '".concat((0,o.default)(t),"' for 'data', expected 'Date'"));n=u.default.fromNumber(t.getTime()).mul(1e6)}return new e(0,0).plusNanos(n)}},{key:"_fromProtobuf",value:function(t){return new e(t.seconds instanceof u.default?t.seconds.toInt():null!=t.seconds?t.seconds:0,null!=t.nanos?t.nanos:0)}}]),e}();t.default=s},function(e,t,n){"use strict";"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.QUERY_REGISTRY=t.COST_QUERY=void 0,t._makePaymentTransaction=S,t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(117)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(137)),y=r(n(11)),m=r(n(33)),b=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(139)),v=r(n(75)),k=n(36),g=r(n(198)),_=r(n(770)),w=r(n(20));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return T(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return T(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function T(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)){e.next=2;break}return e.abrupt("return");case 2:if(t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),this._nodeAccountIds.isEmpty&&this._nodeAccountIds.setList(t._network.getNodeAccountIdsForExecute()),n=t._operator,null!=this._paymentTransactionId){e.next=15;break}if(!this._isPaymentRequired()){e.next=14;break}if(null==n){e.next=11;break}this._paymentTransactionId=v.default.generate(n.accountId),e.next=12;break;case 11:throw new Error("`client` must have an `operator` or an explicit payment transaction must be provided");case 12:e.next=15;break;case 14:this._paymentTransactionId=v.default.generate(new y.default(0));case 15:if(r=null!=this._queryPayment?this._queryPayment:t.maxQueryPayment,0===this._paymentTransactions.length&&this._isPaymentRequired()){e.next=20;break}r=new m.default(0),e.next=27;break;case 20:if(null!=this._queryPayment){e.next=27;break}return e.next=23,this.getCost(t);case 23:if(o=e.sent,!(r.toTinybars().toInt()0&&(e={responseType:k.ResponseType.ANSWER_ONLY,payment:this._paymentTransactions[this._nextNodeAccountIdIndex]}),e}},{key:"_onMakeRequest",value:function(e){throw new Error("not implemented")}},{key:"_makeRequest",value:function(){var e={};return this._isPaymentRequired()&&null!=this._paymentTransactions&&(e={payment:this._paymentTransactions[this._nextNodeAccountIdIndex],responseType:k.ResponseType.ANSWER_ONLY}),this._onMakeRequest(e)}},{key:"_makeRequestAsync",value:function(){return Promise.resolve(this._makeRequest())}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode;switch(h.default._fromCode(null!=n?n:k.ResponseCodeEnum.OK)){case h.default.Busy:case h.default.Unknown:case h.default.PlatformTransactionNotCreated:return b.ExecutionState.Retry;case h.default.Ok:return b.ExecutionState.Finished;default:return b.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:k.ResponseCodeEnum.OK);return new g.default({status:r,transactionId:this._getTransactionId()})}},{key:"_getNodeAccountId",value:function(){if(this._nodeAccountIds.isEmpty)throw new Error("(BUG) nodeAccountIds were not set for query before executing");return this._nodeAccountIds.list[this._nextNodeAccountIdIndex]}},{key:"_advanceRequest",value:function(){this._isPaymentRequired()&&this._paymentTransactions.length>0?(0,l.default)((0,p.default)(r.prototype),"_nextNodeAccountIdIndex",(this._nextNodeAccountIdIndex+1)%this._paymentTransactions.length,this,!0):(0,s.default)((0,p.default)(r.prototype),"_advanceRequest",this).call(this)}}],[{key:"fromBytes",value:function(e){var t=k.Query.decode(e);if(null==t.query)throw new Error("(BUG) query.query was not set in the protobuf");var n=P.get(t.query);if(null==n)throw new Error("(BUG) Query.fromBytes() not implemented for type ".concat(t.query));return n(t)}}]),r}(b.default);function S(e,t,n,r){return R.apply(this,arguments)}function R(){return(R=(0,i.default)(a.default.mark((function e(t,n,r,o){var i,u,c,s;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=[],null!=r?(i.push({accountID:r.accountId._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})):(i.push({accountID:new y.default(0)._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})),u={transactionID:t._toProtobuf(),nodeAccountID:n._toProtobuf(),transactionFee:new m.default(1).toTinybars(),transactionValidDuration:{seconds:w.default.fromNumber(120)},cryptoTransfer:{transfers:{accountAmounts:i}}},c={bodyBytes:k.TransactionBody.encode(u).finish()},null==r){e.next=9;break}return e.next=7,r.transactionSigner(c.bodyBytes);case 7:s=e.sent,c.sigMap={sigPair:[r.publicKey._toProtobufSignature(s)]};case 9:return e.abrupt("return",{signedTransactionBytes:k.SignedTransaction.encode(c).finish()});case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}t.default=E;var D=[];t.COST_QUERY=D},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.QUERY_REGISTRY=t.COST_QUERY=void 0,t._makePaymentTransaction=S,t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(117)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(148)),y=r(n(12)),m=r(n(35)),b=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(150)),v=r(n(79)),k=n(37),g=r(n(204)),_=r(n(992)),w=r(n(21));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return T(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return T(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function T(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)){e.next=2;break}return e.abrupt("return");case 2:if(t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),this._nodeAccountIds.isEmpty&&this._nodeAccountIds.setList(t._network.getNodeAccountIdsForExecute()),n=t._operator,null!=this._paymentTransactionId){e.next=15;break}if(!this._isPaymentRequired()){e.next=14;break}if(null==n){e.next=11;break}this._paymentTransactionId=v.default.generate(n.accountId),e.next=12;break;case 11:throw new Error("`client` must have an `operator` or an explicit payment transaction must be provided");case 12:e.next=15;break;case 14:this._paymentTransactionId=v.default.generate(new y.default(0));case 15:if(r=null!=this._queryPayment?this._queryPayment:t.maxQueryPayment,0===this._paymentTransactions.length&&this._isPaymentRequired()){e.next=20;break}r=new m.default(0),e.next=27;break;case 20:if(null!=this._queryPayment){e.next=27;break}return e.next=23,this.getCost(t);case 23:if(o=e.sent,!(r.toTinybars().toInt()0&&(e={responseType:k.ResponseType.ANSWER_ONLY,payment:this._paymentTransactions[this._nextNodeAccountIdIndex]}),e}},{key:"_onMakeRequest",value:function(e){throw new Error("not implemented")}},{key:"_makeRequest",value:function(){var e={};return this._isPaymentRequired()&&null!=this._paymentTransactions&&(e={payment:this._paymentTransactions[this._nextNodeAccountIdIndex],responseType:k.ResponseType.ANSWER_ONLY}),this._onMakeRequest(e)}},{key:"_makeRequestAsync",value:function(){return Promise.resolve(this._makeRequest())}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode;switch(h.default._fromCode(null!=n?n:k.ResponseCodeEnum.OK)){case h.default.Busy:case h.default.Unknown:case h.default.PlatformTransactionNotCreated:return b.ExecutionState.Retry;case h.default.Ok:return b.ExecutionState.Finished;default:return b.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:k.ResponseCodeEnum.OK);return new g.default({status:r,transactionId:this._getTransactionId()})}},{key:"_getNodeAccountId",value:function(){if(this._nodeAccountIds.isEmpty)throw new Error("(BUG) nodeAccountIds were not set for query before executing");return this._nodeAccountIds.list[this._nextNodeAccountIdIndex]}},{key:"_advanceRequest",value:function(){this._isPaymentRequired()&&this._paymentTransactions.length>0?(0,l.default)((0,p.default)(r.prototype),"_nextNodeAccountIdIndex",(this._nextNodeAccountIdIndex+1)%this._paymentTransactions.length,this,!0):(0,s.default)((0,p.default)(r.prototype),"_advanceRequest",this).call(this)}}],[{key:"fromBytes",value:function(e){var t=k.Query.decode(e);if(null==t.query)throw new Error("(BUG) query.query was not set in the protobuf");var n=P.get(t.query);if(null==n)throw new Error("(BUG) Query.fromBytes() not implemented for type ".concat(t.query));return n(t)}}]),r}(b.default);function S(e,t,n,r){return R.apply(this,arguments)}function R(){return(R=(0,i.default)(a.default.mark((function e(t,n,r,o){var i,u,c,s;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=[],null!=r?(i.push({accountID:r.accountId._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})):(i.push({accountID:new y.default(0)._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})),u={transactionID:t._toProtobuf(),nodeAccountID:n._toProtobuf(),transactionFee:new m.default(1).toTinybars(),transactionValidDuration:{seconds:w.default.fromNumber(120)},cryptoTransfer:{transfers:{accountAmounts:i}}},c={bodyBytes:k.TransactionBody.encode(u).finish()},null==r){e.next=9;break}return e.next=7,r.transactionSigner(c.bodyBytes);case 7:s=e.sent,c.sigMap={sigPair:[r.publicKey._toProtobufSignature(s)]};case 9:return e.abrupt("return",{signedTransactionBytes:k.SignedTransaction.encode(c).finish()});case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}t.default=E;var D=[];t.COST_QUERY=D},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.QUERY_REGISTRY=t.COST_QUERY=void 0,t._makePaymentTransaction=R,t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(117)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(156)),y=r(n(13)),m=r(n(31)),b=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(128)),v=r(n(82)),k=n(38),g=r(n(212)),_=r(n(1225)),w=r(n(18)),I=r(n(189));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)){e.next=2;break}return e.abrupt("return");case 2:if(t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),this._nodeAccountIds.isEmpty&&this._nodeAccountIds.setList(t._network.getNodeAccountIdsForExecute()),n=null!=this._operator?this._operator:t._operator,null!=this._paymentTransactionId){e.next=15;break}if(!this._isPaymentRequired()){e.next=14;break}if(null==n){e.next=11;break}this._paymentTransactionId=v.default.generate(n.accountId),e.next=12;break;case 11:throw new Error("`client` must have an `operator` or an explicit payment transaction must be provided");case 12:e.next=15;break;case 14:this._paymentTransactionId=v.default.generate(new y.default(0));case 15:if(r=null!=this._queryPayment?this._queryPayment:t.maxQueryPayment,0===this._paymentTransactions.length&&this._isPaymentRequired()){e.next=20;break}r=new m.default(0),e.next=27;break;case 20:if(null!=this._queryPayment){e.next=27;break}return e.next=23,this.getCost(t);case 23:if(o=e.sent,!(r.toTinybars().toInt()0&&(e={responseType:k.ResponseType.ANSWER_ONLY,payment:this._paymentTransactions[this._nextNodeAccountIdIndex]}),e}},{key:"_onMakeRequest",value:function(e){throw new Error("not implemented")}},{key:"_makeRequest",value:function(){var e={};return this._isPaymentRequired()&&null!=this._paymentTransactions&&(e={payment:this._paymentTransactions[this._nextNodeAccountIdIndex],responseType:k.ResponseType.ANSWER_ONLY}),this._onMakeRequest(e)}},{key:"_makeRequestAsync",value:function(){return Promise.resolve(this._makeRequest())}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:k.ResponseCodeEnum.OK);switch(I.default.debug("[".concat(this._getLogId(),"] received status ").concat(r.toString())),r){case h.default.Busy:case h.default.Unknown:case h.default.PlatformTransactionNotCreated:return b.ExecutionState.Retry;case h.default.Ok:return b.ExecutionState.Finished;default:return b.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:k.ResponseCodeEnum.OK);return new g.default({status:r,transactionId:this._getTransactionId()})}},{key:"_getNodeAccountId",value:function(){if(this._nodeAccountIds.isEmpty)throw new Error("(BUG) nodeAccountIds were not set for query before executing");return this._nodeAccountIds.list[this._nextNodeAccountIdIndex]}},{key:"_advanceRequest",value:function(){this._isPaymentRequired()&&this._paymentTransactions.length>0?(0,l.default)((0,p.default)(r.prototype),"_nextNodeAccountIdIndex",(this._nextNodeAccountIdIndex+1)%this._paymentTransactions.length,this,!0):(0,s.default)((0,p.default)(r.prototype),"_advanceRequest",this).call(this)}}],[{key:"fromBytes",value:function(e){var t=k.Query.decode(e);if(null==t.query)throw new Error("(BUG) query.query was not set in the protobuf");var n=E.get(t.query);if(null==n)throw new Error("(BUG) Query.fromBytes() not implemented for type ".concat(t.query));return n(t)}}]),r}(b.default);function R(e,t,n,r){return D.apply(this,arguments)}function D(){return(D=(0,i.default)(a.default.mark((function e(t,n,r,o){var i,u,c,s;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=[],null!=r?(i.push({accountID:r.accountId._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})):(i.push({accountID:new y.default(0)._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})),u={transactionID:t._toProtobuf(),nodeAccountID:n._toProtobuf(),transactionFee:new m.default(1).toTinybars(),transactionValidDuration:{seconds:w.default.fromNumber(120)},cryptoTransfer:{transfers:{accountAmounts:i}}},c={bodyBytes:k.TransactionBody.encode(u).finish()},null==r){e.next=9;break}return e.next=7,r.transactionSigner(c.bodyBytes);case 7:s=e.sent,c.sigMap={sigPair:[r.publicKey._toProtobufSignature(s)]};case 9:return e.abrupt("return",{signedTransactionBytes:k.SignedTransaction.encode(c).finish()});case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}t.default=S;var C=[];t.COST_QUERY=C},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.QUERY_REGISTRY=t.COST_QUERY=void 0,t._makePaymentTransaction=R,t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(117)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(162)),y=r(n(14)),m=r(n(32)),b=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(133)),v=r(n(85)),k=n(39),g=r(n(221)),_=r(n(1369)),w=r(n(19)),I=r(n(193));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)){e.next=2;break}return e.abrupt("return");case 2:if(t.isAutoValidateChecksumsEnabled()&&this._validateChecksums(t),this._nodeAccountIds.isEmpty&&this._nodeAccountIds.setList(t._network.getNodeAccountIdsForExecute()),n=null!=this._operator?this._operator:t._operator,null!=this._paymentTransactionId){e.next=15;break}if(!this._isPaymentRequired()){e.next=14;break}if(null==n){e.next=11;break}this._paymentTransactionId=v.default.generate(n.accountId),e.next=12;break;case 11:throw new Error("`client` must have an `operator` or an explicit payment transaction must be provided");case 12:e.next=15;break;case 14:this._paymentTransactionId=v.default.generate(new y.default(0));case 15:if(r=null!=this._queryPayment?this._queryPayment:t.maxQueryPayment,0===this._paymentTransactions.length&&this._isPaymentRequired()){e.next=20;break}r=new m.default(0),e.next=27;break;case 20:if(null!=this._queryPayment){e.next=27;break}return e.next=23,this.getCost(t);case 23:if(o=e.sent,!(r.toTinybars().toInt()0&&(e={responseType:k.ResponseType.ANSWER_ONLY,payment:this._paymentTransactions[this._nextNodeAccountIdIndex]}),e}},{key:"_onMakeRequest",value:function(e){throw new Error("not implemented")}},{key:"_makeRequest",value:function(){var e={};return this._isPaymentRequired()&&null!=this._paymentTransactions&&(e={payment:this._paymentTransactions[this._nextNodeAccountIdIndex],responseType:k.ResponseType.ANSWER_ONLY}),this._onMakeRequest(e)}},{key:"_makeRequestAsync",value:function(){return Promise.resolve(this._makeRequest())}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:k.ResponseCodeEnum.OK);switch(I.default.debug("[".concat(this._getLogId(),"] received status ").concat(r.toString())),r){case h.default.Busy:case h.default.Unknown:case h.default.PlatformTransactionNotCreated:return b.ExecutionState.Retry;case h.default.Ok:return b.ExecutionState.Finished;default:return b.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:k.ResponseCodeEnum.OK);return new g.default({status:r,transactionId:this._getTransactionId()})}},{key:"_getNodeAccountId",value:function(){if(this._nodeAccountIds.isEmpty)throw new Error("(BUG) nodeAccountIds were not set for query before executing");return this._nodeAccountIds.list[this._nextNodeAccountIdIndex]}},{key:"_advanceRequest",value:function(){this._isPaymentRequired()&&this._paymentTransactions.length>0?(0,l.default)((0,p.default)(r.prototype),"_nextNodeAccountIdIndex",(this._nextNodeAccountIdIndex+1)%this._paymentTransactions.length,this,!0):(0,s.default)((0,p.default)(r.prototype),"_advanceRequest",this).call(this)}}],[{key:"fromBytes",value:function(e){var t=k.Query.decode(e);if(null==t.query)throw new Error("(BUG) query.query was not set in the protobuf");var n=E.get(t.query);if(null==n)throw new Error("(BUG) Query.fromBytes() not implemented for type ".concat(t.query));return n(t)}}]),r}(b.default);function R(e,t,n,r){return D.apply(this,arguments)}function D(){return(D=(0,i.default)(a.default.mark((function e(t,n,r,o){var i,u,c,s;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=[],null!=r?(i.push({accountID:r.accountId._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})):(i.push({accountID:new y.default(0)._toProtobuf(),amount:o.negated().toTinybars()}),i.push({accountID:n._toProtobuf(),amount:o.toTinybars()})),u={transactionID:t._toProtobuf(),nodeAccountID:n._toProtobuf(),transactionFee:new m.default(1).toTinybars(),transactionValidDuration:{seconds:w.default.fromNumber(120)},cryptoTransfer:{transfers:{accountAmounts:i}}},c={bodyBytes:k.TransactionBody.encode(u).finish()},null==r){e.next=9;break}return e.next=7,r.transactionSigner(c.bodyBytes);case 7:s=e.sent,c.sigMap={sigPair:[r.publicKey._toProtobufSignature(s)]};case 9:return e.abrupt("return",{signedTransactionBytes:k.SignedTransaction.encode(c).finish()});case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}t.default=S;var C=[];t.COST_QUERY=C},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayify=f,t.concat=d,t.hexConcat=function(e){var t="0x";return e.forEach((function(e){t+=y(e).substring(2)})),t},t.hexDataLength=function(e){if("string"!=typeof e)e=y(e);else if(!h(e)||e.length%2)return null;return(e.length-2)/2},t.hexDataSlice=function(e,t,n){"string"!=typeof e?e=y(e):(!h(e)||e.length%2)&&a.throwArgumentError("invalid hexData","value",e);if(t=2+2*t,null!=n)return"0x"+e.substring(t,2+2*n);return"0x"+e.substring(t)},t.hexStripZeros=m,t.hexValue=function(e){var t=m(y(e,{hexPad:"left"}));if("0x"===t)return"0x0";return t},t.hexZeroPad=b,t.hexlify=y,t.isBytes=l,t.isBytesLike=c,t.isHexString=h,t.joinSignature=function(e){return y(d([(e=v(e)).r,e.s,e.recoveryParam?"0x1c":"0x1b"]))},t.splitSignature=v,t.stripZeros=function(e){var t=f(e);if(0===t.length)return t;var n=0;for(;n=256)return!1}return!0}function f(e,t){if(t||(t={}),"number"==typeof e){a.checkSafeUint53(e,"invalid arrayify value");for(var n=[];e;)n.unshift(255&e),e=parseInt(String(e/256));return 0===n.length&&n.push(0),u(new Uint8Array(n))}if(t.allowMissingPrefix&&"string"==typeof e&&"0x"!==e.substring(0,2)&&(e="0x"+e),i(e)&&(e=e.toHexString()),h(e)){var r=e.substring(2);r.length%2&&("left"===t.hexPad?r="0x0"+r.substring(2):"right"===t.hexPad?r+="0":a.throwArgumentError("hex data is odd-length","value",e));for(var o=[],c=0;ct&&a.throwArgumentError("value out of range","value",arguments[0]);var n=new Uint8Array(t);return n.set(e,t-e.length),u(n)}function h(e,t){return!("string"!=typeof e||!e.match(/^0x[0-9A-Fa-f]*$/))&&(!t||e.length===2+2*t)}function y(e,t){if(t||(t={}),"number"==typeof e){a.checkSafeUint53(e,"invalid hexlify value");for(var n="";e;)n="0123456789abcdef"[15&e]+n,e=Math.floor(e/16);return n.length?(n.length%2&&(n="0"+n),"0x"+n):"0x00"}if("bigint"==typeof e)return(e=e.toString(16)).length%2?"0x0"+e:"0x"+e;if(t.allowMissingPrefix&&"string"==typeof e&&"0x"!==e.substring(0,2)&&(e="0x"+e),i(e))return e.toHexString();if(h(e))return e.length%2&&("left"===t.hexPad?e="0x0"+e.substring(2):"right"===t.hexPad?e+="0":a.throwArgumentError("hex data is odd-length","value",e)),e.toLowerCase();if(l(e)){for(var r="0x",o=0;o>4]+"0123456789abcdef"[15&u]}return r}return a.throwArgumentError("invalid hexlify value","value",e)}function m(e){"string"!=typeof e&&(e=y(e)),h(e)||a.throwArgumentError("invalid hex string","value",e),e=e.substring(2);for(var t=0;t2*t+2&&a.throwArgumentError("value out of range","value",arguments[1]);e.length<2*t+2;)e="0x0"+e.substring(2);return e}function v(e){var t={r:"0x",s:"0x",_vs:"0x",recoveryParam:0,v:0};if(c(e)){var n=f(e);65!==n.length&&a.throwArgumentError("invalid signature string; must be 65 bytes","signature",e),t.r=y(n.slice(0,32)),t.s=y(n.slice(32,64)),t.v=n[64],t.v<27&&(0===t.v||1===t.v?t.v+=27:a.throwArgumentError("signature invalid v byte","signature",e)),t.recoveryParam=1-t.v%2,t.recoveryParam&&(n[32]|=128),t._vs=y(n.slice(32,64))}else{if(t.r=e.r,t.s=e.s,t.v=e.v,t.recoveryParam=e.recoveryParam,t._vs=e._vs,null!=t._vs){var r=p(f(t._vs),32);t._vs=y(r);var o=r[0]>=128?1:0;null==t.recoveryParam?t.recoveryParam=o:t.recoveryParam!==o&&a.throwArgumentError("signature recoveryParam mismatch _vs","signature",e),r[0]&=127;var i=y(r);null==t.s?t.s=i:t.s!==i&&a.throwArgumentError("signature v mismatch _vs","signature",e)}if(null==t.recoveryParam)null==t.v?a.throwArgumentError("signature missing v and recoveryParam","signature",e):0===t.v||1===t.v?t.recoveryParam=t.v:t.recoveryParam=1-t.v%2;else if(null==t.v)t.v=27+t.recoveryParam;else{var u=0===t.v||1===t.v?t.v:1-t.v%2;t.recoveryParam!==u&&a.throwArgumentError("signature recoveryParam mismatch v","signature",e)}null!=t.r&&h(t.r)?t.r=b(t.r,32):a.throwArgumentError("signature missing or invalid r","signature",e),null!=t.s&&h(t.s)?t.s=b(t.s,32):a.throwArgumentError("signature missing or invalid s","signature",e);var s=f(t.s);s[0]>=128&&a.throwArgumentError("signature s out of range","signature",e),t.recoveryParam&&(s[0]|=128);var l=y(s);t._vs&&(h(t._vs)||a.throwArgumentError("signature invalid _vs","signature",e),t._vs=b(t._vs,32)),null==t._vs?t._vs=l:t._vs!==l&&a.throwArgumentError("signature _vs mismatch v and s","signature",e)}return t}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=v(n(168)),d=r(n(43)),p=v(n(36)),h=r(n(116)),y=v(n(74)),m=r(n(20));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var g=function(e){(0,c.default)(n,e);var t=k(n);function n(e,r,o,a){var u;(0,i.default)(this,n),u=t.call(this);var c=f.constructor(e,r,o);return u.shard=c.shard,u.realm=c.realm,u.num=c.num,u.evmAddress=null!=a?a:null,u._checksum=null,u}return(0,u.default)(n,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return null!=this.evmAddress?y.encode(this.evmAddress):f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{contractNum:this.num,shardNum:this.shard,realmNum:this.realm,evmAddress:this.evmAddress}}},{key:"toString",value:function(){return null!=this.evmAddress?"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(y.encode(this.evmAddress)):"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return f.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return p.ContractID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e.evmAddress=this.evmAddress,e}},{key:"compare",value:function(e){return f.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}},{key:"_toProtobufKey",value:function(){return{contractID:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,y.decode(r))}},{key:"fromString",value:function(e){var t=f.fromStringSplitter(e);if(Number.isNaN(t.shard)||Number.isNaN(t.realm))throw new Error("invalid format for entity ID");var r=null!=t.shard?m.default.fromString(t.shard):m.default.ZERO,o=null!=t.realm?m.default.fromString(t.realm):m.default.ZERO,i=t.numOrHex.length<40?[m.default.fromString(t.numOrHex),void 0]:[m.default.ZERO,y.decode(t.numOrHex)],u=(0,a.default)(i,2);return new n(r,o,u[0],u[1])}},{key:"_fromProtobuf",value:function(e){return new n(null!=e.shardNum?e.shardNum:0,null!=e.realmNum?e.realmNum:0,null!=e.contractNum?e.contractNum:0)}},{key:"fromBytes",value:function(e){return n._fromProtobuf(p.ContractID.decode(e))}},{key:"fromSolidityAddress",value:function(e){console.warn("Deprecated: use `ContractId.fromEvmAdress()` instead");var t=f.fromSolidityAddress(e),r=(0,a.default)(t,3);return new n(r[0],r[1],r[2])}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(d.default);t.default=g,h.default.contractId=function(e){return g.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.Logger=t.LogLevel=t.ErrorCode=void 0;var o=r(n(1)),a=r(n(2)),i=n(925),u=!1,c=!1,s={debug:1,default:2,info:2,warning:3,error:4,off:5},l=s.default,f=null;var d,p,h=function(){try{var e=[];if(["NFD","NFC","NFKD","NFKC"].forEach((function(t){try{if("test"!=="test".normalize(t))throw new Error("bad normalize")}catch(n){e.push(t)}})),e.length)throw new Error("missing "+e.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(e){return e.message}return null}();t.LogLevel=d,function(e){e.DEBUG="DEBUG",e.INFO="INFO",e.WARNING="WARNING",e.ERROR="ERROR",e.OFF="OFF"}(d||(t.LogLevel=d={})),t.ErrorCode=p,function(e){e.UNKNOWN_ERROR="UNKNOWN_ERROR",e.NOT_IMPLEMENTED="NOT_IMPLEMENTED",e.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",e.NETWORK_ERROR="NETWORK_ERROR",e.SERVER_ERROR="SERVER_ERROR",e.TIMEOUT="TIMEOUT",e.BUFFER_OVERRUN="BUFFER_OVERRUN",e.NUMERIC_FAULT="NUMERIC_FAULT",e.MISSING_NEW="MISSING_NEW",e.INVALID_ARGUMENT="INVALID_ARGUMENT",e.MISSING_ARGUMENT="MISSING_ARGUMENT",e.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",e.CALL_EXCEPTION="CALL_EXCEPTION",e.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",e.NONCE_EXPIRED="NONCE_EXPIRED",e.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",e.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT",e.TRANSACTION_REPLACED="TRANSACTION_REPLACED"}(p||(t.ErrorCode=p={}));var y="0123456789abcdef",m=function(){function e(t){(0,o.default)(this,e),Object.defineProperty(this,"version",{enumerable:!0,value:t,writable:!1})}return(0,a.default)(e,[{key:"_log",value:function(e,t){var n=e.toLowerCase();null==s[n]&&this.throwArgumentError("invalid log level name","logLevel",e),l>s[n]||console.log.apply(console,t)}},{key:"debug",value:function(){for(var t=arguments.length,n=new Array(t),r=0;r>4],n+=y[15&t[a]];o.push(e+"=Uint8Array(0x"+n+")")}else o.push(e+"="+JSON.stringify(t))}catch(t){o.push(e+"="+JSON.stringify(r[e].toString()))}})),o.push("code=".concat(n)),o.push("version=".concat(this.version));var a=t;o.length&&(t+=" ("+o.join(", ")+")");var i=new Error(t);return i.reason=a,i.code=n,Object.keys(r).forEach((function(e){i[e]=r[e]})),i}},{key:"throwError",value:function(e,t,n){throw this.makeError(e,t,n)}},{key:"throwArgumentError",value:function(t,n,r){return this.throwError(t,e.errors.INVALID_ARGUMENT,{argument:n,value:r})}},{key:"assert",value:function(e,t,n,r){e||this.throwError(t,n,r)}},{key:"assertArgument",value:function(e,t,n,r){e||this.throwArgumentError(t,n,r)}},{key:"checkNormalize",value:function(t){null==t&&(t="platform missing String.prototype.normalize"),h&&this.throwError("platform missing String.prototype.normalize",e.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:h})}},{key:"checkSafeUint53",value:function(t,n){"number"==typeof t&&(null==n&&(n="value not safe"),(t<0||t>=9007199254740991)&&this.throwError(n,e.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:t}),t%1&&this.throwError(n,e.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:t}))}},{key:"checkArgumentCount",value:function(t,n,r){r=r?": "+r:"",tn&&this.throwError("too many arguments"+r,e.errors.UNEXPECTED_ARGUMENT,{count:t,expectedCount:n})}},{key:"checkNew",value:function(t,n){t!==Object&&null!=t||this.throwError("missing new",e.errors.MISSING_NEW,{name:n.name})}},{key:"checkAbstract",value:function(t,n){t===n?this.throwError("cannot instantiate abstract class "+JSON.stringify(n.name)+" directly; use a sub-class",e.errors.UNSUPPORTED_OPERATION,{name:t.name,operation:"new"}):t!==Object&&null!=t||this.throwError("missing new",e.errors.MISSING_NEW,{name:n.name})}}],[{key:"globalLogger",value:function(){return f||(f=new e(i.version)),f}},{key:"setCensorship",value:function(t,n){if(!t&&n&&this.globalLogger().throwError("cannot permanently disable censorship",e.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),u){if(!t)return;this.globalLogger().throwError("error censorship permanent",e.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}c=!!t,u=!!n}},{key:"setLogLevel",value:function(t){var n=s[t.toLowerCase()];null!=n?l=n:e.globalLogger().warn("invalid log level - "+t)}},{key:"from",value:function(t){return new e(t)}}]),e}();t.Logger=m,m.errors=p,m.levels=d},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=v(n(179)),d=r(n(45)),p=v(n(37)),h=r(n(123)),y=v(n(78)),m=r(n(21));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var g=function(e){(0,c.default)(n,e);var t=k(n);function n(e,r,o,a){var u;(0,i.default)(this,n),u=t.call(this);var c=f.constructor(e,r,o);return u.shard=c.shard,u.realm=c.realm,u.num=c.num,u.evmAddress=null!=a?a:null,u._checksum=null,u}return(0,u.default)(n,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return null!=this.evmAddress?y.encode(this.evmAddress):f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{contractNum:this.num,shardNum:this.shard,realmNum:this.realm,evmAddress:this.evmAddress}}},{key:"toString",value:function(){return null!=this.evmAddress?"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(y.encode(this.evmAddress)):"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return f.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return p.ContractID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e.evmAddress=this.evmAddress,e}},{key:"compare",value:function(e){return f.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}},{key:"_toProtobufKey",value:function(){return{contractID:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,y.decode(r))}},{key:"fromString",value:function(e){var t=f.fromStringSplitter(e);if(Number.isNaN(t.shard)||Number.isNaN(t.realm))throw new Error("invalid format for entity ID");var r=null!=t.shard?m.default.fromString(t.shard):m.default.ZERO,o=null!=t.realm?m.default.fromString(t.realm):m.default.ZERO,i=t.numOrHex.length<40?[m.default.fromString(t.numOrHex),void 0]:[m.default.ZERO,y.decode(t.numOrHex)],u=(0,a.default)(i,2);return new n(r,o,u[0],u[1])}},{key:"_fromProtobuf",value:function(e){return new n(null!=e.shardNum?e.shardNum:0,null!=e.realmNum?e.realmNum:0,null!=e.contractNum?e.contractNum:0)}},{key:"fromBytes",value:function(e){return n._fromProtobuf(p.ContractID.decode(e))}},{key:"fromSolidityAddress",value:function(e){console.warn("Deprecated: use `ContractId.fromEvmAdress()` instead");var t=f.fromSolidityAddress(e),r=(0,a.default)(t,3);return new n(r[0],r[1],r[2])}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(d.default);t.default=g,h.default.contractId=function(e){return g.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=v(n(188)),d=r(n(47)),p=v(n(38)),h=r(n(126)),y=v(n(81)),m=r(n(18));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var g=function(e){(0,c.default)(n,e);var t=k(n);function n(e,r,o,a){var u;(0,i.default)(this,n),u=t.call(this);var c=f.constructor(e,r,o);return u.shard=c.shard,u.realm=c.realm,u.num=c.num,u.evmAddress=null!=a?a:null,u._checksum=null,u}return(0,u.default)(n,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return null!=this.evmAddress?y.encode(this.evmAddress):f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{contractNum:this.num,shardNum:this.shard,realmNum:this.realm,evmAddress:this.evmAddress}}},{key:"toString",value:function(){return null!=this.evmAddress?"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(y.encode(this.evmAddress)):"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return f.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return p.ContractID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e.evmAddress=this.evmAddress,e}},{key:"compare",value:function(e){return f.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}},{key:"_toProtobufKey",value:function(){return{contractID:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,y.decode(r))}},{key:"fromString",value:function(e){var t=f.fromStringSplitter(e);if(Number.isNaN(t.shard)||Number.isNaN(t.realm))throw new Error("invalid format for entity ID");var r=null!=t.shard?m.default.fromString(t.shard):m.default.ZERO,o=null!=t.realm?m.default.fromString(t.realm):m.default.ZERO,i=t.numOrHex.length<40?[m.default.fromString(t.numOrHex),void 0]:[m.default.ZERO,y.decode(t.numOrHex)],u=(0,a.default)(i,2);return new n(r,o,u[0],u[1])}},{key:"_fromProtobuf",value:function(e){return new n(null!=e.shardNum?e.shardNum:0,null!=e.realmNum?e.realmNum:0,null!=e.contractNum?e.contractNum:0)}},{key:"fromBytes",value:function(e){return n._fromProtobuf(p.ContractID.decode(e))}},{key:"fromSolidityAddress",value:function(e){console.warn("Deprecated: use `ContractId.fromEvmAdress()` instead");var t=f.fromSolidityAddress(e),r=(0,a.default)(t,3);return new n(r[0],r[1],r[2])}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(d.default);t.default=g,h.default.contractId=function(e){return g.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=v(n(192)),d=r(n(49)),p=v(n(39)),h=r(n(131)),y=v(n(84)),m=r(n(19));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var g=function(e){(0,c.default)(n,e);var t=k(n);function n(e,r,o,a){var u;(0,i.default)(this,n),u=t.call(this);var c=f.constructor(e,r,o);return u.shard=c.shard,u.realm=c.realm,u.num=c.num,u.evmAddress=null!=a?a:null,u._checksum=null,u}return(0,u.default)(n,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){f.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return null!=this.evmAddress?y.encode(this.evmAddress):f.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{contractNum:this.num,shardNum:this.shard,realmNum:this.realm,evmAddress:this.evmAddress}}},{key:"toString",value:function(){return null!=this.evmAddress?"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(y.encode(this.evmAddress)):"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return f.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return p.ContractID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e.evmAddress=this.evmAddress,e}},{key:"compare",value:function(e){return f.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}},{key:"_toProtobufKey",value:function(){return{contractID:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,y.decode(r))}},{key:"fromString",value:function(e){var t=f.fromStringSplitter(e);if(Number.isNaN(t.shard)||Number.isNaN(t.realm))throw new Error("invalid format for entity ID");var r=null!=t.shard?m.default.fromString(t.shard):m.default.ZERO,o=null!=t.realm?m.default.fromString(t.realm):m.default.ZERO,i=t.numOrHex.length<40?[m.default.fromString(t.numOrHex),void 0]:[m.default.ZERO,y.decode(t.numOrHex)],u=(0,a.default)(i,2);return new n(r,o,u[0],u[1])}},{key:"_fromProtobuf",value:function(e){return new n(null!=e.shardNum?e.shardNum:0,null!=e.realmNum?e.realmNum:0,null!=e.contractNum?e.contractNum:0)}},{key:"fromBytes",value:function(e){return n._fromProtobuf(p.ContractID.decode(e))}},{key:"fromSolidityAddress",value:function(e){console.warn("Deprecated: use `ContractId.fromEvmAdress()` instead");var t=f.fromSolidityAddress(e),r=(0,a.default)(t,3);return new n(r[0],r[1],r[2])}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(d.default);t.default=g,h.default.contractId=function(e){return g.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=f(n(168)),s=f(n(36));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{fileNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.FileID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.fileNum?t.fileNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.FileID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(20)),u=function(){function e(t){(0,o.default)(this,e),this.seconds=t instanceof i.default?t:i.default.fromNumber(t),Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{seconds:this.seconds}}}],[{key:"_fromProtobuf",value:function(t){return new e(t.seconds)}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=f(n(179)),s=f(n(37));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{fileNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.FileID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.fileNum?t.fileNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.FileID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(21)),u=function(){function e(t){(0,o.default)(this,e),this.seconds=t instanceof i.default?t:i.default.fromNumber(t),Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{seconds:this.seconds}}}],[{key:"_fromProtobuf",value:function(t){return new e(t.seconds)}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=f(n(188)),s=f(n(38));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{fileNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.FileID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.fileNum?t.fileNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.FileID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(18)),u=function(){function e(t){(0,o.default)(this,e),this.seconds=t instanceof i.default?t:i.default.fromNumber(t),Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{seconds:this.seconds}}}],[{key:"_fromProtobuf",value:function(t){return new e(t.seconds)}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=f(n(192)),s=f(n(39));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{fileNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.FileID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.fileNum?t.fileNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.FileID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(19)),u=function(){function e(t){(0,o.default)(this,e),this.seconds=t instanceof i.default?t:i.default.fromNumber(t),Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{seconds:this.seconds}}}],[{key:"_fromProtobuf",value:function(t){return new e(t.seconds)}}]),e}();t.default=u},function(e,t,n){"use strict";e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(289),o=n(719);function a(t,n,i){return o()?(e.exports=a=Reflect.construct,e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=a=function(e,t,n){var o=[null];o.push.apply(o,t);var a=new(Function.bind.apply(e,o));return n&&r(a,n.prototype),a},e.exports.default=e.exports,e.exports.__esModule=!0),a.apply(null,arguments)}e.exports=a,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=t,o=n(10),a=n(73),i=n(387);r.assert=a,r.toArray=i.toArray,r.zero2=i.zero2,r.toHex=i.toHex,r.encode=i.encode,r.getNAF=function(e,t,n){var r=new Array(Math.max(e.bitLength(),n)+1);r.fill(0);for(var o=1<(o>>1)-1?(o>>1)-c:c,a.isubn(u)):u=0,r[i]=u,a.iushrn(1)}return r},r.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r,o=0,a=0;e.cmpn(-o)>0||t.cmpn(-a)>0;){var i,u,c=e.andln(3)+o&3,s=t.andln(3)+a&3;3===c&&(c=-1),3===s&&(s=-1),i=0==(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[0].push(i),u=0==(1&s)?0:3!==(r=t.andln(7)+a&7)&&5!==r||2!==c?s:-s,n[1].push(u),2*o===i+1&&(o=1-o),2*a===u+1&&(a=1-a),e.iushrn(1),t.iushrn(1)}return n},r.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new o(e,"hex","le")}},function(e,t,n){"use strict";function r(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=r,r.equal=function(e,t,n){if(e!=t)throw new Error(n||"Assertion failed: "+e+" != "+t)}},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=r(n(11)),s=r(n(44)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36)),f=r(n(20));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;(0,i.default)(this,e),this.accountId=t,this.validStart=n,this.scheduled=r,this.nonce=null,null!=o&&0!=o&&this.setNonce(o),Object.freeze(this)}return(0,u.default)(e,[{key:"setNonce",value:function(e){return this.nonce="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"setScheduled",value:function(e){return this.scheduled=e,this}},{key:"toString",value:function(){if(null!=this.accountId&&null!=this.validStart){var e=null!=this.nonce?"/".concat(this.nonce.toString()):"",t=this.scheduled?"?scheduled":"";return"".concat(this.accountId.toString(),"@").concat(this.validStart.seconds.toString(),".").concat(this.validStart.nanos.toString()).concat(t).concat(e)}throw new Error("neither `accountId` nor `validStart` are set")}},{key:"_toProtobuf",value:function(){return{accountID:null!=this.accountId?this.accountId._toProtobuf():null,transactionValidStart:null!=this.validStart?this.validStart._toProtobuf():null,scheduled:this.scheduled,nonce:null!=this.nonce?this.nonce.toInt():null}}},{key:"toBytes",value:function(){return l.TransactionID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){return new e(this.accountId,this.validStart,this.scheduled,this.nonce)}},{key:"compare",value:function(e){var t=this.accountId.compare(e.accountId);return 0!=t?t:this.validStart.compare(e.validStart)}}],[{key:"withValidStart",value:function(t,n){return new e(t,n,null)}},{key:"generate",value:function(t){return new e("string"==typeof t?c.default.fromString(t):new c.default(t),s.default.generate())}},{key:"fromString",value:function(t){var n,r,o,i,u,l,d=t.split("@"),p=(0,a.default)(d,2);n=p[0];var h=(l=p[1]).split("."),y=(0,a.default)(h,2);if(r=y[0],(l=y[1]).includes("?")){var m=l.split("?scheduled"),b=(0,a.default)(m,2);o=b[0],i=!0,u=(l=b[1]).includes("/")?l.replace("/",""):null}else if(l.includes("/")){var v=l.split("/"),k=(0,a.default)(v,2);o=k[0],u=k[1],i=!1}else o=l;return new e(c.default.fromString(n),new s.default(f.default.fromValue(r),f.default.fromValue(o)),i,null!=u?f.default.fromString(u):null)}},{key:"_fromProtobuf",value:function(t){if(null!=t.accountID&&null!=t.transactionValidStart)return new e(c.default._fromProtobuf(t.accountID),s.default._fromProtobuf(t.transactionValidStart),t.scheduled,t.nonce);throw new Error("Neither `nonce` or `accountID` and `transactionValidStart` are set")}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TransactionID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(26).Buffer,o=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===o||!o(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=s,t=4;break;case"utf8":this.fillLast=u,t=4;break;case"base64":this.text=l,this.end=f,t=3;break;default:return this.write=d,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function i(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function u(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function s(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function f(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.StringDecoder=a,a.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return o>0&&(e.lastNeed=o-1),o;if(--r=0)return o>0&&(e.lastNeed=o-2),o;if(--r=0)return o>0&&(2===o?o=0:e.lastNeed=o-3),o;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,n){"use strict";var r=t,o=n(10),a=n(146),i=n(483);r.assert=a,r.toArray=i.toArray,r.zero2=i.zero2,r.toHex=i.toHex,r.encode=i.encode,r.getNAF=function(e,t,n){var r=new Array(Math.max(e.bitLength(),n)+1);r.fill(0);for(var o=1<(o>>1)-1?(o>>1)-c:c,a.isubn(u)):u=0,r[i]=u,a.iushrn(1)}return r},r.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r,o=0,a=0;e.cmpn(-o)>0||t.cmpn(-a)>0;){var i,u,c=e.andln(3)+o&3,s=t.andln(3)+a&3;3===c&&(c=-1),3===s&&(s=-1),i=0==(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[0].push(i),u=0==(1&s)?0:3!==(r=t.andln(7)+a&7)&&5!==r||2!==c?s:-s,n[1].push(u),2*o===i+1&&(o=1-o),2*a===u+1&&(a=1-a),e.iushrn(1),t.iushrn(1)}return n},r.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new o(e,"hex","le")}},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=r(n(12)),s=r(n(46)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37)),f=r(n(21));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;(0,i.default)(this,e),this.accountId=t,this.validStart=n,this.scheduled=r,this.nonce=null,null!=o&&0!=o&&this.setNonce(o),Object.freeze(this)}return(0,u.default)(e,[{key:"setNonce",value:function(e){return this.nonce="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"setScheduled",value:function(e){return this.scheduled=e,this}},{key:"toString",value:function(){if(null!=this.accountId&&null!=this.validStart){var e=null!=this.nonce?"/".concat(this.nonce.toString()):"",t=this.scheduled?"?scheduled":"";return"".concat(this.accountId.toString(),"@").concat(this.validStart.seconds.toString(),".").concat(this.validStart.nanos.toString()).concat(t).concat(e)}throw new Error("neither `accountId` nor `validStart` are set")}},{key:"_toProtobuf",value:function(){return{accountID:null!=this.accountId?this.accountId._toProtobuf():null,transactionValidStart:null!=this.validStart?this.validStart._toProtobuf():null,scheduled:this.scheduled,nonce:null!=this.nonce?this.nonce.toInt():null}}},{key:"toBytes",value:function(){return l.TransactionID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){return new e(this.accountId,this.validStart,this.scheduled,this.nonce)}},{key:"compare",value:function(e){var t=this.accountId.compare(e.accountId);return 0!=t?t:this.validStart.compare(e.validStart)}}],[{key:"withValidStart",value:function(t,n){return new e(t,n,null)}},{key:"generate",value:function(t){return new e("string"==typeof t?c.default.fromString(t):new c.default(t),s.default.generate())}},{key:"fromString",value:function(t){var n,r,o,i,u,l,d=t.split("@"),p=(0,a.default)(d,2);n=p[0];var h=(l=p[1]).split("."),y=(0,a.default)(h,2);if(r=y[0],(l=y[1]).includes("?")){var m=l.split("?scheduled"),b=(0,a.default)(m,2);o=b[0],i=!0,u=(l=b[1]).includes("/")?l.replace("/",""):null}else if(l.includes("/")){var v=l.split("/"),k=(0,a.default)(v,2);o=k[0],u=k[1],i=!1}else o=l;return new e(c.default.fromString(n),new s.default(f.default.fromValue(r),f.default.fromValue(o)),i,null!=u?f.default.fromString(u):null)}},{key:"_fromProtobuf",value:function(t){if(null!=t.accountID&&null!=t.transactionValidStart)return new e(c.default._fromProtobuf(t.accountID),s.default._fromProtobuf(t.transactionValidStart),t.scheduled,t.nonce);throw new Error("Neither `nonce` or `accountID` and `transactionValidStart` are set")}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TransactionID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=t,o=n(10),a=n(154),i=n(587);r.assert=a,r.toArray=i.toArray,r.zero2=i.zero2,r.toHex=i.toHex,r.encode=i.encode,r.getNAF=function(e,t,n){var r=new Array(Math.max(e.bitLength(),n)+1);r.fill(0);for(var o=1<(o>>1)-1?(o>>1)-c:c,a.isubn(u)):u=0,r[i]=u,a.iushrn(1)}return r},r.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r,o=0,a=0;e.cmpn(-o)>0||t.cmpn(-a)>0;){var i,u,c=e.andln(3)+o&3,s=t.andln(3)+a&3;3===c&&(c=-1),3===s&&(s=-1),i=0==(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[0].push(i),u=0==(1&s)?0:3!==(r=t.andln(7)+a&7)&&5!==r||2!==c?s:-s,n[1].push(u),2*o===i+1&&(o=1-o),2*a===u+1&&(a=1-a),e.iushrn(1),t.iushrn(1)}return n},r.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new o(e,"hex","le")}},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=r(n(13)),s=r(n(48)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38)),f=r(n(18));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;(0,i.default)(this,e),this.accountId=t,this.validStart=n,this.scheduled=r,this.nonce=null,null!=o&&0!=o&&this.setNonce(o),Object.freeze(this)}return(0,u.default)(e,[{key:"setNonce",value:function(e){return this.nonce="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"setScheduled",value:function(e){return this.scheduled=e,this}},{key:"toString",value:function(){if(null!=this.accountId&&null!=this.validStart){var e=null!=this.nonce?"/".concat(this.nonce.toString()):"",t=this.scheduled?"?scheduled":"";return"".concat(this.accountId.toString(),"@").concat(this.validStart.seconds.toString(),".").concat(this.validStart.nanos.toString()).concat(t).concat(e)}throw new Error("neither `accountId` nor `validStart` are set")}},{key:"_toProtobuf",value:function(){return{accountID:null!=this.accountId?this.accountId._toProtobuf():null,transactionValidStart:null!=this.validStart?this.validStart._toProtobuf():null,scheduled:this.scheduled,nonce:null!=this.nonce?this.nonce.toInt():null}}},{key:"toBytes",value:function(){return l.TransactionID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){return new e(this.accountId,this.validStart,this.scheduled,this.nonce)}},{key:"compare",value:function(e){var t=this.accountId.compare(e.accountId);return 0!=t?t:this.validStart.compare(e.validStart)}}],[{key:"withValidStart",value:function(t,n){return new e(t,n)}},{key:"generate",value:function(t){return new e("string"==typeof t?c.default.fromString(t):new c.default(t),s.default.generate())}},{key:"fromString",value:function(t){var n,r,o,i,u,l,d=t.split("@"),p=(0,a.default)(d,2);n=p[0];var h=(l=p[1]).split("."),y=(0,a.default)(h,2);if(r=y[0],(l=y[1]).includes("?")){var m=l.split("?scheduled"),b=(0,a.default)(m,2);o=b[0],i=!0,u=(l=b[1]).includes("/")?l.replace("/",""):null}else if(l.includes("/")){var v=l.split("/"),k=(0,a.default)(v,2);o=k[0],u=k[1],i=!1}else o=l;return new e(c.default.fromString(n),new s.default(f.default.fromValue(r),f.default.fromValue(o)),i,null!=u?f.default.fromString(u):null)}},{key:"_fromProtobuf",value:function(t){if(null!=t.accountID&&null!=t.transactionValidStart)return new e(c.default._fromProtobuf(t.accountID),s.default._fromProtobuf(t.transactionValidStart),null!=t.scheduled?t.scheduled:void 0,null!=t.nonce?t.nonce:void 0);throw new Error("Neither `nonce` or `accountID` and `transactionValidStart` are set")}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TransactionID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=t,o=n(10),a=n(160),i=n(647);r.assert=a,r.toArray=i.toArray,r.zero2=i.zero2,r.toHex=i.toHex,r.encode=i.encode,r.getNAF=function(e,t,n){var r=new Array(Math.max(e.bitLength(),n)+1);r.fill(0);for(var o=1<(o>>1)-1?(o>>1)-c:c,a.isubn(u)):u=0,r[i]=u,a.iushrn(1)}return r},r.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r,o=0,a=0;e.cmpn(-o)>0||t.cmpn(-a)>0;){var i,u,c=e.andln(3)+o&3,s=t.andln(3)+a&3;3===c&&(c=-1),3===s&&(s=-1),i=0==(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[0].push(i),u=0==(1&s)?0:3!==(r=t.andln(7)+a&7)&&5!==r||2!==c?s:-s,n[1].push(u),2*o===i+1&&(o=1-o),2*a===u+1&&(a=1-a),e.iushrn(1),t.iushrn(1)}return n},r.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new o(e,"hex","le")}},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=r(n(14)),s=r(n(50)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39)),f=r(n(19));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;(0,i.default)(this,e),this.accountId=t,this.validStart=n,this.scheduled=r,this.nonce=null,null!=o&&0!=o&&this.setNonce(o),Object.freeze(this)}return(0,u.default)(e,[{key:"setNonce",value:function(e){return this.nonce="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"setScheduled",value:function(e){return this.scheduled=e,this}},{key:"toString",value:function(){if(null!=this.accountId&&null!=this.validStart){var e=null!=this.nonce?"/".concat(this.nonce.toString()):"",t=this.scheduled?"?scheduled":"";return"".concat(this.accountId.toString(),"@").concat(this.validStart.seconds.toString(),".").concat(this.validStart.nanos.toString()).concat(t).concat(e)}throw new Error("neither `accountId` nor `validStart` are set")}},{key:"_toProtobuf",value:function(){return{accountID:null!=this.accountId?this.accountId._toProtobuf():null,transactionValidStart:null!=this.validStart?this.validStart._toProtobuf():null,scheduled:this.scheduled,nonce:null!=this.nonce?this.nonce.toInt():null}}},{key:"toBytes",value:function(){return l.TransactionID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){return new e(this.accountId,this.validStart,this.scheduled,this.nonce)}},{key:"compare",value:function(e){var t=this.accountId.compare(e.accountId);return 0!=t?t:this.validStart.compare(e.validStart)}}],[{key:"withValidStart",value:function(t,n){return new e(t,n)}},{key:"generate",value:function(t){return new e("string"==typeof t?c.default.fromString(t):new c.default(t),s.default.generate())}},{key:"fromString",value:function(t){var n,r,o,i,u,l,d=t.split("@"),p=(0,a.default)(d,2);n=p[0];var h=(l=p[1]).split("."),y=(0,a.default)(h,2);if(r=y[0],(l=y[1]).includes("?")){var m=l.split("?scheduled"),b=(0,a.default)(m,2);o=b[0],i=!0,u=(l=b[1]).includes("/")?l.replace("/",""):null}else if(l.includes("/")){var v=l.split("/"),k=(0,a.default)(v,2);o=k[0],u=k[1],i=!1}else o=l;return new e(c.default.fromString(n),new s.default(f.default.fromValue(r),f.default.fromValue(o)),i,null!=u?f.default.fromString(u):null)}},{key:"_fromProtobuf",value:function(t){if(null!=t.accountID&&null!=t.transactionValidStart)return new e(c.default._fromProtobuf(t.accountID),s.default._fromProtobuf(t.transactionValidStart),null!=t.scheduled?t.scheduled:void 0,null!=t.nonce?t.nonce:void 0);throw new Error("Neither `nonce` or `accountID` and `transactionValidStart` are set")}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.TransactionID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2));function u(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return c(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return c(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&i.length>o&&!i.warned){i.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+i.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=i.length,u=c,console&&console.warn&&console.warn(u)}return e}function p(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},o=p.bind(r);return o.listener=n,r.wrapFn=o,o}function y(e,t,n){var r=e._events;if(void 0===r)return[];var o=r[t];return void 0===o?[]:"function"==typeof o?n?[o.listener||o]:[o]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(a=t[0]),a instanceof Error)throw a;var u=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw u.context=a,u}var c=o[e];if(void 0===c)return!1;if("function"==typeof c)i(c,this,t);else{var s=c.length,l=b(c,s);for(n=0;n=0;a--)if(n[a]===t||n[a].listener===t){i=n[a].listener,o=a;break}if(o<0)return this;0===o?n.shift():function(e,t){for(;t+1=0;r--)this.removeListener(e,t[r]);return this},c.prototype.listeners=function(e){return y(this,e,!0)},c.prototype.rawListeners=function(e){return y(this,e,!1)},c.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):m.call(e,t)},c.prototype.listenerCount=m,c.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2));function u(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return c(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return c(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n */var r=n(15),o=r.Buffer;function a(e,t){for(var n in e)t[n]=e[n]}function i(e,t,n){return o(e,t,n)}o.from&&o.alloc&&o.allocUnsafe&&o.allocUnsafeSlow?e.exports=r:(a(r,t),t.Buffer=i),i.prototype=Object.create(o.prototype),a(o,i),i.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return o(e,t,n)},i.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=o(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},i.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return o(e)},i.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2));function u(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return c(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return c(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nthis.wordSize&&f.throwError("value out-of-bounds",s.Logger.errors.BUFFER_OVERRUN,{length:this.wordSize,offset:t.length}),t.length%this.wordSize&&(t=(0,i.concat)([this._padding.slice(t.length%this.wordSize),t])),t}},{key:"writeValue",value:function(e){return this._writeData(this._getValue(e))}},{key:"writeUpdatableValue",value:function(){var e=this,t=this._data.length;return this._data.push(this._padding),this._dataLength+=this.wordSize,function(n){e._data[t]=e._getValue(n)}}}]),e}();t.Writer=p;var h=function(){function e(t,n,r,a){(0,o.default)(this,e),(0,c.defineReadOnly)(this,"_data",(0,i.arrayify)(t)),(0,c.defineReadOnly)(this,"wordSize",n||32),(0,c.defineReadOnly)(this,"_coerceFunc",r),(0,c.defineReadOnly)(this,"allowLoose",a),this._offset=0}return(0,a.default)(e,[{key:"data",get:function(){return(0,i.hexlify)(this._data)}},{key:"consumed",get:function(){return this._offset}},{key:"coerce",value:function(t,n){return this._coerceFunc?this._coerceFunc(t,n):e.coerce(t,n)}},{key:"_peekBytes",value:function(e,t,n){var r=Math.ceil(t/this.wordSize)*this.wordSize;return this._offset+r>this._data.length&&(this.allowLoose&&n&&this._offset+t<=this._data.length?r=t:f.throwError("data out-of-bounds",s.Logger.errors.BUFFER_OVERRUN,{length:this._data.length,offset:this._offset+r})),this._data.slice(this._offset,this._offset+r)}},{key:"subReader",value:function(t){return new e(this._data.slice(this._offset+t),this.wordSize,this._coerceFunc,this.allowLoose)}},{key:"readBytes",value:function(e,t){var n=this._peekBytes(0,e,!!t);return this._offset+=n.length,n.slice(0,e)}},{key:"readValue",value:function(){return u.BigNumber.from(this.readBytes(this.wordSize))}}],[{key:"coerce",value:function(e,t){var n=e.match("^u?int([0-9]+)$");return n&&parseInt(n[1])<=48&&(t=t.toNumber()),t}}]),e}();t.Reader=h},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(375),a=o.Hbar,i=o.HbarUnit,u=n(858),c=n(435),s=n(915),l=n(119),f=n(10),d=function e(t,n){var o=[];return n.forEach((function(n){if("object"===(0,r.default)(n.components)){if("tuple"!==n.type.substring(0,5))throw new Error("components found but type is not tuple; report on GitHub");var a="",i=n.type.indexOf("[");i>=0&&(a=n.type.substring(i));var u=e(t,n.components);Array.isArray(u)&&t?o.push("tuple("+u.join(",")+")"+a):t?o.push("("+u+")"):o.push("("+u.join(",")+")"+a)}else o.push(n.type)})),o},p=function(e){if(!c.isHexStrict(e))throw new Error("The parameter must be a valid HEX string.");var t="",n=0,r=e.length;for("0x"===e.substring(0,2)&&(n=2);n=e.length)&&56320==(64512&e.charCodeAt(t+1)))}function i(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function u(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=o,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var n=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),o=0;o>6|192,n[r++]=63&i|128):a(e,o)?(i=65536+((1023&i)<<10)+(1023&e.charCodeAt(++o)),n[r++]=i>>18|240,n[r++]=i>>12&63|128,n[r++]=i>>6&63|128,n[r++]=63&i|128):(n[r++]=i>>12|224,n[r++]=i>>6&63|128,n[r++]=63&i|128)}else for(o=0;o>>0}return i},t.split32=function(e,t){for(var n=new Array(4*e.length),r=0,o=0;r>>24,n[o+1]=a>>>16&255,n[o+2]=a>>>8&255,n[o+3]=255&a):(n[o+3]=a>>>24,n[o+2]=a>>>16&255,n[o+1]=a>>>8&255,n[o]=255&a)}return n},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,n){return e+t+n>>>0},t.sum32_4=function(e,t,n,r){return e+t+n+r>>>0},t.sum32_5=function(e,t,n,r,o){return e+t+n+r+o>>>0},t.sum64=function(e,t,n,r){var o=e[t],a=r+e[t+1]>>>0,i=(a>>0,e[t+1]=a},t.sum64_hi=function(e,t,n,r){return(t+r>>>0>>0},t.sum64_lo=function(e,t,n,r){return t+r>>>0},t.sum64_4_hi=function(e,t,n,r,o,a,i,u){var c=0,s=t;return c+=(s=s+r>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,n,r,o,a,i,u){return t+r+a+u>>>0},t.sum64_5_hi=function(e,t,n,r,o,a,i,u,c,s){var l=0,f=t;return l+=(f=f+r>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,n,r,o,a,i,u,c,s){return t+r+a+u+s>>>0},t.rotr64_hi=function(e,t,n){return(t<<32-n|e>>>n)>>>0},t.rotr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0},t.shr64_hi=function(e,t,n){return e>>>n},t.shr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(74));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this._ledgerId=t,Object.freeze(this)}return(0,i.default)(e,[{key:"toString",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return l[0];case 1:return l[1];case 2:return l[2];default:return u.encode(this._ledgerId)}}},{key:"_toStringForChecksum",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return"0";case 1:return"1";case 2:return"2";default:return u.encode(this._ledgerId)}}},{key:"toBytes",value:function(){return this._ledgerId}},{key:"isMainnet",value:function(){return this.toString()==l[0]}},{key:"isTestnet",value:function(){return this.toString()==l[1]}},{key:"isPreviewnet",value:function(){return this.toString()==l[2]}}],[{key:"fromString",value:function(t){switch(t){case l[0]:case"0":return e.MAINNET;case l[1]:case"1":return e.TESTNET;case l[2]:case"2":return e.PREVIEWNET;default:var n=u.decode(t);if(0==n.length&&0!=t.length)throw new Error("Default reached for fromString");return new e(n)}}},{key:"fromBytes",value:function(t){return new e(t)}}]),e}();t.default=s;var l=["mainnet","testnet","previewnet"];s.MAINNET=new s(new Uint8Array([0])),s.TESTNET=new s(new Uint8Array([1])),s.PREVIEWNET=new s(new Uint8Array([2]))},function(e,t,n){"use strict";var r=n(146),o=n(51);function a(e,t){return 55296==(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1)))}function i(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function u(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=o,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var n=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),o=0;o>6|192,n[r++]=63&i|128):a(e,o)?(i=65536+((1023&i)<<10)+(1023&e.charCodeAt(++o)),n[r++]=i>>18|240,n[r++]=i>>12&63|128,n[r++]=i>>6&63|128,n[r++]=63&i|128):(n[r++]=i>>12|224,n[r++]=i>>6&63|128,n[r++]=63&i|128)}else for(o=0;o>>0}return i},t.split32=function(e,t){for(var n=new Array(4*e.length),r=0,o=0;r>>24,n[o+1]=a>>>16&255,n[o+2]=a>>>8&255,n[o+3]=255&a):(n[o+3]=a>>>24,n[o+2]=a>>>16&255,n[o+1]=a>>>8&255,n[o]=255&a)}return n},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,n){return e+t+n>>>0},t.sum32_4=function(e,t,n,r){return e+t+n+r>>>0},t.sum32_5=function(e,t,n,r,o){return e+t+n+r+o>>>0},t.sum64=function(e,t,n,r){var o=e[t],a=r+e[t+1]>>>0,i=(a>>0,e[t+1]=a},t.sum64_hi=function(e,t,n,r){return(t+r>>>0>>0},t.sum64_lo=function(e,t,n,r){return t+r>>>0},t.sum64_4_hi=function(e,t,n,r,o,a,i,u){var c=0,s=t;return c+=(s=s+r>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,n,r,o,a,i,u){return t+r+a+u>>>0},t.sum64_5_hi=function(e,t,n,r,o,a,i,u,c,s){var l=0,f=t;return l+=(f=f+r>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,n,r,o,a,i,u,c,s){return t+r+a+u+s>>>0},t.rotr64_hi=function(e,t,n){return(t<<32-n|e>>>n)>>>0},t.rotr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0},t.shr64_hi=function(e,t,n){return e>>>n},t.shr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(78));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this._ledgerId=t,Object.freeze(this)}return(0,i.default)(e,[{key:"toString",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return l[0];case 1:return l[1];case 2:return l[2];default:return u.encode(this._ledgerId)}}},{key:"_toStringForChecksum",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return"0";case 1:return"1";case 2:return"2";default:return u.encode(this._ledgerId)}}},{key:"toBytes",value:function(){return this._ledgerId}},{key:"isMainnet",value:function(){return this.toString()==l[0]}},{key:"isTestnet",value:function(){return this.toString()==l[1]}},{key:"isPreviewnet",value:function(){return this.toString()==l[2]}}],[{key:"fromString",value:function(t){switch(t){case l[0]:case"0":return e.MAINNET;case l[1]:case"1":return e.TESTNET;case l[2]:case"2":return e.PREVIEWNET;default:var n=u.decode(t);if(0==n.length&&0!=t.length)throw new Error("Default reached for fromString");return new e(n)}}},{key:"fromBytes",value:function(t){return new e(t)}}]),e}();t.default=s;var l=["mainnet","testnet","previewnet"];s.MAINNET=new s(new Uint8Array([0])),s.TESTNET=new s(new Uint8Array([1])),s.PREVIEWNET=new s(new Uint8Array([2]))},function(e,t,n){"use strict";var r=n(154),o=n(270);function a(e,t){return 55296==(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1)))}function i(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function u(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=o,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var n=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),o=0;o>6|192,n[r++]=63&i|128):a(e,o)?(i=65536+((1023&i)<<10)+(1023&e.charCodeAt(++o)),n[r++]=i>>18|240,n[r++]=i>>12&63|128,n[r++]=i>>6&63|128,n[r++]=63&i|128):(n[r++]=i>>12|224,n[r++]=i>>6&63|128,n[r++]=63&i|128)}else for(o=0;o>>0}return i},t.split32=function(e,t){for(var n=new Array(4*e.length),r=0,o=0;r>>24,n[o+1]=a>>>16&255,n[o+2]=a>>>8&255,n[o+3]=255&a):(n[o+3]=a>>>24,n[o+2]=a>>>16&255,n[o+1]=a>>>8&255,n[o]=255&a)}return n},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,n){return e+t+n>>>0},t.sum32_4=function(e,t,n,r){return e+t+n+r>>>0},t.sum32_5=function(e,t,n,r,o){return e+t+n+r+o>>>0},t.sum64=function(e,t,n,r){var o=e[t],a=r+e[t+1]>>>0,i=(a>>0,e[t+1]=a},t.sum64_hi=function(e,t,n,r){return(t+r>>>0>>0},t.sum64_lo=function(e,t,n,r){return t+r>>>0},t.sum64_4_hi=function(e,t,n,r,o,a,i,u){var c=0,s=t;return c+=(s=s+r>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,n,r,o,a,i,u){return t+r+a+u>>>0},t.sum64_5_hi=function(e,t,n,r,o,a,i,u,c,s){var l=0,f=t;return l+=(f=f+r>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,n,r,o,a,i,u,c,s){return t+r+a+u+s>>>0},t.rotr64_hi=function(e,t,n){return(t<<32-n|e>>>n)>>>0},t.rotr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0},t.shr64_hi=function(e,t,n){return e>>>n},t.shr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return(new TextDecoder).decode(e)},t.encode=function(e){return(new TextEncoder).encode(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(81));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this._ledgerId=t,Object.freeze(this)}return(0,i.default)(e,[{key:"toString",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return l[0];case 1:return l[1];case 2:return l[2];default:return u.encode(this._ledgerId)}}},{key:"_toStringForChecksum",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return"0";case 1:return"1";case 2:return"2";default:return u.encode(this._ledgerId)}}},{key:"toBytes",value:function(){return this._ledgerId}},{key:"isMainnet",value:function(){return this.toString()==l[0]}},{key:"isTestnet",value:function(){return this.toString()==l[1]}},{key:"isPreviewnet",value:function(){return this.toString()==l[2]}}],[{key:"fromString",value:function(t){switch(t){case l[0]:case"0":return e.MAINNET;case l[1]:case"1":return e.TESTNET;case l[2]:case"2":return e.PREVIEWNET;default:var n=u.decode(t);if(0==n.length&&0!=t.length)throw new Error("Default reached for fromString");return new e(n)}}},{key:"fromBytes",value:function(t){return new e(t)}}]),e}();t.default=s;var l=["mainnet","testnet","previewnet"];s.MAINNET=new s(new Uint8Array([0])),s.TESTNET=new s(new Uint8Array([1])),s.PREVIEWNET=new s(new Uint8Array([2]))},function(e,t,n){"use strict";var r=n(160),o=n(281);function a(e,t){return 55296==(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1)))}function i(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function u(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=o,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var n=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),o=0;o>6|192,n[r++]=63&i|128):a(e,o)?(i=65536+((1023&i)<<10)+(1023&e.charCodeAt(++o)),n[r++]=i>>18|240,n[r++]=i>>12&63|128,n[r++]=i>>6&63|128,n[r++]=63&i|128):(n[r++]=i>>12|224,n[r++]=i>>6&63|128,n[r++]=63&i|128)}else for(o=0;o>>0}return i},t.split32=function(e,t){for(var n=new Array(4*e.length),r=0,o=0;r>>24,n[o+1]=a>>>16&255,n[o+2]=a>>>8&255,n[o+3]=255&a):(n[o+3]=a>>>24,n[o+2]=a>>>16&255,n[o+1]=a>>>8&255,n[o]=255&a)}return n},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,n){return e+t+n>>>0},t.sum32_4=function(e,t,n,r){return e+t+n+r>>>0},t.sum32_5=function(e,t,n,r,o){return e+t+n+r+o>>>0},t.sum64=function(e,t,n,r){var o=e[t],a=r+e[t+1]>>>0,i=(a>>0,e[t+1]=a},t.sum64_hi=function(e,t,n,r){return(t+r>>>0>>0},t.sum64_lo=function(e,t,n,r){return t+r>>>0},t.sum64_4_hi=function(e,t,n,r,o,a,i,u){var c=0,s=t;return c+=(s=s+r>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,n,r,o,a,i,u){return t+r+a+u>>>0},t.sum64_5_hi=function(e,t,n,r,o,a,i,u,c,s){var l=0,f=t;return l+=(f=f+r>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,n,r,o,a,i,u,c,s){return t+r+a+u+s>>>0},t.rotr64_hi=function(e,t,n){return(t<<32-n|e>>>n)>>>0},t.rotr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0},t.shr64_hi=function(e,t,n){return e>>>n},t.shr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return(new TextDecoder).decode(e)},t.encode=function(e){return(new TextEncoder).encode(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(84));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this._ledgerId=t,Object.freeze(this)}return(0,i.default)(e,[{key:"toString",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return l[0];case 1:return l[1];case 2:return l[2];default:return u.encode(this._ledgerId)}}},{key:"_toStringForChecksum",value:function(){if(1!=this._ledgerId.length)return u.encode(this._ledgerId);switch(this._ledgerId[0]){case 0:return"0";case 1:return"1";case 2:return"2";default:return u.encode(this._ledgerId)}}},{key:"toBytes",value:function(){return this._ledgerId}},{key:"isMainnet",value:function(){return this.toString()==l[0]}},{key:"isTestnet",value:function(){return this.toString()==l[1]}},{key:"isPreviewnet",value:function(){return this.toString()==l[2]}}],[{key:"fromString",value:function(t){switch(t){case l[0]:case"0":return e.MAINNET;case l[1]:case"1":return e.TESTNET;case l[2]:case"2":return e.PREVIEWNET;default:var n=u.decode(t);if(0==n.length&&0!=t.length)throw new Error("Default reached for fromString");return new e(n)}}},{key:"fromBytes",value:function(t){return new e(t)}}]),e}();t.default=s;var l=["mainnet","testnet","previewnet"];s.MAINNET=new s(new Uint8Array([0])),s.TESTNET=new s(new Uint8Array([1])),s.PREVIEWNET=new s(new Uint8Array([2]))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"errors",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"formatters",{enumerable:!0,get:function(){return a.default}});var o=r(n(708)),a=r(n(709))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e){var r;return(0,o.default)(this,n),(r=t.call(this,e instanceof Error?e.message:e)).name="BadKeyError",e instanceof Error&&(r.cause=e,r.stack=e.stack),r}return n}((0,r(n(42)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(228)),f=n(750),d=r(n(43)),p=r(n(116));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={contractId:null,keyList:null,thresholdKey:null,publicKeyED25519:null,publicKeyECDSA:null,privateKeyConstructor:null,accountIdConstructor:null,delegateContractId:null};t.default=r},function(e,t,n){"use strict";var r=n(397),o=n(107);function a(e,t,n,i){return(a="undefined"!=typeof Reflect&&Reflect.set?Reflect.set:function(e,t,n,a){var i,u=r(e,t);if(u){if((i=Object.getOwnPropertyDescriptor(u,t)).set)return i.set.call(a,n),!0;if(!i.writable)return!1}if(i=Object.getOwnPropertyDescriptor(a,t)){if(!i.writable)return!1;i.value=n,Object.defineProperty(a,t,i)}else o(a,t,n);return!0})(e,t,n,i)}e.exports=function(e,t,n,r,o){if(!a(e,t,n,r||e)&&o)throw new Error("failed to set property");return n},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(168)),s=n(36);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{topicNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.TopicID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.topicNum?t.topicNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.TopicID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=f},function(e,t,n){"use strict";(function(t,r){var o=n(26).Buffer,a=t.crypto||t.msCrypto;a&&a.getRandomValues?e.exports=function(e,t){if(e>4294967295)throw new RangeError("requested too many random bytes");var n=o.allocUnsafe(e);if(e>0)if(e>65536)for(var i=0;ie.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={contractId:null,keyList:null,thresholdKey:null,publicKeyED25519:null,publicKeyECDSA:null,privateKeyConstructor:null,accountIdConstructor:null,delegateContractId:null};t.default=r},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(179)),s=n(37);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{topicNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.TopicID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.topicNum?t.topicNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.TopicID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=f},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={contractId:null,keyList:null,thresholdKey:null,publicKeyED25519:null,publicKeyECDSA:null,privateKeyConstructor:null,accountIdConstructor:null,delegateContractId:null};t.default=r},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(266)),f=n(1205),d=r(n(47)),p=r(n(126));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(null!=this._minBackoff&&eDate.now())){e.next=10;break}throw new Error("timeout exceeded");case 10:if(u=this._getNodeAccountId(),null!=(s=t._network.getNode(u))){e.next=14;break}throw new Error("NodeAccountId not recognized: ".concat(u.toString()));case 14:return l=this._getLogId(),f.default.debug("[".concat(l,"] Node AccountID: ").concat(s.accountId.toString(),", IP: ").concat(s.address.toString())),p=s.getChannel(),e.next=19,this._makeRequestAsync();case 19:if(h=e.sent,this._advanceRequest(),m=void 0,s.isHealthy()){e.next=26;break}return f.default.debug("[".concat(l,"] node is not healthy, waiting ").concat(s.getRemainingTime())),e.next=26,s.wait();case 26:return e.prev=26,b=[],null!=this._grpcDeadline&&b.push(new Promise((function(e,t){return setTimeout((function(){return t(new Error("grpc deadline exceeded"))}),k._grpcDeadline)}))),b.push(this._execute(p,h)),e.next=32,Promise.race(b);case 32:m=e.sent,e.next=43;break;case 35:if(e.prev=35,e.t0=e.catch(26),v=c.default._fromResponse(e.t0),f.default.debug("[".concat(l,"] received gRPC error ").concat(JSON.stringify(v))),!(v instanceof c.default&&this._shouldRetryExceptionally(v)&&i<=r)){e.next=42;break}return s.increaseDelay(),e.abrupt("continue",53);case 42:throw e.t0;case 43:s.decreaseDelay(),e.t1=this._shouldRetry(h,m),e.next=e.t1===d.Retry?47:e.t1===d.Finished?50:e.t1===d.Error?51:52;break;case 47:return e.next=49,y(i,this._minBackoff,this._maxBackoff);case 49:return e.abrupt("continue",53);case 50:return e.abrupt("return",this._mapResponse(m,u,h));case 51:throw this._mapStatusError(h,m);case 52:throw new Error("(BUG) non-exhuastive switch statement for `ExecutionState`");case 53:i+=1,e.next=8;break;case 56:case"end":return e.stop()}}),e,this,[[26,35]])}))),function(e,n){return t.apply(this,arguments)})}]),e}();function y(e,t,n){var r=Math.min(Math.floor(t*Math.pow(2,e)),n);return new Promise((function(e){return setTimeout(e,r)}))}t.default=h},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(188)),s=n(38);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{topicNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.TopicID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.topicNum?t.topicNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.TopicID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=f},function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;n+=o[i]}}catch(e){a.e(e)}finally{a.f()}return n};for(var o=[],a=0;a<=255;a+=1)o.push(a.toString(16).padStart(2,"0"))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={contractId:null,keyList:null,thresholdKey:null,publicKeyED25519:null,publicKeyECDSA:null,privateKeyConstructor:null,accountIdConstructor:null,delegateContractId:null};t.default=r},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(277)),f=n(1349),d=r(n(49)),p=r(n(131));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(null!=this._minBackoff&&eDate.now())){e.next=10;break}throw new Error("timeout exceeded");case 10:if(u=this._getNodeAccountId(),null!=(s=t._network.getNode(u))){e.next=14;break}throw new Error("NodeAccountId not recognized: ".concat(u.toString()));case 14:return l=this._getLogId(),f.default.debug("[".concat(l,"] Node AccountID: ").concat(s.accountId.toString(),", IP: ").concat(s.address.toString())),p=s.getChannel(),e.next=19,this._makeRequestAsync();case 19:if(h=e.sent,this._advanceRequest(),m=void 0,s.isHealthy()){e.next=26;break}return f.default.debug("[".concat(l,"] node is not healthy, waiting ").concat(s.getRemainingTime())),e.next=26,s.wait();case 26:return e.prev=26,b=[],null!=this._grpcDeadline&&b.push(new Promise((function(e,t){return setTimeout((function(){return t(new Error("grpc deadline exceeded"))}),k._grpcDeadline)}))),b.push(this._execute(p,h)),e.next=32,Promise.race(b);case 32:m=e.sent,e.next=43;break;case 35:if(e.prev=35,e.t0=e.catch(26),v=c.default._fromResponse(e.t0),f.default.debug("[".concat(l,"] received gRPC error ").concat(JSON.stringify(v))),!(v instanceof c.default&&this._shouldRetryExceptionally(v)&&i<=r)){e.next=42;break}return s.increaseDelay(),e.abrupt("continue",53);case 42:throw e.t0;case 43:s.decreaseDelay(),e.t1=this._shouldRetry(h,m),e.next=e.t1===d.Retry?47:e.t1===d.Finished?50:e.t1===d.Error?51:52;break;case 47:return e.next=49,y(i,this._minBackoff,this._maxBackoff);case 49:return e.abrupt("continue",53);case 50:return e.abrupt("return",this._mapResponse(m,u,h));case 51:throw this._mapStatusError(h,m);case 52:throw new Error("(BUG) non-exhuastive switch statement for `ExecutionState`");case 53:i+=1,e.next=8;break;case 56:case"end":return e.stop()}}),e,this,[[26,35]])}))),function(e,n){return t.apply(this,arguments)})}]),e}();function y(e,t,n){var r=Math.min(Math.floor(t*Math.pow(2,e)),n);return new Promise((function(e){return setTimeout(e,r)}))}t.default=h},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(192)),s=n(39);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t,n,r){(0,i.default)(this,e);var o=c.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,u.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){c.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return c.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{topicNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return c.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return s.TopicID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return c.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=c.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.topicNum?t.topicNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(s.TopicID.decode(t))}},{key:"fromSolidityAddress",value:function(t){var n=c.fromSolidityAddress(t),r=(0,a.default)(n,3);return new e(r[0],r[1],r[2])}}]),e}();t.default=f},function(e,t,n){"use strict";var r,o=n(0)(n(3));!function(a){var i,u=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,c=Math.ceil,s=Math.floor,l="[BigNumber Error] ",f=l+"Number primitive has more than 15 significant digits: ",d=1e14,p=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],h=1e9;function y(e){var t=0|e;return e>0||e===t?t:t-1}function m(e){for(var t,n,r=1,o=e.length,a=e[0]+"";rs^n?1:-1;for(u=(c=o.length)<(s=a.length)?c:s,i=0;ia[i]^n?1:-1;return c==s?0:c>s^n?1:-1}function v(e,t,n,r){if(en||e!==s(e))throw Error(l+(r||"Argument")+("number"==typeof e?en?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function k(e){var t=e.c.length-1;return y(e.e/14)==t&&e.c[t]%2!=0}function g(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function _(e,t,n){var r,o;if(t<0){for(o=n+".";++t;o+=n);e=o+e}else if(++t>(r=e.length)){for(o=n,t-=r;--t;o+=n);e+=o}else tB?y.c=y.e=null:e.e=10;l/=10,c++);return void(c>B?y.c=y.e=null:(y.e=c,y.c=[e]))}h=String(e)}else{if(!u.test(h=String(e)))return a(y,h,d);y.s=45==h.charCodeAt(0)?(h=h.slice(1),-1):1}(c=h.indexOf("."))>-1&&(h=h.replace(".","")),(l=h.search(/e/i))>0?(c<0&&(c=l),c+=+h.slice(l+1),h=h.substring(0,l)):c<0&&(c=h.length)}else{if(v(t,2,U.length,"Base"),10==t&&L)return H(y=new G(e),S+y.e+1,R);if(h=String(e),d="number"==typeof e){if(0*e!=0)return a(y,h,d,t);if(y.s=1/e<0?(h=h.slice(1),-1):1,G.DEBUG&&h.replace(/^0\.0*|\./,"").length>15)throw Error(f+e)}else y.s=45===h.charCodeAt(0)?(h=h.slice(1),-1):1;for(n=U.slice(0,t),c=l=0,p=h.length;lc){c=p;continue}}else if(!i&&(h==h.toUpperCase()&&(h=h.toLowerCase())||h==h.toLowerCase()&&(h=h.toUpperCase()))){i=!0,l=-1,c=0;continue}return a(y,String(e),d,t)}d=!1,(c=(h=r(h,t,10,y.s)).indexOf("."))>-1?h=h.replace(".",""):c=h.length}for(l=0;48===h.charCodeAt(l);l++);for(p=h.length;48===h.charCodeAt(--p););if(h=h.slice(l,++p)){if(p-=l,d&&G.DEBUG&&p>15&&(e>9007199254740991||e!==s(e)))throw Error(f+y.s*e);if((c=c-l-1)>B)y.c=y.e=null;else if(c=C)?g(c,i):_(c,i,"0");else if(a=(e=H(new G(e),t,n)).e,u=(c=m(e.c)).length,1==r||2==r&&(t<=a||a<=D)){for(;uu){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=a-u)>0)for(a+1==u&&(c+=".");t--;c+="0");return e.s<0&&o?"-"+c:c}function z(e,t){for(var n,r=1,o=new G(e[0]);r=10;o/=10,r++);return(n=r+14*n-1)>B?e.c=e.e=null:n=10;u/=10,o++);if((a=t-o)<0)a+=14,i=t,h=(l=y[f=0])/m[o-i-1]%10|0;else if((f=c((a+1)/14))>=y.length){if(!r)break e;for(;y.length<=f;y.push(0));l=h=0,o=1,i=(a%=14)-14+1}else{for(l=u=y[f],o=1;u>=10;u/=10,o++);h=(i=(a%=14)-14+o)<0?0:l/m[o-i-1]%10|0}if(r=r||t<0||null!=y[f+1]||(i<0?l:l%m[o-i-1]),r=n<4?(h||r)&&(0==n||n==(e.s<0?3:2)):h>5||5==h&&(4==n||r||6==n&&(a>0?i>0?l/m[o-i]:0:y[f-1])%10&1||n==(e.s<0?8:7)),t<1||!y[0])return y.length=0,r?(t-=e.e+1,y[0]=m[(14-t%14)%14],e.e=-t||0):y[0]=e.e=0,e;if(0==a?(y.length=f,u=1,f--):(y.length=f+1,u=m[14-a],y[f]=i>0?s(l/m[o-i]%m[i])*u:0),r)for(;;){if(0==f){for(a=1,i=y[0];i>=10;i/=10,a++);for(i=y[0]+=u,u=1;i>=10;i/=10,u++);a!=u&&(e.e++,y[0]==d&&(y[0]=1));break}if(y[f]+=u,y[f]!=d)break;y[f--]=0,u=1}for(a=y.length;0===y[--a];y.pop());}e.e>B?e.c=e.e=null:e.e=C?g(t,n):_(t,n,"0"),e.s<0?"-"+t:t)}return G.clone=e,G.ROUND_UP=0,G.ROUND_DOWN=1,G.ROUND_CEIL=2,G.ROUND_FLOOR=3,G.ROUND_HALF_UP=4,G.ROUND_HALF_DOWN=5,G.ROUND_HALF_EVEN=6,G.ROUND_HALF_CEIL=7,G.ROUND_HALF_FLOOR=8,G.EUCLID=9,G.config=G.set=function(e){var t,n;if(null!=e){if("object"!=(0,o.default)(e))throw Error(l+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(v(n=e[t],0,h,t),S=n),e.hasOwnProperty(t="ROUNDING_MODE")&&(v(n=e[t],0,8,t),R=n),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((n=e[t])&&n.pop?(v(n[0],-h,0,t),v(n[1],0,h,t),D=n[0],C=n[1]):(v(n,-h,h,t),D=-(C=n<0?-n:n))),e.hasOwnProperty(t="RANGE"))if((n=e[t])&&n.pop)v(n[0],-h,-1,t),v(n[1],1,h,t),N=n[0],B=n[1];else{if(v(n,-h,h,t),!n)throw Error(l+t+" cannot be zero: "+n);N=-(B=n<0?-n:n)}if(e.hasOwnProperty(t="CRYPTO")){if((n=e[t])!==!!n)throw Error(l+t+" not true or false: "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw M=!n,Error(l+"crypto unavailable");M=n}else M=n}if(e.hasOwnProperty(t="MODULO_MODE")&&(v(n=e[t],0,9,t),j=n),e.hasOwnProperty(t="POW_PRECISION")&&(v(n=e[t],0,h,t),x=n),e.hasOwnProperty(t="FORMAT")){if(n=e[t],"object"!=(0,o.default)(n))throw Error(l+t+" not an object: "+n);F=n}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(n=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(n))throw Error(l+t+" invalid: "+n);L="0123456789"==n.slice(0,10),U=n}}return{DECIMAL_PLACES:S,ROUNDING_MODE:R,EXPONENTIAL_AT:[D,C],RANGE:[N,B],CRYPTO:M,MODULO_MODE:j,POW_PRECISION:x,FORMAT:F,ALPHABET:U}},G.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!G.DEBUG)return!0;var t,n,r=e.c,o=e.e,a=e.s;e:if("[object Array]"=={}.toString.call(r)){if((1===a||-1===a)&&o>=-h&&o<=h&&o===s(o)){if(0===r[0]){if(0===o&&1===r.length)return!0;break e}if((t=(o+1)%14)<1&&(t+=14),String(r[0]).length==t){for(t=0;t=d||n!==s(n))break e;if(0!==n)return!0}}}else if(null===r&&null===o&&(null===a||1===a||-1===a))return!0;throw Error(l+"Invalid BigNumber: "+e)},G.maximum=G.max=function(){return z(arguments,P.lt)},G.minimum=G.min=function(){return z(arguments,P.gt)},G.random=(i=9007199254740992*Math.random()&2097151?function(){return s(9007199254740992*Math.random())}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,n,r,o,a,u=0,f=[],d=new G(E);if(null==e?e=S:v(e,0,h),o=c(e/14),M)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(o*=2));u>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),t[u]=n[0],t[u+1]=n[1]):(f.push(a%1e14),u+=2);u=o/2}else{if(!crypto.randomBytes)throw M=!1,Error(l+"crypto unavailable");for(t=crypto.randomBytes(o*=7);u=9e15?crypto.randomBytes(7).copy(t,u):(f.push(a%1e14),u+=7);u=o/7}if(!M)for(;u=10;a/=10,u++);u<14&&(r-=14-u)}return d.e=r,d.c=f,d}),G.sum=function(){for(var e=1,t=arguments,n=new G(t[0]);en-1&&(null==i[o+1]&&(i[o+1]=0),i[o+1]+=i[o]/n|0,i[o]%=n)}return i.reverse()}return function(t,r,o,a,i){var u,c,s,l,f,d,p,h,y=t.indexOf("."),b=S,v=R;for(y>=0&&(l=x,x=0,t=t.replace(".",""),d=(h=new G(r)).pow(t.length-y),x=l,h.c=e(_(m(d.c),d.e,"0"),10,o,"0123456789"),h.e=h.c.length),s=l=(p=e(t,r,o,i?(u=U,"0123456789"):(u="0123456789",U))).length;0==p[--l];p.pop());if(!p[0])return u.charAt(0);if(y<0?--s:(d.c=p,d.e=s,d.s=a,p=(d=n(d,h,b,v,o)).c,f=d.r,s=d.e),y=p[c=s+b+1],l=o/2,f=f||c<0||null!=p[c+1],f=v<4?(null!=y||f)&&(0==v||v==(d.s<0?3:2)):y>l||y==l&&(4==v||f||6==v&&1&p[c-1]||v==(d.s<0?8:7)),c<1||!p[0])t=f?_(u.charAt(1),-b,u.charAt(0)):u.charAt(0);else{if(p.length=c,f)for(--o;++p[--c]>o;)p[c]=0,c||(++s,p=[1].concat(p));for(l=p.length;!p[--l];);for(y=0,t="";y<=l;t+=u.charAt(p[y++]));t=_(t,s,u.charAt(0))}return t}}(),n=function(){function e(e,t,n){var r,o,a,i,u=0,c=e.length,s=t%1e7,l=t/1e7|0;for(e=e.slice();c--;)u=((o=s*(a=e[c]%1e7)+(r=l*a+(i=e[c]/1e7|0)*s)%1e7*1e7+u)/n|0)+(r/1e7|0)+l*i,e[c]=o%n;return u&&(e=[u].concat(e)),e}function t(e,t,n,r){var o,a;if(n!=r)a=n>r?1:-1;else for(o=a=0;ot[o]?1:-1;break}return a}function n(e,t,n,r){for(var o=0;n--;)e[n]-=o,o=e[n]1;e.splice(0,1));}return function(r,o,a,i,u){var c,l,f,p,h,m,b,v,k,g,_,w,I,A,T,O,P,E=r.s==o.s?1:-1,S=r.c,R=o.c;if(!(S&&S[0]&&R&&R[0]))return new G(r.s&&o.s&&(S?!R||S[0]!=R[0]:R)?S&&0==S[0]||!R?0*E:E/0:NaN);for(k=(v=new G(E)).c=[],E=a+(l=r.e-o.e)+1,u||(u=d,l=y(r.e/14)-y(o.e/14),E=E/14|0),f=0;R[f]==(S[f]||0);f++);if(R[f]>(S[f]||0)&&l--,E<0)k.push(1),p=!0;else{for(A=S.length,O=R.length,f=0,E+=2,(h=s(u/(R[0]+1)))>1&&(R=e(R,h,u),S=e(S,h,u),O=R.length,A=S.length),I=O,_=(g=S.slice(0,O)).length;_=u/2&&T++;do{if(h=0,(c=t(R,g,O,_))<0){if(w=g[0],O!=_&&(w=w*u+(g[1]||0)),(h=s(w/T))>1)for(h>=u&&(h=u-1),b=(m=e(R,h,u)).length,_=g.length;1==t(m,g,b,_);)h--,n(m,O=10;E/=10,f++);H(v,a+(v.e=f+14*l-1)+1,i,p)}else v.e=l,v.r=+p;return v}}(),w=/^(-?)0([xbo])(?=\w[\w.]*$)/i,I=/^([^.]+)\.$/,A=/^\.([^.]+)$/,T=/^-?(Infinity|NaN)$/,O=/^\s*\+(?=[\w.])|^\s+|\s+$/g,a=function(e,t,n,r){var o,a=n?t:t.replace(O,"");if(T.test(a))e.s=isNaN(a)?null:a<0?-1:1;else{if(!n&&(a=a.replace(w,(function(e,t,n){return o="x"==(n=n.toLowerCase())?16:"b"==n?2:8,r&&r!=o?e:t})),r&&(o=r,a=a.replace(I,"$1").replace(A,"0.$1")),t!=a))return new G(a,o);if(G.DEBUG)throw Error(l+"Not a"+(r?" base "+r:"")+" number: "+t);e.s=null}e.c=e.e=null},P.absoluteValue=P.abs=function(){var e=new G(this);return e.s<0&&(e.s=1),e},P.comparedTo=function(e,t){return b(this,new G(e,t))},P.decimalPlaces=P.dp=function(e,t){var n,r,o,a=this;if(null!=e)return v(e,0,h),null==t?t=R:v(t,0,8),H(new G(a),e+a.e+1,t);if(!(n=a.c))return null;if(r=14*((o=n.length-1)-y(this.e/14)),o=n[o])for(;o%10==0;o/=10,r--);return r<0&&(r=0),r},P.dividedBy=P.div=function(e,t){return n(this,new G(e,t),S,R)},P.dividedToIntegerBy=P.idiv=function(e,t){return n(this,new G(e,t),0,1)},P.exponentiatedBy=P.pow=function(e,t){var n,r,o,a,i,u,f,d,p=this;if((e=new G(e)).c&&!e.isInteger())throw Error(l+"Exponent not an integer: "+V(e));if(null!=t&&(t=new G(t)),i=e.e>14,!p.c||!p.c[0]||1==p.c[0]&&!p.e&&1==p.c.length||!e.c||!e.c[0])return d=new G(Math.pow(+V(p),i?2-k(e):+V(e))),t?d.mod(t):d;if(u=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new G(NaN);(r=!u&&p.isInteger()&&t.isInteger())&&(p=p.mod(t))}else{if(e.e>9&&(p.e>0||p.e<-1||(0==p.e?p.c[0]>1||i&&p.c[1]>=24e7:p.c[0]<8e13||i&&p.c[0]<=9999975e7)))return a=p.s<0&&k(e)?-0:0,p.e>-1&&(a=1/a),new G(u?1/a:a);x&&(a=c(x/14+2))}for(i?(n=new G(.5),u&&(e.s=1),f=k(e)):f=(o=Math.abs(+V(e)))%2,d=new G(E);;){if(f){if(!(d=d.times(p)).c)break;a?d.c.length>a&&(d.c.length=a):r&&(d=d.mod(t))}if(o){if(0===(o=s(o/2)))break;f=o%2}else if(H(e=e.times(n),e.e+1,1),e.e>14)f=k(e);else{if(0===(o=+V(e)))break;f=o%2}p=p.times(p),a?p.c&&p.c.length>a&&(p.c.length=a):r&&(p=p.mod(t))}return r?d:(u&&(d=E.div(d)),t?d.mod(t):a?H(d,x,R,void 0):d)},P.integerValue=function(e){var t=new G(this);return null==e?e=R:v(e,0,8),H(t,t.e+1,e)},P.isEqualTo=P.eq=function(e,t){return 0===b(this,new G(e,t))},P.isFinite=function(){return!!this.c},P.isGreaterThan=P.gt=function(e,t){return b(this,new G(e,t))>0},P.isGreaterThanOrEqualTo=P.gte=function(e,t){return 1===(t=b(this,new G(e,t)))||0===t},P.isInteger=function(){return!!this.c&&y(this.e/14)>this.c.length-2},P.isLessThan=P.lt=function(e,t){return b(this,new G(e,t))<0},P.isLessThanOrEqualTo=P.lte=function(e,t){return-1===(t=b(this,new G(e,t)))||0===t},P.isNaN=function(){return!this.s},P.isNegative=function(){return this.s<0},P.isPositive=function(){return this.s>0},P.isZero=function(){return!!this.c&&0==this.c[0]},P.minus=function(e,t){var n,r,o,a,i=this,u=i.s;if(t=(e=new G(e,t)).s,!u||!t)return new G(NaN);if(u!=t)return e.s=-t,i.plus(e);var c=i.e/14,s=e.e/14,l=i.c,f=e.c;if(!c||!s){if(!l||!f)return l?(e.s=-t,e):new G(f?i:NaN);if(!l[0]||!f[0])return f[0]?(e.s=-t,e):new G(l[0]?i:3==R?-0:0)}if(c=y(c),s=y(s),l=l.slice(),u=c-s){for((a=u<0)?(u=-u,o=l):(s=c,o=f),o.reverse(),t=u;t--;o.push(0));o.reverse()}else for(r=(a=(u=l.length)<(t=f.length))?u:t,u=t=0;t0)for(;t--;l[n++]=0);for(t=d-1;r>u;){if(l[--r]=0;){for(n=0,p=g[o]%1e7,h=g[o]/1e7|0,a=o+(i=c);a>o;)n=((s=p*(s=k[--i]%1e7)+(u=h*s+(l=k[i]/1e7|0)*p)%1e7*1e7+m[a]+n)/b|0)+(u/1e7|0)+h*l,m[a--]=s%b;m[a]=n}return n?++r:m.splice(0,1),Q(e,m,r)},P.negated=function(){var e=new G(this);return e.s=-e.s||null,e},P.plus=function(e,t){var n,r=this,o=r.s;if(t=(e=new G(e,t)).s,!o||!t)return new G(NaN);if(o!=t)return e.s=-t,r.minus(e);var a=r.e/14,i=e.e/14,u=r.c,c=e.c;if(!a||!i){if(!u||!c)return new G(o/0);if(!u[0]||!c[0])return c[0]?e:new G(u[0]?r:0*o)}if(a=y(a),i=y(i),u=u.slice(),o=a-i){for(o>0?(i=a,n=c):(o=-o,n=u),n.reverse();o--;n.push(0));n.reverse()}for((o=u.length)-(t=c.length)<0&&(n=c,c=u,u=n,t=o),o=0;t;)o=(u[--t]=u[t]+c[t]+o)/d|0,u[t]=d===u[t]?0:u[t]%d;return o&&(u=[o].concat(u),++i),Q(e,u,i)},P.precision=P.sd=function(e,t){var n,r,o,a=this;if(null!=e&&e!==!!e)return v(e,1,h),null==t?t=R:v(t,0,8),H(new G(a),e,t);if(!(n=a.c))return null;if(r=14*(o=n.length-1)+1,o=n[o]){for(;o%10==0;o/=10,r--);for(o=n[0];o>=10;o/=10,r++);}return e&&a.e+1>r&&(r=a.e+1),r},P.shiftedBy=function(e){return v(e,-9007199254740991,9007199254740991),this.times("1e"+e)},P.squareRoot=P.sqrt=function(){var e,t,r,o,a,i=this,u=i.c,c=i.s,s=i.e,l=S+4,f=new G("0.5");if(1!==c||!u||!u[0])return new G(!c||c<0&&(!u||u[0])?NaN:u?i:1/0);if(0==(c=Math.sqrt(+V(i)))||c==1/0?(((t=m(u)).length+s)%2==0&&(t+="0"),c=Math.sqrt(+t),s=y((s+1)/2)-(s<0||s%2),r=new G(t=c==1/0?"5e"+s:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+s)):r=new G(c+""),r.c[0])for((c=(s=r.e)+l)<3&&(c=0);;)if(a=r,r=f.times(a.plus(n(i,a,l,1))),m(a.c).slice(0,c)===(t=m(r.c)).slice(0,c)){if(r.e0&&m>0){for(i=m%c||c,d=y.substr(0,i);i0&&(d+=f+y.slice(i)),h&&(d="-"+d)}r=p?d+(n.decimalSeparator||"")+((s=+n.fractionGroupSize)?p.replace(new RegExp("\\d{"+s+"}\\B","g"),"$&"+(n.fractionGroupSeparator||"")):p):d}return(n.prefix||"")+r+(n.suffix||"")},P.toFraction=function(e){var t,r,o,a,i,u,c,s,f,d,h,y,b=this,v=b.c;if(null!=e&&(!(c=new G(e)).isInteger()&&(c.c||1!==c.s)||c.lt(E)))throw Error(l+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+V(c));if(!v)return new G(b);for(t=new G(E),f=r=new G(E),o=s=new G(E),y=m(v),i=t.e=y.length-b.e-1,t.c[0]=p[(u=i%14)<0?14+u:u],e=!e||c.comparedTo(t)>0?i>0?t:f:c,u=B,B=1/0,c=new G(y),s.c[0]=0;d=n(c,t,0,1),1!=(a=r.plus(d.times(o))).comparedTo(e);)r=o,o=a,f=s.plus(d.times(a=f)),s=a,t=c.minus(d.times(a=t)),c=a;return a=n(e.minus(r),o,0,1),s=s.plus(a.times(f)),r=r.plus(a.times(o)),s.s=f.s=b.s,h=n(f,o,i*=2,R).minus(b).abs().comparedTo(n(s,r,i,R).minus(b).abs())<1?[f,o]:[s,r],B=u,h},P.toNumber=function(){return+V(this)},P.toPrecision=function(e,t){return null!=e&&v(e,1,h),K(this,e,t,2)},P.toString=function(e){var t,n=this,o=n.s,a=n.e;return null===a?o?(t="Infinity",o<0&&(t="-"+t)):t="NaN":(null==e?t=a<=D||a>=C?g(m(n.c),a):_(m(n.c),a,"0"):10===e&&L?t=_(m((n=H(new G(n),S+a+1,R)).c),n.e,"0"):(v(e,2,U.length,"Base"),t=r(_(m(n.c),a,"0"),10,e,o,!0)),o<0&&n.c[0]&&(t="-"+t)),t},P.valueOf=P.toJSON=function(){return V(this)},P._isBigNumber=!0,null!=t&&G.set(t),G}()).default=i.BigNumber=i,void 0===(r=function(){return i}.call(t,n,t,e))||(e.exports=r)}()},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(43)),l=r(n(116));function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e,t){(0,i.default)(r,e);var n=f(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i0)},o.Buffer=function(){try{var e=o.inquire("buffer").Buffer;return e.prototype.utf8Write?e:null}catch(e){return null}}(),o._Buffer_from=null,o._Buffer_allocUnsafe=null,o.newBuffer=function(e){return"number"==typeof e?o.Buffer?o._Buffer_allocUnsafe(e):new o.Array(e):o.Buffer?o._Buffer_from(e):"undefined"==typeof Uint8Array?e:new Uint8Array(e)},o.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,o.Long=o.global.dcodeIO&&o.global.dcodeIO.Long||o.global.Long||o.inquire("long"),o.key2Re=/^true|false|0|1$/,o.key32Re=/^-?(?:0|[1-9][0-9]*)$/,o.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,o.longToHash=function(e){return e?o.LongBits.from(e).toHash():o.LongBits.zeroHash},o.longFromHash=function(e,t){var n=o.LongBits.fromHash(e);return o.Long?o.Long.fromBits(n.lo,n.hi,t):n.toNumber(Boolean(t))},o.merge=a,o.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)},o.newError=i,o.ProtocolError=i("ProtocolError"),o.oneOfGetter=function(e){for(var t={},n=0;n-1;--n)if(1===t[e[n]]&&void 0!==this[e[n]]&&null!==this[e[n]])return e[n]}},o.oneOfSetter=function(e){return function(t){for(var n=0;nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(null!=this._minBackoff&&eDate.now())){e.next=10;break}throw new Error("timeout exceeded");case 10:if(u=this._getNodeAccountId(),null!=(s=t._network.getNode(u))){e.next=14;break}throw new Error("NodeAccountId not recognized: ".concat(u.toString()));case 14:return l=s.getChannel(),e.next=17,this._makeRequestAsync();case 17:if(d=e.sent,this._advanceRequest(),p=void 0,s.isHealthy()){e.next=23;break}return e.next=23,s.wait();case 23:return e.prev=23,y=[],null!=this._grpcDeadline&&y.push(new Promise((function(e,t){return setTimeout((function(){return t(new Error("grpc deadline exceeded"))}),b._grpcDeadline)}))),y.push(this._execute(l,d)),e.next=29,Promise.race(y);case 29:p=e.sent,e.next=39;break;case 32:if(e.prev=32,e.t0=e.catch(23),!((m=c.default._fromResponse(e.t0))instanceof c.default&&this._shouldRetryExceptionally(m)&&i<=r)){e.next=38;break}return s.increaseDelay(),e.abrupt("continue",49);case 38:throw e.t0;case 39:s.decreaseDelay(),e.t1=this._shouldRetry(d,p),e.next=e.t1===f.Retry?43:e.t1===f.Finished?46:e.t1===f.Error?47:48;break;case 43:return e.next=45,h(i,this._minBackoff,this._maxBackoff);case 45:return e.abrupt("continue",49);case 46:return e.abrupt("return",this._mapResponse(p,u,d));case 47:throw this._mapStatusError(d,p);case 48:throw new Error("(BUG) non-exhuastive switch statement for `ExecutionState`");case 49:i+=1,e.next=8;break;case 52:case"end":return e.stop()}}),e,this,[[23,32]])}))),function(e,n){return t.apply(this,arguments)})}]),e}();function h(e,t,n){var r=Math.min(Math.floor(t*Math.pow(2,e)),n);return new Promise((function(e){return setTimeout(e,r)}))}t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(71)),i=r(n(41)),u=r(n(1)),c=r(n(2)),s=d(n(168)),l=d(n(36));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=function(){function e(t,n,r){(0,u.default)(this,e);var o=s.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){s.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return s.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{scheduleNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return s.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return l.ScheduleID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return s.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=s.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.scheduleNum?t.scheduleNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.ScheduleID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(s.fromSolidityAddress(t)))}}]),e}();t.default=p},function(e,t,n){"use strict";(function(e){var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.baToJSON=t.toUtf8=t.addHexPrefix=t.toUnsigned=t.fromSigned=t.bufferToHex=t.bufferToInt=t.toBuffer=t.unpadHexString=t.unpadArray=t.unpadBuffer=t.setLengthRight=t.setLengthLeft=t.zeros=t.intToBuffer=t.intToHex=void 0;var o=r(n(10)),a=n(171),i=n(244);t.intToHex=function(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("Received an invalid integer type: "+e);return"0x"+e.toString(16)};t.intToBuffer=function(n){var r=(0,t.intToHex)(n);return e.from((0,a.padToEven)(r.slice(2)),"hex")};t.zeros=function(t){return e.allocUnsafe(t).fill(0)};var u=function(e,n,r){var o=(0,t.zeros)(n);return r?e.length0&&"0"===t.toString();)t=(e=e.slice(1))[0];return e};t.unpadBuffer=function(e){return(0,i.assertIsBuffer)(e),c(e)};t.unpadArray=function(e){return(0,i.assertIsArray)(e),c(e)};t.unpadHexString=function(e){return(0,i.assertIsHexString)(e),e=(0,a.stripHexPrefix)(e),c(e)};t.toBuffer=function(n){if(null==n)return e.allocUnsafe(0);if(e.isBuffer(n))return e.from(n);if(Array.isArray(n)||n instanceof Uint8Array)return e.from(n);if("string"==typeof n){if(!(0,a.isHexString)(n))throw new Error("Cannot convert string to buffer. toBuffer only supports 0x-prefixed hex strings and this string was given: "+n);return e.from((0,a.padToEven)((0,a.stripHexPrefix)(n)),"hex")}if("number"==typeof n)return(0,t.intToBuffer)(n);if(o.default.isBN(n))return n.toArrayLike(e);if(n.toArray)return e.from(n.toArray());if(n.toBuffer)return e.from(n.toBuffer());throw new Error("invalid type")};t.bufferToInt=function(e){return new o.default((0,t.toBuffer)(e)).toNumber()};t.bufferToHex=function(e){return"0x"+(e=(0,t.toBuffer)(e)).toString("hex")};t.fromSigned=function(e){return new o.default(e).fromTwos(256)};t.toUnsigned=function(t){return e.from(t.toTwos(256).toArray())};t.addHexPrefix=function(e){return"string"!=typeof e||(0,a.isHexPrefixed)(e)?e:"0x"+e};t.toUtf8=function(t){if((t=(0,a.stripHexPrefix)(t)).length%2!=0)throw new Error("Invalid non-even hex string input for toUtf8() provided");return e.from(t.replace(/^(00)+|(00)+$/g,""),"hex").toString("utf8")};t.baToJSON=function(n){if(e.isBuffer(n))return"0x"+n.toString("hex");if(n instanceof Array){for(var r=[],o=0;o0||e===t?t:t-1}function m(e){for(var t,n,r=1,o=e.length,a=e[0]+"";rs^n?1:-1;for(u=(c=o.length)<(s=a.length)?c:s,i=0;ia[i]^n?1:-1;return c==s?0:c>s^n?1:-1}function v(e,t,n,r){if(en||e!==s(e))throw Error(l+(r||"Argument")+("number"==typeof e?en?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function k(e){var t=e.c.length-1;return y(e.e/14)==t&&e.c[t]%2!=0}function g(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function _(e,t,n){var r,o;if(t<0){for(o=n+".";++t;o+=n);e=o+e}else if(++t>(r=e.length)){for(o=n,t-=r;--t;o+=n);e+=o}else tB?y.c=y.e=null:e.e=10;l/=10,c++);return void(c>B?y.c=y.e=null:(y.e=c,y.c=[e]))}h=String(e)}else{if(!u.test(h=String(e)))return a(y,h,d);y.s=45==h.charCodeAt(0)?(h=h.slice(1),-1):1}(c=h.indexOf("."))>-1&&(h=h.replace(".","")),(l=h.search(/e/i))>0?(c<0&&(c=l),c+=+h.slice(l+1),h=h.substring(0,l)):c<0&&(c=h.length)}else{if(v(t,2,U.length,"Base"),10==t&&L)return H(y=new G(e),S+y.e+1,R);if(h=String(e),d="number"==typeof e){if(0*e!=0)return a(y,h,d,t);if(y.s=1/e<0?(h=h.slice(1),-1):1,G.DEBUG&&h.replace(/^0\.0*|\./,"").length>15)throw Error(f+e)}else y.s=45===h.charCodeAt(0)?(h=h.slice(1),-1):1;for(n=U.slice(0,t),c=l=0,p=h.length;lc){c=p;continue}}else if(!i&&(h==h.toUpperCase()&&(h=h.toLowerCase())||h==h.toLowerCase()&&(h=h.toUpperCase()))){i=!0,l=-1,c=0;continue}return a(y,String(e),d,t)}d=!1,(c=(h=r(h,t,10,y.s)).indexOf("."))>-1?h=h.replace(".",""):c=h.length}for(l=0;48===h.charCodeAt(l);l++);for(p=h.length;48===h.charCodeAt(--p););if(h=h.slice(l,++p)){if(p-=l,d&&G.DEBUG&&p>15&&(e>9007199254740991||e!==s(e)))throw Error(f+y.s*e);if((c=c-l-1)>B)y.c=y.e=null;else if(c=C)?g(c,i):_(c,i,"0");else if(a=(e=H(new G(e),t,n)).e,u=(c=m(e.c)).length,1==r||2==r&&(t<=a||a<=D)){for(;uu){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=a-u)>0)for(a+1==u&&(c+=".");t--;c+="0");return e.s<0&&o?"-"+c:c}function z(e,t){for(var n,r=1,o=new G(e[0]);r=10;o/=10,r++);return(n=r+14*n-1)>B?e.c=e.e=null:n=10;u/=10,o++);if((a=t-o)<0)a+=14,i=t,h=(l=y[f=0])/m[o-i-1]%10|0;else if((f=c((a+1)/14))>=y.length){if(!r)break e;for(;y.length<=f;y.push(0));l=h=0,o=1,i=(a%=14)-14+1}else{for(l=u=y[f],o=1;u>=10;u/=10,o++);h=(i=(a%=14)-14+o)<0?0:l/m[o-i-1]%10|0}if(r=r||t<0||null!=y[f+1]||(i<0?l:l%m[o-i-1]),r=n<4?(h||r)&&(0==n||n==(e.s<0?3:2)):h>5||5==h&&(4==n||r||6==n&&(a>0?i>0?l/m[o-i]:0:y[f-1])%10&1||n==(e.s<0?8:7)),t<1||!y[0])return y.length=0,r?(t-=e.e+1,y[0]=m[(14-t%14)%14],e.e=-t||0):y[0]=e.e=0,e;if(0==a?(y.length=f,u=1,f--):(y.length=f+1,u=m[14-a],y[f]=i>0?s(l/m[o-i]%m[i])*u:0),r)for(;;){if(0==f){for(a=1,i=y[0];i>=10;i/=10,a++);for(i=y[0]+=u,u=1;i>=10;i/=10,u++);a!=u&&(e.e++,y[0]==d&&(y[0]=1));break}if(y[f]+=u,y[f]!=d)break;y[f--]=0,u=1}for(a=y.length;0===y[--a];y.pop());}e.e>B?e.c=e.e=null:e.e=C?g(t,n):_(t,n,"0"),e.s<0?"-"+t:t)}return G.clone=e,G.ROUND_UP=0,G.ROUND_DOWN=1,G.ROUND_CEIL=2,G.ROUND_FLOOR=3,G.ROUND_HALF_UP=4,G.ROUND_HALF_DOWN=5,G.ROUND_HALF_EVEN=6,G.ROUND_HALF_CEIL=7,G.ROUND_HALF_FLOOR=8,G.EUCLID=9,G.config=G.set=function(e){var t,n;if(null!=e){if("object"!=(0,o.default)(e))throw Error(l+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(v(n=e[t],0,h,t),S=n),e.hasOwnProperty(t="ROUNDING_MODE")&&(v(n=e[t],0,8,t),R=n),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((n=e[t])&&n.pop?(v(n[0],-h,0,t),v(n[1],0,h,t),D=n[0],C=n[1]):(v(n,-h,h,t),D=-(C=n<0?-n:n))),e.hasOwnProperty(t="RANGE"))if((n=e[t])&&n.pop)v(n[0],-h,-1,t),v(n[1],1,h,t),N=n[0],B=n[1];else{if(v(n,-h,h,t),!n)throw Error(l+t+" cannot be zero: "+n);N=-(B=n<0?-n:n)}if(e.hasOwnProperty(t="CRYPTO")){if((n=e[t])!==!!n)throw Error(l+t+" not true or false: "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw M=!n,Error(l+"crypto unavailable");M=n}else M=n}if(e.hasOwnProperty(t="MODULO_MODE")&&(v(n=e[t],0,9,t),j=n),e.hasOwnProperty(t="POW_PRECISION")&&(v(n=e[t],0,h,t),x=n),e.hasOwnProperty(t="FORMAT")){if(n=e[t],"object"!=(0,o.default)(n))throw Error(l+t+" not an object: "+n);F=n}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(n=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(n))throw Error(l+t+" invalid: "+n);L="0123456789"==n.slice(0,10),U=n}}return{DECIMAL_PLACES:S,ROUNDING_MODE:R,EXPONENTIAL_AT:[D,C],RANGE:[N,B],CRYPTO:M,MODULO_MODE:j,POW_PRECISION:x,FORMAT:F,ALPHABET:U}},G.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!G.DEBUG)return!0;var t,n,r=e.c,o=e.e,a=e.s;e:if("[object Array]"=={}.toString.call(r)){if((1===a||-1===a)&&o>=-h&&o<=h&&o===s(o)){if(0===r[0]){if(0===o&&1===r.length)return!0;break e}if((t=(o+1)%14)<1&&(t+=14),String(r[0]).length==t){for(t=0;t=d||n!==s(n))break e;if(0!==n)return!0}}}else if(null===r&&null===o&&(null===a||1===a||-1===a))return!0;throw Error(l+"Invalid BigNumber: "+e)},G.maximum=G.max=function(){return z(arguments,P.lt)},G.minimum=G.min=function(){return z(arguments,P.gt)},G.random=(i=9007199254740992*Math.random()&2097151?function(){return s(9007199254740992*Math.random())}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,n,r,o,a,u=0,f=[],d=new G(E);if(null==e?e=S:v(e,0,h),o=c(e/14),M)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(o*=2));u>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),t[u]=n[0],t[u+1]=n[1]):(f.push(a%1e14),u+=2);u=o/2}else{if(!crypto.randomBytes)throw M=!1,Error(l+"crypto unavailable");for(t=crypto.randomBytes(o*=7);u=9e15?crypto.randomBytes(7).copy(t,u):(f.push(a%1e14),u+=7);u=o/7}if(!M)for(;u=10;a/=10,u++);u<14&&(r-=14-u)}return d.e=r,d.c=f,d}),G.sum=function(){for(var e=1,t=arguments,n=new G(t[0]);en-1&&(null==i[o+1]&&(i[o+1]=0),i[o+1]+=i[o]/n|0,i[o]%=n)}return i.reverse()}return function(t,r,o,a,i){var u,c,s,l,f,d,p,h,y=t.indexOf("."),b=S,v=R;for(y>=0&&(l=x,x=0,t=t.replace(".",""),d=(h=new G(r)).pow(t.length-y),x=l,h.c=e(_(m(d.c),d.e,"0"),10,o,"0123456789"),h.e=h.c.length),s=l=(p=e(t,r,o,i?(u=U,"0123456789"):(u="0123456789",U))).length;0==p[--l];p.pop());if(!p[0])return u.charAt(0);if(y<0?--s:(d.c=p,d.e=s,d.s=a,p=(d=n(d,h,b,v,o)).c,f=d.r,s=d.e),y=p[c=s+b+1],l=o/2,f=f||c<0||null!=p[c+1],f=v<4?(null!=y||f)&&(0==v||v==(d.s<0?3:2)):y>l||y==l&&(4==v||f||6==v&&1&p[c-1]||v==(d.s<0?8:7)),c<1||!p[0])t=f?_(u.charAt(1),-b,u.charAt(0)):u.charAt(0);else{if(p.length=c,f)for(--o;++p[--c]>o;)p[c]=0,c||(++s,p=[1].concat(p));for(l=p.length;!p[--l];);for(y=0,t="";y<=l;t+=u.charAt(p[y++]));t=_(t,s,u.charAt(0))}return t}}(),n=function(){function e(e,t,n){var r,o,a,i,u=0,c=e.length,s=t%1e7,l=t/1e7|0;for(e=e.slice();c--;)u=((o=s*(a=e[c]%1e7)+(r=l*a+(i=e[c]/1e7|0)*s)%1e7*1e7+u)/n|0)+(r/1e7|0)+l*i,e[c]=o%n;return u&&(e=[u].concat(e)),e}function t(e,t,n,r){var o,a;if(n!=r)a=n>r?1:-1;else for(o=a=0;ot[o]?1:-1;break}return a}function n(e,t,n,r){for(var o=0;n--;)e[n]-=o,o=e[n]1;e.splice(0,1));}return function(r,o,a,i,u){var c,l,f,p,h,m,b,v,k,g,_,w,I,A,T,O,P,E=r.s==o.s?1:-1,S=r.c,R=o.c;if(!(S&&S[0]&&R&&R[0]))return new G(r.s&&o.s&&(S?!R||S[0]!=R[0]:R)?S&&0==S[0]||!R?0*E:E/0:NaN);for(k=(v=new G(E)).c=[],E=a+(l=r.e-o.e)+1,u||(u=d,l=y(r.e/14)-y(o.e/14),E=E/14|0),f=0;R[f]==(S[f]||0);f++);if(R[f]>(S[f]||0)&&l--,E<0)k.push(1),p=!0;else{for(A=S.length,O=R.length,f=0,E+=2,(h=s(u/(R[0]+1)))>1&&(R=e(R,h,u),S=e(S,h,u),O=R.length,A=S.length),I=O,_=(g=S.slice(0,O)).length;_=u/2&&T++;do{if(h=0,(c=t(R,g,O,_))<0){if(w=g[0],O!=_&&(w=w*u+(g[1]||0)),(h=s(w/T))>1)for(h>=u&&(h=u-1),b=(m=e(R,h,u)).length,_=g.length;1==t(m,g,b,_);)h--,n(m,O=10;E/=10,f++);H(v,a+(v.e=f+14*l-1)+1,i,p)}else v.e=l,v.r=+p;return v}}(),w=/^(-?)0([xbo])(?=\w[\w.]*$)/i,I=/^([^.]+)\.$/,A=/^\.([^.]+)$/,T=/^-?(Infinity|NaN)$/,O=/^\s*\+(?=[\w.])|^\s+|\s+$/g,a=function(e,t,n,r){var o,a=n?t:t.replace(O,"");if(T.test(a))e.s=isNaN(a)?null:a<0?-1:1;else{if(!n&&(a=a.replace(w,(function(e,t,n){return o="x"==(n=n.toLowerCase())?16:"b"==n?2:8,r&&r!=o?e:t})),r&&(o=r,a=a.replace(I,"$1").replace(A,"0.$1")),t!=a))return new G(a,o);if(G.DEBUG)throw Error(l+"Not a"+(r?" base "+r:"")+" number: "+t);e.s=null}e.c=e.e=null},P.absoluteValue=P.abs=function(){var e=new G(this);return e.s<0&&(e.s=1),e},P.comparedTo=function(e,t){return b(this,new G(e,t))},P.decimalPlaces=P.dp=function(e,t){var n,r,o,a=this;if(null!=e)return v(e,0,h),null==t?t=R:v(t,0,8),H(new G(a),e+a.e+1,t);if(!(n=a.c))return null;if(r=14*((o=n.length-1)-y(this.e/14)),o=n[o])for(;o%10==0;o/=10,r--);return r<0&&(r=0),r},P.dividedBy=P.div=function(e,t){return n(this,new G(e,t),S,R)},P.dividedToIntegerBy=P.idiv=function(e,t){return n(this,new G(e,t),0,1)},P.exponentiatedBy=P.pow=function(e,t){var n,r,o,a,i,u,f,d,p=this;if((e=new G(e)).c&&!e.isInteger())throw Error(l+"Exponent not an integer: "+V(e));if(null!=t&&(t=new G(t)),i=e.e>14,!p.c||!p.c[0]||1==p.c[0]&&!p.e&&1==p.c.length||!e.c||!e.c[0])return d=new G(Math.pow(+V(p),i?2-k(e):+V(e))),t?d.mod(t):d;if(u=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new G(NaN);(r=!u&&p.isInteger()&&t.isInteger())&&(p=p.mod(t))}else{if(e.e>9&&(p.e>0||p.e<-1||(0==p.e?p.c[0]>1||i&&p.c[1]>=24e7:p.c[0]<8e13||i&&p.c[0]<=9999975e7)))return a=p.s<0&&k(e)?-0:0,p.e>-1&&(a=1/a),new G(u?1/a:a);x&&(a=c(x/14+2))}for(i?(n=new G(.5),u&&(e.s=1),f=k(e)):f=(o=Math.abs(+V(e)))%2,d=new G(E);;){if(f){if(!(d=d.times(p)).c)break;a?d.c.length>a&&(d.c.length=a):r&&(d=d.mod(t))}if(o){if(0===(o=s(o/2)))break;f=o%2}else if(H(e=e.times(n),e.e+1,1),e.e>14)f=k(e);else{if(0===(o=+V(e)))break;f=o%2}p=p.times(p),a?p.c&&p.c.length>a&&(p.c.length=a):r&&(p=p.mod(t))}return r?d:(u&&(d=E.div(d)),t?d.mod(t):a?H(d,x,R,void 0):d)},P.integerValue=function(e){var t=new G(this);return null==e?e=R:v(e,0,8),H(t,t.e+1,e)},P.isEqualTo=P.eq=function(e,t){return 0===b(this,new G(e,t))},P.isFinite=function(){return!!this.c},P.isGreaterThan=P.gt=function(e,t){return b(this,new G(e,t))>0},P.isGreaterThanOrEqualTo=P.gte=function(e,t){return 1===(t=b(this,new G(e,t)))||0===t},P.isInteger=function(){return!!this.c&&y(this.e/14)>this.c.length-2},P.isLessThan=P.lt=function(e,t){return b(this,new G(e,t))<0},P.isLessThanOrEqualTo=P.lte=function(e,t){return-1===(t=b(this,new G(e,t)))||0===t},P.isNaN=function(){return!this.s},P.isNegative=function(){return this.s<0},P.isPositive=function(){return this.s>0},P.isZero=function(){return!!this.c&&0==this.c[0]},P.minus=function(e,t){var n,r,o,a,i=this,u=i.s;if(t=(e=new G(e,t)).s,!u||!t)return new G(NaN);if(u!=t)return e.s=-t,i.plus(e);var c=i.e/14,s=e.e/14,l=i.c,f=e.c;if(!c||!s){if(!l||!f)return l?(e.s=-t,e):new G(f?i:NaN);if(!l[0]||!f[0])return f[0]?(e.s=-t,e):new G(l[0]?i:3==R?-0:0)}if(c=y(c),s=y(s),l=l.slice(),u=c-s){for((a=u<0)?(u=-u,o=l):(s=c,o=f),o.reverse(),t=u;t--;o.push(0));o.reverse()}else for(r=(a=(u=l.length)<(t=f.length))?u:t,u=t=0;t0)for(;t--;l[n++]=0);for(t=d-1;r>u;){if(l[--r]=0;){for(n=0,p=g[o]%1e7,h=g[o]/1e7|0,a=o+(i=c);a>o;)n=((s=p*(s=k[--i]%1e7)+(u=h*s+(l=k[i]/1e7|0)*p)%1e7*1e7+m[a]+n)/b|0)+(u/1e7|0)+h*l,m[a--]=s%b;m[a]=n}return n?++r:m.splice(0,1),Q(e,m,r)},P.negated=function(){var e=new G(this);return e.s=-e.s||null,e},P.plus=function(e,t){var n,r=this,o=r.s;if(t=(e=new G(e,t)).s,!o||!t)return new G(NaN);if(o!=t)return e.s=-t,r.minus(e);var a=r.e/14,i=e.e/14,u=r.c,c=e.c;if(!a||!i){if(!u||!c)return new G(o/0);if(!u[0]||!c[0])return c[0]?e:new G(u[0]?r:0*o)}if(a=y(a),i=y(i),u=u.slice(),o=a-i){for(o>0?(i=a,n=c):(o=-o,n=u),n.reverse();o--;n.push(0));n.reverse()}for((o=u.length)-(t=c.length)<0&&(n=c,c=u,u=n,t=o),o=0;t;)o=(u[--t]=u[t]+c[t]+o)/d|0,u[t]=d===u[t]?0:u[t]%d;return o&&(u=[o].concat(u),++i),Q(e,u,i)},P.precision=P.sd=function(e,t){var n,r,o,a=this;if(null!=e&&e!==!!e)return v(e,1,h),null==t?t=R:v(t,0,8),H(new G(a),e,t);if(!(n=a.c))return null;if(r=14*(o=n.length-1)+1,o=n[o]){for(;o%10==0;o/=10,r--);for(o=n[0];o>=10;o/=10,r++);}return e&&a.e+1>r&&(r=a.e+1),r},P.shiftedBy=function(e){return v(e,-9007199254740991,9007199254740991),this.times("1e"+e)},P.squareRoot=P.sqrt=function(){var e,t,r,o,a,i=this,u=i.c,c=i.s,s=i.e,l=S+4,f=new G("0.5");if(1!==c||!u||!u[0])return new G(!c||c<0&&(!u||u[0])?NaN:u?i:1/0);if(0==(c=Math.sqrt(+V(i)))||c==1/0?(((t=m(u)).length+s)%2==0&&(t+="0"),c=Math.sqrt(+t),s=y((s+1)/2)-(s<0||s%2),r=new G(t=c==1/0?"5e"+s:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+s)):r=new G(c+""),r.c[0])for((c=(s=r.e)+l)<3&&(c=0);;)if(a=r,r=f.times(a.plus(n(i,a,l,1))),m(a.c).slice(0,c)===(t=m(r.c)).slice(0,c)){if(r.e0&&m>0){for(i=m%c||c,d=y.substr(0,i);i0&&(d+=f+y.slice(i)),h&&(d="-"+d)}r=p?d+(n.decimalSeparator||"")+((s=+n.fractionGroupSize)?p.replace(new RegExp("\\d{"+s+"}\\B","g"),"$&"+(n.fractionGroupSeparator||"")):p):d}return(n.prefix||"")+r+(n.suffix||"")},P.toFraction=function(e){var t,r,o,a,i,u,c,s,f,d,h,y,b=this,v=b.c;if(null!=e&&(!(c=new G(e)).isInteger()&&(c.c||1!==c.s)||c.lt(E)))throw Error(l+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+V(c));if(!v)return new G(b);for(t=new G(E),f=r=new G(E),o=s=new G(E),y=m(v),i=t.e=y.length-b.e-1,t.c[0]=p[(u=i%14)<0?14+u:u],e=!e||c.comparedTo(t)>0?i>0?t:f:c,u=B,B=1/0,c=new G(y),s.c[0]=0;d=n(c,t,0,1),1!=(a=r.plus(d.times(o))).comparedTo(e);)r=o,o=a,f=s.plus(d.times(a=f)),s=a,t=c.minus(d.times(a=t)),c=a;return a=n(e.minus(r),o,0,1),s=s.plus(a.times(f)),r=r.plus(a.times(o)),s.s=f.s=b.s,h=n(f,o,i*=2,R).minus(b).abs().comparedTo(n(s,r,i,R).minus(b).abs())<1?[f,o]:[s,r],B=u,h},P.toNumber=function(){return+V(this)},P.toPrecision=function(e,t){return null!=e&&v(e,1,h),K(this,e,t,2)},P.toString=function(e){var t,n=this,o=n.s,a=n.e;return null===a?o?(t="Infinity",o<0&&(t="-"+t)):t="NaN":(null==e?t=a<=D||a>=C?g(m(n.c),a):_(m(n.c),a,"0"):10===e&&L?t=_(m((n=H(new G(n),S+a+1,R)).c),n.e,"0"):(v(e,2,U.length,"Base"),t=r(_(m(n.c),a,"0"),10,e,o,!0)),o<0&&n.c[0]&&(t="-"+t)),t},P.valueOf=P.toJSON=function(){return V(this)},P._isBigNumber=!0,null!=t&&G.set(t),G}()).default=i.BigNumber=i,void 0===(r=function(){return i}.call(t,n,t,e))||(e.exports=r)}()},function(e,t,n){"use strict";function r(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=r,r.equal=function(e,t,n){if(e!=t)throw new Error(n||"Assertion failed: "+e+" != "+t)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(45)),l=r(n(123));function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e,t){(0,i.default)(r,e);var n=f(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i0)},o.Buffer=function(){try{var e=o.inquire("buffer").Buffer;return e.prototype.utf8Write?e:null}catch(e){return null}}(),o._Buffer_from=null,o._Buffer_allocUnsafe=null,o.newBuffer=function(e){return"number"==typeof e?o.Buffer?o._Buffer_allocUnsafe(e):new o.Array(e):o.Buffer?o._Buffer_from(e):"undefined"==typeof Uint8Array?e:new Uint8Array(e)},o.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,o.Long=o.global.dcodeIO&&o.global.dcodeIO.Long||o.global.Long||o.inquire("long"),o.key2Re=/^true|false|0|1$/,o.key32Re=/^-?(?:0|[1-9][0-9]*)$/,o.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,o.longToHash=function(e){return e?o.LongBits.from(e).toHash():o.LongBits.zeroHash},o.longFromHash=function(e,t){var n=o.LongBits.fromHash(e);return o.Long?o.Long.fromBits(n.lo,n.hi,t):n.toNumber(Boolean(t))},o.merge=a,o.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)},o.newError=i,o.ProtocolError=i("ProtocolError"),o.oneOfGetter=function(e){for(var t={},n=0;n-1;--n)if(1===t[e[n]]&&void 0!==this[e[n]]&&null!==this[e[n]])return e[n]}},o.oneOfSetter=function(e){return function(t){for(var n=0;nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(null!=this._minBackoff&&eDate.now())){e.next=10;break}throw new Error("timeout exceeded");case 10:if(u=this._getNodeAccountId(),null!=(s=t._network.getNode(u))){e.next=14;break}throw new Error("NodeAccountId not recognized: ".concat(u.toString()));case 14:return l=s.getChannel(),e.next=17,this._makeRequestAsync();case 17:if(d=e.sent,this._advanceRequest(),p=void 0,s.isHealthy()){e.next=23;break}return e.next=23,s.wait();case 23:return e.prev=23,y=[],null!=this._grpcDeadline&&y.push(new Promise((function(e,t){return setTimeout((function(){return t(new Error("grpc deadline exceeded"))}),b._grpcDeadline)}))),y.push(this._execute(l,d)),e.next=29,Promise.race(y);case 29:p=e.sent,e.next=39;break;case 32:if(e.prev=32,e.t0=e.catch(23),!((m=c.default._fromResponse(e.t0))instanceof c.default&&this._shouldRetryExceptionally(m)&&i<=r)){e.next=38;break}return s.increaseDelay(),e.abrupt("continue",49);case 38:throw e.t0;case 39:s.decreaseDelay(),e.t1=this._shouldRetry(d,p),e.next=e.t1===f.Retry?43:e.t1===f.Finished?46:e.t1===f.Error?47:48;break;case 43:return e.next=45,h(i,this._minBackoff,this._maxBackoff);case 45:return e.abrupt("continue",49);case 46:return e.abrupt("return",this._mapResponse(p,u,d));case 47:throw this._mapStatusError(d,p);case 48:throw new Error("(BUG) non-exhuastive switch statement for `ExecutionState`");case 49:i+=1,e.next=8;break;case 52:case"end":return e.stop()}}),e,this,[[23,32]])}))),function(e,n){return t.apply(this,arguments)})}]),e}();function h(e,t,n){var r=Math.min(Math.floor(t*Math.pow(2,e)),n);return new Promise((function(e){return setTimeout(e,r)}))}t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(71)),i=r(n(41)),u=r(n(1)),c=r(n(2)),s=d(n(179)),l=d(n(37));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=function(){function e(t,n,r){(0,u.default)(this,e);var o=s.constructor(t,n,r);this.shard=o.shard,this.realm=o.realm,this.num=o.num,this._checksum=null}return(0,c.default)(e,[{key:"checksum",get:function(){return this._checksum}},{key:"validate",value:function(e){console.warn("Deprecated: Use `validateChecksum` instead"),this.validateChecksum(e)}},{key:"validateChecksum",value:function(e){s.validateChecksum(this.shard,this.realm,this.num,this._checksum,e)}},{key:"toSolidityAddress",value:function(){return s.toSolidityAddress([this.shard,this.realm,this.num])}},{key:"_toProtobuf",value:function(){return{scheduleNum:this.num,shardNum:this.shard,realmNum:this.realm}}},{key:"toString",value:function(){return"".concat(this.shard.toString(),".").concat(this.realm.toString(),".").concat(this.num.toString())}},{key:"toStringWithChecksum",value:function(e){return s.toStringWithChecksum(this.toString(),e)}},{key:"toBytes",value:function(){return l.ScheduleID.encode(this._toProtobuf()).finish()}},{key:"clone",value:function(){var t=new e(this);return t._checksum=this._checksum,t}},{key:"compare",value:function(e){return s.compare([this.shard,this.realm,this.num],[e.shard,e.realm,e.num])}}],[{key:"fromString",value:function(t){var n=s.fromString(t),r=new e(n);return r._checksum=n.checksum,r}},{key:"_fromProtobuf",value:function(t){return new e(null!=t.shardNum?t.shardNum:0,null!=t.realmNum?t.realmNum:0,null!=t.scheduleNum?t.scheduleNum:0)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.ScheduleID.decode(t))}},{key:"fromSolidityAddress",value:function(t){return(0,a.default)(e,(0,i.default)(s.fromSolidityAddress(t)))}}]),e}();t.default=p},function(e,t,n){"use strict";(function(e){var r=function(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0}),t.bufArrToArr=t.arrToBufArr=t.validateNoLeadingZeroes=t.baToJSON=t.toUtf8=t.addHexPrefix=t.toUnsigned=t.fromSigned=t.bufferToHex=t.bufferToInt=t.toBuffer=t.unpadHexString=t.unpadArray=t.unpadBuffer=t.setLengthRight=t.setLengthLeft=t.zeros=t.intToBuffer=t.intToHex=void 0;var a=n(112),i=n(183),u=n(265);t.intToHex=function(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("Received an invalid integer type: ".concat(e));return"0x".concat(e.toString(16))};t.intToBuffer=function(n){var r=(0,t.intToHex)(n);return e.from((0,i.padToEven)(r.slice(2)),"hex")};t.zeros=function(t){return e.allocUnsafe(t).fill(0)};var c=function(e,n,r){var o=(0,t.zeros)(n);return r?e.length0&&"0"===t.toString();)t=(e=e.slice(1))[0];return e};t.unpadBuffer=function(e){return(0,u.assertIsBuffer)(e),s(e)};t.unpadArray=function(e){return(0,u.assertIsArray)(e),s(e)};t.unpadHexString=function(e){return(0,u.assertIsHexString)(e),e=(0,i.stripHexPrefix)(e),s(e)};t.toBuffer=function(n){if(null==n)return e.allocUnsafe(0);if(e.isBuffer(n))return e.from(n);if(Array.isArray(n)||n instanceof Uint8Array)return e.from(n);if("string"==typeof n){if(!(0,i.isHexString)(n))throw new Error("Cannot convert string to buffer. toBuffer only supports 0x-prefixed hex strings and this string was given: ".concat(n));return e.from((0,i.padToEven)((0,i.stripHexPrefix)(n)),"hex")}if("number"==typeof n)return(0,t.intToBuffer)(n);if(a.BN.isBN(n)){if(n.isNeg())throw new Error("Cannot convert negative BN to buffer. Given: ".concat(n));return n.toArrayLike(e)}if(n.toArray)return e.from(n.toArray());if(n.toBuffer)return e.from(n.toBuffer());throw new Error("invalid type")};t.bufferToInt=function(e){return new a.BN((0,t.toBuffer)(e)).toNumber()};t.bufferToHex=function(e){return"0x"+(e=(0,t.toBuffer)(e)).toString("hex")};t.fromSigned=function(e){return new a.BN(e).fromTwos(256)};t.toUnsigned=function(t){return e.from(t.toTwos(256).toArray())};t.addHexPrefix=function(e){return"string"!=typeof e||(0,i.isHexPrefixed)(e)?e:"0x"+e};t.toUtf8=function(t){if((t=(0,i.stripHexPrefix)(t)).length%2!=0)throw new Error("Invalid non-even hex string input for toUtf8() provided");return e.from(t.replace(/^(00)+|(00)+$/g,""),"hex").toString("utf8")};t.baToJSON=function(n){if(e.isBuffer(n))return"0x".concat(n.toString("hex"));if(n instanceof Array){for(var r=[],o=0;o0&&0===s[0])throw new Error("".concat(c," cannot have leading zeroes, received: ").concat(s.toString("hex")))}}catch(e){t={error:e}}finally{try{i&&!i.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}},t.arrToBufArr=function t(n){return Array.isArray(n)?n.map((function(e){return t(e)})):e.from(n)},t.bufArrToArr=function e(t){return Array.isArray(t)?t.map((function(t){return e(t)})):Uint8Array.from(null!=t?t:[])}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";var r,o=n(0)(n(3));!function(a){var i,u=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,c=Math.ceil,s=Math.floor,l="[BigNumber Error] ",f=l+"Number primitive has more than 15 significant digits: ",d=1e14,p=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],h=1e9;function y(e){var t=0|e;return e>0||e===t?t:t-1}function m(e){for(var t,n,r=1,o=e.length,a=e[0]+"";rs^n?1:-1;for(u=(c=o.length)<(s=a.length)?c:s,i=0;ia[i]^n?1:-1;return c==s?0:c>s^n?1:-1}function v(e,t,n,r){if(en||e!==s(e))throw Error(l+(r||"Argument")+("number"==typeof e?en?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function k(e){var t=e.c.length-1;return y(e.e/14)==t&&e.c[t]%2!=0}function g(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function _(e,t,n){var r,o;if(t<0){for(o=n+".";++t;o+=n);e=o+e}else if(++t>(r=e.length)){for(o=n,t-=r;--t;o+=n);e+=o}else tB?y.c=y.e=null:e.e=10;l/=10,c++);return void(c>B?y.c=y.e=null:(y.e=c,y.c=[e]))}h=String(e)}else{if(!u.test(h=String(e)))return a(y,h,d);y.s=45==h.charCodeAt(0)?(h=h.slice(1),-1):1}(c=h.indexOf("."))>-1&&(h=h.replace(".","")),(l=h.search(/e/i))>0?(c<0&&(c=l),c+=+h.slice(l+1),h=h.substring(0,l)):c<0&&(c=h.length)}else{if(v(t,2,U.length,"Base"),10==t&&L)return H(y=new G(e),S+y.e+1,R);if(h=String(e),d="number"==typeof e){if(0*e!=0)return a(y,h,d,t);if(y.s=1/e<0?(h=h.slice(1),-1):1,G.DEBUG&&h.replace(/^0\.0*|\./,"").length>15)throw Error(f+e)}else y.s=45===h.charCodeAt(0)?(h=h.slice(1),-1):1;for(n=U.slice(0,t),c=l=0,p=h.length;lc){c=p;continue}}else if(!i&&(h==h.toUpperCase()&&(h=h.toLowerCase())||h==h.toLowerCase()&&(h=h.toUpperCase()))){i=!0,l=-1,c=0;continue}return a(y,String(e),d,t)}d=!1,(c=(h=r(h,t,10,y.s)).indexOf("."))>-1?h=h.replace(".",""):c=h.length}for(l=0;48===h.charCodeAt(l);l++);for(p=h.length;48===h.charCodeAt(--p););if(h=h.slice(l,++p)){if(p-=l,d&&G.DEBUG&&p>15&&(e>9007199254740991||e!==s(e)))throw Error(f+y.s*e);if((c=c-l-1)>B)y.c=y.e=null;else if(c=C)?g(c,i):_(c,i,"0");else if(a=(e=H(new G(e),t,n)).e,u=(c=m(e.c)).length,1==r||2==r&&(t<=a||a<=D)){for(;uu){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=a-u)>0)for(a+1==u&&(c+=".");t--;c+="0");return e.s<0&&o?"-"+c:c}function z(e,t){for(var n,r=1,o=new G(e[0]);r=10;o/=10,r++);return(n=r+14*n-1)>B?e.c=e.e=null:n=10;u/=10,o++);if((a=t-o)<0)a+=14,i=t,h=(l=y[f=0])/m[o-i-1]%10|0;else if((f=c((a+1)/14))>=y.length){if(!r)break e;for(;y.length<=f;y.push(0));l=h=0,o=1,i=(a%=14)-14+1}else{for(l=u=y[f],o=1;u>=10;u/=10,o++);h=(i=(a%=14)-14+o)<0?0:l/m[o-i-1]%10|0}if(r=r||t<0||null!=y[f+1]||(i<0?l:l%m[o-i-1]),r=n<4?(h||r)&&(0==n||n==(e.s<0?3:2)):h>5||5==h&&(4==n||r||6==n&&(a>0?i>0?l/m[o-i]:0:y[f-1])%10&1||n==(e.s<0?8:7)),t<1||!y[0])return y.length=0,r?(t-=e.e+1,y[0]=m[(14-t%14)%14],e.e=-t||0):y[0]=e.e=0,e;if(0==a?(y.length=f,u=1,f--):(y.length=f+1,u=m[14-a],y[f]=i>0?s(l/m[o-i]%m[i])*u:0),r)for(;;){if(0==f){for(a=1,i=y[0];i>=10;i/=10,a++);for(i=y[0]+=u,u=1;i>=10;i/=10,u++);a!=u&&(e.e++,y[0]==d&&(y[0]=1));break}if(y[f]+=u,y[f]!=d)break;y[f--]=0,u=1}for(a=y.length;0===y[--a];y.pop());}e.e>B?e.c=e.e=null:e.e=C?g(t,n):_(t,n,"0"),e.s<0?"-"+t:t)}return G.clone=e,G.ROUND_UP=0,G.ROUND_DOWN=1,G.ROUND_CEIL=2,G.ROUND_FLOOR=3,G.ROUND_HALF_UP=4,G.ROUND_HALF_DOWN=5,G.ROUND_HALF_EVEN=6,G.ROUND_HALF_CEIL=7,G.ROUND_HALF_FLOOR=8,G.EUCLID=9,G.config=G.set=function(e){var t,n;if(null!=e){if("object"!=(0,o.default)(e))throw Error(l+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(v(n=e[t],0,h,t),S=n),e.hasOwnProperty(t="ROUNDING_MODE")&&(v(n=e[t],0,8,t),R=n),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((n=e[t])&&n.pop?(v(n[0],-h,0,t),v(n[1],0,h,t),D=n[0],C=n[1]):(v(n,-h,h,t),D=-(C=n<0?-n:n))),e.hasOwnProperty(t="RANGE"))if((n=e[t])&&n.pop)v(n[0],-h,-1,t),v(n[1],1,h,t),N=n[0],B=n[1];else{if(v(n,-h,h,t),!n)throw Error(l+t+" cannot be zero: "+n);N=-(B=n<0?-n:n)}if(e.hasOwnProperty(t="CRYPTO")){if((n=e[t])!==!!n)throw Error(l+t+" not true or false: "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw M=!n,Error(l+"crypto unavailable");M=n}else M=n}if(e.hasOwnProperty(t="MODULO_MODE")&&(v(n=e[t],0,9,t),j=n),e.hasOwnProperty(t="POW_PRECISION")&&(v(n=e[t],0,h,t),x=n),e.hasOwnProperty(t="FORMAT")){if(n=e[t],"object"!=(0,o.default)(n))throw Error(l+t+" not an object: "+n);F=n}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(n=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(n))throw Error(l+t+" invalid: "+n);L="0123456789"==n.slice(0,10),U=n}}return{DECIMAL_PLACES:S,ROUNDING_MODE:R,EXPONENTIAL_AT:[D,C],RANGE:[N,B],CRYPTO:M,MODULO_MODE:j,POW_PRECISION:x,FORMAT:F,ALPHABET:U}},G.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!G.DEBUG)return!0;var t,n,r=e.c,o=e.e,a=e.s;e:if("[object Array]"=={}.toString.call(r)){if((1===a||-1===a)&&o>=-h&&o<=h&&o===s(o)){if(0===r[0]){if(0===o&&1===r.length)return!0;break e}if((t=(o+1)%14)<1&&(t+=14),String(r[0]).length==t){for(t=0;t=d||n!==s(n))break e;if(0!==n)return!0}}}else if(null===r&&null===o&&(null===a||1===a||-1===a))return!0;throw Error(l+"Invalid BigNumber: "+e)},G.maximum=G.max=function(){return z(arguments,P.lt)},G.minimum=G.min=function(){return z(arguments,P.gt)},G.random=(i=9007199254740992*Math.random()&2097151?function(){return s(9007199254740992*Math.random())}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,n,r,o,a,u=0,f=[],d=new G(E);if(null==e?e=S:v(e,0,h),o=c(e/14),M)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(o*=2));u>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),t[u]=n[0],t[u+1]=n[1]):(f.push(a%1e14),u+=2);u=o/2}else{if(!crypto.randomBytes)throw M=!1,Error(l+"crypto unavailable");for(t=crypto.randomBytes(o*=7);u=9e15?crypto.randomBytes(7).copy(t,u):(f.push(a%1e14),u+=7);u=o/7}if(!M)for(;u=10;a/=10,u++);u<14&&(r-=14-u)}return d.e=r,d.c=f,d}),G.sum=function(){for(var e=1,t=arguments,n=new G(t[0]);en-1&&(null==i[o+1]&&(i[o+1]=0),i[o+1]+=i[o]/n|0,i[o]%=n)}return i.reverse()}return function(t,r,o,a,i){var u,c,s,l,f,d,p,h,y=t.indexOf("."),b=S,v=R;for(y>=0&&(l=x,x=0,t=t.replace(".",""),d=(h=new G(r)).pow(t.length-y),x=l,h.c=e(_(m(d.c),d.e,"0"),10,o,"0123456789"),h.e=h.c.length),s=l=(p=e(t,r,o,i?(u=U,"0123456789"):(u="0123456789",U))).length;0==p[--l];p.pop());if(!p[0])return u.charAt(0);if(y<0?--s:(d.c=p,d.e=s,d.s=a,p=(d=n(d,h,b,v,o)).c,f=d.r,s=d.e),y=p[c=s+b+1],l=o/2,f=f||c<0||null!=p[c+1],f=v<4?(null!=y||f)&&(0==v||v==(d.s<0?3:2)):y>l||y==l&&(4==v||f||6==v&&1&p[c-1]||v==(d.s<0?8:7)),c<1||!p[0])t=f?_(u.charAt(1),-b,u.charAt(0)):u.charAt(0);else{if(p.length=c,f)for(--o;++p[--c]>o;)p[c]=0,c||(++s,p=[1].concat(p));for(l=p.length;!p[--l];);for(y=0,t="";y<=l;t+=u.charAt(p[y++]));t=_(t,s,u.charAt(0))}return t}}(),n=function(){function e(e,t,n){var r,o,a,i,u=0,c=e.length,s=t%1e7,l=t/1e7|0;for(e=e.slice();c--;)u=((o=s*(a=e[c]%1e7)+(r=l*a+(i=e[c]/1e7|0)*s)%1e7*1e7+u)/n|0)+(r/1e7|0)+l*i,e[c]=o%n;return u&&(e=[u].concat(e)),e}function t(e,t,n,r){var o,a;if(n!=r)a=n>r?1:-1;else for(o=a=0;ot[o]?1:-1;break}return a}function n(e,t,n,r){for(var o=0;n--;)e[n]-=o,o=e[n]1;e.splice(0,1));}return function(r,o,a,i,u){var c,l,f,p,h,m,b,v,k,g,_,w,I,A,T,O,P,E=r.s==o.s?1:-1,S=r.c,R=o.c;if(!(S&&S[0]&&R&&R[0]))return new G(r.s&&o.s&&(S?!R||S[0]!=R[0]:R)?S&&0==S[0]||!R?0*E:E/0:NaN);for(k=(v=new G(E)).c=[],E=a+(l=r.e-o.e)+1,u||(u=d,l=y(r.e/14)-y(o.e/14),E=E/14|0),f=0;R[f]==(S[f]||0);f++);if(R[f]>(S[f]||0)&&l--,E<0)k.push(1),p=!0;else{for(A=S.length,O=R.length,f=0,E+=2,(h=s(u/(R[0]+1)))>1&&(R=e(R,h,u),S=e(S,h,u),O=R.length,A=S.length),I=O,_=(g=S.slice(0,O)).length;_=u/2&&T++;do{if(h=0,(c=t(R,g,O,_))<0){if(w=g[0],O!=_&&(w=w*u+(g[1]||0)),(h=s(w/T))>1)for(h>=u&&(h=u-1),b=(m=e(R,h,u)).length,_=g.length;1==t(m,g,b,_);)h--,n(m,O=10;E/=10,f++);H(v,a+(v.e=f+14*l-1)+1,i,p)}else v.e=l,v.r=+p;return v}}(),w=/^(-?)0([xbo])(?=\w[\w.]*$)/i,I=/^([^.]+)\.$/,A=/^\.([^.]+)$/,T=/^-?(Infinity|NaN)$/,O=/^\s*\+(?=[\w.])|^\s+|\s+$/g,a=function(e,t,n,r){var o,a=n?t:t.replace(O,"");if(T.test(a))e.s=isNaN(a)?null:a<0?-1:1;else{if(!n&&(a=a.replace(w,(function(e,t,n){return o="x"==(n=n.toLowerCase())?16:"b"==n?2:8,r&&r!=o?e:t})),r&&(o=r,a=a.replace(I,"$1").replace(A,"0.$1")),t!=a))return new G(a,o);if(G.DEBUG)throw Error(l+"Not a"+(r?" base "+r:"")+" number: "+t);e.s=null}e.c=e.e=null},P.absoluteValue=P.abs=function(){var e=new G(this);return e.s<0&&(e.s=1),e},P.comparedTo=function(e,t){return b(this,new G(e,t))},P.decimalPlaces=P.dp=function(e,t){var n,r,o,a=this;if(null!=e)return v(e,0,h),null==t?t=R:v(t,0,8),H(new G(a),e+a.e+1,t);if(!(n=a.c))return null;if(r=14*((o=n.length-1)-y(this.e/14)),o=n[o])for(;o%10==0;o/=10,r--);return r<0&&(r=0),r},P.dividedBy=P.div=function(e,t){return n(this,new G(e,t),S,R)},P.dividedToIntegerBy=P.idiv=function(e,t){return n(this,new G(e,t),0,1)},P.exponentiatedBy=P.pow=function(e,t){var n,r,o,a,i,u,f,d,p=this;if((e=new G(e)).c&&!e.isInteger())throw Error(l+"Exponent not an integer: "+V(e));if(null!=t&&(t=new G(t)),i=e.e>14,!p.c||!p.c[0]||1==p.c[0]&&!p.e&&1==p.c.length||!e.c||!e.c[0])return d=new G(Math.pow(+V(p),i?2-k(e):+V(e))),t?d.mod(t):d;if(u=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new G(NaN);(r=!u&&p.isInteger()&&t.isInteger())&&(p=p.mod(t))}else{if(e.e>9&&(p.e>0||p.e<-1||(0==p.e?p.c[0]>1||i&&p.c[1]>=24e7:p.c[0]<8e13||i&&p.c[0]<=9999975e7)))return a=p.s<0&&k(e)?-0:0,p.e>-1&&(a=1/a),new G(u?1/a:a);x&&(a=c(x/14+2))}for(i?(n=new G(.5),u&&(e.s=1),f=k(e)):f=(o=Math.abs(+V(e)))%2,d=new G(E);;){if(f){if(!(d=d.times(p)).c)break;a?d.c.length>a&&(d.c.length=a):r&&(d=d.mod(t))}if(o){if(0===(o=s(o/2)))break;f=o%2}else if(H(e=e.times(n),e.e+1,1),e.e>14)f=k(e);else{if(0===(o=+V(e)))break;f=o%2}p=p.times(p),a?p.c&&p.c.length>a&&(p.c.length=a):r&&(p=p.mod(t))}return r?d:(u&&(d=E.div(d)),t?d.mod(t):a?H(d,x,R,void 0):d)},P.integerValue=function(e){var t=new G(this);return null==e?e=R:v(e,0,8),H(t,t.e+1,e)},P.isEqualTo=P.eq=function(e,t){return 0===b(this,new G(e,t))},P.isFinite=function(){return!!this.c},P.isGreaterThan=P.gt=function(e,t){return b(this,new G(e,t))>0},P.isGreaterThanOrEqualTo=P.gte=function(e,t){return 1===(t=b(this,new G(e,t)))||0===t},P.isInteger=function(){return!!this.c&&y(this.e/14)>this.c.length-2},P.isLessThan=P.lt=function(e,t){return b(this,new G(e,t))<0},P.isLessThanOrEqualTo=P.lte=function(e,t){return-1===(t=b(this,new G(e,t)))||0===t},P.isNaN=function(){return!this.s},P.isNegative=function(){return this.s<0},P.isPositive=function(){return this.s>0},P.isZero=function(){return!!this.c&&0==this.c[0]},P.minus=function(e,t){var n,r,o,a,i=this,u=i.s;if(t=(e=new G(e,t)).s,!u||!t)return new G(NaN);if(u!=t)return e.s=-t,i.plus(e);var c=i.e/14,s=e.e/14,l=i.c,f=e.c;if(!c||!s){if(!l||!f)return l?(e.s=-t,e):new G(f?i:NaN);if(!l[0]||!f[0])return f[0]?(e.s=-t,e):new G(l[0]?i:3==R?-0:0)}if(c=y(c),s=y(s),l=l.slice(),u=c-s){for((a=u<0)?(u=-u,o=l):(s=c,o=f),o.reverse(),t=u;t--;o.push(0));o.reverse()}else for(r=(a=(u=l.length)<(t=f.length))?u:t,u=t=0;t0)for(;t--;l[n++]=0);for(t=d-1;r>u;){if(l[--r]=0;){for(n=0,p=g[o]%1e7,h=g[o]/1e7|0,a=o+(i=c);a>o;)n=((s=p*(s=k[--i]%1e7)+(u=h*s+(l=k[i]/1e7|0)*p)%1e7*1e7+m[a]+n)/b|0)+(u/1e7|0)+h*l,m[a--]=s%b;m[a]=n}return n?++r:m.splice(0,1),Q(e,m,r)},P.negated=function(){var e=new G(this);return e.s=-e.s||null,e},P.plus=function(e,t){var n,r=this,o=r.s;if(t=(e=new G(e,t)).s,!o||!t)return new G(NaN);if(o!=t)return e.s=-t,r.minus(e);var a=r.e/14,i=e.e/14,u=r.c,c=e.c;if(!a||!i){if(!u||!c)return new G(o/0);if(!u[0]||!c[0])return c[0]?e:new G(u[0]?r:0*o)}if(a=y(a),i=y(i),u=u.slice(),o=a-i){for(o>0?(i=a,n=c):(o=-o,n=u),n.reverse();o--;n.push(0));n.reverse()}for((o=u.length)-(t=c.length)<0&&(n=c,c=u,u=n,t=o),o=0;t;)o=(u[--t]=u[t]+c[t]+o)/d|0,u[t]=d===u[t]?0:u[t]%d;return o&&(u=[o].concat(u),++i),Q(e,u,i)},P.precision=P.sd=function(e,t){var n,r,o,a=this;if(null!=e&&e!==!!e)return v(e,1,h),null==t?t=R:v(t,0,8),H(new G(a),e,t);if(!(n=a.c))return null;if(r=14*(o=n.length-1)+1,o=n[o]){for(;o%10==0;o/=10,r--);for(o=n[0];o>=10;o/=10,r++);}return e&&a.e+1>r&&(r=a.e+1),r},P.shiftedBy=function(e){return v(e,-9007199254740991,9007199254740991),this.times("1e"+e)},P.squareRoot=P.sqrt=function(){var e,t,r,o,a,i=this,u=i.c,c=i.s,s=i.e,l=S+4,f=new G("0.5");if(1!==c||!u||!u[0])return new G(!c||c<0&&(!u||u[0])?NaN:u?i:1/0);if(0==(c=Math.sqrt(+V(i)))||c==1/0?(((t=m(u)).length+s)%2==0&&(t+="0"),c=Math.sqrt(+t),s=y((s+1)/2)-(s<0||s%2),r=new G(t=c==1/0?"5e"+s:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+s)):r=new G(c+""),r.c[0])for((c=(s=r.e)+l)<3&&(c=0);;)if(a=r,r=f.times(a.plus(n(i,a,l,1))),m(a.c).slice(0,c)===(t=m(r.c)).slice(0,c)){if(r.e0&&m>0){for(i=m%c||c,d=y.substr(0,i);i0&&(d+=f+y.slice(i)),h&&(d="-"+d)}r=p?d+(n.decimalSeparator||"")+((s=+n.fractionGroupSize)?p.replace(new RegExp("\\d{"+s+"}\\B","g"),"$&"+(n.fractionGroupSeparator||"")):p):d}return(n.prefix||"")+r+(n.suffix||"")},P.toFraction=function(e){var t,r,o,a,i,u,c,s,f,d,h,y,b=this,v=b.c;if(null!=e&&(!(c=new G(e)).isInteger()&&(c.c||1!==c.s)||c.lt(E)))throw Error(l+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+V(c));if(!v)return new G(b);for(t=new G(E),f=r=new G(E),o=s=new G(E),y=m(v),i=t.e=y.length-b.e-1,t.c[0]=p[(u=i%14)<0?14+u:u],e=!e||c.comparedTo(t)>0?i>0?t:f:c,u=B,B=1/0,c=new G(y),s.c[0]=0;d=n(c,t,0,1),1!=(a=r.plus(d.times(o))).comparedTo(e);)r=o,o=a,f=s.plus(d.times(a=f)),s=a,t=c.minus(d.times(a=t)),c=a;return a=n(e.minus(r),o,0,1),s=s.plus(a.times(f)),r=r.plus(a.times(o)),s.s=f.s=b.s,h=n(f,o,i*=2,R).minus(b).abs().comparedTo(n(s,r,i,R).minus(b).abs())<1?[f,o]:[s,r],B=u,h},P.toNumber=function(){return+V(this)},P.toPrecision=function(e,t){return null!=e&&v(e,1,h),K(this,e,t,2)},P.toString=function(e){var t,n=this,o=n.s,a=n.e;return null===a?o?(t="Infinity",o<0&&(t="-"+t)):t="NaN":(null==e?t=a<=D||a>=C?g(m(n.c),a):_(m(n.c),a,"0"):10===e&&L?t=_(m((n=H(new G(n),S+a+1,R)).c),n.e,"0"):(v(e,2,U.length,"Base"),t=r(_(m(n.c),a,"0"),10,e,o,!0)),o<0&&n.c[0]&&(t="-"+t)),t},P.valueOf=P.toJSON=function(){return V(this)},P._isBigNumber=!0,null!=t&&G.set(t),G}()).default=i.BigNumber=i,void 0===(r=function(){return i}.call(t,n,t,e))||(e.exports=r)}()},function(e,t,n){"use strict";function r(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=r,r.equal=function(e,t,n){if(e!=t)throw new Error(n||"Assertion failed: "+e+" != "+t)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(47)),l=r(n(126));function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e,t){(0,i.default)(r,e);var n=f(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i0)},o.Buffer=function(){try{var e=o.inquire("buffer").Buffer;return e.prototype.utf8Write?e:null}catch(e){return null}}(),o._Buffer_from=null,o._Buffer_allocUnsafe=null,o.newBuffer=function(e){return"number"==typeof e?o.Buffer?o._Buffer_allocUnsafe(e):new o.Array(e):o.Buffer?o._Buffer_from(e):"undefined"==typeof Uint8Array?e:new Uint8Array(e)},o.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,o.Long=o.global.dcodeIO&&o.global.dcodeIO.Long||o.global.Long||o.inquire("long"),o.key2Re=/^true|false|0|1$/,o.key32Re=/^-?(?:0|[1-9][0-9]*)$/,o.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,o.longToHash=function(e){return e?o.LongBits.from(e).toHash():o.LongBits.zeroHash},o.longFromHash=function(e,t){var n=o.LongBits.fromHash(e);return o.Long?o.Long.fromBits(n.lo,n.hi,t):n.toNumber(Boolean(t))},o.merge=a,o.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)},o.newError=i,o.ProtocolError=i("ProtocolError"),o.oneOfGetter=function(e){for(var t={},n=0;n-1;--n)if(1===t[e[n]]&&void 0!==this[e[n]]&&null!==this[e[n]])return e[n]}},o.oneOfSetter=function(e){return function(t){for(var n=0;n0||e===t?t:t-1}function m(e){for(var t,n,r=1,o=e.length,a=e[0]+"";rs^n?1:-1;for(u=(c=o.length)<(s=a.length)?c:s,i=0;ia[i]^n?1:-1;return c==s?0:c>s^n?1:-1}function v(e,t,n,r){if(en||e!==s(e))throw Error(l+(r||"Argument")+("number"==typeof e?en?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function k(e){var t=e.c.length-1;return y(e.e/14)==t&&e.c[t]%2!=0}function g(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function _(e,t,n){var r,o;if(t<0){for(o=n+".";++t;o+=n);e=o+e}else if(++t>(r=e.length)){for(o=n,t-=r;--t;o+=n);e+=o}else tB?y.c=y.e=null:e.e=10;l/=10,c++);return void(c>B?y.c=y.e=null:(y.e=c,y.c=[e]))}h=String(e)}else{if(!u.test(h=String(e)))return a(y,h,d);y.s=45==h.charCodeAt(0)?(h=h.slice(1),-1):1}(c=h.indexOf("."))>-1&&(h=h.replace(".","")),(l=h.search(/e/i))>0?(c<0&&(c=l),c+=+h.slice(l+1),h=h.substring(0,l)):c<0&&(c=h.length)}else{if(v(t,2,U.length,"Base"),10==t&&L)return H(y=new G(e),S+y.e+1,R);if(h=String(e),d="number"==typeof e){if(0*e!=0)return a(y,h,d,t);if(y.s=1/e<0?(h=h.slice(1),-1):1,G.DEBUG&&h.replace(/^0\.0*|\./,"").length>15)throw Error(f+e)}else y.s=45===h.charCodeAt(0)?(h=h.slice(1),-1):1;for(n=U.slice(0,t),c=l=0,p=h.length;lc){c=p;continue}}else if(!i&&(h==h.toUpperCase()&&(h=h.toLowerCase())||h==h.toLowerCase()&&(h=h.toUpperCase()))){i=!0,l=-1,c=0;continue}return a(y,String(e),d,t)}d=!1,(c=(h=r(h,t,10,y.s)).indexOf("."))>-1?h=h.replace(".",""):c=h.length}for(l=0;48===h.charCodeAt(l);l++);for(p=h.length;48===h.charCodeAt(--p););if(h=h.slice(l,++p)){if(p-=l,d&&G.DEBUG&&p>15&&(e>9007199254740991||e!==s(e)))throw Error(f+y.s*e);if((c=c-l-1)>B)y.c=y.e=null;else if(c=C)?g(c,i):_(c,i,"0");else if(a=(e=H(new G(e),t,n)).e,u=(c=m(e.c)).length,1==r||2==r&&(t<=a||a<=D)){for(;uu){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=a-u)>0)for(a+1==u&&(c+=".");t--;c+="0");return e.s<0&&o?"-"+c:c}function z(e,t){for(var n,r=1,o=new G(e[0]);r=10;o/=10,r++);return(n=r+14*n-1)>B?e.c=e.e=null:n=10;u/=10,o++);if((a=t-o)<0)a+=14,i=t,h=(l=y[f=0])/m[o-i-1]%10|0;else if((f=c((a+1)/14))>=y.length){if(!r)break e;for(;y.length<=f;y.push(0));l=h=0,o=1,i=(a%=14)-14+1}else{for(l=u=y[f],o=1;u>=10;u/=10,o++);h=(i=(a%=14)-14+o)<0?0:l/m[o-i-1]%10|0}if(r=r||t<0||null!=y[f+1]||(i<0?l:l%m[o-i-1]),r=n<4?(h||r)&&(0==n||n==(e.s<0?3:2)):h>5||5==h&&(4==n||r||6==n&&(a>0?i>0?l/m[o-i]:0:y[f-1])%10&1||n==(e.s<0?8:7)),t<1||!y[0])return y.length=0,r?(t-=e.e+1,y[0]=m[(14-t%14)%14],e.e=-t||0):y[0]=e.e=0,e;if(0==a?(y.length=f,u=1,f--):(y.length=f+1,u=m[14-a],y[f]=i>0?s(l/m[o-i]%m[i])*u:0),r)for(;;){if(0==f){for(a=1,i=y[0];i>=10;i/=10,a++);for(i=y[0]+=u,u=1;i>=10;i/=10,u++);a!=u&&(e.e++,y[0]==d&&(y[0]=1));break}if(y[f]+=u,y[f]!=d)break;y[f--]=0,u=1}for(a=y.length;0===y[--a];y.pop());}e.e>B?e.c=e.e=null:e.e=C?g(t,n):_(t,n,"0"),e.s<0?"-"+t:t)}return G.clone=e,G.ROUND_UP=0,G.ROUND_DOWN=1,G.ROUND_CEIL=2,G.ROUND_FLOOR=3,G.ROUND_HALF_UP=4,G.ROUND_HALF_DOWN=5,G.ROUND_HALF_EVEN=6,G.ROUND_HALF_CEIL=7,G.ROUND_HALF_FLOOR=8,G.EUCLID=9,G.config=G.set=function(e){var t,n;if(null!=e){if("object"!=(0,o.default)(e))throw Error(l+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(v(n=e[t],0,h,t),S=n),e.hasOwnProperty(t="ROUNDING_MODE")&&(v(n=e[t],0,8,t),R=n),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((n=e[t])&&n.pop?(v(n[0],-h,0,t),v(n[1],0,h,t),D=n[0],C=n[1]):(v(n,-h,h,t),D=-(C=n<0?-n:n))),e.hasOwnProperty(t="RANGE"))if((n=e[t])&&n.pop)v(n[0],-h,-1,t),v(n[1],1,h,t),N=n[0],B=n[1];else{if(v(n,-h,h,t),!n)throw Error(l+t+" cannot be zero: "+n);N=-(B=n<0?-n:n)}if(e.hasOwnProperty(t="CRYPTO")){if((n=e[t])!==!!n)throw Error(l+t+" not true or false: "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw M=!n,Error(l+"crypto unavailable");M=n}else M=n}if(e.hasOwnProperty(t="MODULO_MODE")&&(v(n=e[t],0,9,t),j=n),e.hasOwnProperty(t="POW_PRECISION")&&(v(n=e[t],0,h,t),x=n),e.hasOwnProperty(t="FORMAT")){if(n=e[t],"object"!=(0,o.default)(n))throw Error(l+t+" not an object: "+n);F=n}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(n=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(n))throw Error(l+t+" invalid: "+n);L="0123456789"==n.slice(0,10),U=n}}return{DECIMAL_PLACES:S,ROUNDING_MODE:R,EXPONENTIAL_AT:[D,C],RANGE:[N,B],CRYPTO:M,MODULO_MODE:j,POW_PRECISION:x,FORMAT:F,ALPHABET:U}},G.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!G.DEBUG)return!0;var t,n,r=e.c,o=e.e,a=e.s;e:if("[object Array]"=={}.toString.call(r)){if((1===a||-1===a)&&o>=-h&&o<=h&&o===s(o)){if(0===r[0]){if(0===o&&1===r.length)return!0;break e}if((t=(o+1)%14)<1&&(t+=14),String(r[0]).length==t){for(t=0;t=d||n!==s(n))break e;if(0!==n)return!0}}}else if(null===r&&null===o&&(null===a||1===a||-1===a))return!0;throw Error(l+"Invalid BigNumber: "+e)},G.maximum=G.max=function(){return z(arguments,P.lt)},G.minimum=G.min=function(){return z(arguments,P.gt)},G.random=(i=9007199254740992*Math.random()&2097151?function(){return s(9007199254740992*Math.random())}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,n,r,o,a,u=0,f=[],d=new G(E);if(null==e?e=S:v(e,0,h),o=c(e/14),M)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(o*=2));u>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),t[u]=n[0],t[u+1]=n[1]):(f.push(a%1e14),u+=2);u=o/2}else{if(!crypto.randomBytes)throw M=!1,Error(l+"crypto unavailable");for(t=crypto.randomBytes(o*=7);u=9e15?crypto.randomBytes(7).copy(t,u):(f.push(a%1e14),u+=7);u=o/7}if(!M)for(;u=10;a/=10,u++);u<14&&(r-=14-u)}return d.e=r,d.c=f,d}),G.sum=function(){for(var e=1,t=arguments,n=new G(t[0]);en-1&&(null==i[o+1]&&(i[o+1]=0),i[o+1]+=i[o]/n|0,i[o]%=n)}return i.reverse()}return function(t,r,o,a,i){var u,c,s,l,f,d,p,h,y=t.indexOf("."),b=S,v=R;for(y>=0&&(l=x,x=0,t=t.replace(".",""),d=(h=new G(r)).pow(t.length-y),x=l,h.c=e(_(m(d.c),d.e,"0"),10,o,"0123456789"),h.e=h.c.length),s=l=(p=e(t,r,o,i?(u=U,"0123456789"):(u="0123456789",U))).length;0==p[--l];p.pop());if(!p[0])return u.charAt(0);if(y<0?--s:(d.c=p,d.e=s,d.s=a,p=(d=n(d,h,b,v,o)).c,f=d.r,s=d.e),y=p[c=s+b+1],l=o/2,f=f||c<0||null!=p[c+1],f=v<4?(null!=y||f)&&(0==v||v==(d.s<0?3:2)):y>l||y==l&&(4==v||f||6==v&&1&p[c-1]||v==(d.s<0?8:7)),c<1||!p[0])t=f?_(u.charAt(1),-b,u.charAt(0)):u.charAt(0);else{if(p.length=c,f)for(--o;++p[--c]>o;)p[c]=0,c||(++s,p=[1].concat(p));for(l=p.length;!p[--l];);for(y=0,t="";y<=l;t+=u.charAt(p[y++]));t=_(t,s,u.charAt(0))}return t}}(),n=function(){function e(e,t,n){var r,o,a,i,u=0,c=e.length,s=t%1e7,l=t/1e7|0;for(e=e.slice();c--;)u=((o=s*(a=e[c]%1e7)+(r=l*a+(i=e[c]/1e7|0)*s)%1e7*1e7+u)/n|0)+(r/1e7|0)+l*i,e[c]=o%n;return u&&(e=[u].concat(e)),e}function t(e,t,n,r){var o,a;if(n!=r)a=n>r?1:-1;else for(o=a=0;ot[o]?1:-1;break}return a}function n(e,t,n,r){for(var o=0;n--;)e[n]-=o,o=e[n]1;e.splice(0,1));}return function(r,o,a,i,u){var c,l,f,p,h,m,b,v,k,g,_,w,I,A,T,O,P,E=r.s==o.s?1:-1,S=r.c,R=o.c;if(!(S&&S[0]&&R&&R[0]))return new G(r.s&&o.s&&(S?!R||S[0]!=R[0]:R)?S&&0==S[0]||!R?0*E:E/0:NaN);for(k=(v=new G(E)).c=[],E=a+(l=r.e-o.e)+1,u||(u=d,l=y(r.e/14)-y(o.e/14),E=E/14|0),f=0;R[f]==(S[f]||0);f++);if(R[f]>(S[f]||0)&&l--,E<0)k.push(1),p=!0;else{for(A=S.length,O=R.length,f=0,E+=2,(h=s(u/(R[0]+1)))>1&&(R=e(R,h,u),S=e(S,h,u),O=R.length,A=S.length),I=O,_=(g=S.slice(0,O)).length;_=u/2&&T++;do{if(h=0,(c=t(R,g,O,_))<0){if(w=g[0],O!=_&&(w=w*u+(g[1]||0)),(h=s(w/T))>1)for(h>=u&&(h=u-1),b=(m=e(R,h,u)).length,_=g.length;1==t(m,g,b,_);)h--,n(m,O=10;E/=10,f++);H(v,a+(v.e=f+14*l-1)+1,i,p)}else v.e=l,v.r=+p;return v}}(),w=/^(-?)0([xbo])(?=\w[\w.]*$)/i,I=/^([^.]+)\.$/,A=/^\.([^.]+)$/,T=/^-?(Infinity|NaN)$/,O=/^\s*\+(?=[\w.])|^\s+|\s+$/g,a=function(e,t,n,r){var o,a=n?t:t.replace(O,"");if(T.test(a))e.s=isNaN(a)?null:a<0?-1:1;else{if(!n&&(a=a.replace(w,(function(e,t,n){return o="x"==(n=n.toLowerCase())?16:"b"==n?2:8,r&&r!=o?e:t})),r&&(o=r,a=a.replace(I,"$1").replace(A,"0.$1")),t!=a))return new G(a,o);if(G.DEBUG)throw Error(l+"Not a"+(r?" base "+r:"")+" number: "+t);e.s=null}e.c=e.e=null},P.absoluteValue=P.abs=function(){var e=new G(this);return e.s<0&&(e.s=1),e},P.comparedTo=function(e,t){return b(this,new G(e,t))},P.decimalPlaces=P.dp=function(e,t){var n,r,o,a=this;if(null!=e)return v(e,0,h),null==t?t=R:v(t,0,8),H(new G(a),e+a.e+1,t);if(!(n=a.c))return null;if(r=14*((o=n.length-1)-y(this.e/14)),o=n[o])for(;o%10==0;o/=10,r--);return r<0&&(r=0),r},P.dividedBy=P.div=function(e,t){return n(this,new G(e,t),S,R)},P.dividedToIntegerBy=P.idiv=function(e,t){return n(this,new G(e,t),0,1)},P.exponentiatedBy=P.pow=function(e,t){var n,r,o,a,i,u,f,d,p=this;if((e=new G(e)).c&&!e.isInteger())throw Error(l+"Exponent not an integer: "+V(e));if(null!=t&&(t=new G(t)),i=e.e>14,!p.c||!p.c[0]||1==p.c[0]&&!p.e&&1==p.c.length||!e.c||!e.c[0])return d=new G(Math.pow(+V(p),i?2-k(e):+V(e))),t?d.mod(t):d;if(u=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new G(NaN);(r=!u&&p.isInteger()&&t.isInteger())&&(p=p.mod(t))}else{if(e.e>9&&(p.e>0||p.e<-1||(0==p.e?p.c[0]>1||i&&p.c[1]>=24e7:p.c[0]<8e13||i&&p.c[0]<=9999975e7)))return a=p.s<0&&k(e)?-0:0,p.e>-1&&(a=1/a),new G(u?1/a:a);x&&(a=c(x/14+2))}for(i?(n=new G(.5),u&&(e.s=1),f=k(e)):f=(o=Math.abs(+V(e)))%2,d=new G(E);;){if(f){if(!(d=d.times(p)).c)break;a?d.c.length>a&&(d.c.length=a):r&&(d=d.mod(t))}if(o){if(0===(o=s(o/2)))break;f=o%2}else if(H(e=e.times(n),e.e+1,1),e.e>14)f=k(e);else{if(0===(o=+V(e)))break;f=o%2}p=p.times(p),a?p.c&&p.c.length>a&&(p.c.length=a):r&&(p=p.mod(t))}return r?d:(u&&(d=E.div(d)),t?d.mod(t):a?H(d,x,R,void 0):d)},P.integerValue=function(e){var t=new G(this);return null==e?e=R:v(e,0,8),H(t,t.e+1,e)},P.isEqualTo=P.eq=function(e,t){return 0===b(this,new G(e,t))},P.isFinite=function(){return!!this.c},P.isGreaterThan=P.gt=function(e,t){return b(this,new G(e,t))>0},P.isGreaterThanOrEqualTo=P.gte=function(e,t){return 1===(t=b(this,new G(e,t)))||0===t},P.isInteger=function(){return!!this.c&&y(this.e/14)>this.c.length-2},P.isLessThan=P.lt=function(e,t){return b(this,new G(e,t))<0},P.isLessThanOrEqualTo=P.lte=function(e,t){return-1===(t=b(this,new G(e,t)))||0===t},P.isNaN=function(){return!this.s},P.isNegative=function(){return this.s<0},P.isPositive=function(){return this.s>0},P.isZero=function(){return!!this.c&&0==this.c[0]},P.minus=function(e,t){var n,r,o,a,i=this,u=i.s;if(t=(e=new G(e,t)).s,!u||!t)return new G(NaN);if(u!=t)return e.s=-t,i.plus(e);var c=i.e/14,s=e.e/14,l=i.c,f=e.c;if(!c||!s){if(!l||!f)return l?(e.s=-t,e):new G(f?i:NaN);if(!l[0]||!f[0])return f[0]?(e.s=-t,e):new G(l[0]?i:3==R?-0:0)}if(c=y(c),s=y(s),l=l.slice(),u=c-s){for((a=u<0)?(u=-u,o=l):(s=c,o=f),o.reverse(),t=u;t--;o.push(0));o.reverse()}else for(r=(a=(u=l.length)<(t=f.length))?u:t,u=t=0;t0)for(;t--;l[n++]=0);for(t=d-1;r>u;){if(l[--r]=0;){for(n=0,p=g[o]%1e7,h=g[o]/1e7|0,a=o+(i=c);a>o;)n=((s=p*(s=k[--i]%1e7)+(u=h*s+(l=k[i]/1e7|0)*p)%1e7*1e7+m[a]+n)/b|0)+(u/1e7|0)+h*l,m[a--]=s%b;m[a]=n}return n?++r:m.splice(0,1),Q(e,m,r)},P.negated=function(){var e=new G(this);return e.s=-e.s||null,e},P.plus=function(e,t){var n,r=this,o=r.s;if(t=(e=new G(e,t)).s,!o||!t)return new G(NaN);if(o!=t)return e.s=-t,r.minus(e);var a=r.e/14,i=e.e/14,u=r.c,c=e.c;if(!a||!i){if(!u||!c)return new G(o/0);if(!u[0]||!c[0])return c[0]?e:new G(u[0]?r:0*o)}if(a=y(a),i=y(i),u=u.slice(),o=a-i){for(o>0?(i=a,n=c):(o=-o,n=u),n.reverse();o--;n.push(0));n.reverse()}for((o=u.length)-(t=c.length)<0&&(n=c,c=u,u=n,t=o),o=0;t;)o=(u[--t]=u[t]+c[t]+o)/d|0,u[t]=d===u[t]?0:u[t]%d;return o&&(u=[o].concat(u),++i),Q(e,u,i)},P.precision=P.sd=function(e,t){var n,r,o,a=this;if(null!=e&&e!==!!e)return v(e,1,h),null==t?t=R:v(t,0,8),H(new G(a),e,t);if(!(n=a.c))return null;if(r=14*(o=n.length-1)+1,o=n[o]){for(;o%10==0;o/=10,r--);for(o=n[0];o>=10;o/=10,r++);}return e&&a.e+1>r&&(r=a.e+1),r},P.shiftedBy=function(e){return v(e,-9007199254740991,9007199254740991),this.times("1e"+e)},P.squareRoot=P.sqrt=function(){var e,t,r,o,a,i=this,u=i.c,c=i.s,s=i.e,l=S+4,f=new G("0.5");if(1!==c||!u||!u[0])return new G(!c||c<0&&(!u||u[0])?NaN:u?i:1/0);if(0==(c=Math.sqrt(+V(i)))||c==1/0?(((t=m(u)).length+s)%2==0&&(t+="0"),c=Math.sqrt(+t),s=y((s+1)/2)-(s<0||s%2),r=new G(t=c==1/0?"5e"+s:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+s)):r=new G(c+""),r.c[0])for((c=(s=r.e)+l)<3&&(c=0);;)if(a=r,r=f.times(a.plus(n(i,a,l,1))),m(a.c).slice(0,c)===(t=m(r.c)).slice(0,c)){if(r.e0&&m>0){for(i=m%c||c,d=y.substr(0,i);i0&&(d+=f+y.slice(i)),h&&(d="-"+d)}r=p?d+(n.decimalSeparator||"")+((s=+n.fractionGroupSize)?p.replace(new RegExp("\\d{"+s+"}\\B","g"),"$&"+(n.fractionGroupSeparator||"")):p):d}return(n.prefix||"")+r+(n.suffix||"")},P.toFraction=function(e){var t,r,o,a,i,u,c,s,f,d,h,y,b=this,v=b.c;if(null!=e&&(!(c=new G(e)).isInteger()&&(c.c||1!==c.s)||c.lt(E)))throw Error(l+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+V(c));if(!v)return new G(b);for(t=new G(E),f=r=new G(E),o=s=new G(E),y=m(v),i=t.e=y.length-b.e-1,t.c[0]=p[(u=i%14)<0?14+u:u],e=!e||c.comparedTo(t)>0?i>0?t:f:c,u=B,B=1/0,c=new G(y),s.c[0]=0;d=n(c,t,0,1),1!=(a=r.plus(d.times(o))).comparedTo(e);)r=o,o=a,f=s.plus(d.times(a=f)),s=a,t=c.minus(d.times(a=t)),c=a;return a=n(e.minus(r),o,0,1),s=s.plus(a.times(f)),r=r.plus(a.times(o)),s.s=f.s=b.s,h=n(f,o,i*=2,R).minus(b).abs().comparedTo(n(s,r,i,R).minus(b).abs())<1?[f,o]:[s,r],B=u,h},P.toNumber=function(){return+V(this)},P.toPrecision=function(e,t){return null!=e&&v(e,1,h),K(this,e,t,2)},P.toString=function(e){var t,n=this,o=n.s,a=n.e;return null===a?o?(t="Infinity",o<0&&(t="-"+t)):t="NaN":(null==e?t=a<=D||a>=C?g(m(n.c),a):_(m(n.c),a,"0"):10===e&&L?t=_(m((n=H(new G(n),S+a+1,R)).c),n.e,"0"):(v(e,2,U.length,"Base"),t=r(_(m(n.c),a,"0"),10,e,o,!0)),o<0&&n.c[0]&&(t="-"+t)),t},P.valueOf=P.toJSON=function(){return V(this)},P._isBigNumber=!0,null!=t&&G.set(t),G}()).default=i.BigNumber=i,void 0===(r=function(){return i}.call(t,n,t,e))||(e.exports=r)}()},function(e,t,n){"use strict";function r(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=r,r.equal=function(e,t,n){if(e!=t)throw new Error(n||"Assertion failed: "+e+" != "+t)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(49)),l=r(n(131));function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e,t){(0,i.default)(r,e);var n=f(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i0)},o.Buffer=function(){try{var e=o.inquire("buffer").Buffer;return e.prototype.utf8Write?e:null}catch(e){return null}}(),o._Buffer_from=null,o._Buffer_allocUnsafe=null,o.newBuffer=function(e){return"number"==typeof e?o.Buffer?o._Buffer_allocUnsafe(e):new o.Array(e):o.Buffer?o._Buffer_from(e):"undefined"==typeof Uint8Array?e:new Uint8Array(e)},o.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,o.Long=o.global.dcodeIO&&o.global.dcodeIO.Long||o.global.Long||o.inquire("long"),o.key2Re=/^true|false|0|1$/,o.key32Re=/^-?(?:0|[1-9][0-9]*)$/,o.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,o.longToHash=function(e){return e?o.LongBits.from(e).toHash():o.LongBits.zeroHash},o.longFromHash=function(e,t){var n=o.LongBits.fromHash(e);return o.Long?o.Long.fromBits(n.lo,n.hi,t):n.toNumber(Boolean(t))},o.merge=a,o.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)},o.newError=i,o.ProtocolError=i("ProtocolError"),o.oneOfGetter=function(e){for(var t={},n=0;n-1;--n)if(1===t[e[n]]&&void 0!==this[e[n]]&&null!==this[e[n]])return e[n]}},o.oneOfSetter=function(e){return function(t){for(var n=0;n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n1?t.split("/"):t.split("@"),o=f(r);try{for(o.s();!(n=o.n()).done;){if(""===n.value)throw new Error("invalid format for NftId: use [token]/[serial] or [token]@[serial]")}}catch(e){o.e(e)}finally{o.f()}return new e(c.default.fromString(r[0]),s.default.fromString(r[1]))}},{key:"_fromProtobuf",value:function(t){return new e(c.default._fromProtobuf(t.tokenID),null!=t.serialNumber?t.serialNumber:s.default.ZERO)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.NftID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";(function(t){var r=n(0)(n(3)),o=n(865); /*! * The buffer module from node.js, for the browser. * * @author Feross Aboukhadijeh * @license MIT */ -function a(e,t){if(e===t)return 0;for(var n=e.length,r=t.length,o=0,a=Math.min(n,r);o=0;c--)if(l[c]!==f[c])return!1;for(c=l.length-1;c>=0;c--)if(i=l[c],!k(e[i],t[i],n,r))return!1;return!0}(e,t,n,o))}return n?e===t:e==t}function _(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function w(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(e){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function I(e,t,n,r){var o;if("function"!=typeof t)throw new TypeError('"block" argument must be a function');"string"==typeof n&&(r=n,n=null),o=function(e){var t;try{e()}catch(e){t=e}return t}(t),r=(n&&n.name?" ("+n.name+").":".")+(r?" "+r:"."),e&&!o&&v(o,n,"Missing expected exception"+r);var a="string"==typeof r,i=!e&&o&&!n;if((!e&&u.isError(o)&&a&&w(o,n)||i)&&v(o,n,"Got unwanted exception"+r),e&&o&&n&&!w(o,n)||!e&&o)throw o}p.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=function(e){return b(m(e.actual),128)+" "+e.operator+" "+b(m(e.expected),128)}(this),this.generatedMessage=!0);var t=e.stackStartFunction||v;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var n=new Error;if(n.stack){var r=n.stack,o=y(t),a=r.indexOf("\n"+o);if(a>=0){var i=r.indexOf("\n",a+1);r=r.substring(i+1)}this.stack=r}}},u.inherits(p.AssertionError,Error),p.fail=v,p.ok=g,p.equal=function(e,t,n){e!=t&&v(e,t,n,"==",p.equal)},p.notEqual=function(e,t,n){e==t&&v(e,t,n,"!=",p.notEqual)},p.deepEqual=function(e,t,n){k(e,t,!1)||v(e,t,n,"deepEqual",p.deepEqual)},p.deepStrictEqual=function(e,t,n){k(e,t,!0)||v(e,t,n,"deepStrictEqual",p.deepStrictEqual)},p.notDeepEqual=function(e,t,n){k(e,t,!1)&&v(e,t,n,"notDeepEqual",p.notDeepEqual)},p.notDeepStrictEqual=function e(t,n,r){k(t,n,!0)&&v(t,n,r,"notDeepStrictEqual",e)},p.strictEqual=function(e,t,n){e!==t&&v(e,t,n,"===",p.strictEqual)},p.notStrictEqual=function(e,t,n){e===t&&v(e,t,n,"!==",p.notStrictEqual)},p.throws=function(e,t,n){I(!0,e,t,n)},p.doesNotThrow=function(e,t,n){I(!1,e,t,n)},p.ifError=function(e){if(e)throw e},p.strict=o((function e(t,n){t||v(t,!0,n,"==",e)}),p,{equal:p.strictEqual,deepEqual:p.deepStrictEqual,notEqual:p.notStrictEqual,notDeepEqual:p.notDeepStrictEqual}),p.strict.strict=p.strict;var A=Object.keys||function(e){var t=[];for(var n in e)c.call(e,n)&&t.push(n);return t}}).call(this,n(33))},function(e,t,n){"use strict";(function(e){var r=n(0)(n(3));function o(e){if("string"!=typeof e)throw new Error("[isHexPrefixed] input must be type 'string', received type "+(0,r.default)(e));return"0"===e[0]&&"x"===e[1]}Object.defineProperty(t,"__esModule",{value:!0}),t.isHexString=t.getKeys=t.fromAscii=t.fromUtf8=t.toAscii=t.arrayContainsArray=t.getBinarySize=t.padToEven=t.stripHexPrefix=t.isHexPrefixed=void 0,t.isHexPrefixed=o;function a(e){var t=e;if("string"!=typeof t)throw new Error("[padToEven] value must be type 'string', received "+(0,r.default)(t));return t.length%2&&(t="0"+t),t}t.stripHexPrefix=function(e){if("string"!=typeof e)throw new Error("[stripHexPrefix] input must be type 'string', received "+(0,r.default)(e));return o(e)?e.slice(2):e},t.padToEven=a,t.getBinarySize=function(t){if("string"!=typeof t)throw new Error("[getBinarySize] method requires input type 'string', recieved "+(0,r.default)(t));return e.byteLength(t,"utf8")},t.arrayContainsArray=function(e,t,n){if(!0!==Array.isArray(e))throw new Error("[arrayContainsArray] method requires input 'superset' to be an array, got type '"+(0,r.default)(e)+"'");if(!0!==Array.isArray(t))throw new Error("[arrayContainsArray] method requires input 'subset' to be an array, got type '"+(0,r.default)(t)+"'");return t[n?"some":"every"]((function(t){return e.indexOf(t)>=0}))},t.toAscii=function(e){var t="",n=0,r=e.length;for("0x"===e.substring(0,2)&&(n=2);n2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}a("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),a("ERR_INVALID_ARG_TYPE",(function(e,t,n){var o,a,u,c;if("string"==typeof t&&(a="not ",t.substr(!u||u<0?0:+u,a.length)===a)?(o="must not be",t=t.replace(/^not /,"")):o="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))c="The ".concat(e," ").concat(o," ").concat(i(t,"type"));else{var s=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+t.length>e.length)&&-1!==e.indexOf(t,n)}(e,".")?"property":"argument";c='The "'.concat(e,'" ').concat(s," ").concat(o," ").concat(i(t,"type"))}return c+=". Received type ".concat((0,r.default)(n))}),TypeError),a("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),a("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),a("ERR_STREAM_PREMATURE_CLOSE","Premature close"),a("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),a("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),a("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),a("ERR_STREAM_WRITE_AFTER_END","write after end"),a("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),a("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),a("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=o},function(e,t,n){"use strict";(function(t){var r=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=s;var o=n(370),a=n(374);n(15)(s,o);for(var i=r(a.prototype),u=0;u2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}a("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),a("ERR_INVALID_ARG_TYPE",(function(e,t,n){var o,a,u,c;if("string"==typeof t&&(a="not ",t.substr(!u||u<0?0:+u,a.length)===a)?(o="must not be",t=t.replace(/^not /,"")):o="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))c="The ".concat(e," ").concat(o," ").concat(i(t,"type"));else{var s=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+t.length>e.length)&&-1!==e.indexOf(t,n)}(e,".")?"property":"argument";c='The "'.concat(e,'" ').concat(s," ").concat(o," ").concat(i(t,"type"))}return c+=". Received type ".concat((0,r.default)(n))}),TypeError),a("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),a("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),a("ERR_STREAM_PREMATURE_CLOSE","Premature close"),a("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),a("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),a("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),a("ERR_STREAM_WRITE_AFTER_END","write after end"),a("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),a("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),a("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=o},function(e,t,n){"use strict";(function(t){var r=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=s;var o=n(377),a=n(381);n(15)(s,o);for(var i=r(a.prototype),u=0;u=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0,o=(n-r)/4294967296;this._block.writeUInt32BE(o,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var a=this._hash();return e?a.toString(e):a},o.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=o},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1));t.default=function e(){(0,o.default)(this,e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t._checksum=b,t._parseAddress=function(e,t){var n=p.exec(t);if(null===n){return{status:0}}var r=[u.default.fromString(n[1]),u.default.fromString(n[2]),u.default.fromString(n[3])],o="".concat(r[0].toString(),".").concat(r[1].toString(),".").concat(r[2].toString()),a=b(e,o);return{status:void 0===n[4]?2:a==n[4]?3:1,num1:r[0],num2:r[1],num3:r[2],givenChecksum:n[4],correctChecksum:a,noChecksumFormat:o,withChecksumFormat:"".concat(o,"-").concat(a)}},t.compare=function(e,t){var n=e[0].compare(t[0]);if(0!=n)return n;if(0!=(n=e[1].compare(t[1])))return n;return e[2].compare(t[2])},t.constructor=function(e,t,n){if(null==t&&null!=n||null!=t&&null==n)throw new Error("invalid entity ID");var r="number"==typeof e||u.default.isLong(e)?[null!=n?u.default.fromValue(e):u.default.ZERO,null!=t?u.default.fromValue(t):u.default.ZERO,null!=n?u.default.fromValue(n):u.default.fromValue(e)]:[null!=e.shard?u.default.fromValue(e.shard):u.default.ZERO,null!=e.realm?u.default.fromValue(e.realm):u.default.ZERO,u.default.fromValue(e.num)],o=(0,i.default)(r,3),a=o[0],c=o[1],s=o[2];if(a.isNegative()||c.isNegative()||s.isNegative())throw new Error("negative numbers are not allowed in IDs");return{shard:a,realm:c,num:s}},t.fromSolidityAddress=function(e){var t=e.startsWith("0x")?c.decode(e.slice(2)):c.decode(e);if(20!==t.length)throw new Error("Invalid hex encoded solidity address length:\n expected length 40, got length ".concat(e.length));var n=u.default.fromBytesBE([0,0,0,0].concat((0,a.default)(t.slice(0,4)))),r=u.default.fromBytesBE(Array.from(t.slice(4,12))),o=u.default.fromBytesBE(Array.from(t.slice(12,20)));return[n,r,o]},t.fromString=function(e){var t=y(e);if(Number.isNaN(t.shard)||Number.isNaN(t.realm)||Number.isNaN(t.numOrHex))throw new Error("invalid format for entity ID");return{shard:null!=t.shard?u.default.fromString(t.shard):u.default.ZERO,realm:null!=t.realm?u.default.fromString(t.realm):u.default.ZERO,num:u.default.fromString(t.numOrHex),checksum:t.checksum}},t.fromStringSplitter=y,t.toSolidityAddress=function(e){var t=new Uint8Array(20),n=l.safeView(t),r=(0,i.default)(e,3),o=r[0],a=r[1],u=r[2];return n.setUint32(0,l.convertToNumber(o)),n.setUint32(8,l.convertToNumber(a)),n.setUint32(16,l.convertToNumber(u)),c.encode(t)},t.toStringWithChecksum=function(e,t){if(null==t._network._ledgerId)throw new Error("cannot calculate checksum with a client that does not contain a recognzied ledger ID");var n=b(t._network._ledgerId._toStringForChecksum(),e);return"".concat(e,"-").concat(n)},t.validateChecksum=function(e,t,n,r,o){if(null==o._network._ledgerId||null==r)return;var a=b(o._network._ledgerId._toStringForChecksum(),"".concat(e.toString(),".").concat(t.toString(),".").concat(n.toString()));if(r!=a)throw new s.default(e,t,n,r,a)};var a=r(n(42)),i=r(n(11)),u=r(n(17)),c=d(n(64)),s=r(n(841)),l=d(n(205));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=RegExp("^(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))(?:-([a-z]{5}))?$"),h=/^(\d+)(?:\.(\d+)\.([a-fA-F0-9]+))?(?:-([a-z]{5}))?$/;function y(e){var t=h.exec(e);if(null==t)throw new Error("failed to parse entity id: ".concat(e));return null==t[2]&&null==t[3]?{shard:"0",realm:"0",numOrHex:t[1],checksum:t[4]}:{shard:t[1],realm:t[2],numOrHex:t[3],checksum:t[4]}}function b(e,t){for(var n="",r=[],o=0,a=0,i=0,u=0,c=0,s=11881376,l="a".charCodeAt(0),f=e+"000000000000",d=[],p=0;p=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n1?t.split("/"):t.split("@"),o=f(r);try{for(o.s();!(n=o.n()).done;){if(""===n.value)throw new Error("invalid format for NftId: use [token]/[serial] or [token]@[serial]")}}catch(e){o.e(e)}finally{o.f()}return new e(c.default.fromString(r[0]),s.default.fromString(r[1]))}},{key:"_fromProtobuf",value:function(t){return new e(c.default._fromProtobuf(t.tokenID),null!=t.serialNumber?t.serialNumber:s.default.ZERO)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.NftID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0)(n(3));var o={};function a(e,t,n){n||(n=Error);var r=function(e){var n,r;function o(n,r,o){return e.call(this,function(e,n,r){return"string"==typeof t?t:t(e,n,r)}(n,r,o))||this}return r=e,(n=o).prototype=Object.create(r.prototype),n.prototype.constructor=n,n.__proto__=r,o}(n);r.prototype.name=n.name,r.prototype.code=e,o[e]=r}function i(e,t){if(Array.isArray(e)){var n=e.length;return e=e.map((function(e){return String(e)})),n>2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}a("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),a("ERR_INVALID_ARG_TYPE",(function(e,t,n){var o,a,u,c;if("string"==typeof t&&(a="not ",t.substr(!u||u<0?0:+u,a.length)===a)?(o="must not be",t=t.replace(/^not /,"")):o="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))c="The ".concat(e," ").concat(o," ").concat(i(t,"type"));else{var s=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+t.length>e.length)&&-1!==e.indexOf(t,n)}(e,".")?"property":"argument";c='The "'.concat(e,'" ').concat(s," ").concat(o," ").concat(i(t,"type"))}return c+=". Received type ".concat((0,r.default)(n))}),TypeError),a("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),a("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),a("ERR_STREAM_PREMATURE_CLOSE","Premature close"),a("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),a("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),a("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),a("ERR_STREAM_WRITE_AFTER_END","write after end"),a("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),a("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),a("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=o},function(e,t,n){"use strict";(function(t){var r=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=s;var o=n(475),a=n(479);n(15)(s,o);for(var i=r(a.prototype),u=0;u=0}))},t.toAscii=function(e){var t="",n=0,r=e.length;for("0x"===e.substring(0,2)&&(n=2);n2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}a("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),a("ERR_INVALID_ARG_TYPE",(function(e,t,n){var o,a,u,c;if("string"==typeof t&&(a="not ",t.substr(!u||u<0?0:+u,a.length)===a)?(o="must not be",t=t.replace(/^not /,"")):o="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))c="The ".concat(e," ").concat(o," ").concat(i(t,"type"));else{var s=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+t.length>e.length)&&-1!==e.indexOf(t,n)}(e,".")?"property":"argument";c='The "'.concat(e,'" ').concat(s," ").concat(o," ").concat(i(t,"type"))}return c+=". Received type ".concat((0,r.default)(n))}),TypeError),a("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),a("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),a("ERR_STREAM_PREMATURE_CLOSE","Premature close"),a("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),a("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),a("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),a("ERR_STREAM_WRITE_AFTER_END","write after end"),a("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),a("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),a("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=o},function(e,t,n){"use strict";(function(t){var r=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=s;var o=n(496),a=n(500);n(41)(s,o);for(var i=r(a.prototype),u=0;u=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0,o=(n-r)/4294967296;this._block.writeUInt32BE(o,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var a=this._hash();return e?a.toString(e):a},o.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=o},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1));t.default=function e(){(0,o.default)(this,e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t._checksum=m,t._parseAddress=function(e,t){var n=b.exec(t);if(null===n){return{status:0}}var r=[u.default.fromString(n[1]),u.default.fromString(n[2]),u.default.fromString(n[3])],o="".concat(r[0].toString(),".").concat(r[1].toString(),".").concat(r[2].toString()),a=m(e,o);return{status:void 0===n[4]?2:a==n[4]?3:1,num1:r[0],num2:r[1],num3:r[2],givenChecksum:n[4],correctChecksum:a,noChecksumFormat:o,withChecksumFormat:"".concat(o,"-").concat(a)}},t.compare=function(e,t){var n=e[0].compare(t[0]);if(0!=n)return n;if(0!=(n=e[1].compare(t[1])))return n;return e[2].compare(t[2])},t.constructor=function(e,t,n){var r,o=u.default.ZERO,a=u.default.ZERO,i=u.default.ZERO;n instanceof f.default&&(r=n);"number"==typeof e||u.default.isLong(e)?null==t||"string"==typeof t?i=u.default.fromValue(e):(o=u.default.fromValue(e),a=u.default.fromValue(t),i=null==n||n instanceof f.default?u.default.ZERO:u.default.fromValue(n)):(o=u.default.fromValue(null!=e.shard?e.shard:0),a=u.default.fromValue(null!=e.realm?e.realm:0),i=u.default.fromValue(null!=e.num?e.num:0),r=e.aliasKey);if(o.isNegative()||a.isNegative()||i.isNegative())throw new Error("negative numbers are not allowed in IDs");return{shard:o,realm:a,num:i,aliasKey:r}},t.fromSolidityAddress=function(e){var t=e.startsWith("0x")?c.decode(e.slice(2)):c.decode(e);if(20!==t.length)throw new Error("Invalid hex encoded solidity address length:\n expected length 40, got length ".concat(e.length));var n=u.default.fromBytesBE([0,0,0,0].concat((0,a.default)(t.slice(0,4)))),r=u.default.fromBytesBE(Array.from(t.slice(4,12))),o=u.default.fromBytesBE(Array.from(t.slice(12,20)));return[n,r,o]},t.fromString=function(e){var t,n=e.split("-"),r=(0,i.default)(n,2),o=r[0],a=r[1],c=o.split("."),s=h(c);try{for(s.s();!(t=s.n()).done;){if(""===t.value)throw new Error("invalid format for entity ID")}}catch(e){s.e(e)}finally{s.f()}var l,f=c.map(Number),d=h(f);try{for(d.s();!(l=d.n()).done;){var p=l.value;if(Number.isNaN(p))throw new Error("invalid format for entity ID")}}catch(e){d.e(e)}finally{d.f()}var y,b=u.default.ZERO,m=u.default.ZERO;if(1===f.length)y=u.default.fromNumber(f[0]);else{if(3!==f.length)throw new Error("invalid format for entity ID");b=u.default.fromNumber(f[0]),m=u.default.fromNumber(f[1]),y=u.default.fromNumber(f[2])}return{shard:b,realm:m,num:y,checksum:a,aliasKey:null}},t.toSolidityAddress=function(e){var t=new Uint8Array(20),n=l.safeView(t),r=(0,i.default)(e,3),o=r[0],a=r[1],u=r[2];return n.setUint32(0,l.convertToNumber(o)),n.setUint32(8,l.convertToNumber(a)),n.setUint32(16,l.convertToNumber(u)),c.encode(t)},t.toStringWithChecksum=function(e,t){if(null==t._network._ledgerId)throw new Error("cannot calculate checksum with a client that does not contain a recognzied ledger ID");var n=m(t._network._ledgerId._toStringForChecksum(),e);return"".concat(e,"-").concat(n)},t.validateChecksum=function(e,t,n,r,o){if(null==o._network._ledgerId||null==r)return;var a=m(o._network._ledgerId._toStringForChecksum(),"".concat(e.toString(),".").concat(t.toString(),".").concat(n.toString()));if(r!=a)throw new s.default(e,t,n,r,a)};var a=r(n(42)),i=r(n(11)),u=r(n(25)),c=p(n(83)),s=r(n(1072)),l=p(n(176)),f=r(n(94));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function h(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return y(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return y(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(null!=this._minBackoff&&e=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var o=0;o>>24&255,r[o++]=e>>>16&255,r[o++]=e>>>8&255,r[o++]=255&e}else for(r[o++]=255&e,r[o++]=e>>>8&255,r[o++]=e>>>16&255,r[o++]=e>>>24&255,r[o++]=0,r[o++]=0,r[o++]=0,r[o++]=0,a=8;a0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._denominatingTokenId,null!=r.denominatingTokenId&&e.setDenominatingTokenId(r.denominatingTokenId),e._amount,null!=r.amount&&e.setAmount(r.amount),e}return(0,a.default)(n,[{key:"setHbarAmount",value:function(e){return this._amount=e.toTinybars(),this._denominatingTokenId=null,this}},{key:"hbarAmount",get:function(){return null!=this._denominatingTokenId?null:p.default.fromTinybars(null!=this._amount?this._amount:0)}},{key:"setDenominatingTokenToSameToken",value:function(){return this._denominatingTokenId=new s.default(0,0,0),this}},{key:"denominatingTokenId",get:function(){return this._denominatingTokenId}},{key:"setDenominatingTokenId",value:function(e){return this._denominatingTokenId="string"==typeof e?s.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?d.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fixedFee:{denominatingTokenId:null!=this._denominatingTokenId?this._denominatingTokenId._toProtobuf():null,amount:this._amount}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fixedFee;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?f.default._fromProtobuf(e.feeCollectorAccountId):void 0,denominatingTokenId:null!=t.denominatingTokenId?s.default._fromProtobuf(t.denominatingTokenId):void 0,amount:null!=t.amount?t.amount:void 0})}}]),n}(l.default);t.default=y},function(e,t,n){"use strict";var r=n(0)(n(3));function o(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===o(e)},t.isBoolean=function(e){return"boolean"==typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"==typeof e},t.isString=function(e){return"string"==typeof e},t.isSymbol=function(e){return"symbol"===(0,r.default)(e)},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===o(e)},t.isObject=function(e){return"object"===(0,r.default)(e)&&null!==e},t.isDate=function(e){return"[object Date]"===o(e)},t.isError=function(e){return"[object Error]"===o(e)||e instanceof Error},t.isFunction=function(e){return"function"==typeof e},t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"===(0,r.default)(e)||void 0===e},t.isBuffer=n(12).Buffer.isBuffer},function(e,t,n){"use strict";var r=n(0),o=r(n(7)),a=r(n(11)),i=r(n(3)),u=function(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{c(r.next(e))}catch(e){a(e)}}function u(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,u)}c((r=r.apply(e,t||[])).next())}))},c=n(69).errors,s=n(69).formatters,l=n(79),f=n(392),d=n(258).subscriptions,p=n(790),h=function(e){if(!e.call||!e.name)throw new Error('When creating a method you need to provide at least the "name" and "call" property.');this.name=e.name,this.call=e.call,this.params=e.params||0,this.inputFormatter=e.inputFormatter,this.outputFormatter=e.outputFormatter,this.transformPayload=e.transformPayload,this.extraFormatters=e.extraFormatters,this.abiCoder=e.abiCoder,this.requestManager=e.requestManager,this.accounts=e.accounts,this.defaultBlock=e.defaultBlock||"latest",this.defaultAccount=e.defaultAccount||null,this.transactionBlockTimeout=e.transactionBlockTimeout||50,this.transactionConfirmationBlocks=e.transactionConfirmationBlocks||24,this.transactionPollingTimeout=e.transactionPollingTimeout||750,this.transactionPollingInterval=e.transactionPollingInterval||1e3,this.blockHeaderTimeout=e.blockHeaderTimeout||10,this.defaultCommon=e.defaultCommon,this.defaultChain=e.defaultChain,this.defaultHardfork=e.defaultHardfork,this.handleRevert=e.handleRevert};h.prototype.setRequestManager=function(e,t){this.requestManager=e,t&&(this.accounts=t)},h.prototype.createFunction=function(e,t){var n=this.buildCall();return n.call=this.call,this.setRequestManager(e||this.requestManager,t||this.accounts),n},h.prototype.attachToObject=function(e){var t=this.buildCall();t.call=this.call;var n=this.name.split(".");n.length>1?(e[n[0]]=e[n[0]]||{},e[n[0]][n[1]]=t):e[n[0]]=t},h.prototype.getCall=function(e){return"function"==typeof this.call?this.call(e):this.call},h.prototype.extractCallback=function(e){if("function"==typeof e[e.length-1])return e.pop()},h.prototype.validateArgs=function(e){if(e.length!==this.params)throw c.InvalidNumberOfParams(e.length,this.params,this.name)},h.prototype.formatInput=function(e){var t=this;return this.inputFormatter?this.inputFormatter.map((function(n,r){return n?n.call(t,e[r]):e[r]})):e},h.prototype.formatOutput=function(e){var t=this;return Array.isArray(e)?e.map((function(e){return t.outputFormatter&&e?t.outputFormatter(e):e})):this.outputFormatter&&e?this.outputFormatter(e):e},h.prototype.toPayload=function(e){var t=this.getCall(e),n=this.extractCallback(e),r=this.formatInput(e);this.validateArgs(r);var o={method:t,params:r,callback:n};return this.transformPayload&&(o=this.transformPayload(o)),o},h.prototype._confirmTransaction=function(e,t,n){var r=this,a=!1,y=!0,b=0,m=0,v=null,g=null,k=null,_=n.params[0]&&"object"===(0,i.default)(n.params[0])&&n.params[0].gas?n.params[0].gas:null,w=!!n.params[0]&&"object"===(0,i.default)(n.params[0])&&n.params[0].data&&n.params[0].from&&!n.params[0].to,I=w&&n.params[0].data.length>2,A=[new h({name:"getBlockByNumber",call:"eth_getBlockByNumber",params:2,inputFormatter:[s.inputBlockNumberFormatter,function(e){return!!e}],outputFormatter:s.outputBlockFormatter}),new h({name:"getTransactionReceipt",call:"eth_getTransactionReceipt",params:1,inputFormatter:[null],outputFormatter:s.outputTransactionReceiptFormatter}),new h({name:"getCode",call:"eth_getCode",params:2,inputFormatter:[s.inputAddressFormatter,s.inputDefaultBlockNumberFormatter]}),new h({name:"getTransactionByHash",call:"eth_getTransactionByHash",params:1,inputFormatter:[null],outputFormatter:s.outputTransactionFormatter}),new d({name:"subscribe",type:"eth",subscriptions:{newBlockHeaders:{subscriptionName:"newHeads",params:0,outputFormatter:s.outputBlockFormatter}}})],T={};A.forEach((function(e){e.attachToObject(T),e.requestManager=r.requestManager}));var O=function(i,d,h,A,O){if(!h)return O||(O={unsubscribe:function(){clearInterval(v),clearTimeout(g)}}),(i?f.resolve(i):T.getTransactionReceipt(t)).catch((function(t){O.unsubscribe(),a=!0,l._fireError({message:"Failed to check for transaction receipt:",data:t},e.eventEmitter,e.reject)})).then((function(t){return u(this,void 0,void 0,o.default.mark((function n(){var a,u,c;return o.default.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(t&&t.blockHash){n.next=2;break}throw new Error("Receipt missing or blockHash null");case 2:if(r.extraFormatters&&r.extraFormatters.receiptFormatter&&(t=r.extraFormatters.receiptFormatter(t)),!(e.eventEmitter.listeners("confirmation").length>0)){n.next=28;break}if(void 0!==i&&0===m){n.next=25;break}return n.next=7,T.getBlockByNumber("latest");case 7:if(u=n.sent,c=u?u.hash:null,!d){n.next=24;break}if(!k){n.next=17;break}return n.next=13,T.getBlockByNumber(k.number+1);case 13:(a=n.sent)&&(k=a,e.eventEmitter.emit("confirmation",m,t,c)),n.next=22;break;case 17:return n.next=19,T.getBlockByNumber(t.blockNumber);case 19:a=n.sent,k=a,e.eventEmitter.emit("confirmation",m,t,c);case 22:n.next=25;break;case 24:e.eventEmitter.emit("confirmation",m,t,c);case 25:(d&&a||!d)&&m++,y=!1,m===r.transactionConfirmationBlocks+1&&(O.unsubscribe(),e.eventEmitter.removeAllListeners());case 28:return n.abrupt("return",t);case 29:case"end":return n.stop()}}),n)})))})).then((function(t){return u(this,void 0,void 0,o.default.mark((function n(){var i;return o.default.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(!w||a){n.next=19;break}if(t.contractAddress){n.next=5;break}return y&&(O.unsubscribe(),a=!0),l._fireError(c.NoContractAddressFoundError(t),e.eventEmitter,e.reject,null,t),n.abrupt("return");case 5:return n.prev=5,n.next=8,T.getCode(t.contractAddress);case 8:i=n.sent,n.next=13;break;case 11:n.prev=11,n.t0=n.catch(5);case 13:if(i){n.next=15;break}return n.abrupt("return");case 15:!0===t.status&&I||i.length>2?(e.eventEmitter.emit("receipt",t),r.extraFormatters&&r.extraFormatters.contractDeployFormatter?e.resolve(r.extraFormatters.contractDeployFormatter(t)):e.resolve(t),y&&e.eventEmitter.removeAllListeners()):l._fireError(c.ContractCodeNotStoredError(t),e.eventEmitter,e.reject,null,t),y&&O.unsubscribe(),a=!0;case 19:return n.abrupt("return",t);case 20:case"end":return n.stop()}}),n,null,[[5,11]])})))})).then((function(t){return u(this,void 0,void 0,o.default.mark((function i(){var u,f,d,h;return o.default.wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(w||a){o.next=35;break}if(t.outOfGas||_&&_===t.gasUsed||!0!==t.status&&"0x1"!==t.status&&void 0!==t.status){o.next=7;break}e.eventEmitter.emit("receipt",t),e.resolve(t),y&&e.eventEmitter.removeAllListeners(),o.next=33;break;case 7:if(JSON.stringify(t,null,2),!1!==t.status&&"0x0"!==t.status){o.next=32;break}if(o.prev=9,u=null,!r.handleRevert||"eth_sendTransaction"!==r.call&&"eth_sendRawTransaction"!==r.call){o.next=24;break}return f=n.params[0],"eth_sendRawTransaction"===r.call&&(d=n.params[0],h=p.parse(d),f=s.inputTransactionFormatter({data:h.data,to:h.to,from:h.from,gas:h.gasLimit.toHexString(),gasPrice:h.gasPrice.toHexString(),value:h.value.toHexString()})),o.next=16,r.getRevertReason(f,t.blockNumber);case 16:if(!(u=o.sent)){o.next=21;break}l._fireError(c.TransactionRevertInstructionError(u.reason,u.signature,t),e.eventEmitter,e.reject,null,t),o.next=22;break;case 21:throw!1;case 22:o.next=25;break;case 24:throw!1;case 25:o.next=30;break;case 27:o.prev=27,o.t0=o.catch(9),l._fireError(c.TransactionRevertedWithoutReasonError(t),e.eventEmitter,e.reject,null,t);case 30:o.next=33;break;case 32:l._fireError(c.TransactionOutOfGasError(t),e.eventEmitter,e.reject,null,t);case 33:y&&O.unsubscribe(),a=!0;case 35:case"end":return o.stop()}}),i,null,[[9,27]])})))})).catch((function(){b++,d?b-1>=r.transactionPollingTimeout&&(O.unsubscribe(),a=!0,l._fireError(c.TransactionError("Transaction was not mined within "+r.transactionPollingTimeout+" seconds, please make sure your transaction was properly sent. Be aware that it might still be mined!"),e.eventEmitter,e.reject)):b-1>=r.transactionBlockTimeout&&(O.unsubscribe(),a=!0,l._fireError(c.TransactionError("Transaction was not mined within "+r.transactionBlockTimeout+" blocks, please make sure your transaction was properly sent. Be aware that it might still be mined!"),e.eventEmitter,e.reject))}));O.unsubscribe(),a=!0,l._fireError({message:"Failed to subscribe to new newBlockHeaders to confirm the transaction receipts.",data:h},e.eventEmitter,e.reject)},E=function(e){var t=!1,n=function(){v=setInterval(O.bind(null,e,!0),r.transactionPollingInterval)};if(!this.requestManager.provider.on)return n();T.subscribe("newBlockHeaders",(function(r,o,a){if(t=!0,r||!o)return n();O(e,!1,r,0,a)})),g=setTimeout((function(){t||n()}),1e3*this.blockHeaderTimeout)}.bind(this);T.getTransactionReceipt(t).then((function(t){t&&t.blockHash?(e.eventEmitter.listeners("confirmation").length>0&&E(t),O(t,!1)):a||E()})).catch((function(){a||E()}))};var y=function(e,t){return"number"==typeof e?t.wallet[e]:e&&"object"===(0,i.default)(e)&&e.address&&e.privateKey?e:t.wallet[e.toLowerCase()]};function b(e,t){return new Promise((function(n,r){try{var o=new h({name:"getBlockByNumber",call:"eth_getBlockByNumber",params:2,inputFormatter:[function(e){return e?l.toHex(e):"latest"},function(){return!1}]}).createFunction(e.requestManager),i=new h({name:"getGasPrice",call:"eth_gasPrice",params:0}).createFunction(e.requestManager);Promise.all([o(),i()]).then((function(e){var r=(0,a.default)(e,2),o=r[0],i=r[1];if(("0x2"===t.type||void 0===t.type)&&o&&o.baseFeePerGas){var u,c;t.gasPrice?(u=t.gasPrice,c=t.gasPrice,delete t.gasPrice):(u=t.maxPriorityFeePerGas||"0x9502F900",c=t.maxFeePerGas||l.toHex(l.toBN(o.baseFeePerGas).mul(l.toBN(2)).add(l.toBN(u)))),n({maxFeePerGas:c,maxPriorityFeePerGas:u})}else{if(t.maxPriorityFeePerGas||t.maxFeePerGas)throw Error("Network doesn't support eip-1559");n({gasPrice:i})}}))}catch(e){r(e)}}))}h.prototype.buildCall=function(){var e=this,t="eth_sendTransaction"===e.call||"eth_sendRawTransaction"===e.call,n="eth_call"===e.call,r=function(){var r=f(!t),o=e.toPayload(Array.prototype.slice.call(arguments)),a=function(a,i){var u;if(e.handleRevert&&n&&e.abiCoder&&(!a&&e.isRevertReasonString(i)?u=i.substring(10):a&&a.data&&(u=a.data.substring(10)),u)){var s=e.abiCoder.decodeParameter("string","0x"+u);return void l._fireError(c.RevertInstructionError(s,"Error(String)"),r.eventEmitter,r.reject,o.callback,{reason:s,signature:"Error(String)"})}try{i=e.formatOutput(i)}catch(e){a=e}if(i instanceof Error&&(a=i),a)return a.error&&(a=a.error),l._fireError(a,r.eventEmitter,r.reject,o.callback);o.callback&&o.callback(null,i),t?(r.eventEmitter.emit("transactionHash",i),e._confirmTransaction(r,i,o)):a||r.resolve(i)},u=function(t){var n=Object.assign(Object.assign({},o),{method:"eth_sendRawTransaction",params:[t.rawTransaction]});e.requestManager.send(n,a)},s=function(e,t){var n;if(t&&t.accounts&&t.accounts.wallet&&t.accounts.wallet.length)if("eth_sendTransaction"===e.method){var o=e.params[0];if((n=y(o&&"object"===(0,i.default)(o)?o.from:null,t.accounts))&&n.privateKey)return delete(o=JSON.parse(JSON.stringify(o))).from,t.defaultChain&&!o.chain&&(o.chain=t.defaultChain),t.defaultHardfork&&!o.hardfork&&(o.hardfork=t.defaultHardfork),t.defaultCommon&&!o.common&&(o.common=t.defaultCommon),void t.accounts.signTransaction(o,n.privateKey).then(u).catch((function(e){if("function"==typeof r.eventEmitter.listeners&&r.eventEmitter.listeners("error").length){try{r.eventEmitter.emit("error",e)}catch(e){}r.eventEmitter.removeAllListeners(),r.eventEmitter.catch((function(){}))}r.reject(e)}))}else if("eth_sign"===e.method){var c=e.params[1];if((n=y(e.params[0],t.accounts))&&n.privateKey){var s=t.accounts.sign(c,n.privateKey);return e.callback&&e.callback(null,s.signature),void r.resolve(s.signature)}}return t.requestManager.send(e,a)};return t&&o.params[0]&&"object"===(0,i.default)(o.params[0])&&void 0===o.params[0].gasPrice&&(void 0===o.params[0].maxPriorityFeePerGas||void 0===o.params[0].maxFeePerGas)?b(e,o.params[0]).then((function(n){void 0!==n.gasPrice?o.params[0].gasPrice=n.gasPrice:void 0!==n.maxPriorityFeePerGas&&void 0!==n.maxFeePerGas&&(o.params[0].maxPriorityFeePerGas=n.maxPriorityFeePerGas,o.params[0].maxFeePerGas=n.maxFeePerGas),t&&setTimeout((function(){r.eventEmitter.emit("sending",o)}),0),s(o,e)})):(t&&setTimeout((function(){r.eventEmitter.emit("sending",o)}),0),s(o,e)),t&&setTimeout((function(){r.eventEmitter.emit("sent",o)}),0),r.eventEmitter};return r.method=e,r.request=this.request.bind(this),r},h.prototype.getRevertReason=function(e,t){var n=this;return new Promise((function(r,o){new h({name:"call",call:"eth_call",params:2,abiCoder:n.abiCoder,handleRevert:!0}).createFunction(n.requestManager)(e,l.numberToHex(t)).then((function(){r(!1)})).catch((function(e){e.reason?r({reason:e.reason,signature:e.signature}):o(e)}))}))},h.prototype.isRevertReasonString=function(e){return"string"==typeof e&&(e.length-2)/2%32==4&&"0x08c379a0"===e.substring(0,10)},h.prototype.request=function(){var e=this.toPayload(Array.prototype.slice.call(arguments));return e.format=this.formatOutput.bind(this),e},e.exports=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayEqual=function(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;var n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=new DataView(t.buffer,t.byteOffset,t.byteLength),o=e.byteLength;for(;o--;)if(n.getUint8(o)!==r.getUint8(o))return!1;return!0},t.arrayStartsWith=function(e,t){if(e.byteLength=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var o=0;o>>24&255,r[o++]=e>>>16&255,r[o++]=e>>>8&255,r[o++]=255&e}else for(r[o++]=255&e,r[o++]=e>>>8&255,r[o++]=e>>>16&255,r[o++]=e>>>24&255,r[o++]=0,r[o++]=0,r[o++]=0,r[o++]=0,a=8;a0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._denominatingTokenId,null!=r.denominatingTokenId&&e.setDenominatingTokenId(r.denominatingTokenId),e._amount,null!=r.amount&&e.setAmount(r.amount),e}return(0,a.default)(n,[{key:"setHbarAmount",value:function(e){return this._amount=e.toTinybars(),this._denominatingTokenId=null,this}},{key:"hbarAmount",get:function(){return null!=this._denominatingTokenId?null:p.default.fromTinybars(null!=this._amount?this._amount:0)}},{key:"setDenominatingTokenToSameToken",value:function(){return this._denominatingTokenId=new s.default(0,0,0),this}},{key:"denominatingTokenId",get:function(){return this._denominatingTokenId}},{key:"setDenominatingTokenId",value:function(e){return this._denominatingTokenId="string"==typeof e?s.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?d.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fixedFee:{denominatingTokenId:null!=this._denominatingTokenId?this._denominatingTokenId._toProtobuf():null,amount:this._amount}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fixedFee;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?f.default._fromProtobuf(e.feeCollectorAccountId):void 0,denominatingTokenId:null!=t.denominatingTokenId?s.default._fromProtobuf(t.denominatingTokenId):void 0,amount:null!=t.amount?t.amount:void 0})}}]),n}(l.default);t.default=y},function(e,t,n){"use strict";(function(t){e.exports=function(e,n){for(var r=Math.min(e.length,n.length),o=new t(r),a=0;a=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var o=0;o>>24&255,r[o++]=e>>>16&255,r[o++]=e>>>8&255,r[o++]=255&e}else for(r[o++]=255&e,r[o++]=e>>>8&255,r[o++]=e>>>16&255,r[o++]=e>>>24&255,r[o++]=0,r[o++]=0,r[o++]=0,r[o++]=0,a=8;a1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength;if(!(Number.isInteger(t)&&t>=0))throw new Error("Invalid offset!");if(!(Number.isInteger(n)&&n>=0))throw new Error("Invalid length!");return new DataView(e.buffer,e.byteOffset+t,Math.min(n,e.byteLength-t))};var o=r(n(3)),a=r(n(126)),i=r(n(25));t.REQUIRE_NON_NULL_ERROR="This value cannot be null | undefined.";t.REQUIRE_STRING_ERROR="This value must be a string.";t.REQUIRE_UINT8ARRAY_ERROR="This value must be a Uint8Array.";t.REQUIRE_STRING_OR_UINT8ARRAY_ERROR="This value must be a string or Uint8Array.";t.REQUIRE_NUMBER_ERROR="This value must be a Number.";t.REQUIRE_BIGNUMBER_ERROR="This value must be a BigNumber.";t.REQUIRE_ARRAY_ERROR="The provided variable must be an Array.";t.REQUIRE_LONG_ERROR="This value must be a Long.";t.REQUIRE_TYPE_ERROR="The provided variables are not matching types.";t.FUNCTION_CONVERT_TO_BIGNUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";t.FUNCTION_CONVERT_TO_NUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";function u(e){return null!=e&&null!=e}function c(e,t){return(0,o.default)(e)==(0,o.default)(t)}function s(e){return u(e)&&e instanceof Uint8Array}function l(e){return u(e)&&("number"==typeof e||e instanceof Number)}function f(e){return u(e)&&e instanceof a.default}function d(e){return u(e)&&e instanceof i.default}function p(e){return u(e)&&"string"==typeof e}function h(e){return u(e)&&(p(e)||s(e))}function y(e){if(u(e))return e;throw new Error("This value cannot be null | undefined.")}function b(e){if(y(e),f(e)||p(e)||l(e)||d(e))return new a.default(e);throw new Error("This value must be a String, Number, or BigNumber to be converted.")}t.FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR="Unable to parse given variable. Returns NaN."},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e){return(0,o.default)(this,n),t.call(this,e,"transaction ".concat(e.transactionId.toString()," failed precheck with status ").concat(e.status.toString()))}return n}(r(n(294)).default);t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(29)),l=r(n(226)),f=r(n(14)),d=r(n(25)),p=r(n(32));function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var y=function(e){(0,i.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._denominatingTokenId,null!=r.denominatingTokenId&&e.setDenominatingTokenId(r.denominatingTokenId),e._amount,null!=r.amount&&e.setAmount(r.amount),e}return(0,a.default)(n,[{key:"setHbarAmount",value:function(e){return this._amount=e.toTinybars(),this._denominatingTokenId=null,this}},{key:"hbarAmount",get:function(){return null!=this._denominatingTokenId?null:p.default.fromTinybars(null!=this._amount?this._amount:0)}},{key:"setDenominatingTokenToSameToken",value:function(){return this._denominatingTokenId=new s.default(0,0,0),this}},{key:"denominatingTokenId",get:function(){return this._denominatingTokenId}},{key:"setDenominatingTokenId",value:function(e){return this._denominatingTokenId="string"==typeof e?s.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?d.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fixedFee:{denominatingTokenId:null!=this._denominatingTokenId?this._denominatingTokenId._toProtobuf():null,amount:this._amount}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fixedFee;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?f.default._fromProtobuf(e.feeCollectorAccountId):void 0,denominatingTokenId:null!=t.denominatingTokenId?s.default._fromProtobuf(t.denominatingTokenId):void 0,amount:null!=t.amount?t.amount:void 0})}}]),n}(l.default);t.default=y},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="abi/5.0.7"},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return u.default}});var o=r(n(135)),a=r(n(577)),i=r(n(304)),u=r(n(320)),c=r(n(305)),s=r(n(85)),l=r(n(309)),f=r(n(236))},function(e,t,n){"use strict";!function(e){var t=function(e){var t,n=new Float64Array(16);if(e)for(t=0;t>24&255,e[t+1]=n>>16&255,e[t+2]=n>>8&255,e[t+3]=255&n,e[t+4]=r>>24&255,e[t+5]=r>>16&255,e[t+6]=r>>8&255,e[t+7]=255&r}function y(e,t,n,r,o){var a,i=0;for(a=0;a>>8)-1}function b(e,t,n,r){return y(e,t,n,r,16)}function m(e,t,n,r){return y(e,t,n,r,32)}function v(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,b=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,m=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,g=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,k=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=a,w=i,I=u,A=c,T=s,O=l,E=f,P=d,S=p,R=h,D=y,C=b,N=m,B=v,M=g,j=k,x=0;x<20;x+=2)_^=(o=(N^=(o=(S^=(o=(T^=(o=_+N|0)<<7|o>>>25)+_|0)<<9|o>>>23)+T|0)<<13|o>>>19)+S|0)<<18|o>>>14,O^=(o=(w^=(o=(B^=(o=(R^=(o=O+w|0)<<7|o>>>25)+O|0)<<9|o>>>23)+R|0)<<13|o>>>19)+B|0)<<18|o>>>14,D^=(o=(E^=(o=(I^=(o=(M^=(o=D+E|0)<<7|o>>>25)+D|0)<<9|o>>>23)+M|0)<<13|o>>>19)+I|0)<<18|o>>>14,j^=(o=(C^=(o=(P^=(o=(A^=(o=j+C|0)<<7|o>>>25)+j|0)<<9|o>>>23)+A|0)<<13|o>>>19)+P|0)<<18|o>>>14,_^=(o=(A^=(o=(I^=(o=(w^=(o=_+A|0)<<7|o>>>25)+_|0)<<9|o>>>23)+w|0)<<13|o>>>19)+I|0)<<18|o>>>14,O^=(o=(T^=(o=(P^=(o=(E^=(o=O+T|0)<<7|o>>>25)+O|0)<<9|o>>>23)+E|0)<<13|o>>>19)+P|0)<<18|o>>>14,D^=(o=(R^=(o=(S^=(o=(C^=(o=D+R|0)<<7|o>>>25)+D|0)<<9|o>>>23)+C|0)<<13|o>>>19)+S|0)<<18|o>>>14,j^=(o=(M^=(o=(B^=(o=(N^=(o=j+M|0)<<7|o>>>25)+j|0)<<9|o>>>23)+N|0)<<13|o>>>19)+B|0)<<18|o>>>14;_=_+a|0,w=w+i|0,I=I+u|0,A=A+c|0,T=T+s|0,O=O+l|0,E=E+f|0,P=P+d|0,S=S+p|0,R=R+h|0,D=D+y|0,C=C+b|0,N=N+m|0,B=B+v|0,M=M+g|0,j=j+k|0,e[0]=_>>>0&255,e[1]=_>>>8&255,e[2]=_>>>16&255,e[3]=_>>>24&255,e[4]=w>>>0&255,e[5]=w>>>8&255,e[6]=w>>>16&255,e[7]=w>>>24&255,e[8]=I>>>0&255,e[9]=I>>>8&255,e[10]=I>>>16&255,e[11]=I>>>24&255,e[12]=A>>>0&255,e[13]=A>>>8&255,e[14]=A>>>16&255,e[15]=A>>>24&255,e[16]=T>>>0&255,e[17]=T>>>8&255,e[18]=T>>>16&255,e[19]=T>>>24&255,e[20]=O>>>0&255,e[21]=O>>>8&255,e[22]=O>>>16&255,e[23]=O>>>24&255,e[24]=E>>>0&255,e[25]=E>>>8&255,e[26]=E>>>16&255,e[27]=E>>>24&255,e[28]=P>>>0&255,e[29]=P>>>8&255,e[30]=P>>>16&255,e[31]=P>>>24&255,e[32]=S>>>0&255,e[33]=S>>>8&255,e[34]=S>>>16&255,e[35]=S>>>24&255,e[36]=R>>>0&255,e[37]=R>>>8&255,e[38]=R>>>16&255,e[39]=R>>>24&255,e[40]=D>>>0&255,e[41]=D>>>8&255,e[42]=D>>>16&255,e[43]=D>>>24&255,e[44]=C>>>0&255,e[45]=C>>>8&255,e[46]=C>>>16&255,e[47]=C>>>24&255,e[48]=N>>>0&255,e[49]=N>>>8&255,e[50]=N>>>16&255,e[51]=N>>>24&255,e[52]=B>>>0&255,e[53]=B>>>8&255,e[54]=B>>>16&255,e[55]=B>>>24&255,e[56]=M>>>0&255,e[57]=M>>>8&255,e[58]=M>>>16&255,e[59]=M>>>24&255,e[60]=j>>>0&255,e[61]=j>>>8&255,e[62]=j>>>16&255,e[63]=j>>>24&255}(e,t,n,r)}function g(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,b=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,m=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,g=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,k=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=0;_<20;_+=2)a^=(o=(m^=(o=(p^=(o=(s^=(o=a+m|0)<<7|o>>>25)+a|0)<<9|o>>>23)+s|0)<<13|o>>>19)+p|0)<<18|o>>>14,l^=(o=(i^=(o=(v^=(o=(h^=(o=l+i|0)<<7|o>>>25)+l|0)<<9|o>>>23)+h|0)<<13|o>>>19)+v|0)<<18|o>>>14,y^=(o=(f^=(o=(u^=(o=(g^=(o=y+f|0)<<7|o>>>25)+y|0)<<9|o>>>23)+g|0)<<13|o>>>19)+u|0)<<18|o>>>14,k^=(o=(b^=(o=(d^=(o=(c^=(o=k+b|0)<<7|o>>>25)+k|0)<<9|o>>>23)+c|0)<<13|o>>>19)+d|0)<<18|o>>>14,a^=(o=(c^=(o=(u^=(o=(i^=(o=a+c|0)<<7|o>>>25)+a|0)<<9|o>>>23)+i|0)<<13|o>>>19)+u|0)<<18|o>>>14,l^=(o=(s^=(o=(d^=(o=(f^=(o=l+s|0)<<7|o>>>25)+l|0)<<9|o>>>23)+f|0)<<13|o>>>19)+d|0)<<18|o>>>14,y^=(o=(h^=(o=(p^=(o=(b^=(o=y+h|0)<<7|o>>>25)+y|0)<<9|o>>>23)+b|0)<<13|o>>>19)+p|0)<<18|o>>>14,k^=(o=(g^=(o=(v^=(o=(m^=(o=k+g|0)<<7|o>>>25)+k|0)<<9|o>>>23)+m|0)<<13|o>>>19)+v|0)<<18|o>>>14;e[0]=a>>>0&255,e[1]=a>>>8&255,e[2]=a>>>16&255,e[3]=a>>>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]=k>>>0&255,e[13]=k>>>8&255,e[14]=k>>>16&255,e[15]=k>>>24&255,e[16]=f>>>0&255,e[17]=f>>>8&255,e[18]=f>>>16&255,e[19]=f>>>24&255,e[20]=d>>>0&255,e[21]=d>>>8&255,e[22]=d>>>16&255,e[23]=d>>>24&255,e[24]=p>>>0&255,e[25]=p>>>8&255,e[26]=p>>>16&255,e[27]=p>>>24&255,e[28]=h>>>0&255,e[29]=h>>>8&255,e[30]=h>>>16&255,e[31]=h>>>24&255}(e,t,n,r)}var k=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function _(e,t,n,r,o,a,i){var u,c,s=new Uint8Array(16),l=new Uint8Array(64);for(c=0;c<16;c++)s[c]=0;for(c=0;c<8;c++)s[c]=a[c];for(;o>=64;){for(v(l,s,i,k),c=0;c<64;c++)e[t+c]=n[r+c]^l[c];for(u=1,c=8;c<16;c++)u=u+(255&s[c])|0,s[c]=255&u,u>>>=8;o-=64,t+=64,r+=64}if(o>0)for(v(l,s,i,k),c=0;c=64;){for(v(c,u,o,k),i=0;i<64;i++)e[t+i]=c[i];for(a=1,i=8;i<16;i++)a=a+(255&u[i])|0,u[i]=255&a,a>>>=8;n-=64,t+=64}if(n>0)for(v(c,u,o,k),i=0;i>>13|n<<3),r=255&e[4]|(255&e[5])<<8,this.r[2]=7939&(n>>>10|r<<6),o=255&e[6]|(255&e[7])<<8,this.r[3]=8191&(r>>>7|o<<9),a=255&e[8]|(255&e[9])<<8,this.r[4]=255&(o>>>4|a<<12),this.r[5]=a>>>1&8190,i=255&e[10]|(255&e[11])<<8,this.r[6]=8191&(a>>>14|i<<2),u=255&e[12]|(255&e[13])<<8,this.r[7]=8065&(i>>>11|u<<5),c=255&e[14]|(255&e[15])<<8,this.r[8]=8191&(u>>>8|c<<8),this.r[9]=c>>>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 O(e,t,n,r,o,a){var i=new T(a);return i.update(n,r,o),i.finish(e,t),0}function E(e,t,n,r,o,a){var i=new Uint8Array(16);return O(i,0,n,r,o,a),b(e,t,i,0)}function P(e,t,n,r,o){var a;if(n<32)return-1;for(A(e,0,t,0,n,r,o),O(e,16,e,32,n-32,e),a=0;a<16;a++)e[a]=0;return 0}function S(e,t,n,r,o){var a,i=new Uint8Array(32);if(n<32)return-1;if(I(i,0,32,r,o),0!==E(t,16,t,32,n-32,i))return-1;for(A(e,0,t,0,n,r,o),a=0;a<32;a++)e[a]=0;return 0}function R(e,t){var n;for(n=0;n<16;n++)e[n]=0|t[n]}function D(e){var t,n,r=1;for(t=0;t<16;t++)n=e[t]+r+65535,r=Math.floor(n/65536),e[t]=n-65536*r;e[0]+=r-1+37*(r-1)}function C(e,t,n){for(var r,o=~(n-1),a=0;a<16;a++)r=o&(e[a]^t[a]),e[a]^=r,t[a]^=r}function N(e,n){var r,o,a,i=t(),u=t();for(r=0;r<16;r++)u[r]=n[r];for(D(u),D(u),D(u),o=0;o<2;o++){for(i[0]=u[0]-65517,r=1;r<15;r++)i[r]=u[r]-65535-(i[r-1]>>16&1),i[r-1]&=65535;i[15]=u[15]-32767-(i[14]>>16&1),a=i[15]>>16&1,i[14]&=65535,C(u,i,1-a)}for(r=0;r<16;r++)e[2*r]=255&u[r],e[2*r+1]=u[r]>>8}function B(e,t){var n=new Uint8Array(32),r=new Uint8Array(32);return N(n,e),N(r,t),m(n,0,r,0)}function M(e){var t=new Uint8Array(32);return N(t,e),1&t[0]}function j(e,t){var n;for(n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}function x(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]+n[r]}function F(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]-n[r]}function U(e,t,n){var r,o,a=0,i=0,u=0,c=0,s=0,l=0,f=0,d=0,p=0,h=0,y=0,b=0,m=0,v=0,g=0,k=0,_=0,w=0,I=0,A=0,T=0,O=0,E=0,P=0,S=0,R=0,D=0,C=0,N=0,B=0,M=0,j=n[0],x=n[1],F=n[2],U=n[3],L=n[4],K=n[5],G=n[6],z=n[7],Q=n[8],H=n[9],V=n[10],q=n[11],W=n[12],Y=n[13],Z=n[14],J=n[15];a+=(r=t[0])*j,i+=r*x,u+=r*F,c+=r*U,s+=r*L,l+=r*K,f+=r*G,d+=r*z,p+=r*Q,h+=r*H,y+=r*V,b+=r*q,m+=r*W,v+=r*Y,g+=r*Z,k+=r*J,i+=(r=t[1])*j,u+=r*x,c+=r*F,s+=r*U,l+=r*L,f+=r*K,d+=r*G,p+=r*z,h+=r*Q,y+=r*H,b+=r*V,m+=r*q,v+=r*W,g+=r*Y,k+=r*Z,_+=r*J,u+=(r=t[2])*j,c+=r*x,s+=r*F,l+=r*U,f+=r*L,d+=r*K,p+=r*G,h+=r*z,y+=r*Q,b+=r*H,m+=r*V,v+=r*q,g+=r*W,k+=r*Y,_+=r*Z,w+=r*J,c+=(r=t[3])*j,s+=r*x,l+=r*F,f+=r*U,d+=r*L,p+=r*K,h+=r*G,y+=r*z,b+=r*Q,m+=r*H,v+=r*V,g+=r*q,k+=r*W,_+=r*Y,w+=r*Z,I+=r*J,s+=(r=t[4])*j,l+=r*x,f+=r*F,d+=r*U,p+=r*L,h+=r*K,y+=r*G,b+=r*z,m+=r*Q,v+=r*H,g+=r*V,k+=r*q,_+=r*W,w+=r*Y,I+=r*Z,A+=r*J,l+=(r=t[5])*j,f+=r*x,d+=r*F,p+=r*U,h+=r*L,y+=r*K,b+=r*G,m+=r*z,v+=r*Q,g+=r*H,k+=r*V,_+=r*q,w+=r*W,I+=r*Y,A+=r*Z,T+=r*J,f+=(r=t[6])*j,d+=r*x,p+=r*F,h+=r*U,y+=r*L,b+=r*K,m+=r*G,v+=r*z,g+=r*Q,k+=r*H,_+=r*V,w+=r*q,I+=r*W,A+=r*Y,T+=r*Z,O+=r*J,d+=(r=t[7])*j,p+=r*x,h+=r*F,y+=r*U,b+=r*L,m+=r*K,v+=r*G,g+=r*z,k+=r*Q,_+=r*H,w+=r*V,I+=r*q,A+=r*W,T+=r*Y,O+=r*Z,E+=r*J,p+=(r=t[8])*j,h+=r*x,y+=r*F,b+=r*U,m+=r*L,v+=r*K,g+=r*G,k+=r*z,_+=r*Q,w+=r*H,I+=r*V,A+=r*q,T+=r*W,O+=r*Y,E+=r*Z,P+=r*J,h+=(r=t[9])*j,y+=r*x,b+=r*F,m+=r*U,v+=r*L,g+=r*K,k+=r*G,_+=r*z,w+=r*Q,I+=r*H,A+=r*V,T+=r*q,O+=r*W,E+=r*Y,P+=r*Z,S+=r*J,y+=(r=t[10])*j,b+=r*x,m+=r*F,v+=r*U,g+=r*L,k+=r*K,_+=r*G,w+=r*z,I+=r*Q,A+=r*H,T+=r*V,O+=r*q,E+=r*W,P+=r*Y,S+=r*Z,R+=r*J,b+=(r=t[11])*j,m+=r*x,v+=r*F,g+=r*U,k+=r*L,_+=r*K,w+=r*G,I+=r*z,A+=r*Q,T+=r*H,O+=r*V,E+=r*q,P+=r*W,S+=r*Y,R+=r*Z,D+=r*J,m+=(r=t[12])*j,v+=r*x,g+=r*F,k+=r*U,_+=r*L,w+=r*K,I+=r*G,A+=r*z,T+=r*Q,O+=r*H,E+=r*V,P+=r*q,S+=r*W,R+=r*Y,D+=r*Z,C+=r*J,v+=(r=t[13])*j,g+=r*x,k+=r*F,_+=r*U,w+=r*L,I+=r*K,A+=r*G,T+=r*z,O+=r*Q,E+=r*H,P+=r*V,S+=r*q,R+=r*W,D+=r*Y,C+=r*Z,N+=r*J,g+=(r=t[14])*j,k+=r*x,_+=r*F,w+=r*U,I+=r*L,A+=r*K,T+=r*G,O+=r*z,E+=r*Q,P+=r*H,S+=r*V,R+=r*q,D+=r*W,C+=r*Y,N+=r*Z,B+=r*J,k+=(r=t[15])*j,i+=38*(w+=r*F),u+=38*(I+=r*U),c+=38*(A+=r*L),s+=38*(T+=r*K),l+=38*(O+=r*G),f+=38*(E+=r*z),d+=38*(P+=r*Q),p+=38*(S+=r*H),h+=38*(R+=r*V),y+=38*(D+=r*q),b+=38*(C+=r*W),m+=38*(N+=r*Y),v+=38*(B+=r*Z),g+=38*(M+=r*J),a=(r=(a+=38*(_+=r*x))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),a=(r=(a+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),a+=o-1+37*(o-1),e[0]=a,e[1]=i,e[2]=u,e[3]=c,e[4]=s,e[5]=l,e[6]=f,e[7]=d,e[8]=p,e[9]=h,e[10]=y,e[11]=b,e[12]=m,e[13]=v,e[14]=g,e[15]=k}function L(e,t){U(e,t,t)}function K(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=253;r>=0;r--)L(o,o),2!==r&&4!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function G(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=250;r>=0;r--)L(o,o),1!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function z(e,n,r){var o,a,i=new Uint8Array(32),u=new Float64Array(80),s=t(),l=t(),f=t(),d=t(),p=t(),h=t();for(a=0;a<31;a++)i[a]=n[a];for(i[31]=127&n[31]|64,i[0]&=248,j(u,r),a=0;a<16;a++)l[a]=u[a],d[a]=s[a]=f[a]=0;for(s[0]=d[0]=1,a=254;a>=0;--a)C(s,l,o=i[a>>>3]>>>(7&a)&1),C(f,d,o),x(p,s,f),F(s,s,f),x(f,l,d),F(l,l,d),L(d,p),L(h,s),U(s,f,s),U(f,l,p),x(p,s,f),F(s,s,f),L(l,s),F(f,d,h),U(s,f,c),x(s,s,d),U(f,f,s),U(s,d,h),U(d,l,u),L(l,p),C(s,l,o),C(f,d,o);for(a=0;a<16;a++)u[a+16]=s[a],u[a+32]=f[a],u[a+48]=l[a],u[a+64]=d[a];var y=u.subarray(32),b=u.subarray(16);return K(y,y),U(b,b,y),N(e,b),0}function Q(e,t){return z(e,t,a)}function H(e,t){return r(t,32),Q(e,t)}function V(e,t,n){var r=new Uint8Array(32);return z(r,n,t),g(e,o,r,k)}T.prototype.blocks=function(e,t,n){for(var r,o,a,i,u,c,s,l,f,d,p,h,y,b,m,v,g,k,_,w=this.fin?0:2048,I=this.h[0],A=this.h[1],T=this.h[2],O=this.h[3],E=this.h[4],P=this.h[5],S=this.h[6],R=this.h[7],D=this.h[8],C=this.h[9],N=this.r[0],B=this.r[1],M=this.r[2],j=this.r[3],x=this.r[4],F=this.r[5],U=this.r[6],L=this.r[7],K=this.r[8],G=this.r[9];n>=16;)d=f=0,d+=(I+=8191&(r=255&e[t+0]|(255&e[t+1])<<8))*N,d+=(A+=8191&(r>>>13|(o=255&e[t+2]|(255&e[t+3])<<8)<<3))*(5*G),d+=(T+=8191&(o>>>10|(a=255&e[t+4]|(255&e[t+5])<<8)<<6))*(5*K),d+=(O+=8191&(a>>>7|(i=255&e[t+6]|(255&e[t+7])<<8)<<9))*(5*L),f=(d+=(E+=8191&(i>>>4|(u=255&e[t+8]|(255&e[t+9])<<8)<<12))*(5*U))>>>13,d&=8191,d+=(P+=u>>>1&8191)*(5*F),d+=(S+=8191&(u>>>14|(c=255&e[t+10]|(255&e[t+11])<<8)<<2))*(5*x),d+=(R+=8191&(c>>>11|(s=255&e[t+12]|(255&e[t+13])<<8)<<5))*(5*j),d+=(D+=8191&(s>>>8|(l=255&e[t+14]|(255&e[t+15])<<8)<<8))*(5*M),p=f+=(d+=(C+=l>>>5|w)*(5*B))>>>13,p+=I*B,p+=A*N,p+=T*(5*G),p+=O*(5*K),f=(p+=E*(5*L))>>>13,p&=8191,p+=P*(5*U),p+=S*(5*F),p+=R*(5*x),p+=D*(5*j),f+=(p+=C*(5*M))>>>13,p&=8191,h=f,h+=I*M,h+=A*B,h+=T*N,h+=O*(5*G),f=(h+=E*(5*K))>>>13,h&=8191,h+=P*(5*L),h+=S*(5*U),h+=R*(5*F),h+=D*(5*x),y=f+=(h+=C*(5*j))>>>13,y+=I*j,y+=A*M,y+=T*B,y+=O*N,f=(y+=E*(5*G))>>>13,y&=8191,y+=P*(5*K),y+=S*(5*L),y+=R*(5*U),y+=D*(5*F),b=f+=(y+=C*(5*x))>>>13,b+=I*x,b+=A*j,b+=T*M,b+=O*B,f=(b+=E*N)>>>13,b&=8191,b+=P*(5*G),b+=S*(5*K),b+=R*(5*L),b+=D*(5*U),m=f+=(b+=C*(5*F))>>>13,m+=I*F,m+=A*x,m+=T*j,m+=O*M,f=(m+=E*B)>>>13,m&=8191,m+=P*N,m+=S*(5*G),m+=R*(5*K),m+=D*(5*L),v=f+=(m+=C*(5*U))>>>13,v+=I*U,v+=A*F,v+=T*x,v+=O*j,f=(v+=E*M)>>>13,v&=8191,v+=P*B,v+=S*N,v+=R*(5*G),v+=D*(5*K),g=f+=(v+=C*(5*L))>>>13,g+=I*L,g+=A*U,g+=T*F,g+=O*x,f=(g+=E*j)>>>13,g&=8191,g+=P*M,g+=S*B,g+=R*N,g+=D*(5*G),k=f+=(g+=C*(5*K))>>>13,k+=I*K,k+=A*L,k+=T*U,k+=O*F,f=(k+=E*x)>>>13,k&=8191,k+=P*j,k+=S*M,k+=R*B,k+=D*N,_=f+=(k+=C*(5*G))>>>13,_+=I*G,_+=A*K,_+=T*L,_+=O*U,f=(_+=E*F)>>>13,_&=8191,_+=P*x,_+=S*j,_+=R*M,_+=D*B,I=d=8191&(f=(f=((f+=(_+=C*N)>>>13)<<2)+f|0)+(d&=8191)|0),A=p+=f>>>=13,T=h&=8191,O=y&=8191,E=b&=8191,P=m&=8191,S=v&=8191,R=g&=8191,D=k&=8191,C=_&=8191,t+=16,n-=16;this.h[0]=I,this.h[1]=A,this.h[2]=T,this.h[3]=O,this.h[4]=E,this.h[5]=P,this.h[6]=S,this.h[7]=R,this.h[8]=D,this.h[9]=C},T.prototype.finish=function(e,t){var n,r,o,a,i=new Uint16Array(10);if(this.leftover){for(a=this.leftover,this.buffer[a++]=1;a<16;a++)this.buffer[a]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(n=this.h[1]>>>13,this.h[1]&=8191,a=2;a<10;a++)this.h[a]+=n,n=this.h[a]>>>13,this.h[a]&=8191;for(this.h[0]+=5*n,n=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=n,n=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=n,i[0]=this.h[0]+5,n=i[0]>>>13,i[0]&=8191,a=1;a<10;a++)i[a]=this.h[a]+n,n=i[a]>>>13,i[a]&=8191;for(i[9]-=8192,r=(1^n)-1,a=0;a<10;a++)i[a]&=r;for(r=~r,a=0;a<10;a++)this.h[a]=this.h[a]&r|i[a];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,a=1;a<8;a++)o=(this.h[a]+this.pad[a]|0)+(o>>>16)|0,this.h[a]=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},T.prototype.update=function(e,t,n){var r,o;if(this.leftover){for((o=16-this.leftover)>n&&(o=n),r=0;r=16&&(o=n-n%16,this.blocks(e,t,o),t+=o,n-=o),n){for(r=0;r=128;){for(w=0;w<16;w++)I=8*w+W,R[w]=n[I+0]<<24|n[I+1]<<16|n[I+2]<<8|n[I+3],D[w]=n[I+4]<<24|n[I+5]<<16|n[I+6]<<8|n[I+7];for(w=0;w<80;w++)if(o=C,a=N,i=B,u=M,c=j,s=x,l=F,U,d=L,p=K,h=G,y=z,b=Q,m=H,v=V,q,O=65535&(T=q),E=T>>>16,P=65535&(A=U),S=A>>>16,O+=65535&(T=(Q>>>14|j<<18)^(Q>>>18|j<<14)^(j>>>9|Q<<23)),E+=T>>>16,P+=65535&(A=(j>>>14|Q<<18)^(j>>>18|Q<<14)^(Q>>>9|j<<23)),S+=A>>>16,O+=65535&(T=Q&H^~Q&V),E+=T>>>16,P+=65535&(A=j&x^~j&F),S+=A>>>16,O+=65535&(T=Y[2*w+1]),E+=T>>>16,P+=65535&(A=Y[2*w]),S+=A>>>16,A=R[w%16],E+=(T=D[w%16])>>>16,P+=65535&A,S+=A>>>16,P+=(E+=(O+=65535&T)>>>16)>>>16,O=65535&(T=_=65535&O|E<<16),E=T>>>16,P=65535&(A=k=65535&P|(S+=P>>>16)<<16),S=A>>>16,O+=65535&(T=(L>>>28|C<<4)^(C>>>2|L<<30)^(C>>>7|L<<25)),E+=T>>>16,P+=65535&(A=(C>>>28|L<<4)^(L>>>2|C<<30)^(L>>>7|C<<25)),S+=A>>>16,E+=(T=L&K^L&G^K&G)>>>16,P+=65535&(A=C&N^C&B^N&B),S+=A>>>16,f=65535&(P+=(E+=(O+=65535&T)>>>16)>>>16)|(S+=P>>>16)<<16,g=65535&O|E<<16,O=65535&(T=y),E=T>>>16,P=65535&(A=u),S=A>>>16,E+=(T=_)>>>16,P+=65535&(A=k),S+=A>>>16,N=o,B=a,M=i,j=u=65535&(P+=(E+=(O+=65535&T)>>>16)>>>16)|(S+=P>>>16)<<16,x=c,F=s,U=l,C=f,K=d,G=p,z=h,Q=y=65535&O|E<<16,H=b,V=m,q=v,L=g,w%16==15)for(I=0;I<16;I++)A=R[I],O=65535&(T=D[I]),E=T>>>16,P=65535&A,S=A>>>16,A=R[(I+9)%16],O+=65535&(T=D[(I+9)%16]),E+=T>>>16,P+=65535&A,S+=A>>>16,k=R[(I+1)%16],O+=65535&(T=((_=D[(I+1)%16])>>>1|k<<31)^(_>>>8|k<<24)^(_>>>7|k<<25)),E+=T>>>16,P+=65535&(A=(k>>>1|_<<31)^(k>>>8|_<<24)^k>>>7),S+=A>>>16,k=R[(I+14)%16],E+=(T=((_=D[(I+14)%16])>>>19|k<<13)^(k>>>29|_<<3)^(_>>>6|k<<26))>>>16,P+=65535&(A=(k>>>19|_<<13)^(_>>>29|k<<3)^k>>>6),S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,R[I]=65535&P|S<<16,D[I]=65535&O|E<<16;O=65535&(T=L),E=T>>>16,P=65535&(A=C),S=A>>>16,A=e[0],E+=(T=t[0])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[0]=C=65535&P|S<<16,t[0]=L=65535&O|E<<16,O=65535&(T=K),E=T>>>16,P=65535&(A=N),S=A>>>16,A=e[1],E+=(T=t[1])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[1]=N=65535&P|S<<16,t[1]=K=65535&O|E<<16,O=65535&(T=G),E=T>>>16,P=65535&(A=B),S=A>>>16,A=e[2],E+=(T=t[2])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[2]=B=65535&P|S<<16,t[2]=G=65535&O|E<<16,O=65535&(T=z),E=T>>>16,P=65535&(A=M),S=A>>>16,A=e[3],E+=(T=t[3])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[3]=M=65535&P|S<<16,t[3]=z=65535&O|E<<16,O=65535&(T=Q),E=T>>>16,P=65535&(A=j),S=A>>>16,A=e[4],E+=(T=t[4])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[4]=j=65535&P|S<<16,t[4]=Q=65535&O|E<<16,O=65535&(T=H),E=T>>>16,P=65535&(A=x),S=A>>>16,A=e[5],E+=(T=t[5])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[5]=x=65535&P|S<<16,t[5]=H=65535&O|E<<16,O=65535&(T=V),E=T>>>16,P=65535&(A=F),S=A>>>16,A=e[6],E+=(T=t[6])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[6]=F=65535&P|S<<16,t[6]=V=65535&O|E<<16,O=65535&(T=q),E=T>>>16,P=65535&(A=U),S=A>>>16,A=e[7],E+=(T=t[7])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[7]=U=65535&P|S<<16,t[7]=q=65535&O|E<<16,W+=128,r-=128}return r}function J(e,t,n){var r,o=new Int32Array(8),a=new Int32Array(8),i=new Uint8Array(256),u=n;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,a[0]=4089235720,a[1]=2227873595,a[2]=4271175723,a[3]=1595750129,a[4]=2917565137,a[5]=725511199,a[6]=4215389547,a[7]=327033209,Z(o,a,t,n),n%=128,r=0;r=0;--o)$(e,t,r=n[o/8|0]>>(7&o)&1),X(t,e),X(e,e),$(e,t,r)}function ne(e,n){var r=[t(),t(),t(),t()];R(r[0],f),R(r[1],d),R(r[2],u),U(r[3],f,d),te(e,r,n)}function re(e,n,o){var a,i=new Uint8Array(64),u=[t(),t(),t(),t()];for(o||r(n,32),J(i,n,32),i[0]&=248,i[31]&=127,i[31]|=64,ne(u,i),ee(e,u),a=0;a<32;a++)n[a+32]=e[a];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 ae(e,t){var n,r,o,a;for(r=63;r>=32;--r){for(n=0,o=r-32,a=r-12;o>4)*oe[o],n=t[o]>>8,t[o]&=255;for(o=0;o<32;o++)t[o]-=n*oe[o];for(r=0;r<32;r++)t[r+1]+=t[r]>>8,e[r]=255&t[r]}function ie(e){var t,n=new Float64Array(64);for(t=0;t<64;t++)n[t]=e[t];for(t=0;t<64;t++)e[t]=0;ae(e,n)}function ue(e,n,r,o){var a,i,u=new Uint8Array(64),c=new Uint8Array(64),s=new Uint8Array(64),l=new Float64Array(64),f=[t(),t(),t(),t()];J(u,o,32),u[0]&=248,u[31]&=127,u[31]|=64;var d=r+64;for(a=0;a>7&&F(e[0],i,e[0]),U(e[3],e[0],e[1]),0)}(d,o))return-1;for(a=0;a=0},e.sign.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(64);return re(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(le(e),64!==e.length)throw new Error("bad secret key size");for(var t=new Uint8Array(32),n=0;n0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function s(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){u(e.precomputed);var n=e._getDoubles(),r=a(t,1,this._bitLength),o=(1<=i;l--)c=(c<<1)+r[l];s.push(c)}for(var f=this.jpoint(null,null,null),d=this.jpoint(null,null,null),p=o;p>0;p--){for(i=0;i=0;s--){for(var l=0;s>=0&&0===i[s];s--)l++;if(s>=0&&l++,c=c.dblp(l),s<0)break;var f=i[s];u(0!==f),c="affine"===e.type?f>0?c.mixedAdd(o[f-1>>1]):c.mixedAdd(o[-f-1>>1].neg()):f>0?c.add(o[f-1>>1]):c.add(o[-f-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,o){var u,c,s,l=this._wnafT1,f=this._wnafT2,d=this._wnafT3,p=0;for(u=0;u=1;u-=2){var y=u-1,b=u;if(1===l[y]&&1===l[b]){var m=[t[y],null,null,t[b]];0===t[y].y.cmp(t[b].y)?(m[1]=t[y].add(t[b]),m[2]=t[y].toJ().mixedAdd(t[b].neg())):0===t[y].y.cmp(t[b].y.redNeg())?(m[1]=t[y].toJ().mixedAdd(t[b]),m[2]=t[y].add(t[b].neg())):(m[1]=t[y].toJ().mixedAdd(t[b]),m[2]=t[y].toJ().mixedAdd(t[b].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],g=i(n[y],n[b]);for(p=Math.max(g[0].length,p),d[y]=new Array(p),d[b]=new Array(p),c=0;c=0;u--){for(var A=0;u>=0;){var T=!0;for(c=0;c=0&&A++,w=w.dblp(A),u<0)break;for(c=0;c0?s=f[c][O-1>>1]:O<0&&(s=f[c][-O-1>>1].neg()),w="affine"===s.type?w.mixedAdd(s):w.add(s))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},s.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,o=0;o1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength;if(!(Number.isInteger(t)&&t>=0))throw new Error("Invalid offset!");if(!(Number.isInteger(n)&&n>=0))throw new Error("Invalid length!");return new DataView(e.buffer,e.byteOffset+t,Math.min(n,e.byteLength-t))};var o=r(n(3)),a=r(n(107)),i=r(n(16));t.REQUIRE_NON_NULL_ERROR="This value cannot be null | undefined.";t.REQUIRE_STRING_ERROR="This value must be a string.";t.REQUIRE_UINT8ARRAY_ERROR="This value must be a Uint8Array.";t.REQUIRE_STRING_OR_UINT8ARRAY_ERROR="This value must be a string or Uint8Array.";t.REQUIRE_NUMBER_ERROR="This value must be a Number.";t.REQUIRE_BIGNUMBER_ERROR="This value must be a BigNumber.";t.REQUIRE_ARRAY_ERROR="The provided variable must be an Array.";t.REQUIRE_LONG_ERROR="This value must be a Long.";t.REQUIRE_TYPE_ERROR="The provided variables are not matching types.";t.FUNCTION_CONVERT_TO_BIGNUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";t.FUNCTION_CONVERT_TO_NUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";function u(e){return null!=e&&null!=e}function c(e,t){return(0,o.default)(e)==(0,o.default)(t)}function s(e){return u(e)&&e instanceof Uint8Array}function l(e){return u(e)&&("number"==typeof e||e instanceof Number)}function f(e){return u(e)&&e instanceof a.default}function d(e){return u(e)&&e instanceof i.default}function p(e){return u(e)&&"string"==typeof e}function h(e){return u(e)&&(p(e)||s(e))}function y(e){if(u(e))return e;throw new Error("This value cannot be null | undefined.")}function b(e){if(y(e),f(e)||p(e)||l(e)||d(e))return new a.default(e);throw new Error("This value must be a String, Number, or BigNumber to be converted.")}t.FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR="Unable to parse given variable. Returns NaN."},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(9)),c=r(n(48)),s=r(n(51)),l=r(n(98)),f=r(n(23)),d=r(n(113)),p=r(n(333)),h=r(n(110)),y=r(n(16)),b=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30)),m=r(n(61));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}var g=function(){function e(t){(0,a.default)(this,e),this.status=t.status,this.accountId=t.accountId,this.fileId=t.fileId,this.contractId=t.contractId,this.topicId=t.topicId,this.tokenId=t.tokenId,this.scheduleId=t.scheduleId,this.exchangeRate=t.exchangeRate,this.topicSequenceNumber=t.topicSequenceNumber,this.topicRunningHash=t.topicRunningHash,this.totalSupply=t.totalSupply,this.scheduledTransactionId=t.scheduledTransactionId,this.serials=t.serials,this.duplicates=t.duplicates,this.children=t.children,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{duplicateTransactionReceipts:this.duplicates.map((function(e){return e._toProtobuf().receipt})),childTransactionReceipts:this.children.map((function(e){return e._toProtobuf().receipt})),receipt:{status:this.status.valueOf(),accountID:null!=this.accountId?this.accountId._toProtobuf():null,fileID:null!=this.fileId?this.fileId._toProtobuf():null,contractID:null!=this.contractId?this.contractId._toProtobuf():null,topicID:null!=this.topicId?this.topicId._toProtobuf():null,tokenID:null!=this.tokenId?this.tokenId._toProtobuf():null,scheduleID:null!=this.scheduleId?this.scheduleId._toProtobuf():null,topicRunningHash:null==this.topicRunningHash?null:this.topicRunningHash,topicSequenceNumber:this.topicSequenceNumber,exchangeRate:{nextRate:null,currentRate:null!=this.exchangeRate?this.exchangeRate._toProtobuf():null},scheduledTransactionID:null!=this.scheduledTransactionId?this.scheduledTransactionId._toProtobuf():null,serialNumbers:this.serials,newTotalSupply:this.totalSupply}}}},{key:"toBytes",value:function(){return b.TransactionGetReceiptResponse.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.receipt,r=n.exchangeRate,o=null!=t.childTransactionReceipts?t.childTransactionReceipts.map((function(t){return e._fromProtobuf({receipt:t})})):[],a=null!=t.duplicateTransactionReceipts?t.duplicateTransactionReceipts.map((function(t){return e._fromProtobuf({receipt:t})})):[];return new e({status:h.default._fromCode(null!=n.status?n.status:0),accountId:null!=n.accountID?u.default._fromProtobuf(n.accountID):null,fileId:null!=n.fileID?s.default._fromProtobuf(n.fileID):null,contractId:null!=n.contractID?c.default._fromProtobuf(n.contractID):null,topicId:null!=n.topicID?l.default._fromProtobuf(n.topicID):null,tokenId:null!=n.tokenID?f.default._fromProtobuf(n.tokenID):null,scheduleId:null!=n.scheduleID?d.default._fromProtobuf(n.scheduleID):null,exchangeRate:null!=n.exchangeRate?p.default._fromProtobuf(r.currentRate):null,topicSequenceNumber:null==n.topicSequenceNumber?null:y.default.fromValue(n.topicSequenceNumber),topicRunningHash:null!=n.topicRunningHash?n.topicRunningHash:null,totalSupply:null!=n.newTotalSupply?n.newTotalSupply:null,scheduledTransactionId:null!=n.scheduledTransactionID?m.default._fromProtobuf(n.scheduledTransactionID):null,serials:null!=n.serialNumbers?n.serialNumbers:[],children:o,duplicates:a})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(b.TransactionGetReceiptResponse.decode(t))}}]),e}();t.default=g},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(9)),u=r(n(26)),c=function(){function e(t){(0,o.default)(this,e),this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount.toTinybars()}}}],[{key:"_fromProtobuf",value:function(t){return new e({spenderAccountId:i.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?i.default._fromProtobuf(t.owner):null,amount:u.default.fromTinybars(null!=t.amount?t.amount:0)})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(23)),u=r(n(9)),c=r(n(16)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount}}}],[{key:"_fromProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,amount:null!=t.amount?c.default.fromValue(t.amount):null})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(23)),u=r(n(9)),c=r(n(16)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.serialNumbers=t.serialNumbers,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,approvedForAll:null==this.serialNumbers?{value:!0}:null,serialNumbers:this.serialNumbers}}}],[{key:"_fromProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,serialNumbers:null!=t.approvedForAll&&t.approvedForAll.value?null:null!=t.serialNumbers?t.serialNumbers.map((function(e){return c.default.fromValue(e)})):[]})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=h(n(349)),s=h(n(88)),l=h(n(60)),f=r(n(107)),d=h(n(186));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n16)throw new TypeError("uint64/int64 requires BigNumber to be less than or equal to 8 bytes");if(!t.isInteger())throw new TypeError("uint64/int64 requires BigNumber to be an integer");P.length%2==1&&(P="0".concat(P));var S=l.decode(P);o.set(S,32-S.length)}return o;case c.ArgumentType.int256:case c.ArgumentType.uint256:if(f.default.isBigNumber(t)){var R=t.toString(16);R.length%2==1&&(R="0".concat(R));var D=l.decode(R);o.set(D,32-D.length)}return o;case c.ArgumentType.address:return o.set(t,12),o;case c.ArgumentType.bool:return o[31]=t?1:0,o;case c.ArgumentType.func:return o.set(t,8),o;case c.ArgumentType.bytes32:return o.set(t,0),o;case c.ArgumentType.bytes:case c.ArgumentType.string:return r=t instanceof Uint8Array?t:s.encode(t),(o=Math.floor(r.length/32)>=0&&0!==Math.floor(r.length%32)?new Uint8Array(32*(Math.floor(r.length/32)+1)+32):new Uint8Array(64)).set(r,32),(i=d.safeView(o,28)).setUint32(0,r.length),o;default:throw new Error("Unsupported argument type: ".concat(n.toString()))}}(e,this._selector._paramTypes[n]);return this._arguments.push({dynamic:t,value:r}),this}},{key:"_build",value:function(e){var t=null!=e,n=t?4:0,r=0===this._arguments.length?n:32*this._arguments.length+this._arguments.map((function(e){return e.dynamic?e.value.length:0})).reduce((function(e,t){return e+t}))+n,o=new Uint8Array(r);t&&o.set(this._selector._build(e),0);var i,u=32*this._arguments.length,c=y(this._arguments.entries());try{for(c.s();!(i=c.n()).done;){var s=(0,a.default)(i.value,2),l=s[0],f=s[1],p=f.dynamic,h=f.value;if(p){var b=d.safeView(o,n+32*l+28);b.setUint32(0,u),o.set(h,b.getUint32(0)+n),u+=h.length}else o.set(h,n+32*l)}}catch(e){c.e(e)}finally{c.f()}return o}}]),e}();function v(e,t,n){n(t,f.default.isBigNumber(e)?e.toNumber():e)}t.default=m},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(9)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobuf",value:function(e){throw new Error("not implemented")}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(192)),l=r(n(9)),f=r(n(16));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var p=function(e){(0,i.default)(n,e);var t=d(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e._min,null!=r.min&&e.setMin(r.min),e._max,null!=r.max&&e.setMax(r.max),e._assessmentMethod,null!=r.assessmentMethod&&e.setAssessmentMethod(r.assessmentMethod),e}return(0,a.default)(n,[{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"min",get:function(){return this._min}},{key:"setMin",value:function(e){return this._min="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"max",get:function(){return this._max}},{key:"setMax",value:function(e){return this._max="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"assessmentMethod",get:function(){return this._assessmentMethod}},{key:"setAssessmentMethod",value:function(e){return this._assessmentMethod=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fractionalFee:{fractionalAmount:{numerator:this._numerator,denominator:this._denominator},minimumAmount:this._min,maximumAmount:this._max}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fractionalFee,r=t.fractionalAmount;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0,min:null!=t.minimumAmount?t.minimumAmount:void 0,max:null!=t.maximumAmount?t.maximumAmount:void 0})}}]),n}(s.default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(192)),l=r(n(9)),f=r(n(16)),d=r(n(163));function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var h=function(e){(0,i.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._fallbackFee,null!=r.fallbackFee&&e.setFallbackFee(r.fallbackFee),e._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e}return(0,a.default)(n,[{key:"fallbackFee",get:function(){return this._fallbackFee}},{key:"setFallbackFee",value:function(e){return this._fallbackFee=e,this}},{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,royaltyFee:{exchangeValueFraction:{numerator:this._numerator,denominator:this._denominator},fallbackFee:null!=this._fallbackFee?this._fallbackFee._toProtobuf().fixedFee:null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.royaltyFee,r=t.exchangeValueFraction;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,fallbackFee:null!=t.fallbackFee?d.default._fromProtobuf({fixedFee:t.fallbackFee}):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0})}}]),n}(s.default);t.default=h},function(e,t,n){"use strict";(function(e){var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getLength=t.decode=t.encode=void 0;var o=r(n(13));function a(e,t){if("0"===e[0]&&"0"===e[1])throw new Error("invalid RLP: extra zeros");return parseInt(e,t)}function i(t,n){if(t<56)return e.from([t+n]);var r=c(t),o=c(n+55+r.length/2);return e.from(o+r,"hex")}function u(e){return"0x"===e.slice(0,2)}function c(e){if(e<0)throw new Error("Invalid integer as argument, must be unsigned!");var t=e.toString(16);return t.length%2?"0"+t:t}function s(t){if(!e.isBuffer(t)){if("string"==typeof t)return u(t)?e.from((r="string"!=typeof(a=t)?a:u(a)?a.slice(2):a).length%2?"0"+r:r,"hex"):e.from(t);if("number"==typeof t||"bigint"==typeof t)return t?(n=c(t),e.from(n,"hex")):e.from([]);if(null==t)return e.from([]);if(t instanceof Uint8Array)return e.from(t);if(o.default.isBN(t))return e.from(t.toArray());throw new Error("invalid type")}var n,r,a;return t}t.encode=function t(n){if(Array.isArray(n)){for(var r=[],o=0;on.length)throw new Error("invalid rlp: total length is larger than the data");if(0===(u=n.slice(o,f)).length)throw new Error("invalid rlp, List has a invalid length");for(;u.length;)c=t(u),s.push(c.data),u=c.remainder;return{data:s,remainder:n.slice(f)}}(s(t));if(n)return r;if(0!==r.remainder.length)throw new Error("invalid remainder");return r.data},t.getLength=function(t){if(!t||0===t.length)return e.from([]);var n=s(t),r=n[0];if(r<=127)return n.length;if(r<=183)return r-127;if(r<=191)return r-182;if(r<=247)return r-191;var o=r-246;return o+a(n.slice(1,o).toString("hex"),16)}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.assertIsString=t.assertIsArray=t.assertIsBuffer=t.assertIsHexString=void 0;var r=n(140);t.assertIsHexString=function(e){if(!(0,r.isHexString)(e))throw new Error("This method only supports 0x-prefixed hex strings but input was: "+e)};t.assertIsBuffer=function(t){if(!e.isBuffer(t))throw new Error("This method only supports Buffer but input was: "+t)};t.assertIsArray=function(e){if(!Array.isArray(e))throw new Error("This method only supports number arrays but input was: "+e)};t.assertIsString=function(e){if("string"!=typeof e)throw new Error("This method only supports strings but input was: "+e)}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";(function(t){function n(e){try{if(!t.localStorage)return!1}catch(e){return!1}var n=t.localStorage[e];return null!=n&&"true"===String(n).toLowerCase()}e.exports=function(e,t){if(n("noDeprecation"))return e;var r=!1;return function(){if(!r){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}}).call(this,n(33))},function(e,t,n){"use strict";(function(t){void 0===t||!t.version||0===t.version.indexOf("v0.")||0===t.version.indexOf("v1.")&&0!==t.version.indexOf("v1.8.")?e.exports={nextTick:function(e,n,r,o){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var a,i,u=arguments.length;switch(u){case 0:case 1:return t.nextTick(e);case 2:return t.nextTick((function(){e.call(null,n)}));case 3:return t.nextTick((function(){e.call(null,n,r)}));case 4:return t.nextTick((function(){e.call(null,n,r,o)}));default:for(a=new Array(u-1),i=0;i>1]>>4>=8&&(t[u]=t[u].toUpperCase()),(15&i[u>>1])>=8&&(t[u+1]=t[u+1].toUpperCase());return"0x"+t.join("")}for(var f={},d=0;d<10;d++)f[String(d)]=String(d);for(var p=0;p<26;p++)f[String.fromCharCode(65+p)]=String(10+p);var h,y=Math.floor((h=9007199254740991,Math.log10?Math.log10(h):Math.log(h)/Math.LN10));function b(e){for(var t=(e=(e=e.toUpperCase()).substring(4)+e.substring(0,2)+"00").split("").map((function(e){return f[e]})).join("");t.length>=y;){var n=t.substring(0,y);t=parseInt(n,10)%97+t.substring(n.length)}for(var r=String(98-parseInt(t,10)%97);r.length<2;)r="0"+r;return r}function m(e){var t=null;if("string"!=typeof e&&s.throwArgumentError("invalid address","address",e),e.match(/^(0x)?[0-9a-fA-F]{40}$/))"0x"!==e.substring(0,2)&&(e="0x"+e),t=l(e),e.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&t!==e&&s.throwArgumentError("bad address checksum","address",e);else if(e.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){for(e.substring(2,4)!==b(e)&&s.throwArgumentError("bad icap checksum","address",e),t=(0,o._base36To16)(e.substring(4));t.length<40;)t="0"+t;t=l("0x"+t)}else s.throwArgumentError("invalid address","address",e);return t}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return u.default}});var o=r(n(147)),a=r(n(808)),i=r(n(400)),u=r(n(416)),c=r(n(401)),s=r(n(89)),l=r(n(403)),f=r(n(262))},function(e,t,n){"use strict";!function(e){var t=function(e){var t,n=new Float64Array(16);if(e)for(t=0;t>24&255,e[t+1]=n>>16&255,e[t+2]=n>>8&255,e[t+3]=255&n,e[t+4]=r>>24&255,e[t+5]=r>>16&255,e[t+6]=r>>8&255,e[t+7]=255&r}function y(e,t,n,r,o){var a,i=0;for(a=0;a>>8)-1}function b(e,t,n,r){return y(e,t,n,r,16)}function m(e,t,n,r){return y(e,t,n,r,32)}function v(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,b=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,m=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,g=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,k=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=a,w=i,I=u,A=c,T=s,O=l,E=f,P=d,S=p,R=h,D=y,C=b,N=m,B=v,M=g,j=k,x=0;x<20;x+=2)_^=(o=(N^=(o=(S^=(o=(T^=(o=_+N|0)<<7|o>>>25)+_|0)<<9|o>>>23)+T|0)<<13|o>>>19)+S|0)<<18|o>>>14,O^=(o=(w^=(o=(B^=(o=(R^=(o=O+w|0)<<7|o>>>25)+O|0)<<9|o>>>23)+R|0)<<13|o>>>19)+B|0)<<18|o>>>14,D^=(o=(E^=(o=(I^=(o=(M^=(o=D+E|0)<<7|o>>>25)+D|0)<<9|o>>>23)+M|0)<<13|o>>>19)+I|0)<<18|o>>>14,j^=(o=(C^=(o=(P^=(o=(A^=(o=j+C|0)<<7|o>>>25)+j|0)<<9|o>>>23)+A|0)<<13|o>>>19)+P|0)<<18|o>>>14,_^=(o=(A^=(o=(I^=(o=(w^=(o=_+A|0)<<7|o>>>25)+_|0)<<9|o>>>23)+w|0)<<13|o>>>19)+I|0)<<18|o>>>14,O^=(o=(T^=(o=(P^=(o=(E^=(o=O+T|0)<<7|o>>>25)+O|0)<<9|o>>>23)+E|0)<<13|o>>>19)+P|0)<<18|o>>>14,D^=(o=(R^=(o=(S^=(o=(C^=(o=D+R|0)<<7|o>>>25)+D|0)<<9|o>>>23)+C|0)<<13|o>>>19)+S|0)<<18|o>>>14,j^=(o=(M^=(o=(B^=(o=(N^=(o=j+M|0)<<7|o>>>25)+j|0)<<9|o>>>23)+N|0)<<13|o>>>19)+B|0)<<18|o>>>14;_=_+a|0,w=w+i|0,I=I+u|0,A=A+c|0,T=T+s|0,O=O+l|0,E=E+f|0,P=P+d|0,S=S+p|0,R=R+h|0,D=D+y|0,C=C+b|0,N=N+m|0,B=B+v|0,M=M+g|0,j=j+k|0,e[0]=_>>>0&255,e[1]=_>>>8&255,e[2]=_>>>16&255,e[3]=_>>>24&255,e[4]=w>>>0&255,e[5]=w>>>8&255,e[6]=w>>>16&255,e[7]=w>>>24&255,e[8]=I>>>0&255,e[9]=I>>>8&255,e[10]=I>>>16&255,e[11]=I>>>24&255,e[12]=A>>>0&255,e[13]=A>>>8&255,e[14]=A>>>16&255,e[15]=A>>>24&255,e[16]=T>>>0&255,e[17]=T>>>8&255,e[18]=T>>>16&255,e[19]=T>>>24&255,e[20]=O>>>0&255,e[21]=O>>>8&255,e[22]=O>>>16&255,e[23]=O>>>24&255,e[24]=E>>>0&255,e[25]=E>>>8&255,e[26]=E>>>16&255,e[27]=E>>>24&255,e[28]=P>>>0&255,e[29]=P>>>8&255,e[30]=P>>>16&255,e[31]=P>>>24&255,e[32]=S>>>0&255,e[33]=S>>>8&255,e[34]=S>>>16&255,e[35]=S>>>24&255,e[36]=R>>>0&255,e[37]=R>>>8&255,e[38]=R>>>16&255,e[39]=R>>>24&255,e[40]=D>>>0&255,e[41]=D>>>8&255,e[42]=D>>>16&255,e[43]=D>>>24&255,e[44]=C>>>0&255,e[45]=C>>>8&255,e[46]=C>>>16&255,e[47]=C>>>24&255,e[48]=N>>>0&255,e[49]=N>>>8&255,e[50]=N>>>16&255,e[51]=N>>>24&255,e[52]=B>>>0&255,e[53]=B>>>8&255,e[54]=B>>>16&255,e[55]=B>>>24&255,e[56]=M>>>0&255,e[57]=M>>>8&255,e[58]=M>>>16&255,e[59]=M>>>24&255,e[60]=j>>>0&255,e[61]=j>>>8&255,e[62]=j>>>16&255,e[63]=j>>>24&255}(e,t,n,r)}function g(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,b=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,m=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,g=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,k=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=0;_<20;_+=2)a^=(o=(m^=(o=(p^=(o=(s^=(o=a+m|0)<<7|o>>>25)+a|0)<<9|o>>>23)+s|0)<<13|o>>>19)+p|0)<<18|o>>>14,l^=(o=(i^=(o=(v^=(o=(h^=(o=l+i|0)<<7|o>>>25)+l|0)<<9|o>>>23)+h|0)<<13|o>>>19)+v|0)<<18|o>>>14,y^=(o=(f^=(o=(u^=(o=(g^=(o=y+f|0)<<7|o>>>25)+y|0)<<9|o>>>23)+g|0)<<13|o>>>19)+u|0)<<18|o>>>14,k^=(o=(b^=(o=(d^=(o=(c^=(o=k+b|0)<<7|o>>>25)+k|0)<<9|o>>>23)+c|0)<<13|o>>>19)+d|0)<<18|o>>>14,a^=(o=(c^=(o=(u^=(o=(i^=(o=a+c|0)<<7|o>>>25)+a|0)<<9|o>>>23)+i|0)<<13|o>>>19)+u|0)<<18|o>>>14,l^=(o=(s^=(o=(d^=(o=(f^=(o=l+s|0)<<7|o>>>25)+l|0)<<9|o>>>23)+f|0)<<13|o>>>19)+d|0)<<18|o>>>14,y^=(o=(h^=(o=(p^=(o=(b^=(o=y+h|0)<<7|o>>>25)+y|0)<<9|o>>>23)+b|0)<<13|o>>>19)+p|0)<<18|o>>>14,k^=(o=(g^=(o=(v^=(o=(m^=(o=k+g|0)<<7|o>>>25)+k|0)<<9|o>>>23)+m|0)<<13|o>>>19)+v|0)<<18|o>>>14;e[0]=a>>>0&255,e[1]=a>>>8&255,e[2]=a>>>16&255,e[3]=a>>>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]=k>>>0&255,e[13]=k>>>8&255,e[14]=k>>>16&255,e[15]=k>>>24&255,e[16]=f>>>0&255,e[17]=f>>>8&255,e[18]=f>>>16&255,e[19]=f>>>24&255,e[20]=d>>>0&255,e[21]=d>>>8&255,e[22]=d>>>16&255,e[23]=d>>>24&255,e[24]=p>>>0&255,e[25]=p>>>8&255,e[26]=p>>>16&255,e[27]=p>>>24&255,e[28]=h>>>0&255,e[29]=h>>>8&255,e[30]=h>>>16&255,e[31]=h>>>24&255}(e,t,n,r)}var k=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function _(e,t,n,r,o,a,i){var u,c,s=new Uint8Array(16),l=new Uint8Array(64);for(c=0;c<16;c++)s[c]=0;for(c=0;c<8;c++)s[c]=a[c];for(;o>=64;){for(v(l,s,i,k),c=0;c<64;c++)e[t+c]=n[r+c]^l[c];for(u=1,c=8;c<16;c++)u=u+(255&s[c])|0,s[c]=255&u,u>>>=8;o-=64,t+=64,r+=64}if(o>0)for(v(l,s,i,k),c=0;c=64;){for(v(c,u,o,k),i=0;i<64;i++)e[t+i]=c[i];for(a=1,i=8;i<16;i++)a=a+(255&u[i])|0,u[i]=255&a,a>>>=8;n-=64,t+=64}if(n>0)for(v(c,u,o,k),i=0;i>>13|n<<3),r=255&e[4]|(255&e[5])<<8,this.r[2]=7939&(n>>>10|r<<6),o=255&e[6]|(255&e[7])<<8,this.r[3]=8191&(r>>>7|o<<9),a=255&e[8]|(255&e[9])<<8,this.r[4]=255&(o>>>4|a<<12),this.r[5]=a>>>1&8190,i=255&e[10]|(255&e[11])<<8,this.r[6]=8191&(a>>>14|i<<2),u=255&e[12]|(255&e[13])<<8,this.r[7]=8065&(i>>>11|u<<5),c=255&e[14]|(255&e[15])<<8,this.r[8]=8191&(u>>>8|c<<8),this.r[9]=c>>>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 O(e,t,n,r,o,a){var i=new T(a);return i.update(n,r,o),i.finish(e,t),0}function E(e,t,n,r,o,a){var i=new Uint8Array(16);return O(i,0,n,r,o,a),b(e,t,i,0)}function P(e,t,n,r,o){var a;if(n<32)return-1;for(A(e,0,t,0,n,r,o),O(e,16,e,32,n-32,e),a=0;a<16;a++)e[a]=0;return 0}function S(e,t,n,r,o){var a,i=new Uint8Array(32);if(n<32)return-1;if(I(i,0,32,r,o),0!==E(t,16,t,32,n-32,i))return-1;for(A(e,0,t,0,n,r,o),a=0;a<32;a++)e[a]=0;return 0}function R(e,t){var n;for(n=0;n<16;n++)e[n]=0|t[n]}function D(e){var t,n,r=1;for(t=0;t<16;t++)n=e[t]+r+65535,r=Math.floor(n/65536),e[t]=n-65536*r;e[0]+=r-1+37*(r-1)}function C(e,t,n){for(var r,o=~(n-1),a=0;a<16;a++)r=o&(e[a]^t[a]),e[a]^=r,t[a]^=r}function N(e,n){var r,o,a,i=t(),u=t();for(r=0;r<16;r++)u[r]=n[r];for(D(u),D(u),D(u),o=0;o<2;o++){for(i[0]=u[0]-65517,r=1;r<15;r++)i[r]=u[r]-65535-(i[r-1]>>16&1),i[r-1]&=65535;i[15]=u[15]-32767-(i[14]>>16&1),a=i[15]>>16&1,i[14]&=65535,C(u,i,1-a)}for(r=0;r<16;r++)e[2*r]=255&u[r],e[2*r+1]=u[r]>>8}function B(e,t){var n=new Uint8Array(32),r=new Uint8Array(32);return N(n,e),N(r,t),m(n,0,r,0)}function M(e){var t=new Uint8Array(32);return N(t,e),1&t[0]}function j(e,t){var n;for(n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}function x(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]+n[r]}function F(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]-n[r]}function U(e,t,n){var r,o,a=0,i=0,u=0,c=0,s=0,l=0,f=0,d=0,p=0,h=0,y=0,b=0,m=0,v=0,g=0,k=0,_=0,w=0,I=0,A=0,T=0,O=0,E=0,P=0,S=0,R=0,D=0,C=0,N=0,B=0,M=0,j=n[0],x=n[1],F=n[2],U=n[3],L=n[4],K=n[5],G=n[6],z=n[7],Q=n[8],H=n[9],V=n[10],q=n[11],W=n[12],Y=n[13],Z=n[14],J=n[15];a+=(r=t[0])*j,i+=r*x,u+=r*F,c+=r*U,s+=r*L,l+=r*K,f+=r*G,d+=r*z,p+=r*Q,h+=r*H,y+=r*V,b+=r*q,m+=r*W,v+=r*Y,g+=r*Z,k+=r*J,i+=(r=t[1])*j,u+=r*x,c+=r*F,s+=r*U,l+=r*L,f+=r*K,d+=r*G,p+=r*z,h+=r*Q,y+=r*H,b+=r*V,m+=r*q,v+=r*W,g+=r*Y,k+=r*Z,_+=r*J,u+=(r=t[2])*j,c+=r*x,s+=r*F,l+=r*U,f+=r*L,d+=r*K,p+=r*G,h+=r*z,y+=r*Q,b+=r*H,m+=r*V,v+=r*q,g+=r*W,k+=r*Y,_+=r*Z,w+=r*J,c+=(r=t[3])*j,s+=r*x,l+=r*F,f+=r*U,d+=r*L,p+=r*K,h+=r*G,y+=r*z,b+=r*Q,m+=r*H,v+=r*V,g+=r*q,k+=r*W,_+=r*Y,w+=r*Z,I+=r*J,s+=(r=t[4])*j,l+=r*x,f+=r*F,d+=r*U,p+=r*L,h+=r*K,y+=r*G,b+=r*z,m+=r*Q,v+=r*H,g+=r*V,k+=r*q,_+=r*W,w+=r*Y,I+=r*Z,A+=r*J,l+=(r=t[5])*j,f+=r*x,d+=r*F,p+=r*U,h+=r*L,y+=r*K,b+=r*G,m+=r*z,v+=r*Q,g+=r*H,k+=r*V,_+=r*q,w+=r*W,I+=r*Y,A+=r*Z,T+=r*J,f+=(r=t[6])*j,d+=r*x,p+=r*F,h+=r*U,y+=r*L,b+=r*K,m+=r*G,v+=r*z,g+=r*Q,k+=r*H,_+=r*V,w+=r*q,I+=r*W,A+=r*Y,T+=r*Z,O+=r*J,d+=(r=t[7])*j,p+=r*x,h+=r*F,y+=r*U,b+=r*L,m+=r*K,v+=r*G,g+=r*z,k+=r*Q,_+=r*H,w+=r*V,I+=r*q,A+=r*W,T+=r*Y,O+=r*Z,E+=r*J,p+=(r=t[8])*j,h+=r*x,y+=r*F,b+=r*U,m+=r*L,v+=r*K,g+=r*G,k+=r*z,_+=r*Q,w+=r*H,I+=r*V,A+=r*q,T+=r*W,O+=r*Y,E+=r*Z,P+=r*J,h+=(r=t[9])*j,y+=r*x,b+=r*F,m+=r*U,v+=r*L,g+=r*K,k+=r*G,_+=r*z,w+=r*Q,I+=r*H,A+=r*V,T+=r*q,O+=r*W,E+=r*Y,P+=r*Z,S+=r*J,y+=(r=t[10])*j,b+=r*x,m+=r*F,v+=r*U,g+=r*L,k+=r*K,_+=r*G,w+=r*z,I+=r*Q,A+=r*H,T+=r*V,O+=r*q,E+=r*W,P+=r*Y,S+=r*Z,R+=r*J,b+=(r=t[11])*j,m+=r*x,v+=r*F,g+=r*U,k+=r*L,_+=r*K,w+=r*G,I+=r*z,A+=r*Q,T+=r*H,O+=r*V,E+=r*q,P+=r*W,S+=r*Y,R+=r*Z,D+=r*J,m+=(r=t[12])*j,v+=r*x,g+=r*F,k+=r*U,_+=r*L,w+=r*K,I+=r*G,A+=r*z,T+=r*Q,O+=r*H,E+=r*V,P+=r*q,S+=r*W,R+=r*Y,D+=r*Z,C+=r*J,v+=(r=t[13])*j,g+=r*x,k+=r*F,_+=r*U,w+=r*L,I+=r*K,A+=r*G,T+=r*z,O+=r*Q,E+=r*H,P+=r*V,S+=r*q,R+=r*W,D+=r*Y,C+=r*Z,N+=r*J,g+=(r=t[14])*j,k+=r*x,_+=r*F,w+=r*U,I+=r*L,A+=r*K,T+=r*G,O+=r*z,E+=r*Q,P+=r*H,S+=r*V,R+=r*q,D+=r*W,C+=r*Y,N+=r*Z,B+=r*J,k+=(r=t[15])*j,i+=38*(w+=r*F),u+=38*(I+=r*U),c+=38*(A+=r*L),s+=38*(T+=r*K),l+=38*(O+=r*G),f+=38*(E+=r*z),d+=38*(P+=r*Q),p+=38*(S+=r*H),h+=38*(R+=r*V),y+=38*(D+=r*q),b+=38*(C+=r*W),m+=38*(N+=r*Y),v+=38*(B+=r*Z),g+=38*(M+=r*J),a=(r=(a+=38*(_+=r*x))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),a=(r=(a+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),a+=o-1+37*(o-1),e[0]=a,e[1]=i,e[2]=u,e[3]=c,e[4]=s,e[5]=l,e[6]=f,e[7]=d,e[8]=p,e[9]=h,e[10]=y,e[11]=b,e[12]=m,e[13]=v,e[14]=g,e[15]=k}function L(e,t){U(e,t,t)}function K(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=253;r>=0;r--)L(o,o),2!==r&&4!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function G(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=250;r>=0;r--)L(o,o),1!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function z(e,n,r){var o,a,i=new Uint8Array(32),u=new Float64Array(80),s=t(),l=t(),f=t(),d=t(),p=t(),h=t();for(a=0;a<31;a++)i[a]=n[a];for(i[31]=127&n[31]|64,i[0]&=248,j(u,r),a=0;a<16;a++)l[a]=u[a],d[a]=s[a]=f[a]=0;for(s[0]=d[0]=1,a=254;a>=0;--a)C(s,l,o=i[a>>>3]>>>(7&a)&1),C(f,d,o),x(p,s,f),F(s,s,f),x(f,l,d),F(l,l,d),L(d,p),L(h,s),U(s,f,s),U(f,l,p),x(p,s,f),F(s,s,f),L(l,s),F(f,d,h),U(s,f,c),x(s,s,d),U(f,f,s),U(s,d,h),U(d,l,u),L(l,p),C(s,l,o),C(f,d,o);for(a=0;a<16;a++)u[a+16]=s[a],u[a+32]=f[a],u[a+48]=l[a],u[a+64]=d[a];var y=u.subarray(32),b=u.subarray(16);return K(y,y),U(b,b,y),N(e,b),0}function Q(e,t){return z(e,t,a)}function H(e,t){return r(t,32),Q(e,t)}function V(e,t,n){var r=new Uint8Array(32);return z(r,n,t),g(e,o,r,k)}T.prototype.blocks=function(e,t,n){for(var r,o,a,i,u,c,s,l,f,d,p,h,y,b,m,v,g,k,_,w=this.fin?0:2048,I=this.h[0],A=this.h[1],T=this.h[2],O=this.h[3],E=this.h[4],P=this.h[5],S=this.h[6],R=this.h[7],D=this.h[8],C=this.h[9],N=this.r[0],B=this.r[1],M=this.r[2],j=this.r[3],x=this.r[4],F=this.r[5],U=this.r[6],L=this.r[7],K=this.r[8],G=this.r[9];n>=16;)d=f=0,d+=(I+=8191&(r=255&e[t+0]|(255&e[t+1])<<8))*N,d+=(A+=8191&(r>>>13|(o=255&e[t+2]|(255&e[t+3])<<8)<<3))*(5*G),d+=(T+=8191&(o>>>10|(a=255&e[t+4]|(255&e[t+5])<<8)<<6))*(5*K),d+=(O+=8191&(a>>>7|(i=255&e[t+6]|(255&e[t+7])<<8)<<9))*(5*L),f=(d+=(E+=8191&(i>>>4|(u=255&e[t+8]|(255&e[t+9])<<8)<<12))*(5*U))>>>13,d&=8191,d+=(P+=u>>>1&8191)*(5*F),d+=(S+=8191&(u>>>14|(c=255&e[t+10]|(255&e[t+11])<<8)<<2))*(5*x),d+=(R+=8191&(c>>>11|(s=255&e[t+12]|(255&e[t+13])<<8)<<5))*(5*j),d+=(D+=8191&(s>>>8|(l=255&e[t+14]|(255&e[t+15])<<8)<<8))*(5*M),p=f+=(d+=(C+=l>>>5|w)*(5*B))>>>13,p+=I*B,p+=A*N,p+=T*(5*G),p+=O*(5*K),f=(p+=E*(5*L))>>>13,p&=8191,p+=P*(5*U),p+=S*(5*F),p+=R*(5*x),p+=D*(5*j),f+=(p+=C*(5*M))>>>13,p&=8191,h=f,h+=I*M,h+=A*B,h+=T*N,h+=O*(5*G),f=(h+=E*(5*K))>>>13,h&=8191,h+=P*(5*L),h+=S*(5*U),h+=R*(5*F),h+=D*(5*x),y=f+=(h+=C*(5*j))>>>13,y+=I*j,y+=A*M,y+=T*B,y+=O*N,f=(y+=E*(5*G))>>>13,y&=8191,y+=P*(5*K),y+=S*(5*L),y+=R*(5*U),y+=D*(5*F),b=f+=(y+=C*(5*x))>>>13,b+=I*x,b+=A*j,b+=T*M,b+=O*B,f=(b+=E*N)>>>13,b&=8191,b+=P*(5*G),b+=S*(5*K),b+=R*(5*L),b+=D*(5*U),m=f+=(b+=C*(5*F))>>>13,m+=I*F,m+=A*x,m+=T*j,m+=O*M,f=(m+=E*B)>>>13,m&=8191,m+=P*N,m+=S*(5*G),m+=R*(5*K),m+=D*(5*L),v=f+=(m+=C*(5*U))>>>13,v+=I*U,v+=A*F,v+=T*x,v+=O*j,f=(v+=E*M)>>>13,v&=8191,v+=P*B,v+=S*N,v+=R*(5*G),v+=D*(5*K),g=f+=(v+=C*(5*L))>>>13,g+=I*L,g+=A*U,g+=T*F,g+=O*x,f=(g+=E*j)>>>13,g&=8191,g+=P*M,g+=S*B,g+=R*N,g+=D*(5*G),k=f+=(g+=C*(5*K))>>>13,k+=I*K,k+=A*L,k+=T*U,k+=O*F,f=(k+=E*x)>>>13,k&=8191,k+=P*j,k+=S*M,k+=R*B,k+=D*N,_=f+=(k+=C*(5*G))>>>13,_+=I*G,_+=A*K,_+=T*L,_+=O*U,f=(_+=E*F)>>>13,_&=8191,_+=P*x,_+=S*j,_+=R*M,_+=D*B,I=d=8191&(f=(f=((f+=(_+=C*N)>>>13)<<2)+f|0)+(d&=8191)|0),A=p+=f>>>=13,T=h&=8191,O=y&=8191,E=b&=8191,P=m&=8191,S=v&=8191,R=g&=8191,D=k&=8191,C=_&=8191,t+=16,n-=16;this.h[0]=I,this.h[1]=A,this.h[2]=T,this.h[3]=O,this.h[4]=E,this.h[5]=P,this.h[6]=S,this.h[7]=R,this.h[8]=D,this.h[9]=C},T.prototype.finish=function(e,t){var n,r,o,a,i=new Uint16Array(10);if(this.leftover){for(a=this.leftover,this.buffer[a++]=1;a<16;a++)this.buffer[a]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(n=this.h[1]>>>13,this.h[1]&=8191,a=2;a<10;a++)this.h[a]+=n,n=this.h[a]>>>13,this.h[a]&=8191;for(this.h[0]+=5*n,n=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=n,n=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=n,i[0]=this.h[0]+5,n=i[0]>>>13,i[0]&=8191,a=1;a<10;a++)i[a]=this.h[a]+n,n=i[a]>>>13,i[a]&=8191;for(i[9]-=8192,r=(1^n)-1,a=0;a<10;a++)i[a]&=r;for(r=~r,a=0;a<10;a++)this.h[a]=this.h[a]&r|i[a];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,a=1;a<8;a++)o=(this.h[a]+this.pad[a]|0)+(o>>>16)|0,this.h[a]=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},T.prototype.update=function(e,t,n){var r,o;if(this.leftover){for((o=16-this.leftover)>n&&(o=n),r=0;r=16&&(o=n-n%16,this.blocks(e,t,o),t+=o,n-=o),n){for(r=0;r=128;){for(w=0;w<16;w++)I=8*w+W,R[w]=n[I+0]<<24|n[I+1]<<16|n[I+2]<<8|n[I+3],D[w]=n[I+4]<<24|n[I+5]<<16|n[I+6]<<8|n[I+7];for(w=0;w<80;w++)if(o=C,a=N,i=B,u=M,c=j,s=x,l=F,U,d=L,p=K,h=G,y=z,b=Q,m=H,v=V,q,O=65535&(T=q),E=T>>>16,P=65535&(A=U),S=A>>>16,O+=65535&(T=(Q>>>14|j<<18)^(Q>>>18|j<<14)^(j>>>9|Q<<23)),E+=T>>>16,P+=65535&(A=(j>>>14|Q<<18)^(j>>>18|Q<<14)^(Q>>>9|j<<23)),S+=A>>>16,O+=65535&(T=Q&H^~Q&V),E+=T>>>16,P+=65535&(A=j&x^~j&F),S+=A>>>16,O+=65535&(T=Y[2*w+1]),E+=T>>>16,P+=65535&(A=Y[2*w]),S+=A>>>16,A=R[w%16],E+=(T=D[w%16])>>>16,P+=65535&A,S+=A>>>16,P+=(E+=(O+=65535&T)>>>16)>>>16,O=65535&(T=_=65535&O|E<<16),E=T>>>16,P=65535&(A=k=65535&P|(S+=P>>>16)<<16),S=A>>>16,O+=65535&(T=(L>>>28|C<<4)^(C>>>2|L<<30)^(C>>>7|L<<25)),E+=T>>>16,P+=65535&(A=(C>>>28|L<<4)^(L>>>2|C<<30)^(L>>>7|C<<25)),S+=A>>>16,E+=(T=L&K^L&G^K&G)>>>16,P+=65535&(A=C&N^C&B^N&B),S+=A>>>16,f=65535&(P+=(E+=(O+=65535&T)>>>16)>>>16)|(S+=P>>>16)<<16,g=65535&O|E<<16,O=65535&(T=y),E=T>>>16,P=65535&(A=u),S=A>>>16,E+=(T=_)>>>16,P+=65535&(A=k),S+=A>>>16,N=o,B=a,M=i,j=u=65535&(P+=(E+=(O+=65535&T)>>>16)>>>16)|(S+=P>>>16)<<16,x=c,F=s,U=l,C=f,K=d,G=p,z=h,Q=y=65535&O|E<<16,H=b,V=m,q=v,L=g,w%16==15)for(I=0;I<16;I++)A=R[I],O=65535&(T=D[I]),E=T>>>16,P=65535&A,S=A>>>16,A=R[(I+9)%16],O+=65535&(T=D[(I+9)%16]),E+=T>>>16,P+=65535&A,S+=A>>>16,k=R[(I+1)%16],O+=65535&(T=((_=D[(I+1)%16])>>>1|k<<31)^(_>>>8|k<<24)^(_>>>7|k<<25)),E+=T>>>16,P+=65535&(A=(k>>>1|_<<31)^(k>>>8|_<<24)^k>>>7),S+=A>>>16,k=R[(I+14)%16],E+=(T=((_=D[(I+14)%16])>>>19|k<<13)^(k>>>29|_<<3)^(_>>>6|k<<26))>>>16,P+=65535&(A=(k>>>19|_<<13)^(_>>>29|k<<3)^k>>>6),S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,R[I]=65535&P|S<<16,D[I]=65535&O|E<<16;O=65535&(T=L),E=T>>>16,P=65535&(A=C),S=A>>>16,A=e[0],E+=(T=t[0])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[0]=C=65535&P|S<<16,t[0]=L=65535&O|E<<16,O=65535&(T=K),E=T>>>16,P=65535&(A=N),S=A>>>16,A=e[1],E+=(T=t[1])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[1]=N=65535&P|S<<16,t[1]=K=65535&O|E<<16,O=65535&(T=G),E=T>>>16,P=65535&(A=B),S=A>>>16,A=e[2],E+=(T=t[2])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[2]=B=65535&P|S<<16,t[2]=G=65535&O|E<<16,O=65535&(T=z),E=T>>>16,P=65535&(A=M),S=A>>>16,A=e[3],E+=(T=t[3])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[3]=M=65535&P|S<<16,t[3]=z=65535&O|E<<16,O=65535&(T=Q),E=T>>>16,P=65535&(A=j),S=A>>>16,A=e[4],E+=(T=t[4])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[4]=j=65535&P|S<<16,t[4]=Q=65535&O|E<<16,O=65535&(T=H),E=T>>>16,P=65535&(A=x),S=A>>>16,A=e[5],E+=(T=t[5])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[5]=x=65535&P|S<<16,t[5]=H=65535&O|E<<16,O=65535&(T=V),E=T>>>16,P=65535&(A=F),S=A>>>16,A=e[6],E+=(T=t[6])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[6]=F=65535&P|S<<16,t[6]=V=65535&O|E<<16,O=65535&(T=q),E=T>>>16,P=65535&(A=U),S=A>>>16,A=e[7],E+=(T=t[7])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[7]=U=65535&P|S<<16,t[7]=q=65535&O|E<<16,W+=128,r-=128}return r}function J(e,t,n){var r,o=new Int32Array(8),a=new Int32Array(8),i=new Uint8Array(256),u=n;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,a[0]=4089235720,a[1]=2227873595,a[2]=4271175723,a[3]=1595750129,a[4]=2917565137,a[5]=725511199,a[6]=4215389547,a[7]=327033209,Z(o,a,t,n),n%=128,r=0;r=0;--o)$(e,t,r=n[o/8|0]>>(7&o)&1),X(t,e),X(e,e),$(e,t,r)}function ne(e,n){var r=[t(),t(),t(),t()];R(r[0],f),R(r[1],d),R(r[2],u),U(r[3],f,d),te(e,r,n)}function re(e,n,o){var a,i=new Uint8Array(64),u=[t(),t(),t(),t()];for(o||r(n,32),J(i,n,32),i[0]&=248,i[31]&=127,i[31]|=64,ne(u,i),ee(e,u),a=0;a<32;a++)n[a+32]=e[a];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 ae(e,t){var n,r,o,a;for(r=63;r>=32;--r){for(n=0,o=r-32,a=r-12;o>4)*oe[o],n=t[o]>>8,t[o]&=255;for(o=0;o<32;o++)t[o]-=n*oe[o];for(r=0;r<32;r++)t[r+1]+=t[r]>>8,e[r]=255&t[r]}function ie(e){var t,n=new Float64Array(64);for(t=0;t<64;t++)n[t]=e[t];for(t=0;t<64;t++)e[t]=0;ae(e,n)}function ue(e,n,r,o){var a,i,u=new Uint8Array(64),c=new Uint8Array(64),s=new Uint8Array(64),l=new Float64Array(64),f=[t(),t(),t(),t()];J(u,o,32),u[0]&=248,u[31]&=127,u[31]|=64;var d=r+64;for(a=0;a>7&&F(e[0],i,e[0]),U(e[3],e[0],e[1]),0)}(d,o))return-1;for(a=0;a=0},e.sign.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(64);return re(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(le(e),64!==e.length)throw new Error("bad secret key size");for(var t=new Uint8Array(32),n=0;n0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function s(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){u(e.precomputed);var n=e._getDoubles(),r=a(t,1,this._bitLength),o=(1<=i;l--)c=(c<<1)+r[l];s.push(c)}for(var f=this.jpoint(null,null,null),d=this.jpoint(null,null,null),p=o;p>0;p--){for(i=0;i=0;s--){for(var l=0;s>=0&&0===i[s];s--)l++;if(s>=0&&l++,c=c.dblp(l),s<0)break;var f=i[s];u(0!==f),c="affine"===e.type?f>0?c.mixedAdd(o[f-1>>1]):c.mixedAdd(o[-f-1>>1].neg()):f>0?c.add(o[f-1>>1]):c.add(o[-f-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,o){var u,c,s,l=this._wnafT1,f=this._wnafT2,d=this._wnafT3,p=0;for(u=0;u=1;u-=2){var y=u-1,b=u;if(1===l[y]&&1===l[b]){var m=[t[y],null,null,t[b]];0===t[y].y.cmp(t[b].y)?(m[1]=t[y].add(t[b]),m[2]=t[y].toJ().mixedAdd(t[b].neg())):0===t[y].y.cmp(t[b].y.redNeg())?(m[1]=t[y].toJ().mixedAdd(t[b]),m[2]=t[y].add(t[b].neg())):(m[1]=t[y].toJ().mixedAdd(t[b]),m[2]=t[y].toJ().mixedAdd(t[b].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],g=i(n[y],n[b]);for(p=Math.max(g[0].length,p),d[y]=new Array(p),d[b]=new Array(p),c=0;c=0;u--){for(var A=0;u>=0;){var T=!0;for(c=0;c=0&&A++,w=w.dblp(A),u<0)break;for(c=0;c0?s=f[c][O-1>>1]:O<0&&(s=f[c][-O-1>>1].neg()),w="affine"===s.type?w.mixedAdd(s):w.add(s))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},s.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,o=0;o1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength;if(!(Number.isInteger(t)&&t>=0))throw new Error("Invalid offset!");if(!(Number.isInteger(n)&&n>=0))throw new Error("Invalid length!");return new DataView(e.buffer,e.byteOffset+t,Math.min(n,e.byteLength-t))};var o=r(n(3)),a=r(n(118)),i=r(n(17));t.REQUIRE_NON_NULL_ERROR="This value cannot be null | undefined.";t.REQUIRE_STRING_ERROR="This value must be a string.";t.REQUIRE_UINT8ARRAY_ERROR="This value must be a Uint8Array.";t.REQUIRE_STRING_OR_UINT8ARRAY_ERROR="This value must be a string or Uint8Array.";t.REQUIRE_NUMBER_ERROR="This value must be a Number.";t.REQUIRE_BIGNUMBER_ERROR="This value must be a BigNumber.";t.REQUIRE_ARRAY_ERROR="The provided variable must be an Array.";t.REQUIRE_LONG_ERROR="This value must be a Long.";t.REQUIRE_TYPE_ERROR="The provided variables are not matching types.";t.FUNCTION_CONVERT_TO_BIGNUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";t.FUNCTION_CONVERT_TO_NUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";function u(e){return null!=e&&null!=e}function c(e,t){return(0,o.default)(e)==(0,o.default)(t)}function s(e){return u(e)&&e instanceof Uint8Array}function l(e){return u(e)&&("number"==typeof e||e instanceof Number)}function f(e){return u(e)&&e instanceof a.default}function d(e){return u(e)&&e instanceof i.default}function p(e){return u(e)&&"string"==typeof e}function h(e){return u(e)&&(p(e)||s(e))}function y(e){if(u(e))return e;throw new Error("This value cannot be null | undefined.")}function b(e){if(y(e),f(e)||p(e)||l(e)||d(e))return new a.default(e);throw new Error("This value must be a String, Number, or BigNumber to be converted.")}t.FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR="Unable to parse given variable. Returns NaN."},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(10)),c=r(n(50)),s=r(n(53)),l=r(n(104)),f=r(n(24)),d=r(n(124)),p=r(n(428)),h=r(n(121)),y=r(n(17)),b=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31)),m=r(n(65));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}var g=function(){function e(t){(0,a.default)(this,e),this.status=t.status,this.accountId=t.accountId,this.fileId=t.fileId,this.contractId=t.contractId,this.topicId=t.topicId,this.tokenId=t.tokenId,this.scheduleId=t.scheduleId,this.exchangeRate=t.exchangeRate,this.topicSequenceNumber=t.topicSequenceNumber,this.topicRunningHash=t.topicRunningHash,this.totalSupply=t.totalSupply,this.scheduledTransactionId=t.scheduledTransactionId,this.serials=t.serials,this.duplicates=t.duplicates,this.children=t.children,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{duplicateTransactionReceipts:this.duplicates.map((function(e){return e._toProtobuf().receipt})),childTransactionReceipts:this.children.map((function(e){return e._toProtobuf().receipt})),receipt:{status:this.status.valueOf(),accountID:null!=this.accountId?this.accountId._toProtobuf():null,fileID:null!=this.fileId?this.fileId._toProtobuf():null,contractID:null!=this.contractId?this.contractId._toProtobuf():null,topicID:null!=this.topicId?this.topicId._toProtobuf():null,tokenID:null!=this.tokenId?this.tokenId._toProtobuf():null,scheduleID:null!=this.scheduleId?this.scheduleId._toProtobuf():null,topicRunningHash:null==this.topicRunningHash?null:this.topicRunningHash,topicSequenceNumber:this.topicSequenceNumber,exchangeRate:{nextRate:null,currentRate:null!=this.exchangeRate?this.exchangeRate._toProtobuf():null},scheduledTransactionID:null!=this.scheduledTransactionId?this.scheduledTransactionId._toProtobuf():null,serialNumbers:this.serials,newTotalSupply:this.totalSupply}}}},{key:"toBytes",value:function(){return b.TransactionGetReceiptResponse.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.receipt,r=n.exchangeRate,o=null!=t.childTransactionReceipts?t.childTransactionReceipts.map((function(t){return e._fromProtobuf({receipt:t})})):[],a=null!=t.duplicateTransactionReceipts?t.duplicateTransactionReceipts.map((function(t){return e._fromProtobuf({receipt:t})})):[];return new e({status:h.default._fromCode(null!=n.status?n.status:0),accountId:null!=n.accountID?u.default._fromProtobuf(n.accountID):null,fileId:null!=n.fileID?s.default._fromProtobuf(n.fileID):null,contractId:null!=n.contractID?c.default._fromProtobuf(n.contractID):null,topicId:null!=n.topicID?l.default._fromProtobuf(n.topicID):null,tokenId:null!=n.tokenID?f.default._fromProtobuf(n.tokenID):null,scheduleId:null!=n.scheduleID?d.default._fromProtobuf(n.scheduleID):null,exchangeRate:null!=n.exchangeRate?p.default._fromProtobuf(r.currentRate):null,topicSequenceNumber:null==n.topicSequenceNumber?null:y.default.fromValue(n.topicSequenceNumber),topicRunningHash:null!=n.topicRunningHash?n.topicRunningHash:null,totalSupply:null!=n.newTotalSupply?n.newTotalSupply:null,scheduledTransactionId:null!=n.scheduledTransactionID?m.default._fromProtobuf(n.scheduledTransactionID):null,serials:null!=n.serialNumbers?n.serialNumbers:[],children:o,duplicates:a})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(b.TransactionGetReceiptResponse.decode(t))}}]),e}();t.default=g},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(10)),u=r(n(28)),c=function(){function e(t){(0,o.default)(this,e),this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount.toTinybars()}}}],[{key:"_fromProtobuf",value:function(t){return new e({spenderAccountId:i.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?i.default._fromProtobuf(t.owner):null,amount:u.default.fromTinybars(null!=t.amount?t.amount:0)})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(24)),u=r(n(10)),c=r(n(17)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount}}}],[{key:"_fromProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,amount:null!=t.amount?c.default.fromValue(t.amount):null})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(24)),u=r(n(10)),c=r(n(17)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.serialNumbers=t.serialNumbers,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,approvedForAll:null==this.serialNumbers?{value:!0}:null,serialNumbers:this.serialNumbers}}}],[{key:"_fromProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,serialNumbers:null!=t.approvedForAll&&t.approvedForAll.value?null:null!=t.serialNumbers?t.serialNumbers.map((function(e){return c.default.fromValue(e)})):[]})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=h(n(444)),s=h(n(91)),l=h(n(64)),f=r(n(118)),d=h(n(205));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n16)throw new TypeError("uint64/int64 requires BigNumber to be less than or equal to 8 bytes");if(!t.isInteger())throw new TypeError("uint64/int64 requires BigNumber to be an integer");P.length%2==1&&(P="0".concat(P));var S=l.decode(P);o.set(S,32-S.length)}return o;case c.ArgumentType.int256:case c.ArgumentType.uint256:if(f.default.isBigNumber(t)){var R=t.toString(16);R.length%2==1&&(R="0".concat(R));var D=l.decode(R);o.set(D,32-D.length)}return o;case c.ArgumentType.address:return o.set(t,12),o;case c.ArgumentType.bool:return o[31]=t?1:0,o;case c.ArgumentType.func:return o.set(t,8),o;case c.ArgumentType.bytes32:return o.set(t,0),o;case c.ArgumentType.bytes:case c.ArgumentType.string:return r=t instanceof Uint8Array?t:s.encode(t),(o=Math.floor(r.length/32)>=0&&0!==Math.floor(r.length%32)?new Uint8Array(32*(Math.floor(r.length/32)+1)+32):new Uint8Array(64)).set(r,32),(i=d.safeView(o,28)).setUint32(0,r.length),o;default:throw new Error("Unsupported argument type: ".concat(n.toString()))}}(e,this._selector._paramTypes[n]);return this._arguments.push({dynamic:t,value:r}),this}},{key:"_build",value:function(e){var t=null!=e,n=t?4:0,r=0===this._arguments.length?n:32*this._arguments.length+this._arguments.map((function(e){return e.dynamic?e.value.length:0})).reduce((function(e,t){return e+t}))+n,o=new Uint8Array(r);t&&o.set(this._selector._build(e),0);var i,u=32*this._arguments.length,c=y(this._arguments.entries());try{for(c.s();!(i=c.n()).done;){var s=(0,a.default)(i.value,2),l=s[0],f=s[1],p=f.dynamic,h=f.value;if(p){var b=d.safeView(o,n+32*l+28);b.setUint32(0,u),o.set(h,b.getUint32(0)+n),u+=h.length}else o.set(h,n+32*l)}}catch(e){c.e(e)}finally{c.f()}return o}}]),e}();function v(e,t,n){n(t,f.default.isBigNumber(e)?e.toNumber():e)}t.default=m},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(10)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobuf",value:function(e){throw new Error("not implemented")}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(211)),l=r(n(10)),f=r(n(17));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var p=function(e){(0,i.default)(n,e);var t=d(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e._min,null!=r.min&&e.setMin(r.min),e._max,null!=r.max&&e.setMax(r.max),e._assessmentMethod,null!=r.assessmentMethod&&e.setAssessmentMethod(r.assessmentMethod),e}return(0,a.default)(n,[{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"min",get:function(){return this._min}},{key:"setMin",value:function(e){return this._min="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"max",get:function(){return this._max}},{key:"setMax",value:function(e){return this._max="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"assessmentMethod",get:function(){return this._assessmentMethod}},{key:"setAssessmentMethod",value:function(e){return this._assessmentMethod=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fractionalFee:{fractionalAmount:{numerator:this._numerator,denominator:this._denominator},minimumAmount:this._min,maximumAmount:this._max}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fractionalFee,r=t.fractionalAmount;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0,min:null!=t.minimumAmount?t.minimumAmount:void 0,max:null!=t.maximumAmount?t.maximumAmount:void 0})}}]),n}(s.default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(211)),l=r(n(10)),f=r(n(17)),d=r(n(170));function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var h=function(e){(0,i.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._fallbackFee,null!=r.fallbackFee&&e.setFallbackFee(r.fallbackFee),e._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e}return(0,a.default)(n,[{key:"fallbackFee",get:function(){return this._fallbackFee}},{key:"setFallbackFee",value:function(e){return this._fallbackFee=e,this}},{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,royaltyFee:{exchangeValueFraction:{numerator:this._numerator,denominator:this._denominator},fallbackFee:null!=this._fallbackFee?this._fallbackFee._toProtobuf().fixedFee:null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.royaltyFee,r=t.exchangeValueFraction;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,fallbackFee:null!=t.fallbackFee?d.default._fromProtobuf({fixedFee:t.fallbackFee}):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0})}}]),n}(s.default);t.default=h},function(e,t,n){"use strict";var r=n(22).Buffer;function o(e){r.isBuffer(e)||(e=r.from(e));for(var t=e.length/4|0,n=new Array(t),o=0;o>>24]^l[h>>>16&255]^f[y>>>8&255]^d[255&b]^t[m++],i=s[h>>>24]^l[y>>>16&255]^f[b>>>8&255]^d[255&p]^t[m++],u=s[y>>>24]^l[b>>>16&255]^f[p>>>8&255]^d[255&h]^t[m++],c=s[b>>>24]^l[p>>>16&255]^f[h>>>8&255]^d[255&y]^t[m++],p=a,h=i,y=u,b=c;return a=(r[p>>>24]<<24|r[h>>>16&255]<<16|r[y>>>8&255]<<8|r[255&b])^t[m++],i=(r[h>>>24]<<24|r[y>>>16&255]<<16|r[b>>>8&255]<<8|r[255&p])^t[m++],u=(r[y>>>24]<<24|r[b>>>16&255]<<16|r[p>>>8&255]<<8|r[255&h])^t[m++],c=(r[b>>>24]<<24|r[p>>>16&255]<<16|r[h>>>8&255]<<8|r[255&y])^t[m++],[a>>>=0,i>>>=0,u>>>=0,c>>>=0]}var u=[0,1,2,4,8,16,32,64,128,27,54],c=function(){for(var e=new Array(256),t=0;t<256;t++)e[t]=t<128?t<<1:t<<1^283;for(var n=[],r=[],o=[[],[],[],[]],a=[[],[],[],[]],i=0,u=0,c=0;c<256;++c){var s=u^u<<1^u<<2^u<<3^u<<4;s=s>>>8^255&s^99,n[i]=s,r[s]=i;var l=e[i],f=e[l],d=e[f],p=257*e[s]^16843008*s;o[0][i]=p<<24|p>>>8,o[1][i]=p<<16|p>>>16,o[2][i]=p<<8|p>>>24,o[3][i]=p,p=16843009*d^65537*f^257*l^16843008*i,a[0][s]=p<<24|p>>>8,a[1][s]=p<<16|p>>>16,a[2][s]=p<<8|p>>>24,a[3][s]=p,0===i?i=u=1:(i=l^e[e[e[d^l]]],u^=e[e[u]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:o,INV_SUB_MIX:a}}();function s(e){this._key=o(e),this._reset()}s.blockSize=16,s.keySize=32,s.prototype.blockSize=s.blockSize,s.prototype.keySize=s.keySize,s.prototype._reset=function(){for(var e=this._key,t=e.length,n=t+6,r=4*(n+1),o=[],a=0;a>>24,i=c.SBOX[i>>>24]<<24|c.SBOX[i>>>16&255]<<16|c.SBOX[i>>>8&255]<<8|c.SBOX[255&i],i^=u[a/t|0]<<24):t>6&&a%t==4&&(i=c.SBOX[i>>>24]<<24|c.SBOX[i>>>16&255]<<16|c.SBOX[i>>>8&255]<<8|c.SBOX[255&i]),o[a]=o[a-t]^i}for(var s=[],l=0;l>>24]]^c.INV_SUB_MIX[1][c.SBOX[d>>>16&255]]^c.INV_SUB_MIX[2][c.SBOX[d>>>8&255]]^c.INV_SUB_MIX[3][c.SBOX[255&d]]}this._nRounds=n,this._keySchedule=o,this._invKeySchedule=s},s.prototype.encryptBlockRaw=function(e){return i(e=o(e),this._keySchedule,c.SUB_MIX,c.SBOX,this._nRounds)},s.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),n=r.allocUnsafe(16);return n.writeUInt32BE(t[0],0),n.writeUInt32BE(t[1],4),n.writeUInt32BE(t[2],8),n.writeUInt32BE(t[3],12),n},s.prototype.decryptBlock=function(e){var t=(e=o(e))[1];e[1]=e[3],e[3]=t;var n=i(e,this._invKeySchedule,c.INV_SUB_MIX,c.INV_SBOX,this._nRounds),a=r.allocUnsafe(16);return a.writeUInt32BE(n[0],0),a.writeUInt32BE(n[3],4),a.writeUInt32BE(n[2],8),a.writeUInt32BE(n[1],12),a},s.prototype.scrub=function(){a(this._keySchedule),a(this._invKeySchedule),a(this._key)},e.exports.AES=s},function(e,t,n){"use strict";var r=n(22).Buffer,o=n(250);e.exports=function(e,t,n,a){if(r.isBuffer(e)||(e=r.from(e,"binary")),t&&(r.isBuffer(t)||(t=r.from(t,"binary")),8!==t.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var i=n/8,u=r.alloc(i),c=r.alloc(a||0),s=r.alloc(0);i>0||a>0;){var l=new o;l.update(s),l.update(e),t&&l.update(t),s=l.digest();var f=0;if(i>0){var d=u.length-i;f=Math.min(i,s.length),s.copy(u,d,0,f),i-=f}if(f0){var p=c.length-a,h=Math.min(a,s.length-f);s.copy(c,p,f,f+h),a-=h}}return s.fill(0),{key:u,iv:c}}},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(979),a=n(986),i=n(987),u=n(276),c=n(461),s=n(22).Buffer;function l(e){var t;"object"!==(0,r.default)(e)||s.isBuffer(e)||(t=e.passphrase,e=e.key),"string"==typeof e&&(e=s.from(e));var n,l,f=i(e,t),d=f.tag,p=f.data;switch(d){case"CERTIFICATE":l=o.certificate.decode(p,"der").tbsCertificate.subjectPublicKeyInfo;case"PUBLIC KEY":switch(l||(l=o.PublicKey.decode(p,"der")),n=l.algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return o.RSAPublicKey.decode(l.subjectPublicKey.data,"der");case"1.2.840.10045.2.1":return l.subjectPrivateKey=l.subjectPublicKey,{type:"ec",data:l};case"1.2.840.10040.4.1":return l.algorithm.params.pub_key=o.DSAparam.decode(l.subjectPublicKey.data,"der"),{type:"dsa",data:l.algorithm.params};default:throw new Error("unknown key id "+n)}case"ENCRYPTED PRIVATE KEY":p=function(e,t){var n=e.algorithm.decrypt.kde.kdeparams.salt,r=parseInt(e.algorithm.decrypt.kde.kdeparams.iters.toString(),10),o=a[e.algorithm.decrypt.cipher.algo.join(".")],i=e.algorithm.decrypt.cipher.iv,l=e.subjectPrivateKey,f=parseInt(o.split("-")[1],10)/8,d=c.pbkdf2Sync(t,n,r,f,"sha1"),p=u.createDecipheriv(o,d,i),h=[];return h.push(p.update(l)),h.push(p.final()),s.concat(h)}(p=o.EncryptedPrivateKey.decode(p,"der"),t);case"PRIVATE KEY":switch(n=(l=o.PrivateKey.decode(p,"der")).algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return o.RSAPrivateKey.decode(l.subjectPrivateKey,"der");case"1.2.840.10045.2.1":return{curve:l.algorithm.curve,privateKey:o.ECPrivateKey.decode(l.subjectPrivateKey,"der").privateKey};case"1.2.840.10040.4.1":return l.algorithm.params.priv_key=o.DSAparam.decode(l.subjectPrivateKey,"der"),{type:"dsa",params:l.algorithm.params};default:throw new Error("unknown key id "+n)}case"RSA PUBLIC KEY":return o.RSAPublicKey.decode(p,"der");case"RSA PRIVATE KEY":return o.RSAPrivateKey.decode(p,"der");case"DSA PRIVATE KEY":return{type:"dsa",params:o.DSAPrivateKey.decode(p,"der")};case"EC PRIVATE KEY":return{curve:(p=o.ECPrivateKey.decode(p,"der")).parameters.value,privateKey:p.privateKey};default:throw new Error("unknown key type "+d)}}e.exports=l,l.signature=o.signature},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.assertIsString=t.assertIsArray=t.assertIsBuffer=t.assertIsHexString=void 0;var r=n(152);t.assertIsHexString=function(e){if(!(0,r.isHexString)(e)){var t="This method only supports 0x-prefixed hex strings but input was: ".concat(e);throw new Error(t)}};t.assertIsBuffer=function(t){if(!e.isBuffer(t)){var n="This method only supports Buffer but input was: ".concat(t);throw new Error(n)}};t.assertIsArray=function(e){if(!Array.isArray(e)){var t="This method only supports number arrays but input was: ".concat(e);throw new Error(t)}};t.assertIsString=function(e){if("string"!=typeof e){var t="This method only supports strings but input was: ".concat(e);throw new Error(t)}}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return u.default}});var o=r(n(156)),a=r(n(1039)),i=r(n(1040)),u=r(n(520)),c=r(n(505)),s=r(n(93)),l=r(n(508)),f=r(n(290))},function(e,t,n){"use strict";!function(e){var t=function(e){var t,n=new Float64Array(16);if(e)for(t=0;t>24&255,e[t+1]=n>>16&255,e[t+2]=n>>8&255,e[t+3]=255&n,e[t+4]=r>>24&255,e[t+5]=r>>16&255,e[t+6]=r>>8&255,e[t+7]=255&r}function y(e,t,n,r,o){var a,i=0;for(a=0;a>>8)-1}function b(e,t,n,r){return y(e,t,n,r,16)}function m(e,t,n,r){return y(e,t,n,r,32)}function v(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,b=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,m=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,g=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,k=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=a,w=i,I=u,A=c,T=s,O=l,E=f,P=d,S=p,R=h,D=y,C=b,N=m,B=v,M=g,j=k,x=0;x<20;x+=2)_^=(o=(N^=(o=(S^=(o=(T^=(o=_+N|0)<<7|o>>>25)+_|0)<<9|o>>>23)+T|0)<<13|o>>>19)+S|0)<<18|o>>>14,O^=(o=(w^=(o=(B^=(o=(R^=(o=O+w|0)<<7|o>>>25)+O|0)<<9|o>>>23)+R|0)<<13|o>>>19)+B|0)<<18|o>>>14,D^=(o=(E^=(o=(I^=(o=(M^=(o=D+E|0)<<7|o>>>25)+D|0)<<9|o>>>23)+M|0)<<13|o>>>19)+I|0)<<18|o>>>14,j^=(o=(C^=(o=(P^=(o=(A^=(o=j+C|0)<<7|o>>>25)+j|0)<<9|o>>>23)+A|0)<<13|o>>>19)+P|0)<<18|o>>>14,_^=(o=(A^=(o=(I^=(o=(w^=(o=_+A|0)<<7|o>>>25)+_|0)<<9|o>>>23)+w|0)<<13|o>>>19)+I|0)<<18|o>>>14,O^=(o=(T^=(o=(P^=(o=(E^=(o=O+T|0)<<7|o>>>25)+O|0)<<9|o>>>23)+E|0)<<13|o>>>19)+P|0)<<18|o>>>14,D^=(o=(R^=(o=(S^=(o=(C^=(o=D+R|0)<<7|o>>>25)+D|0)<<9|o>>>23)+C|0)<<13|o>>>19)+S|0)<<18|o>>>14,j^=(o=(M^=(o=(B^=(o=(N^=(o=j+M|0)<<7|o>>>25)+j|0)<<9|o>>>23)+N|0)<<13|o>>>19)+B|0)<<18|o>>>14;_=_+a|0,w=w+i|0,I=I+u|0,A=A+c|0,T=T+s|0,O=O+l|0,E=E+f|0,P=P+d|0,S=S+p|0,R=R+h|0,D=D+y|0,C=C+b|0,N=N+m|0,B=B+v|0,M=M+g|0,j=j+k|0,e[0]=_>>>0&255,e[1]=_>>>8&255,e[2]=_>>>16&255,e[3]=_>>>24&255,e[4]=w>>>0&255,e[5]=w>>>8&255,e[6]=w>>>16&255,e[7]=w>>>24&255,e[8]=I>>>0&255,e[9]=I>>>8&255,e[10]=I>>>16&255,e[11]=I>>>24&255,e[12]=A>>>0&255,e[13]=A>>>8&255,e[14]=A>>>16&255,e[15]=A>>>24&255,e[16]=T>>>0&255,e[17]=T>>>8&255,e[18]=T>>>16&255,e[19]=T>>>24&255,e[20]=O>>>0&255,e[21]=O>>>8&255,e[22]=O>>>16&255,e[23]=O>>>24&255,e[24]=E>>>0&255,e[25]=E>>>8&255,e[26]=E>>>16&255,e[27]=E>>>24&255,e[28]=P>>>0&255,e[29]=P>>>8&255,e[30]=P>>>16&255,e[31]=P>>>24&255,e[32]=S>>>0&255,e[33]=S>>>8&255,e[34]=S>>>16&255,e[35]=S>>>24&255,e[36]=R>>>0&255,e[37]=R>>>8&255,e[38]=R>>>16&255,e[39]=R>>>24&255,e[40]=D>>>0&255,e[41]=D>>>8&255,e[42]=D>>>16&255,e[43]=D>>>24&255,e[44]=C>>>0&255,e[45]=C>>>8&255,e[46]=C>>>16&255,e[47]=C>>>24&255,e[48]=N>>>0&255,e[49]=N>>>8&255,e[50]=N>>>16&255,e[51]=N>>>24&255,e[52]=B>>>0&255,e[53]=B>>>8&255,e[54]=B>>>16&255,e[55]=B>>>24&255,e[56]=M>>>0&255,e[57]=M>>>8&255,e[58]=M>>>16&255,e[59]=M>>>24&255,e[60]=j>>>0&255,e[61]=j>>>8&255,e[62]=j>>>16&255,e[63]=j>>>24&255}(e,t,n,r)}function g(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,b=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,m=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,g=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,k=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=0;_<20;_+=2)a^=(o=(m^=(o=(p^=(o=(s^=(o=a+m|0)<<7|o>>>25)+a|0)<<9|o>>>23)+s|0)<<13|o>>>19)+p|0)<<18|o>>>14,l^=(o=(i^=(o=(v^=(o=(h^=(o=l+i|0)<<7|o>>>25)+l|0)<<9|o>>>23)+h|0)<<13|o>>>19)+v|0)<<18|o>>>14,y^=(o=(f^=(o=(u^=(o=(g^=(o=y+f|0)<<7|o>>>25)+y|0)<<9|o>>>23)+g|0)<<13|o>>>19)+u|0)<<18|o>>>14,k^=(o=(b^=(o=(d^=(o=(c^=(o=k+b|0)<<7|o>>>25)+k|0)<<9|o>>>23)+c|0)<<13|o>>>19)+d|0)<<18|o>>>14,a^=(o=(c^=(o=(u^=(o=(i^=(o=a+c|0)<<7|o>>>25)+a|0)<<9|o>>>23)+i|0)<<13|o>>>19)+u|0)<<18|o>>>14,l^=(o=(s^=(o=(d^=(o=(f^=(o=l+s|0)<<7|o>>>25)+l|0)<<9|o>>>23)+f|0)<<13|o>>>19)+d|0)<<18|o>>>14,y^=(o=(h^=(o=(p^=(o=(b^=(o=y+h|0)<<7|o>>>25)+y|0)<<9|o>>>23)+b|0)<<13|o>>>19)+p|0)<<18|o>>>14,k^=(o=(g^=(o=(v^=(o=(m^=(o=k+g|0)<<7|o>>>25)+k|0)<<9|o>>>23)+m|0)<<13|o>>>19)+v|0)<<18|o>>>14;e[0]=a>>>0&255,e[1]=a>>>8&255,e[2]=a>>>16&255,e[3]=a>>>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]=k>>>0&255,e[13]=k>>>8&255,e[14]=k>>>16&255,e[15]=k>>>24&255,e[16]=f>>>0&255,e[17]=f>>>8&255,e[18]=f>>>16&255,e[19]=f>>>24&255,e[20]=d>>>0&255,e[21]=d>>>8&255,e[22]=d>>>16&255,e[23]=d>>>24&255,e[24]=p>>>0&255,e[25]=p>>>8&255,e[26]=p>>>16&255,e[27]=p>>>24&255,e[28]=h>>>0&255,e[29]=h>>>8&255,e[30]=h>>>16&255,e[31]=h>>>24&255}(e,t,n,r)}var k=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function _(e,t,n,r,o,a,i){var u,c,s=new Uint8Array(16),l=new Uint8Array(64);for(c=0;c<16;c++)s[c]=0;for(c=0;c<8;c++)s[c]=a[c];for(;o>=64;){for(v(l,s,i,k),c=0;c<64;c++)e[t+c]=n[r+c]^l[c];for(u=1,c=8;c<16;c++)u=u+(255&s[c])|0,s[c]=255&u,u>>>=8;o-=64,t+=64,r+=64}if(o>0)for(v(l,s,i,k),c=0;c=64;){for(v(c,u,o,k),i=0;i<64;i++)e[t+i]=c[i];for(a=1,i=8;i<16;i++)a=a+(255&u[i])|0,u[i]=255&a,a>>>=8;n-=64,t+=64}if(n>0)for(v(c,u,o,k),i=0;i>>13|n<<3),r=255&e[4]|(255&e[5])<<8,this.r[2]=7939&(n>>>10|r<<6),o=255&e[6]|(255&e[7])<<8,this.r[3]=8191&(r>>>7|o<<9),a=255&e[8]|(255&e[9])<<8,this.r[4]=255&(o>>>4|a<<12),this.r[5]=a>>>1&8190,i=255&e[10]|(255&e[11])<<8,this.r[6]=8191&(a>>>14|i<<2),u=255&e[12]|(255&e[13])<<8,this.r[7]=8065&(i>>>11|u<<5),c=255&e[14]|(255&e[15])<<8,this.r[8]=8191&(u>>>8|c<<8),this.r[9]=c>>>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 O(e,t,n,r,o,a){var i=new T(a);return i.update(n,r,o),i.finish(e,t),0}function E(e,t,n,r,o,a){var i=new Uint8Array(16);return O(i,0,n,r,o,a),b(e,t,i,0)}function P(e,t,n,r,o){var a;if(n<32)return-1;for(A(e,0,t,0,n,r,o),O(e,16,e,32,n-32,e),a=0;a<16;a++)e[a]=0;return 0}function S(e,t,n,r,o){var a,i=new Uint8Array(32);if(n<32)return-1;if(I(i,0,32,r,o),0!==E(t,16,t,32,n-32,i))return-1;for(A(e,0,t,0,n,r,o),a=0;a<32;a++)e[a]=0;return 0}function R(e,t){var n;for(n=0;n<16;n++)e[n]=0|t[n]}function D(e){var t,n,r=1;for(t=0;t<16;t++)n=e[t]+r+65535,r=Math.floor(n/65536),e[t]=n-65536*r;e[0]+=r-1+37*(r-1)}function C(e,t,n){for(var r,o=~(n-1),a=0;a<16;a++)r=o&(e[a]^t[a]),e[a]^=r,t[a]^=r}function N(e,n){var r,o,a,i=t(),u=t();for(r=0;r<16;r++)u[r]=n[r];for(D(u),D(u),D(u),o=0;o<2;o++){for(i[0]=u[0]-65517,r=1;r<15;r++)i[r]=u[r]-65535-(i[r-1]>>16&1),i[r-1]&=65535;i[15]=u[15]-32767-(i[14]>>16&1),a=i[15]>>16&1,i[14]&=65535,C(u,i,1-a)}for(r=0;r<16;r++)e[2*r]=255&u[r],e[2*r+1]=u[r]>>8}function B(e,t){var n=new Uint8Array(32),r=new Uint8Array(32);return N(n,e),N(r,t),m(n,0,r,0)}function M(e){var t=new Uint8Array(32);return N(t,e),1&t[0]}function j(e,t){var n;for(n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}function x(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]+n[r]}function F(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]-n[r]}function U(e,t,n){var r,o,a=0,i=0,u=0,c=0,s=0,l=0,f=0,d=0,p=0,h=0,y=0,b=0,m=0,v=0,g=0,k=0,_=0,w=0,I=0,A=0,T=0,O=0,E=0,P=0,S=0,R=0,D=0,C=0,N=0,B=0,M=0,j=n[0],x=n[1],F=n[2],U=n[3],L=n[4],K=n[5],G=n[6],z=n[7],Q=n[8],H=n[9],V=n[10],q=n[11],W=n[12],Y=n[13],Z=n[14],J=n[15];a+=(r=t[0])*j,i+=r*x,u+=r*F,c+=r*U,s+=r*L,l+=r*K,f+=r*G,d+=r*z,p+=r*Q,h+=r*H,y+=r*V,b+=r*q,m+=r*W,v+=r*Y,g+=r*Z,k+=r*J,i+=(r=t[1])*j,u+=r*x,c+=r*F,s+=r*U,l+=r*L,f+=r*K,d+=r*G,p+=r*z,h+=r*Q,y+=r*H,b+=r*V,m+=r*q,v+=r*W,g+=r*Y,k+=r*Z,_+=r*J,u+=(r=t[2])*j,c+=r*x,s+=r*F,l+=r*U,f+=r*L,d+=r*K,p+=r*G,h+=r*z,y+=r*Q,b+=r*H,m+=r*V,v+=r*q,g+=r*W,k+=r*Y,_+=r*Z,w+=r*J,c+=(r=t[3])*j,s+=r*x,l+=r*F,f+=r*U,d+=r*L,p+=r*K,h+=r*G,y+=r*z,b+=r*Q,m+=r*H,v+=r*V,g+=r*q,k+=r*W,_+=r*Y,w+=r*Z,I+=r*J,s+=(r=t[4])*j,l+=r*x,f+=r*F,d+=r*U,p+=r*L,h+=r*K,y+=r*G,b+=r*z,m+=r*Q,v+=r*H,g+=r*V,k+=r*q,_+=r*W,w+=r*Y,I+=r*Z,A+=r*J,l+=(r=t[5])*j,f+=r*x,d+=r*F,p+=r*U,h+=r*L,y+=r*K,b+=r*G,m+=r*z,v+=r*Q,g+=r*H,k+=r*V,_+=r*q,w+=r*W,I+=r*Y,A+=r*Z,T+=r*J,f+=(r=t[6])*j,d+=r*x,p+=r*F,h+=r*U,y+=r*L,b+=r*K,m+=r*G,v+=r*z,g+=r*Q,k+=r*H,_+=r*V,w+=r*q,I+=r*W,A+=r*Y,T+=r*Z,O+=r*J,d+=(r=t[7])*j,p+=r*x,h+=r*F,y+=r*U,b+=r*L,m+=r*K,v+=r*G,g+=r*z,k+=r*Q,_+=r*H,w+=r*V,I+=r*q,A+=r*W,T+=r*Y,O+=r*Z,E+=r*J,p+=(r=t[8])*j,h+=r*x,y+=r*F,b+=r*U,m+=r*L,v+=r*K,g+=r*G,k+=r*z,_+=r*Q,w+=r*H,I+=r*V,A+=r*q,T+=r*W,O+=r*Y,E+=r*Z,P+=r*J,h+=(r=t[9])*j,y+=r*x,b+=r*F,m+=r*U,v+=r*L,g+=r*K,k+=r*G,_+=r*z,w+=r*Q,I+=r*H,A+=r*V,T+=r*q,O+=r*W,E+=r*Y,P+=r*Z,S+=r*J,y+=(r=t[10])*j,b+=r*x,m+=r*F,v+=r*U,g+=r*L,k+=r*K,_+=r*G,w+=r*z,I+=r*Q,A+=r*H,T+=r*V,O+=r*q,E+=r*W,P+=r*Y,S+=r*Z,R+=r*J,b+=(r=t[11])*j,m+=r*x,v+=r*F,g+=r*U,k+=r*L,_+=r*K,w+=r*G,I+=r*z,A+=r*Q,T+=r*H,O+=r*V,E+=r*q,P+=r*W,S+=r*Y,R+=r*Z,D+=r*J,m+=(r=t[12])*j,v+=r*x,g+=r*F,k+=r*U,_+=r*L,w+=r*K,I+=r*G,A+=r*z,T+=r*Q,O+=r*H,E+=r*V,P+=r*q,S+=r*W,R+=r*Y,D+=r*Z,C+=r*J,v+=(r=t[13])*j,g+=r*x,k+=r*F,_+=r*U,w+=r*L,I+=r*K,A+=r*G,T+=r*z,O+=r*Q,E+=r*H,P+=r*V,S+=r*q,R+=r*W,D+=r*Y,C+=r*Z,N+=r*J,g+=(r=t[14])*j,k+=r*x,_+=r*F,w+=r*U,I+=r*L,A+=r*K,T+=r*G,O+=r*z,E+=r*Q,P+=r*H,S+=r*V,R+=r*q,D+=r*W,C+=r*Y,N+=r*Z,B+=r*J,k+=(r=t[15])*j,i+=38*(w+=r*F),u+=38*(I+=r*U),c+=38*(A+=r*L),s+=38*(T+=r*K),l+=38*(O+=r*G),f+=38*(E+=r*z),d+=38*(P+=r*Q),p+=38*(S+=r*H),h+=38*(R+=r*V),y+=38*(D+=r*q),b+=38*(C+=r*W),m+=38*(N+=r*Y),v+=38*(B+=r*Z),g+=38*(M+=r*J),a=(r=(a+=38*(_+=r*x))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),a=(r=(a+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),a+=o-1+37*(o-1),e[0]=a,e[1]=i,e[2]=u,e[3]=c,e[4]=s,e[5]=l,e[6]=f,e[7]=d,e[8]=p,e[9]=h,e[10]=y,e[11]=b,e[12]=m,e[13]=v,e[14]=g,e[15]=k}function L(e,t){U(e,t,t)}function K(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=253;r>=0;r--)L(o,o),2!==r&&4!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function G(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=250;r>=0;r--)L(o,o),1!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function z(e,n,r){var o,a,i=new Uint8Array(32),u=new Float64Array(80),s=t(),l=t(),f=t(),d=t(),p=t(),h=t();for(a=0;a<31;a++)i[a]=n[a];for(i[31]=127&n[31]|64,i[0]&=248,j(u,r),a=0;a<16;a++)l[a]=u[a],d[a]=s[a]=f[a]=0;for(s[0]=d[0]=1,a=254;a>=0;--a)C(s,l,o=i[a>>>3]>>>(7&a)&1),C(f,d,o),x(p,s,f),F(s,s,f),x(f,l,d),F(l,l,d),L(d,p),L(h,s),U(s,f,s),U(f,l,p),x(p,s,f),F(s,s,f),L(l,s),F(f,d,h),U(s,f,c),x(s,s,d),U(f,f,s),U(s,d,h),U(d,l,u),L(l,p),C(s,l,o),C(f,d,o);for(a=0;a<16;a++)u[a+16]=s[a],u[a+32]=f[a],u[a+48]=l[a],u[a+64]=d[a];var y=u.subarray(32),b=u.subarray(16);return K(y,y),U(b,b,y),N(e,b),0}function Q(e,t){return z(e,t,a)}function H(e,t){return r(t,32),Q(e,t)}function V(e,t,n){var r=new Uint8Array(32);return z(r,n,t),g(e,o,r,k)}T.prototype.blocks=function(e,t,n){for(var r,o,a,i,u,c,s,l,f,d,p,h,y,b,m,v,g,k,_,w=this.fin?0:2048,I=this.h[0],A=this.h[1],T=this.h[2],O=this.h[3],E=this.h[4],P=this.h[5],S=this.h[6],R=this.h[7],D=this.h[8],C=this.h[9],N=this.r[0],B=this.r[1],M=this.r[2],j=this.r[3],x=this.r[4],F=this.r[5],U=this.r[6],L=this.r[7],K=this.r[8],G=this.r[9];n>=16;)d=f=0,d+=(I+=8191&(r=255&e[t+0]|(255&e[t+1])<<8))*N,d+=(A+=8191&(r>>>13|(o=255&e[t+2]|(255&e[t+3])<<8)<<3))*(5*G),d+=(T+=8191&(o>>>10|(a=255&e[t+4]|(255&e[t+5])<<8)<<6))*(5*K),d+=(O+=8191&(a>>>7|(i=255&e[t+6]|(255&e[t+7])<<8)<<9))*(5*L),f=(d+=(E+=8191&(i>>>4|(u=255&e[t+8]|(255&e[t+9])<<8)<<12))*(5*U))>>>13,d&=8191,d+=(P+=u>>>1&8191)*(5*F),d+=(S+=8191&(u>>>14|(c=255&e[t+10]|(255&e[t+11])<<8)<<2))*(5*x),d+=(R+=8191&(c>>>11|(s=255&e[t+12]|(255&e[t+13])<<8)<<5))*(5*j),d+=(D+=8191&(s>>>8|(l=255&e[t+14]|(255&e[t+15])<<8)<<8))*(5*M),p=f+=(d+=(C+=l>>>5|w)*(5*B))>>>13,p+=I*B,p+=A*N,p+=T*(5*G),p+=O*(5*K),f=(p+=E*(5*L))>>>13,p&=8191,p+=P*(5*U),p+=S*(5*F),p+=R*(5*x),p+=D*(5*j),f+=(p+=C*(5*M))>>>13,p&=8191,h=f,h+=I*M,h+=A*B,h+=T*N,h+=O*(5*G),f=(h+=E*(5*K))>>>13,h&=8191,h+=P*(5*L),h+=S*(5*U),h+=R*(5*F),h+=D*(5*x),y=f+=(h+=C*(5*j))>>>13,y+=I*j,y+=A*M,y+=T*B,y+=O*N,f=(y+=E*(5*G))>>>13,y&=8191,y+=P*(5*K),y+=S*(5*L),y+=R*(5*U),y+=D*(5*F),b=f+=(y+=C*(5*x))>>>13,b+=I*x,b+=A*j,b+=T*M,b+=O*B,f=(b+=E*N)>>>13,b&=8191,b+=P*(5*G),b+=S*(5*K),b+=R*(5*L),b+=D*(5*U),m=f+=(b+=C*(5*F))>>>13,m+=I*F,m+=A*x,m+=T*j,m+=O*M,f=(m+=E*B)>>>13,m&=8191,m+=P*N,m+=S*(5*G),m+=R*(5*K),m+=D*(5*L),v=f+=(m+=C*(5*U))>>>13,v+=I*U,v+=A*F,v+=T*x,v+=O*j,f=(v+=E*M)>>>13,v&=8191,v+=P*B,v+=S*N,v+=R*(5*G),v+=D*(5*K),g=f+=(v+=C*(5*L))>>>13,g+=I*L,g+=A*U,g+=T*F,g+=O*x,f=(g+=E*j)>>>13,g&=8191,g+=P*M,g+=S*B,g+=R*N,g+=D*(5*G),k=f+=(g+=C*(5*K))>>>13,k+=I*K,k+=A*L,k+=T*U,k+=O*F,f=(k+=E*x)>>>13,k&=8191,k+=P*j,k+=S*M,k+=R*B,k+=D*N,_=f+=(k+=C*(5*G))>>>13,_+=I*G,_+=A*K,_+=T*L,_+=O*U,f=(_+=E*F)>>>13,_&=8191,_+=P*x,_+=S*j,_+=R*M,_+=D*B,I=d=8191&(f=(f=((f+=(_+=C*N)>>>13)<<2)+f|0)+(d&=8191)|0),A=p+=f>>>=13,T=h&=8191,O=y&=8191,E=b&=8191,P=m&=8191,S=v&=8191,R=g&=8191,D=k&=8191,C=_&=8191,t+=16,n-=16;this.h[0]=I,this.h[1]=A,this.h[2]=T,this.h[3]=O,this.h[4]=E,this.h[5]=P,this.h[6]=S,this.h[7]=R,this.h[8]=D,this.h[9]=C},T.prototype.finish=function(e,t){var n,r,o,a,i=new Uint16Array(10);if(this.leftover){for(a=this.leftover,this.buffer[a++]=1;a<16;a++)this.buffer[a]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(n=this.h[1]>>>13,this.h[1]&=8191,a=2;a<10;a++)this.h[a]+=n,n=this.h[a]>>>13,this.h[a]&=8191;for(this.h[0]+=5*n,n=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=n,n=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=n,i[0]=this.h[0]+5,n=i[0]>>>13,i[0]&=8191,a=1;a<10;a++)i[a]=this.h[a]+n,n=i[a]>>>13,i[a]&=8191;for(i[9]-=8192,r=(1^n)-1,a=0;a<10;a++)i[a]&=r;for(r=~r,a=0;a<10;a++)this.h[a]=this.h[a]&r|i[a];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,a=1;a<8;a++)o=(this.h[a]+this.pad[a]|0)+(o>>>16)|0,this.h[a]=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},T.prototype.update=function(e,t,n){var r,o;if(this.leftover){for((o=16-this.leftover)>n&&(o=n),r=0;r=16&&(o=n-n%16,this.blocks(e,t,o),t+=o,n-=o),n){for(r=0;r=128;){for(w=0;w<16;w++)I=8*w+W,R[w]=n[I+0]<<24|n[I+1]<<16|n[I+2]<<8|n[I+3],D[w]=n[I+4]<<24|n[I+5]<<16|n[I+6]<<8|n[I+7];for(w=0;w<80;w++)if(o=C,a=N,i=B,u=M,c=j,s=x,l=F,U,d=L,p=K,h=G,y=z,b=Q,m=H,v=V,q,O=65535&(T=q),E=T>>>16,P=65535&(A=U),S=A>>>16,O+=65535&(T=(Q>>>14|j<<18)^(Q>>>18|j<<14)^(j>>>9|Q<<23)),E+=T>>>16,P+=65535&(A=(j>>>14|Q<<18)^(j>>>18|Q<<14)^(Q>>>9|j<<23)),S+=A>>>16,O+=65535&(T=Q&H^~Q&V),E+=T>>>16,P+=65535&(A=j&x^~j&F),S+=A>>>16,O+=65535&(T=Y[2*w+1]),E+=T>>>16,P+=65535&(A=Y[2*w]),S+=A>>>16,A=R[w%16],E+=(T=D[w%16])>>>16,P+=65535&A,S+=A>>>16,P+=(E+=(O+=65535&T)>>>16)>>>16,O=65535&(T=_=65535&O|E<<16),E=T>>>16,P=65535&(A=k=65535&P|(S+=P>>>16)<<16),S=A>>>16,O+=65535&(T=(L>>>28|C<<4)^(C>>>2|L<<30)^(C>>>7|L<<25)),E+=T>>>16,P+=65535&(A=(C>>>28|L<<4)^(L>>>2|C<<30)^(L>>>7|C<<25)),S+=A>>>16,E+=(T=L&K^L&G^K&G)>>>16,P+=65535&(A=C&N^C&B^N&B),S+=A>>>16,f=65535&(P+=(E+=(O+=65535&T)>>>16)>>>16)|(S+=P>>>16)<<16,g=65535&O|E<<16,O=65535&(T=y),E=T>>>16,P=65535&(A=u),S=A>>>16,E+=(T=_)>>>16,P+=65535&(A=k),S+=A>>>16,N=o,B=a,M=i,j=u=65535&(P+=(E+=(O+=65535&T)>>>16)>>>16)|(S+=P>>>16)<<16,x=c,F=s,U=l,C=f,K=d,G=p,z=h,Q=y=65535&O|E<<16,H=b,V=m,q=v,L=g,w%16==15)for(I=0;I<16;I++)A=R[I],O=65535&(T=D[I]),E=T>>>16,P=65535&A,S=A>>>16,A=R[(I+9)%16],O+=65535&(T=D[(I+9)%16]),E+=T>>>16,P+=65535&A,S+=A>>>16,k=R[(I+1)%16],O+=65535&(T=((_=D[(I+1)%16])>>>1|k<<31)^(_>>>8|k<<24)^(_>>>7|k<<25)),E+=T>>>16,P+=65535&(A=(k>>>1|_<<31)^(k>>>8|_<<24)^k>>>7),S+=A>>>16,k=R[(I+14)%16],E+=(T=((_=D[(I+14)%16])>>>19|k<<13)^(k>>>29|_<<3)^(_>>>6|k<<26))>>>16,P+=65535&(A=(k>>>19|_<<13)^(_>>>29|k<<3)^k>>>6),S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,R[I]=65535&P|S<<16,D[I]=65535&O|E<<16;O=65535&(T=L),E=T>>>16,P=65535&(A=C),S=A>>>16,A=e[0],E+=(T=t[0])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[0]=C=65535&P|S<<16,t[0]=L=65535&O|E<<16,O=65535&(T=K),E=T>>>16,P=65535&(A=N),S=A>>>16,A=e[1],E+=(T=t[1])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[1]=N=65535&P|S<<16,t[1]=K=65535&O|E<<16,O=65535&(T=G),E=T>>>16,P=65535&(A=B),S=A>>>16,A=e[2],E+=(T=t[2])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[2]=B=65535&P|S<<16,t[2]=G=65535&O|E<<16,O=65535&(T=z),E=T>>>16,P=65535&(A=M),S=A>>>16,A=e[3],E+=(T=t[3])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[3]=M=65535&P|S<<16,t[3]=z=65535&O|E<<16,O=65535&(T=Q),E=T>>>16,P=65535&(A=j),S=A>>>16,A=e[4],E+=(T=t[4])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[4]=j=65535&P|S<<16,t[4]=Q=65535&O|E<<16,O=65535&(T=H),E=T>>>16,P=65535&(A=x),S=A>>>16,A=e[5],E+=(T=t[5])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[5]=x=65535&P|S<<16,t[5]=H=65535&O|E<<16,O=65535&(T=V),E=T>>>16,P=65535&(A=F),S=A>>>16,A=e[6],E+=(T=t[6])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[6]=F=65535&P|S<<16,t[6]=V=65535&O|E<<16,O=65535&(T=q),E=T>>>16,P=65535&(A=U),S=A>>>16,A=e[7],E+=(T=t[7])>>>16,P+=65535&A,S+=A>>>16,S+=(P+=(E+=(O+=65535&T)>>>16)>>>16)>>>16,e[7]=U=65535&P|S<<16,t[7]=q=65535&O|E<<16,W+=128,r-=128}return r}function J(e,t,n){var r,o=new Int32Array(8),a=new Int32Array(8),i=new Uint8Array(256),u=n;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,a[0]=4089235720,a[1]=2227873595,a[2]=4271175723,a[3]=1595750129,a[4]=2917565137,a[5]=725511199,a[6]=4215389547,a[7]=327033209,Z(o,a,t,n),n%=128,r=0;r=0;--o)$(e,t,r=n[o/8|0]>>(7&o)&1),X(t,e),X(e,e),$(e,t,r)}function ne(e,n){var r=[t(),t(),t(),t()];R(r[0],f),R(r[1],d),R(r[2],u),U(r[3],f,d),te(e,r,n)}function re(e,n,o){var a,i=new Uint8Array(64),u=[t(),t(),t(),t()];for(o||r(n,32),J(i,n,32),i[0]&=248,i[31]&=127,i[31]|=64,ne(u,i),ee(e,u),a=0;a<32;a++)n[a+32]=e[a];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 ae(e,t){var n,r,o,a;for(r=63;r>=32;--r){for(n=0,o=r-32,a=r-12;o>4)*oe[o],n=t[o]>>8,t[o]&=255;for(o=0;o<32;o++)t[o]-=n*oe[o];for(r=0;r<32;r++)t[r+1]+=t[r]>>8,e[r]=255&t[r]}function ie(e){var t,n=new Float64Array(64);for(t=0;t<64;t++)n[t]=e[t];for(t=0;t<64;t++)e[t]=0;ae(e,n)}function ue(e,n,r,o){var a,i,u=new Uint8Array(64),c=new Uint8Array(64),s=new Uint8Array(64),l=new Float64Array(64),f=[t(),t(),t(),t()];J(u,o,32),u[0]&=248,u[31]&=127,u[31]|=64;var d=r+64;for(a=0;a>7&&F(e[0],i,e[0]),U(e[3],e[0],e[1]),0)}(d,o))return-1;for(a=0;a=0},e.sign.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(64);return re(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(le(e),64!==e.length)throw new Error("bad secret key size");for(var t=new Uint8Array(32),n=0;n0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function s(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){u(e.precomputed);var n=e._getDoubles(),r=a(t,1,this._bitLength),o=(1<=i;l--)c=(c<<1)+r[l];s.push(c)}for(var f=this.jpoint(null,null,null),d=this.jpoint(null,null,null),p=o;p>0;p--){for(i=0;i=0;s--){for(var l=0;s>=0&&0===i[s];s--)l++;if(s>=0&&l++,c=c.dblp(l),s<0)break;var f=i[s];u(0!==f),c="affine"===e.type?f>0?c.mixedAdd(o[f-1>>1]):c.mixedAdd(o[-f-1>>1].neg()):f>0?c.add(o[f-1>>1]):c.add(o[-f-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,o){var u,c,s,l=this._wnafT1,f=this._wnafT2,d=this._wnafT3,p=0;for(u=0;u=1;u-=2){var y=u-1,b=u;if(1===l[y]&&1===l[b]){var m=[t[y],null,null,t[b]];0===t[y].y.cmp(t[b].y)?(m[1]=t[y].add(t[b]),m[2]=t[y].toJ().mixedAdd(t[b].neg())):0===t[y].y.cmp(t[b].y.redNeg())?(m[1]=t[y].toJ().mixedAdd(t[b]),m[2]=t[y].add(t[b].neg())):(m[1]=t[y].toJ().mixedAdd(t[b]),m[2]=t[y].toJ().mixedAdd(t[b].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],g=i(n[y],n[b]);for(p=Math.max(g[0].length,p),d[y]=new Array(p),d[b]=new Array(p),c=0;c=0;u--){for(var A=0;u>=0;){var T=!0;for(c=0;c=0&&A++,w=w.dblp(A),u<0)break;for(c=0;c0?s=f[c][O-1>>1]:O<0&&(s=f[c][-O-1>>1].neg()),w="affine"===s.type?w.mixedAdd(s):w.add(s))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},s.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,o=0;o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n16)throw new TypeError("uint64/int64 requires BigNumber to be less than or equal to 8 bytes");if(!t.isInteger())throw new TypeError("uint64/int64 requires BigNumber to be an integer");P.length%2==1&&(P="0".concat(P));var S=l.decode(P);o.set(S,32-S.length)}return o;case c.ArgumentType.int256:case c.ArgumentType.uint256:if(f.default.isBigNumber(t)){var R=t.toString(16);R.length%2==1&&(R="0".concat(R));var D=l.decode(R);o.set(D,32-D.length)}return o;case c.ArgumentType.address:return o.set(t,12),o;case c.ArgumentType.bool:return o[31]=t?1:0,o;case c.ArgumentType.func:return o.set(t,8),o;case c.ArgumentType.bytes32:return o.set(t,0),o;case c.ArgumentType.bytes:case c.ArgumentType.string:return r=t instanceof Uint8Array?t:s.encode(t),(o=Math.floor(r.length/32)>=0&&0!==Math.floor(r.length%32)?new Uint8Array(32*(Math.floor(r.length/32)+1)+32):new Uint8Array(64)).set(r,32),(i=d.safeView(o,28)).setUint32(0,r.length),o;default:throw new Error("Unsupported argument type: ".concat(n.toString()))}}(e,this._selector._paramTypes[n]);return this._arguments.push({dynamic:t,value:r}),this}},{key:"_build",value:function(e){var t=null!=e,n=t?4:0,r=0===this._arguments.length?n:32*this._arguments.length+this._arguments.map((function(e){return e.dynamic?e.value.length:0})).reduce((function(e,t){return e+t}))+n,o=new Uint8Array(r);t&&o.set(this._selector._build(e),0);var i,u=32*this._arguments.length,c=y(this._arguments.entries());try{for(c.s();!(i=c.n()).done;){var s=(0,a.default)(i.value,2),l=s[0],f=s[1],p=f.dynamic,h=f.value;if(p){var b=d.safeView(o,n+32*l+28);b.setUint32(0,u),o.set(h,b.getUint32(0)+n),u+=h.length}else o.set(h,n+32*l)}}catch(e){c.e(e)}finally{c.f()}return o}}]),e}();function v(e,t,n){n(t,f.default.isBigNumber(e)?e.toNumber():e)}t.default=m},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(14)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobuf",value:function(e){throw new Error("not implemented")}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(226)),l=r(n(14)),f=r(n(25)),d=r(n(178));function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var h=function(e){(0,i.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._fallbackFee,null!=r.fallbackFee&&e.setFallbackFee(r.fallbackFee),e._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e}return(0,a.default)(n,[{key:"fallbackFee",get:function(){return this._fallbackFee}},{key:"setFallbackFee",value:function(e){return this._fallbackFee=e,this}},{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,royaltyFee:{exchangeValueFraction:{numerator:this._numerator,denominator:this._denominator},fallbackFee:null!=this._fallbackFee?this._fallbackFee._toProtobuf().fixedFee:null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.royaltyFee,r=t.exchangeValueFraction;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,fallbackFee:null!=t.fallbackFee?d.default._fromProtobuf({fixedFee:t.fallbackFee}):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0})}}]),n}(s.default);t.default=h},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(226)),l=r(n(14)),f=r(n(25));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var p=function(e){(0,i.default)(n,e);var t=d(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e._min,null!=r.min&&e.setMin(r.min),e._max,null!=r.max&&e.setMax(r.max),e._assessmentMethod,null!=r.assessmentMethod&&e.setAssessmentMethod(r.assessmentMethod),e}return(0,a.default)(n,[{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"min",get:function(){return this._min}},{key:"setMin",value:function(e){return this._min="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"max",get:function(){return this._max}},{key:"setMax",value:function(e){return this._max="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"assessmentMethod",get:function(){return this._assessmentMethod}},{key:"setAssessmentMethod",value:function(e){return this._assessmentMethod=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fractionalFee:{fractionalAmount:{numerator:this._numerator,denominator:this._denominator},minimumAmount:this._min,maximumAmount:this._max}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fractionalFee,r=t.fractionalAmount;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0,min:null!=t.minimumAmount?t.minimumAmount:void 0,max:null!=t.maximumAmount?t.maximumAmount:void 0})}}]),n}(s.default);t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(34)),c=r(n(29)),s=r(n(25));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n1?t.split("/"):t.split("@"),o=f(r);try{for(o.s();!(n=o.n()).done;){if(""===n.value)throw new Error("invalid format for NftId: use [token]/[serial] or [token]@[serial]")}}catch(e){o.e(e)}finally{o.f()}return new e(c.default.fromString(r[0]),s.default.fromString(r[1]))}},{key:"_fromProtobuf",value:function(t){return new e(c.default._fromProtobuf(t.tokenID),null!=t.serialNumber?t.serialNumber:s.default.ZERO)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.NftID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"UnicodeNormalizationForm",{enumerable:!0,get:function(){return a.UnicodeNormalizationForm}}),Object.defineProperty(t,"Utf8ErrorFuncs",{enumerable:!0,get:function(){return a.Utf8ErrorFuncs}}),Object.defineProperty(t,"Utf8ErrorReason",{enumerable:!0,get:function(){return a.Utf8ErrorReason}}),Object.defineProperty(t,"_toEscapedUtf8String",{enumerable:!0,get:function(){return a._toEscapedUtf8String}}),Object.defineProperty(t,"formatBytes32String",{enumerable:!0,get:function(){return r.formatBytes32String}}),Object.defineProperty(t,"nameprep",{enumerable:!0,get:function(){return o.nameprep}}),Object.defineProperty(t,"parseBytes32String",{enumerable:!0,get:function(){return r.parseBytes32String}}),Object.defineProperty(t,"toUtf8Bytes",{enumerable:!0,get:function(){return a.toUtf8Bytes}}),Object.defineProperty(t,"toUtf8CodePoints",{enumerable:!0,get:function(){return a.toUtf8CodePoints}}),Object.defineProperty(t,"toUtf8String",{enumerable:!0,get:function(){return a.toUtf8String}});var r=n(1184),o=n(1186),a=n(301)},function(e,t,n){"use strict";e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){"use strict";function r(t){return e.exports=r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,r(t)}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){"use strict";function r(t,n){return e.exports=r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},e.exports.default=e.exports,e.exports.__esModule=!0,r(t,n)}e.exports=r,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.derPrefixBytes=t.derPrefix=t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(85)),l=r(n(308)),f=r(n(181)),d=n(159),p=b(n(96)),h=b(n(235));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var m="302e020100300506032b657004220420";t.derPrefix=m;var v=p.decode(m);t.derPrefixBytes=v;var g=function(){function e(t,n){(0,u.default)(this,e),this._keyPair=t instanceof Uint8Array?f.default.sign.keyPair.fromSeed(t):t,this._chainCode=null!=n?n:null}var t;return(0,c.default)(e,[{key:"_type",get:function(){return"ED25519"}},{key:"publicKey",get:function(){return new l.default(this._keyPair.publicKey)}},{key:"sign",value:function(e){return f.default.sign.detached(e,this._keyPair.secretKey)}},{key:"toBytesDer",value:function(){var e=new Uint8Array(v.length+32);return e.set(v,0),e.set(this._keyPair.secretKey.subarray(0,32),v.length),e}},{key:"toBytesRaw",value:function(){return this._keyPair.secretKey.slice(0,32)}}],[{key:"generate",value:function(){var t=h.bytes(64);return new e(f.default.sign.keyPair.fromSeed(t.subarray(0,32)),t.subarray(32))}},{key:"generateAsync",value:(t=(0,i.default)(a.default.mark((function t(){var n;return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,h.bytesAsync(64);case 2:return n=t.sent,t.abrupt("return",new e(f.default.sign.keyPair.fromSeed(n.subarray(0,32)),n.subarray(32)));case 4:case"end":return t.stop()}}),t)}))),function(){return t.apply(this,arguments)})},{key:"fromBytes",value:function(t){switch(t.length){case 48:return e.fromBytesDer(t);case 32:case 64:return e.fromBytesRaw(t);default:throw new s.default("invalid private key length: ".concat(t.length," bytes"))}}},{key:"fromBytesDer",value:function(t){if(48!=t.length||!(0,d.arrayStartsWith)(t,v))throw new s.default("invalid private key length: ".concat(t.length," bytes"));return new e(f.default.sign.keyPair.fromSeed(t.subarray(16)))}},{key:"fromBytesRaw",value:function(t){switch(t.length){case 32:return new e(f.default.sign.keyPair.fromSeed(t));case 64:return new e(f.default.sign.keyPair.fromSecretKey(t))}throw new s.default("invalid private key length: ".concat(t.length," bytes"))}},{key:"fromString",value:function(t){return e.fromBytes(p.decode(t))}},{key:"fromStringDer",value:function(t){return e.fromBytesDer(p.decode(t))}},{key:"fromStringRaw",value:function(t){return e.fromBytesRaw(p.decode(t))}}]),e}();t.default=g},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.bytes=function(e){return o.default.randomBytes(e)},t.bytesAsync=function(e){return Promise.resolve(o.default.randomBytes(e))};var o=r(n(181))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=Object.freeze({BadLength:"BadLength",UnknownWords:"UnknownWords",ChecksumMismatch:"ChecksumMismatch"});t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return(new TextDecoder).decode(e)},t.encode=function(e){return(new TextEncoder).encode(e)}},function(e,t,n){"use strict";var r,o=n(0)(n(3));function a(e){this.rand=e}if(e.exports=function(e){return r||(r=new a(null)),r.generate(e)},e.exports.Rand=a,a.prototype.generate=function(e){return this._rand(e)},a.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),n=0;n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?g.default._fromProtobufKey(y.Key.decode(n.alias)):null;r instanceof k.default||(r=null);var o=null!=t.childTransactionRecords?t.childTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],a=null!=t.duplicateTransactionRecords?t.duplicateTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],i=null!=n.contractCallResult?d.default._fromProtobuf(n.contractCallResult):null!=n.contractCreateResult?d.default._fromProtobuf(n.contractCreateResult):void 0;return new e({receipt:u.default._fromProtobuf({receipt:n.receipt}),transactionHash:null!=n.transactionHash?n.transactionHash:new Uint8Array,consensusTimestamp:s.default._fromProtobuf(n.consensusTimestamp),transactionId:c.default._fromProtobuf(n.transactionID),transactionMemo:null!=n.memo?n.memo:"",transactionFee:l.default.fromTinybars(null!=n.transactionFee?n.transactionFee:0),transfers:f.default._fromProtobuf(null!=n.transferList&&null!=n.transferList.accountAmounts?n.transferList.accountAmounts:[]),contractFunctionResult:i,tokenTransfers:p.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),tokenTransfersList:_.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),scheduleRef:null!=n.scheduleRef?b.default._fromProtobuf(n.scheduleRef):null,assessedCustomFees:null!=n.assessedCustomFees?n.assessedCustomFees.map((function(e){return m.default._fromProtobuf(e)})):[],nftTransfers:h.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),automaticTokenAssociations:null!=n.automaticTokenAssociations?n.automaticTokenAssociations.map((function(e){return v.default._fromProtobuf(e)})):[],parentConsensusTimestamp:null!=n.parentConsensusTimestamp?s.default._fromProtobuf(n.parentConsensusTimestamp):null,aliasKey:r,duplicates:a,children:o})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(y.TransactionGetRecordResponse.decode(t))}}]),e}();t.default=T},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(9)),u=r(n(26));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n>>32-t}function s(e,t,n,r,o,a,i){return c(e+(t&n|~t&r)+o+a|0,i)+t|0}function l(e,t,n,r,o,a,i){return c(e+(t&r|n&~r)+o+a|0,i)+t|0}function f(e,t,n,r,o,a,i){return c(e+(t^n^r)+o+a|0,i)+t|0}function d(e,t,n,r,o,a,i){return c(e+(n^(t|~r))+o+a|0,i)+t|0}r(u,o),u.prototype._update=function(){for(var e=i,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,o=this._c,a=this._d;n=s(n,r,o,a,e[0],3614090360,7),a=s(a,n,r,o,e[1],3905402710,12),o=s(o,a,n,r,e[2],606105819,17),r=s(r,o,a,n,e[3],3250441966,22),n=s(n,r,o,a,e[4],4118548399,7),a=s(a,n,r,o,e[5],1200080426,12),o=s(o,a,n,r,e[6],2821735955,17),r=s(r,o,a,n,e[7],4249261313,22),n=s(n,r,o,a,e[8],1770035416,7),a=s(a,n,r,o,e[9],2336552879,12),o=s(o,a,n,r,e[10],4294925233,17),r=s(r,o,a,n,e[11],2304563134,22),n=s(n,r,o,a,e[12],1804603682,7),a=s(a,n,r,o,e[13],4254626195,12),o=s(o,a,n,r,e[14],2792965006,17),n=l(n,r=s(r,o,a,n,e[15],1236535329,22),o,a,e[1],4129170786,5),a=l(a,n,r,o,e[6],3225465664,9),o=l(o,a,n,r,e[11],643717713,14),r=l(r,o,a,n,e[0],3921069994,20),n=l(n,r,o,a,e[5],3593408605,5),a=l(a,n,r,o,e[10],38016083,9),o=l(o,a,n,r,e[15],3634488961,14),r=l(r,o,a,n,e[4],3889429448,20),n=l(n,r,o,a,e[9],568446438,5),a=l(a,n,r,o,e[14],3275163606,9),o=l(o,a,n,r,e[3],4107603335,14),r=l(r,o,a,n,e[8],1163531501,20),n=l(n,r,o,a,e[13],2850285829,5),a=l(a,n,r,o,e[2],4243563512,9),o=l(o,a,n,r,e[7],1735328473,14),n=f(n,r=l(r,o,a,n,e[12],2368359562,20),o,a,e[5],4294588738,4),a=f(a,n,r,o,e[8],2272392833,11),o=f(o,a,n,r,e[11],1839030562,16),r=f(r,o,a,n,e[14],4259657740,23),n=f(n,r,o,a,e[1],2763975236,4),a=f(a,n,r,o,e[4],1272893353,11),o=f(o,a,n,r,e[7],4139469664,16),r=f(r,o,a,n,e[10],3200236656,23),n=f(n,r,o,a,e[13],681279174,4),a=f(a,n,r,o,e[0],3936430074,11),o=f(o,a,n,r,e[3],3572445317,16),r=f(r,o,a,n,e[6],76029189,23),n=f(n,r,o,a,e[9],3654602809,4),a=f(a,n,r,o,e[12],3873151461,11),o=f(o,a,n,r,e[15],530742520,16),n=d(n,r=f(r,o,a,n,e[2],3299628645,23),o,a,e[0],4096336452,6),a=d(a,n,r,o,e[7],1126891415,10),o=d(o,a,n,r,e[14],2878612391,15),r=d(r,o,a,n,e[5],4237533241,21),n=d(n,r,o,a,e[12],1700485571,6),a=d(a,n,r,o,e[3],2399980690,10),o=d(o,a,n,r,e[10],4293915773,15),r=d(r,o,a,n,e[1],2240044497,21),n=d(n,r,o,a,e[8],1873313359,6),a=d(a,n,r,o,e[15],4264355552,10),o=d(o,a,n,r,e[6],2734768916,15),r=d(r,o,a,n,e[13],1309151649,21),n=d(n,r,o,a,e[4],4149444226,6),a=d(a,n,r,o,e[11],3174756917,10),o=d(o,a,n,r,e[2],718787259,15),r=d(r,o,a,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+o|0,this._d=this._d+a|0},u.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=a.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=u},function(e,t,n){"use strict";var r=n(144).codes.ERR_STREAM_PREMATURE_CLOSE;function o(){}e.exports=function e(t,n,a){if("function"==typeof n)return e(t,null,n);n||(n={}),a=function(e){var t=!1;return function(){if(!t){t=!0;for(var n=arguments.length,r=new Array(n),o=0;o>>32-t}function y(e,t,n,r,o,a,i,u){return h(e+(t^n^r)+a+i|0,u)+o|0}function b(e,t,n,r,o,a,i,u){return h(e+(t&n|~t&r)+a+i|0,u)+o|0}function m(e,t,n,r,o,a,i,u){return h(e+((t|~n)^r)+a+i|0,u)+o|0}function v(e,t,n,r,o,a,i,u){return h(e+(t&r|n&~r)+a+i|0,u)+o|0}function g(e,t,n,r,o,a,i,u){return h(e+(t^(n|~r))+a+i|0,u)+o|0}o(p,a),p.prototype._update=function(){for(var e=i,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,o=0|this._c,a=0|this._d,p=0|this._e,k=0|this._a,_=0|this._b,w=0|this._c,I=0|this._d,A=0|this._e,T=0;T<80;T+=1){var O,E;T<16?(O=y(n,r,o,a,p,e[u[T]],f[0],s[T]),E=g(k,_,w,I,A,e[c[T]],d[0],l[T])):T<32?(O=b(n,r,o,a,p,e[u[T]],f[1],s[T]),E=v(k,_,w,I,A,e[c[T]],d[1],l[T])):T<48?(O=m(n,r,o,a,p,e[u[T]],f[2],s[T]),E=m(k,_,w,I,A,e[c[T]],d[2],l[T])):T<64?(O=v(n,r,o,a,p,e[u[T]],f[3],s[T]),E=b(k,_,w,I,A,e[c[T]],d[3],l[T])):(O=g(n,r,o,a,p,e[u[T]],f[4],s[T]),E=y(k,_,w,I,A,e[c[T]],d[4],l[T])),n=p,p=a,a=h(o,10),o=r,r=O,k=A,A=I,I=h(w,10),w=_,_=E}var P=this._b+o+I|0;this._b=this._c+a+A|0,this._c=this._d+p+k|0,this._d=this._e+n+_|0,this._e=this._a+r+w|0,this._a=P},p.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=r.alloc?r.alloc(20):new r(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=p},function(e,t,n){"use strict";var r=e.exports=function(e){e=e.toLowerCase();var t=r[e];if(!t)throw new Error(e+" is not supported (we accept pull requests)");return new t};r.sha=n(766),r.sha1=n(767),r.sha224=n(768),r.sha256=n(383),r.sha384=n(769),r.sha512=n(384)},function(e,t,n){"use strict";(t=e.exports=n(386)).Stream=t,t.Readable=t,t.Writable=n(256),t.Duplex=n(115),t.Transform=n(390),t.PassThrough=n(774)},function(e,t,n){"use strict";var r=n(12),o=r.Buffer;function a(e,t){for(var n in e)t[n]=e[n]}function i(e,t,n){return o(e,t,n)}o.from&&o.alloc&&o.allocUnsafe&&o.allocUnsafeSlow?e.exports=r:(a(r,t),t.Buffer=i),a(o,i),i.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return o(e,t,n)},i.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=o(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},i.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return o(e)},i.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";(function(t,r,o){var a=n(198);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var o=r.callback;t.pendingcb--,o(n),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=v;var u,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:a.nextTick;v.WritableState=m;var s=Object.create(n(164));s.inherits=n(15);var l={deprecate:n(197)},f=n(387),d=n(255).Buffer,p=o.Uint8Array||function(){};var h,y=n(388);function b(){}function m(e,t){u=u||n(115),e=e||{};var r=t instanceof u;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var o=e.highWaterMark,s=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:r&&(s||0===s)?s:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===e.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,o){--t.pendingcb,n?(a.nextTick(o,r),a.nextTick(A,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(o(r),e._writableState.errorEmitted=!0,e.emit("error",r),A(e,t))}(e,n,r,t,o);else{var i=w(n);i||n.corked||n.bufferProcessing||!n.bufferedRequest||_(e,n),r?c(k,e,n,i,o):k(e,n,i,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function v(e){if(u=u||n(115),!(h.call(v,this)||this instanceof u))return new v(e);this._writableState=new m(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),f.call(this)}function g(e,t,n,r,o,a,i){t.writelen=r,t.writecb=i,t.writing=!0,t.sync=!0,n?e._writev(o,t.onwrite):e._write(o,a,t.onwrite),t.sync=!1}function k(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),A(e,t)}function _(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,o=new Array(r),a=t.corkedRequestsFree;a.entry=n;for(var u=0,c=!0;n;)o[u]=n,n.isBuf||(c=!1),n=n.next,u+=1;o.allBuffers=c,g(e,t,!0,t.length,o,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;n;){var s=n.chunk,l=n.encoding,f=n.callback;if(g(e,t,!1,t.objectMode?1:s.length,s,l,f),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function w(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function I(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),A(e,t)}))}function A(e,t){var n=w(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,a.nextTick(I,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}s.inherits(v,f),m.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(m.prototype,"buffer",{get:l.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(h=Function.prototype[Symbol.hasInstance],Object.defineProperty(v,Symbol.hasInstance,{value:function(e){return!!h.call(this,e)||this===v&&(e&&e._writableState instanceof m)}})):h=function(e){return e instanceof this},v.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},v.prototype.write=function(e,t,n){var r,o=this._writableState,i=!1,u=!o.objectMode&&(r=e,d.isBuffer(r)||r instanceof p);return u&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),u?t="buffer":t||(t=o.defaultEncoding),"function"!=typeof n&&(n=b),o.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),a.nextTick(t,n)}(this,n):(u||function(e,t,n,r){var o=!0,i=!1;return null===n?i=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(i=new TypeError("Invalid non-string/buffer chunk")),i&&(e.emit("error",i),a.nextTick(r,i),o=!1),o}(this,o,e,n))&&(o.pendingcb++,i=function(e,t,n,r,o,a){if(!n){var i=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n));return t}(t,r,o);r!==i&&(n=!0,o="buffer",r=i)}var u=t.objectMode?1:r.length;t.length+=u;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(v.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),v.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},v.prototype._writev=null,v.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,A(e,t),n&&(t.finished?a.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(v.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),v.prototype.destroy=y.destroy,v.prototype._undestroy=y.undestroy,v.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(27),n(389).setImmediate,n(33))},function(e,t,n){"use strict";(function(e){var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.toType=t.TypeOutput=t.bnToRlp=t.bnToUnpaddedBuffer=t.bnToHex=void 0;var o,a=r(n(13)),i=n(140),u=n(114);function c(t){return(0,u.unpadBuffer)(t.toArrayLike(e))}t.bnToHex=function(e){return"0x"+e.toString(16)},t.bnToUnpaddedBuffer=c,t.bnToRlp=function(e){return c(e)},function(e){e[e.Number=0]="Number",e[e.BN=1]="BN",e[e.Buffer=2]="Buffer",e[e.PrefixedHexString=3]="PrefixedHexString"}(o=t.TypeOutput||(t.TypeOutput={})),t.toType=function(e,t){if(null===e)return null;if(void 0!==e){if("string"==typeof e&&!(0,i.isHexString)(e))throw new Error("A string must be provided with a 0x-prefix, given: "+e);if("number"==typeof e&&!Number.isSafeInteger(e))throw new Error("The provided number is greater than MAX_SAFE_INTEGER (please use an alternative input type)");var n=(0,u.toBuffer)(e);if(t===o.Buffer)return n;if(t===o.BN)return new a.default(n);if(t===o.Number){var r=new a.default(n),c=new a.default(Number.MAX_SAFE_INTEGER.toString());if(r.gt(c))throw new Error("The provided number is greater than MAX_SAFE_INTEGER (please use an alternative output type)");return r.toNumber()}return"0x"+n.toString("hex")}}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";var r=n(789),o=function(e){this.name=e.name,this.type=e.type,this.subscriptions=e.subscriptions||{},this.requestManager=null};o.prototype.setRequestManager=function(e){this.requestManager=e},o.prototype.attachToObject=function(e){var t=this.buildCall(),n=this.name.split(".");n.length>1?(e[n[0]]=e[n[0]]||{},e[n[0]][n[1]]=t):e[n[0]]=t},o.prototype.buildCall=function(){var e=this;return function(){e.subscriptions[arguments[0]]||console.warn("Subscription "+JSON.stringify(arguments[0])+" doesn't exist. Subscribing anyway.");var t=new r({subscription:e.subscriptions[arguments[0]]||{},requestManager:e.requestManager,type:e.type});return t.subscribe.apply(t,arguments)}},e.exports={subscriptions:o,subscription:r}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AddressZero",{enumerable:!0,get:function(){return r.AddressZero}}),Object.defineProperty(t,"EtherSymbol",{enumerable:!0,get:function(){return i.EtherSymbol}}),Object.defineProperty(t,"HashZero",{enumerable:!0,get:function(){return a.HashZero}}),Object.defineProperty(t,"MaxInt256",{enumerable:!0,get:function(){return o.MaxInt256}}),Object.defineProperty(t,"MaxUint256",{enumerable:!0,get:function(){return o.MaxUint256}}),Object.defineProperty(t,"MinInt256",{enumerable:!0,get:function(){return o.MinInt256}}),Object.defineProperty(t,"NegativeOne",{enumerable:!0,get:function(){return o.NegativeOne}}),Object.defineProperty(t,"One",{enumerable:!0,get:function(){return o.One}}),Object.defineProperty(t,"Two",{enumerable:!0,get:function(){return o.Two}}),Object.defineProperty(t,"WeiPerEther",{enumerable:!0,get:function(){return o.WeiPerEther}}),Object.defineProperty(t,"Zero",{enumerable:!0,get:function(){return o.Zero}});var r=n(797),o=n(798),a=n(799),i=n(800)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.derPrefixBytes=t.derPrefix=t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(89)),l=r(n(402)),f=r(n(201)),d=n(166),p=b(n(102)),h=b(n(261));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var m="302e020100300506032b657004220420";t.derPrefix=m;var v=p.decode(m);t.derPrefixBytes=v;var g=function(){function e(t,n){(0,u.default)(this,e),this._keyPair=t instanceof Uint8Array?f.default.sign.keyPair.fromSeed(t):t,this._chainCode=null!=n?n:null}var t;return(0,c.default)(e,[{key:"_type",get:function(){return"ED25519"}},{key:"publicKey",get:function(){return new l.default(this._keyPair.publicKey)}},{key:"sign",value:function(e){return f.default.sign.detached(e,this._keyPair.secretKey)}},{key:"toBytesDer",value:function(){var e=new Uint8Array(v.length+32);return e.set(v,0),e.set(this._keyPair.secretKey.subarray(0,32),v.length),e}},{key:"toBytesRaw",value:function(){return this._keyPair.secretKey.slice(0,32)}}],[{key:"generate",value:function(){var t=h.bytes(64);return new e(f.default.sign.keyPair.fromSeed(t.subarray(0,32)),t.subarray(32))}},{key:"generateAsync",value:(t=(0,i.default)(a.default.mark((function t(){var n;return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,h.bytesAsync(64);case 2:return n=t.sent,t.abrupt("return",new e(f.default.sign.keyPair.fromSeed(n.subarray(0,32)),n.subarray(32)));case 4:case"end":return t.stop()}}),t)}))),function(){return t.apply(this,arguments)})},{key:"fromBytes",value:function(t){switch(t.length){case 48:return e.fromBytesDer(t);case 32:case 64:return e.fromBytesRaw(t);default:throw new s.default("invalid private key length: ".concat(t.length," bytes"))}}},{key:"fromBytesDer",value:function(t){if(48!=t.length||!(0,d.arrayStartsWith)(t,v))throw new s.default("invalid private key length: ".concat(t.length," bytes"));return new e(f.default.sign.keyPair.fromSeed(t.subarray(16)))}},{key:"fromBytesRaw",value:function(t){switch(t.length){case 32:return new e(f.default.sign.keyPair.fromSeed(t));case 64:return new e(f.default.sign.keyPair.fromSecretKey(t))}throw new s.default("invalid private key length: ".concat(t.length," bytes"))}},{key:"fromString",value:function(t){return e.fromBytes(p.decode(t))}},{key:"fromStringDer",value:function(t){return e.fromBytesDer(p.decode(t))}},{key:"fromStringRaw",value:function(t){return e.fromBytesRaw(p.decode(t))}}]),e}();t.default=g},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.bytes=function(e){return o.default.randomBytes(e)},t.bytesAsync=function(e){return Promise.resolve(o.default.randomBytes(e))};var o=r(n(201))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=Object.freeze({BadLength:"BadLength",UnknownWords:"UnknownWords",ChecksumMismatch:"ChecksumMismatch"});t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return(new TextDecoder).decode(e)},t.encode=function(e){return(new TextEncoder).encode(e)}},function(e,t,n){"use strict";var r,o=t,a=n(265),i=n(412),u=n(63).assert;function c(e){"short"===e.type?this.curve=new i.short(e):"edwards"===e.type?this.curve=new i.edwards(e):this.curve=new i.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,u(this.g.validate(),"Invalid curve"),u(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function s(e,t){Object.defineProperty(o,e,{configurable:!0,enumerable:!0,get:function(){var n=new c(t);return Object.defineProperty(o,e,{configurable:!0,enumerable:!0,value:n}),n}})}o.PresetCurve=c,s("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:a.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),s("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:a.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),s("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:a.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),s("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:a.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),s("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:a.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),s("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["9"]}),s("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(825)}catch(e){r=void 0}s("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:a.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(e,t,n){"use strict";var r=t;r.utils=n(80),r.common=n(168),r.sha=n(819),r.ripemd=n(823),r.hmac=n(824),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(75)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(e,r){var i;return(0,o.default)(this,n),(i=t.call(this,r)).name="StatusError",i.status=e.status,i.transactionId=e.transactionId,i.message=r,void 0!==Error.captureStackTrace&&Error.captureStackTrace((0,a.default)(i),n),i}return n}((0,r(n(46)).default)(Error));t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(){(0,o.default)(this,e),this.list=[],this.locked=!1,this.index=0}return(0,a.default)(e,[{key:"setList",value:function(e){if(this.locked)throw new Error("list is locked");return this.list=e,this.index=0,this}},{key:"push",value:function(){var e;if(this.locked)throw new Error("list is locked");return(e=this.list).push.apply(e,arguments),this}},{key:"setLocked",value:function(){return this.locked=!0,this}},{key:"clear",value:function(){if(this.locked)throw new Error("list is locked");this.list=[]}},{key:"get",value:function(e){return this.list[e]}},{key:"set",value:function(e,t){if(this.locked)throw new Error("list is locked");return e==this.length?this.list.push(t):this.list[e]=t,this}},{key:"setIfAbsent",value:function(e,t){return e!=this.length&&null!=this.list[e]||this.set(e,t()),this}},{key:"next",get:function(){return this.get(this.advance())}},{key:"current",get:function(){var e=this.index-1;return e<0&&(e=this.length-1),this.get(e)}},{key:"advance",value:function(){var e=this.index;return this.index=(this.index+1)%this.list.length,e}},{key:"isEmpty",get:function(){return 0===this.length}},{key:"length",get:function(){return this.list.length}}]),e}();t.default=i},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(206)),c=r(n(65)),s=r(n(38)),l=r(n(28)),f=r(n(269)),d=r(n(270)),p=r(n(431)),h=r(n(433)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=w(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31)),b=r(n(124)),m=r(n(434)),v=r(n(861)),g=r(n(37)),k=r(n(90)),_=r(n(435));function w(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(w=function(e){return e?n:t})(e)}function I(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return A(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return A(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?g.default._fromProtobufKey(y.Key.decode(n.alias)):null;r instanceof k.default||(r=null);var o=null!=t.childTransactionRecords?t.childTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],a=null!=t.duplicateTransactionRecords?t.duplicateTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],i=null!=n.contractCallResult?d.default._fromProtobuf(n.contractCallResult):null!=n.contractCreateResult?d.default._fromProtobuf(n.contractCreateResult):void 0;return new e({receipt:u.default._fromProtobuf({receipt:n.receipt}),transactionHash:null!=n.transactionHash?n.transactionHash:new Uint8Array,consensusTimestamp:s.default._fromProtobuf(n.consensusTimestamp),transactionId:c.default._fromProtobuf(n.transactionID),transactionMemo:null!=n.memo?n.memo:"",transactionFee:l.default.fromTinybars(null!=n.transactionFee?n.transactionFee:0),transfers:f.default._fromProtobuf(null!=n.transferList&&null!=n.transferList.accountAmounts?n.transferList.accountAmounts:[]),contractFunctionResult:i,tokenTransfers:p.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),tokenTransfersList:_.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),scheduleRef:null!=n.scheduleRef?b.default._fromProtobuf(n.scheduleRef):null,assessedCustomFees:null!=n.assessedCustomFees?n.assessedCustomFees.map((function(e){return m.default._fromProtobuf(e)})):[],nftTransfers:h.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),automaticTokenAssociations:null!=n.automaticTokenAssociations?n.automaticTokenAssociations.map((function(e){return v.default._fromProtobuf(e)})):[],parentConsensusTimestamp:null!=n.parentConsensusTimestamp?s.default._fromProtobuf(n.parentConsensusTimestamp):null,aliasKey:r,duplicates:a,children:o})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(y.TransactionGetRecordResponse.decode(t))}}]),e}();t.default=T},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(10)),u=r(n(28));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0;r--)t+=this._buffer(e,t),n+=this._flushBuffer(o,n);return t+=this._buffer(e,t),o},o.prototype.final=function(e){var t,n;return e&&(t=this.update(e)),n="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(n):n},o.prototype._pad=function(e,t){if(0===t)return!1;for(;t=0||!t.umod(e.prime1)||!t.umod(e.prime2));return t}function i(e,n){var o=function(e){var t=a(e);return{blinder:t.toRed(r.mont(e.modulus)).redPow(new r(e.publicExponent)).fromRed(),unblinder:t.invm(e.modulus)}}(n),i=n.modulus.byteLength(),u=new r(e).mul(o.blinder).umod(n.modulus),c=u.toRed(r.mont(n.prime1)),s=u.toRed(r.mont(n.prime2)),l=n.coefficient,f=n.prime1,d=n.prime2,p=c.redPow(n.exponent1).fromRed(),h=s.redPow(n.exponent2).fromRed(),y=p.isub(h).imul(l).umod(f).imul(d);return h.iadd(y).imul(o.unblinder).umod(n.modulus).toArrayLike(t,"be",i)}i.getr=a,e.exports=i}).call(this,n(12).Buffer)},function(e,t,n){"use strict";(function(t){var r,o=n(0)(n(3)),a=n(12),i=a.Buffer,u={};for(r in a)a.hasOwnProperty(r)&&"SlowBuffer"!==r&&"Buffer"!==r&&(u[r]=a[r]);var c=u.Buffer={};for(r in i)i.hasOwnProperty(r)&&"allocUnsafe"!==r&&"allocUnsafeSlow"!==r&&(c[r]=i[r]);if(u.Buffer.prototype=i.prototype,c.from&&c.from!==Uint8Array.from||(c.from=function(e,t,n){if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type '+(0,o.default)(e));if(e&&void 0===e.length)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+(0,o.default)(e));return i(e,t,n)}),c.alloc||(c.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError('The "size" argument must be of type number. Received type '+(0,o.default)(e));if(e<0||e>=2*(1<<30))throw new RangeError('The value "'+e+'" is invalid for option "size"');var r=i(e);return t&&0!==t.length?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r}),!u.kStringMaxLength)try{u.kStringMaxLength=t.binding("buffer").kStringMaxLength}catch(e){}u.constants||(u.constants={MAX_LENGTH:u.kMaxLength},u.kStringMaxLength&&(u.constants.MAX_STRING_LENGTH=u.kStringMaxLength)),e.exports=u}).call(this,n(27))},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(282).Reporter,a=n(172).EncoderBuffer,i=n(172).DecoderBuffer,u=n(59),c=["seq","seqof","set","setof","objid","bool","gentime","utctime","null_","enum","int","objDesc","bitstr","bmpstr","charstr","genstr","graphstr","ia5str","iso646str","numstr","octstr","printstr","t61str","unistr","utf8str","videostr"],s=["key","obj","use","optional","explicit","implicit","def","choice","any","contains"].concat(c);function l(e,t,n){var r={};this._baseState=r,r.name=n,r.enc=e,r.parent=t||null,r.children=null,r.tag=null,r.args=null,r.reverseArgs=null,r.choice=null,r.optional=!1,r.any=!1,r.obj=!1,r.use=null,r.useDecoder=null,r.key=null,r.default=null,r.explicit=null,r.implicit=null,r.contains=null,r.parent||(r.children=[],this._wrap())}e.exports=l;var f=["enc","parent","children","tag","args","reverseArgs","choice","optional","any","obj","use","alteredUse","key","default","explicit","implicit","contains"];l.prototype.clone=function(){var e=this._baseState,t={};f.forEach((function(n){t[n]=e[n]}));var n=new this.constructor(t.parent);return n._baseState=t,n},l.prototype._wrap=function(){var e=this._baseState;s.forEach((function(t){this[t]=function(){var n=new this.constructor(this);return e.children.push(n),n[t].apply(n,arguments)}}),this)},l.prototype._init=function(e){var t=this._baseState;u(null===t.parent),e.call(this),t.children=t.children.filter((function(e){return e._baseState.parent===this}),this),u.equal(t.children.length,1,"Root node can have only one child")},l.prototype._useArgs=function(e){var t=this._baseState,n=e.filter((function(e){return e instanceof this.constructor}),this);e=e.filter((function(e){return!(e instanceof this.constructor)}),this),0!==n.length&&(u(null===t.children),t.children=n,n.forEach((function(e){e._baseState.parent=this}),this)),0!==e.length&&(u(null===t.args),t.args=e,t.reverseArgs=e.map((function(e){if("object"!==(0,r.default)(e)||e.constructor!==Object)return e;var t={};return Object.keys(e).forEach((function(n){n==(0|n)&&(n|=0);var r=e[n];t[r]=n})),t})))},["_peekTag","_decodeTag","_use","_decodeStr","_decodeObjid","_decodeTime","_decodeNull","_decodeInt","_decodeBool","_decodeList","_encodeComposite","_encodeStr","_encodeObjid","_encodeTime","_encodeNull","_encodeInt","_encodeBool"].forEach((function(e){l.prototype[e]=function(){var t=this._baseState;throw new Error(e+" not implemented for encoding: "+t.enc)}})),c.forEach((function(e){l.prototype[e]=function(){var t=this._baseState,n=Array.prototype.slice.call(arguments);return u(null===t.tag),t.tag=e,this._useArgs(n),this}})),l.prototype.use=function(e){u(e);var t=this._baseState;return u(null===t.use),t.use=e,this},l.prototype.optional=function(){return this._baseState.optional=!0,this},l.prototype.def=function(e){var t=this._baseState;return u(null===t.default),t.default=e,t.optional=!0,this},l.prototype.explicit=function(e){var t=this._baseState;return u(null===t.explicit&&null===t.implicit),t.explicit=e,this},l.prototype.implicit=function(e){var t=this._baseState;return u(null===t.explicit&&null===t.implicit),t.implicit=e,this},l.prototype.obj=function(){var e=this._baseState,t=Array.prototype.slice.call(arguments);return e.obj=!0,0!==t.length&&this._useArgs(t),this},l.prototype.key=function(e){var t=this._baseState;return u(null===t.key),t.key=e,this},l.prototype.any=function(){return this._baseState.any=!0,this},l.prototype.choice=function(e){var t=this._baseState;return u(null===t.choice),t.choice=e,this._useArgs(Object.keys(e).map((function(t){return e[t]}))),this},l.prototype.contains=function(e){var t=this._baseState;return u(null===t.use),t.contains=e,this},l.prototype._decode=function(e,t){var n=this._baseState;if(null===n.parent)return e.wrapResult(n.children[0]._decode(e,t));var r,o=n.default,a=!0,u=null;if(null!==n.key&&(u=e.enterKey(n.key)),n.optional){var c=null;if(null!==n.explicit?c=n.explicit:null!==n.implicit?c=n.implicit:null!==n.tag&&(c=n.tag),null!==c||n.any){if(a=this._peekTag(e,c,n.any),e.isError(a))return a}else{var s=e.save();try{null===n.choice?this._decodeGeneric(n.tag,e,t):this._decodeChoice(e,t),a=!0}catch(e){a=!1}e.restore(s)}}if(n.obj&&a&&(r=e.enterObject()),a){if(null!==n.explicit){var l=this._decodeTag(e,n.explicit);if(e.isError(l))return l;e=l}var f=e.offset;if(null===n.use&&null===n.choice){var d;n.any&&(d=e.save());var p=this._decodeTag(e,null!==n.implicit?n.implicit:n.tag,n.any);if(e.isError(p))return p;n.any?o=e.raw(d):e=p}if(t&&t.track&&null!==n.tag&&t.track(e.path(),f,e.length,"tagged"),t&&t.track&&null!==n.tag&&t.track(e.path(),e.offset,e.length,"content"),n.any||(o=null===n.choice?this._decodeGeneric(n.tag,e,t):this._decodeChoice(e,t)),e.isError(o))return o;if(n.any||null!==n.choice||null===n.children||n.children.forEach((function(n){n._decode(e,t)})),n.contains&&("octstr"===n.tag||"bitstr"===n.tag)){var h=new i(o);o=this._getUse(n.contains,e._reporterState.obj)._decode(h,t)}}return n.obj&&a&&(o=e.leaveObject(r)),null===n.key||null===o&&!0!==a?null!==u&&e.exitKey(u):e.leaveKey(u,n.key,o),o},l.prototype._decodeGeneric=function(e,t,n){var r=this._baseState;return"seq"===e||"set"===e?null:"seqof"===e||"setof"===e?this._decodeList(t,e,r.args[0],n):/str$/.test(e)?this._decodeStr(t,e,n):"objid"===e&&r.args?this._decodeObjid(t,r.args[0],r.args[1],n):"objid"===e?this._decodeObjid(t,null,null,n):"gentime"===e||"utctime"===e?this._decodeTime(t,e,n):"null_"===e?this._decodeNull(t,n):"bool"===e?this._decodeBool(t,n):"objDesc"===e?this._decodeStr(t,e,n):"int"===e||"enum"===e?this._decodeInt(t,r.args&&r.args[0],n):null!==r.use?this._getUse(r.use,t._reporterState.obj)._decode(t,n):t.error("unknown tag: "+e)},l.prototype._getUse=function(e,t){var n=this._baseState;return n.useDecoder=this._use(e,t),u(null===n.useDecoder._baseState.parent),n.useDecoder=n.useDecoder._baseState.children[0],n.implicit!==n.useDecoder._baseState.implicit&&(n.useDecoder=n.useDecoder.clone(),n.useDecoder._baseState.implicit=n.implicit),n.useDecoder},l.prototype._decodeChoice=function(e,t){var n=this._baseState,r=null,o=!1;return Object.keys(n.choice).some((function(a){var i=e.save(),u=n.choice[a];try{var c=u._decode(e,t);if(e.isError(c))return!1;r={type:a,value:c},o=!0}catch(t){return e.restore(i),!1}return!0}),this),o?r:e.error("Choice not matched")},l.prototype._createEncoderBuffer=function(e){return new a(e,this.reporter)},l.prototype._encode=function(e,t,n){var r=this._baseState;if(null===r.default||r.default!==e){var o=this._encodeValue(e,t,n);if(void 0!==o&&!this._skipDefault(o,t,n))return o}},l.prototype._encodeValue=function(e,t,n){var a=this._baseState;if(null===a.parent)return a.children[0]._encode(e,t||new o);var i=null;if(this.reporter=t,a.optional&&void 0===e){if(null===a.default)return;e=a.default}var u=null,c=!1;if(a.any)i=this._createEncoderBuffer(e);else if(a.choice)i=this._encodeChoice(e,t);else if(a.contains)u=this._getUse(a.contains,n)._encode(e,t),c=!0;else if(a.children)u=a.children.map((function(n){if("null_"===n._baseState.tag)return n._encode(null,t,e);if(null===n._baseState.key)return t.error("Child should have a key");var o=t.enterKey(n._baseState.key);if("object"!==(0,r.default)(e))return t.error("Child expected, but input is not object");var a=n._encode(e[n._baseState.key],t,e);return t.leaveKey(o),a}),this).filter((function(e){return e})),u=this._createEncoderBuffer(u);else if("seqof"===a.tag||"setof"===a.tag){if(!a.args||1!==a.args.length)return t.error("Too many args for : "+a.tag);if(!Array.isArray(e))return t.error("seqof/setof, but data is not Array");var s=this.clone();s._baseState.implicit=null,u=this._createEncoderBuffer(e.map((function(n){var r=this._baseState;return this._getUse(r.args[0],e)._encode(n,t)}),s))}else null!==a.use?i=this._getUse(a.use,n)._encode(e,t):(u=this._encodePrimitive(a.tag,e),c=!0);if(!a.any&&null===a.choice){var l=null!==a.implicit?a.implicit:a.tag,f=null===a.implicit?"universal":"context";null===l?null===a.use&&t.error("Tag could be omitted only for .use()"):null===a.use&&(i=this._encodeComposite(l,c,f,u))}return null!==a.explicit&&(i=this._encodeComposite(a.explicit,!1,"context",i)),i},l.prototype._encodeChoice=function(e,t){var n=this._baseState,r=n.choice[e.type];return r||u(!1,e.type+" not found in "+JSON.stringify(Object.keys(n.choice))),r._encode(e.value,t)},l.prototype._encodePrimitive=function(e,t){var n=this._baseState;if(/str$/.test(e))return this._encodeStr(t,e);if("objid"===e&&n.args)return this._encodeObjid(t,n.reverseArgs[0],n.args[1]);if("objid"===e)return this._encodeObjid(t,null,null);if("gentime"===e||"utctime"===e)return this._encodeTime(t,e);if("null_"===e)return this._encodeNull();if("int"===e||"enum"===e)return this._encodeInt(t,n.args&&n.reverseArgs[0]);if("bool"===e)return this._encodeBool(t);if("objDesc"===e)return this._encodeStr(t,e);throw new Error("Unsupported tag: "+e)},l.prototype._isNumstr=function(e){return/^[0-9 ]*$/.test(e)},l.prototype._isPrintstr=function(e){return/^[A-Za-z0-9 '()+,-./:=?]*$/.test(e)}},function(e,t,n){"use strict";var r=n(15);function o(e){this._reporterState={obj:null,path:[],options:e||{},errors:[]}}function a(e,t){this.path=e,this.rethrow(t)}t.Reporter=o,o.prototype.isError=function(e){return e instanceof a},o.prototype.save=function(){var e=this._reporterState;return{obj:e.obj,pathLen:e.path.length}},o.prototype.restore=function(e){var t=this._reporterState;t.obj=e.obj,t.path=t.path.slice(0,e.pathLen)},o.prototype.enterKey=function(e){return this._reporterState.path.push(e)},o.prototype.exitKey=function(e){var t=this._reporterState;t.path=t.path.slice(0,e-1)},o.prototype.leaveKey=function(e,t,n){var r=this._reporterState;this.exitKey(e),null!==r.obj&&(r.obj[t]=n)},o.prototype.path=function(){return this._reporterState.path.join("/")},o.prototype.enterObject=function(){var e=this._reporterState,t=e.obj;return e.obj={},t},o.prototype.leaveObject=function(e){var t=this._reporterState,n=t.obj;return t.obj=e,n},o.prototype.error=function(e){var t,n=this._reporterState,r=e instanceof a;if(t=r?e:new a(n.path.map((function(e){return"["+JSON.stringify(e)+"]"})).join(""),e.message||e,e.stack),!n.options.partial)throw t;return r||n.errors.push(t),t},o.prototype.wrapResult=function(e){var t=this._reporterState;return t.options.partial?{result:this.isError(e)?null:e,errors:t.errors}:e},r(a,Error),a.prototype.rethrow=function(e){if(this.message=e+" at: "+(this.path||"(shallow)"),Error.captureStackTrace&&Error.captureStackTrace(this,a),!this.stack)try{throw new Error(this.message)}catch(e){this.stack=e.stack}return this}},function(e,t,n){"use strict";function r(e){var t={};return Object.keys(e).forEach((function(n){(0|n)==n&&(n|=0);var r=e[n];t[r]=n})),t}t.tagClass={0:"universal",1:"application",2:"context",3:"private"},t.tagClassByName=r(t.tagClass),t.tag={0:"end",1:"bool",2:"int",3:"bitstr",4:"octstr",5:"null_",6:"objid",7:"objDesc",8:"external",9:"real",10:"enum",11:"embed",12:"utf8str",13:"relativeOid",16:"seq",17:"set",18:"numstr",19:"printstr",20:"t61str",21:"videostr",22:"ia5str",23:"utctime",24:"gentime",25:"graphstr",26:"iso646str",27:"genstr",28:"unistr",29:"charstr",30:"bmpstr"},t.tagByName=r(t.tag)},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.rlphash=t.ripemd160FromArray=t.ripemd160FromString=t.ripemd160=t.sha256FromArray=t.sha256FromString=t.sha256=t.keccakFromArray=t.keccakFromHexString=t.keccakFromString=t.keccak256=t.keccak=void 0;var r=n(1007),o=n(1023),a=n(92),i=n(125),u=n(217);t.keccak=function(e,t){switch(void 0===t&&(t=256),(0,u.assertIsBuffer)(e),t){case 224:return(0,r.keccak224)(e);case 256:return(0,r.keccak256)(e);case 384:return(0,r.keccak384)(e);case 512:return(0,r.keccak512)(e);default:throw new Error("Invald algorithm: keccak".concat(t))}};t.keccak256=function(e){return(0,t.keccak)(e)};t.keccakFromString=function(n,r){void 0===r&&(r=256),(0,u.assertIsString)(n);var o=e.from(n,"utf8");return(0,t.keccak)(o,r)};t.keccakFromHexString=function(e,n){return void 0===n&&(n=256),(0,u.assertIsHexString)(e),(0,t.keccak)((0,i.toBuffer)(e),n)};t.keccakFromArray=function(e,n){return void 0===n&&(n=256),(0,u.assertIsArray)(e),(0,t.keccak)((0,i.toBuffer)(e),n)};var c=function(e){return e=(0,i.toBuffer)(e),o("sha256").update(e).digest()};t.sha256=function(e){return(0,u.assertIsBuffer)(e),c(e)};t.sha256FromString=function(e){return(0,u.assertIsString)(e),c(e)};t.sha256FromArray=function(e){return(0,u.assertIsArray)(e),c(e)};var s=function(e,t){e=(0,i.toBuffer)(e);var n=o("rmd160").update(e).digest();return!0===t?(0,i.setLengthLeft)(n,32):n};t.ripemd160=function(e,t){return(0,u.assertIsBuffer)(e),s(e,t)};t.ripemd160FromString=function(e,t){return(0,u.assertIsString)(e),s(e,t)};t.ripemd160FromArray=function(e,t){return(0,u.assertIsArray)(e),s(e,t)};t.rlphash=function(e){return(0,t.keccak)(a.rlp.encode(e))}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";(t=e.exports=n(496)).Stream=t,t.Readable=t,t.Writable=n(500),t.Duplex=n(154),t.Transform=n(501),t.PassThrough=n(1018),t.finished=n(286),t.pipeline=n(1019)},function(e,t,n){"use strict";var r=n(153).codes.ERR_STREAM_PREMATURE_CLOSE;function o(){}e.exports=function e(t,n,a){if("function"==typeof n)return e(t,null,n);n||(n={}),a=function(e){var t=!1;return function(){if(!t){t=!0;for(var n=arguments.length,r=new Array(n),o=0;o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?g.default._fromProtobufKey(y.Key.decode(n.alias)):null;r instanceof k.default||(r=null);var o=null!=t.childTransactionRecords?t.childTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],a=null!=t.duplicateTransactionRecords?t.duplicateTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],i=null!=n.contractCallResult?d.default._fromProtobuf(n.contractCallResult):null!=n.contractCreateResult?d.default._fromProtobuf(n.contractCreateResult):void 0;return new e({receipt:u.default._fromProtobuf({receipt:n.receipt}),transactionHash:null!=n.transactionHash?n.transactionHash:new Uint8Array,consensusTimestamp:s.default._fromProtobuf(n.consensusTimestamp),transactionId:c.default._fromProtobuf(n.transactionID),transactionMemo:null!=n.memo?n.memo:"",transactionFee:l.default.fromTinybars(null!=n.transactionFee?n.transactionFee:0),transfers:(null!=n.transferList&&null!=n.transferList.accountAmounts?n.transferList.accountAmounts:[]).map((function(e){return f.default._fromProtobuf(e)})),contractFunctionResult:i,tokenTransfers:p.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),scheduleRef:null!=n.scheduleRef?b.default._fromProtobuf(n.scheduleRef):null,assessedCustomFees:null!=n.assessedCustomFees?n.assessedCustomFees.map((function(e){return m.default._fromProtobuf(e)})):[],nftTransfers:h.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),automaticTokenAssociations:null!=n.automaticTokenAssociations?n.automaticTokenAssociations.map((function(e){return v.default._fromProtobuf(e)})):[],parentConsensusTimestamp:null!=n.parentConsensusTimestamp?s.default._fromProtobuf(n.parentConsensusTimestamp):null,aliasKey:r,duplicates:a,children:o})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(y.TransactionGetRecordResponse.decode(t))}}]),e}();t.default=A},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(538)),c=r(n(55)),s=r(n(126)),l=y(n(83)),f=y(n(95)),d=y(n(176)),p=r(n(25));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var b=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.bytes=t.bytes,this.errorMessage=t.errorMessage,this.bloom=t.bloom,this.gasUsed=t.gasUsed,this.logs=t.logs,this.createdContractIds=t.createdContractIds}return(0,i.default)(e,[{key:"asBytes",value:function(){return this.bytes}},{key:"getString",value:function(e){return f.decode(this.getBytes(e))}},{key:"getBytes",value:function(e){var t=this.getInt32(e),n=d.safeView(this.bytes).getInt32(t+28);return this.bytes.subarray(t+32,t+32+n)}},{key:"getBytes32",value:function(e){return this.bytes.subarray(32*(null!=e?e:0),32*(null!=e?e:0)+32)}},{key:"getBool",value:function(e){return 0!==this.bytes[32*(null!=e?e:0)+31]}},{key:"getInt8",value:function(e){return this.bytes[32*(null!=e?e:0)+31]}},{key:"getInt32",value:function(e){var t=32*(null!=e?e:0)+28;return d.safeView(this.bytes).getInt32(t)}},{key:"getInt64",value:function(e){return new s.default(l.encode(this._getBytes32(null!=e?e:0).subarray(24,32)),16)}},{key:"getInt256",value:function(e){return new s.default(l.encode(this._getBytes32(null!=e?e:0)),16)}},{key:"getUint8",value:function(e){return this.bytes[32*(null!=e?e:0)+31]}},{key:"getUint32",value:function(e){var t=32*(null!=e?e:0)+28;return d.safeView(this.bytes).getUint32(t)}},{key:"getUint64",value:function(e){return new s.default(l.encode(this._getBytes32(e).subarray(24,32)),16)}},{key:"getUint256",value:function(e){return new s.default(l.encode(this._getBytes32(e)),16)}},{key:"getAddress",value:function(e){return l.encode(this.bytes.subarray(32*(null!=e?e:0)+12,32*(null!=e?e:0)+32))}},{key:"_getBytes32",value:function(e){return this.bytes.subarray(32*(null!=e?e:0),32*(null!=e?e:0)+32)}}],[{key:"_fromProtobuf",value:function(t){var n=t.contractID,r=t.gasUsed;return new e({bytes:t.contractCallResult,contractId:null!=n?c.default._fromProtobuf(n):null,errorMessage:null!=t.errorMessage?t.errorMessage:null,bloom:t.bloom,gasUsed:r instanceof p.default?r:p.default.fromValue(r),logs:(null!=t.logInfo?t.logInfo:[]).map((function(e){return u.default._fromProtobuf(e)})),createdContractIds:(null!=t.createdContractIDs?t.createdContractIDs:[]).map((function(e){return c.default._fromProtobuf(e)}))})}}]),e}();t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(14)),u=r(n(56)),c=r(n(129)),s=function(){function e(t){(0,o.default)(this,e),this.accountId=t.accountId,this.hash=t.hash,this.keys=t.keys,this.duration=t.duration,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{accountId:this.accountId._toProtobuf(),hash:this.hash,keys:this.keys._toProtobufKey().keyList,duration:this.duration._toProtobuf()}}}],[{key:"_fromProtobuf",value:function(t){var n=t;return new e({accountId:i.default._fromProtobuf(n.accountId),hash:null!=n.hash?n.hash:new Uint8Array,keys:null!=n.keys?c.default.__fromProtobufKeyList(n.keys):new c.default,duration:u.default._fromProtobuf(n.duration)})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.FungibleCommon:return"FUNGIBLE_COMMON";case e.NonFungibleUnique:return"NON_FUNGIBLE_UNIQUE";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromCode",value:function(t){switch(t){case 0:return e.FungibleCommon;case 1:return e.NonFungibleUnique}throw new Error("(BUG) TokenType.fromCode() does not handle code: ".concat(t))}}]),e}();t.default=i,i.FungibleCommon=new i(0),i.NonFungibleUnique=new i(1)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.Infinite:return"INFINITE";case e.Finite:return"FINITE";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromCode",value:function(t){switch(t){case 0:return e.Infinite;case 1:return e.Finite}throw new Error("(BUG) TokenSupplyType.fromCode() does not handle code: ".concat(t))}}]),e}();t.default=i,i.Infinite=new i(0),i.Finite=new i(1)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.ParamType=t.FunctionFragment=t.Fragment=t.FormatTypes=t.EventFragment=t.ConstructorFragment=void 0;var o=r(n(5)),a=r(n(6)),i=r(n(4)),u=r(n(1)),c=r(n(2)),s=n(101),l=n(117),f=n(49),d=n(179);function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,i.default)(e);if(t){var o=(0,i.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,a.default)(this,n)}}var h=new f.Logger(d.version),y={},b={calldata:!0,memory:!0,storage:!0},m={calldata:!0,memory:!0};function v(e,t){if("bytes"===e||"string"===e){if(b[t])return!0}else if("address"===e){if("payable"===t)return!0}else if((e.indexOf("[")>=0||"tuple"===e)&&m[t])return!0;return(b[t]||"payable"===t)&&h.throwArgumentError("invalid modifier","name",t),!1}function g(e,t){for(var n in t)(0,l.defineReadOnly)(e,n,t[n])}var k=Object.freeze({sighash:"sighash",minimal:"minimal",full:"full",json:"json"});t.FormatTypes=k;var _=new RegExp(/^(.*)\[([0-9]*)\]$/),w=function(){function e(t,n){(0,u.default)(this,e),t!==y&&h.throwError("use fromString",f.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new ParamType()"}),g(this,n);var r=this.type.match(_);g(this,r?{arrayLength:parseInt(r[2]||"-1"),arrayChildren:e.fromObject({type:r[1],components:this.components}),baseType:"array"}:{arrayLength:null,arrayChildren:null,baseType:null!=this.components?"tuple":this.type}),this._isParamType=!0,Object.freeze(this)}return(0,c.default)(e,[{key:"format",value:function(e){if(e||(e=k.sighash),k[e]||h.throwArgumentError("invalid format type","format",e),e===k.json){var t={type:"tuple"===this.baseType?"tuple":this.type,name:this.name||void 0};return"boolean"==typeof this.indexed&&(t.indexed=this.indexed),this.components&&(t.components=this.components.map((function(t){return JSON.parse(t.format(e))}))),JSON.stringify(t)}var n="";return"array"===this.baseType?(n+=this.arrayChildren.format(e),n+="["+(this.arrayLength<0?"":String(this.arrayLength))+"]"):"tuple"===this.baseType?(e!==k.sighash&&(n+=this.type),n+="("+this.components.map((function(t){return t.format(e)})).join(e===k.full?", ":",")+")"):n+=this.type,e!==k.sighash&&(!0===this.indexed&&(n+=" indexed"),e===k.full&&this.name&&(n+=" "+this.name)),n}}],[{key:"from",value:function(t,n){return"string"==typeof t?e.fromString(t,n):e.fromObject(t)}},{key:"fromObject",value:function(t){return e.isParamType(t)?t:new e(y,{name:t.name||null,type:D(t.type),indexed:null==t.indexed?null:!!t.indexed,components:t.components?t.components.map(e.fromObject):null})}},{key:"fromString",value:function(t,n){return function(t){return e.fromObject({name:t.name,type:t.type,indexed:t.indexed,components:t.components})}(function(e,t){var n=e;function r(t){h.throwArgumentError("unexpected character at position ".concat(t),"param",e)}function o(e){var n={type:"",name:"",parent:e,state:{allowType:!0}};return t&&(n.indexed=!1),n}e=e.replace(/\s/g," ");for(var a={type:"",name:"",state:{allowType:!0}},i=a,u=0;u2&&h.throwArgumentError("invalid human-readable ABI signature","value",e),n[1].match(/^[0-9]+$/)||h.throwArgumentError("invalid human-readable ABI signature gas","value",e),t.gas=s.BigNumber.from(n[1]),n[0]):e}function E(e,t){t.constant=!1,t.payable=!1,t.stateMutability="nonpayable",e.split(" ").forEach((function(e){switch(e.trim()){case"constant":t.constant=!0;break;case"payable":t.payable=!0,t.stateMutability="payable";break;case"nonpayable":t.payable=!1,t.stateMutability="nonpayable";break;case"pure":t.constant=!0,t.stateMutability="pure";break;case"view":t.constant=!0,t.stateMutability="view";break;case"external":case"public":case"":break;default:console.log("unknown modifier: "+e)}}))}function P(e){var t={constant:!1,payable:!0,stateMutability:"payable"};return null!=e.stateMutability?(t.stateMutability=e.stateMutability,t.constant="view"===t.stateMutability||"pure"===t.stateMutability,null!=e.constant&&!!e.constant!==t.constant&&h.throwArgumentError("cannot have constant function with mutability "+t.stateMutability,"value",e),t.payable="payable"===t.stateMutability,null!=e.payable&&!!e.payable!==t.payable&&h.throwArgumentError("cannot have payable function with mutability "+t.stateMutability,"value",e)):null!=e.payable?(t.payable=!!e.payable,null!=e.constant||t.payable||"constructor"===e.type||h.throwArgumentError("unable to determine stateMutability","value",e),t.constant=!!e.constant,t.constant?t.stateMutability="view":t.stateMutability=t.payable?"payable":"nonpayable",t.payable&&t.constant&&h.throwArgumentError("cannot have constant payable function","value",e)):null!=e.constant?(t.constant=!!e.constant,t.payable=!t.constant,t.stateMutability=t.constant?"view":"payable"):"constructor"!==e.type&&h.throwArgumentError("unable to determine stateMutability","value",e),t}t.EventFragment=T;var S=function(e){(0,o.default)(n,e);var t=p(n);function n(){return(0,u.default)(this,n),t.apply(this,arguments)}return(0,c.default)(n,[{key:"format",value:function(e){if(e||(e=k.sighash),k[e]||h.throwArgumentError("invalid format type","format",e),e===k.json)return JSON.stringify({type:"constructor",stateMutability:"nonpayable"!==this.stateMutability?this.stateMutability:void 0,payble:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map((function(t){return JSON.parse(t.format(e))}))});e===k.sighash&&h.throwError("cannot format a constructor for sighash",f.Logger.errors.UNSUPPORTED_OPERATION,{operation:"format(sighash)"});var t="constructor("+this.inputs.map((function(t){return t.format(e)})).join(e===k.full?", ":",")+") ";return this.stateMutability&&"nonpayable"!==this.stateMutability&&(t+=this.stateMutability+" "),t.trim()}}],[{key:"from",value:function(e){return"string"==typeof e?n.fromString(e):n.fromObject(e)}},{key:"fromObject",value:function(e){if(n.isConstructorFragment(e))return e;"constructor"!==e.type&&h.throwArgumentError("invalid constructor object","value",e);var t=P(e);t.constant&&h.throwArgumentError("constructor cannot be constant","value",e);var r={name:null,type:e.type,inputs:e.inputs?e.inputs.map(w.fromObject):[],payable:t.payable,stateMutability:t.stateMutability,gas:e.gas?s.BigNumber.from(e.gas):null};return new n(y,r)}},{key:"fromString",value:function(e){var t={type:"constructor"},r=(e=O(e,t)).match(B);return r&&"constructor"===r[1].trim()||h.throwArgumentError("invalid constructor string","value",e),t.inputs=I(r[2].trim(),!1),E(r[3].trim(),t),n.fromObject(t)}},{key:"isConstructorFragment",value:function(e){return e&&e._isFragment&&"constructor"===e.type}}]),n}(A);t.ConstructorFragment=S;var R=function(e){(0,o.default)(n,e);var t=p(n);function n(){return(0,u.default)(this,n),t.apply(this,arguments)}return(0,c.default)(n,[{key:"format",value:function(e){if(e||(e=k.sighash),k[e]||h.throwArgumentError("invalid format type","format",e),e===k.json)return JSON.stringify({type:"function",name:this.name,constant:this.constant,stateMutability:"nonpayable"!==this.stateMutability?this.stateMutability:void 0,payble:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map((function(t){return JSON.parse(t.format(e))})),ouputs:this.outputs.map((function(t){return JSON.parse(t.format(e))}))});var t="";return e!==k.sighash&&(t+="function "),t+=this.name+"("+this.inputs.map((function(t){return t.format(e)})).join(e===k.full?", ":",")+") ",e!==k.sighash&&(this.stateMutability?"nonpayable"!==this.stateMutability&&(t+=this.stateMutability+" "):this.constant&&(t+="view "),this.outputs&&this.outputs.length&&(t+="returns ("+this.outputs.map((function(t){return t.format(e)})).join(", ")+") "),null!=this.gas&&(t+="@"+this.gas.toString()+" ")),t.trim()}}],[{key:"from",value:function(e){return"string"==typeof e?n.fromString(e):n.fromObject(e)}},{key:"fromObject",value:function(e){if(n.isFunctionFragment(e))return e;"function"!==e.type&&h.throwArgumentError("invalid function object","value",e);var t=P(e),r={type:e.type,name:N(e.name),constant:t.constant,inputs:e.inputs?e.inputs.map(w.fromObject):[],outputs:e.outputs?e.outputs.map(w.fromObject):[],payable:t.payable,stateMutability:t.stateMutability,gas:e.gas?s.BigNumber.from(e.gas):null};return new n(y,r)}},{key:"fromString",value:function(e){var t={type:"function"},r=(e=O(e,t)).split(" returns ");r.length>2&&h.throwArgumentError("invalid function string","value",e);var o=r[0].match(B);if(o||h.throwArgumentError("invalid function signature","value",e),t.name=o[1].trim(),t.name&&N(t.name),t.inputs=I(o[2],!1),E(o[3].trim(),t),r.length>1){var a=r[1].match(B);""==a[1].trim()&&""==a[3].trim()||h.throwArgumentError("unexpected tokens","value",e),t.outputs=I(a[2],!1)}else t.outputs=[];return n.fromObject(t)}},{key:"isFunctionFragment",value:function(e){return e&&e._isFragment&&"function"===e.type}}]),n}(S);function D(e){return e.match(/^uint($|[^1-9])/)?e="uint256"+e.substring(4):e.match(/^int($|[^1-9])/)&&(e="int256"+e.substring(3)),e}t.FunctionFragment=R;var C=new RegExp("^[A-Za-z_][A-Za-z0-9_]*$");function N(e){return e&&e.match(C)||h.throwArgumentError('invalid identifier "'.concat(e,'"'),"value",e),e}var B=new RegExp("^([^)(]*)\\((.*)\\)([^)(]*)$")},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ErrorReason=t.Utf8ErrorFuncs=t.UnicodeNormalizationForm=void 0,t._toEscapedUtf8String=function(e,t){return'"'+f(e,t).map((function(e){if(e<256){switch(e){case 8:return"\\b";case 9:return"\\t";case 10:return"\\n";case 13:return"\\r";case 34:return'\\"';case 92:return"\\\\"}if(e>=32&&e<127)return String.fromCharCode(e)}return e<=65535?p(e):p(55296+((e-=65536)>>10&1023))+p(56320+(1023&e))})).join("")+'"'},t._toUtf8String=h,t.toUtf8Bytes=d,t.toUtf8CodePoints=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.current;return f(d(e,t))},t.toUtf8String=function(e,t){return h(f(e,t))};var r,o,a=n(47),i=n(49),u=n(1185),c=new i.Logger(u.version);function s(e,t,n,r,a){if(e===o.BAD_PREFIX||e===o.UNEXPECTED_CONTINUE){for(var i=0,u=t+1;u>6==2;u++)i++;return i}return e===o.OVERRUN?n.length-t-1:0}t.UnicodeNormalizationForm=r,function(e){e.current="",e.NFC="NFC",e.NFD="NFD",e.NFKC="NFKC",e.NFKD="NFKD"}(r||(t.UnicodeNormalizationForm=r={})),t.Utf8ErrorReason=o,function(e){e.UNEXPECTED_CONTINUE="unexpected continuation byte",e.BAD_PREFIX="bad codepoint prefix",e.OVERRUN="string overrun",e.MISSING_CONTINUE="missing continuation byte",e.OUT_OF_RANGE="out of UTF-8 range",e.UTF16_SURROGATE="UTF-16 surrogate",e.OVERLONG="overlong representation"}(o||(t.Utf8ErrorReason=o={}));var l=Object.freeze({error:function(e,t,n,r,o){return c.throwArgumentError("invalid codepoint at offset ".concat(t,"; ").concat(e),"bytes",n)},ignore:s,replace:function(e,t,n,r,a){return e===o.OVERLONG?(r.push(a),0):(r.push(65533),s(e,t,n))}});function f(e,t){null==t&&(t=l.error),e=(0,a.arrayify)(e);for(var n=[],r=0;r>7!=0){var u=null,c=null;if(192==(224&i))u=1,c=127;else if(224==(240&i))u=2,c=2047;else{if(240!=(248&i)){r+=t(128==(192&i)?o.UNEXPECTED_CONTINUE:o.BAD_PREFIX,r-1,e,n);continue}u=3,c=65535}if(r-1+u>=e.length)r+=t(o.OVERRUN,r-1,e,n);else{for(var s=i&(1<<8-u-1)-1,f=0;f1114111?r+=t(o.OUT_OF_RANGE,r-1-u,e,n,s):s>=55296&&s<=57343?r+=t(o.UTF16_SURROGATE,r-1-u,e,n,s):s<=c?r+=t(o.OVERLONG,r-1-u,e,n,s):n.push(s))}}else n.push(i)}return n}function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.current;t!=r.current&&(c.checkNormalize(),e=e.normalize(t));for(var n=[],o=0;o>6|192),n.push(63&i|128);else if(55296==(64512&i)){o++;var u=e.charCodeAt(o);if(o>=e.length||56320!=(64512&u))throw new Error("invalid utf-8 string");var s=65536+((1023&i)<<10)+(1023&u);n.push(s>>18|240),n.push(s>>12&63|128),n.push(s>>6&63|128),n.push(63&s|128)}else n.push(i>>12|224),n.push(i>>6&63|128),n.push(63&i|128)}return(0,a.arrayify)(n)}function p(e){var t="0000"+e.toString(16);return"\\u"+t.substring(t.length-4)}function h(e){return e.map((function(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10&1023),56320+(1023&e)))})).join("")}t.Utf8ErrorFuncs=l},function(e,t,n){"use strict";e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0});var o={Client:!0};Object.defineProperty(t,"Client",{enumerable:!0,get:function(){return i.default}});var a=n(576);Object.keys(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||e in t&&t[e]===a[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return a[e]}}))}));var i=r(n(714))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=r(n(305)),p=r(n(85)),h=r(n(135)),y=r(n(234)),b=r(n(312)),m=r(n(320)),v=n(612),g=n(613),k=A(n(96)),_=A(n(311)),w=A(n(616));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:"";return(0,v.createKeystore)(this.toBytesRaw(),e)}}],[{key:"generateED25519",value:function(){return new O(y.default.generate())}},{key:"generateECDSA",value:function(){return new O(b.default.generate())}},{key:"generate",value:function(){return O.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",O.generateED25519Async());case 1:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=O,e.next=3,y.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=O,e.next=3,b.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){try{return new O(y.default.fromBytes(e))}catch(e){}try{return new O(b.default.fromBytes(e))}catch(e){}throw new p.default("invalid private key length: ".concat(e.length," bytes"))}},{key:"fromBytesECDSA",value:function(e){return new O(b.default.fromBytes(e))}},{key:"fromBytesED25519",value:function(e){return new O(y.default.fromBytes(e))}},{key:"fromString",value:function(e){return O.fromBytes(k.decode(e))}},{key:"fromStringECDSA",value:function(e){return O.fromBytesECDSA(k.decode(e))}},{key:"fromStringED25519",value:function(e){return O.fromBytesED25519(k.decode(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"","string"!=typeof t){e.next=7;break}return e.next=4,d.default.fromString(t);case 4:e.t0=e.sent,e.next=8;break;case 7:e.t0=t;case 8:return e.abrupt("return",e.t0.toPrivateKey(n));case 9:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=O,e.next=4,(0,v.loadKeystore)(t,n);case 4:return e.t1=e.sent,e.abrupt("return",e.t0.fromBytes.call(e.t0,e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:"",e.next=3,(0,g.read)(t,n);case 3:if(!((r=e.sent)instanceof y.default||r instanceof b.default)){e.next=6;break}return e.abrupt("return",new O(r));case 6:return e.abrupt("return",O.fromBytes(r));case 7:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),O}(h.default);t.default=P},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(11)),u=r(n(42)),c=r(n(8)),s=r(n(1)),l=r(n(2)),f=r(n(304)),d=r(n(234)),p=r(n(309)),h=r(n(236)),y=r(n(588)),b=r(n(589)),m=r(n(181)),v=T(n(310)),g=T(n(182)),k=T(n(160)),_=T(n(311)),w=T(n(590)),I=T(n(235));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var O=function(){function e(t){var n=t.words,r=t.legacy;(0,s.default)(this,e),this.words=n,this._isLegacy=r}var t,n,r,o,v,A,T;return(0,l.default)(e,[{key:"toPrivateKey",value:(T=(0,c.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",!this._isLegacy){e.next=5;break}if(!(t.length>0)){e.next=4;break}throw new Error("legacy 22-word mnemonics do not support passphrases");case 4:return e.abrupt("return",this.toLegacyPrivateKey());case 5:return e.next=7,this._toPrivateKey(t);case 7:return e.abrupt("return",e.sent);case 8:case"end":return e.stop()}}),e,this)}))),function(){return T.apply(this,arguments)})},{key:"_validate",value:(A=(0,c.default)(a.default.mark((function e(){var t,n,r,o,c,s,l,f,d,m,v,g,k;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._isLegacy){e.next=12;break}if(22===this.words.length){e.next=3;break}throw new p.default(this,h.default.BadLength,[]);case 3:if(!((t=this.words.reduce((function(e,t,n){return y.default.includes(t.toLowerCase())?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=6;break}throw new p.default(this,h.default.UnknownWords,t);case 6:if(n=w.legacy1(this.words,y.default),r=(0,i.default)(n,2),o=r[0],c=r[1],s=w.crc8(o),c===s){e.next=10;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 10:e.next=28;break;case 12:if(12===this.words.length||24===this.words.length){e.next=14;break}throw new p.default(this,h.default.BadLength,[]);case 14:if(!((l=this.words.reduce((function(e,t,n){return b.default.includes(t)?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=17;break}throw new p.default(this,h.default.UnknownWords,l);case 17:return f=this.words.map((function(e){return b.default.indexOf(e).toString(2).padStart(11,"0")})).join(""),d=32*Math.floor(f.length/33),m=f.slice(0,d),v=f.slice(d),g=m.match(/(.{1,8})/g),k=g.map(E),e.next=25,S(Uint8Array.from(k));case 25:if(e.sent===v){e.next=28;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 28:return e.abrupt("return",this);case 29:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"_toPrivateKey",value:(v=(0,c.default)(a.default.mark((function e(){var t,n,r,o,i,u,c,s,l,p,h,y,b=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=b.length>0&&void 0!==b[0]?b[0]:"",n=this.words.join(" "),r="mnemonic".concat(t),e.next=5,g.deriveKey(k.HashAlgorithm.Sha512,n,r,2048,64);case 5:return o=e.sent,e.next=8,k.hash(k.HashAlgorithm.Sha512,"ed25519 seed",o);case 8:i=e.sent,u=i.subarray(0,32),c=i.subarray(32),s=0,l=[44,3030,0,0];case 12:if(!(se.length)&&(t=e.length);for(var n=0,r=new Array(t);n>8,i=255&o;a?n.push(a,i):n.push(i)}return n},r.zero2=o,r.toHex=a,r.encode=function(e,t){return"hex"===t?a(e):e}},function(e,t,n){"use strict";var r=t;r.base=n(183),r.short=n(595),r.mont=n(596),r.edwards=n(597)},function(e,t,n){"use strict";var r=n(77).rotr32;function o(e,t,n){return e&t^~e&n}function a(e,t,n){return e&t^e&n^t&n}function i(e,t,n){return e^t^n}t.ft_1=function(e,t,n,r){return 0===e?o(t,n,r):1===e||3===e?i(t,n,r):2===e?a(t,n,r):void 0},t.ch32=o,t.maj32=a,t.p32=i,t.s0_256=function(e){return r(e,2)^r(e,13)^r(e,22)},t.s1_256=function(e){return r(e,6)^r(e,11)^r(e,25)},t.g0_256=function(e){return r(e,7)^r(e,18)^e>>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(77),o=n(161),a=n(317),i=n(59),u=r.sum32,c=r.sum32_4,s=r.sum32_5,l=a.ch32,f=a.maj32,d=a.s0_256,p=a.s1_256,h=a.g0_256,y=a.g1_256,b=o.BlockHash,m=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function v(){if(!(this instanceof v))return new v;b.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=m,this.W=new Array(64)}r.inherits(v,b),e.exports=v,v.blockSize=512,v.outSize=256,v.hmacStrength=192,v.padLength=64,v.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){c=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(c)throw a}}}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n4)throw new Error("unsupported DER integer length of ".concat(t," bytes"));return n.getUint32(0,!1)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(180)),p=r(n(324)),h=r(n(86)),y=r(n(35)),b=r(n(97));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var g=function(e){(0,s.default)(g,e);var t,n,r,o,l,f,y,b,m=v(g);function g(e){var t;return(0,u.default)(this,g),(t=m.call(this))._key=e,t}return(0,c.default)(g,[{key:"derive",value:(b=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,this._key.derive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return b.apply(this,arguments)})},{key:"legacyDerive",value:(y=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,this._key.legacyDerive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"publicKey",get:function(){return new h.default(this._key.publicKey)}},{key:"sign",value:function(e){return this._key.sign(e)}},{key:"signTransaction",value:function(e){var t=e._signedTransactions.get(0),n=null!=t.bodyBytes?this.sign(t.bodyBytes):new Uint8Array;return e.addSignature(this.publicKey,n),n}},{key:"isDerivable",value:function(){return this._key.isDerivable()}},{key:"toBytes",value:function(){return this._key.toBytes()}},{key:"toBytesDer",value:function(){return this._key.toBytesDer()}},{key:"toBytesRaw",value:function(){return this._key.toBytesRaw()}},{key:"toString",value:function(){return this._key.toStringDer()}},{key:"toStringDer",value:function(){return this._key.toStringDer()}},{key:"toStringRaw",value:function(){return this._key.toStringRaw()}},{key:"toKeystore",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._key.toKeystore(e)}},{key:"_toProtobufKey",value:function(){return this.publicKey._toProtobufKey()}},{key:"toAccountId",value:function(e,t){return this.publicKey.toAccountId(e,t)}}],[{key:"generateED25519",value:function(){return new g(d.PrivateKey.generateED25519())}},{key:"generateECDSA",value:function(){return new g(d.PrivateKey.generateECDSA())}},{key:"generate",value:function(){return g.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,d.PrivateKey.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,d.PrivateKey.generateED25519Async();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,d.PrivateKey.generateECDSAAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){return new g(d.PrivateKey.fromBytes(e))}},{key:"fromBytesECDSA",value:function(e){return new g(d.PrivateKey.fromBytesECDSA(e))}},{key:"fromBytesED25519",value:function(e){return new g(d.PrivateKey.fromBytesED25519(e))}},{key:"fromString",value:function(e){return new g(d.PrivateKey.fromString(e))}},{key:"fromStringECDSA",value:function(e){return new g(d.PrivateKey.fromStringECDSA(e))}},{key:"fromStringED25519",value:function(e){return new g(d.PrivateKey.fromStringED25519(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"",!(t instanceof p.default)){e.next=7;break}return e.t0=g,e.next=5,d.PrivateKey.fromMnemonic(t._mnemonic,n);case 5:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 7:return e.t2=g,e.next=10,d.PrivateKey.fromMnemonic(t,n);case 10:return e.t3=e.sent,e.abrupt("return",new e.t2(e.t3));case 12:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=g,e.next=4,d.PrivateKey.fromKeystore(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=g,e.next=4,d.PrivateKey.fromPem(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),g}(y.default);t.default=g,b.default.privateKeyConstructor=function(e){return new g(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(180)),l=r(n(97));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}var d=function(){function e(t){(0,u.default)(this,e),this._mnemonic=t}var t,n,r,o,f,d;return(0,c.default)(e,[{key:"toPrivateKey",value:(d=(0,i.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",null!=l.default.privateKeyConstructor){e.next=3;break}throw new Error("`PrivateKey` has not been loaded");case 3:return e.t0=l.default,e.next=6,this._mnemonic.toPrivateKey(t);case 6:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 8:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"toLegacyPrivateKey",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=l.default.privateKeyConstructor){e.next=2;break}throw new Error("`PrivateKey` has not been loaded");case 2:return e.t0=l.default,e.next=5,this._mnemonic.toLegacyPrivateKey();case 5:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 7:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"toString",value:function(){return this._mnemonic.toString()}}],[{key:"generate",value:(o=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(24);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return o.apply(this,arguments)})},{key:"generate12",value:(r=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(12);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return r.apply(this,arguments)})},{key:"fromWords",value:(n=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromWords(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return n.apply(this,arguments)})},{key:"fromString",value:(t=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromString(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(4);e.exports=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=r(e)););return e},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(107)),u=function(){function e(t,n,r){(0,o.default)(this,e),this._name=t,this._symbol=n,this._tinybar=r,Object.freeze(this)}return(0,a.default)(e,null,[{key:"fromString",value:function(t){switch(t){case e.Hbar._symbol:return e.Hbar;case e.Tinybar._symbol:return e.Tinybar;case e.Microbar._symbol:return e.Microbar;case e.Millibar._symbol:return e.Millibar;case e.Kilobar._symbol:return e.Kilobar;case e.Megabar._symbol:return e.Megabar;case e.Gigabar._symbol:return e.Gigabar;default:throw new Error("Unknown unit.")}}}]),e}();t.default=u,u.Tinybar=new u("tinybar","tℏ",new i.default(1)),u.Microbar=new u("microbar","μℏ",new i.default(100)),u.Millibar=new u("millibar","mℏ",new i.default(1e5)),u.Hbar=new u("hbar","ℏ",new i.default("100000000")),u.Kilobar=new u("kilobar","kℏ",new i.default(1e3).multipliedBy(new i.default("100000000"))),u.Megabar=new u("megabar","Mℏ",new i.default(1e6).multipliedBy(new i.default("100000000"))),u.Gigabar=new u("gigabar","Gℏ",new i.default("1000000000").multipliedBy(new i.default("100000000")))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(7)),a=r(n(8)),i=r(n(1)),u=r(n(2)),c=r(n(185)),s=r(n(110)),l=r(n(328)),f=r(n(334)),d=function(){function e(t){(0,i.default)(this,e),this.nodeId=t.nodeId,this.transactionHash=t.transactionHash,this.transactionId=t.transactionId,Object.freeze(this)}var t,n;return(0,u.default)(e,[{key:"getReceipt",value:(n=(0,a.default)(o.default.mark((function e(t){var n;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(new l.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t);case 2:if((n=e.sent).status===s.default.Success){e.next=5;break}throw new c.default({transactionReceipt:n,status:n.status,transactionId:this.transactionId});case 5:return e.abrupt("return",n);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"getRecord",value:(t=(0,a.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getReceipt(t);case 2:return e.abrupt("return",(new f.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),f=r(n(110)),d=r(n(187)),p=r(n(61)),h=r(n(162)),y=r(n(185)),b=n(112),m=n(30);function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeDuplicates",value:function(e){return this._includeDuplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._includeDuplicates&&this._includeDuplicates}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:m.ResponseCodeEnum.OK);switch(r){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return b.ExecutionState.Retry;case f.default.Ok:break;default:return b.ExecutionState.Error}var o=t.transactionGetReceipt.receipt.status;switch(r=f.default._fromCode(o)){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return b.ExecutionState.Retry;case f.default.Success:return b.ExecutionState.Finished;default:return b.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:m.ResponseCodeEnum.OK);switch(r){case f.default.Ok:break;default:return new h.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetReceipt,a=o.receipt.status;return r=f.default._fromCode(a),new y.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf(o)})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTransactionReceipts(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetReceipt.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetReceipt;return Promise.resolve(d.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetReceipt:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeDuplicates:this._includeDuplicates,includeChildReceipts:this._includeChildren}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetReceipt;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0,includeChildren:null!=t.includeChildReceipts?t.includeChildReceipts:void 0})}}]),n}(l.default);t.default=k,l.QUERY_REGISTRY.set("transactionGetReceipt",k._fromProtobuf)},function(e,t,n){"use strict";e.exports=n(621)},function(e,t,n){"use strict";e.exports=f;var r,o=n(111),a=o.LongBits,i=o.base64,u=o.utf8;function c(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}function s(){}function l(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}function f(){this.len=0,this.head=new c(s,0,0),this.tail=this.head,this.states=null}var d=function(){return o.Buffer?function(){return(f.create=function(){return new r})()}:function(){return new f}};function p(e,t,n){t[n]=255&e}function h(e,t){this.len=e,this.next=void 0,this.val=t}function y(e,t,n){for(;e.hi;)t[n++]=127&e.lo|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[n++]=127&e.lo|128,e.lo=e.lo>>>7;t[n++]=e.lo}function b(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}f.create=d(),f.alloc=function(e){return new o.Array(e)},o.Array!==Array&&(f.alloc=o.pool(f.alloc,o.Array.prototype.subarray)),f.prototype._push=function(e,t,n){return this.tail=this.tail.next=new c(e,t,n),this.len+=t,this},h.prototype=Object.create(c.prototype),h.prototype.fn=function(e,t,n){for(;e>127;)t[n++]=127&e|128,e>>>=7;t[n]=e},f.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new h((e>>>=0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this},f.prototype.int32=function(e){return e<0?this._push(y,10,a.fromNumber(e)):this.uint32(e)},f.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)},f.prototype.uint64=function(e){var t=a.from(e);return this._push(y,t.length(),t)},f.prototype.int64=f.prototype.uint64,f.prototype.sint64=function(e){var t=a.from(e).zzEncode();return this._push(y,t.length(),t)},f.prototype.bool=function(e){return this._push(p,1,e?1:0)},f.prototype.fixed32=function(e){return this._push(b,4,e>>>0)},f.prototype.sfixed32=f.prototype.fixed32,f.prototype.fixed64=function(e){var t=a.from(e);return this._push(b,4,t.lo)._push(b,4,t.hi)},f.prototype.sfixed64=f.prototype.fixed64,f.prototype.float=function(e){return this._push(o.float.writeFloatLE,4,e)},f.prototype.double=function(e){return this._push(o.float.writeDoubleLE,8,e)};var m=o.Array.prototype.set?function(e,t,n){t.set(e,n)}:function(e,t,n){for(var r=0;r>>0;if(!t)return this._push(p,1,0);if(o.isString(e)){var n=f.alloc(t=i.length(e));i.decode(e,n,0),e=n}return this.uint32(t)._push(m,t,e)},f.prototype.string=function(e){var t=u.length(e);return t?this.uint32(t)._push(u.write,t,e):this._push(p,1,0)},f.prototype.fork=function(){return this.states=new l(this),this.head=this.tail=new c(s,0,0),this.len=0,this},f.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new c(s,0,0),this.len=0),this},f.prototype.ldelim=function(){var e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=t,this.len+=n),this},f.prototype.finish=function(){for(var e=this.head.next,t=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t},f._configure=function(e){r=e,f.create=d(),r._configure()}},function(e,t,n){"use strict";e.exports=c;var r,o=n(111),a=o.LongBits,i=o.utf8;function u(e,t){return RangeError("index out of range: "+e.pos+" + "+(t||1)+" > "+e.len)}function c(e){this.buf=e,this.pos=0,this.len=e.length}var s,l="undefined"!=typeof Uint8Array?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new c(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new c(e);throw Error("illegal buffer")},f=function(){return o.Buffer?function(e){return(c.create=function(e){return o.Buffer.isBuffer(e)?new r(e):l(e)})(e)}:l};function d(){var e=new a(0,0),t=0;if(!(this.len-this.pos>4)){for(;t<3;++t){if(this.pos>=this.len)throw u(this);if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(127&this.buf[this.pos++])<<7*t)>>>0,e}for(;t<4;++t)if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(127&this.buf[this.pos])<<28)>>>0,e.hi=(e.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return e;if(t=0,this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw u(this);if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}function p(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}function h(){if(this.pos+8>this.len)throw u(this,8);return new a(p(this.buf,this.pos+=4),p(this.buf,this.pos+=4))}c.create=f(),c.prototype._slice=o.Array.prototype.subarray||o.Array.prototype.slice,c.prototype.uint32=(s=4294967295,function(){if(s=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return s;if((this.pos+=5)>this.len)throw this.pos=this.len,u(this,10);return s}),c.prototype.int32=function(){return 0|this.uint32()},c.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(1&e)|0},c.prototype.bool=function(){return 0!==this.uint32()},c.prototype.fixed32=function(){if(this.pos+4>this.len)throw u(this,4);return p(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw u(this,4);return 0|p(this.buf,this.pos+=4)},c.prototype.float=function(){if(this.pos+4>this.len)throw u(this,4);var e=o.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e},c.prototype.double=function(){if(this.pos+8>this.len)throw u(this,4);var e=o.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e},c.prototype.bytes=function(){var e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw u(this,e);return this.pos+=e,Array.isArray(this.buf)?this.buf.slice(t,n):t===n?new this.buf.constructor(0):this._slice.call(this.buf,t,n)},c.prototype.string=function(){var e=this.bytes();return i.read(e,0,e.length)},c.prototype.skip=function(e){if("number"==typeof e){if(this.pos+e>this.len)throw u(this,e);this.pos+=e}else do{if(this.pos>=this.len)throw u(this)}while(128&this.buf[this.pos++]);return this},c.prototype.skipType=function(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(e=7&this.uint32());)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+e+" at offset "+this.pos)}return this},c._configure=function(e){r=e,c.create=f(),r._configure();var t=o.Long?"toLong":"toNumber";o.merge(c.prototype,{int64:function(){return d.call(this)[t](!1)},uint64:function(){return d.call(this)[t](!0)},sint64:function(){return d.call(this).zzDecode()[t](!1)},fixed64:function(){return h.call(this)[t](!0)},sfixed64:function(){return h.call(this)[t](!1)}})}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.Ok:return"OK";case e.Cancelled:return"CANCELLED";case e.Unknown:return"UNKNOWN";case e.InvalidArgument:return"INVALID_ARGUMENT";case e.DeadlineExceeded:return"DEADLINE_EXCEEDED";case e.NotFound:return"NOT_FOUND";case e.AlreadyExists:return"ALREADY_EXISTS";case e.PermissionDenied:return"PERMISSION_DENIED";case e.Unauthenticated:return"UNAUTHENTICATED";case e.ResourceExhausted:return"RESOURCE_EXHAUSTED";case e.FailedPrecondition:return"FAILED_PRECONDITION";case e.Aborted:return"ABORTED";case e.OutOfRange:return"OUT_OF_RANGE";case e.Unimplemented:return"UNIMPLEMENTED";case e.Internal:return"INTERNAL";case e.Unavailable:return"UNAVAILABLE";case e.DataLoss:return"DATA_LOSS";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromValue",value:function(t){switch(t){case 0:return e.Ok;case 1:return e.Cancelled;case 2:return e.Unknown;case 3:return e.InvalidArgument;case 4:return e.DeadlineExceeded;case 5:return e.NotFound;case 6:return e.AlreadyExists;case 7:return e.PermissionDenied;case 16:return e.Unauthenticated;case 8:return e.ResourceExhausted;case 9:return e.FailedPrecondition;case 10:return e.Aborted;case 11:return e.OutOfRange;case 12:return e.Unimplemented;case 13:return e.Internal;case 14:return e.Unavailable;case 15:return e.DataLoss;default:throw new Error("(BUG) non-exhaustive GrpcStatus switch statement")}}}]),e}();t.default=i,i.Ok=new i(0),i.Cancelled=new i(1),i.Unknown=new i(2),i.InvalidArgument=new i(3),i.DeadlineExceeded=new i(4),i.NotFound=new i(5),i.AlreadyExists=new i(6),i.PermissionDenied=new i(7),i.Unauthenticated=new i(16),i.ResourceExhausted=new i(8),i.FailedPrecondition=new i(9),i.Aborted=new i(10),i.OutOfRange=new i(11),i.Unimplemented=new i(12),i.Internal=new i(13),i.Unavailable=new i(14),i.DataLoss=new i(15)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(16)),u=function(){function e(t){(0,o.default)(this,e),this.hbars=t.hbars,this.cents=t.cents,this.expirationTime=t.expirationTime,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{hbarEquiv:this.hbars,centEquiv:this.cents,expirationTime:{seconds:i.default.fromNumber(this.expirationTime.getSeconds())}}}}],[{key:"_fromProtobuf",value:function(t){return new e({hbars:t.hbarEquiv,cents:t.centEquiv,expirationTime:new Date(null!=t.expirationTime&&null!=t.expirationTime.seconds?t.expirationTime.seconds instanceof i.default?t.expirationTime.seconds.toInt():t.expirationTime.seconds:0)})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),f=r(n(242)),d=r(n(187)),p=r(n(61)),h=r(n(110)),y=r(n(162)),b=r(n(185)),m=n(112),v=n(30);function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var _=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"setIncludeDuplicates",value:function(e){return this._duplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._duplicates&&this._duplicates}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return m.ExecutionState.Retry;case h.default.Ok:break;default:return m.ExecutionState.Error}var o=t.transactionGetRecord;if(o.header.responseType===v.ResponseType.COST_ANSWER)return m.ExecutionState.Finished;var a=o.transactionRecord.receipt.status;switch(r=h.default._fromCode(a)){case h.default.Ok:case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return m.ExecutionState.Retry;case h.default.Success:return m.ExecutionState.Finished;default:return m.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Ok:break;default:return new y.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetRecord.transactionRecord.receipt,a=o.status;return r=h.default._fromCode(a),new b.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf({receipt:o})})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTxRecordByTxID(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetRecord.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetRecord;return Promise.resolve(f.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetRecord:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeChildRecords:this._includeChildren,includeDuplicates:this._includeDuplicates}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetRecord;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeChildren:null!=t.includeChildRecords?t.includeChildRecords:void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0})}}]),n}(l.default);t.default=_,l.QUERY_REGISTRY.set("transactionGetRecord",_._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(48)),u=function(){function e(t){(0,o.default)(this,e),this.contractId=t.contractId,this.bloom=t.bloom,this.topics=t.topics,this.data=t.data,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),bloom:this.bloom,topic:this.topics,data:this.data}}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:i.default._fromProtobuf(t.contractID),bloom:null!=t.bloom?t.bloom:new Uint8Array,topics:null!=t.topic?t.topic:[],data:null!=t.data?t.data:new Uint8Array})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=r(n(9)),d=r(n(337));function p(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return h(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return h(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId),this._amount,null!=t.amount&&this.setAmount(t.amount),this._payerAccountIds,null!=t.payerAccountIds&&this.setPayerAccountIds(t.payerAccountIds)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?u.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?i.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?c.default.fromNumber(e):e,this}},{key:"payerAccountIds",get:function(){return this._payerAccountIds}},{key:"setPayerAccountIds",value:function(e){return this._payerAccountIds=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,amount:this._amount,effectivePayerAccountId:null!=this._payerAccountIds?this._payerAccountIds.map((function(e){return e._toProtobuf()})):null}}}],[{key:"_fromProtobuf",value:function(t){return new e({feeCollectorAccountId:null!=t.feeCollectorAccountId?u.default._fromProtobuf(t.feeCollectorAccountId):void 0,tokenId:null!=t.tokenId?i.default._fromProtobuf(t.tokenId):void 0,amount:null!=t.amount?t.amount:void 0,payerAccountIds:null!=t.effectivePayerAccountId?t.effectivePayerAccountId.map((function(e){return u.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(16)),u=r(n(9)),c=r(n(23));function s(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._contractId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoGetBalance(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptogetAccountBalance.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptogetAccountBalance;return Promise.resolve(p.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{cryptogetAccountBalance:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptogetAccountBalance;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,contractId:null!=t.contractID?d.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=b,l.QUERY_REGISTRY.set("cryptogetAccountBalance",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(9)),c=r(n(245)),s=r(n(26)),l=r(n(36)),f=r(n(16)),d=r(n(345)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30)),h=r(n(52)),y=r(n(35)),b=r(n(86)),m=r(n(78)),v=r(n(188)),g=r(n(189)),k=r(n(190));function _(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(_=function(e){return e?n:t})(e)}var w=function(){function e(t){(0,a.default)(this,e),this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.isDeleted=t.isDeleted,this.proxyAccountId=t.proxyAccountId,this.proxyReceived=t.proxyReceived,this.key=t.key,this.balance=t.balance,this.sendRecordThreshold=t.sendRecordThreshold,this.receiveRecordThreshold=t.receiveRecordThreshold,this.isReceiverSignatureRequired=t.isReceiverSignatureRequired,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.liveHashes=t.liveHashes,this.tokenRelationships=t.tokenRelationships,this.accountMemo=t.accountMemo,this.ownedNfts=t.ownedNfts,this.maxAutomaticTokenAssociations=t.maxAutomaticTokenAssociations,this.aliasKey=t.aliasKey,this.ledgerId=t.ledgerId,this.hbarAllowances=t.hbarAllowances,this.tokenAllowances=t.tokenAllowances,this.nftAllowances=t.nftAllowances,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,deleted:this.isDeleted,proxyAccountID:null!=this.proxyAccountId?this.proxyAccountId._toProtobuf():null,proxyReceived:this.proxyReceived.toTinybars(),key:this.key._toProtobufKey(),balance:this.balance.toTinybars(),generateSendRecordThreshold:this.sendRecordThreshold.toTinybars(),generateReceiveRecordThreshold:this.receiveRecordThreshold.toTinybars(),receiverSigRequired:this.isReceiverSignatureRequired,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:this.autoRenewPeriod._toProtobuf(),liveHashes:this.liveHashes.map((function(e){return e._toProtobuf()})),tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,memo:this.accountMemo,ownedNfts:this.ownedNfts,maxAutomaticTokenAssociations:this.maxAutomaticTokenAssociations.toInt(),alias:null!=this.aliasKey?p.Key.encode(this.aliasKey._toProtobufKey()).finish():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.CryptoGetInfoResponse.AccountInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=null!=t.alias&&t.alias.length>0?y.default._fromProtobufKey(p.Key.decode(t.alias)):null;return n instanceof b.default||(n=null),new e({accountId:u.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:null,isDeleted:null!=t.deleted&&t.deleted,key:y.default._fromProtobufKey(t.key),balance:s.default.fromTinybars(null!=t.balance?t.balance:0),sendRecordThreshold:s.default.fromTinybars(null!=t.generateSendRecordThreshold?t.generateSendRecordThreshold:0),receiveRecordThreshold:s.default.fromTinybars(null!=t.generateReceiveRecordThreshold?t.generateReceiveRecordThreshold:0),isReceiverSignatureRequired:null!=t.receiverSigRequired&&t.receiverSigRequired,expirationTime:l.default._fromProtobuf(t.expirationTime),autoRenewPeriod:null!=t.autoRenewPeriod?new h.default(t.autoRenewPeriod.seconds):new h.default(0),proxyAccountId:null!=t.proxyAccountID&&0!==f.default.fromValue(t.proxyAccountID.shardNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.realmNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.accountNum).toInt()?u.default._fromProtobuf(t.proxyAccountID):null,proxyReceived:s.default.fromTinybars(null!=t.proxyReceived?t.proxyReceived:0),liveHashes:(null!=t.liveHashes?t.liveHashes:[]).map((function(e){return c.default._fromProtobuf(e)})),tokenRelationships:d.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),accountMemo:null!=t.memo?t.memo:"",ownedNfts:t.ownedNfts?t.ownedNfts:f.default.ZERO,maxAutomaticTokenAssociations:t.maxAutomaticTokenAssociations?f.default.fromNumber(t.maxAutomaticTokenAssociations):f.default.ZERO,aliasKey:n,ledgerId:null!=t.ledgerId?m.default.fromBytes(t.ledgerId):null,hbarAllowances:(null!=t.cryptoAllowances?t.cryptoAllowances:[]).map((function(e){return v.default._fromProtobuf(e)})),tokenAllowances:(null!=t.tokenAllowances?t.tokenAllowances:[]).map((function(e){return g.default._fromProtobuf(e)})),nftAllowances:(null!=t.nftAllowances?t.nftAllowances:[]).map((function(e){return k.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.CryptoGetInfoResponse.AccountInfo.decode(t))}}]),e}();t.default=w},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=r(n(649));function d(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._publicKey=null,null!=t.publicKey&&this.setPublicKey(t.publicKey),this._nodeId=null,null!=t.nodeId&&this.setNodeId(t.nodeId),this._accountId=null,null!=t.accountId&&this.setAccountId(t.accountId),this._certHash=null,null!=t.certHash&&this.setCertHash(t.certHash),this._addresses=[],null!=t.addresses&&this.setAddresses(t.addresses),this._description=null,null!=t.description&&this.setDescription(t.description),this._stake=null,null!=t.stake&&this.setStake(t.stake)}return(0,i.default)(e,[{key:"publicKey",get:function(){return this._publicKey}},{key:"setPublicKey",value:function(e){return this._publicKey=e,this}},{key:"nodeId",get:function(){return this._nodeId}},{key:"setNodeId",value:function(e){return this._nodeId=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?u.default.fromString(e):e.clone(),this}},{key:"certHash",get:function(){return this._certHash}},{key:"setCertHash",value:function(e){return this._certHash=e,this}},{key:"addresses",get:function(){return this._addresses}},{key:"setAddresses",value:function(e){return this._addresses=e,this}},{key:"description",get:function(){return this._description}},{key:"setDescription",value:function(e){return this._description=e,this}},{key:"stake",get:function(){return this._stake}},{key:"setStake",value:function(e){return this._stake=e,this}},{key:"_toProtobuf",value:function(){return{RSA_PubKey:this._publicKey,nodeId:this._nodeId,nodeAccountId:null!=this._accountId?this._accountId._toProtobuf():null,nodeCertHash:this._certHash,serviceEndpoint:this._addresses.map((function(e){return e._toProtobuf()})),description:this._description,stake:this._stake}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{publicKey:this._publicKey,nodeId:null!=this._nodeId?this._nodeId.toString():null,accountId:null!=this._accountId?this._accountId.toString():null,certHash:null!=this._certHash?s.decode(this._certHash):null,addresses:this._addresses.map((function(e){return e.toJSON()})),description:this._description,stake:null!=this._stake?this._stake.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({publicKey:null!=t.RSA_PubKey?t.RSA_PubKey:void 0,nodeId:null!=t.nodeId?t.nodeId:void 0,accountId:null!=t.nodeAccountId?u.default._fromProtobuf(t.nodeAccountId):void 0,certHash:null!=t.nodeCertHash?t.nodeCertHash:void 0,addresses:null!=t.serviceEndpoint?t.serviceEndpoint.map((function(e){return c.default._fromProtobuf(e)})):void 0,description:null!=t.description?t.description:void 0,stake:null!=t.stake?t.stake:void 0})}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(347)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._nodeAddresses=[],null!=t.nodeAddresses&&this.setNodeAddresses(t.nodeAddresses)}return(0,a.default)(e,[{key:"nodeAddresses",get:function(){return this._nodeAddresses}},{key:"setNodeAddresses",value:function(e){return this._nodeAddresses=e,this}},{key:"_toProtobuf",value:function(){return{nodeAddress:this._nodeAddresses.map((function(e){return e._toProtobuf()}))}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{nodeAddresses:this._nodeAddresses.map((function(e){return e.toJSON()}))}}}],[{key:"_fromProtobuf",value:function(t){return new e({nodeAddresses:null!=t.nodeAddress?t.nodeAddress.map((function(e){return i.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.ArgumentType=void 0;var a=r(n(1)),i=r(n(2)),u=n(660),c=f(n(60)),s=f(n(88));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d={uint8:0,int8:1,uint16:2,int16:3,uint32:4,int32:5,uint64:6,int64:7,uint256:8,int256:9,string:10,bool:11,bytes:12,bytes32:13,address:14,func:15};t.ArgumentType=d;var p=function(){function e(t){(0,a.default)(this,e),this.name=null,this._params="",this._paramTypes=[],null!=t&&(this._name=t)}return(0,i.default)(e,[{key:"addString",value:function(){return this._addParam({ty:d.string,array:!1})}},{key:"addStringArray",value:function(){return this._addParam({ty:d.string,array:!0})}},{key:"addBytes",value:function(){return this._addParam({ty:d.bytes,array:!1})}},{key:"addBytes32",value:function(){return this._addParam({ty:d.bytes32,array:!1})}},{key:"addBytesArray",value:function(){return this._addParam({ty:d.bytes,array:!0})}},{key:"addBytes32Array",value:function(){return this._addParam({ty:d.bytes32,array:!0})}},{key:"addInt8",value:function(){return this._addParam({ty:d.int8,array:!1})}},{key:"addInt32",value:function(){return this._addParam({ty:d.int32,array:!1})}},{key:"addInt64",value:function(){return this._addParam({ty:d.int64,array:!1})}},{key:"addInt256",value:function(){return this._addParam({ty:d.int256,array:!1})}},{key:"addInt8Array",value:function(){return this._addParam({ty:d.int8,array:!0})}},{key:"addInt32Array",value:function(){return this._addParam({ty:d.int32,array:!0})}},{key:"addInt64Array",value:function(){return this._addParam({ty:d.int64,array:!0})}},{key:"addInt256Array",value:function(){return this._addParam({ty:d.int256,array:!0})}},{key:"addUint8",value:function(){return this._addParam({ty:d.uint8,array:!1})}},{key:"addUint32",value:function(){return this._addParam({ty:d.uint32,array:!1})}},{key:"addUint64",value:function(){return this._addParam({ty:d.uint64,array:!1})}},{key:"addUint256",value:function(){return this._addParam({ty:d.uint256,array:!1})}},{key:"addUint8Array",value:function(){return this._addParam({ty:d.uint8,array:!0})}},{key:"addUint32Array",value:function(){return this._addParam({ty:d.uint32,array:!0})}},{key:"addUint64Array",value:function(){return this._addParam({ty:d.uint64,array:!0})}},{key:"addUint256Array",value:function(){return this._addParam({ty:d.uint256,array:!0})}},{key:"addBool",value:function(){return this._addParam({ty:d.bool,array:!1})}},{key:"addAddress",value:function(){return this._addParam({ty:d.address,array:!1})}},{key:"addAddressArray",value:function(){return this._addParam({ty:d.address,array:!0})}},{key:"addFunction",value:function(){return this._addParam({ty:d.func,array:!1})}},{key:"_addParam",value:function(e){return this._paramTypes.length>0&&(this._params+=","),this._params+=function(e){var t="";switch(e.ty){case d.uint8:t="uint8";break;case d.int8:t="int8";break;case d.uint16:t="uint16";break;case d.int16:t="int16";break;case d.uint32:t="uint32";break;case d.int32:t="int32";break;case d.uint64:t="uint64";break;case d.int64:t="int64";break;case d.uint256:t="uint256";break;case d.int256:t="int256";break;case d.string:t="string";break;case d.bool:t="bool";break;case d.bytes:t="bytes";break;case d.bytes32:t="bytes32";break;case d.address:t="address";break;case d.func:t="function";break;default:t=""}e.array&&(t+="[]");return t}(e),this._paramTypes.push(e),this}},{key:"_build",value:function(e){if(null!=e)this._name=e;else if(null==this._name)throw new Error("`name` required for ContractFunctionSelector");var t=c.encode(s.encode(this.toString()));return c.decode((0,u.keccak256)("0x".concat(t))).slice(0,4)}},{key:"toString",value:function(){return"".concat(null!=this._name?this._name.toString():"","(").concat(this._params,")")}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(48)),c=r(n(9)),s=r(n(36)),l=r(n(52)),f=r(n(26)),d=r(n(16)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30)),h=r(n(345)),y=r(n(35)),b=r(n(78));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}var v=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.storage=t.storage,this.contractMemo=t.contractMemo,this.balance=t.balance,this.isDeleted=t.isDeleted,this.tokenRelationships=t.tokenRelationships,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,storage:this.storage,memo:this.contractMemo,balance:this.balance.toTinybars(),deleted:this.isDeleted,tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.ContractGetInfoResponse.ContractInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.autoRenewPeriod.seconds;return new e({contractId:u.default._fromProtobuf(t.contractID),accountId:c.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:"",adminKey:null!=t.adminKey?y.default._fromProtobufKey(t.adminKey):null,expirationTime:s.default._fromProtobuf(t.expirationTime),autoRenewPeriod:new l.default(n),storage:null!=t.storage?t.storage instanceof d.default?t.storage:d.default.fromValue(t.storage):d.default.ZERO,contractMemo:null!=t.memo?t.memo:"",balance:f.default.fromTinybars(null!=t.balance?t.balance:0),isDeleted:t.deleted,tokenRelationships:h.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),ledgerId:null!=t.ledgerId?b.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.ContractGetInfoResponse.ContractInfo.decode(t))}}]),e}();t.default=v},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(51)),c=r(n(36)),s=r(n(16)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30)),f=r(n(108)),d=r(n(78));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}var h=function(){function e(t){(0,a.default)(this,e),this.fileId=t.fileId,this.size=t.size,this.expirationTime=t.expirationTime,this.isDeleted=t.isDeleted,this.keys=t.keys,this.fileMemo=t.fileMemo,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{fileID:this.fileId._toProtobuf(),size:this.size,expirationTime:this.expirationTime._toProtobuf(),deleted:this.isDeleted,keys:this.keys._toProtobufKey().keyList,memo:this.fileMemo,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return l.FileGetInfoResponse.FileInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.size;return new e({fileId:u.default._fromProtobuf(t.fileID),size:n instanceof s.default?n:s.default.fromValue(n),expirationTime:c.default._fromProtobuf(t.expirationTime),isDeleted:t.deleted,keys:null!=t.keys?f.default.__fromProtobufKeyList(t.keys):new f.default,fileMemo:null!=t.memo?t.memo:"",ledgerId:null!=t.ledgerId?d.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.FileGetInfoResponse.FileInfo.decode(t))}}]),e}();t.default=h},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(353)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}var l=function(){function e(t){(0,a.default)(this,e),this.protobufVersion=t.protobufVersion,this.servicesVesion=t.servicesVesion,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{hapiProtoVersion:this.protobufVersion._toProtobuf(),hederaServicesVersion:this.servicesVesion._toProtobuf()}}},{key:"toBytes",value:function(){return c.NetworkGetVersionInfoResponse.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({protobufVersion:u.default._fromProtobuf(t.hapiProtoVersion),servicesVesion:u.default._fromProtobuf(t.hederaServicesVersion)})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(c.NetworkGetVersionInfoResponse.decode(t))}}]),e}();t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.major=t.major,this.minor=t.minor,this.patch=t.patch,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{major:this.major,minor:this.minor,patch:this.patch}}},{key:"toBytes",value:function(){return u.SemanticVersion.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({major:t.major,minor:t.minor,patch:t.patch})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.SemanticVersion.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(109)),a=r(n(1)),i=r(n(2)),u=r(n(113)),c=r(n(9)),s=r(n(36)),l=r(n(18)),f=n(30),d=r(n(61)),p=r(n(35)),h=r(n(108)),y=function(){function e(t){(0,a.default)(this,e),this.scheduleId=t.scheduleId,this.creatorAccountId=t.creatorAccountID,this.payerAccountId=t.payerAccountID,this.schedulableTransactionBody=t.schedulableTransactionBody,this.signers=t.signers,this.scheduleMemo=t.scheduleMemo,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.executed=t.executed,this.deleted=t.deleted,this.scheduledTransactionId=t.scheduledTransactionId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{scheduleID:null!=this.scheduleId?this.scheduleId._toProtobuf():null,creatorAccountID:null!=this.creatorAccountId?this.creatorAccountId._toProtobuf():null,payerAccountID:null!=this.payerAccountId?this.payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this.schedulableTransactionBody?this.schedulableTransactionBody:null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,signers:null!=this.signers?this.signers._toProtobufKey().keyList:null,memo:null!=this.scheduleMemo?this.scheduleMemo:"",expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,scheduledTransactionID:null!=this.scheduledTransactionId?this.scheduledTransactionId._toProtobuf():null}}},{key:"scheduledTransaction",get:function(){if(null==this.schedulableTransactionBody)throw new Error("Scheduled transaction body is empty");var e=new f.SchedulableTransactionBody(this.schedulableTransactionBody),t=e.data;return l.default.fromBytes(f.TransactionList.encode({transactionList:[{signedTransactionBytes:f.SignedTransaction.encode({bodyBytes:f.TransactionBody.encode((0,o.default)({transactionFee:this.schedulableTransactionBody.transactionFee,memo:this.schedulableTransactionBody.memo},t,e[t])).finish()}).finish()}]}).finish())}}],[{key:"_fromProtobuf",value:function(t){return new e({scheduleId:u.default._fromProtobuf(t.scheduleID),creatorAccountID:null!=t.creatorAccountID?c.default._fromProtobuf(t.creatorAccountID):null,payerAccountID:null!=t.payerAccountID?c.default._fromProtobuf(t.payerAccountID):null,schedulableTransactionBody:null!=t.scheduledTransactionBody?t.scheduledTransactionBody:null,adminKey:null!=t.adminKey?p.default._fromProtobufKey(t.adminKey):null,signers:null!=t.signers?h.default.__fromProtobufKeyList(t.signers):null,scheduleMemo:null!=t.memo?t.memo:null,expirationTime:null!=t.expirationTime?s.default._fromProtobuf(t.expirationTime):null,executed:null!=t.executionTime?s.default._fromProtobuf(t.executionTime):null,deleted:null!=t.deletionTime?s.default._fromProtobuf(t.deletionTime):null,scheduledTransactionId:null!=t.scheduledTransactionID?d.default._fromProtobuf(t.scheduledTransactionID):null})}}]),e}();t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(23)),c=r(n(9)),s=r(n(52)),l=r(n(36)),f=r(n(16)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=k(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30)),p=r(n(246)),h=r(n(247)),y=r(n(163)),b=r(n(193)),m=r(n(194)),v=r(n(35)),g=r(n(78));function k(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(k=function(e){return e?n:t})(e)}var _=function(){function e(t){(0,a.default)(this,e),this.tokenId=t.tokenId,this.name=t.name,this.symbol=t.symbol,this.decimals=t.decimals,this.totalSupply=t.totalSupply,this.treasuryAccountId=t.treasuryAccountId,this.adminKey=t.adminKey,this.kycKey=t.kycKey,this.freezeKey=t.freezeKey,this.pauseKey=t.pauseKey,this.wipeKey=t.wipeKey,this.supplyKey=t.supplyKey,this.feeScheduleKey=t.feeScheduleKey,this.defaultFreezeStatus=t.defaultFreezeStatus,this.defaultKycStatus=t.defaultKycStatus,this.pauseStatus=t.pauseStatus,this.isDeleted=t.isDeleted,this.autoRenewAccountId=t.autoRenewAccountId,this.autoRenewPeriod=t.autoRenewPeriod,this.expirationTime=t.expirationTime,this.tokenMemo=t.tokenMemo,this.customFees=t.customFees,this.tokenType=t.tokenType,this.supplyType=t.supplyType,this.maxSupply=t.maxSupply,this.ledgerId=t.ledgerId}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),name:this.name,symbol:this.symbol,decimals:this.decimals,totalSupply:this.totalSupply,treasury:null!=this.treasuryAccountId?this.treasuryAccountId._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,kycKey:null!=this.kycKey?this.kycKey._toProtobufKey():null,freezeKey:null!=this.freezeKey?this.freezeKey._toProtobufKey():null,pauseKey:null!=this.pauseKey?this.pauseKey._toProtobufKey():null,wipeKey:null!=this.wipeKey?this.wipeKey._toProtobufKey():null,supplyKey:null!=this.supplyKey?this.supplyKey._toProtobufKey():null,feeScheduleKey:null!=this.feeScheduleKey?this.feeScheduleKey._toProtobufKey():null,defaultFreezeStatus:null==this.defaultFreezeStatus?0:this.defaultFreezeStatus?1:2,defaultKycStatus:null==this.defaultKycStatus?0:this.defaultKycStatus?1:2,pauseStatus:null==this.pauseStatus?0:this.pauseStatus?1:2,deleted:this.isDeleted,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():void 0,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,expiry:null!=this.expirationTime?this.expirationTime._toProtobuf():null,memo:this.tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this.tokenType?this.tokenType._code:null,supplyType:null!=this.supplyType?this.supplyType._code:null,maxSupply:this.maxSupply,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return d.TokenInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.defaultFreezeStatus,r=t.defaultKycStatus,o=t.pauseStatus,a=null!=t.autoRenewAccount?c.default._fromProtobuf(t.autoRenewAccount):new c.default(0);return new e({tokenId:u.default._fromProtobuf(t.tokenId),name:t.name,symbol:t.symbol,decimals:t.decimals,totalSupply:f.default.fromValue(t.totalSupply),treasuryAccountId:null!=t.treasury?c.default._fromProtobuf(t.treasury):null,adminKey:null!=t.adminKey?v.default._fromProtobufKey(t.adminKey):null,kycKey:null!=t.kycKey?v.default._fromProtobufKey(t.kycKey):null,freezeKey:null!=t.freezeKey?v.default._fromProtobufKey(t.freezeKey):null,pauseKey:null!=t.pauseKey?v.default._fromProtobufKey(t.pauseKey):null,wipeKey:null!=t.wipeKey?v.default._fromProtobufKey(t.wipeKey):null,supplyKey:null!=t.supplyKey?v.default._fromProtobufKey(t.supplyKey):null,feeScheduleKey:null!=t.feeScheduleKey?v.default._fromProtobufKey(t.feeScheduleKey):null,defaultFreezeStatus:0===n?null:1==n,defaultKycStatus:0===r?null:1==r,pauseStatus:0===o?null:1==o,isDeleted:t.deleted,autoRenewAccountId:0!=a.shard.toInt()||0!=a.realm.toInt()||0!=a.num.toInt()?a:null,autoRenewPeriod:null!=t.autoRenewPeriod?s.default._fromProtobuf(t.autoRenewPeriod):null,expirationTime:null!=t.expiry?l.default._fromProtobuf(t.expiry):null,tokenMemo:null!=t.memo?t.memo:"",customFees:null!=t.customFees?t.customFees.map((function(e){return null!=e.fixedFee?y.default._fromProtobuf(e):null!=e.fractionalFee?b.default._fromProtobuf(e):m.default._fromProtobuf(e)})):[],tokenType:null!=t.tokenType?p.default._fromCode(t.tokenType):null,supplyType:null!=t.supplyType?h.default._fromCode(t.supplyType):null,maxSupply:null!=t.maxSupply?t.maxSupply:null,ledgerId:null!=t.ledgerId?g.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.TokenInfo.decode(t))}}]),e}();t.default=_},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(138)),c=r(n(9)),s=r(n(36)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(60)),f=r(n(78));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t){(0,a.default)(this,e),this.nftId=t.nftId,this.accountId=t.accountId,this.creationTime=t.creationTime,this.metadata=t.metadata,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{nftID:this.nftId._toProtobuf(),accountID:this.accountId._toProtobuf(),creationTime:this.creationTime._toProtobuf(),metadata:this.metadata,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toJson",value:function(){return{nftId:this.nftId.toString(),accountId:this.accountId.toString(),creationTime:this.creationTime.toString(),metadata:null!=this.metadata?l.encode(this.metadata):null,ledgerId:null!=this.ledgerId?this.ledgerId.toString():null}}},{key:"toString",value:function(){return JSON.stringify(this.toJson())}}],[{key:"_fromProtobuf",value:function(t){return new e({nftId:u.default._fromProtobuf(t.nftID),accountId:c.default._fromProtobuf(t.accountID),creationTime:s.default._fromProtobuf(t.creationTime),metadata:void 0!==t.metadata?t.metadata:null,ledgerId:null!=t.ledgerId?f.default.fromBytes(t.ledgerId):null})}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(98)),c=r(n(9)),s=r(n(36)),l=r(n(16)),f=r(n(52)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30)),p=r(n(35)),h=r(n(78));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var b=function(){function e(t){(0,a.default)(this,e),this.topicId=t.topicId,this.topicMemo=t.topicMemo,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.expirationTime=t.expirationTime,this.adminKey=t.adminKey,this.submitKey=t.submitKey,this.autoRenewPeriod=t.autoRenewPeriod,this.autoRenewAccountId=t.autoRenewAccountId,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{topicID:this.topicId._toProtobuf(),topicInfo:{memo:this.topicMemo,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber,expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,submitKey:null!=this.submitKey?this.submitKey._toProtobufKey():null,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():null}}}},{key:"toBytes",value:function(){return d.ConsensusTopicInfo.encode(this._toProtobuf().topicInfo).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.topicInfo;return new e({topicId:u.default._fromProtobuf(t.topicID),topicMemo:null!=n.memo?n.memo:"",runningHash:null!=n.runningHash?n.runningHash:new Uint8Array,sequenceNumber:null!=n.sequenceNumber?n.sequenceNumber instanceof l.default?n.sequenceNumber:l.default.fromValue(n.sequenceNumber):l.default.ZERO,expirationTime:null!=n.expirationTime?s.default._fromProtobuf(n.expirationTime):null,adminKey:null!=n.adminKey?p.default._fromProtobufKey(n.adminKey):null,submitKey:null!=n.submitKey?p.default._fromProtobufKey(n.submitKey):null,autoRenewPeriod:null!=n.autoRenewPeriod?new f.default(n.autoRenewPeriod.seconds):null,autoRenewAccountId:null!=n.autoRenewAccount?c.default._fromProtobuf(n.autoRenewAccount):null,ledgerId:null!=n.ledgerId?h.default.fromBytes(n.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf({topicInfo:d.ConsensusTopicInfo.decode(t)})}}]),e}();t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(36)),u=r(n(359)),c=r(n(16)),s=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.chunks=t.chunks,Object.freeze(this)}return(0,a.default)(e,null,[{key:"_ofSingle",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof c.default?t.sequenceNumber:c.default.fromNumber(t.sequenceNumber):c.default.ZERO,chunks:[u.default._fromProtobuf(t)]})}},{key:"_ofMany",value:function(t){var n=t[t.length-1],r=i.default._fromProtobuf(n.consensusTimestamp),o=n.runningHash,a=null!=n.sequenceNumber?n.sequenceNumber instanceof c.default?n.sequenceNumber:c.default.fromValue(n.sequenceNumber):c.default.ZERO;t.sort((function(e,t){return(null!=e&&null!=e.chunkInfo&&null!=e.chunkInfo.number?e.chunkInfo.number:0)<(null!=t&&null!=t.chunkInfo&&null!=t.chunkInfo.number?t.chunkInfo.number:0)?-1:1}));var s=t.map((function(e){return u.default._fromProtobuf(e)})),l=s.map((function(e){return e.contents.length})).reduce((function(e,t){return e+t}),0),f=new Uint8Array(l),d=0;return t.forEach((function(e){f.set(e.message,d),d+=e.message.length})),new e({consensusTimestamp:r,contents:f,runningHash:o,sequenceNumber:a,chunks:s})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(36)),u=r(n(16)),c=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{consensusTimestamp:this.consensusTimestamp._toProtobuf(),message:this.contents,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber}}}],[{key:"_fromProtobuf",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof u.default?t.sequenceNumber:u.default.fromValue(t.sequenceNumber):u.default.ZERO})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(718)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.newNode)this._address="string"==typeof t.newNode.address?i.default.fromString(t.newNode.address):t.newNode.address,this._cert=void 0,this._channel=null,this._channelInitFunction=t.newNode.channelInitFunction,this._currentBackoff=250,this._lastUsed=Date.now(),this._backoffUntil=Date.now(),this._useCount=0,this._attempts=0,this._minBackoff=250,this._maxBackoff=8e3;else{if(null==t.cloneNode)throw new Error("failed to create ManagedNode: ".concat(JSON.stringify(t)));this._address=t.cloneNode.address,this._cert=t.cloneNode.node._cert,this._channel=t.cloneNode.node._channel,this._channelInitFunction=t.cloneNode.node._channelInitFunction,this._currentBackoff=t.cloneNode.node._currentBackoff,this._lastUsed=t.cloneNode.node._lastUsed,this._backoffUntil=t.cloneNode.node._backoffUntil,this._useCount=t.cloneNode.node._useCount,this._attempts=t.cloneNode.node._attempts,this._minBackoff=t.cloneNode.node._minBackoff,this._maxBackoff=t.cloneNode.node._minBackoff}}return(0,a.default)(e,[{key:"getKey",value:function(){throw new Error("not implemented")}},{key:"toInsecure",value:function(){throw new Error("not implemented")}},{key:"toSecure",value:function(){throw new Error("not implemented")}},{key:"setCert",value:function(e){return this}},{key:"address",get:function(){return this._address}},{key:"attempts",get:function(){return this._attempts}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._minBackoff=e,this}},{key:"maxBackoff",get:function(){return this._maxBackoff}},{key:"setmaxBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._maxBackoff=e,this}},{key:"getChannel",value:function(){return this._useCount++,this.__lastUsed=Date.now(),null!=this._channel||(this._channel=this._channelInitFunction(this.address.toString(),this._cert)),this._channel}},{key:"isHealthy",value:function(){return this._backoffUntil<=Date.now()}},{key:"increaseDelay",value:function(){this._currentBackoff=Math.min(2*this._currentBackoff,this._maxBackoff),this._backoffUntil=Date.now()+this._currentBackoff}},{key:"decreaseDelay",value:function(){this._currentBackoff=Math.max(this._currentBackoff/2,this._minBackoff)}},{key:"wait",value:function(){var e=this._backoffUntil-this._lastUsed;return new Promise((function(t){return setTimeout(t,e)}))}},{key:"compare",value:function(e){return this.isHealthy()&&e.isHealthy()?this._useCounte._useCount?1:this._lastUsede._lastUsed?1:0:this.isHealthy()&&!e.isHealthy()?-1:!this.isHealthy()&&e.isHealthy()?1:this._useCounte._useCount?1:this._lastUsede._lastUsed?1:0}},{key:"close",value:function(){null!=this._channel&&this._channel.close(),this._channel=null}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2)),u=r(n(78));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)for(var e=this._nodes.length-1;e>=0;e--){this._nodes[e]._attempts=e)break;i.has(s.getKey())||a.push(s)}}catch(e){u.e(e)}finally{u.f()}return a}},{key:"_closeNode",value:function(e){var t=this._nodes[e];t.close(),this._removeNodeFromNetwork(t),this._nodes.splice(e,1)}},{key:"_removeNodeFromNetwork",value:function(e){for(var t=this._network.get(e.getKey()),n=0;n>>4).toString(16)),t.push((15&e[n]).toString(16));return"0x"+t.join("")},isHex:v,isHexStrict:m,stripHexPrefix:function(e){return 0!==e&&v(e)?e.replace(/^(-)?0x/i,"$1"):e},leftPad:function(e,t,n){var r=/^0x/i.test(e)||"number"==typeof e,o=t-(e=e.toString(16).replace(/^0x/i,"")).length+1>=0?t-e.length+1:0;return(r?"0x":"")+new Array(o).join(n||"0")+e},rightPad:function(e,t,n){var r=/^0x/i.test(e)||"number"==typeof e,o=t-(e=e.toString(16).replace(/^0x/i,"")).length+1>=0?t-e.length+1:0;return(r?"0x":"")+e+new Array(o).join(n||"0")},toTwosComplement:function(e){return"0x"+f(e).toTwos(256).toString(16,64)},sha3:k,sha3Raw:function(e){return null===(e=k(e))?g:e},toNumber:function(e){return"number"==typeof e?e:h(b(e))},getChecksumAddress:_}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";var r={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==r.call(e)}},function(e,t,n){"use strict";var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.KECCAK256_RLP=t.KECCAK256_RLP_S=t.KECCAK256_RLP_ARRAY=t.KECCAK256_RLP_ARRAY_S=t.KECCAK256_NULL=t.KECCAK256_NULL_S=t.TWO_POW256=t.MAX_INTEGER=void 0;var o=n(12).Buffer,a=r(n(13));t.MAX_INTEGER=new a.default("ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",16),t.TWO_POW256=new a.default("10000000000000000000000000000000000000000000000000000000000000000",16),t.KECCAK256_NULL_S="c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",t.KECCAK256_NULL=o.from(t.KECCAK256_NULL_S,"hex"),t.KECCAK256_RLP_ARRAY_S="1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",t.KECCAK256_RLP_ARRAY=o.from(t.KECCAK256_RLP_ARRAY_S,"hex"),t.KECCAK256_RLP_S="56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",t.KECCAK256_RLP=o.from(t.KECCAK256_RLP_S,"hex")},function(e,t,n){"use strict";(function(e){var r=Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]},o=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},a=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&r(t,e,n);return o(t,e),t},i=function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i},u=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isZeroAddress=t.zeroAddress=t.importPublic=t.privateToAddress=t.privateToPublic=t.publicToAddress=t.pubToAddress=t.isValidPublic=t.isValidPrivate=t.generateAddress2=t.generateAddress=t.isValidChecksumAddress=t.toChecksumAddress=t.isValidAddress=t.Account=void 0;var c=u(n(139)),s=u(n(13)),l=a(n(195)),f=n(367),d=n(140),p=n(365),h=n(114),y=n(248),b=n(196),m=n(257),v=function(){function e(e,t,n,r){void 0===e&&(e=new s.default(0)),void 0===t&&(t=new s.default(0)),void 0===n&&(n=p.KECCAK256_RLP),void 0===r&&(r=p.KECCAK256_NULL),this.nonce=e,this.balance=t,this.stateRoot=n,this.codeHash=r,this._validate()}return e.fromAccountData=function(t){var n=t.nonce,r=t.balance,o=t.stateRoot,a=t.codeHash;return new e(n?new s.default((0,h.toBuffer)(n)):void 0,r?new s.default((0,h.toBuffer)(r)):void 0,o?(0,h.toBuffer)(o):void 0,a?(0,h.toBuffer)(a):void 0)},e.fromRlpSerializedAccount=function(e){var t=l.decode(e);if(!Array.isArray(t))throw new Error("Invalid serialized account input. Must be array");return this.fromValuesArray(t)},e.fromValuesArray=function(t){var n=i(t,4),r=n[0],o=n[1],a=n[2],u=n[3];return new e(new s.default(r),new s.default(o),a,u)},e.prototype._validate=function(){if(this.nonce.lt(new s.default(0)))throw new Error("nonce must be greater than zero");if(this.balance.lt(new s.default(0)))throw new Error("balance must be greater than zero");if(32!==this.stateRoot.length)throw new Error("stateRoot must have a length of 32");if(32!==this.codeHash.length)throw new Error("codeHash must have a length of 32")},e.prototype.raw=function(){return[(0,m.bnToUnpaddedBuffer)(this.nonce),(0,m.bnToUnpaddedBuffer)(this.balance),this.stateRoot,this.codeHash]},e.prototype.serialize=function(){return l.encode(this.raw())},e.prototype.isContract=function(){return!this.codeHash.equals(p.KECCAK256_NULL)},e.prototype.isEmpty=function(){return this.balance.isZero()&&this.nonce.isZero()&&this.codeHash.equals(p.KECCAK256_NULL)},e}();t.Account=v;t.isValidAddress=function(e){try{(0,b.assertIsString)(e)}catch(e){return!1}return/^0x[0-9a-fA-F]{40}$/.test(e)};t.toChecksumAddress=function(e,t){(0,b.assertIsHexString)(e);var n=(0,d.stripHexPrefix)(e).toLowerCase(),r="";t&&(r=(0,m.toType)(t,m.TypeOutput.BN).toString()+"0x");for(var o=(0,y.keccakFromString)(r+n).toString("hex"),a="0x",i=0;i=8?a+=n[i].toUpperCase():a+=n[i];return a};t.isValidChecksumAddress=function(e,n){return(0,t.isValidAddress)(e)&&(0,t.toChecksumAddress)(e,n)===e};t.generateAddress=function(t,n){(0,b.assertIsBuffer)(t),(0,b.assertIsBuffer)(n);var r=new s.default(n);return r.isZero()?(0,y.rlphash)([t,null]).slice(-20):(0,y.rlphash)([t,e.from(r.toArray())]).slice(-20)};t.generateAddress2=function(t,n,r){return(0,b.assertIsBuffer)(t),(0,b.assertIsBuffer)(n),(0,b.assertIsBuffer)(r),(0,c.default)(20===t.length),(0,c.default)(32===n.length),(0,y.keccak256)(e.concat([e.from("ff","hex"),t,n,(0,y.keccak256)(r)])).slice(-20)};t.isValidPrivate=function(e){return(0,f.privateKeyVerify)(e)};t.isValidPublic=function(t,n){return void 0===n&&(n=!1),(0,b.assertIsBuffer)(t),64===t.length?(0,f.publicKeyVerify)(e.concat([e.from([4]),t])):!!n&&(0,f.publicKeyVerify)(t)};t.pubToAddress=function(t,n){return void 0===n&&(n=!1),(0,b.assertIsBuffer)(t),n&&64!==t.length&&(t=e.from((0,f.publicKeyConvert)(t,!1).slice(1))),(0,c.default)(64===t.length),(0,y.keccak)(t).slice(-20)},t.publicToAddress=t.pubToAddress;t.privateToPublic=function(t){return(0,b.assertIsBuffer)(t),e.from((0,f.publicKeyCreate)(t,!1)).slice(1)};t.privateToAddress=function(e){return(0,t.publicToAddress)((0,t.privateToPublic)(e))};t.importPublic=function(t){return(0,b.assertIsBuffer)(t),64!==t.length&&(t=e.from((0,f.publicKeyConvert)(t,!1).slice(1))),t};t.zeroAddress=function(){var e=(0,h.zeros)(20);return(0,h.bufferToHex)(e)};t.isZeroAddress=function(e){try{(0,b.assertIsString)(e)}catch(e){return!1}return(0,t.zeroAddress)()===e}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";var r=function(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{c(r.next(e))}catch(e){a(e)}}function u(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,u)}c((r=r.apply(e,t||[])).next())}))},o=function(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function u(a){return function(u){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]0)if("string"==typeof t||i.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r)i.endEmitted?w(e,new _):E(e,i,t,!0);else if(i.ended)w(e,new g);else{if(i.destroyed)return!1;i.reading=!1,i.decoder&&!n?(t=i.decoder.write(t),i.objectMode||0!==t.length?E(e,i,t,!1):D(e,i)):E(e,i,t,!1)}else r||(i.reading=!1,D(e,i));return!i.ended&&(i.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=1073741824?e=1073741824:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;s("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(s("emitReadable",t.flowing),t.emittedReadable=!0,r.nextTick(R,e))}function R(e){var t=e._readableState;s("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function D(e,t){t.readingMore||(t.readingMore=!0,r.nextTick(C,e,t))}function C(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function B(e){s("readable nexttick read 0"),e.read(0)}function M(e,t){s("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(s("flow",t.flowing);t.flowing&&null!==e.read(););}function x(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function F(e){var t=e._readableState;s("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,r.nextTick(U,t,e))}function U(e,t){if(s("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function L(e,t){for(var n=0,r=e.length;n=t.highWaterMark:t.length>0)||t.ended))return s("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):S(this),null;if(0===(e=P(e,t))&&t.ended)return 0===t.length&&F(this),null;var r,o=t.needReadable;return s("need readable",o),(0===t.length||t.length-e0?x(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&F(this)),null!==r&&this.emit("data",r),r},T.prototype._read=function(e){w(this,new k("_read()"))},T.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,s("pipe count=%d opts=%j",o.pipesCount,t);var i=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?c:b;function u(t,r){s("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,s("cleanup"),e.removeListener("close",h),e.removeListener("finish",y),e.removeListener("drain",l),e.removeListener("error",p),e.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",b),n.removeListener("data",d),f=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function c(){s("onend"),e.end()}o.endEmitted?r.nextTick(i):n.once("end",i),e.on("unpipe",u);var l=function(e){return function(){var t=e._readableState;s("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(n);e.on("drain",l);var f=!1;function d(t){s("ondata");var r=e.write(t);s("dest.write",r),!1===r&&((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==L(o.pipes,e))&&!f&&(s("false write response, pause",o.awaitDrain),o.awaitDrain++),n.pause())}function p(t){s("onerror",t),b(),e.removeListener("error",p),0===a(e,"error")&&w(e,t)}function h(){e.removeListener("finish",y),b()}function y(){s("onfinish"),e.removeListener("close",h),b()}function b(){s("unpipe"),n.unpipe(e)}return n.on("data",d),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",p),e.once("close",h),e.once("finish",y),e.emit("pipe",n),o.flowing||(s("pipe resume"),n.resume()),e},T.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==o.flowing&&this.resume()):"readable"===e&&(o.endEmitted||o.readableListening||(o.readableListening=o.needReadable=!0,o.flowing=!1,o.emittedReadable=!1,s("on readable",o.length,o.reading),o.length?S(this):o.reading||r.nextTick(B,this))),n},T.prototype.addListener=T.prototype.on,T.prototype.removeListener=function(e,t){var n=i.prototype.removeListener.call(this,e,t);return"readable"===e&&r.nextTick(N,this),n},T.prototype.removeAllListeners=function(e){var t=i.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||r.nextTick(N,this),t},T.prototype.resume=function(){var e=this._readableState;return e.flowing||(s("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,r.nextTick(M,e,t))}(this,e)),e.paused=!1,this},T.prototype.pause=function(){return s("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(s("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},T.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var o in e.on("end",(function(){if(s("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(o){(s("wrapped data"),n.decoder&&(o=n.decoder.write(o)),n.objectMode&&null==o)||(n.objectMode||o&&o.length)&&(t.push(o)||(r=!0,e.pause()))})),e)void 0===this[o]&&"function"==typeof e[o]&&(this[o]=function(t){return function(){return e[t].apply(e,arguments)}}(o));for(var a=0;a-1))throw new _(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(T.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(T.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),T.prototype._write=function(e,t,n){n(new y("_write()"))},T.prototype._writev=null,T.prototype.end=function(e,t,n){var o=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),o.corked&&(o.corked=1,this.uncork()),o.ending||function(e,t,n){t.ending=!0,D(e,t),n&&(t.finished?r.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,o,n),this},Object.defineProperty(T.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(T.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),T.prototype.destroy=f.destroy,T.prototype._undestroy=f.undestroy,T.prototype._destroy=function(e,t){t(e)}}).call(this,n(33),n(27))},function(e,t,n){"use strict";e.exports=l;var r=n(141).codes,o=r.ERR_METHOD_NOT_IMPLEMENTED,a=r.ERR_MULTIPLE_CALLBACK,i=r.ERR_TRANSFORM_ALREADY_TRANSFORMING,u=r.ERR_TRANSFORM_WITH_LENGTH_0,c=n(142);function s(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit("error",new a);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.length=this._blockSize;){for(var a=this._blockOffset;a0;++i)this._length[i]+=u,(u=this._length[i]/4294967296|0)>0&&(this._length[i]-=4294967296*u);return this},a.prototype._update=function(){throw new Error("_update is not implemented")},a.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var n=0;n<4;++n)this._length[n]=0;return t},a.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=a},function(e,t,n){"use strict";(function(t,r){var o;e.exports=T,T.ReadableState=A;n(70).EventEmitter;var a=function(e,t){return e.listeners(t).length},i=n(378),u=n(12).Buffer,c=t.Uint8Array||function(){};var s,l=n(759);s=l&&l.debuglog?l.debuglog("stream"):function(){};var f,d,p,h=n(760),y=n(379),b=n(380).getHighWaterMark,m=n(144).codes,v=m.ERR_INVALID_ARG_TYPE,g=m.ERR_STREAM_PUSH_AFTER_EOF,k=m.ERR_METHOD_NOT_IMPLEMENTED,_=m.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;n(15)(T,i);var w=y.errorOrDestroy,I=["error","close","destroy","pause","resume"];function A(e,t,r){o=o||n(145),e=e||{},"boolean"!=typeof r&&(r=t instanceof o),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=b(this,e,"readableHighWaterMark",r),this.buffer=new h,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=n(62).StringDecoder),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function T(e){if(o=o||n(145),!(this instanceof T))return new T(e);var t=this instanceof o;this._readableState=new A(e,this,t),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),i.call(this)}function O(e,t,n,r,o){s("readableAddChunk",t);var a,i=e._readableState;if(null===t)i.reading=!1,function(e,t){if(s("onEofChunk"),t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,t.sync?S(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,R(e)))}(e,i);else if(o||(a=function(e,t){var n;r=t,u.isBuffer(r)||r instanceof c||"string"==typeof t||void 0===t||e.objectMode||(n=new v("chunk",["string","Buffer","Uint8Array"],t));var r;return n}(i,t)),a)w(e,a);else if(i.objectMode||t&&t.length>0)if("string"==typeof t||i.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r)i.endEmitted?w(e,new _):E(e,i,t,!0);else if(i.ended)w(e,new g);else{if(i.destroyed)return!1;i.reading=!1,i.decoder&&!n?(t=i.decoder.write(t),i.objectMode||0!==t.length?E(e,i,t,!1):D(e,i)):E(e,i,t,!1)}else r||(i.reading=!1,D(e,i));return!i.ended&&(i.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=1073741824?e=1073741824:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;s("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(s("emitReadable",t.flowing),t.emittedReadable=!0,r.nextTick(R,e))}function R(e){var t=e._readableState;s("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function D(e,t){t.readingMore||(t.readingMore=!0,r.nextTick(C,e,t))}function C(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function B(e){s("readable nexttick read 0"),e.read(0)}function M(e,t){s("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(s("flow",t.flowing);t.flowing&&null!==e.read(););}function x(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function F(e){var t=e._readableState;s("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,r.nextTick(U,t,e))}function U(e,t){if(s("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function L(e,t){for(var n=0,r=e.length;n=t.highWaterMark:t.length>0)||t.ended))return s("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):S(this),null;if(0===(e=P(e,t))&&t.ended)return 0===t.length&&F(this),null;var r,o=t.needReadable;return s("need readable",o),(0===t.length||t.length-e0?x(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&F(this)),null!==r&&this.emit("data",r),r},T.prototype._read=function(e){w(this,new k("_read()"))},T.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,s("pipe count=%d opts=%j",o.pipesCount,t);var i=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?c:b;function u(t,r){s("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,s("cleanup"),e.removeListener("close",h),e.removeListener("finish",y),e.removeListener("drain",l),e.removeListener("error",p),e.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",b),n.removeListener("data",d),f=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function c(){s("onend"),e.end()}o.endEmitted?r.nextTick(i):n.once("end",i),e.on("unpipe",u);var l=function(e){return function(){var t=e._readableState;s("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(n);e.on("drain",l);var f=!1;function d(t){s("ondata");var r=e.write(t);s("dest.write",r),!1===r&&((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==L(o.pipes,e))&&!f&&(s("false write response, pause",o.awaitDrain),o.awaitDrain++),n.pause())}function p(t){s("onerror",t),b(),e.removeListener("error",p),0===a(e,"error")&&w(e,t)}function h(){e.removeListener("finish",y),b()}function y(){s("onfinish"),e.removeListener("close",h),b()}function b(){s("unpipe"),n.unpipe(e)}return n.on("data",d),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",p),e.once("close",h),e.once("finish",y),e.emit("pipe",n),o.flowing||(s("pipe resume"),n.resume()),e},T.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==o.flowing&&this.resume()):"readable"===e&&(o.endEmitted||o.readableListening||(o.readableListening=o.needReadable=!0,o.flowing=!1,o.emittedReadable=!1,s("on readable",o.length,o.reading),o.length?S(this):o.reading||r.nextTick(B,this))),n},T.prototype.addListener=T.prototype.on,T.prototype.removeListener=function(e,t){var n=i.prototype.removeListener.call(this,e,t);return"readable"===e&&r.nextTick(N,this),n},T.prototype.removeAllListeners=function(e){var t=i.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||r.nextTick(N,this),t},T.prototype.resume=function(){var e=this._readableState;return e.flowing||(s("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,r.nextTick(M,e,t))}(this,e)),e.paused=!1,this},T.prototype.pause=function(){return s("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(s("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},T.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var o in e.on("end",(function(){if(s("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(o){(s("wrapped data"),n.decoder&&(o=n.decoder.write(o)),n.objectMode&&null==o)||(n.objectMode||o&&o.length)&&(t.push(o)||(r=!0,e.pause()))})),e)void 0===this[o]&&"function"==typeof e[o]&&(this[o]=function(t){return function(){return e[t].apply(e,arguments)}}(o));for(var a=0;a-1))throw new _(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(T.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(T.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),T.prototype._write=function(e,t,n){n(new y("_write()"))},T.prototype._writev=null,T.prototype.end=function(e,t,n){var o=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),o.corked&&(o.corked=1,this.uncork()),o.ending||function(e,t,n){t.ending=!0,D(e,t),n&&(t.finished?r.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,o,n),this},Object.defineProperty(T.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(T.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),T.prototype.destroy=f.destroy,T.prototype._undestroy=f.undestroy,T.prototype._destroy=function(e,t){t(e)}}).call(this,n(33),n(27))},function(e,t,n){"use strict";e.exports=l;var r=n(144).codes,o=r.ERR_METHOD_NOT_IMPLEMENTED,a=r.ERR_MULTIPLE_CALLBACK,i=r.ERR_TRANSFORM_ALREADY_TRANSFORMING,u=r.ERR_TRANSFORM_WITH_LENGTH_0,c=n(145);function s(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit("error",new a);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.length>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function d(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function p(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(c,o),c.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,h=0|this._f,y=0|this._g,b=0|this._h,m=0;m<16;++m)n[m]=e.readInt32BE(4*m);for(;m<64;++m)n[m]=0|(((t=n[m-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[m-7]+p(n[m-15])+n[m-16];for(var v=0;v<64;++v){var g=b+d(c)+s(c,h,y)+i[v]+n[v]|0,k=f(r)+l(r,o,a)|0;b=y,y=h,h=c,c=u+g|0,u=a,a=o,o=r,r=g+k|0}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0,this._f=h+this._f|0,this._g=y+this._g|0,this._h=b+this._h|0},c.prototype._hash=function(){var e=a.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},function(e,t,n){"use strict";var r=n(15),o=n(146),a=n(22).Buffer,i=[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],u=new Array(160);function c(){this.init(),this._w=u,o.call(this,128,112)}function s(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function f(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function d(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function h(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function y(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function b(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function m(e,t){return e>>>0>>0?1:0}r(c,o),c.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},c.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,o=0|this._ch,a=0|this._dh,u=0|this._eh,c=0|this._fh,v=0|this._gh,g=0|this._hh,k=0|this._al,_=0|this._bl,w=0|this._cl,I=0|this._dl,A=0|this._el,T=0|this._fl,O=0|this._gl,E=0|this._hl,P=0;P<32;P+=2)t[P]=e.readInt32BE(4*P),t[P+1]=e.readInt32BE(4*P+4);for(;P<160;P+=2){var S=t[P-30],R=t[P-30+1],D=p(S,R),C=h(R,S),N=y(S=t[P-4],R=t[P-4+1]),B=b(R,S),M=t[P-14],j=t[P-14+1],x=t[P-32],F=t[P-32+1],U=C+j|0,L=D+M+m(U,C)|0;L=(L=L+N+m(U=U+B|0,B)|0)+x+m(U=U+F|0,F)|0,t[P]=L,t[P+1]=U}for(var K=0;K<160;K+=2){L=t[K],U=t[K+1];var G=l(n,r,o),z=l(k,_,w),Q=f(n,k),H=f(k,n),V=d(u,A),q=d(A,u),W=i[K],Y=i[K+1],Z=s(u,c,v),J=s(A,T,O),X=E+q|0,$=g+V+m(X,E)|0;$=($=($=$+Z+m(X=X+J|0,J)|0)+W+m(X=X+Y|0,Y)|0)+L+m(X=X+U|0,U)|0;var ee=H+z|0,te=Q+G+m(ee,H)|0;g=v,E=O,v=c,O=T,c=u,T=A,u=a+$+m(A=I+X|0,I)|0,a=o,I=w,o=r,w=_,r=n,_=k,n=$+te+m(k=X+ee|0,X)|0}this._al=this._al+k|0,this._bl=this._bl+_|0,this._cl=this._cl+w|0,this._dl=this._dl+I|0,this._el=this._el+A|0,this._fl=this._fl+T|0,this._gl=this._gl+O|0,this._hl=this._hl+E|0,this._ah=this._ah+n+m(this._al,k)|0,this._bh=this._bh+r+m(this._bl,_)|0,this._ch=this._ch+o+m(this._cl,w)|0,this._dh=this._dh+a+m(this._dl,I)|0,this._eh=this._eh+u+m(this._el,A)|0,this._fh=this._fh+c+m(this._fl,T)|0,this._gh=this._gh+v+m(this._gl,O)|0,this._hh=this._hh+g+m(this._hl,E)|0},c.prototype._hash=function(){var e=a.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},function(e,t,n){"use strict";e.exports=o;var r=n(70).EventEmitter;function o(){r.call(this)}n(15)(o,r),o.Readable=n(254),o.Writable=n(775),o.Duplex=n(776),o.Transform=n(777),o.PassThrough=n(778),o.Stream=o,o.prototype.pipe=function(e,t){var n=this;function o(t){e.writable&&!1===e.write(t)&&n.pause&&n.pause()}function a(){n.readable&&n.resume&&n.resume()}n.on("data",o),e.on("drain",a),e._isStdio||t&&!1===t.end||(n.on("end",u),n.on("close",c));var i=!1;function u(){i||(i=!0,e.end())}function c(){i||(i=!0,"function"==typeof e.destroy&&e.destroy())}function s(e){if(l(),0===r.listenerCount(this,"error"))throw e}function l(){n.removeListener("data",o),e.removeListener("drain",a),n.removeListener("end",u),n.removeListener("close",c),n.removeListener("error",s),e.removeListener("error",s),n.removeListener("end",l),n.removeListener("close",l),e.removeListener("close",l)}return n.on("error",s),e.on("error",s),n.on("end",l),n.on("close",l),e.on("close",l),e.emit("pipe",n),e}},function(e,t,n){"use strict";(function(t,r){var o=n(198);e.exports=g;var a,i=n(364);g.ReadableState=v;n(70).EventEmitter;var u=function(e,t){return e.listeners(t).length},c=n(387),s=n(255).Buffer,l=t.Uint8Array||function(){};var f=Object.create(n(164));f.inherits=n(15);var d=n(770),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var h,y=n(771),b=n(388);f.inherits(g,c);var m=["error","close","destroy","pause","resume"];function v(e,t){e=e||{};var r=t instanceof(a=a||n(115));this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var o=e.highWaterMark,i=e.readableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:r&&(i||0===i)?i:u,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new y,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(h||(h=n(62).StringDecoder),this.decoder=new h(e.encoding),this.encoding=e.encoding)}function g(e){if(a=a||n(115),!(this instanceof g))return new g(e);this._readableState=new v(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),c.call(this)}function k(e,t,n,r,o){var a,i=e._readableState;null===t?(i.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,I(e)}(e,i)):(o||(a=function(e,t){var n;r=t,s.isBuffer(r)||r instanceof l||"string"==typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var r;return n}(i,t)),a?e.emit("error",a):i.objectMode||t&&t.length>0?("string"==typeof t||i.objectMode||Object.getPrototypeOf(t)===s.prototype||(t=function(e){return s.from(e)}(t)),r?i.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):_(e,i,t,!0):i.ended?e.emit("error",new Error("stream.push() after EOF")):(i.reading=!1,i.decoder&&!n?(t=i.decoder.write(t),i.objectMode||0!==t.length?_(e,i,t,!1):T(e,i)):_(e,i,t,!1))):r||(i.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function I(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?o.nextTick(A,e):A(e))}function A(e){p("emit readable"),e.emit("readable"),S(e)}function T(e,t){t.readingMore||(t.readingMore=!0,o.nextTick(O,e,t))}function O(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;ea.length?a.length:e;if(i===a.length?o+=a:o+=a.slice(0,e),0===(e-=i)){i===a.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(i));break}++r}return t.length-=r,o}(e,t):function(e,t){var n=s.allocUnsafe(e),r=t.head,o=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var a=r.data,i=e>a.length?a.length:e;if(a.copy(n,n.length-e,0,i),0===(e-=i)){i===a.length?(++o,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(i));break}++o}return t.length-=o,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function D(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,o.nextTick(C,t,e))}function C(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function N(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?D(this):I(this),null;if(0===(e=w(e,t))&&t.ended)return 0===t.length&&D(this),null;var r,o=t.needReadable;return p("need readable",o),(0===t.length||t.length-e0?R(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&D(this)),null!==r&&this.emit("data",r),r},g.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},g.prototype.pipe=function(e,t){var n=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=e;break;case 1:a.pipes=[a.pipes,e];break;default:a.pipes.push(e)}a.pipesCount+=1,p("pipe count=%d opts=%j",a.pipesCount,t);var c=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?l:g;function s(t,r){p("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,p("cleanup"),e.removeListener("close",m),e.removeListener("finish",v),e.removeListener("drain",f),e.removeListener("error",b),e.removeListener("unpipe",s),n.removeListener("end",l),n.removeListener("end",g),n.removeListener("data",y),d=!0,!a.awaitDrain||e._writableState&&!e._writableState.needDrain||f())}function l(){p("onend"),e.end()}a.endEmitted?o.nextTick(c):n.once("end",c),e.on("unpipe",s);var f=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&u(e,"data")&&(t.flowing=!0,S(e))}}(n);e.on("drain",f);var d=!1;var h=!1;function y(t){p("ondata"),h=!1,!1!==e.write(t)||h||((1===a.pipesCount&&a.pipes===e||a.pipesCount>1&&-1!==N(a.pipes,e))&&!d&&(p("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,h=!0),n.pause())}function b(t){p("onerror",t),g(),e.removeListener("error",b),0===u(e,"error")&&e.emit("error",t)}function m(){e.removeListener("finish",v),g()}function v(){p("onfinish"),e.removeListener("close",m),g()}function g(){p("unpipe"),n.unpipe(e)}return n.on("data",y),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?i(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",b),e.once("close",m),e.once("finish",v),e.emit("pipe",n),a.flowing||(p("pipe resume"),n.resume()),e},g.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(773),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||void 0,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||void 0}).call(this,n(33))},function(e,t,n){"use strict";e.exports=i;var r=n(115),o=Object.create(n(164));function a(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(!r)return this.emit("error",new Error("write callback called multiple times"));n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.length0&&(10===arguments[0]?p||(p=!0,f.warn("BigNumber.toString does not accept any parameters; base-10 is assumed")):16===arguments[0]?f.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()",c.Logger.errors.UNEXPECTED_ARGUMENT,{}):f.throwError("BigNumber.toString does not accept parameters",c.Logger.errors.UNEXPECTED_ARGUMENT,{})),m(this).toString(10)}},{key:"toHexString",value:function(){return this._hex}},{key:"toJSON",value:function(e){return{type:"BigNumber",hex:this.toHexString()}}}],[{key:"from",value:function(t){if(t instanceof e)return t;if("string"==typeof t)return t.match(/^-?0x[0-9a-f]+$/i)?new e(d,y(t)):t.match(/^-?[0-9]+$/)?new e(d,y(new l(t))):f.throwArgumentError("invalid BigNumber string","value",t);if("number"==typeof t)return t%1&&v("underflow","BigNumber.from",t),(t>=9007199254740991||t<=-9007199254740991)&&v("overflow","BigNumber.from",t),e.from(String(t));var n=t;if("bigint"==typeof n)return e.from(n.toString());if((0,u.isBytes)(n))return e.from((0,u.hexlify)(n));if(n)if(n.toHexString){var r=n.toHexString();if("string"==typeof r)return e.from(r)}else{var o=n._hex;if(null==o&&"BigNumber"===n.type&&(o=n.hex),"string"==typeof o&&((0,u.isHexString)(o)||"-"===o[0]&&(0,u.isHexString)(o.substring(1))))return e.from(o)}return f.throwArgumentError("invalid BigNumber value","value",t)}},{key:"isBigNumber",value:function(e){return!(!e||!e._isBigNumber)}}]),e}();function y(e){if("string"!=typeof e)return y(e.toString(16));if("-"===e[0])return"-"===(e=e.substring(1))[0]&&f.throwArgumentError("invalid hex","value",e),"0x00"===(e=y(e))?e:"-"+e;if("0x"!==e.substring(0,2)&&(e="0x"+e),"0x"===e)return"0x00";for(e.length%2&&(e="0x0"+e.substring(2));e.length>4&&"0x00"===e.substring(0,4);)e="0x"+e.substring(4);return e}function b(e){return h.from(y(e))}function m(e){var t=h.from(e).toHexString();return"-"===t[0]?new l("-"+t.substring(3),16):new l(t.substring(2),16)}function v(e,t,n){var r={fault:e,operation:t};return null!=n&&(r.value=n),f.throwError(e,c.Logger.errors.NUMERIC_FAULT,r)}t.BigNumber=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="bignumber/5.5.0"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){var t=(0,r.arrayify)(e),n=l(t,0);n.consumed!==t.length&&i.throwArgumentError("invalid rlp data","data",e);return n.result},t.encode=function(e){return(0,r.hexlify)(function e(t){if(Array.isArray(t)){var n=[];if(t.forEach((function(t){n=n.concat(e(t))})),n.length<=55)return n.unshift(192+n.length),n;var o=u(n.length);return o.unshift(247+o.length),o.concat(n)}(0,r.isBytesLike)(t)||i.throwArgumentError("RLP object must be BytesLike","object",t);var a=Array.prototype.slice.call((0,r.arrayify)(t));if(1===a.length&&a[0]<=127)return a;if(a.length<=55)return a.unshift(128+a.length),a;var c=u(a.length);return c.unshift(183+c.length),c.concat(a)}(e))};var r=n(47),o=n(49),a=n(795),i=new o.Logger(a.version);function u(e){for(var t=[];e;)t.unshift(255&e),e>>=8;return t}function c(e,t,n){for(var r=0,o=0;ot+1+r&&i.throwError("child data too short",o.Logger.errors.BUFFER_OVERRUN,{})}return{consumed:1+r,result:a}}function l(e,t){if(0===e.length&&i.throwError("data too short",o.Logger.errors.BUFFER_OVERRUN,{}),e[t]>=248){var n=e[t]-247;t+1+n>e.length&&i.throwError("data short segment too short",o.Logger.errors.BUFFER_OVERRUN,{});var a=c(e,t+1,n);return t+1+n+a>e.length&&i.throwError("data long segment too short",o.Logger.errors.BUFFER_OVERRUN,{}),s(e,t,t+1+n,n+a)}if(e[t]>=192){var u=e[t]-192;return t+1+u>e.length&&i.throwError("data array too short",o.Logger.errors.BUFFER_OVERRUN,{}),s(e,t,t+1,u)}if(e[t]>=184){var l=e[t]-183;t+1+l>e.length&&i.throwError("data array too short",o.Logger.errors.BUFFER_OVERRUN,{});var f=c(e,t+1,l);return t+1+l+f>e.length&&i.throwError("data array too short",o.Logger.errors.BUFFER_OVERRUN,{}),{consumed:1+l+f,result:(0,r.hexlify)(e.slice(t+1+l,t+1+l+f))}}if(e[t]>=128){var d=e[t]-128;return t+1+d>e.length&&i.throwError("data too short",o.Logger.errors.BUFFER_OVERRUN,{}),{consumed:1+d,result:(0,r.hexlify)(e.slice(t+1,t+1+d))}}return{consumed:1,result:(0,r.hexlify)(e[t])}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(133),o=n(165),a=n(79),i=n(398),u=n(69).formatters,c=function(){var e=this;(0,r.packageInit)(this,arguments),this.net=new i(this);var t=null,n="latest";Object.defineProperty(this,"defaultAccount",{get:function(){return t},set:function(e){return e&&(t=a.toChecksumAddress(u.inputAddressFormatter(e))),c.forEach((function(e){e.defaultAccount=t})),e},enumerable:!0}),Object.defineProperty(this,"defaultBlock",{get:function(){return n},set:function(e){return n=e,c.forEach((function(e){e.defaultBlock=n})),e},enumerable:!0});var c=[new o({name:"getAccounts",call:"personal_listAccounts",params:0,outputFormatter:a.toChecksumAddress}),new o({name:"newAccount",call:"personal_newAccount",params:1,inputFormatter:[null],outputFormatter:a.toChecksumAddress}),new o({name:"unlockAccount",call:"personal_unlockAccount",params:3,inputFormatter:[u.inputAddressFormatter,null,null]}),new o({name:"lockAccount",call:"personal_lockAccount",params:1,inputFormatter:[u.inputAddressFormatter]}),new o({name:"importRawKey",call:"personal_importRawKey",params:2}),new o({name:"sendTransaction",call:"personal_sendTransaction",params:2,inputFormatter:[u.inputTransactionFormatter,null]}),new o({name:"signTransaction",call:"personal_signTransaction",params:2,inputFormatter:[u.inputTransactionFormatter,null]}),new o({name:"sign",call:"personal_sign",params:3,inputFormatter:[u.inputSignFormatter,u.inputAddressFormatter,null]}),new o({name:"ecRecover",call:"personal_ecRecover",params:2,inputFormatter:[u.inputSignFormatter,null]})];c.forEach((function(t){t.attachToObject(e),t.setRequestManager(e._requestManager),t.defaultBlock=e.defaultBlock,t.defaultAccount=e.defaultAccount}))};(0,r.addProviders)(c);var s=c;t.default=s},function(e,t,n){"use strict";var r=n(133),o=n(165),a=n(79),i=function(){var e=this;r.packageInit(this,arguments),[new o({name:"getId",call:"net_version",params:0,outputFormatter:parseInt}),new o({name:"isListening",call:"net_listening",params:0}),new o({name:"getPeerCount",call:"net_peerCount",params:0,outputFormatter:a.hexToNumber})].forEach((function(t){t.attachToObject(e),t.setRequestManager(e._requestManager)}))};r.addProviders(i),e.exports=i},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0});var o={Client:!0};Object.defineProperty(t,"Client",{enumerable:!0,get:function(){return i.default}});var a=n(807);Object.keys(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||e in t&&t[e]===a[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return a[e]}}))}));var i=r(n(935))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=r(n(401)),p=r(n(89)),h=r(n(147)),y=r(n(260)),b=r(n(406)),m=r(n(416)),v=n(833),g=n(834),k=A(n(102)),_=A(n(405)),w=A(n(837));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:"";return(0,v.createKeystore)(this.toBytesRaw(),e)}}],[{key:"generateED25519",value:function(){return new O(y.default.generate())}},{key:"generateECDSA",value:function(){return new O(b.default.generate())}},{key:"generate",value:function(){return O.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",O.generateED25519Async());case 1:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=O,e.next=3,y.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=O,e.next=3,b.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){try{return new O(y.default.fromBytes(e))}catch(e){}try{return new O(b.default.fromBytes(e))}catch(e){}throw new p.default("invalid private key length: ".concat(e.length," bytes"))}},{key:"fromBytesECDSA",value:function(e){return new O(b.default.fromBytes(e))}},{key:"fromBytesED25519",value:function(e){return new O(y.default.fromBytes(e))}},{key:"fromString",value:function(e){return O.fromBytes(k.decode(e))}},{key:"fromStringECDSA",value:function(e){return O.fromBytesECDSA(k.decode(e))}},{key:"fromStringED25519",value:function(e){return O.fromBytesED25519(k.decode(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"","string"!=typeof t){e.next=7;break}return e.next=4,d.default.fromString(t);case 4:e.t0=e.sent,e.next=8;break;case 7:e.t0=t;case 8:return e.abrupt("return",e.t0.toPrivateKey(n));case 9:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=O,e.next=4,(0,v.loadKeystore)(t,n);case 4:return e.t1=e.sent,e.abrupt("return",e.t0.fromBytes.call(e.t0,e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:"",e.next=3,(0,g.read)(t,n);case 3:if(!((r=e.sent)instanceof y.default||r instanceof b.default)){e.next=6;break}return e.abrupt("return",new O(r));case 6:return e.abrupt("return",O.fromBytes(r));case 7:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),O}(h.default);t.default=P},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(11)),u=r(n(42)),c=r(n(8)),s=r(n(1)),l=r(n(2)),f=r(n(400)),d=r(n(260)),p=r(n(403)),h=r(n(262)),y=r(n(810)),b=r(n(811)),m=r(n(201)),v=T(n(404)),g=T(n(202)),k=T(n(167)),_=T(n(405)),w=T(n(812)),I=T(n(261));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var O=function(){function e(t){var n=t.words,r=t.legacy;(0,s.default)(this,e),this.words=n,this._isLegacy=r}var t,n,r,o,v,A,T;return(0,l.default)(e,[{key:"toPrivateKey",value:(T=(0,c.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",!this._isLegacy){e.next=5;break}if(!(t.length>0)){e.next=4;break}throw new Error("legacy 22-word mnemonics do not support passphrases");case 4:return e.abrupt("return",this.toLegacyPrivateKey());case 5:return e.next=7,this._toPrivateKey(t);case 7:return e.abrupt("return",e.sent);case 8:case"end":return e.stop()}}),e,this)}))),function(){return T.apply(this,arguments)})},{key:"_validate",value:(A=(0,c.default)(a.default.mark((function e(){var t,n,r,o,c,s,l,f,d,m,v,g,k;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._isLegacy){e.next=12;break}if(22===this.words.length){e.next=3;break}throw new p.default(this,h.default.BadLength,[]);case 3:if(!((t=this.words.reduce((function(e,t,n){return y.default.includes(t.toLowerCase())?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=6;break}throw new p.default(this,h.default.UnknownWords,t);case 6:if(n=w.legacy1(this.words,y.default),r=(0,i.default)(n,2),o=r[0],c=r[1],s=w.crc8(o),c===s){e.next=10;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 10:e.next=28;break;case 12:if(12===this.words.length||24===this.words.length){e.next=14;break}throw new p.default(this,h.default.BadLength,[]);case 14:if(!((l=this.words.reduce((function(e,t,n){return b.default.includes(t)?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=17;break}throw new p.default(this,h.default.UnknownWords,l);case 17:return f=this.words.map((function(e){return b.default.indexOf(e).toString(2).padStart(11,"0")})).join(""),d=32*Math.floor(f.length/33),m=f.slice(0,d),v=f.slice(d),g=m.match(/(.{1,8})/g),k=g.map(E),e.next=25,S(Uint8Array.from(k));case 25:if(e.sent===v){e.next=28;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 28:return e.abrupt("return",this);case 29:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"_toPrivateKey",value:(v=(0,c.default)(a.default.mark((function e(){var t,n,r,o,i,u,c,s,l,p,h,y,b=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=b.length>0&&void 0!==b[0]?b[0]:"",n=this.words.join(" "),r="mnemonic".concat(t),e.next=5,g.deriveKey(k.HashAlgorithm.Sha512,n,r,2048,64);case 5:return o=e.sent,e.next=8,k.hash(k.HashAlgorithm.Sha512,"ed25519 seed",o);case 8:i=e.sent,u=i.subarray(0,32),c=i.subarray(32),s=0,l=[44,3030,0,0];case 12:if(!(s>8,i=255&o;a?n.push(a,i):n.push(i)}return n},r.zero2=o,r.toHex=a,r.encode=function(e,t){return"hex"===t?a(e):e}},function(e,t,n){"use strict";var r,o=n(0)(n(3));function a(e){this.rand=e}if(e.exports=function(e){return r||(r=new a(null)),r.generate(e)},e.exports.Rand=a,a.prototype.generate=function(e){return this._rand(e)},a.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),n=0;n>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(80),o=n(168),a=n(413),i=n(119),u=r.sum32,c=r.sum32_4,s=r.sum32_5,l=a.ch32,f=a.maj32,d=a.s0_256,p=a.s1_256,h=a.g0_256,y=a.g1_256,b=o.BlockHash,m=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function v(){if(!(this instanceof v))return new v;b.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=m,this.W=new Array(64)}r.inherits(v,b),e.exports=v,v.blockSize=512,v.outSize=256,v.hmacStrength=192,v.padLength=64,v.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){c=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(c)throw a}}}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n4)throw new Error("unsupported DER integer length of ".concat(t," bytes"));return n.getUint32(0,!1)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(200)),p=r(n(420)),h=r(n(90)),y=r(n(37)),b=r(n(103));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var g=function(e){(0,s.default)(g,e);var t,n,r,o,l,f,y,b,m=v(g);function g(e){var t;return(0,u.default)(this,g),(t=m.call(this))._key=e,t}return(0,c.default)(g,[{key:"derive",value:(b=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,this._key.derive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return b.apply(this,arguments)})},{key:"legacyDerive",value:(y=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,this._key.legacyDerive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"publicKey",get:function(){return new h.default(this._key.publicKey)}},{key:"sign",value:function(e){return this._key.sign(e)}},{key:"signTransaction",value:function(e){var t=e._signedTransactions.get(0),n=null!=t.bodyBytes?this.sign(t.bodyBytes):new Uint8Array;return e.addSignature(this.publicKey,n),n}},{key:"isDerivable",value:function(){return this._key.isDerivable()}},{key:"toBytes",value:function(){return this._key.toBytes()}},{key:"toBytesDer",value:function(){return this._key.toBytesDer()}},{key:"toBytesRaw",value:function(){return this._key.toBytesRaw()}},{key:"toString",value:function(){return this._key.toStringDer()}},{key:"toStringDer",value:function(){return this._key.toStringDer()}},{key:"toStringRaw",value:function(){return this._key.toStringRaw()}},{key:"toKeystore",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._key.toKeystore(e)}},{key:"_toProtobufKey",value:function(){return this.publicKey._toProtobufKey()}},{key:"toAccountId",value:function(e,t){return this.publicKey.toAccountId(e,t)}}],[{key:"generateED25519",value:function(){return new g(d.PrivateKey.generateED25519())}},{key:"generateECDSA",value:function(){return new g(d.PrivateKey.generateECDSA())}},{key:"generate",value:function(){return g.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,d.PrivateKey.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,d.PrivateKey.generateED25519Async();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,d.PrivateKey.generateECDSAAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){return new g(d.PrivateKey.fromBytes(e))}},{key:"fromBytesECDSA",value:function(e){return new g(d.PrivateKey.fromBytesECDSA(e))}},{key:"fromBytesED25519",value:function(e){return new g(d.PrivateKey.fromBytesED25519(e))}},{key:"fromString",value:function(e){return new g(d.PrivateKey.fromString(e))}},{key:"fromStringECDSA",value:function(e){return new g(d.PrivateKey.fromStringECDSA(e))}},{key:"fromStringED25519",value:function(e){return new g(d.PrivateKey.fromStringED25519(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"",!(t instanceof p.default)){e.next=7;break}return e.t0=g,e.next=5,d.PrivateKey.fromMnemonic(t._mnemonic,n);case 5:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 7:return e.t2=g,e.next=10,d.PrivateKey.fromMnemonic(t,n);case 10:return e.t3=e.sent,e.abrupt("return",new e.t2(e.t3));case 12:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=g,e.next=4,d.PrivateKey.fromKeystore(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=g,e.next=4,d.PrivateKey.fromPem(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),g}(y.default);t.default=g,b.default.privateKeyConstructor=function(e){return new g(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(200)),l=r(n(103));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}var d=function(){function e(t){(0,u.default)(this,e),this._mnemonic=t}var t,n,r,o,f,d;return(0,c.default)(e,[{key:"toPrivateKey",value:(d=(0,i.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",null!=l.default.privateKeyConstructor){e.next=3;break}throw new Error("`PrivateKey` has not been loaded");case 3:return e.t0=l.default,e.next=6,this._mnemonic.toPrivateKey(t);case 6:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 8:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"toLegacyPrivateKey",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=l.default.privateKeyConstructor){e.next=2;break}throw new Error("`PrivateKey` has not been loaded");case 2:return e.t0=l.default,e.next=5,this._mnemonic.toLegacyPrivateKey();case 5:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 7:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"toString",value:function(){return this._mnemonic.toString()}}],[{key:"generate",value:(o=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(24);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return o.apply(this,arguments)})},{key:"generate12",value:(r=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(12);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return r.apply(this,arguments)})},{key:"fromWords",value:(n=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromWords(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return n.apply(this,arguments)})},{key:"fromString",value:(t=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromString(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(118)),u=function(){function e(t,n,r){(0,o.default)(this,e),this._name=t,this._symbol=n,this._tinybar=r,Object.freeze(this)}return(0,a.default)(e,null,[{key:"fromString",value:function(t){switch(t){case e.Hbar._symbol:return e.Hbar;case e.Tinybar._symbol:return e.Tinybar;case e.Microbar._symbol:return e.Microbar;case e.Millibar._symbol:return e.Millibar;case e.Kilobar._symbol:return e.Kilobar;case e.Megabar._symbol:return e.Megabar;case e.Gigabar._symbol:return e.Gigabar;default:throw new Error("Unknown unit.")}}}]),e}();t.default=u,u.Tinybar=new u("tinybar","tℏ",new i.default(1)),u.Microbar=new u("microbar","μℏ",new i.default(100)),u.Millibar=new u("millibar","mℏ",new i.default(1e5)),u.Hbar=new u("hbar","ℏ",new i.default("100000000")),u.Kilobar=new u("kilobar","kℏ",new i.default(1e3).multipliedBy(new i.default("100000000"))),u.Megabar=new u("megabar","Mℏ",new i.default(1e6).multipliedBy(new i.default("100000000"))),u.Gigabar=new u("gigabar","Gℏ",new i.default("1000000000").multipliedBy(new i.default("100000000")))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(7)),a=r(n(8)),i=r(n(1)),u=r(n(2)),c=r(n(204)),s=r(n(121)),l=r(n(423)),f=r(n(429)),d=function(){function e(t){(0,i.default)(this,e),this.nodeId=t.nodeId,this.transactionHash=t.transactionHash,this.transactionId=t.transactionId,Object.freeze(this)}var t,n;return(0,u.default)(e,[{key:"getReceipt",value:(n=(0,a.default)(o.default.mark((function e(t){var n;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(new l.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t);case 2:if((n=e.sent).status===s.default.Success){e.next=5;break}throw new c.default({transactionReceipt:n,status:n.status,transactionId:this.transactionId});case 5:return e.abrupt("return",n);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"getRecord",value:(t=(0,a.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getReceipt(t);case 2:return e.abrupt("return",(new f.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),f=r(n(121)),d=r(n(206)),p=r(n(65)),h=r(n(169)),y=r(n(204)),b=n(123),m=n(31);function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeDuplicates",value:function(e){return this._includeDuplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._includeDuplicates&&this._includeDuplicates}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:m.ResponseCodeEnum.OK);switch(r){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return b.ExecutionState.Retry;case f.default.Ok:break;default:return b.ExecutionState.Error}var o=t.transactionGetReceipt.receipt.status;switch(r=f.default._fromCode(o)){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return b.ExecutionState.Retry;case f.default.Success:return b.ExecutionState.Finished;default:return b.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:m.ResponseCodeEnum.OK);switch(r){case f.default.Ok:break;default:return new h.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetReceipt,a=o.receipt.status;return r=f.default._fromCode(a),new y.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf(o)})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTransactionReceipts(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetReceipt.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetReceipt;return Promise.resolve(d.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetReceipt:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeDuplicates:this._includeDuplicates,includeChildReceipts:this._includeChildren}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetReceipt;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0,includeChildren:null!=t.includeChildReceipts?t.includeChildReceipts:void 0})}}]),n}(l.default);t.default=k,l.QUERY_REGISTRY.set("transactionGetReceipt",k._fromProtobuf)},function(e,t,n){"use strict";e.exports=n(842)},function(e,t,n){"use strict";e.exports=f;var r,o=n(122),a=o.LongBits,i=o.base64,u=o.utf8;function c(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}function s(){}function l(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}function f(){this.len=0,this.head=new c(s,0,0),this.tail=this.head,this.states=null}var d=function(){return o.Buffer?function(){return(f.create=function(){return new r})()}:function(){return new f}};function p(e,t,n){t[n]=255&e}function h(e,t){this.len=e,this.next=void 0,this.val=t}function y(e,t,n){for(;e.hi;)t[n++]=127&e.lo|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[n++]=127&e.lo|128,e.lo=e.lo>>>7;t[n++]=e.lo}function b(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}f.create=d(),f.alloc=function(e){return new o.Array(e)},o.Array!==Array&&(f.alloc=o.pool(f.alloc,o.Array.prototype.subarray)),f.prototype._push=function(e,t,n){return this.tail=this.tail.next=new c(e,t,n),this.len+=t,this},h.prototype=Object.create(c.prototype),h.prototype.fn=function(e,t,n){for(;e>127;)t[n++]=127&e|128,e>>>=7;t[n]=e},f.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new h((e>>>=0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this},f.prototype.int32=function(e){return e<0?this._push(y,10,a.fromNumber(e)):this.uint32(e)},f.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)},f.prototype.uint64=function(e){var t=a.from(e);return this._push(y,t.length(),t)},f.prototype.int64=f.prototype.uint64,f.prototype.sint64=function(e){var t=a.from(e).zzEncode();return this._push(y,t.length(),t)},f.prototype.bool=function(e){return this._push(p,1,e?1:0)},f.prototype.fixed32=function(e){return this._push(b,4,e>>>0)},f.prototype.sfixed32=f.prototype.fixed32,f.prototype.fixed64=function(e){var t=a.from(e);return this._push(b,4,t.lo)._push(b,4,t.hi)},f.prototype.sfixed64=f.prototype.fixed64,f.prototype.float=function(e){return this._push(o.float.writeFloatLE,4,e)},f.prototype.double=function(e){return this._push(o.float.writeDoubleLE,8,e)};var m=o.Array.prototype.set?function(e,t,n){t.set(e,n)}:function(e,t,n){for(var r=0;r>>0;if(!t)return this._push(p,1,0);if(o.isString(e)){var n=f.alloc(t=i.length(e));i.decode(e,n,0),e=n}return this.uint32(t)._push(m,t,e)},f.prototype.string=function(e){var t=u.length(e);return t?this.uint32(t)._push(u.write,t,e):this._push(p,1,0)},f.prototype.fork=function(){return this.states=new l(this),this.head=this.tail=new c(s,0,0),this.len=0,this},f.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new c(s,0,0),this.len=0),this},f.prototype.ldelim=function(){var e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=t,this.len+=n),this},f.prototype.finish=function(){for(var e=this.head.next,t=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t},f._configure=function(e){r=e,f.create=d(),r._configure()}},function(e,t,n){"use strict";e.exports=c;var r,o=n(122),a=o.LongBits,i=o.utf8;function u(e,t){return RangeError("index out of range: "+e.pos+" + "+(t||1)+" > "+e.len)}function c(e){this.buf=e,this.pos=0,this.len=e.length}var s,l="undefined"!=typeof Uint8Array?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new c(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new c(e);throw Error("illegal buffer")},f=function(){return o.Buffer?function(e){return(c.create=function(e){return o.Buffer.isBuffer(e)?new r(e):l(e)})(e)}:l};function d(){var e=new a(0,0),t=0;if(!(this.len-this.pos>4)){for(;t<3;++t){if(this.pos>=this.len)throw u(this);if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(127&this.buf[this.pos++])<<7*t)>>>0,e}for(;t<4;++t)if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(127&this.buf[this.pos])<<28)>>>0,e.hi=(e.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return e;if(t=0,this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw u(this);if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}function p(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}function h(){if(this.pos+8>this.len)throw u(this,8);return new a(p(this.buf,this.pos+=4),p(this.buf,this.pos+=4))}c.create=f(),c.prototype._slice=o.Array.prototype.subarray||o.Array.prototype.slice,c.prototype.uint32=(s=4294967295,function(){if(s=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return s;if((this.pos+=5)>this.len)throw this.pos=this.len,u(this,10);return s}),c.prototype.int32=function(){return 0|this.uint32()},c.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(1&e)|0},c.prototype.bool=function(){return 0!==this.uint32()},c.prototype.fixed32=function(){if(this.pos+4>this.len)throw u(this,4);return p(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw u(this,4);return 0|p(this.buf,this.pos+=4)},c.prototype.float=function(){if(this.pos+4>this.len)throw u(this,4);var e=o.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e},c.prototype.double=function(){if(this.pos+8>this.len)throw u(this,4);var e=o.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e},c.prototype.bytes=function(){var e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw u(this,e);return this.pos+=e,Array.isArray(this.buf)?this.buf.slice(t,n):t===n?new this.buf.constructor(0):this._slice.call(this.buf,t,n)},c.prototype.string=function(){var e=this.bytes();return i.read(e,0,e.length)},c.prototype.skip=function(e){if("number"==typeof e){if(this.pos+e>this.len)throw u(this,e);this.pos+=e}else do{if(this.pos>=this.len)throw u(this)}while(128&this.buf[this.pos++]);return this},c.prototype.skipType=function(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(e=7&this.uint32());)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+e+" at offset "+this.pos)}return this},c._configure=function(e){r=e,c.create=f(),r._configure();var t=o.Long?"toLong":"toNumber";o.merge(c.prototype,{int64:function(){return d.call(this)[t](!1)},uint64:function(){return d.call(this)[t](!0)},sint64:function(){return d.call(this).zzDecode()[t](!1)},fixed64:function(){return h.call(this)[t](!0)},sfixed64:function(){return h.call(this)[t](!1)}})}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.Ok:return"OK";case e.Cancelled:return"CANCELLED";case e.Unknown:return"UNKNOWN";case e.InvalidArgument:return"INVALID_ARGUMENT";case e.DeadlineExceeded:return"DEADLINE_EXCEEDED";case e.NotFound:return"NOT_FOUND";case e.AlreadyExists:return"ALREADY_EXISTS";case e.PermissionDenied:return"PERMISSION_DENIED";case e.Unauthenticated:return"UNAUTHENTICATED";case e.ResourceExhausted:return"RESOURCE_EXHAUSTED";case e.FailedPrecondition:return"FAILED_PRECONDITION";case e.Aborted:return"ABORTED";case e.OutOfRange:return"OUT_OF_RANGE";case e.Unimplemented:return"UNIMPLEMENTED";case e.Internal:return"INTERNAL";case e.Unavailable:return"UNAVAILABLE";case e.DataLoss:return"DATA_LOSS";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromValue",value:function(t){switch(t){case 0:return e.Ok;case 1:return e.Cancelled;case 2:return e.Unknown;case 3:return e.InvalidArgument;case 4:return e.DeadlineExceeded;case 5:return e.NotFound;case 6:return e.AlreadyExists;case 7:return e.PermissionDenied;case 16:return e.Unauthenticated;case 8:return e.ResourceExhausted;case 9:return e.FailedPrecondition;case 10:return e.Aborted;case 11:return e.OutOfRange;case 12:return e.Unimplemented;case 13:return e.Internal;case 14:return e.Unavailable;case 15:return e.DataLoss;default:throw new Error("(BUG) non-exhaustive GrpcStatus switch statement")}}}]),e}();t.default=i,i.Ok=new i(0),i.Cancelled=new i(1),i.Unknown=new i(2),i.InvalidArgument=new i(3),i.DeadlineExceeded=new i(4),i.NotFound=new i(5),i.AlreadyExists=new i(6),i.PermissionDenied=new i(7),i.Unauthenticated=new i(16),i.ResourceExhausted=new i(8),i.FailedPrecondition=new i(9),i.Aborted=new i(10),i.OutOfRange=new i(11),i.Unimplemented=new i(12),i.Internal=new i(13),i.Unavailable=new i(14),i.DataLoss=new i(15)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(17)),u=function(){function e(t){(0,o.default)(this,e),this.hbars=t.hbars,this.cents=t.cents,this.expirationTime=t.expirationTime,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{hbarEquiv:this.hbars,centEquiv:this.cents,expirationTime:{seconds:i.default.fromNumber(this.expirationTime.getSeconds())}}}}],[{key:"_fromProtobuf",value:function(t){return new e({hbars:t.hbarEquiv,cents:t.centEquiv,expirationTime:new Date(null!=t.expirationTime&&null!=t.expirationTime.seconds?t.expirationTime.seconds instanceof i.default?t.expirationTime.seconds.toInt():t.expirationTime.seconds:0)})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),f=r(n(268)),d=r(n(206)),p=r(n(65)),h=r(n(121)),y=r(n(169)),b=r(n(204)),m=n(123),v=n(31);function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var _=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"setIncludeDuplicates",value:function(e){return this._duplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._duplicates&&this._duplicates}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return m.ExecutionState.Retry;case h.default.Ok:break;default:return m.ExecutionState.Error}var o=t.transactionGetRecord;if(o.header.responseType===v.ResponseType.COST_ANSWER)return m.ExecutionState.Finished;var a=o.transactionRecord.receipt.status;switch(r=h.default._fromCode(a)){case h.default.Ok:case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return m.ExecutionState.Retry;case h.default.Success:return m.ExecutionState.Finished;default:return m.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Ok:break;default:return new y.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetRecord.transactionRecord.receipt,a=o.status;return r=h.default._fromCode(a),new b.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf({receipt:o})})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTxRecordByTxID(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetRecord.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetRecord;return Promise.resolve(f.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetRecord:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeChildRecords:this._includeChildren,includeDuplicates:this._includeDuplicates}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetRecord;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeChildren:null!=t.includeChildRecords?t.includeChildRecords:void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0})}}]),n}(l.default);t.default=_,l.QUERY_REGISTRY.set("transactionGetRecord",_._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(50)),u=function(){function e(t){(0,o.default)(this,e),this.contractId=t.contractId,this.bloom=t.bloom,this.topics=t.topics,this.data=t.data,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),bloom:this.bloom,topic:this.topics,data:this.data}}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:i.default._fromProtobuf(t.contractID),bloom:null!=t.bloom?t.bloom:new Uint8Array,topics:null!=t.topic?t.topic:[],data:null!=t.data?t.data:new Uint8Array})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=r(n(10)),d=r(n(432));function p(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return h(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return h(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId),this._amount,null!=t.amount&&this.setAmount(t.amount),this._payerAccountIds,null!=t.payerAccountIds&&this.setPayerAccountIds(t.payerAccountIds)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?u.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?i.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?c.default.fromNumber(e):e,this}},{key:"payerAccountIds",get:function(){return this._payerAccountIds}},{key:"setPayerAccountIds",value:function(e){return this._payerAccountIds=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,amount:this._amount,effectivePayerAccountId:null!=this._payerAccountIds?this._payerAccountIds.map((function(e){return e._toProtobuf()})):null}}}],[{key:"_fromProtobuf",value:function(t){return new e({feeCollectorAccountId:null!=t.feeCollectorAccountId?u.default._fromProtobuf(t.feeCollectorAccountId):void 0,tokenId:null!=t.tokenId?i.default._fromProtobuf(t.tokenId):void 0,amount:null!=t.amount?t.amount:void 0,payerAccountIds:null!=t.effectivePayerAccountId?t.effectivePayerAccountId.map((function(e){return u.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(17)),u=r(n(10)),c=r(n(24));function s(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._contractId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoGetBalance(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptogetAccountBalance.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptogetAccountBalance;return Promise.resolve(p.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{cryptogetAccountBalance:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptogetAccountBalance;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,contractId:null!=t.contractID?d.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=b,l.QUERY_REGISTRY.set("cryptogetAccountBalance",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(10)),c=r(n(271)),s=r(n(28)),l=r(n(38)),f=r(n(17)),d=r(n(440)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31)),h=r(n(54)),y=r(n(37)),b=r(n(90)),m=r(n(81)),v=r(n(207)),g=r(n(208)),k=r(n(209));function _(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(_=function(e){return e?n:t})(e)}var w=function(){function e(t){(0,a.default)(this,e),this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.isDeleted=t.isDeleted,this.proxyAccountId=t.proxyAccountId,this.proxyReceived=t.proxyReceived,this.key=t.key,this.balance=t.balance,this.sendRecordThreshold=t.sendRecordThreshold,this.receiveRecordThreshold=t.receiveRecordThreshold,this.isReceiverSignatureRequired=t.isReceiverSignatureRequired,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.liveHashes=t.liveHashes,this.tokenRelationships=t.tokenRelationships,this.accountMemo=t.accountMemo,this.ownedNfts=t.ownedNfts,this.maxAutomaticTokenAssociations=t.maxAutomaticTokenAssociations,this.aliasKey=t.aliasKey,this.ledgerId=t.ledgerId,this.hbarAllowances=t.hbarAllowances,this.tokenAllowances=t.tokenAllowances,this.nftAllowances=t.nftAllowances,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,deleted:this.isDeleted,proxyAccountID:null!=this.proxyAccountId?this.proxyAccountId._toProtobuf():null,proxyReceived:this.proxyReceived.toTinybars(),key:this.key._toProtobufKey(),balance:this.balance.toTinybars(),generateSendRecordThreshold:this.sendRecordThreshold.toTinybars(),generateReceiveRecordThreshold:this.receiveRecordThreshold.toTinybars(),receiverSigRequired:this.isReceiverSignatureRequired,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:this.autoRenewPeriod._toProtobuf(),liveHashes:this.liveHashes.map((function(e){return e._toProtobuf()})),tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,memo:this.accountMemo,ownedNfts:this.ownedNfts,maxAutomaticTokenAssociations:this.maxAutomaticTokenAssociations.toInt(),alias:null!=this.aliasKey?p.Key.encode(this.aliasKey._toProtobufKey()).finish():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.CryptoGetInfoResponse.AccountInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=null!=t.alias&&t.alias.length>0?y.default._fromProtobufKey(p.Key.decode(t.alias)):null;return n instanceof b.default||(n=null),new e({accountId:u.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:null,isDeleted:null!=t.deleted&&t.deleted,key:y.default._fromProtobufKey(t.key),balance:s.default.fromTinybars(null!=t.balance?t.balance:0),sendRecordThreshold:s.default.fromTinybars(null!=t.generateSendRecordThreshold?t.generateSendRecordThreshold:0),receiveRecordThreshold:s.default.fromTinybars(null!=t.generateReceiveRecordThreshold?t.generateReceiveRecordThreshold:0),isReceiverSignatureRequired:null!=t.receiverSigRequired&&t.receiverSigRequired,expirationTime:l.default._fromProtobuf(t.expirationTime),autoRenewPeriod:null!=t.autoRenewPeriod?new h.default(t.autoRenewPeriod.seconds):new h.default(0),proxyAccountId:null!=t.proxyAccountID&&0!==f.default.fromValue(t.proxyAccountID.shardNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.realmNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.accountNum).toInt()?u.default._fromProtobuf(t.proxyAccountID):null,proxyReceived:s.default.fromTinybars(null!=t.proxyReceived?t.proxyReceived:0),liveHashes:(null!=t.liveHashes?t.liveHashes:[]).map((function(e){return c.default._fromProtobuf(e)})),tokenRelationships:d.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),accountMemo:null!=t.memo?t.memo:"",ownedNfts:t.ownedNfts?t.ownedNfts:f.default.ZERO,maxAutomaticTokenAssociations:t.maxAutomaticTokenAssociations?f.default.fromNumber(t.maxAutomaticTokenAssociations):f.default.ZERO,aliasKey:n,ledgerId:null!=t.ledgerId?m.default.fromBytes(t.ledgerId):null,hbarAllowances:(null!=t.cryptoAllowances?t.cryptoAllowances:[]).map((function(e){return v.default._fromProtobuf(e)})),tokenAllowances:(null!=t.tokenAllowances?t.tokenAllowances:[]).map((function(e){return g.default._fromProtobuf(e)})),nftAllowances:(null!=t.nftAllowances?t.nftAllowances:[]).map((function(e){return k.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.CryptoGetInfoResponse.AccountInfo.decode(t))}}]),e}();t.default=w},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=r(n(870));function d(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._publicKey=null,null!=t.publicKey&&this.setPublicKey(t.publicKey),this._nodeId=null,null!=t.nodeId&&this.setNodeId(t.nodeId),this._accountId=null,null!=t.accountId&&this.setAccountId(t.accountId),this._certHash=null,null!=t.certHash&&this.setCertHash(t.certHash),this._addresses=[],null!=t.addresses&&this.setAddresses(t.addresses),this._description=null,null!=t.description&&this.setDescription(t.description),this._stake=null,null!=t.stake&&this.setStake(t.stake)}return(0,i.default)(e,[{key:"publicKey",get:function(){return this._publicKey}},{key:"setPublicKey",value:function(e){return this._publicKey=e,this}},{key:"nodeId",get:function(){return this._nodeId}},{key:"setNodeId",value:function(e){return this._nodeId=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?u.default.fromString(e):e.clone(),this}},{key:"certHash",get:function(){return this._certHash}},{key:"setCertHash",value:function(e){return this._certHash=e,this}},{key:"addresses",get:function(){return this._addresses}},{key:"setAddresses",value:function(e){return this._addresses=e,this}},{key:"description",get:function(){return this._description}},{key:"setDescription",value:function(e){return this._description=e,this}},{key:"stake",get:function(){return this._stake}},{key:"setStake",value:function(e){return this._stake=e,this}},{key:"_toProtobuf",value:function(){return{RSA_PubKey:this._publicKey,nodeId:this._nodeId,nodeAccountId:null!=this._accountId?this._accountId._toProtobuf():null,nodeCertHash:this._certHash,serviceEndpoint:this._addresses.map((function(e){return e._toProtobuf()})),description:this._description,stake:this._stake}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{publicKey:this._publicKey,nodeId:null!=this._nodeId?this._nodeId.toString():null,accountId:null!=this._accountId?this._accountId.toString():null,certHash:null!=this._certHash?s.decode(this._certHash):null,addresses:this._addresses.map((function(e){return e.toJSON()})),description:this._description,stake:null!=this._stake?this._stake.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({publicKey:null!=t.RSA_PubKey?t.RSA_PubKey:void 0,nodeId:null!=t.nodeId?t.nodeId:void 0,accountId:null!=t.nodeAccountId?u.default._fromProtobuf(t.nodeAccountId):void 0,certHash:null!=t.nodeCertHash?t.nodeCertHash:void 0,addresses:null!=t.serviceEndpoint?t.serviceEndpoint.map((function(e){return c.default._fromProtobuf(e)})):void 0,description:null!=t.description?t.description:void 0,stake:null!=t.stake?t.stake:void 0})}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(442)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._nodeAddresses=[],null!=t.nodeAddresses&&this.setNodeAddresses(t.nodeAddresses)}return(0,a.default)(e,[{key:"nodeAddresses",get:function(){return this._nodeAddresses}},{key:"setNodeAddresses",value:function(e){return this._nodeAddresses=e,this}},{key:"_toProtobuf",value:function(){return{nodeAddress:this._nodeAddresses.map((function(e){return e._toProtobuf()}))}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{nodeAddresses:this._nodeAddresses.map((function(e){return e.toJSON()}))}}}],[{key:"_fromProtobuf",value:function(t){return new e({nodeAddresses:null!=t.nodeAddress?t.nodeAddress.map((function(e){return i.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.ArgumentType=void 0;var a=r(n(1)),i=r(n(2)),u=n(881),c=f(n(64)),s=f(n(91));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d={uint8:0,int8:1,uint16:2,int16:3,uint32:4,int32:5,uint64:6,int64:7,uint256:8,int256:9,string:10,bool:11,bytes:12,bytes32:13,address:14,func:15};t.ArgumentType=d;var p=function(){function e(t){(0,a.default)(this,e),this.name=null,this._params="",this._paramTypes=[],null!=t&&(this._name=t)}return(0,i.default)(e,[{key:"addString",value:function(){return this._addParam({ty:d.string,array:!1})}},{key:"addStringArray",value:function(){return this._addParam({ty:d.string,array:!0})}},{key:"addBytes",value:function(){return this._addParam({ty:d.bytes,array:!1})}},{key:"addBytes32",value:function(){return this._addParam({ty:d.bytes32,array:!1})}},{key:"addBytesArray",value:function(){return this._addParam({ty:d.bytes,array:!0})}},{key:"addBytes32Array",value:function(){return this._addParam({ty:d.bytes32,array:!0})}},{key:"addInt8",value:function(){return this._addParam({ty:d.int8,array:!1})}},{key:"addInt32",value:function(){return this._addParam({ty:d.int32,array:!1})}},{key:"addInt64",value:function(){return this._addParam({ty:d.int64,array:!1})}},{key:"addInt256",value:function(){return this._addParam({ty:d.int256,array:!1})}},{key:"addInt8Array",value:function(){return this._addParam({ty:d.int8,array:!0})}},{key:"addInt32Array",value:function(){return this._addParam({ty:d.int32,array:!0})}},{key:"addInt64Array",value:function(){return this._addParam({ty:d.int64,array:!0})}},{key:"addInt256Array",value:function(){return this._addParam({ty:d.int256,array:!0})}},{key:"addUint8",value:function(){return this._addParam({ty:d.uint8,array:!1})}},{key:"addUint32",value:function(){return this._addParam({ty:d.uint32,array:!1})}},{key:"addUint64",value:function(){return this._addParam({ty:d.uint64,array:!1})}},{key:"addUint256",value:function(){return this._addParam({ty:d.uint256,array:!1})}},{key:"addUint8Array",value:function(){return this._addParam({ty:d.uint8,array:!0})}},{key:"addUint32Array",value:function(){return this._addParam({ty:d.uint32,array:!0})}},{key:"addUint64Array",value:function(){return this._addParam({ty:d.uint64,array:!0})}},{key:"addUint256Array",value:function(){return this._addParam({ty:d.uint256,array:!0})}},{key:"addBool",value:function(){return this._addParam({ty:d.bool,array:!1})}},{key:"addAddress",value:function(){return this._addParam({ty:d.address,array:!1})}},{key:"addAddressArray",value:function(){return this._addParam({ty:d.address,array:!0})}},{key:"addFunction",value:function(){return this._addParam({ty:d.func,array:!1})}},{key:"_addParam",value:function(e){return this._paramTypes.length>0&&(this._params+=","),this._params+=function(e){var t="";switch(e.ty){case d.uint8:t="uint8";break;case d.int8:t="int8";break;case d.uint16:t="uint16";break;case d.int16:t="int16";break;case d.uint32:t="uint32";break;case d.int32:t="int32";break;case d.uint64:t="uint64";break;case d.int64:t="int64";break;case d.uint256:t="uint256";break;case d.int256:t="int256";break;case d.string:t="string";break;case d.bool:t="bool";break;case d.bytes:t="bytes";break;case d.bytes32:t="bytes32";break;case d.address:t="address";break;case d.func:t="function";break;default:t=""}e.array&&(t+="[]");return t}(e),this._paramTypes.push(e),this}},{key:"_build",value:function(e){if(null!=e)this._name=e;else if(null==this._name)throw new Error("`name` required for ContractFunctionSelector");var t=c.encode(s.encode(this.toString()));return c.decode((0,u.keccak256)("0x".concat(t))).slice(0,4)}},{key:"toString",value:function(){return"".concat(null!=this._name?this._name.toString():"","(").concat(this._params,")")}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(50)),c=r(n(10)),s=r(n(38)),l=r(n(54)),f=r(n(28)),d=r(n(17)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31)),h=r(n(440)),y=r(n(37)),b=r(n(81));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}var v=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.storage=t.storage,this.contractMemo=t.contractMemo,this.balance=t.balance,this.isDeleted=t.isDeleted,this.tokenRelationships=t.tokenRelationships,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,storage:this.storage,memo:this.contractMemo,balance:this.balance.toTinybars(),deleted:this.isDeleted,tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.ContractGetInfoResponse.ContractInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.autoRenewPeriod.seconds;return new e({contractId:u.default._fromProtobuf(t.contractID),accountId:c.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:"",adminKey:null!=t.adminKey?y.default._fromProtobufKey(t.adminKey):null,expirationTime:s.default._fromProtobuf(t.expirationTime),autoRenewPeriod:new l.default(n),storage:null!=t.storage?t.storage instanceof d.default?t.storage:d.default.fromValue(t.storage):d.default.ZERO,contractMemo:null!=t.memo?t.memo:"",balance:f.default.fromTinybars(null!=t.balance?t.balance:0),isDeleted:t.deleted,tokenRelationships:h.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),ledgerId:null!=t.ledgerId?b.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.ContractGetInfoResponse.ContractInfo.decode(t))}}]),e}();t.default=v},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(53)),c=r(n(38)),s=r(n(17)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31)),f=r(n(120)),d=r(n(81));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}var h=function(){function e(t){(0,a.default)(this,e),this.fileId=t.fileId,this.size=t.size,this.expirationTime=t.expirationTime,this.isDeleted=t.isDeleted,this.keys=t.keys,this.fileMemo=t.fileMemo,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{fileID:this.fileId._toProtobuf(),size:this.size,expirationTime:this.expirationTime._toProtobuf(),deleted:this.isDeleted,keys:this.keys._toProtobufKey().keyList,memo:this.fileMemo,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return l.FileGetInfoResponse.FileInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.size;return new e({fileId:u.default._fromProtobuf(t.fileID),size:n instanceof s.default?n:s.default.fromValue(n),expirationTime:c.default._fromProtobuf(t.expirationTime),isDeleted:t.deleted,keys:null!=t.keys?f.default.__fromProtobufKeyList(t.keys):new f.default,fileMemo:null!=t.memo?t.memo:"",ledgerId:null!=t.ledgerId?d.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.FileGetInfoResponse.FileInfo.decode(t))}}]),e}();t.default=h},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(448)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}var l=function(){function e(t){(0,a.default)(this,e),this.protobufVersion=t.protobufVersion,this.servicesVesion=t.servicesVesion,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{hapiProtoVersion:this.protobufVersion._toProtobuf(),hederaServicesVersion:this.servicesVesion._toProtobuf()}}},{key:"toBytes",value:function(){return c.NetworkGetVersionInfoResponse.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({protobufVersion:u.default._fromProtobuf(t.hapiProtoVersion),servicesVesion:u.default._fromProtobuf(t.hederaServicesVersion)})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(c.NetworkGetVersionInfoResponse.decode(t))}}]),e}();t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.major=t.major,this.minor=t.minor,this.patch=t.patch,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{major:this.major,minor:this.minor,patch:this.patch}}},{key:"toBytes",value:function(){return u.SemanticVersion.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({major:t.major,minor:t.minor,patch:t.patch})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.SemanticVersion.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(109)),a=r(n(1)),i=r(n(2)),u=r(n(124)),c=r(n(10)),s=r(n(38)),l=r(n(19)),f=n(31),d=r(n(65)),p=r(n(37)),h=r(n(120)),y=function(){function e(t){(0,a.default)(this,e),this.scheduleId=t.scheduleId,this.creatorAccountId=t.creatorAccountID,this.payerAccountId=t.payerAccountID,this.schedulableTransactionBody=t.schedulableTransactionBody,this.signers=t.signers,this.scheduleMemo=t.scheduleMemo,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.executed=t.executed,this.deleted=t.deleted,this.scheduledTransactionId=t.scheduledTransactionId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{scheduleID:null!=this.scheduleId?this.scheduleId._toProtobuf():null,creatorAccountID:null!=this.creatorAccountId?this.creatorAccountId._toProtobuf():null,payerAccountID:null!=this.payerAccountId?this.payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this.schedulableTransactionBody?this.schedulableTransactionBody:null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,signers:null!=this.signers?this.signers._toProtobufKey().keyList:null,memo:null!=this.scheduleMemo?this.scheduleMemo:"",expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,scheduledTransactionID:null!=this.scheduledTransactionId?this.scheduledTransactionId._toProtobuf():null}}},{key:"scheduledTransaction",get:function(){if(null==this.schedulableTransactionBody)throw new Error("Scheduled transaction body is empty");var e=new f.SchedulableTransactionBody(this.schedulableTransactionBody),t=e.data;return l.default.fromBytes(f.TransactionList.encode({transactionList:[{signedTransactionBytes:f.SignedTransaction.encode({bodyBytes:f.TransactionBody.encode((0,o.default)({transactionFee:this.schedulableTransactionBody.transactionFee,memo:this.schedulableTransactionBody.memo},t,e[t])).finish()}).finish()}]}).finish())}}],[{key:"_fromProtobuf",value:function(t){return new e({scheduleId:u.default._fromProtobuf(t.scheduleID),creatorAccountID:null!=t.creatorAccountID?c.default._fromProtobuf(t.creatorAccountID):null,payerAccountID:null!=t.payerAccountID?c.default._fromProtobuf(t.payerAccountID):null,schedulableTransactionBody:null!=t.scheduledTransactionBody?t.scheduledTransactionBody:null,adminKey:null!=t.adminKey?p.default._fromProtobufKey(t.adminKey):null,signers:null!=t.signers?h.default.__fromProtobufKeyList(t.signers):null,scheduleMemo:null!=t.memo?t.memo:null,expirationTime:null!=t.expirationTime?s.default._fromProtobuf(t.expirationTime):null,executed:null!=t.executionTime?s.default._fromProtobuf(t.executionTime):null,deleted:null!=t.deletionTime?s.default._fromProtobuf(t.deletionTime):null,scheduledTransactionId:null!=t.scheduledTransactionID?d.default._fromProtobuf(t.scheduledTransactionID):null})}}]),e}();t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(24)),c=r(n(10)),s=r(n(54)),l=r(n(38)),f=r(n(17)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=k(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31)),p=r(n(272)),h=r(n(273)),y=r(n(170)),b=r(n(212)),m=r(n(213)),v=r(n(37)),g=r(n(81));function k(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(k=function(e){return e?n:t})(e)}var _=function(){function e(t){(0,a.default)(this,e),this.tokenId=t.tokenId,this.name=t.name,this.symbol=t.symbol,this.decimals=t.decimals,this.totalSupply=t.totalSupply,this.treasuryAccountId=t.treasuryAccountId,this.adminKey=t.adminKey,this.kycKey=t.kycKey,this.freezeKey=t.freezeKey,this.pauseKey=t.pauseKey,this.wipeKey=t.wipeKey,this.supplyKey=t.supplyKey,this.feeScheduleKey=t.feeScheduleKey,this.defaultFreezeStatus=t.defaultFreezeStatus,this.defaultKycStatus=t.defaultKycStatus,this.pauseStatus=t.pauseStatus,this.isDeleted=t.isDeleted,this.autoRenewAccountId=t.autoRenewAccountId,this.autoRenewPeriod=t.autoRenewPeriod,this.expirationTime=t.expirationTime,this.tokenMemo=t.tokenMemo,this.customFees=t.customFees,this.tokenType=t.tokenType,this.supplyType=t.supplyType,this.maxSupply=t.maxSupply,this.ledgerId=t.ledgerId}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),name:this.name,symbol:this.symbol,decimals:this.decimals,totalSupply:this.totalSupply,treasury:null!=this.treasuryAccountId?this.treasuryAccountId._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,kycKey:null!=this.kycKey?this.kycKey._toProtobufKey():null,freezeKey:null!=this.freezeKey?this.freezeKey._toProtobufKey():null,pauseKey:null!=this.pauseKey?this.pauseKey._toProtobufKey():null,wipeKey:null!=this.wipeKey?this.wipeKey._toProtobufKey():null,supplyKey:null!=this.supplyKey?this.supplyKey._toProtobufKey():null,feeScheduleKey:null!=this.feeScheduleKey?this.feeScheduleKey._toProtobufKey():null,defaultFreezeStatus:null==this.defaultFreezeStatus?0:this.defaultFreezeStatus?1:2,defaultKycStatus:null==this.defaultKycStatus?0:this.defaultKycStatus?1:2,pauseStatus:null==this.pauseStatus?0:this.pauseStatus?1:2,deleted:this.isDeleted,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():void 0,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,expiry:null!=this.expirationTime?this.expirationTime._toProtobuf():null,memo:this.tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this.tokenType?this.tokenType._code:null,supplyType:null!=this.supplyType?this.supplyType._code:null,maxSupply:this.maxSupply,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return d.TokenInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.defaultFreezeStatus,r=t.defaultKycStatus,o=t.pauseStatus,a=null!=t.autoRenewAccount?c.default._fromProtobuf(t.autoRenewAccount):new c.default(0);return new e({tokenId:u.default._fromProtobuf(t.tokenId),name:t.name,symbol:t.symbol,decimals:t.decimals,totalSupply:f.default.fromValue(t.totalSupply),treasuryAccountId:null!=t.treasury?c.default._fromProtobuf(t.treasury):null,adminKey:null!=t.adminKey?v.default._fromProtobufKey(t.adminKey):null,kycKey:null!=t.kycKey?v.default._fromProtobufKey(t.kycKey):null,freezeKey:null!=t.freezeKey?v.default._fromProtobufKey(t.freezeKey):null,pauseKey:null!=t.pauseKey?v.default._fromProtobufKey(t.pauseKey):null,wipeKey:null!=t.wipeKey?v.default._fromProtobufKey(t.wipeKey):null,supplyKey:null!=t.supplyKey?v.default._fromProtobufKey(t.supplyKey):null,feeScheduleKey:null!=t.feeScheduleKey?v.default._fromProtobufKey(t.feeScheduleKey):null,defaultFreezeStatus:0===n?null:1==n,defaultKycStatus:0===r?null:1==r,pauseStatus:0===o?null:1==o,isDeleted:t.deleted,autoRenewAccountId:0!=a.shard.toInt()||0!=a.realm.toInt()||0!=a.num.toInt()?a:null,autoRenewPeriod:null!=t.autoRenewPeriod?s.default._fromProtobuf(t.autoRenewPeriod):null,expirationTime:null!=t.expiry?l.default._fromProtobuf(t.expiry):null,tokenMemo:null!=t.memo?t.memo:"",customFees:null!=t.customFees?t.customFees.map((function(e){return null!=e.fixedFee?y.default._fromProtobuf(e):null!=e.fractionalFee?b.default._fromProtobuf(e):m.default._fromProtobuf(e)})):[],tokenType:null!=t.tokenType?p.default._fromCode(t.tokenType):null,supplyType:null!=t.supplyType?h.default._fromCode(t.supplyType):null,maxSupply:null!=t.maxSupply?t.maxSupply:null,ledgerId:null!=t.ledgerId?g.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.TokenInfo.decode(t))}}]),e}();t.default=_},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(149)),c=r(n(10)),s=r(n(38)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(64)),f=r(n(81));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t){(0,a.default)(this,e),this.nftId=t.nftId,this.accountId=t.accountId,this.creationTime=t.creationTime,this.metadata=t.metadata,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{nftID:this.nftId._toProtobuf(),accountID:this.accountId._toProtobuf(),creationTime:this.creationTime._toProtobuf(),metadata:this.metadata,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toJson",value:function(){return{nftId:this.nftId.toString(),accountId:this.accountId.toString(),creationTime:this.creationTime.toString(),metadata:null!=this.metadata?l.encode(this.metadata):null,ledgerId:null!=this.ledgerId?this.ledgerId.toString():null}}},{key:"toString",value:function(){return JSON.stringify(this.toJson())}}],[{key:"_fromProtobuf",value:function(t){return new e({nftId:u.default._fromProtobuf(t.nftID),accountId:c.default._fromProtobuf(t.accountID),creationTime:s.default._fromProtobuf(t.creationTime),metadata:void 0!==t.metadata?t.metadata:null,ledgerId:null!=t.ledgerId?f.default.fromBytes(t.ledgerId):null})}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(104)),c=r(n(10)),s=r(n(38)),l=r(n(17)),f=r(n(54)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31)),p=r(n(37)),h=r(n(81));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var b=function(){function e(t){(0,a.default)(this,e),this.topicId=t.topicId,this.topicMemo=t.topicMemo,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.expirationTime=t.expirationTime,this.adminKey=t.adminKey,this.submitKey=t.submitKey,this.autoRenewPeriod=t.autoRenewPeriod,this.autoRenewAccountId=t.autoRenewAccountId,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{topicID:this.topicId._toProtobuf(),topicInfo:{memo:this.topicMemo,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber,expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,submitKey:null!=this.submitKey?this.submitKey._toProtobufKey():null,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():null}}}},{key:"toBytes",value:function(){return d.ConsensusTopicInfo.encode(this._toProtobuf().topicInfo).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.topicInfo;return new e({topicId:u.default._fromProtobuf(t.topicID),topicMemo:null!=n.memo?n.memo:"",runningHash:null!=n.runningHash?n.runningHash:new Uint8Array,sequenceNumber:null!=n.sequenceNumber?n.sequenceNumber instanceof l.default?n.sequenceNumber:l.default.fromValue(n.sequenceNumber):l.default.ZERO,expirationTime:null!=n.expirationTime?s.default._fromProtobuf(n.expirationTime):null,adminKey:null!=n.adminKey?p.default._fromProtobufKey(n.adminKey):null,submitKey:null!=n.submitKey?p.default._fromProtobufKey(n.submitKey):null,autoRenewPeriod:null!=n.autoRenewPeriod?new f.default(n.autoRenewPeriod.seconds):null,autoRenewAccountId:null!=n.autoRenewAccount?c.default._fromProtobuf(n.autoRenewAccount):null,ledgerId:null!=n.ledgerId?h.default.fromBytes(n.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf({topicInfo:d.ConsensusTopicInfo.decode(t)})}}]),e}();t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(38)),u=r(n(454)),c=r(n(17)),s=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.chunks=t.chunks,Object.freeze(this)}return(0,a.default)(e,null,[{key:"_ofSingle",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof c.default?t.sequenceNumber:c.default.fromNumber(t.sequenceNumber):c.default.ZERO,chunks:[u.default._fromProtobuf(t)]})}},{key:"_ofMany",value:function(t){var n=t[t.length-1],r=i.default._fromProtobuf(n.consensusTimestamp),o=n.runningHash,a=null!=n.sequenceNumber?n.sequenceNumber instanceof c.default?n.sequenceNumber:c.default.fromValue(n.sequenceNumber):c.default.ZERO;t.sort((function(e,t){return(null!=e&&null!=e.chunkInfo&&null!=e.chunkInfo.number?e.chunkInfo.number:0)<(null!=t&&null!=t.chunkInfo&&null!=t.chunkInfo.number?t.chunkInfo.number:0)?-1:1}));var s=t.map((function(e){return u.default._fromProtobuf(e)})),l=s.map((function(e){return e.contents.length})).reduce((function(e,t){return e+t}),0),f=new Uint8Array(l),d=0;return t.forEach((function(e){f.set(e.message,d),d+=e.message.length})),new e({consensusTimestamp:r,contents:f,runningHash:o,sequenceNumber:a,chunks:s})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(38)),u=r(n(17)),c=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{consensusTimestamp:this.consensusTimestamp._toProtobuf(),message:this.contents,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber}}}],[{key:"_fromProtobuf",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof u.default?t.sequenceNumber:u.default.fromValue(t.sequenceNumber):u.default.ZERO})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(939)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.newNode)this._address="string"==typeof t.newNode.address?i.default.fromString(t.newNode.address):t.newNode.address,this._cert=void 0,this._channel=null,this._channelInitFunction=t.newNode.channelInitFunction,this._currentBackoff=250,this._lastUsed=Date.now(),this._backoffUntil=Date.now(),this._useCount=0,this._attempts=0,this._minBackoff=250,this._maxBackoff=8e3;else{if(null==t.cloneNode)throw new Error("failed to create ManagedNode: ".concat(JSON.stringify(t)));this._address=t.cloneNode.address,this._cert=t.cloneNode.node._cert,this._channel=t.cloneNode.node._channel,this._channelInitFunction=t.cloneNode.node._channelInitFunction,this._currentBackoff=t.cloneNode.node._currentBackoff,this._lastUsed=t.cloneNode.node._lastUsed,this._backoffUntil=t.cloneNode.node._backoffUntil,this._useCount=t.cloneNode.node._useCount,this._attempts=t.cloneNode.node._attempts,this._minBackoff=t.cloneNode.node._minBackoff,this._maxBackoff=t.cloneNode.node._minBackoff}}return(0,a.default)(e,[{key:"getKey",value:function(){throw new Error("not implemented")}},{key:"toInsecure",value:function(){throw new Error("not implemented")}},{key:"toSecure",value:function(){throw new Error("not implemented")}},{key:"setCert",value:function(e){return this}},{key:"address",get:function(){return this._address}},{key:"attempts",get:function(){return this._attempts}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._minBackoff=e,this}},{key:"maxBackoff",get:function(){return this._maxBackoff}},{key:"setmaxBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._maxBackoff=e,this}},{key:"getChannel",value:function(){return this._useCount++,this.__lastUsed=Date.now(),null!=this._channel||(this._channel=this._channelInitFunction(this.address.toString(),this._cert)),this._channel}},{key:"isHealthy",value:function(){return this._backoffUntil<=Date.now()}},{key:"increaseDelay",value:function(){this._currentBackoff=Math.min(2*this._currentBackoff,this._maxBackoff),this._backoffUntil=Date.now()+this._currentBackoff}},{key:"decreaseDelay",value:function(){this._currentBackoff=Math.max(this._currentBackoff/2,this._minBackoff)}},{key:"wait",value:function(){var e=this._backoffUntil-this._lastUsed;return new Promise((function(t){return setTimeout(t,e)}))}},{key:"compare",value:function(e){return this.isHealthy()&&e.isHealthy()?this._useCounte._useCount?1:this._lastUsede._lastUsed?1:0:this.isHealthy()&&!e.isHealthy()?-1:!this.isHealthy()&&e.isHealthy()?1:this._useCounte._useCount?1:this._lastUsede._lastUsed?1:0}},{key:"close",value:function(){null!=this._channel&&this._channel.close(),this._channel=null}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2)),u=r(n(81));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)for(var e=this._nodes.length-1;e>=0;e--){this._nodes[e]._attempts=e)break;i.has(s.getKey())||a.push(s)}}catch(e){u.e(e)}finally{u.f()}return a}},{key:"_closeNode",value:function(e){var t=this._nodes[e];t.close(),this._removeNodeFromNetwork(t),this._nodes.splice(e,1)}},{key:"_removeNodeFromNetwork",value:function(e){for(var t=this._network.get(e.getKey()),n=0;n>6|192);else{if(o>55295&&o<56320){if(++r==e.length)return null;var a=e.charCodeAt(r);if(a<56320||a>57343)return null;n+=t((o=65536+((1023&o)<<10)+(1023&a))>>18|240),n+=t(o>>12&63|128)}else n+=t(o>>12|224);n+=t(o>>6&63|128)}n+=t(63&o|128)}}return n},toString:function(e){for(var t="",n=0,a=o(e);n127){if(i>191&&i<224){if(n>=a)return null;i=(31&i)<<6|63&r(e,n)}else if(i>223&&i<240){if(n+1>=a)return null;i=(15&i)<<12|(63&r(e,n))<<6|63&r(e,++n)}else{if(!(i>239&&i<248))return null;if(n+2>=a)return null;i=(7&i)<<18|(63&r(e,n))<<12|(63&r(e,++n))<<6|63&r(e,++n)}++n}if(i<=65535)t+=String.fromCharCode(i);else{if(!(i<=1114111))return null;i-=65536,t+=String.fromCharCode(i>>10|55296),t+=String.fromCharCode(1023&i|56320)}}return t},fromNumber:function(e){var t=e.toString(16);return t.length%2==0?"0x"+t:"0x0"+t},toNumber:function(e){return parseInt(e.slice(2),16)},fromNat:function(e){return"0x0"===e?"0x":e.length%2==0?e:"0x0"+e.slice(2)},toNat:function(e){return"0"===e[2]?"0x"+e.slice(3):e},fromArray:i,toArray:a,fromUint8Array:function(e){return i([].slice.call(e,0))},toUint8Array:function(e){return new Uint8Array(a(e))}}},function(e,t,n){"use strict";var r=n(15),o=n(948),a=n(100),i=n(22).Buffer,u=n(459),c=n(252),s=n(253),l=i.alloc(128);function f(e,t){a.call(this,"digest"),"string"==typeof t&&(t=i.from(t));var n="sha512"===e||"sha384"===e?128:64;(this._alg=e,this._key=t,t.length>n)?t=("rmd160"===e?new c:s(e)).update(t).digest():t.lengthr||t!=t)throw new TypeError("Bad key length")}},function(e,t,n){"use strict";(function(t,n){var r;if(t.process&&t.process.browser)r="utf-8";else if(t.process&&t.process.version){r=parseInt(n.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary"}else r="utf-8";e.exports=r}).call(this,n(33),n(27))},function(e,t,n){"use strict";var r=n(459),o=n(252),a=n(253),i=n(22).Buffer,u=n(462),c=n(463),s=n(465),l=i.alloc(128),f={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function d(e,t,n){var u=function(e){function t(t){return a(e).update(t).digest()}return"rmd160"===e||"ripemd160"===e?function(e){return(new o).update(e).digest()}:"md5"===e?r:t}(e),c="sha512"===e||"sha384"===e?128:64;t.length>c?t=u(t):t.length>>0},t.writeUInt32BE=function(e,t,n){e[0+n]=t>>>24,e[1+n]=t>>>16&255,e[2+n]=t>>>8&255,e[3+n]=255&t},t.ip=function(e,t,n,r){for(var o=0,a=0,i=6;i>=0;i-=2){for(var u=0;u<=24;u+=8)o<<=1,o|=t>>>u+i&1;for(u=0;u<=24;u+=8)o<<=1,o|=e>>>u+i&1}for(i=6;i>=0;i-=2){for(u=1;u<=25;u+=8)a<<=1,a|=t>>>u+i&1;for(u=1;u<=25;u+=8)a<<=1,a|=e>>>u+i&1}n[r+0]=o>>>0,n[r+1]=a>>>0},t.rip=function(e,t,n,r){for(var o=0,a=0,i=0;i<4;i++)for(var u=24;u>=0;u-=8)o<<=1,o|=t>>>u+i&1,o<<=1,o|=e>>>u+i&1;for(i=4;i<8;i++)for(u=24;u>=0;u-=8)a<<=1,a|=t>>>u+i&1,a<<=1,a|=e>>>u+i&1;n[r+0]=o>>>0,n[r+1]=a>>>0},t.pc1=function(e,t,n,r){for(var o=0,a=0,i=7;i>=5;i--){for(var u=0;u<=24;u+=8)o<<=1,o|=t>>u+i&1;for(u=0;u<=24;u+=8)o<<=1,o|=e>>u+i&1}for(u=0;u<=24;u+=8)o<<=1,o|=t>>u+i&1;for(i=1;i<=3;i++){for(u=0;u<=24;u+=8)a<<=1,a|=t>>u+i&1;for(u=0;u<=24;u+=8)a<<=1,a|=e>>u+i&1}for(u=0;u<=24;u+=8)a<<=1,a|=e>>u+i&1;n[r+0]=o>>>0,n[r+1]=a>>>0},t.r28shl=function(e,t){return e<>>28-t};var r=[14,11,17,4,27,23,25,0,13,22,7,18,5,9,16,24,2,20,12,21,1,8,15,26,15,4,25,19,9,1,26,16,5,11,23,8,12,7,17,0,22,3,10,14,6,20,27,24];t.pc2=function(e,t,n,o){for(var a=0,i=0,u=r.length>>>1,c=0;c>>r[c]&1;for(c=u;c>>r[c]&1;n[o+0]=a>>>0,n[o+1]=i>>>0},t.expand=function(e,t,n){var r=0,o=0;r=(1&e)<<5|e>>>27;for(var a=23;a>=15;a-=4)r<<=6,r|=e>>>a&63;for(a=11;a>=3;a-=4)o|=e>>>a&63,o<<=6;o|=(31&e)<<1|e>>>31,t[n+0]=r>>>0,t[n+1]=o>>>0};var o=[14,0,4,15,13,7,1,4,2,14,15,2,11,13,8,1,3,10,10,6,6,12,12,11,5,9,9,5,0,3,7,8,4,15,1,12,14,8,8,2,13,4,6,9,2,1,11,7,15,5,12,11,9,3,7,14,3,10,10,0,5,6,0,13,15,3,1,13,8,4,14,7,6,15,11,2,3,8,4,14,9,12,7,0,2,1,13,10,12,6,0,9,5,11,10,5,0,13,14,8,7,10,11,1,10,3,4,15,13,4,1,2,5,11,8,6,12,7,6,12,9,0,3,5,2,14,15,9,10,13,0,7,9,0,14,9,6,3,3,4,15,6,5,10,1,2,13,8,12,5,7,14,11,12,4,11,2,15,8,1,13,1,6,10,4,13,9,0,8,6,15,9,3,8,0,7,11,4,1,15,2,14,12,3,5,11,10,5,14,2,7,12,7,13,13,8,14,11,3,5,0,6,6,15,9,0,10,3,1,4,2,7,8,2,5,12,11,1,12,10,4,14,15,9,10,3,6,15,9,0,0,6,12,10,11,1,7,13,13,8,15,9,1,4,3,5,14,11,5,12,2,7,8,2,4,14,2,14,12,11,4,2,1,12,7,4,10,7,11,13,6,1,8,5,5,0,3,15,15,10,13,3,0,9,14,8,9,6,4,11,2,8,1,12,11,7,10,1,13,14,7,2,8,13,15,6,9,15,12,0,5,9,6,10,3,4,0,5,14,3,12,10,1,15,10,4,15,2,9,7,2,12,6,9,8,5,0,6,13,1,3,13,4,14,14,0,7,11,5,3,11,8,9,4,14,3,15,2,5,12,2,9,8,5,12,15,3,10,7,11,0,14,4,1,10,7,1,6,13,0,11,8,6,13,4,13,11,0,2,11,14,7,15,4,0,9,8,1,13,10,3,14,12,3,9,5,7,12,5,2,10,15,6,8,1,6,1,6,4,11,11,13,13,8,12,1,3,4,7,10,14,7,10,9,15,5,6,0,8,15,0,14,5,2,9,3,2,12,13,1,2,15,8,13,4,8,6,10,15,3,11,7,1,4,10,12,9,5,3,6,14,11,5,0,0,14,12,9,7,2,7,2,11,1,4,14,1,7,9,4,12,10,14,8,2,13,0,15,6,12,10,9,13,0,15,3,3,5,5,6,8,11];t.substitute=function(e,t){for(var n=0,r=0;r<4;r++){n<<=4,n|=o[64*r+(e>>>18-6*r&63)]}for(r=0;r<4;r++){n<<=4,n|=o[256+64*r+(t>>>18-6*r&63)]}return n>>>0};var a=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];t.permute=function(e){for(var t=0,n=0;n>>a[n]&1;return t>>>0},t.padSplit=function(e,t,n){for(var r=e.toString(2);r.length>>1];n=a.r28shl(n,u),o=a.r28shl(o,u),a.pc2(n,o,e.keys,i)}},c.prototype._update=function(e,t,n,r){var o=this._desState,i=a.readUInt32BE(e,t),u=a.readUInt32BE(e,t+4);a.ip(i,u,o.tmp,0),i=o.tmp[0],u=o.tmp[1],"encrypt"===this.type?this._encrypt(o,i,u,o.tmp,0):this._decrypt(o,i,u,o.tmp,0),i=o.tmp[0],u=o.tmp[1],a.writeUInt32BE(n,i,r),a.writeUInt32BE(n,u,r+4)},c.prototype._pad=function(e,t){for(var n=e.length-t,r=t;r>>0,i=d}a.rip(u,i,r,o)},c.prototype._decrypt=function(e,t,n,r,o){for(var i=n,u=t,c=e.keys.length-2;c>=0;c-=2){var s=e.keys[c],l=e.keys[c+1];a.expand(i,e.tmp,0),s^=e.tmp[0],l^=e.tmp[1];var f=a.substitute(s,l),d=i;i=(u^a.permute(f))>>>0,u=d}a.rip(i,u,r,o)}},function(e,t,n){"use strict";var r=n(171),o=n(22).Buffer,a=n(469);function i(e){var t=e._cipher.encryptBlockRaw(e._prev);return a(e._prev),t}t.encrypt=function(e,t){var n=Math.ceil(t.length/16),a=e._cache.length;e._cache=o.concat([e._cache,o.allocUnsafe(16*n)]);for(var u=0;ue;)n.ishrn(1);if(n.isEven()&&n.iadd(u),n.testn(1)||n.iadd(c),t.cmp(c)){if(!t.cmp(s))for(;n.mod(l).cmp(f);)n.iadd(p)}else for(;n.mod(a).cmp(d);)n.iadd(p);if(b(h=n.shrn(1))&&b(n)&&m(h)&&m(n)&&i.test(h)&&i.test(n))return n}}},function(e,t,n){"use strict";var r=n(13),o=n(238);function a(e){this.rand=e||new o.Rand}e.exports=a,a.create=function(e){return new a(e)},a.prototype._randbelow=function(e){var t=e.bitLength(),n=Math.ceil(t/8);do{var o=new r(this.rand.generate(n))}while(o.cmp(e)>=0);return o},a.prototype._randrange=function(e,t){var n=t.sub(e);return e.add(this._randbelow(n))},a.prototype.test=function(e,t,n){var o=e.bitLength(),a=r.mont(e),i=new r(1).toRed(a);t||(t=Math.max(1,o/48|0));for(var u=e.subn(1),c=0;!u.testn(c);c++);for(var s=e.shrn(c),l=u.toRed(a);t>0;t--){var f=this._randrange(new r(2),u);n&&n(f);var d=f.toRed(a).redPow(s);if(0!==d.cmp(i)&&0!==d.cmp(l)){for(var p=1;p0;t--){var l=this._randrange(new r(2),i),f=e.gcd(l);if(0!==f.cmpn(1))return f;var d=l.toRed(o).redPow(c);if(0!==d.cmp(a)&&0!==d.cmp(s)){for(var p=1;p0)if("string"==typeof t||i.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r)i.endEmitted?w(e,new _):E(e,i,t,!0);else if(i.ended)w(e,new g);else{if(i.destroyed)return!1;i.reading=!1,i.decoder&&!n?(t=i.decoder.write(t),i.objectMode||0!==t.length?E(e,i,t,!1):D(e,i)):E(e,i,t,!1)}else r||(i.reading=!1,D(e,i));return!i.ended&&(i.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=1073741824?e=1073741824:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;s("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(s("emitReadable",t.flowing),t.emittedReadable=!0,r.nextTick(R,e))}function R(e){var t=e._readableState;s("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function D(e,t){t.readingMore||(t.readingMore=!0,r.nextTick(C,e,t))}function C(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function B(e){s("readable nexttick read 0"),e.read(0)}function M(e,t){s("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(s("flow",t.flowing);t.flowing&&null!==e.read(););}function x(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function F(e){var t=e._readableState;s("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,r.nextTick(U,t,e))}function U(e,t){if(s("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function L(e,t){for(var n=0,r=e.length;n=t.highWaterMark:t.length>0)||t.ended))return s("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):S(this),null;if(0===(e=P(e,t))&&t.ended)return 0===t.length&&F(this),null;var r,o=t.needReadable;return s("need readable",o),(0===t.length||t.length-e0?x(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&F(this)),null!==r&&this.emit("data",r),r},T.prototype._read=function(e){w(this,new k("_read()"))},T.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,s("pipe count=%d opts=%j",o.pipesCount,t);var i=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?c:b;function u(t,r){s("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,s("cleanup"),e.removeListener("close",h),e.removeListener("finish",y),e.removeListener("drain",l),e.removeListener("error",p),e.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",b),n.removeListener("data",d),f=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function c(){s("onend"),e.end()}o.endEmitted?r.nextTick(i):n.once("end",i),e.on("unpipe",u);var l=function(e){return function(){var t=e._readableState;s("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(n);e.on("drain",l);var f=!1;function d(t){s("ondata");var r=e.write(t);s("dest.write",r),!1===r&&((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==L(o.pipes,e))&&!f&&(s("false write response, pause",o.awaitDrain),o.awaitDrain++),n.pause())}function p(t){s("onerror",t),b(),e.removeListener("error",p),0===a(e,"error")&&w(e,t)}function h(){e.removeListener("finish",y),b()}function y(){s("onfinish"),e.removeListener("close",h),b()}function b(){s("unpipe"),n.unpipe(e)}return n.on("data",d),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",p),e.once("close",h),e.once("finish",y),e.emit("pipe",n),o.flowing||(s("pipe resume"),n.resume()),e},T.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==o.flowing&&this.resume()):"readable"===e&&(o.endEmitted||o.readableListening||(o.readableListening=o.needReadable=!0,o.flowing=!1,o.emittedReadable=!1,s("on readable",o.length,o.reading),o.length?S(this):o.reading||r.nextTick(B,this))),n},T.prototype.addListener=T.prototype.on,T.prototype.removeListener=function(e,t){var n=i.prototype.removeListener.call(this,e,t);return"readable"===e&&r.nextTick(N,this),n},T.prototype.removeAllListeners=function(e){var t=i.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||r.nextTick(N,this),t},T.prototype.resume=function(){var e=this._readableState;return e.flowing||(s("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,r.nextTick(M,e,t))}(this,e)),e.paused=!1,this},T.prototype.pause=function(){return s("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(s("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},T.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var o in e.on("end",(function(){if(s("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(o){(s("wrapped data"),n.decoder&&(o=n.decoder.write(o)),n.objectMode&&null==o)||(n.objectMode||o&&o.length)&&(t.push(o)||(r=!0,e.pause()))})),e)void 0===this[o]&&"function"==typeof e[o]&&(this[o]=function(t){return function(){return e[t].apply(e,arguments)}}(o));for(var a=0;a-1))throw new _(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(T.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(T.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),T.prototype._write=function(e,t,n){n(new y("_write()"))},T.prototype._writev=null,T.prototype.end=function(e,t,n){var o=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),o.corked&&(o.corked=1,this.uncork()),o.ending||function(e,t,n){t.ending=!0,D(e,t),n&&(t.finished?r.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,o,n),this},Object.defineProperty(T.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(T.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),T.prototype.destroy=f.destroy,T.prototype._undestroy=f.undestroy,T.prototype._destroy=function(e,t){t(e)}}).call(this,n(33),n(27))},function(e,t,n){"use strict";e.exports=l;var r=n(150).codes,o=r.ERR_METHOD_NOT_IMPLEMENTED,a=r.ERR_MULTIPLE_CALLBACK,i=r.ERR_TRANSFORM_ALREADY_TRANSFORMING,u=r.ERR_TRANSFORM_WITH_LENGTH_0,c=n(151);function s(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit("error",new a);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.length=31)return r.error("Multi-octet tag encoding unsupported");t||(o|=32);return o|=i.tagClassByName[n||"universal"]<<6}(e,t,n,this.reporter);if(r.length<128){var u=o.alloc(2);return u[0]=a,u[1]=r.length,this._createEncoderBuffer([u,r])}for(var c=1,s=r.length;s>=256;s>>=8)c++;var l=o.alloc(2+c);l[0]=a,l[1]=128|c;for(var f=1+c,d=r.length;d>0;f--,d>>=8)l[f]=255&d;return this._createEncoderBuffer([l,r])},c.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var n=o.alloc(2*e.length),r=0;r=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}for(var i=0,u=0;u=128;c>>=7)i++}for(var s=o.alloc(i),l=s.length-1,f=e.length-1;f>=0;f--){var d=e[f];for(s[l--]=127&d;(d>>=7)>0;)s[l--]=128|127&d}return this._createEncoderBuffer(s)},c.prototype._encodeTime=function(e,t){var n,r=new Date(e);return"gentime"===t?n=[s(r.getUTCFullYear()),s(r.getUTCMonth()+1),s(r.getUTCDate()),s(r.getUTCHours()),s(r.getUTCMinutes()),s(r.getUTCSeconds()),"Z"].join(""):"utctime"===t?n=[s(r.getUTCFullYear()%100),s(r.getUTCMonth()+1),s(r.getUTCDate()),s(r.getUTCHours()),s(r.getUTCMinutes()),s(r.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(n,"octstr")},c.prototype._encodeNull=function(){return this._createEncoderBuffer("")},c.prototype._encodeInt=function(e,t){if("string"==typeof e){if(!t)return this.reporter.error("String int or enum given, but no values map");if(!t.hasOwnProperty(e))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(e));e=t[e]}if("number"!=typeof e&&!o.isBuffer(e)){var n=e.toArray();!e.sign&&128&n[0]&&n.unshift(0),e=o.from(n)}if(o.isBuffer(e)){var r=e.length;0===e.length&&r++;var a=o.alloc(r);return e.copy(a),0===e.length&&(a[0]=0),this._createEncoderBuffer(a)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);for(var i=1,u=e;u>=256;u>>=8)i++;for(var c=new Array(i),s=c.length-1;s>=0;s--)c[s]=255&e,e>>=8;return 128&c[0]&&c.unshift(0),this._createEncoderBuffer(o.from(c))},c.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},c.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},c.prototype._skipDefault=function(e,t,n){var r,o=this._baseState;if(null===o.default)return!1;var a=e.join();if(void 0===o.defaultBuffer&&(o.defaultBuffer=this._encodeValue(o.default,t,n).join()),a.length!==o.defaultBuffer.length)return!1;for(r=0;r>6],o=0==(32&n);if(31==(31&n)){var a=n;for(n=0;128==(128&a);){if(a=e.readUInt8(t),e.isError(a))return a;n<<=7,n|=127&a}}else n&=31;return{cls:r,primitive:o,tag:n,tagStr:u.tag[n]}}function f(e,t,n){var r=e.readUInt8(n);if(e.isError(r))return r;if(!t&&128===r)return null;if(0==(128&r))return r;var o=127&r;if(o>4)return e.error("length octect is too long");r=0;for(var a=0;a>>((3&t)<<3)&255;return a}}},function(e,t,n){"use strict";for(var r=[],o=0;o<256;++o)r[o]=(o+256).toString(16).substr(1);e.exports=function(e,t){var n=t||0,o=r;return[o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]]].join("")}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.KECCAK256_RLP=t.KECCAK256_RLP_S=t.KECCAK256_RLP_ARRAY=t.KECCAK256_RLP_ARRAY_S=t.KECCAK256_NULL=t.KECCAK256_NULL_S=t.TWO_POW256=t.MAX_INTEGER=t.MAX_UINT64=void 0;var r=n(12),o=n(92);t.MAX_UINT64=new o.BN("ffffffffffffffff",16),t.MAX_INTEGER=new o.BN("ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",16),t.TWO_POW256=new o.BN("10000000000000000000000000000000000000000000000000000000000000000",16),t.KECCAK256_NULL_S="c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",t.KECCAK256_NULL=r.Buffer.from(t.KECCAK256_NULL_S,"hex"),t.KECCAK256_RLP_ARRAY_S="1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",t.KECCAK256_RLP_ARRAY=r.Buffer.from(t.KECCAK256_RLP_ARRAY_S,"hex"),t.KECCAK256_RLP_S="56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",t.KECCAK256_RLP=r.Buffer.from(t.KECCAK256_RLP_S,"hex")},function(e,t,n){"use strict";(function(e){var r=function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i},o=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isZeroAddress=t.zeroAddress=t.importPublic=t.privateToAddress=t.privateToPublic=t.publicToAddress=t.pubToAddress=t.isValidPublic=t.isValidPrivate=t.generateAddress2=t.generateAddress=t.isValidChecksumAddress=t.toChecksumAddress=t.isValidAddress=t.Account=void 0;var a=o(n(139)),i=n(92),u=n(494),c=n(152),s=n(492),l=n(125),f=n(284),d=n(217),p=n(287),h=function(){function e(e,t,n,r){void 0===e&&(e=new i.BN(0)),void 0===t&&(t=new i.BN(0)),void 0===n&&(n=s.KECCAK256_RLP),void 0===r&&(r=s.KECCAK256_NULL),this.nonce=e,this.balance=t,this.stateRoot=n,this.codeHash=r,this._validate()}return e.fromAccountData=function(t){var n=t.nonce,r=t.balance,o=t.stateRoot,a=t.codeHash;return new e(n?new i.BN((0,l.toBuffer)(n)):void 0,r?new i.BN((0,l.toBuffer)(r)):void 0,o?(0,l.toBuffer)(o):void 0,a?(0,l.toBuffer)(a):void 0)},e.fromRlpSerializedAccount=function(e){var t=i.rlp.decode(e);if(!Array.isArray(t))throw new Error("Invalid serialized account input. Must be array");return this.fromValuesArray(t)},e.fromValuesArray=function(t){var n=r(t,4),o=n[0],a=n[1],u=n[2],c=n[3];return new e(new i.BN(o),new i.BN(a),u,c)},e.prototype._validate=function(){if(this.nonce.lt(new i.BN(0)))throw new Error("nonce must be greater than zero");if(this.balance.lt(new i.BN(0)))throw new Error("balance must be greater than zero");if(32!==this.stateRoot.length)throw new Error("stateRoot must have a length of 32");if(32!==this.codeHash.length)throw new Error("codeHash must have a length of 32")},e.prototype.raw=function(){return[(0,p.bnToUnpaddedBuffer)(this.nonce),(0,p.bnToUnpaddedBuffer)(this.balance),this.stateRoot,this.codeHash]},e.prototype.serialize=function(){return i.rlp.encode(this.raw())},e.prototype.isContract=function(){return!this.codeHash.equals(s.KECCAK256_NULL)},e.prototype.isEmpty=function(){return this.balance.isZero()&&this.nonce.isZero()&&this.codeHash.equals(s.KECCAK256_NULL)},e}();t.Account=h;t.isValidAddress=function(e){try{(0,d.assertIsString)(e)}catch(e){return!1}return/^0x[0-9a-fA-F]{40}$/.test(e)};t.toChecksumAddress=function(e,t){(0,d.assertIsHexString)(e);var n=(0,c.stripHexPrefix)(e).toLowerCase(),r="";t&&(r=(0,p.toType)(t,p.TypeOutput.BN).toString()+"0x");for(var o=(0,f.keccakFromString)(r+n).toString("hex"),a="0x",i=0;i=8?a+=n[i].toUpperCase():a+=n[i];return a};t.isValidChecksumAddress=function(e,n){return(0,t.isValidAddress)(e)&&(0,t.toChecksumAddress)(e,n)===e};t.generateAddress=function(t,n){(0,d.assertIsBuffer)(t),(0,d.assertIsBuffer)(n);var r=new i.BN(n);return r.isZero()?(0,f.rlphash)([t,null]).slice(-20):(0,f.rlphash)([t,e.from(r.toArray())]).slice(-20)};t.generateAddress2=function(t,n,r){return(0,d.assertIsBuffer)(t),(0,d.assertIsBuffer)(n),(0,d.assertIsBuffer)(r),(0,a.default)(20===t.length),(0,a.default)(32===n.length),(0,f.keccak256)(e.concat([e.from("ff","hex"),t,n,(0,f.keccak256)(r)])).slice(-20)};t.isValidPrivate=function(e){return(0,u.privateKeyVerify)(e)};t.isValidPublic=function(t,n){return void 0===n&&(n=!1),(0,d.assertIsBuffer)(t),64===t.length?(0,u.publicKeyVerify)(e.concat([e.from([4]),t])):!!n&&(0,u.publicKeyVerify)(t)};t.pubToAddress=function(t,n){return void 0===n&&(n=!1),(0,d.assertIsBuffer)(t),n&&64!==t.length&&(t=e.from((0,u.publicKeyConvert)(t,!1).slice(1))),(0,a.default)(64===t.length),(0,f.keccak)(t).slice(-20)},t.publicToAddress=t.pubToAddress;t.privateToPublic=function(t){return(0,d.assertIsBuffer)(t),e.from((0,u.publicKeyCreate)(t,!1)).slice(1)};t.privateToAddress=function(e){return(0,t.publicToAddress)((0,t.privateToPublic)(e))};t.importPublic=function(t){return(0,d.assertIsBuffer)(t),64!==t.length&&(t=e.from((0,u.publicKeyConvert)(t,!1).slice(1))),t};t.zeroAddress=function(){var e=(0,l.zeros)(20);return(0,l.bufferToHex)(e)};t.isZeroAddress=function(e){try{(0,d.assertIsString)(e)}catch(e){return!1}return(0,t.zeroAddress)()===e}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";var r=function(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{c(r.next(e))}catch(e){a(e)}}function u(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,u)}c((r=r.apply(e,t||[])).next())}))},o=function(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function u(a){return function(u){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]0)if("string"==typeof t||i.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r)i.endEmitted?w(e,new _):E(e,i,t,!0);else if(i.ended)w(e,new g);else{if(i.destroyed)return!1;i.reading=!1,i.decoder&&!n?(t=i.decoder.write(t),i.objectMode||0!==t.length?E(e,i,t,!1):D(e,i)):E(e,i,t,!1)}else r||(i.reading=!1,D(e,i));return!i.ended&&(i.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=1073741824?e=1073741824:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;s("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(s("emitReadable",t.flowing),t.emittedReadable=!0,r.nextTick(R,e))}function R(e){var t=e._readableState;s("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function D(e,t){t.readingMore||(t.readingMore=!0,r.nextTick(C,e,t))}function C(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function B(e){s("readable nexttick read 0"),e.read(0)}function M(e,t){s("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(s("flow",t.flowing);t.flowing&&null!==e.read(););}function x(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function F(e){var t=e._readableState;s("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,r.nextTick(U,t,e))}function U(e,t){if(s("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function L(e,t){for(var n=0,r=e.length;n=t.highWaterMark:t.length>0)||t.ended))return s("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):S(this),null;if(0===(e=P(e,t))&&t.ended)return 0===t.length&&F(this),null;var r,o=t.needReadable;return s("need readable",o),(0===t.length||t.length-e0?x(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&F(this)),null!==r&&this.emit("data",r),r},T.prototype._read=function(e){w(this,new k("_read()"))},T.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,s("pipe count=%d opts=%j",o.pipesCount,t);var i=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?c:b;function u(t,r){s("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,s("cleanup"),e.removeListener("close",h),e.removeListener("finish",y),e.removeListener("drain",l),e.removeListener("error",p),e.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",b),n.removeListener("data",d),f=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function c(){s("onend"),e.end()}o.endEmitted?r.nextTick(i):n.once("end",i),e.on("unpipe",u);var l=function(e){return function(){var t=e._readableState;s("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(n);e.on("drain",l);var f=!1;function d(t){s("ondata");var r=e.write(t);s("dest.write",r),!1===r&&((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==L(o.pipes,e))&&!f&&(s("false write response, pause",o.awaitDrain),o.awaitDrain++),n.pause())}function p(t){s("onerror",t),b(),e.removeListener("error",p),0===a(e,"error")&&w(e,t)}function h(){e.removeListener("finish",y),b()}function y(){s("onfinish"),e.removeListener("close",h),b()}function b(){s("unpipe"),n.unpipe(e)}return n.on("data",d),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",p),e.once("close",h),e.once("finish",y),e.emit("pipe",n),o.flowing||(s("pipe resume"),n.resume()),e},T.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==o.flowing&&this.resume()):"readable"===e&&(o.endEmitted||o.readableListening||(o.readableListening=o.needReadable=!0,o.flowing=!1,o.emittedReadable=!1,s("on readable",o.length,o.reading),o.length?S(this):o.reading||r.nextTick(B,this))),n},T.prototype.addListener=T.prototype.on,T.prototype.removeListener=function(e,t){var n=i.prototype.removeListener.call(this,e,t);return"readable"===e&&r.nextTick(N,this),n},T.prototype.removeAllListeners=function(e){var t=i.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||r.nextTick(N,this),t},T.prototype.resume=function(){var e=this._readableState;return e.flowing||(s("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,r.nextTick(M,e,t))}(this,e)),e.paused=!1,this},T.prototype.pause=function(){return s("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(s("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},T.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var o in e.on("end",(function(){if(s("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(o){(s("wrapped data"),n.decoder&&(o=n.decoder.write(o)),n.objectMode&&null==o)||(n.objectMode||o&&o.length)&&(t.push(o)||(r=!0,e.pause()))})),e)void 0===this[o]&&"function"==typeof e[o]&&(this[o]=function(t){return function(){return e[t].apply(e,arguments)}}(o));for(var a=0;a-1))throw new _(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(T.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(T.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),T.prototype._write=function(e,t,n){n(new y("_write()"))},T.prototype._writev=null,T.prototype.end=function(e,t,n){var o=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),o.corked&&(o.corked=1,this.uncork()),o.ending||function(e,t,n){t.ending=!0,D(e,t),n&&(t.finished?r.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,o,n),this},Object.defineProperty(T.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(T.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),T.prototype.destroy=f.destroy,T.prototype._undestroy=f.undestroy,T.prototype._destroy=function(e,t){t(e)}}).call(this,n(33),n(27))},function(e,t,n){"use strict";e.exports=l;var r=n(153).codes,o=r.ERR_METHOD_NOT_IMPLEMENTED,a=r.ERR_MULTIPLE_CALLBACK,i=r.ERR_TRANSFORM_ALREADY_TRANSFORMING,u=r.ERR_TRANSFORM_WITH_LENGTH_0,c=n(154);function s(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit("error",new a);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.length=this._blockSize;){for(var a=this._blockOffset;a0;++i)this._length[i]+=u,(u=this._length[i]/4294967296|0)>0&&(this._length[i]-=4294967296*u);return this},a.prototype._update=function(){throw new Error("_update is not implemented")},a.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var n=0;n<4;++n)this._length[n]=0;return t},a.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=a},function(e,t,n){"use strict";var r=n(41),o=n(155),a=n(72).Buffer,i=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],u=new Array(64);function c(){this.init(),this._w=u,o.call(this,64,56)}function s(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function f(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function d(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function p(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(c,o),c.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,h=0|this._f,y=0|this._g,b=0|this._h,m=0;m<16;++m)n[m]=e.readInt32BE(4*m);for(;m<64;++m)n[m]=0|(((t=n[m-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[m-7]+p(n[m-15])+n[m-16];for(var v=0;v<64;++v){var g=b+d(c)+s(c,h,y)+i[v]+n[v]|0,k=f(r)+l(r,o,a)|0;b=y,y=h,h=c,c=u+g|0,u=a,a=o,o=r,r=g+k|0}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0,this._f=h+this._f|0,this._g=y+this._g|0,this._h=b+this._h|0},c.prototype._hash=function(){var e=a.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},function(e,t,n){"use strict";var r=n(41),o=n(155),a=n(72).Buffer,i=[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],u=new Array(160);function c(){this.init(),this._w=u,o.call(this,128,112)}function s(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function f(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function d(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function h(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function y(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function b(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function m(e,t){return e>>>0>>0?1:0}r(c,o),c.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},c.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,o=0|this._ch,a=0|this._dh,u=0|this._eh,c=0|this._fh,v=0|this._gh,g=0|this._hh,k=0|this._al,_=0|this._bl,w=0|this._cl,I=0|this._dl,A=0|this._el,T=0|this._fl,O=0|this._gl,E=0|this._hl,P=0;P<32;P+=2)t[P]=e.readInt32BE(4*P),t[P+1]=e.readInt32BE(4*P+4);for(;P<160;P+=2){var S=t[P-30],R=t[P-30+1],D=p(S,R),C=h(R,S),N=y(S=t[P-4],R=t[P-4+1]),B=b(R,S),M=t[P-14],j=t[P-14+1],x=t[P-32],F=t[P-32+1],U=C+j|0,L=D+M+m(U,C)|0;L=(L=L+N+m(U=U+B|0,B)|0)+x+m(U=U+F|0,F)|0,t[P]=L,t[P+1]=U}for(var K=0;K<160;K+=2){L=t[K],U=t[K+1];var G=l(n,r,o),z=l(k,_,w),Q=f(n,k),H=f(k,n),V=d(u,A),q=d(A,u),W=i[K],Y=i[K+1],Z=s(u,c,v),J=s(A,T,O),X=E+q|0,$=g+V+m(X,E)|0;$=($=($=$+Z+m(X=X+J|0,J)|0)+W+m(X=X+Y|0,Y)|0)+L+m(X=X+U|0,U)|0;var ee=H+z|0,te=Q+G+m(ee,H)|0;g=v,E=O,v=c,O=T,c=u,T=A,u=a+$+m(A=I+X|0,I)|0,a=o,I=w,o=r,w=_,r=n,_=k,n=$+te+m(k=X+ee|0,X)|0}this._al=this._al+k|0,this._bl=this._bl+_|0,this._cl=this._cl+w|0,this._dl=this._dl+I|0,this._el=this._el+A|0,this._fl=this._fl+T|0,this._gl=this._gl+O|0,this._hl=this._hl+E|0,this._ah=this._ah+n+m(this._al,k)|0,this._bh=this._bh+r+m(this._bl,_)|0,this._ch=this._ch+o+m(this._cl,w)|0,this._dh=this._dh+a+m(this._dl,I)|0,this._eh=this._eh+u+m(this._el,A)|0,this._fh=this._fh+c+m(this._fl,T)|0,this._gh=this._gh+v+m(this._gl,O)|0,this._hh=this._hh+g+m(this._hl,E)|0},c.prototype._hash=function(){var e=a.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(11)),u=r(n(42)),c=r(n(8)),s=r(n(1)),l=r(n(2)),f=r(n(506)),d=r(n(288)),p=r(n(508)),h=r(n(290)),y=r(n(1042)),b=r(n(1043)),m=r(n(219)),v=T(n(509)),g=T(n(220)),k=T(n(174)),_=T(n(510)),w=T(n(1044)),I=T(n(289));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var O=function(){function e(t){var n=t.words,r=t.legacy;(0,s.default)(this,e),this.words=n,this._isLegacy=r}var t,n,r,o,v,A,T;return(0,l.default)(e,[{key:"toPrivateKey",value:(T=(0,c.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",!this._isLegacy){e.next=5;break}if(!(t.length>0)){e.next=4;break}throw new Error("legacy 22-word mnemonics do not support passphrases");case 4:return e.abrupt("return",this.toLegacyPrivateKey());case 5:return e.next=7,this._toPrivateKey(t);case 7:return e.abrupt("return",e.sent);case 8:case"end":return e.stop()}}),e,this)}))),function(){return T.apply(this,arguments)})},{key:"_validate",value:(A=(0,c.default)(a.default.mark((function e(){var t,n,r,o,c,s,l,f,d,m,v,g,k;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._isLegacy){e.next=12;break}if(22===this.words.length){e.next=3;break}throw new p.default(this,h.default.BadLength,[]);case 3:if(!((t=this.words.reduce((function(e,t,n){return y.default.includes(t.toLowerCase())?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=6;break}throw new p.default(this,h.default.UnknownWords,t);case 6:if(n=w.legacy1(this.words,y.default),r=(0,i.default)(n,2),o=r[0],c=r[1],s=w.crc8(o),c===s){e.next=10;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 10:e.next=28;break;case 12:if(12===this.words.length||24===this.words.length){e.next=14;break}throw new p.default(this,h.default.BadLength,[]);case 14:if(!((l=this.words.reduce((function(e,t,n){return b.default.includes(t)?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=17;break}throw new p.default(this,h.default.UnknownWords,l);case 17:return f=this.words.map((function(e){return b.default.indexOf(e).toString(2).padStart(11,"0")})).join(""),d=32*Math.floor(f.length/33),m=f.slice(0,d),v=f.slice(d),g=m.match(/(.{1,8})/g),k=g.map(E),e.next=25,S(Uint8Array.from(k));case 25:if(e.sent===v){e.next=28;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 28:return e.abrupt("return",this);case 29:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"_toPrivateKey",value:(v=(0,c.default)(a.default.mark((function e(){var t,n,r,o,i,u,c,s,l,p,h,y,b=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=b.length>0&&void 0!==b[0]?b[0]:"",n=this.words.join(" "),r="mnemonic".concat(t),e.next=5,g.deriveKey(k.HashAlgorithm.Sha512,n,r,2048,64);case 5:return o=e.sent,e.next=8,k.hash(k.HashAlgorithm.Sha512,"ed25519 seed",o);case 8:i=e.sent,u=i.subarray(0,32),c=i.subarray(32),s=0,l=[44,3030,0,0];case 12:if(!(s>8,i=255&o;a?n.push(a,i):n.push(i)}return n},r.zero2=o,r.toHex=a,r.encode=function(e,t){return"hex"===t?a(e):e}},function(e,t,n){"use strict";var r,o=n(0)(n(3));function a(e){this.rand=e}if(e.exports=function(e){return r||(r=new a(null)),r.generate(e)},e.exports.Rand=a,a.prototype.generate=function(e){return this._rand(e)},a.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),n=0;n>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(82),o=n(175),a=n(517),i=n(127),u=r.sum32,c=r.sum32_4,s=r.sum32_5,l=a.ch32,f=a.maj32,d=a.s0_256,p=a.s1_256,h=a.g0_256,y=a.g1_256,b=o.BlockHash,m=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function v(){if(!(this instanceof v))return new v;b.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=m,this.W=new Array(64)}r.inherits(v,b),e.exports=v,v.blockSize=512,v.outSize=256,v.hmacStrength=192,v.padLength=64,v.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){c=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(c)throw a}}}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n4)throw new Error("unsupported DER integer length of ".concat(t," bytes"));return n.getUint32(0,!1)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(218)),p=r(n(524)),h=r(n(94)),y=r(n(39)),b=r(n(128));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var g=function(e){(0,s.default)(g,e);var t,n,r,o,l,f,y,b,m=v(g);function g(e){var t;return(0,u.default)(this,g),(t=m.call(this))._key=e,t}return(0,c.default)(g,[{key:"derive",value:(b=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,this._key.derive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return b.apply(this,arguments)})},{key:"legacyDerive",value:(y=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,this._key.legacyDerive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"publicKey",get:function(){return new h.default(this._key.publicKey)}},{key:"sign",value:function(e){return this._key.sign(e)}},{key:"signTransaction",value:function(e){var t=e._signedTransactions[0],n=null!=t.bodyBytes?this.sign(t.bodyBytes):new Uint8Array;return e.addSignature(this.publicKey,n),n}},{key:"isDerivable",value:function(){return this._key.isDerivable()}},{key:"toBytes",value:function(){return this._key.toBytes()}},{key:"toBytesDer",value:function(){return this._key.toBytesDer()}},{key:"toBytesRaw",value:function(){return this._key.toBytesRaw()}},{key:"toString",value:function(){return this._key.toStringDer()}},{key:"toStringDer",value:function(){return this._key.toStringDer()}},{key:"toStringRaw",value:function(){return this._key.toStringRaw()}},{key:"toKeystore",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._key.toKeystore(e)}},{key:"_toProtobufKey",value:function(){return this.publicKey._toProtobufKey()}},{key:"toAccountId",value:function(e,t){return this.publicKey.toAccountId(e,t)}}],[{key:"generateED25519",value:function(){return new g(d.PrivateKey.generateED25519())}},{key:"generateECDSA",value:function(){return new g(d.PrivateKey.generateECDSA())}},{key:"generate",value:function(){return g.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,d.PrivateKey.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,d.PrivateKey.generateED25519Async();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=g,e.next=3,d.PrivateKey.generateECDSAAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){return new g(d.PrivateKey.fromBytes(e))}},{key:"fromBytesECDSA",value:function(e){return new g(d.PrivateKey.fromBytesECDSA(e))}},{key:"fromBytesED25519",value:function(e){return new g(d.PrivateKey.fromBytesED25519(e))}},{key:"fromString",value:function(e){return new g(d.PrivateKey.fromString(e))}},{key:"fromStringECDSA",value:function(e){return new g(d.PrivateKey.fromStringECDSA(e))}},{key:"fromStringED25519",value:function(e){return new g(d.PrivateKey.fromStringED25519(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"",!(t instanceof p.default)){e.next=7;break}return e.t0=g,e.next=5,d.PrivateKey.fromMnemonic(t._mnemonic,n);case 5:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 7:return e.t2=g,e.next=10,d.PrivateKey.fromMnemonic(t,n);case 10:return e.t3=e.sent,e.abrupt("return",new e.t2(e.t3));case 12:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=g,e.next=4,d.PrivateKey.fromKeystore(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=g,e.next=4,d.PrivateKey.fromPem(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),g}(y.default);t.default=g,b.default.privateKeyConstructor=function(e){return new g(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(218)),l=r(n(128));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}var d=function(){function e(t){(0,u.default)(this,e),this._mnemonic=t}var t,n,r,o,f,d;return(0,c.default)(e,[{key:"toPrivateKey",value:(d=(0,i.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",null!=l.default.privateKeyConstructor){e.next=3;break}throw new Error("`PrivateKey` has not been loaded");case 3:return e.t0=l.default,e.next=6,this._mnemonic.toPrivateKey(t);case 6:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 8:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"toLegacyPrivateKey",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=l.default.privateKeyConstructor){e.next=2;break}throw new Error("`PrivateKey` has not been loaded");case 2:return e.t0=l.default,e.next=5,this._mnemonic.toLegacyPrivateKey();case 5:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 7:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"toString",value:function(){return this._mnemonic.toString()}}],[{key:"generate",value:(o=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(24);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return o.apply(this,arguments)})},{key:"generate12",value:(r=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(12);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return r.apply(this,arguments)})},{key:"fromWords",value:(n=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromWords(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return n.apply(this,arguments)})},{key:"fromString",value:(t=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromString(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayEqual=function(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;var n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=new DataView(t.buffer,t.byteOffset,t.byteLength),o=e.byteLength;for(;o--;)if(n.getUint8(o)!==r.getUint8(o))return!1;return!0},t.arrayStartsWith=function(e,t){if(e.byteLength=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[n++]=127&e.lo|128,e.lo=e.lo>>>7;t[n++]=e.lo}function b(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}f.create=d(),f.alloc=function(e){return new o.Array(e)},o.Array!==Array&&(f.alloc=o.pool(f.alloc,o.Array.prototype.subarray)),f.prototype._push=function(e,t,n){return this.tail=this.tail.next=new c(e,t,n),this.len+=t,this},h.prototype=Object.create(c.prototype),h.prototype.fn=function(e,t,n){for(;e>127;)t[n++]=127&e|128,e>>>=7;t[n]=e},f.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new h((e>>>=0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this},f.prototype.int32=function(e){return e<0?this._push(y,10,a.fromNumber(e)):this.uint32(e)},f.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)},f.prototype.uint64=function(e){var t=a.from(e);return this._push(y,t.length(),t)},f.prototype.int64=f.prototype.uint64,f.prototype.sint64=function(e){var t=a.from(e).zzEncode();return this._push(y,t.length(),t)},f.prototype.bool=function(e){return this._push(p,1,e?1:0)},f.prototype.fixed32=function(e){return this._push(b,4,e>>>0)},f.prototype.sfixed32=f.prototype.fixed32,f.prototype.fixed64=function(e){var t=a.from(e);return this._push(b,4,t.lo)._push(b,4,t.hi)},f.prototype.sfixed64=f.prototype.fixed64,f.prototype.float=function(e){return this._push(o.float.writeFloatLE,4,e)},f.prototype.double=function(e){return this._push(o.float.writeDoubleLE,8,e)};var m=o.Array.prototype.set?function(e,t,n){t.set(e,n)}:function(e,t,n){for(var r=0;r>>0;if(!t)return this._push(p,1,0);if(o.isString(e)){var n=f.alloc(t=i.length(e));i.decode(e,n,0),e=n}return this.uint32(t)._push(m,t,e)},f.prototype.string=function(e){var t=u.length(e);return t?this.uint32(t)._push(u.write,t,e):this._push(p,1,0)},f.prototype.fork=function(){return this.states=new l(this),this.head=this.tail=new c(s,0,0),this.len=0,this},f.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new c(s,0,0),this.len=0),this},f.prototype.ldelim=function(){var e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=t,this.len+=n),this},f.prototype.finish=function(){for(var e=this.head.next,t=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t},f._configure=function(e){r=e,f.create=d(),r._configure()}},function(e,t,n){"use strict";e.exports=c;var r,o=n(130),a=o.LongBits,i=o.utf8;function u(e,t){return RangeError("index out of range: "+e.pos+" + "+(t||1)+" > "+e.len)}function c(e){this.buf=e,this.pos=0,this.len=e.length}var s,l="undefined"!=typeof Uint8Array?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new c(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new c(e);throw Error("illegal buffer")},f=function(){return o.Buffer?function(e){return(c.create=function(e){return o.Buffer.isBuffer(e)?new r(e):l(e)})(e)}:l};function d(){var e=new a(0,0),t=0;if(!(this.len-this.pos>4)){for(;t<3;++t){if(this.pos>=this.len)throw u(this);if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(127&this.buf[this.pos++])<<7*t)>>>0,e}for(;t<4;++t)if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(127&this.buf[this.pos])<<28)>>>0,e.hi=(e.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return e;if(t=0,this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw u(this);if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}function p(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}function h(){if(this.pos+8>this.len)throw u(this,8);return new a(p(this.buf,this.pos+=4),p(this.buf,this.pos+=4))}c.create=f(),c.prototype._slice=o.Array.prototype.subarray||o.Array.prototype.slice,c.prototype.uint32=(s=4294967295,function(){if(s=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return s;if((this.pos+=5)>this.len)throw this.pos=this.len,u(this,10);return s}),c.prototype.int32=function(){return 0|this.uint32()},c.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(1&e)|0},c.prototype.bool=function(){return 0!==this.uint32()},c.prototype.fixed32=function(){if(this.pos+4>this.len)throw u(this,4);return p(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw u(this,4);return 0|p(this.buf,this.pos+=4)},c.prototype.float=function(){if(this.pos+4>this.len)throw u(this,4);var e=o.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e},c.prototype.double=function(){if(this.pos+8>this.len)throw u(this,4);var e=o.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e},c.prototype.bytes=function(){var e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw u(this,e);return this.pos+=e,Array.isArray(this.buf)?this.buf.slice(t,n):t===n?new this.buf.constructor(0):this._slice.call(this.buf,t,n)},c.prototype.string=function(){var e=this.bytes();return i.read(e,0,e.length)},c.prototype.skip=function(e){if("number"==typeof e){if(this.pos+e>this.len)throw u(this,e);this.pos+=e}else do{if(this.pos>=this.len)throw u(this)}while(128&this.buf[this.pos++]);return this},c.prototype.skipType=function(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(e=7&this.uint32());)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+e+" at offset "+this.pos)}return this},c._configure=function(e){r=e,c.create=f(),r._configure();var t=o.Long?"toLong":"toNumber";o.merge(c.prototype,{int64:function(){return d.call(this)[t](!1)},uint64:function(){return d.call(this)[t](!0)},sint64:function(){return d.call(this).zzDecode()[t](!1)},fixed64:function(){return h.call(this)[t](!0)},sfixed64:function(){return h.call(this)[t](!1)}})}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),f=r(n(14)),d=r(n(55)),p=r(n(526));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._contractId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoGetBalance(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptogetAccountBalance.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptogetAccountBalance;return Promise.resolve(p.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{cryptogetAccountBalance:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptogetAccountBalance;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,contractId:null!=t.contractID?d.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=b,l.QUERY_REGISTRY.set("cryptogetAccountBalance",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.Ok:return"OK";case e.Cancelled:return"CANCELLED";case e.Unknown:return"UNKNOWN";case e.InvalidArgument:return"INVALID_ARGUMENT";case e.DeadlineExceeded:return"DEADLINE_EXCEEDED";case e.NotFound:return"NOT_FOUND";case e.AlreadyExists:return"ALREADY_EXISTS";case e.PermissionDenied:return"PERMISSION_DENIED";case e.Unauthenticated:return"UNAUTHENTICATED";case e.ResourceExhausted:return"RESOURCE_EXHAUSTED";case e.FailedPrecondition:return"FAILED_PRECONDITION";case e.Aborted:return"ABORTED";case e.OutOfRange:return"OUT_OF_RANGE";case e.Unimplemented:return"UNIMPLEMENTED";case e.Internal:return"INTERNAL";case e.Unavailable:return"UNAVAILABLE";case e.DataLoss:return"DATA_LOSS";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromValue",value:function(t){switch(t){case 0:return e.Ok;case 1:return e.Cancelled;case 2:return e.Unknown;case 3:return e.InvalidArgument;case 4:return e.DeadlineExceeded;case 5:return e.NotFound;case 6:return e.AlreadyExists;case 7:return e.PermissionDenied;case 16:return e.Unauthenticated;case 8:return e.ResourceExhausted;case 9:return e.FailedPrecondition;case 10:return e.Aborted;case 11:return e.OutOfRange;case 12:return e.Unimplemented;case 13:return e.Internal;case 14:return e.Unavailable;case 15:return e.DataLoss;default:throw new Error("(BUG) non-exhaustive GrpcStatus switch statement")}}}]),e}();t.default=i,i.Ok=new i(0),i.Cancelled=new i(1),i.Unknown=new i(2),i.InvalidArgument=new i(3),i.DeadlineExceeded=new i(4),i.NotFound=new i(5),i.AlreadyExists=new i(6),i.PermissionDenied=new i(7),i.Unauthenticated=new i(16),i.ResourceExhausted=new i(8),i.FailedPrecondition=new i(9),i.Aborted=new i(10),i.OutOfRange=new i(11),i.Unimplemented=new i(12),i.Internal=new i(13),i.Unavailable=new i(14),i.DataLoss=new i(15)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(7)),a=r(n(8)),i=r(n(1)),u=r(n(2)),c=r(n(223)),s=r(n(131)),l=r(n(534)),f=r(n(536)),d=function(){function e(t){(0,i.default)(this,e),this.nodeId=t.nodeId,this.transactionHash=t.transactionHash,this.transactionId=t.transactionId,Object.freeze(this)}var t,n;return(0,u.default)(e,[{key:"getReceipt",value:(n=(0,a.default)(o.default.mark((function e(t){var n;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(new l.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t);case 2:if((n=e.sent).status===s.default.Success){e.next=5;break}throw new c.default({transactionReceipt:n,status:n.status,transactionId:this.transactionId});case 5:return e.abrupt("return",n);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"getRecord",value:(t=(0,a.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getReceipt(t);case 2:return e.abrupt("return",(new f.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),f=r(n(131)),d=r(n(224)),p=r(n(67)),h=r(n(177)),y=r(n(223)),b=n(158),m=n(34);function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeDuplicates",value:function(e){return this._includeDuplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._includeDuplicates&&this._includeDuplicates}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:m.ResponseCodeEnum.OK);switch(r){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return b.ExecutionState.Retry;case f.default.Ok:break;default:return b.ExecutionState.Error}var o=t.transactionGetReceipt.receipt.status;switch(r=f.default._fromCode(o)){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return b.ExecutionState.Retry;case f.default.Success:return b.ExecutionState.Finished;default:return b.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:m.ResponseCodeEnum.OK);switch(r){case f.default.Ok:break;default:return new h.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetReceipt,a=o.receipt.status;return r=f.default._fromCode(a),new y.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf(o)})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTransactionReceipts(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetReceipt.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetReceipt;return Promise.resolve(d.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetReceipt:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeDuplicates:this._includeDuplicates,includeChildReceipts:this._includeChildren}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetReceipt;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0,includeChildren:null!=t.includeChildReceipts?t.includeChildReceipts:void 0})}}]),n}(l.default);t.default=k,l.QUERY_REGISTRY.set("transactionGetReceipt",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(25)),u=function(){function e(t){(0,o.default)(this,e),this.hbars=t.hbars,this.cents=t.cents,this.expirationTime=t.expirationTime,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{hbarEquiv:this.hbars,centEquiv:this.cents,expirationTime:{seconds:i.default.fromNumber(this.expirationTime.getSeconds())}}}}],[{key:"_fromProtobuf",value:function(t){return new e({hbars:t.hbarEquiv,cents:t.centEquiv,expirationTime:new Date(null!=t.expirationTime&&null!=t.expirationTime.seconds?t.expirationTime.seconds instanceof i.default?t.expirationTime.seconds.toInt():t.expirationTime.seconds:0)})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),f=r(n(295)),d=r(n(224)),p=r(n(67)),h=r(n(131)),y=r(n(177)),b=r(n(223)),m=n(158),v=n(34);function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var _=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"setIncludeDuplicates",value:function(e){return this._duplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._duplicates&&this._duplicates}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return m.ExecutionState.Retry;case h.default.Ok:break;default:return m.ExecutionState.Error}var o=t.transactionGetRecord;if(o.header.responseType===v.ResponseType.COST_ANSWER)return m.ExecutionState.Finished;var a=o.transactionRecord.receipt.status;switch(r=h.default._fromCode(a)){case h.default.Ok:case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return m.ExecutionState.Retry;case h.default.Success:return m.ExecutionState.Finished;default:return m.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Ok:break;default:return new y.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetRecord.transactionRecord.receipt,a=o.status;return r=h.default._fromCode(a),new b.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf({receipt:o})})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTxRecordByTxID(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetRecord.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetRecord;return Promise.resolve(f.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetRecord:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeChildRecords:this._includeChildren,includeDuplicates:this._includeDuplicates}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetRecord;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeChildren:null!=t.includeChildRecords?t.includeChildRecords:void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0})}}]),n}(l.default);t.default=_,l.QUERY_REGISTRY.set("transactionGetRecord",_._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(14)),u=r(n(32)),c=function(){function e(t){(0,o.default)(this,e),this.accountId=t.accountId instanceof i.default?t.accountId:i.default.fromString(t.accountId),this.amount=t.amount instanceof u.default?t.amount:new u.default(t.amount),Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{accountID:this.accountId._toProtobuf(),amount:this.amount.toTinybars()}}}],[{key:"_fromProtobuf",value:function(t){return new e({accountId:i.default._fromProtobuf(t.accountID),amount:u.default.fromTinybars(null!=t.amount?t.amount:0)})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(55)),u=function(){function e(t){(0,o.default)(this,e),this.contractId=t.contractId,this.bloom=t.bloom,this.topics=t.topics,this.data=t.data,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),bloom:this.bloom,topic:this.topics,data:this.data}}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:i.default._fromProtobuf(t.contractID),bloom:null!=t.bloom?t.bloom:new Uint8Array,topics:null!=t.topic?t.topic:[],data:null!=t.data?t.data:new Uint8Array})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(14)),d=r(n(1093));function p(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return h(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return h(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId),this._amount,null!=t.amount&&this.setAmount(t.amount),this._payerAccountIds,null!=t.payerAccountIds&&this.setPayerAccountIds(t.payerAccountIds)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?u.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?i.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?c.default.fromNumber(e):e,this}},{key:"payerAccountIds",get:function(){return this._payerAccountIds}},{key:"setPayerAccountIds",value:function(e){return this._payerAccountIds=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,amount:this._amount,effectivePayerAccountId:null!=this._payerAccountIds?this._payerAccountIds.map((function(e){return e._toProtobuf()})):null}}}],[{key:"_fromProtobuf",value:function(t){return new e({feeCollectorAccountId:null!=t.feeCollectorAccountId?u.default._fromProtobuf(t.feeCollectorAccountId):void 0,tokenId:null!=t.tokenId?i.default._fromProtobuf(t.tokenId):void 0,amount:null!=t.amount?t.amount:void 0,payerAccountIds:null!=t.effectivePayerAccountId?t.effectivePayerAccountId.map((function(e){return u.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.digest=function(e){return i.apply(this,arguments)};var o=r(n(7)),a=r(n(8));function i(){return(i=(0,a.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=Uint8Array,e.next=3,crypto.subtle.digest("SHA-384",t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(14)),c=r(n(297)),s=r(n(32)),l=r(n(40)),f=r(n(25)),d=r(n(544)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(34)),h=r(n(56)),y=r(n(39)),b=r(n(94)),m=r(n(84));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}var g=function(){function e(t){(0,a.default)(this,e),this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.isDeleted=t.isDeleted,this.proxyAccountId=t.proxyAccountId,this.proxyReceived=t.proxyReceived,this.key=t.key,this.balance=t.balance,this.sendRecordThreshold=t.sendRecordThreshold,this.receiveRecordThreshold=t.receiveRecordThreshold,this.isReceiverSignatureRequired=t.isReceiverSignatureRequired,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.liveHashes=t.liveHashes,this.tokenRelationships=t.tokenRelationships,this.accountMemo=t.accountMemo,this.ownedNfts=t.ownedNfts,this.maxAutomaticTokenAssociations=t.maxAutomaticTokenAssociations,this.aliasKey=t.aliasKey,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,deleted:this.isDeleted,proxyAccountID:null!=this.proxyAccountId?this.proxyAccountId._toProtobuf():null,proxyReceived:this.proxyReceived.toTinybars(),key:this.key._toProtobufKey(),balance:this.balance.toTinybars(),generateSendRecordThreshold:this.sendRecordThreshold.toTinybars(),generateReceiveRecordThreshold:this.receiveRecordThreshold.toTinybars(),receiverSigRequired:this.isReceiverSignatureRequired,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:this.autoRenewPeriod._toProtobuf(),liveHashes:this.liveHashes.map((function(e){return e._toProtobuf()})),tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,memo:this.accountMemo,ownedNfts:this.ownedNfts,maxAutomaticTokenAssociations:this.maxAutomaticTokenAssociations.toInt(),alias:null!=this.aliasKey?p.Key.encode(this.aliasKey._toProtobufKey()).finish():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.CryptoGetInfoResponse.AccountInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=null!=t.alias&&t.alias.length>0?y.default._fromProtobufKey(p.Key.decode(t.alias)):null;return n instanceof b.default||(n=null),new e({accountId:u.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:null,isDeleted:null!=t.deleted&&t.deleted,key:y.default._fromProtobufKey(t.key),balance:s.default.fromTinybars(null!=t.balance?t.balance:0),sendRecordThreshold:s.default.fromTinybars(null!=t.generateSendRecordThreshold?t.generateSendRecordThreshold:0),receiveRecordThreshold:s.default.fromTinybars(null!=t.generateReceiveRecordThreshold?t.generateReceiveRecordThreshold:0),isReceiverSignatureRequired:null!=t.receiverSigRequired&&t.receiverSigRequired,expirationTime:l.default._fromProtobuf(t.expirationTime),autoRenewPeriod:null!=t.autoRenewPeriod?new h.default(t.autoRenewPeriod.seconds):new h.default(0),proxyAccountId:null!=t.proxyAccountID&&0!==f.default.fromValue(t.proxyAccountID.shardNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.realmNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.accountNum).toInt()?u.default._fromProtobuf(t.proxyAccountID):null,proxyReceived:s.default.fromTinybars(null!=t.proxyReceived?t.proxyReceived:0),liveHashes:(null!=t.liveHashes?t.liveHashes:[]).map((function(e){return c.default._fromProtobuf(e)})),tokenRelationships:d.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),accountMemo:null!=t.memo?t.memo:"",ownedNfts:t.ownedNfts?t.ownedNfts:f.default.ZERO,maxAutomaticTokenAssociations:t.maxAutomaticTokenAssociations?f.default.fromNumber(t.maxAutomaticTokenAssociations):f.default.ZERO,aliasKey:n,ledgerId:null!=t.ledgerId?m.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.CryptoGetInfoResponse.AccountInfo.decode(t))}}]),e}();t.default=g},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(1099));function d(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&(this._params+=","),this._params+=function(e){var t="";switch(e.ty){case d.uint8:t="uint8";break;case d.int8:t="int8";break;case d.uint16:t="uint16";break;case d.int16:t="int16";break;case d.uint32:t="uint32";break;case d.int32:t="int32";break;case d.uint64:t="uint64";break;case d.int64:t="int64";break;case d.uint256:t="uint256";break;case d.int256:t="int256";break;case d.string:t="string";break;case d.bool:t="bool";break;case d.bytes:t="bytes";break;case d.bytes32:t="bytes32";break;case d.address:t="address";break;case d.func:t="function";break;default:t=""}e.array&&(t+="[]");return t}(e),this._paramTypes.push(e),this}},{key:"_build",value:function(e){if(null!=e)this._name=e;else if(null==this._name)throw new Error("`name` required for ContractFunctionSelector");var t=c.encode(s.encode(this.toString()));return c.decode((0,u.keccak256)("0x".concat(t))).slice(0,4)}},{key:"toString",value:function(){return"".concat(null!=this._name?this._name.toString():"","(").concat(this._params,")")}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(55)),c=r(n(14)),s=r(n(40)),l=r(n(56)),f=r(n(32)),d=r(n(25)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(34)),h=r(n(544)),y=r(n(39)),b=r(n(84));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}var v=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.storage=t.storage,this.contractMemo=t.contractMemo,this.balance=t.balance,this.isDeleted=t.isDeleted,this.tokenRelationships=t.tokenRelationships,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,storage:this.storage,memo:this.contractMemo,balance:this.balance.toTinybars(),deleted:this.isDeleted,tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.ContractGetInfoResponse.ContractInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.autoRenewPeriod.seconds;return new e({contractId:u.default._fromProtobuf(t.contractID),accountId:c.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:"",adminKey:null!=t.adminKey?y.default._fromProtobufKey(t.adminKey):null,expirationTime:s.default._fromProtobuf(t.expirationTime),autoRenewPeriod:new l.default(n),storage:null!=t.storage?t.storage instanceof d.default?t.storage:d.default.fromValue(t.storage):d.default.ZERO,contractMemo:null!=t.memo?t.memo:"",balance:f.default.fromTinybars(null!=t.balance?t.balance:0),isDeleted:t.deleted,tokenRelationships:h.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),ledgerId:null!=t.ledgerId?b.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.ContractGetInfoResponse.ContractInfo.decode(t))}}]),e}();t.default=v},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(57)),c=r(n(40)),s=r(n(25)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(34)),f=r(n(129)),d=r(n(84));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}var h=function(){function e(t){(0,a.default)(this,e),this.fileId=t.fileId,this.size=t.size,this.expirationTime=t.expirationTime,this.isDeleted=t.isDeleted,this.keys=t.keys,this.fileMemo=t.fileMemo,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{fileID:this.fileId._toProtobuf(),size:this.size,expirationTime:this.expirationTime._toProtobuf(),deleted:this.isDeleted,keys:this.keys._toProtobufKey().keyList,memo:this.fileMemo,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return l.FileGetInfoResponse.FileInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.size;return new e({fileId:u.default._fromProtobuf(t.fileID),size:n instanceof s.default?n:s.default.fromValue(n),expirationTime:c.default._fromProtobuf(t.expirationTime),isDeleted:t.deleted,keys:null!=t.keys?f.default.__fromProtobufKeyList(t.keys):new f.default,fileMemo:null!=t.memo?t.memo:"",ledgerId:null!=t.ledgerId?d.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.FileGetInfoResponse.FileInfo.decode(t))}}]),e}();t.default=h},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(550)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(34));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}var l=function(){function e(t){(0,a.default)(this,e),this.protobufVersion=t.protobufVersion,this.servicesVesion=t.servicesVesion,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{hapiProtoVersion:this.protobufVersion._toProtobuf(),hederaServicesVersion:this.servicesVesion._toProtobuf()}}},{key:"toBytes",value:function(){return c.NetworkGetVersionInfoResponse.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({protobufVersion:u.default._fromProtobuf(t.hapiProtoVersion),servicesVesion:u.default._fromProtobuf(t.hederaServicesVersion)})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(c.NetworkGetVersionInfoResponse.decode(t))}}]),e}();t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(34));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.major=t.major,this.minor=t.minor,this.patch=t.patch,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{major:this.major,minor:this.minor,patch:this.patch}}},{key:"toBytes",value:function(){return u.SemanticVersion.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({major:t.major,minor:t.minor,patch:t.patch})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.SemanticVersion.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(109)),a=r(n(1)),i=r(n(2)),u=r(n(132)),c=r(n(14)),s=r(n(40)),l=r(n(21)),f=n(34),d=r(n(67)),p=r(n(39)),h=r(n(129)),y=function(){function e(t){(0,a.default)(this,e),this.scheduleId=t.scheduleId,this.creatorAccountId=t.creatorAccountID,this.payerAccountId=t.payerAccountID,this.schedulableTransactionBody=t.schedulableTransactionBody,this.signers=t.signers,this.scheduleMemo=t.scheduleMemo,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.executed=t.executed,this.deleted=t.deleted,this.scheduledTransactionId=t.scheduledTransactionId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{scheduleID:null!=this.scheduleId?this.scheduleId._toProtobuf():null,creatorAccountID:null!=this.creatorAccountId?this.creatorAccountId._toProtobuf():null,payerAccountID:null!=this.payerAccountId?this.payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this.schedulableTransactionBody?this.schedulableTransactionBody:null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,signers:null!=this.signers?this.signers._toProtobufKey().keyList:null,memo:null!=this.scheduleMemo?this.scheduleMemo:"",expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,scheduledTransactionID:null!=this.scheduledTransactionId?this.scheduledTransactionId._toProtobuf():null}}},{key:"scheduledTransaction",get:function(){if(null==this.schedulableTransactionBody)throw new Error("Scheduled transaction body is empty");var e=new f.SchedulableTransactionBody(this.schedulableTransactionBody),t=e.data;return l.default.fromBytes(f.TransactionList.encode({transactionList:[{signedTransactionBytes:f.SignedTransaction.encode({bodyBytes:f.TransactionBody.encode((0,o.default)({transactionFee:this.schedulableTransactionBody.transactionFee,memo:this.schedulableTransactionBody.memo},t,e[t])).finish()}).finish()}]}).finish())}}],[{key:"_fromProtobuf",value:function(t){return new e({scheduleId:u.default._fromProtobuf(t.scheduleID),creatorAccountID:null!=t.creatorAccountID?c.default._fromProtobuf(t.creatorAccountID):null,payerAccountID:null!=t.payerAccountID?c.default._fromProtobuf(t.payerAccountID):null,schedulableTransactionBody:null!=t.scheduledTransactionBody?t.scheduledTransactionBody:null,adminKey:null!=t.adminKey?p.default._fromProtobufKey(t.adminKey):null,signers:null!=t.signers?h.default.__fromProtobufKeyList(t.signers):null,scheduleMemo:null!=t.memo?t.memo:null,expirationTime:null!=t.expirationTime?s.default._fromProtobuf(t.expirationTime):null,executed:null!=t.executionTime?s.default._fromProtobuf(t.executionTime):null,deleted:null!=t.deletionTime?s.default._fromProtobuf(t.deletionTime):null,scheduledTransactionId:null!=t.scheduledTransactionID?d.default._fromProtobuf(t.scheduledTransactionID):null})}}]),e}();t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(29)),c=r(n(14)),s=r(n(56)),l=r(n(40)),f=r(n(25)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=k(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(34)),p=r(n(298)),h=r(n(299)),y=r(n(178)),b=r(n(228)),m=r(n(227)),v=r(n(39)),g=r(n(84));function k(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(k=function(e){return e?n:t})(e)}var _=function(){function e(t){(0,a.default)(this,e),this.tokenId=t.tokenId,this.name=t.name,this.symbol=t.symbol,this.decimals=t.decimals,this.totalSupply=t.totalSupply,this.treasuryAccountId=t.treasuryAccountId,this.adminKey=t.adminKey,this.kycKey=t.kycKey,this.freezeKey=t.freezeKey,this.pauseKey=t.pauseKey,this.wipeKey=t.wipeKey,this.supplyKey=t.supplyKey,this.feeScheduleKey=t.feeScheduleKey,this.defaultFreezeStatus=t.defaultFreezeStatus,this.defaultKycStatus=t.defaultKycStatus,this.pauseStatus=t.pauseStatus,this.isDeleted=t.isDeleted,this.autoRenewAccountId=t.autoRenewAccountId,this.autoRenewPeriod=t.autoRenewPeriod,this.expirationTime=t.expirationTime,this.tokenMemo=t.tokenMemo,this.customFees=t.customFees,this.tokenType=t.tokenType,this.supplyType=t.supplyType,this.maxSupply=t.maxSupply,this.ledgerId=t.ledgerId}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),name:this.name,symbol:this.symbol,decimals:this.decimals,totalSupply:this.totalSupply,treasury:null!=this.treasuryAccountId?this.treasuryAccountId._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,kycKey:null!=this.kycKey?this.kycKey._toProtobufKey():null,freezeKey:null!=this.freezeKey?this.freezeKey._toProtobufKey():null,pauseKey:null!=this.pauseKey?this.pauseKey._toProtobufKey():null,wipeKey:null!=this.wipeKey?this.wipeKey._toProtobufKey():null,supplyKey:null!=this.supplyKey?this.supplyKey._toProtobufKey():null,feeScheduleKey:null!=this.feeScheduleKey?this.feeScheduleKey._toProtobufKey():null,defaultFreezeStatus:null==this.defaultFreezeStatus?0:this.defaultFreezeStatus?1:2,defaultKycStatus:null==this.defaultKycStatus?0:this.defaultKycStatus?1:2,pauseStatus:null==this.pauseStatus?0:this.pauseStatus?1:2,deleted:this.isDeleted,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():void 0,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,expiry:null!=this.expirationTime?this.expirationTime._toProtobuf():null,memo:this.tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this.tokenType?this.tokenType._code:null,supplyType:null!=this.supplyType?this.supplyType._code:null,maxSupply:this.maxSupply,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return d.TokenInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.defaultFreezeStatus,r=t.defaultKycStatus,o=t.pauseStatus,a=null!=t.autoRenewAccount?c.default._fromProtobuf(t.autoRenewAccount):new c.default(0);return new e({tokenId:u.default._fromProtobuf(t.tokenId),name:t.name,symbol:t.symbol,decimals:t.decimals,totalSupply:f.default.fromValue(t.totalSupply),treasuryAccountId:null!=t.treasury?c.default._fromProtobuf(t.treasury):null,adminKey:null!=t.adminKey?v.default._fromProtobufKey(t.adminKey):null,kycKey:null!=t.kycKey?v.default._fromProtobufKey(t.kycKey):null,freezeKey:null!=t.freezeKey?v.default._fromProtobufKey(t.freezeKey):null,pauseKey:null!=t.pauseKey?v.default._fromProtobufKey(t.pauseKey):null,wipeKey:null!=t.wipeKey?v.default._fromProtobufKey(t.wipeKey):null,supplyKey:null!=t.supplyKey?v.default._fromProtobufKey(t.supplyKey):null,feeScheduleKey:null!=t.feeScheduleKey?v.default._fromProtobufKey(t.feeScheduleKey):null,defaultFreezeStatus:0===n?null:1==n,defaultKycStatus:0===r?null:1==r,pauseStatus:0===o?null:1==o,isDeleted:t.deleted,autoRenewAccountId:0!=a.shard.toInt()||0!=a.realm.toInt()||0!=a.num.toInt()?a:null,autoRenewPeriod:null!=t.autoRenewPeriod?s.default._fromProtobuf(t.autoRenewPeriod):null,expirationTime:null!=t.expiry?l.default._fromProtobuf(t.expiry):null,tokenMemo:null!=t.memo?t.memo:"",customFees:null!=t.customFees?t.customFees.map((function(e){return null!=e.fixedFee?y.default._fromProtobuf(e):null!=e.fractionalFee?b.default._fromProtobuf(e):m.default._fromProtobuf(e)})):[],tokenType:null!=t.tokenType?p.default._fromCode(t.tokenType):null,supplyType:null!=t.supplyType?h.default._fromCode(t.supplyType):null,maxSupply:null!=t.maxSupply?t.maxSupply:null,ledgerId:null!=t.ledgerId?g.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.TokenInfo.decode(t))}}]),e}();t.default=_},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(229)),c=r(n(14)),s=r(n(40)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(83)),f=r(n(84));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t){(0,a.default)(this,e),this.nftId=t.nftId,this.accountId=t.accountId,this.creationTime=t.creationTime,this.metadata=t.metadata,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{nftID:this.nftId._toProtobuf(),accountID:this.accountId._toProtobuf(),creationTime:this.creationTime._toProtobuf(),metadata:this.metadata,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toJson",value:function(){return{nftId:this.nftId.toString(),accountId:this.accountId.toString(),creationTime:this.creationTime.toString(),metadata:null!=this.metadata?l.encode(this.metadata):null,ledgerId:null!=this.ledgerId?this.ledgerId.toString():null}}},{key:"toString",value:function(){return JSON.stringify(this.toJson())}}],[{key:"_fromProtobuf",value:function(t){return new e({nftId:u.default._fromProtobuf(t.nftID),accountId:c.default._fromProtobuf(t.accountID),creationTime:s.default._fromProtobuf(t.creationTime),metadata:void 0!==t.metadata?t.metadata:null,ledgerId:null!=t.ledgerId?f.default.fromBytes(t.ledgerId):null})}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(106)),c=r(n(14)),s=r(n(40)),l=r(n(25)),f=r(n(56)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(34)),p=r(n(39)),h=r(n(84));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var b=function(){function e(t){(0,a.default)(this,e),this.topicId=t.topicId,this.topicMemo=t.topicMemo,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.expirationTime=t.expirationTime,this.adminKey=t.adminKey,this.submitKey=t.submitKey,this.autoRenewPeriod=t.autoRenewPeriod,this.autoRenewAccountId=t.autoRenewAccountId,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{topicID:this.topicId._toProtobuf(),topicInfo:{memo:this.topicMemo,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber,expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,submitKey:null!=this.submitKey?this.submitKey._toProtobufKey():null,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():null}}}},{key:"toBytes",value:function(){return d.ConsensusTopicInfo.encode(this._toProtobuf().topicInfo).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.topicInfo;return new e({topicId:u.default._fromProtobuf(t.topicID),topicMemo:null!=n.memo?n.memo:"",runningHash:null!=n.runningHash?n.runningHash:new Uint8Array,sequenceNumber:null!=n.sequenceNumber?n.sequenceNumber instanceof l.default?n.sequenceNumber:l.default.fromValue(n.sequenceNumber):l.default.ZERO,expirationTime:null!=n.expirationTime?s.default._fromProtobuf(n.expirationTime):null,adminKey:null!=n.adminKey?p.default._fromProtobufKey(n.adminKey):null,submitKey:null!=n.submitKey?p.default._fromProtobufKey(n.submitKey):null,autoRenewPeriod:null!=n.autoRenewPeriod?new f.default(n.autoRenewPeriod.seconds):null,autoRenewAccountId:null!=n.autoRenewAccount?c.default._fromProtobuf(n.autoRenewAccount):null,ledgerId:null!=n.ledgerId?h.default.fromBytes(n.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf({topicInfo:d.ConsensusTopicInfo.decode(t)})}}]),e}();t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(40)),u=r(n(556)),c=r(n(25)),s=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.chunks=t.chunks,Object.freeze(this)}return(0,a.default)(e,null,[{key:"_ofSingle",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof c.default?t.sequenceNumber:c.default.fromNumber(t.sequenceNumber):c.default.ZERO,chunks:[u.default._fromProtobuf(t)]})}},{key:"_ofMany",value:function(t){var n=t[t.length-1],r=i.default._fromProtobuf(n.consensusTimestamp),o=n.runningHash,a=null!=n.sequenceNumber?n.sequenceNumber instanceof c.default?n.sequenceNumber:c.default.fromValue(n.sequenceNumber):c.default.ZERO;t.sort((function(e,t){return(null!=e&&null!=e.chunkInfo&&null!=e.chunkInfo.number?e.chunkInfo.number:0)<(null!=t&&null!=t.chunkInfo&&null!=t.chunkInfo.number?t.chunkInfo.number:0)?-1:1}));var s=t.map((function(e){return u.default._fromProtobuf(e)})),l=s.map((function(e){return e.contents.length})).reduce((function(e,t){return e+t}),0),f=new Uint8Array(l),d=0;return t.forEach((function(e){f.set(e.message,d),d+=e.message.length})),new e({consensusTimestamp:r,contents:f,runningHash:o,sequenceNumber:a,chunks:s})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(40)),u=r(n(25)),c=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{consensusTimestamp:this.consensusTimestamp._toProtobuf(),message:this.contents,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber}}}],[{key:"_fromProtobuf",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof u.default?t.sequenceNumber:u.default.fromValue(t.sequenceNumber):u.default.ZERO})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(1162)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.newNode)this._address="string"==typeof t.newNode.address?i.default.fromString(t.newNode.address):t.newNode.address,this._cert=void 0,this._channel=null,this._channelInitFunction=t.newNode.channelInitFunction,this._currentBackoff=250,this._lastUsed=Date.now(),this._backoffUntil=Date.now(),this._useCount=0,this._attempts=0,this._minBackoff=250,this._maxBackoff=8e3;else{if(null==t.cloneNode)throw new Error("failed to create ManagedNode: ".concat(JSON.stringify(t)));this._address=t.cloneNode.address,this._cert=t.cloneNode.node._cert,this._channel=t.cloneNode.node._channel,this._channelInitFunction=t.cloneNode.node._channelInitFunction,this._currentBackoff=t.cloneNode.node._currentBackoff,this._lastUsed=t.cloneNode.node._lastUsed,this._backoffUntil=t.cloneNode.node._backoffUntil,this._useCount=t.cloneNode.node._useCount,this._attempts=t.cloneNode.node._attempts,this._minBackoff=t.cloneNode.node._minBackoff,this._maxBackoff=t.cloneNode.node._minBackoff}}return(0,a.default)(e,[{key:"getKey",value:function(){throw new Error("not implemented")}},{key:"toInsecure",value:function(){throw new Error("not implemented")}},{key:"toSecure",value:function(){throw new Error("not implemented")}},{key:"setCert",value:function(e){return this}},{key:"address",get:function(){return this._address}},{key:"attempts",get:function(){return this._attempts}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._minBackoff=e,this}},{key:"maxBackoff",get:function(){return this._maxBackoff}},{key:"setmaxBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._maxBackoff=e,this}},{key:"getChannel",value:function(){return this._useCount++,this.__lastUsed=Date.now(),null!=this._channel||(this._channel=this._channelInitFunction(this.address.toString(),this._cert)),this._channel}},{key:"isHealthy",value:function(){return this._backoffUntil<=Date.now()}},{key:"increaseDelay",value:function(){this._currentBackoff=Math.min(2*this._currentBackoff,this._maxBackoff),this._backoffUntil=Date.now()+this._currentBackoff}},{key:"decreaseDelay",value:function(){this._currentBackoff=Math.max(this._currentBackoff/2,this._minBackoff)}},{key:"wait",value:function(){var e=this._backoffUntil-this._lastUsed;return new Promise((function(t){return setTimeout(t,e)}))}},{key:"compare",value:function(e){return this.isHealthy()&&e.isHealthy()?this._useCounte._useCount?1:this._lastUsede._lastUsed?1:0:this.isHealthy()&&!e.isHealthy()?-1:!this.isHealthy()&&e.isHealthy()?1:this._useCounte._useCount?1:this._lastUsede._lastUsed?1:0}},{key:"close",value:function(){null!=this._channel&&this._channel.close(),this._channel=null}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(11)),a=r(n(1)),i=r(n(2)),u=r(n(84));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)for(var e=this._nodes.length-1;e>=0;e--){this._nodes[e]._attempts=e)break;i.has(s.getKey())||a.push(s)}}catch(e){u.e(e)}finally{u.f()}return a}},{key:"_closeNode",value:function(e){var t=this._nodes[e];t.close(),this._removeNodeFromNetwork(t),this._nodes.splice(e,1)}},{key:"_removeNodeFromNetwork",value:function(e){for(var t=this._network.get(e.getKey()),n=0;n256||r%8!=0)&&_.throwArgumentError("invalid "+n[1]+" bit length","param",e),new m.NumberCoder(r/8,"int"===n[1],e.name)}if(n=e.type.match(w)){var o=parseInt(n[1]);return(0===o||o>32)&&_.throwArgumentError("invalid bytes length","param",e),new y.FixedBytesCoder(o,e.name)}return _.throwArgumentError("invalid type","type",e.type)}},{key:"_getWordSize",value:function(){return 32}},{key:"_getReader",value:function(e,t){return new l.Reader(e,this._getWordSize(),this.coerceFunc,t)}},{key:"_getWriter",value:function(){return new l.Writer(this._getWordSize())}},{key:"encode",value:function(e,t){var n=this;e.length!==t.length&&_.throwError("types/values length mismatch",c.Logger.errors.INVALID_ARGUMENT,{count:{types:e.length,values:t.length},value:{types:e,values:t}});var r=e.map((function(e){return n._getCoder(k.ParamType.from(e))})),o=new g.TupleCoder(r,"_"),a=this._getWriter();return o.encode(a,t),a.data}},{key:"decode",value:function(e,t,n){var r=this,o=e.map((function(e){return r._getCoder(k.ParamType.from(e))}));return new g.TupleCoder(o,"_").decode(this._getReader((0,i.arrayify)(t),n))}}]),e}();t.AbiCoder=A;var T=new A;t.defaultAbiCoder=T},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.ArrayCoder=void 0,t.pack=b,t.unpack=m;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(3)),l=n(49),f=n(179),d=n(74),p=n(1178);function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var y=new l.Logger(f.version);function b(e,t,n){var r=null;if(Array.isArray(n))r=n;else if(n&&"object"===(0,s.default)(n)){var o={};r=t.map((function(e){var t=e.localName;return t||y.throwError("cannot encode object for signature with missing names",l.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:e,value:n}),o[t]&&y.throwError("cannot encode object for signature with duplicate names",l.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:e,value:n}),o[t]=!0,n[t]}))}else y.throwArgumentError("invalid tuple value","tuple",n);t.length!==r.length&&y.throwArgumentError("types/value length mismatch","tuple",n);var a=new d.Writer(e.wordSize),i=new d.Writer(e.wordSize),u=[];t.forEach((function(e,t){var n=r[t];if(e.dynamic){var o=i.length;e.encode(i,n);var c=a.writeUpdatableValue();u.push((function(e){c(e+o)}))}else e.encode(a,n)})),u.forEach((function(e){e(a.length)}));var c=e.appendWriter(a);return c+=e.appendWriter(i)}function m(e,t){var n=[],r=e.subReader(0);t.forEach((function(t){var o=null;if(t.dynamic){var a=e.readValue(),i=r.subReader(a.toNumber());try{o=t.decode(i)}catch(e){if(e.code===l.Logger.errors.BUFFER_OVERRUN)throw e;(o=e).baseType=t.name,o.name=t.localName,o.type=t.type}}else try{o=t.decode(e)}catch(e){if(e.code===l.Logger.errors.BUFFER_OVERRUN)throw e;(o=e).baseType=t.name,o.name=t.localName,o.type=t.type}null!=o&&n.push(o)}));var o=t.reduce((function(e,t){var n=t.localName;return n&&(e[n]||(e[n]=0),e[n]++),e}),{});t.forEach((function(e,t){var r=e.localName;if(r&&1===o[r]&&("length"===r&&(r="_length"),null==n[r])){var a=n[t];a instanceof Error?Object.defineProperty(n,r,{get:function(){throw a}}):n[r]=a}}));for(var a=function(e){var t=n[e];t instanceof Error&&Object.defineProperty(n,e,{get:function(){throw t}})},i=0;i=0?r:"")+"]",c=-1===r||e.dynamic;return(i=t.call(this,"array",u,a,c)).coder=e,i.length=r,i}return(0,a.default)(n,[{key:"encode",value:function(e,t){Array.isArray(t)||this._throwError("expected array value",t);var n=this.length;-1===n&&(n=t.length,e.writeValue(t.length)),y.checkArgumentCount(t.length,n,"coder array"+(this.localName?" "+this.localName:""));for(var r=[],o=0;o0&&this.subscriptions.forEach((function(n,r){e&&"syncing"===n.name||t.removeSubscription(r)})),this.provider.reset&&this.provider.reset(),!0}catch(e){throw new Error("Error while clearing subscriptions: ".concat(e))}},f.prototype._isCleanCloseEvent=function(e){return"object"===(0,a.default)(e)&&([1e3].includes(e.code)||!0===e.wasClean)},f.prototype._isIpcCloseError=function(e){return"boolean"==typeof e&&e};var d=f;t.Manager=d},function(e,t,n){"use strict";e.exports=n(569)},function(e,t,n){"use strict";(function(e){var t=n(231)(n(232)),r=function(e){var n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",i=o.asyncIterator||"@@asyncIterator",u=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function s(e,t,n,r){var o=t&&t.prototype instanceof d?t:d,a=Object.create(o.prototype),i=new A(r||[]);return a._invoke=function(e,t,n){var r="suspendedStart";return function(o,a){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw a;return O()}for(n.method=o,n.arg=a;;){var i=n.delegate;if(i){var u=_(i,n);if(u){if(u===f)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var c=l(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===f)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r="completed",n.method="throw",n.arg=c.arg)}}}(e,n,i),a}function l(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=s;var f={};function d(){}function p(){}function h(){}var y={};c(y,a,(function(){return this}));var b=Object.getPrototypeOf,m=b&&b(b(T([])));m&&m!==n&&r.call(m,a)&&(y=m);var v=h.prototype=d.prototype=Object.create(y);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,n){var o;this._invoke=function(a,i){function u(){return new n((function(o,u){!function o(a,i,u,c){var s=l(e[a],e,i);if("throw"!==s.type){var f=s.arg,d=f.value;return d&&"object"===(0,t.default)(d)&&r.call(d,"__await")?n.resolve(d.__await).then((function(e){o("next",e,u,c)}),(function(e){o("throw",e,u,c)})):n.resolve(d).then((function(e){f.value=e,u(f)}),(function(e){return o("throw",e,u,c)}))}c(s.arg)}(a,i,o,u)}))}return o=o?o.then(u,u):u()}}function _(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method))return f;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var r=l(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,f;var o=r.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,f):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,f)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function A(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function T(e){if(e){var t=e[a];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n=0;--o){var a=this.tryEntries[o],i=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var u=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(u&&c){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),I(n),f}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;I(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:T(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),f}},e}("object"===(0,t.default)(e)?e.exports:{});try{regeneratorRuntime=r}catch(e){"object"===("undefined"==typeof globalThis?"undefined":(0,t.default)(globalThis))?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}}).call(this,n(134)(e))},function(e,t,n){"use strict";var r=n(231);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(232)),a=null,i="object"===("undefined"==typeof globalThis?"undefined":(0,o.default)(globalThis))?globalThis:void 0;if(!i)try{i=Function("return this")()}catch(e){i=self}void 0!==i.hedera?a=i.hedera:void 0!==i.hweb3&&i.hweb3.currentProvider&&(i.hweb3.currentProvider.sendAsync&&(i.hweb3.currentProvider.send=i.hweb3.currentProvider.sendAsync,delete i.hweb3.currentProvider.sendAsync),a=i.hweb3.currentProvider);var u=a;t.default=u},function(e,t,n){"use strict";var r=n(302);Object.defineProperty(t,"__esModule",{value:!0}),t.HttpProvider=void 0;var o=r(n(572)),a=r(n(575)),i=n(303),u=function(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{c(r.next(e))}catch(e){a(e)}}function u(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,u)}c((r=r.apply(e,t||[])).next())}))};t.HttpProvider=function e(){if((0,a.default)(this,e),this.disconnect=function(){return!1},this.getLedgerId=function(){return this.client.ledgerId},this.getNetwork=function(){return this.client.network},this.getMirrorNetwork=function(){return this.client.mirrorNetwork},this.getAccountBalance=function(e){return u(this,void 0,void 0,o.default.mark((function t(){var n;return o.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=(new i.AccountBalanceQuery).setAccountId(e||this.accountId),t.abrupt("return",n.execute(this.client));case 2:case"end":return t.stop()}}),t,this)})))},this.getAccountInfo=function(e){return u(this,void 0,void 0,o.default.mark((function t(){var n;return o.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=(new i.AccountInfoQuery).setAccountId(e||this.accountId),t.abrupt("return",n.execute(this.client));case 2:case"end":return t.stop()}}),t,this)})))},this.getTransactionReceipt=function(e){return u(this,void 0,void 0,o.default.mark((function t(){var n;return o.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=(new i.TransactionReceiptQuery).setTransactionId(e),t.abrupt("return",n.execute(this.client));case 2:case"end":return t.stop()}}),t,this)})))},this.sendRequest=function(e){return u(this,void 0,void 0,o.default.mark((function t(){return o.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",e.execute(this.client));case 1:case"end":return t.stop()}}),t,this)})))},this.waitForReceipt=function(e){return u(this,void 0,void 0,o.default.mark((function t(){var n;return o.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=(new i.TransactionReceiptQuery).setTransactionId(e.transactionId),t.abrupt("return",n.execute(this.client));case 2:case"end":return t.stop()}}),t,this)})))},this.connected=!0,1===arguments.length&&(this.client=arguments.length<=0?void 0:arguments[0]),arguments.length>=2){switch(arguments.length<=2?void 0:arguments[2]){case"testnet":this.client=i.Client.forTestnet();break;case"previewnet":this.client=i.Client.forPreviewnet();break;default:this.client=i.Client.forMainnet()}this.client.setOperator(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1]),this.accountId=arguments.length<=0?void 0:arguments[0]}}},function(e,t,n){"use strict";e.exports=n(573)},function(e,t,n){"use strict";(function(e){var t=n(302)(n(574)),r=function(e){var n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",i=o.asyncIterator||"@@asyncIterator",u=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function s(e,t,n,r){var o=t&&t.prototype instanceof d?t:d,a=Object.create(o.prototype),i=new A(r||[]);return a._invoke=function(e,t,n){var r="suspendedStart";return function(o,a){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw a;return O()}for(n.method=o,n.arg=a;;){var i=n.delegate;if(i){var u=_(i,n);if(u){if(u===f)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var c=l(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===f)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r="completed",n.method="throw",n.arg=c.arg)}}}(e,n,i),a}function l(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=s;var f={};function d(){}function p(){}function h(){}var y={};c(y,a,(function(){return this}));var b=Object.getPrototypeOf,m=b&&b(b(T([])));m&&m!==n&&r.call(m,a)&&(y=m);var v=h.prototype=d.prototype=Object.create(y);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,n){var o;this._invoke=function(a,i){function u(){return new n((function(o,u){!function o(a,i,u,c){var s=l(e[a],e,i);if("throw"!==s.type){var f=s.arg,d=f.value;return d&&"object"===(0,t.default)(d)&&r.call(d,"__await")?n.resolve(d.__await).then((function(e){o("next",e,u,c)}),(function(e){o("throw",e,u,c)})):n.resolve(d).then((function(e){f.value=e,u(f)}),(function(e){return o("throw",e,u,c)}))}c(s.arg)}(a,i,o,u)}))}return o=o?o.then(u,u):u()}}function _(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method))return f;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var r=l(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,f;var o=r.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,f):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,f)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function A(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function T(e){if(e){var t=e[a];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n=0;--o){var a=this.tryEntries[o],i=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var u=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(u&&c){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),I(n),f}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;I(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:T(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),f}},e}("object"===(0,t.default)(e)?e.exports:{});try{regeneratorRuntime=r}catch(e){"object"===("undefined"==typeof globalThis?"undefined":(0,t.default)(globalThis))?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}}).call(this,n(134)(e))},function(e,t,n){"use strict";function r(t){return e.exports=r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,r(t)}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){"use strict";e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AccountAllowanceAdjustTransaction",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"AccountAllowanceApproveTransaction",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"AccountBalance",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(t,"AccountBalanceQuery",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"AccountCreateTransaction",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"AccountDeleteTransaction",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"AccountId",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"AccountInfo",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"AccountInfoQuery",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"AccountRecordsQuery",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"AccountStakersQuery",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"AccountUpdateTransaction",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"AddressBookQuery",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"AssessedCustomFee",{enumerable:!0,get:function(){return I.default}}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return o.BadKeyError}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return o.BadMnemonicError}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return o.BadMnemonicReason}}),Object.defineProperty(t,"ContractByteCodeQuery",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"ContractCallQuery",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"ContractCreateTransaction",{enumerable:!0,get:function(){return O.default}}),Object.defineProperty(t,"ContractDeleteTransaction",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"ContractExecuteTransaction",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"ContractFunctionParameters",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"ContractFunctionResult",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"ContractFunctionSelector",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"ContractId",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"ContractInfo",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"ContractInfoQuery",{enumerable:!0,get:function(){return B.default}}),Object.defineProperty(t,"ContractLogInfo",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"ContractUpdateTransaction",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"CustomFee",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"CustomFixedFee",{enumerable:!0,get:function(){return F.default}}),Object.defineProperty(t,"CustomFractionalFee",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"CustomRoyaltyFee",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"DelegateContractId",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"ExchangeRate",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"FileAppendTransaction",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"FileContentsQuery",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"FileCreateTransaction",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"FileDeleteTransaction",{enumerable:!0,get:function(){return V.default}}),Object.defineProperty(t,"FileId",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"FileInfo",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"FileInfoQuery",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"FileUpdateTransaction",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"FreezeTransaction",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"Hbar",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"HbarAllowance",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"HbarUnit",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"LedgerId",{enumerable:!0,get:function(){return pt.default}}),Object.defineProperty(t,"LiveHash",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"LiveHashAddTransaction",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"LiveHashDeleteTransaction",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"LiveHashQuery",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return s.default}}),t.NetworkName=void 0,Object.defineProperty(t,"NetworkVersionInfo",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"NetworkVersionInfoQuery",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"NftId",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"PrecheckStatusError",{enumerable:!0,get:function(){return ft.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"ProxyStaker",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"Query",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"ReceiptStatusError",{enumerable:!0,get:function(){return dt.default}}),Object.defineProperty(t,"ScheduleCreateTransaction",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"ScheduleDeleteTransaction",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"ScheduleId",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"ScheduleInfo",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"ScheduleInfoQuery",{enumerable:!0,get:function(){return he.default}}),Object.defineProperty(t,"ScheduleSignTransaction",{enumerable:!0,get:function(){return ye.default}}),Object.defineProperty(t,"SemanticVersion",{enumerable:!0,get:function(){return be.default}}),Object.defineProperty(t,"Status",{enumerable:!0,get:function(){return me.default}}),Object.defineProperty(t,"StatusError",{enumerable:!0,get:function(){return lt.default}}),Object.defineProperty(t,"SystemDeleteTransaction",{enumerable:!0,get:function(){return ve.default}}),Object.defineProperty(t,"SystemUndeleteTransaction",{enumerable:!0,get:function(){return ge.default}}),Object.defineProperty(t,"Timestamp",{enumerable:!0,get:function(){return ke.default}}),Object.defineProperty(t,"TokenAllowance",{enumerable:!0,get:function(){return _e.default}}),Object.defineProperty(t,"TokenAssociateTransaction",{enumerable:!0,get:function(){return we.default}}),Object.defineProperty(t,"TokenBurnTransaction",{enumerable:!0,get:function(){return Ie.default}}),Object.defineProperty(t,"TokenCreateTransaction",{enumerable:!0,get:function(){return Ae.default}}),Object.defineProperty(t,"TokenDeleteTransaction",{enumerable:!0,get:function(){return Te.default}}),Object.defineProperty(t,"TokenDissociateTransaction",{enumerable:!0,get:function(){return Oe.default}}),Object.defineProperty(t,"TokenFeeScheduleUpdateTransaction",{enumerable:!0,get:function(){return Ee.default}}),Object.defineProperty(t,"TokenFreezeTransaction",{enumerable:!0,get:function(){return Pe.default}}),Object.defineProperty(t,"TokenGrantKycTransaction",{enumerable:!0,get:function(){return Se.default}}),Object.defineProperty(t,"TokenId",{enumerable:!0,get:function(){return Re.default}}),Object.defineProperty(t,"TokenInfo",{enumerable:!0,get:function(){return De.default}}),Object.defineProperty(t,"TokenInfoQuery",{enumerable:!0,get:function(){return Ce.default}}),Object.defineProperty(t,"TokenMintTransaction",{enumerable:!0,get:function(){return Ne.default}}),Object.defineProperty(t,"TokenNftAllowance",{enumerable:!0,get:function(){return Be.default}}),Object.defineProperty(t,"TokenNftInfo",{enumerable:!0,get:function(){return Me.default}}),Object.defineProperty(t,"TokenNftInfoQuery",{enumerable:!0,get:function(){return je.default}}),Object.defineProperty(t,"TokenPauseTransaction",{enumerable:!0,get:function(){return xe.default}}),Object.defineProperty(t,"TokenRevokeKycTransaction",{enumerable:!0,get:function(){return Fe.default}}),Object.defineProperty(t,"TokenSupplyType",{enumerable:!0,get:function(){return Ue.default}}),Object.defineProperty(t,"TokenType",{enumerable:!0,get:function(){return Le.default}}),Object.defineProperty(t,"TokenUnfreezeTransaction",{enumerable:!0,get:function(){return Ke.default}}),Object.defineProperty(t,"TokenUnpauseTransaction",{enumerable:!0,get:function(){return Ge.default}}),Object.defineProperty(t,"TokenUpdateTransaction",{enumerable:!0,get:function(){return ze.default}}),Object.defineProperty(t,"TokenWipeTransaction",{enumerable:!0,get:function(){return Qe.default}}),Object.defineProperty(t,"TopicCreateTransaction",{enumerable:!0,get:function(){return He.default}}),Object.defineProperty(t,"TopicDeleteTransaction",{enumerable:!0,get:function(){return Ve.default}}),Object.defineProperty(t,"TopicId",{enumerable:!0,get:function(){return qe.default}}),Object.defineProperty(t,"TopicInfo",{enumerable:!0,get:function(){return We.default}}),Object.defineProperty(t,"TopicInfoQuery",{enumerable:!0,get:function(){return Ye.default}}),Object.defineProperty(t,"TopicMessage",{enumerable:!0,get:function(){return Ze.default}}),Object.defineProperty(t,"TopicMessageChunk",{enumerable:!0,get:function(){return Je.default}}),Object.defineProperty(t,"TopicMessageQuery",{enumerable:!0,get:function(){return Xe.default}}),Object.defineProperty(t,"TopicMessageSubmitTransaction",{enumerable:!0,get:function(){return $e.default}}),Object.defineProperty(t,"TopicUpdateTransaction",{enumerable:!0,get:function(){return et.default}}),Object.defineProperty(t,"Transaction",{enumerable:!0,get:function(){return tt.default}}),Object.defineProperty(t,"TransactionId",{enumerable:!0,get:function(){return nt.default}}),Object.defineProperty(t,"TransactionReceipt",{enumerable:!0,get:function(){return rt.default}}),Object.defineProperty(t,"TransactionReceiptQuery",{enumerable:!0,get:function(){return ot.default}}),Object.defineProperty(t,"TransactionRecord",{enumerable:!0,get:function(){return at.default}}),Object.defineProperty(t,"TransactionRecordQuery",{enumerable:!0,get:function(){return it.default}}),Object.defineProperty(t,"TransactionResponse",{enumerable:!0,get:function(){return ut.default}}),Object.defineProperty(t,"Transfer",{enumerable:!0,get:function(){return ct.default}}),Object.defineProperty(t,"TransferTransaction",{enumerable:!0,get:function(){return st.default}});var o=n(180),a=r(n(323)),i=r(n(86)),u=r(n(108)),c=r(n(35)),s=r(n(324)),l=r(n(618)),f=r(n(644)),d=r(n(342)),p=r(n(343)),h=r(n(647)),y=r(n(648)),b=r(n(9)),m=r(n(344)),v=r(n(650)),g=r(n(651)),k=r(n(652)),_=r(n(653)),w=r(n(654)),I=r(n(339)),A=r(n(658)),T=r(n(659)),O=r(n(661)),E=r(n(662)),P=r(n(663)),S=r(n(191)),R=r(n(244)),D=r(n(349)),C=r(n(48)),N=r(n(350)),B=r(n(664)),M=r(n(335)),j=r(n(665)),x=r(n(192)),F=r(n(163)),U=r(n(193)),L=r(n(194)),K=r(n(666)),G=r(n(333)),z=r(n(667)),Q=r(n(668)),H=r(n(669)),V=r(n(670)),q=r(n(51)),W=r(n(351)),Y=r(n(671)),Z=r(n(672)),J=r(n(673)),X=r(n(26)),$=r(n(188)),ee=r(n(326)),te=r(n(245)),ne=r(n(675)),re=r(n(676)),oe=r(n(677)),ae=r(n(352)),ie=r(n(678)),ue=r(n(138)),ce=r(n(346)),se=r(n(43)),le=r(n(679)),fe=r(n(680)),de=r(n(113)),pe=r(n(354)),he=r(n(681)),ye=r(n(682)),be=r(n(353)),me=r(n(110)),ve=r(n(683)),ge=r(n(684)),ke=r(n(36)),_e=r(n(189)),we=r(n(685)),Ie=r(n(686)),Ae=r(n(687)),Te=r(n(688)),Oe=r(n(689)),Ee=r(n(690)),Pe=r(n(691)),Se=r(n(692)),Re=r(n(23)),De=r(n(355)),Ce=r(n(693)),Ne=r(n(694)),Be=r(n(190)),Me=r(n(356)),je=r(n(695)),xe=r(n(696)),Fe=r(n(697)),Ue=r(n(247)),Le=r(n(246)),Ke=r(n(698)),Ge=r(n(699)),ze=r(n(700)),Qe=r(n(701)),He=r(n(702)),Ve=r(n(703)),qe=r(n(98)),We=r(n(357)),Ye=r(n(704)),Ze=r(n(358)),Je=r(n(359)),Xe=r(n(705)),$e=r(n(707)),et=r(n(708)),tt=r(n(18)),nt=r(n(61)),rt=r(n(187)),ot=r(n(328)),at=r(n(242)),it=r(n(334)),ut=r(n(327)),ct=r(n(243)),st=r(n(709)),lt=r(n(240)),ft=r(n(162)),dt=r(n(185)),pt=r(n(78));n(713);t.NetworkName={Mainnet:"mainnet",Testnet:"testnet",Previewnet:"previewnet"}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e,t){(0,i.default)(r,e);var n=s(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i=0;--o){var a=this.tryEntries[o],i=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var u=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(u&&c){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),I(n),f}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;I(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:T(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),f}},e}("object"===(0,t.default)(e)?e.exports:{});try{regeneratorRuntime=r}catch(e){"object"===("undefined"==typeof globalThis?"undefined":(0,t.default)(globalThis))?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}}).call(this,n(134)(e))},function(e,t,n){"use strict";e.exports=function(e){if(Array.isArray(e))return e},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";e.exports=function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(307);e.exports=function(e){if(Array.isArray(e))return r(e)},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";e.exports=function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";e.exports=function(e){return-1!==Function.toString.call(e).indexOf("[native code]")},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";e.exports=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=["aback","abbey","abbot","abide","ablaze","able","aboard","abode","abort","abound","about","above","abroad","abrupt","absent","absorb","absurd","abuse","accent","accept","access","accord","accuse","ace","ache","aching","acid","acidic","acorn","acre","across","act","action","active","actor","actual","acute","adam","adapt","add","added","addict","adept","adhere","adjust","admire","admit","adobe","adopt","adrift","adult","adverb","advice","aerial","afar","affair","affect","afford","afghan","afield","afloat","afraid","afresh","after","again","age","agency","agenda","agent","aghast","agile","ago","agony","agree","agreed","ahead","aid","aide","aim","air","airman","airy","akin","alarm","alaska","albeit","album","ale","alert","alibi","alice","alien","alight","align","alike","alive","alkali","all","alley","allied","allow","alloy","ally","almond","almost","aloft","alone","along","aloof","aloud","alpha","alpine","also","altar","alter","always","amaze","amazon","amber","ambush","amen","amend","amid","amidst","amiss","among","amount","ample","amuse","anchor","and","andrew","anew","angel","anger","angle","angry","animal","ankle","annoy","annual","answer","anthem","any","anyhow","anyway","apart","apathy","apex","apiece","appeal","appear","apple","apply","april","apron","arab","arcade","arcane","arch","arctic","ardent","are","area","argue","arid","arise","ark","arm","armful","army","aroma","around","arouse","array","arrest","arrive","arrow","arson","art","artery","artful","artist","ascent","ash","ashen","ashore","aside","ask","asleep","aspect","assay","assent","assert","assess","asset","assign","assist","assume","assure","asthma","astute","asylum","ate","athens","atlas","atom","atomic","attach","attack","attain","attend","attic","auburn","audio","audit","august","aunt","auntie","aura","austin","author","auto","autumn","avail","avenge","avenue","avert","avid","avoid","await","awake","awaken","award","aware","awash","away","awful","awhile","axe","axes","axiom","axis","axle","aye","babe","baby","bach","back","backup","bacon","bad","badge","badly","bag","baggy","bail","bait","bake","baker","bakery","bald","ball","ballad","ballet","ballot","baltic","bamboo","ban","banal","banana","band","bang","bank","bar","barber","bare","barely","barge","bark","barley","barn","baron","barrel","barren","basalt","base","basic","basil","basin","basis","basket","bass","bat","batch","bath","baton","battle","bay","beach","beacon","beak","beam","bean","bear","beard","beast","beat","beauty","become","bed","beech","beef","beefy","beep","beer","beet","beetle","before","beg","beggar","begin","behalf","behave","behind","beige","being","belief","bell","belly","belong","below","belt","bench","bend","benign","bent","berlin","berry","berth","beset","beside","best","bestow","bet","beta","betray","better","beware","beyond","bias","biceps","bicker","bid","big","bigger","bike","bile","bill","bin","binary","bind","biopsy","birch","bird","birdie","birth","bishop","bit","bitch","bite","bitter","black","blade","blame","bland","blast","blaze","bleak","blend","bless","blew","blind","blink","blip","bliss","blitz","block","blond","blood","bloody","bloom","blot","blouse","blow","blue","bluff","blunt","blur","blush","boar","board","boast","boat","bob","bodily","body","bogus","boil","bold","bolt","bomb","bombay","bond","bone","bonn","bonnet","bonus","bony","book","boom","boost","boot","booth","booze","border","bore","borrow","bosom","boss","boston","both","bother","bottle","bottom","bought","bounce","bound","bounty","bout","bovine","bow","bowel","bowl","box","boy","boyish","brace","brain","brainy","brake","bran","branch","brand","brandy","brass","brave","bravo","brazil","breach","bread","break","breast","breath","bred","breed","breeze","brew","bribe","brick","bride","bridge","brief","bright","brim","brine","bring","brink","brisk","broad","broke","broken","bronze","brook","broom","brown","bruise","brush","brutal","brute","bubble","buck","bucket","buckle","budget","buffet","buggy","build","bulb","bulge","bulk","bulky","bull","bullet","bully","bump","bumpy","bunch","bundle","bunk","bunny","burden","bureau","burial","buried","burly","burn","burnt","burrow","burst","bury","bus","bush","bust","bustle","busy","but","butler","butt","butter","button","buy","buyer","buzz","bye","byte","cab","cabin","cable","cache","cactus","caesar","cage","cairo","cajun","cajole","cake","calf","call","caller","calm","calmly","came","camel","camera","camp","campus","can","canada","canal","canary","cancel","cancer","candid","candle","candy","cane","canine","canoe","canopy","canvas","canyon","cap","cape","car","carbon","card","care","career","caress","cargo","carl","carnal","carol","carp","carpet","carrot","carry","cart","cartel","case","cash","cask","cast","castle","casual","cat","catch","cater","cattle","caught","causal","cause","cave","cease","celery","cell","cellar","celtic","cement","censor","census","cent","cereal","chain","chair","chalk","chalky","champ","chance","change","chant","chaos","chap","chapel","charge","charm","chart","chase","chat","cheap","cheat","check","cheek","cheeky","cheer","cheery","cheese","chef","cheque","cherry","chess","chest","chew","chic","chick","chief","child","chile","chill","chilly","chin","china","chip","choice","choir","choose","chop","choppy","chord","chorus","chose","chosen","chris","chrome","chunk","chunky","church","cider","cigar","cinema","circa","circle","circus","cite","city","civic","civil","clad","claim","clammy","clan","clap","clash","clasp","class","clause","claw","clay","clean","clear","clergy","clerk","clever","click","client","cliff","climax","climb","clinch","cling","clinic","clip","cloak","clock","clone","close","closer","closet","cloth","cloud","cloudy","clout","clown","club","clue","clumsy","clung","clutch","coach","coal","coarse","coast","coat","coax","cobalt","cobra","coca","cock","cocoa","code","coffee","coffin","cohort","coil","coin","coke","cold","collar","colon","colony","colt","column","comb","combat","come","comedy","comic","commit","common","compel","comply","concur","cone","confer","congo","consul","convex","convey","convoy","cook","cool","cope","copper","copy","coral","cord","core","cork","corn","corner","corps","corpse","corpus","cortex","cosmic","cosmos","cost","costly","cotton","couch","cough","could","count","county","coup","couple","coupon","course","court","cousin","cove","cover","covert","cow","coward","cowboy","cozy","crab","crack","cradle","craft","crafty","crag","crane","crash","crate","crater","crawl","crazy","creak","cream","creamy","create","credit","creed","creek","creep","creepy","crept","crest","crew","cried","crime","crisis","crisp","critic","crook","crop","cross","crow","crowd","crown","crude","cruel","cruise","crunch","crush","crust","crux","cry","crypt","cuba","cube","cubic","cuckoo","cuff","cult","cup","curb","cure","curfew","curl","curry","curse","cursor","curve","cuss","custom","cut","cute","cycle","cyclic","cynic","czech","dad","daddy","dagger","daily","dairy","daisy","dale","dam","damage","damp","dampen","dance","danger","danish","dare","dark","darken","darn","dart","dash","data","date","david","dawn","day","dead","deadly","deaf","deal","dealer","dean","dear","death","debate","debit","debris","debt","debtor","decade","decay","decent","decide","deck","decor","decree","deduce","deed","deep","deeply","deer","defeat","defect","defend","defer","define","defy","degree","deity","delay","delete","delhi","delta","demand","demise","demo","demure","denial","denote","dense","dental","deny","depart","depend","depict","deploy","depot","depth","deputy","derive","desert","design","desire","desist","desk","detail","detect","deter","detest","detour","device","devise","devoid","devote","devour","dial","diana","diary","dice","dictum","did","die","diesel","diet","differ","dig","digest","digit","dine","dinghy","dinner","diode","dip","dire","direct","dirt","dirty","disc","disco","dish","disk","dismal","dispel","ditch","dive","divert","divide","divine","dizzy","docile","dock","doctor","dog","dogma","dole","doll","dollar","dolly","domain","dome","domino","donate","done","donkey","donor","doom","door","dorsal","dose","dot","double","doubt","dough","dour","dove","down","dozen","draft","drag","dragon","drain","drama","drank","draw","drawer","dread","dream","dreary","dress","drew","dried","drift","drill","drink","drip","drive","driver","drop","drove","drown","drug","drum","drunk","dry","dual","duck","duct","due","duel","duet","duke","dull","duly","dumb","dummy","dump","dune","dung","duress","during","dusk","dust","dusty","dutch","duty","dwarf","dwell","dyer","dying","dynamo","each","eager","eagle","ear","earl","early","earn","earth","ease","easel","easily","east","easter","easy","eat","eaten","eater","echo","eddy","eden","edge","edible","edict","edit","editor","eel","eerie","eerily","effect","effort","egg","ego","eight","eighth","eighty","either","elbow","elder","eldest","elect","eleven","elicit","elite","else","elude","elves","embark","emblem","embryo","emerge","emit","empire","employ","empty","enable","enamel","end","endure","enemy","energy","engage","engine","enjoy","enlist","enough","ensure","entail","enter","entire","entry","envoy","envy","enzyme","epic","epoch","equal","equate","equip","equity","era","erect","eric","erode","erotic","errant","error","escape","escort","essay","essex","estate","esteem","ethic","ethnic","europe","evade","eve","even","event","ever","every","evict","evil","evoke","evolve","exact","exam","exceed","excel","except","excess","excise","excite","excuse","exempt","exert","exile","exist","exit","exodus","exotic","expand","expect","expert","expire","export","expose","extend","extra","eye","eyed","fabric","face","facial","fact","factor","fade","fail","faint","fair","fairly","fairy","faith","fake","falcon","fall","false","falter","fame","family","famine","famous","fan","fancy","far","farce","fare","farm","farmer","fast","fasten","faster","fat","fatal","fate","father","fatty","fault","faulty","fauna","fear","feast","feat","fed","fee","feeble","feed","feel","feet","fell","fellow","felt","female","fence","fend","ferry","fetal","fetch","feudal","fever","few","fewer","fiasco","fiddle","field","fiend","fierce","fiery","fifth","fifty","fig","fight","figure","file","fill","filled","filler","film","filter","filth","filthy","final","finale","find","fine","finery","finger","finish","finite","fire","firm","firmly","first","fiscal","fish","fisher","fist","fit","fitful","five","fix","flag","flair","flak","flame","flank","flap","flare","flash","flask","flat","flavor","flaw","fled","flee","fleece","fleet","flesh","fleshy","flew","flick","flight","flimsy","flint","flirt","float","flock","flood","floor","floppy","flora","floral","flour","flow","flower","fluent","fluffy","fluid","flung","flurry","flush","flute","flux","fly","flyer","foal","foam","focal","focus","fog","foil","fold","folk","follow","folly","fond","fondly","font","food","fool","foot","for","forbid","force","ford","forest","forge","forget","fork","form","formal","format","former","fort","forth","forty","forum","fossil","foster","foul","found","four","fourth","fox","foyer","frail","frame","franc","france","frank","fraud","fred","free","freed","freely","freeze","french","frenzy","fresh","friar","friday","fridge","fried","friend","fright","fringe","frock","frog","from","front","frost","frosty","frown","frozen","frugal","fruit","fry","fudge","fuel","full","fully","fumes","fun","fund","funny","fur","furry","fury","fuse","fusion","fuss","fussy","futile","future","fuzzy","gadget","gain","gala","galaxy","gale","gall","galley","gallon","gallop","gamble","game","gamma","gandhi","gang","gap","garage","garden","garlic","gas","gasp","gate","gather","gauge","gaunt","gave","gaze","gear","geese","gem","gemini","gender","gene","geneva","genial","genius","genre","gentle","gently","gentry","genus","george","germ","get","ghetto","ghost","giant","gift","giggle","gill","gilt","ginger","girl","give","given","glad","glade","glance","gland","glare","glass","glassy","gleam","glee","glide","global","globe","gloom","gloomy","gloria","glory","gloss","glossy","glove","glow","glue","gnat","gnu","goal","goat","gold","golden","golf","gone","gong","goo","good","goose","gore","gorge","gory","gosh","gospel","gossip","got","gothic","govern","gown","grab","grace","grade","grail","grain","grand","grant","grape","graph","grasp","grass","grassy","grate","grave","gravel","gravy","grease","greasy","great","greece","greed","greedy","greek","green","greet","grew","grey","grid","grief","grill","grim","grin","grind","grip","grit","gritty","groan","groin","groom","groove","gross","ground","group","grove","grow","grown","growth","grudge","grunt","guard","guess","guest","guide","guild","guilt","guilty","guise","guitar","gulf","gully","gun","gunman","guru","gut","guy","gypsy","habit","hack","had","hail","hair","hairy","haiti","hale","half","hall","halt","hamlet","hammer","hand","handle","handy","hang","hangar","hanoi","happen","happy","harass","harbor","hard","harder","hardly","hare","harem","harm","harp","harry","harsh","has","hash","hassle","haste","hasten","hasty","hat","hatch","hate","haul","haunt","havana","have","haven","havoc","hawaii","hawk","hay","hazard","haze","hazel","hazy","head","heal","health","heap","hear","heard","heart","hearth","hearty","heat","heater","heaven","heavy","hebrew","heck","hectic","hedge","heel","hefty","height","heir","held","helium","helix","hell","hello","helm","helmet","help","hemp","hence","henry","her","herald","herb","herd","here","hereby","hermes","hernia","hero","heroic","heroin","hey","heyday","hick","hidden","hide","high","higher","highly","hill","him","hind","hinder","hint","hippie","hire","his","hiss","hit","hive","hoard","hoarse","hobby","hockey","hold","holder","hole","hollow","holly","holy","home","honest","honey","hood","hook","hope","horn","horrid","horror","horse","hose","host","hot","hotel","hound","hour","house","hover","how","huge","hull","human","humane","humble","humid","hung","hunger","hungry","hunt","hurdle","hurl","hurry","hurt","hush","hut","hybrid","hymn","hyphen","ice","icing","icon","idaho","idea","ideal","idiom","idiot","idle","idly","idol","ignite","ignore","ill","image","immune","impact","imply","import","impose","inca","incest","inch","income","incur","indeed","index","india","indian","indoor","induce","inept","inert","infant","infect","infer","influx","inform","inject","injure","injury","ink","inlaid","inland","inlet","inmate","inn","innate","inner","input","insane","insect","insert","inset","inside","insist","insult","insure","intact","intake","intend","inter","into","invade","invent","invest","invite","invoke","inward","iowa","iran","iraq","irish","iron","ironic","irony","isaac","isabel","island","isle","israel","issue","italy","itch","item","itself","ivan","ivory","jack","jacket","jacob","jade","jaguar","jail","james","jane","japan","jargon","java","jaw","jazz","jeep","jelly","jerky","jest","jet","jewel","jewish","jim","job","jock","jockey","joe","john","join","joint","joke","jolly","jolt","jordan","joseph","joy","joyful","joyous","judge","judy","juice","juicy","july","jumble","jumbo","jump","june","jungle","junior","junk","junta","jury","just","kansas","karate","karl","keel","keen","keep","keeper","kenya","kept","kernel","kettle","key","khaki","kick","kid","kidnap","kidney","kill","killer","kin","kind","kindly","king","kiss","kite","kitten","knack","knee","kneel","knew","knife","knight","knit","knob","knock","knot","know","known","koran","korea","kuwait","label","lace","lack","lad","ladder","laden","lady","lagoon","laity","lake","lamb","lame","lamp","lance","land","lane","lap","lapse","large","larval","laser","last","latch","late","lately","latent","later","latest","latin","latter","laugh","launch","lava","lavish","law","lawful","lawn","lawyer","lay","layer","layman","lazy","lead","leader","leaf","leafy","league","leak","leaky","lean","leap","learn","lease","leash","least","leave","led","ledge","left","leg","legacy","legal","legend","legion","lemon","lend","length","lens","lent","leo","leper","lesion","less","lessen","lesser","lesson","lest","let","lethal","letter","level","lever","levy","lewis","liable","liar","libel","libya","lice","lick","lid","lie","lied","lier","life","lift","light","like","likely","limb","lime","limit","limp","line","linear","linen","linger","link","lint","lion","lip","liquid","liquor","list","listen","lit","live","lively","liver","liz","lizard","load","loaf","loan","lobby","lobe","local","locate","lock","locus","lodge","loft","lofty","log","logic","logo","london","lone","lonely","long","longer","look","loop","loose","loosen","loot","lord","lorry","lose","loss","lost","lot","lotion","lotus","loud","loudly","lounge","lousy","love","lovely","lover","low","lower","lowest","loyal","lucid","luck","lucky","lucy","lull","lump","lumpy","lunacy","lunar","lunch","lung","lure","lurid","lush","lust","lute","luther","luxury","lying","lymph","lynch","lyric","macho","macro","mad","madam","made","mafia","magic","magma","magnet","magnum","magpie","maid","maiden","mail","main","mainly","major","make","maker","male","malice","mall","malt","mammal","manage","mane","mania","manic","manner","manor","mantle","manual","manure","many","map","maple","marble","march","mare","margin","maria","marina","mark","market","marry","mars","marsh","martin","martyr","mary","mask","mason","mass","mast","master","mat","match","mate","matrix","matter","mature","maxim","may","maybe","mayor","maze","mead","meadow","meal","mean","meant","meat","medal","media","median","medic","medium","meet","mellow","melody","melon","melt","member","memo","memory","menace","mend","mental","mentor","menu","mercy","mere","merely","merge","merger","merit","merry","mesh","mess","messy","met","metal","meter","method","methyl","metric","metro","mexico","miami","mickey","mid","midday","middle","midst","midway","might","mighty","mild","mildew","mile","milk","milky","mill","mimic","mince","mind","mine","mini","mink","minor","mint","minus","minute","mire","mirror","mirth","misery","miss","mist","misty","mite","mix","moan","moat","mob","mobile","mock","mode","model","modem","modern","modest","modify","module","moist","molar","mold","mole","molten","moment","monday","money","monk","monkey","month","mood","moody","moon","moor","moral","morale","morbid","more","morgue","mortal","mortar","mosaic","moscow","moses","mosque","moss","most","mostly","moth","mother","motion","motive","motor","mount","mourn","mouse","mouth","move","movie","mrs","much","muck","mucus","mud","muddle","muddy","mule","mummy","munich","murder","murky","murmur","muscle","museum","music","mussel","must","mutant","mute","mutiny","mutter","mutton","mutual","muzzle","myopic","myriad","myself","mystic","myth","nadir","nail","naked","name","namely","nape","napkin","naples","narrow","nasal","nasty","nathan","nation","native","nature","nausea","naval","nave","navy","near","nearer","nearly","neat","neatly","neck","need","needle","needy","negate","neon","nepal","nephew","nerve","nest","net","neural","never","newly","next","nice","nicely","niche","nickel","niece","night","nile","nimble","nine","ninety","ninth","nobel","noble","nobody","node","noise","noisy","none","noon","nor","norm","normal","north","norway","nose","nosy","not","note","notice","notify","notion","noun","novel","novice","now","nozzle","null","numb","number","nurse","nut","nylon","nymph","oak","oar","oasis","oath","obese","obey","object","oblige","oboe","obtain","obtuse","occult","occupy","occur","ocean","octave","odd","off","offend","offer","office","offset","often","ohio","oil","oily","okay","old","older","oldest","olive","omega","omen","omit","once","one","onion","only","onset","onto","onus","onward","opaque","open","openly","opera","opium","oppose","optic","option","oracle","oral","orange","orbit","orchid","ordeal","order","organ","orgasm","orient","origin","ornate","orphan","oscar","other","otter","ought","ounce","our","out","outer","output","outset","oval","oven","over","overt","owe","owing","owl","own","owner","oxford","oxide","oxygen","oyster","ozone","pace","pack","packet","pact","pad","paddle","paddy","pagan","page","paid","pain","paint","pair","palace","pale","palm","pan","panama","panel","panic","papa","papal","paper","parade","parcel","pardon","parent","paris","parish","park","parody","parrot","part","partly","party","pascal","pass","past","paste","pastel","pastor","pastry","pat","patch","patent","path","patio","patrol","patron","paul","pause","pave","paw","pawn","pay","peace","peach","peak","pear","pearl","pedal","peel","peer","peking","pelvic","pelvis","pen","penal","pence","pencil","penny","people","pepper","per","perch","peril","period","perish","permit","person","peru","pest","pet","peter","petite","petrol","petty","phase","philip","phone","photo","phrase","piano","pick","picket","picnic","pie","piece","pier","pierce","piety","pig","pigeon","piggy","pike","pile","pill","pillar","pillow","pilot","pin","pinch","pine","pink","pint","pious","pipe","pirate","piss","pistol","piston","pit","pitch","pity","pivot","pixel","pizza","place","placid","plague","plain","plan","plane","planet","plank","plant","plasma","plate","play","player","plea","plead","please","pledge","plenty","plight","plot","plough","ploy","plug","plum","plump","plunge","plural","plus","plush","pocket","poem","poet","poetic","poetry","point","poison","poland","polar","pole","police","policy","polish","polite","poll","pollen","polo","pond","ponder","pony","pool","poor","poorly","pop","poppy","pore","pork","port","portal","pose","posh","post","postal","pot","potato","potent","pouch","pound","pour","powder","power","praise","pray","prayer","preach","prefer","prefix","press","pretty","price","pride","priest","primal","prime","prince","print","prior","prism","prison","privy","prize","probe","profit","prompt","prone","proof","propel","proper","prose","proton","proud","prove","proven","proxy","prune","pry","psalm","pseudo","psyche","pub","public","puff","pull","pulp","pulpit","pulsar","pulse","pump","punch","punish","punk","pupil","puppet","puppy","pure","purely","purge","purify","purple","purse","pursue","push","pushy","put","putt","puzzle","quaint","quake","quarry","quart","quartz","quebec","queen","queer","query","quest","queue","quick","quid","quiet","quilt","quirk","quit","quite","quiver","quiz","quota","quote","rabbit","race","racial","racism","rack","racket","radar","radio","radish","radius","raffle","raft","rage","raid","rail","rain","rainy","raise","rake","rally","ramp","random","range","rank","ransom","rape","rapid","rare","rarely","rarity","rash","rat","rate","rather","ratify","ratio","rattle","rave","raven","raw","ray","razor","reach","react","read","reader","ready","real","really","realm","reap","rear","reason","rebel","recall","recent","recess","recipe","reckon","record","recoup","rector","red","redeem","redo","reduce","reed","reef","reek","refer","reform","refuge","refuse","regal","regard","regent","regime","region","regret","reign","reject","relate","relax","relay","relic","relief","relish","rely","remain","remark","remedy","remind","remit","remote","remove","renal","render","rent","rental","repair","repeal","repeat","repent","reply","report","rescue","resent","reside","resign","resin","resist","resort","rest","result","resume","retail","retain","retina","retire","return","reveal","review","revise","revive","revolt","reward","rex","rhine","rhino","rhyme","rhythm","ribbon","rice","rich","rick","rid","ride","rider","ridge","rife","rifle","rift","right","rigid","rile","rim","ring","rinse","riot","ripe","ripen","ripple","rise","risk","risky","rite","ritual","ritz","rival","river","road","roar","roast","rob","robe","robert","robin","robot","robust","rock","rocket","rocky","rod","rode","rodent","rogue","role","roll","roman","rome","roof","room","root","rope","rose","rosy","rot","rotate","rotor","rotten","rouge","rough","round","route","rover","row","royal","rub","rubber","rubble","ruby","rudder","rude","rug","rugby","ruin","rule","ruler","rumble","rump","run","rune","rung","runway","rural","rush","russia","rust","rustic","rusty","sack","sacred","sad","saddle","sadism","sadly","safari","safe","safely","safer","safety","saga","sage","sahara","said","sail","sailor","saint","sake","salad","salary","sale","saline","saliva","salmon","saloon","salt","salty","salute","sam","same","sample","sand","sandy","sane","sash","satin","satire","saturn","sauce","saucer","saudi","sauna","savage","save","saw","say","scale","scalp","scan","scant","scar","scarce","scare","scarf","scary","scene","scenic","scent","school","scold","scope","score","scorn","scotch","scott","scout","scrap","scrape","scream","screen","screw","script","scroll","scrub","scum","sea","seal","seam","seaman","search","season","seat","second","secret","sect","sector","secure","see","seed","seeing","seek","seem","seize","seldom","select","self","sell","seller","semi","senate","send","senile","senior","sense","sensor","sent","sentry","seoul","sequel","serene","serial","series","sermon","serum","serve","server","set","settle","seven","severe","sew","sewage","shabby","shade","shadow","shady","shaft","shaggy","shah","shake","shaky","shall","sham","shame","shape","share","shark","sharp","shawl","she","shear","sheen","sheep","sheer","sheet","shelf","shell","sherry","shield","shift","shine","shiny","ship","shire","shirk","shirt","shiver","shock","shoe","shook","shoot","shop","shore","short","shot","should","shout","show","shower","shrank","shrewd","shrill","shrimp","shrine","shrink","shrub","shrug","shut","shy","shyly","sick","side","siege","sigh","sight","sigma","sign","signal","silent","silk","silken","silky","sill","silly","silo","silver","simple","simply","since","sinful","sing","singer","single","sink","sir","sire","siren","sister","sit","site","sitter","six","sixth","sixty","size","sketch","skill","skin","skinny","skip","skirt","skull","sky","slab","slack","slain","slam","slang","slap","slat","slate","slave","sleek","sleep","sleepy","sleeve","slice","slick","slid","slide","slight","slim","slimy","sling","slip","slit","slogan","slope","sloppy","slot","slow","slowly","slug","slum","slump","smack","small","smart","smash","smear","smell","smelly","smelt","smile","smite","smoke","smoky","smooth","smug","snack","snail","snake","snap","snatch","sneak","snow","snowy","snug","soak","soap","sober","soccer","social","sock","socket","socks","soda","sodden","sodium","sofa","soft","soften","softly","soggy","soil","solar","sold","sole","solely","solemn","solid","solo","solve","some","son","sonar","sonata","song","sonic","sony","soon","sooner","soot","soothe","sordid","sore","sorrow","sorry","sort","soul","sound","soup","sour","source","soviet","sow","space","spade","spain","span","spare","spark","sparse","spasm","spat","spate","speak","spear","speech","speed","speedy","spell","spend","sphere","spice","spicy","spider","spiky","spill","spin","spinal","spine","spiral","spirit","spit","spite","splash","split","spoil","spoke","sponge","spoon","sport","spot","spouse","spray","spread","spree","spring","sprint","spur","squad","square","squash","squat","squid","stab","stable","stack","staff","stage","stain","stair","stairs","stake","stale","stall","stamp","stance","stand","staple","star","starch","stare","stark","start","starve","state","static","statue","status","stay","stead","steady","steak","steal","steam","steel","steep","steer","stem","stench","step","stereo","stern","stew","stick","sticky","stiff","stifle","stigma","still","sting","stint","stir","stitch","stock","stocky","stone","stony","stool","stop","store","storm","stormy","story","stout","stove","stow","strain","strait","strand","strap","strata","straw","stray","streak","stream","street","stress","strict","stride","strife","strike","string","strip","stripe","strive","stroke","stroll","strong","stud","studio","study","stuff","stuffy","stunt","stupid","sturdy","style","submit","subtle","subtly","suburb","such","sudden","sue","suez","suffer","sugar","suit","suite","suitor","sullen","sultan","sum","summer","summit","summon","sun","sunday","sunny","sunset","super","superb","supper","supple","supply","sure","surely","surf","surge","survey","suture","swamp","swan","swap","swarm","sway","swear","sweat","sweaty","sweden","sweep","sweet","swell","swift","swim","swine","swing","swirl","swiss","switch","sword","swore","sydney","symbol","synod","syntax","syria","syrup","system","table","tablet","taboo","tacit","tackle","tact","tactic","tail","tailor","taiwan","take","tale","talent","talk","tall","tally","tame","tampa","tan","tandem","tangle","tank","tap","tape","target","tariff","tarp","tart","tarzan","task","taste","tasty","tattoo","taurus","taut","tavern","tax","taxi","tea","teach","teak","team","tear","tease","tech","teeth","tell","temper","temple","tempo","tempt","ten","tenant","tend","tender","tendon","tennis","tenor","tense","tent","tenth","tenure","teresa","term","terror","terse","test","texas","text","thank","thaw","them","theme","thence","theory","there","these","thesis","they","thick","thief","thigh","thin","thing","think","third","thirst","thirty","this","thomas","thorn","those","though","thread","threat","three","thrill","thrive","throat","throne","throng","throw","thrust","thud","thug","thumb","thus","thyme","tibet","tick","ticket","tidal","tide","tidy","tie","tier","tiger","tight","tile","till","tilt","timber","time","timid","tin","tiny","tip","tire","tissue","title","toad","toast","today","toe","toilet","token","tokyo","told","toll","tom","tomato","tomb","tonal","tone","tongue","tonic","too","took","tool","tooth","top","topaz","topic","torch","torque","torso","tort","toss","total","touch","tough","tour","toward","towel","tower","town","toxic","toxin","toy","trace","track","tract","trade","tragic","trail","train","trait","tram","trance","trap","trauma","travel","tray","tread","treat","treaty","treble","tree","trek","tremor","trench","trend","trendy","trial","tribal","tribe","trick","tricky","tried","trifle","trim","trio","trip","triple","troop","trophy","trot","trough","trout","truce","truck","true","truly","trunk","trust","truth","try","tube","tumble","tuna","tundra","tune","tunic","tunnel","turban","turf","turk","turkey","turn","turtle","tutor","tweed","twelve","twenty","twice","twin","twist","two","tycoon","tying","type","tyrant","ugly","ulcer","ultra","umpire","unable","uncle","under","uneasy","unfair","unify","union","unique","unit","unite","unity","unlike","unrest","unruly","until","update","upheld","uphill","uphold","upon","upper","uproar","upset","upshot","uptake","upturn","upward","urban","urge","urgent","urging","urine","usable","usage","use","useful","user","usual","utmost","utter","vacant","vacuum","vague","vain","valet","valid","valley","value","valve","van","vanish","vanity","vary","vase","vast","vat","vault","vector","veil","vein","velvet","vendor","veneer","venice","venom","vent","venue","venus","verb","verbal","verge","verify","verity","verse","versus","very","vessel","vest","vet","veto","via","viable","vicar","vice","victim","victor","video","vienna","view","vigil","viking","vile","villa","vine","vinyl","viola","violet","violin","viral","virgo","virtue","virus","visa","vision","visit","visual","vital","vivid","vocal","vodka","vogue","voice","void","volley","volume","vote","vowel","voyage","vulgar","wade","wage","waist","wait","waiter","wake","walk","walker","wall","wallet","walnut","wander","want","war","warden","warm","warmth","warn","warp","warsaw","wary","was","wash","wasp","waste","watch","water","watery","wave","wax","way","weak","weaken","wealth","weapon","wear","weary","weave","wedge","wee","weed","week","weekly","weep","weigh","weight","weird","well","were","west","wet","whale","wharf","what","wheat","wheel","when","whence","where","which","whiff","while","whim","whip","whisky","white","who","whole","wholly","whom","whose","why","wicked","wide","widely","widen","wider","widow","width","wife","wig","wild","wildly","will","willow","wily","win","wind","window","windy","wine","wing","wink","winner","winter","wipe","wire","wisdom","wise","wish","wit","witch","with","within","witty","wizard","woke","wolf","wolves","woman","womb","won","wonder","wood","wooden","woods","woody","wool","word","work","worker","world","worm","worry","worse","worst","worth","worthy","would","wound","wrap","wrath","wreath","wreck","wring","wrist","writ","write","writer","wrong","xerox","yacht","yale","yard","yarn","yeah","year","yeard","yeast","yellow","yet","yield","yogurt","yolk","you","young","your","youth","zaire","zeal","zebra","zenith","zero","zeus","zigzag","zinc","zombie","zone"]},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"]},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.bytesToBits=y,t.convertRadix=h,t.crc8=function(e){for(var t=255,n=0;n>>1^(0==(1&t)?0:178)}return 255^t},t.legacy1=function(e,t){for(var n=h(e.map((function(e){return t.indexOf(e.toLowerCase())})),t.length,256,33),r=n[n.length-1],o=new Uint8Array(n.length-1),a=0;a=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;l-=1){var d=a.dividedToIntegerBy(n),p=a.modulo(n);a=d,s[l]=p.toNumber()}return s}function y(e){var t=[];t.fill(!1,0,8*e.length);for(var n=0;n>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],b=e[1],q=e[11]<<4|e[10]>>>28,W=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,m=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,g=e[25]<<11|e[24]>>>21,k=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,E=e[18]<<20|e[19]>>>12,P=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,K=e[38]<<8|e[39]>>>24,G=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~m&g,e[1]=b^~v&k,e[10]=T^~E&S,e[11]=O^~P&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~q&Y,e[31]=V^~W&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=m^~g&_,e[3]=v^~k&w,e[12]=E^~S&D,e[13]=P^~R&C,e[22]=x^~U&K,e[23]=F^~L&G,e[32]=q^~Y&J,e[33]=W^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=g^~_&I,e[5]=k^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~K&z,e[25]=L^~G&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&b,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=K^~z&M,e[27]=G^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&m,e[9]=A^~b&v,e[18]=N^~T&E,e[19]=B^~O&P,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&q,e[39]=ee^~V&W,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];m%f==0&&(c(p),n=0)}return"0x"+b}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e){e.exports=JSON.parse('{"_args":[["elliptic@6.5.4","C:\\\\Users\\\\user\\\\Pulpit\\\\Projects\\\\silk\\\\hweb3.js"]],"_from":"elliptic@6.5.4","_id":"elliptic@6.5.4","_inBundle":false,"_integrity":"sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==","_location":"/elliptic","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"elliptic@6.5.4","name":"elliptic","escapedName":"elliptic","rawSpec":"6.5.4","saveSpec":null,"fetchSpec":"6.5.4"},"_requiredBy":["/@ethersproject/signing-key","/browserify-sign","/create-ecdh","/eth-lib","/secp256k1","/swarm-js/eth-lib"],"_resolved":"https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz","_spec":"6.5.4","_where":"C:\\\\Users\\\\user\\\\Pulpit\\\\Projects\\\\silk\\\\hweb3.js","author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"bugs":{"url":"https://github.com/indutny/elliptic/issues"},"dependencies":{"bn.js":"^4.11.9","brorand":"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1","inherits":"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"},"description":"EC cryptography","devDependencies":{"brfs":"^2.0.2","coveralls":"^3.1.0","eslint":"^7.6.0","grunt":"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.5","mocha":"^8.0.1"},"files":["lib"],"homepage":"https://github.com/indutny/elliptic","keywords":["EC","Elliptic","curve","Cryptography"],"license":"MIT","main":"lib/elliptic.js","name":"elliptic","repository":{"type":"git","url":"git+ssh://git@github.com/indutny/elliptic.git"},"scripts":{"lint":"eslint lib test","lint:fix":"npm run lint -- --fix","test":"npm run lint && npm run unit","unit":"istanbul test _mocha --reporter=spec test/index.js","version":"grunt dist && git add dist/"},"version":"6.5.4"}')},function(e,t){},function(e,t){},function(e,t,n){"use strict";var r=n(58),o=n(13),a=n(15),i=n(183),u=r.assert;function c(e){i.call(this,"short",e),this.a=new o(e.a,16).toRed(this.red),this.b=new o(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function s(e,t,n,r){i.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new o(t,16),this.y=new o(n,16),r&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function l(e,t,n,r){i.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===r?(this.x=this.curve.one,this.y=this.curve.one,this.z=new o(0)):(this.x=new o(t,16),this.y=new o(n,16),this.z=new o(r,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}a(c,i),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new o(e.beta,16).toRed(this.red);else{var r=this._getEndoRoots(this.p);t=(t=r[0].cmp(r[1])<0?r[0]:r[1]).toRed(this.red)}if(e.lambda)n=new o(e.lambda,16);else{var a=this._getEndoRoots(this.n);0===this.g.mul(a[0]).x.cmp(this.g.x.redMul(t))?n=a[0]:(n=a[1],u(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new o(e.a,16),b:new o(e.b,16)}})):this._getEndoBasis(n)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:o.mont(e),n=new o(2).toRed(t).redInvm(),r=n.redNeg(),a=new o(3).toRed(t).redNeg().redSqrt().redMul(n);return[r.redAdd(a).fromRed(),r.redSub(a).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,n,r,a,i,u,c,s,l,f=this.n.ushrn(Math.floor(this.n.bitLength()/2)),d=e,p=this.n.clone(),h=new o(1),y=new o(0),b=new o(0),m=new o(1),v=0;0!==d.cmpn(0);){var g=p.div(d);s=p.sub(g.mul(d)),l=b.sub(g.mul(h));var k=m.sub(g.mul(y));if(!r&&s.cmp(f)<0)t=c.neg(),n=h,r=s.neg(),a=l;else if(r&&2==++v)break;c=s,p=d,d=s,b=h,h=l,m=y,y=k}i=s.neg(),u=l;var _=r.sqr().add(a.sqr());return i.sqr().add(u.sqr()).cmp(_)>=0&&(i=t,u=n),r.negative&&(r=r.neg(),a=a.neg()),i.negative&&(i=i.neg(),u=u.neg()),[{a:r,b:a},{a:i,b:u}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],r=t[1],o=r.b.mul(e).divRound(this.n),a=n.b.neg().mul(e).divRound(this.n),i=o.mul(n.a),u=a.mul(r.a),c=o.mul(n.b),s=a.mul(r.b);return{k1:e.sub(i).sub(u),k2:c.add(s).neg()}},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var a=r.fromRed().isOdd();return(t&&!a||!t&&a)&&(r=r.redNeg()),this.point(e,r)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,r=this.a.redMul(t),o=t.redSqr().redMul(t).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(o).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,n){for(var r=this._endoWnafT1,o=this._endoWnafT2,a=0;a":""},s.prototype.isInfinity=function(){return this.inf},s.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var n=t.redSqr().redISub(this.x).redISub(e.x),r=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},s.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,n=this.x.redSqr(),r=e.redInvm(),o=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(r),a=o.redSqr().redISub(this.x.redAdd(this.x)),i=o.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,i)},s.prototype.getX=function(){return this.x.fromRed()},s.prototype.getY=function(){return this.y.fromRed()},s.prototype.mul=function(e){return e=new o(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o):this.curve._wnafMulAdd(1,r,o,2)},s.prototype.jmulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o,!0):this.curve._wnafMulAdd(1,r,o,2,!0)},s.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},s.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,r=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return t},s.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},a(l,i.BasePoint),c.prototype.jpoint=function(e,t,n){return new l(this,e,t,n)},l.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),r=this.y.redMul(t).redMul(e);return this.curve.point(n,r)},l.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},l.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(t),o=e.x.redMul(n),a=this.y.redMul(t.redMul(e.z)),i=e.y.redMul(n.redMul(this.z)),u=r.redSub(o),c=a.redSub(i);if(0===u.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var s=u.redSqr(),l=s.redMul(u),f=r.redMul(s),d=c.redSqr().redIAdd(l).redISub(f).redISub(f),p=c.redMul(f.redISub(d)).redISub(a.redMul(l)),h=this.z.redMul(e.z).redMul(u);return this.curve.jpoint(d,p,h)},l.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,r=e.x.redMul(t),o=this.y,a=e.y.redMul(t).redMul(this.z),i=n.redSub(r),u=o.redSub(a);if(0===i.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=i.redSqr(),s=c.redMul(i),l=n.redMul(c),f=u.redSqr().redIAdd(s).redISub(l).redISub(l),d=u.redMul(l.redISub(f)).redISub(o.redMul(s)),p=this.z.redMul(i);return this.curve.jpoint(f,d,p)},l.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t=0)return!1;if(n.redIAdd(o),0===this.x.cmp(n))return!0}},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t,n){"use strict";var r=n(13),o=n(15),a=n(183),i=n(58);function u(e){a.call(this,"mont",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.i4=new r(4).toRed(this.red).redInvm(),this.two=new r(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,n){a.BasePoint.call(this,e,"projective"),null===t&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new r(t,16),this.z=new r(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}o(u,a),e.exports=u,u.prototype.validate=function(e){var t=e.normalize().x,n=t.redSqr(),r=n.redMul(t).redAdd(n.redMul(this.a)).redAdd(t);return 0===r.redSqrt().redSqr().cmp(r)},o(c,a.BasePoint),u.prototype.decodePoint=function(e,t){return this.point(i.toArray(e,t),1)},u.prototype.point=function(e,t){return new c(this,e,t)},u.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),n=e.redSub(t),r=e.redMul(t),o=n.redMul(t.redAdd(this.curve.a24.redMul(n)));return this.curve.point(r,o)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var n=this.x.redAdd(this.z),r=this.x.redSub(this.z),o=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(n),i=o.redMul(r),u=t.z.redMul(a.redAdd(i).redSqr()),c=t.x.redMul(a.redISub(i).redSqr());return this.curve.point(u,c)},c.prototype.mul=function(e){for(var t=e.clone(),n=this,r=this.curve.point(null,null),o=[];0!==t.cmpn(0);t.iushrn(1))o.push(t.andln(1));for(var a=o.length-1;a>=0;a--)0===o[a]?(n=n.diffAdd(r,this),r=r.dbl()):(r=n.diffAdd(r,this),n=n.dbl());return r},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,n){"use strict";var r=n(58),o=n(13),a=n(15),i=n(183),u=r.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,i.call(this,"edwards",e),this.a=new o(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new o(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new o(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),u(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function s(e,t,n,r,a){i.BasePoint.call(this,e,"projective"),null===t&&null===n&&null===r?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new o(t,16),this.y=new o(n,16),this.z=r?new o(r,16):this.curve.one,this.t=a&&new o(a,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}a(c,i),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,n,r){return this.point(e,t,n,r)},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=this.c2.redSub(this.a.redMul(n)),a=this.one.redSub(this.c2.redMul(this.d).redMul(n)),i=r.redMul(a.redInvm()),u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");var c=u.fromRed().isOdd();return(t&&!c||!t&&c)&&(u=u.redNeg()),this.point(e,u)},c.prototype.pointFromY=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=n.redSub(this.c2),a=n.redMul(this.d).redMul(this.c2).redSub(this.a),i=r.redMul(a.redInvm());if(0===i.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");return u.fromRed().isOdd()!==t&&(u=u.redNeg()),this.point(u,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),n=e.y.redSqr(),r=t.redMul(this.a).redAdd(n),o=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(n)));return 0===r.cmp(o)},a(s,i.BasePoint),c.prototype.pointFromJSON=function(e){return s.fromJSON(this,e)},c.prototype.point=function(e,t,n,r){return new s(this,e,t,n,r)},s.fromJSON=function(e,t){return new s(e,t[0],t[1],t[2])},s.prototype.inspect=function(){return this.isInfinity()?"":""},s.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},s.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var r=this.curve._mulA(e),o=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=r.redAdd(t),i=a.redSub(n),u=r.redSub(t),c=o.redMul(i),s=a.redMul(u),l=o.redMul(u),f=i.redMul(a);return this.curve.point(c,s,f,l)},s.prototype._projDbl=function(){var e,t,n,r,o,a,i=this.x.redAdd(this.y).redSqr(),u=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var s=(r=this.curve._mulA(u)).redAdd(c);this.zOne?(e=i.redSub(u).redSub(c).redMul(s.redSub(this.curve.two)),t=s.redMul(r.redSub(c)),n=s.redSqr().redSub(s).redSub(s)):(o=this.z.redSqr(),a=s.redSub(o).redISub(o),e=i.redSub(u).redISub(c).redMul(a),t=s.redMul(r.redSub(c)),n=s.redMul(a))}else r=u.redAdd(c),o=this.curve._mulC(this.z).redSqr(),a=r.redSub(o).redSub(o),e=this.curve._mulC(i.redISub(r)).redMul(a),t=this.curve._mulC(r).redMul(u.redISub(c)),n=r.redMul(a);return this.curve.point(e,t,n)},s.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},s.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),r=this.t.redMul(this.curve.dd).redMul(e.t),o=this.z.redMul(e.z.redAdd(e.z)),a=n.redSub(t),i=o.redSub(r),u=o.redAdd(r),c=n.redAdd(t),s=a.redMul(i),l=u.redMul(c),f=a.redMul(c),d=i.redMul(u);return this.curve.point(s,l,d,f)},s.prototype._projAdd=function(e){var t,n,r=this.z.redMul(e.z),o=r.redSqr(),a=this.x.redMul(e.x),i=this.y.redMul(e.y),u=this.curve.d.redMul(a).redMul(i),c=o.redSub(u),s=o.redAdd(u),l=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(i),f=r.redMul(c).redMul(l);return this.curve.twisted?(t=r.redMul(s).redMul(i.redSub(this.curve._mulA(a))),n=c.redMul(s)):(t=r.redMul(s).redMul(i.redSub(a)),n=this.curve._mulC(c).redMul(s)),this.curve.point(f,t,n)},s.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},s.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!1)},s.prototype.jmulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!0)},s.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},s.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},s.prototype.getX=function(){return this.normalize(),this.x.fromRed()},s.prototype.getY=function(){return this.normalize(),this.y.fromRed()},s.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},s.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var n=e.clone(),r=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(r),0===this.x.cmp(t))return!0}},s.prototype.toP=s.prototype.normalize,s.prototype.mixedAdd=s.prototype.add},function(e,t,n){"use strict";t.sha1=n(599),t.sha224=n(600),t.sha256=n(318),t.sha384=n(601),t.sha512=n(319)},function(e,t,n){"use strict";var r=n(77),o=n(161),a=n(317),i=r.rotl32,u=r.sum32,c=r.sum32_5,s=a.ft_1,l=o.BlockHash,f=[1518500249,1859775393,2400959708,3395469782];function d(){if(!(this instanceof d))return new d;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}r.inherits(d,l),e.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;rthis.blockSize&&(e=(new this.Hash).update(e).digest()),o(e.length<=this.blockSize);for(var t=e.length;t0))return i.iaddn(1),this.keyFromPrivate(i)}},d.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,n,i){"object"===(0,r.default)(n)&&(i=n,n=null),i||(i={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new o(e,16));for(var u=this.n.byteLength(),c=t.getPrivate().toArray("be",u),s=e.toArray("be",u),l=new a({hash:this.hash,entropy:c,nonce:s,pers:i.pers,persEnc:i.persEnc||"utf8"}),d=this.n.sub(new o(1)),p=0;;p++){var h=i.k?i.k(p):new o(l.generate(this.n.byteLength()));if(!((h=this._truncateToN(h,!0)).cmpn(1)<=0||h.cmp(d)>=0)){var y=this.g.mul(h);if(!y.isInfinity()){var b=y.getX(),m=b.umod(this.n);if(0!==m.cmpn(0)){var v=h.invm(this.n).mul(m.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var g=(y.getY().isOdd()?1:0)|(0!==b.cmp(m)?2:0);return i.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),g^=1),new f({r:m,s:v,recoveryParam:g})}}}}}},d.prototype.verify=function(e,t,n,r){e=this._truncateToN(new o(e,16)),n=this.keyFromPublic(n,r);var a=(t=new f(t,"hex")).r,i=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var u,c=i.invm(this.n),s=c.mul(e).umod(this.n),l=c.mul(a).umod(this.n);return this.curve._maxwellTrick?!(u=this.g.jmulAdd(s,n.getPublic(),l)).isInfinity()&&u.eqXToP(a):!(u=this.g.mulAdd(s,n.getPublic(),l)).isInfinity()&&0===u.getX().umod(this.n).cmp(a)},d.prototype.recoverPubKey=function(e,t,n,r){s((3&n)===n,"The recovery param is more than two bits"),t=new f(t,r);var a=this.n,i=new o(e),u=t.r,c=t.s,l=1&n,d=n>>1;if(u.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");u=d?this.curve.pointFromX(u.add(this.curve.n),l):this.curve.pointFromX(u,l);var p=t.r.invm(a),h=a.sub(i).mul(p).umod(a),y=c.mul(p).umod(a);return this.g.mulAdd(h,u,y)},d.prototype.getKeyRecoveryParam=function(e,t,n,r){if(null!==(t=new f(t,r)).recoveryParam)return t.recoveryParam;for(var o=0;o<4;o++){var a;try{a=this.recoverPubKey(e,t,o)}catch(e){continue}if(a.eq(n))return o}throw new Error("Unable to find valid recovery factor")}},function(e,t,n){"use strict";var r=n(184),o=n(315),a=n(59);function i(e){if(!(this instanceof i))return new i(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=o.toArray(e.entropy,e.entropyEnc||"hex"),n=o.toArray(e.nonce,e.nonceEnc||"hex"),r=o.toArray(e.pers,e.persEnc||"hex");a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,r)}e.exports=i,i.prototype._init=function(e,t,n){var r=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var o=0;o=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},i.prototype.generate=function(e,t,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(r=n,n=t,t=null),n&&(n=o.toArray(n,r||"hex"),this._update(n));for(var a=[];a.length"}},function(e,t,n){"use strict";var r=n(13),o=n(58),a=o.assert;function i(e,t){if(e instanceof i)return e;this._importDER(e,t)||(a(e.r&&e.s,"Signature without r or s"),this.r=new r(e.r,16),this.s=new r(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function u(){this.place=0}function c(e,t){var n=e[t.place++];if(!(128&n))return n;var r=15&n;if(0===r||r>4)return!1;for(var o=0,a=0,i=t.place;a>>=0;return!(o<=127)&&(t.place=i,o)}function s(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}e.exports=i,i.prototype._importDER=function(e,t){e=o.toArray(e,t);var n=new u;if(48!==e[n.place++])return!1;var a=c(e,n);if(!1===a)return!1;if(a+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var i=c(e,n);if(!1===i)return!1;var s=e.slice(n.place,i+n.place);if(n.place+=i,2!==e[n.place++])return!1;var l=c(e,n);if(!1===l)return!1;if(e.length!==l+n.place)return!1;var f=e.slice(n.place,l+n.place);if(0===s[0]){if(!(128&s[1]))return!1;s=s.slice(1)}if(0===f[0]){if(!(128&f[1]))return!1;f=f.slice(1)}return this.r=new r(s),this.s=new r(f),this.recoveryParam=null,!0},i.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=s(t),n=s(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];l(r,t.length),(r=r.concat(t)).push(2),l(r,n.length);var a=r.concat(n),i=[48];return l(i,a.length),i=i.concat(a),o.encode(i,e)}},function(e,t,n){"use strict";var r=n(184),o=n(239),a=n(58),i=a.assert,u=a.parseBytes,c=n(610),s=n(611);function l(e){if(i("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof l))return new l(e);e=o[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=r.sha512}e.exports=l,l.prototype.sign=function(e,t){e=u(e);var n=this.keyFromSecret(t),r=this.hashInt(n.messagePrefix(),e),o=this.g.mul(r),a=this.encodePoint(o),i=this.hashInt(a,n.pubBytes(),e).mul(n.priv()),c=r.add(i).umod(this.curve.n);return this.makeSignature({R:o,S:c,Rencoded:a})},l.prototype.verify=function(e,t,n){e=u(e),t=this.makeSignature(t);var r=this.keyFromPublic(n),o=this.hashInt(t.Rencoded(),r.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(r.pub().mul(o)).eq(a)},l.prototype.hashInt=function(){for(var e=this.hash(),t=0;t=1&&"ident"in t.seq[0]))throw new Error("error parsing AlgorithmIdentifier from ".concat(JSON.stringify(t)));this.algIdent=t.seq[0].ident,this.parameters=t.seq[1]}return(0,c.default)(e,[{key:"toString",value:function(){return JSON.stringify(this)}}]),e}();t.AlgorithmIdentifier=y;var b=function e(t){if((0,u.default)(this,e),!("seq"in t)||2!==t.seq.length)throw new Error("error parsing PBES2Params from ".concat(JSON.stringify(t)));this.kdf=new y(t.seq[0]),this.encScheme=new y(t.seq[1])},m=function e(t){if((0,u.default)(this,e),"seq"in t&&t.seq.length>=2&&"bytes"in t.seq[0]&&"int"in t.seq[1]&&(this.salt=t.seq[0].bytes,this.iterCount=t.seq[1].int,t.seq.length>2))return"seq"in t.seq[2]?void(this.prf=new y(t.seq[2])):("int"in t.seq[2]&&(this.keyLength=t.seq[2].int),void(4===t.seq.length&&(this.prf=new y(t.seq[3]))));throw new Error("error parsing PBKDF2Params from ".concat(JSON.stringify(t)))},v=function(){function e(t){if((0,u.default)(this,e),!("seq"in t)||3!==t.seq.length)throw new Error("error parsing PrivateKeyInfo from ".concat(JSON.stringify(t)));if(!("int"in t.seq[0])||0!==t.seq[0].int)throw new Error("expected version = 0, got ".concat(JSON.stringify(t.seq[0])));if(this.version=0,this.algId=new y(t.seq[1]),!("bytes"in t.seq[2]))throw new Error("expected octet string as 3rd element, got ".concat(JSON.stringify(t.seq[2])));this.privateKey=t.seq[2].bytes}return(0,c.default)(e,null,[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.PrivateKeyInfo=v;var g=function(){function e(t){if((0,u.default)(this,e),"seq"in t&&2===t.seq.length&&"bytes"in t.seq[1])return this.algId=new y(t.seq[0]),void(this.data=t.seq[1].bytes);throw new Error("error parsing EncryptedPrivateKeyInfo from ".concat(JSON.stringify(t)))}var t;return(0,c.default)(e,[{key:"decrypt",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("1.2.840.113549.1.5.13"===this.algId.algIdent&&this.algId.parameters){e.next=2;break}throw new Error("unsupported key encryption algorithm: ".concat(this.algId.toString()));case 2:if("1.2.840.113549.1.5.12"===(n=new b(this.algId.parameters)).kdf.algIdent&&n.kdf.parameters){e.next=5;break}throw new Error("unsupported key derivation function: ".concat(n.kdf.toString()));case 5:if((r=new m(n.kdf.parameters)).prf){e.next=10;break}throw new Error("unsupported PRF HMAC-SHA-1");case 10:if("1.2.840.113549.2.9"===r.prf.algIdent){e.next=12;break}throw new Error("unsupported PRF ".concat(r.prf.toString()));case 12:if("2.16.840.1.101.3.4.1.2"===n.encScheme.algIdent){e.next=14;break}throw new Error("unsupported encryption scheme: ".concat(n.encScheme.toString()));case 14:if(n.encScheme.parameters&&"bytes"in n.encScheme.parameters){e.next=16;break}throw new Error("expected IV as bytes for AES-128-CBC, "+"got: ".concat(JSON.stringify(n.encScheme.parameters)));case 16:return o=r.keyLength||16,i=n.encScheme.parameters.bytes,e.next=20,f.deriveKey(d.HashAlgorithm.Sha256,t,r.salt,r.iterCount,o);case 20:return u=e.sent,e.next=23,s.createDecipheriv(s.CipherAlgorithm.Aes128Cbc,u,i,this.data);case 23:return c=e.sent,e.abrupt("return",v.parse(c));case 25:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}],[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.EncryptedPrivateKeyInfo=g},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return Uint8Array.from(atob(e),(function(e){return e.charCodeAt(0)}))},t.encode=function(e){return btoa(String.fromCharCode.apply(null,Array.from(e)))}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.legacy=function(e,t){var n=new Uint8Array(e.length+8);n.set(e,0);var r=new DataView(n.buffer,n.byteOffset,n.byteLength);0xffffffffff===t?(r.setInt32(e.length+0,255),r.setInt32(e.length+4,-1)):(r.setInt32(e.length+0,t<0?-1:0),r.setInt32(e.length+4,t));var i=Uint8Array.from([255]);return o.deriveKey(a.HashAlgorithm.Sha512,n,i,2048,32)};var o=u(n(182)),a=u(n(160));function i(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(i=function(e){return e?n:t})(e)}function u(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=i(t);if(n&&n.has(e))return n.get(e);var o={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=a?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}return o.default=e,n&&n.set(e,o),o}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayEqual=function(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;var n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=new DataView(t.buffer,t.byteOffset,t.byteLength),o=e.byteLength;for(;o--;)if(n.getUint8(o)!==r.getUint8(o))return!1;return!0},t.arrayStartsWith=function(e,t){if(e.byteLength=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarAllowances=null!=r.hbarAllowances?r.hbarAllowances:[],e._tokenAllowances=null!=r.tokenAllowances?r.tokenAllowances:[],e._nftAllowances=null!=r.nftAllowances?r.nftAllowances:[],e}return(0,i.default)(n,[{key:"hbarAllowances",get:function(){return this._hbarAllowances}},{key:"addHbarAllowance",value:function(e,t){return this._requireNotFrozen(),this._hbarAllowances.push(new b.default({spenderAccountId:"string"==typeof e?f.default.fromString(e):e,amount:t instanceof y.default?t:new y.default(t),ownerAccountId:null})),this}},{key:"tokenAllowances",get:function(){return this._tokenAllowances}},{key:"addTokenAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._tokenAllowances.push(new m.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof n?h.default.fromNumber(n):n,ownerAccountId:null})),this}},{key:"addTokenNftAllowance",value:function(e,t){this._requireNotFrozen();var n,r="string"==typeof e?p.default.fromString(e):e,o="string"==typeof t?f.default.fromString(t):t,a=!1,i=k(this._nftAllowances);try{for(i.s();!(n=i.n()).done;){var u=n.value;if(0===u.tokenId.compare(r.tokenId)&&0===u.spenderAccountId.compare(o)){null!=u.serialNumbers&&u.serialNumbers.push(r.serial),a=!0;break}}}catch(e){i.e(e)}finally{i.f()}return a||this._nftAllowances.push(new v.default({tokenId:r.tokenId,spenderAccountId:o,serialNumbers:[r.serial],ownerAccountId:null})),this}},{key:"addAllTokenNftAllowance",value:function(e,t){return this._requireNotFrozen(),this._nftAllowances.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:null,ownerAccountId:null})),this}},{key:"_validateChecksums",value:function(e){this._hbarAllowances.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenAllowances.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.adjustAllowance(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAdjustAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarAllowances.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenAllowances.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftAllowances.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAdjustAllowance;return l.default._fromProtobufTransactions(new n({hbarAllowances:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),tokenAllowances:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),nftAllowances:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=I,l.TRANSACTION_REGISTRY.set("cryptoAdjustAllowance",I._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.valueToLong=function(e){return o.default.isBigNumber(e)?e:new o.default(e.toString())};var o=r(n(107))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r,a,i,u){var c;return(0,o.default)(this,n),(c=t.call(this,"Entity ID ".concat(e.toString(),".").concat(r.toString(),".").concat(a.toString(),"-").concat(i," was incorrect."))).name="BadEntityIdException",c.shard=e,c.realm=r,c.num=a,c.presentChecksum=i,c.expectedChecksum=u,c}return n}((0,r(n(46)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=t;function o(){r.util._configure(),r.Writer._configure(r.BufferWriter),r.Reader._configure(r.BufferReader)}r.build="minimal",r.Writer=n(330),r.BufferWriter=n(630),r.Reader=n(331),r.BufferReader=n(631),r.util=n(111),r.rpc=n(632),r.roots=n(634),r.configure=o,o()},function(e,t,n){"use strict";e.exports=function(e,t){var n=new Array(arguments.length-1),r=0,o=2,a=!0;for(;o1&&"="===e.charAt(t);)++n;return Math.ceil(3*e.length)/4-n};for(var o=new Array(64),a=new Array(123),i=0;i<64;)a[o[i]=i<26?i+65:i<52?i+71:i<62?i-4:i-59|43]=i++;r.encode=function(e,t,n){for(var r,a=null,i=[],u=0,c=0;t>2],r=(3&s)<<4,c=1;break;case 1:i[u++]=o[r|s>>4],r=(15&s)<<2,c=2;break;case 2:i[u++]=o[r|s>>6],i[u++]=o[63&s],c=0}u>8191&&((a||(a=[])).push(String.fromCharCode.apply(String,i)),u=0)}return c&&(i[u++]=o[r],i[u++]=61,1===c&&(i[u++]=61)),a?(u&&a.push(String.fromCharCode.apply(String,i.slice(0,u))),a.join("")):String.fromCharCode.apply(String,i.slice(0,u))};r.decode=function(e,t,n){for(var r,o=n,i=0,u=0;u1)break;if(void 0===(c=a[c]))throw Error("invalid encoding");switch(i){case 0:r=c,i=1;break;case 1:t[n++]=r<<2|(48&c)>>4,r=c,i=2;break;case 2:t[n++]=(15&r)<<4|(60&c)>>2,r=c,i=3;break;case 3:t[n++]=(3&r)<<6|c,i=0}}if(1===i)throw Error("invalid encoding");return n-o},r.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}},function(e,t,n){"use strict";function r(){this._listeners={}}e.exports=r,r.prototype.on=function(e,t,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:t,ctx:n||this}),this},r.prototype.off=function(e,t){if(void 0===e)this._listeners={};else if(void 0===t)this._listeners[e]=[];else for(var n=this._listeners[e],r=0;r0?0:2147483648,n,r);else if(isNaN(t))e(2143289344,n,r);else if(t>34028234663852886e22)e((o<<31|2139095040)>>>0,n,r);else if(t<11754943508222875e-54)e((o<<31|Math.round(t/1401298464324817e-60))>>>0,n,r);else{var a=Math.floor(Math.log(t)/Math.LN2);e((o<<31|a+127<<23|8388607&Math.round(t*Math.pow(2,-a)*8388608))>>>0,n,r)}}function n(e,t,n){var r=e(t,n),o=2*(r>>31)+1,a=r>>>23&255,i=8388607&r;return 255===a?i?NaN:o*(1/0):0===a?1401298464324817e-60*o*i:o*Math.pow(2,a-150)*(i+8388608)}e.writeFloatLE=t.bind(null,o),e.writeFloatBE=t.bind(null,a),e.readFloatLE=n.bind(null,i),e.readFloatBE=n.bind(null,u)}(),"undefined"!=typeof Float64Array?function(){var t=new Float64Array([-0]),n=new Uint8Array(t.buffer),r=128===n[7];function o(e,r,o){t[0]=e,r[o]=n[0],r[o+1]=n[1],r[o+2]=n[2],r[o+3]=n[3],r[o+4]=n[4],r[o+5]=n[5],r[o+6]=n[6],r[o+7]=n[7]}function a(e,r,o){t[0]=e,r[o]=n[7],r[o+1]=n[6],r[o+2]=n[5],r[o+3]=n[4],r[o+4]=n[3],r[o+5]=n[2],r[o+6]=n[1],r[o+7]=n[0]}function i(e,r){return n[0]=e[r],n[1]=e[r+1],n[2]=e[r+2],n[3]=e[r+3],n[4]=e[r+4],n[5]=e[r+5],n[6]=e[r+6],n[7]=e[r+7],t[0]}function u(e,r){return n[7]=e[r],n[6]=e[r+1],n[5]=e[r+2],n[4]=e[r+3],n[3]=e[r+4],n[2]=e[r+5],n[1]=e[r+6],n[0]=e[r+7],t[0]}e.writeDoubleLE=r?o:a,e.writeDoubleBE=r?a:o,e.readDoubleLE=r?i:u,e.readDoubleBE=r?u:i}():function(){function t(e,t,n,r,o,a){var i=r<0?1:0;if(i&&(r=-r),0===r)e(0,o,a+t),e(1/r>0?0:2147483648,o,a+n);else if(isNaN(r))e(0,o,a+t),e(2146959360,o,a+n);else if(r>17976931348623157e292)e(0,o,a+t),e((i<<31|2146435072)>>>0,o,a+n);else{var u;if(r<22250738585072014e-324)e((u=r/5e-324)>>>0,o,a+t),e((i<<31|u/4294967296)>>>0,o,a+n);else{var c=Math.floor(Math.log(r)/Math.LN2);1024===c&&(c=1023),e(4503599627370496*(u=r*Math.pow(2,-c))>>>0,o,a+t),e((i<<31|c+1023<<20|1048576*u&1048575)>>>0,o,a+n)}}}function n(e,t,n,r,o){var a=e(r,o+t),i=e(r,o+n),u=2*(i>>31)+1,c=i>>>20&2047,s=4294967296*(1048575&i)+a;return 2047===c?s?NaN:u*(1/0):0===c?5e-324*u*s:u*Math.pow(2,c-1075)*(s+4503599627370496)}e.writeDoubleLE=t.bind(null,o,0,4),e.writeDoubleBE=t.bind(null,a,4,0),e.readDoubleLE=n.bind(null,i,0,4),e.readDoubleBE=n.bind(null,u,4,0)}(),e}function o(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}function a(e,t,n){t[n]=e>>>24,t[n+1]=e>>>16&255,t[n+2]=e>>>8&255,t[n+3]=255&e}function i(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function u(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}e.exports=r(r)},function(module,exports,__webpack_require__){"use strict";function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}module.exports=inquire},function(e,t,n){"use strict";var r=t;r.length=function(e){for(var t=0,n=0,r=0;r191&&r<224?a[i++]=(31&r)<<6|63&e[t++]:r>239&&r<365?(r=((7&r)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,a[i++]=55296+(r>>10),a[i++]=56320+(1023&r)):a[i++]=(15&r)<<12|(63&e[t++])<<6|63&e[t++],i>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,a)),i=0);return o?(i&&o.push(String.fromCharCode.apply(String,a.slice(0,i))),o.join("")):String.fromCharCode.apply(String,a.slice(0,i))},r.write=function(e,t,n){for(var r,o,a=n,i=0;i>6|192,t[n++]=63&r|128):55296==(64512&r)&&56320==(64512&(o=e.charCodeAt(i+1)))?(r=65536+((1023&r)<<10)+(1023&o),++i,t[n++]=r>>18|240,t[n++]=r>>12&63|128,t[n++]=r>>6&63|128,t[n++]=63&r|128):(t[n++]=r>>12|224,t[n++]=r>>6&63|128,t[n++]=63&r|128);return n-a}},function(e,t,n){"use strict";e.exports=function(e,t,n){var r=n||8192,o=r>>>1,a=null,i=r;return function(n){if(n<1||n>o)return e(n);i+n>r&&(a=e(r),i=0);var u=t.call(a,i,i+=n);return 7&i&&(i=1+(7|i)),u}}},function(e,t,n){"use strict";e.exports=o;var r=n(111);function o(e,t){this.lo=e>>>0,this.hi=t>>>0}var a=o.zero=new o(0,0);a.toNumber=function(){return 0},a.zzEncode=a.zzDecode=function(){return this},a.length=function(){return 1};var i=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(e){if(0===e)return a;var t=e<0;t&&(e=-e);var n=e>>>0,r=(e-n)/4294967296>>>0;return t&&(r=~r>>>0,n=~n>>>0,++n>4294967295&&(n=0,++r>4294967295&&(r=0))),new o(n,r)},o.from=function(e){if("number"==typeof e)return o.fromNumber(e);if(r.isString(e)){if(!r.Long)return o.fromNumber(parseInt(e,10));e=r.Long.fromString(e)}return e.low||e.high?new o(e.low>>>0,e.high>>>0):a},o.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var t=1+~this.lo>>>0,n=~this.hi>>>0;return t||(n=n+1>>>0),-(t+4294967296*n)}return this.lo+4294967296*this.hi},o.prototype.toLong=function(e){return r.Long?new r.Long(0|this.lo,0|this.hi,Boolean(e)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(e)}};var u=String.prototype.charCodeAt;o.fromHash=function(e){return e===i?a:new o((u.call(e,0)|u.call(e,1)<<8|u.call(e,2)<<16|u.call(e,3)<<24)>>>0,(u.call(e,4)|u.call(e,5)<<8|u.call(e,6)<<16|u.call(e,7)<<24)>>>0)},o.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},o.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this},o.prototype.zzDecode=function(){var e=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this},o.prototype.length=function(){var e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===t?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}},function(e,t,n){"use strict";e.exports=a;var r=n(330);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(111);function a(){r.call(this)}function i(e,t,n){e.length<40?o.utf8.write(e,t,n):t.utf8Write?t.utf8Write(e,n):t.write(e,n)}a._configure=function(){a.alloc=o._Buffer_allocUnsafe,a.writeBytesBuffer=o.Buffer&&o.Buffer.prototype instanceof Uint8Array&&"set"===o.Buffer.prototype.set.name?function(e,t,n){t.set(e,n)}:function(e,t,n){if(e.copy)e.copy(t,n,0,e.length);else for(var r=0;r>>0;return this.uint32(t),t&&this._push(a.writeBytesBuffer,t,e),this},a.prototype.string=function(e){var t=o.Buffer.byteLength(e);return this.uint32(t),t&&this._push(i,t,e),this},a._configure()},function(e,t,n){"use strict";e.exports=a;var r=n(331);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(111);function a(e){r.call(this,e)}a._configure=function(){o.Buffer&&(a.prototype._slice=o.Buffer.prototype.slice)},a.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))},a._configure()},function(e,t,n){"use strict";t.Service=n(633)},function(e,t,n){"use strict";e.exports=o;var r=n(111);function o(e,t,n){if("function"!=typeof e)throw TypeError("rpcImpl must be a function");r.EventEmitter.call(this),this.rpcImpl=e,this.requestDelimited=Boolean(t),this.responseDelimited=Boolean(n)}(o.prototype=Object.create(r.EventEmitter.prototype)).constructor=o,o.prototype.rpcCall=function e(t,n,o,a,i){if(!a)throw TypeError("request must be specified");var u=this;if(!i)return r.asPromise(e,u,t,n,o,a);if(u.rpcImpl)try{return u.rpcImpl(t,n[u.requestDelimited?"encodeDelimited":"encode"](a).finish(),(function(e,n){if(e)return u.emit("error",e,t),i(e);if(null!==n){if(!(n instanceof o))try{n=o[u.responseDelimited?"decodeDelimited":"decode"](n)}catch(e){return u.emit("error",e,t),i(e)}return u.emit("data",n,t),i(null,n)}u.end(!0)}))}catch(e){return u.emit("error",e,t),void setTimeout((function(){i(e)}),0)}else setTimeout((function(){i(Error("already ended"))}),0)},o.prototype.end=function(e){return this.rpcImpl&&(e||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.proto=t.google=t.default=void 0;var o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=i?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}o.default=e,n&&n.set(e,o);return o}(n(329));function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}var i=o.Reader,u=o.Writer,c=o.util,s=o.roots.hashgraph||(o.roots.hashgraph={});t.default=s;var l=s.proto=function(){var e,t,n={};return n.TokenUnitBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.SingleAccountBalances=function(){function e(e){if(this.tokenUnitBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hbarBalance=e.uint64();break;case 3:r.tokenUnitBalances&&r.tokenUnitBalances.length||(r.tokenUnitBalances=[]),r.tokenUnitBalances.push(s.proto.TokenUnitBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.AllAccountBalances=function(){function e(e){if(this.allAccounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.allAccounts&&r.allAccounts.length||(r.allAccounts=[]),r.allAccounts.push(s.proto.SingleAccountBalances.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ShardID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.RealmID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AccountID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.accountNum=e.int64();break;case 4:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.fileNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.contractNum=e.int64();break;case 4:r.evmAddress=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionValidStart=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.scheduled=e.bool();break;case 4:r.nonce=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.AccountAmount=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.sint64();break;case 3:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransferList=function(){function e(e){if(this.accountAmounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountAmounts&&r.accountAmounts.length||(r.accountAmounts=[]),r.accountAmounts.push(s.proto.AccountAmount.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftTransfer=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.senderAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.receiverAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.serialNumber=e.int64();break;case 4:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenTransferList=function(){function e(e){if(this.transfers=[],this.nftTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.transfers&&r.transfers.length||(r.transfers=[]),r.transfers.push(s.proto.AccountAmount.decode(e,e.uint32()));break;case 3:r.nftTransfers&&r.nftTransfers.length||(r.nftTransfers=[]),r.nftTransfers.push(s.proto.NftTransfer.decode(e,e.uint32()));break;case 4:r.expectedDecimals=s.google.protobuf.UInt32Value.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Fraction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.numerator=e.int64();break;case 2:r.denominator=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TopicID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.topicNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.tokenNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.scheduleNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenType=(e={},(t=Object.create(e))[e[0]="FUNGIBLE_COMMON"]=0,t[e[1]="NON_FUNGIBLE_UNIQUE"]=1,t),n.SubType=function(){var e={},t=Object.create(e);return t[e[0]="DEFAULT"]=0,t[e[1]="TOKEN_FUNGIBLE_COMMON"]=1,t[e[2]="TOKEN_NON_FUNGIBLE_UNIQUE"]=2,t[e[3]="TOKEN_FUNGIBLE_COMMON_WITH_CUSTOM_FEES"]=3,t[e[4]="TOKEN_NON_FUNGIBLE_UNIQUE_WITH_CUSTOM_FEES"]=4,t}(),n.TokenSupplyType=function(){var e={},t=Object.create(e);return t[e[0]="INFINITE"]=0,t[e[1]="FINITE"]=1,t}(),n.TokenFreezeStatus=function(){var e={},t=Object.create(e);return t[e[0]="FreezeNotApplicable"]=0,t[e[1]="Frozen"]=1,t[e[2]="Unfrozen"]=2,t}(),n.TokenKycStatus=function(){var e={},t=Object.create(e);return t[e[0]="KycNotApplicable"]=0,t[e[1]="Granted"]=1,t[e[2]="Revoked"]=2,t}(),n.TokenPauseStatus=function(){var e={},t=Object.create(e);return t[e[0]="PauseNotApplicable"]=0,t[e[1]="Paused"]=1,t[e[2]="Unpaused"]=2,t}(),n.Key=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdKey=s.proto.ThresholdKey.decode(e,e.uint32());break;case 6:r.keyList=s.proto.KeyList.decode(e,e.uint32());break;case 7:r.ECDSASecp256k1=e.bytes();break;case 8:r.delegatableContractId=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdKey=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.threshold=e.uint32();break;case 2:r.keys=s.proto.KeyList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.KeyList=function(){function e(e){if(this.keys=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.keys&&r.keys.length||(r.keys=[]),r.keys.push(s.proto.Key.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Signature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contract=e.bytes();break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdSignature=s.proto.ThresholdSignature.decode(e,e.uint32());break;case 6:r.signatureList=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdSignature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SignatureList=function(){function e(e){if(this.sigs=[],e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs&&r.sigs.length||(r.sigs=[]),r.sigs.push(s.proto.Signature.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SignaturePair=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.pubKeyPrefix=e.bytes();break;case 2:r.contract=e.bytes();break;case 3:r.ed25519=e.bytes();break;case 4:r.RSA_3072=e.bytes();break;case 5:r.ECDSA_384=e.bytes();break;case 6:r.ECDSASecp256k1=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.SignatureMap=function(){function e(e){if(this.sigPair=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.sigPair&&r.sigPair.length||(r.sigPair=[]),r.sigPair.push(s.proto.SignaturePair.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.HederaFunctionality=function(){var e={},t=Object.create(e);return t[e[0]="NONE"]=0,t[e[1]="CryptoTransfer"]=1,t[e[2]="CryptoUpdate"]=2,t[e[3]="CryptoDelete"]=3,t[e[4]="CryptoAddLiveHash"]=4,t[e[5]="CryptoDeleteLiveHash"]=5,t[e[6]="ContractCall"]=6,t[e[7]="ContractCreate"]=7,t[e[8]="ContractUpdate"]=8,t[e[9]="FileCreate"]=9,t[e[10]="FileAppend"]=10,t[e[11]="FileUpdate"]=11,t[e[12]="FileDelete"]=12,t[e[13]="CryptoGetAccountBalance"]=13,t[e[14]="CryptoGetAccountRecords"]=14,t[e[15]="CryptoGetInfo"]=15,t[e[16]="ContractCallLocal"]=16,t[e[17]="ContractGetInfo"]=17,t[e[18]="ContractGetBytecode"]=18,t[e[19]="GetBySolidityID"]=19,t[e[20]="GetByKey"]=20,t[e[21]="CryptoGetLiveHash"]=21,t[e[22]="CryptoGetStakers"]=22,t[e[23]="FileGetContents"]=23,t[e[24]="FileGetInfo"]=24,t[e[25]="TransactionGetRecord"]=25,t[e[26]="ContractGetRecords"]=26,t[e[27]="CryptoCreate"]=27,t[e[28]="SystemDelete"]=28,t[e[29]="SystemUndelete"]=29,t[e[30]="ContractDelete"]=30,t[e[31]="Freeze"]=31,t[e[32]="CreateTransactionRecord"]=32,t[e[33]="CryptoAccountAutoRenew"]=33,t[e[34]="ContractAutoRenew"]=34,t[e[35]="GetVersionInfo"]=35,t[e[36]="TransactionGetReceipt"]=36,t[e[50]="ConsensusCreateTopic"]=50,t[e[51]="ConsensusUpdateTopic"]=51,t[e[52]="ConsensusDeleteTopic"]=52,t[e[53]="ConsensusGetTopicInfo"]=53,t[e[54]="ConsensusSubmitMessage"]=54,t[e[55]="UncheckedSubmit"]=55,t[e[56]="TokenCreate"]=56,t[e[58]="TokenGetInfo"]=58,t[e[59]="TokenFreezeAccount"]=59,t[e[60]="TokenUnfreezeAccount"]=60,t[e[61]="TokenGrantKycToAccount"]=61,t[e[62]="TokenRevokeKycFromAccount"]=62,t[e[63]="TokenDelete"]=63,t[e[64]="TokenUpdate"]=64,t[e[65]="TokenMint"]=65,t[e[66]="TokenBurn"]=66,t[e[67]="TokenAccountWipe"]=67,t[e[68]="TokenAssociateToAccount"]=68,t[e[69]="TokenDissociateFromAccount"]=69,t[e[70]="ScheduleCreate"]=70,t[e[71]="ScheduleDelete"]=71,t[e[72]="ScheduleSign"]=72,t[e[73]="ScheduleGetInfo"]=73,t[e[74]="TokenGetAccountNftInfos"]=74,t[e[75]="TokenGetNftInfo"]=75,t[e[76]="TokenGetNftInfos"]=76,t[e[77]="TokenFeeScheduleUpdate"]=77,t[e[78]="NetworkGetExecutionTime"]=78,t[e[79]="TokenPause"]=79,t[e[80]="TokenUnpause"]=80,t[e[81]="CryptoApproveAllowance"]=81,t[e[82]="CryptoAdjustAllowance"]=82,t}(),n.FeeComponents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.min=e.int64();break;case 2:r.max=e.int64();break;case 3:r.constant=e.int64();break;case 4:r.bpt=e.int64();break;case 5:r.vpt=e.int64();break;case 6:r.rbh=e.int64();break;case 7:r.sbh=e.int64();break;case 8:r.gas=e.int64();break;case 9:r.tv=e.int64();break;case 10:r.bpr=e.int64();break;case 11:r.sbpr=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionFeeSchedule=function(){function e(e){if(this.fees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.hederaFunctionality=e.int32();break;case 2:r.feeData=s.proto.FeeData.decode(e,e.uint32());break;case 3:r.fees&&r.fees.length||(r.fees=[]),r.fees.push(s.proto.FeeData.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FeeData=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 2:r.networkdata=s.proto.FeeComponents.decode(e,e.uint32());break;case 3:r.servicedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 4:r.subType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FeeSchedule=function(){function e(e){if(this.transactionFeeSchedule=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFeeSchedule&&r.transactionFeeSchedule.length||(r.transactionFeeSchedule=[]),r.transactionFeeSchedule.push(s.proto.TransactionFeeSchedule.decode(e,e.uint32()));break;case 2:r.expiryTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CurrentAndNextFeeSchedule=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;case 2:r.nextFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ServiceEndpoint=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddressV4=e.bytes();break;case 2:r.port=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddress=function(){function e(e){if(this.serviceEndpoint=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddress=e.bytes();break;case 2:r.portno=e.int32();break;case 3:r.memo=e.bytes();break;case 4:r.RSA_PubKey=e.string();break;case 5:r.nodeId=e.int64();break;case 6:r.nodeAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.nodeCertHash=e.bytes();break;case 8:r.serviceEndpoint&&r.serviceEndpoint.length||(r.serviceEndpoint=[]),r.serviceEndpoint.push(s.proto.ServiceEndpoint.decode(e,e.uint32()));break;case 9:r.description=e.string();break;case 10:r.stake=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddressBook=function(){function e(e){if(this.nodeAddress=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeAddress&&r.nodeAddress.length||(r.nodeAddress=[]),r.nodeAddress.push(s.proto.NodeAddress.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SemanticVersion=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.major=e.int32();break;case 2:r.minor=e.int32();break;case 3:r.patch=e.int32();break;case 4:r.pre=e.string();break;case 5:r.build=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.Setting=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.value=e.string();break;case 3:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ServicesConfigurationList=function(){function e(e){if(this.nameValue=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nameValue&&r.nameValue.length||(r.nameValue=[]),r.nameValue.push(s.proto.Setting.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenRelationship=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.balance=e.uint64();break;case 4:r.kycStatus=e.int32();break;case 5:r.freezeStatus=e.int32();break;case 6:r.decimals=e.uint32();break;case 7:r.automaticAssociation=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;case 3:r.decimals=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalances=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenAssociation=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAllowance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NftAllowance=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.Timestamp=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;case 2:r.nanos=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.TimestampSeconds=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusCreateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 3:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Duration=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusDeleteTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 5:r.topicInfo=s.proto.ConsensusTopicInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseType=function(){var e={},t=Object.create(e);return t[e[0]="ANSWER_ONLY"]=0,t[e[1]="ANSWER_STATE_PROOF"]=1,t[e[2]="COST_ANSWER"]=2,t[e[3]="COST_ANSWER_STATE_PROOF"]=3,t}(),n.QueryHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.payment=s.proto.Transaction.decode(e,e.uint32());break;case 2:r.responseType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.Transaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.body=s.proto.TransactionBody.decode(e,e.uint32());break;case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;case 3:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;case 4:r.bodyBytes=e.bytes();break;case 5:r.signedTransactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.nodeAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transactionFee=e.uint64();break;case 4:r.transactionValidDuration=s.proto.Duration.decode(e,e.uint32());break;case 5:r.generateRecord=e.bool();break;case 6:r.memo=e.string();break;case 7:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 8:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 9:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 22:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoAddLiveHash=s.proto.CryptoAddLiveHashTransactionBody.decode(e,e.uint32());break;case 48:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 49:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 11:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 12:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 13:r.cryptoDeleteLiveHash=s.proto.CryptoDeleteLiveHashTransactionBody.decode(e,e.uint32());break;case 14:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 15:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 16:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 17:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 18:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 19:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 20:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 21:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 23:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 24:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 25:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 26:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 27:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 28:r.uncheckedSubmit=s.proto.UncheckedSubmitBody.decode(e,e.uint32());break;case 29:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 31:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 33:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 34:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 35:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 37:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 38:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 39:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 40:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 41:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 45:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 46:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 47:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 42:r.scheduleCreate=s.proto.ScheduleCreateTransactionBody.decode(e,e.uint32());break;case 43:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;case 44:r.scheduleSign=s.proto.ScheduleSignTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemUndeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FreezeTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.startHour=e.int32();break;case 2:r.startMin=e.int32();break;case 3:r.endHour=e.int32();break;case 4:r.endMin=e.int32();break;case 5:r.updateFile=s.proto.FileID.decode(e,e.uint32());break;case 6:r.fileHash=e.bytes();break;case 7:r.startTime=s.proto.Timestamp.decode(e,e.uint32());break;case 8:r.freezeType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FreezeType=function(){var e={},t=Object.create(e);return t[e[0]="UNKNOWN_FREEZE_TYPE"]=0,t[e[1]="FREEZE_ONLY"]=1,t[e[2]="PREPARE_UPGRADE"]=2,t[e[3]="FREEZE_UPGRADE"]=3,t[e[4]="FREEZE_ABORT"]=4,t[e[5]="TELEMETRY_UPGRADE"]=5,t}(),n.ContractCallTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.gas=e.int64();break;case 3:r.amount=e.int64();break;case 4:r.functionParameters=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.gas=e.int64();break;case 5:r.initialBalance=e.int64();break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.constructorParameters=e.bytes();break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.ContractUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 9:r.memo=e.string();break;case 10:r.memoWrapper=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.LiveHash=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hash=e.bytes();break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 5:r.duration=s.proto.Duration.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAddLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 3:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.key=s.proto.Key.decode(e,e.uint32());break;case 2:r.initialBalance=e.uint64();break;case 3:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.sendRecordThreshold=e.uint64();break;case 7:r.receiveRecordThreshold=e.uint64();break;case 8:r.receiverSigRequired=e.bool();break;case 9:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;case 14:r.maxAutomaticTokenAssociations=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.deleteAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountOfLiveHash=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHashToDelete=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoTransferTransactionBody=function(){function e(e){if(this.tokenTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transfers=s.proto.TransferList.decode(e,e.uint32());break;case 2:r.tokenTransfers&&r.tokenTransfers.length||(r.tokenTransfers=[]),r.tokenTransfers.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.accountIDToUpdate=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.key=s.proto.Key.decode(e,e.uint32());break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.proxyFraction=e.int32();break;case 6:r.sendRecordThreshold=e.uint64();break;case 11:r.sendRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 7:r.receiveRecordThreshold=e.uint64();break;case 12:r.receiveRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 10:r.receiverSigRequired=e.bool();break;case 13:r.receiverSigRequiredWrapper=s.google.protobuf.BoolValue.decode(e,e.uint32());break;case 14:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 15:r.maxAutomaticTokenAssociations=s.google.protobuf.Int32Value.decode(e,e.uint32());break;case 16:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoApproveAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAdjustAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FileAppendTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 6:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 7:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.FileDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transferContractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusUpdateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusMessageChunkInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.initialTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.total=e.int32();break;case 3:r.number=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusSubmitMessageTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.UncheckedSubmitBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenCreateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.symbol=e.string();break;case 3:r.decimals=e.uint32();break;case 4:r.initialSupply=e.uint64();break;case 5:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.freezeDefault=e.bool();break;case 13:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 14:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 15:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 16:r.memo=e.string();break;case 17:r.tokenType=e.int32();break;case 18:r.supplyType=e.int32();break;case 19:r.maxSupply=e.int64();break;case 20:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 21:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 22:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FractionalFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fractionalAmount=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.minimumAmount=e.int64();break;case 3:r.maximumAmount=e.int64();break;case 4:r.netOfTransfers=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.FixedFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.denominatingTokenId=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.RoyaltyFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.exchangeValueFraction=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.fallbackFee=s.proto.FixedFee.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CustomFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fixedFee=s.proto.FixedFee.decode(e,e.uint32());break;case 2:r.fractionalFee=s.proto.FractionalFee.decode(e,e.uint32());break;case 4:r.royaltyFee=s.proto.RoyaltyFee.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.AssessedCustomFee=function(){function e(e){if(this.effectivePayerAccountId=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.effectivePayerAccountId&&r.effectivePayerAccountId.length||(r.effectivePayerAccountId=[]),r.effectivePayerAccountId.push(s.proto.AccountID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnfreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGrantKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenRevokeKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.name=e.string();break;case 4:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 12:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 14:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 15:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenMintTransactionBody=function(){function e(e){if(this.metadata=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:r.metadata&&r.metadata.length||(r.metadata=[]),r.metadata.push(e.bytes());break;default:e.skipType(7&o)}}return r},e}(),n.TokenBurnTransactionBody=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.uint64();break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenDissociateTransactionBody=function(){function e(e){if(this.tokens=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFeeScheduleUpdateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenPauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnpauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 2:r.memo=e.string();break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SchedulableTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFee=e.uint64();break;case 2:r.memo=e.string();break;case 3:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 4:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 5:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 6:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 37:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 38:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 7:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 8:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 9:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 11:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 12:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 13:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 14:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 15:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 16:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 17:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 18:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 19:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 20:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 21:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 22:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 23:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 24:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 25:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 26:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 27:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 28:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 29:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 30:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 31:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 33:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 39:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 35:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 34:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleSignTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.responseType=e.int32();break;case 3:r.cost=e.uint64();break;case 4:r.stateProof=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.cost=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ResponseCodeEnum=function(){var e={},t=Object.create(e);return t[e[0]="OK"]=0,t[e[1]="INVALID_TRANSACTION"]=1,t[e[2]="PAYER_ACCOUNT_NOT_FOUND"]=2,t[e[3]="INVALID_NODE_ACCOUNT"]=3,t[e[4]="TRANSACTION_EXPIRED"]=4,t[e[5]="INVALID_TRANSACTION_START"]=5,t[e[6]="INVALID_TRANSACTION_DURATION"]=6,t[e[7]="INVALID_SIGNATURE"]=7,t[e[8]="MEMO_TOO_LONG"]=8,t[e[9]="INSUFFICIENT_TX_FEE"]=9,t[e[10]="INSUFFICIENT_PAYER_BALANCE"]=10,t[e[11]="DUPLICATE_TRANSACTION"]=11,t[e[12]="BUSY"]=12,t[e[13]="NOT_SUPPORTED"]=13,t[e[14]="INVALID_FILE_ID"]=14,t[e[15]="INVALID_ACCOUNT_ID"]=15,t[e[16]="INVALID_CONTRACT_ID"]=16,t[e[17]="INVALID_TRANSACTION_ID"]=17,t[e[18]="RECEIPT_NOT_FOUND"]=18,t[e[19]="RECORD_NOT_FOUND"]=19,t[e[20]="INVALID_SOLIDITY_ID"]=20,t[e[21]="UNKNOWN"]=21,t[e[22]="SUCCESS"]=22,t[e[23]="FAIL_INVALID"]=23,t[e[24]="FAIL_FEE"]=24,t[e[25]="FAIL_BALANCE"]=25,t[e[26]="KEY_REQUIRED"]=26,t[e[27]="BAD_ENCODING"]=27,t[e[28]="INSUFFICIENT_ACCOUNT_BALANCE"]=28,t[e[29]="INVALID_SOLIDITY_ADDRESS"]=29,t[e[30]="INSUFFICIENT_GAS"]=30,t[e[31]="CONTRACT_SIZE_LIMIT_EXCEEDED"]=31,t[e[32]="LOCAL_CALL_MODIFICATION_EXCEPTION"]=32,t[e[33]="CONTRACT_REVERT_EXECUTED"]=33,t[e[34]="CONTRACT_EXECUTION_EXCEPTION"]=34,t[e[35]="INVALID_RECEIVING_NODE_ACCOUNT"]=35,t[e[36]="MISSING_QUERY_HEADER"]=36,t[e[37]="ACCOUNT_UPDATE_FAILED"]=37,t[e[38]="INVALID_KEY_ENCODING"]=38,t[e[39]="NULL_SOLIDITY_ADDRESS"]=39,t[e[40]="CONTRACT_UPDATE_FAILED"]=40,t[e[41]="INVALID_QUERY_HEADER"]=41,t[e[42]="INVALID_FEE_SUBMITTED"]=42,t[e[43]="INVALID_PAYER_SIGNATURE"]=43,t[e[44]="KEY_NOT_PROVIDED"]=44,t[e[45]="INVALID_EXPIRATION_TIME"]=45,t[e[46]="NO_WACL_KEY"]=46,t[e[47]="FILE_CONTENT_EMPTY"]=47,t[e[48]="INVALID_ACCOUNT_AMOUNTS"]=48,t[e[49]="EMPTY_TRANSACTION_BODY"]=49,t[e[50]="INVALID_TRANSACTION_BODY"]=50,t[e[51]="INVALID_SIGNATURE_TYPE_MISMATCHING_KEY"]=51,t[e[52]="INVALID_SIGNATURE_COUNT_MISMATCHING_KEY"]=52,t[e[53]="EMPTY_LIVE_HASH_BODY"]=53,t[e[54]="EMPTY_LIVE_HASH"]=54,t[e[55]="EMPTY_LIVE_HASH_KEYS"]=55,t[e[56]="INVALID_LIVE_HASH_SIZE"]=56,t[e[57]="EMPTY_QUERY_BODY"]=57,t[e[58]="EMPTY_LIVE_HASH_QUERY"]=58,t[e[59]="LIVE_HASH_NOT_FOUND"]=59,t[e[60]="ACCOUNT_ID_DOES_NOT_EXIST"]=60,t[e[61]="LIVE_HASH_ALREADY_EXISTS"]=61,t[e[62]="INVALID_FILE_WACL"]=62,t[e[63]="SERIALIZATION_FAILED"]=63,t[e[64]="TRANSACTION_OVERSIZE"]=64,t[e[65]="TRANSACTION_TOO_MANY_LAYERS"]=65,t[e[66]="CONTRACT_DELETED"]=66,t[e[67]="PLATFORM_NOT_ACTIVE"]=67,t[e[68]="KEY_PREFIX_MISMATCH"]=68,t[e[69]="PLATFORM_TRANSACTION_NOT_CREATED"]=69,t[e[70]="INVALID_RENEWAL_PERIOD"]=70,t[e[71]="INVALID_PAYER_ACCOUNT_ID"]=71,t[e[72]="ACCOUNT_DELETED"]=72,t[e[73]="FILE_DELETED"]=73,t[e[74]="ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS"]=74,t[e[75]="SETTING_NEGATIVE_ACCOUNT_BALANCE"]=75,t[e[76]="OBTAINER_REQUIRED"]=76,t[e[77]="OBTAINER_SAME_CONTRACT_ID"]=77,t[e[78]="OBTAINER_DOES_NOT_EXIST"]=78,t[e[79]="MODIFYING_IMMUTABLE_CONTRACT"]=79,t[e[80]="FILE_SYSTEM_EXCEPTION"]=80,t[e[81]="AUTORENEW_DURATION_NOT_IN_RANGE"]=81,t[e[82]="ERROR_DECODING_BYTESTRING"]=82,t[e[83]="CONTRACT_FILE_EMPTY"]=83,t[e[84]="CONTRACT_BYTECODE_EMPTY"]=84,t[e[85]="INVALID_INITIAL_BALANCE"]=85,t[e[86]="INVALID_RECEIVE_RECORD_THRESHOLD"]=86,t[e[87]="INVALID_SEND_RECORD_THRESHOLD"]=87,t[e[88]="ACCOUNT_IS_NOT_GENESIS_ACCOUNT"]=88,t[e[89]="PAYER_ACCOUNT_UNAUTHORIZED"]=89,t[e[90]="INVALID_FREEZE_TRANSACTION_BODY"]=90,t[e[91]="FREEZE_TRANSACTION_BODY_NOT_FOUND"]=91,t[e[92]="TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=92,t[e[93]="RESULT_SIZE_LIMIT_EXCEEDED"]=93,t[e[94]="NOT_SPECIAL_ACCOUNT"]=94,t[e[95]="CONTRACT_NEGATIVE_GAS"]=95,t[e[96]="CONTRACT_NEGATIVE_VALUE"]=96,t[e[97]="INVALID_FEE_FILE"]=97,t[e[98]="INVALID_EXCHANGE_RATE_FILE"]=98,t[e[99]="INSUFFICIENT_LOCAL_CALL_GAS"]=99,t[e[100]="ENTITY_NOT_ALLOWED_TO_DELETE"]=100,t[e[101]="AUTHORIZATION_FAILED"]=101,t[e[102]="FILE_UPLOADED_PROTO_INVALID"]=102,t[e[103]="FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK"]=103,t[e[104]="FEE_SCHEDULE_FILE_PART_UPLOADED"]=104,t[e[105]="EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED"]=105,t[e[106]="MAX_CONTRACT_STORAGE_EXCEEDED"]=106,t[e[107]="TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT"]=107,t[e[108]="TOTAL_LEDGER_BALANCE_INVALID"]=108,t[e[110]="EXPIRATION_REDUCTION_NOT_ALLOWED"]=110,t[e[111]="MAX_GAS_LIMIT_EXCEEDED"]=111,t[e[112]="MAX_FILE_SIZE_EXCEEDED"]=112,t[e[113]="RECEIVER_SIG_REQUIRED"]=113,t[e[150]="INVALID_TOPIC_ID"]=150,t[e[155]="INVALID_ADMIN_KEY"]=155,t[e[156]="INVALID_SUBMIT_KEY"]=156,t[e[157]="UNAUTHORIZED"]=157,t[e[158]="INVALID_TOPIC_MESSAGE"]=158,t[e[159]="INVALID_AUTORENEW_ACCOUNT"]=159,t[e[160]="AUTORENEW_ACCOUNT_NOT_ALLOWED"]=160,t[e[162]="TOPIC_EXPIRED"]=162,t[e[163]="INVALID_CHUNK_NUMBER"]=163,t[e[164]="INVALID_CHUNK_TRANSACTION_ID"]=164,t[e[165]="ACCOUNT_FROZEN_FOR_TOKEN"]=165,t[e[166]="TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED"]=166,t[e[167]="INVALID_TOKEN_ID"]=167,t[e[168]="INVALID_TOKEN_DECIMALS"]=168,t[e[169]="INVALID_TOKEN_INITIAL_SUPPLY"]=169,t[e[170]="INVALID_TREASURY_ACCOUNT_FOR_TOKEN"]=170,t[e[171]="INVALID_TOKEN_SYMBOL"]=171,t[e[172]="TOKEN_HAS_NO_FREEZE_KEY"]=172,t[e[173]="TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN"]=173,t[e[174]="MISSING_TOKEN_SYMBOL"]=174,t[e[175]="TOKEN_SYMBOL_TOO_LONG"]=175,t[e[176]="ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN"]=176,t[e[177]="TOKEN_HAS_NO_KYC_KEY"]=177,t[e[178]="INSUFFICIENT_TOKEN_BALANCE"]=178,t[e[179]="TOKEN_WAS_DELETED"]=179,t[e[180]="TOKEN_HAS_NO_SUPPLY_KEY"]=180,t[e[181]="TOKEN_HAS_NO_WIPE_KEY"]=181,t[e[182]="INVALID_TOKEN_MINT_AMOUNT"]=182,t[e[183]="INVALID_TOKEN_BURN_AMOUNT"]=183,t[e[184]="TOKEN_NOT_ASSOCIATED_TO_ACCOUNT"]=184,t[e[185]="CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT"]=185,t[e[186]="INVALID_KYC_KEY"]=186,t[e[187]="INVALID_WIPE_KEY"]=187,t[e[188]="INVALID_FREEZE_KEY"]=188,t[e[189]="INVALID_SUPPLY_KEY"]=189,t[e[190]="MISSING_TOKEN_NAME"]=190,t[e[191]="TOKEN_NAME_TOO_LONG"]=191,t[e[192]="INVALID_WIPING_AMOUNT"]=192,t[e[193]="TOKEN_IS_IMMUTABLE"]=193,t[e[194]="TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT"]=194,t[e[195]="TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES"]=195,t[e[196]="ACCOUNT_IS_TREASURY"]=196,t[e[197]="TOKEN_ID_REPEATED_IN_TOKEN_LIST"]=197,t[e[198]="TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=198,t[e[199]="EMPTY_TOKEN_TRANSFER_BODY"]=199,t[e[200]="EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS"]=200,t[e[201]="INVALID_SCHEDULE_ID"]=201,t[e[202]="SCHEDULE_IS_IMMUTABLE"]=202,t[e[203]="INVALID_SCHEDULE_PAYER_ID"]=203,t[e[204]="INVALID_SCHEDULE_ACCOUNT_ID"]=204,t[e[205]="NO_NEW_VALID_SIGNATURES"]=205,t[e[206]="UNRESOLVABLE_REQUIRED_SIGNERS"]=206,t[e[207]="SCHEDULED_TRANSACTION_NOT_IN_WHITELIST"]=207,t[e[208]="SOME_SIGNATURES_WERE_INVALID"]=208,t[e[209]="TRANSACTION_ID_FIELD_NOT_ALLOWED"]=209,t[e[210]="IDENTICAL_SCHEDULE_ALREADY_CREATED"]=210,t[e[211]="INVALID_ZERO_BYTE_IN_STRING"]=211,t[e[212]="SCHEDULE_ALREADY_DELETED"]=212,t[e[213]="SCHEDULE_ALREADY_EXECUTED"]=213,t[e[214]="MESSAGE_SIZE_TOO_LARGE"]=214,t[e[215]="OPERATION_REPEATED_IN_BUCKET_GROUPS"]=215,t[e[216]="BUCKET_CAPACITY_OVERFLOW"]=216,t[e[217]="NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION"]=217,t[e[218]="BUCKET_HAS_NO_THROTTLE_GROUPS"]=218,t[e[219]="THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC"]=219,t[e[220]="SUCCESS_BUT_MISSING_EXPECTED_OPERATION"]=220,t[e[221]="UNPARSEABLE_THROTTLE_DEFINITIONS"]=221,t[e[222]="INVALID_THROTTLE_DEFINITIONS"]=222,t[e[223]="ACCOUNT_EXPIRED_AND_PENDING_REMOVAL"]=223,t[e[224]="INVALID_TOKEN_MAX_SUPPLY"]=224,t[e[225]="INVALID_TOKEN_NFT_SERIAL_NUMBER"]=225,t[e[226]="INVALID_NFT_ID"]=226,t[e[227]="METADATA_TOO_LONG"]=227,t[e[228]="BATCH_SIZE_LIMIT_EXCEEDED"]=228,t[e[229]="INVALID_QUERY_RANGE"]=229,t[e[230]="FRACTION_DIVIDES_BY_ZERO"]=230,t[e[231]="INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE"]=231,t[e[232]="CUSTOM_FEES_LIST_TOO_LONG"]=232,t[e[233]="INVALID_CUSTOM_FEE_COLLECTOR"]=233,t[e[234]="INVALID_TOKEN_ID_IN_CUSTOM_FEES"]=234,t[e[235]="TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR"]=235,t[e[236]="TOKEN_MAX_SUPPLY_REACHED"]=236,t[e[237]="SENDER_DOES_NOT_OWN_NFT_SERIAL_NO"]=237,t[e[238]="CUSTOM_FEE_NOT_FULLY_SPECIFIED"]=238,t[e[239]="CUSTOM_FEE_MUST_BE_POSITIVE"]=239,t[e[240]="TOKEN_HAS_NO_FEE_SCHEDULE_KEY"]=240,t[e[241]="CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE"]=241,t[e[242]="ROYALTY_FRACTION_CANNOT_EXCEED_ONE"]=242,t[e[243]="FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT"]=243,t[e[244]="CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES"]=244,t[e[245]="CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON"]=245,t[e[246]="CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=246,t[e[247]="INVALID_CUSTOM_FEE_SCHEDULE_KEY"]=247,t[e[248]="INVALID_TOKEN_MINT_METADATA"]=248,t[e[249]="INVALID_TOKEN_BURN_METADATA"]=249,t[e[250]="CURRENT_TREASURY_STILL_OWNS_NFTS"]=250,t[e[251]="ACCOUNT_STILL_OWNS_NFTS"]=251,t[e[252]="TREASURY_MUST_OWN_BURNED_NFT"]=252,t[e[253]="ACCOUNT_DOES_NOT_OWN_WIPED_NFT"]=253,t[e[254]="ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=254,t[e[255]="MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED"]=255,t[e[256]="PAYER_ACCOUNT_DELETED"]=256,t[e[257]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH"]=257,t[e[258]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS"]=258,t[e[259]="INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE"]=259,t[e[260]="SERIAL_NUMBER_LIMIT_REACHED"]=260,t[e[261]="CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE"]=261,t[e[262]="NO_REMAINING_AUTOMATIC_ASSOCIATIONS"]=262,t[e[263]="EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT"]=263,t[e[264]="REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT"]=264,t[e[265]="TOKEN_IS_PAUSED"]=265,t[e[266]="TOKEN_HAS_NO_PAUSE_KEY"]=266,t[e[267]="INVALID_PAUSE_KEY"]=267,t[e[268]="FREEZE_UPDATE_FILE_DOES_NOT_EXIST"]=268,t[e[269]="FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH"]=269,t[e[270]="NO_UPGRADE_HAS_BEEN_PREPARED"]=270,t[e[271]="NO_FREEZE_IS_SCHEDULED"]=271,t[e[272]="UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE"]=272,t[e[273]="FREEZE_START_TIME_MUST_BE_FUTURE"]=273,t[e[274]="PREPARED_UPDATE_FILE_IS_IMMUTABLE"]=274,t[e[275]="FREEZE_ALREADY_SCHEDULED"]=275,t[e[276]="FREEZE_UPGRADE_IN_PROGRESS"]=276,t[e[277]="UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED"]=277,t[e[278]="UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED"]=278,t[e[279]="CONSENSUS_GAS_EXHAUSTED"]=279,t[e[280]="REVERTED_SUCCESS"]=280,t[e[281]="MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED"]=281,t[e[282]="INVALID_ALIAS_KEY"]=282,t[e[283]="UNEXPECTED_TOKEN_DECIMALS"]=283,t[e[284]="INVALID_PROXY_ACCOUNT_ID"]=284,t[e[285]="INVALID_TRANSFER_ACCOUNT_ID"]=285,t[e[286]="INVALID_FEE_COLLECTOR_ACCOUNT_ID"]=286,t[e[287]="ALIAS_IS_IMMUTABLE"]=287,t[e[288]="SPENDER_ACCOUNT_SAME_AS_OWNER"]=288,t[e[289]="AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY"]=289,t[e[290]="NEGATIVE_ALLOWANCE_AMOUNT"]=290,t[e[291]="CANNOT_APPROVE_FOR_ALL_FUNGIBLE_COMMON"]=291,t[e[292]="SPENDER_DOES_NOT_HAVE_ALLOWANCE"]=292,t[e[293]="AMOUNT_EXCEEDS_ALLOWANCE"]=293,t[e[294]="MAX_ALLOWANCES_EXCEEDED"]=294,t[e[295]="EMPTY_ALLOWANCES"]=295,t[e[296]="SPENDER_ACCOUNT_REPEATED_IN_ALLOWANCES"]=296,t[e[297]="REPEATED_SERIAL_NUMS_IN_NFT_ALLOWANCES"]=297,t[e[298]="FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES"]=298,t[e[299]="NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES"]=299,t[e[300]="PAYER_AND_OWNER_NOT_EQUAL"]=300,t}(),n.ConsensusTopicInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.runningHash=e.bytes();break;case 3:r.sequenceNumber=e.uint64();break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 9:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createTopic"}),Object.defineProperty(e.prototype.updateTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTopic"}),Object.defineProperty(e.prototype.deleteTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteTopic"}),Object.defineProperty(e.prototype.getTopicInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTopicInfo"}),Object.defineProperty(e.prototype.submitMessage=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"submitMessage"}),e}(),n.Query=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyQuery.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDQuery.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalQuery.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoQuery.decode(e,e.uint32());break;case 5:r.contractGetBytecode=s.proto.ContractGetBytecodeQuery.decode(e,e.uint32());break;case 6:r.ContractGetRecords=s.proto.ContractGetRecordsQuery.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceQuery.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsQuery.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoQuery.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashQuery.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersQuery.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsQuery.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoQuery.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptQuery.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordQuery.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordQuery.decode(e,e.uint32());break;case 50:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoQuery.decode(e,e.uint32());break;case 51:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoQuery.decode(e,e.uint32());break;case 52:r.tokenGetInfo=s.proto.TokenGetInfoQuery.decode(e,e.uint32());break;case 53:r.scheduleGetInfo=s.proto.ScheduleGetInfoQuery.decode(e,e.uint32());break;case 54:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosQuery.decode(e,e.uint32());break;case 55:r.tokenGetNftInfo=s.proto.TokenGetNftInfoQuery.decode(e,e.uint32());break;case 56:r.tokenGetNftInfos=s.proto.TokenGetNftInfosQuery.decode(e,e.uint32());break;case 57:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeQuery.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.key=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.EntityID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyResponse=function(){function e(e){if(this.entities=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.entities&&r.entities.length||(r.entities=[]),r.entities.push(s.proto.EntityID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.solidityID=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractLoginfo=function(){function e(e){if(this.topic=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.bloom=e.bytes();break;case 3:r.topic&&r.topic.length||(r.topic=[]),r.topic.push(e.bytes());break;case 4:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractFunctionResult=function(){function e(e){if(this.logInfo=[],this.createdContractIDs=[],this.stateChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.contractCallResult=e.bytes();break;case 3:r.errorMessage=e.string();break;case 4:r.bloom=e.bytes();break;case 5:r.gasUsed=e.uint64();break;case 6:r.logInfo&&r.logInfo.length||(r.logInfo=[]),r.logInfo.push(s.proto.ContractLoginfo.decode(e,e.uint32()));break;case 7:r.createdContractIDs&&r.createdContractIDs.length||(r.createdContractIDs=[]),r.createdContractIDs.push(s.proto.ContractID.decode(e,e.uint32()));break;case 8:r.stateChanges&&r.stateChanges.length||(r.stateChanges=[]),r.stateChanges.push(s.proto.ContractStateChange.decode(e,e.uint32()));break;case 9:r.evmAddress=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.gas=e.int64();break;case 4:r.functionParameters=e.bytes();break;case 5:r.maxResultSize=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.functionResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractStateChange=function(){function e(e){if(this.storageChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.storageChanges&&r.storageChanges.length||(r.storageChanges=[]),r.storageChanges.push(s.proto.StorageChange.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.StorageChange=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.slot=e.bytes();break;case 2:r.valueRead=e.bytes();break;case 3:r.valueWritten=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractInfo=s.proto.ContractGetInfoResponse.ContractInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.ContractInfo=function(){function e(e){if(this.tokenRelationships=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractAccountID=e.string();break;case 4:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 5:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.storage=e.int64();break;case 8:r.memo=e.string();break;case 9:r.balance=e.uint64();break;case 10:r.deleted=e.bool();break;case 11:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.ContractGetBytecodeQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetBytecodeResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 6:r.bytecode=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionRecord=function(){function e(e){if(this.tokenTransferLists=[],this.assessedCustomFees=[],this.automaticTokenAssociations=[],this.cryptoAdjustments=[],this.nftAdjustments=[],this.tokenAdjustments=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 2:r.transactionHash=e.bytes();break;case 3:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 5:r.memo=e.string();break;case 6:r.transactionFee=e.uint64();break;case 7:r.contractCallResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 8:r.contractCreateResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 10:r.transferList=s.proto.TransferList.decode(e,e.uint32());break;case 11:r.tokenTransferLists&&r.tokenTransferLists.length||(r.tokenTransferLists=[]),r.tokenTransferLists.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;case 12:r.scheduleRef=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.assessedCustomFees&&r.assessedCustomFees.length||(r.assessedCustomFees=[]),r.assessedCustomFees.push(s.proto.AssessedCustomFee.decode(e,e.uint32()));break;case 14:r.automaticTokenAssociations&&r.automaticTokenAssociations.length||(r.automaticTokenAssociations=[]),r.automaticTokenAssociations.push(s.proto.TokenAssociation.decode(e,e.uint32()));break;case 15:r.parentConsensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 16:r.alias=e.bytes();break;case 17:r.cryptoAdjustments&&r.cryptoAdjustments.length||(r.cryptoAdjustments=[]),r.cryptoAdjustments.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 18:r.nftAdjustments&&r.nftAdjustments.length||(r.nftAdjustments=[]),r.nftAdjustments.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 19:r.tokenAdjustments&&r.tokenAdjustments.length||(r.tokenAdjustments=[]),r.tokenAdjustments.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionReceipt=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.status=e.int32();break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 5:r.exchangeRate=s.proto.ExchangeRateSet.decode(e,e.uint32());break;case 6:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 7:r.topicSequenceNumber=e.uint64();break;case 8:r.topicRunningHash=e.bytes();break;case 9:r.topicRunningHashVersion=e.uint64();break;case 10:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 11:r.newTotalSupply=e.uint64();break;case 12:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 14:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.hbarEquiv=e.int32();break;case 2:r.centEquiv=e.int32();break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ExchangeRateSet=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentRate=s.proto.ExchangeRate.decode(e,e.uint32());break;case 2:r.nextRate=s.proto.ExchangeRate.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceResponse=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.balance=e.uint64();break;case 4:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountInfo=s.proto.CryptoGetInfoResponse.AccountInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.AccountInfo=function(){function e(e){if(this.liveHashes=[],this.tokenRelationships=[],this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.contractAccountID=e.string();break;case 3:r.deleted=e.bool();break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.proxyReceived=e.int64();break;case 7:r.key=s.proto.Key.decode(e,e.uint32());break;case 8:r.balance=e.uint64();break;case 9:r.generateSendRecordThreshold=e.uint64();break;case 10:r.generateReceiveRecordThreshold=e.uint64();break;case 11:r.receiverSigRequired=e.bool();break;case 12:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 14:r.liveHashes&&r.liveHashes.length||(r.liveHashes=[]),r.liveHashes.push(s.proto.LiveHash.decode(e,e.uint32()));break;case 15:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 16:r.memo=e.string();break;case 17:r.ownedNfts=e.int64();break;case 18:r.maxAutomaticTokenAssociations=e.int32();break;case 19:r.alias=e.bytes();break;case 20:r.ledgerId=e.bytes();break;case 21:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 22:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 23:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),e}(),n.CryptoGetLiveHashQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.hash=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetLiveHashResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ProxyStaker=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AllProxyStakers=function(){function e(e){if(this.proxyStaker=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.proxyStaker&&r.proxyStaker.length||(r.proxyStaker=[]),r.proxyStaker.push(s.proto.ProxyStaker.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.stakers=s.proto.AllProxyStakers.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileContents=s.proto.FileGetContentsResponse.FileContents.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileContents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.FileGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileInfo=s.proto.FileGetInfoResponse.FileInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.size=e.int64();break;case 3:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.deleted=e.bool();break;case 5:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.TransactionGetReceiptQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildReceipts=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetReceiptResponse=function(){function e(e){if(this.duplicateTransactionReceipts=[],this.childTransactionReceipts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 4:r.duplicateTransactionReceipts&&r.duplicateTransactionReceipts.length||(r.duplicateTransactionReceipts=[]),r.duplicateTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;case 5:r.childTransactionReceipts&&r.childTransactionReceipts.length||(r.childTransactionReceipts=[]),r.childTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildRecords=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordResponse=function(){function e(e){if(this.duplicateTransactionRecords=[],this.childTransactionRecords=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;case 4:r.duplicateTransactionRecords&&r.duplicateTransactionRecords.length||(r.duplicateTransactionRecords=[]),r.duplicateTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;case 5:r.childTransactionRecords&&r.childTransactionRecords.length||(r.childTransactionRecords=[]),r.childTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.hapiProtoVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;case 3:r.hederaServicesVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeQuery=function(){function e(e){if(this.transactionIds=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionIds&&r.transactionIds.length||(r.transactionIds=[]),r.transactionIds.push(s.proto.TransactionID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeResponse=function(){function e(e){if(this.executionTimes=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:if(r.executionTimes&&r.executionTimes.length||(r.executionTimes=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenInfo=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.name=e.string();break;case 3:r.symbol=e.string();break;case 4:r.decimals=e.uint32();break;case 5:r.totalSupply=e.uint64();break;case 6:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 12:r.defaultFreezeStatus=e.int32();break;case 13:r.defaultKycStatus=e.int32();break;case 14:r.deleted=e.bool();break;case 15:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 16:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 17:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 18:r.memo=e.string();break;case 19:r.tokenType=e.int32();break;case 20:r.supplyType=e.int32();break;case 21:r.maxSupply=e.int64();break;case 22:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 23:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 24:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;case 25:r.pauseStatus=e.int32();break;case 26:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenInfo=s.proto.TokenInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 2:r.deletionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.executionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.signers=s.proto.KeyList.decode(e,e.uint32());break;case 9:r.creatorAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 10:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.scheduleInfo=s.proto.ScheduleInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.serialNumber=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.nftID=s.proto.NftID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenNftInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nftID=s.proto.NftID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.creationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.metadata=e.bytes();break;case 5:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nft=s.proto.TokenNftInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Response=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyResponse.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDResponse.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalResponse.decode(e,e.uint32());break;case 5:r.contractGetBytecodeResponse=s.proto.ContractGetBytecodeResponse.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoResponse.decode(e,e.uint32());break;case 6:r.contractGetRecordsResponse=s.proto.ContractGetRecordsResponse.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceResponse.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsResponse.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoResponse.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashResponse.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersResponse.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsResponse.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoResponse.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptResponse.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordResponse.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordResponse.decode(e,e.uint32());break;case 150:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoResponse.decode(e,e.uint32());break;case 151:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoResponse.decode(e,e.uint32());break;case 152:r.tokenGetInfo=s.proto.TokenGetInfoResponse.decode(e,e.uint32());break;case 153:r.scheduleGetInfo=s.proto.ScheduleGetInfoResponse.decode(e,e.uint32());break;case 154:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosResponse.decode(e,e.uint32());break;case 155:r.tokenGetNftInfo=s.proto.TokenGetNftInfoResponse.decode(e,e.uint32());break;case 156:r.tokenGetNftInfos=s.proto.TokenGetNftInfosResponse.decode(e,e.uint32());break;case 157:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeResponse.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createAccount"}),Object.defineProperty(e.prototype.updateAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateAccount"}),Object.defineProperty(e.prototype.cryptoTransfer=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoTransfer"}),Object.defineProperty(e.prototype.cryptoDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoDelete"}),Object.defineProperty(e.prototype.approveAllowances=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"approveAllowances"}),Object.defineProperty(e.prototype.adjustAllowance=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"adjustAllowance"}),Object.defineProperty(e.prototype.addLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"addLiveHash"}),Object.defineProperty(e.prototype.deleteLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteLiveHash"}),Object.defineProperty(e.prototype.getLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getLiveHash"}),Object.defineProperty(e.prototype.getAccountRecords=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountRecords"}),Object.defineProperty(e.prototype.cryptoGetBalance=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"cryptoGetBalance"}),Object.defineProperty(e.prototype.getAccountInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountInfo"}),Object.defineProperty(e.prototype.getTransactionReceipts=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTransactionReceipts"}),Object.defineProperty(e.prototype.getFastTransactionRecord=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFastTransactionRecord"}),Object.defineProperty(e.prototype.getTxRecordByTxID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByTxID"}),Object.defineProperty(e.prototype.getStakersByAccountID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getStakersByAccountID"}),e}(),n.FileService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createFile"}),Object.defineProperty(e.prototype.updateFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateFile"}),Object.defineProperty(e.prototype.deleteFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteFile"}),Object.defineProperty(e.prototype.appendContent=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"appendContent"}),Object.defineProperty(e.prototype.getFileContent=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileContent"}),Object.defineProperty(e.prototype.getFileInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileInfo"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.FreezeService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.freeze=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freeze"}),e}(),n.ConsensusTopicQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.consensusStartTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.consensusEndTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.limit=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusTopicResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.runningHash=e.bytes();break;case 4:r.sequenceNumber=e.uint64();break;case 5:r.runningHashVersion=e.uint64();break;case 6:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.MirrorConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.subscribeTopic=function e(t,n){return this.rpcCall(e,s.proto.ConsensusTopicQuery,s.proto.ConsensusTopicResponse,t,n)},"name",{value:"subscribeTopic"}),e}(),n.AddressBookQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileId=s.proto.FileID.decode(e,e.uint32());break;case 2:r.limit=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.MirrorNetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getNodes=function e(t,n){return this.rpcCall(e,s.proto.AddressBookQuery,s.proto.NodeAddress,t,n)},"name",{value:"getNodes"}),e}(),n.NetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getVersionInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getVersionInfo"}),Object.defineProperty(e.prototype.getExecutionTime=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getExecutionTime"}),Object.defineProperty(e.prototype.uncheckedSubmit=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"uncheckedSubmit"}),e}(),n.ScheduleService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createSchedule"}),Object.defineProperty(e.prototype.signSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"signSchedule"}),Object.defineProperty(e.prototype.deleteSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteSchedule"}),Object.defineProperty(e.prototype.getScheduleInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getScheduleInfo"}),e}(),n.SmartContractService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createContract"}),Object.defineProperty(e.prototype.updateContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateContract"}),Object.defineProperty(e.prototype.contractCallMethod=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"contractCallMethod"}),Object.defineProperty(e.prototype.getContractInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getContractInfo"}),Object.defineProperty(e.prototype.contractCallLocalMethod=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"contractCallLocalMethod"}),Object.defineProperty(e.prototype.contractGetBytecode=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"ContractGetBytecode"}),Object.defineProperty(e.prototype.getBySolidityID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getBySolidityID"}),Object.defineProperty(e.prototype.getTxRecordByContractID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByContractID"}),Object.defineProperty(e.prototype.deleteContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteContract"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.ThrottleGroup=function(){function e(e){if(this.operations=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:if(r.operations&&r.operations.length||(r.operations=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.name=e.string();break;case 2:r.burstPeriodMs=e.uint64();break;case 3:r.throttleGroups&&r.throttleGroups.length||(r.throttleGroups=[]),r.throttleGroups.push(s.proto.ThrottleGroup.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ThrottleDefinitions=function(){function e(e){if(this.throttleBuckets=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.throttleBuckets&&r.throttleBuckets.length||(r.throttleBuckets=[]),r.throttleBuckets.push(s.proto.ThrottleBucket.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createToken"}),Object.defineProperty(e.prototype.updateToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateToken"}),Object.defineProperty(e.prototype.mintToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"mintToken"}),Object.defineProperty(e.prototype.burnToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"burnToken"}),Object.defineProperty(e.prototype.deleteToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteToken"}),Object.defineProperty(e.prototype.wipeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"wipeTokenAccount"}),Object.defineProperty(e.prototype.freezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freezeTokenAccount"}),Object.defineProperty(e.prototype.unfreezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unfreezeTokenAccount"}),Object.defineProperty(e.prototype.grantKycToTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"grantKycToTokenAccount"}),Object.defineProperty(e.prototype.revokeKycFromTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"revokeKycFromTokenAccount"}),Object.defineProperty(e.prototype.associateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"associateTokens"}),Object.defineProperty(e.prototype.dissociateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"dissociateTokens"}),Object.defineProperty(e.prototype.updateTokenFeeSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTokenFeeSchedule"}),Object.defineProperty(e.prototype.getTokenInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenInfo"}),Object.defineProperty(e.prototype.getAccountNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountNftInfos"}),Object.defineProperty(e.prototype.getTokenNftInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfo"}),Object.defineProperty(e.prototype.getTokenNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfos"}),Object.defineProperty(e.prototype.pauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"pauseToken"}),Object.defineProperty(e.prototype.unpauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unpauseToken"}),e}(),n.SignedTransaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.bodyBytes=e.bytes();break;case 2:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionList=function(){function e(e){if(this.transactionList=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionList&&r.transactionList.length||(r.transactionList=[]),r.transactionList.push(s.proto.Transaction.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),n.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),n.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n}();t.proto=l;var f=s.google=function(){var e,t={};return t.protobuf=((e={}).DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),e.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),e.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),e.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),e.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),e.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),e.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),e.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),e.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e),t}();t.google=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(75)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(46)),f=r(n(332));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var p=function(e){(0,u.default)(n,e);var t=d(n);function n(e){var r;return(0,o.default)(this,n),(r=t.call(this,"gRPC service failed with status: ".concat(e.toString()))).status=e,r.name="GrpcServiceError",void 0!==Error.captureStackTrace&&Error.captureStackTrace((0,i.default)(r),n),r}return(0,a.default)(n,null,[{key:"_fromResponse",value:function(e){if(null!=e.code&&null!=e.details){var t=new n(f.default._fromValue(e.code));return t.message=e.details,t}return e}}]),n}((0,l.default)(Error));t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r){var a;return(0,o.default)(this,n),(a=t.call(this)).message="query cost of ".concat(e.toString()," HBAR exceeds max set on client: ").concat(r.toString()," HBAR"),a.name="MaxQueryPaymentExceededError",a.queryCost=e,a.maxQueryPayment=r,a}return n}((0,r(n(46)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30)),c=r(n(48)),s=r(n(639));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.storageChanges=t.storageChanges,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){var e=this.storageChanges.map((function(e){return e._toProtobuf()}));return{contractID:this.contractId._toProtobuf(),storageChanges:e}}},{key:"toBytes",value:function(){return u.ContractStateChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:c.default._fromProtobuf(t.contractID),storageChanges:(null!=t.storageChanges?t.storageChanges:[]).map((function(e){return s.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.ContractStateChange.decode(t))}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.slot=t.slot,this.valueRead=t.valueRead,this.valueWritten=t.valueWritten}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{slot:this.slot,valueRead:this.valueRead,valueWritten:null!=this.valueWritten?{value:this.valueWritten}:null}}},{key:"toBytes",value:function(){return u.StorageChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({slot:t.slot,valueRead:t.valueRead,valueWritten:null!=t.valueWritten&&null!=t.valueWritten.value?t.valueWritten.value:null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.StorageChange.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(9)),u=r(n(23)),c=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._accountId,null!=t.accountId&&this.setAccountId(t.accountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId)}return(0,a.default)(e,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?u.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){return{accountId:null!=this._accountId?this._accountId._toProtobuf():void 0,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():void 0}}}],[{key:"_fromProtobuf",value:function(t){return new e({accountId:null!=t.accountId?i.default._fromProtobuf(t.accountId):void 0,tokenId:null!=t.tokenId?u.default._fromProtobuf(t.tokenId):void 0})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=r(n(9)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(341));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var b=function(e){(0,s.default)(r,e);var t,n=y(r);function r(){return(0,u.default)(this,r),n.call(this,(function(e){return d.default.fromString(e)}))}return(0,c.default)(r,null,[{key:"_fromTransaction",value:(t=(0,i.default)(a.default.mark((function e(t){var n,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=new r,o=0;case 2:if(!(o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarApprovals=null!=r.hbarApprovals?r.hbarApprovals:[],e._tokenApprovals=null!=r.tokenApprovals?r.tokenApprovals:[],e._nftApprovals=null!=r.nftApprovals?r.nftApprovals:[],e}return(0,i.default)(n,[{key:"hbarApprovals",get:function(){return this._hbarApprovals}},{key:"addHbarAllowance",value:function(e,t){return this._requireNotFrozen(),this._hbarApprovals.push(new b.default({spenderAccountId:"string"==typeof e?f.default.fromString(e):e,amount:t instanceof y.default?t:new y.default(t),ownerAccountId:null})),this}},{key:"tokenApprovals",get:function(){return this._tokenApprovals}},{key:"addTokenAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._tokenApprovals.push(new m.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof n?h.default.fromNumber(n):n,ownerAccountId:null})),this}},{key:"addTokenNftAllowance",value:function(e,t){this._requireNotFrozen();var n,r="string"==typeof e?p.default.fromString(e):e,o="string"==typeof t?f.default.fromString(t):t,a=!1,i=k(this._nftApprovals);try{for(i.s();!(n=i.n()).done;){var u=n.value;if(0===u.tokenId.compare(r.tokenId)&&0===u.spenderAccountId.compare(o)){null!=u.serialNumbers&&u.serialNumbers.push(r.serial),a=!0;break}}}catch(e){i.e(e)}finally{i.f()}return a||this._nftApprovals.push(new v.default({tokenId:r.tokenId,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:[r.serial],ownerAccountId:null})),this}},{key:"addAllTokenNftAllowance",value:function(e,t){return this._requireNotFrozen(),this._nftApprovals.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:null,ownerAccountId:null})),this}},{key:"_validateChecksums",value:function(e){this._hbarApprovals.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenApprovals.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.approveAllowances(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoApproveAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarApprovals.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenApprovals.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftApprovals.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoApproveAllowance;return l.default._fromProtobufTransactions(new n({hbarApprovals:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),tokenApprovals:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),nftApprovals:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=I,l.TRANSACTION_REGISTRY.set("cryptoApproveAllowance",I._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(23));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(68)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(23));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(68)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(26)),f=r(n(9)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),p=r(n(52)),h=r(n(16)),y=r(n(35));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._key=null,e._initialBalance=null,e._sendRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiveRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=new p.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._accountMemo=null,e._maxAutomaticTokenAssociations=null,null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),e}return(0,i.default)(n,[{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"_validateChecksums",value:function(e){null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.createAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoCreateAccount"}},{key:"_makeTransactionData",value:function(){return{key:null!=this._key?this._key._toProtobufKey():null,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,receiveRecordThreshold:this._receiveRecordThreshold.toTinybars(),sendRecordThreshold:this._sendRecordThreshold.toTinybars(),receiverSigRequired:this._receiverSignatureRequired,memo:this._accountMemo,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?this._maxAutomaticTokenAssociations.toInt():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoCreateAccount;return d.default._fromProtobufTransactions(new n({key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,accountMemo:null!=i.memo?i.memo:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations?i.maxAutomaticTokenAssociations:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=v,d.TRANSACTION_REGISTRY.set("cryptoCreateAccount",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(9)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._transferAccountId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDelete"}},{key:"_makeTransactionData",value:function(){return{deleteAccountID:null!=this._accountId?this._accountId._toProtobuf():null,transferAccountID:null!=this._transferAccountId?this._transferAccountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDelete;return f.default._fromProtobufTransactions(new n({accountId:null!=i.deleteAccountID?l.default._fromProtobuf(i.deleteAccountID):void 0,transferAccountId:null!=i.transferAccountID?l.default._fromProtobuf(i.transferAccountID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("cryptoDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(16)),u=r(n(23)),c=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.symbol=t.symbol,this.balance=t.balance,this.isKycGranted=t.isKycGranted,this.isFrozen=t.isFrozen,this.automaticAssociation=t.automaticAssociation,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),symbol:this.symbol,balance:this.balance,kycStatus:null==this.isKycGranted?0:this.isKycGranted?1:2,freezeStatus:null==this.isFrozen?0:this.isFrozen?1:2,automaticAssociation:this.automaticAssociation}}}],[{key:"_fromProtobuf",value:function(t){var n=u.default._fromProtobuf(t.tokenId),r=null==t.kycStatus||0===t.kycStatus?null:1===t.kycStatus,o=null==t.freezeStatus||0===t.freezeStatus?null:1===t.freezeStatus;return new e({tokenId:n,symbol:t.symbol,balance:null!=t.balance?t.balance instanceof i.default?t.balance:i.default.fromValue(t.balance):i.default.ZERO,isKycGranted:r,isFrozen:o,automaticAssociation:null!=t.automaticAssociation?t.automaticAssociation:null})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),h=r(n(9)),y=r(n(344)),b=r(n(26));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e}return(0,c.default)(r,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetInfo;return Promise.resolve(y.default._fromProtobuf(r.accountInfo))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetInfo:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetInfo;return new r({accountId:null!=t.accountID?h.default._fromProtobuf(t.accountID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("cryptoGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),f=r(n(9)),d=r(n(242));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountRecords(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetAccountRecords.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetAccountRecords.records;return Promise.resolve(r.map((function(e){return d.default._fromProtobuf({transactionRecord:e})})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetAccountRecords:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetAccountRecords;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetAccountRecords",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),f=r(n(9)),d=r(n(346));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getStakersByAccountID(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetProxyStakers.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetProxyStakers.stakers;return Promise.resolve((null!=t.proxyStaker?t.proxyStaker:[]).map((function(e){return d.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetProxyStakers:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetProxyStakers;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetProxyStakers",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=g(n(18)),f=r(n(9)),d=r(n(36)),p=r(n(52)),h=r(n(16)),y=r(n(35)),b=g(n(30)),m=r(n(86));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function g(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var _=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._key=null,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=null,e._expirationTime=null,e._accountMemo=null,e._maxAutomaticTokenAssociations=null,e._aliasKey=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),null!=r.aliasKey&&e.setAliasKey(r.aliasKey),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof Date?d.default.fromDate(e):e,this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"clearAccountMemo",value:function(){return this._requireNotFrozen(),this._accountMemo=null,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"aliasKey",get:function(){return this._aliasKey}},{key:"setAliasKey",value:function(e){return this._requireNotFrozen(),this._aliasKey=e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.updateAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoUpdateAccount"}},{key:"_makeTransactionData",value:function(){return{accountIDToUpdate:null!=this._accountId?this._accountId._toProtobuf():null,key:null!=this._key?this._key._toProtobufKey():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,receiverSigRequiredWrapper:null==this._receiverSignatureRequired?null:{value:this._receiverSignatureRequired},memo:null!=this._accountMemo?{value:this._accountMemo}:null,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?{value:this._maxAutomaticTokenAssociations.toInt()}:null,alias:null!=this._key?b.Key.encode(this._key._toProtobufKey()).finish():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoUpdateAccount,u=null!=i.alias&&i.alias.length>0?y.default._fromProtobufKey(b.Key.decode(i.alias)):void 0;return u instanceof m.default||(u=void 0),l.default._fromProtobufTransactions(new n({accountId:null!=i.accountIDToUpdate?f.default._fromProtobuf(i.accountIDToUpdate):void 0,key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,expirationTime:null!=i.expirationTime?d.default._fromProtobuf(i.expirationTime):void 0,accountMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations&&null!=i.maxAutomaticTokenAssociations.value?h.default.fromNumber(i.maxAutomaticTokenAssociations.value):void 0,aliasKey:u}),e,t,r,o,a)}}]),n}(l.default);t.default=_,l.TRANSACTION_REGISTRY.set("cryptoUpdateAccount",_._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(347)),c=r(n(348)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30)),l=r(n(51)),f=n(112);function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._fileId=null,null!=t.fileId&&this.setFileId(t.fileId),this._limit=null,null!=t.limit&&this.setLimit(t.limit),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return f.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},this._addresses=[],this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0}return(0,i.default)(e,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this._limit=e,this}},{key:"setMaxAttempts",value:function(e){this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this._maxBackoff=e}},{key:"execute",value:function(e,t){var n=this;return new Promise((function(r,o){n._makeServerStreamRequest(e,r,o,t)}))}},{key:"_makeServerStreamRequest",value:function(e,t,n,r){var o=this,a=s.AddressBookQuery.encode({fileId:null!=this._fileId?this._fileId._toProtobuf():null,limit:this._limit}).finish();e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("NetworkService","getNodes",a,(function(e){o._addresses.push(u.default._fromProtobuf(s.NodeAddress.decode(e))),null!=o._limit&&o._limit>0&&(o._limit=o._limit-1)}),(function(a){var i=a instanceof Error?a.message:a.details;if(o._attempt0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._address=null,null!=t.address&&this.setAddress(t.address),this._port=null,null!=t.port&&this.setPort(t.port)}return(0,a.default)(e,[{key:"address",get:function(){return this.address}},{key:"setAddress",value:function(e){return this._address=e,this}},{key:"port",get:function(){return this._port}},{key:"setPort",value:function(e){return this._port=e,this}},{key:"_toProtobuf",value:function(){return{ipAddressV4:null!=this._address?this._address._toProtobuf():null,port:this._port}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{address:null!=this._address?this._address.toString():null,port:null!=this._port?this._port.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({address:null!=t.ipAddressV4?i.default._fromProtobuf(t.ipAddressV4):void 0,port:null!=t.port?t.port:void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(657)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._network=null,null!=t.network&&this.setNetwork(t.network),this._host=null,null!=t.host&&this.setHost(t.host)}return(0,a.default)(e,[{key:"newtork",get:function(){return this._network}},{key:"setNetwork",value:function(e){return this._network=e,this}},{key:"host",get:function(){return this._host}},{key:"setHost",value:function(e){return this._host=e,this}},{key:"_toProtobuf",value:function(){return Uint8Array.of(null!=this._network&&null!=this._network._left?this._network._left:0,null!=this._network&&null!=this._network.right?this._network.right:0,null!=this._host&&null!=this._host.left?this._host.left:0,null!=this._host&&null!=this._host.right?this._host.right:0)}},{key:"toString",value:function(){return null!=this._network&&null!=this._host?"".concat(this._network.toString(),".").concat(this._host.toString()):""}}],[{key:"_fromProtobuf",value:function(t){return new e({network:(new i.default).setLeft(t[0]).setRight(t[1]),host:(new i.default).setLeft(t[2]).setRight(t[3])})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._left=null,null!=t.left&&this.setLeft(t.left),this._right=null,null!=t.right&&this.setRight(t.right)}return(0,a.default)(e,[{key:"left",get:function(){return this._left}},{key:"setLeft",value:function(e){return this._left=e,this}},{key:"right",get:function(){return this._right}},{key:"setRight",value:function(e){return this._right=e,this}},{key:"toString",value:function(){return null!=this._left&&null!=this._right?"".concat(this._left.toString(),".").concat(this._right.toString()):""}}]),e}();t.default=i},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),f=r(n(48));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractGetBytecode(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractGetBytecodeResponse.header}},{key:"_mapResponse",value:function(e){var t=e.contractGetBytecodeResponse;return Promise.resolve(null!=t.bytecode?t.bytecode:new Uint8Array)}},{key:"_onMakeRequest",value:function(e){return{contractGetBytecode:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetBytecode;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("contractGetBytecode",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),f=r(n(48)),d=r(n(191)),p=r(n(244)),h=r(n(16));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e._gas=null,null!=r.gas&&e.setGas(r.gas),e._functionParameters=null,null!=r.functionParameters&&(r.functionParameters instanceof Uint8Array?e.setFunctionParameters(r.functionParameters):e.setFunction(r.functionParameters.name,r.functionParameters.parameters)),e._maxResultSize=null,null!=r.maxResultSize&&e.setMaxResultSize(r.maxResultSize),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._functionParameters=(null!=t?t:new d.default)._build(e),this}},{key:"setMaxResultSize",value:function(e){return this._maxResultSize=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallLocalMethod(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractCallLocal.header}},{key:"_mapResponse",value:function(e){var t=e.contractCallLocal;return Promise.resolve(p.default._fromProtobuf(t.functionResult))}},{key:"_onMakeRequest",value:function(e){return{contractCallLocal:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,maxResultSize:this._maxResultSize,functionParameters:this._functionParameters}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractCallLocal;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0,gas:null!=t.gas?t.gas:void 0,functionParameters:null!=t.functionParameters?t.functionParameters:void 0,maxResultSize:null!=t.maxResultSize?t.maxResultSize:void 0})}}]),n}(l.default);t.default=m,l.QUERY_REGISTRY.set("contractCallLocal",m._fromProtobuf)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.keccak256=void 0;var r,o="0123456789abcdef".split(""),a=[1,256,65536,16777216],i=[0,8,16,24],u=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],c=function(e){var t,n,r,o,a,i,c,s,l,f,d,p,h,y,b,m,v,g,k,_,w,I,A,T,O,E,P,S,R,D,C,N,B,M,j,x,F,U,L,K,G,z,Q,H,V,q,W,Y,Z,J,X,$,ee,te,ne,re,oe,ae,ie,ue,ce,se,le;for(r=0;r<48;r+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],a=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],c=e[3]^e[13]^e[23]^e[33]^e[43],s=e[4]^e[14]^e[24]^e[34]^e[44],l=e[5]^e[15]^e[25]^e[35]^e[45],f=e[6]^e[16]^e[26]^e[36]^e[46],d=e[7]^e[17]^e[27]^e[37]^e[47],t=(p=e[8]^e[18]^e[28]^e[38]^e[48])^(i<<1|c>>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],b=e[1],q=e[11]<<4|e[10]>>>28,W=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,m=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,g=e[25]<<11|e[24]>>>21,k=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,E=e[18]<<20|e[19]>>>12,P=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,K=e[38]<<8|e[39]>>>24,G=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~m&g,e[1]=b^~v&k,e[10]=T^~E&S,e[11]=O^~P&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~q&Y,e[31]=V^~W&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=m^~g&_,e[3]=v^~k&w,e[12]=E^~S&D,e[13]=P^~R&C,e[22]=x^~U&K,e[23]=F^~L&G,e[32]=q^~Y&J,e[33]=W^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=g^~_&I,e[5]=k^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~K&z,e[25]=L^~G&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&b,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=K^~z&M,e[27]=G^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&m,e[9]=A^~b&v,e[18]=N^~T&E,e[19]=B^~O&P,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&q,e[39]=ee^~V&W,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];m%f==0&&(c(p),n=0)}return"0x"+b}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(26)),f=r(n(9)),d=r(n(51)),p=r(n(191)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),y=r(n(16)),b=r(n(52)),m=r(n(35));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._bytecodeFileId=null,e._adminKey=null,e._gas=null,e._initialBalance=null,e._proxyAccountId=null,e._autoRenewPeriod=new b.default(h.DEFAULT_AUTO_RENEW_PERIOD),e._constructorParameters=null,e._contractMemo=null,e._defaultMaxTransactionFee=new l.default(20),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.gas&&e.setGas(r.gas),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.constructorParameters&&e.setConstructorParameters(r.constructorParameters),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof y.default?e:y.default.fromValue(e),this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof b.default?e:new b.default(e),this}},{key:"constructorParameters",get:function(){return this._constructorParameters}},{key:"setConstructorParameters",value:function(e){return this._requireNotFrozen(),this._constructorParameters=e instanceof p.default?e._build():e,this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"_validateChecksums",value:function(e){null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.createContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCreateInstance"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,gas:this._gas,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),constructorParameters:this._constructorParameters,memo:this._contractMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCreateInstance;return h.default._fromProtobufTransactions(new n({bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,adminKey:null!=i.adminKey?m.default._fromProtobufKey(i.adminKey):void 0,gas:null!=i.gas?i.gas:void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,constructorParameters:null!=i.constructorParameters?i.constructorParameters:void 0,contractMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(h.default);t.default=k,h.TRANSACTION_REGISTRY.set("contractCreateInstance",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),f=r(n(48)),d=r(n(9));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._transferAccountId=null,e._transferContractId=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),null!=r.transferContractId&&e.setTransferContractId(r.transferContractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"transferContractId",get:function(){return this._transferContractId}},{key:"setTransferContractId",value:function(e){return this._requireNotFrozen(),this._transferContractId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e),null!=this._transferContractId&&this._transferContractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.deleteContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractDeleteInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,transferAccountID:this._transferAccountId?this._transferAccountId._toProtobuf():null,transferContractID:null!=this._transferContractId?this._transferContractId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractDeleteInstance;return l.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,transferAccountId:null!=i.transferAccountID?d.default._fromProtobuf(i.transferAccountID):void 0,transferContractId:null!=i.transferContractID?f.default._fromProtobuf(i.transferContractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("contractDeleteInstance",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(26)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),d=r(n(48)),p=r(n(191)),h=r(n(16));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._gas=null,e._amount=null,e._functionParameters=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.gas&&e.setGas(r.gas),null!=r.amount&&e.setPayableAmount(r.amount),null!=r.functionParameters?e.setFunctionParameters(r.functionParameters):null!=r.function&&e.setFunction(r.function.name,r.function.parameters),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"payableAmount",get:function(){return this._amount}},{key:"setPayableAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof l.default?e:new l.default(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._requireNotFrozen(),this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._requireNotFrozen(),this._functionParameters=null!=t?t._build(e):(new p.default)._build(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallMethod(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCall"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,amount:null!=this._amount?this._amount.toTinybars():null,functionParameters:this._functionParameters}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCall;return f.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,gas:null!=i.gas?i.gas:void 0,amount:i.amount?i.amount:void 0,functionParameters:null!=i.functionParameters?i.functionParameters:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("contractCall",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),h=r(n(48)),y=r(n(350)),b=r(n(26));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._contractId=null,null!=t.contractId&&e.setContractId(t.contractId),e}return(0,c.default)(r,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.getContractInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.contractGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.contractGetInfo;return Promise.resolve(y.default._fromProtobuf(r.contractInfo))}},{key:"_onMakeRequest",value:function(e){return{contractGetInfo:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetInfo;return new r({contractId:null!=t.contractID?h.default._fromProtobuf(t.contractID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("contractGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(9)),f=r(n(48)),d=r(n(51)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),h=r(n(52)),y=r(n(36)),b=r(n(35));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._expirationTime=null,e._adminKey=null,e._proxyAccountId=null,e._autoRenewPeriod=null,e._bytecodeFileId=null,e._contractMemo=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return console.warn("Deprecated: there is no replacement"),this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"clearContractMemo",value:function(){return this._requireNotFrozen(),this._contractMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.updateContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractUpdateInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,fileID:this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,memoWrapper:null!=this._contractMemo?{value:this._contractMemo}:null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractUpdateInstance,u=void 0;null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds&&(u=i.autoRenewPeriod.seconds);var c=void 0;return null!=i.memoWrapper&&null!=i.memoWrapper.value&&(c=i.memoWrapper.value),p.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,expirationTime:null!=i.expirationTime?y.default._fromProtobuf(i.expirationTime):void 0,adminKey:null!=i.adminKey?b.default._fromProtobufKey(i.adminKey):void 0,proxyAccountId:null!=i.proxyAccountID?l.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:u,contractMemo:c}),e,t,r,o,a)}}]),n}(p.default);t.default=g,p.TRANSACTION_REGISTRY.set("contractUpdateInstance",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(97)),f=r(n(48)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(60));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(e,r,o,i){return(0,a.default)(this,n),t.call(this,e,r,o,i)}return(0,i.default)(n,[{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e}},{key:"_toProtobufKey",value:function(){return{delegatableContractId:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,d.decode(r))}},{key:"fromString",value:function(e){return new n(f.default.fromString(e))}},{key:"_fromProtobuf",value:function(e){return new n(f.default._fromProtobuf(e))}},{key:"fromBytes",value:function(e){return new n(f.default.fromBytes(e))}},{key:"fromSolidityAddress",value:function(e){return new n(f.default.fromSolidityAddress(e))}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(f.default);t.default=y,l.default.delegateContractId=function(e){return y.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(87)),l=r(n(20)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(26)),y=w(n(18)),b=w(n(88)),m=r(n(51)),v=r(n(61)),g=r(n(36)),k=r(n(241));function _(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(_=function(e){return e?n:t})(e)}function w(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function I(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return A(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return A(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._fileId=null,e._contents=null,e._maxChunks=20,e._chunkSize=2048,e._defaultMaxTransactionFee=new h.default(5),null!=t.fileId&&e.setFileId(t.fileId),null!=t.contents&&e.setContents(t.contents),null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._startIndex=0,e._transactionIds=new k.default,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`FileAppendTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?m.default.fromString(e):e.clone(),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:b.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,l.default)((0,p.default)(o.prototype),"freezeWith",this).call(this,e),null==this._contents)return this;var t=Math.floor((this._contents.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Contents with size ".concat(this._contents.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear(),(0,s.default)((0,p.default)(o.prototype),"_nextTransactionIndex",0,this,!0);for(var r=0;rthis._chunkSize)throw new Error("cannot schedule `FileAppendTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,l.default)((0,p.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,s,f,d;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,l.default)((0,p.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,l.default)((0,p.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,s=0;case 9:if(!(se&&(t=e),{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contents:null!=this._contents?this._contents.slice(this._startIndex,t):null}}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){for(var i,u=a[0].fileAppend,c=0;c0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileContent(t)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_mapResponseHeader",value:function(e){return e.fileGetContents.header}},{key:"_mapResponse",value:function(e){var t=e.fileGetContents.fileContents.contents;return Promise.resolve(t)}},{key:"_onMakeRequest",value:function(e){return{fileGetContents:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetContents;return new n({fileId:null!=t.fileID?f.default._fromProtobuf(t.fileID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("fileGetContents",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(26)),f=m(n(18)),d=m(n(88)),p=r(n(36)),h=r(n(35)),y=r(n(108));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._keys=null,e._expirationTime=p.default.fromDate(Date.now()+1e3*f.DEFAULT_AUTO_RENEW_PERIOD.toInt()),e._contents=null,e._fileMemo=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"_execute",value:function(e,t){return e.file.createFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileCreate"}},{key:"_makeTransactionData",value:function(){return{keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:this._expirationTime._toProtobuf(),contents:this._contents,memo:this._fileMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileCreate;return f.default._fromProtobufTransactions(new n({keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=g,f.TRANSACTION_REGISTRY.set("fileCreate",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),f=r(n(51));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.deleteFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("fileDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),h=r(n(51)),y=r(n(351)),b=r(n(26));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._fileId=null,null!=t.fileId&&e.setFileId(t.fileId),e}return(0,c.default)(r,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.fileGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.fileGetInfo;return Promise.resolve(y.default._fromProtobuf(r.fileInfo))}},{key:"_onMakeRequest",value:function(e){return{fileGetInfo:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetInfo;return new r({fileId:null!=t.fileID?h.default._fromProtobuf(t.fileID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("fileGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=m(n(18)),f=r(n(36)),d=m(n(88)),p=r(n(51)),h=r(n(35)),y=r(n(108));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._keys=null,e._expirationTime=null,e._contents=null,e._fileMemo=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof f.default?e:f.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"clearFileMemo",value:function(){return this._requireNotFrozen(),this._fileMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.updateFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileUpdate"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,contents:this._contents,memo:null!=this._fileMemo?{value:this._fileMemo}:null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileUpdate;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?p.default._fromProtobuf(i.fileID):void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?f.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=g,l.TRANSACTION_REGISTRY.set("fileUpdate",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=b(n(18)),f=r(n(36)),d=r(n(51)),p=b(n(60)),h=r(n(674));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._startTime=null,e._startTimestamp=null,e._endTime=null,e._fileId=null,e._fileHash=null,e._freezeType=null,null!=r.startTime&&e.setStartTime(r.startTime.hour,r.startTime.minute),null!=r.endTime&&e.setEndTime(r.endTime.hour,r.endTime.minute),null!=r.startTimestamp&&e.setStartTimestamp(r.startTimestamp),null!=r.updateFileId&&e.setUpdateFileId(r.updateFileId),null!=r.fileId&&e.setFileId(r.fileId),null!=r.fileHash&&e.setFileHash(r.fileHash),null!=r.freezeType&&e.setFreezeType(r.freezeType),e}return(0,i.default)(n,[{key:"startTime",get:function(){return null}},{key:"setStartTime",value:function(e,t){if(this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._startTime={hour:Number(n[0]),minute:Number(n[1])}}else this._startTime={hour:e,minute:t};return this}},{key:"startTimestamp",get:function(){return this._startTimestamp}},{key:"setStartTimestamp",value:function(e){return this._requireNotFrozen(),this._startTimestamp=e,this}},{key:"endTime",get:function(){return console.warn("`FreezeTransaction.endTime` is deprecated"),this._endTime}},{key:"setEndTime",value:function(e,t){if(console.warn("`FreezeTransaction.endTime` is deprecated"),this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._endTime={hour:Number(n[0]),minute:Number(n[1])}}else this._endTime={hour:e,minute:t};return this}},{key:"updateFileId",get:function(){return this.fileId}},{key:"setUpdateFileId",value:function(e){return this.setFileId(e)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e,this}},{key:"fileHash",get:function(){return this._fileHash}},{key:"setFileHash",value:function(e){return this._requireNotFrozen(),this._fileHash="string"==typeof e?p.decode(e):e,this}},{key:"freezeType",get:function(){return this._freezeType}},{key:"setFreezeType",value:function(e){return this._requireNotFrozen(),this._freezeType=e,this}},{key:"_getTransactionDataCase",value:function(){return"freeze"}},{key:"_makeTransactionData",value:function(){return{startTime:null!=this._startTimestamp?this._startTimestamp._toProtobuf():null,updateFile:null!=this._fileId?this._fileId._toProtobuf():null,fileHash:this._fileHash,freezeType:null!=this._freezeType?this._freezeType.valueOf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].freeze;return l.default._fromProtobufTransactions(new n({startTime:null!=i.startHour&&null!=i.startMin?{hour:i.startHour,minute:i.startMin}:void 0,endTime:null!=i.endHour&&null!=i.endMin?{hour:i.endHour,minute:i.endMin}:void 0,startTimestamp:null!=i.startTime?f.default._fromProtobuf(i.startTime):void 0,updateFileId:null!=i.updateFile?d.default._fromProtobuf(i.updateFile):void 0,fileHash:null!=i.fileHash?i.fileHash:void 0,freezeType:null!=i.freezeType?h.default._fromCode(i.freezeType):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=v,l.TRANSACTION_REGISTRY.set("freeze",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.UnknownFreezeType:return"UNKNOWN_FREEZE_TYPE";case e.FreezeOnly:return"FREEZE_ONLY";case e.PrepareUpgrade:return"PREPARE_UPGRADE";case e.FreezeUpgrade:return"FREEZE_UPGRADE";case e.FreezeAbort:return"FREEZE_ABORT";case e.TelemetryUpgrade:return"TELEMETRY_UPGRADE";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromCode",value:function(t){switch(t){case 0:return e.UnknownFreezeType;case 1:return e.FreezeOnly;case 2:return e.PrepareUpgrade;case 3:return e.FreezeUpgrade;case 4:return e.FreezeAbort;case 5:return e.TelemetryUpgrade;default:throw new Error("(BUG) Status.fromCode() does not handle code: ".concat(t))}}}]),e}();t.default=i,i.UnknownFreezeType=new i(0),i.FreezeOnly=new i(1),i.PrepareUpgrade=new i(2),i.FreezeUpgrade=new i(3),i.FreezeAbort=new i(4),i.TelemetryUpgrade=new i(5)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),f=r(n(9)),d=r(n(52)),p=r(n(35)),h=r(n(108));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._keys=null,e._duration=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.keys&&e.setKeys(r.keys),null!=r.duration&&e.setDuration(r.duration),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){return this._requireNotFrozen(),this._keys=e instanceof h.default?e.toArray():e,this}},{key:"duration",get:function(){return this._duration}},{key:"setDuration",value:function(e){return this._requireNotFrozen(),this._duration=e instanceof d.default?e:new d.default(e),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.addLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAddLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHash:{hash:this._hash,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:void 0,duration:null!=this._duration?this._duration._toProtobuf():null,accountId:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAddLiveHash.liveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.hash?i.hash:void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return p.default._fromProtobufKey(e)})):void 0,duration:null!=i.duration&&null!=i.duration.seconds?i.duration.seconds:void 0,accountId:null!=i.accountId?f.default._fromProtobuf(i.accountId):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=m,l.TRANSACTION_REGISTRY.set("cryptoAddLiveHash",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),f=r(n(9));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.deleteLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDeleteLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHashToDelete:this._hash,accountOfLiveHash:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDeleteLiveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.liveHashToDelete?i.liveHashToDelete:void 0,accountId:null!=i.accountOfLiveHash?f.default._fromProtobuf(i.accountOfLiveHash):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("cryptoDeleteLiveHash",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),f=r(n(9)),d=r(n(245));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e._hash=null,null!=r.hash&&e.setHash(r.hash),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"liveHash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._hash=e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getLiveHash(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetLiveHash.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetLiveHash;return Promise.resolve(d.default._fromProtobuf(t.liveHash))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetLiveHash:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,hash:this._hash}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetLiveHash;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,hash:null!=t.hash?t.hash:void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetLiveHash",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),f=r(n(352));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){return(0,a.default)(this,n),t.call(this)}return(0,i.default)(n,[{key:"_execute",value:function(e,t){return e.network.getVersionInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.networkGetVersionInfo.header}},{key:"_mapResponse",value:function(e){var t=e.networkGetVersionInfo;return Promise.resolve(f.default._fromProtobuf(t))}},{key:"_onMakeRequest",value:function(e){return{networkGetVersionInfo:{header:e}}}}],[{key:"_fromProtobuf",value:function(e){return new n}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("networkGetVersionInfo",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(9)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),d=r(n(35));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._scheduledTransaction=null,e._payerAccountId=null,e._scheduleMemo=null,e._scheduledSignerPublicKeys=new Set,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.payerAccountID&&e.setPayerAccountId(r.payerAccountID),null!=r.scheduleMemo&&e.setScheduleMemo(r.scheduleMemo),e}return(0,i.default)(n,[{key:"_setScheduledTransaction",value:function(e){return this._scheduledTransaction=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"payerAccountId",get:function(){return this._payerAccountId}},{key:"setPayerAccountId",value:function(e){return this._requireNotFrozen(),this._payerAccountId=e,this}},{key:"setScheduleMemo",value:function(e){return this._requireNotFrozen(),this._scheduleMemo=e,this}},{key:"getScheduleMemo",get:function(){return this._requireNotFrozen(),this._scheduleMemo}},{key:"setScheduledTransaction",value:function(e){return this._requireNotFrozen(),e._requireNotFrozen(),this._scheduledTransaction=e.schedule()._scheduledTransaction,this}},{key:"_validateChecksums",value:function(e){null!=this._payerAccountId&&this._payerAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.createSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleCreate"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,payerAccountID:null!=this._payerAccountId?this._payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this._scheduledTransaction?this._scheduledTransaction._getScheduledTransactionBody():null,memo:this._scheduleMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleCreate;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?d.default._fromProtobufKey(i.adminKey):void 0,payerAccountID:null!=i.payerAccountID?l.default._fromProtobuf(i.payerAccountID):void 0,scheduleMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("scheduleCreate",y._fromProtobuf),f.SCHEDULE_CREATE_TRANSACTION.push((function(){return new y}))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(113)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.deleteSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleDelete"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleDelete;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("scheduleDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),h=r(n(113)),y=r(n(354)),b=r(n(26));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._scheduleId=null,null!=t.scheduleId&&e.setScheduleId(t.scheduleId),e}return(0,c.default)(r,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._scheduleId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.getScheduleInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.scheduleGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.scheduleGetInfo;return Promise.resolve(y.default._fromProtobuf(r.scheduleInfo))}},{key:"_onMakeRequest",value:function(e){return{scheduleGetInfo:{header:e,scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.scheduleGetInfo;return new r({scheduleId:null!=t.scheduleID?h.default._fromProtobuf(t.scheduleID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("scheduleGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(113)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.signSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleSign"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleSign;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("scheduleSign",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),f=r(n(51)),d=r(n(48)),p=r(n(36));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,e._expirationTime=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e,this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemDelete(t):e.smartContract.systemDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=b,l.TRANSACTION_REGISTRY.set("systemDelete",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),f=r(n(51)),d=r(n(48));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemUndelete(t):e.smartContract.systemUndelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemUndelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemUndelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("systemUndelete",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(26)),f=r(n(23)),d=r(n(9)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.associateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenAssociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenAssociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenAssociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),d=r(n(16));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._serials=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return e instanceof d.default?e:d.default.fromValue(e)})),this}},{key:"_execute",value:function(e,t){return e.token.burnToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenBurn"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,serialNumbers:this._serials,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenBurn;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,serials:null!=i.serialNumbers?i.serialNumbers:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("tokenBurn",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(20)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=r(n(26)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),p=r(n(16)),h=r(n(9)),y=r(n(36)),b=r(n(52)),m=r(n(163)),v=r(n(193)),g=r(n(194)),k=r(n(246)),_=r(n(247)),w=r(n(35));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var T=function(e){(0,c.default)(n,e);var t=A(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenName=null,e._tokenSymbol=null,e._decimals=null,e._initialSupply=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._pauseKey=null,e._wipeKey=null,e._supplyKey=null,e._feeScheduleKey=null,e._freezeDefault=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=new b.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._tokenMemo=null,e._customFees=[],e._tokenType=null,e._supplyType=null,e._maxSupply=null,e._defaultMaxTransactionFee=new f.default(30),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.decimals&&e.setDecimals(r.decimals),null!=r.initialSupply&&e.setInitialSupply(r.initialSupply),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.freezeDefault&&e.setFreezeDefault(r.freezeDefault),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.customFees&&e.setCustomFees(r.customFees),null!=r.tokenType&&e.setTokenType(r.tokenType),null!=r.supplyType&&e.setSupplyType(r.supplyType),null!=r.maxSupply&&e.setMaxSupply(r.maxSupply),e}return(0,i.default)(n,[{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"decimals",get:function(){return this._decimals}},{key:"setDecimals",value:function(e){return this._requireNotFrozen(),this._decimals=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"initialSupply",get:function(){return this._initialSupply}},{key:"setInitialSupply",value:function(e){return this._requireNotFrozen(),this._initialSupply=p.default.fromValue(e),this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"freezeDefault",get:function(){return this._freezeDefault}},{key:"setFreezeDefault",value:function(e){return this._requireNotFrozen(),this._freezeDefault=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=null,this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof h.default?e:h.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof b.default?e:new b.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._customFees=e,this}},{key:"tokenType",get:function(){return this._tokenType}},{key:"setTokenType",value:function(e){return this._tokenType=e,this}},{key:"supplyType",get:function(){return this._supplyType}},{key:"setSupplyType",value:function(e){return this._supplyType=e,this}},{key:"maxSupply",get:function(){return this._maxSupply}},{key:"setMaxSupply",value:function(e){return this._maxSupply="number"==typeof e?p.default.fromNumber(e):e,this}},{key:"freezeWith",value:function(e){return null!=this._autoRenewPeriod&&null!=e&&e.operatorAccountId&&(this._autoRenewAccountId=e.operatorAccountId),(0,u.default)((0,l.default)(n.prototype),"freezeWith",this).call(this,e)}},{key:"_validateChecksums",value:function(e){null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.createToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenCreation"}},{key:"_makeTransactionData",value:function(){return{name:this._tokenName,symbol:this._tokenSymbol,decimals:null!=this._decimals?this._decimals.toInt():null,initialSupply:this._initialSupply,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,pauseKey:null!=this._pauseKey?this._pauseKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null,freezeDefault:this._freezeDefault,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:this._tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this._tokenType?this._tokenType._code:null,supplyType:null!=this._supplyType?this._supplyType._code:null,maxSupply:this.maxSupply}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenCreation;return d.default._fromProtobufTransactions(new n({tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,decimals:null!=i.decimals?i.decimals:void 0,initialSupply:null!=i.initialSupply?i.initialSupply:void 0,treasuryAccountId:null!=i.treasury?h.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?w.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?w.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?w.default._fromProtobufKey(i.freezeKey):void 0,pauseKey:null!=i.pauseKey?w.default._fromProtobufKey(i.pauseKey):void 0,wipeKey:null!=i.wipeKey?w.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?w.default._fromProtobufKey(i.supplyKey):void 0,feeScheduleKey:null!=i.feeScheduleKey?w.default._fromProtobufKey(i.feeScheduleKey):void 0,freezeDefault:null!=i.freezeDefault?i.freezeDefault:void 0,autoRenewAccountId:null!=i.autoRenewAccount?h.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?y.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?b.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo?i.memo:void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?m.default._fromProtobuf(e):null!=e.fractionalFee?v.default._fromProtobuf(e):g.default._fromProtobuf(e)})):void 0,tokenType:null!=i.tokenType?k.default._fromCode(i.tokenType):void 0,supplyType:null!=i.supplyType?_.default._fromCode(i.supplyType):void 0,maxSupply:null!=i.maxSupply?i.maxSupply:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=T,d.TRANSACTION_REGISTRY.set("tokenCreation",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.deleteToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDeletion"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDeletion;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenDeletion",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(26)),f=r(n(23)),d=r(n(9)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.dissociateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDissociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDissociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenDissociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),d=r(n(163)),p=r(n(193)),h=r(n(194));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._customFees=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.customFees&&e.setCustomFees(r.customFees),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):l.default._fromProtobuf(e._toProtobuf()),this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._requireNotFrozen(),this._customFees=e,this}},{key:"_execute",value:function(e,t){return e.token.updateTokenFeeSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFeeScheduleUpdate"}},{key:"_makeTransactionData",value:function(){return{tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,customFees:this._customFees.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFeeScheduleUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.tokenId?l.default._fromProtobuf(i.tokenId):void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?d.default._fromProtobuf(e):null!=e.fractionalFee?p.default._fromProtobuf(e):h.default._fromProtobuf(e)})):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("tokenFeeScheduleUpdate",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=r(n(9)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.freezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenFreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=r(n(9)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.grantKycToTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenGrantKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenGrantKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenGrantKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),h=r(n(23)),y=r(n(355)),b=r(n(26));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e}return(0,c.default)(r,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.getTokenInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.tokenGetInfo;return Promise.resolve(y.default._fromProtobuf(r.tokenInfo))}},{key:"_onMakeRequest",value:function(e){return{tokenGetInfo:{header:e,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.tokenGetInfo;return new r({tokenId:null!=t.token?h.default._fromProtobuf(t.token):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("tokenGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=y(n(18)),d=r(n(16)),p=y(n(60));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._metadata=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.metadata&&e.setMetadata(r.metadata),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"metadata",get:function(){return this._metadata}},{key:"addMetadata",value:function(e){return this._requireNotFrozen(),"string"==typeof e&&console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead."),this._metadata.push("string"==typeof e?p.decode(e):e),this}},{key:"setMetadata",value:function(e){this._requireNotFrozen();var t,n=b(e);try{for(n.s();!(t=n.n()).done;){if("string"==typeof t.value){console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead.");break}}}catch(e){n.e(e)}finally{n.f()}return this._metadata=e.map((function(e){return"string"==typeof e?p.decode(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.mintToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenMint"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,metadata:this._metadata}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenMint;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,metadata:null!=i.metadata?i.metadata:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=g,f.TRANSACTION_REGISTRY.set("tokenMint",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=k(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),h=r(n(138)),y=r(n(9)),b=r(n(23)),m=r(n(356)),v=r(n(26)),g=r(n(16));function k(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(k=function(e){return e?n:t})(e)}function _(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var w=function(e){(0,l.default)(r,e);var t,n=_(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._nftId=null,null!=t.nftId&&e.setNftId(t.nftId),e._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e._start=null,null!=t.start&&e.setStart(t.start),e._end=null,null!=t.end&&e.setEnd(t.end),e}return(0,c.default)(r,[{key:"nftId",get:function(){return this._nftId}},{key:"setNftId",value:function(e){return this._nftId="string"==typeof e?h.default.fromString(e):h.default._fromProtobuf(e._toProtobuf()),this}},{key:"accountId",get:function(){return console.warn("`TokenNftInfoQuery.accountId` is deprecated with no replacement"),this._accountId}},{key:"setAccountId",value:function(e){return console.warn("`TokenNftInfoQuery.setAccountId()` is deprecated with no replacement"),this._accountId="string"==typeof e?y.default.fromString(e):y.default._fromProtobuf(e._toProtobuf()),this}},{key:"tokenId",get:function(){return console.warn("`TokenNftInfoQuery.tokenId` is deprecated with no replacement"),this._tokenId}},{key:"setTokenId",value:function(e){return console.warn("`TokenNftInfoQuery.setTokenId()` is deprecated with no replacement"),this._tokenId="string"==typeof e?b.default.fromString(e):b.default._fromProtobuf(e._toProtobuf()),this}},{key:"start",get:function(){return console.warn("`TokenNftInfoQuery.start` is deprecated with no replacement"),this._start}},{key:"setStart",value:function(e){return console.warn("`TokenNftInfoQuery.setStart()` is deprecated with no replacement"),this._start="number"==typeof e?g.default.fromNumber(e):e,this}},{key:"end",get:function(){return console.warn("`TokenNftInfoQuery.end` is deprecated with no replacement"),this._end}},{key:"setEnd",value:function(e){return console.warn("`TokenNftInfoQuery.setEnd()` is deprecated with no replacement"),this._end="number"==typeof e?g.default.fromNumber(e):e,this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",v.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_execute",value:function(e,t){return e.token.getTokenNftInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetNftInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=[e.tokenGetNftInfo.nft];return Promise.resolve(r.map((function(e){return m.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{tokenGetNftInfo:{header:e,nftID:null!=this._nftId?this._nftId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){if(null!=e.tokenGetNftInfo){var t=e.tokenGetNftInfo;return new r({nftId:null!=t.nftID?h.default._fromProtobuf(t.nftID):void 0})}if(null!=e.tokenGetAccountNftInfos){var n=e.tokenGetAccountNftInfos;return new r({accountId:null!=n.accountID?y.default._fromProtobuf(n.accountID):void 0,start:null!=n.start?n.start:void 0,end:null!=n.end?n.end:void 0})}var o=e.tokenGetNftInfos;return new r({tokenId:null!=o.tokenID?b.default._fromProtobuf(o.tokenID):void 0,start:null!=o.start?o.start:void 0,end:null!=o.end?o.end:void 0})}}]),r}(p.default);t.default=w,p.QUERY_REGISTRY.set("tokenGetNftInfo",w._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.pauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenPause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenPause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenPause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=r(n(9)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.revokeKycFromTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenRevokeKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenRevokeKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenRevokeKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=r(n(9)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unfreezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnfreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnfreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenUnfreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unpauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnpause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnpause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenUnpause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),d=r(n(9)),p=r(n(36)),h=r(n(52)),y=r(n(35));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._tokenName=null,e._tokenSymbol=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._wipeKey=null,e._supplyKey=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=null,e._tokenMemo=null,e._feeScheduleKey=null,e._pauseKey=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"setsupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"clearTokenMemo",value:function(){return this._requireNotFrozen(),this._tokenMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.updateToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUpdate"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,name:this.tokenName,symbol:this.tokenSymbol,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:null!=this._tokenMemo?{value:this._tokenMemo}:null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,treasuryAccountId:null!=i.treasury?d.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?y.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?y.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?y.default._fromProtobufKey(i.freezeKey):void 0,wipeKey:null!=i.wipeKey?y.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?y.default._fromProtobufKey(i.supplyKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?d.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?p.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?h.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,feeScheduleKey:null!=i.feeScheduleKey?y.default._fromProtobufKey(i.feeScheduleKey):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=v,f.TRANSACTION_REGISTRY.set("tokenUpdate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(23)),f=r(n(9)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),p=r(n(16));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,e._serials=[],e._amount=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return"number"==typeof e?p.default.fromNumber(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.wipeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenWipe"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null,serialNumbers:this.serials}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenWipe;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0,amount:null!=i.amount?i.amount:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=b,d.TRANSACTION_REGISTRY.set("tokenWipe",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(9)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),d=r(n(52)),p=r(n(35));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._submitKey=null,e._autoRenewAccountId=null,e._autoRenewPeriod=new d.default(f.DEFAULT_AUTO_RENEW_PERIOD),e._topicMemo=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.submitKey&&e.setSubmitKey(r.submitKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e}return(0,i.default)(n,[{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof l.default?e:l.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof d.default?e:new d.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.createTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusCreateTopic"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),memo:this._topicMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusCreateTopic;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?p.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?p.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?l.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=b,f.TRANSACTION_REGISTRY.set("consensusCreateTopic",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),f=r(n(98));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.deleteTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusDeleteTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusDeleteTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?f.default._fromProtobuf(i.topicID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("consensusDeleteTopic",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(43)),h=r(n(98)),y=r(n(357)),b=r(n(26));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e}return(0,c.default)(r,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._topicId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.getTopicInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.consensusGetTopicInfo.header}},{key:"_mapResponse",value:function(e,t,n){return Promise.resolve(y.default._fromProtobuf(e.consensusGetTopicInfo))}},{key:"_onMakeRequest",value:function(e){return{consensusGetTopicInfo:{header:e,topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.consensusGetTopicInfo;return new r({topicId:null!=t.topicID?h.default._fromProtobuf(t.topicID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("consensusGetTopicInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(61)),c=r(n(706)),s=r(n(358)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(30)),f=r(n(98)),d=r(n(16)),p=r(n(36)),h=n(112);function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var b=function(){function e(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._topicId=null,null!=n.topicId&&this.setTopicId(n.topicId),this._startTime=null,null!=n.startTime&&this.setStartTime(n.startTime),this._endTime=null,null!=n.endTime&&this.setEndTime(n.endTime),this._limit=null,null!=n.limit&&this.setLimit(n.limit),this._errorHandler=function(e,n){console.error("Error attempting to subscribe to topic: ".concat(null!=t._topicId?t._topicId.toString():""))},null!=n.errorHandler&&(this._errorHandler=n.errorHandler),this._listener=null,this._completionHandler=function(){console.log("Subscription to topic ".concat(null!=t._topicId?t._topicId.toString():""," complete"))},null!=n.completionHandler&&(this._completionHandler=n.completionHandler),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return h.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},null!=n.retryHandler&&(this._retryHandler=n.retryHandler),this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0,this._handle=null}return(0,i.default)(e,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this.requireNotSubscribed(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"startTime",get:function(){return this._startTime}},{key:"setStartTime",value:function(e){return this.requireNotSubscribed(),this._startTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"endTime",get:function(){return this._endTime}},{key:"setEndTime",value:function(e){return this.requireNotSubscribed(),this._endTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this.requireNotSubscribed(),this._limit=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"setErrorHandler",value:function(e){return this._errorHandler=e,this}},{key:"setCompletionHandler",value:function(e){return this.requireNotSubscribed(),this._completionHandler=e,this}},{key:"setMaxAttempts",value:function(e){this.requireNotSubscribed(),this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this.requireNotSubscribed(),this._maxBackoff=e}},{key:"subscribe",value:function(e,t,n){return this._handle=new c.default,this._listener=n,null!=t&&(this._errorHandler=t),this._makeServerStreamRequest(e),this._handle}},{key:"_makeServerStreamRequest",value:function(e){var t=this,n=new Map,r=l.ConsensusTopicQuery.encode({topicID:null!=this._topicId?this._topicId._toProtobuf():null,consensusStartTime:null!=this._startTime?this._startTime._toProtobuf():null,consensusEndTime:null!=this._endTime?this._endTime._toProtobuf():null,limit:this._limit}).finish(),o=e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("ConsensusService","subscribeTopic",r,(function(e){var r=l.ConsensusTopicResponse.decode(e);if(null!=t._limit&&t._limit.gt(0)&&(t._limit=t._limit.sub(1)),t._startTime=p.default._fromProtobuf(r.consensusTimestamp).plusNanos(1),null==r.chunkInfo||null!=r.chunkInfo&&1===r.chunkInfo.total)t._passTopicMessage(s.default._ofSingle(r));else{var o=r.chunkInfo,a=o.initialTransactionID,i=o.total,c=u.default._fromProtobuf(a).toString(),f=[],d=n.get(c);if(null==d?n.set(c,f):f=d,f.push(r),f.length===i){var h=s.default._ofMany(f);n.delete(c),t._passTopicMessage(h)}}}),(function(n){var r=n instanceof Error?n.message:n.details;if(t._attempt=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e._message=null,null!=t.message&&e.setMessage(t.message),e._maxChunks=20,e._chunkSize=h.CHUNK_SIZE,null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._chunkInfo=null,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`TopicMessageSubmitTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?y.default.fromString(e):e.clone(),this}},{key:"message",get:function(){return this._message}},{key:"setMessage",value:function(e){return this._requireNotFrozen(),e=g.requireStringOrUint8Array(e),this._message=e instanceof Uint8Array?e:b.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,l.default)((0,p.default)(o.prototype),"freezeWith",this).call(this,e),null==this._message)return this;var t=Math.floor((this._message.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Message with size ".concat(this._message.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId._toProtobuf(),r=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear(),(0,s.default)((0,p.default)(o.prototype),"_nextTransactionIndex",0,this,!0);for(var a=0;athis._chunkSize)throw new Error("cannot schedule `TopicMessageSubmitTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,l.default)((0,p.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,s,f;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,l.default)((0,p.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,l.default)((0,p.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,s=0;case 9:if(!(sthis._message.length&&(t=this._message.length),{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message.slice(e,t),chunkInfo:this._chunkInfo}}return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message}}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){var i=a[0].consensusSubmitMessage;return h.default._fromProtobufTransactions(new o({topicId:null!=i.topicID?y.default._fromProtobuf(i.topicID):void 0,message:null!=i.message?i.message:void 0}),e,t,n,r,a)}}]),o}(h.default);t.default=T,h.TRANSACTION_REGISTRY.set("consensusSubmitMessage",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),f=r(n(9)),d=r(n(98)),p=r(n(52)),h=r(n(35));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e._topicMemo=null,null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e._submitKey=null,null!=r.submitKey&&e.setSubmitKey(r.submitKey),e._adminKey=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),e._autoRenewAccountId=null,null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),e._autoRenewPeriod=null,null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"clearTopicId",value:function(){return this._requireNotFrozen(),this._topicId=null,this}},{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"clearTopicMemo",value:function(){return this._requireNotFrozen(),this._topicMemo=null,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"clearAdminKey",value:function(){return this._requireNotFrozen(),this._adminKey=null,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"clearSubmitKey",value:function(){return this._requireNotFrozen(),this._submitKey=null,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"clearAutoRenewAccountId",value:function(){return this._requireNotFrozen(),this._autoRenewAccountId=null,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.updateTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusUpdateTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,memo:null!=this._topicMemo?{value:this._topicMemo}:null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusUpdateTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?d.default._fromProtobuf(i.topicID):void 0,adminKey:null!=i.adminKey?h.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?h.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?f.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=m,l.TRANSACTION_REGISTRY.set("consensusUpdateTopic",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(26)),f=r(n(23)),d=r(n(9)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(18)),h=r(n(16)),y=r(n(710)),b=r(n(243)),m=r(n(340)),v=r(n(336)),g=r(n(711)),k=r(n(338)),_=r(n(337)),w=r(n(712)),I=r(n(138));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,n),(e=t.call(this))._tokenTransfers=[],e._hbarTransfers=[],e._nftTransfers=[],e._defaultMaxTransactionFee=new l.default(1);var o,i=T(null!=r.tokenTransfers?r.tokenTransfers:[]);try{for(i.s();!(o=i.n()).done;){var u=o.value;e.addTokenTransfer(u.tokenId,u.accountId,u.amount)}}catch(e){i.e(e)}finally{i.f()}var c,s=T(null!=r.hbarTransfers?r.hbarTransfers:[]);try{for(s.s();!(c=s.n()).done;){var f=c.value;e.addHbarTransfer(f.accountId,f.amount)}}catch(e){s.e(e)}finally{s.f()}var d,p=T(null!=r.nftTransfers?r.nftTransfers:[]);try{for(p.s();!(d=p.n()).done;){var h=d.value;e.addNftTransfer(h.tokenId,h.serial,h.sender,h.recipient)}}catch(e){p.e(e)}finally{p.f()}return e}return(0,i.default)(n,[{key:"tokenTransfers",get:function(){var e,t=new v.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId);null!=o?o._set(r.accountId,r.amount):((o=new _.default)._set(r.accountId,r.amount),t._set(r.tokenId,o))}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addTokenTransfer",value:function(e,t,n){this._requireNotFrozen();var r,o=e instanceof f.default?e:f.default.fromString(e),a=t instanceof d.default?t:d.default.fromString(t),i=n instanceof h.default?n:h.default.fromNumber(n),u=T(this._tokenTransfers);try{for(u.s();!(r=u.n()).done;){var c=r.value;if(0===c.tokenId.compare(o)&&0===c.accountId.compare(a))return c.amount=c.amount.add(i),c.expectedDecimals=null,this}}catch(e){u.e(e)}finally{u.f()}return this._tokenTransfers.push(new m.default({tokenId:e,accountId:t,expectedDecimals:null,amount:n,isApproved:!1})),this}},{key:"addTokenTransferWithDecimals",value:function(e,t,n,r){this._requireNotFrozen();var o,a=e instanceof f.default?e:f.default.fromString(e),i=t instanceof d.default?t:d.default.fromString(t),u=n instanceof h.default?n:h.default.fromNumber(n),c=!1,s=T(this._tokenTransfers);try{for(s.s();!(o=s.n()).done;){var l=o.value;if(0===l.tokenId.compare(a)){if(null!=l.expectedDecimals&&l.expectedDecimals!==r)throw new Error("expected decimals mis-match");l.expectedDecimals=r,0===l.accountId.compare(i)&&(l.amount=l.amount.add(u),l.expectedDecimals=r,c=!0)}}}catch(e){s.e(e)}finally{s.f()}return c||this._tokenTransfers.push(new m.default({tokenId:e,accountId:t,expectedDecimals:r,amount:n,isApproved:!1})),this}},{key:"tokenIdDecimals",get:function(){var e,t=new y.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.tokenId,r.expectedDecimals)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"hbarTransfers",get:function(){var e,t=new g.default,n=T(this._hbarTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.accountId,r.amount)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addHbarTransfer",value:function(e,t){this._requireNotFrozen();var n,r=e instanceof d.default?e:d.default.fromString(e),o=t instanceof l.default?t:new l.default(t),a=T(this._hbarTransfers);try{for(a.s();!(n=a.n()).done;){var i=n.value;if(0===i.accountId.compare(r))return i.amount=l.default.fromTinybars(i.amount.toTinybars().add(o.toTinybars())),this}}catch(e){a.e(e)}finally{a.f()}return this._hbarTransfers.push(new b.default({accountId:r,amount:o,isApproved:!1})),this}},{key:"_validateChecksums",value:function(e){var t,n=T(this._hbarTransfers);try{for(n.s();!(t=n.n()).done;){t.value.accountId.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}var r,o=T(this._tokenTransfers);try{for(o.s();!(r=o.n()).done;){var a=r.value;a.tokenId.validateChecksum(e),a.accountId.validateChecksum(e)}}catch(e){o.e(e)}finally{o.f()}var i,u=T(this._nftTransfers);try{for(u.s();!(i=u.n()).done;){var c=i.value;c.tokenId.validateChecksum(e),c.senderAccountId.validateChecksum(e),c.receiverAccountId.validateChecksum(e)}}catch(e){u.e(e)}finally{u.f()}}},{key:"nftTransfers",get:function(){var e,t=new k.default,n=T(this._nftTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId),a={sender:r.senderAccountId,recipient:r.receiverAccountId,serial:r.serialNumber,isApproved:r.isApproved};null!=o?o.push(a):t._set(r.tokenId,[a])}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addNftTransfer",value:function(e,t,n,r){var o,a,i;if(this._requireNotFrozen(),e instanceof I.default)o=e,a="string"==typeof t?d.default.fromString(t):t,i="string"==typeof n?d.default.fromString(n):n;else if(e instanceof f.default)o=new I.default(e,t),a="string"==typeof n?d.default.fromString(n):n,i="string"==typeof r?d.default.fromString(r):r;else try{o=I.default.fromString(e),a="string"==typeof t?d.default.fromString(t):t,i="string"==typeof n?d.default.fromString(n):n}catch(c){var u=f.default.fromString(e);o=new I.default(u,t),a="string"==typeof n?d.default.fromString(n):n,i="string"==typeof r?d.default.fromString(r):r}var c,s=T(this._nftTransfers);try{for(s.s();!(c=s.n()).done;){var l=c.value;if(0===l.tokenId.compare(o.tokenId)&&0===l.serialNumber.compare(o.serial))return l.senderAccountId=a,l.receiverAccountId=i,this}}catch(e){s.e(e)}finally{s.f()}return this._nftTransfers.push(new w.default({tokenId:o.tokenId,serialNumber:o.serial,senderAccountId:a,receiverAccountId:i,isApproved:!1})),this}},{key:"setHbarTransferApproval",value:function(e,t){var n,r="string"==typeof e?d.default.fromString(e):e,o=T(this._hbarTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.accountId.compare(r)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"setTokenTransferApproval",value:function(e,t,n){var r,o="string"==typeof e?f.default.fromString(e):e,a="string"==typeof t?d.default.fromString(t):t,i=T(this._tokenTransfers);try{for(i.s();!(r=i.n()).done;){var u=r.value;0===u.tokenId.compare(o)&&0===u.accountId.compare(a)&&(u.isApproved=n)}}catch(e){i.e(e)}finally{i.f()}return this}},{key:"setNftTransferApproval",value:function(e,t){var n,r="string"==typeof e?I.default.fromString(e):e,o=T(this._nftTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.tokenId.compare(r.tokenId)&&0===a.serialNumber.compare(r.serial)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"_execute",value:function(e,t){return e.crypto.cryptoTransfer(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoTransfer"}},{key:"_makeTransactionData",value:function(){var e=[];this._tokenTransfers.sort((function(e,t){var n=e.tokenId.compare(t.tokenId);return 0!==n?n:e.accountId.compare(t.accountId)})),this._nftTransfers.sort((function(e,t){var n=e.senderAccountId.compare(t.senderAccountId);if(0!=n)return n;var r=e.receiverAccountId.compare(t.receiverAccountId);return 0!=r?r:e.serialNumber.compare(t.serialNumber)}));for(var t=0,n=0;t0?e[e.length-1]:null,i=null!=a?a.tokenId:null;if(null!=a&&null!=i&&0===i.compare(r)){a.transfers.push(this._tokenTransfers[t++]);continue}if(null!=a&&null!=i&&0===i.compare(o)){a.nftTransfers.push(this._nftTransfers[n++]);continue}var u=r.compare(o);0===u?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[this._nftTransfers[n++]]}):u<=0?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]}):e.push({tokenId:r,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}else if(t0?e[e.length-1]:null,l=null!=s?s.tokenId:null;if(null!=s&&null!=l&&0===l.compare(c)){s.transfers.push(this._tokenTransfers[t++]);continue}e.push({tokenId:c,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]})}else if(n0?e[e.length-1]:null,p=null!=d?d.tokenId:null;if(null!=d&&null!=p&&0===p.compare(f)){d.nftTransfers.push(this._nftTransfers[n++]);continue}e.push({tokenId:f,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}return this._hbarTransfers.sort((function(e,t){return e.accountId.compare(t.accountId)})),{transfers:{accountAmounts:this._hbarTransfers.map((function(e){return{accountID:e.accountId._toProtobuf(),amount:e.amount.toTinybars(),isApproval:e.isApproved}}))},tokenTransfers:e.map((function(e){return{token:e.tokenId._toProtobuf(),expectedDecimals:null!=e.expectedDecimals?{value:e.expectedDecimals}:null,transfers:e.transfers.map((function(e){return e._toProtobuf()})),nftTransfers:e.nftTransfers.map((function(e){return e._toProtobuf()}))}}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoTransfer,u=new n;return u._tokenTransfers=m.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),u._hbarTransfers=b.default._fromProtobuf(null!=i.transfers&&null!=i.transfers.accountAmounts?i.transfers.accountAmounts:[]),u._nftTransfers=w.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),p.default._fromProtobufTransactions(u,e,t,r,o,a)}}]),n}(p.default);t.default=P,p.TRANSACTION_REGISTRY.set("cryptoTransfer",P._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(23));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(68)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(9)),l=r(n(26));function f(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(e=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;n--){var r=this._nodes[n],o=e.get(r.address.toString());null!=o&&o.toString()===r.accountId.toString()||t.push(n)}return t}},{key:"_checkNetworkContainsEntry",value:function(e){var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){if(t.value.address.toString()===e[0])return!0}}catch(e){n.e(e)}finally{n.f()}return!1}},{key:"maxNodesPerTransaction",get:function(){return this._maxNodesPerTransaction}},{key:"setMaxNodesPerTransaction",value:function(e){return this._maxNodesPerTransaction=e,this}},{key:"maxNodeAttempts",get:function(){return this._maxNodeAttempts}},{key:"setMaxNodeAttempts",value:function(e){return this._maxNodeAttempts=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){this._minBackoff=e;var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){t.value.setMinBackoff(e)}}catch(e){n.e(e)}finally{n.f()}return this}},{key:"getNumberOfNodesForTransaction",value:function(){return this._maxNodesPerTransaction>0?this._maxNodesPerTransaction:(this._nodes.length+3-1)/3}},{key:"getNodeAccountIdsForExecute",value:function(){return this._getNumberOfMostHealthyNodes(this.getNumberOfNodesForTransaction()).map((function(e){return e.accountId}))}}]),n}(r(n(361)).default);t.default=m},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(360)),l=n(719);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e){(0,i.default)(n,e);var t=f(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,n),e=t.call(this,r),null!=r.newNode)e._accountId=r.newNode.accountId,e._nodeAddress=null;else{if(null==r.cloneNode)throw new Error("failed to create node: ".concat(JSON.stringify(r)));e._accountId=r.cloneNode.node._accountId,e._nodeAddress=r.cloneNode.node._nodeAddress}return e}return(0,a.default)(n,[{key:"getKey",value:function(){return this._accountId.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}},{key:"setCert",value:function(e){switch(e.toString()){case"previewnet":this._cert=l.PREVIEWNET_CERTS[this._accountId.toString()];break;case"testnet":this._cert=l.TESTNET_CERTS[this._accountId.toString()];break;case"mainnet":this._cert=l.MAINNET_CERTS[this._accountId.toString()]}return this}},{key:"accountId",get:function(){return this._accountId}},{key:"nodeAddress",get:function(){return this._nodeAddress}},{key:"setNodeAddress",value:function(e){return this._nodeAddress=e,this}}]),n}(s.default);t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.HOST_AND_PORT=void 0;var o=r(n(1)),a=r(n(2)),i=/^(\S+):(\d+)$/;t.HOST_AND_PORT=i;var u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.address){var n=i.exec(t.address);if(null==n)throw new Error("failed to parse address: ".concat(t.address));this._address=n[1],this._port=null!=n[2]?parseInt(n[2]):null}else{if(null==t.host||null==t.port)throw new Error("failed to create a managed node address: ".concat(JSON.stringify(t)));this._address=t.host,this._port=t.port}Object.freeze(this)}return(0,a.default)(e,[{key:"toInsecure",value:function(){var t=this.port;switch(this.port){case 50212:t=50211;break;case 443:t=5600}return new e({host:this.address,port:t})}},{key:"toSecure",value:function(){var t=this.port;switch(this.port){case 50211:t=50212;break;case 5600:t=443}return new e({host:this.address,port:t})}},{key:"address",get:function(){return this._address}},{key:"port",get:function(){return this._port}},{key:"isTransportSecurity",value:function(){return 50212==this._port||443==this._port}},{key:"toString",value:function(){return null==this.port?this.address:"".concat(this.address,":").concat(this.port)}}],[{key:"fromString",value:function(t){return new e({address:t})}}]),e}();t.default=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_CERTS=t.PREVIEWNET_CERTS=t.MAINNET_CERTS=void 0;t.PREVIEWNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUenyqJ4UaFBbwokatcUqAwW3o3rswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU4WhgPMjI5NTA2MDcyMjIxNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEm5b1+oG9R0qt\nzM7UZnS5l/xxUNHIHq5+NAvtlviCpJL19jrW9+/UOy00Qqc6vS6tS1hS+dNJmpiZ\nFN0EHew4VDR7ACnL4LDJKmIHWjQ0iwvZo5kCpO0r9BtPN5FvaSxyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUeciBviJtjeuue0GPf1xllNw7qvYwCgYIKoZIzj0EAwMDaAAwZQIw\nJeG0H2HdsI1VhOYmJmYlNeKCNgAk+LMorzPmsIInVBO2HK2IrKfpReWDS/m5j51V\nAjEAxKBxDezJDqAZHTkTXCg+X9Q9V6J6M5yDy5IS90aCWEo+W8C1Hc6hkn2/NrvT\nPhwK\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUUfjO8LyXBdzrzbAe1Yl+d34IDsIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAERwfj4ZtD/wRb\nf8h9NEMu2sQoLFK9Gc4SQ8o6j4ccLYGdgOoVoq4zzy4Jr7ZtCTuACfCfhp7wy8ra\n+6cugccaSd6AzOKRSVZvQvkUTFKIoAOKwp6IhlU48rmi80MT07eyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCGhfVMP72Y0G5XUksE3dPgFHrzkwCgYIKoZIzj0EAwMDZwAwZAIw\ncpX7irZWyuujWRYUs9kLNgB2YLQK+n8r1fH+tJg3+zkcZ2pzhGWmpUUZWOzsDqGC\nAjBUbhlmrTc4LrEBN0EMiRYzfPD2kBZxusLBDIg/aDYERCMcsFvF1T9SsuasF/B+\ncI8=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUIo4L+7xe/mUmpKy4qOAQEIxz8UMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEoFgCjb1/7BUJ\nEXKIPJLlsOSp/39G8l92wOSr7h+Py7iwVwu68H2ykftMOq3tRwDRXZHz7ViqcIZ9\nlfMcS8sbRtVm9tBbNciVUqTLWX9nHr/c4PhKEi+LdgtSUr2+hHiWo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMR89BHC3yKC4YwUgyBVQUGBCprQwCgYIKoZIzj0EAwMDZwAwZAIw\nUs2BdslcScIwcmxoB60K7/1BPfQI8ccDZIMosas6U2zhinTnRKik1T0i+uHhLl8e\nAjA5apAwSPTnP7j3Bo/FOCkfjTqOjwp2lUqzDJYKolKsHX2sy8hX9MkYiY46SaJ1\nP+0=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUWpji03mJsR/16MP8BrOfpNz7aQMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE+KDMC99Q1rWi\n+FwlytGMS5qzTDytCvk+PzdONnDZ/weNSv4j3BXSo588IwhIxLtfcBlyo/+PmE1c\n5qGFXuMoZjGr22VpvogkRgPejD+Gawb4A2XHkMCD8NmO66uPw97po1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUN1qEI4eQ+WHavb9ypGV417NvhGowCgYIKoZIzj0EAwMDaAAwZQIw\nL0khkiDOiFRa3wx9l5JNjaSRePPc3ZaTaJQkPYeauMaLWEvmC/0e2/e9gPm5qJ8E\nAjEAgXQMko3vNB8VRN4XjyFJa8p/muZ/tLA15wPnb/boUmiZ+njDDSaiu8tIQrTB\ngHW6\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEJ7AJvrqDUBNKbssGoJtww3v+WowCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjAwWhgPMjI5NTA2MDcyMjIyMDBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEfgJ8w9GUWM3y\nyusedZOFQrgXFVsdtRsMSHbqyVCN6+Wow6SIjy29GRMSP5R2aswupFgh6lXJRqnr\ntY+hpRumFKsmSo+5+l8DBcql4rzs4utESTehM+Cq9LYc4A1z0UIRo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMCm3UqSbT01Zr23hLzCGnXbDa+MwCgYIKoZIzj0EAwMDZwAwZAIw\nFNcN7mKJo/bwpRT+y/KbYkCJsvljdbXzJOXXQ3e6J6R+0vLqcT25J/ry6pBZMUwR\nAjAswu29z8KJCSxnWwnPpHDmkRT15zG/xS+pAmx3oeQSqp6ZD7qpdJE8zzhbfe5x\nwAc=\n-----END CERTIFICATE-----\n"};t.TESTNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUMkNeM6Sbk9ZFYmRWZmSgTQHHWyUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETLLoIMZjEhDP\nKLHS7bJT4OTYGgR/8mB65yfx3KqMLYFF+q2SpWkIrYgUQLVEUEibVSnLlxRUzH7R\nszcKynpTwh0W0yfWanZKQg+RWoKkEYlu2GvkUtJb8cRVM9NLmJUeo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUSrIepwFx8gZ8/G+WGaxs6GgkMtQwCgYIKoZIzj0EAwMDaQAwZgIx\nAJxC0fjB1OrF9vkCKsfnPS3Z+1hscrZhEDG38NxdLEAfPQ5VmyrSBgJy11FBp8yB\n0QIxAKzbge3Lf7iBMwYwm+2M/GiVgmHNMLdtrYuerWpdbYOHgRNAkyt57JoThn0u\nTzkd5Q==\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUGLriiLPacglp6U+BtJcF9TI7xEUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEXhR9cb6mH9AE\nGNSGk3OkxN1C/JW49ddYZ/XWD4InjS8D1kXmB1Y39v1mF0L1loG6lDT8Zp46zrj7\n5zMONXZeD2b0mx5hHhtllPTpJ10Tlt9FDoyFbKwPRQ/SAPNADfuzo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCaKtx8RZ1XJO9rmZMbIcFJZkcv4wCgYIKoZIzj0EAwMDaAAwZQIx\nAPhDW0VrNSmq8hODdhIVV4GyvpYhp3Fksg+sZr3DmUatwn+ptj+X+9IzgPl9QYE3\nkAIwcy2ixgNkjC/DYVmgT4MpUnLneLK0gA23Vj2QwACaTH99H/ybqUH7srj0POB9\n5wvV\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUEMduome38hvAuIKoGjg/tHatQZMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEl1olzP1L4WgX\nd7aujOXmTQZt3tEOGzkMa3S6qJwISLBI7Tb9KaW8zYIe9xWBVAwphCbD0wn9xpPV\nwMr4uTn+JocugYBbe2YoUGzWTkxWnOEKXbh/nQJCe3XE/C0FY8fAo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQULfw7LVtTiUDVIvZwhhWW0soQtSQwCgYIKoZIzj0EAwMDaQAwZgIx\nAID5v3Lo2zlnpFzTdJFqBpw6fV+vmpI+JBj61f264J/uHMbELiu2dwxhwWaMElX7\nwQIxAJxccFr7Bf1KjaMyT2dq75zQzFuKDMj9x92yAqM2Gas/Yay+Ccpm8FBn7BFl\nke1Qwg==\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUcCg/gZGxk/UjYkhW1jg4Zki+jfwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEOSsXBZicyrxy\ntHJHKh04Mvu6SKM49IC7rAXw5CjlOod5OTeHg0fa5vVoBME4mlWP+LsMMqf8welC\n20b4wMwUC1Hnd66v8crX8L1wvZ9EmKLTvhTd65bS5zloMiSbpdF2o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgMMwqaGuUT6JCH0gsbqullaW6/QwCgYIKoZIzj0EAwMDaAAwZQIx\nAMggJ1eMmT7C14z7wHCsOdDOgmzg733+a5dsuAcxknoz/sQLN8wqy1JxShWgEIA/\nxwIweTDAX/4JZnr3mlSC57lYXbHk/c319VfN9Ybxg0FaDXa8tOqg7Ml6Uu3IGujQ\na3eY\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUXADwhiD5acpA66GPoXuAevBfZBIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEBgLhLiGz8qWu\n50vzxSyQkrmhpxuHBJhpGzA0WaUJdAUlaUOL1753ZxxA08wUmcozILNEnMaQ+ROn\n+fuGctv90ZcrSekODjxjbKH2ntVLP8xwkBRCTJ0WRBNenxxBD438o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUhYOOD/z3ty9O5GuSTXnyujIqBRgwCgYIKoZIzj0EAwMDaQAwZgIx\nAMxbZ4gvkXaORauQFUPRYwOJrihWIA+3ttGDua//YfEbshytQ8b4L65W/1Xs8eOd\nDwIxAImwTzRam8tScdOzmuGgPcML2lkETMpMA2rZYVyEL/VNktIxvB2oE+4M0v5l\nr8IbTA==\n-----END CERTIFICATE-----\n"};t.MAINNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUZWoT9TlgbZy+syLbqZhO5++1cVgwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8NhDGK/dgWvD\nRHEJ8af7CBDdhvujH5XIrLen33GTLY8DbJwJW2jdsLGx3+DRVVmeNQZxCbcGj0e2\nIyypkG6s0mtnmeymD8mI3JU8m1aZiuIptZSH3Bw1BNn2hKU4x42co1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUbYGliiNtMkGaroQxXWCl+kYHDBwwCgYIKoZIzj0EAwMDZwAwZAIw\nImTOEYu0y73Ggt4NAjFFsN2sV7CsEL3NoJqJ7MZ6U+b3Ax1hnc1eE0oei6xH4VNF\nAjBB4iZNvAn6Esiu4k+JPlYuMesplgMv33fU5GsfvLIovN8pOJDe0c+CUmsnfGbP\nOsQ=\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEGWU0F4aKffY+le55ahQaScDYDwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEqW6TqxMmjL3h\n9AVBgfVaFRZlXUcyWa+QYhzxr8sksgJqfDbmGtdaHIdiL1qCPuC4v4G3qrAbXZRm\nTYNo5Lz0X2ic5pES6DbacdjOgHH7TAY4BVKkuVrydln2jjhh7SmBo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUcBlY5a1rV0H1iQuJMwWxrTEWQ6MwCgYIKoZIzj0EAwMDZwAwZAIw\nR+mY9B2U26yD44s03hjz4TlpkyXbVfmgL3Elqo3lrWDJtvT4zpjGjxg3Q1P3SpZQ\nAjAy9DRVrZPzq8iq5Ir7B8XgLQH5QL7SQ3tUL1HzXJYOukvn9Ofr+QADhpb0oJLB\nKug=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUbxzfD3ihIK5snumqqKtqtcBPSSQwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEWoAjWmW7vpUr\nU69wRbK9Firons4kRoin6N8lMjCD+xzsrsT6/wycpzC0F8fxfIvOYSMWRtinhOKl\nZAxp60OWYP87iH7RqWBAnHIJZj/znKTGd+8Sqp/RVQmButFHg/+Go1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUTMtwuDzI4Hun7SPp2Nb3scjUUXkwCgYIKoZIzj0EAwMDZwAwZAIw\nHKAgaX39Lgc+4/xHXzZR9mi2p3pf6CDO85Xm56UR/t48HnBkRorR3TFCBXACeIIs\nAjBtXglpDnRf6M+nVBlxLdwCQXiwr6vQJ9+dUo+suNkZ1JBmtHypyIqkG2yT4z9C\nLcs=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUPwXdJvpCJYO9lm6uQN3S1aBi3PswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8PwBQ0ywu+0t\neIYbaiKwzGEScQMOYFYAMw49++6bGRiH/XZjsypqlJWy3F/mB3+HNVZsqgB61Jpj\n2p98Afkl57MYWhWM29t/x5qAQ8LhKGu2k+BOnCcvHDU2pR+fmFSOo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgI4r3/iwzFN2wh76y/4XDBk7wgkwCgYIKoZIzj0EAwMDaQAwZgIx\nANAjwHdTWYMCCjrtb2NWzDpsKjf3m6ZcaxbEcM1ta/Zji/4x0+VRZa917CkfaEsr\nLAIxAK/erPvIXRU9eNaK/TAQqppSRaF35G6iNnYjQZzfjTU2DczhT4oCjKzGoCHT\nkI1zOg==\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUXUGzJj13Ck2Cp0BKauLOdzgCPwIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8Ee64Tbu53i/\nKsuLOJG3GQ4e9gQ+9BtEy7U8kfFzRHh6Ejn7LOW38ZdKX1HP4zXuUusjNvytqDvr\n7eclitqnegcEOkIeFK3wQwBoNILuq+r4LRVi19V+AIcl5w3qkJvIo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQU2tbfu7hd7USgbS2WsG/6BduKEAMwCgYIKoZIzj0EAwMDaAAwZQIw\nRw/BOLoScmU7P/1JnNPsGarmnvcuJrokAv1wk6j8s5LGuQHReX+d+O3RPLggwcAY\nAjEAjoZnt9simul4cVcVy4G/0f39atanUva17gyzlYXEYx7B6UloxLeEcZhlbBf8\nGjRf\n-----END CERTIFICATE-----\n","0.0.8":"","0.0.9":"","0.0.10":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUNauEDBCmP9igXLWtRpzkQqIGo/wwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDcxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ5WhgPMjI5NTA2MDcyMjQyNDlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA3MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjbkoJBshQXUy\nqm5K8ldpTDR94Wk8iEM7QwHfceIxK5pPgaVGRkoJyVLSK5LMH4jyaIHUrtA0lIBQ\no0MsYkq7TOOm7+vo1Yrd8EMbu5StMb3gsXUrj7E/SBKIxULak6hCo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUyKHMzIBPRV/mrgG7tIjzOiw2xbUwCgYIKoZIzj0EAwMDaAAwZQIx\nANsigVtLgTdKWBPVJPstWA0H8yihf0/dmM3GO4qp5keGTWz/O3tnom4iDB6eSrcA\njwIwU82Dh+Wxl3kAD3YJH5VhlfHTm1rPlJETBHZgvPBOYqippao6+WZFEpn2/IDC\nNTjn\n-----END CERTIFICATE-----\n","0.0.11":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUWtnJm2kswnXYu7/S5BnnTQiDRcUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDgxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA4MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjY9Rl+s00xFV\ntdTpAixLR4kJIGLfSLOdm+ofU/KuKMRSz5x1ORhIicppKZK24U5WLGXQU1fKLvxX\nOmqwqL+6oAONmiHszqVdhWne4QPUba0yw7rf1/OI+IFF1HRK3shQo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUb/htoTodbq5hjP5RNlQ0rkKwWB0wCgYIKoZIzj0EAwMDZwAwZAIw\nbO+9yArr21XKXjYHPadEAYINDxgXEC3W8e3X6MJsHCIZITddWWOyXRNFhz504vN0\nAjB8aBuhrKcg1b4CrQDZQcosyVPUGIZKkXdQFfbVdivKrGZvqLS+GdPLd3v2MmHY\norA=\n-----END CERTIFICATE-----\n","0.0.12":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUHBsegV0bKtwpHRoOnnhbK7CTHxMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDkxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA5MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEK+ZAs/00RXaj\nbuQJJy4zwr/YTj9h5V+vbY7sq9Z1RByEwTRRQOI3OuzzMq1EWKkVJKF/QF5b4yda\nx6W9O/NT4EjBXH5XR5X1V6h7aT01YBqsxgMxuUP7kw9K+fW4k6Zao1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUKbecoYirLjf2O2oPkoggEE2P7FcwCgYIKoZIzj0EAwMDaQAwZgIx\nAP67wsVOkeFo/9QRo+PnZhzEvjOZ/+IUoUhimdljcVwn79tzNP+obf7VW3Oq1wH7\n4wIxAL65+WmMTMoI2cN7TCiL7G/W2ChDsASeHfaP/4e4ZViNONWotlY9i9aS3Kwt\nLTea1Q==\n-----END CERTIFICATE-----\n","0.0.13":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUBNxMZRKru9jzFA8zsOAI4xkMFCMwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEwMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MFoYDzIyOTUwNjA3MjI0MjUwWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTAxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAShUi9sglwb\n0U8QUrGOXJuHRXA9HP8RypkgNBwNRs1YcmPLcuwK70unWlkB81M44IQ7z/dG/0cW\nhfFdRI5x4jAeiUFivmWmMLT6lJMPxJ0BkWTGVFVwI3SKcgSvHP9pNS2jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqIMCDzCKKwJJLCXhu9YJYPw6lsDAKBggqhkjOPQQDAwNnADBk\nAjBl0bJG2A3443ybvrkKjWu8do6nDSR08/M49+19QfA1aDw0nb2sdCOE+xNitpQ9\n7ngCMGuQHmnKA2EyOIVpNl2EtRoG+vdmLJQaoukhmCWjkGrQHkai473tGa9cRZ/8\n+RZFzw==\n-----END CERTIFICATE-----\n","0.0.14":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUJcQrEmPlIh0KWwiC2X6lZ/OdNs8wCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDExMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTExHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASxRizKJSbB\nHmG2amvTHLCyExJngCh42agaFkv5Ab9mZYbqZPe0nUn/8RlVAvEiRNggCMYXC6MU\ne4J6D1aeLhYaa0UY8Fmxd20NUjAOWhJgUXds4ILMMVG+pevofeC8AsujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBS2Ic+LU/6Wssns4Yyf3N6E666xDzAKBggqhkjOPQQDAwNoADBl\nAjAH0JMX48GD6vThA6FUsVnJmBID376PRZgxhuZvn9C0HawvNjZVQTkpzpYCwmia\ndO4CMQCotakNxyiOxu/BbnPx6ld5+dqVCugsfqClhUhy8ROpNHfKxp3rW7HopowT\nWiMlIyI=\n-----END CERTIFICATE-----\n","0.0.15":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUSFFNFv1iquxd5txlWA3PlkNju2EwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEyMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTIxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQus3nAPZkb\nja4Efo7iD4s8NLsFwEwQXQBgBGIJwtA2JRgLyXeWpuu125ib6qJzT8CHvQZhel3b\ncwYWi4f2JpabMDepHELLxwZ9fILnAQ8GiHlzhrVq2NI15DI84dXVe4OjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSEO/JFC5/fDcT2gtipDMYMMTd96DAKBggqhkjOPQQDAwNnADBk\nAjBalAU47XQL4ziHD8lj21pcp3+R5FKzn96HclMT/vraknCT1Sl+vCf6EYsqmi6Z\n+RwCMDpxL6P6OMqyE+HzAeYQ4Fa7MYEQfZGMjka4zxetBLvIpwUCT4EAO8gv9GoU\nwCBUzQ==\n-----END CERTIFICATE-----\n","0.0.16":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUdnkil4P+VthVMnqygVwGKLt7VfAwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEzMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTMxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARUdz9ig/iA\nhEAth2YinHKY6WM63BAxUVItzgk65l1T4wTzwoK4XEwclY5vIeFmZy2e0s95lWgq\nSI68VS9gmJ3xp8Q9wOel/bvuF2tvNZmF393TeoNQQVHrQM1yJAx+nPyjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBTBFdNwHKSRDo6CxfA1aglY0N8joTAKBggqhkjOPQQDAwNnADBk\nAjAqPIel58Rcl2kDxZxJPD9mK9xW4TU+d2NuP3n140TQ6nPlw1OwCPI7a4i3wfEe\n08ICMBbrpNRdFZcvy76KoLPfTPvqbtWWaR/0tLZg4Rjj3x7SYgUg3vrVDmodHGkb\n4T2Raw==\n-----END CERTIFICATE-----\n","0.0.17":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUDg+G4Ep+KEmIo+nCOY8DjFX60swwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE0MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTQxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCQRL5xUUh\n1bsTXRPAf/qVFWEOxsJTiMlF3+UJ4MajWE5zmc2QNIzqj7NE24z3fNxgjViNK/8+\noBNQeqXfyJ/4etNMzTyG4JTsvWRAQ3aR1J4WDbfwpcgw6AIOKq9OLP6jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQB9V2fygf48zyyVL3bnAxCLDUV9zAKBggqhkjOPQQDAwNnADBk\nAjBonlThjjvi3fg7ODQcatPHBkp8Yon/p1ukm3YzYA3kitqroXU7BkmwRae2fbqD\nTTICMHI+fAy+xWGwXAFNcvNTop11IIoszcgJJY+1Mc2Q/USk3pP6iezta+rvnaWu\n7JySHg==\n-----END CERTIFICATE-----\n","0.0.18":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUBvI2Vq6O8yXNzbQlj6uQOdpd1lIwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE1MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTUxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR+jFDSzCdn\nmMQpgz/vrmD/xioMioumUmyLAkB+voTNsMAOtiaDVbvJty3b4SJETv5tuZyaF5Gb\nQAYuKsP7X8siCCVLZC9i9nCg46NHtuQkEmw1pzUUDmYFDfSV2tWedNqjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqvCmoaVEp2d9WPctby+ooPMGmvTAKBggqhkjOPQQDAwNpADBm\nAjEA9fQ2OFZa7fAQGGYydfVaUF0ObxKj3T+hyl0jiCKLe+hyxJSrXCFS2BM71UiG\nZMVxAjEAmCzESBzTVvl4Uv3TyActGTijTCqTNpN3gJmQbZYjKVtqf8Wxj9WeH0pM\nE8BlA/qE\n-----END CERTIFICATE-----\n","0.0.19":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUZBwp7UPLJkDgngbUIx5xjbAn+7YwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE2MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTYxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCVYu2uF3T\nkCkyRP0FfXVyyTA1z8DFqCKGrcODgGJuVAk59H6u8FIRsNipkb3BXFI0xGccok5X\nT+t5bMaGDHYJ4fjU78UtPNmankQ5HoiMRJpy7Vn8mzizUzUqGpnhu6GjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQzE6RGn4YlIbdrl0niKWTtJzfXoTAKBggqhkjOPQQDAwNpADBm\nAjEAobnXnwlNGNWoHscbl/ytUBSyjC7V11sLYJqtORSRX3k2+bFGsg4ltmOVjTdd\nlXatAjEA/Ja3jufmdruqfLa6qigXuYI00YaI96sOwNhdHlnksYfqF41nDe4BsSW6\neQ6N5M9d\n-----END CERTIFICATE-----\n","0.0.20":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUE1ZRB5n+Yby+Mwgb2xAcVfTZ53kwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE3MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTcxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR0OfTmHjxT\nkBiU3GMa/bTvlTswCDAuFQGIIpMWHaf6V4ighzmn20jCg0AVFStb2q7YLRr4HUx8\nToMzsd7/yjl74BwJgfZnL75T/JInwyMgOBiCTXEf6qVDvhNzL4QJuVujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQFKRUUmdFcDFQzBN9XqMvLgPd7NzAKBggqhkjOPQQDAwNoADBl\nAjEA5MUUXSehY3KVIv/2LMgrqo1kPiV39fwYuLSnsMJ67wK8yN1NAkkycg6q2K6g\nrBIvAjB3J3a40TINOZTYG+eQs+MSWyfANJLRuJTEOorXzMWM6+05+JYhPnLA8hke\nCRfzmSw=\n-----END CERTIFICATE-----\n"}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_ADDRESS_BOOK=t.PREVIEWNET_ADDRESS_BOOK=t.MAINNET_ADDRESS_BOOK=void 0;var a=r(n(348)),i=s(n(60)),u=s(n(30));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}function s(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var l=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ad0070a0e33352e3233312e3230382e31343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340acf070a0d332e3231312e3234382e31373210a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ace070a0c34302e3132312e36342e343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ad1070a0d33352e3139392e31352e31373710a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad1070a0d332e3133332e3231332e31343610a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad0070a0c34302e37302e31312e32303210a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad2070a0e33352e3232352e3230312e31393510a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d35322e31352e3130352e31333010a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d3130342e34332e3234382e363310a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad2070a0e33352e3234372e3130392e31333510a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b35342e3234312e33382e3110a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b31332e38382e32322e343710a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330ad0070a0c33352e3233352e36352e353110a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d35342e3137372e35312e31323710a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad0070a0c31332e36342e3137302e343010a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d33342e3130362e3234372e363510a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33352e38332e38392e31373110a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad1070a0d31332e37382e3233322e31393210a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33342e3132352e32332e343910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390acf070a0b35302e31382e31372e393310a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390ad1070a0d32302e3135302e3133362e383910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a60363465303938363135626634303566376564356134303133343436623839633438386366636436626232356134613637366463373765656131316433336437303236383266306136396138303330653863353737376430653432323033373939")));t.PREVIEWNET_ADDRESS_BOOK=l;var f=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0a7f0a0c33342e39342e3130362e363110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a80010a0d35302e31382e3133322e32313110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a81010a0e3133382e39312e3134322e32313910a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a82010a0d33352e3233372e3131392e353510a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a7f0a0a332e3231322e362e313310a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d35322e3136382e37362e32343110a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d33352e3234352e32372e31393310a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a80010a0b35322e32302e31382e383610a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a81010a0c34302e37392e38332e31323410a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a82010a0d33342e38332e3131322e31313610a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35342e37302e3139322e333310a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35322e3138332e34352e363510a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a80010a0b33342e39342e3136302e3410a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e35342e3137362e3139392e31303910a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a82010a0d31332e36342e3138312e31333610a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e33342e3130362e3130322e32313810a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a82010a0d33352e3135352e34392e31343710a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a81010a0c31332e37382e3233382e333210a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a83010a0e33342e3133332e3139372e32333010a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e31342e3235322e32303710a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e3136352e31372e32333110a388031a05302e302e392806320218093a60363938333261373361333630326538643166626535616435386431633236333761316236373264373165653837616631306462363438656239316166623232383235336231663437653537643364346134346666353437623333393461613232")));t.TESTNET_ADDRESS_BOOK=f;var d=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633435363165336332373863643635306538306334313363613434343233633163336331336366313437356636663639373664353937616534333262343961623432303836623739623834313332363035346238623364636635376438666364373962666330353831383363613234636434633163626335373465643131313765326635623762336336336365376230366439623465666366373337353633376234316665366635336338313162396465363134336633613532393537636466393536373735313230623333373033666635373632313430376162393537356263326433356330643434663039383366633165663633613466663532303966303730633932616631303632393536303163393662636564303634656331393031393730313963363831316334633864643830636234663461633731663961643736653761633839343536666266346630313166393061626432643930353336653832333436353166366265663932376533643564386237626634353930353039383362656361336162656632613964393761663334353737326137373430653936393932373562303138656130646632383661646436636539323365663930386662653736326137356632313131363836326462343464336463613164343462346432653864633130363663353030366262356137643935346164323535643462363033323733343735653531316165623438356430363961303637633061623563323435333863393333633036623561366165666139343030356332393135323133653463636461653663393432663632373266396464353238326436623839306631663230656664323339396364363734393234666135373034366163366461333265373339353161373331313365393166633262376666323965343835316238336666333966383362613965633666303863656664626236636262626666616266646661613931643933306637323030646134383133376333393463626431336537303165636463323631366664323162616436383161613466303031303230333031303030312804320218073a603665396138616263646364653665313134396133656265313766643538643839303538333961383664623732623036613365613230616131373666383638623235343838353261653432336437613963366237636666396537313436323961320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613163343037373135343330336363373263346662373639326333663934323531626465633132333961316637613839373261626539316133353332336662656361363235613766666165363430366338353564633261663231313039303062306466306536653664623736333634646661316666653835656461353637393336653239383562383536333461333261613532613635393964643663333062653166376136633562386635656563616632363231643861343539363832666364326462616164313536316431316633336663636237663535303061633536386431363564626561616365333238366432383934663634313239643738316436633732666437643539396339653164336166346161343333633233623931306661653463343834313634316636313532366164373837656265613533393837343136376539643361373363633066623135363432396431356563373633613664306630363131356137396239616637383364373762393864383330393661613437343366393734303864396531346263663464646666653435393137363838343762343063623864613763613337353235366432623933356430393566653235326661653831666636653337663834643761393064376535373061346638656633633764373636656564613437326630393230313939303135613839303832353961383733633534353466636262646361643265353238646538353435356234303833633764633461646335613938386530636464666463313539643564373132616264353434616137336563303239303839383134633938613434663236666330363434363539633138336533313834616132373266386431646330626661336530613536303438346362303535626134646262356363333339656338306264313164363432646333613730326538633730336162323139333038346439626436336630646665313261343333633235373665616637383163666164383637656637306264613631373638623262656631346635306336633362386230393666303230333031303030312805320218083a606464336233653763643361323537643832373665343635333533363162303138623730303931663438363635653832303031306538316563303539326236396264346265316662643765636435303964303730313364643034313238343266640ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623263636163363561643066633736343561383137626661626334383761643765343133313165376133313938623337666238343264383463333935623366363764366264383438663130633666303363323930653866376461613864303031613834343164633335326131393136306133313933653638623832656466313961653637363933613961333364346362383765373839613130373037313535313565613737326361613862383661353639623931633534353038333564396333353466306461636563393766653737303931623435623134373639386237663836303134323264636432323631653932386465346461633963343264636261666466393663303732333362613330323730373666333763393639653865643330623662356438663530333462653764393263353936663862653836316535316663633361323432626639643862653965326139653865306631353565626366663233656666613763643537633130353432383131643830373736633935383535323666646230656161333465653139353564353131313933393066653837336534633034646564643239313635383834623938623436333038373838616537666334643461613461386663396263323637346261333231343933623632343435356164343130633164653731626339356431643931666130663230313431386137393565333039656166323937623639396266323763396661323736336364353963656230323165313662383230306331303630663238313766643833636663373637313833343839343631653335393932393162333830643665393339626161346231393233326136613237326464653635316638303436666463333464623237366137373764366662326265633332353562326363323434623461663536366231303566333063363530366464616530656233646564646366393437626362396336306530303039383466336234613863366334656434626639306263313933326237663934646333616536623336303030386562393032303430663962303230333031303030312802320218053a603561383634313561303861306138323566336232656237353031303135353230326533313234336665343161303333333834653738633138633131653565386632303964343933623062326664343565303662333734663262363964663564370ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613365333762373663366364356636363232643639323434343464313263363737633339356632623539303266336262393862386138623530353561373037373036636130323863643735303630613264383730326432643862303439343762646366653061386331343161613238343462316530366536363139303031326538623633323661623066613331373937336263376362346432393439663231303861613034633462306339316261613537323866356235363232656337356162663537386131663762343165646532613637656264363963313865353831666466396336303230616330646539636132633331663063363436393030333331316662623563653764623439633738376531613764323761613432356565376238346461376536363933396639633830643065383266636535356530326466633862356337383431386132366161343336353036393837313962616663656366306264343930303061646463666134303537303862646265666262313937343964323264616230303765343464343565613233623130366638383334633135326532353036326434636632346666323533353663376562333732393130353339336662343962616239303461303266306630626234313763643931396433353238393031323865366262666634666163396639306465313138613937346632613664643031653033326137396231373866363066613166636262643032623537303466623436323935633135313930383136333733656464363633356338353639373866316239353033663166373362346230626538616261326564316665656164353939353362663832656664653933613334373161626435356364613362613861363733666262333739393734396662303036643030336630653633663636356333343631643261376232396463386232303462613539613635363638613436616532383738663030643166393439306466396532383066656266343331356561303465616135363861336139666434386336326336336236656364613639303230333031303030312803320218063a606434363430333938303337393230373965636364356134343331316361306463323262353065633839356235366535336431326232396637326463366462613363616665326535623831303466626461303338616635623434376430666231320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393361323135636334613761373232636165396331336162643633366466393963636565633661663964623436623639666135313637313665663530636532343930613938316530396162303139636132636234363831316235623631396431626431643565653666343661343263373737636264656536343261313438346563646635646464333732393634326333386336643433613838353838373434373566353832343434333636346330346466656439623839303435666230383565323563336566636234383431373333656666376335323963313339653639333530633263643739623263386431393637396137313265346538636166643332363735343162383332623365313061303132353564656636396466316539643362386438656166303331316465363764356531326232366464303164626264396433653432643335643964653237313330326530663166363964383763626337616361396538383637653964343238643363616230363636656234393064356662616233306266663366373835643033663230373261343362623962356535343635366135393263623631656166643561356566323834633763616563363666376634373332356363306434633164323766363631643861373438636135303731633036656631333464666639366634303836363838333636643436386132343738303031376530623536616261376661623433623362376330623737393036666165353438326633323831316332393265366231343435346531346238393438303161383661303363633437373934646430643734353237613732653432346564336166613034383939656362396136336632613961653732626537666139383961646630643635613332633835316439383031666334313034386466333335363466633762333137303765633866623830313430666537623761316661313230626131636236363033323463656666623462636332643962623764653063663534633831396632646433626365616465633963323566356531396463396231303230333031303030312806320218093a603365303261363732306334343636353965383633303564353562666565383230623335653635306665636163633535333039373435356532633465303332636339646564313662316262343464336235393262626163623663326266663165360ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303930323539663465336439663066333934323536353438653963373330386231306237333430336363393039346439376164313531623737303631373062393737326365623634643636326563656639303161386437643135643331396135396338623731303731616363643839356237633933363130646336393736663637633465313732396261383337336162376535326133663363386632363534393164646536396436653039393934373065373434353938313133316264393663333665363836353230336662326562643564353065616461666237323633393664656331643931373438393862346539626530346337346433303466656164643963626433323334633362376633333036633939636230633333396663323539363962343164353861326237636663313833326532323664383163313936333939336532323535613038376431363938633033643432313062643634353830363434643039356361373661613137393465646434306331633837623566383261386533396636303365393731313662613034353738653765383033343634393564373835643465663763663737313462396562366635663965306239613934663462373338383436313962393237346434613935656631353735346138396439376566356331613838623664363933653061383065626435333766633963663063613931643163363264393135646537656438313862393532653634633230303239336565386532383461343136613732613365313266633764343233623135386639623439363630636263323436366662656430666564326532346531303266646539343265623463666439346265633436643364393066633038633339666563626130336530636132343634616536363462393739353135626132396531663730326333666537303262653739333739366438656462313761613438633039323930623032343534396630363131663561653233656437653136343432646637643164616432323836633262623039643535323264643365643639386332663032303330313030303128093202180c3a606339373462623938326338313931336237333236643561336639646363343836313261313566376161643032663230376230663130636432303137613666626666353830336537636139626662343730396162323862366230396435623133660ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303962646438653834666164616133353332666334636530316138613137643463336232333266353061393739306532363236383465646334383233653831356131626435623230656365613762663536653239663662623762383331666233626636656663643134373566306238656435666662306231333835623936643136366236323966303339366138666566356630366534626361323565653461313334306565323633613464396262303230643866343732333036663364383836313338646537613031396530353962643061666339303263636261316132313361653264616136306338613031333735356665306134386530333466356234303233613264616465616138386335343836383335336163376137613364663132623266623634313837373465396231346265366561623863633237623838303132616436313632646137346530656562313631333539303566343337333734646162383538366437353061323662626433616332346165643837386334643533653635313037326338373165393464376163633537356339363733383137333461353366656166346437626136626364643234316363363435386336303837643836333032616132353163303466366435366239633332643764393636323437353065643035353738356430373733663433646330393962323863393232383131343865366338316632393766663964313636653030306163303462333132343138363737356663656637356635656261306331303332626631333064663663643761343632313164306466336530353834643932656136373334396438343930353038656234656638386635346338633364343836646538373139663130666139366665623835636337393630373663613738313331386565326439656439303363613133333630343063353961643931613464326636393865393130386165306564623962316362393561643333623139376666623138626431626138623536636265653261616539353835656365323038613165313462343835363436333032303330313030303128083202180b3a603937303834333033333130373866353638326337663332343464383263336233653238316139313837393537386465656163646363326132656265353431616631383831313561643265383338363565356635643234376234613138633165650ab50722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039303938383635646566326632616233373663376630663733386331643837613237616330316166643030383632306333356362366562666362623063333330303331393361333838633334366433303233313732373031323139336262373666643330303462383634333132633638396566353231336362623930313130313530396465616239346632366137333265363337393239646134633463623332353137653361646262333831316435306163346337376331666365386236353136303632313566333437303766336537323635353435653538633839343630396532383337366264623737373566653330343339653065313539326664636230633365653163333035373733643037326136623839353765616663653161313162653936356564616666333834333336366362366134346563323561383930313036653632343735363766373662353530666461343832626165633633303764363938656338383834316664363666323366323130653437623861396463626136626134653166613731366462333363383065333038313934393664636235653536303966623665376336313533373962646465643432376539323331623932353463326261663934333630386138366436393861653961336338363339646638383764366636623561373133383564323433333864393131613231326266373166316532616363386231383662393665633865363963383662366430353832313737373661303963396336383935336564623539313635373862356132363362326634363965336230633037656164613731613434376565613766386663316262383037343235353536376237663062643165366166623033353837313863393862343239653234623232393835393666633736636636616633393663613934333464373932366563376433376434623932616635366434356665666638313936303935323234613931366331666665366236363765323535666333616338636363656639323064633034346232353030333133326238373830363734326630323033303130303031320218033a603333373339306438666561313434616663313265383132353461323864616336656138323839333833366163303732656666643835653061373734383538306566323830393636343863356137663864626234636538313437363831353133370ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130306335376564623966663237366530323362323830323163623164383763646631393636623639386366343865346561616137633639323037376365656538636362323339613463393231353937653865383966376363303564336633313331353738393736633465333134343035643461346530336137323431306335633039636135323761643561383562393938363337653732613332653166626330643535343662323436356539653830366332646435303965623035306162356662323730363366643932383135623164643236383965323131316361656236663534396539346139663030663038323164346361366336613631313766356135333363393236336266303734613330643563626566353064316338633233383762636139373265646564613039383362356430613662353764636230303230303036383238623430653430373662343837306232346261643834303536656535326235663432326538383430303238633235303036333832643865396336363132323566346637366561373265333430363037653966633666336332303433333037366131636138636231356564303361633839363664303530376263646536383165346530323331656539663837643131316537623438616338663934643264383432623532646637336635373363633534313439363437393763363236393638666661653734313866336236313039623561306630396533323233663461346435653335303964643235303133386636626331376266366365636531373539343433306466313830613338653930616466326166666266616430633662386331623837663137386130363164636662666638623932633931363664383734633166663561663466626364626665386539643039393337306464663630626537343736333364333665653465623563643531663665336333333965313531653431626462356135636532633863393761306134336233636434636330383138383463383739663964326633373438343238633835373366313763393066336362643032303330313030303128073202180a3a603734306166366266373339653838336338386633333434633961306638623330316533396463393831633531363365306465326133666634326239396534323665643765353662363766343231383530333834356466363266343963396662300ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393133316161333638663933343532323966393762363235396363636166666561323365303063643565616430326533663639366331653731346565333933396461643836306533386266393561323937346639656234386539333433663861616334303565613935356430353332336531313762336231633934383133613361663432666538303832633364343362616631626434643833363765393364623030616436393665363237613130333661653533346630313165616435653536663337613666666534346236623965303939343031313932616435363061303334366234316138313030393566356632643766643332643665656236353562613735386336623532366331323933383661663731393763376135336165363033643632323833323235343936316631366430656661383037396137363835363138383862653733333439323231373935366262636166616562623631333563356662623234383464356234613566646630333336616330326532366331363532633162643865616633306461653164366433656230306637623466616238643634373866653864393565623931316466393636613064656134653532326462373662383936363537306563633561663039353136343234663061663566386565363665333836643536353037313339393731363961633337353733626635326664303538646539356162326666363865363831313161623233343035656139363462326262383864303263306631636165643731656364643465346534303835393438373666646238353030626335356337626130323036366530356162393864396637653034363664393730326562353765653337323266386663633835613735353035666633323632313730323838623738383732336164623937653464653536323063633930656164313338326663643735373138383966656662313165363737316263336636663366656231396337616335343238373864303361393032373035323663336565643234393465666635346531353363613966363839303230333031303030312801320218043a603765616236393661623935343336363538626331346666366234626534643932356364353162323230646632613164356336656531363061646166323961353165363934646533656531383463653232656164386437646239333231383266330ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038326465373330363566333466666332393334306435393439643232323062316534333636656435636637633665626436313663663934313661353365613030313766366262313136626664336633646566636331356237613464646630653434643032666536393536383830353365373961373730653230316263663731393333393030333965653866303836643466613734366337653035363931383330316639623565383465333932363238323830383561373962333232626361306235643835666539373232316132366262646532353863363230663064636561303261623165646431366363343961336632616239323838653364643166333764633462366136663731333366663932653534316337316237306432613266363664353537323561623138626638366430303965633364323466356431326530623565363830326431313531333732643462373634656265636234616638326636343934383565633537623561303164633637393538663561303363636161623763626139333534613137333732633133313662613437633935336161663934393031623366386332346536613361666436373538653766336231343363653264643363623037316232613734633932316365653934396134623561366265383739663163373930613662386436336231393264376565323961393439316664643638396139386330613763336436303332306631623461633264363232396466643934653432663361363034386137366265316562393538633861313837336265386433333861656339666335396162376633373632363738393430326331666435393566313930383735373565306265383237666334633061346662336433393361643734613934396363393836626662363463616264646165353339333566366463353630373464623933643737656133623831366264643662653533343439373237323238393835396666333463653531383630616666623632316431303438376463333834336631663836643534303334613633653438613161306430323033303130303031280a3202180d3a606132656363316232616539386264323862633161303864386633373161306434663734356337363864306337373339363235363265333433623235643833343235656565613765663865613134323935333432623865623738643332656333660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039383735356134303862353332316532363330353230303064366437643461326333613535346435653133383461396362356562663437346165383832633633623438366264303864313434646466316139346365396137643632353139363330303661666461616334353838343666313736343031393566653235333961363536393330656661383534663231343865363865633161303863316334396432303063336633303435666537313437663036643533346334626432363231303063623164643339373339643736306438316130626432306638336632353564323530376434636362313130366235333631386336613934343039633838376361653236326434636565396338363233323134376365633134303465306335376262613733313731333065653339363433383838616633643539386564643832623863363165363561653831613465316135366263303664333937313433613938643431636138376433656634333365663061656162363830313139316233653338343830393638663636623665383836363261663435613965323132393934663638623238386562393637626562393834373863323433653231333663316131353931663036316635626330346232316666326261343862323966313834333130383838373362646665393966386135326539343038393731383536653830346465613630326133313137383663393835363532393633633361333737303332396234303966373466646663373436623232613566383431383931323037316334636538343663396234623332306665646636653962363465326362653338346639613832623661616164346232303930373433316466316133336636393230376135363536303062653831303730643038333239303039393538353961343439386435623539333135626365626566656538303765623061336139343266316364663333363764643434343466646232393838366566636464306265346162653961313838383033393533383735656461333364623732393839663736336230323033303130303031280b3202180e3a603139366237623132303739376364623361396430303362393833643537646131303331303662313733306531376636376532633762616161646234333738396166313639366461313031316232353362636263383630333333383566303332380ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061396462376638626161313236383938666162373839313135613362356438393734346631393765323830343161653039386633653838366336393837313732316531316262306164313166336365393132346161393631643661306463383435663439373635633366616231393935383430323637366635363434363262663238316462613535383837383066303365393035373938653138343236396161613630663761313437323333316532666231646561646438373763383463626362363431636139653563386164366534356263313539636230373966636230643434396364636438643932333963316130343765376234343864613063646361323636313061323566323936643936653734363962363736643461343434353136653761353965383532393361383038366638343063303532383534653032613863623230303264616433353832356265346438336235326661393165386337336666303439373436313438383632373837633131313866393234643331636261633162343466656666323264343336623339373965616466396234336134626661373265313562343735356663616232363065303661323739633362623733626337663136613036306434643532326664343930353830333838616135393564383034343733366535323266363432343931356637383033623735383365303935636466373863333235313936393764653831623839666235303035343735336231613137663961616662303634643834633939326639616231316363626338636231303831346463616635323634616134356632316264656661633832636361636161663335386533313337336565316261346537343032666438613730656130633238636135636337346463343235313063393639636432633435396231656333363838613031656133396139393237313063643232393763393861383462363334386135373738303466646332333464336665313930336532633231653137326461323862353961653665346337653865646438623731633439643730323033303130303031280c3202180f3a603538343661353366343437353239666439636462373830346364333136383865643665656265336236336461326635663231316666626337333731393763663366316366626664613631626537643135313066306539323339383131376637340ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061386365616333363765623166316465356630643965663365616630646639623938343438666532303830383437363536326130363063353163323839373730623463616366653932636236353536393832336539363263326132633966656435336264333663613361313232646531633532356135383266323561346437643632386331613364356264623839333661656365373531306537353534656537303333303235633039326338323865656235373338626530326564393633646138316135393230353633346365393435343537376162383266343066313366316565353565306165373237653233633330323834623166343462393961636534646463356639616337616438386439666132323535393335623234646362613834303036343265313663663235333263306230643638393239303436303837313563343037366634366438346130653066656433366537366363646339363335356537613236313630393435633262353461653236636330306664303832333236333436656565656137646437356639313931316539396462636239396561346163366261303536633333323238643838316438353833316439636338373935393364613137343664643065653935646332623936666539336261666366663263643764393239353864373864663333663230356437313135656439666163346462366634636336306535366135343431646135623562353566613539393939303265393538613662366334346438313064646335363138313234316238376632326630353961363838306538303231373336643031383937646236353434396365383137613233373564303335353163623064653530376336303961306338303330656366346266646562323133633033646161373634613138323162373234333334663731663736386437616563623237373035326137303333373635663037323138303536633738663261383761663138333836643866363161356366636233663262613464643539393135663133643338363334643136393537353730323033303130303031280d320218103a603030306162636435396133306135333838633530306265363832663663613239343034363239356339323735383831633230643334626230643639306564613762333862366262643037613364643166646662366137303434626230396366660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061663062393134323537626637613436353563346135306430636164356530613165343538316564363632336630653837333066373936623866323963353831373862636363363933326331666333316633396566343462383264336334336233393837333733373366656362313239353232386130346664353061313466333634366438346665316634363763616562393864343633653239373565393935623864326531653339663362663661646463323561653335643635643032363038653033343535333739363665326162636534396238313462656164336331623735373137346165333063303062306334336539396238303439366237326433633133316631633665346663646130356632383131376566396532386334333033626534643863376530343264353862383363633132313934356132633635653739363263616139313835393338663337353764663763636139356366303262356533313934346133613631396130616333663165333462396230313364346332323463346631653730666439666433363938336566383661646535313833363263633833323263306637623631613961633735666238326537623836643638626330663039396130396131346361633561316438643338663961386137306363333766663563633362626432373432666664313436323535633137316536613137383038333237316463653066646536383165643439326362353962303739366432373031373538333864633539303831303765336136656133663961343036623364313133306363656333623437393165343962626332333136303362343661623264306639336434336265373561623961346437313065613934306532383561376231353362306361376364646565366439646365306164383335306334316439306332313562393538383531356166613061633333363561653037653831663362626233366264626561633462333162636231616134653832353635623937376639646164383564363236656566396161613965663864376533666230323033303130303031280e320218113a603933653238313031303462326231376230303935326235613431303264333365646230343363623136646533616433643364363832363066353562623065353837333765613539343463333338663763386362383863373833336663383630630ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038633037626533303561643630623930626132646162333962306565373736306531613232663835373532323534306437306230336233663965343837356133613239616230383038386631343466353765623235326534366261353933383564306536643432373031313764613061626331623362383036393463396135303538623836643631646661303665373136373039633838653866656163376333613065316432356663306165626636613866373666636239396638343566653138313436316361623638353862393763336134303237666233373132623134653663303738396465313764343137363435373765353131343137656231363236393265623037616531653733353532333565396262343339303437623663303136313337383265376464366636303464616134363734363631643533393631663436633366616136623765373637363264333733623562353432623739656139363365666266333361633638313938626232623636316366663637363931366566333732616434633236633231366334626334373837633834656333326431383464373763373531383663303963663364396639313433336361393835333131396261623331666136616432366634353365353936643962646563613638613537363962633866656537613533356438306338633666336566623164666232383861623661393739383534623763653833313234656330643130326166663934633362373466396333373839353863323565623933336464353363316538303561313836353464366439313836393930663635373034323966393630663334653862346637666439393732646362666539323430653037346461326433353561356637656639633161663632656635393832613831373435373862396331356334396563353636626461636233306363666365663039636466653730386164343837343234653963316265363533663965653736363065376439343263316566613564613238366531616464616230366139613333663964653934363739356230323033303130303031280f320218123a603934383235313739643163333934303137306233356432363665346366613830643737386335653966356261653764653833666638636334373431663362653336616336336431653761653439373261656466366263316533636632303638390ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030626531376339393634376365633635613434343037623533353835366233633362616566356235346635363561663538623834353662613863376365353335643561633732633631633434633736623363353763386538363438343136333762653130613833636665333963303932343736643064626534643663646364636437323061333062356266656235316130316131386635383263343566366338363939336663663764663138323933356465316438363930363034346463663335313836393335643962643765656137393532333532626562623465663961653066373636316537306134323337616661393839393636383763613438666366633562303064333830376630353462653066613863336266613432353033386265366566323935313634663232663733623765383863393465613962653861613466336132343563383962396431666435313932663761353062393538623265663831303462333666316266386664326366623238633134323138303063316334376534656639386166313530303730636336643639643137653865623932663138613661613161363532363661343935323338643130336638663639356235376563663337333635306130353230303837343537323162656138313536323739363763383037363336356466386334633761376434646438663263333835306331386662613731656236306536653864666264313936653035333766643730623334346563626363353330646663383364613666656466343964353161393034313935303262613964373063643335663163663363303639346532333534663930363466646266353335656232336332376330613433643062373863316638363763363164393836393564386465663762633261313062623636373463323266363661616230613931383133646466323763646238353263353965663739653162396531613037356661366565323761376533373734646266346232363436353432376536643561623931666537663066336137313738346563613138326235303230333031303030312810320218133a603038393039376465663031623037633764393734613537353532353161366161613061666236623332613534353334336432393138653732626164303433323163313131633234643432373538306633626131653236616139643735653632360ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613561643262373634336130346330353564326638636432353131623135313339666334353537353632313338386534396331313962326633393861636131313066363133393662306338363664653530363335323262623835343032373365313366366439346365316536303433386636616662303061616136343631326637313435653962636538626331613533623934313931336161373663396633613238333366616437636632383563376163326433376639396633633263646234396465346431353165363136373835363466323831663534313432346234316661376335316232613936303232383363376433326565303065623833386461313563333861666339366530363164393763656465323231363566663161613935396631633432373562326430393863343035383661353537396662623363623930303732373034313230613861363661353237306634666366643130383663393233363930613335653766643434356533336163303366313339633638363835353635373063646334616166323231303761366331613434323435366137633663373965653034303930653765356434663636626361363063613166343762366466623534336461633363626631396137373139613866353562366638336234613362386136366436303235366430613436353531666137303234626430353633316238613535383038373732353463326632663236386364633333643264626263666237333365396662653233336262396362353961623331613031343862323365386334323638306666313061663463373961346430383334366662373961393364393632393534386561663162623132343639386661656661346364643732343432633033613034623733333433326637343839303361333235633238336434353661623961653932316165376564333339316535643137383765666463323335343061376238356336393161653837306130376639306231316331336233326365343365616564313562333639363835636534393137376363393835303230333031303030312811320218143a603939666162633461646534653636326336653238323366346139366562323134343034383465356136643064333132623730633036386432326236323936333830376332333361343964626239383361376562623330653737303637373261340ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030386434356332316330633935656636356130323964353263393537666430663835663230313233646130333465363136373164646565353437356630373338326136366336366362346463353035303464646664333735383130383364663864313735373733306564386436663336346466346333366132363531353931393535646132303161323430376661386162396232333133383131323235613064613233306662653338306530393061613536656661346632303265633962343832336636353031643936616336393865626632366161636633656532643166333261373231633934376531303736636633356233373364613164383761333661313532653030653731303131373932323832653832356666313731633538333362383835373062666336646138343439653666393566386231323635616235353531393430333135353364316435373666393363343263306361363061616261633463386464313632643831313466326232313531313538336337323533396665353663343939613932396465336134306130643435633137633538396332643739383863653236656166633932613364333762376561303034326434336530336166613632373162323632353561366363636661653533373138323164383165306230356332353062353966306139303734316130653065383861303965643536633562393738306430393566303930366630623831643531323633393832616165303131333663303732643834346131316436646134623261363163363434653161623137663136666634386565323366656465383435326631653432653264333061303739306332356434323036306531643434613637316132656232336431313466363863373165333366313736646235386136386234333030353462633164323938336132336133326561366666393566613763346438653338306562323936653938623739363865636638343534643831376337333765656135646439323165623836633136633762323933303461346137656362653561336131303230333031303030312812320218153a606537396165396337313933643164326263393433383436346338616135663632323461653835323936366134336239383235383833663766373432633533393562643330393935383761393638363662393233396431656666336165353037610ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623035616265326162303066646430366339353565383637313062306530366631613932363234613438616431636263386466633666323231323936326230633330666462643238346133376335613337363538623633633336656138313632353631613865346639343663626535373232633032383830316630663238316337306638643838633763303061326632653239663539376237393938363965643833353664663537633437626539393434613261616666363530663962346262613064626335336463383830666462623639656134353139303564323830323230326638653239633034613736643237616632656237633534383438356266336634363934633930633431383130383838383433373932383438383335663738313637303764336538643736663465363766353738306263663038383133633535656336333961396264363234313738663565623134376435303061663335316539656631623165333432343834636132363064623763636261653438366631336366323635623562316162363838303636303038303533623230633364656463653737316339613038613033323061613963653435316562396439383361376234396361613130393666386164633039383331386463333865306537636566306438653564353537613036373536383561316339653235366132626339646261333232623362623331373263663731343037376263333830663861306134333361386266613766626663353966366230393365633862663665393339376330396231386531383034306331623536363836343733376338666137653239373935663361343538386464613763326261623439353636356363346139623833366532656239306336326133666361663539316662356638313830346337363138306536323666613236343461376465333435313164366334363637643938393337653237373333663464316539313338383333353465353466643733353137323165373666376235366333343833333838663461366238376232386165626562303230333031303030312813320218163a603962343038383566313362366163316337353336393262613366313739303061333838333165363934613061663937343934623834333838323039636235656662646339386136646162623265316337313833393166633133356264616163330ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396463643863306135336539306333353539353734663636323034313137643362353033653530613336643330393766616338343239653663656364333762623534303731383038663265653938323033356638353161306339626532313736333833613232653338633161626131363866333266393035373063623332333363666536323539383736363661663637623531346361656632316662386466366430666364333363663236303662393264646561353533366236303638643836373832653339626435633338343435393931643431396237643165633038353939343132633039343964316332343062333563313464633535323734646261373166666165393336313235613566383139663534313332653234333964346163353539373939366563653835653133646666333336316639313331663536636561633562396635353262343963663666396139616336653564636532646233363934363266393361663830653562353662366538626566613136326130363162346137363839326264633834363437333036633630303835386664643237303332373663326337303434303139386566643766653335343563663261623538306337346366643634343561616637626437663734356363323532656162643236356561626565383632343137313034653639343861353537353666646332323264663061313031353234646531633363303863636630343330313165633766653936346564643834353161313330313437633037333633613335663131666465656638663261326237363137353762343335386666383962373561343864363762646336303930363933653062623836373965636262393366666462336633656439366265633933656634363536653337313661623837636534366361386531323539633866656464653866326631656130663365623263343865393635353164653132333330333435373235663435656436396338353735623531363833616661343732363231383236646232326262326431633466316533363436346139303230333031303030312814320218173a60346630613033333466393737363738313632663830643936376637323139313431333630633062376637663033316233376336396536323137333933336564616434366263626139373636376565373262666435613933346261313532326330")));t.MAINNET_ADDRESS_BOOK=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(722));function l(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;r--){var o=this._nodes[r];n.includes(o.address.toString())||t.push(r)}return t}},{key:"getNextMirrorNode",value:function(){if(null==this._createNetworkChannel)throw new Error("mirror network not supported on browser");return this._getNumberOfMostHealthyNodes(1)[0]}}]),n}(r(n(361)).default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),t.call(this,e)}return(0,a.default)(n,[{key:"getKey",value:function(){return this._address.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}}]),n}(r(n(360)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(724));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var y=function(e){(0,s.default)(n,e);var t=h(n);function n(e){var r;return(0,u.default)(this,n),(r=t.call(this))._address=e,r}return(0,c.default)(n,[{key:"close",value:function(){}},{key:"_createUnaryClient",value:function(e){var t=this;return function(){var n=(0,i.default)(a.default.mark((function n(r,o,i){var u,c,s;return a.default.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,fetch("".concat(t._address,"/proto.").concat(e,"/").concat(r.name),{method:"POST",headers:{"content-type":"application/grpc-web+proto","x-user-agent":"hedera-sdk-js/v2","x-grpc-web":"1"},body:(0,d.encodeRequest)(o)});case 2:return u=n.sent,n.next=5,u.arrayBuffer();case 5:c=n.sent,s=(0,d.decodeUnaryResponse)(c),i(null,s);case 8:case"end":return n.stop()}}),n)})));return function(e,t,r){return n.apply(this,arguments)}}()}}]),n}(d.default);t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.decodeUnaryResponse=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength,r=new DataView(e,t,n),o=0,i=null,u=0;for(;o>7,f=r.getUint32(o+1),d=o+5;if(d+f>r.byteLength)throw new Error("(BUG) unexpected frame length past the boundary");var p=new Uint8Array(e,r.byteOffset+d,f);if(0===l){if(null!=i)throw new Error("(BUG) unexpectedly received more than one data frame");i=p}else{if(1!==l)throw new Error("(BUG) unexpected frame type: ".concat(l));var h=s.decode(p),y=h.split(":"),b=(0,a.default)(y,2),m=b[0],v=b[1];if("grpc-status"!==m)throw new Error("(BUG) unhandled trailer, ".concat(h));u=parseInt(v)}o+=f+5}if(0!==u)throw new Error("(BUG) unhandled grpc-status: ".concat(u));if(null==i)throw new Error("(BUG) unexpectedly received no response");return i},t.default=void 0,t.encodeRequest=function(e){var t=new ArrayBuffer(e.byteLength+5);return new DataView(t,1,4).setUint32(0,e.length),new Uint8Array(t,5).set(e),t};var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=n(30),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(88));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(){(0,i.default)(this,e),this._crypto=null,this._smartContract=null,this._file=null,this._consensus=null,this._freeze=null,this._network=null,this._token=null,this._schedule=null}return(0,u.default)(e,[{key:"close",value:function(){throw new Error("not implemented")}},{key:"crypto",get:function(){return null!=this._crypto||(this._crypto=c.CryptoService.create(this._createUnaryClient("CryptoService"))),this._crypto}},{key:"smartContract",get:function(){return null!=this._smartContract||(this._smartContract=c.SmartContractService.create(this._createUnaryClient("SmartContractService"))),this._smartContract}},{key:"file",get:function(){return null!=this._file||(this._file=c.FileService.create(this._createUnaryClient("FileService"))),this._file}},{key:"consensus",get:function(){return null!=this._consensus||(this._consensus=c.ConsensusService.create(this._createUnaryClient("ConsensusService"))),this._consensus}},{key:"freeze",get:function(){return null!=this._freeze||(this._freeze=c.FreezeService.create(this._createUnaryClient("FreezeService"))),this._freeze}},{key:"network",get:function(){return null!=this._network||(this._network=c.NetworkService.create(this._createUnaryClient("NetworkService"))),this._network}},{key:"token",get:function(){return null!=this._token||(this._token=c.TokenService.create(this._createUnaryClient("TokenService"))),this._token}},{key:"schedule",get:function(){return null!=this._schedule||(this._schedule=c.ScheduleService.create(this._createUnaryClient("ScheduleService"))),this._schedule}},{key:"_createUnaryClient",value:function(e){throw new Error("not implemented")}}]),e}();t.default=f},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(726),o=n(69).errors,a=function(e){this.requestManager=e,this.requests=[]};a.prototype.add=function(e){this.requests.push(e)},a.prototype.execute=function(){var e=this.requests,t=this._sortResponses.bind(this);this.requestManager.sendBatch(e,(function(n,a){a=t(a),e.map((function(e,t){return a[t]||{}})).forEach((function(t,n){if(e[n].callback){if(t&&t.error)return e[n].callback(o.ErrorResponse(t));if(!r.isValidResponse(t))return e[n].callback(o.InvalidResponse(t));try{e[n].callback(null,e[n].format?e[n].format(t.result):t.result)}catch(t){e[n].callback(t)}}}))}))},a.prototype._sortResponses=function(e){return(e||[]).sort((function(e,t){return e.id-t.id}))};var i=a;t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={messageId:0,toPayload:function(e,t){if(!e)throw new Error('JSONRPC method should be specified for params: "'+JSON.stringify(t)+'"!');return r.messageId++,{jsonrpc:"2.0",id:r.messageId,method:e,params:t||[]}},isValidResponse:function(e){return Array.isArray(e)?e.every(t):t(e);function t(e){return!(!e||e.error||"2.0"!==e.jsonrpc||"number"!=typeof e.id&&"string"!=typeof e.id||void 0===e.result)}},toBatchPayload:function(e){return e.map((function(e){return r.toPayload(e.method,e.params)}))}},o=r;t.default=o},function(e,t,n){"use strict";var r=n(0)(n(3));e.exports={ErrorResponse:function(e){var t=e&&e.error&&e.error.message?e.error.message:JSON.stringify(e),n=e.error&&e.error.data?e.error.data:null,r=new Error("Returned error: "+t);return r.data=n,r},InvalidNumberOfParams:function(e,t,n){return new Error('Invalid number of parameters for "'+n+'". Got '+e+" expected "+t+"!")},InvalidConnection:function(e,t){return this.ConnectionError("CONNECTION ERROR: Couldn't connect to node "+e+".",t)},InvalidProvider:function(){return new Error("Provider not set or invalid")},InvalidResponse:function(e){var t=e&&e.error&&e.error.message?e.error.message:"Invalid JSON RPC response: "+JSON.stringify(e);return new Error(t)},ConnectionTimeout:function(e){return new Error("CONNECTION TIMEOUT: timeout of "+e+" ms achived")},ConnectionNotOpenError:function(e){return this.ConnectionError("connection not open on send()",e)},ConnectionCloseError:function(e){return"object"===(0,r.default)(e)&&e.code&&e.reason?this.ConnectionError("CONNECTION ERROR: The connection got closed with the close code `"+e.code+"` and the following reason string `"+e.reason+"`",e):new Error("CONNECTION ERROR: The connection closed unexpectedly")},MaxAttemptsReachedOnReconnectingError:function(){return new Error("Maximum number of reconnect attempts reached!")},PendingRequestsOnReconnectingError:function(){return new Error("CONNECTION ERROR: Provider started to reconnect before the response got received!")},ConnectionError:function(e,t){var n=new Error(e);return t&&(n.code=t.code,n.reason=t.reason),n},RevertInstructionError:function(e,t){var n=new Error("Your request got reverted with the following reason string: "+e);return n.reason=e,n.signature=t,n},TransactionRevertInstructionError:function(e,t,n){var r=new Error("Transaction has been reverted by the EVM:\n"+JSON.stringify(n,null,2));return r.reason=e,r.signature=t,r.receipt=n,r},TransactionError:function(e,t){var n=new Error(e);return n.receipt=t,n},NoContractAddressFoundError:function(e){return this.TransactionError("The transaction receipt didn't contain a contract address.",e)},ContractCodeNotStoredError:function(e){return this.TransactionError("The contract code couldn't be stored, please check your gas limit.",e)},TransactionRevertedWithoutReasonError:function(e){return this.TransactionError("Transaction has been reverted by the EVM:\n"+JSON.stringify(e,null,2),e)},TransactionOutOfGasError:function(e){return this.TransactionError("Transaction ran out of gas. Please provide more gas:\n"+JSON.stringify(e,null,2),e)},ResolverMethodMissingError:function(e,t){return new Error("The resolver at "+e+'does not implement requested method: "'+t+'".')},ContractMissingABIError:function(){return new Error("You must provide the json interface of the contract when instantiating a contract object.")},ContractOnceRequiresCallbackError:function(){return new Error("Once requires a callback as the second parameter.")},ContractEventDoesNotExistError:function(e){return new Error('Event "'+e+"\" doesn't exist in this contract.")},ContractReservedEventError:function(e){return new Error('The event "'+e+"\" is a reserved event name, you can't use it.")},ContractMissingDeployDataError:function(){return new Error('No "data" specified in neither the given options, nor the default options.')},ContractNoAddressDefinedError:function(){return new Error("This contract object doesn't have address set yet, please set an address first.")},ContractNoFromAddressDefinedError:function(){return new Error('No "from" address specified in neither the given options, nor the default options.')}}},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(79),a=n(787),i=function(e){return o.toBN(e).toString(10)},u=function(e){if(void 0!==e)return function(e){return"latest"===e||"pending"===e||"earliest"===e}(e)?e:"genesis"===e?"0x0":o.isHexStrict(e)?"string"==typeof e?e.toLowerCase():e:o.numberToHex(e)},c=function(e){if(e.to&&(e.to=f(e.to)),e.data&&e.input)throw new Error('You can\'t have "data" and "input" as properties of transactions at the same time, please use either "data" or "input" instead.');if(!e.data&&e.input&&(e.data=e.input,delete e.input),e.data&&!e.data.startsWith("0x")&&(e.data="0x"+e.data),e.data&&!o.isHex(e.data))throw new Error("The data field must be HEX encoded data.");return(e.gas||e.gasLimit)&&(e.gas=e.gas||e.gasLimit),(e.maxPriorityFeePerGas||e.maxFeePerGas)&&delete e.gasPrice,["gasPrice","gas","value","maxPriorityFeePerGas","maxFeePerGas","nonce"].filter((function(t){return void 0!==e[t]})).forEach((function(t){e[t]=o.numberToHex(e[t])})),e},s=function(e){return null!==e.blockNumber&&(e.blockNumber=o.hexToNumber(e.blockNumber)),null!==e.transactionIndex&&(e.transactionIndex=o.hexToNumber(e.transactionIndex)),e.nonce=o.hexToNumber(e.nonce),e.gas=o.hexToNumber(e.gas),e.gasPrice&&(e.gasPrice=i(e.gasPrice)),e.maxFeePerGas&&(e.maxFeePerGas=i(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(e.maxPriorityFeePerGas=i(e.maxPriorityFeePerGas)),e.type&&(e.type=o.hexToNumber(e.type)),e.value=i(e.value),e.to&&o.isAddress(e.to)?e.to=o.toChecksumAddress(e.to):e.to=null,e.from&&(e.from=o.toChecksumAddress(e.from)),e},l=function(e){if("string"==typeof e.blockHash&&"string"==typeof e.transactionHash&&"string"==typeof e.logIndex){var t=o.sha3(e.blockHash.replace("0x","")+e.transactionHash.replace("0x","")+e.logIndex.replace("0x",""));e.id="log_"+t.replace("0x","").substr(0,8)}else e.id||(e.id=null);return null!==e.blockNumber&&(e.blockNumber=o.hexToNumber(e.blockNumber)),null!==e.transactionIndex&&(e.transactionIndex=o.hexToNumber(e.transactionIndex)),null!==e.logIndex&&(e.logIndex=o.hexToNumber(e.logIndex)),e.address&&(e.address=o.toChecksumAddress(e.address)),e},f=function(e){var t=new a(e);if(t.isValid()&&t.isDirect())return t.toAddress().toLowerCase();if(o.isAddress(e))return"0x"+e.toLowerCase().replace("0x","");throw new Error("Provided address ".concat(e," is invalid, the capitalization checksum test failed, or it's an indirect IBAN address which can't be converted."))};e.exports={inputDefaultBlockNumberFormatter:function(e){return u(this&&null==e?this.defaultBlock:e)},inputBlockNumberFormatter:u,inputCallFormatter:function(e){var t=(e=c(e)).from||(this?this.defaultAccount:null);return t&&(e.from=f(t)),e},inputTransactionFormatter:function(e){if("number"!=typeof(e=c(e)).from&&(!e.from||"object"!==(0,r.default)(e.from))){if(e.from=e.from||(this?this.defaultAccount:null),!e.from&&"number"!=typeof e.from)throw new Error('The send transactions "from" field must be defined!');e.from=f(e.from)}return e},inputAddressFormatter:f,inputPostFormatter:function(e){return e.ttl&&(e.ttl=o.numberToHex(e.ttl)),e.workToProve&&(e.workToProve=o.numberToHex(e.workToProve)),e.priority&&(e.priority=o.numberToHex(e.priority)),Array.isArray(e.topics)||(e.topics=e.topics?[e.topics]:[]),e.topics=e.topics.map((function(e){return 0===e.indexOf("0x")?e:o.fromUtf8(e)})),e},inputLogFormatter:function(e){var t=function(e){return null==e?null:0===(e=String(e)).indexOf("0x")?e:o.fromUtf8(e)};return void 0===e&&(e={}),void 0===e.fromBlock&&(e=Object.assign(Object.assign({},e),{fromBlock:"latest"})),(e.fromBlock||0===e.fromBlock)&&(e.fromBlock=u(e.fromBlock)),(e.toBlock||0===e.toBlock)&&(e.toBlock=u(e.toBlock)),e.topics=e.topics||[],e.topics=e.topics.map((function(e){return Array.isArray(e)?e.map(t):t(e)})),t=null,e.address&&(e.address=Array.isArray(e.address)?e.address.map((function(e){return f(e)})):f(e.address)),e},inputSignFormatter:function(e){return o.isHexStrict(e)?e:o.utf8ToHex(e)},inputStorageKeysFormatter:function(e){return e.map(o.numberToHex)},outputProofFormatter:function(e){return e.address=o.toChecksumAddress(e.address),e.nonce=o.hexToNumberString(e.nonce),e.balance=o.hexToNumberString(e.balance),e},outputBigNumberFormatter:i,outputTransactionFormatter:s,outputTransactionReceiptFormatter:function(e){if("object"!==(0,r.default)(e))throw new Error("Received receipt is invalid: "+e);return null!==e.blockNumber&&(e.blockNumber=o.hexToNumber(e.blockNumber)),null!==e.transactionIndex&&(e.transactionIndex=o.hexToNumber(e.transactionIndex)),e.cumulativeGasUsed=o.hexToNumber(e.cumulativeGasUsed),e.gasUsed=o.hexToNumber(e.gasUsed),Array.isArray(e.logs)&&(e.logs=e.logs.map(l)),e.effectiveGasPrice&&(e.effectiveGasPrice=o.hexToNumber(e.effectiveGasPrice)),e.contractAddress&&(e.contractAddress=o.toChecksumAddress(e.contractAddress)),void 0!==e.status&&null!==e.status&&(e.status=Boolean(parseInt(e.status))),e},outputBlockFormatter:function(e){return e.gasLimit=o.hexToNumber(e.gasLimit),e.gasUsed=o.hexToNumber(e.gasUsed),e.size=o.hexToNumber(e.size),e.timestamp=o.hexToNumber(e.timestamp),null!==e.number&&(e.number=o.hexToNumber(e.number)),e.difficulty&&(e.difficulty=i(e.difficulty)),e.totalDifficulty&&(e.totalDifficulty=i(e.totalDifficulty)),Array.isArray(e.transactions)&&e.transactions.forEach((function(e){if("string"!=typeof e)return s(e)})),e.miner&&(e.miner=o.toChecksumAddress(e.miner)),e.baseFeePerGas&&(e.baseFeePerGas=o.hexToNumber(e.baseFeePerGas)),e},outputLogFormatter:l,outputPostFormatter:function(e){return e.expiry=o.hexToNumber(e.expiry),e.sent=o.hexToNumber(e.sent),e.ttl=o.hexToNumber(e.ttl),e.workProved=o.hexToNumber(e.workProved),e.topics||(e.topics=[]),e.topics=e.topics.map((function(e){return o.toUtf8(e)})),e},outputSyncingFormatter:function(e){return e.startingBlock=o.hexToNumber(e.startingBlock),e.currentBlock=o.hexToNumber(e.currentBlock),e.highestBlock=o.hexToNumber(e.highestBlock),e.knownStates&&(e.knownStates=o.hexToNumber(e.knownStates),e.pulledStates=o.hexToNumber(e.pulledStates)),e}}},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(13),a=n(362),i=new o(0),u=new o(-1),c={noether:"0",wei:"1",kwei:"1000",Kwei:"1000",babbage:"1000",femtoether:"1000",mwei:"1000000",Mwei:"1000000",lovelace:"1000000",picoether:"1000000",gwei:"1000000000",Gwei:"1000000000",shannon:"1000000000",nanoether:"1000000000",nano:"1000000000",szabo:"1000000000000",microether:"1000000000000",micro:"1000000000000",finney:"1000000000000000",milliether:"1000000000000000",milli:"1000000000000000",ether:"1000000000000000000",kether:"1000000000000000000000",grand:"1000000000000000000000",mether:"1000000000000000000000000",gether:"1000000000000000000000000000",tether:"1000000000000000000000000000000"};function s(e){var t=e?e.toLowerCase():"ether",n=c[t];if("string"!=typeof n)throw new Error("[ethjs-unit] the unit provided "+e+" doesn't exists, please use the one of the following units "+JSON.stringify(c,null,2));return new o(n,10)}function l(e){if("string"==typeof e){if(!e.match(/^-?[0-9.]+$/))throw new Error("while converting number to string, invalid number value '"+e+"', should be a number matching (^-?[0-9.]+).");return e}if("number"==typeof e)return String(e);if("object"===(0,r.default)(e)&&e.toString&&(e.toTwos||e.dividedToIntegerBy))return e.toPrecision?String(e.toPrecision()):e.toString(10);throw new Error("while converting number to string, invalid number value '"+e+"' type "+(0,r.default)(e)+".")}e.exports={unitMap:c,numberToString:l,getValueOfUnit:s,fromWei:function(e,t,n){var r=a(e),o=r.lt(i),l=s(t),f=c[t].length-1||1,d=n||{};o&&(r=r.mul(u));for(var p=r.mod(l).toString(10);p.length2)throw new Error("[ethjs-unit] while converting number "+e+" to wei, too many decimal points");var d=f[0],p=f[1];if(d||(d="0"),p||(p="0"),p.length>a)throw new Error("[ethjs-unit] while converting number "+e+" to wei, too many decimal places");for(;p.length0?i-4:i;for(n=0;n>16&255,c[l++]=t>>8&255,c[l++]=255&t;2===u&&(t=o[e.charCodeAt(n)]<<2|o[e.charCodeAt(n+1)]>>4,c[l++]=255&t);1===u&&(t=o[e.charCodeAt(n)]<<10|o[e.charCodeAt(n+1)]<<4|o[e.charCodeAt(n+2)]>>2,c[l++]=t>>8&255,c[l++]=255&t);return c},t.fromByteArray=function(e){for(var t,n=e.length,o=n%3,a=[],i=0,u=n-o;iu?u:i+16383));1===o?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===o&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return a.join("")};for(var r=[],o=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",u=0,c=i.length;u0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var o,a,i=[],u=t;u>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return i.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},function(e,t,n){"use strict"; +function a(e,t){if(e===t)return 0;for(var n=e.length,r=t.length,o=0,a=Math.min(n,r);o=0;c--)if(l[c]!==f[c])return!1;for(c=l.length-1;c>=0;c--)if(i=l[c],!g(e[i],t[i],n,r))return!1;return!0}(e,t,n,o))}return n?e===t:e==t}function _(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function w(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(e){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function I(e,t,n,r){var o;if("function"!=typeof t)throw new TypeError('"block" argument must be a function');"string"==typeof n&&(r=n,n=null),o=function(e){var t;try{e()}catch(e){t=e}return t}(t),r=(n&&n.name?" ("+n.name+").":".")+(r?" "+r:"."),e&&!o&&v(o,n,"Missing expected exception"+r);var a="string"==typeof r,i=!e&&o&&!n;if((!e&&u.isError(o)&&a&&w(o,n)||i)&&v(o,n,"Got unwanted exception"+r),e&&o&&n&&!w(o,n)||!e&&o)throw o}p.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=function(e){return m(b(e.actual),128)+" "+e.operator+" "+m(b(e.expected),128)}(this),this.generatedMessage=!0);var t=e.stackStartFunction||v;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var n=new Error;if(n.stack){var r=n.stack,o=y(t),a=r.indexOf("\n"+o);if(a>=0){var i=r.indexOf("\n",a+1);r=r.substring(i+1)}this.stack=r}}},u.inherits(p.AssertionError,Error),p.fail=v,p.ok=k,p.equal=function(e,t,n){e!=t&&v(e,t,n,"==",p.equal)},p.notEqual=function(e,t,n){e==t&&v(e,t,n,"!=",p.notEqual)},p.deepEqual=function(e,t,n){g(e,t,!1)||v(e,t,n,"deepEqual",p.deepEqual)},p.deepStrictEqual=function(e,t,n){g(e,t,!0)||v(e,t,n,"deepStrictEqual",p.deepStrictEqual)},p.notDeepEqual=function(e,t,n){g(e,t,!1)&&v(e,t,n,"notDeepEqual",p.notDeepEqual)},p.notDeepStrictEqual=function e(t,n,r){g(t,n,!0)&&v(t,n,r,"notDeepStrictEqual",e)},p.strictEqual=function(e,t,n){e!==t&&v(e,t,n,"===",p.strictEqual)},p.notStrictEqual=function(e,t,n){e===t&&v(e,t,n,"!==",p.notStrictEqual)},p.throws=function(e,t,n){I(!0,e,t,n)},p.doesNotThrow=function(e,t,n){I(!1,e,t,n)},p.ifError=function(e){if(e)throw e},p.strict=o((function e(t,n){t||v(t,!0,n,"==",e)}),p,{equal:p.strictEqual,deepEqual:p.deepStrictEqual,notEqual:p.notStrictEqual,notDeepEqual:p.notDeepStrictEqual}),p.strict.strict=p.strict;var A=Object.keys||function(e){var t=[];for(var n in e)c.call(e,n)&&t.push(n);return t}}).call(this,n(40))},function(e,t,n){"use strict";(function(e){var r=n(0)(n(3));function o(e){if("string"!=typeof e)throw new Error("[isHexPrefixed] input must be type 'string', received type "+(0,r.default)(e));return"0"===e[0]&&"x"===e[1]}Object.defineProperty(t,"__esModule",{value:!0}),t.isHexString=t.getKeys=t.fromAscii=t.fromUtf8=t.toAscii=t.arrayContainsArray=t.getBinarySize=t.padToEven=t.stripHexPrefix=t.isHexPrefixed=void 0,t.isHexPrefixed=o;function a(e){var t=e;if("string"!=typeof t)throw new Error("[padToEven] value must be type 'string', received "+(0,r.default)(t));return t.length%2&&(t="0"+t),t}t.stripHexPrefix=function(e){if("string"!=typeof e)throw new Error("[stripHexPrefix] input must be type 'string', received "+(0,r.default)(e));return o(e)?e.slice(2):e},t.padToEven=a,t.getBinarySize=function(t){if("string"!=typeof t)throw new Error("[getBinarySize] method requires input type 'string', recieved "+(0,r.default)(t));return e.byteLength(t,"utf8")},t.arrayContainsArray=function(e,t,n){if(!0!==Array.isArray(e))throw new Error("[arrayContainsArray] method requires input 'superset' to be an array, got type '"+(0,r.default)(e)+"'");if(!0!==Array.isArray(t))throw new Error("[arrayContainsArray] method requires input 'subset' to be an array, got type '"+(0,r.default)(t)+"'");return t[n?"some":"every"]((function(t){return e.indexOf(t)>=0}))},t.toAscii=function(e){var t="",n=0,r=e.length;for("0x"===e.substring(0,2)&&(n=2);n2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}a("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),a("ERR_INVALID_ARG_TYPE",(function(e,t,n){var o,a,u,c;if("string"==typeof t&&(a="not ",t.substr(!u||u<0?0:+u,a.length)===a)?(o="must not be",t=t.replace(/^not /,"")):o="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))c="The ".concat(e," ").concat(o," ").concat(i(t,"type"));else{var s=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+t.length>e.length)&&-1!==e.indexOf(t,n)}(e,".")?"property":"argument";c='The "'.concat(e,'" ').concat(s," ").concat(o," ").concat(i(t,"type"))}return c+=". Received type ".concat((0,r.default)(n))}),TypeError),a("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),a("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),a("ERR_STREAM_PREMATURE_CLOSE","Premature close"),a("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),a("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),a("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),a("ERR_STREAM_WRITE_AFTER_END","write after end"),a("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),a("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),a("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=o},function(e,t,n){"use strict";(function(t){var r=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=s;var o=n(442),a=n(446);n(16)(s,o);for(var i=r(a.prototype),u=0;u2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}a("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),a("ERR_INVALID_ARG_TYPE",(function(e,t,n){var o,a,u,c;if("string"==typeof t&&(a="not ",t.substr(!u||u<0?0:+u,a.length)===a)?(o="must not be",t=t.replace(/^not /,"")):o="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))c="The ".concat(e," ").concat(o," ").concat(i(t,"type"));else{var s=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+t.length>e.length)&&-1!==e.indexOf(t,n)}(e,".")?"property":"argument";c='The "'.concat(e,'" ').concat(s," ").concat(o," ").concat(i(t,"type"))}return c+=". Received type ".concat((0,r.default)(n))}),TypeError),a("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),a("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),a("ERR_STREAM_PREMATURE_CLOSE","Premature close"),a("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),a("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),a("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),a("ERR_STREAM_WRITE_AFTER_END","write after end"),a("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),a("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),a("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=o},function(e,t,n){"use strict";(function(t){var r=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=s;var o=n(449),a=n(453);n(16)(s,o);for(var i=r(a.prototype),u=0;u=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0,o=(n-r)/4294967296;this._block.writeUInt32BE(o,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var a=this._hash();return e?a.toString(e):a},o.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=o},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1));t.default=function e(){(0,o.default)(this,e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t._checksum=m,t._parseAddress=function(e,t){var n=p.exec(t);if(null===n){return{status:0}}var r=[u.default.fromString(n[1]),u.default.fromString(n[2]),u.default.fromString(n[3])],o="".concat(r[0].toString(),".").concat(r[1].toString(),".").concat(r[2].toString()),a=m(e,o);return{status:void 0===n[4]?2:a==n[4]?3:1,num1:r[0],num2:r[1],num3:r[2],givenChecksum:n[4],correctChecksum:a,noChecksumFormat:o,withChecksumFormat:"".concat(o,"-").concat(a)}},t.compare=function(e,t){var n=e[0].compare(t[0]);if(0!=n)return n;if(0!=(n=e[1].compare(t[1])))return n;return e[2].compare(t[2])},t.constructor=function(e,t,n){if(null==t&&null!=n||null!=t&&null==n)throw new Error("invalid entity ID");var r="number"==typeof e||u.default.isLong(e)?[null!=n?u.default.fromValue(e):u.default.ZERO,null!=t?u.default.fromValue(t):u.default.ZERO,null!=n?u.default.fromValue(n):u.default.fromValue(e)]:[null!=e.shard?u.default.fromValue(e.shard):u.default.ZERO,null!=e.realm?u.default.fromValue(e.realm):u.default.ZERO,u.default.fromValue(e.num)],o=(0,i.default)(r,3),a=o[0],c=o[1],s=o[2];if(a.isNegative()||c.isNegative()||s.isNegative())throw new Error("negative numbers are not allowed in IDs");return{shard:a,realm:c,num:s}},t.fromSolidityAddress=function(e){var t=e.startsWith("0x")?c.decode(e.slice(2)):c.decode(e);if(20!==t.length)throw new Error("Invalid hex encoded solidity address length:\n expected length 40, got length ".concat(e.length));var n=u.default.fromBytesBE([0,0,0,0].concat((0,a.default)(t.slice(0,4)))),r=u.default.fromBytesBE(Array.from(t.slice(4,12))),o=u.default.fromBytesBE(Array.from(t.slice(12,20)));return[n,r,o]},t.fromString=function(e){var t=y(e);if(Number.isNaN(t.shard)||Number.isNaN(t.realm)||Number.isNaN(t.numOrHex))throw new Error("invalid format for entity ID");return{shard:null!=t.shard?u.default.fromString(t.shard):u.default.ZERO,realm:null!=t.realm?u.default.fromString(t.realm):u.default.ZERO,num:u.default.fromString(t.numOrHex),checksum:t.checksum}},t.fromStringSplitter=y,t.toSolidityAddress=function(e){var t=new Uint8Array(20),n=l.safeView(t),r=(0,i.default)(e,3),o=r[0],a=r[1],u=r[2];return n.setUint32(0,l.convertToNumber(o)),n.setUint32(8,l.convertToNumber(a)),n.setUint32(16,l.convertToNumber(u)),c.encode(t)},t.toStringWithChecksum=function(e,t){if(null==t._network._ledgerId)throw new Error("cannot calculate checksum with a client that does not contain a recognzied ledger ID");var n=m(t._network._ledgerId._toStringForChecksum(),e);return"".concat(e,"-").concat(n)},t.validateChecksum=function(e,t,n,r,o){if(null==o._network._ledgerId||null==r)return;var a=m(o._network._ledgerId._toStringForChecksum(),"".concat(e.toString(),".").concat(t.toString(),".").concat(n.toString()));if(r!=a)throw new s.default(e,t,n,r,a)};var a=r(n(41)),i=r(n(9)),u=r(n(21)),c=d(n(78)),s=r(n(975)),l=d(n(253));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=RegExp("^(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))(?:-([a-z]{5}))?$"),h=/^(\d+)(?:\.(\d+)\.([a-fA-F0-9]+))?(?:-([a-z]{5}))?$/;function y(e){var t=h.exec(e);if(null==t)throw new Error("failed to parse entity id: ".concat(e));return null==t[2]&&null==t[3]?{shard:"0",realm:"0",numOrHex:t[1],checksum:t[4]}:{shard:t[1],realm:t[2],numOrHex:t[3],checksum:t[4]}}function m(e,t){for(var n="",r=[],o=0,a=0,i=0,u=0,c=0,s=11881376,l="a".charCodeAt(0),f=e+"000000000000",d=[],p=0;p=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n1?t.split("/"):t.split("@"),o=f(r);try{for(o.s();!(n=o.n()).done;){if(""===n.value)throw new Error("invalid format for NftId: use [token]/[serial] or [token]@[serial]")}}catch(e){o.e(e)}finally{o.f()}return new e(c.default.fromString(r[0]),s.default.fromString(r[1]))}},{key:"_fromProtobuf",value:function(t){return new e(c.default._fromProtobuf(t.tokenID),null!=t.serialNumber?t.serialNumber:s.default.ZERO)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.NftID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0)(n(3));var o={};function a(e,t,n){n||(n=Error);var r=function(e){var n,r;function o(n,r,o){return e.call(this,function(e,n,r){return"string"==typeof t?t:t(e,n,r)}(n,r,o))||this}return r=e,(n=o).prototype=Object.create(r.prototype),n.prototype.constructor=n,n.__proto__=r,o}(n);r.prototype.name=n.name,r.prototype.code=e,o[e]=r}function i(e,t){if(Array.isArray(e)){var n=e.length;return e=e.map((function(e){return String(e)})),n>2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}a("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),a("ERR_INVALID_ARG_TYPE",(function(e,t,n){var o,a,u,c;if("string"==typeof t&&(a="not ",t.substr(!u||u<0?0:+u,a.length)===a)?(o="must not be",t=t.replace(/^not /,"")):o="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))c="The ".concat(e," ").concat(o," ").concat(i(t,"type"));else{var s=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+t.length>e.length)&&-1!==e.indexOf(t,n)}(e,".")?"property":"argument";c='The "'.concat(e,'" ').concat(s," ").concat(o," ").concat(i(t,"type"))}return c+=". Received type ".concat((0,r.default)(n))}),TypeError),a("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),a("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),a("ERR_STREAM_PREMATURE_CLOSE","Premature close"),a("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),a("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),a("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),a("ERR_STREAM_WRITE_AFTER_END","write after end"),a("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),a("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),a("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=o},function(e,t,n){"use strict";(function(t){var r=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=s;var o=n(548),a=n(552);n(16)(s,o);for(var i=r(a.prototype),u=0;u=0}))},t.toAscii=function(e){var t="",n=0,r=e.length;for("0x"===e.substring(0,2)&&(n=2);n2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}a("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),a("ERR_INVALID_ARG_TYPE",(function(e,t,n){var o,a,u,c;if("string"==typeof t&&(a="not ",t.substr(!u||u<0?0:+u,a.length)===a)?(o="must not be",t=t.replace(/^not /,"")):o="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))c="The ".concat(e," ").concat(o," ").concat(i(t,"type"));else{var s=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+t.length>e.length)&&-1!==e.indexOf(t,n)}(e,".")?"property":"argument";c='The "'.concat(e,'" ').concat(s," ").concat(o," ").concat(i(t,"type"))}return c+=". Received type ".concat((0,r.default)(n))}),TypeError),a("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),a("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),a("ERR_STREAM_PREMATURE_CLOSE","Premature close"),a("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),a("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),a("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),a("ERR_STREAM_WRITE_AFTER_END","write after end"),a("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),a("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),a("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=o},function(e,t,n){"use strict";(function(t){var r=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=s;var o=n(569),a=n(573);n(51)(s,o);for(var i=r(a.prototype),u=0;u=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0,o=(n-r)/4294967296;this._block.writeUInt32BE(o,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var a=this._hash();return e?a.toString(e):a},o.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=o},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1));t.default=function e(){(0,o.default)(this,e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t._checksum=m,t._parseAddress=function(e,t){var n=p.exec(t);if(null===n){return{status:0}}var r=[u.default.fromString(n[1]),u.default.fromString(n[2]),u.default.fromString(n[3])],o="".concat(r[0].toString(),".").concat(r[1].toString(),".").concat(r[2].toString()),a=m(e,o);return{status:void 0===n[4]?2:a==n[4]?3:1,num1:r[0],num2:r[1],num3:r[2],givenChecksum:n[4],correctChecksum:a,noChecksumFormat:o,withChecksumFormat:"".concat(o,"-").concat(a)}},t.compare=function(e,t){var n=e[0].compare(t[0]);if(0!=n)return n;if(0!=(n=e[1].compare(t[1])))return n;return e[2].compare(t[2])},t.constructor=function(e,t,n){if(null==t&&null!=n||null!=t&&null==n)throw new Error("invalid entity ID");var r="number"==typeof e||u.default.isLong(e)?[null!=n?u.default.fromValue(e):u.default.ZERO,null!=t?u.default.fromValue(t):u.default.ZERO,null!=n?u.default.fromValue(n):u.default.fromValue(e)]:[null!=e.shard?u.default.fromValue(e.shard):u.default.ZERO,null!=e.realm?u.default.fromValue(e.realm):u.default.ZERO,u.default.fromValue(e.num)],o=(0,i.default)(r,3),a=o[0],c=o[1],s=o[2];if(a.isNegative()||c.isNegative()||s.isNegative())throw new Error("negative numbers are not allowed in IDs");return{shard:a,realm:c,num:s}},t.fromSolidityAddress=function(e){var t=e.startsWith("0x")?c.decode(e.slice(2)):c.decode(e);if(20!==t.length)throw new Error("Invalid hex encoded solidity address length:\n expected length 40, got length ".concat(e.length));var n=u.default.fromBytesBE([0,0,0,0].concat((0,a.default)(t.slice(0,4)))),r=u.default.fromBytesBE(Array.from(t.slice(4,12))),o=u.default.fromBytesBE(Array.from(t.slice(12,20)));return[n,r,o]},t.fromString=function(e){var t=y(e);if(Number.isNaN(t.shard)||Number.isNaN(t.realm)||Number.isNaN(t.numOrHex))throw new Error("invalid format for entity ID");return{shard:null!=t.shard?u.default.fromString(t.shard):u.default.ZERO,realm:null!=t.realm?u.default.fromString(t.realm):u.default.ZERO,num:u.default.fromString(t.numOrHex),checksum:t.checksum}},t.fromStringSplitter=y,t.toSolidityAddress=function(e){var t=new Uint8Array(20),n=l.safeView(t),r=(0,i.default)(e,3),o=r[0],a=r[1],u=r[2];return n.setUint32(0,l.convertToNumber(o)),n.setUint32(8,l.convertToNumber(a)),n.setUint32(16,l.convertToNumber(u)),c.encode(t)},t.toStringWithChecksum=function(e,t){if(null==t._network._ledgerId)throw new Error("cannot calculate checksum with a client that does not contain a recognzied ledger ID");var n=m(t._network._ledgerId._toStringForChecksum(),e);return"".concat(e,"-").concat(n)},t.validateChecksum=function(e,t,n,r,o){if(null==o._network._ledgerId||null==r)return;var a=m(o._network._ledgerId._toStringForChecksum(),"".concat(e.toString(),".").concat(t.toString(),".").concat(n.toString()));if(r!=a)throw new s.default(e,t,n,r,a)};var a=r(n(41)),i=r(n(9)),u=r(n(18)),c=d(n(81)),s=r(n(1208)),l=d(n(211));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=RegExp("^(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))(?:-([a-z]{5}))?$"),h=/^(\d+)(?:\.(\d+)\.([a-fA-F0-9]+))?(?:-([a-z]{5}))?$/;function y(e){var t=h.exec(e);if(null==t)throw new Error("failed to parse entity id: ".concat(e));return null==t[2]&&null==t[3]?{shard:"0",realm:"0",numOrHex:t[1],checksum:t[4]}:{shard:t[1],realm:t[2],numOrHex:t[3],checksum:t[4]}}function m(e,t){for(var n="",r=[],o=0,a=0,i=0,u=0,c=0,s=11881376,l="a".charCodeAt(0),f=e+"000000000000",d=[],p=0;p=t.value},trace:function(){this.invoke(u.TRACE,arguments)},debug:function(){this.invoke(u.DEBUG,arguments)},info:function(){this.invoke(u.INFO,arguments)},warn:function(){this.invoke(u.WARN,arguments)},error:function(){this.invoke(u.ERROR,arguments)},time:function(e){"string"==typeof e&&e.length>0&&this.invoke(u.TIME,[e,"start"])},timeEnd:function(e){"string"==typeof e&&e.length>0&&this.invoke(u.TIME,[e,"end"])},invoke:function(e,t){i&&this.enabledFor(e)&&i(t,l({level:e},this.context))}};var p,h=new d({filterLevel:u.OFF});(p=u).enabledFor=s(h,h.enabledFor),p.trace=s(h,h.trace),p.debug=s(h,h.debug),p.time=s(h,h.time),p.timeEnd=s(h,h.timeEnd),p.info=s(h,h.info),p.warn=s(h,h.warn),p.error=s(h,h.error),p.log=p.info,u.setHandler=function(e){i=e},u.setLevel=function(e){for(var t in h.setLevel(e),c)c.hasOwnProperty(t)&&c[t].setLevel(e)},u.getLevel=function(){return h.getLevel()},u.get=function(e){return c[e]||(c[e]=new d(l({name:e},h.context)))},u.createDefaultHandler=function(e){(e=e||{}).formatter=e.formatter||function(e,t){t.name&&e.unshift("["+t.name+"]")};var t={},n=function(e,t){Function.prototype.apply.call(e,console,t)};return"undefined"==typeof console?function(){}:function(r,o){r=Array.prototype.slice.call(r);var a,i=console.log;o.level===u.TIME?(a=(o.name?"["+o.name+"] ":"")+r[0],"start"===r[1]?console.time?console.time(a):t[a]=(new Date).getTime():console.timeEnd?console.timeEnd(a):n(i,[a+": "+((new Date).getTime()-t[a])+"ms"])):(o.level===u.WARN&&console.warn?i=console.warn:o.level===u.ERROR&&console.error?i=console.error:o.level===u.INFO&&console.info?i=console.info:o.level===u.DEBUG&&console.debug?i=console.debug:o.level===u.TRACE&&console.trace&&(i=console.trace),e.formatter(r,o),n(i,r))}},u.useDefaults=function(e){u.setLevel(e&&e.defaultLevel||u.DEBUG),u.setHandler(u.createDefaultHandler(e))},u.setDefaults=u.useDefaults,void 0===(o="function"==typeof(r=u)?r.call(t,n,t,e):r)||(e.exports=o)}()},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38)),c=r(n(29)),s=r(n(18));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n1?t.split("/"):t.split("@"),o=f(r);try{for(o.s();!(n=o.n()).done;){if(""===n.value)throw new Error("invalid format for NftId: use [token]/[serial] or [token]@[serial]")}}catch(e){o.e(e)}finally{o.f()}return new e(c.default.fromString(r[0]),s.default.fromString(r[1]))}},{key:"_fromProtobuf",value:function(t){return new e(c.default._fromProtobuf(t.tokenID),null!=t.serialNumber?t.serialNumber:s.default.ZERO)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.NftID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1));t.default=function e(){(0,o.default)(this,e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t._checksum=m,t._parseAddress=function(e,t){var n=p.exec(t);if(null===n){return{status:0}}var r=[u.default.fromString(n[1]),u.default.fromString(n[2]),u.default.fromString(n[3])],o="".concat(r[0].toString(),".").concat(r[1].toString(),".").concat(r[2].toString()),a=m(e,o);return{status:void 0===n[4]?2:a==n[4]?3:1,num1:r[0],num2:r[1],num3:r[2],givenChecksum:n[4],correctChecksum:a,noChecksumFormat:o,withChecksumFormat:"".concat(o,"-").concat(a)}},t.compare=function(e,t){var n=e[0].compare(t[0]);if(0!=n)return n;if(0!=(n=e[1].compare(t[1])))return n;return e[2].compare(t[2])},t.constructor=function(e,t,n){if(null==t&&null!=n||null!=t&&null==n)throw new Error("invalid entity ID");var r="number"==typeof e||u.default.isLong(e)?[null!=n?u.default.fromValue(e):u.default.ZERO,null!=t?u.default.fromValue(t):u.default.ZERO,null!=n?u.default.fromValue(n):u.default.fromValue(e)]:[null!=e.shard?u.default.fromValue(e.shard):u.default.ZERO,null!=e.realm?u.default.fromValue(e.realm):u.default.ZERO,u.default.fromValue(e.num)],o=(0,i.default)(r,3),a=o[0],c=o[1],s=o[2];if(a.isNegative()||c.isNegative()||s.isNegative())throw new Error("negative numbers are not allowed in IDs");return{shard:a,realm:c,num:s}},t.fromSolidityAddress=function(e){var t=e.startsWith("0x")?c.decode(e.slice(2)):c.decode(e);if(20!==t.length)throw new Error("Invalid hex encoded solidity address length:\n expected length 40, got length ".concat(e.length));var n=u.default.fromBytesBE([0,0,0,0].concat((0,a.default)(t.slice(0,4)))),r=u.default.fromBytesBE(Array.from(t.slice(4,12))),o=u.default.fromBytesBE(Array.from(t.slice(12,20)));return[n,r,o]},t.fromString=function(e){var t=y(e);if(Number.isNaN(t.shard)||Number.isNaN(t.realm)||Number.isNaN(t.numOrHex))throw new Error("invalid format for entity ID");return{shard:null!=t.shard?u.default.fromString(t.shard):u.default.ZERO,realm:null!=t.realm?u.default.fromString(t.realm):u.default.ZERO,num:u.default.fromString(t.numOrHex),checksum:t.checksum}},t.fromStringSplitter=y,t.toSolidityAddress=function(e){var t=new Uint8Array(20),n=l.safeView(t),r=(0,i.default)(e,3),o=r[0],a=r[1],u=r[2];return n.setUint32(0,l.convertToNumber(o)),n.setUint32(8,l.convertToNumber(a)),n.setUint32(16,l.convertToNumber(u)),c.encode(t)},t.toStringWithChecksum=function(e,t){if(null==t._network._ledgerId)throw new Error("cannot calculate checksum with a client that does not contain a recognzied ledger ID");var n=m(t._network._ledgerId._toStringForChecksum(),e);return"".concat(e,"-").concat(n)},t.validateChecksum=function(e,t,n,r,o){if(null==o._network._ledgerId||null==r)return;var a=m(o._network._ledgerId._toStringForChecksum(),"".concat(e.toString(),".").concat(t.toString(),".").concat(n.toString()));if(r!=a)throw new s.default(e,t,n,r,a)};var a=r(n(41)),i=r(n(9)),u=r(n(19)),c=d(n(84)),s=r(n(1352)),l=d(n(220));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}function d(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var p=RegExp("^(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))(?:-([a-z]{5}))?$"),h=/^(\d+)(?:\.(\d+)\.([a-fA-F0-9]+))?(?:-([a-z]{5}))?$/;function y(e){var t=h.exec(e);if(null==t)throw new Error("failed to parse entity id: ".concat(e));return null==t[2]&&null==t[3]?{shard:"0",realm:"0",numOrHex:t[1],checksum:t[4]}:{shard:t[1],realm:t[2],numOrHex:t[3],checksum:t[4]}}function m(e,t){for(var n="",r=[],o=0,a=0,i=0,u=0,c=0,s=11881376,l="a".charCodeAt(0),f=e+"000000000000",d=[],p=0;p=t.value},trace:function(){this.invoke(u.TRACE,arguments)},debug:function(){this.invoke(u.DEBUG,arguments)},info:function(){this.invoke(u.INFO,arguments)},warn:function(){this.invoke(u.WARN,arguments)},error:function(){this.invoke(u.ERROR,arguments)},time:function(e){"string"==typeof e&&e.length>0&&this.invoke(u.TIME,[e,"start"])},timeEnd:function(e){"string"==typeof e&&e.length>0&&this.invoke(u.TIME,[e,"end"])},invoke:function(e,t){i&&this.enabledFor(e)&&i(t,l({level:e},this.context))}};var p,h=new d({filterLevel:u.OFF});(p=u).enabledFor=s(h,h.enabledFor),p.trace=s(h,h.trace),p.debug=s(h,h.debug),p.time=s(h,h.time),p.timeEnd=s(h,h.timeEnd),p.info=s(h,h.info),p.warn=s(h,h.warn),p.error=s(h,h.error),p.log=p.info,u.setHandler=function(e){i=e},u.setLevel=function(e){for(var t in h.setLevel(e),c)c.hasOwnProperty(t)&&c[t].setLevel(e)},u.getLevel=function(){return h.getLevel()},u.get=function(e){return c[e]||(c[e]=new d(l({name:e},h.context)))},u.createDefaultHandler=function(e){(e=e||{}).formatter=e.formatter||function(e,t){t.name&&e.unshift("["+t.name+"]")};var t={},n=function(e,t){Function.prototype.apply.call(e,console,t)};return"undefined"==typeof console?function(){}:function(r,o){r=Array.prototype.slice.call(r);var a,i=console.log;o.level===u.TIME?(a=(o.name?"["+o.name+"] ":"")+r[0],"start"===r[1]?console.time?console.time(a):t[a]=(new Date).getTime():console.timeEnd?console.timeEnd(a):n(i,[a+": "+((new Date).getTime()-t[a])+"ms"])):(o.level===u.WARN&&console.warn?i=console.warn:o.level===u.ERROR&&console.error?i=console.error:o.level===u.INFO&&console.info?i=console.info:o.level===u.DEBUG&&console.debug?i=console.debug:o.level===u.TRACE&&console.trace&&(i=console.trace),e.formatter(r,o),n(i,r))}},u.useDefaults=function(e){u.setLevel(e&&e.defaultLevel||u.DEBUG),u.setHandler(u.createDefaultHandler(e))},u.setDefaults=u.useDefaults,void 0===(o="function"==typeof(r=u)?r.call(t,n,t,e):r)||(e.exports=o)}()},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39)),c=r(n(30)),s=r(n(19));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n1?t.split("/"):t.split("@"),o=f(r);try{for(o.s();!(n=o.n()).done;){if(""===n.value)throw new Error("invalid format for NftId: use [token]/[serial] or [token]@[serial]")}}catch(e){o.e(e)}finally{o.f()}return new e(c.default.fromString(r[0]),s.default.fromString(r[1]))}},{key:"_fromProtobuf",value:function(t){return new e(c.default._fromProtobuf(t.tokenID),null!=t.serialNumber?t.serialNumber:s.default.ZERO)}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.NftID.decode(t))}}]),e}();t.default=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayEqual=function(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;var n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=new DataView(t.buffer,t.byteOffset,t.byteLength),o=e.byteLength;for(;o--;)if(n.getUint8(o)!==r.getUint8(o))return!1;return!0},t.arrayStartsWith=function(e,t){if(e.byteLength=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var o=0;o>>24&255,r[o++]=e>>>16&255,r[o++]=e>>>8&255,r[o++]=255&e}else for(r[o++]=255&e,r[o++]=e>>>8&255,r[o++]=e>>>16&255,r[o++]=e>>>24&255,r[o++]=0,r[o++]=0,r[o++]=0,r[o++]=0,a=8;a0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._denominatingTokenId,null!=r.denominatingTokenId&&e.setDenominatingTokenId(r.denominatingTokenId),e._amount,null!=r.amount&&e.setAmount(r.amount),e}return(0,a.default)(n,[{key:"setHbarAmount",value:function(e){return this._amount=e.toTinybars(),this._denominatingTokenId=null,this}},{key:"hbarAmount",get:function(){return null!=this._denominatingTokenId?null:p.default.fromTinybars(null!=this._amount?this._amount:0)}},{key:"setDenominatingTokenToSameToken",value:function(){return this._denominatingTokenId=new s.default(0,0,0),this}},{key:"denominatingTokenId",get:function(){return this._denominatingTokenId}},{key:"setDenominatingTokenId",value:function(e){return this._denominatingTokenId="string"==typeof e?s.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?d.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fixedFee:{denominatingTokenId:null!=this._denominatingTokenId?this._denominatingTokenId._toProtobuf():null,amount:this._amount}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fixedFee;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?f.default._fromProtobuf(e.feeCollectorAccountId):void 0,denominatingTokenId:null!=t.denominatingTokenId?s.default._fromProtobuf(t.denominatingTokenId):void 0,amount:null!=t.amount?t.amount:void 0})}}]),n}(l.default);t.default=y},function(e,t,n){"use strict";var r=n(0)(n(3));function o(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===o(e)},t.isBoolean=function(e){return"boolean"==typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"==typeof e},t.isString=function(e){return"string"==typeof e},t.isSymbol=function(e){return"symbol"===(0,r.default)(e)},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===o(e)},t.isObject=function(e){return"object"===(0,r.default)(e)&&null!==e},t.isDate=function(e){return"[object Date]"===o(e)},t.isError=function(e){return"[object Error]"===o(e)||e instanceof Error},t.isFunction=function(e){return"function"==typeof e},t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"===(0,r.default)(e)||void 0===e},t.isBuffer=n(15).Buffer.isBuffer},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayEqual=function(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;var n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=new DataView(t.buffer,t.byteOffset,t.byteLength),o=e.byteLength;for(;o--;)if(n.getUint8(o)!==r.getUint8(o))return!1;return!0},t.arrayStartsWith=function(e,t){if(e.byteLength=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var o=0;o>>24&255,r[o++]=e>>>16&255,r[o++]=e>>>8&255,r[o++]=255&e}else for(r[o++]=255&e,r[o++]=e>>>8&255,r[o++]=e>>>16&255,r[o++]=e>>>24&255,r[o++]=0,r[o++]=0,r[o++]=0,r[o++]=0,a=8;a0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._denominatingTokenId,null!=r.denominatingTokenId&&e.setDenominatingTokenId(r.denominatingTokenId),e._amount,null!=r.amount&&e.setAmount(r.amount),e}return(0,a.default)(n,[{key:"setHbarAmount",value:function(e){return this._amount=e.toTinybars(),this._denominatingTokenId=null,this}},{key:"hbarAmount",get:function(){return null!=this._denominatingTokenId?null:p.default.fromTinybars(null!=this._amount?this._amount:0)}},{key:"setDenominatingTokenToSameToken",value:function(){return this._denominatingTokenId=new s.default(0,0,0),this}},{key:"denominatingTokenId",get:function(){return this._denominatingTokenId}},{key:"setDenominatingTokenId",value:function(e){return this._denominatingTokenId="string"==typeof e?s.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?d.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fixedFee:{denominatingTokenId:null!=this._denominatingTokenId?this._denominatingTokenId._toProtobuf():null,amount:this._amount}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fixedFee;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?f.default._fromProtobuf(e.feeCollectorAccountId):void 0,denominatingTokenId:null!=t.denominatingTokenId?s.default._fromProtobuf(t.denominatingTokenId):void 0,amount:null!=t.amount?t.amount:void 0})}}]),n}(l.default);t.default=y},function(e,t,n){"use strict";(function(t){e.exports=function(e,n){for(var r=Math.min(e.length,n.length),o=new t(r),a=0;a=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var o=0;o>>24&255,r[o++]=e>>>16&255,r[o++]=e>>>8&255,r[o++]=255&e}else for(r[o++]=255&e,r[o++]=e>>>8&255,r[o++]=e>>>16&255,r[o++]=e>>>24&255,r[o++]=0,r[o++]=0,r[o++]=0,r[o++]=0,a=8;a1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength;if(!(Number.isInteger(t)&&t>=0))throw new Error("Invalid offset!");if(!(Number.isInteger(n)&&n>=0))throw new Error("Invalid length!");return new DataView(e.buffer,e.byteOffset+t,Math.min(n,e.byteLength-t))};var o=r(n(3)),a=r(n(153)),i=r(n(18));t.REQUIRE_NON_NULL_ERROR="This value cannot be null | undefined.";t.REQUIRE_STRING_ERROR="This value must be a string.";t.REQUIRE_UINT8ARRAY_ERROR="This value must be a Uint8Array.";t.REQUIRE_STRING_OR_UINT8ARRAY_ERROR="This value must be a string or Uint8Array.";t.REQUIRE_NUMBER_ERROR="This value must be a Number.";t.REQUIRE_BIGNUMBER_ERROR="This value must be a BigNumber.";t.REQUIRE_ARRAY_ERROR="The provided variable must be an Array.";t.REQUIRE_LONG_ERROR="This value must be a Long.";t.REQUIRE_TYPE_ERROR="The provided variables are not matching types.";t.FUNCTION_CONVERT_TO_BIGNUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";t.FUNCTION_CONVERT_TO_NUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";function u(e){return null!=e&&null!=e}function c(e,t){return(0,o.default)(e)==(0,o.default)(t)}function s(e){return u(e)&&e instanceof Uint8Array}function l(e){return u(e)&&("number"==typeof e||e instanceof Number)}function f(e){return u(e)&&e instanceof a.default}function d(e){return u(e)&&e instanceof i.default}function p(e){return u(e)&&"string"==typeof e}function h(e){return u(e)&&(p(e)||s(e))}function y(e){if(u(e))return e;throw new Error("This value cannot be null | undefined.")}function m(e){if(y(e),f(e)||p(e)||l(e)||d(e))return new a.default(e);throw new Error("This value must be a String, Number, or BigNumber to be converted.")}t.FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR="Unable to parse given variable. Returns NaN."},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e){return(0,o.default)(this,n),t.call(this,e,"transaction ".concat(e.transactionId.toString()," failed precheck with status ").concat(e.status.toString()))}return n}(r(n(349)).default);t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(13)),u=r(n(31)),c=function(){function e(t){(0,o.default)(this,e),this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount.toTinybars()}}}],[{key:"_fromProtobuf",value:function(t){return new e({spenderAccountId:i.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?i.default._fromProtobuf(t.owner):null,amount:u.default.fromTinybars(null!=t.amount?t.amount:0)})}},{key:"_fromGrantedProtobuf",value:function(t){return new e({spenderAccountId:i.default._fromProtobuf(t.spender),ownerAccountId:null,amount:u.default.fromTinybars(null!=t.amount?t.amount:0)})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(29)),u=r(n(13)),c=r(n(18)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount}}}],[{key:"_fromProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,amount:null!=t.amount?c.default.fromValue(t.amount):null})}},{key:"_fromGrantedProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null,amount:null!=t.amount?c.default.fromValue(t.amount):null})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(29)),u=r(n(13)),c=r(n(18)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.serialNumbers=t.serialNumbers,this.allSerials=t.allSerials,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,approvedForAll:null==this.serialNumbers?{value:this.allSerials}:null,serialNumbers:this.serialNumbers}}}],[{key:"_fromProtobuf",value:function(t){var n=null!=t.approvedForAll&&1==t.approvedForAll.value;return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,serialNumbers:n?null:null!=t.serialNumbers?t.serialNumbers.map((function(e){return c.default.fromValue(e)})):[],allSerials:n})}},{key:"_fromGrantedProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null,serialNumbers:null!=t.approvedForAll&&t.approvedForAll?null:null!=t.serialNumbers?t.serialNumbers.map((function(e){return c.default.fromValue(e)})):[],allSerials:null!=t.approvedForAll&&t.approvedForAll})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(29)),l=r(n(274)),f=r(n(13)),d=r(n(18)),p=r(n(31));function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var y=function(e){(0,i.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._denominatingTokenId,null!=r.denominatingTokenId&&e.setDenominatingTokenId(r.denominatingTokenId),e._amount,null!=r.amount&&e.setAmount(r.amount),e}return(0,a.default)(n,[{key:"setHbarAmount",value:function(e){return this._amount=e.toTinybars(),this._denominatingTokenId=null,this}},{key:"hbarAmount",get:function(){return null!=this._denominatingTokenId?null:p.default.fromTinybars(null!=this._amount?this._amount:0)}},{key:"setDenominatingTokenToSameToken",value:function(){return this._denominatingTokenId=new s.default(0,0,0),this}},{key:"denominatingTokenId",get:function(){return this._denominatingTokenId}},{key:"setDenominatingTokenId",value:function(e){return this._denominatingTokenId="string"==typeof e?s.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?d.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fixedFee:{denominatingTokenId:null!=this._denominatingTokenId?this._denominatingTokenId._toProtobuf():null,amount:this._amount}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fixedFee;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?f.default._fromProtobuf(e.feeCollectorAccountId):void 0,denominatingTokenId:null!=t.denominatingTokenId?s.default._fromProtobuf(t.denominatingTokenId):void 0,amount:null!=t.amount?t.amount:void 0})}}]),n}(l.default);t.default=y},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayEqual=function(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;var n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=new DataView(t.buffer,t.byteOffset,t.byteLength),o=e.byteLength;for(;o--;)if(n.getUint8(o)!==r.getUint8(o))return!1;return!0},t.arrayStartsWith=function(e,t){if(e.byteLength=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var o=0;o>>24&255,r[o++]=e>>>16&255,r[o++]=e>>>8&255,r[o++]=255&e}else for(r[o++]=255&e,r[o++]=e>>>8&255,r[o++]=e>>>16&255,r[o++]=e>>>24&255,r[o++]=0,r[o++]=0,r[o++]=0,r[o++]=0,a=8;a1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength;if(!(Number.isInteger(t)&&t>=0))throw new Error("Invalid offset!");if(!(Number.isInteger(n)&&n>=0))throw new Error("Invalid length!");return new DataView(e.buffer,e.byteOffset+t,Math.min(n,e.byteLength-t))};var o=r(n(3)),a=r(n(159)),i=r(n(19));t.REQUIRE_NON_NULL_ERROR="This value cannot be null | undefined.";t.REQUIRE_STRING_ERROR="This value must be a string.";t.REQUIRE_UINT8ARRAY_ERROR="This value must be a Uint8Array.";t.REQUIRE_STRING_OR_UINT8ARRAY_ERROR="This value must be a string or Uint8Array.";t.REQUIRE_NUMBER_ERROR="This value must be a Number.";t.REQUIRE_BIGNUMBER_ERROR="This value must be a BigNumber.";t.REQUIRE_ARRAY_ERROR="The provided variable must be an Array.";t.REQUIRE_LONG_ERROR="This value must be a Long.";t.REQUIRE_TYPE_ERROR="The provided variables are not matching types.";t.FUNCTION_CONVERT_TO_BIGNUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";t.FUNCTION_CONVERT_TO_NUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";function u(e){return null!=e&&null!=e}function c(e,t){return(0,o.default)(e)==(0,o.default)(t)}function s(e){return u(e)&&e instanceof Uint8Array}function l(e){return u(e)&&("number"==typeof e||e instanceof Number)}function f(e){return u(e)&&e instanceof a.default}function d(e){return u(e)&&e instanceof i.default}function p(e){return u(e)&&"string"==typeof e}function h(e){return u(e)&&(p(e)||s(e))}function y(e){if(u(e))return e;throw new Error("This value cannot be null | undefined.")}function m(e){if(y(e),f(e)||p(e)||l(e)||d(e))return new a.default(e);throw new Error("This value must be a String, Number, or BigNumber to be converted.")}t.FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR="Unable to parse given variable. Returns NaN."},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e){return(0,o.default)(this,n),t.call(this,e,"transaction ".concat(e.transactionId.toString()," failed precheck with status ").concat(e.status.toString()))}return n}(r(n(364)).default);t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(14)),u=r(n(32)),c=function(){function e(t){(0,o.default)(this,e),this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount.toTinybars()}}}],[{key:"_fromProtobuf",value:function(t){return new e({spenderAccountId:i.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?i.default._fromProtobuf(t.owner):null,amount:u.default.fromTinybars(null!=t.amount?t.amount:0)})}},{key:"_fromGrantedProtobuf",value:function(t){return new e({spenderAccountId:i.default._fromProtobuf(t.spender),ownerAccountId:null,amount:u.default.fromTinybars(null!=t.amount?t.amount:0)})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(30)),u=r(n(14)),c=r(n(19)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount}}}],[{key:"_fromProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,amount:null!=t.amount?c.default.fromValue(t.amount):null})}},{key:"_fromGrantedProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null,amount:null!=t.amount?c.default.fromValue(t.amount):null})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(30)),u=r(n(14)),c=r(n(19)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.serialNumbers=t.serialNumbers,this.allSerials=t.allSerials,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,approvedForAll:null==this.serialNumbers?{value:this.allSerials}:null,serialNumbers:this.serialNumbers}}}],[{key:"_fromProtobuf",value:function(t){var n=null!=t.approvedForAll&&1==t.approvedForAll.value;return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,serialNumbers:n?null:null!=t.serialNumbers?t.serialNumbers.map((function(e){return c.default.fromValue(e)})):[],allSerials:n})}},{key:"_fromGrantedProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null,serialNumbers:null!=t.approvedForAll&&t.approvedForAll?null:null!=t.serialNumbers?t.serialNumbers.map((function(e){return c.default.fromValue(e)})):[],allSerials:null!=t.approvedForAll&&t.approvedForAll})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(30)),l=r(n(285)),f=r(n(14)),d=r(n(19)),p=r(n(32));function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var y=function(e){(0,i.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._denominatingTokenId,null!=r.denominatingTokenId&&e.setDenominatingTokenId(r.denominatingTokenId),e._amount,null!=r.amount&&e.setAmount(r.amount),e}return(0,a.default)(n,[{key:"setHbarAmount",value:function(e){return this._amount=e.toTinybars(),this._denominatingTokenId=null,this}},{key:"hbarAmount",get:function(){return null!=this._denominatingTokenId?null:p.default.fromTinybars(null!=this._amount?this._amount:0)}},{key:"setDenominatingTokenToSameToken",value:function(){return this._denominatingTokenId=new s.default(0,0,0),this}},{key:"denominatingTokenId",get:function(){return this._denominatingTokenId}},{key:"setDenominatingTokenId",value:function(e){return this._denominatingTokenId="string"==typeof e?s.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?d.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fixedFee:{denominatingTokenId:null!=this._denominatingTokenId?this._denominatingTokenId._toProtobuf():null,amount:this._amount}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fixedFee;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?f.default._fromProtobuf(e.feeCollectorAccountId):void 0,denominatingTokenId:null!=t.denominatingTokenId?s.default._fromProtobuf(t.denominatingTokenId):void 0,amount:null!=t.amount?t.amount:void 0})}}]),n}(l.default);t.default=y},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="abi/5.0.7"},function(e,t,n){"use strict";e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return u.default}});var o=r(n(166)),a=r(n(711)),i=r(n(376)),u=r(n(392)),c=r(n(377)),s=r(n(105)),l=r(n(381)),f=r(n(292))},function(e,t,n){"use strict";!function(e){var t=function(e){var t,n=new Float64Array(16);if(e)for(t=0;t>24&255,e[t+1]=n>>16&255,e[t+2]=n>>8&255,e[t+3]=255&n,e[t+4]=r>>24&255,e[t+5]=r>>16&255,e[t+6]=r>>8&255,e[t+7]=255&r}function y(e,t,n,r,o){var a,i=0;for(a=0;a>>8)-1}function m(e,t,n,r){return y(e,t,n,r,16)}function b(e,t,n,r){return y(e,t,n,r,32)}function v(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,m=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,b=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,k=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,g=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=a,w=i,I=u,A=c,T=s,O=l,P=f,E=d,S=p,R=h,D=y,C=m,N=b,B=v,M=k,j=g,x=0;x<20;x+=2)_^=(o=(N^=(o=(S^=(o=(T^=(o=_+N|0)<<7|o>>>25)+_|0)<<9|o>>>23)+T|0)<<13|o>>>19)+S|0)<<18|o>>>14,O^=(o=(w^=(o=(B^=(o=(R^=(o=O+w|0)<<7|o>>>25)+O|0)<<9|o>>>23)+R|0)<<13|o>>>19)+B|0)<<18|o>>>14,D^=(o=(P^=(o=(I^=(o=(M^=(o=D+P|0)<<7|o>>>25)+D|0)<<9|o>>>23)+M|0)<<13|o>>>19)+I|0)<<18|o>>>14,j^=(o=(C^=(o=(E^=(o=(A^=(o=j+C|0)<<7|o>>>25)+j|0)<<9|o>>>23)+A|0)<<13|o>>>19)+E|0)<<18|o>>>14,_^=(o=(A^=(o=(I^=(o=(w^=(o=_+A|0)<<7|o>>>25)+_|0)<<9|o>>>23)+w|0)<<13|o>>>19)+I|0)<<18|o>>>14,O^=(o=(T^=(o=(E^=(o=(P^=(o=O+T|0)<<7|o>>>25)+O|0)<<9|o>>>23)+P|0)<<13|o>>>19)+E|0)<<18|o>>>14,D^=(o=(R^=(o=(S^=(o=(C^=(o=D+R|0)<<7|o>>>25)+D|0)<<9|o>>>23)+C|0)<<13|o>>>19)+S|0)<<18|o>>>14,j^=(o=(M^=(o=(B^=(o=(N^=(o=j+M|0)<<7|o>>>25)+j|0)<<9|o>>>23)+N|0)<<13|o>>>19)+B|0)<<18|o>>>14;_=_+a|0,w=w+i|0,I=I+u|0,A=A+c|0,T=T+s|0,O=O+l|0,P=P+f|0,E=E+d|0,S=S+p|0,R=R+h|0,D=D+y|0,C=C+m|0,N=N+b|0,B=B+v|0,M=M+k|0,j=j+g|0,e[0]=_>>>0&255,e[1]=_>>>8&255,e[2]=_>>>16&255,e[3]=_>>>24&255,e[4]=w>>>0&255,e[5]=w>>>8&255,e[6]=w>>>16&255,e[7]=w>>>24&255,e[8]=I>>>0&255,e[9]=I>>>8&255,e[10]=I>>>16&255,e[11]=I>>>24&255,e[12]=A>>>0&255,e[13]=A>>>8&255,e[14]=A>>>16&255,e[15]=A>>>24&255,e[16]=T>>>0&255,e[17]=T>>>8&255,e[18]=T>>>16&255,e[19]=T>>>24&255,e[20]=O>>>0&255,e[21]=O>>>8&255,e[22]=O>>>16&255,e[23]=O>>>24&255,e[24]=P>>>0&255,e[25]=P>>>8&255,e[26]=P>>>16&255,e[27]=P>>>24&255,e[28]=E>>>0&255,e[29]=E>>>8&255,e[30]=E>>>16&255,e[31]=E>>>24&255,e[32]=S>>>0&255,e[33]=S>>>8&255,e[34]=S>>>16&255,e[35]=S>>>24&255,e[36]=R>>>0&255,e[37]=R>>>8&255,e[38]=R>>>16&255,e[39]=R>>>24&255,e[40]=D>>>0&255,e[41]=D>>>8&255,e[42]=D>>>16&255,e[43]=D>>>24&255,e[44]=C>>>0&255,e[45]=C>>>8&255,e[46]=C>>>16&255,e[47]=C>>>24&255,e[48]=N>>>0&255,e[49]=N>>>8&255,e[50]=N>>>16&255,e[51]=N>>>24&255,e[52]=B>>>0&255,e[53]=B>>>8&255,e[54]=B>>>16&255,e[55]=B>>>24&255,e[56]=M>>>0&255,e[57]=M>>>8&255,e[58]=M>>>16&255,e[59]=M>>>24&255,e[60]=j>>>0&255,e[61]=j>>>8&255,e[62]=j>>>16&255,e[63]=j>>>24&255}(e,t,n,r)}function k(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,m=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,b=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,k=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,g=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=0;_<20;_+=2)a^=(o=(b^=(o=(p^=(o=(s^=(o=a+b|0)<<7|o>>>25)+a|0)<<9|o>>>23)+s|0)<<13|o>>>19)+p|0)<<18|o>>>14,l^=(o=(i^=(o=(v^=(o=(h^=(o=l+i|0)<<7|o>>>25)+l|0)<<9|o>>>23)+h|0)<<13|o>>>19)+v|0)<<18|o>>>14,y^=(o=(f^=(o=(u^=(o=(k^=(o=y+f|0)<<7|o>>>25)+y|0)<<9|o>>>23)+k|0)<<13|o>>>19)+u|0)<<18|o>>>14,g^=(o=(m^=(o=(d^=(o=(c^=(o=g+m|0)<<7|o>>>25)+g|0)<<9|o>>>23)+c|0)<<13|o>>>19)+d|0)<<18|o>>>14,a^=(o=(c^=(o=(u^=(o=(i^=(o=a+c|0)<<7|o>>>25)+a|0)<<9|o>>>23)+i|0)<<13|o>>>19)+u|0)<<18|o>>>14,l^=(o=(s^=(o=(d^=(o=(f^=(o=l+s|0)<<7|o>>>25)+l|0)<<9|o>>>23)+f|0)<<13|o>>>19)+d|0)<<18|o>>>14,y^=(o=(h^=(o=(p^=(o=(m^=(o=y+h|0)<<7|o>>>25)+y|0)<<9|o>>>23)+m|0)<<13|o>>>19)+p|0)<<18|o>>>14,g^=(o=(k^=(o=(v^=(o=(b^=(o=g+k|0)<<7|o>>>25)+g|0)<<9|o>>>23)+b|0)<<13|o>>>19)+v|0)<<18|o>>>14;e[0]=a>>>0&255,e[1]=a>>>8&255,e[2]=a>>>16&255,e[3]=a>>>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]=g>>>0&255,e[13]=g>>>8&255,e[14]=g>>>16&255,e[15]=g>>>24&255,e[16]=f>>>0&255,e[17]=f>>>8&255,e[18]=f>>>16&255,e[19]=f>>>24&255,e[20]=d>>>0&255,e[21]=d>>>8&255,e[22]=d>>>16&255,e[23]=d>>>24&255,e[24]=p>>>0&255,e[25]=p>>>8&255,e[26]=p>>>16&255,e[27]=p>>>24&255,e[28]=h>>>0&255,e[29]=h>>>8&255,e[30]=h>>>16&255,e[31]=h>>>24&255}(e,t,n,r)}var g=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function _(e,t,n,r,o,a,i){var u,c,s=new Uint8Array(16),l=new Uint8Array(64);for(c=0;c<16;c++)s[c]=0;for(c=0;c<8;c++)s[c]=a[c];for(;o>=64;){for(v(l,s,i,g),c=0;c<64;c++)e[t+c]=n[r+c]^l[c];for(u=1,c=8;c<16;c++)u=u+(255&s[c])|0,s[c]=255&u,u>>>=8;o-=64,t+=64,r+=64}if(o>0)for(v(l,s,i,g),c=0;c=64;){for(v(c,u,o,g),i=0;i<64;i++)e[t+i]=c[i];for(a=1,i=8;i<16;i++)a=a+(255&u[i])|0,u[i]=255&a,a>>>=8;n-=64,t+=64}if(n>0)for(v(c,u,o,g),i=0;i>>13|n<<3),r=255&e[4]|(255&e[5])<<8,this.r[2]=7939&(n>>>10|r<<6),o=255&e[6]|(255&e[7])<<8,this.r[3]=8191&(r>>>7|o<<9),a=255&e[8]|(255&e[9])<<8,this.r[4]=255&(o>>>4|a<<12),this.r[5]=a>>>1&8190,i=255&e[10]|(255&e[11])<<8,this.r[6]=8191&(a>>>14|i<<2),u=255&e[12]|(255&e[13])<<8,this.r[7]=8065&(i>>>11|u<<5),c=255&e[14]|(255&e[15])<<8,this.r[8]=8191&(u>>>8|c<<8),this.r[9]=c>>>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 O(e,t,n,r,o,a){var i=new T(a);return i.update(n,r,o),i.finish(e,t),0}function P(e,t,n,r,o,a){var i=new Uint8Array(16);return O(i,0,n,r,o,a),m(e,t,i,0)}function E(e,t,n,r,o){var a;if(n<32)return-1;for(A(e,0,t,0,n,r,o),O(e,16,e,32,n-32,e),a=0;a<16;a++)e[a]=0;return 0}function S(e,t,n,r,o){var a,i=new Uint8Array(32);if(n<32)return-1;if(I(i,0,32,r,o),0!==P(t,16,t,32,n-32,i))return-1;for(A(e,0,t,0,n,r,o),a=0;a<32;a++)e[a]=0;return 0}function R(e,t){var n;for(n=0;n<16;n++)e[n]=0|t[n]}function D(e){var t,n,r=1;for(t=0;t<16;t++)n=e[t]+r+65535,r=Math.floor(n/65536),e[t]=n-65536*r;e[0]+=r-1+37*(r-1)}function C(e,t,n){for(var r,o=~(n-1),a=0;a<16;a++)r=o&(e[a]^t[a]),e[a]^=r,t[a]^=r}function N(e,n){var r,o,a,i=t(),u=t();for(r=0;r<16;r++)u[r]=n[r];for(D(u),D(u),D(u),o=0;o<2;o++){for(i[0]=u[0]-65517,r=1;r<15;r++)i[r]=u[r]-65535-(i[r-1]>>16&1),i[r-1]&=65535;i[15]=u[15]-32767-(i[14]>>16&1),a=i[15]>>16&1,i[14]&=65535,C(u,i,1-a)}for(r=0;r<16;r++)e[2*r]=255&u[r],e[2*r+1]=u[r]>>8}function B(e,t){var n=new Uint8Array(32),r=new Uint8Array(32);return N(n,e),N(r,t),b(n,0,r,0)}function M(e){var t=new Uint8Array(32);return N(t,e),1&t[0]}function j(e,t){var n;for(n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}function x(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]+n[r]}function F(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]-n[r]}function U(e,t,n){var r,o,a=0,i=0,u=0,c=0,s=0,l=0,f=0,d=0,p=0,h=0,y=0,m=0,b=0,v=0,k=0,g=0,_=0,w=0,I=0,A=0,T=0,O=0,P=0,E=0,S=0,R=0,D=0,C=0,N=0,B=0,M=0,j=n[0],x=n[1],F=n[2],U=n[3],L=n[4],G=n[5],K=n[6],z=n[7],Q=n[8],H=n[9],V=n[10],W=n[11],q=n[12],Y=n[13],Z=n[14],J=n[15];a+=(r=t[0])*j,i+=r*x,u+=r*F,c+=r*U,s+=r*L,l+=r*G,f+=r*K,d+=r*z,p+=r*Q,h+=r*H,y+=r*V,m+=r*W,b+=r*q,v+=r*Y,k+=r*Z,g+=r*J,i+=(r=t[1])*j,u+=r*x,c+=r*F,s+=r*U,l+=r*L,f+=r*G,d+=r*K,p+=r*z,h+=r*Q,y+=r*H,m+=r*V,b+=r*W,v+=r*q,k+=r*Y,g+=r*Z,_+=r*J,u+=(r=t[2])*j,c+=r*x,s+=r*F,l+=r*U,f+=r*L,d+=r*G,p+=r*K,h+=r*z,y+=r*Q,m+=r*H,b+=r*V,v+=r*W,k+=r*q,g+=r*Y,_+=r*Z,w+=r*J,c+=(r=t[3])*j,s+=r*x,l+=r*F,f+=r*U,d+=r*L,p+=r*G,h+=r*K,y+=r*z,m+=r*Q,b+=r*H,v+=r*V,k+=r*W,g+=r*q,_+=r*Y,w+=r*Z,I+=r*J,s+=(r=t[4])*j,l+=r*x,f+=r*F,d+=r*U,p+=r*L,h+=r*G,y+=r*K,m+=r*z,b+=r*Q,v+=r*H,k+=r*V,g+=r*W,_+=r*q,w+=r*Y,I+=r*Z,A+=r*J,l+=(r=t[5])*j,f+=r*x,d+=r*F,p+=r*U,h+=r*L,y+=r*G,m+=r*K,b+=r*z,v+=r*Q,k+=r*H,g+=r*V,_+=r*W,w+=r*q,I+=r*Y,A+=r*Z,T+=r*J,f+=(r=t[6])*j,d+=r*x,p+=r*F,h+=r*U,y+=r*L,m+=r*G,b+=r*K,v+=r*z,k+=r*Q,g+=r*H,_+=r*V,w+=r*W,I+=r*q,A+=r*Y,T+=r*Z,O+=r*J,d+=(r=t[7])*j,p+=r*x,h+=r*F,y+=r*U,m+=r*L,b+=r*G,v+=r*K,k+=r*z,g+=r*Q,_+=r*H,w+=r*V,I+=r*W,A+=r*q,T+=r*Y,O+=r*Z,P+=r*J,p+=(r=t[8])*j,h+=r*x,y+=r*F,m+=r*U,b+=r*L,v+=r*G,k+=r*K,g+=r*z,_+=r*Q,w+=r*H,I+=r*V,A+=r*W,T+=r*q,O+=r*Y,P+=r*Z,E+=r*J,h+=(r=t[9])*j,y+=r*x,m+=r*F,b+=r*U,v+=r*L,k+=r*G,g+=r*K,_+=r*z,w+=r*Q,I+=r*H,A+=r*V,T+=r*W,O+=r*q,P+=r*Y,E+=r*Z,S+=r*J,y+=(r=t[10])*j,m+=r*x,b+=r*F,v+=r*U,k+=r*L,g+=r*G,_+=r*K,w+=r*z,I+=r*Q,A+=r*H,T+=r*V,O+=r*W,P+=r*q,E+=r*Y,S+=r*Z,R+=r*J,m+=(r=t[11])*j,b+=r*x,v+=r*F,k+=r*U,g+=r*L,_+=r*G,w+=r*K,I+=r*z,A+=r*Q,T+=r*H,O+=r*V,P+=r*W,E+=r*q,S+=r*Y,R+=r*Z,D+=r*J,b+=(r=t[12])*j,v+=r*x,k+=r*F,g+=r*U,_+=r*L,w+=r*G,I+=r*K,A+=r*z,T+=r*Q,O+=r*H,P+=r*V,E+=r*W,S+=r*q,R+=r*Y,D+=r*Z,C+=r*J,v+=(r=t[13])*j,k+=r*x,g+=r*F,_+=r*U,w+=r*L,I+=r*G,A+=r*K,T+=r*z,O+=r*Q,P+=r*H,E+=r*V,S+=r*W,R+=r*q,D+=r*Y,C+=r*Z,N+=r*J,k+=(r=t[14])*j,g+=r*x,_+=r*F,w+=r*U,I+=r*L,A+=r*G,T+=r*K,O+=r*z,P+=r*Q,E+=r*H,S+=r*V,R+=r*W,D+=r*q,C+=r*Y,N+=r*Z,B+=r*J,g+=(r=t[15])*j,i+=38*(w+=r*F),u+=38*(I+=r*U),c+=38*(A+=r*L),s+=38*(T+=r*G),l+=38*(O+=r*K),f+=38*(P+=r*z),d+=38*(E+=r*Q),p+=38*(S+=r*H),h+=38*(R+=r*V),y+=38*(D+=r*W),m+=38*(C+=r*q),b+=38*(N+=r*Y),v+=38*(B+=r*Z),k+=38*(M+=r*J),a=(r=(a+=38*(_+=r*x))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),a=(r=(a+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),a+=o-1+37*(o-1),e[0]=a,e[1]=i,e[2]=u,e[3]=c,e[4]=s,e[5]=l,e[6]=f,e[7]=d,e[8]=p,e[9]=h,e[10]=y,e[11]=m,e[12]=b,e[13]=v,e[14]=k,e[15]=g}function L(e,t){U(e,t,t)}function G(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=253;r>=0;r--)L(o,o),2!==r&&4!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function K(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=250;r>=0;r--)L(o,o),1!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function z(e,n,r){var o,a,i=new Uint8Array(32),u=new Float64Array(80),s=t(),l=t(),f=t(),d=t(),p=t(),h=t();for(a=0;a<31;a++)i[a]=n[a];for(i[31]=127&n[31]|64,i[0]&=248,j(u,r),a=0;a<16;a++)l[a]=u[a],d[a]=s[a]=f[a]=0;for(s[0]=d[0]=1,a=254;a>=0;--a)C(s,l,o=i[a>>>3]>>>(7&a)&1),C(f,d,o),x(p,s,f),F(s,s,f),x(f,l,d),F(l,l,d),L(d,p),L(h,s),U(s,f,s),U(f,l,p),x(p,s,f),F(s,s,f),L(l,s),F(f,d,h),U(s,f,c),x(s,s,d),U(f,f,s),U(s,d,h),U(d,l,u),L(l,p),C(s,l,o),C(f,d,o);for(a=0;a<16;a++)u[a+16]=s[a],u[a+32]=f[a],u[a+48]=l[a],u[a+64]=d[a];var y=u.subarray(32),m=u.subarray(16);return G(y,y),U(m,m,y),N(e,m),0}function Q(e,t){return z(e,t,a)}function H(e,t){return r(t,32),Q(e,t)}function V(e,t,n){var r=new Uint8Array(32);return z(r,n,t),k(e,o,r,g)}T.prototype.blocks=function(e,t,n){for(var r,o,a,i,u,c,s,l,f,d,p,h,y,m,b,v,k,g,_,w=this.fin?0:2048,I=this.h[0],A=this.h[1],T=this.h[2],O=this.h[3],P=this.h[4],E=this.h[5],S=this.h[6],R=this.h[7],D=this.h[8],C=this.h[9],N=this.r[0],B=this.r[1],M=this.r[2],j=this.r[3],x=this.r[4],F=this.r[5],U=this.r[6],L=this.r[7],G=this.r[8],K=this.r[9];n>=16;)d=f=0,d+=(I+=8191&(r=255&e[t+0]|(255&e[t+1])<<8))*N,d+=(A+=8191&(r>>>13|(o=255&e[t+2]|(255&e[t+3])<<8)<<3))*(5*K),d+=(T+=8191&(o>>>10|(a=255&e[t+4]|(255&e[t+5])<<8)<<6))*(5*G),d+=(O+=8191&(a>>>7|(i=255&e[t+6]|(255&e[t+7])<<8)<<9))*(5*L),f=(d+=(P+=8191&(i>>>4|(u=255&e[t+8]|(255&e[t+9])<<8)<<12))*(5*U))>>>13,d&=8191,d+=(E+=u>>>1&8191)*(5*F),d+=(S+=8191&(u>>>14|(c=255&e[t+10]|(255&e[t+11])<<8)<<2))*(5*x),d+=(R+=8191&(c>>>11|(s=255&e[t+12]|(255&e[t+13])<<8)<<5))*(5*j),d+=(D+=8191&(s>>>8|(l=255&e[t+14]|(255&e[t+15])<<8)<<8))*(5*M),p=f+=(d+=(C+=l>>>5|w)*(5*B))>>>13,p+=I*B,p+=A*N,p+=T*(5*K),p+=O*(5*G),f=(p+=P*(5*L))>>>13,p&=8191,p+=E*(5*U),p+=S*(5*F),p+=R*(5*x),p+=D*(5*j),f+=(p+=C*(5*M))>>>13,p&=8191,h=f,h+=I*M,h+=A*B,h+=T*N,h+=O*(5*K),f=(h+=P*(5*G))>>>13,h&=8191,h+=E*(5*L),h+=S*(5*U),h+=R*(5*F),h+=D*(5*x),y=f+=(h+=C*(5*j))>>>13,y+=I*j,y+=A*M,y+=T*B,y+=O*N,f=(y+=P*(5*K))>>>13,y&=8191,y+=E*(5*G),y+=S*(5*L),y+=R*(5*U),y+=D*(5*F),m=f+=(y+=C*(5*x))>>>13,m+=I*x,m+=A*j,m+=T*M,m+=O*B,f=(m+=P*N)>>>13,m&=8191,m+=E*(5*K),m+=S*(5*G),m+=R*(5*L),m+=D*(5*U),b=f+=(m+=C*(5*F))>>>13,b+=I*F,b+=A*x,b+=T*j,b+=O*M,f=(b+=P*B)>>>13,b&=8191,b+=E*N,b+=S*(5*K),b+=R*(5*G),b+=D*(5*L),v=f+=(b+=C*(5*U))>>>13,v+=I*U,v+=A*F,v+=T*x,v+=O*j,f=(v+=P*M)>>>13,v&=8191,v+=E*B,v+=S*N,v+=R*(5*K),v+=D*(5*G),k=f+=(v+=C*(5*L))>>>13,k+=I*L,k+=A*U,k+=T*F,k+=O*x,f=(k+=P*j)>>>13,k&=8191,k+=E*M,k+=S*B,k+=R*N,k+=D*(5*K),g=f+=(k+=C*(5*G))>>>13,g+=I*G,g+=A*L,g+=T*U,g+=O*F,f=(g+=P*x)>>>13,g&=8191,g+=E*j,g+=S*M,g+=R*B,g+=D*N,_=f+=(g+=C*(5*K))>>>13,_+=I*K,_+=A*G,_+=T*L,_+=O*U,f=(_+=P*F)>>>13,_&=8191,_+=E*x,_+=S*j,_+=R*M,_+=D*B,I=d=8191&(f=(f=((f+=(_+=C*N)>>>13)<<2)+f|0)+(d&=8191)|0),A=p+=f>>>=13,T=h&=8191,O=y&=8191,P=m&=8191,E=b&=8191,S=v&=8191,R=k&=8191,D=g&=8191,C=_&=8191,t+=16,n-=16;this.h[0]=I,this.h[1]=A,this.h[2]=T,this.h[3]=O,this.h[4]=P,this.h[5]=E,this.h[6]=S,this.h[7]=R,this.h[8]=D,this.h[9]=C},T.prototype.finish=function(e,t){var n,r,o,a,i=new Uint16Array(10);if(this.leftover){for(a=this.leftover,this.buffer[a++]=1;a<16;a++)this.buffer[a]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(n=this.h[1]>>>13,this.h[1]&=8191,a=2;a<10;a++)this.h[a]+=n,n=this.h[a]>>>13,this.h[a]&=8191;for(this.h[0]+=5*n,n=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=n,n=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=n,i[0]=this.h[0]+5,n=i[0]>>>13,i[0]&=8191,a=1;a<10;a++)i[a]=this.h[a]+n,n=i[a]>>>13,i[a]&=8191;for(i[9]-=8192,r=(1^n)-1,a=0;a<10;a++)i[a]&=r;for(r=~r,a=0;a<10;a++)this.h[a]=this.h[a]&r|i[a];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,a=1;a<8;a++)o=(this.h[a]+this.pad[a]|0)+(o>>>16)|0,this.h[a]=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},T.prototype.update=function(e,t,n){var r,o;if(this.leftover){for((o=16-this.leftover)>n&&(o=n),r=0;r=16&&(o=n-n%16,this.blocks(e,t,o),t+=o,n-=o),n){for(r=0;r=128;){for(w=0;w<16;w++)I=8*w+q,R[w]=n[I+0]<<24|n[I+1]<<16|n[I+2]<<8|n[I+3],D[w]=n[I+4]<<24|n[I+5]<<16|n[I+6]<<8|n[I+7];for(w=0;w<80;w++)if(o=C,a=N,i=B,u=M,c=j,s=x,l=F,U,d=L,p=G,h=K,y=z,m=Q,b=H,v=V,W,O=65535&(T=W),P=T>>>16,E=65535&(A=U),S=A>>>16,O+=65535&(T=(Q>>>14|j<<18)^(Q>>>18|j<<14)^(j>>>9|Q<<23)),P+=T>>>16,E+=65535&(A=(j>>>14|Q<<18)^(j>>>18|Q<<14)^(Q>>>9|j<<23)),S+=A>>>16,O+=65535&(T=Q&H^~Q&V),P+=T>>>16,E+=65535&(A=j&x^~j&F),S+=A>>>16,O+=65535&(T=Y[2*w+1]),P+=T>>>16,E+=65535&(A=Y[2*w]),S+=A>>>16,A=R[w%16],P+=(T=D[w%16])>>>16,E+=65535&A,S+=A>>>16,E+=(P+=(O+=65535&T)>>>16)>>>16,O=65535&(T=_=65535&O|P<<16),P=T>>>16,E=65535&(A=g=65535&E|(S+=E>>>16)<<16),S=A>>>16,O+=65535&(T=(L>>>28|C<<4)^(C>>>2|L<<30)^(C>>>7|L<<25)),P+=T>>>16,E+=65535&(A=(C>>>28|L<<4)^(L>>>2|C<<30)^(L>>>7|C<<25)),S+=A>>>16,P+=(T=L&G^L&K^G&K)>>>16,E+=65535&(A=C&N^C&B^N&B),S+=A>>>16,f=65535&(E+=(P+=(O+=65535&T)>>>16)>>>16)|(S+=E>>>16)<<16,k=65535&O|P<<16,O=65535&(T=y),P=T>>>16,E=65535&(A=u),S=A>>>16,P+=(T=_)>>>16,E+=65535&(A=g),S+=A>>>16,N=o,B=a,M=i,j=u=65535&(E+=(P+=(O+=65535&T)>>>16)>>>16)|(S+=E>>>16)<<16,x=c,F=s,U=l,C=f,G=d,K=p,z=h,Q=y=65535&O|P<<16,H=m,V=b,W=v,L=k,w%16==15)for(I=0;I<16;I++)A=R[I],O=65535&(T=D[I]),P=T>>>16,E=65535&A,S=A>>>16,A=R[(I+9)%16],O+=65535&(T=D[(I+9)%16]),P+=T>>>16,E+=65535&A,S+=A>>>16,g=R[(I+1)%16],O+=65535&(T=((_=D[(I+1)%16])>>>1|g<<31)^(_>>>8|g<<24)^(_>>>7|g<<25)),P+=T>>>16,E+=65535&(A=(g>>>1|_<<31)^(g>>>8|_<<24)^g>>>7),S+=A>>>16,g=R[(I+14)%16],P+=(T=((_=D[(I+14)%16])>>>19|g<<13)^(g>>>29|_<<3)^(_>>>6|g<<26))>>>16,E+=65535&(A=(g>>>19|_<<13)^(_>>>29|g<<3)^g>>>6),S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,R[I]=65535&E|S<<16,D[I]=65535&O|P<<16;O=65535&(T=L),P=T>>>16,E=65535&(A=C),S=A>>>16,A=e[0],P+=(T=t[0])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[0]=C=65535&E|S<<16,t[0]=L=65535&O|P<<16,O=65535&(T=G),P=T>>>16,E=65535&(A=N),S=A>>>16,A=e[1],P+=(T=t[1])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[1]=N=65535&E|S<<16,t[1]=G=65535&O|P<<16,O=65535&(T=K),P=T>>>16,E=65535&(A=B),S=A>>>16,A=e[2],P+=(T=t[2])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[2]=B=65535&E|S<<16,t[2]=K=65535&O|P<<16,O=65535&(T=z),P=T>>>16,E=65535&(A=M),S=A>>>16,A=e[3],P+=(T=t[3])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[3]=M=65535&E|S<<16,t[3]=z=65535&O|P<<16,O=65535&(T=Q),P=T>>>16,E=65535&(A=j),S=A>>>16,A=e[4],P+=(T=t[4])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[4]=j=65535&E|S<<16,t[4]=Q=65535&O|P<<16,O=65535&(T=H),P=T>>>16,E=65535&(A=x),S=A>>>16,A=e[5],P+=(T=t[5])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[5]=x=65535&E|S<<16,t[5]=H=65535&O|P<<16,O=65535&(T=V),P=T>>>16,E=65535&(A=F),S=A>>>16,A=e[6],P+=(T=t[6])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[6]=F=65535&E|S<<16,t[6]=V=65535&O|P<<16,O=65535&(T=W),P=T>>>16,E=65535&(A=U),S=A>>>16,A=e[7],P+=(T=t[7])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[7]=U=65535&E|S<<16,t[7]=W=65535&O|P<<16,q+=128,r-=128}return r}function J(e,t,n){var r,o=new Int32Array(8),a=new Int32Array(8),i=new Uint8Array(256),u=n;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,a[0]=4089235720,a[1]=2227873595,a[2]=4271175723,a[3]=1595750129,a[4]=2917565137,a[5]=725511199,a[6]=4215389547,a[7]=327033209,Z(o,a,t,n),n%=128,r=0;r=0;--o)$(e,t,r=n[o/8|0]>>(7&o)&1),X(t,e),X(e,e),$(e,t,r)}function ne(e,n){var r=[t(),t(),t(),t()];R(r[0],f),R(r[1],d),R(r[2],u),U(r[3],f,d),te(e,r,n)}function re(e,n,o){var a,i=new Uint8Array(64),u=[t(),t(),t(),t()];for(o||r(n,32),J(i,n,32),i[0]&=248,i[31]&=127,i[31]|=64,ne(u,i),ee(e,u),a=0;a<32;a++)n[a+32]=e[a];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 ae(e,t){var n,r,o,a;for(r=63;r>=32;--r){for(n=0,o=r-32,a=r-12;o>4)*oe[o],n=t[o]>>8,t[o]&=255;for(o=0;o<32;o++)t[o]-=n*oe[o];for(r=0;r<32;r++)t[r+1]+=t[r]>>8,e[r]=255&t[r]}function ie(e){var t,n=new Float64Array(64);for(t=0;t<64;t++)n[t]=e[t];for(t=0;t<64;t++)e[t]=0;ae(e,n)}function ue(e,n,r,o){var a,i,u=new Uint8Array(64),c=new Uint8Array(64),s=new Uint8Array(64),l=new Float64Array(64),f=[t(),t(),t(),t()];J(u,o,32),u[0]&=248,u[31]&=127,u[31]|=64;var d=r+64;for(a=0;a>7&&F(e[0],i,e[0]),U(e[3],e[0],e[1]),0)}(d,o))return-1;for(a=0;a=0},e.sign.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(64);return re(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(le(e),64!==e.length)throw new Error("bad secret key size");for(var t=new Uint8Array(32),n=0;n0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function s(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){u(e.precomputed);var n=e._getDoubles(),r=a(t,1,this._bitLength),o=(1<=i;l--)c=(c<<1)+r[l];s.push(c)}for(var f=this.jpoint(null,null,null),d=this.jpoint(null,null,null),p=o;p>0;p--){for(i=0;i=0;s--){for(var l=0;s>=0&&0===i[s];s--)l++;if(s>=0&&l++,c=c.dblp(l),s<0)break;var f=i[s];u(0!==f),c="affine"===e.type?f>0?c.mixedAdd(o[f-1>>1]):c.mixedAdd(o[-f-1>>1].neg()):f>0?c.add(o[f-1>>1]):c.add(o[-f-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,o){var u,c,s,l=this._wnafT1,f=this._wnafT2,d=this._wnafT3,p=0;for(u=0;u=1;u-=2){var y=u-1,m=u;if(1===l[y]&&1===l[m]){var b=[t[y],null,null,t[m]];0===t[y].y.cmp(t[m].y)?(b[1]=t[y].add(t[m]),b[2]=t[y].toJ().mixedAdd(t[m].neg())):0===t[y].y.cmp(t[m].y.redNeg())?(b[1]=t[y].toJ().mixedAdd(t[m]),b[2]=t[y].add(t[m].neg())):(b[1]=t[y].toJ().mixedAdd(t[m]),b[2]=t[y].toJ().mixedAdd(t[m].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],k=i(n[y],n[m]);for(p=Math.max(k[0].length,p),d[y]=new Array(p),d[m]=new Array(p),c=0;c=0;u--){for(var A=0;u>=0;){var T=!0;for(c=0;c=0&&A++,w=w.dblp(A),u<0)break;for(c=0;c0?s=f[c][O-1>>1]:O<0&&(s=f[c][-O-1>>1].neg()),w="affine"===s.type?w.mixedAdd(s):w.add(s))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},s.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,o=0;o1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength;if(!(Number.isInteger(t)&&t>=0))throw new Error("Invalid offset!");if(!(Number.isInteger(n)&&n>=0))throw new Error("Invalid length!");return new DataView(e.buffer,e.byteOffset+t,Math.min(n,e.byteLength-t))};var o=r(n(3)),a=r(n(135)),i=r(n(20));t.REQUIRE_NON_NULL_ERROR="This value cannot be null | undefined.";t.REQUIRE_STRING_ERROR="This value must be a string.";t.REQUIRE_UINT8ARRAY_ERROR="This value must be a Uint8Array.";t.REQUIRE_STRING_OR_UINT8ARRAY_ERROR="This value must be a string or Uint8Array.";t.REQUIRE_NUMBER_ERROR="This value must be a Number.";t.REQUIRE_BIGNUMBER_ERROR="This value must be a BigNumber.";t.REQUIRE_ARRAY_ERROR="The provided variable must be an Array.";t.REQUIRE_LONG_ERROR="This value must be a Long.";t.REQUIRE_TYPE_ERROR="The provided variables are not matching types.";t.FUNCTION_CONVERT_TO_BIGNUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";t.FUNCTION_CONVERT_TO_NUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";function u(e){return null!=e&&null!=e}function c(e,t){return(0,o.default)(e)==(0,o.default)(t)}function s(e){return u(e)&&e instanceof Uint8Array}function l(e){return u(e)&&("number"==typeof e||e instanceof Number)}function f(e){return u(e)&&e instanceof a.default}function d(e){return u(e)&&e instanceof i.default}function p(e){return u(e)&&"string"==typeof e}function h(e){return u(e)&&(p(e)||s(e))}function y(e){if(u(e))return e;throw new Error("This value cannot be null | undefined.")}function m(e){if(y(e),f(e)||p(e)||l(e)||d(e))return new a.default(e);throw new Error("This value must be a String, Number, or BigNumber to be converted.")}t.FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR="Unable to parse given variable. Returns NaN."},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(11)),c=r(n(57)),s=r(n(62)),l=r(n(118)),f=r(n(27)),d=r(n(140)),p=r(n(405)),h=r(n(137)),y=r(n(20)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36)),b=r(n(75));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}var k=function(){function e(t){(0,a.default)(this,e),this.status=t.status,this.accountId=t.accountId,this.fileId=t.fileId,this.contractId=t.contractId,this.topicId=t.topicId,this.tokenId=t.tokenId,this.scheduleId=t.scheduleId,this.exchangeRate=t.exchangeRate,this.topicSequenceNumber=t.topicSequenceNumber,this.topicRunningHash=t.topicRunningHash,this.totalSupply=t.totalSupply,this.scheduledTransactionId=t.scheduledTransactionId,this.serials=t.serials,this.duplicates=t.duplicates,this.children=t.children,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{duplicateTransactionReceipts:this.duplicates.map((function(e){return e._toProtobuf().receipt})),childTransactionReceipts:this.children.map((function(e){return e._toProtobuf().receipt})),receipt:{status:this.status.valueOf(),accountID:null!=this.accountId?this.accountId._toProtobuf():null,fileID:null!=this.fileId?this.fileId._toProtobuf():null,contractID:null!=this.contractId?this.contractId._toProtobuf():null,topicID:null!=this.topicId?this.topicId._toProtobuf():null,tokenID:null!=this.tokenId?this.tokenId._toProtobuf():null,scheduleID:null!=this.scheduleId?this.scheduleId._toProtobuf():null,topicRunningHash:null==this.topicRunningHash?null:this.topicRunningHash,topicSequenceNumber:this.topicSequenceNumber,exchangeRate:{nextRate:null,currentRate:null!=this.exchangeRate?this.exchangeRate._toProtobuf():null},scheduledTransactionID:null!=this.scheduledTransactionId?this.scheduledTransactionId._toProtobuf():null,serialNumbers:this.serials,newTotalSupply:this.totalSupply}}}},{key:"toBytes",value:function(){return m.TransactionGetReceiptResponse.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.receipt,r=n.exchangeRate,o=null!=t.childTransactionReceipts?t.childTransactionReceipts.map((function(t){return e._fromProtobuf({receipt:t})})):[],a=null!=t.duplicateTransactionReceipts?t.duplicateTransactionReceipts.map((function(t){return e._fromProtobuf({receipt:t})})):[];return new e({status:h.default._fromCode(null!=n.status?n.status:0),accountId:null!=n.accountID?u.default._fromProtobuf(n.accountID):null,fileId:null!=n.fileID?s.default._fromProtobuf(n.fileID):null,contractId:null!=n.contractID?c.default._fromProtobuf(n.contractID):null,topicId:null!=n.topicID?l.default._fromProtobuf(n.topicID):null,tokenId:null!=n.tokenID?f.default._fromProtobuf(n.tokenID):null,scheduleId:null!=n.scheduleID?d.default._fromProtobuf(n.scheduleID):null,exchangeRate:null!=n.exchangeRate?p.default._fromProtobuf(r.currentRate):null,topicSequenceNumber:null==n.topicSequenceNumber?null:y.default.fromValue(n.topicSequenceNumber),topicRunningHash:null!=n.topicRunningHash?n.topicRunningHash:null,totalSupply:null!=n.newTotalSupply?n.newTotalSupply:null,scheduledTransactionId:null!=n.scheduledTransactionID?b.default._fromProtobuf(n.scheduledTransactionID):null,serials:null!=n.serialNumbers?n.serialNumbers:[],children:o,duplicates:a})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(m.TransactionGetReceiptResponse.decode(t))}}]),e}();t.default=k},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(11)),u=r(n(33)),c=function(){function e(t){(0,o.default)(this,e),this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount.toTinybars()}}}],[{key:"_fromProtobuf",value:function(t){return new e({spenderAccountId:i.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?i.default._fromProtobuf(t.owner):null,amount:u.default.fromTinybars(null!=t.amount?t.amount:0)})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(27)),u=r(n(11)),c=r(n(20)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount}}}],[{key:"_fromProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,amount:null!=t.amount?c.default.fromValue(t.amount):null})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(27)),u=r(n(11)),c=r(n(20)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.serialNumbers=t.serialNumbers,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,approvedForAll:null==this.serialNumbers?{value:!0}:null,serialNumbers:this.serialNumbers}}}],[{key:"_fromProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,serialNumbers:null!=t.approvedForAll&&t.approvedForAll.value?null:null!=t.serialNumbers?t.serialNumbers.map((function(e){return c.default.fromValue(e)})):[]})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=h(n(421)),s=h(n(108)),l=h(n(74)),f=r(n(135)),d=h(n(234));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n16)throw new TypeError("uint64/int64 requires BigNumber to be less than or equal to 8 bytes");if(!t.isInteger())throw new TypeError("uint64/int64 requires BigNumber to be an integer");E.length%2==1&&(E="0".concat(E));var S=l.decode(E);o.set(S,32-S.length)}return o;case c.ArgumentType.int256:case c.ArgumentType.uint256:if(f.default.isBigNumber(t)){var R=t.toString(16);R.length%2==1&&(R="0".concat(R));var D=l.decode(R);o.set(D,32-D.length)}return o;case c.ArgumentType.address:return o.set(t,12),o;case c.ArgumentType.bool:return o[31]=t?1:0,o;case c.ArgumentType.func:return o.set(t,8),o;case c.ArgumentType.bytes32:return o.set(t,0),o;case c.ArgumentType.bytes:case c.ArgumentType.string:return r=t instanceof Uint8Array?t:s.encode(t),(o=Math.floor(r.length/32)>=0&&0!==Math.floor(r.length%32)?new Uint8Array(32*(Math.floor(r.length/32)+1)+32):new Uint8Array(64)).set(r,32),(i=d.safeView(o,28)).setUint32(0,r.length),o;default:throw new Error("Unsupported argument type: ".concat(n.toString()))}}(e,this._selector._paramTypes[n]);return this._arguments.push({dynamic:t,value:r}),this}},{key:"_build",value:function(e){var t=null!=e,n=t?4:0,r=0===this._arguments.length?n:32*this._arguments.length+this._arguments.map((function(e){return e.dynamic?e.value.length:0})).reduce((function(e,t){return e+t}))+n,o=new Uint8Array(r);t&&o.set(this._selector._build(e),0);var i,u=32*this._arguments.length,c=y(this._arguments.entries());try{for(c.s();!(i=c.n()).done;){var s=(0,a.default)(i.value,2),l=s[0],f=s[1],p=f.dynamic,h=f.value;if(p){var m=d.safeView(o,n+32*l+28);m.setUint32(0,u),o.set(h,m.getUint32(0)+n),u+=h.length}else o.set(h,n+32*l)}}catch(e){c.e(e)}finally{c.f()}return o}}]),e}();function v(e,t,n){n(t,f.default.isBigNumber(e)?e.toNumber():e)}t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(11)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobuf",value:function(e){throw new Error("not implemented")}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(240)),l=r(n(11)),f=r(n(20));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var p=function(e){(0,i.default)(n,e);var t=d(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e._min,null!=r.min&&e.setMin(r.min),e._max,null!=r.max&&e.setMax(r.max),e._assessmentMethod,null!=r.assessmentMethod&&e.setAssessmentMethod(r.assessmentMethod),e}return(0,a.default)(n,[{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"min",get:function(){return this._min}},{key:"setMin",value:function(e){return this._min="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"max",get:function(){return this._max}},{key:"setMax",value:function(e){return this._max="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"assessmentMethod",get:function(){return this._assessmentMethod}},{key:"setAssessmentMethod",value:function(e){return this._assessmentMethod=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fractionalFee:{fractionalAmount:{numerator:this._numerator,denominator:this._denominator},minimumAmount:this._min,maximumAmount:this._max}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fractionalFee,r=t.fractionalAmount;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0,min:null!=t.minimumAmount?t.minimumAmount:void 0,max:null!=t.maximumAmount?t.maximumAmount:void 0})}}]),n}(s.default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(240)),l=r(n(11)),f=r(n(20)),d=r(n(199));function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var h=function(e){(0,i.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._fallbackFee,null!=r.fallbackFee&&e.setFallbackFee(r.fallbackFee),e._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e}return(0,a.default)(n,[{key:"fallbackFee",get:function(){return this._fallbackFee}},{key:"setFallbackFee",value:function(e){return this._fallbackFee=e,this}},{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,royaltyFee:{exchangeValueFraction:{numerator:this._numerator,denominator:this._denominator},fallbackFee:null!=this._fallbackFee?this._fallbackFee._toProtobuf().fixedFee:null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.royaltyFee,r=t.exchangeValueFraction;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,fallbackFee:null!=t.fallbackFee?d.default._fromProtobuf({fixedFee:t.fallbackFee}):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0})}}]),n}(s.default);t.default=h},function(e,t,n){"use strict";(function(e){var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getLength=t.decode=t.encode=void 0;var o=r(n(10));function a(e,t){if("0"===e[0]&&"0"===e[1])throw new Error("invalid RLP: extra zeros");return parseInt(e,t)}function i(t,n){if(t<56)return e.from([t+n]);var r=c(t),o=c(n+55+r.length/2);return e.from(o+r,"hex")}function u(e){return"0x"===e.slice(0,2)}function c(e){if(e<0)throw new Error("Invalid integer as argument, must be unsigned!");var t=e.toString(16);return t.length%2?"0"+t:t}function s(t){if(!e.isBuffer(t)){if("string"==typeof t)return u(t)?e.from((r="string"!=typeof(a=t)?a:u(a)?a.slice(2):a).length%2?"0"+r:r,"hex"):e.from(t);if("number"==typeof t||"bigint"==typeof t)return t?(n=c(t),e.from(n,"hex")):e.from([]);if(null==t)return e.from([]);if(t instanceof Uint8Array)return e.from(t);if(o.default.isBN(t))return e.from(t.toArray());throw new Error("invalid type")}var n,r,a;return t}t.encode=function t(n){if(Array.isArray(n)){for(var r=[],o=0;on.length)throw new Error("invalid rlp: total length is larger than the data");if(0===(u=n.slice(o,f)).length)throw new Error("invalid rlp, List has a invalid length");for(;u.length;)c=t(u),s.push(c.data),u=c.remainder;return{data:s,remainder:n.slice(f)}}(s(t));if(n)return r;if(0!==r.remainder.length)throw new Error("invalid remainder");return r.data},t.getLength=function(t){if(!t||0===t.length)return e.from([]);var n=s(t),r=n[0];if(r<=127)return n.length;if(r<=183)return r-127;if(r<=191)return r-182;if(r<=247)return r-191;var o=r-246;return o+a(n.slice(1,o).toString("hex"),16)}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.assertIsString=t.assertIsArray=t.assertIsBuffer=t.assertIsHexString=void 0;var r=n(171);t.assertIsHexString=function(e){if(!(0,r.isHexString)(e))throw new Error("This method only supports 0x-prefixed hex strings but input was: "+e)};t.assertIsBuffer=function(t){if(!e.isBuffer(t))throw new Error("This method only supports Buffer but input was: "+t)};t.assertIsArray=function(e){if(!Array.isArray(e))throw new Error("This method only supports number arrays but input was: "+e)};t.assertIsString=function(e){if("string"!=typeof e)throw new Error("This method only supports strings but input was: "+e)}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";(function(t){function n(e){try{if(!t.localStorage)return!1}catch(e){return!1}var n=t.localStorage[e];return null!=n&&"true"===String(n).toLowerCase()}e.exports=function(e,t){if(n("noDeprecation"))return e;var r=!1;return function(){if(!r){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}}).call(this,n(40))},function(e,t,n){"use strict";(function(t){void 0===t||!t.version||0===t.version.indexOf("v0.")||0===t.version.indexOf("v1.")&&0!==t.version.indexOf("v1.8.")?e.exports={nextTick:function(e,n,r,o){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var a,i,u=arguments.length;switch(u){case 0:case 1:return t.nextTick(e);case 2:return t.nextTick((function(){e.call(null,n)}));case 3:return t.nextTick((function(){e.call(null,n,r)}));case 4:return t.nextTick((function(){e.call(null,n,r,o)}));default:for(a=new Array(u-1),i=0;i>1]>>4>=8&&(t[u]=t[u].toUpperCase()),(15&i[u>>1])>=8&&(t[u+1]=t[u+1].toUpperCase());return"0x"+t.join("")}for(var f={},d=0;d<10;d++)f[String(d)]=String(d);for(var p=0;p<26;p++)f[String.fromCharCode(65+p)]=String(10+p);var h,y=Math.floor((h=9007199254740991,Math.log10?Math.log10(h):Math.log(h)/Math.LN10));function m(e){for(var t=(e=(e=e.toUpperCase()).substring(4)+e.substring(0,2)+"00").split("").map((function(e){return f[e]})).join("");t.length>=y;){var n=t.substring(0,y);t=parseInt(n,10)%97+t.substring(n.length)}for(var r=String(98-parseInt(t,10)%97);r.length<2;)r="0"+r;return r}function b(e){var t=null;if("string"!=typeof e&&s.throwArgumentError("invalid address","address",e),e.match(/^(0x)?[0-9a-fA-F]{40}$/))"0x"!==e.substring(0,2)&&(e="0x"+e),t=l(e),e.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&t!==e&&s.throwArgumentError("bad address checksum","address",e);else if(e.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){for(e.substring(2,4)!==m(e)&&s.throwArgumentError("bad icap checksum","address",e),t=(0,o._base36To16)(e.substring(4));t.length<40;)t="0"+t;t=l("0x"+t)}else s.throwArgumentError("invalid address","address",e);return t}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return u.default}});var o=r(n(178)),a=r(n(942)),i=r(n(473)),u=r(n(489)),c=r(n(474)),s=r(n(109)),l=r(n(476)),f=r(n(317))},function(e,t,n){"use strict";!function(e){var t=function(e){var t,n=new Float64Array(16);if(e)for(t=0;t>24&255,e[t+1]=n>>16&255,e[t+2]=n>>8&255,e[t+3]=255&n,e[t+4]=r>>24&255,e[t+5]=r>>16&255,e[t+6]=r>>8&255,e[t+7]=255&r}function y(e,t,n,r,o){var a,i=0;for(a=0;a>>8)-1}function m(e,t,n,r){return y(e,t,n,r,16)}function b(e,t,n,r){return y(e,t,n,r,32)}function v(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,m=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,b=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,k=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,g=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=a,w=i,I=u,A=c,T=s,O=l,P=f,E=d,S=p,R=h,D=y,C=m,N=b,B=v,M=k,j=g,x=0;x<20;x+=2)_^=(o=(N^=(o=(S^=(o=(T^=(o=_+N|0)<<7|o>>>25)+_|0)<<9|o>>>23)+T|0)<<13|o>>>19)+S|0)<<18|o>>>14,O^=(o=(w^=(o=(B^=(o=(R^=(o=O+w|0)<<7|o>>>25)+O|0)<<9|o>>>23)+R|0)<<13|o>>>19)+B|0)<<18|o>>>14,D^=(o=(P^=(o=(I^=(o=(M^=(o=D+P|0)<<7|o>>>25)+D|0)<<9|o>>>23)+M|0)<<13|o>>>19)+I|0)<<18|o>>>14,j^=(o=(C^=(o=(E^=(o=(A^=(o=j+C|0)<<7|o>>>25)+j|0)<<9|o>>>23)+A|0)<<13|o>>>19)+E|0)<<18|o>>>14,_^=(o=(A^=(o=(I^=(o=(w^=(o=_+A|0)<<7|o>>>25)+_|0)<<9|o>>>23)+w|0)<<13|o>>>19)+I|0)<<18|o>>>14,O^=(o=(T^=(o=(E^=(o=(P^=(o=O+T|0)<<7|o>>>25)+O|0)<<9|o>>>23)+P|0)<<13|o>>>19)+E|0)<<18|o>>>14,D^=(o=(R^=(o=(S^=(o=(C^=(o=D+R|0)<<7|o>>>25)+D|0)<<9|o>>>23)+C|0)<<13|o>>>19)+S|0)<<18|o>>>14,j^=(o=(M^=(o=(B^=(o=(N^=(o=j+M|0)<<7|o>>>25)+j|0)<<9|o>>>23)+N|0)<<13|o>>>19)+B|0)<<18|o>>>14;_=_+a|0,w=w+i|0,I=I+u|0,A=A+c|0,T=T+s|0,O=O+l|0,P=P+f|0,E=E+d|0,S=S+p|0,R=R+h|0,D=D+y|0,C=C+m|0,N=N+b|0,B=B+v|0,M=M+k|0,j=j+g|0,e[0]=_>>>0&255,e[1]=_>>>8&255,e[2]=_>>>16&255,e[3]=_>>>24&255,e[4]=w>>>0&255,e[5]=w>>>8&255,e[6]=w>>>16&255,e[7]=w>>>24&255,e[8]=I>>>0&255,e[9]=I>>>8&255,e[10]=I>>>16&255,e[11]=I>>>24&255,e[12]=A>>>0&255,e[13]=A>>>8&255,e[14]=A>>>16&255,e[15]=A>>>24&255,e[16]=T>>>0&255,e[17]=T>>>8&255,e[18]=T>>>16&255,e[19]=T>>>24&255,e[20]=O>>>0&255,e[21]=O>>>8&255,e[22]=O>>>16&255,e[23]=O>>>24&255,e[24]=P>>>0&255,e[25]=P>>>8&255,e[26]=P>>>16&255,e[27]=P>>>24&255,e[28]=E>>>0&255,e[29]=E>>>8&255,e[30]=E>>>16&255,e[31]=E>>>24&255,e[32]=S>>>0&255,e[33]=S>>>8&255,e[34]=S>>>16&255,e[35]=S>>>24&255,e[36]=R>>>0&255,e[37]=R>>>8&255,e[38]=R>>>16&255,e[39]=R>>>24&255,e[40]=D>>>0&255,e[41]=D>>>8&255,e[42]=D>>>16&255,e[43]=D>>>24&255,e[44]=C>>>0&255,e[45]=C>>>8&255,e[46]=C>>>16&255,e[47]=C>>>24&255,e[48]=N>>>0&255,e[49]=N>>>8&255,e[50]=N>>>16&255,e[51]=N>>>24&255,e[52]=B>>>0&255,e[53]=B>>>8&255,e[54]=B>>>16&255,e[55]=B>>>24&255,e[56]=M>>>0&255,e[57]=M>>>8&255,e[58]=M>>>16&255,e[59]=M>>>24&255,e[60]=j>>>0&255,e[61]=j>>>8&255,e[62]=j>>>16&255,e[63]=j>>>24&255}(e,t,n,r)}function k(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,m=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,b=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,k=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,g=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=0;_<20;_+=2)a^=(o=(b^=(o=(p^=(o=(s^=(o=a+b|0)<<7|o>>>25)+a|0)<<9|o>>>23)+s|0)<<13|o>>>19)+p|0)<<18|o>>>14,l^=(o=(i^=(o=(v^=(o=(h^=(o=l+i|0)<<7|o>>>25)+l|0)<<9|o>>>23)+h|0)<<13|o>>>19)+v|0)<<18|o>>>14,y^=(o=(f^=(o=(u^=(o=(k^=(o=y+f|0)<<7|o>>>25)+y|0)<<9|o>>>23)+k|0)<<13|o>>>19)+u|0)<<18|o>>>14,g^=(o=(m^=(o=(d^=(o=(c^=(o=g+m|0)<<7|o>>>25)+g|0)<<9|o>>>23)+c|0)<<13|o>>>19)+d|0)<<18|o>>>14,a^=(o=(c^=(o=(u^=(o=(i^=(o=a+c|0)<<7|o>>>25)+a|0)<<9|o>>>23)+i|0)<<13|o>>>19)+u|0)<<18|o>>>14,l^=(o=(s^=(o=(d^=(o=(f^=(o=l+s|0)<<7|o>>>25)+l|0)<<9|o>>>23)+f|0)<<13|o>>>19)+d|0)<<18|o>>>14,y^=(o=(h^=(o=(p^=(o=(m^=(o=y+h|0)<<7|o>>>25)+y|0)<<9|o>>>23)+m|0)<<13|o>>>19)+p|0)<<18|o>>>14,g^=(o=(k^=(o=(v^=(o=(b^=(o=g+k|0)<<7|o>>>25)+g|0)<<9|o>>>23)+b|0)<<13|o>>>19)+v|0)<<18|o>>>14;e[0]=a>>>0&255,e[1]=a>>>8&255,e[2]=a>>>16&255,e[3]=a>>>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]=g>>>0&255,e[13]=g>>>8&255,e[14]=g>>>16&255,e[15]=g>>>24&255,e[16]=f>>>0&255,e[17]=f>>>8&255,e[18]=f>>>16&255,e[19]=f>>>24&255,e[20]=d>>>0&255,e[21]=d>>>8&255,e[22]=d>>>16&255,e[23]=d>>>24&255,e[24]=p>>>0&255,e[25]=p>>>8&255,e[26]=p>>>16&255,e[27]=p>>>24&255,e[28]=h>>>0&255,e[29]=h>>>8&255,e[30]=h>>>16&255,e[31]=h>>>24&255}(e,t,n,r)}var g=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function _(e,t,n,r,o,a,i){var u,c,s=new Uint8Array(16),l=new Uint8Array(64);for(c=0;c<16;c++)s[c]=0;for(c=0;c<8;c++)s[c]=a[c];for(;o>=64;){for(v(l,s,i,g),c=0;c<64;c++)e[t+c]=n[r+c]^l[c];for(u=1,c=8;c<16;c++)u=u+(255&s[c])|0,s[c]=255&u,u>>>=8;o-=64,t+=64,r+=64}if(o>0)for(v(l,s,i,g),c=0;c=64;){for(v(c,u,o,g),i=0;i<64;i++)e[t+i]=c[i];for(a=1,i=8;i<16;i++)a=a+(255&u[i])|0,u[i]=255&a,a>>>=8;n-=64,t+=64}if(n>0)for(v(c,u,o,g),i=0;i>>13|n<<3),r=255&e[4]|(255&e[5])<<8,this.r[2]=7939&(n>>>10|r<<6),o=255&e[6]|(255&e[7])<<8,this.r[3]=8191&(r>>>7|o<<9),a=255&e[8]|(255&e[9])<<8,this.r[4]=255&(o>>>4|a<<12),this.r[5]=a>>>1&8190,i=255&e[10]|(255&e[11])<<8,this.r[6]=8191&(a>>>14|i<<2),u=255&e[12]|(255&e[13])<<8,this.r[7]=8065&(i>>>11|u<<5),c=255&e[14]|(255&e[15])<<8,this.r[8]=8191&(u>>>8|c<<8),this.r[9]=c>>>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 O(e,t,n,r,o,a){var i=new T(a);return i.update(n,r,o),i.finish(e,t),0}function P(e,t,n,r,o,a){var i=new Uint8Array(16);return O(i,0,n,r,o,a),m(e,t,i,0)}function E(e,t,n,r,o){var a;if(n<32)return-1;for(A(e,0,t,0,n,r,o),O(e,16,e,32,n-32,e),a=0;a<16;a++)e[a]=0;return 0}function S(e,t,n,r,o){var a,i=new Uint8Array(32);if(n<32)return-1;if(I(i,0,32,r,o),0!==P(t,16,t,32,n-32,i))return-1;for(A(e,0,t,0,n,r,o),a=0;a<32;a++)e[a]=0;return 0}function R(e,t){var n;for(n=0;n<16;n++)e[n]=0|t[n]}function D(e){var t,n,r=1;for(t=0;t<16;t++)n=e[t]+r+65535,r=Math.floor(n/65536),e[t]=n-65536*r;e[0]+=r-1+37*(r-1)}function C(e,t,n){for(var r,o=~(n-1),a=0;a<16;a++)r=o&(e[a]^t[a]),e[a]^=r,t[a]^=r}function N(e,n){var r,o,a,i=t(),u=t();for(r=0;r<16;r++)u[r]=n[r];for(D(u),D(u),D(u),o=0;o<2;o++){for(i[0]=u[0]-65517,r=1;r<15;r++)i[r]=u[r]-65535-(i[r-1]>>16&1),i[r-1]&=65535;i[15]=u[15]-32767-(i[14]>>16&1),a=i[15]>>16&1,i[14]&=65535,C(u,i,1-a)}for(r=0;r<16;r++)e[2*r]=255&u[r],e[2*r+1]=u[r]>>8}function B(e,t){var n=new Uint8Array(32),r=new Uint8Array(32);return N(n,e),N(r,t),b(n,0,r,0)}function M(e){var t=new Uint8Array(32);return N(t,e),1&t[0]}function j(e,t){var n;for(n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}function x(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]+n[r]}function F(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]-n[r]}function U(e,t,n){var r,o,a=0,i=0,u=0,c=0,s=0,l=0,f=0,d=0,p=0,h=0,y=0,m=0,b=0,v=0,k=0,g=0,_=0,w=0,I=0,A=0,T=0,O=0,P=0,E=0,S=0,R=0,D=0,C=0,N=0,B=0,M=0,j=n[0],x=n[1],F=n[2],U=n[3],L=n[4],G=n[5],K=n[6],z=n[7],Q=n[8],H=n[9],V=n[10],W=n[11],q=n[12],Y=n[13],Z=n[14],J=n[15];a+=(r=t[0])*j,i+=r*x,u+=r*F,c+=r*U,s+=r*L,l+=r*G,f+=r*K,d+=r*z,p+=r*Q,h+=r*H,y+=r*V,m+=r*W,b+=r*q,v+=r*Y,k+=r*Z,g+=r*J,i+=(r=t[1])*j,u+=r*x,c+=r*F,s+=r*U,l+=r*L,f+=r*G,d+=r*K,p+=r*z,h+=r*Q,y+=r*H,m+=r*V,b+=r*W,v+=r*q,k+=r*Y,g+=r*Z,_+=r*J,u+=(r=t[2])*j,c+=r*x,s+=r*F,l+=r*U,f+=r*L,d+=r*G,p+=r*K,h+=r*z,y+=r*Q,m+=r*H,b+=r*V,v+=r*W,k+=r*q,g+=r*Y,_+=r*Z,w+=r*J,c+=(r=t[3])*j,s+=r*x,l+=r*F,f+=r*U,d+=r*L,p+=r*G,h+=r*K,y+=r*z,m+=r*Q,b+=r*H,v+=r*V,k+=r*W,g+=r*q,_+=r*Y,w+=r*Z,I+=r*J,s+=(r=t[4])*j,l+=r*x,f+=r*F,d+=r*U,p+=r*L,h+=r*G,y+=r*K,m+=r*z,b+=r*Q,v+=r*H,k+=r*V,g+=r*W,_+=r*q,w+=r*Y,I+=r*Z,A+=r*J,l+=(r=t[5])*j,f+=r*x,d+=r*F,p+=r*U,h+=r*L,y+=r*G,m+=r*K,b+=r*z,v+=r*Q,k+=r*H,g+=r*V,_+=r*W,w+=r*q,I+=r*Y,A+=r*Z,T+=r*J,f+=(r=t[6])*j,d+=r*x,p+=r*F,h+=r*U,y+=r*L,m+=r*G,b+=r*K,v+=r*z,k+=r*Q,g+=r*H,_+=r*V,w+=r*W,I+=r*q,A+=r*Y,T+=r*Z,O+=r*J,d+=(r=t[7])*j,p+=r*x,h+=r*F,y+=r*U,m+=r*L,b+=r*G,v+=r*K,k+=r*z,g+=r*Q,_+=r*H,w+=r*V,I+=r*W,A+=r*q,T+=r*Y,O+=r*Z,P+=r*J,p+=(r=t[8])*j,h+=r*x,y+=r*F,m+=r*U,b+=r*L,v+=r*G,k+=r*K,g+=r*z,_+=r*Q,w+=r*H,I+=r*V,A+=r*W,T+=r*q,O+=r*Y,P+=r*Z,E+=r*J,h+=(r=t[9])*j,y+=r*x,m+=r*F,b+=r*U,v+=r*L,k+=r*G,g+=r*K,_+=r*z,w+=r*Q,I+=r*H,A+=r*V,T+=r*W,O+=r*q,P+=r*Y,E+=r*Z,S+=r*J,y+=(r=t[10])*j,m+=r*x,b+=r*F,v+=r*U,k+=r*L,g+=r*G,_+=r*K,w+=r*z,I+=r*Q,A+=r*H,T+=r*V,O+=r*W,P+=r*q,E+=r*Y,S+=r*Z,R+=r*J,m+=(r=t[11])*j,b+=r*x,v+=r*F,k+=r*U,g+=r*L,_+=r*G,w+=r*K,I+=r*z,A+=r*Q,T+=r*H,O+=r*V,P+=r*W,E+=r*q,S+=r*Y,R+=r*Z,D+=r*J,b+=(r=t[12])*j,v+=r*x,k+=r*F,g+=r*U,_+=r*L,w+=r*G,I+=r*K,A+=r*z,T+=r*Q,O+=r*H,P+=r*V,E+=r*W,S+=r*q,R+=r*Y,D+=r*Z,C+=r*J,v+=(r=t[13])*j,k+=r*x,g+=r*F,_+=r*U,w+=r*L,I+=r*G,A+=r*K,T+=r*z,O+=r*Q,P+=r*H,E+=r*V,S+=r*W,R+=r*q,D+=r*Y,C+=r*Z,N+=r*J,k+=(r=t[14])*j,g+=r*x,_+=r*F,w+=r*U,I+=r*L,A+=r*G,T+=r*K,O+=r*z,P+=r*Q,E+=r*H,S+=r*V,R+=r*W,D+=r*q,C+=r*Y,N+=r*Z,B+=r*J,g+=(r=t[15])*j,i+=38*(w+=r*F),u+=38*(I+=r*U),c+=38*(A+=r*L),s+=38*(T+=r*G),l+=38*(O+=r*K),f+=38*(P+=r*z),d+=38*(E+=r*Q),p+=38*(S+=r*H),h+=38*(R+=r*V),y+=38*(D+=r*W),m+=38*(C+=r*q),b+=38*(N+=r*Y),v+=38*(B+=r*Z),k+=38*(M+=r*J),a=(r=(a+=38*(_+=r*x))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),a=(r=(a+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),a+=o-1+37*(o-1),e[0]=a,e[1]=i,e[2]=u,e[3]=c,e[4]=s,e[5]=l,e[6]=f,e[7]=d,e[8]=p,e[9]=h,e[10]=y,e[11]=m,e[12]=b,e[13]=v,e[14]=k,e[15]=g}function L(e,t){U(e,t,t)}function G(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=253;r>=0;r--)L(o,o),2!==r&&4!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function K(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=250;r>=0;r--)L(o,o),1!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function z(e,n,r){var o,a,i=new Uint8Array(32),u=new Float64Array(80),s=t(),l=t(),f=t(),d=t(),p=t(),h=t();for(a=0;a<31;a++)i[a]=n[a];for(i[31]=127&n[31]|64,i[0]&=248,j(u,r),a=0;a<16;a++)l[a]=u[a],d[a]=s[a]=f[a]=0;for(s[0]=d[0]=1,a=254;a>=0;--a)C(s,l,o=i[a>>>3]>>>(7&a)&1),C(f,d,o),x(p,s,f),F(s,s,f),x(f,l,d),F(l,l,d),L(d,p),L(h,s),U(s,f,s),U(f,l,p),x(p,s,f),F(s,s,f),L(l,s),F(f,d,h),U(s,f,c),x(s,s,d),U(f,f,s),U(s,d,h),U(d,l,u),L(l,p),C(s,l,o),C(f,d,o);for(a=0;a<16;a++)u[a+16]=s[a],u[a+32]=f[a],u[a+48]=l[a],u[a+64]=d[a];var y=u.subarray(32),m=u.subarray(16);return G(y,y),U(m,m,y),N(e,m),0}function Q(e,t){return z(e,t,a)}function H(e,t){return r(t,32),Q(e,t)}function V(e,t,n){var r=new Uint8Array(32);return z(r,n,t),k(e,o,r,g)}T.prototype.blocks=function(e,t,n){for(var r,o,a,i,u,c,s,l,f,d,p,h,y,m,b,v,k,g,_,w=this.fin?0:2048,I=this.h[0],A=this.h[1],T=this.h[2],O=this.h[3],P=this.h[4],E=this.h[5],S=this.h[6],R=this.h[7],D=this.h[8],C=this.h[9],N=this.r[0],B=this.r[1],M=this.r[2],j=this.r[3],x=this.r[4],F=this.r[5],U=this.r[6],L=this.r[7],G=this.r[8],K=this.r[9];n>=16;)d=f=0,d+=(I+=8191&(r=255&e[t+0]|(255&e[t+1])<<8))*N,d+=(A+=8191&(r>>>13|(o=255&e[t+2]|(255&e[t+3])<<8)<<3))*(5*K),d+=(T+=8191&(o>>>10|(a=255&e[t+4]|(255&e[t+5])<<8)<<6))*(5*G),d+=(O+=8191&(a>>>7|(i=255&e[t+6]|(255&e[t+7])<<8)<<9))*(5*L),f=(d+=(P+=8191&(i>>>4|(u=255&e[t+8]|(255&e[t+9])<<8)<<12))*(5*U))>>>13,d&=8191,d+=(E+=u>>>1&8191)*(5*F),d+=(S+=8191&(u>>>14|(c=255&e[t+10]|(255&e[t+11])<<8)<<2))*(5*x),d+=(R+=8191&(c>>>11|(s=255&e[t+12]|(255&e[t+13])<<8)<<5))*(5*j),d+=(D+=8191&(s>>>8|(l=255&e[t+14]|(255&e[t+15])<<8)<<8))*(5*M),p=f+=(d+=(C+=l>>>5|w)*(5*B))>>>13,p+=I*B,p+=A*N,p+=T*(5*K),p+=O*(5*G),f=(p+=P*(5*L))>>>13,p&=8191,p+=E*(5*U),p+=S*(5*F),p+=R*(5*x),p+=D*(5*j),f+=(p+=C*(5*M))>>>13,p&=8191,h=f,h+=I*M,h+=A*B,h+=T*N,h+=O*(5*K),f=(h+=P*(5*G))>>>13,h&=8191,h+=E*(5*L),h+=S*(5*U),h+=R*(5*F),h+=D*(5*x),y=f+=(h+=C*(5*j))>>>13,y+=I*j,y+=A*M,y+=T*B,y+=O*N,f=(y+=P*(5*K))>>>13,y&=8191,y+=E*(5*G),y+=S*(5*L),y+=R*(5*U),y+=D*(5*F),m=f+=(y+=C*(5*x))>>>13,m+=I*x,m+=A*j,m+=T*M,m+=O*B,f=(m+=P*N)>>>13,m&=8191,m+=E*(5*K),m+=S*(5*G),m+=R*(5*L),m+=D*(5*U),b=f+=(m+=C*(5*F))>>>13,b+=I*F,b+=A*x,b+=T*j,b+=O*M,f=(b+=P*B)>>>13,b&=8191,b+=E*N,b+=S*(5*K),b+=R*(5*G),b+=D*(5*L),v=f+=(b+=C*(5*U))>>>13,v+=I*U,v+=A*F,v+=T*x,v+=O*j,f=(v+=P*M)>>>13,v&=8191,v+=E*B,v+=S*N,v+=R*(5*K),v+=D*(5*G),k=f+=(v+=C*(5*L))>>>13,k+=I*L,k+=A*U,k+=T*F,k+=O*x,f=(k+=P*j)>>>13,k&=8191,k+=E*M,k+=S*B,k+=R*N,k+=D*(5*K),g=f+=(k+=C*(5*G))>>>13,g+=I*G,g+=A*L,g+=T*U,g+=O*F,f=(g+=P*x)>>>13,g&=8191,g+=E*j,g+=S*M,g+=R*B,g+=D*N,_=f+=(g+=C*(5*K))>>>13,_+=I*K,_+=A*G,_+=T*L,_+=O*U,f=(_+=P*F)>>>13,_&=8191,_+=E*x,_+=S*j,_+=R*M,_+=D*B,I=d=8191&(f=(f=((f+=(_+=C*N)>>>13)<<2)+f|0)+(d&=8191)|0),A=p+=f>>>=13,T=h&=8191,O=y&=8191,P=m&=8191,E=b&=8191,S=v&=8191,R=k&=8191,D=g&=8191,C=_&=8191,t+=16,n-=16;this.h[0]=I,this.h[1]=A,this.h[2]=T,this.h[3]=O,this.h[4]=P,this.h[5]=E,this.h[6]=S,this.h[7]=R,this.h[8]=D,this.h[9]=C},T.prototype.finish=function(e,t){var n,r,o,a,i=new Uint16Array(10);if(this.leftover){for(a=this.leftover,this.buffer[a++]=1;a<16;a++)this.buffer[a]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(n=this.h[1]>>>13,this.h[1]&=8191,a=2;a<10;a++)this.h[a]+=n,n=this.h[a]>>>13,this.h[a]&=8191;for(this.h[0]+=5*n,n=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=n,n=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=n,i[0]=this.h[0]+5,n=i[0]>>>13,i[0]&=8191,a=1;a<10;a++)i[a]=this.h[a]+n,n=i[a]>>>13,i[a]&=8191;for(i[9]-=8192,r=(1^n)-1,a=0;a<10;a++)i[a]&=r;for(r=~r,a=0;a<10;a++)this.h[a]=this.h[a]&r|i[a];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,a=1;a<8;a++)o=(this.h[a]+this.pad[a]|0)+(o>>>16)|0,this.h[a]=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},T.prototype.update=function(e,t,n){var r,o;if(this.leftover){for((o=16-this.leftover)>n&&(o=n),r=0;r=16&&(o=n-n%16,this.blocks(e,t,o),t+=o,n-=o),n){for(r=0;r=128;){for(w=0;w<16;w++)I=8*w+q,R[w]=n[I+0]<<24|n[I+1]<<16|n[I+2]<<8|n[I+3],D[w]=n[I+4]<<24|n[I+5]<<16|n[I+6]<<8|n[I+7];for(w=0;w<80;w++)if(o=C,a=N,i=B,u=M,c=j,s=x,l=F,U,d=L,p=G,h=K,y=z,m=Q,b=H,v=V,W,O=65535&(T=W),P=T>>>16,E=65535&(A=U),S=A>>>16,O+=65535&(T=(Q>>>14|j<<18)^(Q>>>18|j<<14)^(j>>>9|Q<<23)),P+=T>>>16,E+=65535&(A=(j>>>14|Q<<18)^(j>>>18|Q<<14)^(Q>>>9|j<<23)),S+=A>>>16,O+=65535&(T=Q&H^~Q&V),P+=T>>>16,E+=65535&(A=j&x^~j&F),S+=A>>>16,O+=65535&(T=Y[2*w+1]),P+=T>>>16,E+=65535&(A=Y[2*w]),S+=A>>>16,A=R[w%16],P+=(T=D[w%16])>>>16,E+=65535&A,S+=A>>>16,E+=(P+=(O+=65535&T)>>>16)>>>16,O=65535&(T=_=65535&O|P<<16),P=T>>>16,E=65535&(A=g=65535&E|(S+=E>>>16)<<16),S=A>>>16,O+=65535&(T=(L>>>28|C<<4)^(C>>>2|L<<30)^(C>>>7|L<<25)),P+=T>>>16,E+=65535&(A=(C>>>28|L<<4)^(L>>>2|C<<30)^(L>>>7|C<<25)),S+=A>>>16,P+=(T=L&G^L&K^G&K)>>>16,E+=65535&(A=C&N^C&B^N&B),S+=A>>>16,f=65535&(E+=(P+=(O+=65535&T)>>>16)>>>16)|(S+=E>>>16)<<16,k=65535&O|P<<16,O=65535&(T=y),P=T>>>16,E=65535&(A=u),S=A>>>16,P+=(T=_)>>>16,E+=65535&(A=g),S+=A>>>16,N=o,B=a,M=i,j=u=65535&(E+=(P+=(O+=65535&T)>>>16)>>>16)|(S+=E>>>16)<<16,x=c,F=s,U=l,C=f,G=d,K=p,z=h,Q=y=65535&O|P<<16,H=m,V=b,W=v,L=k,w%16==15)for(I=0;I<16;I++)A=R[I],O=65535&(T=D[I]),P=T>>>16,E=65535&A,S=A>>>16,A=R[(I+9)%16],O+=65535&(T=D[(I+9)%16]),P+=T>>>16,E+=65535&A,S+=A>>>16,g=R[(I+1)%16],O+=65535&(T=((_=D[(I+1)%16])>>>1|g<<31)^(_>>>8|g<<24)^(_>>>7|g<<25)),P+=T>>>16,E+=65535&(A=(g>>>1|_<<31)^(g>>>8|_<<24)^g>>>7),S+=A>>>16,g=R[(I+14)%16],P+=(T=((_=D[(I+14)%16])>>>19|g<<13)^(g>>>29|_<<3)^(_>>>6|g<<26))>>>16,E+=65535&(A=(g>>>19|_<<13)^(_>>>29|g<<3)^g>>>6),S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,R[I]=65535&E|S<<16,D[I]=65535&O|P<<16;O=65535&(T=L),P=T>>>16,E=65535&(A=C),S=A>>>16,A=e[0],P+=(T=t[0])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[0]=C=65535&E|S<<16,t[0]=L=65535&O|P<<16,O=65535&(T=G),P=T>>>16,E=65535&(A=N),S=A>>>16,A=e[1],P+=(T=t[1])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[1]=N=65535&E|S<<16,t[1]=G=65535&O|P<<16,O=65535&(T=K),P=T>>>16,E=65535&(A=B),S=A>>>16,A=e[2],P+=(T=t[2])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[2]=B=65535&E|S<<16,t[2]=K=65535&O|P<<16,O=65535&(T=z),P=T>>>16,E=65535&(A=M),S=A>>>16,A=e[3],P+=(T=t[3])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[3]=M=65535&E|S<<16,t[3]=z=65535&O|P<<16,O=65535&(T=Q),P=T>>>16,E=65535&(A=j),S=A>>>16,A=e[4],P+=(T=t[4])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[4]=j=65535&E|S<<16,t[4]=Q=65535&O|P<<16,O=65535&(T=H),P=T>>>16,E=65535&(A=x),S=A>>>16,A=e[5],P+=(T=t[5])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[5]=x=65535&E|S<<16,t[5]=H=65535&O|P<<16,O=65535&(T=V),P=T>>>16,E=65535&(A=F),S=A>>>16,A=e[6],P+=(T=t[6])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[6]=F=65535&E|S<<16,t[6]=V=65535&O|P<<16,O=65535&(T=W),P=T>>>16,E=65535&(A=U),S=A>>>16,A=e[7],P+=(T=t[7])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[7]=U=65535&E|S<<16,t[7]=W=65535&O|P<<16,q+=128,r-=128}return r}function J(e,t,n){var r,o=new Int32Array(8),a=new Int32Array(8),i=new Uint8Array(256),u=n;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,a[0]=4089235720,a[1]=2227873595,a[2]=4271175723,a[3]=1595750129,a[4]=2917565137,a[5]=725511199,a[6]=4215389547,a[7]=327033209,Z(o,a,t,n),n%=128,r=0;r=0;--o)$(e,t,r=n[o/8|0]>>(7&o)&1),X(t,e),X(e,e),$(e,t,r)}function ne(e,n){var r=[t(),t(),t(),t()];R(r[0],f),R(r[1],d),R(r[2],u),U(r[3],f,d),te(e,r,n)}function re(e,n,o){var a,i=new Uint8Array(64),u=[t(),t(),t(),t()];for(o||r(n,32),J(i,n,32),i[0]&=248,i[31]&=127,i[31]|=64,ne(u,i),ee(e,u),a=0;a<32;a++)n[a+32]=e[a];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 ae(e,t){var n,r,o,a;for(r=63;r>=32;--r){for(n=0,o=r-32,a=r-12;o>4)*oe[o],n=t[o]>>8,t[o]&=255;for(o=0;o<32;o++)t[o]-=n*oe[o];for(r=0;r<32;r++)t[r+1]+=t[r]>>8,e[r]=255&t[r]}function ie(e){var t,n=new Float64Array(64);for(t=0;t<64;t++)n[t]=e[t];for(t=0;t<64;t++)e[t]=0;ae(e,n)}function ue(e,n,r,o){var a,i,u=new Uint8Array(64),c=new Uint8Array(64),s=new Uint8Array(64),l=new Float64Array(64),f=[t(),t(),t(),t()];J(u,o,32),u[0]&=248,u[31]&=127,u[31]|=64;var d=r+64;for(a=0;a>7&&F(e[0],i,e[0]),U(e[3],e[0],e[1]),0)}(d,o))return-1;for(a=0;a=0},e.sign.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(64);return re(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(le(e),64!==e.length)throw new Error("bad secret key size");for(var t=new Uint8Array(32),n=0;n0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function s(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){u(e.precomputed);var n=e._getDoubles(),r=a(t,1,this._bitLength),o=(1<=i;l--)c=(c<<1)+r[l];s.push(c)}for(var f=this.jpoint(null,null,null),d=this.jpoint(null,null,null),p=o;p>0;p--){for(i=0;i=0;s--){for(var l=0;s>=0&&0===i[s];s--)l++;if(s>=0&&l++,c=c.dblp(l),s<0)break;var f=i[s];u(0!==f),c="affine"===e.type?f>0?c.mixedAdd(o[f-1>>1]):c.mixedAdd(o[-f-1>>1].neg()):f>0?c.add(o[f-1>>1]):c.add(o[-f-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,o){var u,c,s,l=this._wnafT1,f=this._wnafT2,d=this._wnafT3,p=0;for(u=0;u=1;u-=2){var y=u-1,m=u;if(1===l[y]&&1===l[m]){var b=[t[y],null,null,t[m]];0===t[y].y.cmp(t[m].y)?(b[1]=t[y].add(t[m]),b[2]=t[y].toJ().mixedAdd(t[m].neg())):0===t[y].y.cmp(t[m].y.redNeg())?(b[1]=t[y].toJ().mixedAdd(t[m]),b[2]=t[y].add(t[m].neg())):(b[1]=t[y].toJ().mixedAdd(t[m]),b[2]=t[y].toJ().mixedAdd(t[m].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],k=i(n[y],n[m]);for(p=Math.max(k[0].length,p),d[y]=new Array(p),d[m]=new Array(p),c=0;c=0;u--){for(var A=0;u>=0;){var T=!0;for(c=0;c=0&&A++,w=w.dblp(A),u<0)break;for(c=0;c0?s=f[c][O-1>>1]:O<0&&(s=f[c][-O-1>>1].neg()),w="affine"===s.type?w.mixedAdd(s):w.add(s))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},s.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,o=0;o1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength;if(!(Number.isInteger(t)&&t>=0))throw new Error("Invalid offset!");if(!(Number.isInteger(n)&&n>=0))throw new Error("Invalid length!");return new DataView(e.buffer,e.byteOffset+t,Math.min(n,e.byteLength-t))};var o=r(n(3)),a=r(n(145)),i=r(n(21));t.REQUIRE_NON_NULL_ERROR="This value cannot be null | undefined.";t.REQUIRE_STRING_ERROR="This value must be a string.";t.REQUIRE_UINT8ARRAY_ERROR="This value must be a Uint8Array.";t.REQUIRE_STRING_OR_UINT8ARRAY_ERROR="This value must be a string or Uint8Array.";t.REQUIRE_NUMBER_ERROR="This value must be a Number.";t.REQUIRE_BIGNUMBER_ERROR="This value must be a BigNumber.";t.REQUIRE_ARRAY_ERROR="The provided variable must be an Array.";t.REQUIRE_LONG_ERROR="This value must be a Long.";t.REQUIRE_TYPE_ERROR="The provided variables are not matching types.";t.FUNCTION_CONVERT_TO_BIGNUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";t.FUNCTION_CONVERT_TO_NUMBER_ERROR="This value must be a String, Number, or BigNumber to be converted.";function u(e){return null!=e&&null!=e}function c(e,t){return(0,o.default)(e)==(0,o.default)(t)}function s(e){return u(e)&&e instanceof Uint8Array}function l(e){return u(e)&&("number"==typeof e||e instanceof Number)}function f(e){return u(e)&&e instanceof a.default}function d(e){return u(e)&&e instanceof i.default}function p(e){return u(e)&&"string"==typeof e}function h(e){return u(e)&&(p(e)||s(e))}function y(e){if(u(e))return e;throw new Error("This value cannot be null | undefined.")}function m(e){if(y(e),f(e)||p(e)||l(e)||d(e))return new a.default(e);throw new Error("This value must be a String, Number, or BigNumber to be converted.")}t.FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR="Unable to parse given variable. Returns NaN."},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(12)),c=r(n(59)),s=r(n(64)),l=r(n(124)),f=r(n(28)),d=r(n(151)),p=r(n(501)),h=r(n(148)),y=r(n(21)),m=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37)),b=r(n(79));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}var k=function(){function e(t){(0,a.default)(this,e),this.status=t.status,this.accountId=t.accountId,this.fileId=t.fileId,this.contractId=t.contractId,this.topicId=t.topicId,this.tokenId=t.tokenId,this.scheduleId=t.scheduleId,this.exchangeRate=t.exchangeRate,this.topicSequenceNumber=t.topicSequenceNumber,this.topicRunningHash=t.topicRunningHash,this.totalSupply=t.totalSupply,this.scheduledTransactionId=t.scheduledTransactionId,this.serials=t.serials,this.duplicates=t.duplicates,this.children=t.children,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{duplicateTransactionReceipts:this.duplicates.map((function(e){return e._toProtobuf().receipt})),childTransactionReceipts:this.children.map((function(e){return e._toProtobuf().receipt})),receipt:{status:this.status.valueOf(),accountID:null!=this.accountId?this.accountId._toProtobuf():null,fileID:null!=this.fileId?this.fileId._toProtobuf():null,contractID:null!=this.contractId?this.contractId._toProtobuf():null,topicID:null!=this.topicId?this.topicId._toProtobuf():null,tokenID:null!=this.tokenId?this.tokenId._toProtobuf():null,scheduleID:null!=this.scheduleId?this.scheduleId._toProtobuf():null,topicRunningHash:null==this.topicRunningHash?null:this.topicRunningHash,topicSequenceNumber:this.topicSequenceNumber,exchangeRate:{nextRate:null,currentRate:null!=this.exchangeRate?this.exchangeRate._toProtobuf():null},scheduledTransactionID:null!=this.scheduledTransactionId?this.scheduledTransactionId._toProtobuf():null,serialNumbers:this.serials,newTotalSupply:this.totalSupply}}}},{key:"toBytes",value:function(){return m.TransactionGetReceiptResponse.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.receipt,r=n.exchangeRate,o=null!=t.childTransactionReceipts?t.childTransactionReceipts.map((function(t){return e._fromProtobuf({receipt:t})})):[],a=null!=t.duplicateTransactionReceipts?t.duplicateTransactionReceipts.map((function(t){return e._fromProtobuf({receipt:t})})):[];return new e({status:h.default._fromCode(null!=n.status?n.status:0),accountId:null!=n.accountID?u.default._fromProtobuf(n.accountID):null,fileId:null!=n.fileID?s.default._fromProtobuf(n.fileID):null,contractId:null!=n.contractID?c.default._fromProtobuf(n.contractID):null,topicId:null!=n.topicID?l.default._fromProtobuf(n.topicID):null,tokenId:null!=n.tokenID?f.default._fromProtobuf(n.tokenID):null,scheduleId:null!=n.scheduleID?d.default._fromProtobuf(n.scheduleID):null,exchangeRate:null!=n.exchangeRate?p.default._fromProtobuf(r.currentRate):null,topicSequenceNumber:null==n.topicSequenceNumber?null:y.default.fromValue(n.topicSequenceNumber),topicRunningHash:null!=n.topicRunningHash?n.topicRunningHash:null,totalSupply:null!=n.newTotalSupply?n.newTotalSupply:null,scheduledTransactionId:null!=n.scheduledTransactionID?b.default._fromProtobuf(n.scheduledTransactionID):null,serials:null!=n.serialNumbers?n.serialNumbers:[],children:o,duplicates:a})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(m.TransactionGetReceiptResponse.decode(t))}}]),e}();t.default=k},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(12)),u=r(n(35)),c=function(){function e(t){(0,o.default)(this,e),this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount.toTinybars()}}}],[{key:"_fromProtobuf",value:function(t){return new e({spenderAccountId:i.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?i.default._fromProtobuf(t.owner):null,amount:u.default.fromTinybars(null!=t.amount?t.amount:0)})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(28)),u=r(n(12)),c=r(n(21)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.amount=t.amount,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,amount:this.amount}}}],[{key:"_fromProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,amount:null!=t.amount?c.default.fromValue(t.amount):null})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(28)),u=r(n(12)),c=r(n(21)),s=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.spenderAccountId=t.spenderAccountId,this.ownerAccountId=t.ownerAccountId,this.serialNumbers=t.serialNumbers,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),spender:this.spenderAccountId._toProtobuf(),owner:null!=this.ownerAccountId?this.ownerAccountId._toProtobuf():null,approvedForAll:null==this.serialNumbers?{value:!0}:null,serialNumbers:this.serialNumbers}}}],[{key:"_fromProtobuf",value:function(t){return new e({tokenId:i.default._fromProtobuf(t.tokenId),spenderAccountId:u.default._fromProtobuf(t.spender),ownerAccountId:null!=t.owner?u.default._fromProtobuf(t.owner):null,serialNumbers:null!=t.approvedForAll&&t.approvedForAll.value?null:null!=t.serialNumbers?t.serialNumbers.map((function(e){return c.default.fromValue(e)})):[]})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=h(n(517)),s=h(n(111)),l=h(n(78)),f=r(n(145)),d=h(n(253));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n16)throw new TypeError("uint64/int64 requires BigNumber to be less than or equal to 8 bytes");if(!t.isInteger())throw new TypeError("uint64/int64 requires BigNumber to be an integer");E.length%2==1&&(E="0".concat(E));var S=l.decode(E);o.set(S,32-S.length)}return o;case c.ArgumentType.int256:case c.ArgumentType.uint256:if(f.default.isBigNumber(t)){var R=t.toString(16);R.length%2==1&&(R="0".concat(R));var D=l.decode(R);o.set(D,32-D.length)}return o;case c.ArgumentType.address:return o.set(t,12),o;case c.ArgumentType.bool:return o[31]=t?1:0,o;case c.ArgumentType.func:return o.set(t,8),o;case c.ArgumentType.bytes32:return o.set(t,0),o;case c.ArgumentType.bytes:case c.ArgumentType.string:return r=t instanceof Uint8Array?t:s.encode(t),(o=Math.floor(r.length/32)>=0&&0!==Math.floor(r.length%32)?new Uint8Array(32*(Math.floor(r.length/32)+1)+32):new Uint8Array(64)).set(r,32),(i=d.safeView(o,28)).setUint32(0,r.length),o;default:throw new Error("Unsupported argument type: ".concat(n.toString()))}}(e,this._selector._paramTypes[n]);return this._arguments.push({dynamic:t,value:r}),this}},{key:"_build",value:function(e){var t=null!=e,n=t?4:0,r=0===this._arguments.length?n:32*this._arguments.length+this._arguments.map((function(e){return e.dynamic?e.value.length:0})).reduce((function(e,t){return e+t}))+n,o=new Uint8Array(r);t&&o.set(this._selector._build(e),0);var i,u=32*this._arguments.length,c=y(this._arguments.entries());try{for(c.s();!(i=c.n()).done;){var s=(0,a.default)(i.value,2),l=s[0],f=s[1],p=f.dynamic,h=f.value;if(p){var m=d.safeView(o,n+32*l+28);m.setUint32(0,u),o.set(h,m.getUint32(0)+n),u+=h.length}else o.set(h,n+32*l)}}catch(e){c.e(e)}finally{c.f()}return o}}]),e}();function v(e,t,n){n(t,f.default.isBigNumber(e)?e.toNumber():e)}t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(12)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobuf",value:function(e){throw new Error("not implemented")}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(259)),l=r(n(12)),f=r(n(21));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var p=function(e){(0,i.default)(n,e);var t=d(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e._min,null!=r.min&&e.setMin(r.min),e._max,null!=r.max&&e.setMax(r.max),e._assessmentMethod,null!=r.assessmentMethod&&e.setAssessmentMethod(r.assessmentMethod),e}return(0,a.default)(n,[{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"min",get:function(){return this._min}},{key:"setMin",value:function(e){return this._min="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"max",get:function(){return this._max}},{key:"setMax",value:function(e){return this._max="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"assessmentMethod",get:function(){return this._assessmentMethod}},{key:"setAssessmentMethod",value:function(e){return this._assessmentMethod=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fractionalFee:{fractionalAmount:{numerator:this._numerator,denominator:this._denominator},minimumAmount:this._min,maximumAmount:this._max}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fractionalFee,r=t.fractionalAmount;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0,min:null!=t.minimumAmount?t.minimumAmount:void 0,max:null!=t.maximumAmount?t.maximumAmount:void 0})}}]),n}(s.default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(259)),l=r(n(12)),f=r(n(21)),d=r(n(205));function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var h=function(e){(0,i.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._fallbackFee,null!=r.fallbackFee&&e.setFallbackFee(r.fallbackFee),e._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e}return(0,a.default)(n,[{key:"fallbackFee",get:function(){return this._fallbackFee}},{key:"setFallbackFee",value:function(e){return this._fallbackFee=e,this}},{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,royaltyFee:{exchangeValueFraction:{numerator:this._numerator,denominator:this._denominator},fallbackFee:null!=this._fallbackFee?this._fallbackFee._toProtobuf().fixedFee:null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.royaltyFee,r=t.exchangeValueFraction;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,fallbackFee:null!=t.fallbackFee?d.default._fromProtobuf({fixedFee:t.fallbackFee}):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0})}}]),n}(s.default);t.default=h},function(e,t,n){"use strict";var r=n(26).Buffer;function o(e){r.isBuffer(e)||(e=r.from(e));for(var t=e.length/4|0,n=new Array(t),o=0;o>>24]^l[h>>>16&255]^f[y>>>8&255]^d[255&m]^t[b++],i=s[h>>>24]^l[y>>>16&255]^f[m>>>8&255]^d[255&p]^t[b++],u=s[y>>>24]^l[m>>>16&255]^f[p>>>8&255]^d[255&h]^t[b++],c=s[m>>>24]^l[p>>>16&255]^f[h>>>8&255]^d[255&y]^t[b++],p=a,h=i,y=u,m=c;return a=(r[p>>>24]<<24|r[h>>>16&255]<<16|r[y>>>8&255]<<8|r[255&m])^t[b++],i=(r[h>>>24]<<24|r[y>>>16&255]<<16|r[m>>>8&255]<<8|r[255&p])^t[b++],u=(r[y>>>24]<<24|r[m>>>16&255]<<16|r[p>>>8&255]<<8|r[255&h])^t[b++],c=(r[m>>>24]<<24|r[p>>>16&255]<<16|r[h>>>8&255]<<8|r[255&y])^t[b++],[a>>>=0,i>>>=0,u>>>=0,c>>>=0]}var u=[0,1,2,4,8,16,32,64,128,27,54],c=function(){for(var e=new Array(256),t=0;t<256;t++)e[t]=t<128?t<<1:t<<1^283;for(var n=[],r=[],o=[[],[],[],[]],a=[[],[],[],[]],i=0,u=0,c=0;c<256;++c){var s=u^u<<1^u<<2^u<<3^u<<4;s=s>>>8^255&s^99,n[i]=s,r[s]=i;var l=e[i],f=e[l],d=e[f],p=257*e[s]^16843008*s;o[0][i]=p<<24|p>>>8,o[1][i]=p<<16|p>>>16,o[2][i]=p<<8|p>>>24,o[3][i]=p,p=16843009*d^65537*f^257*l^16843008*i,a[0][s]=p<<24|p>>>8,a[1][s]=p<<16|p>>>16,a[2][s]=p<<8|p>>>24,a[3][s]=p,0===i?i=u=1:(i=l^e[e[e[d^l]]],u^=e[e[u]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:o,INV_SUB_MIX:a}}();function s(e){this._key=o(e),this._reset()}s.blockSize=16,s.keySize=32,s.prototype.blockSize=s.blockSize,s.prototype.keySize=s.keySize,s.prototype._reset=function(){for(var e=this._key,t=e.length,n=t+6,r=4*(n+1),o=[],a=0;a>>24,i=c.SBOX[i>>>24]<<24|c.SBOX[i>>>16&255]<<16|c.SBOX[i>>>8&255]<<8|c.SBOX[255&i],i^=u[a/t|0]<<24):t>6&&a%t==4&&(i=c.SBOX[i>>>24]<<24|c.SBOX[i>>>16&255]<<16|c.SBOX[i>>>8&255]<<8|c.SBOX[255&i]),o[a]=o[a-t]^i}for(var s=[],l=0;l>>24]]^c.INV_SUB_MIX[1][c.SBOX[d>>>16&255]]^c.INV_SUB_MIX[2][c.SBOX[d>>>8&255]]^c.INV_SUB_MIX[3][c.SBOX[255&d]]}this._nRounds=n,this._keySchedule=o,this._invKeySchedule=s},s.prototype.encryptBlockRaw=function(e){return i(e=o(e),this._keySchedule,c.SUB_MIX,c.SBOX,this._nRounds)},s.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),n=r.allocUnsafe(16);return n.writeUInt32BE(t[0],0),n.writeUInt32BE(t[1],4),n.writeUInt32BE(t[2],8),n.writeUInt32BE(t[3],12),n},s.prototype.decryptBlock=function(e){var t=(e=o(e))[1];e[1]=e[3],e[3]=t;var n=i(e,this._invKeySchedule,c.INV_SUB_MIX,c.INV_SBOX,this._nRounds),a=r.allocUnsafe(16);return a.writeUInt32BE(n[0],0),a.writeUInt32BE(n[3],4),a.writeUInt32BE(n[2],8),a.writeUInt32BE(n[1],12),a},s.prototype.scrub=function(){a(this._keySchedule),a(this._invKeySchedule),a(this._key)},e.exports.AES=s},function(e,t,n){"use strict";var r=n(26).Buffer,o=n(306);e.exports=function(e,t,n,a){if(r.isBuffer(e)||(e=r.from(e,"binary")),t&&(r.isBuffer(t)||(t=r.from(t,"binary")),8!==t.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var i=n/8,u=r.alloc(i),c=r.alloc(a||0),s=r.alloc(0);i>0||a>0;){var l=new o;l.update(s),l.update(e),t&&l.update(t),s=l.digest();var f=0;if(i>0){var d=u.length-i;f=Math.min(i,s.length),s.copy(u,d,0,f),i-=f}if(f0){var p=c.length-a,h=Math.min(a,s.length-f);s.copy(c,p,f,f+h),a-=h}}return s.fill(0),{key:u,iv:c}}},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(1113),a=n(1120),i=n(1121),u=n(331),c=n(534),s=n(26).Buffer;function l(e){var t;"object"!==(0,r.default)(e)||s.isBuffer(e)||(t=e.passphrase,e=e.key),"string"==typeof e&&(e=s.from(e));var n,l,f=i(e,t),d=f.tag,p=f.data;switch(d){case"CERTIFICATE":l=o.certificate.decode(p,"der").tbsCertificate.subjectPublicKeyInfo;case"PUBLIC KEY":switch(l||(l=o.PublicKey.decode(p,"der")),n=l.algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return o.RSAPublicKey.decode(l.subjectPublicKey.data,"der");case"1.2.840.10045.2.1":return l.subjectPrivateKey=l.subjectPublicKey,{type:"ec",data:l};case"1.2.840.10040.4.1":return l.algorithm.params.pub_key=o.DSAparam.decode(l.subjectPublicKey.data,"der"),{type:"dsa",data:l.algorithm.params};default:throw new Error("unknown key id "+n)}case"ENCRYPTED PRIVATE KEY":p=function(e,t){var n=e.algorithm.decrypt.kde.kdeparams.salt,r=parseInt(e.algorithm.decrypt.kde.kdeparams.iters.toString(),10),o=a[e.algorithm.decrypt.cipher.algo.join(".")],i=e.algorithm.decrypt.cipher.iv,l=e.subjectPrivateKey,f=parseInt(o.split("-")[1],10)/8,d=c.pbkdf2Sync(t,n,r,f,"sha1"),p=u.createDecipheriv(o,d,i),h=[];return h.push(p.update(l)),h.push(p.final()),s.concat(h)}(p=o.EncryptedPrivateKey.decode(p,"der"),t);case"PRIVATE KEY":switch(n=(l=o.PrivateKey.decode(p,"der")).algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return o.RSAPrivateKey.decode(l.subjectPrivateKey,"der");case"1.2.840.10045.2.1":return{curve:l.algorithm.curve,privateKey:o.ECPrivateKey.decode(l.subjectPrivateKey,"der").privateKey};case"1.2.840.10040.4.1":return l.algorithm.params.priv_key=o.DSAparam.decode(l.subjectPrivateKey,"der"),{type:"dsa",params:l.algorithm.params};default:throw new Error("unknown key id "+n)}case"RSA PUBLIC KEY":return o.RSAPublicKey.decode(p,"der");case"RSA PRIVATE KEY":return o.RSAPrivateKey.decode(p,"der");case"DSA PRIVATE KEY":return{type:"dsa",params:o.DSAPrivateKey.decode(p,"der")};case"EC PRIVATE KEY":return{curve:(p=o.ECPrivateKey.decode(p,"der")).parameters.value,privateKey:p.privateKey};default:throw new Error("unknown key type "+d)}}e.exports=l,l.signature=o.signature},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.assertIsString=t.assertIsArray=t.assertIsBuffer=t.assertIsHexString=void 0;var r=n(183);t.assertIsHexString=function(e){if(!(0,r.isHexString)(e)){var t="This method only supports 0x-prefixed hex strings but input was: ".concat(e);throw new Error(t)}};t.assertIsBuffer=function(t){if(!e.isBuffer(t)){var n="This method only supports Buffer but input was: ".concat(t);throw new Error(n)}};t.assertIsArray=function(e){if(!Array.isArray(e)){var t="This method only supports number arrays but input was: ".concat(e);throw new Error(t)}};t.assertIsString=function(e){if("string"!=typeof e){var t="This method only supports strings but input was: ".concat(e);throw new Error(t)}}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return u.default}});var o=r(n(187)),a=r(n(1173)),i=r(n(1174)),u=r(n(593)),c=r(n(578)),s=r(n(113)),l=r(n(581)),f=r(n(345))},function(e,t,n){"use strict";!function(e){var t=function(e){var t,n=new Float64Array(16);if(e)for(t=0;t>24&255,e[t+1]=n>>16&255,e[t+2]=n>>8&255,e[t+3]=255&n,e[t+4]=r>>24&255,e[t+5]=r>>16&255,e[t+6]=r>>8&255,e[t+7]=255&r}function y(e,t,n,r,o){var a,i=0;for(a=0;a>>8)-1}function m(e,t,n,r){return y(e,t,n,r,16)}function b(e,t,n,r){return y(e,t,n,r,32)}function v(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,m=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,b=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,k=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,g=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=a,w=i,I=u,A=c,T=s,O=l,P=f,E=d,S=p,R=h,D=y,C=m,N=b,B=v,M=k,j=g,x=0;x<20;x+=2)_^=(o=(N^=(o=(S^=(o=(T^=(o=_+N|0)<<7|o>>>25)+_|0)<<9|o>>>23)+T|0)<<13|o>>>19)+S|0)<<18|o>>>14,O^=(o=(w^=(o=(B^=(o=(R^=(o=O+w|0)<<7|o>>>25)+O|0)<<9|o>>>23)+R|0)<<13|o>>>19)+B|0)<<18|o>>>14,D^=(o=(P^=(o=(I^=(o=(M^=(o=D+P|0)<<7|o>>>25)+D|0)<<9|o>>>23)+M|0)<<13|o>>>19)+I|0)<<18|o>>>14,j^=(o=(C^=(o=(E^=(o=(A^=(o=j+C|0)<<7|o>>>25)+j|0)<<9|o>>>23)+A|0)<<13|o>>>19)+E|0)<<18|o>>>14,_^=(o=(A^=(o=(I^=(o=(w^=(o=_+A|0)<<7|o>>>25)+_|0)<<9|o>>>23)+w|0)<<13|o>>>19)+I|0)<<18|o>>>14,O^=(o=(T^=(o=(E^=(o=(P^=(o=O+T|0)<<7|o>>>25)+O|0)<<9|o>>>23)+P|0)<<13|o>>>19)+E|0)<<18|o>>>14,D^=(o=(R^=(o=(S^=(o=(C^=(o=D+R|0)<<7|o>>>25)+D|0)<<9|o>>>23)+C|0)<<13|o>>>19)+S|0)<<18|o>>>14,j^=(o=(M^=(o=(B^=(o=(N^=(o=j+M|0)<<7|o>>>25)+j|0)<<9|o>>>23)+N|0)<<13|o>>>19)+B|0)<<18|o>>>14;_=_+a|0,w=w+i|0,I=I+u|0,A=A+c|0,T=T+s|0,O=O+l|0,P=P+f|0,E=E+d|0,S=S+p|0,R=R+h|0,D=D+y|0,C=C+m|0,N=N+b|0,B=B+v|0,M=M+k|0,j=j+g|0,e[0]=_>>>0&255,e[1]=_>>>8&255,e[2]=_>>>16&255,e[3]=_>>>24&255,e[4]=w>>>0&255,e[5]=w>>>8&255,e[6]=w>>>16&255,e[7]=w>>>24&255,e[8]=I>>>0&255,e[9]=I>>>8&255,e[10]=I>>>16&255,e[11]=I>>>24&255,e[12]=A>>>0&255,e[13]=A>>>8&255,e[14]=A>>>16&255,e[15]=A>>>24&255,e[16]=T>>>0&255,e[17]=T>>>8&255,e[18]=T>>>16&255,e[19]=T>>>24&255,e[20]=O>>>0&255,e[21]=O>>>8&255,e[22]=O>>>16&255,e[23]=O>>>24&255,e[24]=P>>>0&255,e[25]=P>>>8&255,e[26]=P>>>16&255,e[27]=P>>>24&255,e[28]=E>>>0&255,e[29]=E>>>8&255,e[30]=E>>>16&255,e[31]=E>>>24&255,e[32]=S>>>0&255,e[33]=S>>>8&255,e[34]=S>>>16&255,e[35]=S>>>24&255,e[36]=R>>>0&255,e[37]=R>>>8&255,e[38]=R>>>16&255,e[39]=R>>>24&255,e[40]=D>>>0&255,e[41]=D>>>8&255,e[42]=D>>>16&255,e[43]=D>>>24&255,e[44]=C>>>0&255,e[45]=C>>>8&255,e[46]=C>>>16&255,e[47]=C>>>24&255,e[48]=N>>>0&255,e[49]=N>>>8&255,e[50]=N>>>16&255,e[51]=N>>>24&255,e[52]=B>>>0&255,e[53]=B>>>8&255,e[54]=B>>>16&255,e[55]=B>>>24&255,e[56]=M>>>0&255,e[57]=M>>>8&255,e[58]=M>>>16&255,e[59]=M>>>24&255,e[60]=j>>>0&255,e[61]=j>>>8&255,e[62]=j>>>16&255,e[63]=j>>>24&255}(e,t,n,r)}function k(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,m=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,b=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,k=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,g=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=0;_<20;_+=2)a^=(o=(b^=(o=(p^=(o=(s^=(o=a+b|0)<<7|o>>>25)+a|0)<<9|o>>>23)+s|0)<<13|o>>>19)+p|0)<<18|o>>>14,l^=(o=(i^=(o=(v^=(o=(h^=(o=l+i|0)<<7|o>>>25)+l|0)<<9|o>>>23)+h|0)<<13|o>>>19)+v|0)<<18|o>>>14,y^=(o=(f^=(o=(u^=(o=(k^=(o=y+f|0)<<7|o>>>25)+y|0)<<9|o>>>23)+k|0)<<13|o>>>19)+u|0)<<18|o>>>14,g^=(o=(m^=(o=(d^=(o=(c^=(o=g+m|0)<<7|o>>>25)+g|0)<<9|o>>>23)+c|0)<<13|o>>>19)+d|0)<<18|o>>>14,a^=(o=(c^=(o=(u^=(o=(i^=(o=a+c|0)<<7|o>>>25)+a|0)<<9|o>>>23)+i|0)<<13|o>>>19)+u|0)<<18|o>>>14,l^=(o=(s^=(o=(d^=(o=(f^=(o=l+s|0)<<7|o>>>25)+l|0)<<9|o>>>23)+f|0)<<13|o>>>19)+d|0)<<18|o>>>14,y^=(o=(h^=(o=(p^=(o=(m^=(o=y+h|0)<<7|o>>>25)+y|0)<<9|o>>>23)+m|0)<<13|o>>>19)+p|0)<<18|o>>>14,g^=(o=(k^=(o=(v^=(o=(b^=(o=g+k|0)<<7|o>>>25)+g|0)<<9|o>>>23)+b|0)<<13|o>>>19)+v|0)<<18|o>>>14;e[0]=a>>>0&255,e[1]=a>>>8&255,e[2]=a>>>16&255,e[3]=a>>>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]=g>>>0&255,e[13]=g>>>8&255,e[14]=g>>>16&255,e[15]=g>>>24&255,e[16]=f>>>0&255,e[17]=f>>>8&255,e[18]=f>>>16&255,e[19]=f>>>24&255,e[20]=d>>>0&255,e[21]=d>>>8&255,e[22]=d>>>16&255,e[23]=d>>>24&255,e[24]=p>>>0&255,e[25]=p>>>8&255,e[26]=p>>>16&255,e[27]=p>>>24&255,e[28]=h>>>0&255,e[29]=h>>>8&255,e[30]=h>>>16&255,e[31]=h>>>24&255}(e,t,n,r)}var g=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function _(e,t,n,r,o,a,i){var u,c,s=new Uint8Array(16),l=new Uint8Array(64);for(c=0;c<16;c++)s[c]=0;for(c=0;c<8;c++)s[c]=a[c];for(;o>=64;){for(v(l,s,i,g),c=0;c<64;c++)e[t+c]=n[r+c]^l[c];for(u=1,c=8;c<16;c++)u=u+(255&s[c])|0,s[c]=255&u,u>>>=8;o-=64,t+=64,r+=64}if(o>0)for(v(l,s,i,g),c=0;c=64;){for(v(c,u,o,g),i=0;i<64;i++)e[t+i]=c[i];for(a=1,i=8;i<16;i++)a=a+(255&u[i])|0,u[i]=255&a,a>>>=8;n-=64,t+=64}if(n>0)for(v(c,u,o,g),i=0;i>>13|n<<3),r=255&e[4]|(255&e[5])<<8,this.r[2]=7939&(n>>>10|r<<6),o=255&e[6]|(255&e[7])<<8,this.r[3]=8191&(r>>>7|o<<9),a=255&e[8]|(255&e[9])<<8,this.r[4]=255&(o>>>4|a<<12),this.r[5]=a>>>1&8190,i=255&e[10]|(255&e[11])<<8,this.r[6]=8191&(a>>>14|i<<2),u=255&e[12]|(255&e[13])<<8,this.r[7]=8065&(i>>>11|u<<5),c=255&e[14]|(255&e[15])<<8,this.r[8]=8191&(u>>>8|c<<8),this.r[9]=c>>>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 O(e,t,n,r,o,a){var i=new T(a);return i.update(n,r,o),i.finish(e,t),0}function P(e,t,n,r,o,a){var i=new Uint8Array(16);return O(i,0,n,r,o,a),m(e,t,i,0)}function E(e,t,n,r,o){var a;if(n<32)return-1;for(A(e,0,t,0,n,r,o),O(e,16,e,32,n-32,e),a=0;a<16;a++)e[a]=0;return 0}function S(e,t,n,r,o){var a,i=new Uint8Array(32);if(n<32)return-1;if(I(i,0,32,r,o),0!==P(t,16,t,32,n-32,i))return-1;for(A(e,0,t,0,n,r,o),a=0;a<32;a++)e[a]=0;return 0}function R(e,t){var n;for(n=0;n<16;n++)e[n]=0|t[n]}function D(e){var t,n,r=1;for(t=0;t<16;t++)n=e[t]+r+65535,r=Math.floor(n/65536),e[t]=n-65536*r;e[0]+=r-1+37*(r-1)}function C(e,t,n){for(var r,o=~(n-1),a=0;a<16;a++)r=o&(e[a]^t[a]),e[a]^=r,t[a]^=r}function N(e,n){var r,o,a,i=t(),u=t();for(r=0;r<16;r++)u[r]=n[r];for(D(u),D(u),D(u),o=0;o<2;o++){for(i[0]=u[0]-65517,r=1;r<15;r++)i[r]=u[r]-65535-(i[r-1]>>16&1),i[r-1]&=65535;i[15]=u[15]-32767-(i[14]>>16&1),a=i[15]>>16&1,i[14]&=65535,C(u,i,1-a)}for(r=0;r<16;r++)e[2*r]=255&u[r],e[2*r+1]=u[r]>>8}function B(e,t){var n=new Uint8Array(32),r=new Uint8Array(32);return N(n,e),N(r,t),b(n,0,r,0)}function M(e){var t=new Uint8Array(32);return N(t,e),1&t[0]}function j(e,t){var n;for(n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}function x(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]+n[r]}function F(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]-n[r]}function U(e,t,n){var r,o,a=0,i=0,u=0,c=0,s=0,l=0,f=0,d=0,p=0,h=0,y=0,m=0,b=0,v=0,k=0,g=0,_=0,w=0,I=0,A=0,T=0,O=0,P=0,E=0,S=0,R=0,D=0,C=0,N=0,B=0,M=0,j=n[0],x=n[1],F=n[2],U=n[3],L=n[4],G=n[5],K=n[6],z=n[7],Q=n[8],H=n[9],V=n[10],W=n[11],q=n[12],Y=n[13],Z=n[14],J=n[15];a+=(r=t[0])*j,i+=r*x,u+=r*F,c+=r*U,s+=r*L,l+=r*G,f+=r*K,d+=r*z,p+=r*Q,h+=r*H,y+=r*V,m+=r*W,b+=r*q,v+=r*Y,k+=r*Z,g+=r*J,i+=(r=t[1])*j,u+=r*x,c+=r*F,s+=r*U,l+=r*L,f+=r*G,d+=r*K,p+=r*z,h+=r*Q,y+=r*H,m+=r*V,b+=r*W,v+=r*q,k+=r*Y,g+=r*Z,_+=r*J,u+=(r=t[2])*j,c+=r*x,s+=r*F,l+=r*U,f+=r*L,d+=r*G,p+=r*K,h+=r*z,y+=r*Q,m+=r*H,b+=r*V,v+=r*W,k+=r*q,g+=r*Y,_+=r*Z,w+=r*J,c+=(r=t[3])*j,s+=r*x,l+=r*F,f+=r*U,d+=r*L,p+=r*G,h+=r*K,y+=r*z,m+=r*Q,b+=r*H,v+=r*V,k+=r*W,g+=r*q,_+=r*Y,w+=r*Z,I+=r*J,s+=(r=t[4])*j,l+=r*x,f+=r*F,d+=r*U,p+=r*L,h+=r*G,y+=r*K,m+=r*z,b+=r*Q,v+=r*H,k+=r*V,g+=r*W,_+=r*q,w+=r*Y,I+=r*Z,A+=r*J,l+=(r=t[5])*j,f+=r*x,d+=r*F,p+=r*U,h+=r*L,y+=r*G,m+=r*K,b+=r*z,v+=r*Q,k+=r*H,g+=r*V,_+=r*W,w+=r*q,I+=r*Y,A+=r*Z,T+=r*J,f+=(r=t[6])*j,d+=r*x,p+=r*F,h+=r*U,y+=r*L,m+=r*G,b+=r*K,v+=r*z,k+=r*Q,g+=r*H,_+=r*V,w+=r*W,I+=r*q,A+=r*Y,T+=r*Z,O+=r*J,d+=(r=t[7])*j,p+=r*x,h+=r*F,y+=r*U,m+=r*L,b+=r*G,v+=r*K,k+=r*z,g+=r*Q,_+=r*H,w+=r*V,I+=r*W,A+=r*q,T+=r*Y,O+=r*Z,P+=r*J,p+=(r=t[8])*j,h+=r*x,y+=r*F,m+=r*U,b+=r*L,v+=r*G,k+=r*K,g+=r*z,_+=r*Q,w+=r*H,I+=r*V,A+=r*W,T+=r*q,O+=r*Y,P+=r*Z,E+=r*J,h+=(r=t[9])*j,y+=r*x,m+=r*F,b+=r*U,v+=r*L,k+=r*G,g+=r*K,_+=r*z,w+=r*Q,I+=r*H,A+=r*V,T+=r*W,O+=r*q,P+=r*Y,E+=r*Z,S+=r*J,y+=(r=t[10])*j,m+=r*x,b+=r*F,v+=r*U,k+=r*L,g+=r*G,_+=r*K,w+=r*z,I+=r*Q,A+=r*H,T+=r*V,O+=r*W,P+=r*q,E+=r*Y,S+=r*Z,R+=r*J,m+=(r=t[11])*j,b+=r*x,v+=r*F,k+=r*U,g+=r*L,_+=r*G,w+=r*K,I+=r*z,A+=r*Q,T+=r*H,O+=r*V,P+=r*W,E+=r*q,S+=r*Y,R+=r*Z,D+=r*J,b+=(r=t[12])*j,v+=r*x,k+=r*F,g+=r*U,_+=r*L,w+=r*G,I+=r*K,A+=r*z,T+=r*Q,O+=r*H,P+=r*V,E+=r*W,S+=r*q,R+=r*Y,D+=r*Z,C+=r*J,v+=(r=t[13])*j,k+=r*x,g+=r*F,_+=r*U,w+=r*L,I+=r*G,A+=r*K,T+=r*z,O+=r*Q,P+=r*H,E+=r*V,S+=r*W,R+=r*q,D+=r*Y,C+=r*Z,N+=r*J,k+=(r=t[14])*j,g+=r*x,_+=r*F,w+=r*U,I+=r*L,A+=r*G,T+=r*K,O+=r*z,P+=r*Q,E+=r*H,S+=r*V,R+=r*W,D+=r*q,C+=r*Y,N+=r*Z,B+=r*J,g+=(r=t[15])*j,i+=38*(w+=r*F),u+=38*(I+=r*U),c+=38*(A+=r*L),s+=38*(T+=r*G),l+=38*(O+=r*K),f+=38*(P+=r*z),d+=38*(E+=r*Q),p+=38*(S+=r*H),h+=38*(R+=r*V),y+=38*(D+=r*W),m+=38*(C+=r*q),b+=38*(N+=r*Y),v+=38*(B+=r*Z),k+=38*(M+=r*J),a=(r=(a+=38*(_+=r*x))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),a=(r=(a+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),a+=o-1+37*(o-1),e[0]=a,e[1]=i,e[2]=u,e[3]=c,e[4]=s,e[5]=l,e[6]=f,e[7]=d,e[8]=p,e[9]=h,e[10]=y,e[11]=m,e[12]=b,e[13]=v,e[14]=k,e[15]=g}function L(e,t){U(e,t,t)}function G(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=253;r>=0;r--)L(o,o),2!==r&&4!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function K(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=250;r>=0;r--)L(o,o),1!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function z(e,n,r){var o,a,i=new Uint8Array(32),u=new Float64Array(80),s=t(),l=t(),f=t(),d=t(),p=t(),h=t();for(a=0;a<31;a++)i[a]=n[a];for(i[31]=127&n[31]|64,i[0]&=248,j(u,r),a=0;a<16;a++)l[a]=u[a],d[a]=s[a]=f[a]=0;for(s[0]=d[0]=1,a=254;a>=0;--a)C(s,l,o=i[a>>>3]>>>(7&a)&1),C(f,d,o),x(p,s,f),F(s,s,f),x(f,l,d),F(l,l,d),L(d,p),L(h,s),U(s,f,s),U(f,l,p),x(p,s,f),F(s,s,f),L(l,s),F(f,d,h),U(s,f,c),x(s,s,d),U(f,f,s),U(s,d,h),U(d,l,u),L(l,p),C(s,l,o),C(f,d,o);for(a=0;a<16;a++)u[a+16]=s[a],u[a+32]=f[a],u[a+48]=l[a],u[a+64]=d[a];var y=u.subarray(32),m=u.subarray(16);return G(y,y),U(m,m,y),N(e,m),0}function Q(e,t){return z(e,t,a)}function H(e,t){return r(t,32),Q(e,t)}function V(e,t,n){var r=new Uint8Array(32);return z(r,n,t),k(e,o,r,g)}T.prototype.blocks=function(e,t,n){for(var r,o,a,i,u,c,s,l,f,d,p,h,y,m,b,v,k,g,_,w=this.fin?0:2048,I=this.h[0],A=this.h[1],T=this.h[2],O=this.h[3],P=this.h[4],E=this.h[5],S=this.h[6],R=this.h[7],D=this.h[8],C=this.h[9],N=this.r[0],B=this.r[1],M=this.r[2],j=this.r[3],x=this.r[4],F=this.r[5],U=this.r[6],L=this.r[7],G=this.r[8],K=this.r[9];n>=16;)d=f=0,d+=(I+=8191&(r=255&e[t+0]|(255&e[t+1])<<8))*N,d+=(A+=8191&(r>>>13|(o=255&e[t+2]|(255&e[t+3])<<8)<<3))*(5*K),d+=(T+=8191&(o>>>10|(a=255&e[t+4]|(255&e[t+5])<<8)<<6))*(5*G),d+=(O+=8191&(a>>>7|(i=255&e[t+6]|(255&e[t+7])<<8)<<9))*(5*L),f=(d+=(P+=8191&(i>>>4|(u=255&e[t+8]|(255&e[t+9])<<8)<<12))*(5*U))>>>13,d&=8191,d+=(E+=u>>>1&8191)*(5*F),d+=(S+=8191&(u>>>14|(c=255&e[t+10]|(255&e[t+11])<<8)<<2))*(5*x),d+=(R+=8191&(c>>>11|(s=255&e[t+12]|(255&e[t+13])<<8)<<5))*(5*j),d+=(D+=8191&(s>>>8|(l=255&e[t+14]|(255&e[t+15])<<8)<<8))*(5*M),p=f+=(d+=(C+=l>>>5|w)*(5*B))>>>13,p+=I*B,p+=A*N,p+=T*(5*K),p+=O*(5*G),f=(p+=P*(5*L))>>>13,p&=8191,p+=E*(5*U),p+=S*(5*F),p+=R*(5*x),p+=D*(5*j),f+=(p+=C*(5*M))>>>13,p&=8191,h=f,h+=I*M,h+=A*B,h+=T*N,h+=O*(5*K),f=(h+=P*(5*G))>>>13,h&=8191,h+=E*(5*L),h+=S*(5*U),h+=R*(5*F),h+=D*(5*x),y=f+=(h+=C*(5*j))>>>13,y+=I*j,y+=A*M,y+=T*B,y+=O*N,f=(y+=P*(5*K))>>>13,y&=8191,y+=E*(5*G),y+=S*(5*L),y+=R*(5*U),y+=D*(5*F),m=f+=(y+=C*(5*x))>>>13,m+=I*x,m+=A*j,m+=T*M,m+=O*B,f=(m+=P*N)>>>13,m&=8191,m+=E*(5*K),m+=S*(5*G),m+=R*(5*L),m+=D*(5*U),b=f+=(m+=C*(5*F))>>>13,b+=I*F,b+=A*x,b+=T*j,b+=O*M,f=(b+=P*B)>>>13,b&=8191,b+=E*N,b+=S*(5*K),b+=R*(5*G),b+=D*(5*L),v=f+=(b+=C*(5*U))>>>13,v+=I*U,v+=A*F,v+=T*x,v+=O*j,f=(v+=P*M)>>>13,v&=8191,v+=E*B,v+=S*N,v+=R*(5*K),v+=D*(5*G),k=f+=(v+=C*(5*L))>>>13,k+=I*L,k+=A*U,k+=T*F,k+=O*x,f=(k+=P*j)>>>13,k&=8191,k+=E*M,k+=S*B,k+=R*N,k+=D*(5*K),g=f+=(k+=C*(5*G))>>>13,g+=I*G,g+=A*L,g+=T*U,g+=O*F,f=(g+=P*x)>>>13,g&=8191,g+=E*j,g+=S*M,g+=R*B,g+=D*N,_=f+=(g+=C*(5*K))>>>13,_+=I*K,_+=A*G,_+=T*L,_+=O*U,f=(_+=P*F)>>>13,_&=8191,_+=E*x,_+=S*j,_+=R*M,_+=D*B,I=d=8191&(f=(f=((f+=(_+=C*N)>>>13)<<2)+f|0)+(d&=8191)|0),A=p+=f>>>=13,T=h&=8191,O=y&=8191,P=m&=8191,E=b&=8191,S=v&=8191,R=k&=8191,D=g&=8191,C=_&=8191,t+=16,n-=16;this.h[0]=I,this.h[1]=A,this.h[2]=T,this.h[3]=O,this.h[4]=P,this.h[5]=E,this.h[6]=S,this.h[7]=R,this.h[8]=D,this.h[9]=C},T.prototype.finish=function(e,t){var n,r,o,a,i=new Uint16Array(10);if(this.leftover){for(a=this.leftover,this.buffer[a++]=1;a<16;a++)this.buffer[a]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(n=this.h[1]>>>13,this.h[1]&=8191,a=2;a<10;a++)this.h[a]+=n,n=this.h[a]>>>13,this.h[a]&=8191;for(this.h[0]+=5*n,n=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=n,n=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=n,i[0]=this.h[0]+5,n=i[0]>>>13,i[0]&=8191,a=1;a<10;a++)i[a]=this.h[a]+n,n=i[a]>>>13,i[a]&=8191;for(i[9]-=8192,r=(1^n)-1,a=0;a<10;a++)i[a]&=r;for(r=~r,a=0;a<10;a++)this.h[a]=this.h[a]&r|i[a];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,a=1;a<8;a++)o=(this.h[a]+this.pad[a]|0)+(o>>>16)|0,this.h[a]=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},T.prototype.update=function(e,t,n){var r,o;if(this.leftover){for((o=16-this.leftover)>n&&(o=n),r=0;r=16&&(o=n-n%16,this.blocks(e,t,o),t+=o,n-=o),n){for(r=0;r=128;){for(w=0;w<16;w++)I=8*w+q,R[w]=n[I+0]<<24|n[I+1]<<16|n[I+2]<<8|n[I+3],D[w]=n[I+4]<<24|n[I+5]<<16|n[I+6]<<8|n[I+7];for(w=0;w<80;w++)if(o=C,a=N,i=B,u=M,c=j,s=x,l=F,U,d=L,p=G,h=K,y=z,m=Q,b=H,v=V,W,O=65535&(T=W),P=T>>>16,E=65535&(A=U),S=A>>>16,O+=65535&(T=(Q>>>14|j<<18)^(Q>>>18|j<<14)^(j>>>9|Q<<23)),P+=T>>>16,E+=65535&(A=(j>>>14|Q<<18)^(j>>>18|Q<<14)^(Q>>>9|j<<23)),S+=A>>>16,O+=65535&(T=Q&H^~Q&V),P+=T>>>16,E+=65535&(A=j&x^~j&F),S+=A>>>16,O+=65535&(T=Y[2*w+1]),P+=T>>>16,E+=65535&(A=Y[2*w]),S+=A>>>16,A=R[w%16],P+=(T=D[w%16])>>>16,E+=65535&A,S+=A>>>16,E+=(P+=(O+=65535&T)>>>16)>>>16,O=65535&(T=_=65535&O|P<<16),P=T>>>16,E=65535&(A=g=65535&E|(S+=E>>>16)<<16),S=A>>>16,O+=65535&(T=(L>>>28|C<<4)^(C>>>2|L<<30)^(C>>>7|L<<25)),P+=T>>>16,E+=65535&(A=(C>>>28|L<<4)^(L>>>2|C<<30)^(L>>>7|C<<25)),S+=A>>>16,P+=(T=L&G^L&K^G&K)>>>16,E+=65535&(A=C&N^C&B^N&B),S+=A>>>16,f=65535&(E+=(P+=(O+=65535&T)>>>16)>>>16)|(S+=E>>>16)<<16,k=65535&O|P<<16,O=65535&(T=y),P=T>>>16,E=65535&(A=u),S=A>>>16,P+=(T=_)>>>16,E+=65535&(A=g),S+=A>>>16,N=o,B=a,M=i,j=u=65535&(E+=(P+=(O+=65535&T)>>>16)>>>16)|(S+=E>>>16)<<16,x=c,F=s,U=l,C=f,G=d,K=p,z=h,Q=y=65535&O|P<<16,H=m,V=b,W=v,L=k,w%16==15)for(I=0;I<16;I++)A=R[I],O=65535&(T=D[I]),P=T>>>16,E=65535&A,S=A>>>16,A=R[(I+9)%16],O+=65535&(T=D[(I+9)%16]),P+=T>>>16,E+=65535&A,S+=A>>>16,g=R[(I+1)%16],O+=65535&(T=((_=D[(I+1)%16])>>>1|g<<31)^(_>>>8|g<<24)^(_>>>7|g<<25)),P+=T>>>16,E+=65535&(A=(g>>>1|_<<31)^(g>>>8|_<<24)^g>>>7),S+=A>>>16,g=R[(I+14)%16],P+=(T=((_=D[(I+14)%16])>>>19|g<<13)^(g>>>29|_<<3)^(_>>>6|g<<26))>>>16,E+=65535&(A=(g>>>19|_<<13)^(_>>>29|g<<3)^g>>>6),S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,R[I]=65535&E|S<<16,D[I]=65535&O|P<<16;O=65535&(T=L),P=T>>>16,E=65535&(A=C),S=A>>>16,A=e[0],P+=(T=t[0])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[0]=C=65535&E|S<<16,t[0]=L=65535&O|P<<16,O=65535&(T=G),P=T>>>16,E=65535&(A=N),S=A>>>16,A=e[1],P+=(T=t[1])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[1]=N=65535&E|S<<16,t[1]=G=65535&O|P<<16,O=65535&(T=K),P=T>>>16,E=65535&(A=B),S=A>>>16,A=e[2],P+=(T=t[2])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[2]=B=65535&E|S<<16,t[2]=K=65535&O|P<<16,O=65535&(T=z),P=T>>>16,E=65535&(A=M),S=A>>>16,A=e[3],P+=(T=t[3])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[3]=M=65535&E|S<<16,t[3]=z=65535&O|P<<16,O=65535&(T=Q),P=T>>>16,E=65535&(A=j),S=A>>>16,A=e[4],P+=(T=t[4])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[4]=j=65535&E|S<<16,t[4]=Q=65535&O|P<<16,O=65535&(T=H),P=T>>>16,E=65535&(A=x),S=A>>>16,A=e[5],P+=(T=t[5])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[5]=x=65535&E|S<<16,t[5]=H=65535&O|P<<16,O=65535&(T=V),P=T>>>16,E=65535&(A=F),S=A>>>16,A=e[6],P+=(T=t[6])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[6]=F=65535&E|S<<16,t[6]=V=65535&O|P<<16,O=65535&(T=W),P=T>>>16,E=65535&(A=U),S=A>>>16,A=e[7],P+=(T=t[7])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[7]=U=65535&E|S<<16,t[7]=W=65535&O|P<<16,q+=128,r-=128}return r}function J(e,t,n){var r,o=new Int32Array(8),a=new Int32Array(8),i=new Uint8Array(256),u=n;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,a[0]=4089235720,a[1]=2227873595,a[2]=4271175723,a[3]=1595750129,a[4]=2917565137,a[5]=725511199,a[6]=4215389547,a[7]=327033209,Z(o,a,t,n),n%=128,r=0;r=0;--o)$(e,t,r=n[o/8|0]>>(7&o)&1),X(t,e),X(e,e),$(e,t,r)}function ne(e,n){var r=[t(),t(),t(),t()];R(r[0],f),R(r[1],d),R(r[2],u),U(r[3],f,d),te(e,r,n)}function re(e,n,o){var a,i=new Uint8Array(64),u=[t(),t(),t(),t()];for(o||r(n,32),J(i,n,32),i[0]&=248,i[31]&=127,i[31]|=64,ne(u,i),ee(e,u),a=0;a<32;a++)n[a+32]=e[a];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 ae(e,t){var n,r,o,a;for(r=63;r>=32;--r){for(n=0,o=r-32,a=r-12;o>4)*oe[o],n=t[o]>>8,t[o]&=255;for(o=0;o<32;o++)t[o]-=n*oe[o];for(r=0;r<32;r++)t[r+1]+=t[r]>>8,e[r]=255&t[r]}function ie(e){var t,n=new Float64Array(64);for(t=0;t<64;t++)n[t]=e[t];for(t=0;t<64;t++)e[t]=0;ae(e,n)}function ue(e,n,r,o){var a,i,u=new Uint8Array(64),c=new Uint8Array(64),s=new Uint8Array(64),l=new Float64Array(64),f=[t(),t(),t(),t()];J(u,o,32),u[0]&=248,u[31]&=127,u[31]|=64;var d=r+64;for(a=0;a>7&&F(e[0],i,e[0]),U(e[3],e[0],e[1]),0)}(d,o))return-1;for(a=0;a=0},e.sign.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(64);return re(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(le(e),64!==e.length)throw new Error("bad secret key size");for(var t=new Uint8Array(32),n=0;n0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function s(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){u(e.precomputed);var n=e._getDoubles(),r=a(t,1,this._bitLength),o=(1<=i;l--)c=(c<<1)+r[l];s.push(c)}for(var f=this.jpoint(null,null,null),d=this.jpoint(null,null,null),p=o;p>0;p--){for(i=0;i=0;s--){for(var l=0;s>=0&&0===i[s];s--)l++;if(s>=0&&l++,c=c.dblp(l),s<0)break;var f=i[s];u(0!==f),c="affine"===e.type?f>0?c.mixedAdd(o[f-1>>1]):c.mixedAdd(o[-f-1>>1].neg()):f>0?c.add(o[f-1>>1]):c.add(o[-f-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,o){var u,c,s,l=this._wnafT1,f=this._wnafT2,d=this._wnafT3,p=0;for(u=0;u=1;u-=2){var y=u-1,m=u;if(1===l[y]&&1===l[m]){var b=[t[y],null,null,t[m]];0===t[y].y.cmp(t[m].y)?(b[1]=t[y].add(t[m]),b[2]=t[y].toJ().mixedAdd(t[m].neg())):0===t[y].y.cmp(t[m].y.redNeg())?(b[1]=t[y].toJ().mixedAdd(t[m]),b[2]=t[y].add(t[m].neg())):(b[1]=t[y].toJ().mixedAdd(t[m]),b[2]=t[y].toJ().mixedAdd(t[m].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],k=i(n[y],n[m]);for(p=Math.max(k[0].length,p),d[y]=new Array(p),d[m]=new Array(p),c=0;c=0;u--){for(var A=0;u>=0;){var T=!0;for(c=0;c=0&&A++,w=w.dblp(A),u<0)break;for(c=0;c0?s=f[c][O-1>>1]:O<0&&(s=f[c][-O-1>>1].neg()),w="affine"===s.type?w.mixedAdd(s):w.add(s))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},s.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,o=0;o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n16)throw new TypeError("uint64/int64 requires BigNumber to be less than or equal to 8 bytes");if(!t.isInteger())throw new TypeError("uint64/int64 requires BigNumber to be an integer");E.length%2==1&&(E="0".concat(E));var S=l.decode(E);o.set(S,32-S.length)}return o;case c.ArgumentType.int256:case c.ArgumentType.uint256:if(f.default.isBigNumber(t)){var R=t.toString(16);R.length%2==1&&(R="0".concat(R));var D=l.decode(R);o.set(D,32-D.length)}return o;case c.ArgumentType.address:return o.set(t,12),o;case c.ArgumentType.bool:return o[31]=t?1:0,o;case c.ArgumentType.func:return o.set(t,8),o;case c.ArgumentType.bytes32:return o.set(t,0),o;case c.ArgumentType.bytes:case c.ArgumentType.string:return r=t instanceof Uint8Array?t:s.encode(t),(o=Math.floor(r.length/32)>=0&&0!==Math.floor(r.length%32)?new Uint8Array(32*(Math.floor(r.length/32)+1)+32):new Uint8Array(64)).set(r,32),(i=d.safeView(o,28)).setUint32(0,r.length),o;default:throw new Error("Unsupported argument type: ".concat(n.toString()))}}(e,this._selector._paramTypes[n]);return this._arguments.push({dynamic:t,value:r}),this}},{key:"_build",value:function(e){var t=null!=e,n=t?4:0,r=0===this._arguments.length?n:32*this._arguments.length+this._arguments.map((function(e){return e.dynamic?e.value.length:0})).reduce((function(e,t){return e+t}))+n,o=new Uint8Array(r);t&&o.set(this._selector._build(e),0);var i,u=32*this._arguments.length,c=y(this._arguments.entries());try{for(c.s();!(i=c.n()).done;){var s=(0,a.default)(i.value,2),l=s[0],f=s[1],p=f.dynamic,h=f.value;if(p){var m=d.safeView(o,n+32*l+28);m.setUint32(0,u),o.set(h,m.getUint32(0)+n),u+=h.length}else o.set(h,n+32*l)}}catch(e){c.e(e)}finally{c.f()}return o}}]),e}();function v(e,t,n){n(t,f.default.isBigNumber(e)?e.toNumber():e)}t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(13)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobuf",value:function(e){throw new Error("not implemented")}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(274)),l=r(n(13)),f=r(n(18));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var p=function(e){(0,i.default)(n,e);var t=d(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e._min,null!=r.min&&e.setMin(r.min),e._max,null!=r.max&&e.setMax(r.max),e._assessmentMethod,null!=r.assessmentMethod&&e.setAssessmentMethod(r.assessmentMethod),e}return(0,a.default)(n,[{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"min",get:function(){return this._min}},{key:"setMin",value:function(e){return this._min="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"max",get:function(){return this._max}},{key:"setMax",value:function(e){return this._max="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"assessmentMethod",get:function(){return this._assessmentMethod}},{key:"setAssessmentMethod",value:function(e){return this._assessmentMethod=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fractionalFee:{fractionalAmount:{numerator:this._numerator,denominator:this._denominator},minimumAmount:this._min,maximumAmount:this._max}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fractionalFee,r=t.fractionalAmount;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0,min:null!=t.minimumAmount?t.minimumAmount:void 0,max:null!=t.maximumAmount?t.maximumAmount:void 0})}}]),n}(s.default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(274)),l=r(n(13)),f=r(n(18)),d=r(n(216));function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var h=function(e){(0,i.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._fallbackFee,null!=r.fallbackFee&&e.setFallbackFee(r.fallbackFee),e._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e}return(0,a.default)(n,[{key:"fallbackFee",get:function(){return this._fallbackFee}},{key:"setFallbackFee",value:function(e){return this._fallbackFee=e,this}},{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,royaltyFee:{exchangeValueFraction:{numerator:this._numerator,denominator:this._denominator},fallbackFee:null!=this._fallbackFee?this._fallbackFee._toProtobuf().fixedFee:null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.royaltyFee,r=t.exchangeValueFraction;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,fallbackFee:null!=t.fallbackFee?d.default._fromProtobuf({fixedFee:t.fallbackFee}):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0})}}]),n}(s.default);t.default=h},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return u.default}});var o=r(n(191)),a=r(n(1317)),i=r(n(1318)),u=r(n(653)),c=r(n(638)),s=r(n(114)),l=r(n(641)),f=r(n(360))},function(e,t,n){"use strict";!function(e){var t=function(e){var t,n=new Float64Array(16);if(e)for(t=0;t>24&255,e[t+1]=n>>16&255,e[t+2]=n>>8&255,e[t+3]=255&n,e[t+4]=r>>24&255,e[t+5]=r>>16&255,e[t+6]=r>>8&255,e[t+7]=255&r}function y(e,t,n,r,o){var a,i=0;for(a=0;a>>8)-1}function m(e,t,n,r){return y(e,t,n,r,16)}function b(e,t,n,r){return y(e,t,n,r,32)}function v(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,m=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,b=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,k=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,g=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=a,w=i,I=u,A=c,T=s,O=l,P=f,E=d,S=p,R=h,D=y,C=m,N=b,B=v,M=k,j=g,x=0;x<20;x+=2)_^=(o=(N^=(o=(S^=(o=(T^=(o=_+N|0)<<7|o>>>25)+_|0)<<9|o>>>23)+T|0)<<13|o>>>19)+S|0)<<18|o>>>14,O^=(o=(w^=(o=(B^=(o=(R^=(o=O+w|0)<<7|o>>>25)+O|0)<<9|o>>>23)+R|0)<<13|o>>>19)+B|0)<<18|o>>>14,D^=(o=(P^=(o=(I^=(o=(M^=(o=D+P|0)<<7|o>>>25)+D|0)<<9|o>>>23)+M|0)<<13|o>>>19)+I|0)<<18|o>>>14,j^=(o=(C^=(o=(E^=(o=(A^=(o=j+C|0)<<7|o>>>25)+j|0)<<9|o>>>23)+A|0)<<13|o>>>19)+E|0)<<18|o>>>14,_^=(o=(A^=(o=(I^=(o=(w^=(o=_+A|0)<<7|o>>>25)+_|0)<<9|o>>>23)+w|0)<<13|o>>>19)+I|0)<<18|o>>>14,O^=(o=(T^=(o=(E^=(o=(P^=(o=O+T|0)<<7|o>>>25)+O|0)<<9|o>>>23)+P|0)<<13|o>>>19)+E|0)<<18|o>>>14,D^=(o=(R^=(o=(S^=(o=(C^=(o=D+R|0)<<7|o>>>25)+D|0)<<9|o>>>23)+C|0)<<13|o>>>19)+S|0)<<18|o>>>14,j^=(o=(M^=(o=(B^=(o=(N^=(o=j+M|0)<<7|o>>>25)+j|0)<<9|o>>>23)+N|0)<<13|o>>>19)+B|0)<<18|o>>>14;_=_+a|0,w=w+i|0,I=I+u|0,A=A+c|0,T=T+s|0,O=O+l|0,P=P+f|0,E=E+d|0,S=S+p|0,R=R+h|0,D=D+y|0,C=C+m|0,N=N+b|0,B=B+v|0,M=M+k|0,j=j+g|0,e[0]=_>>>0&255,e[1]=_>>>8&255,e[2]=_>>>16&255,e[3]=_>>>24&255,e[4]=w>>>0&255,e[5]=w>>>8&255,e[6]=w>>>16&255,e[7]=w>>>24&255,e[8]=I>>>0&255,e[9]=I>>>8&255,e[10]=I>>>16&255,e[11]=I>>>24&255,e[12]=A>>>0&255,e[13]=A>>>8&255,e[14]=A>>>16&255,e[15]=A>>>24&255,e[16]=T>>>0&255,e[17]=T>>>8&255,e[18]=T>>>16&255,e[19]=T>>>24&255,e[20]=O>>>0&255,e[21]=O>>>8&255,e[22]=O>>>16&255,e[23]=O>>>24&255,e[24]=P>>>0&255,e[25]=P>>>8&255,e[26]=P>>>16&255,e[27]=P>>>24&255,e[28]=E>>>0&255,e[29]=E>>>8&255,e[30]=E>>>16&255,e[31]=E>>>24&255,e[32]=S>>>0&255,e[33]=S>>>8&255,e[34]=S>>>16&255,e[35]=S>>>24&255,e[36]=R>>>0&255,e[37]=R>>>8&255,e[38]=R>>>16&255,e[39]=R>>>24&255,e[40]=D>>>0&255,e[41]=D>>>8&255,e[42]=D>>>16&255,e[43]=D>>>24&255,e[44]=C>>>0&255,e[45]=C>>>8&255,e[46]=C>>>16&255,e[47]=C>>>24&255,e[48]=N>>>0&255,e[49]=N>>>8&255,e[50]=N>>>16&255,e[51]=N>>>24&255,e[52]=B>>>0&255,e[53]=B>>>8&255,e[54]=B>>>16&255,e[55]=B>>>24&255,e[56]=M>>>0&255,e[57]=M>>>8&255,e[58]=M>>>16&255,e[59]=M>>>24&255,e[60]=j>>>0&255,e[61]=j>>>8&255,e[62]=j>>>16&255,e[63]=j>>>24&255}(e,t,n,r)}function k(e,t,n,r){!function(e,t,n,r){for(var o,a=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,i=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,u=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,c=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,s=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,f=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,p=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,h=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,m=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,b=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,k=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,g=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,_=0;_<20;_+=2)a^=(o=(b^=(o=(p^=(o=(s^=(o=a+b|0)<<7|o>>>25)+a|0)<<9|o>>>23)+s|0)<<13|o>>>19)+p|0)<<18|o>>>14,l^=(o=(i^=(o=(v^=(o=(h^=(o=l+i|0)<<7|o>>>25)+l|0)<<9|o>>>23)+h|0)<<13|o>>>19)+v|0)<<18|o>>>14,y^=(o=(f^=(o=(u^=(o=(k^=(o=y+f|0)<<7|o>>>25)+y|0)<<9|o>>>23)+k|0)<<13|o>>>19)+u|0)<<18|o>>>14,g^=(o=(m^=(o=(d^=(o=(c^=(o=g+m|0)<<7|o>>>25)+g|0)<<9|o>>>23)+c|0)<<13|o>>>19)+d|0)<<18|o>>>14,a^=(o=(c^=(o=(u^=(o=(i^=(o=a+c|0)<<7|o>>>25)+a|0)<<9|o>>>23)+i|0)<<13|o>>>19)+u|0)<<18|o>>>14,l^=(o=(s^=(o=(d^=(o=(f^=(o=l+s|0)<<7|o>>>25)+l|0)<<9|o>>>23)+f|0)<<13|o>>>19)+d|0)<<18|o>>>14,y^=(o=(h^=(o=(p^=(o=(m^=(o=y+h|0)<<7|o>>>25)+y|0)<<9|o>>>23)+m|0)<<13|o>>>19)+p|0)<<18|o>>>14,g^=(o=(k^=(o=(v^=(o=(b^=(o=g+k|0)<<7|o>>>25)+g|0)<<9|o>>>23)+b|0)<<13|o>>>19)+v|0)<<18|o>>>14;e[0]=a>>>0&255,e[1]=a>>>8&255,e[2]=a>>>16&255,e[3]=a>>>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]=g>>>0&255,e[13]=g>>>8&255,e[14]=g>>>16&255,e[15]=g>>>24&255,e[16]=f>>>0&255,e[17]=f>>>8&255,e[18]=f>>>16&255,e[19]=f>>>24&255,e[20]=d>>>0&255,e[21]=d>>>8&255,e[22]=d>>>16&255,e[23]=d>>>24&255,e[24]=p>>>0&255,e[25]=p>>>8&255,e[26]=p>>>16&255,e[27]=p>>>24&255,e[28]=h>>>0&255,e[29]=h>>>8&255,e[30]=h>>>16&255,e[31]=h>>>24&255}(e,t,n,r)}var g=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function _(e,t,n,r,o,a,i){var u,c,s=new Uint8Array(16),l=new Uint8Array(64);for(c=0;c<16;c++)s[c]=0;for(c=0;c<8;c++)s[c]=a[c];for(;o>=64;){for(v(l,s,i,g),c=0;c<64;c++)e[t+c]=n[r+c]^l[c];for(u=1,c=8;c<16;c++)u=u+(255&s[c])|0,s[c]=255&u,u>>>=8;o-=64,t+=64,r+=64}if(o>0)for(v(l,s,i,g),c=0;c=64;){for(v(c,u,o,g),i=0;i<64;i++)e[t+i]=c[i];for(a=1,i=8;i<16;i++)a=a+(255&u[i])|0,u[i]=255&a,a>>>=8;n-=64,t+=64}if(n>0)for(v(c,u,o,g),i=0;i>>13|n<<3),r=255&e[4]|(255&e[5])<<8,this.r[2]=7939&(n>>>10|r<<6),o=255&e[6]|(255&e[7])<<8,this.r[3]=8191&(r>>>7|o<<9),a=255&e[8]|(255&e[9])<<8,this.r[4]=255&(o>>>4|a<<12),this.r[5]=a>>>1&8190,i=255&e[10]|(255&e[11])<<8,this.r[6]=8191&(a>>>14|i<<2),u=255&e[12]|(255&e[13])<<8,this.r[7]=8065&(i>>>11|u<<5),c=255&e[14]|(255&e[15])<<8,this.r[8]=8191&(u>>>8|c<<8),this.r[9]=c>>>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 O(e,t,n,r,o,a){var i=new T(a);return i.update(n,r,o),i.finish(e,t),0}function P(e,t,n,r,o,a){var i=new Uint8Array(16);return O(i,0,n,r,o,a),m(e,t,i,0)}function E(e,t,n,r,o){var a;if(n<32)return-1;for(A(e,0,t,0,n,r,o),O(e,16,e,32,n-32,e),a=0;a<16;a++)e[a]=0;return 0}function S(e,t,n,r,o){var a,i=new Uint8Array(32);if(n<32)return-1;if(I(i,0,32,r,o),0!==P(t,16,t,32,n-32,i))return-1;for(A(e,0,t,0,n,r,o),a=0;a<32;a++)e[a]=0;return 0}function R(e,t){var n;for(n=0;n<16;n++)e[n]=0|t[n]}function D(e){var t,n,r=1;for(t=0;t<16;t++)n=e[t]+r+65535,r=Math.floor(n/65536),e[t]=n-65536*r;e[0]+=r-1+37*(r-1)}function C(e,t,n){for(var r,o=~(n-1),a=0;a<16;a++)r=o&(e[a]^t[a]),e[a]^=r,t[a]^=r}function N(e,n){var r,o,a,i=t(),u=t();for(r=0;r<16;r++)u[r]=n[r];for(D(u),D(u),D(u),o=0;o<2;o++){for(i[0]=u[0]-65517,r=1;r<15;r++)i[r]=u[r]-65535-(i[r-1]>>16&1),i[r-1]&=65535;i[15]=u[15]-32767-(i[14]>>16&1),a=i[15]>>16&1,i[14]&=65535,C(u,i,1-a)}for(r=0;r<16;r++)e[2*r]=255&u[r],e[2*r+1]=u[r]>>8}function B(e,t){var n=new Uint8Array(32),r=new Uint8Array(32);return N(n,e),N(r,t),b(n,0,r,0)}function M(e){var t=new Uint8Array(32);return N(t,e),1&t[0]}function j(e,t){var n;for(n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}function x(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]+n[r]}function F(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]-n[r]}function U(e,t,n){var r,o,a=0,i=0,u=0,c=0,s=0,l=0,f=0,d=0,p=0,h=0,y=0,m=0,b=0,v=0,k=0,g=0,_=0,w=0,I=0,A=0,T=0,O=0,P=0,E=0,S=0,R=0,D=0,C=0,N=0,B=0,M=0,j=n[0],x=n[1],F=n[2],U=n[3],L=n[4],G=n[5],K=n[6],z=n[7],Q=n[8],H=n[9],V=n[10],W=n[11],q=n[12],Y=n[13],Z=n[14],J=n[15];a+=(r=t[0])*j,i+=r*x,u+=r*F,c+=r*U,s+=r*L,l+=r*G,f+=r*K,d+=r*z,p+=r*Q,h+=r*H,y+=r*V,m+=r*W,b+=r*q,v+=r*Y,k+=r*Z,g+=r*J,i+=(r=t[1])*j,u+=r*x,c+=r*F,s+=r*U,l+=r*L,f+=r*G,d+=r*K,p+=r*z,h+=r*Q,y+=r*H,m+=r*V,b+=r*W,v+=r*q,k+=r*Y,g+=r*Z,_+=r*J,u+=(r=t[2])*j,c+=r*x,s+=r*F,l+=r*U,f+=r*L,d+=r*G,p+=r*K,h+=r*z,y+=r*Q,m+=r*H,b+=r*V,v+=r*W,k+=r*q,g+=r*Y,_+=r*Z,w+=r*J,c+=(r=t[3])*j,s+=r*x,l+=r*F,f+=r*U,d+=r*L,p+=r*G,h+=r*K,y+=r*z,m+=r*Q,b+=r*H,v+=r*V,k+=r*W,g+=r*q,_+=r*Y,w+=r*Z,I+=r*J,s+=(r=t[4])*j,l+=r*x,f+=r*F,d+=r*U,p+=r*L,h+=r*G,y+=r*K,m+=r*z,b+=r*Q,v+=r*H,k+=r*V,g+=r*W,_+=r*q,w+=r*Y,I+=r*Z,A+=r*J,l+=(r=t[5])*j,f+=r*x,d+=r*F,p+=r*U,h+=r*L,y+=r*G,m+=r*K,b+=r*z,v+=r*Q,k+=r*H,g+=r*V,_+=r*W,w+=r*q,I+=r*Y,A+=r*Z,T+=r*J,f+=(r=t[6])*j,d+=r*x,p+=r*F,h+=r*U,y+=r*L,m+=r*G,b+=r*K,v+=r*z,k+=r*Q,g+=r*H,_+=r*V,w+=r*W,I+=r*q,A+=r*Y,T+=r*Z,O+=r*J,d+=(r=t[7])*j,p+=r*x,h+=r*F,y+=r*U,m+=r*L,b+=r*G,v+=r*K,k+=r*z,g+=r*Q,_+=r*H,w+=r*V,I+=r*W,A+=r*q,T+=r*Y,O+=r*Z,P+=r*J,p+=(r=t[8])*j,h+=r*x,y+=r*F,m+=r*U,b+=r*L,v+=r*G,k+=r*K,g+=r*z,_+=r*Q,w+=r*H,I+=r*V,A+=r*W,T+=r*q,O+=r*Y,P+=r*Z,E+=r*J,h+=(r=t[9])*j,y+=r*x,m+=r*F,b+=r*U,v+=r*L,k+=r*G,g+=r*K,_+=r*z,w+=r*Q,I+=r*H,A+=r*V,T+=r*W,O+=r*q,P+=r*Y,E+=r*Z,S+=r*J,y+=(r=t[10])*j,m+=r*x,b+=r*F,v+=r*U,k+=r*L,g+=r*G,_+=r*K,w+=r*z,I+=r*Q,A+=r*H,T+=r*V,O+=r*W,P+=r*q,E+=r*Y,S+=r*Z,R+=r*J,m+=(r=t[11])*j,b+=r*x,v+=r*F,k+=r*U,g+=r*L,_+=r*G,w+=r*K,I+=r*z,A+=r*Q,T+=r*H,O+=r*V,P+=r*W,E+=r*q,S+=r*Y,R+=r*Z,D+=r*J,b+=(r=t[12])*j,v+=r*x,k+=r*F,g+=r*U,_+=r*L,w+=r*G,I+=r*K,A+=r*z,T+=r*Q,O+=r*H,P+=r*V,E+=r*W,S+=r*q,R+=r*Y,D+=r*Z,C+=r*J,v+=(r=t[13])*j,k+=r*x,g+=r*F,_+=r*U,w+=r*L,I+=r*G,A+=r*K,T+=r*z,O+=r*Q,P+=r*H,E+=r*V,S+=r*W,R+=r*q,D+=r*Y,C+=r*Z,N+=r*J,k+=(r=t[14])*j,g+=r*x,_+=r*F,w+=r*U,I+=r*L,A+=r*G,T+=r*K,O+=r*z,P+=r*Q,E+=r*H,S+=r*V,R+=r*W,D+=r*q,C+=r*Y,N+=r*Z,B+=r*J,g+=(r=t[15])*j,i+=38*(w+=r*F),u+=38*(I+=r*U),c+=38*(A+=r*L),s+=38*(T+=r*G),l+=38*(O+=r*K),f+=38*(P+=r*z),d+=38*(E+=r*Q),p+=38*(S+=r*H),h+=38*(R+=r*V),y+=38*(D+=r*W),m+=38*(C+=r*q),b+=38*(N+=r*Y),v+=38*(B+=r*Z),k+=38*(M+=r*J),a=(r=(a+=38*(_+=r*x))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),a=(r=(a+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),i=(r=i+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),k=(r=k+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),a+=o-1+37*(o-1),e[0]=a,e[1]=i,e[2]=u,e[3]=c,e[4]=s,e[5]=l,e[6]=f,e[7]=d,e[8]=p,e[9]=h,e[10]=y,e[11]=m,e[12]=b,e[13]=v,e[14]=k,e[15]=g}function L(e,t){U(e,t,t)}function G(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=253;r>=0;r--)L(o,o),2!==r&&4!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function K(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=250;r>=0;r--)L(o,o),1!==r&&U(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function z(e,n,r){var o,a,i=new Uint8Array(32),u=new Float64Array(80),s=t(),l=t(),f=t(),d=t(),p=t(),h=t();for(a=0;a<31;a++)i[a]=n[a];for(i[31]=127&n[31]|64,i[0]&=248,j(u,r),a=0;a<16;a++)l[a]=u[a],d[a]=s[a]=f[a]=0;for(s[0]=d[0]=1,a=254;a>=0;--a)C(s,l,o=i[a>>>3]>>>(7&a)&1),C(f,d,o),x(p,s,f),F(s,s,f),x(f,l,d),F(l,l,d),L(d,p),L(h,s),U(s,f,s),U(f,l,p),x(p,s,f),F(s,s,f),L(l,s),F(f,d,h),U(s,f,c),x(s,s,d),U(f,f,s),U(s,d,h),U(d,l,u),L(l,p),C(s,l,o),C(f,d,o);for(a=0;a<16;a++)u[a+16]=s[a],u[a+32]=f[a],u[a+48]=l[a],u[a+64]=d[a];var y=u.subarray(32),m=u.subarray(16);return G(y,y),U(m,m,y),N(e,m),0}function Q(e,t){return z(e,t,a)}function H(e,t){return r(t,32),Q(e,t)}function V(e,t,n){var r=new Uint8Array(32);return z(r,n,t),k(e,o,r,g)}T.prototype.blocks=function(e,t,n){for(var r,o,a,i,u,c,s,l,f,d,p,h,y,m,b,v,k,g,_,w=this.fin?0:2048,I=this.h[0],A=this.h[1],T=this.h[2],O=this.h[3],P=this.h[4],E=this.h[5],S=this.h[6],R=this.h[7],D=this.h[8],C=this.h[9],N=this.r[0],B=this.r[1],M=this.r[2],j=this.r[3],x=this.r[4],F=this.r[5],U=this.r[6],L=this.r[7],G=this.r[8],K=this.r[9];n>=16;)d=f=0,d+=(I+=8191&(r=255&e[t+0]|(255&e[t+1])<<8))*N,d+=(A+=8191&(r>>>13|(o=255&e[t+2]|(255&e[t+3])<<8)<<3))*(5*K),d+=(T+=8191&(o>>>10|(a=255&e[t+4]|(255&e[t+5])<<8)<<6))*(5*G),d+=(O+=8191&(a>>>7|(i=255&e[t+6]|(255&e[t+7])<<8)<<9))*(5*L),f=(d+=(P+=8191&(i>>>4|(u=255&e[t+8]|(255&e[t+9])<<8)<<12))*(5*U))>>>13,d&=8191,d+=(E+=u>>>1&8191)*(5*F),d+=(S+=8191&(u>>>14|(c=255&e[t+10]|(255&e[t+11])<<8)<<2))*(5*x),d+=(R+=8191&(c>>>11|(s=255&e[t+12]|(255&e[t+13])<<8)<<5))*(5*j),d+=(D+=8191&(s>>>8|(l=255&e[t+14]|(255&e[t+15])<<8)<<8))*(5*M),p=f+=(d+=(C+=l>>>5|w)*(5*B))>>>13,p+=I*B,p+=A*N,p+=T*(5*K),p+=O*(5*G),f=(p+=P*(5*L))>>>13,p&=8191,p+=E*(5*U),p+=S*(5*F),p+=R*(5*x),p+=D*(5*j),f+=(p+=C*(5*M))>>>13,p&=8191,h=f,h+=I*M,h+=A*B,h+=T*N,h+=O*(5*K),f=(h+=P*(5*G))>>>13,h&=8191,h+=E*(5*L),h+=S*(5*U),h+=R*(5*F),h+=D*(5*x),y=f+=(h+=C*(5*j))>>>13,y+=I*j,y+=A*M,y+=T*B,y+=O*N,f=(y+=P*(5*K))>>>13,y&=8191,y+=E*(5*G),y+=S*(5*L),y+=R*(5*U),y+=D*(5*F),m=f+=(y+=C*(5*x))>>>13,m+=I*x,m+=A*j,m+=T*M,m+=O*B,f=(m+=P*N)>>>13,m&=8191,m+=E*(5*K),m+=S*(5*G),m+=R*(5*L),m+=D*(5*U),b=f+=(m+=C*(5*F))>>>13,b+=I*F,b+=A*x,b+=T*j,b+=O*M,f=(b+=P*B)>>>13,b&=8191,b+=E*N,b+=S*(5*K),b+=R*(5*G),b+=D*(5*L),v=f+=(b+=C*(5*U))>>>13,v+=I*U,v+=A*F,v+=T*x,v+=O*j,f=(v+=P*M)>>>13,v&=8191,v+=E*B,v+=S*N,v+=R*(5*K),v+=D*(5*G),k=f+=(v+=C*(5*L))>>>13,k+=I*L,k+=A*U,k+=T*F,k+=O*x,f=(k+=P*j)>>>13,k&=8191,k+=E*M,k+=S*B,k+=R*N,k+=D*(5*K),g=f+=(k+=C*(5*G))>>>13,g+=I*G,g+=A*L,g+=T*U,g+=O*F,f=(g+=P*x)>>>13,g&=8191,g+=E*j,g+=S*M,g+=R*B,g+=D*N,_=f+=(g+=C*(5*K))>>>13,_+=I*K,_+=A*G,_+=T*L,_+=O*U,f=(_+=P*F)>>>13,_&=8191,_+=E*x,_+=S*j,_+=R*M,_+=D*B,I=d=8191&(f=(f=((f+=(_+=C*N)>>>13)<<2)+f|0)+(d&=8191)|0),A=p+=f>>>=13,T=h&=8191,O=y&=8191,P=m&=8191,E=b&=8191,S=v&=8191,R=k&=8191,D=g&=8191,C=_&=8191,t+=16,n-=16;this.h[0]=I,this.h[1]=A,this.h[2]=T,this.h[3]=O,this.h[4]=P,this.h[5]=E,this.h[6]=S,this.h[7]=R,this.h[8]=D,this.h[9]=C},T.prototype.finish=function(e,t){var n,r,o,a,i=new Uint16Array(10);if(this.leftover){for(a=this.leftover,this.buffer[a++]=1;a<16;a++)this.buffer[a]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(n=this.h[1]>>>13,this.h[1]&=8191,a=2;a<10;a++)this.h[a]+=n,n=this.h[a]>>>13,this.h[a]&=8191;for(this.h[0]+=5*n,n=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=n,n=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=n,i[0]=this.h[0]+5,n=i[0]>>>13,i[0]&=8191,a=1;a<10;a++)i[a]=this.h[a]+n,n=i[a]>>>13,i[a]&=8191;for(i[9]-=8192,r=(1^n)-1,a=0;a<10;a++)i[a]&=r;for(r=~r,a=0;a<10;a++)this.h[a]=this.h[a]&r|i[a];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,a=1;a<8;a++)o=(this.h[a]+this.pad[a]|0)+(o>>>16)|0,this.h[a]=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},T.prototype.update=function(e,t,n){var r,o;if(this.leftover){for((o=16-this.leftover)>n&&(o=n),r=0;r=16&&(o=n-n%16,this.blocks(e,t,o),t+=o,n-=o),n){for(r=0;r=128;){for(w=0;w<16;w++)I=8*w+q,R[w]=n[I+0]<<24|n[I+1]<<16|n[I+2]<<8|n[I+3],D[w]=n[I+4]<<24|n[I+5]<<16|n[I+6]<<8|n[I+7];for(w=0;w<80;w++)if(o=C,a=N,i=B,u=M,c=j,s=x,l=F,U,d=L,p=G,h=K,y=z,m=Q,b=H,v=V,W,O=65535&(T=W),P=T>>>16,E=65535&(A=U),S=A>>>16,O+=65535&(T=(Q>>>14|j<<18)^(Q>>>18|j<<14)^(j>>>9|Q<<23)),P+=T>>>16,E+=65535&(A=(j>>>14|Q<<18)^(j>>>18|Q<<14)^(Q>>>9|j<<23)),S+=A>>>16,O+=65535&(T=Q&H^~Q&V),P+=T>>>16,E+=65535&(A=j&x^~j&F),S+=A>>>16,O+=65535&(T=Y[2*w+1]),P+=T>>>16,E+=65535&(A=Y[2*w]),S+=A>>>16,A=R[w%16],P+=(T=D[w%16])>>>16,E+=65535&A,S+=A>>>16,E+=(P+=(O+=65535&T)>>>16)>>>16,O=65535&(T=_=65535&O|P<<16),P=T>>>16,E=65535&(A=g=65535&E|(S+=E>>>16)<<16),S=A>>>16,O+=65535&(T=(L>>>28|C<<4)^(C>>>2|L<<30)^(C>>>7|L<<25)),P+=T>>>16,E+=65535&(A=(C>>>28|L<<4)^(L>>>2|C<<30)^(L>>>7|C<<25)),S+=A>>>16,P+=(T=L&G^L&K^G&K)>>>16,E+=65535&(A=C&N^C&B^N&B),S+=A>>>16,f=65535&(E+=(P+=(O+=65535&T)>>>16)>>>16)|(S+=E>>>16)<<16,k=65535&O|P<<16,O=65535&(T=y),P=T>>>16,E=65535&(A=u),S=A>>>16,P+=(T=_)>>>16,E+=65535&(A=g),S+=A>>>16,N=o,B=a,M=i,j=u=65535&(E+=(P+=(O+=65535&T)>>>16)>>>16)|(S+=E>>>16)<<16,x=c,F=s,U=l,C=f,G=d,K=p,z=h,Q=y=65535&O|P<<16,H=m,V=b,W=v,L=k,w%16==15)for(I=0;I<16;I++)A=R[I],O=65535&(T=D[I]),P=T>>>16,E=65535&A,S=A>>>16,A=R[(I+9)%16],O+=65535&(T=D[(I+9)%16]),P+=T>>>16,E+=65535&A,S+=A>>>16,g=R[(I+1)%16],O+=65535&(T=((_=D[(I+1)%16])>>>1|g<<31)^(_>>>8|g<<24)^(_>>>7|g<<25)),P+=T>>>16,E+=65535&(A=(g>>>1|_<<31)^(g>>>8|_<<24)^g>>>7),S+=A>>>16,g=R[(I+14)%16],P+=(T=((_=D[(I+14)%16])>>>19|g<<13)^(g>>>29|_<<3)^(_>>>6|g<<26))>>>16,E+=65535&(A=(g>>>19|_<<13)^(_>>>29|g<<3)^g>>>6),S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,R[I]=65535&E|S<<16,D[I]=65535&O|P<<16;O=65535&(T=L),P=T>>>16,E=65535&(A=C),S=A>>>16,A=e[0],P+=(T=t[0])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[0]=C=65535&E|S<<16,t[0]=L=65535&O|P<<16,O=65535&(T=G),P=T>>>16,E=65535&(A=N),S=A>>>16,A=e[1],P+=(T=t[1])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[1]=N=65535&E|S<<16,t[1]=G=65535&O|P<<16,O=65535&(T=K),P=T>>>16,E=65535&(A=B),S=A>>>16,A=e[2],P+=(T=t[2])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[2]=B=65535&E|S<<16,t[2]=K=65535&O|P<<16,O=65535&(T=z),P=T>>>16,E=65535&(A=M),S=A>>>16,A=e[3],P+=(T=t[3])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[3]=M=65535&E|S<<16,t[3]=z=65535&O|P<<16,O=65535&(T=Q),P=T>>>16,E=65535&(A=j),S=A>>>16,A=e[4],P+=(T=t[4])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[4]=j=65535&E|S<<16,t[4]=Q=65535&O|P<<16,O=65535&(T=H),P=T>>>16,E=65535&(A=x),S=A>>>16,A=e[5],P+=(T=t[5])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[5]=x=65535&E|S<<16,t[5]=H=65535&O|P<<16,O=65535&(T=V),P=T>>>16,E=65535&(A=F),S=A>>>16,A=e[6],P+=(T=t[6])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[6]=F=65535&E|S<<16,t[6]=V=65535&O|P<<16,O=65535&(T=W),P=T>>>16,E=65535&(A=U),S=A>>>16,A=e[7],P+=(T=t[7])>>>16,E+=65535&A,S+=A>>>16,S+=(E+=(P+=(O+=65535&T)>>>16)>>>16)>>>16,e[7]=U=65535&E|S<<16,t[7]=W=65535&O|P<<16,q+=128,r-=128}return r}function J(e,t,n){var r,o=new Int32Array(8),a=new Int32Array(8),i=new Uint8Array(256),u=n;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,a[0]=4089235720,a[1]=2227873595,a[2]=4271175723,a[3]=1595750129,a[4]=2917565137,a[5]=725511199,a[6]=4215389547,a[7]=327033209,Z(o,a,t,n),n%=128,r=0;r=0;--o)$(e,t,r=n[o/8|0]>>(7&o)&1),X(t,e),X(e,e),$(e,t,r)}function ne(e,n){var r=[t(),t(),t(),t()];R(r[0],f),R(r[1],d),R(r[2],u),U(r[3],f,d),te(e,r,n)}function re(e,n,o){var a,i=new Uint8Array(64),u=[t(),t(),t(),t()];for(o||r(n,32),J(i,n,32),i[0]&=248,i[31]&=127,i[31]|=64,ne(u,i),ee(e,u),a=0;a<32;a++)n[a+32]=e[a];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 ae(e,t){var n,r,o,a;for(r=63;r>=32;--r){for(n=0,o=r-32,a=r-12;o>4)*oe[o],n=t[o]>>8,t[o]&=255;for(o=0;o<32;o++)t[o]-=n*oe[o];for(r=0;r<32;r++)t[r+1]+=t[r]>>8,e[r]=255&t[r]}function ie(e){var t,n=new Float64Array(64);for(t=0;t<64;t++)n[t]=e[t];for(t=0;t<64;t++)e[t]=0;ae(e,n)}function ue(e,n,r,o){var a,i,u=new Uint8Array(64),c=new Uint8Array(64),s=new Uint8Array(64),l=new Float64Array(64),f=[t(),t(),t(),t()];J(u,o,32),u[0]&=248,u[31]&=127,u[31]|=64;var d=r+64;for(a=0;a>7&&F(e[0],i,e[0]),U(e[3],e[0],e[1]),0)}(d,o))return-1;for(a=0;a=0},e.sign.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(64);return re(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(le(e),64!==e.length)throw new Error("bad secret key size");for(var t=new Uint8Array(32),n=0;n0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function s(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){u(e.precomputed);var n=e._getDoubles(),r=a(t,1,this._bitLength),o=(1<=i;l--)c=(c<<1)+r[l];s.push(c)}for(var f=this.jpoint(null,null,null),d=this.jpoint(null,null,null),p=o;p>0;p--){for(i=0;i=0;s--){for(var l=0;s>=0&&0===i[s];s--)l++;if(s>=0&&l++,c=c.dblp(l),s<0)break;var f=i[s];u(0!==f),c="affine"===e.type?f>0?c.mixedAdd(o[f-1>>1]):c.mixedAdd(o[-f-1>>1].neg()):f>0?c.add(o[f-1>>1]):c.add(o[-f-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,o){var u,c,s,l=this._wnafT1,f=this._wnafT2,d=this._wnafT3,p=0;for(u=0;u=1;u-=2){var y=u-1,m=u;if(1===l[y]&&1===l[m]){var b=[t[y],null,null,t[m]];0===t[y].y.cmp(t[m].y)?(b[1]=t[y].add(t[m]),b[2]=t[y].toJ().mixedAdd(t[m].neg())):0===t[y].y.cmp(t[m].y.redNeg())?(b[1]=t[y].toJ().mixedAdd(t[m]),b[2]=t[y].add(t[m].neg())):(b[1]=t[y].toJ().mixedAdd(t[m]),b[2]=t[y].toJ().mixedAdd(t[m].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],k=i(n[y],n[m]);for(p=Math.max(k[0].length,p),d[y]=new Array(p),d[m]=new Array(p),c=0;c=0;u--){for(var A=0;u>=0;){var T=!0;for(c=0;c=0&&A++,w=w.dblp(A),u<0)break;for(c=0;c0?s=f[c][O-1>>1]:O<0&&(s=f[c][-O-1>>1].neg()),w="affine"===s.type?w.mixedAdd(s):w.add(s))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},s.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,o=0;o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n16)throw new TypeError("uint64/int64 requires BigNumber to be less than or equal to 8 bytes");if(!t.isInteger())throw new TypeError("uint64/int64 requires BigNumber to be an integer");E.length%2==1&&(E="0".concat(E));var S=l.decode(E);o.set(S,32-S.length)}return o;case c.ArgumentType.int256:case c.ArgumentType.uint256:if(f.default.isBigNumber(t)){var R=t.toString(16);R.length%2==1&&(R="0".concat(R));var D=l.decode(R);o.set(D,32-D.length)}return o;case c.ArgumentType.address:return o.set(t,12),o;case c.ArgumentType.bool:return o[31]=t?1:0,o;case c.ArgumentType.func:return o.set(t,8),o;case c.ArgumentType.bytes32:return o.set(t,0),o;case c.ArgumentType.bytes:case c.ArgumentType.string:return r=t instanceof Uint8Array?t:s.encode(t),(o=Math.floor(r.length/32)>=0&&0!==Math.floor(r.length%32)?new Uint8Array(32*(Math.floor(r.length/32)+1)+32):new Uint8Array(64)).set(r,32),(i=d.safeView(o,28)).setUint32(0,r.length),o;default:throw new Error("Unsupported argument type: ".concat(n.toString()))}}(e,this._selector._paramTypes[n]);return this._arguments.push({dynamic:t,value:r}),this}},{key:"_build",value:function(e){var t=null!=e,n=t?4:0,r=0===this._arguments.length?n:32*this._arguments.length+this._arguments.map((function(e){return e.dynamic?e.value.length:0})).reduce((function(e,t){return e+t}))+n,o=new Uint8Array(r);t&&o.set(this._selector._build(e),0);var i,u=32*this._arguments.length,c=y(this._arguments.entries());try{for(c.s();!(i=c.n()).done;){var s=(0,a.default)(i.value,2),l=s[0],f=s[1],p=f.dynamic,h=f.value;if(p){var m=d.safeView(o,n+32*l+28);m.setUint32(0,u),o.set(h,m.getUint32(0)+n),u+=h.length}else o.set(h,n+32*l)}}catch(e){c.e(e)}finally{c.f()}return o}}]),e}();function v(e,t,n){n(t,f.default.isBigNumber(e)?e.toNumber():e)}t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(14)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){throw new Error("not implemented")}}],[{key:"_fromProtobuf",value:function(e){throw new Error("not implemented")}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(285)),l=r(n(14)),f=r(n(19));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var p=function(e){(0,i.default)(n,e);var t=d(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e._min,null!=r.min&&e.setMin(r.min),e._max,null!=r.max&&e.setMax(r.max),e._assessmentMethod,null!=r.assessmentMethod&&e.setAssessmentMethod(r.assessmentMethod),e}return(0,a.default)(n,[{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"min",get:function(){return this._min}},{key:"setMin",value:function(e){return this._min="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"max",get:function(){return this._max}},{key:"setMax",value:function(e){return this._max="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"assessmentMethod",get:function(){return this._assessmentMethod}},{key:"setAssessmentMethod",value:function(e){return this._assessmentMethod=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,fractionalFee:{fractionalAmount:{numerator:this._numerator,denominator:this._denominator},minimumAmount:this._min,maximumAmount:this._max}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fractionalFee,r=t.fractionalAmount;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0,min:null!=t.minimumAmount?t.minimumAmount:void 0,max:null!=t.maximumAmount?t.maximumAmount:void 0})}}]),n}(s.default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(285)),l=r(n(14)),f=r(n(19)),d=r(n(225));function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var h=function(e){(0,i.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),(e=t.call(this,r))._fallbackFee,null!=r.fallbackFee&&e.setFallbackFee(r.fallbackFee),e._numerator,null!=r.numerator&&e.setNumerator(r.numerator),e._denominator,null!=r.denominator&&e.setDenominator(r.denominator),e}return(0,a.default)(n,[{key:"fallbackFee",get:function(){return this._fallbackFee}},{key:"setFallbackFee",value:function(e){return this._fallbackFee=e,this}},{key:"numerator",get:function(){return this._numerator}},{key:"setNumerator",value:function(e){return this._numerator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"denominator",get:function(){return this._denominator}},{key:"setDenominator",value:function(e){return this._denominator="number"==typeof e?f.default.fromNumber(e):e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,royaltyFee:{exchangeValueFraction:{numerator:this._numerator,denominator:this._denominator},fallbackFee:null!=this._fallbackFee?this._fallbackFee._toProtobuf().fixedFee:null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.royaltyFee,r=t.exchangeValueFraction;return new n({feeCollectorAccountId:null!=e.feeCollectorAccountId?l.default._fromProtobuf(e.feeCollectorAccountId):void 0,fallbackFee:null!=t.fallbackFee?d.default._fromProtobuf({fixedFee:t.fallbackFee}):void 0,numerator:null!=r.numerator?r.numerator:void 0,denominator:null!=r.denominator?r.denominator:void 0})}}]),n}(s.default);t.default=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"UnicodeNormalizationForm",{enumerable:!0,get:function(){return a.UnicodeNormalizationForm}}),Object.defineProperty(t,"Utf8ErrorFuncs",{enumerable:!0,get:function(){return a.Utf8ErrorFuncs}}),Object.defineProperty(t,"Utf8ErrorReason",{enumerable:!0,get:function(){return a.Utf8ErrorReason}}),Object.defineProperty(t,"_toEscapedUtf8String",{enumerable:!0,get:function(){return a._toEscapedUtf8String}}),Object.defineProperty(t,"formatBytes32String",{enumerable:!0,get:function(){return r.formatBytes32String}}),Object.defineProperty(t,"nameprep",{enumerable:!0,get:function(){return o.nameprep}}),Object.defineProperty(t,"parseBytes32String",{enumerable:!0,get:function(){return r.parseBytes32String}}),Object.defineProperty(t,"toUtf8Bytes",{enumerable:!0,get:function(){return a.toUtf8Bytes}}),Object.defineProperty(t,"toUtf8CodePoints",{enumerable:!0,get:function(){return a.toUtf8CodePoints}}),Object.defineProperty(t,"toUtf8String",{enumerable:!0,get:function(){return a.toUtf8String}});var r=n(1465),o=n(1467),a=n(374)},function(e,t,n){"use strict";function r(t,n){return e.exports=r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},e.exports.default=e.exports,e.exports.__esModule=!0,r(t,n)}e.exports=r,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.derPrefixBytes=t.derPrefix=t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(105)),l=r(n(380)),f=r(n(229)),d=n(195),p=m(n(115)),h=m(n(291));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var b="302e020100300506032b657004220420";t.derPrefix=b;var v=p.decode(b);t.derPrefixBytes=v;var k=function(){function e(t,n){(0,u.default)(this,e),this._keyPair=t instanceof Uint8Array?f.default.sign.keyPair.fromSeed(t):t,this._chainCode=null!=n?n:null}var t;return(0,c.default)(e,[{key:"_type",get:function(){return"ED25519"}},{key:"publicKey",get:function(){return new l.default(this._keyPair.publicKey)}},{key:"sign",value:function(e){return f.default.sign.detached(e,this._keyPair.secretKey)}},{key:"toBytesDer",value:function(){var e=new Uint8Array(v.length+32);return e.set(v,0),e.set(this._keyPair.secretKey.subarray(0,32),v.length),e}},{key:"toBytesRaw",value:function(){return this._keyPair.secretKey.slice(0,32)}}],[{key:"generate",value:function(){var t=h.bytes(64);return new e(f.default.sign.keyPair.fromSeed(t.subarray(0,32)),t.subarray(32))}},{key:"generateAsync",value:(t=(0,i.default)(a.default.mark((function t(){var n;return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,h.bytesAsync(64);case 2:return n=t.sent,t.abrupt("return",new e(f.default.sign.keyPair.fromSeed(n.subarray(0,32)),n.subarray(32)));case 4:case"end":return t.stop()}}),t)}))),function(){return t.apply(this,arguments)})},{key:"fromBytes",value:function(t){switch(t.length){case 48:return e.fromBytesDer(t);case 32:case 64:return e.fromBytesRaw(t);default:throw new s.default("invalid private key length: ".concat(t.length," bytes"))}}},{key:"fromBytesDer",value:function(t){if(48!=t.length||!(0,d.arrayStartsWith)(t,v))throw new s.default("invalid private key length: ".concat(t.length," bytes"));return new e(f.default.sign.keyPair.fromSeed(t.subarray(16)))}},{key:"fromBytesRaw",value:function(t){switch(t.length){case 32:return new e(f.default.sign.keyPair.fromSeed(t));case 64:return new e(f.default.sign.keyPair.fromSecretKey(t))}throw new s.default("invalid private key length: ".concat(t.length," bytes"))}},{key:"fromString",value:function(t){return e.fromBytes(p.decode(t))}},{key:"fromStringDer",value:function(t){return e.fromBytesDer(p.decode(t))}},{key:"fromStringRaw",value:function(t){return e.fromBytesRaw(p.decode(t))}}]),e}();t.default=k},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.bytes=function(e){return o.default.randomBytes(e)},t.bytesAsync=function(e){return Promise.resolve(o.default.randomBytes(e))};var o=r(n(229))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=Object.freeze({BadLength:"BadLength",UnknownWords:"UnknownWords",ChecksumMismatch:"ChecksumMismatch"});t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return(new TextDecoder).decode(e)},t.encode=function(e){return(new TextEncoder).encode(e)}},function(e,t,n){"use strict";var r,o=n(0)(n(3));function a(e){this.rand=e}if(e.exports=function(e){return r||(r=new a(null)),r.generate(e)},e.exports.Rand=a,a.prototype.generate=function(e){return this._rand(e)},a.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),n=0;n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?k.default._fromProtobufKey(y.Key.decode(n.alias)):null;r instanceof g.default||(r=null);var o=null!=t.childTransactionRecords?t.childTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],a=null!=t.duplicateTransactionRecords?t.duplicateTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],i=null!=n.contractCallResult?d.default._fromProtobuf(n.contractCallResult):null!=n.contractCreateResult?d.default._fromProtobuf(n.contractCreateResult):void 0;return new e({receipt:u.default._fromProtobuf({receipt:n.receipt}),transactionHash:null!=n.transactionHash?n.transactionHash:new Uint8Array,consensusTimestamp:s.default._fromProtobuf(n.consensusTimestamp),transactionId:c.default._fromProtobuf(n.transactionID),transactionMemo:null!=n.memo?n.memo:"",transactionFee:l.default.fromTinybars(null!=n.transactionFee?n.transactionFee:0),transfers:f.default._fromProtobuf(null!=n.transferList&&null!=n.transferList.accountAmounts?n.transferList.accountAmounts:[]),contractFunctionResult:i,tokenTransfers:p.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),tokenTransfersList:_.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),scheduleRef:null!=n.scheduleRef?m.default._fromProtobuf(n.scheduleRef):null,assessedCustomFees:null!=n.assessedCustomFees?n.assessedCustomFees.map((function(e){return b.default._fromProtobuf(e)})):[],nftTransfers:h.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),automaticTokenAssociations:null!=n.automaticTokenAssociations?n.automaticTokenAssociations.map((function(e){return v.default._fromProtobuf(e)})):[],parentConsensusTimestamp:null!=n.parentConsensusTimestamp?s.default._fromProtobuf(n.parentConsensusTimestamp):null,aliasKey:r,duplicates:a,children:o})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(y.TransactionGetRecordResponse.decode(t))}}]),e}();t.default=T},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(11)),u=r(n(33));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n>>32-t}function s(e,t,n,r,o,a,i){return c(e+(t&n|~t&r)+o+a|0,i)+t|0}function l(e,t,n,r,o,a,i){return c(e+(t&r|n&~r)+o+a|0,i)+t|0}function f(e,t,n,r,o,a,i){return c(e+(t^n^r)+o+a|0,i)+t|0}function d(e,t,n,r,o,a,i){return c(e+(n^(t|~r))+o+a|0,i)+t|0}r(u,o),u.prototype._update=function(){for(var e=i,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,o=this._c,a=this._d;n=s(n,r,o,a,e[0],3614090360,7),a=s(a,n,r,o,e[1],3905402710,12),o=s(o,a,n,r,e[2],606105819,17),r=s(r,o,a,n,e[3],3250441966,22),n=s(n,r,o,a,e[4],4118548399,7),a=s(a,n,r,o,e[5],1200080426,12),o=s(o,a,n,r,e[6],2821735955,17),r=s(r,o,a,n,e[7],4249261313,22),n=s(n,r,o,a,e[8],1770035416,7),a=s(a,n,r,o,e[9],2336552879,12),o=s(o,a,n,r,e[10],4294925233,17),r=s(r,o,a,n,e[11],2304563134,22),n=s(n,r,o,a,e[12],1804603682,7),a=s(a,n,r,o,e[13],4254626195,12),o=s(o,a,n,r,e[14],2792965006,17),n=l(n,r=s(r,o,a,n,e[15],1236535329,22),o,a,e[1],4129170786,5),a=l(a,n,r,o,e[6],3225465664,9),o=l(o,a,n,r,e[11],643717713,14),r=l(r,o,a,n,e[0],3921069994,20),n=l(n,r,o,a,e[5],3593408605,5),a=l(a,n,r,o,e[10],38016083,9),o=l(o,a,n,r,e[15],3634488961,14),r=l(r,o,a,n,e[4],3889429448,20),n=l(n,r,o,a,e[9],568446438,5),a=l(a,n,r,o,e[14],3275163606,9),o=l(o,a,n,r,e[3],4107603335,14),r=l(r,o,a,n,e[8],1163531501,20),n=l(n,r,o,a,e[13],2850285829,5),a=l(a,n,r,o,e[2],4243563512,9),o=l(o,a,n,r,e[7],1735328473,14),n=f(n,r=l(r,o,a,n,e[12],2368359562,20),o,a,e[5],4294588738,4),a=f(a,n,r,o,e[8],2272392833,11),o=f(o,a,n,r,e[11],1839030562,16),r=f(r,o,a,n,e[14],4259657740,23),n=f(n,r,o,a,e[1],2763975236,4),a=f(a,n,r,o,e[4],1272893353,11),o=f(o,a,n,r,e[7],4139469664,16),r=f(r,o,a,n,e[10],3200236656,23),n=f(n,r,o,a,e[13],681279174,4),a=f(a,n,r,o,e[0],3936430074,11),o=f(o,a,n,r,e[3],3572445317,16),r=f(r,o,a,n,e[6],76029189,23),n=f(n,r,o,a,e[9],3654602809,4),a=f(a,n,r,o,e[12],3873151461,11),o=f(o,a,n,r,e[15],530742520,16),n=d(n,r=f(r,o,a,n,e[2],3299628645,23),o,a,e[0],4096336452,6),a=d(a,n,r,o,e[7],1126891415,10),o=d(o,a,n,r,e[14],2878612391,15),r=d(r,o,a,n,e[5],4237533241,21),n=d(n,r,o,a,e[12],1700485571,6),a=d(a,n,r,o,e[3],2399980690,10),o=d(o,a,n,r,e[10],4293915773,15),r=d(r,o,a,n,e[1],2240044497,21),n=d(n,r,o,a,e[8],1873313359,6),a=d(a,n,r,o,e[15],4264355552,10),o=d(o,a,n,r,e[6],2734768916,15),r=d(r,o,a,n,e[13],1309151649,21),n=d(n,r,o,a,e[4],4149444226,6),a=d(a,n,r,o,e[11],3174756917,10),o=d(o,a,n,r,e[2],718787259,15),r=d(r,o,a,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+o|0,this._d=this._d+a|0},u.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=a.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=u},function(e,t,n){"use strict";var r=n(175).codes.ERR_STREAM_PREMATURE_CLOSE;function o(){}e.exports=function e(t,n,a){if("function"==typeof n)return e(t,null,n);n||(n={}),a=function(e){var t=!1;return function(){if(!t){t=!0;for(var n=arguments.length,r=new Array(n),o=0;o>>32-t}function y(e,t,n,r,o,a,i,u){return h(e+(t^n^r)+a+i|0,u)+o|0}function m(e,t,n,r,o,a,i,u){return h(e+(t&n|~t&r)+a+i|0,u)+o|0}function b(e,t,n,r,o,a,i,u){return h(e+((t|~n)^r)+a+i|0,u)+o|0}function v(e,t,n,r,o,a,i,u){return h(e+(t&r|n&~r)+a+i|0,u)+o|0}function k(e,t,n,r,o,a,i,u){return h(e+(t^(n|~r))+a+i|0,u)+o|0}o(p,a),p.prototype._update=function(){for(var e=i,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,o=0|this._c,a=0|this._d,p=0|this._e,g=0|this._a,_=0|this._b,w=0|this._c,I=0|this._d,A=0|this._e,T=0;T<80;T+=1){var O,P;T<16?(O=y(n,r,o,a,p,e[u[T]],f[0],s[T]),P=k(g,_,w,I,A,e[c[T]],d[0],l[T])):T<32?(O=m(n,r,o,a,p,e[u[T]],f[1],s[T]),P=v(g,_,w,I,A,e[c[T]],d[1],l[T])):T<48?(O=b(n,r,o,a,p,e[u[T]],f[2],s[T]),P=b(g,_,w,I,A,e[c[T]],d[2],l[T])):T<64?(O=v(n,r,o,a,p,e[u[T]],f[3],s[T]),P=m(g,_,w,I,A,e[c[T]],d[3],l[T])):(O=k(n,r,o,a,p,e[u[T]],f[4],s[T]),P=y(g,_,w,I,A,e[c[T]],d[4],l[T])),n=p,p=a,a=h(o,10),o=r,r=O,g=A,A=I,I=h(w,10),w=_,_=P}var E=this._b+o+I|0;this._b=this._c+a+A|0,this._c=this._d+p+g|0,this._d=this._e+n+_|0,this._e=this._a+r+w|0,this._a=E},p.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=r.alloc?r.alloc(20):new r(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=p},function(e,t,n){"use strict";var r=e.exports=function(e){e=e.toLowerCase();var t=r[e];if(!t)throw new Error(e+" is not supported (we accept pull requests)");return new t};r.sha=n(895),r.sha1=n(896),r.sha224=n(897),r.sha256=n(455),r.sha384=n(898),r.sha512=n(456)},function(e,t,n){"use strict";(t=e.exports=n(458)).Stream=t,t.Readable=t,t.Writable=n(312),t.Duplex=n(142),t.Transform=n(462),t.PassThrough=n(903)},function(e,t,n){"use strict";var r=n(15),o=r.Buffer;function a(e,t){for(var n in e)t[n]=e[n]}function i(e,t,n){return o(e,t,n)}o.from&&o.alloc&&o.allocUnsafe&&o.allocUnsafeSlow?e.exports=r:(a(r,t),t.Buffer=i),a(o,i),i.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return o(e,t,n)},i.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=o(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},i.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return o(e)},i.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";(function(t,r,o){var a=n(246);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var o=r.callback;t.pendingcb--,o(n),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=v;var u,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:a.nextTick;v.WritableState=b;var s=Object.create(n(200));s.inherits=n(16);var l={deprecate:n(245)},f=n(459),d=n(311).Buffer,p=o.Uint8Array||function(){};var h,y=n(460);function m(){}function b(e,t){u=u||n(142),e=e||{};var r=t instanceof u;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var o=e.highWaterMark,s=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:r&&(s||0===s)?s:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===e.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,o){--t.pendingcb,n?(a.nextTick(o,r),a.nextTick(A,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(o(r),e._writableState.errorEmitted=!0,e.emit("error",r),A(e,t))}(e,n,r,t,o);else{var i=w(n);i||n.corked||n.bufferProcessing||!n.bufferedRequest||_(e,n),r?c(g,e,n,i,o):g(e,n,i,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function v(e){if(u=u||n(142),!(h.call(v,this)||this instanceof u))return new v(e);this._writableState=new b(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),f.call(this)}function k(e,t,n,r,o,a,i){t.writelen=r,t.writecb=i,t.writing=!0,t.sync=!0,n?e._writev(o,t.onwrite):e._write(o,a,t.onwrite),t.sync=!1}function g(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),A(e,t)}function _(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,o=new Array(r),a=t.corkedRequestsFree;a.entry=n;for(var u=0,c=!0;n;)o[u]=n,n.isBuf||(c=!1),n=n.next,u+=1;o.allBuffers=c,k(e,t,!0,t.length,o,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;n;){var s=n.chunk,l=n.encoding,f=n.callback;if(k(e,t,!1,t.objectMode?1:s.length,s,l,f),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function w(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function I(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),A(e,t)}))}function A(e,t){var n=w(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,a.nextTick(I,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}s.inherits(v,f),b.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(b.prototype,"buffer",{get:l.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(h=Function.prototype[Symbol.hasInstance],Object.defineProperty(v,Symbol.hasInstance,{value:function(e){return!!h.call(this,e)||this===v&&(e&&e._writableState instanceof b)}})):h=function(e){return e instanceof this},v.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},v.prototype.write=function(e,t,n){var r,o=this._writableState,i=!1,u=!o.objectMode&&(r=e,d.isBuffer(r)||r instanceof p);return u&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),u?t="buffer":t||(t=o.defaultEncoding),"function"!=typeof n&&(n=m),o.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),a.nextTick(t,n)}(this,n):(u||function(e,t,n,r){var o=!0,i=!1;return null===n?i=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(i=new TypeError("Invalid non-string/buffer chunk")),i&&(e.emit("error",i),a.nextTick(r,i),o=!1),o}(this,o,e,n))&&(o.pendingcb++,i=function(e,t,n,r,o,a){if(!n){var i=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n));return t}(t,r,o);r!==i&&(n=!0,o="buffer",r=i)}var u=t.objectMode?1:r.length;t.length+=u;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(v.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),v.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},v.prototype._writev=null,v.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,A(e,t),n&&(t.finished?a.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(v.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),v.prototype.destroy=y.destroy,v.prototype._undestroy=y.undestroy,v.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(34),n(461).setImmediate,n(40))},function(e,t,n){"use strict";(function(e){var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.toType=t.TypeOutput=t.bnToRlp=t.bnToUnpaddedBuffer=t.bnToHex=void 0;var o,a=r(n(10)),i=n(171),u=n(141);function c(t){return(0,u.unpadBuffer)(t.toArrayLike(e))}t.bnToHex=function(e){return"0x"+e.toString(16)},t.bnToUnpaddedBuffer=c,t.bnToRlp=function(e){return c(e)},function(e){e[e.Number=0]="Number",e[e.BN=1]="BN",e[e.Buffer=2]="Buffer",e[e.PrefixedHexString=3]="PrefixedHexString"}(o=t.TypeOutput||(t.TypeOutput={})),t.toType=function(e,t){if(null===e)return null;if(void 0!==e){if("string"==typeof e&&!(0,i.isHexString)(e))throw new Error("A string must be provided with a 0x-prefix, given: "+e);if("number"==typeof e&&!Number.isSafeInteger(e))throw new Error("The provided number is greater than MAX_SAFE_INTEGER (please use an alternative input type)");var n=(0,u.toBuffer)(e);if(t===o.Buffer)return n;if(t===o.BN)return new a.default(n);if(t===o.Number){var r=new a.default(n),c=new a.default(Number.MAX_SAFE_INTEGER.toString());if(r.gt(c))throw new Error("The provided number is greater than MAX_SAFE_INTEGER (please use an alternative output type)");return r.toNumber()}return"0x"+n.toString("hex")}}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AddressZero",{enumerable:!0,get:function(){return r.AddressZero}}),Object.defineProperty(t,"EtherSymbol",{enumerable:!0,get:function(){return i.EtherSymbol}}),Object.defineProperty(t,"HashZero",{enumerable:!0,get:function(){return a.HashZero}}),Object.defineProperty(t,"MaxInt256",{enumerable:!0,get:function(){return o.MaxInt256}}),Object.defineProperty(t,"MaxUint256",{enumerable:!0,get:function(){return o.MaxUint256}}),Object.defineProperty(t,"MinInt256",{enumerable:!0,get:function(){return o.MinInt256}}),Object.defineProperty(t,"NegativeOne",{enumerable:!0,get:function(){return o.NegativeOne}}),Object.defineProperty(t,"One",{enumerable:!0,get:function(){return o.One}}),Object.defineProperty(t,"Two",{enumerable:!0,get:function(){return o.Two}}),Object.defineProperty(t,"WeiPerEther",{enumerable:!0,get:function(){return o.WeiPerEther}}),Object.defineProperty(t,"Zero",{enumerable:!0,get:function(){return o.Zero}});var r=n(931),o=n(932),a=n(933),i=n(934)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.derPrefixBytes=t.derPrefix=t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(109)),l=r(n(475)),f=r(n(249)),d=n(201),p=m(n(122)),h=m(n(316));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var b="302e020100300506032b657004220420";t.derPrefix=b;var v=p.decode(b);t.derPrefixBytes=v;var k=function(){function e(t,n){(0,u.default)(this,e),this._keyPair=t instanceof Uint8Array?f.default.sign.keyPair.fromSeed(t):t,this._chainCode=null!=n?n:null}var t;return(0,c.default)(e,[{key:"_type",get:function(){return"ED25519"}},{key:"publicKey",get:function(){return new l.default(this._keyPair.publicKey)}},{key:"sign",value:function(e){return f.default.sign.detached(e,this._keyPair.secretKey)}},{key:"toBytesDer",value:function(){var e=new Uint8Array(v.length+32);return e.set(v,0),e.set(this._keyPair.secretKey.subarray(0,32),v.length),e}},{key:"toBytesRaw",value:function(){return this._keyPair.secretKey.slice(0,32)}}],[{key:"generate",value:function(){var t=h.bytes(64);return new e(f.default.sign.keyPair.fromSeed(t.subarray(0,32)),t.subarray(32))}},{key:"generateAsync",value:(t=(0,i.default)(a.default.mark((function t(){var n;return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,h.bytesAsync(64);case 2:return n=t.sent,t.abrupt("return",new e(f.default.sign.keyPair.fromSeed(n.subarray(0,32)),n.subarray(32)));case 4:case"end":return t.stop()}}),t)}))),function(){return t.apply(this,arguments)})},{key:"fromBytes",value:function(t){switch(t.length){case 48:return e.fromBytesDer(t);case 32:case 64:return e.fromBytesRaw(t);default:throw new s.default("invalid private key length: ".concat(t.length," bytes"))}}},{key:"fromBytesDer",value:function(t){if(48!=t.length||!(0,d.arrayStartsWith)(t,v))throw new s.default("invalid private key length: ".concat(t.length," bytes"));return new e(f.default.sign.keyPair.fromSeed(t.subarray(16)))}},{key:"fromBytesRaw",value:function(t){switch(t.length){case 32:return new e(f.default.sign.keyPair.fromSeed(t));case 64:return new e(f.default.sign.keyPair.fromSecretKey(t))}throw new s.default("invalid private key length: ".concat(t.length," bytes"))}},{key:"fromString",value:function(t){return e.fromBytes(p.decode(t))}},{key:"fromStringDer",value:function(t){return e.fromBytesDer(p.decode(t))}},{key:"fromStringRaw",value:function(t){return e.fromBytesRaw(p.decode(t))}}]),e}();t.default=k},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.bytes=function(e){return o.default.randomBytes(e)},t.bytesAsync=function(e){return Promise.resolve(o.default.randomBytes(e))};var o=r(n(249))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=Object.freeze({BadLength:"BadLength",UnknownWords:"UnknownWords",ChecksumMismatch:"ChecksumMismatch"});t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return(new TextDecoder).decode(e)},t.encode=function(e){return(new TextEncoder).encode(e)}},function(e,t,n){"use strict";var r,o=t,a=n(320),i=n(485),u=n(77).assert;function c(e){"short"===e.type?this.curve=new i.short(e):"edwards"===e.type?this.curve=new i.edwards(e):this.curve=new i.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,u(this.g.validate(),"Invalid curve"),u(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function s(e,t){Object.defineProperty(o,e,{configurable:!0,enumerable:!0,get:function(){var n=new c(t);return Object.defineProperty(o,e,{configurable:!0,enumerable:!0,value:n}),n}})}o.PresetCurve=c,s("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:a.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),s("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:a.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),s("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:a.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),s("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:a.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),s("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:a.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),s("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["9"]}),s("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(959)}catch(e){r=void 0}s("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:a.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(e,t,n){"use strict";var r=t;r.utils=n(96),r.common=n(203),r.sha=n(953),r.ripemd=n(957),r.hmac=n(958),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(70)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(e,r){var i;return(0,o.default)(this,n),(i=t.call(this,r)).name="StatusError",i.status=e.status,i.transactionId=e.transactionId,i.message=r,void 0!==Error.captureStackTrace&&Error.captureStackTrace((0,a.default)(i),n),i}return n}((0,r(n(42)).default)(Error));t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(){(0,o.default)(this,e),this.list=[],this.locked=!1,this.index=0}return(0,a.default)(e,[{key:"setList",value:function(e){if(this.locked)throw new Error("list is locked");return this.list=e,this.index=0,this}},{key:"push",value:function(){var e;if(this.locked)throw new Error("list is locked");return(e=this.list).push.apply(e,arguments),this}},{key:"setLocked",value:function(){return this.locked=!0,this}},{key:"clear",value:function(){if(this.locked)throw new Error("list is locked");this.list=[]}},{key:"get",value:function(e){return this.list[e]}},{key:"set",value:function(e,t){if(this.locked)throw new Error("list is locked");return e==this.length?this.list.push(t):this.list[e]=t,this}},{key:"setIfAbsent",value:function(e,t){return e!=this.length&&null!=this.list[e]||this.set(e,t()),this}},{key:"next",get:function(){return this.get(this.advance())}},{key:"current",get:function(){var e=this.index-1;return e<0&&(e=this.length-1),this.get(e)}},{key:"advance",value:function(){var e=this.index;return this.index=(this.index+1)%this.list.length,e}},{key:"isEmpty",get:function(){return 0===this.length}},{key:"length",get:function(){return this.list.length}}]),e}();t.default=i},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(254)),c=r(n(79)),s=r(n(46)),l=r(n(35)),f=r(n(324)),d=r(n(325)),p=r(n(504)),h=r(n(506)),y=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=w(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37)),m=r(n(151)),b=r(n(507)),v=r(n(995)),k=r(n(45)),g=r(n(110)),_=r(n(508));function w(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(w=function(e){return e?n:t})(e)}function I(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return A(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return A(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?k.default._fromProtobufKey(y.Key.decode(n.alias)):null;r instanceof g.default||(r=null);var o=null!=t.childTransactionRecords?t.childTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],a=null!=t.duplicateTransactionRecords?t.duplicateTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],i=null!=n.contractCallResult?d.default._fromProtobuf(n.contractCallResult):null!=n.contractCreateResult?d.default._fromProtobuf(n.contractCreateResult):void 0;return new e({receipt:u.default._fromProtobuf({receipt:n.receipt}),transactionHash:null!=n.transactionHash?n.transactionHash:new Uint8Array,consensusTimestamp:s.default._fromProtobuf(n.consensusTimestamp),transactionId:c.default._fromProtobuf(n.transactionID),transactionMemo:null!=n.memo?n.memo:"",transactionFee:l.default.fromTinybars(null!=n.transactionFee?n.transactionFee:0),transfers:f.default._fromProtobuf(null!=n.transferList&&null!=n.transferList.accountAmounts?n.transferList.accountAmounts:[]),contractFunctionResult:i,tokenTransfers:p.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),tokenTransfersList:_.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),scheduleRef:null!=n.scheduleRef?m.default._fromProtobuf(n.scheduleRef):null,assessedCustomFees:null!=n.assessedCustomFees?n.assessedCustomFees.map((function(e){return b.default._fromProtobuf(e)})):[],nftTransfers:h.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),automaticTokenAssociations:null!=n.automaticTokenAssociations?n.automaticTokenAssociations.map((function(e){return v.default._fromProtobuf(e)})):[],parentConsensusTimestamp:null!=n.parentConsensusTimestamp?s.default._fromProtobuf(n.parentConsensusTimestamp):null,aliasKey:r,duplicates:a,children:o})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(y.TransactionGetRecordResponse.decode(t))}}]),e}();t.default=T},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(12)),u=r(n(35));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0;r--)t+=this._buffer(e,t),n+=this._flushBuffer(o,n);return t+=this._buffer(e,t),o},o.prototype.final=function(e){var t,n;return e&&(t=this.update(e)),n="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(n):n},o.prototype._pad=function(e,t){if(0===t)return!1;for(;t=0||!t.umod(e.prime1)||!t.umod(e.prime2));return t}function i(e,n){var o=function(e){var t=a(e);return{blinder:t.toRed(r.mont(e.modulus)).redPow(new r(e.publicExponent)).fromRed(),unblinder:t.invm(e.modulus)}}(n),i=n.modulus.byteLength(),u=new r(e).mul(o.blinder).umod(n.modulus),c=u.toRed(r.mont(n.prime1)),s=u.toRed(r.mont(n.prime2)),l=n.coefficient,f=n.prime1,d=n.prime2,p=c.redPow(n.exponent1).fromRed(),h=s.redPow(n.exponent2).fromRed(),y=p.isub(h).imul(l).umod(f).imul(d);return h.iadd(y).imul(o.unblinder).umod(n.modulus).toArrayLike(t,"be",i)}i.getr=a,e.exports=i}).call(this,n(15).Buffer)},function(e,t,n){"use strict";(function(t){var r,o=n(0)(n(3)),a=n(15),i=a.Buffer,u={};for(r in a)a.hasOwnProperty(r)&&"SlowBuffer"!==r&&"Buffer"!==r&&(u[r]=a[r]);var c=u.Buffer={};for(r in i)i.hasOwnProperty(r)&&"allocUnsafe"!==r&&"allocUnsafeSlow"!==r&&(c[r]=i[r]);if(u.Buffer.prototype=i.prototype,c.from&&c.from!==Uint8Array.from||(c.from=function(e,t,n){if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type '+(0,o.default)(e));if(e&&void 0===e.length)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+(0,o.default)(e));return i(e,t,n)}),c.alloc||(c.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError('The "size" argument must be of type number. Received type '+(0,o.default)(e));if(e<0||e>=2*(1<<30))throw new RangeError('The value "'+e+'" is invalid for option "size"');var r=i(e);return t&&0!==t.length?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r}),!u.kStringMaxLength)try{u.kStringMaxLength=t.binding("buffer").kStringMaxLength}catch(e){}u.constants||(u.constants={MAX_LENGTH:u.kMaxLength},u.kStringMaxLength&&(u.constants.MAX_STRING_LENGTH=u.kStringMaxLength)),e.exports=u}).call(this,n(34))},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(337).Reporter,a=n(207).EncoderBuffer,i=n(207).DecoderBuffer,u=n(73),c=["seq","seqof","set","setof","objid","bool","gentime","utctime","null_","enum","int","objDesc","bitstr","bmpstr","charstr","genstr","graphstr","ia5str","iso646str","numstr","octstr","printstr","t61str","unistr","utf8str","videostr"],s=["key","obj","use","optional","explicit","implicit","def","choice","any","contains"].concat(c);function l(e,t,n){var r={};this._baseState=r,r.name=n,r.enc=e,r.parent=t||null,r.children=null,r.tag=null,r.args=null,r.reverseArgs=null,r.choice=null,r.optional=!1,r.any=!1,r.obj=!1,r.use=null,r.useDecoder=null,r.key=null,r.default=null,r.explicit=null,r.implicit=null,r.contains=null,r.parent||(r.children=[],this._wrap())}e.exports=l;var f=["enc","parent","children","tag","args","reverseArgs","choice","optional","any","obj","use","alteredUse","key","default","explicit","implicit","contains"];l.prototype.clone=function(){var e=this._baseState,t={};f.forEach((function(n){t[n]=e[n]}));var n=new this.constructor(t.parent);return n._baseState=t,n},l.prototype._wrap=function(){var e=this._baseState;s.forEach((function(t){this[t]=function(){var n=new this.constructor(this);return e.children.push(n),n[t].apply(n,arguments)}}),this)},l.prototype._init=function(e){var t=this._baseState;u(null===t.parent),e.call(this),t.children=t.children.filter((function(e){return e._baseState.parent===this}),this),u.equal(t.children.length,1,"Root node can have only one child")},l.prototype._useArgs=function(e){var t=this._baseState,n=e.filter((function(e){return e instanceof this.constructor}),this);e=e.filter((function(e){return!(e instanceof this.constructor)}),this),0!==n.length&&(u(null===t.children),t.children=n,n.forEach((function(e){e._baseState.parent=this}),this)),0!==e.length&&(u(null===t.args),t.args=e,t.reverseArgs=e.map((function(e){if("object"!==(0,r.default)(e)||e.constructor!==Object)return e;var t={};return Object.keys(e).forEach((function(n){n==(0|n)&&(n|=0);var r=e[n];t[r]=n})),t})))},["_peekTag","_decodeTag","_use","_decodeStr","_decodeObjid","_decodeTime","_decodeNull","_decodeInt","_decodeBool","_decodeList","_encodeComposite","_encodeStr","_encodeObjid","_encodeTime","_encodeNull","_encodeInt","_encodeBool"].forEach((function(e){l.prototype[e]=function(){var t=this._baseState;throw new Error(e+" not implemented for encoding: "+t.enc)}})),c.forEach((function(e){l.prototype[e]=function(){var t=this._baseState,n=Array.prototype.slice.call(arguments);return u(null===t.tag),t.tag=e,this._useArgs(n),this}})),l.prototype.use=function(e){u(e);var t=this._baseState;return u(null===t.use),t.use=e,this},l.prototype.optional=function(){return this._baseState.optional=!0,this},l.prototype.def=function(e){var t=this._baseState;return u(null===t.default),t.default=e,t.optional=!0,this},l.prototype.explicit=function(e){var t=this._baseState;return u(null===t.explicit&&null===t.implicit),t.explicit=e,this},l.prototype.implicit=function(e){var t=this._baseState;return u(null===t.explicit&&null===t.implicit),t.implicit=e,this},l.prototype.obj=function(){var e=this._baseState,t=Array.prototype.slice.call(arguments);return e.obj=!0,0!==t.length&&this._useArgs(t),this},l.prototype.key=function(e){var t=this._baseState;return u(null===t.key),t.key=e,this},l.prototype.any=function(){return this._baseState.any=!0,this},l.prototype.choice=function(e){var t=this._baseState;return u(null===t.choice),t.choice=e,this._useArgs(Object.keys(e).map((function(t){return e[t]}))),this},l.prototype.contains=function(e){var t=this._baseState;return u(null===t.use),t.contains=e,this},l.prototype._decode=function(e,t){var n=this._baseState;if(null===n.parent)return e.wrapResult(n.children[0]._decode(e,t));var r,o=n.default,a=!0,u=null;if(null!==n.key&&(u=e.enterKey(n.key)),n.optional){var c=null;if(null!==n.explicit?c=n.explicit:null!==n.implicit?c=n.implicit:null!==n.tag&&(c=n.tag),null!==c||n.any){if(a=this._peekTag(e,c,n.any),e.isError(a))return a}else{var s=e.save();try{null===n.choice?this._decodeGeneric(n.tag,e,t):this._decodeChoice(e,t),a=!0}catch(e){a=!1}e.restore(s)}}if(n.obj&&a&&(r=e.enterObject()),a){if(null!==n.explicit){var l=this._decodeTag(e,n.explicit);if(e.isError(l))return l;e=l}var f=e.offset;if(null===n.use&&null===n.choice){var d;n.any&&(d=e.save());var p=this._decodeTag(e,null!==n.implicit?n.implicit:n.tag,n.any);if(e.isError(p))return p;n.any?o=e.raw(d):e=p}if(t&&t.track&&null!==n.tag&&t.track(e.path(),f,e.length,"tagged"),t&&t.track&&null!==n.tag&&t.track(e.path(),e.offset,e.length,"content"),n.any||(o=null===n.choice?this._decodeGeneric(n.tag,e,t):this._decodeChoice(e,t)),e.isError(o))return o;if(n.any||null!==n.choice||null===n.children||n.children.forEach((function(n){n._decode(e,t)})),n.contains&&("octstr"===n.tag||"bitstr"===n.tag)){var h=new i(o);o=this._getUse(n.contains,e._reporterState.obj)._decode(h,t)}}return n.obj&&a&&(o=e.leaveObject(r)),null===n.key||null===o&&!0!==a?null!==u&&e.exitKey(u):e.leaveKey(u,n.key,o),o},l.prototype._decodeGeneric=function(e,t,n){var r=this._baseState;return"seq"===e||"set"===e?null:"seqof"===e||"setof"===e?this._decodeList(t,e,r.args[0],n):/str$/.test(e)?this._decodeStr(t,e,n):"objid"===e&&r.args?this._decodeObjid(t,r.args[0],r.args[1],n):"objid"===e?this._decodeObjid(t,null,null,n):"gentime"===e||"utctime"===e?this._decodeTime(t,e,n):"null_"===e?this._decodeNull(t,n):"bool"===e?this._decodeBool(t,n):"objDesc"===e?this._decodeStr(t,e,n):"int"===e||"enum"===e?this._decodeInt(t,r.args&&r.args[0],n):null!==r.use?this._getUse(r.use,t._reporterState.obj)._decode(t,n):t.error("unknown tag: "+e)},l.prototype._getUse=function(e,t){var n=this._baseState;return n.useDecoder=this._use(e,t),u(null===n.useDecoder._baseState.parent),n.useDecoder=n.useDecoder._baseState.children[0],n.implicit!==n.useDecoder._baseState.implicit&&(n.useDecoder=n.useDecoder.clone(),n.useDecoder._baseState.implicit=n.implicit),n.useDecoder},l.prototype._decodeChoice=function(e,t){var n=this._baseState,r=null,o=!1;return Object.keys(n.choice).some((function(a){var i=e.save(),u=n.choice[a];try{var c=u._decode(e,t);if(e.isError(c))return!1;r={type:a,value:c},o=!0}catch(t){return e.restore(i),!1}return!0}),this),o?r:e.error("Choice not matched")},l.prototype._createEncoderBuffer=function(e){return new a(e,this.reporter)},l.prototype._encode=function(e,t,n){var r=this._baseState;if(null===r.default||r.default!==e){var o=this._encodeValue(e,t,n);if(void 0!==o&&!this._skipDefault(o,t,n))return o}},l.prototype._encodeValue=function(e,t,n){var a=this._baseState;if(null===a.parent)return a.children[0]._encode(e,t||new o);var i=null;if(this.reporter=t,a.optional&&void 0===e){if(null===a.default)return;e=a.default}var u=null,c=!1;if(a.any)i=this._createEncoderBuffer(e);else if(a.choice)i=this._encodeChoice(e,t);else if(a.contains)u=this._getUse(a.contains,n)._encode(e,t),c=!0;else if(a.children)u=a.children.map((function(n){if("null_"===n._baseState.tag)return n._encode(null,t,e);if(null===n._baseState.key)return t.error("Child should have a key");var o=t.enterKey(n._baseState.key);if("object"!==(0,r.default)(e))return t.error("Child expected, but input is not object");var a=n._encode(e[n._baseState.key],t,e);return t.leaveKey(o),a}),this).filter((function(e){return e})),u=this._createEncoderBuffer(u);else if("seqof"===a.tag||"setof"===a.tag){if(!a.args||1!==a.args.length)return t.error("Too many args for : "+a.tag);if(!Array.isArray(e))return t.error("seqof/setof, but data is not Array");var s=this.clone();s._baseState.implicit=null,u=this._createEncoderBuffer(e.map((function(n){var r=this._baseState;return this._getUse(r.args[0],e)._encode(n,t)}),s))}else null!==a.use?i=this._getUse(a.use,n)._encode(e,t):(u=this._encodePrimitive(a.tag,e),c=!0);if(!a.any&&null===a.choice){var l=null!==a.implicit?a.implicit:a.tag,f=null===a.implicit?"universal":"context";null===l?null===a.use&&t.error("Tag could be omitted only for .use()"):null===a.use&&(i=this._encodeComposite(l,c,f,u))}return null!==a.explicit&&(i=this._encodeComposite(a.explicit,!1,"context",i)),i},l.prototype._encodeChoice=function(e,t){var n=this._baseState,r=n.choice[e.type];return r||u(!1,e.type+" not found in "+JSON.stringify(Object.keys(n.choice))),r._encode(e.value,t)},l.prototype._encodePrimitive=function(e,t){var n=this._baseState;if(/str$/.test(e))return this._encodeStr(t,e);if("objid"===e&&n.args)return this._encodeObjid(t,n.reverseArgs[0],n.args[1]);if("objid"===e)return this._encodeObjid(t,null,null);if("gentime"===e||"utctime"===e)return this._encodeTime(t,e);if("null_"===e)return this._encodeNull();if("int"===e||"enum"===e)return this._encodeInt(t,n.args&&n.reverseArgs[0]);if("bool"===e)return this._encodeBool(t);if("objDesc"===e)return this._encodeStr(t,e);throw new Error("Unsupported tag: "+e)},l.prototype._isNumstr=function(e){return/^[0-9 ]*$/.test(e)},l.prototype._isPrintstr=function(e){return/^[A-Za-z0-9 '()+,-./:=?]*$/.test(e)}},function(e,t,n){"use strict";var r=n(16);function o(e){this._reporterState={obj:null,path:[],options:e||{},errors:[]}}function a(e,t){this.path=e,this.rethrow(t)}t.Reporter=o,o.prototype.isError=function(e){return e instanceof a},o.prototype.save=function(){var e=this._reporterState;return{obj:e.obj,pathLen:e.path.length}},o.prototype.restore=function(e){var t=this._reporterState;t.obj=e.obj,t.path=t.path.slice(0,e.pathLen)},o.prototype.enterKey=function(e){return this._reporterState.path.push(e)},o.prototype.exitKey=function(e){var t=this._reporterState;t.path=t.path.slice(0,e-1)},o.prototype.leaveKey=function(e,t,n){var r=this._reporterState;this.exitKey(e),null!==r.obj&&(r.obj[t]=n)},o.prototype.path=function(){return this._reporterState.path.join("/")},o.prototype.enterObject=function(){var e=this._reporterState,t=e.obj;return e.obj={},t},o.prototype.leaveObject=function(e){var t=this._reporterState,n=t.obj;return t.obj=e,n},o.prototype.error=function(e){var t,n=this._reporterState,r=e instanceof a;if(t=r?e:new a(n.path.map((function(e){return"["+JSON.stringify(e)+"]"})).join(""),e.message||e,e.stack),!n.options.partial)throw t;return r||n.errors.push(t),t},o.prototype.wrapResult=function(e){var t=this._reporterState;return t.options.partial?{result:this.isError(e)?null:e,errors:t.errors}:e},r(a,Error),a.prototype.rethrow=function(e){if(this.message=e+" at: "+(this.path||"(shallow)"),Error.captureStackTrace&&Error.captureStackTrace(this,a),!this.stack)try{throw new Error(this.message)}catch(e){this.stack=e.stack}return this}},function(e,t,n){"use strict";function r(e){var t={};return Object.keys(e).forEach((function(n){(0|n)==n&&(n|=0);var r=e[n];t[r]=n})),t}t.tagClass={0:"universal",1:"application",2:"context",3:"private"},t.tagClassByName=r(t.tagClass),t.tag={0:"end",1:"bool",2:"int",3:"bitstr",4:"octstr",5:"null_",6:"objid",7:"objDesc",8:"external",9:"real",10:"enum",11:"embed",12:"utf8str",13:"relativeOid",16:"seq",17:"set",18:"numstr",19:"printstr",20:"t61str",21:"videostr",22:"ia5str",23:"utctime",24:"gentime",25:"graphstr",26:"iso646str",27:"genstr",28:"unistr",29:"charstr",30:"bmpstr"},t.tagByName=r(t.tag)},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.rlphash=t.ripemd160FromArray=t.ripemd160FromString=t.ripemd160=t.sha256FromArray=t.sha256FromString=t.sha256=t.keccakFromArray=t.keccakFromHexString=t.keccakFromString=t.keccak256=t.keccak=void 0;var r=n(1141),o=n(1157),a=n(112),i=n(152),u=n(265);t.keccak=function(e,t){switch(void 0===t&&(t=256),(0,u.assertIsBuffer)(e),t){case 224:return(0,r.keccak224)(e);case 256:return(0,r.keccak256)(e);case 384:return(0,r.keccak384)(e);case 512:return(0,r.keccak512)(e);default:throw new Error("Invald algorithm: keccak".concat(t))}};t.keccak256=function(e){return(0,t.keccak)(e)};t.keccakFromString=function(n,r){void 0===r&&(r=256),(0,u.assertIsString)(n);var o=e.from(n,"utf8");return(0,t.keccak)(o,r)};t.keccakFromHexString=function(e,n){return void 0===n&&(n=256),(0,u.assertIsHexString)(e),(0,t.keccak)((0,i.toBuffer)(e),n)};t.keccakFromArray=function(e,n){return void 0===n&&(n=256),(0,u.assertIsArray)(e),(0,t.keccak)((0,i.toBuffer)(e),n)};var c=function(e){return e=(0,i.toBuffer)(e),o("sha256").update(e).digest()};t.sha256=function(e){return(0,u.assertIsBuffer)(e),c(e)};t.sha256FromString=function(e){return(0,u.assertIsString)(e),c(e)};t.sha256FromArray=function(e){return(0,u.assertIsArray)(e),c(e)};var s=function(e,t){e=(0,i.toBuffer)(e);var n=o("rmd160").update(e).digest();return!0===t?(0,i.setLengthLeft)(n,32):n};t.ripemd160=function(e,t){return(0,u.assertIsBuffer)(e),s(e,t)};t.ripemd160FromString=function(e,t){return(0,u.assertIsString)(e),s(e,t)};t.ripemd160FromArray=function(e,t){return(0,u.assertIsArray)(e),s(e,t)};t.rlphash=function(e){return(0,t.keccak)(a.rlp.encode(e))}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";(t=e.exports=n(569)).Stream=t,t.Readable=t,t.Writable=n(573),t.Duplex=n(185),t.Transform=n(574),t.PassThrough=n(1152),t.finished=n(341),t.pipeline=n(1153)},function(e,t,n){"use strict";var r=n(184).codes.ERR_STREAM_PREMATURE_CLOSE;function o(){}e.exports=function e(t,n,a){if("function"==typeof n)return e(t,null,n);n||(n={}),a=function(e){var t=!1;return function(){if(!t){t=!0;for(var n=arguments.length,r=new Array(n),o=0;o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?k.default._fromProtobufKey(y.Key.decode(n.alias)):null;r instanceof g.default||(r=null);var o=null!=t.childTransactionRecords?t.childTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],a=null!=t.duplicateTransactionRecords?t.duplicateTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],i=null!=n.contractCallResult?d.default._fromProtobuf(n.contractCallResult):null!=n.contractCreateResult?d.default._fromProtobuf(n.contractCreateResult):void 0;return new e({receipt:u.default._fromProtobuf({receipt:n.receipt}),transactionHash:null!=n.transactionHash?n.transactionHash:new Uint8Array,consensusTimestamp:s.default._fromProtobuf(n.consensusTimestamp),transactionId:c.default._fromProtobuf(n.transactionID),transactionMemo:null!=n.memo?n.memo:"",transactionFee:l.default.fromTinybars(null!=n.transactionFee?n.transactionFee:0),transfers:f.default._fromProtobuf(null!=n.transferList&&null!=n.transferList.accountAmounts?n.transferList.accountAmounts:[]),contractFunctionResult:i,tokenTransfers:p.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),tokenTransfersList:_.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),scheduleRef:null!=n.scheduleRef?m.default._fromProtobuf(n.scheduleRef):null,assessedCustomFees:null!=n.assessedCustomFees?n.assessedCustomFees.map((function(e){return b.default._fromProtobuf(e)})):[],nftTransfers:h.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),automaticTokenAssociations:null!=n.automaticTokenAssociations?n.automaticTokenAssociations.map((function(e){return v.default._fromProtobuf(e)})):[],parentConsensusTimestamp:null!=n.parentConsensusTimestamp?s.default._fromProtobuf(n.parentConsensusTimestamp):null,aliasKey:r,duplicates:a,children:o,hbarAllowanceAdjustments:(null!=n.cryptoAdjustments?n.cryptoAdjustments:[]).map((function(e){return w.default._fromProtobuf(e)})),tokenAllowanceAdjustments:(null!=n.tokenAdjustments?n.tokenAdjustments:[]).map((function(e){return I.default._fromProtobuf(e)})),nftAllowanceAdjustments:(null!=n.nftAdjustments?n.nftAdjustments:[]).map((function(e){return A.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(y.TransactionGetRecordResponse.decode(t))}}]),e}();t.default=E},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(13)),u=r(n(31));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?k.default._fromProtobufKey(y.Key.decode(n.alias)):null;r instanceof g.default||(r=null);var o=null!=t.childTransactionRecords?t.childTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],a=null!=t.duplicateTransactionRecords?t.duplicateTransactionRecords.map((function(t){return e._fromProtobuf({transactionRecord:t})})):[],i=null!=n.contractCallResult?d.default._fromProtobuf(n.contractCallResult):null!=n.contractCreateResult?d.default._fromProtobuf(n.contractCreateResult):void 0;return new e({receipt:u.default._fromProtobuf({receipt:n.receipt}),transactionHash:null!=n.transactionHash?n.transactionHash:new Uint8Array,consensusTimestamp:s.default._fromProtobuf(n.consensusTimestamp),transactionId:c.default._fromProtobuf(n.transactionID),transactionMemo:null!=n.memo?n.memo:"",transactionFee:l.default.fromTinybars(null!=n.transactionFee?n.transactionFee:0),transfers:f.default._fromProtobuf(null!=n.transferList&&null!=n.transferList.accountAmounts?n.transferList.accountAmounts:[]),contractFunctionResult:i,tokenTransfers:p.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),tokenTransfersList:_.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),scheduleRef:null!=n.scheduleRef?m.default._fromProtobuf(n.scheduleRef):null,assessedCustomFees:null!=n.assessedCustomFees?n.assessedCustomFees.map((function(e){return b.default._fromProtobuf(e)})):[],nftTransfers:h.default._fromProtobuf(null!=n.tokenTransferLists?n.tokenTransferLists:[]),automaticTokenAssociations:null!=n.automaticTokenAssociations?n.automaticTokenAssociations.map((function(e){return v.default._fromProtobuf(e)})):[],parentConsensusTimestamp:null!=n.parentConsensusTimestamp?s.default._fromProtobuf(n.parentConsensusTimestamp):null,aliasKey:r,duplicates:a,children:o,hbarAllowanceAdjustments:(null!=n.cryptoAdjustments?n.cryptoAdjustments:[]).map((function(e){return w.default._fromProtobuf(e)})),tokenAllowanceAdjustments:(null!=n.tokenAdjustments?n.tokenAdjustments:[]).map((function(e){return I.default._fromProtobuf(e)})),nftAllowanceAdjustments:(null!=n.nftAdjustments?n.nftAdjustments:[]).map((function(e){return A.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(y.TransactionGetRecordResponse.decode(t))}}]),e}();t.default=E},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(14)),u=r(n(32));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||"tuple"===e)&&b[t])return!0;return(m[t]||"payable"===t)&&h.throwArgumentError("invalid modifier","name",t),!1}function k(e,t){for(var n in t)(0,l.defineReadOnly)(e,n,t[n])}var g=Object.freeze({sighash:"sighash",minimal:"minimal",full:"full",json:"json"});t.FormatTypes=g;var _=new RegExp(/^(.*)\[([0-9]*)\]$/),w=function(){function e(t,n){(0,u.default)(this,e),t!==y&&h.throwError("use fromString",f.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new ParamType()"}),k(this,n);var r=this.type.match(_);k(this,r?{arrayLength:parseInt(r[2]||"-1"),arrayChildren:e.fromObject({type:r[1],components:this.components}),baseType:"array"}:{arrayLength:null,arrayChildren:null,baseType:null!=this.components?"tuple":this.type}),this._isParamType=!0,Object.freeze(this)}return(0,c.default)(e,[{key:"format",value:function(e){if(e||(e=g.sighash),g[e]||h.throwArgumentError("invalid format type","format",e),e===g.json){var t={type:"tuple"===this.baseType?"tuple":this.type,name:this.name||void 0};return"boolean"==typeof this.indexed&&(t.indexed=this.indexed),this.components&&(t.components=this.components.map((function(t){return JSON.parse(t.format(e))}))),JSON.stringify(t)}var n="";return"array"===this.baseType?(n+=this.arrayChildren.format(e),n+="["+(this.arrayLength<0?"":String(this.arrayLength))+"]"):"tuple"===this.baseType?(e!==g.sighash&&(n+=this.type),n+="("+this.components.map((function(t){return t.format(e)})).join(e===g.full?", ":",")+")"):n+=this.type,e!==g.sighash&&(!0===this.indexed&&(n+=" indexed"),e===g.full&&this.name&&(n+=" "+this.name)),n}}],[{key:"from",value:function(t,n){return"string"==typeof t?e.fromString(t,n):e.fromObject(t)}},{key:"fromObject",value:function(t){return e.isParamType(t)?t:new e(y,{name:t.name||null,type:D(t.type),indexed:null==t.indexed?null:!!t.indexed,components:t.components?t.components.map(e.fromObject):null})}},{key:"fromString",value:function(t,n){return function(t){return e.fromObject({name:t.name,type:t.type,indexed:t.indexed,components:t.components})}(function(e,t){var n=e;function r(t){h.throwArgumentError("unexpected character at position ".concat(t),"param",e)}function o(e){var n={type:"",name:"",parent:e,state:{allowType:!0}};return t&&(n.indexed=!1),n}e=e.replace(/\s/g," ");for(var a={type:"",name:"",state:{allowType:!0}},i=a,u=0;u2&&h.throwArgumentError("invalid human-readable ABI signature","value",e),n[1].match(/^[0-9]+$/)||h.throwArgumentError("invalid human-readable ABI signature gas","value",e),t.gas=s.BigNumber.from(n[1]),n[0]):e}function P(e,t){t.constant=!1,t.payable=!1,t.stateMutability="nonpayable",e.split(" ").forEach((function(e){switch(e.trim()){case"constant":t.constant=!0;break;case"payable":t.payable=!0,t.stateMutability="payable";break;case"nonpayable":t.payable=!1,t.stateMutability="nonpayable";break;case"pure":t.constant=!0,t.stateMutability="pure";break;case"view":t.constant=!0,t.stateMutability="view";break;case"external":case"public":case"":break;default:console.log("unknown modifier: "+e)}}))}function E(e){var t={constant:!1,payable:!0,stateMutability:"payable"};return null!=e.stateMutability?(t.stateMutability=e.stateMutability,t.constant="view"===t.stateMutability||"pure"===t.stateMutability,null!=e.constant&&!!e.constant!==t.constant&&h.throwArgumentError("cannot have constant function with mutability "+t.stateMutability,"value",e),t.payable="payable"===t.stateMutability,null!=e.payable&&!!e.payable!==t.payable&&h.throwArgumentError("cannot have payable function with mutability "+t.stateMutability,"value",e)):null!=e.payable?(t.payable=!!e.payable,null!=e.constant||t.payable||"constructor"===e.type||h.throwArgumentError("unable to determine stateMutability","value",e),t.constant=!!e.constant,t.constant?t.stateMutability="view":t.stateMutability=t.payable?"payable":"nonpayable",t.payable&&t.constant&&h.throwArgumentError("cannot have constant payable function","value",e)):null!=e.constant?(t.constant=!!e.constant,t.payable=!t.constant,t.stateMutability=t.constant?"view":"payable"):"constructor"!==e.type&&h.throwArgumentError("unable to determine stateMutability","value",e),t}t.EventFragment=T;var S=function(e){(0,o.default)(n,e);var t=p(n);function n(){return(0,u.default)(this,n),t.apply(this,arguments)}return(0,c.default)(n,[{key:"format",value:function(e){if(e||(e=g.sighash),g[e]||h.throwArgumentError("invalid format type","format",e),e===g.json)return JSON.stringify({type:"constructor",stateMutability:"nonpayable"!==this.stateMutability?this.stateMutability:void 0,payble:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map((function(t){return JSON.parse(t.format(e))}))});e===g.sighash&&h.throwError("cannot format a constructor for sighash",f.Logger.errors.UNSUPPORTED_OPERATION,{operation:"format(sighash)"});var t="constructor("+this.inputs.map((function(t){return t.format(e)})).join(e===g.full?", ":",")+") ";return this.stateMutability&&"nonpayable"!==this.stateMutability&&(t+=this.stateMutability+" "),t.trim()}}],[{key:"from",value:function(e){return"string"==typeof e?n.fromString(e):n.fromObject(e)}},{key:"fromObject",value:function(e){if(n.isConstructorFragment(e))return e;"constructor"!==e.type&&h.throwArgumentError("invalid constructor object","value",e);var t=E(e);t.constant&&h.throwArgumentError("constructor cannot be constant","value",e);var r={name:null,type:e.type,inputs:e.inputs?e.inputs.map(w.fromObject):[],payable:t.payable,stateMutability:t.stateMutability,gas:e.gas?s.BigNumber.from(e.gas):null};return new n(y,r)}},{key:"fromString",value:function(e){var t={type:"constructor"},r=(e=O(e,t)).match(B);return r&&"constructor"===r[1].trim()||h.throwArgumentError("invalid constructor string","value",e),t.inputs=I(r[2].trim(),!1),P(r[3].trim(),t),n.fromObject(t)}},{key:"isConstructorFragment",value:function(e){return e&&e._isFragment&&"constructor"===e.type}}]),n}(A);t.ConstructorFragment=S;var R=function(e){(0,o.default)(n,e);var t=p(n);function n(){return(0,u.default)(this,n),t.apply(this,arguments)}return(0,c.default)(n,[{key:"format",value:function(e){if(e||(e=g.sighash),g[e]||h.throwArgumentError("invalid format type","format",e),e===g.json)return JSON.stringify({type:"function",name:this.name,constant:this.constant,stateMutability:"nonpayable"!==this.stateMutability?this.stateMutability:void 0,payble:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map((function(t){return JSON.parse(t.format(e))})),ouputs:this.outputs.map((function(t){return JSON.parse(t.format(e))}))});var t="";return e!==g.sighash&&(t+="function "),t+=this.name+"("+this.inputs.map((function(t){return t.format(e)})).join(e===g.full?", ":",")+") ",e!==g.sighash&&(this.stateMutability?"nonpayable"!==this.stateMutability&&(t+=this.stateMutability+" "):this.constant&&(t+="view "),this.outputs&&this.outputs.length&&(t+="returns ("+this.outputs.map((function(t){return t.format(e)})).join(", ")+") "),null!=this.gas&&(t+="@"+this.gas.toString()+" ")),t.trim()}}],[{key:"from",value:function(e){return"string"==typeof e?n.fromString(e):n.fromObject(e)}},{key:"fromObject",value:function(e){if(n.isFunctionFragment(e))return e;"function"!==e.type&&h.throwArgumentError("invalid function object","value",e);var t=E(e),r={type:e.type,name:N(e.name),constant:t.constant,inputs:e.inputs?e.inputs.map(w.fromObject):[],outputs:e.outputs?e.outputs.map(w.fromObject):[],payable:t.payable,stateMutability:t.stateMutability,gas:e.gas?s.BigNumber.from(e.gas):null};return new n(y,r)}},{key:"fromString",value:function(e){var t={type:"function"},r=(e=O(e,t)).split(" returns ");r.length>2&&h.throwArgumentError("invalid function string","value",e);var o=r[0].match(B);if(o||h.throwArgumentError("invalid function signature","value",e),t.name=o[1].trim(),t.name&&N(t.name),t.inputs=I(o[2],!1),P(o[3].trim(),t),r.length>1){var a=r[1].match(B);""==a[1].trim()&&""==a[3].trim()||h.throwArgumentError("unexpected tokens","value",e),t.outputs=I(a[2],!1)}else t.outputs=[];return n.fromObject(t)}},{key:"isFunctionFragment",value:function(e){return e&&e._isFragment&&"function"===e.type}}]),n}(S);function D(e){return e.match(/^uint($|[^1-9])/)?e="uint256"+e.substring(4):e.match(/^int($|[^1-9])/)&&(e="int256"+e.substring(3)),e}t.FunctionFragment=R;var C=new RegExp("^[A-Za-z_][A-Za-z0-9_]*$");function N(e){return e&&e.match(C)||h.throwArgumentError('invalid identifier "'.concat(e,'"'),"value",e),e}var B=new RegExp("^([^)(]*)\\((.*)\\)([^)(]*)$")},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ErrorReason=t.Utf8ErrorFuncs=t.UnicodeNormalizationForm=void 0,t._toEscapedUtf8String=function(e,t){return'"'+f(e,t).map((function(e){if(e<256){switch(e){case 8:return"\\b";case 9:return"\\t";case 10:return"\\n";case 13:return"\\r";case 34:return'\\"';case 92:return"\\\\"}if(e>=32&&e<127)return String.fromCharCode(e)}return e<=65535?p(e):p(55296+((e-=65536)>>10&1023))+p(56320+(1023&e))})).join("")+'"'},t._toUtf8String=h,t.toUtf8Bytes=d,t.toUtf8CodePoints=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.current;return f(d(e,t))},t.toUtf8String=function(e,t){return h(f(e,t))};var r,o,a=n(56),i=n(58),u=n(1466),c=new i.Logger(u.version);function s(e,t,n,r,a){if(e===o.BAD_PREFIX||e===o.UNEXPECTED_CONTINUE){for(var i=0,u=t+1;u>6==2;u++)i++;return i}return e===o.OVERRUN?n.length-t-1:0}t.UnicodeNormalizationForm=r,function(e){e.current="",e.NFC="NFC",e.NFD="NFD",e.NFKC="NFKC",e.NFKD="NFKD"}(r||(t.UnicodeNormalizationForm=r={})),t.Utf8ErrorReason=o,function(e){e.UNEXPECTED_CONTINUE="unexpected continuation byte",e.BAD_PREFIX="bad codepoint prefix",e.OVERRUN="string overrun",e.MISSING_CONTINUE="missing continuation byte",e.OUT_OF_RANGE="out of UTF-8 range",e.UTF16_SURROGATE="UTF-16 surrogate",e.OVERLONG="overlong representation"}(o||(t.Utf8ErrorReason=o={}));var l=Object.freeze({error:function(e,t,n,r,o){return c.throwArgumentError("invalid codepoint at offset ".concat(t,"; ").concat(e),"bytes",n)},ignore:s,replace:function(e,t,n,r,a){return e===o.OVERLONG?(r.push(a),0):(r.push(65533),s(e,t,n))}});function f(e,t){null==t&&(t=l.error),e=(0,a.arrayify)(e);for(var n=[],r=0;r>7!=0){var u=null,c=null;if(192==(224&i))u=1,c=127;else if(224==(240&i))u=2,c=2047;else{if(240!=(248&i)){r+=t(128==(192&i)?o.UNEXPECTED_CONTINUE:o.BAD_PREFIX,r-1,e,n);continue}u=3,c=65535}if(r-1+u>=e.length)r+=t(o.OVERRUN,r-1,e,n);else{for(var s=i&(1<<8-u-1)-1,f=0;f1114111?r+=t(o.OUT_OF_RANGE,r-1-u,e,n,s):s>=55296&&s<=57343?r+=t(o.UTF16_SURROGATE,r-1-u,e,n,s):s<=c?r+=t(o.OVERLONG,r-1-u,e,n,s):n.push(s))}}else n.push(i)}return n}function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.current;t!=r.current&&(c.checkNormalize(),e=e.normalize(t));for(var n=[],o=0;o>6|192),n.push(63&i|128);else if(55296==(64512&i)){o++;var u=e.charCodeAt(o);if(o>=e.length||56320!=(64512&u))throw new Error("invalid utf-8 string");var s=65536+((1023&i)<<10)+(1023&u);n.push(s>>18|240),n.push(s>>12&63|128),n.push(s>>6&63|128),n.push(63&s|128)}else n.push(i>>12|224),n.push(i>>6&63|128),n.push(63&i|128)}return(0,a.arrayify)(n)}function p(e){var t="0000"+e.toString(16);return"\\u"+t.substring(t.length-4)}function h(e){return e.map((function(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10&1023),56320+(1023&e)))})).join("")}t.Utf8ErrorFuncs=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0});var o={Client:!0};Object.defineProperty(t,"Client",{enumerable:!0,get:function(){return i.default}});var a=n(710);Object.keys(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||e in t&&t[e]===a[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return a[e]}}))}));var i=r(n(847))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=r(n(377)),p=r(n(105)),h=r(n(166)),y=r(n(290)),m=r(n(384)),b=r(n(392)),v=n(745),k=n(746),g=A(n(115)),_=A(n(383)),w=A(n(749));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:"";return(0,v.createKeystore)(this.toBytesRaw(),e)}}],[{key:"generateED25519",value:function(){return new O(y.default.generate())}},{key:"generateECDSA",value:function(){return new O(m.default.generate())}},{key:"generate",value:function(){return O.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",O.generateED25519Async());case 1:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=O,e.next=3,y.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=O,e.next=3,m.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){try{return new O(y.default.fromBytes(e))}catch(e){}try{return new O(m.default.fromBytes(e))}catch(e){}throw new p.default("invalid private key length: ".concat(e.length," bytes"))}},{key:"fromBytesECDSA",value:function(e){return new O(m.default.fromBytes(e))}},{key:"fromBytesED25519",value:function(e){return new O(y.default.fromBytes(e))}},{key:"fromString",value:function(e){return O.fromBytes(g.decode(e))}},{key:"fromStringECDSA",value:function(e){return O.fromBytesECDSA(g.decode(e))}},{key:"fromStringED25519",value:function(e){return O.fromBytesED25519(g.decode(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"","string"!=typeof t){e.next=7;break}return e.next=4,d.default.fromString(t);case 4:e.t0=e.sent,e.next=8;break;case 7:e.t0=t;case 8:return e.abrupt("return",e.t0.toPrivateKey(n));case 9:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=O,e.next=4,(0,v.loadKeystore)(t,n);case 4:return e.t1=e.sent,e.abrupt("return",e.t0.fromBytes.call(e.t0,e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:"",e.next=3,(0,k.read)(t,n);case 3:if(!((r=e.sent)instanceof y.default||r instanceof m.default)){e.next=6;break}return e.abrupt("return",new O(r));case 6:return e.abrupt("return",O.fromBytes(r));case 7:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),O}(h.default);t.default=E},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(9)),u=r(n(41)),c=r(n(8)),s=r(n(1)),l=r(n(2)),f=r(n(376)),d=r(n(290)),p=r(n(381)),h=r(n(292)),y=r(n(721)),m=r(n(722)),b=r(n(229)),v=T(n(382)),k=T(n(230)),g=T(n(196)),_=T(n(383)),w=T(n(723)),I=T(n(291));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var O=function(){function e(t){var n=t.words,r=t.legacy;(0,s.default)(this,e),this.words=n,this._isLegacy=r}var t,n,r,o,v,A,T;return(0,l.default)(e,[{key:"toPrivateKey",value:(T=(0,c.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",!this._isLegacy){e.next=5;break}if(!(t.length>0)){e.next=4;break}throw new Error("legacy 22-word mnemonics do not support passphrases");case 4:return e.abrupt("return",this.toLegacyPrivateKey());case 5:return e.next=7,this._toPrivateKey(t);case 7:return e.abrupt("return",e.sent);case 8:case"end":return e.stop()}}),e,this)}))),function(){return T.apply(this,arguments)})},{key:"_validate",value:(A=(0,c.default)(a.default.mark((function e(){var t,n,r,o,c,s,l,f,d,b,v,k,g;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._isLegacy){e.next=12;break}if(22===this.words.length){e.next=3;break}throw new p.default(this,h.default.BadLength,[]);case 3:if(!((t=this.words.reduce((function(e,t,n){return y.default.includes(t.toLowerCase())?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=6;break}throw new p.default(this,h.default.UnknownWords,t);case 6:if(n=w.legacy1(this.words,y.default),r=(0,i.default)(n,2),o=r[0],c=r[1],s=w.crc8(o),c===s){e.next=10;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 10:e.next=28;break;case 12:if(12===this.words.length||24===this.words.length){e.next=14;break}throw new p.default(this,h.default.BadLength,[]);case 14:if(!((l=this.words.reduce((function(e,t,n){return m.default.includes(t)?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=17;break}throw new p.default(this,h.default.UnknownWords,l);case 17:return f=this.words.map((function(e){return m.default.indexOf(e).toString(2).padStart(11,"0")})).join(""),d=32*Math.floor(f.length/33),b=f.slice(0,d),v=f.slice(d),k=b.match(/(.{1,8})/g),g=k.map(P),e.next=25,S(Uint8Array.from(g));case 25:if(e.sent===v){e.next=28;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 28:return e.abrupt("return",this);case 29:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"_toPrivateKey",value:(v=(0,c.default)(a.default.mark((function e(){var t,n,r,o,i,u,c,s,l,p,h,y,m=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=m.length>0&&void 0!==m[0]?m[0]:"",n=this.words.join(" "),r="mnemonic".concat(t),e.next=5,k.deriveKey(g.HashAlgorithm.Sha512,n,r,2048,64);case 5:return o=e.sent,e.next=8,g.hash(g.HashAlgorithm.Sha512,"ed25519 seed",o);case 8:i=e.sent,u=i.subarray(0,32),c=i.subarray(32),s=0,l=[44,3030,0,0];case 12:if(!(se.length)&&(t=e.length);for(var n=0,r=new Array(t);n>8,i=255&o;a?n.push(a,i):n.push(i)}return n},r.zero2=o,r.toHex=a,r.encode=function(e,t){return"hex"===t?a(e):e}},function(e,t,n){"use strict";var r=t;r.base=n(231),r.short=n(728),r.mont=n(729),r.edwards=n(730)},function(e,t,n){"use strict";var r=n(94).rotr32;function o(e,t,n){return e&t^~e&n}function a(e,t,n){return e&t^e&n^t&n}function i(e,t,n){return e^t^n}t.ft_1=function(e,t,n,r){return 0===e?o(t,n,r):1===e||3===e?i(t,n,r):2===e?a(t,n,r):void 0},t.ch32=o,t.maj32=a,t.p32=i,t.s0_256=function(e){return r(e,2)^r(e,13)^r(e,22)},t.s1_256=function(e){return r(e,6)^r(e,11)^r(e,25)},t.g0_256=function(e){return r(e,7)^r(e,18)^e>>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(94),o=n(197),a=n(389),i=n(73),u=r.sum32,c=r.sum32_4,s=r.sum32_5,l=a.ch32,f=a.maj32,d=a.s0_256,p=a.s1_256,h=a.g0_256,y=a.g1_256,m=o.BlockHash,b=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function v(){if(!(this instanceof v))return new v;m.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=b,this.W=new Array(64)}r.inherits(v,m),e.exports=v,v.blockSize=512,v.outSize=256,v.hmacStrength=192,v.padLength=64,v.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){c=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(c)throw a}}}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n4)throw new Error("unsupported DER integer length of ".concat(t," bytes"));return n.getUint32(0,!1)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(228)),p=r(n(396)),h=r(n(106)),y=r(n(43)),m=r(n(116));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var k=function(e){(0,s.default)(k,e);var t,n,r,o,l,f,y,m,b=v(k);function k(e){var t;return(0,u.default)(this,k),(t=b.call(this))._key=e,t}return(0,c.default)(k,[{key:"derive",value:(m=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,this._key.derive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"legacyDerive",value:(y=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,this._key.legacyDerive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"publicKey",get:function(){return new h.default(this._key.publicKey)}},{key:"sign",value:function(e){return this._key.sign(e)}},{key:"signTransaction",value:function(e){var t=e._signedTransactions.get(0),n=null!=t.bodyBytes?this.sign(t.bodyBytes):new Uint8Array;return e.addSignature(this.publicKey,n),n}},{key:"isDerivable",value:function(){return this._key.isDerivable()}},{key:"toBytes",value:function(){return this._key.toBytes()}},{key:"toBytesDer",value:function(){return this._key.toBytesDer()}},{key:"toBytesRaw",value:function(){return this._key.toBytesRaw()}},{key:"toString",value:function(){return this._key.toStringDer()}},{key:"toStringDer",value:function(){return this._key.toStringDer()}},{key:"toStringRaw",value:function(){return this._key.toStringRaw()}},{key:"toKeystore",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._key.toKeystore(e)}},{key:"_toProtobufKey",value:function(){return this.publicKey._toProtobufKey()}},{key:"toAccountId",value:function(e,t){return this.publicKey.toAccountId(e,t)}}],[{key:"generateED25519",value:function(){return new k(d.PrivateKey.generateED25519())}},{key:"generateECDSA",value:function(){return new k(d.PrivateKey.generateECDSA())}},{key:"generate",value:function(){return k.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateED25519Async();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateECDSAAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){return new k(d.PrivateKey.fromBytes(e))}},{key:"fromBytesECDSA",value:function(e){return new k(d.PrivateKey.fromBytesECDSA(e))}},{key:"fromBytesED25519",value:function(e){return new k(d.PrivateKey.fromBytesED25519(e))}},{key:"fromString",value:function(e){return new k(d.PrivateKey.fromString(e))}},{key:"fromStringECDSA",value:function(e){return new k(d.PrivateKey.fromStringECDSA(e))}},{key:"fromStringED25519",value:function(e){return new k(d.PrivateKey.fromStringED25519(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"",!(t instanceof p.default)){e.next=7;break}return e.t0=k,e.next=5,d.PrivateKey.fromMnemonic(t._mnemonic,n);case 5:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 7:return e.t2=k,e.next=10,d.PrivateKey.fromMnemonic(t,n);case 10:return e.t3=e.sent,e.abrupt("return",new e.t2(e.t3));case 12:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=k,e.next=4,d.PrivateKey.fromKeystore(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=k,e.next=4,d.PrivateKey.fromPem(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),k}(y.default);t.default=k,m.default.privateKeyConstructor=function(e){return new k(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(228)),l=r(n(116));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}var d=function(){function e(t){(0,u.default)(this,e),this._mnemonic=t}var t,n,r,o,f,d;return(0,c.default)(e,[{key:"toPrivateKey",value:(d=(0,i.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",null!=l.default.privateKeyConstructor){e.next=3;break}throw new Error("`PrivateKey` has not been loaded");case 3:return e.t0=l.default,e.next=6,this._mnemonic.toPrivateKey(t);case 6:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 8:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"toLegacyPrivateKey",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=l.default.privateKeyConstructor){e.next=2;break}throw new Error("`PrivateKey` has not been loaded");case 2:return e.t0=l.default,e.next=5,this._mnemonic.toLegacyPrivateKey();case 5:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 7:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"toString",value:function(){return this._mnemonic.toString()}}],[{key:"generate",value:(o=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(24);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return o.apply(this,arguments)})},{key:"generate12",value:(r=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(12);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return r.apply(this,arguments)})},{key:"fromWords",value:(n=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromWords(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return n.apply(this,arguments)})},{key:"fromString",value:(t=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromString(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(4);e.exports=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=r(e)););return e},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(135)),u=function(){function e(t,n,r){(0,o.default)(this,e),this._name=t,this._symbol=n,this._tinybar=r,Object.freeze(this)}return(0,a.default)(e,null,[{key:"fromString",value:function(t){switch(t){case e.Hbar._symbol:return e.Hbar;case e.Tinybar._symbol:return e.Tinybar;case e.Microbar._symbol:return e.Microbar;case e.Millibar._symbol:return e.Millibar;case e.Kilobar._symbol:return e.Kilobar;case e.Megabar._symbol:return e.Megabar;case e.Gigabar._symbol:return e.Gigabar;default:throw new Error("Unknown unit.")}}}]),e}();t.default=u,u.Tinybar=new u("tinybar","tℏ",new i.default(1)),u.Microbar=new u("microbar","μℏ",new i.default(100)),u.Millibar=new u("millibar","mℏ",new i.default(1e5)),u.Hbar=new u("hbar","ℏ",new i.default("100000000")),u.Kilobar=new u("kilobar","kℏ",new i.default(1e3).multipliedBy(new i.default("100000000"))),u.Megabar=new u("megabar","Mℏ",new i.default(1e6).multipliedBy(new i.default("100000000"))),u.Gigabar=new u("gigabar","Gℏ",new i.default("1000000000").multipliedBy(new i.default("100000000")))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(7)),a=r(n(8)),i=r(n(1)),u=r(n(2)),c=r(n(233)),s=r(n(137)),l=r(n(400)),f=r(n(406)),d=function(){function e(t){(0,i.default)(this,e),this.nodeId=t.nodeId,this.transactionHash=t.transactionHash,this.transactionId=t.transactionId,Object.freeze(this)}var t,n;return(0,u.default)(e,[{key:"getReceipt",value:(n=(0,a.default)(o.default.mark((function e(t){var n;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(new l.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t);case 2:if((n=e.sent).status===s.default.Success){e.next=5;break}throw new c.default({transactionReceipt:n,status:n.status,transactionId:this.transactionId});case 5:return e.abrupt("return",n);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"getRecord",value:(t=(0,a.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getReceipt(t);case 2:return e.abrupt("return",(new f.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),f=r(n(137)),d=r(n(235)),p=r(n(75)),h=r(n(198)),y=r(n(233)),m=n(139),b=n(36);function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeDuplicates",value:function(e){return this._includeDuplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._includeDuplicates&&this._includeDuplicates}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:b.ResponseCodeEnum.OK);switch(r){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return m.ExecutionState.Retry;case f.default.Ok:break;default:return m.ExecutionState.Error}var o=t.transactionGetReceipt.receipt.status;switch(r=f.default._fromCode(o)){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return m.ExecutionState.Retry;case f.default.Success:return m.ExecutionState.Finished;default:return m.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:b.ResponseCodeEnum.OK);switch(r){case f.default.Ok:break;default:return new h.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetReceipt,a=o.receipt.status;return r=f.default._fromCode(a),new y.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf(o)})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTransactionReceipts(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetReceipt.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetReceipt;return Promise.resolve(d.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetReceipt:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeDuplicates:this._includeDuplicates,includeChildReceipts:this._includeChildren}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetReceipt;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0,includeChildren:null!=t.includeChildReceipts?t.includeChildReceipts:void 0})}}]),n}(l.default);t.default=g,l.QUERY_REGISTRY.set("transactionGetReceipt",g._fromProtobuf)},function(e,t,n){"use strict";e.exports=n(754)},function(e,t,n){"use strict";e.exports=f;var r,o=n(138),a=o.LongBits,i=o.base64,u=o.utf8;function c(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}function s(){}function l(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}function f(){this.len=0,this.head=new c(s,0,0),this.tail=this.head,this.states=null}var d=function(){return o.Buffer?function(){return(f.create=function(){return new r})()}:function(){return new f}};function p(e,t,n){t[n]=255&e}function h(e,t){this.len=e,this.next=void 0,this.val=t}function y(e,t,n){for(;e.hi;)t[n++]=127&e.lo|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[n++]=127&e.lo|128,e.lo=e.lo>>>7;t[n++]=e.lo}function m(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}f.create=d(),f.alloc=function(e){return new o.Array(e)},o.Array!==Array&&(f.alloc=o.pool(f.alloc,o.Array.prototype.subarray)),f.prototype._push=function(e,t,n){return this.tail=this.tail.next=new c(e,t,n),this.len+=t,this},h.prototype=Object.create(c.prototype),h.prototype.fn=function(e,t,n){for(;e>127;)t[n++]=127&e|128,e>>>=7;t[n]=e},f.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new h((e>>>=0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this},f.prototype.int32=function(e){return e<0?this._push(y,10,a.fromNumber(e)):this.uint32(e)},f.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)},f.prototype.uint64=function(e){var t=a.from(e);return this._push(y,t.length(),t)},f.prototype.int64=f.prototype.uint64,f.prototype.sint64=function(e){var t=a.from(e).zzEncode();return this._push(y,t.length(),t)},f.prototype.bool=function(e){return this._push(p,1,e?1:0)},f.prototype.fixed32=function(e){return this._push(m,4,e>>>0)},f.prototype.sfixed32=f.prototype.fixed32,f.prototype.fixed64=function(e){var t=a.from(e);return this._push(m,4,t.lo)._push(m,4,t.hi)},f.prototype.sfixed64=f.prototype.fixed64,f.prototype.float=function(e){return this._push(o.float.writeFloatLE,4,e)},f.prototype.double=function(e){return this._push(o.float.writeDoubleLE,8,e)};var b=o.Array.prototype.set?function(e,t,n){t.set(e,n)}:function(e,t,n){for(var r=0;r>>0;if(!t)return this._push(p,1,0);if(o.isString(e)){var n=f.alloc(t=i.length(e));i.decode(e,n,0),e=n}return this.uint32(t)._push(b,t,e)},f.prototype.string=function(e){var t=u.length(e);return t?this.uint32(t)._push(u.write,t,e):this._push(p,1,0)},f.prototype.fork=function(){return this.states=new l(this),this.head=this.tail=new c(s,0,0),this.len=0,this},f.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new c(s,0,0),this.len=0),this},f.prototype.ldelim=function(){var e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=t,this.len+=n),this},f.prototype.finish=function(){for(var e=this.head.next,t=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t},f._configure=function(e){r=e,f.create=d(),r._configure()}},function(e,t,n){"use strict";e.exports=c;var r,o=n(138),a=o.LongBits,i=o.utf8;function u(e,t){return RangeError("index out of range: "+e.pos+" + "+(t||1)+" > "+e.len)}function c(e){this.buf=e,this.pos=0,this.len=e.length}var s,l="undefined"!=typeof Uint8Array?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new c(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new c(e);throw Error("illegal buffer")},f=function(){return o.Buffer?function(e){return(c.create=function(e){return o.Buffer.isBuffer(e)?new r(e):l(e)})(e)}:l};function d(){var e=new a(0,0),t=0;if(!(this.len-this.pos>4)){for(;t<3;++t){if(this.pos>=this.len)throw u(this);if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(127&this.buf[this.pos++])<<7*t)>>>0,e}for(;t<4;++t)if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(127&this.buf[this.pos])<<28)>>>0,e.hi=(e.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return e;if(t=0,this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw u(this);if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}function p(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}function h(){if(this.pos+8>this.len)throw u(this,8);return new a(p(this.buf,this.pos+=4),p(this.buf,this.pos+=4))}c.create=f(),c.prototype._slice=o.Array.prototype.subarray||o.Array.prototype.slice,c.prototype.uint32=(s=4294967295,function(){if(s=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return s;if((this.pos+=5)>this.len)throw this.pos=this.len,u(this,10);return s}),c.prototype.int32=function(){return 0|this.uint32()},c.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(1&e)|0},c.prototype.bool=function(){return 0!==this.uint32()},c.prototype.fixed32=function(){if(this.pos+4>this.len)throw u(this,4);return p(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw u(this,4);return 0|p(this.buf,this.pos+=4)},c.prototype.float=function(){if(this.pos+4>this.len)throw u(this,4);var e=o.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e},c.prototype.double=function(){if(this.pos+8>this.len)throw u(this,4);var e=o.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e},c.prototype.bytes=function(){var e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw u(this,e);return this.pos+=e,Array.isArray(this.buf)?this.buf.slice(t,n):t===n?new this.buf.constructor(0):this._slice.call(this.buf,t,n)},c.prototype.string=function(){var e=this.bytes();return i.read(e,0,e.length)},c.prototype.skip=function(e){if("number"==typeof e){if(this.pos+e>this.len)throw u(this,e);this.pos+=e}else do{if(this.pos>=this.len)throw u(this)}while(128&this.buf[this.pos++]);return this},c.prototype.skipType=function(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(e=7&this.uint32());)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+e+" at offset "+this.pos)}return this},c._configure=function(e){r=e,c.create=f(),r._configure();var t=o.Long?"toLong":"toNumber";o.merge(c.prototype,{int64:function(){return d.call(this)[t](!1)},uint64:function(){return d.call(this)[t](!0)},sint64:function(){return d.call(this).zzDecode()[t](!1)},fixed64:function(){return h.call(this)[t](!0)},sfixed64:function(){return h.call(this)[t](!1)}})}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.Ok:return"OK";case e.Cancelled:return"CANCELLED";case e.Unknown:return"UNKNOWN";case e.InvalidArgument:return"INVALID_ARGUMENT";case e.DeadlineExceeded:return"DEADLINE_EXCEEDED";case e.NotFound:return"NOT_FOUND";case e.AlreadyExists:return"ALREADY_EXISTS";case e.PermissionDenied:return"PERMISSION_DENIED";case e.Unauthenticated:return"UNAUTHENTICATED";case e.ResourceExhausted:return"RESOURCE_EXHAUSTED";case e.FailedPrecondition:return"FAILED_PRECONDITION";case e.Aborted:return"ABORTED";case e.OutOfRange:return"OUT_OF_RANGE";case e.Unimplemented:return"UNIMPLEMENTED";case e.Internal:return"INTERNAL";case e.Unavailable:return"UNAVAILABLE";case e.DataLoss:return"DATA_LOSS";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromValue",value:function(t){switch(t){case 0:return e.Ok;case 1:return e.Cancelled;case 2:return e.Unknown;case 3:return e.InvalidArgument;case 4:return e.DeadlineExceeded;case 5:return e.NotFound;case 6:return e.AlreadyExists;case 7:return e.PermissionDenied;case 16:return e.Unauthenticated;case 8:return e.ResourceExhausted;case 9:return e.FailedPrecondition;case 10:return e.Aborted;case 11:return e.OutOfRange;case 12:return e.Unimplemented;case 13:return e.Internal;case 14:return e.Unavailable;case 15:return e.DataLoss;default:throw new Error("(BUG) non-exhaustive GrpcStatus switch statement")}}}]),e}();t.default=i,i.Ok=new i(0),i.Cancelled=new i(1),i.Unknown=new i(2),i.InvalidArgument=new i(3),i.DeadlineExceeded=new i(4),i.NotFound=new i(5),i.AlreadyExists=new i(6),i.PermissionDenied=new i(7),i.Unauthenticated=new i(16),i.ResourceExhausted=new i(8),i.FailedPrecondition=new i(9),i.Aborted=new i(10),i.OutOfRange=new i(11),i.Unimplemented=new i(12),i.Internal=new i(13),i.Unavailable=new i(14),i.DataLoss=new i(15)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(20)),u=function(){function e(t){(0,o.default)(this,e),this.hbars=t.hbars,this.cents=t.cents,this.expirationTime=t.expirationTime,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{hbarEquiv:this.hbars,centEquiv:this.cents,expirationTime:{seconds:i.default.fromNumber(this.expirationTime.getSeconds())}}}}],[{key:"_fromProtobuf",value:function(t){return new e({hbars:t.hbarEquiv,cents:t.centEquiv,expirationTime:new Date(null!=t.expirationTime&&null!=t.expirationTime.seconds?t.expirationTime.seconds instanceof i.default?t.expirationTime.seconds.toInt():t.expirationTime.seconds:0)})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=k(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),f=r(n(298)),d=r(n(235)),p=r(n(75)),h=r(n(137)),y=r(n(198)),m=r(n(233)),b=n(139),v=n(36);function k(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(k=function(e){return e?n:t})(e)}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var _=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"setIncludeDuplicates",value:function(e){return this._duplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._duplicates&&this._duplicates}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return b.ExecutionState.Retry;case h.default.Ok:break;default:return b.ExecutionState.Error}var o=t.transactionGetRecord;if(o.header.responseType===v.ResponseType.COST_ANSWER)return b.ExecutionState.Finished;var a=o.transactionRecord.receipt.status;switch(r=h.default._fromCode(a)){case h.default.Ok:case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return b.ExecutionState.Retry;case h.default.Success:return b.ExecutionState.Finished;default:return b.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Ok:break;default:return new y.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetRecord.transactionRecord.receipt,a=o.status;return r=h.default._fromCode(a),new m.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf({receipt:o})})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTxRecordByTxID(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetRecord.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetRecord;return Promise.resolve(f.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetRecord:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeChildRecords:this._includeChildren,includeDuplicates:this._includeDuplicates}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetRecord;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeChildren:null!=t.includeChildRecords?t.includeChildRecords:void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0})}}]),n}(l.default);t.default=_,l.QUERY_REGISTRY.set("transactionGetRecord",_._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(57)),u=function(){function e(t){(0,o.default)(this,e),this.contractId=t.contractId,this.bloom=t.bloom,this.topics=t.topics,this.data=t.data,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),bloom:this.bloom,topic:this.topics,data:this.data}}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:i.default._fromProtobuf(t.contractID),bloom:null!=t.bloom?t.bloom:new Uint8Array,topics:null!=t.topic?t.topic:[],data:null!=t.data?t.data:new Uint8Array})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=r(n(11)),d=r(n(409));function p(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return h(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return h(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId),this._amount,null!=t.amount&&this.setAmount(t.amount),this._payerAccountIds,null!=t.payerAccountIds&&this.setPayerAccountIds(t.payerAccountIds)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?u.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?i.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?c.default.fromNumber(e):e,this}},{key:"payerAccountIds",get:function(){return this._payerAccountIds}},{key:"setPayerAccountIds",value:function(e){return this._payerAccountIds=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,amount:this._amount,effectivePayerAccountId:null!=this._payerAccountIds?this._payerAccountIds.map((function(e){return e._toProtobuf()})):null}}}],[{key:"_fromProtobuf",value:function(t){return new e({feeCollectorAccountId:null!=t.feeCollectorAccountId?u.default._fromProtobuf(t.feeCollectorAccountId):void 0,tokenId:null!=t.tokenId?i.default._fromProtobuf(t.tokenId):void 0,amount:null!=t.amount?t.amount:void 0,payerAccountIds:null!=t.effectivePayerAccountId?t.effectivePayerAccountId.map((function(e){return u.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(20)),u=r(n(11)),c=r(n(27));function s(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._contractId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoGetBalance(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptogetAccountBalance.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptogetAccountBalance;return Promise.resolve(p.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{cryptogetAccountBalance:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptogetAccountBalance;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,contractId:null!=t.contractID?d.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=m,l.QUERY_REGISTRY.set("cryptogetAccountBalance",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(11)),c=r(n(301)),s=r(n(33)),l=r(n(44)),f=r(n(20)),d=r(n(417)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36)),h=r(n(63)),y=r(n(43)),m=r(n(106)),b=r(n(95)),v=r(n(236)),k=r(n(237)),g=r(n(238));function _(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(_=function(e){return e?n:t})(e)}var w=function(){function e(t){(0,a.default)(this,e),this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.isDeleted=t.isDeleted,this.proxyAccountId=t.proxyAccountId,this.proxyReceived=t.proxyReceived,this.key=t.key,this.balance=t.balance,this.sendRecordThreshold=t.sendRecordThreshold,this.receiveRecordThreshold=t.receiveRecordThreshold,this.isReceiverSignatureRequired=t.isReceiverSignatureRequired,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.liveHashes=t.liveHashes,this.tokenRelationships=t.tokenRelationships,this.accountMemo=t.accountMemo,this.ownedNfts=t.ownedNfts,this.maxAutomaticTokenAssociations=t.maxAutomaticTokenAssociations,this.aliasKey=t.aliasKey,this.ledgerId=t.ledgerId,this.hbarAllowances=t.hbarAllowances,this.tokenAllowances=t.tokenAllowances,this.nftAllowances=t.nftAllowances,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,deleted:this.isDeleted,proxyAccountID:null!=this.proxyAccountId?this.proxyAccountId._toProtobuf():null,proxyReceived:this.proxyReceived.toTinybars(),key:this.key._toProtobufKey(),balance:this.balance.toTinybars(),generateSendRecordThreshold:this.sendRecordThreshold.toTinybars(),generateReceiveRecordThreshold:this.receiveRecordThreshold.toTinybars(),receiverSigRequired:this.isReceiverSignatureRequired,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:this.autoRenewPeriod._toProtobuf(),liveHashes:this.liveHashes.map((function(e){return e._toProtobuf()})),tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,memo:this.accountMemo,ownedNfts:this.ownedNfts,maxAutomaticTokenAssociations:this.maxAutomaticTokenAssociations.toInt(),alias:null!=this.aliasKey?p.Key.encode(this.aliasKey._toProtobufKey()).finish():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.CryptoGetInfoResponse.AccountInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=null!=t.alias&&t.alias.length>0?y.default._fromProtobufKey(p.Key.decode(t.alias)):null;return n instanceof m.default||(n=null),new e({accountId:u.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:null,isDeleted:null!=t.deleted&&t.deleted,key:y.default._fromProtobufKey(t.key),balance:s.default.fromTinybars(null!=t.balance?t.balance:0),sendRecordThreshold:s.default.fromTinybars(null!=t.generateSendRecordThreshold?t.generateSendRecordThreshold:0),receiveRecordThreshold:s.default.fromTinybars(null!=t.generateReceiveRecordThreshold?t.generateReceiveRecordThreshold:0),isReceiverSignatureRequired:null!=t.receiverSigRequired&&t.receiverSigRequired,expirationTime:l.default._fromProtobuf(t.expirationTime),autoRenewPeriod:null!=t.autoRenewPeriod?new h.default(t.autoRenewPeriod.seconds):new h.default(0),proxyAccountId:null!=t.proxyAccountID&&0!==f.default.fromValue(t.proxyAccountID.shardNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.realmNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.accountNum).toInt()?u.default._fromProtobuf(t.proxyAccountID):null,proxyReceived:s.default.fromTinybars(null!=t.proxyReceived?t.proxyReceived:0),liveHashes:(null!=t.liveHashes?t.liveHashes:[]).map((function(e){return c.default._fromProtobuf(e)})),tokenRelationships:d.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),accountMemo:null!=t.memo?t.memo:"",ownedNfts:t.ownedNfts?t.ownedNfts:f.default.ZERO,maxAutomaticTokenAssociations:t.maxAutomaticTokenAssociations?f.default.fromNumber(t.maxAutomaticTokenAssociations):f.default.ZERO,aliasKey:n,ledgerId:null!=t.ledgerId?b.default.fromBytes(t.ledgerId):null,hbarAllowances:(null!=t.cryptoAllowances?t.cryptoAllowances:[]).map((function(e){return v.default._fromProtobuf(e)})),tokenAllowances:(null!=t.tokenAllowances?t.tokenAllowances:[]).map((function(e){return k.default._fromProtobuf(e)})),nftAllowances:(null!=t.nftAllowances?t.nftAllowances:[]).map((function(e){return g.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.CryptoGetInfoResponse.AccountInfo.decode(t))}}]),e}();t.default=w},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=r(n(782));function d(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._publicKey=null,null!=t.publicKey&&this.setPublicKey(t.publicKey),this._nodeId=null,null!=t.nodeId&&this.setNodeId(t.nodeId),this._accountId=null,null!=t.accountId&&this.setAccountId(t.accountId),this._certHash=null,null!=t.certHash&&this.setCertHash(t.certHash),this._addresses=[],null!=t.addresses&&this.setAddresses(t.addresses),this._description=null,null!=t.description&&this.setDescription(t.description),this._stake=null,null!=t.stake&&this.setStake(t.stake)}return(0,i.default)(e,[{key:"publicKey",get:function(){return this._publicKey}},{key:"setPublicKey",value:function(e){return this._publicKey=e,this}},{key:"nodeId",get:function(){return this._nodeId}},{key:"setNodeId",value:function(e){return this._nodeId=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?u.default.fromString(e):e.clone(),this}},{key:"certHash",get:function(){return this._certHash}},{key:"setCertHash",value:function(e){return this._certHash=e,this}},{key:"addresses",get:function(){return this._addresses}},{key:"setAddresses",value:function(e){return this._addresses=e,this}},{key:"description",get:function(){return this._description}},{key:"setDescription",value:function(e){return this._description=e,this}},{key:"stake",get:function(){return this._stake}},{key:"setStake",value:function(e){return this._stake=e,this}},{key:"_toProtobuf",value:function(){return{RSA_PubKey:this._publicKey,nodeId:this._nodeId,nodeAccountId:null!=this._accountId?this._accountId._toProtobuf():null,nodeCertHash:this._certHash,serviceEndpoint:this._addresses.map((function(e){return e._toProtobuf()})),description:this._description,stake:this._stake}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{publicKey:this._publicKey,nodeId:null!=this._nodeId?this._nodeId.toString():null,accountId:null!=this._accountId?this._accountId.toString():null,certHash:null!=this._certHash?s.decode(this._certHash):null,addresses:this._addresses.map((function(e){return e.toJSON()})),description:this._description,stake:null!=this._stake?this._stake.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({publicKey:null!=t.RSA_PubKey?t.RSA_PubKey:void 0,nodeId:null!=t.nodeId?t.nodeId:void 0,accountId:null!=t.nodeAccountId?u.default._fromProtobuf(t.nodeAccountId):void 0,certHash:null!=t.nodeCertHash?t.nodeCertHash:void 0,addresses:null!=t.serviceEndpoint?t.serviceEndpoint.map((function(e){return c.default._fromProtobuf(e)})):void 0,description:null!=t.description?t.description:void 0,stake:null!=t.stake?t.stake:void 0})}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(419)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._nodeAddresses=[],null!=t.nodeAddresses&&this.setNodeAddresses(t.nodeAddresses)}return(0,a.default)(e,[{key:"nodeAddresses",get:function(){return this._nodeAddresses}},{key:"setNodeAddresses",value:function(e){return this._nodeAddresses=e,this}},{key:"_toProtobuf",value:function(){return{nodeAddress:this._nodeAddresses.map((function(e){return e._toProtobuf()}))}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{nodeAddresses:this._nodeAddresses.map((function(e){return e.toJSON()}))}}}],[{key:"_fromProtobuf",value:function(t){return new e({nodeAddresses:null!=t.nodeAddress?t.nodeAddress.map((function(e){return i.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.ArgumentType=void 0;var a=r(n(1)),i=r(n(2)),u=n(793),c=f(n(74)),s=f(n(108));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d={uint8:0,int8:1,uint16:2,int16:3,uint32:4,int32:5,uint64:6,int64:7,uint256:8,int256:9,string:10,bool:11,bytes:12,bytes32:13,address:14,func:15};t.ArgumentType=d;var p=function(){function e(t){(0,a.default)(this,e),this.name=null,this._params="",this._paramTypes=[],null!=t&&(this._name=t)}return(0,i.default)(e,[{key:"addString",value:function(){return this._addParam({ty:d.string,array:!1})}},{key:"addStringArray",value:function(){return this._addParam({ty:d.string,array:!0})}},{key:"addBytes",value:function(){return this._addParam({ty:d.bytes,array:!1})}},{key:"addBytes32",value:function(){return this._addParam({ty:d.bytes32,array:!1})}},{key:"addBytesArray",value:function(){return this._addParam({ty:d.bytes,array:!0})}},{key:"addBytes32Array",value:function(){return this._addParam({ty:d.bytes32,array:!0})}},{key:"addInt8",value:function(){return this._addParam({ty:d.int8,array:!1})}},{key:"addInt32",value:function(){return this._addParam({ty:d.int32,array:!1})}},{key:"addInt64",value:function(){return this._addParam({ty:d.int64,array:!1})}},{key:"addInt256",value:function(){return this._addParam({ty:d.int256,array:!1})}},{key:"addInt8Array",value:function(){return this._addParam({ty:d.int8,array:!0})}},{key:"addInt32Array",value:function(){return this._addParam({ty:d.int32,array:!0})}},{key:"addInt64Array",value:function(){return this._addParam({ty:d.int64,array:!0})}},{key:"addInt256Array",value:function(){return this._addParam({ty:d.int256,array:!0})}},{key:"addUint8",value:function(){return this._addParam({ty:d.uint8,array:!1})}},{key:"addUint32",value:function(){return this._addParam({ty:d.uint32,array:!1})}},{key:"addUint64",value:function(){return this._addParam({ty:d.uint64,array:!1})}},{key:"addUint256",value:function(){return this._addParam({ty:d.uint256,array:!1})}},{key:"addUint8Array",value:function(){return this._addParam({ty:d.uint8,array:!0})}},{key:"addUint32Array",value:function(){return this._addParam({ty:d.uint32,array:!0})}},{key:"addUint64Array",value:function(){return this._addParam({ty:d.uint64,array:!0})}},{key:"addUint256Array",value:function(){return this._addParam({ty:d.uint256,array:!0})}},{key:"addBool",value:function(){return this._addParam({ty:d.bool,array:!1})}},{key:"addAddress",value:function(){return this._addParam({ty:d.address,array:!1})}},{key:"addAddressArray",value:function(){return this._addParam({ty:d.address,array:!0})}},{key:"addFunction",value:function(){return this._addParam({ty:d.func,array:!1})}},{key:"_addParam",value:function(e){return this._paramTypes.length>0&&(this._params+=","),this._params+=function(e){var t="";switch(e.ty){case d.uint8:t="uint8";break;case d.int8:t="int8";break;case d.uint16:t="uint16";break;case d.int16:t="int16";break;case d.uint32:t="uint32";break;case d.int32:t="int32";break;case d.uint64:t="uint64";break;case d.int64:t="int64";break;case d.uint256:t="uint256";break;case d.int256:t="int256";break;case d.string:t="string";break;case d.bool:t="bool";break;case d.bytes:t="bytes";break;case d.bytes32:t="bytes32";break;case d.address:t="address";break;case d.func:t="function";break;default:t=""}e.array&&(t+="[]");return t}(e),this._paramTypes.push(e),this}},{key:"_build",value:function(e){if(null!=e)this._name=e;else if(null==this._name)throw new Error("`name` required for ContractFunctionSelector");var t=c.encode(s.encode(this.toString()));return c.decode((0,u.keccak256)("0x".concat(t))).slice(0,4)}},{key:"toString",value:function(){return"".concat(null!=this._name?this._name.toString():"","(").concat(this._params,")")}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(57)),c=r(n(11)),s=r(n(44)),l=r(n(63)),f=r(n(33)),d=r(n(20)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36)),h=r(n(417)),y=r(n(43)),m=r(n(95));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}var v=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.storage=t.storage,this.contractMemo=t.contractMemo,this.balance=t.balance,this.isDeleted=t.isDeleted,this.tokenRelationships=t.tokenRelationships,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,storage:this.storage,memo:this.contractMemo,balance:this.balance.toTinybars(),deleted:this.isDeleted,tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.ContractGetInfoResponse.ContractInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.autoRenewPeriod.seconds;return new e({contractId:u.default._fromProtobuf(t.contractID),accountId:c.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:"",adminKey:null!=t.adminKey?y.default._fromProtobufKey(t.adminKey):null,expirationTime:s.default._fromProtobuf(t.expirationTime),autoRenewPeriod:new l.default(n),storage:null!=t.storage?t.storage instanceof d.default?t.storage:d.default.fromValue(t.storage):d.default.ZERO,contractMemo:null!=t.memo?t.memo:"",balance:f.default.fromTinybars(null!=t.balance?t.balance:0),isDeleted:t.deleted,tokenRelationships:h.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),ledgerId:null!=t.ledgerId?m.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.ContractGetInfoResponse.ContractInfo.decode(t))}}]),e}();t.default=v},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(62)),c=r(n(44)),s=r(n(20)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36)),f=r(n(136)),d=r(n(95));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}var h=function(){function e(t){(0,a.default)(this,e),this.fileId=t.fileId,this.size=t.size,this.expirationTime=t.expirationTime,this.isDeleted=t.isDeleted,this.keys=t.keys,this.fileMemo=t.fileMemo,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{fileID:this.fileId._toProtobuf(),size:this.size,expirationTime:this.expirationTime._toProtobuf(),deleted:this.isDeleted,keys:this.keys._toProtobufKey().keyList,memo:this.fileMemo,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return l.FileGetInfoResponse.FileInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.size;return new e({fileId:u.default._fromProtobuf(t.fileID),size:n instanceof s.default?n:s.default.fromValue(n),expirationTime:c.default._fromProtobuf(t.expirationTime),isDeleted:t.deleted,keys:null!=t.keys?f.default.__fromProtobufKeyList(t.keys):new f.default,fileMemo:null!=t.memo?t.memo:"",ledgerId:null!=t.ledgerId?d.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.FileGetInfoResponse.FileInfo.decode(t))}}]),e}();t.default=h},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(425)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}var l=function(){function e(t){(0,a.default)(this,e),this.protobufVersion=t.protobufVersion,this.servicesVesion=t.servicesVesion,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{hapiProtoVersion:this.protobufVersion._toProtobuf(),hederaServicesVersion:this.servicesVesion._toProtobuf()}}},{key:"toBytes",value:function(){return c.NetworkGetVersionInfoResponse.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({protobufVersion:u.default._fromProtobuf(t.hapiProtoVersion),servicesVesion:u.default._fromProtobuf(t.hederaServicesVersion)})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(c.NetworkGetVersionInfoResponse.decode(t))}}]),e}();t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.major=t.major,this.minor=t.minor,this.patch=t.patch,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{major:this.major,minor:this.minor,patch:this.patch}}},{key:"toBytes",value:function(){return u.SemanticVersion.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({major:t.major,minor:t.minor,patch:t.patch})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.SemanticVersion.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(107)),a=r(n(1)),i=r(n(2)),u=r(n(140)),c=r(n(11)),s=r(n(44)),l=r(n(22)),f=n(36),d=r(n(75)),p=r(n(43)),h=r(n(136)),y=function(){function e(t){(0,a.default)(this,e),this.scheduleId=t.scheduleId,this.creatorAccountId=t.creatorAccountID,this.payerAccountId=t.payerAccountID,this.schedulableTransactionBody=t.schedulableTransactionBody,this.signers=t.signers,this.scheduleMemo=t.scheduleMemo,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.executed=t.executed,this.deleted=t.deleted,this.scheduledTransactionId=t.scheduledTransactionId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{scheduleID:null!=this.scheduleId?this.scheduleId._toProtobuf():null,creatorAccountID:null!=this.creatorAccountId?this.creatorAccountId._toProtobuf():null,payerAccountID:null!=this.payerAccountId?this.payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this.schedulableTransactionBody?this.schedulableTransactionBody:null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,signers:null!=this.signers?this.signers._toProtobufKey().keyList:null,memo:null!=this.scheduleMemo?this.scheduleMemo:"",expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,scheduledTransactionID:null!=this.scheduledTransactionId?this.scheduledTransactionId._toProtobuf():null}}},{key:"scheduledTransaction",get:function(){if(null==this.schedulableTransactionBody)throw new Error("Scheduled transaction body is empty");var e=new f.SchedulableTransactionBody(this.schedulableTransactionBody),t=e.data;return l.default.fromBytes(f.TransactionList.encode({transactionList:[{signedTransactionBytes:f.SignedTransaction.encode({bodyBytes:f.TransactionBody.encode((0,o.default)({transactionFee:this.schedulableTransactionBody.transactionFee,memo:this.schedulableTransactionBody.memo},t,e[t])).finish()}).finish()}]}).finish())}}],[{key:"_fromProtobuf",value:function(t){return new e({scheduleId:u.default._fromProtobuf(t.scheduleID),creatorAccountID:null!=t.creatorAccountID?c.default._fromProtobuf(t.creatorAccountID):null,payerAccountID:null!=t.payerAccountID?c.default._fromProtobuf(t.payerAccountID):null,schedulableTransactionBody:null!=t.scheduledTransactionBody?t.scheduledTransactionBody:null,adminKey:null!=t.adminKey?p.default._fromProtobufKey(t.adminKey):null,signers:null!=t.signers?h.default.__fromProtobufKeyList(t.signers):null,scheduleMemo:null!=t.memo?t.memo:null,expirationTime:null!=t.expirationTime?s.default._fromProtobuf(t.expirationTime):null,executed:null!=t.executionTime?s.default._fromProtobuf(t.executionTime):null,deleted:null!=t.deletionTime?s.default._fromProtobuf(t.deletionTime):null,scheduledTransactionId:null!=t.scheduledTransactionID?d.default._fromProtobuf(t.scheduledTransactionID):null})}}]),e}();t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(27)),c=r(n(11)),s=r(n(63)),l=r(n(44)),f=r(n(20)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36)),p=r(n(302)),h=r(n(303)),y=r(n(199)),m=r(n(241)),b=r(n(242)),v=r(n(43)),k=r(n(95));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}var _=function(){function e(t){(0,a.default)(this,e),this.tokenId=t.tokenId,this.name=t.name,this.symbol=t.symbol,this.decimals=t.decimals,this.totalSupply=t.totalSupply,this.treasuryAccountId=t.treasuryAccountId,this.adminKey=t.adminKey,this.kycKey=t.kycKey,this.freezeKey=t.freezeKey,this.pauseKey=t.pauseKey,this.wipeKey=t.wipeKey,this.supplyKey=t.supplyKey,this.feeScheduleKey=t.feeScheduleKey,this.defaultFreezeStatus=t.defaultFreezeStatus,this.defaultKycStatus=t.defaultKycStatus,this.pauseStatus=t.pauseStatus,this.isDeleted=t.isDeleted,this.autoRenewAccountId=t.autoRenewAccountId,this.autoRenewPeriod=t.autoRenewPeriod,this.expirationTime=t.expirationTime,this.tokenMemo=t.tokenMemo,this.customFees=t.customFees,this.tokenType=t.tokenType,this.supplyType=t.supplyType,this.maxSupply=t.maxSupply,this.ledgerId=t.ledgerId}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),name:this.name,symbol:this.symbol,decimals:this.decimals,totalSupply:this.totalSupply,treasury:null!=this.treasuryAccountId?this.treasuryAccountId._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,kycKey:null!=this.kycKey?this.kycKey._toProtobufKey():null,freezeKey:null!=this.freezeKey?this.freezeKey._toProtobufKey():null,pauseKey:null!=this.pauseKey?this.pauseKey._toProtobufKey():null,wipeKey:null!=this.wipeKey?this.wipeKey._toProtobufKey():null,supplyKey:null!=this.supplyKey?this.supplyKey._toProtobufKey():null,feeScheduleKey:null!=this.feeScheduleKey?this.feeScheduleKey._toProtobufKey():null,defaultFreezeStatus:null==this.defaultFreezeStatus?0:this.defaultFreezeStatus?1:2,defaultKycStatus:null==this.defaultKycStatus?0:this.defaultKycStatus?1:2,pauseStatus:null==this.pauseStatus?0:this.pauseStatus?1:2,deleted:this.isDeleted,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():void 0,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,expiry:null!=this.expirationTime?this.expirationTime._toProtobuf():null,memo:this.tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this.tokenType?this.tokenType._code:null,supplyType:null!=this.supplyType?this.supplyType._code:null,maxSupply:this.maxSupply,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return d.TokenInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.defaultFreezeStatus,r=t.defaultKycStatus,o=t.pauseStatus,a=null!=t.autoRenewAccount?c.default._fromProtobuf(t.autoRenewAccount):new c.default(0);return new e({tokenId:u.default._fromProtobuf(t.tokenId),name:t.name,symbol:t.symbol,decimals:t.decimals,totalSupply:f.default.fromValue(t.totalSupply),treasuryAccountId:null!=t.treasury?c.default._fromProtobuf(t.treasury):null,adminKey:null!=t.adminKey?v.default._fromProtobufKey(t.adminKey):null,kycKey:null!=t.kycKey?v.default._fromProtobufKey(t.kycKey):null,freezeKey:null!=t.freezeKey?v.default._fromProtobufKey(t.freezeKey):null,pauseKey:null!=t.pauseKey?v.default._fromProtobufKey(t.pauseKey):null,wipeKey:null!=t.wipeKey?v.default._fromProtobufKey(t.wipeKey):null,supplyKey:null!=t.supplyKey?v.default._fromProtobufKey(t.supplyKey):null,feeScheduleKey:null!=t.feeScheduleKey?v.default._fromProtobufKey(t.feeScheduleKey):null,defaultFreezeStatus:0===n?null:1==n,defaultKycStatus:0===r?null:1==r,pauseStatus:0===o?null:1==o,isDeleted:t.deleted,autoRenewAccountId:0!=a.shard.toInt()||0!=a.realm.toInt()||0!=a.num.toInt()?a:null,autoRenewPeriod:null!=t.autoRenewPeriod?s.default._fromProtobuf(t.autoRenewPeriod):null,expirationTime:null!=t.expiry?l.default._fromProtobuf(t.expiry):null,tokenMemo:null!=t.memo?t.memo:"",customFees:null!=t.customFees?t.customFees.map((function(e){return null!=e.fixedFee?y.default._fromProtobuf(e):null!=e.fractionalFee?m.default._fromProtobuf(e):b.default._fromProtobuf(e)})):[],tokenType:null!=t.tokenType?p.default._fromCode(t.tokenType):null,supplyType:null!=t.supplyType?h.default._fromCode(t.supplyType):null,maxSupply:null!=t.maxSupply?t.maxSupply:null,ledgerId:null!=t.ledgerId?k.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.TokenInfo.decode(t))}}]),e}();t.default=_},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(169)),c=r(n(11)),s=r(n(44)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(74)),f=r(n(95));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t){(0,a.default)(this,e),this.nftId=t.nftId,this.accountId=t.accountId,this.creationTime=t.creationTime,this.metadata=t.metadata,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{nftID:this.nftId._toProtobuf(),accountID:this.accountId._toProtobuf(),creationTime:this.creationTime._toProtobuf(),metadata:this.metadata,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toJson",value:function(){return{nftId:this.nftId.toString(),accountId:this.accountId.toString(),creationTime:this.creationTime.toString(),metadata:null!=this.metadata?l.encode(this.metadata):null,ledgerId:null!=this.ledgerId?this.ledgerId.toString():null}}},{key:"toString",value:function(){return JSON.stringify(this.toJson())}}],[{key:"_fromProtobuf",value:function(t){return new e({nftId:u.default._fromProtobuf(t.nftID),accountId:c.default._fromProtobuf(t.accountID),creationTime:s.default._fromProtobuf(t.creationTime),metadata:void 0!==t.metadata?t.metadata:null,ledgerId:null!=t.ledgerId?f.default.fromBytes(t.ledgerId):null})}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(118)),c=r(n(11)),s=r(n(44)),l=r(n(20)),f=r(n(63)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36)),p=r(n(43)),h=r(n(95));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var m=function(){function e(t){(0,a.default)(this,e),this.topicId=t.topicId,this.topicMemo=t.topicMemo,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.expirationTime=t.expirationTime,this.adminKey=t.adminKey,this.submitKey=t.submitKey,this.autoRenewPeriod=t.autoRenewPeriod,this.autoRenewAccountId=t.autoRenewAccountId,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{topicID:this.topicId._toProtobuf(),topicInfo:{memo:this.topicMemo,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber,expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,submitKey:null!=this.submitKey?this.submitKey._toProtobufKey():null,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():null}}}},{key:"toBytes",value:function(){return d.ConsensusTopicInfo.encode(this._toProtobuf().topicInfo).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.topicInfo;return new e({topicId:u.default._fromProtobuf(t.topicID),topicMemo:null!=n.memo?n.memo:"",runningHash:null!=n.runningHash?n.runningHash:new Uint8Array,sequenceNumber:null!=n.sequenceNumber?n.sequenceNumber instanceof l.default?n.sequenceNumber:l.default.fromValue(n.sequenceNumber):l.default.ZERO,expirationTime:null!=n.expirationTime?s.default._fromProtobuf(n.expirationTime):null,adminKey:null!=n.adminKey?p.default._fromProtobufKey(n.adminKey):null,submitKey:null!=n.submitKey?p.default._fromProtobufKey(n.submitKey):null,autoRenewPeriod:null!=n.autoRenewPeriod?new f.default(n.autoRenewPeriod.seconds):null,autoRenewAccountId:null!=n.autoRenewAccount?c.default._fromProtobuf(n.autoRenewAccount):null,ledgerId:null!=n.ledgerId?h.default.fromBytes(n.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf({topicInfo:d.ConsensusTopicInfo.decode(t)})}}]),e}();t.default=m},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(44)),u=r(n(431)),c=r(n(20)),s=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.chunks=t.chunks,Object.freeze(this)}return(0,a.default)(e,null,[{key:"_ofSingle",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof c.default?t.sequenceNumber:c.default.fromNumber(t.sequenceNumber):c.default.ZERO,chunks:[u.default._fromProtobuf(t)]})}},{key:"_ofMany",value:function(t){var n=t[t.length-1],r=i.default._fromProtobuf(n.consensusTimestamp),o=n.runningHash,a=null!=n.sequenceNumber?n.sequenceNumber instanceof c.default?n.sequenceNumber:c.default.fromValue(n.sequenceNumber):c.default.ZERO;t.sort((function(e,t){return(null!=e&&null!=e.chunkInfo&&null!=e.chunkInfo.number?e.chunkInfo.number:0)<(null!=t&&null!=t.chunkInfo&&null!=t.chunkInfo.number?t.chunkInfo.number:0)?-1:1}));var s=t.map((function(e){return u.default._fromProtobuf(e)})),l=s.map((function(e){return e.contents.length})).reduce((function(e,t){return e+t}),0),f=new Uint8Array(l),d=0;return t.forEach((function(e){f.set(e.message,d),d+=e.message.length})),new e({consensusTimestamp:r,contents:f,runningHash:o,sequenceNumber:a,chunks:s})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(44)),u=r(n(20)),c=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{consensusTimestamp:this.consensusTimestamp._toProtobuf(),message:this.contents,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber}}}],[{key:"_fromProtobuf",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof u.default?t.sequenceNumber:u.default.fromValue(t.sequenceNumber):u.default.ZERO})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(851)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.newNode)this._address="string"==typeof t.newNode.address?i.default.fromString(t.newNode.address):t.newNode.address,this._cert=void 0,this._channel=null,this._channelInitFunction=t.newNode.channelInitFunction,this._currentBackoff=250,this._lastUsed=Date.now(),this._backoffUntil=Date.now(),this._useCount=0,this._attempts=0,this._minBackoff=250,this._maxBackoff=8e3;else{if(null==t.cloneNode)throw new Error("failed to create ManagedNode: ".concat(JSON.stringify(t)));this._address=t.cloneNode.address,this._cert=t.cloneNode.node._cert,this._channel=t.cloneNode.node._channel,this._channelInitFunction=t.cloneNode.node._channelInitFunction,this._currentBackoff=t.cloneNode.node._currentBackoff,this._lastUsed=t.cloneNode.node._lastUsed,this._backoffUntil=t.cloneNode.node._backoffUntil,this._useCount=t.cloneNode.node._useCount,this._attempts=t.cloneNode.node._attempts,this._minBackoff=t.cloneNode.node._minBackoff,this._maxBackoff=t.cloneNode.node._minBackoff}}return(0,a.default)(e,[{key:"getKey",value:function(){throw new Error("not implemented")}},{key:"toInsecure",value:function(){throw new Error("not implemented")}},{key:"toSecure",value:function(){throw new Error("not implemented")}},{key:"setCert",value:function(e){return this}},{key:"address",get:function(){return this._address}},{key:"attempts",get:function(){return this._attempts}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._minBackoff=e,this}},{key:"maxBackoff",get:function(){return this._maxBackoff}},{key:"setmaxBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._maxBackoff=e,this}},{key:"getChannel",value:function(){return this._useCount++,this.__lastUsed=Date.now(),null!=this._channel||(this._channel=this._channelInitFunction(this.address.toString(),this._cert)),this._channel}},{key:"isHealthy",value:function(){return this._backoffUntil<=Date.now()}},{key:"increaseDelay",value:function(){this._currentBackoff=Math.min(2*this._currentBackoff,this._maxBackoff),this._backoffUntil=Date.now()+this._currentBackoff}},{key:"decreaseDelay",value:function(){this._currentBackoff=Math.max(this._currentBackoff/2,this._minBackoff)}},{key:"wait",value:function(){var e=this._backoffUntil-this._lastUsed;return new Promise((function(t){return setTimeout(t,e)}))}},{key:"compare",value:function(e){return this.isHealthy()&&e.isHealthy()?this._useCounte._useCount?1:this._lastUsede._lastUsed?1:0:this.isHealthy()&&!e.isHealthy()?-1:!this.isHealthy()&&e.isHealthy()?1:this._useCounte._useCount?1:this._lastUsede._lastUsed?1:0}},{key:"close",value:function(){null!=this._channel&&this._channel.close(),this._channel=null}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(95));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)for(var e=this._nodes.length-1;e>=0;e--){this._nodes[e]._attempts=e)break;i.has(s.getKey())||a.push(s)}}catch(e){u.e(e)}finally{u.f()}return a}},{key:"_closeNode",value:function(e){var t=this._nodes[e];t.close(),this._removeNodeFromNetwork(t),this._nodes.splice(e,1)}},{key:"_removeNodeFromNetwork",value:function(e){for(var t=this._network.get(e.getKey()),n=0;n>>4).toString(16)),t.push((15&e[n]).toString(16));return"0x"+t.join("")},isHex:v,isHexStrict:b,stripHexPrefix:function(e){return 0!==e&&v(e)?e.replace(/^(-)?0x/i,"$1"):e},leftPad:function(e,t,n){var r=/^0x/i.test(e)||"number"==typeof e,o=t-(e=e.toString(16).replace(/^0x/i,"")).length+1>=0?t-e.length+1:0;return(r?"0x":"")+new Array(o).join(n||"0")+e},rightPad:function(e,t,n){var r=/^0x/i.test(e)||"number"==typeof e,o=t-(e=e.toString(16).replace(/^0x/i,"")).length+1>=0?t-e.length+1:0;return(r?"0x":"")+e+new Array(o).join(n||"0")},toTwosComplement:function(e){return"0x"+f(e).toTwos(256).toString(16,64)},sha3:g,sha3Raw:function(e){return null===(e=g(e))?k:e},toNumber:function(e){return"number"==typeof e?e:h(m(e))},getChecksumAddress:_}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";var r={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==r.call(e)}},function(e,t,n){"use strict";var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.KECCAK256_RLP=t.KECCAK256_RLP_S=t.KECCAK256_RLP_ARRAY=t.KECCAK256_RLP_ARRAY_S=t.KECCAK256_NULL=t.KECCAK256_NULL_S=t.TWO_POW256=t.MAX_INTEGER=void 0;var o=n(15).Buffer,a=r(n(10));t.MAX_INTEGER=new a.default("ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",16),t.TWO_POW256=new a.default("10000000000000000000000000000000000000000000000000000000000000000",16),t.KECCAK256_NULL_S="c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",t.KECCAK256_NULL=o.from(t.KECCAK256_NULL_S,"hex"),t.KECCAK256_RLP_ARRAY_S="1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",t.KECCAK256_RLP_ARRAY=o.from(t.KECCAK256_RLP_ARRAY_S,"hex"),t.KECCAK256_RLP_S="56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",t.KECCAK256_RLP=o.from(t.KECCAK256_RLP_S,"hex")},function(e,t,n){"use strict";(function(e){var r=Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]},o=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},a=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&r(t,e,n);return o(t,e),t},i=function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i},u=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isZeroAddress=t.zeroAddress=t.importPublic=t.privateToAddress=t.privateToPublic=t.publicToAddress=t.pubToAddress=t.isValidPublic=t.isValidPrivate=t.generateAddress2=t.generateAddress=t.isValidChecksumAddress=t.toChecksumAddress=t.isValidAddress=t.Account=void 0;var c=u(n(170)),s=u(n(10)),l=a(n(243)),f=n(439),d=n(171),p=n(437),h=n(141),y=n(304),m=n(244),b=n(313),v=function(){function e(e,t,n,r){void 0===e&&(e=new s.default(0)),void 0===t&&(t=new s.default(0)),void 0===n&&(n=p.KECCAK256_RLP),void 0===r&&(r=p.KECCAK256_NULL),this.nonce=e,this.balance=t,this.stateRoot=n,this.codeHash=r,this._validate()}return e.fromAccountData=function(t){var n=t.nonce,r=t.balance,o=t.stateRoot,a=t.codeHash;return new e(n?new s.default((0,h.toBuffer)(n)):void 0,r?new s.default((0,h.toBuffer)(r)):void 0,o?(0,h.toBuffer)(o):void 0,a?(0,h.toBuffer)(a):void 0)},e.fromRlpSerializedAccount=function(e){var t=l.decode(e);if(!Array.isArray(t))throw new Error("Invalid serialized account input. Must be array");return this.fromValuesArray(t)},e.fromValuesArray=function(t){var n=i(t,4),r=n[0],o=n[1],a=n[2],u=n[3];return new e(new s.default(r),new s.default(o),a,u)},e.prototype._validate=function(){if(this.nonce.lt(new s.default(0)))throw new Error("nonce must be greater than zero");if(this.balance.lt(new s.default(0)))throw new Error("balance must be greater than zero");if(32!==this.stateRoot.length)throw new Error("stateRoot must have a length of 32");if(32!==this.codeHash.length)throw new Error("codeHash must have a length of 32")},e.prototype.raw=function(){return[(0,b.bnToUnpaddedBuffer)(this.nonce),(0,b.bnToUnpaddedBuffer)(this.balance),this.stateRoot,this.codeHash]},e.prototype.serialize=function(){return l.encode(this.raw())},e.prototype.isContract=function(){return!this.codeHash.equals(p.KECCAK256_NULL)},e.prototype.isEmpty=function(){return this.balance.isZero()&&this.nonce.isZero()&&this.codeHash.equals(p.KECCAK256_NULL)},e}();t.Account=v;t.isValidAddress=function(e){try{(0,m.assertIsString)(e)}catch(e){return!1}return/^0x[0-9a-fA-F]{40}$/.test(e)};t.toChecksumAddress=function(e,t){(0,m.assertIsHexString)(e);var n=(0,d.stripHexPrefix)(e).toLowerCase(),r="";t&&(r=(0,b.toType)(t,b.TypeOutput.BN).toString()+"0x");for(var o=(0,y.keccakFromString)(r+n).toString("hex"),a="0x",i=0;i=8?a+=n[i].toUpperCase():a+=n[i];return a};t.isValidChecksumAddress=function(e,n){return(0,t.isValidAddress)(e)&&(0,t.toChecksumAddress)(e,n)===e};t.generateAddress=function(t,n){(0,m.assertIsBuffer)(t),(0,m.assertIsBuffer)(n);var r=new s.default(n);return r.isZero()?(0,y.rlphash)([t,null]).slice(-20):(0,y.rlphash)([t,e.from(r.toArray())]).slice(-20)};t.generateAddress2=function(t,n,r){return(0,m.assertIsBuffer)(t),(0,m.assertIsBuffer)(n),(0,m.assertIsBuffer)(r),(0,c.default)(20===t.length),(0,c.default)(32===n.length),(0,y.keccak256)(e.concat([e.from("ff","hex"),t,n,(0,y.keccak256)(r)])).slice(-20)};t.isValidPrivate=function(e){return(0,f.privateKeyVerify)(e)};t.isValidPublic=function(t,n){return void 0===n&&(n=!1),(0,m.assertIsBuffer)(t),64===t.length?(0,f.publicKeyVerify)(e.concat([e.from([4]),t])):!!n&&(0,f.publicKeyVerify)(t)};t.pubToAddress=function(t,n){return void 0===n&&(n=!1),(0,m.assertIsBuffer)(t),n&&64!==t.length&&(t=e.from((0,f.publicKeyConvert)(t,!1).slice(1))),(0,c.default)(64===t.length),(0,y.keccak)(t).slice(-20)},t.publicToAddress=t.pubToAddress;t.privateToPublic=function(t){return(0,m.assertIsBuffer)(t),e.from((0,f.publicKeyCreate)(t,!1)).slice(1)};t.privateToAddress=function(e){return(0,t.publicToAddress)((0,t.privateToPublic)(e))};t.importPublic=function(t){return(0,m.assertIsBuffer)(t),64!==t.length&&(t=e.from((0,f.publicKeyConvert)(t,!1).slice(1))),t};t.zeroAddress=function(){var e=(0,h.zeros)(20);return(0,h.bufferToHex)(e)};t.isZeroAddress=function(e){try{(0,m.assertIsString)(e)}catch(e){return!1}return(0,t.zeroAddress)()===e}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";var r=function(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{c(r.next(e))}catch(e){a(e)}}function u(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,u)}c((r=r.apply(e,t||[])).next())}))},o=function(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function u(a){return function(u){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]0)if("string"==typeof t||i.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r)i.endEmitted?w(e,new _):P(e,i,t,!0);else if(i.ended)w(e,new k);else{if(i.destroyed)return!1;i.reading=!1,i.decoder&&!n?(t=i.decoder.write(t),i.objectMode||0!==t.length?P(e,i,t,!1):D(e,i)):P(e,i,t,!1)}else r||(i.reading=!1,D(e,i));return!i.ended&&(i.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=1073741824?e=1073741824:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;s("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(s("emitReadable",t.flowing),t.emittedReadable=!0,r.nextTick(R,e))}function R(e){var t=e._readableState;s("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function D(e,t){t.readingMore||(t.readingMore=!0,r.nextTick(C,e,t))}function C(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function B(e){s("readable nexttick read 0"),e.read(0)}function M(e,t){s("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(s("flow",t.flowing);t.flowing&&null!==e.read(););}function x(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function F(e){var t=e._readableState;s("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,r.nextTick(U,t,e))}function U(e,t){if(s("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function L(e,t){for(var n=0,r=e.length;n=t.highWaterMark:t.length>0)||t.ended))return s("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):S(this),null;if(0===(e=E(e,t))&&t.ended)return 0===t.length&&F(this),null;var r,o=t.needReadable;return s("need readable",o),(0===t.length||t.length-e0?x(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&F(this)),null!==r&&this.emit("data",r),r},T.prototype._read=function(e){w(this,new g("_read()"))},T.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,s("pipe count=%d opts=%j",o.pipesCount,t);var i=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?c:m;function u(t,r){s("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,s("cleanup"),e.removeListener("close",h),e.removeListener("finish",y),e.removeListener("drain",l),e.removeListener("error",p),e.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",m),n.removeListener("data",d),f=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function c(){s("onend"),e.end()}o.endEmitted?r.nextTick(i):n.once("end",i),e.on("unpipe",u);var l=function(e){return function(){var t=e._readableState;s("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(n);e.on("drain",l);var f=!1;function d(t){s("ondata");var r=e.write(t);s("dest.write",r),!1===r&&((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==L(o.pipes,e))&&!f&&(s("false write response, pause",o.awaitDrain),o.awaitDrain++),n.pause())}function p(t){s("onerror",t),m(),e.removeListener("error",p),0===a(e,"error")&&w(e,t)}function h(){e.removeListener("finish",y),m()}function y(){s("onfinish"),e.removeListener("close",h),m()}function m(){s("unpipe"),n.unpipe(e)}return n.on("data",d),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",p),e.once("close",h),e.once("finish",y),e.emit("pipe",n),o.flowing||(s("pipe resume"),n.resume()),e},T.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==o.flowing&&this.resume()):"readable"===e&&(o.endEmitted||o.readableListening||(o.readableListening=o.needReadable=!0,o.flowing=!1,o.emittedReadable=!1,s("on readable",o.length,o.reading),o.length?S(this):o.reading||r.nextTick(B,this))),n},T.prototype.addListener=T.prototype.on,T.prototype.removeListener=function(e,t){var n=i.prototype.removeListener.call(this,e,t);return"readable"===e&&r.nextTick(N,this),n},T.prototype.removeAllListeners=function(e){var t=i.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||r.nextTick(N,this),t},T.prototype.resume=function(){var e=this._readableState;return e.flowing||(s("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,r.nextTick(M,e,t))}(this,e)),e.paused=!1,this},T.prototype.pause=function(){return s("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(s("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},T.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var o in e.on("end",(function(){if(s("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(o){(s("wrapped data"),n.decoder&&(o=n.decoder.write(o)),n.objectMode&&null==o)||(n.objectMode||o&&o.length)&&(t.push(o)||(r=!0,e.pause()))})),e)void 0===this[o]&&"function"==typeof e[o]&&(this[o]=function(t){return function(){return e[t].apply(e,arguments)}}(o));for(var a=0;a-1))throw new _(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(T.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(T.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),T.prototype._write=function(e,t,n){n(new y("_write()"))},T.prototype._writev=null,T.prototype.end=function(e,t,n){var o=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),o.corked&&(o.corked=1,this.uncork()),o.ending||function(e,t,n){t.ending=!0,D(e,t),n&&(t.finished?r.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,o,n),this},Object.defineProperty(T.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(T.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),T.prototype.destroy=f.destroy,T.prototype._undestroy=f.undestroy,T.prototype._destroy=function(e,t){t(e)}}).call(this,n(40),n(34))},function(e,t,n){"use strict";e.exports=l;var r=n(172).codes,o=r.ERR_METHOD_NOT_IMPLEMENTED,a=r.ERR_MULTIPLE_CALLBACK,i=r.ERR_TRANSFORM_ALREADY_TRANSFORMING,u=r.ERR_TRANSFORM_WITH_LENGTH_0,c=n(173);function s(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit("error",new a);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.length=this._blockSize;){for(var a=this._blockOffset;a0;++i)this._length[i]+=u,(u=this._length[i]/4294967296|0)>0&&(this._length[i]-=4294967296*u);return this},a.prototype._update=function(){throw new Error("_update is not implemented")},a.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var n=0;n<4;++n)this._length[n]=0;return t},a.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=a},function(e,t,n){"use strict";(function(t,r){var o;e.exports=T,T.ReadableState=A;n(87).EventEmitter;var a=function(e,t){return e.listeners(t).length},i=n(450),u=n(15).Buffer,c=t.Uint8Array||function(){};var s,l=n(888);s=l&&l.debuglog?l.debuglog("stream"):function(){};var f,d,p,h=n(889),y=n(451),m=n(452).getHighWaterMark,b=n(175).codes,v=b.ERR_INVALID_ARG_TYPE,k=b.ERR_STREAM_PUSH_AFTER_EOF,g=b.ERR_METHOD_NOT_IMPLEMENTED,_=b.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;n(16)(T,i);var w=y.errorOrDestroy,I=["error","close","destroy","pause","resume"];function A(e,t,r){o=o||n(176),e=e||{},"boolean"!=typeof r&&(r=t instanceof o),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=m(this,e,"readableHighWaterMark",r),this.buffer=new h,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=n(76).StringDecoder),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function T(e){if(o=o||n(176),!(this instanceof T))return new T(e);var t=this instanceof o;this._readableState=new A(e,this,t),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),i.call(this)}function O(e,t,n,r,o){s("readableAddChunk",t);var a,i=e._readableState;if(null===t)i.reading=!1,function(e,t){if(s("onEofChunk"),t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,t.sync?S(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,R(e)))}(e,i);else if(o||(a=function(e,t){var n;r=t,u.isBuffer(r)||r instanceof c||"string"==typeof t||void 0===t||e.objectMode||(n=new v("chunk",["string","Buffer","Uint8Array"],t));var r;return n}(i,t)),a)w(e,a);else if(i.objectMode||t&&t.length>0)if("string"==typeof t||i.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r)i.endEmitted?w(e,new _):P(e,i,t,!0);else if(i.ended)w(e,new k);else{if(i.destroyed)return!1;i.reading=!1,i.decoder&&!n?(t=i.decoder.write(t),i.objectMode||0!==t.length?P(e,i,t,!1):D(e,i)):P(e,i,t,!1)}else r||(i.reading=!1,D(e,i));return!i.ended&&(i.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=1073741824?e=1073741824:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;s("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(s("emitReadable",t.flowing),t.emittedReadable=!0,r.nextTick(R,e))}function R(e){var t=e._readableState;s("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function D(e,t){t.readingMore||(t.readingMore=!0,r.nextTick(C,e,t))}function C(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function B(e){s("readable nexttick read 0"),e.read(0)}function M(e,t){s("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(s("flow",t.flowing);t.flowing&&null!==e.read(););}function x(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function F(e){var t=e._readableState;s("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,r.nextTick(U,t,e))}function U(e,t){if(s("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function L(e,t){for(var n=0,r=e.length;n=t.highWaterMark:t.length>0)||t.ended))return s("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):S(this),null;if(0===(e=E(e,t))&&t.ended)return 0===t.length&&F(this),null;var r,o=t.needReadable;return s("need readable",o),(0===t.length||t.length-e0?x(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&F(this)),null!==r&&this.emit("data",r),r},T.prototype._read=function(e){w(this,new g("_read()"))},T.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,s("pipe count=%d opts=%j",o.pipesCount,t);var i=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?c:m;function u(t,r){s("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,s("cleanup"),e.removeListener("close",h),e.removeListener("finish",y),e.removeListener("drain",l),e.removeListener("error",p),e.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",m),n.removeListener("data",d),f=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function c(){s("onend"),e.end()}o.endEmitted?r.nextTick(i):n.once("end",i),e.on("unpipe",u);var l=function(e){return function(){var t=e._readableState;s("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(n);e.on("drain",l);var f=!1;function d(t){s("ondata");var r=e.write(t);s("dest.write",r),!1===r&&((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==L(o.pipes,e))&&!f&&(s("false write response, pause",o.awaitDrain),o.awaitDrain++),n.pause())}function p(t){s("onerror",t),m(),e.removeListener("error",p),0===a(e,"error")&&w(e,t)}function h(){e.removeListener("finish",y),m()}function y(){s("onfinish"),e.removeListener("close",h),m()}function m(){s("unpipe"),n.unpipe(e)}return n.on("data",d),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",p),e.once("close",h),e.once("finish",y),e.emit("pipe",n),o.flowing||(s("pipe resume"),n.resume()),e},T.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==o.flowing&&this.resume()):"readable"===e&&(o.endEmitted||o.readableListening||(o.readableListening=o.needReadable=!0,o.flowing=!1,o.emittedReadable=!1,s("on readable",o.length,o.reading),o.length?S(this):o.reading||r.nextTick(B,this))),n},T.prototype.addListener=T.prototype.on,T.prototype.removeListener=function(e,t){var n=i.prototype.removeListener.call(this,e,t);return"readable"===e&&r.nextTick(N,this),n},T.prototype.removeAllListeners=function(e){var t=i.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||r.nextTick(N,this),t},T.prototype.resume=function(){var e=this._readableState;return e.flowing||(s("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,r.nextTick(M,e,t))}(this,e)),e.paused=!1,this},T.prototype.pause=function(){return s("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(s("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},T.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var o in e.on("end",(function(){if(s("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(o){(s("wrapped data"),n.decoder&&(o=n.decoder.write(o)),n.objectMode&&null==o)||(n.objectMode||o&&o.length)&&(t.push(o)||(r=!0,e.pause()))})),e)void 0===this[o]&&"function"==typeof e[o]&&(this[o]=function(t){return function(){return e[t].apply(e,arguments)}}(o));for(var a=0;a-1))throw new _(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(T.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(T.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),T.prototype._write=function(e,t,n){n(new y("_write()"))},T.prototype._writev=null,T.prototype.end=function(e,t,n){var o=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),o.corked&&(o.corked=1,this.uncork()),o.ending||function(e,t,n){t.ending=!0,D(e,t),n&&(t.finished?r.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,o,n),this},Object.defineProperty(T.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(T.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),T.prototype.destroy=f.destroy,T.prototype._undestroy=f.undestroy,T.prototype._destroy=function(e,t){t(e)}}).call(this,n(40),n(34))},function(e,t,n){"use strict";e.exports=l;var r=n(175).codes,o=r.ERR_METHOD_NOT_IMPLEMENTED,a=r.ERR_MULTIPLE_CALLBACK,i=r.ERR_TRANSFORM_ALREADY_TRANSFORMING,u=r.ERR_TRANSFORM_WITH_LENGTH_0,c=n(176);function s(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit("error",new a);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.length>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function d(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function p(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(c,o),c.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,h=0|this._f,y=0|this._g,m=0|this._h,b=0;b<16;++b)n[b]=e.readInt32BE(4*b);for(;b<64;++b)n[b]=0|(((t=n[b-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[b-7]+p(n[b-15])+n[b-16];for(var v=0;v<64;++v){var k=m+d(c)+s(c,h,y)+i[v]+n[v]|0,g=f(r)+l(r,o,a)|0;m=y,y=h,h=c,c=u+k|0,u=a,a=o,o=r,r=k+g|0}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0,this._f=h+this._f|0,this._g=y+this._g|0,this._h=m+this._h|0},c.prototype._hash=function(){var e=a.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},function(e,t,n){"use strict";var r=n(16),o=n(177),a=n(26).Buffer,i=[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],u=new Array(160);function c(){this.init(),this._w=u,o.call(this,128,112)}function s(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function f(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function d(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function h(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function y(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function b(e,t){return e>>>0>>0?1:0}r(c,o),c.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},c.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,o=0|this._ch,a=0|this._dh,u=0|this._eh,c=0|this._fh,v=0|this._gh,k=0|this._hh,g=0|this._al,_=0|this._bl,w=0|this._cl,I=0|this._dl,A=0|this._el,T=0|this._fl,O=0|this._gl,P=0|this._hl,E=0;E<32;E+=2)t[E]=e.readInt32BE(4*E),t[E+1]=e.readInt32BE(4*E+4);for(;E<160;E+=2){var S=t[E-30],R=t[E-30+1],D=p(S,R),C=h(R,S),N=y(S=t[E-4],R=t[E-4+1]),B=m(R,S),M=t[E-14],j=t[E-14+1],x=t[E-32],F=t[E-32+1],U=C+j|0,L=D+M+b(U,C)|0;L=(L=L+N+b(U=U+B|0,B)|0)+x+b(U=U+F|0,F)|0,t[E]=L,t[E+1]=U}for(var G=0;G<160;G+=2){L=t[G],U=t[G+1];var K=l(n,r,o),z=l(g,_,w),Q=f(n,g),H=f(g,n),V=d(u,A),W=d(A,u),q=i[G],Y=i[G+1],Z=s(u,c,v),J=s(A,T,O),X=P+W|0,$=k+V+b(X,P)|0;$=($=($=$+Z+b(X=X+J|0,J)|0)+q+b(X=X+Y|0,Y)|0)+L+b(X=X+U|0,U)|0;var ee=H+z|0,te=Q+K+b(ee,H)|0;k=v,P=O,v=c,O=T,c=u,T=A,u=a+$+b(A=I+X|0,I)|0,a=o,I=w,o=r,w=_,r=n,_=g,n=$+te+b(g=X+ee|0,X)|0}this._al=this._al+g|0,this._bl=this._bl+_|0,this._cl=this._cl+w|0,this._dl=this._dl+I|0,this._el=this._el+A|0,this._fl=this._fl+T|0,this._gl=this._gl+O|0,this._hl=this._hl+P|0,this._ah=this._ah+n+b(this._al,g)|0,this._bh=this._bh+r+b(this._bl,_)|0,this._ch=this._ch+o+b(this._cl,w)|0,this._dh=this._dh+a+b(this._dl,I)|0,this._eh=this._eh+u+b(this._el,A)|0,this._fh=this._fh+c+b(this._fl,T)|0,this._gh=this._gh+v+b(this._gl,O)|0,this._hh=this._hh+k+b(this._hl,P)|0},c.prototype._hash=function(){var e=a.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},function(e,t,n){"use strict";e.exports=o;var r=n(87).EventEmitter;function o(){r.call(this)}n(16)(o,r),o.Readable=n(310),o.Writable=n(904),o.Duplex=n(905),o.Transform=n(906),o.PassThrough=n(907),o.Stream=o,o.prototype.pipe=function(e,t){var n=this;function o(t){e.writable&&!1===e.write(t)&&n.pause&&n.pause()}function a(){n.readable&&n.resume&&n.resume()}n.on("data",o),e.on("drain",a),e._isStdio||t&&!1===t.end||(n.on("end",u),n.on("close",c));var i=!1;function u(){i||(i=!0,e.end())}function c(){i||(i=!0,"function"==typeof e.destroy&&e.destroy())}function s(e){if(l(),0===r.listenerCount(this,"error"))throw e}function l(){n.removeListener("data",o),e.removeListener("drain",a),n.removeListener("end",u),n.removeListener("close",c),n.removeListener("error",s),e.removeListener("error",s),n.removeListener("end",l),n.removeListener("close",l),e.removeListener("close",l)}return n.on("error",s),e.on("error",s),n.on("end",l),n.on("close",l),e.on("close",l),e.emit("pipe",n),e}},function(e,t,n){"use strict";(function(t,r){var o=n(246);e.exports=k;var a,i=n(436);k.ReadableState=v;n(87).EventEmitter;var u=function(e,t){return e.listeners(t).length},c=n(459),s=n(311).Buffer,l=t.Uint8Array||function(){};var f=Object.create(n(200));f.inherits=n(16);var d=n(899),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var h,y=n(900),m=n(460);f.inherits(k,c);var b=["error","close","destroy","pause","resume"];function v(e,t){e=e||{};var r=t instanceof(a=a||n(142));this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var o=e.highWaterMark,i=e.readableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:r&&(i||0===i)?i:u,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new y,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(h||(h=n(76).StringDecoder),this.decoder=new h(e.encoding),this.encoding=e.encoding)}function k(e){if(a=a||n(142),!(this instanceof k))return new k(e);this._readableState=new v(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),c.call(this)}function g(e,t,n,r,o){var a,i=e._readableState;null===t?(i.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,I(e)}(e,i)):(o||(a=function(e,t){var n;r=t,s.isBuffer(r)||r instanceof l||"string"==typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var r;return n}(i,t)),a?e.emit("error",a):i.objectMode||t&&t.length>0?("string"==typeof t||i.objectMode||Object.getPrototypeOf(t)===s.prototype||(t=function(e){return s.from(e)}(t)),r?i.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):_(e,i,t,!0):i.ended?e.emit("error",new Error("stream.push() after EOF")):(i.reading=!1,i.decoder&&!n?(t=i.decoder.write(t),i.objectMode||0!==t.length?_(e,i,t,!1):T(e,i)):_(e,i,t,!1))):r||(i.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function I(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?o.nextTick(A,e):A(e))}function A(e){p("emit readable"),e.emit("readable"),S(e)}function T(e,t){t.readingMore||(t.readingMore=!0,o.nextTick(O,e,t))}function O(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;ea.length?a.length:e;if(i===a.length?o+=a:o+=a.slice(0,e),0===(e-=i)){i===a.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(i));break}++r}return t.length-=r,o}(e,t):function(e,t){var n=s.allocUnsafe(e),r=t.head,o=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var a=r.data,i=e>a.length?a.length:e;if(a.copy(n,n.length-e,0,i),0===(e-=i)){i===a.length?(++o,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(i));break}++o}return t.length-=o,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function D(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,o.nextTick(C,t,e))}function C(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function N(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?D(this):I(this),null;if(0===(e=w(e,t))&&t.ended)return 0===t.length&&D(this),null;var r,o=t.needReadable;return p("need readable",o),(0===t.length||t.length-e0?R(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&D(this)),null!==r&&this.emit("data",r),r},k.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},k.prototype.pipe=function(e,t){var n=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=e;break;case 1:a.pipes=[a.pipes,e];break;default:a.pipes.push(e)}a.pipesCount+=1,p("pipe count=%d opts=%j",a.pipesCount,t);var c=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?l:k;function s(t,r){p("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,p("cleanup"),e.removeListener("close",b),e.removeListener("finish",v),e.removeListener("drain",f),e.removeListener("error",m),e.removeListener("unpipe",s),n.removeListener("end",l),n.removeListener("end",k),n.removeListener("data",y),d=!0,!a.awaitDrain||e._writableState&&!e._writableState.needDrain||f())}function l(){p("onend"),e.end()}a.endEmitted?o.nextTick(c):n.once("end",c),e.on("unpipe",s);var f=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&u(e,"data")&&(t.flowing=!0,S(e))}}(n);e.on("drain",f);var d=!1;var h=!1;function y(t){p("ondata"),h=!1,!1!==e.write(t)||h||((1===a.pipesCount&&a.pipes===e||a.pipesCount>1&&-1!==N(a.pipes,e))&&!d&&(p("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,h=!0),n.pause())}function m(t){p("onerror",t),k(),e.removeListener("error",m),0===u(e,"error")&&e.emit("error",t)}function b(){e.removeListener("finish",v),k()}function v(){p("onfinish"),e.removeListener("close",b),k()}function k(){p("unpipe"),n.unpipe(e)}return n.on("data",y),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?i(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",m),e.once("close",b),e.once("finish",v),e.emit("pipe",n),a.flowing||(p("pipe resume"),n.resume()),e},k.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(902),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||void 0,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||void 0}).call(this,n(40))},function(e,t,n){"use strict";e.exports=i;var r=n(142),o=Object.create(n(200));function a(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(!r)return this.emit("error",new Error("write callback called multiple times"));n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.length1?(e[n[0]]=e[n[0]]||{},e[n[0]][n[1]]=t):e[n[0]]=t},y.prototype.getCall=function(e){return"function"==typeof this.call?this.call(e):this.call},y.prototype.extractCallback=function(e){if("function"==typeof e[e.length-1])return e.pop()},y.prototype.validateArgs=function(e){if(e.length!==this.params)throw c.errors.InvalidNumberOfParams(e.length,this.params,this.name)},y.prototype.formatInput=function(e){var t=this;return this.inputFormatter?this.inputFormatter.map((function(n,r){return n?n.call(t,e[r]):e[r]})):e},y.prototype.formatOutput=function(e){var t=this;return Array.isArray(e)?e.map((function(e){return t.outputFormatter&&e?t.outputFormatter(e):e})):this.outputFormatter&&e?this.outputFormatter(e):e},y.prototype.toPayload=function(e){var t=this.getCall(e),n=this.extractCallback(e),r=this.formatInput(e);this.validateArgs(r);var o={method:t,params:r,callback:n};return this.transformPayload&&(o=this.transformPayload(o)),o},y.prototype._confirmTransaction=function(e,t,n){var r=this,o=!1,i=!0,d=0,m=0,b=null,v=null,k=null,g=n.params[0]&&"object"===(0,u.default)(n.params[0])&&n.params[0].gas?n.params[0].gas:null,_=!!n.params[0]&&"object"===(0,u.default)(n.params[0])&&n.params[0].data&&n.params[0].from&&!n.params[0].to,w=_&&n.params[0].data.length>2,I=[new y({name:"getBlockByNumber",call:"eth_getBlockByNumber",params:2,inputFormatter:[c.formatters.inputBlockNumberFormatter,function(e){return!!e}],outputFormatter:c.formatters.outputBlockFormatter}),new y({name:"getTransactionReceipt",call:"eth_getTransactionReceipt",params:1,inputFormatter:[null],outputFormatter:c.formatters.outputTransactionReceiptFormatter}),new y({name:"getCode",call:"eth_getCode",params:2,inputFormatter:[c.formatters.inputAddressFormatter,c.formatters.inputDefaultBlockNumberFormatter]}),new y({name:"getTransactionByHash",call:"eth_getTransactionByHash",params:1,inputFormatter:[null],outputFormatter:c.formatters.outputTransactionFormatter}),new f.default({name:"subscribe",type:"eth",subscriptions:{newBlockHeaders:{subscriptionName:"newHeads",params:0,outputFormatter:c.formatters.outputBlockFormatter}}})],A={};I.forEach((function(e){e.attachToObject(A),e.requestManager=r.requestManager}));var T=function(u,f,y,I,T){if(!y)return T||(T={unsubscribe:function(){clearInterval(b),clearTimeout(v)}}),(u?l.default.resolve(u):A.getTransactionReceipt(t)).catch((function(t){T.unsubscribe(),o=!0,s._fireError({message:"Failed to check for transaction receipt:",data:t},e.eventEmitter,e.reject)})).then((function(t){return p(this,void 0,void 0,a.default.mark((function n(){var o,c,s;return a.default.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(t&&t.blockHash){n.next=2;break}throw new Error("Receipt missing or blockHash null");case 2:if(r.extraFormatters&&r.extraFormatters.receiptFormatter&&(t=r.extraFormatters.receiptFormatter(t)),!(e.eventEmitter.listeners("confirmation").length>0)){n.next=28;break}if(void 0!==u&&0===m){n.next=25;break}return n.next=7,A.getBlockByNumber("latest");case 7:if(c=n.sent,s=c?c.hash:null,!f){n.next=24;break}if(!k){n.next=17;break}return n.next=13,A.getBlockByNumber(k.number+1);case 13:(o=n.sent)&&(k=o,e.eventEmitter.emit("confirmation",m,t,s)),n.next=22;break;case 17:return n.next=19,A.getBlockByNumber(t.blockNumber);case 19:o=n.sent,k=o,e.eventEmitter.emit("confirmation",m,t,s);case 22:n.next=25;break;case 24:e.eventEmitter.emit("confirmation",m,t,s);case 25:(f&&o||!f)&&m++,i=!1,m===r.transactionConfirmationBlocks+1&&(T.unsubscribe(),e.eventEmitter.removeAllListeners());case 28:return n.abrupt("return",t);case 29:case"end":return n.stop()}}),n)})))})).then((function(t){return p(this,void 0,void 0,a.default.mark((function n(){var u;return a.default.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(!_||o){n.next=19;break}if(t.contractAddress){n.next=5;break}return i&&(T.unsubscribe(),o=!0),s._fireError(c.errors.NoContractAddressFoundError(t),e.eventEmitter,e.reject,null,t),n.abrupt("return");case 5:return n.prev=5,n.next=8,A.getCode(t.contractAddress);case 8:u=n.sent,n.next=13;break;case 11:n.prev=11,n.t0=n.catch(5);case 13:if(u){n.next=15;break}return n.abrupt("return");case 15:!0===t.status&&w||u.length>2?(e.eventEmitter.emit("receipt",t),r.extraFormatters&&r.extraFormatters.contractDeployFormatter?e.resolve(r.extraFormatters.contractDeployFormatter(t)):e.resolve(t),i&&e.eventEmitter.removeAllListeners()):s._fireError(c.errors.ContractCodeNotStoredError(t),e.eventEmitter,e.reject,null,t),i&&T.unsubscribe(),o=!0;case 19:return n.abrupt("return",t);case 20:case"end":return n.stop()}}),n,null,[[5,11]])})))})).then((function(t){return p(this,void 0,void 0,a.default.mark((function u(){var l,f,d,p;return a.default.wrap((function(a){for(;;)switch(a.prev=a.next){case 0:if(_||o){a.next=35;break}if(t.outOfGas||g&&g===t.gasUsed||!0!==t.status&&"0x1"!==t.status&&void 0!==t.status){a.next=7;break}e.eventEmitter.emit("receipt",t),e.resolve(t),i&&e.eventEmitter.removeAllListeners(),a.next=33;break;case 7:if(JSON.stringify(t,null,2),!1!==t.status&&"0x0"!==t.status){a.next=32;break}if(a.prev=9,l=null,!r.handleRevert||"eth_sendTransaction"!==r.call&&"eth_sendRawTransaction"!==r.call){a.next=24;break}return f=n.params[0],"eth_sendRawTransaction"===r.call&&(d=n.params[0],p=h.parse(d),f=c.formatters.inputTransactionFormatter({data:p.data,to:p.to,from:p.from,gas:p.gasLimit.toHexString(),gasPrice:p.gasPrice.toHexString(),value:p.value.toHexString()})),a.next=16,r.getRevertReason(f,t.blockNumber);case 16:if(!(l=a.sent)){a.next=21;break}s._fireError(c.errors.TransactionRevertInstructionError(l.reason,l.signature,t),e.eventEmitter,e.reject,null,t),a.next=22;break;case 21:throw!1;case 22:a.next=25;break;case 24:throw!1;case 25:a.next=30;break;case 27:a.prev=27,a.t0=a.catch(9),s._fireError(c.errors.TransactionRevertedWithoutReasonError(t),e.eventEmitter,e.reject,null,t);case 30:a.next=33;break;case 32:s._fireError(c.errors.TransactionOutOfGasError(t),e.eventEmitter,e.reject,null,t);case 33:i&&T.unsubscribe(),o=!0;case 35:case"end":return a.stop()}}),u,null,[[9,27]])})))})).catch((function(){d++,f?d-1>=r.transactionPollingTimeout&&(T.unsubscribe(),o=!0,s._fireError(c.errors.TransactionError("Transaction was not mined within "+r.transactionPollingTimeout+" seconds, please make sure your transaction was properly sent. Be aware that it might still be mined!"),e.eventEmitter,e.reject)):d-1>=r.transactionBlockTimeout&&(T.unsubscribe(),o=!0,s._fireError(c.errors.TransactionError("Transaction was not mined within "+r.transactionBlockTimeout+" blocks, please make sure your transaction was properly sent. Be aware that it might still be mined!"),e.eventEmitter,e.reject))}));T.unsubscribe(),o=!0,s._fireError({message:"Failed to subscribe to new newBlockHeaders to confirm the transaction receipts.",data:y},e.eventEmitter,e.reject)},O=function(e){var t=!1,n=function(){b=setInterval(T.bind(null,e,!0),r.transactionPollingInterval)};if(!this.requestManager.provider.on)return n();A.subscribe("newBlockHeaders",(function(r,o,a){if(t=!0,r||!o)return n();T(e,!1,r,0,a)})),v=setTimeout((function(){t||n()}),1e3*this.blockHeaderTimeout)}.bind(this);A.getTransactionReceipt(t).then((function(t){t&&t.blockHash?(e.eventEmitter.listeners("confirmation").length>0&&O(t),T(t,!1)):o||O()})).catch((function(){o||O()}))};var m=function(e,t){return"number"==typeof e?t.wallet[e]:e&&"object"===(0,u.default)(e)&&e.address&&e.privateKey?e:t.wallet[e.toLowerCase()]};function b(e,t){return new Promise((function(n,r){try{var o=new y({name:"getBlockByNumber",call:"eth_getBlockByNumber",params:2,inputFormatter:[function(e){return e?s.toHex(e):"latest"},function(){return!1}]}).createFunction(e.requestManager),a=new y({name:"getGasPrice",call:"eth_gasPrice",params:0}).createFunction(e.requestManager);Promise.all([o(),a()]).then((function(e){var r=(0,i.default)(e,2),o=r[0],a=r[1];if(("0x2"===t.type||void 0===t.type)&&o&&o.baseFeePerGas){var u,c;t.gasPrice?(u=t.gasPrice,c=t.gasPrice,delete t.gasPrice):(u=t.maxPriorityFeePerGas||"0x9502F900",c=t.maxFeePerGas||s.toHex(s.toBN(o.baseFeePerGas).mul(s.toBN(2)).add(s.toBN(u)))),n({maxFeePerGas:c,maxPriorityFeePerGas:u})}else{if(t.maxPriorityFeePerGas||t.maxFeePerGas)throw Error("Network doesn't support eip-1559");n({gasPrice:a})}}))}catch(e){r(e)}}))}y.prototype.buildCall=function(){var e=this,t="eth_sendTransaction"===e.call||"eth_sendRawTransaction"===e.call,n="eth_call"===e.call,r=function(){var r=(0,l.default)(!t),o=e.toPayload(Array.prototype.slice.call(arguments)),a=function(a,i){var u;if(e.handleRevert&&n&&e.abiCoder&&(!a&&e.isRevertReasonString(i)?u=i.substring(10):a&&a.data&&(u=a.data.substring(10)),u)){var l=e.abiCoder.decodeParameter("string","0x"+u);return void s._fireError(c.errors.RevertInstructionError(l,"Error(String)"),r.eventEmitter,r.reject,o.callback,{reason:l,signature:"Error(String)"})}try{i=e.formatOutput(i)}catch(e){a=e}if(i instanceof Error&&(a=i),a)return a.error&&(a=a.error),s._fireError(a,r.eventEmitter,r.reject,o.callback);o.callback&&o.callback(null,i),t?(r.eventEmitter.emit("transactionHash",i),e._confirmTransaction(r,i,o)):a||r.resolve(i)},i=function(t){var n=Object.assign(Object.assign({},o),{method:"eth_sendRawTransaction",params:[t.rawTransaction]});e.requestManager.send(n,a)},f=function(e,t){var n;if(t&&t.accounts&&t.accounts.wallet&&t.accounts.wallet.length)if("eth_sendTransaction"===e.method){var o=e.params[0];if((n=m(o&&"object"===(0,u.default)(o)?o.from:null,t.accounts))&&n.privateKey)return delete(o=JSON.parse(JSON.stringify(o))).from,t.defaultChain&&!o.chain&&(o.chain=t.defaultChain),t.defaultHardfork&&!o.hardfork&&(o.hardfork=t.defaultHardfork),t.defaultCommon&&!o.common&&(o.common=t.defaultCommon),void t.accounts.signTransaction(o,n.privateKey).then(i).catch((function(e){if("function"==typeof r.eventEmitter.listeners&&r.eventEmitter.listeners("error").length){try{r.eventEmitter.emit("error",e)}catch(e){}r.eventEmitter.removeAllListeners(),r.eventEmitter.catch((function(){}))}r.reject(e)}))}else if("eth_sign"===e.method){var c=e.params[1];if((n=m(e.params[0],t.accounts))&&n.privateKey){var s=t.accounts.sign(c,n.privateKey);return e.callback&&e.callback(null,s.signature),void r.resolve(s.signature)}}return t.requestManager.send(e,a)};return t&&o.params[0]&&"object"===(0,u.default)(o.params[0])&&void 0===o.params[0].gasPrice&&(void 0===o.params[0].maxPriorityFeePerGas||void 0===o.params[0].maxFeePerGas)?b(e,o.params[0]).then((function(n){void 0!==n.gasPrice?o.params[0].gasPrice=n.gasPrice:void 0!==n.maxPriorityFeePerGas&&void 0!==n.maxFeePerGas&&(o.params[0].maxPriorityFeePerGas=n.maxPriorityFeePerGas,o.params[0].maxFeePerGas=n.maxFeePerGas),t&&setTimeout((function(){r.eventEmitter.emit("sending",o)}),0),f(o,e)})):(t&&setTimeout((function(){r.eventEmitter.emit("sending",o)}),0),f(o,e)),t&&setTimeout((function(){r.eventEmitter.emit("sent",o)}),0),r.eventEmitter};return r.method=e,r.request=this.request.bind(this),r},y.prototype.getRevertReason=function(e,t){var n=this;return new Promise((function(r,o){new y({name:"call",call:"eth_call",params:2,abiCoder:n.abiCoder,handleRevert:!0}).createFunction(n.requestManager)(e,s.numberToHex(t)).then((function(){r(!1)})).catch((function(e){e.reason?r({reason:e.reason,signature:e.signature}):o(e)}))}))},y.prototype.isRevertReasonString=function(e){return"string"==typeof e&&(e.length-2)/2%32==4&&"0x08c379a0"===e.substring(0,10)},y.prototype.request=function(){var e=this.toPayload(Array.prototype.slice.call(arguments));return e.format=this.formatOutput.bind(this),e};var v=y;t.default=v},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(466),o=function(e){var t,n,o=new Promise((function(){t=arguments[0],n=arguments[1]}));if(e)return{resolve:t,reject:n,eventEmitter:o};var a=new r;return o._events=a._events,o.emit=a.emit,o.on=a.on,o.once=a.once,o.off=a.off,o.listeners=a.listeners,o.addListener=a.addListener,o.removeListener=a.removeListener,o.removeAllListeners=a.removeAllListeners,{resolve:t,reject:n,eventEmitter:o}};o.resolve=function(e){var t=o(!0);return t.resolve(e),t.eventEmitter};var a=o;t.default=a},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty,o="~";function a(){}function i(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function u(e,t,n,r,a){if("function"!=typeof n)throw new TypeError("The listener must be a function");var u=new i(n,r||e,a),c=o?o+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],u]:e._events[c].push(u):(e._events[c]=u,e._eventsCount++),e}function c(e,t){0==--e._eventsCount?e._events=new a:delete e._events[t]}function s(){this._events=new a,this._eventsCount=0}Object.create&&(a.prototype=Object.create(null),(new a).__proto__||(o=!1)),s.prototype.eventNames=function(){var e,t,n=[];if(0===this._eventsCount)return n;for(t in e=this._events)r.call(e,t)&&n.push(o?t.slice(1):t);return Object.getOwnPropertySymbols?n.concat(Object.getOwnPropertySymbols(e)):n},s.prototype.listeners=function(e){var t=o?o+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var r=0,a=n.length,i=new Array(a);r0&&(10===arguments[0]?p||(p=!0,f.warn("BigNumber.toString does not accept any parameters; base-10 is assumed")):16===arguments[0]?f.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()",c.Logger.errors.UNEXPECTED_ARGUMENT,{}):f.throwError("BigNumber.toString does not accept parameters",c.Logger.errors.UNEXPECTED_ARGUMENT,{})),b(this).toString(10)}},{key:"toHexString",value:function(){return this._hex}},{key:"toJSON",value:function(e){return{type:"BigNumber",hex:this.toHexString()}}}],[{key:"from",value:function(t){if(t instanceof e)return t;if("string"==typeof t)return t.match(/^-?0x[0-9a-f]+$/i)?new e(d,y(t)):t.match(/^-?[0-9]+$/)?new e(d,y(new l(t))):f.throwArgumentError("invalid BigNumber string","value",t);if("number"==typeof t)return t%1&&v("underflow","BigNumber.from",t),(t>=9007199254740991||t<=-9007199254740991)&&v("overflow","BigNumber.from",t),e.from(String(t));var n=t;if("bigint"==typeof n)return e.from(n.toString());if((0,u.isBytes)(n))return e.from((0,u.hexlify)(n));if(n)if(n.toHexString){var r=n.toHexString();if("string"==typeof r)return e.from(r)}else{var o=n._hex;if(null==o&&"BigNumber"===n.type&&(o=n.hex),"string"==typeof o&&((0,u.isHexString)(o)||"-"===o[0]&&(0,u.isHexString)(o.substring(1))))return e.from(o)}return f.throwArgumentError("invalid BigNumber value","value",t)}},{key:"isBigNumber",value:function(e){return!(!e||!e._isBigNumber)}}]),e}();function y(e){if("string"!=typeof e)return y(e.toString(16));if("-"===e[0])return"-"===(e=e.substring(1))[0]&&f.throwArgumentError("invalid hex","value",e),"0x00"===(e=y(e))?e:"-"+e;if("0x"!==e.substring(0,2)&&(e="0x"+e),"0x"===e)return"0x00";for(e.length%2&&(e="0x0"+e.substring(2));e.length>4&&"0x00"===e.substring(0,4);)e="0x"+e.substring(4);return e}function m(e){return h.from(y(e))}function b(e){var t=h.from(e).toHexString();return"-"===t[0]?new l("-"+t.substring(3),16):new l(t.substring(2),16)}function v(e,t,n){var r={fault:e,operation:t};return null!=n&&(r.value=n),f.throwError(e,c.Logger.errors.NUMERIC_FAULT,r)}t.BigNumber=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="bignumber/5.5.0"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){var t=(0,r.arrayify)(e),n=l(t,0);n.consumed!==t.length&&i.throwArgumentError("invalid rlp data","data",e);return n.result},t.encode=function(e){return(0,r.hexlify)(function e(t){if(Array.isArray(t)){var n=[];if(t.forEach((function(t){n=n.concat(e(t))})),n.length<=55)return n.unshift(192+n.length),n;var o=u(n.length);return o.unshift(247+o.length),o.concat(n)}(0,r.isBytesLike)(t)||i.throwArgumentError("RLP object must be BytesLike","object",t);var a=Array.prototype.slice.call((0,r.arrayify)(t));if(1===a.length&&a[0]<=127)return a;if(a.length<=55)return a.unshift(128+a.length),a;var c=u(a.length);return c.unshift(183+c.length),c.concat(a)}(e))};var r=n(56),o=n(58),a=n(929),i=new o.Logger(a.version);function u(e){for(var t=[];e;)t.unshift(255&e),e>>=8;return t}function c(e,t,n){for(var r=0,o=0;ot+1+r&&i.throwError("child data too short",o.Logger.errors.BUFFER_OVERRUN,{})}return{consumed:1+r,result:a}}function l(e,t){if(0===e.length&&i.throwError("data too short",o.Logger.errors.BUFFER_OVERRUN,{}),e[t]>=248){var n=e[t]-247;t+1+n>e.length&&i.throwError("data short segment too short",o.Logger.errors.BUFFER_OVERRUN,{});var a=c(e,t+1,n);return t+1+n+a>e.length&&i.throwError("data long segment too short",o.Logger.errors.BUFFER_OVERRUN,{}),s(e,t,t+1+n,n+a)}if(e[t]>=192){var u=e[t]-192;return t+1+u>e.length&&i.throwError("data array too short",o.Logger.errors.BUFFER_OVERRUN,{}),s(e,t,t+1,u)}if(e[t]>=184){var l=e[t]-183;t+1+l>e.length&&i.throwError("data array too short",o.Logger.errors.BUFFER_OVERRUN,{});var f=c(e,t+1,l);return t+1+l+f>e.length&&i.throwError("data array too short",o.Logger.errors.BUFFER_OVERRUN,{}),{consumed:1+l+f,result:(0,r.hexlify)(e.slice(t+1+l,t+1+l+f))}}if(e[t]>=128){var d=e[t]-128;return t+1+d>e.length&&i.throwError("data too short",o.Logger.errors.BUFFER_OVERRUN,{}),{consumed:1+d,result:(0,r.hexlify)(e.slice(t+1,t+1+d))}}return{consumed:1,result:(0,r.hexlify)(e[t])}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(165),o=(n(93),function(){r.packageInit(this,arguments)});r.addProviders(o);var a=o;t.default=a},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=n(165),i=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(93)),u=r(n(470));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=n(104).formatters,l=function(){(0,a.packageInit)(this,arguments),this.net=new u.default(this);var e=null,t="latest";Object.defineProperty(this,"defaultAccount",{get:function(){return e},set:function(t){return t&&(e=i.toChecksumAddress(s.inputAddressFormatter(t))),t},enumerable:!0}),Object.defineProperty(this,"defaultBlock",{get:function(){return t},set:function(e){return t=e,e},enumerable:!0})};(0,a.addProviders)(l);var f=l;t.default=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0});var o={Client:!0};Object.defineProperty(t,"Client",{enumerable:!0,get:function(){return i.default}});var a=n(941);Object.keys(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||e in t&&t[e]===a[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return a[e]}}))}));var i=r(n(1069))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=r(n(474)),p=r(n(109)),h=r(n(178)),y=r(n(315)),m=r(n(479)),b=r(n(489)),v=n(967),k=n(968),g=A(n(122)),_=A(n(478)),w=A(n(971));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:"";return(0,v.createKeystore)(this.toBytesRaw(),e)}}],[{key:"generateED25519",value:function(){return new O(y.default.generate())}},{key:"generateECDSA",value:function(){return new O(m.default.generate())}},{key:"generate",value:function(){return O.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",O.generateED25519Async());case 1:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=O,e.next=3,y.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=O,e.next=3,m.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){try{return new O(y.default.fromBytes(e))}catch(e){}try{return new O(m.default.fromBytes(e))}catch(e){}throw new p.default("invalid private key length: ".concat(e.length," bytes"))}},{key:"fromBytesECDSA",value:function(e){return new O(m.default.fromBytes(e))}},{key:"fromBytesED25519",value:function(e){return new O(y.default.fromBytes(e))}},{key:"fromString",value:function(e){return O.fromBytes(g.decode(e))}},{key:"fromStringECDSA",value:function(e){return O.fromBytesECDSA(g.decode(e))}},{key:"fromStringED25519",value:function(e){return O.fromBytesED25519(g.decode(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"","string"!=typeof t){e.next=7;break}return e.next=4,d.default.fromString(t);case 4:e.t0=e.sent,e.next=8;break;case 7:e.t0=t;case 8:return e.abrupt("return",e.t0.toPrivateKey(n));case 9:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=O,e.next=4,(0,v.loadKeystore)(t,n);case 4:return e.t1=e.sent,e.abrupt("return",e.t0.fromBytes.call(e.t0,e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:"",e.next=3,(0,k.read)(t,n);case 3:if(!((r=e.sent)instanceof y.default||r instanceof m.default)){e.next=6;break}return e.abrupt("return",new O(r));case 6:return e.abrupt("return",O.fromBytes(r));case 7:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),O}(h.default);t.default=E},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(9)),u=r(n(41)),c=r(n(8)),s=r(n(1)),l=r(n(2)),f=r(n(473)),d=r(n(315)),p=r(n(476)),h=r(n(317)),y=r(n(944)),m=r(n(945)),b=r(n(249)),v=T(n(477)),k=T(n(250)),g=T(n(202)),_=T(n(478)),w=T(n(946)),I=T(n(316));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var O=function(){function e(t){var n=t.words,r=t.legacy;(0,s.default)(this,e),this.words=n,this._isLegacy=r}var t,n,r,o,v,A,T;return(0,l.default)(e,[{key:"toPrivateKey",value:(T=(0,c.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",!this._isLegacy){e.next=5;break}if(!(t.length>0)){e.next=4;break}throw new Error("legacy 22-word mnemonics do not support passphrases");case 4:return e.abrupt("return",this.toLegacyPrivateKey());case 5:return e.next=7,this._toPrivateKey(t);case 7:return e.abrupt("return",e.sent);case 8:case"end":return e.stop()}}),e,this)}))),function(){return T.apply(this,arguments)})},{key:"_validate",value:(A=(0,c.default)(a.default.mark((function e(){var t,n,r,o,c,s,l,f,d,b,v,k,g;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._isLegacy){e.next=12;break}if(22===this.words.length){e.next=3;break}throw new p.default(this,h.default.BadLength,[]);case 3:if(!((t=this.words.reduce((function(e,t,n){return y.default.includes(t.toLowerCase())?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=6;break}throw new p.default(this,h.default.UnknownWords,t);case 6:if(n=w.legacy1(this.words,y.default),r=(0,i.default)(n,2),o=r[0],c=r[1],s=w.crc8(o),c===s){e.next=10;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 10:e.next=28;break;case 12:if(12===this.words.length||24===this.words.length){e.next=14;break}throw new p.default(this,h.default.BadLength,[]);case 14:if(!((l=this.words.reduce((function(e,t,n){return m.default.includes(t)?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=17;break}throw new p.default(this,h.default.UnknownWords,l);case 17:return f=this.words.map((function(e){return m.default.indexOf(e).toString(2).padStart(11,"0")})).join(""),d=32*Math.floor(f.length/33),b=f.slice(0,d),v=f.slice(d),k=b.match(/(.{1,8})/g),g=k.map(P),e.next=25,S(Uint8Array.from(g));case 25:if(e.sent===v){e.next=28;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 28:return e.abrupt("return",this);case 29:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"_toPrivateKey",value:(v=(0,c.default)(a.default.mark((function e(){var t,n,r,o,i,u,c,s,l,p,h,y,m=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=m.length>0&&void 0!==m[0]?m[0]:"",n=this.words.join(" "),r="mnemonic".concat(t),e.next=5,k.deriveKey(g.HashAlgorithm.Sha512,n,r,2048,64);case 5:return o=e.sent,e.next=8,g.hash(g.HashAlgorithm.Sha512,"ed25519 seed",o);case 8:i=e.sent,u=i.subarray(0,32),c=i.subarray(32),s=0,l=[44,3030,0,0];case 12:if(!(s>8,i=255&o;a?n.push(a,i):n.push(i)}return n},r.zero2=o,r.toHex=a,r.encode=function(e,t){return"hex"===t?a(e):e}},function(e,t,n){"use strict";var r,o=n(0)(n(3));function a(e){this.rand=e}if(e.exports=function(e){return r||(r=new a(null)),r.generate(e)},e.exports.Rand=a,a.prototype.generate=function(e){return this._rand(e)},a.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),n=0;n>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(96),o=n(203),a=n(486),i=n(146),u=r.sum32,c=r.sum32_4,s=r.sum32_5,l=a.ch32,f=a.maj32,d=a.s0_256,p=a.s1_256,h=a.g0_256,y=a.g1_256,m=o.BlockHash,b=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function v(){if(!(this instanceof v))return new v;m.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=b,this.W=new Array(64)}r.inherits(v,m),e.exports=v,v.blockSize=512,v.outSize=256,v.hmacStrength=192,v.padLength=64,v.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){c=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(c)throw a}}}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n4)throw new Error("unsupported DER integer length of ".concat(t," bytes"));return n.getUint32(0,!1)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(248)),p=r(n(493)),h=r(n(110)),y=r(n(45)),m=r(n(123));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var k=function(e){(0,s.default)(k,e);var t,n,r,o,l,f,y,m,b=v(k);function k(e){var t;return(0,u.default)(this,k),(t=b.call(this))._key=e,t}return(0,c.default)(k,[{key:"derive",value:(m=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,this._key.derive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"legacyDerive",value:(y=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,this._key.legacyDerive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"publicKey",get:function(){return new h.default(this._key.publicKey)}},{key:"sign",value:function(e){return this._key.sign(e)}},{key:"signTransaction",value:function(e){var t=e._signedTransactions.get(0),n=null!=t.bodyBytes?this.sign(t.bodyBytes):new Uint8Array;return e.addSignature(this.publicKey,n),n}},{key:"isDerivable",value:function(){return this._key.isDerivable()}},{key:"toBytes",value:function(){return this._key.toBytes()}},{key:"toBytesDer",value:function(){return this._key.toBytesDer()}},{key:"toBytesRaw",value:function(){return this._key.toBytesRaw()}},{key:"toString",value:function(){return this._key.toStringDer()}},{key:"toStringDer",value:function(){return this._key.toStringDer()}},{key:"toStringRaw",value:function(){return this._key.toStringRaw()}},{key:"toKeystore",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._key.toKeystore(e)}},{key:"_toProtobufKey",value:function(){return this.publicKey._toProtobufKey()}},{key:"toAccountId",value:function(e,t){return this.publicKey.toAccountId(e,t)}}],[{key:"generateED25519",value:function(){return new k(d.PrivateKey.generateED25519())}},{key:"generateECDSA",value:function(){return new k(d.PrivateKey.generateECDSA())}},{key:"generate",value:function(){return k.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateED25519Async();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateECDSAAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){return new k(d.PrivateKey.fromBytes(e))}},{key:"fromBytesECDSA",value:function(e){return new k(d.PrivateKey.fromBytesECDSA(e))}},{key:"fromBytesED25519",value:function(e){return new k(d.PrivateKey.fromBytesED25519(e))}},{key:"fromString",value:function(e){return new k(d.PrivateKey.fromString(e))}},{key:"fromStringECDSA",value:function(e){return new k(d.PrivateKey.fromStringECDSA(e))}},{key:"fromStringED25519",value:function(e){return new k(d.PrivateKey.fromStringED25519(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"",!(t instanceof p.default)){e.next=7;break}return e.t0=k,e.next=5,d.PrivateKey.fromMnemonic(t._mnemonic,n);case 5:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 7:return e.t2=k,e.next=10,d.PrivateKey.fromMnemonic(t,n);case 10:return e.t3=e.sent,e.abrupt("return",new e.t2(e.t3));case 12:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=k,e.next=4,d.PrivateKey.fromKeystore(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=k,e.next=4,d.PrivateKey.fromPem(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),k}(y.default);t.default=k,m.default.privateKeyConstructor=function(e){return new k(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(248)),l=r(n(123));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}var d=function(){function e(t){(0,u.default)(this,e),this._mnemonic=t}var t,n,r,o,f,d;return(0,c.default)(e,[{key:"toPrivateKey",value:(d=(0,i.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",null!=l.default.privateKeyConstructor){e.next=3;break}throw new Error("`PrivateKey` has not been loaded");case 3:return e.t0=l.default,e.next=6,this._mnemonic.toPrivateKey(t);case 6:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 8:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"toLegacyPrivateKey",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=l.default.privateKeyConstructor){e.next=2;break}throw new Error("`PrivateKey` has not been loaded");case 2:return e.t0=l.default,e.next=5,this._mnemonic.toLegacyPrivateKey();case 5:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 7:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"toString",value:function(){return this._mnemonic.toString()}}],[{key:"generate",value:(o=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(24);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return o.apply(this,arguments)})},{key:"generate12",value:(r=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(12);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return r.apply(this,arguments)})},{key:"fromWords",value:(n=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromWords(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return n.apply(this,arguments)})},{key:"fromString",value:(t=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromString(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(145)),u=function(){function e(t,n,r){(0,o.default)(this,e),this._name=t,this._symbol=n,this._tinybar=r,Object.freeze(this)}return(0,a.default)(e,null,[{key:"fromString",value:function(t){switch(t){case e.Hbar._symbol:return e.Hbar;case e.Tinybar._symbol:return e.Tinybar;case e.Microbar._symbol:return e.Microbar;case e.Millibar._symbol:return e.Millibar;case e.Kilobar._symbol:return e.Kilobar;case e.Megabar._symbol:return e.Megabar;case e.Gigabar._symbol:return e.Gigabar;default:throw new Error("Unknown unit.")}}}]),e}();t.default=u,u.Tinybar=new u("tinybar","tℏ",new i.default(1)),u.Microbar=new u("microbar","μℏ",new i.default(100)),u.Millibar=new u("millibar","mℏ",new i.default(1e5)),u.Hbar=new u("hbar","ℏ",new i.default("100000000")),u.Kilobar=new u("kilobar","kℏ",new i.default(1e3).multipliedBy(new i.default("100000000"))),u.Megabar=new u("megabar","Mℏ",new i.default(1e6).multipliedBy(new i.default("100000000"))),u.Gigabar=new u("gigabar","Gℏ",new i.default("1000000000").multipliedBy(new i.default("100000000")))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(7)),a=r(n(8)),i=r(n(1)),u=r(n(2)),c=r(n(252)),s=r(n(148)),l=r(n(496)),f=r(n(502)),d=function(){function e(t){(0,i.default)(this,e),this.nodeId=t.nodeId,this.transactionHash=t.transactionHash,this.transactionId=t.transactionId,Object.freeze(this)}var t,n;return(0,u.default)(e,[{key:"getReceipt",value:(n=(0,a.default)(o.default.mark((function e(t){var n;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(new l.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t);case 2:if((n=e.sent).status===s.default.Success){e.next=5;break}throw new c.default({transactionReceipt:n,status:n.status,transactionId:this.transactionId});case 5:return e.abrupt("return",n);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"getRecord",value:(t=(0,a.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getReceipt(t);case 2:return e.abrupt("return",(new f.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),f=r(n(148)),d=r(n(254)),p=r(n(79)),h=r(n(204)),y=r(n(252)),m=n(150),b=n(37);function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeDuplicates",value:function(e){return this._includeDuplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._includeDuplicates&&this._includeDuplicates}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:b.ResponseCodeEnum.OK);switch(r){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return m.ExecutionState.Retry;case f.default.Ok:break;default:return m.ExecutionState.Error}var o=t.transactionGetReceipt.receipt.status;switch(r=f.default._fromCode(o)){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return m.ExecutionState.Retry;case f.default.Success:return m.ExecutionState.Finished;default:return m.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:b.ResponseCodeEnum.OK);switch(r){case f.default.Ok:break;default:return new h.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetReceipt,a=o.receipt.status;return r=f.default._fromCode(a),new y.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf(o)})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTransactionReceipts(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetReceipt.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetReceipt;return Promise.resolve(d.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetReceipt:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeDuplicates:this._includeDuplicates,includeChildReceipts:this._includeChildren}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetReceipt;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0,includeChildren:null!=t.includeChildReceipts?t.includeChildReceipts:void 0})}}]),n}(l.default);t.default=g,l.QUERY_REGISTRY.set("transactionGetReceipt",g._fromProtobuf)},function(e,t,n){"use strict";e.exports=n(976)},function(e,t,n){"use strict";e.exports=f;var r,o=n(149),a=o.LongBits,i=o.base64,u=o.utf8;function c(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}function s(){}function l(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}function f(){this.len=0,this.head=new c(s,0,0),this.tail=this.head,this.states=null}var d=function(){return o.Buffer?function(){return(f.create=function(){return new r})()}:function(){return new f}};function p(e,t,n){t[n]=255&e}function h(e,t){this.len=e,this.next=void 0,this.val=t}function y(e,t,n){for(;e.hi;)t[n++]=127&e.lo|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[n++]=127&e.lo|128,e.lo=e.lo>>>7;t[n++]=e.lo}function m(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}f.create=d(),f.alloc=function(e){return new o.Array(e)},o.Array!==Array&&(f.alloc=o.pool(f.alloc,o.Array.prototype.subarray)),f.prototype._push=function(e,t,n){return this.tail=this.tail.next=new c(e,t,n),this.len+=t,this},h.prototype=Object.create(c.prototype),h.prototype.fn=function(e,t,n){for(;e>127;)t[n++]=127&e|128,e>>>=7;t[n]=e},f.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new h((e>>>=0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this},f.prototype.int32=function(e){return e<0?this._push(y,10,a.fromNumber(e)):this.uint32(e)},f.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)},f.prototype.uint64=function(e){var t=a.from(e);return this._push(y,t.length(),t)},f.prototype.int64=f.prototype.uint64,f.prototype.sint64=function(e){var t=a.from(e).zzEncode();return this._push(y,t.length(),t)},f.prototype.bool=function(e){return this._push(p,1,e?1:0)},f.prototype.fixed32=function(e){return this._push(m,4,e>>>0)},f.prototype.sfixed32=f.prototype.fixed32,f.prototype.fixed64=function(e){var t=a.from(e);return this._push(m,4,t.lo)._push(m,4,t.hi)},f.prototype.sfixed64=f.prototype.fixed64,f.prototype.float=function(e){return this._push(o.float.writeFloatLE,4,e)},f.prototype.double=function(e){return this._push(o.float.writeDoubleLE,8,e)};var b=o.Array.prototype.set?function(e,t,n){t.set(e,n)}:function(e,t,n){for(var r=0;r>>0;if(!t)return this._push(p,1,0);if(o.isString(e)){var n=f.alloc(t=i.length(e));i.decode(e,n,0),e=n}return this.uint32(t)._push(b,t,e)},f.prototype.string=function(e){var t=u.length(e);return t?this.uint32(t)._push(u.write,t,e):this._push(p,1,0)},f.prototype.fork=function(){return this.states=new l(this),this.head=this.tail=new c(s,0,0),this.len=0,this},f.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new c(s,0,0),this.len=0),this},f.prototype.ldelim=function(){var e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=t,this.len+=n),this},f.prototype.finish=function(){for(var e=this.head.next,t=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t},f._configure=function(e){r=e,f.create=d(),r._configure()}},function(e,t,n){"use strict";e.exports=c;var r,o=n(149),a=o.LongBits,i=o.utf8;function u(e,t){return RangeError("index out of range: "+e.pos+" + "+(t||1)+" > "+e.len)}function c(e){this.buf=e,this.pos=0,this.len=e.length}var s,l="undefined"!=typeof Uint8Array?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new c(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new c(e);throw Error("illegal buffer")},f=function(){return o.Buffer?function(e){return(c.create=function(e){return o.Buffer.isBuffer(e)?new r(e):l(e)})(e)}:l};function d(){var e=new a(0,0),t=0;if(!(this.len-this.pos>4)){for(;t<3;++t){if(this.pos>=this.len)throw u(this);if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(127&this.buf[this.pos++])<<7*t)>>>0,e}for(;t<4;++t)if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(127&this.buf[this.pos])<<28)>>>0,e.hi=(e.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return e;if(t=0,this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw u(this);if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}function p(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}function h(){if(this.pos+8>this.len)throw u(this,8);return new a(p(this.buf,this.pos+=4),p(this.buf,this.pos+=4))}c.create=f(),c.prototype._slice=o.Array.prototype.subarray||o.Array.prototype.slice,c.prototype.uint32=(s=4294967295,function(){if(s=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return s;if((this.pos+=5)>this.len)throw this.pos=this.len,u(this,10);return s}),c.prototype.int32=function(){return 0|this.uint32()},c.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(1&e)|0},c.prototype.bool=function(){return 0!==this.uint32()},c.prototype.fixed32=function(){if(this.pos+4>this.len)throw u(this,4);return p(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw u(this,4);return 0|p(this.buf,this.pos+=4)},c.prototype.float=function(){if(this.pos+4>this.len)throw u(this,4);var e=o.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e},c.prototype.double=function(){if(this.pos+8>this.len)throw u(this,4);var e=o.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e},c.prototype.bytes=function(){var e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw u(this,e);return this.pos+=e,Array.isArray(this.buf)?this.buf.slice(t,n):t===n?new this.buf.constructor(0):this._slice.call(this.buf,t,n)},c.prototype.string=function(){var e=this.bytes();return i.read(e,0,e.length)},c.prototype.skip=function(e){if("number"==typeof e){if(this.pos+e>this.len)throw u(this,e);this.pos+=e}else do{if(this.pos>=this.len)throw u(this)}while(128&this.buf[this.pos++]);return this},c.prototype.skipType=function(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(e=7&this.uint32());)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+e+" at offset "+this.pos)}return this},c._configure=function(e){r=e,c.create=f(),r._configure();var t=o.Long?"toLong":"toNumber";o.merge(c.prototype,{int64:function(){return d.call(this)[t](!1)},uint64:function(){return d.call(this)[t](!0)},sint64:function(){return d.call(this).zzDecode()[t](!1)},fixed64:function(){return h.call(this)[t](!0)},sfixed64:function(){return h.call(this)[t](!1)}})}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.Ok:return"OK";case e.Cancelled:return"CANCELLED";case e.Unknown:return"UNKNOWN";case e.InvalidArgument:return"INVALID_ARGUMENT";case e.DeadlineExceeded:return"DEADLINE_EXCEEDED";case e.NotFound:return"NOT_FOUND";case e.AlreadyExists:return"ALREADY_EXISTS";case e.PermissionDenied:return"PERMISSION_DENIED";case e.Unauthenticated:return"UNAUTHENTICATED";case e.ResourceExhausted:return"RESOURCE_EXHAUSTED";case e.FailedPrecondition:return"FAILED_PRECONDITION";case e.Aborted:return"ABORTED";case e.OutOfRange:return"OUT_OF_RANGE";case e.Unimplemented:return"UNIMPLEMENTED";case e.Internal:return"INTERNAL";case e.Unavailable:return"UNAVAILABLE";case e.DataLoss:return"DATA_LOSS";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromValue",value:function(t){switch(t){case 0:return e.Ok;case 1:return e.Cancelled;case 2:return e.Unknown;case 3:return e.InvalidArgument;case 4:return e.DeadlineExceeded;case 5:return e.NotFound;case 6:return e.AlreadyExists;case 7:return e.PermissionDenied;case 16:return e.Unauthenticated;case 8:return e.ResourceExhausted;case 9:return e.FailedPrecondition;case 10:return e.Aborted;case 11:return e.OutOfRange;case 12:return e.Unimplemented;case 13:return e.Internal;case 14:return e.Unavailable;case 15:return e.DataLoss;default:throw new Error("(BUG) non-exhaustive GrpcStatus switch statement")}}}]),e}();t.default=i,i.Ok=new i(0),i.Cancelled=new i(1),i.Unknown=new i(2),i.InvalidArgument=new i(3),i.DeadlineExceeded=new i(4),i.NotFound=new i(5),i.AlreadyExists=new i(6),i.PermissionDenied=new i(7),i.Unauthenticated=new i(16),i.ResourceExhausted=new i(8),i.FailedPrecondition=new i(9),i.Aborted=new i(10),i.OutOfRange=new i(11),i.Unimplemented=new i(12),i.Internal=new i(13),i.Unavailable=new i(14),i.DataLoss=new i(15)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(21)),u=function(){function e(t){(0,o.default)(this,e),this.hbars=t.hbars,this.cents=t.cents,this.expirationTime=t.expirationTime,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{hbarEquiv:this.hbars,centEquiv:this.cents,expirationTime:{seconds:i.default.fromNumber(this.expirationTime.getSeconds())}}}}],[{key:"_fromProtobuf",value:function(t){return new e({hbars:t.hbarEquiv,cents:t.centEquiv,expirationTime:new Date(null!=t.expirationTime&&null!=t.expirationTime.seconds?t.expirationTime.seconds instanceof i.default?t.expirationTime.seconds.toInt():t.expirationTime.seconds:0)})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=k(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),f=r(n(323)),d=r(n(254)),p=r(n(79)),h=r(n(148)),y=r(n(204)),m=r(n(252)),b=n(150),v=n(37);function k(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(k=function(e){return e?n:t})(e)}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var _=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"setIncludeDuplicates",value:function(e){return this._duplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._duplicates&&this._duplicates}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return b.ExecutionState.Retry;case h.default.Ok:break;default:return b.ExecutionState.Error}var o=t.transactionGetRecord;if(o.header.responseType===v.ResponseType.COST_ANSWER)return b.ExecutionState.Finished;var a=o.transactionRecord.receipt.status;switch(r=h.default._fromCode(a)){case h.default.Ok:case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return b.ExecutionState.Retry;case h.default.Success:return b.ExecutionState.Finished;default:return b.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Ok:break;default:return new y.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetRecord.transactionRecord.receipt,a=o.status;return r=h.default._fromCode(a),new m.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf({receipt:o})})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTxRecordByTxID(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetRecord.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetRecord;return Promise.resolve(f.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetRecord:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeChildRecords:this._includeChildren,includeDuplicates:this._includeDuplicates}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetRecord;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeChildren:null!=t.includeChildRecords?t.includeChildRecords:void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0})}}]),n}(l.default);t.default=_,l.QUERY_REGISTRY.set("transactionGetRecord",_._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(59)),u=function(){function e(t){(0,o.default)(this,e),this.contractId=t.contractId,this.bloom=t.bloom,this.topics=t.topics,this.data=t.data,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),bloom:this.bloom,topic:this.topics,data:this.data}}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:i.default._fromProtobuf(t.contractID),bloom:null!=t.bloom?t.bloom:new Uint8Array,topics:null!=t.topic?t.topic:[],data:null!=t.data?t.data:new Uint8Array})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(12)),d=r(n(505));function p(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return h(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return h(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId),this._amount,null!=t.amount&&this.setAmount(t.amount),this._payerAccountIds,null!=t.payerAccountIds&&this.setPayerAccountIds(t.payerAccountIds)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?u.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?i.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?c.default.fromNumber(e):e,this}},{key:"payerAccountIds",get:function(){return this._payerAccountIds}},{key:"setPayerAccountIds",value:function(e){return this._payerAccountIds=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,amount:this._amount,effectivePayerAccountId:null!=this._payerAccountIds?this._payerAccountIds.map((function(e){return e._toProtobuf()})):null}}}],[{key:"_fromProtobuf",value:function(t){return new e({feeCollectorAccountId:null!=t.feeCollectorAccountId?u.default._fromProtobuf(t.feeCollectorAccountId):void 0,tokenId:null!=t.tokenId?i.default._fromProtobuf(t.tokenId):void 0,amount:null!=t.amount?t.amount:void 0,payerAccountIds:null!=t.effectivePayerAccountId?t.effectivePayerAccountId.map((function(e){return u.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(21)),u=r(n(12)),c=r(n(28));function s(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._contractId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoGetBalance(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptogetAccountBalance.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptogetAccountBalance;return Promise.resolve(p.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{cryptogetAccountBalance:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptogetAccountBalance;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,contractId:null!=t.contractID?d.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=m,l.QUERY_REGISTRY.set("cryptogetAccountBalance",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(12)),c=r(n(326)),s=r(n(35)),l=r(n(46)),f=r(n(21)),d=r(n(513)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37)),h=r(n(65)),y=r(n(45)),m=r(n(110)),b=r(n(97)),v=r(n(255)),k=r(n(256)),g=r(n(257));function _(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(_=function(e){return e?n:t})(e)}var w=function(){function e(t){(0,a.default)(this,e),this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.isDeleted=t.isDeleted,this.proxyAccountId=t.proxyAccountId,this.proxyReceived=t.proxyReceived,this.key=t.key,this.balance=t.balance,this.sendRecordThreshold=t.sendRecordThreshold,this.receiveRecordThreshold=t.receiveRecordThreshold,this.isReceiverSignatureRequired=t.isReceiverSignatureRequired,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.liveHashes=t.liveHashes,this.tokenRelationships=t.tokenRelationships,this.accountMemo=t.accountMemo,this.ownedNfts=t.ownedNfts,this.maxAutomaticTokenAssociations=t.maxAutomaticTokenAssociations,this.aliasKey=t.aliasKey,this.ledgerId=t.ledgerId,this.hbarAllowances=t.hbarAllowances,this.tokenAllowances=t.tokenAllowances,this.nftAllowances=t.nftAllowances,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,deleted:this.isDeleted,proxyAccountID:null!=this.proxyAccountId?this.proxyAccountId._toProtobuf():null,proxyReceived:this.proxyReceived.toTinybars(),key:this.key._toProtobufKey(),balance:this.balance.toTinybars(),generateSendRecordThreshold:this.sendRecordThreshold.toTinybars(),generateReceiveRecordThreshold:this.receiveRecordThreshold.toTinybars(),receiverSigRequired:this.isReceiverSignatureRequired,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:this.autoRenewPeriod._toProtobuf(),liveHashes:this.liveHashes.map((function(e){return e._toProtobuf()})),tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,memo:this.accountMemo,ownedNfts:this.ownedNfts,maxAutomaticTokenAssociations:this.maxAutomaticTokenAssociations.toInt(),alias:null!=this.aliasKey?p.Key.encode(this.aliasKey._toProtobufKey()).finish():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.CryptoGetInfoResponse.AccountInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=null!=t.alias&&t.alias.length>0?y.default._fromProtobufKey(p.Key.decode(t.alias)):null;return n instanceof m.default||(n=null),new e({accountId:u.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:null,isDeleted:null!=t.deleted&&t.deleted,key:y.default._fromProtobufKey(t.key),balance:s.default.fromTinybars(null!=t.balance?t.balance:0),sendRecordThreshold:s.default.fromTinybars(null!=t.generateSendRecordThreshold?t.generateSendRecordThreshold:0),receiveRecordThreshold:s.default.fromTinybars(null!=t.generateReceiveRecordThreshold?t.generateReceiveRecordThreshold:0),isReceiverSignatureRequired:null!=t.receiverSigRequired&&t.receiverSigRequired,expirationTime:l.default._fromProtobuf(t.expirationTime),autoRenewPeriod:null!=t.autoRenewPeriod?new h.default(t.autoRenewPeriod.seconds):new h.default(0),proxyAccountId:null!=t.proxyAccountID&&0!==f.default.fromValue(t.proxyAccountID.shardNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.realmNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.accountNum).toInt()?u.default._fromProtobuf(t.proxyAccountID):null,proxyReceived:s.default.fromTinybars(null!=t.proxyReceived?t.proxyReceived:0),liveHashes:(null!=t.liveHashes?t.liveHashes:[]).map((function(e){return c.default._fromProtobuf(e)})),tokenRelationships:d.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),accountMemo:null!=t.memo?t.memo:"",ownedNfts:t.ownedNfts?t.ownedNfts:f.default.ZERO,maxAutomaticTokenAssociations:t.maxAutomaticTokenAssociations?f.default.fromNumber(t.maxAutomaticTokenAssociations):f.default.ZERO,aliasKey:n,ledgerId:null!=t.ledgerId?b.default.fromBytes(t.ledgerId):null,hbarAllowances:(null!=t.cryptoAllowances?t.cryptoAllowances:[]).map((function(e){return v.default._fromProtobuf(e)})),tokenAllowances:(null!=t.tokenAllowances?t.tokenAllowances:[]).map((function(e){return k.default._fromProtobuf(e)})),nftAllowances:(null!=t.nftAllowances?t.nftAllowances:[]).map((function(e){return g.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.CryptoGetInfoResponse.AccountInfo.decode(t))}}]),e}();t.default=w},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(1004));function d(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._publicKey=null,null!=t.publicKey&&this.setPublicKey(t.publicKey),this._nodeId=null,null!=t.nodeId&&this.setNodeId(t.nodeId),this._accountId=null,null!=t.accountId&&this.setAccountId(t.accountId),this._certHash=null,null!=t.certHash&&this.setCertHash(t.certHash),this._addresses=[],null!=t.addresses&&this.setAddresses(t.addresses),this._description=null,null!=t.description&&this.setDescription(t.description),this._stake=null,null!=t.stake&&this.setStake(t.stake)}return(0,i.default)(e,[{key:"publicKey",get:function(){return this._publicKey}},{key:"setPublicKey",value:function(e){return this._publicKey=e,this}},{key:"nodeId",get:function(){return this._nodeId}},{key:"setNodeId",value:function(e){return this._nodeId=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?u.default.fromString(e):e.clone(),this}},{key:"certHash",get:function(){return this._certHash}},{key:"setCertHash",value:function(e){return this._certHash=e,this}},{key:"addresses",get:function(){return this._addresses}},{key:"setAddresses",value:function(e){return this._addresses=e,this}},{key:"description",get:function(){return this._description}},{key:"setDescription",value:function(e){return this._description=e,this}},{key:"stake",get:function(){return this._stake}},{key:"setStake",value:function(e){return this._stake=e,this}},{key:"_toProtobuf",value:function(){return{RSA_PubKey:this._publicKey,nodeId:this._nodeId,nodeAccountId:null!=this._accountId?this._accountId._toProtobuf():null,nodeCertHash:this._certHash,serviceEndpoint:this._addresses.map((function(e){return e._toProtobuf()})),description:this._description,stake:this._stake}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{publicKey:this._publicKey,nodeId:null!=this._nodeId?this._nodeId.toString():null,accountId:null!=this._accountId?this._accountId.toString():null,certHash:null!=this._certHash?s.decode(this._certHash):null,addresses:this._addresses.map((function(e){return e.toJSON()})),description:this._description,stake:null!=this._stake?this._stake.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({publicKey:null!=t.RSA_PubKey?t.RSA_PubKey:void 0,nodeId:null!=t.nodeId?t.nodeId:void 0,accountId:null!=t.nodeAccountId?u.default._fromProtobuf(t.nodeAccountId):void 0,certHash:null!=t.nodeCertHash?t.nodeCertHash:void 0,addresses:null!=t.serviceEndpoint?t.serviceEndpoint.map((function(e){return c.default._fromProtobuf(e)})):void 0,description:null!=t.description?t.description:void 0,stake:null!=t.stake?t.stake:void 0})}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(515)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._nodeAddresses=[],null!=t.nodeAddresses&&this.setNodeAddresses(t.nodeAddresses)}return(0,a.default)(e,[{key:"nodeAddresses",get:function(){return this._nodeAddresses}},{key:"setNodeAddresses",value:function(e){return this._nodeAddresses=e,this}},{key:"_toProtobuf",value:function(){return{nodeAddress:this._nodeAddresses.map((function(e){return e._toProtobuf()}))}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{nodeAddresses:this._nodeAddresses.map((function(e){return e.toJSON()}))}}}],[{key:"_fromProtobuf",value:function(t){return new e({nodeAddresses:null!=t.nodeAddress?t.nodeAddress.map((function(e){return i.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.ArgumentType=void 0;var a=r(n(1)),i=r(n(2)),u=n(1015),c=f(n(78)),s=f(n(111));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d={uint8:0,int8:1,uint16:2,int16:3,uint32:4,int32:5,uint64:6,int64:7,uint256:8,int256:9,string:10,bool:11,bytes:12,bytes32:13,address:14,func:15};t.ArgumentType=d;var p=function(){function e(t){(0,a.default)(this,e),this.name=null,this._params="",this._paramTypes=[],null!=t&&(this._name=t)}return(0,i.default)(e,[{key:"addString",value:function(){return this._addParam({ty:d.string,array:!1})}},{key:"addStringArray",value:function(){return this._addParam({ty:d.string,array:!0})}},{key:"addBytes",value:function(){return this._addParam({ty:d.bytes,array:!1})}},{key:"addBytes32",value:function(){return this._addParam({ty:d.bytes32,array:!1})}},{key:"addBytesArray",value:function(){return this._addParam({ty:d.bytes,array:!0})}},{key:"addBytes32Array",value:function(){return this._addParam({ty:d.bytes32,array:!0})}},{key:"addInt8",value:function(){return this._addParam({ty:d.int8,array:!1})}},{key:"addInt32",value:function(){return this._addParam({ty:d.int32,array:!1})}},{key:"addInt64",value:function(){return this._addParam({ty:d.int64,array:!1})}},{key:"addInt256",value:function(){return this._addParam({ty:d.int256,array:!1})}},{key:"addInt8Array",value:function(){return this._addParam({ty:d.int8,array:!0})}},{key:"addInt32Array",value:function(){return this._addParam({ty:d.int32,array:!0})}},{key:"addInt64Array",value:function(){return this._addParam({ty:d.int64,array:!0})}},{key:"addInt256Array",value:function(){return this._addParam({ty:d.int256,array:!0})}},{key:"addUint8",value:function(){return this._addParam({ty:d.uint8,array:!1})}},{key:"addUint32",value:function(){return this._addParam({ty:d.uint32,array:!1})}},{key:"addUint64",value:function(){return this._addParam({ty:d.uint64,array:!1})}},{key:"addUint256",value:function(){return this._addParam({ty:d.uint256,array:!1})}},{key:"addUint8Array",value:function(){return this._addParam({ty:d.uint8,array:!0})}},{key:"addUint32Array",value:function(){return this._addParam({ty:d.uint32,array:!0})}},{key:"addUint64Array",value:function(){return this._addParam({ty:d.uint64,array:!0})}},{key:"addUint256Array",value:function(){return this._addParam({ty:d.uint256,array:!0})}},{key:"addBool",value:function(){return this._addParam({ty:d.bool,array:!1})}},{key:"addAddress",value:function(){return this._addParam({ty:d.address,array:!1})}},{key:"addAddressArray",value:function(){return this._addParam({ty:d.address,array:!0})}},{key:"addFunction",value:function(){return this._addParam({ty:d.func,array:!1})}},{key:"_addParam",value:function(e){return this._paramTypes.length>0&&(this._params+=","),this._params+=function(e){var t="";switch(e.ty){case d.uint8:t="uint8";break;case d.int8:t="int8";break;case d.uint16:t="uint16";break;case d.int16:t="int16";break;case d.uint32:t="uint32";break;case d.int32:t="int32";break;case d.uint64:t="uint64";break;case d.int64:t="int64";break;case d.uint256:t="uint256";break;case d.int256:t="int256";break;case d.string:t="string";break;case d.bool:t="bool";break;case d.bytes:t="bytes";break;case d.bytes32:t="bytes32";break;case d.address:t="address";break;case d.func:t="function";break;default:t=""}e.array&&(t+="[]");return t}(e),this._paramTypes.push(e),this}},{key:"_build",value:function(e){if(null!=e)this._name=e;else if(null==this._name)throw new Error("`name` required for ContractFunctionSelector");var t=c.encode(s.encode(this.toString()));return c.decode((0,u.keccak256)("0x".concat(t))).slice(0,4)}},{key:"toString",value:function(){return"".concat(null!=this._name?this._name.toString():"","(").concat(this._params,")")}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(59)),c=r(n(12)),s=r(n(46)),l=r(n(65)),f=r(n(35)),d=r(n(21)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37)),h=r(n(513)),y=r(n(45)),m=r(n(97));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}var v=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.storage=t.storage,this.contractMemo=t.contractMemo,this.balance=t.balance,this.isDeleted=t.isDeleted,this.tokenRelationships=t.tokenRelationships,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,storage:this.storage,memo:this.contractMemo,balance:this.balance.toTinybars(),deleted:this.isDeleted,tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.ContractGetInfoResponse.ContractInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.autoRenewPeriod.seconds;return new e({contractId:u.default._fromProtobuf(t.contractID),accountId:c.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:"",adminKey:null!=t.adminKey?y.default._fromProtobufKey(t.adminKey):null,expirationTime:s.default._fromProtobuf(t.expirationTime),autoRenewPeriod:new l.default(n),storage:null!=t.storage?t.storage instanceof d.default?t.storage:d.default.fromValue(t.storage):d.default.ZERO,contractMemo:null!=t.memo?t.memo:"",balance:f.default.fromTinybars(null!=t.balance?t.balance:0),isDeleted:t.deleted,tokenRelationships:h.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),ledgerId:null!=t.ledgerId?m.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.ContractGetInfoResponse.ContractInfo.decode(t))}}]),e}();t.default=v},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(64)),c=r(n(46)),s=r(n(21)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37)),f=r(n(147)),d=r(n(97));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}var h=function(){function e(t){(0,a.default)(this,e),this.fileId=t.fileId,this.size=t.size,this.expirationTime=t.expirationTime,this.isDeleted=t.isDeleted,this.keys=t.keys,this.fileMemo=t.fileMemo,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{fileID:this.fileId._toProtobuf(),size:this.size,expirationTime:this.expirationTime._toProtobuf(),deleted:this.isDeleted,keys:this.keys._toProtobufKey().keyList,memo:this.fileMemo,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return l.FileGetInfoResponse.FileInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.size;return new e({fileId:u.default._fromProtobuf(t.fileID),size:n instanceof s.default?n:s.default.fromValue(n),expirationTime:c.default._fromProtobuf(t.expirationTime),isDeleted:t.deleted,keys:null!=t.keys?f.default.__fromProtobufKeyList(t.keys):new f.default,fileMemo:null!=t.memo?t.memo:"",ledgerId:null!=t.ledgerId?d.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.FileGetInfoResponse.FileInfo.decode(t))}}]),e}();t.default=h},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(521)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}var l=function(){function e(t){(0,a.default)(this,e),this.protobufVersion=t.protobufVersion,this.servicesVesion=t.servicesVesion,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{hapiProtoVersion:this.protobufVersion._toProtobuf(),hederaServicesVersion:this.servicesVesion._toProtobuf()}}},{key:"toBytes",value:function(){return c.NetworkGetVersionInfoResponse.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({protobufVersion:u.default._fromProtobuf(t.hapiProtoVersion),servicesVesion:u.default._fromProtobuf(t.hederaServicesVersion)})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(c.NetworkGetVersionInfoResponse.decode(t))}}]),e}();t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.major=t.major,this.minor=t.minor,this.patch=t.patch,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{major:this.major,minor:this.minor,patch:this.patch}}},{key:"toBytes",value:function(){return u.SemanticVersion.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({major:t.major,minor:t.minor,patch:t.patch})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.SemanticVersion.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(107)),a=r(n(1)),i=r(n(2)),u=r(n(151)),c=r(n(12)),s=r(n(46)),l=r(n(23)),f=n(37),d=r(n(79)),p=r(n(45)),h=r(n(147)),y=function(){function e(t){(0,a.default)(this,e),this.scheduleId=t.scheduleId,this.creatorAccountId=t.creatorAccountID,this.payerAccountId=t.payerAccountID,this.schedulableTransactionBody=t.schedulableTransactionBody,this.signers=t.signers,this.scheduleMemo=t.scheduleMemo,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.executed=t.executed,this.deleted=t.deleted,this.scheduledTransactionId=t.scheduledTransactionId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{scheduleID:null!=this.scheduleId?this.scheduleId._toProtobuf():null,creatorAccountID:null!=this.creatorAccountId?this.creatorAccountId._toProtobuf():null,payerAccountID:null!=this.payerAccountId?this.payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this.schedulableTransactionBody?this.schedulableTransactionBody:null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,signers:null!=this.signers?this.signers._toProtobufKey().keyList:null,memo:null!=this.scheduleMemo?this.scheduleMemo:"",expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,scheduledTransactionID:null!=this.scheduledTransactionId?this.scheduledTransactionId._toProtobuf():null}}},{key:"scheduledTransaction",get:function(){if(null==this.schedulableTransactionBody)throw new Error("Scheduled transaction body is empty");var e=new f.SchedulableTransactionBody(this.schedulableTransactionBody),t=e.data;return l.default.fromBytes(f.TransactionList.encode({transactionList:[{signedTransactionBytes:f.SignedTransaction.encode({bodyBytes:f.TransactionBody.encode((0,o.default)({transactionFee:this.schedulableTransactionBody.transactionFee,memo:this.schedulableTransactionBody.memo},t,e[t])).finish()}).finish()}]}).finish())}}],[{key:"_fromProtobuf",value:function(t){return new e({scheduleId:u.default._fromProtobuf(t.scheduleID),creatorAccountID:null!=t.creatorAccountID?c.default._fromProtobuf(t.creatorAccountID):null,payerAccountID:null!=t.payerAccountID?c.default._fromProtobuf(t.payerAccountID):null,schedulableTransactionBody:null!=t.scheduledTransactionBody?t.scheduledTransactionBody:null,adminKey:null!=t.adminKey?p.default._fromProtobufKey(t.adminKey):null,signers:null!=t.signers?h.default.__fromProtobufKeyList(t.signers):null,scheduleMemo:null!=t.memo?t.memo:null,expirationTime:null!=t.expirationTime?s.default._fromProtobuf(t.expirationTime):null,executed:null!=t.executionTime?s.default._fromProtobuf(t.executionTime):null,deleted:null!=t.deletionTime?s.default._fromProtobuf(t.deletionTime):null,scheduledTransactionId:null!=t.scheduledTransactionID?d.default._fromProtobuf(t.scheduledTransactionID):null})}}]),e}();t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(28)),c=r(n(12)),s=r(n(65)),l=r(n(46)),f=r(n(21)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37)),p=r(n(327)),h=r(n(328)),y=r(n(205)),m=r(n(260)),b=r(n(261)),v=r(n(45)),k=r(n(97));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}var _=function(){function e(t){(0,a.default)(this,e),this.tokenId=t.tokenId,this.name=t.name,this.symbol=t.symbol,this.decimals=t.decimals,this.totalSupply=t.totalSupply,this.treasuryAccountId=t.treasuryAccountId,this.adminKey=t.adminKey,this.kycKey=t.kycKey,this.freezeKey=t.freezeKey,this.pauseKey=t.pauseKey,this.wipeKey=t.wipeKey,this.supplyKey=t.supplyKey,this.feeScheduleKey=t.feeScheduleKey,this.defaultFreezeStatus=t.defaultFreezeStatus,this.defaultKycStatus=t.defaultKycStatus,this.pauseStatus=t.pauseStatus,this.isDeleted=t.isDeleted,this.autoRenewAccountId=t.autoRenewAccountId,this.autoRenewPeriod=t.autoRenewPeriod,this.expirationTime=t.expirationTime,this.tokenMemo=t.tokenMemo,this.customFees=t.customFees,this.tokenType=t.tokenType,this.supplyType=t.supplyType,this.maxSupply=t.maxSupply,this.ledgerId=t.ledgerId}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),name:this.name,symbol:this.symbol,decimals:this.decimals,totalSupply:this.totalSupply,treasury:null!=this.treasuryAccountId?this.treasuryAccountId._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,kycKey:null!=this.kycKey?this.kycKey._toProtobufKey():null,freezeKey:null!=this.freezeKey?this.freezeKey._toProtobufKey():null,pauseKey:null!=this.pauseKey?this.pauseKey._toProtobufKey():null,wipeKey:null!=this.wipeKey?this.wipeKey._toProtobufKey():null,supplyKey:null!=this.supplyKey?this.supplyKey._toProtobufKey():null,feeScheduleKey:null!=this.feeScheduleKey?this.feeScheduleKey._toProtobufKey():null,defaultFreezeStatus:null==this.defaultFreezeStatus?0:this.defaultFreezeStatus?1:2,defaultKycStatus:null==this.defaultKycStatus?0:this.defaultKycStatus?1:2,pauseStatus:null==this.pauseStatus?0:this.pauseStatus?1:2,deleted:this.isDeleted,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():void 0,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,expiry:null!=this.expirationTime?this.expirationTime._toProtobuf():null,memo:this.tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this.tokenType?this.tokenType._code:null,supplyType:null!=this.supplyType?this.supplyType._code:null,maxSupply:this.maxSupply,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return d.TokenInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.defaultFreezeStatus,r=t.defaultKycStatus,o=t.pauseStatus,a=null!=t.autoRenewAccount?c.default._fromProtobuf(t.autoRenewAccount):new c.default(0);return new e({tokenId:u.default._fromProtobuf(t.tokenId),name:t.name,symbol:t.symbol,decimals:t.decimals,totalSupply:f.default.fromValue(t.totalSupply),treasuryAccountId:null!=t.treasury?c.default._fromProtobuf(t.treasury):null,adminKey:null!=t.adminKey?v.default._fromProtobufKey(t.adminKey):null,kycKey:null!=t.kycKey?v.default._fromProtobufKey(t.kycKey):null,freezeKey:null!=t.freezeKey?v.default._fromProtobufKey(t.freezeKey):null,pauseKey:null!=t.pauseKey?v.default._fromProtobufKey(t.pauseKey):null,wipeKey:null!=t.wipeKey?v.default._fromProtobufKey(t.wipeKey):null,supplyKey:null!=t.supplyKey?v.default._fromProtobufKey(t.supplyKey):null,feeScheduleKey:null!=t.feeScheduleKey?v.default._fromProtobufKey(t.feeScheduleKey):null,defaultFreezeStatus:0===n?null:1==n,defaultKycStatus:0===r?null:1==r,pauseStatus:0===o?null:1==o,isDeleted:t.deleted,autoRenewAccountId:0!=a.shard.toInt()||0!=a.realm.toInt()||0!=a.num.toInt()?a:null,autoRenewPeriod:null!=t.autoRenewPeriod?s.default._fromProtobuf(t.autoRenewPeriod):null,expirationTime:null!=t.expiry?l.default._fromProtobuf(t.expiry):null,tokenMemo:null!=t.memo?t.memo:"",customFees:null!=t.customFees?t.customFees.map((function(e){return null!=e.fixedFee?y.default._fromProtobuf(e):null!=e.fractionalFee?m.default._fromProtobuf(e):b.default._fromProtobuf(e)})):[],tokenType:null!=t.tokenType?p.default._fromCode(t.tokenType):null,supplyType:null!=t.supplyType?h.default._fromCode(t.supplyType):null,maxSupply:null!=t.maxSupply?t.maxSupply:null,ledgerId:null!=t.ledgerId?k.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.TokenInfo.decode(t))}}]),e}();t.default=_},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(180)),c=r(n(12)),s=r(n(46)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(78)),f=r(n(97));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t){(0,a.default)(this,e),this.nftId=t.nftId,this.accountId=t.accountId,this.creationTime=t.creationTime,this.metadata=t.metadata,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{nftID:this.nftId._toProtobuf(),accountID:this.accountId._toProtobuf(),creationTime:this.creationTime._toProtobuf(),metadata:this.metadata,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toJson",value:function(){return{nftId:this.nftId.toString(),accountId:this.accountId.toString(),creationTime:this.creationTime.toString(),metadata:null!=this.metadata?l.encode(this.metadata):null,ledgerId:null!=this.ledgerId?this.ledgerId.toString():null}}},{key:"toString",value:function(){return JSON.stringify(this.toJson())}}],[{key:"_fromProtobuf",value:function(t){return new e({nftId:u.default._fromProtobuf(t.nftID),accountId:c.default._fromProtobuf(t.accountID),creationTime:s.default._fromProtobuf(t.creationTime),metadata:void 0!==t.metadata?t.metadata:null,ledgerId:null!=t.ledgerId?f.default.fromBytes(t.ledgerId):null})}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(124)),c=r(n(12)),s=r(n(46)),l=r(n(21)),f=r(n(65)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37)),p=r(n(45)),h=r(n(97));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var m=function(){function e(t){(0,a.default)(this,e),this.topicId=t.topicId,this.topicMemo=t.topicMemo,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.expirationTime=t.expirationTime,this.adminKey=t.adminKey,this.submitKey=t.submitKey,this.autoRenewPeriod=t.autoRenewPeriod,this.autoRenewAccountId=t.autoRenewAccountId,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{topicID:this.topicId._toProtobuf(),topicInfo:{memo:this.topicMemo,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber,expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,submitKey:null!=this.submitKey?this.submitKey._toProtobufKey():null,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():null}}}},{key:"toBytes",value:function(){return d.ConsensusTopicInfo.encode(this._toProtobuf().topicInfo).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.topicInfo;return new e({topicId:u.default._fromProtobuf(t.topicID),topicMemo:null!=n.memo?n.memo:"",runningHash:null!=n.runningHash?n.runningHash:new Uint8Array,sequenceNumber:null!=n.sequenceNumber?n.sequenceNumber instanceof l.default?n.sequenceNumber:l.default.fromValue(n.sequenceNumber):l.default.ZERO,expirationTime:null!=n.expirationTime?s.default._fromProtobuf(n.expirationTime):null,adminKey:null!=n.adminKey?p.default._fromProtobufKey(n.adminKey):null,submitKey:null!=n.submitKey?p.default._fromProtobufKey(n.submitKey):null,autoRenewPeriod:null!=n.autoRenewPeriod?new f.default(n.autoRenewPeriod.seconds):null,autoRenewAccountId:null!=n.autoRenewAccount?c.default._fromProtobuf(n.autoRenewAccount):null,ledgerId:null!=n.ledgerId?h.default.fromBytes(n.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf({topicInfo:d.ConsensusTopicInfo.decode(t)})}}]),e}();t.default=m},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(46)),u=r(n(527)),c=r(n(21)),s=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.chunks=t.chunks,Object.freeze(this)}return(0,a.default)(e,null,[{key:"_ofSingle",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof c.default?t.sequenceNumber:c.default.fromNumber(t.sequenceNumber):c.default.ZERO,chunks:[u.default._fromProtobuf(t)]})}},{key:"_ofMany",value:function(t){var n=t[t.length-1],r=i.default._fromProtobuf(n.consensusTimestamp),o=n.runningHash,a=null!=n.sequenceNumber?n.sequenceNumber instanceof c.default?n.sequenceNumber:c.default.fromValue(n.sequenceNumber):c.default.ZERO;t.sort((function(e,t){return(null!=e&&null!=e.chunkInfo&&null!=e.chunkInfo.number?e.chunkInfo.number:0)<(null!=t&&null!=t.chunkInfo&&null!=t.chunkInfo.number?t.chunkInfo.number:0)?-1:1}));var s=t.map((function(e){return u.default._fromProtobuf(e)})),l=s.map((function(e){return e.contents.length})).reduce((function(e,t){return e+t}),0),f=new Uint8Array(l),d=0;return t.forEach((function(e){f.set(e.message,d),d+=e.message.length})),new e({consensusTimestamp:r,contents:f,runningHash:o,sequenceNumber:a,chunks:s})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(46)),u=r(n(21)),c=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{consensusTimestamp:this.consensusTimestamp._toProtobuf(),message:this.contents,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber}}}],[{key:"_fromProtobuf",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof u.default?t.sequenceNumber:u.default.fromValue(t.sequenceNumber):u.default.ZERO})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(1073)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.newNode)this._address="string"==typeof t.newNode.address?i.default.fromString(t.newNode.address):t.newNode.address,this._cert=void 0,this._channel=null,this._channelInitFunction=t.newNode.channelInitFunction,this._currentBackoff=250,this._lastUsed=Date.now(),this._backoffUntil=Date.now(),this._useCount=0,this._attempts=0,this._minBackoff=250,this._maxBackoff=8e3;else{if(null==t.cloneNode)throw new Error("failed to create ManagedNode: ".concat(JSON.stringify(t)));this._address=t.cloneNode.address,this._cert=t.cloneNode.node._cert,this._channel=t.cloneNode.node._channel,this._channelInitFunction=t.cloneNode.node._channelInitFunction,this._currentBackoff=t.cloneNode.node._currentBackoff,this._lastUsed=t.cloneNode.node._lastUsed,this._backoffUntil=t.cloneNode.node._backoffUntil,this._useCount=t.cloneNode.node._useCount,this._attempts=t.cloneNode.node._attempts,this._minBackoff=t.cloneNode.node._minBackoff,this._maxBackoff=t.cloneNode.node._minBackoff}}return(0,a.default)(e,[{key:"getKey",value:function(){throw new Error("not implemented")}},{key:"toInsecure",value:function(){throw new Error("not implemented")}},{key:"toSecure",value:function(){throw new Error("not implemented")}},{key:"setCert",value:function(e){return this}},{key:"address",get:function(){return this._address}},{key:"attempts",get:function(){return this._attempts}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._minBackoff=e,this}},{key:"maxBackoff",get:function(){return this._maxBackoff}},{key:"setmaxBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._maxBackoff=e,this}},{key:"getChannel",value:function(){return this._useCount++,this.__lastUsed=Date.now(),null!=this._channel||(this._channel=this._channelInitFunction(this.address.toString(),this._cert)),this._channel}},{key:"isHealthy",value:function(){return this._backoffUntil<=Date.now()}},{key:"increaseDelay",value:function(){this._currentBackoff=Math.min(2*this._currentBackoff,this._maxBackoff),this._backoffUntil=Date.now()+this._currentBackoff}},{key:"decreaseDelay",value:function(){this._currentBackoff=Math.max(this._currentBackoff/2,this._minBackoff)}},{key:"wait",value:function(){var e=this._backoffUntil-this._lastUsed;return new Promise((function(t){return setTimeout(t,e)}))}},{key:"compare",value:function(e){return this.isHealthy()&&e.isHealthy()?this._useCounte._useCount?1:this._lastUsede._lastUsed?1:0:this.isHealthy()&&!e.isHealthy()?-1:!this.isHealthy()&&e.isHealthy()?1:this._useCounte._useCount?1:this._lastUsede._lastUsed?1:0}},{key:"close",value:function(){null!=this._channel&&this._channel.close(),this._channel=null}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(97));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)for(var e=this._nodes.length-1;e>=0;e--){this._nodes[e]._attempts=e)break;i.has(s.getKey())||a.push(s)}}catch(e){u.e(e)}finally{u.f()}return a}},{key:"_closeNode",value:function(e){var t=this._nodes[e];t.close(),this._removeNodeFromNetwork(t),this._nodes.splice(e,1)}},{key:"_removeNodeFromNetwork",value:function(e){for(var t=this._network.get(e.getKey()),n=0;n>6|192);else{if(o>55295&&o<56320){if(++r==e.length)return null;var a=e.charCodeAt(r);if(a<56320||a>57343)return null;n+=t((o=65536+((1023&o)<<10)+(1023&a))>>18|240),n+=t(o>>12&63|128)}else n+=t(o>>12|224);n+=t(o>>6&63|128)}n+=t(63&o|128)}}return n},toString:function(e){for(var t="",n=0,a=o(e);n127){if(i>191&&i<224){if(n>=a)return null;i=(31&i)<<6|63&r(e,n)}else if(i>223&&i<240){if(n+1>=a)return null;i=(15&i)<<12|(63&r(e,n))<<6|63&r(e,++n)}else{if(!(i>239&&i<248))return null;if(n+2>=a)return null;i=(7&i)<<18|(63&r(e,n))<<12|(63&r(e,++n))<<6|63&r(e,++n)}++n}if(i<=65535)t+=String.fromCharCode(i);else{if(!(i<=1114111))return null;i-=65536,t+=String.fromCharCode(i>>10|55296),t+=String.fromCharCode(1023&i|56320)}}return t},fromNumber:function(e){var t=e.toString(16);return t.length%2==0?"0x"+t:"0x0"+t},toNumber:function(e){return parseInt(e.slice(2),16)},fromNat:function(e){return"0x0"===e?"0x":e.length%2==0?e:"0x0"+e.slice(2)},toNat:function(e){return"0"===e[2]?"0x"+e.slice(3):e},fromArray:i,toArray:a,fromUint8Array:function(e){return i([].slice.call(e,0))},toUint8Array:function(e){return new Uint8Array(a(e))}}},function(e,t,n){"use strict";var r=n(16),o=n(1082),a=n(120),i=n(26).Buffer,u=n(532),c=n(308),s=n(309),l=i.alloc(128);function f(e,t){a.call(this,"digest"),"string"==typeof t&&(t=i.from(t));var n="sha512"===e||"sha384"===e?128:64;(this._alg=e,this._key=t,t.length>n)?t=("rmd160"===e?new c:s(e)).update(t).digest():t.lengthr||t!=t)throw new TypeError("Bad key length")}},function(e,t,n){"use strict";(function(t,n){var r;if(t.process&&t.process.browser)r="utf-8";else if(t.process&&t.process.version){r=parseInt(n.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary"}else r="utf-8";e.exports=r}).call(this,n(40),n(34))},function(e,t,n){"use strict";var r=n(532),o=n(308),a=n(309),i=n(26).Buffer,u=n(535),c=n(536),s=n(538),l=i.alloc(128),f={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function d(e,t,n){var u=function(e){function t(t){return a(e).update(t).digest()}return"rmd160"===e||"ripemd160"===e?function(e){return(new o).update(e).digest()}:"md5"===e?r:t}(e),c="sha512"===e||"sha384"===e?128:64;t.length>c?t=u(t):t.length>>0},t.writeUInt32BE=function(e,t,n){e[0+n]=t>>>24,e[1+n]=t>>>16&255,e[2+n]=t>>>8&255,e[3+n]=255&t},t.ip=function(e,t,n,r){for(var o=0,a=0,i=6;i>=0;i-=2){for(var u=0;u<=24;u+=8)o<<=1,o|=t>>>u+i&1;for(u=0;u<=24;u+=8)o<<=1,o|=e>>>u+i&1}for(i=6;i>=0;i-=2){for(u=1;u<=25;u+=8)a<<=1,a|=t>>>u+i&1;for(u=1;u<=25;u+=8)a<<=1,a|=e>>>u+i&1}n[r+0]=o>>>0,n[r+1]=a>>>0},t.rip=function(e,t,n,r){for(var o=0,a=0,i=0;i<4;i++)for(var u=24;u>=0;u-=8)o<<=1,o|=t>>>u+i&1,o<<=1,o|=e>>>u+i&1;for(i=4;i<8;i++)for(u=24;u>=0;u-=8)a<<=1,a|=t>>>u+i&1,a<<=1,a|=e>>>u+i&1;n[r+0]=o>>>0,n[r+1]=a>>>0},t.pc1=function(e,t,n,r){for(var o=0,a=0,i=7;i>=5;i--){for(var u=0;u<=24;u+=8)o<<=1,o|=t>>u+i&1;for(u=0;u<=24;u+=8)o<<=1,o|=e>>u+i&1}for(u=0;u<=24;u+=8)o<<=1,o|=t>>u+i&1;for(i=1;i<=3;i++){for(u=0;u<=24;u+=8)a<<=1,a|=t>>u+i&1;for(u=0;u<=24;u+=8)a<<=1,a|=e>>u+i&1}for(u=0;u<=24;u+=8)a<<=1,a|=e>>u+i&1;n[r+0]=o>>>0,n[r+1]=a>>>0},t.r28shl=function(e,t){return e<>>28-t};var r=[14,11,17,4,27,23,25,0,13,22,7,18,5,9,16,24,2,20,12,21,1,8,15,26,15,4,25,19,9,1,26,16,5,11,23,8,12,7,17,0,22,3,10,14,6,20,27,24];t.pc2=function(e,t,n,o){for(var a=0,i=0,u=r.length>>>1,c=0;c>>r[c]&1;for(c=u;c>>r[c]&1;n[o+0]=a>>>0,n[o+1]=i>>>0},t.expand=function(e,t,n){var r=0,o=0;r=(1&e)<<5|e>>>27;for(var a=23;a>=15;a-=4)r<<=6,r|=e>>>a&63;for(a=11;a>=3;a-=4)o|=e>>>a&63,o<<=6;o|=(31&e)<<1|e>>>31,t[n+0]=r>>>0,t[n+1]=o>>>0};var o=[14,0,4,15,13,7,1,4,2,14,15,2,11,13,8,1,3,10,10,6,6,12,12,11,5,9,9,5,0,3,7,8,4,15,1,12,14,8,8,2,13,4,6,9,2,1,11,7,15,5,12,11,9,3,7,14,3,10,10,0,5,6,0,13,15,3,1,13,8,4,14,7,6,15,11,2,3,8,4,14,9,12,7,0,2,1,13,10,12,6,0,9,5,11,10,5,0,13,14,8,7,10,11,1,10,3,4,15,13,4,1,2,5,11,8,6,12,7,6,12,9,0,3,5,2,14,15,9,10,13,0,7,9,0,14,9,6,3,3,4,15,6,5,10,1,2,13,8,12,5,7,14,11,12,4,11,2,15,8,1,13,1,6,10,4,13,9,0,8,6,15,9,3,8,0,7,11,4,1,15,2,14,12,3,5,11,10,5,14,2,7,12,7,13,13,8,14,11,3,5,0,6,6,15,9,0,10,3,1,4,2,7,8,2,5,12,11,1,12,10,4,14,15,9,10,3,6,15,9,0,0,6,12,10,11,1,7,13,13,8,15,9,1,4,3,5,14,11,5,12,2,7,8,2,4,14,2,14,12,11,4,2,1,12,7,4,10,7,11,13,6,1,8,5,5,0,3,15,15,10,13,3,0,9,14,8,9,6,4,11,2,8,1,12,11,7,10,1,13,14,7,2,8,13,15,6,9,15,12,0,5,9,6,10,3,4,0,5,14,3,12,10,1,15,10,4,15,2,9,7,2,12,6,9,8,5,0,6,13,1,3,13,4,14,14,0,7,11,5,3,11,8,9,4,14,3,15,2,5,12,2,9,8,5,12,15,3,10,7,11,0,14,4,1,10,7,1,6,13,0,11,8,6,13,4,13,11,0,2,11,14,7,15,4,0,9,8,1,13,10,3,14,12,3,9,5,7,12,5,2,10,15,6,8,1,6,1,6,4,11,11,13,13,8,12,1,3,4,7,10,14,7,10,9,15,5,6,0,8,15,0,14,5,2,9,3,2,12,13,1,2,15,8,13,4,8,6,10,15,3,11,7,1,4,10,12,9,5,3,6,14,11,5,0,0,14,12,9,7,2,7,2,11,1,4,14,1,7,9,4,12,10,14,8,2,13,0,15,6,12,10,9,13,0,15,3,3,5,5,6,8,11];t.substitute=function(e,t){for(var n=0,r=0;r<4;r++){n<<=4,n|=o[64*r+(e>>>18-6*r&63)]}for(r=0;r<4;r++){n<<=4,n|=o[256+64*r+(t>>>18-6*r&63)]}return n>>>0};var a=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];t.permute=function(e){for(var t=0,n=0;n>>a[n]&1;return t>>>0},t.padSplit=function(e,t,n){for(var r=e.toString(2);r.length>>1];n=a.r28shl(n,u),o=a.r28shl(o,u),a.pc2(n,o,e.keys,i)}},c.prototype._update=function(e,t,n,r){var o=this._desState,i=a.readUInt32BE(e,t),u=a.readUInt32BE(e,t+4);a.ip(i,u,o.tmp,0),i=o.tmp[0],u=o.tmp[1],"encrypt"===this.type?this._encrypt(o,i,u,o.tmp,0):this._decrypt(o,i,u,o.tmp,0),i=o.tmp[0],u=o.tmp[1],a.writeUInt32BE(n,i,r),a.writeUInt32BE(n,u,r+4)},c.prototype._pad=function(e,t){for(var n=e.length-t,r=t;r>>0,i=d}a.rip(u,i,r,o)},c.prototype._decrypt=function(e,t,n,r,o){for(var i=n,u=t,c=e.keys.length-2;c>=0;c-=2){var s=e.keys[c],l=e.keys[c+1];a.expand(i,e.tmp,0),s^=e.tmp[0],l^=e.tmp[1];var f=a.substitute(s,l),d=i;i=(u^a.permute(f))>>>0,u=d}a.rip(i,u,r,o)}},function(e,t,n){"use strict";var r=n(206),o=n(26).Buffer,a=n(542);function i(e){var t=e._cipher.encryptBlockRaw(e._prev);return a(e._prev),t}t.encrypt=function(e,t){var n=Math.ceil(t.length/16),a=e._cache.length;e._cache=o.concat([e._cache,o.allocUnsafe(16*n)]);for(var u=0;ue;)n.ishrn(1);if(n.isEven()&&n.iadd(u),n.testn(1)||n.iadd(c),t.cmp(c)){if(!t.cmp(s))for(;n.mod(l).cmp(f);)n.iadd(p)}else for(;n.mod(a).cmp(d);)n.iadd(p);if(m(h=n.shrn(1))&&m(n)&&b(h)&&b(n)&&i.test(h)&&i.test(n))return n}}},function(e,t,n){"use strict";var r=n(10),o=n(294);function a(e){this.rand=e||new o.Rand}e.exports=a,a.create=function(e){return new a(e)},a.prototype._randbelow=function(e){var t=e.bitLength(),n=Math.ceil(t/8);do{var o=new r(this.rand.generate(n))}while(o.cmp(e)>=0);return o},a.prototype._randrange=function(e,t){var n=t.sub(e);return e.add(this._randbelow(n))},a.prototype.test=function(e,t,n){var o=e.bitLength(),a=r.mont(e),i=new r(1).toRed(a);t||(t=Math.max(1,o/48|0));for(var u=e.subn(1),c=0;!u.testn(c);c++);for(var s=e.shrn(c),l=u.toRed(a);t>0;t--){var f=this._randrange(new r(2),u);n&&n(f);var d=f.toRed(a).redPow(s);if(0!==d.cmp(i)&&0!==d.cmp(l)){for(var p=1;p0;t--){var l=this._randrange(new r(2),i),f=e.gcd(l);if(0!==f.cmpn(1))return f;var d=l.toRed(o).redPow(c);if(0!==d.cmp(a)&&0!==d.cmp(s)){for(var p=1;p0)if("string"==typeof t||i.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r)i.endEmitted?w(e,new _):P(e,i,t,!0);else if(i.ended)w(e,new k);else{if(i.destroyed)return!1;i.reading=!1,i.decoder&&!n?(t=i.decoder.write(t),i.objectMode||0!==t.length?P(e,i,t,!1):D(e,i)):P(e,i,t,!1)}else r||(i.reading=!1,D(e,i));return!i.ended&&(i.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=1073741824?e=1073741824:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;s("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(s("emitReadable",t.flowing),t.emittedReadable=!0,r.nextTick(R,e))}function R(e){var t=e._readableState;s("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function D(e,t){t.readingMore||(t.readingMore=!0,r.nextTick(C,e,t))}function C(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function B(e){s("readable nexttick read 0"),e.read(0)}function M(e,t){s("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(s("flow",t.flowing);t.flowing&&null!==e.read(););}function x(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function F(e){var t=e._readableState;s("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,r.nextTick(U,t,e))}function U(e,t){if(s("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function L(e,t){for(var n=0,r=e.length;n=t.highWaterMark:t.length>0)||t.ended))return s("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):S(this),null;if(0===(e=E(e,t))&&t.ended)return 0===t.length&&F(this),null;var r,o=t.needReadable;return s("need readable",o),(0===t.length||t.length-e0?x(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&F(this)),null!==r&&this.emit("data",r),r},T.prototype._read=function(e){w(this,new g("_read()"))},T.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,s("pipe count=%d opts=%j",o.pipesCount,t);var i=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?c:m;function u(t,r){s("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,s("cleanup"),e.removeListener("close",h),e.removeListener("finish",y),e.removeListener("drain",l),e.removeListener("error",p),e.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",m),n.removeListener("data",d),f=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function c(){s("onend"),e.end()}o.endEmitted?r.nextTick(i):n.once("end",i),e.on("unpipe",u);var l=function(e){return function(){var t=e._readableState;s("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(n);e.on("drain",l);var f=!1;function d(t){s("ondata");var r=e.write(t);s("dest.write",r),!1===r&&((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==L(o.pipes,e))&&!f&&(s("false write response, pause",o.awaitDrain),o.awaitDrain++),n.pause())}function p(t){s("onerror",t),m(),e.removeListener("error",p),0===a(e,"error")&&w(e,t)}function h(){e.removeListener("finish",y),m()}function y(){s("onfinish"),e.removeListener("close",h),m()}function m(){s("unpipe"),n.unpipe(e)}return n.on("data",d),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",p),e.once("close",h),e.once("finish",y),e.emit("pipe",n),o.flowing||(s("pipe resume"),n.resume()),e},T.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==o.flowing&&this.resume()):"readable"===e&&(o.endEmitted||o.readableListening||(o.readableListening=o.needReadable=!0,o.flowing=!1,o.emittedReadable=!1,s("on readable",o.length,o.reading),o.length?S(this):o.reading||r.nextTick(B,this))),n},T.prototype.addListener=T.prototype.on,T.prototype.removeListener=function(e,t){var n=i.prototype.removeListener.call(this,e,t);return"readable"===e&&r.nextTick(N,this),n},T.prototype.removeAllListeners=function(e){var t=i.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||r.nextTick(N,this),t},T.prototype.resume=function(){var e=this._readableState;return e.flowing||(s("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,r.nextTick(M,e,t))}(this,e)),e.paused=!1,this},T.prototype.pause=function(){return s("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(s("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},T.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var o in e.on("end",(function(){if(s("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(o){(s("wrapped data"),n.decoder&&(o=n.decoder.write(o)),n.objectMode&&null==o)||(n.objectMode||o&&o.length)&&(t.push(o)||(r=!0,e.pause()))})),e)void 0===this[o]&&"function"==typeof e[o]&&(this[o]=function(t){return function(){return e[t].apply(e,arguments)}}(o));for(var a=0;a-1))throw new _(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(T.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(T.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),T.prototype._write=function(e,t,n){n(new y("_write()"))},T.prototype._writev=null,T.prototype.end=function(e,t,n){var o=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),o.corked&&(o.corked=1,this.uncork()),o.ending||function(e,t,n){t.ending=!0,D(e,t),n&&(t.finished?r.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,o,n),this},Object.defineProperty(T.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(T.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),T.prototype.destroy=f.destroy,T.prototype._undestroy=f.undestroy,T.prototype._destroy=function(e,t){t(e)}}).call(this,n(40),n(34))},function(e,t,n){"use strict";e.exports=l;var r=n(181).codes,o=r.ERR_METHOD_NOT_IMPLEMENTED,a=r.ERR_MULTIPLE_CALLBACK,i=r.ERR_TRANSFORM_ALREADY_TRANSFORMING,u=r.ERR_TRANSFORM_WITH_LENGTH_0,c=n(182);function s(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit("error",new a);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.length=31)return r.error("Multi-octet tag encoding unsupported");t||(o|=32);return o|=i.tagClassByName[n||"universal"]<<6}(e,t,n,this.reporter);if(r.length<128){var u=o.alloc(2);return u[0]=a,u[1]=r.length,this._createEncoderBuffer([u,r])}for(var c=1,s=r.length;s>=256;s>>=8)c++;var l=o.alloc(2+c);l[0]=a,l[1]=128|c;for(var f=1+c,d=r.length;d>0;f--,d>>=8)l[f]=255&d;return this._createEncoderBuffer([l,r])},c.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var n=o.alloc(2*e.length),r=0;r=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}for(var i=0,u=0;u=128;c>>=7)i++}for(var s=o.alloc(i),l=s.length-1,f=e.length-1;f>=0;f--){var d=e[f];for(s[l--]=127&d;(d>>=7)>0;)s[l--]=128|127&d}return this._createEncoderBuffer(s)},c.prototype._encodeTime=function(e,t){var n,r=new Date(e);return"gentime"===t?n=[s(r.getUTCFullYear()),s(r.getUTCMonth()+1),s(r.getUTCDate()),s(r.getUTCHours()),s(r.getUTCMinutes()),s(r.getUTCSeconds()),"Z"].join(""):"utctime"===t?n=[s(r.getUTCFullYear()%100),s(r.getUTCMonth()+1),s(r.getUTCDate()),s(r.getUTCHours()),s(r.getUTCMinutes()),s(r.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(n,"octstr")},c.prototype._encodeNull=function(){return this._createEncoderBuffer("")},c.prototype._encodeInt=function(e,t){if("string"==typeof e){if(!t)return this.reporter.error("String int or enum given, but no values map");if(!t.hasOwnProperty(e))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(e));e=t[e]}if("number"!=typeof e&&!o.isBuffer(e)){var n=e.toArray();!e.sign&&128&n[0]&&n.unshift(0),e=o.from(n)}if(o.isBuffer(e)){var r=e.length;0===e.length&&r++;var a=o.alloc(r);return e.copy(a),0===e.length&&(a[0]=0),this._createEncoderBuffer(a)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);for(var i=1,u=e;u>=256;u>>=8)i++;for(var c=new Array(i),s=c.length-1;s>=0;s--)c[s]=255&e,e>>=8;return 128&c[0]&&c.unshift(0),this._createEncoderBuffer(o.from(c))},c.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},c.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},c.prototype._skipDefault=function(e,t,n){var r,o=this._baseState;if(null===o.default)return!1;var a=e.join();if(void 0===o.defaultBuffer&&(o.defaultBuffer=this._encodeValue(o.default,t,n).join()),a.length!==o.defaultBuffer.length)return!1;for(r=0;r>6],o=0==(32&n);if(31==(31&n)){var a=n;for(n=0;128==(128&a);){if(a=e.readUInt8(t),e.isError(a))return a;n<<=7,n|=127&a}}else n&=31;return{cls:r,primitive:o,tag:n,tagStr:u.tag[n]}}function f(e,t,n){var r=e.readUInt8(n);if(e.isError(r))return r;if(!t&&128===r)return null;if(0==(128&r))return r;var o=127&r;if(o>4)return e.error("length octect is too long");r=0;for(var a=0;a>>((3&t)<<3)&255;return a}}},function(e,t,n){"use strict";for(var r=[],o=0;o<256;++o)r[o]=(o+256).toString(16).substr(1);e.exports=function(e,t){var n=t||0,o=r;return[o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],"-",o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]],o[e[n++]]].join("")}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.KECCAK256_RLP=t.KECCAK256_RLP_S=t.KECCAK256_RLP_ARRAY=t.KECCAK256_RLP_ARRAY_S=t.KECCAK256_NULL=t.KECCAK256_NULL_S=t.TWO_POW256=t.MAX_INTEGER=t.MAX_UINT64=void 0;var r=n(15),o=n(112);t.MAX_UINT64=new o.BN("ffffffffffffffff",16),t.MAX_INTEGER=new o.BN("ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",16),t.TWO_POW256=new o.BN("10000000000000000000000000000000000000000000000000000000000000000",16),t.KECCAK256_NULL_S="c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",t.KECCAK256_NULL=r.Buffer.from(t.KECCAK256_NULL_S,"hex"),t.KECCAK256_RLP_ARRAY_S="1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",t.KECCAK256_RLP_ARRAY=r.Buffer.from(t.KECCAK256_RLP_ARRAY_S,"hex"),t.KECCAK256_RLP_S="56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",t.KECCAK256_RLP=r.Buffer.from(t.KECCAK256_RLP_S,"hex")},function(e,t,n){"use strict";(function(e){var r=function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i},o=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isZeroAddress=t.zeroAddress=t.importPublic=t.privateToAddress=t.privateToPublic=t.publicToAddress=t.pubToAddress=t.isValidPublic=t.isValidPrivate=t.generateAddress2=t.generateAddress=t.isValidChecksumAddress=t.toChecksumAddress=t.isValidAddress=t.Account=void 0;var a=o(n(170)),i=n(112),u=n(567),c=n(183),s=n(565),l=n(152),f=n(339),d=n(265),p=n(342),h=function(){function e(e,t,n,r){void 0===e&&(e=new i.BN(0)),void 0===t&&(t=new i.BN(0)),void 0===n&&(n=s.KECCAK256_RLP),void 0===r&&(r=s.KECCAK256_NULL),this.nonce=e,this.balance=t,this.stateRoot=n,this.codeHash=r,this._validate()}return e.fromAccountData=function(t){var n=t.nonce,r=t.balance,o=t.stateRoot,a=t.codeHash;return new e(n?new i.BN((0,l.toBuffer)(n)):void 0,r?new i.BN((0,l.toBuffer)(r)):void 0,o?(0,l.toBuffer)(o):void 0,a?(0,l.toBuffer)(a):void 0)},e.fromRlpSerializedAccount=function(e){var t=i.rlp.decode(e);if(!Array.isArray(t))throw new Error("Invalid serialized account input. Must be array");return this.fromValuesArray(t)},e.fromValuesArray=function(t){var n=r(t,4),o=n[0],a=n[1],u=n[2],c=n[3];return new e(new i.BN(o),new i.BN(a),u,c)},e.prototype._validate=function(){if(this.nonce.lt(new i.BN(0)))throw new Error("nonce must be greater than zero");if(this.balance.lt(new i.BN(0)))throw new Error("balance must be greater than zero");if(32!==this.stateRoot.length)throw new Error("stateRoot must have a length of 32");if(32!==this.codeHash.length)throw new Error("codeHash must have a length of 32")},e.prototype.raw=function(){return[(0,p.bnToUnpaddedBuffer)(this.nonce),(0,p.bnToUnpaddedBuffer)(this.balance),this.stateRoot,this.codeHash]},e.prototype.serialize=function(){return i.rlp.encode(this.raw())},e.prototype.isContract=function(){return!this.codeHash.equals(s.KECCAK256_NULL)},e.prototype.isEmpty=function(){return this.balance.isZero()&&this.nonce.isZero()&&this.codeHash.equals(s.KECCAK256_NULL)},e}();t.Account=h;t.isValidAddress=function(e){try{(0,d.assertIsString)(e)}catch(e){return!1}return/^0x[0-9a-fA-F]{40}$/.test(e)};t.toChecksumAddress=function(e,t){(0,d.assertIsHexString)(e);var n=(0,c.stripHexPrefix)(e).toLowerCase(),r="";t&&(r=(0,p.toType)(t,p.TypeOutput.BN).toString()+"0x");for(var o=(0,f.keccakFromString)(r+n).toString("hex"),a="0x",i=0;i=8?a+=n[i].toUpperCase():a+=n[i];return a};t.isValidChecksumAddress=function(e,n){return(0,t.isValidAddress)(e)&&(0,t.toChecksumAddress)(e,n)===e};t.generateAddress=function(t,n){(0,d.assertIsBuffer)(t),(0,d.assertIsBuffer)(n);var r=new i.BN(n);return r.isZero()?(0,f.rlphash)([t,null]).slice(-20):(0,f.rlphash)([t,e.from(r.toArray())]).slice(-20)};t.generateAddress2=function(t,n,r){return(0,d.assertIsBuffer)(t),(0,d.assertIsBuffer)(n),(0,d.assertIsBuffer)(r),(0,a.default)(20===t.length),(0,a.default)(32===n.length),(0,f.keccak256)(e.concat([e.from("ff","hex"),t,n,(0,f.keccak256)(r)])).slice(-20)};t.isValidPrivate=function(e){return(0,u.privateKeyVerify)(e)};t.isValidPublic=function(t,n){return void 0===n&&(n=!1),(0,d.assertIsBuffer)(t),64===t.length?(0,u.publicKeyVerify)(e.concat([e.from([4]),t])):!!n&&(0,u.publicKeyVerify)(t)};t.pubToAddress=function(t,n){return void 0===n&&(n=!1),(0,d.assertIsBuffer)(t),n&&64!==t.length&&(t=e.from((0,u.publicKeyConvert)(t,!1).slice(1))),(0,a.default)(64===t.length),(0,f.keccak)(t).slice(-20)},t.publicToAddress=t.pubToAddress;t.privateToPublic=function(t){return(0,d.assertIsBuffer)(t),e.from((0,u.publicKeyCreate)(t,!1)).slice(1)};t.privateToAddress=function(e){return(0,t.publicToAddress)((0,t.privateToPublic)(e))};t.importPublic=function(t){return(0,d.assertIsBuffer)(t),64!==t.length&&(t=e.from((0,u.publicKeyConvert)(t,!1).slice(1))),t};t.zeroAddress=function(){var e=(0,l.zeros)(20);return(0,l.bufferToHex)(e)};t.isZeroAddress=function(e){try{(0,d.assertIsString)(e)}catch(e){return!1}return(0,t.zeroAddress)()===e}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";var r=function(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{c(r.next(e))}catch(e){a(e)}}function u(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,u)}c((r=r.apply(e,t||[])).next())}))},o=function(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function u(a){return function(u){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]0)if("string"==typeof t||i.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r)i.endEmitted?w(e,new _):P(e,i,t,!0);else if(i.ended)w(e,new k);else{if(i.destroyed)return!1;i.reading=!1,i.decoder&&!n?(t=i.decoder.write(t),i.objectMode||0!==t.length?P(e,i,t,!1):D(e,i)):P(e,i,t,!1)}else r||(i.reading=!1,D(e,i));return!i.ended&&(i.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=1073741824?e=1073741824:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;s("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(s("emitReadable",t.flowing),t.emittedReadable=!0,r.nextTick(R,e))}function R(e){var t=e._readableState;s("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function D(e,t){t.readingMore||(t.readingMore=!0,r.nextTick(C,e,t))}function C(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function B(e){s("readable nexttick read 0"),e.read(0)}function M(e,t){s("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(s("flow",t.flowing);t.flowing&&null!==e.read(););}function x(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function F(e){var t=e._readableState;s("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,r.nextTick(U,t,e))}function U(e,t){if(s("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function L(e,t){for(var n=0,r=e.length;n=t.highWaterMark:t.length>0)||t.ended))return s("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):S(this),null;if(0===(e=E(e,t))&&t.ended)return 0===t.length&&F(this),null;var r,o=t.needReadable;return s("need readable",o),(0===t.length||t.length-e0?x(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&F(this)),null!==r&&this.emit("data",r),r},T.prototype._read=function(e){w(this,new g("_read()"))},T.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,s("pipe count=%d opts=%j",o.pipesCount,t);var i=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?c:m;function u(t,r){s("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,s("cleanup"),e.removeListener("close",h),e.removeListener("finish",y),e.removeListener("drain",l),e.removeListener("error",p),e.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",m),n.removeListener("data",d),f=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function c(){s("onend"),e.end()}o.endEmitted?r.nextTick(i):n.once("end",i),e.on("unpipe",u);var l=function(e){return function(){var t=e._readableState;s("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(n);e.on("drain",l);var f=!1;function d(t){s("ondata");var r=e.write(t);s("dest.write",r),!1===r&&((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==L(o.pipes,e))&&!f&&(s("false write response, pause",o.awaitDrain),o.awaitDrain++),n.pause())}function p(t){s("onerror",t),m(),e.removeListener("error",p),0===a(e,"error")&&w(e,t)}function h(){e.removeListener("finish",y),m()}function y(){s("onfinish"),e.removeListener("close",h),m()}function m(){s("unpipe"),n.unpipe(e)}return n.on("data",d),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",p),e.once("close",h),e.once("finish",y),e.emit("pipe",n),o.flowing||(s("pipe resume"),n.resume()),e},T.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==o.flowing&&this.resume()):"readable"===e&&(o.endEmitted||o.readableListening||(o.readableListening=o.needReadable=!0,o.flowing=!1,o.emittedReadable=!1,s("on readable",o.length,o.reading),o.length?S(this):o.reading||r.nextTick(B,this))),n},T.prototype.addListener=T.prototype.on,T.prototype.removeListener=function(e,t){var n=i.prototype.removeListener.call(this,e,t);return"readable"===e&&r.nextTick(N,this),n},T.prototype.removeAllListeners=function(e){var t=i.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||r.nextTick(N,this),t},T.prototype.resume=function(){var e=this._readableState;return e.flowing||(s("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,r.nextTick(M,e,t))}(this,e)),e.paused=!1,this},T.prototype.pause=function(){return s("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(s("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},T.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var o in e.on("end",(function(){if(s("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(o){(s("wrapped data"),n.decoder&&(o=n.decoder.write(o)),n.objectMode&&null==o)||(n.objectMode||o&&o.length)&&(t.push(o)||(r=!0,e.pause()))})),e)void 0===this[o]&&"function"==typeof e[o]&&(this[o]=function(t){return function(){return e[t].apply(e,arguments)}}(o));for(var a=0;a-1))throw new _(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(T.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(T.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),T.prototype._write=function(e,t,n){n(new y("_write()"))},T.prototype._writev=null,T.prototype.end=function(e,t,n){var o=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),o.corked&&(o.corked=1,this.uncork()),o.ending||function(e,t,n){t.ending=!0,D(e,t),n&&(t.finished?r.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,o,n),this},Object.defineProperty(T.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(T.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),T.prototype.destroy=f.destroy,T.prototype._undestroy=f.undestroy,T.prototype._destroy=function(e,t){t(e)}}).call(this,n(40),n(34))},function(e,t,n){"use strict";e.exports=l;var r=n(184).codes,o=r.ERR_METHOD_NOT_IMPLEMENTED,a=r.ERR_MULTIPLE_CALLBACK,i=r.ERR_TRANSFORM_ALREADY_TRANSFORMING,u=r.ERR_TRANSFORM_WITH_LENGTH_0,c=n(185);function s(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit("error",new a);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var o=this._readableState;o.reading=!1,(o.needReadable||o.length=this._blockSize;){for(var a=this._blockOffset;a0;++i)this._length[i]+=u,(u=this._length[i]/4294967296|0)>0&&(this._length[i]-=4294967296*u);return this},a.prototype._update=function(){throw new Error("_update is not implemented")},a.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var n=0;n<4;++n)this._length[n]=0;return t},a.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=a},function(e,t,n){"use strict";var r=n(51),o=n(186),a=n(89).Buffer,i=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],u=new Array(64);function c(){this.init(),this._w=u,o.call(this,64,56)}function s(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function f(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function d(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function p(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(c,o),c.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,h=0|this._f,y=0|this._g,m=0|this._h,b=0;b<16;++b)n[b]=e.readInt32BE(4*b);for(;b<64;++b)n[b]=0|(((t=n[b-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[b-7]+p(n[b-15])+n[b-16];for(var v=0;v<64;++v){var k=m+d(c)+s(c,h,y)+i[v]+n[v]|0,g=f(r)+l(r,o,a)|0;m=y,y=h,h=c,c=u+k|0,u=a,a=o,o=r,r=k+g|0}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0,this._f=h+this._f|0,this._g=y+this._g|0,this._h=m+this._h|0},c.prototype._hash=function(){var e=a.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},function(e,t,n){"use strict";var r=n(51),o=n(186),a=n(89).Buffer,i=[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],u=new Array(160);function c(){this.init(),this._w=u,o.call(this,128,112)}function s(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function f(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function d(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function h(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function y(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function b(e,t){return e>>>0>>0?1:0}r(c,o),c.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},c.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,o=0|this._ch,a=0|this._dh,u=0|this._eh,c=0|this._fh,v=0|this._gh,k=0|this._hh,g=0|this._al,_=0|this._bl,w=0|this._cl,I=0|this._dl,A=0|this._el,T=0|this._fl,O=0|this._gl,P=0|this._hl,E=0;E<32;E+=2)t[E]=e.readInt32BE(4*E),t[E+1]=e.readInt32BE(4*E+4);for(;E<160;E+=2){var S=t[E-30],R=t[E-30+1],D=p(S,R),C=h(R,S),N=y(S=t[E-4],R=t[E-4+1]),B=m(R,S),M=t[E-14],j=t[E-14+1],x=t[E-32],F=t[E-32+1],U=C+j|0,L=D+M+b(U,C)|0;L=(L=L+N+b(U=U+B|0,B)|0)+x+b(U=U+F|0,F)|0,t[E]=L,t[E+1]=U}for(var G=0;G<160;G+=2){L=t[G],U=t[G+1];var K=l(n,r,o),z=l(g,_,w),Q=f(n,g),H=f(g,n),V=d(u,A),W=d(A,u),q=i[G],Y=i[G+1],Z=s(u,c,v),J=s(A,T,O),X=P+W|0,$=k+V+b(X,P)|0;$=($=($=$+Z+b(X=X+J|0,J)|0)+q+b(X=X+Y|0,Y)|0)+L+b(X=X+U|0,U)|0;var ee=H+z|0,te=Q+K+b(ee,H)|0;k=v,P=O,v=c,O=T,c=u,T=A,u=a+$+b(A=I+X|0,I)|0,a=o,I=w,o=r,w=_,r=n,_=g,n=$+te+b(g=X+ee|0,X)|0}this._al=this._al+g|0,this._bl=this._bl+_|0,this._cl=this._cl+w|0,this._dl=this._dl+I|0,this._el=this._el+A|0,this._fl=this._fl+T|0,this._gl=this._gl+O|0,this._hl=this._hl+P|0,this._ah=this._ah+n+b(this._al,g)|0,this._bh=this._bh+r+b(this._bl,_)|0,this._ch=this._ch+o+b(this._cl,w)|0,this._dh=this._dh+a+b(this._dl,I)|0,this._eh=this._eh+u+b(this._el,A)|0,this._fh=this._fh+c+b(this._fl,T)|0,this._gh=this._gh+v+b(this._gl,O)|0,this._hh=this._hh+k+b(this._hl,P)|0},c.prototype._hash=function(){var e=a.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(9)),u=r(n(41)),c=r(n(8)),s=r(n(1)),l=r(n(2)),f=r(n(579)),d=r(n(343)),p=r(n(581)),h=r(n(345)),y=r(n(1176)),m=r(n(1177)),b=r(n(267)),v=T(n(582)),k=T(n(268)),g=T(n(209)),_=T(n(583)),w=T(n(1178)),I=T(n(344));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var O=function(){function e(t){var n=t.words,r=t.legacy;(0,s.default)(this,e),this.words=n,this._isLegacy=r}var t,n,r,o,v,A,T;return(0,l.default)(e,[{key:"toPrivateKey",value:(T=(0,c.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",!this._isLegacy){e.next=5;break}if(!(t.length>0)){e.next=4;break}throw new Error("legacy 22-word mnemonics do not support passphrases");case 4:return e.abrupt("return",this.toLegacyPrivateKey());case 5:return e.next=7,this._toPrivateKey(t);case 7:return e.abrupt("return",e.sent);case 8:case"end":return e.stop()}}),e,this)}))),function(){return T.apply(this,arguments)})},{key:"_validate",value:(A=(0,c.default)(a.default.mark((function e(){var t,n,r,o,c,s,l,f,d,b,v,k,g;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._isLegacy){e.next=12;break}if(22===this.words.length){e.next=3;break}throw new p.default(this,h.default.BadLength,[]);case 3:if(!((t=this.words.reduce((function(e,t,n){return y.default.includes(t.toLowerCase())?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=6;break}throw new p.default(this,h.default.UnknownWords,t);case 6:if(n=w.legacy1(this.words,y.default),r=(0,i.default)(n,2),o=r[0],c=r[1],s=w.crc8(o),c===s){e.next=10;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 10:e.next=28;break;case 12:if(12===this.words.length||24===this.words.length){e.next=14;break}throw new p.default(this,h.default.BadLength,[]);case 14:if(!((l=this.words.reduce((function(e,t,n){return m.default.includes(t)?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=17;break}throw new p.default(this,h.default.UnknownWords,l);case 17:return f=this.words.map((function(e){return m.default.indexOf(e).toString(2).padStart(11,"0")})).join(""),d=32*Math.floor(f.length/33),b=f.slice(0,d),v=f.slice(d),k=b.match(/(.{1,8})/g),g=k.map(P),e.next=25,S(Uint8Array.from(g));case 25:if(e.sent===v){e.next=28;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 28:return e.abrupt("return",this);case 29:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"_toPrivateKey",value:(v=(0,c.default)(a.default.mark((function e(){var t,n,r,o,i,u,c,s,l,p,h,y,m=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=m.length>0&&void 0!==m[0]?m[0]:"",n=this.words.join(" "),r="mnemonic".concat(t),e.next=5,k.deriveKey(g.HashAlgorithm.Sha512,n,r,2048,64);case 5:return o=e.sent,e.next=8,g.hash(g.HashAlgorithm.Sha512,"ed25519 seed",o);case 8:i=e.sent,u=i.subarray(0,32),c=i.subarray(32),s=0,l=[44,3030,0,0];case 12:if(!(s>8,i=255&o;a?n.push(a,i):n.push(i)}return n},r.zero2=o,r.toHex=a,r.encode=function(e,t){return"hex"===t?a(e):e}},function(e,t,n){"use strict";var r,o=n(0)(n(3));function a(e){this.rand=e}if(e.exports=function(e){return r||(r=new a(null)),r.generate(e)},e.exports.Rand=a,a.prototype.generate=function(e){return this._rand(e)},a.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),n=0;n>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(98),o=n(210),a=n(590),i=n(154),u=r.sum32,c=r.sum32_4,s=r.sum32_5,l=a.ch32,f=a.maj32,d=a.s0_256,p=a.s1_256,h=a.g0_256,y=a.g1_256,m=o.BlockHash,b=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function v(){if(!(this instanceof v))return new v;m.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=b,this.W=new Array(64)}r.inherits(v,m),e.exports=v,v.blockSize=512,v.outSize=256,v.hmacStrength=192,v.padLength=64,v.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){c=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(c)throw a}}}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n4)throw new Error("unsupported DER integer length of ".concat(t," bytes"));return n.getUint32(0,!1)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(266)),p=r(n(597)),h=r(n(127)),y=r(n(47)),m=r(n(126));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var k=function(e){(0,s.default)(k,e);var t,n,r,o,l,f,y,m,b=v(k);function k(e){var t;return(0,u.default)(this,k),(t=b.call(this))._key=e,t}return(0,c.default)(k,[{key:"derive",value:(m=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,this._key.derive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"legacyDerive",value:(y=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,this._key.legacyDerive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"publicKey",get:function(){return new h.default(this._key.publicKey)}},{key:"sign",value:function(e){return this._key.sign(e)}},{key:"signTransaction",value:function(e){var t=e._signedTransactions.get(0),n=null!=t.bodyBytes?this.sign(t.bodyBytes):new Uint8Array;return e.addSignature(this.publicKey,n),n}},{key:"isDerivable",value:function(){return this._key.isDerivable()}},{key:"toBytes",value:function(){return this._key.toBytes()}},{key:"toBytesDer",value:function(){return this._key.toBytesDer()}},{key:"toBytesRaw",value:function(){return this._key.toBytesRaw()}},{key:"toString",value:function(){return this._key.toStringDer()}},{key:"toStringDer",value:function(){return this._key.toStringDer()}},{key:"toStringRaw",value:function(){return this._key.toStringRaw()}},{key:"toKeystore",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._key.toKeystore(e)}},{key:"_toProtobufKey",value:function(){return this.publicKey._toProtobufKey()}},{key:"toAccountId",value:function(e,t){return this.publicKey.toAccountId(e,t)}}],[{key:"generateED25519",value:function(){return new k(d.PrivateKey.generateED25519())}},{key:"generateECDSA",value:function(){return new k(d.PrivateKey.generateECDSA())}},{key:"generate",value:function(){return k.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateED25519Async();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateECDSAAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){return new k(d.PrivateKey.fromBytes(e))}},{key:"fromBytesECDSA",value:function(e){return new k(d.PrivateKey.fromBytesECDSA(e))}},{key:"fromBytesED25519",value:function(e){return new k(d.PrivateKey.fromBytesED25519(e))}},{key:"fromString",value:function(e){return new k(d.PrivateKey.fromString(e))}},{key:"fromStringECDSA",value:function(e){return new k(d.PrivateKey.fromStringECDSA(e))}},{key:"fromStringED25519",value:function(e){return new k(d.PrivateKey.fromStringED25519(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"",!(t instanceof p.default)){e.next=7;break}return e.t0=k,e.next=5,d.PrivateKey.fromMnemonic(t._mnemonic,n);case 5:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 7:return e.t2=k,e.next=10,d.PrivateKey.fromMnemonic(t,n);case 10:return e.t3=e.sent,e.abrupt("return",new e.t2(e.t3));case 12:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=k,e.next=4,d.PrivateKey.fromKeystore(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=k,e.next=4,d.PrivateKey.fromPem(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),k}(y.default);t.default=k,m.default.privateKeyConstructor=function(e){return new k(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(266)),l=r(n(126));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}var d=function(){function e(t){(0,u.default)(this,e),this._mnemonic=t}var t,n,r,o,f,d;return(0,c.default)(e,[{key:"toPrivateKey",value:(d=(0,i.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",null!=l.default.privateKeyConstructor){e.next=3;break}throw new Error("`PrivateKey` has not been loaded");case 3:return e.t0=l.default,e.next=6,this._mnemonic.toPrivateKey(t);case 6:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 8:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"toLegacyPrivateKey",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=l.default.privateKeyConstructor){e.next=2;break}throw new Error("`PrivateKey` has not been loaded");case 2:return e.t0=l.default,e.next=5,this._mnemonic.toLegacyPrivateKey();case 5:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 7:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"toString",value:function(){return this._mnemonic.toString()}}],[{key:"generate",value:(o=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(24);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return o.apply(this,arguments)})},{key:"generate12",value:(r=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(12);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return r.apply(this,arguments)})},{key:"fromWords",value:(n=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromWords(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return n.apply(this,arguments)})},{key:"fromString",value:(t=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromString(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(153)),u=function(){function e(t,n,r){(0,o.default)(this,e),this._name=t,this._symbol=n,this._tinybar=r,Object.freeze(this)}return(0,a.default)(e,null,[{key:"fromString",value:function(t){switch(t){case e.Hbar._symbol:return e.Hbar;case e.Tinybar._symbol:return e.Tinybar;case e.Microbar._symbol:return e.Microbar;case e.Millibar._symbol:return e.Millibar;case e.Kilobar._symbol:return e.Kilobar;case e.Megabar._symbol:return e.Megabar;case e.Gigabar._symbol:return e.Gigabar;default:throw new Error("Unknown unit.")}}}]),e}();t.default=u,u.Tinybar=new u("tinybar","tℏ",new i.default(1)),u.Microbar=new u("microbar","μℏ",new i.default(100)),u.Millibar=new u("millibar","mℏ",new i.default(1e5)),u.Hbar=new u("hbar","ℏ",new i.default("100000000")),u.Kilobar=new u("kilobar","kℏ",new i.default(1e3).multipliedBy(new i.default("100000000"))),u.Megabar=new u("megabar","Mℏ",new i.default(1e6).multipliedBy(new i.default("100000000"))),u.Gigabar=new u("gigabar","Gℏ",new i.default("1000000000").multipliedBy(new i.default("100000000")))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(7)),a=r(n(8)),i=r(n(1)),u=r(n(2)),c=r(n(271)),s=r(n(156)),l=r(n(600)),f=r(n(605)),d=function(){function e(t){(0,i.default)(this,e),this.nodeId=t.nodeId,this.transactionHash=t.transactionHash,this.transactionId=t.transactionId,Object.freeze(this)}var t,n;return(0,u.default)(e,[{key:"getReceipt",value:(n=(0,a.default)(o.default.mark((function e(t){var n;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(new l.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t);case 2:if((n=e.sent).status===s.default.Success){e.next=5;break}throw new c.default({transactionReceipt:n,status:n.status,transactionId:this.transactionId});case 5:return e.abrupt("return",n);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"getRecord",value:(t=(0,a.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getReceipt(t);case 2:return e.abrupt("return",(new f.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=k(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),f=r(n(156)),d=r(n(272)),p=r(n(82)),h=r(n(212)),y=r(n(271)),m=n(128),b=n(38),v=r(n(189));function k(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(k=function(e){return e?n:t})(e)}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var _=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeDuplicates",value:function(e){return this._includeDuplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._includeDuplicates&&this._includeDuplicates}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:b.ResponseCodeEnum.OK);switch(v.default.debug("[".concat(this._getLogId(),"] received node precheck status ").concat(r.toString())),r){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return m.ExecutionState.Retry;case f.default.Ok:break;default:return m.ExecutionState.Error}var o=t.transactionGetReceipt.receipt.status;switch(r=f.default._fromCode(o),v.default.debug("[".concat(this._getLogId(),"] received receipt status ").concat(r.toString())),r){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return m.ExecutionState.Retry;case f.default.Success:return m.ExecutionState.Finished;default:return m.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:b.ResponseCodeEnum.OK);switch(r){case f.default.Ok:break;default:return new h.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetReceipt,a=o.receipt.status;return r=f.default._fromCode(a),new y.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf(o)})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTransactionReceipts(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetReceipt.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetReceipt;return Promise.resolve(d.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetReceipt:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeDuplicates:this._includeDuplicates,includeChildReceipts:this._includeChildren}}}},{key:"_getLogId",value:function(){return"TransactionReceiptQuery:".concat(this._timestamp.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetReceipt;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0,includeChildren:null!=t.includeChildReceipts?t.includeChildReceipts:void 0})}}]),n}(l.default);t.default=_,l.QUERY_REGISTRY.set("transactionGetReceipt",_._fromProtobuf)},function(e,t,n){"use strict";e.exports=n(1209)},function(e,t,n){"use strict";e.exports=f;var r,o=n(157),a=o.LongBits,i=o.base64,u=o.utf8;function c(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}function s(){}function l(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}function f(){this.len=0,this.head=new c(s,0,0),this.tail=this.head,this.states=null}var d=function(){return o.Buffer?function(){return(f.create=function(){return new r})()}:function(){return new f}};function p(e,t,n){t[n]=255&e}function h(e,t){this.len=e,this.next=void 0,this.val=t}function y(e,t,n){for(;e.hi;)t[n++]=127&e.lo|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[n++]=127&e.lo|128,e.lo=e.lo>>>7;t[n++]=e.lo}function m(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}f.create=d(),f.alloc=function(e){return new o.Array(e)},o.Array!==Array&&(f.alloc=o.pool(f.alloc,o.Array.prototype.subarray)),f.prototype._push=function(e,t,n){return this.tail=this.tail.next=new c(e,t,n),this.len+=t,this},h.prototype=Object.create(c.prototype),h.prototype.fn=function(e,t,n){for(;e>127;)t[n++]=127&e|128,e>>>=7;t[n]=e},f.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new h((e>>>=0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this},f.prototype.int32=function(e){return e<0?this._push(y,10,a.fromNumber(e)):this.uint32(e)},f.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)},f.prototype.uint64=function(e){var t=a.from(e);return this._push(y,t.length(),t)},f.prototype.int64=f.prototype.uint64,f.prototype.sint64=function(e){var t=a.from(e).zzEncode();return this._push(y,t.length(),t)},f.prototype.bool=function(e){return this._push(p,1,e?1:0)},f.prototype.fixed32=function(e){return this._push(m,4,e>>>0)},f.prototype.sfixed32=f.prototype.fixed32,f.prototype.fixed64=function(e){var t=a.from(e);return this._push(m,4,t.lo)._push(m,4,t.hi)},f.prototype.sfixed64=f.prototype.fixed64,f.prototype.float=function(e){return this._push(o.float.writeFloatLE,4,e)},f.prototype.double=function(e){return this._push(o.float.writeDoubleLE,8,e)};var b=o.Array.prototype.set?function(e,t,n){t.set(e,n)}:function(e,t,n){for(var r=0;r>>0;if(!t)return this._push(p,1,0);if(o.isString(e)){var n=f.alloc(t=i.length(e));i.decode(e,n,0),e=n}return this.uint32(t)._push(b,t,e)},f.prototype.string=function(e){var t=u.length(e);return t?this.uint32(t)._push(u.write,t,e):this._push(p,1,0)},f.prototype.fork=function(){return this.states=new l(this),this.head=this.tail=new c(s,0,0),this.len=0,this},f.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new c(s,0,0),this.len=0),this},f.prototype.ldelim=function(){var e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=t,this.len+=n),this},f.prototype.finish=function(){for(var e=this.head.next,t=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t},f._configure=function(e){r=e,f.create=d(),r._configure()}},function(e,t,n){"use strict";e.exports=c;var r,o=n(157),a=o.LongBits,i=o.utf8;function u(e,t){return RangeError("index out of range: "+e.pos+" + "+(t||1)+" > "+e.len)}function c(e){this.buf=e,this.pos=0,this.len=e.length}var s,l="undefined"!=typeof Uint8Array?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new c(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new c(e);throw Error("illegal buffer")},f=function(){return o.Buffer?function(e){return(c.create=function(e){return o.Buffer.isBuffer(e)?new r(e):l(e)})(e)}:l};function d(){var e=new a(0,0),t=0;if(!(this.len-this.pos>4)){for(;t<3;++t){if(this.pos>=this.len)throw u(this);if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(127&this.buf[this.pos++])<<7*t)>>>0,e}for(;t<4;++t)if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(127&this.buf[this.pos])<<28)>>>0,e.hi=(e.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return e;if(t=0,this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw u(this);if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}function p(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}function h(){if(this.pos+8>this.len)throw u(this,8);return new a(p(this.buf,this.pos+=4),p(this.buf,this.pos+=4))}c.create=f(),c.prototype._slice=o.Array.prototype.subarray||o.Array.prototype.slice,c.prototype.uint32=(s=4294967295,function(){if(s=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return s;if((this.pos+=5)>this.len)throw this.pos=this.len,u(this,10);return s}),c.prototype.int32=function(){return 0|this.uint32()},c.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(1&e)|0},c.prototype.bool=function(){return 0!==this.uint32()},c.prototype.fixed32=function(){if(this.pos+4>this.len)throw u(this,4);return p(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw u(this,4);return 0|p(this.buf,this.pos+=4)},c.prototype.float=function(){if(this.pos+4>this.len)throw u(this,4);var e=o.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e},c.prototype.double=function(){if(this.pos+8>this.len)throw u(this,4);var e=o.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e},c.prototype.bytes=function(){var e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw u(this,e);return this.pos+=e,Array.isArray(this.buf)?this.buf.slice(t,n):t===n?new this.buf.constructor(0):this._slice.call(this.buf,t,n)},c.prototype.string=function(){var e=this.bytes();return i.read(e,0,e.length)},c.prototype.skip=function(e){if("number"==typeof e){if(this.pos+e>this.len)throw u(this,e);this.pos+=e}else do{if(this.pos>=this.len)throw u(this)}while(128&this.buf[this.pos++]);return this},c.prototype.skipType=function(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(e=7&this.uint32());)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+e+" at offset "+this.pos)}return this},c._configure=function(e){r=e,c.create=f(),r._configure();var t=o.Long?"toLong":"toNumber";o.merge(c.prototype,{int64:function(){return d.call(this)[t](!1)},uint64:function(){return d.call(this)[t](!0)},sint64:function(){return d.call(this).zzDecode()[t](!1)},fixed64:function(){return h.call(this)[t](!0)},sfixed64:function(){return h.call(this)[t](!1)}})}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.Ok:return"OK";case e.Cancelled:return"CANCELLED";case e.Unknown:return"UNKNOWN";case e.InvalidArgument:return"INVALID_ARGUMENT";case e.DeadlineExceeded:return"DEADLINE_EXCEEDED";case e.NotFound:return"NOT_FOUND";case e.AlreadyExists:return"ALREADY_EXISTS";case e.PermissionDenied:return"PERMISSION_DENIED";case e.Unauthenticated:return"UNAUTHENTICATED";case e.ResourceExhausted:return"RESOURCE_EXHAUSTED";case e.FailedPrecondition:return"FAILED_PRECONDITION";case e.Aborted:return"ABORTED";case e.OutOfRange:return"OUT_OF_RANGE";case e.Unimplemented:return"UNIMPLEMENTED";case e.Internal:return"INTERNAL";case e.Unavailable:return"UNAVAILABLE";case e.DataLoss:return"DATA_LOSS";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromValue",value:function(t){switch(t){case 0:return e.Ok;case 1:return e.Cancelled;case 2:return e.Unknown;case 3:return e.InvalidArgument;case 4:return e.DeadlineExceeded;case 5:return e.NotFound;case 6:return e.AlreadyExists;case 7:return e.PermissionDenied;case 16:return e.Unauthenticated;case 8:return e.ResourceExhausted;case 9:return e.FailedPrecondition;case 10:return e.Aborted;case 11:return e.OutOfRange;case 12:return e.Unimplemented;case 13:return e.Internal;case 14:return e.Unavailable;case 15:return e.DataLoss;default:throw new Error("(BUG) non-exhaustive GrpcStatus switch statement")}}}]),e}();t.default=i,i.Ok=new i(0),i.Cancelled=new i(1),i.Unknown=new i(2),i.InvalidArgument=new i(3),i.DeadlineExceeded=new i(4),i.NotFound=new i(5),i.AlreadyExists=new i(6),i.PermissionDenied=new i(7),i.Unauthenticated=new i(16),i.ResourceExhausted=new i(8),i.FailedPrecondition=new i(9),i.Aborted=new i(10),i.OutOfRange=new i(11),i.Unimplemented=new i(12),i.Internal=new i(13),i.Unavailable=new i(14),i.DataLoss=new i(15)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),f=r(n(352)),d=r(n(272)),p=r(n(82)),h=r(n(156)),y=r(n(212)),m=r(n(271)),b=n(128),v=n(38),k=r(n(189));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function _(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var w=function(e){(0,u.default)(n,e);var t=_(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"setIncludeDuplicates",value:function(e){return this._duplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._duplicates&&this._duplicates}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(k.default.debug("[".concat(this._getLogId(),"] received node precheck status ").concat(r.toString())),r){case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return b.ExecutionState.Retry;case h.default.Ok:break;default:return b.ExecutionState.Error}var o=t.transactionGetRecord;if(o.header.responseType===v.ResponseType.COST_ANSWER)return b.ExecutionState.Finished;var a=o.transactionRecord.receipt.status;switch(r=h.default._fromCode(a),k.default.debug("[".concat(this._getLogId(),"] received record's receipt ").concat(r.toString())),r){case h.default.Ok:case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return b.ExecutionState.Retry;case h.default.Success:return b.ExecutionState.Finished;default:return b.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Ok:break;default:return new y.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetRecord.transactionRecord.receipt,a=o.status;return r=h.default._fromCode(a),new m.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf({receipt:o})})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTxRecordByTxID(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetRecord.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetRecord;return Promise.resolve(f.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetRecord:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeChildRecords:this._includeChildren,includeDuplicates:this._includeDuplicates}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"TransactionRecordQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetRecord;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeChildren:null!=t.includeChildRecords?t.includeChildRecords:void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0})}}]),n}(l.default);t.default=w,l.QUERY_REGISTRY.set("transactionGetRecord",w._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(60)),u=function(){function e(t){(0,o.default)(this,e),this.contractId=t.contractId,this.bloom=t.bloom,this.topics=t.topics,this.data=t.data,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),bloom:this.bloom,topic:this.topics,data:this.data}}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:i.default._fromProtobuf(t.contractID),bloom:null!=t.bloom?t.bloom:new Uint8Array,topics:null!=t.topic?t.topic:[],data:null!=t.data?t.data:new Uint8Array})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(13)),d=r(n(608));function p(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return h(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return h(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId),this._amount,null!=t.amount&&this.setAmount(t.amount),this._payerAccountIds,null!=t.payerAccountIds&&this.setPayerAccountIds(t.payerAccountIds)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?u.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?i.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?c.default.fromNumber(e):e,this}},{key:"payerAccountIds",get:function(){return this._payerAccountIds}},{key:"setPayerAccountIds",value:function(e){return this._payerAccountIds=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,amount:this._amount,effectivePayerAccountId:null!=this._payerAccountIds?this._payerAccountIds.map((function(e){return e._toProtobuf()})):null}}}],[{key:"_fromProtobuf",value:function(t){return new e({feeCollectorAccountId:null!=t.feeCollectorAccountId?u.default._fromProtobuf(t.feeCollectorAccountId):void 0,tokenId:null!=t.tokenId?i.default._fromProtobuf(t.tokenId):void 0,amount:null!=t.amount?t.amount:void 0,payerAccountIds:null!=t.effectivePayerAccountId?t.effectivePayerAccountId.map((function(e){return u.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(18)),u=r(n(13)),c=r(n(29));function s(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._contractId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoGetBalance(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptogetAccountBalance.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptogetAccountBalance;return Promise.resolve(p.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{cryptogetAccountBalance:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}},{key:"_getLogId",value:function(){return"AccountBalanceQuery:".concat(this._timestamp.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptogetAccountBalance;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,contractId:null!=t.contractID?d.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=m,l.QUERY_REGISTRY.set("cryptogetAccountBalance",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(13)),c=r(n(355)),s=r(n(31)),l=r(n(48)),f=r(n(18)),d=r(n(616)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38)),h=r(n(67)),y=r(n(47)),m=r(n(127)),b=r(n(100)),v=r(n(213)),k=r(n(214)),g=r(n(215));function _(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(_=function(e){return e?n:t})(e)}var w=function(){function e(t){(0,a.default)(this,e),this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.isDeleted=t.isDeleted,this.proxyAccountId=t.proxyAccountId,this.proxyReceived=t.proxyReceived,this.key=t.key,this.balance=t.balance,this.sendRecordThreshold=t.sendRecordThreshold,this.receiveRecordThreshold=t.receiveRecordThreshold,this.isReceiverSignatureRequired=t.isReceiverSignatureRequired,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.liveHashes=t.liveHashes,this.tokenRelationships=t.tokenRelationships,this.accountMemo=t.accountMemo,this.ownedNfts=t.ownedNfts,this.maxAutomaticTokenAssociations=t.maxAutomaticTokenAssociations,this.aliasKey=t.aliasKey,this.ledgerId=t.ledgerId,this.hbarAllowances=t.hbarAllowances,this.tokenAllowances=t.tokenAllowances,this.nftAllowances=t.nftAllowances,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,deleted:this.isDeleted,proxyAccountID:null!=this.proxyAccountId?this.proxyAccountId._toProtobuf():null,proxyReceived:this.proxyReceived.toTinybars(),key:this.key._toProtobufKey(),balance:this.balance.toTinybars(),generateSendRecordThreshold:this.sendRecordThreshold.toTinybars(),generateReceiveRecordThreshold:this.receiveRecordThreshold.toTinybars(),receiverSigRequired:this.isReceiverSignatureRequired,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:this.autoRenewPeriod._toProtobuf(),liveHashes:this.liveHashes.map((function(e){return e._toProtobuf()})),tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,memo:this.accountMemo,ownedNfts:this.ownedNfts,maxAutomaticTokenAssociations:this.maxAutomaticTokenAssociations.toInt(),alias:null!=this.aliasKey?p.Key.encode(this.aliasKey._toProtobufKey()).finish():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.CryptoGetInfoResponse.AccountInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=null!=t.alias&&t.alias.length>0?y.default._fromProtobufKey(p.Key.decode(t.alias)):null;return n instanceof m.default||(n=null),new e({accountId:u.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:null,isDeleted:null!=t.deleted&&t.deleted,key:y.default._fromProtobufKey(t.key),balance:s.default.fromTinybars(null!=t.balance?t.balance:0),sendRecordThreshold:s.default.fromTinybars(null!=t.generateSendRecordThreshold?t.generateSendRecordThreshold:0),receiveRecordThreshold:s.default.fromTinybars(null!=t.generateReceiveRecordThreshold?t.generateReceiveRecordThreshold:0),isReceiverSignatureRequired:null!=t.receiverSigRequired&&t.receiverSigRequired,expirationTime:l.default._fromProtobuf(t.expirationTime),autoRenewPeriod:null!=t.autoRenewPeriod?new h.default(t.autoRenewPeriod.seconds):new h.default(0),proxyAccountId:null!=t.proxyAccountID&&0!==f.default.fromValue(t.proxyAccountID.shardNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.realmNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.accountNum).toInt()?u.default._fromProtobuf(t.proxyAccountID):null,proxyReceived:s.default.fromTinybars(null!=t.proxyReceived?t.proxyReceived:0),liveHashes:(null!=t.liveHashes?t.liveHashes:[]).map((function(e){return c.default._fromProtobuf(e)})),tokenRelationships:d.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),accountMemo:null!=t.memo?t.memo:"",ownedNfts:t.ownedNfts?t.ownedNfts:f.default.ZERO,maxAutomaticTokenAssociations:t.maxAutomaticTokenAssociations?f.default.fromNumber(t.maxAutomaticTokenAssociations):f.default.ZERO,aliasKey:n,ledgerId:null!=t.ledgerId?b.default.fromBytes(t.ledgerId):null,hbarAllowances:(null!=t.grantedCryptoAllowances?t.grantedCryptoAllowances:[]).map((function(e){return v.default._fromGrantedProtobuf(e)})),tokenAllowances:(null!=t.grantedTokenAllowances?t.grantedTokenAllowances:[]).map((function(e){return k.default._fromGrantedProtobuf(e)})),nftAllowances:(null!=t.grantedNftAllowances?t.grantedNftAllowances:[]).map((function(e){return g.default._fromGrantedProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.CryptoGetInfoResponse.AccountInfo.decode(t))}}]),e}();t.default=w},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(1237));function d(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._publicKey=null,null!=t.publicKey&&this.setPublicKey(t.publicKey),this._nodeId=null,null!=t.nodeId&&this.setNodeId(t.nodeId),this._accountId=null,null!=t.accountId&&this.setAccountId(t.accountId),this._certHash=null,null!=t.certHash&&this.setCertHash(t.certHash),this._addresses=[],null!=t.addresses&&this.setAddresses(t.addresses),this._description=null,null!=t.description&&this.setDescription(t.description),this._stake=null,null!=t.stake&&this.setStake(t.stake)}return(0,i.default)(e,[{key:"publicKey",get:function(){return this._publicKey}},{key:"setPublicKey",value:function(e){return this._publicKey=e,this}},{key:"nodeId",get:function(){return this._nodeId}},{key:"setNodeId",value:function(e){return this._nodeId=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?u.default.fromString(e):e.clone(),this}},{key:"certHash",get:function(){return this._certHash}},{key:"setCertHash",value:function(e){return this._certHash=e,this}},{key:"addresses",get:function(){return this._addresses}},{key:"setAddresses",value:function(e){return this._addresses=e,this}},{key:"description",get:function(){return this._description}},{key:"setDescription",value:function(e){return this._description=e,this}},{key:"stake",get:function(){return this._stake}},{key:"setStake",value:function(e){return this._stake=e,this}},{key:"_toProtobuf",value:function(){return{RSA_PubKey:this._publicKey,nodeId:this._nodeId,nodeAccountId:null!=this._accountId?this._accountId._toProtobuf():null,nodeCertHash:this._certHash,serviceEndpoint:this._addresses.map((function(e){return e._toProtobuf()})),description:this._description,stake:this._stake}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{publicKey:this._publicKey,nodeId:null!=this._nodeId?this._nodeId.toString():null,accountId:null!=this._accountId?this._accountId.toString():null,certHash:null!=this._certHash?s.decode(this._certHash):null,addresses:this._addresses.map((function(e){return e.toJSON()})),description:this._description,stake:null!=this._stake?this._stake.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({publicKey:null!=t.RSA_PubKey?t.RSA_PubKey:void 0,nodeId:null!=t.nodeId?t.nodeId:void 0,accountId:null!=t.nodeAccountId?u.default._fromProtobuf(t.nodeAccountId):void 0,certHash:null!=t.nodeCertHash?t.nodeCertHash:void 0,addresses:null!=t.serviceEndpoint?t.serviceEndpoint.map((function(e){return c.default._fromProtobuf(e)})):void 0,description:null!=t.description?t.description:void 0,stake:null!=t.stake?t.stake:void 0})}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(618)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._nodeAddresses=[],null!=t.nodeAddresses&&this.setNodeAddresses(t.nodeAddresses)}return(0,a.default)(e,[{key:"nodeAddresses",get:function(){return this._nodeAddresses}},{key:"setNodeAddresses",value:function(e){return this._nodeAddresses=e,this}},{key:"_toProtobuf",value:function(){return{nodeAddress:this._nodeAddresses.map((function(e){return e._toProtobuf()}))}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{nodeAddresses:this._nodeAddresses.map((function(e){return e.toJSON()}))}}}],[{key:"_fromProtobuf",value:function(t){return new e({nodeAddresses:null!=t.nodeAddress?t.nodeAddress.map((function(e){return i.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.ArgumentType=void 0;var a=r(n(1)),i=r(n(2)),u=n(1248),c=f(n(81)),s=f(n(99));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d={uint8:0,int8:1,uint16:2,int16:3,uint32:4,int32:5,uint64:6,int64:7,uint256:8,int256:9,string:10,bool:11,bytes:12,bytes32:13,address:14,func:15};t.ArgumentType=d;var p=function(){function e(t){(0,a.default)(this,e),this.name=null,this._params="",this._paramTypes=[],null!=t&&(this._name=t)}return(0,i.default)(e,[{key:"addString",value:function(){return this._addParam({ty:d.string,array:!1})}},{key:"addStringArray",value:function(){return this._addParam({ty:d.string,array:!0})}},{key:"addBytes",value:function(){return this._addParam({ty:d.bytes,array:!1})}},{key:"addBytes32",value:function(){return this._addParam({ty:d.bytes32,array:!1})}},{key:"addBytesArray",value:function(){return this._addParam({ty:d.bytes,array:!0})}},{key:"addBytes32Array",value:function(){return this._addParam({ty:d.bytes32,array:!0})}},{key:"addInt8",value:function(){return this._addParam({ty:d.int8,array:!1})}},{key:"addInt32",value:function(){return this._addParam({ty:d.int32,array:!1})}},{key:"addInt64",value:function(){return this._addParam({ty:d.int64,array:!1})}},{key:"addInt256",value:function(){return this._addParam({ty:d.int256,array:!1})}},{key:"addInt8Array",value:function(){return this._addParam({ty:d.int8,array:!0})}},{key:"addInt32Array",value:function(){return this._addParam({ty:d.int32,array:!0})}},{key:"addInt64Array",value:function(){return this._addParam({ty:d.int64,array:!0})}},{key:"addInt256Array",value:function(){return this._addParam({ty:d.int256,array:!0})}},{key:"addUint8",value:function(){return this._addParam({ty:d.uint8,array:!1})}},{key:"addUint32",value:function(){return this._addParam({ty:d.uint32,array:!1})}},{key:"addUint64",value:function(){return this._addParam({ty:d.uint64,array:!1})}},{key:"addUint256",value:function(){return this._addParam({ty:d.uint256,array:!1})}},{key:"addUint8Array",value:function(){return this._addParam({ty:d.uint8,array:!0})}},{key:"addUint32Array",value:function(){return this._addParam({ty:d.uint32,array:!0})}},{key:"addUint64Array",value:function(){return this._addParam({ty:d.uint64,array:!0})}},{key:"addUint256Array",value:function(){return this._addParam({ty:d.uint256,array:!0})}},{key:"addBool",value:function(){return this._addParam({ty:d.bool,array:!1})}},{key:"addAddress",value:function(){return this._addParam({ty:d.address,array:!1})}},{key:"addAddressArray",value:function(){return this._addParam({ty:d.address,array:!0})}},{key:"addFunction",value:function(){return this._addParam({ty:d.func,array:!1})}},{key:"_addParam",value:function(e){return this._paramTypes.length>0&&(this._params+=","),this._params+=function(e){var t="";switch(e.ty){case d.uint8:t="uint8";break;case d.int8:t="int8";break;case d.uint16:t="uint16";break;case d.int16:t="int16";break;case d.uint32:t="uint32";break;case d.int32:t="int32";break;case d.uint64:t="uint64";break;case d.int64:t="int64";break;case d.uint256:t="uint256";break;case d.int256:t="int256";break;case d.string:t="string";break;case d.bool:t="bool";break;case d.bytes:t="bytes";break;case d.bytes32:t="bytes32";break;case d.address:t="address";break;case d.func:t="function";break;default:t=""}e.array&&(t+="[]");return t}(e),this._paramTypes.push(e),this}},{key:"_build",value:function(e){if(null!=e)this._name=e;else if(null==this._name)throw new Error("`name` required for ContractFunctionSelector");var t=c.encode(s.encode(this.toString()));return c.decode((0,u.keccak256)("0x".concat(t))).slice(0,4)}},{key:"toString",value:function(){return"".concat(null!=this._name?this._name.toString():"","(").concat(this._params,")")}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(31)),f=v(n(24)),d=v(n(99)),p=r(n(48)),h=r(n(47)),y=r(n(155)),m=r(n(18));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._keys=null,e._expirationTime=new p.default(0,0).plusNanos(m.default.fromNumber(Date.now()).mul(1e6).add(f.DEFAULT_AUTO_RENEW_PERIOD.mul(1e9))),e._contents=null,e._fileMemo=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"_execute",value:function(e,t){return e.file.createFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileCreate"}},{key:"_makeTransactionData",value:function(){return{keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:this._expirationTime._toProtobuf(),contents:this._contents,memo:this._fileMemo}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"FileCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileCreate;return f.default._fromProtobufTransactions(new n({keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=g,f.TRANSACTION_REGISTRY.set("fileCreate",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=r(n(31)),h=_(n(24)),y=_(n(99)),m=r(n(66)),b=r(n(82)),v=r(n(48)),k=r(n(350));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function _(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function w(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return I(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return I(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._fileId=null,e._contents=null,e._maxChunks=20,e._chunkSize=2048,e._defaultMaxTransactionFee=new p.default(5),null!=t.fileId&&e.setFileId(t.fileId),null!=t.contents&&e.setContents(t.contents),null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._transactionIds=new k.default,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`FileAppendTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?m.default.fromString(e):e.clone(),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:y.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,s.default)((0,d.default)(o.prototype),"freezeWith",this).call(this,e),null==this._contents)return this;var t=Math.floor((this._contents.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Contents with size ".concat(this._contents.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear();for(var r=0;rthis._chunkSize)throw new Error("cannot schedule `FileAppendTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,s.default)((0,d.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,l,f,p;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,s.default)((0,d.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,s.default)((0,d.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,l=0;case 9:if(!(l0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.deleteFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"FileDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("fileDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(31)),f=r(n(13)),d=r(n(66)),p=r(n(273)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),y=r(n(18)),m=r(n(67)),b=r(n(47));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._bytecodeFileId=null,e._adminKey=null,e._gas=null,e._initialBalance=null,e._proxyAccountId=null,e._autoRenewPeriod=new m.default(h.DEFAULT_AUTO_RENEW_PERIOD),e._constructorParameters=null,e._contractMemo=null,e._defaultMaxTransactionFee=new l.default(20),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.gas&&e.setGas(r.gas),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.constructorParameters&&e.setConstructorParameters(r.constructorParameters),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof y.default?e:y.default.fromValue(e),this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof m.default?e:new m.default(e),this}},{key:"constructorParameters",get:function(){return this._constructorParameters}},{key:"setConstructorParameters",value:function(e){return this._requireNotFrozen(),this._constructorParameters=e instanceof p.default?e._build():e,this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"_validateChecksums",value:function(e){null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.createContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCreateInstance"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,gas:this._gas,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),constructorParameters:this._constructorParameters,memo:this._contractMemo}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ContractCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCreateInstance;return h.default._fromProtobufTransactions(new n({bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,adminKey:null!=i.adminKey?b.default._fromProtobufKey(i.adminKey):void 0,gas:null!=i.gas?i.gas:void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,constructorParameters:null!=i.constructorParameters?i.constructorParameters:void 0,contractMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(h.default);t.default=g,h.TRANSACTION_REGISTRY.set("contractCreateInstance",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(60)),c=r(n(13)),s=r(n(48)),l=r(n(67)),f=r(n(31)),d=r(n(18)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38)),h=r(n(616)),y=r(n(47)),m=r(n(100));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}var v=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.storage=t.storage,this.contractMemo=t.contractMemo,this.balance=t.balance,this.isDeleted=t.isDeleted,this.tokenRelationships=t.tokenRelationships,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,storage:this.storage,memo:this.contractMemo,balance:this.balance.toTinybars(),deleted:this.isDeleted,tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.ContractGetInfoResponse.ContractInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.autoRenewPeriod.seconds;return new e({contractId:u.default._fromProtobuf(t.contractID),accountId:c.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:"",adminKey:null!=t.adminKey?y.default._fromProtobufKey(t.adminKey):null,expirationTime:s.default._fromProtobuf(t.expirationTime),autoRenewPeriod:new l.default(n),storage:null!=t.storage?t.storage instanceof d.default?t.storage:d.default.fromValue(t.storage):d.default.ZERO,contractMemo:null!=t.memo?t.memo:"",balance:f.default.fromTinybars(null!=t.balance?t.balance:0),isDeleted:t.deleted,tokenRelationships:h.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),ledgerId:null!=t.ledgerId?m.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.ContractGetInfoResponse.ContractInfo.decode(t))}}]),e}();t.default=v},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(66)),c=r(n(48)),s=r(n(18)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38)),f=r(n(155)),d=r(n(100));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}var h=function(){function e(t){(0,a.default)(this,e),this.fileId=t.fileId,this.size=t.size,this.expirationTime=t.expirationTime,this.isDeleted=t.isDeleted,this.keys=t.keys,this.fileMemo=t.fileMemo,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{fileID:this.fileId._toProtobuf(),size:this.size,expirationTime:this.expirationTime._toProtobuf(),deleted:this.isDeleted,keys:this.keys._toProtobufKey().keyList,memo:this.fileMemo,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return l.FileGetInfoResponse.FileInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.size;return new e({fileId:u.default._fromProtobuf(t.fileID),size:n instanceof s.default?n:s.default.fromValue(n),expirationTime:c.default._fromProtobuf(t.expirationTime),isDeleted:t.deleted,keys:null!=t.keys?f.default.__fromProtobufKeyList(t.keys):new f.default,fileMemo:null!=t.memo?t.memo:"",ledgerId:null!=t.ledgerId?d.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.FileGetInfoResponse.FileInfo.decode(t))}}]),e}();t.default=h},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(628)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}var l=function(){function e(t){(0,a.default)(this,e),this.protobufVersion=t.protobufVersion,this.servicesVesion=t.servicesVesion,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{hapiProtoVersion:this.protobufVersion._toProtobuf(),hederaServicesVersion:this.servicesVesion._toProtobuf()}}},{key:"toBytes",value:function(){return c.NetworkGetVersionInfoResponse.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({protobufVersion:u.default._fromProtobuf(t.hapiProtoVersion),servicesVesion:u.default._fromProtobuf(t.hederaServicesVersion)})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(c.NetworkGetVersionInfoResponse.decode(t))}}]),e}();t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.major=t.major,this.minor=t.minor,this.patch=t.patch,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{major:this.major,minor:this.minor,patch:this.patch}}},{key:"toBytes",value:function(){return u.SemanticVersion.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({major:t.major,minor:t.minor,patch:t.patch})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.SemanticVersion.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(107)),a=r(n(1)),i=r(n(2)),u=r(n(158)),c=r(n(13)),s=r(n(48)),l=r(n(24)),f=n(38),d=r(n(82)),p=r(n(47)),h=r(n(155)),y=function(){function e(t){(0,a.default)(this,e),this.scheduleId=t.scheduleId,this.creatorAccountId=t.creatorAccountID,this.payerAccountId=t.payerAccountID,this.schedulableTransactionBody=t.schedulableTransactionBody,this.signers=t.signers,this.scheduleMemo=t.scheduleMemo,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.executed=t.executed,this.deleted=t.deleted,this.scheduledTransactionId=t.scheduledTransactionId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{scheduleID:null!=this.scheduleId?this.scheduleId._toProtobuf():null,creatorAccountID:null!=this.creatorAccountId?this.creatorAccountId._toProtobuf():null,payerAccountID:null!=this.payerAccountId?this.payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this.schedulableTransactionBody?this.schedulableTransactionBody:null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,signers:null!=this.signers?this.signers._toProtobufKey().keyList:null,memo:null!=this.scheduleMemo?this.scheduleMemo:"",expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,scheduledTransactionID:null!=this.scheduledTransactionId?this.scheduledTransactionId._toProtobuf():null}}},{key:"scheduledTransaction",get:function(){if(null==this.schedulableTransactionBody)throw new Error("Scheduled transaction body is empty");var e=new f.SchedulableTransactionBody(this.schedulableTransactionBody),t=e.data;return l.default.fromBytes(f.TransactionList.encode({transactionList:[{signedTransactionBytes:f.SignedTransaction.encode({bodyBytes:f.TransactionBody.encode((0,o.default)({transactionFee:this.schedulableTransactionBody.transactionFee,memo:this.schedulableTransactionBody.memo},t,e[t])).finish()}).finish()}]}).finish())}}],[{key:"_fromProtobuf",value:function(t){return new e({scheduleId:u.default._fromProtobuf(t.scheduleID),creatorAccountID:null!=t.creatorAccountID?c.default._fromProtobuf(t.creatorAccountID):null,payerAccountID:null!=t.payerAccountID?c.default._fromProtobuf(t.payerAccountID):null,schedulableTransactionBody:null!=t.scheduledTransactionBody?t.scheduledTransactionBody:null,adminKey:null!=t.adminKey?p.default._fromProtobufKey(t.adminKey):null,signers:null!=t.signers?h.default.__fromProtobufKeyList(t.signers):null,scheduleMemo:null!=t.memo?t.memo:null,expirationTime:null!=t.expirationTime?s.default._fromProtobuf(t.expirationTime):null,executed:null!=t.executionTime?s.default._fromProtobuf(t.executionTime):null,deleted:null!=t.deletionTime?s.default._fromProtobuf(t.deletionTime):null,scheduledTransactionId:null!=t.scheduledTransactionID?d.default._fromProtobuf(t.scheduledTransactionID):null})}}]),e}();t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(29)),c=r(n(13)),s=r(n(67)),l=r(n(48)),f=r(n(18)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38)),p=r(n(356)),h=r(n(357)),y=r(n(216)),m=r(n(275)),b=r(n(276)),v=r(n(47)),k=r(n(100));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}var _=function(){function e(t){(0,a.default)(this,e),this.tokenId=t.tokenId,this.name=t.name,this.symbol=t.symbol,this.decimals=t.decimals,this.totalSupply=t.totalSupply,this.treasuryAccountId=t.treasuryAccountId,this.adminKey=t.adminKey,this.kycKey=t.kycKey,this.freezeKey=t.freezeKey,this.pauseKey=t.pauseKey,this.wipeKey=t.wipeKey,this.supplyKey=t.supplyKey,this.feeScheduleKey=t.feeScheduleKey,this.defaultFreezeStatus=t.defaultFreezeStatus,this.defaultKycStatus=t.defaultKycStatus,this.pauseStatus=t.pauseStatus,this.isDeleted=t.isDeleted,this.autoRenewAccountId=t.autoRenewAccountId,this.autoRenewPeriod=t.autoRenewPeriod,this.expirationTime=t.expirationTime,this.tokenMemo=t.tokenMemo,this.customFees=t.customFees,this.tokenType=t.tokenType,this.supplyType=t.supplyType,this.maxSupply=t.maxSupply,this.ledgerId=t.ledgerId}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),name:this.name,symbol:this.symbol,decimals:this.decimals,totalSupply:this.totalSupply,treasury:null!=this.treasuryAccountId?this.treasuryAccountId._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,kycKey:null!=this.kycKey?this.kycKey._toProtobufKey():null,freezeKey:null!=this.freezeKey?this.freezeKey._toProtobufKey():null,pauseKey:null!=this.pauseKey?this.pauseKey._toProtobufKey():null,wipeKey:null!=this.wipeKey?this.wipeKey._toProtobufKey():null,supplyKey:null!=this.supplyKey?this.supplyKey._toProtobufKey():null,feeScheduleKey:null!=this.feeScheduleKey?this.feeScheduleKey._toProtobufKey():null,defaultFreezeStatus:null==this.defaultFreezeStatus?0:this.defaultFreezeStatus?1:2,defaultKycStatus:null==this.defaultKycStatus?0:this.defaultKycStatus?1:2,pauseStatus:null==this.pauseStatus?0:this.pauseStatus?1:2,deleted:this.isDeleted,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():void 0,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,expiry:null!=this.expirationTime?this.expirationTime._toProtobuf():null,memo:this.tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this.tokenType?this.tokenType._code:null,supplyType:null!=this.supplyType?this.supplyType._code:null,maxSupply:this.maxSupply,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return d.TokenInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.defaultFreezeStatus,r=t.defaultKycStatus,o=t.pauseStatus,a=null!=t.autoRenewAccount?c.default._fromProtobuf(t.autoRenewAccount):new c.default(0);return new e({tokenId:u.default._fromProtobuf(t.tokenId),name:t.name,symbol:t.symbol,decimals:t.decimals,totalSupply:f.default.fromValue(t.totalSupply),treasuryAccountId:null!=t.treasury?c.default._fromProtobuf(t.treasury):null,adminKey:null!=t.adminKey?v.default._fromProtobufKey(t.adminKey):null,kycKey:null!=t.kycKey?v.default._fromProtobufKey(t.kycKey):null,freezeKey:null!=t.freezeKey?v.default._fromProtobufKey(t.freezeKey):null,pauseKey:null!=t.pauseKey?v.default._fromProtobufKey(t.pauseKey):null,wipeKey:null!=t.wipeKey?v.default._fromProtobufKey(t.wipeKey):null,supplyKey:null!=t.supplyKey?v.default._fromProtobufKey(t.supplyKey):null,feeScheduleKey:null!=t.feeScheduleKey?v.default._fromProtobufKey(t.feeScheduleKey):null,defaultFreezeStatus:0===n?null:1==n,defaultKycStatus:0===r?null:1==r,pauseStatus:0===o?null:1==o,isDeleted:t.deleted,autoRenewAccountId:0!=a.shard.toInt()||0!=a.realm.toInt()||0!=a.num.toInt()?a:null,autoRenewPeriod:null!=t.autoRenewPeriod?s.default._fromProtobuf(t.autoRenewPeriod):null,expirationTime:null!=t.expiry?l.default._fromProtobuf(t.expiry):null,tokenMemo:null!=t.memo?t.memo:"",customFees:null!=t.customFees?t.customFees.map((function(e){return null!=e.fixedFee?y.default._fromProtobuf(e):null!=e.fractionalFee?m.default._fromProtobuf(e):b.default._fromProtobuf(e)})):[],tokenType:null!=t.tokenType?p.default._fromCode(t.tokenType):null,supplyType:null!=t.supplyType?h.default._fromCode(t.supplyType):null,maxSupply:null!=t.maxSupply?t.maxSupply:null,ledgerId:null!=t.ledgerId?k.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.TokenInfo.decode(t))}}]),e}();t.default=_},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(190)),c=r(n(13)),s=r(n(48)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(81)),f=r(n(100));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t){(0,a.default)(this,e),this.nftId=t.nftId,this.accountId=t.accountId,this.creationTime=t.creationTime,this.metadata=t.metadata,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{nftID:this.nftId._toProtobuf(),accountID:this.accountId._toProtobuf(),creationTime:this.creationTime._toProtobuf(),metadata:this.metadata,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toJson",value:function(){return{nftId:this.nftId.toString(),accountId:this.accountId.toString(),creationTime:this.creationTime.toString(),metadata:null!=this.metadata?l.encode(this.metadata):null,ledgerId:null!=this.ledgerId?this.ledgerId.toString():null}}},{key:"toString",value:function(){return JSON.stringify(this.toJson())}}],[{key:"_fromProtobuf",value:function(t){return new e({nftId:u.default._fromProtobuf(t.nftID),accountId:c.default._fromProtobuf(t.accountID),creationTime:s.default._fromProtobuf(t.creationTime),metadata:void 0!==t.metadata?t.metadata:null,ledgerId:null!=t.ledgerId?f.default.fromBytes(t.ledgerId):null})}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(129)),c=r(n(13)),s=r(n(48)),l=r(n(18)),f=r(n(67)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38)),p=r(n(47)),h=r(n(100));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var m=function(){function e(t){(0,a.default)(this,e),this.topicId=t.topicId,this.topicMemo=t.topicMemo,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.expirationTime=t.expirationTime,this.adminKey=t.adminKey,this.submitKey=t.submitKey,this.autoRenewPeriod=t.autoRenewPeriod,this.autoRenewAccountId=t.autoRenewAccountId,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{topicID:this.topicId._toProtobuf(),topicInfo:{memo:this.topicMemo,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber,expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,submitKey:null!=this.submitKey?this.submitKey._toProtobufKey():null,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():null}}}},{key:"toBytes",value:function(){return d.ConsensusTopicInfo.encode(this._toProtobuf().topicInfo).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.topicInfo;return new e({topicId:u.default._fromProtobuf(t.topicID),topicMemo:null!=n.memo?n.memo:"",runningHash:null!=n.runningHash?n.runningHash:new Uint8Array,sequenceNumber:null!=n.sequenceNumber?n.sequenceNumber instanceof l.default?n.sequenceNumber:l.default.fromValue(n.sequenceNumber):l.default.ZERO,expirationTime:null!=n.expirationTime?s.default._fromProtobuf(n.expirationTime):null,adminKey:null!=n.adminKey?p.default._fromProtobufKey(n.adminKey):null,submitKey:null!=n.submitKey?p.default._fromProtobufKey(n.submitKey):null,autoRenewPeriod:null!=n.autoRenewPeriod?new f.default(n.autoRenewPeriod.seconds):null,autoRenewAccountId:null!=n.autoRenewAccount?c.default._fromProtobuf(n.autoRenewAccount):null,ledgerId:null!=n.ledgerId?h.default.fromBytes(n.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf({topicInfo:d.ConsensusTopicInfo.decode(t)})}}]),e}();t.default=m},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(48)),u=r(n(634)),c=r(n(18)),s=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.chunks=t.chunks,Object.freeze(this)}return(0,a.default)(e,null,[{key:"_ofSingle",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof c.default?t.sequenceNumber:c.default.fromNumber(t.sequenceNumber):c.default.ZERO,chunks:[u.default._fromProtobuf(t)]})}},{key:"_ofMany",value:function(t){var n=t[t.length-1],r=i.default._fromProtobuf(n.consensusTimestamp),o=n.runningHash,a=null!=n.sequenceNumber?n.sequenceNumber instanceof c.default?n.sequenceNumber:c.default.fromValue(n.sequenceNumber):c.default.ZERO;t.sort((function(e,t){return(null!=e&&null!=e.chunkInfo&&null!=e.chunkInfo.number?e.chunkInfo.number:0)<(null!=t&&null!=t.chunkInfo&&null!=t.chunkInfo.number?t.chunkInfo.number:0)?-1:1}));var s=t.map((function(e){return u.default._fromProtobuf(e)})),l=s.map((function(e){return e.contents.length})).reduce((function(e,t){return e+t}),0),f=new Uint8Array(l),d=0;return t.forEach((function(e){f.set(e.message,d),d+=e.message.length})),new e({consensusTimestamp:r,contents:f,runningHash:o,sequenceNumber:a,chunks:s})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(48)),u=r(n(18)),c=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{consensusTimestamp:this.consensusTimestamp._toProtobuf(),message:this.contents,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber}}}],[{key:"_fromProtobuf",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof u.default?t.sequenceNumber:u.default.fromValue(t.sequenceNumber):u.default.ZERO})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(){(0,o.default)(this,e)}return(0,a.default)(e,[{key:"getLedgerId",value:function(){throw new Error("not implemented")}},{key:"getAccountId",value:function(){throw new Error("not implemented")}},{key:"getNetwork",value:function(){throw new Error("not implemented")}},{key:"getMirrorNetwork",value:function(){throw new Error("not implemented")}},{key:"sign",value:function(e){throw new Error("not implemented")}},{key:"getAccountBalance",value:function(){throw new Error("not implemented")}},{key:"getAccountInfo",value:function(){throw new Error("not implemented")}},{key:"getAccountRecords",value:function(){throw new Error("not implemented")}},{key:"signTransaction",value:function(e){throw new Error("not implemented")}},{key:"checkTransaction",value:function(e){throw new Error("not implemented")}},{key:"populateTransaction",value:function(e){throw new Error("not implemented")}},{key:"sendRequest",value:function(e){throw new Error("not implemented")}}]),e}();t.default=i},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(1307)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.newNode)this._address="string"==typeof t.newNode.address?i.default.fromString(t.newNode.address):t.newNode.address,this._cert=void 0,this._channel=null,this._channelInitFunction=t.newNode.channelInitFunction,this._lastUsed=Date.now(),this._backoffUntil=Date.now(),this._useCount=0,this._badGrpcStatusCount=0,this._minBackoff=8e3,this._maxBackoff=36e5,this._currentBackoff=this._minBackoff;else{if(null==t.cloneNode)throw new Error("failed to create ManagedNode: ".concat(JSON.stringify(t)));this._address=t.cloneNode.address,this._cert=t.cloneNode.node._cert,this._channel=t.cloneNode.node._channel,this._channelInitFunction=t.cloneNode.node._channelInitFunction,this._currentBackoff=t.cloneNode.node._currentBackoff,this._lastUsed=t.cloneNode.node._lastUsed,this._backoffUntil=t.cloneNode.node._backoffUntil,this._useCount=t.cloneNode.node._useCount,this._badGrpcStatusCount=t.cloneNode.node._badGrpcStatusCount,this._minBackoff=t.cloneNode.node._minBackoff,this._maxBackoff=t.cloneNode.node._minBackoff}}return(0,a.default)(e,[{key:"getKey",value:function(){throw new Error("not implemented")}},{key:"toInsecure",value:function(){throw new Error("not implemented")}},{key:"toSecure",value:function(){throw new Error("not implemented")}},{key:"setCert",value:function(e){return this}},{key:"address",get:function(){return this._address}},{key:"attempts",get:function(){return this._badGrpcStatusCount}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._minBackoff=e,this}},{key:"maxBackoff",get:function(){return this._maxBackoff}},{key:"setMaxBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._maxBackoff=e,this}},{key:"getChannel",value:function(){return this._useCount++,this.__lastUsed=Date.now(),null!=this._channel||(this._channel=this._channelInitFunction(this.address.toString(),this._cert)),this._channel}},{key:"isHealthy",value:function(){return this._backoffUntil<=Date.now()}},{key:"increaseDelay",value:function(){this._currentBackoff=Math.min(2*this._currentBackoff,this._maxBackoff),this._backoffUntil=Date.now()+this._currentBackoff}},{key:"decreaseDelay",value:function(){this._currentBackoff=Math.max(this._currentBackoff/2,this._minBackoff)}},{key:"getRemainingTime",value:function(){return this._backoffUntil-this._lastUsed}},{key:"wait",value:function(){var e=this;return new Promise((function(t){return setTimeout(t,e.getRemainingTime())}))}},{key:"compare",value:function(e){var t=this.getRemainingTime()-e.getRemainingTime();return 0!=t||0!=(t=this._currentBackoff-e._currentBackoff)||0!=(t=this._badGrpcStatusCount-e._badGrpcStatusCount)||0!=(t=this._useCount-e._useCount)?t:this._lastUsed-e._lastUsed}},{key:"close",value:function(){null!=this._channel&&this._channel.close(),this._channel=null}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(100));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)for(var e=this._nodes.length-1;e>=0;e--){this._nodes[e]._badGrpcStatusCount=e)break;i.has(s.getKey())||(i.add(s.getKey()),a.push(s))}}catch(e){u.e(e)}finally{u.f()}return a}},{key:"_closeNode",value:function(e){var t=this._nodes[e];t.close(),this._removeNodeFromNetwork(t),this._nodes.splice(e,1)}},{key:"_removeNodeFromNetwork",value:function(e){for(var t=this._network.get(e.getKey()),n=0;n0&&void 0!==n[0]?n[0]:"",!this._isLegacy){e.next=5;break}if(!(t.length>0)){e.next=4;break}throw new Error("legacy 22-word mnemonics do not support passphrases");case 4:return e.abrupt("return",this.toLegacyPrivateKey());case 5:return e.next=7,this._toPrivateKey(t);case 7:return e.abrupt("return",e.sent);case 8:case"end":return e.stop()}}),e,this)}))),function(){return T.apply(this,arguments)})},{key:"_validate",value:(A=(0,c.default)(a.default.mark((function e(){var t,n,r,o,c,s,l,f,d,b,v,k,g;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._isLegacy){e.next=12;break}if(22===this.words.length){e.next=3;break}throw new p.default(this,h.default.BadLength,[]);case 3:if(!((t=this.words.reduce((function(e,t,n){return y.default.includes(t.toLowerCase())?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=6;break}throw new p.default(this,h.default.UnknownWords,t);case 6:if(n=w.legacy1(this.words,y.default),r=(0,i.default)(n,2),o=r[0],c=r[1],s=w.crc8(o),c===s){e.next=10;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 10:e.next=28;break;case 12:if(12===this.words.length||24===this.words.length){e.next=14;break}throw new p.default(this,h.default.BadLength,[]);case 14:if(!((l=this.words.reduce((function(e,t,n){return m.default.includes(t)?e:[].concat((0,u.default)(e),[n])}),[])).length>0)){e.next=17;break}throw new p.default(this,h.default.UnknownWords,l);case 17:return f=this.words.map((function(e){return m.default.indexOf(e).toString(2).padStart(11,"0")})).join(""),d=32*Math.floor(f.length/33),b=f.slice(0,d),v=f.slice(d),k=b.match(/(.{1,8})/g),g=k.map(P),e.next=25,S(Uint8Array.from(g));case 25:if(e.sent===v){e.next=28;break}throw new p.default(this,h.default.ChecksumMismatch,[]);case 28:return e.abrupt("return",this);case 29:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"_toPrivateKey",value:(v=(0,c.default)(a.default.mark((function e(){var t,n,r,o,i,u,c,s,l,p,h,y,m=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=m.length>0&&void 0!==m[0]?m[0]:"",n=this.words.join(" "),r="mnemonic".concat(t),e.next=5,k.deriveKey(g.HashAlgorithm.Sha512,n,r,2048,64);case 5:return o=e.sent,e.next=8,g.hash(g.HashAlgorithm.Sha512,"ed25519 seed",o);case 8:i=e.sent,u=i.subarray(0,32),c=i.subarray(32),s=0,l=[44,3030,0,0];case 12:if(!(s>8,i=255&o;a?n.push(a,i):n.push(i)}return n},r.zero2=o,r.toHex=a,r.encode=function(e,t){return"hex"===t?a(e):e}},function(e,t,n){"use strict";var r,o=n(0)(n(3));function a(e){this.rand=e}if(e.exports=function(e){return r||(r=new a(null)),r.generate(e)},e.exports.Rand=a,a.prototype.generate=function(e){return this._rand(e)},a.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),n=0;n>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(101),o=n(219),a=n(650),i=n(160),u=r.sum32,c=r.sum32_4,s=r.sum32_5,l=a.ch32,f=a.maj32,d=a.s0_256,p=a.s1_256,h=a.g0_256,y=a.g1_256,m=o.BlockHash,b=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function v(){if(!(this instanceof v))return new v;m.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=b,this.W=new Array(64)}r.inherits(v,m),e.exports=v,v.blockSize=512,v.outSize=256,v.hmacStrength=192,v.padLength=64,v.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){c=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(c)throw a}}}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n4)throw new Error("unsupported DER integer length of ".concat(t," bytes"));return n.getUint32(0,!1)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(277)),p=r(n(657)),h=r(n(132)),y=r(n(49)),m=r(n(131));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var k=function(e){(0,s.default)(k,e);var t,n,r,o,l,f,y,m,b=v(k);function k(e){var t;return(0,u.default)(this,k),(t=b.call(this))._key=e,t}return(0,c.default)(k,[{key:"derive",value:(m=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,this._key.derive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"legacyDerive",value:(y=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,this._key.legacyDerive(t);case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"publicKey",get:function(){return new h.default(this._key.publicKey)}},{key:"sign",value:function(e){return this._key.sign(e)}},{key:"signTransaction",value:function(e){var t=e._signedTransactions.get(0),n=null!=t.bodyBytes?this.sign(t.bodyBytes):new Uint8Array;return e.addSignature(this.publicKey,n),n}},{key:"isDerivable",value:function(){return this._key.isDerivable()}},{key:"toBytes",value:function(){return this._key.toBytes()}},{key:"toBytesDer",value:function(){return this._key.toBytesDer()}},{key:"toBytesRaw",value:function(){return this._key.toBytesRaw()}},{key:"toString",value:function(){return this._key.toStringDer()}},{key:"toStringDer",value:function(){return this._key.toStringDer()}},{key:"toStringRaw",value:function(){return this._key.toStringRaw()}},{key:"toKeystore",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._key.toKeystore(e)}},{key:"_toProtobufKey",value:function(){return this.publicKey._toProtobufKey()}},{key:"toAccountId",value:function(e,t){return this.publicKey.toAccountId(e,t)}}],[{key:"generateED25519",value:function(){return new k(d.PrivateKey.generateED25519())}},{key:"generateECDSA",value:function(){return new k(d.PrivateKey.generateECDSA())}},{key:"generate",value:function(){return k.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateED25519Async();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=k,e.next=3,d.PrivateKey.generateECDSAAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){return new k(d.PrivateKey.fromBytes(e))}},{key:"fromBytesECDSA",value:function(e){return new k(d.PrivateKey.fromBytesECDSA(e))}},{key:"fromBytesED25519",value:function(e){return new k(d.PrivateKey.fromBytesED25519(e))}},{key:"fromString",value:function(e){return new k(d.PrivateKey.fromString(e))}},{key:"fromStringECDSA",value:function(e){return new k(d.PrivateKey.fromStringECDSA(e))}},{key:"fromStringED25519",value:function(e){return new k(d.PrivateKey.fromStringED25519(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"",!(t instanceof p.default)){e.next=7;break}return e.t0=k,e.next=5,d.PrivateKey.fromMnemonic(t._mnemonic,n);case 5:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 7:return e.t2=k,e.next=10,d.PrivateKey.fromMnemonic(t,n);case 10:return e.t3=e.sent,e.abrupt("return",new e.t2(e.t3));case 12:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=k,e.next=4,d.PrivateKey.fromKeystore(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=k,e.next=4,d.PrivateKey.fromPem(t,n);case 4:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),k}(y.default);t.default=k,m.default.privateKeyConstructor=function(e){return new k(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(277)),l=r(n(131));function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}var d=function(){function e(t){(0,u.default)(this,e),this._mnemonic=t}var t,n,r,o,f,d;return(0,c.default)(e,[{key:"toPrivateKey",value:(d=(0,i.default)(a.default.mark((function e(){var t,n=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=n.length>0&&void 0!==n[0]?n[0]:"",null!=l.default.privateKeyConstructor){e.next=3;break}throw new Error("`PrivateKey` has not been loaded");case 3:return e.t0=l.default,e.next=6,this._mnemonic.toPrivateKey(t);case 6:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 8:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"toLegacyPrivateKey",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=l.default.privateKeyConstructor){e.next=2;break}throw new Error("`PrivateKey` has not been loaded");case 2:return e.t0=l.default,e.next=5,this._mnemonic.toLegacyPrivateKey();case 5:return e.t1=e.sent,e.abrupt("return",e.t0.privateKeyConstructor.call(e.t0,e.t1));case 7:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"toString",value:function(){return this._mnemonic.toString()}}],[{key:"generate",value:(o=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(24);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return o.apply(this,arguments)})},{key:"generate12",value:(r=(0,i.default)(a.default.mark((function t(){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic._generate(12);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(){return r.apply(this,arguments)})},{key:"fromWords",value:(n=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromWords(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return n.apply(this,arguments)})},{key:"fromString",value:(t=(0,i.default)(a.default.mark((function t(n){return a.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.t0=e,t.next=3,s.Mnemonic.fromString(n);case 3:return t.t1=t.sent,t.abrupt("return",new t.t0(t.t1));case 5:case"end":return t.stop()}}),t)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(159)),u=function(){function e(t,n,r){(0,o.default)(this,e),this._name=t,this._symbol=n,this._tinybar=r,Object.freeze(this)}return(0,a.default)(e,null,[{key:"fromString",value:function(t){switch(t){case e.Hbar._symbol:return e.Hbar;case e.Tinybar._symbol:return e.Tinybar;case e.Microbar._symbol:return e.Microbar;case e.Millibar._symbol:return e.Millibar;case e.Kilobar._symbol:return e.Kilobar;case e.Megabar._symbol:return e.Megabar;case e.Gigabar._symbol:return e.Gigabar;default:throw new Error("Unknown unit.")}}}]),e}();t.default=u,u.Tinybar=new u("tinybar","tℏ",new i.default(1)),u.Microbar=new u("microbar","μℏ",new i.default(100)),u.Millibar=new u("millibar","mℏ",new i.default(1e5)),u.Hbar=new u("hbar","ℏ",new i.default("100000000")),u.Kilobar=new u("kilobar","kℏ",new i.default(1e3).multipliedBy(new i.default("100000000"))),u.Megabar=new u("megabar","Mℏ",new i.default(1e6).multipliedBy(new i.default("100000000"))),u.Gigabar=new u("gigabar","Gℏ",new i.default("1000000000").multipliedBy(new i.default("100000000")))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(7)),a=r(n(8)),i=r(n(1)),u=r(n(2)),c=r(n(282)),s=r(n(162)),l=r(n(660)),f=r(n(665)),d=function(){function e(t){(0,i.default)(this,e),this.nodeId=t.nodeId,this.transactionHash=t.transactionHash,this.transactionId=t.transactionId,Object.freeze(this)}var t,n;return(0,u.default)(e,[{key:"getReceipt",value:(n=(0,a.default)(o.default.mark((function e(t){var n;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(new l.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t);case 2:if((n=e.sent).status===s.default.Success){e.next=5;break}throw new c.default({transactionReceipt:n,status:n.status,transactionId:this.transactionId});case 5:return e.abrupt("return",n);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"getRecord",value:(t=(0,a.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getReceipt(t);case 2:return e.abrupt("return",(new f.default).setTransactionId(this.transactionId).setNodeAccountIds([this.nodeId]).execute(t));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=d},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=k(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),f=r(n(162)),d=r(n(283)),p=r(n(85)),h=r(n(221)),y=r(n(282)),m=n(133),b=n(39),v=r(n(193));function k(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(k=function(e){return e?n:t})(e)}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var _=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeDuplicates",value:function(e){return this._includeDuplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._includeDuplicates&&this._includeDuplicates}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:b.ResponseCodeEnum.OK);switch(v.default.debug("[".concat(this._getLogId(),"] received node precheck status ").concat(r.toString())),r){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return m.ExecutionState.Retry;case f.default.Ok:break;default:return m.ExecutionState.Error}var o=t.transactionGetReceipt.receipt.status;switch(r=f.default._fromCode(o),v.default.debug("[".concat(this._getLogId(),"] received receipt status ").concat(r.toString())),r){case f.default.Busy:case f.default.Unknown:case f.default.ReceiptNotFound:return m.ExecutionState.Retry;case f.default.Success:return m.ExecutionState.Finished;default:return m.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=f.default._fromCode(null!=n?n:b.ResponseCodeEnum.OK);switch(r){case f.default.Ok:break;default:return new h.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetReceipt,a=o.receipt.status;return r=f.default._fromCode(a),new y.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf(o)})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTransactionReceipts(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetReceipt.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetReceipt;return Promise.resolve(d.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetReceipt:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeDuplicates:this._includeDuplicates,includeChildReceipts:this._includeChildren}}}},{key:"_getLogId",value:function(){return"TransactionReceiptQuery:".concat(this._timestamp.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetReceipt;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0,includeChildren:null!=t.includeChildReceipts?t.includeChildReceipts:void 0})}}]),n}(l.default);t.default=_,l.QUERY_REGISTRY.set("transactionGetReceipt",_._fromProtobuf)},function(e,t,n){"use strict";e.exports=n(1353)},function(e,t,n){"use strict";e.exports=f;var r,o=n(163),a=o.LongBits,i=o.base64,u=o.utf8;function c(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}function s(){}function l(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}function f(){this.len=0,this.head=new c(s,0,0),this.tail=this.head,this.states=null}var d=function(){return o.Buffer?function(){return(f.create=function(){return new r})()}:function(){return new f}};function p(e,t,n){t[n]=255&e}function h(e,t){this.len=e,this.next=void 0,this.val=t}function y(e,t,n){for(;e.hi;)t[n++]=127&e.lo|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[n++]=127&e.lo|128,e.lo=e.lo>>>7;t[n++]=e.lo}function m(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}f.create=d(),f.alloc=function(e){return new o.Array(e)},o.Array!==Array&&(f.alloc=o.pool(f.alloc,o.Array.prototype.subarray)),f.prototype._push=function(e,t,n){return this.tail=this.tail.next=new c(e,t,n),this.len+=t,this},h.prototype=Object.create(c.prototype),h.prototype.fn=function(e,t,n){for(;e>127;)t[n++]=127&e|128,e>>>=7;t[n]=e},f.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new h((e>>>=0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this},f.prototype.int32=function(e){return e<0?this._push(y,10,a.fromNumber(e)):this.uint32(e)},f.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)},f.prototype.uint64=function(e){var t=a.from(e);return this._push(y,t.length(),t)},f.prototype.int64=f.prototype.uint64,f.prototype.sint64=function(e){var t=a.from(e).zzEncode();return this._push(y,t.length(),t)},f.prototype.bool=function(e){return this._push(p,1,e?1:0)},f.prototype.fixed32=function(e){return this._push(m,4,e>>>0)},f.prototype.sfixed32=f.prototype.fixed32,f.prototype.fixed64=function(e){var t=a.from(e);return this._push(m,4,t.lo)._push(m,4,t.hi)},f.prototype.sfixed64=f.prototype.fixed64,f.prototype.float=function(e){return this._push(o.float.writeFloatLE,4,e)},f.prototype.double=function(e){return this._push(o.float.writeDoubleLE,8,e)};var b=o.Array.prototype.set?function(e,t,n){t.set(e,n)}:function(e,t,n){for(var r=0;r>>0;if(!t)return this._push(p,1,0);if(o.isString(e)){var n=f.alloc(t=i.length(e));i.decode(e,n,0),e=n}return this.uint32(t)._push(b,t,e)},f.prototype.string=function(e){var t=u.length(e);return t?this.uint32(t)._push(u.write,t,e):this._push(p,1,0)},f.prototype.fork=function(){return this.states=new l(this),this.head=this.tail=new c(s,0,0),this.len=0,this},f.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new c(s,0,0),this.len=0),this},f.prototype.ldelim=function(){var e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=t,this.len+=n),this},f.prototype.finish=function(){for(var e=this.head.next,t=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t},f._configure=function(e){r=e,f.create=d(),r._configure()}},function(e,t,n){"use strict";e.exports=c;var r,o=n(163),a=o.LongBits,i=o.utf8;function u(e,t){return RangeError("index out of range: "+e.pos+" + "+(t||1)+" > "+e.len)}function c(e){this.buf=e,this.pos=0,this.len=e.length}var s,l="undefined"!=typeof Uint8Array?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new c(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new c(e);throw Error("illegal buffer")},f=function(){return o.Buffer?function(e){return(c.create=function(e){return o.Buffer.isBuffer(e)?new r(e):l(e)})(e)}:l};function d(){var e=new a(0,0),t=0;if(!(this.len-this.pos>4)){for(;t<3;++t){if(this.pos>=this.len)throw u(this);if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(127&this.buf[this.pos++])<<7*t)>>>0,e}for(;t<4;++t)if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(127&this.buf[this.pos])<<28)>>>0,e.hi=(e.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return e;if(t=0,this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw u(this);if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}function p(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}function h(){if(this.pos+8>this.len)throw u(this,8);return new a(p(this.buf,this.pos+=4),p(this.buf,this.pos+=4))}c.create=f(),c.prototype._slice=o.Array.prototype.subarray||o.Array.prototype.slice,c.prototype.uint32=(s=4294967295,function(){if(s=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return s;if(s=(s|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return s;if((this.pos+=5)>this.len)throw this.pos=this.len,u(this,10);return s}),c.prototype.int32=function(){return 0|this.uint32()},c.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(1&e)|0},c.prototype.bool=function(){return 0!==this.uint32()},c.prototype.fixed32=function(){if(this.pos+4>this.len)throw u(this,4);return p(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw u(this,4);return 0|p(this.buf,this.pos+=4)},c.prototype.float=function(){if(this.pos+4>this.len)throw u(this,4);var e=o.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e},c.prototype.double=function(){if(this.pos+8>this.len)throw u(this,4);var e=o.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e},c.prototype.bytes=function(){var e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw u(this,e);return this.pos+=e,Array.isArray(this.buf)?this.buf.slice(t,n):t===n?new this.buf.constructor(0):this._slice.call(this.buf,t,n)},c.prototype.string=function(){var e=this.bytes();return i.read(e,0,e.length)},c.prototype.skip=function(e){if("number"==typeof e){if(this.pos+e>this.len)throw u(this,e);this.pos+=e}else do{if(this.pos>=this.len)throw u(this)}while(128&this.buf[this.pos++]);return this},c.prototype.skipType=function(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(e=7&this.uint32());)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+e+" at offset "+this.pos)}return this},c._configure=function(e){r=e,c.create=f(),r._configure();var t=o.Long?"toLong":"toNumber";o.merge(c.prototype,{int64:function(){return d.call(this)[t](!1)},uint64:function(){return d.call(this)[t](!0)},sint64:function(){return d.call(this).zzDecode()[t](!1)},fixed64:function(){return h.call(this)[t](!0)},sfixed64:function(){return h.call(this)[t](!1)}})}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.Ok:return"OK";case e.Cancelled:return"CANCELLED";case e.Unknown:return"UNKNOWN";case e.InvalidArgument:return"INVALID_ARGUMENT";case e.DeadlineExceeded:return"DEADLINE_EXCEEDED";case e.NotFound:return"NOT_FOUND";case e.AlreadyExists:return"ALREADY_EXISTS";case e.PermissionDenied:return"PERMISSION_DENIED";case e.Unauthenticated:return"UNAUTHENTICATED";case e.ResourceExhausted:return"RESOURCE_EXHAUSTED";case e.FailedPrecondition:return"FAILED_PRECONDITION";case e.Aborted:return"ABORTED";case e.OutOfRange:return"OUT_OF_RANGE";case e.Unimplemented:return"UNIMPLEMENTED";case e.Internal:return"INTERNAL";case e.Unavailable:return"UNAVAILABLE";case e.DataLoss:return"DATA_LOSS";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromValue",value:function(t){switch(t){case 0:return e.Ok;case 1:return e.Cancelled;case 2:return e.Unknown;case 3:return e.InvalidArgument;case 4:return e.DeadlineExceeded;case 5:return e.NotFound;case 6:return e.AlreadyExists;case 7:return e.PermissionDenied;case 16:return e.Unauthenticated;case 8:return e.ResourceExhausted;case 9:return e.FailedPrecondition;case 10:return e.Aborted;case 11:return e.OutOfRange;case 12:return e.Unimplemented;case 13:return e.Internal;case 14:return e.Unavailable;case 15:return e.DataLoss;default:throw new Error("(BUG) non-exhaustive GrpcStatus switch statement")}}}]),e}();t.default=i,i.Ok=new i(0),i.Cancelled=new i(1),i.Unknown=new i(2),i.InvalidArgument=new i(3),i.DeadlineExceeded=new i(4),i.NotFound=new i(5),i.AlreadyExists=new i(6),i.PermissionDenied=new i(7),i.Unauthenticated=new i(16),i.ResourceExhausted=new i(8),i.FailedPrecondition=new i(9),i.Aborted=new i(10),i.OutOfRange=new i(11),i.Unimplemented=new i(12),i.Internal=new i(13),i.Unavailable=new i(14),i.DataLoss=new i(15)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),f=r(n(367)),d=r(n(283)),p=r(n(85)),h=r(n(162)),y=r(n(221)),m=r(n(282)),b=n(133),v=n(39),k=r(n(193));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function _(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var w=function(e){(0,u.default)(n,e);var t=_(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._transactionId=null,e._includeChildren=null,e._includeDuplicates=null,null!=r.transactionId&&e.setTransactionId(r.transactionId),null!=r.includeChildren&&e.setIncludeChildren(r.includeChildren),null!=r.includeDuplicates&&e.setIncludeDuplicates(r.includeDuplicates),e}return(0,i.default)(n,[{key:"transactionId",get:function(){return this._transactionId}},{key:"setTransactionId",value:function(e){return this._transactionId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"setIncludeChildren",value:function(e){return this._includeChildren=e,this}},{key:"includeChildren",get:function(){return null!=this._includeChildren&&this._includeChildren}},{key:"setIncludeDuplicates",value:function(e){return this._duplicates=e,this}},{key:"includeDuplicates",get:function(){return null!=this._duplicates&&this._duplicates}},{key:"_shouldRetry",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(k.default.debug("[".concat(this._getLogId(),"] received node precheck status ").concat(r.toString())),r){case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return b.ExecutionState.Retry;case h.default.Ok:break;default:return b.ExecutionState.Error}var o=t.transactionGetRecord;if(o.header.responseType===v.ResponseType.COST_ANSWER)return b.ExecutionState.Finished;var a=o.transactionRecord.receipt.status;switch(r=h.default._fromCode(a),k.default.debug("[".concat(this._getLogId(),"] received record's receipt ").concat(r.toString())),r){case h.default.Ok:case h.default.Busy:case h.default.Unknown:case h.default.ReceiptNotFound:case h.default.RecordNotFound:return b.ExecutionState.Retry;case h.default.Success:return b.ExecutionState.Finished;default:return b.ExecutionState.Error}}},{key:"_mapStatusError",value:function(e,t){var n=this._mapResponseHeader(t).nodeTransactionPrecheckCode,r=h.default._fromCode(null!=n?n:v.ResponseCodeEnum.OK);switch(r){case h.default.Ok:break;default:return new y.default({status:r,transactionId:this._getTransactionId()})}var o=t.transactionGetRecord.transactionRecord.receipt,a=o.status;return r=h.default._fromCode(a),new m.default({status:r,transactionId:this._getTransactionId(),transactionReceipt:d.default._fromProtobuf({receipt:o})})}},{key:"_validateChecksums",value:function(e){null!=this._transactionId&&null!=this._transactionId.accountId&&this._transactionId.accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getTxRecordByTxID(t)}},{key:"_mapResponseHeader",value:function(e){return e.transactionGetRecord.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.transactionGetRecord;return Promise.resolve(f.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{transactionGetRecord:{header:e,transactionID:null!=this._transactionId?this._transactionId._toProtobuf():null,includeChildRecords:this._includeChildren,includeDuplicates:this._includeDuplicates}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"TransactionRecordQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.transactionGetRecord;return new n({transactionId:t.transactionID?p.default._fromProtobuf(t.transactionID):void 0,includeChildren:null!=t.includeChildRecords?t.includeChildRecords:void 0,includeDuplicates:null!=t.includeDuplicates?t.includeDuplicates:void 0})}}]),n}(l.default);t.default=w,l.QUERY_REGISTRY.set("transactionGetRecord",w._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(61)),u=function(){function e(t){(0,o.default)(this,e),this.contractId=t.contractId,this.bloom=t.bloom,this.topics=t.topics,this.data=t.data,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),bloom:this.bloom,topic:this.topics,data:this.data}}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:i.default._fromProtobuf(t.contractID),bloom:null!=t.bloom?t.bloom:new Uint8Array,topics:null!=t.topic?t.topic:[],data:null!=t.data?t.data:new Uint8Array})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=r(n(14)),d=r(n(668));function p(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return h(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return h(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._feeCollectorAccountId,null!=t.feeCollectorAccountId&&this.setFeeCollectorAccountId(t.feeCollectorAccountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId),this._amount,null!=t.amount&&this.setAmount(t.amount),this._payerAccountIds,null!=t.payerAccountIds&&this.setPayerAccountIds(t.payerAccountIds)}return(0,a.default)(e,[{key:"feeCollectorAccountId",get:function(){return this._feeCollectorAccountId}},{key:"setFeeCollectorAccountId",value:function(e){return this._feeCollectorAccountId="string"==typeof e?u.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?i.default.fromString(e):e,this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._amount="number"==typeof e?c.default.fromNumber(e):e,this}},{key:"payerAccountIds",get:function(){return this._payerAccountIds}},{key:"setPayerAccountIds",value:function(e){return this._payerAccountIds=e,this}},{key:"_toProtobuf",value:function(){return{feeCollectorAccountId:null!=this.feeCollectorAccountId?this.feeCollectorAccountId._toProtobuf():null,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,amount:this._amount,effectivePayerAccountId:null!=this._payerAccountIds?this._payerAccountIds.map((function(e){return e._toProtobuf()})):null}}}],[{key:"_fromProtobuf",value:function(t){return new e({feeCollectorAccountId:null!=t.feeCollectorAccountId?u.default._fromProtobuf(t.feeCollectorAccountId):void 0,tokenId:null!=t.tokenId?i.default._fromProtobuf(t.tokenId):void 0,amount:null!=t.amount?t.amount:void 0,payerAccountIds:null!=t.effectivePayerAccountId?t.effectivePayerAccountId.map((function(e){return u.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(19)),u=r(n(14)),c=r(n(30));function s(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._contractId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_isPaymentRequired",value:function(){return!1}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoGetBalance(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptogetAccountBalance.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptogetAccountBalance;return Promise.resolve(p.default._fromProtobuf(r))}},{key:"_onMakeRequest",value:function(e){return{cryptogetAccountBalance:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}},{key:"_getLogId",value:function(){return"AccountBalanceQuery:".concat(this._timestamp.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptogetAccountBalance;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,contractId:null!=t.contractID?d.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=m,l.QUERY_REGISTRY.set("cryptogetAccountBalance",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(14)),c=r(n(370)),s=r(n(32)),l=r(n(50)),f=r(n(19)),d=r(n(676)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39)),h=r(n(69)),y=r(n(49)),m=r(n(132)),b=r(n(103)),v=r(n(222)),k=r(n(223)),g=r(n(224));function _(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(_=function(e){return e?n:t})(e)}var w=function(){function e(t){(0,a.default)(this,e),this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.isDeleted=t.isDeleted,this.proxyAccountId=t.proxyAccountId,this.proxyReceived=t.proxyReceived,this.key=t.key,this.balance=t.balance,this.sendRecordThreshold=t.sendRecordThreshold,this.receiveRecordThreshold=t.receiveRecordThreshold,this.isReceiverSignatureRequired=t.isReceiverSignatureRequired,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.liveHashes=t.liveHashes,this.tokenRelationships=t.tokenRelationships,this.accountMemo=t.accountMemo,this.ownedNfts=t.ownedNfts,this.maxAutomaticTokenAssociations=t.maxAutomaticTokenAssociations,this.aliasKey=t.aliasKey,this.ledgerId=t.ledgerId,this.hbarAllowances=t.hbarAllowances,this.tokenAllowances=t.tokenAllowances,this.nftAllowances=t.nftAllowances,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,deleted:this.isDeleted,proxyAccountID:null!=this.proxyAccountId?this.proxyAccountId._toProtobuf():null,proxyReceived:this.proxyReceived.toTinybars(),key:this.key._toProtobufKey(),balance:this.balance.toTinybars(),generateSendRecordThreshold:this.sendRecordThreshold.toTinybars(),generateReceiveRecordThreshold:this.receiveRecordThreshold.toTinybars(),receiverSigRequired:this.isReceiverSignatureRequired,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:this.autoRenewPeriod._toProtobuf(),liveHashes:this.liveHashes.map((function(e){return e._toProtobuf()})),tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,memo:this.accountMemo,ownedNfts:this.ownedNfts,maxAutomaticTokenAssociations:this.maxAutomaticTokenAssociations.toInt(),alias:null!=this.aliasKey?p.Key.encode(this.aliasKey._toProtobufKey()).finish():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.CryptoGetInfoResponse.AccountInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=null!=t.alias&&t.alias.length>0?y.default._fromProtobufKey(p.Key.decode(t.alias)):null;return n instanceof m.default||(n=null),new e({accountId:u.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:null,isDeleted:null!=t.deleted&&t.deleted,key:y.default._fromProtobufKey(t.key),balance:s.default.fromTinybars(null!=t.balance?t.balance:0),sendRecordThreshold:s.default.fromTinybars(null!=t.generateSendRecordThreshold?t.generateSendRecordThreshold:0),receiveRecordThreshold:s.default.fromTinybars(null!=t.generateReceiveRecordThreshold?t.generateReceiveRecordThreshold:0),isReceiverSignatureRequired:null!=t.receiverSigRequired&&t.receiverSigRequired,expirationTime:l.default._fromProtobuf(t.expirationTime),autoRenewPeriod:null!=t.autoRenewPeriod?new h.default(t.autoRenewPeriod.seconds):new h.default(0),proxyAccountId:null!=t.proxyAccountID&&0!==f.default.fromValue(t.proxyAccountID.shardNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.realmNum).toInt()&&0!==f.default.fromValue(t.proxyAccountID.accountNum).toInt()?u.default._fromProtobuf(t.proxyAccountID):null,proxyReceived:s.default.fromTinybars(null!=t.proxyReceived?t.proxyReceived:0),liveHashes:(null!=t.liveHashes?t.liveHashes:[]).map((function(e){return c.default._fromProtobuf(e)})),tokenRelationships:d.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),accountMemo:null!=t.memo?t.memo:"",ownedNfts:t.ownedNfts?t.ownedNfts:f.default.ZERO,maxAutomaticTokenAssociations:t.maxAutomaticTokenAssociations?f.default.fromNumber(t.maxAutomaticTokenAssociations):f.default.ZERO,aliasKey:n,ledgerId:null!=t.ledgerId?b.default.fromBytes(t.ledgerId):null,hbarAllowances:(null!=t.grantedCryptoAllowances?t.grantedCryptoAllowances:[]).map((function(e){return v.default._fromGrantedProtobuf(e)})),tokenAllowances:(null!=t.grantedTokenAllowances?t.grantedTokenAllowances:[]).map((function(e){return k.default._fromGrantedProtobuf(e)})),nftAllowances:(null!=t.grantedNftAllowances?t.grantedNftAllowances:[]).map((function(e){return g.default._fromGrantedProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.CryptoGetInfoResponse.AccountInfo.decode(t))}}]),e}();t.default=w},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=r(n(1381));function d(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._publicKey=null,null!=t.publicKey&&this.setPublicKey(t.publicKey),this._nodeId=null,null!=t.nodeId&&this.setNodeId(t.nodeId),this._accountId=null,null!=t.accountId&&this.setAccountId(t.accountId),this._certHash=null,null!=t.certHash&&this.setCertHash(t.certHash),this._addresses=[],null!=t.addresses&&this.setAddresses(t.addresses),this._description=null,null!=t.description&&this.setDescription(t.description),this._stake=null,null!=t.stake&&this.setStake(t.stake)}return(0,i.default)(e,[{key:"publicKey",get:function(){return this._publicKey}},{key:"setPublicKey",value:function(e){return this._publicKey=e,this}},{key:"nodeId",get:function(){return this._nodeId}},{key:"setNodeId",value:function(e){return this._nodeId=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?u.default.fromString(e):e.clone(),this}},{key:"certHash",get:function(){return this._certHash}},{key:"setCertHash",value:function(e){return this._certHash=e,this}},{key:"addresses",get:function(){return this._addresses}},{key:"setAddresses",value:function(e){return this._addresses=e,this}},{key:"description",get:function(){return this._description}},{key:"setDescription",value:function(e){return this._description=e,this}},{key:"stake",get:function(){return this._stake}},{key:"setStake",value:function(e){return this._stake=e,this}},{key:"_toProtobuf",value:function(){return{RSA_PubKey:this._publicKey,nodeId:this._nodeId,nodeAccountId:null!=this._accountId?this._accountId._toProtobuf():null,nodeCertHash:this._certHash,serviceEndpoint:this._addresses.map((function(e){return e._toProtobuf()})),description:this._description,stake:this._stake}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{publicKey:this._publicKey,nodeId:null!=this._nodeId?this._nodeId.toString():null,accountId:null!=this._accountId?this._accountId.toString():null,certHash:null!=this._certHash?s.decode(this._certHash):null,addresses:this._addresses.map((function(e){return e.toJSON()})),description:this._description,stake:null!=this._stake?this._stake.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({publicKey:null!=t.RSA_PubKey?t.RSA_PubKey:void 0,nodeId:null!=t.nodeId?t.nodeId:void 0,accountId:null!=t.nodeAccountId?u.default._fromProtobuf(t.nodeAccountId):void 0,certHash:null!=t.nodeCertHash?t.nodeCertHash:void 0,addresses:null!=t.serviceEndpoint?t.serviceEndpoint.map((function(e){return c.default._fromProtobuf(e)})):void 0,description:null!=t.description?t.description:void 0,stake:null!=t.stake?t.stake:void 0})}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(678)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._nodeAddresses=[],null!=t.nodeAddresses&&this.setNodeAddresses(t.nodeAddresses)}return(0,a.default)(e,[{key:"nodeAddresses",get:function(){return this._nodeAddresses}},{key:"setNodeAddresses",value:function(e){return this._nodeAddresses=e,this}},{key:"_toProtobuf",value:function(){return{nodeAddress:this._nodeAddresses.map((function(e){return e._toProtobuf()}))}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{nodeAddresses:this._nodeAddresses.map((function(e){return e.toJSON()}))}}}],[{key:"_fromProtobuf",value:function(t){return new e({nodeAddresses:null!=t.nodeAddress?t.nodeAddress.map((function(e){return i.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.ArgumentType=void 0;var a=r(n(1)),i=r(n(2)),u=n(1392),c=f(n(84)),s=f(n(102));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function f(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var d={uint8:0,int8:1,uint16:2,int16:3,uint32:4,int32:5,uint64:6,int64:7,uint256:8,int256:9,string:10,bool:11,bytes:12,bytes32:13,address:14,func:15};t.ArgumentType=d;var p=function(){function e(t){(0,a.default)(this,e),this.name=null,this._params="",this._paramTypes=[],null!=t&&(this._name=t)}return(0,i.default)(e,[{key:"addString",value:function(){return this._addParam({ty:d.string,array:!1})}},{key:"addStringArray",value:function(){return this._addParam({ty:d.string,array:!0})}},{key:"addBytes",value:function(){return this._addParam({ty:d.bytes,array:!1})}},{key:"addBytes32",value:function(){return this._addParam({ty:d.bytes32,array:!1})}},{key:"addBytesArray",value:function(){return this._addParam({ty:d.bytes,array:!0})}},{key:"addBytes32Array",value:function(){return this._addParam({ty:d.bytes32,array:!0})}},{key:"addInt8",value:function(){return this._addParam({ty:d.int8,array:!1})}},{key:"addInt32",value:function(){return this._addParam({ty:d.int32,array:!1})}},{key:"addInt64",value:function(){return this._addParam({ty:d.int64,array:!1})}},{key:"addInt256",value:function(){return this._addParam({ty:d.int256,array:!1})}},{key:"addInt8Array",value:function(){return this._addParam({ty:d.int8,array:!0})}},{key:"addInt32Array",value:function(){return this._addParam({ty:d.int32,array:!0})}},{key:"addInt64Array",value:function(){return this._addParam({ty:d.int64,array:!0})}},{key:"addInt256Array",value:function(){return this._addParam({ty:d.int256,array:!0})}},{key:"addUint8",value:function(){return this._addParam({ty:d.uint8,array:!1})}},{key:"addUint32",value:function(){return this._addParam({ty:d.uint32,array:!1})}},{key:"addUint64",value:function(){return this._addParam({ty:d.uint64,array:!1})}},{key:"addUint256",value:function(){return this._addParam({ty:d.uint256,array:!1})}},{key:"addUint8Array",value:function(){return this._addParam({ty:d.uint8,array:!0})}},{key:"addUint32Array",value:function(){return this._addParam({ty:d.uint32,array:!0})}},{key:"addUint64Array",value:function(){return this._addParam({ty:d.uint64,array:!0})}},{key:"addUint256Array",value:function(){return this._addParam({ty:d.uint256,array:!0})}},{key:"addBool",value:function(){return this._addParam({ty:d.bool,array:!1})}},{key:"addAddress",value:function(){return this._addParam({ty:d.address,array:!1})}},{key:"addAddressArray",value:function(){return this._addParam({ty:d.address,array:!0})}},{key:"addFunction",value:function(){return this._addParam({ty:d.func,array:!1})}},{key:"_addParam",value:function(e){return this._paramTypes.length>0&&(this._params+=","),this._params+=function(e){var t="";switch(e.ty){case d.uint8:t="uint8";break;case d.int8:t="int8";break;case d.uint16:t="uint16";break;case d.int16:t="int16";break;case d.uint32:t="uint32";break;case d.int32:t="int32";break;case d.uint64:t="uint64";break;case d.int64:t="int64";break;case d.uint256:t="uint256";break;case d.int256:t="int256";break;case d.string:t="string";break;case d.bool:t="bool";break;case d.bytes:t="bytes";break;case d.bytes32:t="bytes32";break;case d.address:t="address";break;case d.func:t="function";break;default:t=""}e.array&&(t+="[]");return t}(e),this._paramTypes.push(e),this}},{key:"_build",value:function(e){if(null!=e)this._name=e;else if(null==this._name)throw new Error("`name` required for ContractFunctionSelector");var t=c.encode(s.encode(this.toString()));return c.decode((0,u.keccak256)("0x".concat(t))).slice(0,4)}},{key:"toString",value:function(){return"".concat(null!=this._name?this._name.toString():"","(").concat(this._params,")")}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=v(n(25)),d=v(n(102)),p=r(n(50)),h=r(n(49)),y=r(n(161)),m=r(n(19));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._keys=null,e._expirationTime=new p.default(0,0).plusNanos(m.default.fromNumber(Date.now()).mul(1e6).add(f.DEFAULT_AUTO_RENEW_PERIOD.mul(1e9))),e._contents=null,e._fileMemo=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"_execute",value:function(e,t){return e.file.createFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileCreate"}},{key:"_makeTransactionData",value:function(){return{keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:this._expirationTime._toProtobuf(),contents:this._contents,memo:this._fileMemo}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"FileCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileCreate;return f.default._fromProtobufTransactions(new n({keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=g,f.TRANSACTION_REGISTRY.set("fileCreate",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=r(n(32)),h=_(n(25)),y=_(n(102)),m=r(n(68)),b=r(n(85)),v=r(n(50)),k=r(n(365));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function _(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function w(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return I(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return I(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._fileId=null,e._contents=null,e._maxChunks=20,e._chunkSize=2048,e._defaultMaxTransactionFee=new p.default(5),null!=t.fileId&&e.setFileId(t.fileId),null!=t.contents&&e.setContents(t.contents),null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._transactionIds=new k.default,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`FileAppendTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?m.default.fromString(e):e.clone(),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:y.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,s.default)((0,d.default)(o.prototype),"freezeWith",this).call(this,e),null==this._contents)return this;var t=Math.floor((this._contents.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Contents with size ".concat(this._contents.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear();for(var r=0;rthis._chunkSize)throw new Error("cannot schedule `FileAppendTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,s.default)((0,d.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,l,f,p;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,s.default)((0,d.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,s.default)((0,d.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,l=0;case 9:if(!(l0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.deleteFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"FileDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("fileDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=r(n(14)),d=r(n(68)),p=r(n(284)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),y=r(n(19)),m=r(n(69)),b=r(n(49));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._bytecodeFileId=null,e._adminKey=null,e._gas=null,e._initialBalance=null,e._proxyAccountId=null,e._autoRenewPeriod=new m.default(h.DEFAULT_AUTO_RENEW_PERIOD),e._constructorParameters=null,e._contractMemo=null,e._defaultMaxTransactionFee=new l.default(20),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.gas&&e.setGas(r.gas),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.constructorParameters&&e.setConstructorParameters(r.constructorParameters),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof y.default?e:y.default.fromValue(e),this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof m.default?e:new m.default(e),this}},{key:"constructorParameters",get:function(){return this._constructorParameters}},{key:"setConstructorParameters",value:function(e){return this._requireNotFrozen(),this._constructorParameters=e instanceof p.default?e._build():e,this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"_validateChecksums",value:function(e){null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.createContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCreateInstance"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,gas:this._gas,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),constructorParameters:this._constructorParameters,memo:this._contractMemo}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ContractCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCreateInstance;return h.default._fromProtobufTransactions(new n({bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,adminKey:null!=i.adminKey?b.default._fromProtobufKey(i.adminKey):void 0,gas:null!=i.gas?i.gas:void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,constructorParameters:null!=i.constructorParameters?i.constructorParameters:void 0,contractMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(h.default);t.default=g,h.TRANSACTION_REGISTRY.set("contractCreateInstance",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(61)),c=r(n(14)),s=r(n(50)),l=r(n(69)),f=r(n(32)),d=r(n(19)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39)),h=r(n(676)),y=r(n(49)),m=r(n(103));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}var v=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.accountId=t.accountId,this.contractAccountId=t.contractAccountId,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.autoRenewPeriod=t.autoRenewPeriod,this.storage=t.storage,this.contractMemo=t.contractMemo,this.balance=t.balance,this.isDeleted=t.isDeleted,this.tokenRelationships=t.tokenRelationships,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{contractID:this.contractId._toProtobuf(),accountID:this.accountId._toProtobuf(),contractAccountID:this.contractAccountId,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,expirationTime:this.expirationTime._toProtobuf(),autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,storage:this.storage,memo:this.contractMemo,balance:this.balance.toTinybars(),deleted:this.isDeleted,tokenRelationships:null!=this.tokenRelationships?this.tokenRelationships._toProtobuf():null,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return p.ContractGetInfoResponse.ContractInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.autoRenewPeriod.seconds;return new e({contractId:u.default._fromProtobuf(t.contractID),accountId:c.default._fromProtobuf(t.accountID),contractAccountId:null!=t.contractAccountID?t.contractAccountID:"",adminKey:null!=t.adminKey?y.default._fromProtobufKey(t.adminKey):null,expirationTime:s.default._fromProtobuf(t.expirationTime),autoRenewPeriod:new l.default(n),storage:null!=t.storage?t.storage instanceof d.default?t.storage:d.default.fromValue(t.storage):d.default.ZERO,contractMemo:null!=t.memo?t.memo:"",balance:f.default.fromTinybars(null!=t.balance?t.balance:0),isDeleted:t.deleted,tokenRelationships:h.default._fromProtobuf(null!=t.tokenRelationships?t.tokenRelationships:[]),ledgerId:null!=t.ledgerId?m.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(p.ContractGetInfoResponse.ContractInfo.decode(t))}}]),e}();t.default=v},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(68)),c=r(n(50)),s=r(n(19)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39)),f=r(n(161)),d=r(n(103));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}var h=function(){function e(t){(0,a.default)(this,e),this.fileId=t.fileId,this.size=t.size,this.expirationTime=t.expirationTime,this.isDeleted=t.isDeleted,this.keys=t.keys,this.fileMemo=t.fileMemo,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{fileID:this.fileId._toProtobuf(),size:this.size,expirationTime:this.expirationTime._toProtobuf(),deleted:this.isDeleted,keys:this.keys._toProtobufKey().keyList,memo:this.fileMemo,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return l.FileGetInfoResponse.FileInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.size;return new e({fileId:u.default._fromProtobuf(t.fileID),size:n instanceof s.default?n:s.default.fromValue(n),expirationTime:c.default._fromProtobuf(t.expirationTime),isDeleted:t.deleted,keys:null!=t.keys?f.default.__fromProtobufKeyList(t.keys):new f.default,fileMemo:null!=t.memo?t.memo:"",ledgerId:null!=t.ledgerId?d.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(l.FileGetInfoResponse.FileInfo.decode(t))}}]),e}();t.default=h},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(688)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}var l=function(){function e(t){(0,a.default)(this,e),this.protobufVersion=t.protobufVersion,this.servicesVesion=t.servicesVesion,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{hapiProtoVersion:this.protobufVersion._toProtobuf(),hederaServicesVersion:this.servicesVesion._toProtobuf()}}},{key:"toBytes",value:function(){return c.NetworkGetVersionInfoResponse.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({protobufVersion:u.default._fromProtobuf(t.hapiProtoVersion),servicesVesion:u.default._fromProtobuf(t.hederaServicesVersion)})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(c.NetworkGetVersionInfoResponse.decode(t))}}]),e}();t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.major=t.major,this.minor=t.minor,this.patch=t.patch,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{major:this.major,minor:this.minor,patch:this.patch}}},{key:"toBytes",value:function(){return u.SemanticVersion.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({major:t.major,minor:t.minor,patch:t.patch})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.SemanticVersion.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(107)),a=r(n(1)),i=r(n(2)),u=r(n(164)),c=r(n(14)),s=r(n(50)),l=r(n(25)),f=n(39),d=r(n(85)),p=r(n(49)),h=r(n(161)),y=function(){function e(t){(0,a.default)(this,e),this.scheduleId=t.scheduleId,this.creatorAccountId=t.creatorAccountID,this.payerAccountId=t.payerAccountID,this.schedulableTransactionBody=t.schedulableTransactionBody,this.signers=t.signers,this.scheduleMemo=t.scheduleMemo,this.adminKey=null!=t.adminKey?t.adminKey:null,this.expirationTime=t.expirationTime,this.executed=t.executed,this.deleted=t.deleted,this.scheduledTransactionId=t.scheduledTransactionId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{scheduleID:null!=this.scheduleId?this.scheduleId._toProtobuf():null,creatorAccountID:null!=this.creatorAccountId?this.creatorAccountId._toProtobuf():null,payerAccountID:null!=this.payerAccountId?this.payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this.schedulableTransactionBody?this.schedulableTransactionBody:null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,signers:null!=this.signers?this.signers._toProtobufKey().keyList:null,memo:null!=this.scheduleMemo?this.scheduleMemo:"",expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,scheduledTransactionID:null!=this.scheduledTransactionId?this.scheduledTransactionId._toProtobuf():null}}},{key:"scheduledTransaction",get:function(){if(null==this.schedulableTransactionBody)throw new Error("Scheduled transaction body is empty");var e=new f.SchedulableTransactionBody(this.schedulableTransactionBody),t=e.data;return l.default.fromBytes(f.TransactionList.encode({transactionList:[{signedTransactionBytes:f.SignedTransaction.encode({bodyBytes:f.TransactionBody.encode((0,o.default)({transactionFee:this.schedulableTransactionBody.transactionFee,memo:this.schedulableTransactionBody.memo},t,e[t])).finish()}).finish()}]}).finish())}}],[{key:"_fromProtobuf",value:function(t){return new e({scheduleId:u.default._fromProtobuf(t.scheduleID),creatorAccountID:null!=t.creatorAccountID?c.default._fromProtobuf(t.creatorAccountID):null,payerAccountID:null!=t.payerAccountID?c.default._fromProtobuf(t.payerAccountID):null,schedulableTransactionBody:null!=t.scheduledTransactionBody?t.scheduledTransactionBody:null,adminKey:null!=t.adminKey?p.default._fromProtobufKey(t.adminKey):null,signers:null!=t.signers?h.default.__fromProtobufKeyList(t.signers):null,scheduleMemo:null!=t.memo?t.memo:null,expirationTime:null!=t.expirationTime?s.default._fromProtobuf(t.expirationTime):null,executed:null!=t.executionTime?s.default._fromProtobuf(t.executionTime):null,deleted:null!=t.deletionTime?s.default._fromProtobuf(t.deletionTime):null,scheduledTransactionId:null!=t.scheduledTransactionID?d.default._fromProtobuf(t.scheduledTransactionID):null})}}]),e}();t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(30)),c=r(n(14)),s=r(n(69)),l=r(n(50)),f=r(n(19)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39)),p=r(n(371)),h=r(n(372)),y=r(n(225)),m=r(n(286)),b=r(n(287)),v=r(n(49)),k=r(n(103));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}var _=function(){function e(t){(0,a.default)(this,e),this.tokenId=t.tokenId,this.name=t.name,this.symbol=t.symbol,this.decimals=t.decimals,this.totalSupply=t.totalSupply,this.treasuryAccountId=t.treasuryAccountId,this.adminKey=t.adminKey,this.kycKey=t.kycKey,this.freezeKey=t.freezeKey,this.pauseKey=t.pauseKey,this.wipeKey=t.wipeKey,this.supplyKey=t.supplyKey,this.feeScheduleKey=t.feeScheduleKey,this.defaultFreezeStatus=t.defaultFreezeStatus,this.defaultKycStatus=t.defaultKycStatus,this.pauseStatus=t.pauseStatus,this.isDeleted=t.isDeleted,this.autoRenewAccountId=t.autoRenewAccountId,this.autoRenewPeriod=t.autoRenewPeriod,this.expirationTime=t.expirationTime,this.tokenMemo=t.tokenMemo,this.customFees=t.customFees,this.tokenType=t.tokenType,this.supplyType=t.supplyType,this.maxSupply=t.maxSupply,this.ledgerId=t.ledgerId}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),name:this.name,symbol:this.symbol,decimals:this.decimals,totalSupply:this.totalSupply,treasury:null!=this.treasuryAccountId?this.treasuryAccountId._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,kycKey:null!=this.kycKey?this.kycKey._toProtobufKey():null,freezeKey:null!=this.freezeKey?this.freezeKey._toProtobufKey():null,pauseKey:null!=this.pauseKey?this.pauseKey._toProtobufKey():null,wipeKey:null!=this.wipeKey?this.wipeKey._toProtobufKey():null,supplyKey:null!=this.supplyKey?this.supplyKey._toProtobufKey():null,feeScheduleKey:null!=this.feeScheduleKey?this.feeScheduleKey._toProtobufKey():null,defaultFreezeStatus:null==this.defaultFreezeStatus?0:this.defaultFreezeStatus?1:2,defaultKycStatus:null==this.defaultKycStatus?0:this.defaultKycStatus?1:2,pauseStatus:null==this.pauseStatus?0:this.pauseStatus?1:2,deleted:this.isDeleted,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():void 0,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,expiry:null!=this.expirationTime?this.expirationTime._toProtobuf():null,memo:this.tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this.tokenType?this.tokenType._code:null,supplyType:null!=this.supplyType?this.supplyType._code:null,maxSupply:this.maxSupply,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toBytes",value:function(){return d.TokenInfo.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.defaultFreezeStatus,r=t.defaultKycStatus,o=t.pauseStatus,a=null!=t.autoRenewAccount?c.default._fromProtobuf(t.autoRenewAccount):new c.default(0);return new e({tokenId:u.default._fromProtobuf(t.tokenId),name:t.name,symbol:t.symbol,decimals:t.decimals,totalSupply:f.default.fromValue(t.totalSupply),treasuryAccountId:null!=t.treasury?c.default._fromProtobuf(t.treasury):null,adminKey:null!=t.adminKey?v.default._fromProtobufKey(t.adminKey):null,kycKey:null!=t.kycKey?v.default._fromProtobufKey(t.kycKey):null,freezeKey:null!=t.freezeKey?v.default._fromProtobufKey(t.freezeKey):null,pauseKey:null!=t.pauseKey?v.default._fromProtobufKey(t.pauseKey):null,wipeKey:null!=t.wipeKey?v.default._fromProtobufKey(t.wipeKey):null,supplyKey:null!=t.supplyKey?v.default._fromProtobufKey(t.supplyKey):null,feeScheduleKey:null!=t.feeScheduleKey?v.default._fromProtobufKey(t.feeScheduleKey):null,defaultFreezeStatus:0===n?null:1==n,defaultKycStatus:0===r?null:1==r,pauseStatus:0===o?null:1==o,isDeleted:t.deleted,autoRenewAccountId:0!=a.shard.toInt()||0!=a.realm.toInt()||0!=a.num.toInt()?a:null,autoRenewPeriod:null!=t.autoRenewPeriod?s.default._fromProtobuf(t.autoRenewPeriod):null,expirationTime:null!=t.expiry?l.default._fromProtobuf(t.expiry):null,tokenMemo:null!=t.memo?t.memo:"",customFees:null!=t.customFees?t.customFees.map((function(e){return null!=e.fixedFee?y.default._fromProtobuf(e):null!=e.fractionalFee?m.default._fromProtobuf(e):b.default._fromProtobuf(e)})):[],tokenType:null!=t.tokenType?p.default._fromCode(t.tokenType):null,supplyType:null!=t.supplyType?h.default._fromCode(t.supplyType):null,maxSupply:null!=t.maxSupply?t.maxSupply:null,ledgerId:null!=t.ledgerId?k.default.fromBytes(t.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(d.TokenInfo.decode(t))}}]),e}();t.default=_},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(194)),c=r(n(14)),s=r(n(50)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(84)),f=r(n(103));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(t){(0,a.default)(this,e),this.nftId=t.nftId,this.accountId=t.accountId,this.creationTime=t.creationTime,this.metadata=t.metadata,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{nftID:this.nftId._toProtobuf(),accountID:this.accountId._toProtobuf(),creationTime:this.creationTime._toProtobuf(),metadata:this.metadata,ledgerId:null!=this.ledgerId?this.ledgerId.toBytes():null}}},{key:"toJson",value:function(){return{nftId:this.nftId.toString(),accountId:this.accountId.toString(),creationTime:this.creationTime.toString(),metadata:null!=this.metadata?l.encode(this.metadata):null,ledgerId:null!=this.ledgerId?this.ledgerId.toString():null}}},{key:"toString",value:function(){return JSON.stringify(this.toJson())}}],[{key:"_fromProtobuf",value:function(t){return new e({nftId:u.default._fromProtobuf(t.nftID),accountId:c.default._fromProtobuf(t.accountID),creationTime:s.default._fromProtobuf(t.creationTime),metadata:void 0!==t.metadata?t.metadata:null,ledgerId:null!=t.ledgerId?f.default.fromBytes(t.ledgerId):null})}}]),e}();t.default=p},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(134)),c=r(n(14)),s=r(n(50)),l=r(n(19)),f=r(n(69)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39)),p=r(n(49)),h=r(n(103));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var m=function(){function e(t){(0,a.default)(this,e),this.topicId=t.topicId,this.topicMemo=t.topicMemo,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.expirationTime=t.expirationTime,this.adminKey=t.adminKey,this.submitKey=t.submitKey,this.autoRenewPeriod=t.autoRenewPeriod,this.autoRenewAccountId=t.autoRenewAccountId,this.ledgerId=t.ledgerId,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{topicID:this.topicId._toProtobuf(),topicInfo:{memo:this.topicMemo,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber,expirationTime:null!=this.expirationTime?this.expirationTime._toProtobuf():null,adminKey:null!=this.adminKey?this.adminKey._toProtobufKey():null,submitKey:null!=this.submitKey?this.submitKey._toProtobufKey():null,autoRenewPeriod:null!=this.autoRenewPeriod?this.autoRenewPeriod._toProtobuf():null,autoRenewAccount:null!=this.autoRenewAccountId?this.autoRenewAccountId._toProtobuf():null}}}},{key:"toBytes",value:function(){return d.ConsensusTopicInfo.encode(this._toProtobuf().topicInfo).finish()}}],[{key:"_fromProtobuf",value:function(t){var n=t.topicInfo;return new e({topicId:u.default._fromProtobuf(t.topicID),topicMemo:null!=n.memo?n.memo:"",runningHash:null!=n.runningHash?n.runningHash:new Uint8Array,sequenceNumber:null!=n.sequenceNumber?n.sequenceNumber instanceof l.default?n.sequenceNumber:l.default.fromValue(n.sequenceNumber):l.default.ZERO,expirationTime:null!=n.expirationTime?s.default._fromProtobuf(n.expirationTime):null,adminKey:null!=n.adminKey?p.default._fromProtobufKey(n.adminKey):null,submitKey:null!=n.submitKey?p.default._fromProtobufKey(n.submitKey):null,autoRenewPeriod:null!=n.autoRenewPeriod?new f.default(n.autoRenewPeriod.seconds):null,autoRenewAccountId:null!=n.autoRenewAccount?c.default._fromProtobuf(n.autoRenewAccount):null,ledgerId:null!=n.ledgerId?h.default.fromBytes(n.ledgerId):null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf({topicInfo:d.ConsensusTopicInfo.decode(t)})}}]),e}();t.default=m},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(50)),u=r(n(694)),c=r(n(19)),s=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,this.chunks=t.chunks,Object.freeze(this)}return(0,a.default)(e,null,[{key:"_ofSingle",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof c.default?t.sequenceNumber:c.default.fromNumber(t.sequenceNumber):c.default.ZERO,chunks:[u.default._fromProtobuf(t)]})}},{key:"_ofMany",value:function(t){var n=t[t.length-1],r=i.default._fromProtobuf(n.consensusTimestamp),o=n.runningHash,a=null!=n.sequenceNumber?n.sequenceNumber instanceof c.default?n.sequenceNumber:c.default.fromValue(n.sequenceNumber):c.default.ZERO;t.sort((function(e,t){return(null!=e&&null!=e.chunkInfo&&null!=e.chunkInfo.number?e.chunkInfo.number:0)<(null!=t&&null!=t.chunkInfo&&null!=t.chunkInfo.number?t.chunkInfo.number:0)?-1:1}));var s=t.map((function(e){return u.default._fromProtobuf(e)})),l=s.map((function(e){return e.contents.length})).reduce((function(e,t){return e+t}),0),f=new Uint8Array(l),d=0;return t.forEach((function(e){f.set(e.message,d),d+=e.message.length})),new e({consensusTimestamp:r,contents:f,runningHash:o,sequenceNumber:a,chunks:s})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(50)),u=r(n(19)),c=function(){function e(t){(0,o.default)(this,e),this.consensusTimestamp=t.consensusTimestamp,this.contents=t.contents,this.runningHash=t.runningHash,this.sequenceNumber=t.sequenceNumber,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{consensusTimestamp:this.consensusTimestamp._toProtobuf(),message:this.contents,runningHash:this.runningHash,sequenceNumber:this.sequenceNumber}}}],[{key:"_fromProtobuf",value:function(t){return new e({consensusTimestamp:i.default._fromProtobuf(t.consensusTimestamp),contents:null!=t.message?t.message:new Uint8Array,runningHash:null!=t.runningHash?t.runningHash:new Uint8Array,sequenceNumber:null!=t.sequenceNumber?t.sequenceNumber instanceof u.default?t.sequenceNumber:u.default.fromValue(t.sequenceNumber):u.default.ZERO})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(){(0,o.default)(this,e)}return(0,a.default)(e,[{key:"getLedgerId",value:function(){throw new Error("not implemented")}},{key:"getAccountId",value:function(){throw new Error("not implemented")}},{key:"getNetwork",value:function(){throw new Error("not implemented")}},{key:"getMirrorNetwork",value:function(){throw new Error("not implemented")}},{key:"sign",value:function(e){throw new Error("not implemented")}},{key:"getAccountBalance",value:function(){throw new Error("not implemented")}},{key:"getAccountInfo",value:function(){throw new Error("not implemented")}},{key:"getAccountRecords",value:function(){throw new Error("not implemented")}},{key:"signTransaction",value:function(e){throw new Error("not implemented")}},{key:"checkTransaction",value:function(e){throw new Error("not implemented")}},{key:"populateTransaction",value:function(e){throw new Error("not implemented")}},{key:"sendRequest",value:function(e){throw new Error("not implemented")}}]),e}();t.default=i},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(1451)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.newNode)this._address="string"==typeof t.newNode.address?i.default.fromString(t.newNode.address):t.newNode.address,this._cert=void 0,this._channel=null,this._channelInitFunction=t.newNode.channelInitFunction,this._lastUsed=Date.now(),this._backoffUntil=Date.now(),this._useCount=0,this._badGrpcStatusCount=0,this._minBackoff=8e3,this._maxBackoff=36e5,this._currentBackoff=this._minBackoff;else{if(null==t.cloneNode)throw new Error("failed to create ManagedNode: ".concat(JSON.stringify(t)));this._address=t.cloneNode.address,this._cert=t.cloneNode.node._cert,this._channel=t.cloneNode.node._channel,this._channelInitFunction=t.cloneNode.node._channelInitFunction,this._currentBackoff=t.cloneNode.node._currentBackoff,this._lastUsed=t.cloneNode.node._lastUsed,this._backoffUntil=t.cloneNode.node._backoffUntil,this._useCount=t.cloneNode.node._useCount,this._badGrpcStatusCount=t.cloneNode.node._badGrpcStatusCount,this._minBackoff=t.cloneNode.node._minBackoff,this._maxBackoff=t.cloneNode.node._minBackoff}}return(0,a.default)(e,[{key:"getKey",value:function(){throw new Error("not implemented")}},{key:"toInsecure",value:function(){throw new Error("not implemented")}},{key:"toSecure",value:function(){throw new Error("not implemented")}},{key:"setCert",value:function(e){return this}},{key:"address",get:function(){return this._address}},{key:"attempts",get:function(){return this._badGrpcStatusCount}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._minBackoff=e,this}},{key:"maxBackoff",get:function(){return this._maxBackoff}},{key:"setMaxBackoff",value:function(e){return this._currentBackoff<=e&&(this._currentBackoff=e),this._maxBackoff=e,this}},{key:"getChannel",value:function(){return this._useCount++,this.__lastUsed=Date.now(),null!=this._channel||(this._channel=this._channelInitFunction(this.address.toString(),this._cert)),this._channel}},{key:"isHealthy",value:function(){return this._backoffUntil<=Date.now()}},{key:"increaseDelay",value:function(){this._currentBackoff=Math.min(2*this._currentBackoff,this._maxBackoff),this._backoffUntil=Date.now()+this._currentBackoff}},{key:"decreaseDelay",value:function(){this._currentBackoff=Math.max(this._currentBackoff/2,this._minBackoff)}},{key:"getRemainingTime",value:function(){return this._backoffUntil-this._lastUsed}},{key:"wait",value:function(){var e=this;return new Promise((function(t){return setTimeout(t,e.getRemainingTime())}))}},{key:"compare",value:function(e){var t=this.getRemainingTime()-e.getRemainingTime();return 0!=t||0!=(t=this._currentBackoff-e._currentBackoff)||0!=(t=this._badGrpcStatusCount-e._badGrpcStatusCount)||0!=(t=this._useCount-e._useCount)?t:this._lastUsed-e._lastUsed}},{key:"close",value:function(){null!=this._channel&&this._channel.close(),this._channel=null}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(9)),a=r(n(1)),i=r(n(2)),u=r(n(103));function c(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)for(var e=this._nodes.length-1;e>=0;e--){this._nodes[e]._badGrpcStatusCount=e)break;i.has(s.getKey())||(i.add(s.getKey()),a.push(s))}}catch(e){u.e(e)}finally{u.f()}return a}},{key:"_closeNode",value:function(e){var t=this._nodes[e];t.close(),this._removeNodeFromNetwork(t),this._nodes.splice(e,1)}},{key:"_removeNodeFromNetwork",value:function(e){for(var t=this._network.get(e.getKey()),n=0;n256||r%8!=0)&&_.throwArgumentError("invalid "+n[1]+" bit length","param",e),new b.NumberCoder(r/8,"int"===n[1],e.name)}if(n=e.type.match(w)){var o=parseInt(n[1]);return(0===o||o>32)&&_.throwArgumentError("invalid bytes length","param",e),new y.FixedBytesCoder(o,e.name)}return _.throwArgumentError("invalid type","type",e.type)}},{key:"_getWordSize",value:function(){return 32}},{key:"_getReader",value:function(e,t){return new l.Reader(e,this._getWordSize(),this.coerceFunc,t)}},{key:"_getWriter",value:function(){return new l.Writer(this._getWordSize())}},{key:"encode",value:function(e,t){var n=this;e.length!==t.length&&_.throwError("types/values length mismatch",c.Logger.errors.INVALID_ARGUMENT,{count:{types:e.length,values:t.length},value:{types:e,values:t}});var r=e.map((function(e){return n._getCoder(g.ParamType.from(e))})),o=new k.TupleCoder(r,"_"),a=this._getWriter();return o.encode(a,t),a.data}},{key:"decode",value:function(e,t,n){var r=this,o=e.map((function(e){return r._getCoder(g.ParamType.from(e))}));return new k.TupleCoder(o,"_").decode(this._getReader((0,i.arrayify)(t),n))}}]),e}();t.AbiCoder=A;var T=new A;t.defaultAbiCoder=T},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.ArrayCoder=void 0,t.pack=m,t.unpack=b;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(3)),l=n(58),f=n(226),d=n(92),p=n(1459);function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var y=new l.Logger(f.version);function m(e,t,n){var r=null;if(Array.isArray(n))r=n;else if(n&&"object"===(0,s.default)(n)){var o={};r=t.map((function(e){var t=e.localName;return t||y.throwError("cannot encode object for signature with missing names",l.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:e,value:n}),o[t]&&y.throwError("cannot encode object for signature with duplicate names",l.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:e,value:n}),o[t]=!0,n[t]}))}else y.throwArgumentError("invalid tuple value","tuple",n);t.length!==r.length&&y.throwArgumentError("types/value length mismatch","tuple",n);var a=new d.Writer(e.wordSize),i=new d.Writer(e.wordSize),u=[];t.forEach((function(e,t){var n=r[t];if(e.dynamic){var o=i.length;e.encode(i,n);var c=a.writeUpdatableValue();u.push((function(e){c(e+o)}))}else e.encode(a,n)})),u.forEach((function(e){e(a.length)}));var c=e.appendWriter(a);return c+=e.appendWriter(i)}function b(e,t){var n=[],r=e.subReader(0);t.forEach((function(t){var o=null;if(t.dynamic){var a=e.readValue(),i=r.subReader(a.toNumber());try{o=t.decode(i)}catch(e){if(e.code===l.Logger.errors.BUFFER_OVERRUN)throw e;(o=e).baseType=t.name,o.name=t.localName,o.type=t.type}}else try{o=t.decode(e)}catch(e){if(e.code===l.Logger.errors.BUFFER_OVERRUN)throw e;(o=e).baseType=t.name,o.name=t.localName,o.type=t.type}null!=o&&n.push(o)}));var o=t.reduce((function(e,t){var n=t.localName;return n&&(e[n]||(e[n]=0),e[n]++),e}),{});t.forEach((function(e,t){var r=e.localName;if(r&&1===o[r]&&("length"===r&&(r="_length"),null==n[r])){var a=n[t];a instanceof Error?Object.defineProperty(n,r,{get:function(){throw a}}):n[r]=a}}));for(var a=function(e){var t=n[e];t instanceof Error&&Object.defineProperty(n,e,{get:function(){throw t}})},i=0;i=0?r:"")+"]",c=-1===r||e.dynamic;return(i=t.call(this,"array",u,a,c)).coder=e,i.length=r,i}return(0,a.default)(n,[{key:"encode",value:function(e,t){Array.isArray(t)||this._throwError("expected array value",t);var n=this.length;-1===n&&(n=t.length,e.writeValue(t.length)),y.checkArgumentCount(t.length,n,"coder array"+(this.localName?" "+this.localName:""));for(var r=[],o=0;o0&&this.subscriptions.forEach((function(n,r){e&&"syncing"===n.name||t.removeSubscription(r)})),this.provider.reset&&this.provider.reset(),!0}catch(e){throw new Error("Error while clearing subscriptions: ".concat(e))}},f.prototype._isCleanCloseEvent=function(e){return"object"===(0,a.default)(e)&&([1e3].includes(e.code)||!0===e.wasClean)},f.prototype._isIpcCloseError=function(e){return"boolean"==typeof e&&e};var d=f;t.Manager=d},function(e,t,n){"use strict";(function(e){var t=n(0)(n(3)),r=function(e){var n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",i=o.asyncIterator||"@@asyncIterator",u=o.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function s(e,t,n,r){var o=t&&t.prototype instanceof d?t:d,a=Object.create(o.prototype),i=new A(r||[]);return a._invoke=function(e,t,n){var r="suspendedStart";return function(o,a){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw a;return O()}for(n.method=o,n.arg=a;;){var i=n.delegate;if(i){var u=_(i,n);if(u){if(u===f)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var c=l(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===f)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r="completed",n.method="throw",n.arg=c.arg)}}}(e,n,i),a}function l(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=s;var f={};function d(){}function p(){}function h(){}var y={};c(y,a,(function(){return this}));var m=Object.getPrototypeOf,b=m&&m(m(T([])));b&&b!==n&&r.call(b,a)&&(y=b);var v=h.prototype=d.prototype=Object.create(y);function k(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function g(e,n){var o;this._invoke=function(a,i){function u(){return new n((function(o,u){!function o(a,i,u,c){var s=l(e[a],e,i);if("throw"!==s.type){var f=s.arg,d=f.value;return d&&"object"===(0,t.default)(d)&&r.call(d,"__await")?n.resolve(d.__await).then((function(e){o("next",e,u,c)}),(function(e){o("throw",e,u,c)})):n.resolve(d).then((function(e){f.value=e,u(f)}),(function(e){return o("throw",e,u,c)}))}c(s.arg)}(a,i,o,u)}))}return o=o?o.then(u,u):u()}}function _(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method))return f;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var r=l(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,f;var o=r.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,f):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,f)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function A(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function T(e){if(e){var t=e[a];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n=0;--o){var a=this.tryEntries[o],i=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var u=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(u&&c){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),I(n),f}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;I(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:T(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),f}},e}("object"===(0,t.default)(e)?e.exports:{});try{regeneratorRuntime=r}catch(e){"object"===("undefined"==typeof globalThis?"undefined":(0,t.default)(globalThis))?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}}).call(this,n(227)(e))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(3)),a={ErrorResponse:function(e){var t=e&&e.error&&e.error.message?e.error.message:JSON.stringify(e),n=e.error&&e.error.data?e.error.data:null,r=new Error("Returned error: "+t);return r.data=n,r},InvalidNumberOfParams:function(e,t,n){return new Error('Invalid number of parameters for "'+n+'". Got '+e+" expected "+t+"!")},InvalidConnection:function(e,t){return this.ConnectionError("CONNECTION ERROR: Couldn't connect to node "+e+".",t)},InvalidProvider:function(){return new Error("Provider not set or invalid")},InvalidResponse:function(e){var t=e&&e.error&&e.error.message?e.error.message:"Invalid JSON RPC response: "+JSON.stringify(e);return new Error(t)},ConnectionTimeout:function(e){return new Error("CONNECTION TIMEOUT: timeout of "+e+" ms achived")},ConnectionNotOpenError:function(e){return this.ConnectionError("connection not open on send()",e)},ConnectionCloseError:function(e){return"object"===(0,o.default)(e)&&e.code&&e.reason?this.ConnectionError("CONNECTION ERROR: The connection got closed with the close code `"+e.code+"` and the following reason string `"+e.reason+"`",e):new Error("CONNECTION ERROR: The connection closed unexpectedly")},MaxAttemptsReachedOnReconnectingError:function(){return new Error("Maximum number of reconnect attempts reached!")},PendingRequestsOnReconnectingError:function(){return new Error("CONNECTION ERROR: Provider started to reconnect before the response got received!")},ConnectionError:function(e,t){var n=new Error(e);return t&&(n.code=t.code,n.reason=t.reason),n},RevertInstructionError:function(e,t){var n=new Error("Your request got reverted with the following reason string: "+e);return n.reason=e,n.signature=t,n},TransactionRevertInstructionError:function(e,t,n){var r=new Error("Transaction has been reverted by the EVM:\n"+JSON.stringify(n,null,2));return r.reason=e,r.signature=t,r.receipt=n,r},TransactionError:function(e,t){var n=new Error(e);return n.receipt=t,n},NoContractAddressFoundError:function(e){return this.TransactionError("The transaction receipt didn't contain a contract address.",e)},ContractCodeNotStoredError:function(e){return this.TransactionError("The contract code couldn't be stored, please check your gas limit.",e)},TransactionRevertedWithoutReasonError:function(e){return this.TransactionError("Transaction has been reverted by the EVM:\n"+JSON.stringify(e,null,2),e)},TransactionOutOfGasError:function(e){return this.TransactionError("Transaction ran out of gas. Please provide more gas:\n"+JSON.stringify(e,null,2),e)},ResolverMethodMissingError:function(e,t){return new Error("The resolver at "+e+'does not implement requested method: "'+t+'".')},ContractMissingABIError:function(){return new Error("You must provide the json interface of the contract when instantiating a contract object.")},ContractOnceRequiresCallbackError:function(){return new Error("Once requires a callback as the second parameter.")},ContractEventDoesNotExistError:function(e){return new Error('Event "'+e+"\" doesn't exist in this contract.")},ContractReservedEventError:function(e){return new Error('The event "'+e+"\" is a reserved event name, you can't use it.")},ContractMissingDeployDataError:function(){return new Error('No "data" specified in neither the given options, nor the default options.')},ContractNoAddressDefinedError:function(){return new Error("This contract object doesn't have address set yet, please set an address first.")},ContractNoFromAddressDefinedError:function(){return new Error('No "from" address specified in neither the given options, nor the default options.')}};t.default=a},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(3)),a=n(93),i=n(916),u=function(e){return a.toBN(e).toString(10)},c=function(e){if(void 0!==e)return function(e){return"latest"===e||"pending"===e||"earliest"===e}(e)?e:"genesis"===e?"0x0":a.isHexStrict(e)?"string"==typeof e?e.toLowerCase():e:a.numberToHex(e)},s=function(e){if(e.to&&(e.to=d(e.to)),e.data&&e.input)throw new Error('You can\'t have "data" and "input" as properties of transactions at the same time, please use either "data" or "input" instead.');if(!e.data&&e.input&&(e.data=e.input,delete e.input),e.data&&!e.data.startsWith("0x")&&(e.data="0x"+e.data),e.data&&!a.isHex(e.data))throw new Error("The data field must be HEX encoded data.");return(e.gas||e.gasLimit)&&(e.gas=e.gas||e.gasLimit),(e.maxPriorityFeePerGas||e.maxFeePerGas)&&delete e.gasPrice,["gasPrice","gas","value","maxPriorityFeePerGas","maxFeePerGas","nonce"].filter((function(t){return void 0!==e[t]})).forEach((function(t){e[t]=a.numberToHex(e[t])})),e},l=function(e){return null!==e.blockNumber&&(e.blockNumber=a.hexToNumber(e.blockNumber)),null!==e.transactionIndex&&(e.transactionIndex=a.hexToNumber(e.transactionIndex)),e.nonce=a.hexToNumber(e.nonce),e.gas=a.hexToNumber(e.gas),e.gasPrice&&(e.gasPrice=u(e.gasPrice)),e.maxFeePerGas&&(e.maxFeePerGas=u(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(e.maxPriorityFeePerGas=u(e.maxPriorityFeePerGas)),e.type&&(e.type=a.hexToNumber(e.type)),e.value=u(e.value),e.to&&a.isAddress(e.to)?e.to=a.toChecksumAddress(e.to):e.to=null,e.from&&(e.from=a.toChecksumAddress(e.from)),e},f=function(e){if("string"==typeof e.blockHash&&"string"==typeof e.transactionHash&&"string"==typeof e.logIndex){var t=a.sha3(e.blockHash.replace("0x","")+e.transactionHash.replace("0x","")+e.logIndex.replace("0x",""));e.id="log_"+t.replace("0x","").substr(0,8)}else e.id||(e.id=null);return null!==e.blockNumber&&(e.blockNumber=a.hexToNumber(e.blockNumber)),null!==e.transactionIndex&&(e.transactionIndex=a.hexToNumber(e.transactionIndex)),null!==e.logIndex&&(e.logIndex=a.hexToNumber(e.logIndex)),e.address&&(e.address=a.toChecksumAddress(e.address)),e},d=function(e){var t=new i(e);if(t.isValid()&&t.isDirect())return t.toAddress().toLowerCase();if(a.isAddress(e))return"0x"+e.toLowerCase().replace("0x","");throw new Error("Provided address ".concat(e," is invalid, the capitalization checksum test failed, or it's an indirect IBAN address which can't be converted."))},p={inputDefaultBlockNumberFormatter:function(e){return c(this&&null==e?this.defaultBlock:e)},inputBlockNumberFormatter:c,inputCallFormatter:function(e){var t=(e=s(e)).from||(this?this.defaultAccount:null);return t&&(e.from=d(t)),e},inputTransactionFormatter:function(e){if("number"!=typeof(e=s(e)).from&&(!e.from||"object"!==(0,o.default)(e.from))){if(e.from=e.from||(this?this.defaultAccount:null),!e.from&&"number"!=typeof e.from)throw new Error('The send transactions "from" field must be defined!');e.from=d(e.from)}return e},inputAddressFormatter:d,inputPostFormatter:function(e){return e.ttl&&(e.ttl=a.numberToHex(e.ttl)),e.workToProve&&(e.workToProve=a.numberToHex(e.workToProve)),e.priority&&(e.priority=a.numberToHex(e.priority)),Array.isArray(e.topics)||(e.topics=e.topics?[e.topics]:[]),e.topics=e.topics.map((function(e){return 0===e.indexOf("0x")?e:a.fromUtf8(e)})),e},inputLogFormatter:function(e){var t=function(e){return null==e?null:0===(e=String(e)).indexOf("0x")?e:a.fromUtf8(e)};return void 0===e&&(e={}),void 0===e.fromBlock&&(e=Object.assign(Object.assign({},e),{fromBlock:"latest"})),(e.fromBlock||0===e.fromBlock)&&(e.fromBlock=c(e.fromBlock)),(e.toBlock||0===e.toBlock)&&(e.toBlock=c(e.toBlock)),e.topics=e.topics||[],e.topics=e.topics.map((function(e){return Array.isArray(e)?e.map(t):t(e)})),t=null,e.address&&(e.address=Array.isArray(e.address)?e.address.map((function(e){return d(e)})):d(e.address)),e},inputSignFormatter:function(e){return a.isHexStrict(e)?e:a.utf8ToHex(e)},inputStorageKeysFormatter:function(e){return e.map(a.numberToHex)},outputProofFormatter:function(e){return e.address=a.toChecksumAddress(e.address),e.nonce=a.hexToNumberString(e.nonce),e.balance=a.hexToNumberString(e.balance),e},outputBigNumberFormatter:u,outputTransactionFormatter:l,outputTransactionReceiptFormatter:function(e){if("object"!==(0,o.default)(e))throw new Error("Received receipt is invalid: "+e);return null!==e.blockNumber&&(e.blockNumber=a.hexToNumber(e.blockNumber)),null!==e.transactionIndex&&(e.transactionIndex=a.hexToNumber(e.transactionIndex)),e.cumulativeGasUsed=a.hexToNumber(e.cumulativeGasUsed),e.gasUsed=a.hexToNumber(e.gasUsed),Array.isArray(e.logs)&&(e.logs=e.logs.map(f)),e.effectiveGasPrice&&(e.effectiveGasPrice=a.hexToNumber(e.effectiveGasPrice)),e.contractAddress&&(e.contractAddress=a.toChecksumAddress(e.contractAddress)),void 0!==e.status&&null!==e.status&&(e.status=Boolean(parseInt(e.status))),e},outputBlockFormatter:function(e){return e.gasLimit=a.hexToNumber(e.gasLimit),e.gasUsed=a.hexToNumber(e.gasUsed),e.size=a.hexToNumber(e.size),e.timestamp=a.hexToNumber(e.timestamp),null!==e.number&&(e.number=a.hexToNumber(e.number)),e.difficulty&&(e.difficulty=u(e.difficulty)),e.totalDifficulty&&(e.totalDifficulty=u(e.totalDifficulty)),Array.isArray(e.transactions)&&e.transactions.forEach((function(e){if("string"!=typeof e)return l(e)})),e.miner&&(e.miner=a.toChecksumAddress(e.miner)),e.baseFeePerGas&&(e.baseFeePerGas=a.hexToNumber(e.baseFeePerGas)),e},outputLogFormatter:f,outputPostFormatter:function(e){return e.expiry=a.hexToNumber(e.expiry),e.sent=a.hexToNumber(e.sent),e.ttl=a.hexToNumber(e.ttl),e.workProved=a.hexToNumber(e.workProved),e.topics||(e.topics=[]),e.topics=e.topics.map((function(e){return a.toUtf8(e)})),e},outputSyncingFormatter:function(e){return e.startingBlock=a.hexToNumber(e.startingBlock),e.currentBlock=a.hexToNumber(e.currentBlock),e.highestBlock=a.hexToNumber(e.highestBlock),e.knownStates&&(e.knownStates=a.hexToNumber(e.knownStates),e.pulledStates=a.hexToNumber(e.pulledStates)),e}};t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AccountAllowanceAdjustTransaction",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"AccountAllowanceApproveTransaction",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"AccountBalance",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(t,"AccountBalanceQuery",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"AccountCreateTransaction",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"AccountDeleteTransaction",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"AccountId",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"AccountInfo",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"AccountInfoQuery",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"AccountRecordsQuery",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"AccountStakersQuery",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"AccountUpdateTransaction",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"AddressBookQuery",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"AssessedCustomFee",{enumerable:!0,get:function(){return I.default}}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return o.BadKeyError}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return o.BadMnemonicError}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return o.BadMnemonicReason}}),Object.defineProperty(t,"ContractByteCodeQuery",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"ContractCallQuery",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"ContractCreateTransaction",{enumerable:!0,get:function(){return O.default}}),Object.defineProperty(t,"ContractDeleteTransaction",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"ContractExecuteTransaction",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"ContractFunctionParameters",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"ContractFunctionResult",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"ContractFunctionSelector",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"ContractId",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"ContractInfo",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"ContractInfoQuery",{enumerable:!0,get:function(){return B.default}}),Object.defineProperty(t,"ContractLogInfo",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"ContractUpdateTransaction",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"CustomFee",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"CustomFixedFee",{enumerable:!0,get:function(){return F.default}}),Object.defineProperty(t,"CustomFractionalFee",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"CustomRoyaltyFee",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"DelegateContractId",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"ExchangeRate",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"FileAppendTransaction",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"FileContentsQuery",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"FileCreateTransaction",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"FileDeleteTransaction",{enumerable:!0,get:function(){return V.default}}),Object.defineProperty(t,"FileId",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"FileInfo",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"FileInfoQuery",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"FileUpdateTransaction",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"FreezeTransaction",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"Hbar",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"HbarAllowance",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"HbarUnit",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"LedgerId",{enumerable:!0,get:function(){return pt.default}}),Object.defineProperty(t,"LiveHash",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"LiveHashAddTransaction",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"LiveHashDeleteTransaction",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"LiveHashQuery",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return s.default}}),t.NetworkName=void 0,Object.defineProperty(t,"NetworkVersionInfo",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"NetworkVersionInfoQuery",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"NftId",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"PrecheckStatusError",{enumerable:!0,get:function(){return ft.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"ProxyStaker",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"Query",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"ReceiptStatusError",{enumerable:!0,get:function(){return dt.default}}),Object.defineProperty(t,"ScheduleCreateTransaction",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"ScheduleDeleteTransaction",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"ScheduleId",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"ScheduleInfo",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"ScheduleInfoQuery",{enumerable:!0,get:function(){return he.default}}),Object.defineProperty(t,"ScheduleSignTransaction",{enumerable:!0,get:function(){return ye.default}}),Object.defineProperty(t,"SemanticVersion",{enumerable:!0,get:function(){return me.default}}),Object.defineProperty(t,"Status",{enumerable:!0,get:function(){return be.default}}),Object.defineProperty(t,"StatusError",{enumerable:!0,get:function(){return lt.default}}),Object.defineProperty(t,"SystemDeleteTransaction",{enumerable:!0,get:function(){return ve.default}}),Object.defineProperty(t,"SystemUndeleteTransaction",{enumerable:!0,get:function(){return ke.default}}),Object.defineProperty(t,"Timestamp",{enumerable:!0,get:function(){return ge.default}}),Object.defineProperty(t,"TokenAllowance",{enumerable:!0,get:function(){return _e.default}}),Object.defineProperty(t,"TokenAssociateTransaction",{enumerable:!0,get:function(){return we.default}}),Object.defineProperty(t,"TokenBurnTransaction",{enumerable:!0,get:function(){return Ie.default}}),Object.defineProperty(t,"TokenCreateTransaction",{enumerable:!0,get:function(){return Ae.default}}),Object.defineProperty(t,"TokenDeleteTransaction",{enumerable:!0,get:function(){return Te.default}}),Object.defineProperty(t,"TokenDissociateTransaction",{enumerable:!0,get:function(){return Oe.default}}),Object.defineProperty(t,"TokenFeeScheduleUpdateTransaction",{enumerable:!0,get:function(){return Pe.default}}),Object.defineProperty(t,"TokenFreezeTransaction",{enumerable:!0,get:function(){return Ee.default}}),Object.defineProperty(t,"TokenGrantKycTransaction",{enumerable:!0,get:function(){return Se.default}}),Object.defineProperty(t,"TokenId",{enumerable:!0,get:function(){return Re.default}}),Object.defineProperty(t,"TokenInfo",{enumerable:!0,get:function(){return De.default}}),Object.defineProperty(t,"TokenInfoQuery",{enumerable:!0,get:function(){return Ce.default}}),Object.defineProperty(t,"TokenMintTransaction",{enumerable:!0,get:function(){return Ne.default}}),Object.defineProperty(t,"TokenNftAllowance",{enumerable:!0,get:function(){return Be.default}}),Object.defineProperty(t,"TokenNftInfo",{enumerable:!0,get:function(){return Me.default}}),Object.defineProperty(t,"TokenNftInfoQuery",{enumerable:!0,get:function(){return je.default}}),Object.defineProperty(t,"TokenPauseTransaction",{enumerable:!0,get:function(){return xe.default}}),Object.defineProperty(t,"TokenRevokeKycTransaction",{enumerable:!0,get:function(){return Fe.default}}),Object.defineProperty(t,"TokenSupplyType",{enumerable:!0,get:function(){return Ue.default}}),Object.defineProperty(t,"TokenType",{enumerable:!0,get:function(){return Le.default}}),Object.defineProperty(t,"TokenUnfreezeTransaction",{enumerable:!0,get:function(){return Ge.default}}),Object.defineProperty(t,"TokenUnpauseTransaction",{enumerable:!0,get:function(){return Ke.default}}),Object.defineProperty(t,"TokenUpdateTransaction",{enumerable:!0,get:function(){return ze.default}}),Object.defineProperty(t,"TokenWipeTransaction",{enumerable:!0,get:function(){return Qe.default}}),Object.defineProperty(t,"TopicCreateTransaction",{enumerable:!0,get:function(){return He.default}}),Object.defineProperty(t,"TopicDeleteTransaction",{enumerable:!0,get:function(){return Ve.default}}),Object.defineProperty(t,"TopicId",{enumerable:!0,get:function(){return We.default}}),Object.defineProperty(t,"TopicInfo",{enumerable:!0,get:function(){return qe.default}}),Object.defineProperty(t,"TopicInfoQuery",{enumerable:!0,get:function(){return Ye.default}}),Object.defineProperty(t,"TopicMessage",{enumerable:!0,get:function(){return Ze.default}}),Object.defineProperty(t,"TopicMessageChunk",{enumerable:!0,get:function(){return Je.default}}),Object.defineProperty(t,"TopicMessageQuery",{enumerable:!0,get:function(){return Xe.default}}),Object.defineProperty(t,"TopicMessageSubmitTransaction",{enumerable:!0,get:function(){return $e.default}}),Object.defineProperty(t,"TopicUpdateTransaction",{enumerable:!0,get:function(){return et.default}}),Object.defineProperty(t,"Transaction",{enumerable:!0,get:function(){return tt.default}}),Object.defineProperty(t,"TransactionId",{enumerable:!0,get:function(){return nt.default}}),Object.defineProperty(t,"TransactionReceipt",{enumerable:!0,get:function(){return rt.default}}),Object.defineProperty(t,"TransactionReceiptQuery",{enumerable:!0,get:function(){return ot.default}}),Object.defineProperty(t,"TransactionRecord",{enumerable:!0,get:function(){return at.default}}),Object.defineProperty(t,"TransactionRecordQuery",{enumerable:!0,get:function(){return it.default}}),Object.defineProperty(t,"TransactionResponse",{enumerable:!0,get:function(){return ut.default}}),Object.defineProperty(t,"Transfer",{enumerable:!0,get:function(){return ct.default}}),Object.defineProperty(t,"TransferTransaction",{enumerable:!0,get:function(){return st.default}});var o=n(228),a=r(n(395)),i=r(n(106)),u=r(n(136)),c=r(n(43)),s=r(n(396)),l=r(n(751)),f=r(n(777)),d=r(n(414)),p=r(n(415)),h=r(n(780)),y=r(n(781)),m=r(n(11)),b=r(n(416)),v=r(n(783)),k=r(n(784)),g=r(n(785)),_=r(n(786)),w=r(n(787)),I=r(n(411)),A=r(n(791)),T=r(n(792)),O=r(n(794)),P=r(n(795)),E=r(n(796)),S=r(n(239)),R=r(n(300)),D=r(n(421)),C=r(n(57)),N=r(n(422)),B=r(n(797)),M=r(n(407)),j=r(n(798)),x=r(n(240)),F=r(n(199)),U=r(n(241)),L=r(n(242)),G=r(n(799)),K=r(n(405)),z=r(n(800)),Q=r(n(801)),H=r(n(802)),V=r(n(803)),W=r(n(62)),q=r(n(423)),Y=r(n(804)),Z=r(n(805)),J=r(n(806)),X=r(n(33)),$=r(n(236)),ee=r(n(398)),te=r(n(301)),ne=r(n(808)),re=r(n(809)),oe=r(n(810)),ae=r(n(424)),ie=r(n(811)),ue=r(n(169)),ce=r(n(418)),se=r(n(52)),le=r(n(812)),fe=r(n(813)),de=r(n(140)),pe=r(n(426)),he=r(n(814)),ye=r(n(815)),me=r(n(425)),be=r(n(137)),ve=r(n(816)),ke=r(n(817)),ge=r(n(44)),_e=r(n(237)),we=r(n(818)),Ie=r(n(819)),Ae=r(n(820)),Te=r(n(821)),Oe=r(n(822)),Pe=r(n(823)),Ee=r(n(824)),Se=r(n(825)),Re=r(n(27)),De=r(n(427)),Ce=r(n(826)),Ne=r(n(827)),Be=r(n(238)),Me=r(n(428)),je=r(n(828)),xe=r(n(829)),Fe=r(n(830)),Ue=r(n(303)),Le=r(n(302)),Ge=r(n(831)),Ke=r(n(832)),ze=r(n(833)),Qe=r(n(834)),He=r(n(835)),Ve=r(n(836)),We=r(n(118)),qe=r(n(429)),Ye=r(n(837)),Ze=r(n(430)),Je=r(n(431)),Xe=r(n(838)),$e=r(n(840)),et=r(n(841)),tt=r(n(22)),nt=r(n(75)),rt=r(n(235)),ot=r(n(400)),at=r(n(298)),it=r(n(406)),ut=r(n(399)),ct=r(n(299)),st=r(n(842)),lt=r(n(296)),ft=r(n(198)),dt=r(n(233)),pt=r(n(95));n(846);t.NetworkName={Mainnet:"mainnet",Testnet:"testnet",Previewnet:"previewnet"}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e,t){(0,i.default)(r,e);var n=s(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i>>1^(0==(1&t)?0:178)}return 255^t},t.legacy1=function(e,t){for(var n=h(e.map((function(e){return t.indexOf(e.toLowerCase())})),t.length,256,33),r=n[n.length-1],o=new Uint8Array(n.length-1),a=0;a=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;l-=1){var d=a.dividedToIntegerBy(n),p=a.modulo(n);a=d,s[l]=p.toNumber()}return s}function y(e){var t=[];t.fill(!1,0,8*e.length);for(var n=0;n>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],m=e[1],W=e[11]<<4|e[10]>>>28,q=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,b=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,k=e[25]<<11|e[24]>>>21,g=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,P=e[18]<<20|e[19]>>>12,E=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,G=e[38]<<8|e[39]>>>24,K=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~b&k,e[1]=m^~v&g,e[10]=T^~P&S,e[11]=O^~E&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~W&Y,e[31]=V^~q&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=b^~k&_,e[3]=v^~g&w,e[12]=P^~S&D,e[13]=E^~R&C,e[22]=x^~U&G,e[23]=F^~L&K,e[32]=W^~Y&J,e[33]=q^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=k^~_&I,e[5]=g^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~G&z,e[25]=L^~K&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&m,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=G^~z&M,e[27]=K^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&b,e[9]=A^~m&v,e[18]=N^~T&P,e[19]=B^~O&E,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&W,e[39]=ee^~V&q,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];b%f==0&&(c(p),n=0)}return"0x"+m}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e){e.exports=JSON.parse('{"_args":[["elliptic@6.5.4","/Users/patmat/projects/Arianelabs-hweb3.js"]],"_from":"elliptic@6.5.4","_id":"elliptic@6.5.4","_inBundle":false,"_integrity":"sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==","_location":"/elliptic","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"elliptic@6.5.4","name":"elliptic","escapedName":"elliptic","rawSpec":"6.5.4","saveSpec":null,"fetchSpec":"6.5.4"},"_requiredBy":["/@ethersproject/signing-key","/@hashgraph/cryptography","/browserify-sign","/create-ecdh","/eth-lib","/secp256k1","/swarm-js/eth-lib"],"_resolved":"https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz","_spec":"6.5.4","_where":"/Users/patmat/projects/Arianelabs-hweb3.js","author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"bugs":{"url":"https://github.com/indutny/elliptic/issues"},"dependencies":{"bn.js":"^4.11.9","brorand":"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1","inherits":"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"},"description":"EC cryptography","devDependencies":{"brfs":"^2.0.2","coveralls":"^3.1.0","eslint":"^7.6.0","grunt":"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.5","mocha":"^8.0.1"},"files":["lib"],"homepage":"https://github.com/indutny/elliptic","keywords":["EC","Elliptic","curve","Cryptography"],"license":"MIT","main":"lib/elliptic.js","name":"elliptic","repository":{"type":"git","url":"git+ssh://git@github.com/indutny/elliptic.git"},"scripts":{"lint":"eslint lib test","lint:fix":"npm run lint -- --fix","test":"npm run lint && npm run unit","unit":"istanbul test _mocha --reporter=spec test/index.js","version":"grunt dist && git add dist/"},"version":"6.5.4"}')},function(e,t){},function(e,t){},function(e,t,n){"use strict";var r=n(72),o=n(10),a=n(16),i=n(231),u=r.assert;function c(e){i.call(this,"short",e),this.a=new o(e.a,16).toRed(this.red),this.b=new o(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function s(e,t,n,r){i.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new o(t,16),this.y=new o(n,16),r&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function l(e,t,n,r){i.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===r?(this.x=this.curve.one,this.y=this.curve.one,this.z=new o(0)):(this.x=new o(t,16),this.y=new o(n,16),this.z=new o(r,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}a(c,i),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new o(e.beta,16).toRed(this.red);else{var r=this._getEndoRoots(this.p);t=(t=r[0].cmp(r[1])<0?r[0]:r[1]).toRed(this.red)}if(e.lambda)n=new o(e.lambda,16);else{var a=this._getEndoRoots(this.n);0===this.g.mul(a[0]).x.cmp(this.g.x.redMul(t))?n=a[0]:(n=a[1],u(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new o(e.a,16),b:new o(e.b,16)}})):this._getEndoBasis(n)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:o.mont(e),n=new o(2).toRed(t).redInvm(),r=n.redNeg(),a=new o(3).toRed(t).redNeg().redSqrt().redMul(n);return[r.redAdd(a).fromRed(),r.redSub(a).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,n,r,a,i,u,c,s,l,f=this.n.ushrn(Math.floor(this.n.bitLength()/2)),d=e,p=this.n.clone(),h=new o(1),y=new o(0),m=new o(0),b=new o(1),v=0;0!==d.cmpn(0);){var k=p.div(d);s=p.sub(k.mul(d)),l=m.sub(k.mul(h));var g=b.sub(k.mul(y));if(!r&&s.cmp(f)<0)t=c.neg(),n=h,r=s.neg(),a=l;else if(r&&2==++v)break;c=s,p=d,d=s,m=h,h=l,b=y,y=g}i=s.neg(),u=l;var _=r.sqr().add(a.sqr());return i.sqr().add(u.sqr()).cmp(_)>=0&&(i=t,u=n),r.negative&&(r=r.neg(),a=a.neg()),i.negative&&(i=i.neg(),u=u.neg()),[{a:r,b:a},{a:i,b:u}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],r=t[1],o=r.b.mul(e).divRound(this.n),a=n.b.neg().mul(e).divRound(this.n),i=o.mul(n.a),u=a.mul(r.a),c=o.mul(n.b),s=a.mul(r.b);return{k1:e.sub(i).sub(u),k2:c.add(s).neg()}},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var a=r.fromRed().isOdd();return(t&&!a||!t&&a)&&(r=r.redNeg()),this.point(e,r)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,r=this.a.redMul(t),o=t.redSqr().redMul(t).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(o).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,n){for(var r=this._endoWnafT1,o=this._endoWnafT2,a=0;a":""},s.prototype.isInfinity=function(){return this.inf},s.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var n=t.redSqr().redISub(this.x).redISub(e.x),r=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},s.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,n=this.x.redSqr(),r=e.redInvm(),o=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(r),a=o.redSqr().redISub(this.x.redAdd(this.x)),i=o.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,i)},s.prototype.getX=function(){return this.x.fromRed()},s.prototype.getY=function(){return this.y.fromRed()},s.prototype.mul=function(e){return e=new o(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o):this.curve._wnafMulAdd(1,r,o,2)},s.prototype.jmulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o,!0):this.curve._wnafMulAdd(1,r,o,2,!0)},s.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},s.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,r=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return t},s.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},a(l,i.BasePoint),c.prototype.jpoint=function(e,t,n){return new l(this,e,t,n)},l.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),r=this.y.redMul(t).redMul(e);return this.curve.point(n,r)},l.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},l.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(t),o=e.x.redMul(n),a=this.y.redMul(t.redMul(e.z)),i=e.y.redMul(n.redMul(this.z)),u=r.redSub(o),c=a.redSub(i);if(0===u.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var s=u.redSqr(),l=s.redMul(u),f=r.redMul(s),d=c.redSqr().redIAdd(l).redISub(f).redISub(f),p=c.redMul(f.redISub(d)).redISub(a.redMul(l)),h=this.z.redMul(e.z).redMul(u);return this.curve.jpoint(d,p,h)},l.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,r=e.x.redMul(t),o=this.y,a=e.y.redMul(t).redMul(this.z),i=n.redSub(r),u=o.redSub(a);if(0===i.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=i.redSqr(),s=c.redMul(i),l=n.redMul(c),f=u.redSqr().redIAdd(s).redISub(l).redISub(l),d=u.redMul(l.redISub(f)).redISub(o.redMul(s)),p=this.z.redMul(i);return this.curve.jpoint(f,d,p)},l.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t=0)return!1;if(n.redIAdd(o),0===this.x.cmp(n))return!0}},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t,n){"use strict";var r=n(10),o=n(16),a=n(231),i=n(72);function u(e){a.call(this,"mont",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.i4=new r(4).toRed(this.red).redInvm(),this.two=new r(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,n){a.BasePoint.call(this,e,"projective"),null===t&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new r(t,16),this.z=new r(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}o(u,a),e.exports=u,u.prototype.validate=function(e){var t=e.normalize().x,n=t.redSqr(),r=n.redMul(t).redAdd(n.redMul(this.a)).redAdd(t);return 0===r.redSqrt().redSqr().cmp(r)},o(c,a.BasePoint),u.prototype.decodePoint=function(e,t){return this.point(i.toArray(e,t),1)},u.prototype.point=function(e,t){return new c(this,e,t)},u.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),n=e.redSub(t),r=e.redMul(t),o=n.redMul(t.redAdd(this.curve.a24.redMul(n)));return this.curve.point(r,o)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var n=this.x.redAdd(this.z),r=this.x.redSub(this.z),o=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(n),i=o.redMul(r),u=t.z.redMul(a.redAdd(i).redSqr()),c=t.x.redMul(a.redISub(i).redSqr());return this.curve.point(u,c)},c.prototype.mul=function(e){for(var t=e.clone(),n=this,r=this.curve.point(null,null),o=[];0!==t.cmpn(0);t.iushrn(1))o.push(t.andln(1));for(var a=o.length-1;a>=0;a--)0===o[a]?(n=n.diffAdd(r,this),r=r.dbl()):(r=n.diffAdd(r,this),n=n.dbl());return r},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,n){"use strict";var r=n(72),o=n(10),a=n(16),i=n(231),u=r.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,i.call(this,"edwards",e),this.a=new o(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new o(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new o(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),u(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function s(e,t,n,r,a){i.BasePoint.call(this,e,"projective"),null===t&&null===n&&null===r?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new o(t,16),this.y=new o(n,16),this.z=r?new o(r,16):this.curve.one,this.t=a&&new o(a,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}a(c,i),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,n,r){return this.point(e,t,n,r)},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=this.c2.redSub(this.a.redMul(n)),a=this.one.redSub(this.c2.redMul(this.d).redMul(n)),i=r.redMul(a.redInvm()),u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");var c=u.fromRed().isOdd();return(t&&!c||!t&&c)&&(u=u.redNeg()),this.point(e,u)},c.prototype.pointFromY=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=n.redSub(this.c2),a=n.redMul(this.d).redMul(this.c2).redSub(this.a),i=r.redMul(a.redInvm());if(0===i.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");return u.fromRed().isOdd()!==t&&(u=u.redNeg()),this.point(u,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),n=e.y.redSqr(),r=t.redMul(this.a).redAdd(n),o=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(n)));return 0===r.cmp(o)},a(s,i.BasePoint),c.prototype.pointFromJSON=function(e){return s.fromJSON(this,e)},c.prototype.point=function(e,t,n,r){return new s(this,e,t,n,r)},s.fromJSON=function(e,t){return new s(e,t[0],t[1],t[2])},s.prototype.inspect=function(){return this.isInfinity()?"":""},s.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},s.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var r=this.curve._mulA(e),o=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=r.redAdd(t),i=a.redSub(n),u=r.redSub(t),c=o.redMul(i),s=a.redMul(u),l=o.redMul(u),f=i.redMul(a);return this.curve.point(c,s,f,l)},s.prototype._projDbl=function(){var e,t,n,r,o,a,i=this.x.redAdd(this.y).redSqr(),u=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var s=(r=this.curve._mulA(u)).redAdd(c);this.zOne?(e=i.redSub(u).redSub(c).redMul(s.redSub(this.curve.two)),t=s.redMul(r.redSub(c)),n=s.redSqr().redSub(s).redSub(s)):(o=this.z.redSqr(),a=s.redSub(o).redISub(o),e=i.redSub(u).redISub(c).redMul(a),t=s.redMul(r.redSub(c)),n=s.redMul(a))}else r=u.redAdd(c),o=this.curve._mulC(this.z).redSqr(),a=r.redSub(o).redSub(o),e=this.curve._mulC(i.redISub(r)).redMul(a),t=this.curve._mulC(r).redMul(u.redISub(c)),n=r.redMul(a);return this.curve.point(e,t,n)},s.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},s.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),r=this.t.redMul(this.curve.dd).redMul(e.t),o=this.z.redMul(e.z.redAdd(e.z)),a=n.redSub(t),i=o.redSub(r),u=o.redAdd(r),c=n.redAdd(t),s=a.redMul(i),l=u.redMul(c),f=a.redMul(c),d=i.redMul(u);return this.curve.point(s,l,d,f)},s.prototype._projAdd=function(e){var t,n,r=this.z.redMul(e.z),o=r.redSqr(),a=this.x.redMul(e.x),i=this.y.redMul(e.y),u=this.curve.d.redMul(a).redMul(i),c=o.redSub(u),s=o.redAdd(u),l=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(i),f=r.redMul(c).redMul(l);return this.curve.twisted?(t=r.redMul(s).redMul(i.redSub(this.curve._mulA(a))),n=c.redMul(s)):(t=r.redMul(s).redMul(i.redSub(a)),n=this.curve._mulC(c).redMul(s)),this.curve.point(f,t,n)},s.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},s.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!1)},s.prototype.jmulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!0)},s.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},s.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},s.prototype.getX=function(){return this.normalize(),this.x.fromRed()},s.prototype.getY=function(){return this.normalize(),this.y.fromRed()},s.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},s.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var n=e.clone(),r=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(r),0===this.x.cmp(t))return!0}},s.prototype.toP=s.prototype.normalize,s.prototype.mixedAdd=s.prototype.add},function(e,t,n){"use strict";t.sha1=n(732),t.sha224=n(733),t.sha256=n(390),t.sha384=n(734),t.sha512=n(391)},function(e,t,n){"use strict";var r=n(94),o=n(197),a=n(389),i=r.rotl32,u=r.sum32,c=r.sum32_5,s=a.ft_1,l=o.BlockHash,f=[1518500249,1859775393,2400959708,3395469782];function d(){if(!(this instanceof d))return new d;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}r.inherits(d,l),e.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;rthis.blockSize&&(e=(new this.Hash).update(e).digest()),o(e.length<=this.blockSize);for(var t=e.length;t0))return i.iaddn(1),this.keyFromPrivate(i)}},d.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,n,i){"object"===(0,r.default)(n)&&(i=n,n=null),i||(i={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new o(e,16));for(var u=this.n.byteLength(),c=t.getPrivate().toArray("be",u),s=e.toArray("be",u),l=new a({hash:this.hash,entropy:c,nonce:s,pers:i.pers,persEnc:i.persEnc||"utf8"}),d=this.n.sub(new o(1)),p=0;;p++){var h=i.k?i.k(p):new o(l.generate(this.n.byteLength()));if(!((h=this._truncateToN(h,!0)).cmpn(1)<=0||h.cmp(d)>=0)){var y=this.g.mul(h);if(!y.isInfinity()){var m=y.getX(),b=m.umod(this.n);if(0!==b.cmpn(0)){var v=h.invm(this.n).mul(b.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var k=(y.getY().isOdd()?1:0)|(0!==m.cmp(b)?2:0);return i.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),k^=1),new f({r:b,s:v,recoveryParam:k})}}}}}},d.prototype.verify=function(e,t,n,r){e=this._truncateToN(new o(e,16)),n=this.keyFromPublic(n,r);var a=(t=new f(t,"hex")).r,i=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var u,c=i.invm(this.n),s=c.mul(e).umod(this.n),l=c.mul(a).umod(this.n);return this.curve._maxwellTrick?!(u=this.g.jmulAdd(s,n.getPublic(),l)).isInfinity()&&u.eqXToP(a):!(u=this.g.mulAdd(s,n.getPublic(),l)).isInfinity()&&0===u.getX().umod(this.n).cmp(a)},d.prototype.recoverPubKey=function(e,t,n,r){s((3&n)===n,"The recovery param is more than two bits"),t=new f(t,r);var a=this.n,i=new o(e),u=t.r,c=t.s,l=1&n,d=n>>1;if(u.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");u=d?this.curve.pointFromX(u.add(this.curve.n),l):this.curve.pointFromX(u,l);var p=t.r.invm(a),h=a.sub(i).mul(p).umod(a),y=c.mul(p).umod(a);return this.g.mulAdd(h,u,y)},d.prototype.getKeyRecoveryParam=function(e,t,n,r){if(null!==(t=new f(t,r)).recoveryParam)return t.recoveryParam;for(var o=0;o<4;o++){var a;try{a=this.recoverPubKey(e,t,o)}catch(e){continue}if(a.eq(n))return o}throw new Error("Unable to find valid recovery factor")}},function(e,t,n){"use strict";var r=n(232),o=n(387),a=n(73);function i(e){if(!(this instanceof i))return new i(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=o.toArray(e.entropy,e.entropyEnc||"hex"),n=o.toArray(e.nonce,e.nonceEnc||"hex"),r=o.toArray(e.pers,e.persEnc||"hex");a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,r)}e.exports=i,i.prototype._init=function(e,t,n){var r=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var o=0;o=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},i.prototype.generate=function(e,t,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(r=n,n=t,t=null),n&&(n=o.toArray(n,r||"hex"),this._update(n));for(var a=[];a.length"}},function(e,t,n){"use strict";var r=n(10),o=n(72),a=o.assert;function i(e,t){if(e instanceof i)return e;this._importDER(e,t)||(a(e.r&&e.s,"Signature without r or s"),this.r=new r(e.r,16),this.s=new r(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function u(){this.place=0}function c(e,t){var n=e[t.place++];if(!(128&n))return n;var r=15&n;if(0===r||r>4)return!1;for(var o=0,a=0,i=t.place;a>>=0;return!(o<=127)&&(t.place=i,o)}function s(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}e.exports=i,i.prototype._importDER=function(e,t){e=o.toArray(e,t);var n=new u;if(48!==e[n.place++])return!1;var a=c(e,n);if(!1===a)return!1;if(a+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var i=c(e,n);if(!1===i)return!1;var s=e.slice(n.place,i+n.place);if(n.place+=i,2!==e[n.place++])return!1;var l=c(e,n);if(!1===l)return!1;if(e.length!==l+n.place)return!1;var f=e.slice(n.place,l+n.place);if(0===s[0]){if(!(128&s[1]))return!1;s=s.slice(1)}if(0===f[0]){if(!(128&f[1]))return!1;f=f.slice(1)}return this.r=new r(s),this.s=new r(f),this.recoveryParam=null,!0},i.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=s(t),n=s(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];l(r,t.length),(r=r.concat(t)).push(2),l(r,n.length);var a=r.concat(n),i=[48];return l(i,a.length),i=i.concat(a),o.encode(i,e)}},function(e,t,n){"use strict";var r=n(232),o=n(295),a=n(72),i=a.assert,u=a.parseBytes,c=n(743),s=n(744);function l(e){if(i("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof l))return new l(e);e=o[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=r.sha512}e.exports=l,l.prototype.sign=function(e,t){e=u(e);var n=this.keyFromSecret(t),r=this.hashInt(n.messagePrefix(),e),o=this.g.mul(r),a=this.encodePoint(o),i=this.hashInt(a,n.pubBytes(),e).mul(n.priv()),c=r.add(i).umod(this.curve.n);return this.makeSignature({R:o,S:c,Rencoded:a})},l.prototype.verify=function(e,t,n){e=u(e),t=this.makeSignature(t);var r=this.keyFromPublic(n),o=this.hashInt(t.Rencoded(),r.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(r.pub().mul(o)).eq(a)},l.prototype.hashInt=function(){for(var e=this.hash(),t=0;t=1&&"ident"in t.seq[0]))throw new Error("error parsing AlgorithmIdentifier from ".concat(JSON.stringify(t)));this.algIdent=t.seq[0].ident,this.parameters=t.seq[1]}return(0,c.default)(e,[{key:"toString",value:function(){return JSON.stringify(this)}}]),e}();t.AlgorithmIdentifier=y;var m=function e(t){if((0,u.default)(this,e),!("seq"in t)||2!==t.seq.length)throw new Error("error parsing PBES2Params from ".concat(JSON.stringify(t)));this.kdf=new y(t.seq[0]),this.encScheme=new y(t.seq[1])},b=function e(t){if((0,u.default)(this,e),"seq"in t&&t.seq.length>=2&&"bytes"in t.seq[0]&&"int"in t.seq[1]&&(this.salt=t.seq[0].bytes,this.iterCount=t.seq[1].int,t.seq.length>2))return"seq"in t.seq[2]?void(this.prf=new y(t.seq[2])):("int"in t.seq[2]&&(this.keyLength=t.seq[2].int),void(4===t.seq.length&&(this.prf=new y(t.seq[3]))));throw new Error("error parsing PBKDF2Params from ".concat(JSON.stringify(t)))},v=function(){function e(t){if((0,u.default)(this,e),!("seq"in t)||3!==t.seq.length)throw new Error("error parsing PrivateKeyInfo from ".concat(JSON.stringify(t)));if(!("int"in t.seq[0])||0!==t.seq[0].int)throw new Error("expected version = 0, got ".concat(JSON.stringify(t.seq[0])));if(this.version=0,this.algId=new y(t.seq[1]),!("bytes"in t.seq[2]))throw new Error("expected octet string as 3rd element, got ".concat(JSON.stringify(t.seq[2])));this.privateKey=t.seq[2].bytes}return(0,c.default)(e,null,[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.PrivateKeyInfo=v;var k=function(){function e(t){if((0,u.default)(this,e),"seq"in t&&2===t.seq.length&&"bytes"in t.seq[1])return this.algId=new y(t.seq[0]),void(this.data=t.seq[1].bytes);throw new Error("error parsing EncryptedPrivateKeyInfo from ".concat(JSON.stringify(t)))}var t;return(0,c.default)(e,[{key:"decrypt",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("1.2.840.113549.1.5.13"===this.algId.algIdent&&this.algId.parameters){e.next=2;break}throw new Error("unsupported key encryption algorithm: ".concat(this.algId.toString()));case 2:if("1.2.840.113549.1.5.12"===(n=new m(this.algId.parameters)).kdf.algIdent&&n.kdf.parameters){e.next=5;break}throw new Error("unsupported key derivation function: ".concat(n.kdf.toString()));case 5:if((r=new b(n.kdf.parameters)).prf){e.next=10;break}throw new Error("unsupported PRF HMAC-SHA-1");case 10:if("1.2.840.113549.2.9"===r.prf.algIdent){e.next=12;break}throw new Error("unsupported PRF ".concat(r.prf.toString()));case 12:if("2.16.840.1.101.3.4.1.2"===n.encScheme.algIdent){e.next=14;break}throw new Error("unsupported encryption scheme: ".concat(n.encScheme.toString()));case 14:if(n.encScheme.parameters&&"bytes"in n.encScheme.parameters){e.next=16;break}throw new Error("expected IV as bytes for AES-128-CBC, "+"got: ".concat(JSON.stringify(n.encScheme.parameters)));case 16:return o=r.keyLength||16,i=n.encScheme.parameters.bytes,e.next=20,f.deriveKey(d.HashAlgorithm.Sha256,t,r.salt,r.iterCount,o);case 20:return u=e.sent,e.next=23,s.createDecipheriv(s.CipherAlgorithm.Aes128Cbc,u,i,this.data);case 23:return c=e.sent,e.abrupt("return",v.parse(c));case 25:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}],[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.EncryptedPrivateKeyInfo=k},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return Uint8Array.from(atob(e),(function(e){return e.charCodeAt(0)}))},t.encode=function(e){return btoa(String.fromCharCode.apply(null,Array.from(e)))}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.legacy=function(e,t){var n=new Uint8Array(e.length+8);n.set(e,0);var r=new DataView(n.buffer,n.byteOffset,n.byteLength);0xffffffffff===t?(r.setInt32(e.length+0,255),r.setInt32(e.length+4,-1)):(r.setInt32(e.length+0,t<0?-1:0),r.setInt32(e.length+4,t));var i=Uint8Array.from([255]);return o.deriveKey(a.HashAlgorithm.Sha512,n,i,2048,32)};var o=u(n(230)),a=u(n(196));function i(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(i=function(e){return e?n:t})(e)}function u(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=i(t);if(n&&n.has(e))return n.get(e);var o={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=a?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}return o.default=e,n&&n.set(e,o),o}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayEqual=function(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;var n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=new DataView(t.buffer,t.byteOffset,t.byteLength),o=e.byteLength;for(;o--;)if(n.getUint8(o)!==r.getUint8(o))return!1;return!0},t.arrayStartsWith=function(e,t){if(e.byteLength=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarAllowances=null!=r.hbarAllowances?r.hbarAllowances:[],e._tokenAllowances=null!=r.tokenAllowances?r.tokenAllowances:[],e._nftAllowances=null!=r.nftAllowances?r.nftAllowances:[],e}return(0,i.default)(n,[{key:"hbarAllowances",get:function(){return this._hbarAllowances}},{key:"addHbarAllowance",value:function(e,t){return this._requireNotFrozen(),this._hbarAllowances.push(new m.default({spenderAccountId:"string"==typeof e?f.default.fromString(e):e,amount:t instanceof y.default?t:new y.default(t),ownerAccountId:null})),this}},{key:"tokenAllowances",get:function(){return this._tokenAllowances}},{key:"addTokenAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._tokenAllowances.push(new b.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof n?h.default.fromNumber(n):n,ownerAccountId:null})),this}},{key:"addTokenNftAllowance",value:function(e,t){this._requireNotFrozen();var n,r="string"==typeof e?p.default.fromString(e):e,o="string"==typeof t?f.default.fromString(t):t,a=!1,i=g(this._nftAllowances);try{for(i.s();!(n=i.n()).done;){var u=n.value;if(0===u.tokenId.compare(r.tokenId)&&0===u.spenderAccountId.compare(o)){null!=u.serialNumbers&&u.serialNumbers.push(r.serial),a=!0;break}}}catch(e){i.e(e)}finally{i.f()}return a||this._nftAllowances.push(new v.default({tokenId:r.tokenId,spenderAccountId:o,serialNumbers:[r.serial],ownerAccountId:null})),this}},{key:"addAllTokenNftAllowance",value:function(e,t){return this._requireNotFrozen(),this._nftAllowances.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:null,ownerAccountId:null})),this}},{key:"_validateChecksums",value:function(e){this._hbarAllowances.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenAllowances.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.adjustAllowance(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAdjustAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarAllowances.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenAllowances.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftAllowances.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAdjustAllowance;return l.default._fromProtobufTransactions(new n({hbarAllowances:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),tokenAllowances:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),nftAllowances:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=I,l.TRANSACTION_REGISTRY.set("cryptoAdjustAllowance",I._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.valueToLong=function(e){return o.default.isBigNumber(e)?e:new o.default(e.toString())};var o=r(n(135))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r,a,i,u){var c;return(0,o.default)(this,n),(c=t.call(this,"Entity ID ".concat(e.toString(),".").concat(r.toString(),".").concat(a.toString(),"-").concat(i," was incorrect."))).name="BadEntityIdException",c.shard=e,c.realm=r,c.num=a,c.presentChecksum=i,c.expectedChecksum=u,c}return n}((0,r(n(42)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=t;function o(){r.util._configure(),r.Writer._configure(r.BufferWriter),r.Reader._configure(r.BufferReader)}r.build="minimal",r.Writer=n(402),r.BufferWriter=n(763),r.Reader=n(403),r.BufferReader=n(764),r.util=n(138),r.rpc=n(765),r.roots=n(767),r.configure=o,o()},function(e,t,n){"use strict";e.exports=function(e,t){var n=new Array(arguments.length-1),r=0,o=2,a=!0;for(;o1&&"="===e.charAt(t);)++n;return Math.ceil(3*e.length)/4-n};for(var o=new Array(64),a=new Array(123),i=0;i<64;)a[o[i]=i<26?i+65:i<52?i+71:i<62?i-4:i-59|43]=i++;r.encode=function(e,t,n){for(var r,a=null,i=[],u=0,c=0;t>2],r=(3&s)<<4,c=1;break;case 1:i[u++]=o[r|s>>4],r=(15&s)<<2,c=2;break;case 2:i[u++]=o[r|s>>6],i[u++]=o[63&s],c=0}u>8191&&((a||(a=[])).push(String.fromCharCode.apply(String,i)),u=0)}return c&&(i[u++]=o[r],i[u++]=61,1===c&&(i[u++]=61)),a?(u&&a.push(String.fromCharCode.apply(String,i.slice(0,u))),a.join("")):String.fromCharCode.apply(String,i.slice(0,u))};r.decode=function(e,t,n){for(var r,o=n,i=0,u=0;u1)break;if(void 0===(c=a[c]))throw Error("invalid encoding");switch(i){case 0:r=c,i=1;break;case 1:t[n++]=r<<2|(48&c)>>4,r=c,i=2;break;case 2:t[n++]=(15&r)<<4|(60&c)>>2,r=c,i=3;break;case 3:t[n++]=(3&r)<<6|c,i=0}}if(1===i)throw Error("invalid encoding");return n-o},r.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}},function(e,t,n){"use strict";function r(){this._listeners={}}e.exports=r,r.prototype.on=function(e,t,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:t,ctx:n||this}),this},r.prototype.off=function(e,t){if(void 0===e)this._listeners={};else if(void 0===t)this._listeners[e]=[];else for(var n=this._listeners[e],r=0;r0?0:2147483648,n,r);else if(isNaN(t))e(2143289344,n,r);else if(t>34028234663852886e22)e((o<<31|2139095040)>>>0,n,r);else if(t<11754943508222875e-54)e((o<<31|Math.round(t/1401298464324817e-60))>>>0,n,r);else{var a=Math.floor(Math.log(t)/Math.LN2);e((o<<31|a+127<<23|8388607&Math.round(t*Math.pow(2,-a)*8388608))>>>0,n,r)}}function n(e,t,n){var r=e(t,n),o=2*(r>>31)+1,a=r>>>23&255,i=8388607&r;return 255===a?i?NaN:o*(1/0):0===a?1401298464324817e-60*o*i:o*Math.pow(2,a-150)*(i+8388608)}e.writeFloatLE=t.bind(null,o),e.writeFloatBE=t.bind(null,a),e.readFloatLE=n.bind(null,i),e.readFloatBE=n.bind(null,u)}(),"undefined"!=typeof Float64Array?function(){var t=new Float64Array([-0]),n=new Uint8Array(t.buffer),r=128===n[7];function o(e,r,o){t[0]=e,r[o]=n[0],r[o+1]=n[1],r[o+2]=n[2],r[o+3]=n[3],r[o+4]=n[4],r[o+5]=n[5],r[o+6]=n[6],r[o+7]=n[7]}function a(e,r,o){t[0]=e,r[o]=n[7],r[o+1]=n[6],r[o+2]=n[5],r[o+3]=n[4],r[o+4]=n[3],r[o+5]=n[2],r[o+6]=n[1],r[o+7]=n[0]}function i(e,r){return n[0]=e[r],n[1]=e[r+1],n[2]=e[r+2],n[3]=e[r+3],n[4]=e[r+4],n[5]=e[r+5],n[6]=e[r+6],n[7]=e[r+7],t[0]}function u(e,r){return n[7]=e[r],n[6]=e[r+1],n[5]=e[r+2],n[4]=e[r+3],n[3]=e[r+4],n[2]=e[r+5],n[1]=e[r+6],n[0]=e[r+7],t[0]}e.writeDoubleLE=r?o:a,e.writeDoubleBE=r?a:o,e.readDoubleLE=r?i:u,e.readDoubleBE=r?u:i}():function(){function t(e,t,n,r,o,a){var i=r<0?1:0;if(i&&(r=-r),0===r)e(0,o,a+t),e(1/r>0?0:2147483648,o,a+n);else if(isNaN(r))e(0,o,a+t),e(2146959360,o,a+n);else if(r>17976931348623157e292)e(0,o,a+t),e((i<<31|2146435072)>>>0,o,a+n);else{var u;if(r<22250738585072014e-324)e((u=r/5e-324)>>>0,o,a+t),e((i<<31|u/4294967296)>>>0,o,a+n);else{var c=Math.floor(Math.log(r)/Math.LN2);1024===c&&(c=1023),e(4503599627370496*(u=r*Math.pow(2,-c))>>>0,o,a+t),e((i<<31|c+1023<<20|1048576*u&1048575)>>>0,o,a+n)}}}function n(e,t,n,r,o){var a=e(r,o+t),i=e(r,o+n),u=2*(i>>31)+1,c=i>>>20&2047,s=4294967296*(1048575&i)+a;return 2047===c?s?NaN:u*(1/0):0===c?5e-324*u*s:u*Math.pow(2,c-1075)*(s+4503599627370496)}e.writeDoubleLE=t.bind(null,o,0,4),e.writeDoubleBE=t.bind(null,a,4,0),e.readDoubleLE=n.bind(null,i,0,4),e.readDoubleBE=n.bind(null,u,4,0)}(),e}function o(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}function a(e,t,n){t[n]=e>>>24,t[n+1]=e>>>16&255,t[n+2]=e>>>8&255,t[n+3]=255&e}function i(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function u(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}e.exports=r(r)},function(module,exports,__webpack_require__){"use strict";function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}module.exports=inquire},function(e,t,n){"use strict";var r=t;r.length=function(e){for(var t=0,n=0,r=0;r191&&r<224?a[i++]=(31&r)<<6|63&e[t++]:r>239&&r<365?(r=((7&r)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,a[i++]=55296+(r>>10),a[i++]=56320+(1023&r)):a[i++]=(15&r)<<12|(63&e[t++])<<6|63&e[t++],i>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,a)),i=0);return o?(i&&o.push(String.fromCharCode.apply(String,a.slice(0,i))),o.join("")):String.fromCharCode.apply(String,a.slice(0,i))},r.write=function(e,t,n){for(var r,o,a=n,i=0;i>6|192,t[n++]=63&r|128):55296==(64512&r)&&56320==(64512&(o=e.charCodeAt(i+1)))?(r=65536+((1023&r)<<10)+(1023&o),++i,t[n++]=r>>18|240,t[n++]=r>>12&63|128,t[n++]=r>>6&63|128,t[n++]=63&r|128):(t[n++]=r>>12|224,t[n++]=r>>6&63|128,t[n++]=63&r|128);return n-a}},function(e,t,n){"use strict";e.exports=function(e,t,n){var r=n||8192,o=r>>>1,a=null,i=r;return function(n){if(n<1||n>o)return e(n);i+n>r&&(a=e(r),i=0);var u=t.call(a,i,i+=n);return 7&i&&(i=1+(7|i)),u}}},function(e,t,n){"use strict";e.exports=o;var r=n(138);function o(e,t){this.lo=e>>>0,this.hi=t>>>0}var a=o.zero=new o(0,0);a.toNumber=function(){return 0},a.zzEncode=a.zzDecode=function(){return this},a.length=function(){return 1};var i=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(e){if(0===e)return a;var t=e<0;t&&(e=-e);var n=e>>>0,r=(e-n)/4294967296>>>0;return t&&(r=~r>>>0,n=~n>>>0,++n>4294967295&&(n=0,++r>4294967295&&(r=0))),new o(n,r)},o.from=function(e){if("number"==typeof e)return o.fromNumber(e);if(r.isString(e)){if(!r.Long)return o.fromNumber(parseInt(e,10));e=r.Long.fromString(e)}return e.low||e.high?new o(e.low>>>0,e.high>>>0):a},o.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var t=1+~this.lo>>>0,n=~this.hi>>>0;return t||(n=n+1>>>0),-(t+4294967296*n)}return this.lo+4294967296*this.hi},o.prototype.toLong=function(e){return r.Long?new r.Long(0|this.lo,0|this.hi,Boolean(e)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(e)}};var u=String.prototype.charCodeAt;o.fromHash=function(e){return e===i?a:new o((u.call(e,0)|u.call(e,1)<<8|u.call(e,2)<<16|u.call(e,3)<<24)>>>0,(u.call(e,4)|u.call(e,5)<<8|u.call(e,6)<<16|u.call(e,7)<<24)>>>0)},o.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},o.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this},o.prototype.zzDecode=function(){var e=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this},o.prototype.length=function(){var e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===t?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}},function(e,t,n){"use strict";e.exports=a;var r=n(402);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(138);function a(){r.call(this)}function i(e,t,n){e.length<40?o.utf8.write(e,t,n):t.utf8Write?t.utf8Write(e,n):t.write(e,n)}a._configure=function(){a.alloc=o._Buffer_allocUnsafe,a.writeBytesBuffer=o.Buffer&&o.Buffer.prototype instanceof Uint8Array&&"set"===o.Buffer.prototype.set.name?function(e,t,n){t.set(e,n)}:function(e,t,n){if(e.copy)e.copy(t,n,0,e.length);else for(var r=0;r>>0;return this.uint32(t),t&&this._push(a.writeBytesBuffer,t,e),this},a.prototype.string=function(e){var t=o.Buffer.byteLength(e);return this.uint32(t),t&&this._push(i,t,e),this},a._configure()},function(e,t,n){"use strict";e.exports=a;var r=n(403);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(138);function a(e){r.call(this,e)}a._configure=function(){o.Buffer&&(a.prototype._slice=o.Buffer.prototype.slice)},a.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))},a._configure()},function(e,t,n){"use strict";t.Service=n(766)},function(e,t,n){"use strict";e.exports=o;var r=n(138);function o(e,t,n){if("function"!=typeof e)throw TypeError("rpcImpl must be a function");r.EventEmitter.call(this),this.rpcImpl=e,this.requestDelimited=Boolean(t),this.responseDelimited=Boolean(n)}(o.prototype=Object.create(r.EventEmitter.prototype)).constructor=o,o.prototype.rpcCall=function e(t,n,o,a,i){if(!a)throw TypeError("request must be specified");var u=this;if(!i)return r.asPromise(e,u,t,n,o,a);if(u.rpcImpl)try{return u.rpcImpl(t,n[u.requestDelimited?"encodeDelimited":"encode"](a).finish(),(function(e,n){if(e)return u.emit("error",e,t),i(e);if(null!==n){if(!(n instanceof o))try{n=o[u.responseDelimited?"decodeDelimited":"decode"](n)}catch(e){return u.emit("error",e,t),i(e)}return u.emit("data",n,t),i(null,n)}u.end(!0)}))}catch(e){return u.emit("error",e,t),void setTimeout((function(){i(e)}),0)}else setTimeout((function(){i(Error("already ended"))}),0)},o.prototype.end=function(e){return this.rpcImpl&&(e||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.proto=t.google=t.default=void 0;var o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=i?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}o.default=e,n&&n.set(e,o);return o}(n(401));function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}var i=o.Reader,u=o.Writer,c=o.util,s=o.roots.hashgraph||(o.roots.hashgraph={});t.default=s;var l=s.proto=function(){var e,t,n={};return n.TokenUnitBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.SingleAccountBalances=function(){function e(e){if(this.tokenUnitBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hbarBalance=e.uint64();break;case 3:r.tokenUnitBalances&&r.tokenUnitBalances.length||(r.tokenUnitBalances=[]),r.tokenUnitBalances.push(s.proto.TokenUnitBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.AllAccountBalances=function(){function e(e){if(this.allAccounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.allAccounts&&r.allAccounts.length||(r.allAccounts=[]),r.allAccounts.push(s.proto.SingleAccountBalances.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ShardID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.RealmID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AccountID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.accountNum=e.int64();break;case 4:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.fileNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.contractNum=e.int64();break;case 4:r.evmAddress=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionValidStart=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.scheduled=e.bool();break;case 4:r.nonce=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.AccountAmount=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.sint64();break;case 3:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransferList=function(){function e(e){if(this.accountAmounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountAmounts&&r.accountAmounts.length||(r.accountAmounts=[]),r.accountAmounts.push(s.proto.AccountAmount.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftTransfer=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.senderAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.receiverAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.serialNumber=e.int64();break;case 4:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenTransferList=function(){function e(e){if(this.transfers=[],this.nftTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.transfers&&r.transfers.length||(r.transfers=[]),r.transfers.push(s.proto.AccountAmount.decode(e,e.uint32()));break;case 3:r.nftTransfers&&r.nftTransfers.length||(r.nftTransfers=[]),r.nftTransfers.push(s.proto.NftTransfer.decode(e,e.uint32()));break;case 4:r.expectedDecimals=s.google.protobuf.UInt32Value.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Fraction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.numerator=e.int64();break;case 2:r.denominator=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TopicID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.topicNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.tokenNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.scheduleNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenType=(e={},(t=Object.create(e))[e[0]="FUNGIBLE_COMMON"]=0,t[e[1]="NON_FUNGIBLE_UNIQUE"]=1,t),n.SubType=function(){var e={},t=Object.create(e);return t[e[0]="DEFAULT"]=0,t[e[1]="TOKEN_FUNGIBLE_COMMON"]=1,t[e[2]="TOKEN_NON_FUNGIBLE_UNIQUE"]=2,t[e[3]="TOKEN_FUNGIBLE_COMMON_WITH_CUSTOM_FEES"]=3,t[e[4]="TOKEN_NON_FUNGIBLE_UNIQUE_WITH_CUSTOM_FEES"]=4,t}(),n.TokenSupplyType=function(){var e={},t=Object.create(e);return t[e[0]="INFINITE"]=0,t[e[1]="FINITE"]=1,t}(),n.TokenFreezeStatus=function(){var e={},t=Object.create(e);return t[e[0]="FreezeNotApplicable"]=0,t[e[1]="Frozen"]=1,t[e[2]="Unfrozen"]=2,t}(),n.TokenKycStatus=function(){var e={},t=Object.create(e);return t[e[0]="KycNotApplicable"]=0,t[e[1]="Granted"]=1,t[e[2]="Revoked"]=2,t}(),n.TokenPauseStatus=function(){var e={},t=Object.create(e);return t[e[0]="PauseNotApplicable"]=0,t[e[1]="Paused"]=1,t[e[2]="Unpaused"]=2,t}(),n.Key=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdKey=s.proto.ThresholdKey.decode(e,e.uint32());break;case 6:r.keyList=s.proto.KeyList.decode(e,e.uint32());break;case 7:r.ECDSASecp256k1=e.bytes();break;case 8:r.delegatableContractId=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdKey=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.threshold=e.uint32();break;case 2:r.keys=s.proto.KeyList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.KeyList=function(){function e(e){if(this.keys=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.keys&&r.keys.length||(r.keys=[]),r.keys.push(s.proto.Key.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Signature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contract=e.bytes();break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdSignature=s.proto.ThresholdSignature.decode(e,e.uint32());break;case 6:r.signatureList=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdSignature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SignatureList=function(){function e(e){if(this.sigs=[],e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs&&r.sigs.length||(r.sigs=[]),r.sigs.push(s.proto.Signature.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SignaturePair=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.pubKeyPrefix=e.bytes();break;case 2:r.contract=e.bytes();break;case 3:r.ed25519=e.bytes();break;case 4:r.RSA_3072=e.bytes();break;case 5:r.ECDSA_384=e.bytes();break;case 6:r.ECDSASecp256k1=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.SignatureMap=function(){function e(e){if(this.sigPair=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.sigPair&&r.sigPair.length||(r.sigPair=[]),r.sigPair.push(s.proto.SignaturePair.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.HederaFunctionality=function(){var e={},t=Object.create(e);return t[e[0]="NONE"]=0,t[e[1]="CryptoTransfer"]=1,t[e[2]="CryptoUpdate"]=2,t[e[3]="CryptoDelete"]=3,t[e[4]="CryptoAddLiveHash"]=4,t[e[5]="CryptoDeleteLiveHash"]=5,t[e[6]="ContractCall"]=6,t[e[7]="ContractCreate"]=7,t[e[8]="ContractUpdate"]=8,t[e[9]="FileCreate"]=9,t[e[10]="FileAppend"]=10,t[e[11]="FileUpdate"]=11,t[e[12]="FileDelete"]=12,t[e[13]="CryptoGetAccountBalance"]=13,t[e[14]="CryptoGetAccountRecords"]=14,t[e[15]="CryptoGetInfo"]=15,t[e[16]="ContractCallLocal"]=16,t[e[17]="ContractGetInfo"]=17,t[e[18]="ContractGetBytecode"]=18,t[e[19]="GetBySolidityID"]=19,t[e[20]="GetByKey"]=20,t[e[21]="CryptoGetLiveHash"]=21,t[e[22]="CryptoGetStakers"]=22,t[e[23]="FileGetContents"]=23,t[e[24]="FileGetInfo"]=24,t[e[25]="TransactionGetRecord"]=25,t[e[26]="ContractGetRecords"]=26,t[e[27]="CryptoCreate"]=27,t[e[28]="SystemDelete"]=28,t[e[29]="SystemUndelete"]=29,t[e[30]="ContractDelete"]=30,t[e[31]="Freeze"]=31,t[e[32]="CreateTransactionRecord"]=32,t[e[33]="CryptoAccountAutoRenew"]=33,t[e[34]="ContractAutoRenew"]=34,t[e[35]="GetVersionInfo"]=35,t[e[36]="TransactionGetReceipt"]=36,t[e[50]="ConsensusCreateTopic"]=50,t[e[51]="ConsensusUpdateTopic"]=51,t[e[52]="ConsensusDeleteTopic"]=52,t[e[53]="ConsensusGetTopicInfo"]=53,t[e[54]="ConsensusSubmitMessage"]=54,t[e[55]="UncheckedSubmit"]=55,t[e[56]="TokenCreate"]=56,t[e[58]="TokenGetInfo"]=58,t[e[59]="TokenFreezeAccount"]=59,t[e[60]="TokenUnfreezeAccount"]=60,t[e[61]="TokenGrantKycToAccount"]=61,t[e[62]="TokenRevokeKycFromAccount"]=62,t[e[63]="TokenDelete"]=63,t[e[64]="TokenUpdate"]=64,t[e[65]="TokenMint"]=65,t[e[66]="TokenBurn"]=66,t[e[67]="TokenAccountWipe"]=67,t[e[68]="TokenAssociateToAccount"]=68,t[e[69]="TokenDissociateFromAccount"]=69,t[e[70]="ScheduleCreate"]=70,t[e[71]="ScheduleDelete"]=71,t[e[72]="ScheduleSign"]=72,t[e[73]="ScheduleGetInfo"]=73,t[e[74]="TokenGetAccountNftInfos"]=74,t[e[75]="TokenGetNftInfo"]=75,t[e[76]="TokenGetNftInfos"]=76,t[e[77]="TokenFeeScheduleUpdate"]=77,t[e[78]="NetworkGetExecutionTime"]=78,t[e[79]="TokenPause"]=79,t[e[80]="TokenUnpause"]=80,t[e[81]="CryptoApproveAllowance"]=81,t[e[82]="CryptoAdjustAllowance"]=82,t}(),n.FeeComponents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.min=e.int64();break;case 2:r.max=e.int64();break;case 3:r.constant=e.int64();break;case 4:r.bpt=e.int64();break;case 5:r.vpt=e.int64();break;case 6:r.rbh=e.int64();break;case 7:r.sbh=e.int64();break;case 8:r.gas=e.int64();break;case 9:r.tv=e.int64();break;case 10:r.bpr=e.int64();break;case 11:r.sbpr=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionFeeSchedule=function(){function e(e){if(this.fees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.hederaFunctionality=e.int32();break;case 2:r.feeData=s.proto.FeeData.decode(e,e.uint32());break;case 3:r.fees&&r.fees.length||(r.fees=[]),r.fees.push(s.proto.FeeData.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FeeData=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 2:r.networkdata=s.proto.FeeComponents.decode(e,e.uint32());break;case 3:r.servicedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 4:r.subType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FeeSchedule=function(){function e(e){if(this.transactionFeeSchedule=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFeeSchedule&&r.transactionFeeSchedule.length||(r.transactionFeeSchedule=[]),r.transactionFeeSchedule.push(s.proto.TransactionFeeSchedule.decode(e,e.uint32()));break;case 2:r.expiryTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CurrentAndNextFeeSchedule=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;case 2:r.nextFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ServiceEndpoint=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddressV4=e.bytes();break;case 2:r.port=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddress=function(){function e(e){if(this.serviceEndpoint=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddress=e.bytes();break;case 2:r.portno=e.int32();break;case 3:r.memo=e.bytes();break;case 4:r.RSA_PubKey=e.string();break;case 5:r.nodeId=e.int64();break;case 6:r.nodeAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.nodeCertHash=e.bytes();break;case 8:r.serviceEndpoint&&r.serviceEndpoint.length||(r.serviceEndpoint=[]),r.serviceEndpoint.push(s.proto.ServiceEndpoint.decode(e,e.uint32()));break;case 9:r.description=e.string();break;case 10:r.stake=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddressBook=function(){function e(e){if(this.nodeAddress=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeAddress&&r.nodeAddress.length||(r.nodeAddress=[]),r.nodeAddress.push(s.proto.NodeAddress.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SemanticVersion=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.major=e.int32();break;case 2:r.minor=e.int32();break;case 3:r.patch=e.int32();break;case 4:r.pre=e.string();break;case 5:r.build=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.Setting=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.value=e.string();break;case 3:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ServicesConfigurationList=function(){function e(e){if(this.nameValue=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nameValue&&r.nameValue.length||(r.nameValue=[]),r.nameValue.push(s.proto.Setting.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenRelationship=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.balance=e.uint64();break;case 4:r.kycStatus=e.int32();break;case 5:r.freezeStatus=e.int32();break;case 6:r.decimals=e.uint32();break;case 7:r.automaticAssociation=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;case 3:r.decimals=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalances=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenAssociation=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAllowance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NftAllowance=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.Timestamp=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;case 2:r.nanos=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.TimestampSeconds=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusCreateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 3:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Duration=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusDeleteTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 5:r.topicInfo=s.proto.ConsensusTopicInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseType=function(){var e={},t=Object.create(e);return t[e[0]="ANSWER_ONLY"]=0,t[e[1]="ANSWER_STATE_PROOF"]=1,t[e[2]="COST_ANSWER"]=2,t[e[3]="COST_ANSWER_STATE_PROOF"]=3,t}(),n.QueryHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.payment=s.proto.Transaction.decode(e,e.uint32());break;case 2:r.responseType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.Transaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.body=s.proto.TransactionBody.decode(e,e.uint32());break;case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;case 3:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;case 4:r.bodyBytes=e.bytes();break;case 5:r.signedTransactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.nodeAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transactionFee=e.uint64();break;case 4:r.transactionValidDuration=s.proto.Duration.decode(e,e.uint32());break;case 5:r.generateRecord=e.bool();break;case 6:r.memo=e.string();break;case 7:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 8:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 9:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 22:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoAddLiveHash=s.proto.CryptoAddLiveHashTransactionBody.decode(e,e.uint32());break;case 48:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 49:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 11:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 12:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 13:r.cryptoDeleteLiveHash=s.proto.CryptoDeleteLiveHashTransactionBody.decode(e,e.uint32());break;case 14:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 15:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 16:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 17:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 18:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 19:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 20:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 21:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 23:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 24:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 25:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 26:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 27:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 28:r.uncheckedSubmit=s.proto.UncheckedSubmitBody.decode(e,e.uint32());break;case 29:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 31:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 33:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 34:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 35:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 37:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 38:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 39:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 40:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 41:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 45:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 46:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 47:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 42:r.scheduleCreate=s.proto.ScheduleCreateTransactionBody.decode(e,e.uint32());break;case 43:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;case 44:r.scheduleSign=s.proto.ScheduleSignTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemUndeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FreezeTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.startHour=e.int32();break;case 2:r.startMin=e.int32();break;case 3:r.endHour=e.int32();break;case 4:r.endMin=e.int32();break;case 5:r.updateFile=s.proto.FileID.decode(e,e.uint32());break;case 6:r.fileHash=e.bytes();break;case 7:r.startTime=s.proto.Timestamp.decode(e,e.uint32());break;case 8:r.freezeType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FreezeType=function(){var e={},t=Object.create(e);return t[e[0]="UNKNOWN_FREEZE_TYPE"]=0,t[e[1]="FREEZE_ONLY"]=1,t[e[2]="PREPARE_UPGRADE"]=2,t[e[3]="FREEZE_UPGRADE"]=3,t[e[4]="FREEZE_ABORT"]=4,t[e[5]="TELEMETRY_UPGRADE"]=5,t}(),n.ContractCallTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.gas=e.int64();break;case 3:r.amount=e.int64();break;case 4:r.functionParameters=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.gas=e.int64();break;case 5:r.initialBalance=e.int64();break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.constructorParameters=e.bytes();break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.ContractUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 9:r.memo=e.string();break;case 10:r.memoWrapper=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.LiveHash=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hash=e.bytes();break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 5:r.duration=s.proto.Duration.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAddLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 3:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.key=s.proto.Key.decode(e,e.uint32());break;case 2:r.initialBalance=e.uint64();break;case 3:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.sendRecordThreshold=e.uint64();break;case 7:r.receiveRecordThreshold=e.uint64();break;case 8:r.receiverSigRequired=e.bool();break;case 9:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;case 14:r.maxAutomaticTokenAssociations=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.deleteAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountOfLiveHash=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHashToDelete=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoTransferTransactionBody=function(){function e(e){if(this.tokenTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transfers=s.proto.TransferList.decode(e,e.uint32());break;case 2:r.tokenTransfers&&r.tokenTransfers.length||(r.tokenTransfers=[]),r.tokenTransfers.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.accountIDToUpdate=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.key=s.proto.Key.decode(e,e.uint32());break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.proxyFraction=e.int32();break;case 6:r.sendRecordThreshold=e.uint64();break;case 11:r.sendRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 7:r.receiveRecordThreshold=e.uint64();break;case 12:r.receiveRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 10:r.receiverSigRequired=e.bool();break;case 13:r.receiverSigRequiredWrapper=s.google.protobuf.BoolValue.decode(e,e.uint32());break;case 14:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 15:r.maxAutomaticTokenAssociations=s.google.protobuf.Int32Value.decode(e,e.uint32());break;case 16:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoApproveAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAdjustAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FileAppendTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 6:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 7:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.FileDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transferContractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusUpdateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusMessageChunkInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.initialTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.total=e.int32();break;case 3:r.number=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusSubmitMessageTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.UncheckedSubmitBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenCreateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.symbol=e.string();break;case 3:r.decimals=e.uint32();break;case 4:r.initialSupply=e.uint64();break;case 5:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.freezeDefault=e.bool();break;case 13:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 14:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 15:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 16:r.memo=e.string();break;case 17:r.tokenType=e.int32();break;case 18:r.supplyType=e.int32();break;case 19:r.maxSupply=e.int64();break;case 20:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 21:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 22:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FractionalFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fractionalAmount=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.minimumAmount=e.int64();break;case 3:r.maximumAmount=e.int64();break;case 4:r.netOfTransfers=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.FixedFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.denominatingTokenId=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.RoyaltyFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.exchangeValueFraction=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.fallbackFee=s.proto.FixedFee.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CustomFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fixedFee=s.proto.FixedFee.decode(e,e.uint32());break;case 2:r.fractionalFee=s.proto.FractionalFee.decode(e,e.uint32());break;case 4:r.royaltyFee=s.proto.RoyaltyFee.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.AssessedCustomFee=function(){function e(e){if(this.effectivePayerAccountId=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.effectivePayerAccountId&&r.effectivePayerAccountId.length||(r.effectivePayerAccountId=[]),r.effectivePayerAccountId.push(s.proto.AccountID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnfreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGrantKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenRevokeKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.name=e.string();break;case 4:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 12:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 14:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 15:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenMintTransactionBody=function(){function e(e){if(this.metadata=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:r.metadata&&r.metadata.length||(r.metadata=[]),r.metadata.push(e.bytes());break;default:e.skipType(7&o)}}return r},e}(),n.TokenBurnTransactionBody=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.uint64();break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenDissociateTransactionBody=function(){function e(e){if(this.tokens=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFeeScheduleUpdateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenPauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnpauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 2:r.memo=e.string();break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SchedulableTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFee=e.uint64();break;case 2:r.memo=e.string();break;case 3:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 4:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 5:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 6:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 37:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 38:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 7:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 8:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 9:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 11:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 12:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 13:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 14:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 15:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 16:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 17:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 18:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 19:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 20:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 21:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 22:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 23:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 24:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 25:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 26:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 27:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 28:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 29:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 30:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 31:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 33:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 39:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 35:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 34:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleSignTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.responseType=e.int32();break;case 3:r.cost=e.uint64();break;case 4:r.stateProof=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.cost=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ResponseCodeEnum=function(){var e={},t=Object.create(e);return t[e[0]="OK"]=0,t[e[1]="INVALID_TRANSACTION"]=1,t[e[2]="PAYER_ACCOUNT_NOT_FOUND"]=2,t[e[3]="INVALID_NODE_ACCOUNT"]=3,t[e[4]="TRANSACTION_EXPIRED"]=4,t[e[5]="INVALID_TRANSACTION_START"]=5,t[e[6]="INVALID_TRANSACTION_DURATION"]=6,t[e[7]="INVALID_SIGNATURE"]=7,t[e[8]="MEMO_TOO_LONG"]=8,t[e[9]="INSUFFICIENT_TX_FEE"]=9,t[e[10]="INSUFFICIENT_PAYER_BALANCE"]=10,t[e[11]="DUPLICATE_TRANSACTION"]=11,t[e[12]="BUSY"]=12,t[e[13]="NOT_SUPPORTED"]=13,t[e[14]="INVALID_FILE_ID"]=14,t[e[15]="INVALID_ACCOUNT_ID"]=15,t[e[16]="INVALID_CONTRACT_ID"]=16,t[e[17]="INVALID_TRANSACTION_ID"]=17,t[e[18]="RECEIPT_NOT_FOUND"]=18,t[e[19]="RECORD_NOT_FOUND"]=19,t[e[20]="INVALID_SOLIDITY_ID"]=20,t[e[21]="UNKNOWN"]=21,t[e[22]="SUCCESS"]=22,t[e[23]="FAIL_INVALID"]=23,t[e[24]="FAIL_FEE"]=24,t[e[25]="FAIL_BALANCE"]=25,t[e[26]="KEY_REQUIRED"]=26,t[e[27]="BAD_ENCODING"]=27,t[e[28]="INSUFFICIENT_ACCOUNT_BALANCE"]=28,t[e[29]="INVALID_SOLIDITY_ADDRESS"]=29,t[e[30]="INSUFFICIENT_GAS"]=30,t[e[31]="CONTRACT_SIZE_LIMIT_EXCEEDED"]=31,t[e[32]="LOCAL_CALL_MODIFICATION_EXCEPTION"]=32,t[e[33]="CONTRACT_REVERT_EXECUTED"]=33,t[e[34]="CONTRACT_EXECUTION_EXCEPTION"]=34,t[e[35]="INVALID_RECEIVING_NODE_ACCOUNT"]=35,t[e[36]="MISSING_QUERY_HEADER"]=36,t[e[37]="ACCOUNT_UPDATE_FAILED"]=37,t[e[38]="INVALID_KEY_ENCODING"]=38,t[e[39]="NULL_SOLIDITY_ADDRESS"]=39,t[e[40]="CONTRACT_UPDATE_FAILED"]=40,t[e[41]="INVALID_QUERY_HEADER"]=41,t[e[42]="INVALID_FEE_SUBMITTED"]=42,t[e[43]="INVALID_PAYER_SIGNATURE"]=43,t[e[44]="KEY_NOT_PROVIDED"]=44,t[e[45]="INVALID_EXPIRATION_TIME"]=45,t[e[46]="NO_WACL_KEY"]=46,t[e[47]="FILE_CONTENT_EMPTY"]=47,t[e[48]="INVALID_ACCOUNT_AMOUNTS"]=48,t[e[49]="EMPTY_TRANSACTION_BODY"]=49,t[e[50]="INVALID_TRANSACTION_BODY"]=50,t[e[51]="INVALID_SIGNATURE_TYPE_MISMATCHING_KEY"]=51,t[e[52]="INVALID_SIGNATURE_COUNT_MISMATCHING_KEY"]=52,t[e[53]="EMPTY_LIVE_HASH_BODY"]=53,t[e[54]="EMPTY_LIVE_HASH"]=54,t[e[55]="EMPTY_LIVE_HASH_KEYS"]=55,t[e[56]="INVALID_LIVE_HASH_SIZE"]=56,t[e[57]="EMPTY_QUERY_BODY"]=57,t[e[58]="EMPTY_LIVE_HASH_QUERY"]=58,t[e[59]="LIVE_HASH_NOT_FOUND"]=59,t[e[60]="ACCOUNT_ID_DOES_NOT_EXIST"]=60,t[e[61]="LIVE_HASH_ALREADY_EXISTS"]=61,t[e[62]="INVALID_FILE_WACL"]=62,t[e[63]="SERIALIZATION_FAILED"]=63,t[e[64]="TRANSACTION_OVERSIZE"]=64,t[e[65]="TRANSACTION_TOO_MANY_LAYERS"]=65,t[e[66]="CONTRACT_DELETED"]=66,t[e[67]="PLATFORM_NOT_ACTIVE"]=67,t[e[68]="KEY_PREFIX_MISMATCH"]=68,t[e[69]="PLATFORM_TRANSACTION_NOT_CREATED"]=69,t[e[70]="INVALID_RENEWAL_PERIOD"]=70,t[e[71]="INVALID_PAYER_ACCOUNT_ID"]=71,t[e[72]="ACCOUNT_DELETED"]=72,t[e[73]="FILE_DELETED"]=73,t[e[74]="ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS"]=74,t[e[75]="SETTING_NEGATIVE_ACCOUNT_BALANCE"]=75,t[e[76]="OBTAINER_REQUIRED"]=76,t[e[77]="OBTAINER_SAME_CONTRACT_ID"]=77,t[e[78]="OBTAINER_DOES_NOT_EXIST"]=78,t[e[79]="MODIFYING_IMMUTABLE_CONTRACT"]=79,t[e[80]="FILE_SYSTEM_EXCEPTION"]=80,t[e[81]="AUTORENEW_DURATION_NOT_IN_RANGE"]=81,t[e[82]="ERROR_DECODING_BYTESTRING"]=82,t[e[83]="CONTRACT_FILE_EMPTY"]=83,t[e[84]="CONTRACT_BYTECODE_EMPTY"]=84,t[e[85]="INVALID_INITIAL_BALANCE"]=85,t[e[86]="INVALID_RECEIVE_RECORD_THRESHOLD"]=86,t[e[87]="INVALID_SEND_RECORD_THRESHOLD"]=87,t[e[88]="ACCOUNT_IS_NOT_GENESIS_ACCOUNT"]=88,t[e[89]="PAYER_ACCOUNT_UNAUTHORIZED"]=89,t[e[90]="INVALID_FREEZE_TRANSACTION_BODY"]=90,t[e[91]="FREEZE_TRANSACTION_BODY_NOT_FOUND"]=91,t[e[92]="TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=92,t[e[93]="RESULT_SIZE_LIMIT_EXCEEDED"]=93,t[e[94]="NOT_SPECIAL_ACCOUNT"]=94,t[e[95]="CONTRACT_NEGATIVE_GAS"]=95,t[e[96]="CONTRACT_NEGATIVE_VALUE"]=96,t[e[97]="INVALID_FEE_FILE"]=97,t[e[98]="INVALID_EXCHANGE_RATE_FILE"]=98,t[e[99]="INSUFFICIENT_LOCAL_CALL_GAS"]=99,t[e[100]="ENTITY_NOT_ALLOWED_TO_DELETE"]=100,t[e[101]="AUTHORIZATION_FAILED"]=101,t[e[102]="FILE_UPLOADED_PROTO_INVALID"]=102,t[e[103]="FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK"]=103,t[e[104]="FEE_SCHEDULE_FILE_PART_UPLOADED"]=104,t[e[105]="EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED"]=105,t[e[106]="MAX_CONTRACT_STORAGE_EXCEEDED"]=106,t[e[107]="TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT"]=107,t[e[108]="TOTAL_LEDGER_BALANCE_INVALID"]=108,t[e[110]="EXPIRATION_REDUCTION_NOT_ALLOWED"]=110,t[e[111]="MAX_GAS_LIMIT_EXCEEDED"]=111,t[e[112]="MAX_FILE_SIZE_EXCEEDED"]=112,t[e[113]="RECEIVER_SIG_REQUIRED"]=113,t[e[150]="INVALID_TOPIC_ID"]=150,t[e[155]="INVALID_ADMIN_KEY"]=155,t[e[156]="INVALID_SUBMIT_KEY"]=156,t[e[157]="UNAUTHORIZED"]=157,t[e[158]="INVALID_TOPIC_MESSAGE"]=158,t[e[159]="INVALID_AUTORENEW_ACCOUNT"]=159,t[e[160]="AUTORENEW_ACCOUNT_NOT_ALLOWED"]=160,t[e[162]="TOPIC_EXPIRED"]=162,t[e[163]="INVALID_CHUNK_NUMBER"]=163,t[e[164]="INVALID_CHUNK_TRANSACTION_ID"]=164,t[e[165]="ACCOUNT_FROZEN_FOR_TOKEN"]=165,t[e[166]="TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED"]=166,t[e[167]="INVALID_TOKEN_ID"]=167,t[e[168]="INVALID_TOKEN_DECIMALS"]=168,t[e[169]="INVALID_TOKEN_INITIAL_SUPPLY"]=169,t[e[170]="INVALID_TREASURY_ACCOUNT_FOR_TOKEN"]=170,t[e[171]="INVALID_TOKEN_SYMBOL"]=171,t[e[172]="TOKEN_HAS_NO_FREEZE_KEY"]=172,t[e[173]="TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN"]=173,t[e[174]="MISSING_TOKEN_SYMBOL"]=174,t[e[175]="TOKEN_SYMBOL_TOO_LONG"]=175,t[e[176]="ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN"]=176,t[e[177]="TOKEN_HAS_NO_KYC_KEY"]=177,t[e[178]="INSUFFICIENT_TOKEN_BALANCE"]=178,t[e[179]="TOKEN_WAS_DELETED"]=179,t[e[180]="TOKEN_HAS_NO_SUPPLY_KEY"]=180,t[e[181]="TOKEN_HAS_NO_WIPE_KEY"]=181,t[e[182]="INVALID_TOKEN_MINT_AMOUNT"]=182,t[e[183]="INVALID_TOKEN_BURN_AMOUNT"]=183,t[e[184]="TOKEN_NOT_ASSOCIATED_TO_ACCOUNT"]=184,t[e[185]="CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT"]=185,t[e[186]="INVALID_KYC_KEY"]=186,t[e[187]="INVALID_WIPE_KEY"]=187,t[e[188]="INVALID_FREEZE_KEY"]=188,t[e[189]="INVALID_SUPPLY_KEY"]=189,t[e[190]="MISSING_TOKEN_NAME"]=190,t[e[191]="TOKEN_NAME_TOO_LONG"]=191,t[e[192]="INVALID_WIPING_AMOUNT"]=192,t[e[193]="TOKEN_IS_IMMUTABLE"]=193,t[e[194]="TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT"]=194,t[e[195]="TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES"]=195,t[e[196]="ACCOUNT_IS_TREASURY"]=196,t[e[197]="TOKEN_ID_REPEATED_IN_TOKEN_LIST"]=197,t[e[198]="TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=198,t[e[199]="EMPTY_TOKEN_TRANSFER_BODY"]=199,t[e[200]="EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS"]=200,t[e[201]="INVALID_SCHEDULE_ID"]=201,t[e[202]="SCHEDULE_IS_IMMUTABLE"]=202,t[e[203]="INVALID_SCHEDULE_PAYER_ID"]=203,t[e[204]="INVALID_SCHEDULE_ACCOUNT_ID"]=204,t[e[205]="NO_NEW_VALID_SIGNATURES"]=205,t[e[206]="UNRESOLVABLE_REQUIRED_SIGNERS"]=206,t[e[207]="SCHEDULED_TRANSACTION_NOT_IN_WHITELIST"]=207,t[e[208]="SOME_SIGNATURES_WERE_INVALID"]=208,t[e[209]="TRANSACTION_ID_FIELD_NOT_ALLOWED"]=209,t[e[210]="IDENTICAL_SCHEDULE_ALREADY_CREATED"]=210,t[e[211]="INVALID_ZERO_BYTE_IN_STRING"]=211,t[e[212]="SCHEDULE_ALREADY_DELETED"]=212,t[e[213]="SCHEDULE_ALREADY_EXECUTED"]=213,t[e[214]="MESSAGE_SIZE_TOO_LARGE"]=214,t[e[215]="OPERATION_REPEATED_IN_BUCKET_GROUPS"]=215,t[e[216]="BUCKET_CAPACITY_OVERFLOW"]=216,t[e[217]="NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION"]=217,t[e[218]="BUCKET_HAS_NO_THROTTLE_GROUPS"]=218,t[e[219]="THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC"]=219,t[e[220]="SUCCESS_BUT_MISSING_EXPECTED_OPERATION"]=220,t[e[221]="UNPARSEABLE_THROTTLE_DEFINITIONS"]=221,t[e[222]="INVALID_THROTTLE_DEFINITIONS"]=222,t[e[223]="ACCOUNT_EXPIRED_AND_PENDING_REMOVAL"]=223,t[e[224]="INVALID_TOKEN_MAX_SUPPLY"]=224,t[e[225]="INVALID_TOKEN_NFT_SERIAL_NUMBER"]=225,t[e[226]="INVALID_NFT_ID"]=226,t[e[227]="METADATA_TOO_LONG"]=227,t[e[228]="BATCH_SIZE_LIMIT_EXCEEDED"]=228,t[e[229]="INVALID_QUERY_RANGE"]=229,t[e[230]="FRACTION_DIVIDES_BY_ZERO"]=230,t[e[231]="INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE"]=231,t[e[232]="CUSTOM_FEES_LIST_TOO_LONG"]=232,t[e[233]="INVALID_CUSTOM_FEE_COLLECTOR"]=233,t[e[234]="INVALID_TOKEN_ID_IN_CUSTOM_FEES"]=234,t[e[235]="TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR"]=235,t[e[236]="TOKEN_MAX_SUPPLY_REACHED"]=236,t[e[237]="SENDER_DOES_NOT_OWN_NFT_SERIAL_NO"]=237,t[e[238]="CUSTOM_FEE_NOT_FULLY_SPECIFIED"]=238,t[e[239]="CUSTOM_FEE_MUST_BE_POSITIVE"]=239,t[e[240]="TOKEN_HAS_NO_FEE_SCHEDULE_KEY"]=240,t[e[241]="CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE"]=241,t[e[242]="ROYALTY_FRACTION_CANNOT_EXCEED_ONE"]=242,t[e[243]="FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT"]=243,t[e[244]="CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES"]=244,t[e[245]="CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON"]=245,t[e[246]="CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=246,t[e[247]="INVALID_CUSTOM_FEE_SCHEDULE_KEY"]=247,t[e[248]="INVALID_TOKEN_MINT_METADATA"]=248,t[e[249]="INVALID_TOKEN_BURN_METADATA"]=249,t[e[250]="CURRENT_TREASURY_STILL_OWNS_NFTS"]=250,t[e[251]="ACCOUNT_STILL_OWNS_NFTS"]=251,t[e[252]="TREASURY_MUST_OWN_BURNED_NFT"]=252,t[e[253]="ACCOUNT_DOES_NOT_OWN_WIPED_NFT"]=253,t[e[254]="ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=254,t[e[255]="MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED"]=255,t[e[256]="PAYER_ACCOUNT_DELETED"]=256,t[e[257]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH"]=257,t[e[258]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS"]=258,t[e[259]="INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE"]=259,t[e[260]="SERIAL_NUMBER_LIMIT_REACHED"]=260,t[e[261]="CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE"]=261,t[e[262]="NO_REMAINING_AUTOMATIC_ASSOCIATIONS"]=262,t[e[263]="EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT"]=263,t[e[264]="REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT"]=264,t[e[265]="TOKEN_IS_PAUSED"]=265,t[e[266]="TOKEN_HAS_NO_PAUSE_KEY"]=266,t[e[267]="INVALID_PAUSE_KEY"]=267,t[e[268]="FREEZE_UPDATE_FILE_DOES_NOT_EXIST"]=268,t[e[269]="FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH"]=269,t[e[270]="NO_UPGRADE_HAS_BEEN_PREPARED"]=270,t[e[271]="NO_FREEZE_IS_SCHEDULED"]=271,t[e[272]="UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE"]=272,t[e[273]="FREEZE_START_TIME_MUST_BE_FUTURE"]=273,t[e[274]="PREPARED_UPDATE_FILE_IS_IMMUTABLE"]=274,t[e[275]="FREEZE_ALREADY_SCHEDULED"]=275,t[e[276]="FREEZE_UPGRADE_IN_PROGRESS"]=276,t[e[277]="UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED"]=277,t[e[278]="UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED"]=278,t[e[279]="CONSENSUS_GAS_EXHAUSTED"]=279,t[e[280]="REVERTED_SUCCESS"]=280,t[e[281]="MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED"]=281,t[e[282]="INVALID_ALIAS_KEY"]=282,t[e[283]="UNEXPECTED_TOKEN_DECIMALS"]=283,t[e[284]="INVALID_PROXY_ACCOUNT_ID"]=284,t[e[285]="INVALID_TRANSFER_ACCOUNT_ID"]=285,t[e[286]="INVALID_FEE_COLLECTOR_ACCOUNT_ID"]=286,t[e[287]="ALIAS_IS_IMMUTABLE"]=287,t[e[288]="SPENDER_ACCOUNT_SAME_AS_OWNER"]=288,t[e[289]="AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY"]=289,t[e[290]="NEGATIVE_ALLOWANCE_AMOUNT"]=290,t[e[291]="CANNOT_APPROVE_FOR_ALL_FUNGIBLE_COMMON"]=291,t[e[292]="SPENDER_DOES_NOT_HAVE_ALLOWANCE"]=292,t[e[293]="AMOUNT_EXCEEDS_ALLOWANCE"]=293,t[e[294]="MAX_ALLOWANCES_EXCEEDED"]=294,t[e[295]="EMPTY_ALLOWANCES"]=295,t[e[296]="SPENDER_ACCOUNT_REPEATED_IN_ALLOWANCES"]=296,t[e[297]="REPEATED_SERIAL_NUMS_IN_NFT_ALLOWANCES"]=297,t[e[298]="FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES"]=298,t[e[299]="NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES"]=299,t[e[300]="PAYER_AND_OWNER_NOT_EQUAL"]=300,t}(),n.ConsensusTopicInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.runningHash=e.bytes();break;case 3:r.sequenceNumber=e.uint64();break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 9:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createTopic"}),Object.defineProperty(e.prototype.updateTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTopic"}),Object.defineProperty(e.prototype.deleteTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteTopic"}),Object.defineProperty(e.prototype.getTopicInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTopicInfo"}),Object.defineProperty(e.prototype.submitMessage=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"submitMessage"}),e}(),n.Query=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyQuery.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDQuery.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalQuery.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoQuery.decode(e,e.uint32());break;case 5:r.contractGetBytecode=s.proto.ContractGetBytecodeQuery.decode(e,e.uint32());break;case 6:r.ContractGetRecords=s.proto.ContractGetRecordsQuery.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceQuery.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsQuery.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoQuery.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashQuery.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersQuery.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsQuery.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoQuery.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptQuery.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordQuery.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordQuery.decode(e,e.uint32());break;case 50:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoQuery.decode(e,e.uint32());break;case 51:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoQuery.decode(e,e.uint32());break;case 52:r.tokenGetInfo=s.proto.TokenGetInfoQuery.decode(e,e.uint32());break;case 53:r.scheduleGetInfo=s.proto.ScheduleGetInfoQuery.decode(e,e.uint32());break;case 54:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosQuery.decode(e,e.uint32());break;case 55:r.tokenGetNftInfo=s.proto.TokenGetNftInfoQuery.decode(e,e.uint32());break;case 56:r.tokenGetNftInfos=s.proto.TokenGetNftInfosQuery.decode(e,e.uint32());break;case 57:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeQuery.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.key=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.EntityID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyResponse=function(){function e(e){if(this.entities=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.entities&&r.entities.length||(r.entities=[]),r.entities.push(s.proto.EntityID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.solidityID=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractLoginfo=function(){function e(e){if(this.topic=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.bloom=e.bytes();break;case 3:r.topic&&r.topic.length||(r.topic=[]),r.topic.push(e.bytes());break;case 4:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractFunctionResult=function(){function e(e){if(this.logInfo=[],this.createdContractIDs=[],this.stateChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.contractCallResult=e.bytes();break;case 3:r.errorMessage=e.string();break;case 4:r.bloom=e.bytes();break;case 5:r.gasUsed=e.uint64();break;case 6:r.logInfo&&r.logInfo.length||(r.logInfo=[]),r.logInfo.push(s.proto.ContractLoginfo.decode(e,e.uint32()));break;case 7:r.createdContractIDs&&r.createdContractIDs.length||(r.createdContractIDs=[]),r.createdContractIDs.push(s.proto.ContractID.decode(e,e.uint32()));break;case 8:r.stateChanges&&r.stateChanges.length||(r.stateChanges=[]),r.stateChanges.push(s.proto.ContractStateChange.decode(e,e.uint32()));break;case 9:r.evmAddress=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.gas=e.int64();break;case 4:r.functionParameters=e.bytes();break;case 5:r.maxResultSize=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.functionResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractStateChange=function(){function e(e){if(this.storageChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.storageChanges&&r.storageChanges.length||(r.storageChanges=[]),r.storageChanges.push(s.proto.StorageChange.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.StorageChange=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.slot=e.bytes();break;case 2:r.valueRead=e.bytes();break;case 3:r.valueWritten=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractInfo=s.proto.ContractGetInfoResponse.ContractInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.ContractInfo=function(){function e(e){if(this.tokenRelationships=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractAccountID=e.string();break;case 4:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 5:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.storage=e.int64();break;case 8:r.memo=e.string();break;case 9:r.balance=e.uint64();break;case 10:r.deleted=e.bool();break;case 11:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.ContractGetBytecodeQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetBytecodeResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 6:r.bytecode=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionRecord=function(){function e(e){if(this.tokenTransferLists=[],this.assessedCustomFees=[],this.automaticTokenAssociations=[],this.cryptoAdjustments=[],this.nftAdjustments=[],this.tokenAdjustments=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 2:r.transactionHash=e.bytes();break;case 3:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 5:r.memo=e.string();break;case 6:r.transactionFee=e.uint64();break;case 7:r.contractCallResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 8:r.contractCreateResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 10:r.transferList=s.proto.TransferList.decode(e,e.uint32());break;case 11:r.tokenTransferLists&&r.tokenTransferLists.length||(r.tokenTransferLists=[]),r.tokenTransferLists.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;case 12:r.scheduleRef=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.assessedCustomFees&&r.assessedCustomFees.length||(r.assessedCustomFees=[]),r.assessedCustomFees.push(s.proto.AssessedCustomFee.decode(e,e.uint32()));break;case 14:r.automaticTokenAssociations&&r.automaticTokenAssociations.length||(r.automaticTokenAssociations=[]),r.automaticTokenAssociations.push(s.proto.TokenAssociation.decode(e,e.uint32()));break;case 15:r.parentConsensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 16:r.alias=e.bytes();break;case 17:r.cryptoAdjustments&&r.cryptoAdjustments.length||(r.cryptoAdjustments=[]),r.cryptoAdjustments.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 18:r.nftAdjustments&&r.nftAdjustments.length||(r.nftAdjustments=[]),r.nftAdjustments.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 19:r.tokenAdjustments&&r.tokenAdjustments.length||(r.tokenAdjustments=[]),r.tokenAdjustments.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionReceipt=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.status=e.int32();break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 5:r.exchangeRate=s.proto.ExchangeRateSet.decode(e,e.uint32());break;case 6:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 7:r.topicSequenceNumber=e.uint64();break;case 8:r.topicRunningHash=e.bytes();break;case 9:r.topicRunningHashVersion=e.uint64();break;case 10:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 11:r.newTotalSupply=e.uint64();break;case 12:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 14:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.hbarEquiv=e.int32();break;case 2:r.centEquiv=e.int32();break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ExchangeRateSet=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentRate=s.proto.ExchangeRate.decode(e,e.uint32());break;case 2:r.nextRate=s.proto.ExchangeRate.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceResponse=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.balance=e.uint64();break;case 4:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountInfo=s.proto.CryptoGetInfoResponse.AccountInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.AccountInfo=function(){function e(e){if(this.liveHashes=[],this.tokenRelationships=[],this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.contractAccountID=e.string();break;case 3:r.deleted=e.bool();break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.proxyReceived=e.int64();break;case 7:r.key=s.proto.Key.decode(e,e.uint32());break;case 8:r.balance=e.uint64();break;case 9:r.generateSendRecordThreshold=e.uint64();break;case 10:r.generateReceiveRecordThreshold=e.uint64();break;case 11:r.receiverSigRequired=e.bool();break;case 12:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 14:r.liveHashes&&r.liveHashes.length||(r.liveHashes=[]),r.liveHashes.push(s.proto.LiveHash.decode(e,e.uint32()));break;case 15:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 16:r.memo=e.string();break;case 17:r.ownedNfts=e.int64();break;case 18:r.maxAutomaticTokenAssociations=e.int32();break;case 19:r.alias=e.bytes();break;case 20:r.ledgerId=e.bytes();break;case 21:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 22:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 23:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),e}(),n.CryptoGetLiveHashQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.hash=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetLiveHashResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ProxyStaker=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AllProxyStakers=function(){function e(e){if(this.proxyStaker=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.proxyStaker&&r.proxyStaker.length||(r.proxyStaker=[]),r.proxyStaker.push(s.proto.ProxyStaker.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.stakers=s.proto.AllProxyStakers.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileContents=s.proto.FileGetContentsResponse.FileContents.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileContents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.FileGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileInfo=s.proto.FileGetInfoResponse.FileInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.size=e.int64();break;case 3:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.deleted=e.bool();break;case 5:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.TransactionGetReceiptQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildReceipts=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetReceiptResponse=function(){function e(e){if(this.duplicateTransactionReceipts=[],this.childTransactionReceipts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 4:r.duplicateTransactionReceipts&&r.duplicateTransactionReceipts.length||(r.duplicateTransactionReceipts=[]),r.duplicateTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;case 5:r.childTransactionReceipts&&r.childTransactionReceipts.length||(r.childTransactionReceipts=[]),r.childTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildRecords=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordResponse=function(){function e(e){if(this.duplicateTransactionRecords=[],this.childTransactionRecords=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;case 4:r.duplicateTransactionRecords&&r.duplicateTransactionRecords.length||(r.duplicateTransactionRecords=[]),r.duplicateTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;case 5:r.childTransactionRecords&&r.childTransactionRecords.length||(r.childTransactionRecords=[]),r.childTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.hapiProtoVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;case 3:r.hederaServicesVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeQuery=function(){function e(e){if(this.transactionIds=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionIds&&r.transactionIds.length||(r.transactionIds=[]),r.transactionIds.push(s.proto.TransactionID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeResponse=function(){function e(e){if(this.executionTimes=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:if(r.executionTimes&&r.executionTimes.length||(r.executionTimes=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenInfo=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.name=e.string();break;case 3:r.symbol=e.string();break;case 4:r.decimals=e.uint32();break;case 5:r.totalSupply=e.uint64();break;case 6:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 12:r.defaultFreezeStatus=e.int32();break;case 13:r.defaultKycStatus=e.int32();break;case 14:r.deleted=e.bool();break;case 15:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 16:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 17:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 18:r.memo=e.string();break;case 19:r.tokenType=e.int32();break;case 20:r.supplyType=e.int32();break;case 21:r.maxSupply=e.int64();break;case 22:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 23:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 24:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;case 25:r.pauseStatus=e.int32();break;case 26:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenInfo=s.proto.TokenInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 2:r.deletionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.executionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.signers=s.proto.KeyList.decode(e,e.uint32());break;case 9:r.creatorAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 10:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.scheduleInfo=s.proto.ScheduleInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.serialNumber=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.nftID=s.proto.NftID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenNftInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nftID=s.proto.NftID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.creationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.metadata=e.bytes();break;case 5:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nft=s.proto.TokenNftInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Response=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyResponse.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDResponse.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalResponse.decode(e,e.uint32());break;case 5:r.contractGetBytecodeResponse=s.proto.ContractGetBytecodeResponse.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoResponse.decode(e,e.uint32());break;case 6:r.contractGetRecordsResponse=s.proto.ContractGetRecordsResponse.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceResponse.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsResponse.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoResponse.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashResponse.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersResponse.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsResponse.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoResponse.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptResponse.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordResponse.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordResponse.decode(e,e.uint32());break;case 150:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoResponse.decode(e,e.uint32());break;case 151:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoResponse.decode(e,e.uint32());break;case 152:r.tokenGetInfo=s.proto.TokenGetInfoResponse.decode(e,e.uint32());break;case 153:r.scheduleGetInfo=s.proto.ScheduleGetInfoResponse.decode(e,e.uint32());break;case 154:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosResponse.decode(e,e.uint32());break;case 155:r.tokenGetNftInfo=s.proto.TokenGetNftInfoResponse.decode(e,e.uint32());break;case 156:r.tokenGetNftInfos=s.proto.TokenGetNftInfosResponse.decode(e,e.uint32());break;case 157:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeResponse.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createAccount"}),Object.defineProperty(e.prototype.updateAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateAccount"}),Object.defineProperty(e.prototype.cryptoTransfer=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoTransfer"}),Object.defineProperty(e.prototype.cryptoDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoDelete"}),Object.defineProperty(e.prototype.approveAllowances=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"approveAllowances"}),Object.defineProperty(e.prototype.adjustAllowance=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"adjustAllowance"}),Object.defineProperty(e.prototype.addLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"addLiveHash"}),Object.defineProperty(e.prototype.deleteLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteLiveHash"}),Object.defineProperty(e.prototype.getLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getLiveHash"}),Object.defineProperty(e.prototype.getAccountRecords=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountRecords"}),Object.defineProperty(e.prototype.cryptoGetBalance=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"cryptoGetBalance"}),Object.defineProperty(e.prototype.getAccountInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountInfo"}),Object.defineProperty(e.prototype.getTransactionReceipts=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTransactionReceipts"}),Object.defineProperty(e.prototype.getFastTransactionRecord=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFastTransactionRecord"}),Object.defineProperty(e.prototype.getTxRecordByTxID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByTxID"}),Object.defineProperty(e.prototype.getStakersByAccountID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getStakersByAccountID"}),e}(),n.FileService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createFile"}),Object.defineProperty(e.prototype.updateFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateFile"}),Object.defineProperty(e.prototype.deleteFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteFile"}),Object.defineProperty(e.prototype.appendContent=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"appendContent"}),Object.defineProperty(e.prototype.getFileContent=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileContent"}),Object.defineProperty(e.prototype.getFileInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileInfo"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.FreezeService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.freeze=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freeze"}),e}(),n.ConsensusTopicQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.consensusStartTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.consensusEndTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.limit=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusTopicResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.runningHash=e.bytes();break;case 4:r.sequenceNumber=e.uint64();break;case 5:r.runningHashVersion=e.uint64();break;case 6:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.MirrorConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.subscribeTopic=function e(t,n){return this.rpcCall(e,s.proto.ConsensusTopicQuery,s.proto.ConsensusTopicResponse,t,n)},"name",{value:"subscribeTopic"}),e}(),n.AddressBookQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileId=s.proto.FileID.decode(e,e.uint32());break;case 2:r.limit=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.MirrorNetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getNodes=function e(t,n){return this.rpcCall(e,s.proto.AddressBookQuery,s.proto.NodeAddress,t,n)},"name",{value:"getNodes"}),e}(),n.NetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getVersionInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getVersionInfo"}),Object.defineProperty(e.prototype.getExecutionTime=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getExecutionTime"}),Object.defineProperty(e.prototype.uncheckedSubmit=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"uncheckedSubmit"}),e}(),n.ScheduleService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createSchedule"}),Object.defineProperty(e.prototype.signSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"signSchedule"}),Object.defineProperty(e.prototype.deleteSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteSchedule"}),Object.defineProperty(e.prototype.getScheduleInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getScheduleInfo"}),e}(),n.SmartContractService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createContract"}),Object.defineProperty(e.prototype.updateContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateContract"}),Object.defineProperty(e.prototype.contractCallMethod=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"contractCallMethod"}),Object.defineProperty(e.prototype.getContractInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getContractInfo"}),Object.defineProperty(e.prototype.contractCallLocalMethod=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"contractCallLocalMethod"}),Object.defineProperty(e.prototype.contractGetBytecode=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"ContractGetBytecode"}),Object.defineProperty(e.prototype.getBySolidityID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getBySolidityID"}),Object.defineProperty(e.prototype.getTxRecordByContractID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByContractID"}),Object.defineProperty(e.prototype.deleteContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteContract"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.ThrottleGroup=function(){function e(e){if(this.operations=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:if(r.operations&&r.operations.length||(r.operations=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.name=e.string();break;case 2:r.burstPeriodMs=e.uint64();break;case 3:r.throttleGroups&&r.throttleGroups.length||(r.throttleGroups=[]),r.throttleGroups.push(s.proto.ThrottleGroup.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ThrottleDefinitions=function(){function e(e){if(this.throttleBuckets=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.throttleBuckets&&r.throttleBuckets.length||(r.throttleBuckets=[]),r.throttleBuckets.push(s.proto.ThrottleBucket.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createToken"}),Object.defineProperty(e.prototype.updateToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateToken"}),Object.defineProperty(e.prototype.mintToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"mintToken"}),Object.defineProperty(e.prototype.burnToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"burnToken"}),Object.defineProperty(e.prototype.deleteToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteToken"}),Object.defineProperty(e.prototype.wipeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"wipeTokenAccount"}),Object.defineProperty(e.prototype.freezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freezeTokenAccount"}),Object.defineProperty(e.prototype.unfreezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unfreezeTokenAccount"}),Object.defineProperty(e.prototype.grantKycToTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"grantKycToTokenAccount"}),Object.defineProperty(e.prototype.revokeKycFromTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"revokeKycFromTokenAccount"}),Object.defineProperty(e.prototype.associateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"associateTokens"}),Object.defineProperty(e.prototype.dissociateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"dissociateTokens"}),Object.defineProperty(e.prototype.updateTokenFeeSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTokenFeeSchedule"}),Object.defineProperty(e.prototype.getTokenInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenInfo"}),Object.defineProperty(e.prototype.getAccountNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountNftInfos"}),Object.defineProperty(e.prototype.getTokenNftInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfo"}),Object.defineProperty(e.prototype.getTokenNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfos"}),Object.defineProperty(e.prototype.pauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"pauseToken"}),Object.defineProperty(e.prototype.unpauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unpauseToken"}),e}(),n.SignedTransaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.bodyBytes=e.bytes();break;case 2:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionList=function(){function e(e){if(this.transactionList=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionList&&r.transactionList.length||(r.transactionList=[]),r.transactionList.push(s.proto.Transaction.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),n.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),n.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n}();t.proto=l;var f=s.google=function(){var e,t={};return t.protobuf=((e={}).DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),e.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),e.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),e.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),e.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),e.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),e.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),e.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),e.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e),t}();t.google=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(70)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(42)),f=r(n(404));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var p=function(e){(0,u.default)(n,e);var t=d(n);function n(e){var r;return(0,o.default)(this,n),(r=t.call(this,"gRPC service failed with status: ".concat(e.toString()))).status=e,r.name="GrpcServiceError",void 0!==Error.captureStackTrace&&Error.captureStackTrace((0,i.default)(r),n),r}return(0,a.default)(n,null,[{key:"_fromResponse",value:function(e){if(null!=e.code&&null!=e.details){var t=new n(f.default._fromValue(e.code));return t.message=e.details,t}return e}}]),n}((0,l.default)(Error));t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r){var a;return(0,o.default)(this,n),(a=t.call(this)).message="query cost of ".concat(e.toString()," HBAR exceeds max set on client: ").concat(r.toString()," HBAR"),a.name="MaxQueryPaymentExceededError",a.queryCost=e,a.maxQueryPayment=r,a}return n}((0,r(n(42)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36)),c=r(n(57)),s=r(n(772));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.storageChanges=t.storageChanges,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){var e=this.storageChanges.map((function(e){return e._toProtobuf()}));return{contractID:this.contractId._toProtobuf(),storageChanges:e}}},{key:"toBytes",value:function(){return u.ContractStateChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:c.default._fromProtobuf(t.contractID),storageChanges:(null!=t.storageChanges?t.storageChanges:[]).map((function(e){return s.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.ContractStateChange.decode(t))}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.slot=t.slot,this.valueRead=t.valueRead,this.valueWritten=t.valueWritten}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{slot:this.slot,valueRead:this.valueRead,valueWritten:null!=this.valueWritten?{value:this.valueWritten}:null}}},{key:"toBytes",value:function(){return u.StorageChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({slot:t.slot,valueRead:t.valueRead,valueWritten:null!=t.valueWritten&&null!=t.valueWritten.value?t.valueWritten.value:null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.StorageChange.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(11)),u=r(n(27)),c=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._accountId,null!=t.accountId&&this.setAccountId(t.accountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId)}return(0,a.default)(e,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?u.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){return{accountId:null!=this._accountId?this._accountId._toProtobuf():void 0,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():void 0}}}],[{key:"_fromProtobuf",value:function(t){return new e({accountId:null!=t.accountId?i.default._fromProtobuf(t.accountId):void 0,tokenId:null!=t.tokenId?u.default._fromProtobuf(t.tokenId):void 0})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=r(n(11)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(413));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var m=function(e){(0,s.default)(r,e);var t,n=y(r);function r(){return(0,u.default)(this,r),n.call(this,(function(e){return d.default.fromString(e)}))}return(0,c.default)(r,null,[{key:"_fromTransaction",value:(t=(0,i.default)(a.default.mark((function e(t){var n,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=new r,o=0;case 2:if(!(o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarApprovals=null!=r.hbarApprovals?r.hbarApprovals:[],e._tokenApprovals=null!=r.tokenApprovals?r.tokenApprovals:[],e._nftApprovals=null!=r.nftApprovals?r.nftApprovals:[],e}return(0,i.default)(n,[{key:"hbarApprovals",get:function(){return this._hbarApprovals}},{key:"addHbarAllowance",value:function(e,t){return this._requireNotFrozen(),this._hbarApprovals.push(new m.default({spenderAccountId:"string"==typeof e?f.default.fromString(e):e,amount:t instanceof y.default?t:new y.default(t),ownerAccountId:null})),this}},{key:"tokenApprovals",get:function(){return this._tokenApprovals}},{key:"addTokenAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._tokenApprovals.push(new b.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof n?h.default.fromNumber(n):n,ownerAccountId:null})),this}},{key:"addTokenNftAllowance",value:function(e,t){this._requireNotFrozen();var n,r="string"==typeof e?p.default.fromString(e):e,o="string"==typeof t?f.default.fromString(t):t,a=!1,i=g(this._nftApprovals);try{for(i.s();!(n=i.n()).done;){var u=n.value;if(0===u.tokenId.compare(r.tokenId)&&0===u.spenderAccountId.compare(o)){null!=u.serialNumbers&&u.serialNumbers.push(r.serial),a=!0;break}}}catch(e){i.e(e)}finally{i.f()}return a||this._nftApprovals.push(new v.default({tokenId:r.tokenId,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:[r.serial],ownerAccountId:null})),this}},{key:"addAllTokenNftAllowance",value:function(e,t){return this._requireNotFrozen(),this._nftApprovals.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:null,ownerAccountId:null})),this}},{key:"_validateChecksums",value:function(e){this._hbarApprovals.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenApprovals.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.approveAllowances(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoApproveAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarApprovals.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenApprovals.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftApprovals.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoApproveAllowance;return l.default._fromProtobufTransactions(new n({hbarApprovals:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),tokenApprovals:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),nftApprovals:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=I,l.TRANSACTION_REGISTRY.set("cryptoApproveAllowance",I._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(27));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(86)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(27));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(86)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(33)),f=r(n(11)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),p=r(n(63)),h=r(n(20)),y=r(n(43));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._key=null,e._initialBalance=null,e._sendRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiveRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=new p.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._accountMemo=null,e._maxAutomaticTokenAssociations=null,null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),e}return(0,i.default)(n,[{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"_validateChecksums",value:function(e){null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.createAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoCreateAccount"}},{key:"_makeTransactionData",value:function(){return{key:null!=this._key?this._key._toProtobufKey():null,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,receiveRecordThreshold:this._receiveRecordThreshold.toTinybars(),sendRecordThreshold:this._sendRecordThreshold.toTinybars(),receiverSigRequired:this._receiverSignatureRequired,memo:this._accountMemo,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?this._maxAutomaticTokenAssociations.toInt():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoCreateAccount;return d.default._fromProtobufTransactions(new n({key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,accountMemo:null!=i.memo?i.memo:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations?i.maxAutomaticTokenAssociations:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=v,d.TRANSACTION_REGISTRY.set("cryptoCreateAccount",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(11)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._transferAccountId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDelete"}},{key:"_makeTransactionData",value:function(){return{deleteAccountID:null!=this._accountId?this._accountId._toProtobuf():null,transferAccountID:null!=this._transferAccountId?this._transferAccountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDelete;return f.default._fromProtobufTransactions(new n({accountId:null!=i.deleteAccountID?l.default._fromProtobuf(i.deleteAccountID):void 0,transferAccountId:null!=i.transferAccountID?l.default._fromProtobuf(i.transferAccountID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("cryptoDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(20)),u=r(n(27)),c=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.symbol=t.symbol,this.balance=t.balance,this.isKycGranted=t.isKycGranted,this.isFrozen=t.isFrozen,this.automaticAssociation=t.automaticAssociation,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),symbol:this.symbol,balance:this.balance,kycStatus:null==this.isKycGranted?0:this.isKycGranted?1:2,freezeStatus:null==this.isFrozen?0:this.isFrozen?1:2,automaticAssociation:this.automaticAssociation}}}],[{key:"_fromProtobuf",value:function(t){var n=u.default._fromProtobuf(t.tokenId),r=null==t.kycStatus||0===t.kycStatus?null:1===t.kycStatus,o=null==t.freezeStatus||0===t.freezeStatus?null:1===t.freezeStatus;return new e({tokenId:n,symbol:t.symbol,balance:null!=t.balance?t.balance instanceof i.default?t.balance:i.default.fromValue(t.balance):i.default.ZERO,isKycGranted:r,isFrozen:o,automaticAssociation:null!=t.automaticAssociation?t.automaticAssociation:null})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),h=r(n(11)),y=r(n(416)),m=r(n(33));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e}return(0,c.default)(r,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetInfo;return Promise.resolve(y.default._fromProtobuf(r.accountInfo))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetInfo:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetInfo;return new r({accountId:null!=t.accountID?h.default._fromProtobuf(t.accountID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("cryptoGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),f=r(n(11)),d=r(n(298));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountRecords(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetAccountRecords.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetAccountRecords.records;return Promise.resolve(r.map((function(e){return d.default._fromProtobuf({transactionRecord:e})})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetAccountRecords:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetAccountRecords;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetAccountRecords",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),f=r(n(11)),d=r(n(418));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getStakersByAccountID(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetProxyStakers.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetProxyStakers.stakers;return Promise.resolve((null!=t.proxyStaker?t.proxyStaker:[]).map((function(e){return d.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetProxyStakers:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetProxyStakers;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetProxyStakers",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=k(n(22)),f=r(n(11)),d=r(n(44)),p=r(n(63)),h=r(n(20)),y=r(n(43)),m=k(n(36)),b=r(n(106));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function k(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var _=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._key=null,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=null,e._expirationTime=null,e._accountMemo=null,e._maxAutomaticTokenAssociations=null,e._aliasKey=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),null!=r.aliasKey&&e.setAliasKey(r.aliasKey),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof Date?d.default.fromDate(e):e,this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"clearAccountMemo",value:function(){return this._requireNotFrozen(),this._accountMemo=null,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"aliasKey",get:function(){return this._aliasKey}},{key:"setAliasKey",value:function(e){return this._requireNotFrozen(),this._aliasKey=e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.updateAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoUpdateAccount"}},{key:"_makeTransactionData",value:function(){return{accountIDToUpdate:null!=this._accountId?this._accountId._toProtobuf():null,key:null!=this._key?this._key._toProtobufKey():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,receiverSigRequiredWrapper:null==this._receiverSignatureRequired?null:{value:this._receiverSignatureRequired},memo:null!=this._accountMemo?{value:this._accountMemo}:null,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?{value:this._maxAutomaticTokenAssociations.toInt()}:null,alias:null!=this._key?m.Key.encode(this._key._toProtobufKey()).finish():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoUpdateAccount,u=null!=i.alias&&i.alias.length>0?y.default._fromProtobufKey(m.Key.decode(i.alias)):void 0;return u instanceof b.default||(u=void 0),l.default._fromProtobufTransactions(new n({accountId:null!=i.accountIDToUpdate?f.default._fromProtobuf(i.accountIDToUpdate):void 0,key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,expirationTime:null!=i.expirationTime?d.default._fromProtobuf(i.expirationTime):void 0,accountMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations&&null!=i.maxAutomaticTokenAssociations.value?h.default.fromNumber(i.maxAutomaticTokenAssociations.value):void 0,aliasKey:u}),e,t,r,o,a)}}]),n}(l.default);t.default=_,l.TRANSACTION_REGISTRY.set("cryptoUpdateAccount",_._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(419)),c=r(n(420)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36)),l=r(n(62)),f=n(139);function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._fileId=null,null!=t.fileId&&this.setFileId(t.fileId),this._limit=null,null!=t.limit&&this.setLimit(t.limit),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return f.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},this._addresses=[],this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0}return(0,i.default)(e,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this._limit=e,this}},{key:"setMaxAttempts",value:function(e){this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this._maxBackoff=e}},{key:"execute",value:function(e,t){var n=this;return new Promise((function(r,o){n._makeServerStreamRequest(e,r,o,t)}))}},{key:"_makeServerStreamRequest",value:function(e,t,n,r){var o=this,a=s.AddressBookQuery.encode({fileId:null!=this._fileId?this._fileId._toProtobuf():null,limit:this._limit}).finish();e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("NetworkService","getNodes",a,(function(e){o._addresses.push(u.default._fromProtobuf(s.NodeAddress.decode(e))),null!=o._limit&&o._limit>0&&(o._limit=o._limit-1)}),(function(a){var i=a instanceof Error?a.message:a.details;if(o._attempt0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._address=null,null!=t.address&&this.setAddress(t.address),this._port=null,null!=t.port&&this.setPort(t.port)}return(0,a.default)(e,[{key:"address",get:function(){return this.address}},{key:"setAddress",value:function(e){return this._address=e,this}},{key:"port",get:function(){return this._port}},{key:"setPort",value:function(e){return this._port=e,this}},{key:"_toProtobuf",value:function(){return{ipAddressV4:null!=this._address?this._address._toProtobuf():null,port:this._port}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{address:null!=this._address?this._address.toString():null,port:null!=this._port?this._port.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({address:null!=t.ipAddressV4?i.default._fromProtobuf(t.ipAddressV4):void 0,port:null!=t.port?t.port:void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(790)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._network=null,null!=t.network&&this.setNetwork(t.network),this._host=null,null!=t.host&&this.setHost(t.host)}return(0,a.default)(e,[{key:"newtork",get:function(){return this._network}},{key:"setNetwork",value:function(e){return this._network=e,this}},{key:"host",get:function(){return this._host}},{key:"setHost",value:function(e){return this._host=e,this}},{key:"_toProtobuf",value:function(){return Uint8Array.of(null!=this._network&&null!=this._network._left?this._network._left:0,null!=this._network&&null!=this._network.right?this._network.right:0,null!=this._host&&null!=this._host.left?this._host.left:0,null!=this._host&&null!=this._host.right?this._host.right:0)}},{key:"toString",value:function(){return null!=this._network&&null!=this._host?"".concat(this._network.toString(),".").concat(this._host.toString()):""}}],[{key:"_fromProtobuf",value:function(t){return new e({network:(new i.default).setLeft(t[0]).setRight(t[1]),host:(new i.default).setLeft(t[2]).setRight(t[3])})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._left=null,null!=t.left&&this.setLeft(t.left),this._right=null,null!=t.right&&this.setRight(t.right)}return(0,a.default)(e,[{key:"left",get:function(){return this._left}},{key:"setLeft",value:function(e){return this._left=e,this}},{key:"right",get:function(){return this._right}},{key:"setRight",value:function(e){return this._right=e,this}},{key:"toString",value:function(){return null!=this._left&&null!=this._right?"".concat(this._left.toString(),".").concat(this._right.toString()):""}}]),e}();t.default=i},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),f=r(n(57));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractGetBytecode(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractGetBytecodeResponse.header}},{key:"_mapResponse",value:function(e){var t=e.contractGetBytecodeResponse;return Promise.resolve(null!=t.bytecode?t.bytecode:new Uint8Array)}},{key:"_onMakeRequest",value:function(e){return{contractGetBytecode:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetBytecode;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("contractGetBytecode",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),f=r(n(57)),d=r(n(239)),p=r(n(300)),h=r(n(20));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e._gas=null,null!=r.gas&&e.setGas(r.gas),e._functionParameters=null,null!=r.functionParameters&&(r.functionParameters instanceof Uint8Array?e.setFunctionParameters(r.functionParameters):e.setFunction(r.functionParameters.name,r.functionParameters.parameters)),e._maxResultSize=null,null!=r.maxResultSize&&e.setMaxResultSize(r.maxResultSize),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._functionParameters=(null!=t?t:new d.default)._build(e),this}},{key:"setMaxResultSize",value:function(e){return this._maxResultSize=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallLocalMethod(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractCallLocal.header}},{key:"_mapResponse",value:function(e){var t=e.contractCallLocal;return Promise.resolve(p.default._fromProtobuf(t.functionResult))}},{key:"_onMakeRequest",value:function(e){return{contractCallLocal:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,maxResultSize:this._maxResultSize,functionParameters:this._functionParameters}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractCallLocal;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0,gas:null!=t.gas?t.gas:void 0,functionParameters:null!=t.functionParameters?t.functionParameters:void 0,maxResultSize:null!=t.maxResultSize?t.maxResultSize:void 0})}}]),n}(l.default);t.default=b,l.QUERY_REGISTRY.set("contractCallLocal",b._fromProtobuf)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.keccak256=void 0;var r,o="0123456789abcdef".split(""),a=[1,256,65536,16777216],i=[0,8,16,24],u=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],c=function(e){var t,n,r,o,a,i,c,s,l,f,d,p,h,y,m,b,v,k,g,_,w,I,A,T,O,P,E,S,R,D,C,N,B,M,j,x,F,U,L,G,K,z,Q,H,V,W,q,Y,Z,J,X,$,ee,te,ne,re,oe,ae,ie,ue,ce,se,le;for(r=0;r<48;r+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],a=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],c=e[3]^e[13]^e[23]^e[33]^e[43],s=e[4]^e[14]^e[24]^e[34]^e[44],l=e[5]^e[15]^e[25]^e[35]^e[45],f=e[6]^e[16]^e[26]^e[36]^e[46],d=e[7]^e[17]^e[27]^e[37]^e[47],t=(p=e[8]^e[18]^e[28]^e[38]^e[48])^(i<<1|c>>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],m=e[1],W=e[11]<<4|e[10]>>>28,q=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,b=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,k=e[25]<<11|e[24]>>>21,g=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,P=e[18]<<20|e[19]>>>12,E=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,G=e[38]<<8|e[39]>>>24,K=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~b&k,e[1]=m^~v&g,e[10]=T^~P&S,e[11]=O^~E&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~W&Y,e[31]=V^~q&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=b^~k&_,e[3]=v^~g&w,e[12]=P^~S&D,e[13]=E^~R&C,e[22]=x^~U&G,e[23]=F^~L&K,e[32]=W^~Y&J,e[33]=q^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=k^~_&I,e[5]=g^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~G&z,e[25]=L^~K&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&m,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=G^~z&M,e[27]=K^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&b,e[9]=A^~m&v,e[18]=N^~T&P,e[19]=B^~O&E,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&W,e[39]=ee^~V&q,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];b%f==0&&(c(p),n=0)}return"0x"+m}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(33)),f=r(n(11)),d=r(n(62)),p=r(n(239)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),y=r(n(20)),m=r(n(63)),b=r(n(43));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._bytecodeFileId=null,e._adminKey=null,e._gas=null,e._initialBalance=null,e._proxyAccountId=null,e._autoRenewPeriod=new m.default(h.DEFAULT_AUTO_RENEW_PERIOD),e._constructorParameters=null,e._contractMemo=null,e._defaultMaxTransactionFee=new l.default(20),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.gas&&e.setGas(r.gas),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.constructorParameters&&e.setConstructorParameters(r.constructorParameters),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof y.default?e:y.default.fromValue(e),this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof m.default?e:new m.default(e),this}},{key:"constructorParameters",get:function(){return this._constructorParameters}},{key:"setConstructorParameters",value:function(e){return this._requireNotFrozen(),this._constructorParameters=e instanceof p.default?e._build():e,this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"_validateChecksums",value:function(e){null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.createContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCreateInstance"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,gas:this._gas,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),constructorParameters:this._constructorParameters,memo:this._contractMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCreateInstance;return h.default._fromProtobufTransactions(new n({bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,adminKey:null!=i.adminKey?b.default._fromProtobufKey(i.adminKey):void 0,gas:null!=i.gas?i.gas:void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,constructorParameters:null!=i.constructorParameters?i.constructorParameters:void 0,contractMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(h.default);t.default=g,h.TRANSACTION_REGISTRY.set("contractCreateInstance",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),f=r(n(57)),d=r(n(11));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._transferAccountId=null,e._transferContractId=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),null!=r.transferContractId&&e.setTransferContractId(r.transferContractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"transferContractId",get:function(){return this._transferContractId}},{key:"setTransferContractId",value:function(e){return this._requireNotFrozen(),this._transferContractId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e),null!=this._transferContractId&&this._transferContractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.deleteContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractDeleteInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,transferAccountID:this._transferAccountId?this._transferAccountId._toProtobuf():null,transferContractID:null!=this._transferContractId?this._transferContractId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractDeleteInstance;return l.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,transferAccountId:null!=i.transferAccountID?d.default._fromProtobuf(i.transferAccountID):void 0,transferContractId:null!=i.transferContractID?f.default._fromProtobuf(i.transferContractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("contractDeleteInstance",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(33)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),d=r(n(57)),p=r(n(239)),h=r(n(20));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._gas=null,e._amount=null,e._functionParameters=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.gas&&e.setGas(r.gas),null!=r.amount&&e.setPayableAmount(r.amount),null!=r.functionParameters?e.setFunctionParameters(r.functionParameters):null!=r.function&&e.setFunction(r.function.name,r.function.parameters),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"payableAmount",get:function(){return this._amount}},{key:"setPayableAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof l.default?e:new l.default(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._requireNotFrozen(),this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._requireNotFrozen(),this._functionParameters=null!=t?t._build(e):(new p.default)._build(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallMethod(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCall"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,amount:null!=this._amount?this._amount.toTinybars():null,functionParameters:this._functionParameters}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCall;return f.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,gas:null!=i.gas?i.gas:void 0,amount:i.amount?i.amount:void 0,functionParameters:null!=i.functionParameters?i.functionParameters:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=b,f.TRANSACTION_REGISTRY.set("contractCall",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),h=r(n(57)),y=r(n(422)),m=r(n(33));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._contractId=null,null!=t.contractId&&e.setContractId(t.contractId),e}return(0,c.default)(r,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.getContractInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.contractGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.contractGetInfo;return Promise.resolve(y.default._fromProtobuf(r.contractInfo))}},{key:"_onMakeRequest",value:function(e){return{contractGetInfo:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetInfo;return new r({contractId:null!=t.contractID?h.default._fromProtobuf(t.contractID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("contractGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(11)),f=r(n(57)),d=r(n(62)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),h=r(n(63)),y=r(n(44)),m=r(n(43));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._expirationTime=null,e._adminKey=null,e._proxyAccountId=null,e._autoRenewPeriod=null,e._bytecodeFileId=null,e._contractMemo=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return console.warn("Deprecated: there is no replacement"),this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"clearContractMemo",value:function(){return this._requireNotFrozen(),this._contractMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.updateContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractUpdateInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,fileID:this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,memoWrapper:null!=this._contractMemo?{value:this._contractMemo}:null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractUpdateInstance,u=void 0;null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds&&(u=i.autoRenewPeriod.seconds);var c=void 0;return null!=i.memoWrapper&&null!=i.memoWrapper.value&&(c=i.memoWrapper.value),p.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,expirationTime:null!=i.expirationTime?y.default._fromProtobuf(i.expirationTime):void 0,adminKey:null!=i.adminKey?m.default._fromProtobufKey(i.adminKey):void 0,proxyAccountId:null!=i.proxyAccountID?l.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:u,contractMemo:c}),e,t,r,o,a)}}]),n}(p.default);t.default=k,p.TRANSACTION_REGISTRY.set("contractUpdateInstance",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(116)),f=r(n(57)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(74));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(e,r,o,i){return(0,a.default)(this,n),t.call(this,e,r,o,i)}return(0,i.default)(n,[{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e}},{key:"_toProtobufKey",value:function(){return{delegatableContractId:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,d.decode(r))}},{key:"fromString",value:function(e){return new n(f.default.fromString(e))}},{key:"_fromProtobuf",value:function(e){return new n(f.default._fromProtobuf(e))}},{key:"fromBytes",value:function(e){return new n(f.default.fromBytes(e))}},{key:"fromSolidityAddress",value:function(e){return new n(f.default.fromSolidityAddress(e))}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(f.default);t.default=y,l.default.delegateContractId=function(e){return y.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(117)),l=r(n(17)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(33)),y=w(n(22)),m=w(n(108)),b=r(n(62)),v=r(n(75)),k=r(n(44)),g=r(n(297));function _(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(_=function(e){return e?n:t})(e)}function w(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function I(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return A(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return A(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._fileId=null,e._contents=null,e._maxChunks=20,e._chunkSize=2048,e._defaultMaxTransactionFee=new h.default(5),null!=t.fileId&&e.setFileId(t.fileId),null!=t.contents&&e.setContents(t.contents),null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._startIndex=0,e._transactionIds=new g.default,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`FileAppendTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?b.default.fromString(e):e.clone(),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:m.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,l.default)((0,p.default)(o.prototype),"freezeWith",this).call(this,e),null==this._contents)return this;var t=Math.floor((this._contents.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Contents with size ".concat(this._contents.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear(),(0,s.default)((0,p.default)(o.prototype),"_nextTransactionIndex",0,this,!0);for(var r=0;rthis._chunkSize)throw new Error("cannot schedule `FileAppendTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,l.default)((0,p.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,s,f,d;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,l.default)((0,p.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,l.default)((0,p.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,s=0;case 9:if(!(se&&(t=e),{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contents:null!=this._contents?this._contents.slice(this._startIndex,t):null}}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){for(var i,u=a[0].fileAppend,c=0;c0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileContent(t)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_mapResponseHeader",value:function(e){return e.fileGetContents.header}},{key:"_mapResponse",value:function(e){var t=e.fileGetContents.fileContents.contents;return Promise.resolve(t)}},{key:"_onMakeRequest",value:function(e){return{fileGetContents:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetContents;return new n({fileId:null!=t.fileID?f.default._fromProtobuf(t.fileID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("fileGetContents",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(33)),f=b(n(22)),d=b(n(108)),p=r(n(44)),h=r(n(43)),y=r(n(136));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._keys=null,e._expirationTime=p.default.fromDate(Date.now()+1e3*f.DEFAULT_AUTO_RENEW_PERIOD.toInt()),e._contents=null,e._fileMemo=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"_execute",value:function(e,t){return e.file.createFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileCreate"}},{key:"_makeTransactionData",value:function(){return{keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:this._expirationTime._toProtobuf(),contents:this._contents,memo:this._fileMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileCreate;return f.default._fromProtobufTransactions(new n({keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=k,f.TRANSACTION_REGISTRY.set("fileCreate",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),f=r(n(62));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.deleteFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("fileDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),h=r(n(62)),y=r(n(423)),m=r(n(33));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._fileId=null,null!=t.fileId&&e.setFileId(t.fileId),e}return(0,c.default)(r,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.fileGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.fileGetInfo;return Promise.resolve(y.default._fromProtobuf(r.fileInfo))}},{key:"_onMakeRequest",value:function(e){return{fileGetInfo:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetInfo;return new r({fileId:null!=t.fileID?h.default._fromProtobuf(t.fileID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("fileGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=b(n(22)),f=r(n(44)),d=b(n(108)),p=r(n(62)),h=r(n(43)),y=r(n(136));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._keys=null,e._expirationTime=null,e._contents=null,e._fileMemo=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof f.default?e:f.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"clearFileMemo",value:function(){return this._requireNotFrozen(),this._fileMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.updateFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileUpdate"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,contents:this._contents,memo:null!=this._fileMemo?{value:this._fileMemo}:null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileUpdate;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?p.default._fromProtobuf(i.fileID):void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?f.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=k,l.TRANSACTION_REGISTRY.set("fileUpdate",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=m(n(22)),f=r(n(44)),d=r(n(62)),p=m(n(74)),h=r(n(807));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._startTime=null,e._startTimestamp=null,e._endTime=null,e._fileId=null,e._fileHash=null,e._freezeType=null,null!=r.startTime&&e.setStartTime(r.startTime.hour,r.startTime.minute),null!=r.endTime&&e.setEndTime(r.endTime.hour,r.endTime.minute),null!=r.startTimestamp&&e.setStartTimestamp(r.startTimestamp),null!=r.updateFileId&&e.setUpdateFileId(r.updateFileId),null!=r.fileId&&e.setFileId(r.fileId),null!=r.fileHash&&e.setFileHash(r.fileHash),null!=r.freezeType&&e.setFreezeType(r.freezeType),e}return(0,i.default)(n,[{key:"startTime",get:function(){return null}},{key:"setStartTime",value:function(e,t){if(this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._startTime={hour:Number(n[0]),minute:Number(n[1])}}else this._startTime={hour:e,minute:t};return this}},{key:"startTimestamp",get:function(){return this._startTimestamp}},{key:"setStartTimestamp",value:function(e){return this._requireNotFrozen(),this._startTimestamp=e,this}},{key:"endTime",get:function(){return console.warn("`FreezeTransaction.endTime` is deprecated"),this._endTime}},{key:"setEndTime",value:function(e,t){if(console.warn("`FreezeTransaction.endTime` is deprecated"),this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._endTime={hour:Number(n[0]),minute:Number(n[1])}}else this._endTime={hour:e,minute:t};return this}},{key:"updateFileId",get:function(){return this.fileId}},{key:"setUpdateFileId",value:function(e){return this.setFileId(e)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e,this}},{key:"fileHash",get:function(){return this._fileHash}},{key:"setFileHash",value:function(e){return this._requireNotFrozen(),this._fileHash="string"==typeof e?p.decode(e):e,this}},{key:"freezeType",get:function(){return this._freezeType}},{key:"setFreezeType",value:function(e){return this._requireNotFrozen(),this._freezeType=e,this}},{key:"_getTransactionDataCase",value:function(){return"freeze"}},{key:"_makeTransactionData",value:function(){return{startTime:null!=this._startTimestamp?this._startTimestamp._toProtobuf():null,updateFile:null!=this._fileId?this._fileId._toProtobuf():null,fileHash:this._fileHash,freezeType:null!=this._freezeType?this._freezeType.valueOf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].freeze;return l.default._fromProtobufTransactions(new n({startTime:null!=i.startHour&&null!=i.startMin?{hour:i.startHour,minute:i.startMin}:void 0,endTime:null!=i.endHour&&null!=i.endMin?{hour:i.endHour,minute:i.endMin}:void 0,startTimestamp:null!=i.startTime?f.default._fromProtobuf(i.startTime):void 0,updateFileId:null!=i.updateFile?d.default._fromProtobuf(i.updateFile):void 0,fileHash:null!=i.fileHash?i.fileHash:void 0,freezeType:null!=i.freezeType?h.default._fromCode(i.freezeType):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=v,l.TRANSACTION_REGISTRY.set("freeze",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.UnknownFreezeType:return"UNKNOWN_FREEZE_TYPE";case e.FreezeOnly:return"FREEZE_ONLY";case e.PrepareUpgrade:return"PREPARE_UPGRADE";case e.FreezeUpgrade:return"FREEZE_UPGRADE";case e.FreezeAbort:return"FREEZE_ABORT";case e.TelemetryUpgrade:return"TELEMETRY_UPGRADE";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromCode",value:function(t){switch(t){case 0:return e.UnknownFreezeType;case 1:return e.FreezeOnly;case 2:return e.PrepareUpgrade;case 3:return e.FreezeUpgrade;case 4:return e.FreezeAbort;case 5:return e.TelemetryUpgrade;default:throw new Error("(BUG) Status.fromCode() does not handle code: ".concat(t))}}}]),e}();t.default=i,i.UnknownFreezeType=new i(0),i.FreezeOnly=new i(1),i.PrepareUpgrade=new i(2),i.FreezeUpgrade=new i(3),i.FreezeAbort=new i(4),i.TelemetryUpgrade=new i(5)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),f=r(n(11)),d=r(n(63)),p=r(n(43)),h=r(n(136));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._keys=null,e._duration=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.keys&&e.setKeys(r.keys),null!=r.duration&&e.setDuration(r.duration),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){return this._requireNotFrozen(),this._keys=e instanceof h.default?e.toArray():e,this}},{key:"duration",get:function(){return this._duration}},{key:"setDuration",value:function(e){return this._requireNotFrozen(),this._duration=e instanceof d.default?e:new d.default(e),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.addLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAddLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHash:{hash:this._hash,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:void 0,duration:null!=this._duration?this._duration._toProtobuf():null,accountId:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAddLiveHash.liveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.hash?i.hash:void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return p.default._fromProtobufKey(e)})):void 0,duration:null!=i.duration&&null!=i.duration.seconds?i.duration.seconds:void 0,accountId:null!=i.accountId?f.default._fromProtobuf(i.accountId):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=b,l.TRANSACTION_REGISTRY.set("cryptoAddLiveHash",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),f=r(n(11));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.deleteLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDeleteLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHashToDelete:this._hash,accountOfLiveHash:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDeleteLiveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.liveHashToDelete?i.liveHashToDelete:void 0,accountId:null!=i.accountOfLiveHash?f.default._fromProtobuf(i.accountOfLiveHash):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("cryptoDeleteLiveHash",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),f=r(n(11)),d=r(n(301));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e._hash=null,null!=r.hash&&e.setHash(r.hash),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"liveHash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._hash=e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getLiveHash(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetLiveHash.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetLiveHash;return Promise.resolve(d.default._fromProtobuf(t.liveHash))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetLiveHash:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,hash:this._hash}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetLiveHash;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,hash:null!=t.hash?t.hash:void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetLiveHash",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),f=r(n(424));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){return(0,a.default)(this,n),t.call(this)}return(0,i.default)(n,[{key:"_execute",value:function(e,t){return e.network.getVersionInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.networkGetVersionInfo.header}},{key:"_mapResponse",value:function(e){var t=e.networkGetVersionInfo;return Promise.resolve(f.default._fromProtobuf(t))}},{key:"_onMakeRequest",value:function(e){return{networkGetVersionInfo:{header:e}}}}],[{key:"_fromProtobuf",value:function(e){return new n}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("networkGetVersionInfo",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(11)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),d=r(n(43));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._scheduledTransaction=null,e._payerAccountId=null,e._scheduleMemo=null,e._scheduledSignerPublicKeys=new Set,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.payerAccountID&&e.setPayerAccountId(r.payerAccountID),null!=r.scheduleMemo&&e.setScheduleMemo(r.scheduleMemo),e}return(0,i.default)(n,[{key:"_setScheduledTransaction",value:function(e){return this._scheduledTransaction=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"payerAccountId",get:function(){return this._payerAccountId}},{key:"setPayerAccountId",value:function(e){return this._requireNotFrozen(),this._payerAccountId=e,this}},{key:"setScheduleMemo",value:function(e){return this._requireNotFrozen(),this._scheduleMemo=e,this}},{key:"getScheduleMemo",get:function(){return this._requireNotFrozen(),this._scheduleMemo}},{key:"setScheduledTransaction",value:function(e){return this._requireNotFrozen(),e._requireNotFrozen(),this._scheduledTransaction=e.schedule()._scheduledTransaction,this}},{key:"_validateChecksums",value:function(e){null!=this._payerAccountId&&this._payerAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.createSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleCreate"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,payerAccountID:null!=this._payerAccountId?this._payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this._scheduledTransaction?this._scheduledTransaction._getScheduledTransactionBody():null,memo:this._scheduleMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleCreate;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?d.default._fromProtobufKey(i.adminKey):void 0,payerAccountID:null!=i.payerAccountID?l.default._fromProtobuf(i.payerAccountID):void 0,scheduleMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("scheduleCreate",y._fromProtobuf),f.SCHEDULE_CREATE_TRANSACTION.push((function(){return new y}))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(140)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.deleteSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleDelete"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleDelete;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("scheduleDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),h=r(n(140)),y=r(n(426)),m=r(n(33));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._scheduleId=null,null!=t.scheduleId&&e.setScheduleId(t.scheduleId),e}return(0,c.default)(r,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._scheduleId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.getScheduleInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.scheduleGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.scheduleGetInfo;return Promise.resolve(y.default._fromProtobuf(r.scheduleInfo))}},{key:"_onMakeRequest",value:function(e){return{scheduleGetInfo:{header:e,scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.scheduleGetInfo;return new r({scheduleId:null!=t.scheduleID?h.default._fromProtobuf(t.scheduleID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("scheduleGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(140)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.signSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleSign"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleSign;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("scheduleSign",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),f=r(n(62)),d=r(n(57)),p=r(n(44));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,e._expirationTime=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e,this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemDelete(t):e.smartContract.systemDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=m,l.TRANSACTION_REGISTRY.set("systemDelete",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),f=r(n(62)),d=r(n(57));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemUndelete(t):e.smartContract.systemUndelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemUndelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemUndelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("systemUndelete",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(33)),f=r(n(27)),d=r(n(11)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.associateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenAssociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenAssociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenAssociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),d=r(n(20));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._serials=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return e instanceof d.default?e:d.default.fromValue(e)})),this}},{key:"_execute",value:function(e,t){return e.token.burnToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenBurn"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,serialNumbers:this._serials,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenBurn;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,serials:null!=i.serialNumbers?i.serialNumbers:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("tokenBurn",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(17)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=r(n(33)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),p=r(n(20)),h=r(n(11)),y=r(n(44)),m=r(n(63)),b=r(n(199)),v=r(n(241)),k=r(n(242)),g=r(n(302)),_=r(n(303)),w=r(n(43));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var T=function(e){(0,c.default)(n,e);var t=A(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenName=null,e._tokenSymbol=null,e._decimals=null,e._initialSupply=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._pauseKey=null,e._wipeKey=null,e._supplyKey=null,e._feeScheduleKey=null,e._freezeDefault=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=new m.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._tokenMemo=null,e._customFees=[],e._tokenType=null,e._supplyType=null,e._maxSupply=null,e._defaultMaxTransactionFee=new f.default(30),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.decimals&&e.setDecimals(r.decimals),null!=r.initialSupply&&e.setInitialSupply(r.initialSupply),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.freezeDefault&&e.setFreezeDefault(r.freezeDefault),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.customFees&&e.setCustomFees(r.customFees),null!=r.tokenType&&e.setTokenType(r.tokenType),null!=r.supplyType&&e.setSupplyType(r.supplyType),null!=r.maxSupply&&e.setMaxSupply(r.maxSupply),e}return(0,i.default)(n,[{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"decimals",get:function(){return this._decimals}},{key:"setDecimals",value:function(e){return this._requireNotFrozen(),this._decimals=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"initialSupply",get:function(){return this._initialSupply}},{key:"setInitialSupply",value:function(e){return this._requireNotFrozen(),this._initialSupply=p.default.fromValue(e),this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"freezeDefault",get:function(){return this._freezeDefault}},{key:"setFreezeDefault",value:function(e){return this._requireNotFrozen(),this._freezeDefault=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=null,this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof h.default?e:h.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof m.default?e:new m.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._customFees=e,this}},{key:"tokenType",get:function(){return this._tokenType}},{key:"setTokenType",value:function(e){return this._tokenType=e,this}},{key:"supplyType",get:function(){return this._supplyType}},{key:"setSupplyType",value:function(e){return this._supplyType=e,this}},{key:"maxSupply",get:function(){return this._maxSupply}},{key:"setMaxSupply",value:function(e){return this._maxSupply="number"==typeof e?p.default.fromNumber(e):e,this}},{key:"freezeWith",value:function(e){return null!=this._autoRenewPeriod&&null!=e&&e.operatorAccountId&&(this._autoRenewAccountId=e.operatorAccountId),(0,u.default)((0,l.default)(n.prototype),"freezeWith",this).call(this,e)}},{key:"_validateChecksums",value:function(e){null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.createToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenCreation"}},{key:"_makeTransactionData",value:function(){return{name:this._tokenName,symbol:this._tokenSymbol,decimals:null!=this._decimals?this._decimals.toInt():null,initialSupply:this._initialSupply,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,pauseKey:null!=this._pauseKey?this._pauseKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null,freezeDefault:this._freezeDefault,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:this._tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this._tokenType?this._tokenType._code:null,supplyType:null!=this._supplyType?this._supplyType._code:null,maxSupply:this.maxSupply}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenCreation;return d.default._fromProtobufTransactions(new n({tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,decimals:null!=i.decimals?i.decimals:void 0,initialSupply:null!=i.initialSupply?i.initialSupply:void 0,treasuryAccountId:null!=i.treasury?h.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?w.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?w.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?w.default._fromProtobufKey(i.freezeKey):void 0,pauseKey:null!=i.pauseKey?w.default._fromProtobufKey(i.pauseKey):void 0,wipeKey:null!=i.wipeKey?w.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?w.default._fromProtobufKey(i.supplyKey):void 0,feeScheduleKey:null!=i.feeScheduleKey?w.default._fromProtobufKey(i.feeScheduleKey):void 0,freezeDefault:null!=i.freezeDefault?i.freezeDefault:void 0,autoRenewAccountId:null!=i.autoRenewAccount?h.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?y.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?m.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo?i.memo:void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?b.default._fromProtobuf(e):null!=e.fractionalFee?v.default._fromProtobuf(e):k.default._fromProtobuf(e)})):void 0,tokenType:null!=i.tokenType?g.default._fromCode(i.tokenType):void 0,supplyType:null!=i.supplyType?_.default._fromCode(i.supplyType):void 0,maxSupply:null!=i.maxSupply?i.maxSupply:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=T,d.TRANSACTION_REGISTRY.set("tokenCreation",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.deleteToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDeletion"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDeletion;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenDeletion",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(33)),f=r(n(27)),d=r(n(11)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.dissociateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDissociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDissociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenDissociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),d=r(n(199)),p=r(n(241)),h=r(n(242));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._customFees=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.customFees&&e.setCustomFees(r.customFees),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):l.default._fromProtobuf(e._toProtobuf()),this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._requireNotFrozen(),this._customFees=e,this}},{key:"_execute",value:function(e,t){return e.token.updateTokenFeeSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFeeScheduleUpdate"}},{key:"_makeTransactionData",value:function(){return{tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,customFees:this._customFees.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFeeScheduleUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.tokenId?l.default._fromProtobuf(i.tokenId):void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?d.default._fromProtobuf(e):null!=e.fractionalFee?p.default._fromProtobuf(e):h.default._fromProtobuf(e)})):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=b,f.TRANSACTION_REGISTRY.set("tokenFeeScheduleUpdate",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=r(n(11)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.freezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenFreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=r(n(11)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.grantKycToTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenGrantKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenGrantKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenGrantKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),h=r(n(27)),y=r(n(427)),m=r(n(33));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e}return(0,c.default)(r,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.getTokenInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.tokenGetInfo;return Promise.resolve(y.default._fromProtobuf(r.tokenInfo))}},{key:"_onMakeRequest",value:function(e){return{tokenGetInfo:{header:e,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.tokenGetInfo;return new r({tokenId:null!=t.token?h.default._fromProtobuf(t.token):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("tokenGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=y(n(22)),d=r(n(20)),p=y(n(74));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function m(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._metadata=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.metadata&&e.setMetadata(r.metadata),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"metadata",get:function(){return this._metadata}},{key:"addMetadata",value:function(e){return this._requireNotFrozen(),"string"==typeof e&&console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead."),this._metadata.push("string"==typeof e?p.decode(e):e),this}},{key:"setMetadata",value:function(e){this._requireNotFrozen();var t,n=m(e);try{for(n.s();!(t=n.n()).done;){if("string"==typeof t.value){console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead.");break}}}catch(e){n.e(e)}finally{n.f()}return this._metadata=e.map((function(e){return"string"==typeof e?p.decode(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.mintToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenMint"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,metadata:this._metadata}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenMint;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,metadata:null!=i.metadata?i.metadata:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=k,f.TRANSACTION_REGISTRY.set("tokenMint",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),h=r(n(169)),y=r(n(11)),m=r(n(27)),b=r(n(428)),v=r(n(33)),k=r(n(20));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function _(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var w=function(e){(0,l.default)(r,e);var t,n=_(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._nftId=null,null!=t.nftId&&e.setNftId(t.nftId),e._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e._start=null,null!=t.start&&e.setStart(t.start),e._end=null,null!=t.end&&e.setEnd(t.end),e}return(0,c.default)(r,[{key:"nftId",get:function(){return this._nftId}},{key:"setNftId",value:function(e){return this._nftId="string"==typeof e?h.default.fromString(e):h.default._fromProtobuf(e._toProtobuf()),this}},{key:"accountId",get:function(){return console.warn("`TokenNftInfoQuery.accountId` is deprecated with no replacement"),this._accountId}},{key:"setAccountId",value:function(e){return console.warn("`TokenNftInfoQuery.setAccountId()` is deprecated with no replacement"),this._accountId="string"==typeof e?y.default.fromString(e):y.default._fromProtobuf(e._toProtobuf()),this}},{key:"tokenId",get:function(){return console.warn("`TokenNftInfoQuery.tokenId` is deprecated with no replacement"),this._tokenId}},{key:"setTokenId",value:function(e){return console.warn("`TokenNftInfoQuery.setTokenId()` is deprecated with no replacement"),this._tokenId="string"==typeof e?m.default.fromString(e):m.default._fromProtobuf(e._toProtobuf()),this}},{key:"start",get:function(){return console.warn("`TokenNftInfoQuery.start` is deprecated with no replacement"),this._start}},{key:"setStart",value:function(e){return console.warn("`TokenNftInfoQuery.setStart()` is deprecated with no replacement"),this._start="number"==typeof e?k.default.fromNumber(e):e,this}},{key:"end",get:function(){return console.warn("`TokenNftInfoQuery.end` is deprecated with no replacement"),this._end}},{key:"setEnd",value:function(e){return console.warn("`TokenNftInfoQuery.setEnd()` is deprecated with no replacement"),this._end="number"==typeof e?k.default.fromNumber(e):e,this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",v.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_execute",value:function(e,t){return e.token.getTokenNftInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetNftInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=[e.tokenGetNftInfo.nft];return Promise.resolve(r.map((function(e){return b.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{tokenGetNftInfo:{header:e,nftID:null!=this._nftId?this._nftId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){if(null!=e.tokenGetNftInfo){var t=e.tokenGetNftInfo;return new r({nftId:null!=t.nftID?h.default._fromProtobuf(t.nftID):void 0})}if(null!=e.tokenGetAccountNftInfos){var n=e.tokenGetAccountNftInfos;return new r({accountId:null!=n.accountID?y.default._fromProtobuf(n.accountID):void 0,start:null!=n.start?n.start:void 0,end:null!=n.end?n.end:void 0})}var o=e.tokenGetNftInfos;return new r({tokenId:null!=o.tokenID?m.default._fromProtobuf(o.tokenID):void 0,start:null!=o.start?o.start:void 0,end:null!=o.end?o.end:void 0})}}]),r}(p.default);t.default=w,p.QUERY_REGISTRY.set("tokenGetNftInfo",w._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.pauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenPause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenPause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenPause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=r(n(11)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.revokeKycFromTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenRevokeKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenRevokeKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenRevokeKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=r(n(11)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unfreezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnfreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnfreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenUnfreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unpauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnpause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnpause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenUnpause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),d=r(n(11)),p=r(n(44)),h=r(n(63)),y=r(n(43));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._tokenName=null,e._tokenSymbol=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._wipeKey=null,e._supplyKey=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=null,e._tokenMemo=null,e._feeScheduleKey=null,e._pauseKey=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"setsupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"clearTokenMemo",value:function(){return this._requireNotFrozen(),this._tokenMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.updateToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUpdate"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,name:this.tokenName,symbol:this.tokenSymbol,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:null!=this._tokenMemo?{value:this._tokenMemo}:null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,treasuryAccountId:null!=i.treasury?d.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?y.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?y.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?y.default._fromProtobufKey(i.freezeKey):void 0,wipeKey:null!=i.wipeKey?y.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?y.default._fromProtobufKey(i.supplyKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?d.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?p.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?h.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,feeScheduleKey:null!=i.feeScheduleKey?y.default._fromProtobufKey(i.feeScheduleKey):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=v,f.TRANSACTION_REGISTRY.set("tokenUpdate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(27)),f=r(n(11)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),p=r(n(20));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,e._serials=[],e._amount=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return"number"==typeof e?p.default.fromNumber(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.wipeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenWipe"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null,serialNumbers:this.serials}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenWipe;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0,amount:null!=i.amount?i.amount:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=m,d.TRANSACTION_REGISTRY.set("tokenWipe",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(11)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),d=r(n(63)),p=r(n(43));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._submitKey=null,e._autoRenewAccountId=null,e._autoRenewPeriod=new d.default(f.DEFAULT_AUTO_RENEW_PERIOD),e._topicMemo=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.submitKey&&e.setSubmitKey(r.submitKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e}return(0,i.default)(n,[{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof l.default?e:l.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof d.default?e:new d.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.createTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusCreateTopic"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),memo:this._topicMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusCreateTopic;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?p.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?p.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?l.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("consensusCreateTopic",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),f=r(n(118));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.deleteTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusDeleteTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusDeleteTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?f.default._fromProtobuf(i.topicID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("consensusDeleteTopic",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(52)),h=r(n(118)),y=r(n(429)),m=r(n(33));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e}return(0,c.default)(r,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._topicId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.getTopicInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.consensusGetTopicInfo.header}},{key:"_mapResponse",value:function(e,t,n){return Promise.resolve(y.default._fromProtobuf(e.consensusGetTopicInfo))}},{key:"_onMakeRequest",value:function(e){return{consensusGetTopicInfo:{header:e,topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.consensusGetTopicInfo;return new r({topicId:null!=t.topicID?h.default._fromProtobuf(t.topicID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("consensusGetTopicInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(75)),c=r(n(839)),s=r(n(430)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(36)),f=r(n(118)),d=r(n(20)),p=r(n(44)),h=n(139);function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var m=function(){function e(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._topicId=null,null!=n.topicId&&this.setTopicId(n.topicId),this._startTime=null,null!=n.startTime&&this.setStartTime(n.startTime),this._endTime=null,null!=n.endTime&&this.setEndTime(n.endTime),this._limit=null,null!=n.limit&&this.setLimit(n.limit),this._errorHandler=function(e,n){console.error("Error attempting to subscribe to topic: ".concat(null!=t._topicId?t._topicId.toString():""))},null!=n.errorHandler&&(this._errorHandler=n.errorHandler),this._listener=null,this._completionHandler=function(){console.log("Subscription to topic ".concat(null!=t._topicId?t._topicId.toString():""," complete"))},null!=n.completionHandler&&(this._completionHandler=n.completionHandler),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return h.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},null!=n.retryHandler&&(this._retryHandler=n.retryHandler),this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0,this._handle=null}return(0,i.default)(e,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this.requireNotSubscribed(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"startTime",get:function(){return this._startTime}},{key:"setStartTime",value:function(e){return this.requireNotSubscribed(),this._startTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"endTime",get:function(){return this._endTime}},{key:"setEndTime",value:function(e){return this.requireNotSubscribed(),this._endTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this.requireNotSubscribed(),this._limit=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"setErrorHandler",value:function(e){return this._errorHandler=e,this}},{key:"setCompletionHandler",value:function(e){return this.requireNotSubscribed(),this._completionHandler=e,this}},{key:"setMaxAttempts",value:function(e){this.requireNotSubscribed(),this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this.requireNotSubscribed(),this._maxBackoff=e}},{key:"subscribe",value:function(e,t,n){return this._handle=new c.default,this._listener=n,null!=t&&(this._errorHandler=t),this._makeServerStreamRequest(e),this._handle}},{key:"_makeServerStreamRequest",value:function(e){var t=this,n=new Map,r=l.ConsensusTopicQuery.encode({topicID:null!=this._topicId?this._topicId._toProtobuf():null,consensusStartTime:null!=this._startTime?this._startTime._toProtobuf():null,consensusEndTime:null!=this._endTime?this._endTime._toProtobuf():null,limit:this._limit}).finish(),o=e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("ConsensusService","subscribeTopic",r,(function(e){var r=l.ConsensusTopicResponse.decode(e);if(null!=t._limit&&t._limit.gt(0)&&(t._limit=t._limit.sub(1)),t._startTime=p.default._fromProtobuf(r.consensusTimestamp).plusNanos(1),null==r.chunkInfo||null!=r.chunkInfo&&1===r.chunkInfo.total)t._passTopicMessage(s.default._ofSingle(r));else{var o=r.chunkInfo,a=o.initialTransactionID,i=o.total,c=u.default._fromProtobuf(a).toString(),f=[],d=n.get(c);if(null==d?n.set(c,f):f=d,f.push(r),f.length===i){var h=s.default._ofMany(f);n.delete(c),t._passTopicMessage(h)}}}),(function(n){var r=n instanceof Error?n.message:n.details;if(t._attempt=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e._message=null,null!=t.message&&e.setMessage(t.message),e._maxChunks=20,e._chunkSize=h.CHUNK_SIZE,null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._chunkInfo=null,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`TopicMessageSubmitTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?y.default.fromString(e):e.clone(),this}},{key:"message",get:function(){return this._message}},{key:"setMessage",value:function(e){return this._requireNotFrozen(),e=k.requireStringOrUint8Array(e),this._message=e instanceof Uint8Array?e:m.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,l.default)((0,p.default)(o.prototype),"freezeWith",this).call(this,e),null==this._message)return this;var t=Math.floor((this._message.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Message with size ".concat(this._message.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId._toProtobuf(),r=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear(),(0,s.default)((0,p.default)(o.prototype),"_nextTransactionIndex",0,this,!0);for(var a=0;athis._chunkSize)throw new Error("cannot schedule `TopicMessageSubmitTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,l.default)((0,p.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,s,f;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,l.default)((0,p.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,l.default)((0,p.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,s=0;case 9:if(!(sthis._message.length&&(t=this._message.length),{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message.slice(e,t),chunkInfo:this._chunkInfo}}return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message}}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){var i=a[0].consensusSubmitMessage;return h.default._fromProtobufTransactions(new o({topicId:null!=i.topicID?y.default._fromProtobuf(i.topicID):void 0,message:null!=i.message?i.message:void 0}),e,t,n,r,a)}}]),o}(h.default);t.default=T,h.TRANSACTION_REGISTRY.set("consensusSubmitMessage",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),f=r(n(11)),d=r(n(118)),p=r(n(63)),h=r(n(43));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e._topicMemo=null,null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e._submitKey=null,null!=r.submitKey&&e.setSubmitKey(r.submitKey),e._adminKey=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),e._autoRenewAccountId=null,null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),e._autoRenewPeriod=null,null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"clearTopicId",value:function(){return this._requireNotFrozen(),this._topicId=null,this}},{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"clearTopicMemo",value:function(){return this._requireNotFrozen(),this._topicMemo=null,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"clearAdminKey",value:function(){return this._requireNotFrozen(),this._adminKey=null,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"clearSubmitKey",value:function(){return this._requireNotFrozen(),this._submitKey=null,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"clearAutoRenewAccountId",value:function(){return this._requireNotFrozen(),this._autoRenewAccountId=null,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.updateTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusUpdateTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,memo:null!=this._topicMemo?{value:this._topicMemo}:null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusUpdateTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?d.default._fromProtobuf(i.topicID):void 0,adminKey:null!=i.adminKey?h.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?h.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?f.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=b,l.TRANSACTION_REGISTRY.set("consensusUpdateTopic",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(33)),f=r(n(27)),d=r(n(11)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(22)),h=r(n(20)),y=r(n(843)),m=r(n(299)),b=r(n(412)),v=r(n(408)),k=r(n(844)),g=r(n(410)),_=r(n(409)),w=r(n(845)),I=r(n(169));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,n),(e=t.call(this))._tokenTransfers=[],e._hbarTransfers=[],e._nftTransfers=[],e._defaultMaxTransactionFee=new l.default(1);var o,i=T(null!=r.tokenTransfers?r.tokenTransfers:[]);try{for(i.s();!(o=i.n()).done;){var u=o.value;e.addTokenTransfer(u.tokenId,u.accountId,u.amount)}}catch(e){i.e(e)}finally{i.f()}var c,s=T(null!=r.hbarTransfers?r.hbarTransfers:[]);try{for(s.s();!(c=s.n()).done;){var f=c.value;e.addHbarTransfer(f.accountId,f.amount)}}catch(e){s.e(e)}finally{s.f()}var d,p=T(null!=r.nftTransfers?r.nftTransfers:[]);try{for(p.s();!(d=p.n()).done;){var h=d.value;e.addNftTransfer(h.tokenId,h.serial,h.sender,h.recipient)}}catch(e){p.e(e)}finally{p.f()}return e}return(0,i.default)(n,[{key:"tokenTransfers",get:function(){var e,t=new v.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId);null!=o?o._set(r.accountId,r.amount):((o=new _.default)._set(r.accountId,r.amount),t._set(r.tokenId,o))}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addTokenTransfer",value:function(e,t,n){this._requireNotFrozen();var r,o=e instanceof f.default?e:f.default.fromString(e),a=t instanceof d.default?t:d.default.fromString(t),i=n instanceof h.default?n:h.default.fromNumber(n),u=T(this._tokenTransfers);try{for(u.s();!(r=u.n()).done;){var c=r.value;if(0===c.tokenId.compare(o)&&0===c.accountId.compare(a))return c.amount=c.amount.add(i),c.expectedDecimals=null,this}}catch(e){u.e(e)}finally{u.f()}return this._tokenTransfers.push(new b.default({tokenId:e,accountId:t,expectedDecimals:null,amount:n,isApproved:!1})),this}},{key:"addTokenTransferWithDecimals",value:function(e,t,n,r){this._requireNotFrozen();var o,a=e instanceof f.default?e:f.default.fromString(e),i=t instanceof d.default?t:d.default.fromString(t),u=n instanceof h.default?n:h.default.fromNumber(n),c=!1,s=T(this._tokenTransfers);try{for(s.s();!(o=s.n()).done;){var l=o.value;if(0===l.tokenId.compare(a)){if(null!=l.expectedDecimals&&l.expectedDecimals!==r)throw new Error("expected decimals mis-match");l.expectedDecimals=r,0===l.accountId.compare(i)&&(l.amount=l.amount.add(u),l.expectedDecimals=r,c=!0)}}}catch(e){s.e(e)}finally{s.f()}return c||this._tokenTransfers.push(new b.default({tokenId:e,accountId:t,expectedDecimals:r,amount:n,isApproved:!1})),this}},{key:"tokenIdDecimals",get:function(){var e,t=new y.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.tokenId,r.expectedDecimals)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"hbarTransfers",get:function(){var e,t=new k.default,n=T(this._hbarTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.accountId,r.amount)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addHbarTransfer",value:function(e,t){this._requireNotFrozen();var n,r=e instanceof d.default?e:d.default.fromString(e),o=t instanceof l.default?t:new l.default(t),a=T(this._hbarTransfers);try{for(a.s();!(n=a.n()).done;){var i=n.value;if(0===i.accountId.compare(r))return i.amount=l.default.fromTinybars(i.amount.toTinybars().add(o.toTinybars())),this}}catch(e){a.e(e)}finally{a.f()}return this._hbarTransfers.push(new m.default({accountId:r,amount:o,isApproved:!1})),this}},{key:"_validateChecksums",value:function(e){var t,n=T(this._hbarTransfers);try{for(n.s();!(t=n.n()).done;){t.value.accountId.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}var r,o=T(this._tokenTransfers);try{for(o.s();!(r=o.n()).done;){var a=r.value;a.tokenId.validateChecksum(e),a.accountId.validateChecksum(e)}}catch(e){o.e(e)}finally{o.f()}var i,u=T(this._nftTransfers);try{for(u.s();!(i=u.n()).done;){var c=i.value;c.tokenId.validateChecksum(e),c.senderAccountId.validateChecksum(e),c.receiverAccountId.validateChecksum(e)}}catch(e){u.e(e)}finally{u.f()}}},{key:"nftTransfers",get:function(){var e,t=new g.default,n=T(this._nftTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId),a={sender:r.senderAccountId,recipient:r.receiverAccountId,serial:r.serialNumber,isApproved:r.isApproved};null!=o?o.push(a):t._set(r.tokenId,[a])}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addNftTransfer",value:function(e,t,n,r){var o,a,i;if(this._requireNotFrozen(),e instanceof I.default)o=e,a="string"==typeof t?d.default.fromString(t):t,i="string"==typeof n?d.default.fromString(n):n;else if(e instanceof f.default)o=new I.default(e,t),a="string"==typeof n?d.default.fromString(n):n,i="string"==typeof r?d.default.fromString(r):r;else try{o=I.default.fromString(e),a="string"==typeof t?d.default.fromString(t):t,i="string"==typeof n?d.default.fromString(n):n}catch(c){var u=f.default.fromString(e);o=new I.default(u,t),a="string"==typeof n?d.default.fromString(n):n,i="string"==typeof r?d.default.fromString(r):r}var c,s=T(this._nftTransfers);try{for(s.s();!(c=s.n()).done;){var l=c.value;if(0===l.tokenId.compare(o.tokenId)&&0===l.serialNumber.compare(o.serial))return l.senderAccountId=a,l.receiverAccountId=i,this}}catch(e){s.e(e)}finally{s.f()}return this._nftTransfers.push(new w.default({tokenId:o.tokenId,serialNumber:o.serial,senderAccountId:a,receiverAccountId:i,isApproved:!1})),this}},{key:"setHbarTransferApproval",value:function(e,t){var n,r="string"==typeof e?d.default.fromString(e):e,o=T(this._hbarTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.accountId.compare(r)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"setTokenTransferApproval",value:function(e,t,n){var r,o="string"==typeof e?f.default.fromString(e):e,a="string"==typeof t?d.default.fromString(t):t,i=T(this._tokenTransfers);try{for(i.s();!(r=i.n()).done;){var u=r.value;0===u.tokenId.compare(o)&&0===u.accountId.compare(a)&&(u.isApproved=n)}}catch(e){i.e(e)}finally{i.f()}return this}},{key:"setNftTransferApproval",value:function(e,t){var n,r="string"==typeof e?I.default.fromString(e):e,o=T(this._nftTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.tokenId.compare(r.tokenId)&&0===a.serialNumber.compare(r.serial)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"_execute",value:function(e,t){return e.crypto.cryptoTransfer(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoTransfer"}},{key:"_makeTransactionData",value:function(){var e=[];this._tokenTransfers.sort((function(e,t){var n=e.tokenId.compare(t.tokenId);return 0!==n?n:e.accountId.compare(t.accountId)})),this._nftTransfers.sort((function(e,t){var n=e.senderAccountId.compare(t.senderAccountId);if(0!=n)return n;var r=e.receiverAccountId.compare(t.receiverAccountId);return 0!=r?r:e.serialNumber.compare(t.serialNumber)}));for(var t=0,n=0;t0?e[e.length-1]:null,i=null!=a?a.tokenId:null;if(null!=a&&null!=i&&0===i.compare(r)){a.transfers.push(this._tokenTransfers[t++]);continue}if(null!=a&&null!=i&&0===i.compare(o)){a.nftTransfers.push(this._nftTransfers[n++]);continue}var u=r.compare(o);0===u?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[this._nftTransfers[n++]]}):u<=0?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]}):e.push({tokenId:r,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}else if(t0?e[e.length-1]:null,l=null!=s?s.tokenId:null;if(null!=s&&null!=l&&0===l.compare(c)){s.transfers.push(this._tokenTransfers[t++]);continue}e.push({tokenId:c,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]})}else if(n0?e[e.length-1]:null,p=null!=d?d.tokenId:null;if(null!=d&&null!=p&&0===p.compare(f)){d.nftTransfers.push(this._nftTransfers[n++]);continue}e.push({tokenId:f,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}return this._hbarTransfers.sort((function(e,t){return e.accountId.compare(t.accountId)})),{transfers:{accountAmounts:this._hbarTransfers.map((function(e){return{accountID:e.accountId._toProtobuf(),amount:e.amount.toTinybars(),isApproval:e.isApproved}}))},tokenTransfers:e.map((function(e){return{token:e.tokenId._toProtobuf(),expectedDecimals:null!=e.expectedDecimals?{value:e.expectedDecimals}:null,transfers:e.transfers.map((function(e){return e._toProtobuf()})),nftTransfers:e.nftTransfers.map((function(e){return e._toProtobuf()}))}}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoTransfer,u=new n;return u._tokenTransfers=b.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),u._hbarTransfers=m.default._fromProtobuf(null!=i.transfers&&null!=i.transfers.accountAmounts?i.transfers.accountAmounts:[]),u._nftTransfers=w.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),p.default._fromProtobufTransactions(u,e,t,r,o,a)}}]),n}(p.default);t.default=E,p.TRANSACTION_REGISTRY.set("cryptoTransfer",E._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(27));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(86)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(11)),l=r(n(33));function f(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(e=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;n--){var r=this._nodes[n],o=e.get(r.address.toString());null!=o&&o.toString()===r.accountId.toString()||t.push(n)}return t}},{key:"_checkNetworkContainsEntry",value:function(e){var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){if(t.value.address.toString()===e[0])return!0}}catch(e){n.e(e)}finally{n.f()}return!1}},{key:"maxNodesPerTransaction",get:function(){return this._maxNodesPerTransaction}},{key:"setMaxNodesPerTransaction",value:function(e){return this._maxNodesPerTransaction=e,this}},{key:"maxNodeAttempts",get:function(){return this._maxNodeAttempts}},{key:"setMaxNodeAttempts",value:function(e){return this._maxNodeAttempts=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){this._minBackoff=e;var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){t.value.setMinBackoff(e)}}catch(e){n.e(e)}finally{n.f()}return this}},{key:"getNumberOfNodesForTransaction",value:function(){return this._maxNodesPerTransaction>0?this._maxNodesPerTransaction:(this._nodes.length+3-1)/3}},{key:"getNodeAccountIdsForExecute",value:function(){return this._getNumberOfMostHealthyNodes(this.getNumberOfNodesForTransaction()).map((function(e){return e.accountId}))}}]),n}(r(n(433)).default);t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(432)),l=n(852);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e){(0,i.default)(n,e);var t=f(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,n),e=t.call(this,r),null!=r.newNode)e._accountId=r.newNode.accountId,e._nodeAddress=null;else{if(null==r.cloneNode)throw new Error("failed to create node: ".concat(JSON.stringify(r)));e._accountId=r.cloneNode.node._accountId,e._nodeAddress=r.cloneNode.node._nodeAddress}return e}return(0,a.default)(n,[{key:"getKey",value:function(){return this._accountId.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}},{key:"setCert",value:function(e){switch(e.toString()){case"previewnet":this._cert=l.PREVIEWNET_CERTS[this._accountId.toString()];break;case"testnet":this._cert=l.TESTNET_CERTS[this._accountId.toString()];break;case"mainnet":this._cert=l.MAINNET_CERTS[this._accountId.toString()]}return this}},{key:"accountId",get:function(){return this._accountId}},{key:"nodeAddress",get:function(){return this._nodeAddress}},{key:"setNodeAddress",value:function(e){return this._nodeAddress=e,this}}]),n}(s.default);t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.HOST_AND_PORT=void 0;var o=r(n(1)),a=r(n(2)),i=/^(\S+):(\d+)$/;t.HOST_AND_PORT=i;var u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.address){var n=i.exec(t.address);if(null==n)throw new Error("failed to parse address: ".concat(t.address));this._address=n[1],this._port=null!=n[2]?parseInt(n[2]):null}else{if(null==t.host||null==t.port)throw new Error("failed to create a managed node address: ".concat(JSON.stringify(t)));this._address=t.host,this._port=t.port}Object.freeze(this)}return(0,a.default)(e,[{key:"toInsecure",value:function(){var t=this.port;switch(this.port){case 50212:t=50211;break;case 443:t=5600}return new e({host:this.address,port:t})}},{key:"toSecure",value:function(){var t=this.port;switch(this.port){case 50211:t=50212;break;case 5600:t=443}return new e({host:this.address,port:t})}},{key:"address",get:function(){return this._address}},{key:"port",get:function(){return this._port}},{key:"isTransportSecurity",value:function(){return 50212==this._port||443==this._port}},{key:"toString",value:function(){return null==this.port?this.address:"".concat(this.address,":").concat(this.port)}}],[{key:"fromString",value:function(t){return new e({address:t})}}]),e}();t.default=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_CERTS=t.PREVIEWNET_CERTS=t.MAINNET_CERTS=void 0;t.PREVIEWNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUenyqJ4UaFBbwokatcUqAwW3o3rswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU4WhgPMjI5NTA2MDcyMjIxNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEm5b1+oG9R0qt\nzM7UZnS5l/xxUNHIHq5+NAvtlviCpJL19jrW9+/UOy00Qqc6vS6tS1hS+dNJmpiZ\nFN0EHew4VDR7ACnL4LDJKmIHWjQ0iwvZo5kCpO0r9BtPN5FvaSxyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUeciBviJtjeuue0GPf1xllNw7qvYwCgYIKoZIzj0EAwMDaAAwZQIw\nJeG0H2HdsI1VhOYmJmYlNeKCNgAk+LMorzPmsIInVBO2HK2IrKfpReWDS/m5j51V\nAjEAxKBxDezJDqAZHTkTXCg+X9Q9V6J6M5yDy5IS90aCWEo+W8C1Hc6hkn2/NrvT\nPhwK\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUUfjO8LyXBdzrzbAe1Yl+d34IDsIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAERwfj4ZtD/wRb\nf8h9NEMu2sQoLFK9Gc4SQ8o6j4ccLYGdgOoVoq4zzy4Jr7ZtCTuACfCfhp7wy8ra\n+6cugccaSd6AzOKRSVZvQvkUTFKIoAOKwp6IhlU48rmi80MT07eyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCGhfVMP72Y0G5XUksE3dPgFHrzkwCgYIKoZIzj0EAwMDZwAwZAIw\ncpX7irZWyuujWRYUs9kLNgB2YLQK+n8r1fH+tJg3+zkcZ2pzhGWmpUUZWOzsDqGC\nAjBUbhlmrTc4LrEBN0EMiRYzfPD2kBZxusLBDIg/aDYERCMcsFvF1T9SsuasF/B+\ncI8=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUIo4L+7xe/mUmpKy4qOAQEIxz8UMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEoFgCjb1/7BUJ\nEXKIPJLlsOSp/39G8l92wOSr7h+Py7iwVwu68H2ykftMOq3tRwDRXZHz7ViqcIZ9\nlfMcS8sbRtVm9tBbNciVUqTLWX9nHr/c4PhKEi+LdgtSUr2+hHiWo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMR89BHC3yKC4YwUgyBVQUGBCprQwCgYIKoZIzj0EAwMDZwAwZAIw\nUs2BdslcScIwcmxoB60K7/1BPfQI8ccDZIMosas6U2zhinTnRKik1T0i+uHhLl8e\nAjA5apAwSPTnP7j3Bo/FOCkfjTqOjwp2lUqzDJYKolKsHX2sy8hX9MkYiY46SaJ1\nP+0=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUWpji03mJsR/16MP8BrOfpNz7aQMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE+KDMC99Q1rWi\n+FwlytGMS5qzTDytCvk+PzdONnDZ/weNSv4j3BXSo588IwhIxLtfcBlyo/+PmE1c\n5qGFXuMoZjGr22VpvogkRgPejD+Gawb4A2XHkMCD8NmO66uPw97po1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUN1qEI4eQ+WHavb9ypGV417NvhGowCgYIKoZIzj0EAwMDaAAwZQIw\nL0khkiDOiFRa3wx9l5JNjaSRePPc3ZaTaJQkPYeauMaLWEvmC/0e2/e9gPm5qJ8E\nAjEAgXQMko3vNB8VRN4XjyFJa8p/muZ/tLA15wPnb/boUmiZ+njDDSaiu8tIQrTB\ngHW6\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEJ7AJvrqDUBNKbssGoJtww3v+WowCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjAwWhgPMjI5NTA2MDcyMjIyMDBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEfgJ8w9GUWM3y\nyusedZOFQrgXFVsdtRsMSHbqyVCN6+Wow6SIjy29GRMSP5R2aswupFgh6lXJRqnr\ntY+hpRumFKsmSo+5+l8DBcql4rzs4utESTehM+Cq9LYc4A1z0UIRo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMCm3UqSbT01Zr23hLzCGnXbDa+MwCgYIKoZIzj0EAwMDZwAwZAIw\nFNcN7mKJo/bwpRT+y/KbYkCJsvljdbXzJOXXQ3e6J6R+0vLqcT25J/ry6pBZMUwR\nAjAswu29z8KJCSxnWwnPpHDmkRT15zG/xS+pAmx3oeQSqp6ZD7qpdJE8zzhbfe5x\nwAc=\n-----END CERTIFICATE-----\n"};t.TESTNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUMkNeM6Sbk9ZFYmRWZmSgTQHHWyUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETLLoIMZjEhDP\nKLHS7bJT4OTYGgR/8mB65yfx3KqMLYFF+q2SpWkIrYgUQLVEUEibVSnLlxRUzH7R\nszcKynpTwh0W0yfWanZKQg+RWoKkEYlu2GvkUtJb8cRVM9NLmJUeo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUSrIepwFx8gZ8/G+WGaxs6GgkMtQwCgYIKoZIzj0EAwMDaQAwZgIx\nAJxC0fjB1OrF9vkCKsfnPS3Z+1hscrZhEDG38NxdLEAfPQ5VmyrSBgJy11FBp8yB\n0QIxAKzbge3Lf7iBMwYwm+2M/GiVgmHNMLdtrYuerWpdbYOHgRNAkyt57JoThn0u\nTzkd5Q==\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUGLriiLPacglp6U+BtJcF9TI7xEUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEXhR9cb6mH9AE\nGNSGk3OkxN1C/JW49ddYZ/XWD4InjS8D1kXmB1Y39v1mF0L1loG6lDT8Zp46zrj7\n5zMONXZeD2b0mx5hHhtllPTpJ10Tlt9FDoyFbKwPRQ/SAPNADfuzo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCaKtx8RZ1XJO9rmZMbIcFJZkcv4wCgYIKoZIzj0EAwMDaAAwZQIx\nAPhDW0VrNSmq8hODdhIVV4GyvpYhp3Fksg+sZr3DmUatwn+ptj+X+9IzgPl9QYE3\nkAIwcy2ixgNkjC/DYVmgT4MpUnLneLK0gA23Vj2QwACaTH99H/ybqUH7srj0POB9\n5wvV\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUEMduome38hvAuIKoGjg/tHatQZMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEl1olzP1L4WgX\nd7aujOXmTQZt3tEOGzkMa3S6qJwISLBI7Tb9KaW8zYIe9xWBVAwphCbD0wn9xpPV\nwMr4uTn+JocugYBbe2YoUGzWTkxWnOEKXbh/nQJCe3XE/C0FY8fAo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQULfw7LVtTiUDVIvZwhhWW0soQtSQwCgYIKoZIzj0EAwMDaQAwZgIx\nAID5v3Lo2zlnpFzTdJFqBpw6fV+vmpI+JBj61f264J/uHMbELiu2dwxhwWaMElX7\nwQIxAJxccFr7Bf1KjaMyT2dq75zQzFuKDMj9x92yAqM2Gas/Yay+Ccpm8FBn7BFl\nke1Qwg==\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUcCg/gZGxk/UjYkhW1jg4Zki+jfwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEOSsXBZicyrxy\ntHJHKh04Mvu6SKM49IC7rAXw5CjlOod5OTeHg0fa5vVoBME4mlWP+LsMMqf8welC\n20b4wMwUC1Hnd66v8crX8L1wvZ9EmKLTvhTd65bS5zloMiSbpdF2o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgMMwqaGuUT6JCH0gsbqullaW6/QwCgYIKoZIzj0EAwMDaAAwZQIx\nAMggJ1eMmT7C14z7wHCsOdDOgmzg733+a5dsuAcxknoz/sQLN8wqy1JxShWgEIA/\nxwIweTDAX/4JZnr3mlSC57lYXbHk/c319VfN9Ybxg0FaDXa8tOqg7Ml6Uu3IGujQ\na3eY\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUXADwhiD5acpA66GPoXuAevBfZBIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEBgLhLiGz8qWu\n50vzxSyQkrmhpxuHBJhpGzA0WaUJdAUlaUOL1753ZxxA08wUmcozILNEnMaQ+ROn\n+fuGctv90ZcrSekODjxjbKH2ntVLP8xwkBRCTJ0WRBNenxxBD438o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUhYOOD/z3ty9O5GuSTXnyujIqBRgwCgYIKoZIzj0EAwMDaQAwZgIx\nAMxbZ4gvkXaORauQFUPRYwOJrihWIA+3ttGDua//YfEbshytQ8b4L65W/1Xs8eOd\nDwIxAImwTzRam8tScdOzmuGgPcML2lkETMpMA2rZYVyEL/VNktIxvB2oE+4M0v5l\nr8IbTA==\n-----END CERTIFICATE-----\n"};t.MAINNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUZWoT9TlgbZy+syLbqZhO5++1cVgwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8NhDGK/dgWvD\nRHEJ8af7CBDdhvujH5XIrLen33GTLY8DbJwJW2jdsLGx3+DRVVmeNQZxCbcGj0e2\nIyypkG6s0mtnmeymD8mI3JU8m1aZiuIptZSH3Bw1BNn2hKU4x42co1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUbYGliiNtMkGaroQxXWCl+kYHDBwwCgYIKoZIzj0EAwMDZwAwZAIw\nImTOEYu0y73Ggt4NAjFFsN2sV7CsEL3NoJqJ7MZ6U+b3Ax1hnc1eE0oei6xH4VNF\nAjBB4iZNvAn6Esiu4k+JPlYuMesplgMv33fU5GsfvLIovN8pOJDe0c+CUmsnfGbP\nOsQ=\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEGWU0F4aKffY+le55ahQaScDYDwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEqW6TqxMmjL3h\n9AVBgfVaFRZlXUcyWa+QYhzxr8sksgJqfDbmGtdaHIdiL1qCPuC4v4G3qrAbXZRm\nTYNo5Lz0X2ic5pES6DbacdjOgHH7TAY4BVKkuVrydln2jjhh7SmBo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUcBlY5a1rV0H1iQuJMwWxrTEWQ6MwCgYIKoZIzj0EAwMDZwAwZAIw\nR+mY9B2U26yD44s03hjz4TlpkyXbVfmgL3Elqo3lrWDJtvT4zpjGjxg3Q1P3SpZQ\nAjAy9DRVrZPzq8iq5Ir7B8XgLQH5QL7SQ3tUL1HzXJYOukvn9Ofr+QADhpb0oJLB\nKug=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUbxzfD3ihIK5snumqqKtqtcBPSSQwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEWoAjWmW7vpUr\nU69wRbK9Firons4kRoin6N8lMjCD+xzsrsT6/wycpzC0F8fxfIvOYSMWRtinhOKl\nZAxp60OWYP87iH7RqWBAnHIJZj/znKTGd+8Sqp/RVQmButFHg/+Go1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUTMtwuDzI4Hun7SPp2Nb3scjUUXkwCgYIKoZIzj0EAwMDZwAwZAIw\nHKAgaX39Lgc+4/xHXzZR9mi2p3pf6CDO85Xm56UR/t48HnBkRorR3TFCBXACeIIs\nAjBtXglpDnRf6M+nVBlxLdwCQXiwr6vQJ9+dUo+suNkZ1JBmtHypyIqkG2yT4z9C\nLcs=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUPwXdJvpCJYO9lm6uQN3S1aBi3PswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8PwBQ0ywu+0t\neIYbaiKwzGEScQMOYFYAMw49++6bGRiH/XZjsypqlJWy3F/mB3+HNVZsqgB61Jpj\n2p98Afkl57MYWhWM29t/x5qAQ8LhKGu2k+BOnCcvHDU2pR+fmFSOo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgI4r3/iwzFN2wh76y/4XDBk7wgkwCgYIKoZIzj0EAwMDaQAwZgIx\nANAjwHdTWYMCCjrtb2NWzDpsKjf3m6ZcaxbEcM1ta/Zji/4x0+VRZa917CkfaEsr\nLAIxAK/erPvIXRU9eNaK/TAQqppSRaF35G6iNnYjQZzfjTU2DczhT4oCjKzGoCHT\nkI1zOg==\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUXUGzJj13Ck2Cp0BKauLOdzgCPwIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8Ee64Tbu53i/\nKsuLOJG3GQ4e9gQ+9BtEy7U8kfFzRHh6Ejn7LOW38ZdKX1HP4zXuUusjNvytqDvr\n7eclitqnegcEOkIeFK3wQwBoNILuq+r4LRVi19V+AIcl5w3qkJvIo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQU2tbfu7hd7USgbS2WsG/6BduKEAMwCgYIKoZIzj0EAwMDaAAwZQIw\nRw/BOLoScmU7P/1JnNPsGarmnvcuJrokAv1wk6j8s5LGuQHReX+d+O3RPLggwcAY\nAjEAjoZnt9simul4cVcVy4G/0f39atanUva17gyzlYXEYx7B6UloxLeEcZhlbBf8\nGjRf\n-----END CERTIFICATE-----\n","0.0.8":"","0.0.9":"","0.0.10":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUNauEDBCmP9igXLWtRpzkQqIGo/wwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDcxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ5WhgPMjI5NTA2MDcyMjQyNDlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA3MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjbkoJBshQXUy\nqm5K8ldpTDR94Wk8iEM7QwHfceIxK5pPgaVGRkoJyVLSK5LMH4jyaIHUrtA0lIBQ\no0MsYkq7TOOm7+vo1Yrd8EMbu5StMb3gsXUrj7E/SBKIxULak6hCo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUyKHMzIBPRV/mrgG7tIjzOiw2xbUwCgYIKoZIzj0EAwMDaAAwZQIx\nANsigVtLgTdKWBPVJPstWA0H8yihf0/dmM3GO4qp5keGTWz/O3tnom4iDB6eSrcA\njwIwU82Dh+Wxl3kAD3YJH5VhlfHTm1rPlJETBHZgvPBOYqippao6+WZFEpn2/IDC\nNTjn\n-----END CERTIFICATE-----\n","0.0.11":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUWtnJm2kswnXYu7/S5BnnTQiDRcUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDgxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA4MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjY9Rl+s00xFV\ntdTpAixLR4kJIGLfSLOdm+ofU/KuKMRSz5x1ORhIicppKZK24U5WLGXQU1fKLvxX\nOmqwqL+6oAONmiHszqVdhWne4QPUba0yw7rf1/OI+IFF1HRK3shQo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUb/htoTodbq5hjP5RNlQ0rkKwWB0wCgYIKoZIzj0EAwMDZwAwZAIw\nbO+9yArr21XKXjYHPadEAYINDxgXEC3W8e3X6MJsHCIZITddWWOyXRNFhz504vN0\nAjB8aBuhrKcg1b4CrQDZQcosyVPUGIZKkXdQFfbVdivKrGZvqLS+GdPLd3v2MmHY\norA=\n-----END CERTIFICATE-----\n","0.0.12":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUHBsegV0bKtwpHRoOnnhbK7CTHxMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDkxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA5MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEK+ZAs/00RXaj\nbuQJJy4zwr/YTj9h5V+vbY7sq9Z1RByEwTRRQOI3OuzzMq1EWKkVJKF/QF5b4yda\nx6W9O/NT4EjBXH5XR5X1V6h7aT01YBqsxgMxuUP7kw9K+fW4k6Zao1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUKbecoYirLjf2O2oPkoggEE2P7FcwCgYIKoZIzj0EAwMDaQAwZgIx\nAP67wsVOkeFo/9QRo+PnZhzEvjOZ/+IUoUhimdljcVwn79tzNP+obf7VW3Oq1wH7\n4wIxAL65+WmMTMoI2cN7TCiL7G/W2ChDsASeHfaP/4e4ZViNONWotlY9i9aS3Kwt\nLTea1Q==\n-----END CERTIFICATE-----\n","0.0.13":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUBNxMZRKru9jzFA8zsOAI4xkMFCMwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEwMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MFoYDzIyOTUwNjA3MjI0MjUwWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTAxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAShUi9sglwb\n0U8QUrGOXJuHRXA9HP8RypkgNBwNRs1YcmPLcuwK70unWlkB81M44IQ7z/dG/0cW\nhfFdRI5x4jAeiUFivmWmMLT6lJMPxJ0BkWTGVFVwI3SKcgSvHP9pNS2jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqIMCDzCKKwJJLCXhu9YJYPw6lsDAKBggqhkjOPQQDAwNnADBk\nAjBl0bJG2A3443ybvrkKjWu8do6nDSR08/M49+19QfA1aDw0nb2sdCOE+xNitpQ9\n7ngCMGuQHmnKA2EyOIVpNl2EtRoG+vdmLJQaoukhmCWjkGrQHkai473tGa9cRZ/8\n+RZFzw==\n-----END CERTIFICATE-----\n","0.0.14":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUJcQrEmPlIh0KWwiC2X6lZ/OdNs8wCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDExMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTExHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASxRizKJSbB\nHmG2amvTHLCyExJngCh42agaFkv5Ab9mZYbqZPe0nUn/8RlVAvEiRNggCMYXC6MU\ne4J6D1aeLhYaa0UY8Fmxd20NUjAOWhJgUXds4ILMMVG+pevofeC8AsujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBS2Ic+LU/6Wssns4Yyf3N6E666xDzAKBggqhkjOPQQDAwNoADBl\nAjAH0JMX48GD6vThA6FUsVnJmBID376PRZgxhuZvn9C0HawvNjZVQTkpzpYCwmia\ndO4CMQCotakNxyiOxu/BbnPx6ld5+dqVCugsfqClhUhy8ROpNHfKxp3rW7HopowT\nWiMlIyI=\n-----END CERTIFICATE-----\n","0.0.15":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUSFFNFv1iquxd5txlWA3PlkNju2EwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEyMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTIxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQus3nAPZkb\nja4Efo7iD4s8NLsFwEwQXQBgBGIJwtA2JRgLyXeWpuu125ib6qJzT8CHvQZhel3b\ncwYWi4f2JpabMDepHELLxwZ9fILnAQ8GiHlzhrVq2NI15DI84dXVe4OjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSEO/JFC5/fDcT2gtipDMYMMTd96DAKBggqhkjOPQQDAwNnADBk\nAjBalAU47XQL4ziHD8lj21pcp3+R5FKzn96HclMT/vraknCT1Sl+vCf6EYsqmi6Z\n+RwCMDpxL6P6OMqyE+HzAeYQ4Fa7MYEQfZGMjka4zxetBLvIpwUCT4EAO8gv9GoU\nwCBUzQ==\n-----END CERTIFICATE-----\n","0.0.16":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUdnkil4P+VthVMnqygVwGKLt7VfAwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEzMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTMxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARUdz9ig/iA\nhEAth2YinHKY6WM63BAxUVItzgk65l1T4wTzwoK4XEwclY5vIeFmZy2e0s95lWgq\nSI68VS9gmJ3xp8Q9wOel/bvuF2tvNZmF393TeoNQQVHrQM1yJAx+nPyjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBTBFdNwHKSRDo6CxfA1aglY0N8joTAKBggqhkjOPQQDAwNnADBk\nAjAqPIel58Rcl2kDxZxJPD9mK9xW4TU+d2NuP3n140TQ6nPlw1OwCPI7a4i3wfEe\n08ICMBbrpNRdFZcvy76KoLPfTPvqbtWWaR/0tLZg4Rjj3x7SYgUg3vrVDmodHGkb\n4T2Raw==\n-----END CERTIFICATE-----\n","0.0.17":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUDg+G4Ep+KEmIo+nCOY8DjFX60swwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE0MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTQxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCQRL5xUUh\n1bsTXRPAf/qVFWEOxsJTiMlF3+UJ4MajWE5zmc2QNIzqj7NE24z3fNxgjViNK/8+\noBNQeqXfyJ/4etNMzTyG4JTsvWRAQ3aR1J4WDbfwpcgw6AIOKq9OLP6jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQB9V2fygf48zyyVL3bnAxCLDUV9zAKBggqhkjOPQQDAwNnADBk\nAjBonlThjjvi3fg7ODQcatPHBkp8Yon/p1ukm3YzYA3kitqroXU7BkmwRae2fbqD\nTTICMHI+fAy+xWGwXAFNcvNTop11IIoszcgJJY+1Mc2Q/USk3pP6iezta+rvnaWu\n7JySHg==\n-----END CERTIFICATE-----\n","0.0.18":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUBvI2Vq6O8yXNzbQlj6uQOdpd1lIwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE1MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTUxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR+jFDSzCdn\nmMQpgz/vrmD/xioMioumUmyLAkB+voTNsMAOtiaDVbvJty3b4SJETv5tuZyaF5Gb\nQAYuKsP7X8siCCVLZC9i9nCg46NHtuQkEmw1pzUUDmYFDfSV2tWedNqjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqvCmoaVEp2d9WPctby+ooPMGmvTAKBggqhkjOPQQDAwNpADBm\nAjEA9fQ2OFZa7fAQGGYydfVaUF0ObxKj3T+hyl0jiCKLe+hyxJSrXCFS2BM71UiG\nZMVxAjEAmCzESBzTVvl4Uv3TyActGTijTCqTNpN3gJmQbZYjKVtqf8Wxj9WeH0pM\nE8BlA/qE\n-----END CERTIFICATE-----\n","0.0.19":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUZBwp7UPLJkDgngbUIx5xjbAn+7YwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE2MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTYxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCVYu2uF3T\nkCkyRP0FfXVyyTA1z8DFqCKGrcODgGJuVAk59H6u8FIRsNipkb3BXFI0xGccok5X\nT+t5bMaGDHYJ4fjU78UtPNmankQ5HoiMRJpy7Vn8mzizUzUqGpnhu6GjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQzE6RGn4YlIbdrl0niKWTtJzfXoTAKBggqhkjOPQQDAwNpADBm\nAjEAobnXnwlNGNWoHscbl/ytUBSyjC7V11sLYJqtORSRX3k2+bFGsg4ltmOVjTdd\nlXatAjEA/Ja3jufmdruqfLa6qigXuYI00YaI96sOwNhdHlnksYfqF41nDe4BsSW6\neQ6N5M9d\n-----END CERTIFICATE-----\n","0.0.20":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUE1ZRB5n+Yby+Mwgb2xAcVfTZ53kwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE3MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTcxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR0OfTmHjxT\nkBiU3GMa/bTvlTswCDAuFQGIIpMWHaf6V4ighzmn20jCg0AVFStb2q7YLRr4HUx8\nToMzsd7/yjl74BwJgfZnL75T/JInwyMgOBiCTXEf6qVDvhNzL4QJuVujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQFKRUUmdFcDFQzBN9XqMvLgPd7NzAKBggqhkjOPQQDAwNoADBl\nAjEA5MUUXSehY3KVIv/2LMgrqo1kPiV39fwYuLSnsMJ67wK8yN1NAkkycg6q2K6g\nrBIvAjB3J3a40TINOZTYG+eQs+MSWyfANJLRuJTEOorXzMWM6+05+JYhPnLA8hke\nCRfzmSw=\n-----END CERTIFICATE-----\n"}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_ADDRESS_BOOK=t.PREVIEWNET_ADDRESS_BOOK=t.MAINNET_ADDRESS_BOOK=void 0;var a=r(n(420)),i=s(n(74)),u=s(n(36));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}function s(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var l=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ad0070a0e33352e3233312e3230382e31343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340acf070a0d332e3231312e3234382e31373210a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ace070a0c34302e3132312e36342e343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ad1070a0d33352e3139392e31352e31373710a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad1070a0d332e3133332e3231332e31343610a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad0070a0c34302e37302e31312e32303210a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad2070a0e33352e3232352e3230312e31393510a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d35322e31352e3130352e31333010a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d3130342e34332e3234382e363310a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad2070a0e33352e3234372e3130392e31333510a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b35342e3234312e33382e3110a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b31332e38382e32322e343710a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330ad0070a0c33352e3233352e36352e353110a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d35342e3137372e35312e31323710a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad0070a0c31332e36342e3137302e343010a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d33342e3130362e3234372e363510a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33352e38332e38392e31373110a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad1070a0d31332e37382e3233322e31393210a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33342e3132352e32332e343910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390acf070a0b35302e31382e31372e393310a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390ad1070a0d32302e3135302e3133362e383910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a60363465303938363135626634303566376564356134303133343436623839633438386366636436626232356134613637366463373765656131316433336437303236383266306136396138303330653863353737376430653432323033373939")));t.PREVIEWNET_ADDRESS_BOOK=l;var f=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0a7f0a0c33342e39342e3130362e363110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a80010a0d35302e31382e3133322e32313110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a81010a0e3133382e39312e3134322e32313910a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a82010a0d33352e3233372e3131392e353510a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a7f0a0a332e3231322e362e313310a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d35322e3136382e37362e32343110a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d33352e3234352e32372e31393310a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a80010a0b35322e32302e31382e383610a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a81010a0c34302e37392e38332e31323410a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a82010a0d33342e38332e3131322e31313610a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35342e37302e3139322e333310a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35322e3138332e34352e363510a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a80010a0b33342e39342e3136302e3410a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e35342e3137362e3139392e31303910a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a82010a0d31332e36342e3138312e31333610a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e33342e3130362e3130322e32313810a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a82010a0d33352e3135352e34392e31343710a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a81010a0c31332e37382e3233382e333210a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a83010a0e33342e3133332e3139372e32333010a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e31342e3235322e32303710a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e3136352e31372e32333110a388031a05302e302e392806320218093a60363938333261373361333630326538643166626535616435386431633236333761316236373264373165653837616631306462363438656239316166623232383235336231663437653537643364346134346666353437623333393461613232")));t.TESTNET_ADDRESS_BOOK=f;var d=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633435363165336332373863643635306538306334313363613434343233633163336331336366313437356636663639373664353937616534333262343961623432303836623739623834313332363035346238623364636635376438666364373962666330353831383363613234636434633163626335373465643131313765326635623762336336336365376230366439623465666366373337353633376234316665366635336338313162396465363134336633613532393537636466393536373735313230623333373033666635373632313430376162393537356263326433356330643434663039383366633165663633613466663532303966303730633932616631303632393536303163393662636564303634656331393031393730313963363831316334633864643830636234663461633731663961643736653761633839343536666266346630313166393061626432643930353336653832333436353166366265663932376533643564386237626634353930353039383362656361336162656632613964393761663334353737326137373430653936393932373562303138656130646632383661646436636539323365663930386662653736326137356632313131363836326462343464336463613164343462346432653864633130363663353030366262356137643935346164323535643462363033323733343735653531316165623438356430363961303637633061623563323435333863393333633036623561366165666139343030356332393135323133653463636461653663393432663632373266396464353238326436623839306631663230656664323339396364363734393234666135373034366163366461333265373339353161373331313365393166633262376666323965343835316238336666333966383362613965633666303863656664626236636262626666616266646661613931643933306637323030646134383133376333393463626431336537303165636463323631366664323162616436383161613466303031303230333031303030312804320218073a603665396138616263646364653665313134396133656265313766643538643839303538333961383664623732623036613365613230616131373666383638623235343838353261653432336437613963366237636666396537313436323961320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613163343037373135343330336363373263346662373639326333663934323531626465633132333961316637613839373261626539316133353332336662656361363235613766666165363430366338353564633261663231313039303062306466306536653664623736333634646661316666653835656461353637393336653239383562383536333461333261613532613635393964643663333062653166376136633562386635656563616632363231643861343539363832666364326462616164313536316431316633336663636237663535303061633536386431363564626561616365333238366432383934663634313239643738316436633732666437643539396339653164336166346161343333633233623931306661653463343834313634316636313532366164373837656265613533393837343136376539643361373363633066623135363432396431356563373633613664306630363131356137396239616637383364373762393864383330393661613437343366393734303864396531346263663464646666653435393137363838343762343063623864613763613337353235366432623933356430393566653235326661653831666636653337663834643761393064376535373061346638656633633764373636656564613437326630393230313939303135613839303832353961383733633534353466636262646361643265353238646538353435356234303833633764633461646335613938386530636464666463313539643564373132616264353434616137336563303239303839383134633938613434663236666330363434363539633138336533313834616132373266386431646330626661336530613536303438346362303535626134646262356363333339656338306264313164363432646333613730326538633730336162323139333038346439626436336630646665313261343333633235373665616637383163666164383637656637306264613631373638623262656631346635306336633362386230393666303230333031303030312805320218083a606464336233653763643361323537643832373665343635333533363162303138623730303931663438363635653832303031306538316563303539326236396264346265316662643765636435303964303730313364643034313238343266640ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623263636163363561643066633736343561383137626661626334383761643765343133313165376133313938623337666238343264383463333935623366363764366264383438663130633666303363323930653866376461613864303031613834343164633335326131393136306133313933653638623832656466313961653637363933613961333364346362383765373839613130373037313535313565613737326361613862383661353639623931633534353038333564396333353466306461636563393766653737303931623435623134373639386237663836303134323264636432323631653932386465346461633963343264636261666466393663303732333362613330323730373666333763393639653865643330623662356438663530333462653764393263353936663862653836316535316663633361323432626639643862653965326139653865306631353565626366663233656666613763643537633130353432383131643830373736633935383535323666646230656161333465653139353564353131313933393066653837336534633034646564643239313635383834623938623436333038373838616537666334643461613461386663396263323637346261333231343933623632343435356164343130633164653731626339356431643931666130663230313431386137393565333039656166323937623639396266323763396661323736336364353963656230323165313662383230306331303630663238313766643833636663373637313833343839343631653335393932393162333830643665393339626161346231393233326136613237326464653635316638303436666463333464623237366137373764366662326265633332353562326363323434623461663536366231303566333063363530366464616530656233646564646366393437626362396336306530303039383466336234613863366334656434626639306263313933326237663934646333616536623336303030386562393032303430663962303230333031303030312802320218053a603561383634313561303861306138323566336232656237353031303135353230326533313234336665343161303333333834653738633138633131653565386632303964343933623062326664343565303662333734663262363964663564370ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613365333762373663366364356636363232643639323434343464313263363737633339356632623539303266336262393862386138623530353561373037373036636130323863643735303630613264383730326432643862303439343762646366653061386331343161613238343462316530366536363139303031326538623633323661623066613331373937336263376362346432393439663231303861613034633462306339316261613537323866356235363232656337356162663537386131663762343165646532613637656264363963313865353831666466396336303230616330646539636132633331663063363436393030333331316662623563653764623439633738376531613764323761613432356565376238346461376536363933396639633830643065383266636535356530326466633862356337383431386132366161343336353036393837313962616663656366306264343930303061646463666134303537303862646265666262313937343964323264616230303765343464343565613233623130366638383334633135326532353036326434636632346666323533353663376562333732393130353339336662343962616239303461303266306630626234313763643931396433353238393031323865366262666634666163396639306465313138613937346632613664643031653033326137396231373866363066613166636262643032623537303466623436323935633135313930383136333733656464363633356338353639373866316239353033663166373362346230626538616261326564316665656164353939353362663832656664653933613334373161626435356364613362613861363733666262333739393734396662303036643030336630653633663636356333343631643261376232396463386232303462613539613635363638613436616532383738663030643166393439306466396532383066656266343331356561303465616135363861336139666434386336326336336236656364613639303230333031303030312803320218063a606434363430333938303337393230373965636364356134343331316361306463323262353065633839356235366535336431326232396637326463366462613363616665326535623831303466626461303338616635623434376430666231320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393361323135636334613761373232636165396331336162643633366466393963636565633661663964623436623639666135313637313665663530636532343930613938316530396162303139636132636234363831316235623631396431626431643565653666343661343263373737636264656536343261313438346563646635646464333732393634326333386336643433613838353838373434373566353832343434333636346330346466656439623839303435666230383565323563336566636234383431373333656666376335323963313339653639333530633263643739623263386431393637396137313265346538636166643332363735343162383332623365313061303132353564656636396466316539643362386438656166303331316465363764356531326232366464303164626264396433653432643335643964653237313330326530663166363964383763626337616361396538383637653964343238643363616230363636656234393064356662616233306266663366373835643033663230373261343362623962356535343635366135393263623631656166643561356566323834633763616563363666376634373332356363306434633164323766363631643861373438636135303731633036656631333464666639366634303836363838333636643436386132343738303031376530623536616261376661623433623362376330623737393036666165353438326633323831316332393265366231343435346531346238393438303161383661303363633437373934646430643734353237613732653432346564336166613034383939656362396136336632613961653732626537666139383961646630643635613332633835316439383031666334313034386466333335363466633762333137303765633866623830313430666537623761316661313230626131636236363033323463656666623462636332643962623764653063663534633831396632646433626365616465633963323566356531396463396231303230333031303030312806320218093a603365303261363732306334343636353965383633303564353562666565383230623335653635306665636163633535333039373435356532633465303332636339646564313662316262343464336235393262626163623663326266663165360ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303930323539663465336439663066333934323536353438653963373330386231306237333430336363393039346439376164313531623737303631373062393737326365623634643636326563656639303161386437643135643331396135396338623731303731616363643839356237633933363130646336393736663637633465313732396261383337336162376535326133663363386632363534393164646536396436653039393934373065373434353938313133316264393663333665363836353230336662326562643564353065616461666237323633393664656331643931373438393862346539626530346337346433303466656164643963626433323334633362376633333036633939636230633333396663323539363962343164353861326237636663313833326532323664383163313936333939336532323535613038376431363938633033643432313062643634353830363434643039356361373661613137393465646434306331633837623566383261386533396636303365393731313662613034353738653765383033343634393564373835643465663763663737313462396562366635663965306239613934663462373338383436313962393237346434613935656631353735346138396439376566356331613838623664363933653061383065626435333766633963663063613931643163363264393135646537656438313862393532653634633230303239336565386532383461343136613732613365313266633764343233623135386639623439363630636263323436366662656430666564326532346531303266646539343265623463666439346265633436643364393066633038633339666563626130336530636132343634616536363462393739353135626132396531663730326333666537303262653739333739366438656462313761613438633039323930623032343534396630363131663561653233656437653136343432646637643164616432323836633262623039643535323264643365643639386332663032303330313030303128093202180c3a606339373462623938326338313931336237333236643561336639646363343836313261313566376161643032663230376230663130636432303137613666626666353830336537636139626662343730396162323862366230396435623133660ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303962646438653834666164616133353332666334636530316138613137643463336232333266353061393739306532363236383465646334383233653831356131626435623230656365613762663536653239663662623762383331666233626636656663643134373566306238656435666662306231333835623936643136366236323966303339366138666566356630366534626361323565653461313334306565323633613464396262303230643866343732333036663364383836313338646537613031396530353962643061666339303263636261316132313361653264616136306338613031333735356665306134386530333466356234303233613264616465616138386335343836383335336163376137613364663132623266623634313837373465396231346265366561623863633237623838303132616436313632646137346530656562313631333539303566343337333734646162383538366437353061323662626433616332346165643837386334643533653635313037326338373165393464376163633537356339363733383137333461353366656166346437626136626364643234316363363435386336303837643836333032616132353163303466366435366239633332643764393636323437353065643035353738356430373733663433646330393962323863393232383131343865366338316632393766663964313636653030306163303462333132343138363737356663656637356635656261306331303332626631333064663663643761343632313164306466336530353834643932656136373334396438343930353038656234656638386635346338633364343836646538373139663130666139366665623835636337393630373663613738313331386565326439656439303363613133333630343063353961643931613464326636393865393130386165306564623962316362393561643333623139376666623138626431626138623536636265653261616539353835656365323038613165313462343835363436333032303330313030303128083202180b3a603937303834333033333130373866353638326337663332343464383263336233653238316139313837393537386465656163646363326132656265353431616631383831313561643265383338363565356635643234376234613138633165650ab50722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039303938383635646566326632616233373663376630663733386331643837613237616330316166643030383632306333356362366562666362623063333330303331393361333838633334366433303233313732373031323139336262373666643330303462383634333132633638396566353231336362623930313130313530396465616239346632366137333265363337393239646134633463623332353137653361646262333831316435306163346337376331666365386236353136303632313566333437303766336537323635353435653538633839343630396532383337366264623737373566653330343339653065313539326664636230633365653163333035373733643037326136623839353765616663653161313162653936356564616666333834333336366362366134346563323561383930313036653632343735363766373662353530666461343832626165633633303764363938656338383834316664363666323366323130653437623861396463626136626134653166613731366462333363383065333038313934393664636235653536303966623665376336313533373962646465643432376539323331623932353463326261663934333630386138366436393861653961336338363339646638383764366636623561373133383564323433333864393131613231326266373166316532616363386231383662393665633865363963383662366430353832313737373661303963396336383935336564623539313635373862356132363362326634363965336230633037656164613731613434376565613766386663316262383037343235353536376237663062643165366166623033353837313863393862343239653234623232393835393666633736636636616633393663613934333464373932366563376433376434623932616635366434356665666638313936303935323234613931366331666665366236363765323535666333616338636363656639323064633034346232353030333133326238373830363734326630323033303130303031320218033a603333373339306438666561313434616663313265383132353461323864616336656138323839333833366163303732656666643835653061373734383538306566323830393636343863356137663864626234636538313437363831353133370ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130306335376564623966663237366530323362323830323163623164383763646631393636623639386366343865346561616137633639323037376365656538636362323339613463393231353937653865383966376363303564336633313331353738393736633465333134343035643461346530336137323431306335633039636135323761643561383562393938363337653732613332653166626330643535343662323436356539653830366332646435303965623035306162356662323730363366643932383135623164643236383965323131316361656236663534396539346139663030663038323164346361366336613631313766356135333363393236336266303734613330643563626566353064316338633233383762636139373265646564613039383362356430613662353764636230303230303036383238623430653430373662343837306232346261643834303536656535326235663432326538383430303238633235303036333832643865396336363132323566346637366561373265333430363037653966633666336332303433333037366131636138636231356564303361633839363664303530376263646536383165346530323331656539663837643131316537623438616338663934643264383432623532646637336635373363633534313439363437393763363236393638666661653734313866336236313039623561306630396533323233663461346435653335303964643235303133386636626331376266366365636531373539343433306466313830613338653930616466326166666266616430633662386331623837663137386130363164636662666638623932633931363664383734633166663561663466626364626665386539643039393337306464663630626537343736333364333665653465623563643531663665336333333965313531653431626462356135636532633863393761306134336233636434636330383138383463383739663964326633373438343238633835373366313763393066336362643032303330313030303128073202180a3a603734306166366266373339653838336338386633333434633961306638623330316533396463393831633531363365306465326133666634326239396534323665643765353662363766343231383530333834356466363266343963396662300ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393133316161333638663933343532323966393762363235396363636166666561323365303063643565616430326533663639366331653731346565333933396461643836306533386266393561323937346639656234386539333433663861616334303565613935356430353332336531313762336231633934383133613361663432666538303832633364343362616631626434643833363765393364623030616436393665363237613130333661653533346630313165616435653536663337613666666534346236623965303939343031313932616435363061303334366234316138313030393566356632643766643332643665656236353562613735386336623532366331323933383661663731393763376135336165363033643632323833323235343936316631366430656661383037396137363835363138383862653733333439323231373935366262636166616562623631333563356662623234383464356234613566646630333336616330326532366331363532633162643865616633306461653164366433656230306637623466616238643634373866653864393565623931316466393636613064656134653532326462373662383936363537306563633561663039353136343234663061663566386565363665333836643536353037313339393731363961633337353733626635326664303538646539356162326666363865363831313161623233343035656139363462326262383864303263306631636165643731656364643465346534303835393438373666646238353030626335356337626130323036366530356162393864396637653034363664393730326562353765653337323266386663633835613735353035666633323632313730323838623738383732336164623937653464653536323063633930656164313338326663643735373138383966656662313165363737316263336636663366656231396337616335343238373864303361393032373035323663336565643234393465666635346531353363613966363839303230333031303030312801320218043a603765616236393661623935343336363538626331346666366234626534643932356364353162323230646632613164356336656531363061646166323961353165363934646533656531383463653232656164386437646239333231383266330ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038326465373330363566333466666332393334306435393439643232323062316534333636656435636637633665626436313663663934313661353365613030313766366262313136626664336633646566636331356237613464646630653434643032666536393536383830353365373961373730653230316263663731393333393030333965653866303836643466613734366337653035363931383330316639623565383465333932363238323830383561373962333232626361306235643835666539373232316132366262646532353863363230663064636561303261623165646431366363343961336632616239323838653364643166333764633462366136663731333366663932653534316337316237306432613266363664353537323561623138626638366430303965633364323466356431326530623565363830326431313531333732643462373634656265636234616638326636343934383565633537623561303164633637393538663561303363636161623763626139333534613137333732633133313662613437633935336161663934393031623366386332346536613361666436373538653766336231343363653264643363623037316232613734633932316365653934396134623561366265383739663163373930613662386436336231393264376565323961393439316664643638396139386330613763336436303332306631623461633264363232396466643934653432663361363034386137366265316562393538633861313837336265386433333861656339666335396162376633373632363738393430326331666435393566313930383735373565306265383237666334633061346662336433393361643734613934396363393836626662363463616264646165353339333566366463353630373464623933643737656133623831366264643662653533343439373237323238393835396666333463653531383630616666623632316431303438376463333834336631663836643534303334613633653438613161306430323033303130303031280a3202180d3a606132656363316232616539386264323862633161303864386633373161306434663734356337363864306337373339363235363265333433623235643833343235656565613765663865613134323935333432623865623738643332656333660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039383735356134303862353332316532363330353230303064366437643461326333613535346435653133383461396362356562663437346165383832633633623438366264303864313434646466316139346365396137643632353139363330303661666461616334353838343666313736343031393566653235333961363536393330656661383534663231343865363865633161303863316334396432303063336633303435666537313437663036643533346334626432363231303063623164643339373339643736306438316130626432306638336632353564323530376434636362313130366235333631386336613934343039633838376361653236326434636565396338363233323134376365633134303465306335376262613733313731333065653339363433383838616633643539386564643832623863363165363561653831613465316135366263303664333937313433613938643431636138376433656634333365663061656162363830313139316233653338343830393638663636623665383836363261663435613965323132393934663638623238386562393637626562393834373863323433653231333663316131353931663036316635626330346232316666326261343862323966313834333130383838373362646665393966386135326539343038393731383536653830346465613630326133313137383663393835363532393633633361333737303332396234303966373466646663373436623232613566383431383931323037316334636538343663396234623332306665646636653962363465326362653338346639613832623661616164346232303930373433316466316133336636393230376135363536303062653831303730643038333239303039393538353961343439386435623539333135626365626566656538303765623061336139343266316364663333363764643434343466646232393838366566636464306265346162653961313838383033393533383735656461333364623732393839663736336230323033303130303031280b3202180e3a603139366237623132303739376364623361396430303362393833643537646131303331303662313733306531376636376532633762616161646234333738396166313639366461313031316232353362636263383630333333383566303332380ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061396462376638626161313236383938666162373839313135613362356438393734346631393765323830343161653039386633653838366336393837313732316531316262306164313166336365393132346161393631643661306463383435663439373635633366616231393935383430323637366635363434363262663238316462613535383837383066303365393035373938653138343236396161613630663761313437323333316532666231646561646438373763383463626362363431636139653563386164366534356263313539636230373966636230643434396364636438643932333963316130343765376234343864613063646361323636313061323566323936643936653734363962363736643461343434353136653761353965383532393361383038366638343063303532383534653032613863623230303264616433353832356265346438336235326661393165386337336666303439373436313438383632373837633131313866393234643331636261633162343466656666323264343336623339373965616466396234336134626661373265313562343735356663616232363065303661323739633362623733626337663136613036306434643532326664343930353830333838616135393564383034343733366535323266363432343931356637383033623735383365303935636466373863333235313936393764653831623839666235303035343735336231613137663961616662303634643834633939326639616231316363626338636231303831346463616635323634616134356632316264656661633832636361636161663335386533313337336565316261346537343032666438613730656130633238636135636337346463343235313063393639636432633435396231656333363838613031656133396139393237313063643232393763393861383462363334386135373738303466646332333464336665313930336532633231653137326461323862353961653665346337653865646438623731633439643730323033303130303031280c3202180f3a603538343661353366343437353239666439636462373830346364333136383865643665656265336236336461326635663231316666626337333731393763663366316366626664613631626537643135313066306539323339383131376637340ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061386365616333363765623166316465356630643965663365616630646639623938343438666532303830383437363536326130363063353163323839373730623463616366653932636236353536393832336539363263326132633966656435336264333663613361313232646531633532356135383266323561346437643632386331613364356264623839333661656365373531306537353534656537303333303235633039326338323865656235373338626530326564393633646138316135393230353633346365393435343537376162383266343066313366316565353565306165373237653233633330323834623166343462393961636534646463356639616337616438386439666132323535393335623234646362613834303036343265313663663235333263306230643638393239303436303837313563343037366634366438346130653066656433366537366363646339363335356537613236313630393435633262353461653236636330306664303832333236333436656565656137646437356639313931316539396462636239396561346163366261303536633333323238643838316438353833316439636338373935393364613137343664643065653935646332623936666539336261666366663263643764393239353864373864663333663230356437313135656439666163346462366634636336306535366135343431646135623562353566613539393939303265393538613662366334346438313064646335363138313234316238376632326630353961363838306538303231373336643031383937646236353434396365383137613233373564303335353163623064653530376336303961306338303330656366346266646562323133633033646161373634613138323162373234333334663731663736386437616563623237373035326137303333373635663037323138303536633738663261383761663138333836643866363161356366636233663262613464643539393135663133643338363334643136393537353730323033303130303031280d320218103a603030306162636435396133306135333838633530306265363832663663613239343034363239356339323735383831633230643334626230643639306564613762333862366262643037613364643166646662366137303434626230396366660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061663062393134323537626637613436353563346135306430636164356530613165343538316564363632336630653837333066373936623866323963353831373862636363363933326331666333316633396566343462383264336334336233393837333733373366656362313239353232386130346664353061313466333634366438346665316634363763616562393864343633653239373565393935623864326531653339663362663661646463323561653335643635643032363038653033343535333739363665326162636534396238313462656164336331623735373137346165333063303062306334336539396238303439366237326433633133316631633665346663646130356632383131376566396532386334333033626534643863376530343264353862383363633132313934356132633635653739363263616139313835393338663337353764663763636139356366303262356533313934346133613631396130616333663165333462396230313364346332323463346631653730666439666433363938336566383661646535313833363263633833323263306637623631613961633735666238326537623836643638626330663039396130396131346361633561316438643338663961386137306363333766663563633362626432373432666664313436323535633137316536613137383038333237316463653066646536383165643439326362353962303739366432373031373538333864633539303831303765336136656133663961343036623364313133306363656333623437393165343962626332333136303362343661623264306639336434336265373561623961346437313065613934306532383561376231353362306361376364646565366439646365306164383335306334316439306332313562393538383531356166613061633333363561653037653831663362626233366264626561633462333162636231616134653832353635623937376639646164383564363236656566396161613965663864376533666230323033303130303031280e320218113a603933653238313031303462326231376230303935326235613431303264333365646230343363623136646533616433643364363832363066353562623065353837333765613539343463333338663763386362383863373833336663383630630ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038633037626533303561643630623930626132646162333962306565373736306531613232663835373532323534306437306230336233663965343837356133613239616230383038386631343466353765623235326534366261353933383564306536643432373031313764613061626331623362383036393463396135303538623836643631646661303665373136373039633838653866656163376333613065316432356663306165626636613866373666636239396638343566653138313436316361623638353862393763336134303237666233373132623134653663303738396465313764343137363435373765353131343137656231363236393265623037616531653733353532333565396262343339303437623663303136313337383265376464366636303464616134363734363631643533393631663436633366616136623765373637363264333733623562353432623739656139363365666266333361633638313938626232623636316366663637363931366566333732616434633236633231366334626334373837633834656333326431383464373763373531383663303963663364396639313433336361393835333131396261623331666136616432366634353365353936643962646563613638613537363962633866656537613533356438306338633666336566623164666232383861623661393739383534623763653833313234656330643130326166663934633362373466396333373839353863323565623933336464353363316538303561313836353464366439313836393930663635373034323966393630663334653862346637666439393732646362666539323430653037346461326433353561356637656639633161663632656635393832613831373435373862396331356334396563353636626461636233306363666365663039636466653730386164343837343234653963316265363533663965653736363065376439343263316566613564613238366531616464616230366139613333663964653934363739356230323033303130303031280f320218123a603934383235313739643163333934303137306233356432363665346366613830643737386335653966356261653764653833666638636334373431663362653336616336336431653761653439373261656466366263316533636632303638390ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030626531376339393634376365633635613434343037623533353835366233633362616566356235346635363561663538623834353662613863376365353335643561633732633631633434633736623363353763386538363438343136333762653130613833636665333963303932343736643064626534643663646364636437323061333062356266656235316130316131386635383263343566366338363939336663663764663138323933356465316438363930363034346463663335313836393335643962643765656137393532333532626562623465663961653066373636316537306134323337616661393839393636383763613438666366633562303064333830376630353462653066613863336266613432353033386265366566323935313634663232663733623765383863393465613962653861613466336132343563383962396431666435313932663761353062393538623265663831303462333666316266386664326366623238633134323138303063316334376534656639386166313530303730636336643639643137653865623932663138613661613161363532363661343935323338643130336638663639356235376563663337333635306130353230303837343537323162656138313536323739363763383037363336356466386334633761376434646438663263333835306331386662613731656236306536653864666264313936653035333766643730623334346563626363353330646663383364613666656466343964353161393034313935303262613964373063643335663163663363303639346532333534663930363466646266353335656232336332376330613433643062373863316638363763363164393836393564386465663762633261313062623636373463323266363661616230613931383133646466323763646238353263353965663739653162396531613037356661366565323761376533373734646266346232363436353432376536643561623931666537663066336137313738346563613138326235303230333031303030312810320218133a603038393039376465663031623037633764393734613537353532353161366161613061666236623332613534353334336432393138653732626164303433323163313131633234643432373538306633626131653236616139643735653632360ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613561643262373634336130346330353564326638636432353131623135313339666334353537353632313338386534396331313962326633393861636131313066363133393662306338363664653530363335323262623835343032373365313366366439346365316536303433386636616662303061616136343631326637313435653962636538626331613533623934313931336161373663396633613238333366616437636632383563376163326433376639396633633263646234396465346431353165363136373835363466323831663534313432346234316661376335316232613936303232383363376433326565303065623833386461313563333861666339366530363164393763656465323231363566663161613935396631633432373562326430393863343035383661353537396662623363623930303732373034313230613861363661353237306634666366643130383663393233363930613335653766643434356533336163303366313339633638363835353635373063646334616166323231303761366331613434323435366137633663373965653034303930653765356434663636626361363063613166343762366466623534336461633363626631396137373139613866353562366638336234613362386136366436303235366430613436353531666137303234626430353633316238613535383038373732353463326632663236386364633333643264626263666237333365396662653233336262396362353961623331613031343862323365386334323638306666313061663463373961346430383334366662373961393364393632393534386561663162623132343639386661656661346364643732343432633033613034623733333433326637343839303361333235633238336434353661623961653932316165376564333339316535643137383765666463323335343061376238356336393161653837306130376639306231316331336233326365343365616564313562333639363835636534393137376363393835303230333031303030312811320218143a603939666162633461646534653636326336653238323366346139366562323134343034383465356136643064333132623730633036386432326236323936333830376332333361343964626239383361376562623330653737303637373261340ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030386434356332316330633935656636356130323964353263393537666430663835663230313233646130333465363136373164646565353437356630373338326136366336366362346463353035303464646664333735383130383364663864313735373733306564386436663336346466346333366132363531353931393535646132303161323430376661386162396232333133383131323235613064613233306662653338306530393061613536656661346632303265633962343832336636353031643936616336393865626632366161636633656532643166333261373231633934376531303736636633356233373364613164383761333661313532653030653731303131373932323832653832356666313731633538333362383835373062666336646138343439653666393566386231323635616235353531393430333135353364316435373666393363343263306361363061616261633463386464313632643831313466326232313531313538336337323533396665353663343939613932396465336134306130643435633137633538396332643739383863653236656166633932613364333762376561303034326434336530336166613632373162323632353561366363636661653533373138323164383165306230356332353062353966306139303734316130653065383861303965643536633562393738306430393566303930366630623831643531323633393832616165303131333663303732643834346131316436646134623261363163363434653161623137663136666634386565323366656465383435326631653432653264333061303739306332356434323036306531643434613637316132656232336431313466363863373165333366313736646235386136386234333030353462633164323938336132336133326561366666393566613763346438653338306562323936653938623739363865636638343534643831376337333765656135646439323165623836633136633762323933303461346137656362653561336131303230333031303030312812320218153a606537396165396337313933643164326263393433383436346338616135663632323461653835323936366134336239383235383833663766373432633533393562643330393935383761393638363662393233396431656666336165353037610ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623035616265326162303066646430366339353565383637313062306530366631613932363234613438616431636263386466633666323231323936326230633330666462643238346133376335613337363538623633633336656138313632353631613865346639343663626535373232633032383830316630663238316337306638643838633763303061326632653239663539376237393938363965643833353664663537633437626539393434613261616666363530663962346262613064626335336463383830666462623639656134353139303564323830323230326638653239633034613736643237616632656237633534383438356266336634363934633930633431383130383838383433373932383438383335663738313637303764336538643736663465363766353738306263663038383133633535656336333961396264363234313738663565623134376435303061663335316539656631623165333432343834636132363064623763636261653438366631336366323635623562316162363838303636303038303533623230633364656463653737316339613038613033323061613963653435316562396439383361376234396361613130393666386164633039383331386463333865306537636566306438653564353537613036373536383561316339653235366132626339646261333232623362623331373263663731343037376263333830663861306134333361386266613766626663353966366230393365633862663665393339376330396231386531383034306331623536363836343733376338666137653239373935663361343538386464613763326261623439353636356363346139623833366532656239306336326133666361663539316662356638313830346337363138306536323666613236343461376465333435313164366334363637643938393337653237373333663464316539313338383333353465353466643733353137323165373666376235366333343833333838663461366238376232386165626562303230333031303030312813320218163a603962343038383566313362366163316337353336393262613366313739303061333838333165363934613061663937343934623834333838323039636235656662646339386136646162623265316337313833393166633133356264616163330ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396463643863306135336539306333353539353734663636323034313137643362353033653530613336643330393766616338343239653663656364333762623534303731383038663265653938323033356638353161306339626532313736333833613232653338633161626131363866333266393035373063623332333363666536323539383736363661663637623531346361656632316662386466366430666364333363663236303662393264646561353533366236303638643836373832653339626435633338343435393931643431396237643165633038353939343132633039343964316332343062333563313464633535323734646261373166666165393336313235613566383139663534313332653234333964346163353539373939366563653835653133646666333336316639313331663536636561633562396635353262343963663666396139616336653564636532646233363934363266393361663830653562353662366538626566613136326130363162346137363839326264633834363437333036633630303835386664643237303332373663326337303434303139386566643766653335343563663261623538306337346366643634343561616637626437663734356363323532656162643236356561626565383632343137313034653639343861353537353666646332323264663061313031353234646531633363303863636630343330313165633766653936346564643834353161313330313437633037333633613335663131666465656638663261326237363137353762343335386666383962373561343864363762646336303930363933653062623836373965636262393366666462336633656439366265633933656634363536653337313661623837636534366361386531323539633866656464653866326631656130663365623263343865393635353164653132333330333435373235663435656436396338353735623531363833616661343732363231383236646232326262326431633466316533363436346139303230333031303030312814320218173a60346630613033333466393737363738313632663830643936376637323139313431333630633062376637663033316233376336396536323137333933336564616434366263626139373636376565373262666435613933346261313532326330")));t.MAINNET_ADDRESS_BOOK=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(855));function l(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;r--){var o=this._nodes[r];n.includes(o.address.toString())||t.push(r)}return t}},{key:"getNextMirrorNode",value:function(){if(null==this._createNetworkChannel)throw new Error("mirror network not supported on browser");return this._getNumberOfMostHealthyNodes(1)[0]}}]),n}(r(n(433)).default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),t.call(this,e)}return(0,a.default)(n,[{key:"getKey",value:function(){return this._address.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}}]),n}(r(n(432)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(857));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var y=function(e){(0,s.default)(n,e);var t=h(n);function n(e){var r;return(0,u.default)(this,n),(r=t.call(this))._address=e,r}return(0,c.default)(n,[{key:"close",value:function(){}},{key:"_createUnaryClient",value:function(e){var t=this;return function(){var n=(0,i.default)(a.default.mark((function n(r,o,i){var u,c,s;return a.default.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,fetch("".concat(t._address,"/proto.").concat(e,"/").concat(r.name),{method:"POST",headers:{"content-type":"application/grpc-web+proto","x-user-agent":"hedera-sdk-js/v2","x-grpc-web":"1"},body:(0,d.encodeRequest)(o)});case 2:return u=n.sent,n.next=5,u.arrayBuffer();case 5:c=n.sent,s=(0,d.decodeUnaryResponse)(c),i(null,s);case 8:case"end":return n.stop()}}),n)})));return function(e,t,r){return n.apply(this,arguments)}}()}}]),n}(d.default);t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.decodeUnaryResponse=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength,r=new DataView(e,t,n),o=0,i=null,u=0;for(;o>7,f=r.getUint32(o+1),d=o+5;if(d+f>r.byteLength)throw new Error("(BUG) unexpected frame length past the boundary");var p=new Uint8Array(e,r.byteOffset+d,f);if(0===l){if(null!=i)throw new Error("(BUG) unexpectedly received more than one data frame");i=p}else{if(1!==l)throw new Error("(BUG) unexpected frame type: ".concat(l));var h=s.decode(p),y=h.split(":"),m=(0,a.default)(y,2),b=m[0],v=m[1];if("grpc-status"!==b)throw new Error("(BUG) unhandled trailer, ".concat(h));u=parseInt(v)}o+=f+5}if(0!==u)throw new Error("(BUG) unhandled grpc-status: ".concat(u));if(null==i)throw new Error("(BUG) unexpectedly received no response");return i},t.default=void 0,t.encodeRequest=function(e){var t=new ArrayBuffer(e.byteLength+5);return new DataView(t,1,4).setUint32(0,e.length),new Uint8Array(t,5).set(e),t};var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=n(36),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(108));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(){(0,i.default)(this,e),this._crypto=null,this._smartContract=null,this._file=null,this._consensus=null,this._freeze=null,this._network=null,this._token=null,this._schedule=null}return(0,u.default)(e,[{key:"close",value:function(){throw new Error("not implemented")}},{key:"crypto",get:function(){return null!=this._crypto||(this._crypto=c.CryptoService.create(this._createUnaryClient("CryptoService"))),this._crypto}},{key:"smartContract",get:function(){return null!=this._smartContract||(this._smartContract=c.SmartContractService.create(this._createUnaryClient("SmartContractService"))),this._smartContract}},{key:"file",get:function(){return null!=this._file||(this._file=c.FileService.create(this._createUnaryClient("FileService"))),this._file}},{key:"consensus",get:function(){return null!=this._consensus||(this._consensus=c.ConsensusService.create(this._createUnaryClient("ConsensusService"))),this._consensus}},{key:"freeze",get:function(){return null!=this._freeze||(this._freeze=c.FreezeService.create(this._createUnaryClient("FreezeService"))),this._freeze}},{key:"network",get:function(){return null!=this._network||(this._network=c.NetworkService.create(this._createUnaryClient("NetworkService"))),this._network}},{key:"token",get:function(){return null!=this._token||(this._token=c.TokenService.create(this._createUnaryClient("TokenService"))),this._token}},{key:"schedule",get:function(){return null!=this._schedule||(this._schedule=c.ScheduleService.create(this._createUnaryClient("ScheduleService"))),this._schedule}},{key:"_createUnaryClient",value:function(e){throw new Error("not implemented")}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(10),a=n(434),i=new o(0),u=new o(-1),c={noether:"0",wei:"1",kwei:"1000",Kwei:"1000",babbage:"1000",femtoether:"1000",mwei:"1000000",Mwei:"1000000",lovelace:"1000000",picoether:"1000000",gwei:"1000000000",Gwei:"1000000000",shannon:"1000000000",nanoether:"1000000000",nano:"1000000000",szabo:"1000000000000",microether:"1000000000000",micro:"1000000000000",finney:"1000000000000000",milliether:"1000000000000000",milli:"1000000000000000",ether:"1000000000000000000",kether:"1000000000000000000000",grand:"1000000000000000000000",mether:"1000000000000000000000000",gether:"1000000000000000000000000000",tether:"1000000000000000000000000000000"};function s(e){var t=e?e.toLowerCase():"ether",n=c[t];if("string"!=typeof n)throw new Error("[ethjs-unit] the unit provided "+e+" doesn't exists, please use the one of the following units "+JSON.stringify(c,null,2));return new o(n,10)}function l(e){if("string"==typeof e){if(!e.match(/^-?[0-9.]+$/))throw new Error("while converting number to string, invalid number value '"+e+"', should be a number matching (^-?[0-9.]+).");return e}if("number"==typeof e)return String(e);if("object"===(0,r.default)(e)&&e.toString&&(e.toTwos||e.dividedToIntegerBy))return e.toPrecision?String(e.toPrecision()):e.toString(10);throw new Error("while converting number to string, invalid number value '"+e+"' type "+(0,r.default)(e)+".")}e.exports={unitMap:c,numberToString:l,getValueOfUnit:s,fromWei:function(e,t,n){var r=a(e),o=r.lt(i),l=s(t),f=c[t].length-1||1,d=n||{};o&&(r=r.mul(u));for(var p=r.mod(l).toString(10);p.length2)throw new Error("[ethjs-unit] while converting number "+e+" to wei, too many decimal points");var d=f[0],p=f[1];if(d||(d="0"),p||(p="0"),p.length>a)throw new Error("[ethjs-unit] while converting number "+e+" to wei, too many decimal places");for(;p.length0?i-4:i;for(n=0;n>16&255,c[l++]=t>>8&255,c[l++]=255&t;2===u&&(t=o[e.charCodeAt(n)]<<2|o[e.charCodeAt(n+1)]>>4,c[l++]=255&t);1===u&&(t=o[e.charCodeAt(n)]<<10|o[e.charCodeAt(n+1)]<<4|o[e.charCodeAt(n+2)]>>2,c[l++]=t>>8&255,c[l++]=255&t);return c},t.fromByteArray=function(e){for(var t,n=e.length,o=n%3,a=[],i=0,u=n-o;iu?u:i+16383));1===o?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===o&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return a.join("")};for(var r=[],o=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",u=0,c=i.length;u0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var o,a,i=[],u=t;u>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return i.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},function(e,t,n){"use strict"; /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */t.read=function(e,t,n,r,o){var a,i,u=8*o-r-1,c=(1<>1,l=-7,f=n?o-1:0,d=n?-1:1,p=e[t+f];for(f+=d,a=p&(1<<-l)-1,p>>=-l,l+=u;l>0;a=256*a+e[t+f],f+=d,l-=8);for(i=a&(1<<-l)-1,a>>=-l,l+=r;l>0;i=256*i+e[t+f],f+=d,l-=8);if(0===a)a=1-s;else{if(a===c)return i?NaN:1/0*(p?-1:1);i+=Math.pow(2,r),a-=s}return(p?-1:1)*i*Math.pow(2,a-r)},t.write=function(e,t,n,r,o,a){var i,u,c,s=8*a-o-1,l=(1<>1,d=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:a-1,h=r?1:-1,y=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(u=isNaN(t)?1:0,i=l):(i=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-i))<1&&(i--,c*=2),(t+=i+f>=1?d/c:d*Math.pow(2,1-f))*c>=2&&(i++,c/=2),i+f>=l?(u=0,i=l):i+f>=1?(u=(t*c-1)*Math.pow(2,o),i+=f):(u=t*Math.pow(2,f-1)*Math.pow(2,o),i=0));o>=8;e[n+p]=255&u,p+=h,u/=256,o-=8);for(i=i<0;e[n+p]=255&i,p+=h,i/=256,s-=8);e[n+p-h]|=128*y}},function(e,t,n){"use strict"; -/*! https://mths.be/utf8js v3.0.0 by @mathias */!function(e){var t,n,r,o=String.fromCharCode;function a(e){for(var t,n,r=[],o=0,a=e.length;o=55296&&t<=56319&&o=55296&&e<=57343)throw Error("Lone surrogate U+"+e.toString(16).toUpperCase()+" is not a scalar value")}function u(e,t){return o(e>>t&63|128)}function c(e){if(0==(4294967168&e))return o(e);var t="";return 0==(4294965248&e)?t=o(e>>6&31|192):0==(4294901760&e)?(i(e),t=o(e>>12&15|224),t+=u(e,6)):0==(4292870144&e)&&(t=o(e>>18&7|240),t+=u(e,12),t+=u(e,6)),t+=o(63&e|128)}function s(){if(r>=n)throw Error("Invalid byte index");var e=255&t[r];if(r++,128==(192&e))return 63&e;throw Error("Invalid continuation byte")}function l(){var e,o;if(r>n)throw Error("Invalid byte index");if(r==n)return!1;if(e=255&t[r],r++,0==(128&e))return e;if(192==(224&e)){if((o=(31&e)<<6|s())>=128)return o;throw Error("Invalid continuation byte")}if(224==(240&e)){if((o=(15&e)<<12|s()<<6|s())>=2048)return i(o),o;throw Error("Invalid continuation byte")}if(240==(248&e)&&(o=(7&e)<<18|s()<<12|s()<<6|s())>=65536&&o<=1114111)return o;throw Error("Invalid UTF-8 detected")}e.version="3.0.0",e.encode=function(e){for(var t=a(e),n=t.length,r=-1,o="";++r65535&&(a+=o((t-=65536)>>>10&1023|55296),t=56320|1023&t),a+=o(t);return a}(u)}}(t)},function(e,t,n){"use strict";var r=Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]},o=function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.isHexString=t.getKeys=t.fromAscii=t.fromUtf8=t.toAscii=t.arrayContainsArray=t.getBinarySize=t.padToEven=t.stripHexPrefix=t.isHexPrefixed=void 0,o(n(365),t),o(n(366),t),o(n(779),t),o(n(248),t),o(n(780),t),o(n(114),t),o(n(781),t),o(n(782),t),o(n(257),t);var a=n(140);Object.defineProperty(t,"isHexPrefixed",{enumerable:!0,get:function(){return a.isHexPrefixed}}),Object.defineProperty(t,"stripHexPrefix",{enumerable:!0,get:function(){return a.stripHexPrefix}}),Object.defineProperty(t,"padToEven",{enumerable:!0,get:function(){return a.padToEven}}),Object.defineProperty(t,"getBinarySize",{enumerable:!0,get:function(){return a.getBinarySize}}),Object.defineProperty(t,"arrayContainsArray",{enumerable:!0,get:function(){return a.arrayContainsArray}}),Object.defineProperty(t,"toAscii",{enumerable:!0,get:function(){return a.toAscii}}),Object.defineProperty(t,"fromUtf8",{enumerable:!0,get:function(){return a.fromUtf8}}),Object.defineProperty(t,"fromAscii",{enumerable:!0,get:function(){return a.fromAscii}}),Object.defineProperty(t,"getKeys",{enumerable:!0,get:function(){return a.getKeys}}),Object.defineProperty(t,"isHexString",{enumerable:!0,get:function(){return a.isHexString}})},function(e,t,n){"use strict"; +/*! https://mths.be/utf8js v3.0.0 by @mathias */!function(e){var t,n,r,o=String.fromCharCode;function a(e){for(var t,n,r=[],o=0,a=e.length;o=55296&&t<=56319&&o=55296&&e<=57343)throw Error("Lone surrogate U+"+e.toString(16).toUpperCase()+" is not a scalar value")}function u(e,t){return o(e>>t&63|128)}function c(e){if(0==(4294967168&e))return o(e);var t="";return 0==(4294965248&e)?t=o(e>>6&31|192):0==(4294901760&e)?(i(e),t=o(e>>12&15|224),t+=u(e,6)):0==(4292870144&e)&&(t=o(e>>18&7|240),t+=u(e,12),t+=u(e,6)),t+=o(63&e|128)}function s(){if(r>=n)throw Error("Invalid byte index");var e=255&t[r];if(r++,128==(192&e))return 63&e;throw Error("Invalid continuation byte")}function l(){var e,o;if(r>n)throw Error("Invalid byte index");if(r==n)return!1;if(e=255&t[r],r++,0==(128&e))return e;if(192==(224&e)){if((o=(31&e)<<6|s())>=128)return o;throw Error("Invalid continuation byte")}if(224==(240&e)){if((o=(15&e)<<12|s()<<6|s())>=2048)return i(o),o;throw Error("Invalid continuation byte")}if(240==(248&e)&&(o=(7&e)<<18|s()<<12|s()<<6|s())>=65536&&o<=1114111)return o;throw Error("Invalid UTF-8 detected")}e.version="3.0.0",e.encode=function(e){for(var t=a(e),n=t.length,r=-1,o="";++r65535&&(a+=o((t-=65536)>>>10&1023|55296),t=56320|1023&t),a+=o(t);return a}(u)}}(t)},function(e,t,n){"use strict";var r=Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]},o=function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.isHexString=t.getKeys=t.fromAscii=t.fromUtf8=t.toAscii=t.arrayContainsArray=t.getBinarySize=t.padToEven=t.stripHexPrefix=t.isHexPrefixed=void 0,o(n(437),t),o(n(438),t),o(n(908),t),o(n(304),t),o(n(909),t),o(n(141),t),o(n(910),t),o(n(911),t),o(n(313),t);var a=n(171);Object.defineProperty(t,"isHexPrefixed",{enumerable:!0,get:function(){return a.isHexPrefixed}}),Object.defineProperty(t,"stripHexPrefix",{enumerable:!0,get:function(){return a.stripHexPrefix}}),Object.defineProperty(t,"padToEven",{enumerable:!0,get:function(){return a.padToEven}}),Object.defineProperty(t,"getBinarySize",{enumerable:!0,get:function(){return a.getBinarySize}}),Object.defineProperty(t,"arrayContainsArray",{enumerable:!0,get:function(){return a.arrayContainsArray}}),Object.defineProperty(t,"toAscii",{enumerable:!0,get:function(){return a.toAscii}}),Object.defineProperty(t,"fromUtf8",{enumerable:!0,get:function(){return a.fromUtf8}}),Object.defineProperty(t,"fromAscii",{enumerable:!0,get:function(){return a.fromAscii}}),Object.defineProperty(t,"getKeys",{enumerable:!0,get:function(){return a.getKeys}}),Object.defineProperty(t,"isHexString",{enumerable:!0,get:function(){return a.isHexString}})},function(e,t,n){"use strict"; /* object-assign (c) Sindre Sorhus @license MIT -*/var r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;function i(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,u,c=i(e),s=1;s=o)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),u=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),y(n)?r.showHidden=n:n&&t._extend(r,n),g(r.showHidden)&&(r.showHidden=!1),g(r.depth)&&(r.depth=2),g(r.colors)&&(r.colors=!1),g(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=s),f(r,e,r.depth)}function s(e,t){var n=c.styles[t];return n?"["+c.colors[n][0]+"m"+e+"["+c.colors[n][1]+"m":e}function l(e,t){return e}function f(e,n,r){if(e.customInspect&&n&&A(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,e);return v(o)||(o=f(e,o,r)),o}var a=function(e,t){if(g(t))return e.stylize("undefined","undefined");if(v(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(m(t))return e.stylize(""+t,"number");if(y(t))return e.stylize(""+t,"boolean");if(b(t))return e.stylize("null","null")}(e,n);if(a)return a;var i=Object.keys(n),u=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(i);if(e.showHidden&&(i=Object.getOwnPropertyNames(n)),I(n)&&(i.indexOf("message")>=0||i.indexOf("description")>=0))return d(n);if(0===i.length){if(A(n)){var c=n.name?": "+n.name:"";return e.stylize("[Function"+c+"]","special")}if(k(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(w(n))return e.stylize(Date.prototype.toString.call(n),"date");if(I(n))return d(n)}var s,l="",_=!1,T=["{","}"];(h(n)&&(_=!0,T=["[","]"]),A(n))&&(l=" [Function"+(n.name?": "+n.name:"")+"]");return k(n)&&(l=" "+RegExp.prototype.toString.call(n)),w(n)&&(l=" "+Date.prototype.toUTCString.call(n)),I(n)&&(l=" "+d(n)),0!==i.length||_&&0!=n.length?r<0?k(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),s=_?function(e,t,n,r,o){for(var a=[],i=0,u=t.length;i=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(s,l,T)):T[0]+l+T[1]}function d(e){return"["+Error.prototype.toString.call(e)+"]"}function p(e,t,n,r,o,a){var i,u,c;if((c=Object.getOwnPropertyDescriptor(t,o)||{value:t[o]}).get?u=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(u=e.stylize("[Setter]","special")),S(r,o)||(i="["+o+"]"),u||(e.seen.indexOf(c.value)<0?(u=b(n)?f(e,c.value,null):f(e,c.value,n-1)).indexOf("\n")>-1&&(u=a?u.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+u.split("\n").map((function(e){return" "+e})).join("\n")):u=e.stylize("[Circular]","special")),g(i)){if(a&&o.match(/^\d+$/))return u;(i=JSON.stringify(""+o)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(i=i.substr(1,i.length-2),i=e.stylize(i,"name")):(i=i.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),i=e.stylize(i,"string"))}return i+": "+u}function h(e){return Array.isArray(e)}function y(e){return"boolean"==typeof e}function b(e){return null===e}function m(e){return"number"==typeof e}function v(e){return"string"==typeof e}function g(e){return void 0===e}function k(e){return _(e)&&"[object RegExp]"===T(e)}function _(e){return"object"===(0,r.default)(e)&&null!==e}function w(e){return _(e)&&"[object Date]"===T(e)}function I(e){return _(e)&&("[object Error]"===T(e)||e instanceof Error)}function A(e){return"function"==typeof e}function T(e){return Object.prototype.toString.call(e)}function O(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(g(i)&&(i=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!u[n])if(new RegExp("\\b"+n+"\\b","i").test(i)){var r=e.pid;u[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else u[n]=function(){};return u[n]},t.inspect=c,c.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},c.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=h,t.isBoolean=y,t.isNull=b,t.isNullOrUndefined=function(e){return null==e},t.isNumber=m,t.isString=v,t.isSymbol=function(e){return"symbol"===(0,r.default)(e)},t.isUndefined=g,t.isRegExp=k,t.isObject=_,t.isDate=w,t.isError=I,t.isFunction=A,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"===(0,r.default)(e)||void 0===e},t.isBuffer=n(738);var E=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function P(){var e=new Date,t=[O(e.getHours()),O(e.getMinutes()),O(e.getSeconds())].join(":");return[e.getDate(),E[e.getMonth()],t].join(" ")}function S(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",P(),t.format.apply(t,arguments))},t.inherits=n(739),t._extend=function(e,t){if(!t||!_(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var R="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function D(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(R&&e[R]){var t;if("function"!=typeof(t=e[R]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,R,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),o=[],a=0;a=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:function(e){return new Uint8Array(e)},t=arguments.length>1?arguments[1]:void 0;return"function"==typeof e&&(e=e(t)),v("output",e,t),e}function _(e){return Object.prototype.toString.call(e).slice(8,-1)}e.exports=function(e){return{contextRandomize:function(t){switch(m(null===t||t instanceof Uint8Array,"Expected seed to be an Uint8Array or null"),null!==t&&v("seed",t,32),e.contextRandomize(t)){case 1:throw new Error(c)}},privateKeyVerify:function(t){return v("private key",t,32),0===e.privateKeyVerify(t)},privateKeyNegate:function(t){switch(v("private key",t,32),e.privateKeyNegate(t)){case 0:return t;case 1:throw new Error(a)}},privateKeyTweakAdd:function(t,n){switch(v("private key",t,32),v("tweak",n,32),e.privateKeyTweakAdd(t,n)){case 0:return t;case 1:throw new Error(i)}},privateKeyTweakMul:function(t,n){switch(v("private key",t,32),v("tweak",n,32),e.privateKeyTweakMul(t,n)){case 0:return t;case 1:throw new Error(u)}},publicKeyVerify:function(t){return v("public key",t,[33,65]),0===e.publicKeyVerify(t)},publicKeyCreate:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("private key",t,32),g(n),r=k(r,n?33:65),e.publicKeyCreate(r,t)){case 0:return r;case 1:throw new Error(s);case 2:throw new Error(f)}},publicKeyConvert:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("public key",t,[33,65]),g(n),r=k(r,n?33:65),e.publicKeyConvert(r,t)){case 0:return r;case 1:throw new Error(l);case 2:throw new Error(f)}},publicKeyNegate:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("public key",t,[33,65]),g(n),r=k(r,n?33:65),e.publicKeyNegate(r,t)){case 0:return r;case 1:throw new Error(l);case 2:throw new Error(a);case 3:throw new Error(f)}},publicKeyCombine:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=arguments.length>2?arguments[2]:void 0;m(Array.isArray(t),"Expected public keys to be an Array"),m(t.length>0,"Expected public keys array will have more than zero items");var a,i=r(t);try{for(i.s();!(a=i.n()).done;){var u=a.value;v("public key",u,[33,65])}}catch(e){i.e(e)}finally{i.f()}switch(g(n),o=k(o,n?33:65),e.publicKeyCombine(o,t)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(d);case 3:throw new Error(f)}},publicKeyTweakAdd:function(t,n){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("tweak",n,32),g(r),o=k(o,r?33:65),e.publicKeyTweakAdd(o,t,n)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(i)}},publicKeyTweakMul:function(t,n){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("tweak",n,32),g(r),o=k(o,r?33:65),e.publicKeyTweakMul(o,t,n)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(u)}},signatureNormalize:function(t){switch(v("signature",t,64),e.signatureNormalize(t)){case 0:return t;case 1:throw new Error(p)}},signatureExport:function(t,n){v("signature",t,64);var r={output:n=k(n,72),outputlen:72};switch(e.signatureExport(r,t)){case 0:return n.slice(0,r.outputlen);case 1:throw new Error(p);case 2:throw new Error(a)}},signatureImport:function(t,n){switch(v("signature",t),n=k(n,64),e.signatureImport(n,t)){case 0:return n;case 1:throw new Error(p);case 2:throw new Error(a)}},ecdsaSign:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;v("message",t,32),v("private key",n,32),m("Object"===_(r),"Expected options to be an Object"),void 0!==r.data&&v("options.data",r.data),void 0!==r.noncefn&&m("Function"===_(r.noncefn),"Expected options.noncefn to be a Function");var i={signature:o=k(o,64),recid:null};switch(e.ecdsaSign(i,t,n,r.data,r.noncefn)){case 0:return i;case 1:throw new Error(h);case 2:throw new Error(a)}},ecdsaVerify:function(t,n,r){switch(v("signature",t,64),v("message",n,32),v("public key",r,[33,65]),e.ecdsaVerify(t,n,r)){case 0:return!0;case 3:return!1;case 1:throw new Error(p);case 2:throw new Error(l)}},ecdsaRecover:function(t,n,r){var o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=arguments.length>4?arguments[4]:void 0;switch(v("signature",t,64),m("Number"===_(n)&&n>=0&&n<=3,"Expected recovery id to be a Number within interval [0, 3]"),v("message",r,32),g(o),i=k(i,o?33:65),e.ecdsaRecover(i,t,n,r)){case 0:return i;case 1:throw new Error(p);case 2:throw new Error(y);case 3:throw new Error(a)}},ecdh:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("private key",n,32),m("Object"===_(r),"Expected options to be an Object"),void 0!==r.data&&v("options.data",r.data),void 0!==r.hashfn?(m("Function"===_(r.hashfn),"Expected options.hashfn to be a Function"),void 0!==r.xbuf&&v("options.xbuf",r.xbuf,32),void 0!==r.ybuf&&v("options.ybuf",r.ybuf,32),v("output",o)):o=k(o,32),e.ecdh(o,t,n,r.data,r.hashfn,r.xbuf,r.ybuf)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(b)}}}}},function(e,t,n){"use strict";var r=new(0,n(136).ec)("secp256k1"),o=r.curve,a=o.n.constructor;function i(e){var t=e[0];switch(t){case 2:case 3:return 33!==e.length?null:function(e,t){var n=new a(t);if(n.cmp(o.p)>=0)return null;var i=(n=n.toRed(o.red)).redSqr().redIMul(n).redIAdd(o.b).redSqrt();return 3===e!==i.isOdd()&&(i=i.redNeg()),r.keyPair({pub:{x:n,y:i}})}(t,e.subarray(1,33));case 4:case 6:case 7:return 65!==e.length?null:function(e,t,n){var i=new a(t),u=new a(n);if(i.cmp(o.p)>=0||u.cmp(o.p)>=0)return null;if(i=i.toRed(o.red),u=u.toRed(o.red),(6===e||7===e)&&u.isOdd()!==(7===e))return null;var c=i.redSqr().redIMul(i);return u.redSqr().redISub(c.redIAdd(o.b)).isZero()?r.keyPair({pub:{x:i,y:u}}):null}(t,e.subarray(1,33),e.subarray(33,65));default:return null}}function u(e,t){for(var n=t.encode(null,33===e.length),r=0;r=0)return 1;if(n.iadd(new a(e)),n.cmp(o.n)>=0&&n.isub(o.n),n.isZero())return 1;var r=n.toArrayLike(Uint8Array,"be",32);return e.set(r),0},privateKeyTweakMul:function(e,t){var n=new a(t);if(n.cmp(o.n)>=0||n.isZero())return 1;n.imul(new a(e)),n.cmp(o.n)>=0&&(n=n.umod(o.n));var r=n.toArrayLike(Uint8Array,"be",32);return e.set(r),0},publicKeyVerify:function(e){return null===i(e)?1:0},publicKeyCreate:function(e,t){var n=new a(t);return n.cmp(o.n)>=0||n.isZero()?1:(u(e,r.keyFromPrivate(t).getPublic()),0)},publicKeyConvert:function(e,t){var n=i(t);return null===n?1:(u(e,n.getPublic()),0)},publicKeyNegate:function(e,t){var n=i(t);if(null===n)return 1;var r=n.getPublic();return r.y=r.y.redNeg(),u(e,r),0},publicKeyCombine:function(e,t){for(var n=new Array(t.length),r=0;r=0)return 2;var c=r.getPublic().add(o.g.mul(n));return c.isInfinity()?2:(u(e,c),0)},publicKeyTweakMul:function(e,t,n){var r=i(t);return null===r?1:(n=new a(n)).cmp(o.n)>=0||n.isZero()?2:(u(e,r.getPublic().mul(n)),0)},signatureNormalize:function(e){var t=new a(e.subarray(0,32)),n=new a(e.subarray(32,64));return t.cmp(o.n)>=0||n.cmp(o.n)>=0?1:(1===n.cmp(r.nh)&&e.set(o.n.sub(n).toArrayLike(Uint8Array,"be",32),32),0)},signatureExport:function(e,t){var n=t.subarray(0,32),r=t.subarray(32,64);if(new a(n).cmp(o.n)>=0)return 1;if(new a(r).cmp(o.n)>=0)return 1;var i=e.output,u=i.subarray(4,37);u[0]=0,u.set(n,1);for(var c=33,s=0;c>1&&0===u[s]&&!(128&u[s+1]);--c,++s);if(128&(u=u.subarray(s))[0])return 1;if(c>1&&0===u[0]&&!(128&u[1]))return 1;var l=i.subarray(39,72);l[0]=0,l.set(r,1);for(var f=33,d=0;f>1&&0===l[d]&&!(128&l[d+1]);--f,++d);return 128&(l=l.subarray(d))[0]||f>1&&0===l[0]&&!(128&l[1])?1:(e.outputlen=6+c+f,i[0]=48,i[1]=e.outputlen-2,i[2]=2,i[3]=u.length,i.set(u,4),i[4+c]=2,i[5+c]=l.length,i.set(l,6+c),0)},signatureImport:function(e,t){if(t.length<8)return 1;if(t.length>72)return 1;if(48!==t[0])return 1;if(t[1]!==t.length-2)return 1;if(2!==t[2])return 1;var n=t[3];if(0===n)return 1;if(5+n>=t.length)return 1;if(2!==t[4+n])return 1;var r=t[5+n];if(0===r)return 1;if(6+n+r!==t.length)return 1;if(128&t[4])return 1;if(n>1&&0===t[4]&&!(128&t[5]))return 1;if(128&t[n+6])return 1;if(r>1&&0===t[n+6]&&!(128&t[n+7]))return 1;var i=t.subarray(4,4+n);if(33===i.length&&0===i[0]&&(i=i.subarray(1)),i.length>32)return 1;var u=t.subarray(6+n);if(33===u.length&&0===u[0]&&(u=u.slice(1)),u.length>32)throw new Error("S length is too long");var c=new a(i);c.cmp(o.n)>=0&&(c=new a(0));var s=new a(t.subarray(6+n));return s.cmp(o.n)>=0&&(s=new a(0)),e.set(c.toArrayLike(Uint8Array,"be",32),0),e.set(s.toArrayLike(Uint8Array,"be",32),32),0},ecdsaSign:function(e,t,n,i,u){if(u){var c=u;u=function(e){var r=c(t,n,null,i,e);if(!(r instanceof Uint8Array&&32===r.length))throw new Error("This is the way");return new a(r)}}var s,l=new a(n);if(l.cmp(o.n)>=0||l.isZero())return 1;try{s=r.sign(t,n,{canonical:!0,k:u,pers:i})}catch(e){return 1}return e.signature.set(s.r.toArrayLike(Uint8Array,"be",32),0),e.signature.set(s.s.toArrayLike(Uint8Array,"be",32),32),e.recid=s.recoveryParam,0},ecdsaVerify:function(e,t,n){var u={r:e.subarray(0,32),s:e.subarray(32,64)},c=new a(u.r),s=new a(u.s);if(c.cmp(o.n)>=0||s.cmp(o.n)>=0)return 1;if(1===s.cmp(r.nh)||c.isZero()||s.isZero())return 3;var l=i(n);if(null===l)return 2;var f=l.getPublic();return r.verify(t,u,f)?0:3},ecdsaRecover:function(e,t,n,i){var c,s={r:t.slice(0,32),s:t.slice(32,64)},l=new a(s.r),f=new a(s.s);if(l.cmp(o.n)>=0||f.cmp(o.n)>=0)return 1;if(l.isZero()||f.isZero())return 2;try{c=r.recoverPubKey(i,s,n)}catch(e){return 2}return u(e,c),0},ecdh:function(e,t,n,u,c,s,l){var f=i(t);if(null===f)return 1;var d=new a(n);if(d.cmp(o.n)>=0||d.isZero())return 2;var p=f.getPublic().mul(d);if(void 0===c)for(var h=p.encode(null,!0),y=r.hash().update(h).digest(),b=0;b<32;++b)e[b]=y[b];else{s||(s=new Uint8Array(32));for(var m=p.getX().toArray("be",32),v=0;v<32;++v)s[v]=m[v];l||(l=new Uint8Array(32));for(var g=p.getY().toArray("be",32),k=0;k<32;++k)l[k]=g[k];var _=c(s,l,u);if(!(_ instanceof Uint8Array&&_.length===e.length))return 2;e.set(_)}return 0}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(99);t.getRandomBytes=function(e){return new Promise((function(t,n){r(e,(function(e,r){e?n(e):t(r)}))}))},t.getRandomBytesSync=function(e){return r(e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(744),o=n(745);t.keccak224=r.createHashFunction((function(){return o("keccak224")})),t.keccak256=r.createHashFunction((function(){return o("keccak256")})),t.keccak384=r.createHashFunction((function(){return o("keccak384")})),t.keccak512=r.createHashFunction((function(){return o("keccak512")}))},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.createHashFunction=function(t){return function(n){var r=t();return r.update(n),e.from(r.digest())}}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";e.exports=n(746)(n(756))},function(e,t,n){"use strict";var r=n(747),o=n(755);e.exports=function(e){var t=r(e),n=o(e);return function(e,r){switch("string"==typeof e?e.toLowerCase():e){case"keccak224":return new t(1152,448,null,224,r);case"keccak256":return new t(1088,512,null,256,r);case"keccak384":return new t(832,768,null,384,r);case"keccak512":return new t(576,1024,null,512,r);case"sha3-224":return new t(1152,448,6,224,r);case"sha3-256":return new t(1088,512,6,256,r);case"sha3-384":return new t(832,768,6,384,r);case"sha3-512":return new t(576,1024,6,512,r);case"shake128":return new n(1344,256,31,r);case"shake256":return new n(1088,512,31,r);default:throw new Error("Invald algorithm: "+e)}}}},function(e,t,n){"use strict";(function(t){var r=n(0),o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=n(369).Transform;e.exports=function(e){return function(n){(0,i.default)(u,n);var r=s(u);function u(t,n,a,i,c){var s;return(0,o.default)(this,u),(s=r.call(this,c))._rate=t,s._capacity=n,s._delimitedSuffix=a,s._hashBitLength=i,s._options=c,s._state=new e,s._state.initialize(t,n),s._finalized=!1,s}return(0,a.default)(u,[{key:"_transform",value:function(e,t,n){var r=null;try{this.update(e,t)}catch(e){r=e}n(r)}},{key:"_flush",value:function(e){var t=null;try{this.push(this.digest())}catch(e){t=e}e(t)}},{key:"update",value:function(e,n){if(!t.isBuffer(e)&&"string"!=typeof e)throw new TypeError("Data must be a string or a buffer");if(this._finalized)throw new Error("Digest already called");return t.isBuffer(e)||(e=t.from(e,n)),this._state.absorb(e),this}},{key:"digest",value:function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0,this._delimitedSuffix&&this._state.absorbLastFewBits(this._delimitedSuffix);var t=this._state.squeeze(this._hashBitLength/8);return void 0!==e&&(t=t.toString(e)),this._resetState(),t}},{key:"_resetState",value:function(){return this._state.initialize(this._rate,this._capacity),this}},{key:"_clone",value:function(){var e=new u(this._rate,this._capacity,this._delimitedSuffix,this._hashBitLength,this._options);return this._state.copy(e._state),e._finalized=this._finalized,e}}]),u}(l)}}).call(this,n(12).Buffer)},function(e,t){},function(e,t,n){"use strict";function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){for(var n=0;n0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return i.alloc(0);for(var t,n,r,o=i.allocUnsafe(e>>>0),a=this.head,u=0;a;)t=a.data,n=o,r=u,i.prototype.copy.call(t,n,r),u+=a.data.length,a=a.next;return o}},{key:"consume",value:function(e,t){var n;return eo.length?o.length:e;if(a===o.length?r+=o:r+=o.slice(0,e),0==(e-=a)){a===o.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=o.slice(a));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=i.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var o=n.data,a=e>o.length?o.length:e;if(o.copy(t,t.length-e,0,a),0==(e-=a)){a===o.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++r}return this.length-=r,t}},{key:c,value:function(e,t){return u(this,function(e){for(var t=1;t0,(function(e){r||(r=e),e&&i.forEach(s),a||(i.forEach(s),o(r))}))}));return t.reduce(l)}},function(e,t,n){"use strict";(function(t){var r=n(0),o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=n(369).Transform;e.exports=function(e){return function(n){(0,i.default)(u,n);var r=s(u);function u(t,n,a,i){var c;return(0,o.default)(this,u),(c=r.call(this,i))._rate=t,c._capacity=n,c._delimitedSuffix=a,c._options=i,c._state=new e,c._state.initialize(t,n),c._finalized=!1,c}return(0,a.default)(u,[{key:"_transform",value:function(e,t,n){var r=null;try{this.update(e,t)}catch(e){r=e}n(r)}},{key:"_flush",value:function(){}},{key:"_read",value:function(e){this.push(this.squeeze(e))}},{key:"update",value:function(e,n){if(!t.isBuffer(e)&&"string"!=typeof e)throw new TypeError("Data must be a string or a buffer");if(this._finalized)throw new Error("Squeeze already called");return t.isBuffer(e)||(e=t.from(e,n)),this._state.absorb(e),this}},{key:"squeeze",value:function(e,t){this._finalized||(this._finalized=!0,this._state.absorbLastFewBits(this._delimitedSuffix));var n=this._state.squeeze(e);return void 0!==t&&(n=n.toString(t)),n}},{key:"_resetState",value:function(){return this._state.initialize(this._rate,this._capacity),this}},{key:"_clone",value:function(){var e=new u(this._rate,this._capacity,this._delimitedSuffix,this._options);return this._state.copy(e._state),e._finalized=this._finalized,e}}]),u}(l)}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";(function(t){var r=n(757);function o(){this.state=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.blockSize=null,this.count=0,this.squeezing=!1}o.prototype.initialize=function(e,t){for(var n=0;n<50;++n)this.state[n]=0;this.blockSize=e/8,this.count=0,this.squeezing=!1},o.prototype.absorb=function(e){for(var t=0;t>>this.count%4*8&255,this.count+=1,this.count===this.blockSize&&(r.p1600(this.state),this.count=0);return n},o.prototype.copy=function(e){for(var t=0;t<50;++t)e.state[t]=this.state[t];e.blockSize=this.blockSize,e.count=this.count,e.squeezing=this.squeezing},e.exports=o}).call(this,n(12).Buffer)},function(e,t,n){"use strict";var r=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648];t.p1600=function(e){for(var t=0;t<24;++t){var n=e[0]^e[10]^e[20]^e[30]^e[40],o=e[1]^e[11]^e[21]^e[31]^e[41],a=e[2]^e[12]^e[22]^e[32]^e[42],i=e[3]^e[13]^e[23]^e[33]^e[43],u=e[4]^e[14]^e[24]^e[34]^e[44],c=e[5]^e[15]^e[25]^e[35]^e[45],s=e[6]^e[16]^e[26]^e[36]^e[46],l=e[7]^e[17]^e[27]^e[37]^e[47],f=e[8]^e[18]^e[28]^e[38]^e[48],d=e[9]^e[19]^e[29]^e[39]^e[49],p=f^(a<<1|i>>>31),h=d^(i<<1|a>>>31),y=e[0]^p,b=e[1]^h,m=e[10]^p,v=e[11]^h,g=e[20]^p,k=e[21]^h,_=e[30]^p,w=e[31]^h,I=e[40]^p,A=e[41]^h;p=n^(u<<1|c>>>31),h=o^(c<<1|u>>>31);var T=e[2]^p,O=e[3]^h,E=e[12]^p,P=e[13]^h,S=e[22]^p,R=e[23]^h,D=e[32]^p,C=e[33]^h,N=e[42]^p,B=e[43]^h;p=a^(s<<1|l>>>31),h=i^(l<<1|s>>>31);var M=e[4]^p,j=e[5]^h,x=e[14]^p,F=e[15]^h,U=e[24]^p,L=e[25]^h,K=e[34]^p,G=e[35]^h,z=e[44]^p,Q=e[45]^h;p=u^(f<<1|d>>>31),h=c^(d<<1|f>>>31);var H=e[6]^p,V=e[7]^h,q=e[16]^p,W=e[17]^h,Y=e[26]^p,Z=e[27]^h,J=e[36]^p,X=e[37]^h,$=e[46]^p,ee=e[47]^h;p=s^(n<<1|o>>>31),h=l^(o<<1|n>>>31);var te=e[8]^p,ne=e[9]^h,re=e[18]^p,oe=e[19]^h,ae=e[28]^p,ie=e[29]^h,ue=e[38]^p,ce=e[39]^h,se=e[48]^p,le=e[49]^h,fe=y,de=b,pe=v<<4|m>>>28,he=m<<4|v>>>28,ye=g<<3|k>>>29,be=k<<3|g>>>29,me=w<<9|_>>>23,ve=_<<9|w>>>23,ge=I<<18|A>>>14,ke=A<<18|I>>>14,_e=T<<1|O>>>31,we=O<<1|T>>>31,Ie=P<<12|E>>>20,Ae=E<<12|P>>>20,Te=S<<10|R>>>22,Oe=R<<10|S>>>22,Ee=C<<13|D>>>19,Pe=D<<13|C>>>19,Se=N<<2|B>>>30,Re=B<<2|N>>>30,De=j<<30|M>>>2,Ce=M<<30|j>>>2,Ne=x<<6|F>>>26,Be=F<<6|x>>>26,Me=L<<11|U>>>21,je=U<<11|L>>>21,xe=K<<15|G>>>17,Fe=G<<15|K>>>17,Ue=Q<<29|z>>>3,Le=z<<29|Q>>>3,Ke=H<<28|V>>>4,Ge=V<<28|H>>>4,ze=W<<23|q>>>9,Qe=q<<23|W>>>9,He=Y<<25|Z>>>7,Ve=Z<<25|Y>>>7,qe=J<<21|X>>>11,We=X<<21|J>>>11,Ye=ee<<24|$>>>8,Ze=$<<24|ee>>>8,Je=te<<27|ne>>>5,Xe=ne<<27|te>>>5,$e=re<<20|oe>>>12,et=oe<<20|re>>>12,tt=ie<<7|ae>>>25,nt=ae<<7|ie>>>25,rt=ue<<8|ce>>>24,ot=ce<<8|ue>>>24,at=se<<14|le>>>18,it=le<<14|se>>>18;e[0]=fe^~Ie&Me,e[1]=de^~Ae&je,e[10]=Ke^~$e&ye,e[11]=Ge^~et&be,e[20]=_e^~Ne&He,e[21]=we^~Be&Ve,e[30]=Je^~pe&Te,e[31]=Xe^~he&Oe,e[40]=De^~ze&tt,e[41]=Ce^~Qe&nt,e[2]=Ie^~Me&qe,e[3]=Ae^~je&We,e[12]=$e^~ye&Ee,e[13]=et^~be&Pe,e[22]=Ne^~He&rt,e[23]=Be^~Ve&ot,e[32]=pe^~Te&xe,e[33]=he^~Oe&Fe,e[42]=ze^~tt&me,e[43]=Qe^~nt&ve,e[4]=Me^~qe&at,e[5]=je^~We&it,e[14]=ye^~Ee&Ue,e[15]=be^~Pe&Le,e[24]=He^~rt&ge,e[25]=Ve^~ot&ke,e[34]=Te^~xe&Ye,e[35]=Oe^~Fe&Ze,e[44]=tt^~me&Se,e[45]=nt^~ve&Re,e[6]=qe^~at&fe,e[7]=We^~it&de,e[16]=Ee^~Ue&Ke,e[17]=Pe^~Le&Ge,e[26]=rt^~ge&_e,e[27]=ot^~ke&we,e[36]=xe^~Ye&Je,e[37]=Fe^~Ze&Xe,e[46]=me^~Se&De,e[47]=ve^~Re&Ce,e[8]=at^~fe&Ie,e[9]=it^~de&Ae,e[18]=Ue^~Ke&$e,e[19]=Le^~Ge&et,e[28]=ge^~_e&Ne,e[29]=ke^~we&Be,e[38]=Ye^~Je&pe,e[39]=Ze^~Xe&he,e[48]=Se^~De&ze,e[49]=Re^~Ce&Qe,e[0]^=r[2*t],e[1]^=r[2*t+1]}}},function(e,t,n){"use strict";(t=e.exports=n(377)).Stream=t,t.Readable=t,t.Writable=n(381),t.Duplex=n(145),t.Transform=n(382),t.PassThrough=n(764),t.finished=n(251),t.pipeline=n(765)},function(e,t){},function(e,t,n){"use strict";function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){for(var n=0;n0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return i.alloc(0);for(var t,n,r,o=i.allocUnsafe(e>>>0),a=this.head,u=0;a;)t=a.data,n=o,r=u,i.prototype.copy.call(t,n,r),u+=a.data.length,a=a.next;return o}},{key:"consume",value:function(e,t){var n;return eo.length?o.length:e;if(a===o.length?r+=o:r+=o.slice(0,e),0==(e-=a)){a===o.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=o.slice(a));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=i.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var o=n.data,a=e>o.length?o.length:e;if(o.copy(t,t.length-e,0,a),0==(e-=a)){a===o.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++r}return this.length-=r,t}},{key:c,value:function(e,t){return u(this,function(e){for(var t=1;t0,(function(e){r||(r=e),e&&i.forEach(s),a||(i.forEach(s),o(r))}))}));return t.reduce(l)}},function(e,t,n){"use strict";var r=n(15),o=n(146),a=n(22).Buffer,i=[1518500249,1859775393,-1894007588,-899497514],u=new Array(80);function c(){this.init(),this._w=u,o.call(this,64,56)}function s(e){return e<<30|e>>>2}function l(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,o),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,f=0;f<16;++f)n[f]=e.readInt32BE(4*f);for(;f<80;++f)n[f]=n[f-3]^n[f-8]^n[f-14]^n[f-16];for(var d=0;d<80;++d){var p=~~(d/20),h=0|((t=r)<<5|t>>>27)+l(p,o,a,u)+c+n[d]+i[p];c=u,u=a,a=s(o),o=r,r=h}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},function(e,t,n){"use strict";var r=n(15),o=n(146),a=n(22).Buffer,i=[1518500249,1859775393,-1894007588,-899497514],u=new Array(80);function c(){this.init(),this._w=u,o.call(this,64,56)}function s(e){return e<<5|e>>>27}function l(e){return e<<30|e>>>2}function f(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,o),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,d=0;d<16;++d)n[d]=e.readInt32BE(4*d);for(;d<80;++d)n[d]=(t=n[d-3]^n[d-8]^n[d-14]^n[d-16])<<1|t>>>31;for(var p=0;p<80;++p){var h=~~(p/20),y=s(r)+f(h,o,a,u)+c+n[p]+i[h]|0;c=u,u=a,a=l(o),o=r,r=y}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},function(e,t,n){"use strict";var r=n(15),o=n(383),a=n(146),i=n(22).Buffer,u=new Array(64);function c(){this.init(),this._w=u,a.call(this,64,56)}r(c,o),c.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},c.prototype._hash=function(){var e=i.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=c},function(e,t,n){"use strict";var r=n(15),o=n(384),a=n(146),i=n(22).Buffer,u=new Array(160);function c(){this.init(),this._w=u,a.call(this,128,112)}r(c,o),c.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},c.prototype._hash=function(){var e=i.allocUnsafe(48);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e},e.exports=c},function(e,t){},function(e,t,n){"use strict";var r=n(255).Buffer,o=n(772);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},e.prototype.concat=function(e){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var t,n,o,a=r.allocUnsafe(e>>>0),i=this.head,u=0;i;)t=i.data,n=a,o=u,t.copy(n,o),u+=i.data.length,i=i.next;return a},e}(),o&&o.inspect&&o.inspect.custom&&(e.exports.prototype[o.inspect.custom]=function(){var e=o.inspect({length:this.length});return this.constructor.name+" "+e})},function(e,t){},function(e,t,n){"use strict";(function(e,t){!function(e,n){if(!e.setImmediate){var r,o,a,i,u,c=1,s={},l=!1,f=e.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(e);d=d&&d.setTimeout?d:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){h(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((a=new MessageChannel).port1.onmessage=function(e){h(e.data)},r=function(e){a.port2.postMessage(e)}):f&&"onreadystatechange"in f.createElement("script")?(o=f.documentElement,r=function(e){var t=f.createElement("script");t.onreadystatechange=function(){h(e),t.onreadystatechange=null,o.removeChild(t),t=null},o.appendChild(t)}):r=function(e){setTimeout(h,0,e)}:(i="setImmediate$"+Math.random()+"$",u=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(i)&&h(+t.data.slice(i.length))},e.addEventListener?e.addEventListener("message",u,!1):e.attachEvent("onmessage",u),r=function(t){e.postMessage(i+t,"*")}),d.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n28&&a%2==1||1===a||28===a)&&((u=e.from(r))[0]|=128),(0,i.bufferToHex)(e.concat([(0,i.setLengthLeft)(n,32),(0,i.setLengthLeft)(u,32)]))};t.fromRpcSig=function(e){var t,n,r,o=(0,i.toBuffer)(e);if(o.length>=65)t=o.slice(0,32),n=o.slice(32,64),r=(0,i.bufferToInt)(o.slice(64));else{if(64!==o.length)throw new Error("Invalid signature length");t=o.slice(0,32),n=o.slice(32,64),r=(0,i.bufferToInt)(o.slice(32,33))>>7,n[0]&=127}return r<27&&(r+=27),{v:r,r:t,s:n}};t.isValidSignature=function(e,t,n,r,o){void 0===r&&(r=!0);var i=new a.default("7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0",16),u=new a.default("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141",16);if(32!==t.length||32!==n.length)return!1;if(!f(l(e,o)))return!1;var c=new a.default(t),s=new a.default(n);return!(c.isZero()||c.gt(u)||s.isZero()||s.gt(u))&&(!r||1!==s.cmp(i))};t.hashPersonalMessage=function(t){(0,c.assertIsBuffer)(t);var n=e.from("Ethereum Signed Message:\n"+t.length,"utf-8");return(0,u.keccak)(e.concat([n,t]))}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";(function(e){var r=n(0)(n(3)),o=Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]},a=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&o(t,e,n);return a(t,e),t},u=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.defineProperties=void 0;var c=u(n(139)),s=n(140),l=i(n(195)),f=n(114);t.defineProperties=function(t,n,o){if(t.raw=[],t._fields=[],t.toJSON=function(e){if(void 0===e&&(e=!1),e){var n={};return t._fields.forEach((function(e){n[e]="0x"+t[e].toString("hex")})),n}return(0,f.baToJSON)(t.raw)},t.serialize=function(){return l.encode(t.raw)},n.forEach((function(n,r){function o(){return t.raw[r]}function a(o){"00"!==(o=(0,f.toBuffer)(o)).toString("hex")||n.allowZero||(o=e.allocUnsafe(0)),n.allowLess&&n.length?(o=(0,f.unpadBuffer)(o),(0,c.default)(n.length>=o.length,"The field "+n.name+" must not have more "+n.length+" bytes")):n.allowZero&&0===o.length||!n.length||(0,c.default)(n.length===o.length,"The field "+n.name+" must have byte length of "+n.length),t.raw[r]=o}t._fields.push(n.name),Object.defineProperty(t,n.name,{enumerable:!0,configurable:!0,get:o,set:a}),n.default&&(t[n.name]=n.default),n.alias&&Object.defineProperty(t,n.alias,{enumerable:!1,configurable:!0,set:a,get:o})})),o)if("string"==typeof o&&(o=e.from((0,s.stripHexPrefix)(o),"hex")),e.isBuffer(o)&&(o=l.decode(o)),Array.isArray(o)){if(o.length>t._fields.length)throw new Error("wrong number of fields in data");o.forEach((function(e,n){t[t._fields[n]]=(0,f.toBuffer)(e)}))}else{if("object"!==(0,r.default)(o))throw new Error("invalid data");var a=Object.keys(o);n.forEach((function(e){-1!==a.indexOf(e.name)&&(t[e.name]=o[e.name]),-1!==a.indexOf(e.alias)&&(t[e.alias]=o[e.alias])}))}}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";var r=Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]},o=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},a=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&r(t,e,n);return o(t,e),t},i=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.rlp=t.BN=void 0;var u=i(n(13));t.BN=u.default;var c=a(n(195));t.rlp=c},function(e,t,n){"use strict";var r=n(0)(n(3));Object.defineProperty(t,"__esModule",{value:!0});var o=n(784);function a(e){return"string"==typeof e&&(!!/^(0x)?[0-9a-f]{512}$/i.test(e)&&!(!/^(0x)?[0-9a-f]{512}$/.test(e)&&!/^(0x)?[0-9A-F]{512}$/.test(e)))}function i(e,t){"object"===(0,r.default)(t)&&t.constructor===Uint8Array&&(t=o.bytesToHex(t));for(var n=o.keccak256(t).replace("0x",""),a=0;a<12;a+=4){var i=(parseInt(n.substr(a,2),16)<<8)+parseInt(n.substr(a+2,2),16)&2047,c=1<=48&&e<=57)return e-48;if(e>=65&&e<=70)return e-55;if(e>=97&&e<=102)return e-87;throw new Error("invalid bloom")}function c(e){return"string"==typeof e&&(!!/^(0x)?[0-9a-f]{64}$/i.test(e)&&!(!/^(0x)?[0-9a-f]{64}$/.test(e)&&!/^(0x)?[0-9A-F]{64}$/.test(e)))}function s(e){return"string"==typeof e&&(!!e.match(/^(0x)?[0-9a-fA-F]{40}$/)||!!e.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/))}t.isBloom=a,t.isInBloom=i,t.isUserEthereumAddressInBloom=function(e,t){if(!a(e))throw new Error("Invalid bloom given");if(!s(t))throw new Error('Invalid ethereum address given: "'.concat(t,'"'));return i(e,o.padLeft(t,64))},t.isContractAddressInBloom=function(e,t){if(!a(e))throw new Error("Invalid bloom given");if(!s(t))throw new Error('Invalid contract address given: "'.concat(t,'"'));return i(e,t)},t.isTopicInBloom=function(e,t){if(!a(e))throw new Error("Invalid bloom given");if(!c(t))throw new Error("Invalid topic");return i(e,t)},t.isTopic=c,t.isAddress=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(785);function o(e){if(null==e)throw new Error("cannot convert null value to array");if("string"==typeof e){var t=e.match(/^(0x)?[0-9a-fA-F]*$/);if(!t)throw new Error("invalid hexidecimal string");if("0x"!==t[1])throw new Error("hex string must have 0x prefix");(e=e.substring(2)).length%2&&(e="0"+e);for(var n=[],r=0;r=256||parseInt(String(n))!=n)return!1}return!0}(e))return a(new Uint8Array(e));throw new Error("invalid arrayify value")}function a(e){var t=arguments;return void 0!==e.slice||(e.slice=function(){var n=Array.prototype.slice.call(t);return a(new Uint8Array(Array.prototype.slice.apply(e,n)))}),e}t.keccak256=function(e){return"0x"+r.keccak_256(o(e))},t.padLeft=function(e,t){var n=/^0x/i.test(e)||"number"==typeof e,r=t-(e=e.toString().replace(/^0x/i,"")).length+1>=0?t-e.length+1:0;return(n?"0x":"")+new Array(r).join("0")+e},t.bytesToHex=function(e){for(var t=[],n=0;n>>4).toString(16)),t.push((15&e[n]).toString(16));return"0x".concat(t.join("").replace(/^0+/,""))},t.toByteArray=o},function(e,t,n){"use strict";(function(e,r,o){var a,i=n(0)(n(3)); +*/var r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;function i(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,u,c=i(e),s=1;s=o)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),u=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),y(n)?r.showHidden=n:n&&t._extend(r,n),k(r.showHidden)&&(r.showHidden=!1),k(r.depth)&&(r.depth=2),k(r.colors)&&(r.colors=!1),k(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=s),f(r,e,r.depth)}function s(e,t){var n=c.styles[t];return n?"["+c.colors[n][0]+"m"+e+"["+c.colors[n][1]+"m":e}function l(e,t){return e}function f(e,n,r){if(e.customInspect&&n&&A(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,e);return v(o)||(o=f(e,o,r)),o}var a=function(e,t){if(k(t))return e.stylize("undefined","undefined");if(v(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(b(t))return e.stylize(""+t,"number");if(y(t))return e.stylize(""+t,"boolean");if(m(t))return e.stylize("null","null")}(e,n);if(a)return a;var i=Object.keys(n),u=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(i);if(e.showHidden&&(i=Object.getOwnPropertyNames(n)),I(n)&&(i.indexOf("message")>=0||i.indexOf("description")>=0))return d(n);if(0===i.length){if(A(n)){var c=n.name?": "+n.name:"";return e.stylize("[Function"+c+"]","special")}if(g(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(w(n))return e.stylize(Date.prototype.toString.call(n),"date");if(I(n))return d(n)}var s,l="",_=!1,T=["{","}"];(h(n)&&(_=!0,T=["[","]"]),A(n))&&(l=" [Function"+(n.name?": "+n.name:"")+"]");return g(n)&&(l=" "+RegExp.prototype.toString.call(n)),w(n)&&(l=" "+Date.prototype.toUTCString.call(n)),I(n)&&(l=" "+d(n)),0!==i.length||_&&0!=n.length?r<0?g(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),s=_?function(e,t,n,r,o){for(var a=[],i=0,u=t.length;i=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(s,l,T)):T[0]+l+T[1]}function d(e){return"["+Error.prototype.toString.call(e)+"]"}function p(e,t,n,r,o,a){var i,u,c;if((c=Object.getOwnPropertyDescriptor(t,o)||{value:t[o]}).get?u=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(u=e.stylize("[Setter]","special")),S(r,o)||(i="["+o+"]"),u||(e.seen.indexOf(c.value)<0?(u=m(n)?f(e,c.value,null):f(e,c.value,n-1)).indexOf("\n")>-1&&(u=a?u.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+u.split("\n").map((function(e){return" "+e})).join("\n")):u=e.stylize("[Circular]","special")),k(i)){if(a&&o.match(/^\d+$/))return u;(i=JSON.stringify(""+o)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(i=i.substr(1,i.length-2),i=e.stylize(i,"name")):(i=i.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),i=e.stylize(i,"string"))}return i+": "+u}function h(e){return Array.isArray(e)}function y(e){return"boolean"==typeof e}function m(e){return null===e}function b(e){return"number"==typeof e}function v(e){return"string"==typeof e}function k(e){return void 0===e}function g(e){return _(e)&&"[object RegExp]"===T(e)}function _(e){return"object"===(0,r.default)(e)&&null!==e}function w(e){return _(e)&&"[object Date]"===T(e)}function I(e){return _(e)&&("[object Error]"===T(e)||e instanceof Error)}function A(e){return"function"==typeof e}function T(e){return Object.prototype.toString.call(e)}function O(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(k(i)&&(i=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!u[n])if(new RegExp("\\b"+n+"\\b","i").test(i)){var r=e.pid;u[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else u[n]=function(){};return u[n]},t.inspect=c,c.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},c.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=h,t.isBoolean=y,t.isNull=m,t.isNullOrUndefined=function(e){return null==e},t.isNumber=b,t.isString=v,t.isSymbol=function(e){return"symbol"===(0,r.default)(e)},t.isUndefined=k,t.isRegExp=g,t.isObject=_,t.isDate=w,t.isError=I,t.isFunction=A,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"===(0,r.default)(e)||void 0===e},t.isBuffer=n(867);var P=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function E(){var e=new Date,t=[O(e.getHours()),O(e.getMinutes()),O(e.getSeconds())].join(":");return[e.getDate(),P[e.getMonth()],t].join(" ")}function S(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",E(),t.format.apply(t,arguments))},t.inherits=n(868),t._extend=function(e,t){if(!t||!_(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var R="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function D(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(R&&e[R]){var t;if("function"!=typeof(t=e[R]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,R,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),o=[],a=0;a=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:function(e){return new Uint8Array(e)},t=arguments.length>1?arguments[1]:void 0;return"function"==typeof e&&(e=e(t)),v("output",e,t),e}function _(e){return Object.prototype.toString.call(e).slice(8,-1)}e.exports=function(e){return{contextRandomize:function(t){switch(b(null===t||t instanceof Uint8Array,"Expected seed to be an Uint8Array or null"),null!==t&&v("seed",t,32),e.contextRandomize(t)){case 1:throw new Error(c)}},privateKeyVerify:function(t){return v("private key",t,32),0===e.privateKeyVerify(t)},privateKeyNegate:function(t){switch(v("private key",t,32),e.privateKeyNegate(t)){case 0:return t;case 1:throw new Error(a)}},privateKeyTweakAdd:function(t,n){switch(v("private key",t,32),v("tweak",n,32),e.privateKeyTweakAdd(t,n)){case 0:return t;case 1:throw new Error(i)}},privateKeyTweakMul:function(t,n){switch(v("private key",t,32),v("tweak",n,32),e.privateKeyTweakMul(t,n)){case 0:return t;case 1:throw new Error(u)}},publicKeyVerify:function(t){return v("public key",t,[33,65]),0===e.publicKeyVerify(t)},publicKeyCreate:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("private key",t,32),k(n),r=g(r,n?33:65),e.publicKeyCreate(r,t)){case 0:return r;case 1:throw new Error(s);case 2:throw new Error(f)}},publicKeyConvert:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("public key",t,[33,65]),k(n),r=g(r,n?33:65),e.publicKeyConvert(r,t)){case 0:return r;case 1:throw new Error(l);case 2:throw new Error(f)}},publicKeyNegate:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("public key",t,[33,65]),k(n),r=g(r,n?33:65),e.publicKeyNegate(r,t)){case 0:return r;case 1:throw new Error(l);case 2:throw new Error(a);case 3:throw new Error(f)}},publicKeyCombine:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=arguments.length>2?arguments[2]:void 0;b(Array.isArray(t),"Expected public keys to be an Array"),b(t.length>0,"Expected public keys array will have more than zero items");var a,i=r(t);try{for(i.s();!(a=i.n()).done;){var u=a.value;v("public key",u,[33,65])}}catch(e){i.e(e)}finally{i.f()}switch(k(n),o=g(o,n?33:65),e.publicKeyCombine(o,t)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(d);case 3:throw new Error(f)}},publicKeyTweakAdd:function(t,n){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("tweak",n,32),k(r),o=g(o,r?33:65),e.publicKeyTweakAdd(o,t,n)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(i)}},publicKeyTweakMul:function(t,n){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("tweak",n,32),k(r),o=g(o,r?33:65),e.publicKeyTweakMul(o,t,n)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(u)}},signatureNormalize:function(t){switch(v("signature",t,64),e.signatureNormalize(t)){case 0:return t;case 1:throw new Error(p)}},signatureExport:function(t,n){v("signature",t,64);var r={output:n=g(n,72),outputlen:72};switch(e.signatureExport(r,t)){case 0:return n.slice(0,r.outputlen);case 1:throw new Error(p);case 2:throw new Error(a)}},signatureImport:function(t,n){switch(v("signature",t),n=g(n,64),e.signatureImport(n,t)){case 0:return n;case 1:throw new Error(p);case 2:throw new Error(a)}},ecdsaSign:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;v("message",t,32),v("private key",n,32),b("Object"===_(r),"Expected options to be an Object"),void 0!==r.data&&v("options.data",r.data),void 0!==r.noncefn&&b("Function"===_(r.noncefn),"Expected options.noncefn to be a Function");var i={signature:o=g(o,64),recid:null};switch(e.ecdsaSign(i,t,n,r.data,r.noncefn)){case 0:return i;case 1:throw new Error(h);case 2:throw new Error(a)}},ecdsaVerify:function(t,n,r){switch(v("signature",t,64),v("message",n,32),v("public key",r,[33,65]),e.ecdsaVerify(t,n,r)){case 0:return!0;case 3:return!1;case 1:throw new Error(p);case 2:throw new Error(l)}},ecdsaRecover:function(t,n,r){var o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=arguments.length>4?arguments[4]:void 0;switch(v("signature",t,64),b("Number"===_(n)&&n>=0&&n<=3,"Expected recovery id to be a Number within interval [0, 3]"),v("message",r,32),k(o),i=g(i,o?33:65),e.ecdsaRecover(i,t,n,r)){case 0:return i;case 1:throw new Error(p);case 2:throw new Error(y);case 3:throw new Error(a)}},ecdh:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("private key",n,32),b("Object"===_(r),"Expected options to be an Object"),void 0!==r.data&&v("options.data",r.data),void 0!==r.hashfn?(b("Function"===_(r.hashfn),"Expected options.hashfn to be a Function"),void 0!==r.xbuf&&v("options.xbuf",r.xbuf,32),void 0!==r.ybuf&&v("options.ybuf",r.ybuf,32),v("output",o)):o=g(o,32),e.ecdh(o,t,n,r.data,r.hashfn,r.xbuf,r.ybuf)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(m)}}}}},function(e,t,n){"use strict";var r=new(0,n(167).ec)("secp256k1"),o=r.curve,a=o.n.constructor;function i(e){var t=e[0];switch(t){case 2:case 3:return 33!==e.length?null:function(e,t){var n=new a(t);if(n.cmp(o.p)>=0)return null;var i=(n=n.toRed(o.red)).redSqr().redIMul(n).redIAdd(o.b).redSqrt();return 3===e!==i.isOdd()&&(i=i.redNeg()),r.keyPair({pub:{x:n,y:i}})}(t,e.subarray(1,33));case 4:case 6:case 7:return 65!==e.length?null:function(e,t,n){var i=new a(t),u=new a(n);if(i.cmp(o.p)>=0||u.cmp(o.p)>=0)return null;if(i=i.toRed(o.red),u=u.toRed(o.red),(6===e||7===e)&&u.isOdd()!==(7===e))return null;var c=i.redSqr().redIMul(i);return u.redSqr().redISub(c.redIAdd(o.b)).isZero()?r.keyPair({pub:{x:i,y:u}}):null}(t,e.subarray(1,33),e.subarray(33,65));default:return null}}function u(e,t){for(var n=t.encode(null,33===e.length),r=0;r=0)return 1;if(n.iadd(new a(e)),n.cmp(o.n)>=0&&n.isub(o.n),n.isZero())return 1;var r=n.toArrayLike(Uint8Array,"be",32);return e.set(r),0},privateKeyTweakMul:function(e,t){var n=new a(t);if(n.cmp(o.n)>=0||n.isZero())return 1;n.imul(new a(e)),n.cmp(o.n)>=0&&(n=n.umod(o.n));var r=n.toArrayLike(Uint8Array,"be",32);return e.set(r),0},publicKeyVerify:function(e){return null===i(e)?1:0},publicKeyCreate:function(e,t){var n=new a(t);return n.cmp(o.n)>=0||n.isZero()?1:(u(e,r.keyFromPrivate(t).getPublic()),0)},publicKeyConvert:function(e,t){var n=i(t);return null===n?1:(u(e,n.getPublic()),0)},publicKeyNegate:function(e,t){var n=i(t);if(null===n)return 1;var r=n.getPublic();return r.y=r.y.redNeg(),u(e,r),0},publicKeyCombine:function(e,t){for(var n=new Array(t.length),r=0;r=0)return 2;var c=r.getPublic().add(o.g.mul(n));return c.isInfinity()?2:(u(e,c),0)},publicKeyTweakMul:function(e,t,n){var r=i(t);return null===r?1:(n=new a(n)).cmp(o.n)>=0||n.isZero()?2:(u(e,r.getPublic().mul(n)),0)},signatureNormalize:function(e){var t=new a(e.subarray(0,32)),n=new a(e.subarray(32,64));return t.cmp(o.n)>=0||n.cmp(o.n)>=0?1:(1===n.cmp(r.nh)&&e.set(o.n.sub(n).toArrayLike(Uint8Array,"be",32),32),0)},signatureExport:function(e,t){var n=t.subarray(0,32),r=t.subarray(32,64);if(new a(n).cmp(o.n)>=0)return 1;if(new a(r).cmp(o.n)>=0)return 1;var i=e.output,u=i.subarray(4,37);u[0]=0,u.set(n,1);for(var c=33,s=0;c>1&&0===u[s]&&!(128&u[s+1]);--c,++s);if(128&(u=u.subarray(s))[0])return 1;if(c>1&&0===u[0]&&!(128&u[1]))return 1;var l=i.subarray(39,72);l[0]=0,l.set(r,1);for(var f=33,d=0;f>1&&0===l[d]&&!(128&l[d+1]);--f,++d);return 128&(l=l.subarray(d))[0]||f>1&&0===l[0]&&!(128&l[1])?1:(e.outputlen=6+c+f,i[0]=48,i[1]=e.outputlen-2,i[2]=2,i[3]=u.length,i.set(u,4),i[4+c]=2,i[5+c]=l.length,i.set(l,6+c),0)},signatureImport:function(e,t){if(t.length<8)return 1;if(t.length>72)return 1;if(48!==t[0])return 1;if(t[1]!==t.length-2)return 1;if(2!==t[2])return 1;var n=t[3];if(0===n)return 1;if(5+n>=t.length)return 1;if(2!==t[4+n])return 1;var r=t[5+n];if(0===r)return 1;if(6+n+r!==t.length)return 1;if(128&t[4])return 1;if(n>1&&0===t[4]&&!(128&t[5]))return 1;if(128&t[n+6])return 1;if(r>1&&0===t[n+6]&&!(128&t[n+7]))return 1;var i=t.subarray(4,4+n);if(33===i.length&&0===i[0]&&(i=i.subarray(1)),i.length>32)return 1;var u=t.subarray(6+n);if(33===u.length&&0===u[0]&&(u=u.slice(1)),u.length>32)throw new Error("S length is too long");var c=new a(i);c.cmp(o.n)>=0&&(c=new a(0));var s=new a(t.subarray(6+n));return s.cmp(o.n)>=0&&(s=new a(0)),e.set(c.toArrayLike(Uint8Array,"be",32),0),e.set(s.toArrayLike(Uint8Array,"be",32),32),0},ecdsaSign:function(e,t,n,i,u){if(u){var c=u;u=function(e){var r=c(t,n,null,i,e);if(!(r instanceof Uint8Array&&32===r.length))throw new Error("This is the way");return new a(r)}}var s,l=new a(n);if(l.cmp(o.n)>=0||l.isZero())return 1;try{s=r.sign(t,n,{canonical:!0,k:u,pers:i})}catch(e){return 1}return e.signature.set(s.r.toArrayLike(Uint8Array,"be",32),0),e.signature.set(s.s.toArrayLike(Uint8Array,"be",32),32),e.recid=s.recoveryParam,0},ecdsaVerify:function(e,t,n){var u={r:e.subarray(0,32),s:e.subarray(32,64)},c=new a(u.r),s=new a(u.s);if(c.cmp(o.n)>=0||s.cmp(o.n)>=0)return 1;if(1===s.cmp(r.nh)||c.isZero()||s.isZero())return 3;var l=i(n);if(null===l)return 2;var f=l.getPublic();return r.verify(t,u,f)?0:3},ecdsaRecover:function(e,t,n,i){var c,s={r:t.slice(0,32),s:t.slice(32,64)},l=new a(s.r),f=new a(s.s);if(l.cmp(o.n)>=0||f.cmp(o.n)>=0)return 1;if(l.isZero()||f.isZero())return 2;try{c=r.recoverPubKey(i,s,n)}catch(e){return 2}return u(e,c),0},ecdh:function(e,t,n,u,c,s,l){var f=i(t);if(null===f)return 1;var d=new a(n);if(d.cmp(o.n)>=0||d.isZero())return 2;var p=f.getPublic().mul(d);if(void 0===c)for(var h=p.encode(null,!0),y=r.hash().update(h).digest(),m=0;m<32;++m)e[m]=y[m];else{s||(s=new Uint8Array(32));for(var b=p.getX().toArray("be",32),v=0;v<32;++v)s[v]=b[v];l||(l=new Uint8Array(32));for(var k=p.getY().toArray("be",32),g=0;g<32;++g)l[g]=k[g];var _=c(s,l,u);if(!(_ instanceof Uint8Array&&_.length===e.length))return 2;e.set(_)}return 0}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(119);t.getRandomBytes=function(e){return new Promise((function(t,n){r(e,(function(e,r){e?n(e):t(r)}))}))},t.getRandomBytesSync=function(e){return r(e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(873),o=n(874);t.keccak224=r.createHashFunction((function(){return o("keccak224")})),t.keccak256=r.createHashFunction((function(){return o("keccak256")})),t.keccak384=r.createHashFunction((function(){return o("keccak384")})),t.keccak512=r.createHashFunction((function(){return o("keccak512")}))},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.createHashFunction=function(t){return function(n){var r=t();return r.update(n),e.from(r.digest())}}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";e.exports=n(875)(n(885))},function(e,t,n){"use strict";var r=n(876),o=n(884);e.exports=function(e){var t=r(e),n=o(e);return function(e,r){switch("string"==typeof e?e.toLowerCase():e){case"keccak224":return new t(1152,448,null,224,r);case"keccak256":return new t(1088,512,null,256,r);case"keccak384":return new t(832,768,null,384,r);case"keccak512":return new t(576,1024,null,512,r);case"sha3-224":return new t(1152,448,6,224,r);case"sha3-256":return new t(1088,512,6,256,r);case"sha3-384":return new t(832,768,6,384,r);case"sha3-512":return new t(576,1024,6,512,r);case"shake128":return new n(1344,256,31,r);case"shake256":return new n(1088,512,31,r);default:throw new Error("Invald algorithm: "+e)}}}},function(e,t,n){"use strict";(function(t){var r=n(0),o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=n(441).Transform;e.exports=function(e){return function(n){(0,i.default)(u,n);var r=s(u);function u(t,n,a,i,c){var s;return(0,o.default)(this,u),(s=r.call(this,c))._rate=t,s._capacity=n,s._delimitedSuffix=a,s._hashBitLength=i,s._options=c,s._state=new e,s._state.initialize(t,n),s._finalized=!1,s}return(0,a.default)(u,[{key:"_transform",value:function(e,t,n){var r=null;try{this.update(e,t)}catch(e){r=e}n(r)}},{key:"_flush",value:function(e){var t=null;try{this.push(this.digest())}catch(e){t=e}e(t)}},{key:"update",value:function(e,n){if(!t.isBuffer(e)&&"string"!=typeof e)throw new TypeError("Data must be a string or a buffer");if(this._finalized)throw new Error("Digest already called");return t.isBuffer(e)||(e=t.from(e,n)),this._state.absorb(e),this}},{key:"digest",value:function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0,this._delimitedSuffix&&this._state.absorbLastFewBits(this._delimitedSuffix);var t=this._state.squeeze(this._hashBitLength/8);return void 0!==e&&(t=t.toString(e)),this._resetState(),t}},{key:"_resetState",value:function(){return this._state.initialize(this._rate,this._capacity),this}},{key:"_clone",value:function(){var e=new u(this._rate,this._capacity,this._delimitedSuffix,this._hashBitLength,this._options);return this._state.copy(e._state),e._finalized=this._finalized,e}}]),u}(l)}}).call(this,n(15).Buffer)},function(e,t){},function(e,t,n){"use strict";function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){for(var n=0;n0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return i.alloc(0);for(var t,n,r,o=i.allocUnsafe(e>>>0),a=this.head,u=0;a;)t=a.data,n=o,r=u,i.prototype.copy.call(t,n,r),u+=a.data.length,a=a.next;return o}},{key:"consume",value:function(e,t){var n;return eo.length?o.length:e;if(a===o.length?r+=o:r+=o.slice(0,e),0==(e-=a)){a===o.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=o.slice(a));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=i.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var o=n.data,a=e>o.length?o.length:e;if(o.copy(t,t.length-e,0,a),0==(e-=a)){a===o.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++r}return this.length-=r,t}},{key:c,value:function(e,t){return u(this,function(e){for(var t=1;t0,(function(e){r||(r=e),e&&i.forEach(s),a||(i.forEach(s),o(r))}))}));return t.reduce(l)}},function(e,t,n){"use strict";(function(t){var r=n(0),o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=n(441).Transform;e.exports=function(e){return function(n){(0,i.default)(u,n);var r=s(u);function u(t,n,a,i){var c;return(0,o.default)(this,u),(c=r.call(this,i))._rate=t,c._capacity=n,c._delimitedSuffix=a,c._options=i,c._state=new e,c._state.initialize(t,n),c._finalized=!1,c}return(0,a.default)(u,[{key:"_transform",value:function(e,t,n){var r=null;try{this.update(e,t)}catch(e){r=e}n(r)}},{key:"_flush",value:function(){}},{key:"_read",value:function(e){this.push(this.squeeze(e))}},{key:"update",value:function(e,n){if(!t.isBuffer(e)&&"string"!=typeof e)throw new TypeError("Data must be a string or a buffer");if(this._finalized)throw new Error("Squeeze already called");return t.isBuffer(e)||(e=t.from(e,n)),this._state.absorb(e),this}},{key:"squeeze",value:function(e,t){this._finalized||(this._finalized=!0,this._state.absorbLastFewBits(this._delimitedSuffix));var n=this._state.squeeze(e);return void 0!==t&&(n=n.toString(t)),n}},{key:"_resetState",value:function(){return this._state.initialize(this._rate,this._capacity),this}},{key:"_clone",value:function(){var e=new u(this._rate,this._capacity,this._delimitedSuffix,this._options);return this._state.copy(e._state),e._finalized=this._finalized,e}}]),u}(l)}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";(function(t){var r=n(886);function o(){this.state=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.blockSize=null,this.count=0,this.squeezing=!1}o.prototype.initialize=function(e,t){for(var n=0;n<50;++n)this.state[n]=0;this.blockSize=e/8,this.count=0,this.squeezing=!1},o.prototype.absorb=function(e){for(var t=0;t>>this.count%4*8&255,this.count+=1,this.count===this.blockSize&&(r.p1600(this.state),this.count=0);return n},o.prototype.copy=function(e){for(var t=0;t<50;++t)e.state[t]=this.state[t];e.blockSize=this.blockSize,e.count=this.count,e.squeezing=this.squeezing},e.exports=o}).call(this,n(15).Buffer)},function(e,t,n){"use strict";var r=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648];t.p1600=function(e){for(var t=0;t<24;++t){var n=e[0]^e[10]^e[20]^e[30]^e[40],o=e[1]^e[11]^e[21]^e[31]^e[41],a=e[2]^e[12]^e[22]^e[32]^e[42],i=e[3]^e[13]^e[23]^e[33]^e[43],u=e[4]^e[14]^e[24]^e[34]^e[44],c=e[5]^e[15]^e[25]^e[35]^e[45],s=e[6]^e[16]^e[26]^e[36]^e[46],l=e[7]^e[17]^e[27]^e[37]^e[47],f=e[8]^e[18]^e[28]^e[38]^e[48],d=e[9]^e[19]^e[29]^e[39]^e[49],p=f^(a<<1|i>>>31),h=d^(i<<1|a>>>31),y=e[0]^p,m=e[1]^h,b=e[10]^p,v=e[11]^h,k=e[20]^p,g=e[21]^h,_=e[30]^p,w=e[31]^h,I=e[40]^p,A=e[41]^h;p=n^(u<<1|c>>>31),h=o^(c<<1|u>>>31);var T=e[2]^p,O=e[3]^h,P=e[12]^p,E=e[13]^h,S=e[22]^p,R=e[23]^h,D=e[32]^p,C=e[33]^h,N=e[42]^p,B=e[43]^h;p=a^(s<<1|l>>>31),h=i^(l<<1|s>>>31);var M=e[4]^p,j=e[5]^h,x=e[14]^p,F=e[15]^h,U=e[24]^p,L=e[25]^h,G=e[34]^p,K=e[35]^h,z=e[44]^p,Q=e[45]^h;p=u^(f<<1|d>>>31),h=c^(d<<1|f>>>31);var H=e[6]^p,V=e[7]^h,W=e[16]^p,q=e[17]^h,Y=e[26]^p,Z=e[27]^h,J=e[36]^p,X=e[37]^h,$=e[46]^p,ee=e[47]^h;p=s^(n<<1|o>>>31),h=l^(o<<1|n>>>31);var te=e[8]^p,ne=e[9]^h,re=e[18]^p,oe=e[19]^h,ae=e[28]^p,ie=e[29]^h,ue=e[38]^p,ce=e[39]^h,se=e[48]^p,le=e[49]^h,fe=y,de=m,pe=v<<4|b>>>28,he=b<<4|v>>>28,ye=k<<3|g>>>29,me=g<<3|k>>>29,be=w<<9|_>>>23,ve=_<<9|w>>>23,ke=I<<18|A>>>14,ge=A<<18|I>>>14,_e=T<<1|O>>>31,we=O<<1|T>>>31,Ie=E<<12|P>>>20,Ae=P<<12|E>>>20,Te=S<<10|R>>>22,Oe=R<<10|S>>>22,Pe=C<<13|D>>>19,Ee=D<<13|C>>>19,Se=N<<2|B>>>30,Re=B<<2|N>>>30,De=j<<30|M>>>2,Ce=M<<30|j>>>2,Ne=x<<6|F>>>26,Be=F<<6|x>>>26,Me=L<<11|U>>>21,je=U<<11|L>>>21,xe=G<<15|K>>>17,Fe=K<<15|G>>>17,Ue=Q<<29|z>>>3,Le=z<<29|Q>>>3,Ge=H<<28|V>>>4,Ke=V<<28|H>>>4,ze=q<<23|W>>>9,Qe=W<<23|q>>>9,He=Y<<25|Z>>>7,Ve=Z<<25|Y>>>7,We=J<<21|X>>>11,qe=X<<21|J>>>11,Ye=ee<<24|$>>>8,Ze=$<<24|ee>>>8,Je=te<<27|ne>>>5,Xe=ne<<27|te>>>5,$e=re<<20|oe>>>12,et=oe<<20|re>>>12,tt=ie<<7|ae>>>25,nt=ae<<7|ie>>>25,rt=ue<<8|ce>>>24,ot=ce<<8|ue>>>24,at=se<<14|le>>>18,it=le<<14|se>>>18;e[0]=fe^~Ie&Me,e[1]=de^~Ae&je,e[10]=Ge^~$e&ye,e[11]=Ke^~et&me,e[20]=_e^~Ne&He,e[21]=we^~Be&Ve,e[30]=Je^~pe&Te,e[31]=Xe^~he&Oe,e[40]=De^~ze&tt,e[41]=Ce^~Qe&nt,e[2]=Ie^~Me&We,e[3]=Ae^~je&qe,e[12]=$e^~ye&Pe,e[13]=et^~me&Ee,e[22]=Ne^~He&rt,e[23]=Be^~Ve&ot,e[32]=pe^~Te&xe,e[33]=he^~Oe&Fe,e[42]=ze^~tt&be,e[43]=Qe^~nt&ve,e[4]=Me^~We&at,e[5]=je^~qe&it,e[14]=ye^~Pe&Ue,e[15]=me^~Ee&Le,e[24]=He^~rt&ke,e[25]=Ve^~ot&ge,e[34]=Te^~xe&Ye,e[35]=Oe^~Fe&Ze,e[44]=tt^~be&Se,e[45]=nt^~ve&Re,e[6]=We^~at&fe,e[7]=qe^~it&de,e[16]=Pe^~Ue&Ge,e[17]=Ee^~Le&Ke,e[26]=rt^~ke&_e,e[27]=ot^~ge&we,e[36]=xe^~Ye&Je,e[37]=Fe^~Ze&Xe,e[46]=be^~Se&De,e[47]=ve^~Re&Ce,e[8]=at^~fe&Ie,e[9]=it^~de&Ae,e[18]=Ue^~Ge&$e,e[19]=Le^~Ke&et,e[28]=ke^~_e&Ne,e[29]=ge^~we&Be,e[38]=Ye^~Je&pe,e[39]=Ze^~Xe&he,e[48]=Se^~De&ze,e[49]=Re^~Ce&Qe,e[0]^=r[2*t],e[1]^=r[2*t+1]}}},function(e,t,n){"use strict";(t=e.exports=n(449)).Stream=t,t.Readable=t,t.Writable=n(453),t.Duplex=n(176),t.Transform=n(454),t.PassThrough=n(893),t.finished=n(307),t.pipeline=n(894)},function(e,t){},function(e,t,n){"use strict";function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){for(var n=0;n0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return i.alloc(0);for(var t,n,r,o=i.allocUnsafe(e>>>0),a=this.head,u=0;a;)t=a.data,n=o,r=u,i.prototype.copy.call(t,n,r),u+=a.data.length,a=a.next;return o}},{key:"consume",value:function(e,t){var n;return eo.length?o.length:e;if(a===o.length?r+=o:r+=o.slice(0,e),0==(e-=a)){a===o.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=o.slice(a));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=i.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var o=n.data,a=e>o.length?o.length:e;if(o.copy(t,t.length-e,0,a),0==(e-=a)){a===o.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++r}return this.length-=r,t}},{key:c,value:function(e,t){return u(this,function(e){for(var t=1;t0,(function(e){r||(r=e),e&&i.forEach(s),a||(i.forEach(s),o(r))}))}));return t.reduce(l)}},function(e,t,n){"use strict";var r=n(16),o=n(177),a=n(26).Buffer,i=[1518500249,1859775393,-1894007588,-899497514],u=new Array(80);function c(){this.init(),this._w=u,o.call(this,64,56)}function s(e){return e<<30|e>>>2}function l(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,o),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,f=0;f<16;++f)n[f]=e.readInt32BE(4*f);for(;f<80;++f)n[f]=n[f-3]^n[f-8]^n[f-14]^n[f-16];for(var d=0;d<80;++d){var p=~~(d/20),h=0|((t=r)<<5|t>>>27)+l(p,o,a,u)+c+n[d]+i[p];c=u,u=a,a=s(o),o=r,r=h}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},function(e,t,n){"use strict";var r=n(16),o=n(177),a=n(26).Buffer,i=[1518500249,1859775393,-1894007588,-899497514],u=new Array(80);function c(){this.init(),this._w=u,o.call(this,64,56)}function s(e){return e<<5|e>>>27}function l(e){return e<<30|e>>>2}function f(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,o),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,d=0;d<16;++d)n[d]=e.readInt32BE(4*d);for(;d<80;++d)n[d]=(t=n[d-3]^n[d-8]^n[d-14]^n[d-16])<<1|t>>>31;for(var p=0;p<80;++p){var h=~~(p/20),y=s(r)+f(h,o,a,u)+c+n[p]+i[h]|0;c=u,u=a,a=l(o),o=r,r=y}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},function(e,t,n){"use strict";var r=n(16),o=n(455),a=n(177),i=n(26).Buffer,u=new Array(64);function c(){this.init(),this._w=u,a.call(this,64,56)}r(c,o),c.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},c.prototype._hash=function(){var e=i.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=c},function(e,t,n){"use strict";var r=n(16),o=n(456),a=n(177),i=n(26).Buffer,u=new Array(160);function c(){this.init(),this._w=u,a.call(this,128,112)}r(c,o),c.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},c.prototype._hash=function(){var e=i.allocUnsafe(48);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e},e.exports=c},function(e,t){},function(e,t,n){"use strict";var r=n(311).Buffer,o=n(901);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},e.prototype.concat=function(e){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var t,n,o,a=r.allocUnsafe(e>>>0),i=this.head,u=0;i;)t=i.data,n=a,o=u,t.copy(n,o),u+=i.data.length,i=i.next;return a},e}(),o&&o.inspect&&o.inspect.custom&&(e.exports.prototype[o.inspect.custom]=function(){var e=o.inspect({length:this.length});return this.constructor.name+" "+e})},function(e,t){},function(e,t,n){"use strict";(function(e,t){!function(e,n){if(!e.setImmediate){var r,o,a,i,u,c=1,s={},l=!1,f=e.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(e);d=d&&d.setTimeout?d:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){h(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((a=new MessageChannel).port1.onmessage=function(e){h(e.data)},r=function(e){a.port2.postMessage(e)}):f&&"onreadystatechange"in f.createElement("script")?(o=f.documentElement,r=function(e){var t=f.createElement("script");t.onreadystatechange=function(){h(e),t.onreadystatechange=null,o.removeChild(t),t=null},o.appendChild(t)}):r=function(e){setTimeout(h,0,e)}:(i="setImmediate$"+Math.random()+"$",u=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(i)&&h(+t.data.slice(i.length))},e.addEventListener?e.addEventListener("message",u,!1):e.attachEvent("onmessage",u),r=function(t){e.postMessage(i+t,"*")}),d.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n28&&a%2==1||1===a||28===a)&&((u=e.from(r))[0]|=128),(0,i.bufferToHex)(e.concat([(0,i.setLengthLeft)(n,32),(0,i.setLengthLeft)(u,32)]))};t.fromRpcSig=function(e){var t,n,r,o=(0,i.toBuffer)(e);if(o.length>=65)t=o.slice(0,32),n=o.slice(32,64),r=(0,i.bufferToInt)(o.slice(64));else{if(64!==o.length)throw new Error("Invalid signature length");t=o.slice(0,32),n=o.slice(32,64),r=(0,i.bufferToInt)(o.slice(32,33))>>7,n[0]&=127}return r<27&&(r+=27),{v:r,r:t,s:n}};t.isValidSignature=function(e,t,n,r,o){void 0===r&&(r=!0);var i=new a.default("7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0",16),u=new a.default("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141",16);if(32!==t.length||32!==n.length)return!1;if(!f(l(e,o)))return!1;var c=new a.default(t),s=new a.default(n);return!(c.isZero()||c.gt(u)||s.isZero()||s.gt(u))&&(!r||1!==s.cmp(i))};t.hashPersonalMessage=function(t){(0,c.assertIsBuffer)(t);var n=e.from("Ethereum Signed Message:\n"+t.length,"utf-8");return(0,u.keccak)(e.concat([n,t]))}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";(function(e){var r=n(0)(n(3)),o=Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]},a=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&o(t,e,n);return a(t,e),t},u=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.defineProperties=void 0;var c=u(n(170)),s=n(171),l=i(n(243)),f=n(141);t.defineProperties=function(t,n,o){if(t.raw=[],t._fields=[],t.toJSON=function(e){if(void 0===e&&(e=!1),e){var n={};return t._fields.forEach((function(e){n[e]="0x"+t[e].toString("hex")})),n}return(0,f.baToJSON)(t.raw)},t.serialize=function(){return l.encode(t.raw)},n.forEach((function(n,r){function o(){return t.raw[r]}function a(o){"00"!==(o=(0,f.toBuffer)(o)).toString("hex")||n.allowZero||(o=e.allocUnsafe(0)),n.allowLess&&n.length?(o=(0,f.unpadBuffer)(o),(0,c.default)(n.length>=o.length,"The field "+n.name+" must not have more "+n.length+" bytes")):n.allowZero&&0===o.length||!n.length||(0,c.default)(n.length===o.length,"The field "+n.name+" must have byte length of "+n.length),t.raw[r]=o}t._fields.push(n.name),Object.defineProperty(t,n.name,{enumerable:!0,configurable:!0,get:o,set:a}),n.default&&(t[n.name]=n.default),n.alias&&Object.defineProperty(t,n.alias,{enumerable:!1,configurable:!0,set:a,get:o})})),o)if("string"==typeof o&&(o=e.from((0,s.stripHexPrefix)(o),"hex")),e.isBuffer(o)&&(o=l.decode(o)),Array.isArray(o)){if(o.length>t._fields.length)throw new Error("wrong number of fields in data");o.forEach((function(e,n){t[t._fields[n]]=(0,f.toBuffer)(e)}))}else{if("object"!==(0,r.default)(o))throw new Error("invalid data");var a=Object.keys(o);n.forEach((function(e){-1!==a.indexOf(e.name)&&(t[e.name]=o[e.name]),-1!==a.indexOf(e.alias)&&(t[e.alias]=o[e.alias])}))}}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";var r=Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]},o=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},a=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&r(t,e,n);return o(t,e),t},i=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.rlp=t.BN=void 0;var u=i(n(10));t.BN=u.default;var c=a(n(243));t.rlp=c},function(e,t,n){"use strict";var r=n(0)(n(3));Object.defineProperty(t,"__esModule",{value:!0});var o=n(913);function a(e){return"string"==typeof e&&(!!/^(0x)?[0-9a-f]{512}$/i.test(e)&&!(!/^(0x)?[0-9a-f]{512}$/.test(e)&&!/^(0x)?[0-9A-F]{512}$/.test(e)))}function i(e,t){"object"===(0,r.default)(t)&&t.constructor===Uint8Array&&(t=o.bytesToHex(t));for(var n=o.keccak256(t).replace("0x",""),a=0;a<12;a+=4){var i=(parseInt(n.substr(a,2),16)<<8)+parseInt(n.substr(a+2,2),16)&2047,c=1<=48&&e<=57)return e-48;if(e>=65&&e<=70)return e-55;if(e>=97&&e<=102)return e-87;throw new Error("invalid bloom")}function c(e){return"string"==typeof e&&(!!/^(0x)?[0-9a-f]{64}$/i.test(e)&&!(!/^(0x)?[0-9a-f]{64}$/.test(e)&&!/^(0x)?[0-9A-F]{64}$/.test(e)))}function s(e){return"string"==typeof e&&(!!e.match(/^(0x)?[0-9a-fA-F]{40}$/)||!!e.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/))}t.isBloom=a,t.isInBloom=i,t.isUserEthereumAddressInBloom=function(e,t){if(!a(e))throw new Error("Invalid bloom given");if(!s(t))throw new Error('Invalid ethereum address given: "'.concat(t,'"'));return i(e,o.padLeft(t,64))},t.isContractAddressInBloom=function(e,t){if(!a(e))throw new Error("Invalid bloom given");if(!s(t))throw new Error('Invalid contract address given: "'.concat(t,'"'));return i(e,t)},t.isTopicInBloom=function(e,t){if(!a(e))throw new Error("Invalid bloom given");if(!c(t))throw new Error("Invalid topic");return i(e,t)},t.isTopic=c,t.isAddress=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(914);function o(e){if(null==e)throw new Error("cannot convert null value to array");if("string"==typeof e){var t=e.match(/^(0x)?[0-9a-fA-F]*$/);if(!t)throw new Error("invalid hexidecimal string");if("0x"!==t[1])throw new Error("hex string must have 0x prefix");(e=e.substring(2)).length%2&&(e="0"+e);for(var n=[],r=0;r=256||parseInt(String(n))!=n)return!1}return!0}(e))return a(new Uint8Array(e));throw new Error("invalid arrayify value")}function a(e){var t=arguments;return void 0!==e.slice||(e.slice=function(){var n=Array.prototype.slice.call(t);return a(new Uint8Array(Array.prototype.slice.apply(e,n)))}),e}t.keccak256=function(e){return"0x"+r.keccak_256(o(e))},t.padLeft=function(e,t){var n=/^0x/i.test(e)||"number"==typeof e,r=t-(e=e.toString().replace(/^0x/i,"")).length+1>=0?t-e.length+1:0;return(n?"0x":"")+new Array(r).join("0")+e},t.bytesToHex=function(e){for(var t=[],n=0;n>>4).toString(16)),t.push((15&e[n]).toString(16));return"0x".concat(t.join("").replace(/^0+/,""))},t.toByteArray=o},function(e,t,n){"use strict";(function(e,r,o){var a,i=n(0)(n(3)); /** * [js-sha3]{@link https://github.com/emn178/js-sha3} * @@ -30,7 +40,7 @@ object-assign * @copyright Chen, Yi-Cyuan 2015-2018 * @license MIT */ -!function(){var u="input is invalid type",c="object"===("undefined"==typeof window?"undefined":(0,i.default)(window)),s=c?window:{};s.JS_SHA3_NO_WINDOW&&(c=!1);var l=!c&&"object"===("undefined"==typeof self?"undefined":(0,i.default)(self));!s.JS_SHA3_NO_NODE_JS&&"object"===(void 0===e?"undefined":(0,i.default)(e))&&e.versions&&e.versions.node?s=r:l&&(s=self);var f=!s.JS_SHA3_NO_COMMON_JS&&"object"===(0,i.default)(o)&&o.exports,d=n(391),p=!s.JS_SHA3_NO_ARRAY_BUFFER&&"undefined"!=typeof ArrayBuffer,h="0123456789abcdef".split(""),y=[4,1024,262144,67108864],b=[0,8,16,24],m=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],v=[224,256,384,512],g=[128,256],k=["hex","buffer","arrayBuffer","array","digest"],_={128:168,256:136};!s.JS_SHA3_NO_NODE_JS&&Array.isArray||(Array.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)}),!p||!s.JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW&&ArrayBuffer.isView||(ArrayBuffer.isView=function(e){return"object"===(0,i.default)(e)&&e.buffer&&e.buffer.constructor===ArrayBuffer});for(var w=function(e,t,n){return function(r){return new x(e,t,e).update(r)[n]()}},I=function(e,t,n){return function(r,o){return new x(e,t,o).update(r)[n]()}},A=function(e,t,n){return function(t,r,o,a){return S["cshake"+e].update(t,r,o,a)[n]()}},T=function(e,t,n){return function(t,r,o,a){return S["kmac"+e].update(t,r,o,a)[n]()}},O=function(e,t,n,r){for(var o=0;o>5,this.byteCount=this.blockCount<<2,this.outputBlocks=n>>5,this.extraBytes=(31&n)>>3;for(var r=0;r<50;++r)this.s[r]=0}function F(e,t,n){x.call(this,e,t,n)}x.prototype.update=function(e){if(this.finalized)throw new Error("finalize already called");var t,n=(0,i.default)(e);if("string"!==n){if("object"!==n)throw new Error(u);if(null===e)throw new Error(u);if(p&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!(Array.isArray(e)||p&&ArrayBuffer.isView(e)))throw new Error(u);t=!0}for(var r,o,a=this.blocks,c=this.byteCount,s=e.length,l=this.blockCount,f=0,d=this.s;f>2]|=e[f]<>2]|=o<>2]|=(192|o>>6)<>2]|=(128|63&o)<=57344?(a[r>>2]|=(224|o>>12)<>2]|=(128|o>>6&63)<>2]|=(128|63&o)<>2]|=(240|o>>18)<>2]|=(128|o>>12&63)<>2]|=(128|o>>6&63)<>2]|=(128|63&o)<=c){for(this.start=r-c,this.block=a[l],r=0;r>=8);n>0;)o.unshift(n),n=255&(e>>=8),++r;return t?o.push(r):o.unshift(r),this.update(o),o.length},x.prototype.encodeString=function(e){var t,n=(0,i.default)(e);if("string"!==n){if("object"!==n)throw new Error(u);if(null===e)throw new Error(u);if(p&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!(Array.isArray(e)||p&&ArrayBuffer.isView(e)))throw new Error(u);t=!0}var r=0,o=e.length;if(t)r=o;else for(var a=0;a=57344?r+=3:(c=65536+((1023&c)<<10|1023&e.charCodeAt(++a)),r+=4)}return r+=this.encode(8*r),this.update(e),r},x.prototype.bytepad=function(e,t){for(var n=this.encode(t),r=0;r>2]|=this.padding[3&t],this.lastByteIndex===this.byteCount)for(e[0]=e[n],t=1;t>4&15]+h[15&e]+h[e>>12&15]+h[e>>8&15]+h[e>>20&15]+h[e>>16&15]+h[e>>28&15]+h[e>>24&15];i%t==0&&(U(n),a=0)}return o&&(e=n[a],u+=h[e>>4&15]+h[15&e],o>1&&(u+=h[e>>12&15]+h[e>>8&15]),o>2&&(u+=h[e>>20&15]+h[e>>16&15])),u},x.prototype.arrayBuffer=function(){this.finalize();var e,t=this.blockCount,n=this.s,r=this.outputBlocks,o=this.extraBytes,a=0,i=0,u=this.outputBits>>3;e=o?new ArrayBuffer(r+1<<2):new ArrayBuffer(u);for(var c=new Uint32Array(e);i>8&255,c[e+2]=t>>16&255,c[e+3]=t>>24&255;u%n==0&&U(r)}return a&&(e=u<<2,t=r[i],c[e]=255&t,a>1&&(c[e+1]=t>>8&255),a>2&&(c[e+2]=t>>16&255)),c},F.prototype=new x,F.prototype.finalize=function(){return this.encode(this.outputBits,!0),x.prototype.finalize.call(this)};var U=function(e){var t,n,r,o,a,i,u,c,s,l,f,d,p,h,y,b,v,g,k,_,w,I,A,T,O,E,P,S,R,D,C,N,B,M,j,x,F,U,L,K,G,z,Q,H,V,q,W,Y,Z,J,X,$,ee,te,ne,re,oe,ae,ie,ue,ce,se,le;for(r=0;r<48;r+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],a=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],u=e[3]^e[13]^e[23]^e[33]^e[43],c=e[4]^e[14]^e[24]^e[34]^e[44],s=e[5]^e[15]^e[25]^e[35]^e[45],l=e[6]^e[16]^e[26]^e[36]^e[46],f=e[7]^e[17]^e[27]^e[37]^e[47],t=(d=e[8]^e[18]^e[28]^e[38]^e[48])^(i<<1|u>>>31),n=(p=e[9]^e[19]^e[29]^e[39]^e[49])^(u<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(c<<1|s>>>31),n=a^(s<<1|c>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(l<<1|f>>>31),n=u^(f<<1|l>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=c^(d<<1|p>>>31),n=s^(p<<1|d>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=l^(o<<1|a>>>31),n=f^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,h=e[0],y=e[1],q=e[11]<<4|e[10]>>>28,W=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,b=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,g=e[25]<<11|e[24]>>>21,k=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,E=e[18]<<20|e[19]>>>12,P=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,K=e[38]<<8|e[39]>>>24,G=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=h^~b&g,e[1]=y^~v&k,e[10]=T^~E&S,e[11]=O^~P&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~q&Y,e[31]=V^~W&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=b^~g&_,e[3]=v^~k&w,e[12]=E^~S&D,e[13]=P^~R&C,e[22]=x^~U&K,e[23]=F^~L&G,e[32]=q^~Y&J,e[33]=W^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=g^~_&I,e[5]=k^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~K&z,e[25]=L^~G&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&h,e[7]=w^~A&y,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=K^~z&M,e[27]=G^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~h&b,e[9]=A^~y&v,e[18]=N^~T&E,e[19]=B^~O&P,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&q,e[39]=ee^~V&W,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=m[r],e[1]^=m[r+1]};if(f)o.exports=S;else{for(D=0;D32||r256)throw new Error("Invalid uint"+r+" size");if((u=i(t)).bitLength()>r)throw new Error("Supplied uint exceeds width: "+r+" vs "+u.bitLength());if(u.lt(new o(0)))throw new Error("Supplied uint "+u.toString()+" is negative");return r?a.leftPad(u.toString("hex"),r/8*2):u}if(e.startsWith("int")){if(r%8||r<8||r>256)throw new Error("Invalid int"+r+" size");if((u=i(t)).bitLength()>r)throw new Error("Supplied int exceeds width: "+r+" vs "+u.bitLength());return u.lt(new o(0))?u.toTwos(r).toString("hex"):r?a.leftPad(u.toString("hex"),r/8*2):u}throw new Error("Unsupported or invalid type: "+e)},c=function(e){if(Array.isArray(e))throw new Error("Autodetection of array types is not supported.");var t,n,i="";if(e&&"object"===(0,r.default)(e)&&(e.hasOwnProperty("v")||e.hasOwnProperty("t")||e.hasOwnProperty("value")||e.hasOwnProperty("type"))?(t=e.hasOwnProperty("t")?e.t:e.type,i=e.hasOwnProperty("v")?e.v:e.value):(t=a.toHex(e,!0),i=a.toHex(e),t.startsWith("int")||t.startsWith("uint")||(t="bytes")),!t.startsWith("int")&&!t.startsWith("uint")||"string"!=typeof i||/^(-)?0x/i.test(i)||(i=new o(i)),Array.isArray(i)){if((n=function(e){var t=/^\D+\d*\[(\d+)\]$/.exec(e);return t?parseInt(t[1],10):null}(t))&&i.length!==n)throw new Error(t+" is not matching the given array "+JSON.stringify(i));n=i.length}return Array.isArray(i)?i.map((function(e){return u(t,e,n).toString("hex").replace("0x","")})).join(""):u(t,i,n).toString("hex").replace("0x","")};e.exports={soliditySha3:function(){var e=Array.prototype.slice.call(arguments),t=e.map(c);return a.sha3("0x"+t.join(""))},soliditySha3Raw:function(){return a.sha3Raw("0x"+Array.prototype.slice.call(arguments).map(c).join(""))},encodePacked:function(){var e=Array.prototype.slice.call(arguments),t=e.map(c);return"0x"+t.join("").toLowerCase()}}},function(e,t,n){"use strict";var r=n(0),o=r(n(1)),a=r(n(2)),i=n(79),u=n(13),c=function(e){var t="A".charCodeAt(0),n="Z".charCodeAt(0);return(e=(e=e.toUpperCase()).substr(4)+e.substr(0,4)).split("").map((function(e){var r=e.charCodeAt(0);return r>=t&&r<=n?r-t+10:e})).join("")},s=function(e){for(var t,n=e;n.length>2;)t=n.slice(0,9),n=parseInt(t,10)%97+n.slice(t.length);return parseInt(n,10)%97},l=function(){function e(t){(0,o.default)(this,e),this._iban=t}return(0,a.default)(e,[{key:"isValid",value:function(){return/^XE[0-9]{2}(ETH[0-9A-Z]{13}|[0-9A-Z]{30,31})$/.test(this._iban)&&1===s(c(this._iban))}},{key:"isDirect",value:function(){return 34===this._iban.length||35===this._iban.length}},{key:"isIndirect",value:function(){return 20===this._iban.length}},{key:"checksum",value:function(){return this._iban.substr(2,2)}},{key:"institution",value:function(){return this.isIndirect()?this._iban.substr(7,4):""}},{key:"client",value:function(){return this.isIndirect()?this._iban.substr(11):""}},{key:"toAddress",value:function(){if(this.isDirect()){var e=this._iban.substr(4),t=new u(e,36);return i.toChecksumAddress(t.toString(16,20))}return""}},{key:"toString",value:function(){return this._iban}}],[{key:"toAddress",value:function(t){if(!(t=new e(t)).isDirect())throw new Error("IBAN is indirect and can't be converted");return t.toAddress()}},{key:"toIban",value:function(t){return e.fromAddress(t).toString()}},{key:"fromAddress",value:function(t){if(!i.isAddress(t))throw new Error("Provided address is not a valid address: "+t);t=t.replace("0x","").replace("0X","");var n=function(e,t){for(var n=e;n.length<2*t;)n="0"+n;return n}(new u(t,16).toString(36),15);return e.fromBban(n.toUpperCase())}},{key:"fromBban",value:function(t){return new e("XE"+("0"+(98-s(c("XE00"+t)))).slice(-2)+t)}},{key:"createIndirect",value:function(t){return e.fromBban("ETH"+t.institution+t.identifier)}},{key:"isValid",value:function(t){return new e(t).isValid()}}]),e}();e.exports=l},function(e,t,n){"use strict";var r=n(69).formatters,o=n(165),a=n(79);e.exports=function(e){var t=function(t){var n;return t.property?(e[t.property]||(e[t.property]={}),n=e[t.property]):n=e,t.methods&&t.methods.forEach((function(t){t instanceof o||(t=new o(t)),t.attachToObject(n),t.setRequestManager(e._requestManager)})),e};return t.formatters=r,t.utils=a,t.Method=o,t}},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(69).errors,a=n(393),i=n(69).formatters;function u(e){return e}function c(e){a.call(this),this.id=null,this.callback=u,this.arguments=null,this.lastBlock=null,this.options={subscription:e.subscription,type:e.type,requestManager:e.requestManager}}c.prototype=Object.create(a.prototype),c.prototype.constructor=c,c.prototype._extractCallback=function(e){if("function"==typeof e[e.length-1])return e.pop()},c.prototype._validateArgs=function(e){var t=this.options.subscription;if(t||(t={}),t.params||(t.params=0),e.length!==t.params)throw o.InvalidNumberOfParams(e.length,t.params,t.subscriptionName)},c.prototype._formatInput=function(e){var t=this.options.subscription;return t&&t.inputFormatter?t.inputFormatter.map((function(t,n){return t?t(e[n]):e[n]})):e},c.prototype._formatOutput=function(e){var t=this.options.subscription;return t&&t.outputFormatter&&e?t.outputFormatter(e):e},c.prototype._toPayload=function(e){var t=[];if(this.callback=this._extractCallback(e)||u,this.subscriptionMethod||(this.subscriptionMethod=e.shift(),this.options.subscription.subscriptionName&&(this.subscriptionMethod=this.options.subscription.subscriptionName)),this.arguments||(this.arguments=this._formatInput(e),this._validateArgs(this.arguments),e=[]),t.push(this.subscriptionMethod),t=t.concat(this.arguments),e.length)throw new Error("Only a callback is allowed as parameter on an already instantiated subscription.");return{method:this.options.type+"_subscribe",params:t}},c.prototype.unsubscribe=function(e){this.options.requestManager.removeSubscription(this.id,e),this.id=null,this.lastBlock=null,this.removeAllListeners()},c.prototype.subscribe=function(){var e=this,t=Array.prototype.slice.call(arguments),n=this._toPayload(t);if(!n)return this;if(!this.options.requestManager.provider)return setTimeout((function(){var t=new Error("No provider set.");e.callback(t,null,e),e.emit("error",t)}),0),this;if(!this.options.requestManager.provider.on)return setTimeout((function(){var t=new Error("The current provider doesn't support subscriptions: "+e.options.requestManager.provider.constructor.name);e.callback(t,null,e),e.emit("error",t)}),0),this;if(this.lastBlock&&this.options.params&&"object"===(0,r.default)(this.options.params)&&(n.params[1]=this.options.params,n.params[1].fromBlock=i.inputBlockNumberFormatter(this.lastBlock+1)),this.id&&this.unsubscribe(),this.options.params=n.params[1],"logs"===n.params[0]&&n.params[1]&&"object"===(0,r.default)(n.params[1])&&n.params[1].hasOwnProperty("fromBlock")&&isFinite(n.params[1].fromBlock)){var o=Object.assign({},n.params[1]);this.options.requestManager.send({method:"eth_getLogs",params:[o]},(function(t,n){t?setTimeout((function(){e.callback(t,null,e),e.emit("error",t)}),0):n.forEach((function(t){var n=e._formatOutput(t);e.callback(null,n,e),e.emit("data",n)}))}))}return"object"===(0,r.default)(n.params[1])&&delete n.params[1].fromBlock,this.options.requestManager.send(n,(function(t,o){!t&&o?(e.id=o,e.method=n.params[0],e.options.requestManager.addSubscription(e,(function(t,n){t?(e.callback(t,!1,e),e.emit("error",t)):(Array.isArray(n)||(n=[n]),n.forEach((function(t){var n=e._formatOutput(t);if(e.lastBlock=n&&"object"===(0,r.default)(n)?n.blockNumber:null,"function"==typeof e.options.subscription.subscriptionHandler)return e.options.subscription.subscriptionHandler.call(e,n);e.emit("data",n),e.callback(null,n,e)})))})),e.emit("connected",o)):setTimeout((function(){e.callback(t,!1,e),e.emit("error",t)}),0)})),this},c.prototype.resubscribe=function(){this.options.requestManager.removeSubscription(this.id),this.id=null,this.subscribe(this.callback)},e.exports=c},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.TransactionTypes=void 0,t.accessListify=T,t.computeAddress=_,t.parse=function(e){var t=(0,i.arrayify)(e);if(t[0]>127)return function(e){var t=l.decode(e);9!==t.length&&6!==t.length&&b.throwArgumentError("invalid raw transaction","rawTransaction",e);var n={nonce:v(t[0]).toNumber(),gasPrice:v(t[1]),gasLimit:v(t[2]),to:m(t[3]),value:v(t[4]),data:t[5],chainId:0};if(6===t.length)return n;try{n.v=a.BigNumber.from(t[6]).toNumber()}catch(e){return console.log(e),n}if(n.r=(0,i.hexZeroPad)(t[7],32),n.s=(0,i.hexZeroPad)(t[8],32),a.BigNumber.from(n.r).isZero()&&a.BigNumber.from(n.s).isZero())n.chainId=n.v,n.v=0;else{n.chainId=Math.floor((n.v-35)/2),n.chainId<0&&(n.chainId=0);var r=n.v-27,o=t.slice(0,6);0!==n.chainId&&(o.push((0,i.hexlify)(n.chainId)),o.push("0x"),o.push("0x"),r-=2*n.chainId+8);var u=(0,c.keccak256)(l.encode(o));try{n.from=w(u,{r:(0,i.hexlify)(n.r),s:(0,i.hexlify)(n.s),recoveryParam:r})}catch(e){console.log(e)}n.hash=(0,c.keccak256)(e)}return n.type=null,n}(t);switch(t[0]){case 1:return function(e){var t=l.decode(e.slice(1));8!==t.length&&11!==t.length&&b.throwArgumentError("invalid component count for transaction type: 1","payload",(0,i.hexlify)(e));var n={type:1,chainId:v(t[0]).toNumber(),nonce:v(t[1]).toNumber(),gasPrice:v(t[2]),gasLimit:v(t[3]),to:m(t[4]),value:v(t[5]),data:t[6],accessList:T(t[7])};if(8===t.length)return n;return n.hash=(0,c.keccak256)(e),S(n,t.slice(8),P),n}(t);case 2:return function(e){var t=l.decode(e.slice(1));9!==t.length&&12!==t.length&&b.throwArgumentError("invalid component count for transaction type: 2","payload",(0,i.hexlify)(e));var n=v(t[2]),r=v(t[3]),o={type:2,chainId:v(t[0]).toNumber(),nonce:v(t[1]).toNumber(),maxPriorityFeePerGas:n,maxFeePerGas:r,gasPrice:null,gasLimit:v(t[4]),to:m(t[5]),value:v(t[6]),data:t[7],accessList:T(t[8])};if(9===t.length)return o;return o.hash=(0,c.keccak256)(e),S(o,t.slice(9),E),o}(t)}return b.throwError("unsupported transaction type: ".concat(t[0]),d.Logger.errors.UNSUPPORTED_OPERATION,{operation:"parseTransaction",transactionType:t[0]})},t.recoverAddress=w,t.serialize=function(e,t){if(null==e.type||0===e.type)return null!=e.accessList&&b.throwArgumentError("untyped transactions do not support accessList; include type: 1","transaction",e),function(e,t){(0,s.checkProperties)(e,k);var n=[];g.forEach((function(t){var r=e[t.name]||[],o={};t.numeric&&(o.hexPad="left"),r=(0,i.arrayify)((0,i.hexlify)(r,o)),t.length&&r.length!==t.length&&r.length>0&&b.throwArgumentError("invalid length for "+t.name,"transaction:"+t.name,r),t.maxLength&&(r=(0,i.stripZeros)(r)).length>t.maxLength&&b.throwArgumentError("invalid length for "+t.name,"transaction:"+t.name,r),n.push((0,i.hexlify)(r))}));var r=0;null!=e.chainId?"number"!=typeof(r=e.chainId)&&b.throwArgumentError("invalid transaction.chainId","transaction",e):t&&!(0,i.isBytesLike)(t)&&t.v>28&&(r=Math.floor((t.v-35)/2));0!==r&&(n.push((0,i.hexlify)(r)),n.push("0x"),n.push("0x"));if(!t)return l.encode(n);var o=(0,i.splitSignature)(t),a=27+o.recoveryParam;0!==r?(n.pop(),n.pop(),n.pop(),a+=2*r+8,o.v>28&&o.v!==a&&b.throwArgumentError("transaction.chainId/signature.v mismatch","signature",t)):o.v!==a&&b.throwArgumentError("transaction.chainId/signature.v mismatch","signature",t);return n.push((0,i.hexlify)(a)),n.push((0,i.stripZeros)((0,i.arrayify)(o.r))),n.push((0,i.stripZeros)((0,i.arrayify)(o.s))),l.encode(n)}(e,t);switch(e.type){case 1:return P(e,t);case 2:return E(e,t)}return b.throwError("unsupported transaction type: ".concat(e.type),d.Logger.errors.UNSUPPORTED_OPERATION,{operation:"serializeTransaction",transactionType:e.type})};var o=n(199),a=n(101),i=n(47),u=n(259),c=n(116),s=n(117),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var o={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(o,i,u):o[i]=e[i]}o.default=e,n&&n.set(e,o);return o}(n(396)),f=n(802),d=n(49),p=n(805);function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}var y,b=new d.Logger(p.version);function m(e){return"0x"===e?null:(0,o.getAddress)(e)}function v(e){return"0x"===e?u.Zero:a.BigNumber.from(e)}t.TransactionTypes=y,function(e){e[e.legacy=0]="legacy",e[e.eip2930=1]="eip2930",e[e.eip1559=2]="eip1559"}(y||(t.TransactionTypes=y={}));var g=[{name:"nonce",maxLength:32,numeric:!0},{name:"gasPrice",maxLength:32,numeric:!0},{name:"gasLimit",maxLength:32,numeric:!0},{name:"to",length:20},{name:"value",maxLength:32,numeric:!0},{name:"data"}],k={chainId:!0,data:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,type:!0,value:!0};function _(e){var t=(0,f.computePublicKey)(e);return(0,o.getAddress)((0,i.hexDataSlice)((0,c.keccak256)((0,i.hexDataSlice)(t,1)),12))}function w(e,t){return _((0,f.recoverPublicKey)((0,i.arrayify)(e),t))}function I(e,t){var n=(0,i.stripZeros)(a.BigNumber.from(e).toHexString());return n.length>32&&b.throwArgumentError("invalid length for "+t,"transaction:"+t,e),n}function A(e,t){return{address:(0,o.getAddress)(e),storageKeys:(t||[]).map((function(t,n){return 32!==(0,i.hexDataLength)(t)&&b.throwArgumentError("invalid access list storageKey","accessList[".concat(e,":").concat(n,"]"),t),t.toLowerCase()}))}}function T(e){if(Array.isArray(e))return e.map((function(e,t){return Array.isArray(e)?(e.length>2&&b.throwArgumentError("access list expected to be [ address, storageKeys[] ]","value[".concat(t,"]"),e),A(e[0],e[1])):A(e.address,e.storageKeys)}));var t=Object.keys(e).map((function(t){var n=e[t].reduce((function(e,t){return e[t]=!0,e}),{});return A(t,Object.keys(n).sort())}));return t.sort((function(e,t){return e.address.localeCompare(t.address)})),t}function O(e){return T(e).map((function(e){return[e.address,e.storageKeys]}))}function E(e,t){if(null!=e.gasPrice){var n=a.BigNumber.from(e.gasPrice),r=a.BigNumber.from(e.maxFeePerGas||0);n.eq(r)||b.throwArgumentError("mismatch EIP-1559 gasPrice != maxFeePerGas","tx",{gasPrice:n,maxFeePerGas:r})}var u=[I(e.chainId||0,"chainId"),I(e.nonce||0,"nonce"),I(e.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),I(e.maxFeePerGas||0,"maxFeePerGas"),I(e.gasLimit||0,"gasLimit"),null!=e.to?(0,o.getAddress)(e.to):"0x",I(e.value||0,"value"),e.data||"0x",O(e.accessList||[])];if(t){var c=(0,i.splitSignature)(t);u.push(I(c.recoveryParam,"recoveryParam")),u.push((0,i.stripZeros)(c.r)),u.push((0,i.stripZeros)(c.s))}return(0,i.hexConcat)(["0x02",l.encode(u)])}function P(e,t){var n=[I(e.chainId||0,"chainId"),I(e.nonce||0,"nonce"),I(e.gasPrice||0,"gasPrice"),I(e.gasLimit||0,"gasLimit"),null!=e.to?(0,o.getAddress)(e.to):"0x",I(e.value||0,"value"),e.data||"0x",O(e.accessList||[])];if(t){var r=(0,i.splitSignature)(t);n.push(I(r.recoveryParam,"recoveryParam")),n.push((0,i.stripZeros)(r.r)),n.push((0,i.stripZeros)(r.s))}return(0,i.hexConcat)(["0x01",l.encode(n)])}function S(e,t,n){try{var r=v(t[0]).toNumber();if(0!==r&&1!==r)throw new Error("bad recid");e.v=r}catch(e){b.throwArgumentError("invalid v for transaction type: 1","v",t[0])}e.r=(0,i.hexZeroPad)(t[1],32),e.s=(0,i.hexZeroPad)(t[2],32);try{var o=(0,c.keccak256)(n(e));e.from=w(o,{r:e.r,s:e.s,recoveryParam:e.v})}catch(e){console.log(e)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="logger/5.5.0"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="bytes/5.5.0"},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.FixedNumber=t.FixedFormat=void 0,t.formatFixed=v,t.parseFixed=g;var o=r(n(3)),a=r(n(1)),i=r(n(2)),u=n(47),c=n(49),s=n(395),l=n(394),f=new c.Logger(s.version),d={},p=l.BigNumber.from(0),h=l.BigNumber.from(-1);function y(e,t,n,r){var o={fault:t,operation:n};return void 0!==r&&(o.value=r),f.throwError(e,c.Logger.errors.NUMERIC_FAULT,o)}for(var b="0";b.length<256;)b+=b;function m(e){if("number"!=typeof e)try{e=l.BigNumber.from(e).toNumber()}catch(e){}return"number"==typeof e&&e>=0&&e<=256&&!(e%1)?"1"+b.substring(0,e):f.throwArgumentError("invalid decimal size","decimals",e)}function v(e,t){null==t&&(t=0);var n=m(t),r=(e=l.BigNumber.from(e)).lt(p);r&&(e=e.mul(h));for(var o=e.mod(n).toString();o.length2&&f.throwArgumentError("too many decimal points","value",e);var a=o[0],i=o[1];for(a||(a="0"),i||(i="0");"0"===i[i.length-1];)i=i.substring(0,i.length-1);for(i.length>n.length-1&&y("fractional component exceeds decimals","underflow","parseFixed"),""===i&&(i="0");i.length80&&f.throwArgumentError("invalid fixed format (decimals too large)","format.decimals",a),new e(d,n,r,a)}}]),e}();t.FixedFormat=k;var _=function(){function e(t,n,r,o){(0,a.default)(this,e),f.checkNew(this instanceof e?this.constructor:void 0,e),t!==d&&f.throwError("cannot use FixedNumber constructor; use FixedNumber.from",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new FixedFormat"}),this.format=o,this._hex=n,this._value=r,this._isFixedNumber=!0,Object.freeze(this)}return(0,i.default)(e,[{key:"_checkFormat",value:function(e){this.format.name!==e.format.name&&f.throwArgumentError("incompatible format; use fixedNumber.toFormat","other",e)}},{key:"addUnsafe",value:function(t){this._checkFormat(t);var n=g(this._value,this.format.decimals),r=g(t._value,t.format.decimals);return e.fromValue(n.add(r),this.format.decimals,this.format)}},{key:"subUnsafe",value:function(t){this._checkFormat(t);var n=g(this._value,this.format.decimals),r=g(t._value,t.format.decimals);return e.fromValue(n.sub(r),this.format.decimals,this.format)}},{key:"mulUnsafe",value:function(t){this._checkFormat(t);var n=g(this._value,this.format.decimals),r=g(t._value,t.format.decimals);return e.fromValue(n.mul(r).div(this.format._multiplier),this.format.decimals,this.format)}},{key:"divUnsafe",value:function(t){this._checkFormat(t);var n=g(this._value,this.format.decimals),r=g(t._value,t.format.decimals);return e.fromValue(n.mul(this.format._multiplier).div(r),this.format.decimals,this.format)}},{key:"floor",value:function(){var t=this.toString().split(".");1===t.length&&t.push("0");var n=e.from(t[0],this.format),r=!t[1].match(/^(0*)$/);return this.isNegative()&&r&&(n=n.subUnsafe(w.toFormat(n.format))),n}},{key:"ceiling",value:function(){var t=this.toString().split(".");1===t.length&&t.push("0");var n=e.from(t[0],this.format),r=!t[1].match(/^(0*)$/);return!this.isNegative()&&r&&(n=n.addUnsafe(w.toFormat(n.format))),n}},{key:"round",value:function(t){null==t&&(t=0);var n=this.toString().split(".");if(1===n.length&&n.push("0"),(t<0||t>80||t%1)&&f.throwArgumentError("invalid decimal count","decimals",t),n[1].length<=t)return this;var r=e.from("1"+b.substring(0,t),this.format),o=I.toFormat(this.format);return this.mulUnsafe(r).addUnsafe(o).floor().divUnsafe(r)}},{key:"isZero",value:function(){return"0.0"===this._value||"0"===this._value}},{key:"isNegative",value:function(){return"-"===this._value[0]}},{key:"toString",value:function(){return this._value}},{key:"toHexString",value:function(e){if(null==e)return this._hex;e%8&&f.throwArgumentError("invalid byte width","width",e);var t=l.BigNumber.from(this._hex).fromTwos(this.format.width).toTwos(e).toHexString();return(0,u.hexZeroPad)(t,e/8)}},{key:"toUnsafeFloat",value:function(){return parseFloat(this.toString())}},{key:"toFormat",value:function(t){return e.fromString(this._value,t)}}],[{key:"fromValue",value:function(t,n,r){return null!=r||null==n||(0,l.isBigNumberish)(n)||(r=n,n=null),null==n&&(n=0),null==r&&(r="fixed"),e.fromString(v(t,n),k.from(r))}},{key:"fromString",value:function(t,n){null==n&&(n="fixed");var r=k.from(n),o=g(t,r.decimals);!r.signed&&o.lt(p)&&y("unsigned value cannot be negative","overflow","value",t);var a=null;r.signed?a=o.toTwos(r.width).toHexString():(a=o.toHexString(),a=(0,u.hexZeroPad)(a,r.width/8));var i=v(o,r.decimals);return new e(d,a,i,r)}},{key:"fromBytes",value:function(t,n){null==n&&(n="fixed");var r=k.from(n);if((0,u.arrayify)(t).length>r.width/8)throw new Error("overflow");var o=l.BigNumber.from(t);r.signed&&(o=o.fromTwos(r.width));var a=o.toTwos((r.signed?0:1)+r.width).toHexString(),i=v(o,r.decimals);return new e(d,a,i,r)}},{key:"from",value:function(t,n){if("string"==typeof t)return e.fromString(t,n);if((0,u.isBytes)(t))return e.fromBytes(t,n);try{return e.fromValue(t,0,n)}catch(e){if(e.code!==c.Logger.errors.INVALID_ARGUMENT)throw e}return f.throwArgumentError("invalid FixedNumber value","value",t)}},{key:"isFixedNumber",value:function(e){return!(!e||!e._isFixedNumber)}}]),e}();t.FixedNumber=_;var w=_.from(1),I=_.from("0.5")},function(e,t,n){"use strict";(function(e,r,o){var a,i=n(0)(n(3)); +!function(){var u="input is invalid type",c="object"===("undefined"==typeof window?"undefined":(0,i.default)(window)),s=c?window:{};s.JS_SHA3_NO_WINDOW&&(c=!1);var l=!c&&"object"===("undefined"==typeof self?"undefined":(0,i.default)(self));!s.JS_SHA3_NO_NODE_JS&&"object"===(void 0===e?"undefined":(0,i.default)(e))&&e.versions&&e.versions.node?s=r:l&&(s=self);var f=!s.JS_SHA3_NO_COMMON_JS&&"object"===(0,i.default)(o)&&o.exports,d=n(463),p=!s.JS_SHA3_NO_ARRAY_BUFFER&&"undefined"!=typeof ArrayBuffer,h="0123456789abcdef".split(""),y=[4,1024,262144,67108864],m=[0,8,16,24],b=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],v=[224,256,384,512],k=[128,256],g=["hex","buffer","arrayBuffer","array","digest"],_={128:168,256:136};!s.JS_SHA3_NO_NODE_JS&&Array.isArray||(Array.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)}),!p||!s.JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW&&ArrayBuffer.isView||(ArrayBuffer.isView=function(e){return"object"===(0,i.default)(e)&&e.buffer&&e.buffer.constructor===ArrayBuffer});for(var w=function(e,t,n){return function(r){return new x(e,t,e).update(r)[n]()}},I=function(e,t,n){return function(r,o){return new x(e,t,o).update(r)[n]()}},A=function(e,t,n){return function(t,r,o,a){return S["cshake"+e].update(t,r,o,a)[n]()}},T=function(e,t,n){return function(t,r,o,a){return S["kmac"+e].update(t,r,o,a)[n]()}},O=function(e,t,n,r){for(var o=0;o>5,this.byteCount=this.blockCount<<2,this.outputBlocks=n>>5,this.extraBytes=(31&n)>>3;for(var r=0;r<50;++r)this.s[r]=0}function F(e,t,n){x.call(this,e,t,n)}x.prototype.update=function(e){if(this.finalized)throw new Error("finalize already called");var t,n=(0,i.default)(e);if("string"!==n){if("object"!==n)throw new Error(u);if(null===e)throw new Error(u);if(p&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!(Array.isArray(e)||p&&ArrayBuffer.isView(e)))throw new Error(u);t=!0}for(var r,o,a=this.blocks,c=this.byteCount,s=e.length,l=this.blockCount,f=0,d=this.s;f>2]|=e[f]<>2]|=o<>2]|=(192|o>>6)<>2]|=(128|63&o)<=57344?(a[r>>2]|=(224|o>>12)<>2]|=(128|o>>6&63)<>2]|=(128|63&o)<>2]|=(240|o>>18)<>2]|=(128|o>>12&63)<>2]|=(128|o>>6&63)<>2]|=(128|63&o)<=c){for(this.start=r-c,this.block=a[l],r=0;r>=8);n>0;)o.unshift(n),n=255&(e>>=8),++r;return t?o.push(r):o.unshift(r),this.update(o),o.length},x.prototype.encodeString=function(e){var t,n=(0,i.default)(e);if("string"!==n){if("object"!==n)throw new Error(u);if(null===e)throw new Error(u);if(p&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!(Array.isArray(e)||p&&ArrayBuffer.isView(e)))throw new Error(u);t=!0}var r=0,o=e.length;if(t)r=o;else for(var a=0;a=57344?r+=3:(c=65536+((1023&c)<<10|1023&e.charCodeAt(++a)),r+=4)}return r+=this.encode(8*r),this.update(e),r},x.prototype.bytepad=function(e,t){for(var n=this.encode(t),r=0;r>2]|=this.padding[3&t],this.lastByteIndex===this.byteCount)for(e[0]=e[n],t=1;t>4&15]+h[15&e]+h[e>>12&15]+h[e>>8&15]+h[e>>20&15]+h[e>>16&15]+h[e>>28&15]+h[e>>24&15];i%t==0&&(U(n),a=0)}return o&&(e=n[a],u+=h[e>>4&15]+h[15&e],o>1&&(u+=h[e>>12&15]+h[e>>8&15]),o>2&&(u+=h[e>>20&15]+h[e>>16&15])),u},x.prototype.arrayBuffer=function(){this.finalize();var e,t=this.blockCount,n=this.s,r=this.outputBlocks,o=this.extraBytes,a=0,i=0,u=this.outputBits>>3;e=o?new ArrayBuffer(r+1<<2):new ArrayBuffer(u);for(var c=new Uint32Array(e);i>8&255,c[e+2]=t>>16&255,c[e+3]=t>>24&255;u%n==0&&U(r)}return a&&(e=u<<2,t=r[i],c[e]=255&t,a>1&&(c[e+1]=t>>8&255),a>2&&(c[e+2]=t>>16&255)),c},F.prototype=new x,F.prototype.finalize=function(){return this.encode(this.outputBits,!0),x.prototype.finalize.call(this)};var U=function(e){var t,n,r,o,a,i,u,c,s,l,f,d,p,h,y,m,v,k,g,_,w,I,A,T,O,P,E,S,R,D,C,N,B,M,j,x,F,U,L,G,K,z,Q,H,V,W,q,Y,Z,J,X,$,ee,te,ne,re,oe,ae,ie,ue,ce,se,le;for(r=0;r<48;r+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],a=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],u=e[3]^e[13]^e[23]^e[33]^e[43],c=e[4]^e[14]^e[24]^e[34]^e[44],s=e[5]^e[15]^e[25]^e[35]^e[45],l=e[6]^e[16]^e[26]^e[36]^e[46],f=e[7]^e[17]^e[27]^e[37]^e[47],t=(d=e[8]^e[18]^e[28]^e[38]^e[48])^(i<<1|u>>>31),n=(p=e[9]^e[19]^e[29]^e[39]^e[49])^(u<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(c<<1|s>>>31),n=a^(s<<1|c>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(l<<1|f>>>31),n=u^(f<<1|l>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=c^(d<<1|p>>>31),n=s^(p<<1|d>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=l^(o<<1|a>>>31),n=f^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,h=e[0],y=e[1],W=e[11]<<4|e[10]>>>28,q=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,m=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,k=e[25]<<11|e[24]>>>21,g=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,P=e[18]<<20|e[19]>>>12,E=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,G=e[38]<<8|e[39]>>>24,K=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=h^~m&k,e[1]=y^~v&g,e[10]=T^~P&S,e[11]=O^~E&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~W&Y,e[31]=V^~q&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=m^~k&_,e[3]=v^~g&w,e[12]=P^~S&D,e[13]=E^~R&C,e[22]=x^~U&G,e[23]=F^~L&K,e[32]=W^~Y&J,e[33]=q^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=k^~_&I,e[5]=g^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~G&z,e[25]=L^~K&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&h,e[7]=w^~A&y,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=G^~z&M,e[27]=K^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~h&m,e[9]=A^~y&v,e[18]=N^~T&P,e[19]=B^~O&E,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&W,e[39]=ee^~V&q,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=b[r],e[1]^=b[r+1]};if(f)o.exports=S;else{for(D=0;D32||r256)throw new Error("Invalid uint"+r+" size");if((u=i(t)).bitLength()>r)throw new Error("Supplied uint exceeds width: "+r+" vs "+u.bitLength());if(u.lt(new o(0)))throw new Error("Supplied uint "+u.toString()+" is negative");return r?a.leftPad(u.toString("hex"),r/8*2):u}if(e.startsWith("int")){if(r%8||r<8||r>256)throw new Error("Invalid int"+r+" size");if((u=i(t)).bitLength()>r)throw new Error("Supplied int exceeds width: "+r+" vs "+u.bitLength());return u.lt(new o(0))?u.toTwos(r).toString("hex"):r?a.leftPad(u.toString("hex"),r/8*2):u}throw new Error("Unsupported or invalid type: "+e)},c=function(e){if(Array.isArray(e))throw new Error("Autodetection of array types is not supported.");var t,n,i="";if(e&&"object"===(0,r.default)(e)&&(e.hasOwnProperty("v")||e.hasOwnProperty("t")||e.hasOwnProperty("value")||e.hasOwnProperty("type"))?(t=e.hasOwnProperty("t")?e.t:e.type,i=e.hasOwnProperty("v")?e.v:e.value):(t=a.toHex(e,!0),i=a.toHex(e),t.startsWith("int")||t.startsWith("uint")||(t="bytes")),!t.startsWith("int")&&!t.startsWith("uint")||"string"!=typeof i||/^(-)?0x/i.test(i)||(i=new o(i)),Array.isArray(i)){if((n=function(e){var t=/^\D+\d*\[(\d+)\]$/.exec(e);return t?parseInt(t[1],10):null}(t))&&i.length!==n)throw new Error(t+" is not matching the given array "+JSON.stringify(i));n=i.length}return Array.isArray(i)?i.map((function(e){return u(t,e,n).toString("hex").replace("0x","")})).join(""):u(t,i,n).toString("hex").replace("0x","")};e.exports={soliditySha3:function(){var e=Array.prototype.slice.call(arguments),t=e.map(c);return a.sha3("0x"+t.join(""))},soliditySha3Raw:function(){return a.sha3Raw("0x"+Array.prototype.slice.call(arguments).map(c).join(""))},encodePacked:function(){var e=Array.prototype.slice.call(arguments),t=e.map(c);return"0x"+t.join("").toLowerCase()}}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=n(93),u=n(10),c=function(e){var t="A".charCodeAt(0),n="Z".charCodeAt(0);return(e=(e=e.toUpperCase()).substr(4)+e.substr(0,4)).split("").map((function(e){var r=e.charCodeAt(0);return r>=t&&r<=n?r-t+10:e})).join("")},s=function(e){for(var t,n=e;n.length>2;)t=n.slice(0,9),n=parseInt(t,10)%97+n.slice(t.length);return parseInt(n,10)%97},l=function(){function e(t){(0,o.default)(this,e),this._iban=t}return(0,a.default)(e,[{key:"isValid",value:function(){return/^XE[0-9]{2}(ETH[0-9A-Z]{13}|[0-9A-Z]{30,31})$/.test(this._iban)&&1===s(c(this._iban))}},{key:"isDirect",value:function(){return 34===this._iban.length||35===this._iban.length}},{key:"isIndirect",value:function(){return 20===this._iban.length}},{key:"checksum",value:function(){return this._iban.substr(2,2)}},{key:"institution",value:function(){return this.isIndirect()?this._iban.substr(7,4):""}},{key:"client",value:function(){return this.isIndirect()?this._iban.substr(11):""}},{key:"toAddress",value:function(){if(this.isDirect()){var e=this._iban.substr(4),t=new u(e,36);return i.toChecksumAddress(t.toString(16,20))}return""}},{key:"toString",value:function(){return this._iban}}],[{key:"toAddress",value:function(t){if(!(t=new e(t)).isDirect())throw new Error("IBAN is indirect and can't be converted");return t.toAddress()}},{key:"toIban",value:function(t){return e.fromAddress(t).toString()}},{key:"fromAddress",value:function(t){if(!i.isAddress(t))throw new Error("Provided address is not a valid address: "+t);t=t.replace("0x","").replace("0X","");var n=function(e,t){for(var n=e;n.length<2*t;)n="0"+n;return n}(new u(t,16).toString(36),15);return e.fromBban(n.toUpperCase())}},{key:"fromBban",value:function(t){return new e("XE"+("0"+(98-s(c("XE00"+t)))).slice(-2)+t)}},{key:"createIndirect",value:function(t){return e.fromBban("ETH"+t.institution+t.identifier)}},{key:"isValid",value:function(t){return new e(t).isValid()}}]),e}();t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(3)),a=null,i="object"===("undefined"==typeof globalThis?"undefined":(0,o.default)(globalThis))?globalThis:void 0;if(!i)try{i=Function("return this")()}catch(e){i=self}void 0!==i.hedera?a=i.hedera:void 0!==i.hweb3&&i.hweb3.currentProvider&&(i.hweb3.currentProvider.sendAsync&&(i.hweb3.currentProvider.send=i.hweb3.currentProvider.sendAsync,delete i.hweb3.currentProvider.sendAsync),a=i.hweb3.currentProvider);var u=a;t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.HttpProvider=void 0;var o=r(n(7)),a=r(n(1)),i=n(375),u=function(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{c(r.next(e))}catch(e){a(e)}}function u(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,u)}c((r=r.apply(e,t||[])).next())}))};t.HttpProvider=function e(){if((0,a.default)(this,e),this.disconnect=function(){return!1},this.getLedgerId=function(){return this.client.ledgerId},this.getNetwork=function(){return this.client.network},this.getMirrorNetwork=function(){return this.client.mirrorNetwork},this.getAccountBalance=function(e){return u(this,void 0,void 0,o.default.mark((function t(){var n;return o.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=(new i.AccountBalanceQuery).setAccountId(e||this.accountId),t.abrupt("return",n.execute(this.client));case 2:case"end":return t.stop()}}),t,this)})))},this.getAccountInfo=function(e){return u(this,void 0,void 0,o.default.mark((function t(){var n;return o.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=(new i.AccountInfoQuery).setAccountId(e||this.accountId),t.abrupt("return",n.execute(this.client));case 2:case"end":return t.stop()}}),t,this)})))},this.getTransactionReceipt=function(e){return u(this,void 0,void 0,o.default.mark((function t(){var n;return o.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=(new i.TransactionReceiptQuery).setTransactionId(e),t.abrupt("return",n.execute(this.client));case 2:case"end":return t.stop()}}),t,this)})))},this.sendRequest=function(e){return u(this,void 0,void 0,o.default.mark((function t(){return o.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",e.execute(this.client));case 1:case"end":return t.stop()}}),t,this)})))},this.waitForReceipt=function(e){return u(this,void 0,void 0,o.default.mark((function t(){var n;return o.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=(new i.TransactionReceiptQuery).setTransactionId(e.transactionId),t.abrupt("return",n.execute(this.client));case 2:case"end":return t.stop()}}),t,this)})))},this.connected=!0,1===arguments.length&&(this.client=arguments.length<=0?void 0:arguments[0]),arguments.length>=2){switch(arguments.length<=2?void 0:arguments[2]){case"testnet":this.client=i.Client.forTestnet();break;case"previewnet":this.client=i.Client.forPreviewnet();break;default:this.client=i.Client.forMainnet()}this.client.setOperator(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1]),this.accountId=arguments.length<=0?void 0:arguments[0]}}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(920)),a=n(104),i=function(e){this.requestManager=e,this.requests=[]};i.prototype.add=function(e){this.requests.push(e)},i.prototype.execute=function(){var e=this.requests,t=this._sortResponses.bind(this);this.requestManager.sendBatch(e,(function(n,r){r=t(r),e.map((function(e,t){return r[t]||{}})).forEach((function(t,n){if(e[n].callback){if(t&&t.error)return e[n].callback(a.errors.ErrorResponse(t));if(!o.default.isValidResponse(t))return e[n].callback(a.errors.InvalidResponse(t));try{e[n].callback(null,e[n].format?e[n].format(t.result):t.result)}catch(t){e[n].callback(t)}}}))}))},i.prototype._sortResponses=function(e){return(e||[]).sort((function(e,t){return e.id-t.id}))};var u=i;t.default=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={messageId:0,toPayload:function(e,t){if(!e)throw new Error('JSONRPC method should be specified for params: "'+JSON.stringify(t)+'"!');return r.messageId++,{jsonrpc:"2.0",id:r.messageId,method:e,params:t||[]}},isValidResponse:function(e){return Array.isArray(e)?e.every(t):t(e);function t(e){return!(!e||e.error||"2.0"!==e.jsonrpc||"number"!=typeof e.id&&"string"!=typeof e.id||void 0===e.result)}},toBatchPayload:function(e){return e.map((function(e){return r.toPayload(e.method,e.params)}))}},o=r;t.default=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(104).formatters,o=n(464),a=n(93),i=function(e){var t=function(t){var n;return t.property?(e[t.property]||(e[t.property]={}),n=e[t.property]):n=e,t.methods&&t.methods.forEach((function(t){t instanceof o||(t=new o(t)),t.attachToObject(n),t.setRequestManager(e._requestManager)})),e};return t.formatters=r,t.utils=a,t.Method=o,t};t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(923),o=function(e){this.name=e.name,this.type=e.type,this.subscriptions=e.subscriptions||{},this.requestManager=null};o.prototype.setRequestManager=function(e){this.requestManager=e},o.prototype.attachToObject=function(e){var t=this.buildCall(),n=this.name.split(".");n.length>1?(e[n[0]]=e[n[0]]||{},e[n[0]][n[1]]=t):e[n[0]]=t},o.prototype.buildCall=function(){var e=this;return function(){e.subscriptions[arguments[0]]||console.warn("Subscription "+JSON.stringify(arguments[0])+" doesn't exist. Subscribing anyway.");var t=new r({subscription:e.subscriptions[arguments[0]]||{},requestManager:e.requestManager,type:e.type});return t.subscribe.apply(t,arguments)}};var a={subscriptions:o,subscription:r};t.default=a},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(104).errors,a=n(466),i=n(104).formatters;function u(e){return e}function c(e){a.call(this),this.id=null,this.callback=u,this.arguments=null,this.lastBlock=null,this.options={subscription:e.subscription,type:e.type,requestManager:e.requestManager}}c.prototype=Object.create(a.prototype),c.prototype.constructor=c,c.prototype._extractCallback=function(e){if("function"==typeof e[e.length-1])return e.pop()},c.prototype._validateArgs=function(e){var t=this.options.subscription;if(t||(t={}),t.params||(t.params=0),e.length!==t.params)throw o.InvalidNumberOfParams(e.length,t.params,t.subscriptionName)},c.prototype._formatInput=function(e){var t=this.options.subscription;return t&&t.inputFormatter?t.inputFormatter.map((function(t,n){return t?t(e[n]):e[n]})):e},c.prototype._formatOutput=function(e){var t=this.options.subscription;return t&&t.outputFormatter&&e?t.outputFormatter(e):e},c.prototype._toPayload=function(e){var t=[];if(this.callback=this._extractCallback(e)||u,this.subscriptionMethod||(this.subscriptionMethod=e.shift(),this.options.subscription.subscriptionName&&(this.subscriptionMethod=this.options.subscription.subscriptionName)),this.arguments||(this.arguments=this._formatInput(e),this._validateArgs(this.arguments),e=[]),t.push(this.subscriptionMethod),t=t.concat(this.arguments),e.length)throw new Error("Only a callback is allowed as parameter on an already instantiated subscription.");return{method:this.options.type+"_subscribe",params:t}},c.prototype.unsubscribe=function(e){this.options.requestManager.removeSubscription(this.id,e),this.id=null,this.lastBlock=null,this.removeAllListeners()},c.prototype.subscribe=function(){var e=this,t=Array.prototype.slice.call(arguments),n=this._toPayload(t);if(!n)return this;if(!this.options.requestManager.provider)return setTimeout((function(){var t=new Error("No provider set.");e.callback(t,null,e),e.emit("error",t)}),0),this;if(!this.options.requestManager.provider.on)return setTimeout((function(){var t=new Error("The current provider doesn't support subscriptions: "+e.options.requestManager.provider.constructor.name);e.callback(t,null,e),e.emit("error",t)}),0),this;if(this.lastBlock&&this.options.params&&"object"===(0,r.default)(this.options.params)&&(n.params[1]=this.options.params,n.params[1].fromBlock=i.inputBlockNumberFormatter(this.lastBlock+1)),this.id&&this.unsubscribe(),this.options.params=n.params[1],"logs"===n.params[0]&&n.params[1]&&"object"===(0,r.default)(n.params[1])&&n.params[1].hasOwnProperty("fromBlock")&&isFinite(n.params[1].fromBlock)){var o=Object.assign({},n.params[1]);this.options.requestManager.send({method:"eth_getLogs",params:[o]},(function(t,n){t?setTimeout((function(){e.callback(t,null,e),e.emit("error",t)}),0):n.forEach((function(t){var n=e._formatOutput(t);e.callback(null,n,e),e.emit("data",n)}))}))}return"object"===(0,r.default)(n.params[1])&&delete n.params[1].fromBlock,this.options.requestManager.send(n,(function(t,o){!t&&o?(e.id=o,e.method=n.params[0],e.options.requestManager.addSubscription(e,(function(t,n){t?(e.callback(t,!1,e),e.emit("error",t)):(Array.isArray(n)||(n=[n]),n.forEach((function(t){var n=e._formatOutput(t);if(e.lastBlock=n&&"object"===(0,r.default)(n)?n.blockNumber:null,"function"==typeof e.options.subscription.subscriptionHandler)return e.options.subscription.subscriptionHandler.call(e,n);e.emit("data",n),e.callback(null,n,e)})))})),e.emit("connected",o)):setTimeout((function(){e.callback(t,!1,e),e.emit("error",t)}),0)})),this},c.prototype.resubscribe=function(){this.options.requestManager.removeSubscription(this.id),this.id=null,this.subscribe(this.callback)},e.exports=c},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.TransactionTypes=void 0,t.accessListify=T,t.computeAddress=_,t.parse=function(e){var t=(0,i.arrayify)(e);if(t[0]>127)return function(e){var t=l.decode(e);9!==t.length&&6!==t.length&&m.throwArgumentError("invalid raw transaction","rawTransaction",e);var n={nonce:v(t[0]).toNumber(),gasPrice:v(t[1]),gasLimit:v(t[2]),to:b(t[3]),value:v(t[4]),data:t[5],chainId:0};if(6===t.length)return n;try{n.v=a.BigNumber.from(t[6]).toNumber()}catch(e){return console.log(e),n}if(n.r=(0,i.hexZeroPad)(t[7],32),n.s=(0,i.hexZeroPad)(t[8],32),a.BigNumber.from(n.r).isZero()&&a.BigNumber.from(n.s).isZero())n.chainId=n.v,n.v=0;else{n.chainId=Math.floor((n.v-35)/2),n.chainId<0&&(n.chainId=0);var r=n.v-27,o=t.slice(0,6);0!==n.chainId&&(o.push((0,i.hexlify)(n.chainId)),o.push("0x"),o.push("0x"),r-=2*n.chainId+8);var u=(0,c.keccak256)(l.encode(o));try{n.from=w(u,{r:(0,i.hexlify)(n.r),s:(0,i.hexlify)(n.s),recoveryParam:r})}catch(e){console.log(e)}n.hash=(0,c.keccak256)(e)}return n.type=null,n}(t);switch(t[0]){case 1:return function(e){var t=l.decode(e.slice(1));8!==t.length&&11!==t.length&&m.throwArgumentError("invalid component count for transaction type: 1","payload",(0,i.hexlify)(e));var n={type:1,chainId:v(t[0]).toNumber(),nonce:v(t[1]).toNumber(),gasPrice:v(t[2]),gasLimit:v(t[3]),to:b(t[4]),value:v(t[5]),data:t[6],accessList:T(t[7])};if(8===t.length)return n;return n.hash=(0,c.keccak256)(e),S(n,t.slice(8),E),n}(t);case 2:return function(e){var t=l.decode(e.slice(1));9!==t.length&&12!==t.length&&m.throwArgumentError("invalid component count for transaction type: 2","payload",(0,i.hexlify)(e));var n=v(t[2]),r=v(t[3]),o={type:2,chainId:v(t[0]).toNumber(),nonce:v(t[1]).toNumber(),maxPriorityFeePerGas:n,maxFeePerGas:r,gasPrice:null,gasLimit:v(t[4]),to:b(t[5]),value:v(t[6]),data:t[7],accessList:T(t[8])};if(9===t.length)return o;return o.hash=(0,c.keccak256)(e),S(o,t.slice(9),P),o}(t)}return m.throwError("unsupported transaction type: ".concat(t[0]),d.Logger.errors.UNSUPPORTED_OPERATION,{operation:"parseTransaction",transactionType:t[0]})},t.recoverAddress=w,t.serialize=function(e,t){if(null==e.type||0===e.type)return null!=e.accessList&&m.throwArgumentError("untyped transactions do not support accessList; include type: 1","transaction",e),function(e,t){(0,s.checkProperties)(e,g);var n=[];k.forEach((function(t){var r=e[t.name]||[],o={};t.numeric&&(o.hexPad="left"),r=(0,i.arrayify)((0,i.hexlify)(r,o)),t.length&&r.length!==t.length&&r.length>0&&m.throwArgumentError("invalid length for "+t.name,"transaction:"+t.name,r),t.maxLength&&(r=(0,i.stripZeros)(r)).length>t.maxLength&&m.throwArgumentError("invalid length for "+t.name,"transaction:"+t.name,r),n.push((0,i.hexlify)(r))}));var r=0;null!=e.chainId?"number"!=typeof(r=e.chainId)&&m.throwArgumentError("invalid transaction.chainId","transaction",e):t&&!(0,i.isBytesLike)(t)&&t.v>28&&(r=Math.floor((t.v-35)/2));0!==r&&(n.push((0,i.hexlify)(r)),n.push("0x"),n.push("0x"));if(!t)return l.encode(n);var o=(0,i.splitSignature)(t),a=27+o.recoveryParam;0!==r?(n.pop(),n.pop(),n.pop(),a+=2*r+8,o.v>28&&o.v!==a&&m.throwArgumentError("transaction.chainId/signature.v mismatch","signature",t)):o.v!==a&&m.throwArgumentError("transaction.chainId/signature.v mismatch","signature",t);return n.push((0,i.hexlify)(a)),n.push((0,i.stripZeros)((0,i.arrayify)(o.r))),n.push((0,i.stripZeros)((0,i.arrayify)(o.s))),l.encode(n)}(e,t);switch(e.type){case 1:return E(e,t);case 2:return P(e,t)}return m.throwError("unsupported transaction type: ".concat(e.type),d.Logger.errors.UNSUPPORTED_OPERATION,{operation:"serializeTransaction",transactionType:e.type})};var o=n(247),a=n(121),i=n(56),u=n(314),c=n(143),s=n(144),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var o={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(o,i,u):o[i]=e[i]}o.default=e,n&&n.set(e,o);return o}(n(469)),f=n(936),d=n(58),p=n(939);function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}var y,m=new d.Logger(p.version);function b(e){return"0x"===e?null:(0,o.getAddress)(e)}function v(e){return"0x"===e?u.Zero:a.BigNumber.from(e)}t.TransactionTypes=y,function(e){e[e.legacy=0]="legacy",e[e.eip2930=1]="eip2930",e[e.eip1559=2]="eip1559"}(y||(t.TransactionTypes=y={}));var k=[{name:"nonce",maxLength:32,numeric:!0},{name:"gasPrice",maxLength:32,numeric:!0},{name:"gasLimit",maxLength:32,numeric:!0},{name:"to",length:20},{name:"value",maxLength:32,numeric:!0},{name:"data"}],g={chainId:!0,data:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,type:!0,value:!0};function _(e){var t=(0,f.computePublicKey)(e);return(0,o.getAddress)((0,i.hexDataSlice)((0,c.keccak256)((0,i.hexDataSlice)(t,1)),12))}function w(e,t){return _((0,f.recoverPublicKey)((0,i.arrayify)(e),t))}function I(e,t){var n=(0,i.stripZeros)(a.BigNumber.from(e).toHexString());return n.length>32&&m.throwArgumentError("invalid length for "+t,"transaction:"+t,e),n}function A(e,t){return{address:(0,o.getAddress)(e),storageKeys:(t||[]).map((function(t,n){return 32!==(0,i.hexDataLength)(t)&&m.throwArgumentError("invalid access list storageKey","accessList[".concat(e,":").concat(n,"]"),t),t.toLowerCase()}))}}function T(e){if(Array.isArray(e))return e.map((function(e,t){return Array.isArray(e)?(e.length>2&&m.throwArgumentError("access list expected to be [ address, storageKeys[] ]","value[".concat(t,"]"),e),A(e[0],e[1])):A(e.address,e.storageKeys)}));var t=Object.keys(e).map((function(t){var n=e[t].reduce((function(e,t){return e[t]=!0,e}),{});return A(t,Object.keys(n).sort())}));return t.sort((function(e,t){return e.address.localeCompare(t.address)})),t}function O(e){return T(e).map((function(e){return[e.address,e.storageKeys]}))}function P(e,t){if(null!=e.gasPrice){var n=a.BigNumber.from(e.gasPrice),r=a.BigNumber.from(e.maxFeePerGas||0);n.eq(r)||m.throwArgumentError("mismatch EIP-1559 gasPrice != maxFeePerGas","tx",{gasPrice:n,maxFeePerGas:r})}var u=[I(e.chainId||0,"chainId"),I(e.nonce||0,"nonce"),I(e.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),I(e.maxFeePerGas||0,"maxFeePerGas"),I(e.gasLimit||0,"gasLimit"),null!=e.to?(0,o.getAddress)(e.to):"0x",I(e.value||0,"value"),e.data||"0x",O(e.accessList||[])];if(t){var c=(0,i.splitSignature)(t);u.push(I(c.recoveryParam,"recoveryParam")),u.push((0,i.stripZeros)(c.r)),u.push((0,i.stripZeros)(c.s))}return(0,i.hexConcat)(["0x02",l.encode(u)])}function E(e,t){var n=[I(e.chainId||0,"chainId"),I(e.nonce||0,"nonce"),I(e.gasPrice||0,"gasPrice"),I(e.gasLimit||0,"gasLimit"),null!=e.to?(0,o.getAddress)(e.to):"0x",I(e.value||0,"value"),e.data||"0x",O(e.accessList||[])];if(t){var r=(0,i.splitSignature)(t);n.push(I(r.recoveryParam,"recoveryParam")),n.push((0,i.stripZeros)(r.r)),n.push((0,i.stripZeros)(r.s))}return(0,i.hexConcat)(["0x01",l.encode(n)])}function S(e,t,n){try{var r=v(t[0]).toNumber();if(0!==r&&1!==r)throw new Error("bad recid");e.v=r}catch(e){m.throwArgumentError("invalid v for transaction type: 1","v",t[0])}e.r=(0,i.hexZeroPad)(t[1],32),e.s=(0,i.hexZeroPad)(t[2],32);try{var o=(0,c.keccak256)(n(e));e.from=w(o,{r:e.r,s:e.s,recoveryParam:e.v})}catch(e){console.log(e)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="logger/5.5.0"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="bytes/5.5.0"},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.FixedNumber=t.FixedFormat=void 0,t.formatFixed=v,t.parseFixed=k;var o=r(n(3)),a=r(n(1)),i=r(n(2)),u=n(56),c=n(58),s=n(468),l=n(467),f=new c.Logger(s.version),d={},p=l.BigNumber.from(0),h=l.BigNumber.from(-1);function y(e,t,n,r){var o={fault:t,operation:n};return void 0!==r&&(o.value=r),f.throwError(e,c.Logger.errors.NUMERIC_FAULT,o)}for(var m="0";m.length<256;)m+=m;function b(e){if("number"!=typeof e)try{e=l.BigNumber.from(e).toNumber()}catch(e){}return"number"==typeof e&&e>=0&&e<=256&&!(e%1)?"1"+m.substring(0,e):f.throwArgumentError("invalid decimal size","decimals",e)}function v(e,t){null==t&&(t=0);var n=b(t),r=(e=l.BigNumber.from(e)).lt(p);r&&(e=e.mul(h));for(var o=e.mod(n).toString();o.length2&&f.throwArgumentError("too many decimal points","value",e);var a=o[0],i=o[1];for(a||(a="0"),i||(i="0");"0"===i[i.length-1];)i=i.substring(0,i.length-1);for(i.length>n.length-1&&y("fractional component exceeds decimals","underflow","parseFixed"),""===i&&(i="0");i.length80&&f.throwArgumentError("invalid fixed format (decimals too large)","format.decimals",a),new e(d,n,r,a)}}]),e}();t.FixedFormat=g;var _=function(){function e(t,n,r,o){(0,a.default)(this,e),f.checkNew(this instanceof e?this.constructor:void 0,e),t!==d&&f.throwError("cannot use FixedNumber constructor; use FixedNumber.from",c.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new FixedFormat"}),this.format=o,this._hex=n,this._value=r,this._isFixedNumber=!0,Object.freeze(this)}return(0,i.default)(e,[{key:"_checkFormat",value:function(e){this.format.name!==e.format.name&&f.throwArgumentError("incompatible format; use fixedNumber.toFormat","other",e)}},{key:"addUnsafe",value:function(t){this._checkFormat(t);var n=k(this._value,this.format.decimals),r=k(t._value,t.format.decimals);return e.fromValue(n.add(r),this.format.decimals,this.format)}},{key:"subUnsafe",value:function(t){this._checkFormat(t);var n=k(this._value,this.format.decimals),r=k(t._value,t.format.decimals);return e.fromValue(n.sub(r),this.format.decimals,this.format)}},{key:"mulUnsafe",value:function(t){this._checkFormat(t);var n=k(this._value,this.format.decimals),r=k(t._value,t.format.decimals);return e.fromValue(n.mul(r).div(this.format._multiplier),this.format.decimals,this.format)}},{key:"divUnsafe",value:function(t){this._checkFormat(t);var n=k(this._value,this.format.decimals),r=k(t._value,t.format.decimals);return e.fromValue(n.mul(this.format._multiplier).div(r),this.format.decimals,this.format)}},{key:"floor",value:function(){var t=this.toString().split(".");1===t.length&&t.push("0");var n=e.from(t[0],this.format),r=!t[1].match(/^(0*)$/);return this.isNegative()&&r&&(n=n.subUnsafe(w.toFormat(n.format))),n}},{key:"ceiling",value:function(){var t=this.toString().split(".");1===t.length&&t.push("0");var n=e.from(t[0],this.format),r=!t[1].match(/^(0*)$/);return!this.isNegative()&&r&&(n=n.addUnsafe(w.toFormat(n.format))),n}},{key:"round",value:function(t){null==t&&(t=0);var n=this.toString().split(".");if(1===n.length&&n.push("0"),(t<0||t>80||t%1)&&f.throwArgumentError("invalid decimal count","decimals",t),n[1].length<=t)return this;var r=e.from("1"+m.substring(0,t),this.format),o=I.toFormat(this.format);return this.mulUnsafe(r).addUnsafe(o).floor().divUnsafe(r)}},{key:"isZero",value:function(){return"0.0"===this._value||"0"===this._value}},{key:"isNegative",value:function(){return"-"===this._value[0]}},{key:"toString",value:function(){return this._value}},{key:"toHexString",value:function(e){if(null==e)return this._hex;e%8&&f.throwArgumentError("invalid byte width","width",e);var t=l.BigNumber.from(this._hex).fromTwos(this.format.width).toTwos(e).toHexString();return(0,u.hexZeroPad)(t,e/8)}},{key:"toUnsafeFloat",value:function(){return parseFloat(this.toString())}},{key:"toFormat",value:function(t){return e.fromString(this._value,t)}}],[{key:"fromValue",value:function(t,n,r){return null!=r||null==n||(0,l.isBigNumberish)(n)||(r=n,n=null),null==n&&(n=0),null==r&&(r="fixed"),e.fromString(v(t,n),g.from(r))}},{key:"fromString",value:function(t,n){null==n&&(n="fixed");var r=g.from(n),o=k(t,r.decimals);!r.signed&&o.lt(p)&&y("unsigned value cannot be negative","overflow","value",t);var a=null;r.signed?a=o.toTwos(r.width).toHexString():(a=o.toHexString(),a=(0,u.hexZeroPad)(a,r.width/8));var i=v(o,r.decimals);return new e(d,a,i,r)}},{key:"fromBytes",value:function(t,n){null==n&&(n="fixed");var r=g.from(n);if((0,u.arrayify)(t).length>r.width/8)throw new Error("overflow");var o=l.BigNumber.from(t);r.signed&&(o=o.fromTwos(r.width));var a=o.toTwos((r.signed?0:1)+r.width).toHexString(),i=v(o,r.decimals);return new e(d,a,i,r)}},{key:"from",value:function(t,n){if("string"==typeof t)return e.fromString(t,n);if((0,u.isBytes)(t))return e.fromBytes(t,n);try{return e.fromValue(t,0,n)}catch(e){if(e.code!==c.Logger.errors.INVALID_ARGUMENT)throw e}return f.throwArgumentError("invalid FixedNumber value","value",t)}},{key:"isFixedNumber",value:function(e){return!(!e||!e._isFixedNumber)}}]),e}();t.FixedNumber=_;var w=_.from(1),I=_.from("0.5")},function(e,t,n){"use strict";(function(e,r,o){var a,i=n(0)(n(3)); /** * [js-sha3]{@link https://github.com/emn178/js-sha3} * @@ -39,5 +49,5 @@ object-assign * @copyright Chen, Yi-Cyuan 2015-2018 * @license MIT */ -!function(){var u="input is invalid type",c="object"===("undefined"==typeof window?"undefined":(0,i.default)(window)),s=c?window:{};s.JS_SHA3_NO_WINDOW&&(c=!1);var l=!c&&"object"===("undefined"==typeof self?"undefined":(0,i.default)(self));!s.JS_SHA3_NO_NODE_JS&&"object"===(void 0===e?"undefined":(0,i.default)(e))&&e.versions&&e.versions.node?s=r:l&&(s=self);var f=!s.JS_SHA3_NO_COMMON_JS&&"object"===(0,i.default)(o)&&o.exports,d=n(391),p=!s.JS_SHA3_NO_ARRAY_BUFFER&&"undefined"!=typeof ArrayBuffer,h="0123456789abcdef".split(""),y=[4,1024,262144,67108864],b=[0,8,16,24],m=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],v=[224,256,384,512],g=[128,256],k=["hex","buffer","arrayBuffer","array","digest"],_={128:168,256:136};!s.JS_SHA3_NO_NODE_JS&&Array.isArray||(Array.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)}),!p||!s.JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW&&ArrayBuffer.isView||(ArrayBuffer.isView=function(e){return"object"===(0,i.default)(e)&&e.buffer&&e.buffer.constructor===ArrayBuffer});for(var w=function(e,t,n){return function(r){return new x(e,t,e).update(r)[n]()}},I=function(e,t,n){return function(r,o){return new x(e,t,o).update(r)[n]()}},A=function(e,t,n){return function(t,r,o,a){return S["cshake"+e].update(t,r,o,a)[n]()}},T=function(e,t,n){return function(t,r,o,a){return S["kmac"+e].update(t,r,o,a)[n]()}},O=function(e,t,n,r){for(var o=0;o>5,this.byteCount=this.blockCount<<2,this.outputBlocks=n>>5,this.extraBytes=(31&n)>>3;for(var r=0;r<50;++r)this.s[r]=0}function F(e,t,n){x.call(this,e,t,n)}x.prototype.update=function(e){if(this.finalized)throw new Error("finalize already called");var t,n=(0,i.default)(e);if("string"!==n){if("object"!==n)throw new Error(u);if(null===e)throw new Error(u);if(p&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!(Array.isArray(e)||p&&ArrayBuffer.isView(e)))throw new Error(u);t=!0}for(var r,o,a=this.blocks,c=this.byteCount,s=e.length,l=this.blockCount,f=0,d=this.s;f>2]|=e[f]<>2]|=o<>2]|=(192|o>>6)<>2]|=(128|63&o)<=57344?(a[r>>2]|=(224|o>>12)<>2]|=(128|o>>6&63)<>2]|=(128|63&o)<>2]|=(240|o>>18)<>2]|=(128|o>>12&63)<>2]|=(128|o>>6&63)<>2]|=(128|63&o)<=c){for(this.start=r-c,this.block=a[l],r=0;r>=8);n>0;)o.unshift(n),n=255&(e>>=8),++r;return t?o.push(r):o.unshift(r),this.update(o),o.length},x.prototype.encodeString=function(e){var t,n=(0,i.default)(e);if("string"!==n){if("object"!==n)throw new Error(u);if(null===e)throw new Error(u);if(p&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!(Array.isArray(e)||p&&ArrayBuffer.isView(e)))throw new Error(u);t=!0}var r=0,o=e.length;if(t)r=o;else for(var a=0;a=57344?r+=3:(c=65536+((1023&c)<<10|1023&e.charCodeAt(++a)),r+=4)}return r+=this.encode(8*r),this.update(e),r},x.prototype.bytepad=function(e,t){for(var n=this.encode(t),r=0;r>2]|=this.padding[3&t],this.lastByteIndex===this.byteCount)for(e[0]=e[n],t=1;t>4&15]+h[15&e]+h[e>>12&15]+h[e>>8&15]+h[e>>20&15]+h[e>>16&15]+h[e>>28&15]+h[e>>24&15];i%t==0&&(U(n),a=0)}return o&&(e=n[a],u+=h[e>>4&15]+h[15&e],o>1&&(u+=h[e>>12&15]+h[e>>8&15]),o>2&&(u+=h[e>>20&15]+h[e>>16&15])),u},x.prototype.arrayBuffer=function(){this.finalize();var e,t=this.blockCount,n=this.s,r=this.outputBlocks,o=this.extraBytes,a=0,i=0,u=this.outputBits>>3;e=o?new ArrayBuffer(r+1<<2):new ArrayBuffer(u);for(var c=new Uint32Array(e);i>8&255,c[e+2]=t>>16&255,c[e+3]=t>>24&255;u%n==0&&U(r)}return a&&(e=u<<2,t=r[i],c[e]=255&t,a>1&&(c[e+1]=t>>8&255),a>2&&(c[e+2]=t>>16&255)),c},F.prototype=new x,F.prototype.finalize=function(){return this.encode(this.outputBits,!0),x.prototype.finalize.call(this)};var U=function(e){var t,n,r,o,a,i,u,c,s,l,f,d,p,h,y,b,v,g,k,_,w,I,A,T,O,E,P,S,R,D,C,N,B,M,j,x,F,U,L,K,G,z,Q,H,V,q,W,Y,Z,J,X,$,ee,te,ne,re,oe,ae,ie,ue,ce,se,le;for(r=0;r<48;r+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],a=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],u=e[3]^e[13]^e[23]^e[33]^e[43],c=e[4]^e[14]^e[24]^e[34]^e[44],s=e[5]^e[15]^e[25]^e[35]^e[45],l=e[6]^e[16]^e[26]^e[36]^e[46],f=e[7]^e[17]^e[27]^e[37]^e[47],t=(d=e[8]^e[18]^e[28]^e[38]^e[48])^(i<<1|u>>>31),n=(p=e[9]^e[19]^e[29]^e[39]^e[49])^(u<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(c<<1|s>>>31),n=a^(s<<1|c>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(l<<1|f>>>31),n=u^(f<<1|l>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=c^(d<<1|p>>>31),n=s^(p<<1|d>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=l^(o<<1|a>>>31),n=f^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,h=e[0],y=e[1],q=e[11]<<4|e[10]>>>28,W=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,b=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,g=e[25]<<11|e[24]>>>21,k=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,E=e[18]<<20|e[19]>>>12,P=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,K=e[38]<<8|e[39]>>>24,G=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=h^~b&g,e[1]=y^~v&k,e[10]=T^~E&S,e[11]=O^~P&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~q&Y,e[31]=V^~W&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=b^~g&_,e[3]=v^~k&w,e[12]=E^~S&D,e[13]=P^~R&C,e[22]=x^~U&K,e[23]=F^~L&G,e[32]=q^~Y&J,e[33]=W^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=g^~_&I,e[5]=k^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~K&z,e[25]=L^~G&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&h,e[7]=w^~A&y,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=K^~z&M,e[27]=G^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~h&b,e[9]=A^~y&v,e[18]=N^~T&E,e[19]=B^~O&P,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&q,e[39]=ee^~V&W,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=m[r],e[1]^=m[r+1]};if(f)o.exports=S;else{for(D=0;D>8,i=255&o;a?n.push(a,i):n.push(i)}return n},n.zero2=r,n.toHex=o,n.encode=function(e,t){return"hex"===t?o(e):e}})),f=u((function(e,t){var n=t;n.assert=c,n.toArray=l.toArray,n.zero2=l.zero2,n.toHex=l.toHex,n.encode=l.encode,n.getNAF=function(e,t,n){var r=new Array(Math.max(e.bitLength(),n)+1);r.fill(0);for(var o=1<(o>>1)-1?(o>>1)-c:c,a.isubn(u)):u=0,r[i]=u,a.iushrn(1)}return r},n.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r,o=0,a=0;e.cmpn(-o)>0||t.cmpn(-a)>0;){var i,u,c=e.andln(3)+o&3,s=t.andln(3)+a&3;3===c&&(c=-1),3===s&&(s=-1),i=0==(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[0].push(i),u=0==(1&s)?0:3!==(r=t.andln(7)+a&7)&&5!==r||2!==c?s:-s,n[1].push(u),2*o===i+1&&(o=1-o),2*a===u+1&&(a=1-a),e.iushrn(1),t.iushrn(1)}return n},n.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},n.parseBytes=function(e){return"string"==typeof e?n.toArray(e,"hex"):e},n.intFromLE=function(e){return new a.default(e,"hex","le")}})),d=f.getNAF,p=f.getJSF,h=f.assert;function y(e,t){this.type=e,this.p=new a.default(t.p,16),this.red=t.prime?a.default.red(t.prime):a.default.mont(this.p),this.zero=new a.default(0).toRed(this.red),this.one=new a.default(1).toRed(this.red),this.two=new a.default(2).toRed(this.red),this.n=t.n&&new a.default(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}var b=y;function m(e,t){this.curve=e,this.type=t,this.precomputed=null}y.prototype.point=function(){throw new Error("Not implemented")},y.prototype.validate=function(){throw new Error("Not implemented")},y.prototype._fixedNafMul=function(e,t){h(e.precomputed);var n=e._getDoubles(),r=d(t,1,this._bitLength),o=(1<=a;c--)i=(i<<1)+r[c];u.push(i)}for(var s=this.jpoint(null,null,null),l=this.jpoint(null,null,null),f=o;f>0;f--){for(a=0;a=0;u--){for(var c=0;u>=0&&0===a[u];u--)c++;if(u>=0&&c++,i=i.dblp(c),u<0)break;var s=a[u];h(0!==s),i="affine"===e.type?s>0?i.mixedAdd(o[s-1>>1]):i.mixedAdd(o[-s-1>>1].neg()):s>0?i.add(o[s-1>>1]):i.add(o[-s-1>>1].neg())}return"affine"===e.type?i.toP():i},y.prototype._wnafMulAdd=function(e,t,n,r,o){var a,i,u,c=this._wnafT1,s=this._wnafT2,l=this._wnafT3,f=0;for(a=0;a=1;a-=2){var y=a-1,b=a;if(1===c[y]&&1===c[b]){var m=[t[y],null,null,t[b]];0===t[y].y.cmp(t[b].y)?(m[1]=t[y].add(t[b]),m[2]=t[y].toJ().mixedAdd(t[b].neg())):0===t[y].y.cmp(t[b].y.redNeg())?(m[1]=t[y].toJ().mixedAdd(t[b]),m[2]=t[y].add(t[b].neg())):(m[1]=t[y].toJ().mixedAdd(t[b]),m[2]=t[y].toJ().mixedAdd(t[b].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],g=p(n[y],n[b]);for(f=Math.max(g[0].length,f),l[y]=new Array(f),l[b]=new Array(f),i=0;i=0;a--){for(var A=0;a>=0;){var T=!0;for(i=0;i=0&&A++,w=w.dblp(A),a<0)break;for(i=0;i0?u=s[i][O-1>>1]:O<0&&(u=s[i][-O-1>>1].neg()),w="affine"===u.type?w.mixedAdd(u):w.add(u))}}for(a=0;a=Math.ceil((e.bitLength()+1)/t.step)},m.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,o=0;o=0&&(i=t,u=n),r.negative&&(r=r.neg(),o=o.neg()),i.negative&&(i=i.neg(),u=u.neg()),[{a:r,b:o},{a:i,b:u}]},k.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],r=t[1],o=r.b.mul(e).divRound(this.n),a=n.b.neg().mul(e).divRound(this.n),i=o.mul(n.a),u=a.mul(r.a),c=o.mul(n.b),s=a.mul(r.b);return{k1:e.sub(i).sub(u),k2:c.add(s).neg()}},k.prototype.pointFromX=function(e,t){(e=new a.default(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var o=r.fromRed().isOdd();return(t&&!o||!t&&o)&&(r=r.redNeg()),this.point(e,r)},k.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,r=this.a.redMul(t),o=t.redSqr().redMul(t).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(o).cmpn(0)},k.prototype._endoWnafMulAdd=function(e,t,n){for(var r=this._endoWnafT1,o=this._endoWnafT2,a=0;a":""},w.prototype.isInfinity=function(){return this.inf},w.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var n=t.redSqr().redISub(this.x).redISub(e.x),r=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},w.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,n=this.x.redSqr(),r=e.redInvm(),o=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(r),a=o.redSqr().redISub(this.x.redAdd(this.x)),i=o.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,i)},w.prototype.getX=function(){return this.x.fromRed()},w.prototype.getY=function(){return this.y.fromRed()},w.prototype.mul=function(e){return e=new a.default(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},w.prototype.mulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o):this.curve._wnafMulAdd(1,r,o,2)},w.prototype.jmulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o,!0):this.curve._wnafMulAdd(1,r,o,2,!0)},w.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},w.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,r=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return t},w.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},v(I,b.BasePoint),k.prototype.jpoint=function(e,t,n){return new I(this,e,t,n)},I.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),r=this.y.redMul(t).redMul(e);return this.curve.point(n,r)},I.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},I.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(t),o=e.x.redMul(n),a=this.y.redMul(t.redMul(e.z)),i=e.y.redMul(n.redMul(this.z)),u=r.redSub(o),c=a.redSub(i);if(0===u.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var s=u.redSqr(),l=s.redMul(u),f=r.redMul(s),d=c.redSqr().redIAdd(l).redISub(f).redISub(f),p=c.redMul(f.redISub(d)).redISub(a.redMul(l)),h=this.z.redMul(e.z).redMul(u);return this.curve.jpoint(d,p,h)},I.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,r=e.x.redMul(t),o=this.y,a=e.y.redMul(t).redMul(this.z),i=n.redSub(r),u=o.redSub(a);if(0===i.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=i.redSqr(),s=c.redMul(i),l=n.redMul(c),f=u.redSqr().redIAdd(s).redISub(l).redISub(l),d=u.redMul(l.redISub(f)).redISub(o.redMul(s)),p=this.z.redMul(i);return this.curve.jpoint(f,d,p)},I.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t=0)return!1;if(n.redIAdd(o),0===this.x.cmp(n))return!0}},I.prototype.inspect=function(){return this.isInfinity()?"":""},I.prototype.isInfinity=function(){return 0===this.z.cmpn(0)};var A=u((function(e,t){var n=t;n.base=b,n.short=_,n.mont=null,n.edwards=null})),T=u((function(e,t){var n,r=t,o=f.assert;function a(e){"short"===e.type?this.curve=new A.short(e):"edwards"===e.type?this.curve=new A.edwards(e):this.curve=new A.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,o(this.g.validate(),"Invalid curve"),o(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function u(e,t){Object.defineProperty(r,e,{configurable:!0,enumerable:!0,get:function(){var n=new a(t);return Object.defineProperty(r,e,{configurable:!0,enumerable:!0,value:n}),n}})}r.PresetCurve=a,u("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:i.default.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),u("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:i.default.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),u("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:i.default.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),u("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:i.default.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),u("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:i.default.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),u("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:i.default.sha256,gRed:!1,g:["9"]}),u("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:i.default.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{n=null.crash()}catch(e){n=void 0}u("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:i.default.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",n]})}));function O(e){if(!(this instanceof O))return new O(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=l.toArray(e.entropy,e.entropyEnc||"hex"),n=l.toArray(e.nonce,e.nonceEnc||"hex"),r=l.toArray(e.pers,e.persEnc||"hex");c(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,r)}var E=O;O.prototype._init=function(e,t,n){var r=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var o=0;o=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},O.prototype.generate=function(e,t,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(r=n,n=t,t=null),n&&(n=l.toArray(n,r||"hex"),this._update(n));for(var o=[];o.length"};var D=f.assert;function C(e,t){if(e instanceof C)return e;this._importDER(e,t)||(D(e.r&&e.s,"Signature without r or s"),this.r=new a.default(e.r,16),this.s=new a.default(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}var N=C;function B(){this.place=0}function M(e,t){var n=e[t.place++];if(!(128&n))return n;var r=15&n;if(0===r||r>4)return!1;for(var o=0,a=0,i=t.place;a>>=0;return!(o<=127)&&(t.place=i,o)}function j(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}C.prototype._importDER=function(e,t){e=f.toArray(e,t);var n=new B;if(48!==e[n.place++])return!1;var r=M(e,n);if(!1===r)return!1;if(r+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var o=M(e,n);if(!1===o)return!1;var i=e.slice(n.place,o+n.place);if(n.place+=o,2!==e[n.place++])return!1;var u=M(e,n);if(!1===u)return!1;if(e.length!==u+n.place)return!1;var c=e.slice(n.place,u+n.place);if(0===i[0]){if(!(128&i[1]))return!1;i=i.slice(1)}if(0===c[0]){if(!(128&c[1]))return!1;c=c.slice(1)}return this.r=new a.default(i),this.s=new a.default(c),this.recoveryParam=null,!0},C.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=j(t),n=j(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];x(r,t.length),(r=r.concat(t)).push(2),x(r,n.length);var o=r.concat(n),a=[48];return x(a,o.length),a=a.concat(o),f.encode(a,e)};var F=function(){throw new Error("unsupported")},U=f.assert;function L(e){if(!(this instanceof L))return new L(e);"string"==typeof e&&(U(Object.prototype.hasOwnProperty.call(T,e),"Unknown curve "+e),e=T[e]),e instanceof T.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}var K=L;L.prototype.keyPair=function(e){return new R(this,e)},L.prototype.keyFromPrivate=function(e,t){return R.fromPrivate(this,e,t)},L.prototype.keyFromPublic=function(e,t){return R.fromPublic(this,e,t)},L.prototype.genKeyPair=function(e){e||(e={});for(var t=new E({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||F(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),n=this.n.byteLength(),r=this.n.sub(new a.default(2));;){var o=new a.default(t.generate(n));if(!(o.cmp(r)>0))return o.iaddn(1),this.keyFromPrivate(o)}},L.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},L.prototype.sign=function(e,t,n,r){"object"===(0,o.default)(n)&&(r=n,n=null),r||(r={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new a.default(e,16));for(var i=this.n.byteLength(),u=t.getPrivate().toArray("be",i),c=e.toArray("be",i),s=new E({hash:this.hash,entropy:u,nonce:c,pers:r.pers,persEnc:r.persEnc||"utf8"}),l=this.n.sub(new a.default(1)),f=0;;f++){var d=r.k?r.k(f):new a.default(s.generate(this.n.byteLength()));if(!((d=this._truncateToN(d,!0)).cmpn(1)<=0||d.cmp(l)>=0)){var p=this.g.mul(d);if(!p.isInfinity()){var h=p.getX(),y=h.umod(this.n);if(0!==y.cmpn(0)){var b=d.invm(this.n).mul(y.mul(t.getPrivate()).iadd(e));if(0!==(b=b.umod(this.n)).cmpn(0)){var m=(p.getY().isOdd()?1:0)|(0!==h.cmp(y)?2:0);return r.canonical&&b.cmp(this.nh)>0&&(b=this.n.sub(b),m^=1),new N({r:y,s:b,recoveryParam:m})}}}}}},L.prototype.verify=function(e,t,n,r){e=this._truncateToN(new a.default(e,16)),n=this.keyFromPublic(n,r);var o=(t=new N(t,"hex")).r,i=t.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var u,c=i.invm(this.n),s=c.mul(e).umod(this.n),l=c.mul(o).umod(this.n);return this.curve._maxwellTrick?!(u=this.g.jmulAdd(s,n.getPublic(),l)).isInfinity()&&u.eqXToP(o):!(u=this.g.mulAdd(s,n.getPublic(),l)).isInfinity()&&0===u.getX().umod(this.n).cmp(o)},L.prototype.recoverPubKey=function(e,t,n,r){U((3&n)===n,"The recovery param is more than two bits"),t=new N(t,r);var o=this.n,i=new a.default(e),u=t.r,c=t.s,s=1&n,l=n>>1;if(u.cmp(this.curve.p.umod(this.curve.n))>=0&&l)throw new Error("Unable to find sencond key candinate");u=l?this.curve.pointFromX(u.add(this.curve.n),s):this.curve.pointFromX(u,s);var f=t.r.invm(o),d=o.sub(i).mul(f).umod(o),p=c.mul(f).umod(o);return this.g.mulAdd(d,u,p)},L.prototype.getKeyRecoveryParam=function(e,t,n,r){if(null!==(t=new N(t,r)).recoveryParam)return t.recoveryParam;for(var o=0;o<4;o++){var a;try{a=this.recoverPubKey(e,t,o)}catch(e){continue}if(a.eq(n))return o}throw new Error("Unable to find valid recovery factor")};var G=u((function(e,t){var n=t;n.version="6.5.4",n.utils=f,n.rand=function(){throw new Error("unsupported")},n.curve=A,n.curves=T,n.ec=K,n.eddsa=null})).ec;t.EC=G}).call(this,n(33))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="signing-key/5.5.0"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="transactions/5.5.0"},function(e,t,n){"use strict";(function(e,r){var o=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(42)),i=o(n(3)),u=n(399),c=n(133),s=o(n(946)),l=o(n(997)),f=o(n(998)),d=o(n(79)),p=o(n(1001)),h=o(n(1035)),y=n(274),b=function(){(0,c.packageInit)(this,arguments),delete this.BatchRequest,delete this.extend,this.wallet=new m(this)};function m(e){this._accounts=e,this.length=0,this.defaultKeyName="web3js_wallet"}b.prototype._addAccountFunctions=function(e,t){var n=this,r={address:t,privateKey:e,publicKey:e.publicKey,signTransaction:function(e){return n.signTransaction(e)},sign:function(e){return n.sign(e)},encrypt:function(e,t){return n.encrypt(r.privateKey,e,t)}};return r},b.prototype.create=function(e){var t=u.PrivateKey.generateED25519();h.default.call(this,t,e)},b.prototype.privateKeyToAccount=function(){throw new Error("Not available")},b.prototype.signTransaction=function(e){return this.currentProvider.signTransaction(e)},b.prototype.recoverTransaction=function(e){var t=r.from(e.slice(2),"hex"),n=TransactionFactory.fromSerializedData(t);return d.default.toChecksumAddress(n.getSenderAddress().toString("hex"))},b.prototype.hashMessage=function(e){var t=d.default.isHexStrict(e)?e:d.default.utf8ToHex(e),n=d.default.hexToBytes(t),o=r.from(n),a="Ethereum Signed Message:\n"+n.length,i=r.from(a),u=r.concat([i,o]);return p.default.bufferToHex(p.default.keccak256(u))},b.prototype.sign=function(e){return{message:e,signature:this.currentProvider.sign(e)}},b.prototype.recover=function(e,t,n){var r=[].slice.apply(arguments);return e&&"object"===(0,i.default)(e)?this.recover(e.messageHash,s.default.encodeSignature([e.v,e.r,e.s]),!0):(n||(e=this.hashMessage(e)),r.length>=4?(n="boolean"==typeof(n=r.slice(-1)[0])&&!!n,this.recover(e,s.default.encodeSignature(r.slice(1,4)),n)):s.default.recover(e,t))},b.prototype.decrypt=function(e,t,n){if("string"!=typeof t)throw new Error("No password given.");var o,u,c=e&&"object"===(0,i.default)(e)?e:JSON.parse(n?e.toLowerCase():e);if(3!==c.version)throw new Error("Not a valid V3 wallet");if("scrypt"===c.crypto.kdf)u=c.crypto.kdfparams,o=l.default.syncScrypt(r.from(t),r.from(u.salt,"hex"),u.n,u.r,u.p,u.dklen);else{if("pbkdf2"!==c.crypto.kdf)throw new Error("Unsupported key derivation scheme");if("hmac-sha256"!==(u=c.crypto.kdfparams).prf)throw new Error("Unsupported parameters to PBKDF2");o=y.pbkdf2Sync(r.from(t),r.from(u.salt,"hex"),u.c,u.dklen,"sha256")}var s=r.from(c.crypto.ciphertext,"hex");if(d.default.sha3(r.from([].concat((0,a.default)(o.slice(16,32)),(0,a.default)(s)))).replace("0x","")!==c.crypto.mac)throw new Error("Key derivation failed - possibly wrong password");var f=y.createDecipheriv(c.crypto.cipher,o.slice(0,16),r.from(c.crypto.cipherparams.iv,"hex")),p="0x"+r.from([].concat((0,a.default)(f.update(s)),(0,a.default)(f.final()))).toString("hex");return this.privateKeyToAccount(p,!0)},b.prototype.encrypt=function(e,t,n){var o,i=(n=n||{}).salt||y.randomBytes(32),u=n.iv||y.randomBytes(16),c=n.kdf||"scrypt",s={dklen:n.dklen||32,salt:i.toString("hex")};if("pbkdf2"===c)s.c=n.c||262144,s.prf="hmac-sha256",o=y.pbkdf2Sync(r.from(t),r.from(s.salt,"hex"),s.c,s.dklen,"sha256");else{if("scrypt"!==c)throw new Error("Unsupported kdf");s.n=n.n||8192,s.r=n.r||8,s.p=n.p||1,o=l.default.syncScrypt(r.from(t),r.from(s.salt,"hex"),s.n,s.r,s.p,s.dklen)}var p=y.createCipheriv(n.cipher||"aes-128-ctr",o.slice(0,16),u);if(!p)throw new Error("Unsupported cipher");var h=r.from([].concat((0,a.default)(p.update(r.from(e,"hex"))),(0,a.default)(p.final()))),b=d.default.sha3(r.from([].concat((0,a.default)(o.slice(16,32)),(0,a.default)(h)))).replace("0x","");return{version:3,id:f.default.v4({random:n.uuid||y.randomBytes(16)}),crypto:{ciphertext:h.toString("hex"),cipherparams:{iv:u.toString("hex")},cipher:n.cipher||"aes-128-ctr",kdf:c,kdfparams:s,mac:b.toString("hex")}}},m.prototype._findSafeIndex=function(e){return e=e||0,this.hasOwnProperty(e)?this._findSafeIndex(e+1):e},m.prototype._currentIndexes=function(){return Object.keys(this).map((function(e){return parseInt(e)})).filter((function(e){return e<9e20}))},m.prototype.create=function(e,t){for(var n=0;n2?o-2:0),i=2;i>>1^(0==(1&t)?0:178)}return 255^t},t.legacy1=function(e,t){for(var n=h(e.map((function(e){return t.indexOf(e.toLowerCase())})),t.length,256,33),r=n[n.length-1],o=new Uint8Array(n.length-1),a=0;a=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;l-=1){var d=a.dividedToIntegerBy(n),p=a.modulo(n);a=d,s[l]=p.toNumber()}return s}function y(e){var t=[];t.fill(!1,0,8*e.length);for(var n=0;n>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],b=e[1],q=e[11]<<4|e[10]>>>28,W=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,m=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,g=e[25]<<11|e[24]>>>21,k=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,E=e[18]<<20|e[19]>>>12,P=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,K=e[38]<<8|e[39]>>>24,G=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~m&g,e[1]=b^~v&k,e[10]=T^~E&S,e[11]=O^~P&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~q&Y,e[31]=V^~W&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=m^~g&_,e[3]=v^~k&w,e[12]=E^~S&D,e[13]=P^~R&C,e[22]=x^~U&K,e[23]=F^~L&G,e[32]=q^~Y&J,e[33]=W^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=g^~_&I,e[5]=k^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~K&z,e[25]=L^~G&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&b,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=K^~z&M,e[27]=G^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&m,e[9]=A^~b&v,e[18]=N^~T&E,e[19]=B^~O&P,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&q,e[39]=ee^~V&W,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];m%f==0&&(c(p),n=0)}return"0x"+b}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e){e.exports=JSON.parse('{"_args":[["elliptic@6.5.4","C:\\\\Users\\\\micha\\\\Desktop\\\\Projects\\\\silk\\\\hweb3.js\\\\packages\\\\hweb3-eth-accounts"]],"_from":"elliptic@6.5.4","_id":"elliptic@6.5.4","_inBundle":false,"_integrity":"sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==","_location":"/elliptic","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"elliptic@6.5.4","name":"elliptic","escapedName":"elliptic","rawSpec":"6.5.4","saveSpec":null,"fetchSpec":"6.5.4"},"_requiredBy":["/@hashgraph/cryptography","/ethereumjs-util/secp256k1"],"_resolved":"https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz","_spec":"6.5.4","_where":"C:\\\\Users\\\\micha\\\\Desktop\\\\Projects\\\\silk\\\\hweb3.js\\\\packages\\\\hweb3-eth-accounts","author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"bugs":{"url":"https://github.com/indutny/elliptic/issues"},"dependencies":{"bn.js":"^4.11.9","brorand":"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1","inherits":"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"},"description":"EC cryptography","devDependencies":{"brfs":"^2.0.2","coveralls":"^3.1.0","eslint":"^7.6.0","grunt":"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.5","mocha":"^8.0.1"},"files":["lib"],"homepage":"https://github.com/indutny/elliptic","keywords":["EC","Elliptic","curve","Cryptography"],"license":"MIT","main":"lib/elliptic.js","name":"elliptic","repository":{"type":"git","url":"git+ssh://git@github.com/indutny/elliptic.git"},"scripts":{"lint":"eslint lib test","lint:fix":"npm run lint -- --fix","test":"npm run lint && npm run unit","unit":"istanbul test _mocha --reporter=spec test/index.js","version":"grunt dist && git add dist/"},"version":"6.5.4"}')},function(e,t){},function(e,t,n){"use strict";var r=n(63),o=n(13),a=n(41),i=n(203),u=r.assert;function c(e){i.call(this,"short",e),this.a=new o(e.a,16).toRed(this.red),this.b=new o(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function s(e,t,n,r){i.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new o(t,16),this.y=new o(n,16),r&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function l(e,t,n,r){i.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===r?(this.x=this.curve.one,this.y=this.curve.one,this.z=new o(0)):(this.x=new o(t,16),this.y=new o(n,16),this.z=new o(r,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}a(c,i),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new o(e.beta,16).toRed(this.red);else{var r=this._getEndoRoots(this.p);t=(t=r[0].cmp(r[1])<0?r[0]:r[1]).toRed(this.red)}if(e.lambda)n=new o(e.lambda,16);else{var a=this._getEndoRoots(this.n);0===this.g.mul(a[0]).x.cmp(this.g.x.redMul(t))?n=a[0]:(n=a[1],u(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new o(e.a,16),b:new o(e.b,16)}})):this._getEndoBasis(n)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:o.mont(e),n=new o(2).toRed(t).redInvm(),r=n.redNeg(),a=new o(3).toRed(t).redNeg().redSqrt().redMul(n);return[r.redAdd(a).fromRed(),r.redSub(a).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,n,r,a,i,u,c,s,l,f=this.n.ushrn(Math.floor(this.n.bitLength()/2)),d=e,p=this.n.clone(),h=new o(1),y=new o(0),b=new o(0),m=new o(1),v=0;0!==d.cmpn(0);){var g=p.div(d);s=p.sub(g.mul(d)),l=b.sub(g.mul(h));var k=m.sub(g.mul(y));if(!r&&s.cmp(f)<0)t=c.neg(),n=h,r=s.neg(),a=l;else if(r&&2==++v)break;c=s,p=d,d=s,b=h,h=l,m=y,y=k}i=s.neg(),u=l;var _=r.sqr().add(a.sqr());return i.sqr().add(u.sqr()).cmp(_)>=0&&(i=t,u=n),r.negative&&(r=r.neg(),a=a.neg()),i.negative&&(i=i.neg(),u=u.neg()),[{a:r,b:a},{a:i,b:u}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],r=t[1],o=r.b.mul(e).divRound(this.n),a=n.b.neg().mul(e).divRound(this.n),i=o.mul(n.a),u=a.mul(r.a),c=o.mul(n.b),s=a.mul(r.b);return{k1:e.sub(i).sub(u),k2:c.add(s).neg()}},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var a=r.fromRed().isOdd();return(t&&!a||!t&&a)&&(r=r.redNeg()),this.point(e,r)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,r=this.a.redMul(t),o=t.redSqr().redMul(t).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(o).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,n){for(var r=this._endoWnafT1,o=this._endoWnafT2,a=0;a":""},s.prototype.isInfinity=function(){return this.inf},s.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var n=t.redSqr().redISub(this.x).redISub(e.x),r=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},s.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,n=this.x.redSqr(),r=e.redInvm(),o=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(r),a=o.redSqr().redISub(this.x.redAdd(this.x)),i=o.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,i)},s.prototype.getX=function(){return this.x.fromRed()},s.prototype.getY=function(){return this.y.fromRed()},s.prototype.mul=function(e){return e=new o(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o):this.curve._wnafMulAdd(1,r,o,2)},s.prototype.jmulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o,!0):this.curve._wnafMulAdd(1,r,o,2,!0)},s.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},s.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,r=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return t},s.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},a(l,i.BasePoint),c.prototype.jpoint=function(e,t,n){return new l(this,e,t,n)},l.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),r=this.y.redMul(t).redMul(e);return this.curve.point(n,r)},l.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},l.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(t),o=e.x.redMul(n),a=this.y.redMul(t.redMul(e.z)),i=e.y.redMul(n.redMul(this.z)),u=r.redSub(o),c=a.redSub(i);if(0===u.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var s=u.redSqr(),l=s.redMul(u),f=r.redMul(s),d=c.redSqr().redIAdd(l).redISub(f).redISub(f),p=c.redMul(f.redISub(d)).redISub(a.redMul(l)),h=this.z.redMul(e.z).redMul(u);return this.curve.jpoint(d,p,h)},l.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,r=e.x.redMul(t),o=this.y,a=e.y.redMul(t).redMul(this.z),i=n.redSub(r),u=o.redSub(a);if(0===i.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=i.redSqr(),s=c.redMul(i),l=n.redMul(c),f=u.redSqr().redIAdd(s).redISub(l).redISub(l),d=u.redMul(l.redISub(f)).redISub(o.redMul(s)),p=this.z.redMul(i);return this.curve.jpoint(f,d,p)},l.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t=0)return!1;if(n.redIAdd(o),0===this.x.cmp(n))return!0}},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t,n){"use strict";var r=n(13),o=n(41),a=n(203),i=n(63);function u(e){a.call(this,"mont",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.i4=new r(4).toRed(this.red).redInvm(),this.two=new r(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,n){a.BasePoint.call(this,e,"projective"),null===t&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new r(t,16),this.z=new r(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}o(u,a),e.exports=u,u.prototype.validate=function(e){var t=e.normalize().x,n=t.redSqr(),r=n.redMul(t).redAdd(n.redMul(this.a)).redAdd(t);return 0===r.redSqrt().redSqr().cmp(r)},o(c,a.BasePoint),u.prototype.decodePoint=function(e,t){return this.point(i.toArray(e,t),1)},u.prototype.point=function(e,t){return new c(this,e,t)},u.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),n=e.redSub(t),r=e.redMul(t),o=n.redMul(t.redAdd(this.curve.a24.redMul(n)));return this.curve.point(r,o)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var n=this.x.redAdd(this.z),r=this.x.redSub(this.z),o=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(n),i=o.redMul(r),u=t.z.redMul(a.redAdd(i).redSqr()),c=t.x.redMul(a.redISub(i).redSqr());return this.curve.point(u,c)},c.prototype.mul=function(e){for(var t=e.clone(),n=this,r=this.curve.point(null,null),o=[];0!==t.cmpn(0);t.iushrn(1))o.push(t.andln(1));for(var a=o.length-1;a>=0;a--)0===o[a]?(n=n.diffAdd(r,this),r=r.dbl()):(r=n.diffAdd(r,this),n=n.dbl());return r},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,n){"use strict";var r=n(63),o=n(13),a=n(41),i=n(203),u=r.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,i.call(this,"edwards",e),this.a=new o(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new o(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new o(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),u(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function s(e,t,n,r,a){i.BasePoint.call(this,e,"projective"),null===t&&null===n&&null===r?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new o(t,16),this.y=new o(n,16),this.z=r?new o(r,16):this.curve.one,this.t=a&&new o(a,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}a(c,i),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,n,r){return this.point(e,t,n,r)},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=this.c2.redSub(this.a.redMul(n)),a=this.one.redSub(this.c2.redMul(this.d).redMul(n)),i=r.redMul(a.redInvm()),u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");var c=u.fromRed().isOdd();return(t&&!c||!t&&c)&&(u=u.redNeg()),this.point(e,u)},c.prototype.pointFromY=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=n.redSub(this.c2),a=n.redMul(this.d).redMul(this.c2).redSub(this.a),i=r.redMul(a.redInvm());if(0===i.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");return u.fromRed().isOdd()!==t&&(u=u.redNeg()),this.point(u,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),n=e.y.redSqr(),r=t.redMul(this.a).redAdd(n),o=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(n)));return 0===r.cmp(o)},a(s,i.BasePoint),c.prototype.pointFromJSON=function(e){return s.fromJSON(this,e)},c.prototype.point=function(e,t,n,r){return new s(this,e,t,n,r)},s.fromJSON=function(e,t){return new s(e,t[0],t[1],t[2])},s.prototype.inspect=function(){return this.isInfinity()?"":""},s.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},s.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var r=this.curve._mulA(e),o=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=r.redAdd(t),i=a.redSub(n),u=r.redSub(t),c=o.redMul(i),s=a.redMul(u),l=o.redMul(u),f=i.redMul(a);return this.curve.point(c,s,f,l)},s.prototype._projDbl=function(){var e,t,n,r,o,a,i=this.x.redAdd(this.y).redSqr(),u=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var s=(r=this.curve._mulA(u)).redAdd(c);this.zOne?(e=i.redSub(u).redSub(c).redMul(s.redSub(this.curve.two)),t=s.redMul(r.redSub(c)),n=s.redSqr().redSub(s).redSub(s)):(o=this.z.redSqr(),a=s.redSub(o).redISub(o),e=i.redSub(u).redISub(c).redMul(a),t=s.redMul(r.redSub(c)),n=s.redMul(a))}else r=u.redAdd(c),o=this.curve._mulC(this.z).redSqr(),a=r.redSub(o).redSub(o),e=this.curve._mulC(i.redISub(r)).redMul(a),t=this.curve._mulC(r).redMul(u.redISub(c)),n=r.redMul(a);return this.curve.point(e,t,n)},s.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},s.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),r=this.t.redMul(this.curve.dd).redMul(e.t),o=this.z.redMul(e.z.redAdd(e.z)),a=n.redSub(t),i=o.redSub(r),u=o.redAdd(r),c=n.redAdd(t),s=a.redMul(i),l=u.redMul(c),f=a.redMul(c),d=i.redMul(u);return this.curve.point(s,l,d,f)},s.prototype._projAdd=function(e){var t,n,r=this.z.redMul(e.z),o=r.redSqr(),a=this.x.redMul(e.x),i=this.y.redMul(e.y),u=this.curve.d.redMul(a).redMul(i),c=o.redSub(u),s=o.redAdd(u),l=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(i),f=r.redMul(c).redMul(l);return this.curve.twisted?(t=r.redMul(s).redMul(i.redSub(this.curve._mulA(a))),n=c.redMul(s)):(t=r.redMul(s).redMul(i.redSub(a)),n=this.curve._mulC(c).redMul(s)),this.curve.point(f,t,n)},s.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},s.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!1)},s.prototype.jmulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!0)},s.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},s.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},s.prototype.getX=function(){return this.normalize(),this.x.fromRed()},s.prototype.getY=function(){return this.normalize(),this.y.fromRed()},s.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},s.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var n=e.clone(),r=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(r),0===this.x.cmp(t))return!0}},s.prototype.toP=s.prototype.normalize,s.prototype.mixedAdd=s.prototype.add},function(e,t,n){"use strict";t.sha1=n(820),t.sha224=n(821),t.sha256=n(414),t.sha384=n(822),t.sha512=n(415)},function(e,t,n){"use strict";var r=n(80),o=n(168),a=n(413),i=r.rotl32,u=r.sum32,c=r.sum32_5,s=a.ft_1,l=o.BlockHash,f=[1518500249,1859775393,2400959708,3395469782];function d(){if(!(this instanceof d))return new d;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}r.inherits(d,l),e.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;rthis.blockSize&&(e=(new this.Hash).update(e).digest()),o(e.length<=this.blockSize);for(var t=e.length;t0))return i.iaddn(1),this.keyFromPrivate(i)}},d.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,n,i){"object"===(0,r.default)(n)&&(i=n,n=null),i||(i={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new o(e,16));for(var u=this.n.byteLength(),c=t.getPrivate().toArray("be",u),s=e.toArray("be",u),l=new a({hash:this.hash,entropy:c,nonce:s,pers:i.pers,persEnc:i.persEnc||"utf8"}),d=this.n.sub(new o(1)),p=0;;p++){var h=i.k?i.k(p):new o(l.generate(this.n.byteLength()));if(!((h=this._truncateToN(h,!0)).cmpn(1)<=0||h.cmp(d)>=0)){var y=this.g.mul(h);if(!y.isInfinity()){var b=y.getX(),m=b.umod(this.n);if(0!==m.cmpn(0)){var v=h.invm(this.n).mul(m.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var g=(y.getY().isOdd()?1:0)|(0!==b.cmp(m)?2:0);return i.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),g^=1),new f({r:m,s:v,recoveryParam:g})}}}}}},d.prototype.verify=function(e,t,n,r){e=this._truncateToN(new o(e,16)),n=this.keyFromPublic(n,r);var a=(t=new f(t,"hex")).r,i=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var u,c=i.invm(this.n),s=c.mul(e).umod(this.n),l=c.mul(a).umod(this.n);return this.curve._maxwellTrick?!(u=this.g.jmulAdd(s,n.getPublic(),l)).isInfinity()&&u.eqXToP(a):!(u=this.g.mulAdd(s,n.getPublic(),l)).isInfinity()&&0===u.getX().umod(this.n).cmp(a)},d.prototype.recoverPubKey=function(e,t,n,r){s((3&n)===n,"The recovery param is more than two bits"),t=new f(t,r);var a=this.n,i=new o(e),u=t.r,c=t.s,l=1&n,d=n>>1;if(u.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");u=d?this.curve.pointFromX(u.add(this.curve.n),l):this.curve.pointFromX(u,l);var p=t.r.invm(a),h=a.sub(i).mul(p).umod(a),y=c.mul(p).umod(a);return this.g.mulAdd(h,u,y)},d.prototype.getKeyRecoveryParam=function(e,t,n,r){if(null!==(t=new f(t,r)).recoveryParam)return t.recoveryParam;for(var o=0;o<4;o++){var a;try{a=this.recoverPubKey(e,t,o)}catch(e){continue}if(a.eq(n))return o}throw new Error("Unable to find valid recovery factor")}},function(e,t,n){"use strict";var r=n(265),o=n(410),a=n(119);function i(e){if(!(this instanceof i))return new i(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=o.toArray(e.entropy,e.entropyEnc||"hex"),n=o.toArray(e.nonce,e.nonceEnc||"hex"),r=o.toArray(e.pers,e.persEnc||"hex");a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,r)}e.exports=i,i.prototype._init=function(e,t,n){var r=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var o=0;o=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},i.prototype.generate=function(e,t,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(r=n,n=t,t=null),n&&(n=o.toArray(n,r||"hex"),this._update(n));for(var a=[];a.length"}},function(e,t,n){"use strict";var r=n(13),o=n(63),a=o.assert;function i(e,t){if(e instanceof i)return e;this._importDER(e,t)||(a(e.r&&e.s,"Signature without r or s"),this.r=new r(e.r,16),this.s=new r(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function u(){this.place=0}function c(e,t){var n=e[t.place++];if(!(128&n))return n;var r=15&n;if(0===r||r>4)return!1;for(var o=0,a=0,i=t.place;a>>=0;return!(o<=127)&&(t.place=i,o)}function s(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}e.exports=i,i.prototype._importDER=function(e,t){e=o.toArray(e,t);var n=new u;if(48!==e[n.place++])return!1;var a=c(e,n);if(!1===a)return!1;if(a+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var i=c(e,n);if(!1===i)return!1;var s=e.slice(n.place,i+n.place);if(n.place+=i,2!==e[n.place++])return!1;var l=c(e,n);if(!1===l)return!1;if(e.length!==l+n.place)return!1;var f=e.slice(n.place,l+n.place);if(0===s[0]){if(!(128&s[1]))return!1;s=s.slice(1)}if(0===f[0]){if(!(128&f[1]))return!1;f=f.slice(1)}return this.r=new r(s),this.s=new r(f),this.recoveryParam=null,!0},i.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=s(t),n=s(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];l(r,t.length),(r=r.concat(t)).push(2),l(r,n.length);var a=r.concat(n),i=[48];return l(i,a.length),i=i.concat(a),o.encode(i,e)}},function(e,t,n){"use strict";var r=n(265),o=n(264),a=n(63),i=a.assert,u=a.parseBytes,c=n(831),s=n(832);function l(e){if(i("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof l))return new l(e);e=o[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=r.sha512}e.exports=l,l.prototype.sign=function(e,t){e=u(e);var n=this.keyFromSecret(t),r=this.hashInt(n.messagePrefix(),e),o=this.g.mul(r),a=this.encodePoint(o),i=this.hashInt(a,n.pubBytes(),e).mul(n.priv()),c=r.add(i).umod(this.curve.n);return this.makeSignature({R:o,S:c,Rencoded:a})},l.prototype.verify=function(e,t,n){e=u(e),t=this.makeSignature(t);var r=this.keyFromPublic(n),o=this.hashInt(t.Rencoded(),r.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(r.pub().mul(o)).eq(a)},l.prototype.hashInt=function(){for(var e=this.hash(),t=0;t=1&&"ident"in t.seq[0]))throw new Error("error parsing AlgorithmIdentifier from ".concat(JSON.stringify(t)));this.algIdent=t.seq[0].ident,this.parameters=t.seq[1]}return(0,c.default)(e,[{key:"toString",value:function(){return JSON.stringify(this)}}]),e}();t.AlgorithmIdentifier=y;var b=function e(t){if((0,u.default)(this,e),!("seq"in t)||2!==t.seq.length)throw new Error("error parsing PBES2Params from ".concat(JSON.stringify(t)));this.kdf=new y(t.seq[0]),this.encScheme=new y(t.seq[1])},m=function e(t){if((0,u.default)(this,e),"seq"in t&&t.seq.length>=2&&"bytes"in t.seq[0]&&"int"in t.seq[1]&&(this.salt=t.seq[0].bytes,this.iterCount=t.seq[1].int,t.seq.length>2))return"seq"in t.seq[2]?void(this.prf=new y(t.seq[2])):("int"in t.seq[2]&&(this.keyLength=t.seq[2].int),void(4===t.seq.length&&(this.prf=new y(t.seq[3]))));throw new Error("error parsing PBKDF2Params from ".concat(JSON.stringify(t)))},v=function(){function e(t){if((0,u.default)(this,e),!("seq"in t)||3!==t.seq.length)throw new Error("error parsing PrivateKeyInfo from ".concat(JSON.stringify(t)));if(!("int"in t.seq[0])||0!==t.seq[0].int)throw new Error("expected version = 0, got ".concat(JSON.stringify(t.seq[0])));if(this.version=0,this.algId=new y(t.seq[1]),!("bytes"in t.seq[2]))throw new Error("expected octet string as 3rd element, got ".concat(JSON.stringify(t.seq[2])));this.privateKey=t.seq[2].bytes}return(0,c.default)(e,null,[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.PrivateKeyInfo=v;var g=function(){function e(t){if((0,u.default)(this,e),"seq"in t&&2===t.seq.length&&"bytes"in t.seq[1])return this.algId=new y(t.seq[0]),void(this.data=t.seq[1].bytes);throw new Error("error parsing EncryptedPrivateKeyInfo from ".concat(JSON.stringify(t)))}var t;return(0,c.default)(e,[{key:"decrypt",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("1.2.840.113549.1.5.13"===this.algId.algIdent&&this.algId.parameters){e.next=2;break}throw new Error("unsupported key encryption algorithm: ".concat(this.algId.toString()));case 2:if("1.2.840.113549.1.5.12"===(n=new b(this.algId.parameters)).kdf.algIdent&&n.kdf.parameters){e.next=5;break}throw new Error("unsupported key derivation function: ".concat(n.kdf.toString()));case 5:if((r=new m(n.kdf.parameters)).prf){e.next=10;break}throw new Error("unsupported PRF HMAC-SHA-1");case 10:if("1.2.840.113549.2.9"===r.prf.algIdent){e.next=12;break}throw new Error("unsupported PRF ".concat(r.prf.toString()));case 12:if("2.16.840.1.101.3.4.1.2"===n.encScheme.algIdent){e.next=14;break}throw new Error("unsupported encryption scheme: ".concat(n.encScheme.toString()));case 14:if(n.encScheme.parameters&&"bytes"in n.encScheme.parameters){e.next=16;break}throw new Error("expected IV as bytes for AES-128-CBC, "+"got: ".concat(JSON.stringify(n.encScheme.parameters)));case 16:return o=r.keyLength||16,i=n.encScheme.parameters.bytes,e.next=20,f.deriveKey(d.HashAlgorithm.Sha256,t,r.salt,r.iterCount,o);case 20:return u=e.sent,e.next=23,s.createDecipheriv(s.CipherAlgorithm.Aes128Cbc,u,i,this.data);case 23:return c=e.sent,e.abrupt("return",v.parse(c));case 25:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}],[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.EncryptedPrivateKeyInfo=g},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return Uint8Array.from(atob(e),(function(e){return e.charCodeAt(0)}))},t.encode=function(e){return btoa(String.fromCharCode.apply(null,Array.from(e)))}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.legacy=function(e,t){var n=new Uint8Array(e.length+8);n.set(e,0);var r=new DataView(n.buffer,n.byteOffset,n.byteLength);0xffffffffff===t?(r.setInt32(e.length+0,255),r.setInt32(e.length+4,-1)):(r.setInt32(e.length+0,t<0?-1:0),r.setInt32(e.length+4,t));var i=Uint8Array.from([255]);return o.deriveKey(a.HashAlgorithm.Sha512,n,i,2048,32)};var o=u(n(202)),a=u(n(167));function i(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(i=function(e){return e?n:t})(e)}function u(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=i(t);if(n&&n.has(e))return n.get(e);var o={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=a?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}return o.default=e,n&&n.set(e,o),o}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayEqual=function(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;var n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=new DataView(t.buffer,t.byteOffset,t.byteLength),o=e.byteLength;for(;o--;)if(n.getUint8(o)!==r.getUint8(o))return!1;return!0},t.arrayStartsWith=function(e,t){if(e.byteLength=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarAllowances=null!=r.hbarAllowances?r.hbarAllowances:[],e._tokenAllowances=null!=r.tokenAllowances?r.tokenAllowances:[],e._nftAllowances=null!=r.nftAllowances?r.nftAllowances:[],e}return(0,i.default)(n,[{key:"hbarAllowances",get:function(){return this._hbarAllowances}},{key:"addHbarAllowance",value:function(e,t){return this._requireNotFrozen(),this._hbarAllowances.push(new b.default({spenderAccountId:"string"==typeof e?f.default.fromString(e):e,amount:t instanceof y.default?t:new y.default(t),ownerAccountId:null})),this}},{key:"tokenAllowances",get:function(){return this._tokenAllowances}},{key:"addTokenAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._tokenAllowances.push(new m.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof n?h.default.fromNumber(n):n,ownerAccountId:null})),this}},{key:"addTokenNftAllowance",value:function(e,t){this._requireNotFrozen();var n,r="string"==typeof e?p.default.fromString(e):e,o="string"==typeof t?f.default.fromString(t):t,a=!1,i=k(this._nftAllowances);try{for(i.s();!(n=i.n()).done;){var u=n.value;if(0===u.tokenId.compare(r.tokenId)&&0===u.spenderAccountId.compare(o)){null!=u.serialNumbers&&u.serialNumbers.push(r.serial),a=!0;break}}}catch(e){i.e(e)}finally{i.f()}return a||this._nftAllowances.push(new v.default({tokenId:r.tokenId,spenderAccountId:o,serialNumbers:[r.serial],ownerAccountId:null})),this}},{key:"addAllTokenNftAllowance",value:function(e,t){return this._requireNotFrozen(),this._nftAllowances.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:null,ownerAccountId:null})),this}},{key:"_validateChecksums",value:function(e){this._hbarAllowances.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenAllowances.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.adjustAllowance(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAdjustAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarAllowances.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenAllowances.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftAllowances.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAdjustAllowance;return l.default._fromProtobufTransactions(new n({hbarAllowances:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),tokenAllowances:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),nftAllowances:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=I,l.TRANSACTION_REGISTRY.set("cryptoAdjustAllowance",I._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.valueToLong=function(e){return o.default.isBigNumber(e)?e:new o.default(e.toString())};var o=r(n(118))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r,a,i,u){var c;return(0,o.default)(this,n),(c=t.call(this,"Entity ID ".concat(e.toString(),".").concat(r.toString(),".").concat(a.toString(),"-").concat(i," was incorrect."))).name="BadEntityIdException",c.shard=e,c.realm=r,c.num=a,c.presentChecksum=i,c.expectedChecksum=u,c}return n}((0,r(n(46)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=t;function o(){r.util._configure(),r.Writer._configure(r.BufferWriter),r.Reader._configure(r.BufferReader)}r.build="minimal",r.Writer=n(425),r.BufferWriter=n(851),r.Reader=n(426),r.BufferReader=n(852),r.util=n(122),r.rpc=n(853),r.roots=n(855),r.configure=o,o()},function(e,t,n){"use strict";e.exports=function(e,t){var n=new Array(arguments.length-1),r=0,o=2,a=!0;for(;o1&&"="===e.charAt(t);)++n;return Math.ceil(3*e.length)/4-n};for(var o=new Array(64),a=new Array(123),i=0;i<64;)a[o[i]=i<26?i+65:i<52?i+71:i<62?i-4:i-59|43]=i++;r.encode=function(e,t,n){for(var r,a=null,i=[],u=0,c=0;t>2],r=(3&s)<<4,c=1;break;case 1:i[u++]=o[r|s>>4],r=(15&s)<<2,c=2;break;case 2:i[u++]=o[r|s>>6],i[u++]=o[63&s],c=0}u>8191&&((a||(a=[])).push(String.fromCharCode.apply(String,i)),u=0)}return c&&(i[u++]=o[r],i[u++]=61,1===c&&(i[u++]=61)),a?(u&&a.push(String.fromCharCode.apply(String,i.slice(0,u))),a.join("")):String.fromCharCode.apply(String,i.slice(0,u))};r.decode=function(e,t,n){for(var r,o=n,i=0,u=0;u1)break;if(void 0===(c=a[c]))throw Error("invalid encoding");switch(i){case 0:r=c,i=1;break;case 1:t[n++]=r<<2|(48&c)>>4,r=c,i=2;break;case 2:t[n++]=(15&r)<<4|(60&c)>>2,r=c,i=3;break;case 3:t[n++]=(3&r)<<6|c,i=0}}if(1===i)throw Error("invalid encoding");return n-o},r.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}},function(e,t,n){"use strict";function r(){this._listeners={}}e.exports=r,r.prototype.on=function(e,t,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:t,ctx:n||this}),this},r.prototype.off=function(e,t){if(void 0===e)this._listeners={};else if(void 0===t)this._listeners[e]=[];else for(var n=this._listeners[e],r=0;r0?0:2147483648,n,r);else if(isNaN(t))e(2143289344,n,r);else if(t>34028234663852886e22)e((o<<31|2139095040)>>>0,n,r);else if(t<11754943508222875e-54)e((o<<31|Math.round(t/1401298464324817e-60))>>>0,n,r);else{var a=Math.floor(Math.log(t)/Math.LN2);e((o<<31|a+127<<23|8388607&Math.round(t*Math.pow(2,-a)*8388608))>>>0,n,r)}}function n(e,t,n){var r=e(t,n),o=2*(r>>31)+1,a=r>>>23&255,i=8388607&r;return 255===a?i?NaN:o*(1/0):0===a?1401298464324817e-60*o*i:o*Math.pow(2,a-150)*(i+8388608)}e.writeFloatLE=t.bind(null,o),e.writeFloatBE=t.bind(null,a),e.readFloatLE=n.bind(null,i),e.readFloatBE=n.bind(null,u)}(),"undefined"!=typeof Float64Array?function(){var t=new Float64Array([-0]),n=new Uint8Array(t.buffer),r=128===n[7];function o(e,r,o){t[0]=e,r[o]=n[0],r[o+1]=n[1],r[o+2]=n[2],r[o+3]=n[3],r[o+4]=n[4],r[o+5]=n[5],r[o+6]=n[6],r[o+7]=n[7]}function a(e,r,o){t[0]=e,r[o]=n[7],r[o+1]=n[6],r[o+2]=n[5],r[o+3]=n[4],r[o+4]=n[3],r[o+5]=n[2],r[o+6]=n[1],r[o+7]=n[0]}function i(e,r){return n[0]=e[r],n[1]=e[r+1],n[2]=e[r+2],n[3]=e[r+3],n[4]=e[r+4],n[5]=e[r+5],n[6]=e[r+6],n[7]=e[r+7],t[0]}function u(e,r){return n[7]=e[r],n[6]=e[r+1],n[5]=e[r+2],n[4]=e[r+3],n[3]=e[r+4],n[2]=e[r+5],n[1]=e[r+6],n[0]=e[r+7],t[0]}e.writeDoubleLE=r?o:a,e.writeDoubleBE=r?a:o,e.readDoubleLE=r?i:u,e.readDoubleBE=r?u:i}():function(){function t(e,t,n,r,o,a){var i=r<0?1:0;if(i&&(r=-r),0===r)e(0,o,a+t),e(1/r>0?0:2147483648,o,a+n);else if(isNaN(r))e(0,o,a+t),e(2146959360,o,a+n);else if(r>17976931348623157e292)e(0,o,a+t),e((i<<31|2146435072)>>>0,o,a+n);else{var u;if(r<22250738585072014e-324)e((u=r/5e-324)>>>0,o,a+t),e((i<<31|u/4294967296)>>>0,o,a+n);else{var c=Math.floor(Math.log(r)/Math.LN2);1024===c&&(c=1023),e(4503599627370496*(u=r*Math.pow(2,-c))>>>0,o,a+t),e((i<<31|c+1023<<20|1048576*u&1048575)>>>0,o,a+n)}}}function n(e,t,n,r,o){var a=e(r,o+t),i=e(r,o+n),u=2*(i>>31)+1,c=i>>>20&2047,s=4294967296*(1048575&i)+a;return 2047===c?s?NaN:u*(1/0):0===c?5e-324*u*s:u*Math.pow(2,c-1075)*(s+4503599627370496)}e.writeDoubleLE=t.bind(null,o,0,4),e.writeDoubleBE=t.bind(null,a,4,0),e.readDoubleLE=n.bind(null,i,0,4),e.readDoubleBE=n.bind(null,u,4,0)}(),e}function o(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}function a(e,t,n){t[n]=e>>>24,t[n+1]=e>>>16&255,t[n+2]=e>>>8&255,t[n+3]=255&e}function i(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function u(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}e.exports=r(r)},function(module,exports,__webpack_require__){"use strict";function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}module.exports=inquire},function(e,t,n){"use strict";var r=t;r.length=function(e){for(var t=0,n=0,r=0;r191&&r<224?a[i++]=(31&r)<<6|63&e[t++]:r>239&&r<365?(r=((7&r)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,a[i++]=55296+(r>>10),a[i++]=56320+(1023&r)):a[i++]=(15&r)<<12|(63&e[t++])<<6|63&e[t++],i>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,a)),i=0);return o?(i&&o.push(String.fromCharCode.apply(String,a.slice(0,i))),o.join("")):String.fromCharCode.apply(String,a.slice(0,i))},r.write=function(e,t,n){for(var r,o,a=n,i=0;i>6|192,t[n++]=63&r|128):55296==(64512&r)&&56320==(64512&(o=e.charCodeAt(i+1)))?(r=65536+((1023&r)<<10)+(1023&o),++i,t[n++]=r>>18|240,t[n++]=r>>12&63|128,t[n++]=r>>6&63|128,t[n++]=63&r|128):(t[n++]=r>>12|224,t[n++]=r>>6&63|128,t[n++]=63&r|128);return n-a}},function(e,t,n){"use strict";e.exports=function(e,t,n){var r=n||8192,o=r>>>1,a=null,i=r;return function(n){if(n<1||n>o)return e(n);i+n>r&&(a=e(r),i=0);var u=t.call(a,i,i+=n);return 7&i&&(i=1+(7|i)),u}}},function(e,t,n){"use strict";e.exports=o;var r=n(122);function o(e,t){this.lo=e>>>0,this.hi=t>>>0}var a=o.zero=new o(0,0);a.toNumber=function(){return 0},a.zzEncode=a.zzDecode=function(){return this},a.length=function(){return 1};var i=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(e){if(0===e)return a;var t=e<0;t&&(e=-e);var n=e>>>0,r=(e-n)/4294967296>>>0;return t&&(r=~r>>>0,n=~n>>>0,++n>4294967295&&(n=0,++r>4294967295&&(r=0))),new o(n,r)},o.from=function(e){if("number"==typeof e)return o.fromNumber(e);if(r.isString(e)){if(!r.Long)return o.fromNumber(parseInt(e,10));e=r.Long.fromString(e)}return e.low||e.high?new o(e.low>>>0,e.high>>>0):a},o.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var t=1+~this.lo>>>0,n=~this.hi>>>0;return t||(n=n+1>>>0),-(t+4294967296*n)}return this.lo+4294967296*this.hi},o.prototype.toLong=function(e){return r.Long?new r.Long(0|this.lo,0|this.hi,Boolean(e)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(e)}};var u=String.prototype.charCodeAt;o.fromHash=function(e){return e===i?a:new o((u.call(e,0)|u.call(e,1)<<8|u.call(e,2)<<16|u.call(e,3)<<24)>>>0,(u.call(e,4)|u.call(e,5)<<8|u.call(e,6)<<16|u.call(e,7)<<24)>>>0)},o.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},o.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this},o.prototype.zzDecode=function(){var e=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this},o.prototype.length=function(){var e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===t?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}},function(e,t,n){"use strict";e.exports=a;var r=n(425);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(122);function a(){r.call(this)}function i(e,t,n){e.length<40?o.utf8.write(e,t,n):t.utf8Write?t.utf8Write(e,n):t.write(e,n)}a._configure=function(){a.alloc=o._Buffer_allocUnsafe,a.writeBytesBuffer=o.Buffer&&o.Buffer.prototype instanceof Uint8Array&&"set"===o.Buffer.prototype.set.name?function(e,t,n){t.set(e,n)}:function(e,t,n){if(e.copy)e.copy(t,n,0,e.length);else for(var r=0;r>>0;return this.uint32(t),t&&this._push(a.writeBytesBuffer,t,e),this},a.prototype.string=function(e){var t=o.Buffer.byteLength(e);return this.uint32(t),t&&this._push(i,t,e),this},a._configure()},function(e,t,n){"use strict";e.exports=a;var r=n(426);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(122);function a(e){r.call(this,e)}a._configure=function(){o.Buffer&&(a.prototype._slice=o.Buffer.prototype.slice)},a.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))},a._configure()},function(e,t,n){"use strict";t.Service=n(854)},function(e,t,n){"use strict";e.exports=o;var r=n(122);function o(e,t,n){if("function"!=typeof e)throw TypeError("rpcImpl must be a function");r.EventEmitter.call(this),this.rpcImpl=e,this.requestDelimited=Boolean(t),this.responseDelimited=Boolean(n)}(o.prototype=Object.create(r.EventEmitter.prototype)).constructor=o,o.prototype.rpcCall=function e(t,n,o,a,i){if(!a)throw TypeError("request must be specified");var u=this;if(!i)return r.asPromise(e,u,t,n,o,a);if(u.rpcImpl)try{return u.rpcImpl(t,n[u.requestDelimited?"encodeDelimited":"encode"](a).finish(),(function(e,n){if(e)return u.emit("error",e,t),i(e);if(null!==n){if(!(n instanceof o))try{n=o[u.responseDelimited?"decodeDelimited":"decode"](n)}catch(e){return u.emit("error",e,t),i(e)}return u.emit("data",n,t),i(null,n)}u.end(!0)}))}catch(e){return u.emit("error",e,t),void setTimeout((function(){i(e)}),0)}else setTimeout((function(){i(Error("already ended"))}),0)},o.prototype.end=function(e){return this.rpcImpl&&(e||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.proto=t.google=t.default=void 0;var o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=i?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}o.default=e,n&&n.set(e,o);return o}(n(424));function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}var i=o.Reader,u=o.Writer,c=o.util,s=o.roots.hashgraph||(o.roots.hashgraph={});t.default=s;var l=s.proto=function(){var e,t,n={};return n.TokenUnitBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.SingleAccountBalances=function(){function e(e){if(this.tokenUnitBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hbarBalance=e.uint64();break;case 3:r.tokenUnitBalances&&r.tokenUnitBalances.length||(r.tokenUnitBalances=[]),r.tokenUnitBalances.push(s.proto.TokenUnitBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.AllAccountBalances=function(){function e(e){if(this.allAccounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.allAccounts&&r.allAccounts.length||(r.allAccounts=[]),r.allAccounts.push(s.proto.SingleAccountBalances.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ShardID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.RealmID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AccountID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.accountNum=e.int64();break;case 4:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.fileNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.contractNum=e.int64();break;case 4:r.evmAddress=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionValidStart=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.scheduled=e.bool();break;case 4:r.nonce=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.AccountAmount=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.sint64();break;case 3:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransferList=function(){function e(e){if(this.accountAmounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountAmounts&&r.accountAmounts.length||(r.accountAmounts=[]),r.accountAmounts.push(s.proto.AccountAmount.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftTransfer=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.senderAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.receiverAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.serialNumber=e.int64();break;case 4:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenTransferList=function(){function e(e){if(this.transfers=[],this.nftTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.transfers&&r.transfers.length||(r.transfers=[]),r.transfers.push(s.proto.AccountAmount.decode(e,e.uint32()));break;case 3:r.nftTransfers&&r.nftTransfers.length||(r.nftTransfers=[]),r.nftTransfers.push(s.proto.NftTransfer.decode(e,e.uint32()));break;case 4:r.expectedDecimals=s.google.protobuf.UInt32Value.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Fraction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.numerator=e.int64();break;case 2:r.denominator=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TopicID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.topicNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.tokenNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.scheduleNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenType=(e={},(t=Object.create(e))[e[0]="FUNGIBLE_COMMON"]=0,t[e[1]="NON_FUNGIBLE_UNIQUE"]=1,t),n.SubType=function(){var e={},t=Object.create(e);return t[e[0]="DEFAULT"]=0,t[e[1]="TOKEN_FUNGIBLE_COMMON"]=1,t[e[2]="TOKEN_NON_FUNGIBLE_UNIQUE"]=2,t[e[3]="TOKEN_FUNGIBLE_COMMON_WITH_CUSTOM_FEES"]=3,t[e[4]="TOKEN_NON_FUNGIBLE_UNIQUE_WITH_CUSTOM_FEES"]=4,t}(),n.TokenSupplyType=function(){var e={},t=Object.create(e);return t[e[0]="INFINITE"]=0,t[e[1]="FINITE"]=1,t}(),n.TokenFreezeStatus=function(){var e={},t=Object.create(e);return t[e[0]="FreezeNotApplicable"]=0,t[e[1]="Frozen"]=1,t[e[2]="Unfrozen"]=2,t}(),n.TokenKycStatus=function(){var e={},t=Object.create(e);return t[e[0]="KycNotApplicable"]=0,t[e[1]="Granted"]=1,t[e[2]="Revoked"]=2,t}(),n.TokenPauseStatus=function(){var e={},t=Object.create(e);return t[e[0]="PauseNotApplicable"]=0,t[e[1]="Paused"]=1,t[e[2]="Unpaused"]=2,t}(),n.Key=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdKey=s.proto.ThresholdKey.decode(e,e.uint32());break;case 6:r.keyList=s.proto.KeyList.decode(e,e.uint32());break;case 7:r.ECDSASecp256k1=e.bytes();break;case 8:r.delegatableContractId=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdKey=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.threshold=e.uint32();break;case 2:r.keys=s.proto.KeyList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.KeyList=function(){function e(e){if(this.keys=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.keys&&r.keys.length||(r.keys=[]),r.keys.push(s.proto.Key.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Signature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contract=e.bytes();break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdSignature=s.proto.ThresholdSignature.decode(e,e.uint32());break;case 6:r.signatureList=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdSignature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SignatureList=function(){function e(e){if(this.sigs=[],e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs&&r.sigs.length||(r.sigs=[]),r.sigs.push(s.proto.Signature.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SignaturePair=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.pubKeyPrefix=e.bytes();break;case 2:r.contract=e.bytes();break;case 3:r.ed25519=e.bytes();break;case 4:r.RSA_3072=e.bytes();break;case 5:r.ECDSA_384=e.bytes();break;case 6:r.ECDSASecp256k1=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.SignatureMap=function(){function e(e){if(this.sigPair=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.sigPair&&r.sigPair.length||(r.sigPair=[]),r.sigPair.push(s.proto.SignaturePair.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.HederaFunctionality=function(){var e={},t=Object.create(e);return t[e[0]="NONE"]=0,t[e[1]="CryptoTransfer"]=1,t[e[2]="CryptoUpdate"]=2,t[e[3]="CryptoDelete"]=3,t[e[4]="CryptoAddLiveHash"]=4,t[e[5]="CryptoDeleteLiveHash"]=5,t[e[6]="ContractCall"]=6,t[e[7]="ContractCreate"]=7,t[e[8]="ContractUpdate"]=8,t[e[9]="FileCreate"]=9,t[e[10]="FileAppend"]=10,t[e[11]="FileUpdate"]=11,t[e[12]="FileDelete"]=12,t[e[13]="CryptoGetAccountBalance"]=13,t[e[14]="CryptoGetAccountRecords"]=14,t[e[15]="CryptoGetInfo"]=15,t[e[16]="ContractCallLocal"]=16,t[e[17]="ContractGetInfo"]=17,t[e[18]="ContractGetBytecode"]=18,t[e[19]="GetBySolidityID"]=19,t[e[20]="GetByKey"]=20,t[e[21]="CryptoGetLiveHash"]=21,t[e[22]="CryptoGetStakers"]=22,t[e[23]="FileGetContents"]=23,t[e[24]="FileGetInfo"]=24,t[e[25]="TransactionGetRecord"]=25,t[e[26]="ContractGetRecords"]=26,t[e[27]="CryptoCreate"]=27,t[e[28]="SystemDelete"]=28,t[e[29]="SystemUndelete"]=29,t[e[30]="ContractDelete"]=30,t[e[31]="Freeze"]=31,t[e[32]="CreateTransactionRecord"]=32,t[e[33]="CryptoAccountAutoRenew"]=33,t[e[34]="ContractAutoRenew"]=34,t[e[35]="GetVersionInfo"]=35,t[e[36]="TransactionGetReceipt"]=36,t[e[50]="ConsensusCreateTopic"]=50,t[e[51]="ConsensusUpdateTopic"]=51,t[e[52]="ConsensusDeleteTopic"]=52,t[e[53]="ConsensusGetTopicInfo"]=53,t[e[54]="ConsensusSubmitMessage"]=54,t[e[55]="UncheckedSubmit"]=55,t[e[56]="TokenCreate"]=56,t[e[58]="TokenGetInfo"]=58,t[e[59]="TokenFreezeAccount"]=59,t[e[60]="TokenUnfreezeAccount"]=60,t[e[61]="TokenGrantKycToAccount"]=61,t[e[62]="TokenRevokeKycFromAccount"]=62,t[e[63]="TokenDelete"]=63,t[e[64]="TokenUpdate"]=64,t[e[65]="TokenMint"]=65,t[e[66]="TokenBurn"]=66,t[e[67]="TokenAccountWipe"]=67,t[e[68]="TokenAssociateToAccount"]=68,t[e[69]="TokenDissociateFromAccount"]=69,t[e[70]="ScheduleCreate"]=70,t[e[71]="ScheduleDelete"]=71,t[e[72]="ScheduleSign"]=72,t[e[73]="ScheduleGetInfo"]=73,t[e[74]="TokenGetAccountNftInfos"]=74,t[e[75]="TokenGetNftInfo"]=75,t[e[76]="TokenGetNftInfos"]=76,t[e[77]="TokenFeeScheduleUpdate"]=77,t[e[78]="NetworkGetExecutionTime"]=78,t[e[79]="TokenPause"]=79,t[e[80]="TokenUnpause"]=80,t[e[81]="CryptoApproveAllowance"]=81,t[e[82]="CryptoAdjustAllowance"]=82,t}(),n.FeeComponents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.min=e.int64();break;case 2:r.max=e.int64();break;case 3:r.constant=e.int64();break;case 4:r.bpt=e.int64();break;case 5:r.vpt=e.int64();break;case 6:r.rbh=e.int64();break;case 7:r.sbh=e.int64();break;case 8:r.gas=e.int64();break;case 9:r.tv=e.int64();break;case 10:r.bpr=e.int64();break;case 11:r.sbpr=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionFeeSchedule=function(){function e(e){if(this.fees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.hederaFunctionality=e.int32();break;case 2:r.feeData=s.proto.FeeData.decode(e,e.uint32());break;case 3:r.fees&&r.fees.length||(r.fees=[]),r.fees.push(s.proto.FeeData.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FeeData=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 2:r.networkdata=s.proto.FeeComponents.decode(e,e.uint32());break;case 3:r.servicedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 4:r.subType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FeeSchedule=function(){function e(e){if(this.transactionFeeSchedule=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFeeSchedule&&r.transactionFeeSchedule.length||(r.transactionFeeSchedule=[]),r.transactionFeeSchedule.push(s.proto.TransactionFeeSchedule.decode(e,e.uint32()));break;case 2:r.expiryTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CurrentAndNextFeeSchedule=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;case 2:r.nextFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ServiceEndpoint=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddressV4=e.bytes();break;case 2:r.port=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddress=function(){function e(e){if(this.serviceEndpoint=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddress=e.bytes();break;case 2:r.portno=e.int32();break;case 3:r.memo=e.bytes();break;case 4:r.RSA_PubKey=e.string();break;case 5:r.nodeId=e.int64();break;case 6:r.nodeAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.nodeCertHash=e.bytes();break;case 8:r.serviceEndpoint&&r.serviceEndpoint.length||(r.serviceEndpoint=[]),r.serviceEndpoint.push(s.proto.ServiceEndpoint.decode(e,e.uint32()));break;case 9:r.description=e.string();break;case 10:r.stake=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddressBook=function(){function e(e){if(this.nodeAddress=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeAddress&&r.nodeAddress.length||(r.nodeAddress=[]),r.nodeAddress.push(s.proto.NodeAddress.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SemanticVersion=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.major=e.int32();break;case 2:r.minor=e.int32();break;case 3:r.patch=e.int32();break;case 4:r.pre=e.string();break;case 5:r.build=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.Setting=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.value=e.string();break;case 3:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ServicesConfigurationList=function(){function e(e){if(this.nameValue=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nameValue&&r.nameValue.length||(r.nameValue=[]),r.nameValue.push(s.proto.Setting.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenRelationship=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.balance=e.uint64();break;case 4:r.kycStatus=e.int32();break;case 5:r.freezeStatus=e.int32();break;case 6:r.decimals=e.uint32();break;case 7:r.automaticAssociation=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;case 3:r.decimals=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalances=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenAssociation=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAllowance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NftAllowance=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.Timestamp=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;case 2:r.nanos=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.TimestampSeconds=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusCreateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 3:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Duration=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusDeleteTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 5:r.topicInfo=s.proto.ConsensusTopicInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseType=function(){var e={},t=Object.create(e);return t[e[0]="ANSWER_ONLY"]=0,t[e[1]="ANSWER_STATE_PROOF"]=1,t[e[2]="COST_ANSWER"]=2,t[e[3]="COST_ANSWER_STATE_PROOF"]=3,t}(),n.QueryHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.payment=s.proto.Transaction.decode(e,e.uint32());break;case 2:r.responseType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.Transaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.body=s.proto.TransactionBody.decode(e,e.uint32());break;case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;case 3:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;case 4:r.bodyBytes=e.bytes();break;case 5:r.signedTransactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.nodeAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transactionFee=e.uint64();break;case 4:r.transactionValidDuration=s.proto.Duration.decode(e,e.uint32());break;case 5:r.generateRecord=e.bool();break;case 6:r.memo=e.string();break;case 7:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 8:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 9:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 22:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoAddLiveHash=s.proto.CryptoAddLiveHashTransactionBody.decode(e,e.uint32());break;case 48:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 49:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 11:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 12:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 13:r.cryptoDeleteLiveHash=s.proto.CryptoDeleteLiveHashTransactionBody.decode(e,e.uint32());break;case 14:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 15:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 16:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 17:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 18:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 19:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 20:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 21:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 23:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 24:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 25:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 26:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 27:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 28:r.uncheckedSubmit=s.proto.UncheckedSubmitBody.decode(e,e.uint32());break;case 29:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 31:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 33:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 34:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 35:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 37:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 38:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 39:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 40:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 41:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 45:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 46:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 47:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 42:r.scheduleCreate=s.proto.ScheduleCreateTransactionBody.decode(e,e.uint32());break;case 43:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;case 44:r.scheduleSign=s.proto.ScheduleSignTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemUndeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FreezeTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.startHour=e.int32();break;case 2:r.startMin=e.int32();break;case 3:r.endHour=e.int32();break;case 4:r.endMin=e.int32();break;case 5:r.updateFile=s.proto.FileID.decode(e,e.uint32());break;case 6:r.fileHash=e.bytes();break;case 7:r.startTime=s.proto.Timestamp.decode(e,e.uint32());break;case 8:r.freezeType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FreezeType=function(){var e={},t=Object.create(e);return t[e[0]="UNKNOWN_FREEZE_TYPE"]=0,t[e[1]="FREEZE_ONLY"]=1,t[e[2]="PREPARE_UPGRADE"]=2,t[e[3]="FREEZE_UPGRADE"]=3,t[e[4]="FREEZE_ABORT"]=4,t[e[5]="TELEMETRY_UPGRADE"]=5,t}(),n.ContractCallTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.gas=e.int64();break;case 3:r.amount=e.int64();break;case 4:r.functionParameters=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.gas=e.int64();break;case 5:r.initialBalance=e.int64();break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.constructorParameters=e.bytes();break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.ContractUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 9:r.memo=e.string();break;case 10:r.memoWrapper=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.LiveHash=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hash=e.bytes();break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 5:r.duration=s.proto.Duration.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAddLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 3:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.key=s.proto.Key.decode(e,e.uint32());break;case 2:r.initialBalance=e.uint64();break;case 3:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.sendRecordThreshold=e.uint64();break;case 7:r.receiveRecordThreshold=e.uint64();break;case 8:r.receiverSigRequired=e.bool();break;case 9:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;case 14:r.maxAutomaticTokenAssociations=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.deleteAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountOfLiveHash=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHashToDelete=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoTransferTransactionBody=function(){function e(e){if(this.tokenTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transfers=s.proto.TransferList.decode(e,e.uint32());break;case 2:r.tokenTransfers&&r.tokenTransfers.length||(r.tokenTransfers=[]),r.tokenTransfers.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.accountIDToUpdate=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.key=s.proto.Key.decode(e,e.uint32());break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.proxyFraction=e.int32();break;case 6:r.sendRecordThreshold=e.uint64();break;case 11:r.sendRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 7:r.receiveRecordThreshold=e.uint64();break;case 12:r.receiveRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 10:r.receiverSigRequired=e.bool();break;case 13:r.receiverSigRequiredWrapper=s.google.protobuf.BoolValue.decode(e,e.uint32());break;case 14:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 15:r.maxAutomaticTokenAssociations=s.google.protobuf.Int32Value.decode(e,e.uint32());break;case 16:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoApproveAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAdjustAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FileAppendTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 6:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 7:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.FileDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transferContractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusUpdateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusMessageChunkInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.initialTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.total=e.int32();break;case 3:r.number=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusSubmitMessageTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.UncheckedSubmitBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenCreateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.symbol=e.string();break;case 3:r.decimals=e.uint32();break;case 4:r.initialSupply=e.uint64();break;case 5:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.freezeDefault=e.bool();break;case 13:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 14:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 15:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 16:r.memo=e.string();break;case 17:r.tokenType=e.int32();break;case 18:r.supplyType=e.int32();break;case 19:r.maxSupply=e.int64();break;case 20:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 21:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 22:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FractionalFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fractionalAmount=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.minimumAmount=e.int64();break;case 3:r.maximumAmount=e.int64();break;case 4:r.netOfTransfers=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.FixedFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.denominatingTokenId=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.RoyaltyFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.exchangeValueFraction=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.fallbackFee=s.proto.FixedFee.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CustomFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fixedFee=s.proto.FixedFee.decode(e,e.uint32());break;case 2:r.fractionalFee=s.proto.FractionalFee.decode(e,e.uint32());break;case 4:r.royaltyFee=s.proto.RoyaltyFee.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.AssessedCustomFee=function(){function e(e){if(this.effectivePayerAccountId=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.effectivePayerAccountId&&r.effectivePayerAccountId.length||(r.effectivePayerAccountId=[]),r.effectivePayerAccountId.push(s.proto.AccountID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnfreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGrantKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenRevokeKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.name=e.string();break;case 4:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 12:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 14:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 15:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenMintTransactionBody=function(){function e(e){if(this.metadata=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:r.metadata&&r.metadata.length||(r.metadata=[]),r.metadata.push(e.bytes());break;default:e.skipType(7&o)}}return r},e}(),n.TokenBurnTransactionBody=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.uint64();break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenDissociateTransactionBody=function(){function e(e){if(this.tokens=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFeeScheduleUpdateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenPauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnpauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 2:r.memo=e.string();break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SchedulableTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFee=e.uint64();break;case 2:r.memo=e.string();break;case 3:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 4:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 5:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 6:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 37:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 38:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 7:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 8:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 9:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 11:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 12:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 13:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 14:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 15:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 16:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 17:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 18:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 19:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 20:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 21:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 22:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 23:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 24:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 25:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 26:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 27:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 28:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 29:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 30:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 31:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 33:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 39:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 35:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 34:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleSignTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.responseType=e.int32();break;case 3:r.cost=e.uint64();break;case 4:r.stateProof=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.cost=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ResponseCodeEnum=function(){var e={},t=Object.create(e);return t[e[0]="OK"]=0,t[e[1]="INVALID_TRANSACTION"]=1,t[e[2]="PAYER_ACCOUNT_NOT_FOUND"]=2,t[e[3]="INVALID_NODE_ACCOUNT"]=3,t[e[4]="TRANSACTION_EXPIRED"]=4,t[e[5]="INVALID_TRANSACTION_START"]=5,t[e[6]="INVALID_TRANSACTION_DURATION"]=6,t[e[7]="INVALID_SIGNATURE"]=7,t[e[8]="MEMO_TOO_LONG"]=8,t[e[9]="INSUFFICIENT_TX_FEE"]=9,t[e[10]="INSUFFICIENT_PAYER_BALANCE"]=10,t[e[11]="DUPLICATE_TRANSACTION"]=11,t[e[12]="BUSY"]=12,t[e[13]="NOT_SUPPORTED"]=13,t[e[14]="INVALID_FILE_ID"]=14,t[e[15]="INVALID_ACCOUNT_ID"]=15,t[e[16]="INVALID_CONTRACT_ID"]=16,t[e[17]="INVALID_TRANSACTION_ID"]=17,t[e[18]="RECEIPT_NOT_FOUND"]=18,t[e[19]="RECORD_NOT_FOUND"]=19,t[e[20]="INVALID_SOLIDITY_ID"]=20,t[e[21]="UNKNOWN"]=21,t[e[22]="SUCCESS"]=22,t[e[23]="FAIL_INVALID"]=23,t[e[24]="FAIL_FEE"]=24,t[e[25]="FAIL_BALANCE"]=25,t[e[26]="KEY_REQUIRED"]=26,t[e[27]="BAD_ENCODING"]=27,t[e[28]="INSUFFICIENT_ACCOUNT_BALANCE"]=28,t[e[29]="INVALID_SOLIDITY_ADDRESS"]=29,t[e[30]="INSUFFICIENT_GAS"]=30,t[e[31]="CONTRACT_SIZE_LIMIT_EXCEEDED"]=31,t[e[32]="LOCAL_CALL_MODIFICATION_EXCEPTION"]=32,t[e[33]="CONTRACT_REVERT_EXECUTED"]=33,t[e[34]="CONTRACT_EXECUTION_EXCEPTION"]=34,t[e[35]="INVALID_RECEIVING_NODE_ACCOUNT"]=35,t[e[36]="MISSING_QUERY_HEADER"]=36,t[e[37]="ACCOUNT_UPDATE_FAILED"]=37,t[e[38]="INVALID_KEY_ENCODING"]=38,t[e[39]="NULL_SOLIDITY_ADDRESS"]=39,t[e[40]="CONTRACT_UPDATE_FAILED"]=40,t[e[41]="INVALID_QUERY_HEADER"]=41,t[e[42]="INVALID_FEE_SUBMITTED"]=42,t[e[43]="INVALID_PAYER_SIGNATURE"]=43,t[e[44]="KEY_NOT_PROVIDED"]=44,t[e[45]="INVALID_EXPIRATION_TIME"]=45,t[e[46]="NO_WACL_KEY"]=46,t[e[47]="FILE_CONTENT_EMPTY"]=47,t[e[48]="INVALID_ACCOUNT_AMOUNTS"]=48,t[e[49]="EMPTY_TRANSACTION_BODY"]=49,t[e[50]="INVALID_TRANSACTION_BODY"]=50,t[e[51]="INVALID_SIGNATURE_TYPE_MISMATCHING_KEY"]=51,t[e[52]="INVALID_SIGNATURE_COUNT_MISMATCHING_KEY"]=52,t[e[53]="EMPTY_LIVE_HASH_BODY"]=53,t[e[54]="EMPTY_LIVE_HASH"]=54,t[e[55]="EMPTY_LIVE_HASH_KEYS"]=55,t[e[56]="INVALID_LIVE_HASH_SIZE"]=56,t[e[57]="EMPTY_QUERY_BODY"]=57,t[e[58]="EMPTY_LIVE_HASH_QUERY"]=58,t[e[59]="LIVE_HASH_NOT_FOUND"]=59,t[e[60]="ACCOUNT_ID_DOES_NOT_EXIST"]=60,t[e[61]="LIVE_HASH_ALREADY_EXISTS"]=61,t[e[62]="INVALID_FILE_WACL"]=62,t[e[63]="SERIALIZATION_FAILED"]=63,t[e[64]="TRANSACTION_OVERSIZE"]=64,t[e[65]="TRANSACTION_TOO_MANY_LAYERS"]=65,t[e[66]="CONTRACT_DELETED"]=66,t[e[67]="PLATFORM_NOT_ACTIVE"]=67,t[e[68]="KEY_PREFIX_MISMATCH"]=68,t[e[69]="PLATFORM_TRANSACTION_NOT_CREATED"]=69,t[e[70]="INVALID_RENEWAL_PERIOD"]=70,t[e[71]="INVALID_PAYER_ACCOUNT_ID"]=71,t[e[72]="ACCOUNT_DELETED"]=72,t[e[73]="FILE_DELETED"]=73,t[e[74]="ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS"]=74,t[e[75]="SETTING_NEGATIVE_ACCOUNT_BALANCE"]=75,t[e[76]="OBTAINER_REQUIRED"]=76,t[e[77]="OBTAINER_SAME_CONTRACT_ID"]=77,t[e[78]="OBTAINER_DOES_NOT_EXIST"]=78,t[e[79]="MODIFYING_IMMUTABLE_CONTRACT"]=79,t[e[80]="FILE_SYSTEM_EXCEPTION"]=80,t[e[81]="AUTORENEW_DURATION_NOT_IN_RANGE"]=81,t[e[82]="ERROR_DECODING_BYTESTRING"]=82,t[e[83]="CONTRACT_FILE_EMPTY"]=83,t[e[84]="CONTRACT_BYTECODE_EMPTY"]=84,t[e[85]="INVALID_INITIAL_BALANCE"]=85,t[e[86]="INVALID_RECEIVE_RECORD_THRESHOLD"]=86,t[e[87]="INVALID_SEND_RECORD_THRESHOLD"]=87,t[e[88]="ACCOUNT_IS_NOT_GENESIS_ACCOUNT"]=88,t[e[89]="PAYER_ACCOUNT_UNAUTHORIZED"]=89,t[e[90]="INVALID_FREEZE_TRANSACTION_BODY"]=90,t[e[91]="FREEZE_TRANSACTION_BODY_NOT_FOUND"]=91,t[e[92]="TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=92,t[e[93]="RESULT_SIZE_LIMIT_EXCEEDED"]=93,t[e[94]="NOT_SPECIAL_ACCOUNT"]=94,t[e[95]="CONTRACT_NEGATIVE_GAS"]=95,t[e[96]="CONTRACT_NEGATIVE_VALUE"]=96,t[e[97]="INVALID_FEE_FILE"]=97,t[e[98]="INVALID_EXCHANGE_RATE_FILE"]=98,t[e[99]="INSUFFICIENT_LOCAL_CALL_GAS"]=99,t[e[100]="ENTITY_NOT_ALLOWED_TO_DELETE"]=100,t[e[101]="AUTHORIZATION_FAILED"]=101,t[e[102]="FILE_UPLOADED_PROTO_INVALID"]=102,t[e[103]="FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK"]=103,t[e[104]="FEE_SCHEDULE_FILE_PART_UPLOADED"]=104,t[e[105]="EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED"]=105,t[e[106]="MAX_CONTRACT_STORAGE_EXCEEDED"]=106,t[e[107]="TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT"]=107,t[e[108]="TOTAL_LEDGER_BALANCE_INVALID"]=108,t[e[110]="EXPIRATION_REDUCTION_NOT_ALLOWED"]=110,t[e[111]="MAX_GAS_LIMIT_EXCEEDED"]=111,t[e[112]="MAX_FILE_SIZE_EXCEEDED"]=112,t[e[113]="RECEIVER_SIG_REQUIRED"]=113,t[e[150]="INVALID_TOPIC_ID"]=150,t[e[155]="INVALID_ADMIN_KEY"]=155,t[e[156]="INVALID_SUBMIT_KEY"]=156,t[e[157]="UNAUTHORIZED"]=157,t[e[158]="INVALID_TOPIC_MESSAGE"]=158,t[e[159]="INVALID_AUTORENEW_ACCOUNT"]=159,t[e[160]="AUTORENEW_ACCOUNT_NOT_ALLOWED"]=160,t[e[162]="TOPIC_EXPIRED"]=162,t[e[163]="INVALID_CHUNK_NUMBER"]=163,t[e[164]="INVALID_CHUNK_TRANSACTION_ID"]=164,t[e[165]="ACCOUNT_FROZEN_FOR_TOKEN"]=165,t[e[166]="TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED"]=166,t[e[167]="INVALID_TOKEN_ID"]=167,t[e[168]="INVALID_TOKEN_DECIMALS"]=168,t[e[169]="INVALID_TOKEN_INITIAL_SUPPLY"]=169,t[e[170]="INVALID_TREASURY_ACCOUNT_FOR_TOKEN"]=170,t[e[171]="INVALID_TOKEN_SYMBOL"]=171,t[e[172]="TOKEN_HAS_NO_FREEZE_KEY"]=172,t[e[173]="TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN"]=173,t[e[174]="MISSING_TOKEN_SYMBOL"]=174,t[e[175]="TOKEN_SYMBOL_TOO_LONG"]=175,t[e[176]="ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN"]=176,t[e[177]="TOKEN_HAS_NO_KYC_KEY"]=177,t[e[178]="INSUFFICIENT_TOKEN_BALANCE"]=178,t[e[179]="TOKEN_WAS_DELETED"]=179,t[e[180]="TOKEN_HAS_NO_SUPPLY_KEY"]=180,t[e[181]="TOKEN_HAS_NO_WIPE_KEY"]=181,t[e[182]="INVALID_TOKEN_MINT_AMOUNT"]=182,t[e[183]="INVALID_TOKEN_BURN_AMOUNT"]=183,t[e[184]="TOKEN_NOT_ASSOCIATED_TO_ACCOUNT"]=184,t[e[185]="CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT"]=185,t[e[186]="INVALID_KYC_KEY"]=186,t[e[187]="INVALID_WIPE_KEY"]=187,t[e[188]="INVALID_FREEZE_KEY"]=188,t[e[189]="INVALID_SUPPLY_KEY"]=189,t[e[190]="MISSING_TOKEN_NAME"]=190,t[e[191]="TOKEN_NAME_TOO_LONG"]=191,t[e[192]="INVALID_WIPING_AMOUNT"]=192,t[e[193]="TOKEN_IS_IMMUTABLE"]=193,t[e[194]="TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT"]=194,t[e[195]="TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES"]=195,t[e[196]="ACCOUNT_IS_TREASURY"]=196,t[e[197]="TOKEN_ID_REPEATED_IN_TOKEN_LIST"]=197,t[e[198]="TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=198,t[e[199]="EMPTY_TOKEN_TRANSFER_BODY"]=199,t[e[200]="EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS"]=200,t[e[201]="INVALID_SCHEDULE_ID"]=201,t[e[202]="SCHEDULE_IS_IMMUTABLE"]=202,t[e[203]="INVALID_SCHEDULE_PAYER_ID"]=203,t[e[204]="INVALID_SCHEDULE_ACCOUNT_ID"]=204,t[e[205]="NO_NEW_VALID_SIGNATURES"]=205,t[e[206]="UNRESOLVABLE_REQUIRED_SIGNERS"]=206,t[e[207]="SCHEDULED_TRANSACTION_NOT_IN_WHITELIST"]=207,t[e[208]="SOME_SIGNATURES_WERE_INVALID"]=208,t[e[209]="TRANSACTION_ID_FIELD_NOT_ALLOWED"]=209,t[e[210]="IDENTICAL_SCHEDULE_ALREADY_CREATED"]=210,t[e[211]="INVALID_ZERO_BYTE_IN_STRING"]=211,t[e[212]="SCHEDULE_ALREADY_DELETED"]=212,t[e[213]="SCHEDULE_ALREADY_EXECUTED"]=213,t[e[214]="MESSAGE_SIZE_TOO_LARGE"]=214,t[e[215]="OPERATION_REPEATED_IN_BUCKET_GROUPS"]=215,t[e[216]="BUCKET_CAPACITY_OVERFLOW"]=216,t[e[217]="NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION"]=217,t[e[218]="BUCKET_HAS_NO_THROTTLE_GROUPS"]=218,t[e[219]="THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC"]=219,t[e[220]="SUCCESS_BUT_MISSING_EXPECTED_OPERATION"]=220,t[e[221]="UNPARSEABLE_THROTTLE_DEFINITIONS"]=221,t[e[222]="INVALID_THROTTLE_DEFINITIONS"]=222,t[e[223]="ACCOUNT_EXPIRED_AND_PENDING_REMOVAL"]=223,t[e[224]="INVALID_TOKEN_MAX_SUPPLY"]=224,t[e[225]="INVALID_TOKEN_NFT_SERIAL_NUMBER"]=225,t[e[226]="INVALID_NFT_ID"]=226,t[e[227]="METADATA_TOO_LONG"]=227,t[e[228]="BATCH_SIZE_LIMIT_EXCEEDED"]=228,t[e[229]="INVALID_QUERY_RANGE"]=229,t[e[230]="FRACTION_DIVIDES_BY_ZERO"]=230,t[e[231]="INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE"]=231,t[e[232]="CUSTOM_FEES_LIST_TOO_LONG"]=232,t[e[233]="INVALID_CUSTOM_FEE_COLLECTOR"]=233,t[e[234]="INVALID_TOKEN_ID_IN_CUSTOM_FEES"]=234,t[e[235]="TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR"]=235,t[e[236]="TOKEN_MAX_SUPPLY_REACHED"]=236,t[e[237]="SENDER_DOES_NOT_OWN_NFT_SERIAL_NO"]=237,t[e[238]="CUSTOM_FEE_NOT_FULLY_SPECIFIED"]=238,t[e[239]="CUSTOM_FEE_MUST_BE_POSITIVE"]=239,t[e[240]="TOKEN_HAS_NO_FEE_SCHEDULE_KEY"]=240,t[e[241]="CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE"]=241,t[e[242]="ROYALTY_FRACTION_CANNOT_EXCEED_ONE"]=242,t[e[243]="FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT"]=243,t[e[244]="CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES"]=244,t[e[245]="CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON"]=245,t[e[246]="CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=246,t[e[247]="INVALID_CUSTOM_FEE_SCHEDULE_KEY"]=247,t[e[248]="INVALID_TOKEN_MINT_METADATA"]=248,t[e[249]="INVALID_TOKEN_BURN_METADATA"]=249,t[e[250]="CURRENT_TREASURY_STILL_OWNS_NFTS"]=250,t[e[251]="ACCOUNT_STILL_OWNS_NFTS"]=251,t[e[252]="TREASURY_MUST_OWN_BURNED_NFT"]=252,t[e[253]="ACCOUNT_DOES_NOT_OWN_WIPED_NFT"]=253,t[e[254]="ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=254,t[e[255]="MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED"]=255,t[e[256]="PAYER_ACCOUNT_DELETED"]=256,t[e[257]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH"]=257,t[e[258]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS"]=258,t[e[259]="INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE"]=259,t[e[260]="SERIAL_NUMBER_LIMIT_REACHED"]=260,t[e[261]="CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE"]=261,t[e[262]="NO_REMAINING_AUTOMATIC_ASSOCIATIONS"]=262,t[e[263]="EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT"]=263,t[e[264]="REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT"]=264,t[e[265]="TOKEN_IS_PAUSED"]=265,t[e[266]="TOKEN_HAS_NO_PAUSE_KEY"]=266,t[e[267]="INVALID_PAUSE_KEY"]=267,t[e[268]="FREEZE_UPDATE_FILE_DOES_NOT_EXIST"]=268,t[e[269]="FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH"]=269,t[e[270]="NO_UPGRADE_HAS_BEEN_PREPARED"]=270,t[e[271]="NO_FREEZE_IS_SCHEDULED"]=271,t[e[272]="UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE"]=272,t[e[273]="FREEZE_START_TIME_MUST_BE_FUTURE"]=273,t[e[274]="PREPARED_UPDATE_FILE_IS_IMMUTABLE"]=274,t[e[275]="FREEZE_ALREADY_SCHEDULED"]=275,t[e[276]="FREEZE_UPGRADE_IN_PROGRESS"]=276,t[e[277]="UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED"]=277,t[e[278]="UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED"]=278,t[e[279]="CONSENSUS_GAS_EXHAUSTED"]=279,t[e[280]="REVERTED_SUCCESS"]=280,t[e[281]="MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED"]=281,t[e[282]="INVALID_ALIAS_KEY"]=282,t[e[283]="UNEXPECTED_TOKEN_DECIMALS"]=283,t[e[284]="INVALID_PROXY_ACCOUNT_ID"]=284,t[e[285]="INVALID_TRANSFER_ACCOUNT_ID"]=285,t[e[286]="INVALID_FEE_COLLECTOR_ACCOUNT_ID"]=286,t[e[287]="ALIAS_IS_IMMUTABLE"]=287,t[e[288]="SPENDER_ACCOUNT_SAME_AS_OWNER"]=288,t[e[289]="AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY"]=289,t[e[290]="NEGATIVE_ALLOWANCE_AMOUNT"]=290,t[e[291]="CANNOT_APPROVE_FOR_ALL_FUNGIBLE_COMMON"]=291,t[e[292]="SPENDER_DOES_NOT_HAVE_ALLOWANCE"]=292,t[e[293]="AMOUNT_EXCEEDS_ALLOWANCE"]=293,t[e[294]="MAX_ALLOWANCES_EXCEEDED"]=294,t[e[295]="EMPTY_ALLOWANCES"]=295,t[e[296]="SPENDER_ACCOUNT_REPEATED_IN_ALLOWANCES"]=296,t[e[297]="REPEATED_SERIAL_NUMS_IN_NFT_ALLOWANCES"]=297,t[e[298]="FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES"]=298,t[e[299]="NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES"]=299,t[e[300]="PAYER_AND_OWNER_NOT_EQUAL"]=300,t}(),n.ConsensusTopicInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.runningHash=e.bytes();break;case 3:r.sequenceNumber=e.uint64();break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 9:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createTopic"}),Object.defineProperty(e.prototype.updateTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTopic"}),Object.defineProperty(e.prototype.deleteTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteTopic"}),Object.defineProperty(e.prototype.getTopicInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTopicInfo"}),Object.defineProperty(e.prototype.submitMessage=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"submitMessage"}),e}(),n.Query=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyQuery.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDQuery.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalQuery.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoQuery.decode(e,e.uint32());break;case 5:r.contractGetBytecode=s.proto.ContractGetBytecodeQuery.decode(e,e.uint32());break;case 6:r.ContractGetRecords=s.proto.ContractGetRecordsQuery.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceQuery.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsQuery.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoQuery.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashQuery.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersQuery.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsQuery.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoQuery.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptQuery.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordQuery.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordQuery.decode(e,e.uint32());break;case 50:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoQuery.decode(e,e.uint32());break;case 51:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoQuery.decode(e,e.uint32());break;case 52:r.tokenGetInfo=s.proto.TokenGetInfoQuery.decode(e,e.uint32());break;case 53:r.scheduleGetInfo=s.proto.ScheduleGetInfoQuery.decode(e,e.uint32());break;case 54:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosQuery.decode(e,e.uint32());break;case 55:r.tokenGetNftInfo=s.proto.TokenGetNftInfoQuery.decode(e,e.uint32());break;case 56:r.tokenGetNftInfos=s.proto.TokenGetNftInfosQuery.decode(e,e.uint32());break;case 57:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeQuery.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.key=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.EntityID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyResponse=function(){function e(e){if(this.entities=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.entities&&r.entities.length||(r.entities=[]),r.entities.push(s.proto.EntityID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.solidityID=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractLoginfo=function(){function e(e){if(this.topic=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.bloom=e.bytes();break;case 3:r.topic&&r.topic.length||(r.topic=[]),r.topic.push(e.bytes());break;case 4:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractFunctionResult=function(){function e(e){if(this.logInfo=[],this.createdContractIDs=[],this.stateChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.contractCallResult=e.bytes();break;case 3:r.errorMessage=e.string();break;case 4:r.bloom=e.bytes();break;case 5:r.gasUsed=e.uint64();break;case 6:r.logInfo&&r.logInfo.length||(r.logInfo=[]),r.logInfo.push(s.proto.ContractLoginfo.decode(e,e.uint32()));break;case 7:r.createdContractIDs&&r.createdContractIDs.length||(r.createdContractIDs=[]),r.createdContractIDs.push(s.proto.ContractID.decode(e,e.uint32()));break;case 8:r.stateChanges&&r.stateChanges.length||(r.stateChanges=[]),r.stateChanges.push(s.proto.ContractStateChange.decode(e,e.uint32()));break;case 9:r.evmAddress=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.gas=e.int64();break;case 4:r.functionParameters=e.bytes();break;case 5:r.maxResultSize=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.functionResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractStateChange=function(){function e(e){if(this.storageChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.storageChanges&&r.storageChanges.length||(r.storageChanges=[]),r.storageChanges.push(s.proto.StorageChange.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.StorageChange=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.slot=e.bytes();break;case 2:r.valueRead=e.bytes();break;case 3:r.valueWritten=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractInfo=s.proto.ContractGetInfoResponse.ContractInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.ContractInfo=function(){function e(e){if(this.tokenRelationships=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractAccountID=e.string();break;case 4:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 5:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.storage=e.int64();break;case 8:r.memo=e.string();break;case 9:r.balance=e.uint64();break;case 10:r.deleted=e.bool();break;case 11:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.ContractGetBytecodeQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetBytecodeResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 6:r.bytecode=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionRecord=function(){function e(e){if(this.tokenTransferLists=[],this.assessedCustomFees=[],this.automaticTokenAssociations=[],this.cryptoAdjustments=[],this.nftAdjustments=[],this.tokenAdjustments=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 2:r.transactionHash=e.bytes();break;case 3:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 5:r.memo=e.string();break;case 6:r.transactionFee=e.uint64();break;case 7:r.contractCallResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 8:r.contractCreateResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 10:r.transferList=s.proto.TransferList.decode(e,e.uint32());break;case 11:r.tokenTransferLists&&r.tokenTransferLists.length||(r.tokenTransferLists=[]),r.tokenTransferLists.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;case 12:r.scheduleRef=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.assessedCustomFees&&r.assessedCustomFees.length||(r.assessedCustomFees=[]),r.assessedCustomFees.push(s.proto.AssessedCustomFee.decode(e,e.uint32()));break;case 14:r.automaticTokenAssociations&&r.automaticTokenAssociations.length||(r.automaticTokenAssociations=[]),r.automaticTokenAssociations.push(s.proto.TokenAssociation.decode(e,e.uint32()));break;case 15:r.parentConsensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 16:r.alias=e.bytes();break;case 17:r.cryptoAdjustments&&r.cryptoAdjustments.length||(r.cryptoAdjustments=[]),r.cryptoAdjustments.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 18:r.nftAdjustments&&r.nftAdjustments.length||(r.nftAdjustments=[]),r.nftAdjustments.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 19:r.tokenAdjustments&&r.tokenAdjustments.length||(r.tokenAdjustments=[]),r.tokenAdjustments.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionReceipt=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.status=e.int32();break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 5:r.exchangeRate=s.proto.ExchangeRateSet.decode(e,e.uint32());break;case 6:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 7:r.topicSequenceNumber=e.uint64();break;case 8:r.topicRunningHash=e.bytes();break;case 9:r.topicRunningHashVersion=e.uint64();break;case 10:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 11:r.newTotalSupply=e.uint64();break;case 12:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 14:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.hbarEquiv=e.int32();break;case 2:r.centEquiv=e.int32();break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ExchangeRateSet=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentRate=s.proto.ExchangeRate.decode(e,e.uint32());break;case 2:r.nextRate=s.proto.ExchangeRate.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceResponse=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.balance=e.uint64();break;case 4:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountInfo=s.proto.CryptoGetInfoResponse.AccountInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.AccountInfo=function(){function e(e){if(this.liveHashes=[],this.tokenRelationships=[],this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.contractAccountID=e.string();break;case 3:r.deleted=e.bool();break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.proxyReceived=e.int64();break;case 7:r.key=s.proto.Key.decode(e,e.uint32());break;case 8:r.balance=e.uint64();break;case 9:r.generateSendRecordThreshold=e.uint64();break;case 10:r.generateReceiveRecordThreshold=e.uint64();break;case 11:r.receiverSigRequired=e.bool();break;case 12:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 14:r.liveHashes&&r.liveHashes.length||(r.liveHashes=[]),r.liveHashes.push(s.proto.LiveHash.decode(e,e.uint32()));break;case 15:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 16:r.memo=e.string();break;case 17:r.ownedNfts=e.int64();break;case 18:r.maxAutomaticTokenAssociations=e.int32();break;case 19:r.alias=e.bytes();break;case 20:r.ledgerId=e.bytes();break;case 21:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 22:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 23:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),e}(),n.CryptoGetLiveHashQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.hash=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetLiveHashResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ProxyStaker=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AllProxyStakers=function(){function e(e){if(this.proxyStaker=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.proxyStaker&&r.proxyStaker.length||(r.proxyStaker=[]),r.proxyStaker.push(s.proto.ProxyStaker.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.stakers=s.proto.AllProxyStakers.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileContents=s.proto.FileGetContentsResponse.FileContents.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileContents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.FileGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileInfo=s.proto.FileGetInfoResponse.FileInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.size=e.int64();break;case 3:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.deleted=e.bool();break;case 5:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.TransactionGetReceiptQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildReceipts=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetReceiptResponse=function(){function e(e){if(this.duplicateTransactionReceipts=[],this.childTransactionReceipts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 4:r.duplicateTransactionReceipts&&r.duplicateTransactionReceipts.length||(r.duplicateTransactionReceipts=[]),r.duplicateTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;case 5:r.childTransactionReceipts&&r.childTransactionReceipts.length||(r.childTransactionReceipts=[]),r.childTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildRecords=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordResponse=function(){function e(e){if(this.duplicateTransactionRecords=[],this.childTransactionRecords=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;case 4:r.duplicateTransactionRecords&&r.duplicateTransactionRecords.length||(r.duplicateTransactionRecords=[]),r.duplicateTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;case 5:r.childTransactionRecords&&r.childTransactionRecords.length||(r.childTransactionRecords=[]),r.childTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.hapiProtoVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;case 3:r.hederaServicesVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeQuery=function(){function e(e){if(this.transactionIds=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionIds&&r.transactionIds.length||(r.transactionIds=[]),r.transactionIds.push(s.proto.TransactionID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeResponse=function(){function e(e){if(this.executionTimes=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:if(r.executionTimes&&r.executionTimes.length||(r.executionTimes=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenInfo=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.name=e.string();break;case 3:r.symbol=e.string();break;case 4:r.decimals=e.uint32();break;case 5:r.totalSupply=e.uint64();break;case 6:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 12:r.defaultFreezeStatus=e.int32();break;case 13:r.defaultKycStatus=e.int32();break;case 14:r.deleted=e.bool();break;case 15:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 16:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 17:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 18:r.memo=e.string();break;case 19:r.tokenType=e.int32();break;case 20:r.supplyType=e.int32();break;case 21:r.maxSupply=e.int64();break;case 22:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 23:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 24:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;case 25:r.pauseStatus=e.int32();break;case 26:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenInfo=s.proto.TokenInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 2:r.deletionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.executionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.signers=s.proto.KeyList.decode(e,e.uint32());break;case 9:r.creatorAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 10:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.scheduleInfo=s.proto.ScheduleInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.serialNumber=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.nftID=s.proto.NftID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenNftInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nftID=s.proto.NftID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.creationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.metadata=e.bytes();break;case 5:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nft=s.proto.TokenNftInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Response=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyResponse.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDResponse.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalResponse.decode(e,e.uint32());break;case 5:r.contractGetBytecodeResponse=s.proto.ContractGetBytecodeResponse.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoResponse.decode(e,e.uint32());break;case 6:r.contractGetRecordsResponse=s.proto.ContractGetRecordsResponse.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceResponse.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsResponse.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoResponse.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashResponse.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersResponse.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsResponse.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoResponse.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptResponse.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordResponse.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordResponse.decode(e,e.uint32());break;case 150:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoResponse.decode(e,e.uint32());break;case 151:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoResponse.decode(e,e.uint32());break;case 152:r.tokenGetInfo=s.proto.TokenGetInfoResponse.decode(e,e.uint32());break;case 153:r.scheduleGetInfo=s.proto.ScheduleGetInfoResponse.decode(e,e.uint32());break;case 154:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosResponse.decode(e,e.uint32());break;case 155:r.tokenGetNftInfo=s.proto.TokenGetNftInfoResponse.decode(e,e.uint32());break;case 156:r.tokenGetNftInfos=s.proto.TokenGetNftInfosResponse.decode(e,e.uint32());break;case 157:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeResponse.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createAccount"}),Object.defineProperty(e.prototype.updateAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateAccount"}),Object.defineProperty(e.prototype.cryptoTransfer=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoTransfer"}),Object.defineProperty(e.prototype.cryptoDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoDelete"}),Object.defineProperty(e.prototype.approveAllowances=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"approveAllowances"}),Object.defineProperty(e.prototype.adjustAllowance=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"adjustAllowance"}),Object.defineProperty(e.prototype.addLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"addLiveHash"}),Object.defineProperty(e.prototype.deleteLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteLiveHash"}),Object.defineProperty(e.prototype.getLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getLiveHash"}),Object.defineProperty(e.prototype.getAccountRecords=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountRecords"}),Object.defineProperty(e.prototype.cryptoGetBalance=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"cryptoGetBalance"}),Object.defineProperty(e.prototype.getAccountInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountInfo"}),Object.defineProperty(e.prototype.getTransactionReceipts=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTransactionReceipts"}),Object.defineProperty(e.prototype.getFastTransactionRecord=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFastTransactionRecord"}),Object.defineProperty(e.prototype.getTxRecordByTxID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByTxID"}),Object.defineProperty(e.prototype.getStakersByAccountID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getStakersByAccountID"}),e}(),n.FileService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createFile"}),Object.defineProperty(e.prototype.updateFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateFile"}),Object.defineProperty(e.prototype.deleteFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteFile"}),Object.defineProperty(e.prototype.appendContent=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"appendContent"}),Object.defineProperty(e.prototype.getFileContent=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileContent"}),Object.defineProperty(e.prototype.getFileInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileInfo"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.FreezeService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.freeze=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freeze"}),e}(),n.ConsensusTopicQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.consensusStartTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.consensusEndTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.limit=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusTopicResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.runningHash=e.bytes();break;case 4:r.sequenceNumber=e.uint64();break;case 5:r.runningHashVersion=e.uint64();break;case 6:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.MirrorConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.subscribeTopic=function e(t,n){return this.rpcCall(e,s.proto.ConsensusTopicQuery,s.proto.ConsensusTopicResponse,t,n)},"name",{value:"subscribeTopic"}),e}(),n.AddressBookQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileId=s.proto.FileID.decode(e,e.uint32());break;case 2:r.limit=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.MirrorNetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getNodes=function e(t,n){return this.rpcCall(e,s.proto.AddressBookQuery,s.proto.NodeAddress,t,n)},"name",{value:"getNodes"}),e}(),n.NetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getVersionInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getVersionInfo"}),Object.defineProperty(e.prototype.getExecutionTime=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getExecutionTime"}),Object.defineProperty(e.prototype.uncheckedSubmit=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"uncheckedSubmit"}),e}(),n.ScheduleService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createSchedule"}),Object.defineProperty(e.prototype.signSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"signSchedule"}),Object.defineProperty(e.prototype.deleteSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteSchedule"}),Object.defineProperty(e.prototype.getScheduleInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getScheduleInfo"}),e}(),n.SmartContractService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createContract"}),Object.defineProperty(e.prototype.updateContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateContract"}),Object.defineProperty(e.prototype.contractCallMethod=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"contractCallMethod"}),Object.defineProperty(e.prototype.getContractInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getContractInfo"}),Object.defineProperty(e.prototype.contractCallLocalMethod=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"contractCallLocalMethod"}),Object.defineProperty(e.prototype.contractGetBytecode=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"ContractGetBytecode"}),Object.defineProperty(e.prototype.getBySolidityID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getBySolidityID"}),Object.defineProperty(e.prototype.getTxRecordByContractID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByContractID"}),Object.defineProperty(e.prototype.deleteContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteContract"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.ThrottleGroup=function(){function e(e){if(this.operations=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:if(r.operations&&r.operations.length||(r.operations=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.name=e.string();break;case 2:r.burstPeriodMs=e.uint64();break;case 3:r.throttleGroups&&r.throttleGroups.length||(r.throttleGroups=[]),r.throttleGroups.push(s.proto.ThrottleGroup.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ThrottleDefinitions=function(){function e(e){if(this.throttleBuckets=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.throttleBuckets&&r.throttleBuckets.length||(r.throttleBuckets=[]),r.throttleBuckets.push(s.proto.ThrottleBucket.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createToken"}),Object.defineProperty(e.prototype.updateToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateToken"}),Object.defineProperty(e.prototype.mintToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"mintToken"}),Object.defineProperty(e.prototype.burnToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"burnToken"}),Object.defineProperty(e.prototype.deleteToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteToken"}),Object.defineProperty(e.prototype.wipeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"wipeTokenAccount"}),Object.defineProperty(e.prototype.freezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freezeTokenAccount"}),Object.defineProperty(e.prototype.unfreezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unfreezeTokenAccount"}),Object.defineProperty(e.prototype.grantKycToTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"grantKycToTokenAccount"}),Object.defineProperty(e.prototype.revokeKycFromTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"revokeKycFromTokenAccount"}),Object.defineProperty(e.prototype.associateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"associateTokens"}),Object.defineProperty(e.prototype.dissociateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"dissociateTokens"}),Object.defineProperty(e.prototype.updateTokenFeeSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTokenFeeSchedule"}),Object.defineProperty(e.prototype.getTokenInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenInfo"}),Object.defineProperty(e.prototype.getAccountNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountNftInfos"}),Object.defineProperty(e.prototype.getTokenNftInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfo"}),Object.defineProperty(e.prototype.getTokenNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfos"}),Object.defineProperty(e.prototype.pauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"pauseToken"}),Object.defineProperty(e.prototype.unpauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unpauseToken"}),e}(),n.SignedTransaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.bodyBytes=e.bytes();break;case 2:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionList=function(){function e(e){if(this.transactionList=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionList&&r.transactionList.length||(r.transactionList=[]),r.transactionList.push(s.proto.Transaction.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),n.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),n.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n}();t.proto=l;var f=s.google=function(){var e,t={};return t.protobuf=((e={}).DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),e.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),e.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),e.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),e.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),e.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),e.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),e.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),e.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e),t}();t.google=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(75)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(46)),f=r(n(427));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var p=function(e){(0,u.default)(n,e);var t=d(n);function n(e){var r;return(0,o.default)(this,n),(r=t.call(this,"gRPC service failed with status: ".concat(e.toString()))).status=e,r.name="GrpcServiceError",void 0!==Error.captureStackTrace&&Error.captureStackTrace((0,i.default)(r),n),r}return(0,a.default)(n,null,[{key:"_fromResponse",value:function(e){if(null!=e.code&&null!=e.details){var t=new n(f.default._fromValue(e.code));return t.message=e.details,t}return e}}]),n}((0,l.default)(Error));t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r){var a;return(0,o.default)(this,n),(a=t.call(this)).message="query cost of ".concat(e.toString()," HBAR exceeds max set on client: ").concat(r.toString()," HBAR"),a.name="MaxQueryPaymentExceededError",a.queryCost=e,a.maxQueryPayment=r,a}return n}((0,r(n(46)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31)),c=r(n(50)),s=r(n(860));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.storageChanges=t.storageChanges,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){var e=this.storageChanges.map((function(e){return e._toProtobuf()}));return{contractID:this.contractId._toProtobuf(),storageChanges:e}}},{key:"toBytes",value:function(){return u.ContractStateChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:c.default._fromProtobuf(t.contractID),storageChanges:(null!=t.storageChanges?t.storageChanges:[]).map((function(e){return s.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.ContractStateChange.decode(t))}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.slot=t.slot,this.valueRead=t.valueRead,this.valueWritten=t.valueWritten}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{slot:this.slot,valueRead:this.valueRead,valueWritten:null!=this.valueWritten?{value:this.valueWritten}:null}}},{key:"toBytes",value:function(){return u.StorageChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({slot:t.slot,valueRead:t.valueRead,valueWritten:null!=t.valueWritten&&null!=t.valueWritten.value?t.valueWritten.value:null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.StorageChange.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(10)),u=r(n(24)),c=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._accountId,null!=t.accountId&&this.setAccountId(t.accountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId)}return(0,a.default)(e,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?u.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){return{accountId:null!=this._accountId?this._accountId._toProtobuf():void 0,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():void 0}}}],[{key:"_fromProtobuf",value:function(t){return new e({accountId:null!=t.accountId?i.default._fromProtobuf(t.accountId):void 0,tokenId:null!=t.tokenId?u.default._fromProtobuf(t.tokenId):void 0})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=r(n(10)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(436));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var b=function(e){(0,s.default)(r,e);var t,n=y(r);function r(){return(0,u.default)(this,r),n.call(this,(function(e){return d.default.fromString(e)}))}return(0,c.default)(r,null,[{key:"_fromTransaction",value:(t=(0,i.default)(a.default.mark((function e(t){var n,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=new r,o=0;case 2:if(!(o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarApprovals=null!=r.hbarApprovals?r.hbarApprovals:[],e._tokenApprovals=null!=r.tokenApprovals?r.tokenApprovals:[],e._nftApprovals=null!=r.nftApprovals?r.nftApprovals:[],e}return(0,i.default)(n,[{key:"hbarApprovals",get:function(){return this._hbarApprovals}},{key:"addHbarAllowance",value:function(e,t){return this._requireNotFrozen(),this._hbarApprovals.push(new b.default({spenderAccountId:"string"==typeof e?f.default.fromString(e):e,amount:t instanceof y.default?t:new y.default(t),ownerAccountId:null})),this}},{key:"tokenApprovals",get:function(){return this._tokenApprovals}},{key:"addTokenAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._tokenApprovals.push(new m.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof n?h.default.fromNumber(n):n,ownerAccountId:null})),this}},{key:"addTokenNftAllowance",value:function(e,t){this._requireNotFrozen();var n,r="string"==typeof e?p.default.fromString(e):e,o="string"==typeof t?f.default.fromString(t):t,a=!1,i=k(this._nftApprovals);try{for(i.s();!(n=i.n()).done;){var u=n.value;if(0===u.tokenId.compare(r.tokenId)&&0===u.spenderAccountId.compare(o)){null!=u.serialNumbers&&u.serialNumbers.push(r.serial),a=!0;break}}}catch(e){i.e(e)}finally{i.f()}return a||this._nftApprovals.push(new v.default({tokenId:r.tokenId,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:[r.serial],ownerAccountId:null})),this}},{key:"addAllTokenNftAllowance",value:function(e,t){return this._requireNotFrozen(),this._nftApprovals.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:null,ownerAccountId:null})),this}},{key:"_validateChecksums",value:function(e){this._hbarApprovals.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenApprovals.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.approveAllowances(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoApproveAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarApprovals.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenApprovals.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftApprovals.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoApproveAllowance;return l.default._fromProtobufTransactions(new n({hbarApprovals:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),tokenApprovals:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),nftApprovals:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=I,l.TRANSACTION_REGISTRY.set("cryptoApproveAllowance",I._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(24));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(71)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(24));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(71)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(10)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),p=r(n(54)),h=r(n(17)),y=r(n(37));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._key=null,e._initialBalance=null,e._sendRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiveRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=new p.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._accountMemo=null,e._maxAutomaticTokenAssociations=null,null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),e}return(0,i.default)(n,[{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"_validateChecksums",value:function(e){null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.createAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoCreateAccount"}},{key:"_makeTransactionData",value:function(){return{key:null!=this._key?this._key._toProtobufKey():null,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,receiveRecordThreshold:this._receiveRecordThreshold.toTinybars(),sendRecordThreshold:this._sendRecordThreshold.toTinybars(),receiverSigRequired:this._receiverSignatureRequired,memo:this._accountMemo,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?this._maxAutomaticTokenAssociations.toInt():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoCreateAccount;return d.default._fromProtobufTransactions(new n({key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,accountMemo:null!=i.memo?i.memo:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations?i.maxAutomaticTokenAssociations:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=v,d.TRANSACTION_REGISTRY.set("cryptoCreateAccount",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(10)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._transferAccountId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDelete"}},{key:"_makeTransactionData",value:function(){return{deleteAccountID:null!=this._accountId?this._accountId._toProtobuf():null,transferAccountID:null!=this._transferAccountId?this._transferAccountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDelete;return f.default._fromProtobufTransactions(new n({accountId:null!=i.deleteAccountID?l.default._fromProtobuf(i.deleteAccountID):void 0,transferAccountId:null!=i.transferAccountID?l.default._fromProtobuf(i.transferAccountID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("cryptoDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(17)),u=r(n(24)),c=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.symbol=t.symbol,this.balance=t.balance,this.isKycGranted=t.isKycGranted,this.isFrozen=t.isFrozen,this.automaticAssociation=t.automaticAssociation,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),symbol:this.symbol,balance:this.balance,kycStatus:null==this.isKycGranted?0:this.isKycGranted?1:2,freezeStatus:null==this.isFrozen?0:this.isFrozen?1:2,automaticAssociation:this.automaticAssociation}}}],[{key:"_fromProtobuf",value:function(t){var n=u.default._fromProtobuf(t.tokenId),r=null==t.kycStatus||0===t.kycStatus?null:1===t.kycStatus,o=null==t.freezeStatus||0===t.freezeStatus?null:1===t.freezeStatus;return new e({tokenId:n,symbol:t.symbol,balance:null!=t.balance?t.balance instanceof i.default?t.balance:i.default.fromValue(t.balance):i.default.ZERO,isKycGranted:r,isFrozen:o,automaticAssociation:null!=t.automaticAssociation?t.automaticAssociation:null})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),h=r(n(10)),y=r(n(439)),b=r(n(28));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e}return(0,c.default)(r,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetInfo;return Promise.resolve(y.default._fromProtobuf(r.accountInfo))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetInfo:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetInfo;return new r({accountId:null!=t.accountID?h.default._fromProtobuf(t.accountID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("cryptoGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),f=r(n(10)),d=r(n(268));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountRecords(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetAccountRecords.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetAccountRecords.records;return Promise.resolve(r.map((function(e){return d.default._fromProtobuf({transactionRecord:e})})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetAccountRecords:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetAccountRecords;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetAccountRecords",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),f=r(n(10)),d=r(n(441));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getStakersByAccountID(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetProxyStakers.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetProxyStakers.stakers;return Promise.resolve((null!=t.proxyStaker?t.proxyStaker:[]).map((function(e){return d.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetProxyStakers:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetProxyStakers;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetProxyStakers",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=g(n(19)),f=r(n(10)),d=r(n(38)),p=r(n(54)),h=r(n(17)),y=r(n(37)),b=g(n(31)),m=r(n(90));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function g(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var _=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._key=null,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=null,e._expirationTime=null,e._accountMemo=null,e._maxAutomaticTokenAssociations=null,e._aliasKey=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),null!=r.aliasKey&&e.setAliasKey(r.aliasKey),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof Date?d.default.fromDate(e):e,this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"clearAccountMemo",value:function(){return this._requireNotFrozen(),this._accountMemo=null,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"aliasKey",get:function(){return this._aliasKey}},{key:"setAliasKey",value:function(e){return this._requireNotFrozen(),this._aliasKey=e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.updateAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoUpdateAccount"}},{key:"_makeTransactionData",value:function(){return{accountIDToUpdate:null!=this._accountId?this._accountId._toProtobuf():null,key:null!=this._key?this._key._toProtobufKey():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,receiverSigRequiredWrapper:null==this._receiverSignatureRequired?null:{value:this._receiverSignatureRequired},memo:null!=this._accountMemo?{value:this._accountMemo}:null,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?{value:this._maxAutomaticTokenAssociations.toInt()}:null,alias:null!=this._key?b.Key.encode(this._key._toProtobufKey()).finish():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoUpdateAccount,u=null!=i.alias&&i.alias.length>0?y.default._fromProtobufKey(b.Key.decode(i.alias)):void 0;return u instanceof m.default||(u=void 0),l.default._fromProtobufTransactions(new n({accountId:null!=i.accountIDToUpdate?f.default._fromProtobuf(i.accountIDToUpdate):void 0,key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,expirationTime:null!=i.expirationTime?d.default._fromProtobuf(i.expirationTime):void 0,accountMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations&&null!=i.maxAutomaticTokenAssociations.value?h.default.fromNumber(i.maxAutomaticTokenAssociations.value):void 0,aliasKey:u}),e,t,r,o,a)}}]),n}(l.default);t.default=_,l.TRANSACTION_REGISTRY.set("cryptoUpdateAccount",_._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(442)),c=r(n(443)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31)),l=r(n(53)),f=n(123);function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._fileId=null,null!=t.fileId&&this.setFileId(t.fileId),this._limit=null,null!=t.limit&&this.setLimit(t.limit),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return f.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},this._addresses=[],this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0}return(0,i.default)(e,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this._limit=e,this}},{key:"setMaxAttempts",value:function(e){this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this._maxBackoff=e}},{key:"execute",value:function(e,t){var n=this;return new Promise((function(r,o){n._makeServerStreamRequest(e,r,o,t)}))}},{key:"_makeServerStreamRequest",value:function(e,t,n,r){var o=this,a=s.AddressBookQuery.encode({fileId:null!=this._fileId?this._fileId._toProtobuf():null,limit:this._limit}).finish();e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("NetworkService","getNodes",a,(function(e){o._addresses.push(u.default._fromProtobuf(s.NodeAddress.decode(e))),null!=o._limit&&o._limit>0&&(o._limit=o._limit-1)}),(function(a){var i=a instanceof Error?a.message:a.details;if(o._attempt0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._address=null,null!=t.address&&this.setAddress(t.address),this._port=null,null!=t.port&&this.setPort(t.port)}return(0,a.default)(e,[{key:"address",get:function(){return this.address}},{key:"setAddress",value:function(e){return this._address=e,this}},{key:"port",get:function(){return this._port}},{key:"setPort",value:function(e){return this._port=e,this}},{key:"_toProtobuf",value:function(){return{ipAddressV4:null!=this._address?this._address._toProtobuf():null,port:this._port}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{address:null!=this._address?this._address.toString():null,port:null!=this._port?this._port.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({address:null!=t.ipAddressV4?i.default._fromProtobuf(t.ipAddressV4):void 0,port:null!=t.port?t.port:void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(878)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._network=null,null!=t.network&&this.setNetwork(t.network),this._host=null,null!=t.host&&this.setHost(t.host)}return(0,a.default)(e,[{key:"newtork",get:function(){return this._network}},{key:"setNetwork",value:function(e){return this._network=e,this}},{key:"host",get:function(){return this._host}},{key:"setHost",value:function(e){return this._host=e,this}},{key:"_toProtobuf",value:function(){return Uint8Array.of(null!=this._network&&null!=this._network._left?this._network._left:0,null!=this._network&&null!=this._network.right?this._network.right:0,null!=this._host&&null!=this._host.left?this._host.left:0,null!=this._host&&null!=this._host.right?this._host.right:0)}},{key:"toString",value:function(){return null!=this._network&&null!=this._host?"".concat(this._network.toString(),".").concat(this._host.toString()):""}}],[{key:"_fromProtobuf",value:function(t){return new e({network:(new i.default).setLeft(t[0]).setRight(t[1]),host:(new i.default).setLeft(t[2]).setRight(t[3])})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._left=null,null!=t.left&&this.setLeft(t.left),this._right=null,null!=t.right&&this.setRight(t.right)}return(0,a.default)(e,[{key:"left",get:function(){return this._left}},{key:"setLeft",value:function(e){return this._left=e,this}},{key:"right",get:function(){return this._right}},{key:"setRight",value:function(e){return this._right=e,this}},{key:"toString",value:function(){return null!=this._left&&null!=this._right?"".concat(this._left.toString(),".").concat(this._right.toString()):""}}]),e}();t.default=i},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),f=r(n(50));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractGetBytecode(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractGetBytecodeResponse.header}},{key:"_mapResponse",value:function(e){var t=e.contractGetBytecodeResponse;return Promise.resolve(null!=t.bytecode?t.bytecode:new Uint8Array)}},{key:"_onMakeRequest",value:function(e){return{contractGetBytecode:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetBytecode;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("contractGetBytecode",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),f=r(n(50)),d=r(n(210)),p=r(n(270)),h=r(n(17));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e._gas=null,null!=r.gas&&e.setGas(r.gas),e._functionParameters=null,null!=r.functionParameters&&(r.functionParameters instanceof Uint8Array?e.setFunctionParameters(r.functionParameters):e.setFunction(r.functionParameters.name,r.functionParameters.parameters)),e._maxResultSize=null,null!=r.maxResultSize&&e.setMaxResultSize(r.maxResultSize),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._functionParameters=(null!=t?t:new d.default)._build(e),this}},{key:"setMaxResultSize",value:function(e){return this._maxResultSize=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallLocalMethod(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractCallLocal.header}},{key:"_mapResponse",value:function(e){var t=e.contractCallLocal;return Promise.resolve(p.default._fromProtobuf(t.functionResult))}},{key:"_onMakeRequest",value:function(e){return{contractCallLocal:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,maxResultSize:this._maxResultSize,functionParameters:this._functionParameters}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractCallLocal;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0,gas:null!=t.gas?t.gas:void 0,functionParameters:null!=t.functionParameters?t.functionParameters:void 0,maxResultSize:null!=t.maxResultSize?t.maxResultSize:void 0})}}]),n}(l.default);t.default=m,l.QUERY_REGISTRY.set("contractCallLocal",m._fromProtobuf)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.keccak256=void 0;var r,o="0123456789abcdef".split(""),a=[1,256,65536,16777216],i=[0,8,16,24],u=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],c=function(e){var t,n,r,o,a,i,c,s,l,f,d,p,h,y,b,m,v,g,k,_,w,I,A,T,O,E,P,S,R,D,C,N,B,M,j,x,F,U,L,K,G,z,Q,H,V,q,W,Y,Z,J,X,$,ee,te,ne,re,oe,ae,ie,ue,ce,se,le;for(r=0;r<48;r+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],a=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],c=e[3]^e[13]^e[23]^e[33]^e[43],s=e[4]^e[14]^e[24]^e[34]^e[44],l=e[5]^e[15]^e[25]^e[35]^e[45],f=e[6]^e[16]^e[26]^e[36]^e[46],d=e[7]^e[17]^e[27]^e[37]^e[47],t=(p=e[8]^e[18]^e[28]^e[38]^e[48])^(i<<1|c>>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],b=e[1],q=e[11]<<4|e[10]>>>28,W=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,m=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,g=e[25]<<11|e[24]>>>21,k=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,E=e[18]<<20|e[19]>>>12,P=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,K=e[38]<<8|e[39]>>>24,G=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~m&g,e[1]=b^~v&k,e[10]=T^~E&S,e[11]=O^~P&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~q&Y,e[31]=V^~W&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=m^~g&_,e[3]=v^~k&w,e[12]=E^~S&D,e[13]=P^~R&C,e[22]=x^~U&K,e[23]=F^~L&G,e[32]=q^~Y&J,e[33]=W^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=g^~_&I,e[5]=k^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~K&z,e[25]=L^~G&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&b,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=K^~z&M,e[27]=G^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&m,e[9]=A^~b&v,e[18]=N^~T&E,e[19]=B^~O&P,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&q,e[39]=ee^~V&W,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];m%f==0&&(c(p),n=0)}return"0x"+b}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(10)),d=r(n(53)),p=r(n(210)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),y=r(n(17)),b=r(n(54)),m=r(n(37));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._bytecodeFileId=null,e._adminKey=null,e._gas=null,e._initialBalance=null,e._proxyAccountId=null,e._autoRenewPeriod=new b.default(h.DEFAULT_AUTO_RENEW_PERIOD),e._constructorParameters=null,e._contractMemo=null,e._defaultMaxTransactionFee=new l.default(20),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.gas&&e.setGas(r.gas),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.constructorParameters&&e.setConstructorParameters(r.constructorParameters),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof y.default?e:y.default.fromValue(e),this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof b.default?e:new b.default(e),this}},{key:"constructorParameters",get:function(){return this._constructorParameters}},{key:"setConstructorParameters",value:function(e){return this._requireNotFrozen(),this._constructorParameters=e instanceof p.default?e._build():e,this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"_validateChecksums",value:function(e){null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.createContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCreateInstance"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,gas:this._gas,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),constructorParameters:this._constructorParameters,memo:this._contractMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCreateInstance;return h.default._fromProtobufTransactions(new n({bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,adminKey:null!=i.adminKey?m.default._fromProtobufKey(i.adminKey):void 0,gas:null!=i.gas?i.gas:void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,constructorParameters:null!=i.constructorParameters?i.constructorParameters:void 0,contractMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(h.default);t.default=k,h.TRANSACTION_REGISTRY.set("contractCreateInstance",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),f=r(n(50)),d=r(n(10));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._transferAccountId=null,e._transferContractId=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),null!=r.transferContractId&&e.setTransferContractId(r.transferContractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"transferContractId",get:function(){return this._transferContractId}},{key:"setTransferContractId",value:function(e){return this._requireNotFrozen(),this._transferContractId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e),null!=this._transferContractId&&this._transferContractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.deleteContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractDeleteInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,transferAccountID:this._transferAccountId?this._transferAccountId._toProtobuf():null,transferContractID:null!=this._transferContractId?this._transferContractId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractDeleteInstance;return l.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,transferAccountId:null!=i.transferAccountID?d.default._fromProtobuf(i.transferAccountID):void 0,transferContractId:null!=i.transferContractID?f.default._fromProtobuf(i.transferContractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("contractDeleteInstance",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),d=r(n(50)),p=r(n(210)),h=r(n(17));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._gas=null,e._amount=null,e._functionParameters=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.gas&&e.setGas(r.gas),null!=r.amount&&e.setPayableAmount(r.amount),null!=r.functionParameters?e.setFunctionParameters(r.functionParameters):null!=r.function&&e.setFunction(r.function.name,r.function.parameters),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"payableAmount",get:function(){return this._amount}},{key:"setPayableAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof l.default?e:new l.default(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._requireNotFrozen(),this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._requireNotFrozen(),this._functionParameters=null!=t?t._build(e):(new p.default)._build(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallMethod(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCall"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,amount:null!=this._amount?this._amount.toTinybars():null,functionParameters:this._functionParameters}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCall;return f.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,gas:null!=i.gas?i.gas:void 0,amount:i.amount?i.amount:void 0,functionParameters:null!=i.functionParameters?i.functionParameters:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("contractCall",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),h=r(n(50)),y=r(n(445)),b=r(n(28));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._contractId=null,null!=t.contractId&&e.setContractId(t.contractId),e}return(0,c.default)(r,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.getContractInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.contractGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.contractGetInfo;return Promise.resolve(y.default._fromProtobuf(r.contractInfo))}},{key:"_onMakeRequest",value:function(e){return{contractGetInfo:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetInfo;return new r({contractId:null!=t.contractID?h.default._fromProtobuf(t.contractID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("contractGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(10)),f=r(n(50)),d=r(n(53)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),h=r(n(54)),y=r(n(38)),b=r(n(37));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._expirationTime=null,e._adminKey=null,e._proxyAccountId=null,e._autoRenewPeriod=null,e._bytecodeFileId=null,e._contractMemo=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return console.warn("Deprecated: there is no replacement"),this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"clearContractMemo",value:function(){return this._requireNotFrozen(),this._contractMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.updateContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractUpdateInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,fileID:this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,memoWrapper:null!=this._contractMemo?{value:this._contractMemo}:null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractUpdateInstance,u=void 0;null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds&&(u=i.autoRenewPeriod.seconds);var c=void 0;return null!=i.memoWrapper&&null!=i.memoWrapper.value&&(c=i.memoWrapper.value),p.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,expirationTime:null!=i.expirationTime?y.default._fromProtobuf(i.expirationTime):void 0,adminKey:null!=i.adminKey?b.default._fromProtobufKey(i.adminKey):void 0,proxyAccountId:null!=i.proxyAccountID?l.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:u,contractMemo:c}),e,t,r,o,a)}}]),n}(p.default);t.default=g,p.TRANSACTION_REGISTRY.set("contractUpdateInstance",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(103)),f=r(n(50)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(64));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(e,r,o,i){return(0,a.default)(this,n),t.call(this,e,r,o,i)}return(0,i.default)(n,[{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e}},{key:"_toProtobufKey",value:function(){return{delegatableContractId:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,d.decode(r))}},{key:"fromString",value:function(e){return new n(f.default.fromString(e))}},{key:"_fromProtobuf",value:function(e){return new n(f.default._fromProtobuf(e))}},{key:"fromBytes",value:function(e){return new n(f.default.fromBytes(e))}},{key:"fromSolidityAddress",value:function(e){return new n(f.default.fromSolidityAddress(e))}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(f.default);t.default=y,l.default.delegateContractId=function(e){return y.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(87)),l=r(n(20)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(28)),y=w(n(19)),b=w(n(91)),m=r(n(53)),v=r(n(65)),g=r(n(38)),k=r(n(267));function _(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(_=function(e){return e?n:t})(e)}function w(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function I(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return A(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return A(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._fileId=null,e._contents=null,e._maxChunks=20,e._chunkSize=2048,e._defaultMaxTransactionFee=new h.default(5),null!=t.fileId&&e.setFileId(t.fileId),null!=t.contents&&e.setContents(t.contents),null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._startIndex=0,e._transactionIds=new k.default,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`FileAppendTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?m.default.fromString(e):e.clone(),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:b.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,l.default)((0,p.default)(o.prototype),"freezeWith",this).call(this,e),null==this._contents)return this;var t=Math.floor((this._contents.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Contents with size ".concat(this._contents.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear(),(0,s.default)((0,p.default)(o.prototype),"_nextTransactionIndex",0,this,!0);for(var r=0;rthis._chunkSize)throw new Error("cannot schedule `FileAppendTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,l.default)((0,p.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,s,f,d;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,l.default)((0,p.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,l.default)((0,p.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,s=0;case 9:if(!(se&&(t=e),{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contents:null!=this._contents?this._contents.slice(this._startIndex,t):null}}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){for(var i,u=a[0].fileAppend,c=0;c0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileContent(t)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_mapResponseHeader",value:function(e){return e.fileGetContents.header}},{key:"_mapResponse",value:function(e){var t=e.fileGetContents.fileContents.contents;return Promise.resolve(t)}},{key:"_onMakeRequest",value:function(e){return{fileGetContents:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetContents;return new n({fileId:null!=t.fileID?f.default._fromProtobuf(t.fileID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("fileGetContents",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=m(n(19)),d=m(n(91)),p=r(n(38)),h=r(n(37)),y=r(n(120));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._keys=null,e._expirationTime=p.default.fromDate(Date.now()+1e3*f.DEFAULT_AUTO_RENEW_PERIOD.toInt()),e._contents=null,e._fileMemo=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"_execute",value:function(e,t){return e.file.createFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileCreate"}},{key:"_makeTransactionData",value:function(){return{keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:this._expirationTime._toProtobuf(),contents:this._contents,memo:this._fileMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileCreate;return f.default._fromProtobufTransactions(new n({keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=g,f.TRANSACTION_REGISTRY.set("fileCreate",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),f=r(n(53));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.deleteFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("fileDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),h=r(n(53)),y=r(n(446)),b=r(n(28));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._fileId=null,null!=t.fileId&&e.setFileId(t.fileId),e}return(0,c.default)(r,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.fileGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.fileGetInfo;return Promise.resolve(y.default._fromProtobuf(r.fileInfo))}},{key:"_onMakeRequest",value:function(e){return{fileGetInfo:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetInfo;return new r({fileId:null!=t.fileID?h.default._fromProtobuf(t.fileID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("fileGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=m(n(19)),f=r(n(38)),d=m(n(91)),p=r(n(53)),h=r(n(37)),y=r(n(120));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._keys=null,e._expirationTime=null,e._contents=null,e._fileMemo=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof f.default?e:f.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"clearFileMemo",value:function(){return this._requireNotFrozen(),this._fileMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.updateFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileUpdate"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,contents:this._contents,memo:null!=this._fileMemo?{value:this._fileMemo}:null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileUpdate;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?p.default._fromProtobuf(i.fileID):void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?f.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=g,l.TRANSACTION_REGISTRY.set("fileUpdate",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=b(n(19)),f=r(n(38)),d=r(n(53)),p=b(n(64)),h=r(n(895));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._startTime=null,e._startTimestamp=null,e._endTime=null,e._fileId=null,e._fileHash=null,e._freezeType=null,null!=r.startTime&&e.setStartTime(r.startTime.hour,r.startTime.minute),null!=r.endTime&&e.setEndTime(r.endTime.hour,r.endTime.minute),null!=r.startTimestamp&&e.setStartTimestamp(r.startTimestamp),null!=r.updateFileId&&e.setUpdateFileId(r.updateFileId),null!=r.fileId&&e.setFileId(r.fileId),null!=r.fileHash&&e.setFileHash(r.fileHash),null!=r.freezeType&&e.setFreezeType(r.freezeType),e}return(0,i.default)(n,[{key:"startTime",get:function(){return null}},{key:"setStartTime",value:function(e,t){if(this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._startTime={hour:Number(n[0]),minute:Number(n[1])}}else this._startTime={hour:e,minute:t};return this}},{key:"startTimestamp",get:function(){return this._startTimestamp}},{key:"setStartTimestamp",value:function(e){return this._requireNotFrozen(),this._startTimestamp=e,this}},{key:"endTime",get:function(){return console.warn("`FreezeTransaction.endTime` is deprecated"),this._endTime}},{key:"setEndTime",value:function(e,t){if(console.warn("`FreezeTransaction.endTime` is deprecated"),this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._endTime={hour:Number(n[0]),minute:Number(n[1])}}else this._endTime={hour:e,minute:t};return this}},{key:"updateFileId",get:function(){return this.fileId}},{key:"setUpdateFileId",value:function(e){return this.setFileId(e)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e,this}},{key:"fileHash",get:function(){return this._fileHash}},{key:"setFileHash",value:function(e){return this._requireNotFrozen(),this._fileHash="string"==typeof e?p.decode(e):e,this}},{key:"freezeType",get:function(){return this._freezeType}},{key:"setFreezeType",value:function(e){return this._requireNotFrozen(),this._freezeType=e,this}},{key:"_getTransactionDataCase",value:function(){return"freeze"}},{key:"_makeTransactionData",value:function(){return{startTime:null!=this._startTimestamp?this._startTimestamp._toProtobuf():null,updateFile:null!=this._fileId?this._fileId._toProtobuf():null,fileHash:this._fileHash,freezeType:null!=this._freezeType?this._freezeType.valueOf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].freeze;return l.default._fromProtobufTransactions(new n({startTime:null!=i.startHour&&null!=i.startMin?{hour:i.startHour,minute:i.startMin}:void 0,endTime:null!=i.endHour&&null!=i.endMin?{hour:i.endHour,minute:i.endMin}:void 0,startTimestamp:null!=i.startTime?f.default._fromProtobuf(i.startTime):void 0,updateFileId:null!=i.updateFile?d.default._fromProtobuf(i.updateFile):void 0,fileHash:null!=i.fileHash?i.fileHash:void 0,freezeType:null!=i.freezeType?h.default._fromCode(i.freezeType):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=v,l.TRANSACTION_REGISTRY.set("freeze",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.UnknownFreezeType:return"UNKNOWN_FREEZE_TYPE";case e.FreezeOnly:return"FREEZE_ONLY";case e.PrepareUpgrade:return"PREPARE_UPGRADE";case e.FreezeUpgrade:return"FREEZE_UPGRADE";case e.FreezeAbort:return"FREEZE_ABORT";case e.TelemetryUpgrade:return"TELEMETRY_UPGRADE";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromCode",value:function(t){switch(t){case 0:return e.UnknownFreezeType;case 1:return e.FreezeOnly;case 2:return e.PrepareUpgrade;case 3:return e.FreezeUpgrade;case 4:return e.FreezeAbort;case 5:return e.TelemetryUpgrade;default:throw new Error("(BUG) Status.fromCode() does not handle code: ".concat(t))}}}]),e}();t.default=i,i.UnknownFreezeType=new i(0),i.FreezeOnly=new i(1),i.PrepareUpgrade=new i(2),i.FreezeUpgrade=new i(3),i.FreezeAbort=new i(4),i.TelemetryUpgrade=new i(5)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),f=r(n(10)),d=r(n(54)),p=r(n(37)),h=r(n(120));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._keys=null,e._duration=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.keys&&e.setKeys(r.keys),null!=r.duration&&e.setDuration(r.duration),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){return this._requireNotFrozen(),this._keys=e instanceof h.default?e.toArray():e,this}},{key:"duration",get:function(){return this._duration}},{key:"setDuration",value:function(e){return this._requireNotFrozen(),this._duration=e instanceof d.default?e:new d.default(e),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.addLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAddLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHash:{hash:this._hash,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:void 0,duration:null!=this._duration?this._duration._toProtobuf():null,accountId:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAddLiveHash.liveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.hash?i.hash:void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return p.default._fromProtobufKey(e)})):void 0,duration:null!=i.duration&&null!=i.duration.seconds?i.duration.seconds:void 0,accountId:null!=i.accountId?f.default._fromProtobuf(i.accountId):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=m,l.TRANSACTION_REGISTRY.set("cryptoAddLiveHash",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),f=r(n(10));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.deleteLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDeleteLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHashToDelete:this._hash,accountOfLiveHash:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDeleteLiveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.liveHashToDelete?i.liveHashToDelete:void 0,accountId:null!=i.accountOfLiveHash?f.default._fromProtobuf(i.accountOfLiveHash):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("cryptoDeleteLiveHash",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),f=r(n(10)),d=r(n(271));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e._hash=null,null!=r.hash&&e.setHash(r.hash),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"liveHash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._hash=e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getLiveHash(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetLiveHash.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetLiveHash;return Promise.resolve(d.default._fromProtobuf(t.liveHash))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetLiveHash:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,hash:this._hash}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetLiveHash;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,hash:null!=t.hash?t.hash:void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetLiveHash",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),f=r(n(447));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){return(0,a.default)(this,n),t.call(this)}return(0,i.default)(n,[{key:"_execute",value:function(e,t){return e.network.getVersionInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.networkGetVersionInfo.header}},{key:"_mapResponse",value:function(e){var t=e.networkGetVersionInfo;return Promise.resolve(f.default._fromProtobuf(t))}},{key:"_onMakeRequest",value:function(e){return{networkGetVersionInfo:{header:e}}}}],[{key:"_fromProtobuf",value:function(e){return new n}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("networkGetVersionInfo",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(10)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),d=r(n(37));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._scheduledTransaction=null,e._payerAccountId=null,e._scheduleMemo=null,e._scheduledSignerPublicKeys=new Set,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.payerAccountID&&e.setPayerAccountId(r.payerAccountID),null!=r.scheduleMemo&&e.setScheduleMemo(r.scheduleMemo),e}return(0,i.default)(n,[{key:"_setScheduledTransaction",value:function(e){return this._scheduledTransaction=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"payerAccountId",get:function(){return this._payerAccountId}},{key:"setPayerAccountId",value:function(e){return this._requireNotFrozen(),this._payerAccountId=e,this}},{key:"setScheduleMemo",value:function(e){return this._requireNotFrozen(),this._scheduleMemo=e,this}},{key:"getScheduleMemo",get:function(){return this._requireNotFrozen(),this._scheduleMemo}},{key:"setScheduledTransaction",value:function(e){return this._requireNotFrozen(),e._requireNotFrozen(),this._scheduledTransaction=e.schedule()._scheduledTransaction,this}},{key:"_validateChecksums",value:function(e){null!=this._payerAccountId&&this._payerAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.createSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleCreate"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,payerAccountID:null!=this._payerAccountId?this._payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this._scheduledTransaction?this._scheduledTransaction._getScheduledTransactionBody():null,memo:this._scheduleMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleCreate;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?d.default._fromProtobufKey(i.adminKey):void 0,payerAccountID:null!=i.payerAccountID?l.default._fromProtobuf(i.payerAccountID):void 0,scheduleMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("scheduleCreate",y._fromProtobuf),f.SCHEDULE_CREATE_TRANSACTION.push((function(){return new y}))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(124)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.deleteSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleDelete"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleDelete;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("scheduleDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),h=r(n(124)),y=r(n(449)),b=r(n(28));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._scheduleId=null,null!=t.scheduleId&&e.setScheduleId(t.scheduleId),e}return(0,c.default)(r,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._scheduleId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.getScheduleInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.scheduleGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.scheduleGetInfo;return Promise.resolve(y.default._fromProtobuf(r.scheduleInfo))}},{key:"_onMakeRequest",value:function(e){return{scheduleGetInfo:{header:e,scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.scheduleGetInfo;return new r({scheduleId:null!=t.scheduleID?h.default._fromProtobuf(t.scheduleID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("scheduleGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(124)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.signSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleSign"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleSign;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("scheduleSign",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),f=r(n(53)),d=r(n(50)),p=r(n(38));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,e._expirationTime=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e,this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemDelete(t):e.smartContract.systemDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=b,l.TRANSACTION_REGISTRY.set("systemDelete",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),f=r(n(53)),d=r(n(50));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemUndelete(t):e.smartContract.systemUndelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemUndelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemUndelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("systemUndelete",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(24)),d=r(n(10)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.associateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenAssociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenAssociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenAssociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),d=r(n(17));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._serials=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return e instanceof d.default?e:d.default.fromValue(e)})),this}},{key:"_execute",value:function(e,t){return e.token.burnToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenBurn"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,serialNumbers:this._serials,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenBurn;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,serials:null!=i.serialNumbers?i.serialNumbers:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("tokenBurn",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(20)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=r(n(28)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),p=r(n(17)),h=r(n(10)),y=r(n(38)),b=r(n(54)),m=r(n(170)),v=r(n(212)),g=r(n(213)),k=r(n(272)),_=r(n(273)),w=r(n(37));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var T=function(e){(0,c.default)(n,e);var t=A(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenName=null,e._tokenSymbol=null,e._decimals=null,e._initialSupply=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._pauseKey=null,e._wipeKey=null,e._supplyKey=null,e._feeScheduleKey=null,e._freezeDefault=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=new b.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._tokenMemo=null,e._customFees=[],e._tokenType=null,e._supplyType=null,e._maxSupply=null,e._defaultMaxTransactionFee=new f.default(30),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.decimals&&e.setDecimals(r.decimals),null!=r.initialSupply&&e.setInitialSupply(r.initialSupply),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.freezeDefault&&e.setFreezeDefault(r.freezeDefault),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.customFees&&e.setCustomFees(r.customFees),null!=r.tokenType&&e.setTokenType(r.tokenType),null!=r.supplyType&&e.setSupplyType(r.supplyType),null!=r.maxSupply&&e.setMaxSupply(r.maxSupply),e}return(0,i.default)(n,[{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"decimals",get:function(){return this._decimals}},{key:"setDecimals",value:function(e){return this._requireNotFrozen(),this._decimals=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"initialSupply",get:function(){return this._initialSupply}},{key:"setInitialSupply",value:function(e){return this._requireNotFrozen(),this._initialSupply=p.default.fromValue(e),this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"freezeDefault",get:function(){return this._freezeDefault}},{key:"setFreezeDefault",value:function(e){return this._requireNotFrozen(),this._freezeDefault=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=null,this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof h.default?e:h.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof b.default?e:new b.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._customFees=e,this}},{key:"tokenType",get:function(){return this._tokenType}},{key:"setTokenType",value:function(e){return this._tokenType=e,this}},{key:"supplyType",get:function(){return this._supplyType}},{key:"setSupplyType",value:function(e){return this._supplyType=e,this}},{key:"maxSupply",get:function(){return this._maxSupply}},{key:"setMaxSupply",value:function(e){return this._maxSupply="number"==typeof e?p.default.fromNumber(e):e,this}},{key:"freezeWith",value:function(e){return null!=this._autoRenewPeriod&&null!=e&&e.operatorAccountId&&(this._autoRenewAccountId=e.operatorAccountId),(0,u.default)((0,l.default)(n.prototype),"freezeWith",this).call(this,e)}},{key:"_validateChecksums",value:function(e){null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.createToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenCreation"}},{key:"_makeTransactionData",value:function(){return{name:this._tokenName,symbol:this._tokenSymbol,decimals:null!=this._decimals?this._decimals.toInt():null,initialSupply:this._initialSupply,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,pauseKey:null!=this._pauseKey?this._pauseKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null,freezeDefault:this._freezeDefault,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:this._tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this._tokenType?this._tokenType._code:null,supplyType:null!=this._supplyType?this._supplyType._code:null,maxSupply:this.maxSupply}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenCreation;return d.default._fromProtobufTransactions(new n({tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,decimals:null!=i.decimals?i.decimals:void 0,initialSupply:null!=i.initialSupply?i.initialSupply:void 0,treasuryAccountId:null!=i.treasury?h.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?w.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?w.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?w.default._fromProtobufKey(i.freezeKey):void 0,pauseKey:null!=i.pauseKey?w.default._fromProtobufKey(i.pauseKey):void 0,wipeKey:null!=i.wipeKey?w.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?w.default._fromProtobufKey(i.supplyKey):void 0,feeScheduleKey:null!=i.feeScheduleKey?w.default._fromProtobufKey(i.feeScheduleKey):void 0,freezeDefault:null!=i.freezeDefault?i.freezeDefault:void 0,autoRenewAccountId:null!=i.autoRenewAccount?h.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?y.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?b.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo?i.memo:void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?m.default._fromProtobuf(e):null!=e.fractionalFee?v.default._fromProtobuf(e):g.default._fromProtobuf(e)})):void 0,tokenType:null!=i.tokenType?k.default._fromCode(i.tokenType):void 0,supplyType:null!=i.supplyType?_.default._fromCode(i.supplyType):void 0,maxSupply:null!=i.maxSupply?i.maxSupply:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=T,d.TRANSACTION_REGISTRY.set("tokenCreation",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.deleteToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDeletion"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDeletion;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenDeletion",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(24)),d=r(n(10)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.dissociateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDissociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDissociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenDissociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),d=r(n(170)),p=r(n(212)),h=r(n(213));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._customFees=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.customFees&&e.setCustomFees(r.customFees),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):l.default._fromProtobuf(e._toProtobuf()),this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._requireNotFrozen(),this._customFees=e,this}},{key:"_execute",value:function(e,t){return e.token.updateTokenFeeSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFeeScheduleUpdate"}},{key:"_makeTransactionData",value:function(){return{tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,customFees:this._customFees.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFeeScheduleUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.tokenId?l.default._fromProtobuf(i.tokenId):void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?d.default._fromProtobuf(e):null!=e.fractionalFee?p.default._fromProtobuf(e):h.default._fromProtobuf(e)})):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("tokenFeeScheduleUpdate",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=r(n(10)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.freezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenFreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=r(n(10)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.grantKycToTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenGrantKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenGrantKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenGrantKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),h=r(n(24)),y=r(n(450)),b=r(n(28));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e}return(0,c.default)(r,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.getTokenInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.tokenGetInfo;return Promise.resolve(y.default._fromProtobuf(r.tokenInfo))}},{key:"_onMakeRequest",value:function(e){return{tokenGetInfo:{header:e,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.tokenGetInfo;return new r({tokenId:null!=t.token?h.default._fromProtobuf(t.token):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("tokenGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=y(n(19)),d=r(n(17)),p=y(n(64));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._metadata=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.metadata&&e.setMetadata(r.metadata),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"metadata",get:function(){return this._metadata}},{key:"addMetadata",value:function(e){return this._requireNotFrozen(),"string"==typeof e&&console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead."),this._metadata.push("string"==typeof e?p.decode(e):e),this}},{key:"setMetadata",value:function(e){this._requireNotFrozen();var t,n=b(e);try{for(n.s();!(t=n.n()).done;){if("string"==typeof t.value){console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead.");break}}}catch(e){n.e(e)}finally{n.f()}return this._metadata=e.map((function(e){return"string"==typeof e?p.decode(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.mintToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenMint"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,metadata:this._metadata}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenMint;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,metadata:null!=i.metadata?i.metadata:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=g,f.TRANSACTION_REGISTRY.set("tokenMint",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=k(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),h=r(n(149)),y=r(n(10)),b=r(n(24)),m=r(n(451)),v=r(n(28)),g=r(n(17));function k(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(k=function(e){return e?n:t})(e)}function _(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var w=function(e){(0,l.default)(r,e);var t,n=_(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._nftId=null,null!=t.nftId&&e.setNftId(t.nftId),e._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e._start=null,null!=t.start&&e.setStart(t.start),e._end=null,null!=t.end&&e.setEnd(t.end),e}return(0,c.default)(r,[{key:"nftId",get:function(){return this._nftId}},{key:"setNftId",value:function(e){return this._nftId="string"==typeof e?h.default.fromString(e):h.default._fromProtobuf(e._toProtobuf()),this}},{key:"accountId",get:function(){return console.warn("`TokenNftInfoQuery.accountId` is deprecated with no replacement"),this._accountId}},{key:"setAccountId",value:function(e){return console.warn("`TokenNftInfoQuery.setAccountId()` is deprecated with no replacement"),this._accountId="string"==typeof e?y.default.fromString(e):y.default._fromProtobuf(e._toProtobuf()),this}},{key:"tokenId",get:function(){return console.warn("`TokenNftInfoQuery.tokenId` is deprecated with no replacement"),this._tokenId}},{key:"setTokenId",value:function(e){return console.warn("`TokenNftInfoQuery.setTokenId()` is deprecated with no replacement"),this._tokenId="string"==typeof e?b.default.fromString(e):b.default._fromProtobuf(e._toProtobuf()),this}},{key:"start",get:function(){return console.warn("`TokenNftInfoQuery.start` is deprecated with no replacement"),this._start}},{key:"setStart",value:function(e){return console.warn("`TokenNftInfoQuery.setStart()` is deprecated with no replacement"),this._start="number"==typeof e?g.default.fromNumber(e):e,this}},{key:"end",get:function(){return console.warn("`TokenNftInfoQuery.end` is deprecated with no replacement"),this._end}},{key:"setEnd",value:function(e){return console.warn("`TokenNftInfoQuery.setEnd()` is deprecated with no replacement"),this._end="number"==typeof e?g.default.fromNumber(e):e,this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",v.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_execute",value:function(e,t){return e.token.getTokenNftInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetNftInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=[e.tokenGetNftInfo.nft];return Promise.resolve(r.map((function(e){return m.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{tokenGetNftInfo:{header:e,nftID:null!=this._nftId?this._nftId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){if(null!=e.tokenGetNftInfo){var t=e.tokenGetNftInfo;return new r({nftId:null!=t.nftID?h.default._fromProtobuf(t.nftID):void 0})}if(null!=e.tokenGetAccountNftInfos){var n=e.tokenGetAccountNftInfos;return new r({accountId:null!=n.accountID?y.default._fromProtobuf(n.accountID):void 0,start:null!=n.start?n.start:void 0,end:null!=n.end?n.end:void 0})}var o=e.tokenGetNftInfos;return new r({tokenId:null!=o.tokenID?b.default._fromProtobuf(o.tokenID):void 0,start:null!=o.start?o.start:void 0,end:null!=o.end?o.end:void 0})}}]),r}(p.default);t.default=w,p.QUERY_REGISTRY.set("tokenGetNftInfo",w._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.pauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenPause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenPause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenPause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=r(n(10)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.revokeKycFromTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenRevokeKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenRevokeKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenRevokeKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=r(n(10)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unfreezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnfreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnfreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenUnfreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unpauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnpause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnpause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenUnpause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),d=r(n(10)),p=r(n(38)),h=r(n(54)),y=r(n(37));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._tokenName=null,e._tokenSymbol=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._wipeKey=null,e._supplyKey=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=null,e._tokenMemo=null,e._feeScheduleKey=null,e._pauseKey=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"setsupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"clearTokenMemo",value:function(){return this._requireNotFrozen(),this._tokenMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.updateToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUpdate"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,name:this.tokenName,symbol:this.tokenSymbol,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:null!=this._tokenMemo?{value:this._tokenMemo}:null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,treasuryAccountId:null!=i.treasury?d.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?y.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?y.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?y.default._fromProtobufKey(i.freezeKey):void 0,wipeKey:null!=i.wipeKey?y.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?y.default._fromProtobufKey(i.supplyKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?d.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?p.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?h.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,feeScheduleKey:null!=i.feeScheduleKey?y.default._fromProtobufKey(i.feeScheduleKey):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=v,f.TRANSACTION_REGISTRY.set("tokenUpdate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(24)),f=r(n(10)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),p=r(n(17));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,e._serials=[],e._amount=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return"number"==typeof e?p.default.fromNumber(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.wipeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenWipe"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null,serialNumbers:this.serials}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenWipe;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0,amount:null!=i.amount?i.amount:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=b,d.TRANSACTION_REGISTRY.set("tokenWipe",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(10)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),d=r(n(54)),p=r(n(37));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._submitKey=null,e._autoRenewAccountId=null,e._autoRenewPeriod=new d.default(f.DEFAULT_AUTO_RENEW_PERIOD),e._topicMemo=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.submitKey&&e.setSubmitKey(r.submitKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e}return(0,i.default)(n,[{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof l.default?e:l.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof d.default?e:new d.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.createTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusCreateTopic"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),memo:this._topicMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusCreateTopic;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?p.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?p.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?l.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=b,f.TRANSACTION_REGISTRY.set("consensusCreateTopic",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),f=r(n(104));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.deleteTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusDeleteTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusDeleteTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?f.default._fromProtobuf(i.topicID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("consensusDeleteTopic",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(44)),h=r(n(104)),y=r(n(452)),b=r(n(28));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e}return(0,c.default)(r,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._topicId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.getTopicInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.consensusGetTopicInfo.header}},{key:"_mapResponse",value:function(e,t,n){return Promise.resolve(y.default._fromProtobuf(e.consensusGetTopicInfo))}},{key:"_onMakeRequest",value:function(e){return{consensusGetTopicInfo:{header:e,topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.consensusGetTopicInfo;return new r({topicId:null!=t.topicID?h.default._fromProtobuf(t.topicID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("consensusGetTopicInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(65)),c=r(n(927)),s=r(n(453)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(31)),f=r(n(104)),d=r(n(17)),p=r(n(38)),h=n(123);function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var b=function(){function e(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._topicId=null,null!=n.topicId&&this.setTopicId(n.topicId),this._startTime=null,null!=n.startTime&&this.setStartTime(n.startTime),this._endTime=null,null!=n.endTime&&this.setEndTime(n.endTime),this._limit=null,null!=n.limit&&this.setLimit(n.limit),this._errorHandler=function(e,n){console.error("Error attempting to subscribe to topic: ".concat(null!=t._topicId?t._topicId.toString():""))},null!=n.errorHandler&&(this._errorHandler=n.errorHandler),this._listener=null,this._completionHandler=function(){console.log("Subscription to topic ".concat(null!=t._topicId?t._topicId.toString():""," complete"))},null!=n.completionHandler&&(this._completionHandler=n.completionHandler),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return h.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},null!=n.retryHandler&&(this._retryHandler=n.retryHandler),this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0,this._handle=null}return(0,i.default)(e,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this.requireNotSubscribed(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"startTime",get:function(){return this._startTime}},{key:"setStartTime",value:function(e){return this.requireNotSubscribed(),this._startTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"endTime",get:function(){return this._endTime}},{key:"setEndTime",value:function(e){return this.requireNotSubscribed(),this._endTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this.requireNotSubscribed(),this._limit=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"setErrorHandler",value:function(e){return this._errorHandler=e,this}},{key:"setCompletionHandler",value:function(e){return this.requireNotSubscribed(),this._completionHandler=e,this}},{key:"setMaxAttempts",value:function(e){this.requireNotSubscribed(),this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this.requireNotSubscribed(),this._maxBackoff=e}},{key:"subscribe",value:function(e,t,n){return this._handle=new c.default,this._listener=n,null!=t&&(this._errorHandler=t),this._makeServerStreamRequest(e),this._handle}},{key:"_makeServerStreamRequest",value:function(e){var t=this,n=new Map,r=l.ConsensusTopicQuery.encode({topicID:null!=this._topicId?this._topicId._toProtobuf():null,consensusStartTime:null!=this._startTime?this._startTime._toProtobuf():null,consensusEndTime:null!=this._endTime?this._endTime._toProtobuf():null,limit:this._limit}).finish(),o=e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("ConsensusService","subscribeTopic",r,(function(e){var r=l.ConsensusTopicResponse.decode(e);if(null!=t._limit&&t._limit.gt(0)&&(t._limit=t._limit.sub(1)),t._startTime=p.default._fromProtobuf(r.consensusTimestamp).plusNanos(1),null==r.chunkInfo||null!=r.chunkInfo&&1===r.chunkInfo.total)t._passTopicMessage(s.default._ofSingle(r));else{var o=r.chunkInfo,a=o.initialTransactionID,i=o.total,c=u.default._fromProtobuf(a).toString(),f=[],d=n.get(c);if(null==d?n.set(c,f):f=d,f.push(r),f.length===i){var h=s.default._ofMany(f);n.delete(c),t._passTopicMessage(h)}}}),(function(n){var r=n instanceof Error?n.message:n.details;if(t._attempt=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e._message=null,null!=t.message&&e.setMessage(t.message),e._maxChunks=20,e._chunkSize=h.CHUNK_SIZE,null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._chunkInfo=null,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`TopicMessageSubmitTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?y.default.fromString(e):e.clone(),this}},{key:"message",get:function(){return this._message}},{key:"setMessage",value:function(e){return this._requireNotFrozen(),e=g.requireStringOrUint8Array(e),this._message=e instanceof Uint8Array?e:b.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,l.default)((0,p.default)(o.prototype),"freezeWith",this).call(this,e),null==this._message)return this;var t=Math.floor((this._message.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Message with size ".concat(this._message.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId._toProtobuf(),r=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear(),(0,s.default)((0,p.default)(o.prototype),"_nextTransactionIndex",0,this,!0);for(var a=0;athis._chunkSize)throw new Error("cannot schedule `TopicMessageSubmitTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,l.default)((0,p.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,s,f;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,l.default)((0,p.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,l.default)((0,p.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,s=0;case 9:if(!(sthis._message.length&&(t=this._message.length),{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message.slice(e,t),chunkInfo:this._chunkInfo}}return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message}}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){var i=a[0].consensusSubmitMessage;return h.default._fromProtobufTransactions(new o({topicId:null!=i.topicID?y.default._fromProtobuf(i.topicID):void 0,message:null!=i.message?i.message:void 0}),e,t,n,r,a)}}]),o}(h.default);t.default=T,h.TRANSACTION_REGISTRY.set("consensusSubmitMessage",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),f=r(n(10)),d=r(n(104)),p=r(n(54)),h=r(n(37));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e._topicMemo=null,null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e._submitKey=null,null!=r.submitKey&&e.setSubmitKey(r.submitKey),e._adminKey=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),e._autoRenewAccountId=null,null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),e._autoRenewPeriod=null,null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"clearTopicId",value:function(){return this._requireNotFrozen(),this._topicId=null,this}},{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"clearTopicMemo",value:function(){return this._requireNotFrozen(),this._topicMemo=null,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"clearAdminKey",value:function(){return this._requireNotFrozen(),this._adminKey=null,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"clearSubmitKey",value:function(){return this._requireNotFrozen(),this._submitKey=null,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"clearAutoRenewAccountId",value:function(){return this._requireNotFrozen(),this._autoRenewAccountId=null,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.updateTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusUpdateTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,memo:null!=this._topicMemo?{value:this._topicMemo}:null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusUpdateTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?d.default._fromProtobuf(i.topicID):void 0,adminKey:null!=i.adminKey?h.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?h.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?f.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=m,l.TRANSACTION_REGISTRY.set("consensusUpdateTopic",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(24)),d=r(n(10)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(19)),h=r(n(17)),y=r(n(931)),b=r(n(269)),m=r(n(435)),v=r(n(431)),g=r(n(932)),k=r(n(433)),_=r(n(432)),w=r(n(933)),I=r(n(149));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,n),(e=t.call(this))._tokenTransfers=[],e._hbarTransfers=[],e._nftTransfers=[],e._defaultMaxTransactionFee=new l.default(1);var o,i=T(null!=r.tokenTransfers?r.tokenTransfers:[]);try{for(i.s();!(o=i.n()).done;){var u=o.value;e.addTokenTransfer(u.tokenId,u.accountId,u.amount)}}catch(e){i.e(e)}finally{i.f()}var c,s=T(null!=r.hbarTransfers?r.hbarTransfers:[]);try{for(s.s();!(c=s.n()).done;){var f=c.value;e.addHbarTransfer(f.accountId,f.amount)}}catch(e){s.e(e)}finally{s.f()}var d,p=T(null!=r.nftTransfers?r.nftTransfers:[]);try{for(p.s();!(d=p.n()).done;){var h=d.value;e.addNftTransfer(h.tokenId,h.serial,h.sender,h.recipient)}}catch(e){p.e(e)}finally{p.f()}return e}return(0,i.default)(n,[{key:"tokenTransfers",get:function(){var e,t=new v.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId);null!=o?o._set(r.accountId,r.amount):((o=new _.default)._set(r.accountId,r.amount),t._set(r.tokenId,o))}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addTokenTransfer",value:function(e,t,n){this._requireNotFrozen();var r,o=e instanceof f.default?e:f.default.fromString(e),a=t instanceof d.default?t:d.default.fromString(t),i=n instanceof h.default?n:h.default.fromNumber(n),u=T(this._tokenTransfers);try{for(u.s();!(r=u.n()).done;){var c=r.value;if(0===c.tokenId.compare(o)&&0===c.accountId.compare(a))return c.amount=c.amount.add(i),c.expectedDecimals=null,this}}catch(e){u.e(e)}finally{u.f()}return this._tokenTransfers.push(new m.default({tokenId:e,accountId:t,expectedDecimals:null,amount:n,isApproved:!1})),this}},{key:"addTokenTransferWithDecimals",value:function(e,t,n,r){this._requireNotFrozen();var o,a=e instanceof f.default?e:f.default.fromString(e),i=t instanceof d.default?t:d.default.fromString(t),u=n instanceof h.default?n:h.default.fromNumber(n),c=!1,s=T(this._tokenTransfers);try{for(s.s();!(o=s.n()).done;){var l=o.value;if(0===l.tokenId.compare(a)){if(null!=l.expectedDecimals&&l.expectedDecimals!==r)throw new Error("expected decimals mis-match");l.expectedDecimals=r,0===l.accountId.compare(i)&&(l.amount=l.amount.add(u),l.expectedDecimals=r,c=!0)}}}catch(e){s.e(e)}finally{s.f()}return c||this._tokenTransfers.push(new m.default({tokenId:e,accountId:t,expectedDecimals:r,amount:n,isApproved:!1})),this}},{key:"tokenIdDecimals",get:function(){var e,t=new y.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.tokenId,r.expectedDecimals)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"hbarTransfers",get:function(){var e,t=new g.default,n=T(this._hbarTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.accountId,r.amount)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addHbarTransfer",value:function(e,t){this._requireNotFrozen();var n,r=e instanceof d.default?e:d.default.fromString(e),o=t instanceof l.default?t:new l.default(t),a=T(this._hbarTransfers);try{for(a.s();!(n=a.n()).done;){var i=n.value;if(0===i.accountId.compare(r))return i.amount=l.default.fromTinybars(i.amount.toTinybars().add(o.toTinybars())),this}}catch(e){a.e(e)}finally{a.f()}return this._hbarTransfers.push(new b.default({accountId:r,amount:o,isApproved:!1})),this}},{key:"_validateChecksums",value:function(e){var t,n=T(this._hbarTransfers);try{for(n.s();!(t=n.n()).done;){t.value.accountId.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}var r,o=T(this._tokenTransfers);try{for(o.s();!(r=o.n()).done;){var a=r.value;a.tokenId.validateChecksum(e),a.accountId.validateChecksum(e)}}catch(e){o.e(e)}finally{o.f()}var i,u=T(this._nftTransfers);try{for(u.s();!(i=u.n()).done;){var c=i.value;c.tokenId.validateChecksum(e),c.senderAccountId.validateChecksum(e),c.receiverAccountId.validateChecksum(e)}}catch(e){u.e(e)}finally{u.f()}}},{key:"nftTransfers",get:function(){var e,t=new k.default,n=T(this._nftTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId),a={sender:r.senderAccountId,recipient:r.receiverAccountId,serial:r.serialNumber,isApproved:r.isApproved};null!=o?o.push(a):t._set(r.tokenId,[a])}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addNftTransfer",value:function(e,t,n,r){var o,a,i;if(this._requireNotFrozen(),e instanceof I.default)o=e,a="string"==typeof t?d.default.fromString(t):t,i="string"==typeof n?d.default.fromString(n):n;else if(e instanceof f.default)o=new I.default(e,t),a="string"==typeof n?d.default.fromString(n):n,i="string"==typeof r?d.default.fromString(r):r;else try{o=I.default.fromString(e),a="string"==typeof t?d.default.fromString(t):t,i="string"==typeof n?d.default.fromString(n):n}catch(c){var u=f.default.fromString(e);o=new I.default(u,t),a="string"==typeof n?d.default.fromString(n):n,i="string"==typeof r?d.default.fromString(r):r}var c,s=T(this._nftTransfers);try{for(s.s();!(c=s.n()).done;){var l=c.value;if(0===l.tokenId.compare(o.tokenId)&&0===l.serialNumber.compare(o.serial))return l.senderAccountId=a,l.receiverAccountId=i,this}}catch(e){s.e(e)}finally{s.f()}return this._nftTransfers.push(new w.default({tokenId:o.tokenId,serialNumber:o.serial,senderAccountId:a,receiverAccountId:i,isApproved:!1})),this}},{key:"setHbarTransferApproval",value:function(e,t){var n,r="string"==typeof e?d.default.fromString(e):e,o=T(this._hbarTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.accountId.compare(r)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"setTokenTransferApproval",value:function(e,t,n){var r,o="string"==typeof e?f.default.fromString(e):e,a="string"==typeof t?d.default.fromString(t):t,i=T(this._tokenTransfers);try{for(i.s();!(r=i.n()).done;){var u=r.value;0===u.tokenId.compare(o)&&0===u.accountId.compare(a)&&(u.isApproved=n)}}catch(e){i.e(e)}finally{i.f()}return this}},{key:"setNftTransferApproval",value:function(e,t){var n,r="string"==typeof e?I.default.fromString(e):e,o=T(this._nftTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.tokenId.compare(r.tokenId)&&0===a.serialNumber.compare(r.serial)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"_execute",value:function(e,t){return e.crypto.cryptoTransfer(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoTransfer"}},{key:"_makeTransactionData",value:function(){var e=[];this._tokenTransfers.sort((function(e,t){var n=e.tokenId.compare(t.tokenId);return 0!==n?n:e.accountId.compare(t.accountId)})),this._nftTransfers.sort((function(e,t){var n=e.senderAccountId.compare(t.senderAccountId);if(0!=n)return n;var r=e.receiverAccountId.compare(t.receiverAccountId);return 0!=r?r:e.serialNumber.compare(t.serialNumber)}));for(var t=0,n=0;t0?e[e.length-1]:null,i=null!=a?a.tokenId:null;if(null!=a&&null!=i&&0===i.compare(r)){a.transfers.push(this._tokenTransfers[t++]);continue}if(null!=a&&null!=i&&0===i.compare(o)){a.nftTransfers.push(this._nftTransfers[n++]);continue}var u=r.compare(o);0===u?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[this._nftTransfers[n++]]}):u<=0?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]}):e.push({tokenId:r,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}else if(t0?e[e.length-1]:null,l=null!=s?s.tokenId:null;if(null!=s&&null!=l&&0===l.compare(c)){s.transfers.push(this._tokenTransfers[t++]);continue}e.push({tokenId:c,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]})}else if(n0?e[e.length-1]:null,p=null!=d?d.tokenId:null;if(null!=d&&null!=p&&0===p.compare(f)){d.nftTransfers.push(this._nftTransfers[n++]);continue}e.push({tokenId:f,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}return this._hbarTransfers.sort((function(e,t){return e.accountId.compare(t.accountId)})),{transfers:{accountAmounts:this._hbarTransfers.map((function(e){return{accountID:e.accountId._toProtobuf(),amount:e.amount.toTinybars(),isApproval:e.isApproved}}))},tokenTransfers:e.map((function(e){return{token:e.tokenId._toProtobuf(),expectedDecimals:null!=e.expectedDecimals?{value:e.expectedDecimals}:null,transfers:e.transfers.map((function(e){return e._toProtobuf()})),nftTransfers:e.nftTransfers.map((function(e){return e._toProtobuf()}))}}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoTransfer,u=new n;return u._tokenTransfers=m.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),u._hbarTransfers=b.default._fromProtobuf(null!=i.transfers&&null!=i.transfers.accountAmounts?i.transfers.accountAmounts:[]),u._nftTransfers=w.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),p.default._fromProtobufTransactions(u,e,t,r,o,a)}}]),n}(p.default);t.default=P,p.TRANSACTION_REGISTRY.set("cryptoTransfer",P._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(24));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(71)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(10)),l=r(n(28));function f(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(e=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;n--){var r=this._nodes[n],o=e.get(r.address.toString());null!=o&&o.toString()===r.accountId.toString()||t.push(n)}return t}},{key:"_checkNetworkContainsEntry",value:function(e){var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){if(t.value.address.toString()===e[0])return!0}}catch(e){n.e(e)}finally{n.f()}return!1}},{key:"maxNodesPerTransaction",get:function(){return this._maxNodesPerTransaction}},{key:"setMaxNodesPerTransaction",value:function(e){return this._maxNodesPerTransaction=e,this}},{key:"maxNodeAttempts",get:function(){return this._maxNodeAttempts}},{key:"setMaxNodeAttempts",value:function(e){return this._maxNodeAttempts=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){this._minBackoff=e;var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){t.value.setMinBackoff(e)}}catch(e){n.e(e)}finally{n.f()}return this}},{key:"getNumberOfNodesForTransaction",value:function(){return this._maxNodesPerTransaction>0?this._maxNodesPerTransaction:(this._nodes.length+3-1)/3}},{key:"getNodeAccountIdsForExecute",value:function(){return this._getNumberOfMostHealthyNodes(this.getNumberOfNodesForTransaction()).map((function(e){return e.accountId}))}}]),n}(r(n(456)).default);t.default=m},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(455)),l=n(940);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e){(0,i.default)(n,e);var t=f(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,n),e=t.call(this,r),null!=r.newNode)e._accountId=r.newNode.accountId,e._nodeAddress=null;else{if(null==r.cloneNode)throw new Error("failed to create node: ".concat(JSON.stringify(r)));e._accountId=r.cloneNode.node._accountId,e._nodeAddress=r.cloneNode.node._nodeAddress}return e}return(0,a.default)(n,[{key:"getKey",value:function(){return this._accountId.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}},{key:"setCert",value:function(e){switch(e.toString()){case"previewnet":this._cert=l.PREVIEWNET_CERTS[this._accountId.toString()];break;case"testnet":this._cert=l.TESTNET_CERTS[this._accountId.toString()];break;case"mainnet":this._cert=l.MAINNET_CERTS[this._accountId.toString()]}return this}},{key:"accountId",get:function(){return this._accountId}},{key:"nodeAddress",get:function(){return this._nodeAddress}},{key:"setNodeAddress",value:function(e){return this._nodeAddress=e,this}}]),n}(s.default);t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.HOST_AND_PORT=void 0;var o=r(n(1)),a=r(n(2)),i=/^(\S+):(\d+)$/;t.HOST_AND_PORT=i;var u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.address){var n=i.exec(t.address);if(null==n)throw new Error("failed to parse address: ".concat(t.address));this._address=n[1],this._port=null!=n[2]?parseInt(n[2]):null}else{if(null==t.host||null==t.port)throw new Error("failed to create a managed node address: ".concat(JSON.stringify(t)));this._address=t.host,this._port=t.port}Object.freeze(this)}return(0,a.default)(e,[{key:"toInsecure",value:function(){var t=this.port;switch(this.port){case 50212:t=50211;break;case 443:t=5600}return new e({host:this.address,port:t})}},{key:"toSecure",value:function(){var t=this.port;switch(this.port){case 50211:t=50212;break;case 5600:t=443}return new e({host:this.address,port:t})}},{key:"address",get:function(){return this._address}},{key:"port",get:function(){return this._port}},{key:"isTransportSecurity",value:function(){return 50212==this._port||443==this._port}},{key:"toString",value:function(){return null==this.port?this.address:"".concat(this.address,":").concat(this.port)}}],[{key:"fromString",value:function(t){return new e({address:t})}}]),e}();t.default=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_CERTS=t.PREVIEWNET_CERTS=t.MAINNET_CERTS=void 0;t.PREVIEWNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUenyqJ4UaFBbwokatcUqAwW3o3rswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU4WhgPMjI5NTA2MDcyMjIxNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEm5b1+oG9R0qt\nzM7UZnS5l/xxUNHIHq5+NAvtlviCpJL19jrW9+/UOy00Qqc6vS6tS1hS+dNJmpiZ\nFN0EHew4VDR7ACnL4LDJKmIHWjQ0iwvZo5kCpO0r9BtPN5FvaSxyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUeciBviJtjeuue0GPf1xllNw7qvYwCgYIKoZIzj0EAwMDaAAwZQIw\nJeG0H2HdsI1VhOYmJmYlNeKCNgAk+LMorzPmsIInVBO2HK2IrKfpReWDS/m5j51V\nAjEAxKBxDezJDqAZHTkTXCg+X9Q9V6J6M5yDy5IS90aCWEo+W8C1Hc6hkn2/NrvT\nPhwK\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUUfjO8LyXBdzrzbAe1Yl+d34IDsIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAERwfj4ZtD/wRb\nf8h9NEMu2sQoLFK9Gc4SQ8o6j4ccLYGdgOoVoq4zzy4Jr7ZtCTuACfCfhp7wy8ra\n+6cugccaSd6AzOKRSVZvQvkUTFKIoAOKwp6IhlU48rmi80MT07eyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCGhfVMP72Y0G5XUksE3dPgFHrzkwCgYIKoZIzj0EAwMDZwAwZAIw\ncpX7irZWyuujWRYUs9kLNgB2YLQK+n8r1fH+tJg3+zkcZ2pzhGWmpUUZWOzsDqGC\nAjBUbhlmrTc4LrEBN0EMiRYzfPD2kBZxusLBDIg/aDYERCMcsFvF1T9SsuasF/B+\ncI8=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUIo4L+7xe/mUmpKy4qOAQEIxz8UMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEoFgCjb1/7BUJ\nEXKIPJLlsOSp/39G8l92wOSr7h+Py7iwVwu68H2ykftMOq3tRwDRXZHz7ViqcIZ9\nlfMcS8sbRtVm9tBbNciVUqTLWX9nHr/c4PhKEi+LdgtSUr2+hHiWo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMR89BHC3yKC4YwUgyBVQUGBCprQwCgYIKoZIzj0EAwMDZwAwZAIw\nUs2BdslcScIwcmxoB60K7/1BPfQI8ccDZIMosas6U2zhinTnRKik1T0i+uHhLl8e\nAjA5apAwSPTnP7j3Bo/FOCkfjTqOjwp2lUqzDJYKolKsHX2sy8hX9MkYiY46SaJ1\nP+0=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUWpji03mJsR/16MP8BrOfpNz7aQMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE+KDMC99Q1rWi\n+FwlytGMS5qzTDytCvk+PzdONnDZ/weNSv4j3BXSo588IwhIxLtfcBlyo/+PmE1c\n5qGFXuMoZjGr22VpvogkRgPejD+Gawb4A2XHkMCD8NmO66uPw97po1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUN1qEI4eQ+WHavb9ypGV417NvhGowCgYIKoZIzj0EAwMDaAAwZQIw\nL0khkiDOiFRa3wx9l5JNjaSRePPc3ZaTaJQkPYeauMaLWEvmC/0e2/e9gPm5qJ8E\nAjEAgXQMko3vNB8VRN4XjyFJa8p/muZ/tLA15wPnb/boUmiZ+njDDSaiu8tIQrTB\ngHW6\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEJ7AJvrqDUBNKbssGoJtww3v+WowCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjAwWhgPMjI5NTA2MDcyMjIyMDBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEfgJ8w9GUWM3y\nyusedZOFQrgXFVsdtRsMSHbqyVCN6+Wow6SIjy29GRMSP5R2aswupFgh6lXJRqnr\ntY+hpRumFKsmSo+5+l8DBcql4rzs4utESTehM+Cq9LYc4A1z0UIRo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMCm3UqSbT01Zr23hLzCGnXbDa+MwCgYIKoZIzj0EAwMDZwAwZAIw\nFNcN7mKJo/bwpRT+y/KbYkCJsvljdbXzJOXXQ3e6J6R+0vLqcT25J/ry6pBZMUwR\nAjAswu29z8KJCSxnWwnPpHDmkRT15zG/xS+pAmx3oeQSqp6ZD7qpdJE8zzhbfe5x\nwAc=\n-----END CERTIFICATE-----\n"};t.TESTNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUMkNeM6Sbk9ZFYmRWZmSgTQHHWyUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETLLoIMZjEhDP\nKLHS7bJT4OTYGgR/8mB65yfx3KqMLYFF+q2SpWkIrYgUQLVEUEibVSnLlxRUzH7R\nszcKynpTwh0W0yfWanZKQg+RWoKkEYlu2GvkUtJb8cRVM9NLmJUeo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUSrIepwFx8gZ8/G+WGaxs6GgkMtQwCgYIKoZIzj0EAwMDaQAwZgIx\nAJxC0fjB1OrF9vkCKsfnPS3Z+1hscrZhEDG38NxdLEAfPQ5VmyrSBgJy11FBp8yB\n0QIxAKzbge3Lf7iBMwYwm+2M/GiVgmHNMLdtrYuerWpdbYOHgRNAkyt57JoThn0u\nTzkd5Q==\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUGLriiLPacglp6U+BtJcF9TI7xEUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEXhR9cb6mH9AE\nGNSGk3OkxN1C/JW49ddYZ/XWD4InjS8D1kXmB1Y39v1mF0L1loG6lDT8Zp46zrj7\n5zMONXZeD2b0mx5hHhtllPTpJ10Tlt9FDoyFbKwPRQ/SAPNADfuzo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCaKtx8RZ1XJO9rmZMbIcFJZkcv4wCgYIKoZIzj0EAwMDaAAwZQIx\nAPhDW0VrNSmq8hODdhIVV4GyvpYhp3Fksg+sZr3DmUatwn+ptj+X+9IzgPl9QYE3\nkAIwcy2ixgNkjC/DYVmgT4MpUnLneLK0gA23Vj2QwACaTH99H/ybqUH7srj0POB9\n5wvV\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUEMduome38hvAuIKoGjg/tHatQZMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEl1olzP1L4WgX\nd7aujOXmTQZt3tEOGzkMa3S6qJwISLBI7Tb9KaW8zYIe9xWBVAwphCbD0wn9xpPV\nwMr4uTn+JocugYBbe2YoUGzWTkxWnOEKXbh/nQJCe3XE/C0FY8fAo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQULfw7LVtTiUDVIvZwhhWW0soQtSQwCgYIKoZIzj0EAwMDaQAwZgIx\nAID5v3Lo2zlnpFzTdJFqBpw6fV+vmpI+JBj61f264J/uHMbELiu2dwxhwWaMElX7\nwQIxAJxccFr7Bf1KjaMyT2dq75zQzFuKDMj9x92yAqM2Gas/Yay+Ccpm8FBn7BFl\nke1Qwg==\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUcCg/gZGxk/UjYkhW1jg4Zki+jfwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEOSsXBZicyrxy\ntHJHKh04Mvu6SKM49IC7rAXw5CjlOod5OTeHg0fa5vVoBME4mlWP+LsMMqf8welC\n20b4wMwUC1Hnd66v8crX8L1wvZ9EmKLTvhTd65bS5zloMiSbpdF2o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgMMwqaGuUT6JCH0gsbqullaW6/QwCgYIKoZIzj0EAwMDaAAwZQIx\nAMggJ1eMmT7C14z7wHCsOdDOgmzg733+a5dsuAcxknoz/sQLN8wqy1JxShWgEIA/\nxwIweTDAX/4JZnr3mlSC57lYXbHk/c319VfN9Ybxg0FaDXa8tOqg7Ml6Uu3IGujQ\na3eY\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUXADwhiD5acpA66GPoXuAevBfZBIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEBgLhLiGz8qWu\n50vzxSyQkrmhpxuHBJhpGzA0WaUJdAUlaUOL1753ZxxA08wUmcozILNEnMaQ+ROn\n+fuGctv90ZcrSekODjxjbKH2ntVLP8xwkBRCTJ0WRBNenxxBD438o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUhYOOD/z3ty9O5GuSTXnyujIqBRgwCgYIKoZIzj0EAwMDaQAwZgIx\nAMxbZ4gvkXaORauQFUPRYwOJrihWIA+3ttGDua//YfEbshytQ8b4L65W/1Xs8eOd\nDwIxAImwTzRam8tScdOzmuGgPcML2lkETMpMA2rZYVyEL/VNktIxvB2oE+4M0v5l\nr8IbTA==\n-----END CERTIFICATE-----\n"};t.MAINNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUZWoT9TlgbZy+syLbqZhO5++1cVgwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8NhDGK/dgWvD\nRHEJ8af7CBDdhvujH5XIrLen33GTLY8DbJwJW2jdsLGx3+DRVVmeNQZxCbcGj0e2\nIyypkG6s0mtnmeymD8mI3JU8m1aZiuIptZSH3Bw1BNn2hKU4x42co1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUbYGliiNtMkGaroQxXWCl+kYHDBwwCgYIKoZIzj0EAwMDZwAwZAIw\nImTOEYu0y73Ggt4NAjFFsN2sV7CsEL3NoJqJ7MZ6U+b3Ax1hnc1eE0oei6xH4VNF\nAjBB4iZNvAn6Esiu4k+JPlYuMesplgMv33fU5GsfvLIovN8pOJDe0c+CUmsnfGbP\nOsQ=\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEGWU0F4aKffY+le55ahQaScDYDwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEqW6TqxMmjL3h\n9AVBgfVaFRZlXUcyWa+QYhzxr8sksgJqfDbmGtdaHIdiL1qCPuC4v4G3qrAbXZRm\nTYNo5Lz0X2ic5pES6DbacdjOgHH7TAY4BVKkuVrydln2jjhh7SmBo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUcBlY5a1rV0H1iQuJMwWxrTEWQ6MwCgYIKoZIzj0EAwMDZwAwZAIw\nR+mY9B2U26yD44s03hjz4TlpkyXbVfmgL3Elqo3lrWDJtvT4zpjGjxg3Q1P3SpZQ\nAjAy9DRVrZPzq8iq5Ir7B8XgLQH5QL7SQ3tUL1HzXJYOukvn9Ofr+QADhpb0oJLB\nKug=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUbxzfD3ihIK5snumqqKtqtcBPSSQwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEWoAjWmW7vpUr\nU69wRbK9Firons4kRoin6N8lMjCD+xzsrsT6/wycpzC0F8fxfIvOYSMWRtinhOKl\nZAxp60OWYP87iH7RqWBAnHIJZj/znKTGd+8Sqp/RVQmButFHg/+Go1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUTMtwuDzI4Hun7SPp2Nb3scjUUXkwCgYIKoZIzj0EAwMDZwAwZAIw\nHKAgaX39Lgc+4/xHXzZR9mi2p3pf6CDO85Xm56UR/t48HnBkRorR3TFCBXACeIIs\nAjBtXglpDnRf6M+nVBlxLdwCQXiwr6vQJ9+dUo+suNkZ1JBmtHypyIqkG2yT4z9C\nLcs=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUPwXdJvpCJYO9lm6uQN3S1aBi3PswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8PwBQ0ywu+0t\neIYbaiKwzGEScQMOYFYAMw49++6bGRiH/XZjsypqlJWy3F/mB3+HNVZsqgB61Jpj\n2p98Afkl57MYWhWM29t/x5qAQ8LhKGu2k+BOnCcvHDU2pR+fmFSOo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgI4r3/iwzFN2wh76y/4XDBk7wgkwCgYIKoZIzj0EAwMDaQAwZgIx\nANAjwHdTWYMCCjrtb2NWzDpsKjf3m6ZcaxbEcM1ta/Zji/4x0+VRZa917CkfaEsr\nLAIxAK/erPvIXRU9eNaK/TAQqppSRaF35G6iNnYjQZzfjTU2DczhT4oCjKzGoCHT\nkI1zOg==\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUXUGzJj13Ck2Cp0BKauLOdzgCPwIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8Ee64Tbu53i/\nKsuLOJG3GQ4e9gQ+9BtEy7U8kfFzRHh6Ejn7LOW38ZdKX1HP4zXuUusjNvytqDvr\n7eclitqnegcEOkIeFK3wQwBoNILuq+r4LRVi19V+AIcl5w3qkJvIo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQU2tbfu7hd7USgbS2WsG/6BduKEAMwCgYIKoZIzj0EAwMDaAAwZQIw\nRw/BOLoScmU7P/1JnNPsGarmnvcuJrokAv1wk6j8s5LGuQHReX+d+O3RPLggwcAY\nAjEAjoZnt9simul4cVcVy4G/0f39atanUva17gyzlYXEYx7B6UloxLeEcZhlbBf8\nGjRf\n-----END CERTIFICATE-----\n","0.0.8":"","0.0.9":"","0.0.10":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUNauEDBCmP9igXLWtRpzkQqIGo/wwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDcxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ5WhgPMjI5NTA2MDcyMjQyNDlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA3MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjbkoJBshQXUy\nqm5K8ldpTDR94Wk8iEM7QwHfceIxK5pPgaVGRkoJyVLSK5LMH4jyaIHUrtA0lIBQ\no0MsYkq7TOOm7+vo1Yrd8EMbu5StMb3gsXUrj7E/SBKIxULak6hCo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUyKHMzIBPRV/mrgG7tIjzOiw2xbUwCgYIKoZIzj0EAwMDaAAwZQIx\nANsigVtLgTdKWBPVJPstWA0H8yihf0/dmM3GO4qp5keGTWz/O3tnom4iDB6eSrcA\njwIwU82Dh+Wxl3kAD3YJH5VhlfHTm1rPlJETBHZgvPBOYqippao6+WZFEpn2/IDC\nNTjn\n-----END CERTIFICATE-----\n","0.0.11":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUWtnJm2kswnXYu7/S5BnnTQiDRcUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDgxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA4MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjY9Rl+s00xFV\ntdTpAixLR4kJIGLfSLOdm+ofU/KuKMRSz5x1ORhIicppKZK24U5WLGXQU1fKLvxX\nOmqwqL+6oAONmiHszqVdhWne4QPUba0yw7rf1/OI+IFF1HRK3shQo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUb/htoTodbq5hjP5RNlQ0rkKwWB0wCgYIKoZIzj0EAwMDZwAwZAIw\nbO+9yArr21XKXjYHPadEAYINDxgXEC3W8e3X6MJsHCIZITddWWOyXRNFhz504vN0\nAjB8aBuhrKcg1b4CrQDZQcosyVPUGIZKkXdQFfbVdivKrGZvqLS+GdPLd3v2MmHY\norA=\n-----END CERTIFICATE-----\n","0.0.12":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUHBsegV0bKtwpHRoOnnhbK7CTHxMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDkxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA5MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEK+ZAs/00RXaj\nbuQJJy4zwr/YTj9h5V+vbY7sq9Z1RByEwTRRQOI3OuzzMq1EWKkVJKF/QF5b4yda\nx6W9O/NT4EjBXH5XR5X1V6h7aT01YBqsxgMxuUP7kw9K+fW4k6Zao1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUKbecoYirLjf2O2oPkoggEE2P7FcwCgYIKoZIzj0EAwMDaQAwZgIx\nAP67wsVOkeFo/9QRo+PnZhzEvjOZ/+IUoUhimdljcVwn79tzNP+obf7VW3Oq1wH7\n4wIxAL65+WmMTMoI2cN7TCiL7G/W2ChDsASeHfaP/4e4ZViNONWotlY9i9aS3Kwt\nLTea1Q==\n-----END CERTIFICATE-----\n","0.0.13":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUBNxMZRKru9jzFA8zsOAI4xkMFCMwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEwMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MFoYDzIyOTUwNjA3MjI0MjUwWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTAxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAShUi9sglwb\n0U8QUrGOXJuHRXA9HP8RypkgNBwNRs1YcmPLcuwK70unWlkB81M44IQ7z/dG/0cW\nhfFdRI5x4jAeiUFivmWmMLT6lJMPxJ0BkWTGVFVwI3SKcgSvHP9pNS2jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqIMCDzCKKwJJLCXhu9YJYPw6lsDAKBggqhkjOPQQDAwNnADBk\nAjBl0bJG2A3443ybvrkKjWu8do6nDSR08/M49+19QfA1aDw0nb2sdCOE+xNitpQ9\n7ngCMGuQHmnKA2EyOIVpNl2EtRoG+vdmLJQaoukhmCWjkGrQHkai473tGa9cRZ/8\n+RZFzw==\n-----END CERTIFICATE-----\n","0.0.14":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUJcQrEmPlIh0KWwiC2X6lZ/OdNs8wCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDExMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTExHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASxRizKJSbB\nHmG2amvTHLCyExJngCh42agaFkv5Ab9mZYbqZPe0nUn/8RlVAvEiRNggCMYXC6MU\ne4J6D1aeLhYaa0UY8Fmxd20NUjAOWhJgUXds4ILMMVG+pevofeC8AsujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBS2Ic+LU/6Wssns4Yyf3N6E666xDzAKBggqhkjOPQQDAwNoADBl\nAjAH0JMX48GD6vThA6FUsVnJmBID376PRZgxhuZvn9C0HawvNjZVQTkpzpYCwmia\ndO4CMQCotakNxyiOxu/BbnPx6ld5+dqVCugsfqClhUhy8ROpNHfKxp3rW7HopowT\nWiMlIyI=\n-----END CERTIFICATE-----\n","0.0.15":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUSFFNFv1iquxd5txlWA3PlkNju2EwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEyMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTIxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQus3nAPZkb\nja4Efo7iD4s8NLsFwEwQXQBgBGIJwtA2JRgLyXeWpuu125ib6qJzT8CHvQZhel3b\ncwYWi4f2JpabMDepHELLxwZ9fILnAQ8GiHlzhrVq2NI15DI84dXVe4OjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSEO/JFC5/fDcT2gtipDMYMMTd96DAKBggqhkjOPQQDAwNnADBk\nAjBalAU47XQL4ziHD8lj21pcp3+R5FKzn96HclMT/vraknCT1Sl+vCf6EYsqmi6Z\n+RwCMDpxL6P6OMqyE+HzAeYQ4Fa7MYEQfZGMjka4zxetBLvIpwUCT4EAO8gv9GoU\nwCBUzQ==\n-----END CERTIFICATE-----\n","0.0.16":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUdnkil4P+VthVMnqygVwGKLt7VfAwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEzMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTMxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARUdz9ig/iA\nhEAth2YinHKY6WM63BAxUVItzgk65l1T4wTzwoK4XEwclY5vIeFmZy2e0s95lWgq\nSI68VS9gmJ3xp8Q9wOel/bvuF2tvNZmF393TeoNQQVHrQM1yJAx+nPyjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBTBFdNwHKSRDo6CxfA1aglY0N8joTAKBggqhkjOPQQDAwNnADBk\nAjAqPIel58Rcl2kDxZxJPD9mK9xW4TU+d2NuP3n140TQ6nPlw1OwCPI7a4i3wfEe\n08ICMBbrpNRdFZcvy76KoLPfTPvqbtWWaR/0tLZg4Rjj3x7SYgUg3vrVDmodHGkb\n4T2Raw==\n-----END CERTIFICATE-----\n","0.0.17":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUDg+G4Ep+KEmIo+nCOY8DjFX60swwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE0MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTQxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCQRL5xUUh\n1bsTXRPAf/qVFWEOxsJTiMlF3+UJ4MajWE5zmc2QNIzqj7NE24z3fNxgjViNK/8+\noBNQeqXfyJ/4etNMzTyG4JTsvWRAQ3aR1J4WDbfwpcgw6AIOKq9OLP6jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQB9V2fygf48zyyVL3bnAxCLDUV9zAKBggqhkjOPQQDAwNnADBk\nAjBonlThjjvi3fg7ODQcatPHBkp8Yon/p1ukm3YzYA3kitqroXU7BkmwRae2fbqD\nTTICMHI+fAy+xWGwXAFNcvNTop11IIoszcgJJY+1Mc2Q/USk3pP6iezta+rvnaWu\n7JySHg==\n-----END CERTIFICATE-----\n","0.0.18":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUBvI2Vq6O8yXNzbQlj6uQOdpd1lIwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE1MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTUxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR+jFDSzCdn\nmMQpgz/vrmD/xioMioumUmyLAkB+voTNsMAOtiaDVbvJty3b4SJETv5tuZyaF5Gb\nQAYuKsP7X8siCCVLZC9i9nCg46NHtuQkEmw1pzUUDmYFDfSV2tWedNqjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqvCmoaVEp2d9WPctby+ooPMGmvTAKBggqhkjOPQQDAwNpADBm\nAjEA9fQ2OFZa7fAQGGYydfVaUF0ObxKj3T+hyl0jiCKLe+hyxJSrXCFS2BM71UiG\nZMVxAjEAmCzESBzTVvl4Uv3TyActGTijTCqTNpN3gJmQbZYjKVtqf8Wxj9WeH0pM\nE8BlA/qE\n-----END CERTIFICATE-----\n","0.0.19":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUZBwp7UPLJkDgngbUIx5xjbAn+7YwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE2MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTYxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCVYu2uF3T\nkCkyRP0FfXVyyTA1z8DFqCKGrcODgGJuVAk59H6u8FIRsNipkb3BXFI0xGccok5X\nT+t5bMaGDHYJ4fjU78UtPNmankQ5HoiMRJpy7Vn8mzizUzUqGpnhu6GjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQzE6RGn4YlIbdrl0niKWTtJzfXoTAKBggqhkjOPQQDAwNpADBm\nAjEAobnXnwlNGNWoHscbl/ytUBSyjC7V11sLYJqtORSRX3k2+bFGsg4ltmOVjTdd\nlXatAjEA/Ja3jufmdruqfLa6qigXuYI00YaI96sOwNhdHlnksYfqF41nDe4BsSW6\neQ6N5M9d\n-----END CERTIFICATE-----\n","0.0.20":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUE1ZRB5n+Yby+Mwgb2xAcVfTZ53kwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE3MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTcxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR0OfTmHjxT\nkBiU3GMa/bTvlTswCDAuFQGIIpMWHaf6V4ighzmn20jCg0AVFStb2q7YLRr4HUx8\nToMzsd7/yjl74BwJgfZnL75T/JInwyMgOBiCTXEf6qVDvhNzL4QJuVujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQFKRUUmdFcDFQzBN9XqMvLgPd7NzAKBggqhkjOPQQDAwNoADBl\nAjEA5MUUXSehY3KVIv/2LMgrqo1kPiV39fwYuLSnsMJ67wK8yN1NAkkycg6q2K6g\nrBIvAjB3J3a40TINOZTYG+eQs+MSWyfANJLRuJTEOorXzMWM6+05+JYhPnLA8hke\nCRfzmSw=\n-----END CERTIFICATE-----\n"}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_ADDRESS_BOOK=t.PREVIEWNET_ADDRESS_BOOK=t.MAINNET_ADDRESS_BOOK=void 0;var a=r(n(443)),i=s(n(64)),u=s(n(31));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}function s(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var l=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ad0070a0e33352e3233312e3230382e31343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340acf070a0d332e3231312e3234382e31373210a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ace070a0c34302e3132312e36342e343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ad1070a0d33352e3139392e31352e31373710a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad1070a0d332e3133332e3231332e31343610a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad0070a0c34302e37302e31312e32303210a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad2070a0e33352e3232352e3230312e31393510a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d35322e31352e3130352e31333010a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d3130342e34332e3234382e363310a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad2070a0e33352e3234372e3130392e31333510a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b35342e3234312e33382e3110a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b31332e38382e32322e343710a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330ad0070a0c33352e3233352e36352e353110a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d35342e3137372e35312e31323710a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad0070a0c31332e36342e3137302e343010a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d33342e3130362e3234372e363510a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33352e38332e38392e31373110a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad1070a0d31332e37382e3233322e31393210a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33342e3132352e32332e343910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390acf070a0b35302e31382e31372e393310a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390ad1070a0d32302e3135302e3133362e383910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a60363465303938363135626634303566376564356134303133343436623839633438386366636436626232356134613637366463373765656131316433336437303236383266306136396138303330653863353737376430653432323033373939")));t.PREVIEWNET_ADDRESS_BOOK=l;var f=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0a7f0a0c33342e39342e3130362e363110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a80010a0d35302e31382e3133322e32313110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a81010a0e3133382e39312e3134322e32313910a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a82010a0d33352e3233372e3131392e353510a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a7f0a0a332e3231322e362e313310a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d35322e3136382e37362e32343110a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d33352e3234352e32372e31393310a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a80010a0b35322e32302e31382e383610a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a81010a0c34302e37392e38332e31323410a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a82010a0d33342e38332e3131322e31313610a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35342e37302e3139322e333310a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35322e3138332e34352e363510a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a80010a0b33342e39342e3136302e3410a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e35342e3137362e3139392e31303910a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a82010a0d31332e36342e3138312e31333610a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e33342e3130362e3130322e32313810a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a82010a0d33352e3135352e34392e31343710a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a81010a0c31332e37382e3233382e333210a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a83010a0e33342e3133332e3139372e32333010a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e31342e3235322e32303710a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e3136352e31372e32333110a388031a05302e302e392806320218093a60363938333261373361333630326538643166626535616435386431633236333761316236373264373165653837616631306462363438656239316166623232383235336231663437653537643364346134346666353437623333393461613232")));t.TESTNET_ADDRESS_BOOK=f;var d=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633435363165336332373863643635306538306334313363613434343233633163336331336366313437356636663639373664353937616534333262343961623432303836623739623834313332363035346238623364636635376438666364373962666330353831383363613234636434633163626335373465643131313765326635623762336336336365376230366439623465666366373337353633376234316665366635336338313162396465363134336633613532393537636466393536373735313230623333373033666635373632313430376162393537356263326433356330643434663039383366633165663633613466663532303966303730633932616631303632393536303163393662636564303634656331393031393730313963363831316334633864643830636234663461633731663961643736653761633839343536666266346630313166393061626432643930353336653832333436353166366265663932376533643564386237626634353930353039383362656361336162656632613964393761663334353737326137373430653936393932373562303138656130646632383661646436636539323365663930386662653736326137356632313131363836326462343464336463613164343462346432653864633130363663353030366262356137643935346164323535643462363033323733343735653531316165623438356430363961303637633061623563323435333863393333633036623561366165666139343030356332393135323133653463636461653663393432663632373266396464353238326436623839306631663230656664323339396364363734393234666135373034366163366461333265373339353161373331313365393166633262376666323965343835316238336666333966383362613965633666303863656664626236636262626666616266646661613931643933306637323030646134383133376333393463626431336537303165636463323631366664323162616436383161613466303031303230333031303030312804320218073a603665396138616263646364653665313134396133656265313766643538643839303538333961383664623732623036613365613230616131373666383638623235343838353261653432336437613963366237636666396537313436323961320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613163343037373135343330336363373263346662373639326333663934323531626465633132333961316637613839373261626539316133353332336662656361363235613766666165363430366338353564633261663231313039303062306466306536653664623736333634646661316666653835656461353637393336653239383562383536333461333261613532613635393964643663333062653166376136633562386635656563616632363231643861343539363832666364326462616164313536316431316633336663636237663535303061633536386431363564626561616365333238366432383934663634313239643738316436633732666437643539396339653164336166346161343333633233623931306661653463343834313634316636313532366164373837656265613533393837343136376539643361373363633066623135363432396431356563373633613664306630363131356137396239616637383364373762393864383330393661613437343366393734303864396531346263663464646666653435393137363838343762343063623864613763613337353235366432623933356430393566653235326661653831666636653337663834643761393064376535373061346638656633633764373636656564613437326630393230313939303135613839303832353961383733633534353466636262646361643265353238646538353435356234303833633764633461646335613938386530636464666463313539643564373132616264353434616137336563303239303839383134633938613434663236666330363434363539633138336533313834616132373266386431646330626661336530613536303438346362303535626134646262356363333339656338306264313164363432646333613730326538633730336162323139333038346439626436336630646665313261343333633235373665616637383163666164383637656637306264613631373638623262656631346635306336633362386230393666303230333031303030312805320218083a606464336233653763643361323537643832373665343635333533363162303138623730303931663438363635653832303031306538316563303539326236396264346265316662643765636435303964303730313364643034313238343266640ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623263636163363561643066633736343561383137626661626334383761643765343133313165376133313938623337666238343264383463333935623366363764366264383438663130633666303363323930653866376461613864303031613834343164633335326131393136306133313933653638623832656466313961653637363933613961333364346362383765373839613130373037313535313565613737326361613862383661353639623931633534353038333564396333353466306461636563393766653737303931623435623134373639386237663836303134323264636432323631653932386465346461633963343264636261666466393663303732333362613330323730373666333763393639653865643330623662356438663530333462653764393263353936663862653836316535316663633361323432626639643862653965326139653865306631353565626366663233656666613763643537633130353432383131643830373736633935383535323666646230656161333465653139353564353131313933393066653837336534633034646564643239313635383834623938623436333038373838616537666334643461613461386663396263323637346261333231343933623632343435356164343130633164653731626339356431643931666130663230313431386137393565333039656166323937623639396266323763396661323736336364353963656230323165313662383230306331303630663238313766643833636663373637313833343839343631653335393932393162333830643665393339626161346231393233326136613237326464653635316638303436666463333464623237366137373764366662326265633332353562326363323434623461663536366231303566333063363530366464616530656233646564646366393437626362396336306530303039383466336234613863366334656434626639306263313933326237663934646333616536623336303030386562393032303430663962303230333031303030312802320218053a603561383634313561303861306138323566336232656237353031303135353230326533313234336665343161303333333834653738633138633131653565386632303964343933623062326664343565303662333734663262363964663564370ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613365333762373663366364356636363232643639323434343464313263363737633339356632623539303266336262393862386138623530353561373037373036636130323863643735303630613264383730326432643862303439343762646366653061386331343161613238343462316530366536363139303031326538623633323661623066613331373937336263376362346432393439663231303861613034633462306339316261613537323866356235363232656337356162663537386131663762343165646532613637656264363963313865353831666466396336303230616330646539636132633331663063363436393030333331316662623563653764623439633738376531613764323761613432356565376238346461376536363933396639633830643065383266636535356530326466633862356337383431386132366161343336353036393837313962616663656366306264343930303061646463666134303537303862646265666262313937343964323264616230303765343464343565613233623130366638383334633135326532353036326434636632346666323533353663376562333732393130353339336662343962616239303461303266306630626234313763643931396433353238393031323865366262666634666163396639306465313138613937346632613664643031653033326137396231373866363066613166636262643032623537303466623436323935633135313930383136333733656464363633356338353639373866316239353033663166373362346230626538616261326564316665656164353939353362663832656664653933613334373161626435356364613362613861363733666262333739393734396662303036643030336630653633663636356333343631643261376232396463386232303462613539613635363638613436616532383738663030643166393439306466396532383066656266343331356561303465616135363861336139666434386336326336336236656364613639303230333031303030312803320218063a606434363430333938303337393230373965636364356134343331316361306463323262353065633839356235366535336431326232396637326463366462613363616665326535623831303466626461303338616635623434376430666231320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393361323135636334613761373232636165396331336162643633366466393963636565633661663964623436623639666135313637313665663530636532343930613938316530396162303139636132636234363831316235623631396431626431643565653666343661343263373737636264656536343261313438346563646635646464333732393634326333386336643433613838353838373434373566353832343434333636346330346466656439623839303435666230383565323563336566636234383431373333656666376335323963313339653639333530633263643739623263386431393637396137313265346538636166643332363735343162383332623365313061303132353564656636396466316539643362386438656166303331316465363764356531326232366464303164626264396433653432643335643964653237313330326530663166363964383763626337616361396538383637653964343238643363616230363636656234393064356662616233306266663366373835643033663230373261343362623962356535343635366135393263623631656166643561356566323834633763616563363666376634373332356363306434633164323766363631643861373438636135303731633036656631333464666639366634303836363838333636643436386132343738303031376530623536616261376661623433623362376330623737393036666165353438326633323831316332393265366231343435346531346238393438303161383661303363633437373934646430643734353237613732653432346564336166613034383939656362396136336632613961653732626537666139383961646630643635613332633835316439383031666334313034386466333335363466633762333137303765633866623830313430666537623761316661313230626131636236363033323463656666623462636332643962623764653063663534633831396632646433626365616465633963323566356531396463396231303230333031303030312806320218093a603365303261363732306334343636353965383633303564353562666565383230623335653635306665636163633535333039373435356532633465303332636339646564313662316262343464336235393262626163623663326266663165360ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303930323539663465336439663066333934323536353438653963373330386231306237333430336363393039346439376164313531623737303631373062393737326365623634643636326563656639303161386437643135643331396135396338623731303731616363643839356237633933363130646336393736663637633465313732396261383337336162376535326133663363386632363534393164646536396436653039393934373065373434353938313133316264393663333665363836353230336662326562643564353065616461666237323633393664656331643931373438393862346539626530346337346433303466656164643963626433323334633362376633333036633939636230633333396663323539363962343164353861326237636663313833326532323664383163313936333939336532323535613038376431363938633033643432313062643634353830363434643039356361373661613137393465646434306331633837623566383261386533396636303365393731313662613034353738653765383033343634393564373835643465663763663737313462396562366635663965306239613934663462373338383436313962393237346434613935656631353735346138396439376566356331613838623664363933653061383065626435333766633963663063613931643163363264393135646537656438313862393532653634633230303239336565386532383461343136613732613365313266633764343233623135386639623439363630636263323436366662656430666564326532346531303266646539343265623463666439346265633436643364393066633038633339666563626130336530636132343634616536363462393739353135626132396531663730326333666537303262653739333739366438656462313761613438633039323930623032343534396630363131663561653233656437653136343432646637643164616432323836633262623039643535323264643365643639386332663032303330313030303128093202180c3a606339373462623938326338313931336237333236643561336639646363343836313261313566376161643032663230376230663130636432303137613666626666353830336537636139626662343730396162323862366230396435623133660ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303962646438653834666164616133353332666334636530316138613137643463336232333266353061393739306532363236383465646334383233653831356131626435623230656365613762663536653239663662623762383331666233626636656663643134373566306238656435666662306231333835623936643136366236323966303339366138666566356630366534626361323565653461313334306565323633613464396262303230643866343732333036663364383836313338646537613031396530353962643061666339303263636261316132313361653264616136306338613031333735356665306134386530333466356234303233613264616465616138386335343836383335336163376137613364663132623266623634313837373465396231346265366561623863633237623838303132616436313632646137346530656562313631333539303566343337333734646162383538366437353061323662626433616332346165643837386334643533653635313037326338373165393464376163633537356339363733383137333461353366656166346437626136626364643234316363363435386336303837643836333032616132353163303466366435366239633332643764393636323437353065643035353738356430373733663433646330393962323863393232383131343865366338316632393766663964313636653030306163303462333132343138363737356663656637356635656261306331303332626631333064663663643761343632313164306466336530353834643932656136373334396438343930353038656234656638386635346338633364343836646538373139663130666139366665623835636337393630373663613738313331386565326439656439303363613133333630343063353961643931613464326636393865393130386165306564623962316362393561643333623139376666623138626431626138623536636265653261616539353835656365323038613165313462343835363436333032303330313030303128083202180b3a603937303834333033333130373866353638326337663332343464383263336233653238316139313837393537386465656163646363326132656265353431616631383831313561643265383338363565356635643234376234613138633165650ab50722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039303938383635646566326632616233373663376630663733386331643837613237616330316166643030383632306333356362366562666362623063333330303331393361333838633334366433303233313732373031323139336262373666643330303462383634333132633638396566353231336362623930313130313530396465616239346632366137333265363337393239646134633463623332353137653361646262333831316435306163346337376331666365386236353136303632313566333437303766336537323635353435653538633839343630396532383337366264623737373566653330343339653065313539326664636230633365653163333035373733643037326136623839353765616663653161313162653936356564616666333834333336366362366134346563323561383930313036653632343735363766373662353530666461343832626165633633303764363938656338383834316664363666323366323130653437623861396463626136626134653166613731366462333363383065333038313934393664636235653536303966623665376336313533373962646465643432376539323331623932353463326261663934333630386138366436393861653961336338363339646638383764366636623561373133383564323433333864393131613231326266373166316532616363386231383662393665633865363963383662366430353832313737373661303963396336383935336564623539313635373862356132363362326634363965336230633037656164613731613434376565613766386663316262383037343235353536376237663062643165366166623033353837313863393862343239653234623232393835393666633736636636616633393663613934333464373932366563376433376434623932616635366434356665666638313936303935323234613931366331666665366236363765323535666333616338636363656639323064633034346232353030333133326238373830363734326630323033303130303031320218033a603333373339306438666561313434616663313265383132353461323864616336656138323839333833366163303732656666643835653061373734383538306566323830393636343863356137663864626234636538313437363831353133370ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130306335376564623966663237366530323362323830323163623164383763646631393636623639386366343865346561616137633639323037376365656538636362323339613463393231353937653865383966376363303564336633313331353738393736633465333134343035643461346530336137323431306335633039636135323761643561383562393938363337653732613332653166626330643535343662323436356539653830366332646435303965623035306162356662323730363366643932383135623164643236383965323131316361656236663534396539346139663030663038323164346361366336613631313766356135333363393236336266303734613330643563626566353064316338633233383762636139373265646564613039383362356430613662353764636230303230303036383238623430653430373662343837306232346261643834303536656535326235663432326538383430303238633235303036333832643865396336363132323566346637366561373265333430363037653966633666336332303433333037366131636138636231356564303361633839363664303530376263646536383165346530323331656539663837643131316537623438616338663934643264383432623532646637336635373363633534313439363437393763363236393638666661653734313866336236313039623561306630396533323233663461346435653335303964643235303133386636626331376266366365636531373539343433306466313830613338653930616466326166666266616430633662386331623837663137386130363164636662666638623932633931363664383734633166663561663466626364626665386539643039393337306464663630626537343736333364333665653465623563643531663665336333333965313531653431626462356135636532633863393761306134336233636434636330383138383463383739663964326633373438343238633835373366313763393066336362643032303330313030303128073202180a3a603734306166366266373339653838336338386633333434633961306638623330316533396463393831633531363365306465326133666634326239396534323665643765353662363766343231383530333834356466363266343963396662300ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393133316161333638663933343532323966393762363235396363636166666561323365303063643565616430326533663639366331653731346565333933396461643836306533386266393561323937346639656234386539333433663861616334303565613935356430353332336531313762336231633934383133613361663432666538303832633364343362616631626434643833363765393364623030616436393665363237613130333661653533346630313165616435653536663337613666666534346236623965303939343031313932616435363061303334366234316138313030393566356632643766643332643665656236353562613735386336623532366331323933383661663731393763376135336165363033643632323833323235343936316631366430656661383037396137363835363138383862653733333439323231373935366262636166616562623631333563356662623234383464356234613566646630333336616330326532366331363532633162643865616633306461653164366433656230306637623466616238643634373866653864393565623931316466393636613064656134653532326462373662383936363537306563633561663039353136343234663061663566386565363665333836643536353037313339393731363961633337353733626635326664303538646539356162326666363865363831313161623233343035656139363462326262383864303263306631636165643731656364643465346534303835393438373666646238353030626335356337626130323036366530356162393864396637653034363664393730326562353765653337323266386663633835613735353035666633323632313730323838623738383732336164623937653464653536323063633930656164313338326663643735373138383966656662313165363737316263336636663366656231396337616335343238373864303361393032373035323663336565643234393465666635346531353363613966363839303230333031303030312801320218043a603765616236393661623935343336363538626331346666366234626534643932356364353162323230646632613164356336656531363061646166323961353165363934646533656531383463653232656164386437646239333231383266330ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038326465373330363566333466666332393334306435393439643232323062316534333636656435636637633665626436313663663934313661353365613030313766366262313136626664336633646566636331356237613464646630653434643032666536393536383830353365373961373730653230316263663731393333393030333965653866303836643466613734366337653035363931383330316639623565383465333932363238323830383561373962333232626361306235643835666539373232316132366262646532353863363230663064636561303261623165646431366363343961336632616239323838653364643166333764633462366136663731333366663932653534316337316237306432613266363664353537323561623138626638366430303965633364323466356431326530623565363830326431313531333732643462373634656265636234616638326636343934383565633537623561303164633637393538663561303363636161623763626139333534613137333732633133313662613437633935336161663934393031623366386332346536613361666436373538653766336231343363653264643363623037316232613734633932316365653934396134623561366265383739663163373930613662386436336231393264376565323961393439316664643638396139386330613763336436303332306631623461633264363232396466643934653432663361363034386137366265316562393538633861313837336265386433333861656339666335396162376633373632363738393430326331666435393566313930383735373565306265383237666334633061346662336433393361643734613934396363393836626662363463616264646165353339333566366463353630373464623933643737656133623831366264643662653533343439373237323238393835396666333463653531383630616666623632316431303438376463333834336631663836643534303334613633653438613161306430323033303130303031280a3202180d3a606132656363316232616539386264323862633161303864386633373161306434663734356337363864306337373339363235363265333433623235643833343235656565613765663865613134323935333432623865623738643332656333660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039383735356134303862353332316532363330353230303064366437643461326333613535346435653133383461396362356562663437346165383832633633623438366264303864313434646466316139346365396137643632353139363330303661666461616334353838343666313736343031393566653235333961363536393330656661383534663231343865363865633161303863316334396432303063336633303435666537313437663036643533346334626432363231303063623164643339373339643736306438316130626432306638336632353564323530376434636362313130366235333631386336613934343039633838376361653236326434636565396338363233323134376365633134303465306335376262613733313731333065653339363433383838616633643539386564643832623863363165363561653831613465316135366263303664333937313433613938643431636138376433656634333365663061656162363830313139316233653338343830393638663636623665383836363261663435613965323132393934663638623238386562393637626562393834373863323433653231333663316131353931663036316635626330346232316666326261343862323966313834333130383838373362646665393966386135326539343038393731383536653830346465613630326133313137383663393835363532393633633361333737303332396234303966373466646663373436623232613566383431383931323037316334636538343663396234623332306665646636653962363465326362653338346639613832623661616164346232303930373433316466316133336636393230376135363536303062653831303730643038333239303039393538353961343439386435623539333135626365626566656538303765623061336139343266316364663333363764643434343466646232393838366566636464306265346162653961313838383033393533383735656461333364623732393839663736336230323033303130303031280b3202180e3a603139366237623132303739376364623361396430303362393833643537646131303331303662313733306531376636376532633762616161646234333738396166313639366461313031316232353362636263383630333333383566303332380ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061396462376638626161313236383938666162373839313135613362356438393734346631393765323830343161653039386633653838366336393837313732316531316262306164313166336365393132346161393631643661306463383435663439373635633366616231393935383430323637366635363434363262663238316462613535383837383066303365393035373938653138343236396161613630663761313437323333316532666231646561646438373763383463626362363431636139653563386164366534356263313539636230373966636230643434396364636438643932333963316130343765376234343864613063646361323636313061323566323936643936653734363962363736643461343434353136653761353965383532393361383038366638343063303532383534653032613863623230303264616433353832356265346438336235326661393165386337336666303439373436313438383632373837633131313866393234643331636261633162343466656666323264343336623339373965616466396234336134626661373265313562343735356663616232363065303661323739633362623733626337663136613036306434643532326664343930353830333838616135393564383034343733366535323266363432343931356637383033623735383365303935636466373863333235313936393764653831623839666235303035343735336231613137663961616662303634643834633939326639616231316363626338636231303831346463616635323634616134356632316264656661633832636361636161663335386533313337336565316261346537343032666438613730656130633238636135636337346463343235313063393639636432633435396231656333363838613031656133396139393237313063643232393763393861383462363334386135373738303466646332333464336665313930336532633231653137326461323862353961653665346337653865646438623731633439643730323033303130303031280c3202180f3a603538343661353366343437353239666439636462373830346364333136383865643665656265336236336461326635663231316666626337333731393763663366316366626664613631626537643135313066306539323339383131376637340ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061386365616333363765623166316465356630643965663365616630646639623938343438666532303830383437363536326130363063353163323839373730623463616366653932636236353536393832336539363263326132633966656435336264333663613361313232646531633532356135383266323561346437643632386331613364356264623839333661656365373531306537353534656537303333303235633039326338323865656235373338626530326564393633646138316135393230353633346365393435343537376162383266343066313366316565353565306165373237653233633330323834623166343462393961636534646463356639616337616438386439666132323535393335623234646362613834303036343265313663663235333263306230643638393239303436303837313563343037366634366438346130653066656433366537366363646339363335356537613236313630393435633262353461653236636330306664303832333236333436656565656137646437356639313931316539396462636239396561346163366261303536633333323238643838316438353833316439636338373935393364613137343664643065653935646332623936666539336261666366663263643764393239353864373864663333663230356437313135656439666163346462366634636336306535366135343431646135623562353566613539393939303265393538613662366334346438313064646335363138313234316238376632326630353961363838306538303231373336643031383937646236353434396365383137613233373564303335353163623064653530376336303961306338303330656366346266646562323133633033646161373634613138323162373234333334663731663736386437616563623237373035326137303333373635663037323138303536633738663261383761663138333836643866363161356366636233663262613464643539393135663133643338363334643136393537353730323033303130303031280d320218103a603030306162636435396133306135333838633530306265363832663663613239343034363239356339323735383831633230643334626230643639306564613762333862366262643037613364643166646662366137303434626230396366660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061663062393134323537626637613436353563346135306430636164356530613165343538316564363632336630653837333066373936623866323963353831373862636363363933326331666333316633396566343462383264336334336233393837333733373366656362313239353232386130346664353061313466333634366438346665316634363763616562393864343633653239373565393935623864326531653339663362663661646463323561653335643635643032363038653033343535333739363665326162636534396238313462656164336331623735373137346165333063303062306334336539396238303439366237326433633133316631633665346663646130356632383131376566396532386334333033626534643863376530343264353862383363633132313934356132633635653739363263616139313835393338663337353764663763636139356366303262356533313934346133613631396130616333663165333462396230313364346332323463346631653730666439666433363938336566383661646535313833363263633833323263306637623631613961633735666238326537623836643638626330663039396130396131346361633561316438643338663961386137306363333766663563633362626432373432666664313436323535633137316536613137383038333237316463653066646536383165643439326362353962303739366432373031373538333864633539303831303765336136656133663961343036623364313133306363656333623437393165343962626332333136303362343661623264306639336434336265373561623961346437313065613934306532383561376231353362306361376364646565366439646365306164383335306334316439306332313562393538383531356166613061633333363561653037653831663362626233366264626561633462333162636231616134653832353635623937376639646164383564363236656566396161613965663864376533666230323033303130303031280e320218113a603933653238313031303462326231376230303935326235613431303264333365646230343363623136646533616433643364363832363066353562623065353837333765613539343463333338663763386362383863373833336663383630630ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038633037626533303561643630623930626132646162333962306565373736306531613232663835373532323534306437306230336233663965343837356133613239616230383038386631343466353765623235326534366261353933383564306536643432373031313764613061626331623362383036393463396135303538623836643631646661303665373136373039633838653866656163376333613065316432356663306165626636613866373666636239396638343566653138313436316361623638353862393763336134303237666233373132623134653663303738396465313764343137363435373765353131343137656231363236393265623037616531653733353532333565396262343339303437623663303136313337383265376464366636303464616134363734363631643533393631663436633366616136623765373637363264333733623562353432623739656139363365666266333361633638313938626232623636316366663637363931366566333732616434633236633231366334626334373837633834656333326431383464373763373531383663303963663364396639313433336361393835333131396261623331666136616432366634353365353936643962646563613638613537363962633866656537613533356438306338633666336566623164666232383861623661393739383534623763653833313234656330643130326166663934633362373466396333373839353863323565623933336464353363316538303561313836353464366439313836393930663635373034323966393630663334653862346637666439393732646362666539323430653037346461326433353561356637656639633161663632656635393832613831373435373862396331356334396563353636626461636233306363666365663039636466653730386164343837343234653963316265363533663965653736363065376439343263316566613564613238366531616464616230366139613333663964653934363739356230323033303130303031280f320218123a603934383235313739643163333934303137306233356432363665346366613830643737386335653966356261653764653833666638636334373431663362653336616336336431653761653439373261656466366263316533636632303638390ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030626531376339393634376365633635613434343037623533353835366233633362616566356235346635363561663538623834353662613863376365353335643561633732633631633434633736623363353763386538363438343136333762653130613833636665333963303932343736643064626534643663646364636437323061333062356266656235316130316131386635383263343566366338363939336663663764663138323933356465316438363930363034346463663335313836393335643962643765656137393532333532626562623465663961653066373636316537306134323337616661393839393636383763613438666366633562303064333830376630353462653066613863336266613432353033386265366566323935313634663232663733623765383863393465613962653861613466336132343563383962396431666435313932663761353062393538623265663831303462333666316266386664326366623238633134323138303063316334376534656639386166313530303730636336643639643137653865623932663138613661613161363532363661343935323338643130336638663639356235376563663337333635306130353230303837343537323162656138313536323739363763383037363336356466386334633761376434646438663263333835306331386662613731656236306536653864666264313936653035333766643730623334346563626363353330646663383364613666656466343964353161393034313935303262613964373063643335663163663363303639346532333534663930363466646266353335656232336332376330613433643062373863316638363763363164393836393564386465663762633261313062623636373463323266363661616230613931383133646466323763646238353263353965663739653162396531613037356661366565323761376533373734646266346232363436353432376536643561623931666537663066336137313738346563613138326235303230333031303030312810320218133a603038393039376465663031623037633764393734613537353532353161366161613061666236623332613534353334336432393138653732626164303433323163313131633234643432373538306633626131653236616139643735653632360ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613561643262373634336130346330353564326638636432353131623135313339666334353537353632313338386534396331313962326633393861636131313066363133393662306338363664653530363335323262623835343032373365313366366439346365316536303433386636616662303061616136343631326637313435653962636538626331613533623934313931336161373663396633613238333366616437636632383563376163326433376639396633633263646234396465346431353165363136373835363466323831663534313432346234316661376335316232613936303232383363376433326565303065623833386461313563333861666339366530363164393763656465323231363566663161613935396631633432373562326430393863343035383661353537396662623363623930303732373034313230613861363661353237306634666366643130383663393233363930613335653766643434356533336163303366313339633638363835353635373063646334616166323231303761366331613434323435366137633663373965653034303930653765356434663636626361363063613166343762366466623534336461633363626631396137373139613866353562366638336234613362386136366436303235366430613436353531666137303234626430353633316238613535383038373732353463326632663236386364633333643264626263666237333365396662653233336262396362353961623331613031343862323365386334323638306666313061663463373961346430383334366662373961393364393632393534386561663162623132343639386661656661346364643732343432633033613034623733333433326637343839303361333235633238336434353661623961653932316165376564333339316535643137383765666463323335343061376238356336393161653837306130376639306231316331336233326365343365616564313562333639363835636534393137376363393835303230333031303030312811320218143a603939666162633461646534653636326336653238323366346139366562323134343034383465356136643064333132623730633036386432326236323936333830376332333361343964626239383361376562623330653737303637373261340ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030386434356332316330633935656636356130323964353263393537666430663835663230313233646130333465363136373164646565353437356630373338326136366336366362346463353035303464646664333735383130383364663864313735373733306564386436663336346466346333366132363531353931393535646132303161323430376661386162396232333133383131323235613064613233306662653338306530393061613536656661346632303265633962343832336636353031643936616336393865626632366161636633656532643166333261373231633934376531303736636633356233373364613164383761333661313532653030653731303131373932323832653832356666313731633538333362383835373062666336646138343439653666393566386231323635616235353531393430333135353364316435373666393363343263306361363061616261633463386464313632643831313466326232313531313538336337323533396665353663343939613932396465336134306130643435633137633538396332643739383863653236656166633932613364333762376561303034326434336530336166613632373162323632353561366363636661653533373138323164383165306230356332353062353966306139303734316130653065383861303965643536633562393738306430393566303930366630623831643531323633393832616165303131333663303732643834346131316436646134623261363163363434653161623137663136666634386565323366656465383435326631653432653264333061303739306332356434323036306531643434613637316132656232336431313466363863373165333366313736646235386136386234333030353462633164323938336132336133326561366666393566613763346438653338306562323936653938623739363865636638343534643831376337333765656135646439323165623836633136633762323933303461346137656362653561336131303230333031303030312812320218153a606537396165396337313933643164326263393433383436346338616135663632323461653835323936366134336239383235383833663766373432633533393562643330393935383761393638363662393233396431656666336165353037610ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623035616265326162303066646430366339353565383637313062306530366631613932363234613438616431636263386466633666323231323936326230633330666462643238346133376335613337363538623633633336656138313632353631613865346639343663626535373232633032383830316630663238316337306638643838633763303061326632653239663539376237393938363965643833353664663537633437626539393434613261616666363530663962346262613064626335336463383830666462623639656134353139303564323830323230326638653239633034613736643237616632656237633534383438356266336634363934633930633431383130383838383433373932383438383335663738313637303764336538643736663465363766353738306263663038383133633535656336333961396264363234313738663565623134376435303061663335316539656631623165333432343834636132363064623763636261653438366631336366323635623562316162363838303636303038303533623230633364656463653737316339613038613033323061613963653435316562396439383361376234396361613130393666386164633039383331386463333865306537636566306438653564353537613036373536383561316339653235366132626339646261333232623362623331373263663731343037376263333830663861306134333361386266613766626663353966366230393365633862663665393339376330396231386531383034306331623536363836343733376338666137653239373935663361343538386464613763326261623439353636356363346139623833366532656239306336326133666361663539316662356638313830346337363138306536323666613236343461376465333435313164366334363637643938393337653237373333663464316539313338383333353465353466643733353137323165373666376235366333343833333838663461366238376232386165626562303230333031303030312813320218163a603962343038383566313362366163316337353336393262613366313739303061333838333165363934613061663937343934623834333838323039636235656662646339386136646162623265316337313833393166633133356264616163330ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396463643863306135336539306333353539353734663636323034313137643362353033653530613336643330393766616338343239653663656364333762623534303731383038663265653938323033356638353161306339626532313736333833613232653338633161626131363866333266393035373063623332333363666536323539383736363661663637623531346361656632316662386466366430666364333363663236303662393264646561353533366236303638643836373832653339626435633338343435393931643431396237643165633038353939343132633039343964316332343062333563313464633535323734646261373166666165393336313235613566383139663534313332653234333964346163353539373939366563653835653133646666333336316639313331663536636561633562396635353262343963663666396139616336653564636532646233363934363266393361663830653562353662366538626566613136326130363162346137363839326264633834363437333036633630303835386664643237303332373663326337303434303139386566643766653335343563663261623538306337346366643634343561616637626437663734356363323532656162643236356561626565383632343137313034653639343861353537353666646332323264663061313031353234646531633363303863636630343330313165633766653936346564643834353161313330313437633037333633613335663131666465656638663261326237363137353762343335386666383962373561343864363762646336303930363933653062623836373965636262393366666462336633656439366265633933656634363536653337313661623837636534366361386531323539633866656464653866326631656130663365623263343865393635353164653132333330333435373235663435656436396338353735623531363833616661343732363231383236646232326262326431633466316533363436346139303230333031303030312814320218173a60346630613033333466393737363738313632663830643936376637323139313431333630633062376637663033316233376336396536323137333933336564616434366263626139373636376565373262666435613933346261313532326330")));t.MAINNET_ADDRESS_BOOK=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(943));function l(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;r--){var o=this._nodes[r];n.includes(o.address.toString())||t.push(r)}return t}},{key:"getNextMirrorNode",value:function(){if(null==this._createNetworkChannel)throw new Error("mirror network not supported on browser");return this._getNumberOfMostHealthyNodes(1)[0]}}]),n}(r(n(456)).default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),t.call(this,e)}return(0,a.default)(n,[{key:"getKey",value:function(){return this._address.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}}]),n}(r(n(455)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(945));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var y=function(e){(0,s.default)(n,e);var t=h(n);function n(e){var r;return(0,u.default)(this,n),(r=t.call(this))._address=e,r}return(0,c.default)(n,[{key:"close",value:function(){}},{key:"_createUnaryClient",value:function(e){var t=this;return function(){var n=(0,i.default)(a.default.mark((function n(r,o,i){var u,c,s;return a.default.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,fetch("".concat(t._address,"/proto.").concat(e,"/").concat(r.name),{method:"POST",headers:{"content-type":"application/grpc-web+proto","x-user-agent":"hedera-sdk-js/v2","x-grpc-web":"1"},body:(0,d.encodeRequest)(o)});case 2:return u=n.sent,n.next=5,u.arrayBuffer();case 5:c=n.sent,s=(0,d.decodeUnaryResponse)(c),i(null,s);case 8:case"end":return n.stop()}}),n)})));return function(e,t,r){return n.apply(this,arguments)}}()}}]),n}(d.default);t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.decodeUnaryResponse=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength,r=new DataView(e,t,n),o=0,i=null,u=0;for(;o>7,f=r.getUint32(o+1),d=o+5;if(d+f>r.byteLength)throw new Error("(BUG) unexpected frame length past the boundary");var p=new Uint8Array(e,r.byteOffset+d,f);if(0===l){if(null!=i)throw new Error("(BUG) unexpectedly received more than one data frame");i=p}else{if(1!==l)throw new Error("(BUG) unexpected frame type: ".concat(l));var h=s.decode(p),y=h.split(":"),b=(0,a.default)(y,2),m=b[0],v=b[1];if("grpc-status"!==m)throw new Error("(BUG) unhandled trailer, ".concat(h));u=parseInt(v)}o+=f+5}if(0!==u)throw new Error("(BUG) unhandled grpc-status: ".concat(u));if(null==i)throw new Error("(BUG) unexpectedly received no response");return i},t.default=void 0,t.encodeRequest=function(e){var t=new ArrayBuffer(e.byteLength+5);return new DataView(t,1,4).setUint32(0,e.length),new Uint8Array(t,5).set(e),t};var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=n(31),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(91));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(){(0,i.default)(this,e),this._crypto=null,this._smartContract=null,this._file=null,this._consensus=null,this._freeze=null,this._network=null,this._token=null,this._schedule=null}return(0,u.default)(e,[{key:"close",value:function(){throw new Error("not implemented")}},{key:"crypto",get:function(){return null!=this._crypto||(this._crypto=c.CryptoService.create(this._createUnaryClient("CryptoService"))),this._crypto}},{key:"smartContract",get:function(){return null!=this._smartContract||(this._smartContract=c.SmartContractService.create(this._createUnaryClient("SmartContractService"))),this._smartContract}},{key:"file",get:function(){return null!=this._file||(this._file=c.FileService.create(this._createUnaryClient("FileService"))),this._file}},{key:"consensus",get:function(){return null!=this._consensus||(this._consensus=c.ConsensusService.create(this._createUnaryClient("ConsensusService"))),this._consensus}},{key:"freeze",get:function(){return null!=this._freeze||(this._freeze=c.FreezeService.create(this._createUnaryClient("FreezeService"))),this._freeze}},{key:"network",get:function(){return null!=this._network||(this._network=c.NetworkService.create(this._createUnaryClient("NetworkService"))),this._network}},{key:"token",get:function(){return null!=this._token||(this._token=c.TokenService.create(this._createUnaryClient("TokenService"))),this._token}},{key:"schedule",get:function(){return null!=this._schedule||(this._schedule=c.ScheduleService.create(this._createUnaryClient("ScheduleService"))),this._schedule}},{key:"_createUnaryClient",value:function(e){throw new Error("not implemented")}}]),e}();t.default=f},function(e,t,n){"use strict";(function(t){var r=n(0)(n(11)),o=n(457),a=n(994),i=n(136),u=(n(995),new i.ec("secp256k1")),c=n(996),s=c.keccak256,l=c.keccak256s,f=function(e){for(var t=l(e.slice(2)),n="0x",r=0;r<40;r++)n+=parseInt(t[r+2],16)>7?e[r+2].toUpperCase():e[r+2];return n},d=function(e){var n=new t(e.slice(2),"hex"),r="0x"+u.keyFromPrivate(n).getPublic(!1,"hex").slice(2),o=s(r);return{address:f("0x"+o.slice(-40)),privateKey:e}},p=function(e){var t=(0,r.default)(e,3),n=t[0],a=t[1],i=t[2];return o.flatten([a,i,n])},h=function(e){return[o.slice(64,o.length(e),e),o.slice(0,32,e),o.slice(32,64,e)]},y=function(e){return function(n,r){var i=u.keyFromPrivate(new t(r.slice(2),"hex")).sign(new t(n.slice(2),"hex"),{canonical:!0});return p([a.fromString(o.fromNumber(e+i.recoveryParam)),o.pad(32,o.fromNat("0x"+i.r.toString(16))),o.pad(32,o.fromNat("0x"+i.s.toString(16)))])}},b=y(27);e.exports={create:function(e){var t=s(o.concat(o.random(32),e||o.random(32))),n=o.concat(o.concat(o.random(32),t),o.random(32)),r=s(n);return d(r)},toChecksum:f,fromPrivate:d,sign:b,makeSigner:y,recover:function(e,n){var r=h(n),a={v:o.toNumber(r[0]),r:r[1].slice(2),s:r[2].slice(2)},i="0x"+u.recoverPubKey(new t(e.slice(2),"hex"),a,a.v<2?a.v:1-a.v%2).encode("hex",!1).slice(2),c=s(i);return f("0x"+c.slice(-40))},encodeSignature:p,decodeSignature:h}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";var r=function(e,t){for(var n=[],r=0;r64?t=e(t):t.length<64&&(t=o.concat([t,i],64));for(var n=this._ipad=o.allocUnsafe(64),r=this._opad=o.allocUnsafe(64),u=0;u<64;u++)n[u]=54^t[u],r[u]=92^t[u];this._hash=[n]}r(u,a),u.prototype._update=function(e){this._hash.push(e)},u.prototype._final=function(){var e=this._alg(o.concat(this._hash));return this._alg(o.concat([this._opad,e]))},e.exports=u},function(e,t,n){"use strict";e.exports=n(460)},function(e,t,n){"use strict";(function(t){var r,o,a=n(22).Buffer,i=n(462),u=n(463),c=n(464),s=n(465),l=t.crypto&&t.crypto.subtle,f={sha:"SHA-1","sha-1":"SHA-1",sha1:"SHA-1",sha256:"SHA-256","sha-256":"SHA-256",sha384:"SHA-384","sha-384":"SHA-384","sha-512":"SHA-512",sha512:"SHA-512"},d=[];function p(){return o||(o=t.process&&t.process.nextTick?t.process.nextTick:t.queueMicrotask?t.queueMicrotask:t.setImmediate?t.setImmediate:t.setTimeout)}function h(e,t,n,r,o){return l.importKey("raw",e,{name:"PBKDF2"},!1,["deriveBits"]).then((function(e){return l.deriveBits({name:"PBKDF2",salt:t,iterations:n,hash:{name:o}},e,r<<3)})).then((function(e){return a.from(e)}))}e.exports=function(e,n,o,y,b,m){"function"==typeof b&&(m=b,b=void 0);var v=f[(b=b||"sha1").toLowerCase()];if(v&&"function"==typeof t.Promise){if(i(o,y),e=s(e,u,"Password"),n=s(n,u,"Salt"),"function"!=typeof m)throw new Error("No callback provided to pbkdf2");!function(e,t){e.then((function(e){p()((function(){t(null,e)}))}),(function(e){p()((function(){t(e)}))}))}(function(e){if(t.process&&!t.process.browser)return Promise.resolve(!1);if(!l||!l.importKey||!l.deriveBits)return Promise.resolve(!1);if(void 0!==d[e])return d[e];var n=h(r=r||a.alloc(8),r,10,128,e).then((function(){return!0})).catch((function(){return!1}));return d[e]=n,n}(v).then((function(t){return t?h(e,n,o,y,v):c(e,n,o,y,b)})),m)}else p()((function(){var t;try{t=c(e,n,o,y,b)}catch(e){return m(e)}m(null,t)}))}}).call(this,n(33))},function(e,t,n){"use strict";var r=n(952),o=n(276),a=n(277),i=n(965),u=n(215);function c(e,t,n){if(e=e.toLowerCase(),a[e])return o.createCipheriv(e,t,n);if(i[e])return new r({key:t,iv:n,mode:e});throw new TypeError("invalid suite type")}function s(e,t,n){if(e=e.toLowerCase(),a[e])return o.createDecipheriv(e,t,n);if(i[e])return new r({key:t,iv:n,mode:e,decrypt:!0});throw new TypeError("invalid suite type")}t.createCipher=t.Cipher=function(e,t){var n,r;if(e=e.toLowerCase(),a[e])n=a[e].key,r=a[e].iv;else{if(!i[e])throw new TypeError("invalid suite type");n=8*i[e].key,r=i[e].iv}var o=u(t,!1,n,r);return c(e,o.key,o.iv)},t.createCipheriv=t.Cipheriv=c,t.createDecipher=t.Decipher=function(e,t){var n,r;if(e=e.toLowerCase(),a[e])n=a[e].key,r=a[e].iv;else{if(!i[e])throw new TypeError("invalid suite type");n=8*i[e].key,r=i[e].iv}var o=u(t,!1,n,r);return s(e,o.key,o.iv)},t.createDecipheriv=t.Decipheriv=s,t.listCiphers=t.getCiphers=function(){return Object.keys(i).concat(o.getCiphers())}},function(e,t,n){"use strict";var r=n(100),o=n(953),a=n(15),i=n(22).Buffer,u={"des-ede3-cbc":o.CBC.instantiate(o.EDE),"des-ede3":o.EDE,"des-ede-cbc":o.CBC.instantiate(o.EDE),"des-ede":o.EDE,"des-cbc":o.CBC.instantiate(o.DES),"des-ecb":o.DES};function c(e){r.call(this);var t,n=e.mode.toLowerCase(),o=u[n];t=e.decrypt?"decrypt":"encrypt";var a=e.key;i.isBuffer(a)||(a=i.from(a)),"des-ede"!==n&&"des-ede-cbc"!==n||(a=i.concat([a,a.slice(0,8)]));var c=e.iv;i.isBuffer(c)||(c=i.from(c)),this._des=o.create({key:a,iv:c,type:t})}u.des=u["des-cbc"],u.des3=u["des-ede3-cbc"],e.exports=c,a(c,r),c.prototype._update=function(e){return i.from(this._des.update(e))},c.prototype._final=function(){return i.from(this._des.final())}},function(e,t,n){"use strict";t.utils=n(466),t.Cipher=n(275),t.DES=n(467),t.CBC=n(954),t.EDE=n(955)},function(e,t,n){"use strict";var r=n(59),o=n(15),a={};function i(e){r.equal(e.length,8,"Invalid IV length"),this.iv=new Array(8);for(var t=0;t15){var e=this.cache.slice(0,16);return this.cache=this.cache.slice(16),e}return null},d.prototype.flush=function(){for(var e=16-this.cache.length,t=a.allocUnsafe(e),n=-1;++n>i%8,e._prev=a(e._prev,n?r:o);return u}function a(e,t){var n=e.length,o=-1,a=r.allocUnsafe(e.length);for(e=r.concat([e,r.from([t])]);++o>7;return a}t.encrypt=function(e,t,n){for(var a=t.length,i=r.allocUnsafe(a),u=-1;++u>>0,0),t.writeUInt32BE(e[1]>>>0,4),t.writeUInt32BE(e[2]>>>0,8),t.writeUInt32BE(e[3]>>>0,12),t}function i(e){this.h=e,this.state=r.alloc(16,0),this.cache=r.allocUnsafe(0)}i.prototype.ghash=function(e){for(var t=-1;++t0;t--)r[t]=r[t]>>>1|(1&r[t-1])<<31;r[0]=r[0]>>>1,n&&(r[0]=r[0]^225<<24)}this.state=a(o)},i.prototype.update=function(e){var t;for(this.cache=r.concat([this.cache,e]);this.cache.length>=16;)t=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(t)},i.prototype.final=function(e,t){return this.cache.length&&this.ghash(r.concat([this.cache,o],16)),this.ghash(a([0,e,0,t])),this.state},e.exports=i},function(e,t,n){"use strict";var r=n(471),o=n(22).Buffer,a=n(277),i=n(472),u=n(100),c=n(214),s=n(215);function l(e,t,n){u.call(this),this._cache=new f,this._last=void 0,this._cipher=new c.AES(t),this._prev=o.from(n),this._mode=e,this._autopadding=!0}function f(){this.cache=o.allocUnsafe(0)}function d(e,t,n){var u=a[e.toLowerCase()];if(!u)throw new TypeError("invalid suite type");if("string"==typeof n&&(n=o.from(n)),"GCM"!==u.mode&&n.length!==u.iv)throw new TypeError("invalid iv length "+n.length);if("string"==typeof t&&(t=o.from(t)),t.length!==u.key/8)throw new TypeError("invalid key length "+t.length);return"stream"===u.type?new i(u.module,t,n,!0):"auth"===u.type?new r(u.module,t,n,!0):new l(u.module,t,n)}n(15)(l,u),l.prototype._update=function(e){var t,n;this._cache.add(e);for(var r=[];t=this._cache.get(this._autopadding);)n=this._mode.decrypt(this,t),r.push(n);return o.concat(r)},l.prototype._final=function(){var e=this._cache.flush();if(this._autopadding)return function(e){var t=e[15];if(t<1||t>16)throw new Error("unable to decrypt data");var n=-1;for(;++n16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t}else if(this.cache.length>=16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t;return null},f.prototype.flush=function(){if(this.cache.length)return this.cache},t.createDecipher=function(e,t){var n=a[e.toLowerCase()];if(!n)throw new TypeError("invalid suite type");var r=s(t,!1,n.key,n.iv);return d(e,r.key,r.iv)},t.createDecipheriv=d},function(e,t,n){"use strict";t["des-ecb"]={key:8,iv:0},t["des-cbc"]=t.des={key:8,iv:8},t["des-ede3-cbc"]=t.des3={key:24,iv:8},t["des-ede3"]={key:24,iv:0},t["des-ede-cbc"]={key:16,iv:8},t["des-ede"]={key:16,iv:0}},function(e,t,n){"use strict";(function(e){var r=n(473),o=n(967),a=n(968);var i={binary:!0,hex:!0,base64:!0};t.DiffieHellmanGroup=t.createDiffieHellmanGroup=t.getDiffieHellman=function(t){var n=new e(o[t].prime,"hex"),r=new e(o[t].gen,"hex");return new a(n,r)},t.createDiffieHellman=t.DiffieHellman=function t(n,o,u,c){return e.isBuffer(o)||void 0===i[o]?t(n,"binary",o,u):(o=o||"binary",c=c||"binary",u=u||new e([2]),e.isBuffer(u)||(u=new e(u,c)),"number"==typeof n?new a(r(n,u),u,!0):(e.isBuffer(n)||(n=new e(n,o)),new a(n,u,!0)))}}).call(this,n(12).Buffer)},function(e){e.exports=JSON.parse('{"modp1":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},"modp2":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},"modp5":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},"modp14":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},"modp15":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},"modp16":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},"modp17":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},"modp18":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}')},function(e,t,n){"use strict";(function(t){var r=n(13),o=new(n(474)),a=new r(24),i=new r(11),u=new r(10),c=new r(3),s=new r(7),l=n(473),f=n(99);function d(e,n){return n=n||"utf8",t.isBuffer(e)||(e=new t(e,n)),this._pub=new r(e),this}function p(e,n){return n=n||"utf8",t.isBuffer(e)||(e=new t(e,n)),this._priv=new r(e),this}e.exports=y;var h={};function y(e,t,n){this.setGenerator(t),this.__prime=new r(e),this._prime=r.mont(this.__prime),this._primeLen=e.length,this._pub=void 0,this._priv=void 0,this._primeCode=void 0,n?(this.setPublicKey=d,this.setPrivateKey=p):this._primeCode=8}function b(e,n){var r=new t(e.toArray());return n?r.toString(n):r}Object.defineProperty(y.prototype,"verifyError",{enumerable:!0,get:function(){return"number"!=typeof this._primeCode&&(this._primeCode=function(e,t){var n=t.toString("hex"),r=[n,e.toString(16)].join("_");if(r in h)return h[r];var f,d=0;if(e.isEven()||!l.simpleSieve||!l.fermatTest(e)||!o.test(e))return d+=1,d+="02"===n||"05"===n?8:4,h[r]=d,d;switch(o.test(e.shrn(1))||(d+=2),n){case"02":e.mod(a).cmp(i)&&(d+=8);break;case"05":(f=e.mod(u)).cmp(c)&&f.cmp(s)&&(d+=8);break;default:d+=4}return h[r]=d,d}(this.__prime,this.__gen)),this._primeCode}}),y.prototype.generateKeys=function(){return this._priv||(this._priv=new r(f(this._primeLen))),this._pub=this._gen.toRed(this._prime).redPow(this._priv).fromRed(),this.getPublicKey()},y.prototype.computeSecret=function(e){var n=(e=(e=new r(e)).toRed(this._prime)).redPow(this._priv).fromRed(),o=new t(n.toArray()),a=this.getPrime();if(o.length0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return i.alloc(0);for(var t,n,r,o=i.allocUnsafe(e>>>0),a=this.head,u=0;a;)t=a.data,n=o,r=u,i.prototype.copy.call(t,n,r),u+=a.data.length,a=a.next;return o}},{key:"consume",value:function(e,t){var n;return eo.length?o.length:e;if(a===o.length?r+=o:r+=o.slice(0,e),0==(e-=a)){a===o.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=o.slice(a));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=i.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var o=n.data,a=e>o.length?o.length:e;if(o.copy(t,t.length-e,0,a),0==(e-=a)){a===o.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++r}return this.length-=r,t}},{key:c,value:function(e,t){return u(this,function(e){for(var t=1;t0,(function(e){r||(r=e),e&&i.forEach(s),a||(i.forEach(s),o(r))}))}));return t.reduce(l)}},function(e,t,n){"use strict";var r=n(22).Buffer,o=n(458),a=n(279),i=n(136).ec,u=n(13),c=n(216),s=n(486);function l(e,t,n,a){if((e=r.from(e.toArray())).length0&&n.ishrn(r),n}function d(e,t,n){var a,i;do{for(a=r.alloc(0);8*a.length=t)throw new Error("invalid sig")}e.exports=function(e,t,n,s,l){var f=i(n);if("ec"===f.type){if("ecdsa"!==s&&"ecdsa/rsa"!==s)throw new Error("wrong public key type");return function(e,t,n){var r=u[n.data.algorithm.curve.join(".")];if(!r)throw new Error("unknown curve "+n.data.algorithm.curve.join("."));var o=new a(r),i=n.data.subjectPrivateKey.data;return o.verify(t,e,i)}(e,t,f)}if("dsa"===f.type){if("dsa"!==s)throw new Error("wrong public key type");return function(e,t,n){var r=n.data.p,a=n.data.q,u=n.data.g,s=n.data.pub_key,l=i.signature.decode(e,"der"),f=l.s,d=l.r;c(f,a),c(d,a);var p=o.mont(r),h=f.invm(a);return 0===u.toRed(p).redPow(new o(t).mul(h).mod(a)).fromRed().mul(s.toRed(p).redPow(d.mul(h).mod(a)).fromRed()).mod(r).mod(a).cmp(d)}(e,t,f)}if("rsa"!==s&&"ecdsa/rsa"!==s)throw new Error("wrong public key type");t=r.concat([l,t]);for(var d=f.modulus.byteLength(),p=[1],h=0;t.length+p.length+2n-d-2)throw new Error("message too long");var p=f.alloc(n-r-d-2),h=n-l-1,y=o(l),b=u(f.concat([s,p,f.alloc(1,1),t],h),i(y,h)),m=u(y,i(b,l));return new c(f.concat([f.alloc(1),m,b],n))}(h,t);else if(1===d)p=function(e,t,n){var r,a=t.length,i=e.modulus.byteLength();if(a>i-11)throw new Error("message too long");r=n?f.alloc(i-a-3,255):function(e){var t,n=f.allocUnsafe(e),r=0,a=o(2*e),i=0;for(;r=0)throw new Error("data too long for modulus")}return n?l(p,h):s(p,h)}},function(e,t,n){"use strict";var r=n(216),o=n(487),a=n(488),i=n(13),u=n(279),c=n(143),s=n(489),l=n(22).Buffer;e.exports=function(e,t,n){var f;f=e.padding?e.padding:n?1:4;var d,p=r(e),h=p.modulus.byteLength();if(t.length>h||new i(t).cmp(p.modulus)>=0)throw new Error("decryption error");d=n?s(new i(t),p):u(t,p);var y=l.alloc(h-d.length);if(d=l.concat([y,d],h),4===f)return function(e,t){var n=e.modulus.byteLength(),r=c("sha1").update(l.alloc(0)).digest(),i=r.length;if(0!==t[0])throw new Error("decryption error");var u=t.slice(1,i+1),s=t.slice(i+1),f=a(u,o(s,i)),d=a(s,o(f,n-i-1));if(function(e,t){e=l.from(e),t=l.from(t);var n=0,r=e.length;e.length!==t.length&&(n++,r=Math.min(e.length,t.length));var o=-1;for(;++o=t.length){a++;break}var i=t.slice(2,o-1);("0002"!==r.toString("hex")&&!n||"0001"!==r.toString("hex")&&n)&&a++;i.length<8&&a++;if(a)throw new Error("decryption error");return t.slice(o)}(0,d,n);if(3===f)return d;throw new Error("unknown padding")}},function(e,t,n){"use strict";(function(e,r){function o(){throw new Error("secure random number generation not supported by this browser\nuse chrome, FireFox or Internet Explorer 11")}var a=n(22),i=n(99),u=a.Buffer,c=a.kMaxLength,s=e.crypto||e.msCrypto,l=Math.pow(2,32)-1;function f(e,t){if("number"!=typeof e||e!=e)throw new TypeError("offset must be a number");if(e>l||e<0)throw new TypeError("offset must be a uint32");if(e>c||e>t)throw new RangeError("offset out of range")}function d(e,t,n){if("number"!=typeof e||e!=e)throw new TypeError("size must be a number");if(e>l||e<0)throw new TypeError("size must be a uint32");if(e+t>n||e>c)throw new RangeError("buffer too small")}function p(e,t,n,o){if(r.browser){var a=e.buffer,u=new Uint8Array(a,t,n);return s.getRandomValues(u),o?void r.nextTick((function(){o(null,e)})):e}if(!o)return i(n).copy(e,t),e;i(n,(function(n,r){if(n)return o(n);r.copy(e,t),o(null,e)}))}s&&s.getRandomValues||!r.browser?(t.randomFill=function(t,n,r,o){if(!(u.isBuffer(t)||t instanceof e.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');if("function"==typeof n)o=n,n=0,r=t.length;else if("function"==typeof r)o=r,r=t.length-n;else if("function"!=typeof o)throw new TypeError('"cb" argument must be a function');return f(n,t.length),d(r,n,t.length),p(t,n,r,o)},t.randomFillSync=function(t,n,r){void 0===n&&(n=0);if(!(u.isBuffer(t)||t instanceof e.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');f(n,t.length),void 0===r&&(r=t.length-n);return d(r,n,t.length),p(t,n,r)}):(t.randomFill=o,t.randomFillSync=o)}).call(this,n(33),n(27))},function(e,t,n){"use strict";var r=n(13),o=n(457),a=function(e){return new r(e.slice(2),16)},i=function(e){var t="0x"+("0x"===e.slice(0,2)?new r(e.slice(2),16):new r(e,10)).toString("hex");return"0x0"===t?"0x":t},u=function(e){return"string"==typeof e?/^0x/.test(e)?e:"0x"+e:"0x"+new r(e).toString("hex")},c=function(e){return a(e).toNumber()},s=function(e){return function(t,n){return"0x"+a(t)[e](a(n)).toString("hex")}},l=s("add"),f=s("mul"),d=s("div"),p=s("sub");e.exports={toString:function(e){return a(e).toString(10)},fromString:i,toNumber:c,fromNumber:u,toEther:function(e){return c(d(e,i("10000000000")))/1e8},fromEther:function(e){return f(u(Math.floor(1e8*e)),i("10000000000"))},toUint256:function(e){return o.pad(32,e)},add:l,mul:f,div:d,sub:p}},function(e,t,n){"use strict";e.exports={encode:function(e){var t=function(e){return(t=e.toString(16)).length%2==0?t:"0"+t;var t},n=function(e,n){return e<56?t(n+e):t(n+t(e).length/2+55)+t(e)};return"0x"+function e(t){if("string"==typeof t){var r=t.slice(2);return(2!=r.length||r>="80"?n(r.length/2,128):"")+r}var o=t.map(e).join("");return n(o.length/2,192)+o}(e)},decode:function(e){var t=2,n=function(){if(t>=e.length)throw"";var n=e.slice(t,t+2);return n<"80"?(t+=2,"0x"+n):n<"c0"?o():a()},r=function(){var n=parseInt(e.slice(t,t+=2),16)%64;return n<56?n:parseInt(e.slice(t,t+=2*(n-55)),16)},o=function(){var n=r();return"0x"+e.slice(t,t+=2*n)},a=function(){for(var e=2*r()+t,o=[];t>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|u>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=u^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],b=e[1],q=e[11]<<4|e[10]>>>28,W=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,m=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,g=e[25]<<11|e[24]>>>21,k=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,E=e[18]<<20|e[19]>>>12,P=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,K=e[38]<<8|e[39]>>>24,G=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~m&g,e[1]=b^~v&k,e[10]=T^~E&S,e[11]=O^~P&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~q&Y,e[31]=V^~W&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=m^~g&_,e[3]=v^~k&w,e[12]=E^~S&D,e[13]=P^~R&C,e[22]=x^~U&K,e[23]=F^~L&G,e[32]=q^~Y&J,e[33]=W^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=g^~_&I,e[5]=k^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~K&z,e[25]=L^~G&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&b,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=K^~z&M,e[27]=G^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&m,e[9]=A^~b&v,e[18]=N^~T&E,e[19]=B^~O&P,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&q,e[39]=ee^~V&W,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=i[r],e[1]^=i[r+1]},c=function(e){return function(t){var n;if("0x"===t.slice(0,2)){n=[];for(var i=2,c=t.length;i>2]|=t[p]<>2]|=n<>2]|=(192|n>>6)<>2]|=(128|63&n)<=57344?(c[b>>2]|=(224|n>>12)<>2]|=(128|n>>6&63)<>2]|=(128|63&n)<>2]|=(240|n>>18)<>2]|=(128|n>>12&63)<>2]|=(128|n>>6&63)<>2]|=(128|63&n)<=s){for(e.start=b-s,e.block=c[l],b=0;b>2]|=o[3&b],e.lastByteIndex===s)for(c[0]=c[l],b=1;b>4&15]+r[15&h]+r[h>>12&15]+r[h>>8&15]+r[h>>20&15]+r[h>>16&15]+r[h>>28&15]+r[h>>24&15];m%l==0&&(u(d),b=0)}return"0x"+y}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(e),n)}};e.exports={keccak256:c(256),keccak512:c(512),keccak256s:c(256),keccak512s:c(512)}},function(e,t,n){"use strict";(function(t){!function(n){function r(e){var t=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),n=1779033703,r=3144134277,o=1013904242,a=2773480762,i=1359893119,u=2600822924,c=528734635,s=1541459225,l=new Uint32Array(64);function f(e){for(var f=0,d=e.length;d>=64;){var p=n,h=r,y=o,b=a,m=i,v=u,g=c,k=s,_=void 0,w=void 0,I=void 0,A=void 0,T=void 0;for(w=0;w<16;w++)I=f+4*w,l[w]=(255&e[I])<<24|(255&e[I+1])<<16|(255&e[I+2])<<8|255&e[I+3];for(w=16;w<64;w++)A=((_=l[w-2])>>>17|_<<15)^(_>>>19|_<<13)^_>>>10,T=((_=l[w-15])>>>7|_<<25)^(_>>>18|_<<14)^_>>>3,l[w]=(A+l[w-7]|0)+(T+l[w-16]|0)|0;for(w=0;w<64;w++)A=(((m>>>6|m<<26)^(m>>>11|m<<21)^(m>>>25|m<<7))+(m&v^~m&g)|0)+(k+(t[w]+l[w]|0)|0)|0,T=((p>>>2|p<<30)^(p>>>13|p<<19)^(p>>>22|p<<10))+(p&h^p&y^h&y)|0,k=g,g=v,v=m,m=b+A|0,b=y,y=h,h=p,p=A+T|0;n=n+p|0,r=r+h|0,o=o+y|0,a=a+b|0,i=i+m|0,u=u+v|0,c=c+g|0,s=s+k|0,f+=64,d-=64}}f(e);var d,p=e.length%64,h=e.length/536870912|0,y=e.length<<3,b=p<56?56:120,m=e.slice(e.length-p,e.length);for(m.push(128),d=p+1;d>>24&255),m.push(h>>>16&255),m.push(h>>>8&255),m.push(h>>>0&255),m.push(y>>>24&255),m.push(y>>>16&255),m.push(y>>>8&255),m.push(y>>>0&255),f(m),[n>>>24&255,n>>>16&255,n>>>8&255,n>>>0&255,r>>>24&255,r>>>16&255,r>>>8&255,r>>>0&255,o>>>24&255,o>>>16&255,o>>>8&255,o>>>0&255,a>>>24&255,a>>>16&255,a>>>8&255,a>>>0&255,i>>>24&255,i>>>16&255,i>>>8&255,i>>>0&255,u>>>24&255,u>>>16&255,u>>>8&255,u>>>0&255,c>>>24&255,c>>>16&255,c>>>8&255,c>>>0&255,s>>>24&255,s>>>16&255,s>>>8&255,s>>>0&255]}function o(e,t,n){e=e.length<=64?e:r(e);var o,a=64+t.length+4,i=new Array(a),u=new Array(64),c=[];for(o=0;o<64;o++)i[o]=54;for(o=0;o=a-4;e--){if(i[e]++,i[e]<=255)return;i[e]=0}}for(;n>=32;)s(),c=c.concat(r(u.concat(r(i)))),n-=32;return n>0&&(s(),c=c.concat(r(u.concat(r(i))).slice(0,n))),c}function a(e,t,n,r,o){var a;for(s(e,16*(2*n-1),o,0,16),a=0;a<2*n;a++)c(e,16*a,o,16),u(o,r),s(o,0,e,t+16*a,16);for(a=0;a>>32-t}function u(e,t){s(e,0,t,0,16);for(var n=8;n>0;n-=2)t[4]^=i(t[0]+t[12],7),t[8]^=i(t[4]+t[0],9),t[12]^=i(t[8]+t[4],13),t[0]^=i(t[12]+t[8],18),t[9]^=i(t[5]+t[1],7),t[13]^=i(t[9]+t[5],9),t[1]^=i(t[13]+t[9],13),t[5]^=i(t[1]+t[13],18),t[14]^=i(t[10]+t[6],7),t[2]^=i(t[14]+t[10],9),t[6]^=i(t[2]+t[14],13),t[10]^=i(t[6]+t[2],18),t[3]^=i(t[15]+t[11],7),t[7]^=i(t[3]+t[15],9),t[11]^=i(t[7]+t[3],13),t[15]^=i(t[11]+t[7],18),t[1]^=i(t[0]+t[3],7),t[2]^=i(t[1]+t[0],9),t[3]^=i(t[2]+t[1],13),t[0]^=i(t[3]+t[2],18),t[6]^=i(t[5]+t[4],7),t[7]^=i(t[6]+t[5],9),t[4]^=i(t[7]+t[6],13),t[5]^=i(t[4]+t[7],18),t[11]^=i(t[10]+t[9],7),t[8]^=i(t[11]+t[10],9),t[9]^=i(t[8]+t[11],13),t[10]^=i(t[9]+t[8],18),t[12]^=i(t[15]+t[14],7),t[13]^=i(t[12]+t[15],9),t[14]^=i(t[13]+t[12],13),t[15]^=i(t[14]+t[13],18);for(var r=0;r<16;++r)e[r]+=t[r]}function c(e,t,n,r){for(var o=0;o=256)return!1}return!0}function f(e,t){if("number"!=typeof e||e%1)throw new Error("invalid "+t);return e}function d(e,n,r,i,u,d,p){if(r=f(r,"N"),i=f(i,"r"),u=f(u,"p"),d=f(d,"dkLen"),0===r||0!=(r&r-1))throw new Error("N must be power of 2");if(r>2147483647/128/i)throw new Error("N too large");if(i>2147483647/128/u)throw new Error("r too large");if(!l(e))throw new Error("password must be an array or buffer");if(e=Array.prototype.slice.call(e),!l(n))throw new Error("salt must be an array or buffer");n=Array.prototype.slice.call(n);for(var h=o(e,n,128*u*i),y=new Uint32Array(32*u*i),b=0;bD&&(n=D);for(var l=0;lD&&(n=D);for(var b=0;b>0&255),h.push(y[B]>>8&255),h.push(y[B]>>16&255),h.push(y[B]>>24&255);var M=o(e,h,d);return p&&p(null,1,M),M}p&&C(t)};if(!p)for(;;){var B=N();if(null!=B)return B}N()}var p={scrypt:function(e,t,n,r,o,a,i){return new Promise((function(u,c){var s=0;i&&i(0),d(e,t,n,r,o,a,(function(e,t,n){if(e)c(e);else if(n)i&&1!==s&&i(1),u(new Uint8Array(n));else if(i&&t!==s)return s=t,i(t)}))}))},syncScrypt:function(e,t,n,r,o,a){return new Uint8Array(d(e,t,n,r,o,a))}};e.exports=p}()}).call(this,n(389).setImmediate)},function(e,t,n){"use strict";var r=n(999),o=n(1e3),a=o;a.v1=r,a.v4=o,e.exports=a},function(e,t,n){"use strict";var r,o,a=n(490),i=n(491),u=0,c=0;e.exports=function(e,t,n){var s=t&&n||0,l=t||[],f=(e=e||{}).node||r,d=void 0!==e.clockseq?e.clockseq:o;if(null==f||null==d){var p=a();null==f&&(f=r=[1|p[0],p[1],p[2],p[3],p[4],p[5]]),null==d&&(d=o=16383&(p[6]<<8|p[7]))}var h=void 0!==e.msecs?e.msecs:(new Date).getTime(),y=void 0!==e.nsecs?e.nsecs:c+1,b=h-u+(y-c)/1e4;if(b<0&&void 0===e.clockseq&&(d=d+1&16383),(b<0||h>u)&&void 0===e.nsecs&&(y=0),y>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");u=h,c=y,o=d;var m=(1e4*(268435455&(h+=122192928e5))+y)%4294967296;l[s++]=m>>>24&255,l[s++]=m>>>16&255,l[s++]=m>>>8&255,l[s++]=255&m;var v=h/4294967296*1e4&268435455;l[s++]=v>>>8&255,l[s++]=255&v,l[s++]=v>>>24&15|16,l[s++]=v>>>16&255,l[s++]=d>>>8|128,l[s++]=255&d;for(var g=0;g<6;++g)l[s+g]=f[g];return t||i(l)}},function(e,t,n){"use strict";var r=n(490),o=n(491);e.exports=function(e,t,n){var a=t&&n||0;"string"==typeof e&&(t="binary"===e?new Array(16):null,e=null);var i=(e=e||{}).random||(e.rng||r)();if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,t)for(var u=0;u<16;++u)t[a+u]=i[u];return t||o(i)}},function(e,t,n){"use strict";var r=Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]},o=function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.isHexString=t.getKeys=t.fromAscii=t.fromUtf8=t.toAscii=t.arrayContainsArray=t.getBinarySize=t.padToEven=t.stripHexPrefix=t.isHexPrefixed=void 0,o(n(492),t),o(n(493),t),o(n(1032),t),o(n(284),t),o(n(1033),t),o(n(125),t),o(n(1034),t),o(n(92),t),o(n(287),t);var a=n(152);Object.defineProperty(t,"isHexPrefixed",{enumerable:!0,get:function(){return a.isHexPrefixed}}),Object.defineProperty(t,"stripHexPrefix",{enumerable:!0,get:function(){return a.stripHexPrefix}}),Object.defineProperty(t,"padToEven",{enumerable:!0,get:function(){return a.padToEven}}),Object.defineProperty(t,"getBinarySize",{enumerable:!0,get:function(){return a.getBinarySize}}),Object.defineProperty(t,"arrayContainsArray",{enumerable:!0,get:function(){return a.arrayContainsArray}}),Object.defineProperty(t,"toAscii",{enumerable:!0,get:function(){return a.toAscii}}),Object.defineProperty(t,"fromUtf8",{enumerable:!0,get:function(){return a.fromUtf8}}),Object.defineProperty(t,"fromAscii",{enumerable:!0,get:function(){return a.fromAscii}}),Object.defineProperty(t,"getKeys",{enumerable:!0,get:function(){return a.getKeys}}),Object.defineProperty(t,"isHexString",{enumerable:!0,get:function(){return a.isHexString}})},function(e,t,n){"use strict";(function(e){var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getLength=t.decode=t.encode=void 0;var o=r(n(13));function a(e,t){if("0"===e[0]&&"0"===e[1])throw new Error("invalid RLP: extra zeros");return parseInt(e,t)}function i(t,n){if(t<56)return e.from([t+n]);var r=c(t),o=c(n+55+r.length/2);return e.from(o+r,"hex")}function u(e){return"0x"===e.slice(0,2)}function c(e){if(e<0)throw new Error("Invalid integer as argument, must be unsigned!");var t=e.toString(16);return t.length%2?"0"+t:t}function s(t){if(!e.isBuffer(t)){if("string"==typeof t)return u(t)?e.from((r="string"!=typeof(a=t)?a:u(a)?a.slice(2):a).length%2?"0"+r:r,"hex"):e.from(t);if("number"==typeof t||"bigint"==typeof t)return t?(n=c(t),e.from(n,"hex")):e.from([]);if(null==t)return e.from([]);if(t instanceof Uint8Array)return e.from(t);if(o.default.isBN(t))return e.from(t.toArray());throw new Error("invalid type")}var n,r,a;return t}t.encode=function t(n){if(Array.isArray(n)){for(var r=[],o=0;on.length)throw new Error("invalid rlp: total length is larger than the data");if(0===(u=n.slice(o,f)).length)throw new Error("invalid rlp, List has a invalid length");for(;u.length;)c=t(u),s.push(c.data),u=c.remainder;return{data:s,remainder:n.slice(f)}}(s(t));if(n)return r;if(0!==r.remainder.length)throw new Error("invalid remainder");return r.data},t.getLength=function(t){if(!t||0===t.length)return e.from([]);var n=s(t),r=n[0];if(r<=127)return n.length;if(r<=183)return r-127;if(r<=191)return r-182;if(r<=247)return r-191;var o=r-246;return o+a(n.slice(1,o).toString("hex"),16)}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return o(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:function(e){return new Uint8Array(e)},t=arguments.length>1?arguments[1]:void 0;return"function"==typeof e&&(e=e(t)),v("output",e,t),e}function _(e){return Object.prototype.toString.call(e).slice(8,-1)}e.exports=function(e){return{contextRandomize:function(t){switch(m(null===t||t instanceof Uint8Array,"Expected seed to be an Uint8Array or null"),null!==t&&v("seed",t,32),e.contextRandomize(t)){case 1:throw new Error(c)}},privateKeyVerify:function(t){return v("private key",t,32),0===e.privateKeyVerify(t)},privateKeyNegate:function(t){switch(v("private key",t,32),e.privateKeyNegate(t)){case 0:return t;case 1:throw new Error(a)}},privateKeyTweakAdd:function(t,n){switch(v("private key",t,32),v("tweak",n,32),e.privateKeyTweakAdd(t,n)){case 0:return t;case 1:throw new Error(i)}},privateKeyTweakMul:function(t,n){switch(v("private key",t,32),v("tweak",n,32),e.privateKeyTweakMul(t,n)){case 0:return t;case 1:throw new Error(u)}},publicKeyVerify:function(t){return v("public key",t,[33,65]),0===e.publicKeyVerify(t)},publicKeyCreate:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("private key",t,32),g(n),r=k(r,n?33:65),e.publicKeyCreate(r,t)){case 0:return r;case 1:throw new Error(s);case 2:throw new Error(f)}},publicKeyConvert:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("public key",t,[33,65]),g(n),r=k(r,n?33:65),e.publicKeyConvert(r,t)){case 0:return r;case 1:throw new Error(l);case 2:throw new Error(f)}},publicKeyNegate:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("public key",t,[33,65]),g(n),r=k(r,n?33:65),e.publicKeyNegate(r,t)){case 0:return r;case 1:throw new Error(l);case 2:throw new Error(a);case 3:throw new Error(f)}},publicKeyCombine:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=arguments.length>2?arguments[2]:void 0;m(Array.isArray(t),"Expected public keys to be an Array"),m(t.length>0,"Expected public keys array will have more than zero items");var a,i=r(t);try{for(i.s();!(a=i.n()).done;){var u=a.value;v("public key",u,[33,65])}}catch(e){i.e(e)}finally{i.f()}switch(g(n),o=k(o,n?33:65),e.publicKeyCombine(o,t)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(d);case 3:throw new Error(f)}},publicKeyTweakAdd:function(t,n){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("tweak",n,32),g(r),o=k(o,r?33:65),e.publicKeyTweakAdd(o,t,n)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(i)}},publicKeyTweakMul:function(t,n){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("tweak",n,32),g(r),o=k(o,r?33:65),e.publicKeyTweakMul(o,t,n)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(u)}},signatureNormalize:function(t){switch(v("signature",t,64),e.signatureNormalize(t)){case 0:return t;case 1:throw new Error(p)}},signatureExport:function(t,n){v("signature",t,64);var r={output:n=k(n,72),outputlen:72};switch(e.signatureExport(r,t)){case 0:return n.slice(0,r.outputlen);case 1:throw new Error(p);case 2:throw new Error(a)}},signatureImport:function(t,n){switch(v("signature",t),n=k(n,64),e.signatureImport(n,t)){case 0:return n;case 1:throw new Error(p);case 2:throw new Error(a)}},ecdsaSign:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;v("message",t,32),v("private key",n,32),m("Object"===_(r),"Expected options to be an Object"),void 0!==r.data&&v("options.data",r.data),void 0!==r.noncefn&&m("Function"===_(r.noncefn),"Expected options.noncefn to be a Function");var i={signature:o=k(o,64),recid:null};switch(e.ecdsaSign(i,t,n,r.data,r.noncefn)){case 0:return i;case 1:throw new Error(h);case 2:throw new Error(a)}},ecdsaVerify:function(t,n,r){switch(v("signature",t,64),v("message",n,32),v("public key",r,[33,65]),e.ecdsaVerify(t,n,r)){case 0:return!0;case 3:return!1;case 1:throw new Error(p);case 2:throw new Error(l)}},ecdsaRecover:function(t,n,r){var o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=arguments.length>4?arguments[4]:void 0;switch(v("signature",t,64),m("Number"===_(n)&&n>=0&&n<=3,"Expected recovery id to be a Number within interval [0, 3]"),v("message",r,32),g(o),i=k(i,o?33:65),e.ecdsaRecover(i,t,n,r)){case 0:return i;case 1:throw new Error(p);case 2:throw new Error(y);case 3:throw new Error(a)}},ecdh:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("private key",n,32),m("Object"===_(r),"Expected options to be an Object"),void 0!==r.data&&v("options.data",r.data),void 0!==r.hashfn?(m("Function"===_(r.hashfn),"Expected options.hashfn to be a Function"),void 0!==r.xbuf&&v("options.xbuf",r.xbuf,32),void 0!==r.ybuf&&v("options.ybuf",r.ybuf,32),v("output",o)):o=k(o,32),e.ecdh(o,t,n,r.data,r.hashfn,r.xbuf,r.ybuf)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(b)}}}}},function(e,t,n){"use strict";var r=new(0,n(409).ec)("secp256k1"),o=r.curve,a=o.n.constructor;function i(e){var t=e[0];switch(t){case 2:case 3:return 33!==e.length?null:function(e,t){var n=new a(t);if(n.cmp(o.p)>=0)return null;var i=(n=n.toRed(o.red)).redSqr().redIMul(n).redIAdd(o.b).redSqrt();return 3===e!==i.isOdd()&&(i=i.redNeg()),r.keyPair({pub:{x:n,y:i}})}(t,e.subarray(1,33));case 4:case 6:case 7:return 65!==e.length?null:function(e,t,n){var i=new a(t),u=new a(n);if(i.cmp(o.p)>=0||u.cmp(o.p)>=0)return null;if(i=i.toRed(o.red),u=u.toRed(o.red),(6===e||7===e)&&u.isOdd()!==(7===e))return null;var c=i.redSqr().redIMul(i);return u.redSqr().redISub(c.redIAdd(o.b)).isZero()?r.keyPair({pub:{x:i,y:u}}):null}(t,e.subarray(1,33),e.subarray(33,65));default:return null}}function u(e,t){for(var n=t.encode(null,33===e.length),r=0;r=0)return 1;if(n.iadd(new a(e)),n.cmp(o.n)>=0&&n.isub(o.n),n.isZero())return 1;var r=n.toArrayLike(Uint8Array,"be",32);return e.set(r),0},privateKeyTweakMul:function(e,t){var n=new a(t);if(n.cmp(o.n)>=0||n.isZero())return 1;n.imul(new a(e)),n.cmp(o.n)>=0&&(n=n.umod(o.n));var r=n.toArrayLike(Uint8Array,"be",32);return e.set(r),0},publicKeyVerify:function(e){return null===i(e)?1:0},publicKeyCreate:function(e,t){var n=new a(t);return n.cmp(o.n)>=0||n.isZero()?1:(u(e,r.keyFromPrivate(t).getPublic()),0)},publicKeyConvert:function(e,t){var n=i(t);return null===n?1:(u(e,n.getPublic()),0)},publicKeyNegate:function(e,t){var n=i(t);if(null===n)return 1;var r=n.getPublic();return r.y=r.y.redNeg(),u(e,r),0},publicKeyCombine:function(e,t){for(var n=new Array(t.length),r=0;r=0)return 2;var c=r.getPublic().add(o.g.mul(n));return c.isInfinity()?2:(u(e,c),0)},publicKeyTweakMul:function(e,t,n){var r=i(t);return null===r?1:(n=new a(n)).cmp(o.n)>=0||n.isZero()?2:(u(e,r.getPublic().mul(n)),0)},signatureNormalize:function(e){var t=new a(e.subarray(0,32)),n=new a(e.subarray(32,64));return t.cmp(o.n)>=0||n.cmp(o.n)>=0?1:(1===n.cmp(r.nh)&&e.set(o.n.sub(n).toArrayLike(Uint8Array,"be",32),32),0)},signatureExport:function(e,t){var n=t.subarray(0,32),r=t.subarray(32,64);if(new a(n).cmp(o.n)>=0)return 1;if(new a(r).cmp(o.n)>=0)return 1;var i=e.output,u=i.subarray(4,37);u[0]=0,u.set(n,1);for(var c=33,s=0;c>1&&0===u[s]&&!(128&u[s+1]);--c,++s);if(128&(u=u.subarray(s))[0])return 1;if(c>1&&0===u[0]&&!(128&u[1]))return 1;var l=i.subarray(39,72);l[0]=0,l.set(r,1);for(var f=33,d=0;f>1&&0===l[d]&&!(128&l[d+1]);--f,++d);return 128&(l=l.subarray(d))[0]||f>1&&0===l[0]&&!(128&l[1])?1:(e.outputlen=6+c+f,i[0]=48,i[1]=e.outputlen-2,i[2]=2,i[3]=u.length,i.set(u,4),i[4+c]=2,i[5+c]=l.length,i.set(l,6+c),0)},signatureImport:function(e,t){if(t.length<8)return 1;if(t.length>72)return 1;if(48!==t[0])return 1;if(t[1]!==t.length-2)return 1;if(2!==t[2])return 1;var n=t[3];if(0===n)return 1;if(5+n>=t.length)return 1;if(2!==t[4+n])return 1;var r=t[5+n];if(0===r)return 1;if(6+n+r!==t.length)return 1;if(128&t[4])return 1;if(n>1&&0===t[4]&&!(128&t[5]))return 1;if(128&t[n+6])return 1;if(r>1&&0===t[n+6]&&!(128&t[n+7]))return 1;var i=t.subarray(4,4+n);if(33===i.length&&0===i[0]&&(i=i.subarray(1)),i.length>32)return 1;var u=t.subarray(6+n);if(33===u.length&&0===u[0]&&(u=u.slice(1)),u.length>32)throw new Error("S length is too long");var c=new a(i);c.cmp(o.n)>=0&&(c=new a(0));var s=new a(t.subarray(6+n));return s.cmp(o.n)>=0&&(s=new a(0)),e.set(c.toArrayLike(Uint8Array,"be",32),0),e.set(s.toArrayLike(Uint8Array,"be",32),32),0},ecdsaSign:function(e,t,n,i,u){if(u){var c=u;u=function(e){var r=c(t,n,null,i,e);if(!(r instanceof Uint8Array&&32===r.length))throw new Error("This is the way");return new a(r)}}var s,l=new a(n);if(l.cmp(o.n)>=0||l.isZero())return 1;try{s=r.sign(t,n,{canonical:!0,k:u,pers:i})}catch(e){return 1}return e.signature.set(s.r.toArrayLike(Uint8Array,"be",32),0),e.signature.set(s.s.toArrayLike(Uint8Array,"be",32),32),e.recid=s.recoveryParam,0},ecdsaVerify:function(e,t,n){var u={r:e.subarray(0,32),s:e.subarray(32,64)},c=new a(u.r),s=new a(u.s);if(c.cmp(o.n)>=0||s.cmp(o.n)>=0)return 1;if(1===s.cmp(r.nh)||c.isZero()||s.isZero())return 3;var l=i(n);if(null===l)return 2;var f=l.getPublic();return r.verify(t,u,f)?0:3},ecdsaRecover:function(e,t,n,i){var c,s={r:t.slice(0,32),s:t.slice(32,64)},l=new a(s.r),f=new a(s.s);if(l.cmp(o.n)>=0||f.cmp(o.n)>=0)return 1;if(l.isZero()||f.isZero())return 2;try{c=r.recoverPubKey(i,s,n)}catch(e){return 2}return u(e,c),0},ecdh:function(e,t,n,u,c,s,l){var f=i(t);if(null===f)return 1;var d=new a(n);if(d.cmp(o.n)>=0||d.isZero())return 2;var p=f.getPublic().mul(d);if(void 0===c)for(var h=p.encode(null,!0),y=r.hash().update(h).digest(),b=0;b<32;++b)e[b]=y[b];else{s||(s=new Uint8Array(32));for(var m=p.getX().toArray("be",32),v=0;v<32;++v)s[v]=m[v];l||(l=new Uint8Array(32));for(var g=p.getY().toArray("be",32),k=0;k<32;++k)l[k]=g[k];var _=c(s,l,u);if(!(_ instanceof Uint8Array&&_.length===e.length))return 2;e.set(_)}return 0}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1006);t.getRandomBytes=function(e){return new Promise((function(t,n){r(e,(function(e,r){e?n(e):t(r)}))}))},t.getRandomBytesSync=function(e){return r(e)}},function(e,t,n){"use strict";(function(t,r){var o=n(72).Buffer,a=t.crypto||t.msCrypto;a&&a.getRandomValues?e.exports=function(e,t){if(e>4294967295)throw new RangeError("requested too many random bytes");var n=o.allocUnsafe(e);if(e>0)if(e>65536)for(var i=0;i0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return i.alloc(0);for(var t,n,r,o=i.allocUnsafe(e>>>0),a=this.head,u=0;a;)t=a.data,n=o,r=u,i.prototype.copy.call(t,n,r),u+=a.data.length,a=a.next;return o}},{key:"consume",value:function(e,t){var n;return eo.length?o.length:e;if(a===o.length?r+=o:r+=o.slice(0,e),0==(e-=a)){a===o.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=o.slice(a));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=i.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var o=n.data,a=e>o.length?o.length:e;if(o.copy(t,t.length-e,0,a),0==(e-=a)){a===o.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++r}return this.length-=r,t}},{key:c,value:function(e,t){return u(this,function(e){for(var t=1;t0,(function(e){r||(r=e),e&&i.forEach(s),a||(i.forEach(s),o(r))}))}));return t.reduce(l)}},function(e,t,n){"use strict";(function(t){var r=n(0),o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=n(285).Transform;e.exports=function(e){return function(n){(0,i.default)(u,n);var r=s(u);function u(t,n,a,i){var c;return(0,o.default)(this,u),(c=r.call(this,i))._rate=t,c._capacity=n,c._delimitedSuffix=a,c._options=i,c._state=new e,c._state.initialize(t,n),c._finalized=!1,c}return(0,a.default)(u,[{key:"_transform",value:function(e,t,n){var r=null;try{this.update(e,t)}catch(e){r=e}n(r)}},{key:"_flush",value:function(){}},{key:"_read",value:function(e){this.push(this.squeeze(e))}},{key:"update",value:function(e,n){if(!t.isBuffer(e)&&"string"!=typeof e)throw new TypeError("Data must be a string or a buffer");if(this._finalized)throw new Error("Squeeze already called");return t.isBuffer(e)||(e=t.from(e,n)),this._state.absorb(e),this}},{key:"squeeze",value:function(e,t){this._finalized||(this._finalized=!0,this._state.absorbLastFewBits(this._delimitedSuffix));var n=this._state.squeeze(e);return void 0!==t&&(n=n.toString(t)),n}},{key:"_resetState",value:function(){return this._state.initialize(this._rate,this._capacity),this}},{key:"_clone",value:function(){var e=new u(this._rate,this._capacity,this._delimitedSuffix,this._options);return this._state.copy(e._state),e._finalized=this._finalized,e}}]),u}(l)}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";(function(t){var r=n(1022);function o(){this.state=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.blockSize=null,this.count=0,this.squeezing=!1}o.prototype.initialize=function(e,t){for(var n=0;n<50;++n)this.state[n]=0;this.blockSize=e/8,this.count=0,this.squeezing=!1},o.prototype.absorb=function(e){for(var t=0;t>>this.count%4*8&255,this.count+=1,this.count===this.blockSize&&(r.p1600(this.state),this.count=0);return n},o.prototype.copy=function(e){for(var t=0;t<50;++t)e.state[t]=this.state[t];e.blockSize=this.blockSize,e.count=this.count,e.squeezing=this.squeezing},e.exports=o}).call(this,n(12).Buffer)},function(e,t,n){"use strict";var r=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648];t.p1600=function(e){for(var t=0;t<24;++t){var n=e[0]^e[10]^e[20]^e[30]^e[40],o=e[1]^e[11]^e[21]^e[31]^e[41],a=e[2]^e[12]^e[22]^e[32]^e[42],i=e[3]^e[13]^e[23]^e[33]^e[43],u=e[4]^e[14]^e[24]^e[34]^e[44],c=e[5]^e[15]^e[25]^e[35]^e[45],s=e[6]^e[16]^e[26]^e[36]^e[46],l=e[7]^e[17]^e[27]^e[37]^e[47],f=e[8]^e[18]^e[28]^e[38]^e[48],d=e[9]^e[19]^e[29]^e[39]^e[49],p=f^(a<<1|i>>>31),h=d^(i<<1|a>>>31),y=e[0]^p,b=e[1]^h,m=e[10]^p,v=e[11]^h,g=e[20]^p,k=e[21]^h,_=e[30]^p,w=e[31]^h,I=e[40]^p,A=e[41]^h;p=n^(u<<1|c>>>31),h=o^(c<<1|u>>>31);var T=e[2]^p,O=e[3]^h,E=e[12]^p,P=e[13]^h,S=e[22]^p,R=e[23]^h,D=e[32]^p,C=e[33]^h,N=e[42]^p,B=e[43]^h;p=a^(s<<1|l>>>31),h=i^(l<<1|s>>>31);var M=e[4]^p,j=e[5]^h,x=e[14]^p,F=e[15]^h,U=e[24]^p,L=e[25]^h,K=e[34]^p,G=e[35]^h,z=e[44]^p,Q=e[45]^h;p=u^(f<<1|d>>>31),h=c^(d<<1|f>>>31);var H=e[6]^p,V=e[7]^h,q=e[16]^p,W=e[17]^h,Y=e[26]^p,Z=e[27]^h,J=e[36]^p,X=e[37]^h,$=e[46]^p,ee=e[47]^h;p=s^(n<<1|o>>>31),h=l^(o<<1|n>>>31);var te=e[8]^p,ne=e[9]^h,re=e[18]^p,oe=e[19]^h,ae=e[28]^p,ie=e[29]^h,ue=e[38]^p,ce=e[39]^h,se=e[48]^p,le=e[49]^h,fe=y,de=b,pe=v<<4|m>>>28,he=m<<4|v>>>28,ye=g<<3|k>>>29,be=k<<3|g>>>29,me=w<<9|_>>>23,ve=_<<9|w>>>23,ge=I<<18|A>>>14,ke=A<<18|I>>>14,_e=T<<1|O>>>31,we=O<<1|T>>>31,Ie=P<<12|E>>>20,Ae=E<<12|P>>>20,Te=S<<10|R>>>22,Oe=R<<10|S>>>22,Ee=C<<13|D>>>19,Pe=D<<13|C>>>19,Se=N<<2|B>>>30,Re=B<<2|N>>>30,De=j<<30|M>>>2,Ce=M<<30|j>>>2,Ne=x<<6|F>>>26,Be=F<<6|x>>>26,Me=L<<11|U>>>21,je=U<<11|L>>>21,xe=K<<15|G>>>17,Fe=G<<15|K>>>17,Ue=Q<<29|z>>>3,Le=z<<29|Q>>>3,Ke=H<<28|V>>>4,Ge=V<<28|H>>>4,ze=W<<23|q>>>9,Qe=q<<23|W>>>9,He=Y<<25|Z>>>7,Ve=Z<<25|Y>>>7,qe=J<<21|X>>>11,We=X<<21|J>>>11,Ye=ee<<24|$>>>8,Ze=$<<24|ee>>>8,Je=te<<27|ne>>>5,Xe=ne<<27|te>>>5,$e=re<<20|oe>>>12,et=oe<<20|re>>>12,tt=ie<<7|ae>>>25,nt=ae<<7|ie>>>25,rt=ue<<8|ce>>>24,ot=ce<<8|ue>>>24,at=se<<14|le>>>18,it=le<<14|se>>>18;e[0]=fe^~Ie&Me,e[1]=de^~Ae&je,e[10]=Ke^~$e&ye,e[11]=Ge^~et&be,e[20]=_e^~Ne&He,e[21]=we^~Be&Ve,e[30]=Je^~pe&Te,e[31]=Xe^~he&Oe,e[40]=De^~ze&tt,e[41]=Ce^~Qe&nt,e[2]=Ie^~Me&qe,e[3]=Ae^~je&We,e[12]=$e^~ye&Ee,e[13]=et^~be&Pe,e[22]=Ne^~He&rt,e[23]=Be^~Ve&ot,e[32]=pe^~Te&xe,e[33]=he^~Oe&Fe,e[42]=ze^~tt&me,e[43]=Qe^~nt&ve,e[4]=Me^~qe&at,e[5]=je^~We&it,e[14]=ye^~Ee&Ue,e[15]=be^~Pe&Le,e[24]=He^~rt&ge,e[25]=Ve^~ot&ke,e[34]=Te^~xe&Ye,e[35]=Oe^~Fe&Ze,e[44]=tt^~me&Se,e[45]=nt^~ve&Re,e[6]=qe^~at&fe,e[7]=We^~it&de,e[16]=Ee^~Ue&Ke,e[17]=Pe^~Le&Ge,e[26]=rt^~ge&_e,e[27]=ot^~ke&we,e[36]=xe^~Ye&Je,e[37]=Fe^~Ze&Xe,e[46]=me^~Se&De,e[47]=ve^~Re&Ce,e[8]=at^~fe&Ie,e[9]=it^~de&Ae,e[18]=Ue^~Ke&$e,e[19]=Le^~Ge&et,e[28]=ge^~_e&Ne,e[29]=ke^~we&Be,e[38]=Ye^~Je&pe,e[39]=Ze^~Xe&he,e[48]=Se^~De&ze,e[49]=Re^~Ce&Qe,e[0]^=r[2*t],e[1]^=r[2*t+1]}}},function(e,t,n){"use strict";var r=n(41),o=n(1024),a=n(1025),i=n(1026),u=n(1031);function c(e){u.call(this,"digest"),this._hash=e}r(c,u),c.prototype._update=function(e){this._hash.update(e)},c.prototype._final=function(){return this._hash.digest()},e.exports=function(e){return"md5"===(e=e.toLowerCase())?new o:"rmd160"===e||"ripemd160"===e?new a:new c(i(e))}},function(e,t,n){"use strict";var r=n(41),o=n(502),a=n(72).Buffer,i=new Array(16);function u(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<>>32-t}function s(e,t,n,r,o,a,i){return c(e+(t&n|~t&r)+o+a|0,i)+t|0}function l(e,t,n,r,o,a,i){return c(e+(t&r|n&~r)+o+a|0,i)+t|0}function f(e,t,n,r,o,a,i){return c(e+(t^n^r)+o+a|0,i)+t|0}function d(e,t,n,r,o,a,i){return c(e+(n^(t|~r))+o+a|0,i)+t|0}r(u,o),u.prototype._update=function(){for(var e=i,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,o=this._c,a=this._d;n=s(n,r,o,a,e[0],3614090360,7),a=s(a,n,r,o,e[1],3905402710,12),o=s(o,a,n,r,e[2],606105819,17),r=s(r,o,a,n,e[3],3250441966,22),n=s(n,r,o,a,e[4],4118548399,7),a=s(a,n,r,o,e[5],1200080426,12),o=s(o,a,n,r,e[6],2821735955,17),r=s(r,o,a,n,e[7],4249261313,22),n=s(n,r,o,a,e[8],1770035416,7),a=s(a,n,r,o,e[9],2336552879,12),o=s(o,a,n,r,e[10],4294925233,17),r=s(r,o,a,n,e[11],2304563134,22),n=s(n,r,o,a,e[12],1804603682,7),a=s(a,n,r,o,e[13],4254626195,12),o=s(o,a,n,r,e[14],2792965006,17),n=l(n,r=s(r,o,a,n,e[15],1236535329,22),o,a,e[1],4129170786,5),a=l(a,n,r,o,e[6],3225465664,9),o=l(o,a,n,r,e[11],643717713,14),r=l(r,o,a,n,e[0],3921069994,20),n=l(n,r,o,a,e[5],3593408605,5),a=l(a,n,r,o,e[10],38016083,9),o=l(o,a,n,r,e[15],3634488961,14),r=l(r,o,a,n,e[4],3889429448,20),n=l(n,r,o,a,e[9],568446438,5),a=l(a,n,r,o,e[14],3275163606,9),o=l(o,a,n,r,e[3],4107603335,14),r=l(r,o,a,n,e[8],1163531501,20),n=l(n,r,o,a,e[13],2850285829,5),a=l(a,n,r,o,e[2],4243563512,9),o=l(o,a,n,r,e[7],1735328473,14),n=f(n,r=l(r,o,a,n,e[12],2368359562,20),o,a,e[5],4294588738,4),a=f(a,n,r,o,e[8],2272392833,11),o=f(o,a,n,r,e[11],1839030562,16),r=f(r,o,a,n,e[14],4259657740,23),n=f(n,r,o,a,e[1],2763975236,4),a=f(a,n,r,o,e[4],1272893353,11),o=f(o,a,n,r,e[7],4139469664,16),r=f(r,o,a,n,e[10],3200236656,23),n=f(n,r,o,a,e[13],681279174,4),a=f(a,n,r,o,e[0],3936430074,11),o=f(o,a,n,r,e[3],3572445317,16),r=f(r,o,a,n,e[6],76029189,23),n=f(n,r,o,a,e[9],3654602809,4),a=f(a,n,r,o,e[12],3873151461,11),o=f(o,a,n,r,e[15],530742520,16),n=d(n,r=f(r,o,a,n,e[2],3299628645,23),o,a,e[0],4096336452,6),a=d(a,n,r,o,e[7],1126891415,10),o=d(o,a,n,r,e[14],2878612391,15),r=d(r,o,a,n,e[5],4237533241,21),n=d(n,r,o,a,e[12],1700485571,6),a=d(a,n,r,o,e[3],2399980690,10),o=d(o,a,n,r,e[10],4293915773,15),r=d(r,o,a,n,e[1],2240044497,21),n=d(n,r,o,a,e[8],1873313359,6),a=d(a,n,r,o,e[15],4264355552,10),o=d(o,a,n,r,e[6],2734768916,15),r=d(r,o,a,n,e[13],1309151649,21),n=d(n,r,o,a,e[4],4149444226,6),a=d(a,n,r,o,e[11],3174756917,10),o=d(o,a,n,r,e[2],718787259,15),r=d(r,o,a,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+o|0,this._d=this._d+a|0},u.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=a.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=u},function(e,t,n){"use strict";var r=n(12).Buffer,o=n(41),a=n(502),i=new Array(16),u=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],s=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],l=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],f=[0,1518500249,1859775393,2400959708,2840853838],d=[1352829926,1548603684,1836072691,2053994217,0];function p(){a.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function h(e,t){return e<>>32-t}function y(e,t,n,r,o,a,i,u){return h(e+(t^n^r)+a+i|0,u)+o|0}function b(e,t,n,r,o,a,i,u){return h(e+(t&n|~t&r)+a+i|0,u)+o|0}function m(e,t,n,r,o,a,i,u){return h(e+((t|~n)^r)+a+i|0,u)+o|0}function v(e,t,n,r,o,a,i,u){return h(e+(t&r|n&~r)+a+i|0,u)+o|0}function g(e,t,n,r,o,a,i,u){return h(e+(t^(n|~r))+a+i|0,u)+o|0}o(p,a),p.prototype._update=function(){for(var e=i,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,o=0|this._c,a=0|this._d,p=0|this._e,k=0|this._a,_=0|this._b,w=0|this._c,I=0|this._d,A=0|this._e,T=0;T<80;T+=1){var O,E;T<16?(O=y(n,r,o,a,p,e[u[T]],f[0],s[T]),E=g(k,_,w,I,A,e[c[T]],d[0],l[T])):T<32?(O=b(n,r,o,a,p,e[u[T]],f[1],s[T]),E=v(k,_,w,I,A,e[c[T]],d[1],l[T])):T<48?(O=m(n,r,o,a,p,e[u[T]],f[2],s[T]),E=m(k,_,w,I,A,e[c[T]],d[2],l[T])):T<64?(O=v(n,r,o,a,p,e[u[T]],f[3],s[T]),E=b(k,_,w,I,A,e[c[T]],d[3],l[T])):(O=g(n,r,o,a,p,e[u[T]],f[4],s[T]),E=y(k,_,w,I,A,e[c[T]],d[4],l[T])),n=p,p=a,a=h(o,10),o=r,r=O,k=A,A=I,I=h(w,10),w=_,_=E}var P=this._b+o+I|0;this._b=this._c+a+A|0,this._c=this._d+p+k|0,this._d=this._e+n+_|0,this._e=this._a+r+w|0,this._a=P},p.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=r.alloc?r.alloc(20):new r(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=p},function(e,t,n){"use strict";var r=e.exports=function(e){e=e.toLowerCase();var t=r[e];if(!t)throw new Error(e+" is not supported (we accept pull requests)");return new t};r.sha=n(1027),r.sha1=n(1028),r.sha224=n(1029),r.sha256=n(503),r.sha384=n(1030),r.sha512=n(504)},function(e,t,n){"use strict";var r=n(41),o=n(155),a=n(72).Buffer,i=[1518500249,1859775393,-1894007588,-899497514],u=new Array(80);function c(){this.init(),this._w=u,o.call(this,64,56)}function s(e){return e<<30|e>>>2}function l(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,o),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,f=0;f<16;++f)n[f]=e.readInt32BE(4*f);for(;f<80;++f)n[f]=n[f-3]^n[f-8]^n[f-14]^n[f-16];for(var d=0;d<80;++d){var p=~~(d/20),h=0|((t=r)<<5|t>>>27)+l(p,o,a,u)+c+n[d]+i[p];c=u,u=a,a=s(o),o=r,r=h}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},function(e,t,n){"use strict";var r=n(41),o=n(155),a=n(72).Buffer,i=[1518500249,1859775393,-1894007588,-899497514],u=new Array(80);function c(){this.init(),this._w=u,o.call(this,64,56)}function s(e){return e<<5|e>>>27}function l(e){return e<<30|e>>>2}function f(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,o),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,d=0;d<16;++d)n[d]=e.readInt32BE(4*d);for(;d<80;++d)n[d]=(t=n[d-3]^n[d-8]^n[d-14]^n[d-16])<<1|t>>>31;for(var p=0;p<80;++p){var h=~~(p/20),y=s(r)+f(h,o,a,u)+c+n[p]+i[h]|0;c=u,u=a,a=l(o),o=r,r=y}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},function(e,t,n){"use strict";var r=n(41),o=n(503),a=n(155),i=n(72).Buffer,u=new Array(64);function c(){this.init(),this._w=u,a.call(this,64,56)}r(c,o),c.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},c.prototype._hash=function(){var e=i.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=c},function(e,t,n){"use strict";var r=n(41),o=n(504),a=n(155),i=n(72).Buffer,u=new Array(160);function c(){this.init(),this._w=u,a.call(this,128,112)}r(c,o),c.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},c.prototype._hash=function(){var e=i.allocUnsafe(48);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e},e.exports=c},function(e,t,n){"use strict";var r=n(72).Buffer,o=n(385).Transform,a=n(62).StringDecoder;function i(e){o.call(this),this.hashMode="string"==typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}n(41)(i,o),i.prototype.update=function(e,t,n){"string"==typeof e&&(e=r.from(e,t));var o=this._update(e);return this.hashMode?this:(n&&(o=this._toString(o,n)),o)},i.prototype.setAutoPadding=function(){},i.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},i.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},i.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},i.prototype._transform=function(e,t,n){var r;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(e){r=e}finally{n(r)}},i.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(e){t=e}e(t)},i.prototype._finalOrDigest=function(e){var t=this.__final()||r.alloc(0);return e&&(t=this._toString(t,e,!0)),t},i.prototype._toString=function(e,t,n){if(this._decoder||(this._decoder=new a(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var r=this._decoder.write(e);return n&&(r+=this._decoder.end()),r},e.exports=i},function(e,t,n){"use strict";(function(e){var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Address=void 0;var o=r(n(139)),a=n(92),i=n(125),u=n(493),c=function(){function t(e){(0,o.default)(20===e.length,"Invalid address length"),this.buf=e}return t.zero=function(){return new t((0,i.zeros)(20))},t.fromString=function(e){return(0,o.default)((0,u.isValidAddress)(e),"Invalid address"),new t((0,i.toBuffer)(e))},t.fromPublicKey=function(n){return(0,o.default)(e.isBuffer(n),"Public key should be Buffer"),new t((0,u.pubToAddress)(n))},t.fromPrivateKey=function(n){return(0,o.default)(e.isBuffer(n),"Private key should be Buffer"),new t((0,u.privateToAddress)(n))},t.generate=function(n,r){return(0,o.default)(a.BN.isBN(r)),new t((0,u.generateAddress)(n.buf,r.toArrayLike(e)))},t.generate2=function(n,r,a){return(0,o.default)(e.isBuffer(r)),(0,o.default)(e.isBuffer(a)),new t((0,u.generateAddress2)(n.buf,r,a))},t.prototype.equals=function(e){return this.buf.equals(e.buf)},t.prototype.isZero=function(){return this.equals(t.zero())},t.prototype.isPrecompileOrSystemAddress=function(){var e=new a.BN(this.buf),t=new a.BN(0),n=new a.BN("ffff","hex");return e.gte(t)&&e.lte(n)},t.prototype.toString=function(){return"0x"+this.buf.toString("hex")},t.prototype.toBuffer=function(){return e.from(this.buf)},t}();t.Address=c}).call(this,n(12).Buffer)},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.hashPersonalMessage=t.isValidSignature=t.fromRpcSig=t.toCompactSig=t.toRpcSig=t.ecrecover=t.ecsign=void 0;var r=n(494),o=n(92),a=n(125),i=n(284),u=n(217),c=n(287);function s(e,t){var n=(0,c.toType)(e,c.TypeOutput.BN);if(!t)return n.subn(27);var r=(0,c.toType)(t,c.TypeOutput.BN);return n.sub(r.muln(2).addn(35))}function l(e){var t=new o.BN(e);return t.eqn(0)||t.eqn(1)}t.ecsign=function(t,n,o){var a=(0,r.ecdsaSign)(t,n),i=a.signature,u=a.recid,s=e.from(i.slice(0,32)),l=e.from(i.slice(32,64));if(!o||"number"==typeof o){if(o&&!Number.isSafeInteger(o))throw new Error("The provided number is greater than MAX_SAFE_INTEGER (please use an alternative input type)");return{r:s,s:l,v:o?u+(2*o+35):u+27}}return{r:s,s:l,v:(0,c.toType)(o,c.TypeOutput.BN).muln(2).addn(35).addn(u).toArrayLike(e)}};t.ecrecover=function(t,n,o,i,u){var c=e.concat([(0,a.setLengthLeft)(o,32),(0,a.setLengthLeft)(i,32)],64),f=s(n,u);if(!l(f))throw new Error("Invalid signature v value");var d=(0,r.ecdsaRecover)(c,f.toNumber(),t);return e.from((0,r.publicKeyConvert)(d,!1).slice(1))};t.toRpcSig=function(t,n,r,o){if(!l(s(t,o)))throw new Error("Invalid signature v value");return(0,a.bufferToHex)(e.concat([(0,a.setLengthLeft)(n,32),(0,a.setLengthLeft)(r,32),(0,a.toBuffer)(t)]))};t.toCompactSig=function(t,n,r,o){if(!l(s(t,o)))throw new Error("Invalid signature v value");var i=(0,c.toType)(t,c.TypeOutput.Number),u=r;return(i>28&&i%2==1||1===i||28===i)&&((u=e.from(r))[0]|=128),(0,a.bufferToHex)(e.concat([(0,a.setLengthLeft)(n,32),(0,a.setLengthLeft)(u,32)]))};t.fromRpcSig=function(e){var t,n,r,o=(0,a.toBuffer)(e);if(o.length>=65)t=o.slice(0,32),n=o.slice(32,64),r=(0,a.bufferToInt)(o.slice(64));else{if(64!==o.length)throw new Error("Invalid signature length");t=o.slice(0,32),n=o.slice(32,64),r=(0,a.bufferToInt)(o.slice(32,33))>>7,n[0]&=127}return r<27&&(r+=27),{v:r,r:t,s:n}};t.isValidSignature=function(e,t,n,r,a){void 0===r&&(r=!0);var i=new o.BN("7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0",16),u=new o.BN("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141",16);if(32!==t.length||32!==n.length)return!1;if(!l(s(e,a)))return!1;var c=new o.BN(t),f=new o.BN(n);return!(c.isZero()||c.gt(u)||f.isZero()||f.gt(u))&&(!r||1!==f.cmp(i))};t.hashPersonalMessage=function(t){(0,u.assertIsBuffer)(t);var n=e.from("Ethereum Signed Message:\n".concat(t.length),"utf-8");return(0,i.keccak)(e.concat([n,t]))}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";(function(e){var r=n(0)(n(3)),o=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.defineProperties=void 0;var a=o(n(139)),i=n(152),u=n(92),c=n(125);t.defineProperties=function(t,n,o){if(t.raw=[],t._fields=[],t.toJSON=function(e){if(void 0===e&&(e=!1),e){var n={};return t._fields.forEach((function(e){n[e]="0x".concat(t[e].toString("hex"))})),n}return(0,c.baToJSON)(t.raw)},t.serialize=function(){return u.rlp.encode(t.raw)},n.forEach((function(n,r){function o(){return t.raw[r]}function i(o){"00"!==(o=(0,c.toBuffer)(o)).toString("hex")||n.allowZero||(o=e.allocUnsafe(0)),n.allowLess&&n.length?(o=(0,c.unpadBuffer)(o),(0,a.default)(n.length>=o.length,"The field ".concat(n.name," must not have more ").concat(n.length," bytes"))):n.allowZero&&0===o.length||!n.length||(0,a.default)(n.length===o.length,"The field ".concat(n.name," must have byte length of ").concat(n.length)),t.raw[r]=o}t._fields.push(n.name),Object.defineProperty(t,n.name,{enumerable:!0,configurable:!0,get:o,set:i}),n.default&&(t[n.name]=n.default),n.alias&&Object.defineProperty(t,n.alias,{enumerable:!1,configurable:!0,set:i,get:o})})),o)if("string"==typeof o&&(o=e.from((0,i.stripHexPrefix)(o),"hex")),e.isBuffer(o)&&(o=u.rlp.decode(o)),Array.isArray(o)){if(o.length>t._fields.length)throw new Error("wrong number of fields in data");o.forEach((function(e,n){t[t._fields[n]]=(0,c.toBuffer)(e)}))}else{if("object"!==(0,r.default)(o))throw new Error("invalid data");var s=Object.keys(o);n.forEach((function(e){-1!==s.indexOf(e.name)&&(t[e.name]=o[e.name]),-1!==s.indexOf(e.alias)&&(t[e.alias]=o[e.alias])}))}}}).call(this,n(12).Buffer)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(399),o=function(e,t){var n=this,o=e.publicKey,a=(new r.AccountCreateTransaction).setKey(o);n.currentProvider.send(a,(function(r,a){if(r)throw r;n.currentProvider.getReceipt(a,(function(n,r){if(n)throw n;var a=Object.assign({},r);a.privateKey=e,a.publicKey=o,t(a)}))}))};t.default=o},function(e,t,n){"use strict";var r=n(0)(n(3)),o=n(1037),a=n(133),i=n(165),u=n(79),c=n(258).subscription,s=n(69).formatters,l=n(69).errors,f=n(392),d=n(1174),p=function e(t,n,o){var i=this,c=Array.prototype.slice.call(arguments);if(!(this instanceof e))throw new Error('Please use the "new" keyword to instantiate a web3.eth.Contract() object!');if(this.setProvider=function(){(0,a.packageInit)(i,arguments),i.clearSubscriptions=i._requestManager.clearSubscriptions},(0,a.packageInit)(this,[this.constructor]),this.clearSubscriptions=this._requestManager.clearSubscriptions,!t||!Array.isArray(t))throw l.ContractMissingABIError();this.options={};var f=c[c.length-1];f&&"object"===(0,r.default)(f)&&!Array.isArray(f)&&(o=f,this.options=Object.assign(Object.assign({},this.options),this._getOrSetDefaultOptions(o)),n&&"object"===(0,r.default)(n)&&(n=null)),Object.defineProperty(this.options,"address",{set:function(e){e&&(i._address=e)},get:function(){return i._address},enumerable:!0}),Object.defineProperty(this.options,"jsonInterface",{set:function(e){return i.methods={},i.events={},i._jsonInterface=e.map((function(e){var t,n;if(e.constant="view"===e.stateMutability||"pure"===e.stateMutability||e.constant,e.payable="payable"===e.stateMutability||e.payable,e.name&&(n=u._jsonInterfaceMethodToString(e)),"function"===e.type){if(e.signature=d.encodeFunctionSignature(n),t=i._createTxObject.bind({method:e,parent:i}),i.methods[e.name]){var r=i._createTxObject.bind({method:e,parent:i,nextMethod:i.methods[e.name]});i.methods[e.name]=r}else i.methods[e.name]=t;i.methods[e.signature]=t,i.methods[n]=t}else if("event"===e.type){e.signature=d.encodeEventSignature(n);var o=i._on.bind(i,e.signature);i.events[e.name]&&"bound "!==i.events[e.name].name||(i.events[e.name]=o),i.events[e.signature]=o,i.events[n]=o}return e})),i.events.allEvents=i._on.bind(i,"allevents"),i._jsonInterface},get:function(){return i._jsonInterface},enumerable:!0});var p=this.constructor.defaultAccount,h=this.constructor.defaultBlock||"latest";Object.defineProperty(this,"handleRevert",{get:function(){return!1===i.options.handleRevert||!0===i.options.handleRevert?i.options.handleRevert:this.constructor.handleRevert},set:function(e){i.options.handleRevert=e},enumerable:!0}),Object.defineProperty(this,"defaultCommon",{get:function(){return i.options.common||this.constructor.defaultCommon},set:function(e){i.options.common=e},enumerable:!0}),Object.defineProperty(this,"defaultHardfork",{get:function(){return i.options.hardfork||this.constructor.defaultHardfork},set:function(e){i.options.hardfork=e},enumerable:!0}),Object.defineProperty(this,"defaultChain",{get:function(){return i.options.chain||this.constructor.defaultChain},set:function(e){i.options.chain=e},enumerable:!0}),Object.defineProperty(this,"transactionPollingTimeout",{get:function(){return 0===i.options.transactionPollingTimeout?i.options.transactionPollingTimeout:i.options.transactionPollingTimeout||this.constructor.transactionPollingTimeout},set:function(e){i.options.transactionPollingTimeout=e},enumerable:!0}),Object.defineProperty(this,"transactionPollingInterval",{get:function(){return 0===i.options.transactionPollingInterval?i.options.transactionPollingInterval:i.options.transactionPollingInterval||this.constructor.transactionPollingInterval},set:function(e){i.options.transactionPollingInterval=e},enumerable:!0}),Object.defineProperty(this,"transactionConfirmationBlocks",{get:function(){return 0===i.options.transactionConfirmationBlocks?i.options.transactionConfirmationBlocks:i.options.transactionConfirmationBlocks||this.constructor.transactionConfirmationBlocks},set:function(e){i.options.transactionConfirmationBlocks=e},enumerable:!0}),Object.defineProperty(this,"transactionBlockTimeout",{get:function(){return 0===i.options.transactionBlockTimeout?i.options.transactionBlockTimeout:i.options.transactionBlockTimeout||this.constructor.transactionBlockTimeout},set:function(e){i.options.transactionBlockTimeout=e},enumerable:!0}),Object.defineProperty(this,"blockHeaderTimeout",{get:function(){return 0===i.options.blockHeaderTimeout?i.options.blockHeaderTimeout:i.options.blockHeaderTimeout||this.constructor.blockHeaderTimeout},set:function(e){i.options.blockHeaderTimeout=e},enumerable:!0}),Object.defineProperty(this,"defaultAccount",{get:function(){return p},set:function(e){return e&&(p=u.toChecksumAddress(s.inputAddressFormatter(e))),e},enumerable:!0}),Object.defineProperty(this,"defaultBlock",{get:function(){return h},set:function(e){return h=e,e},enumerable:!0}),this.methods={},this.events={},this._address=null,this._jsonInterface=[],this.options.address=n,this.options.jsonInterface=t};p.setProvider=function(e,t){(0,a.packageInit)(this,[e]),this._ethAccounts=t},p.prototype._getCallback=function(e){if(e&&e[e.length-1]&&"function"==typeof e[e.length-1])return e.pop()},p.prototype._checkListener=function(e,t){if(t===e)throw l.ContractReservedEventError(e)},p.prototype._getOrSetDefaultOptions=function(e){var t=e.from?e.from:null;return e.data=e.data||this.options.data,e.from=t||this.options.from,e.gas=e.gas||e.gasLimit||this.options.gas,e.queryPayment=e.queryPayment||this.options.queryPayment,delete e.gasLimit,e},p.prototype._encodeEventABI=function(e,t){var n=(t=t||{}).filter||{},r={};if(["fromBlock","toBlock"].filter((function(e){return void 0!==t[e]})).forEach((function(e){r[e]=s.inputBlockNumberFormatter(t[e])})),Array.isArray(t.topics))r.topics=t.topics;else{if(r.topics=[],e&&!e.anonymous&&"ALLEVENTS"!==e.name&&r.topics.push(e.signature),"ALLEVENTS"!==e.name){var o=e.inputs.filter((function(e){return!0===e.indexed})).map((function(e){var t=n[e.name];return t?Array.isArray(t)?t.map((function(t){return d.encodeParameter(e.type,t)})):d.encodeParameter(e.type,t):null}));r.topics=r.topics.concat(o)}r.topics.length||delete r.topics}return this.options.address&&(r.address=this.options.address.toLowerCase()),r},p.prototype._decodeEventABI=function(e){var t=this;e.data=e.data||"",e.topics=e.topics||[];var n=s.outputLogFormatter(e);if("ALLEVENTS"===t.name&&(t=t.jsonInterface.find((function(t){return t.signature===e.topics[0]}))||{anonymous:!0}),t.inputs=t.inputs||[],!t.anonymous){var r=0;t.inputs.forEach((function(e){return e.indexed?r++:null})),r>0&&e.topics.length!==r+1&&(t={anonymous:!0,inputs:[]})}var o=t.anonymous?e.topics:e.topics.slice(1);return n.returnValues=d.decodeLog(t.inputs,e.data,o),delete n.returnValues.__length__,n.event=t.name,n.signature=t.anonymous||!e.topics[0]?null:e.topics[0],n.raw={data:n.data,topics:n.topics},delete n.data,delete n.topics,n},p.prototype._encodeMethodABI=function(){var e=this._method.signature,t=this.arguments||[],n=this._parent.options.jsonInterface.filter((function(t){return"constructor"===e&&t.type===e||(t.signature===e||t.signature===e.replace("0x","")||t.name===e)&&"function"===t.type})).map((function(e){var n=Array.isArray(e.inputs)?e.inputs.length:0;if(n!==t.length)throw new Error("The number of arguments is not matching the methods required number. You need to pass "+n+" arguments.");return Array.isArray(e.inputs)?e.inputs:[]})).map((function(e){return d.encodeParameters(e,t)}))[0]||"";if("constructor"===e){if(!this._deployData)throw new Error("The contract has no contract data option set. This is necessary to append the constructor parameters.");return this._deployData.startsWith("0x")||(this._deployData="0x"+this._deployData),this._deployData+n}if(!n)throw new Error("Couldn't find a matching contract method named \""+this._method.name+'".');return n},p.prototype._decodeMethodReturn=function(e,t){if(!t)return null;t=t.length>=2?t.slice(2):t;var n=d.decodeParameters(e,t);return 1===n.__length__?n[0]:(delete n.__length__,n)},p.prototype.deploy=function(e){var t=this,n={};if((e=e||{}).arguments=e.arguments||[],!e.fileId)throw l.ContractMissingDeployDataError();return n.send=function(n,r){var a=(new o.ContractCreateTransaction).setBytecodeFileId(e.fileId);if(!n.gas)return r(l.ContractMissingDeployDataError());a.setGas(n.gas.toTinybars()),e.arguments.constructorParameters&&a.setConstructorParameters(e.arguments.constructorParameters),e.arguments.initialBalance&&a.setInitialBalance(e.arguments.initialBalance),e.arguments.memo&&a.setContractMemo(e.arguments.memo),e.arguments.renewPeriod&&a.setAutoRenewPeriod(e.arguments.renewPeriod),t._requestManager.send(a,(function(e,n){e&&r(e),t._requestManager.getReceipt(n,(function(e,n){e&&r(e),r(null,new t.constructor(t.options.jsonInterface,n.contractId.toString()))}))}))},n.estimateGas=function(){throw new Error("Not implemented")},n.createAccessList=function(){throw new Error("Not implemented")},n},p.prototype._generateEventOptions=function(){var e=Array.prototype.slice.call(arguments),t=this._getCallback(e),n="object"===(!!e[e.length-1]&&(0,r.default)(e[e.length-1]))?e.pop():{},o="string"==typeof e[0]?e[0]:"allevents",a="allevents"===o.toLowerCase()?{name:"ALLEVENTS",jsonInterface:this.options.jsonInterface}:this.options.jsonInterface.find((function(e){return"event"===e.type&&(e.name===o||e.signature==="0x"+o.replace("0x",""))}));if(!a)throw l.ContractEventDoesNotExistError(o);if(!u.isAddress(this.options.address))throw l.ContractNoAddressDefinedError();return{params:this._encodeEventABI(a,n),event:a,callback:t}},p.prototype.clone=function(){return new this.constructor(this.options.jsonInterface,this.options.address,this.options)},p.prototype.once=function(e,t,n){var r=Array.prototype.slice.call(arguments);if(!(n=this._getCallback(r)))throw l.ContractOnceRequiresCallbackError();t&&delete t.fromBlock,this._on(e,t,(function(e,t,r){r.unsubscribe(),"function"==typeof n&&n(e,t,r)}))},p.prototype._on=function(){var e=this._generateEventOptions.apply(this,arguments);e.params&&e.params.toBlock&&(delete e.params.toBlock,console.warn("Invalid option: toBlock. Use getPastEvents for specific range.")),this._checkListener("newListener",e.event.name),this._checkListener("removeListener",e.event.name);var t=new c({subscription:{params:1,inputFormatter:[s.inputLogFormatter],outputFormatter:this._decodeEventABI.bind(e.event),subscriptionHandler:function(e){e.removed?this.emit("changed",e):this.emit("data",e),"function"==typeof this.callback&&this.callback(null,e,this)}},type:"eth",requestManager:this._requestManager});return t.subscribe("logs",e.params,e.callback||function(){}),t},p.prototype.getPastEvents=function(){var e=this._generateEventOptions.apply(this,arguments),t=new i({name:"getPastLogs",call:"eth_getLogs",params:1,inputFormatter:[s.inputLogFormatter],outputFormatter:this._decodeEventABI.bind(e.event)});t.setRequestManager(this._requestManager);var n=t.buildCall();return t=null,n(e.params,e.callback)},p.prototype._createTxObject=function(){var e=Array.prototype.slice.call(arguments),t={};if("function"===this.method.type&&(t.call=this.parent._executeMethod.bind(t,"call"),t.call.request=this.parent._executeMethod.bind(t,"call",!0)),t.send=this.parent._executeMethod.bind(t,"send"),t.send.request=this.parent._executeMethod.bind(t,"send",!0),t.encodeABI=this.parent._encodeMethodABI.bind(t),t.estimateGas=this.parent._executeMethod.bind(t,"estimate"),t.createAccessList=this.parent._executeMethod.bind(t,"createAccessList"),e&&this.method.inputs&&e.length!==this.method.inputs.length){if(this.nextMethod)return this.nextMethod.apply(null,e);throw l.InvalidNumberOfParams(e.length,this.method.inputs.length,this.method.name)}return t.arguments=e||[],t._method=this.method,t._parent=this.parent,t._ethAccounts=this.parent.constructor._ethAccounts||this._ethAccounts,this.deployData&&(t._deployData=this.deployData),t},p.prototype._processExecuteArguments=function(e,t){var n={};if(n.type=e.shift(),n.callback=this._parent._getCallback(e),"call"!==n.type||!0===e[e.length-1]||"string"!=typeof e[e.length-1]&&!isFinite(e[e.length-1])||(n.defaultBlock=e.pop()),n.options="object"===(!!e[e.length-1]&&(0,r.default)(e[e.length-1]))?e.pop():{},n.generateRequest=!0===e[e.length-1]&&e.pop(),n.options=this._parent._getOrSetDefaultOptions(n.options),n.options.data=this.encodeABI(),!this._deployData&&!u.isAddress(this._parent.options.address))throw l.ContractNoAddressDefinedError();return this._deployData||(n.options.to=this._parent.options.address),n.options.data?n:u._fireError(new Error("Couldn't find a matching contract method, or the number of parameters is wrong."),t.eventEmitter,t.reject,n.callback)},p.prototype._executeMethod=function(){var e=this,t=this._parent._processExecuteArguments.call(this,Array.prototype.slice.call(arguments),n),n=f("send"!==t.type);if(t.generateRequest){var r={params:[s.inputCallFormatter.call(this._parent,t.options)],callback:t.callback};return"call"===t.type?(r.params.push(s.inputDefaultBlockNumberFormatter.call(this._parent,t.defaultBlock)),r.method="eth_call",r.format=this._parent._decodeMethodReturn.bind(null,this._method.outputs)):r.method="eth_sendTransaction",r}switch(t.type){case"createAccessList":case"estimate":throw new Error("Not supported");case"call":var a=(new o.ContractCallQuery).setContractId(e._parent.options.address).setFunction(e._method.name,t.options.data||void 0).setGas(t.options.gas).setQueryPayment(t.options.queryPayment);return e._parent._requestManager.send(a,t.callback);case"send":if(!u.isAddress(t.options.from))return u._fireError(l.ContractNoFromAddressDefinedError(),n.eventEmitter,n.reject,t.callback);if("boolean"==typeof this._method.payable&&!this._method.payable&&t.options.value&&t.options.value>0)return u._fireError(new Error("Can not send value to non-payable contract method or constructor"),n.eventEmitter,n.reject,t.callback);var i=(new o.ContractExecuteTransaction).setContractId(e._parent.options.address).setFunction(e._method.name).setGas(t.options.gas).setPayableAmount(t.options.value);return t.options.data&&i.setFunctionParameters(t.options.data),e._parent._requestManager.send(i,t.callback);default:throw new Error('Method "'+t.type+'" not implemented.')}},e.exports=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0});var o={Client:!0};Object.defineProperty(t,"Client",{enumerable:!0,get:function(){return i.default}});var a=n(1038);Object.keys(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||e in t&&t[e]===a[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return a[e]}}))}));var i=r(n(1158))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AccountBalance",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"AccountBalanceQuery",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"AccountCreateTransaction",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(t,"AccountDeleteTransaction",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"AccountId",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"AccountInfo",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"AccountInfoQuery",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"AccountRecordsQuery",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"AccountStakersQuery",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"AccountUpdateTransaction",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"AssessedCustomFee",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return o.BadKeyError}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return o.BadMnemonicError}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return o.BadMnemonicReason}}),Object.defineProperty(t,"ContractByteCodeQuery",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"ContractCallQuery",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"ContractCreateTransaction",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"ContractDeleteTransaction",{enumerable:!0,get:function(){return I.default}}),Object.defineProperty(t,"ContractExecuteTransaction",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"ContractFunctionParameters",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"ContractFunctionResult",{enumerable:!0,get:function(){return O.default}}),Object.defineProperty(t,"ContractFunctionSelector",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"ContractId",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"ContractInfo",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"ContractInfoQuery",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"ContractLogInfo",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"ContractUpdateTransaction",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"CustomFee",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"CustomFixedFee",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"CustomFractionalFee",{enumerable:!0,get:function(){return he.default}}),Object.defineProperty(t,"CustomRoyaltyFee",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"ExchangeRate",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"FileAppendTransaction",{enumerable:!0,get:function(){return B.default}}),Object.defineProperty(t,"FileContentsQuery",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"FileCreateTransaction",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"FileDeleteTransaction",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"FileId",{enumerable:!0,get:function(){return F.default}}),Object.defineProperty(t,"FileInfo",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"FileInfoQuery",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"FileUpdateTransaction",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"FreezeTransaction",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"Hbar",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"HbarUnit",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"LedgerId",{enumerable:!0,get:function(){return it.default}}),Object.defineProperty(t,"LiveHash",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"LiveHashAddTransaction",{enumerable:!0,get:function(){return V.default}}),Object.defineProperty(t,"LiveHashDeleteTransaction",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"LiveHashQuery",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return s.default}}),t.NetworkName=void 0,Object.defineProperty(t,"NetworkVersionInfo",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"NetworkVersionInfoQuery",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"NftId",{enumerable:!0,get:function(){return ye.default}}),Object.defineProperty(t,"PrecheckStatusError",{enumerable:!0,get:function(){return ot.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"ProxyStaker",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"Query",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"ReceiptStatusError",{enumerable:!0,get:function(){return at.default}}),Object.defineProperty(t,"ScheduleCreateTransaction",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"ScheduleDeleteTransaction",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"ScheduleId",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"ScheduleInfo",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"ScheduleInfoQuery",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"ScheduleSignTransaction",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"SemanticVersion",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"Status",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"StatusError",{enumerable:!0,get:function(){return rt.default}}),Object.defineProperty(t,"SystemDeleteTransaction",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"SystemUndeleteTransaction",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"Timestamp",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"TokenAssociateTransaction",{enumerable:!0,get:function(){return be.default}}),Object.defineProperty(t,"TokenBurnTransaction",{enumerable:!0,get:function(){return me.default}}),Object.defineProperty(t,"TokenCreateTransaction",{enumerable:!0,get:function(){return ve.default}}),Object.defineProperty(t,"TokenDeleteTransaction",{enumerable:!0,get:function(){return ge.default}}),Object.defineProperty(t,"TokenDissociateTransaction",{enumerable:!0,get:function(){return ke.default}}),Object.defineProperty(t,"TokenFeeScheduleUpdateTransaction",{enumerable:!0,get:function(){return _e.default}}),Object.defineProperty(t,"TokenFreezeTransaction",{enumerable:!0,get:function(){return we.default}}),Object.defineProperty(t,"TokenGrantKycTransaction",{enumerable:!0,get:function(){return Ae.default}}),Object.defineProperty(t,"TokenId",{enumerable:!0,get:function(){return Te.default}}),Object.defineProperty(t,"TokenInfo",{enumerable:!0,get:function(){return Oe.default}}),Object.defineProperty(t,"TokenInfoQuery",{enumerable:!0,get:function(){return Ee.default}}),Object.defineProperty(t,"TokenMintTransaction",{enumerable:!0,get:function(){return Pe.default}}),Object.defineProperty(t,"TokenNftInfo",{enumerable:!0,get:function(){return Se.default}}),Object.defineProperty(t,"TokenNftInfoQuery",{enumerable:!0,get:function(){return Re.default}}),Object.defineProperty(t,"TokenPauseTransaction",{enumerable:!0,get:function(){return Ie.default}}),Object.defineProperty(t,"TokenRevokeKycTransaction",{enumerable:!0,get:function(){return De.default}}),Object.defineProperty(t,"TokenSupplyType",{enumerable:!0,get:function(){return Ce.default}}),Object.defineProperty(t,"TokenType",{enumerable:!0,get:function(){return Ne.default}}),Object.defineProperty(t,"TokenUnfreezeTransaction",{enumerable:!0,get:function(){return Be.default}}),Object.defineProperty(t,"TokenUnpauseTransaction",{enumerable:!0,get:function(){return Me.default}}),Object.defineProperty(t,"TokenUpdateTransaction",{enumerable:!0,get:function(){return je.default}}),Object.defineProperty(t,"TokenWipeTransaction",{enumerable:!0,get:function(){return xe.default}}),Object.defineProperty(t,"TopicCreateTransaction",{enumerable:!0,get:function(){return Fe.default}}),Object.defineProperty(t,"TopicDeleteTransaction",{enumerable:!0,get:function(){return Ue.default}}),Object.defineProperty(t,"TopicId",{enumerable:!0,get:function(){return Le.default}}),Object.defineProperty(t,"TopicInfo",{enumerable:!0,get:function(){return Ke.default}}),Object.defineProperty(t,"TopicInfoQuery",{enumerable:!0,get:function(){return Ge.default}}),Object.defineProperty(t,"TopicMessage",{enumerable:!0,get:function(){return ze.default}}),Object.defineProperty(t,"TopicMessageChunk",{enumerable:!0,get:function(){return Qe.default}}),Object.defineProperty(t,"TopicMessageQuery",{enumerable:!0,get:function(){return He.default}}),Object.defineProperty(t,"TopicMessageSubmitTransaction",{enumerable:!0,get:function(){return Ve.default}}),Object.defineProperty(t,"TopicUpdateTransaction",{enumerable:!0,get:function(){return qe.default}}),Object.defineProperty(t,"Transaction",{enumerable:!0,get:function(){return We.default}}),Object.defineProperty(t,"TransactionId",{enumerable:!0,get:function(){return Ye.default}}),Object.defineProperty(t,"TransactionReceipt",{enumerable:!0,get:function(){return Ze.default}}),Object.defineProperty(t,"TransactionReceiptQuery",{enumerable:!0,get:function(){return Je.default}}),Object.defineProperty(t,"TransactionRecord",{enumerable:!0,get:function(){return Xe.default}}),Object.defineProperty(t,"TransactionRecordQuery",{enumerable:!0,get:function(){return $e.default}}),Object.defineProperty(t,"TransactionResponse",{enumerable:!0,get:function(){return et.default}}),Object.defineProperty(t,"Transfer",{enumerable:!0,get:function(){return tt.default}}),Object.defineProperty(t,"TransferTransaction",{enumerable:!0,get:function(){return nt.default}});var o=n(218),a=r(n(523)),i=r(n(94)),u=r(n(129)),c=r(n(39)),s=r(n(524)),l=r(n(526)),f=r(n(531)),d=r(n(1092)),p=r(n(1098)),h=r(n(14)),y=r(n(543)),b=r(n(1100)),m=r(n(1101)),v=r(n(1102)),g=r(n(1103)),k=r(n(1104)),_=r(n(1105)),w=r(n(1107)),I=r(n(1108)),A=r(n(1109)),T=r(n(225)),O=r(n(296)),E=r(n(546)),P=r(n(55)),S=r(n(547)),R=r(n(1110)),D=r(n(538)),C=r(n(1111)),N=r(n(535)),B=r(n(1112)),M=r(n(1113)),j=r(n(1114)),x=r(n(1115)),F=r(n(57)),U=r(n(548)),L=r(n(1116)),K=r(n(1117)),G=r(n(1118)),z=r(n(32)),Q=r(n(527)),H=r(n(297)),V=r(n(1120)),q=r(n(1121)),W=r(n(1122)),Y=r(n(549)),Z=r(n(1123)),J=r(n(545)),X=r(n(45)),$=r(n(1124)),ee=r(n(1125)),te=r(n(132)),ne=r(n(551)),re=r(n(1126)),oe=r(n(1127)),ae=r(n(550)),ie=r(n(131)),ue=r(n(1128)),ce=r(n(1129)),se=r(n(40)),le=r(n(541)),fe=r(n(226)),de=r(n(178)),pe=r(n(227)),he=r(n(228)),ye=r(n(229)),be=r(n(1130)),me=r(n(1131)),ve=r(n(1132)),ge=r(n(1133)),ke=r(n(1134)),_e=r(n(1135)),we=r(n(1136)),Ie=r(n(1137)),Ae=r(n(1138)),Te=r(n(29)),Oe=r(n(552)),Ee=r(n(1139)),Pe=r(n(1140)),Se=r(n(553)),Re=r(n(1141)),De=r(n(1142)),Ce=r(n(299)),Ne=r(n(298)),Be=r(n(1143)),Me=r(n(1144)),je=r(n(1145)),xe=r(n(1146)),Fe=r(n(1147)),Ue=r(n(1148)),Le=r(n(106)),Ke=r(n(554)),Ge=r(n(1149)),ze=r(n(555)),Qe=r(n(556)),He=r(n(1150)),Ve=r(n(1152)),qe=r(n(1153)),We=r(n(21)),Ye=r(n(67)),Ze=r(n(224)),Je=r(n(534)),Xe=r(n(295)),$e=r(n(536)),et=r(n(533)),tt=r(n(537)),nt=r(n(1154)),rt=r(n(294)),ot=r(n(177)),at=r(n(223)),it=r(n(84));n(1157);t.NetworkName={Mainnet:"mainnet",Testnet:"testnet",Previewnet:"previewnet"}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e,t){(0,i.default)(r,e);var n=s(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function E(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:"";return(0,v.createKeystore)(this.toBytesRaw(),e)}}],[{key:"generateED25519",value:function(){return new T(y.default.generate())}},{key:"generateECDSA",value:function(){return new T(b.default.generate())}},{key:"generate",value:function(){return T.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",T.generateED25519Async());case 1:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=T,e.next=3,y.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=T,e.next=3,b.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){try{return new T(y.default.fromBytes(e))}catch(e){}try{return new T(b.default.fromBytes(e))}catch(e){}throw new p.default("invalid private key length: ".concat(e.length," bytes"))}},{key:"fromBytesECDSA",value:function(e){return new T(b.default.fromBytes(e))}},{key:"fromBytesED25519",value:function(e){return new T(y.default.fromBytes(e))}},{key:"fromString",value:function(e){return T.fromBytes(k.decode(e))}},{key:"fromStringECDSA",value:function(e){return T.fromBytesECDSA(k.decode(e))}},{key:"fromStringED25519",value:function(e){return T.fromBytesED25519(k.decode(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"","string"!=typeof t){e.next=7;break}return e.next=4,d.default.fromString(t);case 4:e.t0=e.sent,e.next=8;break;case 7:e.t0=t;case 8:return e.abrupt("return",e.t0.toPrivateKey(n));case 9:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=T,e.next=4,(0,v.loadKeystore)(t,n);case 4:return e.t1=e.sent,e.abrupt("return",e.t0.fromBytes.call(e.t0,e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:"",e.next=3,(0,g.read)(t,n);case 3:if(!((r=e.sent)instanceof y.default||r instanceof b.default)){e.next=6;break}return e.abrupt("return",new T(r));case 6:return e.abrupt("return",T.fromBytes(r));case 7:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),T}(h.default);t.default=S,I.default.privateKeyConstructor=function(e){return new S(e)},I.default.privateKeyFromBytes=function(e){return S.fromBytes(e)}},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=["aback","abbey","abbot","abide","ablaze","able","aboard","abode","abort","abound","about","above","abroad","abrupt","absent","absorb","absurd","abuse","accent","accept","access","accord","accuse","ace","ache","aching","acid","acidic","acorn","acre","across","act","action","active","actor","actual","acute","adam","adapt","add","added","addict","adept","adhere","adjust","admire","admit","adobe","adopt","adrift","adult","adverb","advice","aerial","afar","affair","affect","afford","afghan","afield","afloat","afraid","afresh","after","again","age","agency","agenda","agent","aghast","agile","ago","agony","agree","agreed","ahead","aid","aide","aim","air","airman","airy","akin","alarm","alaska","albeit","album","ale","alert","alibi","alice","alien","alight","align","alike","alive","alkali","all","alley","allied","allow","alloy","ally","almond","almost","aloft","alone","along","aloof","aloud","alpha","alpine","also","altar","alter","always","amaze","amazon","amber","ambush","amen","amend","amid","amidst","amiss","among","amount","ample","amuse","anchor","and","andrew","anew","angel","anger","angle","angry","animal","ankle","annoy","annual","answer","anthem","any","anyhow","anyway","apart","apathy","apex","apiece","appeal","appear","apple","apply","april","apron","arab","arcade","arcane","arch","arctic","ardent","are","area","argue","arid","arise","ark","arm","armful","army","aroma","around","arouse","array","arrest","arrive","arrow","arson","art","artery","artful","artist","ascent","ash","ashen","ashore","aside","ask","asleep","aspect","assay","assent","assert","assess","asset","assign","assist","assume","assure","asthma","astute","asylum","ate","athens","atlas","atom","atomic","attach","attack","attain","attend","attic","auburn","audio","audit","august","aunt","auntie","aura","austin","author","auto","autumn","avail","avenge","avenue","avert","avid","avoid","await","awake","awaken","award","aware","awash","away","awful","awhile","axe","axes","axiom","axis","axle","aye","babe","baby","bach","back","backup","bacon","bad","badge","badly","bag","baggy","bail","bait","bake","baker","bakery","bald","ball","ballad","ballet","ballot","baltic","bamboo","ban","banal","banana","band","bang","bank","bar","barber","bare","barely","barge","bark","barley","barn","baron","barrel","barren","basalt","base","basic","basil","basin","basis","basket","bass","bat","batch","bath","baton","battle","bay","beach","beacon","beak","beam","bean","bear","beard","beast","beat","beauty","become","bed","beech","beef","beefy","beep","beer","beet","beetle","before","beg","beggar","begin","behalf","behave","behind","beige","being","belief","bell","belly","belong","below","belt","bench","bend","benign","bent","berlin","berry","berth","beset","beside","best","bestow","bet","beta","betray","better","beware","beyond","bias","biceps","bicker","bid","big","bigger","bike","bile","bill","bin","binary","bind","biopsy","birch","bird","birdie","birth","bishop","bit","bitch","bite","bitter","black","blade","blame","bland","blast","blaze","bleak","blend","bless","blew","blind","blink","blip","bliss","blitz","block","blond","blood","bloody","bloom","blot","blouse","blow","blue","bluff","blunt","blur","blush","boar","board","boast","boat","bob","bodily","body","bogus","boil","bold","bolt","bomb","bombay","bond","bone","bonn","bonnet","bonus","bony","book","boom","boost","boot","booth","booze","border","bore","borrow","bosom","boss","boston","both","bother","bottle","bottom","bought","bounce","bound","bounty","bout","bovine","bow","bowel","bowl","box","boy","boyish","brace","brain","brainy","brake","bran","branch","brand","brandy","brass","brave","bravo","brazil","breach","bread","break","breast","breath","bred","breed","breeze","brew","bribe","brick","bride","bridge","brief","bright","brim","brine","bring","brink","brisk","broad","broke","broken","bronze","brook","broom","brown","bruise","brush","brutal","brute","bubble","buck","bucket","buckle","budget","buffet","buggy","build","bulb","bulge","bulk","bulky","bull","bullet","bully","bump","bumpy","bunch","bundle","bunk","bunny","burden","bureau","burial","buried","burly","burn","burnt","burrow","burst","bury","bus","bush","bust","bustle","busy","but","butler","butt","butter","button","buy","buyer","buzz","bye","byte","cab","cabin","cable","cache","cactus","caesar","cage","cairo","cajun","cajole","cake","calf","call","caller","calm","calmly","came","camel","camera","camp","campus","can","canada","canal","canary","cancel","cancer","candid","candle","candy","cane","canine","canoe","canopy","canvas","canyon","cap","cape","car","carbon","card","care","career","caress","cargo","carl","carnal","carol","carp","carpet","carrot","carry","cart","cartel","case","cash","cask","cast","castle","casual","cat","catch","cater","cattle","caught","causal","cause","cave","cease","celery","cell","cellar","celtic","cement","censor","census","cent","cereal","chain","chair","chalk","chalky","champ","chance","change","chant","chaos","chap","chapel","charge","charm","chart","chase","chat","cheap","cheat","check","cheek","cheeky","cheer","cheery","cheese","chef","cheque","cherry","chess","chest","chew","chic","chick","chief","child","chile","chill","chilly","chin","china","chip","choice","choir","choose","chop","choppy","chord","chorus","chose","chosen","chris","chrome","chunk","chunky","church","cider","cigar","cinema","circa","circle","circus","cite","city","civic","civil","clad","claim","clammy","clan","clap","clash","clasp","class","clause","claw","clay","clean","clear","clergy","clerk","clever","click","client","cliff","climax","climb","clinch","cling","clinic","clip","cloak","clock","clone","close","closer","closet","cloth","cloud","cloudy","clout","clown","club","clue","clumsy","clung","clutch","coach","coal","coarse","coast","coat","coax","cobalt","cobra","coca","cock","cocoa","code","coffee","coffin","cohort","coil","coin","coke","cold","collar","colon","colony","colt","column","comb","combat","come","comedy","comic","commit","common","compel","comply","concur","cone","confer","congo","consul","convex","convey","convoy","cook","cool","cope","copper","copy","coral","cord","core","cork","corn","corner","corps","corpse","corpus","cortex","cosmic","cosmos","cost","costly","cotton","couch","cough","could","count","county","coup","couple","coupon","course","court","cousin","cove","cover","covert","cow","coward","cowboy","cozy","crab","crack","cradle","craft","crafty","crag","crane","crash","crate","crater","crawl","crazy","creak","cream","creamy","create","credit","creed","creek","creep","creepy","crept","crest","crew","cried","crime","crisis","crisp","critic","crook","crop","cross","crow","crowd","crown","crude","cruel","cruise","crunch","crush","crust","crux","cry","crypt","cuba","cube","cubic","cuckoo","cuff","cult","cup","curb","cure","curfew","curl","curry","curse","cursor","curve","cuss","custom","cut","cute","cycle","cyclic","cynic","czech","dad","daddy","dagger","daily","dairy","daisy","dale","dam","damage","damp","dampen","dance","danger","danish","dare","dark","darken","darn","dart","dash","data","date","david","dawn","day","dead","deadly","deaf","deal","dealer","dean","dear","death","debate","debit","debris","debt","debtor","decade","decay","decent","decide","deck","decor","decree","deduce","deed","deep","deeply","deer","defeat","defect","defend","defer","define","defy","degree","deity","delay","delete","delhi","delta","demand","demise","demo","demure","denial","denote","dense","dental","deny","depart","depend","depict","deploy","depot","depth","deputy","derive","desert","design","desire","desist","desk","detail","detect","deter","detest","detour","device","devise","devoid","devote","devour","dial","diana","diary","dice","dictum","did","die","diesel","diet","differ","dig","digest","digit","dine","dinghy","dinner","diode","dip","dire","direct","dirt","dirty","disc","disco","dish","disk","dismal","dispel","ditch","dive","divert","divide","divine","dizzy","docile","dock","doctor","dog","dogma","dole","doll","dollar","dolly","domain","dome","domino","donate","done","donkey","donor","doom","door","dorsal","dose","dot","double","doubt","dough","dour","dove","down","dozen","draft","drag","dragon","drain","drama","drank","draw","drawer","dread","dream","dreary","dress","drew","dried","drift","drill","drink","drip","drive","driver","drop","drove","drown","drug","drum","drunk","dry","dual","duck","duct","due","duel","duet","duke","dull","duly","dumb","dummy","dump","dune","dung","duress","during","dusk","dust","dusty","dutch","duty","dwarf","dwell","dyer","dying","dynamo","each","eager","eagle","ear","earl","early","earn","earth","ease","easel","easily","east","easter","easy","eat","eaten","eater","echo","eddy","eden","edge","edible","edict","edit","editor","eel","eerie","eerily","effect","effort","egg","ego","eight","eighth","eighty","either","elbow","elder","eldest","elect","eleven","elicit","elite","else","elude","elves","embark","emblem","embryo","emerge","emit","empire","employ","empty","enable","enamel","end","endure","enemy","energy","engage","engine","enjoy","enlist","enough","ensure","entail","enter","entire","entry","envoy","envy","enzyme","epic","epoch","equal","equate","equip","equity","era","erect","eric","erode","erotic","errant","error","escape","escort","essay","essex","estate","esteem","ethic","ethnic","europe","evade","eve","even","event","ever","every","evict","evil","evoke","evolve","exact","exam","exceed","excel","except","excess","excise","excite","excuse","exempt","exert","exile","exist","exit","exodus","exotic","expand","expect","expert","expire","export","expose","extend","extra","eye","eyed","fabric","face","facial","fact","factor","fade","fail","faint","fair","fairly","fairy","faith","fake","falcon","fall","false","falter","fame","family","famine","famous","fan","fancy","far","farce","fare","farm","farmer","fast","fasten","faster","fat","fatal","fate","father","fatty","fault","faulty","fauna","fear","feast","feat","fed","fee","feeble","feed","feel","feet","fell","fellow","felt","female","fence","fend","ferry","fetal","fetch","feudal","fever","few","fewer","fiasco","fiddle","field","fiend","fierce","fiery","fifth","fifty","fig","fight","figure","file","fill","filled","filler","film","filter","filth","filthy","final","finale","find","fine","finery","finger","finish","finite","fire","firm","firmly","first","fiscal","fish","fisher","fist","fit","fitful","five","fix","flag","flair","flak","flame","flank","flap","flare","flash","flask","flat","flavor","flaw","fled","flee","fleece","fleet","flesh","fleshy","flew","flick","flight","flimsy","flint","flirt","float","flock","flood","floor","floppy","flora","floral","flour","flow","flower","fluent","fluffy","fluid","flung","flurry","flush","flute","flux","fly","flyer","foal","foam","focal","focus","fog","foil","fold","folk","follow","folly","fond","fondly","font","food","fool","foot","for","forbid","force","ford","forest","forge","forget","fork","form","formal","format","former","fort","forth","forty","forum","fossil","foster","foul","found","four","fourth","fox","foyer","frail","frame","franc","france","frank","fraud","fred","free","freed","freely","freeze","french","frenzy","fresh","friar","friday","fridge","fried","friend","fright","fringe","frock","frog","from","front","frost","frosty","frown","frozen","frugal","fruit","fry","fudge","fuel","full","fully","fumes","fun","fund","funny","fur","furry","fury","fuse","fusion","fuss","fussy","futile","future","fuzzy","gadget","gain","gala","galaxy","gale","gall","galley","gallon","gallop","gamble","game","gamma","gandhi","gang","gap","garage","garden","garlic","gas","gasp","gate","gather","gauge","gaunt","gave","gaze","gear","geese","gem","gemini","gender","gene","geneva","genial","genius","genre","gentle","gently","gentry","genus","george","germ","get","ghetto","ghost","giant","gift","giggle","gill","gilt","ginger","girl","give","given","glad","glade","glance","gland","glare","glass","glassy","gleam","glee","glide","global","globe","gloom","gloomy","gloria","glory","gloss","glossy","glove","glow","glue","gnat","gnu","goal","goat","gold","golden","golf","gone","gong","goo","good","goose","gore","gorge","gory","gosh","gospel","gossip","got","gothic","govern","gown","grab","grace","grade","grail","grain","grand","grant","grape","graph","grasp","grass","grassy","grate","grave","gravel","gravy","grease","greasy","great","greece","greed","greedy","greek","green","greet","grew","grey","grid","grief","grill","grim","grin","grind","grip","grit","gritty","groan","groin","groom","groove","gross","ground","group","grove","grow","grown","growth","grudge","grunt","guard","guess","guest","guide","guild","guilt","guilty","guise","guitar","gulf","gully","gun","gunman","guru","gut","guy","gypsy","habit","hack","had","hail","hair","hairy","haiti","hale","half","hall","halt","hamlet","hammer","hand","handle","handy","hang","hangar","hanoi","happen","happy","harass","harbor","hard","harder","hardly","hare","harem","harm","harp","harry","harsh","has","hash","hassle","haste","hasten","hasty","hat","hatch","hate","haul","haunt","havana","have","haven","havoc","hawaii","hawk","hay","hazard","haze","hazel","hazy","head","heal","health","heap","hear","heard","heart","hearth","hearty","heat","heater","heaven","heavy","hebrew","heck","hectic","hedge","heel","hefty","height","heir","held","helium","helix","hell","hello","helm","helmet","help","hemp","hence","henry","her","herald","herb","herd","here","hereby","hermes","hernia","hero","heroic","heroin","hey","heyday","hick","hidden","hide","high","higher","highly","hill","him","hind","hinder","hint","hippie","hire","his","hiss","hit","hive","hoard","hoarse","hobby","hockey","hold","holder","hole","hollow","holly","holy","home","honest","honey","hood","hook","hope","horn","horrid","horror","horse","hose","host","hot","hotel","hound","hour","house","hover","how","huge","hull","human","humane","humble","humid","hung","hunger","hungry","hunt","hurdle","hurl","hurry","hurt","hush","hut","hybrid","hymn","hyphen","ice","icing","icon","idaho","idea","ideal","idiom","idiot","idle","idly","idol","ignite","ignore","ill","image","immune","impact","imply","import","impose","inca","incest","inch","income","incur","indeed","index","india","indian","indoor","induce","inept","inert","infant","infect","infer","influx","inform","inject","injure","injury","ink","inlaid","inland","inlet","inmate","inn","innate","inner","input","insane","insect","insert","inset","inside","insist","insult","insure","intact","intake","intend","inter","into","invade","invent","invest","invite","invoke","inward","iowa","iran","iraq","irish","iron","ironic","irony","isaac","isabel","island","isle","israel","issue","italy","itch","item","itself","ivan","ivory","jack","jacket","jacob","jade","jaguar","jail","james","jane","japan","jargon","java","jaw","jazz","jeep","jelly","jerky","jest","jet","jewel","jewish","jim","job","jock","jockey","joe","john","join","joint","joke","jolly","jolt","jordan","joseph","joy","joyful","joyous","judge","judy","juice","juicy","july","jumble","jumbo","jump","june","jungle","junior","junk","junta","jury","just","kansas","karate","karl","keel","keen","keep","keeper","kenya","kept","kernel","kettle","key","khaki","kick","kid","kidnap","kidney","kill","killer","kin","kind","kindly","king","kiss","kite","kitten","knack","knee","kneel","knew","knife","knight","knit","knob","knock","knot","know","known","koran","korea","kuwait","label","lace","lack","lad","ladder","laden","lady","lagoon","laity","lake","lamb","lame","lamp","lance","land","lane","lap","lapse","large","larval","laser","last","latch","late","lately","latent","later","latest","latin","latter","laugh","launch","lava","lavish","law","lawful","lawn","lawyer","lay","layer","layman","lazy","lead","leader","leaf","leafy","league","leak","leaky","lean","leap","learn","lease","leash","least","leave","led","ledge","left","leg","legacy","legal","legend","legion","lemon","lend","length","lens","lent","leo","leper","lesion","less","lessen","lesser","lesson","lest","let","lethal","letter","level","lever","levy","lewis","liable","liar","libel","libya","lice","lick","lid","lie","lied","lier","life","lift","light","like","likely","limb","lime","limit","limp","line","linear","linen","linger","link","lint","lion","lip","liquid","liquor","list","listen","lit","live","lively","liver","liz","lizard","load","loaf","loan","lobby","lobe","local","locate","lock","locus","lodge","loft","lofty","log","logic","logo","london","lone","lonely","long","longer","look","loop","loose","loosen","loot","lord","lorry","lose","loss","lost","lot","lotion","lotus","loud","loudly","lounge","lousy","love","lovely","lover","low","lower","lowest","loyal","lucid","luck","lucky","lucy","lull","lump","lumpy","lunacy","lunar","lunch","lung","lure","lurid","lush","lust","lute","luther","luxury","lying","lymph","lynch","lyric","macho","macro","mad","madam","made","mafia","magic","magma","magnet","magnum","magpie","maid","maiden","mail","main","mainly","major","make","maker","male","malice","mall","malt","mammal","manage","mane","mania","manic","manner","manor","mantle","manual","manure","many","map","maple","marble","march","mare","margin","maria","marina","mark","market","marry","mars","marsh","martin","martyr","mary","mask","mason","mass","mast","master","mat","match","mate","matrix","matter","mature","maxim","may","maybe","mayor","maze","mead","meadow","meal","mean","meant","meat","medal","media","median","medic","medium","meet","mellow","melody","melon","melt","member","memo","memory","menace","mend","mental","mentor","menu","mercy","mere","merely","merge","merger","merit","merry","mesh","mess","messy","met","metal","meter","method","methyl","metric","metro","mexico","miami","mickey","mid","midday","middle","midst","midway","might","mighty","mild","mildew","mile","milk","milky","mill","mimic","mince","mind","mine","mini","mink","minor","mint","minus","minute","mire","mirror","mirth","misery","miss","mist","misty","mite","mix","moan","moat","mob","mobile","mock","mode","model","modem","modern","modest","modify","module","moist","molar","mold","mole","molten","moment","monday","money","monk","monkey","month","mood","moody","moon","moor","moral","morale","morbid","more","morgue","mortal","mortar","mosaic","moscow","moses","mosque","moss","most","mostly","moth","mother","motion","motive","motor","mount","mourn","mouse","mouth","move","movie","mrs","much","muck","mucus","mud","muddle","muddy","mule","mummy","munich","murder","murky","murmur","muscle","museum","music","mussel","must","mutant","mute","mutiny","mutter","mutton","mutual","muzzle","myopic","myriad","myself","mystic","myth","nadir","nail","naked","name","namely","nape","napkin","naples","narrow","nasal","nasty","nathan","nation","native","nature","nausea","naval","nave","navy","near","nearer","nearly","neat","neatly","neck","need","needle","needy","negate","neon","nepal","nephew","nerve","nest","net","neural","never","newly","next","nice","nicely","niche","nickel","niece","night","nile","nimble","nine","ninety","ninth","nobel","noble","nobody","node","noise","noisy","none","noon","nor","norm","normal","north","norway","nose","nosy","not","note","notice","notify","notion","noun","novel","novice","now","nozzle","null","numb","number","nurse","nut","nylon","nymph","oak","oar","oasis","oath","obese","obey","object","oblige","oboe","obtain","obtuse","occult","occupy","occur","ocean","octave","odd","off","offend","offer","office","offset","often","ohio","oil","oily","okay","old","older","oldest","olive","omega","omen","omit","once","one","onion","only","onset","onto","onus","onward","opaque","open","openly","opera","opium","oppose","optic","option","oracle","oral","orange","orbit","orchid","ordeal","order","organ","orgasm","orient","origin","ornate","orphan","oscar","other","otter","ought","ounce","our","out","outer","output","outset","oval","oven","over","overt","owe","owing","owl","own","owner","oxford","oxide","oxygen","oyster","ozone","pace","pack","packet","pact","pad","paddle","paddy","pagan","page","paid","pain","paint","pair","palace","pale","palm","pan","panama","panel","panic","papa","papal","paper","parade","parcel","pardon","parent","paris","parish","park","parody","parrot","part","partly","party","pascal","pass","past","paste","pastel","pastor","pastry","pat","patch","patent","path","patio","patrol","patron","paul","pause","pave","paw","pawn","pay","peace","peach","peak","pear","pearl","pedal","peel","peer","peking","pelvic","pelvis","pen","penal","pence","pencil","penny","people","pepper","per","perch","peril","period","perish","permit","person","peru","pest","pet","peter","petite","petrol","petty","phase","philip","phone","photo","phrase","piano","pick","picket","picnic","pie","piece","pier","pierce","piety","pig","pigeon","piggy","pike","pile","pill","pillar","pillow","pilot","pin","pinch","pine","pink","pint","pious","pipe","pirate","piss","pistol","piston","pit","pitch","pity","pivot","pixel","pizza","place","placid","plague","plain","plan","plane","planet","plank","plant","plasma","plate","play","player","plea","plead","please","pledge","plenty","plight","plot","plough","ploy","plug","plum","plump","plunge","plural","plus","plush","pocket","poem","poet","poetic","poetry","point","poison","poland","polar","pole","police","policy","polish","polite","poll","pollen","polo","pond","ponder","pony","pool","poor","poorly","pop","poppy","pore","pork","port","portal","pose","posh","post","postal","pot","potato","potent","pouch","pound","pour","powder","power","praise","pray","prayer","preach","prefer","prefix","press","pretty","price","pride","priest","primal","prime","prince","print","prior","prism","prison","privy","prize","probe","profit","prompt","prone","proof","propel","proper","prose","proton","proud","prove","proven","proxy","prune","pry","psalm","pseudo","psyche","pub","public","puff","pull","pulp","pulpit","pulsar","pulse","pump","punch","punish","punk","pupil","puppet","puppy","pure","purely","purge","purify","purple","purse","pursue","push","pushy","put","putt","puzzle","quaint","quake","quarry","quart","quartz","quebec","queen","queer","query","quest","queue","quick","quid","quiet","quilt","quirk","quit","quite","quiver","quiz","quota","quote","rabbit","race","racial","racism","rack","racket","radar","radio","radish","radius","raffle","raft","rage","raid","rail","rain","rainy","raise","rake","rally","ramp","random","range","rank","ransom","rape","rapid","rare","rarely","rarity","rash","rat","rate","rather","ratify","ratio","rattle","rave","raven","raw","ray","razor","reach","react","read","reader","ready","real","really","realm","reap","rear","reason","rebel","recall","recent","recess","recipe","reckon","record","recoup","rector","red","redeem","redo","reduce","reed","reef","reek","refer","reform","refuge","refuse","regal","regard","regent","regime","region","regret","reign","reject","relate","relax","relay","relic","relief","relish","rely","remain","remark","remedy","remind","remit","remote","remove","renal","render","rent","rental","repair","repeal","repeat","repent","reply","report","rescue","resent","reside","resign","resin","resist","resort","rest","result","resume","retail","retain","retina","retire","return","reveal","review","revise","revive","revolt","reward","rex","rhine","rhino","rhyme","rhythm","ribbon","rice","rich","rick","rid","ride","rider","ridge","rife","rifle","rift","right","rigid","rile","rim","ring","rinse","riot","ripe","ripen","ripple","rise","risk","risky","rite","ritual","ritz","rival","river","road","roar","roast","rob","robe","robert","robin","robot","robust","rock","rocket","rocky","rod","rode","rodent","rogue","role","roll","roman","rome","roof","room","root","rope","rose","rosy","rot","rotate","rotor","rotten","rouge","rough","round","route","rover","row","royal","rub","rubber","rubble","ruby","rudder","rude","rug","rugby","ruin","rule","ruler","rumble","rump","run","rune","rung","runway","rural","rush","russia","rust","rustic","rusty","sack","sacred","sad","saddle","sadism","sadly","safari","safe","safely","safer","safety","saga","sage","sahara","said","sail","sailor","saint","sake","salad","salary","sale","saline","saliva","salmon","saloon","salt","salty","salute","sam","same","sample","sand","sandy","sane","sash","satin","satire","saturn","sauce","saucer","saudi","sauna","savage","save","saw","say","scale","scalp","scan","scant","scar","scarce","scare","scarf","scary","scene","scenic","scent","school","scold","scope","score","scorn","scotch","scott","scout","scrap","scrape","scream","screen","screw","script","scroll","scrub","scum","sea","seal","seam","seaman","search","season","seat","second","secret","sect","sector","secure","see","seed","seeing","seek","seem","seize","seldom","select","self","sell","seller","semi","senate","send","senile","senior","sense","sensor","sent","sentry","seoul","sequel","serene","serial","series","sermon","serum","serve","server","set","settle","seven","severe","sew","sewage","shabby","shade","shadow","shady","shaft","shaggy","shah","shake","shaky","shall","sham","shame","shape","share","shark","sharp","shawl","she","shear","sheen","sheep","sheer","sheet","shelf","shell","sherry","shield","shift","shine","shiny","ship","shire","shirk","shirt","shiver","shock","shoe","shook","shoot","shop","shore","short","shot","should","shout","show","shower","shrank","shrewd","shrill","shrimp","shrine","shrink","shrub","shrug","shut","shy","shyly","sick","side","siege","sigh","sight","sigma","sign","signal","silent","silk","silken","silky","sill","silly","silo","silver","simple","simply","since","sinful","sing","singer","single","sink","sir","sire","siren","sister","sit","site","sitter","six","sixth","sixty","size","sketch","skill","skin","skinny","skip","skirt","skull","sky","slab","slack","slain","slam","slang","slap","slat","slate","slave","sleek","sleep","sleepy","sleeve","slice","slick","slid","slide","slight","slim","slimy","sling","slip","slit","slogan","slope","sloppy","slot","slow","slowly","slug","slum","slump","smack","small","smart","smash","smear","smell","smelly","smelt","smile","smite","smoke","smoky","smooth","smug","snack","snail","snake","snap","snatch","sneak","snow","snowy","snug","soak","soap","sober","soccer","social","sock","socket","socks","soda","sodden","sodium","sofa","soft","soften","softly","soggy","soil","solar","sold","sole","solely","solemn","solid","solo","solve","some","son","sonar","sonata","song","sonic","sony","soon","sooner","soot","soothe","sordid","sore","sorrow","sorry","sort","soul","sound","soup","sour","source","soviet","sow","space","spade","spain","span","spare","spark","sparse","spasm","spat","spate","speak","spear","speech","speed","speedy","spell","spend","sphere","spice","spicy","spider","spiky","spill","spin","spinal","spine","spiral","spirit","spit","spite","splash","split","spoil","spoke","sponge","spoon","sport","spot","spouse","spray","spread","spree","spring","sprint","spur","squad","square","squash","squat","squid","stab","stable","stack","staff","stage","stain","stair","stairs","stake","stale","stall","stamp","stance","stand","staple","star","starch","stare","stark","start","starve","state","static","statue","status","stay","stead","steady","steak","steal","steam","steel","steep","steer","stem","stench","step","stereo","stern","stew","stick","sticky","stiff","stifle","stigma","still","sting","stint","stir","stitch","stock","stocky","stone","stony","stool","stop","store","storm","stormy","story","stout","stove","stow","strain","strait","strand","strap","strata","straw","stray","streak","stream","street","stress","strict","stride","strife","strike","string","strip","stripe","strive","stroke","stroll","strong","stud","studio","study","stuff","stuffy","stunt","stupid","sturdy","style","submit","subtle","subtly","suburb","such","sudden","sue","suez","suffer","sugar","suit","suite","suitor","sullen","sultan","sum","summer","summit","summon","sun","sunday","sunny","sunset","super","superb","supper","supple","supply","sure","surely","surf","surge","survey","suture","swamp","swan","swap","swarm","sway","swear","sweat","sweaty","sweden","sweep","sweet","swell","swift","swim","swine","swing","swirl","swiss","switch","sword","swore","sydney","symbol","synod","syntax","syria","syrup","system","table","tablet","taboo","tacit","tackle","tact","tactic","tail","tailor","taiwan","take","tale","talent","talk","tall","tally","tame","tampa","tan","tandem","tangle","tank","tap","tape","target","tariff","tarp","tart","tarzan","task","taste","tasty","tattoo","taurus","taut","tavern","tax","taxi","tea","teach","teak","team","tear","tease","tech","teeth","tell","temper","temple","tempo","tempt","ten","tenant","tend","tender","tendon","tennis","tenor","tense","tent","tenth","tenure","teresa","term","terror","terse","test","texas","text","thank","thaw","them","theme","thence","theory","there","these","thesis","they","thick","thief","thigh","thin","thing","think","third","thirst","thirty","this","thomas","thorn","those","though","thread","threat","three","thrill","thrive","throat","throne","throng","throw","thrust","thud","thug","thumb","thus","thyme","tibet","tick","ticket","tidal","tide","tidy","tie","tier","tiger","tight","tile","till","tilt","timber","time","timid","tin","tiny","tip","tire","tissue","title","toad","toast","today","toe","toilet","token","tokyo","told","toll","tom","tomato","tomb","tonal","tone","tongue","tonic","too","took","tool","tooth","top","topaz","topic","torch","torque","torso","tort","toss","total","touch","tough","tour","toward","towel","tower","town","toxic","toxin","toy","trace","track","tract","trade","tragic","trail","train","trait","tram","trance","trap","trauma","travel","tray","tread","treat","treaty","treble","tree","trek","tremor","trench","trend","trendy","trial","tribal","tribe","trick","tricky","tried","trifle","trim","trio","trip","triple","troop","trophy","trot","trough","trout","truce","truck","true","truly","trunk","trust","truth","try","tube","tumble","tuna","tundra","tune","tunic","tunnel","turban","turf","turk","turkey","turn","turtle","tutor","tweed","twelve","twenty","twice","twin","twist","two","tycoon","tying","type","tyrant","ugly","ulcer","ultra","umpire","unable","uncle","under","uneasy","unfair","unify","union","unique","unit","unite","unity","unlike","unrest","unruly","until","update","upheld","uphill","uphold","upon","upper","uproar","upset","upshot","uptake","upturn","upward","urban","urge","urgent","urging","urine","usable","usage","use","useful","user","usual","utmost","utter","vacant","vacuum","vague","vain","valet","valid","valley","value","valve","van","vanish","vanity","vary","vase","vast","vat","vault","vector","veil","vein","velvet","vendor","veneer","venice","venom","vent","venue","venus","verb","verbal","verge","verify","verity","verse","versus","very","vessel","vest","vet","veto","via","viable","vicar","vice","victim","victor","video","vienna","view","vigil","viking","vile","villa","vine","vinyl","viola","violet","violin","viral","virgo","virtue","virus","visa","vision","visit","visual","vital","vivid","vocal","vodka","vogue","voice","void","volley","volume","vote","vowel","voyage","vulgar","wade","wage","waist","wait","waiter","wake","walk","walker","wall","wallet","walnut","wander","want","war","warden","warm","warmth","warn","warp","warsaw","wary","was","wash","wasp","waste","watch","water","watery","wave","wax","way","weak","weaken","wealth","weapon","wear","weary","weave","wedge","wee","weed","week","weekly","weep","weigh","weight","weird","well","were","west","wet","whale","wharf","what","wheat","wheel","when","whence","where","which","whiff","while","whim","whip","whisky","white","who","whole","wholly","whom","whose","why","wicked","wide","widely","widen","wider","widow","width","wife","wig","wild","wildly","will","willow","wily","win","wind","window","windy","wine","wing","wink","winner","winter","wipe","wire","wisdom","wise","wish","wit","witch","with","within","witty","wizard","woke","wolf","wolves","woman","womb","won","wonder","wood","wooden","woods","woody","wool","word","work","worker","world","worm","worry","worse","worst","worth","worthy","would","wound","wrap","wrath","wreath","wreck","wring","wrist","writ","write","writer","wrong","xerox","yacht","yale","yard","yarn","yeah","year","yeard","yeast","yellow","yet","yield","yogurt","yolk","you","young","your","youth","zaire","zeal","zebra","zenith","zero","zeus","zigzag","zinc","zombie","zone"]},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"]},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.bytesToBits=y,t.convertRadix=h,t.crc8=function(e){for(var t=255,n=0;n>>1^(0==(1&t)?0:178)}return 255^t},t.legacy1=function(e,t){for(var n=h(e.map((function(e){return t.indexOf(e.toLowerCase())})),t.length,256,33),r=n[n.length-1],o=new Uint8Array(n.length-1),a=0;a=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;l-=1){var d=a.dividedToIntegerBy(n),p=a.modulo(n);a=d,s[l]=p.toNumber()}return s}function y(e){var t=[];t.fill(!1,0,8*e.length);for(var n=0;n>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],b=e[1],q=e[11]<<4|e[10]>>>28,W=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,m=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,g=e[25]<<11|e[24]>>>21,k=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,E=e[18]<<20|e[19]>>>12,P=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,K=e[38]<<8|e[39]>>>24,G=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~m&g,e[1]=b^~v&k,e[10]=T^~E&S,e[11]=O^~P&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~q&Y,e[31]=V^~W&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=m^~g&_,e[3]=v^~k&w,e[12]=E^~S&D,e[13]=P^~R&C,e[22]=x^~U&K,e[23]=F^~L&G,e[32]=q^~Y&J,e[33]=W^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=g^~_&I,e[5]=k^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~K&z,e[25]=L^~G&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&b,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=K^~z&M,e[27]=G^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&m,e[9]=A^~b&v,e[18]=N^~T&E,e[19]=B^~O&P,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&q,e[39]=ee^~V&W,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];m%f==0&&(c(p),n=0)}return"0x"+b}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e,t,n){"use strict";var r=t;r.version=n(1047).version,r.utils=n(66),r.rand=n(515),r.curve=n(516),r.curves=n(292),r.ec=n(1059),r.eddsa=n(1063)},function(e){e.exports=JSON.parse('{"_args":[["elliptic@6.5.4","C:\\\\Users\\\\user\\\\Pulpit\\\\Projects\\\\silk\\\\hweb3.js\\\\packages\\\\hweb3-hed-contract"]],"_from":"elliptic@6.5.4","_id":"elliptic@6.5.4","_inBundle":false,"_integrity":"sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==","_location":"/elliptic","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"elliptic@6.5.4","name":"elliptic","escapedName":"elliptic","rawSpec":"6.5.4","saveSpec":null,"fetchSpec":"6.5.4"},"_requiredBy":["/@hashgraph/cryptography"],"_resolved":"https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz","_spec":"6.5.4","_where":"C:\\\\Users\\\\user\\\\Pulpit\\\\Projects\\\\silk\\\\hweb3.js\\\\packages\\\\hweb3-hed-contract","author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"bugs":{"url":"https://github.com/indutny/elliptic/issues"},"dependencies":{"bn.js":"^4.11.9","brorand":"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1","inherits":"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"},"description":"EC cryptography","devDependencies":{"brfs":"^2.0.2","coveralls":"^3.1.0","eslint":"^7.6.0","grunt":"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.5","mocha":"^8.0.1"},"files":["lib"],"homepage":"https://github.com/indutny/elliptic","keywords":["EC","Elliptic","curve","Cryptography"],"license":"MIT","main":"lib/elliptic.js","name":"elliptic","repository":{"type":"git","url":"git+ssh://git@github.com/indutny/elliptic.git"},"scripts":{"lint":"eslint lib test","lint:fix":"npm run lint -- --fix","test":"npm run lint && npm run unit","unit":"istanbul test _mocha --reporter=spec test/index.js","version":"grunt dist && git add dist/"},"version":"6.5.4"}')},function(e,t){},function(e,t,n){"use strict";var r=n(66),o=n(13),a=n(222),i=n(221),u=r.assert;function c(e){i.call(this,"short",e),this.a=new o(e.a,16).toRed(this.red),this.b=new o(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function s(e,t,n,r){i.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new o(t,16),this.y=new o(n,16),r&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function l(e,t,n,r){i.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===r?(this.x=this.curve.one,this.y=this.curve.one,this.z=new o(0)):(this.x=new o(t,16),this.y=new o(n,16),this.z=new o(r,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}a(c,i),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new o(e.beta,16).toRed(this.red);else{var r=this._getEndoRoots(this.p);t=(t=r[0].cmp(r[1])<0?r[0]:r[1]).toRed(this.red)}if(e.lambda)n=new o(e.lambda,16);else{var a=this._getEndoRoots(this.n);0===this.g.mul(a[0]).x.cmp(this.g.x.redMul(t))?n=a[0]:(n=a[1],u(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new o(e.a,16),b:new o(e.b,16)}})):this._getEndoBasis(n)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:o.mont(e),n=new o(2).toRed(t).redInvm(),r=n.redNeg(),a=new o(3).toRed(t).redNeg().redSqrt().redMul(n);return[r.redAdd(a).fromRed(),r.redSub(a).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,n,r,a,i,u,c,s,l,f=this.n.ushrn(Math.floor(this.n.bitLength()/2)),d=e,p=this.n.clone(),h=new o(1),y=new o(0),b=new o(0),m=new o(1),v=0;0!==d.cmpn(0);){var g=p.div(d);s=p.sub(g.mul(d)),l=b.sub(g.mul(h));var k=m.sub(g.mul(y));if(!r&&s.cmp(f)<0)t=c.neg(),n=h,r=s.neg(),a=l;else if(r&&2==++v)break;c=s,p=d,d=s,b=h,h=l,m=y,y=k}i=s.neg(),u=l;var _=r.sqr().add(a.sqr());return i.sqr().add(u.sqr()).cmp(_)>=0&&(i=t,u=n),r.negative&&(r=r.neg(),a=a.neg()),i.negative&&(i=i.neg(),u=u.neg()),[{a:r,b:a},{a:i,b:u}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],r=t[1],o=r.b.mul(e).divRound(this.n),a=n.b.neg().mul(e).divRound(this.n),i=o.mul(n.a),u=a.mul(r.a),c=o.mul(n.b),s=a.mul(r.b);return{k1:e.sub(i).sub(u),k2:c.add(s).neg()}},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var a=r.fromRed().isOdd();return(t&&!a||!t&&a)&&(r=r.redNeg()),this.point(e,r)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,r=this.a.redMul(t),o=t.redSqr().redMul(t).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(o).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,n){for(var r=this._endoWnafT1,o=this._endoWnafT2,a=0;a":""},s.prototype.isInfinity=function(){return this.inf},s.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var n=t.redSqr().redISub(this.x).redISub(e.x),r=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},s.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,n=this.x.redSqr(),r=e.redInvm(),o=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(r),a=o.redSqr().redISub(this.x.redAdd(this.x)),i=o.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,i)},s.prototype.getX=function(){return this.x.fromRed()},s.prototype.getY=function(){return this.y.fromRed()},s.prototype.mul=function(e){return e=new o(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o):this.curve._wnafMulAdd(1,r,o,2)},s.prototype.jmulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o,!0):this.curve._wnafMulAdd(1,r,o,2,!0)},s.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},s.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,r=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return t},s.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},a(l,i.BasePoint),c.prototype.jpoint=function(e,t,n){return new l(this,e,t,n)},l.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),r=this.y.redMul(t).redMul(e);return this.curve.point(n,r)},l.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},l.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(t),o=e.x.redMul(n),a=this.y.redMul(t.redMul(e.z)),i=e.y.redMul(n.redMul(this.z)),u=r.redSub(o),c=a.redSub(i);if(0===u.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var s=u.redSqr(),l=s.redMul(u),f=r.redMul(s),d=c.redSqr().redIAdd(l).redISub(f).redISub(f),p=c.redMul(f.redISub(d)).redISub(a.redMul(l)),h=this.z.redMul(e.z).redMul(u);return this.curve.jpoint(d,p,h)},l.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,r=e.x.redMul(t),o=this.y,a=e.y.redMul(t).redMul(this.z),i=n.redSub(r),u=o.redSub(a);if(0===i.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=i.redSqr(),s=c.redMul(i),l=n.redMul(c),f=u.redSqr().redIAdd(s).redISub(l).redISub(l),d=u.redMul(l.redISub(f)).redISub(o.redMul(s)),p=this.z.redMul(i);return this.curve.jpoint(f,d,p)},l.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t=0)return!1;if(n.redIAdd(o),0===this.x.cmp(n))return!0}},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t,n){"use strict";var r=n(13),o=n(222),a=n(221),i=n(66);function u(e){a.call(this,"mont",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.i4=new r(4).toRed(this.red).redInvm(),this.two=new r(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,n){a.BasePoint.call(this,e,"projective"),null===t&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new r(t,16),this.z=new r(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}o(u,a),e.exports=u,u.prototype.validate=function(e){var t=e.normalize().x,n=t.redSqr(),r=n.redMul(t).redAdd(n.redMul(this.a)).redAdd(t);return 0===r.redSqrt().redSqr().cmp(r)},o(c,a.BasePoint),u.prototype.decodePoint=function(e,t){return this.point(i.toArray(e,t),1)},u.prototype.point=function(e,t){return new c(this,e,t)},u.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),n=e.redSub(t),r=e.redMul(t),o=n.redMul(t.redAdd(this.curve.a24.redMul(n)));return this.curve.point(r,o)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var n=this.x.redAdd(this.z),r=this.x.redSub(this.z),o=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(n),i=o.redMul(r),u=t.z.redMul(a.redAdd(i).redSqr()),c=t.x.redMul(a.redISub(i).redSqr());return this.curve.point(u,c)},c.prototype.mul=function(e){for(var t=e.clone(),n=this,r=this.curve.point(null,null),o=[];0!==t.cmpn(0);t.iushrn(1))o.push(t.andln(1));for(var a=o.length-1;a>=0;a--)0===o[a]?(n=n.diffAdd(r,this),r=r.dbl()):(r=n.diffAdd(r,this),n=n.dbl());return r},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,n){"use strict";var r=n(66),o=n(13),a=n(222),i=n(221),u=r.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,i.call(this,"edwards",e),this.a=new o(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new o(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new o(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),u(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function s(e,t,n,r,a){i.BasePoint.call(this,e,"projective"),null===t&&null===n&&null===r?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new o(t,16),this.y=new o(n,16),this.z=r?new o(r,16):this.curve.one,this.t=a&&new o(a,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}a(c,i),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,n,r){return this.point(e,t,n,r)},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=this.c2.redSub(this.a.redMul(n)),a=this.one.redSub(this.c2.redMul(this.d).redMul(n)),i=r.redMul(a.redInvm()),u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");var c=u.fromRed().isOdd();return(t&&!c||!t&&c)&&(u=u.redNeg()),this.point(e,u)},c.prototype.pointFromY=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=n.redSub(this.c2),a=n.redMul(this.d).redMul(this.c2).redSub(this.a),i=r.redMul(a.redInvm());if(0===i.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");return u.fromRed().isOdd()!==t&&(u=u.redNeg()),this.point(u,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),n=e.y.redSqr(),r=t.redMul(this.a).redAdd(n),o=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(n)));return 0===r.cmp(o)},a(s,i.BasePoint),c.prototype.pointFromJSON=function(e){return s.fromJSON(this,e)},c.prototype.point=function(e,t,n,r){return new s(this,e,t,n,r)},s.fromJSON=function(e,t){return new s(e,t[0],t[1],t[2])},s.prototype.inspect=function(){return this.isInfinity()?"":""},s.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},s.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var r=this.curve._mulA(e),o=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=r.redAdd(t),i=a.redSub(n),u=r.redSub(t),c=o.redMul(i),s=a.redMul(u),l=o.redMul(u),f=i.redMul(a);return this.curve.point(c,s,f,l)},s.prototype._projDbl=function(){var e,t,n,r,o,a,i=this.x.redAdd(this.y).redSqr(),u=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var s=(r=this.curve._mulA(u)).redAdd(c);this.zOne?(e=i.redSub(u).redSub(c).redMul(s.redSub(this.curve.two)),t=s.redMul(r.redSub(c)),n=s.redSqr().redSub(s).redSub(s)):(o=this.z.redSqr(),a=s.redSub(o).redISub(o),e=i.redSub(u).redISub(c).redMul(a),t=s.redMul(r.redSub(c)),n=s.redMul(a))}else r=u.redAdd(c),o=this.curve._mulC(this.z).redSqr(),a=r.redSub(o).redSub(o),e=this.curve._mulC(i.redISub(r)).redMul(a),t=this.curve._mulC(r).redMul(u.redISub(c)),n=r.redMul(a);return this.curve.point(e,t,n)},s.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},s.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),r=this.t.redMul(this.curve.dd).redMul(e.t),o=this.z.redMul(e.z.redAdd(e.z)),a=n.redSub(t),i=o.redSub(r),u=o.redAdd(r),c=n.redAdd(t),s=a.redMul(i),l=u.redMul(c),f=a.redMul(c),d=i.redMul(u);return this.curve.point(s,l,d,f)},s.prototype._projAdd=function(e){var t,n,r=this.z.redMul(e.z),o=r.redSqr(),a=this.x.redMul(e.x),i=this.y.redMul(e.y),u=this.curve.d.redMul(a).redMul(i),c=o.redSub(u),s=o.redAdd(u),l=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(i),f=r.redMul(c).redMul(l);return this.curve.twisted?(t=r.redMul(s).redMul(i.redSub(this.curve._mulA(a))),n=c.redMul(s)):(t=r.redMul(s).redMul(i.redSub(a)),n=this.curve._mulC(c).redMul(s)),this.curve.point(f,t,n)},s.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},s.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!1)},s.prototype.jmulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!0)},s.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},s.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},s.prototype.getX=function(){return this.normalize(),this.x.fromRed()},s.prototype.getY=function(){return this.normalize(),this.y.fromRed()},s.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},s.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var n=e.clone(),r=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(r),0===this.x.cmp(t))return!0}},s.prototype.toP=s.prototype.normalize,s.prototype.mixedAdd=s.prototype.add},function(e,t,n){"use strict";t.sha1=n(1053),t.sha224=n(1054),t.sha256=n(518),t.sha384=n(1055),t.sha512=n(519)},function(e,t,n){"use strict";var r=n(82),o=n(175),a=n(517),i=r.rotl32,u=r.sum32,c=r.sum32_5,s=a.ft_1,l=o.BlockHash,f=[1518500249,1859775393,2400959708,3395469782];function d(){if(!(this instanceof d))return new d;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}r.inherits(d,l),e.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;rthis.blockSize&&(e=(new this.Hash).update(e).digest()),o(e.length<=this.blockSize);for(var t=e.length;t0))return i.iaddn(1),this.keyFromPrivate(i)}},d.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,n,i){"object"===(0,r.default)(n)&&(i=n,n=null),i||(i={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new o(e,16));for(var u=this.n.byteLength(),c=t.getPrivate().toArray("be",u),s=e.toArray("be",u),l=new a({hash:this.hash,entropy:c,nonce:s,pers:i.pers,persEnc:i.persEnc||"utf8"}),d=this.n.sub(new o(1)),p=0;;p++){var h=i.k?i.k(p):new o(l.generate(this.n.byteLength()));if(!((h=this._truncateToN(h,!0)).cmpn(1)<=0||h.cmp(d)>=0)){var y=this.g.mul(h);if(!y.isInfinity()){var b=y.getX(),m=b.umod(this.n);if(0!==m.cmpn(0)){var v=h.invm(this.n).mul(m.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var g=(y.getY().isOdd()?1:0)|(0!==b.cmp(m)?2:0);return i.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),g^=1),new f({r:m,s:v,recoveryParam:g})}}}}}},d.prototype.verify=function(e,t,n,r){e=this._truncateToN(new o(e,16)),n=this.keyFromPublic(n,r);var a=(t=new f(t,"hex")).r,i=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var u,c=i.invm(this.n),s=c.mul(e).umod(this.n),l=c.mul(a).umod(this.n);return this.curve._maxwellTrick?!(u=this.g.jmulAdd(s,n.getPublic(),l)).isInfinity()&&u.eqXToP(a):!(u=this.g.mulAdd(s,n.getPublic(),l)).isInfinity()&&0===u.getX().umod(this.n).cmp(a)},d.prototype.recoverPubKey=function(e,t,n,r){s((3&n)===n,"The recovery param is more than two bits"),t=new f(t,r);var a=this.n,i=new o(e),u=t.r,c=t.s,l=1&n,d=n>>1;if(u.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");u=d?this.curve.pointFromX(u.add(this.curve.n),l):this.curve.pointFromX(u,l);var p=t.r.invm(a),h=a.sub(i).mul(p).umod(a),y=c.mul(p).umod(a);return this.g.mulAdd(h,u,y)},d.prototype.getKeyRecoveryParam=function(e,t,n,r){if(null!==(t=new f(t,r)).recoveryParam)return t.recoveryParam;for(var o=0;o<4;o++){var a;try{a=this.recoverPubKey(e,t,o)}catch(e){continue}if(a.eq(n))return o}throw new Error("Unable to find valid recovery factor")}},function(e,t,n){"use strict";var r=n(293),o=n(514),a=n(127);function i(e){if(!(this instanceof i))return new i(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=o.toArray(e.entropy,e.entropyEnc||"hex"),n=o.toArray(e.nonce,e.nonceEnc||"hex"),r=o.toArray(e.pers,e.persEnc||"hex");a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,r)}e.exports=i,i.prototype._init=function(e,t,n){var r=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var o=0;o=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},i.prototype.generate=function(e,t,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(r=n,n=t,t=null),n&&(n=o.toArray(n,r||"hex"),this._update(n));for(var a=[];a.length"}},function(e,t,n){"use strict";var r=n(13),o=n(66),a=o.assert;function i(e,t){if(e instanceof i)return e;this._importDER(e,t)||(a(e.r&&e.s,"Signature without r or s"),this.r=new r(e.r,16),this.s=new r(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function u(){this.place=0}function c(e,t){var n=e[t.place++];if(!(128&n))return n;var r=15&n;if(0===r||r>4)return!1;for(var o=0,a=0,i=t.place;a>>=0;return!(o<=127)&&(t.place=i,o)}function s(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}e.exports=i,i.prototype._importDER=function(e,t){e=o.toArray(e,t);var n=new u;if(48!==e[n.place++])return!1;var a=c(e,n);if(!1===a)return!1;if(a+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var i=c(e,n);if(!1===i)return!1;var s=e.slice(n.place,i+n.place);if(n.place+=i,2!==e[n.place++])return!1;var l=c(e,n);if(!1===l)return!1;if(e.length!==l+n.place)return!1;var f=e.slice(n.place,l+n.place);if(0===s[0]){if(!(128&s[1]))return!1;s=s.slice(1)}if(0===f[0]){if(!(128&f[1]))return!1;f=f.slice(1)}return this.r=new r(s),this.s=new r(f),this.recoveryParam=null,!0},i.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=s(t),n=s(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];l(r,t.length),(r=r.concat(t)).push(2),l(r,n.length);var a=r.concat(n),i=[48];return l(i,a.length),i=i.concat(a),o.encode(i,e)}},function(e,t,n){"use strict";var r=n(293),o=n(292),a=n(66),i=a.assert,u=a.parseBytes,c=n(1064),s=n(1065);function l(e){if(i("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof l))return new l(e);e=o[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=r.sha512}e.exports=l,l.prototype.sign=function(e,t){e=u(e);var n=this.keyFromSecret(t),r=this.hashInt(n.messagePrefix(),e),o=this.g.mul(r),a=this.encodePoint(o),i=this.hashInt(a,n.pubBytes(),e).mul(n.priv()),c=r.add(i).umod(this.curve.n);return this.makeSignature({R:o,S:c,Rencoded:a})},l.prototype.verify=function(e,t,n){e=u(e),t=this.makeSignature(t);var r=this.keyFromPublic(n),o=this.hashInt(t.Rencoded(),r.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(r.pub().mul(o)).eq(a)},l.prototype.hashInt=function(){for(var e=this.hash(),t=0;t=1&&"ident"in t.seq[0]))throw new Error("error parsing AlgorithmIdentifier from ".concat(JSON.stringify(t)));this.algIdent=t.seq[0].ident,this.parameters=t.seq[1]}return(0,c.default)(e,[{key:"toString",value:function(){return JSON.stringify(this)}}]),e}();t.AlgorithmIdentifier=y;var b=function e(t){if((0,u.default)(this,e),!("seq"in t)||2!==t.seq.length)throw new Error("error parsing PBES2Params from ".concat(JSON.stringify(t)));this.kdf=new y(t.seq[0]),this.encScheme=new y(t.seq[1])},m=function e(t){if((0,u.default)(this,e),"seq"in t&&t.seq.length>=2&&"bytes"in t.seq[0]&&"int"in t.seq[1]&&(this.salt=t.seq[0].bytes,this.iterCount=t.seq[1].int,t.seq.length>2))return"seq"in t.seq[2]?void(this.prf=new y(t.seq[2])):("int"in t.seq[2]&&(this.keyLength=t.seq[2].int),void(4===t.seq.length&&(this.prf=new y(t.seq[3]))));throw new Error("error parsing PBKDF2Params from ".concat(JSON.stringify(t)))},v=function(){function e(t){if((0,u.default)(this,e),!("seq"in t)||3!==t.seq.length)throw new Error("error parsing PrivateKeyInfo from ".concat(JSON.stringify(t)));if(!("int"in t.seq[0])||0!==t.seq[0].int)throw new Error("expected version = 0, got ".concat(JSON.stringify(t.seq[0])));if(this.version=0,this.algId=new y(t.seq[1]),!("bytes"in t.seq[2]))throw new Error("expected octet string as 3rd element, got ".concat(JSON.stringify(t.seq[2])));this.privateKey=t.seq[2].bytes}return(0,c.default)(e,null,[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.PrivateKeyInfo=v;var g=function(){function e(t){if((0,u.default)(this,e),"seq"in t&&2===t.seq.length&&"bytes"in t.seq[1])return this.algId=new y(t.seq[0]),void(this.data=t.seq[1].bytes);throw new Error("error parsing EncryptedPrivateKeyInfo from ".concat(JSON.stringify(t)))}var t;return(0,c.default)(e,[{key:"decrypt",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("1.2.840.113549.1.5.13"===this.algId.algIdent&&this.algId.parameters){e.next=2;break}throw new Error("unsupported key encryption algorithm: ".concat(this.algId.toString()));case 2:if("1.2.840.113549.1.5.12"===(n=new b(this.algId.parameters)).kdf.algIdent&&n.kdf.parameters){e.next=5;break}throw new Error("unsupported key derivation function: ".concat(n.kdf.toString()));case 5:if((r=new m(n.kdf.parameters)).prf){e.next=10;break}throw new Error("unsupported PRF HMAC-SHA-1");case 10:if("1.2.840.113549.2.9"===r.prf.algIdent){e.next=12;break}throw new Error("unsupported PRF ".concat(r.prf.toString()));case 12:if("2.16.840.1.101.3.4.1.2"===n.encScheme.algIdent){e.next=14;break}throw new Error("unsupported encryption scheme: ".concat(n.encScheme.toString()));case 14:if(n.encScheme.parameters&&"bytes"in n.encScheme.parameters){e.next=16;break}throw new Error("expected IV as bytes for AES-128-CBC, "+"got: ".concat(JSON.stringify(n.encScheme.parameters)));case 16:return o=r.keyLength||16,i=n.encScheme.parameters.bytes,e.next=20,f.deriveKey(d.HashAlgorithm.Sha256,t,r.salt,r.iterCount,o);case 20:return u=e.sent,e.next=23,s.createDecipheriv(s.CipherAlgorithm.Aes128Cbc,u,i,this.data);case 23:return c=e.sent,e.abrupt("return",v.parse(c));case 25:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}],[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.EncryptedPrivateKeyInfo=g},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return Uint8Array.from(atob(e),(function(e){return e.charCodeAt(0)}))},t.encode=function(e){return btoa(String.fromCharCode.apply(null,Array.from(e)))}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.legacy=function(e,t){var n=new Uint8Array(e.length+8);n.set(e,0);var r=new DataView(n.buffer,n.byteOffset,n.byteLength);0xffffffffff===t?(r.setInt32(e.length+0,255),r.setInt32(e.length+4,-1)):(r.setInt32(e.length+0,t<0?-1:0),r.setInt32(e.length+4,t));var i=Uint8Array.from([255]);return o.deriveKey(a.HashAlgorithm.Sha512,n,i,2048,32)};var o=u(n(220)),a=u(n(174));function i(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(i=function(e){return e?n:t})(e)}function u(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=i(t);if(n&&n.has(e))return n.get(e);var o={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=a?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}return o.default=e,n&&n.set(e,o),o}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.valueToLong=function(e){return o.default.isBigNumber(e)?e:new o.default(e.toString())};var o=r(n(126))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r,a,i,u){var c;return(0,o.default)(this,n),(c=t.call(this,"Entity ID ".concat(e.toString(),".").concat(r.toString(),".").concat(a.toString(),"-").concat(i," was incorrect."))).name="BadEntityIdException",c.shard=e,c.realm=r,c.num=a,c.presentChecksum=i,c.expectedChecksum=u,c}return n}((0,r(n(46)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=t;function o(){r.util._configure(),r.Writer._configure(r.BufferWriter),r.Reader._configure(r.BufferReader)}r.build="minimal",r.Writer=n(529),r.BufferWriter=n(1082),r.Reader=n(530),r.BufferReader=n(1083),r.util=n(130),r.rpc=n(1084),r.roots=n(1086),r.configure=o,o()},function(e,t,n){"use strict";e.exports=function(e,t){var n=new Array(arguments.length-1),r=0,o=2,a=!0;for(;o1&&"="===e.charAt(t);)++n;return Math.ceil(3*e.length)/4-n};for(var o=new Array(64),a=new Array(123),i=0;i<64;)a[o[i]=i<26?i+65:i<52?i+71:i<62?i-4:i-59|43]=i++;r.encode=function(e,t,n){for(var r,a=null,i=[],u=0,c=0;t>2],r=(3&s)<<4,c=1;break;case 1:i[u++]=o[r|s>>4],r=(15&s)<<2,c=2;break;case 2:i[u++]=o[r|s>>6],i[u++]=o[63&s],c=0}u>8191&&((a||(a=[])).push(String.fromCharCode.apply(String,i)),u=0)}return c&&(i[u++]=o[r],i[u++]=61,1===c&&(i[u++]=61)),a?(u&&a.push(String.fromCharCode.apply(String,i.slice(0,u))),a.join("")):String.fromCharCode.apply(String,i.slice(0,u))};r.decode=function(e,t,n){for(var r,o=n,i=0,u=0;u1)break;if(void 0===(c=a[c]))throw Error("invalid encoding");switch(i){case 0:r=c,i=1;break;case 1:t[n++]=r<<2|(48&c)>>4,r=c,i=2;break;case 2:t[n++]=(15&r)<<4|(60&c)>>2,r=c,i=3;break;case 3:t[n++]=(3&r)<<6|c,i=0}}if(1===i)throw Error("invalid encoding");return n-o},r.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}},function(e,t,n){"use strict";function r(){this._listeners={}}e.exports=r,r.prototype.on=function(e,t,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:t,ctx:n||this}),this},r.prototype.off=function(e,t){if(void 0===e)this._listeners={};else if(void 0===t)this._listeners[e]=[];else for(var n=this._listeners[e],r=0;r0?0:2147483648,n,r);else if(isNaN(t))e(2143289344,n,r);else if(t>34028234663852886e22)e((o<<31|2139095040)>>>0,n,r);else if(t<11754943508222875e-54)e((o<<31|Math.round(t/1401298464324817e-60))>>>0,n,r);else{var a=Math.floor(Math.log(t)/Math.LN2);e((o<<31|a+127<<23|8388607&Math.round(t*Math.pow(2,-a)*8388608))>>>0,n,r)}}function n(e,t,n){var r=e(t,n),o=2*(r>>31)+1,a=r>>>23&255,i=8388607&r;return 255===a?i?NaN:o*(1/0):0===a?1401298464324817e-60*o*i:o*Math.pow(2,a-150)*(i+8388608)}e.writeFloatLE=t.bind(null,o),e.writeFloatBE=t.bind(null,a),e.readFloatLE=n.bind(null,i),e.readFloatBE=n.bind(null,u)}(),"undefined"!=typeof Float64Array?function(){var t=new Float64Array([-0]),n=new Uint8Array(t.buffer),r=128===n[7];function o(e,r,o){t[0]=e,r[o]=n[0],r[o+1]=n[1],r[o+2]=n[2],r[o+3]=n[3],r[o+4]=n[4],r[o+5]=n[5],r[o+6]=n[6],r[o+7]=n[7]}function a(e,r,o){t[0]=e,r[o]=n[7],r[o+1]=n[6],r[o+2]=n[5],r[o+3]=n[4],r[o+4]=n[3],r[o+5]=n[2],r[o+6]=n[1],r[o+7]=n[0]}function i(e,r){return n[0]=e[r],n[1]=e[r+1],n[2]=e[r+2],n[3]=e[r+3],n[4]=e[r+4],n[5]=e[r+5],n[6]=e[r+6],n[7]=e[r+7],t[0]}function u(e,r){return n[7]=e[r],n[6]=e[r+1],n[5]=e[r+2],n[4]=e[r+3],n[3]=e[r+4],n[2]=e[r+5],n[1]=e[r+6],n[0]=e[r+7],t[0]}e.writeDoubleLE=r?o:a,e.writeDoubleBE=r?a:o,e.readDoubleLE=r?i:u,e.readDoubleBE=r?u:i}():function(){function t(e,t,n,r,o,a){var i=r<0?1:0;if(i&&(r=-r),0===r)e(0,o,a+t),e(1/r>0?0:2147483648,o,a+n);else if(isNaN(r))e(0,o,a+t),e(2146959360,o,a+n);else if(r>17976931348623157e292)e(0,o,a+t),e((i<<31|2146435072)>>>0,o,a+n);else{var u;if(r<22250738585072014e-324)e((u=r/5e-324)>>>0,o,a+t),e((i<<31|u/4294967296)>>>0,o,a+n);else{var c=Math.floor(Math.log(r)/Math.LN2);1024===c&&(c=1023),e(4503599627370496*(u=r*Math.pow(2,-c))>>>0,o,a+t),e((i<<31|c+1023<<20|1048576*u&1048575)>>>0,o,a+n)}}}function n(e,t,n,r,o){var a=e(r,o+t),i=e(r,o+n),u=2*(i>>31)+1,c=i>>>20&2047,s=4294967296*(1048575&i)+a;return 2047===c?s?NaN:u*(1/0):0===c?5e-324*u*s:u*Math.pow(2,c-1075)*(s+4503599627370496)}e.writeDoubleLE=t.bind(null,o,0,4),e.writeDoubleBE=t.bind(null,a,4,0),e.readDoubleLE=n.bind(null,i,0,4),e.readDoubleBE=n.bind(null,u,4,0)}(),e}function o(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}function a(e,t,n){t[n]=e>>>24,t[n+1]=e>>>16&255,t[n+2]=e>>>8&255,t[n+3]=255&e}function i(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function u(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}e.exports=r(r)},function(module,exports,__webpack_require__){"use strict";function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}module.exports=inquire},function(e,t,n){"use strict";var r=t;r.length=function(e){for(var t=0,n=0,r=0;r191&&r<224?a[i++]=(31&r)<<6|63&e[t++]:r>239&&r<365?(r=((7&r)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,a[i++]=55296+(r>>10),a[i++]=56320+(1023&r)):a[i++]=(15&r)<<12|(63&e[t++])<<6|63&e[t++],i>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,a)),i=0);return o?(i&&o.push(String.fromCharCode.apply(String,a.slice(0,i))),o.join("")):String.fromCharCode.apply(String,a.slice(0,i))},r.write=function(e,t,n){for(var r,o,a=n,i=0;i>6|192,t[n++]=63&r|128):55296==(64512&r)&&56320==(64512&(o=e.charCodeAt(i+1)))?(r=65536+((1023&r)<<10)+(1023&o),++i,t[n++]=r>>18|240,t[n++]=r>>12&63|128,t[n++]=r>>6&63|128,t[n++]=63&r|128):(t[n++]=r>>12|224,t[n++]=r>>6&63|128,t[n++]=63&r|128);return n-a}},function(e,t,n){"use strict";e.exports=function(e,t,n){var r=n||8192,o=r>>>1,a=null,i=r;return function(n){if(n<1||n>o)return e(n);i+n>r&&(a=e(r),i=0);var u=t.call(a,i,i+=n);return 7&i&&(i=1+(7|i)),u}}},function(e,t,n){"use strict";e.exports=o;var r=n(130);function o(e,t){this.lo=e>>>0,this.hi=t>>>0}var a=o.zero=new o(0,0);a.toNumber=function(){return 0},a.zzEncode=a.zzDecode=function(){return this},a.length=function(){return 1};var i=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(e){if(0===e)return a;var t=e<0;t&&(e=-e);var n=e>>>0,r=(e-n)/4294967296>>>0;return t&&(r=~r>>>0,n=~n>>>0,++n>4294967295&&(n=0,++r>4294967295&&(r=0))),new o(n,r)},o.from=function(e){if("number"==typeof e)return o.fromNumber(e);if(r.isString(e)){if(!r.Long)return o.fromNumber(parseInt(e,10));e=r.Long.fromString(e)}return e.low||e.high?new o(e.low>>>0,e.high>>>0):a},o.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var t=1+~this.lo>>>0,n=~this.hi>>>0;return t||(n=n+1>>>0),-(t+4294967296*n)}return this.lo+4294967296*this.hi},o.prototype.toLong=function(e){return r.Long?new r.Long(0|this.lo,0|this.hi,Boolean(e)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(e)}};var u=String.prototype.charCodeAt;o.fromHash=function(e){return e===i?a:new o((u.call(e,0)|u.call(e,1)<<8|u.call(e,2)<<16|u.call(e,3)<<24)>>>0,(u.call(e,4)|u.call(e,5)<<8|u.call(e,6)<<16|u.call(e,7)<<24)>>>0)},o.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},o.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this},o.prototype.zzDecode=function(){var e=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this},o.prototype.length=function(){var e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===t?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}},function(e,t,n){"use strict";e.exports=a;var r=n(529);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(130);function a(){r.call(this)}function i(e,t,n){e.length<40?o.utf8.write(e,t,n):t.utf8Write?t.utf8Write(e,n):t.write(e,n)}a._configure=function(){a.alloc=o._Buffer_allocUnsafe,a.writeBytesBuffer=o.Buffer&&o.Buffer.prototype instanceof Uint8Array&&"set"===o.Buffer.prototype.set.name?function(e,t,n){t.set(e,n)}:function(e,t,n){if(e.copy)e.copy(t,n,0,e.length);else for(var r=0;r>>0;return this.uint32(t),t&&this._push(a.writeBytesBuffer,t,e),this},a.prototype.string=function(e){var t=o.Buffer.byteLength(e);return this.uint32(t),t&&this._push(i,t,e),this},a._configure()},function(e,t,n){"use strict";e.exports=a;var r=n(530);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(130);function a(e){r.call(this,e)}a._configure=function(){o.Buffer&&(a.prototype._slice=o.Buffer.prototype.slice)},a.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))},a._configure()},function(e,t,n){"use strict";t.Service=n(1085)},function(e,t,n){"use strict";e.exports=o;var r=n(130);function o(e,t,n){if("function"!=typeof e)throw TypeError("rpcImpl must be a function");r.EventEmitter.call(this),this.rpcImpl=e,this.requestDelimited=Boolean(t),this.responseDelimited=Boolean(n)}(o.prototype=Object.create(r.EventEmitter.prototype)).constructor=o,o.prototype.rpcCall=function e(t,n,o,a,i){if(!a)throw TypeError("request must be specified");var u=this;if(!i)return r.asPromise(e,u,t,n,o,a);if(u.rpcImpl)try{return u.rpcImpl(t,n[u.requestDelimited?"encodeDelimited":"encode"](a).finish(),(function(e,n){if(e)return u.emit("error",e,t),i(e);if(null!==n){if(!(n instanceof o))try{n=o[u.responseDelimited?"decodeDelimited":"decode"](n)}catch(e){return u.emit("error",e,t),i(e)}return u.emit("data",n,t),i(null,n)}u.end(!0)}))}catch(e){return u.emit("error",e,t),void setTimeout((function(){i(e)}),0)}else setTimeout((function(){i(Error("already ended"))}),0)},o.prototype.end=function(e){return this.rpcImpl&&(e||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.proto=t.google=t.default=void 0;var o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=i?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}o.default=e,n&&n.set(e,o);return o}(n(528));function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}var i=o.Reader,u=o.Writer,c=o.util,s=o.roots.hashgraph||(o.roots.hashgraph={});t.default=s;var l=s.proto=function(){var e,t,n={};return n.TokenUnitBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.SingleAccountBalances=function(){function e(e){if(this.tokenUnitBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hbarBalance=e.uint64();break;case 3:r.tokenUnitBalances&&r.tokenUnitBalances.length||(r.tokenUnitBalances=[]),r.tokenUnitBalances.push(s.proto.TokenUnitBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.AllAccountBalances=function(){function e(e){if(this.allAccounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.allAccounts&&r.allAccounts.length||(r.allAccounts=[]),r.allAccounts.push(s.proto.SingleAccountBalances.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ShardID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.RealmID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AccountID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.accountNum=e.int64();break;case 4:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.fileNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.contractNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionValidStart=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.scheduled=e.bool();break;case 4:r.nonce=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.AccountAmount=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.sint64();break;default:e.skipType(7&o)}}return r},e}(),n.TransferList=function(){function e(e){if(this.accountAmounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountAmounts&&r.accountAmounts.length||(r.accountAmounts=[]),r.accountAmounts.push(s.proto.AccountAmount.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftTransfer=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.senderAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.receiverAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.serialNumber=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenTransferList=function(){function e(e){if(this.transfers=[],this.nftTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.transfers&&r.transfers.length||(r.transfers=[]),r.transfers.push(s.proto.AccountAmount.decode(e,e.uint32()));break;case 3:r.nftTransfers&&r.nftTransfers.length||(r.nftTransfers=[]),r.nftTransfers.push(s.proto.NftTransfer.decode(e,e.uint32()));break;case 4:r.expectedDecimals=s.google.protobuf.UInt32Value.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Fraction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.numerator=e.int64();break;case 2:r.denominator=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TopicID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.topicNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.tokenNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.scheduleNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenType=(e={},(t=Object.create(e))[e[0]="FUNGIBLE_COMMON"]=0,t[e[1]="NON_FUNGIBLE_UNIQUE"]=1,t),n.SubType=function(){var e={},t=Object.create(e);return t[e[0]="DEFAULT"]=0,t[e[1]="TOKEN_FUNGIBLE_COMMON"]=1,t[e[2]="TOKEN_NON_FUNGIBLE_UNIQUE"]=2,t[e[3]="TOKEN_FUNGIBLE_COMMON_WITH_CUSTOM_FEES"]=3,t[e[4]="TOKEN_NON_FUNGIBLE_UNIQUE_WITH_CUSTOM_FEES"]=4,t}(),n.TokenSupplyType=function(){var e={},t=Object.create(e);return t[e[0]="INFINITE"]=0,t[e[1]="FINITE"]=1,t}(),n.TokenFreezeStatus=function(){var e={},t=Object.create(e);return t[e[0]="FreezeNotApplicable"]=0,t[e[1]="Frozen"]=1,t[e[2]="Unfrozen"]=2,t}(),n.TokenKycStatus=function(){var e={},t=Object.create(e);return t[e[0]="KycNotApplicable"]=0,t[e[1]="Granted"]=1,t[e[2]="Revoked"]=2,t}(),n.TokenPauseStatus=function(){var e={},t=Object.create(e);return t[e[0]="PauseNotApplicable"]=0,t[e[1]="Paused"]=1,t[e[2]="Unpaused"]=2,t}(),n.Key=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdKey=s.proto.ThresholdKey.decode(e,e.uint32());break;case 6:r.keyList=s.proto.KeyList.decode(e,e.uint32());break;case 7:r.ECDSASecp256k1=e.bytes();break;case 8:r.delegatableContractId=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdKey=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.threshold=e.uint32();break;case 2:r.keys=s.proto.KeyList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.KeyList=function(){function e(e){if(this.keys=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.keys&&r.keys.length||(r.keys=[]),r.keys.push(s.proto.Key.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Signature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contract=e.bytes();break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdSignature=s.proto.ThresholdSignature.decode(e,e.uint32());break;case 6:r.signatureList=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdSignature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SignatureList=function(){function e(e){if(this.sigs=[],e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs&&r.sigs.length||(r.sigs=[]),r.sigs.push(s.proto.Signature.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SignaturePair=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.pubKeyPrefix=e.bytes();break;case 2:r.contract=e.bytes();break;case 3:r.ed25519=e.bytes();break;case 4:r.RSA_3072=e.bytes();break;case 5:r.ECDSA_384=e.bytes();break;case 6:r.ECDSASecp256k1=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.SignatureMap=function(){function e(e){if(this.sigPair=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.sigPair&&r.sigPair.length||(r.sigPair=[]),r.sigPair.push(s.proto.SignaturePair.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.HederaFunctionality=function(){var e={},t=Object.create(e);return t[e[0]="NONE"]=0,t[e[1]="CryptoTransfer"]=1,t[e[2]="CryptoUpdate"]=2,t[e[3]="CryptoDelete"]=3,t[e[4]="CryptoAddLiveHash"]=4,t[e[5]="CryptoDeleteLiveHash"]=5,t[e[6]="ContractCall"]=6,t[e[7]="ContractCreate"]=7,t[e[8]="ContractUpdate"]=8,t[e[9]="FileCreate"]=9,t[e[10]="FileAppend"]=10,t[e[11]="FileUpdate"]=11,t[e[12]="FileDelete"]=12,t[e[13]="CryptoGetAccountBalance"]=13,t[e[14]="CryptoGetAccountRecords"]=14,t[e[15]="CryptoGetInfo"]=15,t[e[16]="ContractCallLocal"]=16,t[e[17]="ContractGetInfo"]=17,t[e[18]="ContractGetBytecode"]=18,t[e[19]="GetBySolidityID"]=19,t[e[20]="GetByKey"]=20,t[e[21]="CryptoGetLiveHash"]=21,t[e[22]="CryptoGetStakers"]=22,t[e[23]="FileGetContents"]=23,t[e[24]="FileGetInfo"]=24,t[e[25]="TransactionGetRecord"]=25,t[e[26]="ContractGetRecords"]=26,t[e[27]="CryptoCreate"]=27,t[e[28]="SystemDelete"]=28,t[e[29]="SystemUndelete"]=29,t[e[30]="ContractDelete"]=30,t[e[31]="Freeze"]=31,t[e[32]="CreateTransactionRecord"]=32,t[e[33]="CryptoAccountAutoRenew"]=33,t[e[34]="ContractAutoRenew"]=34,t[e[35]="GetVersionInfo"]=35,t[e[36]="TransactionGetReceipt"]=36,t[e[50]="ConsensusCreateTopic"]=50,t[e[51]="ConsensusUpdateTopic"]=51,t[e[52]="ConsensusDeleteTopic"]=52,t[e[53]="ConsensusGetTopicInfo"]=53,t[e[54]="ConsensusSubmitMessage"]=54,t[e[55]="UncheckedSubmit"]=55,t[e[56]="TokenCreate"]=56,t[e[58]="TokenGetInfo"]=58,t[e[59]="TokenFreezeAccount"]=59,t[e[60]="TokenUnfreezeAccount"]=60,t[e[61]="TokenGrantKycToAccount"]=61,t[e[62]="TokenRevokeKycFromAccount"]=62,t[e[63]="TokenDelete"]=63,t[e[64]="TokenUpdate"]=64,t[e[65]="TokenMint"]=65,t[e[66]="TokenBurn"]=66,t[e[67]="TokenAccountWipe"]=67,t[e[68]="TokenAssociateToAccount"]=68,t[e[69]="TokenDissociateFromAccount"]=69,t[e[70]="ScheduleCreate"]=70,t[e[71]="ScheduleDelete"]=71,t[e[72]="ScheduleSign"]=72,t[e[73]="ScheduleGetInfo"]=73,t[e[74]="TokenGetAccountNftInfos"]=74,t[e[75]="TokenGetNftInfo"]=75,t[e[76]="TokenGetNftInfos"]=76,t[e[77]="TokenFeeScheduleUpdate"]=77,t[e[78]="NetworkGetExecutionTime"]=78,t[e[79]="TokenPause"]=79,t[e[80]="TokenUnpause"]=80,t}(),n.FeeComponents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.min=e.int64();break;case 2:r.max=e.int64();break;case 3:r.constant=e.int64();break;case 4:r.bpt=e.int64();break;case 5:r.vpt=e.int64();break;case 6:r.rbh=e.int64();break;case 7:r.sbh=e.int64();break;case 8:r.gas=e.int64();break;case 9:r.tv=e.int64();break;case 10:r.bpr=e.int64();break;case 11:r.sbpr=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionFeeSchedule=function(){function e(e){if(this.fees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.hederaFunctionality=e.int32();break;case 2:r.feeData=s.proto.FeeData.decode(e,e.uint32());break;case 3:r.fees&&r.fees.length||(r.fees=[]),r.fees.push(s.proto.FeeData.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FeeData=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 2:r.networkdata=s.proto.FeeComponents.decode(e,e.uint32());break;case 3:r.servicedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 4:r.subType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FeeSchedule=function(){function e(e){if(this.transactionFeeSchedule=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFeeSchedule&&r.transactionFeeSchedule.length||(r.transactionFeeSchedule=[]),r.transactionFeeSchedule.push(s.proto.TransactionFeeSchedule.decode(e,e.uint32()));break;case 2:r.expiryTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CurrentAndNextFeeSchedule=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;case 2:r.nextFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ServiceEndpoint=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddressV4=e.bytes();break;case 2:r.port=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddress=function(){function e(e){if(this.serviceEndpoint=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddress=e.bytes();break;case 2:r.portno=e.int32();break;case 3:r.memo=e.bytes();break;case 4:r.RSA_PubKey=e.string();break;case 5:r.nodeId=e.int64();break;case 6:r.nodeAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.nodeCertHash=e.bytes();break;case 8:r.serviceEndpoint&&r.serviceEndpoint.length||(r.serviceEndpoint=[]),r.serviceEndpoint.push(s.proto.ServiceEndpoint.decode(e,e.uint32()));break;case 9:r.description=e.string();break;case 10:r.stake=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddressBook=function(){function e(e){if(this.nodeAddress=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeAddress&&r.nodeAddress.length||(r.nodeAddress=[]),r.nodeAddress.push(s.proto.NodeAddress.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SemanticVersion=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.major=e.int32();break;case 2:r.minor=e.int32();break;case 3:r.patch=e.int32();break;case 4:r.pre=e.string();break;case 5:r.build=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.Setting=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.value=e.string();break;case 3:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ServicesConfigurationList=function(){function e(e){if(this.nameValue=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nameValue&&r.nameValue.length||(r.nameValue=[]),r.nameValue.push(s.proto.Setting.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenRelationship=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.balance=e.uint64();break;case 4:r.kycStatus=e.int32();break;case 5:r.freezeStatus=e.int32();break;case 6:r.decimals=e.uint32();break;case 7:r.automaticAssociation=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;case 3:r.decimals=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalances=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenAssociation=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Timestamp=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;case 2:r.nanos=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.TimestampSeconds=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusCreateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 3:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Duration=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusDeleteTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 5:r.topicInfo=s.proto.ConsensusTopicInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseType=function(){var e={},t=Object.create(e);return t[e[0]="ANSWER_ONLY"]=0,t[e[1]="ANSWER_STATE_PROOF"]=1,t[e[2]="COST_ANSWER"]=2,t[e[3]="COST_ANSWER_STATE_PROOF"]=3,t}(),n.QueryHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.payment=s.proto.Transaction.decode(e,e.uint32());break;case 2:r.responseType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.Transaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.body=s.proto.TransactionBody.decode(e,e.uint32());break;case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;case 3:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;case 4:r.bodyBytes=e.bytes();break;case 5:r.signedTransactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.nodeAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transactionFee=e.uint64();break;case 4:r.transactionValidDuration=s.proto.Duration.decode(e,e.uint32());break;case 5:r.generateRecord=e.bool();break;case 6:r.memo=e.string();break;case 7:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 8:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 9:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 22:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoAddLiveHash=s.proto.CryptoAddLiveHashTransactionBody.decode(e,e.uint32());break;case 11:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 12:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 13:r.cryptoDeleteLiveHash=s.proto.CryptoDeleteLiveHashTransactionBody.decode(e,e.uint32());break;case 14:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 15:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 16:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 17:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 18:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 19:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 20:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 21:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 23:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 24:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 25:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 26:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 27:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 28:r.uncheckedSubmit=s.proto.UncheckedSubmitBody.decode(e,e.uint32());break;case 29:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 31:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 33:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 34:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 35:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 37:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 38:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 39:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 40:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 41:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 45:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 46:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 47:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 42:r.scheduleCreate=s.proto.ScheduleCreateTransactionBody.decode(e,e.uint32());break;case 43:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;case 44:r.scheduleSign=s.proto.ScheduleSignTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemUndeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FreezeTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.startHour=e.int32();break;case 2:r.startMin=e.int32();break;case 3:r.endHour=e.int32();break;case 4:r.endMin=e.int32();break;case 5:r.updateFile=s.proto.FileID.decode(e,e.uint32());break;case 6:r.fileHash=e.bytes();break;case 7:r.startTime=s.proto.Timestamp.decode(e,e.uint32());break;case 8:r.freezeType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FreezeType=function(){var e={},t=Object.create(e);return t[e[0]="UNKNOWN_FREEZE_TYPE"]=0,t[e[1]="FREEZE_ONLY"]=1,t[e[2]="PREPARE_UPGRADE"]=2,t[e[3]="FREEZE_UPGRADE"]=3,t[e[4]="FREEZE_ABORT"]=4,t[e[5]="TELEMETRY_UPGRADE"]=5,t}(),n.ContractCallTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.gas=e.int64();break;case 3:r.amount=e.int64();break;case 4:r.functionParameters=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.gas=e.int64();break;case 5:r.initialBalance=e.int64();break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.constructorParameters=e.bytes();break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.ContractUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 9:r.memo=e.string();break;case 10:r.memoWrapper=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.LiveHash=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hash=e.bytes();break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 5:r.duration=s.proto.Duration.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAddLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 3:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.key=s.proto.Key.decode(e,e.uint32());break;case 2:r.initialBalance=e.uint64();break;case 3:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.sendRecordThreshold=e.uint64();break;case 7:r.receiveRecordThreshold=e.uint64();break;case 8:r.receiverSigRequired=e.bool();break;case 9:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;case 14:r.maxAutomaticTokenAssociations=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.deleteAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountOfLiveHash=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHashToDelete=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoTransferTransactionBody=function(){function e(e){if(this.tokenTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transfers=s.proto.TransferList.decode(e,e.uint32());break;case 2:r.tokenTransfers&&r.tokenTransfers.length||(r.tokenTransfers=[]),r.tokenTransfers.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.accountIDToUpdate=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.key=s.proto.Key.decode(e,e.uint32());break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.proxyFraction=e.int32();break;case 6:r.sendRecordThreshold=e.uint64();break;case 11:r.sendRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 7:r.receiveRecordThreshold=e.uint64();break;case 12:r.receiveRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 10:r.receiverSigRequired=e.bool();break;case 13:r.receiverSigRequiredWrapper=s.google.protobuf.BoolValue.decode(e,e.uint32());break;case 14:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 15:r.maxAutomaticTokenAssociations=s.google.protobuf.Int32Value.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileAppendTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 6:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 7:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.FileDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transferContractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusUpdateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusMessageChunkInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.initialTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.total=e.int32();break;case 3:r.number=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusSubmitMessageTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.UncheckedSubmitBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenCreateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.symbol=e.string();break;case 3:r.decimals=e.uint32();break;case 4:r.initialSupply=e.uint64();break;case 5:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.freezeDefault=e.bool();break;case 13:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 14:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 15:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 16:r.memo=e.string();break;case 17:r.tokenType=e.int32();break;case 18:r.supplyType=e.int32();break;case 19:r.maxSupply=e.int64();break;case 20:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 21:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 22:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FractionalFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fractionalAmount=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.minimumAmount=e.int64();break;case 3:r.maximumAmount=e.int64();break;case 4:r.netOfTransfers=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.FixedFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.denominatingTokenId=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.RoyaltyFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.exchangeValueFraction=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.fallbackFee=s.proto.FixedFee.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CustomFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fixedFee=s.proto.FixedFee.decode(e,e.uint32());break;case 2:r.fractionalFee=s.proto.FractionalFee.decode(e,e.uint32());break;case 4:r.royaltyFee=s.proto.RoyaltyFee.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.AssessedCustomFee=function(){function e(e){if(this.effectivePayerAccountId=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.effectivePayerAccountId&&r.effectivePayerAccountId.length||(r.effectivePayerAccountId=[]),r.effectivePayerAccountId.push(s.proto.AccountID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnfreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGrantKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenRevokeKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.name=e.string();break;case 4:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 12:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 14:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 15:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenMintTransactionBody=function(){function e(e){if(this.metadata=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:r.metadata&&r.metadata.length||(r.metadata=[]),r.metadata.push(e.bytes());break;default:e.skipType(7&o)}}return r},e}(),n.TokenBurnTransactionBody=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.uint64();break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenDissociateTransactionBody=function(){function e(e){if(this.tokens=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFeeScheduleUpdateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenPauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnpauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 2:r.memo=e.string();break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SchedulableTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFee=e.uint64();break;case 2:r.memo=e.string();break;case 3:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 4:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 5:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 6:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 7:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 8:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 9:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 11:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 12:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 13:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 14:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 15:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 16:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 17:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 18:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 19:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 20:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 21:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 22:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 23:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 24:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 25:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 26:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 27:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 28:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 29:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 30:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 31:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 33:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 35:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 34:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleSignTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.responseType=e.int32();break;case 3:r.cost=e.uint64();break;case 4:r.stateProof=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.cost=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ResponseCodeEnum=function(){var e={},t=Object.create(e);return t[e[0]="OK"]=0,t[e[1]="INVALID_TRANSACTION"]=1,t[e[2]="PAYER_ACCOUNT_NOT_FOUND"]=2,t[e[3]="INVALID_NODE_ACCOUNT"]=3,t[e[4]="TRANSACTION_EXPIRED"]=4,t[e[5]="INVALID_TRANSACTION_START"]=5,t[e[6]="INVALID_TRANSACTION_DURATION"]=6,t[e[7]="INVALID_SIGNATURE"]=7,t[e[8]="MEMO_TOO_LONG"]=8,t[e[9]="INSUFFICIENT_TX_FEE"]=9,t[e[10]="INSUFFICIENT_PAYER_BALANCE"]=10,t[e[11]="DUPLICATE_TRANSACTION"]=11,t[e[12]="BUSY"]=12,t[e[13]="NOT_SUPPORTED"]=13,t[e[14]="INVALID_FILE_ID"]=14,t[e[15]="INVALID_ACCOUNT_ID"]=15,t[e[16]="INVALID_CONTRACT_ID"]=16,t[e[17]="INVALID_TRANSACTION_ID"]=17,t[e[18]="RECEIPT_NOT_FOUND"]=18,t[e[19]="RECORD_NOT_FOUND"]=19,t[e[20]="INVALID_SOLIDITY_ID"]=20,t[e[21]="UNKNOWN"]=21,t[e[22]="SUCCESS"]=22,t[e[23]="FAIL_INVALID"]=23,t[e[24]="FAIL_FEE"]=24,t[e[25]="FAIL_BALANCE"]=25,t[e[26]="KEY_REQUIRED"]=26,t[e[27]="BAD_ENCODING"]=27,t[e[28]="INSUFFICIENT_ACCOUNT_BALANCE"]=28,t[e[29]="INVALID_SOLIDITY_ADDRESS"]=29,t[e[30]="INSUFFICIENT_GAS"]=30,t[e[31]="CONTRACT_SIZE_LIMIT_EXCEEDED"]=31,t[e[32]="LOCAL_CALL_MODIFICATION_EXCEPTION"]=32,t[e[33]="CONTRACT_REVERT_EXECUTED"]=33,t[e[34]="CONTRACT_EXECUTION_EXCEPTION"]=34,t[e[35]="INVALID_RECEIVING_NODE_ACCOUNT"]=35,t[e[36]="MISSING_QUERY_HEADER"]=36,t[e[37]="ACCOUNT_UPDATE_FAILED"]=37,t[e[38]="INVALID_KEY_ENCODING"]=38,t[e[39]="NULL_SOLIDITY_ADDRESS"]=39,t[e[40]="CONTRACT_UPDATE_FAILED"]=40,t[e[41]="INVALID_QUERY_HEADER"]=41,t[e[42]="INVALID_FEE_SUBMITTED"]=42,t[e[43]="INVALID_PAYER_SIGNATURE"]=43,t[e[44]="KEY_NOT_PROVIDED"]=44,t[e[45]="INVALID_EXPIRATION_TIME"]=45,t[e[46]="NO_WACL_KEY"]=46,t[e[47]="FILE_CONTENT_EMPTY"]=47,t[e[48]="INVALID_ACCOUNT_AMOUNTS"]=48,t[e[49]="EMPTY_TRANSACTION_BODY"]=49,t[e[50]="INVALID_TRANSACTION_BODY"]=50,t[e[51]="INVALID_SIGNATURE_TYPE_MISMATCHING_KEY"]=51,t[e[52]="INVALID_SIGNATURE_COUNT_MISMATCHING_KEY"]=52,t[e[53]="EMPTY_LIVE_HASH_BODY"]=53,t[e[54]="EMPTY_LIVE_HASH"]=54,t[e[55]="EMPTY_LIVE_HASH_KEYS"]=55,t[e[56]="INVALID_LIVE_HASH_SIZE"]=56,t[e[57]="EMPTY_QUERY_BODY"]=57,t[e[58]="EMPTY_LIVE_HASH_QUERY"]=58,t[e[59]="LIVE_HASH_NOT_FOUND"]=59,t[e[60]="ACCOUNT_ID_DOES_NOT_EXIST"]=60,t[e[61]="LIVE_HASH_ALREADY_EXISTS"]=61,t[e[62]="INVALID_FILE_WACL"]=62,t[e[63]="SERIALIZATION_FAILED"]=63,t[e[64]="TRANSACTION_OVERSIZE"]=64,t[e[65]="TRANSACTION_TOO_MANY_LAYERS"]=65,t[e[66]="CONTRACT_DELETED"]=66,t[e[67]="PLATFORM_NOT_ACTIVE"]=67,t[e[68]="KEY_PREFIX_MISMATCH"]=68,t[e[69]="PLATFORM_TRANSACTION_NOT_CREATED"]=69,t[e[70]="INVALID_RENEWAL_PERIOD"]=70,t[e[71]="INVALID_PAYER_ACCOUNT_ID"]=71,t[e[72]="ACCOUNT_DELETED"]=72,t[e[73]="FILE_DELETED"]=73,t[e[74]="ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS"]=74,t[e[75]="SETTING_NEGATIVE_ACCOUNT_BALANCE"]=75,t[e[76]="OBTAINER_REQUIRED"]=76,t[e[77]="OBTAINER_SAME_CONTRACT_ID"]=77,t[e[78]="OBTAINER_DOES_NOT_EXIST"]=78,t[e[79]="MODIFYING_IMMUTABLE_CONTRACT"]=79,t[e[80]="FILE_SYSTEM_EXCEPTION"]=80,t[e[81]="AUTORENEW_DURATION_NOT_IN_RANGE"]=81,t[e[82]="ERROR_DECODING_BYTESTRING"]=82,t[e[83]="CONTRACT_FILE_EMPTY"]=83,t[e[84]="CONTRACT_BYTECODE_EMPTY"]=84,t[e[85]="INVALID_INITIAL_BALANCE"]=85,t[e[86]="INVALID_RECEIVE_RECORD_THRESHOLD"]=86,t[e[87]="INVALID_SEND_RECORD_THRESHOLD"]=87,t[e[88]="ACCOUNT_IS_NOT_GENESIS_ACCOUNT"]=88,t[e[89]="PAYER_ACCOUNT_UNAUTHORIZED"]=89,t[e[90]="INVALID_FREEZE_TRANSACTION_BODY"]=90,t[e[91]="FREEZE_TRANSACTION_BODY_NOT_FOUND"]=91,t[e[92]="TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=92,t[e[93]="RESULT_SIZE_LIMIT_EXCEEDED"]=93,t[e[94]="NOT_SPECIAL_ACCOUNT"]=94,t[e[95]="CONTRACT_NEGATIVE_GAS"]=95,t[e[96]="CONTRACT_NEGATIVE_VALUE"]=96,t[e[97]="INVALID_FEE_FILE"]=97,t[e[98]="INVALID_EXCHANGE_RATE_FILE"]=98,t[e[99]="INSUFFICIENT_LOCAL_CALL_GAS"]=99,t[e[100]="ENTITY_NOT_ALLOWED_TO_DELETE"]=100,t[e[101]="AUTHORIZATION_FAILED"]=101,t[e[102]="FILE_UPLOADED_PROTO_INVALID"]=102,t[e[103]="FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK"]=103,t[e[104]="FEE_SCHEDULE_FILE_PART_UPLOADED"]=104,t[e[105]="EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED"]=105,t[e[106]="MAX_CONTRACT_STORAGE_EXCEEDED"]=106,t[e[107]="TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT"]=107,t[e[108]="TOTAL_LEDGER_BALANCE_INVALID"]=108,t[e[110]="EXPIRATION_REDUCTION_NOT_ALLOWED"]=110,t[e[111]="MAX_GAS_LIMIT_EXCEEDED"]=111,t[e[112]="MAX_FILE_SIZE_EXCEEDED"]=112,t[e[113]="RECEIVER_SIG_REQUIRED"]=113,t[e[150]="INVALID_TOPIC_ID"]=150,t[e[155]="INVALID_ADMIN_KEY"]=155,t[e[156]="INVALID_SUBMIT_KEY"]=156,t[e[157]="UNAUTHORIZED"]=157,t[e[158]="INVALID_TOPIC_MESSAGE"]=158,t[e[159]="INVALID_AUTORENEW_ACCOUNT"]=159,t[e[160]="AUTORENEW_ACCOUNT_NOT_ALLOWED"]=160,t[e[162]="TOPIC_EXPIRED"]=162,t[e[163]="INVALID_CHUNK_NUMBER"]=163,t[e[164]="INVALID_CHUNK_TRANSACTION_ID"]=164,t[e[165]="ACCOUNT_FROZEN_FOR_TOKEN"]=165,t[e[166]="TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED"]=166,t[e[167]="INVALID_TOKEN_ID"]=167,t[e[168]="INVALID_TOKEN_DECIMALS"]=168,t[e[169]="INVALID_TOKEN_INITIAL_SUPPLY"]=169,t[e[170]="INVALID_TREASURY_ACCOUNT_FOR_TOKEN"]=170,t[e[171]="INVALID_TOKEN_SYMBOL"]=171,t[e[172]="TOKEN_HAS_NO_FREEZE_KEY"]=172,t[e[173]="TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN"]=173,t[e[174]="MISSING_TOKEN_SYMBOL"]=174,t[e[175]="TOKEN_SYMBOL_TOO_LONG"]=175,t[e[176]="ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN"]=176,t[e[177]="TOKEN_HAS_NO_KYC_KEY"]=177,t[e[178]="INSUFFICIENT_TOKEN_BALANCE"]=178,t[e[179]="TOKEN_WAS_DELETED"]=179,t[e[180]="TOKEN_HAS_NO_SUPPLY_KEY"]=180,t[e[181]="TOKEN_HAS_NO_WIPE_KEY"]=181,t[e[182]="INVALID_TOKEN_MINT_AMOUNT"]=182,t[e[183]="INVALID_TOKEN_BURN_AMOUNT"]=183,t[e[184]="TOKEN_NOT_ASSOCIATED_TO_ACCOUNT"]=184,t[e[185]="CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT"]=185,t[e[186]="INVALID_KYC_KEY"]=186,t[e[187]="INVALID_WIPE_KEY"]=187,t[e[188]="INVALID_FREEZE_KEY"]=188,t[e[189]="INVALID_SUPPLY_KEY"]=189,t[e[190]="MISSING_TOKEN_NAME"]=190,t[e[191]="TOKEN_NAME_TOO_LONG"]=191,t[e[192]="INVALID_WIPING_AMOUNT"]=192,t[e[193]="TOKEN_IS_IMMUTABLE"]=193,t[e[194]="TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT"]=194,t[e[195]="TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES"]=195,t[e[196]="ACCOUNT_IS_TREASURY"]=196,t[e[197]="TOKEN_ID_REPEATED_IN_TOKEN_LIST"]=197,t[e[198]="TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=198,t[e[199]="EMPTY_TOKEN_TRANSFER_BODY"]=199,t[e[200]="EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS"]=200,t[e[201]="INVALID_SCHEDULE_ID"]=201,t[e[202]="SCHEDULE_IS_IMMUTABLE"]=202,t[e[203]="INVALID_SCHEDULE_PAYER_ID"]=203,t[e[204]="INVALID_SCHEDULE_ACCOUNT_ID"]=204,t[e[205]="NO_NEW_VALID_SIGNATURES"]=205,t[e[206]="UNRESOLVABLE_REQUIRED_SIGNERS"]=206,t[e[207]="SCHEDULED_TRANSACTION_NOT_IN_WHITELIST"]=207,t[e[208]="SOME_SIGNATURES_WERE_INVALID"]=208,t[e[209]="TRANSACTION_ID_FIELD_NOT_ALLOWED"]=209,t[e[210]="IDENTICAL_SCHEDULE_ALREADY_CREATED"]=210,t[e[211]="INVALID_ZERO_BYTE_IN_STRING"]=211,t[e[212]="SCHEDULE_ALREADY_DELETED"]=212,t[e[213]="SCHEDULE_ALREADY_EXECUTED"]=213,t[e[214]="MESSAGE_SIZE_TOO_LARGE"]=214,t[e[215]="OPERATION_REPEATED_IN_BUCKET_GROUPS"]=215,t[e[216]="BUCKET_CAPACITY_OVERFLOW"]=216,t[e[217]="NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION"]=217,t[e[218]="BUCKET_HAS_NO_THROTTLE_GROUPS"]=218,t[e[219]="THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC"]=219,t[e[220]="SUCCESS_BUT_MISSING_EXPECTED_OPERATION"]=220,t[e[221]="UNPARSEABLE_THROTTLE_DEFINITIONS"]=221,t[e[222]="INVALID_THROTTLE_DEFINITIONS"]=222,t[e[223]="ACCOUNT_EXPIRED_AND_PENDING_REMOVAL"]=223,t[e[224]="INVALID_TOKEN_MAX_SUPPLY"]=224,t[e[225]="INVALID_TOKEN_NFT_SERIAL_NUMBER"]=225,t[e[226]="INVALID_NFT_ID"]=226,t[e[227]="METADATA_TOO_LONG"]=227,t[e[228]="BATCH_SIZE_LIMIT_EXCEEDED"]=228,t[e[229]="INVALID_QUERY_RANGE"]=229,t[e[230]="FRACTION_DIVIDES_BY_ZERO"]=230,t[e[231]="INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE"]=231,t[e[232]="CUSTOM_FEES_LIST_TOO_LONG"]=232,t[e[233]="INVALID_CUSTOM_FEE_COLLECTOR"]=233,t[e[234]="INVALID_TOKEN_ID_IN_CUSTOM_FEES"]=234,t[e[235]="TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR"]=235,t[e[236]="TOKEN_MAX_SUPPLY_REACHED"]=236,t[e[237]="SENDER_DOES_NOT_OWN_NFT_SERIAL_NO"]=237,t[e[238]="CUSTOM_FEE_NOT_FULLY_SPECIFIED"]=238,t[e[239]="CUSTOM_FEE_MUST_BE_POSITIVE"]=239,t[e[240]="TOKEN_HAS_NO_FEE_SCHEDULE_KEY"]=240,t[e[241]="CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE"]=241,t[e[242]="ROYALTY_FRACTION_CANNOT_EXCEED_ONE"]=242,t[e[243]="FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT"]=243,t[e[244]="CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES"]=244,t[e[245]="CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON"]=245,t[e[246]="CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=246,t[e[247]="INVALID_CUSTOM_FEE_SCHEDULE_KEY"]=247,t[e[248]="INVALID_TOKEN_MINT_METADATA"]=248,t[e[249]="INVALID_TOKEN_BURN_METADATA"]=249,t[e[250]="CURRENT_TREASURY_STILL_OWNS_NFTS"]=250,t[e[251]="ACCOUNT_STILL_OWNS_NFTS"]=251,t[e[252]="TREASURY_MUST_OWN_BURNED_NFT"]=252,t[e[253]="ACCOUNT_DOES_NOT_OWN_WIPED_NFT"]=253,t[e[254]="ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=254,t[e[255]="MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED"]=255,t[e[256]="PAYER_ACCOUNT_DELETED"]=256,t[e[257]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH"]=257,t[e[258]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS"]=258,t[e[259]="INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE"]=259,t[e[260]="SERIAL_NUMBER_LIMIT_REACHED"]=260,t[e[261]="CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE"]=261,t[e[262]="NO_REMAINING_AUTOMATIC_ASSOCIATIONS"]=262,t[e[263]="EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT"]=263,t[e[264]="REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT"]=264,t[e[265]="TOKEN_IS_PAUSED"]=265,t[e[266]="TOKEN_HAS_NO_PAUSE_KEY"]=266,t[e[267]="INVALID_PAUSE_KEY"]=267,t[e[268]="FREEZE_UPDATE_FILE_DOES_NOT_EXIST"]=268,t[e[269]="FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH"]=269,t[e[270]="NO_UPGRADE_HAS_BEEN_PREPARED"]=270,t[e[271]="NO_FREEZE_IS_SCHEDULED"]=271,t[e[272]="UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE"]=272,t[e[273]="FREEZE_START_TIME_MUST_BE_FUTURE"]=273,t[e[274]="PREPARED_UPDATE_FILE_IS_IMMUTABLE"]=274,t[e[275]="FREEZE_ALREADY_SCHEDULED"]=275,t[e[276]="FREEZE_UPGRADE_IN_PROGRESS"]=276,t[e[277]="UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED"]=277,t[e[278]="UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED"]=278,t[e[279]="CONSENSUS_GAS_EXHAUSTED"]=279,t[e[280]="REVERTED_SUCCESS"]=280,t[e[281]="MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED"]=281,t[e[282]="INVALID_ALIAS_KEY"]=282,t[e[283]="UNEXPECTED_TOKEN_DECIMALS"]=283,t}(),n.ConsensusTopicInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.runningHash=e.bytes();break;case 3:r.sequenceNumber=e.uint64();break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 9:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createTopic"}),Object.defineProperty(e.prototype.updateTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTopic"}),Object.defineProperty(e.prototype.deleteTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteTopic"}),Object.defineProperty(e.prototype.getTopicInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTopicInfo"}),Object.defineProperty(e.prototype.submitMessage=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"submitMessage"}),e}(),n.Query=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyQuery.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDQuery.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalQuery.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoQuery.decode(e,e.uint32());break;case 5:r.contractGetBytecode=s.proto.ContractGetBytecodeQuery.decode(e,e.uint32());break;case 6:r.ContractGetRecords=s.proto.ContractGetRecordsQuery.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceQuery.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsQuery.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoQuery.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashQuery.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersQuery.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsQuery.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoQuery.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptQuery.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordQuery.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordQuery.decode(e,e.uint32());break;case 50:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoQuery.decode(e,e.uint32());break;case 51:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoQuery.decode(e,e.uint32());break;case 52:r.tokenGetInfo=s.proto.TokenGetInfoQuery.decode(e,e.uint32());break;case 53:r.scheduleGetInfo=s.proto.ScheduleGetInfoQuery.decode(e,e.uint32());break;case 54:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosQuery.decode(e,e.uint32());break;case 55:r.tokenGetNftInfo=s.proto.TokenGetNftInfoQuery.decode(e,e.uint32());break;case 56:r.tokenGetNftInfos=s.proto.TokenGetNftInfosQuery.decode(e,e.uint32());break;case 57:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeQuery.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.key=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.EntityID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyResponse=function(){function e(e){if(this.entities=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.entities&&r.entities.length||(r.entities=[]),r.entities.push(s.proto.EntityID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.solidityID=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractLoginfo=function(){function e(e){if(this.topic=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.bloom=e.bytes();break;case 3:r.topic&&r.topic.length||(r.topic=[]),r.topic.push(e.bytes());break;case 4:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractFunctionResult=function(){function e(e){if(this.logInfo=[],this.createdContractIDs=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.contractCallResult=e.bytes();break;case 3:r.errorMessage=e.string();break;case 4:r.bloom=e.bytes();break;case 5:r.gasUsed=e.uint64();break;case 6:r.logInfo&&r.logInfo.length||(r.logInfo=[]),r.logInfo.push(s.proto.ContractLoginfo.decode(e,e.uint32()));break;case 7:r.createdContractIDs&&r.createdContractIDs.length||(r.createdContractIDs=[]),r.createdContractIDs.push(s.proto.ContractID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.gas=e.int64();break;case 4:r.functionParameters=e.bytes();break;case 5:r.maxResultSize=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.functionResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractInfo=s.proto.ContractGetInfoResponse.ContractInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.ContractInfo=function(){function e(e){if(this.tokenRelationships=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractAccountID=e.string();break;case 4:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 5:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.storage=e.int64();break;case 8:r.memo=e.string();break;case 9:r.balance=e.uint64();break;case 10:r.deleted=e.bool();break;case 11:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.ContractGetBytecodeQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetBytecodeResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 6:r.bytecode=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionRecord=function(){function e(e){if(this.tokenTransferLists=[],this.assessedCustomFees=[],this.automaticTokenAssociations=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 2:r.transactionHash=e.bytes();break;case 3:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 5:r.memo=e.string();break;case 6:r.transactionFee=e.uint64();break;case 7:r.contractCallResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 8:r.contractCreateResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 10:r.transferList=s.proto.TransferList.decode(e,e.uint32());break;case 11:r.tokenTransferLists&&r.tokenTransferLists.length||(r.tokenTransferLists=[]),r.tokenTransferLists.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;case 12:r.scheduleRef=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.assessedCustomFees&&r.assessedCustomFees.length||(r.assessedCustomFees=[]),r.assessedCustomFees.push(s.proto.AssessedCustomFee.decode(e,e.uint32()));break;case 14:r.automaticTokenAssociations&&r.automaticTokenAssociations.length||(r.automaticTokenAssociations=[]),r.automaticTokenAssociations.push(s.proto.TokenAssociation.decode(e,e.uint32()));break;case 15:r.parentConsensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 16:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionReceipt=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.status=e.int32();break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 5:r.exchangeRate=s.proto.ExchangeRateSet.decode(e,e.uint32());break;case 6:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 7:r.topicSequenceNumber=e.uint64();break;case 8:r.topicRunningHash=e.bytes();break;case 9:r.topicRunningHashVersion=e.uint64();break;case 10:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 11:r.newTotalSupply=e.uint64();break;case 12:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 14:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.hbarEquiv=e.int32();break;case 2:r.centEquiv=e.int32();break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ExchangeRateSet=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentRate=s.proto.ExchangeRate.decode(e,e.uint32());break;case 2:r.nextRate=s.proto.ExchangeRate.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceResponse=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.balance=e.uint64();break;case 4:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountInfo=s.proto.CryptoGetInfoResponse.AccountInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.AccountInfo=function(){function e(e){if(this.liveHashes=[],this.tokenRelationships=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.contractAccountID=e.string();break;case 3:r.deleted=e.bool();break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.proxyReceived=e.int64();break;case 7:r.key=s.proto.Key.decode(e,e.uint32());break;case 8:r.balance=e.uint64();break;case 9:r.generateSendRecordThreshold=e.uint64();break;case 10:r.generateReceiveRecordThreshold=e.uint64();break;case 11:r.receiverSigRequired=e.bool();break;case 12:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 14:r.liveHashes&&r.liveHashes.length||(r.liveHashes=[]),r.liveHashes.push(s.proto.LiveHash.decode(e,e.uint32()));break;case 15:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 16:r.memo=e.string();break;case 17:r.ownedNfts=e.int64();break;case 18:r.maxAutomaticTokenAssociations=e.int32();break;case 19:r.alias=e.bytes();break;case 20:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.CryptoGetLiveHashQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.hash=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetLiveHashResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ProxyStaker=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AllProxyStakers=function(){function e(e){if(this.proxyStaker=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.proxyStaker&&r.proxyStaker.length||(r.proxyStaker=[]),r.proxyStaker.push(s.proto.ProxyStaker.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.stakers=s.proto.AllProxyStakers.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileContents=s.proto.FileGetContentsResponse.FileContents.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileContents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.FileGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileInfo=s.proto.FileGetInfoResponse.FileInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.size=e.int64();break;case 3:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.deleted=e.bool();break;case 5:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.TransactionGetReceiptQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildReceipts=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetReceiptResponse=function(){function e(e){if(this.duplicateTransactionReceipts=[],this.childTransactionReceipts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 4:r.duplicateTransactionReceipts&&r.duplicateTransactionReceipts.length||(r.duplicateTransactionReceipts=[]),r.duplicateTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;case 5:r.childTransactionReceipts&&r.childTransactionReceipts.length||(r.childTransactionReceipts=[]),r.childTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildRecords=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordResponse=function(){function e(e){if(this.duplicateTransactionRecords=[],this.childTransactionRecords=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;case 4:r.duplicateTransactionRecords&&r.duplicateTransactionRecords.length||(r.duplicateTransactionRecords=[]),r.duplicateTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;case 5:r.childTransactionRecords&&r.childTransactionRecords.length||(r.childTransactionRecords=[]),r.childTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.hapiProtoVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;case 3:r.hederaServicesVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeQuery=function(){function e(e){if(this.transactionIds=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionIds&&r.transactionIds.length||(r.transactionIds=[]),r.transactionIds.push(s.proto.TransactionID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeResponse=function(){function e(e){if(this.executionTimes=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:if(r.executionTimes&&r.executionTimes.length||(r.executionTimes=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenInfo=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.name=e.string();break;case 3:r.symbol=e.string();break;case 4:r.decimals=e.uint32();break;case 5:r.totalSupply=e.uint64();break;case 6:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 12:r.defaultFreezeStatus=e.int32();break;case 13:r.defaultKycStatus=e.int32();break;case 14:r.deleted=e.bool();break;case 15:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 16:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 17:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 18:r.memo=e.string();break;case 19:r.tokenType=e.int32();break;case 20:r.supplyType=e.int32();break;case 21:r.maxSupply=e.int64();break;case 22:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 23:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 24:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;case 25:r.pauseStatus=e.int32();break;case 26:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenInfo=s.proto.TokenInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 2:r.deletionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.executionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.signers=s.proto.KeyList.decode(e,e.uint32());break;case 9:r.creatorAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 10:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.scheduleInfo=s.proto.ScheduleInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.serialNumber=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.nftID=s.proto.NftID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenNftInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nftID=s.proto.NftID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.creationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.metadata=e.bytes();break;case 5:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nft=s.proto.TokenNftInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Response=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyResponse.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDResponse.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalResponse.decode(e,e.uint32());break;case 5:r.contractGetBytecodeResponse=s.proto.ContractGetBytecodeResponse.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoResponse.decode(e,e.uint32());break;case 6:r.contractGetRecordsResponse=s.proto.ContractGetRecordsResponse.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceResponse.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsResponse.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoResponse.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashResponse.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersResponse.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsResponse.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoResponse.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptResponse.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordResponse.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordResponse.decode(e,e.uint32());break;case 150:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoResponse.decode(e,e.uint32());break;case 151:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoResponse.decode(e,e.uint32());break;case 152:r.tokenGetInfo=s.proto.TokenGetInfoResponse.decode(e,e.uint32());break;case 153:r.scheduleGetInfo=s.proto.ScheduleGetInfoResponse.decode(e,e.uint32());break;case 154:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosResponse.decode(e,e.uint32());break;case 155:r.tokenGetNftInfo=s.proto.TokenGetNftInfoResponse.decode(e,e.uint32());break;case 156:r.tokenGetNftInfos=s.proto.TokenGetNftInfosResponse.decode(e,e.uint32());break;case 157:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeResponse.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createAccount"}),Object.defineProperty(e.prototype.updateAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateAccount"}),Object.defineProperty(e.prototype.cryptoTransfer=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoTransfer"}),Object.defineProperty(e.prototype.cryptoDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoDelete"}),Object.defineProperty(e.prototype.addLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"addLiveHash"}),Object.defineProperty(e.prototype.deleteLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteLiveHash"}),Object.defineProperty(e.prototype.getLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getLiveHash"}),Object.defineProperty(e.prototype.getAccountRecords=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountRecords"}),Object.defineProperty(e.prototype.cryptoGetBalance=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"cryptoGetBalance"}),Object.defineProperty(e.prototype.getAccountInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountInfo"}),Object.defineProperty(e.prototype.getTransactionReceipts=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTransactionReceipts"}),Object.defineProperty(e.prototype.getFastTransactionRecord=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFastTransactionRecord"}),Object.defineProperty(e.prototype.getTxRecordByTxID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByTxID"}),Object.defineProperty(e.prototype.getStakersByAccountID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getStakersByAccountID"}),e}(),n.FileService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createFile"}),Object.defineProperty(e.prototype.updateFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateFile"}),Object.defineProperty(e.prototype.deleteFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteFile"}),Object.defineProperty(e.prototype.appendContent=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"appendContent"}),Object.defineProperty(e.prototype.getFileContent=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileContent"}),Object.defineProperty(e.prototype.getFileInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileInfo"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.FreezeService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.freeze=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freeze"}),e}(),n.ConsensusTopicQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.consensusStartTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.consensusEndTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.limit=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusTopicResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.runningHash=e.bytes();break;case 4:r.sequenceNumber=e.uint64();break;case 5:r.runningHashVersion=e.uint64();break;case 6:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.MirrorConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.subscribeTopic=function e(t,n){return this.rpcCall(e,s.proto.ConsensusTopicQuery,s.proto.ConsensusTopicResponse,t,n)},"name",{value:"subscribeTopic"}),e}(),n.NetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getVersionInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getVersionInfo"}),Object.defineProperty(e.prototype.getExecutionTime=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getExecutionTime"}),Object.defineProperty(e.prototype.uncheckedSubmit=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"uncheckedSubmit"}),e}(),n.ScheduleService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createSchedule"}),Object.defineProperty(e.prototype.signSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"signSchedule"}),Object.defineProperty(e.prototype.deleteSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteSchedule"}),Object.defineProperty(e.prototype.getScheduleInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getScheduleInfo"}),e}(),n.SmartContractService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createContract"}),Object.defineProperty(e.prototype.updateContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateContract"}),Object.defineProperty(e.prototype.contractCallMethod=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"contractCallMethod"}),Object.defineProperty(e.prototype.getContractInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getContractInfo"}),Object.defineProperty(e.prototype.contractCallLocalMethod=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"contractCallLocalMethod"}),Object.defineProperty(e.prototype.contractGetBytecode=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"ContractGetBytecode"}),Object.defineProperty(e.prototype.getBySolidityID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getBySolidityID"}),Object.defineProperty(e.prototype.getTxRecordByContractID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByContractID"}),Object.defineProperty(e.prototype.deleteContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteContract"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.ThrottleGroup=function(){function e(e){if(this.operations=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:if(r.operations&&r.operations.length||(r.operations=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.name=e.string();break;case 2:r.burstPeriodMs=e.uint64();break;case 3:r.throttleGroups&&r.throttleGroups.length||(r.throttleGroups=[]),r.throttleGroups.push(s.proto.ThrottleGroup.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ThrottleDefinitions=function(){function e(e){if(this.throttleBuckets=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.throttleBuckets&&r.throttleBuckets.length||(r.throttleBuckets=[]),r.throttleBuckets.push(s.proto.ThrottleBucket.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createToken"}),Object.defineProperty(e.prototype.updateToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateToken"}),Object.defineProperty(e.prototype.mintToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"mintToken"}),Object.defineProperty(e.prototype.burnToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"burnToken"}),Object.defineProperty(e.prototype.deleteToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteToken"}),Object.defineProperty(e.prototype.wipeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"wipeTokenAccount"}),Object.defineProperty(e.prototype.freezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freezeTokenAccount"}),Object.defineProperty(e.prototype.unfreezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unfreezeTokenAccount"}),Object.defineProperty(e.prototype.grantKycToTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"grantKycToTokenAccount"}),Object.defineProperty(e.prototype.revokeKycFromTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"revokeKycFromTokenAccount"}),Object.defineProperty(e.prototype.associateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"associateTokens"}),Object.defineProperty(e.prototype.dissociateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"dissociateTokens"}),Object.defineProperty(e.prototype.updateTokenFeeSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTokenFeeSchedule"}),Object.defineProperty(e.prototype.getTokenInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenInfo"}),Object.defineProperty(e.prototype.getAccountNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountNftInfos"}),Object.defineProperty(e.prototype.getTokenNftInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfo"}),Object.defineProperty(e.prototype.getTokenNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfos"}),Object.defineProperty(e.prototype.pauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"pauseToken"}),Object.defineProperty(e.prototype.unpauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unpauseToken"}),e}(),n.SignedTransaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.bodyBytes=e.bytes();break;case 2:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionList=function(){function e(e){if(this.transactionList=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionList&&r.transactionList.length||(r.transactionList=[]),r.transactionList.push(s.proto.Transaction.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),n.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),n.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n}();t.proto=l;var f=s.google=function(){var e,t={};return t.protobuf=((e={}).DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),e.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),e.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),e.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),e.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),e.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),e.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),e.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),e.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e),t}();t.google=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(29));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(73)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(29));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(73)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(75)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(46)),f=r(n(532));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var p=function(e){(0,u.default)(n,e);var t=d(n);function n(e){var r;return(0,o.default)(this,n),(r=t.call(this,"gRPC service failed with status: ".concat(e.toString()))).status=e,r.name="GrpcServiceError",void 0!==Error.captureStackTrace&&Error.captureStackTrace((0,i.default)(r),n),r}return(0,a.default)(n,null,[{key:"_fromResponse",value:function(e){if(null!=e.code&&null!=e.details){var t=new n(f.default._fromValue(e.code));return t.message=e.details,t}return e}}]),n}((0,l.default)(Error));t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r){var a;return(0,o.default)(this,n),(a=t.call(this)).message="query cost of ".concat(e.toString()," HBAR exceeds max set on client: ").concat(r.toString()," HBAR"),a.name="MaxQueryPaymentExceededError",a.queryCost=e,a.maxQueryPayment=r,a}return n}((0,r(n(46)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),p=r(n(56)),h=r(n(25)),y=r(n(39));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._key=null,e._initialBalance=null,e._sendRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiveRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=new p.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._accountMemo=null,e._maxAutomaticTokenAssociations=null,null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),e}return(0,i.default)(n,[{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"_validateChecksums",value:function(e){null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.createAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoCreateAccount"}},{key:"_makeTransactionData",value:function(){return{key:null!=this._key?this._key._toProtobufKey():null,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,receiveRecordThreshold:this._receiveRecordThreshold.toTinybars(),sendRecordThreshold:this._sendRecordThreshold.toTinybars(),receiverSigRequired:this._receiverSignatureRequired,memo:this._accountMemo,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?this._maxAutomaticTokenAssociations.toInt():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoCreateAccount;return d.default._fromProtobufTransactions(new n({key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,accountMemo:null!=i.memo?i.memo:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations?i.maxAutomaticTokenAssociations:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=v,d.TRANSACTION_REGISTRY.set("cryptoCreateAccount",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(14));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(73)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(14)),u=r(n(29)),c=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._accountId,null!=t.accountId&&this.setAccountId(t.accountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId)}return(0,a.default)(e,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?u.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){return{accountId:null!=this._accountId?this._accountId._toProtobuf():void 0,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():void 0}}}],[{key:"_fromProtobuf",value:function(t){return new e({accountId:null!=t.accountId?i.default._fromProtobuf(t.accountId):void 0,tokenId:null!=t.tokenId?u.default._fromProtobuf(t.tokenId):void 0})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=r(n(14)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(542));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var b=function(e){(0,s.default)(r,e);var t,n=y(r);function r(){return(0,u.default)(this,r),n.call(this,(function(e){return d.default.fromString(e)}))}return(0,c.default)(r,null,[{key:"_fromTransaction",value:(t=(0,i.default)(a.default.mark((function e(t){var n,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=new r,o=0;case 2:if(!(o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._transferAccountId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDelete"}},{key:"_makeTransactionData",value:function(){return{deleteAccountID:null!=this._accountId?this._accountId._toProtobuf():null,transferAccountID:null!=this._transferAccountId?this._transferAccountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDelete;return f.default._fromProtobufTransactions(new n({accountId:null!=i.deleteAccountID?l.default._fromProtobuf(i.deleteAccountID):void 0,transferAccountId:null!=i.transferAccountID?l.default._fromProtobuf(i.transferAccountID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("cryptoDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(25)),u=r(n(29)),c=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.symbol=t.symbol,this.balance=t.balance,this.isKycGranted=t.isKycGranted,this.isFrozen=t.isFrozen,this.automaticAssociation=t.automaticAssociation,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),symbol:this.symbol,balance:this.balance,kycStatus:null==this.isKycGranted?0:this.isKycGranted?1:2,freezeStatus:null==this.isFrozen?0:this.isFrozen?1:2,automaticAssociation:this.automaticAssociation}}}],[{key:"_fromProtobuf",value:function(t){var n=u.default._fromProtobuf(t.tokenId),r=null==t.kycStatus||0===t.kycStatus?null:1===t.kycStatus,o=null==t.freezeStatus||0===t.freezeStatus?null:1===t.freezeStatus;return new e({tokenId:n,symbol:t.symbol,balance:null!=t.balance?t.balance instanceof i.default?t.balance:i.default.fromValue(t.balance):i.default.ZERO,isKycGranted:r,isFrozen:o,automaticAssociation:null!=t.automaticAssociation?t.automaticAssociation:null})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),h=r(n(14)),y=r(n(543)),b=r(n(32));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e}return(0,c.default)(r,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetInfo;return Promise.resolve(y.default._fromProtobuf(r.accountInfo))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetInfo:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetInfo;return new r({accountId:null!=t.accountID?h.default._fromProtobuf(t.accountID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("cryptoGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),f=r(n(14)),d=r(n(295));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountRecords(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetAccountRecords.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetAccountRecords.records;return Promise.resolve(r.map((function(e){return d.default._fromProtobuf({transactionRecord:e})})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetAccountRecords:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetAccountRecords;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetAccountRecords",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),f=r(n(14)),d=r(n(545));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getStakersByAccountID(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetProxyStakers.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetProxyStakers.stakers;return Promise.resolve((null!=t.proxyStaker?t.proxyStaker:[]).map((function(e){return d.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetProxyStakers:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetProxyStakers;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetProxyStakers",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),f=r(n(14)),d=r(n(40)),p=r(n(56)),h=r(n(25)),y=r(n(39));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._key=null,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=null,e._expirationTime=null,e._accountMemo=null,e._maxAutomaticTokenAssociations=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof Date?d.default.fromDate(e):e,this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"clearAccountMemo",value:function(){return this._requireNotFrozen(),this._accountMemo=null,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.updateAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoUpdateAccount"}},{key:"_makeTransactionData",value:function(){return{accountIDToUpdate:null!=this._accountId?this._accountId._toProtobuf():null,key:null!=this._key?this._key._toProtobufKey():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,receiverSigRequiredWrapper:null==this._receiverSignatureRequired?null:{value:this._receiverSignatureRequired},memo:null!=this._accountMemo?{value:this._accountMemo}:null,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?{value:this._maxAutomaticTokenAssociations.toInt()}:null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoUpdateAccount;return l.default._fromProtobufTransactions(new n({accountId:null!=i.accountIDToUpdate?f.default._fromProtobuf(i.accountIDToUpdate):void 0,key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,expirationTime:null!=i.expirationTime?d.default._fromProtobuf(i.expirationTime):void 0,accountMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations&&null!=i.maxAutomaticTokenAssociations.value?h.default.fromNumber(i.maxAutomaticTokenAssociations.value):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=v,l.TRANSACTION_REGISTRY.set("cryptoUpdateAccount",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),f=r(n(55));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractGetBytecode(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractGetBytecodeResponse.header}},{key:"_mapResponse",value:function(e){var t=e.contractGetBytecodeResponse;return Promise.resolve(null!=t.bytecode?t.bytecode:new Uint8Array)}},{key:"_onMakeRequest",value:function(e){return{contractGetBytecode:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetBytecode;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("contractGetBytecode",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),f=r(n(55)),d=r(n(225)),p=r(n(296)),h=r(n(25));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e._gas=null,null!=r.gas&&e.setGas(r.gas),e._functionParameters=null,null!=r.functionParameters&&(r.functionParameters instanceof Uint8Array?e.setFunctionParameters(r.functionParameters):e.setFunction(r.functionParameters.name,r.functionParameters.parameters)),e._maxResultSize=null,null!=r.maxResultSize&&e.setMaxResultSize(r.maxResultSize),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._functionParameters=(null!=t?t:new d.default)._build(e),this}},{key:"setMaxResultSize",value:function(e){return this._maxResultSize=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallLocalMethod(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractCallLocal.header}},{key:"_mapResponse",value:function(e){var t=e.contractCallLocal;return Promise.resolve(p.default._fromProtobuf(t.functionResult))}},{key:"_onMakeRequest",value:function(e){return{contractCallLocal:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,maxResultSize:this._maxResultSize,functionParameters:this._functionParameters}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractCallLocal;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0,gas:null!=t.gas?t.gas:void 0,functionParameters:null!=t.functionParameters?t.functionParameters:void 0,maxResultSize:null!=t.maxResultSize?t.maxResultSize:void 0})}}]),n}(l.default);t.default=m,l.QUERY_REGISTRY.set("contractCallLocal",m._fromProtobuf)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.keccak256=void 0;var r,o="0123456789abcdef".split(""),a=[1,256,65536,16777216],i=[0,8,16,24],u=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],c=function(e){var t,n,r,o,a,i,c,s,l,f,d,p,h,y,b,m,v,g,k,_,w,I,A,T,O,E,P,S,R,D,C,N,B,M,j,x,F,U,L,K,G,z,Q,H,V,q,W,Y,Z,J,X,$,ee,te,ne,re,oe,ae,ie,ue,ce,se,le;for(r=0;r<48;r+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],a=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],c=e[3]^e[13]^e[23]^e[33]^e[43],s=e[4]^e[14]^e[24]^e[34]^e[44],l=e[5]^e[15]^e[25]^e[35]^e[45],f=e[6]^e[16]^e[26]^e[36]^e[46],d=e[7]^e[17]^e[27]^e[37]^e[47],t=(p=e[8]^e[18]^e[28]^e[38]^e[48])^(i<<1|c>>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],b=e[1],q=e[11]<<4|e[10]>>>28,W=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,m=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,g=e[25]<<11|e[24]>>>21,k=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,E=e[18]<<20|e[19]>>>12,P=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,K=e[38]<<8|e[39]>>>24,G=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~m&g,e[1]=b^~v&k,e[10]=T^~E&S,e[11]=O^~P&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~q&Y,e[31]=V^~W&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=m^~g&_,e[3]=v^~k&w,e[12]=E^~S&D,e[13]=P^~R&C,e[22]=x^~U&K,e[23]=F^~L&G,e[32]=q^~Y&J,e[33]=W^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=g^~_&I,e[5]=k^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~K&z,e[25]=L^~G&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&b,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=K^~z&M,e[27]=G^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&m,e[9]=A^~b&v,e[18]=N^~T&E,e[19]=B^~O&P,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&q,e[39]=ee^~V&W,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];m%f==0&&(c(p),n=0)}return"0x"+b}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=r(n(14)),d=r(n(57)),p=r(n(225)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),y=r(n(25)),b=r(n(56)),m=r(n(39));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._bytecodeFileId=null,e._adminKey=null,e._gas=null,e._initialBalance=null,e._proxyAccountId=null,e._autoRenewPeriod=new b.default(h.DEFAULT_AUTO_RENEW_PERIOD),e._constructorParameters=null,e._contractMemo=null,e.setMaxTransactionFee(new l.default(20)),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.gas&&e.setGas(r.gas),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.constructorParameters&&e.setConstructorParameters(r.constructorParameters),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof y.default?e:y.default.fromValue(e),this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof b.default?e:new b.default(e),this}},{key:"constructorParameters",get:function(){return this._constructorParameters}},{key:"setConstructorParameters",value:function(e){return this._requireNotFrozen(),this._constructorParameters=e instanceof p.default?e._build():e,this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"_validateChecksums",value:function(e){null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.createContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCreateInstance"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,gas:this._gas,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),constructorParameters:this._constructorParameters,memo:this._contractMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCreateInstance;return h.default._fromProtobufTransactions(new n({bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,adminKey:null!=i.adminKey?m.default._fromProtobufKey(i.adminKey):void 0,gas:null!=i.gas?i.gas:void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,constructorParameters:null!=i.constructorParameters?i.constructorParameters:void 0,contractMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(h.default);t.default=k,h.TRANSACTION_REGISTRY.set("contractCreateInstance",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),f=r(n(55)),d=r(n(14));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._transferAccountId=null,e._transferContractId=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),null!=r.transferContractId&&e.setTransferContractId(r.transferContractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"transferContractId",get:function(){return this._transferContractId}},{key:"setTransferContractId",value:function(e){return this._requireNotFrozen(),this._transferContractId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e),null!=this._transferContractId&&this._transferContractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.deleteContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractDeleteInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,transferAccountID:this._transferAccountId?this._transferAccountId._toProtobuf():null,transferContractID:null!=this._transferContractId?this._transferContractId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractDeleteInstance;return l.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,transferAccountId:null!=i.transferAccountID?d.default._fromProtobuf(i.transferAccountID):void 0,transferContractId:null!=i.transferContractID?f.default._fromProtobuf(i.transferContractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("contractDeleteInstance",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),d=r(n(55)),p=r(n(225)),h=r(n(25));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._gas=null,e._amount=null,e._functionParameters=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.gas&&e.setGas(r.gas),null!=r.amount&&e.setPayableAmount(r.amount),null!=r.functionParameters?e.setFunctionParameters(r.functionParameters):null!=r.function&&e.setFunction(r.function.name,r.function.parameters),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"payableAmount",get:function(){return this._amount}},{key:"setPayableAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof l.default?e:new l.default(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._requireNotFrozen(),this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._requireNotFrozen(),this._functionParameters=null!=t?t._build(e):(new p.default)._build(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallMethod(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCall"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,amount:null!=this._amount?this._amount.toTinybars():null,functionParameters:this._functionParameters}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCall;return f.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,gas:null!=i.gas?i.gas:void 0,amount:i.amount?i.amount:void 0,functionParameters:null!=i.functionParameters?i.functionParameters:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("contractCall",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),h=r(n(55)),y=r(n(547)),b=r(n(32));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._contractId=null,null!=t.contractId&&e.setContractId(t.contractId),e}return(0,c.default)(r,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.getContractInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.contractGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.contractGetInfo;return Promise.resolve(y.default._fromProtobuf(r.contractInfo))}},{key:"_onMakeRequest",value:function(e){return{contractGetInfo:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetInfo;return new r({contractId:null!=t.contractID?h.default._fromProtobuf(t.contractID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("contractGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(14)),f=r(n(55)),d=r(n(57)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),h=r(n(56)),y=r(n(40)),b=r(n(39));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._expirationTime=null,e._adminKey=null,e._proxyAccountId=null,e._autoRenewPeriod=null,e._bytecodeFileId=null,e._contractMemo=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return console.warn("Deprecated: there is no replacement"),this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"clearContractMemo",value:function(){return this._requireNotFrozen(),this._contractMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.updateContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractUpdateInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,fileID:this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,memoWrapper:null!=this._contractMemo?{value:this._contractMemo}:null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractUpdateInstance,u=void 0;null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds&&(u=i.autoRenewPeriod.seconds);var c=void 0;return null!=i.memoWrapper&&null!=i.memoWrapper.value&&(c=i.memoWrapper.value),p.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,expirationTime:null!=i.expirationTime?y.default._fromProtobuf(i.expirationTime):void 0,adminKey:null!=i.adminKey?b.default._fromProtobufKey(i.adminKey):void 0,proxyAccountId:null!=i.proxyAccountID?l.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:u,contractMemo:c}),e,t,r,o,a)}}]),n}(p.default);t.default=g,p.TRANSACTION_REGISTRY.set("contractUpdateInstance",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(87)),l=r(n(20)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(32)),y=_(n(21)),b=_(n(95)),m=r(n(57)),v=r(n(67)),g=r(n(40));function k(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(k=function(e){return e?n:t})(e)}function _(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=k(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function w(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return I(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return I(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._fileId=null,e._contents=null,e._maxChunks=20,e.setMaxTransactionFee(new h.default(5)),null!=t.fileId&&e.setFileId(t.fileId),null!=t.contents&&e.setContents(t.contents),null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),e._startIndex=0,e._transactionIds=[],e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`FileAppendTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds=[e],this}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?m.default.fromString(e):e.clone(),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:b.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"freezeWith",value:function(e){if((0,l.default)((0,p.default)(o.prototype),"freezeWith",this).call(this,e),null==this._contents)return this;var t=Math.floor((this._contents.length+(y.CHUNK_SIZE-1))/y.CHUNK_SIZE);if(t>this._maxChunks)throw new Error("Contents with size ".concat(this._contents.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId;(0,s.default)((0,p.default)(o.prototype),"_transactions",[],this,!0),(0,s.default)((0,p.default)(o.prototype),"_transactionIds",[],this,!0),(0,s.default)((0,p.default)(o.prototype),"_signedTransactions",[],this,!0),(0,s.default)((0,p.default)(o.prototype),"_nextTransactionIndex",0,this,!0);for(var r=0;ry.CHUNK_SIZE)throw new Error("cannot scheduled `FileAppendTransaction` with message over ".concat(y.CHUNK_SIZE," bytes"));return(0,l.default)((0,p.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,l.default)((0,p.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),n=this.transactionId,null==(r=t.operatorAccountId)||!r.equals(n.accountId)){e.next=6;break}return e.next=6,(0,l.default)((0,p.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:i=[],u=0;case 8:if(!(ue&&(t=e),{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contents:null!=this._contents?this._contents.slice(this._startIndex,t):null}}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){for(var i,u=a[0].fileAppend,c=0;c0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileContent(t)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_mapResponseHeader",value:function(e){return e.fileGetContents.header}},{key:"_mapResponse",value:function(e){var t=e.fileGetContents.fileContents.contents;return Promise.resolve(t)}},{key:"_onMakeRequest",value:function(e){return{fileGetContents:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetContents;return new n({fileId:null!=t.fileID?f.default._fromProtobuf(t.fileID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("fileGetContents",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=m(n(21)),d=m(n(95)),p=r(n(40)),h=r(n(39)),y=r(n(129));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._keys=null,e._expirationTime=p.default.fromDate(Date.now()+1e3*f.DEFAULT_AUTO_RENEW_PERIOD.toInt()),e._contents=null,e._fileMemo=null,e.setMaxTransactionFee(new l.default(5)),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"_execute",value:function(e,t){return e.file.createFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileCreate"}},{key:"_makeTransactionData",value:function(){return{keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:this._expirationTime._toProtobuf(),contents:this._contents,memo:this._fileMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileCreate;return f.default._fromProtobufTransactions(new n({keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=g,f.TRANSACTION_REGISTRY.set("fileCreate",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),f=r(n(57));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.deleteFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("fileDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),h=r(n(57)),y=r(n(548)),b=r(n(32));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._fileId=null,null!=t.fileId&&e.setFileId(t.fileId),e}return(0,c.default)(r,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.fileGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.fileGetInfo;return Promise.resolve(y.default._fromProtobuf(r.fileInfo))}},{key:"_onMakeRequest",value:function(e){return{fileGetInfo:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetInfo;return new r({fileId:null!=t.fileID?h.default._fromProtobuf(t.fileID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("fileGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=m(n(21)),f=r(n(40)),d=m(n(95)),p=r(n(57)),h=r(n(39)),y=r(n(129));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._keys=null,e._expirationTime=null,e._contents=null,e._fileMemo=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof f.default?e:f.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"clearFileMemo",value:function(){return this._requireNotFrozen(),this._fileMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.updateFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileUpdate"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,contents:this._contents,memo:null!=this._fileMemo?{value:this._fileMemo}:null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileUpdate;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?p.default._fromProtobuf(i.fileID):void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?f.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=g,l.TRANSACTION_REGISTRY.set("fileUpdate",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=b(n(21)),f=r(n(40)),d=r(n(57)),p=b(n(83)),h=r(n(1119));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._startTime=null,e._startTimestamp=null,e._endTime=null,e._fileId=null,e._fileHash=null,e._freezeType=null,null!=r.startTime&&e.setStartTime(r.startTime.hour,r.startTime.minute),null!=r.endTime&&e.setEndTime(r.endTime.hour,r.endTime.minute),null!=r.startTimestamp&&e.setStartTimestamp(r.startTimestamp),null!=r.updateFileId&&e.setUpdateFileId(r.updateFileId),null!=r.fileId&&e.setFileId(r.fileId),null!=r.fileHash&&e.setFileHash(r.fileHash),null!=r.freezeType&&e.setFreezeType(r.freezeType),e}return(0,i.default)(n,[{key:"startTime",get:function(){return null}},{key:"setStartTime",value:function(e,t){if(this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._startTime={hour:Number(n[0]),minute:Number(n[1])}}else this._startTime={hour:e,minute:t};return this}},{key:"startTimestamp",get:function(){return this._startTimestamp}},{key:"setStartTimestamp",value:function(e){return this._requireNotFrozen(),this._startTimestamp=e,this}},{key:"endTime",get:function(){return console.warn("`FreezeTransaction.endTime` is deprecated"),this._endTime}},{key:"setEndTime",value:function(e,t){if(console.warn("`FreezeTransaction.endTime` is deprecated"),this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._endTime={hour:Number(n[0]),minute:Number(n[1])}}else this._endTime={hour:e,minute:t};return this}},{key:"updateFileId",get:function(){return this.fileId}},{key:"setUpdateFileId",value:function(e){return this.setFileId(e)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e,this}},{key:"fileHash",get:function(){return this._fileHash}},{key:"setFileHash",value:function(e){return this._requireNotFrozen(),this._fileHash="string"==typeof e?p.decode(e):e,this}},{key:"freezeType",get:function(){return this._freezeType}},{key:"setFreezeType",value:function(e){return this._requireNotFrozen(),this._freezeType=e,this}},{key:"_getTransactionDataCase",value:function(){return"freeze"}},{key:"_makeTransactionData",value:function(){return{startTime:null!=this._startTimestamp?this._startTimestamp._toProtobuf():null,updateFile:null!=this._fileId?this._fileId._toProtobuf():null,fileHash:this._fileHash,freezeType:null!=this._freezeType?this._freezeType.valueOf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].freeze;return l.default._fromProtobufTransactions(new n({startTime:null!=i.startHour&&null!=i.startMin?{hour:i.startHour,minute:i.startMin}:void 0,endTime:null!=i.endHour&&null!=i.endMin?{hour:i.endHour,minute:i.endMin}:void 0,startTimestamp:null!=i.startTime?f.default._fromProtobuf(i.startTime):void 0,updateFileId:null!=i.updateFile?d.default._fromProtobuf(i.updateFile):void 0,fileHash:null!=i.fileHash?i.fileHash:void 0,freezeType:null!=i.freezeType?h.default._fromCode(i.freezeType):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=v,l.TRANSACTION_REGISTRY.set("freeze",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.UnknownFreezeType:return"UNKNOWN_FREEZE_TYPE";case e.FreezeOnly:return"FREEZE_ONLY";case e.PrepareUpgrade:return"PREPARE_UPGRADE";case e.FreezeUpgrade:return"FREEZE_UPGRADE";case e.FreezeAbort:return"FREEZE_ABORT";case e.TelemetryUpgrade:return"TELEMETRY_UPGRADE";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromCode",value:function(t){switch(t){case 0:return e.UnknownFreezeType;case 1:return e.FreezeOnly;case 2:return e.PrepareUpgrade;case 3:return e.FreezeUpgrade;case 4:return e.FreezeAbort;case 5:return e.TelemetryUpgrade;default:throw new Error("(BUG) Status.fromCode() does not handle code: ".concat(t))}}}]),e}();t.default=i,i.UnknownFreezeType=new i(0),i.FreezeOnly=new i(1),i.PrepareUpgrade=new i(2),i.FreezeUpgrade=new i(3),i.FreezeAbort=new i(4),i.TelemetryUpgrade=new i(5)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),f=r(n(14)),d=r(n(56)),p=r(n(39)),h=r(n(129));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._keys=null,e._duration=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.keys&&e.setKeys(r.keys),null!=r.duration&&e.setDuration(r.duration),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){return this._requireNotFrozen(),this._keys=e instanceof h.default?e.toArray():e,this}},{key:"duration",get:function(){return this._duration}},{key:"setDuration",value:function(e){return this._requireNotFrozen(),this._duration=e instanceof d.default?e:new d.default(e),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.addLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAddLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHash:{hash:this._hash,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:void 0,duration:null!=this._duration?this._duration._toProtobuf():null,accountId:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAddLiveHash.liveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.hash?i.hash:void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return p.default._fromProtobufKey(e)})):void 0,duration:null!=i.duration&&null!=i.duration.seconds?i.duration.seconds:void 0,accountId:null!=i.accountId?f.default._fromProtobuf(i.accountId):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=m,l.TRANSACTION_REGISTRY.set("cryptoAddLiveHash",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),f=r(n(14));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.deleteLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDeleteLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHashToDelete:this._hash,accountOfLiveHash:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDeleteLiveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.liveHashToDelete?i.liveHashToDelete:void 0,accountId:null!=i.accountOfLiveHash?f.default._fromProtobuf(i.accountOfLiveHash):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("cryptoDeleteLiveHash",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),f=r(n(14)),d=r(n(297));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e._hash=null,null!=r.hash&&e.setHash(r.hash),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"liveHash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._hash=e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getLiveHash(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetLiveHash.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetLiveHash;return Promise.resolve(d.default._fromProtobuf(t.liveHash))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetLiveHash:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,hash:this._hash}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetLiveHash;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,hash:null!=t.hash?t.hash:void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetLiveHash",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),f=r(n(549));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){return(0,a.default)(this,n),t.call(this)}return(0,i.default)(n,[{key:"_execute",value:function(e,t){return e.network.getVersionInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.networkGetVersionInfo.header}},{key:"_mapResponse",value:function(e){var t=e.networkGetVersionInfo;return Promise.resolve(f.default._fromProtobuf(t))}},{key:"_onMakeRequest",value:function(e){return{networkGetVersionInfo:{header:e}}}}],[{key:"_fromProtobuf",value:function(e){return new n}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("networkGetVersionInfo",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(14)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),d=r(n(39));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._scheduledTransaction=null,e._payerAccountId=null,e._scheduleMemo=null,e._scheduledSignerPublicKeys=new Set,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.payerAccountID&&e.setPayerAccountId(r.payerAccountID),null!=r.scheduleMemo&&e.setScheduleMemo(r.scheduleMemo),e}return(0,i.default)(n,[{key:"_setScheduledTransaction",value:function(e){return this._scheduledTransaction=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"payerAccountId",get:function(){return this._payerAccountId}},{key:"setPayerAccountId",value:function(e){return this._requireNotFrozen(),this._payerAccountId=e,this}},{key:"setScheduleMemo",value:function(e){return this._requireNotFrozen(),this._scheduleMemo=e,this}},{key:"getScheduleMemo",get:function(){return this._requireNotFrozen(),this._scheduleMemo}},{key:"setScheduledTransaction",value:function(e){return this._requireNotFrozen(),e._requireNotFrozen(),this._scheduledTransaction=e.schedule()._scheduledTransaction,this}},{key:"_validateChecksums",value:function(e){null!=this._payerAccountId&&this._payerAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.createSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleCreate"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,payerAccountID:null!=this._payerAccountId?this._payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this._scheduledTransaction?this._scheduledTransaction._getScheduledTransactionBody():null,memo:this._scheduleMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleCreate;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?d.default._fromProtobufKey(i.adminKey):void 0,payerAccountID:null!=i.payerAccountID?l.default._fromProtobuf(i.payerAccountID):void 0,scheduleMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("scheduleCreate",y._fromProtobuf),f.SCHEDULE_CREATE_TRANSACTION.push((function(){return new y}))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(132)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.deleteSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleDelete"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleDelete;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("scheduleDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),h=r(n(132)),y=r(n(551)),b=r(n(32));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._scheduleId=null,null!=t.scheduleId&&e.setScheduleId(t.scheduleId),e}return(0,c.default)(r,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._scheduleId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.getScheduleInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.scheduleGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.scheduleGetInfo;return Promise.resolve(y.default._fromProtobuf(r.scheduleInfo))}},{key:"_onMakeRequest",value:function(e){return{scheduleGetInfo:{header:e,scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.scheduleGetInfo;return new r({scheduleId:null!=t.scheduleID?h.default._fromProtobuf(t.scheduleID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("scheduleGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(132)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.signSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleSign"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleSign;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("scheduleSign",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),f=r(n(57)),d=r(n(55)),p=r(n(40));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,e._expirationTime=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e,this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemDelete(t):e.smartContract.systemDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=b,l.TRANSACTION_REGISTRY.set("systemDelete",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),f=r(n(57)),d=r(n(55));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemUndelete(t):e.smartContract.systemUndelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemUndelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemUndelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("systemUndelete",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=r(n(29)),d=r(n(14)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e.setMaxTransactionFee(new l.default(5)),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.associateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenAssociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenAssociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenAssociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),d=r(n(25));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._serials=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return e instanceof d.default?e:d.default.fromValue(e)})),this}},{key:"_execute",value:function(e,t){return e.token.burnToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenBurn"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,serialNumbers:this._serials,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenBurn;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,serials:null!=i.serialNumbers?i.serialNumbers:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("tokenBurn",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(20)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=r(n(32)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),p=r(n(25)),h=r(n(14)),y=r(n(40)),b=r(n(56)),m=r(n(178)),v=r(n(228)),g=r(n(227)),k=r(n(298)),_=r(n(299)),w=r(n(39));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var T=function(e){(0,c.default)(n,e);var t=A(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenName=null,e._tokenSymbol=null,e._decimals=null,e._initialSupply=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._pauseKey=null,e._wipeKey=null,e._supplyKey=null,e._feeScheduleKey=null,e._freezeDefault=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=new b.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._tokenMemo=null,e._customFees=[],e._tokenType=null,e._supplyType=null,e._maxSupply=null,e.setMaxTransactionFee(new f.default(30)),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.decimals&&e.setDecimals(r.decimals),null!=r.initialSupply&&e.setInitialSupply(r.initialSupply),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.freezeDefault&&e.setFreezeDefault(r.freezeDefault),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.customFees&&e.setCustomFees(r.customFees),null!=r.tokenType&&e.setTokenType(r.tokenType),null!=r.supplyType&&e.setSupplyType(r.supplyType),null!=r.maxSupply&&e.setMaxSupply(r.maxSupply),e}return(0,i.default)(n,[{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"decimals",get:function(){return this._decimals}},{key:"setDecimals",value:function(e){return this._requireNotFrozen(),this._decimals=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"initialSupply",get:function(){return this._initialSupply}},{key:"setInitialSupply",value:function(e){return this._requireNotFrozen(),this._initialSupply=p.default.fromValue(e),this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"freezeDefault",get:function(){return this._freezeDefault}},{key:"setFreezeDefault",value:function(e){return this._requireNotFrozen(),this._freezeDefault=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=null,this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof h.default?e:h.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof b.default?e:new b.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._customFees=e,this}},{key:"tokenType",get:function(){return this._tokenType}},{key:"setTokenType",value:function(e){return this._tokenType=e,this}},{key:"supplyType",get:function(){return this._supplyType}},{key:"setSupplyType",value:function(e){return this._supplyType=e,this}},{key:"maxSupply",get:function(){return this._maxSupply}},{key:"setMaxSupply",value:function(e){return this._maxSupply="number"==typeof e?p.default.fromNumber(e):e,this}},{key:"freezeWith",value:function(e){return null!=this._autoRenewPeriod&&null!=e&&e.operatorAccountId&&(this._autoRenewAccountId=e.operatorAccountId),(0,u.default)((0,l.default)(n.prototype),"freezeWith",this).call(this,e)}},{key:"_validateChecksums",value:function(e){null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.createToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenCreation"}},{key:"_makeTransactionData",value:function(){return{name:this._tokenName,symbol:this._tokenSymbol,decimals:null!=this._decimals?this._decimals.toInt():null,initialSupply:this._initialSupply,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,pauseKey:null!=this._pauseKey?this._pauseKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null,freezeDefault:this._freezeDefault,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:this._tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this._tokenType?this._tokenType._code:null,supplyType:null!=this._supplyType?this._supplyType._code:null,maxSupply:this.maxSupply}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenCreation;return d.default._fromProtobufTransactions(new n({tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,decimals:null!=i.decimals?i.decimals:void 0,initialSupply:null!=i.initialSupply?i.initialSupply:void 0,treasuryAccountId:null!=i.treasury?h.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?w.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?w.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?w.default._fromProtobufKey(i.freezeKey):void 0,pauseKey:null!=i.pauseKey?w.default._fromProtobufKey(i.pauseKey):void 0,wipeKey:null!=i.wipeKey?w.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?w.default._fromProtobufKey(i.supplyKey):void 0,feeScheduleKey:null!=i.feeScheduleKey?w.default._fromProtobufKey(i.feeScheduleKey):void 0,freezeDefault:null!=i.freezeDefault?i.freezeDefault:void 0,autoRenewAccountId:null!=i.autoRenewAccount?h.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?y.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?b.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo?i.memo:void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?m.default._fromProtobuf(e):null!=e.fractionalFee?v.default._fromProtobuf(e):g.default._fromProtobuf(e)})):void 0,tokenType:null!=i.tokenType?k.default._fromCode(i.tokenType):void 0,supplyType:null!=i.supplyType?_.default._fromCode(i.supplyType):void 0,maxSupply:null!=i.maxSupply?i.maxSupply:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=T,d.TRANSACTION_REGISTRY.set("tokenCreation",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.deleteToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDeletion"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDeletion;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenDeletion",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=r(n(29)),d=r(n(14)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e.setMaxTransactionFee(new l.default(5)),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.dissociateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDissociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDissociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenDissociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),d=r(n(178)),p=r(n(228)),h=r(n(227));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._customFees=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.customFees&&e.setCustomFees(r.customFees),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):l.default._fromProtobuf(e._toProtobuf()),this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._requireNotFrozen(),this._customFees=e,this}},{key:"_execute",value:function(e,t){return e.token.updateTokenFeeSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFeeScheduleUpdate"}},{key:"_makeTransactionData",value:function(){return{tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,customFees:this._customFees.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFeeScheduleUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.tokenId?l.default._fromProtobuf(i.tokenId):void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?d.default._fromProtobuf(e):null!=e.fractionalFee?p.default._fromProtobuf(e):h.default._fromProtobuf(e)})):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("tokenFeeScheduleUpdate",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.freezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenFreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.pauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenPause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenPause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenPause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.grantKycToTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenGrantKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenGrantKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenGrantKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),h=r(n(29)),y=r(n(552)),b=r(n(32));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e}return(0,c.default)(r,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.getTokenInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.tokenGetInfo;return Promise.resolve(y.default._fromProtobuf(r.tokenInfo))}},{key:"_onMakeRequest",value:function(e){return{tokenGetInfo:{header:e,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.tokenGetInfo;return new r({tokenId:null!=t.token?h.default._fromProtobuf(t.token):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("tokenGetInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=y(n(21)),d=r(n(25)),p=y(n(83));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._metadata=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.metadata&&e.setMetadata(r.metadata),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"metadata",get:function(){return this._metadata}},{key:"addMetadata",value:function(e){return this._requireNotFrozen(),"string"==typeof e&&console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead."),this._metadata.push("string"==typeof e?p.decode(e):e),this}},{key:"setMetadata",value:function(e){this._requireNotFrozen();var t,n=b(e);try{for(n.s();!(t=n.n()).done;){if("string"==typeof t.value){console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead.");break}}}catch(e){n.e(e)}finally{n.f()}return this._metadata=e.map((function(e){return"string"==typeof e?p.decode(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.mintToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenMint"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,metadata:this._metadata}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenMint;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,metadata:null!=i.metadata?i.metadata:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=g,f.TRANSACTION_REGISTRY.set("tokenMint",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=k(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),h=r(n(229)),y=r(n(14)),b=r(n(29)),m=r(n(553)),v=r(n(32)),g=r(n(25));function k(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(k=function(e){return e?n:t})(e)}function _(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var w=function(e){(0,l.default)(r,e);var t,n=_(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._nftId=null,null!=t.nftId&&e.setNftId(t.nftId),e._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e._start=null,null!=t.start&&e.setStart(t.start),e._end=null,null!=t.end&&e.setEnd(t.end),e}return(0,c.default)(r,[{key:"nftId",get:function(){return this._nftId}},{key:"setNftId",value:function(e){return this._nftId="string"==typeof e?h.default.fromString(e):h.default._fromProtobuf(e._toProtobuf()),this}},{key:"accountId",get:function(){return console.warn("`TokenNftInfoQuery.accountId` is deprecated with no replacement"),this._accountId}},{key:"setAccountId",value:function(e){return console.warn("`TokenNftInfoQuery.setAccountId()` is deprecated with no replacement"),this._accountId="string"==typeof e?y.default.fromString(e):y.default._fromProtobuf(e._toProtobuf()),this}},{key:"tokenId",get:function(){return console.warn("`TokenNftInfoQuery.tokenId` is deprecated with no replacement"),this._tokenId}},{key:"setTokenId",value:function(e){return console.warn("`TokenNftInfoQuery.setTokenId()` is deprecated with no replacement"),this._tokenId="string"==typeof e?b.default.fromString(e):b.default._fromProtobuf(e._toProtobuf()),this}},{key:"start",get:function(){return console.warn("`TokenNftInfoQuery.start` is deprecated with no replacement"),this._start}},{key:"setStart",value:function(e){return console.warn("`TokenNftInfoQuery.setStart()` is deprecated with no replacement"),this._start="number"==typeof e?g.default.fromNumber(e):e,this}},{key:"end",get:function(){return console.warn("`TokenNftInfoQuery.end` is deprecated with no replacement"),this._end}},{key:"setEnd",value:function(e){return console.warn("`TokenNftInfoQuery.setEnd()` is deprecated with no replacement"),this._end="number"==typeof e?g.default.fromNumber(e):e,this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",v.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_execute",value:function(e,t){return e.token.getTokenNftInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetNftInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=[e.tokenGetNftInfo.nft];return Promise.resolve(r.map((function(e){return m.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{tokenGetNftInfo:{header:e,nftID:null!=this._nftId?this._nftId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){if(null!=e.tokenGetNftInfo){var t=e.tokenGetNftInfo;return new r({nftId:null!=t.nftID?h.default._fromProtobuf(t.nftID):void 0})}if(null!=e.tokenGetAccountNftInfos){var n=e.tokenGetAccountNftInfos;return new r({accountId:null!=n.accountID?y.default._fromProtobuf(n.accountID):void 0,start:null!=n.start?n.start:void 0,end:null!=n.end?n.end:void 0})}var o=e.tokenGetNftInfos;return new r({tokenId:null!=o.tokenID?b.default._fromProtobuf(o.tokenID):void 0,start:null!=o.start?o.start:void 0,end:null!=o.end?o.end:void 0})}}]),r}(p.default);t.default=w,p.QUERY_REGISTRY.set("tokenGetNftInfo",w._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.revokeKycFromTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenRevokeKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenRevokeKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenRevokeKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unfreezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnfreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnfreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenUnfreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unpauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnpause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnpause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenUnpause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),d=r(n(14)),p=r(n(40)),h=r(n(56)),y=r(n(39));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._tokenName=null,e._tokenSymbol=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._wipeKey=null,e._supplyKey=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=null,e._tokenMemo=null,e._feeScheduleKey=null,e._pauseKey=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"setsupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"clearTokenMemo",value:function(){return this._requireNotFrozen(),this._tokenMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.updateToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUpdate"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,name:this.tokenName,symbol:this.tokenSymbol,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:null!=this._tokenMemo?{value:this._tokenMemo}:null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,treasuryAccountId:null!=i.treasury?d.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?y.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?y.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?y.default._fromProtobufKey(i.freezeKey):void 0,wipeKey:null!=i.wipeKey?y.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?y.default._fromProtobufKey(i.supplyKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?d.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?p.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?h.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,feeScheduleKey:null!=i.feeScheduleKey?y.default._fromProtobufKey(i.feeScheduleKey):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=v,f.TRANSACTION_REGISTRY.set("tokenUpdate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),p=r(n(25));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,e._serials=[],e._amount=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return"number"==typeof e?p.default.fromNumber(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.wipeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenWipe"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null,serialNumbers:this.serials}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenWipe;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0,amount:null!=i.amount?i.amount:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=b,d.TRANSACTION_REGISTRY.set("tokenWipe",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(14)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),d=r(n(56)),p=r(n(39));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._submitKey=null,e._autoRenewAccountId=null,e._autoRenewPeriod=new d.default(f.DEFAULT_AUTO_RENEW_PERIOD),e._topicMemo=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.submitKey&&e.setSubmitKey(r.submitKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e}return(0,i.default)(n,[{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof l.default?e:l.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof d.default?e:new d.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.createTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusCreateTopic"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),memo:this._topicMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusCreateTopic;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?p.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?p.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?l.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=b,f.TRANSACTION_REGISTRY.set("consensusCreateTopic",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),f=r(n(106));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.deleteTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusDeleteTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusDeleteTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?f.default._fromProtobuf(i.topicID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("consensusDeleteTopic",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(20)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(45)),h=r(n(106)),y=r(n(554)),b=r(n(32));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var g=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e}return(0,c.default)(r,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._topicId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",b.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.getTopicInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.consensusGetTopicInfo.header}},{key:"_mapResponse",value:function(e,t,n){return Promise.resolve(y.default._fromProtobuf(e.consensusGetTopicInfo))}},{key:"_onMakeRequest",value:function(e){return{consensusGetTopicInfo:{header:e,topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.consensusGetTopicInfo;return new r({topicId:null!=t.topicID?h.default._fromProtobuf(t.topicID):void 0})}}]),r}(p.default);t.default=g,p.QUERY_REGISTRY.set("consensusGetTopicInfo",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(67)),c=r(n(1151)),s=r(n(555)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(34)),f=r(n(106)),d=r(n(25)),p=r(n(40)),h=n(158);function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var b=function(){function e(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._topicId=null,null!=n.topicId&&this.setTopicId(n.topicId),this._startTime=null,null!=n.startTime&&this.setStartTime(n.startTime),this._endTime=null,null!=n.endTime&&this.setEndTime(n.endTime),this._limit=null,null!=n.limit&&this.setLimit(n.limit),this._errorHandler=function(e,n){console.error("Error attempting to subscribe to topic: ".concat(null!=t._topicId?t._topicId.toString():""))},null!=n.errorHandler&&(this._errorHandler=n.errorHandler),this._listener=null,this._completionHandler=function(){console.log("Subscription to topic ".concat(null!=t._topicId?t._topicId.toString():""," complete"))},null!=n.completionHandler&&(this._completionHandler=n.completionHandler),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return h.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},null!=n.retryHandler&&(this._retryHandler=n.retryHandler),this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0,this._handle=null}return(0,i.default)(e,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this.requireNotSubscribed(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"startTime",get:function(){return this._startTime}},{key:"setStartTime",value:function(e){return this.requireNotSubscribed(),this._startTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"endTime",get:function(){return this._endTime}},{key:"setEndTime",value:function(e){return this.requireNotSubscribed(),this._endTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this.requireNotSubscribed(),this._limit=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"setErrorHandler",value:function(e){return this._errorHandler=e,this}},{key:"setCompletionHandler",value:function(e){return this.requireNotSubscribed(),this._completionHandler=e,this}},{key:"setMaxAttempts",value:function(e){this.requireNotSubscribed(),this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this.requireNotSubscribed(),this._maxBackoff=e}},{key:"subscribe",value:function(e,t,n){return this._handle=new c.default,this._listener=n,null!=t&&(this._errorHandler=t),this._makeServerStreamRequest(e),this._handle}},{key:"_makeServerStreamRequest",value:function(e){var t=this,n=new Map,r=l.ConsensusTopicQuery.encode({topicID:null!=this._topicId?this._topicId._toProtobuf():null,consensusStartTime:null!=this._startTime?this._startTime._toProtobuf():null,consensusEndTime:null!=this._endTime?this._endTime._toProtobuf():null,limit:this._limit}).finish(),o=e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest(r,(function(e){var r=l.ConsensusTopicResponse.decode(e);if(null!=t._limit&&t._limit.gt(0)&&(t._limit=t._limit.sub(1)),t._startTime=p.default._fromProtobuf(r.consensusTimestamp).plusNanos(1),null==r.chunkInfo||null!=r.chunkInfo&&1===r.chunkInfo.total)t._passTopicMessage(s.default._ofSingle(r));else{var o=r.chunkInfo,a=o.initialTransactionID,i=o.total,c=u.default._fromProtobuf(a).toString(),f=[],d=n.get(c);if(null==d?n.set(c,f):f=d,f.push(r),f.length===i){var h=s.default._ofMany(f);n.delete(c),t._passTopicMessage(h)}}}),(function(n){var r=n instanceof Error?n.message:n.details;if(t._attempt=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e._message=null,null!=t.message&&e.setMessage(t.message),e._maxChunks=20,null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),e._chunkInfo=null,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`TopicMessageSubmitTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds=[e],this}},{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?y.default.fromString(e):e.clone(),this}},{key:"message",get:function(){return this._message}},{key:"setMessage",value:function(e){return this._requireNotFrozen(),e=g.requireStringOrUint8Array(e),this._message="string"==typeof e?b.encode(e):e,this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"freezeWith",value:function(e){if((0,l.default)((0,p.default)(o.prototype),"freezeWith",this).call(this,e),null==this._message)return this;var t=Math.floor((this._message.length+(h.CHUNK_SIZE-1))/h.CHUNK_SIZE);if(t>this._maxChunks)throw new Error("Message with size ".concat(this._message.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId._toProtobuf(),r=this.transactionId;(0,s.default)((0,p.default)(o.prototype),"_transactions",[],this,!0),(0,s.default)((0,p.default)(o.prototype),"_transactionIds",[],this,!0),(0,s.default)((0,p.default)(o.prototype),"_signedTransactions",[],this,!0),(0,s.default)((0,p.default)(o.prototype),"_nextTransactionIndex",0,this,!0);for(var a=0;ah.CHUNK_SIZE)throw new Error("cannot scheduled `TopicMessageSubmitTransaction` with message over ".concat(h.CHUNK_SIZE," bytes"));return(0,l.default)((0,p.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,i,u;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,l.default)((0,p.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),n=this.transactionId,null==(r=t.operatorAccountId)||!r.equals(n.accountId)){e.next=6;break}return e.next=6,(0,l.default)((0,p.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:i=[],u=0;case 8:if(!(uthis._message.length&&(t=this._message.length),{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message.slice(e,t),chunkInfo:this._chunkInfo}}return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message}}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){var i=a[0].consensusSubmitMessage;return h.default._fromProtobufTransactions(new o({topicId:null!=i.topicID?y.default._fromProtobuf(i.topicID):void 0,message:null!=i.message?i.message:void 0}),e,t,n,r,a)}}]),o}(h.default);t.default=T,h.TRANSACTION_REGISTRY.set("consensusSubmitMessage",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(21)),f=r(n(14)),d=r(n(106)),p=r(n(56)),h=r(n(39));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e._topicMemo=null,null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e._submitKey=null,null!=r.submitKey&&e.setSubmitKey(r.submitKey),e._adminKey=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),e._autoRenewAccountId=null,null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),e._autoRenewPeriod=null,null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"clearTopicId",value:function(){return this._requireNotFrozen(),this._topicId=null,this}},{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"clearTopicMemo",value:function(){return this._requireNotFrozen(),this._topicMemo=null,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"clearAdminKey",value:function(){return this._requireNotFrozen(),this._adminKey=null,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"clearSubmitKey",value:function(){return this._requireNotFrozen(),this._submitKey=null,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"clearAutoRenewAccountId",value:function(){return this._requireNotFrozen(),this._autoRenewAccountId=null,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.updateTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusUpdateTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,memo:null!=this._topicMemo?{value:this._topicMemo}:null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusUpdateTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?d.default._fromProtobuf(i.topicID):void 0,adminKey:null!=i.adminKey?h.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?h.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?f.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=m,l.TRANSACTION_REGISTRY.set("consensusUpdateTopic",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=r(n(32)),d=r(n(29)),p=r(n(14)),h=I(n(21)),y=r(n(25)),b=r(n(1155)),m=r(n(539)),v=r(n(1156)),g=r(n(540)),k=I(n(176)),_=r(n(229));function w(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(w=function(e){return e?n:t})(e)}function I(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=w(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function A(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return T(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return T(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function T(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,i.default)(this,n),(e=t.call(this))._tokenTransfers=new m.default,e._tokenDecimals=new b.default,e._hbarTransfers=new v.default,e._nftTransfers=new g.default,e.setMaxTransactionFee(new f.default(1));var o,a=A(null!=r.tokenTransfers?r.tokenTransfers:[]);try{for(a.s();!(o=a.n()).done;){var u=o.value;e.addTokenTransfer(u.tokenId,u.accountId,u.amount)}}catch(e){a.e(e)}finally{a.f()}var c,s=A(null!=r.hbarTransfers?r.hbarTransfers:[]);try{for(s.s();!(c=s.n()).done;){var l=c.value;e.addHbarTransfer(l.accountId,l.amount)}}catch(e){s.e(e)}finally{s.f()}var d,p=A(null!=r.nftTransfers?r.nftTransfers:[]);try{for(p.s();!(d=p.n()).done;){var h=d.value;e.addNftTransfer(h.tokenId,h.serial,h.sender,h.recipient)}}catch(e){p.e(e)}finally{p.f()}return e}return(0,u.default)(n,[{key:"tokenTransfers",get:function(){return this._tokenTransfers}},{key:"addTokenTransfer",value:function(e,t,n){this._requireNotFrozen();var r=e instanceof d.default?e:d.default.fromString(e);return this._tokenTransfers.__set(r,t instanceof p.default?t:p.default.fromString(t),n instanceof y.default?n:y.default.fromNumber(n)),null==this._tokenDecimals.get(r)&&this._tokenDecimals._set(r,null),this}},{key:"addTokenTransferWithDecimals",value:function(e,t,n,r){this._requireNotFrozen();var o=e instanceof d.default?e:d.default.fromString(e);this._tokenTransfers.__set(o,t instanceof p.default?t:p.default.fromString(t),n instanceof y.default?n:y.default.fromNumber(n));var a=this._tokenDecimals.get(o);if(null!=a&&a!=r)throw new Error("token ID decimal mismatch");return null==a&&this._tokenDecimals._set(o,r),this}},{key:"tokenIdDecimals",get:function(){return this._tokenDecimals}},{key:"hbarTransfers",get:function(){return this._hbarTransfers}},{key:"addHbarTransfer",value:function(e,t){return this._requireNotFrozen(),null!=this.hbarTransfers.get(e)&&(t=this._squashTransfers(e,t)),this._hbarTransfers._set(e instanceof p.default?e:p.default.fromString(e),t instanceof f.default?t:new f.default(t)),this}},{key:"_squashTransfers",value:function(e,t){var n=this.hbarTransfers.get(e);return f.default.fromTinybars((null==n?y.default.ZERO:n.toTinybars()).add(t instanceof f.default?t.toTinybars():new f.default(t).toTinybars()))}},{key:"_validateChecksums",value:function(e){var t,n=A(this._hbarTransfers);try{for(n.s();!(t=n.n()).done;){var r=(0,a.default)(t.value,2),o=r[0];r[1];null!=o&&o.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}var i,u=A(this._tokenTransfers);try{for(u.s();!(i=u.n()).done;){var c=(0,a.default)(i.value,2),s=c[0],l=c[1];null!=s&&s.validateChecksum(e);var f,d=A(l);try{for(d.s();!(f=d.n()).done;){var p=(0,a.default)(f.value,2),h=p[0];p[1];null!=h&&h.validateChecksum(e)}}catch(e){d.e(e)}finally{d.f()}}}catch(e){u.e(e)}finally{u.f()}}},{key:"nftTransfers",get:function(){return this._nftTransfers}},{key:"addNftTransfer",value:function(e,t,n,r){var o,a,i,u;if(this._requireNotFrozen(),"string"==typeof e&&(e=e.includes("/")||e.includes("@")?_.default.fromString(e):d.default.fromString(e)),e instanceof _.default)o=e.tokenId,a=e.serial,i=t,u=n;else{if(!(e instanceof d.default))throw new Error("unintended type for tokenIdOrNftId");o=e,a=t,i=n,k.requireNonNull(r),u=r}return this._nftTransfers.__set("string"==typeof o?d.default.fromString(o):o,{serial:"number"==typeof a?y.default.fromNumber(a):a,sender:"string"==typeof i?p.default.fromString(i):i,recipient:"string"==typeof u?p.default.fromString(u):u}),this}},{key:"_execute",value:function(e,t){return e.crypto.cryptoTransfer(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoTransfer"}},{key:"_makeTransactionData",value:function(){var e,t=this,n=new Set,r=A(this._tokenTransfers.keys());try{for(r.s();!(e=r.n()).done;){var o=e.value;n.add(o.toString())}}catch(e){r.e(e)}finally{r.f()}var i,u=A(this._nftTransfers.keys());try{for(u.s();!(i=u.n()).done;){var c=i.value;n.add(c.toString())}}catch(e){u.e(e)}finally{u.f()}var s=Array.from(n,(function(e){var n,r,o=t._tokenTransfers.get(e),i=t._nftTransfers.get(e);return null!=o&&(n=Array.from(o,(function(e){var t=(0,a.default)(e,2);return{accountId:t[0],amount:t[1]}}))).sort((function(e,t){var n=e.accountId.compare(t.accountId);return 0!=n?n:e.amount.compare(t.amount)})),null!=i&&(r=i.map((function(e){return{sender:e.sender,recipient:e.recipient,serialNumber:e.serial}}))).sort((function(e,t){var n=e.sender.compare(t.sender);if(0!=n)return n;var r=e.recipient.compare(t.recipient);return 0!=r?r:e.serialNumber.compare(t.serialNumber)})),{token:d.default.fromString(e),transfers:n,nftTransfers:r}})),l=Array.from(this._hbarTransfers,(function(e){var t=(0,a.default)(e,2);return{accountId:t[0],amount:t[1]}}));return s.sort((function(e,t){return e.token.compare(t.token)})),l.sort((function(e,t){var n=e.accountId.compare(t.accountId);return 0!=n?n:e.amount.toTinybars().compare(t.amount.toTinybars())})),{transfers:{accountAmounts:l.map((function(e){return{accountID:e.accountId._toProtobuf(),amount:e.amount.toTinybars()}}))},tokenTransfers:s.map((function(e){var n=t._tokenDecimals.get(e.token);return{token:e.token._toProtobuf(),expectedDecimals:null!=n?{value:n}:null,transfers:(null!=e.transfers?e.transfers:[]).map((function(e){return{accountID:e.accountId._toProtobuf(),amount:e.amount}})),nftTransfers:(null!=e.nftTransfers?e.nftTransfers:[]).map((function(e){return{senderAccountID:e.sender._toProtobuf(),receiverAccountID:e.recipient._toProtobuf(),serialNumber:e.serialNumber}}))}}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i,u=a[0].cryptoTransfer,c=new n,s=A(null!=u.tokenTransfers?u.tokenTransfers:[]);try{for(s.s();!(i=s.n()).done;){var l,y=i.value,b=d.default._fromProtobuf(y.token),m=A(null!=y.transfers?y.transfers:[]);try{for(m.s();!(l=m.n()).done;){var v=l.value;c.addTokenTransfer(b,p.default._fromProtobuf(v.accountID),v.amount)}}catch(e){m.e(e)}finally{m.f()}var g,k=A(null!=y.nftTransfers?y.nftTransfers:[]);try{for(k.s();!(g=k.n()).done;){var _=g.value;c.addNftTransfer(b,_.serialNumber,p.default._fromProtobuf(_.senderAccountID),p.default._fromProtobuf(_.receiverAccountID))}}catch(e){k.e(e)}finally{k.f()}}}catch(e){s.e(e)}finally{s.f()}var w,I=A(null!=u.transfers&&null!=u.transfers.accountAmounts?u.transfers.accountAmounts:[]);try{for(I.s();!(w=I.n()).done;){var T=w.value;c.addHbarTransfer(p.default._fromProtobuf(T.accountID),f.default.fromTinybars(T.amount))}}catch(e){I.e(e)}finally{I.f()}return h.default._fromProtobufTransactions(c,e,t,r,o,a)}}]),n}(h.default);t.default=E,h.TRANSACTION_REGISTRY.set("cryptoTransfer",E._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(29));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(73)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(14)),l=r(n(32));function f(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0)return this._nodeIds[this._nextNodeIndex];throw new Error("(BUG) nodeAccountIds were not set for query before executing")}}]),r}(p.default);t.default=v,y.COST_QUERY.push((function(e){return new v(e)}))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Network=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(1159)),l=r(n(1172)),f=r(n(14)),d=r(n(84));function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var h={fromName:function(e){switch(e){case"mainnet":return h.MAINNET;case"testnet":return h.TESTNET;case"previewnet":return h.PREVIEWNET;default:throw new Error("unknown network name: ".concat(e))}},MAINNET:{"https://grpc-web.myhbarwallet.com:443":new f.default(3)},TESTNET:{"https://grpc-web.testnet.myhbarwallet.com:443":new f.default(3)},PREVIEWNET:{"https://grpc-web.previewnet.myhbarwallet.com:443":new f.default(3)}};t.Network=h;var y=function(e){(0,i.default)(n,e);var t=p(n);function n(e){var r;if((0,o.default)(this,n),r=t.call(this,e),null!=e)if("string"==typeof e.network)switch(e.network){case"mainnet":r.setNetwork(h.MAINNET),r.setLedgerId(d.default.MAINNET);break;case"testnet":r.setNetwork(h.TESTNET),r.setLedgerId(d.default.TESTNET);break;case"previewnet":r.setNetwork(h.PREVIEWNET),r.setLedgerId(d.default.PREVIEWNET);break;default:throw new Error("unknown network: ".concat(e.network))}else null!=e.network&&r.setNetwork(e.network);return r}return(0,a.default)(n,[{key:"setNetwork",value:function(e){if("string"==typeof e)switch(e){case"previewnet":this._network.setNetwork(h.PREVIEWNET);break;case"testnet":this._network.setNetwork(h.TESTNET);break;case"mainnet":this._network.setNetwork(h.MAINNET)}else this._network.setNetwork(e)}},{key:"setMirrorNetwork",value:function(e){return"string"==typeof e?this._mirrorNetwork.setNetwork([]):this._mirrorNetwork.setNetwork(e),this}},{key:"_createNetworkChannel",value:function(){return function(e){return new l.default(e)}}},{key:"_createMirrorNetworkChannel",value:function(){return function(){throw new Error("mirror support is not supported in browsers")}}}],[{key:"fromConfig",value:function(e){return new n("string"==typeof e?JSON.parse(e):e)}},{key:"forNetwork",value:function(e){return new n({network:e})}},{key:"forName",value:function(e){return new n({network:e})}},{key:"forMainnet",value:function(){return new n({network:"mainnet"})}},{key:"forTestnet",value:function(){return new n({network:"testnet"})}},{key:"forPreviewnet",value:function(){return new n({network:"previewnet"})}}]),n}(s.default);t.default=y},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(7)),a=r(n(8)),i=r(n(1)),u=r(n(2)),c=r(n(14)),s=r(n(531)),l=r(n(32)),f=r(n(1160)),d=r(n(1170)),p=r(n(94)),h=r(n(523)),y=r(n(84)),b=function(){function e(t){(0,i.default)(this,e),this._mirrorNetwork=new d.default(this._createMirrorNetworkChannel()),this._network=new f.default(this._createNetworkChannel()),this._operator=null,this._maxTransactionFee=new l.default(2),this._maxQueryPayment=new l.default(1),null!=t&&null!=t.operator&&this.setOperator(t.operator.accountId,t.operator.privateKey),this._signOnDemand=!1,this._autoValidateChecksums=!1,this._maxAttempts=null,this._minBackoff=250,this._maxBackoff=8e3}var t,n;return(0,u.default)(e,[{key:"setNetworkName",value:function(e){return console.warn("Deprecated: Use `setLedgerId` instead"),this.setLedgerId(e)}},{key:"networkName",get:function(){return console.warn("Deprecated: Use `ledgerId` instead"),null!=this.ledgerId?this.ledgerId.toString():null}},{key:"setLedgerId",value:function(e){return this._network.setLedgerId("string"==typeof e?y.default.fromString(e):e),this}},{key:"ledgerId",get:function(){return null!=this._network._ledgerId?this._network.ledgerId:null}},{key:"setNetwork",value:function(e){throw new Error("not implemented")}},{key:"network",get:function(){return this._network.network}},{key:"setMirrorNetwork",value:function(e){throw new Error("not implemented")}},{key:"mirrorNetwork",get:function(){return this._mirrorNetwork.network}},{key:"setSignOnDemand",value:function(e){this._signOnDemand=e}},{key:"isTransportSecurity",value:function(){return this._network.isTransportSecurity()}},{key:"setTransportSecurity",value:function(e){return this._network.setTransportSecurity(e),this}},{key:"setOperator",value:function(e,t){var n="string"==typeof t?h.default.fromString(t):t;return this.setOperatorWith(e,n.publicKey,(function(e){return Promise.resolve(n.sign(e))}))}},{key:"setOperatorWith",value:function(e,t,n){var r=e instanceof c.default?e:c.default.fromString(e);return null!=this._network._ledgerId&&r.validateChecksum(this),this._operator={transactionSigner:n,accountId:r,publicKey:t instanceof p.default?t:p.default.fromString(t)},this}},{key:"setAutoValidateChecksums",value:function(e){return this._autoValidateChecksums=e,this}},{key:"isAutoValidateChecksumsEnabled",value:function(){return this._autoValidateChecksums}},{key:"operatorAccountId",get:function(){return null!=this._operator?this._operator.accountId:null}},{key:"operatorPublicKey",get:function(){return null!=this._operator?this._operator.publicKey:null}},{key:"maxTransactionFee",get:function(){return this._maxTransactionFee}},{key:"setMaxTransactionFee",value:function(e){return this._maxTransactionFee=e,this}},{key:"maxQueryPayment",get:function(){return this._maxQueryPayment}},{key:"setMaxQueryPayment",value:function(e){return this._maxQueryPayment=e,this}},{key:"maxAttempts",get:function(){return null!=this._maxAttempts?this._maxAttempts:10}},{key:"setMaxAttempts",value:function(e){return this._maxAttempts=e,this}},{key:"maxNodeAttempts",get:function(){return this._network.maxNodeAttempts}},{key:"setMaxNodeAttempts",value:function(e){return this._network.setMaxNodeAttempts(e),this}},{key:"nodeWaitTime",get:function(){return this._network.minBackoff}},{key:"setNodeWaitTime",value:function(e){return this._network.setMinBackoff(e),this}},{key:"maxNodesPerTransaction",get:function(){return this._network.maxNodesPerTransaction}},{key:"setMaxNodesPerTransaction",value:function(e){return this._network.setMaxNodesPerTransaction(e),this}},{key:"setMinBackoff",value:function(e){if(null==e)throw new Error("minBackoff cannot be null.");if(e>this._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(e=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;n--){var r=this._nodes[n],o=e.get(r.address.toString());null!=o&&o.toString()===r.accountId.toString()||t.push(n)}return t}},{key:"_checkNetworkContainsEntry",value:function(e){var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){if(t.value.address.toString()===e[0])return!0}}catch(e){n.e(e)}finally{n.f()}return!1}},{key:"maxNodesPerTransaction",get:function(){return this._maxNodesPerTransaction}},{key:"setMaxNodesPerTransaction",value:function(e){return this._maxNodesPerTransaction=e,this}},{key:"maxNodeAttempts",get:function(){return this._maxNodeAttempts}},{key:"setMaxNodeAttempts",value:function(e){return this._maxNodeAttempts=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){this._minBackoff=e;var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){t.value.setMinBackoff(e)}}catch(e){n.e(e)}finally{n.f()}return this}},{key:"getNumberOfNodesForTransaction",value:function(){return this._maxNodesPerTransaction>0?this._maxNodesPerTransaction:(this._nodes.length+3-1)/3}},{key:"getNodeAccountIdsForExecute",value:function(){return this._getNumberOfMostHealthyNodes(this.getNumberOfNodesForTransaction()).map((function(e){return e.accountId}))}}]),n}(r(n(558)).default);t.default=m},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(557)),l=n(1163);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e){(0,i.default)(n,e);var t=f(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,n),e=t.call(this,r),null!=r.newNode)e._accountId=r.newNode.accountId,e._nodeAddress=null;else{if(null==r.cloneNode)throw new Error("failed to create node: ".concat(JSON.stringify(r)));e._accountId=r.cloneNode.node._accountId,e._nodeAddress=r.cloneNode.node._nodeAddress}return e}return(0,a.default)(n,[{key:"getKey",value:function(){return this._accountId.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}},{key:"setCert",value:function(e){switch(e.toString()){case"previewnet":this._cert=l.PREVIEWNET_CERTS[this._accountId.toString()];break;case"testnet":this._cert=l.TESTNET_CERTS[this._accountId.toString()];break;case"mainnet":this._cert=l.MAINNET_CERTS[this._accountId.toString()]}return this}},{key:"accountId",get:function(){return this._accountId}},{key:"nodeAddress",get:function(){return this._nodeAddress}},{key:"setNodeAddress",value:function(e){return this._nodeAddress=e,this}}]),n}(s.default);t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.HOST_AND_PORT=void 0;var o=r(n(1)),a=r(n(2)),i=/^(\S+):(\d+)$/;t.HOST_AND_PORT=i;var u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.address){var n=i.exec(t.address);if(null==n)throw new Error("failed to parse address: ".concat(t.address));this._address=n[1],this._port=null!=n[2]?parseInt(n[2]):null}else{if(null==t.host||null==t.port)throw new Error("failed to create a managed node address: ".concat(JSON.stringify(t)));this._address=t.host,this._port=t.port}Object.freeze(this)}return(0,a.default)(e,[{key:"toInsecure",value:function(){var t=this.port;switch(this.port){case 50212:t=50211;break;case 433:t=5600}return new e({host:this.address,port:t})}},{key:"toSecure",value:function(){var t=this.port;switch(this.port){case 50211:t=50212;break;case 5600:t=433}return new e({host:this.address,port:t})}},{key:"address",get:function(){return this._address}},{key:"port",get:function(){return this._port}},{key:"isTransportSecurity",value:function(){return 50212==this._port||433==this._port}},{key:"toString",value:function(){return null==this.port?this.address:"".concat(this.address,":").concat(this.port)}}],[{key:"fromString",value:function(t){return new e({address:t})}}]),e}();t.default=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_CERTS=t.PREVIEWNET_CERTS=t.MAINNET_CERTS=void 0;t.PREVIEWNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUenyqJ4UaFBbwokatcUqAwW3o3rswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU4WhgPMjI5NTA2MDcyMjIxNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEm5b1+oG9R0qt\nzM7UZnS5l/xxUNHIHq5+NAvtlviCpJL19jrW9+/UOy00Qqc6vS6tS1hS+dNJmpiZ\nFN0EHew4VDR7ACnL4LDJKmIHWjQ0iwvZo5kCpO0r9BtPN5FvaSxyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUeciBviJtjeuue0GPf1xllNw7qvYwCgYIKoZIzj0EAwMDaAAwZQIw\nJeG0H2HdsI1VhOYmJmYlNeKCNgAk+LMorzPmsIInVBO2HK2IrKfpReWDS/m5j51V\nAjEAxKBxDezJDqAZHTkTXCg+X9Q9V6J6M5yDy5IS90aCWEo+W8C1Hc6hkn2/NrvT\nPhwK\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUUfjO8LyXBdzrzbAe1Yl+d34IDsIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAERwfj4ZtD/wRb\nf8h9NEMu2sQoLFK9Gc4SQ8o6j4ccLYGdgOoVoq4zzy4Jr7ZtCTuACfCfhp7wy8ra\n+6cugccaSd6AzOKRSVZvQvkUTFKIoAOKwp6IhlU48rmi80MT07eyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCGhfVMP72Y0G5XUksE3dPgFHrzkwCgYIKoZIzj0EAwMDZwAwZAIw\ncpX7irZWyuujWRYUs9kLNgB2YLQK+n8r1fH+tJg3+zkcZ2pzhGWmpUUZWOzsDqGC\nAjBUbhlmrTc4LrEBN0EMiRYzfPD2kBZxusLBDIg/aDYERCMcsFvF1T9SsuasF/B+\ncI8=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUIo4L+7xe/mUmpKy4qOAQEIxz8UMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEoFgCjb1/7BUJ\nEXKIPJLlsOSp/39G8l92wOSr7h+Py7iwVwu68H2ykftMOq3tRwDRXZHz7ViqcIZ9\nlfMcS8sbRtVm9tBbNciVUqTLWX9nHr/c4PhKEi+LdgtSUr2+hHiWo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMR89BHC3yKC4YwUgyBVQUGBCprQwCgYIKoZIzj0EAwMDZwAwZAIw\nUs2BdslcScIwcmxoB60K7/1BPfQI8ccDZIMosas6U2zhinTnRKik1T0i+uHhLl8e\nAjA5apAwSPTnP7j3Bo/FOCkfjTqOjwp2lUqzDJYKolKsHX2sy8hX9MkYiY46SaJ1\nP+0=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUWpji03mJsR/16MP8BrOfpNz7aQMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE+KDMC99Q1rWi\n+FwlytGMS5qzTDytCvk+PzdONnDZ/weNSv4j3BXSo588IwhIxLtfcBlyo/+PmE1c\n5qGFXuMoZjGr22VpvogkRgPejD+Gawb4A2XHkMCD8NmO66uPw97po1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUN1qEI4eQ+WHavb9ypGV417NvhGowCgYIKoZIzj0EAwMDaAAwZQIw\nL0khkiDOiFRa3wx9l5JNjaSRePPc3ZaTaJQkPYeauMaLWEvmC/0e2/e9gPm5qJ8E\nAjEAgXQMko3vNB8VRN4XjyFJa8p/muZ/tLA15wPnb/boUmiZ+njDDSaiu8tIQrTB\ngHW6\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEJ7AJvrqDUBNKbssGoJtww3v+WowCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjAwWhgPMjI5NTA2MDcyMjIyMDBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEfgJ8w9GUWM3y\nyusedZOFQrgXFVsdtRsMSHbqyVCN6+Wow6SIjy29GRMSP5R2aswupFgh6lXJRqnr\ntY+hpRumFKsmSo+5+l8DBcql4rzs4utESTehM+Cq9LYc4A1z0UIRo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMCm3UqSbT01Zr23hLzCGnXbDa+MwCgYIKoZIzj0EAwMDZwAwZAIw\nFNcN7mKJo/bwpRT+y/KbYkCJsvljdbXzJOXXQ3e6J6R+0vLqcT25J/ry6pBZMUwR\nAjAswu29z8KJCSxnWwnPpHDmkRT15zG/xS+pAmx3oeQSqp6ZD7qpdJE8zzhbfe5x\nwAc=\n-----END CERTIFICATE-----\n"};t.TESTNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUMkNeM6Sbk9ZFYmRWZmSgTQHHWyUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETLLoIMZjEhDP\nKLHS7bJT4OTYGgR/8mB65yfx3KqMLYFF+q2SpWkIrYgUQLVEUEibVSnLlxRUzH7R\nszcKynpTwh0W0yfWanZKQg+RWoKkEYlu2GvkUtJb8cRVM9NLmJUeo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUSrIepwFx8gZ8/G+WGaxs6GgkMtQwCgYIKoZIzj0EAwMDaQAwZgIx\nAJxC0fjB1OrF9vkCKsfnPS3Z+1hscrZhEDG38NxdLEAfPQ5VmyrSBgJy11FBp8yB\n0QIxAKzbge3Lf7iBMwYwm+2M/GiVgmHNMLdtrYuerWpdbYOHgRNAkyt57JoThn0u\nTzkd5Q==\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUGLriiLPacglp6U+BtJcF9TI7xEUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEXhR9cb6mH9AE\nGNSGk3OkxN1C/JW49ddYZ/XWD4InjS8D1kXmB1Y39v1mF0L1loG6lDT8Zp46zrj7\n5zMONXZeD2b0mx5hHhtllPTpJ10Tlt9FDoyFbKwPRQ/SAPNADfuzo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCaKtx8RZ1XJO9rmZMbIcFJZkcv4wCgYIKoZIzj0EAwMDaAAwZQIx\nAPhDW0VrNSmq8hODdhIVV4GyvpYhp3Fksg+sZr3DmUatwn+ptj+X+9IzgPl9QYE3\nkAIwcy2ixgNkjC/DYVmgT4MpUnLneLK0gA23Vj2QwACaTH99H/ybqUH7srj0POB9\n5wvV\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUEMduome38hvAuIKoGjg/tHatQZMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEl1olzP1L4WgX\nd7aujOXmTQZt3tEOGzkMa3S6qJwISLBI7Tb9KaW8zYIe9xWBVAwphCbD0wn9xpPV\nwMr4uTn+JocugYBbe2YoUGzWTkxWnOEKXbh/nQJCe3XE/C0FY8fAo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQULfw7LVtTiUDVIvZwhhWW0soQtSQwCgYIKoZIzj0EAwMDaQAwZgIx\nAID5v3Lo2zlnpFzTdJFqBpw6fV+vmpI+JBj61f264J/uHMbELiu2dwxhwWaMElX7\nwQIxAJxccFr7Bf1KjaMyT2dq75zQzFuKDMj9x92yAqM2Gas/Yay+Ccpm8FBn7BFl\nke1Qwg==\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUcCg/gZGxk/UjYkhW1jg4Zki+jfwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEOSsXBZicyrxy\ntHJHKh04Mvu6SKM49IC7rAXw5CjlOod5OTeHg0fa5vVoBME4mlWP+LsMMqf8welC\n20b4wMwUC1Hnd66v8crX8L1wvZ9EmKLTvhTd65bS5zloMiSbpdF2o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgMMwqaGuUT6JCH0gsbqullaW6/QwCgYIKoZIzj0EAwMDaAAwZQIx\nAMggJ1eMmT7C14z7wHCsOdDOgmzg733+a5dsuAcxknoz/sQLN8wqy1JxShWgEIA/\nxwIweTDAX/4JZnr3mlSC57lYXbHk/c319VfN9Ybxg0FaDXa8tOqg7Ml6Uu3IGujQ\na3eY\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUXADwhiD5acpA66GPoXuAevBfZBIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEBgLhLiGz8qWu\n50vzxSyQkrmhpxuHBJhpGzA0WaUJdAUlaUOL1753ZxxA08wUmcozILNEnMaQ+ROn\n+fuGctv90ZcrSekODjxjbKH2ntVLP8xwkBRCTJ0WRBNenxxBD438o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUhYOOD/z3ty9O5GuSTXnyujIqBRgwCgYIKoZIzj0EAwMDaQAwZgIx\nAMxbZ4gvkXaORauQFUPRYwOJrihWIA+3ttGDua//YfEbshytQ8b4L65W/1Xs8eOd\nDwIxAImwTzRam8tScdOzmuGgPcML2lkETMpMA2rZYVyEL/VNktIxvB2oE+4M0v5l\nr8IbTA==\n-----END CERTIFICATE-----\n"};t.MAINNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUZWoT9TlgbZy+syLbqZhO5++1cVgwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8NhDGK/dgWvD\nRHEJ8af7CBDdhvujH5XIrLen33GTLY8DbJwJW2jdsLGx3+DRVVmeNQZxCbcGj0e2\nIyypkG6s0mtnmeymD8mI3JU8m1aZiuIptZSH3Bw1BNn2hKU4x42co1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUbYGliiNtMkGaroQxXWCl+kYHDBwwCgYIKoZIzj0EAwMDZwAwZAIw\nImTOEYu0y73Ggt4NAjFFsN2sV7CsEL3NoJqJ7MZ6U+b3Ax1hnc1eE0oei6xH4VNF\nAjBB4iZNvAn6Esiu4k+JPlYuMesplgMv33fU5GsfvLIovN8pOJDe0c+CUmsnfGbP\nOsQ=\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEGWU0F4aKffY+le55ahQaScDYDwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEqW6TqxMmjL3h\n9AVBgfVaFRZlXUcyWa+QYhzxr8sksgJqfDbmGtdaHIdiL1qCPuC4v4G3qrAbXZRm\nTYNo5Lz0X2ic5pES6DbacdjOgHH7TAY4BVKkuVrydln2jjhh7SmBo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUcBlY5a1rV0H1iQuJMwWxrTEWQ6MwCgYIKoZIzj0EAwMDZwAwZAIw\nR+mY9B2U26yD44s03hjz4TlpkyXbVfmgL3Elqo3lrWDJtvT4zpjGjxg3Q1P3SpZQ\nAjAy9DRVrZPzq8iq5Ir7B8XgLQH5QL7SQ3tUL1HzXJYOukvn9Ofr+QADhpb0oJLB\nKug=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUbxzfD3ihIK5snumqqKtqtcBPSSQwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEWoAjWmW7vpUr\nU69wRbK9Firons4kRoin6N8lMjCD+xzsrsT6/wycpzC0F8fxfIvOYSMWRtinhOKl\nZAxp60OWYP87iH7RqWBAnHIJZj/znKTGd+8Sqp/RVQmButFHg/+Go1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUTMtwuDzI4Hun7SPp2Nb3scjUUXkwCgYIKoZIzj0EAwMDZwAwZAIw\nHKAgaX39Lgc+4/xHXzZR9mi2p3pf6CDO85Xm56UR/t48HnBkRorR3TFCBXACeIIs\nAjBtXglpDnRf6M+nVBlxLdwCQXiwr6vQJ9+dUo+suNkZ1JBmtHypyIqkG2yT4z9C\nLcs=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUPwXdJvpCJYO9lm6uQN3S1aBi3PswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8PwBQ0ywu+0t\neIYbaiKwzGEScQMOYFYAMw49++6bGRiH/XZjsypqlJWy3F/mB3+HNVZsqgB61Jpj\n2p98Afkl57MYWhWM29t/x5qAQ8LhKGu2k+BOnCcvHDU2pR+fmFSOo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgI4r3/iwzFN2wh76y/4XDBk7wgkwCgYIKoZIzj0EAwMDaQAwZgIx\nANAjwHdTWYMCCjrtb2NWzDpsKjf3m6ZcaxbEcM1ta/Zji/4x0+VRZa917CkfaEsr\nLAIxAK/erPvIXRU9eNaK/TAQqppSRaF35G6iNnYjQZzfjTU2DczhT4oCjKzGoCHT\nkI1zOg==\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUXUGzJj13Ck2Cp0BKauLOdzgCPwIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8Ee64Tbu53i/\nKsuLOJG3GQ4e9gQ+9BtEy7U8kfFzRHh6Ejn7LOW38ZdKX1HP4zXuUusjNvytqDvr\n7eclitqnegcEOkIeFK3wQwBoNILuq+r4LRVi19V+AIcl5w3qkJvIo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQU2tbfu7hd7USgbS2WsG/6BduKEAMwCgYIKoZIzj0EAwMDaAAwZQIw\nRw/BOLoScmU7P/1JnNPsGarmnvcuJrokAv1wk6j8s5LGuQHReX+d+O3RPLggwcAY\nAjEAjoZnt9simul4cVcVy4G/0f39atanUva17gyzlYXEYx7B6UloxLeEcZhlbBf8\nGjRf\n-----END CERTIFICATE-----\n","0.0.8":"","0.0.9":"","0.0.10":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUNauEDBCmP9igXLWtRpzkQqIGo/wwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDcxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ5WhgPMjI5NTA2MDcyMjQyNDlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA3MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjbkoJBshQXUy\nqm5K8ldpTDR94Wk8iEM7QwHfceIxK5pPgaVGRkoJyVLSK5LMH4jyaIHUrtA0lIBQ\no0MsYkq7TOOm7+vo1Yrd8EMbu5StMb3gsXUrj7E/SBKIxULak6hCo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUyKHMzIBPRV/mrgG7tIjzOiw2xbUwCgYIKoZIzj0EAwMDaAAwZQIx\nANsigVtLgTdKWBPVJPstWA0H8yihf0/dmM3GO4qp5keGTWz/O3tnom4iDB6eSrcA\njwIwU82Dh+Wxl3kAD3YJH5VhlfHTm1rPlJETBHZgvPBOYqippao6+WZFEpn2/IDC\nNTjn\n-----END CERTIFICATE-----\n","0.0.11":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUWtnJm2kswnXYu7/S5BnnTQiDRcUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDgxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA4MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjY9Rl+s00xFV\ntdTpAixLR4kJIGLfSLOdm+ofU/KuKMRSz5x1ORhIicppKZK24U5WLGXQU1fKLvxX\nOmqwqL+6oAONmiHszqVdhWne4QPUba0yw7rf1/OI+IFF1HRK3shQo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUb/htoTodbq5hjP5RNlQ0rkKwWB0wCgYIKoZIzj0EAwMDZwAwZAIw\nbO+9yArr21XKXjYHPadEAYINDxgXEC3W8e3X6MJsHCIZITddWWOyXRNFhz504vN0\nAjB8aBuhrKcg1b4CrQDZQcosyVPUGIZKkXdQFfbVdivKrGZvqLS+GdPLd3v2MmHY\norA=\n-----END CERTIFICATE-----\n","0.0.12":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUHBsegV0bKtwpHRoOnnhbK7CTHxMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDkxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA5MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEK+ZAs/00RXaj\nbuQJJy4zwr/YTj9h5V+vbY7sq9Z1RByEwTRRQOI3OuzzMq1EWKkVJKF/QF5b4yda\nx6W9O/NT4EjBXH5XR5X1V6h7aT01YBqsxgMxuUP7kw9K+fW4k6Zao1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUKbecoYirLjf2O2oPkoggEE2P7FcwCgYIKoZIzj0EAwMDaQAwZgIx\nAP67wsVOkeFo/9QRo+PnZhzEvjOZ/+IUoUhimdljcVwn79tzNP+obf7VW3Oq1wH7\n4wIxAL65+WmMTMoI2cN7TCiL7G/W2ChDsASeHfaP/4e4ZViNONWotlY9i9aS3Kwt\nLTea1Q==\n-----END CERTIFICATE-----\n","0.0.13":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUBNxMZRKru9jzFA8zsOAI4xkMFCMwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEwMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MFoYDzIyOTUwNjA3MjI0MjUwWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTAxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAShUi9sglwb\n0U8QUrGOXJuHRXA9HP8RypkgNBwNRs1YcmPLcuwK70unWlkB81M44IQ7z/dG/0cW\nhfFdRI5x4jAeiUFivmWmMLT6lJMPxJ0BkWTGVFVwI3SKcgSvHP9pNS2jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqIMCDzCKKwJJLCXhu9YJYPw6lsDAKBggqhkjOPQQDAwNnADBk\nAjBl0bJG2A3443ybvrkKjWu8do6nDSR08/M49+19QfA1aDw0nb2sdCOE+xNitpQ9\n7ngCMGuQHmnKA2EyOIVpNl2EtRoG+vdmLJQaoukhmCWjkGrQHkai473tGa9cRZ/8\n+RZFzw==\n-----END CERTIFICATE-----\n","0.0.14":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUJcQrEmPlIh0KWwiC2X6lZ/OdNs8wCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDExMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTExHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASxRizKJSbB\nHmG2amvTHLCyExJngCh42agaFkv5Ab9mZYbqZPe0nUn/8RlVAvEiRNggCMYXC6MU\ne4J6D1aeLhYaa0UY8Fmxd20NUjAOWhJgUXds4ILMMVG+pevofeC8AsujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBS2Ic+LU/6Wssns4Yyf3N6E666xDzAKBggqhkjOPQQDAwNoADBl\nAjAH0JMX48GD6vThA6FUsVnJmBID376PRZgxhuZvn9C0HawvNjZVQTkpzpYCwmia\ndO4CMQCotakNxyiOxu/BbnPx6ld5+dqVCugsfqClhUhy8ROpNHfKxp3rW7HopowT\nWiMlIyI=\n-----END CERTIFICATE-----\n","0.0.15":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUSFFNFv1iquxd5txlWA3PlkNju2EwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEyMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTIxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQus3nAPZkb\nja4Efo7iD4s8NLsFwEwQXQBgBGIJwtA2JRgLyXeWpuu125ib6qJzT8CHvQZhel3b\ncwYWi4f2JpabMDepHELLxwZ9fILnAQ8GiHlzhrVq2NI15DI84dXVe4OjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSEO/JFC5/fDcT2gtipDMYMMTd96DAKBggqhkjOPQQDAwNnADBk\nAjBalAU47XQL4ziHD8lj21pcp3+R5FKzn96HclMT/vraknCT1Sl+vCf6EYsqmi6Z\n+RwCMDpxL6P6OMqyE+HzAeYQ4Fa7MYEQfZGMjka4zxetBLvIpwUCT4EAO8gv9GoU\nwCBUzQ==\n-----END CERTIFICATE-----\n","0.0.16":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUdnkil4P+VthVMnqygVwGKLt7VfAwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEzMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTMxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARUdz9ig/iA\nhEAth2YinHKY6WM63BAxUVItzgk65l1T4wTzwoK4XEwclY5vIeFmZy2e0s95lWgq\nSI68VS9gmJ3xp8Q9wOel/bvuF2tvNZmF393TeoNQQVHrQM1yJAx+nPyjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBTBFdNwHKSRDo6CxfA1aglY0N8joTAKBggqhkjOPQQDAwNnADBk\nAjAqPIel58Rcl2kDxZxJPD9mK9xW4TU+d2NuP3n140TQ6nPlw1OwCPI7a4i3wfEe\n08ICMBbrpNRdFZcvy76KoLPfTPvqbtWWaR/0tLZg4Rjj3x7SYgUg3vrVDmodHGkb\n4T2Raw==\n-----END CERTIFICATE-----\n","0.0.17":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUDg+G4Ep+KEmIo+nCOY8DjFX60swwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE0MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTQxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCQRL5xUUh\n1bsTXRPAf/qVFWEOxsJTiMlF3+UJ4MajWE5zmc2QNIzqj7NE24z3fNxgjViNK/8+\noBNQeqXfyJ/4etNMzTyG4JTsvWRAQ3aR1J4WDbfwpcgw6AIOKq9OLP6jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQB9V2fygf48zyyVL3bnAxCLDUV9zAKBggqhkjOPQQDAwNnADBk\nAjBonlThjjvi3fg7ODQcatPHBkp8Yon/p1ukm3YzYA3kitqroXU7BkmwRae2fbqD\nTTICMHI+fAy+xWGwXAFNcvNTop11IIoszcgJJY+1Mc2Q/USk3pP6iezta+rvnaWu\n7JySHg==\n-----END CERTIFICATE-----\n","0.0.18":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUBvI2Vq6O8yXNzbQlj6uQOdpd1lIwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE1MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTUxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR+jFDSzCdn\nmMQpgz/vrmD/xioMioumUmyLAkB+voTNsMAOtiaDVbvJty3b4SJETv5tuZyaF5Gb\nQAYuKsP7X8siCCVLZC9i9nCg46NHtuQkEmw1pzUUDmYFDfSV2tWedNqjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqvCmoaVEp2d9WPctby+ooPMGmvTAKBggqhkjOPQQDAwNpADBm\nAjEA9fQ2OFZa7fAQGGYydfVaUF0ObxKj3T+hyl0jiCKLe+hyxJSrXCFS2BM71UiG\nZMVxAjEAmCzESBzTVvl4Uv3TyActGTijTCqTNpN3gJmQbZYjKVtqf8Wxj9WeH0pM\nE8BlA/qE\n-----END CERTIFICATE-----\n","0.0.19":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUZBwp7UPLJkDgngbUIx5xjbAn+7YwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE2MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTYxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCVYu2uF3T\nkCkyRP0FfXVyyTA1z8DFqCKGrcODgGJuVAk59H6u8FIRsNipkb3BXFI0xGccok5X\nT+t5bMaGDHYJ4fjU78UtPNmankQ5HoiMRJpy7Vn8mzizUzUqGpnhu6GjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQzE6RGn4YlIbdrl0niKWTtJzfXoTAKBggqhkjOPQQDAwNpADBm\nAjEAobnXnwlNGNWoHscbl/ytUBSyjC7V11sLYJqtORSRX3k2+bFGsg4ltmOVjTdd\nlXatAjEA/Ja3jufmdruqfLa6qigXuYI00YaI96sOwNhdHlnksYfqF41nDe4BsSW6\neQ6N5M9d\n-----END CERTIFICATE-----\n","0.0.20":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUE1ZRB5n+Yby+Mwgb2xAcVfTZ53kwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE3MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTcxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR0OfTmHjxT\nkBiU3GMa/bTvlTswCDAuFQGIIpMWHaf6V4ighzmn20jCg0AVFStb2q7YLRr4HUx8\nToMzsd7/yjl74BwJgfZnL75T/JInwyMgOBiCTXEf6qVDvhNzL4QJuVujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQFKRUUmdFcDFQzBN9XqMvLgPd7NzAKBggqhkjOPQQDAwNoADBl\nAjEA5MUUXSehY3KVIv/2LMgrqo1kPiV39fwYuLSnsMJ67wK8yN1NAkkycg6q2K6g\nrBIvAjB3J3a40TINOZTYG+eQs+MSWyfANJLRuJTEOorXzMWM6+05+JYhPnLA8hke\nCRfzmSw=\n-----END CERTIFICATE-----\n"}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_ADDRESS_BOOK=t.PREVIEWNET_ADDRESS_BOOK=t.MAINNET_ADDRESS_BOOK=void 0;var a=r(n(1165)),i=s(n(83)),u=s(n(34));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}function s(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var l=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ad0070a0e33352e3233312e3230382e31343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340acf070a0d332e3231312e3234382e31373210a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ace070a0c34302e3132312e36342e343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ad1070a0d33352e3139392e31352e31373710a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad1070a0d332e3133332e3231332e31343610a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad0070a0c34302e37302e31312e32303210a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad2070a0e33352e3232352e3230312e31393510a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d35322e31352e3130352e31333010a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d3130342e34332e3234382e363310a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad2070a0e33352e3234372e3130392e31333510a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b35342e3234312e33382e3110a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b31332e38382e32322e343710a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330ad0070a0c33352e3233352e36352e353110a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d35342e3137372e35312e31323710a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad0070a0c31332e36342e3137302e343010a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d33342e3130362e3234372e363510a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33352e38332e38392e31373110a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad1070a0d31332e37382e3233322e31393210a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33342e3132352e32332e343910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390acf070a0b35302e31382e31372e393310a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390ad1070a0d32302e3135302e3133362e383910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a60363465303938363135626634303566376564356134303133343436623839633438386366636436626232356134613637366463373765656131316433336437303236383266306136396138303330653863353737376430653432323033373939")));t.PREVIEWNET_ADDRESS_BOOK=l;var f=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0a7f0a0c33342e39342e3130362e363110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a80010a0d35302e31382e3133322e32313110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a81010a0e3133382e39312e3134322e32313910a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a82010a0d33352e3233372e3131392e353510a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a7f0a0a332e3231322e362e313310a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d35322e3136382e37362e32343110a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d33352e3234352e32372e31393310a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a80010a0b35322e32302e31382e383610a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a81010a0c34302e37392e38332e31323410a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a82010a0d33342e38332e3131322e31313610a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35342e37302e3139322e333310a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35322e3138332e34352e363510a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a80010a0b33342e39342e3136302e3410a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e35342e3137362e3139392e31303910a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a82010a0d31332e36342e3138312e31333610a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e33342e3130362e3130322e32313810a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a82010a0d33352e3135352e34392e31343710a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a81010a0c31332e37382e3233382e333210a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a83010a0e33342e3133332e3139372e32333010a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e31342e3235322e32303710a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e3136352e31372e32333110a388031a05302e302e392806320218093a60363938333261373361333630326538643166626535616435386431633236333761316236373264373165653837616631306462363438656239316166623232383235336231663437653537643364346134346666353437623333393461613232")));t.TESTNET_ADDRESS_BOOK=f;var d=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633435363165336332373863643635306538306334313363613434343233633163336331336366313437356636663639373664353937616534333262343961623432303836623739623834313332363035346238623364636635376438666364373962666330353831383363613234636434633163626335373465643131313765326635623762336336336365376230366439623465666366373337353633376234316665366635336338313162396465363134336633613532393537636466393536373735313230623333373033666635373632313430376162393537356263326433356330643434663039383366633165663633613466663532303966303730633932616631303632393536303163393662636564303634656331393031393730313963363831316334633864643830636234663461633731663961643736653761633839343536666266346630313166393061626432643930353336653832333436353166366265663932376533643564386237626634353930353039383362656361336162656632613964393761663334353737326137373430653936393932373562303138656130646632383661646436636539323365663930386662653736326137356632313131363836326462343464336463613164343462346432653864633130363663353030366262356137643935346164323535643462363033323733343735653531316165623438356430363961303637633061623563323435333863393333633036623561366165666139343030356332393135323133653463636461653663393432663632373266396464353238326436623839306631663230656664323339396364363734393234666135373034366163366461333265373339353161373331313365393166633262376666323965343835316238336666333966383362613965633666303863656664626236636262626666616266646661613931643933306637323030646134383133376333393463626431336537303165636463323631366664323162616436383161613466303031303230333031303030312804320218073a603665396138616263646364653665313134396133656265313766643538643839303538333961383664623732623036613365613230616131373666383638623235343838353261653432336437613963366237636666396537313436323961320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613163343037373135343330336363373263346662373639326333663934323531626465633132333961316637613839373261626539316133353332336662656361363235613766666165363430366338353564633261663231313039303062306466306536653664623736333634646661316666653835656461353637393336653239383562383536333461333261613532613635393964643663333062653166376136633562386635656563616632363231643861343539363832666364326462616164313536316431316633336663636237663535303061633536386431363564626561616365333238366432383934663634313239643738316436633732666437643539396339653164336166346161343333633233623931306661653463343834313634316636313532366164373837656265613533393837343136376539643361373363633066623135363432396431356563373633613664306630363131356137396239616637383364373762393864383330393661613437343366393734303864396531346263663464646666653435393137363838343762343063623864613763613337353235366432623933356430393566653235326661653831666636653337663834643761393064376535373061346638656633633764373636656564613437326630393230313939303135613839303832353961383733633534353466636262646361643265353238646538353435356234303833633764633461646335613938386530636464666463313539643564373132616264353434616137336563303239303839383134633938613434663236666330363434363539633138336533313834616132373266386431646330626661336530613536303438346362303535626134646262356363333339656338306264313164363432646333613730326538633730336162323139333038346439626436336630646665313261343333633235373665616637383163666164383637656637306264613631373638623262656631346635306336633362386230393666303230333031303030312805320218083a606464336233653763643361323537643832373665343635333533363162303138623730303931663438363635653832303031306538316563303539326236396264346265316662643765636435303964303730313364643034313238343266640ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623263636163363561643066633736343561383137626661626334383761643765343133313165376133313938623337666238343264383463333935623366363764366264383438663130633666303363323930653866376461613864303031613834343164633335326131393136306133313933653638623832656466313961653637363933613961333364346362383765373839613130373037313535313565613737326361613862383661353639623931633534353038333564396333353466306461636563393766653737303931623435623134373639386237663836303134323264636432323631653932386465346461633963343264636261666466393663303732333362613330323730373666333763393639653865643330623662356438663530333462653764393263353936663862653836316535316663633361323432626639643862653965326139653865306631353565626366663233656666613763643537633130353432383131643830373736633935383535323666646230656161333465653139353564353131313933393066653837336534633034646564643239313635383834623938623436333038373838616537666334643461613461386663396263323637346261333231343933623632343435356164343130633164653731626339356431643931666130663230313431386137393565333039656166323937623639396266323763396661323736336364353963656230323165313662383230306331303630663238313766643833636663373637313833343839343631653335393932393162333830643665393339626161346231393233326136613237326464653635316638303436666463333464623237366137373764366662326265633332353562326363323434623461663536366231303566333063363530366464616530656233646564646366393437626362396336306530303039383466336234613863366334656434626639306263313933326237663934646333616536623336303030386562393032303430663962303230333031303030312802320218053a603561383634313561303861306138323566336232656237353031303135353230326533313234336665343161303333333834653738633138633131653565386632303964343933623062326664343565303662333734663262363964663564370ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613365333762373663366364356636363232643639323434343464313263363737633339356632623539303266336262393862386138623530353561373037373036636130323863643735303630613264383730326432643862303439343762646366653061386331343161613238343462316530366536363139303031326538623633323661623066613331373937336263376362346432393439663231303861613034633462306339316261613537323866356235363232656337356162663537386131663762343165646532613637656264363963313865353831666466396336303230616330646539636132633331663063363436393030333331316662623563653764623439633738376531613764323761613432356565376238346461376536363933396639633830643065383266636535356530326466633862356337383431386132366161343336353036393837313962616663656366306264343930303061646463666134303537303862646265666262313937343964323264616230303765343464343565613233623130366638383334633135326532353036326434636632346666323533353663376562333732393130353339336662343962616239303461303266306630626234313763643931396433353238393031323865366262666634666163396639306465313138613937346632613664643031653033326137396231373866363066613166636262643032623537303466623436323935633135313930383136333733656464363633356338353639373866316239353033663166373362346230626538616261326564316665656164353939353362663832656664653933613334373161626435356364613362613861363733666262333739393734396662303036643030336630653633663636356333343631643261376232396463386232303462613539613635363638613436616532383738663030643166393439306466396532383066656266343331356561303465616135363861336139666434386336326336336236656364613639303230333031303030312803320218063a606434363430333938303337393230373965636364356134343331316361306463323262353065633839356235366535336431326232396637326463366462613363616665326535623831303466626461303338616635623434376430666231320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393361323135636334613761373232636165396331336162643633366466393963636565633661663964623436623639666135313637313665663530636532343930613938316530396162303139636132636234363831316235623631396431626431643565653666343661343263373737636264656536343261313438346563646635646464333732393634326333386336643433613838353838373434373566353832343434333636346330346466656439623839303435666230383565323563336566636234383431373333656666376335323963313339653639333530633263643739623263386431393637396137313265346538636166643332363735343162383332623365313061303132353564656636396466316539643362386438656166303331316465363764356531326232366464303164626264396433653432643335643964653237313330326530663166363964383763626337616361396538383637653964343238643363616230363636656234393064356662616233306266663366373835643033663230373261343362623962356535343635366135393263623631656166643561356566323834633763616563363666376634373332356363306434633164323766363631643861373438636135303731633036656631333464666639366634303836363838333636643436386132343738303031376530623536616261376661623433623362376330623737393036666165353438326633323831316332393265366231343435346531346238393438303161383661303363633437373934646430643734353237613732653432346564336166613034383939656362396136336632613961653732626537666139383961646630643635613332633835316439383031666334313034386466333335363466633762333137303765633866623830313430666537623761316661313230626131636236363033323463656666623462636332643962623764653063663534633831396632646433626365616465633963323566356531396463396231303230333031303030312806320218093a603365303261363732306334343636353965383633303564353562666565383230623335653635306665636163633535333039373435356532633465303332636339646564313662316262343464336235393262626163623663326266663165360ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303930323539663465336439663066333934323536353438653963373330386231306237333430336363393039346439376164313531623737303631373062393737326365623634643636326563656639303161386437643135643331396135396338623731303731616363643839356237633933363130646336393736663637633465313732396261383337336162376535326133663363386632363534393164646536396436653039393934373065373434353938313133316264393663333665363836353230336662326562643564353065616461666237323633393664656331643931373438393862346539626530346337346433303466656164643963626433323334633362376633333036633939636230633333396663323539363962343164353861326237636663313833326532323664383163313936333939336532323535613038376431363938633033643432313062643634353830363434643039356361373661613137393465646434306331633837623566383261386533396636303365393731313662613034353738653765383033343634393564373835643465663763663737313462396562366635663965306239613934663462373338383436313962393237346434613935656631353735346138396439376566356331613838623664363933653061383065626435333766633963663063613931643163363264393135646537656438313862393532653634633230303239336565386532383461343136613732613365313266633764343233623135386639623439363630636263323436366662656430666564326532346531303266646539343265623463666439346265633436643364393066633038633339666563626130336530636132343634616536363462393739353135626132396531663730326333666537303262653739333739366438656462313761613438633039323930623032343534396630363131663561653233656437653136343432646637643164616432323836633262623039643535323264643365643639386332663032303330313030303128093202180c3a606339373462623938326338313931336237333236643561336639646363343836313261313566376161643032663230376230663130636432303137613666626666353830336537636139626662343730396162323862366230396435623133660ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303962646438653834666164616133353332666334636530316138613137643463336232333266353061393739306532363236383465646334383233653831356131626435623230656365613762663536653239663662623762383331666233626636656663643134373566306238656435666662306231333835623936643136366236323966303339366138666566356630366534626361323565653461313334306565323633613464396262303230643866343732333036663364383836313338646537613031396530353962643061666339303263636261316132313361653264616136306338613031333735356665306134386530333466356234303233613264616465616138386335343836383335336163376137613364663132623266623634313837373465396231346265366561623863633237623838303132616436313632646137346530656562313631333539303566343337333734646162383538366437353061323662626433616332346165643837386334643533653635313037326338373165393464376163633537356339363733383137333461353366656166346437626136626364643234316363363435386336303837643836333032616132353163303466366435366239633332643764393636323437353065643035353738356430373733663433646330393962323863393232383131343865366338316632393766663964313636653030306163303462333132343138363737356663656637356635656261306331303332626631333064663663643761343632313164306466336530353834643932656136373334396438343930353038656234656638386635346338633364343836646538373139663130666139366665623835636337393630373663613738313331386565326439656439303363613133333630343063353961643931613464326636393865393130386165306564623962316362393561643333623139376666623138626431626138623536636265653261616539353835656365323038613165313462343835363436333032303330313030303128083202180b3a603937303834333033333130373866353638326337663332343464383263336233653238316139313837393537386465656163646363326132656265353431616631383831313561643265383338363565356635643234376234613138633165650ab50722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039303938383635646566326632616233373663376630663733386331643837613237616330316166643030383632306333356362366562666362623063333330303331393361333838633334366433303233313732373031323139336262373666643330303462383634333132633638396566353231336362623930313130313530396465616239346632366137333265363337393239646134633463623332353137653361646262333831316435306163346337376331666365386236353136303632313566333437303766336537323635353435653538633839343630396532383337366264623737373566653330343339653065313539326664636230633365653163333035373733643037326136623839353765616663653161313162653936356564616666333834333336366362366134346563323561383930313036653632343735363766373662353530666461343832626165633633303764363938656338383834316664363666323366323130653437623861396463626136626134653166613731366462333363383065333038313934393664636235653536303966623665376336313533373962646465643432376539323331623932353463326261663934333630386138366436393861653961336338363339646638383764366636623561373133383564323433333864393131613231326266373166316532616363386231383662393665633865363963383662366430353832313737373661303963396336383935336564623539313635373862356132363362326634363965336230633037656164613731613434376565613766386663316262383037343235353536376237663062643165366166623033353837313863393862343239653234623232393835393666633736636636616633393663613934333464373932366563376433376434623932616635366434356665666638313936303935323234613931366331666665366236363765323535666333616338636363656639323064633034346232353030333133326238373830363734326630323033303130303031320218033a603333373339306438666561313434616663313265383132353461323864616336656138323839333833366163303732656666643835653061373734383538306566323830393636343863356137663864626234636538313437363831353133370ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130306335376564623966663237366530323362323830323163623164383763646631393636623639386366343865346561616137633639323037376365656538636362323339613463393231353937653865383966376363303564336633313331353738393736633465333134343035643461346530336137323431306335633039636135323761643561383562393938363337653732613332653166626330643535343662323436356539653830366332646435303965623035306162356662323730363366643932383135623164643236383965323131316361656236663534396539346139663030663038323164346361366336613631313766356135333363393236336266303734613330643563626566353064316338633233383762636139373265646564613039383362356430613662353764636230303230303036383238623430653430373662343837306232346261643834303536656535326235663432326538383430303238633235303036333832643865396336363132323566346637366561373265333430363037653966633666336332303433333037366131636138636231356564303361633839363664303530376263646536383165346530323331656539663837643131316537623438616338663934643264383432623532646637336635373363633534313439363437393763363236393638666661653734313866336236313039623561306630396533323233663461346435653335303964643235303133386636626331376266366365636531373539343433306466313830613338653930616466326166666266616430633662386331623837663137386130363164636662666638623932633931363664383734633166663561663466626364626665386539643039393337306464663630626537343736333364333665653465623563643531663665336333333965313531653431626462356135636532633863393761306134336233636434636330383138383463383739663964326633373438343238633835373366313763393066336362643032303330313030303128073202180a3a603734306166366266373339653838336338386633333434633961306638623330316533396463393831633531363365306465326133666634326239396534323665643765353662363766343231383530333834356466363266343963396662300ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393133316161333638663933343532323966393762363235396363636166666561323365303063643565616430326533663639366331653731346565333933396461643836306533386266393561323937346639656234386539333433663861616334303565613935356430353332336531313762336231633934383133613361663432666538303832633364343362616631626434643833363765393364623030616436393665363237613130333661653533346630313165616435653536663337613666666534346236623965303939343031313932616435363061303334366234316138313030393566356632643766643332643665656236353562613735386336623532366331323933383661663731393763376135336165363033643632323833323235343936316631366430656661383037396137363835363138383862653733333439323231373935366262636166616562623631333563356662623234383464356234613566646630333336616330326532366331363532633162643865616633306461653164366433656230306637623466616238643634373866653864393565623931316466393636613064656134653532326462373662383936363537306563633561663039353136343234663061663566386565363665333836643536353037313339393731363961633337353733626635326664303538646539356162326666363865363831313161623233343035656139363462326262383864303263306631636165643731656364643465346534303835393438373666646238353030626335356337626130323036366530356162393864396637653034363664393730326562353765653337323266386663633835613735353035666633323632313730323838623738383732336164623937653464653536323063633930656164313338326663643735373138383966656662313165363737316263336636663366656231396337616335343238373864303361393032373035323663336565643234393465666635346531353363613966363839303230333031303030312801320218043a603765616236393661623935343336363538626331346666366234626534643932356364353162323230646632613164356336656531363061646166323961353165363934646533656531383463653232656164386437646239333231383266330ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038326465373330363566333466666332393334306435393439643232323062316534333636656435636637633665626436313663663934313661353365613030313766366262313136626664336633646566636331356237613464646630653434643032666536393536383830353365373961373730653230316263663731393333393030333965653866303836643466613734366337653035363931383330316639623565383465333932363238323830383561373962333232626361306235643835666539373232316132366262646532353863363230663064636561303261623165646431366363343961336632616239323838653364643166333764633462366136663731333366663932653534316337316237306432613266363664353537323561623138626638366430303965633364323466356431326530623565363830326431313531333732643462373634656265636234616638326636343934383565633537623561303164633637393538663561303363636161623763626139333534613137333732633133313662613437633935336161663934393031623366386332346536613361666436373538653766336231343363653264643363623037316232613734633932316365653934396134623561366265383739663163373930613662386436336231393264376565323961393439316664643638396139386330613763336436303332306631623461633264363232396466643934653432663361363034386137366265316562393538633861313837336265386433333861656339666335396162376633373632363738393430326331666435393566313930383735373565306265383237666334633061346662336433393361643734613934396363393836626662363463616264646165353339333566366463353630373464623933643737656133623831366264643662653533343439373237323238393835396666333463653531383630616666623632316431303438376463333834336631663836643534303334613633653438613161306430323033303130303031280a3202180d3a606132656363316232616539386264323862633161303864386633373161306434663734356337363864306337373339363235363265333433623235643833343235656565613765663865613134323935333432623865623738643332656333660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039383735356134303862353332316532363330353230303064366437643461326333613535346435653133383461396362356562663437346165383832633633623438366264303864313434646466316139346365396137643632353139363330303661666461616334353838343666313736343031393566653235333961363536393330656661383534663231343865363865633161303863316334396432303063336633303435666537313437663036643533346334626432363231303063623164643339373339643736306438316130626432306638336632353564323530376434636362313130366235333631386336613934343039633838376361653236326434636565396338363233323134376365633134303465306335376262613733313731333065653339363433383838616633643539386564643832623863363165363561653831613465316135366263303664333937313433613938643431636138376433656634333365663061656162363830313139316233653338343830393638663636623665383836363261663435613965323132393934663638623238386562393637626562393834373863323433653231333663316131353931663036316635626330346232316666326261343862323966313834333130383838373362646665393966386135326539343038393731383536653830346465613630326133313137383663393835363532393633633361333737303332396234303966373466646663373436623232613566383431383931323037316334636538343663396234623332306665646636653962363465326362653338346639613832623661616164346232303930373433316466316133336636393230376135363536303062653831303730643038333239303039393538353961343439386435623539333135626365626566656538303765623061336139343266316364663333363764643434343466646232393838366566636464306265346162653961313838383033393533383735656461333364623732393839663736336230323033303130303031280b3202180e3a603139366237623132303739376364623361396430303362393833643537646131303331303662313733306531376636376532633762616161646234333738396166313639366461313031316232353362636263383630333333383566303332380ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061396462376638626161313236383938666162373839313135613362356438393734346631393765323830343161653039386633653838366336393837313732316531316262306164313166336365393132346161393631643661306463383435663439373635633366616231393935383430323637366635363434363262663238316462613535383837383066303365393035373938653138343236396161613630663761313437323333316532666231646561646438373763383463626362363431636139653563386164366534356263313539636230373966636230643434396364636438643932333963316130343765376234343864613063646361323636313061323566323936643936653734363962363736643461343434353136653761353965383532393361383038366638343063303532383534653032613863623230303264616433353832356265346438336235326661393165386337336666303439373436313438383632373837633131313866393234643331636261633162343466656666323264343336623339373965616466396234336134626661373265313562343735356663616232363065303661323739633362623733626337663136613036306434643532326664343930353830333838616135393564383034343733366535323266363432343931356637383033623735383365303935636466373863333235313936393764653831623839666235303035343735336231613137663961616662303634643834633939326639616231316363626338636231303831346463616635323634616134356632316264656661633832636361636161663335386533313337336565316261346537343032666438613730656130633238636135636337346463343235313063393639636432633435396231656333363838613031656133396139393237313063643232393763393861383462363334386135373738303466646332333464336665313930336532633231653137326461323862353961653665346337653865646438623731633439643730323033303130303031280c3202180f3a603538343661353366343437353239666439636462373830346364333136383865643665656265336236336461326635663231316666626337333731393763663366316366626664613631626537643135313066306539323339383131376637340ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061386365616333363765623166316465356630643965663365616630646639623938343438666532303830383437363536326130363063353163323839373730623463616366653932636236353536393832336539363263326132633966656435336264333663613361313232646531633532356135383266323561346437643632386331613364356264623839333661656365373531306537353534656537303333303235633039326338323865656235373338626530326564393633646138316135393230353633346365393435343537376162383266343066313366316565353565306165373237653233633330323834623166343462393961636534646463356639616337616438386439666132323535393335623234646362613834303036343265313663663235333263306230643638393239303436303837313563343037366634366438346130653066656433366537366363646339363335356537613236313630393435633262353461653236636330306664303832333236333436656565656137646437356639313931316539396462636239396561346163366261303536633333323238643838316438353833316439636338373935393364613137343664643065653935646332623936666539336261666366663263643764393239353864373864663333663230356437313135656439666163346462366634636336306535366135343431646135623562353566613539393939303265393538613662366334346438313064646335363138313234316238376632326630353961363838306538303231373336643031383937646236353434396365383137613233373564303335353163623064653530376336303961306338303330656366346266646562323133633033646161373634613138323162373234333334663731663736386437616563623237373035326137303333373635663037323138303536633738663261383761663138333836643866363161356366636233663262613464643539393135663133643338363334643136393537353730323033303130303031280d320218103a603030306162636435396133306135333838633530306265363832663663613239343034363239356339323735383831633230643334626230643639306564613762333862366262643037613364643166646662366137303434626230396366660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061663062393134323537626637613436353563346135306430636164356530613165343538316564363632336630653837333066373936623866323963353831373862636363363933326331666333316633396566343462383264336334336233393837333733373366656362313239353232386130346664353061313466333634366438346665316634363763616562393864343633653239373565393935623864326531653339663362663661646463323561653335643635643032363038653033343535333739363665326162636534396238313462656164336331623735373137346165333063303062306334336539396238303439366237326433633133316631633665346663646130356632383131376566396532386334333033626534643863376530343264353862383363633132313934356132633635653739363263616139313835393338663337353764663763636139356366303262356533313934346133613631396130616333663165333462396230313364346332323463346631653730666439666433363938336566383661646535313833363263633833323263306637623631613961633735666238326537623836643638626330663039396130396131346361633561316438643338663961386137306363333766663563633362626432373432666664313436323535633137316536613137383038333237316463653066646536383165643439326362353962303739366432373031373538333864633539303831303765336136656133663961343036623364313133306363656333623437393165343962626332333136303362343661623264306639336434336265373561623961346437313065613934306532383561376231353362306361376364646565366439646365306164383335306334316439306332313562393538383531356166613061633333363561653037653831663362626233366264626561633462333162636231616134653832353635623937376639646164383564363236656566396161613965663864376533666230323033303130303031280e320218113a603933653238313031303462326231376230303935326235613431303264333365646230343363623136646533616433643364363832363066353562623065353837333765613539343463333338663763386362383863373833336663383630630ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038633037626533303561643630623930626132646162333962306565373736306531613232663835373532323534306437306230336233663965343837356133613239616230383038386631343466353765623235326534366261353933383564306536643432373031313764613061626331623362383036393463396135303538623836643631646661303665373136373039633838653866656163376333613065316432356663306165626636613866373666636239396638343566653138313436316361623638353862393763336134303237666233373132623134653663303738396465313764343137363435373765353131343137656231363236393265623037616531653733353532333565396262343339303437623663303136313337383265376464366636303464616134363734363631643533393631663436633366616136623765373637363264333733623562353432623739656139363365666266333361633638313938626232623636316366663637363931366566333732616434633236633231366334626334373837633834656333326431383464373763373531383663303963663364396639313433336361393835333131396261623331666136616432366634353365353936643962646563613638613537363962633866656537613533356438306338633666336566623164666232383861623661393739383534623763653833313234656330643130326166663934633362373466396333373839353863323565623933336464353363316538303561313836353464366439313836393930663635373034323966393630663334653862346637666439393732646362666539323430653037346461326433353561356637656639633161663632656635393832613831373435373862396331356334396563353636626461636233306363666365663039636466653730386164343837343234653963316265363533663965653736363065376439343263316566613564613238366531616464616230366139613333663964653934363739356230323033303130303031280f320218123a603934383235313739643163333934303137306233356432363665346366613830643737386335653966356261653764653833666638636334373431663362653336616336336431653761653439373261656466366263316533636632303638390ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030626531376339393634376365633635613434343037623533353835366233633362616566356235346635363561663538623834353662613863376365353335643561633732633631633434633736623363353763386538363438343136333762653130613833636665333963303932343736643064626534643663646364636437323061333062356266656235316130316131386635383263343566366338363939336663663764663138323933356465316438363930363034346463663335313836393335643962643765656137393532333532626562623465663961653066373636316537306134323337616661393839393636383763613438666366633562303064333830376630353462653066613863336266613432353033386265366566323935313634663232663733623765383863393465613962653861613466336132343563383962396431666435313932663761353062393538623265663831303462333666316266386664326366623238633134323138303063316334376534656639386166313530303730636336643639643137653865623932663138613661613161363532363661343935323338643130336638663639356235376563663337333635306130353230303837343537323162656138313536323739363763383037363336356466386334633761376434646438663263333835306331386662613731656236306536653864666264313936653035333766643730623334346563626363353330646663383364613666656466343964353161393034313935303262613964373063643335663163663363303639346532333534663930363466646266353335656232336332376330613433643062373863316638363763363164393836393564386465663762633261313062623636373463323266363661616230613931383133646466323763646238353263353965663739653162396531613037356661366565323761376533373734646266346232363436353432376536643561623931666537663066336137313738346563613138326235303230333031303030312810320218133a603038393039376465663031623037633764393734613537353532353161366161613061666236623332613534353334336432393138653732626164303433323163313131633234643432373538306633626131653236616139643735653632360ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613561643262373634336130346330353564326638636432353131623135313339666334353537353632313338386534396331313962326633393861636131313066363133393662306338363664653530363335323262623835343032373365313366366439346365316536303433386636616662303061616136343631326637313435653962636538626331613533623934313931336161373663396633613238333366616437636632383563376163326433376639396633633263646234396465346431353165363136373835363466323831663534313432346234316661376335316232613936303232383363376433326565303065623833386461313563333861666339366530363164393763656465323231363566663161613935396631633432373562326430393863343035383661353537396662623363623930303732373034313230613861363661353237306634666366643130383663393233363930613335653766643434356533336163303366313339633638363835353635373063646334616166323231303761366331613434323435366137633663373965653034303930653765356434663636626361363063613166343762366466623534336461633363626631396137373139613866353562366638336234613362386136366436303235366430613436353531666137303234626430353633316238613535383038373732353463326632663236386364633333643264626263666237333365396662653233336262396362353961623331613031343862323365386334323638306666313061663463373961346430383334366662373961393364393632393534386561663162623132343639386661656661346364643732343432633033613034623733333433326637343839303361333235633238336434353661623961653932316165376564333339316535643137383765666463323335343061376238356336393161653837306130376639306231316331336233326365343365616564313562333639363835636534393137376363393835303230333031303030312811320218143a603939666162633461646534653636326336653238323366346139366562323134343034383465356136643064333132623730633036386432326236323936333830376332333361343964626239383361376562623330653737303637373261340ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030386434356332316330633935656636356130323964353263393537666430663835663230313233646130333465363136373164646565353437356630373338326136366336366362346463353035303464646664333735383130383364663864313735373733306564386436663336346466346333366132363531353931393535646132303161323430376661386162396232333133383131323235613064613233306662653338306530393061613536656661346632303265633962343832336636353031643936616336393865626632366161636633656532643166333261373231633934376531303736636633356233373364613164383761333661313532653030653731303131373932323832653832356666313731633538333362383835373062666336646138343439653666393566386231323635616235353531393430333135353364316435373666393363343263306361363061616261633463386464313632643831313466326232313531313538336337323533396665353663343939613932396465336134306130643435633137633538396332643739383863653236656166633932613364333762376561303034326434336530336166613632373162323632353561366363636661653533373138323164383165306230356332353062353966306139303734316130653065383861303965643536633562393738306430393566303930366630623831643531323633393832616165303131333663303732643834346131316436646134623261363163363434653161623137663136666634386565323366656465383435326631653432653264333061303739306332356434323036306531643434613637316132656232336431313466363863373165333366313736646235386136386234333030353462633164323938336132336133326561366666393566613763346438653338306562323936653938623739363865636638343534643831376337333765656135646439323165623836633136633762323933303461346137656362653561336131303230333031303030312812320218153a606537396165396337313933643164326263393433383436346338616135663632323461653835323936366134336239383235383833663766373432633533393562643330393935383761393638363662393233396431656666336165353037610ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623035616265326162303066646430366339353565383637313062306530366631613932363234613438616431636263386466633666323231323936326230633330666462643238346133376335613337363538623633633336656138313632353631613865346639343663626535373232633032383830316630663238316337306638643838633763303061326632653239663539376237393938363965643833353664663537633437626539393434613261616666363530663962346262613064626335336463383830666462623639656134353139303564323830323230326638653239633034613736643237616632656237633534383438356266336634363934633930633431383130383838383433373932383438383335663738313637303764336538643736663465363766353738306263663038383133633535656336333961396264363234313738663565623134376435303061663335316539656631623165333432343834636132363064623763636261653438366631336366323635623562316162363838303636303038303533623230633364656463653737316339613038613033323061613963653435316562396439383361376234396361613130393666386164633039383331386463333865306537636566306438653564353537613036373536383561316339653235366132626339646261333232623362623331373263663731343037376263333830663861306134333361386266613766626663353966366230393365633862663665393339376330396231386531383034306331623536363836343733376338666137653239373935663361343538386464613763326261623439353636356363346139623833366532656239306336326133666361663539316662356638313830346337363138306536323666613236343461376465333435313164366334363637643938393337653237373333663464316539313338383333353465353466643733353137323165373666376235366333343833333838663461366238376232386165626562303230333031303030312813320218163a603962343038383566313362366163316337353336393262613366313739303061333838333165363934613061663937343934623834333838323039636235656662646339386136646162623265316337313833393166633133356264616163330ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396463643863306135336539306333353539353734663636323034313137643362353033653530613336643330393766616338343239653663656364333762623534303731383038663265653938323033356638353161306339626532313736333833613232653338633161626131363866333266393035373063623332333363666536323539383736363661663637623531346361656632316662386466366430666364333363663236303662393264646561353533366236303638643836373832653339626435633338343435393931643431396237643165633038353939343132633039343964316332343062333563313464633535323734646261373166666165393336313235613566383139663534313332653234333964346163353539373939366563653835653133646666333336316639313331663536636561633562396635353262343963663666396139616336653564636532646233363934363266393361663830653562353662366538626566613136326130363162346137363839326264633834363437333036633630303835386664643237303332373663326337303434303139386566643766653335343563663261623538306337346366643634343561616637626437663734356363323532656162643236356561626565383632343137313034653639343861353537353666646332323264663061313031353234646531633363303863636630343330313165633766653936346564643834353161313330313437633037333633613335663131666465656638663261326237363137353762343335386666383962373561343864363762646336303930363933653062623836373965636262393366666462336633656439366265633933656634363536653337313661623837636534366361386531323539633866656464653866326631656130663365623263343865393635353164653132333330333435373235663435656436396338353735623531363833616661343732363231383236646232326262326431633466316533363436346139303230333031303030312814320218173a60346630613033333466393737363738313632663830643936376637323139313431333630633062376637663033316233376336396536323137333933336564616434366263626139373636376565373262666435613933346261313532326330")));t.MAINNET_ADDRESS_BOOK=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(1166)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._nodeAddresses=[],null!=t.nodeAddresses&&this.setNodeAddresses(t.nodeAddresses)}return(0,a.default)(e,[{key:"nodeAddresses",get:function(){return this._nodeAddresses}},{key:"setNodeAddresses",value:function(e){return this._nodeAddresses=e,this}},{key:"_toProtobuf",value:function(){return{nodeAddress:this._nodeAddresses.map((function(e){return e._toProtobuf()}))}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{nodeAddresses:this._nodeAddresses.map((function(e){return e.toJSON()}))}}}],[{key:"_fromProtobuf",value:function(t){return new e({nodeAddresses:null!=t.nodeAddress?t.nodeAddress.map((function(e){return i.default._fromProtobuf(e)})):void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(14)),c=r(n(1167)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(95));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._publicKey=null,null!=t.publicKey&&this.setPublicKey(t.publicKey),this._nodeId=null,null!=t.nodeId&&this.setNodeId(t.nodeId),this._accountId=null,null!=t.accountId&&this.setAccountId(t.accountId),this._certHash=null,null!=t.certHash&&this.setCertHash(t.certHash),this._addresses=[],null!=t.addresses&&this.setAddresses(t.addresses),this._description=null,null!=t.description&&this.setDescription(t.description),this._stake=null,null!=t.stake&&this.setStake(t.stake)}return(0,i.default)(e,[{key:"publicKey",get:function(){return this._publicKey}},{key:"setPublicKey",value:function(e){return this._publicKey=e,this}},{key:"nodeId",get:function(){return this._nodeId}},{key:"setNodeId",value:function(e){return this._nodeId=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?u.default.fromString(e):e.clone(),this}},{key:"certHash",get:function(){return this._certHash}},{key:"setCertHash",value:function(e){return this._certHash=e,this}},{key:"addresses",get:function(){return this._addresses}},{key:"setAddresses",value:function(e){return this._addresses=e,this}},{key:"description",get:function(){return this._description}},{key:"setDescription",value:function(e){return this._description=e,this}},{key:"stake",get:function(){return this._stake}},{key:"setStake",value:function(e){return this._stake=e,this}},{key:"_toProtobuf",value:function(){return{RSA_PubKey:this._publicKey,nodeId:this._nodeId,nodeAccountId:null!=this._accountId?this._accountId._toProtobuf():null,nodeCertHash:this._certHash,serviceEndpoint:this._addresses.map((function(e){return e._toProtobuf()})),description:this._description,stake:this._stake}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{publicKey:this._publicKey,nodeId:null!=this._nodeId?this._nodeId.toString():null,accountId:null!=this._accountId?this._accountId.toString():null,certHash:null!=this._certHash?s.decode(this._certHash):null,addresses:this._addresses.map((function(e){return e.toJSON()})),description:this._description,stake:null!=this._stake?this._stake.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({publicKey:null!=t.RSA_PubKey?t.RSA_PubKey:void 0,nodeId:null!=t.nodeId?t.nodeId:void 0,accountId:null!=t.nodeAccountId?u.default._fromProtobuf(t.nodeAccountId):void 0,certHash:null!=t.nodeCertHash?t.nodeCertHash:void 0,addresses:null!=t.serviceEndpoint?t.serviceEndpoint.map((function(e){return c.default._fromProtobuf(e)})):void 0,description:null!=t.description?t.description:void 0,stake:null!=t.stake?t.stake:void 0})}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(1168)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._address=null,null!=t.address&&this.setAddress(t.address),this._port=null,null!=t.port&&this.setPort(t.port)}return(0,a.default)(e,[{key:"address",get:function(){return this.address}},{key:"setAddress",value:function(e){return this._address=e,this}},{key:"port",get:function(){return this._port}},{key:"setPort",value:function(e){return this._port=e,this}},{key:"_toProtobuf",value:function(){return{ipAddressV4:null!=this._address?this._address._toProtobuf():null,port:this._port}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{address:null!=this._address?this._address.toString():null,port:null!=this._port?this._port.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({address:null!=t.ipAddressV4?i.default._fromProtobuf(t.ipAddressV4):void 0,port:null!=t.port?t.port:void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(1169)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._network=null,null!=t.network&&this.setNetwork(t.network),this._host=null,null!=t.host&&this.setHost(t.host)}return(0,a.default)(e,[{key:"newtork",get:function(){return this._network}},{key:"setNetwork",value:function(e){return this._network=e,this}},{key:"host",get:function(){return this._host}},{key:"setHost",value:function(e){return this._host=e,this}},{key:"_toProtobuf",value:function(){return Uint8Array.of(null!=this._network&&null!=this._network._left?this._network._left:0,null!=this._network&&null!=this._network.right?this._network.right:0,null!=this._host&&null!=this._host.left?this._host.left:0,null!=this._host&&null!=this._host.right?this._host.right:0)}},{key:"toString",value:function(){return null!=this._network&&null!=this._host?"".concat(this._network.toString(),".").concat(this._host.toString()):""}}],[{key:"_fromProtobuf",value:function(t){return new e({network:(new i.default).setLeft(t[0]).setRight(t[1]),host:(new i.default).setLeft(t[2]).setRight(t[3])})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._left=null,null!=t.left&&this.setLeft(t.left),this._right=null,null!=t.right&&this.setRight(t.right)}return(0,a.default)(e,[{key:"left",get:function(){return this._left}},{key:"setLeft",value:function(e){return this._left=e,this}},{key:"right",get:function(){return this._right}},{key:"setRight",value:function(e){return this._right=e,this}},{key:"toString",value:function(){return null!=this._left&&null!=this._right?"".concat(this._left.toString(),".").concat(this._right.toString()):""}}]),e}();t.default=i},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(1171));function l(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;r--){var o=this._nodes[r];n.includes(o.address.toString())||t.push(r)}return t}},{key:"getNextMirrorNode",value:function(){if(null==this._createNetworkChannel)throw new Error("mirror network not supported on browser");return this._getNumberOfMostHealthyNodes(1)[0]}}]),n}(r(n(558)).default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),t.call(this,e)}return(0,a.default)(n,[{key:"getKey",value:function(){return this._address.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}}]),n}(r(n(557)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(1173));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var y=function(e){(0,s.default)(n,e);var t=h(n);function n(e){var r;return(0,u.default)(this,n),(r=t.call(this))._address=e,r}return(0,c.default)(n,[{key:"close",value:function(){}},{key:"_createUnaryClient",value:function(e){var t=this;return function(){var n=(0,i.default)(a.default.mark((function n(r,o,i){var u,c,s;return a.default.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,fetch("".concat(t._address,"/proto.").concat(e,"/").concat(r.name),{method:"POST",headers:{"content-type":"application/grpc-web+proto","x-user-agent":"hedera-sdk-js/v2","x-grpc-web":"1"},body:(0,d.encodeRequest)(o)});case 2:return u=n.sent,n.next=5,u.arrayBuffer();case 5:c=n.sent,s=(0,d.decodeUnaryResponse)(c),i(null,s);case 8:case"end":return n.stop()}}),n)})));return function(e,t,r){return n.apply(this,arguments)}}()}}]),n}(d.default);t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.decodeUnaryResponse=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength,r=new DataView(e,t,n),o=0,i=null,u=0;for(;o>7,f=r.getUint32(o+1),d=o+5;if(d+f>r.byteLength)throw new Error("(BUG) unexpected frame length past the boundary");var p=new Uint8Array(e,r.byteOffset+d,f);if(0===l){if(null!=i)throw new Error("(BUG) unexpectedly received more than one data frame");i=p}else{if(1!==l)throw new Error("(BUG) unexpected frame type: ".concat(l));var h=s.decode(p),y=h.split(":"),b=(0,a.default)(y,2),m=b[0],v=b[1];if("grpc-status"!==m)throw new Error("(BUG) unhandled trailer, ".concat(h));u=parseInt(v)}o+=f+5}if(0!==u)throw new Error("(BUG) unhandled grpc-status: ".concat(u));if(null==i)throw new Error("(BUG) unexpectedly received no response");return i},t.default=void 0,t.encodeRequest=function(e){var t=new ArrayBuffer(e.byteLength+5);return new DataView(t,1,4).setUint32(0,e.length),new Uint8Array(t,5).set(e),t};var a=r(n(11)),i=r(n(1)),u=r(n(2)),c=n(34),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(95));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(){(0,i.default)(this,e),this._crypto=null,this._smartContract=null,this._file=null,this._consensus=null,this._freeze=null,this._network=null,this._token=null,this._schedule=null}return(0,u.default)(e,[{key:"close",value:function(){throw new Error("not implemented")}},{key:"crypto",get:function(){return null!=this._crypto||(this._crypto=c.CryptoService.create(this._createUnaryClient("CryptoService"))),this._crypto}},{key:"smartContract",get:function(){return null!=this._smartContract||(this._smartContract=c.SmartContractService.create(this._createUnaryClient("SmartContractService"))),this._smartContract}},{key:"file",get:function(){return null!=this._file||(this._file=c.FileService.create(this._createUnaryClient("FileService"))),this._file}},{key:"consensus",get:function(){return null!=this._consensus||(this._consensus=c.ConsensusService.create(this._createUnaryClient("ConsensusService"))),this._consensus}},{key:"freeze",get:function(){return null!=this._freeze||(this._freeze=c.FreezeService.create(this._createUnaryClient("FreezeService"))),this._freeze}},{key:"network",get:function(){return null!=this._network||(this._network=c.NetworkService.create(this._createUnaryClient("NetworkService"))),this._network}},{key:"token",get:function(){return null!=this._token||(this._token=c.TokenService.create(this._createUnaryClient("TokenService"))),this._token}},{key:"schedule",get:function(){return null!=this._schedule||(this._schedule=c.ScheduleService.create(this._createUnaryClient("ScheduleService"))),this._schedule}},{key:"_createUnaryClient",value:function(e){throw new Error("not implemented")}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(1175)(n(1176)),o=n(12).Buffer,a=n(79),i=n(559).AbiCoder,u=n(559).ParamType,c=new i((function(e,t){return!e.match(/^u?int/)||Array.isArray(t)||t&&"object"===(0,r.default)(t)&&"BN"===t.constructor.name?t:t.toString()}));function s(){}var l=function(){};l.prototype.encodeFunctionSignature=function(e){return("function"==typeof e||"object"===(0,r.default)(e)&&e)&&(e=a._jsonInterfaceMethodToString(e)),a.sha3(e).slice(0,10)},l.prototype.encodeEventSignature=function(e){return("function"==typeof e||"object"===(0,r.default)(e)&&e)&&(e=a._jsonInterfaceMethodToString(e)),a.sha3(e)},l.prototype.encodeParameter=function(e,t){return this.encodeParameters([e],[t])},l.prototype.encodeParameters=function(e,t){var n=this;return e=n.mapTypes(e),t=t.map((function(t,o){var a=e[o];if("object"===(0,r.default)(a)&&a.type&&(a=a.type),t=n.formatParam(a,t),"string"==typeof a&&a.includes("tuple")){!function e(t,r){if("array"===t.name)return r.map((function(n){return e(c._getCoder(u.from(t.type.replace("[]",""))),n)}));t.coders.forEach((function(t,o){"tuple"===t.name?e(t,r[o]):r[o]=n.formatParam(t.name,r[o])}))}(c._getCoder(u.from(a)),t)}return t})),c.encode(e,t)},l.prototype.mapTypes=function(e){var t=this,n=[];return e.forEach((function(e){if("object"===(0,r.default)(e)&&"function"===e.type&&(e=Object.assign({},e,{type:"bytes24"})),t.isSimplifiedStructFormat(e)){var o=Object.keys(e)[0];n.push(Object.assign(t.mapStructNameAndType(o),{components:t.mapStructToCoderFormat(e[o])}))}else n.push(e)})),n},l.prototype.isSimplifiedStructFormat=function(e){return"object"===(0,r.default)(e)&&void 0===e.components&&void 0===e.name},l.prototype.mapStructNameAndType=function(e){var t="tuple";return e.indexOf("[]")>-1&&(t="tuple[]",e=e.slice(0,-2)),{type:t,name:e}},l.prototype.mapStructToCoderFormat=function(e){var t=this,n=[];return Object.keys(e).forEach((function(o){"object"!==(0,r.default)(e[o])?n.push({name:o,type:e[o]}):n.push(Object.assign(t.mapStructNameAndType(o),{components:t.mapStructToCoderFormat(e[o])}))})),n},l.prototype.formatParam=function(e,t){var n=this,r=new RegExp(/^bytes([0-9]*)$/),i=new RegExp(/^bytes([0-9]*)\[\]$/),u=new RegExp(/^(u?int)([0-9]*)$/),c=new RegExp(/^(u?int)([0-9]*)\[\]$/);if(a.isBN(t)||a.isBigNumber(t))return t.toString(10);if(e.match(i)||e.match(c))return t.map((function(t){return n.formatParam(e.replace("[]",""),t)}));var s=e.match(u);if(s){var l=parseInt(s[2]||"256");l/80&&(!t||"0x"===t||"0X"===t))throw new Error("Returned values aren't valid, did it run Out of Gas? You might also see this error if you are not using the correct ABI for the contract you are retrieving data from, requesting data from a block number that does not exist, or querying a node which is not fully synced.");var o=c.decode(this.mapTypes(e),"0x"+t.replace(/0x/i,""),n),a=new s;return a.__length__=0,e.forEach((function(e,t){var n=o[a.__length__],i="object"===(0,r.default)(e)&&e.type&&"string"===e.type;n="0x"!==n||i||"string"==typeof e&&"string"===e?n:null,a[t]=n,("function"==typeof e||e&&"object"===(0,r.default)(e))&&e.name&&(a[e.name]=n),a.__length__++})),a},l.prototype.decodeLog=function(e,t,n){var r=this;n=Array.isArray(n)?n:[n],t=t||"";var o=[],a=[],i=0;e.forEach((function(e,t){e.indexed?(a[t]=["bool","int","uint","address","fixed","ufixed"].find((function(t){return-1!==e.type.indexOf(t)}))?r.decodeParameter(e.type,n[i]):n[i],i++):o[t]=e}));var u=t,c=u?this.decodeParametersWith(o,u,!0):[],l=new s;return l.__length__=0,e.forEach((function(e,t){l[t]="string"===e.type?"":null,void 0!==c[t]&&(l[t]=c[t]),void 0!==a[t]&&(l[t]=a[t]),e.name&&(l[e.name]=l[t]),l.__length__++})),l};var f=new l;e.exports=f},function(e,t,n){"use strict";e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){"use strict";function r(t){return e.exports=r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,r(t)}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.AddressCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=n(199),l=n(47);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e){(0,i.default)(n,e);var t=f(n);function n(e){return(0,o.default)(this,n),t.call(this,"address","address",e,!1)}return(0,a.default)(n,[{key:"encode",value:function(e,t){try{(0,s.getAddress)(t)}catch(e){this._throwError(e.message,t)}return e.writeValue(t)}},{key:"decode",value:function(e){return(0,s.getAddress)((0,l.hexZeroPad)(e.readValue().toHexString(),20))}}]),n}(n(74).Coder);t.AddressCoder=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.AnonymousCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(e){var r;return(0,o.default)(this,n),(r=t.call(this,e.name,e.type,void 0,e.dynamic)).coder=e,r}return(0,a.default)(n,[{key:"encode",value:function(e,t){return this.coder.encode(e,t)}},{key:"decode",value:function(e){return this.coder.decode(e)}}]),n}(n(74).Coder);t.AnonymousCoder=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.BooleanCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(e){return(0,o.default)(this,n),t.call(this,"bool","bool",e,!1)}return(0,a.default)(n,[{key:"encode",value:function(e,t){return e.writeValue(t?1:0)}},{key:"decode",value:function(e){return e.coerce(this.type,!e.readValue().isZero())}}]),n}(n(74).Coder);t.BooleanCoder=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.FixedBytesCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=n(47);function l(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var f=function(e){(0,i.default)(n,e);var t=l(n);function n(e,r){var a;(0,o.default)(this,n);var i="bytes"+String(e);return(a=t.call(this,i,i,r,!1)).size=e,a}return(0,a.default)(n,[{key:"encode",value:function(e,t){var n=(0,s.arrayify)(t);return n.length!==this.size&&this._throwError("incorrect data length",t),e.writeBytes(n)}},{key:"decode",value:function(e){return e.coerce(this.name,(0,s.hexlify)(e.readBytes(this.size)))}}]),n}(n(74).Coder);t.FixedBytesCoder=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.NullCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(e){return(0,o.default)(this,n),t.call(this,"null","",e,!1)}return(0,a.default)(n,[{key:"encode",value:function(e,t){return null!=t&&this._throwError("not null",t),e.writeBytes([])}},{key:"decode",value:function(e){return e.readBytes(0),e.coerce(this.name,null)}}]),n}(n(74).Coder);t.NullCoder=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.NumberCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=n(101),l=n(259);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e){(0,i.default)(n,e);var t=f(n);function n(e,r,a){var i;(0,o.default)(this,n);var u=(r?"int":"uint")+8*e;return(i=t.call(this,u,u,a,!1)).size=e,i.signed=r,i}return(0,a.default)(n,[{key:"encode",value:function(e,t){var n=s.BigNumber.from(t),r=l.MaxUint256.mask(8*e.wordSize);if(this.signed){var o=r.mask(8*this.size-1);(n.gt(o)||n.lt(o.add(l.One).mul(l.NegativeOne)))&&this._throwError("value out-of-bounds",t)}else(n.lt(l.Zero)||n.gt(r.mask(8*this.size)))&&this._throwError("value out-of-bounds",t);return n=n.toTwos(8*this.size).mask(8*this.size),this.signed&&(n=n.fromTwos(8*this.size).toTwos(8*e.wordSize)),e.writeValue(n)}},{key:"decode",value:function(e){var t=e.readValue().mask(8*this.size);return this.signed&&(t=t.fromTwos(8*this.size)),e.coerce(this.name,t)}}]),n}(n(74).Coder);t.NumberCoder=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.StringCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(20)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=n(230);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var d=function(e){(0,u.default)(n,e);var t=f(n);function n(e){return(0,o.default)(this,n),t.call(this,"string",e)}return(0,a.default)(n,[{key:"encode",value:function(e,t){return(0,i.default)((0,s.default)(n.prototype),"encode",this).call(this,e,(0,l.toUtf8Bytes)(t))}},{key:"decode",value:function(e){return(0,l.toUtf8String)((0,i.default)((0,s.default)(n.prototype),"decode",this).call(this,e))}}]),n}(n(562).DynamicBytesCoder);t.StringCoder=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatBytes32String=function(e){var t=(0,a.toUtf8Bytes)(e);if(t.length>31)throw new Error("bytes32 string must be less than 32 bytes");return(0,o.hexlify)((0,o.concat)([t,r.HashZero]).slice(0,32))},t.parseBytes32String=function(e){var t=(0,o.arrayify)(e);if(32!==t.length)throw new Error("invalid bytes32 - not 32 bytes long");if(0!==t[31])throw new Error("invalid bytes32 string - no null terminator");var n=31;for(;0===t[n-1];)n--;return(0,a.toUtf8String)(t.slice(0,n))};var r=n(259),o=n(47),a=n(301)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="strings/5.5.0"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._nameprepTableA1=h,t._nameprepTableB2=y,t._nameprepTableC=b,t.nameprep=function(e){if(e.match(/^[a-z0-9-]*$/i)&&e.length<=59)return e.toLowerCase();var t=(0,r.toUtf8CodePoints)(e);n=t.map((function(e){if(c.indexOf(e)>=0)return[];if(e>=65024&&e<=65039)return[];var t=y(e);return t||[e]})),t=n.reduce((function(e,t){return t.forEach((function(t){e.push(t)})),e}),[]),(t=(0,r.toUtf8CodePoints)((0,r._toUtf8String)(t),r.UnicodeNormalizationForm.NFKC)).forEach((function(e){if(b(e))throw new Error("STRINGPREP_CONTAINS_PROHIBITED")})),t.forEach((function(e){if(h(e))throw new Error("STRINGPREP_CONTAINS_UNASSIGNED")}));var n;var o=(0,r._toUtf8String)(t);if("-"===o.substring(0,1)||"--"===o.substring(2,4)||"-"===o.substring(o.length-1))throw new Error("invalid hyphen");if(o.length>63)throw new Error("too long");return o};var r=n(301);function o(e,t){t||(t=function(e){return[parseInt(e,16)]});var n=0,r={};return e.split(",").forEach((function(e){var o=e.split(":");n+=parseInt(o[0],16),r[n]=t(o[1])})),r}function a(e){var t=0;return e.split(",").map((function(e){var n=e.split("-");return 1===n.length?n[1]="0":""===n[1]&&(n[1]="1"),{l:t+parseInt(n[0],16),h:t=parseInt(n[1],16)}}))}function i(e,t){for(var n=0,r=0;r=(n+=o.l)&&e<=n+o.h&&(e-n)%(o.d||1)==0){if(o.e&&-1!==o.e.indexOf(e-n))continue;return o}}return null}var u=a("221,13-1b,5f-,40-10,51-f,11-3,3-3,2-2,2-4,8,2,15,2d,28-8,88,48,27-,3-5,11-20,27-,8,28,3-5,12,18,b-a,1c-4,6-16,2-d,2-2,2,1b-4,17-9,8f-,10,f,1f-2,1c-34,33-14e,4,36-,13-,6-2,1a-f,4,9-,3-,17,8,2-2,5-,2,8-,3-,4-8,2-3,3,6-,16-6,2-,7-3,3-,17,8,3,3,3-,2,6-3,3-,4-a,5,2-6,10-b,4,8,2,4,17,8,3,6-,b,4,4-,2-e,2-4,b-10,4,9-,3-,17,8,3-,5-,9-2,3-,4-7,3-3,3,4-3,c-10,3,7-2,4,5-2,3,2,3-2,3-2,4-2,9,4-3,6-2,4,5-8,2-e,d-d,4,9,4,18,b,6-3,8,4,5-6,3-8,3-3,b-11,3,9,4,18,b,6-3,8,4,5-6,3-6,2,3-3,b-11,3,9,4,18,11-3,7-,4,5-8,2-7,3-3,b-11,3,13-2,19,a,2-,8-2,2-3,7,2,9-11,4-b,3b-3,1e-24,3,2-,3,2-,2-5,5,8,4,2,2-,3,e,4-,6,2,7-,b-,3-21,49,23-5,1c-3,9,25,10-,2-2f,23,6,3,8-2,5-5,1b-45,27-9,2a-,2-3,5b-4,45-4,53-5,8,40,2,5-,8,2,5-,28,2,5-,20,2,5-,8,2,5-,8,8,18,20,2,5-,8,28,14-5,1d-22,56-b,277-8,1e-2,52-e,e,8-a,18-8,15-b,e,4,3-b,5e-2,b-15,10,b-5,59-7,2b-555,9d-3,5b-5,17-,7-,27-,7-,9,2,2,2,20-,36,10,f-,7,14-,4,a,54-3,2-6,6-5,9-,1c-10,13-1d,1c-14,3c-,10-6,32-b,240-30,28-18,c-14,a0,115-,3,66-,b-76,5,5-,1d,24,2,5-2,2,8-,35-2,19,f-10,1d-3,311-37f,1b,5a-b,d7-19,d-3,41,57-,68-4,29-3,5f,29-37,2e-2,25-c,2c-2,4e-3,30,78-3,64-,20,19b7-49,51a7-59,48e-2,38-738,2ba5-5b,222f-,3c-94,8-b,6-4,1b,6,2,3,3,6d-20,16e-f,41-,37-7,2e-2,11-f,5-b,18-,b,14,5-3,6,88-,2,bf-2,7-,7-,7-,4-2,8,8-9,8-2ff,20,5-b,1c-b4,27-,27-cbb1,f7-9,28-2,b5-221,56,48,3-,2-,3-,5,d,2,5,3,42,5-,9,8,1d,5,6,2-2,8,153-3,123-3,33-27fd,a6da-5128,21f-5df,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3,2-1d,61-ff7d"),c="ad,34f,1806,180b,180c,180d,200b,200c,200d,2060,feff".split(",").map((function(e){return parseInt(e,16)})),s=[{h:25,s:32,l:65},{h:30,s:32,e:[23],l:127},{h:54,s:1,e:[48],l:64,d:2},{h:14,s:1,l:57,d:2},{h:44,s:1,l:17,d:2},{h:10,s:1,e:[2,6,8],l:61,d:2},{h:16,s:1,l:68,d:2},{h:84,s:1,e:[18,24,66],l:19,d:2},{h:26,s:32,e:[17],l:435},{h:22,s:1,l:71,d:2},{h:15,s:80,l:40},{h:31,s:32,l:16},{h:32,s:1,l:80,d:2},{h:52,s:1,l:42,d:2},{h:12,s:1,l:55,d:2},{h:40,s:1,e:[38],l:15,d:2},{h:14,s:1,l:48,d:2},{h:37,s:48,l:49},{h:148,s:1,l:6351,d:2},{h:88,s:1,l:160,d:2},{h:15,s:16,l:704},{h:25,s:26,l:854},{h:25,s:32,l:55915},{h:37,s:40,l:1247},{h:25,s:-119711,l:53248},{h:25,s:-119763,l:52},{h:25,s:-119815,l:52},{h:25,s:-119867,e:[1,4,5,7,8,11,12,17],l:52},{h:25,s:-119919,l:52},{h:24,s:-119971,e:[2,7,8,17],l:52},{h:24,s:-120023,e:[2,7,13,15,16,17],l:52},{h:25,s:-120075,l:52},{h:25,s:-120127,l:52},{h:25,s:-120179,l:52},{h:25,s:-120231,l:52},{h:25,s:-120283,l:52},{h:25,s:-120335,l:52},{h:24,s:-119543,e:[17],l:56},{h:24,s:-119601,e:[17],l:58},{h:24,s:-119659,e:[17],l:58},{h:24,s:-119717,e:[17],l:58},{h:24,s:-119775,e:[17],l:58}],l=o("b5:3bc,c3:ff,7:73,2:253,5:254,3:256,1:257,5:259,1:25b,3:260,1:263,2:269,1:268,5:26f,1:272,2:275,7:280,3:283,5:288,3:28a,1:28b,5:292,3f:195,1:1bf,29:19e,125:3b9,8b:3b2,1:3b8,1:3c5,3:3c6,1:3c0,1a:3ba,1:3c1,1:3c3,2:3b8,1:3b5,1bc9:3b9,1c:1f76,1:1f77,f:1f7a,1:1f7b,d:1f78,1:1f79,1:1f7c,1:1f7d,107:63,5:25b,4:68,1:68,1:68,3:69,1:69,1:6c,3:6e,4:70,1:71,1:72,1:72,1:72,7:7a,2:3c9,2:7a,2:6b,1:e5,1:62,1:63,3:65,1:66,2:6d,b:3b3,1:3c0,6:64,1b574:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3"),f=o("179:1,2:1,2:1,5:1,2:1,a:4f,a:1,8:1,2:1,2:1,3:1,5:1,3:1,4:1,2:1,3:1,4:1,8:2,1:1,2:2,1:1,2:2,27:2,195:26,2:25,1:25,1:25,2:40,2:3f,1:3f,33:1,11:-6,1:-9,1ac7:-3a,6d:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,b:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,c:-8,2:-8,2:-8,2:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,49:-8,1:-8,1:-4a,1:-4a,d:-56,1:-56,1:-56,1:-56,d:-8,1:-8,f:-8,1:-8,3:-7"),d=o("df:00730073,51:00690307,19:02BC006E,a7:006A030C,18a:002003B9,16:03B903080301,20:03C503080301,1d7:05650582,190f:00680331,1:00740308,1:0077030A,1:0079030A,1:006102BE,b6:03C50313,2:03C503130300,2:03C503130301,2:03C503130342,2a:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,3:1F7003B9,1:03B103B9,1:03AC03B9,2:03B10342,1:03B1034203B9,5:03B103B9,6:1F7403B9,1:03B703B9,1:03AE03B9,2:03B70342,1:03B7034203B9,5:03B703B9,6:03B903080300,1:03B903080301,3:03B90342,1:03B903080342,b:03C503080300,1:03C503080301,1:03C10313,2:03C50342,1:03C503080342,b:1F7C03B9,1:03C903B9,1:03CE03B9,2:03C90342,1:03C9034203B9,5:03C903B9,ac:00720073,5b:00B00063,6:00B00066,d:006E006F,a:0073006D,1:00740065006C,1:0074006D,124f:006800700061,2:00610075,2:006F0076,b:00700061,1:006E0061,1:03BC0061,1:006D0061,1:006B0061,1:006B0062,1:006D0062,1:00670062,3:00700066,1:006E0066,1:03BC0066,4:0068007A,1:006B0068007A,1:006D0068007A,1:00670068007A,1:00740068007A,15:00700061,1:006B00700061,1:006D00700061,1:006700700061,8:00700076,1:006E0076,1:03BC0076,1:006D0076,1:006B0076,1:006D0076,1:00700077,1:006E0077,1:03BC0077,1:006D0077,1:006B0077,1:006D0077,1:006B03C9,1:006D03C9,2:00620071,3:00632215006B0067,1:0063006F002E,1:00640062,1:00670079,2:00680070,2:006B006B,1:006B006D,9:00700068,2:00700070006D,1:00700072,2:00730076,1:00770062,c723:00660066,1:00660069,1:0066006C,1:006600660069,1:00660066006C,1:00730074,1:00730074,d:05740576,1:05740565,1:0574056B,1:057E0576,1:0574056D",(function(e){if(e.length%4!=0)throw new Error("bad data");for(var t=[],n=0;n1&&_.throwArgumentError("multiple matching functions","name",n),this.functions[r[0]]}var o=this.functions[m.FunctionFragment.fromString(e).format()];return o||_.throwArgumentError("no matching function","signature",e),o}},{key:"getEvent",value:function(e){if((0,f.isHexString)(e)){var t=e.toLowerCase();for(var n in this.events)if(t===this.getEventTopic(n))return this.events[n];_.throwArgumentError("no matching event","topichash",t)}if(-1===e.indexOf("(")){var r=e.trim(),o=Object.keys(this.events).filter((function(e){return e.split("(")[0]===r}));return 0===o.length?_.throwArgumentError("no matching event","name",r):o.length>1&&_.throwArgumentError("multiple matching events","name",r),this.events[o[0]]}var a=this.events[m.EventFragment.fromString(e).format()];return a||_.throwArgumentError("no matching event","signature",e),a}},{key:"getSighash",value:function(e){return"string"==typeof e&&(e=this.getFunction(e)),(0,h.getStatic)(this.constructor,"getSighash")(e)}},{key:"getEventTopic",value:function(e){return"string"==typeof e&&(e=this.getEvent(e)),(0,h.getStatic)(this.constructor,"getEventTopic")(e)}},{key:"_decodeParams",value:function(e,t){return this._abiCoder.decode(e,t)}},{key:"_encodeParams",value:function(e,t){return this._abiCoder.encode(e,t)}},{key:"encodeDeploy",value:function(e){return this._encodeParams(this.deploy.inputs,e||[])}},{key:"decodeFunctionData",value:function(e,t){"string"==typeof e&&(e=this.getFunction(e));var n=(0,f.arrayify)(t);return(0,f.hexlify)(n.slice(0,4))!==this.getSighash(e)&&_.throwArgumentError("data signature does not match function ".concat(e.name,"."),"data",(0,f.hexlify)(n)),this._decodeParams(e.inputs,n.slice(4))}},{key:"encodeFunctionData",value:function(e,t){return"string"==typeof e&&(e=this.getFunction(e)),(0,f.hexlify)((0,f.concat)([this.getSighash(e),this._encodeParams(e.inputs,t||[])]))}},{key:"decodeFunctionResult",value:function(e,t){"string"==typeof e&&(e=this.getFunction(e));var n=(0,f.arrayify)(t),r=null,o=null;switch(n.length%this._abiCoder._getWordSize()){case 0:try{return this._abiCoder.decode(e.outputs,n)}catch(e){}break;case 4:"0x08c379a0"===(0,f.hexlify)(n.slice(0,4))&&(o="Error(string)",r=this._abiCoder.decode(["string"],n.slice(4))[0])}return _.throwError("call revert exception",v.Logger.errors.CALL_EXCEPTION,{method:e.format(),errorSignature:o,errorArgs:[r],reason:r})}},{key:"encodeFunctionResult",value:function(e,t){return"string"==typeof e&&(e=this.getFunction(e)),(0,f.hexlify)(this._abiCoder.encode(e.outputs,t||[]))}},{key:"encodeFilterTopics",value:function(e,t){var n=this;"string"==typeof e&&(e=this.getEvent(e)),t.length>e.inputs.length&&_.throwError("too many arguments for "+e.format(),v.Logger.errors.UNEXPECTED_ARGUMENT,{argument:"values",value:t});var r=[];e.anonymous||r.push(this.getEventTopic(e));var o=function(e,t){return"string"===e.type?(0,d.id)(t):"bytes"===e.type?(0,p.keccak256)((0,f.hexlify)(t)):("address"===e.type&&n._abiCoder.encode(["address"],[t]),(0,f.hexZeroPad)((0,f.hexlify)(t),32))};for(t.forEach((function(t,n){var a=e.inputs[n];a.indexed?null==t?r.push(null):"array"===a.baseType||"tuple"===a.baseType?_.throwArgumentError("filtering with tuples or arrays not supported","contract."+a.name,t):Array.isArray(t)?r.push(t.map((function(e){return o(a,e)}))):r.push(o(a,t)):null!=t&&_.throwArgumentError("cannot filter non-indexed parameters; must be null","contract."+a.name,t)}));r.length&&null===r[r.length-1];)r.pop();return r}},{key:"encodeEventLog",value:function(e,t){var n=this;"string"==typeof e&&(e=this.getEvent(e));var r=[],o=[],a=[];return e.anonymous||r.push(this.getEventTopic(e)),t.length!==e.inputs.length&&_.throwArgumentError("event arguments/values mismatch","values",t),e.inputs.forEach((function(e,i){var u=t[i];if(e.indexed)if("string"===e.type)r.push((0,d.id)(u));else if("bytes"===e.type)r.push((0,p.keccak256)(u));else{if("tuple"===e.baseType||"array"===e.baseType)throw new Error("not implemented");r.push(n._abiCoder.encode([e.type],[u]))}else o.push(e),a.push(u)})),{data:this._abiCoder.encode(o,a),topics:r}}},{key:"decodeEventLog",value:function(e,t,n){if("string"==typeof e&&(e=this.getEvent(e)),null!=n&&!e.anonymous){var r=this.getEventTopic(e);(0,f.isHexString)(n[0],32)&&n[0].toLowerCase()===r||_.throwError("fragment/topic mismatch",v.Logger.errors.INVALID_ARGUMENT,{argument:"topics[0]",expected:r,value:n[0]}),n=n.slice(1)}var o=[],a=[],i=[];e.inputs.forEach((function(e,t){e.indexed?"string"===e.type||"bytes"===e.type||"tuple"===e.baseType||"array"===e.baseType?(o.push(m.ParamType.fromObject({type:"bytes32",name:e.name})),i.push(!0)):(o.push(e),i.push(!1)):(a.push(e),i.push(!1))}));var u=null!=n?this._abiCoder.decode(o,(0,f.concat)(n)):null,c=this._abiCoder.decode(a,t,!0),s=[],l=0,d=0;e.inputs.forEach((function(e,t){if(e.indexed)if(null==u)s[t]=new A({_isIndexed:!0,hash:null});else if(i[t])s[t]=new A({_isIndexed:!0,hash:u[d++]});else try{s[t]=u[d++]}catch(e){s[t]=e}else try{s[t]=c[l++]}catch(e){s[t]=e}if(e.name&&null==s[e.name]){var n=s[t];n instanceof Error?Object.defineProperty(s,e.name,{get:function(){throw T("property ".concat(JSON.stringify(e.name)),n)}}):s[e.name]=n}}));for(var p=function(e){var t=s[e];t instanceof Error&&Object.defineProperty(s,e,{get:function(){throw T("index ".concat(e),t)}})},h=0;h256||t[2]&&t[2]!==String(r))&&b.throwArgumentError("invalid numeric width","type",e);var o=_.mask(n?r-1:r),a=n?o.add(k).mul(v):g;return function(t){var n=c.BigNumber.from(t);return(n.lt(a)||n.gt(o))&&b.throwArgumentError("value out-of-bounds for ".concat(e),"value",t),(0,s.hexZeroPad)(n.toTwos(256).toHexString(),32)}}var i=e.match(/^bytes(\d+)$/);if(i){var f=parseInt(i[1]);return(0===f||f>32||i[1]!==String(f))&&b.throwArgumentError("invalid bytes width","type",e),function(t){return(0,s.arrayify)(t).length!==f&&b.throwArgumentError("invalid length for ".concat(e),"value",t),function(e){var t=(0,s.arrayify)(e),n=t.length%32;return n?(0,s.hexConcat)([t,m.slice(n)]):(0,s.hexlify)(t)}(t)}}switch(e){case"address":return function(e){return(0,s.hexZeroPad)((0,u.getAddress)(e),32)};case"bool":return function(e){return e?w:I};case"bytes":return function(e){return(0,l.keccak256)(e)};case"string":return function(e){return(0,h.id)(e)}}return null}function S(e,t){return"".concat(e,"(").concat(t.map((function(e){var t=e.name;return e.type+" "+t})).join(","),")")}var R=function(){function e(t){(0,a.default)(this,e),(0,f.defineReadOnly)(this,"types",Object.freeze((0,f.deepCopy)(t))),(0,f.defineReadOnly)(this,"_encoderCache",{}),(0,f.defineReadOnly)(this,"_types",{});var n={},r={},o={};Object.keys(t).forEach((function(e){n[e]={},r[e]=[],o[e]={}}));var i=function(e){var o={};t[e].forEach((function(a){o[a.name]&&b.throwArgumentError("duplicate variable name ".concat(JSON.stringify(a.name)," in ").concat(JSON.stringify(e)),"types",t),o[a.name]=!0;var i=a.type.match(/^([^\x5b]*)(\x5b|$)/)[1];i===e&&b.throwArgumentError("circular type reference to ".concat(JSON.stringify(i)),"types",t),P(i)||(r[i]||b.throwArgumentError("unknown type ".concat(JSON.stringify(i)),"types",t),r[i].push(e),n[e][i]=!0)}))};for(var u in t)i(u);var c=Object.keys(r).filter((function(e){return 0===r[e].length}));for(var s in 0===c.length?b.throwArgumentError("missing primary type","types",t):c.length>1&&b.throwArgumentError("ambiguous primary types or unused types: ".concat(c.map((function(e){return JSON.stringify(e)})).join(", ")),"types",t),(0,f.defineReadOnly)(this,"primaryType",c[0]),function e(a,i){i[a]&&b.throwArgumentError("circular type reference to ".concat(JSON.stringify(a)),"types",t),i[a]=!0,Object.keys(n[a]).forEach((function(t){r[t]&&(e(t,i),Object.keys(i).forEach((function(e){o[e][t]=!0})))})),delete i[a]}(this.primaryType,{}),o){var l=Object.keys(o[s]);l.sort(),this._types[s]=S(s,t[s])+l.map((function(e){return S(e,t[e])})).join("")}}return(0,i.default)(e,[{key:"getEncoder",value:function(e){var t=this._encoderCache[e];return t||(t=this._encoderCache[e]=this._getEncoder(e)),t}},{key:"_getEncoder",value:function(e){var t=this,n=P(e);if(n)return n;var r=e.match(/^(.*)(\x5b(\d*)\x5d)$/);if(r){var o=r[1],a=this.getEncoder(o),i=parseInt(r[3]);return function(e){i>=0&&e.length!==i&&b.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",e);var n=e.map(a);return t._types[o]&&(n=n.map(l.keccak256)),(0,l.keccak256)((0,s.hexConcat)(n))}}var u=this.types[e];if(u){var c=(0,h.id)(this._types[e]);return function(e){var n=u.map((function(n){var r=n.name,o=n.type,a=t.getEncoder(o)(e[r]);return t._types[o]?(0,l.keccak256)(a):a}));return n.unshift(c),(0,s.hexConcat)(n)}}return b.throwArgumentError("unknown type: ".concat(e),"type",e)}},{key:"encodeType",value:function(e){var t=this._types[e];return t||b.throwArgumentError("unknown type: ".concat(JSON.stringify(e)),"name",e),t}},{key:"encodeData",value:function(e,t){return this.getEncoder(e)(t)}},{key:"hashStruct",value:function(e,t){return(0,l.keccak256)(this.encodeData(e,t))}},{key:"encode",value:function(e){return this.encodeData(this.primaryType,e)}},{key:"hash",value:function(e){return this.hashStruct(this.primaryType,e)}},{key:"_visit",value:function(e,t,n){var r=this;if(P(e))return n(e,t);var o=e.match(/^(.*)(\x5b(\d*)\x5d)$/);if(o){var a=o[1],i=parseInt(o[3]);return i>=0&&t.length!==i&&b.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",t),t.map((function(e){return r._visit(a,e,n)}))}var u=this.types[e];return u?u.reduce((function(e,o){var a=o.name,i=o.type;return e[a]=r._visit(i,t[a],n),e}),{}):b.throwArgumentError("unknown type: ".concat(e),"type",e)}},{key:"visit",value:function(e,t){return this._visit(this.primaryType,e,t)}}],[{key:"from",value:function(t){return new e(t)}},{key:"getPrimaryType",value:function(t){return e.from(t).primaryType}},{key:"hashStruct",value:function(t,n,r){return e.from(n).hashStruct(t,r)}},{key:"hashDomain",value:function(t){var n=[];for(var r in t){var o=A[r];o||b.throwArgumentError("invalid typed-data domain key: ".concat(JSON.stringify(r)),"domain",t),n.push({name:r,type:o})}return n.sort((function(e,t){return T.indexOf(e.name)-T.indexOf(t.name)})),e.hashStruct("EIP712Domain",{EIP712Domain:n},t)}},{key:"encode",value:function(t,n,r){return(0,s.hexConcat)(["0x1901",e.hashDomain(t),e.from(n).hash(r)])}},{key:"hash",value:function(t,n,r){return(0,l.keccak256)(e.encode(t,n,r))}},{key:"resolveNames",value:function(t,n,r,a){return y(this,void 0,void 0,o.default.mark((function i(){var u,c,l;return o.default.wrap((function(i){for(;;)switch(i.prev=i.next){case 0:t=(0,f.shallowCopy)(t),u={},t.verifyingContract&&!(0,s.isHexString)(t.verifyingContract,20)&&(u[t.verifyingContract]="0x"),(c=e.from(n)).visit(r,(function(e,t){return"address"!==e||(0,s.isHexString)(t,20)||(u[t]="0x"),t})),i.t0=o.default.keys(u);case 6:if((i.t1=i.t0()).done){i.next=13;break}return l=i.t1.value,i.next=10,a(l);case 10:u[l]=i.sent,i.next=6;break;case 13:return t.verifyingContract&&u[t.verifyingContract]&&(t.verifyingContract=u[t.verifyingContract]),r=c.visit(r,(function(e,t){return"address"===e&&u[t]?u[t]:t})),i.abrupt("return",{domain:t,value:r});case 16:case"end":return i.stop()}}),i)})))}},{key:"getPayload",value:function(t,n,r){e.hashDomain(t);var o={},a=[];T.forEach((function(e){var n=t[e];null!=n&&(o[e]=E[e](n),a.push({name:e,type:A[e]}))}));var i=e.from(n),u=(0,f.shallowCopy)(n);return u.EIP712Domain?b.throwArgumentError("types must not contain EIP712Domain type","types.EIP712Domain",n):u.EIP712Domain=a,i.encode(r),{types:u,domain:o,primaryType:i.primaryType,message:i.visit(r,(function(e,t){if(e.match(/^bytes(\d*)/))return(0,s.hexlify)((0,s.arrayify)(t));if(e.match(/^u?int/))return c.BigNumber.from(t).toString();switch(e){case"address":return t.toLowerCase();case"bool":return!!t;case"string":return"string"!=typeof t&&b.throwArgumentError("invalid string","value",t),t}return b.throwArgumentError("unsupported type","type",e)}))}}}]),e}();t.TypedDataEncoder=R},function(e,t,n){"use strict";e.exports=function(e){var t,n=this;return this.net.getId().then((function(e){return t=e,n.getBlock(0)})).then((function(n){var r="private";return"0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3"===n.hash&&1===t&&(r="main"),"0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d"===n.hash&&3===t&&(r="ropsten"),"0x6341fd3daf94b748c72ced5a5b26028f2474f5f00d824504e4fa37a75767e177"===n.hash&&4===t&&(r="rinkeby"),"0xbf7e331f7f7c1dd2e05159666b3bf8bc7a8a3a9eb1d518969eab529dd9b88c1a"===n.hash&&5===t&&(r="goerli"),"0xa3c565fc15c7478862d50ccd6561e3c06b24cc509bf388941c25ea985ce32cb9"===n.hash&&42===t&&(r="kovan"),"function"==typeof e&&e(null,r),r})).catch((function(t){if("function"!=typeof e)throw t;e(t)}))}},function(e){e.exports=JSON.parse('{"name":"@arianelabs/hweb3","version":"1.0.0","description":"Hedera JavaScript API","repository":"https://github.com/Arianelabs/hweb3.js","license":"LGPL-3.0","engines":{"node":">=8.0.0"},"main":"lib/cjs/index.js","module":"lib/index.js","bugs":{"url":"https://github.com/Arianelabs/hweb3.js/issues"},"keywords":["Hedera","JavaScript","API"],"author":"Arianelabs","types":"types/index.d.ts","scripts":{"compile":"tsc -b tsconfig.json","compile:cjs":"tsc -b tsconfig.cjs.json","dtslint":"dtslint --localTs ../../node_modules/typescript/lib types","postinstall":"echo \\"WARNING: the hweb3-shh and hweb3-bzz api will be deprecated in the next version\\""},"devDependencies":{"@types/node":"^12.12.6","dtslint":"^3.4.1","typescript":"^3.9.5"},"dependencies":{"@arianelabs/hweb3-bzz":"1.0.0","@arianelabs/hweb3-core":"1.0.0","@arianelabs/hweb3-core-helpers":"1.0.0","@arianelabs/hweb3-eth":"1.0.0","@arianelabs/hweb3-eth-personal":"1.0.0","@arianelabs/hweb3-net":"1.0.0","@arianelabs/hweb3-shh":"1.0.0","@arianelabs/hweb3-utils":"1.0.0"}}')}])})); +!function(){var u="input is invalid type",c="object"===("undefined"==typeof window?"undefined":(0,i.default)(window)),s=c?window:{};s.JS_SHA3_NO_WINDOW&&(c=!1);var l=!c&&"object"===("undefined"==typeof self?"undefined":(0,i.default)(self));!s.JS_SHA3_NO_NODE_JS&&"object"===(void 0===e?"undefined":(0,i.default)(e))&&e.versions&&e.versions.node?s=r:l&&(s=self);var f=!s.JS_SHA3_NO_COMMON_JS&&"object"===(0,i.default)(o)&&o.exports,d=n(463),p=!s.JS_SHA3_NO_ARRAY_BUFFER&&"undefined"!=typeof ArrayBuffer,h="0123456789abcdef".split(""),y=[4,1024,262144,67108864],m=[0,8,16,24],b=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],v=[224,256,384,512],k=[128,256],g=["hex","buffer","arrayBuffer","array","digest"],_={128:168,256:136};!s.JS_SHA3_NO_NODE_JS&&Array.isArray||(Array.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)}),!p||!s.JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW&&ArrayBuffer.isView||(ArrayBuffer.isView=function(e){return"object"===(0,i.default)(e)&&e.buffer&&e.buffer.constructor===ArrayBuffer});for(var w=function(e,t,n){return function(r){return new x(e,t,e).update(r)[n]()}},I=function(e,t,n){return function(r,o){return new x(e,t,o).update(r)[n]()}},A=function(e,t,n){return function(t,r,o,a){return S["cshake"+e].update(t,r,o,a)[n]()}},T=function(e,t,n){return function(t,r,o,a){return S["kmac"+e].update(t,r,o,a)[n]()}},O=function(e,t,n,r){for(var o=0;o>5,this.byteCount=this.blockCount<<2,this.outputBlocks=n>>5,this.extraBytes=(31&n)>>3;for(var r=0;r<50;++r)this.s[r]=0}function F(e,t,n){x.call(this,e,t,n)}x.prototype.update=function(e){if(this.finalized)throw new Error("finalize already called");var t,n=(0,i.default)(e);if("string"!==n){if("object"!==n)throw new Error(u);if(null===e)throw new Error(u);if(p&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!(Array.isArray(e)||p&&ArrayBuffer.isView(e)))throw new Error(u);t=!0}for(var r,o,a=this.blocks,c=this.byteCount,s=e.length,l=this.blockCount,f=0,d=this.s;f>2]|=e[f]<>2]|=o<>2]|=(192|o>>6)<>2]|=(128|63&o)<=57344?(a[r>>2]|=(224|o>>12)<>2]|=(128|o>>6&63)<>2]|=(128|63&o)<>2]|=(240|o>>18)<>2]|=(128|o>>12&63)<>2]|=(128|o>>6&63)<>2]|=(128|63&o)<=c){for(this.start=r-c,this.block=a[l],r=0;r>=8);n>0;)o.unshift(n),n=255&(e>>=8),++r;return t?o.push(r):o.unshift(r),this.update(o),o.length},x.prototype.encodeString=function(e){var t,n=(0,i.default)(e);if("string"!==n){if("object"!==n)throw new Error(u);if(null===e)throw new Error(u);if(p&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!(Array.isArray(e)||p&&ArrayBuffer.isView(e)))throw new Error(u);t=!0}var r=0,o=e.length;if(t)r=o;else for(var a=0;a=57344?r+=3:(c=65536+((1023&c)<<10|1023&e.charCodeAt(++a)),r+=4)}return r+=this.encode(8*r),this.update(e),r},x.prototype.bytepad=function(e,t){for(var n=this.encode(t),r=0;r>2]|=this.padding[3&t],this.lastByteIndex===this.byteCount)for(e[0]=e[n],t=1;t>4&15]+h[15&e]+h[e>>12&15]+h[e>>8&15]+h[e>>20&15]+h[e>>16&15]+h[e>>28&15]+h[e>>24&15];i%t==0&&(U(n),a=0)}return o&&(e=n[a],u+=h[e>>4&15]+h[15&e],o>1&&(u+=h[e>>12&15]+h[e>>8&15]),o>2&&(u+=h[e>>20&15]+h[e>>16&15])),u},x.prototype.arrayBuffer=function(){this.finalize();var e,t=this.blockCount,n=this.s,r=this.outputBlocks,o=this.extraBytes,a=0,i=0,u=this.outputBits>>3;e=o?new ArrayBuffer(r+1<<2):new ArrayBuffer(u);for(var c=new Uint32Array(e);i>8&255,c[e+2]=t>>16&255,c[e+3]=t>>24&255;u%n==0&&U(r)}return a&&(e=u<<2,t=r[i],c[e]=255&t,a>1&&(c[e+1]=t>>8&255),a>2&&(c[e+2]=t>>16&255)),c},F.prototype=new x,F.prototype.finalize=function(){return this.encode(this.outputBits,!0),x.prototype.finalize.call(this)};var U=function(e){var t,n,r,o,a,i,u,c,s,l,f,d,p,h,y,m,v,k,g,_,w,I,A,T,O,P,E,S,R,D,C,N,B,M,j,x,F,U,L,G,K,z,Q,H,V,W,q,Y,Z,J,X,$,ee,te,ne,re,oe,ae,ie,ue,ce,se,le;for(r=0;r<48;r+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],a=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],u=e[3]^e[13]^e[23]^e[33]^e[43],c=e[4]^e[14]^e[24]^e[34]^e[44],s=e[5]^e[15]^e[25]^e[35]^e[45],l=e[6]^e[16]^e[26]^e[36]^e[46],f=e[7]^e[17]^e[27]^e[37]^e[47],t=(d=e[8]^e[18]^e[28]^e[38]^e[48])^(i<<1|u>>>31),n=(p=e[9]^e[19]^e[29]^e[39]^e[49])^(u<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(c<<1|s>>>31),n=a^(s<<1|c>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(l<<1|f>>>31),n=u^(f<<1|l>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=c^(d<<1|p>>>31),n=s^(p<<1|d>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=l^(o<<1|a>>>31),n=f^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,h=e[0],y=e[1],W=e[11]<<4|e[10]>>>28,q=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,m=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,k=e[25]<<11|e[24]>>>21,g=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,P=e[18]<<20|e[19]>>>12,E=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,G=e[38]<<8|e[39]>>>24,K=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=h^~m&k,e[1]=y^~v&g,e[10]=T^~P&S,e[11]=O^~E&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~W&Y,e[31]=V^~q&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=m^~k&_,e[3]=v^~g&w,e[12]=P^~S&D,e[13]=E^~R&C,e[22]=x^~U&G,e[23]=F^~L&K,e[32]=W^~Y&J,e[33]=q^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=k^~_&I,e[5]=g^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~G&z,e[25]=L^~K&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&h,e[7]=w^~A&y,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=G^~z&M,e[27]=K^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~h&m,e[9]=A^~y&v,e[18]=N^~T&P,e[19]=B^~O&E,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&W,e[39]=ee^~V&q,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=b[r],e[1]^=b[r+1]};if(f)o.exports=S;else{for(D=0;D>8,i=255&o;a?n.push(a,i):n.push(i)}return n},n.zero2=r,n.toHex=o,n.encode=function(e,t){return"hex"===t?o(e):e}})),f=u((function(e,t){var n=t;n.assert=c,n.toArray=l.toArray,n.zero2=l.zero2,n.toHex=l.toHex,n.encode=l.encode,n.getNAF=function(e,t,n){var r=new Array(Math.max(e.bitLength(),n)+1);r.fill(0);for(var o=1<(o>>1)-1?(o>>1)-c:c,a.isubn(u)):u=0,r[i]=u,a.iushrn(1)}return r},n.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r,o=0,a=0;e.cmpn(-o)>0||t.cmpn(-a)>0;){var i,u,c=e.andln(3)+o&3,s=t.andln(3)+a&3;3===c&&(c=-1),3===s&&(s=-1),i=0==(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[0].push(i),u=0==(1&s)?0:3!==(r=t.andln(7)+a&7)&&5!==r||2!==c?s:-s,n[1].push(u),2*o===i+1&&(o=1-o),2*a===u+1&&(a=1-a),e.iushrn(1),t.iushrn(1)}return n},n.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},n.parseBytes=function(e){return"string"==typeof e?n.toArray(e,"hex"):e},n.intFromLE=function(e){return new a.default(e,"hex","le")}})),d=f.getNAF,p=f.getJSF,h=f.assert;function y(e,t){this.type=e,this.p=new a.default(t.p,16),this.red=t.prime?a.default.red(t.prime):a.default.mont(this.p),this.zero=new a.default(0).toRed(this.red),this.one=new a.default(1).toRed(this.red),this.two=new a.default(2).toRed(this.red),this.n=t.n&&new a.default(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}var m=y;function b(e,t){this.curve=e,this.type=t,this.precomputed=null}y.prototype.point=function(){throw new Error("Not implemented")},y.prototype.validate=function(){throw new Error("Not implemented")},y.prototype._fixedNafMul=function(e,t){h(e.precomputed);var n=e._getDoubles(),r=d(t,1,this._bitLength),o=(1<=a;c--)i=(i<<1)+r[c];u.push(i)}for(var s=this.jpoint(null,null,null),l=this.jpoint(null,null,null),f=o;f>0;f--){for(a=0;a=0;u--){for(var c=0;u>=0&&0===a[u];u--)c++;if(u>=0&&c++,i=i.dblp(c),u<0)break;var s=a[u];h(0!==s),i="affine"===e.type?s>0?i.mixedAdd(o[s-1>>1]):i.mixedAdd(o[-s-1>>1].neg()):s>0?i.add(o[s-1>>1]):i.add(o[-s-1>>1].neg())}return"affine"===e.type?i.toP():i},y.prototype._wnafMulAdd=function(e,t,n,r,o){var a,i,u,c=this._wnafT1,s=this._wnafT2,l=this._wnafT3,f=0;for(a=0;a=1;a-=2){var y=a-1,m=a;if(1===c[y]&&1===c[m]){var b=[t[y],null,null,t[m]];0===t[y].y.cmp(t[m].y)?(b[1]=t[y].add(t[m]),b[2]=t[y].toJ().mixedAdd(t[m].neg())):0===t[y].y.cmp(t[m].y.redNeg())?(b[1]=t[y].toJ().mixedAdd(t[m]),b[2]=t[y].add(t[m].neg())):(b[1]=t[y].toJ().mixedAdd(t[m]),b[2]=t[y].toJ().mixedAdd(t[m].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],k=p(n[y],n[m]);for(f=Math.max(k[0].length,f),l[y]=new Array(f),l[m]=new Array(f),i=0;i=0;a--){for(var A=0;a>=0;){var T=!0;for(i=0;i=0&&A++,w=w.dblp(A),a<0)break;for(i=0;i0?u=s[i][O-1>>1]:O<0&&(u=s[i][-O-1>>1].neg()),w="affine"===u.type?w.mixedAdd(u):w.add(u))}}for(a=0;a=Math.ceil((e.bitLength()+1)/t.step)},b.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,o=0;o=0&&(i=t,u=n),r.negative&&(r=r.neg(),o=o.neg()),i.negative&&(i=i.neg(),u=u.neg()),[{a:r,b:o},{a:i,b:u}]},g.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],r=t[1],o=r.b.mul(e).divRound(this.n),a=n.b.neg().mul(e).divRound(this.n),i=o.mul(n.a),u=a.mul(r.a),c=o.mul(n.b),s=a.mul(r.b);return{k1:e.sub(i).sub(u),k2:c.add(s).neg()}},g.prototype.pointFromX=function(e,t){(e=new a.default(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var o=r.fromRed().isOdd();return(t&&!o||!t&&o)&&(r=r.redNeg()),this.point(e,r)},g.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,r=this.a.redMul(t),o=t.redSqr().redMul(t).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(o).cmpn(0)},g.prototype._endoWnafMulAdd=function(e,t,n){for(var r=this._endoWnafT1,o=this._endoWnafT2,a=0;a":""},w.prototype.isInfinity=function(){return this.inf},w.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var n=t.redSqr().redISub(this.x).redISub(e.x),r=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},w.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,n=this.x.redSqr(),r=e.redInvm(),o=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(r),a=o.redSqr().redISub(this.x.redAdd(this.x)),i=o.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,i)},w.prototype.getX=function(){return this.x.fromRed()},w.prototype.getY=function(){return this.y.fromRed()},w.prototype.mul=function(e){return e=new a.default(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},w.prototype.mulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o):this.curve._wnafMulAdd(1,r,o,2)},w.prototype.jmulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o,!0):this.curve._wnafMulAdd(1,r,o,2,!0)},w.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},w.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,r=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return t},w.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},v(I,m.BasePoint),g.prototype.jpoint=function(e,t,n){return new I(this,e,t,n)},I.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),r=this.y.redMul(t).redMul(e);return this.curve.point(n,r)},I.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},I.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(t),o=e.x.redMul(n),a=this.y.redMul(t.redMul(e.z)),i=e.y.redMul(n.redMul(this.z)),u=r.redSub(o),c=a.redSub(i);if(0===u.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var s=u.redSqr(),l=s.redMul(u),f=r.redMul(s),d=c.redSqr().redIAdd(l).redISub(f).redISub(f),p=c.redMul(f.redISub(d)).redISub(a.redMul(l)),h=this.z.redMul(e.z).redMul(u);return this.curve.jpoint(d,p,h)},I.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,r=e.x.redMul(t),o=this.y,a=e.y.redMul(t).redMul(this.z),i=n.redSub(r),u=o.redSub(a);if(0===i.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=i.redSqr(),s=c.redMul(i),l=n.redMul(c),f=u.redSqr().redIAdd(s).redISub(l).redISub(l),d=u.redMul(l.redISub(f)).redISub(o.redMul(s)),p=this.z.redMul(i);return this.curve.jpoint(f,d,p)},I.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t=0)return!1;if(n.redIAdd(o),0===this.x.cmp(n))return!0}},I.prototype.inspect=function(){return this.isInfinity()?"":""},I.prototype.isInfinity=function(){return 0===this.z.cmpn(0)};var A=u((function(e,t){var n=t;n.base=m,n.short=_,n.mont=null,n.edwards=null})),T=u((function(e,t){var n,r=t,o=f.assert;function a(e){"short"===e.type?this.curve=new A.short(e):"edwards"===e.type?this.curve=new A.edwards(e):this.curve=new A.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,o(this.g.validate(),"Invalid curve"),o(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function u(e,t){Object.defineProperty(r,e,{configurable:!0,enumerable:!0,get:function(){var n=new a(t);return Object.defineProperty(r,e,{configurable:!0,enumerable:!0,value:n}),n}})}r.PresetCurve=a,u("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:i.default.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),u("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:i.default.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),u("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:i.default.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),u("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:i.default.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),u("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:i.default.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),u("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:i.default.sha256,gRed:!1,g:["9"]}),u("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:i.default.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{n=null.crash()}catch(e){n=void 0}u("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:i.default.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",n]})}));function O(e){if(!(this instanceof O))return new O(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=l.toArray(e.entropy,e.entropyEnc||"hex"),n=l.toArray(e.nonce,e.nonceEnc||"hex"),r=l.toArray(e.pers,e.persEnc||"hex");c(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,r)}var P=O;O.prototype._init=function(e,t,n){var r=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var o=0;o=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},O.prototype.generate=function(e,t,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(r=n,n=t,t=null),n&&(n=l.toArray(n,r||"hex"),this._update(n));for(var o=[];o.length"};var D=f.assert;function C(e,t){if(e instanceof C)return e;this._importDER(e,t)||(D(e.r&&e.s,"Signature without r or s"),this.r=new a.default(e.r,16),this.s=new a.default(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}var N=C;function B(){this.place=0}function M(e,t){var n=e[t.place++];if(!(128&n))return n;var r=15&n;if(0===r||r>4)return!1;for(var o=0,a=0,i=t.place;a>>=0;return!(o<=127)&&(t.place=i,o)}function j(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}C.prototype._importDER=function(e,t){e=f.toArray(e,t);var n=new B;if(48!==e[n.place++])return!1;var r=M(e,n);if(!1===r)return!1;if(r+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var o=M(e,n);if(!1===o)return!1;var i=e.slice(n.place,o+n.place);if(n.place+=o,2!==e[n.place++])return!1;var u=M(e,n);if(!1===u)return!1;if(e.length!==u+n.place)return!1;var c=e.slice(n.place,u+n.place);if(0===i[0]){if(!(128&i[1]))return!1;i=i.slice(1)}if(0===c[0]){if(!(128&c[1]))return!1;c=c.slice(1)}return this.r=new a.default(i),this.s=new a.default(c),this.recoveryParam=null,!0},C.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=j(t),n=j(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];x(r,t.length),(r=r.concat(t)).push(2),x(r,n.length);var o=r.concat(n),a=[48];return x(a,o.length),a=a.concat(o),f.encode(a,e)};var F=function(){throw new Error("unsupported")},U=f.assert;function L(e){if(!(this instanceof L))return new L(e);"string"==typeof e&&(U(Object.prototype.hasOwnProperty.call(T,e),"Unknown curve "+e),e=T[e]),e instanceof T.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}var G=L;L.prototype.keyPair=function(e){return new R(this,e)},L.prototype.keyFromPrivate=function(e,t){return R.fromPrivate(this,e,t)},L.prototype.keyFromPublic=function(e,t){return R.fromPublic(this,e,t)},L.prototype.genKeyPair=function(e){e||(e={});for(var t=new P({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||F(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),n=this.n.byteLength(),r=this.n.sub(new a.default(2));;){var o=new a.default(t.generate(n));if(!(o.cmp(r)>0))return o.iaddn(1),this.keyFromPrivate(o)}},L.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},L.prototype.sign=function(e,t,n,r){"object"===(0,o.default)(n)&&(r=n,n=null),r||(r={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new a.default(e,16));for(var i=this.n.byteLength(),u=t.getPrivate().toArray("be",i),c=e.toArray("be",i),s=new P({hash:this.hash,entropy:u,nonce:c,pers:r.pers,persEnc:r.persEnc||"utf8"}),l=this.n.sub(new a.default(1)),f=0;;f++){var d=r.k?r.k(f):new a.default(s.generate(this.n.byteLength()));if(!((d=this._truncateToN(d,!0)).cmpn(1)<=0||d.cmp(l)>=0)){var p=this.g.mul(d);if(!p.isInfinity()){var h=p.getX(),y=h.umod(this.n);if(0!==y.cmpn(0)){var m=d.invm(this.n).mul(y.mul(t.getPrivate()).iadd(e));if(0!==(m=m.umod(this.n)).cmpn(0)){var b=(p.getY().isOdd()?1:0)|(0!==h.cmp(y)?2:0);return r.canonical&&m.cmp(this.nh)>0&&(m=this.n.sub(m),b^=1),new N({r:y,s:m,recoveryParam:b})}}}}}},L.prototype.verify=function(e,t,n,r){e=this._truncateToN(new a.default(e,16)),n=this.keyFromPublic(n,r);var o=(t=new N(t,"hex")).r,i=t.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var u,c=i.invm(this.n),s=c.mul(e).umod(this.n),l=c.mul(o).umod(this.n);return this.curve._maxwellTrick?!(u=this.g.jmulAdd(s,n.getPublic(),l)).isInfinity()&&u.eqXToP(o):!(u=this.g.mulAdd(s,n.getPublic(),l)).isInfinity()&&0===u.getX().umod(this.n).cmp(o)},L.prototype.recoverPubKey=function(e,t,n,r){U((3&n)===n,"The recovery param is more than two bits"),t=new N(t,r);var o=this.n,i=new a.default(e),u=t.r,c=t.s,s=1&n,l=n>>1;if(u.cmp(this.curve.p.umod(this.curve.n))>=0&&l)throw new Error("Unable to find sencond key candinate");u=l?this.curve.pointFromX(u.add(this.curve.n),s):this.curve.pointFromX(u,s);var f=t.r.invm(o),d=o.sub(i).mul(f).umod(o),p=c.mul(f).umod(o);return this.g.mulAdd(d,u,p)},L.prototype.getKeyRecoveryParam=function(e,t,n,r){if(null!==(t=new N(t,r)).recoveryParam)return t.recoveryParam;for(var o=0;o<4;o++){var a;try{a=this.recoverPubKey(e,t,o)}catch(e){continue}if(a.eq(n))return o}throw new Error("Unable to find valid recovery factor")};var K=u((function(e,t){var n=t;n.version="6.5.4",n.utils=f,n.rand=function(){throw new Error("unsupported")},n.curve=A,n.curves=T,n.ec=G,n.eddsa=null})).ec;t.EC=K}).call(this,n(40))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="signing-key/5.5.0"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="transactions/5.5.0"},function(e,t,n){"use strict";(function(e,r){var o=n(0),a=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=o(n(41)),u=o(n(3)),c=n(472),s=n(165),l=o(n(1080)),f=o(n(1131)),d=o(n(1132)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==a(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=o?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(93)),h=o(n(1135)),y=o(n(1169));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}var b=n(329),v=function(){(0,s.packageInit)(this,arguments),delete this.BatchRequest,delete this.extend,this.wallet=new k(this)};function k(e){this._accounts=e,this.length=0,this.defaultKeyName="web3js_wallet"}v.prototype._addAccountFunctions=function(e,t){var n=this,r={address:t,privateKey:e,publicKey:e.publicKey,signTransaction:function(e){return n.signTransaction(e)},sign:function(e){return n.sign(e)},encrypt:function(e,t){return n.encrypt(r.privateKey,e,t)}};return r},v.prototype.create=function(e){var t=c.PrivateKey.generateED25519();y.default.call(this,t,e)},v.prototype.privateKeyToAccount=function(){throw new Error("Not available")},v.prototype.signTransaction=function(e){return this.currentProvider.signTransaction(e)},v.prototype.recoverTransaction=function(e){var t=r.from(e.slice(2),"hex"),n=TransactionFactory.fromSerializedData(t);return p.toChecksumAddress(n.getSenderAddress().toString("hex"))},v.prototype.hashMessage=function(e){var t=p.isHexStrict(e)?e:p.utf8ToHex(e),n=p.hexToBytes(t),o=r.from(n),a="Ethereum Signed Message:\n"+n.length,i=r.from(a),u=r.concat([i,o]);return h.default.bufferToHex(h.default.keccak256(u))},v.prototype.sign=function(e){return{message:e,signature:this.currentProvider.sign(e)}},v.prototype.recover=function(e,t,n){var r=[].slice.apply(arguments);return e&&"object"===(0,u.default)(e)?this.recover(e.messageHash,l.default.encodeSignature([e.v,e.r,e.s]),!0):(n||(e=this.hashMessage(e)),r.length>=4?(n="boolean"==typeof(n=r.slice(-1)[0])&&!!n,this.recover(e,l.default.encodeSignature(r.slice(1,4)),n)):l.default.recover(e,t))},v.prototype.decrypt=function(e,t,n){if("string"!=typeof t)throw new Error("No password given.");var o,a,c=e&&"object"===(0,u.default)(e)?e:JSON.parse(n?e.toLowerCase():e);if(3!==c.version)throw new Error("Not a valid V3 wallet");if("scrypt"===c.crypto.kdf)a=c.crypto.kdfparams,o=f.default.syncScrypt(r.from(t),r.from(a.salt,"hex"),a.n,a.r,a.p,a.dklen);else{if("pbkdf2"!==c.crypto.kdf)throw new Error("Unsupported key derivation scheme");if("hmac-sha256"!==(a=c.crypto.kdfparams).prf)throw new Error("Unsupported parameters to PBKDF2");o=b.pbkdf2Sync(r.from(t),r.from(a.salt,"hex"),a.c,a.dklen,"sha256")}var s=r.from(c.crypto.ciphertext,"hex");if(p.sha3(r.from([].concat((0,i.default)(o.slice(16,32)),(0,i.default)(s)))).replace("0x","")!==c.crypto.mac)throw new Error("Key derivation failed - possibly wrong password");var l=b.createDecipheriv(c.crypto.cipher,o.slice(0,16),r.from(c.crypto.cipherparams.iv,"hex")),d="0x"+r.from([].concat((0,i.default)(l.update(s)),(0,i.default)(l.final()))).toString("hex");return this.privateKeyToAccount(d,!0)},v.prototype.encrypt=function(e,t,n){var o,a=(n=n||{}).salt||b.randomBytes(32),u=n.iv||b.randomBytes(16),c=n.kdf||"scrypt",s={dklen:n.dklen||32,salt:a.toString("hex")};if("pbkdf2"===c)s.c=n.c||262144,s.prf="hmac-sha256",o=b.pbkdf2Sync(r.from(t),r.from(s.salt,"hex"),s.c,s.dklen,"sha256");else{if("scrypt"!==c)throw new Error("Unsupported kdf");s.n=n.n||8192,s.r=n.r||8,s.p=n.p||1,o=f.default.syncScrypt(r.from(t),r.from(s.salt,"hex"),s.n,s.r,s.p,s.dklen)}var l=b.createCipheriv(n.cipher||"aes-128-ctr",o.slice(0,16),u);if(!l)throw new Error("Unsupported cipher");var h=r.from([].concat((0,i.default)(l.update(r.from(e,"hex"))),(0,i.default)(l.final()))),y=p.sha3(r.from([].concat((0,i.default)(o.slice(16,32)),(0,i.default)(h)))).replace("0x","");return{version:3,id:d.default.v4({random:n.uuid||b.randomBytes(16)}),crypto:{ciphertext:h.toString("hex"),cipherparams:{iv:u.toString("hex")},cipher:n.cipher||"aes-128-ctr",kdf:c,kdfparams:s,mac:y.toString("hex")}}},k.prototype._findSafeIndex=function(e){return e=e||0,this.hasOwnProperty(e)?this._findSafeIndex(e+1):e},k.prototype._currentIndexes=function(){return Object.keys(this).map((function(e){return parseInt(e)})).filter((function(e){return e<9e20}))},k.prototype.create=function(e,t){for(var n=0;n2?o-2:0),i=2;i>>1^(0==(1&t)?0:178)}return 255^t},t.legacy1=function(e,t){for(var n=h(e.map((function(e){return t.indexOf(e.toLowerCase())})),t.length,256,33),r=n[n.length-1],o=new Uint8Array(n.length-1),a=0;a=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;l-=1){var d=a.dividedToIntegerBy(n),p=a.modulo(n);a=d,s[l]=p.toNumber()}return s}function y(e){var t=[];t.fill(!1,0,8*e.length);for(var n=0;n>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],m=e[1],W=e[11]<<4|e[10]>>>28,q=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,b=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,k=e[25]<<11|e[24]>>>21,g=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,P=e[18]<<20|e[19]>>>12,E=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,G=e[38]<<8|e[39]>>>24,K=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~b&k,e[1]=m^~v&g,e[10]=T^~P&S,e[11]=O^~E&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~W&Y,e[31]=V^~q&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=b^~k&_,e[3]=v^~g&w,e[12]=P^~S&D,e[13]=E^~R&C,e[22]=x^~U&G,e[23]=F^~L&K,e[32]=W^~Y&J,e[33]=q^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=k^~_&I,e[5]=g^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~G&z,e[25]=L^~K&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&m,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=G^~z&M,e[27]=K^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&b,e[9]=A^~m&v,e[18]=N^~T&P,e[19]=B^~O&E,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&W,e[39]=ee^~V&q,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];b%f==0&&(c(p),n=0)}return"0x"+m}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e){e.exports=JSON.parse('{"_args":[["elliptic@6.5.4","/Users/patmat/projects/Arianelabs-hweb3.js/packages/hweb3-eth-accounts"]],"_from":"elliptic@6.5.4","_id":"elliptic@6.5.4","_inBundle":false,"_integrity":"sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==","_location":"/elliptic","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"elliptic@6.5.4","name":"elliptic","escapedName":"elliptic","rawSpec":"6.5.4","saveSpec":null,"fetchSpec":"6.5.4"},"_requiredBy":["/@hashgraph/cryptography","/ethereumjs-util/secp256k1"],"_resolved":"https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz","_spec":"6.5.4","_where":"/Users/patmat/projects/Arianelabs-hweb3.js/packages/hweb3-eth-accounts","author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"bugs":{"url":"https://github.com/indutny/elliptic/issues"},"dependencies":{"bn.js":"^4.11.9","brorand":"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1","inherits":"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"},"description":"EC cryptography","devDependencies":{"brfs":"^2.0.2","coveralls":"^3.1.0","eslint":"^7.6.0","grunt":"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.5","mocha":"^8.0.1"},"files":["lib"],"homepage":"https://github.com/indutny/elliptic","keywords":["EC","Elliptic","curve","Cryptography"],"license":"MIT","main":"lib/elliptic.js","name":"elliptic","repository":{"type":"git","url":"git+ssh://git@github.com/indutny/elliptic.git"},"scripts":{"lint":"eslint lib test","lint:fix":"npm run lint -- --fix","test":"npm run lint && npm run unit","unit":"istanbul test _mocha --reporter=spec test/index.js","version":"grunt dist && git add dist/"},"version":"6.5.4"}')},function(e,t){},function(e,t,n){"use strict";var r=n(77),o=n(10),a=n(51),i=n(251),u=r.assert;function c(e){i.call(this,"short",e),this.a=new o(e.a,16).toRed(this.red),this.b=new o(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function s(e,t,n,r){i.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new o(t,16),this.y=new o(n,16),r&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function l(e,t,n,r){i.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===r?(this.x=this.curve.one,this.y=this.curve.one,this.z=new o(0)):(this.x=new o(t,16),this.y=new o(n,16),this.z=new o(r,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}a(c,i),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new o(e.beta,16).toRed(this.red);else{var r=this._getEndoRoots(this.p);t=(t=r[0].cmp(r[1])<0?r[0]:r[1]).toRed(this.red)}if(e.lambda)n=new o(e.lambda,16);else{var a=this._getEndoRoots(this.n);0===this.g.mul(a[0]).x.cmp(this.g.x.redMul(t))?n=a[0]:(n=a[1],u(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new o(e.a,16),b:new o(e.b,16)}})):this._getEndoBasis(n)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:o.mont(e),n=new o(2).toRed(t).redInvm(),r=n.redNeg(),a=new o(3).toRed(t).redNeg().redSqrt().redMul(n);return[r.redAdd(a).fromRed(),r.redSub(a).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,n,r,a,i,u,c,s,l,f=this.n.ushrn(Math.floor(this.n.bitLength()/2)),d=e,p=this.n.clone(),h=new o(1),y=new o(0),m=new o(0),b=new o(1),v=0;0!==d.cmpn(0);){var k=p.div(d);s=p.sub(k.mul(d)),l=m.sub(k.mul(h));var g=b.sub(k.mul(y));if(!r&&s.cmp(f)<0)t=c.neg(),n=h,r=s.neg(),a=l;else if(r&&2==++v)break;c=s,p=d,d=s,m=h,h=l,b=y,y=g}i=s.neg(),u=l;var _=r.sqr().add(a.sqr());return i.sqr().add(u.sqr()).cmp(_)>=0&&(i=t,u=n),r.negative&&(r=r.neg(),a=a.neg()),i.negative&&(i=i.neg(),u=u.neg()),[{a:r,b:a},{a:i,b:u}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],r=t[1],o=r.b.mul(e).divRound(this.n),a=n.b.neg().mul(e).divRound(this.n),i=o.mul(n.a),u=a.mul(r.a),c=o.mul(n.b),s=a.mul(r.b);return{k1:e.sub(i).sub(u),k2:c.add(s).neg()}},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var a=r.fromRed().isOdd();return(t&&!a||!t&&a)&&(r=r.redNeg()),this.point(e,r)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,r=this.a.redMul(t),o=t.redSqr().redMul(t).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(o).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,n){for(var r=this._endoWnafT1,o=this._endoWnafT2,a=0;a":""},s.prototype.isInfinity=function(){return this.inf},s.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var n=t.redSqr().redISub(this.x).redISub(e.x),r=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},s.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,n=this.x.redSqr(),r=e.redInvm(),o=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(r),a=o.redSqr().redISub(this.x.redAdd(this.x)),i=o.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,i)},s.prototype.getX=function(){return this.x.fromRed()},s.prototype.getY=function(){return this.y.fromRed()},s.prototype.mul=function(e){return e=new o(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o):this.curve._wnafMulAdd(1,r,o,2)},s.prototype.jmulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o,!0):this.curve._wnafMulAdd(1,r,o,2,!0)},s.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},s.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,r=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return t},s.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},a(l,i.BasePoint),c.prototype.jpoint=function(e,t,n){return new l(this,e,t,n)},l.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),r=this.y.redMul(t).redMul(e);return this.curve.point(n,r)},l.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},l.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(t),o=e.x.redMul(n),a=this.y.redMul(t.redMul(e.z)),i=e.y.redMul(n.redMul(this.z)),u=r.redSub(o),c=a.redSub(i);if(0===u.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var s=u.redSqr(),l=s.redMul(u),f=r.redMul(s),d=c.redSqr().redIAdd(l).redISub(f).redISub(f),p=c.redMul(f.redISub(d)).redISub(a.redMul(l)),h=this.z.redMul(e.z).redMul(u);return this.curve.jpoint(d,p,h)},l.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,r=e.x.redMul(t),o=this.y,a=e.y.redMul(t).redMul(this.z),i=n.redSub(r),u=o.redSub(a);if(0===i.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=i.redSqr(),s=c.redMul(i),l=n.redMul(c),f=u.redSqr().redIAdd(s).redISub(l).redISub(l),d=u.redMul(l.redISub(f)).redISub(o.redMul(s)),p=this.z.redMul(i);return this.curve.jpoint(f,d,p)},l.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t=0)return!1;if(n.redIAdd(o),0===this.x.cmp(n))return!0}},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t,n){"use strict";var r=n(10),o=n(51),a=n(251),i=n(77);function u(e){a.call(this,"mont",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.i4=new r(4).toRed(this.red).redInvm(),this.two=new r(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,n){a.BasePoint.call(this,e,"projective"),null===t&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new r(t,16),this.z=new r(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}o(u,a),e.exports=u,u.prototype.validate=function(e){var t=e.normalize().x,n=t.redSqr(),r=n.redMul(t).redAdd(n.redMul(this.a)).redAdd(t);return 0===r.redSqrt().redSqr().cmp(r)},o(c,a.BasePoint),u.prototype.decodePoint=function(e,t){return this.point(i.toArray(e,t),1)},u.prototype.point=function(e,t){return new c(this,e,t)},u.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),n=e.redSub(t),r=e.redMul(t),o=n.redMul(t.redAdd(this.curve.a24.redMul(n)));return this.curve.point(r,o)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var n=this.x.redAdd(this.z),r=this.x.redSub(this.z),o=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(n),i=o.redMul(r),u=t.z.redMul(a.redAdd(i).redSqr()),c=t.x.redMul(a.redISub(i).redSqr());return this.curve.point(u,c)},c.prototype.mul=function(e){for(var t=e.clone(),n=this,r=this.curve.point(null,null),o=[];0!==t.cmpn(0);t.iushrn(1))o.push(t.andln(1));for(var a=o.length-1;a>=0;a--)0===o[a]?(n=n.diffAdd(r,this),r=r.dbl()):(r=n.diffAdd(r,this),n=n.dbl());return r},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,n){"use strict";var r=n(77),o=n(10),a=n(51),i=n(251),u=r.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,i.call(this,"edwards",e),this.a=new o(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new o(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new o(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),u(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function s(e,t,n,r,a){i.BasePoint.call(this,e,"projective"),null===t&&null===n&&null===r?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new o(t,16),this.y=new o(n,16),this.z=r?new o(r,16):this.curve.one,this.t=a&&new o(a,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}a(c,i),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,n,r){return this.point(e,t,n,r)},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=this.c2.redSub(this.a.redMul(n)),a=this.one.redSub(this.c2.redMul(this.d).redMul(n)),i=r.redMul(a.redInvm()),u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");var c=u.fromRed().isOdd();return(t&&!c||!t&&c)&&(u=u.redNeg()),this.point(e,u)},c.prototype.pointFromY=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=n.redSub(this.c2),a=n.redMul(this.d).redMul(this.c2).redSub(this.a),i=r.redMul(a.redInvm());if(0===i.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");return u.fromRed().isOdd()!==t&&(u=u.redNeg()),this.point(u,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),n=e.y.redSqr(),r=t.redMul(this.a).redAdd(n),o=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(n)));return 0===r.cmp(o)},a(s,i.BasePoint),c.prototype.pointFromJSON=function(e){return s.fromJSON(this,e)},c.prototype.point=function(e,t,n,r){return new s(this,e,t,n,r)},s.fromJSON=function(e,t){return new s(e,t[0],t[1],t[2])},s.prototype.inspect=function(){return this.isInfinity()?"":""},s.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},s.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var r=this.curve._mulA(e),o=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=r.redAdd(t),i=a.redSub(n),u=r.redSub(t),c=o.redMul(i),s=a.redMul(u),l=o.redMul(u),f=i.redMul(a);return this.curve.point(c,s,f,l)},s.prototype._projDbl=function(){var e,t,n,r,o,a,i=this.x.redAdd(this.y).redSqr(),u=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var s=(r=this.curve._mulA(u)).redAdd(c);this.zOne?(e=i.redSub(u).redSub(c).redMul(s.redSub(this.curve.two)),t=s.redMul(r.redSub(c)),n=s.redSqr().redSub(s).redSub(s)):(o=this.z.redSqr(),a=s.redSub(o).redISub(o),e=i.redSub(u).redISub(c).redMul(a),t=s.redMul(r.redSub(c)),n=s.redMul(a))}else r=u.redAdd(c),o=this.curve._mulC(this.z).redSqr(),a=r.redSub(o).redSub(o),e=this.curve._mulC(i.redISub(r)).redMul(a),t=this.curve._mulC(r).redMul(u.redISub(c)),n=r.redMul(a);return this.curve.point(e,t,n)},s.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},s.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),r=this.t.redMul(this.curve.dd).redMul(e.t),o=this.z.redMul(e.z.redAdd(e.z)),a=n.redSub(t),i=o.redSub(r),u=o.redAdd(r),c=n.redAdd(t),s=a.redMul(i),l=u.redMul(c),f=a.redMul(c),d=i.redMul(u);return this.curve.point(s,l,d,f)},s.prototype._projAdd=function(e){var t,n,r=this.z.redMul(e.z),o=r.redSqr(),a=this.x.redMul(e.x),i=this.y.redMul(e.y),u=this.curve.d.redMul(a).redMul(i),c=o.redSub(u),s=o.redAdd(u),l=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(i),f=r.redMul(c).redMul(l);return this.curve.twisted?(t=r.redMul(s).redMul(i.redSub(this.curve._mulA(a))),n=c.redMul(s)):(t=r.redMul(s).redMul(i.redSub(a)),n=this.curve._mulC(c).redMul(s)),this.curve.point(f,t,n)},s.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},s.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!1)},s.prototype.jmulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!0)},s.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},s.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},s.prototype.getX=function(){return this.normalize(),this.x.fromRed()},s.prototype.getY=function(){return this.normalize(),this.y.fromRed()},s.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},s.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var n=e.clone(),r=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(r),0===this.x.cmp(t))return!0}},s.prototype.toP=s.prototype.normalize,s.prototype.mixedAdd=s.prototype.add},function(e,t,n){"use strict";t.sha1=n(954),t.sha224=n(955),t.sha256=n(487),t.sha384=n(956),t.sha512=n(488)},function(e,t,n){"use strict";var r=n(96),o=n(203),a=n(486),i=r.rotl32,u=r.sum32,c=r.sum32_5,s=a.ft_1,l=o.BlockHash,f=[1518500249,1859775393,2400959708,3395469782];function d(){if(!(this instanceof d))return new d;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}r.inherits(d,l),e.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;rthis.blockSize&&(e=(new this.Hash).update(e).digest()),o(e.length<=this.blockSize);for(var t=e.length;t0))return i.iaddn(1),this.keyFromPrivate(i)}},d.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,n,i){"object"===(0,r.default)(n)&&(i=n,n=null),i||(i={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new o(e,16));for(var u=this.n.byteLength(),c=t.getPrivate().toArray("be",u),s=e.toArray("be",u),l=new a({hash:this.hash,entropy:c,nonce:s,pers:i.pers,persEnc:i.persEnc||"utf8"}),d=this.n.sub(new o(1)),p=0;;p++){var h=i.k?i.k(p):new o(l.generate(this.n.byteLength()));if(!((h=this._truncateToN(h,!0)).cmpn(1)<=0||h.cmp(d)>=0)){var y=this.g.mul(h);if(!y.isInfinity()){var m=y.getX(),b=m.umod(this.n);if(0!==b.cmpn(0)){var v=h.invm(this.n).mul(b.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var k=(y.getY().isOdd()?1:0)|(0!==m.cmp(b)?2:0);return i.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),k^=1),new f({r:b,s:v,recoveryParam:k})}}}}}},d.prototype.verify=function(e,t,n,r){e=this._truncateToN(new o(e,16)),n=this.keyFromPublic(n,r);var a=(t=new f(t,"hex")).r,i=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var u,c=i.invm(this.n),s=c.mul(e).umod(this.n),l=c.mul(a).umod(this.n);return this.curve._maxwellTrick?!(u=this.g.jmulAdd(s,n.getPublic(),l)).isInfinity()&&u.eqXToP(a):!(u=this.g.mulAdd(s,n.getPublic(),l)).isInfinity()&&0===u.getX().umod(this.n).cmp(a)},d.prototype.recoverPubKey=function(e,t,n,r){s((3&n)===n,"The recovery param is more than two bits"),t=new f(t,r);var a=this.n,i=new o(e),u=t.r,c=t.s,l=1&n,d=n>>1;if(u.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");u=d?this.curve.pointFromX(u.add(this.curve.n),l):this.curve.pointFromX(u,l);var p=t.r.invm(a),h=a.sub(i).mul(p).umod(a),y=c.mul(p).umod(a);return this.g.mulAdd(h,u,y)},d.prototype.getKeyRecoveryParam=function(e,t,n,r){if(null!==(t=new f(t,r)).recoveryParam)return t.recoveryParam;for(var o=0;o<4;o++){var a;try{a=this.recoverPubKey(e,t,o)}catch(e){continue}if(a.eq(n))return o}throw new Error("Unable to find valid recovery factor")}},function(e,t,n){"use strict";var r=n(320),o=n(483),a=n(146);function i(e){if(!(this instanceof i))return new i(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=o.toArray(e.entropy,e.entropyEnc||"hex"),n=o.toArray(e.nonce,e.nonceEnc||"hex"),r=o.toArray(e.pers,e.persEnc||"hex");a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,r)}e.exports=i,i.prototype._init=function(e,t,n){var r=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var o=0;o=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},i.prototype.generate=function(e,t,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(r=n,n=t,t=null),n&&(n=o.toArray(n,r||"hex"),this._update(n));for(var a=[];a.length"}},function(e,t,n){"use strict";var r=n(10),o=n(77),a=o.assert;function i(e,t){if(e instanceof i)return e;this._importDER(e,t)||(a(e.r&&e.s,"Signature without r or s"),this.r=new r(e.r,16),this.s=new r(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function u(){this.place=0}function c(e,t){var n=e[t.place++];if(!(128&n))return n;var r=15&n;if(0===r||r>4)return!1;for(var o=0,a=0,i=t.place;a>>=0;return!(o<=127)&&(t.place=i,o)}function s(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}e.exports=i,i.prototype._importDER=function(e,t){e=o.toArray(e,t);var n=new u;if(48!==e[n.place++])return!1;var a=c(e,n);if(!1===a)return!1;if(a+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var i=c(e,n);if(!1===i)return!1;var s=e.slice(n.place,i+n.place);if(n.place+=i,2!==e[n.place++])return!1;var l=c(e,n);if(!1===l)return!1;if(e.length!==l+n.place)return!1;var f=e.slice(n.place,l+n.place);if(0===s[0]){if(!(128&s[1]))return!1;s=s.slice(1)}if(0===f[0]){if(!(128&f[1]))return!1;f=f.slice(1)}return this.r=new r(s),this.s=new r(f),this.recoveryParam=null,!0},i.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=s(t),n=s(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];l(r,t.length),(r=r.concat(t)).push(2),l(r,n.length);var a=r.concat(n),i=[48];return l(i,a.length),i=i.concat(a),o.encode(i,e)}},function(e,t,n){"use strict";var r=n(320),o=n(319),a=n(77),i=a.assert,u=a.parseBytes,c=n(965),s=n(966);function l(e){if(i("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof l))return new l(e);e=o[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=r.sha512}e.exports=l,l.prototype.sign=function(e,t){e=u(e);var n=this.keyFromSecret(t),r=this.hashInt(n.messagePrefix(),e),o=this.g.mul(r),a=this.encodePoint(o),i=this.hashInt(a,n.pubBytes(),e).mul(n.priv()),c=r.add(i).umod(this.curve.n);return this.makeSignature({R:o,S:c,Rencoded:a})},l.prototype.verify=function(e,t,n){e=u(e),t=this.makeSignature(t);var r=this.keyFromPublic(n),o=this.hashInt(t.Rencoded(),r.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(r.pub().mul(o)).eq(a)},l.prototype.hashInt=function(){for(var e=this.hash(),t=0;t=1&&"ident"in t.seq[0]))throw new Error("error parsing AlgorithmIdentifier from ".concat(JSON.stringify(t)));this.algIdent=t.seq[0].ident,this.parameters=t.seq[1]}return(0,c.default)(e,[{key:"toString",value:function(){return JSON.stringify(this)}}]),e}();t.AlgorithmIdentifier=y;var m=function e(t){if((0,u.default)(this,e),!("seq"in t)||2!==t.seq.length)throw new Error("error parsing PBES2Params from ".concat(JSON.stringify(t)));this.kdf=new y(t.seq[0]),this.encScheme=new y(t.seq[1])},b=function e(t){if((0,u.default)(this,e),"seq"in t&&t.seq.length>=2&&"bytes"in t.seq[0]&&"int"in t.seq[1]&&(this.salt=t.seq[0].bytes,this.iterCount=t.seq[1].int,t.seq.length>2))return"seq"in t.seq[2]?void(this.prf=new y(t.seq[2])):("int"in t.seq[2]&&(this.keyLength=t.seq[2].int),void(4===t.seq.length&&(this.prf=new y(t.seq[3]))));throw new Error("error parsing PBKDF2Params from ".concat(JSON.stringify(t)))},v=function(){function e(t){if((0,u.default)(this,e),!("seq"in t)||3!==t.seq.length)throw new Error("error parsing PrivateKeyInfo from ".concat(JSON.stringify(t)));if(!("int"in t.seq[0])||0!==t.seq[0].int)throw new Error("expected version = 0, got ".concat(JSON.stringify(t.seq[0])));if(this.version=0,this.algId=new y(t.seq[1]),!("bytes"in t.seq[2]))throw new Error("expected octet string as 3rd element, got ".concat(JSON.stringify(t.seq[2])));this.privateKey=t.seq[2].bytes}return(0,c.default)(e,null,[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.PrivateKeyInfo=v;var k=function(){function e(t){if((0,u.default)(this,e),"seq"in t&&2===t.seq.length&&"bytes"in t.seq[1])return this.algId=new y(t.seq[0]),void(this.data=t.seq[1].bytes);throw new Error("error parsing EncryptedPrivateKeyInfo from ".concat(JSON.stringify(t)))}var t;return(0,c.default)(e,[{key:"decrypt",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("1.2.840.113549.1.5.13"===this.algId.algIdent&&this.algId.parameters){e.next=2;break}throw new Error("unsupported key encryption algorithm: ".concat(this.algId.toString()));case 2:if("1.2.840.113549.1.5.12"===(n=new m(this.algId.parameters)).kdf.algIdent&&n.kdf.parameters){e.next=5;break}throw new Error("unsupported key derivation function: ".concat(n.kdf.toString()));case 5:if((r=new b(n.kdf.parameters)).prf){e.next=10;break}throw new Error("unsupported PRF HMAC-SHA-1");case 10:if("1.2.840.113549.2.9"===r.prf.algIdent){e.next=12;break}throw new Error("unsupported PRF ".concat(r.prf.toString()));case 12:if("2.16.840.1.101.3.4.1.2"===n.encScheme.algIdent){e.next=14;break}throw new Error("unsupported encryption scheme: ".concat(n.encScheme.toString()));case 14:if(n.encScheme.parameters&&"bytes"in n.encScheme.parameters){e.next=16;break}throw new Error("expected IV as bytes for AES-128-CBC, "+"got: ".concat(JSON.stringify(n.encScheme.parameters)));case 16:return o=r.keyLength||16,i=n.encScheme.parameters.bytes,e.next=20,f.deriveKey(d.HashAlgorithm.Sha256,t,r.salt,r.iterCount,o);case 20:return u=e.sent,e.next=23,s.createDecipheriv(s.CipherAlgorithm.Aes128Cbc,u,i,this.data);case 23:return c=e.sent,e.abrupt("return",v.parse(c));case 25:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}],[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.EncryptedPrivateKeyInfo=k},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return Uint8Array.from(atob(e),(function(e){return e.charCodeAt(0)}))},t.encode=function(e){return btoa(String.fromCharCode.apply(null,Array.from(e)))}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.legacy=function(e,t){var n=new Uint8Array(e.length+8);n.set(e,0);var r=new DataView(n.buffer,n.byteOffset,n.byteLength);0xffffffffff===t?(r.setInt32(e.length+0,255),r.setInt32(e.length+4,-1)):(r.setInt32(e.length+0,t<0?-1:0),r.setInt32(e.length+4,t));var i=Uint8Array.from([255]);return o.deriveKey(a.HashAlgorithm.Sha512,n,i,2048,32)};var o=u(n(250)),a=u(n(202));function i(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(i=function(e){return e?n:t})(e)}function u(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=i(t);if(n&&n.has(e))return n.get(e);var o={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=a?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}return o.default=e,n&&n.set(e,o),o}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayEqual=function(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;var n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=new DataView(t.buffer,t.byteOffset,t.byteLength),o=e.byteLength;for(;o--;)if(n.getUint8(o)!==r.getUint8(o))return!1;return!0},t.arrayStartsWith=function(e,t){if(e.byteLength=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarAllowances=null!=r.hbarAllowances?r.hbarAllowances:[],e._tokenAllowances=null!=r.tokenAllowances?r.tokenAllowances:[],e._nftAllowances=null!=r.nftAllowances?r.nftAllowances:[],e}return(0,i.default)(n,[{key:"hbarAllowances",get:function(){return this._hbarAllowances}},{key:"addHbarAllowance",value:function(e,t){return this._requireNotFrozen(),this._hbarAllowances.push(new m.default({spenderAccountId:"string"==typeof e?f.default.fromString(e):e,amount:t instanceof y.default?t:new y.default(t),ownerAccountId:null})),this}},{key:"tokenAllowances",get:function(){return this._tokenAllowances}},{key:"addTokenAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._tokenAllowances.push(new b.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof n?h.default.fromNumber(n):n,ownerAccountId:null})),this}},{key:"addTokenNftAllowance",value:function(e,t){this._requireNotFrozen();var n,r="string"==typeof e?p.default.fromString(e):e,o="string"==typeof t?f.default.fromString(t):t,a=!1,i=g(this._nftAllowances);try{for(i.s();!(n=i.n()).done;){var u=n.value;if(0===u.tokenId.compare(r.tokenId)&&0===u.spenderAccountId.compare(o)){null!=u.serialNumbers&&u.serialNumbers.push(r.serial),a=!0;break}}}catch(e){i.e(e)}finally{i.f()}return a||this._nftAllowances.push(new v.default({tokenId:r.tokenId,spenderAccountId:o,serialNumbers:[r.serial],ownerAccountId:null})),this}},{key:"addAllTokenNftAllowance",value:function(e,t){return this._requireNotFrozen(),this._nftAllowances.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:null,ownerAccountId:null})),this}},{key:"_validateChecksums",value:function(e){this._hbarAllowances.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenAllowances.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.adjustAllowance(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAdjustAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarAllowances.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenAllowances.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftAllowances.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAdjustAllowance;return l.default._fromProtobufTransactions(new n({hbarAllowances:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),tokenAllowances:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),nftAllowances:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=I,l.TRANSACTION_REGISTRY.set("cryptoAdjustAllowance",I._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.valueToLong=function(e){return o.default.isBigNumber(e)?e:new o.default(e.toString())};var o=r(n(145))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r,a,i,u){var c;return(0,o.default)(this,n),(c=t.call(this,"Entity ID ".concat(e.toString(),".").concat(r.toString(),".").concat(a.toString(),"-").concat(i," was incorrect."))).name="BadEntityIdException",c.shard=e,c.realm=r,c.num=a,c.presentChecksum=i,c.expectedChecksum=u,c}return n}((0,r(n(42)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=t;function o(){r.util._configure(),r.Writer._configure(r.BufferWriter),r.Reader._configure(r.BufferReader)}r.build="minimal",r.Writer=n(498),r.BufferWriter=n(985),r.Reader=n(499),r.BufferReader=n(986),r.util=n(149),r.rpc=n(987),r.roots=n(989),r.configure=o,o()},function(e,t,n){"use strict";e.exports=function(e,t){var n=new Array(arguments.length-1),r=0,o=2,a=!0;for(;o1&&"="===e.charAt(t);)++n;return Math.ceil(3*e.length)/4-n};for(var o=new Array(64),a=new Array(123),i=0;i<64;)a[o[i]=i<26?i+65:i<52?i+71:i<62?i-4:i-59|43]=i++;r.encode=function(e,t,n){for(var r,a=null,i=[],u=0,c=0;t>2],r=(3&s)<<4,c=1;break;case 1:i[u++]=o[r|s>>4],r=(15&s)<<2,c=2;break;case 2:i[u++]=o[r|s>>6],i[u++]=o[63&s],c=0}u>8191&&((a||(a=[])).push(String.fromCharCode.apply(String,i)),u=0)}return c&&(i[u++]=o[r],i[u++]=61,1===c&&(i[u++]=61)),a?(u&&a.push(String.fromCharCode.apply(String,i.slice(0,u))),a.join("")):String.fromCharCode.apply(String,i.slice(0,u))};r.decode=function(e,t,n){for(var r,o=n,i=0,u=0;u1)break;if(void 0===(c=a[c]))throw Error("invalid encoding");switch(i){case 0:r=c,i=1;break;case 1:t[n++]=r<<2|(48&c)>>4,r=c,i=2;break;case 2:t[n++]=(15&r)<<4|(60&c)>>2,r=c,i=3;break;case 3:t[n++]=(3&r)<<6|c,i=0}}if(1===i)throw Error("invalid encoding");return n-o},r.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}},function(e,t,n){"use strict";function r(){this._listeners={}}e.exports=r,r.prototype.on=function(e,t,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:t,ctx:n||this}),this},r.prototype.off=function(e,t){if(void 0===e)this._listeners={};else if(void 0===t)this._listeners[e]=[];else for(var n=this._listeners[e],r=0;r0?0:2147483648,n,r);else if(isNaN(t))e(2143289344,n,r);else if(t>34028234663852886e22)e((o<<31|2139095040)>>>0,n,r);else if(t<11754943508222875e-54)e((o<<31|Math.round(t/1401298464324817e-60))>>>0,n,r);else{var a=Math.floor(Math.log(t)/Math.LN2);e((o<<31|a+127<<23|8388607&Math.round(t*Math.pow(2,-a)*8388608))>>>0,n,r)}}function n(e,t,n){var r=e(t,n),o=2*(r>>31)+1,a=r>>>23&255,i=8388607&r;return 255===a?i?NaN:o*(1/0):0===a?1401298464324817e-60*o*i:o*Math.pow(2,a-150)*(i+8388608)}e.writeFloatLE=t.bind(null,o),e.writeFloatBE=t.bind(null,a),e.readFloatLE=n.bind(null,i),e.readFloatBE=n.bind(null,u)}(),"undefined"!=typeof Float64Array?function(){var t=new Float64Array([-0]),n=new Uint8Array(t.buffer),r=128===n[7];function o(e,r,o){t[0]=e,r[o]=n[0],r[o+1]=n[1],r[o+2]=n[2],r[o+3]=n[3],r[o+4]=n[4],r[o+5]=n[5],r[o+6]=n[6],r[o+7]=n[7]}function a(e,r,o){t[0]=e,r[o]=n[7],r[o+1]=n[6],r[o+2]=n[5],r[o+3]=n[4],r[o+4]=n[3],r[o+5]=n[2],r[o+6]=n[1],r[o+7]=n[0]}function i(e,r){return n[0]=e[r],n[1]=e[r+1],n[2]=e[r+2],n[3]=e[r+3],n[4]=e[r+4],n[5]=e[r+5],n[6]=e[r+6],n[7]=e[r+7],t[0]}function u(e,r){return n[7]=e[r],n[6]=e[r+1],n[5]=e[r+2],n[4]=e[r+3],n[3]=e[r+4],n[2]=e[r+5],n[1]=e[r+6],n[0]=e[r+7],t[0]}e.writeDoubleLE=r?o:a,e.writeDoubleBE=r?a:o,e.readDoubleLE=r?i:u,e.readDoubleBE=r?u:i}():function(){function t(e,t,n,r,o,a){var i=r<0?1:0;if(i&&(r=-r),0===r)e(0,o,a+t),e(1/r>0?0:2147483648,o,a+n);else if(isNaN(r))e(0,o,a+t),e(2146959360,o,a+n);else if(r>17976931348623157e292)e(0,o,a+t),e((i<<31|2146435072)>>>0,o,a+n);else{var u;if(r<22250738585072014e-324)e((u=r/5e-324)>>>0,o,a+t),e((i<<31|u/4294967296)>>>0,o,a+n);else{var c=Math.floor(Math.log(r)/Math.LN2);1024===c&&(c=1023),e(4503599627370496*(u=r*Math.pow(2,-c))>>>0,o,a+t),e((i<<31|c+1023<<20|1048576*u&1048575)>>>0,o,a+n)}}}function n(e,t,n,r,o){var a=e(r,o+t),i=e(r,o+n),u=2*(i>>31)+1,c=i>>>20&2047,s=4294967296*(1048575&i)+a;return 2047===c?s?NaN:u*(1/0):0===c?5e-324*u*s:u*Math.pow(2,c-1075)*(s+4503599627370496)}e.writeDoubleLE=t.bind(null,o,0,4),e.writeDoubleBE=t.bind(null,a,4,0),e.readDoubleLE=n.bind(null,i,0,4),e.readDoubleBE=n.bind(null,u,4,0)}(),e}function o(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}function a(e,t,n){t[n]=e>>>24,t[n+1]=e>>>16&255,t[n+2]=e>>>8&255,t[n+3]=255&e}function i(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function u(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}e.exports=r(r)},function(module,exports,__webpack_require__){"use strict";function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}module.exports=inquire},function(e,t,n){"use strict";var r=t;r.length=function(e){for(var t=0,n=0,r=0;r191&&r<224?a[i++]=(31&r)<<6|63&e[t++]:r>239&&r<365?(r=((7&r)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,a[i++]=55296+(r>>10),a[i++]=56320+(1023&r)):a[i++]=(15&r)<<12|(63&e[t++])<<6|63&e[t++],i>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,a)),i=0);return o?(i&&o.push(String.fromCharCode.apply(String,a.slice(0,i))),o.join("")):String.fromCharCode.apply(String,a.slice(0,i))},r.write=function(e,t,n){for(var r,o,a=n,i=0;i>6|192,t[n++]=63&r|128):55296==(64512&r)&&56320==(64512&(o=e.charCodeAt(i+1)))?(r=65536+((1023&r)<<10)+(1023&o),++i,t[n++]=r>>18|240,t[n++]=r>>12&63|128,t[n++]=r>>6&63|128,t[n++]=63&r|128):(t[n++]=r>>12|224,t[n++]=r>>6&63|128,t[n++]=63&r|128);return n-a}},function(e,t,n){"use strict";e.exports=function(e,t,n){var r=n||8192,o=r>>>1,a=null,i=r;return function(n){if(n<1||n>o)return e(n);i+n>r&&(a=e(r),i=0);var u=t.call(a,i,i+=n);return 7&i&&(i=1+(7|i)),u}}},function(e,t,n){"use strict";e.exports=o;var r=n(149);function o(e,t){this.lo=e>>>0,this.hi=t>>>0}var a=o.zero=new o(0,0);a.toNumber=function(){return 0},a.zzEncode=a.zzDecode=function(){return this},a.length=function(){return 1};var i=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(e){if(0===e)return a;var t=e<0;t&&(e=-e);var n=e>>>0,r=(e-n)/4294967296>>>0;return t&&(r=~r>>>0,n=~n>>>0,++n>4294967295&&(n=0,++r>4294967295&&(r=0))),new o(n,r)},o.from=function(e){if("number"==typeof e)return o.fromNumber(e);if(r.isString(e)){if(!r.Long)return o.fromNumber(parseInt(e,10));e=r.Long.fromString(e)}return e.low||e.high?new o(e.low>>>0,e.high>>>0):a},o.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var t=1+~this.lo>>>0,n=~this.hi>>>0;return t||(n=n+1>>>0),-(t+4294967296*n)}return this.lo+4294967296*this.hi},o.prototype.toLong=function(e){return r.Long?new r.Long(0|this.lo,0|this.hi,Boolean(e)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(e)}};var u=String.prototype.charCodeAt;o.fromHash=function(e){return e===i?a:new o((u.call(e,0)|u.call(e,1)<<8|u.call(e,2)<<16|u.call(e,3)<<24)>>>0,(u.call(e,4)|u.call(e,5)<<8|u.call(e,6)<<16|u.call(e,7)<<24)>>>0)},o.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},o.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this},o.prototype.zzDecode=function(){var e=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this},o.prototype.length=function(){var e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===t?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}},function(e,t,n){"use strict";e.exports=a;var r=n(498);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(149);function a(){r.call(this)}function i(e,t,n){e.length<40?o.utf8.write(e,t,n):t.utf8Write?t.utf8Write(e,n):t.write(e,n)}a._configure=function(){a.alloc=o._Buffer_allocUnsafe,a.writeBytesBuffer=o.Buffer&&o.Buffer.prototype instanceof Uint8Array&&"set"===o.Buffer.prototype.set.name?function(e,t,n){t.set(e,n)}:function(e,t,n){if(e.copy)e.copy(t,n,0,e.length);else for(var r=0;r>>0;return this.uint32(t),t&&this._push(a.writeBytesBuffer,t,e),this},a.prototype.string=function(e){var t=o.Buffer.byteLength(e);return this.uint32(t),t&&this._push(i,t,e),this},a._configure()},function(e,t,n){"use strict";e.exports=a;var r=n(499);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(149);function a(e){r.call(this,e)}a._configure=function(){o.Buffer&&(a.prototype._slice=o.Buffer.prototype.slice)},a.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))},a._configure()},function(e,t,n){"use strict";t.Service=n(988)},function(e,t,n){"use strict";e.exports=o;var r=n(149);function o(e,t,n){if("function"!=typeof e)throw TypeError("rpcImpl must be a function");r.EventEmitter.call(this),this.rpcImpl=e,this.requestDelimited=Boolean(t),this.responseDelimited=Boolean(n)}(o.prototype=Object.create(r.EventEmitter.prototype)).constructor=o,o.prototype.rpcCall=function e(t,n,o,a,i){if(!a)throw TypeError("request must be specified");var u=this;if(!i)return r.asPromise(e,u,t,n,o,a);if(u.rpcImpl)try{return u.rpcImpl(t,n[u.requestDelimited?"encodeDelimited":"encode"](a).finish(),(function(e,n){if(e)return u.emit("error",e,t),i(e);if(null!==n){if(!(n instanceof o))try{n=o[u.responseDelimited?"decodeDelimited":"decode"](n)}catch(e){return u.emit("error",e,t),i(e)}return u.emit("data",n,t),i(null,n)}u.end(!0)}))}catch(e){return u.emit("error",e,t),void setTimeout((function(){i(e)}),0)}else setTimeout((function(){i(Error("already ended"))}),0)},o.prototype.end=function(e){return this.rpcImpl&&(e||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.proto=t.google=t.default=void 0;var o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=i?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}o.default=e,n&&n.set(e,o);return o}(n(497));function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}var i=o.Reader,u=o.Writer,c=o.util,s=o.roots.hashgraph||(o.roots.hashgraph={});t.default=s;var l=s.proto=function(){var e,t,n={};return n.TokenUnitBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.SingleAccountBalances=function(){function e(e){if(this.tokenUnitBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hbarBalance=e.uint64();break;case 3:r.tokenUnitBalances&&r.tokenUnitBalances.length||(r.tokenUnitBalances=[]),r.tokenUnitBalances.push(s.proto.TokenUnitBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.AllAccountBalances=function(){function e(e){if(this.allAccounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.allAccounts&&r.allAccounts.length||(r.allAccounts=[]),r.allAccounts.push(s.proto.SingleAccountBalances.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ShardID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.RealmID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AccountID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.accountNum=e.int64();break;case 4:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.fileNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.contractNum=e.int64();break;case 4:r.evmAddress=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionValidStart=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.scheduled=e.bool();break;case 4:r.nonce=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.AccountAmount=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.sint64();break;case 3:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransferList=function(){function e(e){if(this.accountAmounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountAmounts&&r.accountAmounts.length||(r.accountAmounts=[]),r.accountAmounts.push(s.proto.AccountAmount.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftTransfer=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.senderAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.receiverAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.serialNumber=e.int64();break;case 4:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenTransferList=function(){function e(e){if(this.transfers=[],this.nftTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.transfers&&r.transfers.length||(r.transfers=[]),r.transfers.push(s.proto.AccountAmount.decode(e,e.uint32()));break;case 3:r.nftTransfers&&r.nftTransfers.length||(r.nftTransfers=[]),r.nftTransfers.push(s.proto.NftTransfer.decode(e,e.uint32()));break;case 4:r.expectedDecimals=s.google.protobuf.UInt32Value.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Fraction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.numerator=e.int64();break;case 2:r.denominator=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TopicID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.topicNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.tokenNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.scheduleNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenType=(e={},(t=Object.create(e))[e[0]="FUNGIBLE_COMMON"]=0,t[e[1]="NON_FUNGIBLE_UNIQUE"]=1,t),n.SubType=function(){var e={},t=Object.create(e);return t[e[0]="DEFAULT"]=0,t[e[1]="TOKEN_FUNGIBLE_COMMON"]=1,t[e[2]="TOKEN_NON_FUNGIBLE_UNIQUE"]=2,t[e[3]="TOKEN_FUNGIBLE_COMMON_WITH_CUSTOM_FEES"]=3,t[e[4]="TOKEN_NON_FUNGIBLE_UNIQUE_WITH_CUSTOM_FEES"]=4,t}(),n.TokenSupplyType=function(){var e={},t=Object.create(e);return t[e[0]="INFINITE"]=0,t[e[1]="FINITE"]=1,t}(),n.TokenFreezeStatus=function(){var e={},t=Object.create(e);return t[e[0]="FreezeNotApplicable"]=0,t[e[1]="Frozen"]=1,t[e[2]="Unfrozen"]=2,t}(),n.TokenKycStatus=function(){var e={},t=Object.create(e);return t[e[0]="KycNotApplicable"]=0,t[e[1]="Granted"]=1,t[e[2]="Revoked"]=2,t}(),n.TokenPauseStatus=function(){var e={},t=Object.create(e);return t[e[0]="PauseNotApplicable"]=0,t[e[1]="Paused"]=1,t[e[2]="Unpaused"]=2,t}(),n.Key=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdKey=s.proto.ThresholdKey.decode(e,e.uint32());break;case 6:r.keyList=s.proto.KeyList.decode(e,e.uint32());break;case 7:r.ECDSASecp256k1=e.bytes();break;case 8:r.delegatableContractId=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdKey=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.threshold=e.uint32();break;case 2:r.keys=s.proto.KeyList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.KeyList=function(){function e(e){if(this.keys=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.keys&&r.keys.length||(r.keys=[]),r.keys.push(s.proto.Key.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Signature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contract=e.bytes();break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdSignature=s.proto.ThresholdSignature.decode(e,e.uint32());break;case 6:r.signatureList=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdSignature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SignatureList=function(){function e(e){if(this.sigs=[],e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs&&r.sigs.length||(r.sigs=[]),r.sigs.push(s.proto.Signature.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SignaturePair=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.pubKeyPrefix=e.bytes();break;case 2:r.contract=e.bytes();break;case 3:r.ed25519=e.bytes();break;case 4:r.RSA_3072=e.bytes();break;case 5:r.ECDSA_384=e.bytes();break;case 6:r.ECDSASecp256k1=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.SignatureMap=function(){function e(e){if(this.sigPair=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.sigPair&&r.sigPair.length||(r.sigPair=[]),r.sigPair.push(s.proto.SignaturePair.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.HederaFunctionality=function(){var e={},t=Object.create(e);return t[e[0]="NONE"]=0,t[e[1]="CryptoTransfer"]=1,t[e[2]="CryptoUpdate"]=2,t[e[3]="CryptoDelete"]=3,t[e[4]="CryptoAddLiveHash"]=4,t[e[5]="CryptoDeleteLiveHash"]=5,t[e[6]="ContractCall"]=6,t[e[7]="ContractCreate"]=7,t[e[8]="ContractUpdate"]=8,t[e[9]="FileCreate"]=9,t[e[10]="FileAppend"]=10,t[e[11]="FileUpdate"]=11,t[e[12]="FileDelete"]=12,t[e[13]="CryptoGetAccountBalance"]=13,t[e[14]="CryptoGetAccountRecords"]=14,t[e[15]="CryptoGetInfo"]=15,t[e[16]="ContractCallLocal"]=16,t[e[17]="ContractGetInfo"]=17,t[e[18]="ContractGetBytecode"]=18,t[e[19]="GetBySolidityID"]=19,t[e[20]="GetByKey"]=20,t[e[21]="CryptoGetLiveHash"]=21,t[e[22]="CryptoGetStakers"]=22,t[e[23]="FileGetContents"]=23,t[e[24]="FileGetInfo"]=24,t[e[25]="TransactionGetRecord"]=25,t[e[26]="ContractGetRecords"]=26,t[e[27]="CryptoCreate"]=27,t[e[28]="SystemDelete"]=28,t[e[29]="SystemUndelete"]=29,t[e[30]="ContractDelete"]=30,t[e[31]="Freeze"]=31,t[e[32]="CreateTransactionRecord"]=32,t[e[33]="CryptoAccountAutoRenew"]=33,t[e[34]="ContractAutoRenew"]=34,t[e[35]="GetVersionInfo"]=35,t[e[36]="TransactionGetReceipt"]=36,t[e[50]="ConsensusCreateTopic"]=50,t[e[51]="ConsensusUpdateTopic"]=51,t[e[52]="ConsensusDeleteTopic"]=52,t[e[53]="ConsensusGetTopicInfo"]=53,t[e[54]="ConsensusSubmitMessage"]=54,t[e[55]="UncheckedSubmit"]=55,t[e[56]="TokenCreate"]=56,t[e[58]="TokenGetInfo"]=58,t[e[59]="TokenFreezeAccount"]=59,t[e[60]="TokenUnfreezeAccount"]=60,t[e[61]="TokenGrantKycToAccount"]=61,t[e[62]="TokenRevokeKycFromAccount"]=62,t[e[63]="TokenDelete"]=63,t[e[64]="TokenUpdate"]=64,t[e[65]="TokenMint"]=65,t[e[66]="TokenBurn"]=66,t[e[67]="TokenAccountWipe"]=67,t[e[68]="TokenAssociateToAccount"]=68,t[e[69]="TokenDissociateFromAccount"]=69,t[e[70]="ScheduleCreate"]=70,t[e[71]="ScheduleDelete"]=71,t[e[72]="ScheduleSign"]=72,t[e[73]="ScheduleGetInfo"]=73,t[e[74]="TokenGetAccountNftInfos"]=74,t[e[75]="TokenGetNftInfo"]=75,t[e[76]="TokenGetNftInfos"]=76,t[e[77]="TokenFeeScheduleUpdate"]=77,t[e[78]="NetworkGetExecutionTime"]=78,t[e[79]="TokenPause"]=79,t[e[80]="TokenUnpause"]=80,t[e[81]="CryptoApproveAllowance"]=81,t[e[82]="CryptoAdjustAllowance"]=82,t}(),n.FeeComponents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.min=e.int64();break;case 2:r.max=e.int64();break;case 3:r.constant=e.int64();break;case 4:r.bpt=e.int64();break;case 5:r.vpt=e.int64();break;case 6:r.rbh=e.int64();break;case 7:r.sbh=e.int64();break;case 8:r.gas=e.int64();break;case 9:r.tv=e.int64();break;case 10:r.bpr=e.int64();break;case 11:r.sbpr=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionFeeSchedule=function(){function e(e){if(this.fees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.hederaFunctionality=e.int32();break;case 2:r.feeData=s.proto.FeeData.decode(e,e.uint32());break;case 3:r.fees&&r.fees.length||(r.fees=[]),r.fees.push(s.proto.FeeData.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FeeData=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 2:r.networkdata=s.proto.FeeComponents.decode(e,e.uint32());break;case 3:r.servicedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 4:r.subType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FeeSchedule=function(){function e(e){if(this.transactionFeeSchedule=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFeeSchedule&&r.transactionFeeSchedule.length||(r.transactionFeeSchedule=[]),r.transactionFeeSchedule.push(s.proto.TransactionFeeSchedule.decode(e,e.uint32()));break;case 2:r.expiryTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CurrentAndNextFeeSchedule=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;case 2:r.nextFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ServiceEndpoint=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddressV4=e.bytes();break;case 2:r.port=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddress=function(){function e(e){if(this.serviceEndpoint=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddress=e.bytes();break;case 2:r.portno=e.int32();break;case 3:r.memo=e.bytes();break;case 4:r.RSA_PubKey=e.string();break;case 5:r.nodeId=e.int64();break;case 6:r.nodeAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.nodeCertHash=e.bytes();break;case 8:r.serviceEndpoint&&r.serviceEndpoint.length||(r.serviceEndpoint=[]),r.serviceEndpoint.push(s.proto.ServiceEndpoint.decode(e,e.uint32()));break;case 9:r.description=e.string();break;case 10:r.stake=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddressBook=function(){function e(e){if(this.nodeAddress=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeAddress&&r.nodeAddress.length||(r.nodeAddress=[]),r.nodeAddress.push(s.proto.NodeAddress.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SemanticVersion=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.major=e.int32();break;case 2:r.minor=e.int32();break;case 3:r.patch=e.int32();break;case 4:r.pre=e.string();break;case 5:r.build=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.Setting=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.value=e.string();break;case 3:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ServicesConfigurationList=function(){function e(e){if(this.nameValue=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nameValue&&r.nameValue.length||(r.nameValue=[]),r.nameValue.push(s.proto.Setting.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenRelationship=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.balance=e.uint64();break;case 4:r.kycStatus=e.int32();break;case 5:r.freezeStatus=e.int32();break;case 6:r.decimals=e.uint32();break;case 7:r.automaticAssociation=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;case 3:r.decimals=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalances=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenAssociation=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAllowance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NftAllowance=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.Timestamp=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;case 2:r.nanos=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.TimestampSeconds=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusCreateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 3:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Duration=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusDeleteTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 5:r.topicInfo=s.proto.ConsensusTopicInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseType=function(){var e={},t=Object.create(e);return t[e[0]="ANSWER_ONLY"]=0,t[e[1]="ANSWER_STATE_PROOF"]=1,t[e[2]="COST_ANSWER"]=2,t[e[3]="COST_ANSWER_STATE_PROOF"]=3,t}(),n.QueryHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.payment=s.proto.Transaction.decode(e,e.uint32());break;case 2:r.responseType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.Transaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.body=s.proto.TransactionBody.decode(e,e.uint32());break;case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;case 3:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;case 4:r.bodyBytes=e.bytes();break;case 5:r.signedTransactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.nodeAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transactionFee=e.uint64();break;case 4:r.transactionValidDuration=s.proto.Duration.decode(e,e.uint32());break;case 5:r.generateRecord=e.bool();break;case 6:r.memo=e.string();break;case 7:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 8:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 9:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 22:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoAddLiveHash=s.proto.CryptoAddLiveHashTransactionBody.decode(e,e.uint32());break;case 48:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 49:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 11:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 12:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 13:r.cryptoDeleteLiveHash=s.proto.CryptoDeleteLiveHashTransactionBody.decode(e,e.uint32());break;case 14:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 15:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 16:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 17:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 18:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 19:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 20:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 21:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 23:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 24:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 25:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 26:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 27:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 28:r.uncheckedSubmit=s.proto.UncheckedSubmitBody.decode(e,e.uint32());break;case 29:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 31:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 33:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 34:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 35:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 37:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 38:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 39:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 40:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 41:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 45:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 46:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 47:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 42:r.scheduleCreate=s.proto.ScheduleCreateTransactionBody.decode(e,e.uint32());break;case 43:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;case 44:r.scheduleSign=s.proto.ScheduleSignTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemUndeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FreezeTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.startHour=e.int32();break;case 2:r.startMin=e.int32();break;case 3:r.endHour=e.int32();break;case 4:r.endMin=e.int32();break;case 5:r.updateFile=s.proto.FileID.decode(e,e.uint32());break;case 6:r.fileHash=e.bytes();break;case 7:r.startTime=s.proto.Timestamp.decode(e,e.uint32());break;case 8:r.freezeType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FreezeType=function(){var e={},t=Object.create(e);return t[e[0]="UNKNOWN_FREEZE_TYPE"]=0,t[e[1]="FREEZE_ONLY"]=1,t[e[2]="PREPARE_UPGRADE"]=2,t[e[3]="FREEZE_UPGRADE"]=3,t[e[4]="FREEZE_ABORT"]=4,t[e[5]="TELEMETRY_UPGRADE"]=5,t}(),n.ContractCallTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.gas=e.int64();break;case 3:r.amount=e.int64();break;case 4:r.functionParameters=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.gas=e.int64();break;case 5:r.initialBalance=e.int64();break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.constructorParameters=e.bytes();break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.ContractUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 9:r.memo=e.string();break;case 10:r.memoWrapper=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.LiveHash=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hash=e.bytes();break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 5:r.duration=s.proto.Duration.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAddLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 3:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.key=s.proto.Key.decode(e,e.uint32());break;case 2:r.initialBalance=e.uint64();break;case 3:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.sendRecordThreshold=e.uint64();break;case 7:r.receiveRecordThreshold=e.uint64();break;case 8:r.receiverSigRequired=e.bool();break;case 9:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;case 14:r.maxAutomaticTokenAssociations=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.deleteAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountOfLiveHash=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHashToDelete=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoTransferTransactionBody=function(){function e(e){if(this.tokenTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transfers=s.proto.TransferList.decode(e,e.uint32());break;case 2:r.tokenTransfers&&r.tokenTransfers.length||(r.tokenTransfers=[]),r.tokenTransfers.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.accountIDToUpdate=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.key=s.proto.Key.decode(e,e.uint32());break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.proxyFraction=e.int32();break;case 6:r.sendRecordThreshold=e.uint64();break;case 11:r.sendRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 7:r.receiveRecordThreshold=e.uint64();break;case 12:r.receiveRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 10:r.receiverSigRequired=e.bool();break;case 13:r.receiverSigRequiredWrapper=s.google.protobuf.BoolValue.decode(e,e.uint32());break;case 14:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 15:r.maxAutomaticTokenAssociations=s.google.protobuf.Int32Value.decode(e,e.uint32());break;case 16:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoApproveAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAdjustAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FileAppendTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 6:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 7:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.FileDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transferContractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusUpdateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusMessageChunkInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.initialTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.total=e.int32();break;case 3:r.number=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusSubmitMessageTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.UncheckedSubmitBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenCreateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.symbol=e.string();break;case 3:r.decimals=e.uint32();break;case 4:r.initialSupply=e.uint64();break;case 5:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.freezeDefault=e.bool();break;case 13:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 14:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 15:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 16:r.memo=e.string();break;case 17:r.tokenType=e.int32();break;case 18:r.supplyType=e.int32();break;case 19:r.maxSupply=e.int64();break;case 20:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 21:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 22:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FractionalFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fractionalAmount=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.minimumAmount=e.int64();break;case 3:r.maximumAmount=e.int64();break;case 4:r.netOfTransfers=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.FixedFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.denominatingTokenId=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.RoyaltyFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.exchangeValueFraction=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.fallbackFee=s.proto.FixedFee.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CustomFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fixedFee=s.proto.FixedFee.decode(e,e.uint32());break;case 2:r.fractionalFee=s.proto.FractionalFee.decode(e,e.uint32());break;case 4:r.royaltyFee=s.proto.RoyaltyFee.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.AssessedCustomFee=function(){function e(e){if(this.effectivePayerAccountId=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.effectivePayerAccountId&&r.effectivePayerAccountId.length||(r.effectivePayerAccountId=[]),r.effectivePayerAccountId.push(s.proto.AccountID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnfreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGrantKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenRevokeKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.name=e.string();break;case 4:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 12:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 14:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 15:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenMintTransactionBody=function(){function e(e){if(this.metadata=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:r.metadata&&r.metadata.length||(r.metadata=[]),r.metadata.push(e.bytes());break;default:e.skipType(7&o)}}return r},e}(),n.TokenBurnTransactionBody=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.uint64();break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenDissociateTransactionBody=function(){function e(e){if(this.tokens=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFeeScheduleUpdateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenPauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnpauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 2:r.memo=e.string();break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SchedulableTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFee=e.uint64();break;case 2:r.memo=e.string();break;case 3:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 4:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 5:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 6:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 37:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 38:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 7:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 8:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 9:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 11:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 12:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 13:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 14:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 15:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 16:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 17:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 18:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 19:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 20:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 21:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 22:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 23:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 24:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 25:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 26:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 27:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 28:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 29:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 30:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 31:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 33:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 39:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 35:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 34:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleSignTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.responseType=e.int32();break;case 3:r.cost=e.uint64();break;case 4:r.stateProof=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.cost=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ResponseCodeEnum=function(){var e={},t=Object.create(e);return t[e[0]="OK"]=0,t[e[1]="INVALID_TRANSACTION"]=1,t[e[2]="PAYER_ACCOUNT_NOT_FOUND"]=2,t[e[3]="INVALID_NODE_ACCOUNT"]=3,t[e[4]="TRANSACTION_EXPIRED"]=4,t[e[5]="INVALID_TRANSACTION_START"]=5,t[e[6]="INVALID_TRANSACTION_DURATION"]=6,t[e[7]="INVALID_SIGNATURE"]=7,t[e[8]="MEMO_TOO_LONG"]=8,t[e[9]="INSUFFICIENT_TX_FEE"]=9,t[e[10]="INSUFFICIENT_PAYER_BALANCE"]=10,t[e[11]="DUPLICATE_TRANSACTION"]=11,t[e[12]="BUSY"]=12,t[e[13]="NOT_SUPPORTED"]=13,t[e[14]="INVALID_FILE_ID"]=14,t[e[15]="INVALID_ACCOUNT_ID"]=15,t[e[16]="INVALID_CONTRACT_ID"]=16,t[e[17]="INVALID_TRANSACTION_ID"]=17,t[e[18]="RECEIPT_NOT_FOUND"]=18,t[e[19]="RECORD_NOT_FOUND"]=19,t[e[20]="INVALID_SOLIDITY_ID"]=20,t[e[21]="UNKNOWN"]=21,t[e[22]="SUCCESS"]=22,t[e[23]="FAIL_INVALID"]=23,t[e[24]="FAIL_FEE"]=24,t[e[25]="FAIL_BALANCE"]=25,t[e[26]="KEY_REQUIRED"]=26,t[e[27]="BAD_ENCODING"]=27,t[e[28]="INSUFFICIENT_ACCOUNT_BALANCE"]=28,t[e[29]="INVALID_SOLIDITY_ADDRESS"]=29,t[e[30]="INSUFFICIENT_GAS"]=30,t[e[31]="CONTRACT_SIZE_LIMIT_EXCEEDED"]=31,t[e[32]="LOCAL_CALL_MODIFICATION_EXCEPTION"]=32,t[e[33]="CONTRACT_REVERT_EXECUTED"]=33,t[e[34]="CONTRACT_EXECUTION_EXCEPTION"]=34,t[e[35]="INVALID_RECEIVING_NODE_ACCOUNT"]=35,t[e[36]="MISSING_QUERY_HEADER"]=36,t[e[37]="ACCOUNT_UPDATE_FAILED"]=37,t[e[38]="INVALID_KEY_ENCODING"]=38,t[e[39]="NULL_SOLIDITY_ADDRESS"]=39,t[e[40]="CONTRACT_UPDATE_FAILED"]=40,t[e[41]="INVALID_QUERY_HEADER"]=41,t[e[42]="INVALID_FEE_SUBMITTED"]=42,t[e[43]="INVALID_PAYER_SIGNATURE"]=43,t[e[44]="KEY_NOT_PROVIDED"]=44,t[e[45]="INVALID_EXPIRATION_TIME"]=45,t[e[46]="NO_WACL_KEY"]=46,t[e[47]="FILE_CONTENT_EMPTY"]=47,t[e[48]="INVALID_ACCOUNT_AMOUNTS"]=48,t[e[49]="EMPTY_TRANSACTION_BODY"]=49,t[e[50]="INVALID_TRANSACTION_BODY"]=50,t[e[51]="INVALID_SIGNATURE_TYPE_MISMATCHING_KEY"]=51,t[e[52]="INVALID_SIGNATURE_COUNT_MISMATCHING_KEY"]=52,t[e[53]="EMPTY_LIVE_HASH_BODY"]=53,t[e[54]="EMPTY_LIVE_HASH"]=54,t[e[55]="EMPTY_LIVE_HASH_KEYS"]=55,t[e[56]="INVALID_LIVE_HASH_SIZE"]=56,t[e[57]="EMPTY_QUERY_BODY"]=57,t[e[58]="EMPTY_LIVE_HASH_QUERY"]=58,t[e[59]="LIVE_HASH_NOT_FOUND"]=59,t[e[60]="ACCOUNT_ID_DOES_NOT_EXIST"]=60,t[e[61]="LIVE_HASH_ALREADY_EXISTS"]=61,t[e[62]="INVALID_FILE_WACL"]=62,t[e[63]="SERIALIZATION_FAILED"]=63,t[e[64]="TRANSACTION_OVERSIZE"]=64,t[e[65]="TRANSACTION_TOO_MANY_LAYERS"]=65,t[e[66]="CONTRACT_DELETED"]=66,t[e[67]="PLATFORM_NOT_ACTIVE"]=67,t[e[68]="KEY_PREFIX_MISMATCH"]=68,t[e[69]="PLATFORM_TRANSACTION_NOT_CREATED"]=69,t[e[70]="INVALID_RENEWAL_PERIOD"]=70,t[e[71]="INVALID_PAYER_ACCOUNT_ID"]=71,t[e[72]="ACCOUNT_DELETED"]=72,t[e[73]="FILE_DELETED"]=73,t[e[74]="ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS"]=74,t[e[75]="SETTING_NEGATIVE_ACCOUNT_BALANCE"]=75,t[e[76]="OBTAINER_REQUIRED"]=76,t[e[77]="OBTAINER_SAME_CONTRACT_ID"]=77,t[e[78]="OBTAINER_DOES_NOT_EXIST"]=78,t[e[79]="MODIFYING_IMMUTABLE_CONTRACT"]=79,t[e[80]="FILE_SYSTEM_EXCEPTION"]=80,t[e[81]="AUTORENEW_DURATION_NOT_IN_RANGE"]=81,t[e[82]="ERROR_DECODING_BYTESTRING"]=82,t[e[83]="CONTRACT_FILE_EMPTY"]=83,t[e[84]="CONTRACT_BYTECODE_EMPTY"]=84,t[e[85]="INVALID_INITIAL_BALANCE"]=85,t[e[86]="INVALID_RECEIVE_RECORD_THRESHOLD"]=86,t[e[87]="INVALID_SEND_RECORD_THRESHOLD"]=87,t[e[88]="ACCOUNT_IS_NOT_GENESIS_ACCOUNT"]=88,t[e[89]="PAYER_ACCOUNT_UNAUTHORIZED"]=89,t[e[90]="INVALID_FREEZE_TRANSACTION_BODY"]=90,t[e[91]="FREEZE_TRANSACTION_BODY_NOT_FOUND"]=91,t[e[92]="TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=92,t[e[93]="RESULT_SIZE_LIMIT_EXCEEDED"]=93,t[e[94]="NOT_SPECIAL_ACCOUNT"]=94,t[e[95]="CONTRACT_NEGATIVE_GAS"]=95,t[e[96]="CONTRACT_NEGATIVE_VALUE"]=96,t[e[97]="INVALID_FEE_FILE"]=97,t[e[98]="INVALID_EXCHANGE_RATE_FILE"]=98,t[e[99]="INSUFFICIENT_LOCAL_CALL_GAS"]=99,t[e[100]="ENTITY_NOT_ALLOWED_TO_DELETE"]=100,t[e[101]="AUTHORIZATION_FAILED"]=101,t[e[102]="FILE_UPLOADED_PROTO_INVALID"]=102,t[e[103]="FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK"]=103,t[e[104]="FEE_SCHEDULE_FILE_PART_UPLOADED"]=104,t[e[105]="EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED"]=105,t[e[106]="MAX_CONTRACT_STORAGE_EXCEEDED"]=106,t[e[107]="TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT"]=107,t[e[108]="TOTAL_LEDGER_BALANCE_INVALID"]=108,t[e[110]="EXPIRATION_REDUCTION_NOT_ALLOWED"]=110,t[e[111]="MAX_GAS_LIMIT_EXCEEDED"]=111,t[e[112]="MAX_FILE_SIZE_EXCEEDED"]=112,t[e[113]="RECEIVER_SIG_REQUIRED"]=113,t[e[150]="INVALID_TOPIC_ID"]=150,t[e[155]="INVALID_ADMIN_KEY"]=155,t[e[156]="INVALID_SUBMIT_KEY"]=156,t[e[157]="UNAUTHORIZED"]=157,t[e[158]="INVALID_TOPIC_MESSAGE"]=158,t[e[159]="INVALID_AUTORENEW_ACCOUNT"]=159,t[e[160]="AUTORENEW_ACCOUNT_NOT_ALLOWED"]=160,t[e[162]="TOPIC_EXPIRED"]=162,t[e[163]="INVALID_CHUNK_NUMBER"]=163,t[e[164]="INVALID_CHUNK_TRANSACTION_ID"]=164,t[e[165]="ACCOUNT_FROZEN_FOR_TOKEN"]=165,t[e[166]="TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED"]=166,t[e[167]="INVALID_TOKEN_ID"]=167,t[e[168]="INVALID_TOKEN_DECIMALS"]=168,t[e[169]="INVALID_TOKEN_INITIAL_SUPPLY"]=169,t[e[170]="INVALID_TREASURY_ACCOUNT_FOR_TOKEN"]=170,t[e[171]="INVALID_TOKEN_SYMBOL"]=171,t[e[172]="TOKEN_HAS_NO_FREEZE_KEY"]=172,t[e[173]="TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN"]=173,t[e[174]="MISSING_TOKEN_SYMBOL"]=174,t[e[175]="TOKEN_SYMBOL_TOO_LONG"]=175,t[e[176]="ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN"]=176,t[e[177]="TOKEN_HAS_NO_KYC_KEY"]=177,t[e[178]="INSUFFICIENT_TOKEN_BALANCE"]=178,t[e[179]="TOKEN_WAS_DELETED"]=179,t[e[180]="TOKEN_HAS_NO_SUPPLY_KEY"]=180,t[e[181]="TOKEN_HAS_NO_WIPE_KEY"]=181,t[e[182]="INVALID_TOKEN_MINT_AMOUNT"]=182,t[e[183]="INVALID_TOKEN_BURN_AMOUNT"]=183,t[e[184]="TOKEN_NOT_ASSOCIATED_TO_ACCOUNT"]=184,t[e[185]="CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT"]=185,t[e[186]="INVALID_KYC_KEY"]=186,t[e[187]="INVALID_WIPE_KEY"]=187,t[e[188]="INVALID_FREEZE_KEY"]=188,t[e[189]="INVALID_SUPPLY_KEY"]=189,t[e[190]="MISSING_TOKEN_NAME"]=190,t[e[191]="TOKEN_NAME_TOO_LONG"]=191,t[e[192]="INVALID_WIPING_AMOUNT"]=192,t[e[193]="TOKEN_IS_IMMUTABLE"]=193,t[e[194]="TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT"]=194,t[e[195]="TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES"]=195,t[e[196]="ACCOUNT_IS_TREASURY"]=196,t[e[197]="TOKEN_ID_REPEATED_IN_TOKEN_LIST"]=197,t[e[198]="TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=198,t[e[199]="EMPTY_TOKEN_TRANSFER_BODY"]=199,t[e[200]="EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS"]=200,t[e[201]="INVALID_SCHEDULE_ID"]=201,t[e[202]="SCHEDULE_IS_IMMUTABLE"]=202,t[e[203]="INVALID_SCHEDULE_PAYER_ID"]=203,t[e[204]="INVALID_SCHEDULE_ACCOUNT_ID"]=204,t[e[205]="NO_NEW_VALID_SIGNATURES"]=205,t[e[206]="UNRESOLVABLE_REQUIRED_SIGNERS"]=206,t[e[207]="SCHEDULED_TRANSACTION_NOT_IN_WHITELIST"]=207,t[e[208]="SOME_SIGNATURES_WERE_INVALID"]=208,t[e[209]="TRANSACTION_ID_FIELD_NOT_ALLOWED"]=209,t[e[210]="IDENTICAL_SCHEDULE_ALREADY_CREATED"]=210,t[e[211]="INVALID_ZERO_BYTE_IN_STRING"]=211,t[e[212]="SCHEDULE_ALREADY_DELETED"]=212,t[e[213]="SCHEDULE_ALREADY_EXECUTED"]=213,t[e[214]="MESSAGE_SIZE_TOO_LARGE"]=214,t[e[215]="OPERATION_REPEATED_IN_BUCKET_GROUPS"]=215,t[e[216]="BUCKET_CAPACITY_OVERFLOW"]=216,t[e[217]="NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION"]=217,t[e[218]="BUCKET_HAS_NO_THROTTLE_GROUPS"]=218,t[e[219]="THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC"]=219,t[e[220]="SUCCESS_BUT_MISSING_EXPECTED_OPERATION"]=220,t[e[221]="UNPARSEABLE_THROTTLE_DEFINITIONS"]=221,t[e[222]="INVALID_THROTTLE_DEFINITIONS"]=222,t[e[223]="ACCOUNT_EXPIRED_AND_PENDING_REMOVAL"]=223,t[e[224]="INVALID_TOKEN_MAX_SUPPLY"]=224,t[e[225]="INVALID_TOKEN_NFT_SERIAL_NUMBER"]=225,t[e[226]="INVALID_NFT_ID"]=226,t[e[227]="METADATA_TOO_LONG"]=227,t[e[228]="BATCH_SIZE_LIMIT_EXCEEDED"]=228,t[e[229]="INVALID_QUERY_RANGE"]=229,t[e[230]="FRACTION_DIVIDES_BY_ZERO"]=230,t[e[231]="INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE"]=231,t[e[232]="CUSTOM_FEES_LIST_TOO_LONG"]=232,t[e[233]="INVALID_CUSTOM_FEE_COLLECTOR"]=233,t[e[234]="INVALID_TOKEN_ID_IN_CUSTOM_FEES"]=234,t[e[235]="TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR"]=235,t[e[236]="TOKEN_MAX_SUPPLY_REACHED"]=236,t[e[237]="SENDER_DOES_NOT_OWN_NFT_SERIAL_NO"]=237,t[e[238]="CUSTOM_FEE_NOT_FULLY_SPECIFIED"]=238,t[e[239]="CUSTOM_FEE_MUST_BE_POSITIVE"]=239,t[e[240]="TOKEN_HAS_NO_FEE_SCHEDULE_KEY"]=240,t[e[241]="CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE"]=241,t[e[242]="ROYALTY_FRACTION_CANNOT_EXCEED_ONE"]=242,t[e[243]="FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT"]=243,t[e[244]="CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES"]=244,t[e[245]="CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON"]=245,t[e[246]="CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=246,t[e[247]="INVALID_CUSTOM_FEE_SCHEDULE_KEY"]=247,t[e[248]="INVALID_TOKEN_MINT_METADATA"]=248,t[e[249]="INVALID_TOKEN_BURN_METADATA"]=249,t[e[250]="CURRENT_TREASURY_STILL_OWNS_NFTS"]=250,t[e[251]="ACCOUNT_STILL_OWNS_NFTS"]=251,t[e[252]="TREASURY_MUST_OWN_BURNED_NFT"]=252,t[e[253]="ACCOUNT_DOES_NOT_OWN_WIPED_NFT"]=253,t[e[254]="ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=254,t[e[255]="MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED"]=255,t[e[256]="PAYER_ACCOUNT_DELETED"]=256,t[e[257]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH"]=257,t[e[258]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS"]=258,t[e[259]="INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE"]=259,t[e[260]="SERIAL_NUMBER_LIMIT_REACHED"]=260,t[e[261]="CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE"]=261,t[e[262]="NO_REMAINING_AUTOMATIC_ASSOCIATIONS"]=262,t[e[263]="EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT"]=263,t[e[264]="REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT"]=264,t[e[265]="TOKEN_IS_PAUSED"]=265,t[e[266]="TOKEN_HAS_NO_PAUSE_KEY"]=266,t[e[267]="INVALID_PAUSE_KEY"]=267,t[e[268]="FREEZE_UPDATE_FILE_DOES_NOT_EXIST"]=268,t[e[269]="FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH"]=269,t[e[270]="NO_UPGRADE_HAS_BEEN_PREPARED"]=270,t[e[271]="NO_FREEZE_IS_SCHEDULED"]=271,t[e[272]="UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE"]=272,t[e[273]="FREEZE_START_TIME_MUST_BE_FUTURE"]=273,t[e[274]="PREPARED_UPDATE_FILE_IS_IMMUTABLE"]=274,t[e[275]="FREEZE_ALREADY_SCHEDULED"]=275,t[e[276]="FREEZE_UPGRADE_IN_PROGRESS"]=276,t[e[277]="UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED"]=277,t[e[278]="UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED"]=278,t[e[279]="CONSENSUS_GAS_EXHAUSTED"]=279,t[e[280]="REVERTED_SUCCESS"]=280,t[e[281]="MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED"]=281,t[e[282]="INVALID_ALIAS_KEY"]=282,t[e[283]="UNEXPECTED_TOKEN_DECIMALS"]=283,t[e[284]="INVALID_PROXY_ACCOUNT_ID"]=284,t[e[285]="INVALID_TRANSFER_ACCOUNT_ID"]=285,t[e[286]="INVALID_FEE_COLLECTOR_ACCOUNT_ID"]=286,t[e[287]="ALIAS_IS_IMMUTABLE"]=287,t[e[288]="SPENDER_ACCOUNT_SAME_AS_OWNER"]=288,t[e[289]="AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY"]=289,t[e[290]="NEGATIVE_ALLOWANCE_AMOUNT"]=290,t[e[291]="CANNOT_APPROVE_FOR_ALL_FUNGIBLE_COMMON"]=291,t[e[292]="SPENDER_DOES_NOT_HAVE_ALLOWANCE"]=292,t[e[293]="AMOUNT_EXCEEDS_ALLOWANCE"]=293,t[e[294]="MAX_ALLOWANCES_EXCEEDED"]=294,t[e[295]="EMPTY_ALLOWANCES"]=295,t[e[296]="SPENDER_ACCOUNT_REPEATED_IN_ALLOWANCES"]=296,t[e[297]="REPEATED_SERIAL_NUMS_IN_NFT_ALLOWANCES"]=297,t[e[298]="FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES"]=298,t[e[299]="NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES"]=299,t[e[300]="PAYER_AND_OWNER_NOT_EQUAL"]=300,t}(),n.ConsensusTopicInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.runningHash=e.bytes();break;case 3:r.sequenceNumber=e.uint64();break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 9:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createTopic"}),Object.defineProperty(e.prototype.updateTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTopic"}),Object.defineProperty(e.prototype.deleteTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteTopic"}),Object.defineProperty(e.prototype.getTopicInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTopicInfo"}),Object.defineProperty(e.prototype.submitMessage=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"submitMessage"}),e}(),n.Query=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyQuery.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDQuery.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalQuery.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoQuery.decode(e,e.uint32());break;case 5:r.contractGetBytecode=s.proto.ContractGetBytecodeQuery.decode(e,e.uint32());break;case 6:r.ContractGetRecords=s.proto.ContractGetRecordsQuery.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceQuery.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsQuery.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoQuery.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashQuery.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersQuery.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsQuery.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoQuery.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptQuery.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordQuery.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordQuery.decode(e,e.uint32());break;case 50:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoQuery.decode(e,e.uint32());break;case 51:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoQuery.decode(e,e.uint32());break;case 52:r.tokenGetInfo=s.proto.TokenGetInfoQuery.decode(e,e.uint32());break;case 53:r.scheduleGetInfo=s.proto.ScheduleGetInfoQuery.decode(e,e.uint32());break;case 54:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosQuery.decode(e,e.uint32());break;case 55:r.tokenGetNftInfo=s.proto.TokenGetNftInfoQuery.decode(e,e.uint32());break;case 56:r.tokenGetNftInfos=s.proto.TokenGetNftInfosQuery.decode(e,e.uint32());break;case 57:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeQuery.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.key=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.EntityID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyResponse=function(){function e(e){if(this.entities=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.entities&&r.entities.length||(r.entities=[]),r.entities.push(s.proto.EntityID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.solidityID=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractLoginfo=function(){function e(e){if(this.topic=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.bloom=e.bytes();break;case 3:r.topic&&r.topic.length||(r.topic=[]),r.topic.push(e.bytes());break;case 4:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractFunctionResult=function(){function e(e){if(this.logInfo=[],this.createdContractIDs=[],this.stateChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.contractCallResult=e.bytes();break;case 3:r.errorMessage=e.string();break;case 4:r.bloom=e.bytes();break;case 5:r.gasUsed=e.uint64();break;case 6:r.logInfo&&r.logInfo.length||(r.logInfo=[]),r.logInfo.push(s.proto.ContractLoginfo.decode(e,e.uint32()));break;case 7:r.createdContractIDs&&r.createdContractIDs.length||(r.createdContractIDs=[]),r.createdContractIDs.push(s.proto.ContractID.decode(e,e.uint32()));break;case 8:r.stateChanges&&r.stateChanges.length||(r.stateChanges=[]),r.stateChanges.push(s.proto.ContractStateChange.decode(e,e.uint32()));break;case 9:r.evmAddress=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.gas=e.int64();break;case 4:r.functionParameters=e.bytes();break;case 5:r.maxResultSize=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.functionResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractStateChange=function(){function e(e){if(this.storageChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.storageChanges&&r.storageChanges.length||(r.storageChanges=[]),r.storageChanges.push(s.proto.StorageChange.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.StorageChange=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.slot=e.bytes();break;case 2:r.valueRead=e.bytes();break;case 3:r.valueWritten=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractInfo=s.proto.ContractGetInfoResponse.ContractInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.ContractInfo=function(){function e(e){if(this.tokenRelationships=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractAccountID=e.string();break;case 4:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 5:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.storage=e.int64();break;case 8:r.memo=e.string();break;case 9:r.balance=e.uint64();break;case 10:r.deleted=e.bool();break;case 11:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.ContractGetBytecodeQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetBytecodeResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 6:r.bytecode=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionRecord=function(){function e(e){if(this.tokenTransferLists=[],this.assessedCustomFees=[],this.automaticTokenAssociations=[],this.cryptoAdjustments=[],this.nftAdjustments=[],this.tokenAdjustments=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 2:r.transactionHash=e.bytes();break;case 3:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 5:r.memo=e.string();break;case 6:r.transactionFee=e.uint64();break;case 7:r.contractCallResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 8:r.contractCreateResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 10:r.transferList=s.proto.TransferList.decode(e,e.uint32());break;case 11:r.tokenTransferLists&&r.tokenTransferLists.length||(r.tokenTransferLists=[]),r.tokenTransferLists.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;case 12:r.scheduleRef=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.assessedCustomFees&&r.assessedCustomFees.length||(r.assessedCustomFees=[]),r.assessedCustomFees.push(s.proto.AssessedCustomFee.decode(e,e.uint32()));break;case 14:r.automaticTokenAssociations&&r.automaticTokenAssociations.length||(r.automaticTokenAssociations=[]),r.automaticTokenAssociations.push(s.proto.TokenAssociation.decode(e,e.uint32()));break;case 15:r.parentConsensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 16:r.alias=e.bytes();break;case 17:r.cryptoAdjustments&&r.cryptoAdjustments.length||(r.cryptoAdjustments=[]),r.cryptoAdjustments.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 18:r.nftAdjustments&&r.nftAdjustments.length||(r.nftAdjustments=[]),r.nftAdjustments.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 19:r.tokenAdjustments&&r.tokenAdjustments.length||(r.tokenAdjustments=[]),r.tokenAdjustments.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionReceipt=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.status=e.int32();break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 5:r.exchangeRate=s.proto.ExchangeRateSet.decode(e,e.uint32());break;case 6:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 7:r.topicSequenceNumber=e.uint64();break;case 8:r.topicRunningHash=e.bytes();break;case 9:r.topicRunningHashVersion=e.uint64();break;case 10:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 11:r.newTotalSupply=e.uint64();break;case 12:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 14:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.hbarEquiv=e.int32();break;case 2:r.centEquiv=e.int32();break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ExchangeRateSet=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentRate=s.proto.ExchangeRate.decode(e,e.uint32());break;case 2:r.nextRate=s.proto.ExchangeRate.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceResponse=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.balance=e.uint64();break;case 4:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountInfo=s.proto.CryptoGetInfoResponse.AccountInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.AccountInfo=function(){function e(e){if(this.liveHashes=[],this.tokenRelationships=[],this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.contractAccountID=e.string();break;case 3:r.deleted=e.bool();break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.proxyReceived=e.int64();break;case 7:r.key=s.proto.Key.decode(e,e.uint32());break;case 8:r.balance=e.uint64();break;case 9:r.generateSendRecordThreshold=e.uint64();break;case 10:r.generateReceiveRecordThreshold=e.uint64();break;case 11:r.receiverSigRequired=e.bool();break;case 12:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 14:r.liveHashes&&r.liveHashes.length||(r.liveHashes=[]),r.liveHashes.push(s.proto.LiveHash.decode(e,e.uint32()));break;case 15:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 16:r.memo=e.string();break;case 17:r.ownedNfts=e.int64();break;case 18:r.maxAutomaticTokenAssociations=e.int32();break;case 19:r.alias=e.bytes();break;case 20:r.ledgerId=e.bytes();break;case 21:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 22:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 23:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),e}(),n.CryptoGetLiveHashQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.hash=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetLiveHashResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ProxyStaker=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AllProxyStakers=function(){function e(e){if(this.proxyStaker=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.proxyStaker&&r.proxyStaker.length||(r.proxyStaker=[]),r.proxyStaker.push(s.proto.ProxyStaker.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.stakers=s.proto.AllProxyStakers.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileContents=s.proto.FileGetContentsResponse.FileContents.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileContents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.FileGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileInfo=s.proto.FileGetInfoResponse.FileInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.size=e.int64();break;case 3:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.deleted=e.bool();break;case 5:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.TransactionGetReceiptQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildReceipts=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetReceiptResponse=function(){function e(e){if(this.duplicateTransactionReceipts=[],this.childTransactionReceipts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 4:r.duplicateTransactionReceipts&&r.duplicateTransactionReceipts.length||(r.duplicateTransactionReceipts=[]),r.duplicateTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;case 5:r.childTransactionReceipts&&r.childTransactionReceipts.length||(r.childTransactionReceipts=[]),r.childTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildRecords=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordResponse=function(){function e(e){if(this.duplicateTransactionRecords=[],this.childTransactionRecords=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;case 4:r.duplicateTransactionRecords&&r.duplicateTransactionRecords.length||(r.duplicateTransactionRecords=[]),r.duplicateTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;case 5:r.childTransactionRecords&&r.childTransactionRecords.length||(r.childTransactionRecords=[]),r.childTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.hapiProtoVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;case 3:r.hederaServicesVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeQuery=function(){function e(e){if(this.transactionIds=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionIds&&r.transactionIds.length||(r.transactionIds=[]),r.transactionIds.push(s.proto.TransactionID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeResponse=function(){function e(e){if(this.executionTimes=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:if(r.executionTimes&&r.executionTimes.length||(r.executionTimes=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenInfo=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.name=e.string();break;case 3:r.symbol=e.string();break;case 4:r.decimals=e.uint32();break;case 5:r.totalSupply=e.uint64();break;case 6:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 12:r.defaultFreezeStatus=e.int32();break;case 13:r.defaultKycStatus=e.int32();break;case 14:r.deleted=e.bool();break;case 15:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 16:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 17:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 18:r.memo=e.string();break;case 19:r.tokenType=e.int32();break;case 20:r.supplyType=e.int32();break;case 21:r.maxSupply=e.int64();break;case 22:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 23:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 24:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;case 25:r.pauseStatus=e.int32();break;case 26:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenInfo=s.proto.TokenInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 2:r.deletionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.executionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.signers=s.proto.KeyList.decode(e,e.uint32());break;case 9:r.creatorAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 10:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.scheduleInfo=s.proto.ScheduleInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.serialNumber=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.nftID=s.proto.NftID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenNftInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nftID=s.proto.NftID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.creationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.metadata=e.bytes();break;case 5:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nft=s.proto.TokenNftInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Response=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyResponse.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDResponse.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalResponse.decode(e,e.uint32());break;case 5:r.contractGetBytecodeResponse=s.proto.ContractGetBytecodeResponse.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoResponse.decode(e,e.uint32());break;case 6:r.contractGetRecordsResponse=s.proto.ContractGetRecordsResponse.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceResponse.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsResponse.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoResponse.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashResponse.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersResponse.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsResponse.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoResponse.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptResponse.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordResponse.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordResponse.decode(e,e.uint32());break;case 150:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoResponse.decode(e,e.uint32());break;case 151:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoResponse.decode(e,e.uint32());break;case 152:r.tokenGetInfo=s.proto.TokenGetInfoResponse.decode(e,e.uint32());break;case 153:r.scheduleGetInfo=s.proto.ScheduleGetInfoResponse.decode(e,e.uint32());break;case 154:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosResponse.decode(e,e.uint32());break;case 155:r.tokenGetNftInfo=s.proto.TokenGetNftInfoResponse.decode(e,e.uint32());break;case 156:r.tokenGetNftInfos=s.proto.TokenGetNftInfosResponse.decode(e,e.uint32());break;case 157:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeResponse.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createAccount"}),Object.defineProperty(e.prototype.updateAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateAccount"}),Object.defineProperty(e.prototype.cryptoTransfer=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoTransfer"}),Object.defineProperty(e.prototype.cryptoDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoDelete"}),Object.defineProperty(e.prototype.approveAllowances=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"approveAllowances"}),Object.defineProperty(e.prototype.adjustAllowance=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"adjustAllowance"}),Object.defineProperty(e.prototype.addLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"addLiveHash"}),Object.defineProperty(e.prototype.deleteLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteLiveHash"}),Object.defineProperty(e.prototype.getLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getLiveHash"}),Object.defineProperty(e.prototype.getAccountRecords=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountRecords"}),Object.defineProperty(e.prototype.cryptoGetBalance=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"cryptoGetBalance"}),Object.defineProperty(e.prototype.getAccountInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountInfo"}),Object.defineProperty(e.prototype.getTransactionReceipts=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTransactionReceipts"}),Object.defineProperty(e.prototype.getFastTransactionRecord=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFastTransactionRecord"}),Object.defineProperty(e.prototype.getTxRecordByTxID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByTxID"}),Object.defineProperty(e.prototype.getStakersByAccountID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getStakersByAccountID"}),e}(),n.FileService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createFile"}),Object.defineProperty(e.prototype.updateFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateFile"}),Object.defineProperty(e.prototype.deleteFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteFile"}),Object.defineProperty(e.prototype.appendContent=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"appendContent"}),Object.defineProperty(e.prototype.getFileContent=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileContent"}),Object.defineProperty(e.prototype.getFileInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileInfo"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.FreezeService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.freeze=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freeze"}),e}(),n.ConsensusTopicQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.consensusStartTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.consensusEndTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.limit=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusTopicResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.runningHash=e.bytes();break;case 4:r.sequenceNumber=e.uint64();break;case 5:r.runningHashVersion=e.uint64();break;case 6:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.MirrorConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.subscribeTopic=function e(t,n){return this.rpcCall(e,s.proto.ConsensusTopicQuery,s.proto.ConsensusTopicResponse,t,n)},"name",{value:"subscribeTopic"}),e}(),n.AddressBookQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileId=s.proto.FileID.decode(e,e.uint32());break;case 2:r.limit=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.MirrorNetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getNodes=function e(t,n){return this.rpcCall(e,s.proto.AddressBookQuery,s.proto.NodeAddress,t,n)},"name",{value:"getNodes"}),e}(),n.NetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getVersionInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getVersionInfo"}),Object.defineProperty(e.prototype.getExecutionTime=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getExecutionTime"}),Object.defineProperty(e.prototype.uncheckedSubmit=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"uncheckedSubmit"}),e}(),n.ScheduleService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createSchedule"}),Object.defineProperty(e.prototype.signSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"signSchedule"}),Object.defineProperty(e.prototype.deleteSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteSchedule"}),Object.defineProperty(e.prototype.getScheduleInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getScheduleInfo"}),e}(),n.SmartContractService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createContract"}),Object.defineProperty(e.prototype.updateContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateContract"}),Object.defineProperty(e.prototype.contractCallMethod=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"contractCallMethod"}),Object.defineProperty(e.prototype.getContractInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getContractInfo"}),Object.defineProperty(e.prototype.contractCallLocalMethod=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"contractCallLocalMethod"}),Object.defineProperty(e.prototype.contractGetBytecode=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"ContractGetBytecode"}),Object.defineProperty(e.prototype.getBySolidityID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getBySolidityID"}),Object.defineProperty(e.prototype.getTxRecordByContractID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByContractID"}),Object.defineProperty(e.prototype.deleteContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteContract"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.ThrottleGroup=function(){function e(e){if(this.operations=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:if(r.operations&&r.operations.length||(r.operations=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.name=e.string();break;case 2:r.burstPeriodMs=e.uint64();break;case 3:r.throttleGroups&&r.throttleGroups.length||(r.throttleGroups=[]),r.throttleGroups.push(s.proto.ThrottleGroup.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ThrottleDefinitions=function(){function e(e){if(this.throttleBuckets=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.throttleBuckets&&r.throttleBuckets.length||(r.throttleBuckets=[]),r.throttleBuckets.push(s.proto.ThrottleBucket.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createToken"}),Object.defineProperty(e.prototype.updateToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateToken"}),Object.defineProperty(e.prototype.mintToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"mintToken"}),Object.defineProperty(e.prototype.burnToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"burnToken"}),Object.defineProperty(e.prototype.deleteToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteToken"}),Object.defineProperty(e.prototype.wipeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"wipeTokenAccount"}),Object.defineProperty(e.prototype.freezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freezeTokenAccount"}),Object.defineProperty(e.prototype.unfreezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unfreezeTokenAccount"}),Object.defineProperty(e.prototype.grantKycToTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"grantKycToTokenAccount"}),Object.defineProperty(e.prototype.revokeKycFromTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"revokeKycFromTokenAccount"}),Object.defineProperty(e.prototype.associateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"associateTokens"}),Object.defineProperty(e.prototype.dissociateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"dissociateTokens"}),Object.defineProperty(e.prototype.updateTokenFeeSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTokenFeeSchedule"}),Object.defineProperty(e.prototype.getTokenInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenInfo"}),Object.defineProperty(e.prototype.getAccountNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountNftInfos"}),Object.defineProperty(e.prototype.getTokenNftInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfo"}),Object.defineProperty(e.prototype.getTokenNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfos"}),Object.defineProperty(e.prototype.pauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"pauseToken"}),Object.defineProperty(e.prototype.unpauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unpauseToken"}),e}(),n.SignedTransaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.bodyBytes=e.bytes();break;case 2:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionList=function(){function e(e){if(this.transactionList=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionList&&r.transactionList.length||(r.transactionList=[]),r.transactionList.push(s.proto.Transaction.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),n.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),n.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n}();t.proto=l;var f=s.google=function(){var e,t={};return t.protobuf=((e={}).DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),e.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),e.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),e.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),e.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),e.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),e.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),e.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),e.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e),t}();t.google=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(70)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(42)),f=r(n(500));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var p=function(e){(0,u.default)(n,e);var t=d(n);function n(e){var r;return(0,o.default)(this,n),(r=t.call(this,"gRPC service failed with status: ".concat(e.toString()))).status=e,r.name="GrpcServiceError",void 0!==Error.captureStackTrace&&Error.captureStackTrace((0,i.default)(r),n),r}return(0,a.default)(n,null,[{key:"_fromResponse",value:function(e){if(null!=e.code&&null!=e.details){var t=new n(f.default._fromValue(e.code));return t.message=e.details,t}return e}}]),n}((0,l.default)(Error));t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r){var a;return(0,o.default)(this,n),(a=t.call(this)).message="query cost of ".concat(e.toString()," HBAR exceeds max set on client: ").concat(r.toString()," HBAR"),a.name="MaxQueryPaymentExceededError",a.queryCost=e,a.maxQueryPayment=r,a}return n}((0,r(n(42)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37)),c=r(n(59)),s=r(n(994));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.storageChanges=t.storageChanges,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){var e=this.storageChanges.map((function(e){return e._toProtobuf()}));return{contractID:this.contractId._toProtobuf(),storageChanges:e}}},{key:"toBytes",value:function(){return u.ContractStateChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:c.default._fromProtobuf(t.contractID),storageChanges:(null!=t.storageChanges?t.storageChanges:[]).map((function(e){return s.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.ContractStateChange.decode(t))}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.slot=t.slot,this.valueRead=t.valueRead,this.valueWritten=t.valueWritten}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{slot:this.slot,valueRead:this.valueRead,valueWritten:null!=this.valueWritten?{value:this.valueWritten}:null}}},{key:"toBytes",value:function(){return u.StorageChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({slot:t.slot,valueRead:t.valueRead,valueWritten:null!=t.valueWritten&&null!=t.valueWritten.value?t.valueWritten.value:null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.StorageChange.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(12)),u=r(n(28)),c=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._accountId,null!=t.accountId&&this.setAccountId(t.accountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId)}return(0,a.default)(e,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?u.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){return{accountId:null!=this._accountId?this._accountId._toProtobuf():void 0,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():void 0}}}],[{key:"_fromProtobuf",value:function(t){return new e({accountId:null!=t.accountId?i.default._fromProtobuf(t.accountId):void 0,tokenId:null!=t.tokenId?u.default._fromProtobuf(t.tokenId):void 0})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=r(n(12)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(509));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var m=function(e){(0,s.default)(r,e);var t,n=y(r);function r(){return(0,u.default)(this,r),n.call(this,(function(e){return d.default.fromString(e)}))}return(0,c.default)(r,null,[{key:"_fromTransaction",value:(t=(0,i.default)(a.default.mark((function e(t){var n,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=new r,o=0;case 2:if(!(o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarApprovals=null!=r.hbarApprovals?r.hbarApprovals:[],e._tokenApprovals=null!=r.tokenApprovals?r.tokenApprovals:[],e._nftApprovals=null!=r.nftApprovals?r.nftApprovals:[],e}return(0,i.default)(n,[{key:"hbarApprovals",get:function(){return this._hbarApprovals}},{key:"addHbarAllowance",value:function(e,t){return this._requireNotFrozen(),this._hbarApprovals.push(new m.default({spenderAccountId:"string"==typeof e?f.default.fromString(e):e,amount:t instanceof y.default?t:new y.default(t),ownerAccountId:null})),this}},{key:"tokenApprovals",get:function(){return this._tokenApprovals}},{key:"addTokenAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._tokenApprovals.push(new b.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof n?h.default.fromNumber(n):n,ownerAccountId:null})),this}},{key:"addTokenNftAllowance",value:function(e,t){this._requireNotFrozen();var n,r="string"==typeof e?p.default.fromString(e):e,o="string"==typeof t?f.default.fromString(t):t,a=!1,i=g(this._nftApprovals);try{for(i.s();!(n=i.n()).done;){var u=n.value;if(0===u.tokenId.compare(r.tokenId)&&0===u.spenderAccountId.compare(o)){null!=u.serialNumbers&&u.serialNumbers.push(r.serial),a=!0;break}}}catch(e){i.e(e)}finally{i.f()}return a||this._nftApprovals.push(new v.default({tokenId:r.tokenId,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:[r.serial],ownerAccountId:null})),this}},{key:"addAllTokenNftAllowance",value:function(e,t){return this._requireNotFrozen(),this._nftApprovals.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:null,ownerAccountId:null})),this}},{key:"_validateChecksums",value:function(e){this._hbarApprovals.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenApprovals.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.approveAllowances(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoApproveAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarApprovals.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenApprovals.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftApprovals.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoApproveAllowance;return l.default._fromProtobufTransactions(new n({hbarApprovals:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),tokenApprovals:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),nftApprovals:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=I,l.TRANSACTION_REGISTRY.set("cryptoApproveAllowance",I._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(28));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(88)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(28));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(88)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(35)),f=r(n(12)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),p=r(n(65)),h=r(n(21)),y=r(n(45));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._key=null,e._initialBalance=null,e._sendRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiveRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=new p.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._accountMemo=null,e._maxAutomaticTokenAssociations=null,null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),e}return(0,i.default)(n,[{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"_validateChecksums",value:function(e){null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.createAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoCreateAccount"}},{key:"_makeTransactionData",value:function(){return{key:null!=this._key?this._key._toProtobufKey():null,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,receiveRecordThreshold:this._receiveRecordThreshold.toTinybars(),sendRecordThreshold:this._sendRecordThreshold.toTinybars(),receiverSigRequired:this._receiverSignatureRequired,memo:this._accountMemo,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?this._maxAutomaticTokenAssociations.toInt():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoCreateAccount;return d.default._fromProtobufTransactions(new n({key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,accountMemo:null!=i.memo?i.memo:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations?i.maxAutomaticTokenAssociations:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=v,d.TRANSACTION_REGISTRY.set("cryptoCreateAccount",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(12)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._transferAccountId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDelete"}},{key:"_makeTransactionData",value:function(){return{deleteAccountID:null!=this._accountId?this._accountId._toProtobuf():null,transferAccountID:null!=this._transferAccountId?this._transferAccountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDelete;return f.default._fromProtobufTransactions(new n({accountId:null!=i.deleteAccountID?l.default._fromProtobuf(i.deleteAccountID):void 0,transferAccountId:null!=i.transferAccountID?l.default._fromProtobuf(i.transferAccountID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("cryptoDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(21)),u=r(n(28)),c=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.symbol=t.symbol,this.balance=t.balance,this.isKycGranted=t.isKycGranted,this.isFrozen=t.isFrozen,this.automaticAssociation=t.automaticAssociation,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),symbol:this.symbol,balance:this.balance,kycStatus:null==this.isKycGranted?0:this.isKycGranted?1:2,freezeStatus:null==this.isFrozen?0:this.isFrozen?1:2,automaticAssociation:this.automaticAssociation}}}],[{key:"_fromProtobuf",value:function(t){var n=u.default._fromProtobuf(t.tokenId),r=null==t.kycStatus||0===t.kycStatus?null:1===t.kycStatus,o=null==t.freezeStatus||0===t.freezeStatus?null:1===t.freezeStatus;return new e({tokenId:n,symbol:t.symbol,balance:null!=t.balance?t.balance instanceof i.default?t.balance:i.default.fromValue(t.balance):i.default.ZERO,isKycGranted:r,isFrozen:o,automaticAssociation:null!=t.automaticAssociation?t.automaticAssociation:null})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),h=r(n(12)),y=r(n(512)),m=r(n(35));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e}return(0,c.default)(r,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetInfo;return Promise.resolve(y.default._fromProtobuf(r.accountInfo))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetInfo:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetInfo;return new r({accountId:null!=t.accountID?h.default._fromProtobuf(t.accountID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("cryptoGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),f=r(n(12)),d=r(n(323));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountRecords(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetAccountRecords.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetAccountRecords.records;return Promise.resolve(r.map((function(e){return d.default._fromProtobuf({transactionRecord:e})})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetAccountRecords:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetAccountRecords;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetAccountRecords",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),f=r(n(12)),d=r(n(514));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getStakersByAccountID(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetProxyStakers.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetProxyStakers.stakers;return Promise.resolve((null!=t.proxyStaker?t.proxyStaker:[]).map((function(e){return d.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetProxyStakers:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetProxyStakers;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetProxyStakers",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=k(n(23)),f=r(n(12)),d=r(n(46)),p=r(n(65)),h=r(n(21)),y=r(n(45)),m=k(n(37)),b=r(n(110));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function k(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function g(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var _=function(e){(0,u.default)(n,e);var t=g(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._key=null,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=null,e._expirationTime=null,e._accountMemo=null,e._maxAutomaticTokenAssociations=null,e._aliasKey=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),null!=r.aliasKey&&e.setAliasKey(r.aliasKey),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof Date?d.default.fromDate(e):e,this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"clearAccountMemo",value:function(){return this._requireNotFrozen(),this._accountMemo=null,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"aliasKey",get:function(){return this._aliasKey}},{key:"setAliasKey",value:function(e){return this._requireNotFrozen(),this._aliasKey=e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.updateAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoUpdateAccount"}},{key:"_makeTransactionData",value:function(){return{accountIDToUpdate:null!=this._accountId?this._accountId._toProtobuf():null,key:null!=this._key?this._key._toProtobufKey():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,receiverSigRequiredWrapper:null==this._receiverSignatureRequired?null:{value:this._receiverSignatureRequired},memo:null!=this._accountMemo?{value:this._accountMemo}:null,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?{value:this._maxAutomaticTokenAssociations.toInt()}:null,alias:null!=this._key?m.Key.encode(this._key._toProtobufKey()).finish():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoUpdateAccount,u=null!=i.alias&&i.alias.length>0?y.default._fromProtobufKey(m.Key.decode(i.alias)):void 0;return u instanceof b.default||(u=void 0),l.default._fromProtobufTransactions(new n({accountId:null!=i.accountIDToUpdate?f.default._fromProtobuf(i.accountIDToUpdate):void 0,key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,expirationTime:null!=i.expirationTime?d.default._fromProtobuf(i.expirationTime):void 0,accountMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations&&null!=i.maxAutomaticTokenAssociations.value?h.default.fromNumber(i.maxAutomaticTokenAssociations.value):void 0,aliasKey:u}),e,t,r,o,a)}}]),n}(l.default);t.default=_,l.TRANSACTION_REGISTRY.set("cryptoUpdateAccount",_._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(515)),c=r(n(516)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37)),l=r(n(64)),f=n(150);function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._fileId=null,null!=t.fileId&&this.setFileId(t.fileId),this._limit=null,null!=t.limit&&this.setLimit(t.limit),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return f.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},this._addresses=[],this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0}return(0,i.default)(e,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this._limit=e,this}},{key:"setMaxAttempts",value:function(e){this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this._maxBackoff=e}},{key:"execute",value:function(e,t){var n=this;return new Promise((function(r,o){n._makeServerStreamRequest(e,r,o,t)}))}},{key:"_makeServerStreamRequest",value:function(e,t,n,r){var o=this,a=s.AddressBookQuery.encode({fileId:null!=this._fileId?this._fileId._toProtobuf():null,limit:this._limit}).finish();e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("NetworkService","getNodes",a,(function(e){o._addresses.push(u.default._fromProtobuf(s.NodeAddress.decode(e))),null!=o._limit&&o._limit>0&&(o._limit=o._limit-1)}),(function(a){var i=a instanceof Error?a.message:a.details;if(o._attempt0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._address=null,null!=t.address&&this.setAddress(t.address),this._port=null,null!=t.port&&this.setPort(t.port)}return(0,a.default)(e,[{key:"address",get:function(){return this.address}},{key:"setAddress",value:function(e){return this._address=e,this}},{key:"port",get:function(){return this._port}},{key:"setPort",value:function(e){return this._port=e,this}},{key:"_toProtobuf",value:function(){return{ipAddressV4:null!=this._address?this._address._toProtobuf():null,port:this._port}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{address:null!=this._address?this._address.toString():null,port:null!=this._port?this._port.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({address:null!=t.ipAddressV4?i.default._fromProtobuf(t.ipAddressV4):void 0,port:null!=t.port?t.port:void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(1012)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._network=null,null!=t.network&&this.setNetwork(t.network),this._host=null,null!=t.host&&this.setHost(t.host)}return(0,a.default)(e,[{key:"newtork",get:function(){return this._network}},{key:"setNetwork",value:function(e){return this._network=e,this}},{key:"host",get:function(){return this._host}},{key:"setHost",value:function(e){return this._host=e,this}},{key:"_toProtobuf",value:function(){return Uint8Array.of(null!=this._network&&null!=this._network._left?this._network._left:0,null!=this._network&&null!=this._network.right?this._network.right:0,null!=this._host&&null!=this._host.left?this._host.left:0,null!=this._host&&null!=this._host.right?this._host.right:0)}},{key:"toString",value:function(){return null!=this._network&&null!=this._host?"".concat(this._network.toString(),".").concat(this._host.toString()):""}}],[{key:"_fromProtobuf",value:function(t){return new e({network:(new i.default).setLeft(t[0]).setRight(t[1]),host:(new i.default).setLeft(t[2]).setRight(t[3])})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._left=null,null!=t.left&&this.setLeft(t.left),this._right=null,null!=t.right&&this.setRight(t.right)}return(0,a.default)(e,[{key:"left",get:function(){return this._left}},{key:"setLeft",value:function(e){return this._left=e,this}},{key:"right",get:function(){return this._right}},{key:"setRight",value:function(e){return this._right=e,this}},{key:"toString",value:function(){return null!=this._left&&null!=this._right?"".concat(this._left.toString(),".").concat(this._right.toString()):""}}]),e}();t.default=i},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),f=r(n(59));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractGetBytecode(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractGetBytecodeResponse.header}},{key:"_mapResponse",value:function(e){var t=e.contractGetBytecodeResponse;return Promise.resolve(null!=t.bytecode?t.bytecode:new Uint8Array)}},{key:"_onMakeRequest",value:function(e){return{contractGetBytecode:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetBytecode;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("contractGetBytecode",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),f=r(n(59)),d=r(n(258)),p=r(n(325)),h=r(n(21));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e._gas=null,null!=r.gas&&e.setGas(r.gas),e._functionParameters=null,null!=r.functionParameters&&(r.functionParameters instanceof Uint8Array?e.setFunctionParameters(r.functionParameters):e.setFunction(r.functionParameters.name,r.functionParameters.parameters)),e._maxResultSize=null,null!=r.maxResultSize&&e.setMaxResultSize(r.maxResultSize),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._functionParameters=(null!=t?t:new d.default)._build(e),this}},{key:"setMaxResultSize",value:function(e){return this._maxResultSize=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallLocalMethod(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractCallLocal.header}},{key:"_mapResponse",value:function(e){var t=e.contractCallLocal;return Promise.resolve(p.default._fromProtobuf(t.functionResult))}},{key:"_onMakeRequest",value:function(e){return{contractCallLocal:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,maxResultSize:this._maxResultSize,functionParameters:this._functionParameters}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractCallLocal;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0,gas:null!=t.gas?t.gas:void 0,functionParameters:null!=t.functionParameters?t.functionParameters:void 0,maxResultSize:null!=t.maxResultSize?t.maxResultSize:void 0})}}]),n}(l.default);t.default=b,l.QUERY_REGISTRY.set("contractCallLocal",b._fromProtobuf)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.keccak256=void 0;var r,o="0123456789abcdef".split(""),a=[1,256,65536,16777216],i=[0,8,16,24],u=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],c=function(e){var t,n,r,o,a,i,c,s,l,f,d,p,h,y,m,b,v,k,g,_,w,I,A,T,O,P,E,S,R,D,C,N,B,M,j,x,F,U,L,G,K,z,Q,H,V,W,q,Y,Z,J,X,$,ee,te,ne,re,oe,ae,ie,ue,ce,se,le;for(r=0;r<48;r+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],a=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],c=e[3]^e[13]^e[23]^e[33]^e[43],s=e[4]^e[14]^e[24]^e[34]^e[44],l=e[5]^e[15]^e[25]^e[35]^e[45],f=e[6]^e[16]^e[26]^e[36]^e[46],d=e[7]^e[17]^e[27]^e[37]^e[47],t=(p=e[8]^e[18]^e[28]^e[38]^e[48])^(i<<1|c>>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],m=e[1],W=e[11]<<4|e[10]>>>28,q=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,b=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,k=e[25]<<11|e[24]>>>21,g=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,P=e[18]<<20|e[19]>>>12,E=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,G=e[38]<<8|e[39]>>>24,K=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~b&k,e[1]=m^~v&g,e[10]=T^~P&S,e[11]=O^~E&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~W&Y,e[31]=V^~q&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=b^~k&_,e[3]=v^~g&w,e[12]=P^~S&D,e[13]=E^~R&C,e[22]=x^~U&G,e[23]=F^~L&K,e[32]=W^~Y&J,e[33]=q^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=k^~_&I,e[5]=g^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~G&z,e[25]=L^~K&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&m,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=G^~z&M,e[27]=K^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&b,e[9]=A^~m&v,e[18]=N^~T&P,e[19]=B^~O&E,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&W,e[39]=ee^~V&q,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];b%f==0&&(c(p),n=0)}return"0x"+m}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(35)),f=r(n(12)),d=r(n(64)),p=r(n(258)),h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=v(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),y=r(n(21)),m=r(n(65)),b=r(n(45));function v(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(v=function(e){return e?n:t})(e)}function k(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var g=function(e){(0,u.default)(n,e);var t=k(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._bytecodeFileId=null,e._adminKey=null,e._gas=null,e._initialBalance=null,e._proxyAccountId=null,e._autoRenewPeriod=new m.default(h.DEFAULT_AUTO_RENEW_PERIOD),e._constructorParameters=null,e._contractMemo=null,e._defaultMaxTransactionFee=new l.default(20),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.gas&&e.setGas(r.gas),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.constructorParameters&&e.setConstructorParameters(r.constructorParameters),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof y.default?e:y.default.fromValue(e),this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof m.default?e:new m.default(e),this}},{key:"constructorParameters",get:function(){return this._constructorParameters}},{key:"setConstructorParameters",value:function(e){return this._requireNotFrozen(),this._constructorParameters=e instanceof p.default?e._build():e,this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"_validateChecksums",value:function(e){null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.createContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCreateInstance"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,gas:this._gas,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),constructorParameters:this._constructorParameters,memo:this._contractMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCreateInstance;return h.default._fromProtobufTransactions(new n({bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,adminKey:null!=i.adminKey?b.default._fromProtobufKey(i.adminKey):void 0,gas:null!=i.gas?i.gas:void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,constructorParameters:null!=i.constructorParameters?i.constructorParameters:void 0,contractMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(h.default);t.default=g,h.TRANSACTION_REGISTRY.set("contractCreateInstance",g._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),f=r(n(59)),d=r(n(12));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._transferAccountId=null,e._transferContractId=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),null!=r.transferContractId&&e.setTransferContractId(r.transferContractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"transferContractId",get:function(){return this._transferContractId}},{key:"setTransferContractId",value:function(e){return this._requireNotFrozen(),this._transferContractId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e),null!=this._transferContractId&&this._transferContractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.deleteContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractDeleteInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,transferAccountID:this._transferAccountId?this._transferAccountId._toProtobuf():null,transferContractID:null!=this._transferContractId?this._transferContractId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractDeleteInstance;return l.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,transferAccountId:null!=i.transferAccountID?d.default._fromProtobuf(i.transferAccountID):void 0,transferContractId:null!=i.transferContractID?f.default._fromProtobuf(i.transferContractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("contractDeleteInstance",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(35)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),d=r(n(59)),p=r(n(258)),h=r(n(21));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._gas=null,e._amount=null,e._functionParameters=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.gas&&e.setGas(r.gas),null!=r.amount&&e.setPayableAmount(r.amount),null!=r.functionParameters?e.setFunctionParameters(r.functionParameters):null!=r.function&&e.setFunction(r.function.name,r.function.parameters),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"payableAmount",get:function(){return this._amount}},{key:"setPayableAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof l.default?e:new l.default(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._requireNotFrozen(),this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._requireNotFrozen(),this._functionParameters=null!=t?t._build(e):(new p.default)._build(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallMethod(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCall"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,amount:null!=this._amount?this._amount.toTinybars():null,functionParameters:this._functionParameters}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCall;return f.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,gas:null!=i.gas?i.gas:void 0,amount:i.amount?i.amount:void 0,functionParameters:null!=i.functionParameters?i.functionParameters:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=b,f.TRANSACTION_REGISTRY.set("contractCall",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),h=r(n(59)),y=r(n(518)),m=r(n(35));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._contractId=null,null!=t.contractId&&e.setContractId(t.contractId),e}return(0,c.default)(r,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.getContractInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.contractGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.contractGetInfo;return Promise.resolve(y.default._fromProtobuf(r.contractInfo))}},{key:"_onMakeRequest",value:function(e){return{contractGetInfo:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetInfo;return new r({contractId:null!=t.contractID?h.default._fromProtobuf(t.contractID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("contractGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(12)),f=r(n(59)),d=r(n(64)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),h=r(n(65)),y=r(n(46)),m=r(n(45));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._expirationTime=null,e._adminKey=null,e._proxyAccountId=null,e._autoRenewPeriod=null,e._bytecodeFileId=null,e._contractMemo=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return console.warn("Deprecated: there is no replacement"),this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"clearContractMemo",value:function(){return this._requireNotFrozen(),this._contractMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.updateContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractUpdateInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,fileID:this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,memoWrapper:null!=this._contractMemo?{value:this._contractMemo}:null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractUpdateInstance,u=void 0;null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds&&(u=i.autoRenewPeriod.seconds);var c=void 0;return null!=i.memoWrapper&&null!=i.memoWrapper.value&&(c=i.memoWrapper.value),p.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,expirationTime:null!=i.expirationTime?y.default._fromProtobuf(i.expirationTime):void 0,adminKey:null!=i.adminKey?m.default._fromProtobufKey(i.adminKey):void 0,proxyAccountId:null!=i.proxyAccountID?l.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:u,contractMemo:c}),e,t,r,o,a)}}]),n}(p.default);t.default=k,p.TRANSACTION_REGISTRY.set("contractUpdateInstance",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(123)),f=r(n(59)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(78));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(e,r,o,i){return(0,a.default)(this,n),t.call(this,e,r,o,i)}return(0,i.default)(n,[{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e}},{key:"_toProtobufKey",value:function(){return{delegatableContractId:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,d.decode(r))}},{key:"fromString",value:function(e){return new n(f.default.fromString(e))}},{key:"_fromProtobuf",value:function(e){return new n(f.default._fromProtobuf(e))}},{key:"fromBytes",value:function(e){return new n(f.default.fromBytes(e))}},{key:"fromSolidityAddress",value:function(e){return new n(f.default.fromSolidityAddress(e))}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(f.default);t.default=y,l.default.delegateContractId=function(e){return y.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(117)),l=r(n(17)),f=r(n(5)),d=r(n(6)),p=r(n(4)),h=r(n(35)),y=w(n(23)),m=w(n(111)),b=r(n(64)),v=r(n(79)),k=r(n(46)),g=r(n(322));function _(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(_=function(e){return e?n:t})(e)}function w(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=_(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function I(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return A(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return A(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._fileId=null,e._contents=null,e._maxChunks=20,e._chunkSize=2048,e._defaultMaxTransactionFee=new h.default(5),null!=t.fileId&&e.setFileId(t.fileId),null!=t.contents&&e.setContents(t.contents),null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._startIndex=0,e._transactionIds=new g.default,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`FileAppendTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?b.default.fromString(e):e.clone(),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:m.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,l.default)((0,p.default)(o.prototype),"freezeWith",this).call(this,e),null==this._contents)return this;var t=Math.floor((this._contents.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Contents with size ".concat(this._contents.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear(),(0,s.default)((0,p.default)(o.prototype),"_nextTransactionIndex",0,this,!0);for(var r=0;rthis._chunkSize)throw new Error("cannot schedule `FileAppendTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,l.default)((0,p.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,s,f,d;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,l.default)((0,p.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,l.default)((0,p.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,s=0;case 9:if(!(se&&(t=e),{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contents:null!=this._contents?this._contents.slice(this._startIndex,t):null}}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){for(var i,u=a[0].fileAppend,c=0;c0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileContent(t)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_mapResponseHeader",value:function(e){return e.fileGetContents.header}},{key:"_mapResponse",value:function(e){var t=e.fileGetContents.fileContents.contents;return Promise.resolve(t)}},{key:"_onMakeRequest",value:function(e){return{fileGetContents:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetContents;return new n({fileId:null!=t.fileID?f.default._fromProtobuf(t.fileID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("fileGetContents",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(35)),f=b(n(23)),d=b(n(111)),p=r(n(46)),h=r(n(45)),y=r(n(147));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._keys=null,e._expirationTime=p.default.fromDate(Date.now()+1e3*f.DEFAULT_AUTO_RENEW_PERIOD.toInt()),e._contents=null,e._fileMemo=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"_execute",value:function(e,t){return e.file.createFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileCreate"}},{key:"_makeTransactionData",value:function(){return{keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:this._expirationTime._toProtobuf(),contents:this._contents,memo:this._fileMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileCreate;return f.default._fromProtobufTransactions(new n({keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=k,f.TRANSACTION_REGISTRY.set("fileCreate",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),f=r(n(64));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.deleteFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("fileDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),h=r(n(64)),y=r(n(519)),m=r(n(35));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._fileId=null,null!=t.fileId&&e.setFileId(t.fileId),e}return(0,c.default)(r,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.fileGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.fileGetInfo;return Promise.resolve(y.default._fromProtobuf(r.fileInfo))}},{key:"_onMakeRequest",value:function(e){return{fileGetInfo:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetInfo;return new r({fileId:null!=t.fileID?h.default._fromProtobuf(t.fileID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("fileGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=b(n(23)),f=r(n(46)),d=b(n(111)),p=r(n(64)),h=r(n(45)),y=r(n(147));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._keys=null,e._expirationTime=null,e._contents=null,e._fileMemo=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof f.default?e:f.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"clearFileMemo",value:function(){return this._requireNotFrozen(),this._fileMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.updateFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileUpdate"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,contents:this._contents,memo:null!=this._fileMemo?{value:this._fileMemo}:null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileUpdate;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?p.default._fromProtobuf(i.fileID):void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?f.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=k,l.TRANSACTION_REGISTRY.set("fileUpdate",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=m(n(23)),f=r(n(46)),d=r(n(64)),p=m(n(78)),h=r(n(1029));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._startTime=null,e._startTimestamp=null,e._endTime=null,e._fileId=null,e._fileHash=null,e._freezeType=null,null!=r.startTime&&e.setStartTime(r.startTime.hour,r.startTime.minute),null!=r.endTime&&e.setEndTime(r.endTime.hour,r.endTime.minute),null!=r.startTimestamp&&e.setStartTimestamp(r.startTimestamp),null!=r.updateFileId&&e.setUpdateFileId(r.updateFileId),null!=r.fileId&&e.setFileId(r.fileId),null!=r.fileHash&&e.setFileHash(r.fileHash),null!=r.freezeType&&e.setFreezeType(r.freezeType),e}return(0,i.default)(n,[{key:"startTime",get:function(){return null}},{key:"setStartTime",value:function(e,t){if(this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._startTime={hour:Number(n[0]),minute:Number(n[1])}}else this._startTime={hour:e,minute:t};return this}},{key:"startTimestamp",get:function(){return this._startTimestamp}},{key:"setStartTimestamp",value:function(e){return this._requireNotFrozen(),this._startTimestamp=e,this}},{key:"endTime",get:function(){return console.warn("`FreezeTransaction.endTime` is deprecated"),this._endTime}},{key:"setEndTime",value:function(e,t){if(console.warn("`FreezeTransaction.endTime` is deprecated"),this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._endTime={hour:Number(n[0]),minute:Number(n[1])}}else this._endTime={hour:e,minute:t};return this}},{key:"updateFileId",get:function(){return this.fileId}},{key:"setUpdateFileId",value:function(e){return this.setFileId(e)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e,this}},{key:"fileHash",get:function(){return this._fileHash}},{key:"setFileHash",value:function(e){return this._requireNotFrozen(),this._fileHash="string"==typeof e?p.decode(e):e,this}},{key:"freezeType",get:function(){return this._freezeType}},{key:"setFreezeType",value:function(e){return this._requireNotFrozen(),this._freezeType=e,this}},{key:"_getTransactionDataCase",value:function(){return"freeze"}},{key:"_makeTransactionData",value:function(){return{startTime:null!=this._startTimestamp?this._startTimestamp._toProtobuf():null,updateFile:null!=this._fileId?this._fileId._toProtobuf():null,fileHash:this._fileHash,freezeType:null!=this._freezeType?this._freezeType.valueOf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].freeze;return l.default._fromProtobufTransactions(new n({startTime:null!=i.startHour&&null!=i.startMin?{hour:i.startHour,minute:i.startMin}:void 0,endTime:null!=i.endHour&&null!=i.endMin?{hour:i.endHour,minute:i.endMin}:void 0,startTimestamp:null!=i.startTime?f.default._fromProtobuf(i.startTime):void 0,updateFileId:null!=i.updateFile?d.default._fromProtobuf(i.updateFile):void 0,fileHash:null!=i.fileHash?i.fileHash:void 0,freezeType:null!=i.freezeType?h.default._fromCode(i.freezeType):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=v,l.TRANSACTION_REGISTRY.set("freeze",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.UnknownFreezeType:return"UNKNOWN_FREEZE_TYPE";case e.FreezeOnly:return"FREEZE_ONLY";case e.PrepareUpgrade:return"PREPARE_UPGRADE";case e.FreezeUpgrade:return"FREEZE_UPGRADE";case e.FreezeAbort:return"FREEZE_ABORT";case e.TelemetryUpgrade:return"TELEMETRY_UPGRADE";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromCode",value:function(t){switch(t){case 0:return e.UnknownFreezeType;case 1:return e.FreezeOnly;case 2:return e.PrepareUpgrade;case 3:return e.FreezeUpgrade;case 4:return e.FreezeAbort;case 5:return e.TelemetryUpgrade;default:throw new Error("(BUG) Status.fromCode() does not handle code: ".concat(t))}}}]),e}();t.default=i,i.UnknownFreezeType=new i(0),i.FreezeOnly=new i(1),i.PrepareUpgrade=new i(2),i.FreezeUpgrade=new i(3),i.FreezeAbort=new i(4),i.TelemetryUpgrade=new i(5)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),f=r(n(12)),d=r(n(65)),p=r(n(45)),h=r(n(147));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._keys=null,e._duration=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.keys&&e.setKeys(r.keys),null!=r.duration&&e.setDuration(r.duration),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){return this._requireNotFrozen(),this._keys=e instanceof h.default?e.toArray():e,this}},{key:"duration",get:function(){return this._duration}},{key:"setDuration",value:function(e){return this._requireNotFrozen(),this._duration=e instanceof d.default?e:new d.default(e),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.addLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAddLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHash:{hash:this._hash,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:void 0,duration:null!=this._duration?this._duration._toProtobuf():null,accountId:null!=this._accountId?this._accountId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAddLiveHash.liveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.hash?i.hash:void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return p.default._fromProtobufKey(e)})):void 0,duration:null!=i.duration&&null!=i.duration.seconds?i.duration.seconds:void 0,accountId:null!=i.accountId?f.default._fromProtobuf(i.accountId):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=b,l.TRANSACTION_REGISTRY.set("cryptoAddLiveHash",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),f=r(n(12));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.deleteLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDeleteLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHashToDelete:this._hash,accountOfLiveHash:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDeleteLiveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.liveHashToDelete?i.liveHashToDelete:void 0,accountId:null!=i.accountOfLiveHash?f.default._fromProtobuf(i.accountOfLiveHash):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("cryptoDeleteLiveHash",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),f=r(n(12)),d=r(n(326));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e._hash=null,null!=r.hash&&e.setHash(r.hash),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"liveHash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._hash=e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getLiveHash(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetLiveHash.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetLiveHash;return Promise.resolve(d.default._fromProtobuf(t.liveHash))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetLiveHash:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,hash:this._hash}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetLiveHash;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,hash:null!=t.hash?t.hash:void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetLiveHash",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),f=r(n(520));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){return(0,a.default)(this,n),t.call(this)}return(0,i.default)(n,[{key:"_execute",value:function(e,t){return e.network.getVersionInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.networkGetVersionInfo.header}},{key:"_mapResponse",value:function(e){var t=e.networkGetVersionInfo;return Promise.resolve(f.default._fromProtobuf(t))}},{key:"_onMakeRequest",value:function(e){return{networkGetVersionInfo:{header:e}}}}],[{key:"_fromProtobuf",value:function(e){return new n}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("networkGetVersionInfo",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(12)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),d=r(n(45));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._scheduledTransaction=null,e._payerAccountId=null,e._scheduleMemo=null,e._scheduledSignerPublicKeys=new Set,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.payerAccountID&&e.setPayerAccountId(r.payerAccountID),null!=r.scheduleMemo&&e.setScheduleMemo(r.scheduleMemo),e}return(0,i.default)(n,[{key:"_setScheduledTransaction",value:function(e){return this._scheduledTransaction=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"payerAccountId",get:function(){return this._payerAccountId}},{key:"setPayerAccountId",value:function(e){return this._requireNotFrozen(),this._payerAccountId=e,this}},{key:"setScheduleMemo",value:function(e){return this._requireNotFrozen(),this._scheduleMemo=e,this}},{key:"getScheduleMemo",get:function(){return this._requireNotFrozen(),this._scheduleMemo}},{key:"setScheduledTransaction",value:function(e){return this._requireNotFrozen(),e._requireNotFrozen(),this._scheduledTransaction=e.schedule()._scheduledTransaction,this}},{key:"_validateChecksums",value:function(e){null!=this._payerAccountId&&this._payerAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.createSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleCreate"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,payerAccountID:null!=this._payerAccountId?this._payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this._scheduledTransaction?this._scheduledTransaction._getScheduledTransactionBody():null,memo:this._scheduleMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleCreate;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?d.default._fromProtobufKey(i.adminKey):void 0,payerAccountID:null!=i.payerAccountID?l.default._fromProtobuf(i.payerAccountID):void 0,scheduleMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("scheduleCreate",y._fromProtobuf),f.SCHEDULE_CREATE_TRANSACTION.push((function(){return new y}))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(151)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.deleteSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleDelete"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleDelete;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("scheduleDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),h=r(n(151)),y=r(n(522)),m=r(n(35));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._scheduleId=null,null!=t.scheduleId&&e.setScheduleId(t.scheduleId),e}return(0,c.default)(r,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._scheduleId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.getScheduleInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.scheduleGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.scheduleGetInfo;return Promise.resolve(y.default._fromProtobuf(r.scheduleInfo))}},{key:"_onMakeRequest",value:function(e){return{scheduleGetInfo:{header:e,scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.scheduleGetInfo;return new r({scheduleId:null!=t.scheduleID?h.default._fromProtobuf(t.scheduleID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("scheduleGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(151)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.signSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleSign"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleSign;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("scheduleSign",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),f=r(n(64)),d=r(n(59)),p=r(n(46));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,e._expirationTime=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e,this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemDelete(t):e.smartContract.systemDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=m,l.TRANSACTION_REGISTRY.set("systemDelete",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),f=r(n(64)),d=r(n(59));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemUndelete(t):e.smartContract.systemUndelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemUndelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemUndelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("systemUndelete",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(35)),f=r(n(28)),d=r(n(12)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.associateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenAssociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenAssociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenAssociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),d=r(n(21));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._serials=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return e instanceof d.default?e:d.default.fromValue(e)})),this}},{key:"_execute",value:function(e,t){return e.token.burnToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenBurn"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,serialNumbers:this._serials,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenBurn;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,serials:null!=i.serialNumbers?i.serialNumbers:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("tokenBurn",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(17)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=r(n(35)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),p=r(n(21)),h=r(n(12)),y=r(n(46)),m=r(n(65)),b=r(n(205)),v=r(n(260)),k=r(n(261)),g=r(n(327)),_=r(n(328)),w=r(n(45));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var T=function(e){(0,c.default)(n,e);var t=A(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenName=null,e._tokenSymbol=null,e._decimals=null,e._initialSupply=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._pauseKey=null,e._wipeKey=null,e._supplyKey=null,e._feeScheduleKey=null,e._freezeDefault=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=new m.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._tokenMemo=null,e._customFees=[],e._tokenType=null,e._supplyType=null,e._maxSupply=null,e._defaultMaxTransactionFee=new f.default(30),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.decimals&&e.setDecimals(r.decimals),null!=r.initialSupply&&e.setInitialSupply(r.initialSupply),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.freezeDefault&&e.setFreezeDefault(r.freezeDefault),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.customFees&&e.setCustomFees(r.customFees),null!=r.tokenType&&e.setTokenType(r.tokenType),null!=r.supplyType&&e.setSupplyType(r.supplyType),null!=r.maxSupply&&e.setMaxSupply(r.maxSupply),e}return(0,i.default)(n,[{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"decimals",get:function(){return this._decimals}},{key:"setDecimals",value:function(e){return this._requireNotFrozen(),this._decimals=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"initialSupply",get:function(){return this._initialSupply}},{key:"setInitialSupply",value:function(e){return this._requireNotFrozen(),this._initialSupply=p.default.fromValue(e),this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"freezeDefault",get:function(){return this._freezeDefault}},{key:"setFreezeDefault",value:function(e){return this._requireNotFrozen(),this._freezeDefault=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=null,this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof h.default?e:h.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof m.default?e:new m.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._customFees=e,this}},{key:"tokenType",get:function(){return this._tokenType}},{key:"setTokenType",value:function(e){return this._tokenType=e,this}},{key:"supplyType",get:function(){return this._supplyType}},{key:"setSupplyType",value:function(e){return this._supplyType=e,this}},{key:"maxSupply",get:function(){return this._maxSupply}},{key:"setMaxSupply",value:function(e){return this._maxSupply="number"==typeof e?p.default.fromNumber(e):e,this}},{key:"freezeWith",value:function(e){return null!=this._autoRenewPeriod&&null!=e&&e.operatorAccountId&&(this._autoRenewAccountId=e.operatorAccountId),(0,u.default)((0,l.default)(n.prototype),"freezeWith",this).call(this,e)}},{key:"_validateChecksums",value:function(e){null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.createToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenCreation"}},{key:"_makeTransactionData",value:function(){return{name:this._tokenName,symbol:this._tokenSymbol,decimals:null!=this._decimals?this._decimals.toInt():null,initialSupply:this._initialSupply,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,pauseKey:null!=this._pauseKey?this._pauseKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null,freezeDefault:this._freezeDefault,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:this._tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this._tokenType?this._tokenType._code:null,supplyType:null!=this._supplyType?this._supplyType._code:null,maxSupply:this.maxSupply}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenCreation;return d.default._fromProtobufTransactions(new n({tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,decimals:null!=i.decimals?i.decimals:void 0,initialSupply:null!=i.initialSupply?i.initialSupply:void 0,treasuryAccountId:null!=i.treasury?h.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?w.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?w.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?w.default._fromProtobufKey(i.freezeKey):void 0,pauseKey:null!=i.pauseKey?w.default._fromProtobufKey(i.pauseKey):void 0,wipeKey:null!=i.wipeKey?w.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?w.default._fromProtobufKey(i.supplyKey):void 0,feeScheduleKey:null!=i.feeScheduleKey?w.default._fromProtobufKey(i.feeScheduleKey):void 0,freezeDefault:null!=i.freezeDefault?i.freezeDefault:void 0,autoRenewAccountId:null!=i.autoRenewAccount?h.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?y.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?m.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo?i.memo:void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?b.default._fromProtobuf(e):null!=e.fractionalFee?v.default._fromProtobuf(e):k.default._fromProtobuf(e)})):void 0,tokenType:null!=i.tokenType?g.default._fromCode(i.tokenType):void 0,supplyType:null!=i.supplyType?_.default._fromCode(i.supplyType):void 0,maxSupply:null!=i.maxSupply?i.maxSupply:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=T,d.TRANSACTION_REGISTRY.set("tokenCreation",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.deleteToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDeletion"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDeletion;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenDeletion",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(35)),f=r(n(28)),d=r(n(12)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.dissociateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDissociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDissociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenDissociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),d=r(n(205)),p=r(n(260)),h=r(n(261));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._customFees=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.customFees&&e.setCustomFees(r.customFees),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):l.default._fromProtobuf(e._toProtobuf()),this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._requireNotFrozen(),this._customFees=e,this}},{key:"_execute",value:function(e,t){return e.token.updateTokenFeeSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFeeScheduleUpdate"}},{key:"_makeTransactionData",value:function(){return{tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,customFees:this._customFees.map((function(e){return e._toProtobuf()}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFeeScheduleUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.tokenId?l.default._fromProtobuf(i.tokenId):void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?d.default._fromProtobuf(e):null!=e.fractionalFee?p.default._fromProtobuf(e):h.default._fromProtobuf(e)})):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=b,f.TRANSACTION_REGISTRY.set("tokenFeeScheduleUpdate",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(12)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.freezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenFreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(12)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.grantKycToTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenGrantKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenGrantKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenGrantKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),h=r(n(28)),y=r(n(523)),m=r(n(35));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e}return(0,c.default)(r,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.getTokenInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.tokenGetInfo;return Promise.resolve(y.default._fromProtobuf(r.tokenInfo))}},{key:"_onMakeRequest",value:function(e){return{tokenGetInfo:{header:e,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.tokenGetInfo;return new r({tokenId:null!=t.token?h.default._fromProtobuf(t.token):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("tokenGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=y(n(23)),d=r(n(21)),p=y(n(78));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function m(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._metadata=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.metadata&&e.setMetadata(r.metadata),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"metadata",get:function(){return this._metadata}},{key:"addMetadata",value:function(e){return this._requireNotFrozen(),"string"==typeof e&&console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead."),this._metadata.push("string"==typeof e?p.decode(e):e),this}},{key:"setMetadata",value:function(e){this._requireNotFrozen();var t,n=m(e);try{for(n.s();!(t=n.n()).done;){if("string"==typeof t.value){console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead.");break}}}catch(e){n.e(e)}finally{n.f()}return this._metadata=e.map((function(e){return"string"==typeof e?p.decode(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.mintToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenMint"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,metadata:this._metadata}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenMint;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,metadata:null!=i.metadata?i.metadata:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=k,f.TRANSACTION_REGISTRY.set("tokenMint",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),h=r(n(180)),y=r(n(12)),m=r(n(28)),b=r(n(524)),v=r(n(35)),k=r(n(21));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function _(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var w=function(e){(0,l.default)(r,e);var t,n=_(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._nftId=null,null!=t.nftId&&e.setNftId(t.nftId),e._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e._start=null,null!=t.start&&e.setStart(t.start),e._end=null,null!=t.end&&e.setEnd(t.end),e}return(0,c.default)(r,[{key:"nftId",get:function(){return this._nftId}},{key:"setNftId",value:function(e){return this._nftId="string"==typeof e?h.default.fromString(e):h.default._fromProtobuf(e._toProtobuf()),this}},{key:"accountId",get:function(){return console.warn("`TokenNftInfoQuery.accountId` is deprecated with no replacement"),this._accountId}},{key:"setAccountId",value:function(e){return console.warn("`TokenNftInfoQuery.setAccountId()` is deprecated with no replacement"),this._accountId="string"==typeof e?y.default.fromString(e):y.default._fromProtobuf(e._toProtobuf()),this}},{key:"tokenId",get:function(){return console.warn("`TokenNftInfoQuery.tokenId` is deprecated with no replacement"),this._tokenId}},{key:"setTokenId",value:function(e){return console.warn("`TokenNftInfoQuery.setTokenId()` is deprecated with no replacement"),this._tokenId="string"==typeof e?m.default.fromString(e):m.default._fromProtobuf(e._toProtobuf()),this}},{key:"start",get:function(){return console.warn("`TokenNftInfoQuery.start` is deprecated with no replacement"),this._start}},{key:"setStart",value:function(e){return console.warn("`TokenNftInfoQuery.setStart()` is deprecated with no replacement"),this._start="number"==typeof e?k.default.fromNumber(e):e,this}},{key:"end",get:function(){return console.warn("`TokenNftInfoQuery.end` is deprecated with no replacement"),this._end}},{key:"setEnd",value:function(e){return console.warn("`TokenNftInfoQuery.setEnd()` is deprecated with no replacement"),this._end="number"==typeof e?k.default.fromNumber(e):e,this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",v.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_execute",value:function(e,t){return e.token.getTokenNftInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetNftInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=[e.tokenGetNftInfo.nft];return Promise.resolve(r.map((function(e){return b.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{tokenGetNftInfo:{header:e,nftID:null!=this._nftId?this._nftId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){if(null!=e.tokenGetNftInfo){var t=e.tokenGetNftInfo;return new r({nftId:null!=t.nftID?h.default._fromProtobuf(t.nftID):void 0})}if(null!=e.tokenGetAccountNftInfos){var n=e.tokenGetAccountNftInfos;return new r({accountId:null!=n.accountID?y.default._fromProtobuf(n.accountID):void 0,start:null!=n.start?n.start:void 0,end:null!=n.end?n.end:void 0})}var o=e.tokenGetNftInfos;return new r({tokenId:null!=o.tokenID?m.default._fromProtobuf(o.tokenID):void 0,start:null!=o.start?o.start:void 0,end:null!=o.end?o.end:void 0})}}]),r}(p.default);t.default=w,p.QUERY_REGISTRY.set("tokenGetNftInfo",w._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.pauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenPause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenPause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenPause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(12)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.revokeKycFromTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenRevokeKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenRevokeKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenRevokeKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(12)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unfreezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnfreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnfreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenUnfreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unpauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnpause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnpause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenUnpause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),d=r(n(12)),p=r(n(46)),h=r(n(65)),y=r(n(45));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._tokenName=null,e._tokenSymbol=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._wipeKey=null,e._supplyKey=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=null,e._tokenMemo=null,e._feeScheduleKey=null,e._pauseKey=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"setsupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"clearTokenMemo",value:function(){return this._requireNotFrozen(),this._tokenMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.updateToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUpdate"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,name:this.tokenName,symbol:this.tokenSymbol,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:null!=this._tokenMemo?{value:this._tokenMemo}:null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,treasuryAccountId:null!=i.treasury?d.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?y.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?y.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?y.default._fromProtobufKey(i.freezeKey):void 0,wipeKey:null!=i.wipeKey?y.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?y.default._fromProtobufKey(i.supplyKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?d.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?p.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?h.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,feeScheduleKey:null!=i.feeScheduleKey?y.default._fromProtobufKey(i.feeScheduleKey):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=v,f.TRANSACTION_REGISTRY.set("tokenUpdate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(28)),f=r(n(12)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),p=r(n(21));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,e._serials=[],e._amount=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return"number"==typeof e?p.default.fromNumber(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.wipeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenWipe"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null,serialNumbers:this.serials}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenWipe;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0,amount:null!=i.amount?i.amount:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=m,d.TRANSACTION_REGISTRY.set("tokenWipe",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(12)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),d=r(n(65)),p=r(n(45));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._submitKey=null,e._autoRenewAccountId=null,e._autoRenewPeriod=new d.default(f.DEFAULT_AUTO_RENEW_PERIOD),e._topicMemo=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.submitKey&&e.setSubmitKey(r.submitKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e}return(0,i.default)(n,[{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof l.default?e:l.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof d.default?e:new d.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.createTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusCreateTopic"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),memo:this._topicMemo}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusCreateTopic;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?p.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?p.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?l.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("consensusCreateTopic",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),f=r(n(124));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.deleteTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusDeleteTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusDeleteTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?f.default._fromProtobuf(i.topicID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("consensusDeleteTopic",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(53)),h=r(n(124)),y=r(n(525)),m=r(n(35));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e}return(0,c.default)(r,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._topicId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.getTopicInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.consensusGetTopicInfo.header}},{key:"_mapResponse",value:function(e,t,n){return Promise.resolve(y.default._fromProtobuf(e.consensusGetTopicInfo))}},{key:"_onMakeRequest",value:function(e){return{consensusGetTopicInfo:{header:e,topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}}],[{key:"_fromProtobuf",value:function(e){var t=e.consensusGetTopicInfo;return new r({topicId:null!=t.topicID?h.default._fromProtobuf(t.topicID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("consensusGetTopicInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(79)),c=r(n(1061)),s=r(n(526)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(37)),f=r(n(124)),d=r(n(21)),p=r(n(46)),h=n(150);function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}var m=function(){function e(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._topicId=null,null!=n.topicId&&this.setTopicId(n.topicId),this._startTime=null,null!=n.startTime&&this.setStartTime(n.startTime),this._endTime=null,null!=n.endTime&&this.setEndTime(n.endTime),this._limit=null,null!=n.limit&&this.setLimit(n.limit),this._errorHandler=function(e,n){console.error("Error attempting to subscribe to topic: ".concat(null!=t._topicId?t._topicId.toString():""))},null!=n.errorHandler&&(this._errorHandler=n.errorHandler),this._listener=null,this._completionHandler=function(){console.log("Subscription to topic ".concat(null!=t._topicId?t._topicId.toString():""," complete"))},null!=n.completionHandler&&(this._completionHandler=n.completionHandler),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return h.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},null!=n.retryHandler&&(this._retryHandler=n.retryHandler),this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0,this._handle=null}return(0,i.default)(e,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this.requireNotSubscribed(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"startTime",get:function(){return this._startTime}},{key:"setStartTime",value:function(e){return this.requireNotSubscribed(),this._startTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"endTime",get:function(){return this._endTime}},{key:"setEndTime",value:function(e){return this.requireNotSubscribed(),this._endTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this.requireNotSubscribed(),this._limit=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"setErrorHandler",value:function(e){return this._errorHandler=e,this}},{key:"setCompletionHandler",value:function(e){return this.requireNotSubscribed(),this._completionHandler=e,this}},{key:"setMaxAttempts",value:function(e){this.requireNotSubscribed(),this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this.requireNotSubscribed(),this._maxBackoff=e}},{key:"subscribe",value:function(e,t,n){return this._handle=new c.default,this._listener=n,null!=t&&(this._errorHandler=t),this._makeServerStreamRequest(e),this._handle}},{key:"_makeServerStreamRequest",value:function(e){var t=this,n=new Map,r=l.ConsensusTopicQuery.encode({topicID:null!=this._topicId?this._topicId._toProtobuf():null,consensusStartTime:null!=this._startTime?this._startTime._toProtobuf():null,consensusEndTime:null!=this._endTime?this._endTime._toProtobuf():null,limit:this._limit}).finish(),o=e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("ConsensusService","subscribeTopic",r,(function(e){var r=l.ConsensusTopicResponse.decode(e);if(null!=t._limit&&t._limit.gt(0)&&(t._limit=t._limit.sub(1)),t._startTime=p.default._fromProtobuf(r.consensusTimestamp).plusNanos(1),null==r.chunkInfo||null!=r.chunkInfo&&1===r.chunkInfo.total)t._passTopicMessage(s.default._ofSingle(r));else{var o=r.chunkInfo,a=o.initialTransactionID,i=o.total,c=u.default._fromProtobuf(a).toString(),f=[],d=n.get(c);if(null==d?n.set(c,f):f=d,f.push(r),f.length===i){var h=s.default._ofMany(f);n.delete(c),t._passTopicMessage(h)}}}),(function(n){var r=n instanceof Error?n.message:n.details;if(t._attempt=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e._message=null,null!=t.message&&e.setMessage(t.message),e._maxChunks=20,e._chunkSize=h.CHUNK_SIZE,null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._chunkInfo=null,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`TopicMessageSubmitTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?y.default.fromString(e):e.clone(),this}},{key:"message",get:function(){return this._message}},{key:"setMessage",value:function(e){return this._requireNotFrozen(),e=k.requireStringOrUint8Array(e),this._message=e instanceof Uint8Array?e:m.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,l.default)((0,p.default)(o.prototype),"freezeWith",this).call(this,e),null==this._message)return this;var t=Math.floor((this._message.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Message with size ".concat(this._message.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId._toProtobuf(),r=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear(),(0,s.default)((0,p.default)(o.prototype),"_nextTransactionIndex",0,this,!0);for(var a=0;athis._chunkSize)throw new Error("cannot schedule `TopicMessageSubmitTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,l.default)((0,p.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,s,f;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,l.default)((0,p.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,l.default)((0,p.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,s=0;case 9:if(!(sthis._message.length&&(t=this._message.length),{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message.slice(e,t),chunkInfo:this._chunkInfo}}return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message}}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){var i=a[0].consensusSubmitMessage;return h.default._fromProtobufTransactions(new o({topicId:null!=i.topicID?y.default._fromProtobuf(i.topicID):void 0,message:null!=i.message?i.message:void 0}),e,t,n,r,a)}}]),o}(h.default);t.default=T,h.TRANSACTION_REGISTRY.set("consensusSubmitMessage",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),f=r(n(12)),d=r(n(124)),p=r(n(65)),h=r(n(45));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e._topicMemo=null,null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e._submitKey=null,null!=r.submitKey&&e.setSubmitKey(r.submitKey),e._adminKey=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),e._autoRenewAccountId=null,null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),e._autoRenewPeriod=null,null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"clearTopicId",value:function(){return this._requireNotFrozen(),this._topicId=null,this}},{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"clearTopicMemo",value:function(){return this._requireNotFrozen(),this._topicMemo=null,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"clearAdminKey",value:function(){return this._requireNotFrozen(),this._adminKey=null,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"clearSubmitKey",value:function(){return this._requireNotFrozen(),this._submitKey=null,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"clearAutoRenewAccountId",value:function(){return this._requireNotFrozen(),this._autoRenewAccountId=null,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.updateTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusUpdateTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,memo:null!=this._topicMemo?{value:this._topicMemo}:null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusUpdateTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?d.default._fromProtobuf(i.topicID):void 0,adminKey:null!=i.adminKey?h.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?h.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?f.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=b,l.TRANSACTION_REGISTRY.set("consensusUpdateTopic",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(35)),f=r(n(28)),d=r(n(12)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(23)),h=r(n(21)),y=r(n(1065)),m=r(n(324)),b=r(n(508)),v=r(n(504)),k=r(n(1066)),g=r(n(506)),_=r(n(505)),w=r(n(1067)),I=r(n(180));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,n),(e=t.call(this))._tokenTransfers=[],e._hbarTransfers=[],e._nftTransfers=[],e._defaultMaxTransactionFee=new l.default(1);var o,i=T(null!=r.tokenTransfers?r.tokenTransfers:[]);try{for(i.s();!(o=i.n()).done;){var u=o.value;e.addTokenTransfer(u.tokenId,u.accountId,u.amount)}}catch(e){i.e(e)}finally{i.f()}var c,s=T(null!=r.hbarTransfers?r.hbarTransfers:[]);try{for(s.s();!(c=s.n()).done;){var f=c.value;e.addHbarTransfer(f.accountId,f.amount)}}catch(e){s.e(e)}finally{s.f()}var d,p=T(null!=r.nftTransfers?r.nftTransfers:[]);try{for(p.s();!(d=p.n()).done;){var h=d.value;e.addNftTransfer(h.tokenId,h.serial,h.sender,h.recipient)}}catch(e){p.e(e)}finally{p.f()}return e}return(0,i.default)(n,[{key:"tokenTransfers",get:function(){var e,t=new v.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId);null!=o?o._set(r.accountId,r.amount):((o=new _.default)._set(r.accountId,r.amount),t._set(r.tokenId,o))}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addTokenTransfer",value:function(e,t,n){this._requireNotFrozen();var r,o=e instanceof f.default?e:f.default.fromString(e),a=t instanceof d.default?t:d.default.fromString(t),i=n instanceof h.default?n:h.default.fromNumber(n),u=T(this._tokenTransfers);try{for(u.s();!(r=u.n()).done;){var c=r.value;if(0===c.tokenId.compare(o)&&0===c.accountId.compare(a))return c.amount=c.amount.add(i),c.expectedDecimals=null,this}}catch(e){u.e(e)}finally{u.f()}return this._tokenTransfers.push(new b.default({tokenId:e,accountId:t,expectedDecimals:null,amount:n,isApproved:!1})),this}},{key:"addTokenTransferWithDecimals",value:function(e,t,n,r){this._requireNotFrozen();var o,a=e instanceof f.default?e:f.default.fromString(e),i=t instanceof d.default?t:d.default.fromString(t),u=n instanceof h.default?n:h.default.fromNumber(n),c=!1,s=T(this._tokenTransfers);try{for(s.s();!(o=s.n()).done;){var l=o.value;if(0===l.tokenId.compare(a)){if(null!=l.expectedDecimals&&l.expectedDecimals!==r)throw new Error("expected decimals mis-match");l.expectedDecimals=r,0===l.accountId.compare(i)&&(l.amount=l.amount.add(u),l.expectedDecimals=r,c=!0)}}}catch(e){s.e(e)}finally{s.f()}return c||this._tokenTransfers.push(new b.default({tokenId:e,accountId:t,expectedDecimals:r,amount:n,isApproved:!1})),this}},{key:"tokenIdDecimals",get:function(){var e,t=new y.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.tokenId,r.expectedDecimals)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"hbarTransfers",get:function(){var e,t=new k.default,n=T(this._hbarTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.accountId,r.amount)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addHbarTransfer",value:function(e,t){this._requireNotFrozen();var n,r=e instanceof d.default?e:d.default.fromString(e),o=t instanceof l.default?t:new l.default(t),a=T(this._hbarTransfers);try{for(a.s();!(n=a.n()).done;){var i=n.value;if(0===i.accountId.compare(r))return i.amount=l.default.fromTinybars(i.amount.toTinybars().add(o.toTinybars())),this}}catch(e){a.e(e)}finally{a.f()}return this._hbarTransfers.push(new m.default({accountId:r,amount:o,isApproved:!1})),this}},{key:"_validateChecksums",value:function(e){var t,n=T(this._hbarTransfers);try{for(n.s();!(t=n.n()).done;){t.value.accountId.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}var r,o=T(this._tokenTransfers);try{for(o.s();!(r=o.n()).done;){var a=r.value;a.tokenId.validateChecksum(e),a.accountId.validateChecksum(e)}}catch(e){o.e(e)}finally{o.f()}var i,u=T(this._nftTransfers);try{for(u.s();!(i=u.n()).done;){var c=i.value;c.tokenId.validateChecksum(e),c.senderAccountId.validateChecksum(e),c.receiverAccountId.validateChecksum(e)}}catch(e){u.e(e)}finally{u.f()}}},{key:"nftTransfers",get:function(){var e,t=new g.default,n=T(this._nftTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId),a={sender:r.senderAccountId,recipient:r.receiverAccountId,serial:r.serialNumber,isApproved:r.isApproved};null!=o?o.push(a):t._set(r.tokenId,[a])}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"addNftTransfer",value:function(e,t,n,r){var o,a,i;if(this._requireNotFrozen(),e instanceof I.default)o=e,a="string"==typeof t?d.default.fromString(t):t,i="string"==typeof n?d.default.fromString(n):n;else if(e instanceof f.default)o=new I.default(e,t),a="string"==typeof n?d.default.fromString(n):n,i="string"==typeof r?d.default.fromString(r):r;else try{o=I.default.fromString(e),a="string"==typeof t?d.default.fromString(t):t,i="string"==typeof n?d.default.fromString(n):n}catch(c){var u=f.default.fromString(e);o=new I.default(u,t),a="string"==typeof n?d.default.fromString(n):n,i="string"==typeof r?d.default.fromString(r):r}var c,s=T(this._nftTransfers);try{for(s.s();!(c=s.n()).done;){var l=c.value;if(0===l.tokenId.compare(o.tokenId)&&0===l.serialNumber.compare(o.serial))return l.senderAccountId=a,l.receiverAccountId=i,this}}catch(e){s.e(e)}finally{s.f()}return this._nftTransfers.push(new w.default({tokenId:o.tokenId,serialNumber:o.serial,senderAccountId:a,receiverAccountId:i,isApproved:!1})),this}},{key:"setHbarTransferApproval",value:function(e,t){var n,r="string"==typeof e?d.default.fromString(e):e,o=T(this._hbarTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.accountId.compare(r)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"setTokenTransferApproval",value:function(e,t,n){var r,o="string"==typeof e?f.default.fromString(e):e,a="string"==typeof t?d.default.fromString(t):t,i=T(this._tokenTransfers);try{for(i.s();!(r=i.n()).done;){var u=r.value;0===u.tokenId.compare(o)&&0===u.accountId.compare(a)&&(u.isApproved=n)}}catch(e){i.e(e)}finally{i.f()}return this}},{key:"setNftTransferApproval",value:function(e,t){var n,r="string"==typeof e?I.default.fromString(e):e,o=T(this._nftTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.tokenId.compare(r.tokenId)&&0===a.serialNumber.compare(r.serial)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"_execute",value:function(e,t){return e.crypto.cryptoTransfer(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoTransfer"}},{key:"_makeTransactionData",value:function(){var e=[];this._tokenTransfers.sort((function(e,t){var n=e.tokenId.compare(t.tokenId);return 0!==n?n:e.accountId.compare(t.accountId)})),this._nftTransfers.sort((function(e,t){var n=e.senderAccountId.compare(t.senderAccountId);if(0!=n)return n;var r=e.receiverAccountId.compare(t.receiverAccountId);return 0!=r?r:e.serialNumber.compare(t.serialNumber)}));for(var t=0,n=0;t0?e[e.length-1]:null,i=null!=a?a.tokenId:null;if(null!=a&&null!=i&&0===i.compare(r)){a.transfers.push(this._tokenTransfers[t++]);continue}if(null!=a&&null!=i&&0===i.compare(o)){a.nftTransfers.push(this._nftTransfers[n++]);continue}var u=r.compare(o);0===u?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[this._nftTransfers[n++]]}):u<=0?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]}):e.push({tokenId:r,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}else if(t0?e[e.length-1]:null,l=null!=s?s.tokenId:null;if(null!=s&&null!=l&&0===l.compare(c)){s.transfers.push(this._tokenTransfers[t++]);continue}e.push({tokenId:c,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]})}else if(n0?e[e.length-1]:null,p=null!=d?d.tokenId:null;if(null!=d&&null!=p&&0===p.compare(f)){d.nftTransfers.push(this._nftTransfers[n++]);continue}e.push({tokenId:f,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}return this._hbarTransfers.sort((function(e,t){return e.accountId.compare(t.accountId)})),{transfers:{accountAmounts:this._hbarTransfers.map((function(e){return{accountID:e.accountId._toProtobuf(),amount:e.amount.toTinybars(),isApproval:e.isApproved}}))},tokenTransfers:e.map((function(e){return{token:e.tokenId._toProtobuf(),expectedDecimals:null!=e.expectedDecimals?{value:e.expectedDecimals}:null,transfers:e.transfers.map((function(e){return e._toProtobuf()})),nftTransfers:e.nftTransfers.map((function(e){return e._toProtobuf()}))}}))}}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoTransfer,u=new n;return u._tokenTransfers=b.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),u._hbarTransfers=m.default._fromProtobuf(null!=i.transfers&&null!=i.transfers.accountAmounts?i.transfers.accountAmounts:[]),u._nftTransfers=w.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),p.default._fromProtobufTransactions(u,e,t,r,o,a)}}]),n}(p.default);t.default=E,p.TRANSACTION_REGISTRY.set("cryptoTransfer",E._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(28));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(88)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(12)),l=r(n(35));function f(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(e=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;n--){var r=this._nodes[n],o=e.get(r.address.toString());null!=o&&o.toString()===r.accountId.toString()||t.push(n)}return t}},{key:"_checkNetworkContainsEntry",value:function(e){var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){if(t.value.address.toString()===e[0])return!0}}catch(e){n.e(e)}finally{n.f()}return!1}},{key:"maxNodesPerTransaction",get:function(){return this._maxNodesPerTransaction}},{key:"setMaxNodesPerTransaction",value:function(e){return this._maxNodesPerTransaction=e,this}},{key:"maxNodeAttempts",get:function(){return this._maxNodeAttempts}},{key:"setMaxNodeAttempts",value:function(e){return this._maxNodeAttempts=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMinBackoff",value:function(e){this._minBackoff=e;var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){t.value.setMinBackoff(e)}}catch(e){n.e(e)}finally{n.f()}return this}},{key:"getNumberOfNodesForTransaction",value:function(){return this._maxNodesPerTransaction>0?this._maxNodesPerTransaction:(this._nodes.length+3-1)/3}},{key:"getNodeAccountIdsForExecute",value:function(){return this._getNumberOfMostHealthyNodes(this.getNumberOfNodesForTransaction()).map((function(e){return e.accountId}))}}]),n}(r(n(529)).default);t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(528)),l=n(1074);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e){(0,i.default)(n,e);var t=f(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,n),e=t.call(this,r),null!=r.newNode)e._accountId=r.newNode.accountId,e._nodeAddress=null;else{if(null==r.cloneNode)throw new Error("failed to create node: ".concat(JSON.stringify(r)));e._accountId=r.cloneNode.node._accountId,e._nodeAddress=r.cloneNode.node._nodeAddress}return e}return(0,a.default)(n,[{key:"getKey",value:function(){return this._accountId.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}},{key:"setCert",value:function(e){switch(e.toString()){case"previewnet":this._cert=l.PREVIEWNET_CERTS[this._accountId.toString()];break;case"testnet":this._cert=l.TESTNET_CERTS[this._accountId.toString()];break;case"mainnet":this._cert=l.MAINNET_CERTS[this._accountId.toString()]}return this}},{key:"accountId",get:function(){return this._accountId}},{key:"nodeAddress",get:function(){return this._nodeAddress}},{key:"setNodeAddress",value:function(e){return this._nodeAddress=e,this}}]),n}(s.default);t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.HOST_AND_PORT=void 0;var o=r(n(1)),a=r(n(2)),i=/^(\S+):(\d+)$/;t.HOST_AND_PORT=i;var u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.address){var n=i.exec(t.address);if(null==n)throw new Error("failed to parse address: ".concat(t.address));this._address=n[1],this._port=null!=n[2]?parseInt(n[2]):null}else{if(null==t.host||null==t.port)throw new Error("failed to create a managed node address: ".concat(JSON.stringify(t)));this._address=t.host,this._port=t.port}Object.freeze(this)}return(0,a.default)(e,[{key:"toInsecure",value:function(){var t=this.port;switch(this.port){case 50212:t=50211;break;case 443:t=5600}return new e({host:this.address,port:t})}},{key:"toSecure",value:function(){var t=this.port;switch(this.port){case 50211:t=50212;break;case 5600:t=443}return new e({host:this.address,port:t})}},{key:"address",get:function(){return this._address}},{key:"port",get:function(){return this._port}},{key:"isTransportSecurity",value:function(){return 50212==this._port||443==this._port}},{key:"toString",value:function(){return null==this.port?this.address:"".concat(this.address,":").concat(this.port)}}],[{key:"fromString",value:function(t){return new e({address:t})}}]),e}();t.default=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_CERTS=t.PREVIEWNET_CERTS=t.MAINNET_CERTS=void 0;t.PREVIEWNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUenyqJ4UaFBbwokatcUqAwW3o3rswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU4WhgPMjI5NTA2MDcyMjIxNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEm5b1+oG9R0qt\nzM7UZnS5l/xxUNHIHq5+NAvtlviCpJL19jrW9+/UOy00Qqc6vS6tS1hS+dNJmpiZ\nFN0EHew4VDR7ACnL4LDJKmIHWjQ0iwvZo5kCpO0r9BtPN5FvaSxyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUeciBviJtjeuue0GPf1xllNw7qvYwCgYIKoZIzj0EAwMDaAAwZQIw\nJeG0H2HdsI1VhOYmJmYlNeKCNgAk+LMorzPmsIInVBO2HK2IrKfpReWDS/m5j51V\nAjEAxKBxDezJDqAZHTkTXCg+X9Q9V6J6M5yDy5IS90aCWEo+W8C1Hc6hkn2/NrvT\nPhwK\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUUfjO8LyXBdzrzbAe1Yl+d34IDsIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAERwfj4ZtD/wRb\nf8h9NEMu2sQoLFK9Gc4SQ8o6j4ccLYGdgOoVoq4zzy4Jr7ZtCTuACfCfhp7wy8ra\n+6cugccaSd6AzOKRSVZvQvkUTFKIoAOKwp6IhlU48rmi80MT07eyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCGhfVMP72Y0G5XUksE3dPgFHrzkwCgYIKoZIzj0EAwMDZwAwZAIw\ncpX7irZWyuujWRYUs9kLNgB2YLQK+n8r1fH+tJg3+zkcZ2pzhGWmpUUZWOzsDqGC\nAjBUbhlmrTc4LrEBN0EMiRYzfPD2kBZxusLBDIg/aDYERCMcsFvF1T9SsuasF/B+\ncI8=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUIo4L+7xe/mUmpKy4qOAQEIxz8UMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEoFgCjb1/7BUJ\nEXKIPJLlsOSp/39G8l92wOSr7h+Py7iwVwu68H2ykftMOq3tRwDRXZHz7ViqcIZ9\nlfMcS8sbRtVm9tBbNciVUqTLWX9nHr/c4PhKEi+LdgtSUr2+hHiWo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMR89BHC3yKC4YwUgyBVQUGBCprQwCgYIKoZIzj0EAwMDZwAwZAIw\nUs2BdslcScIwcmxoB60K7/1BPfQI8ccDZIMosas6U2zhinTnRKik1T0i+uHhLl8e\nAjA5apAwSPTnP7j3Bo/FOCkfjTqOjwp2lUqzDJYKolKsHX2sy8hX9MkYiY46SaJ1\nP+0=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUWpji03mJsR/16MP8BrOfpNz7aQMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE+KDMC99Q1rWi\n+FwlytGMS5qzTDytCvk+PzdONnDZ/weNSv4j3BXSo588IwhIxLtfcBlyo/+PmE1c\n5qGFXuMoZjGr22VpvogkRgPejD+Gawb4A2XHkMCD8NmO66uPw97po1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUN1qEI4eQ+WHavb9ypGV417NvhGowCgYIKoZIzj0EAwMDaAAwZQIw\nL0khkiDOiFRa3wx9l5JNjaSRePPc3ZaTaJQkPYeauMaLWEvmC/0e2/e9gPm5qJ8E\nAjEAgXQMko3vNB8VRN4XjyFJa8p/muZ/tLA15wPnb/boUmiZ+njDDSaiu8tIQrTB\ngHW6\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEJ7AJvrqDUBNKbssGoJtww3v+WowCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjAwWhgPMjI5NTA2MDcyMjIyMDBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEfgJ8w9GUWM3y\nyusedZOFQrgXFVsdtRsMSHbqyVCN6+Wow6SIjy29GRMSP5R2aswupFgh6lXJRqnr\ntY+hpRumFKsmSo+5+l8DBcql4rzs4utESTehM+Cq9LYc4A1z0UIRo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMCm3UqSbT01Zr23hLzCGnXbDa+MwCgYIKoZIzj0EAwMDZwAwZAIw\nFNcN7mKJo/bwpRT+y/KbYkCJsvljdbXzJOXXQ3e6J6R+0vLqcT25J/ry6pBZMUwR\nAjAswu29z8KJCSxnWwnPpHDmkRT15zG/xS+pAmx3oeQSqp6ZD7qpdJE8zzhbfe5x\nwAc=\n-----END CERTIFICATE-----\n"};t.TESTNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUMkNeM6Sbk9ZFYmRWZmSgTQHHWyUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETLLoIMZjEhDP\nKLHS7bJT4OTYGgR/8mB65yfx3KqMLYFF+q2SpWkIrYgUQLVEUEibVSnLlxRUzH7R\nszcKynpTwh0W0yfWanZKQg+RWoKkEYlu2GvkUtJb8cRVM9NLmJUeo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUSrIepwFx8gZ8/G+WGaxs6GgkMtQwCgYIKoZIzj0EAwMDaQAwZgIx\nAJxC0fjB1OrF9vkCKsfnPS3Z+1hscrZhEDG38NxdLEAfPQ5VmyrSBgJy11FBp8yB\n0QIxAKzbge3Lf7iBMwYwm+2M/GiVgmHNMLdtrYuerWpdbYOHgRNAkyt57JoThn0u\nTzkd5Q==\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUGLriiLPacglp6U+BtJcF9TI7xEUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEXhR9cb6mH9AE\nGNSGk3OkxN1C/JW49ddYZ/XWD4InjS8D1kXmB1Y39v1mF0L1loG6lDT8Zp46zrj7\n5zMONXZeD2b0mx5hHhtllPTpJ10Tlt9FDoyFbKwPRQ/SAPNADfuzo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCaKtx8RZ1XJO9rmZMbIcFJZkcv4wCgYIKoZIzj0EAwMDaAAwZQIx\nAPhDW0VrNSmq8hODdhIVV4GyvpYhp3Fksg+sZr3DmUatwn+ptj+X+9IzgPl9QYE3\nkAIwcy2ixgNkjC/DYVmgT4MpUnLneLK0gA23Vj2QwACaTH99H/ybqUH7srj0POB9\n5wvV\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUEMduome38hvAuIKoGjg/tHatQZMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEl1olzP1L4WgX\nd7aujOXmTQZt3tEOGzkMa3S6qJwISLBI7Tb9KaW8zYIe9xWBVAwphCbD0wn9xpPV\nwMr4uTn+JocugYBbe2YoUGzWTkxWnOEKXbh/nQJCe3XE/C0FY8fAo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQULfw7LVtTiUDVIvZwhhWW0soQtSQwCgYIKoZIzj0EAwMDaQAwZgIx\nAID5v3Lo2zlnpFzTdJFqBpw6fV+vmpI+JBj61f264J/uHMbELiu2dwxhwWaMElX7\nwQIxAJxccFr7Bf1KjaMyT2dq75zQzFuKDMj9x92yAqM2Gas/Yay+Ccpm8FBn7BFl\nke1Qwg==\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUcCg/gZGxk/UjYkhW1jg4Zki+jfwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEOSsXBZicyrxy\ntHJHKh04Mvu6SKM49IC7rAXw5CjlOod5OTeHg0fa5vVoBME4mlWP+LsMMqf8welC\n20b4wMwUC1Hnd66v8crX8L1wvZ9EmKLTvhTd65bS5zloMiSbpdF2o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgMMwqaGuUT6JCH0gsbqullaW6/QwCgYIKoZIzj0EAwMDaAAwZQIx\nAMggJ1eMmT7C14z7wHCsOdDOgmzg733+a5dsuAcxknoz/sQLN8wqy1JxShWgEIA/\nxwIweTDAX/4JZnr3mlSC57lYXbHk/c319VfN9Ybxg0FaDXa8tOqg7Ml6Uu3IGujQ\na3eY\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUXADwhiD5acpA66GPoXuAevBfZBIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEBgLhLiGz8qWu\n50vzxSyQkrmhpxuHBJhpGzA0WaUJdAUlaUOL1753ZxxA08wUmcozILNEnMaQ+ROn\n+fuGctv90ZcrSekODjxjbKH2ntVLP8xwkBRCTJ0WRBNenxxBD438o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUhYOOD/z3ty9O5GuSTXnyujIqBRgwCgYIKoZIzj0EAwMDaQAwZgIx\nAMxbZ4gvkXaORauQFUPRYwOJrihWIA+3ttGDua//YfEbshytQ8b4L65W/1Xs8eOd\nDwIxAImwTzRam8tScdOzmuGgPcML2lkETMpMA2rZYVyEL/VNktIxvB2oE+4M0v5l\nr8IbTA==\n-----END CERTIFICATE-----\n"};t.MAINNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUZWoT9TlgbZy+syLbqZhO5++1cVgwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8NhDGK/dgWvD\nRHEJ8af7CBDdhvujH5XIrLen33GTLY8DbJwJW2jdsLGx3+DRVVmeNQZxCbcGj0e2\nIyypkG6s0mtnmeymD8mI3JU8m1aZiuIptZSH3Bw1BNn2hKU4x42co1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUbYGliiNtMkGaroQxXWCl+kYHDBwwCgYIKoZIzj0EAwMDZwAwZAIw\nImTOEYu0y73Ggt4NAjFFsN2sV7CsEL3NoJqJ7MZ6U+b3Ax1hnc1eE0oei6xH4VNF\nAjBB4iZNvAn6Esiu4k+JPlYuMesplgMv33fU5GsfvLIovN8pOJDe0c+CUmsnfGbP\nOsQ=\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEGWU0F4aKffY+le55ahQaScDYDwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEqW6TqxMmjL3h\n9AVBgfVaFRZlXUcyWa+QYhzxr8sksgJqfDbmGtdaHIdiL1qCPuC4v4G3qrAbXZRm\nTYNo5Lz0X2ic5pES6DbacdjOgHH7TAY4BVKkuVrydln2jjhh7SmBo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUcBlY5a1rV0H1iQuJMwWxrTEWQ6MwCgYIKoZIzj0EAwMDZwAwZAIw\nR+mY9B2U26yD44s03hjz4TlpkyXbVfmgL3Elqo3lrWDJtvT4zpjGjxg3Q1P3SpZQ\nAjAy9DRVrZPzq8iq5Ir7B8XgLQH5QL7SQ3tUL1HzXJYOukvn9Ofr+QADhpb0oJLB\nKug=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUbxzfD3ihIK5snumqqKtqtcBPSSQwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEWoAjWmW7vpUr\nU69wRbK9Firons4kRoin6N8lMjCD+xzsrsT6/wycpzC0F8fxfIvOYSMWRtinhOKl\nZAxp60OWYP87iH7RqWBAnHIJZj/znKTGd+8Sqp/RVQmButFHg/+Go1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUTMtwuDzI4Hun7SPp2Nb3scjUUXkwCgYIKoZIzj0EAwMDZwAwZAIw\nHKAgaX39Lgc+4/xHXzZR9mi2p3pf6CDO85Xm56UR/t48HnBkRorR3TFCBXACeIIs\nAjBtXglpDnRf6M+nVBlxLdwCQXiwr6vQJ9+dUo+suNkZ1JBmtHypyIqkG2yT4z9C\nLcs=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUPwXdJvpCJYO9lm6uQN3S1aBi3PswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8PwBQ0ywu+0t\neIYbaiKwzGEScQMOYFYAMw49++6bGRiH/XZjsypqlJWy3F/mB3+HNVZsqgB61Jpj\n2p98Afkl57MYWhWM29t/x5qAQ8LhKGu2k+BOnCcvHDU2pR+fmFSOo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgI4r3/iwzFN2wh76y/4XDBk7wgkwCgYIKoZIzj0EAwMDaQAwZgIx\nANAjwHdTWYMCCjrtb2NWzDpsKjf3m6ZcaxbEcM1ta/Zji/4x0+VRZa917CkfaEsr\nLAIxAK/erPvIXRU9eNaK/TAQqppSRaF35G6iNnYjQZzfjTU2DczhT4oCjKzGoCHT\nkI1zOg==\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUXUGzJj13Ck2Cp0BKauLOdzgCPwIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8Ee64Tbu53i/\nKsuLOJG3GQ4e9gQ+9BtEy7U8kfFzRHh6Ejn7LOW38ZdKX1HP4zXuUusjNvytqDvr\n7eclitqnegcEOkIeFK3wQwBoNILuq+r4LRVi19V+AIcl5w3qkJvIo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQU2tbfu7hd7USgbS2WsG/6BduKEAMwCgYIKoZIzj0EAwMDaAAwZQIw\nRw/BOLoScmU7P/1JnNPsGarmnvcuJrokAv1wk6j8s5LGuQHReX+d+O3RPLggwcAY\nAjEAjoZnt9simul4cVcVy4G/0f39atanUva17gyzlYXEYx7B6UloxLeEcZhlbBf8\nGjRf\n-----END CERTIFICATE-----\n","0.0.8":"","0.0.9":"","0.0.10":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUNauEDBCmP9igXLWtRpzkQqIGo/wwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDcxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ5WhgPMjI5NTA2MDcyMjQyNDlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA3MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjbkoJBshQXUy\nqm5K8ldpTDR94Wk8iEM7QwHfceIxK5pPgaVGRkoJyVLSK5LMH4jyaIHUrtA0lIBQ\no0MsYkq7TOOm7+vo1Yrd8EMbu5StMb3gsXUrj7E/SBKIxULak6hCo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUyKHMzIBPRV/mrgG7tIjzOiw2xbUwCgYIKoZIzj0EAwMDaAAwZQIx\nANsigVtLgTdKWBPVJPstWA0H8yihf0/dmM3GO4qp5keGTWz/O3tnom4iDB6eSrcA\njwIwU82Dh+Wxl3kAD3YJH5VhlfHTm1rPlJETBHZgvPBOYqippao6+WZFEpn2/IDC\nNTjn\n-----END CERTIFICATE-----\n","0.0.11":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUWtnJm2kswnXYu7/S5BnnTQiDRcUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDgxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA4MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjY9Rl+s00xFV\ntdTpAixLR4kJIGLfSLOdm+ofU/KuKMRSz5x1ORhIicppKZK24U5WLGXQU1fKLvxX\nOmqwqL+6oAONmiHszqVdhWne4QPUba0yw7rf1/OI+IFF1HRK3shQo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUb/htoTodbq5hjP5RNlQ0rkKwWB0wCgYIKoZIzj0EAwMDZwAwZAIw\nbO+9yArr21XKXjYHPadEAYINDxgXEC3W8e3X6MJsHCIZITddWWOyXRNFhz504vN0\nAjB8aBuhrKcg1b4CrQDZQcosyVPUGIZKkXdQFfbVdivKrGZvqLS+GdPLd3v2MmHY\norA=\n-----END CERTIFICATE-----\n","0.0.12":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUHBsegV0bKtwpHRoOnnhbK7CTHxMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDkxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA5MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEK+ZAs/00RXaj\nbuQJJy4zwr/YTj9h5V+vbY7sq9Z1RByEwTRRQOI3OuzzMq1EWKkVJKF/QF5b4yda\nx6W9O/NT4EjBXH5XR5X1V6h7aT01YBqsxgMxuUP7kw9K+fW4k6Zao1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUKbecoYirLjf2O2oPkoggEE2P7FcwCgYIKoZIzj0EAwMDaQAwZgIx\nAP67wsVOkeFo/9QRo+PnZhzEvjOZ/+IUoUhimdljcVwn79tzNP+obf7VW3Oq1wH7\n4wIxAL65+WmMTMoI2cN7TCiL7G/W2ChDsASeHfaP/4e4ZViNONWotlY9i9aS3Kwt\nLTea1Q==\n-----END CERTIFICATE-----\n","0.0.13":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUBNxMZRKru9jzFA8zsOAI4xkMFCMwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEwMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MFoYDzIyOTUwNjA3MjI0MjUwWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTAxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAShUi9sglwb\n0U8QUrGOXJuHRXA9HP8RypkgNBwNRs1YcmPLcuwK70unWlkB81M44IQ7z/dG/0cW\nhfFdRI5x4jAeiUFivmWmMLT6lJMPxJ0BkWTGVFVwI3SKcgSvHP9pNS2jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqIMCDzCKKwJJLCXhu9YJYPw6lsDAKBggqhkjOPQQDAwNnADBk\nAjBl0bJG2A3443ybvrkKjWu8do6nDSR08/M49+19QfA1aDw0nb2sdCOE+xNitpQ9\n7ngCMGuQHmnKA2EyOIVpNl2EtRoG+vdmLJQaoukhmCWjkGrQHkai473tGa9cRZ/8\n+RZFzw==\n-----END CERTIFICATE-----\n","0.0.14":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUJcQrEmPlIh0KWwiC2X6lZ/OdNs8wCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDExMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTExHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASxRizKJSbB\nHmG2amvTHLCyExJngCh42agaFkv5Ab9mZYbqZPe0nUn/8RlVAvEiRNggCMYXC6MU\ne4J6D1aeLhYaa0UY8Fmxd20NUjAOWhJgUXds4ILMMVG+pevofeC8AsujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBS2Ic+LU/6Wssns4Yyf3N6E666xDzAKBggqhkjOPQQDAwNoADBl\nAjAH0JMX48GD6vThA6FUsVnJmBID376PRZgxhuZvn9C0HawvNjZVQTkpzpYCwmia\ndO4CMQCotakNxyiOxu/BbnPx6ld5+dqVCugsfqClhUhy8ROpNHfKxp3rW7HopowT\nWiMlIyI=\n-----END CERTIFICATE-----\n","0.0.15":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUSFFNFv1iquxd5txlWA3PlkNju2EwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEyMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTIxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQus3nAPZkb\nja4Efo7iD4s8NLsFwEwQXQBgBGIJwtA2JRgLyXeWpuu125ib6qJzT8CHvQZhel3b\ncwYWi4f2JpabMDepHELLxwZ9fILnAQ8GiHlzhrVq2NI15DI84dXVe4OjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSEO/JFC5/fDcT2gtipDMYMMTd96DAKBggqhkjOPQQDAwNnADBk\nAjBalAU47XQL4ziHD8lj21pcp3+R5FKzn96HclMT/vraknCT1Sl+vCf6EYsqmi6Z\n+RwCMDpxL6P6OMqyE+HzAeYQ4Fa7MYEQfZGMjka4zxetBLvIpwUCT4EAO8gv9GoU\nwCBUzQ==\n-----END CERTIFICATE-----\n","0.0.16":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUdnkil4P+VthVMnqygVwGKLt7VfAwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEzMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTMxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARUdz9ig/iA\nhEAth2YinHKY6WM63BAxUVItzgk65l1T4wTzwoK4XEwclY5vIeFmZy2e0s95lWgq\nSI68VS9gmJ3xp8Q9wOel/bvuF2tvNZmF393TeoNQQVHrQM1yJAx+nPyjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBTBFdNwHKSRDo6CxfA1aglY0N8joTAKBggqhkjOPQQDAwNnADBk\nAjAqPIel58Rcl2kDxZxJPD9mK9xW4TU+d2NuP3n140TQ6nPlw1OwCPI7a4i3wfEe\n08ICMBbrpNRdFZcvy76KoLPfTPvqbtWWaR/0tLZg4Rjj3x7SYgUg3vrVDmodHGkb\n4T2Raw==\n-----END CERTIFICATE-----\n","0.0.17":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUDg+G4Ep+KEmIo+nCOY8DjFX60swwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE0MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTQxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCQRL5xUUh\n1bsTXRPAf/qVFWEOxsJTiMlF3+UJ4MajWE5zmc2QNIzqj7NE24z3fNxgjViNK/8+\noBNQeqXfyJ/4etNMzTyG4JTsvWRAQ3aR1J4WDbfwpcgw6AIOKq9OLP6jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQB9V2fygf48zyyVL3bnAxCLDUV9zAKBggqhkjOPQQDAwNnADBk\nAjBonlThjjvi3fg7ODQcatPHBkp8Yon/p1ukm3YzYA3kitqroXU7BkmwRae2fbqD\nTTICMHI+fAy+xWGwXAFNcvNTop11IIoszcgJJY+1Mc2Q/USk3pP6iezta+rvnaWu\n7JySHg==\n-----END CERTIFICATE-----\n","0.0.18":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUBvI2Vq6O8yXNzbQlj6uQOdpd1lIwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE1MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTUxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR+jFDSzCdn\nmMQpgz/vrmD/xioMioumUmyLAkB+voTNsMAOtiaDVbvJty3b4SJETv5tuZyaF5Gb\nQAYuKsP7X8siCCVLZC9i9nCg46NHtuQkEmw1pzUUDmYFDfSV2tWedNqjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqvCmoaVEp2d9WPctby+ooPMGmvTAKBggqhkjOPQQDAwNpADBm\nAjEA9fQ2OFZa7fAQGGYydfVaUF0ObxKj3T+hyl0jiCKLe+hyxJSrXCFS2BM71UiG\nZMVxAjEAmCzESBzTVvl4Uv3TyActGTijTCqTNpN3gJmQbZYjKVtqf8Wxj9WeH0pM\nE8BlA/qE\n-----END CERTIFICATE-----\n","0.0.19":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUZBwp7UPLJkDgngbUIx5xjbAn+7YwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE2MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTYxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCVYu2uF3T\nkCkyRP0FfXVyyTA1z8DFqCKGrcODgGJuVAk59H6u8FIRsNipkb3BXFI0xGccok5X\nT+t5bMaGDHYJ4fjU78UtPNmankQ5HoiMRJpy7Vn8mzizUzUqGpnhu6GjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQzE6RGn4YlIbdrl0niKWTtJzfXoTAKBggqhkjOPQQDAwNpADBm\nAjEAobnXnwlNGNWoHscbl/ytUBSyjC7V11sLYJqtORSRX3k2+bFGsg4ltmOVjTdd\nlXatAjEA/Ja3jufmdruqfLa6qigXuYI00YaI96sOwNhdHlnksYfqF41nDe4BsSW6\neQ6N5M9d\n-----END CERTIFICATE-----\n","0.0.20":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUE1ZRB5n+Yby+Mwgb2xAcVfTZ53kwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE3MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTcxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR0OfTmHjxT\nkBiU3GMa/bTvlTswCDAuFQGIIpMWHaf6V4ighzmn20jCg0AVFStb2q7YLRr4HUx8\nToMzsd7/yjl74BwJgfZnL75T/JInwyMgOBiCTXEf6qVDvhNzL4QJuVujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQFKRUUmdFcDFQzBN9XqMvLgPd7NzAKBggqhkjOPQQDAwNoADBl\nAjEA5MUUXSehY3KVIv/2LMgrqo1kPiV39fwYuLSnsMJ67wK8yN1NAkkycg6q2K6g\nrBIvAjB3J3a40TINOZTYG+eQs+MSWyfANJLRuJTEOorXzMWM6+05+JYhPnLA8hke\nCRfzmSw=\n-----END CERTIFICATE-----\n"}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_ADDRESS_BOOK=t.PREVIEWNET_ADDRESS_BOOK=t.MAINNET_ADDRESS_BOOK=void 0;var a=r(n(516)),i=s(n(78)),u=s(n(37));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}function s(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var l=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ad0070a0e33352e3233312e3230382e31343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340acf070a0d332e3231312e3234382e31373210a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ace070a0c34302e3132312e36342e343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ad1070a0d33352e3139392e31352e31373710a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad1070a0d332e3133332e3231332e31343610a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad0070a0c34302e37302e31312e32303210a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad2070a0e33352e3232352e3230312e31393510a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d35322e31352e3130352e31333010a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d3130342e34332e3234382e363310a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad2070a0e33352e3234372e3130392e31333510a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b35342e3234312e33382e3110a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b31332e38382e32322e343710a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330ad0070a0c33352e3233352e36352e353110a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d35342e3137372e35312e31323710a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad0070a0c31332e36342e3137302e343010a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d33342e3130362e3234372e363510a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33352e38332e38392e31373110a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad1070a0d31332e37382e3233322e31393210a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33342e3132352e32332e343910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390acf070a0b35302e31382e31372e393310a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390ad1070a0d32302e3135302e3133362e383910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a60363465303938363135626634303566376564356134303133343436623839633438386366636436626232356134613637366463373765656131316433336437303236383266306136396138303330653863353737376430653432323033373939")));t.PREVIEWNET_ADDRESS_BOOK=l;var f=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0a7f0a0c33342e39342e3130362e363110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a80010a0d35302e31382e3133322e32313110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a81010a0e3133382e39312e3134322e32313910a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a82010a0d33352e3233372e3131392e353510a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a7f0a0a332e3231322e362e313310a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d35322e3136382e37362e32343110a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d33352e3234352e32372e31393310a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a80010a0b35322e32302e31382e383610a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a81010a0c34302e37392e38332e31323410a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a82010a0d33342e38332e3131322e31313610a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35342e37302e3139322e333310a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35322e3138332e34352e363510a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a80010a0b33342e39342e3136302e3410a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e35342e3137362e3139392e31303910a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a82010a0d31332e36342e3138312e31333610a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e33342e3130362e3130322e32313810a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a82010a0d33352e3135352e34392e31343710a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a81010a0c31332e37382e3233382e333210a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a83010a0e33342e3133332e3139372e32333010a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e31342e3235322e32303710a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e3136352e31372e32333110a388031a05302e302e392806320218093a60363938333261373361333630326538643166626535616435386431633236333761316236373264373165653837616631306462363438656239316166623232383235336231663437653537643364346134346666353437623333393461613232")));t.TESTNET_ADDRESS_BOOK=f;var d=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633435363165336332373863643635306538306334313363613434343233633163336331336366313437356636663639373664353937616534333262343961623432303836623739623834313332363035346238623364636635376438666364373962666330353831383363613234636434633163626335373465643131313765326635623762336336336365376230366439623465666366373337353633376234316665366635336338313162396465363134336633613532393537636466393536373735313230623333373033666635373632313430376162393537356263326433356330643434663039383366633165663633613466663532303966303730633932616631303632393536303163393662636564303634656331393031393730313963363831316334633864643830636234663461633731663961643736653761633839343536666266346630313166393061626432643930353336653832333436353166366265663932376533643564386237626634353930353039383362656361336162656632613964393761663334353737326137373430653936393932373562303138656130646632383661646436636539323365663930386662653736326137356632313131363836326462343464336463613164343462346432653864633130363663353030366262356137643935346164323535643462363033323733343735653531316165623438356430363961303637633061623563323435333863393333633036623561366165666139343030356332393135323133653463636461653663393432663632373266396464353238326436623839306631663230656664323339396364363734393234666135373034366163366461333265373339353161373331313365393166633262376666323965343835316238336666333966383362613965633666303863656664626236636262626666616266646661613931643933306637323030646134383133376333393463626431336537303165636463323631366664323162616436383161613466303031303230333031303030312804320218073a603665396138616263646364653665313134396133656265313766643538643839303538333961383664623732623036613365613230616131373666383638623235343838353261653432336437613963366237636666396537313436323961320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613163343037373135343330336363373263346662373639326333663934323531626465633132333961316637613839373261626539316133353332336662656361363235613766666165363430366338353564633261663231313039303062306466306536653664623736333634646661316666653835656461353637393336653239383562383536333461333261613532613635393964643663333062653166376136633562386635656563616632363231643861343539363832666364326462616164313536316431316633336663636237663535303061633536386431363564626561616365333238366432383934663634313239643738316436633732666437643539396339653164336166346161343333633233623931306661653463343834313634316636313532366164373837656265613533393837343136376539643361373363633066623135363432396431356563373633613664306630363131356137396239616637383364373762393864383330393661613437343366393734303864396531346263663464646666653435393137363838343762343063623864613763613337353235366432623933356430393566653235326661653831666636653337663834643761393064376535373061346638656633633764373636656564613437326630393230313939303135613839303832353961383733633534353466636262646361643265353238646538353435356234303833633764633461646335613938386530636464666463313539643564373132616264353434616137336563303239303839383134633938613434663236666330363434363539633138336533313834616132373266386431646330626661336530613536303438346362303535626134646262356363333339656338306264313164363432646333613730326538633730336162323139333038346439626436336630646665313261343333633235373665616637383163666164383637656637306264613631373638623262656631346635306336633362386230393666303230333031303030312805320218083a606464336233653763643361323537643832373665343635333533363162303138623730303931663438363635653832303031306538316563303539326236396264346265316662643765636435303964303730313364643034313238343266640ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623263636163363561643066633736343561383137626661626334383761643765343133313165376133313938623337666238343264383463333935623366363764366264383438663130633666303363323930653866376461613864303031613834343164633335326131393136306133313933653638623832656466313961653637363933613961333364346362383765373839613130373037313535313565613737326361613862383661353639623931633534353038333564396333353466306461636563393766653737303931623435623134373639386237663836303134323264636432323631653932386465346461633963343264636261666466393663303732333362613330323730373666333763393639653865643330623662356438663530333462653764393263353936663862653836316535316663633361323432626639643862653965326139653865306631353565626366663233656666613763643537633130353432383131643830373736633935383535323666646230656161333465653139353564353131313933393066653837336534633034646564643239313635383834623938623436333038373838616537666334643461613461386663396263323637346261333231343933623632343435356164343130633164653731626339356431643931666130663230313431386137393565333039656166323937623639396266323763396661323736336364353963656230323165313662383230306331303630663238313766643833636663373637313833343839343631653335393932393162333830643665393339626161346231393233326136613237326464653635316638303436666463333464623237366137373764366662326265633332353562326363323434623461663536366231303566333063363530366464616530656233646564646366393437626362396336306530303039383466336234613863366334656434626639306263313933326237663934646333616536623336303030386562393032303430663962303230333031303030312802320218053a603561383634313561303861306138323566336232656237353031303135353230326533313234336665343161303333333834653738633138633131653565386632303964343933623062326664343565303662333734663262363964663564370ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613365333762373663366364356636363232643639323434343464313263363737633339356632623539303266336262393862386138623530353561373037373036636130323863643735303630613264383730326432643862303439343762646366653061386331343161613238343462316530366536363139303031326538623633323661623066613331373937336263376362346432393439663231303861613034633462306339316261613537323866356235363232656337356162663537386131663762343165646532613637656264363963313865353831666466396336303230616330646539636132633331663063363436393030333331316662623563653764623439633738376531613764323761613432356565376238346461376536363933396639633830643065383266636535356530326466633862356337383431386132366161343336353036393837313962616663656366306264343930303061646463666134303537303862646265666262313937343964323264616230303765343464343565613233623130366638383334633135326532353036326434636632346666323533353663376562333732393130353339336662343962616239303461303266306630626234313763643931396433353238393031323865366262666634666163396639306465313138613937346632613664643031653033326137396231373866363066613166636262643032623537303466623436323935633135313930383136333733656464363633356338353639373866316239353033663166373362346230626538616261326564316665656164353939353362663832656664653933613334373161626435356364613362613861363733666262333739393734396662303036643030336630653633663636356333343631643261376232396463386232303462613539613635363638613436616532383738663030643166393439306466396532383066656266343331356561303465616135363861336139666434386336326336336236656364613639303230333031303030312803320218063a606434363430333938303337393230373965636364356134343331316361306463323262353065633839356235366535336431326232396637326463366462613363616665326535623831303466626461303338616635623434376430666231320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393361323135636334613761373232636165396331336162643633366466393963636565633661663964623436623639666135313637313665663530636532343930613938316530396162303139636132636234363831316235623631396431626431643565653666343661343263373737636264656536343261313438346563646635646464333732393634326333386336643433613838353838373434373566353832343434333636346330346466656439623839303435666230383565323563336566636234383431373333656666376335323963313339653639333530633263643739623263386431393637396137313265346538636166643332363735343162383332623365313061303132353564656636396466316539643362386438656166303331316465363764356531326232366464303164626264396433653432643335643964653237313330326530663166363964383763626337616361396538383637653964343238643363616230363636656234393064356662616233306266663366373835643033663230373261343362623962356535343635366135393263623631656166643561356566323834633763616563363666376634373332356363306434633164323766363631643861373438636135303731633036656631333464666639366634303836363838333636643436386132343738303031376530623536616261376661623433623362376330623737393036666165353438326633323831316332393265366231343435346531346238393438303161383661303363633437373934646430643734353237613732653432346564336166613034383939656362396136336632613961653732626537666139383961646630643635613332633835316439383031666334313034386466333335363466633762333137303765633866623830313430666537623761316661313230626131636236363033323463656666623462636332643962623764653063663534633831396632646433626365616465633963323566356531396463396231303230333031303030312806320218093a603365303261363732306334343636353965383633303564353562666565383230623335653635306665636163633535333039373435356532633465303332636339646564313662316262343464336235393262626163623663326266663165360ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303930323539663465336439663066333934323536353438653963373330386231306237333430336363393039346439376164313531623737303631373062393737326365623634643636326563656639303161386437643135643331396135396338623731303731616363643839356237633933363130646336393736663637633465313732396261383337336162376535326133663363386632363534393164646536396436653039393934373065373434353938313133316264393663333665363836353230336662326562643564353065616461666237323633393664656331643931373438393862346539626530346337346433303466656164643963626433323334633362376633333036633939636230633333396663323539363962343164353861326237636663313833326532323664383163313936333939336532323535613038376431363938633033643432313062643634353830363434643039356361373661613137393465646434306331633837623566383261386533396636303365393731313662613034353738653765383033343634393564373835643465663763663737313462396562366635663965306239613934663462373338383436313962393237346434613935656631353735346138396439376566356331613838623664363933653061383065626435333766633963663063613931643163363264393135646537656438313862393532653634633230303239336565386532383461343136613732613365313266633764343233623135386639623439363630636263323436366662656430666564326532346531303266646539343265623463666439346265633436643364393066633038633339666563626130336530636132343634616536363462393739353135626132396531663730326333666537303262653739333739366438656462313761613438633039323930623032343534396630363131663561653233656437653136343432646637643164616432323836633262623039643535323264643365643639386332663032303330313030303128093202180c3a606339373462623938326338313931336237333236643561336639646363343836313261313566376161643032663230376230663130636432303137613666626666353830336537636139626662343730396162323862366230396435623133660ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303962646438653834666164616133353332666334636530316138613137643463336232333266353061393739306532363236383465646334383233653831356131626435623230656365613762663536653239663662623762383331666233626636656663643134373566306238656435666662306231333835623936643136366236323966303339366138666566356630366534626361323565653461313334306565323633613464396262303230643866343732333036663364383836313338646537613031396530353962643061666339303263636261316132313361653264616136306338613031333735356665306134386530333466356234303233613264616465616138386335343836383335336163376137613364663132623266623634313837373465396231346265366561623863633237623838303132616436313632646137346530656562313631333539303566343337333734646162383538366437353061323662626433616332346165643837386334643533653635313037326338373165393464376163633537356339363733383137333461353366656166346437626136626364643234316363363435386336303837643836333032616132353163303466366435366239633332643764393636323437353065643035353738356430373733663433646330393962323863393232383131343865366338316632393766663964313636653030306163303462333132343138363737356663656637356635656261306331303332626631333064663663643761343632313164306466336530353834643932656136373334396438343930353038656234656638386635346338633364343836646538373139663130666139366665623835636337393630373663613738313331386565326439656439303363613133333630343063353961643931613464326636393865393130386165306564623962316362393561643333623139376666623138626431626138623536636265653261616539353835656365323038613165313462343835363436333032303330313030303128083202180b3a603937303834333033333130373866353638326337663332343464383263336233653238316139313837393537386465656163646363326132656265353431616631383831313561643265383338363565356635643234376234613138633165650ab50722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039303938383635646566326632616233373663376630663733386331643837613237616330316166643030383632306333356362366562666362623063333330303331393361333838633334366433303233313732373031323139336262373666643330303462383634333132633638396566353231336362623930313130313530396465616239346632366137333265363337393239646134633463623332353137653361646262333831316435306163346337376331666365386236353136303632313566333437303766336537323635353435653538633839343630396532383337366264623737373566653330343339653065313539326664636230633365653163333035373733643037326136623839353765616663653161313162653936356564616666333834333336366362366134346563323561383930313036653632343735363766373662353530666461343832626165633633303764363938656338383834316664363666323366323130653437623861396463626136626134653166613731366462333363383065333038313934393664636235653536303966623665376336313533373962646465643432376539323331623932353463326261663934333630386138366436393861653961336338363339646638383764366636623561373133383564323433333864393131613231326266373166316532616363386231383662393665633865363963383662366430353832313737373661303963396336383935336564623539313635373862356132363362326634363965336230633037656164613731613434376565613766386663316262383037343235353536376237663062643165366166623033353837313863393862343239653234623232393835393666633736636636616633393663613934333464373932366563376433376434623932616635366434356665666638313936303935323234613931366331666665366236363765323535666333616338636363656639323064633034346232353030333133326238373830363734326630323033303130303031320218033a603333373339306438666561313434616663313265383132353461323864616336656138323839333833366163303732656666643835653061373734383538306566323830393636343863356137663864626234636538313437363831353133370ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130306335376564623966663237366530323362323830323163623164383763646631393636623639386366343865346561616137633639323037376365656538636362323339613463393231353937653865383966376363303564336633313331353738393736633465333134343035643461346530336137323431306335633039636135323761643561383562393938363337653732613332653166626330643535343662323436356539653830366332646435303965623035306162356662323730363366643932383135623164643236383965323131316361656236663534396539346139663030663038323164346361366336613631313766356135333363393236336266303734613330643563626566353064316338633233383762636139373265646564613039383362356430613662353764636230303230303036383238623430653430373662343837306232346261643834303536656535326235663432326538383430303238633235303036333832643865396336363132323566346637366561373265333430363037653966633666336332303433333037366131636138636231356564303361633839363664303530376263646536383165346530323331656539663837643131316537623438616338663934643264383432623532646637336635373363633534313439363437393763363236393638666661653734313866336236313039623561306630396533323233663461346435653335303964643235303133386636626331376266366365636531373539343433306466313830613338653930616466326166666266616430633662386331623837663137386130363164636662666638623932633931363664383734633166663561663466626364626665386539643039393337306464663630626537343736333364333665653465623563643531663665336333333965313531653431626462356135636532633863393761306134336233636434636330383138383463383739663964326633373438343238633835373366313763393066336362643032303330313030303128073202180a3a603734306166366266373339653838336338386633333434633961306638623330316533396463393831633531363365306465326133666634326239396534323665643765353662363766343231383530333834356466363266343963396662300ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393133316161333638663933343532323966393762363235396363636166666561323365303063643565616430326533663639366331653731346565333933396461643836306533386266393561323937346639656234386539333433663861616334303565613935356430353332336531313762336231633934383133613361663432666538303832633364343362616631626434643833363765393364623030616436393665363237613130333661653533346630313165616435653536663337613666666534346236623965303939343031313932616435363061303334366234316138313030393566356632643766643332643665656236353562613735386336623532366331323933383661663731393763376135336165363033643632323833323235343936316631366430656661383037396137363835363138383862653733333439323231373935366262636166616562623631333563356662623234383464356234613566646630333336616330326532366331363532633162643865616633306461653164366433656230306637623466616238643634373866653864393565623931316466393636613064656134653532326462373662383936363537306563633561663039353136343234663061663566386565363665333836643536353037313339393731363961633337353733626635326664303538646539356162326666363865363831313161623233343035656139363462326262383864303263306631636165643731656364643465346534303835393438373666646238353030626335356337626130323036366530356162393864396637653034363664393730326562353765653337323266386663633835613735353035666633323632313730323838623738383732336164623937653464653536323063633930656164313338326663643735373138383966656662313165363737316263336636663366656231396337616335343238373864303361393032373035323663336565643234393465666635346531353363613966363839303230333031303030312801320218043a603765616236393661623935343336363538626331346666366234626534643932356364353162323230646632613164356336656531363061646166323961353165363934646533656531383463653232656164386437646239333231383266330ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038326465373330363566333466666332393334306435393439643232323062316534333636656435636637633665626436313663663934313661353365613030313766366262313136626664336633646566636331356237613464646630653434643032666536393536383830353365373961373730653230316263663731393333393030333965653866303836643466613734366337653035363931383330316639623565383465333932363238323830383561373962333232626361306235643835666539373232316132366262646532353863363230663064636561303261623165646431366363343961336632616239323838653364643166333764633462366136663731333366663932653534316337316237306432613266363664353537323561623138626638366430303965633364323466356431326530623565363830326431313531333732643462373634656265636234616638326636343934383565633537623561303164633637393538663561303363636161623763626139333534613137333732633133313662613437633935336161663934393031623366386332346536613361666436373538653766336231343363653264643363623037316232613734633932316365653934396134623561366265383739663163373930613662386436336231393264376565323961393439316664643638396139386330613763336436303332306631623461633264363232396466643934653432663361363034386137366265316562393538633861313837336265386433333861656339666335396162376633373632363738393430326331666435393566313930383735373565306265383237666334633061346662336433393361643734613934396363393836626662363463616264646165353339333566366463353630373464623933643737656133623831366264643662653533343439373237323238393835396666333463653531383630616666623632316431303438376463333834336631663836643534303334613633653438613161306430323033303130303031280a3202180d3a606132656363316232616539386264323862633161303864386633373161306434663734356337363864306337373339363235363265333433623235643833343235656565613765663865613134323935333432623865623738643332656333660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039383735356134303862353332316532363330353230303064366437643461326333613535346435653133383461396362356562663437346165383832633633623438366264303864313434646466316139346365396137643632353139363330303661666461616334353838343666313736343031393566653235333961363536393330656661383534663231343865363865633161303863316334396432303063336633303435666537313437663036643533346334626432363231303063623164643339373339643736306438316130626432306638336632353564323530376434636362313130366235333631386336613934343039633838376361653236326434636565396338363233323134376365633134303465306335376262613733313731333065653339363433383838616633643539386564643832623863363165363561653831613465316135366263303664333937313433613938643431636138376433656634333365663061656162363830313139316233653338343830393638663636623665383836363261663435613965323132393934663638623238386562393637626562393834373863323433653231333663316131353931663036316635626330346232316666326261343862323966313834333130383838373362646665393966386135326539343038393731383536653830346465613630326133313137383663393835363532393633633361333737303332396234303966373466646663373436623232613566383431383931323037316334636538343663396234623332306665646636653962363465326362653338346639613832623661616164346232303930373433316466316133336636393230376135363536303062653831303730643038333239303039393538353961343439386435623539333135626365626566656538303765623061336139343266316364663333363764643434343466646232393838366566636464306265346162653961313838383033393533383735656461333364623732393839663736336230323033303130303031280b3202180e3a603139366237623132303739376364623361396430303362393833643537646131303331303662313733306531376636376532633762616161646234333738396166313639366461313031316232353362636263383630333333383566303332380ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061396462376638626161313236383938666162373839313135613362356438393734346631393765323830343161653039386633653838366336393837313732316531316262306164313166336365393132346161393631643661306463383435663439373635633366616231393935383430323637366635363434363262663238316462613535383837383066303365393035373938653138343236396161613630663761313437323333316532666231646561646438373763383463626362363431636139653563386164366534356263313539636230373966636230643434396364636438643932333963316130343765376234343864613063646361323636313061323566323936643936653734363962363736643461343434353136653761353965383532393361383038366638343063303532383534653032613863623230303264616433353832356265346438336235326661393165386337336666303439373436313438383632373837633131313866393234643331636261633162343466656666323264343336623339373965616466396234336134626661373265313562343735356663616232363065303661323739633362623733626337663136613036306434643532326664343930353830333838616135393564383034343733366535323266363432343931356637383033623735383365303935636466373863333235313936393764653831623839666235303035343735336231613137663961616662303634643834633939326639616231316363626338636231303831346463616635323634616134356632316264656661633832636361636161663335386533313337336565316261346537343032666438613730656130633238636135636337346463343235313063393639636432633435396231656333363838613031656133396139393237313063643232393763393861383462363334386135373738303466646332333464336665313930336532633231653137326461323862353961653665346337653865646438623731633439643730323033303130303031280c3202180f3a603538343661353366343437353239666439636462373830346364333136383865643665656265336236336461326635663231316666626337333731393763663366316366626664613631626537643135313066306539323339383131376637340ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061386365616333363765623166316465356630643965663365616630646639623938343438666532303830383437363536326130363063353163323839373730623463616366653932636236353536393832336539363263326132633966656435336264333663613361313232646531633532356135383266323561346437643632386331613364356264623839333661656365373531306537353534656537303333303235633039326338323865656235373338626530326564393633646138316135393230353633346365393435343537376162383266343066313366316565353565306165373237653233633330323834623166343462393961636534646463356639616337616438386439666132323535393335623234646362613834303036343265313663663235333263306230643638393239303436303837313563343037366634366438346130653066656433366537366363646339363335356537613236313630393435633262353461653236636330306664303832333236333436656565656137646437356639313931316539396462636239396561346163366261303536633333323238643838316438353833316439636338373935393364613137343664643065653935646332623936666539336261666366663263643764393239353864373864663333663230356437313135656439666163346462366634636336306535366135343431646135623562353566613539393939303265393538613662366334346438313064646335363138313234316238376632326630353961363838306538303231373336643031383937646236353434396365383137613233373564303335353163623064653530376336303961306338303330656366346266646562323133633033646161373634613138323162373234333334663731663736386437616563623237373035326137303333373635663037323138303536633738663261383761663138333836643866363161356366636233663262613464643539393135663133643338363334643136393537353730323033303130303031280d320218103a603030306162636435396133306135333838633530306265363832663663613239343034363239356339323735383831633230643334626230643639306564613762333862366262643037613364643166646662366137303434626230396366660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061663062393134323537626637613436353563346135306430636164356530613165343538316564363632336630653837333066373936623866323963353831373862636363363933326331666333316633396566343462383264336334336233393837333733373366656362313239353232386130346664353061313466333634366438346665316634363763616562393864343633653239373565393935623864326531653339663362663661646463323561653335643635643032363038653033343535333739363665326162636534396238313462656164336331623735373137346165333063303062306334336539396238303439366237326433633133316631633665346663646130356632383131376566396532386334333033626534643863376530343264353862383363633132313934356132633635653739363263616139313835393338663337353764663763636139356366303262356533313934346133613631396130616333663165333462396230313364346332323463346631653730666439666433363938336566383661646535313833363263633833323263306637623631613961633735666238326537623836643638626330663039396130396131346361633561316438643338663961386137306363333766663563633362626432373432666664313436323535633137316536613137383038333237316463653066646536383165643439326362353962303739366432373031373538333864633539303831303765336136656133663961343036623364313133306363656333623437393165343962626332333136303362343661623264306639336434336265373561623961346437313065613934306532383561376231353362306361376364646565366439646365306164383335306334316439306332313562393538383531356166613061633333363561653037653831663362626233366264626561633462333162636231616134653832353635623937376639646164383564363236656566396161613965663864376533666230323033303130303031280e320218113a603933653238313031303462326231376230303935326235613431303264333365646230343363623136646533616433643364363832363066353562623065353837333765613539343463333338663763386362383863373833336663383630630ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038633037626533303561643630623930626132646162333962306565373736306531613232663835373532323534306437306230336233663965343837356133613239616230383038386631343466353765623235326534366261353933383564306536643432373031313764613061626331623362383036393463396135303538623836643631646661303665373136373039633838653866656163376333613065316432356663306165626636613866373666636239396638343566653138313436316361623638353862393763336134303237666233373132623134653663303738396465313764343137363435373765353131343137656231363236393265623037616531653733353532333565396262343339303437623663303136313337383265376464366636303464616134363734363631643533393631663436633366616136623765373637363264333733623562353432623739656139363365666266333361633638313938626232623636316366663637363931366566333732616434633236633231366334626334373837633834656333326431383464373763373531383663303963663364396639313433336361393835333131396261623331666136616432366634353365353936643962646563613638613537363962633866656537613533356438306338633666336566623164666232383861623661393739383534623763653833313234656330643130326166663934633362373466396333373839353863323565623933336464353363316538303561313836353464366439313836393930663635373034323966393630663334653862346637666439393732646362666539323430653037346461326433353561356637656639633161663632656635393832613831373435373862396331356334396563353636626461636233306363666365663039636466653730386164343837343234653963316265363533663965653736363065376439343263316566613564613238366531616464616230366139613333663964653934363739356230323033303130303031280f320218123a603934383235313739643163333934303137306233356432363665346366613830643737386335653966356261653764653833666638636334373431663362653336616336336431653761653439373261656466366263316533636632303638390ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030626531376339393634376365633635613434343037623533353835366233633362616566356235346635363561663538623834353662613863376365353335643561633732633631633434633736623363353763386538363438343136333762653130613833636665333963303932343736643064626534643663646364636437323061333062356266656235316130316131386635383263343566366338363939336663663764663138323933356465316438363930363034346463663335313836393335643962643765656137393532333532626562623465663961653066373636316537306134323337616661393839393636383763613438666366633562303064333830376630353462653066613863336266613432353033386265366566323935313634663232663733623765383863393465613962653861613466336132343563383962396431666435313932663761353062393538623265663831303462333666316266386664326366623238633134323138303063316334376534656639386166313530303730636336643639643137653865623932663138613661613161363532363661343935323338643130336638663639356235376563663337333635306130353230303837343537323162656138313536323739363763383037363336356466386334633761376434646438663263333835306331386662613731656236306536653864666264313936653035333766643730623334346563626363353330646663383364613666656466343964353161393034313935303262613964373063643335663163663363303639346532333534663930363466646266353335656232336332376330613433643062373863316638363763363164393836393564386465663762633261313062623636373463323266363661616230613931383133646466323763646238353263353965663739653162396531613037356661366565323761376533373734646266346232363436353432376536643561623931666537663066336137313738346563613138326235303230333031303030312810320218133a603038393039376465663031623037633764393734613537353532353161366161613061666236623332613534353334336432393138653732626164303433323163313131633234643432373538306633626131653236616139643735653632360ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613561643262373634336130346330353564326638636432353131623135313339666334353537353632313338386534396331313962326633393861636131313066363133393662306338363664653530363335323262623835343032373365313366366439346365316536303433386636616662303061616136343631326637313435653962636538626331613533623934313931336161373663396633613238333366616437636632383563376163326433376639396633633263646234396465346431353165363136373835363466323831663534313432346234316661376335316232613936303232383363376433326565303065623833386461313563333861666339366530363164393763656465323231363566663161613935396631633432373562326430393863343035383661353537396662623363623930303732373034313230613861363661353237306634666366643130383663393233363930613335653766643434356533336163303366313339633638363835353635373063646334616166323231303761366331613434323435366137633663373965653034303930653765356434663636626361363063613166343762366466623534336461633363626631396137373139613866353562366638336234613362386136366436303235366430613436353531666137303234626430353633316238613535383038373732353463326632663236386364633333643264626263666237333365396662653233336262396362353961623331613031343862323365386334323638306666313061663463373961346430383334366662373961393364393632393534386561663162623132343639386661656661346364643732343432633033613034623733333433326637343839303361333235633238336434353661623961653932316165376564333339316535643137383765666463323335343061376238356336393161653837306130376639306231316331336233326365343365616564313562333639363835636534393137376363393835303230333031303030312811320218143a603939666162633461646534653636326336653238323366346139366562323134343034383465356136643064333132623730633036386432326236323936333830376332333361343964626239383361376562623330653737303637373261340ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030386434356332316330633935656636356130323964353263393537666430663835663230313233646130333465363136373164646565353437356630373338326136366336366362346463353035303464646664333735383130383364663864313735373733306564386436663336346466346333366132363531353931393535646132303161323430376661386162396232333133383131323235613064613233306662653338306530393061613536656661346632303265633962343832336636353031643936616336393865626632366161636633656532643166333261373231633934376531303736636633356233373364613164383761333661313532653030653731303131373932323832653832356666313731633538333362383835373062666336646138343439653666393566386231323635616235353531393430333135353364316435373666393363343263306361363061616261633463386464313632643831313466326232313531313538336337323533396665353663343939613932396465336134306130643435633137633538396332643739383863653236656166633932613364333762376561303034326434336530336166613632373162323632353561366363636661653533373138323164383165306230356332353062353966306139303734316130653065383861303965643536633562393738306430393566303930366630623831643531323633393832616165303131333663303732643834346131316436646134623261363163363434653161623137663136666634386565323366656465383435326631653432653264333061303739306332356434323036306531643434613637316132656232336431313466363863373165333366313736646235386136386234333030353462633164323938336132336133326561366666393566613763346438653338306562323936653938623739363865636638343534643831376337333765656135646439323165623836633136633762323933303461346137656362653561336131303230333031303030312812320218153a606537396165396337313933643164326263393433383436346338616135663632323461653835323936366134336239383235383833663766373432633533393562643330393935383761393638363662393233396431656666336165353037610ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623035616265326162303066646430366339353565383637313062306530366631613932363234613438616431636263386466633666323231323936326230633330666462643238346133376335613337363538623633633336656138313632353631613865346639343663626535373232633032383830316630663238316337306638643838633763303061326632653239663539376237393938363965643833353664663537633437626539393434613261616666363530663962346262613064626335336463383830666462623639656134353139303564323830323230326638653239633034613736643237616632656237633534383438356266336634363934633930633431383130383838383433373932383438383335663738313637303764336538643736663465363766353738306263663038383133633535656336333961396264363234313738663565623134376435303061663335316539656631623165333432343834636132363064623763636261653438366631336366323635623562316162363838303636303038303533623230633364656463653737316339613038613033323061613963653435316562396439383361376234396361613130393666386164633039383331386463333865306537636566306438653564353537613036373536383561316339653235366132626339646261333232623362623331373263663731343037376263333830663861306134333361386266613766626663353966366230393365633862663665393339376330396231386531383034306331623536363836343733376338666137653239373935663361343538386464613763326261623439353636356363346139623833366532656239306336326133666361663539316662356638313830346337363138306536323666613236343461376465333435313164366334363637643938393337653237373333663464316539313338383333353465353466643733353137323165373666376235366333343833333838663461366238376232386165626562303230333031303030312813320218163a603962343038383566313362366163316337353336393262613366313739303061333838333165363934613061663937343934623834333838323039636235656662646339386136646162623265316337313833393166633133356264616163330ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396463643863306135336539306333353539353734663636323034313137643362353033653530613336643330393766616338343239653663656364333762623534303731383038663265653938323033356638353161306339626532313736333833613232653338633161626131363866333266393035373063623332333363666536323539383736363661663637623531346361656632316662386466366430666364333363663236303662393264646561353533366236303638643836373832653339626435633338343435393931643431396237643165633038353939343132633039343964316332343062333563313464633535323734646261373166666165393336313235613566383139663534313332653234333964346163353539373939366563653835653133646666333336316639313331663536636561633562396635353262343963663666396139616336653564636532646233363934363266393361663830653562353662366538626566613136326130363162346137363839326264633834363437333036633630303835386664643237303332373663326337303434303139386566643766653335343563663261623538306337346366643634343561616637626437663734356363323532656162643236356561626565383632343137313034653639343861353537353666646332323264663061313031353234646531633363303863636630343330313165633766653936346564643834353161313330313437633037333633613335663131666465656638663261326237363137353762343335386666383962373561343864363762646336303930363933653062623836373965636262393366666462336633656439366265633933656634363536653337313661623837636534366361386531323539633866656464653866326631656130663365623263343865393635353164653132333330333435373235663435656436396338353735623531363833616661343732363231383236646232326262326431633466316533363436346139303230333031303030312814320218173a60346630613033333466393737363738313632663830643936376637323139313431333630633062376637663033316233376336396536323137333933336564616434366263626139373636376565373262666435613933346261313532326330")));t.MAINNET_ADDRESS_BOOK=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(1077));function l(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;r--){var o=this._nodes[r];n.includes(o.address.toString())||t.push(r)}return t}},{key:"getNextMirrorNode",value:function(){if(null==this._createNetworkChannel)throw new Error("mirror network not supported on browser");return this._getNumberOfMostHealthyNodes(1)[0]}}]),n}(r(n(529)).default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),t.call(this,e)}return(0,a.default)(n,[{key:"getKey",value:function(){return this._address.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}}]),n}(r(n(528)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(1079));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var y=function(e){(0,s.default)(n,e);var t=h(n);function n(e){var r;return(0,u.default)(this,n),(r=t.call(this))._address=e,r}return(0,c.default)(n,[{key:"close",value:function(){}},{key:"_createUnaryClient",value:function(e){var t=this;return function(){var n=(0,i.default)(a.default.mark((function n(r,o,i){var u,c,s;return a.default.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,fetch("".concat(t._address,"/proto.").concat(e,"/").concat(r.name),{method:"POST",headers:{"content-type":"application/grpc-web+proto","x-user-agent":"hedera-sdk-js/v2","x-grpc-web":"1"},body:(0,d.encodeRequest)(o)});case 2:return u=n.sent,n.next=5,u.arrayBuffer();case 5:c=n.sent,s=(0,d.decodeUnaryResponse)(c),i(null,s);case 8:case"end":return n.stop()}}),n)})));return function(e,t,r){return n.apply(this,arguments)}}()}}]),n}(d.default);t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.decodeUnaryResponse=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength,r=new DataView(e,t,n),o=0,i=null,u=0;for(;o>7,f=r.getUint32(o+1),d=o+5;if(d+f>r.byteLength)throw new Error("(BUG) unexpected frame length past the boundary");var p=new Uint8Array(e,r.byteOffset+d,f);if(0===l){if(null!=i)throw new Error("(BUG) unexpectedly received more than one data frame");i=p}else{if(1!==l)throw new Error("(BUG) unexpected frame type: ".concat(l));var h=s.decode(p),y=h.split(":"),m=(0,a.default)(y,2),b=m[0],v=m[1];if("grpc-status"!==b)throw new Error("(BUG) unhandled trailer, ".concat(h));u=parseInt(v)}o+=f+5}if(0!==u)throw new Error("(BUG) unhandled grpc-status: ".concat(u));if(null==i)throw new Error("(BUG) unexpectedly received no response");return i},t.default=void 0,t.encodeRequest=function(e){var t=new ArrayBuffer(e.byteLength+5);return new DataView(t,1,4).setUint32(0,e.length),new Uint8Array(t,5).set(e),t};var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=n(37),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(111));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(){(0,i.default)(this,e),this._crypto=null,this._smartContract=null,this._file=null,this._consensus=null,this._freeze=null,this._network=null,this._token=null,this._schedule=null}return(0,u.default)(e,[{key:"close",value:function(){throw new Error("not implemented")}},{key:"crypto",get:function(){return null!=this._crypto||(this._crypto=c.CryptoService.create(this._createUnaryClient("CryptoService"))),this._crypto}},{key:"smartContract",get:function(){return null!=this._smartContract||(this._smartContract=c.SmartContractService.create(this._createUnaryClient("SmartContractService"))),this._smartContract}},{key:"file",get:function(){return null!=this._file||(this._file=c.FileService.create(this._createUnaryClient("FileService"))),this._file}},{key:"consensus",get:function(){return null!=this._consensus||(this._consensus=c.ConsensusService.create(this._createUnaryClient("ConsensusService"))),this._consensus}},{key:"freeze",get:function(){return null!=this._freeze||(this._freeze=c.FreezeService.create(this._createUnaryClient("FreezeService"))),this._freeze}},{key:"network",get:function(){return null!=this._network||(this._network=c.NetworkService.create(this._createUnaryClient("NetworkService"))),this._network}},{key:"token",get:function(){return null!=this._token||(this._token=c.TokenService.create(this._createUnaryClient("TokenService"))),this._token}},{key:"schedule",get:function(){return null!=this._schedule||(this._schedule=c.ScheduleService.create(this._createUnaryClient("ScheduleService"))),this._schedule}},{key:"_createUnaryClient",value:function(e){throw new Error("not implemented")}}]),e}();t.default=f},function(e,t,n){"use strict";(function(t){var r=n(0)(n(9)),o=n(530),a=n(1128),i=n(167),u=(n(1129),new i.ec("secp256k1")),c=n(1130),s=c.keccak256,l=c.keccak256s,f=function(e){for(var t=l(e.slice(2)),n="0x",r=0;r<40;r++)n+=parseInt(t[r+2],16)>7?e[r+2].toUpperCase():e[r+2];return n},d=function(e){var n=new t(e.slice(2),"hex"),r="0x"+u.keyFromPrivate(n).getPublic(!1,"hex").slice(2),o=s(r);return{address:f("0x"+o.slice(-40)),privateKey:e}},p=function(e){var t=(0,r.default)(e,3),n=t[0],a=t[1],i=t[2];return o.flatten([a,i,n])},h=function(e){return[o.slice(64,o.length(e),e),o.slice(0,32,e),o.slice(32,64,e)]},y=function(e){return function(n,r){var i=u.keyFromPrivate(new t(r.slice(2),"hex")).sign(new t(n.slice(2),"hex"),{canonical:!0});return p([a.fromString(o.fromNumber(e+i.recoveryParam)),o.pad(32,o.fromNat("0x"+i.r.toString(16))),o.pad(32,o.fromNat("0x"+i.s.toString(16)))])}},m=y(27);e.exports={create:function(e){var t=s(o.concat(o.random(32),e||o.random(32))),n=o.concat(o.concat(o.random(32),t),o.random(32)),r=s(n);return d(r)},toChecksum:f,fromPrivate:d,sign:m,makeSigner:y,recover:function(e,n){var r=h(n),a={v:o.toNumber(r[0]),r:r[1].slice(2),s:r[2].slice(2)},i="0x"+u.recoverPubKey(new t(e.slice(2),"hex"),a,a.v<2?a.v:1-a.v%2).encode("hex",!1).slice(2),c=s(i);return f("0x"+c.slice(-40))},encodeSignature:p,decodeSignature:h}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";var r=function(e,t){for(var n=[],r=0;r64?t=e(t):t.length<64&&(t=o.concat([t,i],64));for(var n=this._ipad=o.allocUnsafe(64),r=this._opad=o.allocUnsafe(64),u=0;u<64;u++)n[u]=54^t[u],r[u]=92^t[u];this._hash=[n]}r(u,a),u.prototype._update=function(e){this._hash.push(e)},u.prototype._final=function(){var e=this._alg(o.concat(this._hash));return this._alg(o.concat([this._opad,e]))},e.exports=u},function(e,t,n){"use strict";e.exports=n(533)},function(e,t,n){"use strict";(function(t){var r,o,a=n(26).Buffer,i=n(535),u=n(536),c=n(537),s=n(538),l=t.crypto&&t.crypto.subtle,f={sha:"SHA-1","sha-1":"SHA-1",sha1:"SHA-1",sha256:"SHA-256","sha-256":"SHA-256",sha384:"SHA-384","sha-384":"SHA-384","sha-512":"SHA-512",sha512:"SHA-512"},d=[];function p(){return o||(o=t.process&&t.process.nextTick?t.process.nextTick:t.queueMicrotask?t.queueMicrotask:t.setImmediate?t.setImmediate:t.setTimeout)}function h(e,t,n,r,o){return l.importKey("raw",e,{name:"PBKDF2"},!1,["deriveBits"]).then((function(e){return l.deriveBits({name:"PBKDF2",salt:t,iterations:n,hash:{name:o}},e,r<<3)})).then((function(e){return a.from(e)}))}e.exports=function(e,n,o,y,m,b){"function"==typeof m&&(b=m,m=void 0);var v=f[(m=m||"sha1").toLowerCase()];if(v&&"function"==typeof t.Promise){if(i(o,y),e=s(e,u,"Password"),n=s(n,u,"Salt"),"function"!=typeof b)throw new Error("No callback provided to pbkdf2");!function(e,t){e.then((function(e){p()((function(){t(null,e)}))}),(function(e){p()((function(){t(e)}))}))}(function(e){if(t.process&&!t.process.browser)return Promise.resolve(!1);if(!l||!l.importKey||!l.deriveBits)return Promise.resolve(!1);if(void 0!==d[e])return d[e];var n=h(r=r||a.alloc(8),r,10,128,e).then((function(){return!0})).catch((function(){return!1}));return d[e]=n,n}(v).then((function(t){return t?h(e,n,o,y,v):c(e,n,o,y,m)})),b)}else p()((function(){var t;try{t=c(e,n,o,y,m)}catch(e){return b(e)}b(null,t)}))}}).call(this,n(40))},function(e,t,n){"use strict";var r=n(1086),o=n(331),a=n(332),i=n(1099),u=n(263);function c(e,t,n){if(e=e.toLowerCase(),a[e])return o.createCipheriv(e,t,n);if(i[e])return new r({key:t,iv:n,mode:e});throw new TypeError("invalid suite type")}function s(e,t,n){if(e=e.toLowerCase(),a[e])return o.createDecipheriv(e,t,n);if(i[e])return new r({key:t,iv:n,mode:e,decrypt:!0});throw new TypeError("invalid suite type")}t.createCipher=t.Cipher=function(e,t){var n,r;if(e=e.toLowerCase(),a[e])n=a[e].key,r=a[e].iv;else{if(!i[e])throw new TypeError("invalid suite type");n=8*i[e].key,r=i[e].iv}var o=u(t,!1,n,r);return c(e,o.key,o.iv)},t.createCipheriv=t.Cipheriv=c,t.createDecipher=t.Decipher=function(e,t){var n,r;if(e=e.toLowerCase(),a[e])n=a[e].key,r=a[e].iv;else{if(!i[e])throw new TypeError("invalid suite type");n=8*i[e].key,r=i[e].iv}var o=u(t,!1,n,r);return s(e,o.key,o.iv)},t.createDecipheriv=t.Decipheriv=s,t.listCiphers=t.getCiphers=function(){return Object.keys(i).concat(o.getCiphers())}},function(e,t,n){"use strict";var r=n(120),o=n(1087),a=n(16),i=n(26).Buffer,u={"des-ede3-cbc":o.CBC.instantiate(o.EDE),"des-ede3":o.EDE,"des-ede-cbc":o.CBC.instantiate(o.EDE),"des-ede":o.EDE,"des-cbc":o.CBC.instantiate(o.DES),"des-ecb":o.DES};function c(e){r.call(this);var t,n=e.mode.toLowerCase(),o=u[n];t=e.decrypt?"decrypt":"encrypt";var a=e.key;i.isBuffer(a)||(a=i.from(a)),"des-ede"!==n&&"des-ede-cbc"!==n||(a=i.concat([a,a.slice(0,8)]));var c=e.iv;i.isBuffer(c)||(c=i.from(c)),this._des=o.create({key:a,iv:c,type:t})}u.des=u["des-cbc"],u.des3=u["des-ede3-cbc"],e.exports=c,a(c,r),c.prototype._update=function(e){return i.from(this._des.update(e))},c.prototype._final=function(){return i.from(this._des.final())}},function(e,t,n){"use strict";t.utils=n(539),t.Cipher=n(330),t.DES=n(540),t.CBC=n(1088),t.EDE=n(1089)},function(e,t,n){"use strict";var r=n(73),o=n(16),a={};function i(e){r.equal(e.length,8,"Invalid IV length"),this.iv=new Array(8);for(var t=0;t15){var e=this.cache.slice(0,16);return this.cache=this.cache.slice(16),e}return null},d.prototype.flush=function(){for(var e=16-this.cache.length,t=a.allocUnsafe(e),n=-1;++n>i%8,e._prev=a(e._prev,n?r:o);return u}function a(e,t){var n=e.length,o=-1,a=r.allocUnsafe(e.length);for(e=r.concat([e,r.from([t])]);++o>7;return a}t.encrypt=function(e,t,n){for(var a=t.length,i=r.allocUnsafe(a),u=-1;++u>>0,0),t.writeUInt32BE(e[1]>>>0,4),t.writeUInt32BE(e[2]>>>0,8),t.writeUInt32BE(e[3]>>>0,12),t}function i(e){this.h=e,this.state=r.alloc(16,0),this.cache=r.allocUnsafe(0)}i.prototype.ghash=function(e){for(var t=-1;++t0;t--)r[t]=r[t]>>>1|(1&r[t-1])<<31;r[0]=r[0]>>>1,n&&(r[0]=r[0]^225<<24)}this.state=a(o)},i.prototype.update=function(e){var t;for(this.cache=r.concat([this.cache,e]);this.cache.length>=16;)t=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(t)},i.prototype.final=function(e,t){return this.cache.length&&this.ghash(r.concat([this.cache,o],16)),this.ghash(a([0,e,0,t])),this.state},e.exports=i},function(e,t,n){"use strict";var r=n(544),o=n(26).Buffer,a=n(332),i=n(545),u=n(120),c=n(262),s=n(263);function l(e,t,n){u.call(this),this._cache=new f,this._last=void 0,this._cipher=new c.AES(t),this._prev=o.from(n),this._mode=e,this._autopadding=!0}function f(){this.cache=o.allocUnsafe(0)}function d(e,t,n){var u=a[e.toLowerCase()];if(!u)throw new TypeError("invalid suite type");if("string"==typeof n&&(n=o.from(n)),"GCM"!==u.mode&&n.length!==u.iv)throw new TypeError("invalid iv length "+n.length);if("string"==typeof t&&(t=o.from(t)),t.length!==u.key/8)throw new TypeError("invalid key length "+t.length);return"stream"===u.type?new i(u.module,t,n,!0):"auth"===u.type?new r(u.module,t,n,!0):new l(u.module,t,n)}n(16)(l,u),l.prototype._update=function(e){var t,n;this._cache.add(e);for(var r=[];t=this._cache.get(this._autopadding);)n=this._mode.decrypt(this,t),r.push(n);return o.concat(r)},l.prototype._final=function(){var e=this._cache.flush();if(this._autopadding)return function(e){var t=e[15];if(t<1||t>16)throw new Error("unable to decrypt data");var n=-1;for(;++n16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t}else if(this.cache.length>=16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t;return null},f.prototype.flush=function(){if(this.cache.length)return this.cache},t.createDecipher=function(e,t){var n=a[e.toLowerCase()];if(!n)throw new TypeError("invalid suite type");var r=s(t,!1,n.key,n.iv);return d(e,r.key,r.iv)},t.createDecipheriv=d},function(e,t,n){"use strict";t["des-ecb"]={key:8,iv:0},t["des-cbc"]=t.des={key:8,iv:8},t["des-ede3-cbc"]=t.des3={key:24,iv:8},t["des-ede3"]={key:24,iv:0},t["des-ede-cbc"]={key:16,iv:8},t["des-ede"]={key:16,iv:0}},function(e,t,n){"use strict";(function(e){var r=n(546),o=n(1101),a=n(1102);var i={binary:!0,hex:!0,base64:!0};t.DiffieHellmanGroup=t.createDiffieHellmanGroup=t.getDiffieHellman=function(t){var n=new e(o[t].prime,"hex"),r=new e(o[t].gen,"hex");return new a(n,r)},t.createDiffieHellman=t.DiffieHellman=function t(n,o,u,c){return e.isBuffer(o)||void 0===i[o]?t(n,"binary",o,u):(o=o||"binary",c=c||"binary",u=u||new e([2]),e.isBuffer(u)||(u=new e(u,c)),"number"==typeof n?new a(r(n,u),u,!0):(e.isBuffer(n)||(n=new e(n,o)),new a(n,u,!0)))}}).call(this,n(15).Buffer)},function(e){e.exports=JSON.parse('{"modp1":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},"modp2":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},"modp5":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},"modp14":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},"modp15":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},"modp16":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},"modp17":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},"modp18":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}')},function(e,t,n){"use strict";(function(t){var r=n(10),o=new(n(547)),a=new r(24),i=new r(11),u=new r(10),c=new r(3),s=new r(7),l=n(546),f=n(119);function d(e,n){return n=n||"utf8",t.isBuffer(e)||(e=new t(e,n)),this._pub=new r(e),this}function p(e,n){return n=n||"utf8",t.isBuffer(e)||(e=new t(e,n)),this._priv=new r(e),this}e.exports=y;var h={};function y(e,t,n){this.setGenerator(t),this.__prime=new r(e),this._prime=r.mont(this.__prime),this._primeLen=e.length,this._pub=void 0,this._priv=void 0,this._primeCode=void 0,n?(this.setPublicKey=d,this.setPrivateKey=p):this._primeCode=8}function m(e,n){var r=new t(e.toArray());return n?r.toString(n):r}Object.defineProperty(y.prototype,"verifyError",{enumerable:!0,get:function(){return"number"!=typeof this._primeCode&&(this._primeCode=function(e,t){var n=t.toString("hex"),r=[n,e.toString(16)].join("_");if(r in h)return h[r];var f,d=0;if(e.isEven()||!l.simpleSieve||!l.fermatTest(e)||!o.test(e))return d+=1,d+="02"===n||"05"===n?8:4,h[r]=d,d;switch(o.test(e.shrn(1))||(d+=2),n){case"02":e.mod(a).cmp(i)&&(d+=8);break;case"05":(f=e.mod(u)).cmp(c)&&f.cmp(s)&&(d+=8);break;default:d+=4}return h[r]=d,d}(this.__prime,this.__gen)),this._primeCode}}),y.prototype.generateKeys=function(){return this._priv||(this._priv=new r(f(this._primeLen))),this._pub=this._gen.toRed(this._prime).redPow(this._priv).fromRed(),this.getPublicKey()},y.prototype.computeSecret=function(e){var n=(e=(e=new r(e)).toRed(this._prime)).redPow(this._priv).fromRed(),o=new t(n.toArray()),a=this.getPrime();if(o.length0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return i.alloc(0);for(var t,n,r,o=i.allocUnsafe(e>>>0),a=this.head,u=0;a;)t=a.data,n=o,r=u,i.prototype.copy.call(t,n,r),u+=a.data.length,a=a.next;return o}},{key:"consume",value:function(e,t){var n;return eo.length?o.length:e;if(a===o.length?r+=o:r+=o.slice(0,e),0==(e-=a)){a===o.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=o.slice(a));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=i.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var o=n.data,a=e>o.length?o.length:e;if(o.copy(t,t.length-e,0,a),0==(e-=a)){a===o.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++r}return this.length-=r,t}},{key:c,value:function(e,t){return u(this,function(e){for(var t=1;t0,(function(e){r||(r=e),e&&i.forEach(s),a||(i.forEach(s),o(r))}))}));return t.reduce(l)}},function(e,t,n){"use strict";var r=n(26).Buffer,o=n(531),a=n(334),i=n(167).ec,u=n(10),c=n(264),s=n(559);function l(e,t,n,a){if((e=r.from(e.toArray())).length0&&n.ishrn(r),n}function d(e,t,n){var a,i;do{for(a=r.alloc(0);8*a.length=t)throw new Error("invalid sig")}e.exports=function(e,t,n,s,l){var f=i(n);if("ec"===f.type){if("ecdsa"!==s&&"ecdsa/rsa"!==s)throw new Error("wrong public key type");return function(e,t,n){var r=u[n.data.algorithm.curve.join(".")];if(!r)throw new Error("unknown curve "+n.data.algorithm.curve.join("."));var o=new a(r),i=n.data.subjectPrivateKey.data;return o.verify(t,e,i)}(e,t,f)}if("dsa"===f.type){if("dsa"!==s)throw new Error("wrong public key type");return function(e,t,n){var r=n.data.p,a=n.data.q,u=n.data.g,s=n.data.pub_key,l=i.signature.decode(e,"der"),f=l.s,d=l.r;c(f,a),c(d,a);var p=o.mont(r),h=f.invm(a);return 0===u.toRed(p).redPow(new o(t).mul(h).mod(a)).fromRed().mul(s.toRed(p).redPow(d.mul(h).mod(a)).fromRed()).mod(r).mod(a).cmp(d)}(e,t,f)}if("rsa"!==s&&"ecdsa/rsa"!==s)throw new Error("wrong public key type");t=r.concat([l,t]);for(var d=f.modulus.byteLength(),p=[1],h=0;t.length+p.length+2n-d-2)throw new Error("message too long");var p=f.alloc(n-r-d-2),h=n-l-1,y=o(l),m=u(f.concat([s,p,f.alloc(1,1),t],h),i(y,h)),b=u(y,i(m,l));return new c(f.concat([f.alloc(1),b,m],n))}(h,t);else if(1===d)p=function(e,t,n){var r,a=t.length,i=e.modulus.byteLength();if(a>i-11)throw new Error("message too long");r=n?f.alloc(i-a-3,255):function(e){var t,n=f.allocUnsafe(e),r=0,a=o(2*e),i=0;for(;r=0)throw new Error("data too long for modulus")}return n?l(p,h):s(p,h)}},function(e,t,n){"use strict";var r=n(264),o=n(560),a=n(561),i=n(10),u=n(334),c=n(174),s=n(562),l=n(26).Buffer;e.exports=function(e,t,n){var f;f=e.padding?e.padding:n?1:4;var d,p=r(e),h=p.modulus.byteLength();if(t.length>h||new i(t).cmp(p.modulus)>=0)throw new Error("decryption error");d=n?s(new i(t),p):u(t,p);var y=l.alloc(h-d.length);if(d=l.concat([y,d],h),4===f)return function(e,t){var n=e.modulus.byteLength(),r=c("sha1").update(l.alloc(0)).digest(),i=r.length;if(0!==t[0])throw new Error("decryption error");var u=t.slice(1,i+1),s=t.slice(i+1),f=a(u,o(s,i)),d=a(s,o(f,n-i-1));if(function(e,t){e=l.from(e),t=l.from(t);var n=0,r=e.length;e.length!==t.length&&(n++,r=Math.min(e.length,t.length));var o=-1;for(;++o=t.length){a++;break}var i=t.slice(2,o-1);("0002"!==r.toString("hex")&&!n||"0001"!==r.toString("hex")&&n)&&a++;i.length<8&&a++;if(a)throw new Error("decryption error");return t.slice(o)}(0,d,n);if(3===f)return d;throw new Error("unknown padding")}},function(e,t,n){"use strict";(function(e,r){function o(){throw new Error("secure random number generation not supported by this browser\nuse chrome, FireFox or Internet Explorer 11")}var a=n(26),i=n(119),u=a.Buffer,c=a.kMaxLength,s=e.crypto||e.msCrypto,l=Math.pow(2,32)-1;function f(e,t){if("number"!=typeof e||e!=e)throw new TypeError("offset must be a number");if(e>l||e<0)throw new TypeError("offset must be a uint32");if(e>c||e>t)throw new RangeError("offset out of range")}function d(e,t,n){if("number"!=typeof e||e!=e)throw new TypeError("size must be a number");if(e>l||e<0)throw new TypeError("size must be a uint32");if(e+t>n||e>c)throw new RangeError("buffer too small")}function p(e,t,n,o){if(r.browser){var a=e.buffer,u=new Uint8Array(a,t,n);return s.getRandomValues(u),o?void r.nextTick((function(){o(null,e)})):e}if(!o)return i(n).copy(e,t),e;i(n,(function(n,r){if(n)return o(n);r.copy(e,t),o(null,e)}))}s&&s.getRandomValues||!r.browser?(t.randomFill=function(t,n,r,o){if(!(u.isBuffer(t)||t instanceof e.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');if("function"==typeof n)o=n,n=0,r=t.length;else if("function"==typeof r)o=r,r=t.length-n;else if("function"!=typeof o)throw new TypeError('"cb" argument must be a function');return f(n,t.length),d(r,n,t.length),p(t,n,r,o)},t.randomFillSync=function(t,n,r){void 0===n&&(n=0);if(!(u.isBuffer(t)||t instanceof e.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');f(n,t.length),void 0===r&&(r=t.length-n);return d(r,n,t.length),p(t,n,r)}):(t.randomFill=o,t.randomFillSync=o)}).call(this,n(40),n(34))},function(e,t,n){"use strict";var r=n(10),o=n(530),a=function(e){return new r(e.slice(2),16)},i=function(e){var t="0x"+("0x"===e.slice(0,2)?new r(e.slice(2),16):new r(e,10)).toString("hex");return"0x0"===t?"0x":t},u=function(e){return"string"==typeof e?/^0x/.test(e)?e:"0x"+e:"0x"+new r(e).toString("hex")},c=function(e){return a(e).toNumber()},s=function(e){return function(t,n){return"0x"+a(t)[e](a(n)).toString("hex")}},l=s("add"),f=s("mul"),d=s("div"),p=s("sub");e.exports={toString:function(e){return a(e).toString(10)},fromString:i,toNumber:c,fromNumber:u,toEther:function(e){return c(d(e,i("10000000000")))/1e8},fromEther:function(e){return f(u(Math.floor(1e8*e)),i("10000000000"))},toUint256:function(e){return o.pad(32,e)},add:l,mul:f,div:d,sub:p}},function(e,t,n){"use strict";e.exports={encode:function(e){var t=function(e){return(t=e.toString(16)).length%2==0?t:"0"+t;var t},n=function(e,n){return e<56?t(n+e):t(n+t(e).length/2+55)+t(e)};return"0x"+function e(t){if("string"==typeof t){var r=t.slice(2);return(2!=r.length||r>="80"?n(r.length/2,128):"")+r}var o=t.map(e).join("");return n(o.length/2,192)+o}(e)},decode:function(e){var t=2,n=function(){if(t>=e.length)throw"";var n=e.slice(t,t+2);return n<"80"?(t+=2,"0x"+n):n<"c0"?o():a()},r=function(){var n=parseInt(e.slice(t,t+=2),16)%64;return n<56?n:parseInt(e.slice(t,t+=2*(n-55)),16)},o=function(){var n=r();return"0x"+e.slice(t,t+=2*n)},a=function(){for(var e=2*r()+t,o=[];t>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|u>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=u^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],m=e[1],W=e[11]<<4|e[10]>>>28,q=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,b=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,k=e[25]<<11|e[24]>>>21,g=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,P=e[18]<<20|e[19]>>>12,E=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,G=e[38]<<8|e[39]>>>24,K=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~b&k,e[1]=m^~v&g,e[10]=T^~P&S,e[11]=O^~E&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~W&Y,e[31]=V^~q&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=b^~k&_,e[3]=v^~g&w,e[12]=P^~S&D,e[13]=E^~R&C,e[22]=x^~U&G,e[23]=F^~L&K,e[32]=W^~Y&J,e[33]=q^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=k^~_&I,e[5]=g^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~G&z,e[25]=L^~K&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&m,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=G^~z&M,e[27]=K^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&b,e[9]=A^~m&v,e[18]=N^~T&P,e[19]=B^~O&E,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&W,e[39]=ee^~V&q,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=i[r],e[1]^=i[r+1]},c=function(e){return function(t){var n;if("0x"===t.slice(0,2)){n=[];for(var i=2,c=t.length;i>2]|=t[p]<>2]|=n<>2]|=(192|n>>6)<>2]|=(128|63&n)<=57344?(c[m>>2]|=(224|n>>12)<>2]|=(128|n>>6&63)<>2]|=(128|63&n)<>2]|=(240|n>>18)<>2]|=(128|n>>12&63)<>2]|=(128|n>>6&63)<>2]|=(128|63&n)<=s){for(e.start=m-s,e.block=c[l],m=0;m>2]|=o[3&m],e.lastByteIndex===s)for(c[0]=c[l],m=1;m>4&15]+r[15&h]+r[h>>12&15]+r[h>>8&15]+r[h>>20&15]+r[h>>16&15]+r[h>>28&15]+r[h>>24&15];b%l==0&&(u(d),m=0)}return"0x"+y}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(e),n)}};e.exports={keccak256:c(256),keccak512:c(512),keccak256s:c(256),keccak512s:c(512)}},function(e,t,n){"use strict";(function(t){!function(n){function r(e){var t=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),n=1779033703,r=3144134277,o=1013904242,a=2773480762,i=1359893119,u=2600822924,c=528734635,s=1541459225,l=new Uint32Array(64);function f(e){for(var f=0,d=e.length;d>=64;){var p=n,h=r,y=o,m=a,b=i,v=u,k=c,g=s,_=void 0,w=void 0,I=void 0,A=void 0,T=void 0;for(w=0;w<16;w++)I=f+4*w,l[w]=(255&e[I])<<24|(255&e[I+1])<<16|(255&e[I+2])<<8|255&e[I+3];for(w=16;w<64;w++)A=((_=l[w-2])>>>17|_<<15)^(_>>>19|_<<13)^_>>>10,T=((_=l[w-15])>>>7|_<<25)^(_>>>18|_<<14)^_>>>3,l[w]=(A+l[w-7]|0)+(T+l[w-16]|0)|0;for(w=0;w<64;w++)A=(((b>>>6|b<<26)^(b>>>11|b<<21)^(b>>>25|b<<7))+(b&v^~b&k)|0)+(g+(t[w]+l[w]|0)|0)|0,T=((p>>>2|p<<30)^(p>>>13|p<<19)^(p>>>22|p<<10))+(p&h^p&y^h&y)|0,g=k,k=v,v=b,b=m+A|0,m=y,y=h,h=p,p=A+T|0;n=n+p|0,r=r+h|0,o=o+y|0,a=a+m|0,i=i+b|0,u=u+v|0,c=c+k|0,s=s+g|0,f+=64,d-=64}}f(e);var d,p=e.length%64,h=e.length/536870912|0,y=e.length<<3,m=p<56?56:120,b=e.slice(e.length-p,e.length);for(b.push(128),d=p+1;d>>24&255),b.push(h>>>16&255),b.push(h>>>8&255),b.push(h>>>0&255),b.push(y>>>24&255),b.push(y>>>16&255),b.push(y>>>8&255),b.push(y>>>0&255),f(b),[n>>>24&255,n>>>16&255,n>>>8&255,n>>>0&255,r>>>24&255,r>>>16&255,r>>>8&255,r>>>0&255,o>>>24&255,o>>>16&255,o>>>8&255,o>>>0&255,a>>>24&255,a>>>16&255,a>>>8&255,a>>>0&255,i>>>24&255,i>>>16&255,i>>>8&255,i>>>0&255,u>>>24&255,u>>>16&255,u>>>8&255,u>>>0&255,c>>>24&255,c>>>16&255,c>>>8&255,c>>>0&255,s>>>24&255,s>>>16&255,s>>>8&255,s>>>0&255]}function o(e,t,n){e=e.length<=64?e:r(e);var o,a=64+t.length+4,i=new Array(a),u=new Array(64),c=[];for(o=0;o<64;o++)i[o]=54;for(o=0;o=a-4;e--){if(i[e]++,i[e]<=255)return;i[e]=0}}for(;n>=32;)s(),c=c.concat(r(u.concat(r(i)))),n-=32;return n>0&&(s(),c=c.concat(r(u.concat(r(i))).slice(0,n))),c}function a(e,t,n,r,o){var a;for(s(e,16*(2*n-1),o,0,16),a=0;a<2*n;a++)c(e,16*a,o,16),u(o,r),s(o,0,e,t+16*a,16);for(a=0;a>>32-t}function u(e,t){s(e,0,t,0,16);for(var n=8;n>0;n-=2)t[4]^=i(t[0]+t[12],7),t[8]^=i(t[4]+t[0],9),t[12]^=i(t[8]+t[4],13),t[0]^=i(t[12]+t[8],18),t[9]^=i(t[5]+t[1],7),t[13]^=i(t[9]+t[5],9),t[1]^=i(t[13]+t[9],13),t[5]^=i(t[1]+t[13],18),t[14]^=i(t[10]+t[6],7),t[2]^=i(t[14]+t[10],9),t[6]^=i(t[2]+t[14],13),t[10]^=i(t[6]+t[2],18),t[3]^=i(t[15]+t[11],7),t[7]^=i(t[3]+t[15],9),t[11]^=i(t[7]+t[3],13),t[15]^=i(t[11]+t[7],18),t[1]^=i(t[0]+t[3],7),t[2]^=i(t[1]+t[0],9),t[3]^=i(t[2]+t[1],13),t[0]^=i(t[3]+t[2],18),t[6]^=i(t[5]+t[4],7),t[7]^=i(t[6]+t[5],9),t[4]^=i(t[7]+t[6],13),t[5]^=i(t[4]+t[7],18),t[11]^=i(t[10]+t[9],7),t[8]^=i(t[11]+t[10],9),t[9]^=i(t[8]+t[11],13),t[10]^=i(t[9]+t[8],18),t[12]^=i(t[15]+t[14],7),t[13]^=i(t[12]+t[15],9),t[14]^=i(t[13]+t[12],13),t[15]^=i(t[14]+t[13],18);for(var r=0;r<16;++r)e[r]+=t[r]}function c(e,t,n,r){for(var o=0;o=256)return!1}return!0}function f(e,t){if("number"!=typeof e||e%1)throw new Error("invalid "+t);return e}function d(e,n,r,i,u,d,p){if(r=f(r,"N"),i=f(i,"r"),u=f(u,"p"),d=f(d,"dkLen"),0===r||0!=(r&r-1))throw new Error("N must be power of 2");if(r>2147483647/128/i)throw new Error("N too large");if(i>2147483647/128/u)throw new Error("r too large");if(!l(e))throw new Error("password must be an array or buffer");if(e=Array.prototype.slice.call(e),!l(n))throw new Error("salt must be an array or buffer");n=Array.prototype.slice.call(n);for(var h=o(e,n,128*u*i),y=new Uint32Array(32*u*i),m=0;mD&&(n=D);for(var l=0;lD&&(n=D);for(var m=0;m>0&255),h.push(y[B]>>8&255),h.push(y[B]>>16&255),h.push(y[B]>>24&255);var M=o(e,h,d);return p&&p(null,1,M),M}p&&C(t)};if(!p)for(;;){var B=N();if(null!=B)return B}N()}var p={scrypt:function(e,t,n,r,o,a,i){return new Promise((function(u,c){var s=0;i&&i(0),d(e,t,n,r,o,a,(function(e,t,n){if(e)c(e);else if(n)i&&1!==s&&i(1),u(new Uint8Array(n));else if(i&&t!==s)return s=t,i(t)}))}))},syncScrypt:function(e,t,n,r,o,a){return new Uint8Array(d(e,t,n,r,o,a))}};e.exports=p}()}).call(this,n(461).setImmediate)},function(e,t,n){"use strict";var r=n(1133),o=n(1134),a=o;a.v1=r,a.v4=o,e.exports=a},function(e,t,n){"use strict";var r,o,a=n(563),i=n(564),u=0,c=0;e.exports=function(e,t,n){var s=t&&n||0,l=t||[],f=(e=e||{}).node||r,d=void 0!==e.clockseq?e.clockseq:o;if(null==f||null==d){var p=a();null==f&&(f=r=[1|p[0],p[1],p[2],p[3],p[4],p[5]]),null==d&&(d=o=16383&(p[6]<<8|p[7]))}var h=void 0!==e.msecs?e.msecs:(new Date).getTime(),y=void 0!==e.nsecs?e.nsecs:c+1,m=h-u+(y-c)/1e4;if(m<0&&void 0===e.clockseq&&(d=d+1&16383),(m<0||h>u)&&void 0===e.nsecs&&(y=0),y>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");u=h,c=y,o=d;var b=(1e4*(268435455&(h+=122192928e5))+y)%4294967296;l[s++]=b>>>24&255,l[s++]=b>>>16&255,l[s++]=b>>>8&255,l[s++]=255&b;var v=h/4294967296*1e4&268435455;l[s++]=v>>>8&255,l[s++]=255&v,l[s++]=v>>>24&15|16,l[s++]=v>>>16&255,l[s++]=d>>>8|128,l[s++]=255&d;for(var k=0;k<6;++k)l[s+k]=f[k];return t||i(l)}},function(e,t,n){"use strict";var r=n(563),o=n(564);e.exports=function(e,t,n){var a=t&&n||0;"string"==typeof e&&(t="binary"===e?new Array(16):null,e=null);var i=(e=e||{}).random||(e.rng||r)();if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,t)for(var u=0;u<16;++u)t[a+u]=i[u];return t||o(i)}},function(e,t,n){"use strict";var r=Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]},o=function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.isHexString=t.getKeys=t.fromAscii=t.fromUtf8=t.toAscii=t.arrayContainsArray=t.getBinarySize=t.padToEven=t.stripHexPrefix=t.isHexPrefixed=void 0,o(n(565),t),o(n(566),t),o(n(1166),t),o(n(339),t),o(n(1167),t),o(n(152),t),o(n(1168),t),o(n(112),t),o(n(342),t);var a=n(183);Object.defineProperty(t,"isHexPrefixed",{enumerable:!0,get:function(){return a.isHexPrefixed}}),Object.defineProperty(t,"stripHexPrefix",{enumerable:!0,get:function(){return a.stripHexPrefix}}),Object.defineProperty(t,"padToEven",{enumerable:!0,get:function(){return a.padToEven}}),Object.defineProperty(t,"getBinarySize",{enumerable:!0,get:function(){return a.getBinarySize}}),Object.defineProperty(t,"arrayContainsArray",{enumerable:!0,get:function(){return a.arrayContainsArray}}),Object.defineProperty(t,"toAscii",{enumerable:!0,get:function(){return a.toAscii}}),Object.defineProperty(t,"fromUtf8",{enumerable:!0,get:function(){return a.fromUtf8}}),Object.defineProperty(t,"fromAscii",{enumerable:!0,get:function(){return a.fromAscii}}),Object.defineProperty(t,"getKeys",{enumerable:!0,get:function(){return a.getKeys}}),Object.defineProperty(t,"isHexString",{enumerable:!0,get:function(){return a.isHexString}})},function(e,t,n){"use strict";(function(e){var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getLength=t.decode=t.encode=void 0;var o=r(n(10));function a(e,t){if("0"===e[0]&&"0"===e[1])throw new Error("invalid RLP: extra zeros");return parseInt(e,t)}function i(t,n){if(t<56)return e.from([t+n]);var r=c(t),o=c(n+55+r.length/2);return e.from(o+r,"hex")}function u(e){return"0x"===e.slice(0,2)}function c(e){if(e<0)throw new Error("Invalid integer as argument, must be unsigned!");var t=e.toString(16);return t.length%2?"0"+t:t}function s(t){if(!e.isBuffer(t)){if("string"==typeof t)return u(t)?e.from((r="string"!=typeof(a=t)?a:u(a)?a.slice(2):a).length%2?"0"+r:r,"hex"):e.from(t);if("number"==typeof t||"bigint"==typeof t)return t?(n=c(t),e.from(n,"hex")):e.from([]);if(null==t)return e.from([]);if(t instanceof Uint8Array)return e.from(t);if(o.default.isBN(t))return e.from(t.toArray());throw new Error("invalid type")}var n,r,a;return t}t.encode=function t(n){if(Array.isArray(n)){for(var r=[],o=0;on.length)throw new Error("invalid rlp: total length is larger than the data");if(0===(u=n.slice(o,f)).length)throw new Error("invalid rlp, List has a invalid length");for(;u.length;)c=t(u),s.push(c.data),u=c.remainder;return{data:s,remainder:n.slice(f)}}(s(t));if(n)return r;if(0!==r.remainder.length)throw new Error("invalid remainder");return r.data},t.getLength=function(t){if(!t||0===t.length)return e.from([]);var n=s(t),r=n[0];if(r<=127)return n.length;if(r<=183)return r-127;if(r<=191)return r-182;if(r<=247)return r-191;var o=r-246;return o+a(n.slice(1,o).toString("hex"),16)}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";function r(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return o(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){c=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(c)throw i}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:function(e){return new Uint8Array(e)},t=arguments.length>1?arguments[1]:void 0;return"function"==typeof e&&(e=e(t)),v("output",e,t),e}function _(e){return Object.prototype.toString.call(e).slice(8,-1)}e.exports=function(e){return{contextRandomize:function(t){switch(b(null===t||t instanceof Uint8Array,"Expected seed to be an Uint8Array or null"),null!==t&&v("seed",t,32),e.contextRandomize(t)){case 1:throw new Error(c)}},privateKeyVerify:function(t){return v("private key",t,32),0===e.privateKeyVerify(t)},privateKeyNegate:function(t){switch(v("private key",t,32),e.privateKeyNegate(t)){case 0:return t;case 1:throw new Error(a)}},privateKeyTweakAdd:function(t,n){switch(v("private key",t,32),v("tweak",n,32),e.privateKeyTweakAdd(t,n)){case 0:return t;case 1:throw new Error(i)}},privateKeyTweakMul:function(t,n){switch(v("private key",t,32),v("tweak",n,32),e.privateKeyTweakMul(t,n)){case 0:return t;case 1:throw new Error(u)}},publicKeyVerify:function(t){return v("public key",t,[33,65]),0===e.publicKeyVerify(t)},publicKeyCreate:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("private key",t,32),k(n),r=g(r,n?33:65),e.publicKeyCreate(r,t)){case 0:return r;case 1:throw new Error(s);case 2:throw new Error(f)}},publicKeyConvert:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("public key",t,[33,65]),k(n),r=g(r,n?33:65),e.publicKeyConvert(r,t)){case 0:return r;case 1:throw new Error(l);case 2:throw new Error(f)}},publicKeyNegate:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0;switch(v("public key",t,[33,65]),k(n),r=g(r,n?33:65),e.publicKeyNegate(r,t)){case 0:return r;case 1:throw new Error(l);case 2:throw new Error(a);case 3:throw new Error(f)}},publicKeyCombine:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=arguments.length>2?arguments[2]:void 0;b(Array.isArray(t),"Expected public keys to be an Array"),b(t.length>0,"Expected public keys array will have more than zero items");var a,i=r(t);try{for(i.s();!(a=i.n()).done;){var u=a.value;v("public key",u,[33,65])}}catch(e){i.e(e)}finally{i.f()}switch(k(n),o=g(o,n?33:65),e.publicKeyCombine(o,t)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(d);case 3:throw new Error(f)}},publicKeyTweakAdd:function(t,n){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("tweak",n,32),k(r),o=g(o,r?33:65),e.publicKeyTweakAdd(o,t,n)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(i)}},publicKeyTweakMul:function(t,n){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("tweak",n,32),k(r),o=g(o,r?33:65),e.publicKeyTweakMul(o,t,n)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(u)}},signatureNormalize:function(t){switch(v("signature",t,64),e.signatureNormalize(t)){case 0:return t;case 1:throw new Error(p)}},signatureExport:function(t,n){v("signature",t,64);var r={output:n=g(n,72),outputlen:72};switch(e.signatureExport(r,t)){case 0:return n.slice(0,r.outputlen);case 1:throw new Error(p);case 2:throw new Error(a)}},signatureImport:function(t,n){switch(v("signature",t),n=g(n,64),e.signatureImport(n,t)){case 0:return n;case 1:throw new Error(p);case 2:throw new Error(a)}},ecdsaSign:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;v("message",t,32),v("private key",n,32),b("Object"===_(r),"Expected options to be an Object"),void 0!==r.data&&v("options.data",r.data),void 0!==r.noncefn&&b("Function"===_(r.noncefn),"Expected options.noncefn to be a Function");var i={signature:o=g(o,64),recid:null};switch(e.ecdsaSign(i,t,n,r.data,r.noncefn)){case 0:return i;case 1:throw new Error(h);case 2:throw new Error(a)}},ecdsaVerify:function(t,n,r){switch(v("signature",t,64),v("message",n,32),v("public key",r,[33,65]),e.ecdsaVerify(t,n,r)){case 0:return!0;case 3:return!1;case 1:throw new Error(p);case 2:throw new Error(l)}},ecdsaRecover:function(t,n,r){var o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=arguments.length>4?arguments[4]:void 0;switch(v("signature",t,64),b("Number"===_(n)&&n>=0&&n<=3,"Expected recovery id to be a Number within interval [0, 3]"),v("message",r,32),k(o),i=g(i,o?33:65),e.ecdsaRecover(i,t,n,r)){case 0:return i;case 1:throw new Error(p);case 2:throw new Error(y);case 3:throw new Error(a)}},ecdh:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;switch(v("public key",t,[33,65]),v("private key",n,32),b("Object"===_(r),"Expected options to be an Object"),void 0!==r.data&&v("options.data",r.data),void 0!==r.hashfn?(b("Function"===_(r.hashfn),"Expected options.hashfn to be a Function"),void 0!==r.xbuf&&v("options.xbuf",r.xbuf,32),void 0!==r.ybuf&&v("options.ybuf",r.ybuf,32),v("output",o)):o=g(o,32),e.ecdh(o,t,n,r.data,r.hashfn,r.xbuf,r.ybuf)){case 0:return o;case 1:throw new Error(l);case 2:throw new Error(m)}}}}},function(e,t,n){"use strict";var r=new(0,n(482).ec)("secp256k1"),o=r.curve,a=o.n.constructor;function i(e){var t=e[0];switch(t){case 2:case 3:return 33!==e.length?null:function(e,t){var n=new a(t);if(n.cmp(o.p)>=0)return null;var i=(n=n.toRed(o.red)).redSqr().redIMul(n).redIAdd(o.b).redSqrt();return 3===e!==i.isOdd()&&(i=i.redNeg()),r.keyPair({pub:{x:n,y:i}})}(t,e.subarray(1,33));case 4:case 6:case 7:return 65!==e.length?null:function(e,t,n){var i=new a(t),u=new a(n);if(i.cmp(o.p)>=0||u.cmp(o.p)>=0)return null;if(i=i.toRed(o.red),u=u.toRed(o.red),(6===e||7===e)&&u.isOdd()!==(7===e))return null;var c=i.redSqr().redIMul(i);return u.redSqr().redISub(c.redIAdd(o.b)).isZero()?r.keyPair({pub:{x:i,y:u}}):null}(t,e.subarray(1,33),e.subarray(33,65));default:return null}}function u(e,t){for(var n=t.encode(null,33===e.length),r=0;r=0)return 1;if(n.iadd(new a(e)),n.cmp(o.n)>=0&&n.isub(o.n),n.isZero())return 1;var r=n.toArrayLike(Uint8Array,"be",32);return e.set(r),0},privateKeyTweakMul:function(e,t){var n=new a(t);if(n.cmp(o.n)>=0||n.isZero())return 1;n.imul(new a(e)),n.cmp(o.n)>=0&&(n=n.umod(o.n));var r=n.toArrayLike(Uint8Array,"be",32);return e.set(r),0},publicKeyVerify:function(e){return null===i(e)?1:0},publicKeyCreate:function(e,t){var n=new a(t);return n.cmp(o.n)>=0||n.isZero()?1:(u(e,r.keyFromPrivate(t).getPublic()),0)},publicKeyConvert:function(e,t){var n=i(t);return null===n?1:(u(e,n.getPublic()),0)},publicKeyNegate:function(e,t){var n=i(t);if(null===n)return 1;var r=n.getPublic();return r.y=r.y.redNeg(),u(e,r),0},publicKeyCombine:function(e,t){for(var n=new Array(t.length),r=0;r=0)return 2;var c=r.getPublic().add(o.g.mul(n));return c.isInfinity()?2:(u(e,c),0)},publicKeyTweakMul:function(e,t,n){var r=i(t);return null===r?1:(n=new a(n)).cmp(o.n)>=0||n.isZero()?2:(u(e,r.getPublic().mul(n)),0)},signatureNormalize:function(e){var t=new a(e.subarray(0,32)),n=new a(e.subarray(32,64));return t.cmp(o.n)>=0||n.cmp(o.n)>=0?1:(1===n.cmp(r.nh)&&e.set(o.n.sub(n).toArrayLike(Uint8Array,"be",32),32),0)},signatureExport:function(e,t){var n=t.subarray(0,32),r=t.subarray(32,64);if(new a(n).cmp(o.n)>=0)return 1;if(new a(r).cmp(o.n)>=0)return 1;var i=e.output,u=i.subarray(4,37);u[0]=0,u.set(n,1);for(var c=33,s=0;c>1&&0===u[s]&&!(128&u[s+1]);--c,++s);if(128&(u=u.subarray(s))[0])return 1;if(c>1&&0===u[0]&&!(128&u[1]))return 1;var l=i.subarray(39,72);l[0]=0,l.set(r,1);for(var f=33,d=0;f>1&&0===l[d]&&!(128&l[d+1]);--f,++d);return 128&(l=l.subarray(d))[0]||f>1&&0===l[0]&&!(128&l[1])?1:(e.outputlen=6+c+f,i[0]=48,i[1]=e.outputlen-2,i[2]=2,i[3]=u.length,i.set(u,4),i[4+c]=2,i[5+c]=l.length,i.set(l,6+c),0)},signatureImport:function(e,t){if(t.length<8)return 1;if(t.length>72)return 1;if(48!==t[0])return 1;if(t[1]!==t.length-2)return 1;if(2!==t[2])return 1;var n=t[3];if(0===n)return 1;if(5+n>=t.length)return 1;if(2!==t[4+n])return 1;var r=t[5+n];if(0===r)return 1;if(6+n+r!==t.length)return 1;if(128&t[4])return 1;if(n>1&&0===t[4]&&!(128&t[5]))return 1;if(128&t[n+6])return 1;if(r>1&&0===t[n+6]&&!(128&t[n+7]))return 1;var i=t.subarray(4,4+n);if(33===i.length&&0===i[0]&&(i=i.subarray(1)),i.length>32)return 1;var u=t.subarray(6+n);if(33===u.length&&0===u[0]&&(u=u.slice(1)),u.length>32)throw new Error("S length is too long");var c=new a(i);c.cmp(o.n)>=0&&(c=new a(0));var s=new a(t.subarray(6+n));return s.cmp(o.n)>=0&&(s=new a(0)),e.set(c.toArrayLike(Uint8Array,"be",32),0),e.set(s.toArrayLike(Uint8Array,"be",32),32),0},ecdsaSign:function(e,t,n,i,u){if(u){var c=u;u=function(e){var r=c(t,n,null,i,e);if(!(r instanceof Uint8Array&&32===r.length))throw new Error("This is the way");return new a(r)}}var s,l=new a(n);if(l.cmp(o.n)>=0||l.isZero())return 1;try{s=r.sign(t,n,{canonical:!0,k:u,pers:i})}catch(e){return 1}return e.signature.set(s.r.toArrayLike(Uint8Array,"be",32),0),e.signature.set(s.s.toArrayLike(Uint8Array,"be",32),32),e.recid=s.recoveryParam,0},ecdsaVerify:function(e,t,n){var u={r:e.subarray(0,32),s:e.subarray(32,64)},c=new a(u.r),s=new a(u.s);if(c.cmp(o.n)>=0||s.cmp(o.n)>=0)return 1;if(1===s.cmp(r.nh)||c.isZero()||s.isZero())return 3;var l=i(n);if(null===l)return 2;var f=l.getPublic();return r.verify(t,u,f)?0:3},ecdsaRecover:function(e,t,n,i){var c,s={r:t.slice(0,32),s:t.slice(32,64)},l=new a(s.r),f=new a(s.s);if(l.cmp(o.n)>=0||f.cmp(o.n)>=0)return 1;if(l.isZero()||f.isZero())return 2;try{c=r.recoverPubKey(i,s,n)}catch(e){return 2}return u(e,c),0},ecdh:function(e,t,n,u,c,s,l){var f=i(t);if(null===f)return 1;var d=new a(n);if(d.cmp(o.n)>=0||d.isZero())return 2;var p=f.getPublic().mul(d);if(void 0===c)for(var h=p.encode(null,!0),y=r.hash().update(h).digest(),m=0;m<32;++m)e[m]=y[m];else{s||(s=new Uint8Array(32));for(var b=p.getX().toArray("be",32),v=0;v<32;++v)s[v]=b[v];l||(l=new Uint8Array(32));for(var k=p.getY().toArray("be",32),g=0;g<32;++g)l[g]=k[g];var _=c(s,l,u);if(!(_ instanceof Uint8Array&&_.length===e.length))return 2;e.set(_)}return 0}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1140);t.getRandomBytes=function(e){return new Promise((function(t,n){r(e,(function(e,r){e?n(e):t(r)}))}))},t.getRandomBytesSync=function(e){return r(e)}},function(e,t,n){"use strict";(function(t,r){var o=n(89).Buffer,a=t.crypto||t.msCrypto;a&&a.getRandomValues?e.exports=function(e,t){if(e>4294967295)throw new RangeError("requested too many random bytes");var n=o.allocUnsafe(e);if(e>0)if(e>65536)for(var i=0;i0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return i.alloc(0);for(var t,n,r,o=i.allocUnsafe(e>>>0),a=this.head,u=0;a;)t=a.data,n=o,r=u,i.prototype.copy.call(t,n,r),u+=a.data.length,a=a.next;return o}},{key:"consume",value:function(e,t){var n;return eo.length?o.length:e;if(a===o.length?r+=o:r+=o.slice(0,e),0==(e-=a)){a===o.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=o.slice(a));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=i.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var o=n.data,a=e>o.length?o.length:e;if(o.copy(t,t.length-e,0,a),0==(e-=a)){a===o.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(a));break}++r}return this.length-=r,t}},{key:c,value:function(e,t){return u(this,function(e){for(var t=1;t0,(function(e){r||(r=e),e&&i.forEach(s),a||(i.forEach(s),o(r))}))}));return t.reduce(l)}},function(e,t,n){"use strict";(function(t){var r=n(0),o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=n(340).Transform;e.exports=function(e){return function(n){(0,i.default)(u,n);var r=s(u);function u(t,n,a,i){var c;return(0,o.default)(this,u),(c=r.call(this,i))._rate=t,c._capacity=n,c._delimitedSuffix=a,c._options=i,c._state=new e,c._state.initialize(t,n),c._finalized=!1,c}return(0,a.default)(u,[{key:"_transform",value:function(e,t,n){var r=null;try{this.update(e,t)}catch(e){r=e}n(r)}},{key:"_flush",value:function(){}},{key:"_read",value:function(e){this.push(this.squeeze(e))}},{key:"update",value:function(e,n){if(!t.isBuffer(e)&&"string"!=typeof e)throw new TypeError("Data must be a string or a buffer");if(this._finalized)throw new Error("Squeeze already called");return t.isBuffer(e)||(e=t.from(e,n)),this._state.absorb(e),this}},{key:"squeeze",value:function(e,t){this._finalized||(this._finalized=!0,this._state.absorbLastFewBits(this._delimitedSuffix));var n=this._state.squeeze(e);return void 0!==t&&(n=n.toString(t)),n}},{key:"_resetState",value:function(){return this._state.initialize(this._rate,this._capacity),this}},{key:"_clone",value:function(){var e=new u(this._rate,this._capacity,this._delimitedSuffix,this._options);return this._state.copy(e._state),e._finalized=this._finalized,e}}]),u}(l)}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";(function(t){var r=n(1156);function o(){this.state=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.blockSize=null,this.count=0,this.squeezing=!1}o.prototype.initialize=function(e,t){for(var n=0;n<50;++n)this.state[n]=0;this.blockSize=e/8,this.count=0,this.squeezing=!1},o.prototype.absorb=function(e){for(var t=0;t>>this.count%4*8&255,this.count+=1,this.count===this.blockSize&&(r.p1600(this.state),this.count=0);return n},o.prototype.copy=function(e){for(var t=0;t<50;++t)e.state[t]=this.state[t];e.blockSize=this.blockSize,e.count=this.count,e.squeezing=this.squeezing},e.exports=o}).call(this,n(15).Buffer)},function(e,t,n){"use strict";var r=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648];t.p1600=function(e){for(var t=0;t<24;++t){var n=e[0]^e[10]^e[20]^e[30]^e[40],o=e[1]^e[11]^e[21]^e[31]^e[41],a=e[2]^e[12]^e[22]^e[32]^e[42],i=e[3]^e[13]^e[23]^e[33]^e[43],u=e[4]^e[14]^e[24]^e[34]^e[44],c=e[5]^e[15]^e[25]^e[35]^e[45],s=e[6]^e[16]^e[26]^e[36]^e[46],l=e[7]^e[17]^e[27]^e[37]^e[47],f=e[8]^e[18]^e[28]^e[38]^e[48],d=e[9]^e[19]^e[29]^e[39]^e[49],p=f^(a<<1|i>>>31),h=d^(i<<1|a>>>31),y=e[0]^p,m=e[1]^h,b=e[10]^p,v=e[11]^h,k=e[20]^p,g=e[21]^h,_=e[30]^p,w=e[31]^h,I=e[40]^p,A=e[41]^h;p=n^(u<<1|c>>>31),h=o^(c<<1|u>>>31);var T=e[2]^p,O=e[3]^h,P=e[12]^p,E=e[13]^h,S=e[22]^p,R=e[23]^h,D=e[32]^p,C=e[33]^h,N=e[42]^p,B=e[43]^h;p=a^(s<<1|l>>>31),h=i^(l<<1|s>>>31);var M=e[4]^p,j=e[5]^h,x=e[14]^p,F=e[15]^h,U=e[24]^p,L=e[25]^h,G=e[34]^p,K=e[35]^h,z=e[44]^p,Q=e[45]^h;p=u^(f<<1|d>>>31),h=c^(d<<1|f>>>31);var H=e[6]^p,V=e[7]^h,W=e[16]^p,q=e[17]^h,Y=e[26]^p,Z=e[27]^h,J=e[36]^p,X=e[37]^h,$=e[46]^p,ee=e[47]^h;p=s^(n<<1|o>>>31),h=l^(o<<1|n>>>31);var te=e[8]^p,ne=e[9]^h,re=e[18]^p,oe=e[19]^h,ae=e[28]^p,ie=e[29]^h,ue=e[38]^p,ce=e[39]^h,se=e[48]^p,le=e[49]^h,fe=y,de=m,pe=v<<4|b>>>28,he=b<<4|v>>>28,ye=k<<3|g>>>29,me=g<<3|k>>>29,be=w<<9|_>>>23,ve=_<<9|w>>>23,ke=I<<18|A>>>14,ge=A<<18|I>>>14,_e=T<<1|O>>>31,we=O<<1|T>>>31,Ie=E<<12|P>>>20,Ae=P<<12|E>>>20,Te=S<<10|R>>>22,Oe=R<<10|S>>>22,Pe=C<<13|D>>>19,Ee=D<<13|C>>>19,Se=N<<2|B>>>30,Re=B<<2|N>>>30,De=j<<30|M>>>2,Ce=M<<30|j>>>2,Ne=x<<6|F>>>26,Be=F<<6|x>>>26,Me=L<<11|U>>>21,je=U<<11|L>>>21,xe=G<<15|K>>>17,Fe=K<<15|G>>>17,Ue=Q<<29|z>>>3,Le=z<<29|Q>>>3,Ge=H<<28|V>>>4,Ke=V<<28|H>>>4,ze=q<<23|W>>>9,Qe=W<<23|q>>>9,He=Y<<25|Z>>>7,Ve=Z<<25|Y>>>7,We=J<<21|X>>>11,qe=X<<21|J>>>11,Ye=ee<<24|$>>>8,Ze=$<<24|ee>>>8,Je=te<<27|ne>>>5,Xe=ne<<27|te>>>5,$e=re<<20|oe>>>12,et=oe<<20|re>>>12,tt=ie<<7|ae>>>25,nt=ae<<7|ie>>>25,rt=ue<<8|ce>>>24,ot=ce<<8|ue>>>24,at=se<<14|le>>>18,it=le<<14|se>>>18;e[0]=fe^~Ie&Me,e[1]=de^~Ae&je,e[10]=Ge^~$e&ye,e[11]=Ke^~et&me,e[20]=_e^~Ne&He,e[21]=we^~Be&Ve,e[30]=Je^~pe&Te,e[31]=Xe^~he&Oe,e[40]=De^~ze&tt,e[41]=Ce^~Qe&nt,e[2]=Ie^~Me&We,e[3]=Ae^~je&qe,e[12]=$e^~ye&Pe,e[13]=et^~me&Ee,e[22]=Ne^~He&rt,e[23]=Be^~Ve&ot,e[32]=pe^~Te&xe,e[33]=he^~Oe&Fe,e[42]=ze^~tt&be,e[43]=Qe^~nt&ve,e[4]=Me^~We&at,e[5]=je^~qe&it,e[14]=ye^~Pe&Ue,e[15]=me^~Ee&Le,e[24]=He^~rt&ke,e[25]=Ve^~ot&ge,e[34]=Te^~xe&Ye,e[35]=Oe^~Fe&Ze,e[44]=tt^~be&Se,e[45]=nt^~ve&Re,e[6]=We^~at&fe,e[7]=qe^~it&de,e[16]=Pe^~Ue&Ge,e[17]=Ee^~Le&Ke,e[26]=rt^~ke&_e,e[27]=ot^~ge&we,e[36]=xe^~Ye&Je,e[37]=Fe^~Ze&Xe,e[46]=be^~Se&De,e[47]=ve^~Re&Ce,e[8]=at^~fe&Ie,e[9]=it^~de&Ae,e[18]=Ue^~Ge&$e,e[19]=Le^~Ke&et,e[28]=ke^~_e&Ne,e[29]=ge^~we&Be,e[38]=Ye^~Je&pe,e[39]=Ze^~Xe&he,e[48]=Se^~De&ze,e[49]=Re^~Ce&Qe,e[0]^=r[2*t],e[1]^=r[2*t+1]}}},function(e,t,n){"use strict";var r=n(51),o=n(1158),a=n(1159),i=n(1160),u=n(1165);function c(e){u.call(this,"digest"),this._hash=e}r(c,u),c.prototype._update=function(e){this._hash.update(e)},c.prototype._final=function(){return this._hash.digest()},e.exports=function(e){return"md5"===(e=e.toLowerCase())?new o:"rmd160"===e||"ripemd160"===e?new a:new c(i(e))}},function(e,t,n){"use strict";var r=n(51),o=n(575),a=n(89).Buffer,i=new Array(16);function u(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<>>32-t}function s(e,t,n,r,o,a,i){return c(e+(t&n|~t&r)+o+a|0,i)+t|0}function l(e,t,n,r,o,a,i){return c(e+(t&r|n&~r)+o+a|0,i)+t|0}function f(e,t,n,r,o,a,i){return c(e+(t^n^r)+o+a|0,i)+t|0}function d(e,t,n,r,o,a,i){return c(e+(n^(t|~r))+o+a|0,i)+t|0}r(u,o),u.prototype._update=function(){for(var e=i,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,o=this._c,a=this._d;n=s(n,r,o,a,e[0],3614090360,7),a=s(a,n,r,o,e[1],3905402710,12),o=s(o,a,n,r,e[2],606105819,17),r=s(r,o,a,n,e[3],3250441966,22),n=s(n,r,o,a,e[4],4118548399,7),a=s(a,n,r,o,e[5],1200080426,12),o=s(o,a,n,r,e[6],2821735955,17),r=s(r,o,a,n,e[7],4249261313,22),n=s(n,r,o,a,e[8],1770035416,7),a=s(a,n,r,o,e[9],2336552879,12),o=s(o,a,n,r,e[10],4294925233,17),r=s(r,o,a,n,e[11],2304563134,22),n=s(n,r,o,a,e[12],1804603682,7),a=s(a,n,r,o,e[13],4254626195,12),o=s(o,a,n,r,e[14],2792965006,17),n=l(n,r=s(r,o,a,n,e[15],1236535329,22),o,a,e[1],4129170786,5),a=l(a,n,r,o,e[6],3225465664,9),o=l(o,a,n,r,e[11],643717713,14),r=l(r,o,a,n,e[0],3921069994,20),n=l(n,r,o,a,e[5],3593408605,5),a=l(a,n,r,o,e[10],38016083,9),o=l(o,a,n,r,e[15],3634488961,14),r=l(r,o,a,n,e[4],3889429448,20),n=l(n,r,o,a,e[9],568446438,5),a=l(a,n,r,o,e[14],3275163606,9),o=l(o,a,n,r,e[3],4107603335,14),r=l(r,o,a,n,e[8],1163531501,20),n=l(n,r,o,a,e[13],2850285829,5),a=l(a,n,r,o,e[2],4243563512,9),o=l(o,a,n,r,e[7],1735328473,14),n=f(n,r=l(r,o,a,n,e[12],2368359562,20),o,a,e[5],4294588738,4),a=f(a,n,r,o,e[8],2272392833,11),o=f(o,a,n,r,e[11],1839030562,16),r=f(r,o,a,n,e[14],4259657740,23),n=f(n,r,o,a,e[1],2763975236,4),a=f(a,n,r,o,e[4],1272893353,11),o=f(o,a,n,r,e[7],4139469664,16),r=f(r,o,a,n,e[10],3200236656,23),n=f(n,r,o,a,e[13],681279174,4),a=f(a,n,r,o,e[0],3936430074,11),o=f(o,a,n,r,e[3],3572445317,16),r=f(r,o,a,n,e[6],76029189,23),n=f(n,r,o,a,e[9],3654602809,4),a=f(a,n,r,o,e[12],3873151461,11),o=f(o,a,n,r,e[15],530742520,16),n=d(n,r=f(r,o,a,n,e[2],3299628645,23),o,a,e[0],4096336452,6),a=d(a,n,r,o,e[7],1126891415,10),o=d(o,a,n,r,e[14],2878612391,15),r=d(r,o,a,n,e[5],4237533241,21),n=d(n,r,o,a,e[12],1700485571,6),a=d(a,n,r,o,e[3],2399980690,10),o=d(o,a,n,r,e[10],4293915773,15),r=d(r,o,a,n,e[1],2240044497,21),n=d(n,r,o,a,e[8],1873313359,6),a=d(a,n,r,o,e[15],4264355552,10),o=d(o,a,n,r,e[6],2734768916,15),r=d(r,o,a,n,e[13],1309151649,21),n=d(n,r,o,a,e[4],4149444226,6),a=d(a,n,r,o,e[11],3174756917,10),o=d(o,a,n,r,e[2],718787259,15),r=d(r,o,a,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+o|0,this._d=this._d+a|0},u.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=a.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=u},function(e,t,n){"use strict";var r=n(15).Buffer,o=n(51),a=n(575),i=new Array(16),u=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],s=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],l=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],f=[0,1518500249,1859775393,2400959708,2840853838],d=[1352829926,1548603684,1836072691,2053994217,0];function p(){a.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function h(e,t){return e<>>32-t}function y(e,t,n,r,o,a,i,u){return h(e+(t^n^r)+a+i|0,u)+o|0}function m(e,t,n,r,o,a,i,u){return h(e+(t&n|~t&r)+a+i|0,u)+o|0}function b(e,t,n,r,o,a,i,u){return h(e+((t|~n)^r)+a+i|0,u)+o|0}function v(e,t,n,r,o,a,i,u){return h(e+(t&r|n&~r)+a+i|0,u)+o|0}function k(e,t,n,r,o,a,i,u){return h(e+(t^(n|~r))+a+i|0,u)+o|0}o(p,a),p.prototype._update=function(){for(var e=i,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,o=0|this._c,a=0|this._d,p=0|this._e,g=0|this._a,_=0|this._b,w=0|this._c,I=0|this._d,A=0|this._e,T=0;T<80;T+=1){var O,P;T<16?(O=y(n,r,o,a,p,e[u[T]],f[0],s[T]),P=k(g,_,w,I,A,e[c[T]],d[0],l[T])):T<32?(O=m(n,r,o,a,p,e[u[T]],f[1],s[T]),P=v(g,_,w,I,A,e[c[T]],d[1],l[T])):T<48?(O=b(n,r,o,a,p,e[u[T]],f[2],s[T]),P=b(g,_,w,I,A,e[c[T]],d[2],l[T])):T<64?(O=v(n,r,o,a,p,e[u[T]],f[3],s[T]),P=m(g,_,w,I,A,e[c[T]],d[3],l[T])):(O=k(n,r,o,a,p,e[u[T]],f[4],s[T]),P=y(g,_,w,I,A,e[c[T]],d[4],l[T])),n=p,p=a,a=h(o,10),o=r,r=O,g=A,A=I,I=h(w,10),w=_,_=P}var E=this._b+o+I|0;this._b=this._c+a+A|0,this._c=this._d+p+g|0,this._d=this._e+n+_|0,this._e=this._a+r+w|0,this._a=E},p.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=r.alloc?r.alloc(20):new r(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=p},function(e,t,n){"use strict";var r=e.exports=function(e){e=e.toLowerCase();var t=r[e];if(!t)throw new Error(e+" is not supported (we accept pull requests)");return new t};r.sha=n(1161),r.sha1=n(1162),r.sha224=n(1163),r.sha256=n(576),r.sha384=n(1164),r.sha512=n(577)},function(e,t,n){"use strict";var r=n(51),o=n(186),a=n(89).Buffer,i=[1518500249,1859775393,-1894007588,-899497514],u=new Array(80);function c(){this.init(),this._w=u,o.call(this,64,56)}function s(e){return e<<30|e>>>2}function l(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,o),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,f=0;f<16;++f)n[f]=e.readInt32BE(4*f);for(;f<80;++f)n[f]=n[f-3]^n[f-8]^n[f-14]^n[f-16];for(var d=0;d<80;++d){var p=~~(d/20),h=0|((t=r)<<5|t>>>27)+l(p,o,a,u)+c+n[d]+i[p];c=u,u=a,a=s(o),o=r,r=h}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},function(e,t,n){"use strict";var r=n(51),o=n(186),a=n(89).Buffer,i=[1518500249,1859775393,-1894007588,-899497514],u=new Array(80);function c(){this.init(),this._w=u,o.call(this,64,56)}function s(e){return e<<5|e>>>27}function l(e){return e<<30|e>>>2}function f(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,o),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,o=0|this._b,a=0|this._c,u=0|this._d,c=0|this._e,d=0;d<16;++d)n[d]=e.readInt32BE(4*d);for(;d<80;++d)n[d]=(t=n[d-3]^n[d-8]^n[d-14]^n[d-16])<<1|t>>>31;for(var p=0;p<80;++p){var h=~~(p/20),y=s(r)+f(h,o,a,u)+c+n[p]+i[h]|0;c=u,u=a,a=l(o),o=r,r=y}this._a=r+this._a|0,this._b=o+this._b|0,this._c=a+this._c|0,this._d=u+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},function(e,t,n){"use strict";var r=n(51),o=n(576),a=n(186),i=n(89).Buffer,u=new Array(64);function c(){this.init(),this._w=u,a.call(this,64,56)}r(c,o),c.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},c.prototype._hash=function(){var e=i.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=c},function(e,t,n){"use strict";var r=n(51),o=n(577),a=n(186),i=n(89).Buffer,u=new Array(160);function c(){this.init(),this._w=u,a.call(this,128,112)}r(c,o),c.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},c.prototype._hash=function(){var e=i.allocUnsafe(48);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e},e.exports=c},function(e,t,n){"use strict";var r=n(89).Buffer,o=n(457).Transform,a=n(76).StringDecoder;function i(e){o.call(this),this.hashMode="string"==typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}n(51)(i,o),i.prototype.update=function(e,t,n){"string"==typeof e&&(e=r.from(e,t));var o=this._update(e);return this.hashMode?this:(n&&(o=this._toString(o,n)),o)},i.prototype.setAutoPadding=function(){},i.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},i.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},i.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},i.prototype._transform=function(e,t,n){var r;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(e){r=e}finally{n(r)}},i.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(e){t=e}e(t)},i.prototype._finalOrDigest=function(e){var t=this.__final()||r.alloc(0);return e&&(t=this._toString(t,e,!0)),t},i.prototype._toString=function(e,t,n){if(this._decoder||(this._decoder=new a(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var r=this._decoder.write(e);return n&&(r+=this._decoder.end()),r},e.exports=i},function(e,t,n){"use strict";(function(e){var r=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Address=void 0;var o=r(n(170)),a=n(112),i=n(152),u=n(566),c=function(){function t(e){(0,o.default)(20===e.length,"Invalid address length"),this.buf=e}return t.zero=function(){return new t((0,i.zeros)(20))},t.fromString=function(e){return(0,o.default)((0,u.isValidAddress)(e),"Invalid address"),new t((0,i.toBuffer)(e))},t.fromPublicKey=function(n){return(0,o.default)(e.isBuffer(n),"Public key should be Buffer"),new t((0,u.pubToAddress)(n))},t.fromPrivateKey=function(n){return(0,o.default)(e.isBuffer(n),"Private key should be Buffer"),new t((0,u.privateToAddress)(n))},t.generate=function(n,r){return(0,o.default)(a.BN.isBN(r)),new t((0,u.generateAddress)(n.buf,r.toArrayLike(e)))},t.generate2=function(n,r,a){return(0,o.default)(e.isBuffer(r)),(0,o.default)(e.isBuffer(a)),new t((0,u.generateAddress2)(n.buf,r,a))},t.prototype.equals=function(e){return this.buf.equals(e.buf)},t.prototype.isZero=function(){return this.equals(t.zero())},t.prototype.isPrecompileOrSystemAddress=function(){var e=new a.BN(this.buf),t=new a.BN(0),n=new a.BN("ffff","hex");return e.gte(t)&&e.lte(n)},t.prototype.toString=function(){return"0x"+this.buf.toString("hex")},t.prototype.toBuffer=function(){return e.from(this.buf)},t}();t.Address=c}).call(this,n(15).Buffer)},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.hashPersonalMessage=t.isValidSignature=t.fromRpcSig=t.toCompactSig=t.toRpcSig=t.ecrecover=t.ecsign=void 0;var r=n(567),o=n(112),a=n(152),i=n(339),u=n(265),c=n(342);function s(e,t){var n=(0,c.toType)(e,c.TypeOutput.BN);if(!t)return n.subn(27);var r=(0,c.toType)(t,c.TypeOutput.BN);return n.sub(r.muln(2).addn(35))}function l(e){var t=new o.BN(e);return t.eqn(0)||t.eqn(1)}t.ecsign=function(t,n,o){var a=(0,r.ecdsaSign)(t,n),i=a.signature,u=a.recid,s=e.from(i.slice(0,32)),l=e.from(i.slice(32,64));if(!o||"number"==typeof o){if(o&&!Number.isSafeInteger(o))throw new Error("The provided number is greater than MAX_SAFE_INTEGER (please use an alternative input type)");return{r:s,s:l,v:o?u+(2*o+35):u+27}}return{r:s,s:l,v:(0,c.toType)(o,c.TypeOutput.BN).muln(2).addn(35).addn(u).toArrayLike(e)}};t.ecrecover=function(t,n,o,i,u){var c=e.concat([(0,a.setLengthLeft)(o,32),(0,a.setLengthLeft)(i,32)],64),f=s(n,u);if(!l(f))throw new Error("Invalid signature v value");var d=(0,r.ecdsaRecover)(c,f.toNumber(),t);return e.from((0,r.publicKeyConvert)(d,!1).slice(1))};t.toRpcSig=function(t,n,r,o){if(!l(s(t,o)))throw new Error("Invalid signature v value");return(0,a.bufferToHex)(e.concat([(0,a.setLengthLeft)(n,32),(0,a.setLengthLeft)(r,32),(0,a.toBuffer)(t)]))};t.toCompactSig=function(t,n,r,o){if(!l(s(t,o)))throw new Error("Invalid signature v value");var i=(0,c.toType)(t,c.TypeOutput.Number),u=r;return(i>28&&i%2==1||1===i||28===i)&&((u=e.from(r))[0]|=128),(0,a.bufferToHex)(e.concat([(0,a.setLengthLeft)(n,32),(0,a.setLengthLeft)(u,32)]))};t.fromRpcSig=function(e){var t,n,r,o=(0,a.toBuffer)(e);if(o.length>=65)t=o.slice(0,32),n=o.slice(32,64),r=(0,a.bufferToInt)(o.slice(64));else{if(64!==o.length)throw new Error("Invalid signature length");t=o.slice(0,32),n=o.slice(32,64),r=(0,a.bufferToInt)(o.slice(32,33))>>7,n[0]&=127}return r<27&&(r+=27),{v:r,r:t,s:n}};t.isValidSignature=function(e,t,n,r,a){void 0===r&&(r=!0);var i=new o.BN("7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0",16),u=new o.BN("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141",16);if(32!==t.length||32!==n.length)return!1;if(!l(s(e,a)))return!1;var c=new o.BN(t),f=new o.BN(n);return!(c.isZero()||c.gt(u)||f.isZero()||f.gt(u))&&(!r||1!==f.cmp(i))};t.hashPersonalMessage=function(t){(0,u.assertIsBuffer)(t);var n=e.from("Ethereum Signed Message:\n".concat(t.length),"utf-8");return(0,i.keccak)(e.concat([n,t]))}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";(function(e){var r=n(0)(n(3)),o=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.defineProperties=void 0;var a=o(n(170)),i=n(183),u=n(112),c=n(152);t.defineProperties=function(t,n,o){if(t.raw=[],t._fields=[],t.toJSON=function(e){if(void 0===e&&(e=!1),e){var n={};return t._fields.forEach((function(e){n[e]="0x".concat(t[e].toString("hex"))})),n}return(0,c.baToJSON)(t.raw)},t.serialize=function(){return u.rlp.encode(t.raw)},n.forEach((function(n,r){function o(){return t.raw[r]}function i(o){"00"!==(o=(0,c.toBuffer)(o)).toString("hex")||n.allowZero||(o=e.allocUnsafe(0)),n.allowLess&&n.length?(o=(0,c.unpadBuffer)(o),(0,a.default)(n.length>=o.length,"The field ".concat(n.name," must not have more ").concat(n.length," bytes"))):n.allowZero&&0===o.length||!n.length||(0,a.default)(n.length===o.length,"The field ".concat(n.name," must have byte length of ").concat(n.length)),t.raw[r]=o}t._fields.push(n.name),Object.defineProperty(t,n.name,{enumerable:!0,configurable:!0,get:o,set:i}),n.default&&(t[n.name]=n.default),n.alias&&Object.defineProperty(t,n.alias,{enumerable:!1,configurable:!0,set:i,get:o})})),o)if("string"==typeof o&&(o=e.from((0,i.stripHexPrefix)(o),"hex")),e.isBuffer(o)&&(o=u.rlp.decode(o)),Array.isArray(o)){if(o.length>t._fields.length)throw new Error("wrong number of fields in data");o.forEach((function(e,n){t[t._fields[n]]=(0,c.toBuffer)(e)}))}else{if("object"!==(0,r.default)(o))throw new Error("invalid data");var s=Object.keys(o);n.forEach((function(e){-1!==s.indexOf(e.name)&&(t[e.name]=o[e.name]),-1!==s.indexOf(e.alias)&&(t[e.alias]=o[e.alias])}))}}}).call(this,n(15).Buffer)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(472),o=function(e,t){var n=this,o=e.publicKey,a=(new r.AccountCreateTransaction).setKey(o);n.currentProvider.send(a,(function(r,a){if(r)throw r;n.currentProvider.getReceipt(a,(function(n,r){if(n)throw n;var a=Object.assign({},r);a.privateKey=e,a.publicKey=o,t(a)}))}))};t.default=o},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(3)),i=n(1171),u=n(165),c=r(n(464)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(93)),l=n(104),f=r(n(465)),d=r(n(1314));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}var h=function e(t,n,r){var o=this,i=Array.prototype.slice.call(arguments);if(!(this instanceof e))throw new Error('Please use the "new" keyword to instantiate a web3.eth.Contract() object!');if(this.setProvider=function(){(0,u.packageInit)(o,arguments),o.clearSubscriptions=o._requestManager.clearSubscriptions},(0,u.packageInit)(this,[this.constructor]),this.clearSubscriptions=this._requestManager.clearSubscriptions,!t||!Array.isArray(t))throw l.errors.ContractMissingABIError();this.options={};var c=i[i.length-1];c&&"object"===(0,a.default)(c)&&!Array.isArray(c)&&(r=c,this.options=Object.assign(Object.assign({},this.options),this._getOrSetDefaultOptions(r)),n&&"object"===(0,a.default)(n)&&(n=null)),Object.defineProperty(this.options,"address",{set:function(e){e&&(o._address=e)},get:function(){return o._address},enumerable:!0}),Object.defineProperty(this.options,"jsonInterface",{set:function(e){return o.methods={},o.events={},o._jsonInterface=e.map((function(e){var t,n;if(e.constant="view"===e.stateMutability||"pure"===e.stateMutability||e.constant,e.payable="payable"===e.stateMutability||e.payable,e.name&&(n=s._jsonInterfaceMethodToString(e)),"function"===e.type){if(e.signature=d.default.encodeFunctionSignature(n),t=o._createTxObject.bind({method:e,parent:o}),o.methods[e.name]){var r=o._createTxObject.bind({method:e,parent:o,nextMethod:o.methods[e.name]});o.methods[e.name]=r}else o.methods[e.name]=t;o.methods[e.signature]=t,o.methods[n]=t}else if("event"===e.type){e.signature=d.default.encodeEventSignature(n);var a=o._on.bind(o,e.signature);o.events[e.name]&&"bound "!==o.events[e.name].name||(o.events[e.name]=a),o.events[e.signature]=a,o.events[n]=a}return e})),o.events.allEvents=o._on.bind(o,"allevents"),o._jsonInterface},get:function(){return o._jsonInterface},enumerable:!0});var f=this.constructor.defaultAccount,p=this.constructor.defaultBlock||"latest";Object.defineProperty(this,"handleRevert",{get:function(){return!1===o.options.handleRevert||!0===o.options.handleRevert?o.options.handleRevert:this.constructor.handleRevert},set:function(e){o.options.handleRevert=e},enumerable:!0}),Object.defineProperty(this,"defaultCommon",{get:function(){return o.options.common||this.constructor.defaultCommon},set:function(e){o.options.common=e},enumerable:!0}),Object.defineProperty(this,"defaultHardfork",{get:function(){return o.options.hardfork||this.constructor.defaultHardfork},set:function(e){o.options.hardfork=e},enumerable:!0}),Object.defineProperty(this,"defaultChain",{get:function(){return o.options.chain||this.constructor.defaultChain},set:function(e){o.options.chain=e},enumerable:!0}),Object.defineProperty(this,"transactionPollingTimeout",{get:function(){return 0===o.options.transactionPollingTimeout?o.options.transactionPollingTimeout:o.options.transactionPollingTimeout||this.constructor.transactionPollingTimeout},set:function(e){o.options.transactionPollingTimeout=e},enumerable:!0}),Object.defineProperty(this,"transactionPollingInterval",{get:function(){return 0===o.options.transactionPollingInterval?o.options.transactionPollingInterval:o.options.transactionPollingInterval||this.constructor.transactionPollingInterval},set:function(e){o.options.transactionPollingInterval=e},enumerable:!0}),Object.defineProperty(this,"transactionConfirmationBlocks",{get:function(){return 0===o.options.transactionConfirmationBlocks?o.options.transactionConfirmationBlocks:o.options.transactionConfirmationBlocks||this.constructor.transactionConfirmationBlocks},set:function(e){o.options.transactionConfirmationBlocks=e},enumerable:!0}),Object.defineProperty(this,"transactionBlockTimeout",{get:function(){return 0===o.options.transactionBlockTimeout?o.options.transactionBlockTimeout:o.options.transactionBlockTimeout||this.constructor.transactionBlockTimeout},set:function(e){o.options.transactionBlockTimeout=e},enumerable:!0}),Object.defineProperty(this,"blockHeaderTimeout",{get:function(){return 0===o.options.blockHeaderTimeout?o.options.blockHeaderTimeout:o.options.blockHeaderTimeout||this.constructor.blockHeaderTimeout},set:function(e){o.options.blockHeaderTimeout=e},enumerable:!0}),Object.defineProperty(this,"defaultAccount",{get:function(){return f},set:function(e){return e&&(f=s.toChecksumAddress(l.formatters.inputAddressFormatter(e))),e},enumerable:!0}),Object.defineProperty(this,"defaultBlock",{get:function(){return p},set:function(e){return p=e,e},enumerable:!0}),this.methods={},this.events={},this._address=null,this._jsonInterface=[],this.options.address=n,this.options.jsonInterface=t};h.setProvider=function(e,t){(0,u.packageInit)(this,[e]),this._ethAccounts=t},h.prototype._getCallback=function(e){if(e&&e[e.length-1]&&"function"==typeof e[e.length-1])return e.pop()},h.prototype._checkListener=function(e,t){if(t===e)throw l.errors.ContractReservedEventError(e)},h.prototype._getOrSetDefaultOptions=function(e){var t=e.from?e.from:null;return e.data=e.data||this.options.data,e.from=t||this.options.from,e.gas=e.gas||e.gasLimit||this.options.gas,e.queryPayment=e.queryPayment||this.options.queryPayment,delete e.gasLimit,e},h.prototype._encodeEventABI=function(e,t){var n=(t=t||{}).filter||{},r={};if(["fromBlock","toBlock"].filter((function(e){return void 0!==t[e]})).forEach((function(e){r[e]=l.formatters.inputBlockNumberFormatter(t[e])})),Array.isArray(t.topics))r.topics=t.topics;else{if(r.topics=[],e&&!e.anonymous&&"ALLEVENTS"!==e.name&&r.topics.push(e.signature),"ALLEVENTS"!==e.name){var o=e.inputs.filter((function(e){return!0===e.indexed})).map((function(e){var t=n[e.name];return t?Array.isArray(t)?t.map((function(t){return d.default.encodeParameter(e.type,t)})):d.default.encodeParameter(e.type,t):null}));r.topics=r.topics.concat(o)}r.topics.length||delete r.topics}return this.options.address&&(r.address=this.options.address.toLowerCase()),r},h.prototype._decodeEventABI=function(e){var t=this;e.data=e.data||"",e.topics=e.topics||[];var n=l.formatters.outputLogFormatter(e);if("ALLEVENTS"===t.name&&(t=t.jsonInterface.find((function(t){return t.signature===e.topics[0]}))||{anonymous:!0}),t.inputs=t.inputs||[],!t.anonymous){var r=0;t.inputs.forEach((function(e){return e.indexed?r++:null})),r>0&&e.topics.length!==r+1&&(t={anonymous:!0,inputs:[]})}var o=t.anonymous?e.topics:e.topics.slice(1);return n.returnValues=d.default.decodeLog(t.inputs,e.data,o),delete n.returnValues.__length__,n.event=t.name,n.signature=t.anonymous||!e.topics[0]?null:e.topics[0],n.raw={data:n.data,topics:n.topics},delete n.data,delete n.topics,n},h.prototype._encodeMethodABI=function(){var e=this._method.signature,t=this.arguments||[],n=this._parent.options.jsonInterface.filter((function(t){return"constructor"===e&&t.type===e||(t.signature===e||t.signature===e.replace("0x","")||t.name===e)&&"function"===t.type})).map((function(e){var n=Array.isArray(e.inputs)?e.inputs.length:0;if(n!==t.length)throw new Error("The number of arguments is not matching the methods required number. You need to pass "+n+" arguments.");return Array.isArray(e.inputs)?e.inputs:[]})).map((function(e){return d.default.encodeParameters(e,t)}))[0]||"";if("constructor"===e){if(!this._deployData)throw new Error("The contract has no contract data option set. This is necessary to append the constructor parameters.");return this._deployData.startsWith("0x")||(this._deployData="0x"+this._deployData),this._deployData+n}if(!n)throw new Error("Couldn't find a matching contract method named \""+this._method.name+'".');return n},h.prototype._decodeMethodReturn=function(e,t){if(!t)return null;t=t.length>=2?t.slice(2):t;var n=d.default.decodeParameters(e,t);return 1===n.__length__?n[0]:(delete n.__length__,n)},h.prototype.deploy=function(e,t){if((e=e||{}).arguments=e.arguments||[],!(e=this._getOrSetDefaultOptions(e)).data){if("function"==typeof t)return t(l.errors.ContractMissingDeployDataError());throw l.errors.ContractMissingDeployDataError()}var n=this.options.jsonInterface.find((function(e){return"constructor"===e.type}))||{};return n.signature="constructor",this._createTxObject.apply({method:n,parent:this,deployData:e.data},e.arguments)},h.prototype._generateEventOptions=function(){var e=Array.prototype.slice.call(arguments),t=this._getCallback(e),n="object"===(!!e[e.length-1]&&(0,a.default)(e[e.length-1]))?e.pop():{},r="string"==typeof e[0]?e[0]:"allevents",o="allevents"===r.toLowerCase()?{name:"ALLEVENTS",jsonInterface:this.options.jsonInterface}:this.options.jsonInterface.find((function(e){return"event"===e.type&&(e.name===r||e.signature==="0x"+r.replace("0x",""))}));if(!o)throw l.errors.ContractEventDoesNotExistError(r);if(!s.isAddress(this.options.address))throw l.errors.ContractNoAddressDefinedError();return{params:this._encodeEventABI(o,n),event:o,callback:t}},h.prototype.clone=function(){return new this.constructor(this.options.jsonInterface,this.options.address,this.options)},h.prototype.once=function(e,t,n){var r=Array.prototype.slice.call(arguments);if(!(n=this._getCallback(r)))throw l.errors.ContractOnceRequiresCallbackError();t&&delete t.fromBlock,this._on(e,t,(function(e,t,r){r.unsubscribe(),"function"==typeof n&&n(e,t,r)}))},h.prototype._on=function(){var e=this._generateEventOptions.apply(this,arguments);e.params&&e.params.toBlock&&(delete e.params.toBlock,console.warn("Invalid option: toBlock. Use getPastEvents for specific range.")),this._checkListener("newListener",e.event.name),this._checkListener("removeListener",e.event.name);var t=new Subscription({subscription:{params:1,inputFormatter:[l.formatters.inputLogFormatter],outputFormatter:this._decodeEventABI.bind(e.event),subscriptionHandler:function(e){e.removed?this.emit("changed",e):this.emit("data",e),"function"==typeof this.callback&&this.callback(null,e,this)}},type:"eth",requestManager:this._requestManager});return t.subscribe("logs",e.params,e.callback||function(){}),t},h.prototype.getPastEvents=function(){var e=this._generateEventOptions.apply(this,arguments),t=new c.default({name:"getPastLogs",call:"eth_getLogs",params:1,inputFormatter:[l.formatters.inputLogFormatter],outputFormatter:this._decodeEventABI.bind(e.event)});t.setRequestManager(this._requestManager);var n=t.buildCall();return t=null,n(e.params,e.callback)},h.prototype._createTxObject=function(){var e=Array.prototype.slice.call(arguments),t={};if(console.log({t:this,args:e}),"function"===this.method.type&&(t.call=this.parent._executeMethod.bind(t,"call"),t.call.request=this.parent._executeMethod.bind(t,"call",!0)),t.send=this.parent._executeMethod.bind(t,"send"),t.send.request=this.parent._executeMethod.bind(t,"send",!0),t.encodeABI=this.parent._encodeMethodABI.bind(t),t.estimateGas=this.parent._executeMethod.bind(t,"estimate"),t.createAccessList=this.parent._executeMethod.bind(t,"createAccessList"),e&&this.method.inputs&&e.length!==this.method.inputs.length){if(this.nextMethod)return this.nextMethod.apply(null,e);throw l.errors.InvalidNumberOfParams(e.length,this.method.inputs.length,this.method.name)}return t.arguments=e||[],t._method=this.method,t._parent=this.parent,t._ethAccounts=this.parent.constructor._ethAccounts||this._ethAccounts,this.deployData&&(t._deployData=this.deployData),t},h.prototype._processExecuteArguments=function(e,t){var n={};if(n.type=e.shift(),n.callback=this._parent._getCallback(e),"call"!==n.type||!0===e[e.length-1]||"string"!=typeof e[e.length-1]&&!isFinite(e[e.length-1])||(n.defaultBlock=e.pop()),n.options="object"===(!!e[e.length-1]&&(0,a.default)(e[e.length-1]))?e.pop():{},n.generateRequest=!0===e[e.length-1]&&e.pop(),n.options=this._parent._getOrSetDefaultOptions(n.options),n.options.data=this.encodeABI(),!this._deployData&&!s.isAddress(this._parent.options.address))throw l.errors.ContractNoAddressDefinedError();return this._deployData||(n.options.to=this._parent.options.address),n.options.data?n:s._fireError(new Error("Couldn't find a matching contract method, or the number of parameters is wrong."),t.eventEmitter,t.reject,n.callback)},h.prototype._executeMethod=function(){var e=this,t=this._parent._processExecuteArguments.call(this,Array.prototype.slice.call(arguments),n),n=(0,f.default)("send"!==t.type);if(t.generateRequest){var r={params:[l.formatters.inputCallFormatter.call(this._parent,t.options)],callback:t.callback};return"call"===t.type?(r.params.push(l.formatters.inputDefaultBlockNumberFormatter.call(this._parent,t.defaultBlock)),r.method="eth_call",r.format=this._parent._decodeMethodReturn.bind(null,this._method.outputs)):r.method="eth_sendTransaction",r}switch(t.type){case"createAccessList":case"estimate":throw new Error("Not supported");case"call":var o=(new i.ContractCallQuery).setContractId(e._parent.options.address).setFunction(e._method.name,t.options.data||void 0).setGas(t.options.gas).setQueryPayment(t.options.queryPayment);return e._parent._requestManager.send(o,t.callback);case"send":if("boolean"==typeof this._method.payable&&!this._method.payable&&t.options.value&&t.options.value>0)return s._fireError(new Error("Can not send value to non-payable contract method or constructor"),n.eventEmitter,n.reject,t.callback);var a=(new i.ContractExecuteTransaction).setContractId(e._parent.options.address).setFunction(e._method.name,t.options.data||void 0).setGas(t.options.gas).setPayableAmount(t.options.value);return e._parent._requestManager.send(a,(function(n,r){return n&&t.callback(n),e._parent._requestManager.getReceipt(r,t.callback)}));default:throw new Error('Method "'+t.type+'" not implemented.')}};var y=h;t.default=y},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0});var o={Client:!0};Object.defineProperty(t,"Client",{enumerable:!0,get:function(){return i.default}});var a=n(1172);Object.keys(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||e in t&&t[e]===a[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return a[e]}}))}));var i=r(n(1303))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AccountAllowanceAdjustTransaction",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"AccountAllowanceApproveTransaction",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"AccountBalance",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(t,"AccountBalanceQuery",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"AccountCreateTransaction",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"AccountDeleteTransaction",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"AccountId",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"AccountInfo",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"AccountInfoQuery",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"AccountRecordsQuery",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"AccountStakersQuery",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"AccountUpdateTransaction",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"AddressBookQuery",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"AssessedCustomFee",{enumerable:!0,get:function(){return I.default}}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return o.BadKeyError}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return o.BadMnemonicError}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return o.BadMnemonicReason}}),Object.defineProperty(t,"ContractByteCodeQuery",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"ContractCallQuery",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"ContractCreateFlow",{enumerable:!0,get:function(){return O.default}}),Object.defineProperty(t,"ContractCreateTransaction",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"ContractDeleteTransaction",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"ContractExecuteTransaction",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"ContractFunctionParameters",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"ContractFunctionResult",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"ContractFunctionSelector",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"ContractId",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"ContractInfo",{enumerable:!0,get:function(){return B.default}}),Object.defineProperty(t,"ContractInfoQuery",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"ContractLogInfo",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"ContractUpdateTransaction",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"CustomFee",{enumerable:!0,get:function(){return F.default}}),Object.defineProperty(t,"CustomFixedFee",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"CustomFractionalFee",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"CustomRoyaltyFee",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"DelegateContractId",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"ExchangeRate",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"ExchangeRates",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"Executable",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"FileAppendTransaction",{enumerable:!0,get:function(){return V.default}}),Object.defineProperty(t,"FileContentsQuery",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"FileCreateTransaction",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"FileDeleteTransaction",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"FileId",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"FileInfo",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"FileInfoQuery",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"FileUpdateTransaction",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"FreezeTransaction",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"Hbar",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"HbarAllowance",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"HbarUnit",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"LedgerId",{enumerable:!0,get:function(){return gt.default}}),Object.defineProperty(t,"LiveHash",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"LiveHashAddTransaction",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"LiveHashDeleteTransaction",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"LiveHashQuery",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return s.default}}),t.NetworkName=void 0,Object.defineProperty(t,"NetworkVersionInfo",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"NetworkVersionInfoQuery",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"NftId",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"PrecheckStatusError",{enumerable:!0,get:function(){return vt.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"Provider",{enumerable:!0,get:function(){return ht.default}}),Object.defineProperty(t,"ProxyStaker",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"Query",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"ReceiptStatusError",{enumerable:!0,get:function(){return kt.default}}),Object.defineProperty(t,"ScheduleCreateTransaction",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"ScheduleDeleteTransaction",{enumerable:!0,get:function(){return he.default}}),Object.defineProperty(t,"ScheduleId",{enumerable:!0,get:function(){return ye.default}}),Object.defineProperty(t,"ScheduleInfo",{enumerable:!0,get:function(){return me.default}}),Object.defineProperty(t,"ScheduleInfoQuery",{enumerable:!0,get:function(){return be.default}}),Object.defineProperty(t,"ScheduleSignTransaction",{enumerable:!0,get:function(){return ve.default}}),Object.defineProperty(t,"SemanticVersion",{enumerable:!0,get:function(){return ke.default}}),Object.defineProperty(t,"Signer",{enumerable:!0,get:function(){return yt.default}}),Object.defineProperty(t,"SignerSignature",{enumerable:!0,get:function(){return mt.default}}),Object.defineProperty(t,"Status",{enumerable:!0,get:function(){return ge.default}}),Object.defineProperty(t,"StatusError",{enumerable:!0,get:function(){return bt.default}}),Object.defineProperty(t,"SystemDeleteTransaction",{enumerable:!0,get:function(){return _e.default}}),Object.defineProperty(t,"SystemUndeleteTransaction",{enumerable:!0,get:function(){return we.default}}),Object.defineProperty(t,"Timestamp",{enumerable:!0,get:function(){return Ie.default}}),Object.defineProperty(t,"TokenAllowance",{enumerable:!0,get:function(){return Ae.default}}),Object.defineProperty(t,"TokenAssociateTransaction",{enumerable:!0,get:function(){return Te.default}}),Object.defineProperty(t,"TokenBurnTransaction",{enumerable:!0,get:function(){return Oe.default}}),Object.defineProperty(t,"TokenCreateTransaction",{enumerable:!0,get:function(){return Pe.default}}),Object.defineProperty(t,"TokenDeleteTransaction",{enumerable:!0,get:function(){return Ee.default}}),Object.defineProperty(t,"TokenDissociateTransaction",{enumerable:!0,get:function(){return Se.default}}),Object.defineProperty(t,"TokenFeeScheduleUpdateTransaction",{enumerable:!0,get:function(){return Re.default}}),Object.defineProperty(t,"TokenFreezeTransaction",{enumerable:!0,get:function(){return De.default}}),Object.defineProperty(t,"TokenGrantKycTransaction",{enumerable:!0,get:function(){return Ce.default}}),Object.defineProperty(t,"TokenId",{enumerable:!0,get:function(){return Ne.default}}),Object.defineProperty(t,"TokenInfo",{enumerable:!0,get:function(){return Be.default}}),Object.defineProperty(t,"TokenInfoQuery",{enumerable:!0,get:function(){return Me.default}}),Object.defineProperty(t,"TokenMintTransaction",{enumerable:!0,get:function(){return je.default}}),Object.defineProperty(t,"TokenNftAllowance",{enumerable:!0,get:function(){return xe.default}}),Object.defineProperty(t,"TokenNftInfo",{enumerable:!0,get:function(){return Fe.default}}),Object.defineProperty(t,"TokenNftInfoQuery",{enumerable:!0,get:function(){return Ue.default}}),Object.defineProperty(t,"TokenPauseTransaction",{enumerable:!0,get:function(){return Le.default}}),Object.defineProperty(t,"TokenRevokeKycTransaction",{enumerable:!0,get:function(){return Ge.default}}),Object.defineProperty(t,"TokenSupplyType",{enumerable:!0,get:function(){return Ke.default}}),Object.defineProperty(t,"TokenType",{enumerable:!0,get:function(){return ze.default}}),Object.defineProperty(t,"TokenUnfreezeTransaction",{enumerable:!0,get:function(){return Qe.default}}),Object.defineProperty(t,"TokenUnpauseTransaction",{enumerable:!0,get:function(){return He.default}}),Object.defineProperty(t,"TokenUpdateTransaction",{enumerable:!0,get:function(){return Ve.default}}),Object.defineProperty(t,"TokenWipeTransaction",{enumerable:!0,get:function(){return We.default}}),Object.defineProperty(t,"TopicCreateTransaction",{enumerable:!0,get:function(){return qe.default}}),Object.defineProperty(t,"TopicDeleteTransaction",{enumerable:!0,get:function(){return Ye.default}}),Object.defineProperty(t,"TopicId",{enumerable:!0,get:function(){return Ze.default}}),Object.defineProperty(t,"TopicInfo",{enumerable:!0,get:function(){return Je.default}}),Object.defineProperty(t,"TopicInfoQuery",{enumerable:!0,get:function(){return Xe.default}}),Object.defineProperty(t,"TopicMessage",{enumerable:!0,get:function(){return $e.default}}),Object.defineProperty(t,"TopicMessageChunk",{enumerable:!0,get:function(){return et.default}}),Object.defineProperty(t,"TopicMessageQuery",{enumerable:!0,get:function(){return tt.default}}),Object.defineProperty(t,"TopicMessageSubmitTransaction",{enumerable:!0,get:function(){return nt.default}}),Object.defineProperty(t,"TopicUpdateTransaction",{enumerable:!0,get:function(){return rt.default}}),Object.defineProperty(t,"Transaction",{enumerable:!0,get:function(){return ot.default}}),Object.defineProperty(t,"TransactionId",{enumerable:!0,get:function(){return at.default}}),Object.defineProperty(t,"TransactionReceipt",{enumerable:!0,get:function(){return it.default}}),Object.defineProperty(t,"TransactionReceiptQuery",{enumerable:!0,get:function(){return ut.default}}),Object.defineProperty(t,"TransactionRecord",{enumerable:!0,get:function(){return ct.default}}),Object.defineProperty(t,"TransactionRecordQuery",{enumerable:!0,get:function(){return st.default}}),Object.defineProperty(t,"TransactionResponse",{enumerable:!0,get:function(){return lt.default}}),Object.defineProperty(t,"Transfer",{enumerable:!0,get:function(){return ft.default}}),Object.defineProperty(t,"TransferTransaction",{enumerable:!0,get:function(){return dt.default}}),Object.defineProperty(t,"Wallet",{enumerable:!0,get:function(){return pt.default}});var o=n(266),a=r(n(596)),i=r(n(127)),u=r(n(155)),c=r(n(47)),s=r(n(597)),l=r(n(1206)),f=r(n(1232)),d=r(n(613)),p=r(n(614)),h=r(n(1235)),y=r(n(1236)),m=r(n(13)),b=r(n(615)),v=r(n(1238)),k=r(n(1239)),g=r(n(1240)),_=r(n(1241)),w=r(n(1242)),I=r(n(610)),A=r(n(1246)),T=r(n(1247)),O=r(n(1249)),P=r(n(624)),E=r(n(1250)),S=r(n(1251)),R=r(n(273)),D=r(n(354)),C=r(n(620)),N=r(n(60)),B=r(n(625)),M=r(n(1252)),j=r(n(606)),x=r(n(1253)),F=r(n(274)),U=r(n(216)),L=r(n(275)),G=r(n(276)),K=r(n(1254)),z=r(n(351)),Q=r(n(128)),H=r(n(1255)),V=r(n(622)),W=r(n(1256)),q=r(n(621)),Y=r(n(623)),Z=r(n(66)),J=r(n(626)),X=r(n(1257)),$=r(n(1258)),ee=r(n(1259)),te=r(n(31)),ne=r(n(213)),re=r(n(598)),oe=r(n(355)),ae=r(n(1261)),ie=r(n(1262)),ue=r(n(1263)),ce=r(n(627)),se=r(n(1264)),le=r(n(190)),fe=r(n(617)),de=r(n(54)),pe=r(n(1265)),he=r(n(1266)),ye=r(n(158)),me=r(n(629)),be=r(n(1267)),ve=r(n(1268)),ke=r(n(628)),ge=r(n(156)),_e=r(n(1269)),we=r(n(1270)),Ie=r(n(48)),Ae=r(n(214)),Te=r(n(1271)),Oe=r(n(1272)),Pe=r(n(1273)),Ee=r(n(1274)),Se=r(n(1275)),Re=r(n(1276)),De=r(n(1277)),Ce=r(n(1278)),Ne=r(n(29)),Be=r(n(630)),Me=r(n(1279)),je=r(n(1280)),xe=r(n(215)),Fe=r(n(631)),Ue=r(n(1281)),Le=r(n(1282)),Ge=r(n(1283)),Ke=r(n(357)),ze=r(n(356)),Qe=r(n(1284)),He=r(n(1285)),Ve=r(n(1286)),We=r(n(1287)),qe=r(n(1288)),Ye=r(n(1289)),Ze=r(n(129)),Je=r(n(632)),Xe=r(n(1290)),$e=r(n(633)),et=r(n(634)),tt=r(n(1291)),nt=r(n(1293)),rt=r(n(1294)),ot=r(n(24)),at=r(n(82)),it=r(n(272)),ut=r(n(600)),ct=r(n(352)),st=r(n(605)),lt=r(n(599)),ft=r(n(353)),dt=r(n(1295)),pt=r(n(1299)),ht=r(n(1300)),yt=r(n(635)),mt=r(n(1301)),bt=r(n(349)),vt=r(n(212)),kt=r(n(271)),gt=r(n(100));n(1302);t.NetworkName={Mainnet:"mainnet",Testnet:"testnet",Previewnet:"previewnet"}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e,t){(0,i.default)(r,e);var n=s(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:"";return(0,v.createKeystore)(this.toBytesRaw(),e)}}],[{key:"generateED25519",value:function(){return new T(y.default.generate())}},{key:"generateECDSA",value:function(){return new T(m.default.generate())}},{key:"generate",value:function(){return T.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",T.generateED25519Async());case 1:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=T,e.next=3,y.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=T,e.next=3,m.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){try{return new T(y.default.fromBytes(e))}catch(e){}try{return new T(m.default.fromBytes(e))}catch(e){}throw new p.default("invalid private key length: ".concat(e.length," bytes"))}},{key:"fromBytesECDSA",value:function(e){return new T(m.default.fromBytes(e))}},{key:"fromBytesED25519",value:function(e){return new T(y.default.fromBytes(e))}},{key:"fromString",value:function(e){return T.fromBytes(g.decode(e))}},{key:"fromStringECDSA",value:function(e){return T.fromBytesECDSA(g.decode(e))}},{key:"fromStringED25519",value:function(e){return T.fromBytesED25519(g.decode(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"","string"!=typeof t){e.next=7;break}return e.next=4,d.default.fromString(t);case 4:e.t0=e.sent,e.next=8;break;case 7:e.t0=t;case 8:return e.abrupt("return",e.t0.toPrivateKey(n));case 9:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=T,e.next=4,(0,v.loadKeystore)(t,n);case 4:return e.t1=e.sent,e.abrupt("return",e.t0.fromBytes.call(e.t0,e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:"",e.next=3,(0,k.read)(t,n);case 3:if(!((r=e.sent)instanceof y.default||r instanceof m.default)){e.next=6;break}return e.abrupt("return",new T(r));case 6:return e.abrupt("return",T.fromBytes(r));case 7:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),T}(h.default);t.default=S,I.default.privateKeyConstructor=function(e){return new S(e)},I.default.privateKeyFromBytes=function(e){return S.fromBytes(e)}},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=["aback","abbey","abbot","abide","ablaze","able","aboard","abode","abort","abound","about","above","abroad","abrupt","absent","absorb","absurd","abuse","accent","accept","access","accord","accuse","ace","ache","aching","acid","acidic","acorn","acre","across","act","action","active","actor","actual","acute","adam","adapt","add","added","addict","adept","adhere","adjust","admire","admit","adobe","adopt","adrift","adult","adverb","advice","aerial","afar","affair","affect","afford","afghan","afield","afloat","afraid","afresh","after","again","age","agency","agenda","agent","aghast","agile","ago","agony","agree","agreed","ahead","aid","aide","aim","air","airman","airy","akin","alarm","alaska","albeit","album","ale","alert","alibi","alice","alien","alight","align","alike","alive","alkali","all","alley","allied","allow","alloy","ally","almond","almost","aloft","alone","along","aloof","aloud","alpha","alpine","also","altar","alter","always","amaze","amazon","amber","ambush","amen","amend","amid","amidst","amiss","among","amount","ample","amuse","anchor","and","andrew","anew","angel","anger","angle","angry","animal","ankle","annoy","annual","answer","anthem","any","anyhow","anyway","apart","apathy","apex","apiece","appeal","appear","apple","apply","april","apron","arab","arcade","arcane","arch","arctic","ardent","are","area","argue","arid","arise","ark","arm","armful","army","aroma","around","arouse","array","arrest","arrive","arrow","arson","art","artery","artful","artist","ascent","ash","ashen","ashore","aside","ask","asleep","aspect","assay","assent","assert","assess","asset","assign","assist","assume","assure","asthma","astute","asylum","ate","athens","atlas","atom","atomic","attach","attack","attain","attend","attic","auburn","audio","audit","august","aunt","auntie","aura","austin","author","auto","autumn","avail","avenge","avenue","avert","avid","avoid","await","awake","awaken","award","aware","awash","away","awful","awhile","axe","axes","axiom","axis","axle","aye","babe","baby","bach","back","backup","bacon","bad","badge","badly","bag","baggy","bail","bait","bake","baker","bakery","bald","ball","ballad","ballet","ballot","baltic","bamboo","ban","banal","banana","band","bang","bank","bar","barber","bare","barely","barge","bark","barley","barn","baron","barrel","barren","basalt","base","basic","basil","basin","basis","basket","bass","bat","batch","bath","baton","battle","bay","beach","beacon","beak","beam","bean","bear","beard","beast","beat","beauty","become","bed","beech","beef","beefy","beep","beer","beet","beetle","before","beg","beggar","begin","behalf","behave","behind","beige","being","belief","bell","belly","belong","below","belt","bench","bend","benign","bent","berlin","berry","berth","beset","beside","best","bestow","bet","beta","betray","better","beware","beyond","bias","biceps","bicker","bid","big","bigger","bike","bile","bill","bin","binary","bind","biopsy","birch","bird","birdie","birth","bishop","bit","bitch","bite","bitter","black","blade","blame","bland","blast","blaze","bleak","blend","bless","blew","blind","blink","blip","bliss","blitz","block","blond","blood","bloody","bloom","blot","blouse","blow","blue","bluff","blunt","blur","blush","boar","board","boast","boat","bob","bodily","body","bogus","boil","bold","bolt","bomb","bombay","bond","bone","bonn","bonnet","bonus","bony","book","boom","boost","boot","booth","booze","border","bore","borrow","bosom","boss","boston","both","bother","bottle","bottom","bought","bounce","bound","bounty","bout","bovine","bow","bowel","bowl","box","boy","boyish","brace","brain","brainy","brake","bran","branch","brand","brandy","brass","brave","bravo","brazil","breach","bread","break","breast","breath","bred","breed","breeze","brew","bribe","brick","bride","bridge","brief","bright","brim","brine","bring","brink","brisk","broad","broke","broken","bronze","brook","broom","brown","bruise","brush","brutal","brute","bubble","buck","bucket","buckle","budget","buffet","buggy","build","bulb","bulge","bulk","bulky","bull","bullet","bully","bump","bumpy","bunch","bundle","bunk","bunny","burden","bureau","burial","buried","burly","burn","burnt","burrow","burst","bury","bus","bush","bust","bustle","busy","but","butler","butt","butter","button","buy","buyer","buzz","bye","byte","cab","cabin","cable","cache","cactus","caesar","cage","cairo","cajun","cajole","cake","calf","call","caller","calm","calmly","came","camel","camera","camp","campus","can","canada","canal","canary","cancel","cancer","candid","candle","candy","cane","canine","canoe","canopy","canvas","canyon","cap","cape","car","carbon","card","care","career","caress","cargo","carl","carnal","carol","carp","carpet","carrot","carry","cart","cartel","case","cash","cask","cast","castle","casual","cat","catch","cater","cattle","caught","causal","cause","cave","cease","celery","cell","cellar","celtic","cement","censor","census","cent","cereal","chain","chair","chalk","chalky","champ","chance","change","chant","chaos","chap","chapel","charge","charm","chart","chase","chat","cheap","cheat","check","cheek","cheeky","cheer","cheery","cheese","chef","cheque","cherry","chess","chest","chew","chic","chick","chief","child","chile","chill","chilly","chin","china","chip","choice","choir","choose","chop","choppy","chord","chorus","chose","chosen","chris","chrome","chunk","chunky","church","cider","cigar","cinema","circa","circle","circus","cite","city","civic","civil","clad","claim","clammy","clan","clap","clash","clasp","class","clause","claw","clay","clean","clear","clergy","clerk","clever","click","client","cliff","climax","climb","clinch","cling","clinic","clip","cloak","clock","clone","close","closer","closet","cloth","cloud","cloudy","clout","clown","club","clue","clumsy","clung","clutch","coach","coal","coarse","coast","coat","coax","cobalt","cobra","coca","cock","cocoa","code","coffee","coffin","cohort","coil","coin","coke","cold","collar","colon","colony","colt","column","comb","combat","come","comedy","comic","commit","common","compel","comply","concur","cone","confer","congo","consul","convex","convey","convoy","cook","cool","cope","copper","copy","coral","cord","core","cork","corn","corner","corps","corpse","corpus","cortex","cosmic","cosmos","cost","costly","cotton","couch","cough","could","count","county","coup","couple","coupon","course","court","cousin","cove","cover","covert","cow","coward","cowboy","cozy","crab","crack","cradle","craft","crafty","crag","crane","crash","crate","crater","crawl","crazy","creak","cream","creamy","create","credit","creed","creek","creep","creepy","crept","crest","crew","cried","crime","crisis","crisp","critic","crook","crop","cross","crow","crowd","crown","crude","cruel","cruise","crunch","crush","crust","crux","cry","crypt","cuba","cube","cubic","cuckoo","cuff","cult","cup","curb","cure","curfew","curl","curry","curse","cursor","curve","cuss","custom","cut","cute","cycle","cyclic","cynic","czech","dad","daddy","dagger","daily","dairy","daisy","dale","dam","damage","damp","dampen","dance","danger","danish","dare","dark","darken","darn","dart","dash","data","date","david","dawn","day","dead","deadly","deaf","deal","dealer","dean","dear","death","debate","debit","debris","debt","debtor","decade","decay","decent","decide","deck","decor","decree","deduce","deed","deep","deeply","deer","defeat","defect","defend","defer","define","defy","degree","deity","delay","delete","delhi","delta","demand","demise","demo","demure","denial","denote","dense","dental","deny","depart","depend","depict","deploy","depot","depth","deputy","derive","desert","design","desire","desist","desk","detail","detect","deter","detest","detour","device","devise","devoid","devote","devour","dial","diana","diary","dice","dictum","did","die","diesel","diet","differ","dig","digest","digit","dine","dinghy","dinner","diode","dip","dire","direct","dirt","dirty","disc","disco","dish","disk","dismal","dispel","ditch","dive","divert","divide","divine","dizzy","docile","dock","doctor","dog","dogma","dole","doll","dollar","dolly","domain","dome","domino","donate","done","donkey","donor","doom","door","dorsal","dose","dot","double","doubt","dough","dour","dove","down","dozen","draft","drag","dragon","drain","drama","drank","draw","drawer","dread","dream","dreary","dress","drew","dried","drift","drill","drink","drip","drive","driver","drop","drove","drown","drug","drum","drunk","dry","dual","duck","duct","due","duel","duet","duke","dull","duly","dumb","dummy","dump","dune","dung","duress","during","dusk","dust","dusty","dutch","duty","dwarf","dwell","dyer","dying","dynamo","each","eager","eagle","ear","earl","early","earn","earth","ease","easel","easily","east","easter","easy","eat","eaten","eater","echo","eddy","eden","edge","edible","edict","edit","editor","eel","eerie","eerily","effect","effort","egg","ego","eight","eighth","eighty","either","elbow","elder","eldest","elect","eleven","elicit","elite","else","elude","elves","embark","emblem","embryo","emerge","emit","empire","employ","empty","enable","enamel","end","endure","enemy","energy","engage","engine","enjoy","enlist","enough","ensure","entail","enter","entire","entry","envoy","envy","enzyme","epic","epoch","equal","equate","equip","equity","era","erect","eric","erode","erotic","errant","error","escape","escort","essay","essex","estate","esteem","ethic","ethnic","europe","evade","eve","even","event","ever","every","evict","evil","evoke","evolve","exact","exam","exceed","excel","except","excess","excise","excite","excuse","exempt","exert","exile","exist","exit","exodus","exotic","expand","expect","expert","expire","export","expose","extend","extra","eye","eyed","fabric","face","facial","fact","factor","fade","fail","faint","fair","fairly","fairy","faith","fake","falcon","fall","false","falter","fame","family","famine","famous","fan","fancy","far","farce","fare","farm","farmer","fast","fasten","faster","fat","fatal","fate","father","fatty","fault","faulty","fauna","fear","feast","feat","fed","fee","feeble","feed","feel","feet","fell","fellow","felt","female","fence","fend","ferry","fetal","fetch","feudal","fever","few","fewer","fiasco","fiddle","field","fiend","fierce","fiery","fifth","fifty","fig","fight","figure","file","fill","filled","filler","film","filter","filth","filthy","final","finale","find","fine","finery","finger","finish","finite","fire","firm","firmly","first","fiscal","fish","fisher","fist","fit","fitful","five","fix","flag","flair","flak","flame","flank","flap","flare","flash","flask","flat","flavor","flaw","fled","flee","fleece","fleet","flesh","fleshy","flew","flick","flight","flimsy","flint","flirt","float","flock","flood","floor","floppy","flora","floral","flour","flow","flower","fluent","fluffy","fluid","flung","flurry","flush","flute","flux","fly","flyer","foal","foam","focal","focus","fog","foil","fold","folk","follow","folly","fond","fondly","font","food","fool","foot","for","forbid","force","ford","forest","forge","forget","fork","form","formal","format","former","fort","forth","forty","forum","fossil","foster","foul","found","four","fourth","fox","foyer","frail","frame","franc","france","frank","fraud","fred","free","freed","freely","freeze","french","frenzy","fresh","friar","friday","fridge","fried","friend","fright","fringe","frock","frog","from","front","frost","frosty","frown","frozen","frugal","fruit","fry","fudge","fuel","full","fully","fumes","fun","fund","funny","fur","furry","fury","fuse","fusion","fuss","fussy","futile","future","fuzzy","gadget","gain","gala","galaxy","gale","gall","galley","gallon","gallop","gamble","game","gamma","gandhi","gang","gap","garage","garden","garlic","gas","gasp","gate","gather","gauge","gaunt","gave","gaze","gear","geese","gem","gemini","gender","gene","geneva","genial","genius","genre","gentle","gently","gentry","genus","george","germ","get","ghetto","ghost","giant","gift","giggle","gill","gilt","ginger","girl","give","given","glad","glade","glance","gland","glare","glass","glassy","gleam","glee","glide","global","globe","gloom","gloomy","gloria","glory","gloss","glossy","glove","glow","glue","gnat","gnu","goal","goat","gold","golden","golf","gone","gong","goo","good","goose","gore","gorge","gory","gosh","gospel","gossip","got","gothic","govern","gown","grab","grace","grade","grail","grain","grand","grant","grape","graph","grasp","grass","grassy","grate","grave","gravel","gravy","grease","greasy","great","greece","greed","greedy","greek","green","greet","grew","grey","grid","grief","grill","grim","grin","grind","grip","grit","gritty","groan","groin","groom","groove","gross","ground","group","grove","grow","grown","growth","grudge","grunt","guard","guess","guest","guide","guild","guilt","guilty","guise","guitar","gulf","gully","gun","gunman","guru","gut","guy","gypsy","habit","hack","had","hail","hair","hairy","haiti","hale","half","hall","halt","hamlet","hammer","hand","handle","handy","hang","hangar","hanoi","happen","happy","harass","harbor","hard","harder","hardly","hare","harem","harm","harp","harry","harsh","has","hash","hassle","haste","hasten","hasty","hat","hatch","hate","haul","haunt","havana","have","haven","havoc","hawaii","hawk","hay","hazard","haze","hazel","hazy","head","heal","health","heap","hear","heard","heart","hearth","hearty","heat","heater","heaven","heavy","hebrew","heck","hectic","hedge","heel","hefty","height","heir","held","helium","helix","hell","hello","helm","helmet","help","hemp","hence","henry","her","herald","herb","herd","here","hereby","hermes","hernia","hero","heroic","heroin","hey","heyday","hick","hidden","hide","high","higher","highly","hill","him","hind","hinder","hint","hippie","hire","his","hiss","hit","hive","hoard","hoarse","hobby","hockey","hold","holder","hole","hollow","holly","holy","home","honest","honey","hood","hook","hope","horn","horrid","horror","horse","hose","host","hot","hotel","hound","hour","house","hover","how","huge","hull","human","humane","humble","humid","hung","hunger","hungry","hunt","hurdle","hurl","hurry","hurt","hush","hut","hybrid","hymn","hyphen","ice","icing","icon","idaho","idea","ideal","idiom","idiot","idle","idly","idol","ignite","ignore","ill","image","immune","impact","imply","import","impose","inca","incest","inch","income","incur","indeed","index","india","indian","indoor","induce","inept","inert","infant","infect","infer","influx","inform","inject","injure","injury","ink","inlaid","inland","inlet","inmate","inn","innate","inner","input","insane","insect","insert","inset","inside","insist","insult","insure","intact","intake","intend","inter","into","invade","invent","invest","invite","invoke","inward","iowa","iran","iraq","irish","iron","ironic","irony","isaac","isabel","island","isle","israel","issue","italy","itch","item","itself","ivan","ivory","jack","jacket","jacob","jade","jaguar","jail","james","jane","japan","jargon","java","jaw","jazz","jeep","jelly","jerky","jest","jet","jewel","jewish","jim","job","jock","jockey","joe","john","join","joint","joke","jolly","jolt","jordan","joseph","joy","joyful","joyous","judge","judy","juice","juicy","july","jumble","jumbo","jump","june","jungle","junior","junk","junta","jury","just","kansas","karate","karl","keel","keen","keep","keeper","kenya","kept","kernel","kettle","key","khaki","kick","kid","kidnap","kidney","kill","killer","kin","kind","kindly","king","kiss","kite","kitten","knack","knee","kneel","knew","knife","knight","knit","knob","knock","knot","know","known","koran","korea","kuwait","label","lace","lack","lad","ladder","laden","lady","lagoon","laity","lake","lamb","lame","lamp","lance","land","lane","lap","lapse","large","larval","laser","last","latch","late","lately","latent","later","latest","latin","latter","laugh","launch","lava","lavish","law","lawful","lawn","lawyer","lay","layer","layman","lazy","lead","leader","leaf","leafy","league","leak","leaky","lean","leap","learn","lease","leash","least","leave","led","ledge","left","leg","legacy","legal","legend","legion","lemon","lend","length","lens","lent","leo","leper","lesion","less","lessen","lesser","lesson","lest","let","lethal","letter","level","lever","levy","lewis","liable","liar","libel","libya","lice","lick","lid","lie","lied","lier","life","lift","light","like","likely","limb","lime","limit","limp","line","linear","linen","linger","link","lint","lion","lip","liquid","liquor","list","listen","lit","live","lively","liver","liz","lizard","load","loaf","loan","lobby","lobe","local","locate","lock","locus","lodge","loft","lofty","log","logic","logo","london","lone","lonely","long","longer","look","loop","loose","loosen","loot","lord","lorry","lose","loss","lost","lot","lotion","lotus","loud","loudly","lounge","lousy","love","lovely","lover","low","lower","lowest","loyal","lucid","luck","lucky","lucy","lull","lump","lumpy","lunacy","lunar","lunch","lung","lure","lurid","lush","lust","lute","luther","luxury","lying","lymph","lynch","lyric","macho","macro","mad","madam","made","mafia","magic","magma","magnet","magnum","magpie","maid","maiden","mail","main","mainly","major","make","maker","male","malice","mall","malt","mammal","manage","mane","mania","manic","manner","manor","mantle","manual","manure","many","map","maple","marble","march","mare","margin","maria","marina","mark","market","marry","mars","marsh","martin","martyr","mary","mask","mason","mass","mast","master","mat","match","mate","matrix","matter","mature","maxim","may","maybe","mayor","maze","mead","meadow","meal","mean","meant","meat","medal","media","median","medic","medium","meet","mellow","melody","melon","melt","member","memo","memory","menace","mend","mental","mentor","menu","mercy","mere","merely","merge","merger","merit","merry","mesh","mess","messy","met","metal","meter","method","methyl","metric","metro","mexico","miami","mickey","mid","midday","middle","midst","midway","might","mighty","mild","mildew","mile","milk","milky","mill","mimic","mince","mind","mine","mini","mink","minor","mint","minus","minute","mire","mirror","mirth","misery","miss","mist","misty","mite","mix","moan","moat","mob","mobile","mock","mode","model","modem","modern","modest","modify","module","moist","molar","mold","mole","molten","moment","monday","money","monk","monkey","month","mood","moody","moon","moor","moral","morale","morbid","more","morgue","mortal","mortar","mosaic","moscow","moses","mosque","moss","most","mostly","moth","mother","motion","motive","motor","mount","mourn","mouse","mouth","move","movie","mrs","much","muck","mucus","mud","muddle","muddy","mule","mummy","munich","murder","murky","murmur","muscle","museum","music","mussel","must","mutant","mute","mutiny","mutter","mutton","mutual","muzzle","myopic","myriad","myself","mystic","myth","nadir","nail","naked","name","namely","nape","napkin","naples","narrow","nasal","nasty","nathan","nation","native","nature","nausea","naval","nave","navy","near","nearer","nearly","neat","neatly","neck","need","needle","needy","negate","neon","nepal","nephew","nerve","nest","net","neural","never","newly","next","nice","nicely","niche","nickel","niece","night","nile","nimble","nine","ninety","ninth","nobel","noble","nobody","node","noise","noisy","none","noon","nor","norm","normal","north","norway","nose","nosy","not","note","notice","notify","notion","noun","novel","novice","now","nozzle","null","numb","number","nurse","nut","nylon","nymph","oak","oar","oasis","oath","obese","obey","object","oblige","oboe","obtain","obtuse","occult","occupy","occur","ocean","octave","odd","off","offend","offer","office","offset","often","ohio","oil","oily","okay","old","older","oldest","olive","omega","omen","omit","once","one","onion","only","onset","onto","onus","onward","opaque","open","openly","opera","opium","oppose","optic","option","oracle","oral","orange","orbit","orchid","ordeal","order","organ","orgasm","orient","origin","ornate","orphan","oscar","other","otter","ought","ounce","our","out","outer","output","outset","oval","oven","over","overt","owe","owing","owl","own","owner","oxford","oxide","oxygen","oyster","ozone","pace","pack","packet","pact","pad","paddle","paddy","pagan","page","paid","pain","paint","pair","palace","pale","palm","pan","panama","panel","panic","papa","papal","paper","parade","parcel","pardon","parent","paris","parish","park","parody","parrot","part","partly","party","pascal","pass","past","paste","pastel","pastor","pastry","pat","patch","patent","path","patio","patrol","patron","paul","pause","pave","paw","pawn","pay","peace","peach","peak","pear","pearl","pedal","peel","peer","peking","pelvic","pelvis","pen","penal","pence","pencil","penny","people","pepper","per","perch","peril","period","perish","permit","person","peru","pest","pet","peter","petite","petrol","petty","phase","philip","phone","photo","phrase","piano","pick","picket","picnic","pie","piece","pier","pierce","piety","pig","pigeon","piggy","pike","pile","pill","pillar","pillow","pilot","pin","pinch","pine","pink","pint","pious","pipe","pirate","piss","pistol","piston","pit","pitch","pity","pivot","pixel","pizza","place","placid","plague","plain","plan","plane","planet","plank","plant","plasma","plate","play","player","plea","plead","please","pledge","plenty","plight","plot","plough","ploy","plug","plum","plump","plunge","plural","plus","plush","pocket","poem","poet","poetic","poetry","point","poison","poland","polar","pole","police","policy","polish","polite","poll","pollen","polo","pond","ponder","pony","pool","poor","poorly","pop","poppy","pore","pork","port","portal","pose","posh","post","postal","pot","potato","potent","pouch","pound","pour","powder","power","praise","pray","prayer","preach","prefer","prefix","press","pretty","price","pride","priest","primal","prime","prince","print","prior","prism","prison","privy","prize","probe","profit","prompt","prone","proof","propel","proper","prose","proton","proud","prove","proven","proxy","prune","pry","psalm","pseudo","psyche","pub","public","puff","pull","pulp","pulpit","pulsar","pulse","pump","punch","punish","punk","pupil","puppet","puppy","pure","purely","purge","purify","purple","purse","pursue","push","pushy","put","putt","puzzle","quaint","quake","quarry","quart","quartz","quebec","queen","queer","query","quest","queue","quick","quid","quiet","quilt","quirk","quit","quite","quiver","quiz","quota","quote","rabbit","race","racial","racism","rack","racket","radar","radio","radish","radius","raffle","raft","rage","raid","rail","rain","rainy","raise","rake","rally","ramp","random","range","rank","ransom","rape","rapid","rare","rarely","rarity","rash","rat","rate","rather","ratify","ratio","rattle","rave","raven","raw","ray","razor","reach","react","read","reader","ready","real","really","realm","reap","rear","reason","rebel","recall","recent","recess","recipe","reckon","record","recoup","rector","red","redeem","redo","reduce","reed","reef","reek","refer","reform","refuge","refuse","regal","regard","regent","regime","region","regret","reign","reject","relate","relax","relay","relic","relief","relish","rely","remain","remark","remedy","remind","remit","remote","remove","renal","render","rent","rental","repair","repeal","repeat","repent","reply","report","rescue","resent","reside","resign","resin","resist","resort","rest","result","resume","retail","retain","retina","retire","return","reveal","review","revise","revive","revolt","reward","rex","rhine","rhino","rhyme","rhythm","ribbon","rice","rich","rick","rid","ride","rider","ridge","rife","rifle","rift","right","rigid","rile","rim","ring","rinse","riot","ripe","ripen","ripple","rise","risk","risky","rite","ritual","ritz","rival","river","road","roar","roast","rob","robe","robert","robin","robot","robust","rock","rocket","rocky","rod","rode","rodent","rogue","role","roll","roman","rome","roof","room","root","rope","rose","rosy","rot","rotate","rotor","rotten","rouge","rough","round","route","rover","row","royal","rub","rubber","rubble","ruby","rudder","rude","rug","rugby","ruin","rule","ruler","rumble","rump","run","rune","rung","runway","rural","rush","russia","rust","rustic","rusty","sack","sacred","sad","saddle","sadism","sadly","safari","safe","safely","safer","safety","saga","sage","sahara","said","sail","sailor","saint","sake","salad","salary","sale","saline","saliva","salmon","saloon","salt","salty","salute","sam","same","sample","sand","sandy","sane","sash","satin","satire","saturn","sauce","saucer","saudi","sauna","savage","save","saw","say","scale","scalp","scan","scant","scar","scarce","scare","scarf","scary","scene","scenic","scent","school","scold","scope","score","scorn","scotch","scott","scout","scrap","scrape","scream","screen","screw","script","scroll","scrub","scum","sea","seal","seam","seaman","search","season","seat","second","secret","sect","sector","secure","see","seed","seeing","seek","seem","seize","seldom","select","self","sell","seller","semi","senate","send","senile","senior","sense","sensor","sent","sentry","seoul","sequel","serene","serial","series","sermon","serum","serve","server","set","settle","seven","severe","sew","sewage","shabby","shade","shadow","shady","shaft","shaggy","shah","shake","shaky","shall","sham","shame","shape","share","shark","sharp","shawl","she","shear","sheen","sheep","sheer","sheet","shelf","shell","sherry","shield","shift","shine","shiny","ship","shire","shirk","shirt","shiver","shock","shoe","shook","shoot","shop","shore","short","shot","should","shout","show","shower","shrank","shrewd","shrill","shrimp","shrine","shrink","shrub","shrug","shut","shy","shyly","sick","side","siege","sigh","sight","sigma","sign","signal","silent","silk","silken","silky","sill","silly","silo","silver","simple","simply","since","sinful","sing","singer","single","sink","sir","sire","siren","sister","sit","site","sitter","six","sixth","sixty","size","sketch","skill","skin","skinny","skip","skirt","skull","sky","slab","slack","slain","slam","slang","slap","slat","slate","slave","sleek","sleep","sleepy","sleeve","slice","slick","slid","slide","slight","slim","slimy","sling","slip","slit","slogan","slope","sloppy","slot","slow","slowly","slug","slum","slump","smack","small","smart","smash","smear","smell","smelly","smelt","smile","smite","smoke","smoky","smooth","smug","snack","snail","snake","snap","snatch","sneak","snow","snowy","snug","soak","soap","sober","soccer","social","sock","socket","socks","soda","sodden","sodium","sofa","soft","soften","softly","soggy","soil","solar","sold","sole","solely","solemn","solid","solo","solve","some","son","sonar","sonata","song","sonic","sony","soon","sooner","soot","soothe","sordid","sore","sorrow","sorry","sort","soul","sound","soup","sour","source","soviet","sow","space","spade","spain","span","spare","spark","sparse","spasm","spat","spate","speak","spear","speech","speed","speedy","spell","spend","sphere","spice","spicy","spider","spiky","spill","spin","spinal","spine","spiral","spirit","spit","spite","splash","split","spoil","spoke","sponge","spoon","sport","spot","spouse","spray","spread","spree","spring","sprint","spur","squad","square","squash","squat","squid","stab","stable","stack","staff","stage","stain","stair","stairs","stake","stale","stall","stamp","stance","stand","staple","star","starch","stare","stark","start","starve","state","static","statue","status","stay","stead","steady","steak","steal","steam","steel","steep","steer","stem","stench","step","stereo","stern","stew","stick","sticky","stiff","stifle","stigma","still","sting","stint","stir","stitch","stock","stocky","stone","stony","stool","stop","store","storm","stormy","story","stout","stove","stow","strain","strait","strand","strap","strata","straw","stray","streak","stream","street","stress","strict","stride","strife","strike","string","strip","stripe","strive","stroke","stroll","strong","stud","studio","study","stuff","stuffy","stunt","stupid","sturdy","style","submit","subtle","subtly","suburb","such","sudden","sue","suez","suffer","sugar","suit","suite","suitor","sullen","sultan","sum","summer","summit","summon","sun","sunday","sunny","sunset","super","superb","supper","supple","supply","sure","surely","surf","surge","survey","suture","swamp","swan","swap","swarm","sway","swear","sweat","sweaty","sweden","sweep","sweet","swell","swift","swim","swine","swing","swirl","swiss","switch","sword","swore","sydney","symbol","synod","syntax","syria","syrup","system","table","tablet","taboo","tacit","tackle","tact","tactic","tail","tailor","taiwan","take","tale","talent","talk","tall","tally","tame","tampa","tan","tandem","tangle","tank","tap","tape","target","tariff","tarp","tart","tarzan","task","taste","tasty","tattoo","taurus","taut","tavern","tax","taxi","tea","teach","teak","team","tear","tease","tech","teeth","tell","temper","temple","tempo","tempt","ten","tenant","tend","tender","tendon","tennis","tenor","tense","tent","tenth","tenure","teresa","term","terror","terse","test","texas","text","thank","thaw","them","theme","thence","theory","there","these","thesis","they","thick","thief","thigh","thin","thing","think","third","thirst","thirty","this","thomas","thorn","those","though","thread","threat","three","thrill","thrive","throat","throne","throng","throw","thrust","thud","thug","thumb","thus","thyme","tibet","tick","ticket","tidal","tide","tidy","tie","tier","tiger","tight","tile","till","tilt","timber","time","timid","tin","tiny","tip","tire","tissue","title","toad","toast","today","toe","toilet","token","tokyo","told","toll","tom","tomato","tomb","tonal","tone","tongue","tonic","too","took","tool","tooth","top","topaz","topic","torch","torque","torso","tort","toss","total","touch","tough","tour","toward","towel","tower","town","toxic","toxin","toy","trace","track","tract","trade","tragic","trail","train","trait","tram","trance","trap","trauma","travel","tray","tread","treat","treaty","treble","tree","trek","tremor","trench","trend","trendy","trial","tribal","tribe","trick","tricky","tried","trifle","trim","trio","trip","triple","troop","trophy","trot","trough","trout","truce","truck","true","truly","trunk","trust","truth","try","tube","tumble","tuna","tundra","tune","tunic","tunnel","turban","turf","turk","turkey","turn","turtle","tutor","tweed","twelve","twenty","twice","twin","twist","two","tycoon","tying","type","tyrant","ugly","ulcer","ultra","umpire","unable","uncle","under","uneasy","unfair","unify","union","unique","unit","unite","unity","unlike","unrest","unruly","until","update","upheld","uphill","uphold","upon","upper","uproar","upset","upshot","uptake","upturn","upward","urban","urge","urgent","urging","urine","usable","usage","use","useful","user","usual","utmost","utter","vacant","vacuum","vague","vain","valet","valid","valley","value","valve","van","vanish","vanity","vary","vase","vast","vat","vault","vector","veil","vein","velvet","vendor","veneer","venice","venom","vent","venue","venus","verb","verbal","verge","verify","verity","verse","versus","very","vessel","vest","vet","veto","via","viable","vicar","vice","victim","victor","video","vienna","view","vigil","viking","vile","villa","vine","vinyl","viola","violet","violin","viral","virgo","virtue","virus","visa","vision","visit","visual","vital","vivid","vocal","vodka","vogue","voice","void","volley","volume","vote","vowel","voyage","vulgar","wade","wage","waist","wait","waiter","wake","walk","walker","wall","wallet","walnut","wander","want","war","warden","warm","warmth","warn","warp","warsaw","wary","was","wash","wasp","waste","watch","water","watery","wave","wax","way","weak","weaken","wealth","weapon","wear","weary","weave","wedge","wee","weed","week","weekly","weep","weigh","weight","weird","well","were","west","wet","whale","wharf","what","wheat","wheel","when","whence","where","which","whiff","while","whim","whip","whisky","white","who","whole","wholly","whom","whose","why","wicked","wide","widely","widen","wider","widow","width","wife","wig","wild","wildly","will","willow","wily","win","wind","window","windy","wine","wing","wink","winner","winter","wipe","wire","wisdom","wise","wish","wit","witch","with","within","witty","wizard","woke","wolf","wolves","woman","womb","won","wonder","wood","wooden","woods","woody","wool","word","work","worker","world","worm","worry","worse","worst","worth","worthy","would","wound","wrap","wrath","wreath","wreck","wring","wrist","writ","write","writer","wrong","xerox","yacht","yale","yard","yarn","yeah","year","yeard","yeast","yellow","yet","yield","yogurt","yolk","you","young","your","youth","zaire","zeal","zebra","zenith","zero","zeus","zigzag","zinc","zombie","zone"]},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"]},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.bytesToBits=y,t.convertRadix=h,t.crc8=function(e){for(var t=255,n=0;n>>1^(0==(1&t)?0:178)}return 255^t},t.legacy1=function(e,t){for(var n=h(e.map((function(e){return t.indexOf(e.toLowerCase())})),t.length,256,33),r=n[n.length-1],o=new Uint8Array(n.length-1),a=0;a=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;l-=1){var d=a.dividedToIntegerBy(n),p=a.modulo(n);a=d,s[l]=p.toNumber()}return s}function y(e){var t=[];t.fill(!1,0,8*e.length);for(var n=0;n>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],m=e[1],W=e[11]<<4|e[10]>>>28,q=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,b=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,k=e[25]<<11|e[24]>>>21,g=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,P=e[18]<<20|e[19]>>>12,E=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,G=e[38]<<8|e[39]>>>24,K=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~b&k,e[1]=m^~v&g,e[10]=T^~P&S,e[11]=O^~E&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~W&Y,e[31]=V^~q&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=b^~k&_,e[3]=v^~g&w,e[12]=P^~S&D,e[13]=E^~R&C,e[22]=x^~U&G,e[23]=F^~L&K,e[32]=W^~Y&J,e[33]=q^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=k^~_&I,e[5]=g^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~G&z,e[25]=L^~K&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&m,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=G^~z&M,e[27]=K^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&b,e[9]=A^~m&v,e[18]=N^~T&P,e[19]=B^~O&E,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&W,e[39]=ee^~V&q,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];b%f==0&&(c(p),n=0)}return"0x"+m}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e,t,n){"use strict";var r=t;r.version=n(1181).version,r.utils=n(80),r.rand=n(588),r.curve=n(589),r.curves=n(347),r.ec=n(1193),r.eddsa=n(1197)},function(e){e.exports=JSON.parse('{"_args":[["elliptic@6.5.4","/Users/patmat/projects/Arianelabs-hweb3.js/packages/hweb3-hed-contract"]],"_from":"elliptic@6.5.4","_id":"elliptic@6.5.4","_inBundle":false,"_integrity":"sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==","_location":"/elliptic","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"elliptic@6.5.4","name":"elliptic","escapedName":"elliptic","rawSpec":"6.5.4","saveSpec":null,"fetchSpec":"6.5.4"},"_requiredBy":["/@hashgraph/cryptography"],"_resolved":"https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz","_spec":"6.5.4","_where":"/Users/patmat/projects/Arianelabs-hweb3.js/packages/hweb3-hed-contract","author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"bugs":{"url":"https://github.com/indutny/elliptic/issues"},"dependencies":{"bn.js":"^4.11.9","brorand":"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1","inherits":"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"},"description":"EC cryptography","devDependencies":{"brfs":"^2.0.2","coveralls":"^3.1.0","eslint":"^7.6.0","grunt":"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.5","mocha":"^8.0.1"},"files":["lib"],"homepage":"https://github.com/indutny/elliptic","keywords":["EC","Elliptic","curve","Cryptography"],"license":"MIT","main":"lib/elliptic.js","name":"elliptic","repository":{"type":"git","url":"git+ssh://git@github.com/indutny/elliptic.git"},"scripts":{"lint":"eslint lib test","lint:fix":"npm run lint -- --fix","test":"npm run lint && npm run unit","unit":"istanbul test _mocha --reporter=spec test/index.js","version":"grunt dist && git add dist/"},"version":"6.5.4"}')},function(e,t){},function(e,t,n){"use strict";var r=n(80),o=n(10),a=n(270),i=n(269),u=r.assert;function c(e){i.call(this,"short",e),this.a=new o(e.a,16).toRed(this.red),this.b=new o(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function s(e,t,n,r){i.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new o(t,16),this.y=new o(n,16),r&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function l(e,t,n,r){i.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===r?(this.x=this.curve.one,this.y=this.curve.one,this.z=new o(0)):(this.x=new o(t,16),this.y=new o(n,16),this.z=new o(r,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}a(c,i),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new o(e.beta,16).toRed(this.red);else{var r=this._getEndoRoots(this.p);t=(t=r[0].cmp(r[1])<0?r[0]:r[1]).toRed(this.red)}if(e.lambda)n=new o(e.lambda,16);else{var a=this._getEndoRoots(this.n);0===this.g.mul(a[0]).x.cmp(this.g.x.redMul(t))?n=a[0]:(n=a[1],u(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new o(e.a,16),b:new o(e.b,16)}})):this._getEndoBasis(n)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:o.mont(e),n=new o(2).toRed(t).redInvm(),r=n.redNeg(),a=new o(3).toRed(t).redNeg().redSqrt().redMul(n);return[r.redAdd(a).fromRed(),r.redSub(a).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,n,r,a,i,u,c,s,l,f=this.n.ushrn(Math.floor(this.n.bitLength()/2)),d=e,p=this.n.clone(),h=new o(1),y=new o(0),m=new o(0),b=new o(1),v=0;0!==d.cmpn(0);){var k=p.div(d);s=p.sub(k.mul(d)),l=m.sub(k.mul(h));var g=b.sub(k.mul(y));if(!r&&s.cmp(f)<0)t=c.neg(),n=h,r=s.neg(),a=l;else if(r&&2==++v)break;c=s,p=d,d=s,m=h,h=l,b=y,y=g}i=s.neg(),u=l;var _=r.sqr().add(a.sqr());return i.sqr().add(u.sqr()).cmp(_)>=0&&(i=t,u=n),r.negative&&(r=r.neg(),a=a.neg()),i.negative&&(i=i.neg(),u=u.neg()),[{a:r,b:a},{a:i,b:u}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],r=t[1],o=r.b.mul(e).divRound(this.n),a=n.b.neg().mul(e).divRound(this.n),i=o.mul(n.a),u=a.mul(r.a),c=o.mul(n.b),s=a.mul(r.b);return{k1:e.sub(i).sub(u),k2:c.add(s).neg()}},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var a=r.fromRed().isOdd();return(t&&!a||!t&&a)&&(r=r.redNeg()),this.point(e,r)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,r=this.a.redMul(t),o=t.redSqr().redMul(t).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(o).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,n){for(var r=this._endoWnafT1,o=this._endoWnafT2,a=0;a":""},s.prototype.isInfinity=function(){return this.inf},s.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var n=t.redSqr().redISub(this.x).redISub(e.x),r=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},s.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,n=this.x.redSqr(),r=e.redInvm(),o=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(r),a=o.redSqr().redISub(this.x.redAdd(this.x)),i=o.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,i)},s.prototype.getX=function(){return this.x.fromRed()},s.prototype.getY=function(){return this.y.fromRed()},s.prototype.mul=function(e){return e=new o(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o):this.curve._wnafMulAdd(1,r,o,2)},s.prototype.jmulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o,!0):this.curve._wnafMulAdd(1,r,o,2,!0)},s.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},s.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,r=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return t},s.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},a(l,i.BasePoint),c.prototype.jpoint=function(e,t,n){return new l(this,e,t,n)},l.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),r=this.y.redMul(t).redMul(e);return this.curve.point(n,r)},l.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},l.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(t),o=e.x.redMul(n),a=this.y.redMul(t.redMul(e.z)),i=e.y.redMul(n.redMul(this.z)),u=r.redSub(o),c=a.redSub(i);if(0===u.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var s=u.redSqr(),l=s.redMul(u),f=r.redMul(s),d=c.redSqr().redIAdd(l).redISub(f).redISub(f),p=c.redMul(f.redISub(d)).redISub(a.redMul(l)),h=this.z.redMul(e.z).redMul(u);return this.curve.jpoint(d,p,h)},l.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,r=e.x.redMul(t),o=this.y,a=e.y.redMul(t).redMul(this.z),i=n.redSub(r),u=o.redSub(a);if(0===i.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=i.redSqr(),s=c.redMul(i),l=n.redMul(c),f=u.redSqr().redIAdd(s).redISub(l).redISub(l),d=u.redMul(l.redISub(f)).redISub(o.redMul(s)),p=this.z.redMul(i);return this.curve.jpoint(f,d,p)},l.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t=0)return!1;if(n.redIAdd(o),0===this.x.cmp(n))return!0}},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t,n){"use strict";var r=n(10),o=n(270),a=n(269),i=n(80);function u(e){a.call(this,"mont",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.i4=new r(4).toRed(this.red).redInvm(),this.two=new r(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,n){a.BasePoint.call(this,e,"projective"),null===t&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new r(t,16),this.z=new r(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}o(u,a),e.exports=u,u.prototype.validate=function(e){var t=e.normalize().x,n=t.redSqr(),r=n.redMul(t).redAdd(n.redMul(this.a)).redAdd(t);return 0===r.redSqrt().redSqr().cmp(r)},o(c,a.BasePoint),u.prototype.decodePoint=function(e,t){return this.point(i.toArray(e,t),1)},u.prototype.point=function(e,t){return new c(this,e,t)},u.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),n=e.redSub(t),r=e.redMul(t),o=n.redMul(t.redAdd(this.curve.a24.redMul(n)));return this.curve.point(r,o)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var n=this.x.redAdd(this.z),r=this.x.redSub(this.z),o=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(n),i=o.redMul(r),u=t.z.redMul(a.redAdd(i).redSqr()),c=t.x.redMul(a.redISub(i).redSqr());return this.curve.point(u,c)},c.prototype.mul=function(e){for(var t=e.clone(),n=this,r=this.curve.point(null,null),o=[];0!==t.cmpn(0);t.iushrn(1))o.push(t.andln(1));for(var a=o.length-1;a>=0;a--)0===o[a]?(n=n.diffAdd(r,this),r=r.dbl()):(r=n.diffAdd(r,this),n=n.dbl());return r},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,n){"use strict";var r=n(80),o=n(10),a=n(270),i=n(269),u=r.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,i.call(this,"edwards",e),this.a=new o(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new o(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new o(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),u(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function s(e,t,n,r,a){i.BasePoint.call(this,e,"projective"),null===t&&null===n&&null===r?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new o(t,16),this.y=new o(n,16),this.z=r?new o(r,16):this.curve.one,this.t=a&&new o(a,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}a(c,i),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,n,r){return this.point(e,t,n,r)},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=this.c2.redSub(this.a.redMul(n)),a=this.one.redSub(this.c2.redMul(this.d).redMul(n)),i=r.redMul(a.redInvm()),u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");var c=u.fromRed().isOdd();return(t&&!c||!t&&c)&&(u=u.redNeg()),this.point(e,u)},c.prototype.pointFromY=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=n.redSub(this.c2),a=n.redMul(this.d).redMul(this.c2).redSub(this.a),i=r.redMul(a.redInvm());if(0===i.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");return u.fromRed().isOdd()!==t&&(u=u.redNeg()),this.point(u,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),n=e.y.redSqr(),r=t.redMul(this.a).redAdd(n),o=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(n)));return 0===r.cmp(o)},a(s,i.BasePoint),c.prototype.pointFromJSON=function(e){return s.fromJSON(this,e)},c.prototype.point=function(e,t,n,r){return new s(this,e,t,n,r)},s.fromJSON=function(e,t){return new s(e,t[0],t[1],t[2])},s.prototype.inspect=function(){return this.isInfinity()?"":""},s.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},s.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var r=this.curve._mulA(e),o=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=r.redAdd(t),i=a.redSub(n),u=r.redSub(t),c=o.redMul(i),s=a.redMul(u),l=o.redMul(u),f=i.redMul(a);return this.curve.point(c,s,f,l)},s.prototype._projDbl=function(){var e,t,n,r,o,a,i=this.x.redAdd(this.y).redSqr(),u=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var s=(r=this.curve._mulA(u)).redAdd(c);this.zOne?(e=i.redSub(u).redSub(c).redMul(s.redSub(this.curve.two)),t=s.redMul(r.redSub(c)),n=s.redSqr().redSub(s).redSub(s)):(o=this.z.redSqr(),a=s.redSub(o).redISub(o),e=i.redSub(u).redISub(c).redMul(a),t=s.redMul(r.redSub(c)),n=s.redMul(a))}else r=u.redAdd(c),o=this.curve._mulC(this.z).redSqr(),a=r.redSub(o).redSub(o),e=this.curve._mulC(i.redISub(r)).redMul(a),t=this.curve._mulC(r).redMul(u.redISub(c)),n=r.redMul(a);return this.curve.point(e,t,n)},s.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},s.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),r=this.t.redMul(this.curve.dd).redMul(e.t),o=this.z.redMul(e.z.redAdd(e.z)),a=n.redSub(t),i=o.redSub(r),u=o.redAdd(r),c=n.redAdd(t),s=a.redMul(i),l=u.redMul(c),f=a.redMul(c),d=i.redMul(u);return this.curve.point(s,l,d,f)},s.prototype._projAdd=function(e){var t,n,r=this.z.redMul(e.z),o=r.redSqr(),a=this.x.redMul(e.x),i=this.y.redMul(e.y),u=this.curve.d.redMul(a).redMul(i),c=o.redSub(u),s=o.redAdd(u),l=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(i),f=r.redMul(c).redMul(l);return this.curve.twisted?(t=r.redMul(s).redMul(i.redSub(this.curve._mulA(a))),n=c.redMul(s)):(t=r.redMul(s).redMul(i.redSub(a)),n=this.curve._mulC(c).redMul(s)),this.curve.point(f,t,n)},s.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},s.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!1)},s.prototype.jmulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!0)},s.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},s.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},s.prototype.getX=function(){return this.normalize(),this.x.fromRed()},s.prototype.getY=function(){return this.normalize(),this.y.fromRed()},s.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},s.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var n=e.clone(),r=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(r),0===this.x.cmp(t))return!0}},s.prototype.toP=s.prototype.normalize,s.prototype.mixedAdd=s.prototype.add},function(e,t,n){"use strict";t.sha1=n(1187),t.sha224=n(1188),t.sha256=n(591),t.sha384=n(1189),t.sha512=n(592)},function(e,t,n){"use strict";var r=n(98),o=n(210),a=n(590),i=r.rotl32,u=r.sum32,c=r.sum32_5,s=a.ft_1,l=o.BlockHash,f=[1518500249,1859775393,2400959708,3395469782];function d(){if(!(this instanceof d))return new d;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}r.inherits(d,l),e.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;rthis.blockSize&&(e=(new this.Hash).update(e).digest()),o(e.length<=this.blockSize);for(var t=e.length;t0))return i.iaddn(1),this.keyFromPrivate(i)}},d.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,n,i){"object"===(0,r.default)(n)&&(i=n,n=null),i||(i={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new o(e,16));for(var u=this.n.byteLength(),c=t.getPrivate().toArray("be",u),s=e.toArray("be",u),l=new a({hash:this.hash,entropy:c,nonce:s,pers:i.pers,persEnc:i.persEnc||"utf8"}),d=this.n.sub(new o(1)),p=0;;p++){var h=i.k?i.k(p):new o(l.generate(this.n.byteLength()));if(!((h=this._truncateToN(h,!0)).cmpn(1)<=0||h.cmp(d)>=0)){var y=this.g.mul(h);if(!y.isInfinity()){var m=y.getX(),b=m.umod(this.n);if(0!==b.cmpn(0)){var v=h.invm(this.n).mul(b.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var k=(y.getY().isOdd()?1:0)|(0!==m.cmp(b)?2:0);return i.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),k^=1),new f({r:b,s:v,recoveryParam:k})}}}}}},d.prototype.verify=function(e,t,n,r){e=this._truncateToN(new o(e,16)),n=this.keyFromPublic(n,r);var a=(t=new f(t,"hex")).r,i=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var u,c=i.invm(this.n),s=c.mul(e).umod(this.n),l=c.mul(a).umod(this.n);return this.curve._maxwellTrick?!(u=this.g.jmulAdd(s,n.getPublic(),l)).isInfinity()&&u.eqXToP(a):!(u=this.g.mulAdd(s,n.getPublic(),l)).isInfinity()&&0===u.getX().umod(this.n).cmp(a)},d.prototype.recoverPubKey=function(e,t,n,r){s((3&n)===n,"The recovery param is more than two bits"),t=new f(t,r);var a=this.n,i=new o(e),u=t.r,c=t.s,l=1&n,d=n>>1;if(u.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");u=d?this.curve.pointFromX(u.add(this.curve.n),l):this.curve.pointFromX(u,l);var p=t.r.invm(a),h=a.sub(i).mul(p).umod(a),y=c.mul(p).umod(a);return this.g.mulAdd(h,u,y)},d.prototype.getKeyRecoveryParam=function(e,t,n,r){if(null!==(t=new f(t,r)).recoveryParam)return t.recoveryParam;for(var o=0;o<4;o++){var a;try{a=this.recoverPubKey(e,t,o)}catch(e){continue}if(a.eq(n))return o}throw new Error("Unable to find valid recovery factor")}},function(e,t,n){"use strict";var r=n(348),o=n(587),a=n(154);function i(e){if(!(this instanceof i))return new i(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=o.toArray(e.entropy,e.entropyEnc||"hex"),n=o.toArray(e.nonce,e.nonceEnc||"hex"),r=o.toArray(e.pers,e.persEnc||"hex");a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,r)}e.exports=i,i.prototype._init=function(e,t,n){var r=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var o=0;o=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},i.prototype.generate=function(e,t,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(r=n,n=t,t=null),n&&(n=o.toArray(n,r||"hex"),this._update(n));for(var a=[];a.length"}},function(e,t,n){"use strict";var r=n(10),o=n(80),a=o.assert;function i(e,t){if(e instanceof i)return e;this._importDER(e,t)||(a(e.r&&e.s,"Signature without r or s"),this.r=new r(e.r,16),this.s=new r(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function u(){this.place=0}function c(e,t){var n=e[t.place++];if(!(128&n))return n;var r=15&n;if(0===r||r>4)return!1;for(var o=0,a=0,i=t.place;a>>=0;return!(o<=127)&&(t.place=i,o)}function s(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}e.exports=i,i.prototype._importDER=function(e,t){e=o.toArray(e,t);var n=new u;if(48!==e[n.place++])return!1;var a=c(e,n);if(!1===a)return!1;if(a+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var i=c(e,n);if(!1===i)return!1;var s=e.slice(n.place,i+n.place);if(n.place+=i,2!==e[n.place++])return!1;var l=c(e,n);if(!1===l)return!1;if(e.length!==l+n.place)return!1;var f=e.slice(n.place,l+n.place);if(0===s[0]){if(!(128&s[1]))return!1;s=s.slice(1)}if(0===f[0]){if(!(128&f[1]))return!1;f=f.slice(1)}return this.r=new r(s),this.s=new r(f),this.recoveryParam=null,!0},i.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=s(t),n=s(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];l(r,t.length),(r=r.concat(t)).push(2),l(r,n.length);var a=r.concat(n),i=[48];return l(i,a.length),i=i.concat(a),o.encode(i,e)}},function(e,t,n){"use strict";var r=n(348),o=n(347),a=n(80),i=a.assert,u=a.parseBytes,c=n(1198),s=n(1199);function l(e){if(i("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof l))return new l(e);e=o[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=r.sha512}e.exports=l,l.prototype.sign=function(e,t){e=u(e);var n=this.keyFromSecret(t),r=this.hashInt(n.messagePrefix(),e),o=this.g.mul(r),a=this.encodePoint(o),i=this.hashInt(a,n.pubBytes(),e).mul(n.priv()),c=r.add(i).umod(this.curve.n);return this.makeSignature({R:o,S:c,Rencoded:a})},l.prototype.verify=function(e,t,n){e=u(e),t=this.makeSignature(t);var r=this.keyFromPublic(n),o=this.hashInt(t.Rencoded(),r.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(r.pub().mul(o)).eq(a)},l.prototype.hashInt=function(){for(var e=this.hash(),t=0;t=1&&"ident"in t.seq[0]))throw new Error("error parsing AlgorithmIdentifier from ".concat(JSON.stringify(t)));this.algIdent=t.seq[0].ident,this.parameters=t.seq[1]}return(0,c.default)(e,[{key:"toString",value:function(){return JSON.stringify(this)}}]),e}();t.AlgorithmIdentifier=y;var m=function e(t){if((0,u.default)(this,e),!("seq"in t)||2!==t.seq.length)throw new Error("error parsing PBES2Params from ".concat(JSON.stringify(t)));this.kdf=new y(t.seq[0]),this.encScheme=new y(t.seq[1])},b=function e(t){if((0,u.default)(this,e),"seq"in t&&t.seq.length>=2&&"bytes"in t.seq[0]&&"int"in t.seq[1]&&(this.salt=t.seq[0].bytes,this.iterCount=t.seq[1].int,t.seq.length>2))return"seq"in t.seq[2]?void(this.prf=new y(t.seq[2])):("int"in t.seq[2]&&(this.keyLength=t.seq[2].int),void(4===t.seq.length&&(this.prf=new y(t.seq[3]))));throw new Error("error parsing PBKDF2Params from ".concat(JSON.stringify(t)))},v=function(){function e(t){if((0,u.default)(this,e),!("seq"in t)||3!==t.seq.length)throw new Error("error parsing PrivateKeyInfo from ".concat(JSON.stringify(t)));if(!("int"in t.seq[0])||0!==t.seq[0].int)throw new Error("expected version = 0, got ".concat(JSON.stringify(t.seq[0])));if(this.version=0,this.algId=new y(t.seq[1]),!("bytes"in t.seq[2]))throw new Error("expected octet string as 3rd element, got ".concat(JSON.stringify(t.seq[2])));this.privateKey=t.seq[2].bytes}return(0,c.default)(e,null,[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.PrivateKeyInfo=v;var k=function(){function e(t){if((0,u.default)(this,e),"seq"in t&&2===t.seq.length&&"bytes"in t.seq[1])return this.algId=new y(t.seq[0]),void(this.data=t.seq[1].bytes);throw new Error("error parsing EncryptedPrivateKeyInfo from ".concat(JSON.stringify(t)))}var t;return(0,c.default)(e,[{key:"decrypt",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("1.2.840.113549.1.5.13"===this.algId.algIdent&&this.algId.parameters){e.next=2;break}throw new Error("unsupported key encryption algorithm: ".concat(this.algId.toString()));case 2:if("1.2.840.113549.1.5.12"===(n=new m(this.algId.parameters)).kdf.algIdent&&n.kdf.parameters){e.next=5;break}throw new Error("unsupported key derivation function: ".concat(n.kdf.toString()));case 5:if((r=new b(n.kdf.parameters)).prf){e.next=10;break}throw new Error("unsupported PRF HMAC-SHA-1");case 10:if("1.2.840.113549.2.9"===r.prf.algIdent){e.next=12;break}throw new Error("unsupported PRF ".concat(r.prf.toString()));case 12:if("2.16.840.1.101.3.4.1.2"===n.encScheme.algIdent){e.next=14;break}throw new Error("unsupported encryption scheme: ".concat(n.encScheme.toString()));case 14:if(n.encScheme.parameters&&"bytes"in n.encScheme.parameters){e.next=16;break}throw new Error("expected IV as bytes for AES-128-CBC, "+"got: ".concat(JSON.stringify(n.encScheme.parameters)));case 16:return o=r.keyLength||16,i=n.encScheme.parameters.bytes,e.next=20,f.deriveKey(d.HashAlgorithm.Sha256,t,r.salt,r.iterCount,o);case 20:return u=e.sent,e.next=23,s.createDecipheriv(s.CipherAlgorithm.Aes128Cbc,u,i,this.data);case 23:return c=e.sent,e.abrupt("return",v.parse(c));case 25:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}],[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.EncryptedPrivateKeyInfo=k},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return Uint8Array.from(atob(e),(function(e){return e.charCodeAt(0)}))},t.encode=function(e){return btoa(String.fromCharCode.apply(null,Array.from(e)))}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.legacy=function(e,t){var n=new Uint8Array(e.length+8);n.set(e,0);var r=new DataView(n.buffer,n.byteOffset,n.byteLength);0xffffffffff===t?(r.setInt32(e.length+0,255),r.setInt32(e.length+4,-1)):(r.setInt32(e.length+0,t<0?-1:0),r.setInt32(e.length+4,t));var i=Uint8Array.from([255]);return o.deriveKey(a.HashAlgorithm.Sha512,n,i,2048,32)};var o=u(n(268)),a=u(n(209));function i(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(i=function(e){return e?n:t})(e)}function u(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=i(t);if(n&&n.has(e))return n.get(e);var o={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=a?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}return o.default=e,n&&n.set(e,o),o}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayEqual=function(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;var n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=new DataView(t.buffer,t.byteOffset,t.byteLength),o=e.byteLength;for(;o--;)if(n.getUint8(o)!==r.getUint8(o))return!1;return!0},t.arrayStartsWith=function(e,t){if(e.byteLength=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarAllowances=null!=r.hbarAllowances?r.hbarAllowances:[],e._tokenAllowances=null!=r.tokenAllowances?r.tokenAllowances:[],e._nftAllowances=null!=r.nftAllowances?r.nftAllowances:[],e}return(0,i.default)(n,[{key:"hbarAllowances",get:function(){return this._hbarAllowances}},{key:"addHbarAllowance",value:function(e,t){var n=t instanceof y.default?t:new y.default(t);return this._adjustHbarAllowance(null,e,k.requireNotNegative(n))}},{key:"_adjustHbarAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._hbarAllowances.push(new m.default({spenderAccountId:"string"==typeof t?f.default.fromString(t):t,ownerAccountId:"string"==typeof e?f.default.fromString(e):e,amount:n})),this}},{key:"grantHbarAllowance",value:function(e,t,n){var r=n instanceof y.default?n:new y.default(n);return this._adjustHbarAllowance(e,t,k.requireNotNegative(r))}},{key:"revokeHbarAllowance",value:function(e,t,n){var r=n instanceof y.default?n:new y.default(n);return this._adjustHbarAllowance(e,t,k.requireNotNegative(r).negated())}},{key:"tokenAllowances",get:function(){return this._tokenAllowances}},{key:"addTokenAllowance",value:function(e,t,n){return this._adjustTokenAllowance(e,null,t,k.requireNotNegative(h.default.fromValue(n)))}},{key:"_adjustTokenAllowance",value:function(e,t,n,r){return this._requireNotFrozen(),this._tokenAllowances.push(new b.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof n?f.default.fromString(n):n,ownerAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof r?h.default.fromNumber(r):r})),this}},{key:"grantTokenAllowance",value:function(e,t,n,r){return this._adjustTokenAllowance(e,t,n,k.requireNotNegative(h.default.fromValue(r)))}},{key:"revokeTokenAllowance",value:function(e,t,n,r){return this._adjustTokenAllowance(e,t,n,k.requireNotNegative(h.default.fromValue(r)))}},{key:"addTokenNftAllowance",value:function(e,t){var n="string"==typeof e?p.default.fromString(e):e;return this._adjustTokenNftAllowance(n,null,t)}},{key:"_adjustTokenNftAllowance",value:function(e,t,n){this._requireNotFrozen();var r,o="string"==typeof n?f.default.fromString(n):n,a="string"==typeof t?f.default.fromString(t):t,i=!1,u=w(this._nftAllowances);try{for(u.s();!(r=u.n()).done;){var c=r.value;if(0===c.tokenId.compare(e.tokenId)&&0===c.spenderAccountId.compare(o)){null!=c.serialNumbers&&c.serialNumbers.push(e.serial),i=!0;break}}}catch(e){u.e(e)}finally{u.f()}return i||this._nftAllowances.push(new v.default({tokenId:e.tokenId,spenderAccountId:o,serialNumbers:[e.serial],ownerAccountId:a,allSerials:!1})),this}},{key:"grantTokenNftAllowance",value:function(e,t,n){var r="string"==typeof e?p.default.fromString(e):e;return k.requireNotNegative(r.serial),this._adjustTokenNftAllowance(r,t,n)}},{key:"revokeTokenNftAllowance",value:function(e,t,n){var r="string"==typeof e?p.default.fromString(e):e;return k.requireNotNegative(r.serial),r.serial=r.serial.negate(),this._adjustTokenNftAllowance(r,t,n)}},{key:"addAllTokenNftAllowance",value:function(e,t){return this._adjustTokenNftAllowanceAllSerials(e,null,t,!0)}},{key:"grantTokenNftAllowanceAllSerials",value:function(e,t,n){return this._adjustTokenNftAllowanceAllSerials(e,t,n,!0)}},{key:"revokeTokenNftAllowanceAllSerials",value:function(e,t,n){return this._adjustTokenNftAllowanceAllSerials(e,t,n,!1)}},{key:"_adjustTokenNftAllowanceAllSerials",value:function(e,t,n,r){return this._requireNotFrozen(),this._nftAllowances.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,ownerAccountId:null!=t?"string"==typeof t?f.default.fromString(t):t:null,spenderAccountId:"string"==typeof n?f.default.fromString(n):n,serialNumbers:null,allSerials:r})),this}},{key:"_validateChecksums",value:function(e){this._hbarAllowances.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenAllowances.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)})),this._nftAllowances.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e),null!=t.ownerAccountId&&t.ownerAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.adjustAllowance(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAdjustAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarAllowances.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenAllowances.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftAllowances.map((function(e){return e._toProtobuf()}))}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"AccountAllowanceAdjustTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAdjustAllowance;return l.default._fromProtobufTransactions(new n({hbarAllowances:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),tokenAllowances:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),nftAllowances:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=T,l.TRANSACTION_REGISTRY.set("cryptoAdjustAllowance",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.valueToLong=function(e){return o.default.isBigNumber(e)?e:new o.default(e.toString())};var o=r(n(153))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r,a,i,u){var c;return(0,o.default)(this,n),(c=t.call(this,"Entity ID ".concat(e.toString(),".").concat(r.toString(),".").concat(a.toString(),"-").concat(i," was incorrect."))).name="BadEntityIdException",c.shard=e,c.realm=r,c.num=a,c.presentChecksum=i,c.expectedChecksum=u,c}return n}((0,r(n(42)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=t;function o(){r.util._configure(),r.Writer._configure(r.BufferWriter),r.Reader._configure(r.BufferReader)}r.build="minimal",r.Writer=n(602),r.BufferWriter=n(1218),r.Reader=n(603),r.BufferReader=n(1219),r.util=n(157),r.rpc=n(1220),r.roots=n(1222),r.configure=o,o()},function(e,t,n){"use strict";e.exports=function(e,t){var n=new Array(arguments.length-1),r=0,o=2,a=!0;for(;o1&&"="===e.charAt(t);)++n;return Math.ceil(3*e.length)/4-n};for(var o=new Array(64),a=new Array(123),i=0;i<64;)a[o[i]=i<26?i+65:i<52?i+71:i<62?i-4:i-59|43]=i++;r.encode=function(e,t,n){for(var r,a=null,i=[],u=0,c=0;t>2],r=(3&s)<<4,c=1;break;case 1:i[u++]=o[r|s>>4],r=(15&s)<<2,c=2;break;case 2:i[u++]=o[r|s>>6],i[u++]=o[63&s],c=0}u>8191&&((a||(a=[])).push(String.fromCharCode.apply(String,i)),u=0)}return c&&(i[u++]=o[r],i[u++]=61,1===c&&(i[u++]=61)),a?(u&&a.push(String.fromCharCode.apply(String,i.slice(0,u))),a.join("")):String.fromCharCode.apply(String,i.slice(0,u))};r.decode=function(e,t,n){for(var r,o=n,i=0,u=0;u1)break;if(void 0===(c=a[c]))throw Error("invalid encoding");switch(i){case 0:r=c,i=1;break;case 1:t[n++]=r<<2|(48&c)>>4,r=c,i=2;break;case 2:t[n++]=(15&r)<<4|(60&c)>>2,r=c,i=3;break;case 3:t[n++]=(3&r)<<6|c,i=0}}if(1===i)throw Error("invalid encoding");return n-o},r.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}},function(e,t,n){"use strict";function r(){this._listeners={}}e.exports=r,r.prototype.on=function(e,t,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:t,ctx:n||this}),this},r.prototype.off=function(e,t){if(void 0===e)this._listeners={};else if(void 0===t)this._listeners[e]=[];else for(var n=this._listeners[e],r=0;r0?0:2147483648,n,r);else if(isNaN(t))e(2143289344,n,r);else if(t>34028234663852886e22)e((o<<31|2139095040)>>>0,n,r);else if(t<11754943508222875e-54)e((o<<31|Math.round(t/1401298464324817e-60))>>>0,n,r);else{var a=Math.floor(Math.log(t)/Math.LN2);e((o<<31|a+127<<23|8388607&Math.round(t*Math.pow(2,-a)*8388608))>>>0,n,r)}}function n(e,t,n){var r=e(t,n),o=2*(r>>31)+1,a=r>>>23&255,i=8388607&r;return 255===a?i?NaN:o*(1/0):0===a?1401298464324817e-60*o*i:o*Math.pow(2,a-150)*(i+8388608)}e.writeFloatLE=t.bind(null,o),e.writeFloatBE=t.bind(null,a),e.readFloatLE=n.bind(null,i),e.readFloatBE=n.bind(null,u)}(),"undefined"!=typeof Float64Array?function(){var t=new Float64Array([-0]),n=new Uint8Array(t.buffer),r=128===n[7];function o(e,r,o){t[0]=e,r[o]=n[0],r[o+1]=n[1],r[o+2]=n[2],r[o+3]=n[3],r[o+4]=n[4],r[o+5]=n[5],r[o+6]=n[6],r[o+7]=n[7]}function a(e,r,o){t[0]=e,r[o]=n[7],r[o+1]=n[6],r[o+2]=n[5],r[o+3]=n[4],r[o+4]=n[3],r[o+5]=n[2],r[o+6]=n[1],r[o+7]=n[0]}function i(e,r){return n[0]=e[r],n[1]=e[r+1],n[2]=e[r+2],n[3]=e[r+3],n[4]=e[r+4],n[5]=e[r+5],n[6]=e[r+6],n[7]=e[r+7],t[0]}function u(e,r){return n[7]=e[r],n[6]=e[r+1],n[5]=e[r+2],n[4]=e[r+3],n[3]=e[r+4],n[2]=e[r+5],n[1]=e[r+6],n[0]=e[r+7],t[0]}e.writeDoubleLE=r?o:a,e.writeDoubleBE=r?a:o,e.readDoubleLE=r?i:u,e.readDoubleBE=r?u:i}():function(){function t(e,t,n,r,o,a){var i=r<0?1:0;if(i&&(r=-r),0===r)e(0,o,a+t),e(1/r>0?0:2147483648,o,a+n);else if(isNaN(r))e(0,o,a+t),e(2146959360,o,a+n);else if(r>17976931348623157e292)e(0,o,a+t),e((i<<31|2146435072)>>>0,o,a+n);else{var u;if(r<22250738585072014e-324)e((u=r/5e-324)>>>0,o,a+t),e((i<<31|u/4294967296)>>>0,o,a+n);else{var c=Math.floor(Math.log(r)/Math.LN2);1024===c&&(c=1023),e(4503599627370496*(u=r*Math.pow(2,-c))>>>0,o,a+t),e((i<<31|c+1023<<20|1048576*u&1048575)>>>0,o,a+n)}}}function n(e,t,n,r,o){var a=e(r,o+t),i=e(r,o+n),u=2*(i>>31)+1,c=i>>>20&2047,s=4294967296*(1048575&i)+a;return 2047===c?s?NaN:u*(1/0):0===c?5e-324*u*s:u*Math.pow(2,c-1075)*(s+4503599627370496)}e.writeDoubleLE=t.bind(null,o,0,4),e.writeDoubleBE=t.bind(null,a,4,0),e.readDoubleLE=n.bind(null,i,0,4),e.readDoubleBE=n.bind(null,u,4,0)}(),e}function o(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}function a(e,t,n){t[n]=e>>>24,t[n+1]=e>>>16&255,t[n+2]=e>>>8&255,t[n+3]=255&e}function i(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function u(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}e.exports=r(r)},function(module,exports,__webpack_require__){"use strict";function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}module.exports=inquire},function(e,t,n){"use strict";var r=t;r.length=function(e){for(var t=0,n=0,r=0;r191&&r<224?a[i++]=(31&r)<<6|63&e[t++]:r>239&&r<365?(r=((7&r)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,a[i++]=55296+(r>>10),a[i++]=56320+(1023&r)):a[i++]=(15&r)<<12|(63&e[t++])<<6|63&e[t++],i>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,a)),i=0);return o?(i&&o.push(String.fromCharCode.apply(String,a.slice(0,i))),o.join("")):String.fromCharCode.apply(String,a.slice(0,i))},r.write=function(e,t,n){for(var r,o,a=n,i=0;i>6|192,t[n++]=63&r|128):55296==(64512&r)&&56320==(64512&(o=e.charCodeAt(i+1)))?(r=65536+((1023&r)<<10)+(1023&o),++i,t[n++]=r>>18|240,t[n++]=r>>12&63|128,t[n++]=r>>6&63|128,t[n++]=63&r|128):(t[n++]=r>>12|224,t[n++]=r>>6&63|128,t[n++]=63&r|128);return n-a}},function(e,t,n){"use strict";e.exports=function(e,t,n){var r=n||8192,o=r>>>1,a=null,i=r;return function(n){if(n<1||n>o)return e(n);i+n>r&&(a=e(r),i=0);var u=t.call(a,i,i+=n);return 7&i&&(i=1+(7|i)),u}}},function(e,t,n){"use strict";e.exports=o;var r=n(157);function o(e,t){this.lo=e>>>0,this.hi=t>>>0}var a=o.zero=new o(0,0);a.toNumber=function(){return 0},a.zzEncode=a.zzDecode=function(){return this},a.length=function(){return 1};var i=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(e){if(0===e)return a;var t=e<0;t&&(e=-e);var n=e>>>0,r=(e-n)/4294967296>>>0;return t&&(r=~r>>>0,n=~n>>>0,++n>4294967295&&(n=0,++r>4294967295&&(r=0))),new o(n,r)},o.from=function(e){if("number"==typeof e)return o.fromNumber(e);if(r.isString(e)){if(!r.Long)return o.fromNumber(parseInt(e,10));e=r.Long.fromString(e)}return e.low||e.high?new o(e.low>>>0,e.high>>>0):a},o.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var t=1+~this.lo>>>0,n=~this.hi>>>0;return t||(n=n+1>>>0),-(t+4294967296*n)}return this.lo+4294967296*this.hi},o.prototype.toLong=function(e){return r.Long?new r.Long(0|this.lo,0|this.hi,Boolean(e)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(e)}};var u=String.prototype.charCodeAt;o.fromHash=function(e){return e===i?a:new o((u.call(e,0)|u.call(e,1)<<8|u.call(e,2)<<16|u.call(e,3)<<24)>>>0,(u.call(e,4)|u.call(e,5)<<8|u.call(e,6)<<16|u.call(e,7)<<24)>>>0)},o.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},o.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this},o.prototype.zzDecode=function(){var e=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this},o.prototype.length=function(){var e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===t?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}},function(e,t,n){"use strict";e.exports=a;var r=n(602);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(157);function a(){r.call(this)}function i(e,t,n){e.length<40?o.utf8.write(e,t,n):t.utf8Write?t.utf8Write(e,n):t.write(e,n)}a._configure=function(){a.alloc=o._Buffer_allocUnsafe,a.writeBytesBuffer=o.Buffer&&o.Buffer.prototype instanceof Uint8Array&&"set"===o.Buffer.prototype.set.name?function(e,t,n){t.set(e,n)}:function(e,t,n){if(e.copy)e.copy(t,n,0,e.length);else for(var r=0;r>>0;return this.uint32(t),t&&this._push(a.writeBytesBuffer,t,e),this},a.prototype.string=function(e){var t=o.Buffer.byteLength(e);return this.uint32(t),t&&this._push(i,t,e),this},a._configure()},function(e,t,n){"use strict";e.exports=a;var r=n(603);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(157);function a(e){r.call(this,e)}a._configure=function(){o.Buffer&&(a.prototype._slice=o.Buffer.prototype.slice)},a.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))},a._configure()},function(e,t,n){"use strict";t.Service=n(1221)},function(e,t,n){"use strict";e.exports=o;var r=n(157);function o(e,t,n){if("function"!=typeof e)throw TypeError("rpcImpl must be a function");r.EventEmitter.call(this),this.rpcImpl=e,this.requestDelimited=Boolean(t),this.responseDelimited=Boolean(n)}(o.prototype=Object.create(r.EventEmitter.prototype)).constructor=o,o.prototype.rpcCall=function e(t,n,o,a,i){if(!a)throw TypeError("request must be specified");var u=this;if(!i)return r.asPromise(e,u,t,n,o,a);if(u.rpcImpl)try{return u.rpcImpl(t,n[u.requestDelimited?"encodeDelimited":"encode"](a).finish(),(function(e,n){if(e)return u.emit("error",e,t),i(e);if(null!==n){if(!(n instanceof o))try{n=o[u.responseDelimited?"decodeDelimited":"decode"](n)}catch(e){return u.emit("error",e,t),i(e)}return u.emit("data",n,t),i(null,n)}u.end(!0)}))}catch(e){return u.emit("error",e,t),void setTimeout((function(){i(e)}),0)}else setTimeout((function(){i(Error("already ended"))}),0)},o.prototype.end=function(e){return this.rpcImpl&&(e||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.proto=t.google=t.default=void 0;var o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=i?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}o.default=e,n&&n.set(e,o);return o}(n(601));function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}var i=o.Reader,u=o.Writer,c=o.util,s=o.roots.hashgraph||(o.roots.hashgraph={});t.default=s;var l=s.proto=function(){var e,t,n={};return n.TokenUnitBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.SingleAccountBalances=function(){function e(e){if(this.tokenUnitBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hbarBalance=e.uint64();break;case 3:r.tokenUnitBalances&&r.tokenUnitBalances.length||(r.tokenUnitBalances=[]),r.tokenUnitBalances.push(s.proto.TokenUnitBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.AllAccountBalances=function(){function e(e){if(this.allAccounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.allAccounts&&r.allAccounts.length||(r.allAccounts=[]),r.allAccounts.push(s.proto.SingleAccountBalances.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ShardID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.RealmID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AccountID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.accountNum=e.int64();break;case 4:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.fileNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.contractNum=e.int64();break;case 4:r.evmAddress=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionValidStart=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.scheduled=e.bool();break;case 4:r.nonce=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.AccountAmount=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.sint64();break;case 3:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransferList=function(){function e(e){if(this.accountAmounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountAmounts&&r.accountAmounts.length||(r.accountAmounts=[]),r.accountAmounts.push(s.proto.AccountAmount.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftTransfer=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.senderAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.receiverAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.serialNumber=e.int64();break;case 4:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenTransferList=function(){function e(e){if(this.transfers=[],this.nftTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.transfers&&r.transfers.length||(r.transfers=[]),r.transfers.push(s.proto.AccountAmount.decode(e,e.uint32()));break;case 3:r.nftTransfers&&r.nftTransfers.length||(r.nftTransfers=[]),r.nftTransfers.push(s.proto.NftTransfer.decode(e,e.uint32()));break;case 4:r.expectedDecimals=s.google.protobuf.UInt32Value.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Fraction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.numerator=e.int64();break;case 2:r.denominator=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TopicID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.topicNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.tokenNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.scheduleNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenType=(e={},(t=Object.create(e))[e[0]="FUNGIBLE_COMMON"]=0,t[e[1]="NON_FUNGIBLE_UNIQUE"]=1,t),n.SubType=function(){var e={},t=Object.create(e);return t[e[0]="DEFAULT"]=0,t[e[1]="TOKEN_FUNGIBLE_COMMON"]=1,t[e[2]="TOKEN_NON_FUNGIBLE_UNIQUE"]=2,t[e[3]="TOKEN_FUNGIBLE_COMMON_WITH_CUSTOM_FEES"]=3,t[e[4]="TOKEN_NON_FUNGIBLE_UNIQUE_WITH_CUSTOM_FEES"]=4,t}(),n.TokenSupplyType=function(){var e={},t=Object.create(e);return t[e[0]="INFINITE"]=0,t[e[1]="FINITE"]=1,t}(),n.TokenFreezeStatus=function(){var e={},t=Object.create(e);return t[e[0]="FreezeNotApplicable"]=0,t[e[1]="Frozen"]=1,t[e[2]="Unfrozen"]=2,t}(),n.TokenKycStatus=function(){var e={},t=Object.create(e);return t[e[0]="KycNotApplicable"]=0,t[e[1]="Granted"]=1,t[e[2]="Revoked"]=2,t}(),n.TokenPauseStatus=function(){var e={},t=Object.create(e);return t[e[0]="PauseNotApplicable"]=0,t[e[1]="Paused"]=1,t[e[2]="Unpaused"]=2,t}(),n.Key=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdKey=s.proto.ThresholdKey.decode(e,e.uint32());break;case 6:r.keyList=s.proto.KeyList.decode(e,e.uint32());break;case 7:r.ECDSASecp256k1=e.bytes();break;case 8:r.delegatableContractId=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdKey=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.threshold=e.uint32();break;case 2:r.keys=s.proto.KeyList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.KeyList=function(){function e(e){if(this.keys=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.keys&&r.keys.length||(r.keys=[]),r.keys.push(s.proto.Key.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Signature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contract=e.bytes();break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdSignature=s.proto.ThresholdSignature.decode(e,e.uint32());break;case 6:r.signatureList=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdSignature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SignatureList=function(){function e(e){if(this.sigs=[],e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs&&r.sigs.length||(r.sigs=[]),r.sigs.push(s.proto.Signature.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SignaturePair=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.pubKeyPrefix=e.bytes();break;case 2:r.contract=e.bytes();break;case 3:r.ed25519=e.bytes();break;case 4:r.RSA_3072=e.bytes();break;case 5:r.ECDSA_384=e.bytes();break;case 6:r.ECDSASecp256k1=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.SignatureMap=function(){function e(e){if(this.sigPair=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.sigPair&&r.sigPair.length||(r.sigPair=[]),r.sigPair.push(s.proto.SignaturePair.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.HederaFunctionality=function(){var e={},t=Object.create(e);return t[e[0]="NONE"]=0,t[e[1]="CryptoTransfer"]=1,t[e[2]="CryptoUpdate"]=2,t[e[3]="CryptoDelete"]=3,t[e[4]="CryptoAddLiveHash"]=4,t[e[5]="CryptoDeleteLiveHash"]=5,t[e[6]="ContractCall"]=6,t[e[7]="ContractCreate"]=7,t[e[8]="ContractUpdate"]=8,t[e[9]="FileCreate"]=9,t[e[10]="FileAppend"]=10,t[e[11]="FileUpdate"]=11,t[e[12]="FileDelete"]=12,t[e[13]="CryptoGetAccountBalance"]=13,t[e[14]="CryptoGetAccountRecords"]=14,t[e[15]="CryptoGetInfo"]=15,t[e[16]="ContractCallLocal"]=16,t[e[17]="ContractGetInfo"]=17,t[e[18]="ContractGetBytecode"]=18,t[e[19]="GetBySolidityID"]=19,t[e[20]="GetByKey"]=20,t[e[21]="CryptoGetLiveHash"]=21,t[e[22]="CryptoGetStakers"]=22,t[e[23]="FileGetContents"]=23,t[e[24]="FileGetInfo"]=24,t[e[25]="TransactionGetRecord"]=25,t[e[26]="ContractGetRecords"]=26,t[e[27]="CryptoCreate"]=27,t[e[28]="SystemDelete"]=28,t[e[29]="SystemUndelete"]=29,t[e[30]="ContractDelete"]=30,t[e[31]="Freeze"]=31,t[e[32]="CreateTransactionRecord"]=32,t[e[33]="CryptoAccountAutoRenew"]=33,t[e[34]="ContractAutoRenew"]=34,t[e[35]="GetVersionInfo"]=35,t[e[36]="TransactionGetReceipt"]=36,t[e[50]="ConsensusCreateTopic"]=50,t[e[51]="ConsensusUpdateTopic"]=51,t[e[52]="ConsensusDeleteTopic"]=52,t[e[53]="ConsensusGetTopicInfo"]=53,t[e[54]="ConsensusSubmitMessage"]=54,t[e[55]="UncheckedSubmit"]=55,t[e[56]="TokenCreate"]=56,t[e[58]="TokenGetInfo"]=58,t[e[59]="TokenFreezeAccount"]=59,t[e[60]="TokenUnfreezeAccount"]=60,t[e[61]="TokenGrantKycToAccount"]=61,t[e[62]="TokenRevokeKycFromAccount"]=62,t[e[63]="TokenDelete"]=63,t[e[64]="TokenUpdate"]=64,t[e[65]="TokenMint"]=65,t[e[66]="TokenBurn"]=66,t[e[67]="TokenAccountWipe"]=67,t[e[68]="TokenAssociateToAccount"]=68,t[e[69]="TokenDissociateFromAccount"]=69,t[e[70]="ScheduleCreate"]=70,t[e[71]="ScheduleDelete"]=71,t[e[72]="ScheduleSign"]=72,t[e[73]="ScheduleGetInfo"]=73,t[e[74]="TokenGetAccountNftInfos"]=74,t[e[75]="TokenGetNftInfo"]=75,t[e[76]="TokenGetNftInfos"]=76,t[e[77]="TokenFeeScheduleUpdate"]=77,t[e[78]="NetworkGetExecutionTime"]=78,t[e[79]="TokenPause"]=79,t[e[80]="TokenUnpause"]=80,t[e[81]="CryptoApproveAllowance"]=81,t[e[82]="CryptoAdjustAllowance"]=82,t}(),n.FeeComponents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.min=e.int64();break;case 2:r.max=e.int64();break;case 3:r.constant=e.int64();break;case 4:r.bpt=e.int64();break;case 5:r.vpt=e.int64();break;case 6:r.rbh=e.int64();break;case 7:r.sbh=e.int64();break;case 8:r.gas=e.int64();break;case 9:r.tv=e.int64();break;case 10:r.bpr=e.int64();break;case 11:r.sbpr=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionFeeSchedule=function(){function e(e){if(this.fees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.hederaFunctionality=e.int32();break;case 2:r.feeData=s.proto.FeeData.decode(e,e.uint32());break;case 3:r.fees&&r.fees.length||(r.fees=[]),r.fees.push(s.proto.FeeData.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FeeData=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 2:r.networkdata=s.proto.FeeComponents.decode(e,e.uint32());break;case 3:r.servicedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 4:r.subType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FeeSchedule=function(){function e(e){if(this.transactionFeeSchedule=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFeeSchedule&&r.transactionFeeSchedule.length||(r.transactionFeeSchedule=[]),r.transactionFeeSchedule.push(s.proto.TransactionFeeSchedule.decode(e,e.uint32()));break;case 2:r.expiryTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CurrentAndNextFeeSchedule=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;case 2:r.nextFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ServiceEndpoint=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddressV4=e.bytes();break;case 2:r.port=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddress=function(){function e(e){if(this.serviceEndpoint=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddress=e.bytes();break;case 2:r.portno=e.int32();break;case 3:r.memo=e.bytes();break;case 4:r.RSA_PubKey=e.string();break;case 5:r.nodeId=e.int64();break;case 6:r.nodeAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.nodeCertHash=e.bytes();break;case 8:r.serviceEndpoint&&r.serviceEndpoint.length||(r.serviceEndpoint=[]),r.serviceEndpoint.push(s.proto.ServiceEndpoint.decode(e,e.uint32()));break;case 9:r.description=e.string();break;case 10:r.stake=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddressBook=function(){function e(e){if(this.nodeAddress=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeAddress&&r.nodeAddress.length||(r.nodeAddress=[]),r.nodeAddress.push(s.proto.NodeAddress.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SemanticVersion=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.major=e.int32();break;case 2:r.minor=e.int32();break;case 3:r.patch=e.int32();break;case 4:r.pre=e.string();break;case 5:r.build=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.Setting=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.value=e.string();break;case 3:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ServicesConfigurationList=function(){function e(e){if(this.nameValue=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nameValue&&r.nameValue.length||(r.nameValue=[]),r.nameValue.push(s.proto.Setting.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenRelationship=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.balance=e.uint64();break;case 4:r.kycStatus=e.int32();break;case 5:r.freezeStatus=e.int32();break;case 6:r.decimals=e.uint32();break;case 7:r.automaticAssociation=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;case 3:r.decimals=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalances=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenAssociation=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAllowance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NftAllowance=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.GrantedCryptoAllowance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.GrantedNftAllowance=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 3:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.Timestamp=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;case 2:r.nanos=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.TimestampSeconds=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusCreateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 3:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Duration=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusDeleteTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 5:r.topicInfo=s.proto.ConsensusTopicInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseType=function(){var e={},t=Object.create(e);return t[e[0]="ANSWER_ONLY"]=0,t[e[1]="ANSWER_STATE_PROOF"]=1,t[e[2]="COST_ANSWER"]=2,t[e[3]="COST_ANSWER_STATE_PROOF"]=3,t}(),n.QueryHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.payment=s.proto.Transaction.decode(e,e.uint32());break;case 2:r.responseType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.Transaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.body=s.proto.TransactionBody.decode(e,e.uint32());break;case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;case 3:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;case 4:r.bodyBytes=e.bytes();break;case 5:r.signedTransactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.nodeAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transactionFee=e.uint64();break;case 4:r.transactionValidDuration=s.proto.Duration.decode(e,e.uint32());break;case 5:r.generateRecord=e.bool();break;case 6:r.memo=e.string();break;case 7:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 8:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 9:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 22:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoAddLiveHash=s.proto.CryptoAddLiveHashTransactionBody.decode(e,e.uint32());break;case 48:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 49:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 11:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 12:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 13:r.cryptoDeleteLiveHash=s.proto.CryptoDeleteLiveHashTransactionBody.decode(e,e.uint32());break;case 14:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 15:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 16:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 17:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 18:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 19:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 20:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 21:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 23:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 24:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 25:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 26:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 27:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 28:r.uncheckedSubmit=s.proto.UncheckedSubmitBody.decode(e,e.uint32());break;case 29:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 31:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 33:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 34:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 35:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 37:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 38:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 39:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 40:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 41:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 45:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 46:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 47:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 42:r.scheduleCreate=s.proto.ScheduleCreateTransactionBody.decode(e,e.uint32());break;case 43:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;case 44:r.scheduleSign=s.proto.ScheduleSignTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemUndeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FreezeTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.startHour=e.int32();break;case 2:r.startMin=e.int32();break;case 3:r.endHour=e.int32();break;case 4:r.endMin=e.int32();break;case 5:r.updateFile=s.proto.FileID.decode(e,e.uint32());break;case 6:r.fileHash=e.bytes();break;case 7:r.startTime=s.proto.Timestamp.decode(e,e.uint32());break;case 8:r.freezeType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FreezeType=function(){var e={},t=Object.create(e);return t[e[0]="UNKNOWN_FREEZE_TYPE"]=0,t[e[1]="FREEZE_ONLY"]=1,t[e[2]="PREPARE_UPGRADE"]=2,t[e[3]="FREEZE_UPGRADE"]=3,t[e[4]="FREEZE_ABORT"]=4,t[e[5]="TELEMETRY_UPGRADE"]=5,t}(),n.ContractCallTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.gas=e.int64();break;case 3:r.amount=e.int64();break;case 4:r.functionParameters=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.gas=e.int64();break;case 5:r.initialBalance=e.int64();break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.constructorParameters=e.bytes();break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.ContractUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 9:r.memo=e.string();break;case 10:r.memoWrapper=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.LiveHash=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hash=e.bytes();break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 5:r.duration=s.proto.Duration.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAddLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 3:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.key=s.proto.Key.decode(e,e.uint32());break;case 2:r.initialBalance=e.uint64();break;case 3:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.sendRecordThreshold=e.uint64();break;case 7:r.receiveRecordThreshold=e.uint64();break;case 8:r.receiverSigRequired=e.bool();break;case 9:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;case 14:r.maxAutomaticTokenAssociations=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.deleteAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountOfLiveHash=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHashToDelete=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoTransferTransactionBody=function(){function e(e){if(this.tokenTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transfers=s.proto.TransferList.decode(e,e.uint32());break;case 2:r.tokenTransfers&&r.tokenTransfers.length||(r.tokenTransfers=[]),r.tokenTransfers.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.accountIDToUpdate=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.key=s.proto.Key.decode(e,e.uint32());break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.proxyFraction=e.int32();break;case 6:r.sendRecordThreshold=e.uint64();break;case 11:r.sendRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 7:r.receiveRecordThreshold=e.uint64();break;case 12:r.receiveRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 10:r.receiverSigRequired=e.bool();break;case 13:r.receiverSigRequiredWrapper=s.google.protobuf.BoolValue.decode(e,e.uint32());break;case 14:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 15:r.maxAutomaticTokenAssociations=s.google.protobuf.Int32Value.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoApproveAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAdjustAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FileAppendTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 6:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 7:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.FileDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transferContractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusUpdateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusMessageChunkInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.initialTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.total=e.int32();break;case 3:r.number=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusSubmitMessageTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.UncheckedSubmitBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenCreateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.symbol=e.string();break;case 3:r.decimals=e.uint32();break;case 4:r.initialSupply=e.uint64();break;case 5:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.freezeDefault=e.bool();break;case 13:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 14:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 15:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 16:r.memo=e.string();break;case 17:r.tokenType=e.int32();break;case 18:r.supplyType=e.int32();break;case 19:r.maxSupply=e.int64();break;case 20:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 21:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 22:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FractionalFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fractionalAmount=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.minimumAmount=e.int64();break;case 3:r.maximumAmount=e.int64();break;case 4:r.netOfTransfers=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.FixedFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.denominatingTokenId=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.RoyaltyFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.exchangeValueFraction=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.fallbackFee=s.proto.FixedFee.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CustomFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fixedFee=s.proto.FixedFee.decode(e,e.uint32());break;case 2:r.fractionalFee=s.proto.FractionalFee.decode(e,e.uint32());break;case 4:r.royaltyFee=s.proto.RoyaltyFee.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.AssessedCustomFee=function(){function e(e){if(this.effectivePayerAccountId=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.effectivePayerAccountId&&r.effectivePayerAccountId.length||(r.effectivePayerAccountId=[]),r.effectivePayerAccountId.push(s.proto.AccountID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnfreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGrantKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenRevokeKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.name=e.string();break;case 4:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 12:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 14:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 15:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenMintTransactionBody=function(){function e(e){if(this.metadata=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:r.metadata&&r.metadata.length||(r.metadata=[]),r.metadata.push(e.bytes());break;default:e.skipType(7&o)}}return r},e}(),n.TokenBurnTransactionBody=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.uint64();break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenDissociateTransactionBody=function(){function e(e){if(this.tokens=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFeeScheduleUpdateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenPauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnpauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 2:r.memo=e.string();break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SchedulableTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFee=e.uint64();break;case 2:r.memo=e.string();break;case 3:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 4:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 5:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 6:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 37:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 38:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 7:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 8:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 9:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 11:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 12:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 13:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 14:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 15:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 16:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 17:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 18:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 19:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 20:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 21:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 22:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 23:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 24:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 25:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 26:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 27:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 28:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 29:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 30:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 31:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 33:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 39:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 35:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 34:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleSignTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.responseType=e.int32();break;case 3:r.cost=e.uint64();break;case 4:r.stateProof=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.cost=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ResponseCodeEnum=function(){var e={},t=Object.create(e);return t[e[0]="OK"]=0,t[e[1]="INVALID_TRANSACTION"]=1,t[e[2]="PAYER_ACCOUNT_NOT_FOUND"]=2,t[e[3]="INVALID_NODE_ACCOUNT"]=3,t[e[4]="TRANSACTION_EXPIRED"]=4,t[e[5]="INVALID_TRANSACTION_START"]=5,t[e[6]="INVALID_TRANSACTION_DURATION"]=6,t[e[7]="INVALID_SIGNATURE"]=7,t[e[8]="MEMO_TOO_LONG"]=8,t[e[9]="INSUFFICIENT_TX_FEE"]=9,t[e[10]="INSUFFICIENT_PAYER_BALANCE"]=10,t[e[11]="DUPLICATE_TRANSACTION"]=11,t[e[12]="BUSY"]=12,t[e[13]="NOT_SUPPORTED"]=13,t[e[14]="INVALID_FILE_ID"]=14,t[e[15]="INVALID_ACCOUNT_ID"]=15,t[e[16]="INVALID_CONTRACT_ID"]=16,t[e[17]="INVALID_TRANSACTION_ID"]=17,t[e[18]="RECEIPT_NOT_FOUND"]=18,t[e[19]="RECORD_NOT_FOUND"]=19,t[e[20]="INVALID_SOLIDITY_ID"]=20,t[e[21]="UNKNOWN"]=21,t[e[22]="SUCCESS"]=22,t[e[23]="FAIL_INVALID"]=23,t[e[24]="FAIL_FEE"]=24,t[e[25]="FAIL_BALANCE"]=25,t[e[26]="KEY_REQUIRED"]=26,t[e[27]="BAD_ENCODING"]=27,t[e[28]="INSUFFICIENT_ACCOUNT_BALANCE"]=28,t[e[29]="INVALID_SOLIDITY_ADDRESS"]=29,t[e[30]="INSUFFICIENT_GAS"]=30,t[e[31]="CONTRACT_SIZE_LIMIT_EXCEEDED"]=31,t[e[32]="LOCAL_CALL_MODIFICATION_EXCEPTION"]=32,t[e[33]="CONTRACT_REVERT_EXECUTED"]=33,t[e[34]="CONTRACT_EXECUTION_EXCEPTION"]=34,t[e[35]="INVALID_RECEIVING_NODE_ACCOUNT"]=35,t[e[36]="MISSING_QUERY_HEADER"]=36,t[e[37]="ACCOUNT_UPDATE_FAILED"]=37,t[e[38]="INVALID_KEY_ENCODING"]=38,t[e[39]="NULL_SOLIDITY_ADDRESS"]=39,t[e[40]="CONTRACT_UPDATE_FAILED"]=40,t[e[41]="INVALID_QUERY_HEADER"]=41,t[e[42]="INVALID_FEE_SUBMITTED"]=42,t[e[43]="INVALID_PAYER_SIGNATURE"]=43,t[e[44]="KEY_NOT_PROVIDED"]=44,t[e[45]="INVALID_EXPIRATION_TIME"]=45,t[e[46]="NO_WACL_KEY"]=46,t[e[47]="FILE_CONTENT_EMPTY"]=47,t[e[48]="INVALID_ACCOUNT_AMOUNTS"]=48,t[e[49]="EMPTY_TRANSACTION_BODY"]=49,t[e[50]="INVALID_TRANSACTION_BODY"]=50,t[e[51]="INVALID_SIGNATURE_TYPE_MISMATCHING_KEY"]=51,t[e[52]="INVALID_SIGNATURE_COUNT_MISMATCHING_KEY"]=52,t[e[53]="EMPTY_LIVE_HASH_BODY"]=53,t[e[54]="EMPTY_LIVE_HASH"]=54,t[e[55]="EMPTY_LIVE_HASH_KEYS"]=55,t[e[56]="INVALID_LIVE_HASH_SIZE"]=56,t[e[57]="EMPTY_QUERY_BODY"]=57,t[e[58]="EMPTY_LIVE_HASH_QUERY"]=58,t[e[59]="LIVE_HASH_NOT_FOUND"]=59,t[e[60]="ACCOUNT_ID_DOES_NOT_EXIST"]=60,t[e[61]="LIVE_HASH_ALREADY_EXISTS"]=61,t[e[62]="INVALID_FILE_WACL"]=62,t[e[63]="SERIALIZATION_FAILED"]=63,t[e[64]="TRANSACTION_OVERSIZE"]=64,t[e[65]="TRANSACTION_TOO_MANY_LAYERS"]=65,t[e[66]="CONTRACT_DELETED"]=66,t[e[67]="PLATFORM_NOT_ACTIVE"]=67,t[e[68]="KEY_PREFIX_MISMATCH"]=68,t[e[69]="PLATFORM_TRANSACTION_NOT_CREATED"]=69,t[e[70]="INVALID_RENEWAL_PERIOD"]=70,t[e[71]="INVALID_PAYER_ACCOUNT_ID"]=71,t[e[72]="ACCOUNT_DELETED"]=72,t[e[73]="FILE_DELETED"]=73,t[e[74]="ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS"]=74,t[e[75]="SETTING_NEGATIVE_ACCOUNT_BALANCE"]=75,t[e[76]="OBTAINER_REQUIRED"]=76,t[e[77]="OBTAINER_SAME_CONTRACT_ID"]=77,t[e[78]="OBTAINER_DOES_NOT_EXIST"]=78,t[e[79]="MODIFYING_IMMUTABLE_CONTRACT"]=79,t[e[80]="FILE_SYSTEM_EXCEPTION"]=80,t[e[81]="AUTORENEW_DURATION_NOT_IN_RANGE"]=81,t[e[82]="ERROR_DECODING_BYTESTRING"]=82,t[e[83]="CONTRACT_FILE_EMPTY"]=83,t[e[84]="CONTRACT_BYTECODE_EMPTY"]=84,t[e[85]="INVALID_INITIAL_BALANCE"]=85,t[e[86]="INVALID_RECEIVE_RECORD_THRESHOLD"]=86,t[e[87]="INVALID_SEND_RECORD_THRESHOLD"]=87,t[e[88]="ACCOUNT_IS_NOT_GENESIS_ACCOUNT"]=88,t[e[89]="PAYER_ACCOUNT_UNAUTHORIZED"]=89,t[e[90]="INVALID_FREEZE_TRANSACTION_BODY"]=90,t[e[91]="FREEZE_TRANSACTION_BODY_NOT_FOUND"]=91,t[e[92]="TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=92,t[e[93]="RESULT_SIZE_LIMIT_EXCEEDED"]=93,t[e[94]="NOT_SPECIAL_ACCOUNT"]=94,t[e[95]="CONTRACT_NEGATIVE_GAS"]=95,t[e[96]="CONTRACT_NEGATIVE_VALUE"]=96,t[e[97]="INVALID_FEE_FILE"]=97,t[e[98]="INVALID_EXCHANGE_RATE_FILE"]=98,t[e[99]="INSUFFICIENT_LOCAL_CALL_GAS"]=99,t[e[100]="ENTITY_NOT_ALLOWED_TO_DELETE"]=100,t[e[101]="AUTHORIZATION_FAILED"]=101,t[e[102]="FILE_UPLOADED_PROTO_INVALID"]=102,t[e[103]="FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK"]=103,t[e[104]="FEE_SCHEDULE_FILE_PART_UPLOADED"]=104,t[e[105]="EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED"]=105,t[e[106]="MAX_CONTRACT_STORAGE_EXCEEDED"]=106,t[e[107]="TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT"]=107,t[e[108]="TOTAL_LEDGER_BALANCE_INVALID"]=108,t[e[110]="EXPIRATION_REDUCTION_NOT_ALLOWED"]=110,t[e[111]="MAX_GAS_LIMIT_EXCEEDED"]=111,t[e[112]="MAX_FILE_SIZE_EXCEEDED"]=112,t[e[113]="RECEIVER_SIG_REQUIRED"]=113,t[e[150]="INVALID_TOPIC_ID"]=150,t[e[155]="INVALID_ADMIN_KEY"]=155,t[e[156]="INVALID_SUBMIT_KEY"]=156,t[e[157]="UNAUTHORIZED"]=157,t[e[158]="INVALID_TOPIC_MESSAGE"]=158,t[e[159]="INVALID_AUTORENEW_ACCOUNT"]=159,t[e[160]="AUTORENEW_ACCOUNT_NOT_ALLOWED"]=160,t[e[162]="TOPIC_EXPIRED"]=162,t[e[163]="INVALID_CHUNK_NUMBER"]=163,t[e[164]="INVALID_CHUNK_TRANSACTION_ID"]=164,t[e[165]="ACCOUNT_FROZEN_FOR_TOKEN"]=165,t[e[166]="TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED"]=166,t[e[167]="INVALID_TOKEN_ID"]=167,t[e[168]="INVALID_TOKEN_DECIMALS"]=168,t[e[169]="INVALID_TOKEN_INITIAL_SUPPLY"]=169,t[e[170]="INVALID_TREASURY_ACCOUNT_FOR_TOKEN"]=170,t[e[171]="INVALID_TOKEN_SYMBOL"]=171,t[e[172]="TOKEN_HAS_NO_FREEZE_KEY"]=172,t[e[173]="TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN"]=173,t[e[174]="MISSING_TOKEN_SYMBOL"]=174,t[e[175]="TOKEN_SYMBOL_TOO_LONG"]=175,t[e[176]="ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN"]=176,t[e[177]="TOKEN_HAS_NO_KYC_KEY"]=177,t[e[178]="INSUFFICIENT_TOKEN_BALANCE"]=178,t[e[179]="TOKEN_WAS_DELETED"]=179,t[e[180]="TOKEN_HAS_NO_SUPPLY_KEY"]=180,t[e[181]="TOKEN_HAS_NO_WIPE_KEY"]=181,t[e[182]="INVALID_TOKEN_MINT_AMOUNT"]=182,t[e[183]="INVALID_TOKEN_BURN_AMOUNT"]=183,t[e[184]="TOKEN_NOT_ASSOCIATED_TO_ACCOUNT"]=184,t[e[185]="CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT"]=185,t[e[186]="INVALID_KYC_KEY"]=186,t[e[187]="INVALID_WIPE_KEY"]=187,t[e[188]="INVALID_FREEZE_KEY"]=188,t[e[189]="INVALID_SUPPLY_KEY"]=189,t[e[190]="MISSING_TOKEN_NAME"]=190,t[e[191]="TOKEN_NAME_TOO_LONG"]=191,t[e[192]="INVALID_WIPING_AMOUNT"]=192,t[e[193]="TOKEN_IS_IMMUTABLE"]=193,t[e[194]="TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT"]=194,t[e[195]="TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES"]=195,t[e[196]="ACCOUNT_IS_TREASURY"]=196,t[e[197]="TOKEN_ID_REPEATED_IN_TOKEN_LIST"]=197,t[e[198]="TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=198,t[e[199]="EMPTY_TOKEN_TRANSFER_BODY"]=199,t[e[200]="EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS"]=200,t[e[201]="INVALID_SCHEDULE_ID"]=201,t[e[202]="SCHEDULE_IS_IMMUTABLE"]=202,t[e[203]="INVALID_SCHEDULE_PAYER_ID"]=203,t[e[204]="INVALID_SCHEDULE_ACCOUNT_ID"]=204,t[e[205]="NO_NEW_VALID_SIGNATURES"]=205,t[e[206]="UNRESOLVABLE_REQUIRED_SIGNERS"]=206,t[e[207]="SCHEDULED_TRANSACTION_NOT_IN_WHITELIST"]=207,t[e[208]="SOME_SIGNATURES_WERE_INVALID"]=208,t[e[209]="TRANSACTION_ID_FIELD_NOT_ALLOWED"]=209,t[e[210]="IDENTICAL_SCHEDULE_ALREADY_CREATED"]=210,t[e[211]="INVALID_ZERO_BYTE_IN_STRING"]=211,t[e[212]="SCHEDULE_ALREADY_DELETED"]=212,t[e[213]="SCHEDULE_ALREADY_EXECUTED"]=213,t[e[214]="MESSAGE_SIZE_TOO_LARGE"]=214,t[e[215]="OPERATION_REPEATED_IN_BUCKET_GROUPS"]=215,t[e[216]="BUCKET_CAPACITY_OVERFLOW"]=216,t[e[217]="NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION"]=217,t[e[218]="BUCKET_HAS_NO_THROTTLE_GROUPS"]=218,t[e[219]="THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC"]=219,t[e[220]="SUCCESS_BUT_MISSING_EXPECTED_OPERATION"]=220,t[e[221]="UNPARSEABLE_THROTTLE_DEFINITIONS"]=221,t[e[222]="INVALID_THROTTLE_DEFINITIONS"]=222,t[e[223]="ACCOUNT_EXPIRED_AND_PENDING_REMOVAL"]=223,t[e[224]="INVALID_TOKEN_MAX_SUPPLY"]=224,t[e[225]="INVALID_TOKEN_NFT_SERIAL_NUMBER"]=225,t[e[226]="INVALID_NFT_ID"]=226,t[e[227]="METADATA_TOO_LONG"]=227,t[e[228]="BATCH_SIZE_LIMIT_EXCEEDED"]=228,t[e[229]="INVALID_QUERY_RANGE"]=229,t[e[230]="FRACTION_DIVIDES_BY_ZERO"]=230,t[e[231]="INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE"]=231,t[e[232]="CUSTOM_FEES_LIST_TOO_LONG"]=232,t[e[233]="INVALID_CUSTOM_FEE_COLLECTOR"]=233,t[e[234]="INVALID_TOKEN_ID_IN_CUSTOM_FEES"]=234,t[e[235]="TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR"]=235,t[e[236]="TOKEN_MAX_SUPPLY_REACHED"]=236,t[e[237]="SENDER_DOES_NOT_OWN_NFT_SERIAL_NO"]=237,t[e[238]="CUSTOM_FEE_NOT_FULLY_SPECIFIED"]=238,t[e[239]="CUSTOM_FEE_MUST_BE_POSITIVE"]=239,t[e[240]="TOKEN_HAS_NO_FEE_SCHEDULE_KEY"]=240,t[e[241]="CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE"]=241,t[e[242]="ROYALTY_FRACTION_CANNOT_EXCEED_ONE"]=242,t[e[243]="FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT"]=243,t[e[244]="CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES"]=244,t[e[245]="CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON"]=245,t[e[246]="CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=246,t[e[247]="INVALID_CUSTOM_FEE_SCHEDULE_KEY"]=247,t[e[248]="INVALID_TOKEN_MINT_METADATA"]=248,t[e[249]="INVALID_TOKEN_BURN_METADATA"]=249,t[e[250]="CURRENT_TREASURY_STILL_OWNS_NFTS"]=250,t[e[251]="ACCOUNT_STILL_OWNS_NFTS"]=251,t[e[252]="TREASURY_MUST_OWN_BURNED_NFT"]=252,t[e[253]="ACCOUNT_DOES_NOT_OWN_WIPED_NFT"]=253,t[e[254]="ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=254,t[e[255]="MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED"]=255,t[e[256]="PAYER_ACCOUNT_DELETED"]=256,t[e[257]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH"]=257,t[e[258]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS"]=258,t[e[259]="INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE"]=259,t[e[260]="SERIAL_NUMBER_LIMIT_REACHED"]=260,t[e[261]="CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE"]=261,t[e[262]="NO_REMAINING_AUTOMATIC_ASSOCIATIONS"]=262,t[e[263]="EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT"]=263,t[e[264]="REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT"]=264,t[e[265]="TOKEN_IS_PAUSED"]=265,t[e[266]="TOKEN_HAS_NO_PAUSE_KEY"]=266,t[e[267]="INVALID_PAUSE_KEY"]=267,t[e[268]="FREEZE_UPDATE_FILE_DOES_NOT_EXIST"]=268,t[e[269]="FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH"]=269,t[e[270]="NO_UPGRADE_HAS_BEEN_PREPARED"]=270,t[e[271]="NO_FREEZE_IS_SCHEDULED"]=271,t[e[272]="UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE"]=272,t[e[273]="FREEZE_START_TIME_MUST_BE_FUTURE"]=273,t[e[274]="PREPARED_UPDATE_FILE_IS_IMMUTABLE"]=274,t[e[275]="FREEZE_ALREADY_SCHEDULED"]=275,t[e[276]="FREEZE_UPGRADE_IN_PROGRESS"]=276,t[e[277]="UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED"]=277,t[e[278]="UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED"]=278,t[e[279]="CONSENSUS_GAS_EXHAUSTED"]=279,t[e[280]="REVERTED_SUCCESS"]=280,t[e[281]="MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED"]=281,t[e[282]="INVALID_ALIAS_KEY"]=282,t[e[283]="UNEXPECTED_TOKEN_DECIMALS"]=283,t[e[284]="INVALID_PROXY_ACCOUNT_ID"]=284,t[e[285]="INVALID_TRANSFER_ACCOUNT_ID"]=285,t[e[286]="INVALID_FEE_COLLECTOR_ACCOUNT_ID"]=286,t[e[287]="ALIAS_IS_IMMUTABLE"]=287,t[e[288]="SPENDER_ACCOUNT_SAME_AS_OWNER"]=288,t[e[289]="AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY"]=289,t[e[290]="NEGATIVE_ALLOWANCE_AMOUNT"]=290,t[e[291]="CANNOT_APPROVE_FOR_ALL_FUNGIBLE_COMMON"]=291,t[e[292]="SPENDER_DOES_NOT_HAVE_ALLOWANCE"]=292,t[e[293]="AMOUNT_EXCEEDS_ALLOWANCE"]=293,t[e[294]="MAX_ALLOWANCES_EXCEEDED"]=294,t[e[295]="EMPTY_ALLOWANCES"]=295,t[e[296]="SPENDER_ACCOUNT_REPEATED_IN_ALLOWANCES"]=296,t[e[297]="REPEATED_SERIAL_NUMS_IN_NFT_ALLOWANCES"]=297,t[e[298]="FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES"]=298,t[e[299]="NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES"]=299,t[e[300]="INVALID_ALLOWANCE_OWNER_ID"]=300,t[e[301]="INVALID_ALLOWANCE_SPENDER_ID"]=301,t}(),n.ConsensusTopicInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.runningHash=e.bytes();break;case 3:r.sequenceNumber=e.uint64();break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 9:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createTopic"}),Object.defineProperty(e.prototype.updateTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTopic"}),Object.defineProperty(e.prototype.deleteTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteTopic"}),Object.defineProperty(e.prototype.getTopicInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTopicInfo"}),Object.defineProperty(e.prototype.submitMessage=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"submitMessage"}),e}(),n.Query=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyQuery.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDQuery.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalQuery.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoQuery.decode(e,e.uint32());break;case 5:r.contractGetBytecode=s.proto.ContractGetBytecodeQuery.decode(e,e.uint32());break;case 6:r.ContractGetRecords=s.proto.ContractGetRecordsQuery.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceQuery.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsQuery.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoQuery.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashQuery.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersQuery.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsQuery.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoQuery.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptQuery.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordQuery.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordQuery.decode(e,e.uint32());break;case 50:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoQuery.decode(e,e.uint32());break;case 51:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoQuery.decode(e,e.uint32());break;case 52:r.tokenGetInfo=s.proto.TokenGetInfoQuery.decode(e,e.uint32());break;case 53:r.scheduleGetInfo=s.proto.ScheduleGetInfoQuery.decode(e,e.uint32());break;case 54:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosQuery.decode(e,e.uint32());break;case 55:r.tokenGetNftInfo=s.proto.TokenGetNftInfoQuery.decode(e,e.uint32());break;case 56:r.tokenGetNftInfos=s.proto.TokenGetNftInfosQuery.decode(e,e.uint32());break;case 57:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeQuery.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.key=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.EntityID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyResponse=function(){function e(e){if(this.entities=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.entities&&r.entities.length||(r.entities=[]),r.entities.push(s.proto.EntityID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.solidityID=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractLoginfo=function(){function e(e){if(this.topic=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.bloom=e.bytes();break;case 3:r.topic&&r.topic.length||(r.topic=[]),r.topic.push(e.bytes());break;case 4:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractFunctionResult=function(){function e(e){if(this.logInfo=[],this.createdContractIDs=[],this.stateChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.contractCallResult=e.bytes();break;case 3:r.errorMessage=e.string();break;case 4:r.bloom=e.bytes();break;case 5:r.gasUsed=e.uint64();break;case 6:r.logInfo&&r.logInfo.length||(r.logInfo=[]),r.logInfo.push(s.proto.ContractLoginfo.decode(e,e.uint32()));break;case 7:r.createdContractIDs&&r.createdContractIDs.length||(r.createdContractIDs=[]),r.createdContractIDs.push(s.proto.ContractID.decode(e,e.uint32()));break;case 8:r.stateChanges&&r.stateChanges.length||(r.stateChanges=[]),r.stateChanges.push(s.proto.ContractStateChange.decode(e,e.uint32()));break;case 9:r.evmAddress=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.gas=e.int64();break;case 4:r.functionParameters=e.bytes();break;case 5:r.maxResultSize=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.functionResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractStateChange=function(){function e(e){if(this.storageChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.storageChanges&&r.storageChanges.length||(r.storageChanges=[]),r.storageChanges.push(s.proto.StorageChange.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.StorageChange=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.slot=e.bytes();break;case 2:r.valueRead=e.bytes();break;case 3:r.valueWritten=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractInfo=s.proto.ContractGetInfoResponse.ContractInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.ContractInfo=function(){function e(e){if(this.tokenRelationships=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractAccountID=e.string();break;case 4:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 5:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.storage=e.int64();break;case 8:r.memo=e.string();break;case 9:r.balance=e.uint64();break;case 10:r.deleted=e.bool();break;case 11:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.ContractGetBytecodeQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetBytecodeResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 6:r.bytecode=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionRecord=function(){function e(e){if(this.tokenTransferLists=[],this.assessedCustomFees=[],this.automaticTokenAssociations=[],this.cryptoAdjustments=[],this.nftAdjustments=[],this.tokenAdjustments=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 2:r.transactionHash=e.bytes();break;case 3:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 5:r.memo=e.string();break;case 6:r.transactionFee=e.uint64();break;case 7:r.contractCallResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 8:r.contractCreateResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 10:r.transferList=s.proto.TransferList.decode(e,e.uint32());break;case 11:r.tokenTransferLists&&r.tokenTransferLists.length||(r.tokenTransferLists=[]),r.tokenTransferLists.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;case 12:r.scheduleRef=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.assessedCustomFees&&r.assessedCustomFees.length||(r.assessedCustomFees=[]),r.assessedCustomFees.push(s.proto.AssessedCustomFee.decode(e,e.uint32()));break;case 14:r.automaticTokenAssociations&&r.automaticTokenAssociations.length||(r.automaticTokenAssociations=[]),r.automaticTokenAssociations.push(s.proto.TokenAssociation.decode(e,e.uint32()));break;case 15:r.parentConsensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 16:r.alias=e.bytes();break;case 17:r.cryptoAdjustments&&r.cryptoAdjustments.length||(r.cryptoAdjustments=[]),r.cryptoAdjustments.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 18:r.nftAdjustments&&r.nftAdjustments.length||(r.nftAdjustments=[]),r.nftAdjustments.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 19:r.tokenAdjustments&&r.tokenAdjustments.length||(r.tokenAdjustments=[]),r.tokenAdjustments.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionReceipt=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.status=e.int32();break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 5:r.exchangeRate=s.proto.ExchangeRateSet.decode(e,e.uint32());break;case 6:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 7:r.topicSequenceNumber=e.uint64();break;case 8:r.topicRunningHash=e.bytes();break;case 9:r.topicRunningHashVersion=e.uint64();break;case 10:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 11:r.newTotalSupply=e.uint64();break;case 12:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 14:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.hbarEquiv=e.int32();break;case 2:r.centEquiv=e.int32();break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ExchangeRateSet=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentRate=s.proto.ExchangeRate.decode(e,e.uint32());break;case 2:r.nextRate=s.proto.ExchangeRate.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceResponse=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.balance=e.uint64();break;case 4:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountInfo=s.proto.CryptoGetInfoResponse.AccountInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.AccountInfo=function(){function e(e){if(this.liveHashes=[],this.tokenRelationships=[],this.grantedCryptoAllowances=[],this.grantedNftAllowances=[],this.grantedTokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.contractAccountID=e.string();break;case 3:r.deleted=e.bool();break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.proxyReceived=e.int64();break;case 7:r.key=s.proto.Key.decode(e,e.uint32());break;case 8:r.balance=e.uint64();break;case 9:r.generateSendRecordThreshold=e.uint64();break;case 10:r.generateReceiveRecordThreshold=e.uint64();break;case 11:r.receiverSigRequired=e.bool();break;case 12:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 14:r.liveHashes&&r.liveHashes.length||(r.liveHashes=[]),r.liveHashes.push(s.proto.LiveHash.decode(e,e.uint32()));break;case 15:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 16:r.memo=e.string();break;case 17:r.ownedNfts=e.int64();break;case 18:r.maxAutomaticTokenAssociations=e.int32();break;case 19:r.alias=e.bytes();break;case 20:r.ledgerId=e.bytes();break;case 21:r.grantedCryptoAllowances&&r.grantedCryptoAllowances.length||(r.grantedCryptoAllowances=[]),r.grantedCryptoAllowances.push(s.proto.GrantedCryptoAllowance.decode(e,e.uint32()));break;case 22:r.grantedNftAllowances&&r.grantedNftAllowances.length||(r.grantedNftAllowances=[]),r.grantedNftAllowances.push(s.proto.GrantedNftAllowance.decode(e,e.uint32()));break;case 23:r.grantedTokenAllowances&&r.grantedTokenAllowances.length||(r.grantedTokenAllowances=[]),r.grantedTokenAllowances.push(s.proto.GrantedTokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),e}(),n.CryptoGetLiveHashQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.hash=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetLiveHashResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ProxyStaker=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AllProxyStakers=function(){function e(e){if(this.proxyStaker=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.proxyStaker&&r.proxyStaker.length||(r.proxyStaker=[]),r.proxyStaker.push(s.proto.ProxyStaker.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.stakers=s.proto.AllProxyStakers.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileContents=s.proto.FileGetContentsResponse.FileContents.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileContents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.FileGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileInfo=s.proto.FileGetInfoResponse.FileInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.size=e.int64();break;case 3:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.deleted=e.bool();break;case 5:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.TransactionGetReceiptQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildReceipts=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetReceiptResponse=function(){function e(e){if(this.duplicateTransactionReceipts=[],this.childTransactionReceipts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 4:r.duplicateTransactionReceipts&&r.duplicateTransactionReceipts.length||(r.duplicateTransactionReceipts=[]),r.duplicateTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;case 5:r.childTransactionReceipts&&r.childTransactionReceipts.length||(r.childTransactionReceipts=[]),r.childTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildRecords=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordResponse=function(){function e(e){if(this.duplicateTransactionRecords=[],this.childTransactionRecords=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;case 4:r.duplicateTransactionRecords&&r.duplicateTransactionRecords.length||(r.duplicateTransactionRecords=[]),r.duplicateTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;case 5:r.childTransactionRecords&&r.childTransactionRecords.length||(r.childTransactionRecords=[]),r.childTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.hapiProtoVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;case 3:r.hederaServicesVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeQuery=function(){function e(e){if(this.transactionIds=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionIds&&r.transactionIds.length||(r.transactionIds=[]),r.transactionIds.push(s.proto.TransactionID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeResponse=function(){function e(e){if(this.executionTimes=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:if(r.executionTimes&&r.executionTimes.length||(r.executionTimes=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenInfo=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.name=e.string();break;case 3:r.symbol=e.string();break;case 4:r.decimals=e.uint32();break;case 5:r.totalSupply=e.uint64();break;case 6:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 12:r.defaultFreezeStatus=e.int32();break;case 13:r.defaultKycStatus=e.int32();break;case 14:r.deleted=e.bool();break;case 15:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 16:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 17:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 18:r.memo=e.string();break;case 19:r.tokenType=e.int32();break;case 20:r.supplyType=e.int32();break;case 21:r.maxSupply=e.int64();break;case 22:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 23:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 24:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;case 25:r.pauseStatus=e.int32();break;case 26:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenInfo=s.proto.TokenInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 2:r.deletionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.executionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.signers=s.proto.KeyList.decode(e,e.uint32());break;case 9:r.creatorAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 10:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.scheduleInfo=s.proto.ScheduleInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.serialNumber=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.nftID=s.proto.NftID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenNftInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nftID=s.proto.NftID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.creationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.metadata=e.bytes();break;case 5:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nft=s.proto.TokenNftInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Response=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyResponse.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDResponse.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalResponse.decode(e,e.uint32());break;case 5:r.contractGetBytecodeResponse=s.proto.ContractGetBytecodeResponse.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoResponse.decode(e,e.uint32());break;case 6:r.contractGetRecordsResponse=s.proto.ContractGetRecordsResponse.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceResponse.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsResponse.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoResponse.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashResponse.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersResponse.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsResponse.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoResponse.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptResponse.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordResponse.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordResponse.decode(e,e.uint32());break;case 150:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoResponse.decode(e,e.uint32());break;case 151:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoResponse.decode(e,e.uint32());break;case 152:r.tokenGetInfo=s.proto.TokenGetInfoResponse.decode(e,e.uint32());break;case 153:r.scheduleGetInfo=s.proto.ScheduleGetInfoResponse.decode(e,e.uint32());break;case 154:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosResponse.decode(e,e.uint32());break;case 155:r.tokenGetNftInfo=s.proto.TokenGetNftInfoResponse.decode(e,e.uint32());break;case 156:r.tokenGetNftInfos=s.proto.TokenGetNftInfosResponse.decode(e,e.uint32());break;case 157:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeResponse.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createAccount"}),Object.defineProperty(e.prototype.updateAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateAccount"}),Object.defineProperty(e.prototype.cryptoTransfer=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoTransfer"}),Object.defineProperty(e.prototype.cryptoDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoDelete"}),Object.defineProperty(e.prototype.approveAllowances=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"approveAllowances"}),Object.defineProperty(e.prototype.adjustAllowance=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"adjustAllowance"}),Object.defineProperty(e.prototype.addLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"addLiveHash"}),Object.defineProperty(e.prototype.deleteLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteLiveHash"}),Object.defineProperty(e.prototype.getLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getLiveHash"}),Object.defineProperty(e.prototype.getAccountRecords=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountRecords"}),Object.defineProperty(e.prototype.cryptoGetBalance=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"cryptoGetBalance"}),Object.defineProperty(e.prototype.getAccountInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountInfo"}),Object.defineProperty(e.prototype.getTransactionReceipts=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTransactionReceipts"}),Object.defineProperty(e.prototype.getFastTransactionRecord=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFastTransactionRecord"}),Object.defineProperty(e.prototype.getTxRecordByTxID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByTxID"}),Object.defineProperty(e.prototype.getStakersByAccountID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getStakersByAccountID"}),e}(),n.FileService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createFile"}),Object.defineProperty(e.prototype.updateFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateFile"}),Object.defineProperty(e.prototype.deleteFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteFile"}),Object.defineProperty(e.prototype.appendContent=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"appendContent"}),Object.defineProperty(e.prototype.getFileContent=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileContent"}),Object.defineProperty(e.prototype.getFileInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileInfo"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.FreezeService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.freeze=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freeze"}),e}(),n.ConsensusTopicQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.consensusStartTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.consensusEndTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.limit=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusTopicResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.runningHash=e.bytes();break;case 4:r.sequenceNumber=e.uint64();break;case 5:r.runningHashVersion=e.uint64();break;case 6:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.MirrorConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.subscribeTopic=function e(t,n){return this.rpcCall(e,s.proto.ConsensusTopicQuery,s.proto.ConsensusTopicResponse,t,n)},"name",{value:"subscribeTopic"}),e}(),n.AddressBookQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileId=s.proto.FileID.decode(e,e.uint32());break;case 2:r.limit=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.MirrorNetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getNodes=function e(t,n){return this.rpcCall(e,s.proto.AddressBookQuery,s.proto.NodeAddress,t,n)},"name",{value:"getNodes"}),e}(),n.NetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getVersionInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getVersionInfo"}),Object.defineProperty(e.prototype.getExecutionTime=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getExecutionTime"}),Object.defineProperty(e.prototype.uncheckedSubmit=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"uncheckedSubmit"}),e}(),n.ScheduleService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createSchedule"}),Object.defineProperty(e.prototype.signSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"signSchedule"}),Object.defineProperty(e.prototype.deleteSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteSchedule"}),Object.defineProperty(e.prototype.getScheduleInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getScheduleInfo"}),e}(),n.SmartContractService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createContract"}),Object.defineProperty(e.prototype.updateContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateContract"}),Object.defineProperty(e.prototype.contractCallMethod=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"contractCallMethod"}),Object.defineProperty(e.prototype.getContractInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getContractInfo"}),Object.defineProperty(e.prototype.contractCallLocalMethod=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"contractCallLocalMethod"}),Object.defineProperty(e.prototype.contractGetBytecode=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"ContractGetBytecode"}),Object.defineProperty(e.prototype.getBySolidityID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getBySolidityID"}),Object.defineProperty(e.prototype.getTxRecordByContractID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByContractID"}),Object.defineProperty(e.prototype.deleteContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteContract"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.ThrottleGroup=function(){function e(e){if(this.operations=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:if(r.operations&&r.operations.length||(r.operations=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.name=e.string();break;case 2:r.burstPeriodMs=e.uint64();break;case 3:r.throttleGroups&&r.throttleGroups.length||(r.throttleGroups=[]),r.throttleGroups.push(s.proto.ThrottleGroup.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ThrottleDefinitions=function(){function e(e){if(this.throttleBuckets=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.throttleBuckets&&r.throttleBuckets.length||(r.throttleBuckets=[]),r.throttleBuckets.push(s.proto.ThrottleBucket.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createToken"}),Object.defineProperty(e.prototype.updateToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateToken"}),Object.defineProperty(e.prototype.mintToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"mintToken"}),Object.defineProperty(e.prototype.burnToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"burnToken"}),Object.defineProperty(e.prototype.deleteToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteToken"}),Object.defineProperty(e.prototype.wipeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"wipeTokenAccount"}),Object.defineProperty(e.prototype.freezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freezeTokenAccount"}),Object.defineProperty(e.prototype.unfreezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unfreezeTokenAccount"}),Object.defineProperty(e.prototype.grantKycToTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"grantKycToTokenAccount"}),Object.defineProperty(e.prototype.revokeKycFromTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"revokeKycFromTokenAccount"}),Object.defineProperty(e.prototype.associateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"associateTokens"}),Object.defineProperty(e.prototype.dissociateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"dissociateTokens"}),Object.defineProperty(e.prototype.updateTokenFeeSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTokenFeeSchedule"}),Object.defineProperty(e.prototype.getTokenInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenInfo"}),Object.defineProperty(e.prototype.getAccountNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountNftInfos"}),Object.defineProperty(e.prototype.getTokenNftInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfo"}),Object.defineProperty(e.prototype.getTokenNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfos"}),Object.defineProperty(e.prototype.pauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"pauseToken"}),Object.defineProperty(e.prototype.unpauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unpauseToken"}),e}(),n.SignedTransaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.bodyBytes=e.bytes();break;case 2:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionList=function(){function e(e){if(this.transactionList=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionList&&r.transactionList.length||(r.transactionList=[]),r.transactionList.push(s.proto.Transaction.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),n.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),n.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n}();t.proto=l;var f=s.google=function(){var e,t={};return t.protobuf=((e={}).DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),e.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),e.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),e.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),e.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),e.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),e.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),e.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),e.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e),t}();t.google=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(70)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(42)),f=r(n(604));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var p=function(e){(0,u.default)(n,e);var t=d(n);function n(e){var r;return(0,o.default)(this,n),(r=t.call(this,"gRPC service failed with status: ".concat(e.toString()))).status=e,r.name="GrpcServiceError",void 0!==Error.captureStackTrace&&Error.captureStackTrace((0,i.default)(r),n),r}return(0,a.default)(n,null,[{key:"_fromResponse",value:function(e){if(null!=e.code&&null!=e.details){var t=new n(f.default._fromValue(e.code));return t.message=e.details,t}return e}}]),n}((0,l.default)(Error));t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r){var a;return(0,o.default)(this,n),(a=t.call(this)).message="query cost of ".concat(e.toString()," HBAR exceeds max set on client: ").concat(r.toString()," HBAR"),a.name="MaxQueryPaymentExceededError",a.queryCost=e,a.maxQueryPayment=r,a}return n}((0,r(n(42)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38)),c=r(n(60)),s=r(n(1227));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.storageChanges=t.storageChanges,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){var e=this.storageChanges.map((function(e){return e._toProtobuf()}));return{contractID:this.contractId._toProtobuf(),storageChanges:e}}},{key:"toBytes",value:function(){return u.ContractStateChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:c.default._fromProtobuf(t.contractID),storageChanges:(null!=t.storageChanges?t.storageChanges:[]).map((function(e){return s.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.ContractStateChange.decode(t))}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.slot=t.slot,this.valueRead=t.valueRead,this.valueWritten=t.valueWritten}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{slot:this.slot,valueRead:this.valueRead,valueWritten:null!=this.valueWritten?{value:this.valueWritten}:null}}},{key:"toBytes",value:function(){return u.StorageChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({slot:t.slot,valueRead:t.valueRead,valueWritten:null!=t.valueWritten&&null!=t.valueWritten.value?t.valueWritten.value:null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.StorageChange.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(13)),u=r(n(29)),c=r(n(31)),s=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._accountId,null!=t.accountId&&this.setAccountId(t.accountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId),this._defaultMaxTransactionFee=new c.default(5)}return(0,a.default)(e,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?u.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){return{accountId:null!=this._accountId?this._accountId._toProtobuf():void 0,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():void 0}}}],[{key:"_fromProtobuf",value:function(t){return new e({accountId:null!=t.accountId?i.default._fromProtobuf(t.accountId):void 0,tokenId:null!=t.tokenId?u.default._fromProtobuf(t.tokenId):void 0})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=r(n(13)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(612));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var m=function(e){(0,s.default)(r,e);var t,n=y(r);function r(){return(0,u.default)(this,r),n.call(this,(function(e){return d.default.fromString(e)}))}return(0,c.default)(r,null,[{key:"_fromTransaction",value:(t=(0,i.default)(a.default.mark((function e(t){var n,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=new r,o=0;case 2:if(!(o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarApprovals=null!=r.hbarApprovals?r.hbarApprovals:[],e._tokenApprovals=null!=r.tokenApprovals?r.tokenApprovals:[],e._nftApprovals=null!=r.nftApprovals?r.nftApprovals:[],e}return(0,i.default)(n,[{key:"hbarApprovals",get:function(){return this._hbarApprovals}},{key:"approveHbarAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._hbarApprovals.push(new m.default({spenderAccountId:"string"==typeof t?f.default.fromString(t):t,ownerAccountId:"string"==typeof e?f.default.fromString(e):e,amount:n instanceof y.default?n:new y.default(n)})),this}},{key:"addHbarAllowance",value:function(e,t){return this._requireNotFrozen(),this._hbarApprovals.push(new m.default({spenderAccountId:"string"==typeof e?f.default.fromString(e):e,amount:t instanceof y.default?t:new y.default(t),ownerAccountId:null})),this}},{key:"tokenApprovals",get:function(){return this._tokenApprovals}},{key:"approveTokenAllowance",value:function(e,t,n,r){return this._requireNotFrozen(),this._tokenApprovals.push(new b.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof n?f.default.fromString(n):n,ownerAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof r?h.default.fromNumber(r):r})),this}},{key:"addTokenAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._tokenApprovals.push(new b.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof n?h.default.fromNumber(n):n,ownerAccountId:null})),this}},{key:"addTokenNftAllowance",value:function(e,t){return this._approveTokenNftAllowance(e,null,t)}},{key:"_approveTokenNftAllowance",value:function(e,t,n){this._requireNotFrozen();var r,o="string"==typeof e?p.default.fromString(e):e,a="string"==typeof n?f.default.fromString(n):n,i=!1,u=g(this._nftApprovals);try{for(u.s();!(r=u.n()).done;){var c=r.value;if(0===c.tokenId.compare(o.tokenId)&&0===c.spenderAccountId.compare(a)){null!=c.serialNumbers&&c.serialNumbers.push(o.serial),i=!0;break}}}catch(e){u.e(e)}finally{u.f()}return i||this._nftApprovals.push(new v.default({tokenId:o.tokenId,spenderAccountId:"string"==typeof n?f.default.fromString(n):n,ownerAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:[o.serial],allSerials:!1})),this}},{key:"approveTokenNftAllowance",value:function(e,t,n){return this._approveTokenNftAllowance(e,t,n)}},{key:"_approveAllTokenNftAllowance",value:function(e,t,n,r){return this._requireNotFrozen(),this._nftApprovals.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof n?f.default.fromString(n):n,ownerAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:null,allSerials:r})),this}},{key:"addAllTokenNftAllowance",value:function(e,t,n){return this._approveAllTokenNftAllowance(e,t,n,!0)}},{key:"approveTokenNftAllowanceAllSerials",value:function(e,t,n){return this._approveAllTokenNftAllowance(e,t,n,!0)}},{key:"_validateChecksums",value:function(e){this._hbarApprovals.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenApprovals.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)})),this._nftApprovals.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e),null!=t.ownerAccountId&&t.ownerAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.approveAllowances(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoApproveAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarApprovals.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenApprovals.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftApprovals.map((function(e){return e._toProtobuf()}))}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"AccountAllowanceApproveTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoApproveAllowance;return l.default._fromProtobufTransactions(new n({hbarApprovals:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),tokenApprovals:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),nftApprovals:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=I,l.TRANSACTION_REGISTRY.set("cryptoApproveAllowance",I._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(29));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(90)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(29));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(90)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(31)),f=r(n(13)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),p=r(n(67)),h=r(n(18)),y=r(n(47));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._key=null,e._initialBalance=null,e._sendRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiveRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=new p.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._accountMemo=null,e._maxAutomaticTokenAssociations=null,null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),e}return(0,i.default)(n,[{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"_validateChecksums",value:function(e){null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.createAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoCreateAccount"}},{key:"_makeTransactionData",value:function(){return{key:null!=this._key?this._key._toProtobufKey():null,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,receiveRecordThreshold:this._receiveRecordThreshold.toTinybars(),sendRecordThreshold:this._sendRecordThreshold.toTinybars(),receiverSigRequired:this._receiverSignatureRequired,memo:this._accountMemo,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?this._maxAutomaticTokenAssociations.toInt():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"AccountCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoCreateAccount;return d.default._fromProtobufTransactions(new n({key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,accountMemo:null!=i.memo?i.memo:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations?i.maxAutomaticTokenAssociations:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=v,d.TRANSACTION_REGISTRY.set("cryptoCreateAccount",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(13)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._transferAccountId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDelete"}},{key:"_makeTransactionData",value:function(){return{deleteAccountID:null!=this._accountId?this._accountId._toProtobuf():null,transferAccountID:null!=this._transferAccountId?this._transferAccountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"AccountDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDelete;return f.default._fromProtobufTransactions(new n({accountId:null!=i.deleteAccountID?l.default._fromProtobuf(i.deleteAccountID):void 0,transferAccountId:null!=i.transferAccountID?l.default._fromProtobuf(i.transferAccountID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("cryptoDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(18)),u=r(n(29)),c=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.symbol=t.symbol,this.balance=t.balance,this.isKycGranted=t.isKycGranted,this.isFrozen=t.isFrozen,this.automaticAssociation=t.automaticAssociation,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),symbol:this.symbol,balance:this.balance,kycStatus:null==this.isKycGranted?0:this.isKycGranted?1:2,freezeStatus:null==this.isFrozen?0:this.isFrozen?1:2,automaticAssociation:this.automaticAssociation}}}],[{key:"_fromProtobuf",value:function(t){var n=u.default._fromProtobuf(t.tokenId),r=null==t.kycStatus||0===t.kycStatus?null:1===t.kycStatus,o=null==t.freezeStatus||0===t.freezeStatus?null:1===t.freezeStatus;return new e({tokenId:n,symbol:t.symbol,balance:null!=t.balance?t.balance instanceof i.default?t.balance:i.default.fromValue(t.balance):i.default.ZERO,isKycGranted:r,isFrozen:o,automaticAssociation:null!=t.automaticAssociation?t.automaticAssociation:null})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),h=r(n(13)),y=r(n(615)),m=r(n(31));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e}return(0,c.default)(r,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetInfo;return Promise.resolve(y.default._fromProtobuf(r.accountInfo))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetInfo:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"AccountInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetInfo;return new r({accountId:null!=t.accountID?h.default._fromProtobuf(t.accountID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("cryptoGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),f=r(n(13)),d=r(n(352));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountRecords(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetAccountRecords.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetAccountRecords.records;return Promise.resolve(r.map((function(e){return d.default._fromProtobuf({transactionRecord:e})})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetAccountRecords:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"AccountRecordsQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetAccountRecords;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetAccountRecords",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),f=r(n(13)),d=r(n(617));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getStakersByAccountID(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetProxyStakers.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetProxyStakers.stakers;return Promise.resolve((null!=t.proxyStaker?t.proxyStaker:[]).map((function(e){return d.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetProxyStakers:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"AccountStakersQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetProxyStakers;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetProxyStakers",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),f=r(n(13)),d=r(n(48)),p=r(n(67)),h=r(n(18)),y=r(n(47));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._key=null,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=null,e._expirationTime=null,e._accountMemo=null,e._maxAutomaticTokenAssociations=null,e._aliasKey=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof Date?d.default.fromDate(e):e,this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"clearAccountMemo",value:function(){return this._requireNotFrozen(),this._accountMemo=null,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"aliasKey",get:function(){return null}},{key:"setAliasKey",value:function(e){return this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.updateAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoUpdateAccount"}},{key:"_makeTransactionData",value:function(){return{accountIDToUpdate:null!=this._accountId?this._accountId._toProtobuf():null,key:null!=this._key?this._key._toProtobufKey():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,receiverSigRequiredWrapper:null==this._receiverSignatureRequired?null:{value:this._receiverSignatureRequired},memo:null!=this._accountMemo?{value:this._accountMemo}:null,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?{value:this._maxAutomaticTokenAssociations.toInt()}:null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"AccountUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoUpdateAccount;return l.default._fromProtobufTransactions(new n({accountId:null!=i.accountIDToUpdate?f.default._fromProtobuf(i.accountIDToUpdate):void 0,key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,expirationTime:null!=i.expirationTime?d.default._fromProtobuf(i.expirationTime):void 0,accountMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations&&null!=i.maxAutomaticTokenAssociations.value?h.default.fromNumber(i.maxAutomaticTokenAssociations.value):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=v,l.TRANSACTION_REGISTRY.set("cryptoUpdateAccount",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(618)),c=r(n(619)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38)),l=r(n(66)),f=n(128);function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._fileId=null,null!=t.fileId&&this.setFileId(t.fileId),this._limit=null,null!=t.limit&&this.setLimit(t.limit),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return f.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},this._addresses=[],this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0}return(0,i.default)(e,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this._limit=e,this}},{key:"setMaxAttempts",value:function(e){this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this._maxBackoff=e}},{key:"execute",value:function(e,t){var n=this;return new Promise((function(r,o){n._makeServerStreamRequest(e,r,o,t)}))}},{key:"_makeServerStreamRequest",value:function(e,t,n,r){var o=this,a=s.AddressBookQuery.encode({fileId:null!=this._fileId?this._fileId._toProtobuf():null,limit:this._limit}).finish();e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("NetworkService","getNodes",a,(function(e){o._addresses.push(u.default._fromProtobuf(s.NodeAddress.decode(e))),null!=o._limit&&o._limit>0&&(o._limit=o._limit-1)}),(function(a){var i=a instanceof Error?a.message:a.details;if(o._attempt0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._address=null,null!=t.address&&this.setAddress(t.address),this._port=null,null!=t.port&&this.setPort(t.port)}return(0,a.default)(e,[{key:"address",get:function(){return this.address}},{key:"setAddress",value:function(e){return this._address=e,this}},{key:"port",get:function(){return this._port}},{key:"setPort",value:function(e){return this._port=e,this}},{key:"_toProtobuf",value:function(){return{ipAddressV4:null!=this._address?this._address._toProtobuf():null,port:this._port}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{address:null!=this._address?this._address.toString():null,port:null!=this._port?this._port.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({address:null!=t.ipAddressV4?i.default._fromProtobuf(t.ipAddressV4):void 0,port:null!=t.port?t.port:void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(1245)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._network=null,null!=t.network&&this.setNetwork(t.network),this._host=null,null!=t.host&&this.setHost(t.host)}return(0,a.default)(e,[{key:"newtork",get:function(){return this._network}},{key:"setNetwork",value:function(e){return this._network=e,this}},{key:"host",get:function(){return this._host}},{key:"setHost",value:function(e){return this._host=e,this}},{key:"_toProtobuf",value:function(){return Uint8Array.of(null!=this._network&&null!=this._network._left?this._network._left:0,null!=this._network&&null!=this._network.right?this._network.right:0,null!=this._host&&null!=this._host.left?this._host.left:0,null!=this._host&&null!=this._host.right?this._host.right:0)}},{key:"toString",value:function(){return null!=this._network&&null!=this._host?"".concat(this._network.toString(),".").concat(this._host.toString()):""}}],[{key:"_fromProtobuf",value:function(t){return new e({network:(new i.default).setLeft(t[0]).setRight(t[1]),host:(new i.default).setLeft(t[2]).setRight(t[3])})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._left=null,null!=t.left&&this.setLeft(t.left),this._right=null,null!=t.right&&this.setRight(t.right)}return(0,a.default)(e,[{key:"left",get:function(){return this._left}},{key:"setLeft",value:function(e){return this._left=e,this}},{key:"right",get:function(){return this._right}},{key:"setRight",value:function(e){return this._right=e,this}},{key:"toString",value:function(){return null!=this._left&&null!=this._right?"".concat(this._left.toString(),".").concat(this._right.toString()):""}}]),e}();t.default=i},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),f=r(n(60));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractGetBytecode(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractGetBytecodeResponse.header}},{key:"_mapResponse",value:function(e){var t=e.contractGetBytecodeResponse;return Promise.resolve(null!=t.bytecode?t.bytecode:new Uint8Array)}},{key:"_onMakeRequest",value:function(e){return{contractGetBytecode:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"ContractByteCodeQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetBytecode;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("contractGetBytecode",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),f=r(n(60)),d=r(n(273)),p=r(n(354)),h=r(n(18));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e._gas=null,null!=r.gas&&e.setGas(r.gas),e._functionParameters=null,null!=r.functionParameters&&(r.functionParameters instanceof Uint8Array?e.setFunctionParameters(r.functionParameters):e.setFunction(r.functionParameters.name,r.functionParameters.parameters)),e._maxResultSize=null,null!=r.maxResultSize&&e.setMaxResultSize(r.maxResultSize),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._functionParameters=(null!=t?t:new d.default)._build(e),this}},{key:"setMaxResultSize",value:function(e){return this._maxResultSize=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallLocalMethod(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractCallLocal.header}},{key:"_mapResponse",value:function(e){var t=e.contractCallLocal;return Promise.resolve(p.default._fromProtobuf(t.functionResult))}},{key:"_onMakeRequest",value:function(e){return{contractCallLocal:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,maxResultSize:this._maxResultSize,functionParameters:this._functionParameters}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"ContractCallQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractCallLocal;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0,gas:null!=t.gas?t.gas:void 0,functionParameters:null!=t.functionParameters?t.functionParameters:void 0,maxResultSize:null!=t.maxResultSize?t.maxResultSize:void 0})}}]),n}(l.default);t.default=b,l.QUERY_REGISTRY.set("contractCallLocal",b._fromProtobuf)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.keccak256=void 0;var r,o="0123456789abcdef".split(""),a=[1,256,65536,16777216],i=[0,8,16,24],u=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],c=function(e){var t,n,r,o,a,i,c,s,l,f,d,p,h,y,m,b,v,k,g,_,w,I,A,T,O,P,E,S,R,D,C,N,B,M,j,x,F,U,L,G,K,z,Q,H,V,W,q,Y,Z,J,X,$,ee,te,ne,re,oe,ae,ie,ue,ce,se,le;for(r=0;r<48;r+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],a=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],c=e[3]^e[13]^e[23]^e[33]^e[43],s=e[4]^e[14]^e[24]^e[34]^e[44],l=e[5]^e[15]^e[25]^e[35]^e[45],f=e[6]^e[16]^e[26]^e[36]^e[46],d=e[7]^e[17]^e[27]^e[37]^e[47],t=(p=e[8]^e[18]^e[28]^e[38]^e[48])^(i<<1|c>>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],m=e[1],W=e[11]<<4|e[10]>>>28,q=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,b=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,k=e[25]<<11|e[24]>>>21,g=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,P=e[18]<<20|e[19]>>>12,E=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,G=e[38]<<8|e[39]>>>24,K=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~b&k,e[1]=m^~v&g,e[10]=T^~P&S,e[11]=O^~E&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~W&Y,e[31]=V^~q&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=b^~k&_,e[3]=v^~g&w,e[12]=P^~S&D,e[13]=E^~R&C,e[22]=x^~U&G,e[23]=F^~L&K,e[32]=W^~Y&J,e[33]=q^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=k^~_&I,e[5]=g^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~G&z,e[25]=L^~K&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&m,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=G^~z&M,e[27]=K^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&b,e[9]=A^~m&v,e[18]=N^~T&P,e[19]=B^~O&E,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&W,e[39]=ee^~V&q,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];b%f==0&&(c(p),n=0)}return"0x"+m}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(621)),l=r(n(622)),f=r(n(623)),d=r(n(624)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(99));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}var y=function(){function e(){(0,u.default)(this,e),this._bytecode=null,this._contractCreate=new d.default}var t;return(0,c.default)(e,[{key:"bytecode",get:function(){return this._bytecode}},{key:"setBytecode",value:function(e){return this._bytecode=e instanceof Uint8Array?e:p.encode(e),this}},{key:"adminKey",get:function(){return this._contractCreate.adminKey}},{key:"setAdminKey",value:function(e){return this._contractCreate.setAdminKey(e),this}},{key:"gas",get:function(){return this._contractCreate.gas}},{key:"setGas",value:function(e){return this._contractCreate.setGas(e),this}},{key:"initialBalance",get:function(){return this._contractCreate.initialBalance}},{key:"setInitialBalance",value:function(e){return this._contractCreate.setInitialBalance(e),this}},{key:"proxyAccountId",get:function(){return this._contractCreate.proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._contractCreate.setProxyAccountId(e),this}},{key:"autoRenewPeriod",get:function(){return this._contractCreate.autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._contractCreate.setAutoRenewPeriod(e),this}},{key:"constructorParameters",get:function(){return this._contractCreate.constructorParameters}},{key:"setConstructorParameters",value:function(e){return this._contractCreate.setConstructorParameters(e),this}},{key:"contractMemo",get:function(){return this._contractCreate.contractMemo}},{key:"setContractMemo",value:function(e){return this._contractCreate.setContractMemo(e),this}},{key:"execute",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,o,i;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=this._bytecode){e.next=2;break}throw new Error("cannot create contract with no bytecode");case 2:return r=t.operatorPublicKey,e.next=5,(new s.default).setKeys(null!=r?[r]:[]).setContents(this._bytecode.subarray(0,Math.min(this._bytecode.length,2048))).execute(t,n);case 5:return e.next=7,e.sent.getReceipt(t);case 7:if(o=e.sent.fileId,!(this._bytecode.length>2048)){e.next=13;break}return e.next=11,(new l.default).setFileId(o).setContents(this._bytecode.subarray(2048)).execute(t,n);case 11:return e.next=13,e.sent.getReceipt(t);case 13:return e.next=15,this._contractCreate.setBytecodeFileId(o).execute(t);case 15:return i=e.sent,e.next=18,i.getReceipt(t);case 18:if(null==r){e.next=23;break}return e.next=21,(new f.default).setFileId(o).execute(t,n);case 21:return e.next=23,e.sent.getReceipt(t);case 23:return e.abrupt("return",i);case 24:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})}]),e}();t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),f=r(n(60)),d=r(n(13));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._transferAccountId=null,e._transferContractId=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),null!=r.transferContractId&&e.setTransferContractId(r.transferContractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"transferContractId",get:function(){return this._transferContractId}},{key:"setTransferContractId",value:function(e){return this._requireNotFrozen(),this._transferContractId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e),null!=this._transferContractId&&this._transferContractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.deleteContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractDeleteInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,transferAccountID:this._transferAccountId?this._transferAccountId._toProtobuf():null,transferContractID:null!=this._transferContractId?this._transferContractId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ContractDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractDeleteInstance;return l.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,transferAccountId:null!=i.transferAccountID?d.default._fromProtobuf(i.transferAccountID):void 0,transferContractId:null!=i.transferContractID?f.default._fromProtobuf(i.transferContractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("contractDeleteInstance",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(31)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),d=r(n(60)),p=r(n(273)),h=r(n(18));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._gas=null,e._amount=null,e._functionParameters=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.gas&&e.setGas(r.gas),null!=r.amount&&e.setPayableAmount(r.amount),null!=r.functionParameters?e.setFunctionParameters(r.functionParameters):null!=r.function&&e.setFunction(r.function.name,r.function.parameters),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"payableAmount",get:function(){return this._amount}},{key:"setPayableAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof l.default?e:new l.default(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._requireNotFrozen(),this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._requireNotFrozen(),this._functionParameters=null!=t?t._build(e):(new p.default)._build(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallMethod(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCall"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,amount:null!=this._amount?this._amount.toTinybars():null,functionParameters:this._functionParameters}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ContractExecuteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCall;return f.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,gas:null!=i.gas?i.gas:void 0,amount:i.amount?i.amount:void 0,functionParameters:null!=i.functionParameters?i.functionParameters:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=b,f.TRANSACTION_REGISTRY.set("contractCall",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),h=r(n(60)),y=r(n(625)),m=r(n(31));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._contractId=null,null!=t.contractId&&e.setContractId(t.contractId),e}return(0,c.default)(r,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.getContractInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.contractGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.contractGetInfo;return Promise.resolve(y.default._fromProtobuf(r.contractInfo))}},{key:"_onMakeRequest",value:function(e){return{contractGetInfo:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"ContractInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetInfo;return new r({contractId:null!=t.contractID?h.default._fromProtobuf(t.contractID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("contractGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(13)),f=r(n(60)),d=r(n(66)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),h=r(n(67)),y=r(n(48)),m=r(n(47));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._expirationTime=null,e._adminKey=null,e._proxyAccountId=null,e._autoRenewPeriod=null,e._bytecodeFileId=null,e._contractMemo=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return console.warn("Deprecated: there is no replacement"),this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"clearContractMemo",value:function(){return this._requireNotFrozen(),this._contractMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.updateContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractUpdateInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,fileID:this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,memoWrapper:null!=this._contractMemo?{value:this._contractMemo}:null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ContractUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractUpdateInstance,u=void 0;null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds&&(u=i.autoRenewPeriod.seconds);var c=void 0;return null!=i.memoWrapper&&null!=i.memoWrapper.value&&(c=i.memoWrapper.value),p.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,expirationTime:null!=i.expirationTime?y.default._fromProtobuf(i.expirationTime):void 0,adminKey:null!=i.adminKey?m.default._fromProtobufKey(i.adminKey):void 0,proxyAccountId:null!=i.proxyAccountID?l.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:u,contractMemo:c}),e,t,r,o,a)}}]),n}(p.default);t.default=k,p.TRANSACTION_REGISTRY.set("contractUpdateInstance",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(126)),f=r(n(60)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(81));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(e,r,o,i){return(0,a.default)(this,n),t.call(this,e,r,o,i)}return(0,i.default)(n,[{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e}},{key:"_toProtobufKey",value:function(){return{delegatableContractId:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,d.decode(r))}},{key:"fromString",value:function(e){return new n(f.default.fromString(e))}},{key:"_fromProtobuf",value:function(e){return new n(f.default._fromProtobuf(e))}},{key:"fromBytes",value:function(e){return new n(f.default.fromBytes(e))}},{key:"fromSolidityAddress",value:function(e){return new n(f.default.fromSolidityAddress(e))}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(f.default);t.default=y,l.default.delegateContractId=function(e){return y.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(351)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}var l=function(){function e(t){(0,a.default)(this,e),this.currentRate=t.currentRate,this.nextRate=t.nextRate,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{currentRate:this.currentRate._toProtobuf(),nextRate:this.nextRate._toProtobuf()}}}],[{key:"_fromProtobuf",value:function(t){return new e({currentRate:u.default._fromProtobuf(t.currentRate),nextRate:u.default._fromProtobuf(t.nextRate)})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(c.ExchangeRateSet.decode(t))}}]),e}();t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),f=r(n(66));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileContent(t)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_mapResponseHeader",value:function(e){return e.fileGetContents.header}},{key:"_mapResponse",value:function(e){var t=e.fileGetContents.fileContents.contents;return Promise.resolve(t)}},{key:"_onMakeRequest",value:function(e){return{fileGetContents:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"FileContentsQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetContents;return new n({fileId:null!=t.fileID?f.default._fromProtobuf(t.fileID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("fileGetContents",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),h=r(n(66)),y=r(n(626)),m=r(n(31));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._fileId=null,null!=t.fileId&&e.setFileId(t.fileId),e}return(0,c.default)(r,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.fileGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.fileGetInfo;return Promise.resolve(y.default._fromProtobuf(r.fileInfo))}},{key:"_onMakeRequest",value:function(e){return{fileGetInfo:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"FileInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetInfo;return new r({fileId:null!=t.fileID?h.default._fromProtobuf(t.fileID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("fileGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=b(n(24)),f=r(n(48)),d=b(n(99)),p=r(n(66)),h=r(n(47)),y=r(n(155));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._keys=null,e._expirationTime=null,e._contents=null,e._fileMemo=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof f.default?e:f.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"clearFileMemo",value:function(){return this._requireNotFrozen(),this._fileMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.updateFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileUpdate"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,contents:this._contents,memo:null!=this._fileMemo?{value:this._fileMemo}:null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"FileUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileUpdate;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?p.default._fromProtobuf(i.fileID):void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?f.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=k,l.TRANSACTION_REGISTRY.set("fileUpdate",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=m(n(24)),f=r(n(48)),d=r(n(66)),p=m(n(81)),h=r(n(1260));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._startTime=null,e._startTimestamp=null,e._endTime=null,e._fileId=null,e._fileHash=null,e._freezeType=null,null!=r.startTime&&e.setStartTime(r.startTime.hour,r.startTime.minute),null!=r.endTime&&e.setEndTime(r.endTime.hour,r.endTime.minute),null!=r.startTimestamp&&e.setStartTimestamp(r.startTimestamp),null!=r.updateFileId&&e.setUpdateFileId(r.updateFileId),null!=r.fileId&&e.setFileId(r.fileId),null!=r.fileHash&&e.setFileHash(r.fileHash),null!=r.freezeType&&e.setFreezeType(r.freezeType),e}return(0,i.default)(n,[{key:"startTime",get:function(){return null}},{key:"setStartTime",value:function(e,t){if(this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._startTime={hour:Number(n[0]),minute:Number(n[1])}}else this._startTime={hour:e,minute:t};return this}},{key:"startTimestamp",get:function(){return this._startTimestamp}},{key:"setStartTimestamp",value:function(e){return this._requireNotFrozen(),this._startTimestamp=e,this}},{key:"endTime",get:function(){return console.warn("`FreezeTransaction.endTime` is deprecated"),this._endTime}},{key:"setEndTime",value:function(e,t){if(console.warn("`FreezeTransaction.endTime` is deprecated"),this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._endTime={hour:Number(n[0]),minute:Number(n[1])}}else this._endTime={hour:e,minute:t};return this}},{key:"updateFileId",get:function(){return this.fileId}},{key:"setUpdateFileId",value:function(e){return this.setFileId(e)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e,this}},{key:"fileHash",get:function(){return this._fileHash}},{key:"setFileHash",value:function(e){return this._requireNotFrozen(),this._fileHash="string"==typeof e?p.decode(e):e,this}},{key:"freezeType",get:function(){return this._freezeType}},{key:"setFreezeType",value:function(e){return this._requireNotFrozen(),this._freezeType=e,this}},{key:"_getTransactionDataCase",value:function(){return"freeze"}},{key:"_makeTransactionData",value:function(){return{startTime:null!=this._startTimestamp?this._startTimestamp._toProtobuf():null,updateFile:null!=this._fileId?this._fileId._toProtobuf():null,fileHash:this._fileHash,freezeType:null!=this._freezeType?this._freezeType.valueOf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"FreezeTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].freeze;return l.default._fromProtobufTransactions(new n({startTime:null!=i.startHour&&null!=i.startMin?{hour:i.startHour,minute:i.startMin}:void 0,endTime:null!=i.endHour&&null!=i.endMin?{hour:i.endHour,minute:i.endMin}:void 0,startTimestamp:null!=i.startTime?f.default._fromProtobuf(i.startTime):void 0,updateFileId:null!=i.updateFile?d.default._fromProtobuf(i.updateFile):void 0,fileHash:null!=i.fileHash?i.fileHash:void 0,freezeType:null!=i.freezeType?h.default._fromCode(i.freezeType):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=v,l.TRANSACTION_REGISTRY.set("freeze",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.UnknownFreezeType:return"UNKNOWN_FREEZE_TYPE";case e.FreezeOnly:return"FREEZE_ONLY";case e.PrepareUpgrade:return"PREPARE_UPGRADE";case e.FreezeUpgrade:return"FREEZE_UPGRADE";case e.FreezeAbort:return"FREEZE_ABORT";case e.TelemetryUpgrade:return"TELEMETRY_UPGRADE";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromCode",value:function(t){switch(t){case 0:return e.UnknownFreezeType;case 1:return e.FreezeOnly;case 2:return e.PrepareUpgrade;case 3:return e.FreezeUpgrade;case 4:return e.FreezeAbort;case 5:return e.TelemetryUpgrade;default:throw new Error("(BUG) Status.fromCode() does not handle code: ".concat(t))}}}]),e}();t.default=i,i.UnknownFreezeType=new i(0),i.FreezeOnly=new i(1),i.PrepareUpgrade=new i(2),i.FreezeUpgrade=new i(3),i.FreezeAbort=new i(4),i.TelemetryUpgrade=new i(5)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),f=r(n(13)),d=r(n(67)),p=r(n(47)),h=r(n(155));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._keys=null,e._duration=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.keys&&e.setKeys(r.keys),null!=r.duration&&e.setDuration(r.duration),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){return this._requireNotFrozen(),this._keys=e instanceof h.default?e.toArray():e,this}},{key:"duration",get:function(){return this._duration}},{key:"setDuration",value:function(e){return this._requireNotFrozen(),this._duration=e instanceof d.default?e:new d.default(e),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.addLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAddLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHash:{hash:this._hash,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:void 0,duration:null!=this._duration?this._duration._toProtobuf():null,accountId:null!=this._accountId?this._accountId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"LiveHashAddTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAddLiveHash.liveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.hash?i.hash:void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return p.default._fromProtobufKey(e)})):void 0,duration:null!=i.duration&&null!=i.duration.seconds?i.duration.seconds:void 0,accountId:null!=i.accountId?f.default._fromProtobuf(i.accountId):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=b,l.TRANSACTION_REGISTRY.set("cryptoAddLiveHash",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),f=r(n(13));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.deleteLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDeleteLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHashToDelete:this._hash,accountOfLiveHash:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"LiveHashDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDeleteLiveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.liveHashToDelete?i.liveHashToDelete:void 0,accountId:null!=i.accountOfLiveHash?f.default._fromProtobuf(i.accountOfLiveHash):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("cryptoDeleteLiveHash",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),f=r(n(13)),d=r(n(355));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e._hash=null,null!=r.hash&&e.setHash(r.hash),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"liveHash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._hash=e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getLiveHash(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetLiveHash.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetLiveHash;return Promise.resolve(d.default._fromProtobuf(t.liveHash))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetLiveHash:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,hash:this._hash}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"LiveHashQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetLiveHash;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,hash:null!=t.hash?t.hash:void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetLiveHash",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),f=r(n(627));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){return(0,a.default)(this,n),t.call(this)}return(0,i.default)(n,[{key:"_execute",value:function(e,t){return e.network.getVersionInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.networkGetVersionInfo.header}},{key:"_mapResponse",value:function(e){var t=e.networkGetVersionInfo;return Promise.resolve(f.default._fromProtobuf(t))}},{key:"_onMakeRequest",value:function(e){return{networkGetVersionInfo:{header:e}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"NetworkVersionInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){return new n}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("networkGetVersionInfo",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(13)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),d=r(n(47)),p=r(n(31));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._scheduledTransaction=null,e._payerAccountId=null,e._scheduleMemo=null,e._scheduledSignerPublicKeys=new Set,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.payerAccountID&&e.setPayerAccountId(r.payerAccountID),null!=r.scheduleMemo&&e.setScheduleMemo(r.scheduleMemo),e._defaultMaxTransactionFee=new p.default(5),e}return(0,i.default)(n,[{key:"_setScheduledTransaction",value:function(e){return this._scheduledTransaction=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"payerAccountId",get:function(){return this._payerAccountId}},{key:"setPayerAccountId",value:function(e){return this._requireNotFrozen(),this._payerAccountId=e,this}},{key:"setScheduleMemo",value:function(e){return this._requireNotFrozen(),this._scheduleMemo=e,this}},{key:"getScheduleMemo",get:function(){return this._requireNotFrozen(),this._scheduleMemo}},{key:"setScheduledTransaction",value:function(e){return this._requireNotFrozen(),e._requireNotFrozen(),this._scheduledTransaction=e.schedule()._scheduledTransaction,this}},{key:"_validateChecksums",value:function(e){null!=this._payerAccountId&&this._payerAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.createSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleCreate"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,payerAccountID:null!=this._payerAccountId?this._payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this._scheduledTransaction?this._scheduledTransaction._getScheduledTransactionBody():null,memo:this._scheduleMemo}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ScheduleCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleCreate;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?d.default._fromProtobufKey(i.adminKey):void 0,payerAccountID:null!=i.payerAccountID?l.default._fromProtobuf(i.payerAccountID):void 0,scheduleMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("scheduleCreate",m._fromProtobuf),f.SCHEDULE_CREATE_TRANSACTION.push((function(){return new m}))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(158)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),d=r(n(31));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e._defaultMaxTransactionFee=new d.default(5),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.deleteSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleDelete"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ScheduleDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleDelete;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("scheduleDelete",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),h=r(n(158)),y=r(n(629)),m=r(n(31));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._scheduleId=null,null!=t.scheduleId&&e.setScheduleId(t.scheduleId),e}return(0,c.default)(r,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._scheduleId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.getScheduleInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.scheduleGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.scheduleGetInfo;return Promise.resolve(y.default._fromProtobuf(r.scheduleInfo))}},{key:"_onMakeRequest",value:function(e){return{scheduleGetInfo:{header:e,scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"ScheduleInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.scheduleGetInfo;return new r({scheduleId:null!=t.scheduleID?h.default._fromProtobuf(t.scheduleID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("scheduleGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(158)),f=r(n(31)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e._defaultMaxTransactionFee=new f.default(5),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.signSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleSign"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ScheduleSignTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleSign;return d.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("scheduleSign",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),f=r(n(66)),d=r(n(60)),p=r(n(48));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,e._expirationTime=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e,this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemDelete(t):e.smartContract.systemDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"SystemDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=m,l.TRANSACTION_REGISTRY.set("systemDelete",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),f=r(n(66)),d=r(n(60));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemUndelete(t):e.smartContract.systemUndelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemUndelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"SystemUndeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemUndelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("systemUndelete",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(31)),f=r(n(29)),d=r(n(13)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.associateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenAssociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenAssociateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenAssociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenAssociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),d=r(n(18));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._serials=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return e instanceof d.default?e:d.default.fromValue(e)})),this}},{key:"_execute",value:function(e,t){return e.token.burnToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenBurn"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,serialNumbers:this._serials,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenBurnTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenBurn;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,serials:null!=i.serialNumbers?i.serialNumbers:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("tokenBurn",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(17)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=r(n(31)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),p=r(n(18)),h=r(n(13)),y=r(n(48)),m=r(n(67)),b=r(n(216)),v=r(n(275)),k=r(n(276)),g=r(n(356)),_=r(n(357)),w=r(n(47));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var T=function(e){(0,c.default)(n,e);var t=A(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenName=null,e._tokenSymbol=null,e._decimals=null,e._initialSupply=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._pauseKey=null,e._wipeKey=null,e._supplyKey=null,e._feeScheduleKey=null,e._freezeDefault=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=new m.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._tokenMemo=null,e._customFees=[],e._tokenType=null,e._supplyType=null,e._maxSupply=null,e._defaultMaxTransactionFee=new f.default(30),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.decimals&&e.setDecimals(r.decimals),null!=r.initialSupply&&e.setInitialSupply(r.initialSupply),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.freezeDefault&&e.setFreezeDefault(r.freezeDefault),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.customFees&&e.setCustomFees(r.customFees),null!=r.tokenType&&e.setTokenType(r.tokenType),null!=r.supplyType&&e.setSupplyType(r.supplyType),null!=r.maxSupply&&e.setMaxSupply(r.maxSupply),e}return(0,i.default)(n,[{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"decimals",get:function(){return this._decimals}},{key:"setDecimals",value:function(e){return this._requireNotFrozen(),this._decimals=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"initialSupply",get:function(){return this._initialSupply}},{key:"setInitialSupply",value:function(e){return this._requireNotFrozen(),this._initialSupply=p.default.fromValue(e),this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"freezeDefault",get:function(){return this._freezeDefault}},{key:"setFreezeDefault",value:function(e){return this._requireNotFrozen(),this._freezeDefault=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=null,this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof h.default?e:h.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof m.default?e:new m.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._customFees=e,this}},{key:"tokenType",get:function(){return this._tokenType}},{key:"setTokenType",value:function(e){return this._tokenType=e,this}},{key:"supplyType",get:function(){return this._supplyType}},{key:"setSupplyType",value:function(e){return this._supplyType=e,this}},{key:"maxSupply",get:function(){return this._maxSupply}},{key:"setMaxSupply",value:function(e){return this._maxSupply="number"==typeof e?p.default.fromNumber(e):e,this}},{key:"freezeWith",value:function(e){return null!=this._autoRenewPeriod&&null!=e&&e.operatorAccountId&&(this._autoRenewAccountId=e.operatorAccountId),(0,u.default)((0,l.default)(n.prototype),"freezeWith",this).call(this,e)}},{key:"_validateChecksums",value:function(e){null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.createToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenCreation"}},{key:"_makeTransactionData",value:function(){return{name:this._tokenName,symbol:this._tokenSymbol,decimals:null!=this._decimals?this._decimals.toInt():null,initialSupply:this._initialSupply,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,pauseKey:null!=this._pauseKey?this._pauseKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null,freezeDefault:this._freezeDefault,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:this._tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this._tokenType?this._tokenType._code:null,supplyType:null!=this._supplyType?this._supplyType._code:null,maxSupply:this.maxSupply}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenCreation;return d.default._fromProtobufTransactions(new n({tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,decimals:null!=i.decimals?i.decimals:void 0,initialSupply:null!=i.initialSupply?i.initialSupply:void 0,treasuryAccountId:null!=i.treasury?h.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?w.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?w.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?w.default._fromProtobufKey(i.freezeKey):void 0,pauseKey:null!=i.pauseKey?w.default._fromProtobufKey(i.pauseKey):void 0,wipeKey:null!=i.wipeKey?w.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?w.default._fromProtobufKey(i.supplyKey):void 0,feeScheduleKey:null!=i.feeScheduleKey?w.default._fromProtobufKey(i.feeScheduleKey):void 0,freezeDefault:null!=i.freezeDefault?i.freezeDefault:void 0,autoRenewAccountId:null!=i.autoRenewAccount?h.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?y.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?m.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo?i.memo:void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?b.default._fromProtobuf(e):null!=e.fractionalFee?v.default._fromProtobuf(e):k.default._fromProtobuf(e)})):void 0,tokenType:null!=i.tokenType?g.default._fromCode(i.tokenType):void 0,supplyType:null!=i.supplyType?_.default._fromCode(i.supplyType):void 0,maxSupply:null!=i.maxSupply?i.maxSupply:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=T,d.TRANSACTION_REGISTRY.set("tokenCreation",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.deleteToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDeletion"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDeletion;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenDeletion",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(31)),f=r(n(29)),d=r(n(13)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.dissociateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDissociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenDissociateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDissociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenDissociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),d=r(n(216)),p=r(n(275)),h=r(n(276));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._customFees=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.customFees&&e.setCustomFees(r.customFees),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):l.default._fromProtobuf(e._toProtobuf()),this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._requireNotFrozen(),this._customFees=e,this}},{key:"_execute",value:function(e,t){return e.token.updateTokenFeeSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFeeScheduleUpdate"}},{key:"_makeTransactionData",value:function(){return{tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,customFees:this._customFees.map((function(e){return e._toProtobuf()}))}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenFeeScheduleUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFeeScheduleUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.tokenId?l.default._fromProtobuf(i.tokenId):void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?d.default._fromProtobuf(e):null!=e.fractionalFee?p.default._fromProtobuf(e):h.default._fromProtobuf(e)})):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=b,f.TRANSACTION_REGISTRY.set("tokenFeeScheduleUpdate",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(13)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.freezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenFreezeTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenFreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(13)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.grantKycToTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenGrantKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenGrantKycTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenGrantKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenGrantKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),h=r(n(29)),y=r(n(630)),m=r(n(31));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e}return(0,c.default)(r,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.getTokenInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.tokenGetInfo;return Promise.resolve(y.default._fromProtobuf(r.tokenInfo))}},{key:"_onMakeRequest",value:function(e){return{tokenGetInfo:{header:e,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"TokenInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.tokenGetInfo;return new r({tokenId:null!=t.token?h.default._fromProtobuf(t.token):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("tokenGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=y(n(24)),d=r(n(18)),p=y(n(81));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function m(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._metadata=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.metadata&&e.setMetadata(r.metadata),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"metadata",get:function(){return this._metadata}},{key:"addMetadata",value:function(e){return this._requireNotFrozen(),"string"==typeof e&&console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead."),this._metadata.push("string"==typeof e?p.decode(e):e),this}},{key:"setMetadata",value:function(e){this._requireNotFrozen();var t,n=m(e);try{for(n.s();!(t=n.n()).done;){if("string"==typeof t.value){console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead.");break}}}catch(e){n.e(e)}finally{n.f()}return this._metadata=e.map((function(e){return"string"==typeof e?p.decode(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.mintToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenMint"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,metadata:this._metadata}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenMintTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenMint;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,metadata:null!=i.metadata?i.metadata:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=k,f.TRANSACTION_REGISTRY.set("tokenMint",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),h=r(n(190)),y=r(n(13)),m=r(n(29)),b=r(n(631)),v=r(n(31)),k=r(n(18));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function _(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var w=function(e){(0,l.default)(r,e);var t,n=_(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._nftId=null,null!=t.nftId&&e.setNftId(t.nftId),e._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e._start=null,null!=t.start&&e.setStart(t.start),e._end=null,null!=t.end&&e.setEnd(t.end),e}return(0,c.default)(r,[{key:"nftId",get:function(){return this._nftId}},{key:"setNftId",value:function(e){return this._nftId="string"==typeof e?h.default.fromString(e):h.default._fromProtobuf(e._toProtobuf()),this}},{key:"accountId",get:function(){return console.warn("`TokenNftInfoQuery.accountId` is deprecated with no replacement"),this._accountId}},{key:"setAccountId",value:function(e){return console.warn("`TokenNftInfoQuery.setAccountId()` is deprecated with no replacement"),this._accountId="string"==typeof e?y.default.fromString(e):y.default._fromProtobuf(e._toProtobuf()),this}},{key:"tokenId",get:function(){return console.warn("`TokenNftInfoQuery.tokenId` is deprecated with no replacement"),this._tokenId}},{key:"setTokenId",value:function(e){return console.warn("`TokenNftInfoQuery.setTokenId()` is deprecated with no replacement"),this._tokenId="string"==typeof e?m.default.fromString(e):m.default._fromProtobuf(e._toProtobuf()),this}},{key:"start",get:function(){return console.warn("`TokenNftInfoQuery.start` is deprecated with no replacement"),this._start}},{key:"setStart",value:function(e){return console.warn("`TokenNftInfoQuery.setStart()` is deprecated with no replacement"),this._start="number"==typeof e?k.default.fromNumber(e):e,this}},{key:"end",get:function(){return console.warn("`TokenNftInfoQuery.end` is deprecated with no replacement"),this._end}},{key:"setEnd",value:function(e){return console.warn("`TokenNftInfoQuery.setEnd()` is deprecated with no replacement"),this._end="number"==typeof e?k.default.fromNumber(e):e,this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",v.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_execute",value:function(e,t){return e.token.getTokenNftInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetNftInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=[e.tokenGetNftInfo.nft];return Promise.resolve(r.map((function(e){return b.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{tokenGetNftInfo:{header:e,nftID:null!=this._nftId?this._nftId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"TokenNftInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){if(null!=e.tokenGetNftInfo){var t=e.tokenGetNftInfo;return new r({nftId:null!=t.nftID?h.default._fromProtobuf(t.nftID):void 0})}if(null!=e.tokenGetAccountNftInfos){var n=e.tokenGetAccountNftInfos;return new r({accountId:null!=n.accountID?y.default._fromProtobuf(n.accountID):void 0,start:null!=n.start?n.start:void 0,end:null!=n.end?n.end:void 0})}var o=e.tokenGetNftInfos;return new r({tokenId:null!=o.tokenID?m.default._fromProtobuf(o.tokenID):void 0,start:null!=o.start?o.start:void 0,end:null!=o.end?o.end:void 0})}}]),r}(p.default);t.default=w,p.QUERY_REGISTRY.set("tokenGetNftInfo",w._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.pauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenPause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenPauseTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenPause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenPause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(13)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.revokeKycFromTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenRevokeKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenRevokeKycTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenRevokeKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenRevokeKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(13)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unfreezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnfreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenUnfreezeTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnfreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenUnfreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unpauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnpause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenUnpauseTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnpause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenUnpause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),d=r(n(13)),p=r(n(48)),h=r(n(67)),y=r(n(47));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._tokenName=null,e._tokenSymbol=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._wipeKey=null,e._supplyKey=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=null,e._tokenMemo=null,e._feeScheduleKey=null,e._pauseKey=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"setsupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"clearTokenMemo",value:function(){return this._requireNotFrozen(),this._tokenMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.updateToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUpdate"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,name:this.tokenName,symbol:this.tokenSymbol,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:null!=this._tokenMemo?{value:this._tokenMemo}:null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,treasuryAccountId:null!=i.treasury?d.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?y.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?y.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?y.default._fromProtobufKey(i.freezeKey):void 0,wipeKey:null!=i.wipeKey?y.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?y.default._fromProtobufKey(i.supplyKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?d.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?p.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?h.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,feeScheduleKey:null!=i.feeScheduleKey?y.default._fromProtobufKey(i.feeScheduleKey):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=v,f.TRANSACTION_REGISTRY.set("tokenUpdate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(29)),f=r(n(13)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),p=r(n(18));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,e._serials=[],e._amount=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return"number"==typeof e?p.default.fromNumber(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.wipeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenWipe"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null,serialNumbers:this.serials}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenWipeTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenWipe;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0,amount:null!=i.amount?i.amount:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=m,d.TRANSACTION_REGISTRY.set("tokenWipe",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(13)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),d=r(n(67)),p=r(n(47));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._submitKey=null,e._autoRenewAccountId=null,e._autoRenewPeriod=new d.default(f.DEFAULT_AUTO_RENEW_PERIOD),e._topicMemo=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.submitKey&&e.setSubmitKey(r.submitKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e}return(0,i.default)(n,[{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof l.default?e:l.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof d.default?e:new d.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.createTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusCreateTopic"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),memo:this._topicMemo}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TopicCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusCreateTopic;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?p.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?p.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?l.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("consensusCreateTopic",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),f=r(n(129));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.deleteTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusDeleteTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TopicDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusDeleteTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?f.default._fromProtobuf(i.topicID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("consensusDeleteTopic",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(54)),h=r(n(129)),y=r(n(632)),m=r(n(31));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e}return(0,c.default)(r,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._topicId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.getTopicInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.consensusGetTopicInfo.header}},{key:"_mapResponse",value:function(e,t,n){return Promise.resolve(y.default._fromProtobuf(e.consensusGetTopicInfo))}},{key:"_onMakeRequest",value:function(e){return{consensusGetTopicInfo:{header:e,topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"TopicInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.consensusGetTopicInfo;return new r({topicId:null!=t.topicID?h.default._fromProtobuf(t.topicID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("consensusGetTopicInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(82)),c=r(n(1292)),s=r(n(633)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(38)),f=r(n(129)),d=r(n(18)),p=r(n(48)),h=n(128),y=r(n(189));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}var b=function(){function e(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._topicId=null,null!=n.topicId&&this.setTopicId(n.topicId),this._startTime=null,null!=n.startTime&&this.setStartTime(n.startTime),this._endTime=null,null!=n.endTime&&this.setEndTime(n.endTime),this._limit=null,null!=n.limit&&this.setLimit(n.limit),this._errorHandler=function(e,n){console.error("Error attempting to subscribe to topic: ".concat(null!=t._topicId?t._topicId.toString():""))},null!=n.errorHandler&&(this._errorHandler=n.errorHandler),this._listener=null,this._completionHandler=function(){y.default.log("Subscription to topic ".concat(null!=t._topicId?t._topicId.toString():""," complete"))},null!=n.completionHandler&&(this._completionHandler=n.completionHandler),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return h.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},null!=n.retryHandler&&(this._retryHandler=n.retryHandler),this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0,this._handle=null}return(0,i.default)(e,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this.requireNotSubscribed(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"startTime",get:function(){return this._startTime}},{key:"setStartTime",value:function(e){return this.requireNotSubscribed(),this._startTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"endTime",get:function(){return this._endTime}},{key:"setEndTime",value:function(e){return this.requireNotSubscribed(),this._endTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this.requireNotSubscribed(),this._limit=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"setErrorHandler",value:function(e){return this._errorHandler=e,this}},{key:"setCompletionHandler",value:function(e){return this.requireNotSubscribed(),this._completionHandler=e,this}},{key:"setMaxAttempts",value:function(e){this.requireNotSubscribed(),this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this.requireNotSubscribed(),this._maxBackoff=e}},{key:"subscribe",value:function(e,t,n){return this._handle=new c.default,this._listener=n,null!=t&&(this._errorHandler=t),this._makeServerStreamRequest(e),this._handle}},{key:"_makeServerStreamRequest",value:function(e){var t=this,n=new Map,r=l.ConsensusTopicQuery.encode({topicID:null!=this._topicId?this._topicId._toProtobuf():null,consensusStartTime:null!=this._startTime?this._startTime._toProtobuf():null,consensusEndTime:null!=this._endTime?this._endTime._toProtobuf():null,limit:this._limit}).finish(),o=e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("ConsensusService","subscribeTopic",r,(function(e){var r=l.ConsensusTopicResponse.decode(e);if(null!=t._limit&&t._limit.gt(0)&&(t._limit=t._limit.sub(1)),t._startTime=p.default._fromProtobuf(r.consensusTimestamp).plusNanos(1),null==r.chunkInfo||null!=r.chunkInfo&&1===r.chunkInfo.total)t._passTopicMessage(s.default._ofSingle(r));else{var o=r.chunkInfo,a=o.initialTransactionID,i=o.total,c=u.default._fromProtobuf(a).toString(),f=[],d=n.get(c);if(null==d?n.set(c,f):f=d,f.push(r),f.length===i){var h=s.default._ofMany(f);n.delete(c),t._passTopicMessage(h)}}}),(function(n){var r=n instanceof Error?n.message:n.details;if(t._attempt=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e._message=null,null!=t.message&&e.setMessage(t.message),e._maxChunks=20,e._chunkSize=p.CHUNK_SIZE,null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._chunkInfo=null,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`TopicMessageSubmitTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"message",get:function(){return this._message}},{key:"setMessage",value:function(e){return this._requireNotFrozen(),e=v.requireStringOrUint8Array(e),this._message=e instanceof Uint8Array?e:y.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,s.default)((0,d.default)(o.prototype),"freezeWith",this).call(this,e),null==this._message)return this;var t=Math.floor((this._message.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Message with size ".concat(this._message.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId._toProtobuf(),r=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear();for(var a=0;athis._chunkSize)throw new Error("cannot schedule `TopicMessageSubmitTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,s.default)((0,d.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,l,f;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,s.default)((0,d.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,s.default)((0,d.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,l=0;case 9:if(!(lthis._message.length&&(t=this._message.length),{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message.slice(e,t),chunkInfo:this._chunkInfo}}return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TopicMessageSubmitTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){var i=a[0].consensusSubmitMessage;return p.default._fromProtobufTransactions(new o({topicId:null!=i.topicID?h.default._fromProtobuf(i.topicID):void 0,message:null!=i.message?i.message:void 0}),e,t,n,r,a)}}]),o}(p.default);t.default=A,p.TRANSACTION_REGISTRY.set("consensusSubmitMessage",A._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),f=r(n(13)),d=r(n(129)),p=r(n(67)),h=r(n(47));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e._topicMemo=null,null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e._submitKey=null,null!=r.submitKey&&e.setSubmitKey(r.submitKey),e._adminKey=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),e._autoRenewAccountId=null,null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),e._autoRenewPeriod=null,null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"clearTopicId",value:function(){return this._requireNotFrozen(),this._topicId=null,this}},{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"clearTopicMemo",value:function(){return this._requireNotFrozen(),this._topicMemo=null,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"clearAdminKey",value:function(){return this._requireNotFrozen(),this._adminKey=null,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"clearSubmitKey",value:function(){return this._requireNotFrozen(),this._submitKey=null,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"clearAutoRenewAccountId",value:function(){return this._requireNotFrozen(),this._autoRenewAccountId=null,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.updateTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusUpdateTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,memo:null!=this._topicMemo?{value:this._topicMemo}:null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TopicUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusUpdateTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?d.default._fromProtobuf(i.topicID):void 0,adminKey:null!=i.adminKey?h.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?h.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?f.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=b,l.TRANSACTION_REGISTRY.set("consensusUpdateTopic",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(31)),f=r(n(29)),d=r(n(13)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(24)),h=r(n(18)),y=r(n(1296)),m=r(n(353)),b=r(n(611)),v=r(n(607)),k=r(n(1297)),g=r(n(609)),_=r(n(608)),w=r(n(1298)),I=r(n(190));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,n),(e=t.call(this))._tokenTransfers=[],e._hbarTransfers=[],e._nftTransfers=[],e._defaultMaxTransactionFee=new l.default(1);var o,i=T(null!=r.tokenTransfers?r.tokenTransfers:[]);try{for(i.s();!(o=i.n()).done;){var u=o.value;e.addTokenTransfer(u.tokenId,u.accountId,u.amount)}}catch(e){i.e(e)}finally{i.f()}var c,s=T(null!=r.hbarTransfers?r.hbarTransfers:[]);try{for(s.s();!(c=s.n()).done;){var f=c.value;e.addHbarTransfer(f.accountId,f.amount)}}catch(e){s.e(e)}finally{s.f()}var d,p=T(null!=r.nftTransfers?r.nftTransfers:[]);try{for(p.s();!(d=p.n()).done;){var h=d.value;e.addNftTransfer(h.tokenId,h.serial,h.sender,h.recipient)}}catch(e){p.e(e)}finally{p.f()}return e}return(0,i.default)(n,[{key:"tokenTransfers",get:function(){var e,t=new v.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId);null!=o?o._set(r.accountId,r.amount):((o=new _.default)._set(r.accountId,r.amount),t._set(r.tokenId,o))}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"_addTokenTransfer",value:function(e,t,n,r){this._requireNotFrozen();var o,a=e instanceof f.default?e:f.default.fromString(e),i=t instanceof d.default?t:d.default.fromString(t),u=n instanceof h.default?n:h.default.fromNumber(n),c=T(this._tokenTransfers);try{for(c.s();!(o=c.n()).done;){var s=o.value;if(0===s.tokenId.compare(a)&&0===s.accountId.compare(i))return s.amount=s.amount.add(u),s.expectedDecimals=null,this}}catch(e){c.e(e)}finally{c.f()}return this._tokenTransfers.push(new b.default({tokenId:e,accountId:t,expectedDecimals:null,amount:n,isApproved:r})),this}},{key:"addTokenTransfer",value:function(e,t,n){return this._addTokenTransfer(e,t,n,!1)}},{key:"addApprovedTokenTransfer",value:function(e,t,n){return this._addTokenTransfer(e,t,n,!0)}},{key:"addTokenTransferWithDecimals",value:function(e,t,n,r){this._requireNotFrozen();var o,a=e instanceof f.default?e:f.default.fromString(e),i=t instanceof d.default?t:d.default.fromString(t),u=n instanceof h.default?n:h.default.fromNumber(n),c=!1,s=T(this._tokenTransfers);try{for(s.s();!(o=s.n()).done;){var l=o.value;if(0===l.tokenId.compare(a)){if(null!=l.expectedDecimals&&l.expectedDecimals!==r)throw new Error("expected decimals mis-match");l.expectedDecimals=r,0===l.accountId.compare(i)&&(l.amount=l.amount.add(u),l.expectedDecimals=r,c=!0)}}}catch(e){s.e(e)}finally{s.f()}return c||this._tokenTransfers.push(new b.default({tokenId:e,accountId:t,expectedDecimals:r,amount:n,isApproved:!1})),this}},{key:"tokenIdDecimals",get:function(){var e,t=new y.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.tokenId,r.expectedDecimals)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"hbarTransfers",get:function(){var e,t=new k.default,n=T(this._hbarTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.accountId,r.amount)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"_addHbarTransfer",value:function(e,t,n){this._requireNotFrozen();var r,o=e instanceof d.default?e:d.default.fromString(e),a=t instanceof l.default?t:new l.default(t),i=T(this._hbarTransfers);try{for(i.s();!(r=i.n()).done;){var u=r.value;if(0===u.accountId.compare(o))return u.amount=l.default.fromTinybars(u.amount.toTinybars().add(a.toTinybars())),this}}catch(e){i.e(e)}finally{i.f()}return this._hbarTransfers.push(new m.default({accountId:o,amount:a,isApproved:n})),this}},{key:"addHbarTransfer",value:function(e,t){return this._addHbarTransfer(e,t,!1)}},{key:"addApprovedHbarTransfer",value:function(e,t){return this._addHbarTransfer(e,t,!0)}},{key:"_validateChecksums",value:function(e){var t,n=T(this._hbarTransfers);try{for(n.s();!(t=n.n()).done;){t.value.accountId.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}var r,o=T(this._tokenTransfers);try{for(o.s();!(r=o.n()).done;){var a=r.value;a.tokenId.validateChecksum(e),a.accountId.validateChecksum(e)}}catch(e){o.e(e)}finally{o.f()}var i,u=T(this._nftTransfers);try{for(u.s();!(i=u.n()).done;){var c=i.value;c.tokenId.validateChecksum(e),c.senderAccountId.validateChecksum(e),c.receiverAccountId.validateChecksum(e)}}catch(e){u.e(e)}finally{u.f()}}},{key:"nftTransfers",get:function(){var e,t=new g.default,n=T(this._nftTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId),a={sender:r.senderAccountId,recipient:r.receiverAccountId,serial:r.serialNumber,isApproved:r.isApproved};null!=o?o.push(a):t._set(r.tokenId,[a])}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"_addNftTransfer",value:function(e,t,n,r,o){var a,i,u;if(this._requireNotFrozen(),t instanceof I.default)a=t,i="string"==typeof n?d.default.fromString(n):n,u="string"==typeof r?d.default.fromString(r):r;else if(t instanceof f.default)a=new I.default(t,n),i="string"==typeof r?d.default.fromString(r):r,u="string"==typeof o?d.default.fromString(o):o;else try{a=I.default.fromString(t),i="string"==typeof n?d.default.fromString(n):n,u="string"==typeof r?d.default.fromString(r):r}catch(e){var c=f.default.fromString(t);a=new I.default(c,n),i="string"==typeof r?d.default.fromString(r):r,u="string"==typeof o?d.default.fromString(o):o}var s,l=T(this._nftTransfers);try{for(l.s();!(s=l.n()).done;){var p=s.value;if(0===p.tokenId.compare(a.tokenId)&&0===p.serialNumber.compare(a.serial))return p.senderAccountId=i,p.receiverAccountId=u,this}}catch(e){l.e(e)}finally{l.f()}return this._nftTransfers.push(new w.default({tokenId:a.tokenId,serialNumber:a.serial,senderAccountId:i,receiverAccountId:u,isApproved:e})),this}},{key:"addNftTransfer",value:function(e,t,n,r){return this._addNftTransfer(!1,e,t,n,r)}},{key:"addApprovedNftTransfer",value:function(e,t,n,r){return this._addNftTransfer(!0,e,t,n,r)}},{key:"setHbarTransferApproval",value:function(e,t){var n,r="string"==typeof e?d.default.fromString(e):e,o=T(this._hbarTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.accountId.compare(r)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"setTokenTransferApproval",value:function(e,t,n){var r,o="string"==typeof e?f.default.fromString(e):e,a="string"==typeof t?d.default.fromString(t):t,i=T(this._tokenTransfers);try{for(i.s();!(r=i.n()).done;){var u=r.value;0===u.tokenId.compare(o)&&0===u.accountId.compare(a)&&(u.isApproved=n)}}catch(e){i.e(e)}finally{i.f()}return this}},{key:"setNftTransferApproval",value:function(e,t){var n,r="string"==typeof e?I.default.fromString(e):e,o=T(this._nftTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.tokenId.compare(r.tokenId)&&0===a.serialNumber.compare(r.serial)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"_execute",value:function(e,t){return e.crypto.cryptoTransfer(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoTransfer"}},{key:"_makeTransactionData",value:function(){var e=[];this._tokenTransfers.sort((function(e,t){var n=e.tokenId.compare(t.tokenId);return 0!==n?n:e.accountId.compare(t.accountId)})),this._nftTransfers.sort((function(e,t){var n=e.senderAccountId.compare(t.senderAccountId);if(0!=n)return n;var r=e.receiverAccountId.compare(t.receiverAccountId);return 0!=r?r:e.serialNumber.compare(t.serialNumber)}));for(var t=0,n=0;t0?e[e.length-1]:null,i=null!=a?a.tokenId:null;if(null!=a&&null!=i&&0===i.compare(r)){a.transfers.push(this._tokenTransfers[t++]);continue}if(null!=a&&null!=i&&0===i.compare(o)){a.nftTransfers.push(this._nftTransfers[n++]);continue}var u=r.compare(o);0===u?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[this._nftTransfers[n++]]}):u<=0?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]}):e.push({tokenId:r,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}else if(t0?e[e.length-1]:null,l=null!=s?s.tokenId:null;if(null!=s&&null!=l&&0===l.compare(c)){s.transfers.push(this._tokenTransfers[t++]);continue}e.push({tokenId:c,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]})}else if(n0?e[e.length-1]:null,p=null!=d?d.tokenId:null;if(null!=d&&null!=p&&0===p.compare(f)){d.nftTransfers.push(this._nftTransfers[n++]);continue}e.push({tokenId:f,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}return this._hbarTransfers.sort((function(e,t){return e.accountId.compare(t.accountId)})),{transfers:{accountAmounts:this._hbarTransfers.map((function(e){return{accountID:e.accountId._toProtobuf(),amount:e.amount.toTinybars(),isApproval:e.isApproved}}))},tokenTransfers:e.map((function(e){return{token:e.tokenId._toProtobuf(),expectedDecimals:null!=e.expectedDecimals?{value:e.expectedDecimals}:null,transfers:e.transfers.map((function(e){return e._toProtobuf()})),nftTransfers:e.nftTransfers.map((function(e){return e._toProtobuf()}))}}))}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TransferTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoTransfer,u=new n;return u._tokenTransfers=b.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),u._hbarTransfers=m.default._fromProtobuf(null!=i.transfers&&null!=i.transfers.accountAmounts?i.transfers.accountAmounts:[]),u._nftTransfers=w.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),p.default._fromProtobufTransactions(u,e,t,r,o,a)}}]),n}(p.default);t.default=E,p.TRANSACTION_REGISTRY.set("cryptoTransfer",E._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(29));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(90)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(13)),l=r(n(31));function f(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(e=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;n--){var r=this._nodes[n],o=e.get(r.address.toString());null!=o&&o.toString()===r.accountId.toString()||t.push(n)}return t}},{key:"_checkNetworkContainsEntry",value:function(e){var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){if(t.value.address.toString()===e[0])return!0}}catch(e){n.e(e)}finally{n.f()}return!1}},{key:"maxNodesPerTransaction",get:function(){return this._maxNodesPerTransaction}},{key:"setMaxNodesPerTransaction",value:function(e){return this._maxNodesPerTransaction=e,this}},{key:"maxNodeAttempts",get:function(){return this._maxNodeAttempts}},{key:"setMaxNodeAttempts",value:function(e){return this._maxNodeAttempts=e,this}},{key:"getNumberOfNodesForTransaction",value:function(){return this._maxNodesPerTransaction>0?this._maxNodesPerTransaction:(this._nodes.length+3-1)/3}},{key:"getNodeAccountIdsForExecute",value:function(){return this._getNumberOfMostHealthyNodes(this.getNumberOfNodesForTransaction()).map((function(e){return e.accountId}))}}]),n}(r(n(637)).default);t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(636)),l=n(1308);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e){(0,i.default)(n,e);var t=f(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,n),e=t.call(this,r),null!=r.newNode)e._accountId=r.newNode.accountId,e._nodeAddress=null;else{if(null==r.cloneNode)throw new Error("failed to create node: ".concat(JSON.stringify(r)));e._accountId=r.cloneNode.node._accountId,e._nodeAddress=r.cloneNode.node._nodeAddress}return e}return(0,a.default)(n,[{key:"getKey",value:function(){return this._accountId.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}},{key:"setCert",value:function(e){switch(e.toString()){case"previewnet":this._cert=l.PREVIEWNET_CERTS[this._accountId.toString()];break;case"testnet":this._cert=l.TESTNET_CERTS[this._accountId.toString()];break;case"mainnet":this._cert=l.MAINNET_CERTS[this._accountId.toString()]}return this}},{key:"accountId",get:function(){return this._accountId}},{key:"nodeAddress",get:function(){return this._nodeAddress}},{key:"setNodeAddress",value:function(e){return this._nodeAddress=e,this}}]),n}(s.default);t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.HOST_AND_PORT=void 0;var o=r(n(1)),a=r(n(2)),i=/^(\S+):(\d+)$/;t.HOST_AND_PORT=i;var u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.address){var n=i.exec(t.address);if(null==n)throw new Error("failed to parse address: ".concat(t.address));this._address=n[1],this._port=null!=n[2]?parseInt(n[2]):null}else{if(null==t.host||null==t.port)throw new Error("failed to create a managed node address: ".concat(JSON.stringify(t)));this._address=t.host,this._port=t.port}Object.freeze(this)}return(0,a.default)(e,[{key:"toInsecure",value:function(){var t=this.port;switch(this.port){case 50212:t=50211;break;case 443:t=5600}return new e({host:this.address,port:t})}},{key:"toSecure",value:function(){var t=this.port;switch(this.port){case 50211:t=50212;break;case 5600:t=443}return new e({host:this.address,port:t})}},{key:"address",get:function(){return this._address}},{key:"port",get:function(){return this._port}},{key:"isTransportSecurity",value:function(){return 50212==this._port||443==this._port}},{key:"toString",value:function(){return null==this.port?this.address:"".concat(this.address,":").concat(this.port)}}],[{key:"fromString",value:function(t){return new e({address:t})}}]),e}();t.default=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_CERTS=t.PREVIEWNET_CERTS=t.MAINNET_CERTS=void 0;t.PREVIEWNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUenyqJ4UaFBbwokatcUqAwW3o3rswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU4WhgPMjI5NTA2MDcyMjIxNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEm5b1+oG9R0qt\nzM7UZnS5l/xxUNHIHq5+NAvtlviCpJL19jrW9+/UOy00Qqc6vS6tS1hS+dNJmpiZ\nFN0EHew4VDR7ACnL4LDJKmIHWjQ0iwvZo5kCpO0r9BtPN5FvaSxyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUeciBviJtjeuue0GPf1xllNw7qvYwCgYIKoZIzj0EAwMDaAAwZQIw\nJeG0H2HdsI1VhOYmJmYlNeKCNgAk+LMorzPmsIInVBO2HK2IrKfpReWDS/m5j51V\nAjEAxKBxDezJDqAZHTkTXCg+X9Q9V6J6M5yDy5IS90aCWEo+W8C1Hc6hkn2/NrvT\nPhwK\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUUfjO8LyXBdzrzbAe1Yl+d34IDsIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAERwfj4ZtD/wRb\nf8h9NEMu2sQoLFK9Gc4SQ8o6j4ccLYGdgOoVoq4zzy4Jr7ZtCTuACfCfhp7wy8ra\n+6cugccaSd6AzOKRSVZvQvkUTFKIoAOKwp6IhlU48rmi80MT07eyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCGhfVMP72Y0G5XUksE3dPgFHrzkwCgYIKoZIzj0EAwMDZwAwZAIw\ncpX7irZWyuujWRYUs9kLNgB2YLQK+n8r1fH+tJg3+zkcZ2pzhGWmpUUZWOzsDqGC\nAjBUbhlmrTc4LrEBN0EMiRYzfPD2kBZxusLBDIg/aDYERCMcsFvF1T9SsuasF/B+\ncI8=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUIo4L+7xe/mUmpKy4qOAQEIxz8UMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEoFgCjb1/7BUJ\nEXKIPJLlsOSp/39G8l92wOSr7h+Py7iwVwu68H2ykftMOq3tRwDRXZHz7ViqcIZ9\nlfMcS8sbRtVm9tBbNciVUqTLWX9nHr/c4PhKEi+LdgtSUr2+hHiWo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMR89BHC3yKC4YwUgyBVQUGBCprQwCgYIKoZIzj0EAwMDZwAwZAIw\nUs2BdslcScIwcmxoB60K7/1BPfQI8ccDZIMosas6U2zhinTnRKik1T0i+uHhLl8e\nAjA5apAwSPTnP7j3Bo/FOCkfjTqOjwp2lUqzDJYKolKsHX2sy8hX9MkYiY46SaJ1\nP+0=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUWpji03mJsR/16MP8BrOfpNz7aQMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE+KDMC99Q1rWi\n+FwlytGMS5qzTDytCvk+PzdONnDZ/weNSv4j3BXSo588IwhIxLtfcBlyo/+PmE1c\n5qGFXuMoZjGr22VpvogkRgPejD+Gawb4A2XHkMCD8NmO66uPw97po1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUN1qEI4eQ+WHavb9ypGV417NvhGowCgYIKoZIzj0EAwMDaAAwZQIw\nL0khkiDOiFRa3wx9l5JNjaSRePPc3ZaTaJQkPYeauMaLWEvmC/0e2/e9gPm5qJ8E\nAjEAgXQMko3vNB8VRN4XjyFJa8p/muZ/tLA15wPnb/boUmiZ+njDDSaiu8tIQrTB\ngHW6\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEJ7AJvrqDUBNKbssGoJtww3v+WowCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjAwWhgPMjI5NTA2MDcyMjIyMDBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEfgJ8w9GUWM3y\nyusedZOFQrgXFVsdtRsMSHbqyVCN6+Wow6SIjy29GRMSP5R2aswupFgh6lXJRqnr\ntY+hpRumFKsmSo+5+l8DBcql4rzs4utESTehM+Cq9LYc4A1z0UIRo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMCm3UqSbT01Zr23hLzCGnXbDa+MwCgYIKoZIzj0EAwMDZwAwZAIw\nFNcN7mKJo/bwpRT+y/KbYkCJsvljdbXzJOXXQ3e6J6R+0vLqcT25J/ry6pBZMUwR\nAjAswu29z8KJCSxnWwnPpHDmkRT15zG/xS+pAmx3oeQSqp6ZD7qpdJE8zzhbfe5x\nwAc=\n-----END CERTIFICATE-----\n"};t.TESTNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUMkNeM6Sbk9ZFYmRWZmSgTQHHWyUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETLLoIMZjEhDP\nKLHS7bJT4OTYGgR/8mB65yfx3KqMLYFF+q2SpWkIrYgUQLVEUEibVSnLlxRUzH7R\nszcKynpTwh0W0yfWanZKQg+RWoKkEYlu2GvkUtJb8cRVM9NLmJUeo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUSrIepwFx8gZ8/G+WGaxs6GgkMtQwCgYIKoZIzj0EAwMDaQAwZgIx\nAJxC0fjB1OrF9vkCKsfnPS3Z+1hscrZhEDG38NxdLEAfPQ5VmyrSBgJy11FBp8yB\n0QIxAKzbge3Lf7iBMwYwm+2M/GiVgmHNMLdtrYuerWpdbYOHgRNAkyt57JoThn0u\nTzkd5Q==\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUGLriiLPacglp6U+BtJcF9TI7xEUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEXhR9cb6mH9AE\nGNSGk3OkxN1C/JW49ddYZ/XWD4InjS8D1kXmB1Y39v1mF0L1loG6lDT8Zp46zrj7\n5zMONXZeD2b0mx5hHhtllPTpJ10Tlt9FDoyFbKwPRQ/SAPNADfuzo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCaKtx8RZ1XJO9rmZMbIcFJZkcv4wCgYIKoZIzj0EAwMDaAAwZQIx\nAPhDW0VrNSmq8hODdhIVV4GyvpYhp3Fksg+sZr3DmUatwn+ptj+X+9IzgPl9QYE3\nkAIwcy2ixgNkjC/DYVmgT4MpUnLneLK0gA23Vj2QwACaTH99H/ybqUH7srj0POB9\n5wvV\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUEMduome38hvAuIKoGjg/tHatQZMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEl1olzP1L4WgX\nd7aujOXmTQZt3tEOGzkMa3S6qJwISLBI7Tb9KaW8zYIe9xWBVAwphCbD0wn9xpPV\nwMr4uTn+JocugYBbe2YoUGzWTkxWnOEKXbh/nQJCe3XE/C0FY8fAo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQULfw7LVtTiUDVIvZwhhWW0soQtSQwCgYIKoZIzj0EAwMDaQAwZgIx\nAID5v3Lo2zlnpFzTdJFqBpw6fV+vmpI+JBj61f264J/uHMbELiu2dwxhwWaMElX7\nwQIxAJxccFr7Bf1KjaMyT2dq75zQzFuKDMj9x92yAqM2Gas/Yay+Ccpm8FBn7BFl\nke1Qwg==\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUcCg/gZGxk/UjYkhW1jg4Zki+jfwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEOSsXBZicyrxy\ntHJHKh04Mvu6SKM49IC7rAXw5CjlOod5OTeHg0fa5vVoBME4mlWP+LsMMqf8welC\n20b4wMwUC1Hnd66v8crX8L1wvZ9EmKLTvhTd65bS5zloMiSbpdF2o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgMMwqaGuUT6JCH0gsbqullaW6/QwCgYIKoZIzj0EAwMDaAAwZQIx\nAMggJ1eMmT7C14z7wHCsOdDOgmzg733+a5dsuAcxknoz/sQLN8wqy1JxShWgEIA/\nxwIweTDAX/4JZnr3mlSC57lYXbHk/c319VfN9Ybxg0FaDXa8tOqg7Ml6Uu3IGujQ\na3eY\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUXADwhiD5acpA66GPoXuAevBfZBIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEBgLhLiGz8qWu\n50vzxSyQkrmhpxuHBJhpGzA0WaUJdAUlaUOL1753ZxxA08wUmcozILNEnMaQ+ROn\n+fuGctv90ZcrSekODjxjbKH2ntVLP8xwkBRCTJ0WRBNenxxBD438o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUhYOOD/z3ty9O5GuSTXnyujIqBRgwCgYIKoZIzj0EAwMDaQAwZgIx\nAMxbZ4gvkXaORauQFUPRYwOJrihWIA+3ttGDua//YfEbshytQ8b4L65W/1Xs8eOd\nDwIxAImwTzRam8tScdOzmuGgPcML2lkETMpMA2rZYVyEL/VNktIxvB2oE+4M0v5l\nr8IbTA==\n-----END CERTIFICATE-----\n"};t.MAINNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUZWoT9TlgbZy+syLbqZhO5++1cVgwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8NhDGK/dgWvD\nRHEJ8af7CBDdhvujH5XIrLen33GTLY8DbJwJW2jdsLGx3+DRVVmeNQZxCbcGj0e2\nIyypkG6s0mtnmeymD8mI3JU8m1aZiuIptZSH3Bw1BNn2hKU4x42co1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUbYGliiNtMkGaroQxXWCl+kYHDBwwCgYIKoZIzj0EAwMDZwAwZAIw\nImTOEYu0y73Ggt4NAjFFsN2sV7CsEL3NoJqJ7MZ6U+b3Ax1hnc1eE0oei6xH4VNF\nAjBB4iZNvAn6Esiu4k+JPlYuMesplgMv33fU5GsfvLIovN8pOJDe0c+CUmsnfGbP\nOsQ=\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEGWU0F4aKffY+le55ahQaScDYDwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEqW6TqxMmjL3h\n9AVBgfVaFRZlXUcyWa+QYhzxr8sksgJqfDbmGtdaHIdiL1qCPuC4v4G3qrAbXZRm\nTYNo5Lz0X2ic5pES6DbacdjOgHH7TAY4BVKkuVrydln2jjhh7SmBo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUcBlY5a1rV0H1iQuJMwWxrTEWQ6MwCgYIKoZIzj0EAwMDZwAwZAIw\nR+mY9B2U26yD44s03hjz4TlpkyXbVfmgL3Elqo3lrWDJtvT4zpjGjxg3Q1P3SpZQ\nAjAy9DRVrZPzq8iq5Ir7B8XgLQH5QL7SQ3tUL1HzXJYOukvn9Ofr+QADhpb0oJLB\nKug=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUbxzfD3ihIK5snumqqKtqtcBPSSQwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEWoAjWmW7vpUr\nU69wRbK9Firons4kRoin6N8lMjCD+xzsrsT6/wycpzC0F8fxfIvOYSMWRtinhOKl\nZAxp60OWYP87iH7RqWBAnHIJZj/znKTGd+8Sqp/RVQmButFHg/+Go1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUTMtwuDzI4Hun7SPp2Nb3scjUUXkwCgYIKoZIzj0EAwMDZwAwZAIw\nHKAgaX39Lgc+4/xHXzZR9mi2p3pf6CDO85Xm56UR/t48HnBkRorR3TFCBXACeIIs\nAjBtXglpDnRf6M+nVBlxLdwCQXiwr6vQJ9+dUo+suNkZ1JBmtHypyIqkG2yT4z9C\nLcs=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUPwXdJvpCJYO9lm6uQN3S1aBi3PswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8PwBQ0ywu+0t\neIYbaiKwzGEScQMOYFYAMw49++6bGRiH/XZjsypqlJWy3F/mB3+HNVZsqgB61Jpj\n2p98Afkl57MYWhWM29t/x5qAQ8LhKGu2k+BOnCcvHDU2pR+fmFSOo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgI4r3/iwzFN2wh76y/4XDBk7wgkwCgYIKoZIzj0EAwMDaQAwZgIx\nANAjwHdTWYMCCjrtb2NWzDpsKjf3m6ZcaxbEcM1ta/Zji/4x0+VRZa917CkfaEsr\nLAIxAK/erPvIXRU9eNaK/TAQqppSRaF35G6iNnYjQZzfjTU2DczhT4oCjKzGoCHT\nkI1zOg==\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUXUGzJj13Ck2Cp0BKauLOdzgCPwIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8Ee64Tbu53i/\nKsuLOJG3GQ4e9gQ+9BtEy7U8kfFzRHh6Ejn7LOW38ZdKX1HP4zXuUusjNvytqDvr\n7eclitqnegcEOkIeFK3wQwBoNILuq+r4LRVi19V+AIcl5w3qkJvIo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQU2tbfu7hd7USgbS2WsG/6BduKEAMwCgYIKoZIzj0EAwMDaAAwZQIw\nRw/BOLoScmU7P/1JnNPsGarmnvcuJrokAv1wk6j8s5LGuQHReX+d+O3RPLggwcAY\nAjEAjoZnt9simul4cVcVy4G/0f39atanUva17gyzlYXEYx7B6UloxLeEcZhlbBf8\nGjRf\n-----END CERTIFICATE-----\n","0.0.8":"","0.0.9":"","0.0.10":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUNauEDBCmP9igXLWtRpzkQqIGo/wwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDcxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ5WhgPMjI5NTA2MDcyMjQyNDlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA3MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjbkoJBshQXUy\nqm5K8ldpTDR94Wk8iEM7QwHfceIxK5pPgaVGRkoJyVLSK5LMH4jyaIHUrtA0lIBQ\no0MsYkq7TOOm7+vo1Yrd8EMbu5StMb3gsXUrj7E/SBKIxULak6hCo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUyKHMzIBPRV/mrgG7tIjzOiw2xbUwCgYIKoZIzj0EAwMDaAAwZQIx\nANsigVtLgTdKWBPVJPstWA0H8yihf0/dmM3GO4qp5keGTWz/O3tnom4iDB6eSrcA\njwIwU82Dh+Wxl3kAD3YJH5VhlfHTm1rPlJETBHZgvPBOYqippao6+WZFEpn2/IDC\nNTjn\n-----END CERTIFICATE-----\n","0.0.11":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUWtnJm2kswnXYu7/S5BnnTQiDRcUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDgxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA4MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjY9Rl+s00xFV\ntdTpAixLR4kJIGLfSLOdm+ofU/KuKMRSz5x1ORhIicppKZK24U5WLGXQU1fKLvxX\nOmqwqL+6oAONmiHszqVdhWne4QPUba0yw7rf1/OI+IFF1HRK3shQo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUb/htoTodbq5hjP5RNlQ0rkKwWB0wCgYIKoZIzj0EAwMDZwAwZAIw\nbO+9yArr21XKXjYHPadEAYINDxgXEC3W8e3X6MJsHCIZITddWWOyXRNFhz504vN0\nAjB8aBuhrKcg1b4CrQDZQcosyVPUGIZKkXdQFfbVdivKrGZvqLS+GdPLd3v2MmHY\norA=\n-----END CERTIFICATE-----\n","0.0.12":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUHBsegV0bKtwpHRoOnnhbK7CTHxMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDkxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA5MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEK+ZAs/00RXaj\nbuQJJy4zwr/YTj9h5V+vbY7sq9Z1RByEwTRRQOI3OuzzMq1EWKkVJKF/QF5b4yda\nx6W9O/NT4EjBXH5XR5X1V6h7aT01YBqsxgMxuUP7kw9K+fW4k6Zao1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUKbecoYirLjf2O2oPkoggEE2P7FcwCgYIKoZIzj0EAwMDaQAwZgIx\nAP67wsVOkeFo/9QRo+PnZhzEvjOZ/+IUoUhimdljcVwn79tzNP+obf7VW3Oq1wH7\n4wIxAL65+WmMTMoI2cN7TCiL7G/W2ChDsASeHfaP/4e4ZViNONWotlY9i9aS3Kwt\nLTea1Q==\n-----END CERTIFICATE-----\n","0.0.13":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUBNxMZRKru9jzFA8zsOAI4xkMFCMwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEwMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MFoYDzIyOTUwNjA3MjI0MjUwWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTAxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAShUi9sglwb\n0U8QUrGOXJuHRXA9HP8RypkgNBwNRs1YcmPLcuwK70unWlkB81M44IQ7z/dG/0cW\nhfFdRI5x4jAeiUFivmWmMLT6lJMPxJ0BkWTGVFVwI3SKcgSvHP9pNS2jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqIMCDzCKKwJJLCXhu9YJYPw6lsDAKBggqhkjOPQQDAwNnADBk\nAjBl0bJG2A3443ybvrkKjWu8do6nDSR08/M49+19QfA1aDw0nb2sdCOE+xNitpQ9\n7ngCMGuQHmnKA2EyOIVpNl2EtRoG+vdmLJQaoukhmCWjkGrQHkai473tGa9cRZ/8\n+RZFzw==\n-----END CERTIFICATE-----\n","0.0.14":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUJcQrEmPlIh0KWwiC2X6lZ/OdNs8wCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDExMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTExHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASxRizKJSbB\nHmG2amvTHLCyExJngCh42agaFkv5Ab9mZYbqZPe0nUn/8RlVAvEiRNggCMYXC6MU\ne4J6D1aeLhYaa0UY8Fmxd20NUjAOWhJgUXds4ILMMVG+pevofeC8AsujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBS2Ic+LU/6Wssns4Yyf3N6E666xDzAKBggqhkjOPQQDAwNoADBl\nAjAH0JMX48GD6vThA6FUsVnJmBID376PRZgxhuZvn9C0HawvNjZVQTkpzpYCwmia\ndO4CMQCotakNxyiOxu/BbnPx6ld5+dqVCugsfqClhUhy8ROpNHfKxp3rW7HopowT\nWiMlIyI=\n-----END CERTIFICATE-----\n","0.0.15":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUSFFNFv1iquxd5txlWA3PlkNju2EwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEyMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTIxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQus3nAPZkb\nja4Efo7iD4s8NLsFwEwQXQBgBGIJwtA2JRgLyXeWpuu125ib6qJzT8CHvQZhel3b\ncwYWi4f2JpabMDepHELLxwZ9fILnAQ8GiHlzhrVq2NI15DI84dXVe4OjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSEO/JFC5/fDcT2gtipDMYMMTd96DAKBggqhkjOPQQDAwNnADBk\nAjBalAU47XQL4ziHD8lj21pcp3+R5FKzn96HclMT/vraknCT1Sl+vCf6EYsqmi6Z\n+RwCMDpxL6P6OMqyE+HzAeYQ4Fa7MYEQfZGMjka4zxetBLvIpwUCT4EAO8gv9GoU\nwCBUzQ==\n-----END CERTIFICATE-----\n","0.0.16":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUdnkil4P+VthVMnqygVwGKLt7VfAwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEzMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTMxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARUdz9ig/iA\nhEAth2YinHKY6WM63BAxUVItzgk65l1T4wTzwoK4XEwclY5vIeFmZy2e0s95lWgq\nSI68VS9gmJ3xp8Q9wOel/bvuF2tvNZmF393TeoNQQVHrQM1yJAx+nPyjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBTBFdNwHKSRDo6CxfA1aglY0N8joTAKBggqhkjOPQQDAwNnADBk\nAjAqPIel58Rcl2kDxZxJPD9mK9xW4TU+d2NuP3n140TQ6nPlw1OwCPI7a4i3wfEe\n08ICMBbrpNRdFZcvy76KoLPfTPvqbtWWaR/0tLZg4Rjj3x7SYgUg3vrVDmodHGkb\n4T2Raw==\n-----END CERTIFICATE-----\n","0.0.17":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUDg+G4Ep+KEmIo+nCOY8DjFX60swwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE0MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTQxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCQRL5xUUh\n1bsTXRPAf/qVFWEOxsJTiMlF3+UJ4MajWE5zmc2QNIzqj7NE24z3fNxgjViNK/8+\noBNQeqXfyJ/4etNMzTyG4JTsvWRAQ3aR1J4WDbfwpcgw6AIOKq9OLP6jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQB9V2fygf48zyyVL3bnAxCLDUV9zAKBggqhkjOPQQDAwNnADBk\nAjBonlThjjvi3fg7ODQcatPHBkp8Yon/p1ukm3YzYA3kitqroXU7BkmwRae2fbqD\nTTICMHI+fAy+xWGwXAFNcvNTop11IIoszcgJJY+1Mc2Q/USk3pP6iezta+rvnaWu\n7JySHg==\n-----END CERTIFICATE-----\n","0.0.18":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUBvI2Vq6O8yXNzbQlj6uQOdpd1lIwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE1MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTUxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR+jFDSzCdn\nmMQpgz/vrmD/xioMioumUmyLAkB+voTNsMAOtiaDVbvJty3b4SJETv5tuZyaF5Gb\nQAYuKsP7X8siCCVLZC9i9nCg46NHtuQkEmw1pzUUDmYFDfSV2tWedNqjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqvCmoaVEp2d9WPctby+ooPMGmvTAKBggqhkjOPQQDAwNpADBm\nAjEA9fQ2OFZa7fAQGGYydfVaUF0ObxKj3T+hyl0jiCKLe+hyxJSrXCFS2BM71UiG\nZMVxAjEAmCzESBzTVvl4Uv3TyActGTijTCqTNpN3gJmQbZYjKVtqf8Wxj9WeH0pM\nE8BlA/qE\n-----END CERTIFICATE-----\n","0.0.19":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUZBwp7UPLJkDgngbUIx5xjbAn+7YwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE2MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTYxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCVYu2uF3T\nkCkyRP0FfXVyyTA1z8DFqCKGrcODgGJuVAk59H6u8FIRsNipkb3BXFI0xGccok5X\nT+t5bMaGDHYJ4fjU78UtPNmankQ5HoiMRJpy7Vn8mzizUzUqGpnhu6GjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQzE6RGn4YlIbdrl0niKWTtJzfXoTAKBggqhkjOPQQDAwNpADBm\nAjEAobnXnwlNGNWoHscbl/ytUBSyjC7V11sLYJqtORSRX3k2+bFGsg4ltmOVjTdd\nlXatAjEA/Ja3jufmdruqfLa6qigXuYI00YaI96sOwNhdHlnksYfqF41nDe4BsSW6\neQ6N5M9d\n-----END CERTIFICATE-----\n","0.0.20":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUE1ZRB5n+Yby+Mwgb2xAcVfTZ53kwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE3MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTcxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR0OfTmHjxT\nkBiU3GMa/bTvlTswCDAuFQGIIpMWHaf6V4ighzmn20jCg0AVFStb2q7YLRr4HUx8\nToMzsd7/yjl74BwJgfZnL75T/JInwyMgOBiCTXEf6qVDvhNzL4QJuVujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQFKRUUmdFcDFQzBN9XqMvLgPd7NzAKBggqhkjOPQQDAwNoADBl\nAjEA5MUUXSehY3KVIv/2LMgrqo1kPiV39fwYuLSnsMJ67wK8yN1NAkkycg6q2K6g\nrBIvAjB3J3a40TINOZTYG+eQs+MSWyfANJLRuJTEOorXzMWM6+05+JYhPnLA8hke\nCRfzmSw=\n-----END CERTIFICATE-----\n"}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_ADDRESS_BOOK=t.PREVIEWNET_ADDRESS_BOOK=t.MAINNET_ADDRESS_BOOK=void 0;var a=r(n(619)),i=s(n(81)),u=s(n(38));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}function s(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var l=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ad0070a0e33352e3233312e3230382e31343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340acf070a0d332e3231312e3234382e31373210a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ace070a0c34302e3132312e36342e343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ad1070a0d33352e3139392e31352e31373710a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad1070a0d332e3133332e3231332e31343610a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad0070a0c34302e37302e31312e32303210a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad2070a0e33352e3232352e3230312e31393510a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d35322e31352e3130352e31333010a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d3130342e34332e3234382e363310a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad2070a0e33352e3234372e3130392e31333510a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b35342e3234312e33382e3110a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b31332e38382e32322e343710a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330ad0070a0c33352e3233352e36352e353110a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d35342e3137372e35312e31323710a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad0070a0c31332e36342e3137302e343010a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d33342e3130362e3234372e363510a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33352e38332e38392e31373110a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad1070a0d31332e37382e3233322e31393210a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33342e3132352e32332e343910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390acf070a0b35302e31382e31372e393310a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390ad1070a0d32302e3135302e3133362e383910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a60363465303938363135626634303566376564356134303133343436623839633438386366636436626232356134613637366463373765656131316433336437303236383266306136396138303330653863353737376430653432323033373939")));t.PREVIEWNET_ADDRESS_BOOK=l;var f=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0a7f0a0c33342e39342e3130362e363110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a80010a0d35302e31382e3133322e32313110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a81010a0e3133382e39312e3134322e32313910a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a82010a0d33352e3233372e3131392e353510a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a7f0a0a332e3231322e362e313310a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d35322e3136382e37362e32343110a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d33352e3234352e32372e31393310a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a80010a0b35322e32302e31382e383610a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a81010a0c34302e37392e38332e31323410a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a82010a0d33342e38332e3131322e31313610a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35342e37302e3139322e333310a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35322e3138332e34352e363510a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a80010a0b33342e39342e3136302e3410a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e35342e3137362e3139392e31303910a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a82010a0d31332e36342e3138312e31333610a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e33342e3130362e3130322e32313810a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a82010a0d33352e3135352e34392e31343710a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a81010a0c31332e37382e3233382e333210a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a83010a0e33342e3133332e3139372e32333010a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e31342e3235322e32303710a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e3136352e31372e32333110a388031a05302e302e392806320218093a60363938333261373361333630326538643166626535616435386431633236333761316236373264373165653837616631306462363438656239316166623232383235336231663437653537643364346134346666353437623333393461613232")));t.TESTNET_ADDRESS_BOOK=f;var d=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633435363165336332373863643635306538306334313363613434343233633163336331336366313437356636663639373664353937616534333262343961623432303836623739623834313332363035346238623364636635376438666364373962666330353831383363613234636434633163626335373465643131313765326635623762336336336365376230366439623465666366373337353633376234316665366635336338313162396465363134336633613532393537636466393536373735313230623333373033666635373632313430376162393537356263326433356330643434663039383366633165663633613466663532303966303730633932616631303632393536303163393662636564303634656331393031393730313963363831316334633864643830636234663461633731663961643736653761633839343536666266346630313166393061626432643930353336653832333436353166366265663932376533643564386237626634353930353039383362656361336162656632613964393761663334353737326137373430653936393932373562303138656130646632383661646436636539323365663930386662653736326137356632313131363836326462343464336463613164343462346432653864633130363663353030366262356137643935346164323535643462363033323733343735653531316165623438356430363961303637633061623563323435333863393333633036623561366165666139343030356332393135323133653463636461653663393432663632373266396464353238326436623839306631663230656664323339396364363734393234666135373034366163366461333265373339353161373331313365393166633262376666323965343835316238336666333966383362613965633666303863656664626236636262626666616266646661613931643933306637323030646134383133376333393463626431336537303165636463323631366664323162616436383161613466303031303230333031303030312804320218073a603665396138616263646364653665313134396133656265313766643538643839303538333961383664623732623036613365613230616131373666383638623235343838353261653432336437613963366237636666396537313436323961320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613163343037373135343330336363373263346662373639326333663934323531626465633132333961316637613839373261626539316133353332336662656361363235613766666165363430366338353564633261663231313039303062306466306536653664623736333634646661316666653835656461353637393336653239383562383536333461333261613532613635393964643663333062653166376136633562386635656563616632363231643861343539363832666364326462616164313536316431316633336663636237663535303061633536386431363564626561616365333238366432383934663634313239643738316436633732666437643539396339653164336166346161343333633233623931306661653463343834313634316636313532366164373837656265613533393837343136376539643361373363633066623135363432396431356563373633613664306630363131356137396239616637383364373762393864383330393661613437343366393734303864396531346263663464646666653435393137363838343762343063623864613763613337353235366432623933356430393566653235326661653831666636653337663834643761393064376535373061346638656633633764373636656564613437326630393230313939303135613839303832353961383733633534353466636262646361643265353238646538353435356234303833633764633461646335613938386530636464666463313539643564373132616264353434616137336563303239303839383134633938613434663236666330363434363539633138336533313834616132373266386431646330626661336530613536303438346362303535626134646262356363333339656338306264313164363432646333613730326538633730336162323139333038346439626436336630646665313261343333633235373665616637383163666164383637656637306264613631373638623262656631346635306336633362386230393666303230333031303030312805320218083a606464336233653763643361323537643832373665343635333533363162303138623730303931663438363635653832303031306538316563303539326236396264346265316662643765636435303964303730313364643034313238343266640ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623263636163363561643066633736343561383137626661626334383761643765343133313165376133313938623337666238343264383463333935623366363764366264383438663130633666303363323930653866376461613864303031613834343164633335326131393136306133313933653638623832656466313961653637363933613961333364346362383765373839613130373037313535313565613737326361613862383661353639623931633534353038333564396333353466306461636563393766653737303931623435623134373639386237663836303134323264636432323631653932386465346461633963343264636261666466393663303732333362613330323730373666333763393639653865643330623662356438663530333462653764393263353936663862653836316535316663633361323432626639643862653965326139653865306631353565626366663233656666613763643537633130353432383131643830373736633935383535323666646230656161333465653139353564353131313933393066653837336534633034646564643239313635383834623938623436333038373838616537666334643461613461386663396263323637346261333231343933623632343435356164343130633164653731626339356431643931666130663230313431386137393565333039656166323937623639396266323763396661323736336364353963656230323165313662383230306331303630663238313766643833636663373637313833343839343631653335393932393162333830643665393339626161346231393233326136613237326464653635316638303436666463333464623237366137373764366662326265633332353562326363323434623461663536366231303566333063363530366464616530656233646564646366393437626362396336306530303039383466336234613863366334656434626639306263313933326237663934646333616536623336303030386562393032303430663962303230333031303030312802320218053a603561383634313561303861306138323566336232656237353031303135353230326533313234336665343161303333333834653738633138633131653565386632303964343933623062326664343565303662333734663262363964663564370ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613365333762373663366364356636363232643639323434343464313263363737633339356632623539303266336262393862386138623530353561373037373036636130323863643735303630613264383730326432643862303439343762646366653061386331343161613238343462316530366536363139303031326538623633323661623066613331373937336263376362346432393439663231303861613034633462306339316261613537323866356235363232656337356162663537386131663762343165646532613637656264363963313865353831666466396336303230616330646539636132633331663063363436393030333331316662623563653764623439633738376531613764323761613432356565376238346461376536363933396639633830643065383266636535356530326466633862356337383431386132366161343336353036393837313962616663656366306264343930303061646463666134303537303862646265666262313937343964323264616230303765343464343565613233623130366638383334633135326532353036326434636632346666323533353663376562333732393130353339336662343962616239303461303266306630626234313763643931396433353238393031323865366262666634666163396639306465313138613937346632613664643031653033326137396231373866363066613166636262643032623537303466623436323935633135313930383136333733656464363633356338353639373866316239353033663166373362346230626538616261326564316665656164353939353362663832656664653933613334373161626435356364613362613861363733666262333739393734396662303036643030336630653633663636356333343631643261376232396463386232303462613539613635363638613436616532383738663030643166393439306466396532383066656266343331356561303465616135363861336139666434386336326336336236656364613639303230333031303030312803320218063a606434363430333938303337393230373965636364356134343331316361306463323262353065633839356235366535336431326232396637326463366462613363616665326535623831303466626461303338616635623434376430666231320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393361323135636334613761373232636165396331336162643633366466393963636565633661663964623436623639666135313637313665663530636532343930613938316530396162303139636132636234363831316235623631396431626431643565653666343661343263373737636264656536343261313438346563646635646464333732393634326333386336643433613838353838373434373566353832343434333636346330346466656439623839303435666230383565323563336566636234383431373333656666376335323963313339653639333530633263643739623263386431393637396137313265346538636166643332363735343162383332623365313061303132353564656636396466316539643362386438656166303331316465363764356531326232366464303164626264396433653432643335643964653237313330326530663166363964383763626337616361396538383637653964343238643363616230363636656234393064356662616233306266663366373835643033663230373261343362623962356535343635366135393263623631656166643561356566323834633763616563363666376634373332356363306434633164323766363631643861373438636135303731633036656631333464666639366634303836363838333636643436386132343738303031376530623536616261376661623433623362376330623737393036666165353438326633323831316332393265366231343435346531346238393438303161383661303363633437373934646430643734353237613732653432346564336166613034383939656362396136336632613961653732626537666139383961646630643635613332633835316439383031666334313034386466333335363466633762333137303765633866623830313430666537623761316661313230626131636236363033323463656666623462636332643962623764653063663534633831396632646433626365616465633963323566356531396463396231303230333031303030312806320218093a603365303261363732306334343636353965383633303564353562666565383230623335653635306665636163633535333039373435356532633465303332636339646564313662316262343464336235393262626163623663326266663165360ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303930323539663465336439663066333934323536353438653963373330386231306237333430336363393039346439376164313531623737303631373062393737326365623634643636326563656639303161386437643135643331396135396338623731303731616363643839356237633933363130646336393736663637633465313732396261383337336162376535326133663363386632363534393164646536396436653039393934373065373434353938313133316264393663333665363836353230336662326562643564353065616461666237323633393664656331643931373438393862346539626530346337346433303466656164643963626433323334633362376633333036633939636230633333396663323539363962343164353861326237636663313833326532323664383163313936333939336532323535613038376431363938633033643432313062643634353830363434643039356361373661613137393465646434306331633837623566383261386533396636303365393731313662613034353738653765383033343634393564373835643465663763663737313462396562366635663965306239613934663462373338383436313962393237346434613935656631353735346138396439376566356331613838623664363933653061383065626435333766633963663063613931643163363264393135646537656438313862393532653634633230303239336565386532383461343136613732613365313266633764343233623135386639623439363630636263323436366662656430666564326532346531303266646539343265623463666439346265633436643364393066633038633339666563626130336530636132343634616536363462393739353135626132396531663730326333666537303262653739333739366438656462313761613438633039323930623032343534396630363131663561653233656437653136343432646637643164616432323836633262623039643535323264643365643639386332663032303330313030303128093202180c3a606339373462623938326338313931336237333236643561336639646363343836313261313566376161643032663230376230663130636432303137613666626666353830336537636139626662343730396162323862366230396435623133660ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303962646438653834666164616133353332666334636530316138613137643463336232333266353061393739306532363236383465646334383233653831356131626435623230656365613762663536653239663662623762383331666233626636656663643134373566306238656435666662306231333835623936643136366236323966303339366138666566356630366534626361323565653461313334306565323633613464396262303230643866343732333036663364383836313338646537613031396530353962643061666339303263636261316132313361653264616136306338613031333735356665306134386530333466356234303233613264616465616138386335343836383335336163376137613364663132623266623634313837373465396231346265366561623863633237623838303132616436313632646137346530656562313631333539303566343337333734646162383538366437353061323662626433616332346165643837386334643533653635313037326338373165393464376163633537356339363733383137333461353366656166346437626136626364643234316363363435386336303837643836333032616132353163303466366435366239633332643764393636323437353065643035353738356430373733663433646330393962323863393232383131343865366338316632393766663964313636653030306163303462333132343138363737356663656637356635656261306331303332626631333064663663643761343632313164306466336530353834643932656136373334396438343930353038656234656638386635346338633364343836646538373139663130666139366665623835636337393630373663613738313331386565326439656439303363613133333630343063353961643931613464326636393865393130386165306564623962316362393561643333623139376666623138626431626138623536636265653261616539353835656365323038613165313462343835363436333032303330313030303128083202180b3a603937303834333033333130373866353638326337663332343464383263336233653238316139313837393537386465656163646363326132656265353431616631383831313561643265383338363565356635643234376234613138633165650ab50722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039303938383635646566326632616233373663376630663733386331643837613237616330316166643030383632306333356362366562666362623063333330303331393361333838633334366433303233313732373031323139336262373666643330303462383634333132633638396566353231336362623930313130313530396465616239346632366137333265363337393239646134633463623332353137653361646262333831316435306163346337376331666365386236353136303632313566333437303766336537323635353435653538633839343630396532383337366264623737373566653330343339653065313539326664636230633365653163333035373733643037326136623839353765616663653161313162653936356564616666333834333336366362366134346563323561383930313036653632343735363766373662353530666461343832626165633633303764363938656338383834316664363666323366323130653437623861396463626136626134653166613731366462333363383065333038313934393664636235653536303966623665376336313533373962646465643432376539323331623932353463326261663934333630386138366436393861653961336338363339646638383764366636623561373133383564323433333864393131613231326266373166316532616363386231383662393665633865363963383662366430353832313737373661303963396336383935336564623539313635373862356132363362326634363965336230633037656164613731613434376565613766386663316262383037343235353536376237663062643165366166623033353837313863393862343239653234623232393835393666633736636636616633393663613934333464373932366563376433376434623932616635366434356665666638313936303935323234613931366331666665366236363765323535666333616338636363656639323064633034346232353030333133326238373830363734326630323033303130303031320218033a603333373339306438666561313434616663313265383132353461323864616336656138323839333833366163303732656666643835653061373734383538306566323830393636343863356137663864626234636538313437363831353133370ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130306335376564623966663237366530323362323830323163623164383763646631393636623639386366343865346561616137633639323037376365656538636362323339613463393231353937653865383966376363303564336633313331353738393736633465333134343035643461346530336137323431306335633039636135323761643561383562393938363337653732613332653166626330643535343662323436356539653830366332646435303965623035306162356662323730363366643932383135623164643236383965323131316361656236663534396539346139663030663038323164346361366336613631313766356135333363393236336266303734613330643563626566353064316338633233383762636139373265646564613039383362356430613662353764636230303230303036383238623430653430373662343837306232346261643834303536656535326235663432326538383430303238633235303036333832643865396336363132323566346637366561373265333430363037653966633666336332303433333037366131636138636231356564303361633839363664303530376263646536383165346530323331656539663837643131316537623438616338663934643264383432623532646637336635373363633534313439363437393763363236393638666661653734313866336236313039623561306630396533323233663461346435653335303964643235303133386636626331376266366365636531373539343433306466313830613338653930616466326166666266616430633662386331623837663137386130363164636662666638623932633931363664383734633166663561663466626364626665386539643039393337306464663630626537343736333364333665653465623563643531663665336333333965313531653431626462356135636532633863393761306134336233636434636330383138383463383739663964326633373438343238633835373366313763393066336362643032303330313030303128073202180a3a603734306166366266373339653838336338386633333434633961306638623330316533396463393831633531363365306465326133666634326239396534323665643765353662363766343231383530333834356466363266343963396662300ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393133316161333638663933343532323966393762363235396363636166666561323365303063643565616430326533663639366331653731346565333933396461643836306533386266393561323937346639656234386539333433663861616334303565613935356430353332336531313762336231633934383133613361663432666538303832633364343362616631626434643833363765393364623030616436393665363237613130333661653533346630313165616435653536663337613666666534346236623965303939343031313932616435363061303334366234316138313030393566356632643766643332643665656236353562613735386336623532366331323933383661663731393763376135336165363033643632323833323235343936316631366430656661383037396137363835363138383862653733333439323231373935366262636166616562623631333563356662623234383464356234613566646630333336616330326532366331363532633162643865616633306461653164366433656230306637623466616238643634373866653864393565623931316466393636613064656134653532326462373662383936363537306563633561663039353136343234663061663566386565363665333836643536353037313339393731363961633337353733626635326664303538646539356162326666363865363831313161623233343035656139363462326262383864303263306631636165643731656364643465346534303835393438373666646238353030626335356337626130323036366530356162393864396637653034363664393730326562353765653337323266386663633835613735353035666633323632313730323838623738383732336164623937653464653536323063633930656164313338326663643735373138383966656662313165363737316263336636663366656231396337616335343238373864303361393032373035323663336565643234393465666635346531353363613966363839303230333031303030312801320218043a603765616236393661623935343336363538626331346666366234626534643932356364353162323230646632613164356336656531363061646166323961353165363934646533656531383463653232656164386437646239333231383266330ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038326465373330363566333466666332393334306435393439643232323062316534333636656435636637633665626436313663663934313661353365613030313766366262313136626664336633646566636331356237613464646630653434643032666536393536383830353365373961373730653230316263663731393333393030333965653866303836643466613734366337653035363931383330316639623565383465333932363238323830383561373962333232626361306235643835666539373232316132366262646532353863363230663064636561303261623165646431366363343961336632616239323838653364643166333764633462366136663731333366663932653534316337316237306432613266363664353537323561623138626638366430303965633364323466356431326530623565363830326431313531333732643462373634656265636234616638326636343934383565633537623561303164633637393538663561303363636161623763626139333534613137333732633133313662613437633935336161663934393031623366386332346536613361666436373538653766336231343363653264643363623037316232613734633932316365653934396134623561366265383739663163373930613662386436336231393264376565323961393439316664643638396139386330613763336436303332306631623461633264363232396466643934653432663361363034386137366265316562393538633861313837336265386433333861656339666335396162376633373632363738393430326331666435393566313930383735373565306265383237666334633061346662336433393361643734613934396363393836626662363463616264646165353339333566366463353630373464623933643737656133623831366264643662653533343439373237323238393835396666333463653531383630616666623632316431303438376463333834336631663836643534303334613633653438613161306430323033303130303031280a3202180d3a606132656363316232616539386264323862633161303864386633373161306434663734356337363864306337373339363235363265333433623235643833343235656565613765663865613134323935333432623865623738643332656333660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039383735356134303862353332316532363330353230303064366437643461326333613535346435653133383461396362356562663437346165383832633633623438366264303864313434646466316139346365396137643632353139363330303661666461616334353838343666313736343031393566653235333961363536393330656661383534663231343865363865633161303863316334396432303063336633303435666537313437663036643533346334626432363231303063623164643339373339643736306438316130626432306638336632353564323530376434636362313130366235333631386336613934343039633838376361653236326434636565396338363233323134376365633134303465306335376262613733313731333065653339363433383838616633643539386564643832623863363165363561653831613465316135366263303664333937313433613938643431636138376433656634333365663061656162363830313139316233653338343830393638663636623665383836363261663435613965323132393934663638623238386562393637626562393834373863323433653231333663316131353931663036316635626330346232316666326261343862323966313834333130383838373362646665393966386135326539343038393731383536653830346465613630326133313137383663393835363532393633633361333737303332396234303966373466646663373436623232613566383431383931323037316334636538343663396234623332306665646636653962363465326362653338346639613832623661616164346232303930373433316466316133336636393230376135363536303062653831303730643038333239303039393538353961343439386435623539333135626365626566656538303765623061336139343266316364663333363764643434343466646232393838366566636464306265346162653961313838383033393533383735656461333364623732393839663736336230323033303130303031280b3202180e3a603139366237623132303739376364623361396430303362393833643537646131303331303662313733306531376636376532633762616161646234333738396166313639366461313031316232353362636263383630333333383566303332380ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061396462376638626161313236383938666162373839313135613362356438393734346631393765323830343161653039386633653838366336393837313732316531316262306164313166336365393132346161393631643661306463383435663439373635633366616231393935383430323637366635363434363262663238316462613535383837383066303365393035373938653138343236396161613630663761313437323333316532666231646561646438373763383463626362363431636139653563386164366534356263313539636230373966636230643434396364636438643932333963316130343765376234343864613063646361323636313061323566323936643936653734363962363736643461343434353136653761353965383532393361383038366638343063303532383534653032613863623230303264616433353832356265346438336235326661393165386337336666303439373436313438383632373837633131313866393234643331636261633162343466656666323264343336623339373965616466396234336134626661373265313562343735356663616232363065303661323739633362623733626337663136613036306434643532326664343930353830333838616135393564383034343733366535323266363432343931356637383033623735383365303935636466373863333235313936393764653831623839666235303035343735336231613137663961616662303634643834633939326639616231316363626338636231303831346463616635323634616134356632316264656661633832636361636161663335386533313337336565316261346537343032666438613730656130633238636135636337346463343235313063393639636432633435396231656333363838613031656133396139393237313063643232393763393861383462363334386135373738303466646332333464336665313930336532633231653137326461323862353961653665346337653865646438623731633439643730323033303130303031280c3202180f3a603538343661353366343437353239666439636462373830346364333136383865643665656265336236336461326635663231316666626337333731393763663366316366626664613631626537643135313066306539323339383131376637340ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061386365616333363765623166316465356630643965663365616630646639623938343438666532303830383437363536326130363063353163323839373730623463616366653932636236353536393832336539363263326132633966656435336264333663613361313232646531633532356135383266323561346437643632386331613364356264623839333661656365373531306537353534656537303333303235633039326338323865656235373338626530326564393633646138316135393230353633346365393435343537376162383266343066313366316565353565306165373237653233633330323834623166343462393961636534646463356639616337616438386439666132323535393335623234646362613834303036343265313663663235333263306230643638393239303436303837313563343037366634366438346130653066656433366537366363646339363335356537613236313630393435633262353461653236636330306664303832333236333436656565656137646437356639313931316539396462636239396561346163366261303536633333323238643838316438353833316439636338373935393364613137343664643065653935646332623936666539336261666366663263643764393239353864373864663333663230356437313135656439666163346462366634636336306535366135343431646135623562353566613539393939303265393538613662366334346438313064646335363138313234316238376632326630353961363838306538303231373336643031383937646236353434396365383137613233373564303335353163623064653530376336303961306338303330656366346266646562323133633033646161373634613138323162373234333334663731663736386437616563623237373035326137303333373635663037323138303536633738663261383761663138333836643866363161356366636233663262613464643539393135663133643338363334643136393537353730323033303130303031280d320218103a603030306162636435396133306135333838633530306265363832663663613239343034363239356339323735383831633230643334626230643639306564613762333862366262643037613364643166646662366137303434626230396366660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061663062393134323537626637613436353563346135306430636164356530613165343538316564363632336630653837333066373936623866323963353831373862636363363933326331666333316633396566343462383264336334336233393837333733373366656362313239353232386130346664353061313466333634366438346665316634363763616562393864343633653239373565393935623864326531653339663362663661646463323561653335643635643032363038653033343535333739363665326162636534396238313462656164336331623735373137346165333063303062306334336539396238303439366237326433633133316631633665346663646130356632383131376566396532386334333033626534643863376530343264353862383363633132313934356132633635653739363263616139313835393338663337353764663763636139356366303262356533313934346133613631396130616333663165333462396230313364346332323463346631653730666439666433363938336566383661646535313833363263633833323263306637623631613961633735666238326537623836643638626330663039396130396131346361633561316438643338663961386137306363333766663563633362626432373432666664313436323535633137316536613137383038333237316463653066646536383165643439326362353962303739366432373031373538333864633539303831303765336136656133663961343036623364313133306363656333623437393165343962626332333136303362343661623264306639336434336265373561623961346437313065613934306532383561376231353362306361376364646565366439646365306164383335306334316439306332313562393538383531356166613061633333363561653037653831663362626233366264626561633462333162636231616134653832353635623937376639646164383564363236656566396161613965663864376533666230323033303130303031280e320218113a603933653238313031303462326231376230303935326235613431303264333365646230343363623136646533616433643364363832363066353562623065353837333765613539343463333338663763386362383863373833336663383630630ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038633037626533303561643630623930626132646162333962306565373736306531613232663835373532323534306437306230336233663965343837356133613239616230383038386631343466353765623235326534366261353933383564306536643432373031313764613061626331623362383036393463396135303538623836643631646661303665373136373039633838653866656163376333613065316432356663306165626636613866373666636239396638343566653138313436316361623638353862393763336134303237666233373132623134653663303738396465313764343137363435373765353131343137656231363236393265623037616531653733353532333565396262343339303437623663303136313337383265376464366636303464616134363734363631643533393631663436633366616136623765373637363264333733623562353432623739656139363365666266333361633638313938626232623636316366663637363931366566333732616434633236633231366334626334373837633834656333326431383464373763373531383663303963663364396639313433336361393835333131396261623331666136616432366634353365353936643962646563613638613537363962633866656537613533356438306338633666336566623164666232383861623661393739383534623763653833313234656330643130326166663934633362373466396333373839353863323565623933336464353363316538303561313836353464366439313836393930663635373034323966393630663334653862346637666439393732646362666539323430653037346461326433353561356637656639633161663632656635393832613831373435373862396331356334396563353636626461636233306363666365663039636466653730386164343837343234653963316265363533663965653736363065376439343263316566613564613238366531616464616230366139613333663964653934363739356230323033303130303031280f320218123a603934383235313739643163333934303137306233356432363665346366613830643737386335653966356261653764653833666638636334373431663362653336616336336431653761653439373261656466366263316533636632303638390ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030626531376339393634376365633635613434343037623533353835366233633362616566356235346635363561663538623834353662613863376365353335643561633732633631633434633736623363353763386538363438343136333762653130613833636665333963303932343736643064626534643663646364636437323061333062356266656235316130316131386635383263343566366338363939336663663764663138323933356465316438363930363034346463663335313836393335643962643765656137393532333532626562623465663961653066373636316537306134323337616661393839393636383763613438666366633562303064333830376630353462653066613863336266613432353033386265366566323935313634663232663733623765383863393465613962653861613466336132343563383962396431666435313932663761353062393538623265663831303462333666316266386664326366623238633134323138303063316334376534656639386166313530303730636336643639643137653865623932663138613661613161363532363661343935323338643130336638663639356235376563663337333635306130353230303837343537323162656138313536323739363763383037363336356466386334633761376434646438663263333835306331386662613731656236306536653864666264313936653035333766643730623334346563626363353330646663383364613666656466343964353161393034313935303262613964373063643335663163663363303639346532333534663930363466646266353335656232336332376330613433643062373863316638363763363164393836393564386465663762633261313062623636373463323266363661616230613931383133646466323763646238353263353965663739653162396531613037356661366565323761376533373734646266346232363436353432376536643561623931666537663066336137313738346563613138326235303230333031303030312810320218133a603038393039376465663031623037633764393734613537353532353161366161613061666236623332613534353334336432393138653732626164303433323163313131633234643432373538306633626131653236616139643735653632360ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613561643262373634336130346330353564326638636432353131623135313339666334353537353632313338386534396331313962326633393861636131313066363133393662306338363664653530363335323262623835343032373365313366366439346365316536303433386636616662303061616136343631326637313435653962636538626331613533623934313931336161373663396633613238333366616437636632383563376163326433376639396633633263646234396465346431353165363136373835363466323831663534313432346234316661376335316232613936303232383363376433326565303065623833386461313563333861666339366530363164393763656465323231363566663161613935396631633432373562326430393863343035383661353537396662623363623930303732373034313230613861363661353237306634666366643130383663393233363930613335653766643434356533336163303366313339633638363835353635373063646334616166323231303761366331613434323435366137633663373965653034303930653765356434663636626361363063613166343762366466623534336461633363626631396137373139613866353562366638336234613362386136366436303235366430613436353531666137303234626430353633316238613535383038373732353463326632663236386364633333643264626263666237333365396662653233336262396362353961623331613031343862323365386334323638306666313061663463373961346430383334366662373961393364393632393534386561663162623132343639386661656661346364643732343432633033613034623733333433326637343839303361333235633238336434353661623961653932316165376564333339316535643137383765666463323335343061376238356336393161653837306130376639306231316331336233326365343365616564313562333639363835636534393137376363393835303230333031303030312811320218143a603939666162633461646534653636326336653238323366346139366562323134343034383465356136643064333132623730633036386432326236323936333830376332333361343964626239383361376562623330653737303637373261340ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030386434356332316330633935656636356130323964353263393537666430663835663230313233646130333465363136373164646565353437356630373338326136366336366362346463353035303464646664333735383130383364663864313735373733306564386436663336346466346333366132363531353931393535646132303161323430376661386162396232333133383131323235613064613233306662653338306530393061613536656661346632303265633962343832336636353031643936616336393865626632366161636633656532643166333261373231633934376531303736636633356233373364613164383761333661313532653030653731303131373932323832653832356666313731633538333362383835373062666336646138343439653666393566386231323635616235353531393430333135353364316435373666393363343263306361363061616261633463386464313632643831313466326232313531313538336337323533396665353663343939613932396465336134306130643435633137633538396332643739383863653236656166633932613364333762376561303034326434336530336166613632373162323632353561366363636661653533373138323164383165306230356332353062353966306139303734316130653065383861303965643536633562393738306430393566303930366630623831643531323633393832616165303131333663303732643834346131316436646134623261363163363434653161623137663136666634386565323366656465383435326631653432653264333061303739306332356434323036306531643434613637316132656232336431313466363863373165333366313736646235386136386234333030353462633164323938336132336133326561366666393566613763346438653338306562323936653938623739363865636638343534643831376337333765656135646439323165623836633136633762323933303461346137656362653561336131303230333031303030312812320218153a606537396165396337313933643164326263393433383436346338616135663632323461653835323936366134336239383235383833663766373432633533393562643330393935383761393638363662393233396431656666336165353037610ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623035616265326162303066646430366339353565383637313062306530366631613932363234613438616431636263386466633666323231323936326230633330666462643238346133376335613337363538623633633336656138313632353631613865346639343663626535373232633032383830316630663238316337306638643838633763303061326632653239663539376237393938363965643833353664663537633437626539393434613261616666363530663962346262613064626335336463383830666462623639656134353139303564323830323230326638653239633034613736643237616632656237633534383438356266336634363934633930633431383130383838383433373932383438383335663738313637303764336538643736663465363766353738306263663038383133633535656336333961396264363234313738663565623134376435303061663335316539656631623165333432343834636132363064623763636261653438366631336366323635623562316162363838303636303038303533623230633364656463653737316339613038613033323061613963653435316562396439383361376234396361613130393666386164633039383331386463333865306537636566306438653564353537613036373536383561316339653235366132626339646261333232623362623331373263663731343037376263333830663861306134333361386266613766626663353966366230393365633862663665393339376330396231386531383034306331623536363836343733376338666137653239373935663361343538386464613763326261623439353636356363346139623833366532656239306336326133666361663539316662356638313830346337363138306536323666613236343461376465333435313164366334363637643938393337653237373333663464316539313338383333353465353466643733353137323165373666376235366333343833333838663461366238376232386165626562303230333031303030312813320218163a603962343038383566313362366163316337353336393262613366313739303061333838333165363934613061663937343934623834333838323039636235656662646339386136646162623265316337313833393166633133356264616163330ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396463643863306135336539306333353539353734663636323034313137643362353033653530613336643330393766616338343239653663656364333762623534303731383038663265653938323033356638353161306339626532313736333833613232653338633161626131363866333266393035373063623332333363666536323539383736363661663637623531346361656632316662386466366430666364333363663236303662393264646561353533366236303638643836373832653339626435633338343435393931643431396237643165633038353939343132633039343964316332343062333563313464633535323734646261373166666165393336313235613566383139663534313332653234333964346163353539373939366563653835653133646666333336316639313331663536636561633562396635353262343963663666396139616336653564636532646233363934363266393361663830653562353662366538626566613136326130363162346137363839326264633834363437333036633630303835386664643237303332373663326337303434303139386566643766653335343563663261623538306337346366643634343561616637626437663734356363323532656162643236356561626565383632343137313034653639343861353537353666646332323264663061313031353234646531633363303863636630343330313165633766653936346564643834353161313330313437633037333633613335663131666465656638663261326237363137353762343335386666383962373561343864363762646336303930363933653062623836373965636262393366666462336633656439366265633933656634363536653337313661623837636534366361386531323539633866656464653866326631656130663365623263343865393635353164653132333330333435373235663435656436396338353735623531363833616661343732363231383236646232326262326431633466316533363436346139303230333031303030312814320218173a60346630613033333466393737363738313632663830643936376637323139313431333630633062376637663033316233376336396536323137333933336564616434366263626139373636376565373262666435613933346261313532326330")));t.MAINNET_ADDRESS_BOOK=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(1311));function l(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;r--){var o=this._nodes[r];n.includes(o.address.toString())||t.push(r)}return t}},{key:"getNextMirrorNode",value:function(){if(null==this._createNetworkChannel)throw new Error("mirror network not supported on browser");return this._getNumberOfMostHealthyNodes(1)[0]}}]),n}(r(n(637)).default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),t.call(this,e)}return(0,a.default)(n,[{key:"getKey",value:function(){return this._address.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}}]),n}(r(n(636)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(1313));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var y=function(e){(0,s.default)(n,e);var t=h(n);function n(e){var r;return(0,u.default)(this,n),(r=t.call(this))._address=e,r}return(0,c.default)(n,[{key:"close",value:function(){}},{key:"_createUnaryClient",value:function(e){var t=this;return function(){var n=(0,i.default)(a.default.mark((function n(r,o,i){var u,c,s;return a.default.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,fetch("".concat(t._address,"/proto.").concat(e,"/").concat(r.name),{method:"POST",headers:{"content-type":"application/grpc-web+proto","x-user-agent":"hedera-sdk-js/v2","x-grpc-web":"1"},body:(0,d.encodeRequest)(o)});case 2:return u=n.sent,n.next=5,u.arrayBuffer();case 5:c=n.sent,s=(0,d.decodeUnaryResponse)(c),i(null,s);case 8:case"end":return n.stop()}}),n)})));return function(e,t,r){return n.apply(this,arguments)}}()}}]),n}(d.default);t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.decodeUnaryResponse=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength,r=new DataView(e,t,n),o=0,i=null,u=0;for(;o>7,f=r.getUint32(o+1),d=o+5;if(d+f>r.byteLength)throw new Error("(BUG) unexpected frame length past the boundary");var p=new Uint8Array(e,r.byteOffset+d,f);if(0===l){if(null!=i)throw new Error("(BUG) unexpectedly received more than one data frame");i=p}else{if(1!==l)throw new Error("(BUG) unexpected frame type: ".concat(l));var h=s.decode(p),y=h.split(":"),m=(0,a.default)(y,2),b=m[0],v=m[1];if("grpc-status"!==b)throw new Error("(BUG) unhandled trailer, ".concat(h));u=parseInt(v)}o+=f+5}if(0!==u)throw new Error("(BUG) unhandled grpc-status: ".concat(u));if(null==i)throw new Error("(BUG) unexpectedly received no response");return i},t.default=void 0,t.encodeRequest=function(e){var t=new ArrayBuffer(e.byteLength+5);return new DataView(t,1,4).setUint32(0,e.length),new Uint8Array(t,5).set(e),t};var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=n(38),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(99));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(){(0,i.default)(this,e),this._crypto=null,this._smartContract=null,this._file=null,this._consensus=null,this._freeze=null,this._network=null,this._token=null,this._schedule=null}return(0,u.default)(e,[{key:"close",value:function(){throw new Error("not implemented")}},{key:"crypto",get:function(){return null!=this._crypto||(this._crypto=c.CryptoService.create(this._createUnaryClient("CryptoService"))),this._crypto}},{key:"smartContract",get:function(){return null!=this._smartContract||(this._smartContract=c.SmartContractService.create(this._createUnaryClient("SmartContractService"))),this._smartContract}},{key:"file",get:function(){return null!=this._file||(this._file=c.FileService.create(this._createUnaryClient("FileService"))),this._file}},{key:"consensus",get:function(){return null!=this._consensus||(this._consensus=c.ConsensusService.create(this._createUnaryClient("ConsensusService"))),this._consensus}},{key:"freeze",get:function(){return null!=this._freeze||(this._freeze=c.FreezeService.create(this._createUnaryClient("FreezeService"))),this._freeze}},{key:"network",get:function(){return null!=this._network||(this._network=c.NetworkService.create(this._createUnaryClient("NetworkService"))),this._network}},{key:"token",get:function(){return null!=this._token||(this._token=c.TokenService.create(this._createUnaryClient("TokenService"))),this._token}},{key:"schedule",get:function(){return null!=this._schedule||(this._schedule=c.ScheduleService.create(this._createUnaryClient("ScheduleService"))),this._schedule}},{key:"_createUnaryClient",value:function(e){throw new Error("not implemented")}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(3)),i=n(1315),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(93));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=n(15).Buffer,l=n(698).AbiCoder,f=(n(698).ParamType,new l((function(e,t){return!e.match(/^u?int/)||Array.isArray(t)||t&&"object"===(0,a.default)(t)&&"BN"===t.constructor.name?t:t.toString()})));function d(){}var p=function(){};p.prototype.encodeFunctionSignature=function(e){return("function"==typeof e||"object"===(0,a.default)(e)&&e)&&(e=u._jsonInterfaceMethodToString(e)),u.sha3(e).slice(0,10)},p.prototype.encodeEventSignature=function(e){return("function"==typeof e||"object"===(0,a.default)(e)&&e)&&(e=u._jsonInterfaceMethodToString(e)),u.sha3(e)},p.prototype.encodeParameter=function(e,t){return this.encodeParameters([e],[t])},p.prototype.encodeParameters=function(e,t){return e=this.mapTypes(e),t.reduce((function(t,n,r){var o=e[r];return"object"===(0,a.default)(o)&&o.type&&(o=o.type),t["add".concat(o[0].toUpperCase()+o.slice(1))](n),t}),new i.ContractFunctionParameters)},p.prototype.mapTypes=function(e){var t=this,n=[];return e.forEach((function(e){if("object"===(0,a.default)(e)&&"function"===e.type&&(e=Object.assign({},e,{type:"bytes24"})),t.isSimplifiedStructFormat(e)){var r=Object.keys(e)[0];n.push(Object.assign(t.mapStructNameAndType(r),{components:t.mapStructToCoderFormat(e[r])}))}else n.push(e)})),n},p.prototype.isSimplifiedStructFormat=function(e){return"object"===(0,a.default)(e)&&void 0===e.components&&void 0===e.name},p.prototype.mapStructNameAndType=function(e){var t="tuple";return e.indexOf("[]")>-1&&(t="tuple[]",e=e.slice(0,-2)),{type:t,name:e}},p.prototype.mapStructToCoderFormat=function(e){var t=this,n=[];return Object.keys(e).forEach((function(r){"object"!==(0,a.default)(e[r])?n.push({name:r,type:e[r]}):n.push(Object.assign(t.mapStructNameAndType(r),{components:t.mapStructToCoderFormat(e[r])}))})),n},p.prototype.formatParam=function(e,t){var n=this,r=new RegExp(/^bytes([0-9]*)$/),o=new RegExp(/^bytes([0-9]*)\[\]$/),a=new RegExp(/^(u?int)([0-9]*)$/),i=new RegExp(/^(u?int)([0-9]*)\[\]$/);if(u.isBN(t)||u.isBigNumber(t))return t.toString(10);if(e.match(o)||e.match(i))return t.map((function(t){return n.formatParam(e.replace("[]",""),t)}));var c=e.match(a);if(c){var l=parseInt(c[2]||"256");l/80&&(!t||"0x"===t||"0X"===t))throw new Error("Returned values aren't valid, did it run Out of Gas? You might also see this error if you are not using the correct ABI for the contract you are retrieving data from, requesting data from a block number that does not exist, or querying a node which is not fully synced.");var r=f.decode(this.mapTypes(e),"0x"+t.replace(/0x/i,""),n),o=new d;return o.__length__=0,e.forEach((function(e,t){var n=r[o.__length__],i="object"===(0,a.default)(e)&&e.type&&"string"===e.type;n="0x"!==n||i||"string"==typeof e&&"string"===e?n:null,o[t]=n,("function"==typeof e||e&&"object"===(0,a.default)(e))&&e.name&&(o[e.name]=n),o.__length__++})),o},p.prototype.decodeLog=function(e,t,n){var r=this;n=Array.isArray(n)?n:[n],t=t||"";var o=[],a=[],i=0;e.forEach((function(e,t){e.indexed?(a[t]=["bool","int","uint","address","fixed","ufixed"].find((function(t){return-1!==e.type.indexOf(t)}))?r.decodeParameter(e.type,n[i]):n[i],i++):o[t]=e}));var u=t,c=u?this.decodeParametersWith(o,u,!0):[],s=new d;return s.__length__=0,e.forEach((function(e,t){s[t]="string"===e.type?"":null,void 0!==c[t]&&(s[t]=c[t]),void 0!==a[t]&&(s[t]=a[t]),e.name&&(s[e.name]=s[t]),s.__length__++})),s};var h=new p;t.default=h},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0});var o={Client:!0};Object.defineProperty(t,"Client",{enumerable:!0,get:function(){return i.default}});var a=n(1316);Object.keys(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||e in t&&t[e]===a[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return a[e]}}))}));var i=r(n(1447))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AccountAllowanceAdjustTransaction",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"AccountAllowanceApproveTransaction",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(t,"AccountBalance",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(t,"AccountBalanceQuery",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"AccountCreateTransaction",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"AccountDeleteTransaction",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"AccountId",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"AccountInfo",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"AccountInfoQuery",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"AccountRecordsQuery",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"AccountStakersQuery",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"AccountUpdateTransaction",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"AddressBookQuery",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"AssessedCustomFee",{enumerable:!0,get:function(){return I.default}}),Object.defineProperty(t,"BadKeyError",{enumerable:!0,get:function(){return o.BadKeyError}}),Object.defineProperty(t,"BadMnemonicError",{enumerable:!0,get:function(){return o.BadMnemonicError}}),Object.defineProperty(t,"BadMnemonicReason",{enumerable:!0,get:function(){return o.BadMnemonicReason}}),Object.defineProperty(t,"ContractByteCodeQuery",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"ContractCallQuery",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"ContractCreateFlow",{enumerable:!0,get:function(){return O.default}}),Object.defineProperty(t,"ContractCreateTransaction",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"ContractDeleteTransaction",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"ContractExecuteTransaction",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"ContractFunctionParameters",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"ContractFunctionResult",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"ContractFunctionSelector",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"ContractId",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"ContractInfo",{enumerable:!0,get:function(){return B.default}}),Object.defineProperty(t,"ContractInfoQuery",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"ContractLogInfo",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"ContractUpdateTransaction",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"CustomFee",{enumerable:!0,get:function(){return F.default}}),Object.defineProperty(t,"CustomFixedFee",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"CustomFractionalFee",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"CustomRoyaltyFee",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"DelegateContractId",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"ExchangeRate",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"ExchangeRates",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"Executable",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"FileAppendTransaction",{enumerable:!0,get:function(){return V.default}}),Object.defineProperty(t,"FileContentsQuery",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"FileCreateTransaction",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"FileDeleteTransaction",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"FileId",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"FileInfo",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"FileInfoQuery",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"FileUpdateTransaction",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"FreezeTransaction",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"Hbar",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"HbarAllowance",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"HbarUnit",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"Key",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"KeyList",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"LedgerId",{enumerable:!0,get:function(){return gt.default}}),Object.defineProperty(t,"LiveHash",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"LiveHashAddTransaction",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"LiveHashDeleteTransaction",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"LiveHashQuery",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"Mnemonic",{enumerable:!0,get:function(){return s.default}}),t.NetworkName=void 0,Object.defineProperty(t,"NetworkVersionInfo",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"NetworkVersionInfoQuery",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"NftId",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"PrecheckStatusError",{enumerable:!0,get:function(){return vt.default}}),Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"Provider",{enumerable:!0,get:function(){return ht.default}}),Object.defineProperty(t,"ProxyStaker",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"Query",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"ReceiptStatusError",{enumerable:!0,get:function(){return kt.default}}),Object.defineProperty(t,"ScheduleCreateTransaction",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"ScheduleDeleteTransaction",{enumerable:!0,get:function(){return he.default}}),Object.defineProperty(t,"ScheduleId",{enumerable:!0,get:function(){return ye.default}}),Object.defineProperty(t,"ScheduleInfo",{enumerable:!0,get:function(){return me.default}}),Object.defineProperty(t,"ScheduleInfoQuery",{enumerable:!0,get:function(){return be.default}}),Object.defineProperty(t,"ScheduleSignTransaction",{enumerable:!0,get:function(){return ve.default}}),Object.defineProperty(t,"SemanticVersion",{enumerable:!0,get:function(){return ke.default}}),Object.defineProperty(t,"Signer",{enumerable:!0,get:function(){return yt.default}}),Object.defineProperty(t,"SignerSignature",{enumerable:!0,get:function(){return mt.default}}),Object.defineProperty(t,"Status",{enumerable:!0,get:function(){return ge.default}}),Object.defineProperty(t,"StatusError",{enumerable:!0,get:function(){return bt.default}}),Object.defineProperty(t,"SystemDeleteTransaction",{enumerable:!0,get:function(){return _e.default}}),Object.defineProperty(t,"SystemUndeleteTransaction",{enumerable:!0,get:function(){return we.default}}),Object.defineProperty(t,"Timestamp",{enumerable:!0,get:function(){return Ie.default}}),Object.defineProperty(t,"TokenAllowance",{enumerable:!0,get:function(){return Ae.default}}),Object.defineProperty(t,"TokenAssociateTransaction",{enumerable:!0,get:function(){return Te.default}}),Object.defineProperty(t,"TokenBurnTransaction",{enumerable:!0,get:function(){return Oe.default}}),Object.defineProperty(t,"TokenCreateTransaction",{enumerable:!0,get:function(){return Pe.default}}),Object.defineProperty(t,"TokenDeleteTransaction",{enumerable:!0,get:function(){return Ee.default}}),Object.defineProperty(t,"TokenDissociateTransaction",{enumerable:!0,get:function(){return Se.default}}),Object.defineProperty(t,"TokenFeeScheduleUpdateTransaction",{enumerable:!0,get:function(){return Re.default}}),Object.defineProperty(t,"TokenFreezeTransaction",{enumerable:!0,get:function(){return De.default}}),Object.defineProperty(t,"TokenGrantKycTransaction",{enumerable:!0,get:function(){return Ce.default}}),Object.defineProperty(t,"TokenId",{enumerable:!0,get:function(){return Ne.default}}),Object.defineProperty(t,"TokenInfo",{enumerable:!0,get:function(){return Be.default}}),Object.defineProperty(t,"TokenInfoQuery",{enumerable:!0,get:function(){return Me.default}}),Object.defineProperty(t,"TokenMintTransaction",{enumerable:!0,get:function(){return je.default}}),Object.defineProperty(t,"TokenNftAllowance",{enumerable:!0,get:function(){return xe.default}}),Object.defineProperty(t,"TokenNftInfo",{enumerable:!0,get:function(){return Fe.default}}),Object.defineProperty(t,"TokenNftInfoQuery",{enumerable:!0,get:function(){return Ue.default}}),Object.defineProperty(t,"TokenPauseTransaction",{enumerable:!0,get:function(){return Le.default}}),Object.defineProperty(t,"TokenRevokeKycTransaction",{enumerable:!0,get:function(){return Ge.default}}),Object.defineProperty(t,"TokenSupplyType",{enumerable:!0,get:function(){return Ke.default}}),Object.defineProperty(t,"TokenType",{enumerable:!0,get:function(){return ze.default}}),Object.defineProperty(t,"TokenUnfreezeTransaction",{enumerable:!0,get:function(){return Qe.default}}),Object.defineProperty(t,"TokenUnpauseTransaction",{enumerable:!0,get:function(){return He.default}}),Object.defineProperty(t,"TokenUpdateTransaction",{enumerable:!0,get:function(){return Ve.default}}),Object.defineProperty(t,"TokenWipeTransaction",{enumerable:!0,get:function(){return We.default}}),Object.defineProperty(t,"TopicCreateTransaction",{enumerable:!0,get:function(){return qe.default}}),Object.defineProperty(t,"TopicDeleteTransaction",{enumerable:!0,get:function(){return Ye.default}}),Object.defineProperty(t,"TopicId",{enumerable:!0,get:function(){return Ze.default}}),Object.defineProperty(t,"TopicInfo",{enumerable:!0,get:function(){return Je.default}}),Object.defineProperty(t,"TopicInfoQuery",{enumerable:!0,get:function(){return Xe.default}}),Object.defineProperty(t,"TopicMessage",{enumerable:!0,get:function(){return $e.default}}),Object.defineProperty(t,"TopicMessageChunk",{enumerable:!0,get:function(){return et.default}}),Object.defineProperty(t,"TopicMessageQuery",{enumerable:!0,get:function(){return tt.default}}),Object.defineProperty(t,"TopicMessageSubmitTransaction",{enumerable:!0,get:function(){return nt.default}}),Object.defineProperty(t,"TopicUpdateTransaction",{enumerable:!0,get:function(){return rt.default}}),Object.defineProperty(t,"Transaction",{enumerable:!0,get:function(){return ot.default}}),Object.defineProperty(t,"TransactionId",{enumerable:!0,get:function(){return at.default}}),Object.defineProperty(t,"TransactionReceipt",{enumerable:!0,get:function(){return it.default}}),Object.defineProperty(t,"TransactionReceiptQuery",{enumerable:!0,get:function(){return ut.default}}),Object.defineProperty(t,"TransactionRecord",{enumerable:!0,get:function(){return ct.default}}),Object.defineProperty(t,"TransactionRecordQuery",{enumerable:!0,get:function(){return st.default}}),Object.defineProperty(t,"TransactionResponse",{enumerable:!0,get:function(){return lt.default}}),Object.defineProperty(t,"Transfer",{enumerable:!0,get:function(){return ft.default}}),Object.defineProperty(t,"TransferTransaction",{enumerable:!0,get:function(){return dt.default}}),Object.defineProperty(t,"Wallet",{enumerable:!0,get:function(){return pt.default}});var o=n(277),a=r(n(656)),i=r(n(132)),u=r(n(161)),c=r(n(49)),s=r(n(657)),l=r(n(1350)),f=r(n(1376)),d=r(n(673)),p=r(n(674)),h=r(n(1379)),y=r(n(1380)),m=r(n(14)),b=r(n(675)),v=r(n(1382)),k=r(n(1383)),g=r(n(1384)),_=r(n(1385)),w=r(n(1386)),I=r(n(670)),A=r(n(1390)),T=r(n(1391)),O=r(n(1393)),P=r(n(684)),E=r(n(1394)),S=r(n(1395)),R=r(n(284)),D=r(n(369)),C=r(n(680)),N=r(n(61)),B=r(n(685)),M=r(n(1396)),j=r(n(666)),x=r(n(1397)),F=r(n(285)),U=r(n(225)),L=r(n(286)),G=r(n(287)),K=r(n(1398)),z=r(n(366)),Q=r(n(133)),H=r(n(1399)),V=r(n(682)),W=r(n(1400)),q=r(n(681)),Y=r(n(683)),Z=r(n(68)),J=r(n(686)),X=r(n(1401)),$=r(n(1402)),ee=r(n(1403)),te=r(n(32)),ne=r(n(222)),re=r(n(658)),oe=r(n(370)),ae=r(n(1405)),ie=r(n(1406)),ue=r(n(1407)),ce=r(n(687)),se=r(n(1408)),le=r(n(194)),fe=r(n(677)),de=r(n(55)),pe=r(n(1409)),he=r(n(1410)),ye=r(n(164)),me=r(n(689)),be=r(n(1411)),ve=r(n(1412)),ke=r(n(688)),ge=r(n(162)),_e=r(n(1413)),we=r(n(1414)),Ie=r(n(50)),Ae=r(n(223)),Te=r(n(1415)),Oe=r(n(1416)),Pe=r(n(1417)),Ee=r(n(1418)),Se=r(n(1419)),Re=r(n(1420)),De=r(n(1421)),Ce=r(n(1422)),Ne=r(n(30)),Be=r(n(690)),Me=r(n(1423)),je=r(n(1424)),xe=r(n(224)),Fe=r(n(691)),Ue=r(n(1425)),Le=r(n(1426)),Ge=r(n(1427)),Ke=r(n(372)),ze=r(n(371)),Qe=r(n(1428)),He=r(n(1429)),Ve=r(n(1430)),We=r(n(1431)),qe=r(n(1432)),Ye=r(n(1433)),Ze=r(n(134)),Je=r(n(692)),Xe=r(n(1434)),$e=r(n(693)),et=r(n(694)),tt=r(n(1435)),nt=r(n(1437)),rt=r(n(1438)),ot=r(n(25)),at=r(n(85)),it=r(n(283)),ut=r(n(660)),ct=r(n(367)),st=r(n(665)),lt=r(n(659)),ft=r(n(368)),dt=r(n(1439)),pt=r(n(1443)),ht=r(n(1444)),yt=r(n(695)),mt=r(n(1445)),bt=r(n(364)),vt=r(n(221)),kt=r(n(282)),gt=r(n(103));n(1446);t.NetworkName={Mainnet:"mainnet",Testnet:"testnet",Previewnet:"previewnet"}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e,t){(0,i.default)(r,e);var n=s(r);function r(e,t){var a;return(0,o.default)(this,r),(a=n.call(this))._keys=null==e?[]:e,a._threshold=null==t?null:t,a}return(0,a.default)(r,[{key:"threshold",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){return this._threshold=e,this}},{key:"push",value:function(){var e;return(e=this._keys).push.apply(e,arguments)}},{key:"splice",value:function(e,t){for(var n,o=arguments.length,a=new Array(o>2?o-2:0),i=2;i=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:"";return(0,v.createKeystore)(this.toBytesRaw(),e)}}],[{key:"generateED25519",value:function(){return new T(y.default.generate())}},{key:"generateECDSA",value:function(){return new T(m.default.generate())}},{key:"generate",value:function(){return T.generateED25519()}},{key:"generateAsync",value:(f=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",T.generateED25519Async());case 1:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"generateED25519Async",value:(l=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=T,e.next=3,y.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return l.apply(this,arguments)})},{key:"generateECDSAAsync",value:(o=(0,i.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=T,e.next=3,m.default.generateAsync();case 3:return e.t1=e.sent,e.abrupt("return",new e.t0(e.t1));case 5:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"fromBytes",value:function(e){try{return new T(y.default.fromBytes(e))}catch(e){}try{return new T(m.default.fromBytes(e))}catch(e){}throw new p.default("invalid private key length: ".concat(e.length," bytes"))}},{key:"fromBytesECDSA",value:function(e){return new T(m.default.fromBytes(e))}},{key:"fromBytesED25519",value:function(e){return new T(y.default.fromBytes(e))}},{key:"fromString",value:function(e){return T.fromBytes(g.decode(e))}},{key:"fromStringECDSA",value:function(e){return T.fromBytesECDSA(g.decode(e))}},{key:"fromStringED25519",value:function(e){return T.fromBytesED25519(g.decode(e))}},{key:"fromMnemonic",value:(r=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:"","string"!=typeof t){e.next=7;break}return e.next=4,d.default.fromString(t);case 4:e.t0=e.sent,e.next=8;break;case 7:e.t0=t;case 8:return e.abrupt("return",e.t0.toPrivateKey(n));case 9:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"fromKeystore",value:(n=(0,i.default)(a.default.mark((function e(t){var n,r=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:"",e.t0=T,e.next=4,(0,v.loadKeystore)(t,n);case 4:return e.t1=e.sent,e.abrupt("return",e.t0.fromBytes.call(e.t0,e.t1));case 6:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"fromPem",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o=arguments;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:"",e.next=3,(0,k.read)(t,n);case 3:if(!((r=e.sent)instanceof y.default||r instanceof m.default)){e.next=6;break}return e.abrupt("return",new T(r));case 6:return e.abrupt("return",T.fromBytes(r));case 7:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),T}(h.default);t.default=S,I.default.privateKeyConstructor=function(e){return new S(e)},I.default.privateKeyFromBytes=function(e){return S.fromBytes(e)}},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=["aback","abbey","abbot","abide","ablaze","able","aboard","abode","abort","abound","about","above","abroad","abrupt","absent","absorb","absurd","abuse","accent","accept","access","accord","accuse","ace","ache","aching","acid","acidic","acorn","acre","across","act","action","active","actor","actual","acute","adam","adapt","add","added","addict","adept","adhere","adjust","admire","admit","adobe","adopt","adrift","adult","adverb","advice","aerial","afar","affair","affect","afford","afghan","afield","afloat","afraid","afresh","after","again","age","agency","agenda","agent","aghast","agile","ago","agony","agree","agreed","ahead","aid","aide","aim","air","airman","airy","akin","alarm","alaska","albeit","album","ale","alert","alibi","alice","alien","alight","align","alike","alive","alkali","all","alley","allied","allow","alloy","ally","almond","almost","aloft","alone","along","aloof","aloud","alpha","alpine","also","altar","alter","always","amaze","amazon","amber","ambush","amen","amend","amid","amidst","amiss","among","amount","ample","amuse","anchor","and","andrew","anew","angel","anger","angle","angry","animal","ankle","annoy","annual","answer","anthem","any","anyhow","anyway","apart","apathy","apex","apiece","appeal","appear","apple","apply","april","apron","arab","arcade","arcane","arch","arctic","ardent","are","area","argue","arid","arise","ark","arm","armful","army","aroma","around","arouse","array","arrest","arrive","arrow","arson","art","artery","artful","artist","ascent","ash","ashen","ashore","aside","ask","asleep","aspect","assay","assent","assert","assess","asset","assign","assist","assume","assure","asthma","astute","asylum","ate","athens","atlas","atom","atomic","attach","attack","attain","attend","attic","auburn","audio","audit","august","aunt","auntie","aura","austin","author","auto","autumn","avail","avenge","avenue","avert","avid","avoid","await","awake","awaken","award","aware","awash","away","awful","awhile","axe","axes","axiom","axis","axle","aye","babe","baby","bach","back","backup","bacon","bad","badge","badly","bag","baggy","bail","bait","bake","baker","bakery","bald","ball","ballad","ballet","ballot","baltic","bamboo","ban","banal","banana","band","bang","bank","bar","barber","bare","barely","barge","bark","barley","barn","baron","barrel","barren","basalt","base","basic","basil","basin","basis","basket","bass","bat","batch","bath","baton","battle","bay","beach","beacon","beak","beam","bean","bear","beard","beast","beat","beauty","become","bed","beech","beef","beefy","beep","beer","beet","beetle","before","beg","beggar","begin","behalf","behave","behind","beige","being","belief","bell","belly","belong","below","belt","bench","bend","benign","bent","berlin","berry","berth","beset","beside","best","bestow","bet","beta","betray","better","beware","beyond","bias","biceps","bicker","bid","big","bigger","bike","bile","bill","bin","binary","bind","biopsy","birch","bird","birdie","birth","bishop","bit","bitch","bite","bitter","black","blade","blame","bland","blast","blaze","bleak","blend","bless","blew","blind","blink","blip","bliss","blitz","block","blond","blood","bloody","bloom","blot","blouse","blow","blue","bluff","blunt","blur","blush","boar","board","boast","boat","bob","bodily","body","bogus","boil","bold","bolt","bomb","bombay","bond","bone","bonn","bonnet","bonus","bony","book","boom","boost","boot","booth","booze","border","bore","borrow","bosom","boss","boston","both","bother","bottle","bottom","bought","bounce","bound","bounty","bout","bovine","bow","bowel","bowl","box","boy","boyish","brace","brain","brainy","brake","bran","branch","brand","brandy","brass","brave","bravo","brazil","breach","bread","break","breast","breath","bred","breed","breeze","brew","bribe","brick","bride","bridge","brief","bright","brim","brine","bring","brink","brisk","broad","broke","broken","bronze","brook","broom","brown","bruise","brush","brutal","brute","bubble","buck","bucket","buckle","budget","buffet","buggy","build","bulb","bulge","bulk","bulky","bull","bullet","bully","bump","bumpy","bunch","bundle","bunk","bunny","burden","bureau","burial","buried","burly","burn","burnt","burrow","burst","bury","bus","bush","bust","bustle","busy","but","butler","butt","butter","button","buy","buyer","buzz","bye","byte","cab","cabin","cable","cache","cactus","caesar","cage","cairo","cajun","cajole","cake","calf","call","caller","calm","calmly","came","camel","camera","camp","campus","can","canada","canal","canary","cancel","cancer","candid","candle","candy","cane","canine","canoe","canopy","canvas","canyon","cap","cape","car","carbon","card","care","career","caress","cargo","carl","carnal","carol","carp","carpet","carrot","carry","cart","cartel","case","cash","cask","cast","castle","casual","cat","catch","cater","cattle","caught","causal","cause","cave","cease","celery","cell","cellar","celtic","cement","censor","census","cent","cereal","chain","chair","chalk","chalky","champ","chance","change","chant","chaos","chap","chapel","charge","charm","chart","chase","chat","cheap","cheat","check","cheek","cheeky","cheer","cheery","cheese","chef","cheque","cherry","chess","chest","chew","chic","chick","chief","child","chile","chill","chilly","chin","china","chip","choice","choir","choose","chop","choppy","chord","chorus","chose","chosen","chris","chrome","chunk","chunky","church","cider","cigar","cinema","circa","circle","circus","cite","city","civic","civil","clad","claim","clammy","clan","clap","clash","clasp","class","clause","claw","clay","clean","clear","clergy","clerk","clever","click","client","cliff","climax","climb","clinch","cling","clinic","clip","cloak","clock","clone","close","closer","closet","cloth","cloud","cloudy","clout","clown","club","clue","clumsy","clung","clutch","coach","coal","coarse","coast","coat","coax","cobalt","cobra","coca","cock","cocoa","code","coffee","coffin","cohort","coil","coin","coke","cold","collar","colon","colony","colt","column","comb","combat","come","comedy","comic","commit","common","compel","comply","concur","cone","confer","congo","consul","convex","convey","convoy","cook","cool","cope","copper","copy","coral","cord","core","cork","corn","corner","corps","corpse","corpus","cortex","cosmic","cosmos","cost","costly","cotton","couch","cough","could","count","county","coup","couple","coupon","course","court","cousin","cove","cover","covert","cow","coward","cowboy","cozy","crab","crack","cradle","craft","crafty","crag","crane","crash","crate","crater","crawl","crazy","creak","cream","creamy","create","credit","creed","creek","creep","creepy","crept","crest","crew","cried","crime","crisis","crisp","critic","crook","crop","cross","crow","crowd","crown","crude","cruel","cruise","crunch","crush","crust","crux","cry","crypt","cuba","cube","cubic","cuckoo","cuff","cult","cup","curb","cure","curfew","curl","curry","curse","cursor","curve","cuss","custom","cut","cute","cycle","cyclic","cynic","czech","dad","daddy","dagger","daily","dairy","daisy","dale","dam","damage","damp","dampen","dance","danger","danish","dare","dark","darken","darn","dart","dash","data","date","david","dawn","day","dead","deadly","deaf","deal","dealer","dean","dear","death","debate","debit","debris","debt","debtor","decade","decay","decent","decide","deck","decor","decree","deduce","deed","deep","deeply","deer","defeat","defect","defend","defer","define","defy","degree","deity","delay","delete","delhi","delta","demand","demise","demo","demure","denial","denote","dense","dental","deny","depart","depend","depict","deploy","depot","depth","deputy","derive","desert","design","desire","desist","desk","detail","detect","deter","detest","detour","device","devise","devoid","devote","devour","dial","diana","diary","dice","dictum","did","die","diesel","diet","differ","dig","digest","digit","dine","dinghy","dinner","diode","dip","dire","direct","dirt","dirty","disc","disco","dish","disk","dismal","dispel","ditch","dive","divert","divide","divine","dizzy","docile","dock","doctor","dog","dogma","dole","doll","dollar","dolly","domain","dome","domino","donate","done","donkey","donor","doom","door","dorsal","dose","dot","double","doubt","dough","dour","dove","down","dozen","draft","drag","dragon","drain","drama","drank","draw","drawer","dread","dream","dreary","dress","drew","dried","drift","drill","drink","drip","drive","driver","drop","drove","drown","drug","drum","drunk","dry","dual","duck","duct","due","duel","duet","duke","dull","duly","dumb","dummy","dump","dune","dung","duress","during","dusk","dust","dusty","dutch","duty","dwarf","dwell","dyer","dying","dynamo","each","eager","eagle","ear","earl","early","earn","earth","ease","easel","easily","east","easter","easy","eat","eaten","eater","echo","eddy","eden","edge","edible","edict","edit","editor","eel","eerie","eerily","effect","effort","egg","ego","eight","eighth","eighty","either","elbow","elder","eldest","elect","eleven","elicit","elite","else","elude","elves","embark","emblem","embryo","emerge","emit","empire","employ","empty","enable","enamel","end","endure","enemy","energy","engage","engine","enjoy","enlist","enough","ensure","entail","enter","entire","entry","envoy","envy","enzyme","epic","epoch","equal","equate","equip","equity","era","erect","eric","erode","erotic","errant","error","escape","escort","essay","essex","estate","esteem","ethic","ethnic","europe","evade","eve","even","event","ever","every","evict","evil","evoke","evolve","exact","exam","exceed","excel","except","excess","excise","excite","excuse","exempt","exert","exile","exist","exit","exodus","exotic","expand","expect","expert","expire","export","expose","extend","extra","eye","eyed","fabric","face","facial","fact","factor","fade","fail","faint","fair","fairly","fairy","faith","fake","falcon","fall","false","falter","fame","family","famine","famous","fan","fancy","far","farce","fare","farm","farmer","fast","fasten","faster","fat","fatal","fate","father","fatty","fault","faulty","fauna","fear","feast","feat","fed","fee","feeble","feed","feel","feet","fell","fellow","felt","female","fence","fend","ferry","fetal","fetch","feudal","fever","few","fewer","fiasco","fiddle","field","fiend","fierce","fiery","fifth","fifty","fig","fight","figure","file","fill","filled","filler","film","filter","filth","filthy","final","finale","find","fine","finery","finger","finish","finite","fire","firm","firmly","first","fiscal","fish","fisher","fist","fit","fitful","five","fix","flag","flair","flak","flame","flank","flap","flare","flash","flask","flat","flavor","flaw","fled","flee","fleece","fleet","flesh","fleshy","flew","flick","flight","flimsy","flint","flirt","float","flock","flood","floor","floppy","flora","floral","flour","flow","flower","fluent","fluffy","fluid","flung","flurry","flush","flute","flux","fly","flyer","foal","foam","focal","focus","fog","foil","fold","folk","follow","folly","fond","fondly","font","food","fool","foot","for","forbid","force","ford","forest","forge","forget","fork","form","formal","format","former","fort","forth","forty","forum","fossil","foster","foul","found","four","fourth","fox","foyer","frail","frame","franc","france","frank","fraud","fred","free","freed","freely","freeze","french","frenzy","fresh","friar","friday","fridge","fried","friend","fright","fringe","frock","frog","from","front","frost","frosty","frown","frozen","frugal","fruit","fry","fudge","fuel","full","fully","fumes","fun","fund","funny","fur","furry","fury","fuse","fusion","fuss","fussy","futile","future","fuzzy","gadget","gain","gala","galaxy","gale","gall","galley","gallon","gallop","gamble","game","gamma","gandhi","gang","gap","garage","garden","garlic","gas","gasp","gate","gather","gauge","gaunt","gave","gaze","gear","geese","gem","gemini","gender","gene","geneva","genial","genius","genre","gentle","gently","gentry","genus","george","germ","get","ghetto","ghost","giant","gift","giggle","gill","gilt","ginger","girl","give","given","glad","glade","glance","gland","glare","glass","glassy","gleam","glee","glide","global","globe","gloom","gloomy","gloria","glory","gloss","glossy","glove","glow","glue","gnat","gnu","goal","goat","gold","golden","golf","gone","gong","goo","good","goose","gore","gorge","gory","gosh","gospel","gossip","got","gothic","govern","gown","grab","grace","grade","grail","grain","grand","grant","grape","graph","grasp","grass","grassy","grate","grave","gravel","gravy","grease","greasy","great","greece","greed","greedy","greek","green","greet","grew","grey","grid","grief","grill","grim","grin","grind","grip","grit","gritty","groan","groin","groom","groove","gross","ground","group","grove","grow","grown","growth","grudge","grunt","guard","guess","guest","guide","guild","guilt","guilty","guise","guitar","gulf","gully","gun","gunman","guru","gut","guy","gypsy","habit","hack","had","hail","hair","hairy","haiti","hale","half","hall","halt","hamlet","hammer","hand","handle","handy","hang","hangar","hanoi","happen","happy","harass","harbor","hard","harder","hardly","hare","harem","harm","harp","harry","harsh","has","hash","hassle","haste","hasten","hasty","hat","hatch","hate","haul","haunt","havana","have","haven","havoc","hawaii","hawk","hay","hazard","haze","hazel","hazy","head","heal","health","heap","hear","heard","heart","hearth","hearty","heat","heater","heaven","heavy","hebrew","heck","hectic","hedge","heel","hefty","height","heir","held","helium","helix","hell","hello","helm","helmet","help","hemp","hence","henry","her","herald","herb","herd","here","hereby","hermes","hernia","hero","heroic","heroin","hey","heyday","hick","hidden","hide","high","higher","highly","hill","him","hind","hinder","hint","hippie","hire","his","hiss","hit","hive","hoard","hoarse","hobby","hockey","hold","holder","hole","hollow","holly","holy","home","honest","honey","hood","hook","hope","horn","horrid","horror","horse","hose","host","hot","hotel","hound","hour","house","hover","how","huge","hull","human","humane","humble","humid","hung","hunger","hungry","hunt","hurdle","hurl","hurry","hurt","hush","hut","hybrid","hymn","hyphen","ice","icing","icon","idaho","idea","ideal","idiom","idiot","idle","idly","idol","ignite","ignore","ill","image","immune","impact","imply","import","impose","inca","incest","inch","income","incur","indeed","index","india","indian","indoor","induce","inept","inert","infant","infect","infer","influx","inform","inject","injure","injury","ink","inlaid","inland","inlet","inmate","inn","innate","inner","input","insane","insect","insert","inset","inside","insist","insult","insure","intact","intake","intend","inter","into","invade","invent","invest","invite","invoke","inward","iowa","iran","iraq","irish","iron","ironic","irony","isaac","isabel","island","isle","israel","issue","italy","itch","item","itself","ivan","ivory","jack","jacket","jacob","jade","jaguar","jail","james","jane","japan","jargon","java","jaw","jazz","jeep","jelly","jerky","jest","jet","jewel","jewish","jim","job","jock","jockey","joe","john","join","joint","joke","jolly","jolt","jordan","joseph","joy","joyful","joyous","judge","judy","juice","juicy","july","jumble","jumbo","jump","june","jungle","junior","junk","junta","jury","just","kansas","karate","karl","keel","keen","keep","keeper","kenya","kept","kernel","kettle","key","khaki","kick","kid","kidnap","kidney","kill","killer","kin","kind","kindly","king","kiss","kite","kitten","knack","knee","kneel","knew","knife","knight","knit","knob","knock","knot","know","known","koran","korea","kuwait","label","lace","lack","lad","ladder","laden","lady","lagoon","laity","lake","lamb","lame","lamp","lance","land","lane","lap","lapse","large","larval","laser","last","latch","late","lately","latent","later","latest","latin","latter","laugh","launch","lava","lavish","law","lawful","lawn","lawyer","lay","layer","layman","lazy","lead","leader","leaf","leafy","league","leak","leaky","lean","leap","learn","lease","leash","least","leave","led","ledge","left","leg","legacy","legal","legend","legion","lemon","lend","length","lens","lent","leo","leper","lesion","less","lessen","lesser","lesson","lest","let","lethal","letter","level","lever","levy","lewis","liable","liar","libel","libya","lice","lick","lid","lie","lied","lier","life","lift","light","like","likely","limb","lime","limit","limp","line","linear","linen","linger","link","lint","lion","lip","liquid","liquor","list","listen","lit","live","lively","liver","liz","lizard","load","loaf","loan","lobby","lobe","local","locate","lock","locus","lodge","loft","lofty","log","logic","logo","london","lone","lonely","long","longer","look","loop","loose","loosen","loot","lord","lorry","lose","loss","lost","lot","lotion","lotus","loud","loudly","lounge","lousy","love","lovely","lover","low","lower","lowest","loyal","lucid","luck","lucky","lucy","lull","lump","lumpy","lunacy","lunar","lunch","lung","lure","lurid","lush","lust","lute","luther","luxury","lying","lymph","lynch","lyric","macho","macro","mad","madam","made","mafia","magic","magma","magnet","magnum","magpie","maid","maiden","mail","main","mainly","major","make","maker","male","malice","mall","malt","mammal","manage","mane","mania","manic","manner","manor","mantle","manual","manure","many","map","maple","marble","march","mare","margin","maria","marina","mark","market","marry","mars","marsh","martin","martyr","mary","mask","mason","mass","mast","master","mat","match","mate","matrix","matter","mature","maxim","may","maybe","mayor","maze","mead","meadow","meal","mean","meant","meat","medal","media","median","medic","medium","meet","mellow","melody","melon","melt","member","memo","memory","menace","mend","mental","mentor","menu","mercy","mere","merely","merge","merger","merit","merry","mesh","mess","messy","met","metal","meter","method","methyl","metric","metro","mexico","miami","mickey","mid","midday","middle","midst","midway","might","mighty","mild","mildew","mile","milk","milky","mill","mimic","mince","mind","mine","mini","mink","minor","mint","minus","minute","mire","mirror","mirth","misery","miss","mist","misty","mite","mix","moan","moat","mob","mobile","mock","mode","model","modem","modern","modest","modify","module","moist","molar","mold","mole","molten","moment","monday","money","monk","monkey","month","mood","moody","moon","moor","moral","morale","morbid","more","morgue","mortal","mortar","mosaic","moscow","moses","mosque","moss","most","mostly","moth","mother","motion","motive","motor","mount","mourn","mouse","mouth","move","movie","mrs","much","muck","mucus","mud","muddle","muddy","mule","mummy","munich","murder","murky","murmur","muscle","museum","music","mussel","must","mutant","mute","mutiny","mutter","mutton","mutual","muzzle","myopic","myriad","myself","mystic","myth","nadir","nail","naked","name","namely","nape","napkin","naples","narrow","nasal","nasty","nathan","nation","native","nature","nausea","naval","nave","navy","near","nearer","nearly","neat","neatly","neck","need","needle","needy","negate","neon","nepal","nephew","nerve","nest","net","neural","never","newly","next","nice","nicely","niche","nickel","niece","night","nile","nimble","nine","ninety","ninth","nobel","noble","nobody","node","noise","noisy","none","noon","nor","norm","normal","north","norway","nose","nosy","not","note","notice","notify","notion","noun","novel","novice","now","nozzle","null","numb","number","nurse","nut","nylon","nymph","oak","oar","oasis","oath","obese","obey","object","oblige","oboe","obtain","obtuse","occult","occupy","occur","ocean","octave","odd","off","offend","offer","office","offset","often","ohio","oil","oily","okay","old","older","oldest","olive","omega","omen","omit","once","one","onion","only","onset","onto","onus","onward","opaque","open","openly","opera","opium","oppose","optic","option","oracle","oral","orange","orbit","orchid","ordeal","order","organ","orgasm","orient","origin","ornate","orphan","oscar","other","otter","ought","ounce","our","out","outer","output","outset","oval","oven","over","overt","owe","owing","owl","own","owner","oxford","oxide","oxygen","oyster","ozone","pace","pack","packet","pact","pad","paddle","paddy","pagan","page","paid","pain","paint","pair","palace","pale","palm","pan","panama","panel","panic","papa","papal","paper","parade","parcel","pardon","parent","paris","parish","park","parody","parrot","part","partly","party","pascal","pass","past","paste","pastel","pastor","pastry","pat","patch","patent","path","patio","patrol","patron","paul","pause","pave","paw","pawn","pay","peace","peach","peak","pear","pearl","pedal","peel","peer","peking","pelvic","pelvis","pen","penal","pence","pencil","penny","people","pepper","per","perch","peril","period","perish","permit","person","peru","pest","pet","peter","petite","petrol","petty","phase","philip","phone","photo","phrase","piano","pick","picket","picnic","pie","piece","pier","pierce","piety","pig","pigeon","piggy","pike","pile","pill","pillar","pillow","pilot","pin","pinch","pine","pink","pint","pious","pipe","pirate","piss","pistol","piston","pit","pitch","pity","pivot","pixel","pizza","place","placid","plague","plain","plan","plane","planet","plank","plant","plasma","plate","play","player","plea","plead","please","pledge","plenty","plight","plot","plough","ploy","plug","plum","plump","plunge","plural","plus","plush","pocket","poem","poet","poetic","poetry","point","poison","poland","polar","pole","police","policy","polish","polite","poll","pollen","polo","pond","ponder","pony","pool","poor","poorly","pop","poppy","pore","pork","port","portal","pose","posh","post","postal","pot","potato","potent","pouch","pound","pour","powder","power","praise","pray","prayer","preach","prefer","prefix","press","pretty","price","pride","priest","primal","prime","prince","print","prior","prism","prison","privy","prize","probe","profit","prompt","prone","proof","propel","proper","prose","proton","proud","prove","proven","proxy","prune","pry","psalm","pseudo","psyche","pub","public","puff","pull","pulp","pulpit","pulsar","pulse","pump","punch","punish","punk","pupil","puppet","puppy","pure","purely","purge","purify","purple","purse","pursue","push","pushy","put","putt","puzzle","quaint","quake","quarry","quart","quartz","quebec","queen","queer","query","quest","queue","quick","quid","quiet","quilt","quirk","quit","quite","quiver","quiz","quota","quote","rabbit","race","racial","racism","rack","racket","radar","radio","radish","radius","raffle","raft","rage","raid","rail","rain","rainy","raise","rake","rally","ramp","random","range","rank","ransom","rape","rapid","rare","rarely","rarity","rash","rat","rate","rather","ratify","ratio","rattle","rave","raven","raw","ray","razor","reach","react","read","reader","ready","real","really","realm","reap","rear","reason","rebel","recall","recent","recess","recipe","reckon","record","recoup","rector","red","redeem","redo","reduce","reed","reef","reek","refer","reform","refuge","refuse","regal","regard","regent","regime","region","regret","reign","reject","relate","relax","relay","relic","relief","relish","rely","remain","remark","remedy","remind","remit","remote","remove","renal","render","rent","rental","repair","repeal","repeat","repent","reply","report","rescue","resent","reside","resign","resin","resist","resort","rest","result","resume","retail","retain","retina","retire","return","reveal","review","revise","revive","revolt","reward","rex","rhine","rhino","rhyme","rhythm","ribbon","rice","rich","rick","rid","ride","rider","ridge","rife","rifle","rift","right","rigid","rile","rim","ring","rinse","riot","ripe","ripen","ripple","rise","risk","risky","rite","ritual","ritz","rival","river","road","roar","roast","rob","robe","robert","robin","robot","robust","rock","rocket","rocky","rod","rode","rodent","rogue","role","roll","roman","rome","roof","room","root","rope","rose","rosy","rot","rotate","rotor","rotten","rouge","rough","round","route","rover","row","royal","rub","rubber","rubble","ruby","rudder","rude","rug","rugby","ruin","rule","ruler","rumble","rump","run","rune","rung","runway","rural","rush","russia","rust","rustic","rusty","sack","sacred","sad","saddle","sadism","sadly","safari","safe","safely","safer","safety","saga","sage","sahara","said","sail","sailor","saint","sake","salad","salary","sale","saline","saliva","salmon","saloon","salt","salty","salute","sam","same","sample","sand","sandy","sane","sash","satin","satire","saturn","sauce","saucer","saudi","sauna","savage","save","saw","say","scale","scalp","scan","scant","scar","scarce","scare","scarf","scary","scene","scenic","scent","school","scold","scope","score","scorn","scotch","scott","scout","scrap","scrape","scream","screen","screw","script","scroll","scrub","scum","sea","seal","seam","seaman","search","season","seat","second","secret","sect","sector","secure","see","seed","seeing","seek","seem","seize","seldom","select","self","sell","seller","semi","senate","send","senile","senior","sense","sensor","sent","sentry","seoul","sequel","serene","serial","series","sermon","serum","serve","server","set","settle","seven","severe","sew","sewage","shabby","shade","shadow","shady","shaft","shaggy","shah","shake","shaky","shall","sham","shame","shape","share","shark","sharp","shawl","she","shear","sheen","sheep","sheer","sheet","shelf","shell","sherry","shield","shift","shine","shiny","ship","shire","shirk","shirt","shiver","shock","shoe","shook","shoot","shop","shore","short","shot","should","shout","show","shower","shrank","shrewd","shrill","shrimp","shrine","shrink","shrub","shrug","shut","shy","shyly","sick","side","siege","sigh","sight","sigma","sign","signal","silent","silk","silken","silky","sill","silly","silo","silver","simple","simply","since","sinful","sing","singer","single","sink","sir","sire","siren","sister","sit","site","sitter","six","sixth","sixty","size","sketch","skill","skin","skinny","skip","skirt","skull","sky","slab","slack","slain","slam","slang","slap","slat","slate","slave","sleek","sleep","sleepy","sleeve","slice","slick","slid","slide","slight","slim","slimy","sling","slip","slit","slogan","slope","sloppy","slot","slow","slowly","slug","slum","slump","smack","small","smart","smash","smear","smell","smelly","smelt","smile","smite","smoke","smoky","smooth","smug","snack","snail","snake","snap","snatch","sneak","snow","snowy","snug","soak","soap","sober","soccer","social","sock","socket","socks","soda","sodden","sodium","sofa","soft","soften","softly","soggy","soil","solar","sold","sole","solely","solemn","solid","solo","solve","some","son","sonar","sonata","song","sonic","sony","soon","sooner","soot","soothe","sordid","sore","sorrow","sorry","sort","soul","sound","soup","sour","source","soviet","sow","space","spade","spain","span","spare","spark","sparse","spasm","spat","spate","speak","spear","speech","speed","speedy","spell","spend","sphere","spice","spicy","spider","spiky","spill","spin","spinal","spine","spiral","spirit","spit","spite","splash","split","spoil","spoke","sponge","spoon","sport","spot","spouse","spray","spread","spree","spring","sprint","spur","squad","square","squash","squat","squid","stab","stable","stack","staff","stage","stain","stair","stairs","stake","stale","stall","stamp","stance","stand","staple","star","starch","stare","stark","start","starve","state","static","statue","status","stay","stead","steady","steak","steal","steam","steel","steep","steer","stem","stench","step","stereo","stern","stew","stick","sticky","stiff","stifle","stigma","still","sting","stint","stir","stitch","stock","stocky","stone","stony","stool","stop","store","storm","stormy","story","stout","stove","stow","strain","strait","strand","strap","strata","straw","stray","streak","stream","street","stress","strict","stride","strife","strike","string","strip","stripe","strive","stroke","stroll","strong","stud","studio","study","stuff","stuffy","stunt","stupid","sturdy","style","submit","subtle","subtly","suburb","such","sudden","sue","suez","suffer","sugar","suit","suite","suitor","sullen","sultan","sum","summer","summit","summon","sun","sunday","sunny","sunset","super","superb","supper","supple","supply","sure","surely","surf","surge","survey","suture","swamp","swan","swap","swarm","sway","swear","sweat","sweaty","sweden","sweep","sweet","swell","swift","swim","swine","swing","swirl","swiss","switch","sword","swore","sydney","symbol","synod","syntax","syria","syrup","system","table","tablet","taboo","tacit","tackle","tact","tactic","tail","tailor","taiwan","take","tale","talent","talk","tall","tally","tame","tampa","tan","tandem","tangle","tank","tap","tape","target","tariff","tarp","tart","tarzan","task","taste","tasty","tattoo","taurus","taut","tavern","tax","taxi","tea","teach","teak","team","tear","tease","tech","teeth","tell","temper","temple","tempo","tempt","ten","tenant","tend","tender","tendon","tennis","tenor","tense","tent","tenth","tenure","teresa","term","terror","terse","test","texas","text","thank","thaw","them","theme","thence","theory","there","these","thesis","they","thick","thief","thigh","thin","thing","think","third","thirst","thirty","this","thomas","thorn","those","though","thread","threat","three","thrill","thrive","throat","throne","throng","throw","thrust","thud","thug","thumb","thus","thyme","tibet","tick","ticket","tidal","tide","tidy","tie","tier","tiger","tight","tile","till","tilt","timber","time","timid","tin","tiny","tip","tire","tissue","title","toad","toast","today","toe","toilet","token","tokyo","told","toll","tom","tomato","tomb","tonal","tone","tongue","tonic","too","took","tool","tooth","top","topaz","topic","torch","torque","torso","tort","toss","total","touch","tough","tour","toward","towel","tower","town","toxic","toxin","toy","trace","track","tract","trade","tragic","trail","train","trait","tram","trance","trap","trauma","travel","tray","tread","treat","treaty","treble","tree","trek","tremor","trench","trend","trendy","trial","tribal","tribe","trick","tricky","tried","trifle","trim","trio","trip","triple","troop","trophy","trot","trough","trout","truce","truck","true","truly","trunk","trust","truth","try","tube","tumble","tuna","tundra","tune","tunic","tunnel","turban","turf","turk","turkey","turn","turtle","tutor","tweed","twelve","twenty","twice","twin","twist","two","tycoon","tying","type","tyrant","ugly","ulcer","ultra","umpire","unable","uncle","under","uneasy","unfair","unify","union","unique","unit","unite","unity","unlike","unrest","unruly","until","update","upheld","uphill","uphold","upon","upper","uproar","upset","upshot","uptake","upturn","upward","urban","urge","urgent","urging","urine","usable","usage","use","useful","user","usual","utmost","utter","vacant","vacuum","vague","vain","valet","valid","valley","value","valve","van","vanish","vanity","vary","vase","vast","vat","vault","vector","veil","vein","velvet","vendor","veneer","venice","venom","vent","venue","venus","verb","verbal","verge","verify","verity","verse","versus","very","vessel","vest","vet","veto","via","viable","vicar","vice","victim","victor","video","vienna","view","vigil","viking","vile","villa","vine","vinyl","viola","violet","violin","viral","virgo","virtue","virus","visa","vision","visit","visual","vital","vivid","vocal","vodka","vogue","voice","void","volley","volume","vote","vowel","voyage","vulgar","wade","wage","waist","wait","waiter","wake","walk","walker","wall","wallet","walnut","wander","want","war","warden","warm","warmth","warn","warp","warsaw","wary","was","wash","wasp","waste","watch","water","watery","wave","wax","way","weak","weaken","wealth","weapon","wear","weary","weave","wedge","wee","weed","week","weekly","weep","weigh","weight","weird","well","were","west","wet","whale","wharf","what","wheat","wheel","when","whence","where","which","whiff","while","whim","whip","whisky","white","who","whole","wholly","whom","whose","why","wicked","wide","widely","widen","wider","widow","width","wife","wig","wild","wildly","will","willow","wily","win","wind","window","windy","wine","wing","wink","winner","winter","wipe","wire","wisdom","wise","wish","wit","witch","with","within","witty","wizard","woke","wolf","wolves","woman","womb","won","wonder","wood","wooden","woods","woody","wool","word","work","worker","world","worm","worry","worse","worst","worth","worthy","would","wound","wrap","wrath","wreath","wreck","wring","wrist","writ","write","writer","wrong","xerox","yacht","yale","yard","yarn","yeah","year","yeard","yeast","yellow","yet","yield","yogurt","yolk","you","young","your","youth","zaire","zeal","zebra","zenith","zero","zeus","zigzag","zinc","zombie","zone"]},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"]},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.bytesToBits=y,t.convertRadix=h,t.crc8=function(e){for(var t=255,n=0;n>>1^(0==(1&t)?0:178)}return 255^t},t.legacy1=function(e,t){for(var n=h(e.map((function(e){return t.indexOf(e.toLowerCase())})),t.length,256,33),r=n[n.length-1],o=new Uint8Array(n.length-1),a=0;a=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;l-=1){var d=a.dividedToIntegerBy(n),p=a.modulo(n);a=d,s[l]=p.toNumber()}return s}function y(e){var t=[];t.fill(!1,0,8*e.length);for(var n=0;n>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],m=e[1],W=e[11]<<4|e[10]>>>28,q=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,b=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,k=e[25]<<11|e[24]>>>21,g=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,P=e[18]<<20|e[19]>>>12,E=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,G=e[38]<<8|e[39]>>>24,K=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~b&k,e[1]=m^~v&g,e[10]=T^~P&S,e[11]=O^~E&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~W&Y,e[31]=V^~q&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=b^~k&_,e[3]=v^~g&w,e[12]=P^~S&D,e[13]=E^~R&C,e[22]=x^~U&G,e[23]=F^~L&K,e[32]=W^~Y&J,e[33]=q^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=k^~_&I,e[5]=g^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~G&z,e[25]=L^~K&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&m,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=G^~z&M,e[27]=K^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&b,e[9]=A^~m&v,e[18]=N^~T&P,e[19]=B^~O&E,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&W,e[39]=ee^~V&q,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];b%f==0&&(c(p),n=0)}return"0x"+m}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e,t,n){"use strict";var r=t;r.version=n(1325).version,r.utils=n(83),r.rand=n(648),r.curve=n(649),r.curves=n(362),r.ec=n(1337),r.eddsa=n(1341)},function(e){e.exports=JSON.parse('{"_args":[["elliptic@6.5.4","/Users/patmat/projects/Arianelabs-hweb3.js/packages/hweb3-eth-abi"]],"_from":"elliptic@6.5.4","_id":"elliptic@6.5.4","_inBundle":false,"_integrity":"sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==","_location":"/elliptic","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"elliptic@6.5.4","name":"elliptic","escapedName":"elliptic","rawSpec":"6.5.4","saveSpec":null,"fetchSpec":"6.5.4"},"_requiredBy":["/@hashgraph/cryptography"],"_resolved":"https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz","_spec":"6.5.4","_where":"/Users/patmat/projects/Arianelabs-hweb3.js/packages/hweb3-eth-abi","author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"bugs":{"url":"https://github.com/indutny/elliptic/issues"},"dependencies":{"bn.js":"^4.11.9","brorand":"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1","inherits":"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"},"description":"EC cryptography","devDependencies":{"brfs":"^2.0.2","coveralls":"^3.1.0","eslint":"^7.6.0","grunt":"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.5","mocha":"^8.0.1"},"files":["lib"],"homepage":"https://github.com/indutny/elliptic","keywords":["EC","Elliptic","curve","Cryptography"],"license":"MIT","main":"lib/elliptic.js","name":"elliptic","repository":{"type":"git","url":"git+ssh://git@github.com/indutny/elliptic.git"},"scripts":{"lint":"eslint lib test","lint:fix":"npm run lint -- --fix","test":"npm run lint && npm run unit","unit":"istanbul test _mocha --reporter=spec test/index.js","version":"grunt dist && git add dist/"},"version":"6.5.4"}')},function(e,t){},function(e,t,n){"use strict";var r=n(83),o=n(10),a=n(281),i=n(280),u=r.assert;function c(e){i.call(this,"short",e),this.a=new o(e.a,16).toRed(this.red),this.b=new o(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function s(e,t,n,r){i.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new o(t,16),this.y=new o(n,16),r&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function l(e,t,n,r){i.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===r?(this.x=this.curve.one,this.y=this.curve.one,this.z=new o(0)):(this.x=new o(t,16),this.y=new o(n,16),this.z=new o(r,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}a(c,i),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new o(e.beta,16).toRed(this.red);else{var r=this._getEndoRoots(this.p);t=(t=r[0].cmp(r[1])<0?r[0]:r[1]).toRed(this.red)}if(e.lambda)n=new o(e.lambda,16);else{var a=this._getEndoRoots(this.n);0===this.g.mul(a[0]).x.cmp(this.g.x.redMul(t))?n=a[0]:(n=a[1],u(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new o(e.a,16),b:new o(e.b,16)}})):this._getEndoBasis(n)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:o.mont(e),n=new o(2).toRed(t).redInvm(),r=n.redNeg(),a=new o(3).toRed(t).redNeg().redSqrt().redMul(n);return[r.redAdd(a).fromRed(),r.redSub(a).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,n,r,a,i,u,c,s,l,f=this.n.ushrn(Math.floor(this.n.bitLength()/2)),d=e,p=this.n.clone(),h=new o(1),y=new o(0),m=new o(0),b=new o(1),v=0;0!==d.cmpn(0);){var k=p.div(d);s=p.sub(k.mul(d)),l=m.sub(k.mul(h));var g=b.sub(k.mul(y));if(!r&&s.cmp(f)<0)t=c.neg(),n=h,r=s.neg(),a=l;else if(r&&2==++v)break;c=s,p=d,d=s,m=h,h=l,b=y,y=g}i=s.neg(),u=l;var _=r.sqr().add(a.sqr());return i.sqr().add(u.sqr()).cmp(_)>=0&&(i=t,u=n),r.negative&&(r=r.neg(),a=a.neg()),i.negative&&(i=i.neg(),u=u.neg()),[{a:r,b:a},{a:i,b:u}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],r=t[1],o=r.b.mul(e).divRound(this.n),a=n.b.neg().mul(e).divRound(this.n),i=o.mul(n.a),u=a.mul(r.a),c=o.mul(n.b),s=a.mul(r.b);return{k1:e.sub(i).sub(u),k2:c.add(s).neg()}},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var a=r.fromRed().isOdd();return(t&&!a||!t&&a)&&(r=r.redNeg()),this.point(e,r)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,r=this.a.redMul(t),o=t.redSqr().redMul(t).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(o).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,n){for(var r=this._endoWnafT1,o=this._endoWnafT2,a=0;a":""},s.prototype.isInfinity=function(){return this.inf},s.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var n=t.redSqr().redISub(this.x).redISub(e.x),r=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},s.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,n=this.x.redSqr(),r=e.redInvm(),o=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(r),a=o.redSqr().redISub(this.x.redAdd(this.x)),i=o.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,i)},s.prototype.getX=function(){return this.x.fromRed()},s.prototype.getY=function(){return this.y.fromRed()},s.prototype.mul=function(e){return e=new o(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o):this.curve._wnafMulAdd(1,r,o,2)},s.prototype.jmulAdd=function(e,t,n){var r=[this,t],o=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,o,!0):this.curve._wnafMulAdd(1,r,o,2,!0)},s.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},s.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,r=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return t},s.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},a(l,i.BasePoint),c.prototype.jpoint=function(e,t,n){return new l(this,e,t,n)},l.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),r=this.y.redMul(t).redMul(e);return this.curve.point(n,r)},l.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},l.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(t),o=e.x.redMul(n),a=this.y.redMul(t.redMul(e.z)),i=e.y.redMul(n.redMul(this.z)),u=r.redSub(o),c=a.redSub(i);if(0===u.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var s=u.redSqr(),l=s.redMul(u),f=r.redMul(s),d=c.redSqr().redIAdd(l).redISub(f).redISub(f),p=c.redMul(f.redISub(d)).redISub(a.redMul(l)),h=this.z.redMul(e.z).redMul(u);return this.curve.jpoint(d,p,h)},l.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,r=e.x.redMul(t),o=this.y,a=e.y.redMul(t).redMul(this.z),i=n.redSub(r),u=o.redSub(a);if(0===i.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=i.redSqr(),s=c.redMul(i),l=n.redMul(c),f=u.redSqr().redIAdd(s).redISub(l).redISub(l),d=u.redMul(l.redISub(f)).redISub(o.redMul(s)),p=this.z.redMul(i);return this.curve.jpoint(f,d,p)},l.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t=0)return!1;if(n.redIAdd(o),0===this.x.cmp(n))return!0}},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t,n){"use strict";var r=n(10),o=n(281),a=n(280),i=n(83);function u(e){a.call(this,"mont",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.i4=new r(4).toRed(this.red).redInvm(),this.two=new r(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,n){a.BasePoint.call(this,e,"projective"),null===t&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new r(t,16),this.z=new r(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}o(u,a),e.exports=u,u.prototype.validate=function(e){var t=e.normalize().x,n=t.redSqr(),r=n.redMul(t).redAdd(n.redMul(this.a)).redAdd(t);return 0===r.redSqrt().redSqr().cmp(r)},o(c,a.BasePoint),u.prototype.decodePoint=function(e,t){return this.point(i.toArray(e,t),1)},u.prototype.point=function(e,t){return new c(this,e,t)},u.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),n=e.redSub(t),r=e.redMul(t),o=n.redMul(t.redAdd(this.curve.a24.redMul(n)));return this.curve.point(r,o)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var n=this.x.redAdd(this.z),r=this.x.redSub(this.z),o=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(n),i=o.redMul(r),u=t.z.redMul(a.redAdd(i).redSqr()),c=t.x.redMul(a.redISub(i).redSqr());return this.curve.point(u,c)},c.prototype.mul=function(e){for(var t=e.clone(),n=this,r=this.curve.point(null,null),o=[];0!==t.cmpn(0);t.iushrn(1))o.push(t.andln(1));for(var a=o.length-1;a>=0;a--)0===o[a]?(n=n.diffAdd(r,this),r=r.dbl()):(r=n.diffAdd(r,this),n=n.dbl());return r},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,n){"use strict";var r=n(83),o=n(10),a=n(281),i=n(280),u=r.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,i.call(this,"edwards",e),this.a=new o(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new o(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new o(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),u(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function s(e,t,n,r,a){i.BasePoint.call(this,e,"projective"),null===t&&null===n&&null===r?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new o(t,16),this.y=new o(n,16),this.z=r?new o(r,16):this.curve.one,this.t=a&&new o(a,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}a(c,i),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,n,r){return this.point(e,t,n,r)},c.prototype.pointFromX=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=this.c2.redSub(this.a.redMul(n)),a=this.one.redSub(this.c2.redMul(this.d).redMul(n)),i=r.redMul(a.redInvm()),u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");var c=u.fromRed().isOdd();return(t&&!c||!t&&c)&&(u=u.redNeg()),this.point(e,u)},c.prototype.pointFromY=function(e,t){(e=new o(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=n.redSub(this.c2),a=n.redMul(this.d).redMul(this.c2).redSub(this.a),i=r.redMul(a.redInvm());if(0===i.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var u=i.redSqrt();if(0!==u.redSqr().redSub(i).cmp(this.zero))throw new Error("invalid point");return u.fromRed().isOdd()!==t&&(u=u.redNeg()),this.point(u,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),n=e.y.redSqr(),r=t.redMul(this.a).redAdd(n),o=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(n)));return 0===r.cmp(o)},a(s,i.BasePoint),c.prototype.pointFromJSON=function(e){return s.fromJSON(this,e)},c.prototype.point=function(e,t,n,r){return new s(this,e,t,n,r)},s.fromJSON=function(e,t){return new s(e,t[0],t[1],t[2])},s.prototype.inspect=function(){return this.isInfinity()?"":""},s.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},s.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var r=this.curve._mulA(e),o=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=r.redAdd(t),i=a.redSub(n),u=r.redSub(t),c=o.redMul(i),s=a.redMul(u),l=o.redMul(u),f=i.redMul(a);return this.curve.point(c,s,f,l)},s.prototype._projDbl=function(){var e,t,n,r,o,a,i=this.x.redAdd(this.y).redSqr(),u=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var s=(r=this.curve._mulA(u)).redAdd(c);this.zOne?(e=i.redSub(u).redSub(c).redMul(s.redSub(this.curve.two)),t=s.redMul(r.redSub(c)),n=s.redSqr().redSub(s).redSub(s)):(o=this.z.redSqr(),a=s.redSub(o).redISub(o),e=i.redSub(u).redISub(c).redMul(a),t=s.redMul(r.redSub(c)),n=s.redMul(a))}else r=u.redAdd(c),o=this.curve._mulC(this.z).redSqr(),a=r.redSub(o).redSub(o),e=this.curve._mulC(i.redISub(r)).redMul(a),t=this.curve._mulC(r).redMul(u.redISub(c)),n=r.redMul(a);return this.curve.point(e,t,n)},s.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},s.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),r=this.t.redMul(this.curve.dd).redMul(e.t),o=this.z.redMul(e.z.redAdd(e.z)),a=n.redSub(t),i=o.redSub(r),u=o.redAdd(r),c=n.redAdd(t),s=a.redMul(i),l=u.redMul(c),f=a.redMul(c),d=i.redMul(u);return this.curve.point(s,l,d,f)},s.prototype._projAdd=function(e){var t,n,r=this.z.redMul(e.z),o=r.redSqr(),a=this.x.redMul(e.x),i=this.y.redMul(e.y),u=this.curve.d.redMul(a).redMul(i),c=o.redSub(u),s=o.redAdd(u),l=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(i),f=r.redMul(c).redMul(l);return this.curve.twisted?(t=r.redMul(s).redMul(i.redSub(this.curve._mulA(a))),n=c.redMul(s)):(t=r.redMul(s).redMul(i.redSub(a)),n=this.curve._mulC(c).redMul(s)),this.curve.point(f,t,n)},s.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},s.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},s.prototype.mulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!1)},s.prototype.jmulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!0)},s.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},s.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},s.prototype.getX=function(){return this.normalize(),this.x.fromRed()},s.prototype.getY=function(){return this.normalize(),this.y.fromRed()},s.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},s.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var n=e.clone(),r=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(r),0===this.x.cmp(t))return!0}},s.prototype.toP=s.prototype.normalize,s.prototype.mixedAdd=s.prototype.add},function(e,t,n){"use strict";t.sha1=n(1331),t.sha224=n(1332),t.sha256=n(651),t.sha384=n(1333),t.sha512=n(652)},function(e,t,n){"use strict";var r=n(101),o=n(219),a=n(650),i=r.rotl32,u=r.sum32,c=r.sum32_5,s=a.ft_1,l=o.BlockHash,f=[1518500249,1859775393,2400959708,3395469782];function d(){if(!(this instanceof d))return new d;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}r.inherits(d,l),e.exports=d,d.blockSize=512,d.outSize=160,d.hmacStrength=80,d.padLength=64,d.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;rthis.blockSize&&(e=(new this.Hash).update(e).digest()),o(e.length<=this.blockSize);for(var t=e.length;t0))return i.iaddn(1),this.keyFromPrivate(i)}},d.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,n,i){"object"===(0,r.default)(n)&&(i=n,n=null),i||(i={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new o(e,16));for(var u=this.n.byteLength(),c=t.getPrivate().toArray("be",u),s=e.toArray("be",u),l=new a({hash:this.hash,entropy:c,nonce:s,pers:i.pers,persEnc:i.persEnc||"utf8"}),d=this.n.sub(new o(1)),p=0;;p++){var h=i.k?i.k(p):new o(l.generate(this.n.byteLength()));if(!((h=this._truncateToN(h,!0)).cmpn(1)<=0||h.cmp(d)>=0)){var y=this.g.mul(h);if(!y.isInfinity()){var m=y.getX(),b=m.umod(this.n);if(0!==b.cmpn(0)){var v=h.invm(this.n).mul(b.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var k=(y.getY().isOdd()?1:0)|(0!==m.cmp(b)?2:0);return i.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),k^=1),new f({r:b,s:v,recoveryParam:k})}}}}}},d.prototype.verify=function(e,t,n,r){e=this._truncateToN(new o(e,16)),n=this.keyFromPublic(n,r);var a=(t=new f(t,"hex")).r,i=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var u,c=i.invm(this.n),s=c.mul(e).umod(this.n),l=c.mul(a).umod(this.n);return this.curve._maxwellTrick?!(u=this.g.jmulAdd(s,n.getPublic(),l)).isInfinity()&&u.eqXToP(a):!(u=this.g.mulAdd(s,n.getPublic(),l)).isInfinity()&&0===u.getX().umod(this.n).cmp(a)},d.prototype.recoverPubKey=function(e,t,n,r){s((3&n)===n,"The recovery param is more than two bits"),t=new f(t,r);var a=this.n,i=new o(e),u=t.r,c=t.s,l=1&n,d=n>>1;if(u.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");u=d?this.curve.pointFromX(u.add(this.curve.n),l):this.curve.pointFromX(u,l);var p=t.r.invm(a),h=a.sub(i).mul(p).umod(a),y=c.mul(p).umod(a);return this.g.mulAdd(h,u,y)},d.prototype.getKeyRecoveryParam=function(e,t,n,r){if(null!==(t=new f(t,r)).recoveryParam)return t.recoveryParam;for(var o=0;o<4;o++){var a;try{a=this.recoverPubKey(e,t,o)}catch(e){continue}if(a.eq(n))return o}throw new Error("Unable to find valid recovery factor")}},function(e,t,n){"use strict";var r=n(363),o=n(647),a=n(160);function i(e){if(!(this instanceof i))return new i(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=o.toArray(e.entropy,e.entropyEnc||"hex"),n=o.toArray(e.nonce,e.nonceEnc||"hex"),r=o.toArray(e.pers,e.persEnc||"hex");a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,r)}e.exports=i,i.prototype._init=function(e,t,n){var r=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var o=0;o=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},i.prototype.generate=function(e,t,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(r=n,n=t,t=null),n&&(n=o.toArray(n,r||"hex"),this._update(n));for(var a=[];a.length"}},function(e,t,n){"use strict";var r=n(10),o=n(83),a=o.assert;function i(e,t){if(e instanceof i)return e;this._importDER(e,t)||(a(e.r&&e.s,"Signature without r or s"),this.r=new r(e.r,16),this.s=new r(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function u(){this.place=0}function c(e,t){var n=e[t.place++];if(!(128&n))return n;var r=15&n;if(0===r||r>4)return!1;for(var o=0,a=0,i=t.place;a>>=0;return!(o<=127)&&(t.place=i,o)}function s(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}e.exports=i,i.prototype._importDER=function(e,t){e=o.toArray(e,t);var n=new u;if(48!==e[n.place++])return!1;var a=c(e,n);if(!1===a)return!1;if(a+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var i=c(e,n);if(!1===i)return!1;var s=e.slice(n.place,i+n.place);if(n.place+=i,2!==e[n.place++])return!1;var l=c(e,n);if(!1===l)return!1;if(e.length!==l+n.place)return!1;var f=e.slice(n.place,l+n.place);if(0===s[0]){if(!(128&s[1]))return!1;s=s.slice(1)}if(0===f[0]){if(!(128&f[1]))return!1;f=f.slice(1)}return this.r=new r(s),this.s=new r(f),this.recoveryParam=null,!0},i.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=s(t),n=s(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];l(r,t.length),(r=r.concat(t)).push(2),l(r,n.length);var a=r.concat(n),i=[48];return l(i,a.length),i=i.concat(a),o.encode(i,e)}},function(e,t,n){"use strict";var r=n(363),o=n(362),a=n(83),i=a.assert,u=a.parseBytes,c=n(1342),s=n(1343);function l(e){if(i("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof l))return new l(e);e=o[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=r.sha512}e.exports=l,l.prototype.sign=function(e,t){e=u(e);var n=this.keyFromSecret(t),r=this.hashInt(n.messagePrefix(),e),o=this.g.mul(r),a=this.encodePoint(o),i=this.hashInt(a,n.pubBytes(),e).mul(n.priv()),c=r.add(i).umod(this.curve.n);return this.makeSignature({R:o,S:c,Rencoded:a})},l.prototype.verify=function(e,t,n){e=u(e),t=this.makeSignature(t);var r=this.keyFromPublic(n),o=this.hashInt(t.Rencoded(),r.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(r.pub().mul(o)).eq(a)},l.prototype.hashInt=function(){for(var e=this.hash(),t=0;t=1&&"ident"in t.seq[0]))throw new Error("error parsing AlgorithmIdentifier from ".concat(JSON.stringify(t)));this.algIdent=t.seq[0].ident,this.parameters=t.seq[1]}return(0,c.default)(e,[{key:"toString",value:function(){return JSON.stringify(this)}}]),e}();t.AlgorithmIdentifier=y;var m=function e(t){if((0,u.default)(this,e),!("seq"in t)||2!==t.seq.length)throw new Error("error parsing PBES2Params from ".concat(JSON.stringify(t)));this.kdf=new y(t.seq[0]),this.encScheme=new y(t.seq[1])},b=function e(t){if((0,u.default)(this,e),"seq"in t&&t.seq.length>=2&&"bytes"in t.seq[0]&&"int"in t.seq[1]&&(this.salt=t.seq[0].bytes,this.iterCount=t.seq[1].int,t.seq.length>2))return"seq"in t.seq[2]?void(this.prf=new y(t.seq[2])):("int"in t.seq[2]&&(this.keyLength=t.seq[2].int),void(4===t.seq.length&&(this.prf=new y(t.seq[3]))));throw new Error("error parsing PBKDF2Params from ".concat(JSON.stringify(t)))},v=function(){function e(t){if((0,u.default)(this,e),!("seq"in t)||3!==t.seq.length)throw new Error("error parsing PrivateKeyInfo from ".concat(JSON.stringify(t)));if(!("int"in t.seq[0])||0!==t.seq[0].int)throw new Error("expected version = 0, got ".concat(JSON.stringify(t.seq[0])));if(this.version=0,this.algId=new y(t.seq[1]),!("bytes"in t.seq[2]))throw new Error("expected octet string as 3rd element, got ".concat(JSON.stringify(t.seq[2])));this.privateKey=t.seq[2].bytes}return(0,c.default)(e,null,[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.PrivateKeyInfo=v;var k=function(){function e(t){if((0,u.default)(this,e),"seq"in t&&2===t.seq.length&&"bytes"in t.seq[1])return this.algId=new y(t.seq[0]),void(this.data=t.seq[1].bytes);throw new Error("error parsing EncryptedPrivateKeyInfo from ".concat(JSON.stringify(t)))}var t;return(0,c.default)(e,[{key:"decrypt",value:(t=(0,i.default)(a.default.mark((function e(t){var n,r,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("1.2.840.113549.1.5.13"===this.algId.algIdent&&this.algId.parameters){e.next=2;break}throw new Error("unsupported key encryption algorithm: ".concat(this.algId.toString()));case 2:if("1.2.840.113549.1.5.12"===(n=new m(this.algId.parameters)).kdf.algIdent&&n.kdf.parameters){e.next=5;break}throw new Error("unsupported key derivation function: ".concat(n.kdf.toString()));case 5:if((r=new b(n.kdf.parameters)).prf){e.next=10;break}throw new Error("unsupported PRF HMAC-SHA-1");case 10:if("1.2.840.113549.2.9"===r.prf.algIdent){e.next=12;break}throw new Error("unsupported PRF ".concat(r.prf.toString()));case 12:if("2.16.840.1.101.3.4.1.2"===n.encScheme.algIdent){e.next=14;break}throw new Error("unsupported encryption scheme: ".concat(n.encScheme.toString()));case 14:if(n.encScheme.parameters&&"bytes"in n.encScheme.parameters){e.next=16;break}throw new Error("expected IV as bytes for AES-128-CBC, "+"got: ".concat(JSON.stringify(n.encScheme.parameters)));case 16:return o=r.keyLength||16,i=n.encScheme.parameters.bytes,e.next=20,f.deriveKey(d.HashAlgorithm.Sha256,t,r.salt,r.iterCount,o);case 20:return u=e.sent,e.next=23,s.createDecipheriv(s.CipherAlgorithm.Aes128Cbc,u,i,this.data);case 23:return c=e.sent,e.abrupt("return",v.parse(c));case 25:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}],[{key:"parse",value:function(t){return new e(l.decode(t))}}]),e}();t.EncryptedPrivateKeyInfo=k},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=function(e){return Uint8Array.from(atob(e),(function(e){return e.charCodeAt(0)}))},t.encode=function(e){return btoa(String.fromCharCode.apply(null,Array.from(e)))}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.legacy=function(e,t){var n=new Uint8Array(e.length+8);n.set(e,0);var r=new DataView(n.buffer,n.byteOffset,n.byteLength);0xffffffffff===t?(r.setInt32(e.length+0,255),r.setInt32(e.length+4,-1)):(r.setInt32(e.length+0,t<0?-1:0),r.setInt32(e.length+4,t));var i=Uint8Array.from([255]);return o.deriveKey(a.HashAlgorithm.Sha512,n,i,2048,32)};var o=u(n(279)),a=u(n(218));function i(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(i=function(e){return e?n:t})(e)}function u(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=i(t);if(n&&n.has(e))return n.get(e);var o={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=a?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}return o.default=e,n&&n.set(e,o),o}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrayEqual=function(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;var n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=new DataView(t.buffer,t.byteOffset,t.byteLength),o=e.byteLength;for(;o--;)if(n.getUint8(o)!==r.getUint8(o))return!1;return!0},t.arrayStartsWith=function(e,t){if(e.byteLength=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarAllowances=null!=r.hbarAllowances?r.hbarAllowances:[],e._tokenAllowances=null!=r.tokenAllowances?r.tokenAllowances:[],e._nftAllowances=null!=r.nftAllowances?r.nftAllowances:[],e}return(0,i.default)(n,[{key:"hbarAllowances",get:function(){return this._hbarAllowances}},{key:"addHbarAllowance",value:function(e,t){var n=t instanceof y.default?t:new y.default(t);return this._adjustHbarAllowance(null,e,k.requireNotNegative(n))}},{key:"_adjustHbarAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._hbarAllowances.push(new m.default({spenderAccountId:"string"==typeof t?f.default.fromString(t):t,ownerAccountId:"string"==typeof e?f.default.fromString(e):e,amount:n})),this}},{key:"grantHbarAllowance",value:function(e,t,n){var r=n instanceof y.default?n:new y.default(n);return this._adjustHbarAllowance(e,t,k.requireNotNegative(r))}},{key:"revokeHbarAllowance",value:function(e,t,n){var r=n instanceof y.default?n:new y.default(n);return this._adjustHbarAllowance(e,t,k.requireNotNegative(r).negated())}},{key:"tokenAllowances",get:function(){return this._tokenAllowances}},{key:"addTokenAllowance",value:function(e,t,n){return this._adjustTokenAllowance(e,null,t,k.requireNotNegative(h.default.fromValue(n)))}},{key:"_adjustTokenAllowance",value:function(e,t,n,r){return this._requireNotFrozen(),this._tokenAllowances.push(new b.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof n?f.default.fromString(n):n,ownerAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof r?h.default.fromNumber(r):r})),this}},{key:"grantTokenAllowance",value:function(e,t,n,r){return this._adjustTokenAllowance(e,t,n,k.requireNotNegative(h.default.fromValue(r)))}},{key:"revokeTokenAllowance",value:function(e,t,n,r){return this._adjustTokenAllowance(e,t,n,k.requireNotNegative(h.default.fromValue(r)))}},{key:"addTokenNftAllowance",value:function(e,t){var n="string"==typeof e?p.default.fromString(e):e;return this._adjustTokenNftAllowance(n,null,t)}},{key:"_adjustTokenNftAllowance",value:function(e,t,n){this._requireNotFrozen();var r,o="string"==typeof n?f.default.fromString(n):n,a="string"==typeof t?f.default.fromString(t):t,i=!1,u=w(this._nftAllowances);try{for(u.s();!(r=u.n()).done;){var c=r.value;if(0===c.tokenId.compare(e.tokenId)&&0===c.spenderAccountId.compare(o)){null!=c.serialNumbers&&c.serialNumbers.push(e.serial),i=!0;break}}}catch(e){u.e(e)}finally{u.f()}return i||this._nftAllowances.push(new v.default({tokenId:e.tokenId,spenderAccountId:o,serialNumbers:[e.serial],ownerAccountId:a,allSerials:!1})),this}},{key:"grantTokenNftAllowance",value:function(e,t,n){var r="string"==typeof e?p.default.fromString(e):e;return k.requireNotNegative(r.serial),this._adjustTokenNftAllowance(r,t,n)}},{key:"revokeTokenNftAllowance",value:function(e,t,n){var r="string"==typeof e?p.default.fromString(e):e;return k.requireNotNegative(r.serial),r.serial=r.serial.negate(),this._adjustTokenNftAllowance(r,t,n)}},{key:"addAllTokenNftAllowance",value:function(e,t){return this._adjustTokenNftAllowanceAllSerials(e,null,t,!0)}},{key:"grantTokenNftAllowanceAllSerials",value:function(e,t,n){return this._adjustTokenNftAllowanceAllSerials(e,t,n,!0)}},{key:"revokeTokenNftAllowanceAllSerials",value:function(e,t,n){return this._adjustTokenNftAllowanceAllSerials(e,t,n,!1)}},{key:"_adjustTokenNftAllowanceAllSerials",value:function(e,t,n,r){return this._requireNotFrozen(),this._nftAllowances.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,ownerAccountId:null!=t?"string"==typeof t?f.default.fromString(t):t:null,spenderAccountId:"string"==typeof n?f.default.fromString(n):n,serialNumbers:null,allSerials:r})),this}},{key:"_validateChecksums",value:function(e){this._hbarAllowances.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenAllowances.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)})),this._nftAllowances.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e),null!=t.ownerAccountId&&t.ownerAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.adjustAllowance(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAdjustAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarAllowances.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenAllowances.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftAllowances.map((function(e){return e._toProtobuf()}))}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"AccountAllowanceAdjustTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAdjustAllowance;return l.default._fromProtobufTransactions(new n({hbarAllowances:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),tokenAllowances:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),nftAllowances:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=T,l.TRANSACTION_REGISTRY.set("cryptoAdjustAllowance",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.valueToLong=function(e){return o.default.isBigNumber(e)?e:new o.default(e.toString())};var o=r(n(159))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r,a,i,u){var c;return(0,o.default)(this,n),(c=t.call(this,"Entity ID ".concat(e.toString(),".").concat(r.toString(),".").concat(a.toString(),"-").concat(i," was incorrect."))).name="BadEntityIdException",c.shard=e,c.realm=r,c.num=a,c.presentChecksum=i,c.expectedChecksum=u,c}return n}((0,r(n(42)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=t;function o(){r.util._configure(),r.Writer._configure(r.BufferWriter),r.Reader._configure(r.BufferReader)}r.build="minimal",r.Writer=n(662),r.BufferWriter=n(1362),r.Reader=n(663),r.BufferReader=n(1363),r.util=n(163),r.rpc=n(1364),r.roots=n(1366),r.configure=o,o()},function(e,t,n){"use strict";e.exports=function(e,t){var n=new Array(arguments.length-1),r=0,o=2,a=!0;for(;o1&&"="===e.charAt(t);)++n;return Math.ceil(3*e.length)/4-n};for(var o=new Array(64),a=new Array(123),i=0;i<64;)a[o[i]=i<26?i+65:i<52?i+71:i<62?i-4:i-59|43]=i++;r.encode=function(e,t,n){for(var r,a=null,i=[],u=0,c=0;t>2],r=(3&s)<<4,c=1;break;case 1:i[u++]=o[r|s>>4],r=(15&s)<<2,c=2;break;case 2:i[u++]=o[r|s>>6],i[u++]=o[63&s],c=0}u>8191&&((a||(a=[])).push(String.fromCharCode.apply(String,i)),u=0)}return c&&(i[u++]=o[r],i[u++]=61,1===c&&(i[u++]=61)),a?(u&&a.push(String.fromCharCode.apply(String,i.slice(0,u))),a.join("")):String.fromCharCode.apply(String,i.slice(0,u))};r.decode=function(e,t,n){for(var r,o=n,i=0,u=0;u1)break;if(void 0===(c=a[c]))throw Error("invalid encoding");switch(i){case 0:r=c,i=1;break;case 1:t[n++]=r<<2|(48&c)>>4,r=c,i=2;break;case 2:t[n++]=(15&r)<<4|(60&c)>>2,r=c,i=3;break;case 3:t[n++]=(3&r)<<6|c,i=0}}if(1===i)throw Error("invalid encoding");return n-o},r.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}},function(e,t,n){"use strict";function r(){this._listeners={}}e.exports=r,r.prototype.on=function(e,t,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:t,ctx:n||this}),this},r.prototype.off=function(e,t){if(void 0===e)this._listeners={};else if(void 0===t)this._listeners[e]=[];else for(var n=this._listeners[e],r=0;r0?0:2147483648,n,r);else if(isNaN(t))e(2143289344,n,r);else if(t>34028234663852886e22)e((o<<31|2139095040)>>>0,n,r);else if(t<11754943508222875e-54)e((o<<31|Math.round(t/1401298464324817e-60))>>>0,n,r);else{var a=Math.floor(Math.log(t)/Math.LN2);e((o<<31|a+127<<23|8388607&Math.round(t*Math.pow(2,-a)*8388608))>>>0,n,r)}}function n(e,t,n){var r=e(t,n),o=2*(r>>31)+1,a=r>>>23&255,i=8388607&r;return 255===a?i?NaN:o*(1/0):0===a?1401298464324817e-60*o*i:o*Math.pow(2,a-150)*(i+8388608)}e.writeFloatLE=t.bind(null,o),e.writeFloatBE=t.bind(null,a),e.readFloatLE=n.bind(null,i),e.readFloatBE=n.bind(null,u)}(),"undefined"!=typeof Float64Array?function(){var t=new Float64Array([-0]),n=new Uint8Array(t.buffer),r=128===n[7];function o(e,r,o){t[0]=e,r[o]=n[0],r[o+1]=n[1],r[o+2]=n[2],r[o+3]=n[3],r[o+4]=n[4],r[o+5]=n[5],r[o+6]=n[6],r[o+7]=n[7]}function a(e,r,o){t[0]=e,r[o]=n[7],r[o+1]=n[6],r[o+2]=n[5],r[o+3]=n[4],r[o+4]=n[3],r[o+5]=n[2],r[o+6]=n[1],r[o+7]=n[0]}function i(e,r){return n[0]=e[r],n[1]=e[r+1],n[2]=e[r+2],n[3]=e[r+3],n[4]=e[r+4],n[5]=e[r+5],n[6]=e[r+6],n[7]=e[r+7],t[0]}function u(e,r){return n[7]=e[r],n[6]=e[r+1],n[5]=e[r+2],n[4]=e[r+3],n[3]=e[r+4],n[2]=e[r+5],n[1]=e[r+6],n[0]=e[r+7],t[0]}e.writeDoubleLE=r?o:a,e.writeDoubleBE=r?a:o,e.readDoubleLE=r?i:u,e.readDoubleBE=r?u:i}():function(){function t(e,t,n,r,o,a){var i=r<0?1:0;if(i&&(r=-r),0===r)e(0,o,a+t),e(1/r>0?0:2147483648,o,a+n);else if(isNaN(r))e(0,o,a+t),e(2146959360,o,a+n);else if(r>17976931348623157e292)e(0,o,a+t),e((i<<31|2146435072)>>>0,o,a+n);else{var u;if(r<22250738585072014e-324)e((u=r/5e-324)>>>0,o,a+t),e((i<<31|u/4294967296)>>>0,o,a+n);else{var c=Math.floor(Math.log(r)/Math.LN2);1024===c&&(c=1023),e(4503599627370496*(u=r*Math.pow(2,-c))>>>0,o,a+t),e((i<<31|c+1023<<20|1048576*u&1048575)>>>0,o,a+n)}}}function n(e,t,n,r,o){var a=e(r,o+t),i=e(r,o+n),u=2*(i>>31)+1,c=i>>>20&2047,s=4294967296*(1048575&i)+a;return 2047===c?s?NaN:u*(1/0):0===c?5e-324*u*s:u*Math.pow(2,c-1075)*(s+4503599627370496)}e.writeDoubleLE=t.bind(null,o,0,4),e.writeDoubleBE=t.bind(null,a,4,0),e.readDoubleLE=n.bind(null,i,0,4),e.readDoubleBE=n.bind(null,u,4,0)}(),e}function o(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}function a(e,t,n){t[n]=e>>>24,t[n+1]=e>>>16&255,t[n+2]=e>>>8&255,t[n+3]=255&e}function i(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function u(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}e.exports=r(r)},function(module,exports,__webpack_require__){"use strict";function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}module.exports=inquire},function(e,t,n){"use strict";var r=t;r.length=function(e){for(var t=0,n=0,r=0;r191&&r<224?a[i++]=(31&r)<<6|63&e[t++]:r>239&&r<365?(r=((7&r)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,a[i++]=55296+(r>>10),a[i++]=56320+(1023&r)):a[i++]=(15&r)<<12|(63&e[t++])<<6|63&e[t++],i>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,a)),i=0);return o?(i&&o.push(String.fromCharCode.apply(String,a.slice(0,i))),o.join("")):String.fromCharCode.apply(String,a.slice(0,i))},r.write=function(e,t,n){for(var r,o,a=n,i=0;i>6|192,t[n++]=63&r|128):55296==(64512&r)&&56320==(64512&(o=e.charCodeAt(i+1)))?(r=65536+((1023&r)<<10)+(1023&o),++i,t[n++]=r>>18|240,t[n++]=r>>12&63|128,t[n++]=r>>6&63|128,t[n++]=63&r|128):(t[n++]=r>>12|224,t[n++]=r>>6&63|128,t[n++]=63&r|128);return n-a}},function(e,t,n){"use strict";e.exports=function(e,t,n){var r=n||8192,o=r>>>1,a=null,i=r;return function(n){if(n<1||n>o)return e(n);i+n>r&&(a=e(r),i=0);var u=t.call(a,i,i+=n);return 7&i&&(i=1+(7|i)),u}}},function(e,t,n){"use strict";e.exports=o;var r=n(163);function o(e,t){this.lo=e>>>0,this.hi=t>>>0}var a=o.zero=new o(0,0);a.toNumber=function(){return 0},a.zzEncode=a.zzDecode=function(){return this},a.length=function(){return 1};var i=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(e){if(0===e)return a;var t=e<0;t&&(e=-e);var n=e>>>0,r=(e-n)/4294967296>>>0;return t&&(r=~r>>>0,n=~n>>>0,++n>4294967295&&(n=0,++r>4294967295&&(r=0))),new o(n,r)},o.from=function(e){if("number"==typeof e)return o.fromNumber(e);if(r.isString(e)){if(!r.Long)return o.fromNumber(parseInt(e,10));e=r.Long.fromString(e)}return e.low||e.high?new o(e.low>>>0,e.high>>>0):a},o.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var t=1+~this.lo>>>0,n=~this.hi>>>0;return t||(n=n+1>>>0),-(t+4294967296*n)}return this.lo+4294967296*this.hi},o.prototype.toLong=function(e){return r.Long?new r.Long(0|this.lo,0|this.hi,Boolean(e)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(e)}};var u=String.prototype.charCodeAt;o.fromHash=function(e){return e===i?a:new o((u.call(e,0)|u.call(e,1)<<8|u.call(e,2)<<16|u.call(e,3)<<24)>>>0,(u.call(e,4)|u.call(e,5)<<8|u.call(e,6)<<16|u.call(e,7)<<24)>>>0)},o.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},o.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this},o.prototype.zzDecode=function(){var e=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this},o.prototype.length=function(){var e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===t?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}},function(e,t,n){"use strict";e.exports=a;var r=n(662);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(163);function a(){r.call(this)}function i(e,t,n){e.length<40?o.utf8.write(e,t,n):t.utf8Write?t.utf8Write(e,n):t.write(e,n)}a._configure=function(){a.alloc=o._Buffer_allocUnsafe,a.writeBytesBuffer=o.Buffer&&o.Buffer.prototype instanceof Uint8Array&&"set"===o.Buffer.prototype.set.name?function(e,t,n){t.set(e,n)}:function(e,t,n){if(e.copy)e.copy(t,n,0,e.length);else for(var r=0;r>>0;return this.uint32(t),t&&this._push(a.writeBytesBuffer,t,e),this},a.prototype.string=function(e){var t=o.Buffer.byteLength(e);return this.uint32(t),t&&this._push(i,t,e),this},a._configure()},function(e,t,n){"use strict";e.exports=a;var r=n(663);(a.prototype=Object.create(r.prototype)).constructor=a;var o=n(163);function a(e){r.call(this,e)}a._configure=function(){o.Buffer&&(a.prototype._slice=o.Buffer.prototype.slice)},a.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))},a._configure()},function(e,t,n){"use strict";t.Service=n(1365)},function(e,t,n){"use strict";e.exports=o;var r=n(163);function o(e,t,n){if("function"!=typeof e)throw TypeError("rpcImpl must be a function");r.EventEmitter.call(this),this.rpcImpl=e,this.requestDelimited=Boolean(t),this.responseDelimited=Boolean(n)}(o.prototype=Object.create(r.EventEmitter.prototype)).constructor=o,o.prototype.rpcCall=function e(t,n,o,a,i){if(!a)throw TypeError("request must be specified");var u=this;if(!i)return r.asPromise(e,u,t,n,o,a);if(u.rpcImpl)try{return u.rpcImpl(t,n[u.requestDelimited?"encodeDelimited":"encode"](a).finish(),(function(e,n){if(e)return u.emit("error",e,t),i(e);if(null!==n){if(!(n instanceof o))try{n=o[u.responseDelimited?"decodeDelimited":"decode"](n)}catch(e){return u.emit("error",e,t),i(e)}return u.emit("data",n,t),i(null,n)}u.end(!0)}))}catch(e){return u.emit("error",e,t),void setTimeout((function(){i(e)}),0)}else setTimeout((function(){i(Error("already ended"))}),0)},o.prototype.end=function(e){return this.rpcImpl&&(e||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var r=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.proto=t.google=t.default=void 0;var o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var c=i?Object.getOwnPropertyDescriptor(e,u):null;c&&(c.get||c.set)?Object.defineProperty(o,u,c):o[u]=e[u]}o.default=e,n&&n.set(e,o);return o}(n(661));function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}var i=o.Reader,u=o.Writer,c=o.util,s=o.roots.hashgraph||(o.roots.hashgraph={});t.default=s;var l=s.proto=function(){var e,t,n={};return n.TokenUnitBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.SingleAccountBalances=function(){function e(e){if(this.tokenUnitBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hbarBalance=e.uint64();break;case 3:r.tokenUnitBalances&&r.tokenUnitBalances.length||(r.tokenUnitBalances=[]),r.tokenUnitBalances.push(s.proto.TokenUnitBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.AllAccountBalances=function(){function e(e){if(this.allAccounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.allAccounts&&r.allAccounts.length||(r.allAccounts=[]),r.allAccounts.push(s.proto.SingleAccountBalances.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ShardID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.RealmID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AccountID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.accountNum=e.int64();break;case 4:r.alias=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.fileNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.contractNum=e.int64();break;case 4:r.evmAddress=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionValidStart=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.scheduled=e.bool();break;case 4:r.nonce=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.AccountAmount=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.sint64();break;case 3:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransferList=function(){function e(e){if(this.accountAmounts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountAmounts&&r.accountAmounts.length||(r.accountAmounts=[]),r.accountAmounts.push(s.proto.AccountAmount.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftTransfer=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.senderAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.receiverAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.serialNumber=e.int64();break;case 4:r.isApproval=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenTransferList=function(){function e(e){if(this.transfers=[],this.nftTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.transfers&&r.transfers.length||(r.transfers=[]),r.transfers.push(s.proto.AccountAmount.decode(e,e.uint32()));break;case 3:r.nftTransfers&&r.nftTransfers.length||(r.nftTransfers=[]),r.nftTransfers.push(s.proto.NftTransfer.decode(e,e.uint32()));break;case 4:r.expectedDecimals=s.google.protobuf.UInt32Value.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Fraction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.numerator=e.int64();break;case 2:r.denominator=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TopicID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.topicNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.tokenNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.shardNum=e.int64();break;case 2:r.realmNum=e.int64();break;case 3:r.scheduleNum=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenType=(e={},(t=Object.create(e))[e[0]="FUNGIBLE_COMMON"]=0,t[e[1]="NON_FUNGIBLE_UNIQUE"]=1,t),n.SubType=function(){var e={},t=Object.create(e);return t[e[0]="DEFAULT"]=0,t[e[1]="TOKEN_FUNGIBLE_COMMON"]=1,t[e[2]="TOKEN_NON_FUNGIBLE_UNIQUE"]=2,t[e[3]="TOKEN_FUNGIBLE_COMMON_WITH_CUSTOM_FEES"]=3,t[e[4]="TOKEN_NON_FUNGIBLE_UNIQUE_WITH_CUSTOM_FEES"]=4,t}(),n.TokenSupplyType=function(){var e={},t=Object.create(e);return t[e[0]="INFINITE"]=0,t[e[1]="FINITE"]=1,t}(),n.TokenFreezeStatus=function(){var e={},t=Object.create(e);return t[e[0]="FreezeNotApplicable"]=0,t[e[1]="Frozen"]=1,t[e[2]="Unfrozen"]=2,t}(),n.TokenKycStatus=function(){var e={},t=Object.create(e);return t[e[0]="KycNotApplicable"]=0,t[e[1]="Granted"]=1,t[e[2]="Revoked"]=2,t}(),n.TokenPauseStatus=function(){var e={},t=Object.create(e);return t[e[0]="PauseNotApplicable"]=0,t[e[1]="Paused"]=1,t[e[2]="Unpaused"]=2,t}(),n.Key=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdKey=s.proto.ThresholdKey.decode(e,e.uint32());break;case 6:r.keyList=s.proto.KeyList.decode(e,e.uint32());break;case 7:r.ECDSASecp256k1=e.bytes();break;case 8:r.delegatableContractId=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdKey=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.threshold=e.uint32();break;case 2:r.keys=s.proto.KeyList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.KeyList=function(){function e(e){if(this.keys=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.keys&&r.keys.length||(r.keys=[]),r.keys.push(s.proto.Key.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Signature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contract=e.bytes();break;case 2:r.ed25519=e.bytes();break;case 3:r.RSA_3072=e.bytes();break;case 4:r.ECDSA_384=e.bytes();break;case 5:r.thresholdSignature=s.proto.ThresholdSignature.decode(e,e.uint32());break;case 6:r.signatureList=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ThresholdSignature=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SignatureList=function(){function e(e){if(this.sigs=[],e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.sigs&&r.sigs.length||(r.sigs=[]),r.sigs.push(s.proto.Signature.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SignaturePair=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.pubKeyPrefix=e.bytes();break;case 2:r.contract=e.bytes();break;case 3:r.ed25519=e.bytes();break;case 4:r.RSA_3072=e.bytes();break;case 5:r.ECDSA_384=e.bytes();break;case 6:r.ECDSASecp256k1=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.SignatureMap=function(){function e(e){if(this.sigPair=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.sigPair&&r.sigPair.length||(r.sigPair=[]),r.sigPair.push(s.proto.SignaturePair.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.HederaFunctionality=function(){var e={},t=Object.create(e);return t[e[0]="NONE"]=0,t[e[1]="CryptoTransfer"]=1,t[e[2]="CryptoUpdate"]=2,t[e[3]="CryptoDelete"]=3,t[e[4]="CryptoAddLiveHash"]=4,t[e[5]="CryptoDeleteLiveHash"]=5,t[e[6]="ContractCall"]=6,t[e[7]="ContractCreate"]=7,t[e[8]="ContractUpdate"]=8,t[e[9]="FileCreate"]=9,t[e[10]="FileAppend"]=10,t[e[11]="FileUpdate"]=11,t[e[12]="FileDelete"]=12,t[e[13]="CryptoGetAccountBalance"]=13,t[e[14]="CryptoGetAccountRecords"]=14,t[e[15]="CryptoGetInfo"]=15,t[e[16]="ContractCallLocal"]=16,t[e[17]="ContractGetInfo"]=17,t[e[18]="ContractGetBytecode"]=18,t[e[19]="GetBySolidityID"]=19,t[e[20]="GetByKey"]=20,t[e[21]="CryptoGetLiveHash"]=21,t[e[22]="CryptoGetStakers"]=22,t[e[23]="FileGetContents"]=23,t[e[24]="FileGetInfo"]=24,t[e[25]="TransactionGetRecord"]=25,t[e[26]="ContractGetRecords"]=26,t[e[27]="CryptoCreate"]=27,t[e[28]="SystemDelete"]=28,t[e[29]="SystemUndelete"]=29,t[e[30]="ContractDelete"]=30,t[e[31]="Freeze"]=31,t[e[32]="CreateTransactionRecord"]=32,t[e[33]="CryptoAccountAutoRenew"]=33,t[e[34]="ContractAutoRenew"]=34,t[e[35]="GetVersionInfo"]=35,t[e[36]="TransactionGetReceipt"]=36,t[e[50]="ConsensusCreateTopic"]=50,t[e[51]="ConsensusUpdateTopic"]=51,t[e[52]="ConsensusDeleteTopic"]=52,t[e[53]="ConsensusGetTopicInfo"]=53,t[e[54]="ConsensusSubmitMessage"]=54,t[e[55]="UncheckedSubmit"]=55,t[e[56]="TokenCreate"]=56,t[e[58]="TokenGetInfo"]=58,t[e[59]="TokenFreezeAccount"]=59,t[e[60]="TokenUnfreezeAccount"]=60,t[e[61]="TokenGrantKycToAccount"]=61,t[e[62]="TokenRevokeKycFromAccount"]=62,t[e[63]="TokenDelete"]=63,t[e[64]="TokenUpdate"]=64,t[e[65]="TokenMint"]=65,t[e[66]="TokenBurn"]=66,t[e[67]="TokenAccountWipe"]=67,t[e[68]="TokenAssociateToAccount"]=68,t[e[69]="TokenDissociateFromAccount"]=69,t[e[70]="ScheduleCreate"]=70,t[e[71]="ScheduleDelete"]=71,t[e[72]="ScheduleSign"]=72,t[e[73]="ScheduleGetInfo"]=73,t[e[74]="TokenGetAccountNftInfos"]=74,t[e[75]="TokenGetNftInfo"]=75,t[e[76]="TokenGetNftInfos"]=76,t[e[77]="TokenFeeScheduleUpdate"]=77,t[e[78]="NetworkGetExecutionTime"]=78,t[e[79]="TokenPause"]=79,t[e[80]="TokenUnpause"]=80,t[e[81]="CryptoApproveAllowance"]=81,t[e[82]="CryptoAdjustAllowance"]=82,t}(),n.FeeComponents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.min=e.int64();break;case 2:r.max=e.int64();break;case 3:r.constant=e.int64();break;case 4:r.bpt=e.int64();break;case 5:r.vpt=e.int64();break;case 6:r.rbh=e.int64();break;case 7:r.sbh=e.int64();break;case 8:r.gas=e.int64();break;case 9:r.tv=e.int64();break;case 10:r.bpr=e.int64();break;case 11:r.sbpr=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionFeeSchedule=function(){function e(e){if(this.fees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.hederaFunctionality=e.int32();break;case 2:r.feeData=s.proto.FeeData.decode(e,e.uint32());break;case 3:r.fees&&r.fees.length||(r.fees=[]),r.fees.push(s.proto.FeeData.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FeeData=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 2:r.networkdata=s.proto.FeeComponents.decode(e,e.uint32());break;case 3:r.servicedata=s.proto.FeeComponents.decode(e,e.uint32());break;case 4:r.subType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FeeSchedule=function(){function e(e){if(this.transactionFeeSchedule=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFeeSchedule&&r.transactionFeeSchedule.length||(r.transactionFeeSchedule=[]),r.transactionFeeSchedule.push(s.proto.TransactionFeeSchedule.decode(e,e.uint32()));break;case 2:r.expiryTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CurrentAndNextFeeSchedule=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;case 2:r.nextFeeSchedule=s.proto.FeeSchedule.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ServiceEndpoint=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddressV4=e.bytes();break;case 2:r.port=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddress=function(){function e(e){if(this.serviceEndpoint=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.ipAddress=e.bytes();break;case 2:r.portno=e.int32();break;case 3:r.memo=e.bytes();break;case 4:r.RSA_PubKey=e.string();break;case 5:r.nodeId=e.int64();break;case 6:r.nodeAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.nodeCertHash=e.bytes();break;case 8:r.serviceEndpoint&&r.serviceEndpoint.length||(r.serviceEndpoint=[]),r.serviceEndpoint.push(s.proto.ServiceEndpoint.decode(e,e.uint32()));break;case 9:r.description=e.string();break;case 10:r.stake=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NodeAddressBook=function(){function e(e){if(this.nodeAddress=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeAddress&&r.nodeAddress.length||(r.nodeAddress=[]),r.nodeAddress.push(s.proto.NodeAddress.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.SemanticVersion=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.major=e.int32();break;case 2:r.minor=e.int32();break;case 3:r.patch=e.int32();break;case 4:r.pre=e.string();break;case 5:r.build=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.Setting=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.value=e.string();break;case 3:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ServicesConfigurationList=function(){function e(e){if(this.nameValue=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nameValue&&r.nameValue.length||(r.nameValue=[]),r.nameValue.push(s.proto.Setting.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenRelationship=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.balance=e.uint64();break;case 4:r.kycStatus=e.int32();break;case 5:r.freezeStatus=e.int32();break;case 6:r.decimals=e.uint32();break;case 7:r.automaticAssociation=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.balance=e.uint64();break;case 3:r.decimals=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.TokenBalances=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenAssociation=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAllowance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.NftAllowance=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.owner=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.GrantedCryptoAllowance=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.GrantedNftAllowance=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 3:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.spender=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.Timestamp=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;case 2:r.nanos=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.TimestampSeconds=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusCreateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 3:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.Duration=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.seconds=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusDeleteTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusGetTopicInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 5:r.topicInfo=s.proto.ConsensusTopicInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseType=function(){var e={},t=Object.create(e);return t[e[0]="ANSWER_ONLY"]=0,t[e[1]="ANSWER_STATE_PROOF"]=1,t[e[2]="COST_ANSWER"]=2,t[e[3]="COST_ANSWER_STATE_PROOF"]=3,t}(),n.QueryHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.payment=s.proto.Transaction.decode(e,e.uint32());break;case 2:r.responseType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.Transaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.body=s.proto.TransactionBody.decode(e,e.uint32());break;case 2:r.sigs=s.proto.SignatureList.decode(e,e.uint32());break;case 3:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;case 4:r.bodyBytes=e.bytes();break;case 5:r.signedTransactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.nodeAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transactionFee=e.uint64();break;case 4:r.transactionValidDuration=s.proto.Duration.decode(e,e.uint32());break;case 5:r.generateRecord=e.bool();break;case 6:r.memo=e.string();break;case 7:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 8:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 9:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 22:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoAddLiveHash=s.proto.CryptoAddLiveHashTransactionBody.decode(e,e.uint32());break;case 48:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 49:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 11:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 12:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 13:r.cryptoDeleteLiveHash=s.proto.CryptoDeleteLiveHashTransactionBody.decode(e,e.uint32());break;case 14:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 15:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 16:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 17:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 18:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 19:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 20:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 21:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 23:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 24:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 25:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 26:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 27:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 28:r.uncheckedSubmit=s.proto.UncheckedSubmitBody.decode(e,e.uint32());break;case 29:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 31:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 33:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 34:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 35:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 37:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 38:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 39:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 40:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 41:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 45:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 46:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 47:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 42:r.scheduleCreate=s.proto.ScheduleCreateTransactionBody.decode(e,e.uint32());break;case 43:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;case 44:r.scheduleSign=s.proto.ScheduleSignTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SystemUndeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FreezeTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.startHour=e.int32();break;case 2:r.startMin=e.int32();break;case 3:r.endHour=e.int32();break;case 4:r.endMin=e.int32();break;case 5:r.updateFile=s.proto.FileID.decode(e,e.uint32());break;case 6:r.fileHash=e.bytes();break;case 7:r.startTime=s.proto.Timestamp.decode(e,e.uint32());break;case 8:r.freezeType=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.FreezeType=function(){var e={},t=Object.create(e);return t[e[0]="UNKNOWN_FREEZE_TYPE"]=0,t[e[1]="FREEZE_ONLY"]=1,t[e[2]="PREPARE_UPGRADE"]=2,t[e[3]="FREEZE_UPGRADE"]=3,t[e[4]="FREEZE_ABORT"]=4,t[e[5]="TELEMETRY_UPGRADE"]=5,t}(),n.ContractCallTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.gas=e.int64();break;case 3:r.amount=e.int64();break;case 4:r.functionParameters=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.gas=e.int64();break;case 5:r.initialBalance=e.int64();break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.constructorParameters=e.bytes();break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.ContractUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 9:r.memo=e.string();break;case 10:r.memoWrapper=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.LiveHash=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountId=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.hash=e.bytes();break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 5:r.duration=s.proto.Duration.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAddLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 3:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.key=s.proto.Key.decode(e,e.uint32());break;case 2:r.initialBalance=e.uint64();break;case 3:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.sendRecordThreshold=e.uint64();break;case 7:r.receiveRecordThreshold=e.uint64();break;case 8:r.receiverSigRequired=e.bool();break;case 9:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 10:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 11:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 12:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 13:r.memo=e.string();break;case 14:r.maxAutomaticTokenAssociations=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.deleteAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoDeleteLiveHashTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountOfLiveHash=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHashToDelete=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoTransferTransactionBody=function(){function e(e){if(this.tokenTransfers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transfers=s.proto.TransferList.decode(e,e.uint32());break;case 2:r.tokenTransfers&&r.tokenTransfers.length||(r.tokenTransfers=[]),r.tokenTransfers.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.accountIDToUpdate=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.key=s.proto.Key.decode(e,e.uint32());break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.proxyFraction=e.int32();break;case 6:r.sendRecordThreshold=e.uint64();break;case 11:r.sendRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 7:r.receiveRecordThreshold=e.uint64();break;case 12:r.receiveRecordThresholdWrapper=s.google.protobuf.UInt64Value.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 10:r.receiverSigRequired=e.bool();break;case 13:r.receiverSigRequiredWrapper=s.google.protobuf.BoolValue.decode(e,e.uint32());break;case 14:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 15:r.maxAutomaticTokenAssociations=s.google.protobuf.Int32Value.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoApproveAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoAdjustAllowanceTransactionBody=function(){function e(e){if(this.cryptoAllowances=[],this.nftAllowances=[],this.tokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.cryptoAllowances&&r.cryptoAllowances.length||(r.cryptoAllowances=[]),r.cryptoAllowances.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 2:r.nftAllowances&&r.nftAllowances.length||(r.nftAllowances=[]),r.nftAllowances.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 3:r.tokenAllowances&&r.tokenAllowances.length||(r.tokenAllowances=[]),r.tokenAllowances.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.FileAppendTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.FileCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.shardID=s.proto.ShardID.decode(e,e.uint32());break;case 6:r.realmID=s.proto.RealmID.decode(e,e.uint32());break;case 7:r.newRealmAdminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.memo=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.FileDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 4:r.contents=e.bytes();break;case 5:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.transferAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.transferContractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusUpdateTopicTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 9:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusMessageChunkInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.initialTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 2:r.total=e.int32();break;case 3:r.number=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusSubmitMessageTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.UncheckedSubmitBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionBytes=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenCreateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.name=e.string();break;case 2:r.symbol=e.string();break;case 3:r.decimals=e.uint32();break;case 4:r.initialSupply=e.uint64();break;case 5:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.freezeDefault=e.bool();break;case 13:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 14:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 15:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 16:r.memo=e.string();break;case 17:r.tokenType=e.int32();break;case 18:r.supplyType=e.int32();break;case 19:r.maxSupply=e.int64();break;case 20:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 21:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 22:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FractionalFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fractionalAmount=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.minimumAmount=e.int64();break;case 3:r.maximumAmount=e.int64();break;case 4:r.netOfTransfers=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.FixedFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.denominatingTokenId=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.RoyaltyFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.exchangeValueFraction=s.proto.Fraction.decode(e,e.uint32());break;case 2:r.fallbackFee=s.proto.FixedFee.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CustomFee=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fixedFee=s.proto.FixedFee.decode(e,e.uint32());break;case 2:r.fractionalFee=s.proto.FractionalFee.decode(e,e.uint32());break;case 4:r.royaltyFee=s.proto.RoyaltyFee.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.AssessedCustomFee=function(){function e(e){if(this.effectivePayerAccountId=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.amount=e.int64();break;case 2:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.feeCollectorAccountId=s.proto.AccountID.decode(e,e.uint32());break;case 4:r.effectivePayerAccountId&&r.effectivePayerAccountId.length||(r.effectivePayerAccountId=[]),r.effectivePayerAccountId.push(s.proto.AccountID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnfreezeAccountTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGrantKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenRevokeKycTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUpdateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.symbol=e.string();break;case 3:r.name=e.string();break;case 4:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 12:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.memo=s.google.protobuf.StringValue.decode(e,e.uint32());break;case 14:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 15:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenMintTransactionBody=function(){function e(e){if(this.metadata=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:r.metadata&&r.metadata.length||(r.metadata=[]),r.metadata.push(e.bytes());break;default:e.skipType(7&o)}}return r},e}(),n.TokenBurnTransactionBody=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.amount=e.uint64();break;case 3:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.amount=e.uint64();break;case 4:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenDissociateTransactionBody=function(){function e(e){if(this.tokens=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.account=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.tokens&&r.tokens.length||(r.tokens=[]),r.tokens.push(s.proto.TokenID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenFeeScheduleUpdateTransactionBody=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenPauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenUnpauseTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleCreateTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 2:r.memo=e.string();break;case 3:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 4:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.SchedulableTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionFee=e.uint64();break;case 2:r.memo=e.string();break;case 3:r.contractCall=s.proto.ContractCallTransactionBody.decode(e,e.uint32());break;case 4:r.contractCreateInstance=s.proto.ContractCreateTransactionBody.decode(e,e.uint32());break;case 5:r.contractUpdateInstance=s.proto.ContractUpdateTransactionBody.decode(e,e.uint32());break;case 6:r.contractDeleteInstance=s.proto.ContractDeleteTransactionBody.decode(e,e.uint32());break;case 37:r.cryptoAdjustAllowance=s.proto.CryptoAdjustAllowanceTransactionBody.decode(e,e.uint32());break;case 38:r.cryptoApproveAllowance=s.proto.CryptoApproveAllowanceTransactionBody.decode(e,e.uint32());break;case 7:r.cryptoCreateAccount=s.proto.CryptoCreateTransactionBody.decode(e,e.uint32());break;case 8:r.cryptoDelete=s.proto.CryptoDeleteTransactionBody.decode(e,e.uint32());break;case 9:r.cryptoTransfer=s.proto.CryptoTransferTransactionBody.decode(e,e.uint32());break;case 10:r.cryptoUpdateAccount=s.proto.CryptoUpdateTransactionBody.decode(e,e.uint32());break;case 11:r.fileAppend=s.proto.FileAppendTransactionBody.decode(e,e.uint32());break;case 12:r.fileCreate=s.proto.FileCreateTransactionBody.decode(e,e.uint32());break;case 13:r.fileDelete=s.proto.FileDeleteTransactionBody.decode(e,e.uint32());break;case 14:r.fileUpdate=s.proto.FileUpdateTransactionBody.decode(e,e.uint32());break;case 15:r.systemDelete=s.proto.SystemDeleteTransactionBody.decode(e,e.uint32());break;case 16:r.systemUndelete=s.proto.SystemUndeleteTransactionBody.decode(e,e.uint32());break;case 17:r.freeze=s.proto.FreezeTransactionBody.decode(e,e.uint32());break;case 18:r.consensusCreateTopic=s.proto.ConsensusCreateTopicTransactionBody.decode(e,e.uint32());break;case 19:r.consensusUpdateTopic=s.proto.ConsensusUpdateTopicTransactionBody.decode(e,e.uint32());break;case 20:r.consensusDeleteTopic=s.proto.ConsensusDeleteTopicTransactionBody.decode(e,e.uint32());break;case 21:r.consensusSubmitMessage=s.proto.ConsensusSubmitMessageTransactionBody.decode(e,e.uint32());break;case 22:r.tokenCreation=s.proto.TokenCreateTransactionBody.decode(e,e.uint32());break;case 23:r.tokenFreeze=s.proto.TokenFreezeAccountTransactionBody.decode(e,e.uint32());break;case 24:r.tokenUnfreeze=s.proto.TokenUnfreezeAccountTransactionBody.decode(e,e.uint32());break;case 25:r.tokenGrantKyc=s.proto.TokenGrantKycTransactionBody.decode(e,e.uint32());break;case 26:r.tokenRevokeKyc=s.proto.TokenRevokeKycTransactionBody.decode(e,e.uint32());break;case 27:r.tokenDeletion=s.proto.TokenDeleteTransactionBody.decode(e,e.uint32());break;case 28:r.tokenUpdate=s.proto.TokenUpdateTransactionBody.decode(e,e.uint32());break;case 29:r.tokenMint=s.proto.TokenMintTransactionBody.decode(e,e.uint32());break;case 30:r.tokenBurn=s.proto.TokenBurnTransactionBody.decode(e,e.uint32());break;case 31:r.tokenWipe=s.proto.TokenWipeAccountTransactionBody.decode(e,e.uint32());break;case 32:r.tokenAssociate=s.proto.TokenAssociateTransactionBody.decode(e,e.uint32());break;case 33:r.tokenDissociate=s.proto.TokenDissociateTransactionBody.decode(e,e.uint32());break;case 39:r.tokenFeeScheduleUpdate=s.proto.TokenFeeScheduleUpdateTransactionBody.decode(e,e.uint32());break;case 35:r.tokenPause=s.proto.TokenPauseTransactionBody.decode(e,e.uint32());break;case 36:r.tokenUnpause=s.proto.TokenUnpauseTransactionBody.decode(e,e.uint32());break;case 34:r.scheduleDelete=s.proto.ScheduleDeleteTransactionBody.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleDeleteTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleSignTransactionBody=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ResponseHeader=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.responseType=e.int32();break;case 3:r.cost=e.uint64();break;case 4:r.stateProof=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nodeTransactionPrecheckCode=e.int32();break;case 2:r.cost=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ResponseCodeEnum=function(){var e={},t=Object.create(e);return t[e[0]="OK"]=0,t[e[1]="INVALID_TRANSACTION"]=1,t[e[2]="PAYER_ACCOUNT_NOT_FOUND"]=2,t[e[3]="INVALID_NODE_ACCOUNT"]=3,t[e[4]="TRANSACTION_EXPIRED"]=4,t[e[5]="INVALID_TRANSACTION_START"]=5,t[e[6]="INVALID_TRANSACTION_DURATION"]=6,t[e[7]="INVALID_SIGNATURE"]=7,t[e[8]="MEMO_TOO_LONG"]=8,t[e[9]="INSUFFICIENT_TX_FEE"]=9,t[e[10]="INSUFFICIENT_PAYER_BALANCE"]=10,t[e[11]="DUPLICATE_TRANSACTION"]=11,t[e[12]="BUSY"]=12,t[e[13]="NOT_SUPPORTED"]=13,t[e[14]="INVALID_FILE_ID"]=14,t[e[15]="INVALID_ACCOUNT_ID"]=15,t[e[16]="INVALID_CONTRACT_ID"]=16,t[e[17]="INVALID_TRANSACTION_ID"]=17,t[e[18]="RECEIPT_NOT_FOUND"]=18,t[e[19]="RECORD_NOT_FOUND"]=19,t[e[20]="INVALID_SOLIDITY_ID"]=20,t[e[21]="UNKNOWN"]=21,t[e[22]="SUCCESS"]=22,t[e[23]="FAIL_INVALID"]=23,t[e[24]="FAIL_FEE"]=24,t[e[25]="FAIL_BALANCE"]=25,t[e[26]="KEY_REQUIRED"]=26,t[e[27]="BAD_ENCODING"]=27,t[e[28]="INSUFFICIENT_ACCOUNT_BALANCE"]=28,t[e[29]="INVALID_SOLIDITY_ADDRESS"]=29,t[e[30]="INSUFFICIENT_GAS"]=30,t[e[31]="CONTRACT_SIZE_LIMIT_EXCEEDED"]=31,t[e[32]="LOCAL_CALL_MODIFICATION_EXCEPTION"]=32,t[e[33]="CONTRACT_REVERT_EXECUTED"]=33,t[e[34]="CONTRACT_EXECUTION_EXCEPTION"]=34,t[e[35]="INVALID_RECEIVING_NODE_ACCOUNT"]=35,t[e[36]="MISSING_QUERY_HEADER"]=36,t[e[37]="ACCOUNT_UPDATE_FAILED"]=37,t[e[38]="INVALID_KEY_ENCODING"]=38,t[e[39]="NULL_SOLIDITY_ADDRESS"]=39,t[e[40]="CONTRACT_UPDATE_FAILED"]=40,t[e[41]="INVALID_QUERY_HEADER"]=41,t[e[42]="INVALID_FEE_SUBMITTED"]=42,t[e[43]="INVALID_PAYER_SIGNATURE"]=43,t[e[44]="KEY_NOT_PROVIDED"]=44,t[e[45]="INVALID_EXPIRATION_TIME"]=45,t[e[46]="NO_WACL_KEY"]=46,t[e[47]="FILE_CONTENT_EMPTY"]=47,t[e[48]="INVALID_ACCOUNT_AMOUNTS"]=48,t[e[49]="EMPTY_TRANSACTION_BODY"]=49,t[e[50]="INVALID_TRANSACTION_BODY"]=50,t[e[51]="INVALID_SIGNATURE_TYPE_MISMATCHING_KEY"]=51,t[e[52]="INVALID_SIGNATURE_COUNT_MISMATCHING_KEY"]=52,t[e[53]="EMPTY_LIVE_HASH_BODY"]=53,t[e[54]="EMPTY_LIVE_HASH"]=54,t[e[55]="EMPTY_LIVE_HASH_KEYS"]=55,t[e[56]="INVALID_LIVE_HASH_SIZE"]=56,t[e[57]="EMPTY_QUERY_BODY"]=57,t[e[58]="EMPTY_LIVE_HASH_QUERY"]=58,t[e[59]="LIVE_HASH_NOT_FOUND"]=59,t[e[60]="ACCOUNT_ID_DOES_NOT_EXIST"]=60,t[e[61]="LIVE_HASH_ALREADY_EXISTS"]=61,t[e[62]="INVALID_FILE_WACL"]=62,t[e[63]="SERIALIZATION_FAILED"]=63,t[e[64]="TRANSACTION_OVERSIZE"]=64,t[e[65]="TRANSACTION_TOO_MANY_LAYERS"]=65,t[e[66]="CONTRACT_DELETED"]=66,t[e[67]="PLATFORM_NOT_ACTIVE"]=67,t[e[68]="KEY_PREFIX_MISMATCH"]=68,t[e[69]="PLATFORM_TRANSACTION_NOT_CREATED"]=69,t[e[70]="INVALID_RENEWAL_PERIOD"]=70,t[e[71]="INVALID_PAYER_ACCOUNT_ID"]=71,t[e[72]="ACCOUNT_DELETED"]=72,t[e[73]="FILE_DELETED"]=73,t[e[74]="ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS"]=74,t[e[75]="SETTING_NEGATIVE_ACCOUNT_BALANCE"]=75,t[e[76]="OBTAINER_REQUIRED"]=76,t[e[77]="OBTAINER_SAME_CONTRACT_ID"]=77,t[e[78]="OBTAINER_DOES_NOT_EXIST"]=78,t[e[79]="MODIFYING_IMMUTABLE_CONTRACT"]=79,t[e[80]="FILE_SYSTEM_EXCEPTION"]=80,t[e[81]="AUTORENEW_DURATION_NOT_IN_RANGE"]=81,t[e[82]="ERROR_DECODING_BYTESTRING"]=82,t[e[83]="CONTRACT_FILE_EMPTY"]=83,t[e[84]="CONTRACT_BYTECODE_EMPTY"]=84,t[e[85]="INVALID_INITIAL_BALANCE"]=85,t[e[86]="INVALID_RECEIVE_RECORD_THRESHOLD"]=86,t[e[87]="INVALID_SEND_RECORD_THRESHOLD"]=87,t[e[88]="ACCOUNT_IS_NOT_GENESIS_ACCOUNT"]=88,t[e[89]="PAYER_ACCOUNT_UNAUTHORIZED"]=89,t[e[90]="INVALID_FREEZE_TRANSACTION_BODY"]=90,t[e[91]="FREEZE_TRANSACTION_BODY_NOT_FOUND"]=91,t[e[92]="TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=92,t[e[93]="RESULT_SIZE_LIMIT_EXCEEDED"]=93,t[e[94]="NOT_SPECIAL_ACCOUNT"]=94,t[e[95]="CONTRACT_NEGATIVE_GAS"]=95,t[e[96]="CONTRACT_NEGATIVE_VALUE"]=96,t[e[97]="INVALID_FEE_FILE"]=97,t[e[98]="INVALID_EXCHANGE_RATE_FILE"]=98,t[e[99]="INSUFFICIENT_LOCAL_CALL_GAS"]=99,t[e[100]="ENTITY_NOT_ALLOWED_TO_DELETE"]=100,t[e[101]="AUTHORIZATION_FAILED"]=101,t[e[102]="FILE_UPLOADED_PROTO_INVALID"]=102,t[e[103]="FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK"]=103,t[e[104]="FEE_SCHEDULE_FILE_PART_UPLOADED"]=104,t[e[105]="EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED"]=105,t[e[106]="MAX_CONTRACT_STORAGE_EXCEEDED"]=106,t[e[107]="TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT"]=107,t[e[108]="TOTAL_LEDGER_BALANCE_INVALID"]=108,t[e[110]="EXPIRATION_REDUCTION_NOT_ALLOWED"]=110,t[e[111]="MAX_GAS_LIMIT_EXCEEDED"]=111,t[e[112]="MAX_FILE_SIZE_EXCEEDED"]=112,t[e[113]="RECEIVER_SIG_REQUIRED"]=113,t[e[150]="INVALID_TOPIC_ID"]=150,t[e[155]="INVALID_ADMIN_KEY"]=155,t[e[156]="INVALID_SUBMIT_KEY"]=156,t[e[157]="UNAUTHORIZED"]=157,t[e[158]="INVALID_TOPIC_MESSAGE"]=158,t[e[159]="INVALID_AUTORENEW_ACCOUNT"]=159,t[e[160]="AUTORENEW_ACCOUNT_NOT_ALLOWED"]=160,t[e[162]="TOPIC_EXPIRED"]=162,t[e[163]="INVALID_CHUNK_NUMBER"]=163,t[e[164]="INVALID_CHUNK_TRANSACTION_ID"]=164,t[e[165]="ACCOUNT_FROZEN_FOR_TOKEN"]=165,t[e[166]="TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED"]=166,t[e[167]="INVALID_TOKEN_ID"]=167,t[e[168]="INVALID_TOKEN_DECIMALS"]=168,t[e[169]="INVALID_TOKEN_INITIAL_SUPPLY"]=169,t[e[170]="INVALID_TREASURY_ACCOUNT_FOR_TOKEN"]=170,t[e[171]="INVALID_TOKEN_SYMBOL"]=171,t[e[172]="TOKEN_HAS_NO_FREEZE_KEY"]=172,t[e[173]="TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN"]=173,t[e[174]="MISSING_TOKEN_SYMBOL"]=174,t[e[175]="TOKEN_SYMBOL_TOO_LONG"]=175,t[e[176]="ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN"]=176,t[e[177]="TOKEN_HAS_NO_KYC_KEY"]=177,t[e[178]="INSUFFICIENT_TOKEN_BALANCE"]=178,t[e[179]="TOKEN_WAS_DELETED"]=179,t[e[180]="TOKEN_HAS_NO_SUPPLY_KEY"]=180,t[e[181]="TOKEN_HAS_NO_WIPE_KEY"]=181,t[e[182]="INVALID_TOKEN_MINT_AMOUNT"]=182,t[e[183]="INVALID_TOKEN_BURN_AMOUNT"]=183,t[e[184]="TOKEN_NOT_ASSOCIATED_TO_ACCOUNT"]=184,t[e[185]="CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT"]=185,t[e[186]="INVALID_KYC_KEY"]=186,t[e[187]="INVALID_WIPE_KEY"]=187,t[e[188]="INVALID_FREEZE_KEY"]=188,t[e[189]="INVALID_SUPPLY_KEY"]=189,t[e[190]="MISSING_TOKEN_NAME"]=190,t[e[191]="TOKEN_NAME_TOO_LONG"]=191,t[e[192]="INVALID_WIPING_AMOUNT"]=192,t[e[193]="TOKEN_IS_IMMUTABLE"]=193,t[e[194]="TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT"]=194,t[e[195]="TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES"]=195,t[e[196]="ACCOUNT_IS_TREASURY"]=196,t[e[197]="TOKEN_ID_REPEATED_IN_TOKEN_LIST"]=197,t[e[198]="TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED"]=198,t[e[199]="EMPTY_TOKEN_TRANSFER_BODY"]=199,t[e[200]="EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS"]=200,t[e[201]="INVALID_SCHEDULE_ID"]=201,t[e[202]="SCHEDULE_IS_IMMUTABLE"]=202,t[e[203]="INVALID_SCHEDULE_PAYER_ID"]=203,t[e[204]="INVALID_SCHEDULE_ACCOUNT_ID"]=204,t[e[205]="NO_NEW_VALID_SIGNATURES"]=205,t[e[206]="UNRESOLVABLE_REQUIRED_SIGNERS"]=206,t[e[207]="SCHEDULED_TRANSACTION_NOT_IN_WHITELIST"]=207,t[e[208]="SOME_SIGNATURES_WERE_INVALID"]=208,t[e[209]="TRANSACTION_ID_FIELD_NOT_ALLOWED"]=209,t[e[210]="IDENTICAL_SCHEDULE_ALREADY_CREATED"]=210,t[e[211]="INVALID_ZERO_BYTE_IN_STRING"]=211,t[e[212]="SCHEDULE_ALREADY_DELETED"]=212,t[e[213]="SCHEDULE_ALREADY_EXECUTED"]=213,t[e[214]="MESSAGE_SIZE_TOO_LARGE"]=214,t[e[215]="OPERATION_REPEATED_IN_BUCKET_GROUPS"]=215,t[e[216]="BUCKET_CAPACITY_OVERFLOW"]=216,t[e[217]="NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION"]=217,t[e[218]="BUCKET_HAS_NO_THROTTLE_GROUPS"]=218,t[e[219]="THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC"]=219,t[e[220]="SUCCESS_BUT_MISSING_EXPECTED_OPERATION"]=220,t[e[221]="UNPARSEABLE_THROTTLE_DEFINITIONS"]=221,t[e[222]="INVALID_THROTTLE_DEFINITIONS"]=222,t[e[223]="ACCOUNT_EXPIRED_AND_PENDING_REMOVAL"]=223,t[e[224]="INVALID_TOKEN_MAX_SUPPLY"]=224,t[e[225]="INVALID_TOKEN_NFT_SERIAL_NUMBER"]=225,t[e[226]="INVALID_NFT_ID"]=226,t[e[227]="METADATA_TOO_LONG"]=227,t[e[228]="BATCH_SIZE_LIMIT_EXCEEDED"]=228,t[e[229]="INVALID_QUERY_RANGE"]=229,t[e[230]="FRACTION_DIVIDES_BY_ZERO"]=230,t[e[231]="INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE"]=231,t[e[232]="CUSTOM_FEES_LIST_TOO_LONG"]=232,t[e[233]="INVALID_CUSTOM_FEE_COLLECTOR"]=233,t[e[234]="INVALID_TOKEN_ID_IN_CUSTOM_FEES"]=234,t[e[235]="TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR"]=235,t[e[236]="TOKEN_MAX_SUPPLY_REACHED"]=236,t[e[237]="SENDER_DOES_NOT_OWN_NFT_SERIAL_NO"]=237,t[e[238]="CUSTOM_FEE_NOT_FULLY_SPECIFIED"]=238,t[e[239]="CUSTOM_FEE_MUST_BE_POSITIVE"]=239,t[e[240]="TOKEN_HAS_NO_FEE_SCHEDULE_KEY"]=240,t[e[241]="CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE"]=241,t[e[242]="ROYALTY_FRACTION_CANNOT_EXCEED_ONE"]=242,t[e[243]="FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT"]=243,t[e[244]="CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES"]=244,t[e[245]="CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON"]=245,t[e[246]="CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=246,t[e[247]="INVALID_CUSTOM_FEE_SCHEDULE_KEY"]=247,t[e[248]="INVALID_TOKEN_MINT_METADATA"]=248,t[e[249]="INVALID_TOKEN_BURN_METADATA"]=249,t[e[250]="CURRENT_TREASURY_STILL_OWNS_NFTS"]=250,t[e[251]="ACCOUNT_STILL_OWNS_NFTS"]=251,t[e[252]="TREASURY_MUST_OWN_BURNED_NFT"]=252,t[e[253]="ACCOUNT_DOES_NOT_OWN_WIPED_NFT"]=253,t[e[254]="ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON"]=254,t[e[255]="MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED"]=255,t[e[256]="PAYER_ACCOUNT_DELETED"]=256,t[e[257]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH"]=257,t[e[258]="CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS"]=258,t[e[259]="INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE"]=259,t[e[260]="SERIAL_NUMBER_LIMIT_REACHED"]=260,t[e[261]="CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE"]=261,t[e[262]="NO_REMAINING_AUTOMATIC_ASSOCIATIONS"]=262,t[e[263]="EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT"]=263,t[e[264]="REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT"]=264,t[e[265]="TOKEN_IS_PAUSED"]=265,t[e[266]="TOKEN_HAS_NO_PAUSE_KEY"]=266,t[e[267]="INVALID_PAUSE_KEY"]=267,t[e[268]="FREEZE_UPDATE_FILE_DOES_NOT_EXIST"]=268,t[e[269]="FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH"]=269,t[e[270]="NO_UPGRADE_HAS_BEEN_PREPARED"]=270,t[e[271]="NO_FREEZE_IS_SCHEDULED"]=271,t[e[272]="UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE"]=272,t[e[273]="FREEZE_START_TIME_MUST_BE_FUTURE"]=273,t[e[274]="PREPARED_UPDATE_FILE_IS_IMMUTABLE"]=274,t[e[275]="FREEZE_ALREADY_SCHEDULED"]=275,t[e[276]="FREEZE_UPGRADE_IN_PROGRESS"]=276,t[e[277]="UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED"]=277,t[e[278]="UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED"]=278,t[e[279]="CONSENSUS_GAS_EXHAUSTED"]=279,t[e[280]="REVERTED_SUCCESS"]=280,t[e[281]="MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED"]=281,t[e[282]="INVALID_ALIAS_KEY"]=282,t[e[283]="UNEXPECTED_TOKEN_DECIMALS"]=283,t[e[284]="INVALID_PROXY_ACCOUNT_ID"]=284,t[e[285]="INVALID_TRANSFER_ACCOUNT_ID"]=285,t[e[286]="INVALID_FEE_COLLECTOR_ACCOUNT_ID"]=286,t[e[287]="ALIAS_IS_IMMUTABLE"]=287,t[e[288]="SPENDER_ACCOUNT_SAME_AS_OWNER"]=288,t[e[289]="AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY"]=289,t[e[290]="NEGATIVE_ALLOWANCE_AMOUNT"]=290,t[e[291]="CANNOT_APPROVE_FOR_ALL_FUNGIBLE_COMMON"]=291,t[e[292]="SPENDER_DOES_NOT_HAVE_ALLOWANCE"]=292,t[e[293]="AMOUNT_EXCEEDS_ALLOWANCE"]=293,t[e[294]="MAX_ALLOWANCES_EXCEEDED"]=294,t[e[295]="EMPTY_ALLOWANCES"]=295,t[e[296]="SPENDER_ACCOUNT_REPEATED_IN_ALLOWANCES"]=296,t[e[297]="REPEATED_SERIAL_NUMS_IN_NFT_ALLOWANCES"]=297,t[e[298]="FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES"]=298,t[e[299]="NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES"]=299,t[e[300]="INVALID_ALLOWANCE_OWNER_ID"]=300,t[e[301]="INVALID_ALLOWANCE_SPENDER_ID"]=301,t}(),n.ConsensusTopicInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.memo=e.string();break;case 2:r.runningHash=e.bytes();break;case 3:r.sequenceNumber=e.uint64();break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 6:r.submitKey=s.proto.Key.decode(e,e.uint32());break;case 7:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 8:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 9:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createTopic"}),Object.defineProperty(e.prototype.updateTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTopic"}),Object.defineProperty(e.prototype.deleteTopic=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteTopic"}),Object.defineProperty(e.prototype.getTopicInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTopicInfo"}),Object.defineProperty(e.prototype.submitMessage=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"submitMessage"}),e}(),n.Query=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyQuery.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDQuery.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalQuery.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoQuery.decode(e,e.uint32());break;case 5:r.contractGetBytecode=s.proto.ContractGetBytecodeQuery.decode(e,e.uint32());break;case 6:r.ContractGetRecords=s.proto.ContractGetRecordsQuery.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceQuery.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsQuery.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoQuery.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashQuery.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersQuery.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsQuery.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoQuery.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptQuery.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordQuery.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordQuery.decode(e,e.uint32());break;case 50:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoQuery.decode(e,e.uint32());break;case 51:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoQuery.decode(e,e.uint32());break;case 52:r.tokenGetInfo=s.proto.TokenGetInfoQuery.decode(e,e.uint32());break;case 53:r.scheduleGetInfo=s.proto.ScheduleGetInfoQuery.decode(e,e.uint32());break;case 54:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosQuery.decode(e,e.uint32());break;case 55:r.tokenGetNftInfo=s.proto.TokenGetNftInfoQuery.decode(e,e.uint32());break;case 56:r.tokenGetNftInfos=s.proto.TokenGetNftInfosQuery.decode(e,e.uint32());break;case 57:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeQuery.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.key=s.proto.Key.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.EntityID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.GetByKeyResponse=function(){function e(e){if(this.entities=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.entities&&r.entities.length||(r.entities=[]),r.entities.push(s.proto.EntityID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.solidityID=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.GetBySolidityIDResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractLoginfo=function(){function e(e){if(this.topic=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.bloom=e.bytes();break;case 3:r.topic&&r.topic.length||(r.topic=[]),r.topic.push(e.bytes());break;case 4:r.data=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractFunctionResult=function(){function e(e){if(this.logInfo=[],this.createdContractIDs=[],this.stateChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.contractCallResult=e.bytes();break;case 3:r.errorMessage=e.string();break;case 4:r.bloom=e.bytes();break;case 5:r.gasUsed=e.uint64();break;case 6:r.logInfo&&r.logInfo.length||(r.logInfo=[]),r.logInfo.push(s.proto.ContractLoginfo.decode(e,e.uint32()));break;case 7:r.createdContractIDs&&r.createdContractIDs.length||(r.createdContractIDs=[]),r.createdContractIDs.push(s.proto.ContractID.decode(e,e.uint32()));break;case 8:r.stateChanges&&r.stateChanges.length||(r.stateChanges=[]),r.stateChanges.push(s.proto.ContractStateChange.decode(e,e.uint32()));break;case 9:r.evmAddress=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.gas=e.int64();break;case 4:r.functionParameters=e.bytes();break;case 5:r.maxResultSize=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.ContractCallLocalResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.functionResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractStateChange=function(){function e(e){if(this.storageChanges=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.storageChanges&&r.storageChanges.length||(r.storageChanges=[]),r.storageChanges.push(s.proto.StorageChange.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.StorageChange=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.slot=e.bytes();break;case 2:r.valueRead=e.bytes();break;case 3:r.valueWritten=s.google.protobuf.BytesValue.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractInfo=s.proto.ContractGetInfoResponse.ContractInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.ContractInfo=function(){function e(e){if(this.tokenRelationships=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractAccountID=e.string();break;case 4:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 5:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 6:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 7:r.storage=e.int64();break;case 8:r.memo=e.string();break;case 9:r.balance=e.uint64();break;case 10:r.deleted=e.bool();break;case 11:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.ContractGetBytecodeQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetBytecodeResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 6:r.bytecode=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ContractGetRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionRecord=function(){function e(e){if(this.tokenTransferLists=[],this.assessedCustomFees=[],this.automaticTokenAssociations=[],this.cryptoAdjustments=[],this.nftAdjustments=[],this.tokenAdjustments=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 2:r.transactionHash=e.bytes();break;case 3:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 5:r.memo=e.string();break;case 6:r.transactionFee=e.uint64();break;case 7:r.contractCallResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 8:r.contractCreateResult=s.proto.ContractFunctionResult.decode(e,e.uint32());break;case 10:r.transferList=s.proto.TransferList.decode(e,e.uint32());break;case 11:r.tokenTransferLists&&r.tokenTransferLists.length||(r.tokenTransferLists=[]),r.tokenTransferLists.push(s.proto.TokenTransferList.decode(e,e.uint32()));break;case 12:r.scheduleRef=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.assessedCustomFees&&r.assessedCustomFees.length||(r.assessedCustomFees=[]),r.assessedCustomFees.push(s.proto.AssessedCustomFee.decode(e,e.uint32()));break;case 14:r.automaticTokenAssociations&&r.automaticTokenAssociations.length||(r.automaticTokenAssociations=[]),r.automaticTokenAssociations.push(s.proto.TokenAssociation.decode(e,e.uint32()));break;case 15:r.parentConsensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 16:r.alias=e.bytes();break;case 17:r.cryptoAdjustments&&r.cryptoAdjustments.length||(r.cryptoAdjustments=[]),r.cryptoAdjustments.push(s.proto.CryptoAllowance.decode(e,e.uint32()));break;case 18:r.nftAdjustments&&r.nftAdjustments.length||(r.nftAdjustments=[]),r.nftAdjustments.push(s.proto.NftAllowance.decode(e,e.uint32()));break;case 19:r.tokenAdjustments&&r.tokenAdjustments.length||(r.tokenAdjustments=[]),r.tokenAdjustments.push(s.proto.TokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionReceipt=function(){function e(e){if(this.serialNumbers=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.status=e.int32();break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 4:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;case 5:r.exchangeRate=s.proto.ExchangeRateSet.decode(e,e.uint32());break;case 6:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 7:r.topicSequenceNumber=e.uint64();break;case 8:r.topicRunningHash=e.bytes();break;case 9:r.topicRunningHashVersion=e.uint64();break;case 10:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 11:r.newTotalSupply=e.uint64();break;case 12:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 13:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 14:if(r.serialNumbers&&r.serialNumbers.length||(r.serialNumbers=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.hbarEquiv=e.int32();break;case 2:r.centEquiv=e.int32();break;case 3:r.expirationTime=s.proto.TimestampSeconds.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ExchangeRateSet=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.currentRate=s.proto.ExchangeRate.decode(e,e.uint32());break;case 2:r.nextRate=s.proto.ExchangeRate.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.contractID=s.proto.ContractID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountBalanceResponse=function(){function e(e){if(this.tokenBalances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.balance=e.uint64();break;case 4:r.tokenBalances&&r.tokenBalances.length||(r.tokenBalances=[]),r.tokenBalances.push(s.proto.TokenBalance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetAccountRecordsResponse=function(){function e(e){if(this.records=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.records&&r.records.length||(r.records=[]),r.records.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.accountInfo=s.proto.CryptoGetInfoResponse.AccountInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.AccountInfo=function(){function e(e){if(this.liveHashes=[],this.tokenRelationships=[],this.grantedCryptoAllowances=[],this.grantedNftAllowances=[],this.grantedTokenAllowances=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.contractAccountID=e.string();break;case 3:r.deleted=e.bool();break;case 4:r.proxyAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 6:r.proxyReceived=e.int64();break;case 7:r.key=s.proto.Key.decode(e,e.uint32());break;case 8:r.balance=e.uint64();break;case 9:r.generateSendRecordThreshold=e.uint64();break;case 10:r.generateReceiveRecordThreshold=e.uint64();break;case 11:r.receiverSigRequired=e.bool();break;case 12:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 13:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 14:r.liveHashes&&r.liveHashes.length||(r.liveHashes=[]),r.liveHashes.push(s.proto.LiveHash.decode(e,e.uint32()));break;case 15:r.tokenRelationships&&r.tokenRelationships.length||(r.tokenRelationships=[]),r.tokenRelationships.push(s.proto.TokenRelationship.decode(e,e.uint32()));break;case 16:r.memo=e.string();break;case 17:r.ownedNfts=e.int64();break;case 18:r.maxAutomaticTokenAssociations=e.int32();break;case 19:r.alias=e.bytes();break;case 20:r.ledgerId=e.bytes();break;case 21:r.grantedCryptoAllowances&&r.grantedCryptoAllowances.length||(r.grantedCryptoAllowances=[]),r.grantedCryptoAllowances.push(s.proto.GrantedCryptoAllowance.decode(e,e.uint32()));break;case 22:r.grantedNftAllowances&&r.grantedNftAllowances.length||(r.grantedNftAllowances=[]),r.grantedNftAllowances.push(s.proto.GrantedNftAllowance.decode(e,e.uint32()));break;case 23:r.grantedTokenAllowances&&r.grantedTokenAllowances.length||(r.grantedTokenAllowances=[]),r.grantedTokenAllowances.push(s.proto.GrantedTokenAllowance.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),e}(),n.CryptoGetLiveHashQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.hash=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetLiveHashResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.liveHash=s.proto.LiveHash.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ProxyStaker=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.amount=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.AllProxyStakers=function(){function e(e){if(this.proxyStaker=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 2:r.proxyStaker&&r.proxyStaker.length||(r.proxyStaker=[]),r.proxyStaker.push(s.proto.ProxyStaker.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.CryptoGetStakersResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.stakers=s.proto.AllProxyStakers.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetContentsResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileContents=s.proto.FileGetContentsResponse.FileContents.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileContents=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.contents=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.FileGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.fileID=s.proto.FileID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.FileGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.fileInfo=s.proto.FileGetInfoResponse.FileInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e.FileInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileID=s.proto.FileID.decode(e,e.uint32());break;case 2:r.size=e.int64();break;case 3:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.deleted=e.bool();break;case 5:r.keys=s.proto.KeyList.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e}(),n.TransactionGetReceiptQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildReceipts=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetReceiptResponse=function(){function e(e){if(this.duplicateTransactionReceipts=[],this.childTransactionReceipts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.receipt=s.proto.TransactionReceipt.decode(e,e.uint32());break;case 4:r.duplicateTransactionReceipts&&r.duplicateTransactionReceipts.length||(r.duplicateTransactionReceipts=[]),r.duplicateTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;case 5:r.childTransactionReceipts&&r.childTransactionReceipts.length||(r.childTransactionReceipts=[]),r.childTransactionReceipts.push(s.proto.TransactionReceipt.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 3:r.includeDuplicates=e.bool();break;case 4:r.includeChildRecords=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetRecordResponse=function(){function e(e){if(this.duplicateTransactionRecords=[],this.childTransactionRecords=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 3:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;case 4:r.duplicateTransactionRecords&&r.duplicateTransactionRecords.length||(r.duplicateTransactionRecords=[]),r.duplicateTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;case 5:r.childTransactionRecords&&r.childTransactionRecords.length||(r.childTransactionRecords=[]),r.childTransactionRecords.push(s.proto.TransactionRecord.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionID=s.proto.TransactionID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionGetFastRecordResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.transactionRecord=s.proto.TransactionRecord.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetVersionInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.hapiProtoVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;case 3:r.hederaServicesVersion=s.proto.SemanticVersion.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeQuery=function(){function e(e){if(this.transactionIds=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.transactionIds&&r.transactionIds.length||(r.transactionIds=[]),r.transactionIds.push(s.proto.TransactionID.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NetworkGetExecutionTimeResponse=function(){function e(e){if(this.executionTimes=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:if(r.executionTimes&&r.executionTimes.length||(r.executionTimes=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.token=s.proto.TokenID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenInfo=function(){function e(e){if(this.customFees=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenId=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.name=e.string();break;case 3:r.symbol=e.string();break;case 4:r.decimals=e.uint32();break;case 5:r.totalSupply=e.uint64();break;case 6:r.treasury=s.proto.AccountID.decode(e,e.uint32());break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.kycKey=s.proto.Key.decode(e,e.uint32());break;case 9:r.freezeKey=s.proto.Key.decode(e,e.uint32());break;case 10:r.wipeKey=s.proto.Key.decode(e,e.uint32());break;case 11:r.supplyKey=s.proto.Key.decode(e,e.uint32());break;case 12:r.defaultFreezeStatus=e.int32();break;case 13:r.defaultKycStatus=e.int32();break;case 14:r.deleted=e.bool();break;case 15:r.autoRenewAccount=s.proto.AccountID.decode(e,e.uint32());break;case 16:r.autoRenewPeriod=s.proto.Duration.decode(e,e.uint32());break;case 17:r.expiry=s.proto.Timestamp.decode(e,e.uint32());break;case 18:r.memo=e.string();break;case 19:r.tokenType=e.int32();break;case 20:r.supplyType=e.int32();break;case 21:r.maxSupply=e.int64();break;case 22:r.feeScheduleKey=s.proto.Key.decode(e,e.uint32());break;case 23:r.customFees&&r.customFees.length||(r.customFees=[]),r.customFees.push(s.proto.CustomFee.decode(e,e.uint32()));break;case 24:r.pauseKey=s.proto.Key.decode(e,e.uint32());break;case 25:r.pauseStatus=e.int32();break;case 26:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenInfo=s.proto.TokenInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.scheduleID=s.proto.ScheduleID.decode(e,e.uint32());break;case 2:r.deletionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.executionTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.expirationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 5:r.scheduledTransactionBody=s.proto.SchedulableTransactionBody.decode(e,e.uint32());break;case 6:r.memo=e.string();break;case 7:r.adminKey=s.proto.Key.decode(e,e.uint32());break;case 8:r.signers=s.proto.KeyList.decode(e,e.uint32());break;case 9:r.creatorAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 10:r.payerAccountID=s.proto.AccountID.decode(e,e.uint32());break;case 11:r.scheduledTransactionID=s.proto.TransactionID.decode(e,e.uint32());break;case 12:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.ScheduleGetInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.scheduleInfo=s.proto.ScheduleInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetAccountNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.NftID=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 2:r.serialNumber=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.nftID=s.proto.NftID.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenNftInfo=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.nftID=s.proto.NftID.decode(e,e.uint32());break;case 2:r.accountID=s.proto.AccountID.decode(e,e.uint32());break;case 3:r.creationTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.metadata=e.bytes();break;case 5:r.ledgerId=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfoResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.nft=s.proto.TokenNftInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.QueryHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.start=e.int64();break;case 4:r.end=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.TokenGetNftInfosResponse=function(){function e(e){if(this.nfts=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.header=s.proto.ResponseHeader.decode(e,e.uint32());break;case 2:r.tokenID=s.proto.TokenID.decode(e,e.uint32());break;case 3:r.nfts&&r.nfts.length||(r.nfts=[]),r.nfts.push(s.proto.TokenNftInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.Response=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.getByKey=s.proto.GetByKeyResponse.decode(e,e.uint32());break;case 2:r.getBySolidityID=s.proto.GetBySolidityIDResponse.decode(e,e.uint32());break;case 3:r.contractCallLocal=s.proto.ContractCallLocalResponse.decode(e,e.uint32());break;case 5:r.contractGetBytecodeResponse=s.proto.ContractGetBytecodeResponse.decode(e,e.uint32());break;case 4:r.contractGetInfo=s.proto.ContractGetInfoResponse.decode(e,e.uint32());break;case 6:r.contractGetRecordsResponse=s.proto.ContractGetRecordsResponse.decode(e,e.uint32());break;case 7:r.cryptogetAccountBalance=s.proto.CryptoGetAccountBalanceResponse.decode(e,e.uint32());break;case 8:r.cryptoGetAccountRecords=s.proto.CryptoGetAccountRecordsResponse.decode(e,e.uint32());break;case 9:r.cryptoGetInfo=s.proto.CryptoGetInfoResponse.decode(e,e.uint32());break;case 10:r.cryptoGetLiveHash=s.proto.CryptoGetLiveHashResponse.decode(e,e.uint32());break;case 11:r.cryptoGetProxyStakers=s.proto.CryptoGetStakersResponse.decode(e,e.uint32());break;case 12:r.fileGetContents=s.proto.FileGetContentsResponse.decode(e,e.uint32());break;case 13:r.fileGetInfo=s.proto.FileGetInfoResponse.decode(e,e.uint32());break;case 14:r.transactionGetReceipt=s.proto.TransactionGetReceiptResponse.decode(e,e.uint32());break;case 15:r.transactionGetRecord=s.proto.TransactionGetRecordResponse.decode(e,e.uint32());break;case 16:r.transactionGetFastRecord=s.proto.TransactionGetFastRecordResponse.decode(e,e.uint32());break;case 150:r.consensusGetTopicInfo=s.proto.ConsensusGetTopicInfoResponse.decode(e,e.uint32());break;case 151:r.networkGetVersionInfo=s.proto.NetworkGetVersionInfoResponse.decode(e,e.uint32());break;case 152:r.tokenGetInfo=s.proto.TokenGetInfoResponse.decode(e,e.uint32());break;case 153:r.scheduleGetInfo=s.proto.ScheduleGetInfoResponse.decode(e,e.uint32());break;case 154:r.tokenGetAccountNftInfos=s.proto.TokenGetAccountNftInfosResponse.decode(e,e.uint32());break;case 155:r.tokenGetNftInfo=s.proto.TokenGetNftInfoResponse.decode(e,e.uint32());break;case 156:r.tokenGetNftInfos=s.proto.TokenGetNftInfosResponse.decode(e,e.uint32());break;case 157:r.networkGetExecutionTime=s.proto.NetworkGetExecutionTimeResponse.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.CryptoService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createAccount"}),Object.defineProperty(e.prototype.updateAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateAccount"}),Object.defineProperty(e.prototype.cryptoTransfer=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoTransfer"}),Object.defineProperty(e.prototype.cryptoDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"cryptoDelete"}),Object.defineProperty(e.prototype.approveAllowances=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"approveAllowances"}),Object.defineProperty(e.prototype.adjustAllowance=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"adjustAllowance"}),Object.defineProperty(e.prototype.addLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"addLiveHash"}),Object.defineProperty(e.prototype.deleteLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteLiveHash"}),Object.defineProperty(e.prototype.getLiveHash=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getLiveHash"}),Object.defineProperty(e.prototype.getAccountRecords=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountRecords"}),Object.defineProperty(e.prototype.cryptoGetBalance=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"cryptoGetBalance"}),Object.defineProperty(e.prototype.getAccountInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountInfo"}),Object.defineProperty(e.prototype.getTransactionReceipts=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTransactionReceipts"}),Object.defineProperty(e.prototype.getFastTransactionRecord=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFastTransactionRecord"}),Object.defineProperty(e.prototype.getTxRecordByTxID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByTxID"}),Object.defineProperty(e.prototype.getStakersByAccountID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getStakersByAccountID"}),e}(),n.FileService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createFile"}),Object.defineProperty(e.prototype.updateFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateFile"}),Object.defineProperty(e.prototype.deleteFile=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteFile"}),Object.defineProperty(e.prototype.appendContent=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"appendContent"}),Object.defineProperty(e.prototype.getFileContent=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileContent"}),Object.defineProperty(e.prototype.getFileInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getFileInfo"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.FreezeService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.freeze=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freeze"}),e}(),n.ConsensusTopicQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.topicID=s.proto.TopicID.decode(e,e.uint32());break;case 2:r.consensusStartTime=s.proto.Timestamp.decode(e,e.uint32());break;case 3:r.consensusEndTime=s.proto.Timestamp.decode(e,e.uint32());break;case 4:r.limit=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.ConsensusTopicResponse=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.consensusTimestamp=s.proto.Timestamp.decode(e,e.uint32());break;case 2:r.message=e.bytes();break;case 3:r.runningHash=e.bytes();break;case 4:r.sequenceNumber=e.uint64();break;case 5:r.runningHashVersion=e.uint64();break;case 6:r.chunkInfo=s.proto.ConsensusMessageChunkInfo.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.MirrorConsensusService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.subscribeTopic=function e(t,n){return this.rpcCall(e,s.proto.ConsensusTopicQuery,s.proto.ConsensusTopicResponse,t,n)},"name",{value:"subscribeTopic"}),e}(),n.AddressBookQuery=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.fileId=s.proto.FileID.decode(e,e.uint32());break;case 2:r.limit=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.MirrorNetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getNodes=function e(t,n){return this.rpcCall(e,s.proto.AddressBookQuery,s.proto.NodeAddress,t,n)},"name",{value:"getNodes"}),e}(),n.NetworkService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.getVersionInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getVersionInfo"}),Object.defineProperty(e.prototype.getExecutionTime=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getExecutionTime"}),Object.defineProperty(e.prototype.uncheckedSubmit=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"uncheckedSubmit"}),e}(),n.ScheduleService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createSchedule"}),Object.defineProperty(e.prototype.signSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"signSchedule"}),Object.defineProperty(e.prototype.deleteSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteSchedule"}),Object.defineProperty(e.prototype.getScheduleInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getScheduleInfo"}),e}(),n.SmartContractService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createContract"}),Object.defineProperty(e.prototype.updateContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateContract"}),Object.defineProperty(e.prototype.contractCallMethod=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"contractCallMethod"}),Object.defineProperty(e.prototype.getContractInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getContractInfo"}),Object.defineProperty(e.prototype.contractCallLocalMethod=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"contractCallLocalMethod"}),Object.defineProperty(e.prototype.contractGetBytecode=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"ContractGetBytecode"}),Object.defineProperty(e.prototype.getBySolidityID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getBySolidityID"}),Object.defineProperty(e.prototype.getTxRecordByContractID=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTxRecordByContractID"}),Object.defineProperty(e.prototype.deleteContract=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteContract"}),Object.defineProperty(e.prototype.systemDelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemDelete"}),Object.defineProperty(e.prototype.systemUndelete=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"systemUndelete"}),e}(),n.ThrottleGroup=function(){function e(e){if(this.operations=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:if(r.operations&&r.operations.length||(r.operations=[]),2==(7&o))for(var a=e.uint32()+e.pos;e.pos>>3){case 1:r.name=e.string();break;case 2:r.burstPeriodMs=e.uint64();break;case 3:r.throttleGroups&&r.throttleGroups.length||(r.throttleGroups=[]),r.throttleGroups.push(s.proto.ThrottleGroup.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.ThrottleDefinitions=function(){function e(e){if(this.throttleBuckets=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.throttleBuckets&&r.throttleBuckets.length||(r.throttleBuckets=[]),r.throttleBuckets.push(s.proto.ThrottleBucket.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.TokenService=function(){function e(e,t,n){o.rpc.Service.call(this,e,t,n)}return(e.prototype=Object.create(o.rpc.Service.prototype)).constructor=e,e.create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(e.prototype.createToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"createToken"}),Object.defineProperty(e.prototype.updateToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateToken"}),Object.defineProperty(e.prototype.mintToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"mintToken"}),Object.defineProperty(e.prototype.burnToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"burnToken"}),Object.defineProperty(e.prototype.deleteToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"deleteToken"}),Object.defineProperty(e.prototype.wipeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"wipeTokenAccount"}),Object.defineProperty(e.prototype.freezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"freezeTokenAccount"}),Object.defineProperty(e.prototype.unfreezeTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unfreezeTokenAccount"}),Object.defineProperty(e.prototype.grantKycToTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"grantKycToTokenAccount"}),Object.defineProperty(e.prototype.revokeKycFromTokenAccount=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"revokeKycFromTokenAccount"}),Object.defineProperty(e.prototype.associateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"associateTokens"}),Object.defineProperty(e.prototype.dissociateTokens=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"dissociateTokens"}),Object.defineProperty(e.prototype.updateTokenFeeSchedule=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"updateTokenFeeSchedule"}),Object.defineProperty(e.prototype.getTokenInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenInfo"}),Object.defineProperty(e.prototype.getAccountNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getAccountNftInfos"}),Object.defineProperty(e.prototype.getTokenNftInfo=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfo"}),Object.defineProperty(e.prototype.getTokenNftInfos=function e(t,n){return this.rpcCall(e,s.proto.Query,s.proto.Response,t,n)},"name",{value:"getTokenNftInfos"}),Object.defineProperty(e.prototype.pauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"pauseToken"}),Object.defineProperty(e.prototype.unpauseToken=function e(t,n){return this.rpcCall(e,s.proto.Transaction,s.proto.TransactionResponse,t,n)},"name",{value:"unpauseToken"}),e}(),n.SignedTransaction=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.bodyBytes=e.bytes();break;case 2:r.sigMap=s.proto.SignatureMap.decode(e,e.uint32());break;default:e.skipType(7&o)}}return r},e}(),n.TransactionList=function(){function e(e){if(this.transactionList=[],e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.transactionList&&r.transactionList.length||(r.transactionList=[]),r.transactionList.push(s.proto.Transaction.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return r},e}(),n.DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),n.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),n.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),n.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),n.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),n.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),n.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),n.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),n.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),n}();t.proto=l;var f=s.google=function(){var e,t={};return t.protobuf=((e={}).DoubleValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.double();break;default:e.skipType(7&o)}}return r},e}(),e.FloatValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.float();break;default:e.skipType(7&o)}}return r},e}(),e.Int64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int64();break;default:e.skipType(7&o)}}return r},e}(),e.UInt64Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint64();break;default:e.skipType(7&o)}}return r},e}(),e.Int32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.int32();break;default:e.skipType(7&o)}}return r},e}(),e.UInt32Value=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.uint32();break;default:e.skipType(7&o)}}return r},e}(),e.BoolValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bool();break;default:e.skipType(7&o)}}return r},e}(),e.StringValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.string();break;default:e.skipType(7&o)}}return r},e}(),e.BytesValue=function(){function e(e){if(e)for(var t=Object.keys(e),n=0;n>>3){case 1:r.value=e.bytes();break;default:e.skipType(7&o)}}return r},e}(),e),t}();t.google=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(70)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(42)),f=r(n(664));function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var p=function(e){(0,u.default)(n,e);var t=d(n);function n(e){var r;return(0,o.default)(this,n),(r=t.call(this,"gRPC service failed with status: ".concat(e.toString()))).status=e,r.name="GrpcServiceError",void 0!==Error.captureStackTrace&&Error.captureStackTrace((0,i.default)(r),n),r}return(0,a.default)(n,null,[{key:"_fromResponse",value:function(e){if(null!=e.code&&null!=e.details){var t=new n(f.default._fromValue(e.code));return t.message=e.details,t}return e}}]),n}((0,l.default)(Error));t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4));function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var s=function(e){(0,a.default)(n,e);var t=c(n);function n(e,r){var a;return(0,o.default)(this,n),(a=t.call(this)).message="query cost of ".concat(e.toString()," HBAR exceeds max set on client: ").concat(r.toString()," HBAR"),a.name="MaxQueryPaymentExceededError",a.queryCost=e,a.maxQueryPayment=r,a}return n}((0,r(n(42)).default)(Error));t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39)),c=r(n(61)),s=r(n(1371));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(t){(0,a.default)(this,e),this.contractId=t.contractId,this.storageChanges=t.storageChanges,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){var e=this.storageChanges.map((function(e){return e._toProtobuf()}));return{contractID:this.contractId._toProtobuf(),storageChanges:e}}},{key:"toBytes",value:function(){return u.ContractStateChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({contractId:c.default._fromProtobuf(t.contractID),storageChanges:(null!=t.storageChanges?t.storageChanges:[]).map((function(e){return s.default._fromProtobuf(e)}))})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.ContractStateChange.decode(t))}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}var s=function(){function e(t){(0,a.default)(this,e),this.slot=t.slot,this.valueRead=t.valueRead,this.valueWritten=t.valueWritten}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{slot:this.slot,valueRead:this.valueRead,valueWritten:null!=this.valueWritten?{value:this.valueWritten}:null}}},{key:"toBytes",value:function(){return u.StorageChange.encode(this._toProtobuf()).finish()}}],[{key:"_fromProtobuf",value:function(t){return new e({slot:t.slot,valueRead:t.valueRead,valueWritten:null!=t.valueWritten&&null!=t.valueWritten.value?t.valueWritten.value:null})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(u.StorageChange.decode(t))}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(14)),u=r(n(30)),c=r(n(32)),s=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._accountId,null!=t.accountId&&this.setAccountId(t.accountId),this._tokenId,null!=t.tokenId&&this.setTokenId(t.tokenId),this._defaultMaxTransactionFee=new c.default(5)}return(0,a.default)(e,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?i.default.fromString(e):e,this}},{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?u.default.fromString(e):e,this}},{key:"_toProtobuf",value:function(){return{accountId:null!=this._accountId?this._accountId._toProtobuf():void 0,tokenId:null!=this._tokenId?this._tokenId._toProtobuf():void 0}}}],[{key:"_fromProtobuf",value:function(t){return new e({accountId:null!=t.accountId?i.default._fromProtobuf(t.accountId):void 0,tokenId:null!=t.tokenId?u.default._fromProtobuf(t.tokenId):void 0})}}]),e}();t.default=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=r(n(14)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(672));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var m=function(e){(0,s.default)(r,e);var t,n=y(r);function r(){return(0,u.default)(this,r),n.call(this,(function(e){return d.default.fromString(e)}))}return(0,c.default)(r,null,[{key:"_fromTransaction",value:(t=(0,i.default)(a.default.mark((function e(t){var n,o,i,u,c;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=new r,o=0;case 2:if(!(o=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hbarApprovals=null!=r.hbarApprovals?r.hbarApprovals:[],e._tokenApprovals=null!=r.tokenApprovals?r.tokenApprovals:[],e._nftApprovals=null!=r.nftApprovals?r.nftApprovals:[],e}return(0,i.default)(n,[{key:"hbarApprovals",get:function(){return this._hbarApprovals}},{key:"approveHbarAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._hbarApprovals.push(new m.default({spenderAccountId:"string"==typeof t?f.default.fromString(t):t,ownerAccountId:"string"==typeof e?f.default.fromString(e):e,amount:n instanceof y.default?n:new y.default(n)})),this}},{key:"addHbarAllowance",value:function(e,t){return this._requireNotFrozen(),this._hbarApprovals.push(new m.default({spenderAccountId:"string"==typeof e?f.default.fromString(e):e,amount:t instanceof y.default?t:new y.default(t),ownerAccountId:null})),this}},{key:"tokenApprovals",get:function(){return this._tokenApprovals}},{key:"approveTokenAllowance",value:function(e,t,n,r){return this._requireNotFrozen(),this._tokenApprovals.push(new b.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof n?f.default.fromString(n):n,ownerAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof r?h.default.fromNumber(r):r})),this}},{key:"addTokenAllowance",value:function(e,t,n){return this._requireNotFrozen(),this._tokenApprovals.push(new b.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof t?f.default.fromString(t):t,amount:"number"==typeof n?h.default.fromNumber(n):n,ownerAccountId:null})),this}},{key:"addTokenNftAllowance",value:function(e,t){return this._approveTokenNftAllowance(e,null,t)}},{key:"_approveTokenNftAllowance",value:function(e,t,n){this._requireNotFrozen();var r,o="string"==typeof e?p.default.fromString(e):e,a="string"==typeof n?f.default.fromString(n):n,i=!1,u=g(this._nftApprovals);try{for(u.s();!(r=u.n()).done;){var c=r.value;if(0===c.tokenId.compare(o.tokenId)&&0===c.spenderAccountId.compare(a)){null!=c.serialNumbers&&c.serialNumbers.push(o.serial),i=!0;break}}}catch(e){u.e(e)}finally{u.f()}return i||this._nftApprovals.push(new v.default({tokenId:o.tokenId,spenderAccountId:"string"==typeof n?f.default.fromString(n):n,ownerAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:[o.serial],allSerials:!1})),this}},{key:"approveTokenNftAllowance",value:function(e,t,n){return this._approveTokenNftAllowance(e,t,n)}},{key:"_approveAllTokenNftAllowance",value:function(e,t,n,r){return this._requireNotFrozen(),this._nftApprovals.push(new v.default({tokenId:"string"==typeof e?d.default.fromString(e):e,spenderAccountId:"string"==typeof n?f.default.fromString(n):n,ownerAccountId:"string"==typeof t?f.default.fromString(t):t,serialNumbers:null,allSerials:r})),this}},{key:"addAllTokenNftAllowance",value:function(e,t,n){return this._approveAllTokenNftAllowance(e,t,n,!0)}},{key:"approveTokenNftAllowanceAllSerials",value:function(e,t,n){return this._approveAllTokenNftAllowance(e,t,n,!0)}},{key:"_validateChecksums",value:function(e){this._hbarApprovals.map((function(t){return t.spenderAccountId.validateChecksum(e)})),this._tokenApprovals.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e)})),this._nftApprovals.map((function(t){t.tokenId.validateChecksum(e),t.spenderAccountId.validateChecksum(e),null!=t.ownerAccountId&&t.ownerAccountId.validateChecksum(e)}))}},{key:"_execute",value:function(e,t){return e.crypto.approveAllowances(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoApproveAllowance"}},{key:"_makeTransactionData",value:function(){return{cryptoAllowances:this._hbarApprovals.map((function(e){return e._toProtobuf()})),tokenAllowances:this._tokenApprovals.map((function(e){return e._toProtobuf()})),nftAllowances:this._nftApprovals.map((function(e){return e._toProtobuf()}))}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"AccountAllowanceApproveTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoApproveAllowance;return l.default._fromProtobufTransactions(new n({hbarApprovals:(null!=i.cryptoAllowances?i.cryptoAllowances:[]).map((function(e){return m.default._fromProtobuf(e)})),tokenApprovals:(null!=i.tokenAllowances?i.tokenAllowances:[]).map((function(e){return b.default._fromProtobuf(e)})),nftApprovals:(null!=i.nftAllowances?i.nftAllowances:[]).map((function(e){return v.default._fromProtobuf(e)}))}),e,t,r,o,a)}}]),n}(l.default);t.default=I,l.TRANSACTION_REGISTRY.set("cryptoApproveAllowance",I._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(30));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(91)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(30));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(91)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),p=r(n(69)),h=r(n(19)),y=r(n(49));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._key=null,e._initialBalance=null,e._sendRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiveRecordThreshold=d.DEFAULT_RECORD_THRESHOLD,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=new p.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._accountMemo=null,e._maxAutomaticTokenAssociations=null,null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.initialBalance&&e.setInitialBalance(r.initialBalance),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),e}return(0,i.default)(n,[{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"initialBalance",get:function(){return this._initialBalance}},{key:"setInitialBalance",value:function(e){return this._requireNotFrozen(),this._initialBalance=e instanceof l.default?e:new l.default(e),this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"_validateChecksums",value:function(e){null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.createAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoCreateAccount"}},{key:"_makeTransactionData",value:function(){return{key:null!=this._key?this._key._toProtobufKey():null,initialBalance:null!=this._initialBalance?this._initialBalance.toTinybars():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,receiveRecordThreshold:this._receiveRecordThreshold.toTinybars(),sendRecordThreshold:this._sendRecordThreshold.toTinybars(),receiverSigRequired:this._receiverSignatureRequired,memo:this._accountMemo,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?this._maxAutomaticTokenAssociations.toInt():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"AccountCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoCreateAccount;return d.default._fromProtobufTransactions(new n({key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,initialBalance:null!=i.initialBalance?i.initialBalance:void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,accountMemo:null!=i.memo?i.memo:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations?i.maxAutomaticTokenAssociations:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=v,d.TRANSACTION_REGISTRY.set("cryptoCreateAccount",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(14)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._transferAccountId=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.cryptoDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDelete"}},{key:"_makeTransactionData",value:function(){return{deleteAccountID:null!=this._accountId?this._accountId._toProtobuf():null,transferAccountID:null!=this._transferAccountId?this._transferAccountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"AccountDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDelete;return f.default._fromProtobufTransactions(new n({accountId:null!=i.deleteAccountID?l.default._fromProtobuf(i.deleteAccountID):void 0,transferAccountId:null!=i.transferAccountID?l.default._fromProtobuf(i.transferAccountID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("cryptoDelete",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(19)),u=r(n(30)),c=function(){function e(t){(0,o.default)(this,e),this.tokenId=t.tokenId,this.symbol=t.symbol,this.balance=t.balance,this.isKycGranted=t.isKycGranted,this.isFrozen=t.isFrozen,this.automaticAssociation=t.automaticAssociation,Object.freeze(this)}return(0,a.default)(e,[{key:"_toProtobuf",value:function(){return{tokenId:this.tokenId._toProtobuf(),symbol:this.symbol,balance:this.balance,kycStatus:null==this.isKycGranted?0:this.isKycGranted?1:2,freezeStatus:null==this.isFrozen?0:this.isFrozen?1:2,automaticAssociation:this.automaticAssociation}}}],[{key:"_fromProtobuf",value:function(t){var n=u.default._fromProtobuf(t.tokenId),r=null==t.kycStatus||0===t.kycStatus?null:1===t.kycStatus,o=null==t.freezeStatus||0===t.freezeStatus?null:1===t.freezeStatus;return new e({tokenId:n,symbol:t.symbol,balance:null!=t.balance?t.balance instanceof i.default?t.balance:i.default.fromValue(t.balance):i.default.ZERO,isKycGranted:r,isFrozen:o,automaticAssociation:null!=t.automaticAssociation?t.automaticAssociation:null})}}]),e}();t.default=c},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),h=r(n(14)),y=r(n(675)),m=r(n(32));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e}return(0,c.default)(r,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetInfo;return Promise.resolve(y.default._fromProtobuf(r.accountInfo))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetInfo:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"AccountInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetInfo;return new r({accountId:null!=t.accountID?h.default._fromProtobuf(t.accountID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("cryptoGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),f=r(n(14)),d=r(n(367));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getAccountRecords(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetAccountRecords.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.cryptoGetAccountRecords.records;return Promise.resolve(r.map((function(e){return d.default._fromProtobuf({transactionRecord:e})})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetAccountRecords:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"AccountRecordsQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetAccountRecords;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetAccountRecords",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),f=r(n(14)),d=r(n(677));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getStakersByAccountID(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetProxyStakers.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetProxyStakers.stakers;return Promise.resolve((null!=t.proxyStaker?t.proxyStaker:[]).map((function(e){return d.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetProxyStakers:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"AccountStakersQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetProxyStakers;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetProxyStakers",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),f=r(n(14)),d=r(n(50)),p=r(n(69)),h=r(n(19)),y=r(n(49));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,e._key=null,e._receiverSignatureRequired=!1,e._proxyAccountId=null,e._autoRenewPeriod=null,e._expirationTime=null,e._accountMemo=null,e._maxAutomaticTokenAssociations=null,e._aliasKey=null,null!=r.accountId&&e.setAccountId(r.accountId),null!=r.key&&e.setKey(r.key),null!=r.receiverSignatureRequired&&e.setReceiverSignatureRequired(r.receiverSignatureRequired),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.accountMemo&&e.setAccountMemo(r.accountMemo),null!=r.maxAutomaticTokenAssociations&&e.setMaxAutomaticTokenAssociations(r.maxAutomaticTokenAssociations),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"key",get:function(){return this._key}},{key:"setKey",value:function(e){return this._requireNotFrozen(),this._key=e,this}},{key:"receiverSignatureRequired",get:function(){return this._receiverSignatureRequired}},{key:"setReceiverSignatureRequired",value:function(e){return this._requireNotFrozen(),this._receiverSignatureRequired=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId=e,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof Date?d.default.fromDate(e):e,this}},{key:"accountMemo",get:function(){return this._accountMemo}},{key:"setAccountMemo",value:function(e){return this._requireNotFrozen(),this._accountMemo=e,this}},{key:"clearAccountMemo",value:function(){return this._requireNotFrozen(),this._accountMemo=null,this}},{key:"maxAutomaticTokenAssociations",get:function(){return this._maxAutomaticTokenAssociations}},{key:"setMaxAutomaticTokenAssociations",value:function(e){return this._requireNotFrozen(),this._maxAutomaticTokenAssociations="number"==typeof e?h.default.fromNumber(e):e,this}},{key:"aliasKey",get:function(){return null}},{key:"setAliasKey",value:function(e){return this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.updateAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoUpdateAccount"}},{key:"_makeTransactionData",value:function(){return{accountIDToUpdate:null!=this._accountId?this._accountId._toProtobuf():null,key:null!=this._key?this._key._toProtobufKey():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,receiverSigRequiredWrapper:null==this._receiverSignatureRequired?null:{value:this._receiverSignatureRequired},memo:null!=this._accountMemo?{value:this._accountMemo}:null,maxAutomaticTokenAssociations:null!=this._maxAutomaticTokenAssociations?{value:this._maxAutomaticTokenAssociations.toInt()}:null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"AccountUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoUpdateAccount;return l.default._fromProtobufTransactions(new n({accountId:null!=i.accountIDToUpdate?f.default._fromProtobuf(i.accountIDToUpdate):void 0,key:null!=i.key?y.default._fromProtobufKey(i.key):void 0,receiverSignatureRequired:null!=i.receiverSigRequired?i.receiverSigRequired:void 0,proxyAccountId:null!=i.proxyAccountID?f.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,expirationTime:null!=i.expirationTime?d.default._fromProtobuf(i.expirationTime):void 0,accountMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,maxAutomaticTokenAssociations:null!=i.maxAutomaticTokenAssociations&&null!=i.maxAutomaticTokenAssociations.value?h.default.fromNumber(i.maxAutomaticTokenAssociations.value):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=v,l.TRANSACTION_REGISTRY.set("cryptoUpdateAccount",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(678)),c=r(n(679)),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39)),l=r(n(68)),f=n(133);function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}var p=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._fileId=null,null!=t.fileId&&this.setFileId(t.fileId),this._limit=null,null!=t.limit&&this.setLimit(t.limit),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return f.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},this._addresses=[],this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0}return(0,i.default)(e,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this._limit=e,this}},{key:"setMaxAttempts",value:function(e){this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this._maxBackoff=e}},{key:"execute",value:function(e,t){var n=this;return new Promise((function(r,o){n._makeServerStreamRequest(e,r,o,t)}))}},{key:"_makeServerStreamRequest",value:function(e,t,n,r){var o=this,a=s.AddressBookQuery.encode({fileId:null!=this._fileId?this._fileId._toProtobuf():null,limit:this._limit}).finish();e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("NetworkService","getNodes",a,(function(e){o._addresses.push(u.default._fromProtobuf(s.NodeAddress.decode(e))),null!=o._limit&&o._limit>0&&(o._limit=o._limit-1)}),(function(a){var i=a instanceof Error?a.message:a.details;if(o._attempt0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._address=null,null!=t.address&&this.setAddress(t.address),this._port=null,null!=t.port&&this.setPort(t.port)}return(0,a.default)(e,[{key:"address",get:function(){return this.address}},{key:"setAddress",value:function(e){return this._address=e,this}},{key:"port",get:function(){return this._port}},{key:"setPort",value:function(e){return this._port=e,this}},{key:"_toProtobuf",value:function(){return{ipAddressV4:null!=this._address?this._address._toProtobuf():null,port:this._port}}},{key:"toString",value:function(){return JSON.stringify(this.toJSON())}},{key:"toJSON",value:function(){return{address:null!=this._address?this._address.toString():null,port:null!=this._port?this._port.toString():null}}}],[{key:"_fromProtobuf",value:function(t){return new e({address:null!=t.ipAddressV4?i.default._fromProtobuf(t.ipAddressV4):void 0,port:null!=t.port?t.port:void 0})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(1389)),u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._network=null,null!=t.network&&this.setNetwork(t.network),this._host=null,null!=t.host&&this.setHost(t.host)}return(0,a.default)(e,[{key:"newtork",get:function(){return this._network}},{key:"setNetwork",value:function(e){return this._network=e,this}},{key:"host",get:function(){return this._host}},{key:"setHost",value:function(e){return this._host=e,this}},{key:"_toProtobuf",value:function(){return Uint8Array.of(null!=this._network&&null!=this._network._left?this._network._left:0,null!=this._network&&null!=this._network.right?this._network.right:0,null!=this._host&&null!=this._host.left?this._host.left:0,null!=this._host&&null!=this._host.right?this._host.right:0)}},{key:"toString",value:function(){return null!=this._network&&null!=this._host?"".concat(this._network.toString(),".").concat(this._host.toString()):""}}],[{key:"_fromProtobuf",value:function(t){return new e({network:(new i.default).setLeft(t[0]).setRight(t[1]),host:(new i.default).setLeft(t[2]).setRight(t[3])})}}]),e}();t.default=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,o.default)(this,e),this._left=null,null!=t.left&&this.setLeft(t.left),this._right=null,null!=t.right&&this.setRight(t.right)}return(0,a.default)(e,[{key:"left",get:function(){return this._left}},{key:"setLeft",value:function(e){return this._left=e,this}},{key:"right",get:function(){return this._right}},{key:"setRight",value:function(e){return this._right=e,this}},{key:"toString",value:function(){return null!=this._left&&null!=this._right?"".concat(this._left.toString(),".").concat(this._right.toString()):""}}]),e}();t.default=i},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),f=r(n(61));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractGetBytecode(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractGetBytecodeResponse.header}},{key:"_mapResponse",value:function(e){var t=e.contractGetBytecodeResponse;return Promise.resolve(null!=t.bytecode?t.bytecode:new Uint8Array)}},{key:"_onMakeRequest",value:function(e){return{contractGetBytecode:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"ContractByteCodeQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetBytecode;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("contractGetBytecode",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),f=r(n(61)),d=r(n(284)),p=r(n(369)),h=r(n(19));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,null!=r.contractId&&e.setContractId(r.contractId),e._gas=null,null!=r.gas&&e.setGas(r.gas),e._functionParameters=null,null!=r.functionParameters&&(r.functionParameters instanceof Uint8Array?e.setFunctionParameters(r.functionParameters):e.setFunction(r.functionParameters.name,r.functionParameters.parameters)),e._maxResultSize=null,null!=r.maxResultSize&&e.setMaxResultSize(r.maxResultSize),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._functionParameters=(null!=t?t:new d.default)._build(e),this}},{key:"setMaxResultSize",value:function(e){return this._maxResultSize=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallLocalMethod(t)}},{key:"_mapResponseHeader",value:function(e){return e.contractCallLocal.header}},{key:"_mapResponse",value:function(e){var t=e.contractCallLocal;return Promise.resolve(p.default._fromProtobuf(t.functionResult))}},{key:"_onMakeRequest",value:function(e){return{contractCallLocal:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,maxResultSize:this._maxResultSize,functionParameters:this._functionParameters}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"ContractCallQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractCallLocal;return new n({contractId:null!=t.contractID?f.default._fromProtobuf(t.contractID):void 0,gas:null!=t.gas?t.gas:void 0,functionParameters:null!=t.functionParameters?t.functionParameters:void 0,maxResultSize:null!=t.maxResultSize?t.maxResultSize:void 0})}}]),n}(l.default);t.default=b,l.QUERY_REGISTRY.set("contractCallLocal",b._fromProtobuf)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.keccak256=void 0;var r,o="0123456789abcdef".split(""),a=[1,256,65536,16777216],i=[0,8,16,24],u=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],c=function(e){var t,n,r,o,a,i,c,s,l,f,d,p,h,y,m,b,v,k,g,_,w,I,A,T,O,P,E,S,R,D,C,N,B,M,j,x,F,U,L,G,K,z,Q,H,V,W,q,Y,Z,J,X,$,ee,te,ne,re,oe,ae,ie,ue,ce,se,le;for(r=0;r<48;r+=2)o=e[0]^e[10]^e[20]^e[30]^e[40],a=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],c=e[3]^e[13]^e[23]^e[33]^e[43],s=e[4]^e[14]^e[24]^e[34]^e[44],l=e[5]^e[15]^e[25]^e[35]^e[45],f=e[6]^e[16]^e[26]^e[36]^e[46],d=e[7]^e[17]^e[27]^e[37]^e[47],t=(p=e[8]^e[18]^e[28]^e[38]^e[48])^(i<<1|c>>>31),n=(h=e[9]^e[19]^e[29]^e[39]^e[49])^(c<<1|i>>>31),e[0]^=t,e[1]^=n,e[10]^=t,e[11]^=n,e[20]^=t,e[21]^=n,e[30]^=t,e[31]^=n,e[40]^=t,e[41]^=n,t=o^(s<<1|l>>>31),n=a^(l<<1|s>>>31),e[2]^=t,e[3]^=n,e[12]^=t,e[13]^=n,e[22]^=t,e[23]^=n,e[32]^=t,e[33]^=n,e[42]^=t,e[43]^=n,t=i^(f<<1|d>>>31),n=c^(d<<1|f>>>31),e[4]^=t,e[5]^=n,e[14]^=t,e[15]^=n,e[24]^=t,e[25]^=n,e[34]^=t,e[35]^=n,e[44]^=t,e[45]^=n,t=s^(p<<1|h>>>31),n=l^(h<<1|p>>>31),e[6]^=t,e[7]^=n,e[16]^=t,e[17]^=n,e[26]^=t,e[27]^=n,e[36]^=t,e[37]^=n,e[46]^=t,e[47]^=n,t=f^(o<<1|a>>>31),n=d^(a<<1|o>>>31),e[8]^=t,e[9]^=n,e[18]^=t,e[19]^=n,e[28]^=t,e[29]^=n,e[38]^=t,e[39]^=n,e[48]^=t,e[49]^=n,y=e[0],m=e[1],W=e[11]<<4|e[10]>>>28,q=e[10]<<4|e[11]>>>28,S=e[20]<<3|e[21]>>>29,R=e[21]<<3|e[20]>>>29,ue=e[31]<<9|e[30]>>>23,ce=e[30]<<9|e[31]>>>23,z=e[40]<<18|e[41]>>>14,Q=e[41]<<18|e[40]>>>14,M=e[2]<<1|e[3]>>>31,j=e[3]<<1|e[2]>>>31,b=e[13]<<12|e[12]>>>20,v=e[12]<<12|e[13]>>>20,Y=e[22]<<10|e[23]>>>22,Z=e[23]<<10|e[22]>>>22,D=e[33]<<13|e[32]>>>19,C=e[32]<<13|e[33]>>>19,se=e[42]<<2|e[43]>>>30,le=e[43]<<2|e[42]>>>30,te=e[5]<<30|e[4]>>>2,ne=e[4]<<30|e[5]>>>2,x=e[14]<<6|e[15]>>>26,F=e[15]<<6|e[14]>>>26,k=e[25]<<11|e[24]>>>21,g=e[24]<<11|e[25]>>>21,J=e[34]<<15|e[35]>>>17,X=e[35]<<15|e[34]>>>17,N=e[45]<<29|e[44]>>>3,B=e[44]<<29|e[45]>>>3,T=e[6]<<28|e[7]>>>4,O=e[7]<<28|e[6]>>>4,re=e[17]<<23|e[16]>>>9,oe=e[16]<<23|e[17]>>>9,U=e[26]<<25|e[27]>>>7,L=e[27]<<25|e[26]>>>7,_=e[36]<<21|e[37]>>>11,w=e[37]<<21|e[36]>>>11,$=e[47]<<24|e[46]>>>8,ee=e[46]<<24|e[47]>>>8,H=e[8]<<27|e[9]>>>5,V=e[9]<<27|e[8]>>>5,P=e[18]<<20|e[19]>>>12,E=e[19]<<20|e[18]>>>12,ae=e[29]<<7|e[28]>>>25,ie=e[28]<<7|e[29]>>>25,G=e[38]<<8|e[39]>>>24,K=e[39]<<8|e[38]>>>24,I=e[48]<<14|e[49]>>>18,A=e[49]<<14|e[48]>>>18,e[0]=y^~b&k,e[1]=m^~v&g,e[10]=T^~P&S,e[11]=O^~E&R,e[20]=M^~x&U,e[21]=j^~F&L,e[30]=H^~W&Y,e[31]=V^~q&Z,e[40]=te^~re&ae,e[41]=ne^~oe&ie,e[2]=b^~k&_,e[3]=v^~g&w,e[12]=P^~S&D,e[13]=E^~R&C,e[22]=x^~U&G,e[23]=F^~L&K,e[32]=W^~Y&J,e[33]=q^~Z&X,e[42]=re^~ae&ue,e[43]=oe^~ie&ce,e[4]=k^~_&I,e[5]=g^~w&A,e[14]=S^~D&N,e[15]=R^~C&B,e[24]=U^~G&z,e[25]=L^~K&Q,e[34]=Y^~J&$,e[35]=Z^~X&ee,e[44]=ae^~ue&se,e[45]=ie^~ce&le,e[6]=_^~I&y,e[7]=w^~A&m,e[16]=D^~N&T,e[17]=C^~B&O,e[26]=G^~z&M,e[27]=K^~Q&j,e[36]=J^~$&H,e[37]=X^~ee&V,e[46]=ue^~se&te,e[47]=ce^~le&ne,e[8]=I^~y&b,e[9]=A^~m&v,e[18]=N^~T&P,e[19]=B^~O&E,e[28]=z^~M&x,e[29]=Q^~j&F,e[38]=$^~H&W,e[39]=ee^~V&q,e[48]=se^~te&re,e[49]=le^~ne&oe,e[0]^=u[r],e[1]^=u[r+1]},s=(r=256,function(e){var t;if("0x"===e.slice(0,2)){t=[];for(var n=2,u=e.length;n>2]|=t[h]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(s[n>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=l){for(e.start=n-l,e.block=s[f],n=0;n>2]|=a[3&n],e.lastByteIndex===l)for(s[0]=s[f],n=1;n>4&15]+o[15&y]+o[y>>12&15]+o[y>>8&15]+o[y>>20&15]+o[y>>16&15]+o[y>>28&15]+o[y>>24&15];b%f==0&&(c(p),n=0)}return"0x"+m}(function(e){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(e<<1)>>5,outputBlocks:e>>5,s:(t=[0,0,0,0,0,0,0,0,0,0],[].concat(t,t,t,t,t))};var t}(r),t)});t.keccak256=s},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(681)),l=r(n(682)),f=r(n(683)),d=r(n(684)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(102));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}var y=function(){function e(){(0,u.default)(this,e),this._bytecode=null,this._contractCreate=new d.default}var t;return(0,c.default)(e,[{key:"bytecode",get:function(){return this._bytecode}},{key:"setBytecode",value:function(e){return this._bytecode=e instanceof Uint8Array?e:p.encode(e),this}},{key:"adminKey",get:function(){return this._contractCreate.adminKey}},{key:"setAdminKey",value:function(e){return this._contractCreate.setAdminKey(e),this}},{key:"gas",get:function(){return this._contractCreate.gas}},{key:"setGas",value:function(e){return this._contractCreate.setGas(e),this}},{key:"initialBalance",get:function(){return this._contractCreate.initialBalance}},{key:"setInitialBalance",value:function(e){return this._contractCreate.setInitialBalance(e),this}},{key:"proxyAccountId",get:function(){return this._contractCreate.proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._contractCreate.setProxyAccountId(e),this}},{key:"autoRenewPeriod",get:function(){return this._contractCreate.autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._contractCreate.setAutoRenewPeriod(e),this}},{key:"constructorParameters",get:function(){return this._contractCreate.constructorParameters}},{key:"setConstructorParameters",value:function(e){return this._contractCreate.setConstructorParameters(e),this}},{key:"contractMemo",get:function(){return this._contractCreate.contractMemo}},{key:"setContractMemo",value:function(e){return this._contractCreate.setContractMemo(e),this}},{key:"execute",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,o,i;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=this._bytecode){e.next=2;break}throw new Error("cannot create contract with no bytecode");case 2:return r=t.operatorPublicKey,e.next=5,(new s.default).setKeys(null!=r?[r]:[]).setContents(this._bytecode.subarray(0,Math.min(this._bytecode.length,2048))).execute(t,n);case 5:return e.next=7,e.sent.getReceipt(t);case 7:if(o=e.sent.fileId,!(this._bytecode.length>2048)){e.next=13;break}return e.next=11,(new l.default).setFileId(o).setContents(this._bytecode.subarray(2048)).execute(t,n);case 11:return e.next=13,e.sent.getReceipt(t);case 13:return e.next=15,this._contractCreate.setBytecodeFileId(o).execute(t);case 15:return i=e.sent,e.next=18,i.getReceipt(t);case 18:if(null==r){e.next=23;break}return e.next=21,(new f.default).setFileId(o).execute(t,n);case 21:return e.next=23,e.sent.getReceipt(t);case 23:return e.abrupt("return",i);case 24:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})}]),e}();t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),f=r(n(61)),d=r(n(14));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._transferAccountId=null,e._transferContractId=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.transferAccountId&&e.setTransferAccountId(r.transferAccountId),null!=r.transferContractId&&e.setTransferContractId(r.transferContractId),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"transferContractId",get:function(){return this._transferContractId}},{key:"setTransferContractId",value:function(e){return this._requireNotFrozen(),this._transferContractId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"transferAccountId",get:function(){return this._transferAccountId}},{key:"setTransferAccountId",value:function(e){return this._requireNotFrozen(),this._transferAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._transferAccountId&&this._transferAccountId.validateChecksum(e),null!=this._transferContractId&&this._transferContractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.deleteContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractDeleteInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,transferAccountID:this._transferAccountId?this._transferAccountId._toProtobuf():null,transferContractID:null!=this._transferContractId?this._transferContractId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ContractDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractDeleteInstance;return l.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,transferAccountId:null!=i.transferAccountID?d.default._fromProtobuf(i.transferAccountID):void 0,transferContractId:null!=i.transferContractID?f.default._fromProtobuf(i.transferContractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("contractDeleteInstance",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),d=r(n(61)),p=r(n(284)),h=r(n(19));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._gas=null,e._amount=null,e._functionParameters=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.gas&&e.setGas(r.gas),null!=r.amount&&e.setPayableAmount(r.amount),null!=r.functionParameters?e.setFunctionParameters(r.functionParameters):null!=r.function&&e.setFunction(r.function.name,r.function.parameters),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"gas",get:function(){return this._gas}},{key:"setGas",value:function(e){return this._requireNotFrozen(),this._gas=e instanceof h.default?e:h.default.fromValue(e),this}},{key:"payableAmount",get:function(){return this._amount}},{key:"setPayableAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof l.default?e:new l.default(e),this}},{key:"functionParameters",get:function(){return this._functionParameters}},{key:"setFunctionParameters",value:function(e){return this._requireNotFrozen(),this._functionParameters=e,this}},{key:"setFunction",value:function(e,t){return this._requireNotFrozen(),this._functionParameters=null!=t?t._build(e):(new p.default)._build(e),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.contractCallMethod(t)}},{key:"_getTransactionDataCase",value:function(){return"contractCall"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,gas:this._gas,amount:null!=this._amount?this._amount.toTinybars():null,functionParameters:this._functionParameters}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ContractExecuteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractCall;return f.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,gas:null!=i.gas?i.gas:void 0,amount:i.amount?i.amount:void 0,functionParameters:null!=i.functionParameters?i.functionParameters:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=b,f.TRANSACTION_REGISTRY.set("contractCall",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),h=r(n(61)),y=r(n(685)),m=r(n(32));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._contractId=null,null!=t.contractId&&e.setContractId(t.contractId),e}return(0,c.default)(r,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._contractId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.getContractInfo(t)}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_mapResponseHeader",value:function(e){return e.contractGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.contractGetInfo;return Promise.resolve(y.default._fromProtobuf(r.contractInfo))}},{key:"_onMakeRequest",value:function(e){return{contractGetInfo:{header:e,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"ContractInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.contractGetInfo;return new r({contractId:null!=t.contractID?h.default._fromProtobuf(t.contractID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("contractGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(14)),f=r(n(61)),d=r(n(68)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),h=r(n(69)),y=r(n(50)),m=r(n(49));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._contractId=null,e._expirationTime=null,e._adminKey=null,e._proxyAccountId=null,e._autoRenewPeriod=null,e._bytecodeFileId=null,e._contractMemo=null,null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.proxyAccountId&&e.setProxyAccountId(r.proxyAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.bytecodeFileId&&e.setBytecodeFileId(r.bytecodeFileId),null!=r.contractMemo&&e.setContractMemo(r.contractMemo),e}return(0,i.default)(n,[{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"proxyAccountId",get:function(){return this._proxyAccountId}},{key:"setProxyAccountId",value:function(e){return this._requireNotFrozen(),this._proxyAccountId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"bytecodeFileId",get:function(){return this._bytecodeFileId}},{key:"setBytecodeFileId",value:function(e){return console.warn("Deprecated: there is no replacement"),this._requireNotFrozen(),this._bytecodeFileId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"contractMemo",get:function(){return this._contractMemo}},{key:"setContractMemo",value:function(e){return this._requireNotFrozen(),this._contractMemo=e,this}},{key:"clearContractMemo",value:function(){return this._requireNotFrozen(),this._contractMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._contractId&&this._contractId.validateChecksum(e),null!=this._bytecodeFileId&&this._bytecodeFileId.validateChecksum(e),null!=this._proxyAccountId&&this._proxyAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.smartContract.updateContract(t)}},{key:"_getTransactionDataCase",value:function(){return"contractUpdateInstance"}},{key:"_makeTransactionData",value:function(){return{contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,proxyAccountID:null!=this._proxyAccountId?this._proxyAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,fileID:this._bytecodeFileId?this._bytecodeFileId._toProtobuf():null,memoWrapper:null!=this._contractMemo?{value:this._contractMemo}:null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ContractUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].contractUpdateInstance,u=void 0;null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds&&(u=i.autoRenewPeriod.seconds);var c=void 0;return null!=i.memoWrapper&&null!=i.memoWrapper.value&&(c=i.memoWrapper.value),p.default._fromProtobufTransactions(new n({contractId:null!=i.contractID?f.default._fromProtobuf(i.contractID):void 0,bytecodeFileId:null!=i.fileID?d.default._fromProtobuf(i.fileID):void 0,expirationTime:null!=i.expirationTime?y.default._fromProtobuf(i.expirationTime):void 0,adminKey:null!=i.adminKey?m.default._fromProtobufKey(i.adminKey):void 0,proxyAccountId:null!=i.proxyAccountID?l.default._fromProtobuf(i.proxyAccountID):void 0,autoRenewPeriod:u,contractMemo:c}),e,t,r,o,a)}}]),n}(p.default);t.default=k,p.TRANSACTION_REGISTRY.set("contractUpdateInstance",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(131)),f=r(n(61)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(84));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(e,r,o,i){return(0,a.default)(this,n),t.call(this,e,r,o,i)}return(0,i.default)(n,[{key:"clone",value:function(){var e=new n(this);return e._checksum=this._checksum,e}},{key:"_toProtobufKey",value:function(){return{delegatableContractId:this._toProtobuf()}}}],[{key:"fromEvmAddress",value:function(e,t,r){return new n(e,t,0,d.decode(r))}},{key:"fromString",value:function(e){return new n(f.default.fromString(e))}},{key:"_fromProtobuf",value:function(e){return new n(f.default._fromProtobuf(e))}},{key:"fromBytes",value:function(e){return new n(f.default.fromBytes(e))}},{key:"fromSolidityAddress",value:function(e){return new n(f.default.fromSolidityAddress(e))}},{key:"__fromProtobufKey",value:function(e){return n._fromProtobuf(e)}}]),n}(f.default);t.default=y,l.default.delegateContractId=function(e){return y.__fromProtobufKey(e)}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(366)),c=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}var l=function(){function e(t){(0,a.default)(this,e),this.currentRate=t.currentRate,this.nextRate=t.nextRate,Object.freeze(this)}return(0,i.default)(e,[{key:"_toProtobuf",value:function(){return{currentRate:this.currentRate._toProtobuf(),nextRate:this.nextRate._toProtobuf()}}}],[{key:"_fromProtobuf",value:function(t){return new e({currentRate:u.default._fromProtobuf(t.currentRate),nextRate:u.default._fromProtobuf(t.nextRate)})}},{key:"fromBytes",value:function(t){return e._fromProtobuf(c.ExchangeRateSet.decode(t))}}]),e}();t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),f=r(n(68));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,null!=r.fileId&&e.setFileId(r.fileId),e}return(0,i.default)(n,[{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileContent(t)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_mapResponseHeader",value:function(e){return e.fileGetContents.header}},{key:"_mapResponse",value:function(e){var t=e.fileGetContents.fileContents.contents;return Promise.resolve(t)}},{key:"_onMakeRequest",value:function(e){return{fileGetContents:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"FileContentsQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetContents;return new n({fileId:null!=t.fileID?f.default._fromProtobuf(t.fileID):void 0})}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("fileGetContents",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),h=r(n(68)),y=r(n(686)),m=r(n(32));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._fileId=null,null!=t.fileId&&e.setFileId(t.fileId),e}return(0,c.default)(r,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._fileId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.getFileInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.fileGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.fileGetInfo;return Promise.resolve(y.default._fromProtobuf(r.fileInfo))}},{key:"_onMakeRequest",value:function(e){return{fileGetInfo:{header:e,fileID:null!=this._fileId?this._fileId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"FileInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.fileGetInfo;return new r({fileId:null!=t.fileID?h.default._fromProtobuf(t.fileID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("fileGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=b(n(25)),f=r(n(50)),d=b(n(102)),p=r(n(68)),h=r(n(49)),y=r(n(161));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var k=function(e){(0,u.default)(n,e);var t=v(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._keys=null,e._expirationTime=null,e._contents=null,e._fileMemo=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.keys&&e.setKeys(r.keys),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.contents&&e.setContents(r.contents),null!=r.fileMemo&&e.setFileMemo(r.fileMemo),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId="string"==typeof e?p.default.fromString(e):e.clone(),this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){if(this._requireNotFrozen(),e instanceof y.default&&null!=e.threshold)throw new Error("Cannot set threshold key as file key");return this._keys=e instanceof y.default?e.toArray():e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof f.default?e:f.default.fromDate(e),this}},{key:"contents",get:function(){return this._contents}},{key:"setContents",value:function(e){return this._requireNotFrozen(),this._contents=e instanceof Uint8Array?e:d.encode(e),this}},{key:"fileMemo",get:function(){return this._fileMemo}},{key:"setFileMemo",value:function(e){return this._requireNotFrozen(),this._fileMemo=e,this}},{key:"clearFileMemo",value:function(){return this._requireNotFrozen(),this._fileMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._fileId&&this._fileId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.file.updateFile(t)}},{key:"_getTransactionDataCase",value:function(){return"fileUpdate"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null,contents:this._contents,memo:null!=this._fileMemo?{value:this._fileMemo}:null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"FileUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].fileUpdate;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?p.default._fromProtobuf(i.fileID):void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return h.default._fromProtobufKey(e)})):void 0,expirationTime:null!=i.expirationTime?f.default._fromProtobuf(i.expirationTime):void 0,contents:null!=i.contents?i.contents:void 0,fileMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=k,l.TRANSACTION_REGISTRY.set("fileUpdate",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=m(n(25)),f=r(n(50)),d=r(n(68)),p=m(n(84)),h=r(n(1404));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._startTime=null,e._startTimestamp=null,e._endTime=null,e._fileId=null,e._fileHash=null,e._freezeType=null,null!=r.startTime&&e.setStartTime(r.startTime.hour,r.startTime.minute),null!=r.endTime&&e.setEndTime(r.endTime.hour,r.endTime.minute),null!=r.startTimestamp&&e.setStartTimestamp(r.startTimestamp),null!=r.updateFileId&&e.setUpdateFileId(r.updateFileId),null!=r.fileId&&e.setFileId(r.fileId),null!=r.fileHash&&e.setFileHash(r.fileHash),null!=r.freezeType&&e.setFreezeType(r.freezeType),e}return(0,i.default)(n,[{key:"startTime",get:function(){return null}},{key:"setStartTime",value:function(e,t){if(this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._startTime={hour:Number(n[0]),minute:Number(n[1])}}else this._startTime={hour:e,minute:t};return this}},{key:"startTimestamp",get:function(){return this._startTimestamp}},{key:"setStartTimestamp",value:function(e){return this._requireNotFrozen(),this._startTimestamp=e,this}},{key:"endTime",get:function(){return console.warn("`FreezeTransaction.endTime` is deprecated"),this._endTime}},{key:"setEndTime",value:function(e,t){if(console.warn("`FreezeTransaction.endTime` is deprecated"),this._requireNotFrozen(),"string"==typeof e){var n=e.split(":");this._endTime={hour:Number(n[0]),minute:Number(n[1])}}else this._endTime={hour:e,minute:t};return this}},{key:"updateFileId",get:function(){return this.fileId}},{key:"setUpdateFileId",value:function(e){return this.setFileId(e)}},{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e,this}},{key:"fileHash",get:function(){return this._fileHash}},{key:"setFileHash",value:function(e){return this._requireNotFrozen(),this._fileHash="string"==typeof e?p.decode(e):e,this}},{key:"freezeType",get:function(){return this._freezeType}},{key:"setFreezeType",value:function(e){return this._requireNotFrozen(),this._freezeType=e,this}},{key:"_getTransactionDataCase",value:function(){return"freeze"}},{key:"_makeTransactionData",value:function(){return{startTime:null!=this._startTimestamp?this._startTimestamp._toProtobuf():null,updateFile:null!=this._fileId?this._fileId._toProtobuf():null,fileHash:this._fileHash,freezeType:null!=this._freezeType?this._freezeType.valueOf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"FreezeTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].freeze;return l.default._fromProtobufTransactions(new n({startTime:null!=i.startHour&&null!=i.startMin?{hour:i.startHour,minute:i.startMin}:void 0,endTime:null!=i.endHour&&null!=i.endMin?{hour:i.endHour,minute:i.endMin}:void 0,startTimestamp:null!=i.startTime?f.default._fromProtobuf(i.startTime):void 0,updateFileId:null!=i.updateFile?d.default._fromProtobuf(i.updateFile):void 0,fileHash:null!=i.fileHash?i.fileHash:void 0,freezeType:null!=i.freezeType?h.default._fromCode(i.freezeType):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=v,l.TRANSACTION_REGISTRY.set("freeze",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=function(){function e(t){(0,o.default)(this,e),this._code=t,Object.freeze(this)}return(0,a.default)(e,[{key:"toString",value:function(){switch(this){case e.UnknownFreezeType:return"UNKNOWN_FREEZE_TYPE";case e.FreezeOnly:return"FREEZE_ONLY";case e.PrepareUpgrade:return"PREPARE_UPGRADE";case e.FreezeUpgrade:return"FREEZE_UPGRADE";case e.FreezeAbort:return"FREEZE_ABORT";case e.TelemetryUpgrade:return"TELEMETRY_UPGRADE";default:return"UNKNOWN (".concat(this._code,")")}}},{key:"valueOf",value:function(){return this._code}}],[{key:"_fromCode",value:function(t){switch(t){case 0:return e.UnknownFreezeType;case 1:return e.FreezeOnly;case 2:return e.PrepareUpgrade;case 3:return e.FreezeUpgrade;case 4:return e.FreezeAbort;case 5:return e.TelemetryUpgrade;default:throw new Error("(BUG) Status.fromCode() does not handle code: ".concat(t))}}}]),e}();t.default=i,i.UnknownFreezeType=new i(0),i.FreezeOnly=new i(1),i.PrepareUpgrade=new i(2),i.FreezeUpgrade=new i(3),i.FreezeAbort=new i(4),i.TelemetryUpgrade=new i(5)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),f=r(n(14)),d=r(n(69)),p=r(n(49)),h=r(n(161));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._keys=null,e._duration=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.keys&&e.setKeys(r.keys),null!=r.duration&&e.setDuration(r.duration),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"keys",get:function(){return this._keys}},{key:"setKeys",value:function(e){return this._requireNotFrozen(),this._keys=e instanceof h.default?e.toArray():e,this}},{key:"duration",get:function(){return this._duration}},{key:"setDuration",value:function(e){return this._requireNotFrozen(),this._duration=e instanceof d.default?e:new d.default(e),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.addLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoAddLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHash:{hash:this._hash,keys:null!=this._keys?{keys:this._keys.map((function(e){return e._toProtobufKey()}))}:void 0,duration:null!=this._duration?this._duration._toProtobuf():null,accountId:null!=this._accountId?this._accountId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"LiveHashAddTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoAddLiveHash.liveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.hash?i.hash:void 0,keys:null!=i.keys&&null!=i.keys.keys?i.keys.keys.map((function(e){return p.default._fromProtobufKey(e)})):void 0,duration:null!=i.duration&&null!=i.duration.seconds?i.duration.seconds:void 0,accountId:null!=i.accountId?f.default._fromProtobuf(i.accountId):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=b,l.TRANSACTION_REGISTRY.set("cryptoAddLiveHash",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),f=r(n(14));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._hash=null,e._accountId=null,null!=r.hash&&e.setHash(r.hash),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"hash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._requireNotFrozen(),this._hash=e,this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.deleteLiveHash(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoDeleteLiveHash"}},{key:"_makeTransactionData",value:function(){return{liveHashToDelete:this._hash,accountOfLiveHash:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"LiveHashDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoDeleteLiveHash;return l.default._fromProtobufTransactions(new n({hash:null!=i.liveHashToDelete?i.liveHashToDelete:void 0,accountId:null!=i.accountOfLiveHash?f.default._fromProtobuf(i.accountOfLiveHash):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("cryptoDeleteLiveHash",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),f=r(n(14)),d=r(n(370));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._accountId=null,null!=r.accountId&&e.setAccountId(r.accountId),e._hash=null,null!=r.hash&&e.setHash(r.hash),e}return(0,i.default)(n,[{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._accountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"liveHash",get:function(){return this._hash}},{key:"setHash",value:function(e){return this._hash=e,this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.crypto.getLiveHash(t)}},{key:"_mapResponseHeader",value:function(e){return e.cryptoGetLiveHash.header}},{key:"_mapResponse",value:function(e){var t=e.cryptoGetLiveHash;return Promise.resolve(d.default._fromProtobuf(t.liveHash))}},{key:"_onMakeRequest",value:function(e){return{cryptoGetLiveHash:{header:e,accountID:null!=this._accountId?this._accountId._toProtobuf():null,hash:this._hash}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"LiveHashQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.cryptoGetLiveHash;return new n({accountId:null!=t.accountID?f.default._fromProtobuf(t.accountID):void 0,hash:null!=t.hash?t.hash:void 0})}}]),n}(l.default);t.default=y,l.QUERY_REGISTRY.set("cryptoGetLiveHash",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),f=r(n(687));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){return(0,a.default)(this,n),t.call(this)}return(0,i.default)(n,[{key:"_execute",value:function(e,t){return e.network.getVersionInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.networkGetVersionInfo.header}},{key:"_mapResponse",value:function(e){var t=e.networkGetVersionInfo;return Promise.resolve(f.default._fromProtobuf(t))}},{key:"_onMakeRequest",value:function(e){return{networkGetVersionInfo:{header:e}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"NetworkVersionInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){return new n}}]),n}(l.default);t.default=h,l.QUERY_REGISTRY.set("networkGetVersionInfo",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(14)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),d=r(n(49)),p=r(n(32));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._scheduledTransaction=null,e._payerAccountId=null,e._scheduleMemo=null,e._scheduledSignerPublicKeys=new Set,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.payerAccountID&&e.setPayerAccountId(r.payerAccountID),null!=r.scheduleMemo&&e.setScheduleMemo(r.scheduleMemo),e._defaultMaxTransactionFee=new p.default(5),e}return(0,i.default)(n,[{key:"_setScheduledTransaction",value:function(e){return this._scheduledTransaction=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"payerAccountId",get:function(){return this._payerAccountId}},{key:"setPayerAccountId",value:function(e){return this._requireNotFrozen(),this._payerAccountId=e,this}},{key:"setScheduleMemo",value:function(e){return this._requireNotFrozen(),this._scheduleMemo=e,this}},{key:"getScheduleMemo",get:function(){return this._requireNotFrozen(),this._scheduleMemo}},{key:"setScheduledTransaction",value:function(e){return this._requireNotFrozen(),e._requireNotFrozen(),this._scheduledTransaction=e.schedule()._scheduledTransaction,this}},{key:"_validateChecksums",value:function(e){null!=this._payerAccountId&&this._payerAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.createSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleCreate"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,payerAccountID:null!=this._payerAccountId?this._payerAccountId._toProtobuf():null,scheduledTransactionBody:null!=this._scheduledTransaction?this._scheduledTransaction._getScheduledTransactionBody():null,memo:this._scheduleMemo}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ScheduleCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleCreate;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?d.default._fromProtobufKey(i.adminKey):void 0,payerAccountID:null!=i.payerAccountID?l.default._fromProtobuf(i.payerAccountID):void 0,scheduleMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("scheduleCreate",m._fromProtobuf),f.SCHEDULE_CREATE_TRANSACTION.push((function(){return new m}))},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(164)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),d=r(n(32));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e._defaultMaxTransactionFee=new d.default(5),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.deleteSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleDelete"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ScheduleDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleDelete;return f.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("scheduleDelete",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),h=r(n(164)),y=r(n(689)),m=r(n(32));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._scheduleId=null,null!=t.scheduleId&&e.setScheduleId(t.scheduleId),e}return(0,c.default)(r,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._scheduleId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.getScheduleInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.scheduleGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.scheduleGetInfo;return Promise.resolve(y.default._fromProtobuf(r.scheduleInfo))}},{key:"_onMakeRequest",value:function(e){return{scheduleGetInfo:{header:e,scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"ScheduleInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.scheduleGetInfo;return new r({scheduleId:null!=t.scheduleID?h.default._fromProtobuf(t.scheduleID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("scheduleGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(164)),f=r(n(32)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._scheduleId=null,null!=r.scheduleId&&e.setScheduleId(r.scheduleId),e._defaultMaxTransactionFee=new f.default(5),e}return(0,i.default)(n,[{key:"scheduleId",get:function(){return this._scheduleId}},{key:"setScheduleId",value:function(e){return this._requireNotFrozen(),this._scheduleId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._scheduleId&&this._scheduleId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.schedule.signSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"scheduleSign"}},{key:"_makeTransactionData",value:function(){return{scheduleID:null!=this._scheduleId?this._scheduleId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"ScheduleSignTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].scheduleSign;return d.default._fromProtobufTransactions(new n({scheduleId:null!=i.scheduleID?l.default._fromProtobuf(i.scheduleID):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("scheduleSign",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),f=r(n(68)),d=r(n(61)),p=r(n(50));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,e._expirationTime=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e,this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemDelete(t):e.smartContract.systemDelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemDelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null,expirationTime:null!=this._expirationTime?this._expirationTime._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"SystemDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemDelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0,expirationTime:null!=i.expirationTime?p.default._fromProtobuf(i.expirationTime):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=m,l.TRANSACTION_REGISTRY.set("systemDelete",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),f=r(n(68)),d=r(n(61));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._fileId=null,e._contractId=null,null!=r.fileId&&e.setFileId(r.fileId),null!=r.contractId&&e.setContractId(r.contractId),e}return(0,i.default)(n,[{key:"fileId",get:function(){return this._fileId}},{key:"setFileId",value:function(e){return this._requireNotFrozen(),this._fileId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"contractId",get:function(){return this._contractId}},{key:"setContractId",value:function(e){return this._requireNotFrozen(),this._contractId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"_execute",value:function(e,t){return null!=this._fileId?e.file.systemUndelete(t):e.smartContract.systemUndelete(t)}},{key:"_getTransactionDataCase",value:function(){return"systemUndelete"}},{key:"_makeTransactionData",value:function(){return{fileID:null!=this._fileId?this._fileId._toProtobuf():null,contractID:null!=this._contractId?this._contractId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"SystemUndeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].systemUndelete;return l.default._fromProtobufTransactions(new n({fileId:null!=i.fileID?f.default._fromProtobuf(i.fileID):void 0,contractId:null!=i.contractID?d.default._fromProtobuf(i.contractID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=y,l.TRANSACTION_REGISTRY.set("systemUndelete",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=r(n(30)),d=r(n(14)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.associateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenAssociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenAssociateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenAssociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenAssociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),d=r(n(19));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._serials=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return e instanceof d.default?e:d.default.fromValue(e)})),this}},{key:"_execute",value:function(e,t){return e.token.burnToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenBurn"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,serialNumbers:this._serials,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenBurnTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenBurn;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,serials:null!=i.serialNumbers?i.serialNumbers:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=y,f.TRANSACTION_REGISTRY.set("tokenBurn",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(17)),c=r(n(5)),s=r(n(6)),l=r(n(4)),f=r(n(32)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),p=r(n(19)),h=r(n(14)),y=r(n(50)),m=r(n(69)),b=r(n(225)),v=r(n(286)),k=r(n(287)),g=r(n(371)),_=r(n(372)),w=r(n(49));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,l.default)(e);if(t){var o=(0,l.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,s.default)(this,n)}}var T=function(e){(0,c.default)(n,e);var t=A(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenName=null,e._tokenSymbol=null,e._decimals=null,e._initialSupply=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._pauseKey=null,e._wipeKey=null,e._supplyKey=null,e._feeScheduleKey=null,e._freezeDefault=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=new m.default(d.DEFAULT_AUTO_RENEW_PERIOD),e._tokenMemo=null,e._customFees=[],e._tokenType=null,e._supplyType=null,e._maxSupply=null,e._defaultMaxTransactionFee=new f.default(30),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.decimals&&e.setDecimals(r.decimals),null!=r.initialSupply&&e.setInitialSupply(r.initialSupply),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.freezeDefault&&e.setFreezeDefault(r.freezeDefault),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.customFees&&e.setCustomFees(r.customFees),null!=r.tokenType&&e.setTokenType(r.tokenType),null!=r.supplyType&&e.setSupplyType(r.supplyType),null!=r.maxSupply&&e.setMaxSupply(r.maxSupply),e}return(0,i.default)(n,[{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"decimals",get:function(){return this._decimals}},{key:"setDecimals",value:function(e){return this._requireNotFrozen(),this._decimals=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"initialSupply",get:function(){return this._initialSupply}},{key:"setInitialSupply",value:function(e){return this._requireNotFrozen(),this._initialSupply=p.default.fromValue(e),this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"freezeDefault",get:function(){return this._freezeDefault}},{key:"setFreezeDefault",value:function(e){return this._requireNotFrozen(),this._freezeDefault=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=null,this._expirationTime=e instanceof y.default?e:y.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof h.default?e:h.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof m.default?e:new m.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._customFees=e,this}},{key:"tokenType",get:function(){return this._tokenType}},{key:"setTokenType",value:function(e){return this._tokenType=e,this}},{key:"supplyType",get:function(){return this._supplyType}},{key:"setSupplyType",value:function(e){return this._supplyType=e,this}},{key:"maxSupply",get:function(){return this._maxSupply}},{key:"setMaxSupply",value:function(e){return this._maxSupply="number"==typeof e?p.default.fromNumber(e):e,this}},{key:"freezeWith",value:function(e){return null!=this._autoRenewPeriod&&null!=e&&e.operatorAccountId&&(this._autoRenewAccountId=e.operatorAccountId),(0,u.default)((0,l.default)(n.prototype),"freezeWith",this).call(this,e)}},{key:"_validateChecksums",value:function(e){null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.createToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenCreation"}},{key:"_makeTransactionData",value:function(){return{name:this._tokenName,symbol:this._tokenSymbol,decimals:null!=this._decimals?this._decimals.toInt():null,initialSupply:this._initialSupply,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,pauseKey:null!=this._pauseKey?this._pauseKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null,freezeDefault:this._freezeDefault,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:this._tokenMemo,customFees:this.customFees.map((function(e){return e._toProtobuf()})),tokenType:null!=this._tokenType?this._tokenType._code:null,supplyType:null!=this._supplyType?this._supplyType._code:null,maxSupply:this.maxSupply}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenCreation;return d.default._fromProtobufTransactions(new n({tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,decimals:null!=i.decimals?i.decimals:void 0,initialSupply:null!=i.initialSupply?i.initialSupply:void 0,treasuryAccountId:null!=i.treasury?h.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?w.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?w.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?w.default._fromProtobufKey(i.freezeKey):void 0,pauseKey:null!=i.pauseKey?w.default._fromProtobufKey(i.pauseKey):void 0,wipeKey:null!=i.wipeKey?w.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?w.default._fromProtobufKey(i.supplyKey):void 0,feeScheduleKey:null!=i.feeScheduleKey?w.default._fromProtobufKey(i.feeScheduleKey):void 0,freezeDefault:null!=i.freezeDefault?i.freezeDefault:void 0,autoRenewAccountId:null!=i.autoRenewAccount?h.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?y.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?m.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo?i.memo:void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?b.default._fromProtobuf(e):null!=e.fractionalFee?v.default._fromProtobuf(e):k.default._fromProtobuf(e)})):void 0,tokenType:null!=i.tokenType?g.default._fromCode(i.tokenType):void 0,supplyType:null!=i.supplyType?_.default._fromCode(i.supplyType):void 0,maxSupply:null!=i.maxSupply?i.maxSupply:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=T,d.TRANSACTION_REGISTRY.set("tokenCreation",T._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.deleteToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDeletion"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDeletion;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenDeletion",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=r(n(30)),d=r(n(14)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenIds=null,e._accountId=null,e._defaultMaxTransactionFee=new l.default(5),null!=r.tokenIds&&e.setTokenIds(r.tokenIds),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenIds",get:function(){return this._tokenIds}},{key:"setTokenIds",value:function(e){return this._requireNotFrozen(),this._tokenIds=e.map((function(e){return"string"==typeof e?f.default.fromString(e):e.clone()})),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._accountId&&this._accountId.validateChecksum(e);var t,n=y(null!=this._tokenIds?this._tokenIds:[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;null!=r&&r.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}}},{key:"_execute",value:function(e,t){return e.token.dissociateTokens(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenDissociate"}},{key:"_makeTransactionData",value:function(){return{tokens:null!=this._tokenIds?this._tokenIds.map((function(e){return e._toProtobuf()})):null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenDissociateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenDissociate;return p.default._fromProtobufTransactions(new n({tokenIds:null!=i.tokens?i.tokens.map((function(e){return f.default._fromProtobuf(e)})):void 0,accountId:null!=i.account?d.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(p.default);t.default=v,p.TRANSACTION_REGISTRY.set("tokenDissociate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),d=r(n(225)),p=r(n(286)),h=r(n(287));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._customFees=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.customFees&&e.setCustomFees(r.customFees),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):l.default._fromProtobuf(e._toProtobuf()),this}},{key:"customFees",get:function(){return this._customFees}},{key:"setCustomFees",value:function(e){return this._requireNotFrozen(),this._customFees=e,this}},{key:"_execute",value:function(e,t){return e.token.updateTokenFeeSchedule(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFeeScheduleUpdate"}},{key:"_makeTransactionData",value:function(){return{tokenId:null!=this._tokenId?this._tokenId._toProtobuf():null,customFees:this._customFees.map((function(e){return e._toProtobuf()}))}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenFeeScheduleUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFeeScheduleUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.tokenId?l.default._fromProtobuf(i.tokenId):void 0,customFees:null!=i.customFees?i.customFees.map((function(e){return null!=e.fixedFee?d.default._fromProtobuf(e):null!=e.fractionalFee?p.default._fromProtobuf(e):h.default._fromProtobuf(e)})):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=b,f.TRANSACTION_REGISTRY.set("tokenFeeScheduleUpdate",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.freezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenFreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenFreezeTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenFreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenFreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.grantKycToTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenGrantKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenGrantKycTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenGrantKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenGrantKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),h=r(n(30)),y=r(n(690)),m=r(n(32));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e}return(0,c.default)(r,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._tokenId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.getTokenInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=e.tokenGetInfo;return Promise.resolve(y.default._fromProtobuf(r.tokenInfo))}},{key:"_onMakeRequest",value:function(e){return{tokenGetInfo:{header:e,token:null!=this._tokenId?this._tokenId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"TokenInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.tokenGetInfo;return new r({tokenId:null!=t.token?h.default._fromProtobuf(t.token):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("tokenGetInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=y(n(25)),d=r(n(19)),p=y(n(84));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function m(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._amount=null,e._metadata=[],null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.amount&&e.setAmount(r.amount),null!=r.metadata&&e.setMetadata(r.metadata),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"metadata",get:function(){return this._metadata}},{key:"addMetadata",value:function(e){return this._requireNotFrozen(),"string"==typeof e&&console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead."),this._metadata.push("string"==typeof e?p.decode(e):e),this}},{key:"setMetadata",value:function(e){this._requireNotFrozen();var t,n=m(e);try{for(n.s();!(t=n.n()).done;){if("string"==typeof t.value){console.warn("Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead.");break}}}catch(e){n.e(e)}finally{n.f()}return this._metadata=e.map((function(e){return"string"==typeof e?p.decode(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.mintToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenMint"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,metadata:this._metadata}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenMintTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenMint;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,amount:null!=i.amount?i.amount:void 0,metadata:null!=i.metadata?i.metadata:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=k,f.TRANSACTION_REGISTRY.set("tokenMint",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),h=r(n(194)),y=r(n(14)),m=r(n(30)),b=r(n(691)),v=r(n(32)),k=r(n(19));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function _(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var w=function(e){(0,l.default)(r,e);var t,n=_(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._nftId=null,null!=t.nftId&&e.setNftId(t.nftId),e._accountId=null,null!=t.accountId&&e.setAccountId(t.accountId),e._tokenId=null,null!=t.tokenId&&e.setTokenId(t.tokenId),e._start=null,null!=t.start&&e.setStart(t.start),e._end=null,null!=t.end&&e.setEnd(t.end),e}return(0,c.default)(r,[{key:"nftId",get:function(){return this._nftId}},{key:"setNftId",value:function(e){return this._nftId="string"==typeof e?h.default.fromString(e):h.default._fromProtobuf(e._toProtobuf()),this}},{key:"accountId",get:function(){return console.warn("`TokenNftInfoQuery.accountId` is deprecated with no replacement"),this._accountId}},{key:"setAccountId",value:function(e){return console.warn("`TokenNftInfoQuery.setAccountId()` is deprecated with no replacement"),this._accountId="string"==typeof e?y.default.fromString(e):y.default._fromProtobuf(e._toProtobuf()),this}},{key:"tokenId",get:function(){return console.warn("`TokenNftInfoQuery.tokenId` is deprecated with no replacement"),this._tokenId}},{key:"setTokenId",value:function(e){return console.warn("`TokenNftInfoQuery.setTokenId()` is deprecated with no replacement"),this._tokenId="string"==typeof e?m.default.fromString(e):m.default._fromProtobuf(e._toProtobuf()),this}},{key:"start",get:function(){return console.warn("`TokenNftInfoQuery.start` is deprecated with no replacement"),this._start}},{key:"setStart",value:function(e){return console.warn("`TokenNftInfoQuery.setStart()` is deprecated with no replacement"),this._start="number"==typeof e?k.default.fromNumber(e):e,this}},{key:"end",get:function(){return console.warn("`TokenNftInfoQuery.end` is deprecated with no replacement"),this._end}},{key:"setEnd",value:function(e){return console.warn("`TokenNftInfoQuery.setEnd()` is deprecated with no replacement"),this._end="number"==typeof e?k.default.fromNumber(e):e,this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",v.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_execute",value:function(e,t){return e.token.getTokenNftInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.tokenGetNftInfo.header}},{key:"_mapResponse",value:function(e,t,n){var r=[e.tokenGetNftInfo.nft];return Promise.resolve(r.map((function(e){return b.default._fromProtobuf(e)})))}},{key:"_onMakeRequest",value:function(e){return{tokenGetNftInfo:{header:e,nftID:null!=this._nftId?this._nftId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"TokenNftInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){if(null!=e.tokenGetNftInfo){var t=e.tokenGetNftInfo;return new r({nftId:null!=t.nftID?h.default._fromProtobuf(t.nftID):void 0})}if(null!=e.tokenGetAccountNftInfos){var n=e.tokenGetAccountNftInfos;return new r({accountId:null!=n.accountID?y.default._fromProtobuf(n.accountID):void 0,start:null!=n.start?n.start:void 0,end:null!=n.end?n.end:void 0})}var o=e.tokenGetNftInfos;return new r({tokenId:null!=o.tokenID?m.default._fromProtobuf(o.tokenID):void 0,start:null!=o.start?o.start:void 0,end:null!=o.end?o.end:void 0})}}]),r}(p.default);t.default=w,p.QUERY_REGISTRY.set("tokenGetNftInfo",w._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.pauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenPause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenPauseTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenPause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenPause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.revokeKycFromTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenRevokeKyc"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenRevokeKycTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenRevokeKyc;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenRevokeKyc",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var y=function(e){(0,u.default)(n,e);var t=h(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unfreezeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnfreeze"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenUnfreezeTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnfreeze;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=y,d.TRANSACTION_REGISTRY.set("tokenUnfreeze",y._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,null!=r.tokenId&&e.setTokenId(r.tokenId),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.unpauseToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUnpause"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenUnpauseTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUnpause;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=h,f.TRANSACTION_REGISTRY.set("tokenUnpause",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),d=r(n(14)),p=r(n(50)),h=r(n(69)),y=r(n(49));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var v=function(e){(0,u.default)(n,e);var t=b(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._tokenName=null,e._tokenSymbol=null,e._treasuryAccountId=null,e._adminKey=null,e._kycKey=null,e._freezeKey=null,e._wipeKey=null,e._supplyKey=null,e._autoRenewAccountId=null,e._expirationTime=null,e._autoRenewPeriod=null,e._tokenMemo=null,e._feeScheduleKey=null,e._pauseKey=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.tokenName&&e.setTokenName(r.tokenName),null!=r.tokenSymbol&&e.setTokenSymbol(r.tokenSymbol),null!=r.treasuryAccountId&&e.setTreasuryAccountId(r.treasuryAccountId),null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.kycKey&&e.setKycKey(r.kycKey),null!=r.freezeKey&&e.setFreezeKey(r.freezeKey),null!=r.wipeKey&&e.setWipeKey(r.wipeKey),null!=r.supplyKey&&e.setSupplyKey(r.supplyKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.expirationTime&&e.setExpirationTime(r.expirationTime),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.tokenMemo&&e.setTokenMemo(r.tokenMemo),null!=r.feeScheduleKey&&e.setFeeScheduleKey(r.feeScheduleKey),null!=r.pauseKey&&e.setPauseKey(r.pauseKey),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"tokenName",get:function(){return this._tokenName}},{key:"setTokenName",value:function(e){return this._requireNotFrozen(),this._tokenName=e,this}},{key:"tokenSymbol",get:function(){return this._tokenSymbol}},{key:"setTokenSymbol",value:function(e){return this._requireNotFrozen(),this._tokenSymbol=e,this}},{key:"treasuryAccountId",get:function(){return this._treasuryAccountId}},{key:"setTreasuryAccountId",value:function(e){return this._requireNotFrozen(),this._treasuryAccountId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"kycKey",get:function(){return this._kycKey}},{key:"setKycKey",value:function(e){return this._requireNotFrozen(),this._kycKey=e,this}},{key:"freezeKey",get:function(){return this._freezeKey}},{key:"setFreezeKey",value:function(e){return this._requireNotFrozen(),this._freezeKey=e,this}},{key:"wipeKey",get:function(){return this._wipeKey}},{key:"setWipeKey",value:function(e){return this._requireNotFrozen(),this._wipeKey=e,this}},{key:"supplyKey",get:function(){return this._supplyKey}},{key:"setSupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"setsupplyKey",value:function(e){return this._requireNotFrozen(),this._supplyKey=e,this}},{key:"expirationTime",get:function(){return this._expirationTime}},{key:"setExpirationTime",value:function(e){return this._requireNotFrozen(),this._expirationTime=e instanceof p.default?e:p.default.fromDate(e),this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof d.default?e:d.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof h.default?e:new h.default(e),this}},{key:"tokenMemo",get:function(){return this._tokenMemo}},{key:"setTokenMemo",value:function(e){return this._requireNotFrozen(),this._tokenMemo=e,this}},{key:"feeScheduleKey",get:function(){return this._feeScheduleKey}},{key:"setFeeScheduleKey",value:function(e){return this._requireNotFrozen(),this._feeScheduleKey=e,this}},{key:"pauseKey",get:function(){return this._pauseKey}},{key:"setPauseKey",value:function(e){return this._requireNotFrozen(),this._pauseKey=e,this}},{key:"clearTokenMemo",value:function(){return this._requireNotFrozen(),this._tokenMemo=null,this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._treasuryAccountId&&this._treasuryAccountId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.token.updateToken(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenUpdate"}},{key:"_makeTransactionData",value:function(){return{token:null!=this._tokenId?this._tokenId._toProtobuf():null,name:this.tokenName,symbol:this.tokenSymbol,treasury:null!=this._treasuryAccountId?this._treasuryAccountId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,kycKey:null!=this._kycKey?this._kycKey._toProtobufKey():null,freezeKey:null!=this._freezeKey?this._freezeKey._toProtobufKey():null,wipeKey:null!=this._wipeKey?this._wipeKey._toProtobufKey():null,supplyKey:null!=this._supplyKey?this._supplyKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,expiry:null!=this._expirationTime?this._expirationTime._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null,memo:null!=this._tokenMemo?{value:this._tokenMemo}:null,feeScheduleKey:null!=this._feeScheduleKey?this._feeScheduleKey._toProtobufKey():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenUpdate;return f.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,tokenName:null!=i.name?i.name:void 0,tokenSymbol:null!=i.symbol?i.symbol:void 0,treasuryAccountId:null!=i.treasury?d.default._fromProtobuf(i.treasury):void 0,adminKey:null!=i.adminKey?y.default._fromProtobufKey(i.adminKey):void 0,kycKey:null!=i.kycKey?y.default._fromProtobufKey(i.kycKey):void 0,freezeKey:null!=i.freezeKey?y.default._fromProtobufKey(i.freezeKey):void 0,wipeKey:null!=i.wipeKey?y.default._fromProtobufKey(i.wipeKey):void 0,supplyKey:null!=i.supplyKey?y.default._fromProtobufKey(i.supplyKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?d.default._fromProtobuf(i.autoRenewAccount):void 0,expirationTime:null!=i.expiry?p.default._fromProtobuf(i.expiry):void 0,autoRenewPeriod:null!=i.autoRenewPeriod?h.default._fromProtobuf(i.autoRenewPeriod):void 0,tokenMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0,feeScheduleKey:null!=i.feeScheduleKey?y.default._fromProtobufKey(i.feeScheduleKey):void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=v,f.TRANSACTION_REGISTRY.set("tokenUpdate",v._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(30)),f=r(n(14)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),p=r(n(19));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._tokenId=null,e._accountId=null,e._serials=[],e._amount=null,null!=r.tokenId&&e.setTokenId(r.tokenId),null!=r.accountId&&e.setAccountId(r.accountId),null!=r.amount&&e.setAmount(r.amount),null!=r.serials&&e.setSerials(r.serials),e}return(0,i.default)(n,[{key:"tokenId",get:function(){return this._tokenId}},{key:"setTokenId",value:function(e){return this._requireNotFrozen(),this._tokenId="string"==typeof e?l.default.fromString(e):e.clone(),this}},{key:"accountId",get:function(){return this._accountId}},{key:"setAccountId",value:function(e){return this._requireNotFrozen(),this._accountId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"amount",get:function(){return this._amount}},{key:"setAmount",value:function(e){return this._requireNotFrozen(),this._amount=e instanceof p.default?e:p.default.fromValue(e),this}},{key:"_validateChecksums",value:function(e){null!=this._tokenId&&this._tokenId.validateChecksum(e),null!=this._accountId&&this._accountId.validateChecksum(e)}},{key:"serials",get:function(){return this._serials}},{key:"setSerials",value:function(e){return this._requireNotFrozen(),this._serials=e.map((function(e){return"number"==typeof e?p.default.fromNumber(e):e})),this}},{key:"_execute",value:function(e,t){return e.token.wipeTokenAccount(t)}},{key:"_getTransactionDataCase",value:function(){return"tokenWipe"}},{key:"_makeTransactionData",value:function(){return{amount:this._amount,token:null!=this._tokenId?this._tokenId._toProtobuf():null,account:null!=this._accountId?this._accountId._toProtobuf():null,serialNumbers:this.serials}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TokenWipeTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].tokenWipe;return d.default._fromProtobufTransactions(new n({tokenId:null!=i.token?l.default._fromProtobuf(i.token):void 0,accountId:null!=i.account?f.default._fromProtobuf(i.account):void 0,amount:null!=i.amount?i.amount:void 0}),e,t,r,o,a)}}]),n}(d.default);t.default=m,d.TRANSACTION_REGISTRY.set("tokenWipe",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(14)),f=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),d=r(n(69)),p=r(n(49));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var m=function(e){(0,u.default)(n,e);var t=y(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._adminKey=null,e._submitKey=null,e._autoRenewAccountId=null,e._autoRenewPeriod=new d.default(f.DEFAULT_AUTO_RENEW_PERIOD),e._topicMemo=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),null!=r.submitKey&&e.setSubmitKey(r.submitKey),null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e}return(0,i.default)(n,[{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof l.default?e:l.default.fromString(e),this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof d.default?e:new d.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.createTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusCreateTopic"}},{key:"_makeTransactionData",value:function(){return{adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:this._autoRenewPeriod._toProtobuf(),memo:this._topicMemo}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TopicCreateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusCreateTopic;return f.default._fromProtobufTransactions(new n({adminKey:null!=i.adminKey?p.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?p.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?l.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo?i.memo:void 0}),e,t,r,o,a)}}]),n}(f.default);t.default=m,f.TRANSACTION_REGISTRY.set("consensusCreateTopic",m._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),f=r(n(134));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var h=function(e){(0,u.default)(n,e);var t=p(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.deleteTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusDeleteTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TopicDeleteTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusDeleteTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?f.default._fromProtobuf(i.topicID):void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=h,l.TRANSACTION_REGISTRY.set("consensusDeleteTopic",h._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(17)),l=r(n(5)),f=r(n(6)),d=r(n(4)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(55)),h=r(n(134)),y=r(n(692)),m=r(n(32));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function v(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,d.default)(e);if(t){var o=(0,d.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,f.default)(this,n)}}var k=function(e){(0,l.default)(r,e);var t,n=v(r);function r(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,r),(e=n.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e}return(0,c.default)(r,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._topicId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"getCost",value:(t=(0,i.default)(a.default.mark((function e(t){var n;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,s.default)((0,d.default)(r.prototype),"getCost",this).call(this,t);case 2:if(!(n=e.sent).toTinybars().greaterThan(25)){e.next=7;break}return e.abrupt("return",n);case 7:return e.abrupt("return",m.default.fromTinybars(25));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.getTopicInfo(t)}},{key:"_mapResponseHeader",value:function(e){return e.consensusGetTopicInfo.header}},{key:"_mapResponse",value:function(e,t,n){return Promise.resolve(y.default._fromProtobuf(e.consensusGetTopicInfo))}},{key:"_onMakeRequest",value:function(e){return{consensusGetTopicInfo:{header:e,topicID:null!=this._topicId?this._topicId._toProtobuf():null}}}},{key:"_getLogId",value:function(){var e=null!=this._paymentTransactionId&&null!=this._paymentTransactionId.validStart?this._paymentTransactionId.validStart:this._timestamp;return"TopicInfoQuery:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e){var t=e.consensusGetTopicInfo;return new r({topicId:null!=t.topicID?h.default._fromProtobuf(t.topicID):void 0})}}]),r}(p.default);t.default=k,p.QUERY_REGISTRY.set("consensusGetTopicInfo",k._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(85)),c=r(n(1436)),s=r(n(693)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(39)),f=r(n(134)),d=r(n(19)),p=r(n(50)),h=n(133),y=r(n(193));function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}var b=function(){function e(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,e),this._topicId=null,null!=n.topicId&&this.setTopicId(n.topicId),this._startTime=null,null!=n.startTime&&this.setStartTime(n.startTime),this._endTime=null,null!=n.endTime&&this.setEndTime(n.endTime),this._limit=null,null!=n.limit&&this.setLimit(n.limit),this._errorHandler=function(e,n){console.error("Error attempting to subscribe to topic: ".concat(null!=t._topicId?t._topicId.toString():""))},null!=n.errorHandler&&(this._errorHandler=n.errorHandler),this._listener=null,this._completionHandler=function(){y.default.log("Subscription to topic ".concat(null!=t._topicId?t._topicId.toString():""," complete"))},null!=n.completionHandler&&(this._completionHandler=n.completionHandler),this._retryHandler=function(e){if(null!=e){if(e instanceof Error)return!0;switch(e.code){case 13:return h.RST_STREAM.test(e.details.toString());case 5:case 8:case 14:return!0;default:return!1}}return!1},null!=n.retryHandler&&(this._retryHandler=n.retryHandler),this._maxAttempts=10,this._maxBackoff=8e3,this._attempt=0,this._handle=null}return(0,i.default)(e,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this.requireNotSubscribed(),this._topicId="string"==typeof e?f.default.fromString(e):e.clone(),this}},{key:"startTime",get:function(){return this._startTime}},{key:"setStartTime",value:function(e){return this.requireNotSubscribed(),this._startTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"endTime",get:function(){return this._endTime}},{key:"setEndTime",value:function(e){return this.requireNotSubscribed(),this._endTime=e instanceof p.default?e:e instanceof Date?p.default.fromDate(e):new p.default(e,0),this}},{key:"limit",get:function(){return this._limit}},{key:"setLimit",value:function(e){return this.requireNotSubscribed(),this._limit=e instanceof d.default?e:d.default.fromValue(e),this}},{key:"setErrorHandler",value:function(e){return this._errorHandler=e,this}},{key:"setCompletionHandler",value:function(e){return this.requireNotSubscribed(),this._completionHandler=e,this}},{key:"setMaxAttempts",value:function(e){this.requireNotSubscribed(),this._maxAttempts=e}},{key:"setMaxBackoff",value:function(e){this.requireNotSubscribed(),this._maxBackoff=e}},{key:"subscribe",value:function(e,t,n){return this._handle=new c.default,this._listener=n,null!=t&&(this._errorHandler=t),this._makeServerStreamRequest(e),this._handle}},{key:"_makeServerStreamRequest",value:function(e){var t=this,n=new Map,r=l.ConsensusTopicQuery.encode({topicID:null!=this._topicId?this._topicId._toProtobuf():null,consensusStartTime:null!=this._startTime?this._startTime._toProtobuf():null,consensusEndTime:null!=this._endTime?this._endTime._toProtobuf():null,limit:this._limit}).finish(),o=e._mirrorNetwork.getNextMirrorNode().getChannel().makeServerStreamRequest("ConsensusService","subscribeTopic",r,(function(e){var r=l.ConsensusTopicResponse.decode(e);if(null!=t._limit&&t._limit.gt(0)&&(t._limit=t._limit.sub(1)),t._startTime=p.default._fromProtobuf(r.consensusTimestamp).plusNanos(1),null==r.chunkInfo||null!=r.chunkInfo&&1===r.chunkInfo.total)t._passTopicMessage(s.default._ofSingle(r));else{var o=r.chunkInfo,a=o.initialTransactionID,i=o.total,c=u.default._fromProtobuf(a).toString(),f=[],d=n.get(c);if(null==d?n.set(c,f):f=d,f.push(r),f.length===i){var h=s.default._ofMany(f);n.delete(c),t._passTopicMessage(h)}}}),(function(n){var r=n instanceof Error?n.message:n.details;if(t._attempt=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};return(0,u.default)(this,o),(e=r.call(this))._topicId=null,null!=t.topicId&&e.setTopicId(t.topicId),e._message=null,null!=t.message&&e.setMessage(t.message),e._maxChunks=20,e._chunkSize=p.CHUNK_SIZE,null!=t.maxChunks&&e.setMaxChunks(t.maxChunks),null!=t.chunkSize&&e.setChunkSize(t.chunkSize),e._chunkInfo=null,e}return(0,c.default)(o,[{key:"setTransactionId",value:function(e){if(this._requireNotFrozen(),null==e.accountId||null==e.validStart)throw new Error("`TopicMessageSubmitTransaction` does not support `TransactionId` built from `nonce`");return this._transactionIds.setList([e]),this}},{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?h.default.fromString(e):e.clone(),this}},{key:"message",get:function(){return this._message}},{key:"setMessage",value:function(e){return this._requireNotFrozen(),e=v.requireStringOrUint8Array(e),this._message=e instanceof Uint8Array?e:y.encode(e),this}},{key:"maxChunks",get:function(){return this._maxChunks}},{key:"setMaxChunks",value:function(e){return this._requireNotFrozen(),this._maxChunks=e,this}},{key:"chunkSize",get:function(){return this._chunkSize}},{key:"setChunkSize",value:function(e){return this._chunkSize=e,this}},{key:"freezeWith",value:function(e){if((0,s.default)((0,d.default)(o.prototype),"freezeWith",this).call(this,e),null==this._message)return this;var t=Math.floor((this._message.length+(this._chunkSize-1))/this._chunkSize);if(t>this._maxChunks)throw new Error("Message with size ".concat(this._message.length," too long for ").concat(this._maxChunks," chunks"));var n=this.transactionId._toProtobuf(),r=this.transactionId;this._transactionIds.locked=!1,this._transactions.clear(),this._transactionIds.clear(),this._signedTransactions.clear();for(var a=0;athis._chunkSize)throw new Error("cannot schedule `TopicMessageSubmitTransaction` with message over ".concat(this._chunkSize," bytes"));return(0,s.default)((0,d.default)(o.prototype),"schedule",this).call(this)}},{key:"execute",value:(n=(0,i.default)(a.default.mark((function e(t,n){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.executeAll(t,n);case 2:return e.abrupt("return",e.sent[0]);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"executeAll",value:(t=(0,i.default)(a.default.mark((function e(t,n){var r,i,u,c,l,f;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,s.default)((0,d.default)(o.prototype),"_isFrozen",this).call(this)||this.freezeWith(t),r=this.transactionId,null==(i=t.operatorAccountId)||!i.equals(r.accountId)){e.next=6;break}return e.next=6,(0,s.default)((0,d.default)(o.prototype),"signWithOperator",this).call(this,t);case 6:u=[],c=n,l=0;case 9:if(!(lthis._message.length&&(t=this._message.length),{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message.slice(e,t),chunkInfo:this._chunkInfo}}return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,message:this._message}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TopicMessageSubmitTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,n,r,a){var i=a[0].consensusSubmitMessage;return p.default._fromProtobufTransactions(new o({topicId:null!=i.topicID?h.default._fromProtobuf(i.topicID):void 0,message:null!=i.message?i.message:void 0}),e,t,n,r,a)}}]),o}(p.default);t.default=A,p.TRANSACTION_REGISTRY.set("consensusSubmitMessage",A._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),f=r(n(14)),d=r(n(134)),p=r(n(69)),h=r(n(49));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function m(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var b=function(e){(0,u.default)(n,e);var t=m(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.default)(this,n),(e=t.call(this))._topicId=null,null!=r.topicId&&e.setTopicId(r.topicId),e._topicMemo=null,null!=r.topicMemo&&e.setTopicMemo(r.topicMemo),e._submitKey=null,null!=r.submitKey&&e.setSubmitKey(r.submitKey),e._adminKey=null,null!=r.adminKey&&e.setAdminKey(r.adminKey),e._autoRenewAccountId=null,null!=r.autoRenewAccountId&&e.setAutoRenewAccountId(r.autoRenewAccountId),e._autoRenewPeriod=null,null!=r.autoRenewPeriod&&e.setAutoRenewPeriod(r.autoRenewPeriod),e}return(0,i.default)(n,[{key:"topicId",get:function(){return this._topicId}},{key:"setTopicId",value:function(e){return this._requireNotFrozen(),this._topicId="string"==typeof e?d.default.fromString(e):e.clone(),this}},{key:"clearTopicId",value:function(){return this._requireNotFrozen(),this._topicId=null,this}},{key:"topicMemo",get:function(){return this._topicMemo}},{key:"setTopicMemo",value:function(e){return this._requireNotFrozen(),this._topicMemo=e,this}},{key:"clearTopicMemo",value:function(){return this._requireNotFrozen(),this._topicMemo=null,this}},{key:"adminKey",get:function(){return this._adminKey}},{key:"setAdminKey",value:function(e){return this._requireNotFrozen(),this._adminKey=e,this}},{key:"clearAdminKey",value:function(){return this._requireNotFrozen(),this._adminKey=null,this}},{key:"submitKey",get:function(){return this._submitKey}},{key:"setSubmitKey",value:function(e){return this._requireNotFrozen(),this._submitKey=e,this}},{key:"clearSubmitKey",value:function(){return this._requireNotFrozen(),this._submitKey=null,this}},{key:"autoRenewAccountId",get:function(){return this._autoRenewAccountId}},{key:"setAutoRenewAccountId",value:function(e){return this._requireNotFrozen(),this._autoRenewAccountId=e instanceof f.default?e:f.default.fromString(e),this}},{key:"clearAutoRenewAccountId",value:function(){return this._requireNotFrozen(),this._autoRenewAccountId=null,this}},{key:"autoRenewPeriod",get:function(){return this._autoRenewPeriod}},{key:"setAutoRenewPeriod",value:function(e){return this._requireNotFrozen(),this._autoRenewPeriod=e instanceof p.default?e:new p.default(e),this}},{key:"_validateChecksums",value:function(e){null!=this._topicId&&this._topicId.validateChecksum(e),null!=this._autoRenewAccountId&&this._autoRenewAccountId.validateChecksum(e)}},{key:"_execute",value:function(e,t){return e.consensus.updateTopic(t)}},{key:"_getTransactionDataCase",value:function(){return"consensusUpdateTopic"}},{key:"_makeTransactionData",value:function(){return{topicID:null!=this._topicId?this._topicId._toProtobuf():null,adminKey:null!=this._adminKey?this._adminKey._toProtobufKey():null,submitKey:null!=this._submitKey?this._submitKey._toProtobufKey():null,memo:null!=this._topicMemo?{value:this._topicMemo}:null,autoRenewAccount:null!=this._autoRenewAccountId?this._autoRenewAccountId._toProtobuf():null,autoRenewPeriod:null!=this._autoRenewPeriod?this._autoRenewPeriod._toProtobuf():null}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TopicUpdateTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].consensusUpdateTopic;return l.default._fromProtobufTransactions(new n({topicId:null!=i.topicID?d.default._fromProtobuf(i.topicID):void 0,adminKey:null!=i.adminKey?h.default._fromProtobufKey(i.adminKey):void 0,submitKey:null!=i.submitKey?h.default._fromProtobufKey(i.submitKey):void 0,autoRenewAccountId:null!=i.autoRenewAccount?f.default._fromProtobuf(i.autoRenewAccount):void 0,autoRenewPeriod:null!=i.autoRenewPeriod&&null!=i.autoRenewPeriod.seconds?i.autoRenewPeriod.seconds:void 0,topicMemo:null!=i.memo&&null!=i.memo.value?i.memo.value:void 0}),e,t,r,o,a)}}]),n}(l.default);t.default=b,l.TRANSACTION_REGISTRY.set("consensusUpdateTopic",b._fromProtobuf)},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(1)),i=r(n(2)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=r(n(32)),f=r(n(30)),d=r(n(14)),p=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(25)),h=r(n(19)),y=r(n(1440)),m=r(n(368)),b=r(n(671)),v=r(n(667)),k=r(n(1441)),g=r(n(669)),_=r(n(668)),w=r(n(1442)),I=r(n(194));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function T(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return O(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&void 0!==arguments[0]?arguments[0]:{};(0,a.default)(this,n),(e=t.call(this))._tokenTransfers=[],e._hbarTransfers=[],e._nftTransfers=[],e._defaultMaxTransactionFee=new l.default(1);var o,i=T(null!=r.tokenTransfers?r.tokenTransfers:[]);try{for(i.s();!(o=i.n()).done;){var u=o.value;e.addTokenTransfer(u.tokenId,u.accountId,u.amount)}}catch(e){i.e(e)}finally{i.f()}var c,s=T(null!=r.hbarTransfers?r.hbarTransfers:[]);try{for(s.s();!(c=s.n()).done;){var f=c.value;e.addHbarTransfer(f.accountId,f.amount)}}catch(e){s.e(e)}finally{s.f()}var d,p=T(null!=r.nftTransfers?r.nftTransfers:[]);try{for(p.s();!(d=p.n()).done;){var h=d.value;e.addNftTransfer(h.tokenId,h.serial,h.sender,h.recipient)}}catch(e){p.e(e)}finally{p.f()}return e}return(0,i.default)(n,[{key:"tokenTransfers",get:function(){var e,t=new v.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId);null!=o?o._set(r.accountId,r.amount):((o=new _.default)._set(r.accountId,r.amount),t._set(r.tokenId,o))}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"_addTokenTransfer",value:function(e,t,n,r){this._requireNotFrozen();var o,a=e instanceof f.default?e:f.default.fromString(e),i=t instanceof d.default?t:d.default.fromString(t),u=n instanceof h.default?n:h.default.fromNumber(n),c=T(this._tokenTransfers);try{for(c.s();!(o=c.n()).done;){var s=o.value;if(0===s.tokenId.compare(a)&&0===s.accountId.compare(i))return s.amount=s.amount.add(u),s.expectedDecimals=null,this}}catch(e){c.e(e)}finally{c.f()}return this._tokenTransfers.push(new b.default({tokenId:e,accountId:t,expectedDecimals:null,amount:n,isApproved:r})),this}},{key:"addTokenTransfer",value:function(e,t,n){return this._addTokenTransfer(e,t,n,!1)}},{key:"addApprovedTokenTransfer",value:function(e,t,n){return this._addTokenTransfer(e,t,n,!0)}},{key:"addTokenTransferWithDecimals",value:function(e,t,n,r){this._requireNotFrozen();var o,a=e instanceof f.default?e:f.default.fromString(e),i=t instanceof d.default?t:d.default.fromString(t),u=n instanceof h.default?n:h.default.fromNumber(n),c=!1,s=T(this._tokenTransfers);try{for(s.s();!(o=s.n()).done;){var l=o.value;if(0===l.tokenId.compare(a)){if(null!=l.expectedDecimals&&l.expectedDecimals!==r)throw new Error("expected decimals mis-match");l.expectedDecimals=r,0===l.accountId.compare(i)&&(l.amount=l.amount.add(u),l.expectedDecimals=r,c=!0)}}}catch(e){s.e(e)}finally{s.f()}return c||this._tokenTransfers.push(new b.default({tokenId:e,accountId:t,expectedDecimals:r,amount:n,isApproved:!1})),this}},{key:"tokenIdDecimals",get:function(){var e,t=new y.default,n=T(this._tokenTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.tokenId,r.expectedDecimals)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"hbarTransfers",get:function(){var e,t=new k.default,n=T(this._hbarTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value;t._set(r.accountId,r.amount)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"_addHbarTransfer",value:function(e,t,n){this._requireNotFrozen();var r,o=e instanceof d.default?e:d.default.fromString(e),a=t instanceof l.default?t:new l.default(t),i=T(this._hbarTransfers);try{for(i.s();!(r=i.n()).done;){var u=r.value;if(0===u.accountId.compare(o))return u.amount=l.default.fromTinybars(u.amount.toTinybars().add(a.toTinybars())),this}}catch(e){i.e(e)}finally{i.f()}return this._hbarTransfers.push(new m.default({accountId:o,amount:a,isApproved:n})),this}},{key:"addHbarTransfer",value:function(e,t){return this._addHbarTransfer(e,t,!1)}},{key:"addApprovedHbarTransfer",value:function(e,t){return this._addHbarTransfer(e,t,!0)}},{key:"_validateChecksums",value:function(e){var t,n=T(this._hbarTransfers);try{for(n.s();!(t=n.n()).done;){t.value.accountId.validateChecksum(e)}}catch(e){n.e(e)}finally{n.f()}var r,o=T(this._tokenTransfers);try{for(o.s();!(r=o.n()).done;){var a=r.value;a.tokenId.validateChecksum(e),a.accountId.validateChecksum(e)}}catch(e){o.e(e)}finally{o.f()}var i,u=T(this._nftTransfers);try{for(u.s();!(i=u.n()).done;){var c=i.value;c.tokenId.validateChecksum(e),c.senderAccountId.validateChecksum(e),c.receiverAccountId.validateChecksum(e)}}catch(e){u.e(e)}finally{u.f()}}},{key:"nftTransfers",get:function(){var e,t=new g.default,n=T(this._nftTransfers);try{for(n.s();!(e=n.n()).done;){var r=e.value,o=t.get(r.tokenId),a={sender:r.senderAccountId,recipient:r.receiverAccountId,serial:r.serialNumber,isApproved:r.isApproved};null!=o?o.push(a):t._set(r.tokenId,[a])}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"_addNftTransfer",value:function(e,t,n,r,o){var a,i,u;if(this._requireNotFrozen(),t instanceof I.default)a=t,i="string"==typeof n?d.default.fromString(n):n,u="string"==typeof r?d.default.fromString(r):r;else if(t instanceof f.default)a=new I.default(t,n),i="string"==typeof r?d.default.fromString(r):r,u="string"==typeof o?d.default.fromString(o):o;else try{a=I.default.fromString(t),i="string"==typeof n?d.default.fromString(n):n,u="string"==typeof r?d.default.fromString(r):r}catch(e){var c=f.default.fromString(t);a=new I.default(c,n),i="string"==typeof r?d.default.fromString(r):r,u="string"==typeof o?d.default.fromString(o):o}var s,l=T(this._nftTransfers);try{for(l.s();!(s=l.n()).done;){var p=s.value;if(0===p.tokenId.compare(a.tokenId)&&0===p.serialNumber.compare(a.serial))return p.senderAccountId=i,p.receiverAccountId=u,this}}catch(e){l.e(e)}finally{l.f()}return this._nftTransfers.push(new w.default({tokenId:a.tokenId,serialNumber:a.serial,senderAccountId:i,receiverAccountId:u,isApproved:e})),this}},{key:"addNftTransfer",value:function(e,t,n,r){return this._addNftTransfer(!1,e,t,n,r)}},{key:"addApprovedNftTransfer",value:function(e,t,n,r){return this._addNftTransfer(!0,e,t,n,r)}},{key:"setHbarTransferApproval",value:function(e,t){var n,r="string"==typeof e?d.default.fromString(e):e,o=T(this._hbarTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.accountId.compare(r)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"setTokenTransferApproval",value:function(e,t,n){var r,o="string"==typeof e?f.default.fromString(e):e,a="string"==typeof t?d.default.fromString(t):t,i=T(this._tokenTransfers);try{for(i.s();!(r=i.n()).done;){var u=r.value;0===u.tokenId.compare(o)&&0===u.accountId.compare(a)&&(u.isApproved=n)}}catch(e){i.e(e)}finally{i.f()}return this}},{key:"setNftTransferApproval",value:function(e,t){var n,r="string"==typeof e?I.default.fromString(e):e,o=T(this._nftTransfers);try{for(o.s();!(n=o.n()).done;){var a=n.value;0===a.tokenId.compare(r.tokenId)&&0===a.serialNumber.compare(r.serial)&&(a.isApproved=t)}}catch(e){o.e(e)}finally{o.f()}return this}},{key:"_execute",value:function(e,t){return e.crypto.cryptoTransfer(t)}},{key:"_getTransactionDataCase",value:function(){return"cryptoTransfer"}},{key:"_makeTransactionData",value:function(){var e=[];this._tokenTransfers.sort((function(e,t){var n=e.tokenId.compare(t.tokenId);return 0!==n?n:e.accountId.compare(t.accountId)})),this._nftTransfers.sort((function(e,t){var n=e.senderAccountId.compare(t.senderAccountId);if(0!=n)return n;var r=e.receiverAccountId.compare(t.receiverAccountId);return 0!=r?r:e.serialNumber.compare(t.serialNumber)}));for(var t=0,n=0;t0?e[e.length-1]:null,i=null!=a?a.tokenId:null;if(null!=a&&null!=i&&0===i.compare(r)){a.transfers.push(this._tokenTransfers[t++]);continue}if(null!=a&&null!=i&&0===i.compare(o)){a.nftTransfers.push(this._nftTransfers[n++]);continue}var u=r.compare(o);0===u?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[this._nftTransfers[n++]]}):u<=0?e.push({tokenId:r,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]}):e.push({tokenId:r,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}else if(t0?e[e.length-1]:null,l=null!=s?s.tokenId:null;if(null!=s&&null!=l&&0===l.compare(c)){s.transfers.push(this._tokenTransfers[t++]);continue}e.push({tokenId:c,expectedDecimals:this._tokenTransfers[t].expectedDecimals,transfers:[this._tokenTransfers[t++]],nftTransfers:[]})}else if(n0?e[e.length-1]:null,p=null!=d?d.tokenId:null;if(null!=d&&null!=p&&0===p.compare(f)){d.nftTransfers.push(this._nftTransfers[n++]);continue}e.push({tokenId:f,expectedDecimals:null,transfers:[],nftTransfers:[this._nftTransfers[n++]]})}return this._hbarTransfers.sort((function(e,t){return e.accountId.compare(t.accountId)})),{transfers:{accountAmounts:this._hbarTransfers.map((function(e){return{accountID:e.accountId._toProtobuf(),amount:e.amount.toTinybars(),isApproval:e.isApproved}}))},tokenTransfers:e.map((function(e){return{token:e.tokenId._toProtobuf(),expectedDecimals:null!=e.expectedDecimals?{value:e.expectedDecimals}:null,transfers:e.transfers.map((function(e){return e._toProtobuf()})),nftTransfers:e.nftTransfers.map((function(e){return e._toProtobuf()}))}}))}}},{key:"_getLogId",value:function(){var e=this._transactionIds.current.validStart;return"TransferTransaction:".concat(e.toString())}}],[{key:"_fromProtobuf",value:function(e,t,r,o,a){var i=a[0].cryptoTransfer,u=new n;return u._tokenTransfers=b.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),u._hbarTransfers=m.default._fromProtobuf(null!=i.transfers&&null!=i.transfers.accountAmounts?i.transfers.accountAmounts:[]),u._nftTransfers=w.default._fromProtobuf(null!=i.tokenTransfers?i.tokenTransfers:[]),p.default._fromProtobufTransactions(u,e,t,r,o,a)}}]),n}(p.default);t.default=E,p.TRANSACTION_REGISTRY.set("cryptoTransfer",E._fromProtobuf)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(5)),i=r(n(6)),u=r(n(4)),c=r(n(30));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,u.default)(e);if(t){var o=(0,u.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,i.default)(this,n)}}var l=function(e){(0,a.default)(n,e);var t=s(n);function n(){return(0,o.default)(this,n),t.call(this,(function(e){return c.default.fromString(e)}))}return n}(r(n(91)).default);t.default=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(14)),l=r(n(32));function f(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nthis._maxBackoff)throw new Error("minBackoff cannot be larger than maxBackoff.");return this._minBackoff=e,this}},{key:"minBackoff",get:function(){return this._minBackoff}},{key:"setMaxBackoff",value:function(e){if(null==e)throw new Error("maxBackoff cannot be null.");if(e=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;n--){var r=this._nodes[n],o=e.get(r.address.toString());null!=o&&o.toString()===r.accountId.toString()||t.push(n)}return t}},{key:"_checkNetworkContainsEntry",value:function(e){var t,n=h(this._nodes);try{for(n.s();!(t=n.n()).done;){if(t.value.address.toString()===e[0])return!0}}catch(e){n.e(e)}finally{n.f()}return!1}},{key:"maxNodesPerTransaction",get:function(){return this._maxNodesPerTransaction}},{key:"setMaxNodesPerTransaction",value:function(e){return this._maxNodesPerTransaction=e,this}},{key:"maxNodeAttempts",get:function(){return this._maxNodeAttempts}},{key:"setMaxNodeAttempts",value:function(e){return this._maxNodeAttempts=e,this}},{key:"getNumberOfNodesForTransaction",value:function(){return this._maxNodesPerTransaction>0?this._maxNodesPerTransaction:(this._nodes.length+3-1)/3}},{key:"getNodeAccountIdsForExecute",value:function(){return this._getNumberOfMostHealthyNodes(this.getNumberOfNodesForTransaction()).map((function(e){return e.accountId}))}}]),n}(r(n(697)).default);t.default=b},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(696)),l=n(1452);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e){(0,i.default)(n,e);var t=f(n);function n(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,n),e=t.call(this,r),null!=r.newNode)e._accountId=r.newNode.accountId,e._nodeAddress=null;else{if(null==r.cloneNode)throw new Error("failed to create node: ".concat(JSON.stringify(r)));e._accountId=r.cloneNode.node._accountId,e._nodeAddress=r.cloneNode.node._nodeAddress}return e}return(0,a.default)(n,[{key:"getKey",value:function(){return this._accountId.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}},{key:"setCert",value:function(e){switch(e.toString()){case"previewnet":this._cert=l.PREVIEWNET_CERTS[this._accountId.toString()];break;case"testnet":this._cert=l.TESTNET_CERTS[this._accountId.toString()];break;case"mainnet":this._cert=l.MAINNET_CERTS[this._accountId.toString()]}return this}},{key:"accountId",get:function(){return this._accountId}},{key:"nodeAddress",get:function(){return this._nodeAddress}},{key:"setNodeAddress",value:function(e){return this._nodeAddress=e,this}}]),n}(s.default);t.default=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.HOST_AND_PORT=void 0;var o=r(n(1)),a=r(n(2)),i=/^(\S+):(\d+)$/;t.HOST_AND_PORT=i;var u=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,o.default)(this,e),null!=t.address){var n=i.exec(t.address);if(null==n)throw new Error("failed to parse address: ".concat(t.address));this._address=n[1],this._port=null!=n[2]?parseInt(n[2]):null}else{if(null==t.host||null==t.port)throw new Error("failed to create a managed node address: ".concat(JSON.stringify(t)));this._address=t.host,this._port=t.port}Object.freeze(this)}return(0,a.default)(e,[{key:"toInsecure",value:function(){var t=this.port;switch(this.port){case 50212:t=50211;break;case 443:t=5600}return new e({host:this.address,port:t})}},{key:"toSecure",value:function(){var t=this.port;switch(this.port){case 50211:t=50212;break;case 5600:t=443}return new e({host:this.address,port:t})}},{key:"address",get:function(){return this._address}},{key:"port",get:function(){return this._port}},{key:"isTransportSecurity",value:function(){return 50212==this._port||443==this._port}},{key:"toString",value:function(){return null==this.port?this.address:"".concat(this.address,":").concat(this.port)}}],[{key:"fromString",value:function(t){return new e({address:t})}}]),e}();t.default=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_CERTS=t.PREVIEWNET_CERTS=t.MAINNET_CERTS=void 0;t.PREVIEWNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUenyqJ4UaFBbwokatcUqAwW3o3rswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU4WhgPMjI5NTA2MDcyMjIxNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEm5b1+oG9R0qt\nzM7UZnS5l/xxUNHIHq5+NAvtlviCpJL19jrW9+/UOy00Qqc6vS6tS1hS+dNJmpiZ\nFN0EHew4VDR7ACnL4LDJKmIHWjQ0iwvZo5kCpO0r9BtPN5FvaSxyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUeciBviJtjeuue0GPf1xllNw7qvYwCgYIKoZIzj0EAwMDaAAwZQIw\nJeG0H2HdsI1VhOYmJmYlNeKCNgAk+LMorzPmsIInVBO2HK2IrKfpReWDS/m5j51V\nAjEAxKBxDezJDqAZHTkTXCg+X9Q9V6J6M5yDy5IS90aCWEo+W8C1Hc6hkn2/NrvT\nPhwK\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUUfjO8LyXBdzrzbAe1Yl+d34IDsIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAERwfj4ZtD/wRb\nf8h9NEMu2sQoLFK9Gc4SQ8o6j4ccLYGdgOoVoq4zzy4Jr7ZtCTuACfCfhp7wy8ra\n+6cugccaSd6AzOKRSVZvQvkUTFKIoAOKwp6IhlU48rmi80MT07eyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCGhfVMP72Y0G5XUksE3dPgFHrzkwCgYIKoZIzj0EAwMDZwAwZAIw\ncpX7irZWyuujWRYUs9kLNgB2YLQK+n8r1fH+tJg3+zkcZ2pzhGWmpUUZWOzsDqGC\nAjBUbhlmrTc4LrEBN0EMiRYzfPD2kBZxusLBDIg/aDYERCMcsFvF1T9SsuasF/B+\ncI8=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUIo4L+7xe/mUmpKy4qOAQEIxz8UMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEoFgCjb1/7BUJ\nEXKIPJLlsOSp/39G8l92wOSr7h+Py7iwVwu68H2ykftMOq3tRwDRXZHz7ViqcIZ9\nlfMcS8sbRtVm9tBbNciVUqTLWX9nHr/c4PhKEi+LdgtSUr2+hHiWo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMR89BHC3yKC4YwUgyBVQUGBCprQwCgYIKoZIzj0EAwMDZwAwZAIw\nUs2BdslcScIwcmxoB60K7/1BPfQI8ccDZIMosas6U2zhinTnRKik1T0i+uHhLl8e\nAjA5apAwSPTnP7j3Bo/FOCkfjTqOjwp2lUqzDJYKolKsHX2sy8hX9MkYiY46SaJ1\nP+0=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUWpji03mJsR/16MP8BrOfpNz7aQMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE+KDMC99Q1rWi\n+FwlytGMS5qzTDytCvk+PzdONnDZ/weNSv4j3BXSo588IwhIxLtfcBlyo/+PmE1c\n5qGFXuMoZjGr22VpvogkRgPejD+Gawb4A2XHkMCD8NmO66uPw97po1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUN1qEI4eQ+WHavb9ypGV417NvhGowCgYIKoZIzj0EAwMDaAAwZQIw\nL0khkiDOiFRa3wx9l5JNjaSRePPc3ZaTaJQkPYeauMaLWEvmC/0e2/e9gPm5qJ8E\nAjEAgXQMko3vNB8VRN4XjyFJa8p/muZ/tLA15wPnb/boUmiZ+njDDSaiu8tIQrTB\ngHW6\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEJ7AJvrqDUBNKbssGoJtww3v+WowCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjAwWhgPMjI5NTA2MDcyMjIyMDBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEfgJ8w9GUWM3y\nyusedZOFQrgXFVsdtRsMSHbqyVCN6+Wow6SIjy29GRMSP5R2aswupFgh6lXJRqnr\ntY+hpRumFKsmSo+5+l8DBcql4rzs4utESTehM+Cq9LYc4A1z0UIRo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMCm3UqSbT01Zr23hLzCGnXbDa+MwCgYIKoZIzj0EAwMDZwAwZAIw\nFNcN7mKJo/bwpRT+y/KbYkCJsvljdbXzJOXXQ3e6J6R+0vLqcT25J/ry6pBZMUwR\nAjAswu29z8KJCSxnWwnPpHDmkRT15zG/xS+pAmx3oeQSqp6ZD7qpdJE8zzhbfe5x\nwAc=\n-----END CERTIFICATE-----\n"};t.TESTNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUMkNeM6Sbk9ZFYmRWZmSgTQHHWyUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETLLoIMZjEhDP\nKLHS7bJT4OTYGgR/8mB65yfx3KqMLYFF+q2SpWkIrYgUQLVEUEibVSnLlxRUzH7R\nszcKynpTwh0W0yfWanZKQg+RWoKkEYlu2GvkUtJb8cRVM9NLmJUeo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUSrIepwFx8gZ8/G+WGaxs6GgkMtQwCgYIKoZIzj0EAwMDaQAwZgIx\nAJxC0fjB1OrF9vkCKsfnPS3Z+1hscrZhEDG38NxdLEAfPQ5VmyrSBgJy11FBp8yB\n0QIxAKzbge3Lf7iBMwYwm+2M/GiVgmHNMLdtrYuerWpdbYOHgRNAkyt57JoThn0u\nTzkd5Q==\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUGLriiLPacglp6U+BtJcF9TI7xEUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEXhR9cb6mH9AE\nGNSGk3OkxN1C/JW49ddYZ/XWD4InjS8D1kXmB1Y39v1mF0L1loG6lDT8Zp46zrj7\n5zMONXZeD2b0mx5hHhtllPTpJ10Tlt9FDoyFbKwPRQ/SAPNADfuzo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCaKtx8RZ1XJO9rmZMbIcFJZkcv4wCgYIKoZIzj0EAwMDaAAwZQIx\nAPhDW0VrNSmq8hODdhIVV4GyvpYhp3Fksg+sZr3DmUatwn+ptj+X+9IzgPl9QYE3\nkAIwcy2ixgNkjC/DYVmgT4MpUnLneLK0gA23Vj2QwACaTH99H/ybqUH7srj0POB9\n5wvV\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUEMduome38hvAuIKoGjg/tHatQZMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEl1olzP1L4WgX\nd7aujOXmTQZt3tEOGzkMa3S6qJwISLBI7Tb9KaW8zYIe9xWBVAwphCbD0wn9xpPV\nwMr4uTn+JocugYBbe2YoUGzWTkxWnOEKXbh/nQJCe3XE/C0FY8fAo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQULfw7LVtTiUDVIvZwhhWW0soQtSQwCgYIKoZIzj0EAwMDaQAwZgIx\nAID5v3Lo2zlnpFzTdJFqBpw6fV+vmpI+JBj61f264J/uHMbELiu2dwxhwWaMElX7\nwQIxAJxccFr7Bf1KjaMyT2dq75zQzFuKDMj9x92yAqM2Gas/Yay+Ccpm8FBn7BFl\nke1Qwg==\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUcCg/gZGxk/UjYkhW1jg4Zki+jfwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEOSsXBZicyrxy\ntHJHKh04Mvu6SKM49IC7rAXw5CjlOod5OTeHg0fa5vVoBME4mlWP+LsMMqf8welC\n20b4wMwUC1Hnd66v8crX8L1wvZ9EmKLTvhTd65bS5zloMiSbpdF2o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgMMwqaGuUT6JCH0gsbqullaW6/QwCgYIKoZIzj0EAwMDaAAwZQIx\nAMggJ1eMmT7C14z7wHCsOdDOgmzg733+a5dsuAcxknoz/sQLN8wqy1JxShWgEIA/\nxwIweTDAX/4JZnr3mlSC57lYXbHk/c319VfN9Ybxg0FaDXa8tOqg7Ml6Uu3IGujQ\na3eY\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUXADwhiD5acpA66GPoXuAevBfZBIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEBgLhLiGz8qWu\n50vzxSyQkrmhpxuHBJhpGzA0WaUJdAUlaUOL1753ZxxA08wUmcozILNEnMaQ+ROn\n+fuGctv90ZcrSekODjxjbKH2ntVLP8xwkBRCTJ0WRBNenxxBD438o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUhYOOD/z3ty9O5GuSTXnyujIqBRgwCgYIKoZIzj0EAwMDaQAwZgIx\nAMxbZ4gvkXaORauQFUPRYwOJrihWIA+3ttGDua//YfEbshytQ8b4L65W/1Xs8eOd\nDwIxAImwTzRam8tScdOzmuGgPcML2lkETMpMA2rZYVyEL/VNktIxvB2oE+4M0v5l\nr8IbTA==\n-----END CERTIFICATE-----\n"};t.MAINNET_CERTS={"0.0.3":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUZWoT9TlgbZy+syLbqZhO5++1cVgwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8NhDGK/dgWvD\nRHEJ8af7CBDdhvujH5XIrLen33GTLY8DbJwJW2jdsLGx3+DRVVmeNQZxCbcGj0e2\nIyypkG6s0mtnmeymD8mI3JU8m1aZiuIptZSH3Bw1BNn2hKU4x42co1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUbYGliiNtMkGaroQxXWCl+kYHDBwwCgYIKoZIzj0EAwMDZwAwZAIw\nImTOEYu0y73Ggt4NAjFFsN2sV7CsEL3NoJqJ7MZ6U+b3Ax1hnc1eE0oei6xH4VNF\nAjBB4iZNvAn6Esiu4k+JPlYuMesplgMv33fU5GsfvLIovN8pOJDe0c+CUmsnfGbP\nOsQ=\n-----END CERTIFICATE-----\n","0.0.4":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEGWU0F4aKffY+le55ahQaScDYDwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEqW6TqxMmjL3h\n9AVBgfVaFRZlXUcyWa+QYhzxr8sksgJqfDbmGtdaHIdiL1qCPuC4v4G3qrAbXZRm\nTYNo5Lz0X2ic5pES6DbacdjOgHH7TAY4BVKkuVrydln2jjhh7SmBo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUcBlY5a1rV0H1iQuJMwWxrTEWQ6MwCgYIKoZIzj0EAwMDZwAwZAIw\nR+mY9B2U26yD44s03hjz4TlpkyXbVfmgL3Elqo3lrWDJtvT4zpjGjxg3Q1P3SpZQ\nAjAy9DRVrZPzq8iq5Ir7B8XgLQH5QL7SQ3tUL1HzXJYOukvn9Ofr+QADhpb0oJLB\nKug=\n-----END CERTIFICATE-----\n","0.0.5":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUbxzfD3ihIK5snumqqKtqtcBPSSQwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEWoAjWmW7vpUr\nU69wRbK9Firons4kRoin6N8lMjCD+xzsrsT6/wycpzC0F8fxfIvOYSMWRtinhOKl\nZAxp60OWYP87iH7RqWBAnHIJZj/znKTGd+8Sqp/RVQmButFHg/+Go1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUTMtwuDzI4Hun7SPp2Nb3scjUUXkwCgYIKoZIzj0EAwMDZwAwZAIw\nHKAgaX39Lgc+4/xHXzZR9mi2p3pf6CDO85Xm56UR/t48HnBkRorR3TFCBXACeIIs\nAjBtXglpDnRf6M+nVBlxLdwCQXiwr6vQJ9+dUo+suNkZ1JBmtHypyIqkG2yT4z9C\nLcs=\n-----END CERTIFICATE-----\n","0.0.6":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUPwXdJvpCJYO9lm6uQN3S1aBi3PswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8PwBQ0ywu+0t\neIYbaiKwzGEScQMOYFYAMw49++6bGRiH/XZjsypqlJWy3F/mB3+HNVZsqgB61Jpj\n2p98Afkl57MYWhWM29t/x5qAQ8LhKGu2k+BOnCcvHDU2pR+fmFSOo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgI4r3/iwzFN2wh76y/4XDBk7wgkwCgYIKoZIzj0EAwMDaQAwZgIx\nANAjwHdTWYMCCjrtb2NWzDpsKjf3m6ZcaxbEcM1ta/Zji/4x0+VRZa917CkfaEsr\nLAIxAK/erPvIXRU9eNaK/TAQqppSRaF35G6iNnYjQZzfjTU2DczhT4oCjKzGoCHT\nkI1zOg==\n-----END CERTIFICATE-----\n","0.0.7":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUXUGzJj13Ck2Cp0BKauLOdzgCPwIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8Ee64Tbu53i/\nKsuLOJG3GQ4e9gQ+9BtEy7U8kfFzRHh6Ejn7LOW38ZdKX1HP4zXuUusjNvytqDvr\n7eclitqnegcEOkIeFK3wQwBoNILuq+r4LRVi19V+AIcl5w3qkJvIo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQU2tbfu7hd7USgbS2WsG/6BduKEAMwCgYIKoZIzj0EAwMDaAAwZQIw\nRw/BOLoScmU7P/1JnNPsGarmnvcuJrokAv1wk6j8s5LGuQHReX+d+O3RPLggwcAY\nAjEAjoZnt9simul4cVcVy4G/0f39atanUva17gyzlYXEYx7B6UloxLeEcZhlbBf8\nGjRf\n-----END CERTIFICATE-----\n","0.0.8":"","0.0.9":"","0.0.10":"-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUNauEDBCmP9igXLWtRpzkQqIGo/wwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDcxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ5WhgPMjI5NTA2MDcyMjQyNDlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA3MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjbkoJBshQXUy\nqm5K8ldpTDR94Wk8iEM7QwHfceIxK5pPgaVGRkoJyVLSK5LMH4jyaIHUrtA0lIBQ\no0MsYkq7TOOm7+vo1Yrd8EMbu5StMb3gsXUrj7E/SBKIxULak6hCo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUyKHMzIBPRV/mrgG7tIjzOiw2xbUwCgYIKoZIzj0EAwMDaAAwZQIx\nANsigVtLgTdKWBPVJPstWA0H8yihf0/dmM3GO4qp5keGTWz/O3tnom4iDB6eSrcA\njwIwU82Dh+Wxl3kAD3YJH5VhlfHTm1rPlJETBHZgvPBOYqippao6+WZFEpn2/IDC\nNTjn\n-----END CERTIFICATE-----\n","0.0.11":"-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUWtnJm2kswnXYu7/S5BnnTQiDRcUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDgxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA4MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjY9Rl+s00xFV\ntdTpAixLR4kJIGLfSLOdm+ofU/KuKMRSz5x1ORhIicppKZK24U5WLGXQU1fKLvxX\nOmqwqL+6oAONmiHszqVdhWne4QPUba0yw7rf1/OI+IFF1HRK3shQo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUb/htoTodbq5hjP5RNlQ0rkKwWB0wCgYIKoZIzj0EAwMDZwAwZAIw\nbO+9yArr21XKXjYHPadEAYINDxgXEC3W8e3X6MJsHCIZITddWWOyXRNFhz504vN0\nAjB8aBuhrKcg1b4CrQDZQcosyVPUGIZKkXdQFfbVdivKrGZvqLS+GdPLd3v2MmHY\norA=\n-----END CERTIFICATE-----\n","0.0.12":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUHBsegV0bKtwpHRoOnnhbK7CTHxMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDkxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA5MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEK+ZAs/00RXaj\nbuQJJy4zwr/YTj9h5V+vbY7sq9Z1RByEwTRRQOI3OuzzMq1EWKkVJKF/QF5b4yda\nx6W9O/NT4EjBXH5XR5X1V6h7aT01YBqsxgMxuUP7kw9K+fW4k6Zao1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUKbecoYirLjf2O2oPkoggEE2P7FcwCgYIKoZIzj0EAwMDaQAwZgIx\nAP67wsVOkeFo/9QRo+PnZhzEvjOZ/+IUoUhimdljcVwn79tzNP+obf7VW3Oq1wH7\n4wIxAL65+WmMTMoI2cN7TCiL7G/W2ChDsASeHfaP/4e4ZViNONWotlY9i9aS3Kwt\nLTea1Q==\n-----END CERTIFICATE-----\n","0.0.13":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUBNxMZRKru9jzFA8zsOAI4xkMFCMwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEwMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MFoYDzIyOTUwNjA3MjI0MjUwWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTAxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAShUi9sglwb\n0U8QUrGOXJuHRXA9HP8RypkgNBwNRs1YcmPLcuwK70unWlkB81M44IQ7z/dG/0cW\nhfFdRI5x4jAeiUFivmWmMLT6lJMPxJ0BkWTGVFVwI3SKcgSvHP9pNS2jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqIMCDzCKKwJJLCXhu9YJYPw6lsDAKBggqhkjOPQQDAwNnADBk\nAjBl0bJG2A3443ybvrkKjWu8do6nDSR08/M49+19QfA1aDw0nb2sdCOE+xNitpQ9\n7ngCMGuQHmnKA2EyOIVpNl2EtRoG+vdmLJQaoukhmCWjkGrQHkai473tGa9cRZ/8\n+RZFzw==\n-----END CERTIFICATE-----\n","0.0.14":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUJcQrEmPlIh0KWwiC2X6lZ/OdNs8wCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDExMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTExHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASxRizKJSbB\nHmG2amvTHLCyExJngCh42agaFkv5Ab9mZYbqZPe0nUn/8RlVAvEiRNggCMYXC6MU\ne4J6D1aeLhYaa0UY8Fmxd20NUjAOWhJgUXds4ILMMVG+pevofeC8AsujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBS2Ic+LU/6Wssns4Yyf3N6E666xDzAKBggqhkjOPQQDAwNoADBl\nAjAH0JMX48GD6vThA6FUsVnJmBID376PRZgxhuZvn9C0HawvNjZVQTkpzpYCwmia\ndO4CMQCotakNxyiOxu/BbnPx6ld5+dqVCugsfqClhUhy8ROpNHfKxp3rW7HopowT\nWiMlIyI=\n-----END CERTIFICATE-----\n","0.0.15":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUSFFNFv1iquxd5txlWA3PlkNju2EwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEyMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTIxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQus3nAPZkb\nja4Efo7iD4s8NLsFwEwQXQBgBGIJwtA2JRgLyXeWpuu125ib6qJzT8CHvQZhel3b\ncwYWi4f2JpabMDepHELLxwZ9fILnAQ8GiHlzhrVq2NI15DI84dXVe4OjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSEO/JFC5/fDcT2gtipDMYMMTd96DAKBggqhkjOPQQDAwNnADBk\nAjBalAU47XQL4ziHD8lj21pcp3+R5FKzn96HclMT/vraknCT1Sl+vCf6EYsqmi6Z\n+RwCMDpxL6P6OMqyE+HzAeYQ4Fa7MYEQfZGMjka4zxetBLvIpwUCT4EAO8gv9GoU\nwCBUzQ==\n-----END CERTIFICATE-----\n","0.0.16":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUdnkil4P+VthVMnqygVwGKLt7VfAwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEzMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTMxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARUdz9ig/iA\nhEAth2YinHKY6WM63BAxUVItzgk65l1T4wTzwoK4XEwclY5vIeFmZy2e0s95lWgq\nSI68VS9gmJ3xp8Q9wOel/bvuF2tvNZmF393TeoNQQVHrQM1yJAx+nPyjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBTBFdNwHKSRDo6CxfA1aglY0N8joTAKBggqhkjOPQQDAwNnADBk\nAjAqPIel58Rcl2kDxZxJPD9mK9xW4TU+d2NuP3n140TQ6nPlw1OwCPI7a4i3wfEe\n08ICMBbrpNRdFZcvy76KoLPfTPvqbtWWaR/0tLZg4Rjj3x7SYgUg3vrVDmodHGkb\n4T2Raw==\n-----END CERTIFICATE-----\n","0.0.17":"-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUDg+G4Ep+KEmIo+nCOY8DjFX60swwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE0MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTQxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCQRL5xUUh\n1bsTXRPAf/qVFWEOxsJTiMlF3+UJ4MajWE5zmc2QNIzqj7NE24z3fNxgjViNK/8+\noBNQeqXfyJ/4etNMzTyG4JTsvWRAQ3aR1J4WDbfwpcgw6AIOKq9OLP6jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQB9V2fygf48zyyVL3bnAxCLDUV9zAKBggqhkjOPQQDAwNnADBk\nAjBonlThjjvi3fg7ODQcatPHBkp8Yon/p1ukm3YzYA3kitqroXU7BkmwRae2fbqD\nTTICMHI+fAy+xWGwXAFNcvNTop11IIoszcgJJY+1Mc2Q/USk3pP6iezta+rvnaWu\n7JySHg==\n-----END CERTIFICATE-----\n","0.0.18":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUBvI2Vq6O8yXNzbQlj6uQOdpd1lIwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE1MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTUxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR+jFDSzCdn\nmMQpgz/vrmD/xioMioumUmyLAkB+voTNsMAOtiaDVbvJty3b4SJETv5tuZyaF5Gb\nQAYuKsP7X8siCCVLZC9i9nCg46NHtuQkEmw1pzUUDmYFDfSV2tWedNqjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqvCmoaVEp2d9WPctby+ooPMGmvTAKBggqhkjOPQQDAwNpADBm\nAjEA9fQ2OFZa7fAQGGYydfVaUF0ObxKj3T+hyl0jiCKLe+hyxJSrXCFS2BM71UiG\nZMVxAjEAmCzESBzTVvl4Uv3TyActGTijTCqTNpN3gJmQbZYjKVtqf8Wxj9WeH0pM\nE8BlA/qE\n-----END CERTIFICATE-----\n","0.0.19":"-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUZBwp7UPLJkDgngbUIx5xjbAn+7YwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE2MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTYxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCVYu2uF3T\nkCkyRP0FfXVyyTA1z8DFqCKGrcODgGJuVAk59H6u8FIRsNipkb3BXFI0xGccok5X\nT+t5bMaGDHYJ4fjU78UtPNmankQ5HoiMRJpy7Vn8mzizUzUqGpnhu6GjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQzE6RGn4YlIbdrl0niKWTtJzfXoTAKBggqhkjOPQQDAwNpADBm\nAjEAobnXnwlNGNWoHscbl/ytUBSyjC7V11sLYJqtORSRX3k2+bFGsg4ltmOVjTdd\nlXatAjEA/Ja3jufmdruqfLa6qigXuYI00YaI96sOwNhdHlnksYfqF41nDe4BsSW6\neQ6N5M9d\n-----END CERTIFICATE-----\n","0.0.20":"-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUE1ZRB5n+Yby+Mwgb2xAcVfTZ53kwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE3MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTcxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR0OfTmHjxT\nkBiU3GMa/bTvlTswCDAuFQGIIpMWHaf6V4ighzmn20jCg0AVFStb2q7YLRr4HUx8\nToMzsd7/yjl74BwJgfZnL75T/JInwyMgOBiCTXEf6qVDvhNzL4QJuVujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQFKRUUmdFcDFQzBN9XqMvLgPd7NzAKBggqhkjOPQQDAwNoADBl\nAjEA5MUUXSehY3KVIv/2LMgrqo1kPiV39fwYuLSnsMJ67wK8yN1NAkkycg6q2K6g\nrBIvAjB3J3a40TINOZTYG+eQs+MSWyfANJLRuJTEOorXzMWM6+05+JYhPnLA8hke\nCRfzmSw=\n-----END CERTIFICATE-----\n"}},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.TESTNET_ADDRESS_BOOK=t.PREVIEWNET_ADDRESS_BOOK=t.MAINNET_ADDRESS_BOOK=void 0;var a=r(n(679)),i=s(n(84)),u=s(n(39));function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}function s(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}var l=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ad0070a0e33352e3233312e3230382e31343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340acf070a0d332e3231312e3234382e31373210a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ace070a0c34302e3132312e36342e343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ad1070a0d33352e3139392e31352e31373710a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad1070a0d332e3133332e3231332e31343610a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad0070a0c34302e37302e31312e32303210a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad2070a0e33352e3232352e3230312e31393510a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d35322e31352e3130352e31333010a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d3130342e34332e3234382e363310a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad2070a0e33352e3234372e3130392e31333510a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b35342e3234312e33382e3110a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b31332e38382e32322e343710a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330ad0070a0c33352e3233352e36352e353110a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d35342e3137372e35312e31323710a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad0070a0c31332e36342e3137302e343010a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d33342e3130362e3234372e363510a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33352e38332e38392e31373110a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad1070a0d31332e37382e3233322e31393210a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33342e3132352e32332e343910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390acf070a0b35302e31382e31372e393310a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390ad1070a0d32302e3135302e3133362e383910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a60363465303938363135626634303566376564356134303133343436623839633438386366636436626232356134613637366463373765656131316433336437303236383266306136396138303330653863353737376430653432323033373939")));t.PREVIEWNET_ADDRESS_BOOK=l;var f=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0a7f0a0c33342e39342e3130362e363110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a80010a0d35302e31382e3133322e32313110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a81010a0e3133382e39312e3134322e32313910a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a82010a0d33352e3233372e3131392e353510a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a7f0a0a332e3231322e362e313310a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d35322e3136382e37362e32343110a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d33352e3234352e32372e31393310a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a80010a0b35322e32302e31382e383610a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a81010a0c34302e37392e38332e31323410a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a82010a0d33342e38332e3131322e31313610a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35342e37302e3139322e333310a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35322e3138332e34352e363510a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a80010a0b33342e39342e3136302e3410a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e35342e3137362e3139392e31303910a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a82010a0d31332e36342e3138312e31333610a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e33342e3130362e3130322e32313810a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a82010a0d33352e3135352e34392e31343710a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a81010a0c31332e37382e3233382e333210a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a83010a0e33342e3133332e3139372e32333010a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e31342e3235322e32303710a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e3136352e31372e32333110a388031a05302e302e392806320218093a60363938333261373361333630326538643166626535616435386431633236333761316236373264373165653837616631306462363438656239316166623232383235336231663437653537643364346134346666353437623333393461613232")));t.TESTNET_ADDRESS_BOOK=f;var d=a.default._fromProtobuf(u.NodeAddressBook.decode(i.decode("0ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633435363165336332373863643635306538306334313363613434343233633163336331336366313437356636663639373664353937616534333262343961623432303836623739623834313332363035346238623364636635376438666364373962666330353831383363613234636434633163626335373465643131313765326635623762336336336365376230366439623465666366373337353633376234316665366635336338313162396465363134336633613532393537636466393536373735313230623333373033666635373632313430376162393537356263326433356330643434663039383366633165663633613466663532303966303730633932616631303632393536303163393662636564303634656331393031393730313963363831316334633864643830636234663461633731663961643736653761633839343536666266346630313166393061626432643930353336653832333436353166366265663932376533643564386237626634353930353039383362656361336162656632613964393761663334353737326137373430653936393932373562303138656130646632383661646436636539323365663930386662653736326137356632313131363836326462343464336463613164343462346432653864633130363663353030366262356137643935346164323535643462363033323733343735653531316165623438356430363961303637633061623563323435333863393333633036623561366165666139343030356332393135323133653463636461653663393432663632373266396464353238326436623839306631663230656664323339396364363734393234666135373034366163366461333265373339353161373331313365393166633262376666323965343835316238336666333966383362613965633666303863656664626236636262626666616266646661613931643933306637323030646134383133376333393463626431336537303165636463323631366664323162616436383161613466303031303230333031303030312804320218073a603665396138616263646364653665313134396133656265313766643538643839303538333961383664623732623036613365613230616131373666383638623235343838353261653432336437613963366237636666396537313436323961320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613163343037373135343330336363373263346662373639326333663934323531626465633132333961316637613839373261626539316133353332336662656361363235613766666165363430366338353564633261663231313039303062306466306536653664623736333634646661316666653835656461353637393336653239383562383536333461333261613532613635393964643663333062653166376136633562386635656563616632363231643861343539363832666364326462616164313536316431316633336663636237663535303061633536386431363564626561616365333238366432383934663634313239643738316436633732666437643539396339653164336166346161343333633233623931306661653463343834313634316636313532366164373837656265613533393837343136376539643361373363633066623135363432396431356563373633613664306630363131356137396239616637383364373762393864383330393661613437343366393734303864396531346263663464646666653435393137363838343762343063623864613763613337353235366432623933356430393566653235326661653831666636653337663834643761393064376535373061346638656633633764373636656564613437326630393230313939303135613839303832353961383733633534353466636262646361643265353238646538353435356234303833633764633461646335613938386530636464666463313539643564373132616264353434616137336563303239303839383134633938613434663236666330363434363539633138336533313834616132373266386431646330626661336530613536303438346362303535626134646262356363333339656338306264313164363432646333613730326538633730336162323139333038346439626436336630646665313261343333633235373665616637383163666164383637656637306264613631373638623262656631346635306336633362386230393666303230333031303030312805320218083a606464336233653763643361323537643832373665343635333533363162303138623730303931663438363635653832303031306538316563303539326236396264346265316662643765636435303964303730313364643034313238343266640ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623263636163363561643066633736343561383137626661626334383761643765343133313165376133313938623337666238343264383463333935623366363764366264383438663130633666303363323930653866376461613864303031613834343164633335326131393136306133313933653638623832656466313961653637363933613961333364346362383765373839613130373037313535313565613737326361613862383661353639623931633534353038333564396333353466306461636563393766653737303931623435623134373639386237663836303134323264636432323631653932386465346461633963343264636261666466393663303732333362613330323730373666333763393639653865643330623662356438663530333462653764393263353936663862653836316535316663633361323432626639643862653965326139653865306631353565626366663233656666613763643537633130353432383131643830373736633935383535323666646230656161333465653139353564353131313933393066653837336534633034646564643239313635383834623938623436333038373838616537666334643461613461386663396263323637346261333231343933623632343435356164343130633164653731626339356431643931666130663230313431386137393565333039656166323937623639396266323763396661323736336364353963656230323165313662383230306331303630663238313766643833636663373637313833343839343631653335393932393162333830643665393339626161346231393233326136613237326464653635316638303436666463333464623237366137373764366662326265633332353562326363323434623461663536366231303566333063363530366464616530656233646564646366393437626362396336306530303039383466336234613863366334656434626639306263313933326237663934646333616536623336303030386562393032303430663962303230333031303030312802320218053a603561383634313561303861306138323566336232656237353031303135353230326533313234336665343161303333333834653738633138633131653565386632303964343933623062326664343565303662333734663262363964663564370ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613365333762373663366364356636363232643639323434343464313263363737633339356632623539303266336262393862386138623530353561373037373036636130323863643735303630613264383730326432643862303439343762646366653061386331343161613238343462316530366536363139303031326538623633323661623066613331373937336263376362346432393439663231303861613034633462306339316261613537323866356235363232656337356162663537386131663762343165646532613637656264363963313865353831666466396336303230616330646539636132633331663063363436393030333331316662623563653764623439633738376531613764323761613432356565376238346461376536363933396639633830643065383266636535356530326466633862356337383431386132366161343336353036393837313962616663656366306264343930303061646463666134303537303862646265666262313937343964323264616230303765343464343565613233623130366638383334633135326532353036326434636632346666323533353663376562333732393130353339336662343962616239303461303266306630626234313763643931396433353238393031323865366262666634666163396639306465313138613937346632613664643031653033326137396231373866363066613166636262643032623537303466623436323935633135313930383136333733656464363633356338353639373866316239353033663166373362346230626538616261326564316665656164353939353362663832656664653933613334373161626435356364613362613861363733666262333739393734396662303036643030336630653633663636356333343631643261376232396463386232303462613539613635363638613436616532383738663030643166393439306466396532383066656266343331356561303465616135363861336139666434386336326336336236656364613639303230333031303030312803320218063a606434363430333938303337393230373965636364356134343331316361306463323262353065633839356235366535336431326232396637326463366462613363616665326535623831303466626461303338616635623434376430666231320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393361323135636334613761373232636165396331336162643633366466393963636565633661663964623436623639666135313637313665663530636532343930613938316530396162303139636132636234363831316235623631396431626431643565653666343661343263373737636264656536343261313438346563646635646464333732393634326333386336643433613838353838373434373566353832343434333636346330346466656439623839303435666230383565323563336566636234383431373333656666376335323963313339653639333530633263643739623263386431393637396137313265346538636166643332363735343162383332623365313061303132353564656636396466316539643362386438656166303331316465363764356531326232366464303164626264396433653432643335643964653237313330326530663166363964383763626337616361396538383637653964343238643363616230363636656234393064356662616233306266663366373835643033663230373261343362623962356535343635366135393263623631656166643561356566323834633763616563363666376634373332356363306434633164323766363631643861373438636135303731633036656631333464666639366634303836363838333636643436386132343738303031376530623536616261376661623433623362376330623737393036666165353438326633323831316332393265366231343435346531346238393438303161383661303363633437373934646430643734353237613732653432346564336166613034383939656362396136336632613961653732626537666139383961646630643635613332633835316439383031666334313034386466333335363466633762333137303765633866623830313430666537623761316661313230626131636236363033323463656666623462636332643962623764653063663534633831396632646433626365616465633963323566356531396463396231303230333031303030312806320218093a603365303261363732306334343636353965383633303564353562666565383230623335653635306665636163633535333039373435356532633465303332636339646564313662316262343464336235393262626163623663326266663165360ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303930323539663465336439663066333934323536353438653963373330386231306237333430336363393039346439376164313531623737303631373062393737326365623634643636326563656639303161386437643135643331396135396338623731303731616363643839356237633933363130646336393736663637633465313732396261383337336162376535326133663363386632363534393164646536396436653039393934373065373434353938313133316264393663333665363836353230336662326562643564353065616461666237323633393664656331643931373438393862346539626530346337346433303466656164643963626433323334633362376633333036633939636230633333396663323539363962343164353861326237636663313833326532323664383163313936333939336532323535613038376431363938633033643432313062643634353830363434643039356361373661613137393465646434306331633837623566383261386533396636303365393731313662613034353738653765383033343634393564373835643465663763663737313462396562366635663965306239613934663462373338383436313962393237346434613935656631353735346138396439376566356331613838623664363933653061383065626435333766633963663063613931643163363264393135646537656438313862393532653634633230303239336565386532383461343136613732613365313266633764343233623135386639623439363630636263323436366662656430666564326532346531303266646539343265623463666439346265633436643364393066633038633339666563626130336530636132343634616536363462393739353135626132396531663730326333666537303262653739333739366438656462313761613438633039323930623032343534396630363131663561653233656437653136343432646637643164616432323836633262623039643535323264643365643639386332663032303330313030303128093202180c3a606339373462623938326338313931336237333236643561336639646363343836313261313566376161643032663230376230663130636432303137613666626666353830336537636139626662343730396162323862366230396435623133660ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303962646438653834666164616133353332666334636530316138613137643463336232333266353061393739306532363236383465646334383233653831356131626435623230656365613762663536653239663662623762383331666233626636656663643134373566306238656435666662306231333835623936643136366236323966303339366138666566356630366534626361323565653461313334306565323633613464396262303230643866343732333036663364383836313338646537613031396530353962643061666339303263636261316132313361653264616136306338613031333735356665306134386530333466356234303233613264616465616138386335343836383335336163376137613364663132623266623634313837373465396231346265366561623863633237623838303132616436313632646137346530656562313631333539303566343337333734646162383538366437353061323662626433616332346165643837386334643533653635313037326338373165393464376163633537356339363733383137333461353366656166346437626136626364643234316363363435386336303837643836333032616132353163303466366435366239633332643764393636323437353065643035353738356430373733663433646330393962323863393232383131343865366338316632393766663964313636653030306163303462333132343138363737356663656637356635656261306331303332626631333064663663643761343632313164306466336530353834643932656136373334396438343930353038656234656638386635346338633364343836646538373139663130666139366665623835636337393630373663613738313331386565326439656439303363613133333630343063353961643931613464326636393865393130386165306564623962316362393561643333623139376666623138626431626138623536636265653261616539353835656365323038613165313462343835363436333032303330313030303128083202180b3a603937303834333033333130373866353638326337663332343464383263336233653238316139313837393537386465656163646363326132656265353431616631383831313561643265383338363565356635643234376234613138633165650ab50722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039303938383635646566326632616233373663376630663733386331643837613237616330316166643030383632306333356362366562666362623063333330303331393361333838633334366433303233313732373031323139336262373666643330303462383634333132633638396566353231336362623930313130313530396465616239346632366137333265363337393239646134633463623332353137653361646262333831316435306163346337376331666365386236353136303632313566333437303766336537323635353435653538633839343630396532383337366264623737373566653330343339653065313539326664636230633365653163333035373733643037326136623839353765616663653161313162653936356564616666333834333336366362366134346563323561383930313036653632343735363766373662353530666461343832626165633633303764363938656338383834316664363666323366323130653437623861396463626136626134653166613731366462333363383065333038313934393664636235653536303966623665376336313533373962646465643432376539323331623932353463326261663934333630386138366436393861653961336338363339646638383764366636623561373133383564323433333864393131613231326266373166316532616363386231383662393665633865363963383662366430353832313737373661303963396336383935336564623539313635373862356132363362326634363965336230633037656164613731613434376565613766386663316262383037343235353536376237663062643165366166623033353837313863393862343239653234623232393835393666633736636636616633393663613934333464373932366563376433376434623932616635366434356665666638313936303935323234613931366331666665366236363765323535666333616338636363656639323064633034346232353030333133326238373830363734326630323033303130303031320218033a603333373339306438666561313434616663313265383132353461323864616336656138323839333833366163303732656666643835653061373734383538306566323830393636343863356137663864626234636538313437363831353133370ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130306335376564623966663237366530323362323830323163623164383763646631393636623639386366343865346561616137633639323037376365656538636362323339613463393231353937653865383966376363303564336633313331353738393736633465333134343035643461346530336137323431306335633039636135323761643561383562393938363337653732613332653166626330643535343662323436356539653830366332646435303965623035306162356662323730363366643932383135623164643236383965323131316361656236663534396539346139663030663038323164346361366336613631313766356135333363393236336266303734613330643563626566353064316338633233383762636139373265646564613039383362356430613662353764636230303230303036383238623430653430373662343837306232346261643834303536656535326235663432326538383430303238633235303036333832643865396336363132323566346637366561373265333430363037653966633666336332303433333037366131636138636231356564303361633839363664303530376263646536383165346530323331656539663837643131316537623438616338663934643264383432623532646637336635373363633534313439363437393763363236393638666661653734313866336236313039623561306630396533323233663461346435653335303964643235303133386636626331376266366365636531373539343433306466313830613338653930616466326166666266616430633662386331623837663137386130363164636662666638623932633931363664383734633166663561663466626364626665386539643039393337306464663630626537343736333364333665653465623563643531663665336333333965313531653431626462356135636532633863393761306134336233636434636330383138383463383739663964326633373438343238633835373366313763393066336362643032303330313030303128073202180a3a603734306166366266373339653838336338386633333434633961306638623330316533396463393831633531363365306465326133666634326239396534323665643765353662363766343231383530333834356466363266343963396662300ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393133316161333638663933343532323966393762363235396363636166666561323365303063643565616430326533663639366331653731346565333933396461643836306533386266393561323937346639656234386539333433663861616334303565613935356430353332336531313762336231633934383133613361663432666538303832633364343362616631626434643833363765393364623030616436393665363237613130333661653533346630313165616435653536663337613666666534346236623965303939343031313932616435363061303334366234316138313030393566356632643766643332643665656236353562613735386336623532366331323933383661663731393763376135336165363033643632323833323235343936316631366430656661383037396137363835363138383862653733333439323231373935366262636166616562623631333563356662623234383464356234613566646630333336616330326532366331363532633162643865616633306461653164366433656230306637623466616238643634373866653864393565623931316466393636613064656134653532326462373662383936363537306563633561663039353136343234663061663566386565363665333836643536353037313339393731363961633337353733626635326664303538646539356162326666363865363831313161623233343035656139363462326262383864303263306631636165643731656364643465346534303835393438373666646238353030626335356337626130323036366530356162393864396637653034363664393730326562353765653337323266386663633835613735353035666633323632313730323838623738383732336164623937653464653536323063633930656164313338326663643735373138383966656662313165363737316263336636663366656231396337616335343238373864303361393032373035323663336565643234393465666635346531353363613966363839303230333031303030312801320218043a603765616236393661623935343336363538626331346666366234626534643932356364353162323230646632613164356336656531363061646166323961353165363934646533656531383463653232656164386437646239333231383266330ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038326465373330363566333466666332393334306435393439643232323062316534333636656435636637633665626436313663663934313661353365613030313766366262313136626664336633646566636331356237613464646630653434643032666536393536383830353365373961373730653230316263663731393333393030333965653866303836643466613734366337653035363931383330316639623565383465333932363238323830383561373962333232626361306235643835666539373232316132366262646532353863363230663064636561303261623165646431366363343961336632616239323838653364643166333764633462366136663731333366663932653534316337316237306432613266363664353537323561623138626638366430303965633364323466356431326530623565363830326431313531333732643462373634656265636234616638326636343934383565633537623561303164633637393538663561303363636161623763626139333534613137333732633133313662613437633935336161663934393031623366386332346536613361666436373538653766336231343363653264643363623037316232613734633932316365653934396134623561366265383739663163373930613662386436336231393264376565323961393439316664643638396139386330613763336436303332306631623461633264363232396466643934653432663361363034386137366265316562393538633861313837336265386433333861656339666335396162376633373632363738393430326331666435393566313930383735373565306265383237666334633061346662336433393361643734613934396363393836626662363463616264646165353339333566366463353630373464623933643737656133623831366264643662653533343439373237323238393835396666333463653531383630616666623632316431303438376463333834336631663836643534303334613633653438613161306430323033303130303031280a3202180d3a606132656363316232616539386264323862633161303864386633373161306434663734356337363864306337373339363235363265333433623235643833343235656565613765663865613134323935333432623865623738643332656333660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039383735356134303862353332316532363330353230303064366437643461326333613535346435653133383461396362356562663437346165383832633633623438366264303864313434646466316139346365396137643632353139363330303661666461616334353838343666313736343031393566653235333961363536393330656661383534663231343865363865633161303863316334396432303063336633303435666537313437663036643533346334626432363231303063623164643339373339643736306438316130626432306638336632353564323530376434636362313130366235333631386336613934343039633838376361653236326434636565396338363233323134376365633134303465306335376262613733313731333065653339363433383838616633643539386564643832623863363165363561653831613465316135366263303664333937313433613938643431636138376433656634333365663061656162363830313139316233653338343830393638663636623665383836363261663435613965323132393934663638623238386562393637626562393834373863323433653231333663316131353931663036316635626330346232316666326261343862323966313834333130383838373362646665393966386135326539343038393731383536653830346465613630326133313137383663393835363532393633633361333737303332396234303966373466646663373436623232613566383431383931323037316334636538343663396234623332306665646636653962363465326362653338346639613832623661616164346232303930373433316466316133336636393230376135363536303062653831303730643038333239303039393538353961343439386435623539333135626365626566656538303765623061336139343266316364663333363764643434343466646232393838366566636464306265346162653961313838383033393533383735656461333364623732393839663736336230323033303130303031280b3202180e3a603139366237623132303739376364623361396430303362393833643537646131303331303662313733306531376636376532633762616161646234333738396166313639366461313031316232353362636263383630333333383566303332380ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061396462376638626161313236383938666162373839313135613362356438393734346631393765323830343161653039386633653838366336393837313732316531316262306164313166336365393132346161393631643661306463383435663439373635633366616231393935383430323637366635363434363262663238316462613535383837383066303365393035373938653138343236396161613630663761313437323333316532666231646561646438373763383463626362363431636139653563386164366534356263313539636230373966636230643434396364636438643932333963316130343765376234343864613063646361323636313061323566323936643936653734363962363736643461343434353136653761353965383532393361383038366638343063303532383534653032613863623230303264616433353832356265346438336235326661393165386337336666303439373436313438383632373837633131313866393234643331636261633162343466656666323264343336623339373965616466396234336134626661373265313562343735356663616232363065303661323739633362623733626337663136613036306434643532326664343930353830333838616135393564383034343733366535323266363432343931356637383033623735383365303935636466373863333235313936393764653831623839666235303035343735336231613137663961616662303634643834633939326639616231316363626338636231303831346463616635323634616134356632316264656661633832636361636161663335386533313337336565316261346537343032666438613730656130633238636135636337346463343235313063393639636432633435396231656333363838613031656133396139393237313063643232393763393861383462363334386135373738303466646332333464336665313930336532633231653137326461323862353961653665346337653865646438623731633439643730323033303130303031280c3202180f3a603538343661353366343437353239666439636462373830346364333136383865643665656265336236336461326635663231316666626337333731393763663366316366626664613631626537643135313066306539323339383131376637340ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061386365616333363765623166316465356630643965663365616630646639623938343438666532303830383437363536326130363063353163323839373730623463616366653932636236353536393832336539363263326132633966656435336264333663613361313232646531633532356135383266323561346437643632386331613364356264623839333661656365373531306537353534656537303333303235633039326338323865656235373338626530326564393633646138316135393230353633346365393435343537376162383266343066313366316565353565306165373237653233633330323834623166343462393961636534646463356639616337616438386439666132323535393335623234646362613834303036343265313663663235333263306230643638393239303436303837313563343037366634366438346130653066656433366537366363646339363335356537613236313630393435633262353461653236636330306664303832333236333436656565656137646437356639313931316539396462636239396561346163366261303536633333323238643838316438353833316439636338373935393364613137343664643065653935646332623936666539336261666366663263643764393239353864373864663333663230356437313135656439666163346462366634636336306535366135343431646135623562353566613539393939303265393538613662366334346438313064646335363138313234316238376632326630353961363838306538303231373336643031383937646236353434396365383137613233373564303335353163623064653530376336303961306338303330656366346266646562323133633033646161373634613138323162373234333334663731663736386437616563623237373035326137303333373635663037323138303536633738663261383761663138333836643866363161356366636233663262613464643539393135663133643338363334643136393537353730323033303130303031280d320218103a603030306162636435396133306135333838633530306265363832663663613239343034363239356339323735383831633230643334626230643639306564613762333862366262643037613364643166646662366137303434626230396366660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061663062393134323537626637613436353563346135306430636164356530613165343538316564363632336630653837333066373936623866323963353831373862636363363933326331666333316633396566343462383264336334336233393837333733373366656362313239353232386130346664353061313466333634366438346665316634363763616562393864343633653239373565393935623864326531653339663362663661646463323561653335643635643032363038653033343535333739363665326162636534396238313462656164336331623735373137346165333063303062306334336539396238303439366237326433633133316631633665346663646130356632383131376566396532386334333033626534643863376530343264353862383363633132313934356132633635653739363263616139313835393338663337353764663763636139356366303262356533313934346133613631396130616333663165333462396230313364346332323463346631653730666439666433363938336566383661646535313833363263633833323263306637623631613961633735666238326537623836643638626330663039396130396131346361633561316438643338663961386137306363333766663563633362626432373432666664313436323535633137316536613137383038333237316463653066646536383165643439326362353962303739366432373031373538333864633539303831303765336136656133663961343036623364313133306363656333623437393165343962626332333136303362343661623264306639336434336265373561623961346437313065613934306532383561376231353362306361376364646565366439646365306164383335306334316439306332313562393538383531356166613061633333363561653037653831663362626233366264626561633462333162636231616134653832353635623937376639646164383564363236656566396161613965663864376533666230323033303130303031280e320218113a603933653238313031303462326231376230303935326235613431303264333365646230343363623136646533616433643364363832363066353562623065353837333765613539343463333338663763386362383863373833336663383630630ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038633037626533303561643630623930626132646162333962306565373736306531613232663835373532323534306437306230336233663965343837356133613239616230383038386631343466353765623235326534366261353933383564306536643432373031313764613061626331623362383036393463396135303538623836643631646661303665373136373039633838653866656163376333613065316432356663306165626636613866373666636239396638343566653138313436316361623638353862393763336134303237666233373132623134653663303738396465313764343137363435373765353131343137656231363236393265623037616531653733353532333565396262343339303437623663303136313337383265376464366636303464616134363734363631643533393631663436633366616136623765373637363264333733623562353432623739656139363365666266333361633638313938626232623636316366663637363931366566333732616434633236633231366334626334373837633834656333326431383464373763373531383663303963663364396639313433336361393835333131396261623331666136616432366634353365353936643962646563613638613537363962633866656537613533356438306338633666336566623164666232383861623661393739383534623763653833313234656330643130326166663934633362373466396333373839353863323565623933336464353363316538303561313836353464366439313836393930663635373034323966393630663334653862346637666439393732646362666539323430653037346461326433353561356637656639633161663632656635393832613831373435373862396331356334396563353636626461636233306363666365663039636466653730386164343837343234653963316265363533663965653736363065376439343263316566613564613238366531616464616230366139613333663964653934363739356230323033303130303031280f320218123a603934383235313739643163333934303137306233356432363665346366613830643737386335653966356261653764653833666638636334373431663362653336616336336431653761653439373261656466366263316533636632303638390ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030626531376339393634376365633635613434343037623533353835366233633362616566356235346635363561663538623834353662613863376365353335643561633732633631633434633736623363353763386538363438343136333762653130613833636665333963303932343736643064626534643663646364636437323061333062356266656235316130316131386635383263343566366338363939336663663764663138323933356465316438363930363034346463663335313836393335643962643765656137393532333532626562623465663961653066373636316537306134323337616661393839393636383763613438666366633562303064333830376630353462653066613863336266613432353033386265366566323935313634663232663733623765383863393465613962653861613466336132343563383962396431666435313932663761353062393538623265663831303462333666316266386664326366623238633134323138303063316334376534656639386166313530303730636336643639643137653865623932663138613661613161363532363661343935323338643130336638663639356235376563663337333635306130353230303837343537323162656138313536323739363763383037363336356466386334633761376434646438663263333835306331386662613731656236306536653864666264313936653035333766643730623334346563626363353330646663383364613666656466343964353161393034313935303262613964373063643335663163663363303639346532333534663930363466646266353335656232336332376330613433643062373863316638363763363164393836393564386465663762633261313062623636373463323266363661616230613931383133646466323763646238353263353965663739653162396531613037356661366565323761376533373734646266346232363436353432376536643561623931666537663066336137313738346563613138326235303230333031303030312810320218133a603038393039376465663031623037633764393734613537353532353161366161613061666236623332613534353334336432393138653732626164303433323163313131633234643432373538306633626131653236616139643735653632360ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613561643262373634336130346330353564326638636432353131623135313339666334353537353632313338386534396331313962326633393861636131313066363133393662306338363664653530363335323262623835343032373365313366366439346365316536303433386636616662303061616136343631326637313435653962636538626331613533623934313931336161373663396633613238333366616437636632383563376163326433376639396633633263646234396465346431353165363136373835363466323831663534313432346234316661376335316232613936303232383363376433326565303065623833386461313563333861666339366530363164393763656465323231363566663161613935396631633432373562326430393863343035383661353537396662623363623930303732373034313230613861363661353237306634666366643130383663393233363930613335653766643434356533336163303366313339633638363835353635373063646334616166323231303761366331613434323435366137633663373965653034303930653765356434663636626361363063613166343762366466623534336461633363626631396137373139613866353562366638336234613362386136366436303235366430613436353531666137303234626430353633316238613535383038373732353463326632663236386364633333643264626263666237333365396662653233336262396362353961623331613031343862323365386334323638306666313061663463373961346430383334366662373961393364393632393534386561663162623132343639386661656661346364643732343432633033613034623733333433326637343839303361333235633238336434353661623961653932316165376564333339316535643137383765666463323335343061376238356336393161653837306130376639306231316331336233326365343365616564313562333639363835636534393137376363393835303230333031303030312811320218143a603939666162633461646534653636326336653238323366346139366562323134343034383465356136643064333132623730633036386432326236323936333830376332333361343964626239383361376562623330653737303637373261340ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030386434356332316330633935656636356130323964353263393537666430663835663230313233646130333465363136373164646565353437356630373338326136366336366362346463353035303464646664333735383130383364663864313735373733306564386436663336346466346333366132363531353931393535646132303161323430376661386162396232333133383131323235613064613233306662653338306530393061613536656661346632303265633962343832336636353031643936616336393865626632366161636633656532643166333261373231633934376531303736636633356233373364613164383761333661313532653030653731303131373932323832653832356666313731633538333362383835373062666336646138343439653666393566386231323635616235353531393430333135353364316435373666393363343263306361363061616261633463386464313632643831313466326232313531313538336337323533396665353663343939613932396465336134306130643435633137633538396332643739383863653236656166633932613364333762376561303034326434336530336166613632373162323632353561366363636661653533373138323164383165306230356332353062353966306139303734316130653065383861303965643536633562393738306430393566303930366630623831643531323633393832616165303131333663303732643834346131316436646134623261363163363434653161623137663136666634386565323366656465383435326631653432653264333061303739306332356434323036306531643434613637316132656232336431313466363863373165333366313736646235386136386234333030353462633164323938336132336133326561366666393566613763346438653338306562323936653938623739363865636638343534643831376337333765656135646439323165623836633136633762323933303461346137656362653561336131303230333031303030312812320218153a606537396165396337313933643164326263393433383436346338616135663632323461653835323936366134336239383235383833663766373432633533393562643330393935383761393638363662393233396431656666336165353037610ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623035616265326162303066646430366339353565383637313062306530366631613932363234613438616431636263386466633666323231323936326230633330666462643238346133376335613337363538623633633336656138313632353631613865346639343663626535373232633032383830316630663238316337306638643838633763303061326632653239663539376237393938363965643833353664663537633437626539393434613261616666363530663962346262613064626335336463383830666462623639656134353139303564323830323230326638653239633034613736643237616632656237633534383438356266336634363934633930633431383130383838383433373932383438383335663738313637303764336538643736663465363766353738306263663038383133633535656336333961396264363234313738663565623134376435303061663335316539656631623165333432343834636132363064623763636261653438366631336366323635623562316162363838303636303038303533623230633364656463653737316339613038613033323061613963653435316562396439383361376234396361613130393666386164633039383331386463333865306537636566306438653564353537613036373536383561316339653235366132626339646261333232623362623331373263663731343037376263333830663861306134333361386266613766626663353966366230393365633862663665393339376330396231386531383034306331623536363836343733376338666137653239373935663361343538386464613763326261623439353636356363346139623833366532656239306336326133666361663539316662356638313830346337363138306536323666613236343461376465333435313164366334363637643938393337653237373333663464316539313338383333353465353466643733353137323165373666376235366333343833333838663461366238376232386165626562303230333031303030312813320218163a603962343038383566313362366163316337353336393262613366313739303061333838333165363934613061663937343934623834333838323039636235656662646339386136646162623265316337313833393166633133356264616163330ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396463643863306135336539306333353539353734663636323034313137643362353033653530613336643330393766616338343239653663656364333762623534303731383038663265653938323033356638353161306339626532313736333833613232653338633161626131363866333266393035373063623332333363666536323539383736363661663637623531346361656632316662386466366430666364333363663236303662393264646561353533366236303638643836373832653339626435633338343435393931643431396237643165633038353939343132633039343964316332343062333563313464633535323734646261373166666165393336313235613566383139663534313332653234333964346163353539373939366563653835653133646666333336316639313331663536636561633562396635353262343963663666396139616336653564636532646233363934363266393361663830653562353662366538626566613136326130363162346137363839326264633834363437333036633630303835386664643237303332373663326337303434303139386566643766653335343563663261623538306337346366643634343561616637626437663734356363323532656162643236356561626565383632343137313034653639343861353537353666646332323264663061313031353234646531633363303863636630343330313165633766653936346564643834353161313330313437633037333633613335663131666465656638663261326237363137353762343335386666383962373561343864363762646336303930363933653062623836373965636262393366666462336633656439366265633933656634363536653337313661623837636534366361386531323539633866656464653866326631656130663365623263343865393635353164653132333330333435373235663435656436396338353735623531363833616661343732363231383236646232326262326431633466316533363436346139303230333031303030312814320218173a60346630613033333466393737363738313632663830643936376637323139313431333630633062376637663033316233376336396536323137333933336564616434366263626139373636376565373262666435613933346261313532326330")));t.MAINNET_ADDRESS_BOOK=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=r(n(1455));function l(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){u=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(u)throw a}}}}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0;r--){var o=this._nodes[r];n.includes(o.address.toString())||t.push(r)}return t}},{key:"getNextMirrorNode",value:function(){if(null==this._createNetworkChannel)throw new Error("mirror network not supported on browser");return this._getNumberOfMostHealthyNodes(1)[0]}}]),n}(r(n(697)).default);t.default=p},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,o.default)(this,n),t.call(this,e)}return(0,a.default)(n,[{key:"getKey",value:function(){return this._address.toString()}},{key:"toInsecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toInsecure()}})}},{key:"toSecure",value:function(){return new n({cloneNode:{node:this,address:this._address.toSecure()}})}}]),n}(r(n(696)).default);t.default=l},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(7)),i=r(n(8)),u=r(n(1)),c=r(n(2)),s=r(n(5)),l=r(n(6)),f=r(n(4)),d=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(1457));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,f.default)(e);if(t){var o=(0,f.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,l.default)(this,n)}}var y=function(e){(0,s.default)(n,e);var t=h(n);function n(e){var r;return(0,u.default)(this,n),(r=t.call(this))._address=e,r}return(0,c.default)(n,[{key:"close",value:function(){}},{key:"_createUnaryClient",value:function(e){var t=this;return function(){var n=(0,i.default)(a.default.mark((function n(r,o,i){var u,c,s;return a.default.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,fetch("".concat(t._address,"/proto.").concat(e,"/").concat(r.name),{method:"POST",headers:{"content-type":"application/grpc-web+proto","x-user-agent":"hedera-sdk-js/v2","x-grpc-web":"1"},body:(0,d.encodeRequest)(o)});case 2:return u=n.sent,n.next=5,u.arrayBuffer();case 5:c=n.sent,s=(0,d.decodeUnaryResponse)(c),i(null,s);case 8:case"end":return n.stop()}}),n)})));return function(e,t,r){return n.apply(this,arguments)}}()}}]),n}(d.default);t.default=y},function(e,t,n){"use strict";var r=n(0),o=n(3);Object.defineProperty(t,"__esModule",{value:!0}),t.decodeUnaryResponse=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength,r=new DataView(e,t,n),o=0,i=null,u=0;for(;o>7,f=r.getUint32(o+1),d=o+5;if(d+f>r.byteLength)throw new Error("(BUG) unexpected frame length past the boundary");var p=new Uint8Array(e,r.byteOffset+d,f);if(0===l){if(null!=i)throw new Error("(BUG) unexpectedly received more than one data frame");i=p}else{if(1!==l)throw new Error("(BUG) unexpected frame type: ".concat(l));var h=s.decode(p),y=h.split(":"),m=(0,a.default)(y,2),b=m[0],v=m[1];if("grpc-status"!==b)throw new Error("(BUG) unhandled trailer, ".concat(h));u=parseInt(v)}o+=f+5}if(0!==u)throw new Error("(BUG) unhandled grpc-status: ".concat(u));if(null==i)throw new Error("(BUG) unexpectedly received no response");return i},t.default=void 0,t.encodeRequest=function(e){var t=new ArrayBuffer(e.byteLength+5);return new DataView(t,1,4).setUint32(0,e.length),new Uint8Array(t,5).set(e),t};var a=r(n(9)),i=r(n(1)),u=r(n(2)),c=n(39),s=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var u=a?Object.getOwnPropertyDescriptor(e,i):null;u&&(u.get||u.set)?Object.defineProperty(r,i,u):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(102));function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var f=function(){function e(){(0,i.default)(this,e),this._crypto=null,this._smartContract=null,this._file=null,this._consensus=null,this._freeze=null,this._network=null,this._token=null,this._schedule=null}return(0,u.default)(e,[{key:"close",value:function(){throw new Error("not implemented")}},{key:"crypto",get:function(){return null!=this._crypto||(this._crypto=c.CryptoService.create(this._createUnaryClient("CryptoService"))),this._crypto}},{key:"smartContract",get:function(){return null!=this._smartContract||(this._smartContract=c.SmartContractService.create(this._createUnaryClient("SmartContractService"))),this._smartContract}},{key:"file",get:function(){return null!=this._file||(this._file=c.FileService.create(this._createUnaryClient("FileService"))),this._file}},{key:"consensus",get:function(){return null!=this._consensus||(this._consensus=c.ConsensusService.create(this._createUnaryClient("ConsensusService"))),this._consensus}},{key:"freeze",get:function(){return null!=this._freeze||(this._freeze=c.FreezeService.create(this._createUnaryClient("FreezeService"))),this._freeze}},{key:"network",get:function(){return null!=this._network||(this._network=c.NetworkService.create(this._createUnaryClient("NetworkService"))),this._network}},{key:"token",get:function(){return null!=this._token||(this._token=c.TokenService.create(this._createUnaryClient("TokenService"))),this._token}},{key:"schedule",get:function(){return null!=this._schedule||(this._schedule=c.ScheduleService.create(this._createUnaryClient("ScheduleService"))),this._schedule}},{key:"_createUnaryClient",value:function(e){throw new Error("not implemented")}}]),e}();t.default=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.AddressCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=n(247),l=n(56);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e){(0,i.default)(n,e);var t=f(n);function n(e){return(0,o.default)(this,n),t.call(this,"address","address",e,!1)}return(0,a.default)(n,[{key:"encode",value:function(e,t){try{(0,s.getAddress)(t)}catch(e){this._throwError(e.message,t)}return e.writeValue(t)}},{key:"decode",value:function(e){return(0,s.getAddress)((0,l.hexZeroPad)(e.readValue().toHexString(),20))}}]),n}(n(92).Coder);t.AddressCoder=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.AnonymousCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(e){var r;return(0,o.default)(this,n),(r=t.call(this,e.name,e.type,void 0,e.dynamic)).coder=e,r}return(0,a.default)(n,[{key:"encode",value:function(e,t){return this.coder.encode(e,t)}},{key:"decode",value:function(e){return this.coder.decode(e)}}]),n}(n(92).Coder);t.AnonymousCoder=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.BooleanCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(e){return(0,o.default)(this,n),t.call(this,"bool","bool",e,!1)}return(0,a.default)(n,[{key:"encode",value:function(e,t){return e.writeValue(t?1:0)}},{key:"decode",value:function(e){return e.coerce(this.type,!e.readValue().isZero())}}]),n}(n(92).Coder);t.BooleanCoder=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.FixedBytesCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=n(56);function l(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var f=function(e){(0,i.default)(n,e);var t=l(n);function n(e,r){var a;(0,o.default)(this,n);var i="bytes"+String(e);return(a=t.call(this,i,i,r,!1)).size=e,a}return(0,a.default)(n,[{key:"encode",value:function(e,t){var n=(0,s.arrayify)(t);return n.length!==this.size&&this._throwError("incorrect data length",t),e.writeBytes(n)}},{key:"decode",value:function(e){return e.coerce(this.name,(0,s.hexlify)(e.readBytes(this.size)))}}]),n}(n(92).Coder);t.FixedBytesCoder=f},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.NullCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4));function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var l=function(e){(0,i.default)(n,e);var t=s(n);function n(e){return(0,o.default)(this,n),t.call(this,"null","",e,!1)}return(0,a.default)(n,[{key:"encode",value:function(e,t){return null!=t&&this._throwError("not null",t),e.writeBytes([])}},{key:"decode",value:function(e){return e.readBytes(0),e.coerce(this.name,null)}}]),n}(n(92).Coder);t.NullCoder=l},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.NumberCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(5)),u=r(n(6)),c=r(n(4)),s=n(121),l=n(314);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,c.default)(e);if(t){var o=(0,c.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,u.default)(this,n)}}var d=function(e){(0,i.default)(n,e);var t=f(n);function n(e,r,a){var i;(0,o.default)(this,n);var u=(r?"int":"uint")+8*e;return(i=t.call(this,u,u,a,!1)).size=e,i.signed=r,i}return(0,a.default)(n,[{key:"encode",value:function(e,t){var n=s.BigNumber.from(t),r=l.MaxUint256.mask(8*e.wordSize);if(this.signed){var o=r.mask(8*this.size-1);(n.gt(o)||n.lt(o.add(l.One).mul(l.NegativeOne)))&&this._throwError("value out-of-bounds",t)}else(n.lt(l.Zero)||n.gt(r.mask(8*this.size)))&&this._throwError("value out-of-bounds",t);return n=n.toTwos(8*this.size).mask(8*this.size),this.signed&&(n=n.fromTwos(8*this.size).toTwos(8*e.wordSize)),e.writeValue(n)}},{key:"decode",value:function(e){var t=e.readValue().mask(8*this.size);return this.signed&&(t=t.fromTwos(8*this.size)),e.coerce(this.name,t)}}]),n}(n(92).Coder);t.NumberCoder=d},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.StringCoder=void 0;var o=r(n(1)),a=r(n(2)),i=r(n(17)),u=r(n(5)),c=r(n(6)),s=r(n(4)),l=n(288);function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var o=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return(0,c.default)(this,n)}}var d=function(e){(0,u.default)(n,e);var t=f(n);function n(e){return(0,o.default)(this,n),t.call(this,"string",e)}return(0,a.default)(n,[{key:"encode",value:function(e,t){return(0,i.default)((0,s.default)(n.prototype),"encode",this).call(this,e,(0,l.toUtf8Bytes)(t))}},{key:"decode",value:function(e){return(0,l.toUtf8String)((0,i.default)((0,s.default)(n.prototype),"decode",this).call(this,e))}}]),n}(n(701).DynamicBytesCoder);t.StringCoder=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatBytes32String=function(e){var t=(0,a.toUtf8Bytes)(e);if(t.length>31)throw new Error("bytes32 string must be less than 32 bytes");return(0,o.hexlify)((0,o.concat)([t,r.HashZero]).slice(0,32))},t.parseBytes32String=function(e){var t=(0,o.arrayify)(e);if(32!==t.length)throw new Error("invalid bytes32 - not 32 bytes long");if(0!==t[31])throw new Error("invalid bytes32 string - no null terminator");var n=31;for(;0===t[n-1];)n--;return(0,a.toUtf8String)(t.slice(0,n))};var r=n(314),o=n(56),a=n(374)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.version=void 0;t.version="strings/5.5.0"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._nameprepTableA1=h,t._nameprepTableB2=y,t._nameprepTableC=m,t.nameprep=function(e){if(e.match(/^[a-z0-9-]*$/i)&&e.length<=59)return e.toLowerCase();var t=(0,r.toUtf8CodePoints)(e);n=t.map((function(e){if(c.indexOf(e)>=0)return[];if(e>=65024&&e<=65039)return[];var t=y(e);return t||[e]})),t=n.reduce((function(e,t){return t.forEach((function(t){e.push(t)})),e}),[]),(t=(0,r.toUtf8CodePoints)((0,r._toUtf8String)(t),r.UnicodeNormalizationForm.NFKC)).forEach((function(e){if(m(e))throw new Error("STRINGPREP_CONTAINS_PROHIBITED")})),t.forEach((function(e){if(h(e))throw new Error("STRINGPREP_CONTAINS_UNASSIGNED")}));var n;var o=(0,r._toUtf8String)(t);if("-"===o.substring(0,1)||"--"===o.substring(2,4)||"-"===o.substring(o.length-1))throw new Error("invalid hyphen");if(o.length>63)throw new Error("too long");return o};var r=n(374);function o(e,t){t||(t=function(e){return[parseInt(e,16)]});var n=0,r={};return e.split(",").forEach((function(e){var o=e.split(":");n+=parseInt(o[0],16),r[n]=t(o[1])})),r}function a(e){var t=0;return e.split(",").map((function(e){var n=e.split("-");return 1===n.length?n[1]="0":""===n[1]&&(n[1]="1"),{l:t+parseInt(n[0],16),h:t=parseInt(n[1],16)}}))}function i(e,t){for(var n=0,r=0;r=(n+=o.l)&&e<=n+o.h&&(e-n)%(o.d||1)==0){if(o.e&&-1!==o.e.indexOf(e-n))continue;return o}}return null}var u=a("221,13-1b,5f-,40-10,51-f,11-3,3-3,2-2,2-4,8,2,15,2d,28-8,88,48,27-,3-5,11-20,27-,8,28,3-5,12,18,b-a,1c-4,6-16,2-d,2-2,2,1b-4,17-9,8f-,10,f,1f-2,1c-34,33-14e,4,36-,13-,6-2,1a-f,4,9-,3-,17,8,2-2,5-,2,8-,3-,4-8,2-3,3,6-,16-6,2-,7-3,3-,17,8,3,3,3-,2,6-3,3-,4-a,5,2-6,10-b,4,8,2,4,17,8,3,6-,b,4,4-,2-e,2-4,b-10,4,9-,3-,17,8,3-,5-,9-2,3-,4-7,3-3,3,4-3,c-10,3,7-2,4,5-2,3,2,3-2,3-2,4-2,9,4-3,6-2,4,5-8,2-e,d-d,4,9,4,18,b,6-3,8,4,5-6,3-8,3-3,b-11,3,9,4,18,b,6-3,8,4,5-6,3-6,2,3-3,b-11,3,9,4,18,11-3,7-,4,5-8,2-7,3-3,b-11,3,13-2,19,a,2-,8-2,2-3,7,2,9-11,4-b,3b-3,1e-24,3,2-,3,2-,2-5,5,8,4,2,2-,3,e,4-,6,2,7-,b-,3-21,49,23-5,1c-3,9,25,10-,2-2f,23,6,3,8-2,5-5,1b-45,27-9,2a-,2-3,5b-4,45-4,53-5,8,40,2,5-,8,2,5-,28,2,5-,20,2,5-,8,2,5-,8,8,18,20,2,5-,8,28,14-5,1d-22,56-b,277-8,1e-2,52-e,e,8-a,18-8,15-b,e,4,3-b,5e-2,b-15,10,b-5,59-7,2b-555,9d-3,5b-5,17-,7-,27-,7-,9,2,2,2,20-,36,10,f-,7,14-,4,a,54-3,2-6,6-5,9-,1c-10,13-1d,1c-14,3c-,10-6,32-b,240-30,28-18,c-14,a0,115-,3,66-,b-76,5,5-,1d,24,2,5-2,2,8-,35-2,19,f-10,1d-3,311-37f,1b,5a-b,d7-19,d-3,41,57-,68-4,29-3,5f,29-37,2e-2,25-c,2c-2,4e-3,30,78-3,64-,20,19b7-49,51a7-59,48e-2,38-738,2ba5-5b,222f-,3c-94,8-b,6-4,1b,6,2,3,3,6d-20,16e-f,41-,37-7,2e-2,11-f,5-b,18-,b,14,5-3,6,88-,2,bf-2,7-,7-,7-,4-2,8,8-9,8-2ff,20,5-b,1c-b4,27-,27-cbb1,f7-9,28-2,b5-221,56,48,3-,2-,3-,5,d,2,5,3,42,5-,9,8,1d,5,6,2-2,8,153-3,123-3,33-27fd,a6da-5128,21f-5df,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3,2-1d,61-ff7d"),c="ad,34f,1806,180b,180c,180d,200b,200c,200d,2060,feff".split(",").map((function(e){return parseInt(e,16)})),s=[{h:25,s:32,l:65},{h:30,s:32,e:[23],l:127},{h:54,s:1,e:[48],l:64,d:2},{h:14,s:1,l:57,d:2},{h:44,s:1,l:17,d:2},{h:10,s:1,e:[2,6,8],l:61,d:2},{h:16,s:1,l:68,d:2},{h:84,s:1,e:[18,24,66],l:19,d:2},{h:26,s:32,e:[17],l:435},{h:22,s:1,l:71,d:2},{h:15,s:80,l:40},{h:31,s:32,l:16},{h:32,s:1,l:80,d:2},{h:52,s:1,l:42,d:2},{h:12,s:1,l:55,d:2},{h:40,s:1,e:[38],l:15,d:2},{h:14,s:1,l:48,d:2},{h:37,s:48,l:49},{h:148,s:1,l:6351,d:2},{h:88,s:1,l:160,d:2},{h:15,s:16,l:704},{h:25,s:26,l:854},{h:25,s:32,l:55915},{h:37,s:40,l:1247},{h:25,s:-119711,l:53248},{h:25,s:-119763,l:52},{h:25,s:-119815,l:52},{h:25,s:-119867,e:[1,4,5,7,8,11,12,17],l:52},{h:25,s:-119919,l:52},{h:24,s:-119971,e:[2,7,8,17],l:52},{h:24,s:-120023,e:[2,7,13,15,16,17],l:52},{h:25,s:-120075,l:52},{h:25,s:-120127,l:52},{h:25,s:-120179,l:52},{h:25,s:-120231,l:52},{h:25,s:-120283,l:52},{h:25,s:-120335,l:52},{h:24,s:-119543,e:[17],l:56},{h:24,s:-119601,e:[17],l:58},{h:24,s:-119659,e:[17],l:58},{h:24,s:-119717,e:[17],l:58},{h:24,s:-119775,e:[17],l:58}],l=o("b5:3bc,c3:ff,7:73,2:253,5:254,3:256,1:257,5:259,1:25b,3:260,1:263,2:269,1:268,5:26f,1:272,2:275,7:280,3:283,5:288,3:28a,1:28b,5:292,3f:195,1:1bf,29:19e,125:3b9,8b:3b2,1:3b8,1:3c5,3:3c6,1:3c0,1a:3ba,1:3c1,1:3c3,2:3b8,1:3b5,1bc9:3b9,1c:1f76,1:1f77,f:1f7a,1:1f7b,d:1f78,1:1f79,1:1f7c,1:1f7d,107:63,5:25b,4:68,1:68,1:68,3:69,1:69,1:6c,3:6e,4:70,1:71,1:72,1:72,1:72,7:7a,2:3c9,2:7a,2:6b,1:e5,1:62,1:63,3:65,1:66,2:6d,b:3b3,1:3c0,6:64,1b574:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3"),f=o("179:1,2:1,2:1,5:1,2:1,a:4f,a:1,8:1,2:1,2:1,3:1,5:1,3:1,4:1,2:1,3:1,4:1,8:2,1:1,2:2,1:1,2:2,27:2,195:26,2:25,1:25,1:25,2:40,2:3f,1:3f,33:1,11:-6,1:-9,1ac7:-3a,6d:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,b:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,c:-8,2:-8,2:-8,2:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,49:-8,1:-8,1:-4a,1:-4a,d:-56,1:-56,1:-56,1:-56,d:-8,1:-8,f:-8,1:-8,3:-7"),d=o("df:00730073,51:00690307,19:02BC006E,a7:006A030C,18a:002003B9,16:03B903080301,20:03C503080301,1d7:05650582,190f:00680331,1:00740308,1:0077030A,1:0079030A,1:006102BE,b6:03C50313,2:03C503130300,2:03C503130301,2:03C503130342,2a:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,3:1F7003B9,1:03B103B9,1:03AC03B9,2:03B10342,1:03B1034203B9,5:03B103B9,6:1F7403B9,1:03B703B9,1:03AE03B9,2:03B70342,1:03B7034203B9,5:03B703B9,6:03B903080300,1:03B903080301,3:03B90342,1:03B903080342,b:03C503080300,1:03C503080301,1:03C10313,2:03C50342,1:03C503080342,b:1F7C03B9,1:03C903B9,1:03CE03B9,2:03C90342,1:03C9034203B9,5:03C903B9,ac:00720073,5b:00B00063,6:00B00066,d:006E006F,a:0073006D,1:00740065006C,1:0074006D,124f:006800700061,2:00610075,2:006F0076,b:00700061,1:006E0061,1:03BC0061,1:006D0061,1:006B0061,1:006B0062,1:006D0062,1:00670062,3:00700066,1:006E0066,1:03BC0066,4:0068007A,1:006B0068007A,1:006D0068007A,1:00670068007A,1:00740068007A,15:00700061,1:006B00700061,1:006D00700061,1:006700700061,8:00700076,1:006E0076,1:03BC0076,1:006D0076,1:006B0076,1:006D0076,1:00700077,1:006E0077,1:03BC0077,1:006D0077,1:006B0077,1:006D0077,1:006B03C9,1:006D03C9,2:00620071,3:00632215006B0067,1:0063006F002E,1:00640062,1:00670079,2:00680070,2:006B006B,1:006B006D,9:00700068,2:00700070006D,1:00700072,2:00730076,1:00770062,c723:00660066,1:00660069,1:0066006C,1:006600660069,1:00660066006C,1:00730074,1:00730074,d:05740576,1:05740565,1:0574056B,1:057E0576,1:0574056D",(function(e){if(e.length%4!=0)throw new Error("bad data");for(var t=[],n=0;n1&&_.throwArgumentError("multiple matching functions","name",n),this.functions[r[0]]}var o=this.functions[b.FunctionFragment.fromString(e).format()];return o||_.throwArgumentError("no matching function","signature",e),o}},{key:"getEvent",value:function(e){if((0,f.isHexString)(e)){var t=e.toLowerCase();for(var n in this.events)if(t===this.getEventTopic(n))return this.events[n];_.throwArgumentError("no matching event","topichash",t)}if(-1===e.indexOf("(")){var r=e.trim(),o=Object.keys(this.events).filter((function(e){return e.split("(")[0]===r}));return 0===o.length?_.throwArgumentError("no matching event","name",r):o.length>1&&_.throwArgumentError("multiple matching events","name",r),this.events[o[0]]}var a=this.events[b.EventFragment.fromString(e).format()];return a||_.throwArgumentError("no matching event","signature",e),a}},{key:"getSighash",value:function(e){return"string"==typeof e&&(e=this.getFunction(e)),(0,h.getStatic)(this.constructor,"getSighash")(e)}},{key:"getEventTopic",value:function(e){return"string"==typeof e&&(e=this.getEvent(e)),(0,h.getStatic)(this.constructor,"getEventTopic")(e)}},{key:"_decodeParams",value:function(e,t){return this._abiCoder.decode(e,t)}},{key:"_encodeParams",value:function(e,t){return this._abiCoder.encode(e,t)}},{key:"encodeDeploy",value:function(e){return this._encodeParams(this.deploy.inputs,e||[])}},{key:"decodeFunctionData",value:function(e,t){"string"==typeof e&&(e=this.getFunction(e));var n=(0,f.arrayify)(t);return(0,f.hexlify)(n.slice(0,4))!==this.getSighash(e)&&_.throwArgumentError("data signature does not match function ".concat(e.name,"."),"data",(0,f.hexlify)(n)),this._decodeParams(e.inputs,n.slice(4))}},{key:"encodeFunctionData",value:function(e,t){return"string"==typeof e&&(e=this.getFunction(e)),(0,f.hexlify)((0,f.concat)([this.getSighash(e),this._encodeParams(e.inputs,t||[])]))}},{key:"decodeFunctionResult",value:function(e,t){"string"==typeof e&&(e=this.getFunction(e));var n=(0,f.arrayify)(t),r=null,o=null;switch(n.length%this._abiCoder._getWordSize()){case 0:try{return this._abiCoder.decode(e.outputs,n)}catch(e){}break;case 4:"0x08c379a0"===(0,f.hexlify)(n.slice(0,4))&&(o="Error(string)",r=this._abiCoder.decode(["string"],n.slice(4))[0])}return _.throwError("call revert exception",v.Logger.errors.CALL_EXCEPTION,{method:e.format(),errorSignature:o,errorArgs:[r],reason:r})}},{key:"encodeFunctionResult",value:function(e,t){return"string"==typeof e&&(e=this.getFunction(e)),(0,f.hexlify)(this._abiCoder.encode(e.outputs,t||[]))}},{key:"encodeFilterTopics",value:function(e,t){var n=this;"string"==typeof e&&(e=this.getEvent(e)),t.length>e.inputs.length&&_.throwError("too many arguments for "+e.format(),v.Logger.errors.UNEXPECTED_ARGUMENT,{argument:"values",value:t});var r=[];e.anonymous||r.push(this.getEventTopic(e));var o=function(e,t){return"string"===e.type?(0,d.id)(t):"bytes"===e.type?(0,p.keccak256)((0,f.hexlify)(t)):("address"===e.type&&n._abiCoder.encode(["address"],[t]),(0,f.hexZeroPad)((0,f.hexlify)(t),32))};for(t.forEach((function(t,n){var a=e.inputs[n];a.indexed?null==t?r.push(null):"array"===a.baseType||"tuple"===a.baseType?_.throwArgumentError("filtering with tuples or arrays not supported","contract."+a.name,t):Array.isArray(t)?r.push(t.map((function(e){return o(a,e)}))):r.push(o(a,t)):null!=t&&_.throwArgumentError("cannot filter non-indexed parameters; must be null","contract."+a.name,t)}));r.length&&null===r[r.length-1];)r.pop();return r}},{key:"encodeEventLog",value:function(e,t){var n=this;"string"==typeof e&&(e=this.getEvent(e));var r=[],o=[],a=[];return e.anonymous||r.push(this.getEventTopic(e)),t.length!==e.inputs.length&&_.throwArgumentError("event arguments/values mismatch","values",t),e.inputs.forEach((function(e,i){var u=t[i];if(e.indexed)if("string"===e.type)r.push((0,d.id)(u));else if("bytes"===e.type)r.push((0,p.keccak256)(u));else{if("tuple"===e.baseType||"array"===e.baseType)throw new Error("not implemented");r.push(n._abiCoder.encode([e.type],[u]))}else o.push(e),a.push(u)})),{data:this._abiCoder.encode(o,a),topics:r}}},{key:"decodeEventLog",value:function(e,t,n){if("string"==typeof e&&(e=this.getEvent(e)),null!=n&&!e.anonymous){var r=this.getEventTopic(e);(0,f.isHexString)(n[0],32)&&n[0].toLowerCase()===r||_.throwError("fragment/topic mismatch",v.Logger.errors.INVALID_ARGUMENT,{argument:"topics[0]",expected:r,value:n[0]}),n=n.slice(1)}var o=[],a=[],i=[];e.inputs.forEach((function(e,t){e.indexed?"string"===e.type||"bytes"===e.type||"tuple"===e.baseType||"array"===e.baseType?(o.push(b.ParamType.fromObject({type:"bytes32",name:e.name})),i.push(!0)):(o.push(e),i.push(!1)):(a.push(e),i.push(!1))}));var u=null!=n?this._abiCoder.decode(o,(0,f.concat)(n)):null,c=this._abiCoder.decode(a,t,!0),s=[],l=0,d=0;e.inputs.forEach((function(e,t){if(e.indexed)if(null==u)s[t]=new A({_isIndexed:!0,hash:null});else if(i[t])s[t]=new A({_isIndexed:!0,hash:u[d++]});else try{s[t]=u[d++]}catch(e){s[t]=e}else try{s[t]=c[l++]}catch(e){s[t]=e}if(e.name&&null==s[e.name]){var n=s[t];n instanceof Error?Object.defineProperty(s,e.name,{get:function(){throw T("property ".concat(JSON.stringify(e.name)),n)}}):s[e.name]=n}}));for(var p=function(e){var t=s[e];t instanceof Error&&Object.defineProperty(s,e,{get:function(){throw T("index ".concat(e),t)}})},h=0;h256||t[2]&&t[2]!==String(r))&&m.throwArgumentError("invalid numeric width","type",e);var o=_.mask(n?r-1:r),a=n?o.add(g).mul(v):k;return function(t){var n=c.BigNumber.from(t);return(n.lt(a)||n.gt(o))&&m.throwArgumentError("value out-of-bounds for ".concat(e),"value",t),(0,s.hexZeroPad)(n.toTwos(256).toHexString(),32)}}var i=e.match(/^bytes(\d+)$/);if(i){var f=parseInt(i[1]);return(0===f||f>32||i[1]!==String(f))&&m.throwArgumentError("invalid bytes width","type",e),function(t){return(0,s.arrayify)(t).length!==f&&m.throwArgumentError("invalid length for ".concat(e),"value",t),function(e){var t=(0,s.arrayify)(e),n=t.length%32;return n?(0,s.hexConcat)([t,b.slice(n)]):(0,s.hexlify)(t)}(t)}}switch(e){case"address":return function(e){return(0,s.hexZeroPad)((0,u.getAddress)(e),32)};case"bool":return function(e){return e?w:I};case"bytes":return function(e){return(0,l.keccak256)(e)};case"string":return function(e){return(0,h.id)(e)}}return null}function S(e,t){return"".concat(e,"(").concat(t.map((function(e){var t=e.name;return e.type+" "+t})).join(","),")")}var R=function(){function e(t){(0,a.default)(this,e),(0,f.defineReadOnly)(this,"types",Object.freeze((0,f.deepCopy)(t))),(0,f.defineReadOnly)(this,"_encoderCache",{}),(0,f.defineReadOnly)(this,"_types",{});var n={},r={},o={};Object.keys(t).forEach((function(e){n[e]={},r[e]=[],o[e]={}}));var i=function(e){var o={};t[e].forEach((function(a){o[a.name]&&m.throwArgumentError("duplicate variable name ".concat(JSON.stringify(a.name)," in ").concat(JSON.stringify(e)),"types",t),o[a.name]=!0;var i=a.type.match(/^([^\x5b]*)(\x5b|$)/)[1];i===e&&m.throwArgumentError("circular type reference to ".concat(JSON.stringify(i)),"types",t),E(i)||(r[i]||m.throwArgumentError("unknown type ".concat(JSON.stringify(i)),"types",t),r[i].push(e),n[e][i]=!0)}))};for(var u in t)i(u);var c=Object.keys(r).filter((function(e){return 0===r[e].length}));for(var s in 0===c.length?m.throwArgumentError("missing primary type","types",t):c.length>1&&m.throwArgumentError("ambiguous primary types or unused types: ".concat(c.map((function(e){return JSON.stringify(e)})).join(", ")),"types",t),(0,f.defineReadOnly)(this,"primaryType",c[0]),function e(a,i){i[a]&&m.throwArgumentError("circular type reference to ".concat(JSON.stringify(a)),"types",t),i[a]=!0,Object.keys(n[a]).forEach((function(t){r[t]&&(e(t,i),Object.keys(i).forEach((function(e){o[e][t]=!0})))})),delete i[a]}(this.primaryType,{}),o){var l=Object.keys(o[s]);l.sort(),this._types[s]=S(s,t[s])+l.map((function(e){return S(e,t[e])})).join("")}}return(0,i.default)(e,[{key:"getEncoder",value:function(e){var t=this._encoderCache[e];return t||(t=this._encoderCache[e]=this._getEncoder(e)),t}},{key:"_getEncoder",value:function(e){var t=this,n=E(e);if(n)return n;var r=e.match(/^(.*)(\x5b(\d*)\x5d)$/);if(r){var o=r[1],a=this.getEncoder(o),i=parseInt(r[3]);return function(e){i>=0&&e.length!==i&&m.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",e);var n=e.map(a);return t._types[o]&&(n=n.map(l.keccak256)),(0,l.keccak256)((0,s.hexConcat)(n))}}var u=this.types[e];if(u){var c=(0,h.id)(this._types[e]);return function(e){var n=u.map((function(n){var r=n.name,o=n.type,a=t.getEncoder(o)(e[r]);return t._types[o]?(0,l.keccak256)(a):a}));return n.unshift(c),(0,s.hexConcat)(n)}}return m.throwArgumentError("unknown type: ".concat(e),"type",e)}},{key:"encodeType",value:function(e){var t=this._types[e];return t||m.throwArgumentError("unknown type: ".concat(JSON.stringify(e)),"name",e),t}},{key:"encodeData",value:function(e,t){return this.getEncoder(e)(t)}},{key:"hashStruct",value:function(e,t){return(0,l.keccak256)(this.encodeData(e,t))}},{key:"encode",value:function(e){return this.encodeData(this.primaryType,e)}},{key:"hash",value:function(e){return this.hashStruct(this.primaryType,e)}},{key:"_visit",value:function(e,t,n){var r=this;if(E(e))return n(e,t);var o=e.match(/^(.*)(\x5b(\d*)\x5d)$/);if(o){var a=o[1],i=parseInt(o[3]);return i>=0&&t.length!==i&&m.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",t),t.map((function(e){return r._visit(a,e,n)}))}var u=this.types[e];return u?u.reduce((function(e,o){var a=o.name,i=o.type;return e[a]=r._visit(i,t[a],n),e}),{}):m.throwArgumentError("unknown type: ".concat(e),"type",e)}},{key:"visit",value:function(e,t){return this._visit(this.primaryType,e,t)}}],[{key:"from",value:function(t){return new e(t)}},{key:"getPrimaryType",value:function(t){return e.from(t).primaryType}},{key:"hashStruct",value:function(t,n,r){return e.from(n).hashStruct(t,r)}},{key:"hashDomain",value:function(t){var n=[];for(var r in t){var o=A[r];o||m.throwArgumentError("invalid typed-data domain key: ".concat(JSON.stringify(r)),"domain",t),n.push({name:r,type:o})}return n.sort((function(e,t){return T.indexOf(e.name)-T.indexOf(t.name)})),e.hashStruct("EIP712Domain",{EIP712Domain:n},t)}},{key:"encode",value:function(t,n,r){return(0,s.hexConcat)(["0x1901",e.hashDomain(t),e.from(n).hash(r)])}},{key:"hash",value:function(t,n,r){return(0,l.keccak256)(e.encode(t,n,r))}},{key:"resolveNames",value:function(t,n,r,a){return y(this,void 0,void 0,o.default.mark((function i(){var u,c,l;return o.default.wrap((function(i){for(;;)switch(i.prev=i.next){case 0:t=(0,f.shallowCopy)(t),u={},t.verifyingContract&&!(0,s.isHexString)(t.verifyingContract,20)&&(u[t.verifyingContract]="0x"),(c=e.from(n)).visit(r,(function(e,t){return"address"!==e||(0,s.isHexString)(t,20)||(u[t]="0x"),t})),i.t0=o.default.keys(u);case 6:if((i.t1=i.t0()).done){i.next=13;break}return l=i.t1.value,i.next=10,a(l);case 10:u[l]=i.sent,i.next=6;break;case 13:return t.verifyingContract&&u[t.verifyingContract]&&(t.verifyingContract=u[t.verifyingContract]),r=c.visit(r,(function(e,t){return"address"===e&&u[t]?u[t]:t})),i.abrupt("return",{domain:t,value:r});case 16:case"end":return i.stop()}}),i)})))}},{key:"getPayload",value:function(t,n,r){e.hashDomain(t);var o={},a=[];T.forEach((function(e){var n=t[e];null!=n&&(o[e]=P[e](n),a.push({name:e,type:A[e]}))}));var i=e.from(n),u=(0,f.shallowCopy)(n);return u.EIP712Domain?m.throwArgumentError("types must not contain EIP712Domain type","types.EIP712Domain",n):u.EIP712Domain=a,i.encode(r),{types:u,domain:o,primaryType:i.primaryType,message:i.visit(r,(function(e,t){if(e.match(/^bytes(\d*)/))return(0,s.hexlify)((0,s.arrayify)(t));if(e.match(/^u?int/))return c.BigNumber.from(t).toString();switch(e){case"address":return t.toLowerCase();case"bool":return!!t;case"string":return"string"!=typeof t&&m.throwArgumentError("invalid string","value",t),t}return m.throwArgumentError("unsupported type","type",e)}))}}}]),e}();t.TypedDataEncoder=R},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e){var t,n=this;return this.net.getId().then((function(e){return t=e,n.getBlock(0)})).then((function(n){var r="private";return"0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3"===n.hash&&1===t&&(r="main"),"0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d"===n.hash&&3===t&&(r="ropsten"),"0x6341fd3daf94b748c72ced5a5b26028f2474f5f00d824504e4fa37a75767e177"===n.hash&&4===t&&(r="rinkeby"),"0xbf7e331f7f7c1dd2e05159666b3bf8bc7a8a3a9eb1d518969eab529dd9b88c1a"===n.hash&&5===t&&(r="goerli"),"0xa3c565fc15c7478862d50ccd6561e3c06b24cc509bf388941c25ea985ce32cb9"===n.hash&&42===t&&(r="kovan"),"function"==typeof e&&e(null,r),r})).catch((function(t){if("function"!=typeof e)throw t;e(t)}))};t.default=r},function(e){e.exports=JSON.parse('{"name":"@arianelabs/hweb3","version":"1.0.12","description":"Hedera JavaScript API","repository":"https://github.com/Arianelabs/hweb3.js","license":"LGPL-3.0","engines":{"node":">=8.0.0"},"main":"lib/cjs/index.js","module":"lib/index.js","bugs":{"url":"https://github.com/Arianelabs/hweb3.js/issues"},"keywords":["Hedera","JavaScript","API"],"author":"Arianelabs","types":"types/index.d.ts","scripts":{"compile":"tsc -b tsconfig.json","compile:cjs":"tsc -b tsconfig.cjs.json","dtslint":"dtslint --localTs ../../node_modules/typescript/lib types","postinstall":"echo \\"WARNING: the hweb3-shh and hweb3-bzz api will be deprecated in the next version\\""},"devDependencies":{"@types/node":"^12.12.6","dtslint":"^3.4.1","typescript":"^3.9.5"},"dependencies":{"@arianelabs/hweb3-bzz":"1.0.12","@arianelabs/hweb3-core":"1.0.12","@arianelabs/hweb3-core-helpers":"1.0.12","@arianelabs/hweb3-eth":"1.0.12","@arianelabs/hweb3-eth-personal":"1.0.12","@arianelabs/hweb3-net":"1.0.12","@arianelabs/hweb3-shh":"1.0.12","@arianelabs/hweb3-utils":"1.0.12"}}')}])})); //# sourceMappingURL=hweb3.min.js.map \ No newline at end of file diff --git a/packages/hweb3/dist/hweb3.min.js.map b/packages/hweb3/dist/hweb3.min.js.map index 4c11dc56722..756e304968f 100644 --- a/packages/hweb3/dist/hweb3.min.js.map +++ b/packages/hweb3/dist/hweb3.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap","webpack:///./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/@babel/runtime/helpers/createClass.js","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./node_modules/@babel/runtime/helpers/getPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/inherits.js","webpack:///./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","webpack:///./node_modules/@babel/runtime/regenerator/index.js","webpack:///./node_modules/@babel/runtime/helpers/asyncToGenerator.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountId.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountId.js","webpack:///./node_modules/@babel/runtime/helpers/slicedToArray.js","webpack:///./node_modules/buffer/index.js","webpack:///./node_modules/bn.js/lib/bn.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/AccountId.js","webpack:///./node_modules/inherits/inherits_browser.js","webpack:///./node_modules/long/src/long.js","webpack:///./packages/hweb3-eth-accounts/node_modules/long/src/long.js","webpack:///./node_modules/@hashgraph/sdk/src/transaction/Transaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/transaction/Transaction.js","webpack:///./node_modules/@babel/runtime/helpers/get.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/transaction/Transaction.js","webpack:///./node_modules/safe-buffer/index.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenId.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenId.js","webpack:///./packages/hweb3-hed-contract/node_modules/long/src/long.js","webpack:///./node_modules/@hashgraph/sdk/src/Hbar.js","webpack:///./node_modules/process/browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/Hbar.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenId.js","webpack:///./node_modules/@hashgraph/proto/src/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/proto/src/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/Hbar.js","webpack:///(webpack)/buildin/global.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/proto/src/index.js","webpack:///./node_modules/@hashgraph/sdk/src/Key.js","webpack:///./node_modules/@hashgraph/sdk/src/Timestamp.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/Key.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/Timestamp.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/Key.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/Timestamp.js","webpack:///./packages/hweb3-eth-accounts/node_modules/inherits/inherits_browser.js","webpack:///./node_modules/@babel/runtime/helpers/toConsumableArray.js","webpack:///./node_modules/@hashgraph/sdk/src/query/Query.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/query/Query.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/query/Query.js","webpack:///./node_modules/@babel/runtime/helpers/wrapNativeSuper.js","webpack:///../src.ts/index.ts","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractId.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractId.js","webpack:///./node_modules/@hashgraph/sdk/src/file/FileId.js","webpack:///./node_modules/@hashgraph/sdk/src/Duration.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/file/FileId.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/Duration.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractId.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/Duration.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/file/FileId.js","webpack:///./node_modules/elliptic/lib/elliptic/utils.js","webpack:///./node_modules/minimalistic-assert/index.js","webpack:///./node_modules/@hashgraph/sdk/src/encoding/hex.browser.js","webpack:///./node_modules/@hashgraph/sdk/src/transaction/TransactionId.js","webpack:///./node_modules/string_decoder/lib/string_decoder.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/utils.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/encoding/hex.browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/transaction/TransactionId.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/utils.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/transaction/TransactionId.js","webpack:///./node_modules/@hashgraph/sdk/src/ObjectMap.js","webpack:///./packages/hweb3-core-helpers/lib/index.js","webpack:///./node_modules/node-libs-browser/node_modules/events/events.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/ObjectMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/safe-buffer/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/ObjectMap.js","webpack:///../../src.ts/coders/abstract-coder.ts","webpack:///./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack:///./node_modules/@babel/runtime/helpers/construct.js","webpack:///./node_modules/hash.js/lib/hash/utils.js","webpack:///./node_modules/@hashgraph/sdk/src/LedgerId.js","webpack:///./packages/hweb3-utils/lib/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash/utils.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/LedgerId.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash/utils.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/encoding/hex.browser.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/LedgerId.js","webpack:///./node_modules/@hashgraph/cryptography/src/BadKeyError.js","webpack:///./node_modules/@hashgraph/sdk/src/PublicKey.js","webpack:///./node_modules/@babel/runtime/helpers/set.js","webpack:///./node_modules/@hashgraph/sdk/src/encoding/utf8.browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/BadKeyError.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/PublicKey.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/encoding/utf8.browser.js","webpack:///../src/externals.ts","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/BadKeyError.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/PublicKey.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/encoding/utf8.browser.js","webpack:///./node_modules/@hashgraph/cryptography/src/encoding/hex.browser.js","webpack:///./node_modules/@hashgraph/sdk/src/Cache.js","webpack:///./node_modules/@hashgraph/sdk/src/topic/TopicId.js","webpack:///./node_modules/randombytes/browser.js","webpack:///./node_modules/cipher-base/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/encoding/hex.browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/Cache.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/topic/TopicId.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/encoding/hex.browser.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/topic/TopicId.js","webpack:///./node_modules/bignumber.js/bignumber.js","webpack:///./node_modules/@hashgraph/sdk/src/KeyList.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./node_modules/@hashgraph/sdk/src/Status.js","webpack:///./node_modules/protobufjs/src/util/minimal.js","webpack:///./node_modules/@hashgraph/sdk/src/Executable.js","webpack:///./node_modules/@hashgraph/sdk/src/schedule/ScheduleId.js","webpack:///../src/bytes.ts","webpack:///./node_modules/readable-stream/lib/_stream_duplex.js","webpack:///./packages/hweb3-eth-accounts/node_modules/bignumber.js/bignumber.js","webpack:///./packages/hweb3-eth-accounts/node_modules/minimalistic-assert/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/KeyList.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/Status.js","webpack:///./packages/hweb3-eth-accounts/node_modules/protobufjs/src/util/minimal.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/Executable.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/schedule/ScheduleId.js","webpack:///./packages/hweb3-hed-contract/node_modules/bignumber.js/bignumber.js","webpack:///./packages/hweb3-hed-contract/node_modules/minimalistic-assert/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/Cache.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/KeyList.js","webpack:///./packages/hweb3-hed-contract/node_modules/protobufjs/src/util/minimal.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/Status.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/schedule/ScheduleId.js","webpack:///./packages/hweb3-core/lib/index.js","webpack:///(webpack)/buildin/module.js","webpack:///./node_modules/elliptic/lib/elliptic.js","webpack:///./node_modules/@hashgraph/sdk/src/EntityIdHelper.js","webpack:///./node_modules/@hashgraph/sdk/src/token/NftId.js","webpack:///./node_modules/assert/assert.js","webpack:///../src/internal.ts","webpack:///./node_modules/keccak/node_modules/readable-stream/errors-browser.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/_stream_duplex.js","webpack:///./node_modules/create-hash/browser.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/errors-browser.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/_stream_duplex.js","webpack:///./node_modules/sha.js/hash.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/EntityIdHelper.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/NftId.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/errors-browser.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/_stream_duplex.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/errors-browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/_stream_duplex.js","webpack:///./packages/hweb3-eth-accounts/node_modules/sha.js/hash.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/EntityIdHelper.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/Executable.js","webpack:///./node_modules/@hashgraph/cryptography/src/util/array.js","webpack:///./node_modules/@hashgraph/cryptography/src/primitive/hmac.browser.js","webpack:///./node_modules/hash.js/lib/hash/common.js","webpack:///./node_modules/@hashgraph/sdk/src/PrecheckStatusError.js","webpack:///./node_modules/@hashgraph/sdk/src/token/CustomFixedFee.js","webpack:///./node_modules/core-util-is/lib/util.js","webpack:///./packages/hweb3-core-method/lib/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/util/array.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/primitive/hmac.browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash/common.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/PrecheckStatusError.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/CustomFixedFee.js","webpack:///./node_modules/buffer-xor/index.js","webpack:///./node_modules/asn1.js/lib/asn1/base/buffer.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/util/array.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/primitive/hmac.browser.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash/common.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/util.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/PrecheckStatusError.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/CustomFixedFee.js","webpack:///../src.ts/_version.ts","webpack:///./node_modules/@hashgraph/cryptography/src/index.js","webpack:///./node_modules/@hashgraph/cryptography/node_modules/tweetnacl/nacl-fast.js","webpack:///./node_modules/@hashgraph/cryptography/src/primitive/pbkdf2.browser.js","webpack:///./node_modules/elliptic/lib/elliptic/curve/base.js","webpack:///./node_modules/hash.js/lib/hash.js","webpack:///./node_modules/@hashgraph/sdk/src/ReceiptStatusError.js","webpack:///./node_modules/@hashgraph/sdk/src/util.js","webpack:///./node_modules/@hashgraph/sdk/src/transaction/TransactionReceipt.js","webpack:///./node_modules/@hashgraph/sdk/src/account/HbarAllowance.js","webpack:///./node_modules/@hashgraph/sdk/src/account/TokenAllowance.js","webpack:///./node_modules/@hashgraph/sdk/src/account/TokenNftAllowance.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractFunctionParameters.js","webpack:///./node_modules/@hashgraph/sdk/src/token/CustomFee.js","webpack:///./node_modules/@hashgraph/sdk/src/token/CustomFractionalFee.js","webpack:///./node_modules/@hashgraph/sdk/src/token/CustomRoyaltyFee.js","webpack:///../src/index.ts","webpack:///../src/helpers.ts","webpack:///./node_modules/util-deprecate/browser.js","webpack:///./node_modules/process-nextick-args/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/tweetnacl/nacl-fast.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/primitive/pbkdf2.browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/curve/base.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/ReceiptStatusError.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/util.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/transaction/TransactionReceipt.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/HbarAllowance.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/TokenAllowance.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/TokenNftAllowance.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractFunctionParameters.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/CustomFee.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/CustomFractionalFee.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/CustomRoyaltyFee.js","webpack:///./node_modules/browserify-aes/aes.js","webpack:///./node_modules/evp_bytestokey/index.js","webpack:///./node_modules/parse-asn1/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/tweetnacl/nacl-fast.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/primitive/pbkdf2.browser.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/curve/base.js","webpack:///./packages/hweb3-hed-contract/node_modules/inherits/inherits_browser.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/ReceiptStatusError.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/transaction/TransactionReceipt.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractFunctionParameters.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/CustomFee.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/CustomRoyaltyFee.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/CustomFractionalFee.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/NftId.js","webpack:///./packages/hweb3-core-requestmanager/node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack:///./packages/hweb3-core-requestmanager/node_modules/@babel/runtime/helpers/typeof.js","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack:///./node_modules/@hashgraph/cryptography/src/Ed25519PrivateKey.js","webpack:///./node_modules/@hashgraph/cryptography/src/primitive/random.js","webpack:///./node_modules/@hashgraph/cryptography/src/BadMnemonicReason.js","webpack:///./node_modules/@hashgraph/cryptography/src/encoding/utf8.browser.js","webpack:///./node_modules/brorand/index.js","webpack:///./node_modules/elliptic/lib/elliptic/curves.js","webpack:///./node_modules/@hashgraph/sdk/src/StatusError.js","webpack:///./node_modules/@hashgraph/sdk/src/transaction/List.js","webpack:///./node_modules/@hashgraph/sdk/src/transaction/TransactionRecord.js","webpack:///./node_modules/@hashgraph/sdk/src/Transfer.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractFunctionResult.js","webpack:///./node_modules/@hashgraph/sdk/src/account/LiveHash.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenType.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenSupplyType.js","webpack:///../src/hash.ts","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/internal/streams/end-of-stream.js","webpack:///./node_modules/md5.js/index.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/internal/streams/end-of-stream.js","webpack:///./node_modules/ripemd160/index.js","webpack:///./node_modules/sha.js/index.js","webpack:///./node_modules/readable-stream/readable-browser.js","webpack:///./node_modules/readable-stream/node_modules/safe-buffer/index.js","webpack:///./node_modules/readable-stream/lib/_stream_writable.js","webpack:///../src/types.ts","webpack:///./packages/hweb3-core-subscriptions/lib/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/Ed25519PrivateKey.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/primitive/random.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/BadMnemonicReason.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/encoding/utf8.browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/curves.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/StatusError.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/transaction/List.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/transaction/TransactionRecord.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/Transfer.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractFunctionResult.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/LiveHash.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenType.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenSupplyType.js","webpack:///./node_modules/crypto-browserify/index.js","webpack:///./node_modules/des.js/lib/des/cipher.js","webpack:///./node_modules/browserify-aes/browser.js","webpack:///./node_modules/browserify-aes/modes/index.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/internal/streams/end-of-stream.js","webpack:///./node_modules/browserify-rsa/index.js","webpack:///./node_modules/safer-buffer/safer.js","webpack:///./node_modules/asn1.js/lib/asn1/base/node.js","webpack:///./node_modules/asn1.js/lib/asn1/base/reporter.js","webpack:///./node_modules/asn1.js/lib/asn1/constants/der.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/readable-browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/internal/streams/end-of-stream.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/Ed25519PrivateKey.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/primitive/random.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/BadMnemonicReason.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/encoding/utf8.browser.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/curves.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/StatusError.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/transaction/TransactionRecord.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractFunctionResult.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/LiveHash.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenType.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenSupplyType.js","webpack:///../src.ts/fragments.ts","webpack:///../src.ts/utf8.ts","webpack:///./packages/hweb3-providers-http/node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack:///./node_modules/@hashgraph/sdk/src/browser.js","webpack:///./node_modules/@hashgraph/cryptography/src/PrivateKey.js","webpack:///./node_modules/@hashgraph/cryptography/src/Mnemonic.js","webpack:///./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/arrayLikeToArray.js","webpack:///./node_modules/@hashgraph/cryptography/src/Ed25519PublicKey.js","webpack:///./node_modules/@hashgraph/cryptography/src/BadMnemonicError.js","webpack:///./node_modules/@hashgraph/cryptography/src/primitive/sha256.browser.js","webpack:///./node_modules/@hashgraph/cryptography/src/primitive/slip10.js","webpack:///./node_modules/@hashgraph/cryptography/src/EcdsaPrivateKey.js","webpack:///./node_modules/@hashgraph/cryptography/src/EcdsaPublicKey.js","webpack:///./node_modules/@hashgraph/cryptography/src/primitive/ecdsa.js","webpack:///./node_modules/minimalistic-crypto-utils/lib/utils.js","webpack:///./node_modules/elliptic/lib/elliptic/curve/index.js","webpack:///./node_modules/hash.js/lib/hash/sha/common.js","webpack:///./node_modules/hash.js/lib/hash/sha/256.js","webpack:///./node_modules/hash.js/lib/hash/sha/512.js","webpack:///./node_modules/@hashgraph/cryptography/src/PublicKey.js","webpack:///./node_modules/@hashgraph/cryptography/src/primitive/aes.browser.js","webpack:///./node_modules/@hashgraph/cryptography/src/encoding/der.js","webpack:///./node_modules/@hashgraph/sdk/src/PrivateKey.js","webpack:///./node_modules/@hashgraph/sdk/src/Mnemonic.js","webpack:///./node_modules/@babel/runtime/helpers/superPropBase.js","webpack:///./node_modules/@hashgraph/sdk/src/HbarUnit.js","webpack:///./node_modules/@hashgraph/sdk/src/transaction/TransactionResponse.js","webpack:///./node_modules/@hashgraph/sdk/src/transaction/TransactionReceiptQuery.js","webpack:///./node_modules/protobufjs/minimal.js","webpack:///./node_modules/protobufjs/src/writer.js","webpack:///./node_modules/protobufjs/src/reader.js","webpack:///./node_modules/@hashgraph/sdk/src/grpc/GrpcStatus.js","webpack:///./node_modules/@hashgraph/sdk/src/ExchangeRate.js","webpack:///./node_modules/@hashgraph/sdk/src/transaction/TransactionRecordQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractLogInfo.js","webpack:///./node_modules/@hashgraph/sdk/src/account/TokenTransferMap.js","webpack:///./node_modules/@hashgraph/sdk/src/account/TokenTransferAccountMap.js","webpack:///./node_modules/@hashgraph/sdk/src/account/TokenNftTransferMap.js","webpack:///./node_modules/@hashgraph/sdk/src/token/AssessedCustomFee.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenTransfer.js","webpack:///./node_modules/@hashgraph/sdk/src/cryptography/sha384.browser.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountBalance.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountBalanceQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountInfo.js","webpack:///./node_modules/@hashgraph/sdk/src/account/TokenRelationshipMap.js","webpack:///./node_modules/@hashgraph/sdk/src/account/ProxyStaker.js","webpack:///./node_modules/@hashgraph/sdk/src/address_book/NodeAddress.js","webpack:///./node_modules/@hashgraph/sdk/src/address_book/NodeAddressBook.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractFunctionSelector.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractInfo.js","webpack:///./node_modules/@hashgraph/sdk/src/file/FileInfo.js","webpack:///./node_modules/@hashgraph/sdk/src/network/NetworkVersionInfo.js","webpack:///./node_modules/@hashgraph/sdk/src/network/SemanticVersion.js","webpack:///./node_modules/@hashgraph/sdk/src/schedule/ScheduleInfo.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenInfo.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenNftInfo.js","webpack:///./node_modules/@hashgraph/sdk/src/topic/TopicInfo.js","webpack:///./node_modules/@hashgraph/sdk/src/topic/TopicMessage.js","webpack:///./node_modules/@hashgraph/sdk/src/topic/TopicMessageChunk.js","webpack:///./node_modules/@hashgraph/sdk/src/ManagedNode.js","webpack:///./node_modules/@hashgraph/sdk/src/client/ManagedNetwork.js","webpack:///./node_modules/number-to-bn/src/index.js","webpack:///./packages/hweb3-utils/lib/utils.js","webpack:///./node_modules/isarray/index.js","webpack:///../src/constants.ts","webpack:///../src/account.ts","webpack:///src/secp256k1.ts","webpack:///./node_modules/secp256k1/elliptic.js","webpack:///./node_modules/keccak/node_modules/readable-stream/readable-browser.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/_stream_readable.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/internal/streams/stream-browser.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/internal/streams/destroy.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/internal/streams/state.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/_stream_writable.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/_stream_transform.js","webpack:///./node_modules/hash-base/index.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/_stream_readable.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/internal/streams/stream-browser.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/internal/streams/destroy.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/internal/streams/state.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/_stream_writable.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/_stream_transform.js","webpack:///./node_modules/sha.js/sha256.js","webpack:///./node_modules/sha.js/sha512.js","webpack:///./node_modules/stream-browserify/index.js","webpack:///./node_modules/readable-stream/lib/_stream_readable.js","webpack:///./node_modules/readable-stream/lib/internal/streams/stream-browser.js","webpack:///./node_modules/readable-stream/lib/internal/streams/destroy.js","webpack:///./node_modules/node-libs-browser/node_modules/timers-browserify/main.js","webpack:///./node_modules/readable-stream/lib/_stream_transform.js","webpack:///(webpack)/buildin/amd-options.js","webpack:///./packages/hweb3-core-promievent/lib/index.js","webpack:///./node_modules/eventemitter3/index.js","webpack:///../src.ts/bignumber.ts","webpack:///./packages/hweb3-eth-personal/lib/index.js","webpack:///./packages/hweb3-net/lib/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/PrivateKey.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/Mnemonic.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/Ed25519PublicKey.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/BadMnemonicError.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/primitive/sha256.browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/primitive/slip10.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/EcdsaPrivateKey.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/EcdsaPublicKey.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/primitive/ecdsa.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic.js","webpack:///./packages/hweb3-eth-accounts/node_modules/minimalistic-crypto-utils/lib/utils.js","webpack:///./packages/hweb3-eth-accounts/node_modules/brorand/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/curve/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash/sha/common.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash/sha/256.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash/sha/512.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/PublicKey.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/primitive/aes.browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/encoding/der.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/PrivateKey.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/Mnemonic.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/HbarUnit.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/transaction/TransactionResponse.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/transaction/TransactionReceiptQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/protobufjs/minimal.js","webpack:///./packages/hweb3-eth-accounts/node_modules/protobufjs/src/writer.js","webpack:///./packages/hweb3-eth-accounts/node_modules/protobufjs/src/reader.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/grpc/GrpcStatus.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/ExchangeRate.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/transaction/TransactionRecordQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractLogInfo.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/TokenTransferMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/TokenTransferAccountMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/TokenNftTransferMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/AssessedCustomFee.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenTransfer.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/cryptography/sha384.browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountBalance.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountBalanceQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountInfo.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/TokenRelationshipMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/ProxyStaker.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/address_book/NodeAddress.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/address_book/NodeAddressBook.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractFunctionSelector.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractInfo.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/file/FileInfo.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/network/NetworkVersionInfo.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/network/SemanticVersion.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/schedule/ScheduleInfo.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenInfo.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenNftInfo.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/topic/TopicInfo.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/topic/TopicMessage.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/topic/TopicMessageChunk.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/ManagedNode.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/client/ManagedNetwork.js","webpack:///./node_modules/eth-lib/lib/bytes.js","webpack:///./node_modules/create-hmac/browser.js","webpack:///./node_modules/create-hash/md5.js","webpack:///./node_modules/pbkdf2/browser.js","webpack:///./node_modules/pbkdf2/lib/precondition.js","webpack:///./node_modules/pbkdf2/lib/default-encoding.js","webpack:///./node_modules/pbkdf2/lib/sync-browser.js","webpack:///./node_modules/pbkdf2/lib/to-buffer.js","webpack:///./node_modules/des.js/lib/des/utils.js","webpack:///./node_modules/des.js/lib/des/des.js","webpack:///./node_modules/browserify-aes/modes/ctr.js","webpack:///./node_modules/browserify-aes/incr32.js","webpack:///./node_modules/browserify-aes/authCipher.js","webpack:///./node_modules/browserify-aes/streamCipher.js","webpack:///./node_modules/diffie-hellman/lib/generatePrime.js","webpack:///./node_modules/miller-rabin/lib/mr.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/_stream_readable.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/internal/streams/stream-browser.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/internal/streams/destroy.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/internal/streams/state.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/_stream_writable.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/_stream_transform.js","webpack:///./node_modules/asn1.js/lib/asn1.js","webpack:///./node_modules/asn1.js/lib/asn1/encoders/index.js","webpack:///./node_modules/asn1.js/lib/asn1/encoders/der.js","webpack:///./node_modules/asn1.js/lib/asn1/decoders/index.js","webpack:///./node_modules/asn1.js/lib/asn1/decoders/der.js","webpack:///./node_modules/public-encrypt/mgf.js","webpack:///./node_modules/public-encrypt/xor.js","webpack:///./node_modules/public-encrypt/withPublic.js","webpack:///./node_modules/uuid/lib/rng-browser.js","webpack:///./node_modules/uuid/lib/bytesToUuid.js","webpack:///./packages/hweb3-eth-accounts/node_modules/ethereumjs-util/node_modules/secp256k1/elliptic.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/_stream_readable.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/internal/streams/stream-browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/internal/streams/destroy.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/internal/streams/state.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/_stream_writable.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/_stream_transform.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash-base/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/sha.js/sha256.js","webpack:///./packages/hweb3-eth-accounts/node_modules/sha.js/sha512.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/Mnemonic.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/Cache.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/Ed25519PublicKey.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/BadMnemonicError.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/primitive/sha256.browser.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/primitive/slip10.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/EcdsaPrivateKey.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/EcdsaPublicKey.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/primitive/ecdsa.js","webpack:///./packages/hweb3-hed-contract/node_modules/minimalistic-crypto-utils/lib/utils.js","webpack:///./packages/hweb3-hed-contract/node_modules/brorand/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/curve/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash/sha/common.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash/sha/256.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash/sha/512.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/PublicKey.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/primitive/aes.browser.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/encoding/der.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/PrivateKey.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/Mnemonic.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/array.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/AccountBalance.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/HbarUnit.js","webpack:///./packages/hweb3-hed-contract/node_modules/protobufjs/minimal.js","webpack:///./packages/hweb3-hed-contract/node_modules/protobufjs/src/writer.js","webpack:///./packages/hweb3-hed-contract/node_modules/protobufjs/src/reader.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/AccountBalanceQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/grpc/GrpcStatus.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/transaction/TransactionResponse.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/transaction/TransactionReceiptQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/ExchangeRate.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/transaction/TransactionRecordQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/Transfer.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractLogInfo.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/TokenTransferMap.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/TokenNftTransferMap.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/AssessedCustomFee.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/cryptography/sha384.browser.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/AccountInfo.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/TokenRelationshipMap.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/ProxyStaker.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractFunctionSelector.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractInfo.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/file/FileInfo.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/network/NetworkVersionInfo.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/network/SemanticVersion.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/schedule/ScheduleInfo.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenInfo.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenNftInfo.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/topic/TopicInfo.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/topic/TopicMessage.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/topic/TopicMessageChunk.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/ManagedNode.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/client/ManagedNetwork.js","webpack:///../src.ts/abi-coder.ts","webpack:///../../src.ts/coders/array.ts","webpack:///../../src.ts/coders/bytes.ts","webpack:///../src.ts/id.ts","webpack:///./packages/hweb3/lib/index.js","webpack:///./packages/hweb3-eth/lib/index.js","webpack:///./packages/hweb3-core-requestmanager/lib/index.js","webpack:///./packages/hweb3-core-requestmanager/node_modules/@babel/runtime/regenerator/index.js","webpack:///./packages/hweb3-core-requestmanager/node_modules/regenerator-runtime/runtime.js","webpack:///./packages/hweb3-core-requestmanager/lib/givenProvider.js","webpack:///./packages/hweb3-providers-http/lib/index.js","webpack:///./packages/hweb3-providers-http/node_modules/@babel/runtime/regenerator/index.js","webpack:///./packages/hweb3-providers-http/node_modules/regenerator-runtime/runtime.js","webpack:///./packages/hweb3-providers-http/node_modules/@babel/runtime/helpers/typeof.js","webpack:///./packages/hweb3-providers-http/node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/@hashgraph/sdk/src/exports.js","webpack:///./node_modules/@hashgraph/cryptography/src/KeyList.js","webpack:///./node_modules/regenerator-runtime/runtime.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithHoles.js","webpack:///./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","webpack:///./node_modules/@babel/runtime/helpers/nonIterableRest.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","webpack:///./node_modules/@babel/runtime/helpers/iterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/nonIterableSpread.js","webpack:///./node_modules/@babel/runtime/helpers/isNativeFunction.js","webpack:///./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js","webpack:///./node_modules/@hashgraph/cryptography/src/words/legacy.js","webpack:///./node_modules/@hashgraph/cryptography/src/words/bip39.js","webpack:///./node_modules/@hashgraph/cryptography/src/util/entropy.js","webpack:///./node_modules/@hashgraph/cryptography/src/primitive/keccak.js","webpack:///./node_modules/elliptic/lib/elliptic/curve/short.js","webpack:///./node_modules/elliptic/lib/elliptic/curve/mont.js","webpack:///./node_modules/elliptic/lib/elliptic/curve/edwards.js","webpack:///./node_modules/hash.js/lib/hash/sha.js","webpack:///./node_modules/hash.js/lib/hash/sha/1.js","webpack:///./node_modules/hash.js/lib/hash/sha/224.js","webpack:///./node_modules/hash.js/lib/hash/sha/384.js","webpack:///./node_modules/hash.js/lib/hash/ripemd.js","webpack:///./node_modules/hash.js/lib/hash/hmac.js","webpack:///./node_modules/elliptic/lib/elliptic/precomputed/secp256k1.js","webpack:///./node_modules/elliptic/lib/elliptic/ec/index.js","webpack:///./node_modules/hmac-drbg/lib/hmac-drbg.js","webpack:///./node_modules/elliptic/lib/elliptic/ec/key.js","webpack:///./node_modules/elliptic/lib/elliptic/ec/signature.js","webpack:///./node_modules/elliptic/lib/elliptic/eddsa/index.js","webpack:///./node_modules/elliptic/lib/elliptic/eddsa/key.js","webpack:///./node_modules/elliptic/lib/elliptic/eddsa/signature.js","webpack:///./node_modules/@hashgraph/cryptography/src/primitive/keystore.js","webpack:///./node_modules/@hashgraph/cryptography/src/encoding/pem.js","webpack:///./node_modules/@hashgraph/cryptography/src/primitive/pkcs.js","webpack:///./node_modules/@hashgraph/cryptography/src/encoding/base64.browser.js","webpack:///./node_modules/@hashgraph/cryptography/src/util/derive.js","webpack:///./node_modules/@hashgraph/sdk/src/array.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountAllowanceAdjustTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/long.js","webpack:///./node_modules/@hashgraph/sdk/src/BadEntityIdError.js","webpack:///./node_modules/protobufjs/src/index-minimal.js","webpack:///./node_modules/@protobufjs/aspromise/index.js","webpack:///./node_modules/@protobufjs/base64/index.js","webpack:///./node_modules/@protobufjs/eventemitter/index.js","webpack:///./node_modules/@protobufjs/float/index.js","webpack:///./node_modules/@protobufjs/inquire/index.js","webpack:///./node_modules/@protobufjs/utf8/index.js","webpack:///./node_modules/@protobufjs/pool/index.js","webpack:///./node_modules/protobufjs/src/util/longbits.js","webpack:///./node_modules/protobufjs/src/writer_buffer.js","webpack:///./node_modules/protobufjs/src/reader_buffer.js","webpack:///./node_modules/protobufjs/src/rpc.js","webpack:///./node_modules/protobufjs/src/rpc/service.js","webpack:///./node_modules/protobufjs/src/roots.js","webpack:///./node_modules/@hashgraph/proto/src/proto.js","webpack:///./node_modules/@hashgraph/sdk/src/grpc/GrpcServiceError.js","webpack:///./node_modules/@hashgraph/sdk/src/MaxQueryPaymentExceeded.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractStateChange.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/StorageChange.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenAssociation.js","webpack:///./node_modules/@hashgraph/sdk/src/transaction/TransactionHashMap.js","webpack:///./node_modules/@hashgraph/sdk/src/transaction/SignatureMap.js","webpack:///./node_modules/@hashgraph/sdk/src/transaction/NodeAccountIdSignatureMap.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountAllowanceApproveTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/account/TokenBalanceMap.js","webpack:///./node_modules/@hashgraph/sdk/src/account/TokenDecimalMap.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountCreateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountDeleteTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/account/TokenRelationship.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountInfoQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountRecordsQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountStakersQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/account/AccountUpdateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/network/AddressBookQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/address_book/Endpoint.js","webpack:///./node_modules/@hashgraph/sdk/src/address_book/IPv4Address.js","webpack:///./node_modules/@hashgraph/sdk/src/address_book/IPv4AddressPart.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractByteCodeQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractCallQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/cryptography/keccak.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractCreateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractDeleteTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractExecuteTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractInfoQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/ContractUpdateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/contract/DelegateContractId.js","webpack:///./node_modules/@hashgraph/sdk/src/file/FileAppendTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/file/FileContentsQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/file/FileCreateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/file/FileDeleteTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/file/FileInfoQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/file/FileUpdateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/system/FreezeTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/FreezeType.js","webpack:///./node_modules/@hashgraph/sdk/src/account/LiveHashAddTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/account/LiveHashDeleteTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/account/LiveHashQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/network/NetworkVersionInfoQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/schedule/ScheduleCreateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/schedule/ScheduleDeleteTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/schedule/ScheduleInfoQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/schedule/ScheduleSignTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/system/SystemDeleteTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/system/SystemUndeleteTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenAssociateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenBurnTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenCreateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenDeleteTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenDissociateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenFeeScheduleUpdateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenFreezeTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenGrantKycTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenInfoQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenMintTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenNftInfoQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenPauseTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenRevokeKycTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenUnfreezeTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenUnpauseTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenUpdateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenWipeTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/topic/TopicCreateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/topic/TopicDeleteTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/topic/TopicInfoQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/topic/TopicMessageQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/topic/SubscriptionHandle.js","webpack:///./node_modules/@hashgraph/sdk/src/topic/TopicMessageSubmitTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/topic/TopicUpdateTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/account/TransferTransaction.js","webpack:///./node_modules/@hashgraph/sdk/src/account/NullableTokenDecimalMap.js","webpack:///./node_modules/@hashgraph/sdk/src/account/HbarTransferMap.js","webpack:///./node_modules/@hashgraph/sdk/src/token/TokenNftTransfer.js","webpack:///./node_modules/@hashgraph/sdk/src/query/CostQuery.js","webpack:///./node_modules/@hashgraph/sdk/src/client/WebClient.js","webpack:///./node_modules/@hashgraph/sdk/src/client/Client.js","webpack:///./node_modules/@hashgraph/sdk/src/client/Network.js","webpack:///./node_modules/@hashgraph/sdk/src/Node.js","webpack:///./node_modules/@hashgraph/sdk/src/ManagedNodeAddress.js","webpack:///./node_modules/@hashgraph/sdk/src/NodeCerts.js","webpack:///./node_modules/@hashgraph/sdk/src/address_book/AddressBooks.js","webpack:///./node_modules/@hashgraph/sdk/src/client/MirrorNetwork.js","webpack:///./node_modules/@hashgraph/sdk/src/MirrorNode.js","webpack:///./node_modules/@hashgraph/sdk/src/channel/WebChannel.js","webpack:///./node_modules/@hashgraph/sdk/src/channel/Channel.js","webpack:///./packages/hweb3-core-requestmanager/lib/batch.js","webpack:///./packages/hweb3-core-requestmanager/lib/jsonrpc.js","webpack:///./packages/hweb3-core-helpers/lib/errors.js","webpack:///./packages/hweb3-core-helpers/lib/formatters.js","webpack:///./node_modules/ethjs-unit/lib/index.js","webpack:///./node_modules/strip-hex-prefix/src/index.js","webpack:///./node_modules/is-hex-prefixed/src/index.js","webpack:///./node_modules/base64-js/index.js","webpack:///./node_modules/ieee754/index.js","webpack:///./node_modules/utf8/utf8.js","webpack:///./node_modules/object-assign/index.js","webpack:///./node_modules/node-libs-browser/node_modules/util/util.js","webpack:///./node_modules/node-libs-browser/node_modules/util/support/isBufferBrowser.js","webpack:///./node_modules/node-libs-browser/node_modules/inherits/inherits_browser.js","webpack:///./node_modules/secp256k1/lib/index.js","webpack:///./node_modules/secp256k1/lib/elliptic.js","webpack:///src/random.ts","webpack:///src/keccak.ts","webpack:///src/hash-utils.ts","webpack:///./node_modules/keccak/js.js","webpack:///./node_modules/keccak/lib/api/index.js","webpack:///./node_modules/keccak/lib/api/keccak.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/internal/streams/buffer_list.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/internal/streams/async_iterator.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/internal/streams/from-browser.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/_stream_passthrough.js","webpack:///./node_modules/keccak/node_modules/readable-stream/lib/internal/streams/pipeline.js","webpack:///./node_modules/keccak/lib/api/shake.js","webpack:///./node_modules/keccak/lib/keccak.js","webpack:///./node_modules/keccak/lib/keccak-state-unroll.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/readable-browser.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/internal/streams/buffer_list.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/internal/streams/async_iterator.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/internal/streams/from-browser.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/_stream_passthrough.js","webpack:///./node_modules/hash-base/node_modules/readable-stream/lib/internal/streams/pipeline.js","webpack:///./node_modules/sha.js/sha.js","webpack:///./node_modules/sha.js/sha1.js","webpack:///./node_modules/sha.js/sha224.js","webpack:///./node_modules/sha.js/sha384.js","webpack:///./node_modules/readable-stream/lib/internal/streams/BufferList.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/readable-stream/lib/_stream_passthrough.js","webpack:///./node_modules/readable-stream/writable-browser.js","webpack:///./node_modules/readable-stream/duplex-browser.js","webpack:///./node_modules/readable-stream/transform.js","webpack:///./node_modules/readable-stream/passthrough.js","webpack:///../src/address.ts","webpack:///../src/signature.ts","webpack:///../src/object.ts","webpack:///./node_modules/ethereum-bloom-filters/dist/index.js","webpack:///./node_modules/ethereum-bloom-filters/dist/utils.js","webpack:///./node_modules/ethereum-bloom-filters/node_modules/js-sha3/src/sha3.js","webpack:///./packages/hweb3-utils/lib/soliditySha3.js","webpack:///./packages/hweb3-eth-iban/lib/index.js","webpack:///./packages/hweb3-core/lib/extend.js","webpack:///./packages/hweb3-core-subscriptions/lib/subscription.js","webpack:///../src.ts/fixednumber.ts","webpack:///./node_modules/@ethersproject/keccak256/node_modules/js-sha3/src/sha3.js","webpack:///../src.ts/addresses.ts","webpack:///../src.ts/bignumbers.ts","webpack:///../src.ts/hashes.ts","webpack:///../src.ts/strings.ts","webpack:///../../../node_modules/minimalistic-assert/index.js","webpack:///../../../node_modules/minimalistic-crypto-utils/lib/utils.js","webpack:///../../../node_modules/elliptic/lib/elliptic/utils.js","webpack:///../../../node_modules/elliptic/lib/elliptic/curve/base.js","webpack:///../../../node_modules/inherits/inherits_browser.js","webpack:///../../../node_modules/elliptic/lib/elliptic/curve/short.js","webpack:///../../../node_modules/elliptic/lib/elliptic/curve/index.js","webpack:///../../../node_modules/elliptic/lib/elliptic/curves.js","webpack:///../../../node_modules/hmac-drbg/lib/hmac-drbg.js","webpack:///../../../node_modules/elliptic/lib/elliptic/ec/key.js","webpack:///../../../node_modules/elliptic/lib/elliptic/ec/signature.js","webpack:///../../../node_modules/elliptic/lib/elliptic/ec/index.js","webpack:///elliptic.js","webpack:///../../../node_modules/elliptic/lib/elliptic.js","webpack:///./packages/hweb3-eth-accounts/lib/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/exports.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/KeyList.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/words/legacy.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/words/bip39.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/util/entropy.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/primitive/keccak.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/curve/short.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/curve/mont.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/curve/edwards.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash/sha.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash/sha/1.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash/sha/224.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash/sha/384.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash/ripemd.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hash.js/lib/hash/hmac.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/precomputed/secp256k1.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/ec/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/hmac-drbg/lib/hmac-drbg.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/ec/key.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/ec/signature.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/eddsa/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/eddsa/key.js","webpack:///./packages/hweb3-eth-accounts/node_modules/elliptic/lib/elliptic/eddsa/signature.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/primitive/keystore.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/encoding/pem.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/primitive/pkcs.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/encoding/base64.browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/cryptography/src/util/derive.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/array.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountAllowanceAdjustTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/long.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/BadEntityIdError.js","webpack:///./packages/hweb3-eth-accounts/node_modules/protobufjs/src/index-minimal.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@protobufjs/aspromise/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@protobufjs/base64/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@protobufjs/eventemitter/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@protobufjs/float/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@protobufjs/inquire/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@protobufjs/utf8/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@protobufjs/pool/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/protobufjs/src/util/longbits.js","webpack:///./packages/hweb3-eth-accounts/node_modules/protobufjs/src/writer_buffer.js","webpack:///./packages/hweb3-eth-accounts/node_modules/protobufjs/src/reader_buffer.js","webpack:///./packages/hweb3-eth-accounts/node_modules/protobufjs/src/rpc.js","webpack:///./packages/hweb3-eth-accounts/node_modules/protobufjs/src/rpc/service.js","webpack:///./packages/hweb3-eth-accounts/node_modules/protobufjs/src/roots.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/proto/src/proto.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/grpc/GrpcServiceError.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/MaxQueryPaymentExceeded.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractStateChange.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/StorageChange.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenAssociation.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/transaction/TransactionHashMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/transaction/SignatureMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/transaction/NodeAccountIdSignatureMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountAllowanceApproveTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/TokenBalanceMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/TokenDecimalMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountCreateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountDeleteTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/TokenRelationship.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountInfoQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountRecordsQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountStakersQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/AccountUpdateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/network/AddressBookQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/address_book/Endpoint.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/address_book/IPv4Address.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/address_book/IPv4AddressPart.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractByteCodeQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractCallQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/cryptography/keccak.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractCreateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractDeleteTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractExecuteTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractInfoQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/ContractUpdateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/contract/DelegateContractId.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/file/FileAppendTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/file/FileContentsQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/file/FileCreateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/file/FileDeleteTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/file/FileInfoQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/file/FileUpdateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/system/FreezeTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/FreezeType.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/LiveHashAddTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/LiveHashDeleteTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/LiveHashQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/network/NetworkVersionInfoQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/schedule/ScheduleCreateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/schedule/ScheduleDeleteTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/schedule/ScheduleInfoQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/schedule/ScheduleSignTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/system/SystemDeleteTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/system/SystemUndeleteTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenAssociateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenBurnTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenCreateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenDeleteTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenDissociateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenFeeScheduleUpdateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenFreezeTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenGrantKycTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenInfoQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenMintTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenNftInfoQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenPauseTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenRevokeKycTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenUnfreezeTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenUnpauseTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenUpdateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenWipeTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/topic/TopicCreateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/topic/TopicDeleteTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/topic/TopicInfoQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/topic/TopicMessageQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/topic/SubscriptionHandle.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/topic/TopicMessageSubmitTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/topic/TopicUpdateTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/TransferTransaction.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/NullableTokenDecimalMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/account/HbarTransferMap.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/token/TokenNftTransfer.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/query/CostQuery.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/client/WebClient.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/client/Client.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/client/Network.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/Node.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/ManagedNodeAddress.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/NodeCerts.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/address_book/AddressBooks.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/client/MirrorNetwork.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/MirrorNode.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/channel/WebChannel.js","webpack:///./packages/hweb3-eth-accounts/node_modules/@hashgraph/sdk/src/channel/Channel.js","webpack:///./node_modules/eth-lib/lib/account.js","webpack:///./node_modules/eth-lib/lib/array.js","webpack:///./node_modules/create-hmac/legacy.js","webpack:///./node_modules/browserify-sign/algos.js","webpack:///./node_modules/pbkdf2/lib/async.js","webpack:///./node_modules/browserify-cipher/browser.js","webpack:///./node_modules/browserify-des/index.js","webpack:///./node_modules/des.js/lib/des.js","webpack:///./node_modules/des.js/lib/des/cbc.js","webpack:///./node_modules/des.js/lib/des/ede.js","webpack:///./node_modules/browserify-aes/encrypter.js","webpack:///./node_modules/browserify-aes/modes/ecb.js","webpack:///./node_modules/browserify-aes/modes/cbc.js","webpack:///./node_modules/browserify-aes/modes/cfb.js","webpack:///./node_modules/browserify-aes/modes/cfb8.js","webpack:///./node_modules/browserify-aes/modes/cfb1.js","webpack:///./node_modules/browserify-aes/modes/ofb.js","webpack:///./node_modules/browserify-aes/ghash.js","webpack:///./node_modules/browserify-aes/decrypter.js","webpack:///./node_modules/browserify-des/modes.js","webpack:///./node_modules/diffie-hellman/browser.js","webpack:///./node_modules/diffie-hellman/lib/dh.js","webpack:///./node_modules/browserify-sign/browser/index.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/readable-browser.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/internal/streams/buffer_list.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/internal/streams/async_iterator.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/internal/streams/from-browser.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/_stream_passthrough.js","webpack:///./node_modules/browserify-sign/node_modules/readable-stream/lib/internal/streams/pipeline.js","webpack:///./node_modules/browserify-sign/browser/sign.js","webpack:///./node_modules/parse-asn1/asn1.js","webpack:///./node_modules/asn1.js/lib/asn1/api.js","webpack:///./node_modules/asn1.js/lib/asn1/encoders/pem.js","webpack:///./node_modules/asn1.js/lib/asn1/decoders/pem.js","webpack:///./node_modules/asn1.js/lib/asn1/base/index.js","webpack:///./node_modules/asn1.js/lib/asn1/constants/index.js","webpack:///./node_modules/parse-asn1/certificate.js","webpack:///./node_modules/parse-asn1/fixProc.js","webpack:///./node_modules/browserify-sign/browser/verify.js","webpack:///./node_modules/create-ecdh/browser.js","webpack:///./node_modules/public-encrypt/browser.js","webpack:///./node_modules/public-encrypt/publicEncrypt.js","webpack:///./node_modules/public-encrypt/privateDecrypt.js","webpack:///./node_modules/randomfill/browser.js","webpack:///./node_modules/eth-lib/lib/nat.js","webpack:///./node_modules/eth-lib/lib/rlp.js","webpack:///./node_modules/eth-lib/lib/hash.js","webpack:///./node_modules/scrypt-js/scrypt.js","webpack:///./node_modules/uuid/index.js","webpack:///./node_modules/uuid/v1.js","webpack:///./node_modules/uuid/v4.js","webpack:///./packages/hweb3-eth-accounts/node_modules/ethereumjs-util/node_modules/secp256k1/lib/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/ethereumjs-util/node_modules/secp256k1/lib/elliptic.js","webpack:///./packages/hweb3-eth-accounts/node_modules/randombytes/browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/ethereumjs-util/node_modules/keccak/js.js","webpack:///./packages/hweb3-eth-accounts/node_modules/ethereumjs-util/node_modules/keccak/lib/api/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/ethereumjs-util/node_modules/keccak/lib/api/keccak.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/internal/streams/buffer_list.js","webpack:///./packages/hweb3-eth-accounts/node_modules/util-deprecate/browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/internal/streams/async_iterator.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/internal/streams/from-browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/_stream_passthrough.js","webpack:///./packages/hweb3-eth-accounts/node_modules/readable-stream/lib/internal/streams/pipeline.js","webpack:///./packages/hweb3-eth-accounts/node_modules/ethereumjs-util/node_modules/keccak/lib/api/shake.js","webpack:///./packages/hweb3-eth-accounts/node_modules/ethereumjs-util/node_modules/keccak/lib/keccak.js","webpack:///./packages/hweb3-eth-accounts/node_modules/ethereumjs-util/node_modules/keccak/lib/keccak-state-unroll.js","webpack:///./packages/hweb3-eth-accounts/node_modules/create-hash/browser.js","webpack:///./packages/hweb3-eth-accounts/node_modules/md5.js/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/ripemd160/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/sha.js/index.js","webpack:///./packages/hweb3-eth-accounts/node_modules/sha.js/sha.js","webpack:///./packages/hweb3-eth-accounts/node_modules/sha.js/sha1.js","webpack:///./packages/hweb3-eth-accounts/node_modules/sha.js/sha224.js","webpack:///./packages/hweb3-eth-accounts/node_modules/sha.js/sha384.js","webpack:///./packages/hweb3-eth-accounts/node_modules/cipher-base/index.js","webpack:///./packages/hweb3-eth-accounts/lib/createNewAccountId.js","webpack:///./packages/hweb3-hed-contract/lib/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/browser.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/exports.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/KeyList.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/PrivateKey.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/words/legacy.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/words/bip39.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/util/entropy.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/primitive/keccak.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/curve/short.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/curve/mont.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/curve/edwards.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash/sha.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash/sha/1.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash/sha/224.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash/sha/384.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash/ripemd.js","webpack:///./packages/hweb3-hed-contract/node_modules/hash.js/lib/hash/hmac.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/precomputed/secp256k1.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/ec/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/hmac-drbg/lib/hmac-drbg.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/ec/key.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/ec/signature.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/eddsa/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/eddsa/key.js","webpack:///./packages/hweb3-hed-contract/node_modules/elliptic/lib/elliptic/eddsa/signature.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/primitive/keystore.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/encoding/pem.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/primitive/pkcs.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/encoding/base64.browser.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/cryptography/src/util/derive.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/long.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/BadEntityIdError.js","webpack:///./packages/hweb3-hed-contract/node_modules/protobufjs/src/index-minimal.js","webpack:///./packages/hweb3-hed-contract/node_modules/@protobufjs/aspromise/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/@protobufjs/base64/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/@protobufjs/eventemitter/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/@protobufjs/float/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/@protobufjs/inquire/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/@protobufjs/utf8/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/@protobufjs/pool/index.js","webpack:///./packages/hweb3-hed-contract/node_modules/protobufjs/src/util/longbits.js","webpack:///./packages/hweb3-hed-contract/node_modules/protobufjs/src/writer_buffer.js","webpack:///./packages/hweb3-hed-contract/node_modules/protobufjs/src/reader_buffer.js","webpack:///./packages/hweb3-hed-contract/node_modules/protobufjs/src/rpc.js","webpack:///./packages/hweb3-hed-contract/node_modules/protobufjs/src/rpc/service.js","webpack:///./packages/hweb3-hed-contract/node_modules/protobufjs/src/roots.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/proto/src/proto.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/TokenBalanceMap.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/TokenDecimalMap.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/grpc/GrpcServiceError.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/MaxQueryPaymentExceeded.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/AccountCreateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/TokenTransferAccountMap.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenAssociation.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/transaction/TransactionHashMap.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/transaction/SignatureMap.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/transaction/NodeAccountIdSignatureMap.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/AccountDeleteTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/TokenRelationship.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/AccountInfoQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/AccountRecordsQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/AccountStakersQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/AccountUpdateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractByteCodeQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractCallQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/cryptography/keccak.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractCreateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractDeleteTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractExecuteTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractInfoQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/contract/ContractUpdateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/file/FileAppendTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/file/FileContentsQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/file/FileCreateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/file/FileDeleteTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/file/FileInfoQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/file/FileUpdateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/system/FreezeTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/FreezeType.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/LiveHashAddTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/LiveHashDeleteTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/LiveHashQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/network/NetworkVersionInfoQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/schedule/ScheduleCreateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/schedule/ScheduleDeleteTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/schedule/ScheduleInfoQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/schedule/ScheduleSignTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/system/SystemDeleteTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/system/SystemUndeleteTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenAssociateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenBurnTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenCreateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenDeleteTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenDissociateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenFeeScheduleUpdateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenFreezeTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenPauseTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenGrantKycTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenInfoQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenMintTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenNftInfoQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenRevokeKycTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenUnfreezeTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenUnpauseTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenUpdateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/token/TokenWipeTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/topic/TopicCreateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/topic/TopicDeleteTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/topic/TopicInfoQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/topic/TopicMessageQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/topic/SubscriptionHandle.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/topic/TopicMessageSubmitTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/topic/TopicUpdateTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/TransferTransaction.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/NullableTokenDecimalMap.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/account/HbarTransferMap.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/query/CostQuery.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/client/WebClient.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/client/Client.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/client/Network.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/Node.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/ManagedNodeAddress.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/NodeCerts.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/address_book/AddressBooks.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/address_book/NodeAddressBook.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/address_book/NodeAddress.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/address_book/Endpoint.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/address_book/IPv4Address.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/address_book/IPv4AddressPart.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/client/MirrorNetwork.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/MirrorNode.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/channel/WebChannel.js","webpack:///./packages/hweb3-hed-contract/node_modules/@hashgraph/sdk/src/channel/Channel.js","webpack:///./packages/hweb3-eth-abi/lib/index.js","webpack:///./packages/hweb3-eth-abi/node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack:///./packages/hweb3-eth-abi/node_modules/@babel/runtime/helpers/typeof.js","webpack:///../../src.ts/coders/address.ts","webpack:///../../src.ts/coders/anonymous.ts","webpack:///../../src.ts/coders/boolean.ts","webpack:///../../src.ts/coders/fixed-bytes.ts","webpack:///../../src.ts/coders/null.ts","webpack:///../../src.ts/coders/number.ts","webpack:///../../src.ts/coders/string.ts","webpack:///../src.ts/bytes32.ts","webpack:///../src.ts/idna.ts","webpack:///../../src.ts/coders/tuple.ts","webpack:///../src.ts/interface.ts","webpack:///../src.ts/namehash.ts","webpack:///../src.ts/message.ts","webpack:///../src.ts/typed-data.ts","webpack:///./packages/hweb3-eth/lib/getNetworkType.js"],"names":["root","factory","exports","module","define","amd","window","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","obj","instance","Constructor","TypeError","_defineProperties","target","props","length","descriptor","configurable","writable","protoProps","staticProps","_typeof","iterator","constructor","_getPrototypeOf","setPrototypeOf","getPrototypeOf","__proto__","require","subClass","superClass","assertThisInitialized","self","asyncGeneratorStep","gen","resolve","reject","_next","_throw","arg","info","error","done","Promise","then","fn","this","args","arguments","apply","err","undefined","AccountId","realm","num","aliasKey","result","entity_id","shard","_checksum","client","console","warn","validateChecksum","Error","toSolidityAddress","alias","proto","Key","encode","_toProtobufKey","finish","accountNum","shardNum","realmNum","AccountID","_toProtobuf","account","toString","toStringWithChecksum","other","equals","eq","id","comparison","compare","text","fromStringSplitter","Number","isNaN","Long","fromString","ZERO","numOrHex","PublicKey","_fromProtobufKey","decode","bytes","_fromProtobuf","address","fromSolidityAddress","CACHE","accountIdConstructor","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","arr","base64","ieee754","isArray","kMaxLength","Buffer","TYPED_ARRAY_SUPPORT","createBuffer","that","RangeError","Uint8Array","encodingOrOffset","allocUnsafe","from","ArrayBuffer","array","byteOffset","byteLength","fromArrayLike","fromArrayBuffer","string","encoding","isEncoding","actual","write","slice","isBuffer","len","checked","copy","buffer","val","type","data","fromObject","assertSize","size","isView","loweredCase","utf8ToBytes","base64ToBytes","toLowerCase","slowToString","start","end","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","b","bidirectionalIndexOf","dir","arrayIndexOf","indexOf","lastIndexOf","indexSize","arrLength","valLength","String","read","buf","readUInt16BE","foundIndex","found","j","hexWrite","offset","remaining","strLen","parsed","parseInt","substr","utf8Write","blitBuffer","asciiWrite","str","byteArray","push","charCodeAt","asciiToBytes","latin1Write","base64Write","ucs2Write","units","hi","lo","utf16leToBytes","fromByteArray","Math","min","res","secondByte","thirdByte","fourthByte","tempCodePoint","firstByte","codePoint","bytesPerSequence","codePoints","fromCharCode","decodeCodePointsArray","SlowBuffer","alloc","INSPECT_MAX_BYTES","global","foo","subarray","e","typedArraySupport","poolSize","_augment","species","fill","allocUnsafeSlow","_isBuffer","a","x","y","concat","list","pos","swap16","swap32","swap64","inspect","max","match","join","thisStart","thisEnd","thisCopy","targetCopy","includes","isFinite","toJSON","Array","_arr","ret","out","toHex","checkOffset","ext","checkInt","objectWriteUInt16","littleEndian","objectWriteUInt32","checkIEEE754","writeFloat","noAssert","writeDouble","newBuf","sliceLen","readUIntLE","mul","readUIntBE","readUInt8","readUInt16LE","readUInt32LE","readUInt32BE","readIntLE","pow","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUIntLE","writeUIntBE","writeUInt8","floor","writeUInt16LE","writeUInt16BE","writeUInt32LE","writeUInt32BE","writeIntLE","limit","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","set","code","INVALID_BASE64_RE","Infinity","leadSurrogate","toByteArray","trim","replace","stringtrim","base64clean","src","dst","assert","msg","inherits","ctor","superCtor","super_","TempCtor","BN","number","base","endian","isBN","negative","words","red","_init","wordSize","parseHex4Bits","index","parseHexByte","lowerBound","parseBase","left","right","cmp","_initNumber","_initArray","_parseHex","_parseBase","toArray","ceil","w","off","strip","limbLen","limbPow","total","mod","word","imuln","_iaddn","dest","clone","_expand","_normSign","zeros","groupSizes","groupBases","smallMulTo","carry","k","ncarry","rword","maxJ","padding","groupSize","groupBase","isZero","modn","idivn","toNumber","toBuffer","toArrayLike","ArrayType","reqLength","q","andln","iushrn","clz32","_countBits","_zeroBits","bitLength","zeroBits","toTwos","width","abs","inotn","iaddn","fromTwos","testn","notn","ineg","isNeg","neg","iuor","ior","or","uor","iuand","iand","and","uand","iuxor","ixor","xor","uxor","bytesNeeded","bitsLeft","setn","bit","wbit","iadd","isub","add","comb10MulTo","mid","a0","al0","ah0","a1","al1","ah1","a2","al2","ah2","a3","al3","ah3","a4","al4","ah4","a5","al5","ah5","a6","al6","ah6","a7","al7","ah7","a8","al8","ah8","a9","al9","ah9","b0","bl0","bh0","b1","bl1","bh1","b2","bl2","bh2","b3","bl3","bh3","b4","bl4","bh4","b5","bl5","bh5","b6","bl6","bh6","b7","bl7","bh7","b8","bl8","bh8","b9","bl9","bh9","w0","imul","w1","w2","w3","w4","w5","w6","w7","w8","w9","w10","w11","w12","w13","w14","w15","w16","w17","w18","jumboMulTo","FFTM","mulp","mulTo","hncarry","bigMulTo","makeRBT","N","revBin","rb","permute","rbt","rws","iws","rtws","itws","transform","rtwdf","cos","PI","itwdf","sin","rtwdf_","itwdf_","re","ie","ro","io","rx","guessLen13b","odd","conjugate","normalize13b","ws","round","convert13b","stub","ph","_","rwst","iwst","nrws","nrwst","niwst","rmws","mulf","muln","sqr","isqr","toBitArray","iushln","bits","carryMask","newCarry","ishln","hint","extended","h","mask","maskedWords","ishrn","shln","ushln","shrn","ushrn","imaskn","maskn","isubn","addn","subn","iabs","_ishlnsubmul","shift","_wordDiv","bhi","diff","qj","div","divmod","positive","divn","umod","divRound","dm","half","r2","acc","egcd","A","B","C","D","g","isEven","yp","xp","im","isOdd","jm","gcd","_invmp","x1","x2","delta","cmpn","invm","bincn","ucmp","gtn","gt","gten","gte","ltn","lt","lten","lte","eqn","Red","toRed","ctx","convertTo","_forceRed","fromRed","convertFrom","forceRed","redAdd","redIAdd","redSub","redISub","redShl","shl","redMul","_verify2","redIMul","redSqr","_verify1","redISqr","redSqrt","sqrt","redInvm","redNeg","redPow","primes","k256","p224","p192","p25519","MPrime","tmp","_tmp","K256","P224","P192","P25519","prime","_prime","Mont","imod","rinv","minv","ireduce","rlen","split","imulK","_strip","input","output","outLen","prev","next","mod3","one","nOne","lpow","z","inv","wnd","current","currentLen","mont","u","regex","RegExp","numOrAliasKey","checksum","exec","wasm","WebAssembly","Instance","Module","low","high","unsigned","isLong","__isLong__","INT_CACHE","UINT_CACHE","fromInt","cachedObj","cache","fromBits","fromNumber","UZERO","TWO_PWR_64_DBL","MAX_UNSIGNED_VALUE","TWO_PWR_63_DBL","MIN_VALUE","MAX_VALUE","TWO_PWR_32_DBL","lowBits","highBits","pow_dbl","radix","substring","radixToPower","power","fromValue","TWO_PWR_16_DBL","TWO_PWR_24","ONE","UONE","NEG_ONE","LongPrototype","toInt","isNegative","radixLong","rem1","rem","remDiv","digits","getHighBits","getHighBitsUnsigned","getLowBits","getLowBitsUnsigned","getNumBitsAbs","eqz","isPositive","notEquals","neq","ne","lessThan","comp","lessThanOrEqual","le","greaterThan","greaterThanOrEqual","ge","thisNeg","otherNeg","negate","not","addend","a48","a32","a16","a00","b48","b32","b16","c48","c32","c16","c00","subtract","subtrahend","multiply","multiplier","get_high","b00","divide","divisor","approx","div_u","div_s","toUnsigned","shru","shr","log2","log","LN2","approxRes","approxRem","modulo","rem_u","rem_s","shiftLeft","numBits","shiftRight","shiftRightUnsigned","shr_u","toSigned","toBytes","toBytesLE","toBytesBE","fromBytes","fromBytesLE","fromBytesBE","DEFAULT_AUTO_RENEW_PERIOD","DEFAULT_RECORD_THRESHOLD","Hbar","fromTinybars","TRANSACTION_REGISTRY","Map","Transaction","_transactions","List","_signedTransactions","_signerPublicKeys","Set","_nextTransactionIndex","_transactionValidDuration","_defaultMaxTransactionFee","_maxTransactionFee","_transactionMemo","_transactionIds","_operatorAccountId","_publicKeys","_transactionSigners","_regenerateTransactionId","_requireNotFrozen","SCHEDULE_CREATE_TRANSACTION","_setScheduledTransaction","nodeIds","validDuration","maxTransactionFee","regenerateTransactionId","transactionMemo","setLocked","isEmpty","transactionId","setList","privateKey","signWith","publicKey","message","sign","transactionSigner","_signOnDemand","_requireFrozen","publicKeyData","toBytesRaw","publicKeyHex","hex","has","clear","signedTransaction","bodyBytes","signature","sigMap","sigPair","_toProtobufSignature","operator","_operator","_isFrozen","freezeWith","_requireOneNodeAccountId","isFrozen","freeze","_nodeAccountIds","transaction","_requireNotSignOnDemand","_buildAllTransactions","SignatureMap","_fromTransaction","_buildAllTransactionsAsync","_network","getNodeAccountIdsForExecute","locked","map","nodeId","_makeSignedTransaction","defaultMaxTransactionFee","defaultRegenerateTransactionId","_setNodeAccountIds","_setTransactionId","accountId","_buildNewTransactionIdList","_buildSignedTransactions","ProtoTransactionList","transactionList","sha384","digest","signedTransactionBytes","TransactionHashMap","isAutoValidateChecksumsEnabled","_validateChecksums","_buildTransaction","_buildTransactionAsync","TransactionId","withValidStart","Timestamp","generate","setIfAbsent","ProtoSignedTransaction","_signTransaction","request","response","nodeTransactionPrecheckCode","Status","_fromCode","ResponseCodeEnum","OK","Busy","Unknown","PlatformTransactionNotCreated","ExecutionState","Retry","Ok","Finished","TransactionExpired","status","PrecheckStatusError","_getTransactionId","transactionHash","advance","TransactionResponse","_nextNodeAccountIdIndex","body","_makeTransactionBody","ProtoTransactionBody","_getTransactionDataCase","_makeTransactionData","toTinybars","seconds","memo","transactionFee","signedTransactions","transactionIds","transactionIdStrings","nodeIdStrings","bodies","ProtoTransaction","transactionID","nodeAccountID","nodeAccountId","fromProtobuf","transactions","zero","splice","transactionValidDuration","pubKeyPrefix","Executable","superPropBase","_get","receiver","Reflect","desc","getOwnPropertyDescriptor","_nodeIds","setTransactionId","operatorAccountId","signWithOperator","_nextNodeIndex","signer","arrayEqual","_signTranscation","copyProps","SafeBuffer","TokenId","tokenNum","TokenID","amount","bigAmount","unit","HbarUnit","Tinybar","_valueInTinybar","valueToLong","BigNumber","isBigNumber","multipliedBy","_tinybar","isInteger","dividedBy","to","toFixed","negated","_symbol","isLessThan","isGreaterThan","pattern","test","symbol","cachedSetTimeout","cachedClearTimeout","process","defaultSetTimout","defaultClearTimeout","runTimeout","fun","setTimeout","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","timeout","run","marker","runClearTimeout","Item","noop","nextTick","title","browser","env","argv","version","versions","on","addListener","once","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","umask","$util","$protobuf","util","Reader","_configure","BufferReader","Writer","TokenUnitBalance","SingleAccountBalances","AllAccountBalances","ShardID","RealmID","FileID","ContractID","TransactionID","AccountAmount","TransferList","NftTransfer","TokenTransferList","Fraction","TopicID","ScheduleID","TokenType","SubType","TokenSupplyType","TokenFreezeStatus","TokenKycStatus","ThresholdKey","KeyList","Signature","ThresholdSignature","SignatureList","SignaturePair","HederaFunctionality","FeeComponents","TransactionFeeSchedule","FeeData","FeeSchedule","CurrentAndNextFeeSchedule","ServiceEndpoint","NodeAddress","NodeAddressBook","SemanticVersion","Setting","ServicesConfigurationList","TokenRelationship","TokenBalance","TokenBalances","TimestampSeconds","ConsensusCreateTopicTransactionBody","Duration","ConsensusDeleteTopicTransactionBody","ConsensusGetTopicInfoQuery","ConsensusGetTopicInfoResponse","ResponseType","QueryHeader","TransactionBody","SystemDeleteTransactionBody","SystemUndeleteTransactionBody","FreezeTransactionBody","ContractCallTransactionBody","ContractCreateTransactionBody","ContractUpdateTransactionBody","LiveHash","CryptoAddLiveHashTransactionBody","CryptoCreateTransactionBody","CryptoDeleteTransactionBody","CryptoDeleteLiveHashTransactionBody","CryptoTransferTransactionBody","CryptoUpdateTransactionBody","CryptoApproveAllowanceTransactionBody","CryptoAdjustAllowanceTransactionBody","FileAppendTransactionBody","FileCreateTransactionBody","FileDeleteTransactionBody","FileUpdateTransactionBody","ContractDeleteTransactionBody","ConsensusUpdateTopicTransactionBody","ConsensusMessageChunkInfo","ConsensusSubmitMessageTransactionBody","UncheckedSubmitBody","TokenCreateTransactionBody","FractionalFee","FixedFee","CustomFee","AssessedCustomFee","RoyaltyFee","TokenFreezeAccountTransactionBody","TokenUnfreezeAccountTransactionBody","TokenGrantKycTransactionBody","TokenRevokeKycTransactionBody","TokenDeleteTransactionBody","TokenUpdateTransactionBody","TokenMintTransactionBody","TokenBurnTransactionBody","TokenWipeAccountTransactionBody","TokenAssociateTransactionBody","TokenDissociateTransactionBody","TokenFeeScheduleUpdateTransactionBody","ScheduleCreateTransactionBody","SchedulableTransactionBody","ScheduleDeleteTransactionBody","ScheduleSignTransactionBody","ResponseHeader","ConsensusTopicInfo","ConsensusService","Query","GetByKeyQuery","EntityID","GetByKeyResponse","GetBySolidityIDQuery","GetBySolidityIDResponse","ContractLoginfo","ContractFunctionResult","ContractCallLocalQuery","ContractCallLocalResponse","ContractGetInfoQuery","ContractGetInfoResponse","ContractInfo","ContractGetBytecodeQuery","ContractGetBytecodeResponse","ContractGetRecordsQuery","ContractGetRecordsResponse","ContractStateChange","StorageChange","TransactionRecord","TransactionReceipt","ExchangeRate","ExchangeRateSet","CryptoGetAccountBalanceQuery","CryptoGetAccountBalanceResponse","CryptoGetAccountRecordsQuery","CryptoGetAccountRecordsResponse","CryptoGetInfoQuery","CryptoGetInfoResponse","AccountInfo","CryptoAllowance","TokenAllowance","NftAllowance","CryptoGetLiveHashQuery","CryptoGetLiveHashResponse","CryptoGetStakersQuery","ProxyStaker","AllProxyStakers","CryptoGetStakersResponse","FileGetContentsQuery","FileGetContentsResponse","FileContents","FileGetInfoQuery","FileGetInfoResponse","FileInfo","TransactionGetReceiptQuery","TransactionGetReceiptResponse","TransactionGetRecordQuery","TransactionGetRecordResponse","TransactionGetFastRecordQuery","TransactionGetFastRecordResponse","NetworkGetVersionInfoQuery","NetworkGetVersionInfoResponse","TokenGetInfoQuery","TokenInfo","TokenGetInfoResponse","ScheduleGetInfoQuery","ScheduleInfo","ScheduleGetInfoResponse","TokenGetAccountNftInfosQuery","TokenGetAccountNftInfosResponse","NftID","TokenGetNftInfoQuery","TokenNftInfo","TokenGetNftInfoResponse","TokenGetNftInfosQuery","TokenGetNftInfosResponse","Response","CryptoService","FileService","FreezeService","ConsensusTopicQuery","ConsensusTopicResponse","MirrorConsensusService","NetworkService","ScheduleService","SmartContractService","ThrottleGroup","ThrottleBucket","ThrottleDefinitions","TokenService","SignedTransaction","TransactionList","DoubleValue","FloatValue","UInt64Value","UInt32Value","BoolValue","StringValue","BytesValue","TokenPauseTransactionBody","TokenUnpauseTransactionBody","TokenPauseStatus","FreezeType","AddressBookQuery","MirrorNetworkService","Function","contractID","contractId","delegatableContractId","delegateContractId","ed25519","publicKeyED25519","ECDSASecp256k1","publicKeyECDSA","thresholdKey","threshold","keyList","JSON","stringify","MAX_NS","nanos","Date","jitter","random","now","date","ms","parse","getTime","timestamp","arrayWithoutHoles","iterableToArray","nonIterableSpread","QUERY_REGISTRY","_paymentTransactionId","_paymentTransactions","_queryPayment","_maxQueryPayment","ProtoQuery","_makeRequest","queryPayment","maxQueryPayment","COST_QUERY","execute","paymentTransactionId","_isPaymentRequired","cost","getCost","actualCost","MaxQueryPaymentExceeded","node","_makePaymentTransaction","header","responseType","ProtoResponseType","ANSWER_ONLY","payment","_onMakeRequest","_mapResponseHeader","query","paymentAmount","accountAmounts","accountID","cryptoTransfer","transfers","isNativeFunction","construct","_wrapNativeSuper","Class","_cache","Wrapper","ContractId","evmAddress","contractNum","__fromProtobufKey","FileId","fileNum","duration","utils","minAssert","minUtils","zero2","getNAF","naf","getJSF","k1","k2","jsf","m8","d1","d2","u1","u2","m14","m24","cachedProperty","computer","parseBytes","intFromLE","equal","startsWith","byte","byteToHex","padStart","validStart","scheduled","nonce","setNonce","transactionValidStart","wholeId","isScheduled","rest","StringDecoder","nb","enc","nenc","retried","_normalizeEncoding","normalizeEncoding","utf16Text","utf16End","fillLast","utf8FillLast","base64Text","base64End","simpleWrite","simpleEnd","lastNeed","lastTotal","lastChar","utf8CheckByte","utf8CheckExtraBytes","utf8CheckIncomplete","ObjectMap","_map","__map","_fromString","values","keys","errors","formatters","ReflectOwnKeys","R","ReflectApply","ownKeys","getOwnPropertySymbols","getOwnPropertyNames","NumberIsNaN","EventEmitter","init","emitter","errorListener","resolver","eventTargetAgnosticAddListener","handler","flags","addErrorHandlerIfEventEmitter","_events","_eventsCount","_maxListeners","defaultMaxListeners","checkListener","listener","_getMaxListeners","_addListener","prepend","events","existing","warning","newListener","unshift","warned","count","onceWrapper","fired","wrapFn","_onceWrap","state","wrapped","_listeners","unwrap","evlistener","unwrapListeners","arrayClone","listenerCount","addEventListener","wrapListener","removeEventListener","setMaxListeners","getMaxListeners","doError","er","context","position","originalListener","pop","spliceOne","rawListeners","eventNames","path","ReferenceError","isNativeReflectConstruct","_construct","Parent","isSurrogatePair","htonl","zero8","toHex32","join32","split32","rotr32","rotl32","sum32","sum32_3","sum32_4","sum32_5","sum64","ah","al","bh","sum64_hi","bl","sum64_lo","sum64_4_hi","ch","cl","dh","dl","sum64_4_lo","sum64_5_hi","eh","el","sum64_5_lo","rotr64_hi","rotr64_lo","shr64_hi","shr64_lo","LedgerId","ledgerId","_ledgerId","NETNAMES","MAINNET","TESTNET","PREVIEWNET","ledgerIdDecoded","ethjsUnit","soliditySha3","randombytes","_flattenTypes","includeTuple","puts","types","forEach","param","components","suffix","arrayBracket","hexToAscii","isHexStrict","asciiToHex","getUnitValue","HBarUnit","_fireError","callback","optionalData","catch","_jsonInterfaceMethodToString","json","inputs","randomHex","isHex","sha3","sha3Raw","keccak256","soliditySha3Raw","encodePacked","isAddress","checkAddressChecksum","toChecksumAddress","getChecksumAddress","toBN","bytesToHex","hexToBytes","hexToNumberString","hexToNumber","toDecimal","numberToHex","fromDecimal","hexToUtf8","hexToString","toUtf8","stripHexPrefix","utf8ToHex","stringToHex","fromUtf8","toAscii","fromAscii","unitMap","toTinybar","stringNumber","stringValue","fromTinybar","padLeft","leftPad","padRight","rightPad","toTwosComplement","isBloom","isUserEthereumAddressInBloom","isContractAddressInBloom","isTopic","isTopicInBloom","isInBloom","compareBlockNumbers","bnA","bnB","BadKeyError","messageOrCause","cause","stack","_key","verify","toBytesDer","toStringDer","toStringRaw","_type","cryptography","fromBytesED25519","fromBytesECDSA","isStrict","TextDecoder","TextEncoder","privateKeyConstructor","TopicId","topicNum","ProtoTopicID","crypto","msCrypto","getRandomValues","cb","generated","Transform","CipherBase","hashMode","_finalOrDigest","final","_final","__final","_decoder","_encoding","update","inputEnc","outputEnc","outData","_update","_toString","setAutoPadding","getAuthTag","setAuthTag","setAAD","_transform","_flush","fin","globalObject","isNumeric","mathceil","mathfloor","bignumberError","tooManyDigits","BASE","POWS_TEN","MAX","bitFloor","coeffToString","xc","yc","intCheck","toExponential","charAt","toFixedPoint","zs","configObject","convertBase","parseNumeric","random53bitInt","basePrefix","dotAfter","dotBefore","isInfinityOrNaN","whitespaceOrPlus","P","valueOf","DECIMAL_PLACES","ROUNDING_MODE","TO_EXP_NEG","TO_EXP_POS","MIN_EXP","MAX_EXP","CRYPTO","MODULO_MODE","POW_PRECISION","FORMAT","prefix","secondaryGroupSize","groupSeparator","decimalSeparator","fractionGroupSize","fractionGroupSeparator","ALPHABET","alphabetHasNormalDecimalDigits","v","alphabet","caseChanged","isNum","_isBigNumber","search","DEBUG","toUpperCase","format","rm","c0","maxOrMin","method","normalise","sd","ni","rd","pows10","ROUND_UP","ROUND_DOWN","ROUND_CEIL","ROUND_FLOOR","ROUND_HALF_UP","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_CEIL","ROUND_HALF_FLOOR","EUCLID","config","randomBytes","EXPONENTIAL_AT","RANGE","maximum","minimum","dp","rand","Uint32Array","sum","plus","toBaseOut","baseIn","baseOut","arrL","reverse","callerIsToString","temp","xlo","xhi","klo","khi","aL","bL","more","prod","prodL","qc","remL","rem0","xi","xL","yc0","yL","yz","NaN","p1","p2","absoluteValue","comparedTo","decimalPlaces","dividedToIntegerBy","idiv","exponentiatedBy","isModExp","nIsBig","nIsNeg","nIsOdd","times","integerValue","isEqualTo","isGreaterThanOrEqualTo","isLessThanOrEqualTo","minus","xLTy","xe","ye","xcL","ycL","ylo","yhi","zc","precision","shiftedBy","squareRoot","rep","toFormat","g1","g2","intPart","fractionPart","intDigits","toFraction","md","d0","exp","n0","n1","toPrecision","_keys","_threshold","deleteCount","items","arrayLike","mapFn","thisArg","__fromProtobufKeyList","setThreshold","__fromProtobufThresoldKey","_code","InvalidTransaction","PayerAccountNotFound","InvalidNodeAccount","InvalidTransactionStart","InvalidTransactionDuration","InvalidSignature","MemoTooLong","InsufficientTxFee","InsufficientPayerBalance","DuplicateTransaction","NotSupported","InvalidFileId","InvalidAccountId","InvalidContractId","InvalidTransactionId","ReceiptNotFound","RecordNotFound","InvalidSolidityId","Success","FailInvalid","FailFee","FailBalance","KeyRequired","BadEncoding","InsufficientAccountBalance","InvalidSolidityAddress","InsufficientGas","ContractSizeLimitExceeded","LocalCallModificationException","ContractRevertExecuted","ContractExecutionException","InvalidReceivingNodeAccount","MissingQueryHeader","AccountUpdateFailed","InvalidKeyEncoding","NullSolidityAddress","ContractUpdateFailed","InvalidQueryHeader","InvalidFeeSubmitted","InvalidPayerSignature","KeyNotProvided","InvalidExpirationTime","NoWaclKey","FileContentEmpty","InvalidAccountAmounts","EmptyTransactionBody","InvalidTransactionBody","InvalidSignatureTypeMismatchingKey","InvalidSignatureCountMismatchingKey","EmptyLiveHashBody","EmptyLiveHash","EmptyLiveHashKeys","InvalidLiveHashSize","EmptyQueryBody","EmptyLiveHashQuery","LiveHashNotFound","AccountIdDoesNotExist","LiveHashAlreadyExists","InvalidFileWacl","SerializationFailed","TransactionOversize","TransactionTooManyLayers","ContractDeleted","PlatformNotActive","KeyPrefixMismatch","InvalidRenewalPeriod","InvalidPayerAccountId","AccountDeleted","FileDeleted","AccountRepeatedInAccountAmounts","SettingNegativeAccountBalance","ObtainerRequired","ObtainerSameContractId","ObtainerDoesNotExist","ModifyingImmutableContract","FileSystemException","AutorenewDurationNotInRange","ErrorDecodingBytestring","ContractFileEmpty","ContractBytecodeEmpty","InvalidInitialBalance","InvalidReceiveRecordThreshold","InvalidSendRecordThreshold","AccountIsNotGenesisAccount","PayerAccountUnauthorized","InvalidFreezeTransactionBody","FreezeTransactionBodyNotFound","TransferListSizeLimitExceeded","ResultSizeLimitExceeded","NotSpecialAccount","ContractNegativeGas","ContractNegativeValue","InvalidFeeFile","InvalidExchangeRateFile","InsufficientLocalCallGas","EntityNotAllowedToDelete","AuthorizationFailed","FileUploadedProtoInvalid","FileUploadedProtoNotSavedToDisk","FeeScheduleFilePartUploaded","ExchangeRateChangeLimitExceeded","MaxContractStorageExceeded","TransferAccountSameAsDeleteAccount","TotalLedgerBalanceInvalid","ExpirationReductionNotAllowed","MaxGasLimitExceeded","MaxFileSizeExceeded","ReceiverSigRequired","InvalidTopicId","InvalidAdminKey","InvalidSubmitKey","Unauthorized","InvalidTopicMessage","InvalidAutorenewAccount","AutorenewAccountNotAllowed","TopicExpired","InvalidChunkNumber","InvalidChunkTransactionId","AccountFrozenForToken","TokensPerAccountLimitExceeded","InvalidTokenId","InvalidTokenDecimals","InvalidTokenInitialSupply","InvalidTreasuryAccountForToken","InvalidTokenSymbol","TokenHasNoFreezeKey","TransfersNotZeroSumForToken","MissingTokenSymbol","TokenSymbolTooLong","AccountKycNotGrantedForToken","TokenHasNoKycKey","InsufficientTokenBalance","TokenWasDeleted","TokenHasNoSupplyKey","TokenHasNoWipeKey","InvalidTokenMintAmount","InvalidTokenBurnAmount","TokenNotAssociatedToAccount","CannotWipeTokenTreasuryAccount","InvalidKycKey","InvalidWipeKey","InvalidFreezeKey","InvalidSupplyKey","MissingTokenName","TokenNameTooLong","InvalidWipingAmount","TokenIsImmutable","TokenAlreadyAssociatedToAccount","TransactionRequiresZeroTokenBalances","AccountIsTreasury","TokenIdRepeatedInTokenList","TokenTransferListSizeLimitExceeded","EmptyTokenTransferBody","EmptyTokenTransferAccountAmounts","InvalidScheduleId","ScheduleIsImmutable","InvalidSchedulePayerId","InvalidScheduleAccountId","NoNewValidSignatures","UnresolvableRequiredSigners","ScheduledTransactionNotInWhitelist","SomeSignaturesWereInvalid","TransactionIdFieldNotAllowed","IdenticalScheduleAlreadyCreated","InvalidZeroByteInString","ScheduleAlreadyDeleted","ScheduleAlreadyExecuted","MessageSizeTooLarge","OperationRepeatedInBucketGroups","BucketCapacityOverflow","NodeCapacityNotSufficientForOperation","BucketHasNoThrottleGroups","ThrottleGroupHasZeroOpsPerSec","SuccessButMissingExpectedOperation","UnparseableThrottleDefinitions","InvalidThrottleDefinitions","AccountExpiredAndPendingRemoval","InvalidTokenMaxSupply","InvalidTokenNftSerialNumber","InvalidNftId","MetadataTooLong","BatchSizeLimitExceeded","InvalidQueryRange","FractionDividesByZero","InsufficientPayerBalanceForCustomFee","CustomFeesListTooLong","InvalidCustomFeeCollector","InvalidTokenIdInCustomFees","TokenNotAssociatedToFeeCollector","TokenMaxSupplyReached","SenderDoesNotOwnNftSerialNo","CustomFeeNotFullySpecified","CustomFeeMustBePositive","TokenHasNoFeeScheduleKey","CustomFeeOutsideNumericRange","RoyaltyFractionCannotExceedOne","FractionalFeeMaxAmountLessThanMinAmount","CustomScheduleAlreadyHasNoFees","CustomFeeDenominationMustBeFungibleCommon","CustomFractionalFeeOnlyAllowedForFungibleCommon","InvalidCustomFeeScheduleKey","InvalidTokenMintMetadata","InvalidTokenBurnMetadata","CurrentTreasuryStillOwnsNfts","AccountStillOwnsNfts","TreasuryMustOwnBurnedNft","AccountDoesNotOwnWipedNft","AccountAmountTransfersOnlyAllowedForFungibleCommon","MaxNftsInPriceRegimeHaveBeenMinted","PayerAccountDeleted","CustomFeeChargingExceededMaxRecursionDepth","CustomFeeChargingExceededMaxAccountAmounts","InsufficientSenderAccountBalanceForCustomFee","SerialNumberLimitReached","CustomRoyaltyFeeOnlyAllowedForNonFungibleUnique","NoRemainingAutomaticAssociations","ExistingAutomaticAssociationsExceedGivenLimit","RequestedNumAutomaticAssociationsExceedsAssociationLimit","TokenIsPaused","TokenHasNoPauseKey","InvalidPauseKey","FreezeUpdateFileDoesNotExist","FreezeUpdateFileHashDoesNotMatch","NoUpgradeHasBeenPrepared","NoFreezeIsScheduled","UpdateFileHashChangedSincePrepareUpgrade","FreezeStartTimeMustBeFuture","PreparedUpdateFileIsImmutable","FreezeAlreadyScheduled","FreezeUpgradeInProgress","UpdateFileIdDoesNotMatchPrepared","UpdateFileHashDoesNotMatchPrepared","ConsensusGasExhausted","RevertedSuccess","MaxStorageInPriceRegimeHasBeenUsed","InvalidAliasKey","UnexpectedTokenDecimals","InvalidProxyAccountId","InvalidTransferAccountId","InvalidFeeCollectorAccountId","AliasIsImmutable","SpenderAccountSameAsOwner","AmountExceedsTokenMaxSupply","NegativeAllowanceAmount","CannotApproveForAllFungibleCommon","SpenderDoesNotHaveAllowance","AmountExceedsAllowance","MaxAllowancesExceeded","EmptyAllowances","SpenderAccountRepeatedInAllowances","RepeatedSerialNumsInNFTAllowances","FungibleTokenInNFTAllowances","NFTInFungibleTokenAllowances","PayerAndOwnerNotEqual","merge","ifNotSet","newError","CustomError","properties","captureStackTrace","asPromise","float","inquire","utf8","pool","LongBits","isNode","Boolean","emptyArray","emptyObject","isString","isObject","isset","isSet","prop","_Buffer_from","_Buffer_allocUnsafe","newBuffer","sizeOrArray","dcodeIO","key2Re","key32Re","key64Re","longToHash","toHash","zeroHash","longFromHash","hash","fromHash","lcFirst","ProtocolError","oneOfGetter","fieldNames","fieldMap","oneOfSetter","toJSONOptions","longs","enums","RST_STREAM","_maxAttempts","_minBackoff","_maxBackoff","_requestTimeout","_grpcDeadline","maxAttempts","maxRetries","setMaxAttempts","grpcDeadline","minBackoff","maxBackoff","channel","GrpcStatus","Unavailable","ResourceExhausted","Internal","requestTimeout","_beforeExecute","startTime","attempt","_getNodeAccountId","getNode","getChannel","_makeRequestAsync","_advanceRequest","isHealthy","wait","promises","_execute","race","GrpcServiceError","_fromResponse","_shouldRetryExceptionally","increaseDelay","decreaseDelay","_shouldRetry","delayForAttempt","_mapResponse","_mapStatusError","ScheduleId","scheduleNum","pna","objectKeys","Duplex","Readable","Writable","options","readable","allowHalfOpen","onend","_writableState","ended","onEndNT","highWaterMark","_readableState","destroyed","_destroy","extend","pkg","_provider","setProvider","_requestManager","Manager","givenProvider","providers","provider","net","setRequestManager","manager","BatchRequest","BatchManager","webpackPolyfill","deprecate","paths","children","elliptic","curve","curves","ec","eddsa","addr","ad","num1","num2","num3","givenChecksum","correctChecksum","noChecksumFormat","withChecksumFormat","realmOrNull","numOrNull","view","safeView","setUint32","convertToNumber","_toStringForChecksum","expectedChecksum","BadEntityIdError","ENTITY_ID_REGEX","answer","s0","s1","sh","p5","ascii_a","NftId","token","serial","tokenId","tokenID","serialNumber","strings","objectAssign","hasOwn","pSlice","functionsHaveNames","pToString","arrbuf","DataView","ok","getName","func","isFunction","truncate","something","rawname","fail","expected","stackStartFunction","AssertionError","_deepEqual","strict","memos","isDate","isRegExp","source","multiline","lastIndex","ignoreCase","Float32Array","Float64Array","actualIndex","actualVisitedObjects","isPrimitive","aIsArgs","isArguments","bIsArgs","ka","kb","sort","objEquiv","expectedException","isPrototypeOf","_throws","shouldThrow","block","_tryBlock","userProvidedMessage","isUnexpectedException","isError","generatedMessage","getMessage","fn_name","idx","next_line","notEqual","deepEqual","deepStrictEqual","notDeepEqual","notDeepStrictEqual","strictEqual","notStrictEqual","throws","doesNotThrow","ifError","codes","createErrorType","Base","NodeError","_Base","arg1","arg2","arg3","oneOf","thing","determiner","this_len","endsWith","getBuffer","MD5","RIPEMD160","sha","Hash","_hash","alg","blockSize","finalSize","_block","_finalSize","_blockSize","_len","accum","assigned","remainder","aliasKey_","shard_","realm_","num_","parts","component","array1","array2","view1","view2","getUint8","arrayPrefix","algorithm","secretKey","subtle","importKey","key_","Sha256","Sha384","Sha512","BlockHash","pending","pendingTotal","outSize","hmacStrength","padLength","_delta8","_delta32","_pad","_digest","StatusError","CustomFixedFee","_denominatingTokenId","denominatingTokenId","setDenominatingTokenId","_amount","setAmount","feeCollectorAccountId","fixedFee","fee","objectToString","isBoolean","isNull","isNullOrUndefined","isNumber","isSymbol","isUndefined","__awaiter","_arguments","generator","fulfilled","step","rejected","promiEvent","Subscriptions","subscriptions","EthersTransactionUtils","Method","params","inputFormatter","outputFormatter","transformPayload","extraFormatters","abiCoder","requestManager","accounts","defaultBlock","defaultAccount","transactionBlockTimeout","transactionConfirmationBlocks","transactionPollingTimeout","transactionPollingInterval","blockHeaderTimeout","defaultCommon","defaultChain","defaultHardfork","handleRevert","createFunction","buildCall","attachToObject","getCall","extractCallback","validateArgs","InvalidNumberOfParams","formatInput","_this","formatter","formatOutput","toPayload","payload","_confirmTransaction","defer","promiseResolved","canUnsubscribe","timeoutCount","confirmationCount","intervalId","blockHeaderTimeoutId","lastBlock","gasProvided","gas","isContractDeployment","hasBytecode","_ethereumCalls","inputBlockNumberFormatter","outputBlockFormatter","outputTransactionReceiptFormatter","inputAddressFormatter","inputDefaultBlockNumberFormatter","outputTransactionFormatter","subscriptionName","_ethereumCall","mthd","checkConfirmation","existingReceipt","isPolling","blockHeader","unsubscribe","clearInterval","getTransactionReceipt","eventEmitter","receipt","blockHash","receiptFormatter","getBlockByNumber","latestBlock","latestBlockHash","blockNumber","contractAddress","NoContractAddressFoundError","getCode","contractDeployFormatter","ContractCodeNotStoredError","outOfGas","gasUsed","revertMessage","txReplayOptions","rawTransactionHex","parsedTx","inputTransactionFormatter","gasLimit","toHexString","gasPrice","getRevertReason","TransactionRevertInstructionError","reason","TransactionRevertedWithoutReasonError","TransactionOutOfGasError","TransactionError","startWatching","blockHeaderArrived","startInterval","setInterval","subscribe","getWallet","wallet","_handleTxPricing","tx","getGasPrice","all","responses","baseFeePerGas","maxPriorityFeePerGas","maxFeePerGas","isSendTx","isCall","send","sendTxCallback","reasonData","isRevertReasonString","decodeParameter","RevertInstructionError","sendSignedTx","signedPayload","assign","rawTransaction","sendRequest","chain","hardfork","common","signTransaction","txPricing","txOptions","Reporter","DecoderBuffer","EncoderBuffer","reporter","item","isEncoderBuffer","isDecoderBuffer","save","restore","skip","raw","_reporterState","variable","convertToBigNumber","requireNonNull","isStringOrUint8Array","isType","isUint8Array","isNonNull","nacl","gf","_0","_9","gf0","gf1","_121665","D2","X","Y","I","ts64","vn","yi","crypto_verify_16","crypto_verify_32","crypto_core_salsa20","inp","j0","j1","j2","j3","j4","j5","j6","j7","j8","j9","j10","j11","j12","j13","j14","j15","x0","x3","x4","x5","x6","x7","x8","x9","x10","x11","x12","x13","x14","x15","core_salsa20","crypto_core_hsalsa20","core_hsalsa20","sigma","crypto_stream_salsa20_xor","cpos","mpos","crypto_stream_salsa20","crypto_stream","sn","crypto_stream_xor","poly1305","t0","t1","t2","t3","t4","t5","t6","t7","Uint16Array","pad","leftover","crypto_onetimeauth","outpos","crypto_onetimeauth_verify","hpos","crypto_secretbox","crypto_secretbox_open","set25519","car25519","sel25519","pack25519","neq25519","par25519","unpack25519","Z","M","t8","t9","t10","t11","t12","t13","t14","t15","t16","t17","t18","t19","t20","t21","t22","t23","t24","t25","t26","t27","t28","t29","t30","b10","b11","b12","b13","b14","b15","S","inv25519","pow2523","crypto_scalarmult","f","x32","x16","crypto_scalarmult_base","crypto_box_keypair","crypto_box_beforenm","blocks","d3","d4","d5","d6","d7","d8","d9","hibit","h0","h1","h2","h3","h4","h5","h6","h7","h8","h9","r0","r1","r3","r4","r5","r6","r7","r8","r9","mac","macpos","want","crypto_box_afternm","crypto_box_open_afternm","K","crypto_hashblocks_hl","hh","hl","th","tl","wh","Int32Array","wl","crypto_hash","cswap","pack","ty","zi","scalarmult","scalarbase","crypto_sign_keypair","pk","sk","seeded","L","modL","reduce","crypto_sign","sm","smlen","crypto_sign_open","chk","den","den2","den4","den6","unpackneg","checkLengths","checkArrayTypes","cleanup","lowlevel","crypto_box","crypto_box_open","crypto_secretbox_KEYBYTES","crypto_secretbox_NONCEBYTES","crypto_secretbox_ZEROBYTES","crypto_secretbox_BOXZEROBYTES","crypto_scalarmult_BYTES","crypto_scalarmult_SCALARBYTES","crypto_box_PUBLICKEYBYTES","crypto_box_SECRETKEYBYTES","crypto_box_BEFORENMBYTES","crypto_box_NONCEBYTES","crypto_box_ZEROBYTES","crypto_box_BOXZEROBYTES","crypto_sign_BYTES","crypto_sign_PUBLICKEYBYTES","crypto_sign_SECRETKEYBYTES","crypto_sign_SEEDBYTES","crypto_hash_BYTES","secretbox","open","box","keyLength","nonceLength","overheadLength","scalarMult","scalarLength","groupElementLength","before","checkBoxLengths","after","keyPair","fromSecretKey","publicKeyLength","secretKeyLength","sharedKeyLength","signedMsg","mlen","detached","sig","fromSeed","seed","seedLength","signatureLength","hashLength","setPRNG","password","salt","iterations","pass","deriveBits","BaseCurve","conf","two","pointFromJSON","gRed","_wnafT1","_wnafT2","_wnafT3","_wnafT4","_bitLength","adjustCount","redN","_maxwellTrick","BasePoint","precomputed","point","validate","_fixedNafMul","doubles","_getDoubles","nafW","repr","jpoint","mixedAdd","points","toP","_wnafMul","nafPoints","_getNAFPoints","dblp","_wnafMulAdd","defW","coeffs","jacobianResult","wndWidth","comb","toJ","ja","jb","decodePoint","pointFromX","encodeCompressed","_encode","compact","getX","getY","precompute","beta","_getBeta","_hasDoubles","dbl","ripemd","hmac","sha1","sha256","sha224","sha512","ripemd160","ReceiptStatusError","transactionReceipt","fileId","topicId","scheduleId","exchangeRate","topicSequenceNumber","topicRunningHash","totalSupply","scheduledTransactionId","serials","duplicates","duplicateTransactionReceipts","childTransactionReceipts","fileID","topicID","scheduleID","nextRate","currentRate","scheduledTransactionID","serialNumbers","newTotalSupply","exchangeRateSet","child","duplicate","HbarAllowance","spenderAccountId","ownerAccountId","spender","owner","approval","allowance","TokenNftAllowance","approvedForAll","ContractFunctionParameters","_selector","ContractFunctionSelector","addString","_addParam","addStringArray","addBytes","addBytes32","addBytesArray","entries","entry","addBytes32Array","addBool","addInt8","addInt32","addInt64","addInt256","addInt8Array","convertToBigNumberArray","addInt32Array","addInt64Array","addInt256Array","addUint8","addUint32","addUint64","addUint256","addUint8Array","addUint32Array","addUint64Array","addUint256Array","par","addAddress","addAddressArray","selector","addressParam","functionSelector","_build","addFunction","dynamic","_paramTypes","argumentToBytes","valueView","totalLengthOfValues","ArgumentType","uint8","int8","uint16","int16","uint32","int32","uint64","int64","uint256","int256","bool","bytes32","getUint32","numberToBytes","setUint8","setInt8","setUint16","setInt16","setInt32","includeId","nameOffset","byteoffset","_feeCollectorAccountId","setFeeCollectorAccountId","CustomFractionalFee","_numerator","numerator","setNumerator","_denominator","denominator","setDenominator","_min","setMin","_max","setMax","_assessmentMethod","assessmentMethod","setAssessmentMethod","fractionalFee","fractionalAmount","minimumAmount","maximumAmount","fractional","CustomRoyalyFee","_fallbackFee","fallbackFee","setFallbackFee","royaltyFee","exchangeValueFraction","fraction","localStorage","trace","asUInt32Array","scrubVec","cryptBlock","keySchedule","SUB_MIX","SBOX","nRounds","SUB_MIX0","SUB_MIX1","SUB_MIX2","SUB_MIX3","s2","s3","ksRow","RCON","G","INV_SBOX","INV_SUB_MIX","sx","AES","_reset","keySize","keyWords","ksRows","invKeySchedule","ik","ksR","tt","_nRounds","_keySchedule","_invKeySchedule","encryptBlockRaw","encryptBlock","decryptBlock","m1","scrub","keyBits","ivLen","keyLen","iv","used","keyStart","ivStart","asn1","aesid","fixProc","ciphers","compat","parseKeys","passphrase","subtype","ndata","stripped","tag","certificate","tbsCertificate","subjectPublicKeyInfo","RSAPublicKey","subjectPublicKey","subjectPrivateKey","pub_key","DSAparam","decrypt","kde","kdeparams","iters","algo","cipher","cipherText","keylen","pbkdf2Sync","createDecipheriv","EncryptedPrivateKey","PrivateKey","RSAPrivateKey","ECPrivateKey","priv_key","DSAPrivateKey","parameters","_setPrototypeOf","derPrefix","derPrefixBytes","Ed25519PrivateKey","chainCode","_keyPair","_chainCode","Ed25519PublicKey","entropy","bytesAsync","fromBytesDer","fromBytesRaw","arrayStartsWith","BadLength","UnknownWords","ChecksumMismatch","Rand","_rand","getBytes","getByte","pre","PresetCurve","short","edwards","isInfinity","defineCurve","lambda","basis","consensusTimestamp","contractFunctionResult","tokenTransfers","tokenTransfersList","scheduleRef","assessedCustomFees","nftTransfers","automaticTokenAssociations","parentConsensusTimestamp","tokenTransferLists","tokenTransfer","nftTransfer","duplicateTransactionRecords","record","childTransactionRecords","transactionRecord","transferList","transfer","association","contractCallResult","contractCreateResult","Transfer","TokenTransferMap","TokenTransfer","TokenNftTransferMap","TokenAssocation","isApproved","isApproval","errorMessage","bloom","logs","createdContractIds","stateChanges","getInt32","_getBytes32","logInfo","ContractLogInfo","createdContractIDs","change","liveHash","liveHash_","FungibleCommon","NonFungibleUnique","Infinite","Finite","ERR_STREAM_PREMATURE_CLOSE","eos","stream","opts","called","onlegacyfinish","onfinish","writableEnded","finished","readableEnded","endEmitted","onerror","onclose","onrequest","req","setHeader","abort","isRequest","HashBase","ARRAY16","_a","_b","_c","_d","rotl","fnF","fnG","fnH","fnI","_blockOffset","_length","zl","zr","sl","sr","hr","_e","fn1","fn2","fn3","fn4","fn5","ar","br","cr","dr","tr","Algorithm","Stream","PassThrough","CorkedRequest","corkReq","pendingcb","corkedRequestsFree","onCorkedFinish","asyncWrite","setImmediate","WritableState","internalUtil","OurUint8Array","realHasInstance","destroyImpl","nop","isDuplex","objectMode","writableObjectMode","hwm","writableHwm","writableHighWaterMark","defaultHwm","finalCalled","needDrain","ending","noDecode","decodeStrings","defaultEncoding","writing","corked","sync","bufferProcessing","onwrite","writecb","writelen","onwriteStateUpdate","finishMaybe","errorEmitted","onwriteError","needFinish","bufferedRequest","clearBuffer","afterWrite","lastBufferedRequest","prefinished","bufferedRequestCount","_write","writev","_writev","destroy","doWrite","chunk","onwriteDrain","holder","allBuffers","isBuf","callFinal","need","prefinish","hasInstance","pipe","_uint8ArrayToBuffer","writeAfterEnd","valid","validChunk","newChunk","decodeChunk","last","writeOrBuffer","cork","uncork","setDefaultEncoding","endWritable","_undestroy","undestroy","Subscription","subscription","rng","pseudoRandomBytes","prng","createHash","createHmac","Hmac","algos","algoKeys","hashes","getHashes","pbkdf2","aes","Cipher","createCipher","Cipheriv","createCipheriv","Decipher","createDecipher","Decipheriv","getCiphers","listCiphers","DiffieHellmanGroup","createDiffieHellmanGroup","getDiffieHellman","createDiffieHellman","DiffieHellman","createSign","Sign","createVerify","Verify","createECDH","publicEncrypt","privateEncrypt","publicDecrypt","privateDecrypt","rf","randomFill","randomFillSync","createCredentials","constants","bufferOff","_updateDecrypt","_updateEncrypt","_buffer","_flushBuffer","inputOff","outputOff","first","_finalEncrypt","_finalDecrypt","_unpad","deciphers","modes","modeModules","ECB","CBC","CFB","CFB8","CFB1","OFB","CTR","GCM","getr","priv","modulus","prime1","prime2","crt","blinds","blinder","publicExponent","unblinder","blind","blinded","c1","c2","qinv","coefficient","exponent1","m2","exponent2","safer","Safer","kStringMaxLength","MAX_LENGTH","MAX_STRING_LENGTH","tags","methods","Node","parent","_baseState","reverseArgs","choice","optional","any","use","useDecoder","explicit","implicit","contains","_wrap","stateProps","cstate","filter","_useArgs","def","newKey","_decode","wrapResult","prevObj","present","prevKey","enterKey","_peekTag","_decodeGeneric","_decodeChoice","enterObject","_decodeTag","track","_getUse","leaveObject","exitKey","leaveKey","_decodeList","_decodeStr","_decodeObjid","_decodeTime","_decodeNull","_decodeBool","_decodeInt","entity","_use","some","_createEncoderBuffer","_encodeValue","_skipDefault","content","primitive","_encodeChoice","_encodePrimitive","cls","_encodeComposite","_encodeStr","_encodeObjid","_encodeTime","_encodeNull","_encodeInt","_encodeBool","_isNumstr","_isPrintstr","ReporterError","rethrow","pathLen","inherited","elem","partial","tagClass","0","1","2","3","tagClassByName","tagByName","pipeline","aa","UnicodeNormalizationForm","Utf8ErrorReason","slip10","derive","keyData","legacy","keyBytes","siganture","protoSignature","createKeystore","EcdsaPrivateKey","generateED25519","generateED25519Async","generateAsync","mnemonic","Mnemonic","toPrivateKey","loadKeystore","pem","_isLegacy","toLegacyPrivateKey","_toPrivateKey","BadMnemonicError","BadMnemonicReason","unknownWordIndices","unknowns","legacyWords","legacy1","newChecksum","crc8","bip39Words","dividerIndex","entropyBits","checksumBits","entropyBitsRegex","entropyBytes","binaryToByte","deriveChecksumBits","deriveKey","HashAlgorithm","legacy2","_generate","neededEntropy","bytesToBinary","chunks","binary","_validate","fromWords","bin","entropyBuffer","ENT","CS","arrayLikeToArray","minLen","arr2","_keyData","reasonMessage","parentKey","EcdsaPublicKey","ecdsa","keypair","secp256k1","keyFromPrivate","getPrivate","getPublic","keydata","keyFromPublic","genKeyPair","ch32","maj32","p32","ft_1","s0_256","s1_256","g0_256","g1_256","shaCommon","sha256_K","SHA256","W","T1","T2","sha512_K","SHA512","ch64_hi","xh","xl","yh","yl","zh","ch64_lo","maj64_hi","maj64_lo","s0_512_hi","s0_512_lo","s1_512_hi","s1_512_lo","g0_512_hi","g0_512_lo","g1_512_hi","g1_512_lo","_prepareBlock","c0_hi","c0_lo","c1_hi","c1_lo","c2_hi","c2_lo","c3_hi","c3_lo","fh","fl","gh","gl","c4_hi","c4_lo","T1_hi","T1_lo","T2_hi","T2_lo","CipherAlgorithm","Aes128Ctr","Aes128Cbc","algorithm_","counter","encrypt","decodeIncremental","lenBytes","numBytes","intBytes","decodeInt","decodeLength","tail","int","ident","decodeObjectIdent","seq","decodeSeq","seqBytes","decoded","idBytes","getUint16","of","legacyDerive","addSignature","isDerivable","toKeystore","toAccountId","generateECDSA","generateECDSAAsync","fromStringECDSA","fromStringED25519","fromMnemonic","_mnemonic","fromKeystore","fromPem","tinybar","_name","Microbar","Millibar","Kilobar","Megabar","Gigabar","TransactionReceiptQuery","setNodeAccountIds","getReceipt","TransactionRecordQuery","_transactionId","_includeChildren","_includeDuplicates","includeChildren","setIncludeChildren","includeDuplicates","setIncludeDuplicates","receiptStatusCode","transactionGetReceipt","getTransactionReceipts","includeChildReceipts","BufferWriter","Op","State","writer","head","states","writeByte","VarintOp","writeVarint64","writeFixed32","_push","sint32","sint64","zzEncode","fixed32","sfixed32","fixed64","sfixed64","double","writeBytes","fork","reset","ldelim","BufferWriter_","indexOutOfRange","reader","writeLength","create_array","readLongVarint","readFixed32_end","readFixed64","_slice","skipType","wireType","BufferReader_","zzDecode","Cancelled","InvalidArgument","DeadlineExceeded","NotFound","AlreadyExists","PermissionDenied","Unauthenticated","FailedPrecondition","Aborted","OutOfRange","Unimplemented","DataLoss","hbars","cents","expirationTime","hbarEquiv","centEquiv","getSeconds","rate","_duplicates","transactionGetRecord","COST_ANSWER","receiptStatusError","getTxRecordByTxID","includeChildRecords","topics","topic","TokenTransferAccountMap","_set","tokenTransferList","tokenTransfersMap","__set","senderAccountID","sender","receiverAccountID","recipient","_tokenId","setTokenId","_payerAccountIds","payerAccountIds","setPayerAccountIds","effectivePayerAccountId","expectedDecimals","AccountBalance","tokens","tokenDecimals","balance","decimals","tokenBalances","accountBalance","TokenBalanceMap","TokenDecimalMap","AccountBalanceQuery","_accountId","_contractId","setAccountId","setContractId","cryptoGetBalance","cryptogetAccountBalance","contractAccountId","isDeleted","proxyAccountId","proxyReceived","sendRecordThreshold","receiveRecordThreshold","isReceiverSignatureRequired","autoRenewPeriod","liveHashes","tokenRelationships","accountMemo","ownedNfts","maxAutomaticTokenAssociations","hbarAllowances","tokenAllowances","nftAllowances","contractAccountID","deleted","proxyAccountID","generateSendRecordThreshold","generateReceiveRecordThreshold","receiverSigRequired","TokenRelationshipMap","cryptoAllowances","relationship","relationships","_publicKey","setPublicKey","_nodeId","setNodeId","_certHash","certHash","setCertHash","_addresses","addresses","setAddresses","_description","description","setDescription","_stake","stake","setStake","RSA_PubKey","nodeCertHash","serviceEndpoint","nodeAddress","Endpoint","_nodeAddresses","nodeAddresses","setNodeAddresses","nodeAddressBook","_params","solidityTypeToString","adminKey","storage","contractMemo","fileMemo","NetworkVersionInfo","protobufVersion","servicesVesion","hapiProtoVersion","hederaServicesVersion","major","minor","patch","creatorAccountId","creatorAccountID","payerAccountId","payerAccountID","schedulableTransactionBody","signers","scheduleMemo","executed","scheduledTransactionBody","ProtoSchedulableTransactionBody","executionTime","deletionTime","treasuryAccountId","kycKey","freezeKey","pauseKey","wipeKey","supplyKey","feeScheduleKey","defaultFreezeStatus","defaultKycStatus","pauseStatus","autoRenewAccountId","tokenMemo","customFees","tokenType","supplyType","maxSupply","treasury","autoRenewAccount","expiry","CustomRoyaltyFee","nftId","creationTime","metadata","nftID","toJson","TopicInfo","topicMemo","runningHash","sequenceNumber","submitKey","topicInfo","infoResponse","TopicMessage","contents","TopicMessageChunk","chunkInfo","ManagedNode","newNode","_address","ManagedNodeAddress","_cert","_channel","_channelInitFunction","channelInitFunction","_currentBackoff","_lastUsed","_backoffUntil","_useCount","_attempts","cloneNode","__lastUsed","close","MangedNetwork","createNetworkChannel","_nodes","_createNetworkChannel","_maxNodeAttempts","_transportSecurity","transportSecurity","toSecure","setCert","toInsecure","nodes","getKey","networkName","setLedgerId","network","_closeNode","_removeDeadNodes","_removeNodeFromNetwork","delete","_getNodesToRemove","_createNodeFromNetworkEntry","shuffle","maxNodeAttempts","setMinBackoff","temporaryValue","randomIndex","currentIndex","formattedString","isHexPrefixed","stringArg","numberToBN","ethereumjsUtil","ethereumBloomFilters","returnType","SHA3_NULL_S","returnValue","bufferToHex","_Hash","ethereumAddress","chars","hasPrefix","Account","helpers_1","assertIsBuffer","ReadableState","EElistenerCount","debug","debugUtil","debuglog","createReadableStreamAsyncIterator","BufferList","getHighWaterMark","_require$codes","ERR_INVALID_ARG_TYPE","ERR_STREAM_PUSH_AFTER_EOF","ERR_METHOD_NOT_IMPLEMENTED","ERR_STREAM_UNSHIFT_AFTER_END_EVENT","errorOrDestroy","kProxyEvents","readableObjectMode","pipes","pipesCount","flowing","reading","needReadable","emittedReadable","readableListening","resumeScheduled","paused","emitClose","autoDestroy","awaitDrain","readingMore","decoder","_read","readableAddChunk","addToFront","skipChunkCheck","emitReadable","emitReadable_","onEofChunk","chunkInvalid","addChunk","maybeReadMore","isPaused","setEncoding","howMuchToRead","computeNewHighWaterMark","flow","maybeReadMore_","updateReadableListening","resume","nReadingNextTick","resume_","fromList","consume","endReadable","endReadableNT","wState","xs","nOrig","doRead","pipeOpts","endFn","stdout","stderr","unpipe","onunpipe","unpipeInfo","hasUnpiped","ondrain","ondata","cleanedUp","pipeOnDrain","pause","event","dests","ev","wrap","asyncIterator","_fromList","iterable","emitErrorAndCloseNT","emitErrorNT","emitCloseNT","readableDestroyed","writableDestroyed","rState","ERR_INVALID_OPT_VALUE","duplexKey","highWaterMarkFrom","ERR_MULTIPLE_CALLBACK","ERR_STREAM_CANNOT_PIPE","ERR_STREAM_DESTROYED","ERR_STREAM_NULL_VALUES","ERR_STREAM_WRITE_AFTER_END","ERR_UNKNOWN_ENCODING","ERR_TRANSFORM_ALREADY_TRANSFORMING","ERR_TRANSFORM_WITH_LENGTH_0","afterTransform","ts","_transformState","transforming","writechunk","rs","needTransform","writeencoding","flush","err2","_finalized","throwIfNotStringOrBuffer","_w","maj","sigma0","sigma1","gamma0","_f","_g","_h","H","Ch","Gamma0","Gamma0l","Gamma1","Gamma1l","getCarry","_ah","_bh","_ch","_dh","_eh","_fh","_gh","_hh","_al","_bl","_cl","_dl","_el","_fl","_gl","_hl","gamma0l","gamma1","gamma1l","Wi7h","Wi7l","Wi16h","Wi16l","Wil","Wih","majh","majl","sigma0h","sigma0l","sigma1h","sigma1l","Kih","Kil","chh","chl","t1l","t1h","t2l","t2h","writeInt64BE","EE","_isStdio","didOnEnd","readableHwm","readableHighWaterMark","needMoreData","hasStrings","copyFromBufferString","copyFromBuffer","fromListPartial","increasedAwaitDrain","scope","Timeout","clearFn","_id","_clearFn","unref","ref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","active","_onTimeout","clearImmediate","_this2","__webpack_amd_options__","PromiEvent","justPromise","promise","Events","evt","clearEvent","names","handlers","ee","prefixed","toBigNumber","throwFault","Net","Personal","packageInit","inputSignFormatter","addProviders","core","at","fromArray","rnd","flatten","bs","rev","ascii","makeByte","ci","fromNat","bn","toNat","fromUint8Array","toUint8Array","Legacy","md5","ZEROS","blocksize","_alg","ipad","_ipad","opad","_opad","MAX_ALLOC","checkParameters","sizes","rmd160","saltLen","shaFunc","getDigest","ipad1","ipad2","DK","block1","destPos","hLen","T","U","ip","inL","inR","outL","outR","rip","pc1","r28shl","pc2table","pc2","expand","sTable","substitute","permuteTable","padSplit","group","DESState","DES","_desState","deriveKeys","shiftTable","kL","kR","inOff","outOff","_encrypt","_decrypt","lStart","rStart","keyL","keyR","incr32","getBlock","_cipher","_prev","chunkNum","GHASH","StreamCipher","ck","_ghash","_finID","ghash","toPad","ivBits","calcIv","_secCache","_alen","_mode","_authTag","_called","rump","xorTest","findPrime","simpleSieve","fermatTest","TWENTYFOUR","millerRabin","TWO","FIVE","TEN","THREE","ELEVEN","FOUR","_getPrimes","n2","brorand","MillerRabin","_randbelow","min_bytes","_randrange","stop","rone","rn1","getDivisor","bignum","decoders","encoders","der","DEREncoder","tree","DERNode","encodedTag","encodeTag","lenOctets","unused","relative","objid","time","getUTCFullYear","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","numArray","_getEncoder","dataBuffer","defaultBuffer","DERDecoder","derDecodeTag","oct","tagStr","derDecodeLen","decodedTag","_skipUntilEnd","possibleEnd","numstr","printstr","identifiers","subident","second","year","mon","day","hour","sec","UTC","_getDecoder","i2ops","paddedMsg","rnds8","rnds","bth","buffer_1","privateKeyFromBytes","coder","Web3","eth","Eth","shh","bzz","helpers","BaseContract","getNetworkType","personal","Contract","currentProvider","ens","_detectedAddress","_lastSyncCheck","maxListenersWarningThreshold","clearSubscriptions","removeSubscriptionById","removeSubscription","Accounts","_ethAccounts","RequestManager","HttpProvider","connected","InvalidProvider","repsponse","txResponse","waitForReceipt","sendBatch","txs","addSubscription","keepIsSyncing","_isCleanCloseEvent","wasClean","_isIpcCloseError","runtime","$Symbol","iteratorSymbol","asyncIteratorSymbol","toStringTagSymbol","innerFn","outerFn","tryLocsList","protoGenerator","Generator","Context","_invoke","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","sent","_sent","dispatchException","abrupt","tryCatch","makeInvokeMethod","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","NativeIteratorPrototype","Gp","defineIteratorMethods","AsyncIterator","PromiseImpl","previousPromise","callInvokeWithMethodAndArg","invoke","__await","unwrapped","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","iteratorMethod","displayName","isGeneratorFunction","genFun","mark","awrap","async","iter","skipTempReset","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","thrown","delegateYield","regeneratorRuntime","accidentalStrictMode","globalThis","hedera","hweb3","sendAsync","disconnect","getLedgerId","getNetwork","getMirrorNetwork","mirrorNetwork","getAccountBalance","getAccountInfo","AccountInfoQuery","Client","forTestnet","forPreviewnet","forMainnet","setOperator","Mainnet","Testnet","Previewnet","_i","_s","_n","sham","Proxy","crc","wordlist","convertRadix","concatBitsLen","concatBits","wordIndex","entropyBitsLen","checksumBitsLen","hashBits","bytesToBits","nums","fromRadix","toRadix","toLength","element","tem","HEX_CHARS","KECCAK_PADDING","SHIFT","RC","c3","c4","c5","c6","c7","c8","c9","b17","b18","b19","b20","b21","b22","b23","b24","b25","b26","b27","b28","b29","b30","b31","b33","b34","b35","b36","b37","b38","b39","b40","b41","b42","b43","b44","b45","b46","b47","b49","byteCount","blockCount","outputBlocks","lastByteIndex","Keccak","ShortCurve","tinv","zeroA","threeA","endo","_getEndomorphism","_endoWnafT1","_endoWnafT2","Point","isRed","inf","JPoint","zOne","betas","_getEndoRoots","lambdas","vec","_getEndoBasis","ntinv","prevR","aprxSqrt","y1","y2","len1","_endoSplit","v1","v2","q1","q2","ax","rhs","_endoWnafMulAdd","npoints","ncoeffs","fromJSON","endoMul","obj2point","nx","ny","ys1","dyinv","mulAdd","jmulAdd","_precompute","zinv","zinv2","ay","pz2","z2","nz","jx","jy","jz","jz4","jyd","jx2","jyd2","jyd4","dny","_zeroDbl","_threeDbl","_dbl","xx","yy","yyyy","yyyy8","gamma","alpha","beta4","beta8","ggamma8","jy2","jxd4","jyd8","trpl","zz","mm","yyu4","kbase","z3","pz3","eqXToP","MontCurve","i4","a24","normalize","bb","diffAdd","da","jumlAdd","EdwardsCurve","twisted","mOneA","dd","oneC","_mulA","_mulC","lhs","pointFromY","_extDbl","nt","_projDbl","_extAdd","_projAdd","sha1_K","SHA1","SHA224","SHA384","Kh","E","Ah","Bh","Dh","Eh","rh","inner","outer","HmacDRBG","KeyPair","EC","nh","fromPrivate","pub","fromPublic","drbg","pers","persEnc","entropyEnc","ns2","_truncateToN","truncOnly","bkey","ns1","kp","kpX","recoveryParam","canonical","sinv","recoverPubKey","isYOdd","isSecondKey","rInv","getKeyRecoveryParam","Q","Qprime","predResist","minEntropy","_reseed","reseedInterval","V","nonceEnc","_hmac","kmac","reseed","addEnc","_importPrivate","privEnc","_importPublic","pubEnc","_importDER","Position","place","getLength","initial","octetLen","rmPadding","constructLength","octets","slen","toDER","backHalf","EDDSA","pointClass","encodingLength","secret","keyFromSecret","hashInt","messagePrefix","Rencoded","encodePoint","s_","pubBytes","makeSignature","SG","fromSecret","lastIx","normed","xIsOdd","encodeInt","isPoint","_secret","_pub","_pubBytes","privBytes","getSecret","_R","_S","_Rencoded","_Sencoded","Sencoded","dkLen","keystore","ciphertext","cipherparams","kdf","kdfparams","prf","keystoreBytes","saltBytes","ivBytes","cipherBytes","macHex","verifyHmac","every","beginTag","endTag","beginIndex","endIndex","keyEncoded","encrypted","EncryptedPrivateKeyInfo","decrypted","algId","algIdent","AlgorithmIdentifier","asn","PBES2Params","encScheme","PBKDF2Params","iterCount","PrivateKeyInfo","encoded","pbes2Params","pbkdf2Params","atob","btoa","AccountAllowanceAdjustTransaction","_hbarAllowances","_tokenAllowances","_nftAllowances","adjust","adjustAllowance","allowanceAdjust","cryptoAdjustAllowance","_fromProtobufTransactions","BadEntityIdException","presentChecksum","protobuf","configure","build","rpc","roots","b64","s64","f32","f8b","writeFloat_f32_cpy","writeFloat_f32_rev","readFloat_f32_cpy","readFloat_f32_rev","writeFloat_ieee754","writeUint","exponent","readFloat_ieee754","readUint","uint","mantissa","writeUintLE","writeUintBE","readUintLE","readUintBE","f64","writeDouble_f64_cpy","writeDouble_f64_rev","readDouble_f64_cpy","readDouble_f64_rev","writeDouble_ieee754","off0","off1","readDouble_ieee754","moduleName","eval","SIZE","slab","toLong","part0","part1","part2","writeStringBuffer","writeBytesBuffer","Service","rpcImpl","requestDelimited","responseDelimited","rpcCall","requestCtor","responseCtor","endedByRPC","$Reader","$Writer","$root","hashgraph","valuesById","ks","tokenUnitBalances","hbarBalance","allAccounts","$oneOfFields","google","RSA_3072","ECDSA_384","contract","thresholdSignature","signatureList","sigs","constant","bpt","vpt","rbh","sbh","tv","bpr","sbpr","fees","hederaFunctionality","feeData","nodedata","networkdata","servicedata","subType","transactionFeeSchedule","expiryTime","currentFeeSchedule","nextFeeSchedule","ipAddressV4","port","ipAddress","portno","nameValue","kycStatus","freezeStatus","automaticAssociation","TokenAssociation","generateRecord","contractCall","contractCreateInstance","contractUpdateInstance","contractDeleteInstance","cryptoAddLiveHash","cryptoApproveAllowance","cryptoCreateAccount","cryptoDelete","cryptoDeleteLiveHash","cryptoUpdateAccount","fileAppend","fileCreate","fileDelete","fileUpdate","systemDelete","systemUndelete","consensusCreateTopic","consensusUpdateTopic","consensusDeleteTopic","consensusSubmitMessage","uncheckedSubmit","tokenCreation","tokenFreeze","tokenUnfreeze","tokenGrantKyc","tokenRevokeKyc","tokenDeletion","tokenUpdate","tokenMint","tokenBurn","tokenWipe","tokenAssociate","tokenDissociate","tokenFeeScheduleUpdate","tokenPause","tokenUnpause","scheduleCreate","scheduleDelete","scheduleSign","startHour","startMin","endHour","endMin","updateFile","fileHash","freezeType","functionParameters","initialBalance","constructorParameters","shardID","realmID","newRealmAdminKey","memoWrapper","transferAccountID","deleteAccountID","accountOfLiveHash","liveHashToDelete","accountIDToUpdate","proxyFraction","sendRecordThresholdWrapper","receiveRecordThresholdWrapper","receiverSigRequiredWrapper","Int32Value","transferContractID","initialTransactionID","transactionBytes","initialSupply","freezeDefault","netOfTransfers","stateProof","createTopic","updateTopic","deleteTopic","getTopicInfo","submitMessage","getByKey","getBySolidityID","contractCallLocal","contractGetInfo","contractGetBytecode","ContractGetRecords","cryptoGetAccountRecords","cryptoGetInfo","cryptoGetLiveHash","cryptoGetProxyStakers","fileGetContents","fileGetInfo","transactionGetFastRecord","consensusGetTopicInfo","networkGetVersionInfo","tokenGetInfo","scheduleGetInfo","tokenGetAccountNftInfos","tokenGetNftInfo","tokenGetNftInfos","networkGetExecutionTime","NetworkGetExecutionTimeQuery","entities","solidityID","maxResultSize","functionResult","storageChanges","slot","valueRead","valueWritten","contractInfo","bytecode","records","cryptoAdjustments","nftAdjustments","tokenAdjustments","topicRunningHashVersion","accountInfo","proxyStaker","stakers","fileContents","fileInfo","NetworkGetExecutionTimeResponse","executionTimes","tokenInfo","scheduleInfo","nfts","nft","contractGetBytecodeResponse","contractGetRecordsResponse","createAccount","updateAccount","approveAllowances","addLiveHash","deleteLiveHash","getLiveHash","getAccountRecords","getFastTransactionRecord","getStakersByAccountID","createFile","deleteFile","appendContent","getFileContent","getFileInfo","consensusStartTime","consensusEndTime","runningHashVersion","subscribeTopic","getNodes","getVersionInfo","getExecutionTime","createSchedule","signSchedule","deleteSchedule","getScheduleInfo","createContract","updateContract","contractCallMethod","getContractInfo","contractCallLocalMethod","getTxRecordByContractID","deleteContract","operations","milliOpsPerSec","throttleGroups","burstPeriodMs","throttleBuckets","createToken","updateToken","mintToken","burnToken","deleteToken","wipeTokenAccount","freezeTokenAccount","unfreezeTokenAccount","grantKycToTokenAccount","revokeKycFromTokenAccount","associateTokens","dissociateTokens","updateTokenFeeSchedule","getTokenInfo","getAccountNftInfos","getTokenNftInfo","getTokenNftInfos","pauseToken","unpauseToken","Int64Value","details","_fromValue","queryCost","storageChange","signatures","NodeAccountIdSignatureMap","_fromTransactionSigMap","AccountAllowanceApproveTransaction","_hbarApprovals","hbarApprovals","_tokenApprovals","tokenApprovals","_nftApprovals","nftApprovals","allowanceApproval","AccountCreateTransaction","_initialBalance","_sendRecordThreshold","_receiveRecordThreshold","_receiverSignatureRequired","_proxyAccountId","_autoRenewPeriod","_accountMemo","_maxAutomaticTokenAssociations","setKey","receiverSignatureRequired","setReceiverSignatureRequired","setInitialBalance","setProxyAccountId","setAutoRenewPeriod","setAccountMemo","setMaxAutomaticTokenAssociations","AccountDeleteTransaction","_transferAccountId","transferAccountId","setTransferAccountId","accountDelete","isKycGranted","AccountRecordsQuery","AccountStakersQuery","staker","AccountUpdateTransaction","_expirationTime","_aliasKey","setExpirationTime","setAliasKey","fromDate","AddresesBookQuery","_fileId","setFileId","_limit","setLimit","_retryHandler","_attempt","attempts","backoff","_makeServerStreamRequest","_mirrorNetwork","getNextMirrorNode","makeServerStreamRequest","delay","EndPoint","setAddress","_port","setPort","endpoint","IPv4Address","setNetwork","_host","host","setHost","part","_left","IPv4AddressPart","setLeft","setRight","_right","ContractByteCodeQuery","smartContract","ContractCallQuery","_gas","setGas","_functionParameters","setFunctionParameters","setFunction","_maxResultSize","setMaxResultSize","ContractCreateTransaction","_bytecodeFileId","_adminKey","_constructorParameters","_contractMemo","bytecodeFileId","setBytecodeFileId","setAdminKey","setConstructorParameters","setContractMemo","ContractDeleteTransaction","_transferContractId","transferContractId","setTransferContractId","contractDelete","ContractExecuteTransaction","setPayableAmount","function","ContractInfoQuery","ContractUpdateTransaction","DelegateContractId","FileAppendTransaction","_contents","_maxChunks","_chunkSize","setContents","maxChunks","setMaxChunks","chunkSize","setChunkSize","_startIndex","nextTransactionId","executeAll","remainingTimeout","startTimestamp","file","append","FileContentsQuery","FileCreateTransaction","_fileMemo","setKeys","setFileMemo","FileDeleteTransaction","FileInfoQuery","FileUpdateTransaction","FreezeTransaction","_startTime","_startTimestamp","_endTime","_fileHash","_freezeType","setStartTime","minute","endTime","setEndTime","setStartTimestamp","updateFileId","setUpdateFileId","setFileHash","setFreezeType","startHourOrString","startMinute","endHourOrString","endMinute","UnknownFreezeType","FreezeOnly","PrepareUpgrade","FreezeUpgrade","FreezeAbort","TelemetryUpgrade","LiveHashAddTransaction","_duration","setHash","setDuration","LiveHashDeleteTransaction","LiveHashQuery","NetworkVersionInfoQuery","ScheduleCreateTransaction","_scheduledTransaction","_payerAccountId","_scheduleMemo","_scheduledSignerPublicKeys","setPayerAccountId","setScheduleMemo","schedule","_getScheduledTransactionBody","ScheduleDeleteTransaction","_scheduleId","setScheduleId","ScheduleInfoQuery","ScheduleSignTransaction","SystemDeleteTransaction","SystemUndeleteTransaction","TokenAssociateTransaction","_tokenIds","tokenIds","setTokenIds","associateToken","TokenBurnTransaction","_serials","setSerials","TokenCreateTransaction","_tokenName","_tokenSymbol","_decimals","_initialSupply","_treasuryAccountId","_kycKey","_freezeKey","_pauseKey","_wipeKey","_supplyKey","_feeScheduleKey","_freezeDefault","_autoRenewAccountId","_tokenMemo","_customFees","_tokenType","_supplyType","_maxSupply","tokenName","setTokenName","tokenSymbol","setTokenSymbol","setDecimals","setInitialSupply","setTreasuryAccountId","setKycKey","setFreezeKey","setPauseKey","setWipeKey","setSupplyKey","setFeeScheduleKey","setFreezeDefault","setAutoRenewAccountId","setTokenMemo","setCustomFees","setTokenType","setSupplyType","setMaxSupply","TokenDeleteTransaction","TokenDissociateTransaction","dissociateToken","TokenFeeScheduleUpdateTransaction","feeScheduleUpdate","TokenFreezeTransaction","freezeToken","TokenGrantKycTransaction","grantKycToken","TokenInfoQuery","TokenMintTransaction","_metadata","setMetadata","TokenNftInfoQuery","_nftId","setNftId","_start","setStart","_end","setEnd","TokenPauseTransaction","TokenRevokeKycTransaction","revokeKycToken","TokenUnfreezeTransaction","unfreezeToken","TokenUnpauseTransaction","TokenUpdateTransaction","TokenWipeTransaction","wipeToken","TopicCreateTransaction","_submitKey","_topicMemo","setSubmitKey","setTopicMemo","consensus","TopicDeleteTransaction","_topicId","setTopicId","topicDelete","TopicInfoQuery","TopicMessageQuery","_errorHandler","errorHandler","_listener","_completionHandler","completionHandler","retryHandler","_handle","requireNotSubscribed","SubscriptionHandle","cancel","plusNanos","_passTopicMessage","_ofSingle","topicMessage","_ofMany","_setCall","_call","TopicMessageSubmitTransaction","_message","setMessage","CHUNK_SIZE","_chunkInfo","requireStringOrUint8Array","initialTransactionId","startIndex","TopicUpdateTransaction","TransferTransaction","_tokenTransfers","_hbarTransfers","_nftTransfers","addTokenTransfer","hbarTransfers","addHbarTransfer","addNftTransfer","transferMap","NullableTokenDecimalMap","HbarTransferMap","senderAccountId","receiverAccountId","tokenIdOrNftId","senderAccountIdOrSerialNumber","receiverAccountIdOrSenderAccountId","TokenNftTransfer","senderComparision","recipientComparision","iTokenId","jTokenId","lastTokenId","accountTransfers","CostQuery","_query","_header","Network","fromName","WebClient","WebChannel","MirrorNetwork","_createMirrorNetworkChannel","_autoValidateChecksums","_defaultRegenerateTransactionId","signOnDemand","isTransportSecurity","setTransportSecurity","setOperatorWith","accountId_","setMaxNodeAttempts","nodeWaitTime","maxNodesPerTransaction","setMaxNodesPerTransaction","ping","_maxNodesPerTransaction","_addressBook","_setNetwork","MAINNET_ADDRESS_BOOK","TESTNET_ADDRESS_BOOK","PREVIEWNET_ADDRESS_BOOK","setNodeAddress","indexes","_getNumberOfMostHealthyNodes","getNumberOfNodesForTransaction","ManagedNetwork","_nodeAddress","PREVIEWNET_CERTS","TESTNET_CERTS","MAINNET_CERTS","HOST_AND_PORT","hostAndPortResult","MirrorNode","serviceName","requestData","fetch","headers","encodeRequest","arrayBuffer","responseBuffer","unaryResponse","decodeUnaryResponse","Channel","dataView","dataOffset","frameByte","frameType","frameByteLength","frameOffset","frameData","trailer","trailerName","trailerValue","frame","_crypto","_smartContract","_file","_consensus","_freeze","_token","_schedule","_createUnaryClient","Jsonrpc","Batch","requests","sortResponses","_sortResponses","results","ErrorResponse","isValidResponse","InvalidResponse","messageId","jsonrpc","validateSingleMessage","messages","got","InvalidConnection","ConnectionError","ConnectionTimeout","ConnectionNotOpenError","ConnectionCloseError","MaxAttemptsReachedOnReconnectingError","PendingRequestsOnReconnectingError","ResolverMethodMissingError","ContractMissingABIError","ContractOnceRequiresCallbackError","ContractEventDoesNotExistError","eventName","ContractReservedEventError","ContractMissingDeployDataError","ContractNoAddressDefinedError","ContractNoFromAddressDefinedError","Iban","outputBigNumberFormatter","isPredefinedBlockNumber","_txInputFormatter","transactionIndex","outputLogFormatter","logIndex","shaId","iban","isValid","isDirect","toAddress","inputCallFormatter","inputPostFormatter","post","ttl","workToProve","priority","inputLogFormatter","toTopic","fromBlock","toBlock","inputStorageKeysFormatter","outputProofFormatter","proof","cumulativeGasUsed","effectiveGasPrice","difficulty","totalDifficulty","miner","outputPostFormatter","workProved","outputSyncingFormatter","startingBlock","currentBlock","highestBlock","knownStates","pulledStates","negative1","getValueOfUnit","unitInput","unitValue","numberToString","fromWei","weiInput","optionsInput","wei","baseLength","whole","commify","toWei","etherInput","ether","comps","lens","getLens","validLen","placeHoldersLen","Arr","_byteLength","curByte","revLookup","extraBytes","len2","encodeChunk","lookup","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","rt","byteIndex","stringFromCharCode","ucs2decode","extra","checkScalarValue","createByte","encodeCodePoint","readContinuationByte","continuationByte","decodeSymbol","byte1","byteString","ucs2encode","propIsEnumerable","propertyIsEnumerable","toObject","test1","test2","test3","letter","shouldUseNative","symbols","getOwnPropertyDescriptors","descriptors","formatRegExp","objects","noDeprecation","throwDeprecation","traceDeprecation","debugEnviron","debugs","seen","stylize","stylizeNoColor","depth","colors","showHidden","_extend","customInspect","stylizeWithColor","formatValue","styleType","style","styles","recurseTimes","simple","formatPrimitive","visibleKeys","arrayToHash","formatError","braces","toUTCString","formatProperty","formatArray","cur","numLinesEst","reduceToSingleString","line","NODE_DEBUG","pid","months","getHours","getMinutes","getDate","getMonth","origin","kCustomPromisifiedSymbol","callbackifyOnRejected","newReason","promisify","original","promiseResolve","promiseReject","defineProperties","custom","callbackify","callbackified","maybeCb","rej","cond","numbers","isCompressed","toTypeString","getAssertedOutput","contextRandomize","privateKeyVerify","seckey","privateKeyNegate","privateKeyTweakAdd","tweak","privateKeyTweakMul","publicKeyVerify","pubkey","publicKeyCreate","compressed","publicKeyConvert","publicKeyNegate","publicKeyCombine","pubkeys","publicKeyTweakAdd","publicKeyTweakMul","signatureNormalize","signatureExport","outputlen","signatureImport","ecdsaSign","msg32","noncefn","recid","ecdsaVerify","ecdsaRecover","ecdh","hashfn","xbuf","ybuf","ecparams","loadPublicKey","loadCompressedPublicKey","loadUncompressedPublicKey","savePublicKey","tweaked","pair","pairs","sigR","sigS","lenR","posR","lenS","posS","_noncefn","sigObj","sigr","scalar","createKeccakHash","createKeccak","createShake","KeccakState","Shake","capacity","delimitedSuffix","hashBitLength","_rate","_capacity","_delimitedSuffix","_hashBitLength","_options","_state","initialize","absorb","absorbLastFewBits","squeeze","_resetState","enumerableOnly","sym","_defineProperty","_classCallCheck","_getString","_getBuffer","_objectSpread","_Object$setPrototypeO","kLastResolve","kLastReject","kError","kEnded","kLastPromise","kHandlePromise","kStream","createIterResult","readAndResolve","onReadable","AsyncIteratorPrototype","ReadableStreamAsyncIteratorPrototype","lastPromise","wrapForNext","_Object$create","ERR_MISSING_ARGS","destroyer","closed","popCallback","streams","destroys","dataByteLength","keccakState","squeezing","p1600","P1600_ROUND_CONSTANTS","lo0","hi0","lo1","hi1","lo2","hi2","lo3","hi3","lo4","hi4","t1slo0","t1shi0","t1slo5","t1shi5","t1slo10","t1shi10","t1slo15","t1shi15","t1slo20","t1shi20","t1slo1","t1shi1","t1slo6","t1shi6","t1slo11","t1shi11","t1slo16","t1shi16","t1slo21","t1shi21","t1slo2","t1shi2","t1slo7","t1shi7","t1slo12","t1shi12","t1slo17","t1shi17","t1slo22","t1shi22","t1slo3","t1shi3","t1slo8","t1shi8","t1slo13","t1shi13","t1slo18","t1shi18","t1slo23","t1shi23","t1slo4","t1shi4","t1slo9","t1shi9","t1slo14","t1shi14","t1slo19","t1shi19","t1slo24","t1shi24","t2slo0","t2shi0","t2slo16","t2shi16","t2slo7","t2shi7","t2slo23","t2shi23","t2slo14","t2shi14","t2slo10","t2shi10","t2slo1","t2shi1","t2slo17","t2shi17","t2slo8","t2shi8","t2slo24","t2shi24","t2slo20","t2shi20","t2slo11","t2shi11","t2slo2","t2shi2","t2slo18","t2shi18","t2slo9","t2shi9","t2slo5","t2shi5","t2slo21","t2shi21","t2slo12","t2shi12","t2slo3","t2shi3","t2slo19","t2shi19","t2slo15","t2shi15","t2slo6","t2shi6","t2slo22","t2shi22","t2slo13","t2shi13","t2slo4","t2shi4","Sha","rotl30","ft","Sha1","rotl5","Sha224","registerImmediate","html","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","document","attachTo","runIfPresent","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","canUsePostMessage","MessageChannel","port1","port2","createElement","documentElement","script","onreadystatechange","removeChild","appendChild","attachEvent","task","Address","assert_1","default","field","utils_1","bitpos","codePointToInt","addSlice","isByteArray","keccak_256","INPUT_ERROR","WINDOW","JS_SHA3_NO_WINDOW","WEB_WORKER","JS_SHA3_NO_NODE_JS","COMMON_JS","JS_SHA3_NO_COMMON_JS","AMD","ARRAY_BUFFER","JS_SHA3_NO_ARRAY_BUFFER","CSHAKE_PADDING","BITS","SHAKE_BITS","OUTPUT_TYPES","CSHAKE_BYTEPAD","JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW","createOutputMethod","outputType","createShakeOutputMethod","outputBits","createCshakeOutputMethod","createKmacOutputMethod","createOutputMethods","createMethod","algorithms","bytepad","Kmac","methodNames","methodName","newMethodName","finalized","notString","encodeString","strs","paddingBytes","finalize","_parseNumber","_solidityPack","arraySize","typesize","_parseTypeN","_processSolidityEncodePackedArgs","_parseTypeNArray","hexArgs","iso13616Prepare","mod9710","_iban","isIndirect","base36","asBn","ib","fromAddress","padded","fromBban","bban","countryCode","institution","identifier","pckg","ex","extension","extendedObject","identity","_extractCallback","_validateArgs","_formatInput","_formatOutput","_toPayload","subscriptionMethod","err1","blockParams","resultItem","subscriptionHandler","resubscribe","require$$0","require$$1","require$$2","require$$3","cryp","Wallet","_accounts","defaultKeyName","_addAccountFunctions","newAccountPrivateKey","createNewAccountId","privateKeyToAccount","recoverTransaction","rawTx","TransactionFactory","fromSerializedData","getSenderAddress","hashMessage","messageHex","messageBytes","messageBuffer","preamble","preambleBuffer","ethMessage","recover","preFixed","messageHash","encodeSignature","v3Keystore","nonStrict","derivedKey","scrypt","syncScrypt","dklen","decipher","uuid","v4","_findSafeIndex","pointer","_currentIndexes","numberOfAccounts","remove","addressOrIndex","encryptedWallet","keyName","setItem","load","getItem","removeItem","storageAvailable","Bytes","Nat","keccak256s","toChecksum","addressHash","checksumAddress","publicHash","decodeSignature","makeSigner","addToV","innerHex","middleHex","outerHex","vals","vrs","replicate","J","chunksOf","ZERO_BUF","toBrowser","checks","getNextTick","queueMicrotask","browserPbkdf2","resolvePromise","prom","checkNative","resp","aesModes","desModes","ebtk","suite","des","instantiate","EDE","modeName","_des","des3","CBCState","_cbcInit","_cbcState","superProto","EDEState","k3","_edeState","MODES","AuthCipher","Splitter","_autopadding","PADDING","setTo","padBuff","encryptStart","encryptByte","byteParam","shiftIn","ZEROES","_multiply","lsbVi","Vi","Zi","abl","_last","unpad","autoPadding","generatePrime","DH","ENCODINGS","genc","SEVEN","setPrivateKey","_priv","primeCache","malleable","setGenerator","__prime","_primeLen","_primeCode","formatReturnValue","checkPrime","__gen","generateKeys","_gen","getPublicKey","computeSecret","getPrime","front","getPrivateKey","getGenerator","_hashType","_tag","_signType","hlen","hbits","bits2int","bits2octets","obits","makeKey","kv","makeR","hashType","signType","curveId","ecSign","dsaSign","bitstr","null_","octstr","ECParameters","namedCurve","Entity","_createNamed","Generated","_initNamed","PEMEncoder","label","PEMDecoder","lines","_reverse","Time","utcTime","utctime","generalTime","gentime","AttributeTypeValue","SubjectPublicKeyInfo","RelativeDistinguishedName","setof","RDNSequence","seqof","Name","rdnSequence","Validity","Extension","TBSCertificate","X509Certificate","findProc","startRegex","fullRegex","evp","okey","cipherKey","match2","checkValue","ecVerify","unpacked","montp","dsaVerify","padNum","ECDH","aliases","secp224r1","prime256v1","prime192v1","secp384r1","secp521r1","curveType","p256","secp256r1","secp192r1","p384","p521","inenc","mgf","withPublic","iHash","hLen2","ps","dblen","maskedDb","maskedSeed","oaep","nonZero","pkcs1","zBuffer","db","dif","oldBrowser","safeBuffer","kBufferMaxLength","kMaxUint32","assertOffset","actualFill","ourBuf","toEther","fromEther","toUint256","dataTree","parseTree","parseHex","parseList","parseLength","lim","keccak","keccak512","keccak512s","bytesLeft","bitLenHi","bitLenLo","numZeros","PBKDF2_HMAC_SHA256_OneIter","innerLen","outerKey","dk","incrementCounter","blockmix_salsa8","BY","Yi","_X","arraycopy","blockxor","salsa20_8","Si","srcPos","checkBufferish","ensureInteger","_scrypt","i1","Bi","XY","totalOps","currentOp","lastPercent10","i0","incrementalSMix","steps","percent10","lib","progressCallback","lastProgress","progress","_clockseq","bytesToUuid","_lastMSecs","_lastNSecs","clockseq","seedBytes","nsecs","dt","tmh","ii","newAccountPublicKey","txReceipt","abi","jsonInterface","lastArg","_getOrSetDefaultOptions","_jsonInterface","funcName","stateMutability","payable","encodeFunctionSignature","_createTxObject","cascadeFunc","nextMethod","encodeEventSignature","_on","allEvents","_getCallback","_checkListener","_encodeEventABI","anonymous","indexedTopics","indexed","encodeParameter","_decodeEventABI","find","intf","indexedInputs","argTopics","returnValues","decodeLog","__length__","_encodeMethodABI","methodSignature","_method","paramsABI","_parent","inputLength","encodeParameters","_deployData","_decodeMethodReturn","outputs","decodeParameters","deploy","txObject","contractTx","renewPeriod","estimateGas","createAccessList","_generateEventOptions","subOptions","removed","getPastEvents","getPastLogs","_executeMethod","encodeABI","deployData","_processExecuteArguments","processedArgs","generateRequest","setQueryPayment","setMaxTransactionFee","_tokenDecimals","currentDecimals","_squashTransfers","currentValue","recipientAccountIdOrSenderAccountId","senderId","recipientId","thisTokenTransfers","thisNftTransfers","accountIdComparison","EthersAbiCoder","AbiCoder","ParamType","ethersAbiCoder","Result","ABICoder","functionName","mapTypes","formatParam","modifyParams","_getCoder","coders","mappedTypes","isSimplifiedStructFormat","structName","mapStructNameAndType","mapStructToCoderFormat","struct","paramTypeBytes","paramTypeBytesArray","paramTypeNumber","paramTypeNumberArray","maxSize","encodeFunctionCall","decodeParametersWith","loose","decodedValue","isStringObject","notIndexedInputs","indexedParams","topicCount","staticType","nonIndexedData","notIndexedParams","defineReadOnly","toUtf8Bytes","domainFieldNames","logger","throwArgumentError","arrayify","boundsUpper","MaxUint256","signed","boundsLower","One","NegativeOne","getId","givenId","genesis"],"mappings":"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,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,IAAK,IAAK,IAAK,EAAG,EAAG,EAAG,IAAK,IAAK,IAAK,GAAI,IAAK,EAAG,EAAG,EAAG,IAAK,IAAK,IAAK,GAAI,IAAK,EAAG,EAAG,EAAG,IAAK,IAAK,IAAK,GAAI,IAAK,EAAG,EAAG,EAAG,IAAK,IAAK,IAAK,GAAI,IAAK,EAAG,EAAG,EAAG,IAAK,IAAK,IAAK,GAAI,IAAK,IAAK,IAAK,IAAK,EAAG,EAAG,GAAI,IAAK,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,GAAI,IAAK,IAAK,GAAI,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,GAAI,IAAK,IAAK,IAAK,GAAI,EAAG,GAAI,GAAI,IAAK,IAAK,GAAI,EAAG,GAAI,EAAG,IAAK,GAAI,GAAI,EAAG,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,GAAI,IAAK,IAAK,GAAI,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,GAAI,IAAK,IAAK,IAAK,GAAI,EAAG,GAAI,GAAI,IAAK,IAAK,GAAI,EAAG,GAAI,EAAG,IAAK,GAAI,GAAI,EAAG,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,GAAI,IAAK,IAAK,GAAI,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,GAAI,IAAK,IAAK,IAAK,GAAI,EAAG,GAAI,GAAI,IAAK,IAAK,GAAI,EAAG,GAAI,EAAG,IAAK,GAAI,GAAI,EAAG,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,GAAI,IAAK,IAAK,GAAI,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,GAAI,IAAK,IAAK,IAAK,GAAI,EAAG,GAAI,GAAI,IAAK,IAAK,GAAI,EAAG,GAAI,EAAG,IAAK,GAAI,GAAI,EAAG,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,EAAG,IAAK,GAAI,GAAI,IAAK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ACA,WACA,YACA,WACA,YAEA,YACA,YACA,YACA,YACA,YACA,YACA,UACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,WACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,WACA,YACA,YACA,YACA,YACA,WACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,YACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aAEA,aACA,aACA,aACA,YAsBA,O,cAN2B,CACvBgtI,QAAS,UACTC,QAAS,UACTC,WAAY,e,8mBCzIKrpG,E,4CAKjB,WAAYmT,EAAM3H,GAAW,mCACzB,gBAMKsf,MAAgB,MAAR3X,EAAe,GAAKA,EAKjC,EAAK4X,WAA0B,MAAbvf,EAAoB,KAAOA,EAZpB,E,4CAyC7B,WACI,OAAOvqC,KAAK8pD,a,0BAOhB,SAAavf,GAET,OADAvqC,KAAK8pD,WAAavf,EACXvqC,O,kBAOX,WAAc,MACV,OAAO,EAAAA,KAAK6pD,OAAMhhD,KAAX,qB,oBASX,SAAOrC,EAAOujD,GAAuB,6BAAPC,EAAO,iCAAPA,EAAO,kBACjC,OAAO,IAAIjrB,GACP,EAAA/+B,KAAK6pD,OAAMhyB,OAAX,SAAkBrxB,EAAOujD,GAAzB,OAAyCC,IACzChqD,KAAKuqC,a,mBASb,SAAM/jC,EAAOC,GACT,OAAO,IAAIs4B,EAAQ/+B,KAAK6pD,MAAMvkD,MAAMkB,EAAOC,GAAMzG,KAAKuqC,a,aAM1D,WACI,OAAOvqC,KAAK6pD,MAAMptD,OAAO+B,c,qBAM7B,WACI,OAAOwB,KA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CDxE3B,EAAOD,QAJP,SAA2B6E,GACzB,OAAgE,IAAzD8pC,SAAS7nC,SAASnG,KAAKkE,GAAIsH,QAAQ,kBAI5ClM,EAAOD,QAAP,QAA4BC,EAAOD,QAASC,EAAOD,QAAQ4B,YAAa,G,6BCQxE3B,EAAOD,QAbP,WACE,GAAuB,oBAAZk9B,UAA4BA,QAAQsV,UAAW,OAAO,EACjE,GAAItV,QAAQsV,UAAU86F,KAAM,OAAO,EACnC,GAAqB,mBAAVC,MAAsB,OAAO,EAExC,IAEE,OADAttE,QAAQ79D,UAAUykD,QAAQlmD,KAAKu8B,QAAQsV,UAAUytB,QAAS,IAAI,iBACvD,EACP,MAAOxwD,GACP,OAAO,IAKXxP,EAAOD,QAAP,QAA4BC,EAAOD,QAASC,EAAOD,QAAQ4B,YAAa,G,yHCdzD,CACX,QACA,QACA,QACA,QACA,SACA,OACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,MACA,OACA,SACA,OACA,SACA,QACA,OACA,SACA,MACA,SACA,SACA,QACA,SACA,QACA,OACA,QACA,MACA,QACA,SACA,QACA,SACA,SACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,MACA,SACA,SACA,QACA,SACA,QACA,MACA,QACA,QACA,SACA,QACA,MACA,OACA,MACA,MACA,SACA,OACA,OACA,QACA,SACA,SACA,QACA,MACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,MACA,QACA,SACA,QACA,QACA,OACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,QACA,OACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,MACA,SACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,MACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,QACA,QACA,OACA,SACA,SACA,OACA,SACA,SACA,MACA,OACA,QACA,OACA,QACA,MACA,MACA,SACA,OACA,QACA,SACA,SACA,QACA,SACA,SACA,QACA,QACA,MACA,SACA,SACA,SACA,SACA,MACA,QACA,SACA,QACA,MACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,MACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,SACA,SACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,SACA,MACA,OACA,QACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,SACA,QACA,MACA,QACA,QACA,MACA,QACA,OACA,OACA,OACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,SACA,MACA,QACA,SACA,OACA,OACA,OACA,MACA,SACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,SACA,SACA,SACA,OACA,QACA,QACA,QACA,QACA,SACA,OACA,MACA,QACA,OACA,QACA,SACA,MACA,QACA,SACA,OACA,OACA,OACA,OACA,QACA,QACA,OACA,SACA,SACA,MACA,QACA,OACA,QACA,OACA,OACA,OACA,SACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,QACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,QACA,OACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,OACA,SACA,MACA,OACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,MACA,MACA,SACA,OACA,OACA,OACA,MACA,SACA,OACA,SACA,QACA,OACA,SACA,QACA,SACA,MACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,OACA,SACA,OACA,OACA,QACA,QACA,OACA,QACA,OACA,QACA,QACA,OACA,MACA,SACA,OACA,QACA,OACA,OACA,OACA,OACA,SACA,OACA,OACA,OACA,SACA,QACA,OACA,OACA,OACA,QACA,OACA,QACA,QACA,SACA,OACA,SACA,QACA,OACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,MACA,QACA,OACA,MACA,MACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,OACA,QACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,QACA,OACA,QACA,OACA,QACA,OACA,SACA,QACA,OACA,QACA,QACA,SACA,OACA,QACA,SACA,SACA,SACA,SACA,QACA,OACA,QACA,SACA,QACA,OACA,MACA,OACA,OACA,SACA,OACA,MACA,SACA,OACA,SACA,SACA,MACA,QACA,OACA,MACA,OACA,MACA,QACA,QACA,QACA,SACA,SACA,OACA,QACA,QACA,SACA,OACA,OACA,OACA,SACA,OACA,SACA,OACA,QACA,SACA,OACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,OACA,SACA,QACA,SACA,SACA,SACA,MACA,OACA,MACA,SACA,OACA,OACA,SACA,SACA,QACA,OACA,SACA,QACA,OACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,OACA,OACA,SACA,SACA,MACA,QACA,QACA,SACA,SACA,SACA,QACA,OACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,OACA,SACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,QACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,OACA,QACA,OACA,SACA,QACA,SACA,OACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,OACA,OACA,QACA,QACA,OACA,QACA,SACA,OACA,OACA,QACA,QACA,QACA,SACA,OACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,OACA,OACA,SACA,QACA,SACA,QACA,OACA,SACA,QACA,OACA,OACA,SACA,QACA,OACA,OACA,QACA,OACA,SACA,SACA,SACA,OACA,OACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,OACA,SACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,OACA,OACA,SACA,OACA,QACA,OACA,OACA,OACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,QACA,QACA,QACA,QACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,QACA,SACA,MACA,SACA,SACA,OACA,OACA,QACA,SACA,QACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,SACA,SACA,SACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,OACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,OACA,MACA,QACA,OACA,OACA,QACA,SACA,OACA,OACA,MACA,OACA,OACA,SACA,OACA,QACA,QACA,SACA,QACA,OACA,SACA,MACA,OACA,QACA,SACA,QACA,QACA,MACA,QACA,SACA,QACA,QACA,QACA,OACA,MACA,SACA,OACA,SACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,MACA,OACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,SACA,QACA,SACA,OACA,SACA,SACA,QACA,SACA,SACA,OACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,QACA,QACA,OACA,SACA,MACA,MACA,SACA,OACA,SACA,MACA,SACA,QACA,OACA,SACA,SACA,QACA,MACA,OACA,SACA,OACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,MACA,QACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,OACA,SACA,OACA,MACA,SACA,QACA,QACA,OACA,OACA,OACA,QACA,QACA,OACA,SACA,QACA,QACA,QACA,OACA,SACA,QACA,QACA,SACA,QACA,OACA,QACA,QACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,QACA,MACA,OACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,OACA,OACA,SACA,SACA,OACA,OACA,QACA,QACA,OACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,MACA,OACA,QACA,OACA,QACA,OACA,QACA,SACA,OACA,SACA,OACA,MACA,QACA,QACA,OACA,OACA,OACA,OACA,SACA,QACA,OACA,SACA,MACA,QACA,SACA,SACA,SACA,MACA,MACA,QACA,SACA,SACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,QACA,SACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,OACA,SACA,OACA,QACA,QACA,SACA,QACA,SACA,MACA,QACA,OACA,QACA,SACA,SACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,QACA,MACA,OACA,QACA,OACA,QACA,QACA,OACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,MACA,OACA,SACA,OACA,SACA,OACA,SACA,OACA,OACA,QACA,OACA,SACA,QACA,QACA,OACA,SACA,OACA,QACA,SACA,OACA,SACA,SACA,SACA,MACA,QACA,MACA,QACA,OACA,OACA,SACA,OACA,SACA,SACA,MACA,QACA,OACA,SACA,QACA,QACA,SACA,QACA,OACA,QACA,OACA,MACA,MACA,SACA,OACA,OACA,OACA,OACA,SACA,OACA,SACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,MACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,QACA,MACA,QACA,SACA,OACA,OACA,SACA,SACA,OACA,SACA,QACA,SACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,OACA,MACA,SACA,OACA,MACA,OACA,QACA,OACA,QACA,QACA,OACA,QACA,QACA,QACA,OACA,SACA,OACA,OACA,OACA,SACA,QACA,QACA,SACA,OACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,OACA,SACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,OACA,MACA,QACA,OACA,OACA,QACA,QACA,MACA,OACA,OACA,OACA,SACA,QACA,OACA,SACA,OACA,OACA,OACA,OACA,MACA,SACA,QACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,OACA,QACA,QACA,QACA,SACA,SACA,OACA,QACA,OACA,SACA,MACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,OACA,QACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,OACA,OACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,MACA,QACA,OACA,OACA,QACA,QACA,MACA,OACA,QACA,MACA,QACA,OACA,OACA,SACA,OACA,QACA,SACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,OACA,QACA,SACA,OACA,MACA,SACA,SACA,SACA,MACA,OACA,OACA,SACA,QACA,QACA,OACA,OACA,OACA,QACA,MACA,SACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,OACA,MACA,SACA,QACA,QACA,OACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,OACA,QACA,SACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,OACA,OACA,OACA,MACA,OACA,OACA,OACA,SACA,OACA,OACA,OACA,MACA,OACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,MACA,SACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,QACA,QACA,OACA,OACA,OACA,QACA,QACA,OACA,OACA,QACA,OACA,OACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,OACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,OACA,QACA,MACA,SACA,OACA,MACA,MACA,QACA,QACA,OACA,MACA,OACA,OACA,QACA,QACA,OACA,OACA,OACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,SACA,QACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,OACA,QACA,OACA,OACA,QACA,QACA,MACA,OACA,SACA,QACA,SACA,QACA,MACA,QACA,OACA,OACA,QACA,SACA,OACA,QACA,QACA,SACA,OACA,MACA,SACA,OACA,QACA,OACA,OACA,OACA,SACA,OACA,OACA,QACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,OACA,QACA,SACA,OACA,OACA,SACA,QACA,OACA,QACA,OACA,SACA,OACA,OACA,QACA,QACA,MACA,SACA,OACA,OACA,OACA,SACA,SACA,SACA,OACA,SACA,SACA,MACA,SACA,OACA,SACA,OACA,OACA,SACA,SACA,OACA,MACA,OACA,SACA,OACA,SACA,OACA,MACA,OACA,MACA,OACA,QACA,SACA,QACA,SACA,OACA,SACA,OACA,SACA,QACA,OACA,OACA,SACA,QACA,OACA,OACA,OACA,OACA,SACA,SACA,QACA,OACA,OACA,MACA,QACA,QACA,OACA,QACA,QACA,MACA,OACA,OACA,QACA,SACA,SACA,QACA,OACA,SACA,SACA,OACA,SACA,OACA,QACA,OACA,OACA,MACA,SACA,OACA,SACA,MACA,QACA,OACA,QACA,OACA,QACA,QACA,QACA,OACA,OACA,OACA,SACA,SACA,MACA,QACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,OACA,SACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,MACA,SACA,SACA,QACA,SACA,MACA,SACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,OACA,QACA,OACA,SACA,QACA,QACA,SACA,SACA,OACA,SACA,QACA,QACA,OACA,OACA,SACA,OACA,QACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,OACA,QACA,SACA,OACA,MACA,OACA,OACA,QACA,QACA,OACA,MACA,QACA,SACA,MACA,MACA,OACA,SACA,MACA,OACA,OACA,QACA,OACA,QACA,OACA,SACA,SACA,MACA,SACA,SACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,OACA,OACA,SACA,SACA,OACA,QACA,OACA,OACA,SACA,SACA,OACA,OACA,OACA,OACA,SACA,QACA,OACA,SACA,SACA,MACA,QACA,OACA,MACA,SACA,SACA,OACA,SACA,MACA,OACA,SACA,OACA,OACA,OACA,SACA,QACA,OACA,QACA,OACA,QACA,SACA,OACA,OACA,QACA,OACA,OACA,QACA,QACA,QACA,SACA,QACA,OACA,OACA,MACA,SACA,QACA,OACA,SACA,QACA,OACA,OACA,OACA,OACA,QACA,OACA,OACA,MACA,QACA,QACA,SACA,QACA,OACA,QACA,OACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,SACA,MACA,SACA,OACA,SACA,MACA,QACA,SACA,OACA,OACA,SACA,OACA,QACA,SACA,OACA,QACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,OACA,MACA,SACA,QACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,MACA,QACA,SACA,OACA,SACA,SACA,SACA,OACA,MACA,SACA,SACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,MACA,MACA,OACA,OACA,OACA,OACA,QACA,OACA,SACA,OACA,OACA,QACA,OACA,OACA,SACA,QACA,SACA,OACA,OACA,OACA,MACA,SACA,SACA,OACA,SACA,MACA,OACA,SACA,QACA,MACA,SACA,OACA,OACA,OACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,QACA,MACA,QACA,OACA,SACA,OACA,SACA,OACA,SACA,OACA,OACA,QACA,SACA,OACA,OACA,QACA,OACA,OACA,OACA,MACA,SACA,QACA,OACA,SACA,SACA,QACA,OACA,SACA,QACA,MACA,QACA,SACA,QACA,QACA,OACA,QACA,OACA,OACA,OACA,QACA,SACA,QACA,QACA,OACA,OACA,QACA,OACA,OACA,OACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,OACA,QACA,QACA,QACA,SACA,SACA,SACA,OACA,SACA,OACA,OACA,SACA,QACA,OACA,QACA,OACA,SACA,OACA,OACA,SACA,SACA,OACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,OACA,MACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,OACA,SACA,QACA,OACA,QACA,SACA,SACA,OACA,OACA,QACA,OACA,OACA,SACA,MACA,QACA,OACA,SACA,SACA,SACA,QACA,MACA,QACA,QACA,OACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,QACA,SACA,QACA,SACA,OACA,SACA,SACA,QACA,OACA,SACA,OACA,SACA,SACA,OACA,SACA,SACA,OACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,OACA,OACA,QACA,MACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,QACA,SACA,MACA,SACA,SACA,QACA,SACA,QACA,SACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,QACA,OACA,OACA,OACA,OACA,QACA,OACA,QACA,SACA,OACA,SACA,QACA,SACA,OACA,OACA,QACA,OACA,MACA,OACA,OACA,MACA,SACA,OACA,OACA,QACA,QACA,SACA,SACA,SACA,SACA,QACA,QACA,OACA,OACA,SACA,SACA,SACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,OACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,MACA,OACA,OACA,QACA,MACA,SACA,QACA,OACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,QACA,OACA,QACA,OACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,OACA,SACA,OACA,OACA,SACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,MACA,SACA,QACA,QACA,OACA,OACA,SACA,QACA,SACA,QACA,QACA,OACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,MACA,OACA,SACA,QACA,SACA,OACA,OACA,MACA,OACA,SACA,SACA,SACA,OACA,QACA,SACA,MACA,SACA,OACA,OACA,SACA,QACA,MACA,QACA,QACA,MACA,MACA,QACA,OACA,QACA,OACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,MACA,MACA,SACA,QACA,SACA,SACA,QACA,OACA,MACA,OACA,OACA,MACA,QACA,SACA,QACA,QACA,OACA,OACA,OACA,MACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,OACA,SACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,MACA,MACA,QACA,SACA,SACA,OACA,OACA,OACA,QACA,MACA,QACA,MACA,MACA,QACA,SACA,QACA,SACA,SACA,QACA,OACA,OACA,SACA,OACA,MACA,SACA,QACA,QACA,OACA,OACA,OACA,QACA,OACA,SACA,OACA,OACA,MACA,SACA,QACA,QACA,OACA,QACA,QACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,SACA,OACA,OACA,QACA,SACA,SACA,SACA,MACA,QACA,SACA,OACA,QACA,SACA,SACA,OACA,QACA,OACA,MACA,OACA,MACA,QACA,QACA,OACA,OACA,QACA,QACA,OACA,OACA,SACA,SACA,SACA,MACA,QACA,QACA,SACA,QACA,SACA,SACA,MACA,QACA,QACA,SACA,SACA,SACA,SACA,OACA,OACA,MACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,SACA,MACA,QACA,OACA,SACA,QACA,MACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,QACA,MACA,QACA,OACA,OACA,OACA,QACA,OACA,SACA,OACA,SACA,SACA,MACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,OACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,OACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,OACA,OACA,OACA,QACA,SACA,SACA,OACA,QACA,SACA,OACA,OACA,SACA,SACA,QACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,OACA,SACA,OACA,OACA,SACA,OACA,OACA,OACA,SACA,MACA,QACA,OACA,OACA,OACA,SACA,OACA,OACA,OACA,SACA,MACA,SACA,SACA,QACA,QACA,OACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,QACA,MACA,QACA,SACA,SACA,MACA,SACA,OACA,OACA,OACA,SACA,SACA,QACA,OACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,SACA,QACA,SACA,OACA,QACA,MACA,OACA,SACA,SACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,SACA,SACA,OACA,OACA,OACA,OACA,OACA,QACA,QACA,OACA,QACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,OACA,SACA,SACA,OACA,MACA,OACA,SACA,SACA,QACA,SACA,OACA,QACA,MACA,MACA,QACA,QACA,QACA,OACA,SACA,QACA,OACA,SACA,QACA,OACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,MACA,SACA,OACA,SACA,OACA,OACA,OACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,QACA,QACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,MACA,QACA,QACA,QACA,SACA,SACA,OACA,OACA,OACA,MACA,OACA,QACA,QACA,OACA,QACA,OACA,QACA,QACA,OACA,MACA,OACA,QACA,OACA,OACA,QACA,SACA,OACA,OACA,QACA,OACA,SACA,OACA,QACA,QACA,OACA,OACA,QACA,MACA,OACA,SACA,QACA,QACA,SACA,OACA,SACA,QACA,MACA,OACA,SACA,QACA,OACA,OACA,QACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,MACA,SACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,MACA,SACA,SACA,OACA,SACA,OACA,MACA,QACA,OACA,OACA,QACA,SACA,OACA,MACA,OACA,OACA,SACA,QACA,OACA,SACA,OACA,SACA,QACA,OACA,SACA,MACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,OACA,SACA,QACA,OACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,OACA,QACA,SACA,MACA,OACA,SACA,OACA,QACA,OACA,OACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,MACA,MACA,QACA,QACA,OACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,QACA,OACA,MACA,OACA,OACA,SACA,SACA,SACA,OACA,SACA,SACA,OACA,SACA,SACA,MACA,OACA,SACA,OACA,OACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,SACA,OACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,MACA,SACA,QACA,SACA,MACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,OACA,QACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,OACA,MACA,QACA,OACA,OACA,QACA,OACA,QACA,QACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,QACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,OACA,MACA,OACA,QACA,SACA,MACA,OACA,SACA,MACA,QACA,QACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,QACA,MACA,OACA,QACA,QACA,OACA,QACA,OACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,SACA,OACA,QACA,QACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,OACA,OACA,QACA,SACA,SACA,OACA,SACA,QACA,OACA,SACA,SACA,OACA,OACA,SACA,SACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,QACA,OACA,QACA,OACA,MACA,QACA,SACA,OACA,QACA,OACA,OACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,OACA,QACA,OACA,OACA,SACA,SACA,MACA,QACA,QACA,QACA,OACA,QACA,QACA,SACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,QACA,QACA,OACA,SACA,QACA,SACA,SACA,OACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,SACA,QACA,SACA,QACA,SACA,SACA,OACA,QACA,SACA,SACA,QACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,OACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,SACA,OACA,SACA,QACA,OACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,MACA,OACA,SACA,QACA,OACA,QACA,SACA,SACA,SACA,MACA,SACA,SACA,SACA,MACA,SACA,QACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,OACA,QACA,SACA,SACA,QACA,OACA,OACA,QACA,OACA,QACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,SACA,OACA,SACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,MACA,SACA,SACA,OACA,MACA,OACA,SACA,SACA,OACA,OACA,SACA,OACA,QACA,QACA,SACA,SACA,OACA,SACA,MACA,OACA,MACA,QACA,OACA,OACA,OACA,QACA,OACA,QACA,OACA,SACA,SACA,QACA,QACA,MACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,OACA,QACA,SACA,SACA,OACA,SACA,QACA,OACA,QACA,OACA,QACA,OACA,OACA,QACA,SACA,SACA,QACA,QACA,SACA,OACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,OACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,OACA,OACA,MACA,OACA,QACA,QACA,OACA,OACA,OACA,SACA,OACA,QACA,MACA,OACA,MACA,OACA,SACA,QACA,OACA,QACA,QACA,MACA,SACA,QACA,QACA,OACA,OACA,MACA,SACA,OACA,QACA,OACA,SACA,QACA,MACA,OACA,OACA,QACA,MACA,QACA,QACA,QACA,SACA,QACA,OACA,OACA,QACA,QACA,QACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,MACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,SACA,OACA,SACA,SACA,OACA,QACA,QACA,SACA,SACA,OACA,OACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,SACA,OACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,MACA,OACA,SACA,OACA,SACA,OACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,SACA,QACA,QACA,SACA,SACA,QACA,OACA,QACA,MACA,SACA,QACA,OACA,SACA,OACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,OACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,QACA,SACA,QACA,SACA,SACA,SACA,SACA,QACA,OACA,SACA,SACA,QACA,SACA,QACA,MACA,SACA,OACA,QACA,SACA,QACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,QACA,QACA,MACA,SACA,SACA,OACA,OACA,OACA,MACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,SACA,SACA,QACA,SACA,OACA,SACA,OACA,MACA,OACA,MACA,SACA,QACA,OACA,SACA,SACA,QACA,SACA,OACA,QACA,SACA,OACA,QACA,OACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,SACA,SACA,OACA,QACA,SACA,SACA,OACA,OACA,QACA,OACA,SACA,OACA,OACA,SACA,OACA,SACA,SACA,SACA,OACA,MACA,SACA,OACA,SACA,OACA,OACA,SACA,OACA,MACA,OACA,OACA,QACA,QACA,QACA,SACA,OACA,MACA,MACA,OACA,SACA,SACA,SACA,OACA,QACA,QACA,QACA,MACA,OACA,OACA,SACA,OACA,QACA,SACA,QACA,OACA,OACA,OACA,MACA,QACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,OACA,OACA,SACA,QACA,MACA,QACA,SACA,OACA,QACA,MACA,SACA,OACA,SACA,QACA,QACA,QACA,QACA,OACA,MACA,OACA,SACA,OACA,SACA,OACA,MACA,OACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,OACA,OACA,SACA,OACA,OACA,MACA,QACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,QACA,OACA,MACA,SACA,OACA,SACA,QACA,QACA,OACA,OACA,OACA,SACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,OACA,OACA,OACA,OACA,OACA,QACA,QACA,SACA,MACA,QACA,SACA,OACA,MACA,QACA,OACA,QACA,QACA,OACA,QACA,SACA,OACA,OACA,SACA,OACA,SACA,S,yGChgIW,CACX,UACA,UACA,OACA,QACA,QACA,SACA,SACA,WACA,SACA,QACA,SACA,WACA,UACA,SACA,UACA,OACA,WACA,UACA,SACA,MACA,SACA,QACA,UACA,SACA,QACA,MACA,SACA,UACA,SACA,QACA,QACA,UACA,SACA,UACA,SACA,SACA,SACA,QACA,MACA,QACA,QACA,QACA,MACA,MACA,UACA,QACA,QACA,QACA,UACA,QACA,QACA,MACA,QACA,QACA,SACA,QACA,QACA,UACA,OACA,QACA,SACA,UACA,UACA,QACA,SACA,SACA,UACA,SACA,UACA,QACA,QACA,QACA,SACA,QACA,WACA,SACA,UACA,SACA,UACA,UACA,UACA,MACA,QACA,UACA,SACA,QACA,UACA,QACA,OACA,SACA,OACA,QACA,QACA,MACA,QACA,QACA,OACA,SACA,UACA,SACA,SACA,QACA,MACA,WACA,SACA,UACA,MACA,SACA,UACA,QACA,SACA,SACA,SACA,UACA,OACA,SACA,SACA,WACA,UACA,UACA,QACA,SACA,OACA,SACA,OACA,SACA,UACA,UACA,QACA,QACA,QACA,OACA,UACA,QACA,UACA,OACA,OACA,WACA,QACA,QACA,MACA,UACA,UACA,OACA,SACA,SACA,SACA,MACA,SACA,UACA,SACA,OACA,QACA,SACA,SACA,QACA,OACA,SACA,UACA,SACA,OACA,SACA,QACA,SACA,SACA,UACA,QACA,OACA,QACA,UACA,OACA,SACA,SACA,UACA,SACA,UACA,MACA,OACA,OACA,UACA,OACA,QACA,SACA,QACA,QACA,QACA,UACA,QACA,QACA,QACA,QACA,QACA,UACA,SACA,OACA,OACA,QACA,QACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,QACA,SACA,SACA,SACA,OACA,SACA,SACA,MACA,MACA,UACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,QACA,WACA,SACA,SACA,QACA,UACA,QACA,QACA,SACA,QACA,SACA,UACA,QACA,OACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,MACA,WACA,OACA,SACA,QACA,OACA,UACA,QACA,QACA,SACA,OACA,OACA,OACA,OACA,SACA,OACA,MACA,QACA,SACA,QACA,SACA,QACA,SACA,SACA,UACA,UACA,UACA,MACA,SACA,OACA,QACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,SACA,MACA,UACA,QACA,WACA,SACA,SACA,QACA,UACA,OACA,UACA,SACA,SACA,SACA,UACA,SACA,UACA,QACA,QACA,WACA,SACA,QACA,UACA,SACA,QACA,OACA,QACA,QACA,SACA,OACA,SACA,QACA,UACA,QACA,QACA,UACA,SACA,SACA,UACA,UACA,QACA,QACA,QACA,WACA,SACA,UACA,OACA,QACA,QACA,OACA,UACA,OACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,QACA,OACA,QACA,QACA,QACA,QACA,OACA,QACA,UACA,SACA,QACA,QACA,UACA,OACA,SACA,OACA,OACA,UACA,QACA,SACA,UACA,OACA,UACA,QACA,SACA,UACA,UACA,UACA,UACA,WACA,UACA,WACA,UACA,WACA,OACA,OACA,SACA,OACA,QACA,OACA,OACA,UACA,OACA,SACA,QACA,UACA,SACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,OACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,OACA,UACA,QACA,QACA,SACA,OACA,QACA,SACA,QACA,UACA,QACA,SACA,UACA,SACA,QACA,MACA,UACA,OACA,UACA,MACA,WACA,UACA,UACA,UACA,QACA,UACA,SACA,OACA,QACA,MACA,SACA,OACA,QACA,SACA,SACA,OACA,WACA,OACA,MACA,OACA,SACA,SACA,SACA,WACA,SACA,UACA,WACA,WACA,OACA,UACA,SACA,OACA,SACA,QACA,UACA,SACA,SACA,SACA,UACA,OACA,SACA,SACA,UACA,QACA,SACA,SACA,WACA,SACA,SACA,OACA,UACA,UACA,SACA,SACA,UACA,SACA,SACA,UACA,OACA,UACA,QACA,OACA,SACA,OACA,SACA,UACA,UACA,UACA,SACA,WACA,SACA,OACA,WACA,WACA,UACA,OACA,UACA,WACA,UACA,WACA,SACA,SACA,UACA,QACA,SACA,WACA,MACA,OACA,UACA,SACA,SACA,SACA,QACA,OACA,OACA,SACA,OACA,QACA,SACA,QACA,UACA,OACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,OACA,OACA,MACA,OACA,OACA,OACA,SACA,OACA,QACA,OACA,QACA,UACA,QACA,QACA,QACA,OACA,QACA,SACA,OACA,OACA,OACA,UACA,UACA,OACA,OACA,UACA,SACA,MACA,QACA,SACA,QACA,QACA,WACA,UACA,UACA,WACA,WACA,QACA,OACA,SACA,SACA,UACA,SACA,UACA,SACA,UACA,QACA,SACA,QACA,MACA,UACA,UACA,QACA,SACA,UACA,SACA,SACA,UACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,WACA,UACA,QACA,QACA,MACA,QACA,QACA,UACA,QACA,QACA,SACA,QACA,UACA,SACA,UACA,SACA,WACA,OACA,QACA,SACA,QACA,UACA,SACA,WACA,SACA,UACA,SACA,UACA,WACA,UACA,UACA,QACA,QACA,OACA,SACA,SACA,SACA,SACA,UACA,SACA,UACA,SACA,QACA,MACA,UACA,SACA,OACA,UACA,OACA,QACA,QACA,OACA,QACA,OACA,SACA,SACA,MACA,QACA,UACA,OACA,UACA,MACA,QACA,SACA,UACA,QACA,WACA,UACA,WACA,UACA,MACA,OACA,OACA,SACA,QACA,WACA,QACA,QACA,MACA,QACA,UACA,QACA,SACA,OACA,OACA,SACA,QACA,OACA,OACA,SACA,SACA,OACA,OACA,QACA,SACA,OACA,MACA,UACA,MACA,OACA,QACA,QACA,OACA,SACA,OACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,QACA,MACA,OACA,QACA,MACA,OACA,OACA,SACA,OACA,OACA,QACA,SACA,SACA,OACA,UACA,QACA,UACA,SACA,SACA,QACA,MACA,UACA,QACA,WACA,QACA,SACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,OACA,MACA,QACA,UACA,OACA,SACA,SACA,OACA,SACA,UACA,OACA,MACA,SACA,UACA,SACA,SACA,UACA,MACA,OACA,OACA,SACA,QACA,OACA,UACA,SACA,QACA,SACA,UACA,UACA,QACA,QACA,OACA,SACA,SACA,UACA,OACA,OACA,OACA,SACA,QACA,QACA,QACA,UACA,QACA,QACA,QACA,QACA,OACA,OACA,OACA,UACA,OACA,OACA,QACA,UACA,SACA,SACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,UACA,QACA,QACA,OACA,QACA,OACA,UACA,QACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,MACA,MACA,QACA,OACA,OACA,SACA,UACA,OACA,QACA,SACA,OACA,QACA,UACA,MACA,OACA,OACA,SACA,OACA,SACA,QACA,QACA,WACA,SACA,QACA,SACA,OACA,MACA,OACA,SACA,OACA,OACA,OACA,MACA,OACA,UACA,QACA,SACA,OACA,OACA,UACA,SACA,OACA,QACA,OACA,OACA,OACA,SACA,QACA,WACA,OACA,QACA,OACA,QACA,MACA,OACA,QACA,SACA,QACA,UACA,SACA,OACA,SACA,QACA,OACA,UACA,SACA,MACA,OACA,OACA,WACA,OACA,SACA,MACA,UACA,UACA,QACA,UACA,UACA,SACA,SACA,SACA,UACA,UACA,OACA,UACA,SACA,WACA,QACA,WACA,SACA,WACA,SACA,UACA,SACA,SACA,UACA,UACA,SACA,SACA,SACA,QACA,WACA,QACA,UACA,SACA,SACA,SACA,UACA,UACA,SACA,WACA,OACA,SACA,SACA,UACA,OACA,SACA,UACA,QACA,OACA,QACA,SACA,SACA,MACA,OACA,UACA,QACA,QACA,QACA,MACA,OACA,OACA,UACA,MACA,QACA,QACA,OACA,SACA,SACA,OACA,OACA,WACA,OACA,OACA,UACA,MACA,OACA,MACA,SACA,OACA,UACA,OACA,MACA,UACA,OACA,SACA,OACA,OACA,QACA,QACA,OACA,MACA,QACA,QACA,SACA,OACA,OACA,OACA,WACA,SACA,QACA,QACA,QACA,QACA,UACA,OACA,MACA,OACA,UACA,QACA,OACA,SACA,OACA,QACA,QACA,UACA,OACA,MACA,QACA,SACA,UACA,QACA,OACA,SACA,OACA,UACA,SACA,SACA,QACA,OACA,UACA,UACA,UACA,OACA,OACA,QACA,OACA,OACA,QACA,OACA,OACA,SACA,OACA,SACA,OACA,SACA,OACA,OACA,UACA,QACA,OACA,QACA,SACA,OACA,OACA,UACA,OACA,SACA,OACA,QACA,QACA,UACA,SACA,QACA,QACA,SACA,SACA,UACA,MACA,QACA,SACA,OACA,OACA,OACA,QACA,OACA,SACA,MACA,SACA,UACA,QACA,UACA,SACA,QACA,SACA,QACA,SACA,SACA,SACA,WACA,OACA,OACA,SACA,QACA,WACA,OACA,SACA,SACA,UACA,OACA,SACA,OACA,UACA,OACA,WACA,QACA,QACA,SACA,OACA,SACA,SACA,UACA,OACA,QACA,QACA,QACA,QACA,OACA,UACA,QACA,SACA,SACA,WACA,OACA,UACA,QACA,OACA,UACA,QACA,SACA,UACA,SACA,SACA,OACA,UACA,MACA,QACA,UACA,SACA,QACA,SACA,MACA,SACA,UACA,SACA,UACA,QACA,OACA,QACA,OACA,UACA,WACA,SACA,SACA,QACA,WACA,QACA,OACA,QACA,OACA,SACA,OACA,WACA,SACA,SACA,WACA,QACA,OACA,SACA,SACA,UACA,OACA,QACA,OACA,SACA,SACA,QACA,SACA,SACA,OACA,OACA,OACA,WACA,UACA,UACA,SACA,QACA,OACA,MACA,UACA,UACA,QACA,OACA,OACA,OACA,QACA,QACA,QACA,UACA,SACA,SACA,QACA,OACA,UACA,OACA,UACA,SACA,QACA,MACA,UACA,SACA,QACA,MACA,MACA,OACA,SACA,SACA,UACA,UACA,SACA,UACA,QACA,QACA,UACA,OACA,MACA,QACA,SACA,QACA,MACA,OACA,MACA,QACA,UACA,OACA,OACA,MACA,QACA,SACA,OACA,OACA,QACA,UACA,SACA,SACA,SACA,QACA,UACA,QACA,WACA,QACA,SACA,WACA,SACA,UACA,QACA,UACA,QACA,SACA,UACA,OACA,OACA,OACA,MACA,QACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,SACA,OACA,QACA,QACA,QACA,UACA,QACA,SACA,SACA,OACA,SACA,QACA,OACA,QACA,OACA,UACA,SACA,UACA,QACA,OACA,UACA,QACA,SACA,OACA,UACA,UACA,MACA,UACA,SACA,SACA,SACA,UACA,SACA,SACA,MACA,QACA,QACA,SACA,WACA,QACA,SACA,UACA,QACA,MACA,SACA,OACA,QACA,OACA,UACA,OACA,SACA,QACA,QACA,QACA,SACA,UACA,QACA,OACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,QACA,QACA,OACA,SACA,OACA,OACA,OACA,UACA,UACA,WACA,WACA,OACA,SACA,UACA,UACA,SACA,QACA,WACA,SACA,UACA,SACA,UACA,UACA,SACA,UACA,QACA,QACA,UACA,QACA,WACA,SACA,UACA,QACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,QACA,WACA,UACA,UACA,QACA,UACA,SACA,UACA,OACA,OACA,QACA,UACA,QACA,QACA,QACA,WACA,SACA,UACA,QACA,OACA,MACA,SACA,UACA,UACA,UACA,UACA,WACA,QACA,OACA,OACA,QACA,SACA,UACA,OACA,OACA,QACA,QACA,OACA,OACA,QACA,QACA,OACA,QACA,SACA,QACA,QACA,OACA,OACA,SACA,QACA,MACA,QACA,QACA,OACA,SACA,QACA,UACA,SACA,UACA,SACA,SACA,UACA,SACA,UACA,SACA,SACA,SACA,SACA,UACA,SACA,QACA,UACA,SACA,OACA,SACA,WACA,SACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,UACA,SACA,UACA,SACA,WACA,SACA,WACA,WACA,SACA,SACA,UACA,SACA,UACA,SACA,SACA,SACA,SACA,MACA,SACA,OACA,OACA,OACA,QACA,QACA,QACA,QACA,OACA,OACA,SACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,SACA,SACA,UACA,OACA,SACA,OACA,OACA,SACA,QACA,QACA,QACA,QACA,SACA,OACA,MACA,OACA,MACA,SACA,QACA,MACA,SACA,UACA,OACA,OACA,QACA,SACA,QACA,OACA,SACA,OACA,SACA,OACA,UACA,UACA,QACA,UACA,OACA,MACA,QACA,OACA,QACA,UACA,QACA,SACA,SACA,UACA,WACA,WACA,QACA,QACA,SACA,SACA,QACA,MACA,SACA,SACA,OACA,SACA,SACA,UACA,WACA,OACA,OACA,UACA,SACA,OACA,UACA,SACA,QACA,WACA,SACA,UACA,UACA,SACA,QACA,QACA,SACA,QACA,UACA,QACA,OACA,QACA,UACA,SACA,QACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,QACA,WACA,QACA,SACA,QACA,UACA,MACA,UACA,OACA,OACA,QACA,QACA,OACA,SACA,OACA,QACA,SACA,UACA,SACA,QACA,OACA,QACA,SACA,UACA,MACA,OACA,QACA,SACA,MACA,QACA,OACA,QACA,QACA,OACA,OACA,QACA,UACA,QACA,QACA,SACA,OACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,OACA,OACA,OACA,QACA,UACA,QACA,WACA,QACA,UACA,OACA,OACA,QACA,OACA,OACA,QACA,OACA,SACA,QACA,QACA,QACA,UACA,QACA,QACA,UACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,OACA,SACA,QACA,QACA,UACA,QACA,QACA,OACA,QACA,SACA,SACA,MACA,SACA,UACA,WACA,SACA,UACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,OACA,OACA,SACA,QACA,QACA,QACA,QACA,UACA,QACA,QACA,QACA,QACA,WACA,SACA,SACA,SACA,WACA,UACA,QACA,UACA,QACA,UACA,SACA,SACA,UACA,OACA,SACA,SACA,QACA,UACA,OACA,SACA,MACA,QACA,SACA,QACA,SACA,UACA,OACA,UACA,QACA,WACA,WACA,SACA,UACA,UACA,UACA,QACA,OACA,QACA,QACA,QACA,QACA,OACA,QACA,SACA,QACA,SACA,UACA,QACA,SACA,QACA,SACA,MACA,OACA,SACA,OACA,OACA,OACA,SACA,OACA,QACA,SACA,OACA,QACA,OACA,OACA,MACA,SACA,SACA,OACA,OACA,OACA,OACA,QACA,OACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,UACA,QACA,SACA,QACA,QACA,UACA,SACA,OACA,QACA,OACA,SACA,OACA,OACA,MACA,QACA,SACA,QACA,QACA,UACA,QACA,UACA,MACA,WACA,SACA,QACA,SACA,WACA,OACA,SACA,UACA,OACA,QACA,MACA,QACA,SACA,QACA,UACA,WACA,OACA,QACA,UACA,SACA,QACA,OACA,MACA,QACA,QACA,UACA,SACA,QACA,WACA,OACA,QACA,SACA,OACA,QACA,OACA,QACA,QACA,QACA,QACA,UACA,OACA,OACA,SACA,UACA,QACA,OACA,QACA,UACA,QACA,QACA,MACA,OACA,UACA,SACA,OACA,SACA,SACA,OACA,SACA,SACA,SACA,QACA,OACA,QACA,MACA,OACA,UACA,OACA,WACA,SACA,UACA,QACA,UACA,QACA,OACA,SACA,SACA,UACA,UACA,SACA,OACA,WACA,UACA,SACA,QACA,UACA,SACA,SACA,UACA,SACA,OACA,QACA,QACA,QACA,OACA,QACA,MACA,OACA,SACA,UACA,QACA,UACA,SACA,SACA,QACA,QACA,SACA,QACA,MACA,SACA,QACA,UACA,OACA,QACA,UACA,SACA,SACA,UACA,QACA,OACA,SACA,UACA,OACA,SACA,UACA,SACA,UACA,UACA,UACA,QACA,OACA,UACA,UACA,SACA,UACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,QACA,OACA,UACA,SACA,OACA,SACA,OACA,QACA,OACA,OACA,OACA,SACA,OACA,UACA,OACA,UACA,OACA,OACA,QACA,QACA,OACA,MACA,SACA,SACA,OACA,SACA,UACA,MACA,UACA,UACA,QACA,UACA,OACA,MACA,QACA,OACA,QACA,QACA,OACA,QACA,OACA,UACA,OACA,QACA,OACA,OACA,OACA,MACA,SACA,OACA,OACA,OACA,SACA,SACA,OACA,SACA,OACA,OACA,UACA,OACA,QACA,SACA,OACA,OACA,OACA,OACA,QACA,QACA,QACA,OACA,QACA,UACA,QACA,QACA,QACA,OACA,OACA,SACA,MACA,QACA,QACA,QACA,OACA,OACA,Q,wICt7DG,SAAcgJ,GAGjB,IAFA,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CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,kEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,sEAIN54C,IAAK,CACHpnB,IAAK,EACLggE,OAAQ,CACN,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,iEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,mEAE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1iH,KAAK2G,GACf,IAAIuF,EAAI,mBAGR,OAFAw2G,EAAQ8mE,QAAQt9K,EAAGA,GACnBw2G,EAAQinE,WAAWz9K,IACZ,EAEX,MAAOT,GACH,OAAOA,IAEI,KAAXA,EAAEuF,MAEa,OAAXvF,EAAEuF,MAGS,uBAAXvF,EAAE1O,MAES,+BAAX0O,EAAE1O,OAED2lH,GAA8B,IAAnBA,EAAQ3jH,QAlC3B6qL,CAAiB,yBACX5C,EAAO5oL,UAAUu4E,YACjBqwG,EAAO5oL,UAAUqrL,M,MAmCbjnD,E,ywWCjWf,aAKA,YACA,WACA,YACA,WACA,YAEA,YACA,YACA,YACA,YACA,YACA,YACA,WACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,WACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,WACA,YACA,YACA,YACA,YACA,WACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,YACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aAEA,aACA,aACA,aACA,YAsBA,O,cAN2B,CACvBwG,QAAS,UACTC,QAAS,UACTC,WAAY,e,8mBCzIKrpG,E,4CAKjB,WAAYmT,EAAM3H,GAAW,mCACzB,gBAMKsf,MAAgB,MAAR3X,EAAe,GAAKA,EAKjC,EAAK4X,WAA0B,MAAbvf,EAAoB,KAAOA,EAZpB,E,4CAyC7B,WACI,OAAOvqC,KAAK8pD,a,0BAOhB,SAAavf,GAET,OADAvqC,KAAK8pD,WAAavf,EACXvqC,O,kBAOX,WAAc,MACV,OAAO,EAAAA,KAAK6pD,OAAMhhD,KAAX,qB,oBASX,SAAOrC,EAAOujD,GAAuB,6BAAPC,EAAO,iCAAPA,EAAO,kBACjC,OAAO,IAAIjrB,GACP,EAAA/+B,KAAK6pD,OAAMhyB,OAAX,SAAkBrxB,EAAOujD,GAAzB,OAAyCC,IACzChqD,KAAKuqC,a,mBASb,SAAM/jC,EAAOC,GACT,OAAO,IAAIs4B,EAAQ/+B,KAAK6pD,MAAMvkD,MAAMkB,EAAOC,GAAMzG,KAAKuqC,a,aAM1D,WACI,OAAOvqC,KAAK6pD,MAAMptD,OAAO+B,c,qBAM7B,WACI,OAAOwB,KAAK6pD,MAAMvkD,U,sBAMtB,WACI,OAAOmlC,KAAKC,UAAU,CAClBH,UAAWvqC,KAAK8pD,WAChB5X,KAAMlyC,KAAK6pD,MAAM7nD,gB,iBArFzB,WAAmB,2BAANkwC,EAAM,yBAANA,EAAM,gBACf,OAAO,IAAInT,EAAQmT,EAAM,Q,kBAU7B,SAAY+X,EAAWC,EAAOC,GAC1B,OACW,IAAIprB,EADF,MAATmrB,EACmB39C,MAAM7H,KAAKulD,GAGf19C,MAAM7H,KAAKulD,EAAWC,EAAOC,Q,GA7CxD,UAKqC7oD,QA4FhC7E,OAAO+B,U,sICjGG,CACX,QACA,QACA,QACA,QACA,SACA,OACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,MACA,OACA,SACA,OACA,SACA,QACA,OACA,SACA,MACA,SACA,SACA,QACA,SACA,QACA,OACA,QACA,MACA,QACA,SACA,QACA,SACA,SACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,MACA,SACA,SACA,QACA,SACA,QACA,MACA,QACA,QACA,SACA,QACA,MACA,OACA,MACA,MACA,SACA,OACA,OACA,QACA,SACA,SACA,QACA,MACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,MACA,QACA,SACA,QACA,QACA,OACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,QACA,OACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,MACA,SACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,MACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,QACA,QACA,OACA,SACA,SACA,OACA,SACA,SACA,MACA,OACA,QACA,OACA,QACA,MACA,MACA,SACA,OACA,QACA,SACA,SACA,QACA,SACA,SACA,QACA,QACA,MACA,SACA,SACA,SACA,SACA,MACA,QACA,SACA,QACA,MACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,MACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,SACA,SACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,SACA,MACA,OACA,QACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,SACA,QACA,MACA,QACA,QACA,MACA,QACA,OACA,OACA,OACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,SACA,MACA,QACA,SACA,OACA,OACA,OACA,MACA,SACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,SACA,SACA,SACA,OACA,QACA,QACA,QACA,QACA,SACA,OACA,MACA,QACA,OACA,QACA,SACA,MACA,QACA,SACA,OACA,OACA,OACA,OACA,QACA,QACA,OACA,SACA,SACA,MACA,QACA,OACA,QACA,OACA,OACA,OACA,SACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,QACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,QACA,OACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,OACA,SACA,MACA,OACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,MACA,MACA,SACA,OACA,OACA,OACA,MACA,SACA,OACA,SACA,QACA,OACA,SACA,QACA,SACA,MACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,OACA,SACA,OACA,OACA,QACA,QACA,OACA,QACA,OACA,QACA,QACA,OACA,MACA,SACA,OACA,QACA,OACA,OACA,OACA,OACA,SACA,OACA,OACA,OACA,SACA,QACA,OACA,OACA,OACA,QACA,OACA,QACA,QACA,SACA,OACA,SACA,QACA,OACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,MACA,QACA,OACA,MACA,MACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,OACA,QACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,QACA,OACA,QACA,OACA,QACA,OACA,SACA,QACA,OACA,QACA,QACA,SACA,OACA,QACA,SACA,SACA,SACA,SACA,QACA,OACA,QACA,SACA,QACA,OACA,MACA,OACA,OACA,SACA,OACA,MACA,SACA,OACA,SACA,SACA,MACA,QACA,OACA,MACA,OACA,MACA,QACA,QACA,QACA,SACA,SACA,OACA,QACA,QACA,SACA,OACA,OACA,OACA,SACA,OACA,SACA,OACA,QACA,SACA,OACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,OACA,SACA,QACA,SACA,SACA,SACA,MACA,OACA,MACA,SACA,OACA,OACA,SACA,SACA,QACA,OACA,SACA,QACA,OACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,OACA,OACA,SACA,SACA,MACA,QACA,QACA,SACA,SACA,SACA,QACA,OACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,OACA,SACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,QACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,OACA,QACA,OACA,SACA,QACA,SACA,OACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,OACA,OACA,QACA,QACA,OACA,QACA,SACA,OACA,OACA,QACA,QACA,QACA,SACA,OACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,OACA,OACA,SACA,QACA,SACA,QACA,OACA,SACA,QACA,OACA,OACA,SACA,QACA,OACA,OACA,QACA,OACA,SACA,SACA,SACA,OACA,OACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,OACA,SACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,OACA,OACA,SACA,OACA,QACA,OACA,OACA,OACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,QACA,QACA,QACA,QACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,QACA,SACA,MACA,SACA,SACA,OACA,OACA,QACA,SACA,QACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,SACA,SACA,SACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,OACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,OACA,MACA,QACA,OACA,OACA,QACA,SACA,OACA,OACA,MACA,OACA,OACA,SACA,OACA,QACA,QACA,SACA,QACA,OACA,SACA,MACA,OACA,QACA,SACA,QACA,QACA,MACA,QACA,SACA,QACA,QACA,QACA,OACA,MACA,SACA,OACA,SACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,MACA,OACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,SACA,QACA,SACA,OACA,SACA,SACA,QACA,SACA,SACA,OACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,QACA,QACA,OACA,SACA,MACA,MACA,SACA,OACA,SACA,MACA,SACA,QACA,OACA,SACA,SACA,QACA,MACA,OACA,SACA,OACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,MACA,QACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,OACA,SACA,OACA,MACA,SACA,QACA,QACA,OACA,OACA,OACA,QACA,QACA,OACA,SACA,QACA,QACA,QACA,OACA,SACA,QACA,QACA,SACA,QACA,OACA,QACA,QACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,QACA,MACA,OACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,OACA,OACA,SACA,SACA,OACA,OACA,QACA,QACA,OACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,MACA,OACA,QACA,OACA,QACA,OACA,QACA,SACA,OACA,SACA,OACA,MACA,QACA,QACA,OACA,OACA,OACA,OACA,SACA,QACA,OACA,SACA,MACA,QACA,SACA,SACA,SACA,MACA,MACA,QACA,SACA,SACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,QACA,SACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,OACA,SACA,OACA,QACA,QACA,SACA,QACA,SACA,MACA,QACA,OACA,QACA,SACA,SACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,QACA,MACA,OACA,QACA,OACA,QACA,QACA,OACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,MACA,OACA,SACA,OACA,SACA,OACA,SACA,OACA,OACA,QACA,OACA,SACA,QACA,QACA,OACA,SACA,OACA,QACA,SACA,OACA,SACA,SACA,SACA,MACA,QACA,MACA,QACA,OACA,OACA,SACA,OACA,SACA,SACA,MACA,QACA,OACA,SACA,QACA,QACA,SACA,QACA,OACA,QACA,OACA,MACA,MACA,SACA,OACA,OACA,OACA,OACA,SACA,OACA,SACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,MACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,QACA,MACA,QACA,SACA,OACA,OACA,SACA,SACA,OACA,SACA,QACA,SACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,OACA,MACA,SACA,OACA,MACA,OACA,QACA,OACA,QACA,QACA,OACA,QACA,QACA,QACA,OACA,SACA,OACA,OACA,OACA,SACA,QACA,QACA,SACA,OACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,OACA,SACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,OACA,MACA,QACA,OACA,OACA,QACA,QACA,MACA,OACA,OACA,OACA,SACA,QACA,OACA,SACA,OACA,OACA,OACA,OACA,MACA,SACA,QACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,OACA,QACA,QACA,QACA,SACA,SACA,OACA,QACA,OACA,SACA,MACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,OACA,QACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,OACA,OACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,MACA,QACA,OACA,OACA,QACA,QACA,MACA,OACA,QACA,MACA,QACA,OACA,OACA,SACA,OACA,QACA,SACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,OACA,QACA,SACA,OACA,MACA,SACA,SACA,SACA,MACA,OACA,OACA,SACA,QACA,QACA,OACA,OACA,OACA,QACA,MACA,SACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,OACA,MACA,SACA,QACA,QACA,OACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,OACA,QACA,SACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,OACA,OACA,OACA,MACA,OACA,OACA,OACA,SACA,OACA,OACA,OACA,MACA,OACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,MACA,SACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,QACA,QACA,OACA,OACA,OACA,QACA,QACA,OACA,OACA,QACA,OACA,OACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,OACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,OACA,QACA,MACA,SACA,OACA,MACA,MACA,QACA,QACA,OACA,MACA,OACA,OACA,QACA,QACA,OACA,OACA,OACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,SACA,QACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,OACA,QACA,OACA,OACA,QACA,QACA,MACA,OACA,SACA,QACA,SACA,QACA,MACA,QACA,OACA,OACA,QACA,SACA,OACA,QACA,QACA,SACA,OACA,MACA,SACA,OACA,QACA,OACA,OACA,OACA,SACA,OACA,OACA,QACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,OACA,QACA,SACA,OACA,OACA,SACA,QACA,OACA,QACA,OACA,SACA,OACA,OACA,QACA,QACA,MACA,SACA,OACA,OACA,OACA,SACA,SACA,SACA,OACA,SACA,SACA,MACA,SACA,OACA,SACA,OACA,OACA,SACA,SACA,OACA,MACA,OACA,SACA,OACA,SACA,OACA,MACA,OACA,MACA,OACA,QACA,SACA,QACA,SACA,OACA,SACA,OACA,SACA,QACA,OACA,OACA,SACA,QACA,OACA,OACA,OACA,OACA,SACA,SACA,QACA,OACA,OACA,MACA,QACA,QACA,OACA,QACA,QACA,MACA,OACA,OACA,QACA,SACA,SACA,QACA,OACA,SACA,SACA,OACA,SACA,OACA,QACA,OACA,OACA,MACA,SACA,OACA,SACA,MACA,QACA,OACA,QACA,OACA,QACA,QACA,QACA,OACA,OACA,OACA,SACA,SACA,MACA,QACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,OACA,SACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,MACA,SACA,SACA,QACA,SACA,MACA,SACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,OACA,QACA,OACA,SACA,QACA,QACA,SACA,SACA,OACA,SACA,QACA,QACA,OACA,OACA,SACA,OACA,QACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,OACA,QACA,SACA,OACA,MACA,OACA,OACA,QACA,QACA,OACA,MACA,QACA,SACA,MACA,MACA,OACA,SACA,MACA,OACA,OACA,QACA,OACA,QACA,OACA,SACA,SACA,MACA,SACA,SACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,OACA,OACA,SACA,SACA,OACA,QACA,OACA,OACA,SACA,SACA,OACA,OACA,OACA,OACA,SACA,QACA,OACA,SACA,SACA,MACA,QACA,OACA,MACA,SACA,SACA,OACA,SACA,MACA,OACA,SACA,OACA,OACA,OACA,SACA,QACA,OACA,QACA,OACA,QACA,SACA,OACA,OACA,QACA,OACA,OACA,QACA,QACA,QACA,SACA,QACA,OACA,OACA,MACA,SACA,QACA,OACA,SACA,QACA,OACA,OACA,OACA,OACA,QACA,OACA,OACA,MACA,QACA,QACA,SACA,QACA,OACA,QACA,OACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,SACA,MACA,SACA,OACA,SACA,MACA,QACA,SACA,OACA,OACA,SACA,OACA,QACA,SACA,OACA,QACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,OACA,MACA,SACA,QACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,MACA,QACA,SACA,OACA,SACA,SACA,SACA,OACA,MACA,SACA,SACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,MACA,MACA,OACA,OACA,OACA,OACA,QACA,OACA,SACA,OACA,OACA,QACA,OACA,OACA,SACA,QACA,SACA,OACA,OACA,OACA,MACA,SACA,SACA,OACA,SACA,MACA,OACA,SACA,QACA,MACA,SACA,OACA,OACA,OACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,QACA,MACA,QACA,OACA,SACA,OACA,SACA,OACA,SACA,OACA,OACA,QACA,SACA,OACA,OACA,QACA,OACA,OACA,OACA,MACA,SACA,QACA,OACA,SACA,SACA,QACA,OACA,SACA,QACA,MACA,QACA,SACA,QACA,QACA,OACA,QACA,OACA,OACA,OACA,QACA,SACA,QACA,QACA,OACA,OACA,QACA,OACA,OACA,OACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,OACA,QACA,QACA,QACA,SACA,SACA,SACA,OACA,SACA,OACA,OACA,SACA,QACA,OACA,QACA,OACA,SACA,OACA,OACA,SACA,SACA,OACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,OACA,MACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,OACA,SACA,QACA,OACA,QACA,SACA,SACA,OACA,OACA,QACA,OACA,OACA,SACA,MACA,QACA,OACA,SACA,SACA,SACA,QACA,MACA,QACA,QACA,OACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,QACA,SACA,QACA,SACA,OACA,SACA,SACA,QACA,OACA,SACA,OACA,SACA,SACA,OACA,SACA,SACA,OACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,OACA,OACA,QACA,MACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,QACA,SACA,MACA,SACA,SACA,QACA,SACA,QACA,SACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,QACA,OACA,OACA,OACA,OACA,QACA,OACA,QACA,SACA,OACA,SACA,QACA,SACA,OACA,OACA,QACA,OACA,MACA,OACA,OACA,MACA,SACA,OACA,OACA,QACA,QACA,SACA,SACA,SACA,SACA,QACA,QACA,OACA,OACA,SACA,SACA,SACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,OACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,MACA,OACA,OACA,QACA,MACA,SACA,QACA,OACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,QACA,OACA,QACA,OACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,OACA,SACA,OACA,OACA,SACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,MACA,SACA,QACA,QACA,OACA,OACA,SACA,QACA,SACA,QACA,QACA,OACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,MACA,OACA,SACA,QACA,SACA,OACA,OACA,MACA,OACA,SACA,SACA,SACA,OACA,QACA,SACA,MACA,SACA,OACA,OACA,SACA,QACA,MACA,QACA,QACA,MACA,MACA,QACA,OACA,QACA,OACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,MACA,MACA,SACA,QACA,SACA,SACA,QACA,OACA,MACA,OACA,OACA,MACA,QACA,SACA,QACA,QACA,OACA,OACA,OACA,MACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,OACA,SACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,MACA,MACA,QACA,SACA,SACA,OACA,OACA,OACA,QACA,MACA,QACA,MACA,MACA,QACA,SACA,QACA,SACA,SACA,QACA,OACA,OACA,SACA,OACA,MACA,SACA,QACA,QACA,OACA,OACA,OACA,QACA,OACA,SACA,OACA,OACA,MACA,SACA,QACA,QACA,OACA,QACA,QACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,SACA,OACA,OACA,QACA,SACA,SACA,SACA,MACA,QACA,SACA,OACA,QACA,SACA,SACA,OACA,QACA,OACA,MACA,OACA,MACA,QACA,QACA,OACA,OACA,QACA,QACA,OACA,OACA,SACA,SACA,SACA,MACA,QACA,QACA,SACA,QACA,SACA,SACA,MACA,QACA,QACA,SACA,SACA,SACA,SACA,OACA,OACA,MACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,SACA,MACA,QACA,OACA,SACA,QACA,MACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,QACA,MACA,QACA,OACA,OACA,OACA,QACA,OACA,SACA,OACA,SACA,SACA,MACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,OACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,OACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,OACA,OACA,OACA,QACA,SACA,SACA,OACA,QACA,SACA,OACA,OACA,SACA,SACA,QACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,OACA,SACA,OACA,OACA,SACA,OACA,OACA,OACA,SACA,MACA,QACA,OACA,OACA,OACA,SACA,OACA,OACA,OACA,SACA,MACA,SACA,SACA,QACA,QACA,OACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,QACA,MACA,QACA,SACA,SACA,MACA,SACA,OACA,OACA,OACA,SACA,SACA,QACA,OACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,SACA,QACA,SACA,OACA,QACA,MACA,OACA,SACA,SACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,SACA,SACA,OACA,OACA,OACA,OACA,OACA,QACA,QACA,OACA,QACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,OACA,SACA,SACA,OACA,MACA,OACA,SACA,SACA,QACA,SACA,OACA,QACA,MACA,MACA,QACA,QACA,QACA,OACA,SACA,QACA,OACA,SACA,QACA,OACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,MACA,SACA,OACA,SACA,OACA,OACA,OACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,QACA,QACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,MACA,QACA,QACA,QACA,SACA,SACA,OACA,OACA,OACA,MACA,OACA,QACA,QACA,OACA,QACA,OACA,QACA,QACA,OACA,MACA,OACA,QACA,OACA,OACA,QACA,SACA,OACA,OACA,QACA,OACA,SACA,OACA,QACA,QACA,OACA,OACA,QACA,MACA,OACA,SACA,QACA,QACA,SACA,OACA,SACA,QACA,MACA,OACA,SACA,QACA,OACA,OACA,QACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,MACA,SACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,MACA,SACA,SACA,OACA,SACA,OACA,MACA,QACA,OACA,OACA,QACA,SACA,OACA,MACA,OACA,OACA,SACA,QACA,OACA,SACA,OACA,SACA,QACA,OACA,SACA,MACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,OACA,SACA,QACA,OACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,OACA,QACA,SACA,MACA,OACA,SACA,OACA,QACA,OACA,OACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,MACA,MACA,QACA,QACA,OACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,QACA,OACA,MACA,OACA,OACA,SACA,SACA,SACA,OACA,SACA,SACA,OACA,SACA,SACA,MACA,OACA,SACA,OACA,OACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,SACA,OACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,MACA,SACA,QACA,SACA,MACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,OACA,QACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,OACA,MACA,QACA,OACA,OACA,QACA,OACA,QACA,QACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,QACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,OACA,MACA,OACA,QACA,SACA,MACA,OACA,SACA,MACA,QACA,QACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,QACA,MACA,OACA,QACA,QACA,OACA,QACA,OACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,SACA,OACA,QACA,QACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,OACA,OACA,QACA,SACA,SACA,OACA,SACA,QACA,OACA,SACA,SACA,OACA,OACA,SACA,SACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,QACA,OACA,QACA,OACA,MACA,QACA,SACA,OACA,QACA,OACA,OACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,OACA,QACA,OACA,OACA,SACA,SACA,MACA,QACA,QACA,QACA,OACA,QACA,QACA,SACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,QACA,QACA,OACA,SACA,QACA,SACA,SACA,OACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,SACA,QACA,SACA,QACA,SACA,SACA,OACA,QACA,SACA,SACA,QACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,OACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,SACA,OACA,SACA,QACA,OACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,MACA,OACA,SACA,QACA,OACA,QACA,SACA,SACA,SACA,MACA,SACA,SACA,SACA,MACA,SACA,QACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,OACA,QACA,SACA,SACA,QACA,OACA,OACA,QACA,OACA,QACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,SACA,OACA,SACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,MACA,SACA,SACA,OACA,MACA,OACA,SACA,SACA,OACA,OACA,SACA,OACA,QACA,QACA,SACA,SACA,OACA,SACA,MACA,OACA,MACA,QACA,OACA,OACA,OACA,QACA,OACA,QACA,OACA,SACA,SACA,QACA,QACA,MACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,OACA,QACA,SACA,SACA,OACA,SACA,QACA,OACA,QACA,OACA,QACA,OACA,OACA,QACA,SACA,SACA,QACA,QACA,SACA,OACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,OACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,OACA,OACA,MACA,OACA,QACA,QACA,OACA,OACA,OACA,SACA,OACA,QACA,MACA,OACA,MACA,OACA,SACA,QACA,OACA,QACA,QACA,MACA,SACA,QACA,QACA,OACA,OACA,MACA,SACA,OACA,QACA,OACA,SACA,QACA,MACA,OACA,OACA,QACA,MACA,QACA,QACA,QACA,SACA,QACA,OACA,OACA,QACA,QACA,QACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,MACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,SACA,OACA,SACA,SACA,OACA,QACA,QACA,SACA,SACA,OACA,OACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,SACA,OACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,MACA,OACA,SACA,OACA,SACA,OACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,SACA,QACA,QACA,SACA,SACA,QACA,OACA,QACA,MACA,SACA,QACA,OACA,SACA,OACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,OACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,QACA,SACA,QACA,SACA,SACA,SACA,SACA,QACA,OACA,SACA,SACA,QACA,SACA,QACA,MACA,SACA,OACA,QACA,SACA,QACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,QACA,QACA,MACA,SACA,SACA,OACA,OACA,OACA,MACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,SACA,SACA,QACA,SACA,OACA,SACA,OACA,MACA,OACA,MACA,SACA,QACA,OACA,SACA,SACA,QACA,SACA,OACA,QACA,SACA,OACA,QACA,OACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,SACA,SACA,OACA,QACA,SACA,SACA,OACA,OACA,QACA,OACA,SACA,OACA,OACA,SACA,OACA,SACA,SACA,SACA,OACA,MACA,SACA,OACA,SACA,OACA,OACA,SACA,OACA,MACA,OACA,OACA,QACA,QACA,QACA,SACA,OACA,MACA,MACA,OACA,SACA,SACA,SACA,OACA,QACA,QACA,QACA,MACA,OACA,OACA,SACA,OACA,QACA,SACA,QACA,OACA,OACA,OACA,MACA,QACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,OACA,OACA,SACA,QACA,MACA,QACA,SACA,OACA,QACA,MACA,SACA,OACA,SACA,QACA,QACA,QACA,QACA,OACA,MACA,OACA,SACA,OACA,SACA,OACA,MACA,OACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,OACA,OACA,SACA,OACA,OACA,MACA,QACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,QACA,OACA,MACA,SACA,OACA,SACA,QACA,QACA,OACA,OACA,OACA,SACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,OACA,OACA,OACA,OACA,OACA,QACA,QACA,SACA,MACA,QACA,SACA,OACA,MACA,QACA,OACA,QACA,QACA,OACA,QACA,SACA,OACA,OACA,SACA,OACA,SACA,S,yGChgIW,CACX,UACA,UACA,OACA,QACA,QACA,SACA,SACA,WACA,SACA,QACA,SACA,WACA,UACA,SACA,UACA,OACA,WACA,UACA,SACA,MACA,SACA,QACA,UACA,SACA,QACA,MACA,SACA,UACA,SACA,QACA,QACA,UACA,SACA,UACA,SACA,SACA,SACA,QACA,MACA,QACA,QACA,QACA,MACA,MACA,UACA,QACA,QACA,QACA,UACA,QACA,QACA,MACA,QACA,QACA,SACA,QACA,QACA,UACA,OACA,QACA,SACA,UACA,UACA,QACA,SACA,SACA,UACA,SACA,UACA,QACA,QACA,QACA,SACA,QACA,WACA,SACA,UACA,SACA,UACA,UACA,UACA,MACA,QACA,UACA,SACA,QACA,UACA,QACA,OACA,SACA,OACA,QACA,QACA,MACA,QACA,QACA,OACA,SACA,UACA,SACA,SACA,QACA,MACA,WACA,SACA,UACA,MACA,SACA,UACA,QACA,SACA,SACA,SACA,UACA,OACA,SACA,SACA,WACA,UACA,UACA,QACA,SACA,OACA,SACA,OACA,SACA,UACA,UACA,QACA,QACA,QACA,OACA,UACA,QACA,UACA,OACA,OACA,WACA,QACA,QACA,MACA,UACA,UACA,OACA,SACA,SACA,SACA,MACA,SACA,UACA,SACA,OACA,QACA,SACA,SACA,QACA,OACA,SACA,UACA,SACA,OACA,SACA,QACA,SACA,SACA,UACA,QACA,OACA,QACA,UACA,OACA,SACA,SACA,UACA,SACA,UACA,MACA,OACA,OACA,UACA,OACA,QACA,SACA,QACA,QACA,QACA,UACA,QACA,QACA,QACA,QACA,QACA,UACA,SACA,OACA,OACA,QACA,QACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,QACA,SACA,SACA,SACA,OACA,SACA,SACA,MACA,MACA,UACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,QACA,WACA,SACA,SACA,QACA,UACA,QACA,QACA,SACA,QACA,SACA,UACA,QACA,OACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,MACA,WACA,OACA,SACA,QACA,OACA,UACA,QACA,QACA,SACA,OACA,OACA,OACA,OACA,SACA,OACA,MACA,QACA,SACA,QACA,SACA,QACA,SACA,SACA,UACA,UACA,UACA,MACA,SACA,OACA,QACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,SACA,MACA,UACA,QACA,WACA,SACA,SACA,QACA,UACA,OACA,UACA,SACA,SACA,SACA,UACA,SACA,UACA,QACA,QACA,WACA,SACA,QACA,UACA,SACA,QACA,OACA,QACA,QACA,SACA,OACA,SACA,QACA,UACA,QACA,QACA,UACA,SACA,SACA,UACA,UACA,QACA,QACA,QACA,WACA,SACA,UACA,OACA,QACA,QACA,OACA,UACA,OACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,QACA,OACA,QACA,QACA,QACA,QACA,OACA,QACA,UACA,SACA,QACA,QACA,UACA,OACA,SACA,OACA,OACA,UACA,QACA,SACA,UACA,OACA,UACA,QACA,SACA,UACA,UACA,UACA,UACA,WACA,UACA,WACA,UACA,WACA,OACA,OACA,SACA,OACA,QACA,OACA,OACA,UACA,OACA,SACA,QACA,UACA,SACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,OACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,OACA,UACA,QACA,QACA,SACA,OACA,QACA,SACA,QACA,UACA,QACA,SACA,UACA,SACA,QACA,MACA,UACA,OACA,UACA,MACA,WACA,UACA,UACA,UACA,QACA,UACA,SACA,OACA,QACA,MACA,SACA,OACA,QACA,SACA,SACA,OACA,WACA,OACA,MACA,OACA,SACA,SACA,SACA,WACA,SACA,UACA,WACA,WACA,OACA,UACA,SACA,OACA,SACA,QACA,UACA,SACA,SACA,SACA,UACA,OACA,SACA,SACA,UACA,QACA,SACA,SACA,WACA,SACA,SACA,OACA,UACA,UACA,SACA,SACA,UACA,SACA,SACA,UACA,OACA,UACA,QACA,OACA,SACA,OACA,SACA,UACA,UACA,UACA,SACA,WACA,SACA,OACA,WACA,WACA,UACA,OACA,UACA,WACA,UACA,WACA,SACA,SACA,UACA,QACA,SACA,WACA,MACA,OACA,UACA,SACA,SACA,SACA,QACA,OACA,OACA,SACA,OACA,QACA,SACA,QACA,UACA,OACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,OACA,OACA,MACA,OACA,OACA,OACA,SACA,OACA,QACA,OACA,QACA,UACA,QACA,QACA,QACA,OACA,QACA,SACA,OACA,OACA,OACA,UACA,UACA,OACA,OACA,UACA,SACA,MACA,QACA,SACA,QACA,QACA,WACA,UACA,UACA,WACA,WACA,QACA,OACA,SACA,SACA,UACA,SACA,UACA,SACA,UACA,QACA,SACA,QACA,MACA,UACA,UACA,QACA,SACA,UACA,SACA,SACA,UACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,WACA,UACA,QACA,QACA,MACA,QACA,QACA,UACA,QACA,QACA,SACA,QACA,UACA,SACA,UACA,SACA,WACA,OACA,QACA,SACA,QACA,UACA,SACA,WACA,SACA,UACA,SACA,UACA,WACA,UACA,UACA,QACA,QACA,OACA,SACA,SACA,SACA,SACA,UACA,SACA,UACA,SACA,QACA,MACA,UACA,SACA,OACA,UACA,OACA,QACA,QACA,OACA,QACA,OACA,SACA,SACA,MACA,QACA,UACA,OACA,UACA,MACA,QACA,SACA,UACA,QACA,WACA,UACA,WACA,UACA,MACA,OACA,OACA,SACA,QACA,WACA,QACA,QACA,MACA,QACA,UACA,QACA,SACA,OACA,OACA,SACA,QACA,OACA,OACA,SACA,SACA,OACA,OACA,QACA,SACA,OACA,MACA,UACA,MACA,OACA,QACA,QACA,OACA,SACA,OACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,QACA,MACA,OACA,QACA,MACA,OACA,OACA,SACA,OACA,OACA,QACA,SACA,SACA,OACA,UACA,QACA,UACA,SACA,SACA,QACA,MACA,UACA,QACA,WACA,QACA,SACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,OACA,MACA,QACA,UACA,OACA,SACA,SACA,OACA,SACA,UACA,OACA,MACA,SACA,UACA,SACA,SACA,UACA,MACA,OACA,OACA,SACA,QACA,OACA,UACA,SACA,QACA,SACA,UACA,UACA,QACA,QACA,OACA,SACA,SACA,UACA,OACA,OACA,OACA,SACA,QACA,QACA,QACA,UACA,QACA,QACA,QACA,QACA,OACA,OACA,OACA,UACA,OACA,OACA,QACA,UACA,SACA,SACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,UACA,QACA,QACA,OACA,QACA,OACA,UACA,QACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,MACA,MACA,QACA,OACA,OACA,SACA,UACA,OACA,QACA,SACA,OACA,QACA,UACA,MACA,OACA,OACA,SACA,OACA,SACA,QACA,QACA,WACA,SACA,QACA,SACA,OACA,MACA,OACA,SACA,OACA,OACA,OACA,MACA,OACA,UACA,QACA,SACA,OACA,OACA,UACA,SACA,OACA,QACA,OACA,OACA,OACA,SACA,QACA,WACA,OACA,QACA,OACA,QACA,MACA,OACA,QACA,SACA,QACA,UACA,SACA,OACA,SACA,QACA,OACA,UACA,SACA,MACA,OACA,OACA,WACA,OACA,SACA,MACA,UACA,UACA,QACA,UACA,UACA,SACA,SACA,SACA,UACA,UACA,OACA,UACA,SACA,WACA,QACA,WACA,SACA,WACA,SACA,UACA,SACA,SACA,UACA,UACA,SACA,SACA,SACA,QACA,WACA,QACA,UACA,SACA,SACA,SACA,UACA,UACA,SACA,WACA,OACA,SACA,SACA,UACA,OACA,SACA,UACA,QACA,OACA,QACA,SACA,SACA,MACA,OACA,UACA,QACA,QACA,QACA,MACA,OACA,OACA,UACA,MACA,QACA,QACA,OACA,SACA,SACA,OACA,OACA,WACA,OACA,OACA,UACA,MACA,OACA,MACA,SACA,OACA,UACA,OACA,MACA,UACA,OACA,SACA,OACA,OACA,QACA,QACA,OACA,MACA,QACA,QACA,SACA,OACA,OACA,OACA,WACA,SACA,QACA,QACA,QACA,QACA,UACA,OACA,MACA,OACA,UACA,QACA,OACA,SACA,OACA,QACA,QACA,UACA,OACA,MACA,QACA,SACA,UACA,QACA,OACA,SACA,OACA,UACA,SACA,SACA,QACA,OACA,UACA,UACA,UACA,OACA,OACA,QACA,OACA,OACA,QACA,OACA,OACA,SACA,OACA,SACA,OACA,SACA,OACA,OACA,UACA,QACA,OACA,QACA,SACA,OACA,OACA,UACA,OACA,SACA,OACA,QACA,QACA,UACA,SACA,QACA,QACA,SACA,SACA,UACA,MACA,QACA,SACA,OACA,OACA,OACA,QACA,OACA,SACA,MACA,SACA,UACA,QACA,UACA,SACA,QACA,SACA,QACA,SACA,SACA,SACA,WACA,OACA,OACA,SACA,QACA,WACA,OACA,SACA,SACA,UACA,OACA,SACA,OACA,UACA,OACA,WACA,QACA,QACA,SACA,OACA,SACA,SACA,UACA,OACA,QACA,QACA,QACA,QACA,OACA,UACA,QACA,SACA,SACA,WACA,OACA,UACA,QACA,OACA,UACA,QACA,SACA,UACA,SACA,SACA,OACA,UACA,MACA,QACA,UACA,SACA,QACA,SACA,MACA,SACA,UACA,SACA,UACA,QACA,OACA,QACA,OACA,UACA,WACA,SACA,SACA,QACA,WACA,QACA,OACA,QACA,OACA,SACA,OACA,WACA,SACA,SACA,WACA,QACA,OACA,SACA,SACA,UACA,OACA,QACA,OACA,SACA,SACA,QACA,SACA,SACA,OACA,OACA,OACA,WACA,UACA,UACA,SACA,QACA,OACA,MACA,UACA,UACA,QACA,OACA,OACA,OACA,QACA,QACA,QACA,UACA,SACA,SACA,QACA,OACA,UACA,OACA,UACA,SACA,QACA,MACA,UACA,SACA,QACA,MACA,MACA,OACA,SACA,SACA,UACA,UACA,SACA,UACA,QACA,QACA,UACA,OACA,MACA,QACA,SACA,QACA,MACA,OACA,MACA,QACA,UACA,OACA,OACA,MACA,QACA,SACA,OACA,OACA,QACA,UACA,SACA,SACA,SACA,QACA,UACA,QACA,WACA,QACA,SACA,WACA,SACA,UACA,QACA,UACA,QACA,SACA,UACA,OACA,OACA,OACA,MACA,QACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,SACA,OACA,QACA,QACA,QACA,UACA,QACA,SACA,SACA,OACA,SACA,QACA,OACA,QACA,OACA,UACA,SACA,UACA,QACA,OACA,UACA,QACA,SACA,OACA,UACA,UACA,MACA,UACA,SACA,SACA,SACA,UACA,SACA,SACA,MACA,QACA,QACA,SACA,WACA,QACA,SACA,UACA,QACA,MACA,SACA,OACA,QACA,OACA,UACA,OACA,SACA,QACA,QACA,QACA,SACA,UACA,QACA,OACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,QACA,QACA,OACA,SACA,OACA,OACA,OACA,UACA,UACA,WACA,WACA,OACA,SACA,UACA,UACA,SACA,QACA,WACA,SACA,UACA,SACA,UACA,UACA,SACA,UACA,QACA,QACA,UACA,QACA,WACA,SACA,UACA,QACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,QACA,WACA,UACA,UACA,QACA,UACA,SACA,UACA,OACA,OACA,QACA,UACA,QACA,QACA,QACA,WACA,SACA,UACA,QACA,OACA,MACA,SACA,UACA,UACA,UACA,UACA,WACA,QACA,OACA,OACA,QACA,SACA,UACA,OACA,OACA,QACA,QACA,OACA,OACA,QACA,QACA,OACA,QACA,SACA,QACA,QACA,OACA,OACA,SACA,QACA,MACA,QACA,QACA,OACA,SACA,QACA,UACA,SACA,UACA,SACA,SACA,UACA,SACA,UACA,SACA,SACA,SACA,SACA,UACA,SACA,QACA,UACA,SACA,OACA,SACA,WACA,SACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,UACA,SACA,UACA,SACA,WACA,SACA,WACA,WACA,SACA,SACA,UACA,SACA,UACA,SACA,SACA,SACA,SACA,MACA,SACA,OACA,OACA,OACA,QACA,QACA,QACA,QACA,OACA,OACA,SACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,SACA,SACA,UACA,OACA,SACA,OACA,OACA,SACA,QACA,QACA,QACA,QACA,SACA,OACA,MACA,OACA,MACA,SACA,QACA,MACA,SACA,UACA,OACA,OACA,QACA,SACA,QACA,OACA,SACA,OACA,SACA,OACA,UACA,UACA,QACA,UACA,OACA,MACA,QACA,OACA,QACA,UACA,QACA,SACA,SACA,UACA,WACA,WACA,QACA,QACA,SACA,SACA,QACA,MACA,SACA,SACA,OACA,SACA,SACA,UACA,WACA,OACA,OACA,UACA,SACA,OACA,UACA,SACA,QACA,WACA,SACA,UACA,UACA,SACA,QACA,QACA,SACA,QACA,UACA,QACA,OACA,QACA,UACA,SACA,QACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,QACA,WACA,QACA,SACA,QACA,UACA,MACA,UACA,OACA,OACA,QACA,QACA,OACA,SACA,OACA,QACA,SACA,UACA,SACA,QACA,OACA,QACA,SACA,UACA,MACA,OACA,QACA,SACA,MACA,QACA,OACA,QACA,QACA,OACA,OACA,QACA,UACA,QACA,QACA,SACA,OACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,OACA,OACA,OACA,QACA,UACA,QACA,WACA,QACA,UACA,OACA,OACA,QACA,OACA,OACA,QACA,OACA,SACA,QACA,QACA,QACA,UACA,QACA,QACA,UACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,OACA,SACA,QACA,QACA,UACA,QACA,QACA,OACA,QACA,SACA,SACA,MACA,SACA,UACA,WACA,SACA,UACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,OACA,OACA,SACA,QACA,QACA,QACA,QACA,UACA,QACA,QACA,QACA,QACA,WACA,SACA,SACA,SACA,WACA,UACA,QACA,UACA,QACA,UACA,SACA,SACA,UACA,OACA,SACA,SACA,QACA,UACA,OACA,SACA,MACA,QACA,SACA,QACA,SACA,UACA,OACA,UACA,QACA,WACA,WACA,SACA,UACA,UACA,UACA,QACA,OACA,QACA,QACA,QACA,QACA,OACA,QACA,SACA,QACA,SACA,UACA,QACA,SACA,QACA,SACA,MACA,OACA,SACA,OACA,OACA,OACA,SACA,OACA,QACA,SACA,OACA,QACA,OACA,OACA,MACA,SACA,SACA,OACA,OACA,OACA,OACA,QACA,OACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,UACA,QACA,SACA,QACA,QACA,UACA,SACA,OACA,QACA,OACA,SACA,OACA,OACA,MACA,QACA,SACA,QACA,QACA,UACA,QACA,UACA,MACA,WACA,SACA,QACA,SACA,WACA,OACA,SACA,UACA,OACA,QACA,MACA,QACA,SACA,QACA,UACA,WACA,OACA,QACA,UACA,SACA,QACA,OACA,MACA,QACA,QACA,UACA,SACA,QACA,WACA,OACA,QACA,SACA,OACA,QACA,OACA,QACA,QACA,QACA,QACA,UACA,OACA,OACA,SACA,UACA,QACA,OACA,QACA,UACA,QACA,QACA,MACA,OACA,UACA,SACA,OACA,SACA,SACA,OACA,SACA,SACA,SACA,QACA,OACA,QACA,MACA,OACA,UACA,OACA,WACA,SACA,UACA,QACA,UACA,QACA,OACA,SACA,SACA,UACA,UACA,SACA,OACA,WACA,UACA,SACA,QACA,UACA,SACA,SACA,UACA,SACA,OACA,QACA,QACA,QACA,OACA,QACA,MACA,OACA,SACA,UACA,QACA,UACA,SACA,SACA,QACA,QACA,SACA,QACA,MACA,SACA,QACA,UACA,OACA,QACA,UACA,SACA,SACA,UACA,QACA,OACA,SACA,UACA,OACA,SACA,UACA,SACA,UACA,UACA,UACA,QACA,OACA,UACA,UACA,SACA,UACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,QACA,OACA,UACA,SACA,OACA,SACA,OACA,QACA,OACA,OACA,OACA,SACA,OACA,UACA,OACA,UACA,OACA,OACA,QACA,QACA,OACA,MACA,SACA,SACA,OACA,SACA,UACA,MACA,UACA,UACA,QACA,UACA,OACA,MACA,QACA,OACA,QACA,QACA,OACA,QACA,OACA,UACA,OACA,QACA,OACA,OACA,OACA,MACA,SACA,OACA,OACA,OACA,SACA,SACA,OACA,SACA,OACA,OACA,UACA,OACA,QACA,SACA,OACA,OACA,OACA,OACA,QACA,QACA,QACA,OACA,QACA,UACA,QACA,QACA,QACA,OACA,OACA,SACA,MACA,QACA,QACA,QACA,OACA,OACA,Q,wICt7DG,SAAcsH,GAGjB,IAFA,IAAI4iI,EAAM,IAEDhtI,EAAI,EAAGA,EAAIoK,EAAK7H,OAAS,EAAGvC,GAAK,EAAG,CACzCgtI,GAAO5iI,EAAKpK,GACZ,IAAK,IAAIsM,EAAI,EAAGA,EAAI,EAAGA,GAAK,EACxB0gI,EAAOA,IAAQ,GAAoB,IAAP,EAANA,GAAiB,EAAI,KAInD,OAAa,IAANA,G,UA5EJ,SAAiBh3H,EAAOi3H,GAO3B,IANA,IAEM7iI,EAAO8iI,EAFIl3H,EAAM6hB,KAAI,SAACpgB,GAAD,OAAUw1H,EAASthI,QAAQ8L,EAAK7M,kBAEvBqiI,EAAS1qI,OAAQ,IAAK,IACpD8pB,EAAWjiB,EAAKA,EAAK7H,OAAS,GAC9ByC,EAAS,IAAI6D,WAAWuB,EAAK7H,OAAS,GAEnCvC,EAAI,EAAGA,EAAIoK,EAAK7H,OAAS,EAAGvC,GAAK,EACtCgF,EAAOhF,GAAKoK,EAAKpK,GAAKqsB,EAG1B,MAAO,CAACrnB,EAAQqnB,I,2FAnBpB,YACA,E,ybAAA,S,usCA0BO,WAAuBrW,EAAOi3H,GAA9B,6GACGE,EAA+B,GAAfn3H,EAAMzT,QAEtB6qI,EAAa,IACR99H,MAAK,EAAO,EAAG69H,GAJvB,IAM6Bn3H,EAAM06E,WANnC,uFAMS28C,EANT,KAMoB51H,EANpB,QAOOpB,EAAQ42H,EAASthI,QAAQ8L,EAAK7M,gBAExB,GATb,uBAUW,IAAIpF,MAAJ,sCAAyCiS,IAVpD,QAaC,IAASzX,EAAI,EAAGA,EAAI,GAAIA,GAAK,EACzBotI,EAAuB,GAAZC,EAAiBrtI,GAAmC,IAA7BqW,EAAS,GAAM,GAAKrW,GAd3D,+IAsBH,IAHMstI,EAAiBH,GADjBI,EAAkBJ,EAAgB,IAElC3xC,EAAU,IAAI3yF,WAAWykI,EAAiB,GAEvCttI,EAAI,EAAGA,EAAIw7F,EAAQj5F,OAAQvC,GAAK,EACrC,IAASsM,EAAI,EAAGA,EAAI,EAAGA,GAAK,EACpB8gI,EAAe,EAAJptI,EAAQsM,KACnBkvF,EAAQx7F,IAAM,GAAM,EAAIsM,GAzBjC,iBA+BgBqhF,EAAOj1D,OAAO8iE,GA/B9B,QA+BG36B,EA/BH,OAgCG2sE,EAAWC,EAAY5sE,GAEpB7gE,EAAI,EAlCV,aAkCaA,EAAIutI,GAlCjB,oBAmCKH,EAAWE,EAAiBttI,KAAOwtI,EAASxtI,GAnCjD,uBAoCW,IAAIwF,MAAM,qBApCrB,QAkCkCxF,GAAK,EAlCvC,iDAwCIw7F,GAxCJ,iE,sBAmEA,SAAS0xC,EAAaQ,EAAMC,EAAWC,EAASC,GACnD,IAD6D,EACzD/oI,EAAM,IAAIm5B,UAAU,GADqC,IAGvCyvG,GAHuC,IAG7D,2BAA4B,KAAjBI,EAAiB,QAExBhpI,GADAA,EAAMA,EAAIsnD,MAAMuhF,IACN7jF,KAAKgkF,IAL0C,8BAU7D,IAFA,IAAM9oI,EAAS,IAAI6D,WAAWglI,GAErB7tI,EAAI6tI,EAAW,EAAG7tI,GAAK,EAAGA,GAAK,EAAG,CACvC,IAAM+tI,EAAMjpI,EAAI+mD,mBAAmB+hF,GAC7B5+G,EAAMlqB,EAAIytB,OAAOq7G,GACvB9oI,EAAMipI,EACN/oI,EAAOhF,GAAKgvB,EAAIjW,WAGpB,OAAO/T,EAOJ,SAASyoI,EAAYrjI,GAExB,IAAM4Z,EAAO,GACbA,EAAK1U,MAAK,EAAO,EAAiB,EAAdlF,EAAK7H,QAEzB,IAAK,IAAIvC,EAAI,EAAGA,EAAIoK,EAAK7H,OAAQvC,GAAK,EAClC,IAAK,IAAIsM,EAAI,EAAGA,EAAI,EAAGA,GAAK,EACxB0X,EAAS,EAAJhkB,EAAQsM,GAAoC,IAA9BlC,EAAKpK,GAAM,GAAM,EAAIsM,GAIhD,OAAO0X,I,iGCzHX,IAuYsCA,EAvYhCgqH,EAAY,mBAAmBjjH,MAAM,IACrCkjH,EAAiB,CAAC,EAAG,IAAK,MAAO,UACjCC,EAAQ,CAAC,EAAG,EAAG,GAAI,IACnBC,EAAK,CACP,EAAG,EAAG,MAAO,EAAG,MAAO,WAAY,WAAY,WAAY,MAAO,EAClE,WAAY,EAAG,WAAY,WAAY,MAAO,WAAY,IAAK,EAAG,IAAK,EACvE,WAAY,EAAG,WAAY,EAAG,WAAY,EAAG,IAAK,WAAY,MAC9D,WAAY,MAAO,WAAY,MAAO,WAAY,IAAK,WAAY,MAAO,EAC1E,WAAY,WAAY,WAAY,WAAY,MAAO,WACvD,WAAY,EAAG,WAAY,YAyIzB7rD,EAAI,SAACvgF,GACP,IAAIuiB,EACArkB,EACAwB,EACAymD,EACA8jD,EACAC,EACAmiC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACA/wH,EACAG,EACAG,EACAG,EACAG,EACAG,EACAG,EACAG,EACAG,EACAG,EACAsiE,EACAC,EACAC,EACAC,EACAC,EACAC,EACAlxD,EACA49G,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACA3+G,EACA4+G,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACA3/G,GACA4/G,GAEJ,IAAKhvI,EAAI,EAAGA,EAAI,GAAIA,GAAK,EACrBymD,EAAKnmD,EAAE,GAAKA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IACtCiqG,EAAKjqG,EAAE,GAAKA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IACtCkqG,EAAKlqG,EAAE,GAAKA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IACtCqsI,EAAKrsI,EAAE,GAAKA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IACtCssI,EAAKtsI,EAAE,GAAKA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IACtCusI,EAAKvsI,EAAE,GAAKA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IACtCwsI,EAAKxsI,EAAE,GAAKA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IACtCysI,EAAKzsI,EAAE,GAAKA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IAItCuiB,GAHAmqH,EAAK1sI,EAAE,GAAKA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IAAMA,EAAE,MAG3BkqG,GAAM,EAAMmiC,IAAO,IAC9BnuI,GAHAyuI,EAAK3sI,EAAE,GAAKA,EAAE,IAAMA,EAAE,IAAMA,EAAE,IAAMA,EAAE,MAG3BqsI,GAAM,EAAMniC,IAAO,IAC9BlqG,EAAE,IAAMuiB,EACRviB,EAAE,IAAM9B,EACR8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACTqkB,EAAI4jC,GAAOmmF,GAAM,EAAMC,IAAO,IAC9BruI,EAAI+rG,GAAOsiC,GAAM,EAAMD,IAAO,IAC9BtsI,EAAE,IAAMuiB,EACRviB,EAAE,IAAM9B,EACR8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACTqkB,EAAI2nF,GAAOsiC,GAAM,EAAMC,IAAO,IAC9BvuI,EAAImuI,GAAOI,GAAM,EAAMD,IAAO,IAC9BxsI,EAAE,IAAMuiB,EACRviB,EAAE,IAAM9B,EACR8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACTqkB,EAAI+pH,GAAOI,GAAM,EAAMC,IAAO,IAC9BzuI,EAAIquI,GAAOI,GAAM,EAAMD,IAAO,IAC9B1sI,EAAE,IAAMuiB,EACRviB,EAAE,IAAM9B,EACR8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACTqkB,EAAIiqH,GAAOrmF,GAAM,EAAM8jD,IAAO,IAC9B/rG,EAAIuuI,GAAOxiC,GAAM,EAAM9jD,IAAO,IAC9BnmD,EAAE,IAAMuiB,EACRviB,EAAE,IAAM9B,EACR8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EACT8B,EAAE,KAAOuiB,EACTviB,EAAE,KAAO9B,EAET0d,EAAK5b,EAAE,GACP+b,EAAK/b,EAAE,GACP+uB,EAAO/uB,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChC2tI,EAAO3tI,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCigF,EAAOjgF,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCkgF,EAAOlgF,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCwuI,GAAOxuI,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCyuI,GAAOzuI,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCutI,EAAOvtI,EAAE,KAAO,GAAOA,EAAE,MAAQ,GACjCwtI,EAAOxtI,EAAE,KAAO,GAAOA,EAAE,MAAQ,GACjC+sI,EAAO/sI,EAAE,IAAM,EAAMA,EAAE,KAAO,GAC9BgtI,EAAOhtI,EAAE,IAAM,EAAMA,EAAE,KAAO,GAC9Bkc,EAAMlc,EAAE,KAAO,GAAOA,EAAE,MAAQ,GAChCqc,EAAMrc,EAAE,KAAO,GAAOA,EAAE,MAAQ,GAChC4tI,EAAO5tI,EAAE,KAAO,GAAOA,EAAE,MAAQ,GACjC6tI,EAAO7tI,EAAE,KAAO,GAAOA,EAAE,MAAQ,GACjCgvB,EAAOhvB,EAAE,KAAO,GAAOA,EAAE,MAAQ,GACjC4sI,EAAO5sI,EAAE,KAAO,GAAOA,EAAE,MAAQ,GACjC8uB,GAAO9uB,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChC0uI,GAAO1uI,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCkuI,GAAOluI,EAAE,IAAM,GAAOA,EAAE,KAAO,EAC/BmuI,GAAOnuI,EAAE,IAAM,GAAOA,EAAE,KAAO,EAC/BitI,EAAOjtI,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCktI,EAAOltI,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCwc,EAAMxc,EAAE,KAAO,GAAOA,EAAE,MAAQ,GAChC2c,EAAM3c,EAAE,KAAO,GAAOA,EAAE,MAAQ,GAChC8tI,EAAO9tI,EAAE,KAAO,GAAOA,EAAE,MAAQ,GACjC+tI,EAAO/tI,EAAE,KAAO,GAAOA,EAAE,MAAQ,GACjC6sI,EAAO7sI,EAAE,KAAO,GAAOA,EAAE,MAAQ,EACjC8sI,EAAO9sI,EAAE,KAAO,GAAOA,EAAE,MAAQ,EACjC6/E,EAAO7/E,EAAE,IAAM,GAAOA,EAAE,KAAO,EAC/B8/E,EAAO9/E,EAAE,IAAM,GAAOA,EAAE,KAAO,EAC/BouI,GAAOpuI,EAAE,KAAO,GAAOA,EAAE,MAAQ,EACjCquI,GAAOruI,EAAE,KAAO,GAAOA,EAAE,MAAQ,EACjCmtI,EAAOntI,EAAE,KAAO,GAAOA,EAAE,MAAQ,EACjCotI,EAAOptI,EAAE,KAAO,GAAOA,EAAE,MAAQ,EACjC8c,EAAM9c,EAAE,KAAO,GAAOA,EAAE,MAAQ,GAChCid,EAAMjd,EAAE,KAAO,GAAOA,EAAE,MAAQ,GAChCguI,EAAOhuI,EAAE,KAAO,GAAOA,EAAE,MAAQ,EACjCiuI,GAAOjuI,EAAE,KAAO,GAAOA,EAAE,MAAQ,EACjCytI,EAAOztI,EAAE,IAAM,GAAOA,EAAE,KAAO,EAC/B0tI,EAAO1tI,EAAE,IAAM,GAAOA,EAAE,KAAO,EAC/B+/E,EAAO//E,EAAE,KAAO,GAAOA,EAAE,MAAQ,GACjCggF,EAAOhgF,EAAE,KAAO,GAAOA,EAAE,MAAQ,GACjCsuI,GAAOtuI,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCuuI,GAAOvuI,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCqtI,EAAOrtI,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCstI,EAAOttI,EAAE,KAAO,EAAMA,EAAE,MAAQ,GAChCod,EAAMpd,EAAE,KAAO,GAAOA,EAAE,MAAQ,GAChCud,EAAMvd,EAAE,KAAO,GAAOA,EAAE,MAAQ,GAEhCA,EAAE,GAAK4b,GAAOM,EAAKM,EACnBxc,EAAE,GAAK+b,GAAOM,EAAKM,EACnB3c,EAAE,IAAM6/E,GAAQE,EAAME,EACtBjgF,EAAE,IAAM8/E,GAAQE,EAAME,EACtBlgF,EAAE,IAAM+sI,GAAQE,EAAME,EACtBntI,EAAE,IAAMgtI,GAAQE,EAAME,EACtBptI,EAAE,IAAMytI,GAAQ1+G,EAAM6+G,EACtB5tI,EAAE,IAAM0tI,GAAQC,EAAME,EACtB7tI,EAAE,IAAMkuI,IAAQE,GAAME,GACtBtuI,EAAE,IAAMmuI,IAAQE,GAAME,GACtBvuI,EAAE,GAAKkc,GAAOM,EAAKM,EACnB9c,EAAE,GAAKqc,GAAOM,EAAKM,EACnBjd,EAAE,IAAM+/E,GAAQE,EAAMjxD,EACtBhvB,EAAE,IAAMggF,GAAQE,EAAM0sD,EACtB5sI,EAAE,IAAMitI,GAAQE,EAAME,EACtBrtI,EAAE,IAAMktI,GAAQE,EAAME,EACtBttI,EAAE,IAAM+uB,GAAQ6+G,EAAME,EACtB9tI,EAAE,IAAM2tI,GAAQE,EAAME,EACtB/tI,EAAE,IAAMouI,IAAQE,GAAME,GACtBxuI,EAAE,IAAMquI,IAAQE,GAAME,GACtBzuI,EAAE,GAAKwc,GAAOM,EAAKM,EACnBpd,EAAE,GAAK2c,GAAOM,EAAKM,EACnBvd,EAAE,IAAMigF,GAAQjxD,EAAM69G,EACtB7sI,EAAE,IAAMkgF,GAAQ0sD,EAAME,EACtB9sI,EAAE,IAAMmtI,GAAQE,EAAME,EACtBvtI,EAAE,IAAMotI,GAAQE,EAAME,EACtBxtI,EAAE,IAAM4tI,GAAQE,EAAME,EACtBhuI,EAAE,IAAM6tI,GAAQE,EAAME,GACtBjuI,EAAE,IAAMsuI,IAAQE,GAAM1/G,GACtB9uB,EAAE,IAAMuuI,IAAQE,GAAMC,GACtB1uI,EAAE,GAAK8c,GAAOM,EAAKxB,EACnB5b,EAAE,GAAKid,GAAOM,EAAKxB,EACnB/b,EAAE,IAAMgvB,GAAQ69G,EAAMhtD,EACtB7/E,EAAE,IAAM4sI,GAAQE,EAAMhtD,EACtB9/E,EAAE,IAAMqtI,GAAQE,EAAMR,EACtB/sI,EAAE,IAAMstI,GAAQE,EAAMR,EACtBhtI,EAAE,IAAM8tI,GAAQE,EAAMP,EACtBztI,EAAE,IAAM+tI,GAAQE,GAAMP,EACtB1tI,EAAE,IAAMwuI,IAAQ1/G,GAAMo/G,GACtBluI,EAAE,IAAMyuI,IAAQC,GAAMP,GACtBnuI,EAAE,GAAKod,GAAOxB,EAAKM,EACnBlc,EAAE,GAAKud,GAAOxB,EAAKM,EACnBrc,EAAE,IAAM6sI,GAAQhtD,EAAME,EACtB//E,EAAE,IAAM8sI,GAAQhtD,EAAME,EACtBhgF,EAAE,IAAMutI,GAAQR,EAAME,EACtBjtI,EAAE,IAAMwtI,GAAQR,EAAME,EACtBltI,EAAE,IAAMguI,GAAQP,EAAM1+G,EACtB/uB,EAAE,IAAMiuI,IAAQP,EAAMC,EACtB3tI,EAAE,IAAM8uB,IAAQo/G,GAAME,GACtBpuI,EAAE,IAAM0uI,IAAQP,GAAME,GAEtBruI,EAAE,IAAMosI,EAAG1sI,GACXM,EAAE,IAAMosI,EAAG1sI,EAAI,IAoBVs9C,GAhByB/6B,EAgBN,IAhBe,SAAuB/W,GAClE,IAAImI,EACJ,GAAwB,OAApBnI,EAAIrD,MAAM,EAAG,GAAa,CAC1BwL,EAAM,GACN,IAAK,IAAIpV,EAAI,EAAGC,EAAIgN,EAAI1K,OAAQvC,EAAIC,EAAGD,GAAK,EACxCoV,EAAIjI,KAAKP,SAASK,EAAIrD,MAAM5J,EAAGA,EAAI,GAAI,UAE3CoV,EAAMnI,EAGV,OA5WW,SAAC8rC,EAAwCpjB,GAYpD,IAXA,IAOI31B,EACAwU,EARAjS,EAASozB,EAAQpzB,OACjBqgF,EAAS7pC,EAAM6pC,OACf8tD,EAAY33F,EAAM43F,YAAc,EAChCA,EAAa53F,EAAM43F,WACnBC,EAAe73F,EAAM63F,aACrB7uI,EAAIg3C,EAAMh3C,EACVsU,EAAQ,EAKLA,EAAQ9T,GAAQ,CACnB,GAAIw2C,EAAMmlE,MAGN,IAFAnlE,EAAMmlE,OAAQ,EACdt7B,EAAO,GAAK7pC,EAAMqyB,MACbprE,EAAI,EAAGA,EAAI2wI,EAAa,IAAK3wI,EAC9B4iF,EAAO5iF,GAAK,EAGpB,GAAuB,iBAAZ21B,EACP,IAAK31B,EAAI+4C,EAAMjuC,MAAOuL,EAAQ9T,GAAUvC,EAAI0wI,IAAar6H,EACrDusE,EAAO5iF,GAAK,IAAM21B,EAAQtf,IAAU63H,EAAY,EAANluI,UAG9C,IAAKA,EAAI+4C,EAAMjuC,MAAOuL,EAAQ9T,GAAUvC,EAAI0wI,IAAar6H,GACrD7B,EAAOmhB,EAAQvoB,WAAWiJ,IACf,IACPusE,EAAO5iF,GAAK,IAAMwU,GAAQ05H,EAAY,EAANluI,KACzBwU,EAAO,MACdouE,EAAO5iF,GAAK,KAAO,IAAQwU,GAAQ,IAAO05H,EAAY,EAANluI,KAChD4iF,EAAO5iF,GAAK,KAAO,IAAe,GAAPwU,IAAiB05H,EAAY,EAANluI,MAC3CwU,EAAO,OAAUA,GAAQ,OAChCouE,EAAO5iF,GAAK,KAAO,IAAQwU,GAAQ,KAAQ05H,EAAY,EAANluI,KACjD4iF,EAAO5iF,GAAK,KACP,IAASwU,GAAQ,EAAK,KAAU05H,EAAY,EAANluI,KAC3C4iF,EAAO5iF,GAAK,KAAO,IAAe,GAAPwU,IAAiB05H,EAAY,EAANluI,OAElDwU,EACI,QACU,KAAPA,IAAiB,GACe,KAA9BmhB,EAAQvoB,aAAaiJ,IAC9BusE,EAAO5iF,GAAK,KAAO,IAAQwU,GAAQ,KAAQ05H,EAAY,EAANluI,KACjD4iF,EAAO5iF,GAAK,KACP,IAASwU,GAAQ,GAAM,KAAU05H,EAAY,EAANluI,KAC5C4iF,EAAO5iF,GAAK,KACP,IAASwU,GAAQ,EAAK,KAAU05H,EAAY,EAANluI,KAC3C4iF,EAAO5iF,GAAK,KAAO,IAAe,GAAPwU,IAAiB05H,EAAY,EAANluI,MAK9D,GADA+4C,EAAM83F,cAAgB7wI,EAClBA,GAAK0wI,EAAW,CAGhB,IAFA33F,EAAMjuC,MAAQ9K,EAAI0wI,EAClB33F,EAAMqyB,MAAQwX,EAAO+tD,GAChB3wI,EAAI,EAAGA,EAAI2wI,IAAc3wI,EAC1B+B,EAAE/B,IAAM4iF,EAAO5iF,GAEnBsiF,EAAEvgF,GACFg3C,EAAMmlE,OAAQ,OAEdnlE,EAAMjuC,MAAQ9K,EAQtB,GADA4iF,GAFA5iF,EAAI+4C,EAAM83F,gBAEE,IAAM5C,EAAmB,EAAJjuI,GAC7B+4C,EAAM83F,gBAAkBH,EAExB,IADA9tD,EAAO,GAAKA,EAAO+tD,GACd3wI,EAAI,EAAGA,EAAI2wI,EAAa,IAAK3wI,EAC9B4iF,EAAO5iF,GAAK,EAIpB,IADA4iF,EAAO+tD,EAAa,IAAM,WACrB3wI,EAAI,EAAGA,EAAI2wI,IAAc3wI,EAC1B+B,EAAE/B,IAAM4iF,EAAO5iF,GAEnBsiF,EAAEvgF,GAGF,IACIqpE,EADAj1C,EAAM,GAEN7pB,EAAI,EAER,IADAtM,EAAI,EACGsM,EAAIskI,GAAc,CACrB,IAAK5wI,EAAI,EAAGA,EAAI2wI,GAAcrkI,EAAIskI,IAAgB5wI,IAAKsM,EACnD8+D,EAAQrpE,EAAE/B,GACVm2B,GACI63G,EAAW5iE,GAAS,EAAK,IACzB4iE,EAAkB,GAAR5iE,GACV4iE,EAAW5iE,GAAS,GAAM,IAC1B4iE,EAAW5iE,GAAS,EAAK,IACzB4iE,EAAW5iE,GAAS,GAAM,IAC1B4iE,EAAW5iE,GAAS,GAAM,IAC1B4iE,EAAW5iE,GAAS,GAAM,IAC1B4iE,EAAW5iE,GAAS,GAAM,IAE9B9+D,EAAIqkI,GAAe,IACnBruD,EAAEvgF,GACF/B,EAAI,GAIZ,MAAO,KAAOm2B,EAmQPytB,CAxXI,SAAC5/B,GAAD,MAAW,CACtB4+D,OAAQ,GACRs7B,OAAO,EACP9yC,MAAO,EACPtgE,MAAO,EACP6lI,WAAa,MAAQ3sH,GAAQ,IAAO,EACpC4sH,aAAc5sH,GAAQ,EAEtBjiB,GAAKA,EAAgC,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAtD,GAAG6N,OAAO7N,EAAGA,EAAGA,EAAGA,EAAGA,KAA7B,IAACA,EAgXS+uI,CAAO9sH,GAAa5O,K,y/DCvZtC,IAAIw9B,EAAQxvC,EAAQ,IAChBsS,EAAKtS,EAAQ,IACbiS,EAAWjS,EAAQ,IACnBspE,EAAOtpE,EAAQ,KAEf+R,EAASy9B,EAAMz9B,OAEnB,SAAS47H,EAAWzmD,GAClB5d,EAAKvsE,KAAKmE,KAAM,QAASgmF,GAEzBhmF,KAAKmL,EAAI,IAAIiG,EAAG40E,EAAK76E,EAAG,IAAI0Y,MAAM7jB,KAAK2R,KACvC3R,KAAKiH,EAAI,IAAImK,EAAG40E,EAAK/+E,EAAG,IAAI4c,MAAM7jB,KAAK2R,KACvC3R,KAAK0sI,KAAO1sI,KAAKimF,IAAI/gE,UAErBllB,KAAK2sI,MAAqC,IAA7B3sI,KAAKmL,EAAE8Y,UAAUlB,KAAK,GACnC/iB,KAAK4sI,OAAmD,IAA1C5sI,KAAKmL,EAAE8Y,UAAU5U,IAAIrP,KAAKxC,GAAGulB,MAAM,GAGjD/iB,KAAK6sI,KAAO7sI,KAAK8sI,iBAAiB9mD,GAClChmF,KAAK+sI,YAAc,IAAIxgI,MAAM,GAC7BvM,KAAKgtI,YAAc,IAAIzgI,MAAM,GAoO/B,SAAS0gI,EAAMlrE,EAAO32D,EAAGC,EAAG6hI,GAC1B9kE,EAAKwe,UAAU/qF,KAAKmE,KAAM+hE,EAAO,UACvB,OAAN32D,GAAoB,OAANC,GAChBrL,KAAKoL,EAAI,KACTpL,KAAKqL,EAAI,KACTrL,KAAKmtI,KAAM,IAEXntI,KAAKoL,EAAI,IAAIgG,EAAGhG,EAAG,IACnBpL,KAAKqL,EAAI,IAAI+F,EAAG/F,EAAG,IAEf6hI,IACFltI,KAAKoL,EAAE+Y,SAASnkB,KAAK+hE,MAAMpwD,KAC3B3R,KAAKqL,EAAE8Y,SAASnkB,KAAK+hE,MAAMpwD,MAExB3R,KAAKoL,EAAEuG,MACV3R,KAAKoL,EAAIpL,KAAKoL,EAAEyY,MAAM7jB,KAAK+hE,MAAMpwD,MAC9B3R,KAAKqL,EAAEsG,MACV3R,KAAKqL,EAAIrL,KAAKqL,EAAEwY,MAAM7jB,KAAK+hE,MAAMpwD,MACnC3R,KAAKmtI,KAAM,GA6Nf,SAASC,EAAOrrE,EAAO32D,EAAGC,EAAGgc,GAC3B+gD,EAAKwe,UAAU/qF,KAAKmE,KAAM+hE,EAAO,YACvB,OAAN32D,GAAoB,OAANC,GAAoB,OAANgc,GAC9BrnB,KAAKoL,EAAIpL,KAAK+hE,MAAM76C,IACpBlnB,KAAKqL,EAAIrL,KAAK+hE,MAAM76C,IACpBlnB,KAAKqnB,EAAI,IAAIjW,EAAG,KAEhBpR,KAAKoL,EAAI,IAAIgG,EAAGhG,EAAG,IACnBpL,KAAKqL,EAAI,IAAI+F,EAAG/F,EAAG,IACnBrL,KAAKqnB,EAAI,IAAIjW,EAAGiW,EAAG,KAEhBrnB,KAAKoL,EAAEuG,MACV3R,KAAKoL,EAAIpL,KAAKoL,EAAEyY,MAAM7jB,KAAK+hE,MAAMpwD,MAC9B3R,KAAKqL,EAAEsG,MACV3R,KAAKqL,EAAIrL,KAAKqL,EAAEwY,MAAM7jB,KAAK+hE,MAAMpwD,MAC9B3R,KAAKqnB,EAAE1V,MACV3R,KAAKqnB,EAAIrnB,KAAKqnB,EAAExD,MAAM7jB,KAAK+hE,MAAMpwD,MAEnC3R,KAAKqtI,KAAOrtI,KAAKqnB,IAAMrnB,KAAK+hE,MAAM76C,IAnepCnW,EAAS07H,EAAYrkE,GACrBjtE,EAAOD,QAAUuxI,EAEjBA,EAAWnvI,UAAUwvI,iBAAmB,SAA0B9mD,GAEhE,GAAKhmF,KAAK2sI,OAAU3sI,KAAKmiB,GAAMniB,KAAK7C,GAAwB,IAAnB6C,KAAKxC,EAAE+W,KAAK,GAArD,CAIA,IAAIu0E,EACAsP,EACJ,GAAIpS,EAAK8C,KACPA,EAAO,IAAI13E,EAAG40E,EAAK8C,KAAM,IAAIjlE,MAAM7jB,KAAK2R,SACnC,CACL,IAAI27H,EAAQttI,KAAKutI,cAAcvtI,KAAKxC,GAGpCsrF,GADAA,EAAOwkD,EAAM,GAAGj7H,IAAIi7H,EAAM,IAAM,EAAIA,EAAM,GAAKA,EAAM,IACzCzpH,MAAM7jB,KAAK2R,KAEzB,GAAIq0E,EAAKoS,OACPA,EAAS,IAAIhnF,EAAG40E,EAAKoS,OAAQ,QACxB,CAEL,IAAIo1C,EAAUxtI,KAAKutI,cAAcvtI,KAAK7C,GACsB,IAAxD6C,KAAKmiB,EAAE1U,IAAI+/H,EAAQ,IAAIpiI,EAAEiH,IAAIrS,KAAKmiB,EAAE/W,EAAEsZ,OAAOokE,IAC/CsP,EAASo1C,EAAQ,IAEjBp1C,EAASo1C,EAAQ,GACjB38H,EAA2D,IAApD7Q,KAAKmiB,EAAE1U,IAAI2qF,GAAQhtF,EAAEiH,IAAIrS,KAAKmiB,EAAE/W,EAAEsZ,OAAOokE,MAiBpD,MAAO,CACLA,KAAMA,EACNsP,OAAQA,EACRC,MAdErS,EAAKqS,MACCrS,EAAKqS,MAAM9kE,KAAI,SAASk6G,GAC9B,MAAO,CACLtiI,EAAG,IAAIiG,EAAGq8H,EAAItiI,EAAG,IACjBlE,EAAG,IAAImK,EAAGq8H,EAAIxmI,EAAG,QAIbjH,KAAK0tI,cAAct1C,MAU/Bq0C,EAAWnvI,UAAUiwI,cAAgB,SAAuB/sI,GAI1D,IAAImR,EAAMnR,IAAQR,KAAKxC,EAAIwC,KAAK2R,IAAMP,EAAGsW,KAAKlnB,GAC1CksI,EAAO,IAAIt7H,EAAG,GAAGyS,MAAMlS,GAAKuT,UAC5ByoH,EAAQjB,EAAKvnH,SAEb1nB,EAAI,IAAI2T,EAAG,GAAGyS,MAAMlS,GAAKwT,SAASH,UAAUN,OAAOgoH,GAIvD,MAAO,CAFEiB,EAAMvpH,OAAO3mB,GAAGwmB,UAChB0pH,EAAMrpH,OAAO7mB,GAAGwmB,YAI3BwoH,EAAWnvI,UAAUowI,cAAgB,SAAuBt1C,GA2B1D,IAzBA,IAYI7gF,EACA8B,EAEA3B,EACA8B,EAEA3B,EACA8B,EAEAi0H,EAEApxI,EACA4O,EAxBAyiI,EAAW7tI,KAAK7C,EAAEojB,MAAM/W,KAAKsF,MAAM9O,KAAK7C,EAAEiY,YAAc,IAIxDuS,EAAIywE,EACJl1C,EAAIljD,KAAK7C,EAAEoW,QACXqP,EAAK,IAAIxR,EAAG,GACZ08H,EAAK,IAAI18H,EAAG,GACZyR,EAAK,IAAIzR,EAAG,GACZ28H,EAAK,IAAI38H,EAAG,GAaZ1V,EAAI,EAGa,IAAdisB,EAAE5E,KAAK,IAAU,CACtB,IAAIjO,EAAIouC,EAAE9hC,IAAIuG,GACdnrB,EAAI0mD,EAAE7zC,IAAIyF,EAAErH,IAAIka,IAChBvc,EAAIyX,EAAGxT,IAAIyF,EAAErH,IAAImV,IACjB,IAAIvX,EAAI0iI,EAAG1+H,IAAIyF,EAAErH,IAAIqgI,IAErB,IAAKp2H,GAAMlb,EAAE6V,IAAIw7H,GAAY,EAC3Bt2H,EAAKq2H,EAAM53H,MACXqD,EAAKuJ,EACLlL,EAAKlb,EAAEwZ,MACPwD,EAAKpO,OACA,GAAIsM,GAAc,KAANhc,EACjB,MAEFkyI,EAAQpxI,EAER0mD,EAAIv7B,EACJA,EAAInrB,EACJqmB,EAAKD,EACLA,EAAKxX,EACL2iI,EAAKD,EACLA,EAAKziI,EAEPwM,EAAKrb,EAAEwZ,MACP2D,EAAKvO,EAEL,IAAI4iI,EAAOt2H,EAAG4H,MAAMlI,IAAIoC,EAAG8F,OAiB3B,OAhBWzH,EAAGyH,MAAMlI,IAAIuC,EAAG2F,OAClBjN,IAAI27H,IAAS,IACpBn2H,EAAKN,EACLoC,EAAKN,GAIH3B,EAAGjG,WACLiG,EAAKA,EAAG1B,MACRwD,EAAKA,EAAGxD,OAEN6B,EAAGpG,WACLoG,EAAKA,EAAG7B,MACR2D,EAAKA,EAAG3D,OAGH,CACL,CAAE7K,EAAGuM,EAAIzQ,EAAGuS,GACZ,CAAErO,EAAG0M,EAAI5Q,EAAG0S,KAIhB8yH,EAAWnvI,UAAU2wI,WAAa,SAAoBl6H,GACpD,IAAIskF,EAAQr4F,KAAK6sI,KAAKx0C,MAClB61C,EAAK71C,EAAM,GACX81C,EAAK91C,EAAM,GAEXqP,EAAKymC,EAAGlnI,EAAEwG,IAAIsG,GAAG0N,SAASzhB,KAAK7C,GAC/BwqG,EAAKumC,EAAGjnI,EAAE+O,MAAMvI,IAAIsG,GAAG0N,SAASzhB,KAAK7C,GAErC+pD,EAAKwgD,EAAGj6F,IAAIygI,EAAG/iI,GACfg8C,EAAKwgD,EAAGl6F,IAAI0gI,EAAGhjI,GACfijI,EAAK1mC,EAAGj6F,IAAIygI,EAAGjnI,GACfonI,EAAK1mC,EAAGl6F,IAAI0gI,EAAGlnI,GAKnB,MAAO,CAAE4nC,GAFA96B,EAAE1E,IAAI63C,GAAI73C,IAAI83C,GAENrY,GADRs/F,EAAGh3H,IAAIi3H,GAAIr4H,QAItBy2H,EAAWnvI,UAAUirF,WAAa,SAAoBn9E,EAAGiT,IACvDjT,EAAI,IAAIgG,EAAGhG,EAAG,KACPuG,MACLvG,EAAIA,EAAEyY,MAAM7jB,KAAK2R,MAEnB,IAAIo8H,EAAK3iI,EAAEyZ,SAASH,OAAOtZ,GAAGiZ,QAAQjZ,EAAEsZ,OAAO1kB,KAAKmL,IAAIkZ,QAAQrkB,KAAKiH,GACjEoE,EAAI0iI,EAAG/oH,UACX,GAA6C,IAAzC3Z,EAAEwZ,SAASP,OAAOypH,GAAI17H,IAAIrS,KAAK43B,MACjC,MAAM,IAAI12B,MAAM,iBAIlB,IAAIshB,EAAQnX,EAAE4Y,UAAUzB,QAIxB,OAHInE,IAAQmE,IAAUnE,GAAOmE,KAC3BnX,EAAIA,EAAE8Z,UAEDnlB,KAAK8mF,MAAM17E,EAAGC,IAGvBohI,EAAWnvI,UAAUypF,SAAW,SAAkBD,GAChD,GAAIA,EAAMqmD,IACR,OAAO,EAET,IAAI/hI,EAAI07E,EAAM17E,EACVC,EAAIy7E,EAAMz7E,EAEVijI,EAAKtuI,KAAKmL,EAAEuZ,OAAOtZ,GACnBmjI,EAAMnjI,EAAEyZ,SAASH,OAAOtZ,GAAGiZ,QAAQiqH,GAAIjqH,QAAQrkB,KAAKiH,GACxD,OAA2C,IAApCoE,EAAEwZ,SAASN,QAAQgqH,GAAKxrH,KAAK,IAGtC0pH,EAAWnvI,UAAUkxI,gBACjB,SAAyBjnD,EAAQQ,EAAQC,GAGvC,IAFA,IAAIymD,EAAUzuI,KAAK+sI,YACf2B,EAAU1uI,KAAKgtI,YACVtxI,EAAI,EAAGA,EAAI6rF,EAAOtpF,OAAQvC,IAAK,CACtC,IAAI+qB,EAAQzmB,KAAKiuI,WAAWlmD,EAAOrsF,IAC/B8B,EAAI+pF,EAAO7rF,GACXotF,EAAOtrF,EAAEurF,WAETtiE,EAAMooB,GAAGp9B,WACXgV,EAAMooB,GAAG/4B,OACTtY,EAAIA,EAAEwY,KAAI,IAERyQ,EAAMqoB,GAAGr9B,WACXgV,EAAMqoB,GAAGh5B,OACTgzE,EAAOA,EAAK9yE,KAAI,IAGlBy4H,EAAY,EAAJ/yI,GAAS8B,EACjBixI,EAAY,EAAJ/yI,EAAQ,GAAKotF,EACrB4lD,EAAY,EAAJhzI,GAAS+qB,EAAMooB,GACvB6/F,EAAY,EAAJhzI,EAAQ,GAAK+qB,EAAMqoB,GAK7B,IAHA,IAAIplC,EAAM1J,KAAK6nF,YAAY,EAAG4mD,EAASC,EAAa,EAAJhzI,EAAOssF,GAG9ChgF,EAAI,EAAGA,EAAQ,EAAJtM,EAAOsM,IACzBymI,EAAQzmI,GAAK,KACb0mI,EAAQ1mI,GAAK,KAEf,OAAO0B,GAwBbqH,EAASk8H,EAAO7kE,EAAKwe,WAErB6lD,EAAWnvI,UAAUwpF,MAAQ,SAAe17E,EAAGC,EAAG6hI,GAChD,OAAO,IAAID,EAAMjtI,KAAMoL,EAAGC,EAAG6hI,IAG/BT,EAAWnvI,UAAU4oF,cAAgB,SAAuBxoF,EAAKiU,GAC/D,OAAOs7H,EAAM0B,SAAS3uI,KAAMtC,EAAKiU,IAGnCs7H,EAAM3vI,UAAUyrF,SAAW,WACzB,GAAK/oF,KAAK+hE,MAAM8qE,KAAhB,CAGA,IAAI/0C,EAAM93F,KAAK6mF,YACf,GAAIiR,GAAOA,EAAIhP,KACb,OAAOgP,EAAIhP,KAEb,IAAIA,EAAO9oF,KAAK+hE,MAAM+kB,MAAM9mF,KAAKoL,EAAEsZ,OAAO1kB,KAAK+hE,MAAM8qE,KAAK/jD,MAAO9oF,KAAKqL,GACtE,GAAIysF,EAAK,CACP,IAAI/1B,EAAQ/hE,KAAK+hE,MACb6sE,EAAU,SAASpxI,GACrB,OAAOukE,EAAM+kB,MAAMtpF,EAAE4N,EAAEsZ,OAAOq9C,EAAM8qE,KAAK/jD,MAAOtrF,EAAE6N,IAEpDysF,EAAIhP,KAAOA,EACXA,EAAKjC,YAAc,CACjBiC,KAAM,KACNn6C,IAAKmpD,EAAInpD,KAAO,CACdpnB,IAAKuwE,EAAInpD,IAAIpnB,IACbggE,OAAQuQ,EAAInpD,IAAI44C,OAAOh0D,IAAIq7G,IAE7B3nD,QAAS6Q,EAAI7Q,SAAW,CACtB/Z,KAAM4qB,EAAI7Q,QAAQ/Z,KAClBqa,OAAQuQ,EAAI7Q,QAAQM,OAAOh0D,IAAIq7G,KAIrC,OAAO9lD,IAGTmkD,EAAM3vI,UAAUgP,OAAS,WACvB,OAAKtM,KAAK6mF,YAGH,CAAE7mF,KAAKoL,EAAGpL,KAAKqL,EAAGrL,KAAK6mF,aAAe,CAC3CI,QAASjnF,KAAK6mF,YAAYI,SAAW,CACnC/Z,KAAMltE,KAAK6mF,YAAYI,QAAQ/Z,KAC/Bqa,OAAQvnF,KAAK6mF,YAAYI,QAAQM,OAAOjiF,MAAM,IAEhDqpC,IAAK3uC,KAAK6mF,YAAYl4C,KAAO,CAC3BpnB,IAAKvnB,KAAK6mF,YAAYl4C,IAAIpnB,IAC1BggE,OAAQvnF,KAAK6mF,YAAYl4C,IAAI44C,OAAOjiF,MAAM,MATrC,CAAEtF,KAAKoL,EAAGpL,KAAKqL,IAc1B4hI,EAAM0B,SAAW,SAAkB5sE,EAAOrkE,EAAKiU,GAC1B,iBAARjU,IACTA,EAAM+sC,KAAKU,MAAMztC,IACnB,IAAIgM,EAAMq4D,EAAM+kB,MAAMppF,EAAI,GAAIA,EAAI,GAAIiU,GACtC,IAAKjU,EAAI,GACP,OAAOgM,EAET,SAASmlI,EAAUnxI,GACjB,OAAOqkE,EAAM+kB,MAAMppF,EAAI,GAAIA,EAAI,GAAIiU,GAGrC,IAAImmF,EAAMp6F,EAAI,GAYd,OAXAgM,EAAIm9E,YAAc,CAChBiC,KAAM,KACN7B,QAAS6Q,EAAI7Q,SAAW,CACtB/Z,KAAM4qB,EAAI7Q,QAAQ/Z,KAClBqa,OAAQ,CAAE79E,GAAM4B,OAAOwsF,EAAI7Q,QAAQM,OAAOh0D,IAAIs7G,KAEhDlgG,IAAKmpD,EAAInpD,KAAO,CACdpnB,IAAKuwE,EAAInpD,IAAIpnB,IACbggE,OAAQ,CAAE79E,GAAM4B,OAAOwsF,EAAInpD,IAAI44C,OAAOh0D,IAAIs7G,MAGvCnlI,GAGTujI,EAAM3vI,UAAUsO,QAAU,WACxB,OAAI5L,KAAKk4F,aACA,sBACF,gBAAkBl4F,KAAKoL,EAAE6Y,UAAUjiB,SAAS,GAAI,GACnD,OAAShC,KAAKqL,EAAE4Y,UAAUjiB,SAAS,GAAI,GAAK,KAGlDirI,EAAM3vI,UAAU46F,WAAa,WAC3B,OAAOl4F,KAAKmtI,KAGdF,EAAM3vI,UAAU8Z,IAAM,SAAa5Z,GAEjC,GAAIwC,KAAKmtI,IACP,OAAO3vI,EAGT,GAAIA,EAAE2vI,IACJ,OAAOntI,KAGT,GAAIA,KAAKoC,GAAG5E,GACV,OAAOwC,KAAKipF,MAGd,GAAIjpF,KAAKgW,MAAM5T,GAAG5E,GAChB,OAAOwC,KAAK+hE,MAAM+kB,MAAM,KAAM,MAGhC,GAAwB,IAApB9mF,KAAKoL,EAAEiH,IAAI7U,EAAE4N,GACf,OAAOpL,KAAK+hE,MAAM+kB,MAAM,KAAM,MAEhC,IAAI/qF,EAAIiE,KAAKqL,EAAEiZ,OAAO9mB,EAAE6N,GACN,IAAdtP,EAAEgnB,KAAK,KACThnB,EAAIA,EAAE2oB,OAAO1kB,KAAKoL,EAAEkZ,OAAO9mB,EAAE4N,GAAG8Z,YAClC,IAAI4pH,EAAK/yI,EAAE8oB,SAASN,QAAQvkB,KAAKoL,GAAGmZ,QAAQ/mB,EAAE4N,GAC1C2jI,EAAKhzI,EAAE2oB,OAAO1kB,KAAKoL,EAAEkZ,OAAOwqH,IAAKvqH,QAAQvkB,KAAKqL,GAClD,OAAOrL,KAAK+hE,MAAM+kB,MAAMgoD,EAAIC,IAG9B9B,EAAM3vI,UAAU2rF,IAAM,WACpB,GAAIjpF,KAAKmtI,IACP,OAAOntI,KAGT,IAAIgvI,EAAMhvI,KAAKqL,EAAE+Y,OAAOpkB,KAAKqL,GAC7B,GAAoB,IAAhB2jI,EAAIjsH,KAAK,GACX,OAAO/iB,KAAK+hE,MAAM+kB,MAAM,KAAM,MAEhC,IAAI37E,EAAInL,KAAK+hE,MAAM52D,EAEf0X,EAAK7iB,KAAKoL,EAAEyZ,SACZoqH,EAAQD,EAAI9pH,UACZnpB,EAAI8mB,EAAGuB,OAAOvB,GAAIwB,QAAQxB,GAAIwB,QAAQlZ,GAAGuZ,OAAOuqH,GAEhDH,EAAK/yI,EAAE8oB,SAASN,QAAQvkB,KAAKoL,EAAEgZ,OAAOpkB,KAAKoL,IAC3C2jI,EAAKhzI,EAAE2oB,OAAO1kB,KAAKoL,EAAEkZ,OAAOwqH,IAAKvqH,QAAQvkB,KAAKqL,GAClD,OAAOrL,KAAK+hE,MAAM+kB,MAAMgoD,EAAIC,IAG9B9B,EAAM3vI,UAAUqrF,KAAO,WACrB,OAAO3oF,KAAKoL,EAAE6Y,WAGhBgpH,EAAM3vI,UAAUsrF,KAAO,WACrB,OAAO5oF,KAAKqL,EAAE4Y,WAGhBgpH,EAAM3vI,UAAUmQ,IAAM,SAAasG,GAEjC,OADAA,EAAI,IAAI3C,EAAG2C,EAAG,IACV/T,KAAKk4F,aACAl4F,KACAA,KAAKgpF,YAAYj1E,GACjB/T,KAAK+hE,MAAMilB,aAAahnF,KAAM+T,GAC9B/T,KAAK+hE,MAAM8qE,KACX7sI,KAAK+hE,MAAMysE,gBAAgB,CAAExuI,MAAQ,CAAE+T,IAEvC/T,KAAK+hE,MAAM0lB,SAASznF,KAAM+T,IAGrCk5H,EAAM3vI,UAAU4xI,OAAS,SAAgBrgG,EAAIsY,EAAIrY,GAC/C,IAAIy4C,EAAS,CAAEvnF,KAAMmnD,GACjB4gC,EAAS,CAAEl5C,EAAIC,GACnB,OAAI9uC,KAAK+hE,MAAM8qE,KACN7sI,KAAK+hE,MAAMysE,gBAAgBjnD,EAAQQ,GAEnC/nF,KAAK+hE,MAAM8lB,YAAY,EAAGN,EAAQQ,EAAQ,IAGrDklD,EAAM3vI,UAAU6xI,QAAU,SAAiBtgG,EAAIsY,EAAIrY,GACjD,IAAIy4C,EAAS,CAAEvnF,KAAMmnD,GACjB4gC,EAAS,CAAEl5C,EAAIC,GACnB,OAAI9uC,KAAK+hE,MAAM8qE,KACN7sI,KAAK+hE,MAAMysE,gBAAgBjnD,EAAQQ,GAAQ,GAE3C/nF,KAAK+hE,MAAM8lB,YAAY,EAAGN,EAAQQ,EAAQ,GAAG,IAGxDklD,EAAM3vI,UAAU8E,GAAK,SAAY5E,GAC/B,OAAOwC,OAASxC,GACTwC,KAAKmtI,MAAQ3vI,EAAE2vI,MACVntI,KAAKmtI,KAA2B,IAApBntI,KAAKoL,EAAEiH,IAAI7U,EAAE4N,IAAgC,IAApBpL,KAAKqL,EAAEgH,IAAI7U,EAAE6N,KAGhE4hI,EAAM3vI,UAAU0Y,IAAM,SAAao5H,GACjC,GAAIpvI,KAAKmtI,IACP,OAAOntI,KAET,IAAI0J,EAAM1J,KAAK+hE,MAAM+kB,MAAM9mF,KAAKoL,EAAGpL,KAAKqL,EAAE8Z,UAC1C,GAAIiqH,GAAepvI,KAAK6mF,YAAa,CACnC,IAAIiR,EAAM93F,KAAK6mF,YACX76D,EAAS,SAASxuB,GACpB,OAAOA,EAAEwY,OAEXtM,EAAIm9E,YAAc,CAChBl4C,IAAKmpD,EAAInpD,KAAO,CACdpnB,IAAKuwE,EAAInpD,IAAIpnB,IACbggE,OAAQuQ,EAAInpD,IAAI44C,OAAOh0D,IAAIvH,IAE7Bi7D,QAAS6Q,EAAI7Q,SAAW,CACtB/Z,KAAM4qB,EAAI7Q,QAAQ/Z,KAClBqa,OAAQuQ,EAAI7Q,QAAQM,OAAOh0D,IAAIvH,KAIrC,OAAOtiB,GAGTujI,EAAM3vI,UAAU6qF,IAAM,WACpB,OAAInoF,KAAKmtI,IACAntI,KAAK+hE,MAAMslB,OAAO,KAAM,KAAM,MAE7BrnF,KAAK+hE,MAAMslB,OAAOrnF,KAAKoL,EAAGpL,KAAKqL,EAAGrL,KAAK+hE,MAAM76C,MAwBzDnW,EAASq8H,EAAQhlE,EAAKwe,WAEtB6lD,EAAWnvI,UAAU+pF,OAAS,SAAgBj8E,EAAGC,EAAGgc,GAClD,OAAO,IAAI+lH,EAAOptI,KAAMoL,EAAGC,EAAGgc,IAGhC+lH,EAAO9vI,UAAUkqF,IAAM,WACrB,GAAIxnF,KAAKk4F,aACP,OAAOl4F,KAAK+hE,MAAM+kB,MAAM,KAAM,MAEhC,IAAIuoD,EAAOrvI,KAAKqnB,EAAEnC,UACdoqH,EAAQD,EAAKxqH,SACbypH,EAAKtuI,KAAKoL,EAAEsZ,OAAO4qH,GACnBC,EAAKvvI,KAAKqL,EAAEqZ,OAAO4qH,GAAO5qH,OAAO2qH,GAErC,OAAOrvI,KAAK+hE,MAAM+kB,MAAMwnD,EAAIiB,IAG9BnC,EAAO9vI,UAAU0Y,IAAM,WACrB,OAAOhW,KAAK+hE,MAAMslB,OAAOrnF,KAAKoL,EAAGpL,KAAKqL,EAAE8Z,SAAUnlB,KAAKqnB,IAGzD+lH,EAAO9vI,UAAU8Z,IAAM,SAAa5Z,GAElC,GAAIwC,KAAKk4F,aACP,OAAO16F,EAGT,GAAIA,EAAE06F,aACJ,OAAOl4F,KAGT,IAAIwvI,EAAMhyI,EAAE6pB,EAAExC,SACV4qH,EAAKzvI,KAAKqnB,EAAExC,SACZsqB,EAAKnvC,KAAKoL,EAAEsZ,OAAO8qH,GACnBpgG,EAAK5xC,EAAE4N,EAAEsZ,OAAO+qH,GAChBjsE,EAAKxjE,KAAKqL,EAAEqZ,OAAO8qH,EAAI9qH,OAAOlnB,EAAE6pB,IAChCirE,EAAK90F,EAAE6N,EAAEqZ,OAAO+qH,EAAG/qH,OAAO1kB,KAAKqnB,IAE/BrH,EAAImvB,EAAG7qB,OAAO8qB,GACd5yC,EAAIgnE,EAAGl/C,OAAOguE,GAClB,GAAkB,IAAdtyE,EAAE+C,KAAK,GACT,OAAkB,IAAdvmB,EAAEumB,KAAK,GACF/iB,KAAK+hE,MAAMslB,OAAO,KAAM,KAAM,MAE9BrnF,KAAKipF,MAGhB,IAAIhK,EAAKj/D,EAAE6E,SACPq6D,EAAKD,EAAGv6D,OAAO1E,GACfkjC,EAAI/T,EAAGzqB,OAAOu6D,GAEd6vD,EAAKtyI,EAAEqoB,SAASR,QAAQ66D,GAAI36D,QAAQ2+B,GAAG3+B,QAAQ2+B,GAC/C6rF,EAAKvyI,EAAEkoB,OAAOw+B,EAAE3+B,QAAQuqH,IAAKvqH,QAAQi/C,EAAG9+C,OAAOw6D,IAC/CwwD,EAAK1vI,KAAKqnB,EAAE3C,OAAOlnB,EAAE6pB,GAAG3C,OAAO1E,GAEnC,OAAOhgB,KAAK+hE,MAAMslB,OAAOynD,EAAIC,EAAIW,IAGnCtC,EAAO9vI,UAAUgqF,SAAW,SAAkB9pF,GAE5C,GAAIwC,KAAKk4F,aACP,OAAO16F,EAAE2qF,MAGX,GAAI3qF,EAAE06F,aACJ,OAAOl4F,KAGT,IAAIyvI,EAAKzvI,KAAKqnB,EAAExC,SACZsqB,EAAKnvC,KAAKoL,EACVgkC,EAAK5xC,EAAE4N,EAAEsZ,OAAO+qH,GAChBjsE,EAAKxjE,KAAKqL,EACVinF,EAAK90F,EAAE6N,EAAEqZ,OAAO+qH,GAAI/qH,OAAO1kB,KAAKqnB,GAEhCrH,EAAImvB,EAAG7qB,OAAO8qB,GACd5yC,EAAIgnE,EAAGl/C,OAAOguE,GAClB,GAAkB,IAAdtyE,EAAE+C,KAAK,GACT,OAAkB,IAAdvmB,EAAEumB,KAAK,GACF/iB,KAAK+hE,MAAMslB,OAAO,KAAM,KAAM,MAE9BrnF,KAAKipF,MAGhB,IAAIhK,EAAKj/D,EAAE6E,SACPq6D,EAAKD,EAAGv6D,OAAO1E,GACfkjC,EAAI/T,EAAGzqB,OAAOu6D,GAEd6vD,EAAKtyI,EAAEqoB,SAASR,QAAQ66D,GAAI36D,QAAQ2+B,GAAG3+B,QAAQ2+B,GAC/C6rF,EAAKvyI,EAAEkoB,OAAOw+B,EAAE3+B,QAAQuqH,IAAKvqH,QAAQi/C,EAAG9+C,OAAOw6D,IAC/CwwD,EAAK1vI,KAAKqnB,EAAE3C,OAAO1E,GAEvB,OAAOhgB,KAAK+hE,MAAMslB,OAAOynD,EAAIC,EAAIW,IAGnCtC,EAAO9vI,UAAUsqF,KAAO,SAAc55E,GACpC,GAAY,IAARA,EACF,OAAOhO,KACT,GAAIA,KAAKk4F,aACP,OAAOl4F,KACT,IAAKgO,EACH,OAAOhO,KAAKipF,MAEd,IAAIvtF,EACJ,GAAIsE,KAAK+hE,MAAM4qE,OAAS3sI,KAAK+hE,MAAM6qE,OAAQ,CACzC,IAAIpwI,EAAIwD,KACR,IAAKtE,EAAI,EAAGA,EAAIsS,EAAKtS,IACnBc,EAAIA,EAAEysF,MACR,OAAOzsF,EAKT,IAAI2O,EAAInL,KAAK+hE,MAAM52D,EACfuhI,EAAO1sI,KAAK+hE,MAAM2qE,KAElBiD,EAAK3vI,KAAKoL,EACVwkI,EAAK5vI,KAAKqL,EACVwkI,EAAK7vI,KAAKqnB,EACVyoH,EAAMD,EAAGhrH,SAASA,SAGlBkrH,EAAMH,EAAGxrH,OAAOwrH,GACpB,IAAKl0I,EAAI,EAAGA,EAAIsS,EAAKtS,IAAK,CACxB,IAAIs0I,EAAML,EAAG9qH,SACTorH,EAAOF,EAAIlrH,SACXqrH,EAAOD,EAAKprH,SACZ9oB,EAAIi0I,EAAI5rH,OAAO4rH,GAAK3rH,QAAQ2rH,GAAK3rH,QAAQlZ,EAAEuZ,OAAOorH,IAElDx1D,EAAKq1D,EAAGjrH,OAAOurH,GACfnB,EAAK/yI,EAAE8oB,SAASN,QAAQ+1D,EAAGl2D,OAAOk2D,IAClCC,EAAKD,EAAG/1D,QAAQuqH,GAChBqB,EAAMp0I,EAAE2oB,OAAO61D,GACnB41D,EAAMA,EAAI9rH,QAAQ8rH,GAAK5rH,QAAQ2rH,GAC/B,IAAIR,EAAKK,EAAIrrH,OAAOmrH,GAChBn0I,EAAI,EAAIsS,IACV8hI,EAAMA,EAAIprH,OAAOwrH,IAEnBP,EAAKb,EACLe,EAAKH,EACLK,EAAMI,EAGR,OAAOnwI,KAAK+hE,MAAMslB,OAAOsoD,EAAII,EAAIrrH,OAAOgoH,GAAOmD,IAGjDzC,EAAO9vI,UAAU2rF,IAAM,WACrB,OAAIjpF,KAAKk4F,aACAl4F,KAELA,KAAK+hE,MAAM4qE,MACN3sI,KAAKowI,WACLpwI,KAAK+hE,MAAM6qE,OACX5sI,KAAKqwI,YAELrwI,KAAKswI,QAGhBlD,EAAO9vI,UAAU8yI,SAAW,WAC1B,IAAItB,EACAC,EACAW,EAEJ,GAAI1vI,KAAKqtI,KAAM,CAMb,IAAIkD,EAAKvwI,KAAKoL,EAAEyZ,SAEZ2rH,EAAKxwI,KAAKqL,EAAEwZ,SAEZ4rH,EAAOD,EAAG3rH,SAEVpnB,EAAIuC,KAAKoL,EAAEgZ,OAAOosH,GAAI3rH,SAASN,QAAQgsH,GAAIhsH,QAAQksH,GACvDhzI,EAAIA,EAAE4mB,QAAQ5mB,GAEd,IAAI3B,EAAIy0I,EAAGnsH,OAAOmsH,GAAIlsH,QAAQksH,GAE1B3zI,EAAId,EAAE+oB,SAASN,QAAQ9mB,GAAG8mB,QAAQ9mB,GAGlCizI,EAAQD,EAAKpsH,QAAQosH,GAEzBC,GADAA,EAAQA,EAAMrsH,QAAQqsH,IACRrsH,QAAQqsH,GAGtB5B,EAAKlyI,EAELmyI,EAAKjzI,EAAE4oB,OAAOjnB,EAAE8mB,QAAQ3nB,IAAI2nB,QAAQmsH,GAEpChB,EAAK1vI,KAAKqL,EAAE+Y,OAAOpkB,KAAKqL,OACnB,CAML,IAAIF,EAAInL,KAAKoL,EAAEyZ,SAEX5d,EAAIjH,KAAKqL,EAAEwZ,SAEX9oB,EAAIkL,EAAE4d,SAEN7oB,EAAIgE,KAAKoL,EAAEgZ,OAAOnd,GAAG4d,SAASN,QAAQpZ,GAAGoZ,QAAQxoB,GACrDC,EAAIA,EAAEqoB,QAAQroB,GAEd,IAAI2O,EAAIQ,EAAEiZ,OAAOjZ,GAAGkZ,QAAQlZ,GAExB6yE,EAAIrzE,EAAEka,SAGNslH,EAAKpuI,EAAEsoB,QAAQtoB,GAEnBouI,GADAA,EAAKA,EAAG9lH,QAAQ8lH,IACR9lH,QAAQ8lH,GAGhB2E,EAAK9wD,EAAEz5D,QAAQvoB,GAAGuoB,QAAQvoB,GAE1B+yI,EAAKpkI,EAAE+Z,OAAO1oB,EAAEuoB,QAAQuqH,IAAKvqH,QAAQ4lH,GAGrCuF,GADAA,EAAK1vI,KAAKqL,EAAEqZ,OAAO1kB,KAAKqnB,IAChBhD,QAAQqrH,GAGlB,OAAO1vI,KAAK+hE,MAAMslB,OAAOynD,EAAIC,EAAIW,IAGnCtC,EAAO9vI,UAAU+yI,UAAY,WAC3B,IAAIvB,EACAC,EACAW,EAEJ,GAAI1vI,KAAKqtI,KAAM,CAMb,IAAIkD,EAAKvwI,KAAKoL,EAAEyZ,SAEZ2rH,EAAKxwI,KAAKqL,EAAEwZ,SAEZ4rH,EAAOD,EAAG3rH,SAEVpnB,EAAIuC,KAAKoL,EAAEgZ,OAAOosH,GAAI3rH,SAASN,QAAQgsH,GAAIhsH,QAAQksH,GACvDhzI,EAAIA,EAAE4mB,QAAQ5mB,GAEd,IAAI3B,EAAIy0I,EAAGnsH,OAAOmsH,GAAIlsH,QAAQksH,GAAIlsH,QAAQrkB,KAAK+hE,MAAM52D,GAEjDvO,EAAId,EAAE+oB,SAASN,QAAQ9mB,GAAG8mB,QAAQ9mB,GAEtCqxI,EAAKlyI,EAEL,IAAI8zI,EAAQD,EAAKpsH,QAAQosH,GAEzBC,GADAA,EAAQA,EAAMrsH,QAAQqsH,IACRrsH,QAAQqsH,GACtB3B,EAAKjzI,EAAE4oB,OAAOjnB,EAAE8mB,QAAQ3nB,IAAI2nB,QAAQmsH,GAEpChB,EAAK1vI,KAAKqL,EAAE+Y,OAAOpkB,KAAKqL,OACnB,CAKL,IAAIyX,EAAQ9iB,KAAKqnB,EAAExC,SAEf8rH,EAAQ3wI,KAAKqL,EAAEwZ,SAEfikE,EAAO9oF,KAAKoL,EAAEsZ,OAAOisH,GAErBC,EAAQ5wI,KAAKoL,EAAEkZ,OAAOxB,GAAO4B,OAAO1kB,KAAKoL,EAAEgZ,OAAOtB,IACtD8tH,EAAQA,EAAMxsH,OAAOwsH,GAAOvsH,QAAQusH,GAEpC,IAAIC,EAAQ/nD,EAAKzkE,QAAQykE,GAErBgoD,GADJD,EAAQA,EAAMxsH,QAAQwsH,IACJzsH,OAAOysH,GACzB/B,EAAK8B,EAAM/rH,SAASN,QAAQusH,GAE5BpB,EAAK1vI,KAAKqL,EAAE+Y,OAAOpkB,KAAKqnB,GAAGxC,SAASN,QAAQosH,GAAOpsH,QAAQzB,GAE3D,IAAIiuH,EAAUJ,EAAM9rH,SAGpBksH,GADAA,GADAA,EAAUA,EAAQ1sH,QAAQ0sH,IACR1sH,QAAQ0sH,IACR1sH,QAAQ0sH,GAC1BhC,EAAK6B,EAAMlsH,OAAOmsH,EAAMtsH,QAAQuqH,IAAKvqH,QAAQwsH,GAG/C,OAAO/wI,KAAK+hE,MAAMslB,OAAOynD,EAAIC,EAAIW,IAGnCtC,EAAO9vI,UAAUgzI,KAAO,WACtB,IAAInlI,EAAInL,KAAK+hE,MAAM52D,EAGfwkI,EAAK3vI,KAAKoL,EACVwkI,EAAK5vI,KAAKqL,EACVwkI,EAAK7vI,KAAKqnB,EACVyoH,EAAMD,EAAGhrH,SAASA,SAElBmrH,EAAML,EAAG9qH,SACTmsH,EAAMpB,EAAG/qH,SAET9oB,EAAIi0I,EAAI5rH,OAAO4rH,GAAK3rH,QAAQ2rH,GAAK3rH,QAAQlZ,EAAEuZ,OAAOorH,IAElDmB,EAAOtB,EAAGvrH,OAAOurH,GAEjBr1D,GADJ22D,EAAOA,EAAK5sH,QAAQ4sH,IACNvsH,OAAOssH,GACjBlC,EAAK/yI,EAAE8oB,SAASN,QAAQ+1D,EAAGl2D,OAAOk2D,IAClCC,EAAKD,EAAG/1D,QAAQuqH,GAEhBoC,EAAOF,EAAInsH,SAGfqsH,GADAA,GADAA,EAAOA,EAAK7sH,QAAQ6sH,IACR7sH,QAAQ6sH,IACR7sH,QAAQ6sH,GACpB,IAAInC,EAAKhzI,EAAE2oB,OAAO61D,GAAIh2D,QAAQ2sH,GAC1BxB,EAAKE,EAAGxrH,OAAOwrH,GAAIlrH,OAAOmrH,GAE9B,OAAO7vI,KAAK+hE,MAAMslB,OAAOynD,EAAIC,EAAIW,IAGnCtC,EAAO9vI,UAAU6zI,KAAO,WACtB,IAAKnxI,KAAK+hE,MAAM4qE,MACd,OAAO3sI,KAAKipF,MAAM7xE,IAAIpX,MAMxB,IAAIuwI,EAAKvwI,KAAKoL,EAAEyZ,SAEZ2rH,EAAKxwI,KAAKqL,EAAEwZ,SAEZusH,EAAKpxI,KAAKqnB,EAAExC,SAEZ4rH,EAAOD,EAAG3rH,SAEV/oB,EAAIy0I,EAAGnsH,OAAOmsH,GAAIlsH,QAAQksH,GAE1Bc,EAAKv1I,EAAE+oB,SAEPla,EAAI3K,KAAKoL,EAAEgZ,OAAOosH,GAAI3rH,SAASN,QAAQgsH,GAAIhsH,QAAQksH,GAKnD/a,GAFJ/qH,GADAA,GADAA,EAAIA,EAAE0Z,QAAQ1Z,IACRyZ,OAAOzZ,GAAG0Z,QAAQ1Z,IAClB4Z,QAAQ8sH,IAEHxsH,SAEPjoB,EAAI6zI,EAAKpsH,QAAQosH,GAGrB7zI,GADAA,GADAA,EAAIA,EAAEynB,QAAQznB,IACRynB,QAAQznB,IACRynB,QAAQznB,GAEd,IAAI+qB,EAAI7rB,EAAEuoB,QAAQ1Z,GAAGka,SAASN,QAAQ8sH,GAAI9sH,QAAQmxG,GAAInxG,QAAQ3nB,GAE1D00I,EAAOd,EAAG9rH,OAAOiD,GAErB2pH,GADAA,EAAOA,EAAKjtH,QAAQitH,IACRjtH,QAAQitH,GACpB,IAAIxC,EAAK9uI,KAAKoL,EAAEsZ,OAAOgxG,GAAInxG,QAAQ+sH,GAEnCxC,GADAA,EAAKA,EAAGzqH,QAAQyqH,IACRzqH,QAAQyqH,GAEhB,IAAIC,EAAK/uI,KAAKqL,EAAEqZ,OAAOiD,EAAEjD,OAAO9nB,EAAE2nB,QAAQoD,IAAIpD,QAAQ5Z,EAAE+Z,OAAOgxG,KAG/DqZ,GADAA,GADAA,EAAKA,EAAG1qH,QAAQ0qH,IACR1qH,QAAQ0qH,IACR1qH,QAAQ0qH,GAEhB,IAAIW,EAAK1vI,KAAKqnB,EAAEjD,OAAOzZ,GAAGka,SAASN,QAAQ6sH,GAAI7sH,QAAQmxG,GAEvD,OAAO11H,KAAK+hE,MAAMslB,OAAOynD,EAAIC,EAAIW,IAGnCtC,EAAO9vI,UAAUmQ,IAAM,SAAasG,EAAGw9H,GAGrC,OAFAx9H,EAAI,IAAI3C,EAAG2C,EAAGw9H,GAEPvxI,KAAK+hE,MAAM0lB,SAASznF,KAAM+T,IAGnCq5H,EAAO9vI,UAAU8E,GAAK,SAAY5E,GAChC,GAAe,WAAXA,EAAEqI,KACJ,OAAO7F,KAAKoC,GAAG5E,EAAE2qF,OAEnB,GAAInoF,OAASxC,EACX,OAAO,EAGT,IAAIiyI,EAAKzvI,KAAKqnB,EAAExC,SACZ2qH,EAAMhyI,EAAE6pB,EAAExC,SACd,GAA2D,IAAvD7kB,KAAKoL,EAAEsZ,OAAO8qH,GAAKjrH,QAAQ/mB,EAAE4N,EAAEsZ,OAAO+qH,IAAK1sH,KAAK,GAClD,OAAO,EAGT,IAAIyuH,EAAK/B,EAAG/qH,OAAO1kB,KAAKqnB,GACpBoqH,EAAMjC,EAAI9qH,OAAOlnB,EAAE6pB,GACvB,OAA8D,IAAvDrnB,KAAKqL,EAAEqZ,OAAO+sH,GAAKltH,QAAQ/mB,EAAE6N,EAAEqZ,OAAO8sH,IAAKzuH,KAAK,IAGzDqqH,EAAO9vI,UAAUo0I,OAAS,SAAgBtmI,GACxC,IAAIg2C,EAAKphD,KAAKqnB,EAAExC,SACZ1G,EAAK/S,EAAEyY,MAAM7jB,KAAK+hE,MAAMpwD,KAAK+S,OAAO08B,GACxC,GAAuB,IAAnBphD,KAAKoL,EAAEiH,IAAI8L,GACb,OAAO,EAIT,IAFA,IAAI2iC,EAAK11C,EAAEmI,QACP3W,EAAIoD,KAAK+hE,MAAM2kB,KAAKhiE,OAAO08B,KACtB,CAEP,GADAN,EAAG5pC,KAAKlX,KAAK+hE,MAAM5kE,GACf2jD,EAAGzuC,IAAIrS,KAAK+hE,MAAMvkE,IAAM,EAC1B,OAAO,EAGT,GADA2gB,EAAGkG,QAAQznB,GACY,IAAnBoD,KAAKoL,EAAEiH,IAAI8L,GACb,OAAO,IAIbivH,EAAO9vI,UAAUsO,QAAU,WACzB,OAAI5L,KAAKk4F,aACA,uBACF,iBAAmBl4F,KAAKoL,EAAEpJ,SAAS,GAAI,GAC1C,OAAShC,KAAKqL,EAAErJ,SAAS,GAAI,GAC7B,OAAShC,KAAKqnB,EAAErlB,SAAS,GAAI,GAAK,KAGxCorI,EAAO9vI,UAAU46F,WAAa,WAE5B,OAA0B,IAAnBl4F,KAAKqnB,EAAEtE,KAAK,K,6BCt6BrB,IAAI3R,EAAKtS,EAAQ,IACbiS,EAAWjS,EAAQ,IACnBspE,EAAOtpE,EAAQ,KAEfwvC,EAAQxvC,EAAQ,IAEpB,SAAS6yI,EAAU3rD,GACjB5d,EAAKvsE,KAAKmE,KAAM,OAAQgmF,GAExBhmF,KAAKmL,EAAI,IAAIiG,EAAG40E,EAAK76E,EAAG,IAAI0Y,MAAM7jB,KAAK2R,KACvC3R,KAAKiH,EAAI,IAAImK,EAAG40E,EAAK/+E,EAAG,IAAI4c,MAAM7jB,KAAK2R,KACvC3R,KAAK4xI,GAAK,IAAIxgI,EAAG,GAAGyS,MAAM7jB,KAAK2R,KAAKuT,UACpCllB,KAAKimF,IAAM,IAAI70E,EAAG,GAAGyS,MAAM7jB,KAAK2R,KAChC3R,KAAK6xI,IAAM7xI,KAAK4xI,GAAGltH,OAAO1kB,KAAKmL,EAAEiZ,OAAOpkB,KAAKimF,MAc/C,SAASgnD,EAAMlrE,EAAO32D,EAAGic,GACvB+gD,EAAKwe,UAAU/qF,KAAKmE,KAAM+hE,EAAO,cACvB,OAAN32D,GAAoB,OAANic,GAChBrnB,KAAKoL,EAAIpL,KAAK+hE,MAAM76C,IACpBlnB,KAAKqnB,EAAIrnB,KAAK+hE,MAAMnqC,OAEpB53B,KAAKoL,EAAI,IAAIgG,EAAGhG,EAAG,IACnBpL,KAAKqnB,EAAI,IAAIjW,EAAGiW,EAAG,IACdrnB,KAAKoL,EAAEuG,MACV3R,KAAKoL,EAAIpL,KAAKoL,EAAEyY,MAAM7jB,KAAK+hE,MAAMpwD,MAC9B3R,KAAKqnB,EAAE1V,MACV3R,KAAKqnB,EAAIrnB,KAAKqnB,EAAExD,MAAM7jB,KAAK+hE,MAAMpwD,OAvBvCZ,EAAS4gI,EAAWvpE,GACpBjtE,EAAOD,QAAUy2I,EAEjBA,EAAUr0I,UAAUypF,SAAW,SAAkBD,GAC/C,IAAI17E,EAAI07E,EAAMgrD,YAAY1mI,EACtByX,EAAKzX,EAAEyZ,SACP0pH,EAAM1rH,EAAG6B,OAAOtZ,GAAGgZ,OAAOvB,EAAG6B,OAAO1kB,KAAKmL,IAAIiZ,OAAOhZ,GAGxD,OAA+B,IAFvBmjI,EAAIvpH,UAEHH,SAASxS,IAAIk8H,IAiBxBx9H,EAASk8H,EAAO7kE,EAAKwe,WAErB+qD,EAAUr0I,UAAUgrF,YAAc,SAAqBnlF,EAAOutC,GAC5D,OAAO1wC,KAAK8mF,MAAMx4C,EAAM57B,QAAQvP,EAAOutC,GAAM,IAG/CihG,EAAUr0I,UAAUwpF,MAAQ,SAAe17E,EAAGic,GAC5C,OAAO,IAAI4lH,EAAMjtI,KAAMoL,EAAGic,IAG5BsqH,EAAUr0I,UAAU4oF,cAAgB,SAAuBxoF,GACzD,OAAOuvI,EAAM0B,SAAS3uI,KAAMtC,IAG9BuvI,EAAM3vI,UAAUurF,WAAa,aAI7BokD,EAAM3vI,UAAUmrF,QAAU,WACxB,OAAOzoF,KAAK2oF,OAAOj2E,QAAQ,KAAM1S,KAAK+hE,MAAMvkE,EAAEsH,eAGhDmoI,EAAM0B,SAAW,SAAkB5sE,EAAOrkE,GACxC,OAAO,IAAIuvI,EAAMlrE,EAAOrkE,EAAI,GAAIA,EAAI,IAAMqkE,EAAM76C,MAGlD+lH,EAAM3vI,UAAUsO,QAAU,WACxB,OAAI5L,KAAKk4F,aACA,sBACF,gBAAkBl4F,KAAKoL,EAAE6Y,UAAUjiB,SAAS,GAAI,GACnD,OAAShC,KAAKqnB,EAAEpD,UAAUjiB,SAAS,GAAI,GAAK,KAGlDirI,EAAM3vI,UAAU46F,WAAa,WAE3B,OAA0B,IAAnBl4F,KAAKqnB,EAAEtE,KAAK,IAGrBkqH,EAAM3vI,UAAU2rF,IAAM,WAKpB,IAEImkB,EAFIptG,KAAKoL,EAAEgZ,OAAOpkB,KAAKqnB,GAEhBxC,SAIPktH,EAFI/xI,KAAKoL,EAAEkZ,OAAOtkB,KAAKqnB,GAEhBxC,SAEP9oB,EAAIqxG,EAAG9oF,OAAOytH,GAEdjD,EAAK1hC,EAAG1oF,OAAOqtH,GAEfrC,EAAK3zI,EAAE2oB,OAAOqtH,EAAG3tH,OAAOpkB,KAAK+hE,MAAM8vE,IAAIntH,OAAO3oB,KAClD,OAAOiE,KAAK+hE,MAAM+kB,MAAMgoD,EAAIY,IAG9BzC,EAAM3vI,UAAU8Z,IAAM,WACpB,MAAM,IAAIlW,MAAM,sCAGlB+rI,EAAM3vI,UAAU00I,QAAU,SAAiBx0I,EAAG0jB,GAK5C,IAAI/V,EAAInL,KAAKoL,EAAEgZ,OAAOpkB,KAAKqnB,GAEvBpgB,EAAIjH,KAAKoL,EAAEkZ,OAAOtkB,KAAKqnB,GAEvBtrB,EAAIyB,EAAE4N,EAAEgZ,OAAO5mB,EAAE6pB,GAIjB4qH,EAFIz0I,EAAE4N,EAAEkZ,OAAO9mB,EAAE6pB,GAEV3C,OAAOvZ,GAEdwzC,EAAK5iD,EAAE2oB,OAAOzd,GAEd6nI,EAAK5tH,EAAKmG,EAAE3C,OAAOutH,EAAG7tH,OAAOu6B,GAAI95B,UAEjC6qH,EAAKxuH,EAAK9V,EAAEsZ,OAAOutH,EAAG1tH,QAAQo6B,GAAI95B,UACtC,OAAO7kB,KAAK+hE,MAAM+kB,MAAMgoD,EAAIY,IAG9BzC,EAAM3vI,UAAUmQ,IAAM,SAAasG,GAMjC,IALA,IAAInX,EAAImX,EAAER,QACNpI,EAAInL,KACJiH,EAAIjH,KAAK+hE,MAAM+kB,MAAM,KAAM,MAGtBpnE,EAAO,GAAkB,IAAd9iB,EAAEmmB,KAAK,GAAUnmB,EAAEoY,OAAO,GAC5C0K,EAAK7W,KAAKjM,EAAEmY,MAAM,IAEpB,IAAK,IAAIrZ,EAAIgkB,EAAKzhB,OAAS,EAAGvC,GAAK,EAAGA,IACpB,IAAZgkB,EAAKhkB,IAEPyP,EAAIA,EAAE6mI,QAAQ/qI,EARVjH,MAUJiH,EAAIA,EAAEgiF,QAGNhiF,EAAIkE,EAAE6mI,QAAQ/qI,EAbVjH,MAeJmL,EAAIA,EAAE89E,OAGV,OAAOhiF,GAGTgmI,EAAM3vI,UAAU4xI,OAAS,WACvB,MAAM,IAAIhuI,MAAM,sCAGlB+rI,EAAM3vI,UAAU40I,QAAU,WACxB,MAAM,IAAIhxI,MAAM,sCAGlB+rI,EAAM3vI,UAAU8E,GAAK,SAAYF,GAC/B,OAAyC,IAAlClC,KAAK2oF,OAAOt2E,IAAInQ,EAAMymF,SAG/BskD,EAAM3vI,UAAUw0I,UAAY,WAG1B,OAFA9xI,KAAKoL,EAAIpL,KAAKoL,EAAEsZ,OAAO1kB,KAAKqnB,EAAEnC,WAC9BllB,KAAKqnB,EAAIrnB,KAAK+hE,MAAM76C,IACblnB,MAGTitI,EAAM3vI,UAAUqrF,KAAO,WAIrB,OAFA3oF,KAAK8xI,YAEE9xI,KAAKoL,EAAE6Y,Y,6BC9KhB,IAAIqqB,EAAQxvC,EAAQ,IAChBsS,EAAKtS,EAAQ,IACbiS,EAAWjS,EAAQ,IACnBspE,EAAOtpE,EAAQ,KAEf+R,EAASy9B,EAAMz9B,OAEnB,SAASshI,EAAansD,GAEpBhmF,KAAKoyI,QAA2B,IAAP,EAATpsD,EAAK76E,GACrBnL,KAAKqyI,MAAQryI,KAAKoyI,UAA6B,IAAR,EAATpsD,EAAK76E,GACnCnL,KAAK+f,SAAW/f,KAAKqyI,MAErBjqE,EAAKvsE,KAAKmE,KAAM,UAAWgmF,GAE3BhmF,KAAKmL,EAAI,IAAIiG,EAAG40E,EAAK76E,EAAG,IAAIqW,KAAKxhB,KAAK2R,IAAI7V,GAC1CkE,KAAKmL,EAAInL,KAAKmL,EAAE0Y,MAAM7jB,KAAK2R,KAC3B3R,KAAKjE,EAAI,IAAIqV,EAAG40E,EAAKjqF,EAAG,IAAI8nB,MAAM7jB,KAAK2R,KACvC3R,KAAK2nG,GAAK3nG,KAAKjE,EAAE8oB,SACjB7kB,KAAKhE,EAAI,IAAIoV,EAAG40E,EAAKhqF,EAAG,IAAI6nB,MAAM7jB,KAAK2R,KACvC3R,KAAKsyI,GAAKtyI,KAAKhE,EAAEooB,OAAOpkB,KAAKhE,GAE7B6U,GAAQ7Q,KAAKoyI,SAAwC,IAA7BpyI,KAAKjE,EAAEkoB,UAAUlB,KAAK,IAC9C/iB,KAAKuyI,KAAwB,IAAP,EAATvsD,EAAKjqF,GAwFpB,SAASkxI,EAAMlrE,EAAO32D,EAAGC,EAAGgc,EAAGzqB,GAC7BwrE,EAAKwe,UAAU/qF,KAAKmE,KAAM+hE,EAAO,cACvB,OAAN32D,GAAoB,OAANC,GAAoB,OAANgc,GAC9BrnB,KAAKoL,EAAIpL,KAAK+hE,MAAMnqC,KACpB53B,KAAKqL,EAAIrL,KAAK+hE,MAAM76C,IACpBlnB,KAAKqnB,EAAIrnB,KAAK+hE,MAAM76C,IACpBlnB,KAAKpD,EAAIoD,KAAK+hE,MAAMnqC,KACpB53B,KAAKqtI,MAAO,IAEZrtI,KAAKoL,EAAI,IAAIgG,EAAGhG,EAAG,IACnBpL,KAAKqL,EAAI,IAAI+F,EAAG/F,EAAG,IACnBrL,KAAKqnB,EAAIA,EAAI,IAAIjW,EAAGiW,EAAG,IAAMrnB,KAAK+hE,MAAM76C,IACxClnB,KAAKpD,EAAIA,GAAK,IAAIwU,EAAGxU,EAAG,IACnBoD,KAAKoL,EAAEuG,MACV3R,KAAKoL,EAAIpL,KAAKoL,EAAEyY,MAAM7jB,KAAK+hE,MAAMpwD,MAC9B3R,KAAKqL,EAAEsG,MACV3R,KAAKqL,EAAIrL,KAAKqL,EAAEwY,MAAM7jB,KAAK+hE,MAAMpwD,MAC9B3R,KAAKqnB,EAAE1V,MACV3R,KAAKqnB,EAAIrnB,KAAKqnB,EAAExD,MAAM7jB,KAAK+hE,MAAMpwD,MAC/B3R,KAAKpD,IAAMoD,KAAKpD,EAAE+U,MACpB3R,KAAKpD,EAAIoD,KAAKpD,EAAEinB,MAAM7jB,KAAK+hE,MAAMpwD,MACnC3R,KAAKqtI,KAAOrtI,KAAKqnB,IAAMrnB,KAAK+hE,MAAM76C,IAG9BlnB,KAAK+hE,MAAMhiD,WAAa/f,KAAKpD,IAC/BoD,KAAKpD,EAAIoD,KAAKoL,EAAEsZ,OAAO1kB,KAAKqL,GACvBrL,KAAKqtI,OACRrtI,KAAKpD,EAAIoD,KAAKpD,EAAE8nB,OAAO1kB,KAAKqnB,EAAEnC,cAjHtCnU,EAASohI,EAAc/pE,GACvBjtE,EAAOD,QAAUi3I,EAEjBA,EAAa70I,UAAUk1I,MAAQ,SAAehyI,GAC5C,OAAIR,KAAKqyI,MACA7xI,EAAI2kB,SAEJnlB,KAAKmL,EAAEuZ,OAAOlkB,IAGzB2xI,EAAa70I,UAAUm1I,MAAQ,SAAejyI,GAC5C,OAAIR,KAAKuyI,KACA/xI,EAEAR,KAAKjE,EAAE2oB,OAAOlkB,IAIzB2xI,EAAa70I,UAAU+pF,OAAS,SAAgBj8E,EAAGC,EAAGgc,EAAGzqB,GACvD,OAAOoD,KAAK8mF,MAAM17E,EAAGC,EAAGgc,EAAGzqB,IAG7Bu1I,EAAa70I,UAAUirF,WAAa,SAAoBn9E,EAAGiT,IACzDjT,EAAI,IAAIgG,EAAGhG,EAAG,KACPuG,MACLvG,EAAIA,EAAEyY,MAAM7jB,KAAK2R,MAEnB,IAAIkR,EAAKzX,EAAEyZ,SACP0pH,EAAMvuI,KAAK2nG,GAAGrjF,OAAOtkB,KAAKmL,EAAEuZ,OAAO7B,IACnC6vH,EAAM1yI,KAAKknB,IAAI5C,OAAOtkB,KAAK2nG,GAAGjjF,OAAO1kB,KAAKhE,GAAG0oB,OAAO7B,IAEpDkrH,EAAKQ,EAAI7pH,OAAOguH,EAAIxtH,WACpB7Z,EAAI0iI,EAAG/oH,UACX,GAA6C,IAAzC3Z,EAAEwZ,SAASP,OAAOypH,GAAI17H,IAAIrS,KAAK43B,MACjC,MAAM,IAAI12B,MAAM,iBAElB,IAAIshB,EAAQnX,EAAE4Y,UAAUzB,QAIxB,OAHInE,IAAQmE,IAAUnE,GAAOmE,KAC3BnX,EAAIA,EAAE8Z,UAEDnlB,KAAK8mF,MAAM17E,EAAGC,IAGvB8mI,EAAa70I,UAAUq1I,WAAa,SAAoBtnI,EAAGgT,IACzDhT,EAAI,IAAI+F,EAAG/F,EAAG,KACPsG,MACLtG,EAAIA,EAAEwY,MAAM7jB,KAAK2R,MAGnB,IAAIo8H,EAAK1iI,EAAEwZ,SACP6tH,EAAM3E,EAAGzpH,OAAOtkB,KAAK2nG,IACrB4mC,EAAMR,EAAGrpH,OAAO1kB,KAAKhE,GAAG0oB,OAAO1kB,KAAK2nG,IAAIrjF,OAAOtkB,KAAKmL,GACpD0X,EAAK6vH,EAAIhuH,OAAO6pH,EAAIrpH,WAExB,GAA0B,IAAtBrC,EAAGxQ,IAAIrS,KAAK43B,MAAa,CAC3B,GAAIvZ,EACF,MAAM,IAAInd,MAAM,iBAEhB,OAAOlB,KAAK8mF,MAAM9mF,KAAK43B,KAAMvsB,GAGjC,IAAID,EAAIyX,EAAGmC,UACX,GAA6C,IAAzC5Z,EAAEyZ,SAASP,OAAOzB,GAAIxQ,IAAIrS,KAAK43B,MACjC,MAAM,IAAI12B,MAAM,iBAKlB,OAHIkK,EAAE6Y,UAAUzB,UAAYnE,IAC1BjT,EAAIA,EAAE+Z,UAEDnlB,KAAK8mF,MAAM17E,EAAGC,IAGvB8mI,EAAa70I,UAAUypF,SAAW,SAAkBD,GAClD,GAAIA,EAAMoR,aACR,OAAO,EAGTpR,EAAMgrD,YAEN,IAAIjvH,EAAKikE,EAAM17E,EAAEyZ,SACbkpH,EAAKjnD,EAAMz7E,EAAEwZ,SACb6tH,EAAM7vH,EAAG6B,OAAO1kB,KAAKmL,GAAGiZ,OAAO2pH,GAC/BQ,EAAMvuI,KAAK2nG,GAAGjjF,OAAO1kB,KAAKknB,IAAI9C,OAAOpkB,KAAKhE,EAAE0oB,OAAO7B,GAAI6B,OAAOqpH,KAElE,OAAwB,IAAjB2E,EAAIrgI,IAAIk8H,IAkCjBx9H,EAASk8H,EAAO7kE,EAAKwe,WAErBurD,EAAa70I,UAAU4oF,cAAgB,SAAuBxoF,GAC5D,OAAOuvI,EAAM0B,SAAS3uI,KAAMtC,IAG9By0I,EAAa70I,UAAUwpF,MAAQ,SAAe17E,EAAGC,EAAGgc,EAAGzqB,GACrD,OAAO,IAAIqwI,EAAMjtI,KAAMoL,EAAGC,EAAGgc,EAAGzqB,IAGlCqwI,EAAM0B,SAAW,SAAkB5sE,EAAOrkE,GACxC,OAAO,IAAIuvI,EAAMlrE,EAAOrkE,EAAI,GAAIA,EAAI,GAAIA,EAAI,KAG9CuvI,EAAM3vI,UAAUsO,QAAU,WACxB,OAAI5L,KAAKk4F,aACA,sBACF,gBAAkBl4F,KAAKoL,EAAE6Y,UAAUjiB,SAAS,GAAI,GACnD,OAAShC,KAAKqL,EAAE4Y,UAAUjiB,SAAS,GAAI,GACvC,OAAShC,KAAKqnB,EAAEpD,UAAUjiB,SAAS,GAAI,GAAK,KAGlDirI,EAAM3vI,UAAU46F,WAAa,WAE3B,OAA0B,IAAnBl4F,KAAKoL,EAAE2X,KAAK,KACO,IAAvB/iB,KAAKqL,EAAEgH,IAAIrS,KAAKqnB,IAChBrnB,KAAKqtI,MAAqC,IAA7BrtI,KAAKqL,EAAEgH,IAAIrS,KAAK+hE,MAAMhmE,KAGxCkxI,EAAM3vI,UAAUs1I,QAAU,WAMxB,IAAIznI,EAAInL,KAAKoL,EAAEyZ,SAEX5d,EAAIjH,KAAKqL,EAAEwZ,SAEX9oB,EAAIiE,KAAKqnB,EAAExC,SACf9oB,EAAIA,EAAEsoB,QAAQtoB,GAEd,IAAIC,EAAIgE,KAAK+hE,MAAMywE,MAAMrnI,GAErBR,EAAI3K,KAAKoL,EAAEgZ,OAAOpkB,KAAKqL,GAAGwZ,SAASN,QAAQpZ,GAAGoZ,QAAQtd,GAEtDkb,EAAInmB,EAAEooB,OAAOnd,GAEb+2E,EAAI77D,EAAEmC,OAAOvoB,GAEbikB,EAAIhkB,EAAEsoB,OAAOrd,GAEb6nI,EAAKnkI,EAAE+Z,OAAOs5D,GAEd+wD,EAAK5sH,EAAEuC,OAAO1E,GAEd6yH,EAAKloI,EAAE+Z,OAAO1E,GAEd0vH,EAAK1xD,EAAEt5D,OAAOvC,GAClB,OAAOniB,KAAK+hE,MAAM+kB,MAAMgoD,EAAIC,EAAIW,EAAImD,IAGtC5F,EAAM3vI,UAAUw1I,SAAW,WAQzB,IAMIhE,EACAC,EACAW,EACA/kI,EACAqV,EACAhY,EAXAf,EAAIjH,KAAKoL,EAAEgZ,OAAOpkB,KAAKqL,GAAGwZ,SAE1B9oB,EAAIiE,KAAKoL,EAAEyZ,SAEX7oB,EAAIgE,KAAKqL,EAAEwZ,SAQf,GAAI7kB,KAAK+hE,MAAMqwE,QAAS,CAItB,IAAIp0D,GAFJrzE,EAAI3K,KAAK+hE,MAAMywE,MAAMz2I,IAEXqoB,OAAOpoB,GACbgE,KAAKqtI,MAEPyB,EAAK7nI,EAAEqd,OAAOvoB,GAAGuoB,OAAOtoB,GAAG0oB,OAAOs5D,EAAE15D,OAAOtkB,KAAK+hE,MAAMkkB,MAEtD8oD,EAAK/wD,EAAEt5D,OAAO/Z,EAAE2Z,OAAOtoB,IAEvB0zI,EAAK1xD,EAAEn5D,SAASP,OAAO05D,GAAG15D,OAAO05D,KAGjCh+D,EAAIhgB,KAAKqnB,EAAExC,SAEX7c,EAAIg2E,EAAE15D,OAAOtE,GAAGuE,QAAQvE,GAExB8uH,EAAK7nI,EAAEqd,OAAOvoB,GAAGwoB,QAAQvoB,GAAG0oB,OAAO1c,GAEnC+mI,EAAK/wD,EAAEt5D,OAAO/Z,EAAE2Z,OAAOtoB,IAEvB0zI,EAAK1xD,EAAEt5D,OAAO1c,SAIhB2C,EAAI5O,EAAEqoB,OAAOpoB,GAEbgkB,EAAIhgB,KAAK+hE,MAAM0wE,MAAMzyI,KAAKqnB,GAAGxC,SAE7B7c,EAAI2C,EAAE2Z,OAAOtE,GAAGsE,OAAOtE,GAEvB8uH,EAAK9uI,KAAK+hE,MAAM0wE,MAAMxrI,EAAEsd,QAAQ5Z,IAAI+Z,OAAO1c,GAE3C+mI,EAAK/uI,KAAK+hE,MAAM0wE,MAAM9nI,GAAG+Z,OAAO3oB,EAAEwoB,QAAQvoB,IAE1C0zI,EAAK/kI,EAAE+Z,OAAO1c,GAEhB,OAAOhI,KAAK+hE,MAAM+kB,MAAMgoD,EAAIC,EAAIW,IAGlCzC,EAAM3vI,UAAU2rF,IAAM,WACpB,OAAIjpF,KAAKk4F,aACAl4F,KAGLA,KAAK+hE,MAAMhiD,SACN/f,KAAK4yI,UAEL5yI,KAAK8yI,YAGhB7F,EAAM3vI,UAAUy1I,QAAU,SAAiBv1I,GAMzC,IAAI2N,EAAInL,KAAKqL,EAAEiZ,OAAOtkB,KAAKoL,GAAGsZ,OAAOlnB,EAAE6N,EAAEiZ,OAAO9mB,EAAE4N,IAE9CnE,EAAIjH,KAAKqL,EAAE+Y,OAAOpkB,KAAKoL,GAAGsZ,OAAOlnB,EAAE6N,EAAE+Y,OAAO5mB,EAAE4N,IAE9CrP,EAAIiE,KAAKpD,EAAE8nB,OAAO1kB,KAAK+hE,MAAMuwE,IAAI5tH,OAAOlnB,EAAEZ,GAE1CZ,EAAIgE,KAAKqnB,EAAE3C,OAAOlnB,EAAE6pB,EAAEjD,OAAO5mB,EAAE6pB,IAE/B1c,EAAI1D,EAAEqd,OAAOnZ,GAEb6yE,EAAIhiF,EAAEsoB,OAAOvoB,GAEbomB,EAAInmB,EAAEooB,OAAOroB,GAEbikB,EAAI/Y,EAAEmd,OAAOjZ,GAEb2jI,EAAKnkI,EAAE+Z,OAAOs5D,GAEd+wD,EAAK5sH,EAAEuC,OAAO1E,GAEd6yH,EAAKloI,EAAE+Z,OAAO1E,GAEd0vH,EAAK1xD,EAAEt5D,OAAOvC,GAClB,OAAOniB,KAAK+hE,MAAM+kB,MAAMgoD,EAAIC,EAAIW,EAAImD,IAGtC5F,EAAM3vI,UAAU01I,SAAW,SAAkBx1I,GAO3C,IAgBIuxI,EACAW,EAjBAvkI,EAAInL,KAAKqnB,EAAE3C,OAAOlnB,EAAE6pB,GAEpBpgB,EAAIkE,EAAE0Z,SAEN9oB,EAAIiE,KAAKoL,EAAEsZ,OAAOlnB,EAAE4N,GAEpBpP,EAAIgE,KAAKqL,EAAEqZ,OAAOlnB,EAAE6N,GAEpBV,EAAI3K,KAAK+hE,MAAM/lE,EAAE0oB,OAAO3oB,GAAG2oB,OAAO1oB,GAElCgiF,EAAI/2E,EAAEqd,OAAO3Z,GAEbwX,EAAIlb,EAAEmd,OAAOzZ,GAEbgb,EAAM3lB,KAAKoL,EAAEgZ,OAAOpkB,KAAKqL,GAAGqZ,OAAOlnB,EAAE4N,EAAEgZ,OAAO5mB,EAAE6N,IAAIkZ,QAAQxoB,GAAGwoB,QAAQvoB,GACvE8yI,EAAK3jI,EAAEuZ,OAAOs5D,GAAGt5D,OAAOiB,GAc5B,OAXI3lB,KAAK+hE,MAAMqwE,SAEbrD,EAAK5jI,EAAEuZ,OAAOvC,GAAGuC,OAAO1oB,EAAEsoB,OAAOtkB,KAAK+hE,MAAMywE,MAAMz2I,KAElD2zI,EAAK1xD,EAAEt5D,OAAOvC,KAGd4sH,EAAK5jI,EAAEuZ,OAAOvC,GAAGuC,OAAO1oB,EAAEsoB,OAAOvoB,IAEjC2zI,EAAK1vI,KAAK+hE,MAAM0wE,MAAMz0D,GAAGt5D,OAAOvC,IAE3BniB,KAAK+hE,MAAM+kB,MAAMgoD,EAAIC,EAAIW,IAGlCzC,EAAM3vI,UAAU8Z,IAAM,SAAa5Z,GACjC,OAAIwC,KAAKk4F,aACA16F,EACLA,EAAE06F,aACGl4F,KAELA,KAAK+hE,MAAMhiD,SACN/f,KAAK+yI,QAAQv1I,GAEbwC,KAAKgzI,SAASx1I,IAGzByvI,EAAM3vI,UAAUmQ,IAAM,SAAasG,GACjC,OAAI/T,KAAKgpF,YAAYj1E,GACZ/T,KAAK+hE,MAAMilB,aAAahnF,KAAM+T,GAE9B/T,KAAK+hE,MAAM0lB,SAASznF,KAAM+T,IAGrCk5H,EAAM3vI,UAAU4xI,OAAS,SAAgBrgG,EAAIrxC,EAAGsxC,GAC9C,OAAO9uC,KAAK+hE,MAAM8lB,YAAY,EAAG,CAAE7nF,KAAMxC,GAAK,CAAEqxC,EAAIC,GAAM,GAAG,IAG/Dm+F,EAAM3vI,UAAU6xI,QAAU,SAAiBtgG,EAAIrxC,EAAGsxC,GAChD,OAAO9uC,KAAK+hE,MAAM8lB,YAAY,EAAG,CAAE7nF,KAAMxC,GAAK,CAAEqxC,EAAIC,GAAM,GAAG,IAG/Dm+F,EAAM3vI,UAAUw0I,UAAY,WAC1B,GAAI9xI,KAAKqtI,KACP,OAAOrtI,KAGT,IAAIohF,EAAKphF,KAAKqnB,EAAEnC,UAOhB,OANAllB,KAAKoL,EAAIpL,KAAKoL,EAAEsZ,OAAO08D,GACvBphF,KAAKqL,EAAIrL,KAAKqL,EAAEqZ,OAAO08D,GACnBphF,KAAKpD,IACPoD,KAAKpD,EAAIoD,KAAKpD,EAAE8nB,OAAO08D,IACzBphF,KAAKqnB,EAAIrnB,KAAK+hE,MAAM76C,IACpBlnB,KAAKqtI,MAAO,EACLrtI,MAGTitI,EAAM3vI,UAAU0Y,IAAM,WACpB,OAAOhW,KAAK+hE,MAAM+kB,MAAM9mF,KAAKoL,EAAE+Z,SAC7BnlB,KAAKqL,EACLrL,KAAKqnB,EACLrnB,KAAKpD,GAAKoD,KAAKpD,EAAEuoB,WAGrB8nH,EAAM3vI,UAAUqrF,KAAO,WAErB,OADA3oF,KAAK8xI,YACE9xI,KAAKoL,EAAE6Y,WAGhBgpH,EAAM3vI,UAAUsrF,KAAO,WAErB,OADA5oF,KAAK8xI,YACE9xI,KAAKqL,EAAE4Y,WAGhBgpH,EAAM3vI,UAAU8E,GAAK,SAAYF,GAC/B,OAAOlC,OAASkC,GACyB,IAAlClC,KAAK2oF,OAAOt2E,IAAInQ,EAAMymF,SACY,IAAlC3oF,KAAK4oF,OAAOv2E,IAAInQ,EAAM0mF,SAG/BqkD,EAAM3vI,UAAUo0I,OAAS,SAAgBtmI,GACvC,IAAI+S,EAAK/S,EAAEyY,MAAM7jB,KAAK+hE,MAAMpwD,KAAK+S,OAAO1kB,KAAKqnB,GAC7C,GAAuB,IAAnBrnB,KAAKoL,EAAEiH,IAAI8L,GACb,OAAO,EAIT,IAFA,IAAI2iC,EAAK11C,EAAEmI,QACP3W,EAAIoD,KAAK+hE,MAAM2kB,KAAKhiE,OAAO1kB,KAAKqnB,KAC3B,CAEP,GADAy5B,EAAG5pC,KAAKlX,KAAK+hE,MAAM5kE,GACf2jD,EAAGzuC,IAAIrS,KAAK+hE,MAAMvkE,IAAM,EAC1B,OAAO,EAGT,GADA2gB,EAAGkG,QAAQznB,GACY,IAAnBoD,KAAKoL,EAAEiH,IAAI8L,GACb,OAAO,IAKb8uH,EAAM3vI,UAAUkqF,IAAMylD,EAAM3vI,UAAUw0I,UACtC7E,EAAM3vI,UAAUgqF,SAAW2lD,EAAM3vI,UAAU8Z,K,6BChb3Clc,EAAQkuF,KAAOtqF,EAAQ,KACvB5D,EAAQouF,OAASxqF,EAAQ,KACzB5D,EAAQmuF,OAASvqF,EAAQ,KACzB5D,EAAQi5B,OAASr1B,EAAQ,KACzB5D,EAAQquF,OAASzqF,EAAQ,M,6BCJzB,IAAIwvC,EAAQxvC,EAAQ,IAChBo2E,EAASp2E,EAAQ,KACjBmzG,EAAYnzG,EAAQ,KAEpB63C,EAASrI,EAAMqI,OACfC,EAAQtI,EAAMsI,MACdG,EAAUzI,EAAMyI,QAChB66D,EAAOK,EAAUL,KACjBzmC,EAAY+J,EAAO/J,UAEnB8nE,EAAS,CACX,WAAY,WACZ,WAAY,YAGd,SAASC,IACP,KAAMlzI,gBAAgBkzI,GACpB,OAAO,IAAIA,EAEb/nE,EAAUtvE,KAAKmE,MACfA,KAAKggB,EAAI,CACP,WAAY,WAAY,WACxB,UAAY,YACdhgB,KAAKoyG,EAAI,IAAI7lG,MAAM,IAGrB+hC,EAAMv9B,SAASmiI,EAAM/nE,GACrBhwE,EAAOD,QAAUg4I,EAEjBA,EAAK5pE,UAAY,IACjB4pE,EAAK5nE,QAAU,IACf4nE,EAAK3nE,aAAe,GACpB2nE,EAAK1nE,UAAY,GAEjB0nE,EAAK51I,UAAUoiD,QAAU,SAAiB5uC,EAAKtK,GAG7C,IAFA,IAAI4rG,EAAIpyG,KAAKoyG,EAEJ12G,EAAI,EAAGA,EAAI,GAAIA,IACtB02G,EAAE12G,GAAKoV,EAAItK,EAAQ9K,GAErB,KAAMA,EAAI02G,EAAEn0G,OAAQvC,IAClB02G,EAAE12G,GAAKi7C,EAAOy7D,EAAE12G,EAAI,GAAK02G,EAAE12G,EAAI,GAAK02G,EAAE12G,EAAI,IAAM02G,EAAE12G,EAAI,IAAK,GAE7D,IAAIyP,EAAInL,KAAKggB,EAAE,GACX/Y,EAAIjH,KAAKggB,EAAE,GACXjkB,EAAIiE,KAAKggB,EAAE,GACXhkB,EAAIgE,KAAKggB,EAAE,GACXrV,EAAI3K,KAAKggB,EAAE,GAEf,IAAKtkB,EAAI,EAAGA,EAAI02G,EAAEn0G,OAAQvC,IAAK,CAC7B,IAAI+B,KAAO/B,EAAI,IACXkB,EAAIm6C,EAAQJ,EAAOxrC,EAAG,GAAIymG,EAAKn0G,EAAGwJ,EAAGlL,EAAGC,GAAI2O,EAAGynG,EAAE12G,GAAIu3I,EAAOx1I,IAChEkN,EAAI3O,EACJA,EAAID,EACJA,EAAI46C,EAAO1vC,EAAG,IACdA,EAAIkE,EACJA,EAAIvO,EAGNoD,KAAKggB,EAAE,GAAK42B,EAAM52C,KAAKggB,EAAE,GAAI7U,GAC7BnL,KAAKggB,EAAE,GAAK42B,EAAM52C,KAAKggB,EAAE,GAAI/Y,GAC7BjH,KAAKggB,EAAE,GAAK42B,EAAM52C,KAAKggB,EAAE,GAAIjkB,GAC7BiE,KAAKggB,EAAE,GAAK42B,EAAM52C,KAAKggB,EAAE,GAAIhkB,GAC7BgE,KAAKggB,EAAE,GAAK42B,EAAM52C,KAAKggB,EAAE,GAAIrV,IAG/BuoI,EAAK51I,UAAUsuE,QAAU,SAAgBl7B,GACvC,MAAY,QAARA,EACKpC,EAAMiI,QAAQv2C,KAAKggB,EAAG,OAEtBsuB,EAAMmI,QAAQz2C,KAAKggB,EAAG,S,6BCtEjC,IAAIsuB,EAAQxvC,EAAQ,IAChBqzG,EAASrzG,EAAQ,KAErB,SAASq0I,IACP,KAAMnzI,gBAAgBmzI,GACpB,OAAO,IAAIA,EAEbhhC,EAAOt2G,KAAKmE,MACZA,KAAKggB,EAAI,CACP,WAAY,UAAY,UAAY,WACpC,WAAY,WAAY,WAAY,YAExCsuB,EAAMv9B,SAASoiI,EAAQhhC,GACvBh3G,EAAOD,QAAUi4I,EAEjBA,EAAO7pE,UAAY,IACnB6pE,EAAO7nE,QAAU,IACjB6nE,EAAO5nE,aAAe,IACtB4nE,EAAO3nE,UAAY,GAEnB2nE,EAAO71I,UAAUsuE,QAAU,SAAgBl7B,GAEzC,MAAY,QAARA,EACKpC,EAAMiI,QAAQv2C,KAAKggB,EAAE1a,MAAM,EAAG,GAAI,OAElCgpC,EAAMmI,QAAQz2C,KAAKggB,EAAE1a,MAAM,EAAG,GAAI,S,6BCzB7C,IAAIgpC,EAAQxvC,EAAQ,IAEhB0zG,EAAS1zG,EAAQ,KAErB,SAASs0I,IACP,KAAMpzI,gBAAgBozI,GACpB,OAAO,IAAIA,EAEb5gC,EAAO32G,KAAKmE,MACZA,KAAKggB,EAAI,CACP,WAAY,WACZ,WAAY,UACZ,WAAY,UACZ,UAAY,WACZ,WAAY,WACZ,WAAY,WACZ,WAAY,WACZ,WAAY,YAEhBsuB,EAAMv9B,SAASqiI,EAAQ5gC,GACvBr3G,EAAOD,QAAUk4I,EAEjBA,EAAO9pE,UAAY,KACnB8pE,EAAO9nE,QAAU,IACjB8nE,EAAO7nE,aAAe,IACtB6nE,EAAO5nE,UAAY,IAEnB4nE,EAAO91I,UAAUsuE,QAAU,SAAgBl7B,GACzC,MAAY,QAARA,EACKpC,EAAMiI,QAAQv2C,KAAKggB,EAAE1a,MAAM,EAAG,IAAK,OAEnCgpC,EAAMmI,QAAQz2C,KAAKggB,EAAE1a,MAAM,EAAG,IAAK,S,6BC/B9C,IAAIgpC,EAAQxvC,EAAQ,IAChBo2E,EAASp2E,EAAQ,KAEjB63C,EAASrI,EAAMqI,OACfC,EAAQtI,EAAMsI,MACdC,EAAUvI,EAAMuI,QAChBC,EAAUxI,EAAMwI,QAChBq0B,EAAY+J,EAAO/J,UAEvB,SAASlC,IACP,KAAMjpE,gBAAgBipE,GACpB,OAAO,IAAIA,EAEbkC,EAAUtvE,KAAKmE,MAEfA,KAAKggB,EAAI,CAAE,WAAY,WAAY,WAAY,UAAY,YAC3DhgB,KAAKuR,OAAS,SA0DhB,SAASysE,EAAEh2E,EAAGoD,EAAGC,EAAGgc,GAClB,OAAIrf,GAAK,GACAoD,EAAIC,EAAIgc,EACRrf,GAAK,GACJoD,EAAIC,GAAQD,EAAKic,EAClBrf,GAAK,IACJoD,GAAMC,GAAMgc,EACbrf,GAAK,GACJoD,EAAIic,EAAMhc,GAAMgc,EAEjBjc,GAAKC,GAAMgc,GAGtB,SAASk5D,EAAEv4E,GACT,OAAIA,GAAK,GACA,EACAA,GAAK,GACL,WACAA,GAAK,GACL,WACAA,GAAK,GACL,WAEA,WAGX,SAASqrI,EAAGrrI,GACV,OAAIA,GAAK,GACA,WACAA,GAAK,GACL,WACAA,GAAK,GACL,WACAA,GAAK,GACL,WAEA,EA5FXsmC,EAAMv9B,SAASk4D,EAAWkC,GAC1BjwE,EAAQsuF,UAAYvgB,EAEpBA,EAAUK,UAAY,IACtBL,EAAUqC,QAAU,IACpBrC,EAAUsC,aAAe,IACzBtC,EAAUuC,UAAY,GAEtBvC,EAAU3rE,UAAUoiD,QAAU,SAAgB5uC,EAAKtK,GAWjD,IAVA,IAAIub,EAAI/hB,KAAKggB,EAAE,GACXgC,EAAIhiB,KAAKggB,EAAE,GACXiC,EAAIjiB,KAAKggB,EAAE,GACXkC,EAAIliB,KAAKggB,EAAE,GACXszH,EAAItzI,KAAKggB,EAAE,GACXuzH,EAAKxxH,EACLyxH,EAAKxxH,EACLuuG,EAAKtuG,EACLwxH,EAAKvxH,EACLwxH,EAAKJ,EACAtrI,EAAI,EAAGA,EAAI,GAAIA,IAAK,CAC3B,IAAIwwH,EAAI5hF,EACND,EACEG,EAAQ/0B,EAAGi8D,EAAEh2E,EAAGga,EAAGC,EAAGC,GAAIpR,EAAItU,EAAEwL,GAAKxB,GAAQ+5E,EAAEv4E,IAC/CvK,EAAEuK,IACJsrI,GACFvxH,EAAIuxH,EACJA,EAAIpxH,EACJA,EAAIy0B,EAAO10B,EAAG,IACdA,EAAID,EACJA,EAAIw2G,EACJA,EAAI5hF,EACFD,EACEG,EAAQy8F,EAAIv1D,EAAE,GAAKh2E,EAAGwrI,EAAIjjB,EAAIkjB,GAAK3iI,EAAI6iI,EAAG3rI,GAAKxB,GAAQ6sI,EAAGrrI,IAC1Dy7D,EAAGz7D,IACL0rI,GACFH,EAAKG,EACLA,EAAKD,EACLA,EAAK98F,EAAO45E,EAAI,IAChBA,EAAKijB,EACLA,EAAKhb,EAEPA,EAAI3hF,EAAQ72C,KAAKggB,EAAE,GAAIiC,EAAGwxH,GAC1BzzI,KAAKggB,EAAE,GAAK62B,EAAQ72C,KAAKggB,EAAE,GAAIkC,EAAGwxH,GAClC1zI,KAAKggB,EAAE,GAAK62B,EAAQ72C,KAAKggB,EAAE,GAAIszH,EAAGC,GAClCvzI,KAAKggB,EAAE,GAAK62B,EAAQ72C,KAAKggB,EAAE,GAAI+B,EAAGyxH,GAClCxzI,KAAKggB,EAAE,GAAK62B,EAAQ72C,KAAKggB,EAAE,GAAIgC,EAAGuuG,GAClCvwH,KAAKggB,EAAE,GAAKw4G,GAGdvvD,EAAU3rE,UAAUsuE,QAAU,SAAgBl7B,GAC5C,MAAY,QAARA,EACKpC,EAAMiI,QAAQv2C,KAAKggB,EAAG,UAEtBsuB,EAAMmI,QAAQz2C,KAAKggB,EAAG,WA0CjC,IAAIxjB,EAAI,CACN,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAClD,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,EACnD,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,GAClD,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EACnD,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,IAGhDm3I,EAAK,CACP,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,GAAI,EAAG,GAClD,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EACnD,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,GAClD,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,GAAI,GAClD,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,IAGhDl2I,EAAI,CACN,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,EACrD,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,EAAG,GAAI,EAAG,GAAI,GACpD,GAAI,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,EAAG,EAAG,GAAI,EAAG,EACrD,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GACpD,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,GAGnDgmE,EAAK,CACP,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,EACrD,EAAG,GAAI,GAAI,EAAG,GAAI,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,GACpD,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,EACrD,GAAI,EAAG,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EACrD,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,GAAI,EAAG,EAAG,GAAI,GAAI,GAAI,K,6BC9ItD,IAAIn1B,EAAQxvC,EAAQ,IAChB+R,EAAS/R,EAAQ,KAErB,SAASukG,EAAK9mC,EAAMt/D,EAAKyzC,GACvB,KAAM1wC,gBAAgBqjG,GACpB,OAAO,IAAIA,EAAK9mC,EAAMt/D,EAAKyzC,GAC7B1wC,KAAKmpE,KAAO5M,EACZv8D,KAAKspE,UAAY/M,EAAK+M,UAAY,EAClCtpE,KAAKsrE,QAAU/O,EAAK+O,QAAU,EAC9BtrE,KAAK4zI,MAAQ,KACb5zI,KAAK6zI,MAAQ,KAEb7zI,KAAK4R,MAAM08B,EAAM57B,QAAQzV,EAAKyzC,IAEhCv1C,EAAOD,QAAUmoG,EAEjBA,EAAK/lG,UAAUsU,MAAQ,SAAc3U,GAE/BA,EAAIgB,OAAS+B,KAAKspE,YACpBrsE,GAAM,IAAI+C,KAAKmpE,MAAO7pB,OAAOriD,GAAKm3B,UACpCvjB,EAAO5T,EAAIgB,QAAU+B,KAAKspE,WAG1B,IAAK,IAAI5tE,EAAIuB,EAAIgB,OAAQvC,EAAIsE,KAAKspE,UAAW5tE,IAC3CuB,EAAI4L,KAAK,GAEX,IAAKnN,EAAI,EAAGA,EAAIuB,EAAIgB,OAAQvC,IAC1BuB,EAAIvB,IAAM,GAIZ,IAHAsE,KAAK4zI,OAAQ,IAAI5zI,KAAKmpE,MAAO7pB,OAAOriD,GAG/BvB,EAAI,EAAGA,EAAIuB,EAAIgB,OAAQvC,IAC1BuB,EAAIvB,IAAM,IACZsE,KAAK6zI,OAAQ,IAAI7zI,KAAKmpE,MAAO7pB,OAAOriD,IAGtComG,EAAK/lG,UAAUgiD,OAAS,SAAgBxuC,EAAK4/B,GAE3C,OADA1wC,KAAK4zI,MAAMt0F,OAAOxuC,EAAK4/B,GAChB1wC,MAGTqjG,EAAK/lG,UAAU82B,OAAS,SAAgBsc,GAEtC,OADA1wC,KAAK6zI,MAAMv0F,OAAOt/C,KAAK4zI,MAAMx/G,UACtBp0B,KAAK6zI,MAAMz/G,OAAOsc,K,6BC7C3Bv1C,EAAOD,QAAU,CACf+rF,QAAS,CACP/Z,KAAM,EACNqa,OAAQ,CACN,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,kEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,sEAIN54C,IAAK,CACHpnB,IAAK,EACLggE,OAAQ,CACN,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,iEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,wE,8CCrwBJn2E,EAAKtS,EAAQ,IACbg1I,EAAWh1I,EAAQ,KACnBwvC,EAAQxvC,EAAQ,IAChBkjE,EAASljE,EAAQ,KACjBumD,EAAOvmD,EAAQ,KACf+R,EAASy9B,EAAMz9B,OAEfkjI,EAAUj1I,EAAQ,KAClBkgC,EAAYlgC,EAAQ,KAExB,SAASk1I,EAAG/zE,GACV,KAAMjgE,gBAAgBg0I,GACpB,OAAO,IAAIA,EAAG/zE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AajB,EAAK4F,KAAO,wBAGrD1K,EAAOD,QAAU+lI,G,8LCjzBjB,+NAEA,kB,yiVCFA,aAKA,YACA,WACA,YACA,WACA,YAEA,YACA,YACA,aACA,aACA,WACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,aACA,YACA,YACA,YACA,WACA,YACA,aACA,YACA,aACA,YACA,aACA,aACA,aACA,aACA,WACA,YACA,aACA,aACA,aACA,WACA,YACA,YACA,aACA,aACA,aACA,YACA,aACA,YACA,WACA,aACA,cACA,aACA,aACA,cACA,cACA,aACA,aACA,cACA,cACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,YACA,aACA,cACA,cACA,aACA,cACA,cACA,aACA,aACA,cACA,cACA,cACA,cACA,cACA,cACA,aACA,aACA,cACA,aACA,aACA,cACA,cACA,cACA,YACA,YACA,aACA,aACA,aACA,aACA,aACA,aACA,cAEA,aACA,aACA,aACA,YAsBA,Q,cAN2B,CACvBiH,QAAS,UACTC,QAAS,UACTC,WAAY,e,8mBClIKrpG,E,4CAKjB,WAAYmT,EAAM3H,GAAW,mCACzB,gBAMKsf,MAAgB,MAAR3X,EAAe,GAAKA,EAKjC,EAAK4X,WAA0B,MAAbvf,EAAoB,KAAOA,EAZpB,E,4CAyC7B,WACI,OAAOvqC,KAAK8pD,a,0BAOhB,SAAavf,GAET,OADAvqC,KAAK8pD,WAAavf,EACXvqC,O,kBAOX,WAAc,MACV,OAAO,EAAAA,KAAK6pD,OAAMhhD,KAAX,qB,oBASX,SAAOrC,EAAOujD,GAAuB,6BAAPC,EAAO,iCAAPA,EAAO,kBACjC,OAAO,IAAIjrB,GACP,EAAA/+B,KAAK6pD,OAAMhyB,OAAX,SAAkBrxB,EAAOujD,GAAzB,OAAyCC,IACzChqD,KAAKuqC,a,mBASb,SAAM/jC,EAAOC,GACT,OAAO,IAAIs4B,EAAQ/+B,KAAK6pD,MAAMvkD,MAAMkB,EAAOC,GAAMzG,KAAKuqC,a,aAM1D,WACI,OAAOvqC,KAAK6pD,M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A,SACA,OACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,MACA,OACA,SACA,OACA,SACA,QACA,OACA,SACA,MACA,SACA,SACA,QACA,SACA,QACA,OACA,QACA,MACA,QACA,SACA,QACA,SACA,SACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,MACA,SACA,SACA,QACA,SACA,QACA,MACA,QACA,QACA,SACA,QACA,MACA,OACA,MACA,MACA,SACA,OACA,OACA,QACA,SACA,SACA,QACA,MACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,MACA,QACA,SACA,QACA,QACA,OACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,QACA,OACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,MACA,SACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,MACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,QACA,QACA,OACA,SACA,SACA,OACA,SACA,SACA,MACA,OACA,QACA,OACA,QACA,MACA,MACA,SACA,OACA,QACA,SACA,SACA,QACA,SACA,SACA,QACA,QACA,MACA,SACA,SACA,SACA,SACA,MACA,QACA,SACA,QACA,MACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,MACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,SACA,SACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,SACA,MACA,OACA,QACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,SACA,QACA,MACA,QACA,QACA,MACA,QACA,OACA,OACA,OACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,SACA,MACA,QACA,SACA,OACA,OACA,OACA,MACA,SACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,SACA,SACA,SACA,OACA,QACA,QACA,QACA,QACA,SACA,OACA,MACA,QACA,OACA,QACA,SACA,MACA,QACA,SACA,OACA,OACA,OACA,OACA,QACA,QACA,OACA,SACA,SACA,MACA,QACA,OACA,QACA,OACA,OACA,OACA,SACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,QACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,QACA,OACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,OACA,SACA,MACA,OACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,MACA,MACA,SACA,OACA,OACA,OACA,MACA,SACA,OACA,SACA,QACA,OACA,SACA,QACA,SACA,MACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,OACA,SACA,OACA,OACA,QACA,QACA,OACA,QACA,OACA,QACA,QACA,OACA,MACA,SACA,OACA,QACA,OACA,OACA,OACA,OACA,SACA,OACA,OACA,OACA,SACA,QACA,OACA,OACA,OACA,QACA,OACA,QACA,QACA,SACA,OACA,SACA,QACA,OACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,MACA,QACA,OACA,MACA,MACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,OACA,QACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,QACA,OACA,QACA,OACA,QACA,OACA,SACA,QACA,OACA,QACA,QACA,SACA,OACA,QACA,SACA,SACA,SACA,SACA,QACA,OACA,QACA,SACA,QACA,OACA,MACA,OACA,OACA,SACA,OACA,MACA,SACA,OACA,SACA,SACA,MACA,QACA,OACA,MACA,OACA,MACA,QACA,QACA,QACA,SACA,SACA,OACA,QACA,QACA,SACA,OACA,OACA,OACA,SACA,OACA,SACA,OACA,QACA,SACA,OACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,OACA,SACA,QACA,SACA,SACA,SACA,MACA,OACA,MACA,SACA,OACA,OACA,SACA,SACA,QACA,OACA,SACA,QACA,OACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,OACA,OACA,SACA,SACA,MACA,QACA,QACA,SACA,SACA,SACA,QACA,OACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,OACA,SACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,QACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,OACA,QACA,OACA,SACA,QACA,SACA,OACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,OACA,OACA,QACA,QACA,OACA,QACA,SACA,OACA,OACA,QACA,QACA,QACA,SACA,OACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,OACA,OACA,SACA,QACA,SACA,QACA,OACA,SACA,QACA,OACA,OACA,SACA,QACA,OACA,OACA,QACA,OACA,SACA,SACA,SACA,OACA,OACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,OACA,SACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,OACA,OACA,SACA,OACA,QACA,OACA,OACA,OACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,QACA,QACA,QACA,QACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,QACA,SACA,MACA,SACA,SACA,OACA,OACA,QACA,SACA,QACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,SACA,SACA,SACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,OACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,OACA,MACA,QACA,OACA,OACA,QACA,SACA,OACA,OACA,MACA,OACA,OACA,SACA,OACA,QACA,QACA,SACA,QACA,OACA,SACA,MACA,OACA,QACA,SACA,QACA,QACA,MACA,QACA,SACA,QACA,QACA,QACA,OACA,MACA,SACA,OACA,SACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,MACA,OACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,SACA,QACA,SACA,OACA,SACA,SACA,QACA,SACA,SACA,OACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,QACA,QACA,OACA,SACA,MACA,MACA,SACA,OACA,SACA,MACA,SACA,QACA,OACA,SACA,SACA,QACA,MACA,OACA,SACA,OACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,MACA,QACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,OACA,SACA,OACA,MACA,SACA,QACA,QACA,OACA,OACA,OACA,QACA,QACA,OACA,SACA,QACA,QACA,QACA,OACA,SACA,QACA,QACA,SACA,QACA,OACA,QACA,QACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,QACA,MACA,OACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,OACA,OACA,SACA,SACA,OACA,OACA,QACA,QACA,OACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,MACA,OACA,QACA,OACA,QACA,OACA,QACA,SACA,OACA,SACA,OACA,MACA,QACA,QACA,OACA,OACA,OACA,OACA,SACA,QACA,OACA,SACA,MACA,QACA,SACA,SACA,SACA,MACA,MACA,QACA,SACA,SACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,SACA,QACA,SACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,OACA,SACA,OACA,QACA,QACA,SACA,QACA,SACA,MACA,QACA,OACA,QACA,SACA,SACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,QACA,MACA,OACA,QACA,OACA,QACA,QACA,OACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,MACA,OACA,SACA,OACA,SACA,OACA,SACA,OACA,OACA,QACA,OACA,SACA,QACA,QACA,OACA,SACA,OACA,QACA,SACA,OACA,SACA,SACA,SACA,MACA,QACA,MACA,QACA,OACA,OACA,SACA,OACA,SACA,SACA,MACA,QACA,OACA,SACA,QACA,QACA,SACA,QACA,OACA,QACA,OACA,MACA,MACA,SACA,OACA,OACA,OACA,OACA,SACA,OACA,SACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,MACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,QACA,MACA,QACA,SACA,OACA,OACA,SACA,SACA,OACA,SACA,QACA,SACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,OACA,MACA,SACA,OACA,MACA,OACA,QACA,OACA,QACA,QACA,OACA,QACA,QACA,QACA,OACA,SACA,OACA,OACA,OACA,SACA,QACA,QACA,SACA,OACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,OACA,SACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,OACA,MACA,QACA,OACA,OACA,QACA,QACA,MACA,OACA,OACA,OACA,SACA,QACA,OACA,SACA,OACA,OACA,OACA,OACA,MACA,SACA,QACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,OACA,QACA,QACA,QACA,SACA,SACA,OACA,QACA,OACA,SACA,MACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,OACA,QACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,OACA,OACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,MACA,QACA,OACA,OACA,QACA,QACA,MACA,OACA,QACA,MACA,QACA,OACA,OACA,SACA,OACA,QACA,SACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,OACA,QACA,SACA,OACA,MACA,SACA,SACA,SACA,MACA,OACA,OACA,SACA,QACA,QACA,OACA,OACA,OACA,QACA,MACA,SACA,SACA,OACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,OACA,MACA,SACA,QACA,QACA,OACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,OACA,QACA,SACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,OACA,OACA,OACA,MACA,OACA,OACA,OACA,SACA,OACA,OACA,OACA,MACA,OACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,MACA,SACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,QACA,QACA,OACA,OACA,OACA,QACA,QACA,OACA,OACA,QACA,OACA,OACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,OACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,OACA,QACA,MACA,SACA,OACA,MACA,MACA,QACA,QACA,OACA,MACA,OACA,OACA,QACA,QACA,OACA,OACA,OACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,SACA,QACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,OACA,QACA,OACA,OACA,QACA,QACA,MACA,OACA,SACA,QACA,SACA,QACA,MACA,QACA,OACA,OACA,QACA,SACA,OACA,QACA,QACA,SACA,OACA,MACA,SACA,OACA,QACA,OACA,OACA,OACA,SACA,OACA,OACA,QACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,OACA,QACA,SACA,OACA,OACA,SACA,QACA,OACA,QACA,OACA,SACA,OACA,OACA,QACA,QACA,MACA,SACA,OACA,OACA,OACA,SACA,SACA,SACA,OACA,SACA,SACA,MACA,SACA,OACA,SACA,OACA,OACA,SACA,SACA,OACA,MACA,OACA,SACA,OACA,SACA,OACA,MACA,OACA,MACA,OACA,QACA,SACA,QACA,SACA,OACA,SACA,OACA,SACA,QACA,OACA,OACA,SACA,QACA,OACA,OACA,OACA,OACA,SACA,SACA,QACA,OACA,OACA,MACA,QACA,QACA,OACA,QACA,QACA,MACA,OACA,OACA,QACA,SACA,SACA,QACA,OACA,SACA,SACA,OACA,SACA,OACA,QACA,OACA,OACA,MACA,SACA,OACA,SACA,MACA,QACA,OACA,QACA,OACA,QACA,QACA,QACA,OACA,OACA,OACA,SACA,SACA,MACA,QACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,OACA,SACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,MACA,SACA,SACA,QACA,SACA,MACA,SACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,OACA,QACA,OACA,SACA,QACA,QACA,SACA,SACA,OACA,SACA,QACA,QACA,OACA,OACA,SACA,OACA,QACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,OACA,QACA,SACA,OACA,MACA,OACA,OACA,QACA,QACA,OACA,MACA,QACA,SACA,MACA,MACA,OACA,SACA,MACA,OACA,OACA,QACA,OACA,QACA,OACA,SACA,SACA,MACA,SACA,SACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,OACA,OACA,SACA,SACA,OACA,QACA,OACA,OACA,SACA,SACA,OACA,OACA,OACA,OACA,SACA,QACA,OACA,SACA,SACA,MACA,QACA,OACA,MACA,SACA,SACA,OACA,SACA,MACA,OACA,SACA,OACA,OACA,OACA,SACA,QACA,OACA,QACA,OACA,QACA,SACA,OACA,OACA,QACA,OACA,OACA,QACA,QACA,QACA,SACA,QACA,OACA,OACA,MACA,SACA,QACA,OACA,SACA,QACA,OACA,OACA,OACA,OACA,QACA,OACA,OACA,MACA,QACA,QACA,SACA,QACA,OACA,QACA,OACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,OACA,SACA,MACA,SACA,OACA,SACA,MACA,QACA,SACA,OACA,OACA,SACA,OACA,QACA,SACA,OACA,QACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,OACA,MACA,SACA,QACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,MACA,QACA,SACA,OACA,SACA,SACA,SACA,OACA,MACA,SACA,SACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,MACA,MACA,OACA,OACA,OACA,OACA,QACA,OACA,SACA,OACA,OACA,QACA,OACA,OACA,SACA,QACA,SACA,OACA,OACA,OACA,MACA,SACA,SACA,OACA,SACA,MACA,OACA,SACA,QACA,MACA,SACA,OACA,OACA,OACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,QACA,MACA,QACA,OACA,SACA,OACA,SACA,OACA,SACA,OACA,OACA,QACA,SACA,OACA,OACA,QACA,OACA,OACA,OACA,MACA,SACA,QACA,OACA,SACA,SACA,QACA,OACA,SACA,QACA,MACA,QACA,SACA,QACA,QACA,OACA,QACA,OACA,OACA,OACA,QACA,SACA,QACA,QACA,OACA,OACA,QACA,OACA,OACA,OACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,OACA,QACA,QACA,QACA,SACA,SACA,SACA,OACA,SACA,OACA,OACA,SACA,QACA,OACA,QACA,OACA,SACA,OACA,OACA,SACA,SACA,OACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,OACA,MACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,OACA,SACA,QACA,OACA,QACA,SACA,SACA,OACA,OACA,QACA,OACA,OACA,SACA,MACA,QACA,OACA,SACA,SACA,SACA,QACA,MACA,QACA,QACA,OACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,QACA,SACA,QACA,SACA,OACA,SACA,SACA,QACA,OACA,SACA,OACA,SACA,SACA,OACA,SACA,SACA,OACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,OACA,OACA,QACA,MACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,QACA,SACA,MACA,SACA,SACA,QACA,SACA,QACA,SACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,QACA,OACA,OACA,OACA,OACA,QACA,OACA,QACA,SACA,OACA,SACA,QACA,SACA,OACA,OACA,QACA,OACA,MACA,OACA,OACA,MACA,SACA,OACA,OACA,QACA,QACA,SACA,SACA,SACA,SACA,QACA,QACA,OACA,OACA,SACA,SACA,SACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,OACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,MACA,OACA,OACA,QACA,MACA,SACA,QACA,OACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,QACA,OACA,QACA,OACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,OACA,SACA,OACA,OACA,SACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,MACA,SACA,QACA,QACA,OACA,OACA,SACA,QACA,SACA,QACA,QACA,OACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,MACA,OACA,SACA,QACA,SACA,OACA,OACA,MACA,OACA,SACA,SACA,SACA,OACA,QACA,SACA,MACA,SACA,OACA,OACA,SACA,QACA,MACA,QACA,QACA,MACA,MACA,QACA,OACA,QACA,OACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,MACA,MACA,SACA,QACA,SACA,SACA,QACA,OACA,MACA,OACA,OACA,MACA,QACA,SACA,QACA,QACA,OACA,OACA,OACA,MACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,OACA,SACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,MACA,MACA,QACA,SACA,SACA,OACA,OACA,OACA,QACA,MACA,QACA,MACA,MACA,QACA,SACA,QACA,SACA,SACA,QACA,OACA,OACA,SACA,OACA,MACA,SACA,QACA,QACA,OACA,OACA,OACA,QACA,OACA,SACA,OACA,OACA,MACA,SACA,QACA,QACA,OACA,QACA,QACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,SACA,OACA,OACA,QACA,SACA,SACA,SACA,MACA,QACA,SACA,OACA,QACA,SACA,SACA,OACA,QACA,OACA,MACA,OACA,MACA,QACA,QACA,OACA,OACA,QACA,QACA,OACA,OACA,SACA,SACA,SACA,MACA,QACA,QACA,SACA,QACA,SACA,SACA,MACA,QACA,QACA,SACA,SACA,SACA,SACA,OACA,OACA,MACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,SACA,MACA,QACA,OACA,SACA,QACA,MACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,QACA,MACA,QACA,OACA,OACA,OACA,QACA,OACA,SACA,OACA,SACA,SACA,MACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,OACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,OACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,OACA,OACA,OACA,QACA,SACA,SACA,OACA,QACA,SACA,OACA,OACA,SACA,SACA,QACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,OACA,SACA,OACA,OACA,SACA,OACA,OACA,OACA,SACA,MACA,QACA,OACA,OACA,OACA,SACA,OACA,OACA,OACA,SACA,MACA,SACA,SACA,QACA,QACA,OACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,QACA,MACA,QACA,SACA,SACA,MACA,SACA,OACA,OACA,OACA,SACA,SACA,QACA,OACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,SACA,QACA,SACA,OACA,QACA,MACA,OACA,SACA,SACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,SACA,SACA,OACA,OACA,OACA,OACA,OACA,QACA,QACA,OACA,QACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,OACA,SACA,SACA,OACA,MACA,OACA,SACA,SACA,QACA,SACA,OACA,QACA,MACA,MACA,QACA,QACA,QACA,OACA,SACA,QACA,OACA,SACA,QACA,OACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,MACA,SACA,OACA,SACA,OACA,OACA,OACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,QACA,QACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,MACA,QACA,QACA,QACA,SACA,SACA,OACA,OACA,OACA,MACA,OACA,QACA,QACA,OACA,QACA,OACA,QACA,QACA,OACA,MACA,OACA,QACA,OACA,OACA,QACA,SACA,OACA,OACA,QACA,OACA,SACA,OACA,QACA,QACA,OACA,OACA,QACA,MACA,OACA,SACA,QACA,QACA,SACA,OACA,SACA,QACA,MACA,OACA,SACA,QACA,OACA,OACA,QACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,MACA,SACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,MACA,SACA,SACA,OACA,SACA,OACA,MACA,QACA,OACA,OACA,QACA,SACA,OACA,MACA,OACA,OACA,SACA,QACA,OACA,SACA,OACA,SACA,QACA,OACA,SACA,MACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,OACA,SACA,QACA,OACA,QACA,SACA,OACA,SACA,SACA,SACA,SACA,OACA,QACA,SACA,MACA,OACA,SACA,OACA,QACA,OACA,OACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,MACA,MACA,QACA,QACA,OACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,QACA,OACA,MACA,OACA,OACA,SACA,SACA,SACA,OACA,SACA,SACA,OACA,SACA,SACA,MACA,OACA,SACA,OACA,OACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,SACA,OACA,SACA,SACA,QACA,SACA,OACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,SACA,MACA,SACA,QACA,SACA,MACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,MACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,OACA,QACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,OACA,MACA,QACA,OACA,OACA,QACA,OACA,QACA,QACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,QACA,OACA,SACA,SACA,SACA,QACA,SACA,OACA,SACA,SACA,OACA,MACA,OACA,QACA,SACA,MACA,OACA,SACA,MACA,QACA,QACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,QACA,MACA,OACA,QACA,QACA,OACA,QACA,OACA,OACA,QACA,QACA,QACA,QACA,SACA,SACA,QACA,QACA,OACA,QACA,SACA,OACA,QACA,QACA,OACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,SACA,OACA,QACA,QACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,OACA,OACA,QACA,SACA,SACA,OACA,SACA,QACA,OACA,SACA,SACA,OACA,OACA,SACA,SACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,QACA,OACA,QACA,OACA,MACA,QACA,SACA,OACA,QACA,OACA,OACA,SACA,OACA,SACA,SACA,OACA,SACA,QACA,OACA,OACA,QACA,OACA,OACA,SACA,SACA,MACA,QACA,QACA,QACA,OACA,QACA,QACA,SACA,QACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,QACA,SACA,QACA,QACA,OACA,SACA,QACA,SACA,SACA,OACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,SACA,QACA,SACA,QACA,SACA,SACA,OACA,QACA,SACA,SACA,QACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,OACA,SACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,OACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,SACA,OACA,SACA,QACA,OACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,SACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,QACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,MACA,OACA,SACA,QACA,OACA,QACA,SACA,SACA,SACA,MACA,SACA,SACA,SACA,MACA,SACA,QACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,SACA,OACA,QACA,SACA,SACA,QACA,OACA,OACA,QACA,OACA,QACA,QACA,SACA,SACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,SACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,SACA,OACA,SACA,SACA,OACA,OACA,SACA,OACA,OACA,QACA,OACA,QACA,MACA,SACA,SACA,OACA,MACA,OACA,SACA,SACA,OACA,OACA,SACA,OACA,QACA,QACA,SACA,SACA,OACA,SACA,MACA,OACA,MACA,QACA,OACA,OACA,OACA,QACA,OACA,QACA,OACA,SACA,SACA,QACA,QACA,MACA,SACA,OACA,SACA,SACA,SACA,QACA,QACA,OACA,QACA,SACA,SACA,OACA,SACA,QACA,OACA,QACA,OACA,QACA,OACA,OACA,QACA,SACA,SACA,QACA,QACA,SACA,OACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,SACA,SACA,OACA,SACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,OACA,OACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,OACA,OACA,MACA,OACA,QACA,QACA,OACA,OACA,OACA,SACA,OACA,QACA,MACA,OACA,MACA,OACA,SACA,QACA,OACA,QACA,QACA,MACA,SACA,QACA,QACA,OACA,OACA,MACA,SACA,OACA,QACA,OACA,SACA,QACA,MACA,OACA,OACA,QACA,MACA,QACA,QACA,QACA,SACA,QACA,OACA,OACA,QACA,QACA,QACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,MACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,SACA,OACA,SACA,SACA,OACA,QACA,QACA,SACA,SACA,OACA,OACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,QACA,SACA,OACA,OACA,OACA,SACA,QACA,SACA,OACA,SACA,QACA,QACA,QACA,OACA,QACA,QACA,QACA,QACA,MACA,OACA,SACA,OACA,SACA,OACA,QACA,SACA,SACA,OACA,OACA,SACA,OACA,SACA,QACA,QACA,SACA,SACA,QACA,OACA,QACA,MACA,SACA,QACA,OACA,SACA,OACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,OACA,QACA,QACA,SACA,SACA,SACA,QACA,SACA,SACA,SACA,SACA,OACA,QACA,SACA,QACA,SACA,SACA,SACA,SACA,QACA,OACA,SACA,SACA,QACA,SACA,QACA,MACA,SACA,OACA,QACA,SACA,QACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,QACA,QACA,MACA,SACA,SACA,OACA,OACA,OACA,MACA,QACA,SACA,OACA,OACA,SACA,SACA,SACA,SACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,SACA,SACA,QACA,SACA,OACA,SACA,OACA,MACA,OACA,MACA,SACA,QACA,OACA,SACA,SACA,QACA,SACA,OACA,QACA,SACA,OACA,QACA,OACA,QACA,QACA,SACA,SACA,QACA,QACA,SACA,QACA,OACA,SACA,QACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,SACA,SACA,OACA,QACA,SACA,SACA,OACA,OACA,QACA,OACA,SACA,OACA,OACA,SACA,OACA,SACA,SACA,SACA,OACA,MACA,SACA,OACA,SACA,OACA,OACA,SACA,OACA,MACA,OACA,OACA,QACA,QACA,QACA,SACA,OACA,MACA,MACA,OACA,SACA,SACA,SACA,OACA,QACA,QACA,QACA,MACA,OACA,OACA,SACA,OACA,QACA,SACA,QACA,OACA,OACA,OACA,MACA,QACA,QACA,OACA,QACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,OACA,OACA,SACA,QACA,MACA,QACA,SACA,OACA,QACA,MACA,SACA,OACA,SACA,QACA,QACA,QACA,QACA,OACA,MACA,OACA,SACA,OACA,SACA,OACA,MACA,OACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,OACA,OACA,SACA,OACA,OACA,MACA,QACA,OACA,SACA,QACA,SACA,OACA,OACA,SACA,QACA,OACA,MACA,SACA,OACA,SACA,QACA,QACA,OACA,OACA,OACA,SACA,QACA,OACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,OACA,OACA,OACA,OACA,OACA,QACA,QACA,SACA,MACA,QACA,SACA,OACA,MACA,QACA,OACA,QACA,QACA,OACA,QACA,SACA,OACA,OACA,SACA,OACA,SACA,S,yGChgIW,CACX,UACA,UACA,OACA,QACA,QACA,SACA,SACA,WACA,SACA,QACA,SACA,WACA,UACA,SACA,UACA,OACA,WACA,UACA,SACA,MACA,SACA,QACA,UACA,SACA,QACA,MACA,SACA,UACA,SACA,QACA,QACA,UACA,SACA,UACA,SACA,SACA,SACA,QACA,MACA,QACA,QACA,QACA,MACA,MACA,UACA,QACA,QACA,QACA,UACA,QACA,QACA,MACA,QACA,QACA,SACA,QACA,QACA,UACA,OACA,QACA,SACA,UACA,UACA,QACA,SACA,SACA,UACA,SACA,UACA,QACA,QACA,QACA,SACA,QACA,WACA,SACA,UACA,SACA,UACA,UACA,UACA,MACA,QACA,UACA,SACA,QACA,UACA,QACA,OACA,SACA,OACA,QACA,QACA,MACA,QACA,QACA,OACA,SACA,UACA,SACA,SACA,QACA,MACA,WACA,SACA,UACA,MACA,SACA,UACA,QACA,SACA,SACA,SACA,UACA,OACA,SACA,SACA,WACA,UACA,UACA,QACA,SACA,OACA,SACA,OACA,SACA,UACA,UACA,QACA,QACA,QACA,OACA,UACA,QACA,UACA,OACA,OACA,WACA,QACA,QACA,MACA,UACA,UACA,OACA,SACA,SACA,SACA,MACA,SACA,UACA,SACA,OACA,QACA,SACA,SACA,QACA,OACA,SACA,UACA,SACA,OACA,SACA,QACA,SACA,SACA,UACA,QACA,OACA,QACA,UACA,OACA,SACA,SACA,UACA,SACA,UACA,MACA,OACA,OACA,UACA,OACA,QACA,SACA,QACA,QACA,QACA,UACA,QACA,QACA,QACA,QACA,QACA,UACA,SACA,OACA,OACA,QACA,QACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,QACA,SACA,SACA,SACA,OACA,SACA,SACA,MACA,MACA,UACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,SACA,QACA,QACA,WACA,SACA,SACA,QACA,UACA,QACA,QACA,SACA,QACA,SACA,UACA,QACA,OACA,OACA,SACA,SACA,SACA,SACA,SACA,QACA,MACA,WACA,OACA,SACA,QACA,OACA,UACA,QACA,QACA,SACA,OACA,OACA,OACA,OACA,SACA,OACA,MACA,QACA,SACA,QACA,SACA,QACA,SACA,SACA,UACA,UACA,UACA,MACA,SACA,OACA,QACA,SACA,QACA,OACA,OACA,OACA,SACA,SACA,SACA,MACA,UACA,QACA,WACA,SACA,SACA,QACA,UACA,OACA,UACA,SACA,SACA,SACA,UACA,SACA,UACA,QACA,QACA,WACA,SACA,QACA,UACA,SACA,QACA,OACA,QACA,QACA,SACA,OACA,SACA,QACA,UACA,QACA,QACA,UACA,SACA,SACA,UACA,UACA,QACA,QACA,QACA,WACA,SACA,UACA,OACA,QACA,QACA,OACA,UACA,OACA,OACA,QACA,QACA,SACA,QACA,SACA,QACA,QACA,SACA,OACA,QACA,OACA,QACA,QACA,QACA,QACA,OACA,QACA,UACA,SACA,QACA,QACA,UACA,OACA,SACA,OACA,OACA,UACA,QACA,SACA,UACA,OACA,UACA,QACA,SACA,UACA,UACA,UACA,UACA,WACA,UACA,WACA,UACA,WACA,OACA,OACA,SACA,OACA,QACA,OACA,OACA,UACA,OACA,SACA,QACA,UACA,SACA,SACA,SACA,QACA,SACA,QACA,SACA,QACA,OACA,QACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,OACA,UACA,QACA,QACA,SACA,OACA,QACA,SACA,QACA,UACA,QACA,SACA,UACA,SACA,QACA,MACA,UACA,OACA,UACA,MACA,WACA,UACA,UACA,UACA,QACA,UACA,SACA,OACA,QACA,MACA,SACA,OACA,QACA,SACA,SACA,OACA,WACA,OACA,MACA,OACA,SACA,SACA,SACA,WACA,SACA,UACA,WACA,WACA,OACA,UACA,SACA,OACA,SACA,QACA,UACA,SACA,SACA,SACA,UACA,OACA,SACA,SACA,UACA,QACA,SACA,SACA,WACA,SACA,SACA,OACA,UACA,UACA,SACA,SACA,UACA,SACA,SACA,UACA,OACA,UACA,QACA,OACA,SACA,OACA,SACA,UACA,UACA,UACA,SACA,WACA,SACA,OACA,WACA,WACA,UACA,OACA,UACA,WACA,UACA,WACA,SACA,SACA,UACA,QACA,SACA,WACA,MACA,OACA,UACA,SACA,SACA,SACA,QACA,OACA,OACA,SACA,OACA,QACA,SACA,QACA,UACA,OACA,QACA,QACA,QACA,QACA,QACA,OACA,QACA,OACA,OACA,MACA,OACA,OACA,OACA,SACA,OACA,QACA,OACA,QACA,UACA,QACA,QACA,QACA,OACA,QACA,SACA,OACA,OACA,OACA,UACA,UACA,OACA,OACA,UACA,SACA,MACA,QACA,SACA,QACA,QACA,WACA,UACA,UACA,WACA,WACA,QACA,OACA,SACA,SACA,UACA,SACA,UACA,SACA,UACA,QACA,SACA,QACA,MACA,UACA,UACA,QACA,SACA,UACA,SACA,SACA,UACA,QACA,SACA,SACA,SACA,SACA,SACA,QACA,SACA,QACA,WACA,UACA,QACA,QACA,MACA,QACA,QACA,UACA,QACA,QACA,SACA,QACA,UACA,SACA,UACA,SACA,WACA,OACA,QACA,SACA,QACA,UACA,SACA,WACA,SACA,UACA,SACA,UACA,WACA,UACA,UACA,QACA,QACA,OACA,SACA,SACA,SACA,SACA,UACA,SACA,UACA,SACA,QACA,MACA,UACA,SACA,OACA,UACA,OACA,QACA,QACA,OACA,QACA,OACA,SACA,SACA,MACA,QACA,UACA,OACA,UACA,MACA,QACA,SACA,UACA,QACA,WACA,UACA,WACA,UACA,MACA,OACA,OACA,SACA,QACA,WACA,QACA,QACA,MACA,QACA,UACA,QACA,SACA,OACA,OACA,SACA,QACA,OACA,OACA,SACA,SACA,OACA,OACA,QACA,SACA,OACA,MACA,UACA,MACA,OACA,QACA,QACA,OACA,SACA,OACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,QACA,MACA,OACA,QACA,MACA,OACA,OACA,SACA,OACA,OACA,QACA,SACA,SACA,OACA,UACA,QACA,UACA,SACA,SACA,QACA,MACA,UACA,QACA,WACA,QACA,SACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,OACA,MACA,QACA,UACA,OACA,SACA,SACA,OACA,SACA,UACA,OACA,MACA,SACA,UACA,SACA,SACA,UACA,MACA,OACA,OACA,SACA,QACA,OACA,UACA,SACA,QACA,SACA,UACA,UACA,QACA,QACA,OACA,SACA,SACA,UACA,OACA,OACA,OACA,SACA,QACA,QACA,QACA,UACA,QACA,QACA,QACA,QACA,OACA,OACA,OACA,UACA,OACA,OACA,QACA,UACA,SACA,SACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,UACA,QACA,QACA,OACA,QACA,OACA,UACA,QACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,MACA,MACA,QACA,OACA,OACA,SACA,UACA,OACA,QACA,SACA,OACA,QACA,UACA,MACA,OACA,OACA,SACA,OACA,SACA,QACA,QACA,WACA,SACA,QACA,SACA,OACA,MACA,OACA,SACA,OACA,OACA,OACA,MACA,OACA,UACA,QACA,SACA,OACA,OACA,UACA,SACA,OACA,QACA,OACA,OACA,OACA,SACA,QACA,WACA,OACA,QACA,OACA,QACA,MACA,OACA,QACA,SACA,QACA,UACA,SACA,OACA,SACA,QACA,OACA,UACA,SACA,MACA,OACA,OACA,WACA,OACA,SACA,MACA,UACA,UACA,QACA,UACA,UACA,SACA,SACA,SACA,UACA,UACA,OACA,UACA,SACA,WACA,QACA,WACA,SACA,WACA,SACA,UACA,SACA,SACA,UACA,UACA,SACA,SACA,SACA,QACA,WACA,QACA,UACA,SACA,SACA,SACA,UACA,UACA,SACA,WACA,OACA,SACA,SACA,UACA,OACA,SACA,UACA,QACA,OACA,QACA,SACA,SACA,MACA,OACA,UACA,QACA,QACA,QACA,MACA,OACA,OACA,UACA,MACA,QACA,QACA,OACA,SACA,SACA,OACA,OACA,WACA,OACA,OACA,UACA,MACA,OACA,MACA,SACA,OACA,UACA,OACA,MACA,UACA,OACA,SACA,OACA,OACA,QACA,QACA,OACA,MACA,QACA,QACA,SACA,OACA,OACA,OACA,WACA,SACA,QACA,QACA,QACA,QACA,UACA,OACA,MACA,OACA,UACA,QACA,OACA,SACA,OACA,QACA,QACA,UACA,OACA,MACA,QACA,SACA,UACA,QACA,OACA,SACA,OACA,UACA,SACA,SACA,QACA,OACA,UACA,UACA,UACA,OACA,OACA,QACA,OACA,OACA,QACA,OACA,OACA,SACA,OACA,SACA,OACA,SACA,OACA,OACA,UACA,QACA,OACA,QACA,SACA,OACA,OACA,UACA,OACA,SACA,OACA,QACA,QACA,UACA,SACA,QACA,QACA,SACA,SACA,UACA,MACA,QACA,SACA,OACA,OACA,OACA,QACA,OACA,SACA,MACA,SACA,UACA,QACA,UACA,SACA,QACA,SACA,QACA,SACA,SACA,SACA,WACA,OACA,OACA,SACA,QACA,WACA,OACA,SACA,SACA,UACA,OACA,SACA,OACA,UACA,OACA,WACA,QACA,QACA,SACA,OACA,SACA,SACA,UACA,OACA,QACA,QACA,QACA,QACA,OACA,UACA,QACA,SACA,SACA,WACA,OACA,UACA,QACA,OACA,UACA,QACA,SACA,UACA,SACA,SACA,OACA,UACA,MACA,QACA,UACA,SACA,QACA,SACA,MACA,SACA,UACA,SACA,UACA,QACA,OACA,QACA,OACA,UACA,WACA,SACA,SACA,QACA,WACA,QACA,OACA,QACA,OACA,SACA,OACA,WACA,SACA,SACA,WACA,QACA,OACA,SACA,SACA,UACA,OACA,QACA,OACA,SACA,SACA,QACA,SACA,SACA,OACA,OACA,OACA,WACA,UACA,UACA,SACA,QACA,OACA,MACA,UACA,UACA,QACA,OACA,OACA,OACA,QACA,QACA,QACA,UACA,SACA,SACA,QACA,OACA,UACA,OACA,UACA,SACA,QACA,MACA,UACA,SACA,QACA,MACA,MACA,OACA,SACA,SACA,UACA,UACA,SACA,UACA,QACA,QACA,UACA,OACA,MACA,QACA,SACA,QACA,MACA,OACA,MACA,QACA,UACA,OACA,OACA,MACA,QACA,SACA,OACA,OACA,QACA,UACA,SACA,SACA,SACA,QACA,UACA,QACA,WACA,QACA,SACA,WACA,SACA,UACA,QACA,UACA,QACA,SACA,UACA,OACA,OACA,OACA,MACA,QACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,SACA,OACA,QACA,QACA,QACA,UACA,QACA,SACA,SACA,OACA,SACA,QACA,OACA,QACA,OACA,UACA,SACA,UACA,QACA,OACA,UACA,QACA,SACA,OACA,UACA,UACA,MACA,UACA,SACA,SACA,SACA,UACA,SACA,SACA,MACA,QACA,QACA,SACA,WACA,QACA,SACA,UACA,QACA,MACA,SACA,OACA,QACA,OACA,UACA,OACA,SACA,QACA,QACA,QACA,SACA,UACA,QACA,OACA,SACA,SACA,QACA,OACA,SACA,OACA,OACA,QACA,QACA,OACA,SACA,OACA,OACA,OACA,UACA,UACA,WACA,WACA,OACA,SACA,UACA,UACA,SACA,QACA,WACA,SACA,UACA,SACA,UACA,UACA,SACA,UACA,QACA,QACA,UACA,QACA,WACA,SACA,UACA,QACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,QACA,WACA,UACA,UACA,QACA,UACA,SACA,UACA,OACA,OACA,QACA,UACA,QACA,QACA,QACA,WACA,SACA,UACA,QACA,OACA,MACA,SACA,UACA,UACA,UACA,UACA,WACA,QACA,OACA,OACA,QACA,SACA,UACA,OACA,OACA,QACA,QACA,OACA,OACA,QACA,QACA,OACA,QACA,SACA,QACA,QACA,OACA,OACA,SACA,QACA,MACA,QACA,QACA,OACA,SACA,QACA,UACA,SACA,UACA,SACA,SACA,UACA,SACA,UACA,SACA,SACA,SACA,SACA,UACA,SACA,QACA,UACA,SACA,OACA,SACA,WACA,SACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,UACA,SACA,UACA,SACA,WACA,SACA,WACA,WACA,SACA,SACA,UACA,SACA,UACA,SACA,SACA,SACA,SACA,MACA,SACA,OACA,OACA,OACA,QACA,QACA,QACA,QACA,OACA,OACA,SACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,SACA,SACA,UACA,OACA,SACA,OACA,OACA,SACA,QACA,QACA,QACA,QACA,SACA,OACA,MACA,OACA,MACA,SACA,QACA,MACA,SACA,UACA,OACA,OACA,QACA,SACA,QACA,OACA,SACA,OACA,SACA,OACA,UACA,UACA,QACA,UACA,OACA,MACA,QACA,OACA,QACA,UACA,QACA,SACA,SACA,UACA,WACA,WACA,QACA,QACA,SACA,SACA,QACA,MACA,SACA,SACA,OACA,SACA,SACA,UACA,WACA,OACA,OACA,UACA,SACA,OACA,UACA,SACA,QACA,WACA,SACA,UACA,UACA,SACA,QACA,QACA,SACA,QACA,UACA,QACA,OACA,QACA,UACA,SACA,QACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,QACA,WACA,QACA,SACA,QACA,UACA,MACA,UACA,OACA,OACA,QACA,QACA,OACA,SACA,OACA,QACA,SACA,UACA,SACA,QACA,OACA,QACA,SACA,UACA,MACA,OACA,QACA,SACA,MACA,QACA,OACA,QACA,QACA,OACA,OACA,QACA,UACA,QACA,QACA,SACA,OACA,SACA,OACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,QACA,OACA,QACA,OACA,OACA,SACA,SACA,OACA,OACA,OACA,QACA,UACA,QACA,WACA,QACA,UACA,OACA,OACA,QACA,OACA,OACA,QACA,OACA,SACA,QACA,QACA,QACA,UACA,QACA,QACA,UACA,QACA,QACA,QACA,SACA,QACA,SACA,QACA,OACA,SACA,QACA,QACA,UACA,QACA,QACA,OACA,QACA,SACA,SACA,MACA,SACA,UACA,WACA,SACA,UACA,QACA,QACA,SACA,QACA,QACA,QACA,QACA,OACA,QACA,QACA,OACA,OACA,SACA,QACA,QACA,QACA,QACA,UACA,QACA,QACA,QACA,QACA,WACA,SACA,SACA,SACA,WACA,UACA,QACA,UACA,QACA,UACA,SACA,SACA,UACA,OACA,SACA,SACA,QACA,UACA,OACA,SACA,MACA,QACA,SACA,QACA,SACA,UACA,OACA,UACA,QACA,WACA,WACA,SACA,UACA,UACA,UACA,QACA,OACA,QACA,QACA,QACA,QACA,OACA,QACA,SACA,QACA,SACA,UACA,QACA,SACA,QACA,SACA,MACA,OACA,SACA,OACA,OACA,OACA,SACA,OACA,QACA,SACA,OACA,QACA,OACA,OACA,MACA,SACA,SACA,OACA,OACA,OACA,OACA,QACA,OACA,QACA,OACA,SACA,QACA,OACA,QACA,OACA,UACA,QACA,SACA,QACA,QACA,UACA,SACA,OACA,QACA,OACA,SACA,OACA,OACA,MACA,QACA,SACA,QACA,QACA,UACA,QACA,UACA,MACA,WACA,SACA,QACA,SACA,WACA,OACA,SACA,UACA,OACA,QACA,MACA,QACA,SACA,QACA,UACA,WACA,OACA,QACA,UACA,SACA,QACA,OACA,MACA,QACA,QACA,UACA,SACA,QACA,WACA,OACA,QACA,SACA,OACA,QACA,OACA,QACA,QACA,QACA,QACA,UACA,OACA,OACA,SACA,UACA,QACA,OACA,QACA,UACA,QACA,QACA,MACA,OACA,UACA,SACA,OACA,SACA,SACA,OACA,SACA,SACA,SACA,QACA,OACA,QACA,MACA,OACA,UACA,OACA,WACA,SACA,UACA,QACA,UACA,QACA,OACA,SACA,SACA,UACA,UACA,SACA,OACA,WACA,UACA,SACA,QACA,UACA,SACA,SACA,UACA,SACA,OACA,QACA,QACA,QACA,OACA,QACA,MACA,OACA,SACA,UACA,QACA,UACA,SACA,SACA,QACA,QACA,SACA,QACA,MACA,SACA,QACA,UACA,OACA,QACA,UACA,SACA,SACA,UACA,QACA,OACA,SACA,UACA,OACA,SACA,UACA,SACA,UACA,UACA,UACA,QACA,OACA,UACA,UACA,SACA,UACA,QACA,OACA,QACA,SACA,QACA,QACA,QACA,QACA,OACA,UACA,SACA,OACA,SACA,OACA,QACA,OACA,OACA,OACA,SACA,OACA,UACA,OACA,UACA,OACA,OACA,QACA,QACA,OACA,MACA,SACA,SACA,OACA,SACA,UACA,MACA,UACA,UACA,QACA,UACA,OACA,MACA,QACA,OACA,QACA,QACA,OACA,QACA,OACA,UACA,OACA,QACA,OACA,OACA,OACA,MACA,SACA,OACA,OACA,OACA,SACA,SACA,OACA,SACA,OACA,OACA,UACA,OACA,QACA,SACA,OACA,OACA,OACA,OACA,QACA,QACA,QACA,OACA,QACA,UACA,QACA,QACA,QACA,OACA,OACA,SACA,MACA,QACA,QACA,QACA,OACA,OACA,Q,wICt7DG,SAAc2C,GAGjB,IAFA,IAAI4iI,EAAM,IAEDhtI,EAAI,EAAGA,EAAIoK,EAAK7H,OAAS,EAAGvC,GAAK,EAAG,CACzCgtI,GAAO5iI,EAAKpK,GACZ,IAAK,IAAIsM,EAAI,EAAGA,EAAI,EAAGA,GAAK,EACxB0gI,EAAOA,IAAQ,GAAoB,IAAP,EAANA,GAAiB,EAAI,KAInD,OAAa,IAANA,G,UA5EJ,SAAiBh3H,EAAOi3H,GAO3B,IANA,IAEM7iI,EAAO8iI,EAFIl3H,EAAM6hB,KAAI,SAACpgB,GAAD,OAAUw1H,EAASthI,QAAQ8L,EAAK7M,kBAEvBqiI,EAAS1qI,OAAQ,IAAK,IACpD8pB,EAAWjiB,EAAKA,EAAK7H,OAAS,GAC9ByC,EAAS,IAAI6D,WAAWuB,EAAK7H,OAAS,GAEnCvC,EAAI,EAAGA,EAAIoK,EAAK7H,OAAS,EAAGvC,G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,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,kEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,sEAIN54C,IAAK,CACHpnB,IAAK,EACLggE,OAAQ,CACN,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,iEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEA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","file":"hweb3.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Web3\"] = factory();\n\telse\n\t\troot[\"Web3\"] = factory();\n})(window, function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 565);\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nmodule.exports = _interopRequireDefault;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return typeof obj;\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","var _typeof = require(\"@babel/runtime/helpers/typeof\")[\"default\"];\n\nvar assertThisInitialized = require(\"./assertThisInitialized.js\");\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","module.exports = require(\"regenerator-runtime\");\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n\nmodule.exports = _asyncToGenerator;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","import Long from \"long\";\nimport * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Key from \"../Key.js\";\nimport PublicKey from \"../PublicKey.js\";\nimport CACHE from \"../Cache.js\";\n\n/**\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * The ID for a crypto-currency account on Hedera.\n */\nexport default class AccountId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n * @param {(PublicKey)=} aliasKey\n */\n constructor(props, realm, num, aliasKey) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n this.aliasKey = aliasKey != null ? aliasKey : null;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {AccountId}\n */\n static fromString(text) {\n const result = entity_id.fromStringSplitter(text);\n\n if (Number.isNaN(result.shard) || Number.isNaN(result.realm)) {\n throw new Error(\"invalid format for entity ID\");\n }\n\n const shard =\n result.shard != null ? Long.fromString(result.shard) : Long.ZERO;\n const realm =\n result.realm != null ? Long.fromString(result.realm) : Long.ZERO;\n const [num, publicKey] =\n result.numOrHex.length < 20\n ? [Long.fromString(result.numOrHex), undefined]\n : [Long.ZERO, PublicKey.fromString(result.numOrHex)];\n\n return new AccountId(shard, realm, num, publicKey);\n }\n\n /**\n * @internal\n * @param {proto.IAccountID} id\n * @returns {AccountId}\n */\n static _fromProtobuf(id) {\n let key =\n id.alias != null && id.alias.length > 0\n ? Key._fromProtobufKey(proto.Key.decode(id.alias))\n : undefined;\n\n if (!(key instanceof PublicKey)) {\n key = undefined;\n }\n\n return new AccountId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.accountNum != null ? id.accountNum : 0,\n key\n );\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n if (this.aliasKey != null) {\n throw new Error(\n \"cannot calculate checksum with an account ID that has a aliasKey\"\n );\n }\n\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {AccountId}\n */\n static fromBytes(bytes) {\n return AccountId._fromProtobuf(proto.AccountID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {AccountId}\n */\n static fromSolidityAddress(address) {\n return new AccountId(...entity_id.fromSolidityAddress(address));\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.IAccountID}\n */\n _toProtobuf() {\n return {\n alias:\n this.aliasKey != null\n ? proto.Key.encode(this.aliasKey._toProtobufKey()).finish()\n : null,\n accountNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.AccountID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n const account =\n this.aliasKey != null\n ? this.aliasKey.toString()\n : this.num.toString();\n\n return `${this.shard.toString()}.${this.realm.toString()}.${account}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n if (this.aliasKey != null) {\n throw new Error(\n \"cannot calculate checksum with an account ID that has a aliasKey\"\n );\n }\n\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @param {this} other\n * @returns {boolean}\n */\n equals(other) {\n let account = false;\n\n if (this.aliasKey != null && other.aliasKey != null) {\n account = this.aliasKey.equals(other.aliasKey);\n } else if (this.aliasKey == null && other.aliasKey == null) {\n account = this.num.eq(other.num);\n }\n\n return (\n this.shard.eq(other.shard) && this.realm.eq(other.realm) && account\n );\n }\n\n /**\n * @returns {AccountId}\n */\n clone() {\n const id = new AccountId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {AccountId} other\n * @returns {number}\n */\n compare(other) {\n let comparison = this.shard.compare(other.shard);\n if (comparison != 0) {\n return comparison;\n }\n\n comparison = this.realm.compare(other.realm);\n if (comparison != 0) {\n return comparison;\n }\n\n if (this.aliasKey != null && other.aliasKey != null) {\n const t = this.aliasKey.toString();\n const o = other.aliasKey.toString();\n\n if (t > o) {\n return 1;\n } else if (t < o) {\n return -1;\n } else {\n return 0;\n }\n } else if (this.aliasKey == null && other.aliasKey == null) {\n return this.num.compare(other.num);\n } else {\n return 0;\n }\n }\n}\n\nCACHE.accountIdConstructor = (shard, realm, key) =>\n new AccountId(shard, realm, Long.ZERO, key);\n","import Long from \"long\";\nimport * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Key from \"../Key.js\";\nimport PublicKey from \"../PublicKey.js\";\nimport CACHE from \"../Cache.js\";\n\n/**\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * The ID for a crypto-currency account on Hedera.\n */\nexport default class AccountId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n * @param {(PublicKey)=} aliasKey\n */\n constructor(props, realm, num, aliasKey) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n this.aliasKey = aliasKey != null ? aliasKey : null;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {AccountId}\n */\n static fromString(text) {\n const result = entity_id.fromStringSplitter(text);\n\n if (Number.isNaN(result.shard) || Number.isNaN(result.realm)) {\n throw new Error(\"invalid format for entity ID\");\n }\n\n const shard =\n result.shard != null ? Long.fromString(result.shard) : Long.ZERO;\n const realm =\n result.realm != null ? Long.fromString(result.realm) : Long.ZERO;\n const [num, publicKey] =\n result.numOrHex.length < 20\n ? [Long.fromString(result.numOrHex), undefined]\n : [Long.ZERO, PublicKey.fromString(result.numOrHex)];\n\n return new AccountId(shard, realm, num, publicKey);\n }\n\n /**\n * @internal\n * @param {proto.IAccountID} id\n * @returns {AccountId}\n */\n static _fromProtobuf(id) {\n let key =\n id.alias != null && id.alias.length > 0\n ? Key._fromProtobufKey(proto.Key.decode(id.alias))\n : undefined;\n\n if (!(key instanceof PublicKey)) {\n key = undefined;\n }\n\n return new AccountId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.accountNum != null ? id.accountNum : 0,\n key\n );\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n if (this.aliasKey != null) {\n throw new Error(\n \"cannot calculate checksum with an account ID that has a aliasKey\"\n );\n }\n\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {AccountId}\n */\n static fromBytes(bytes) {\n return AccountId._fromProtobuf(proto.AccountID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {AccountId}\n */\n static fromSolidityAddress(address) {\n return new AccountId(...entity_id.fromSolidityAddress(address));\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.IAccountID}\n */\n _toProtobuf() {\n return {\n alias:\n this.aliasKey != null\n ? proto.Key.encode(this.aliasKey._toProtobufKey()).finish()\n : null,\n accountNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.AccountID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n const account =\n this.aliasKey != null\n ? this.aliasKey.toString()\n : this.num.toString();\n\n return `${this.shard.toString()}.${this.realm.toString()}.${account}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n if (this.aliasKey != null) {\n throw new Error(\n \"cannot calculate checksum with an account ID that has a aliasKey\"\n );\n }\n\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @param {this} other\n * @returns {boolean}\n */\n equals(other) {\n let account = false;\n\n if (this.aliasKey != null && other.aliasKey != null) {\n account = this.aliasKey.equals(other.aliasKey);\n } else if (this.aliasKey == null && other.aliasKey == null) {\n account = this.num.eq(other.num);\n }\n\n return (\n this.shard.eq(other.shard) && this.realm.eq(other.realm) && account\n );\n }\n\n /**\n * @returns {AccountId}\n */\n clone() {\n const id = new AccountId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {AccountId} other\n * @returns {number}\n */\n compare(other) {\n let comparison = this.shard.compare(other.shard);\n if (comparison != 0) {\n return comparison;\n }\n\n comparison = this.realm.compare(other.realm);\n if (comparison != 0) {\n return comparison;\n }\n\n if (this.aliasKey != null && other.aliasKey != null) {\n const t = this.aliasKey.toString();\n const o = other.aliasKey.toString();\n\n if (t > o) {\n return 1;\n } else if (t < o) {\n return -1;\n } else {\n return 0;\n }\n } else if (this.aliasKey == null && other.aliasKey == null) {\n return this.num.compare(other.num);\n } else {\n return 0;\n }\n }\n}\n\nCACHE.accountIdConstructor = (shard, realm, key) =>\n new AccountId(shard, realm, Long.ZERO, key);\n","var arrayWithHoles = require(\"./arrayWithHoles.js\");\n\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\n\nvar nonIterableRest = require(\"./nonIterableRest.js\");\n\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\n\nmodule.exports = _slicedToArray;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('isarray')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Due to various browser bugs, sometimes the Object implementation will be used even\n * when the browser supports typed arrays.\n *\n * Note:\n *\n * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n * get the Object implementation, which is slower but behaves correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n ? global.TYPED_ARRAY_SUPPORT\n : typedArraySupport()\n\n/*\n * Export kMaxLength after typed array support is determined.\n */\nexports.kMaxLength = kMaxLength()\n\nfunction typedArraySupport () {\n try {\n var arr = new Uint8Array(1)\n arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}\n return arr.foo() === 42 && // typed array instances can be augmented\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n}\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\nfunction createBuffer (that, length) {\n if (kMaxLength() < length) {\n throw new RangeError('Invalid typed array length')\n }\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = new Uint8Array(length)\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n if (that === null) {\n that = new Buffer(length)\n }\n that.length = length\n }\n\n return that\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n return new Buffer(arg, encodingOrOffset, length)\n }\n\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new Error(\n 'If encoding is specified then the first argument must be a string'\n )\n }\n return allocUnsafe(this, arg)\n }\n return from(this, arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\n// TODO: Legacy, not needed anymore. Remove in next major version.\nBuffer._augment = function (arr) {\n arr.__proto__ = Buffer.prototype\n return arr\n}\n\nfunction from (that, value, encodingOrOffset, length) {\n if (typeof value === 'number') {\n throw new TypeError('\"value\" argument must not be a number')\n }\n\n if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n return fromArrayBuffer(that, value, encodingOrOffset, length)\n }\n\n if (typeof value === 'string') {\n return fromString(that, value, encodingOrOffset)\n }\n\n return fromObject(that, value)\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(null, value, encodingOrOffset, length)\n}\n\nif (Buffer.TYPED_ARRAY_SUPPORT) {\n Buffer.prototype.__proto__ = Uint8Array.prototype\n Buffer.__proto__ = Uint8Array\n if (typeof Symbol !== 'undefined' && Symbol.species &&\n Buffer[Symbol.species] === Buffer) {\n // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n Object.defineProperty(Buffer, Symbol.species, {\n value: null,\n configurable: true\n })\n }\n}\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be a number')\n } else if (size < 0) {\n throw new RangeError('\"size\" argument must not be negative')\n }\n}\n\nfunction alloc (that, size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(that, size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpretted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(that, size).fill(fill, encoding)\n : createBuffer(that, size).fill(fill)\n }\n return createBuffer(that, size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(null, size, fill, encoding)\n}\n\nfunction allocUnsafe (that, size) {\n assertSize(size)\n that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < size; ++i) {\n that[i] = 0\n }\n }\n return that\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(null, size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(null, size)\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('\"encoding\" must be a valid string encoding')\n }\n\n var length = byteLength(string, encoding) | 0\n that = createBuffer(that, length)\n\n var actual = that.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n that = that.slice(0, actual)\n }\n\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = array.length < 0 ? 0 : checked(array.length) | 0\n that = createBuffer(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayBuffer (that, array, byteOffset, length) {\n array.byteLength // this throws if `array` is not a valid ArrayBuffer\n\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\\'offset\\' is out of bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\\'length\\' is out of bounds')\n }\n\n if (byteOffset === undefined && length === undefined) {\n array = new Uint8Array(array)\n } else if (length === undefined) {\n array = new Uint8Array(array, byteOffset)\n } else {\n array = new Uint8Array(array, byteOffset, length)\n }\n\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = array\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n that = fromArrayLike(that, array)\n }\n return that\n}\n\nfunction fromObject (that, obj) {\n if (Buffer.isBuffer(obj)) {\n var len = checked(obj.length) | 0\n that = createBuffer(that, len)\n\n if (that.length === 0) {\n return that\n }\n\n obj.copy(that, 0, 0, len)\n return that\n }\n\n if (obj) {\n if ((typeof ArrayBuffer !== 'undefined' &&\n obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n if (typeof obj.length !== 'number' || isnan(obj.length)) {\n return createBuffer(that, 0)\n }\n return fromArrayLike(that, obj)\n }\n\n if (obj.type === 'Buffer' && isArray(obj.data)) {\n return fromArrayLike(that, obj.data)\n }\n }\n\n throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength()` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n var buffer = Buffer.allocUnsafe(length)\n var pos = 0\n for (i = 0; i < list.length; ++i) {\n var buf = list[i]\n if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n buf.copy(buffer, pos)\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n string = '' + string\n }\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n case undefined:\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect\n// Buffer instances.\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n var i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n var len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (var i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n var len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (var i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n var len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (var i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return ''\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (!Buffer.isBuffer(target)) {\n throw new TypeError('Argument must be a Buffer')\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n var x = thisEnd - thisStart\n var y = end - start\n var len = Math.min(x, y)\n\n var thisCopy = this.slice(thisStart, thisEnd)\n var targetCopy = target.slice(start, end)\n\n for (var i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (isNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (Buffer.TYPED_ARRAY_SUPPORT &&\n typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n var indexSize = 1\n var arrLength = arr.length\n var valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n var i\n if (dir) {\n var foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n var found = true\n for (var j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; ++i) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction latin1Write (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'latin1':\n case 'binary':\n return latin1Write(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; ++i) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = this.subarray(start, end)\n newBuf.__proto__ = Buffer.prototype\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; ++i) {\n newBuf[i] = this[i + start]\n }\n }\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n var i\n\n if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (i = len - 1; i >= 0; --i) {\n target[i + targetStart] = this[i + start]\n }\n } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n // ascending copy from start\n for (i = 0; i < len; ++i) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, start + len),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (val.length === 1) {\n var code = val.charCodeAt(0)\n if (code < 256) {\n val = code\n }\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n } else if (typeof val === 'number') {\n val = val & 255\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n var i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n var bytes = Buffer.isBuffer(val)\n ? val\n : utf8ToBytes(new Buffer(val, encoding).toString())\n var len = bytes.length\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\nfunction isnan (val) {\n return val !== val // eslint-disable-line no-self-compare\n}\n","(function (module, exports) {\n 'use strict';\n\n // Utils\n function assert (val, msg) {\n if (!val) throw new Error(msg || 'Assertion failed');\n }\n\n // Could use `inherits` module, but don't want to move from single file\n // architecture yet.\n function inherits (ctor, superCtor) {\n ctor.super_ = superCtor;\n var TempCtor = function () {};\n TempCtor.prototype = superCtor.prototype;\n ctor.prototype = new TempCtor();\n ctor.prototype.constructor = ctor;\n }\n\n // BN\n\n function BN (number, base, endian) {\n if (BN.isBN(number)) {\n return number;\n }\n\n this.negative = 0;\n this.words = null;\n this.length = 0;\n\n // Reduction context\n this.red = null;\n\n if (number !== null) {\n if (base === 'le' || base === 'be') {\n endian = base;\n base = 10;\n }\n\n this._init(number || 0, base || 10, endian || 'be');\n }\n }\n if (typeof module === 'object') {\n module.exports = BN;\n } else {\n exports.BN = BN;\n }\n\n BN.BN = BN;\n BN.wordSize = 26;\n\n var Buffer;\n try {\n if (typeof window !== 'undefined' && typeof window.Buffer !== 'undefined') {\n Buffer = window.Buffer;\n } else {\n Buffer = require('buffer').Buffer;\n }\n } catch (e) {\n }\n\n BN.isBN = function isBN (num) {\n if (num instanceof BN) {\n return true;\n }\n\n return num !== null && typeof num === 'object' &&\n num.constructor.wordSize === BN.wordSize && Array.isArray(num.words);\n };\n\n BN.max = function max (left, right) {\n if (left.cmp(right) > 0) return left;\n return right;\n };\n\n BN.min = function min (left, right) {\n if (left.cmp(right) < 0) return left;\n return right;\n };\n\n BN.prototype._init = function init (number, base, endian) {\n if (typeof number === 'number') {\n return this._initNumber(number, base, endian);\n }\n\n if (typeof number === 'object') {\n return this._initArray(number, base, endian);\n }\n\n if (base === 'hex') {\n base = 16;\n }\n assert(base === (base | 0) && base >= 2 && base <= 36);\n\n number = number.toString().replace(/\\s+/g, '');\n var start = 0;\n if (number[0] === '-') {\n start++;\n this.negative = 1;\n }\n\n if (start < number.length) {\n if (base === 16) {\n this._parseHex(number, start, endian);\n } else {\n this._parseBase(number, base, start);\n if (endian === 'le') {\n this._initArray(this.toArray(), base, endian);\n }\n }\n }\n };\n\n BN.prototype._initNumber = function _initNumber (number, base, endian) {\n if (number < 0) {\n this.negative = 1;\n number = -number;\n }\n if (number < 0x4000000) {\n this.words = [ number & 0x3ffffff ];\n this.length = 1;\n } else if (number < 0x10000000000000) {\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff\n ];\n this.length = 2;\n } else {\n assert(number < 0x20000000000000); // 2 ^ 53 (unsafe)\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff,\n 1\n ];\n this.length = 3;\n }\n\n if (endian !== 'le') return;\n\n // Reverse the bytes\n this._initArray(this.toArray(), base, endian);\n };\n\n BN.prototype._initArray = function _initArray (number, base, endian) {\n // Perhaps a Uint8Array\n assert(typeof number.length === 'number');\n if (number.length <= 0) {\n this.words = [ 0 ];\n this.length = 1;\n return this;\n }\n\n this.length = Math.ceil(number.length / 3);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n var j, w;\n var off = 0;\n if (endian === 'be') {\n for (i = number.length - 1, j = 0; i >= 0; i -= 3) {\n w = number[i] | (number[i - 1] << 8) | (number[i - 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n } else if (endian === 'le') {\n for (i = 0, j = 0; i < number.length; i += 3) {\n w = number[i] | (number[i + 1] << 8) | (number[i + 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n }\n return this.strip();\n };\n\n function parseHex4Bits (string, index) {\n var c = string.charCodeAt(index);\n // 'A' - 'F'\n if (c >= 65 && c <= 70) {\n return c - 55;\n // 'a' - 'f'\n } else if (c >= 97 && c <= 102) {\n return c - 87;\n // '0' - '9'\n } else {\n return (c - 48) & 0xf;\n }\n }\n\n function parseHexByte (string, lowerBound, index) {\n var r = parseHex4Bits(string, index);\n if (index - 1 >= lowerBound) {\n r |= parseHex4Bits(string, index - 1) << 4;\n }\n return r;\n }\n\n BN.prototype._parseHex = function _parseHex (number, start, endian) {\n // Create possibly bigger array to ensure that it fits the number\n this.length = Math.ceil((number.length - start) / 6);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n // 24-bits chunks\n var off = 0;\n var j = 0;\n\n var w;\n if (endian === 'be') {\n for (i = number.length - 1; i >= start; i -= 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n } else {\n var parseLength = number.length - start;\n for (i = parseLength % 2 === 0 ? start + 1 : start; i < number.length; i += 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n }\n\n this.strip();\n };\n\n function parseBase (str, start, end, mul) {\n var r = 0;\n var len = Math.min(str.length, end);\n for (var i = start; i < len; i++) {\n var c = str.charCodeAt(i) - 48;\n\n r *= mul;\n\n // 'a'\n if (c >= 49) {\n r += c - 49 + 0xa;\n\n // 'A'\n } else if (c >= 17) {\n r += c - 17 + 0xa;\n\n // '0' - '9'\n } else {\n r += c;\n }\n }\n return r;\n }\n\n BN.prototype._parseBase = function _parseBase (number, base, start) {\n // Initialize as zero\n this.words = [ 0 ];\n this.length = 1;\n\n // Find length of limb in base\n for (var limbLen = 0, limbPow = 1; limbPow <= 0x3ffffff; limbPow *= base) {\n limbLen++;\n }\n limbLen--;\n limbPow = (limbPow / base) | 0;\n\n var total = number.length - start;\n var mod = total % limbLen;\n var end = Math.min(total, total - mod) + start;\n\n var word = 0;\n for (var i = start; i < end; i += limbLen) {\n word = parseBase(number, i, i + limbLen, base);\n\n this.imuln(limbPow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n if (mod !== 0) {\n var pow = 1;\n word = parseBase(number, i, number.length, base);\n\n for (i = 0; i < mod; i++) {\n pow *= base;\n }\n\n this.imuln(pow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n this.strip();\n };\n\n BN.prototype.copy = function copy (dest) {\n dest.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n dest.words[i] = this.words[i];\n }\n dest.length = this.length;\n dest.negative = this.negative;\n dest.red = this.red;\n };\n\n BN.prototype.clone = function clone () {\n var r = new BN(null);\n this.copy(r);\n return r;\n };\n\n BN.prototype._expand = function _expand (size) {\n while (this.length < size) {\n this.words[this.length++] = 0;\n }\n return this;\n };\n\n // Remove leading `0` from `this`\n BN.prototype.strip = function strip () {\n while (this.length > 1 && this.words[this.length - 1] === 0) {\n this.length--;\n }\n return this._normSign();\n };\n\n BN.prototype._normSign = function _normSign () {\n // -0 = 0\n if (this.length === 1 && this.words[0] === 0) {\n this.negative = 0;\n }\n return this;\n };\n\n BN.prototype.inspect = function inspect () {\n return (this.red ? '';\n };\n\n /*\n\n var zeros = [];\n var groupSizes = [];\n var groupBases = [];\n\n var s = '';\n var i = -1;\n while (++i < BN.wordSize) {\n zeros[i] = s;\n s += '0';\n }\n groupSizes[0] = 0;\n groupSizes[1] = 0;\n groupBases[0] = 0;\n groupBases[1] = 0;\n var base = 2 - 1;\n while (++base < 36 + 1) {\n var groupSize = 0;\n var groupBase = 1;\n while (groupBase < (1 << BN.wordSize) / base) {\n groupBase *= base;\n groupSize += 1;\n }\n groupSizes[base] = groupSize;\n groupBases[base] = groupBase;\n }\n\n */\n\n var zeros = [\n '',\n '0',\n '00',\n '000',\n '0000',\n '00000',\n '000000',\n '0000000',\n '00000000',\n '000000000',\n '0000000000',\n '00000000000',\n '000000000000',\n '0000000000000',\n '00000000000000',\n '000000000000000',\n '0000000000000000',\n '00000000000000000',\n '000000000000000000',\n '0000000000000000000',\n '00000000000000000000',\n '000000000000000000000',\n '0000000000000000000000',\n '00000000000000000000000',\n '000000000000000000000000',\n '0000000000000000000000000'\n ];\n\n var groupSizes = [\n 0, 0,\n 25, 16, 12, 11, 10, 9, 8,\n 8, 7, 7, 7, 7, 6, 6,\n 6, 6, 6, 6, 6, 5, 5,\n 5, 5, 5, 5, 5, 5, 5,\n 5, 5, 5, 5, 5, 5, 5\n ];\n\n var groupBases = [\n 0, 0,\n 33554432, 43046721, 16777216, 48828125, 60466176, 40353607, 16777216,\n 43046721, 10000000, 19487171, 35831808, 62748517, 7529536, 11390625,\n 16777216, 24137569, 34012224, 47045881, 64000000, 4084101, 5153632,\n 6436343, 7962624, 9765625, 11881376, 14348907, 17210368, 20511149,\n 24300000, 28629151, 33554432, 39135393, 45435424, 52521875, 60466176\n ];\n\n BN.prototype.toString = function toString (base, padding) {\n base = base || 10;\n padding = padding | 0 || 1;\n\n var out;\n if (base === 16 || base === 'hex') {\n out = '';\n var off = 0;\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = this.words[i];\n var word = (((w << off) | carry) & 0xffffff).toString(16);\n carry = (w >>> (24 - off)) & 0xffffff;\n if (carry !== 0 || i !== this.length - 1) {\n out = zeros[6 - word.length] + word + out;\n } else {\n out = word + out;\n }\n off += 2;\n if (off >= 26) {\n off -= 26;\n i--;\n }\n }\n if (carry !== 0) {\n out = carry.toString(16) + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n if (base === (base | 0) && base >= 2 && base <= 36) {\n // var groupSize = Math.floor(BN.wordSize * Math.LN2 / Math.log(base));\n var groupSize = groupSizes[base];\n // var groupBase = Math.pow(base, groupSize);\n var groupBase = groupBases[base];\n out = '';\n var c = this.clone();\n c.negative = 0;\n while (!c.isZero()) {\n var r = c.modn(groupBase).toString(base);\n c = c.idivn(groupBase);\n\n if (!c.isZero()) {\n out = zeros[groupSize - r.length] + r + out;\n } else {\n out = r + out;\n }\n }\n if (this.isZero()) {\n out = '0' + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n assert(false, 'Base should be between 2 and 36');\n };\n\n BN.prototype.toNumber = function toNumber () {\n var ret = this.words[0];\n if (this.length === 2) {\n ret += this.words[1] * 0x4000000;\n } else if (this.length === 3 && this.words[2] === 0x01) {\n // NOTE: at this stage it is known that the top bit is set\n ret += 0x10000000000000 + (this.words[1] * 0x4000000);\n } else if (this.length > 2) {\n assert(false, 'Number can only safely store up to 53 bits');\n }\n return (this.negative !== 0) ? -ret : ret;\n };\n\n BN.prototype.toJSON = function toJSON () {\n return this.toString(16);\n };\n\n BN.prototype.toBuffer = function toBuffer (endian, length) {\n assert(typeof Buffer !== 'undefined');\n return this.toArrayLike(Buffer, endian, length);\n };\n\n BN.prototype.toArray = function toArray (endian, length) {\n return this.toArrayLike(Array, endian, length);\n };\n\n BN.prototype.toArrayLike = function toArrayLike (ArrayType, endian, length) {\n var byteLength = this.byteLength();\n var reqLength = length || Math.max(1, byteLength);\n assert(byteLength <= reqLength, 'byte array longer than desired length');\n assert(reqLength > 0, 'Requested array length <= 0');\n\n this.strip();\n var littleEndian = endian === 'le';\n var res = new ArrayType(reqLength);\n\n var b, i;\n var q = this.clone();\n if (!littleEndian) {\n // Assume big-endian\n for (i = 0; i < reqLength - byteLength; i++) {\n res[i] = 0;\n }\n\n for (i = 0; !q.isZero(); i++) {\n b = q.andln(0xff);\n q.iushrn(8);\n\n res[reqLength - i - 1] = b;\n }\n } else {\n for (i = 0; !q.isZero(); i++) {\n b = q.andln(0xff);\n q.iushrn(8);\n\n res[i] = b;\n }\n\n for (; i < reqLength; i++) {\n res[i] = 0;\n }\n }\n\n return res;\n };\n\n if (Math.clz32) {\n BN.prototype._countBits = function _countBits (w) {\n return 32 - Math.clz32(w);\n };\n } else {\n BN.prototype._countBits = function _countBits (w) {\n var t = w;\n var r = 0;\n if (t >= 0x1000) {\n r += 13;\n t >>>= 13;\n }\n if (t >= 0x40) {\n r += 7;\n t >>>= 7;\n }\n if (t >= 0x8) {\n r += 4;\n t >>>= 4;\n }\n if (t >= 0x02) {\n r += 2;\n t >>>= 2;\n }\n return r + t;\n };\n }\n\n BN.prototype._zeroBits = function _zeroBits (w) {\n // Short-cut\n if (w === 0) return 26;\n\n var t = w;\n var r = 0;\n if ((t & 0x1fff) === 0) {\n r += 13;\n t >>>= 13;\n }\n if ((t & 0x7f) === 0) {\n r += 7;\n t >>>= 7;\n }\n if ((t & 0xf) === 0) {\n r += 4;\n t >>>= 4;\n }\n if ((t & 0x3) === 0) {\n r += 2;\n t >>>= 2;\n }\n if ((t & 0x1) === 0) {\n r++;\n }\n return r;\n };\n\n // Return number of used bits in a BN\n BN.prototype.bitLength = function bitLength () {\n var w = this.words[this.length - 1];\n var hi = this._countBits(w);\n return (this.length - 1) * 26 + hi;\n };\n\n function toBitArray (num) {\n var w = new Array(num.bitLength());\n\n for (var bit = 0; bit < w.length; bit++) {\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n w[bit] = (num.words[off] & (1 << wbit)) >>> wbit;\n }\n\n return w;\n }\n\n // Number of trailing zero bits\n BN.prototype.zeroBits = function zeroBits () {\n if (this.isZero()) return 0;\n\n var r = 0;\n for (var i = 0; i < this.length; i++) {\n var b = this._zeroBits(this.words[i]);\n r += b;\n if (b !== 26) break;\n }\n return r;\n };\n\n BN.prototype.byteLength = function byteLength () {\n return Math.ceil(this.bitLength() / 8);\n };\n\n BN.prototype.toTwos = function toTwos (width) {\n if (this.negative !== 0) {\n return this.abs().inotn(width).iaddn(1);\n }\n return this.clone();\n };\n\n BN.prototype.fromTwos = function fromTwos (width) {\n if (this.testn(width - 1)) {\n return this.notn(width).iaddn(1).ineg();\n }\n return this.clone();\n };\n\n BN.prototype.isNeg = function isNeg () {\n return this.negative !== 0;\n };\n\n // Return negative clone of `this`\n BN.prototype.neg = function neg () {\n return this.clone().ineg();\n };\n\n BN.prototype.ineg = function ineg () {\n if (!this.isZero()) {\n this.negative ^= 1;\n }\n\n return this;\n };\n\n // Or `num` with `this` in-place\n BN.prototype.iuor = function iuor (num) {\n while (this.length < num.length) {\n this.words[this.length++] = 0;\n }\n\n for (var i = 0; i < num.length; i++) {\n this.words[i] = this.words[i] | num.words[i];\n }\n\n return this.strip();\n };\n\n BN.prototype.ior = function ior (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuor(num);\n };\n\n // Or `num` with `this`\n BN.prototype.or = function or (num) {\n if (this.length > num.length) return this.clone().ior(num);\n return num.clone().ior(this);\n };\n\n BN.prototype.uor = function uor (num) {\n if (this.length > num.length) return this.clone().iuor(num);\n return num.clone().iuor(this);\n };\n\n // And `num` with `this` in-place\n BN.prototype.iuand = function iuand (num) {\n // b = min-length(num, this)\n var b;\n if (this.length > num.length) {\n b = num;\n } else {\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = this.words[i] & num.words[i];\n }\n\n this.length = b.length;\n\n return this.strip();\n };\n\n BN.prototype.iand = function iand (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuand(num);\n };\n\n // And `num` with `this`\n BN.prototype.and = function and (num) {\n if (this.length > num.length) return this.clone().iand(num);\n return num.clone().iand(this);\n };\n\n BN.prototype.uand = function uand (num) {\n if (this.length > num.length) return this.clone().iuand(num);\n return num.clone().iuand(this);\n };\n\n // Xor `num` with `this` in-place\n BN.prototype.iuxor = function iuxor (num) {\n // a.length > b.length\n var a;\n var b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = a.words[i] ^ b.words[i];\n }\n\n if (this !== a) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = a.length;\n\n return this.strip();\n };\n\n BN.prototype.ixor = function ixor (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuxor(num);\n };\n\n // Xor `num` with `this`\n BN.prototype.xor = function xor (num) {\n if (this.length > num.length) return this.clone().ixor(num);\n return num.clone().ixor(this);\n };\n\n BN.prototype.uxor = function uxor (num) {\n if (this.length > num.length) return this.clone().iuxor(num);\n return num.clone().iuxor(this);\n };\n\n // Not ``this`` with ``width`` bitwidth\n BN.prototype.inotn = function inotn (width) {\n assert(typeof width === 'number' && width >= 0);\n\n var bytesNeeded = Math.ceil(width / 26) | 0;\n var bitsLeft = width % 26;\n\n // Extend the buffer with leading zeroes\n this._expand(bytesNeeded);\n\n if (bitsLeft > 0) {\n bytesNeeded--;\n }\n\n // Handle complete words\n for (var i = 0; i < bytesNeeded; i++) {\n this.words[i] = ~this.words[i] & 0x3ffffff;\n }\n\n // Handle the residue\n if (bitsLeft > 0) {\n this.words[i] = ~this.words[i] & (0x3ffffff >> (26 - bitsLeft));\n }\n\n // And remove leading zeroes\n return this.strip();\n };\n\n BN.prototype.notn = function notn (width) {\n return this.clone().inotn(width);\n };\n\n // Set `bit` of `this`\n BN.prototype.setn = function setn (bit, val) {\n assert(typeof bit === 'number' && bit >= 0);\n\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n this._expand(off + 1);\n\n if (val) {\n this.words[off] = this.words[off] | (1 << wbit);\n } else {\n this.words[off] = this.words[off] & ~(1 << wbit);\n }\n\n return this.strip();\n };\n\n // Add `num` to `this` in-place\n BN.prototype.iadd = function iadd (num) {\n var r;\n\n // negative + positive\n if (this.negative !== 0 && num.negative === 0) {\n this.negative = 0;\n r = this.isub(num);\n this.negative ^= 1;\n return this._normSign();\n\n // positive + negative\n } else if (this.negative === 0 && num.negative !== 0) {\n num.negative = 0;\n r = this.isub(num);\n num.negative = 1;\n return r._normSign();\n }\n\n // a.length > b.length\n var a, b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) + (b.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n\n this.length = a.length;\n if (carry !== 0) {\n this.words[this.length] = carry;\n this.length++;\n // Copy the rest of the words\n } else if (a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n return this;\n };\n\n // Add `num` to `this`\n BN.prototype.add = function add (num) {\n var res;\n if (num.negative !== 0 && this.negative === 0) {\n num.negative = 0;\n res = this.sub(num);\n num.negative ^= 1;\n return res;\n } else if (num.negative === 0 && this.negative !== 0) {\n this.negative = 0;\n res = num.sub(this);\n this.negative = 1;\n return res;\n }\n\n if (this.length > num.length) return this.clone().iadd(num);\n\n return num.clone().iadd(this);\n };\n\n // Subtract `num` from `this` in-place\n BN.prototype.isub = function isub (num) {\n // this - (-num) = this + num\n if (num.negative !== 0) {\n num.negative = 0;\n var r = this.iadd(num);\n num.negative = 1;\n return r._normSign();\n\n // -this - num = -(this + num)\n } else if (this.negative !== 0) {\n this.negative = 0;\n this.iadd(num);\n this.negative = 1;\n return this._normSign();\n }\n\n // At this point both numbers are positive\n var cmp = this.cmp(num);\n\n // Optimization - zeroify\n if (cmp === 0) {\n this.negative = 0;\n this.length = 1;\n this.words[0] = 0;\n return this;\n }\n\n // a > b\n var a, b;\n if (cmp > 0) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) - (b.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n\n // Copy rest of the words\n if (carry === 0 && i < a.length && a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = Math.max(this.length, i);\n\n if (a !== this) {\n this.negative = 1;\n }\n\n return this.strip();\n };\n\n // Subtract `num` from `this`\n BN.prototype.sub = function sub (num) {\n return this.clone().isub(num);\n };\n\n function smallMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n var len = (self.length + num.length) | 0;\n out.length = len;\n len = (len - 1) | 0;\n\n // Peel one iteration (compiler can't do it, because of code complexity)\n var a = self.words[0] | 0;\n var b = num.words[0] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n var carry = (r / 0x4000000) | 0;\n out.words[0] = lo;\n\n for (var k = 1; k < len; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = carry >>> 26;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = (k - j) | 0;\n a = self.words[i] | 0;\n b = num.words[j] | 0;\n r = a * b + rword;\n ncarry += (r / 0x4000000) | 0;\n rword = r & 0x3ffffff;\n }\n out.words[k] = rword | 0;\n carry = ncarry | 0;\n }\n if (carry !== 0) {\n out.words[k] = carry | 0;\n } else {\n out.length--;\n }\n\n return out.strip();\n }\n\n // TODO(indutny): it may be reasonable to omit it for users who don't need\n // to work with 256-bit numbers, otherwise it gives 20% improvement for 256-bit\n // multiplication (like elliptic secp256k1).\n var comb10MulTo = function comb10MulTo (self, num, out) {\n var a = self.words;\n var b = num.words;\n var o = out.words;\n var c = 0;\n var lo;\n var mid;\n var hi;\n var a0 = a[0] | 0;\n var al0 = a0 & 0x1fff;\n var ah0 = a0 >>> 13;\n var a1 = a[1] | 0;\n var al1 = a1 & 0x1fff;\n var ah1 = a1 >>> 13;\n var a2 = a[2] | 0;\n var al2 = a2 & 0x1fff;\n var ah2 = a2 >>> 13;\n var a3 = a[3] | 0;\n var al3 = a3 & 0x1fff;\n var ah3 = a3 >>> 13;\n var a4 = a[4] | 0;\n var al4 = a4 & 0x1fff;\n var ah4 = a4 >>> 13;\n var a5 = a[5] | 0;\n var al5 = a5 & 0x1fff;\n var ah5 = a5 >>> 13;\n var a6 = a[6] | 0;\n var al6 = a6 & 0x1fff;\n var ah6 = a6 >>> 13;\n var a7 = a[7] | 0;\n var al7 = a7 & 0x1fff;\n var ah7 = a7 >>> 13;\n var a8 = a[8] | 0;\n var al8 = a8 & 0x1fff;\n var ah8 = a8 >>> 13;\n var a9 = a[9] | 0;\n var al9 = a9 & 0x1fff;\n var ah9 = a9 >>> 13;\n var b0 = b[0] | 0;\n var bl0 = b0 & 0x1fff;\n var bh0 = b0 >>> 13;\n var b1 = b[1] | 0;\n var bl1 = b1 & 0x1fff;\n var bh1 = b1 >>> 13;\n var b2 = b[2] | 0;\n var bl2 = b2 & 0x1fff;\n var bh2 = b2 >>> 13;\n var b3 = b[3] | 0;\n var bl3 = b3 & 0x1fff;\n var bh3 = b3 >>> 13;\n var b4 = b[4] | 0;\n var bl4 = b4 & 0x1fff;\n var bh4 = b4 >>> 13;\n var b5 = b[5] | 0;\n var bl5 = b5 & 0x1fff;\n var bh5 = b5 >>> 13;\n var b6 = b[6] | 0;\n var bl6 = b6 & 0x1fff;\n var bh6 = b6 >>> 13;\n var b7 = b[7] | 0;\n var bl7 = b7 & 0x1fff;\n var bh7 = b7 >>> 13;\n var b8 = b[8] | 0;\n var bl8 = b8 & 0x1fff;\n var bh8 = b8 >>> 13;\n var b9 = b[9] | 0;\n var bl9 = b9 & 0x1fff;\n var bh9 = b9 >>> 13;\n\n out.negative = self.negative ^ num.negative;\n out.length = 19;\n /* k = 0 */\n lo = Math.imul(al0, bl0);\n mid = Math.imul(al0, bh0);\n mid = (mid + Math.imul(ah0, bl0)) | 0;\n hi = Math.imul(ah0, bh0);\n var w0 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w0 >>> 26)) | 0;\n w0 &= 0x3ffffff;\n /* k = 1 */\n lo = Math.imul(al1, bl0);\n mid = Math.imul(al1, bh0);\n mid = (mid + Math.imul(ah1, bl0)) | 0;\n hi = Math.imul(ah1, bh0);\n lo = (lo + Math.imul(al0, bl1)) | 0;\n mid = (mid + Math.imul(al0, bh1)) | 0;\n mid = (mid + Math.imul(ah0, bl1)) | 0;\n hi = (hi + Math.imul(ah0, bh1)) | 0;\n var w1 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w1 >>> 26)) | 0;\n w1 &= 0x3ffffff;\n /* k = 2 */\n lo = Math.imul(al2, bl0);\n mid = Math.imul(al2, bh0);\n mid = (mid + Math.imul(ah2, bl0)) | 0;\n hi = Math.imul(ah2, bh0);\n lo = (lo + Math.imul(al1, bl1)) | 0;\n mid = (mid + Math.imul(al1, bh1)) | 0;\n mid = (mid + Math.imul(ah1, bl1)) | 0;\n hi = (hi + Math.imul(ah1, bh1)) | 0;\n lo = (lo + Math.imul(al0, bl2)) | 0;\n mid = (mid + Math.imul(al0, bh2)) | 0;\n mid = (mid + Math.imul(ah0, bl2)) | 0;\n hi = (hi + Math.imul(ah0, bh2)) | 0;\n var w2 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w2 >>> 26)) | 0;\n w2 &= 0x3ffffff;\n /* k = 3 */\n lo = Math.imul(al3, bl0);\n mid = Math.imul(al3, bh0);\n mid = (mid + Math.imul(ah3, bl0)) | 0;\n hi = Math.imul(ah3, bh0);\n lo = (lo + Math.imul(al2, bl1)) | 0;\n mid = (mid + Math.imul(al2, bh1)) | 0;\n mid = (mid + Math.imul(ah2, bl1)) | 0;\n hi = (hi + Math.imul(ah2, bh1)) | 0;\n lo = (lo + Math.imul(al1, bl2)) | 0;\n mid = (mid + Math.imul(al1, bh2)) | 0;\n mid = (mid + Math.imul(ah1, bl2)) | 0;\n hi = (hi + Math.imul(ah1, bh2)) | 0;\n lo = (lo + Math.imul(al0, bl3)) | 0;\n mid = (mid + Math.imul(al0, bh3)) | 0;\n mid = (mid + Math.imul(ah0, bl3)) | 0;\n hi = (hi + Math.imul(ah0, bh3)) | 0;\n var w3 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w3 >>> 26)) | 0;\n w3 &= 0x3ffffff;\n /* k = 4 */\n lo = Math.imul(al4, bl0);\n mid = Math.imul(al4, bh0);\n mid = (mid + Math.imul(ah4, bl0)) | 0;\n hi = Math.imul(ah4, bh0);\n lo = (lo + Math.imul(al3, bl1)) | 0;\n mid = (mid + Math.imul(al3, bh1)) | 0;\n mid = (mid + Math.imul(ah3, bl1)) | 0;\n hi = (hi + Math.imul(ah3, bh1)) | 0;\n lo = (lo + Math.imul(al2, bl2)) | 0;\n mid = (mid + Math.imul(al2, bh2)) | 0;\n mid = (mid + Math.imul(ah2, bl2)) | 0;\n hi = (hi + Math.imul(ah2, bh2)) | 0;\n lo = (lo + Math.imul(al1, bl3)) | 0;\n mid = (mid + Math.imul(al1, bh3)) | 0;\n mid = (mid + Math.imul(ah1, bl3)) | 0;\n hi = (hi + Math.imul(ah1, bh3)) | 0;\n lo = (lo + Math.imul(al0, bl4)) | 0;\n mid = (mid + Math.imul(al0, bh4)) | 0;\n mid = (mid + Math.imul(ah0, bl4)) | 0;\n hi = (hi + Math.imul(ah0, bh4)) | 0;\n var w4 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w4 >>> 26)) | 0;\n w4 &= 0x3ffffff;\n /* k = 5 */\n lo = Math.imul(al5, bl0);\n mid = Math.imul(al5, bh0);\n mid = (mid + Math.imul(ah5, bl0)) | 0;\n hi = Math.imul(ah5, bh0);\n lo = (lo + Math.imul(al4, bl1)) | 0;\n mid = (mid + Math.imul(al4, bh1)) | 0;\n mid = (mid + Math.imul(ah4, bl1)) | 0;\n hi = (hi + Math.imul(ah4, bh1)) | 0;\n lo = (lo + Math.imul(al3, bl2)) | 0;\n mid = (mid + Math.imul(al3, bh2)) | 0;\n mid = (mid + Math.imul(ah3, bl2)) | 0;\n hi = (hi + Math.imul(ah3, bh2)) | 0;\n lo = (lo + Math.imul(al2, bl3)) | 0;\n mid = (mid + Math.imul(al2, bh3)) | 0;\n mid = (mid + Math.imul(ah2, bl3)) | 0;\n hi = (hi + Math.imul(ah2, bh3)) | 0;\n lo = (lo + Math.imul(al1, bl4)) | 0;\n mid = (mid + Math.imul(al1, bh4)) | 0;\n mid = (mid + Math.imul(ah1, bl4)) | 0;\n hi = (hi + Math.imul(ah1, bh4)) | 0;\n lo = (lo + Math.imul(al0, bl5)) | 0;\n mid = (mid + Math.imul(al0, bh5)) | 0;\n mid = (mid + Math.imul(ah0, bl5)) | 0;\n hi = (hi + Math.imul(ah0, bh5)) | 0;\n var w5 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w5 >>> 26)) | 0;\n w5 &= 0x3ffffff;\n /* k = 6 */\n lo = Math.imul(al6, bl0);\n mid = Math.imul(al6, bh0);\n mid = (mid + Math.imul(ah6, bl0)) | 0;\n hi = Math.imul(ah6, bh0);\n lo = (lo + Math.imul(al5, bl1)) | 0;\n mid = (mid + Math.imul(al5, bh1)) | 0;\n mid = (mid + Math.imul(ah5, bl1)) | 0;\n hi = (hi + Math.imul(ah5, bh1)) | 0;\n lo = (lo + Math.imul(al4, bl2)) | 0;\n mid = (mid + Math.imul(al4, bh2)) | 0;\n mid = (mid + Math.imul(ah4, bl2)) | 0;\n hi = (hi + Math.imul(ah4, bh2)) | 0;\n lo = (lo + Math.imul(al3, bl3)) | 0;\n mid = (mid + Math.imul(al3, bh3)) | 0;\n mid = (mid + Math.imul(ah3, bl3)) | 0;\n hi = (hi + Math.imul(ah3, bh3)) | 0;\n lo = (lo + Math.imul(al2, bl4)) | 0;\n mid = (mid + Math.imul(al2, bh4)) | 0;\n mid = (mid + Math.imul(ah2, bl4)) | 0;\n hi = (hi + Math.imul(ah2, bh4)) | 0;\n lo = (lo + Math.imul(al1, bl5)) | 0;\n mid = (mid + Math.imul(al1, bh5)) | 0;\n mid = (mid + Math.imul(ah1, bl5)) | 0;\n hi = (hi + Math.imul(ah1, bh5)) | 0;\n lo = (lo + Math.imul(al0, bl6)) | 0;\n mid = (mid + Math.imul(al0, bh6)) | 0;\n mid = (mid + Math.imul(ah0, bl6)) | 0;\n hi = (hi + Math.imul(ah0, bh6)) | 0;\n var w6 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w6 >>> 26)) | 0;\n w6 &= 0x3ffffff;\n /* k = 7 */\n lo = Math.imul(al7, bl0);\n mid = Math.imul(al7, bh0);\n mid = (mid + Math.imul(ah7, bl0)) | 0;\n hi = Math.imul(ah7, bh0);\n lo = (lo + Math.imul(al6, bl1)) | 0;\n mid = (mid + Math.imul(al6, bh1)) | 0;\n mid = (mid + Math.imul(ah6, bl1)) | 0;\n hi = (hi + Math.imul(ah6, bh1)) | 0;\n lo = (lo + Math.imul(al5, bl2)) | 0;\n mid = (mid + Math.imul(al5, bh2)) | 0;\n mid = (mid + Math.imul(ah5, bl2)) | 0;\n hi = (hi + Math.imul(ah5, bh2)) | 0;\n lo = (lo + Math.imul(al4, bl3)) | 0;\n mid = (mid + Math.imul(al4, bh3)) | 0;\n mid = (mid + Math.imul(ah4, bl3)) | 0;\n hi = (hi + Math.imul(ah4, bh3)) | 0;\n lo = (lo + Math.imul(al3, bl4)) | 0;\n mid = (mid + Math.imul(al3, bh4)) | 0;\n mid = (mid + Math.imul(ah3, bl4)) | 0;\n hi = (hi + Math.imul(ah3, bh4)) | 0;\n lo = (lo + Math.imul(al2, bl5)) | 0;\n mid = (mid + Math.imul(al2, bh5)) | 0;\n mid = (mid + Math.imul(ah2, bl5)) | 0;\n hi = (hi + Math.imul(ah2, bh5)) | 0;\n lo = (lo + Math.imul(al1, bl6)) | 0;\n mid = (mid + Math.imul(al1, bh6)) | 0;\n mid = (mid + Math.imul(ah1, bl6)) | 0;\n hi = (hi + Math.imul(ah1, bh6)) | 0;\n lo = (lo + Math.imul(al0, bl7)) | 0;\n mid = (mid + Math.imul(al0, bh7)) | 0;\n mid = (mid + Math.imul(ah0, bl7)) | 0;\n hi = (hi + Math.imul(ah0, bh7)) | 0;\n var w7 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w7 >>> 26)) | 0;\n w7 &= 0x3ffffff;\n /* k = 8 */\n lo = Math.imul(al8, bl0);\n mid = Math.imul(al8, bh0);\n mid = (mid + Math.imul(ah8, bl0)) | 0;\n hi = Math.imul(ah8, bh0);\n lo = (lo + Math.imul(al7, bl1)) | 0;\n mid = (mid + Math.imul(al7, bh1)) | 0;\n mid = (mid + Math.imul(ah7, bl1)) | 0;\n hi = (hi + Math.imul(ah7, bh1)) | 0;\n lo = (lo + Math.imul(al6, bl2)) | 0;\n mid = (mid + Math.imul(al6, bh2)) | 0;\n mid = (mid + Math.imul(ah6, bl2)) | 0;\n hi = (hi + Math.imul(ah6, bh2)) | 0;\n lo = (lo + Math.imul(al5, bl3)) | 0;\n mid = (mid + Math.imul(al5, bh3)) | 0;\n mid = (mid + Math.imul(ah5, bl3)) | 0;\n hi = (hi + Math.imul(ah5, bh3)) | 0;\n lo = (lo + Math.imul(al4, bl4)) | 0;\n mid = (mid + Math.imul(al4, bh4)) | 0;\n mid = (mid + Math.imul(ah4, bl4)) | 0;\n hi = (hi + Math.imul(ah4, bh4)) | 0;\n lo = (lo + Math.imul(al3, bl5)) | 0;\n mid = (mid + Math.imul(al3, bh5)) | 0;\n mid = (mid + Math.imul(ah3, bl5)) | 0;\n hi = (hi + Math.imul(ah3, bh5)) | 0;\n lo = (lo + Math.imul(al2, bl6)) | 0;\n mid = (mid + Math.imul(al2, bh6)) | 0;\n mid = (mid + Math.imul(ah2, bl6)) | 0;\n hi = (hi + Math.imul(ah2, bh6)) | 0;\n lo = (lo + Math.imul(al1, bl7)) | 0;\n mid = (mid + Math.imul(al1, bh7)) | 0;\n mid = (mid + Math.imul(ah1, bl7)) | 0;\n hi = (hi + Math.imul(ah1, bh7)) | 0;\n lo = (lo + Math.imul(al0, bl8)) | 0;\n mid = (mid + Math.imul(al0, bh8)) | 0;\n mid = (mid + Math.imul(ah0, bl8)) | 0;\n hi = (hi + Math.imul(ah0, bh8)) | 0;\n var w8 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w8 >>> 26)) | 0;\n w8 &= 0x3ffffff;\n /* k = 9 */\n lo = Math.imul(al9, bl0);\n mid = Math.imul(al9, bh0);\n mid = (mid + Math.imul(ah9, bl0)) | 0;\n hi = Math.imul(ah9, bh0);\n lo = (lo + Math.imul(al8, bl1)) | 0;\n mid = (mid + Math.imul(al8, bh1)) | 0;\n mid = (mid + Math.imul(ah8, bl1)) | 0;\n hi = (hi + Math.imul(ah8, bh1)) | 0;\n lo = (lo + Math.imul(al7, bl2)) | 0;\n mid = (mid + Math.imul(al7, bh2)) | 0;\n mid = (mid + Math.imul(ah7, bl2)) | 0;\n hi = (hi + Math.imul(ah7, bh2)) | 0;\n lo = (lo + Math.imul(al6, bl3)) | 0;\n mid = (mid + Math.imul(al6, bh3)) | 0;\n mid = (mid + Math.imul(ah6, bl3)) | 0;\n hi = (hi + Math.imul(ah6, bh3)) | 0;\n lo = (lo + Math.imul(al5, bl4)) | 0;\n mid = (mid + Math.imul(al5, bh4)) | 0;\n mid = (mid + Math.imul(ah5, bl4)) | 0;\n hi = (hi + Math.imul(ah5, bh4)) | 0;\n lo = (lo + Math.imul(al4, bl5)) | 0;\n mid = (mid + Math.imul(al4, bh5)) | 0;\n mid = (mid + Math.imul(ah4, bl5)) | 0;\n hi = (hi + Math.imul(ah4, bh5)) | 0;\n lo = (lo + Math.imul(al3, bl6)) | 0;\n mid = (mid + Math.imul(al3, bh6)) | 0;\n mid = (mid + Math.imul(ah3, bl6)) | 0;\n hi = (hi + Math.imul(ah3, bh6)) | 0;\n lo = (lo + Math.imul(al2, bl7)) | 0;\n mid = (mid + Math.imul(al2, bh7)) | 0;\n mid = (mid + Math.imul(ah2, bl7)) | 0;\n hi = (hi + Math.imul(ah2, bh7)) | 0;\n lo = (lo + Math.imul(al1, bl8)) | 0;\n mid = (mid + Math.imul(al1, bh8)) | 0;\n mid = (mid + Math.imul(ah1, bl8)) | 0;\n hi = (hi + Math.imul(ah1, bh8)) | 0;\n lo = (lo + Math.imul(al0, bl9)) | 0;\n mid = (mid + Math.imul(al0, bh9)) | 0;\n mid = (mid + Math.imul(ah0, bl9)) | 0;\n hi = (hi + Math.imul(ah0, bh9)) | 0;\n var w9 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w9 >>> 26)) | 0;\n w9 &= 0x3ffffff;\n /* k = 10 */\n lo = Math.imul(al9, bl1);\n mid = Math.imul(al9, bh1);\n mid = (mid + Math.imul(ah9, bl1)) | 0;\n hi = Math.imul(ah9, bh1);\n lo = (lo + Math.imul(al8, bl2)) | 0;\n mid = (mid + Math.imul(al8, bh2)) | 0;\n mid = (mid + Math.imul(ah8, bl2)) | 0;\n hi = (hi + Math.imul(ah8, bh2)) | 0;\n lo = (lo + Math.imul(al7, bl3)) | 0;\n mid = (mid + Math.imul(al7, bh3)) | 0;\n mid = (mid + Math.imul(ah7, bl3)) | 0;\n hi = (hi + Math.imul(ah7, bh3)) | 0;\n lo = (lo + Math.imul(al6, bl4)) | 0;\n mid = (mid + Math.imul(al6, bh4)) | 0;\n mid = (mid + Math.imul(ah6, bl4)) | 0;\n hi = (hi + Math.imul(ah6, bh4)) | 0;\n lo = (lo + Math.imul(al5, bl5)) | 0;\n mid = (mid + Math.imul(al5, bh5)) | 0;\n mid = (mid + Math.imul(ah5, bl5)) | 0;\n hi = (hi + Math.imul(ah5, bh5)) | 0;\n lo = (lo + Math.imul(al4, bl6)) | 0;\n mid = (mid + Math.imul(al4, bh6)) | 0;\n mid = (mid + Math.imul(ah4, bl6)) | 0;\n hi = (hi + Math.imul(ah4, bh6)) | 0;\n lo = (lo + Math.imul(al3, bl7)) | 0;\n mid = (mid + Math.imul(al3, bh7)) | 0;\n mid = (mid + Math.imul(ah3, bl7)) | 0;\n hi = (hi + Math.imul(ah3, bh7)) | 0;\n lo = (lo + Math.imul(al2, bl8)) | 0;\n mid = (mid + Math.imul(al2, bh8)) | 0;\n mid = (mid + Math.imul(ah2, bl8)) | 0;\n hi = (hi + Math.imul(ah2, bh8)) | 0;\n lo = (lo + Math.imul(al1, bl9)) | 0;\n mid = (mid + Math.imul(al1, bh9)) | 0;\n mid = (mid + Math.imul(ah1, bl9)) | 0;\n hi = (hi + Math.imul(ah1, bh9)) | 0;\n var w10 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w10 >>> 26)) | 0;\n w10 &= 0x3ffffff;\n /* k = 11 */\n lo = Math.imul(al9, bl2);\n mid = Math.imul(al9, bh2);\n mid = (mid + Math.imul(ah9, bl2)) | 0;\n hi = Math.imul(ah9, bh2);\n lo = (lo + Math.imul(al8, bl3)) | 0;\n mid = (mid + Math.imul(al8, bh3)) | 0;\n mid = (mid + Math.imul(ah8, bl3)) | 0;\n hi = (hi + Math.imul(ah8, bh3)) | 0;\n lo = (lo + Math.imul(al7, bl4)) | 0;\n mid = (mid + Math.imul(al7, bh4)) | 0;\n mid = (mid + Math.imul(ah7, bl4)) | 0;\n hi = (hi + Math.imul(ah7, bh4)) | 0;\n lo = (lo + Math.imul(al6, bl5)) | 0;\n mid = (mid + Math.imul(al6, bh5)) | 0;\n mid = (mid + Math.imul(ah6, bl5)) | 0;\n hi = (hi + Math.imul(ah6, bh5)) | 0;\n lo = (lo + Math.imul(al5, bl6)) | 0;\n mid = (mid + Math.imul(al5, bh6)) | 0;\n mid = (mid + Math.imul(ah5, bl6)) | 0;\n hi = (hi + Math.imul(ah5, bh6)) | 0;\n lo = (lo + Math.imul(al4, bl7)) | 0;\n mid = (mid + Math.imul(al4, bh7)) | 0;\n mid = (mid + Math.imul(ah4, bl7)) | 0;\n hi = (hi + Math.imul(ah4, bh7)) | 0;\n lo = (lo + Math.imul(al3, bl8)) | 0;\n mid = (mid + Math.imul(al3, bh8)) | 0;\n mid = (mid + Math.imul(ah3, bl8)) | 0;\n hi = (hi + Math.imul(ah3, bh8)) | 0;\n lo = (lo + Math.imul(al2, bl9)) | 0;\n mid = (mid + Math.imul(al2, bh9)) | 0;\n mid = (mid + Math.imul(ah2, bl9)) | 0;\n hi = (hi + Math.imul(ah2, bh9)) | 0;\n var w11 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w11 >>> 26)) | 0;\n w11 &= 0x3ffffff;\n /* k = 12 */\n lo = Math.imul(al9, bl3);\n mid = Math.imul(al9, bh3);\n mid = (mid + Math.imul(ah9, bl3)) | 0;\n hi = Math.imul(ah9, bh3);\n lo = (lo + Math.imul(al8, bl4)) | 0;\n mid = (mid + Math.imul(al8, bh4)) | 0;\n mid = (mid + Math.imul(ah8, bl4)) | 0;\n hi = (hi + Math.imul(ah8, bh4)) | 0;\n lo = (lo + Math.imul(al7, bl5)) | 0;\n mid = (mid + Math.imul(al7, bh5)) | 0;\n mid = (mid + Math.imul(ah7, bl5)) | 0;\n hi = (hi + Math.imul(ah7, bh5)) | 0;\n lo = (lo + Math.imul(al6, bl6)) | 0;\n mid = (mid + Math.imul(al6, bh6)) | 0;\n mid = (mid + Math.imul(ah6, bl6)) | 0;\n hi = (hi + Math.imul(ah6, bh6)) | 0;\n lo = (lo + Math.imul(al5, bl7)) | 0;\n mid = (mid + Math.imul(al5, bh7)) | 0;\n mid = (mid + Math.imul(ah5, bl7)) | 0;\n hi = (hi + Math.imul(ah5, bh7)) | 0;\n lo = (lo + Math.imul(al4, bl8)) | 0;\n mid = (mid + Math.imul(al4, bh8)) | 0;\n mid = (mid + Math.imul(ah4, bl8)) | 0;\n hi = (hi + Math.imul(ah4, bh8)) | 0;\n lo = (lo + Math.imul(al3, bl9)) | 0;\n mid = (mid + Math.imul(al3, bh9)) | 0;\n mid = (mid + Math.imul(ah3, bl9)) | 0;\n hi = (hi + Math.imul(ah3, bh9)) | 0;\n var w12 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w12 >>> 26)) | 0;\n w12 &= 0x3ffffff;\n /* k = 13 */\n lo = Math.imul(al9, bl4);\n mid = Math.imul(al9, bh4);\n mid = (mid + Math.imul(ah9, bl4)) | 0;\n hi = Math.imul(ah9, bh4);\n lo = (lo + Math.imul(al8, bl5)) | 0;\n mid = (mid + Math.imul(al8, bh5)) | 0;\n mid = (mid + Math.imul(ah8, bl5)) | 0;\n hi = (hi + Math.imul(ah8, bh5)) | 0;\n lo = (lo + Math.imul(al7, bl6)) | 0;\n mid = (mid + Math.imul(al7, bh6)) | 0;\n mid = (mid + Math.imul(ah7, bl6)) | 0;\n hi = (hi + Math.imul(ah7, bh6)) | 0;\n lo = (lo + Math.imul(al6, bl7)) | 0;\n mid = (mid + Math.imul(al6, bh7)) | 0;\n mid = (mid + Math.imul(ah6, bl7)) | 0;\n hi = (hi + Math.imul(ah6, bh7)) | 0;\n lo = (lo + Math.imul(al5, bl8)) | 0;\n mid = (mid + Math.imul(al5, bh8)) | 0;\n mid = (mid + Math.imul(ah5, bl8)) | 0;\n hi = (hi + Math.imul(ah5, bh8)) | 0;\n lo = (lo + Math.imul(al4, bl9)) | 0;\n mid = (mid + Math.imul(al4, bh9)) | 0;\n mid = (mid + Math.imul(ah4, bl9)) | 0;\n hi = (hi + Math.imul(ah4, bh9)) | 0;\n var w13 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w13 >>> 26)) | 0;\n w13 &= 0x3ffffff;\n /* k = 14 */\n lo = Math.imul(al9, bl5);\n mid = Math.imul(al9, bh5);\n mid = (mid + Math.imul(ah9, bl5)) | 0;\n hi = Math.imul(ah9, bh5);\n lo = (lo + Math.imul(al8, bl6)) | 0;\n mid = (mid + Math.imul(al8, bh6)) | 0;\n mid = (mid + Math.imul(ah8, bl6)) | 0;\n hi = (hi + Math.imul(ah8, bh6)) | 0;\n lo = (lo + Math.imul(al7, bl7)) | 0;\n mid = (mid + Math.imul(al7, bh7)) | 0;\n mid = (mid + Math.imul(ah7, bl7)) | 0;\n hi = (hi + Math.imul(ah7, bh7)) | 0;\n lo = (lo + Math.imul(al6, bl8)) | 0;\n mid = (mid + Math.imul(al6, bh8)) | 0;\n mid = (mid + Math.imul(ah6, bl8)) | 0;\n hi = (hi + Math.imul(ah6, bh8)) | 0;\n lo = (lo + Math.imul(al5, bl9)) | 0;\n mid = (mid + Math.imul(al5, bh9)) | 0;\n mid = (mid + Math.imul(ah5, bl9)) | 0;\n hi = (hi + Math.imul(ah5, bh9)) | 0;\n var w14 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w14 >>> 26)) | 0;\n w14 &= 0x3ffffff;\n /* k = 15 */\n lo = Math.imul(al9, bl6);\n mid = Math.imul(al9, bh6);\n mid = (mid + Math.imul(ah9, bl6)) | 0;\n hi = Math.imul(ah9, bh6);\n lo = (lo + Math.imul(al8, bl7)) | 0;\n mid = (mid + Math.imul(al8, bh7)) | 0;\n mid = (mid + Math.imul(ah8, bl7)) | 0;\n hi = (hi + Math.imul(ah8, bh7)) | 0;\n lo = (lo + Math.imul(al7, bl8)) | 0;\n mid = (mid + Math.imul(al7, bh8)) | 0;\n mid = (mid + Math.imul(ah7, bl8)) | 0;\n hi = (hi + Math.imul(ah7, bh8)) | 0;\n lo = (lo + Math.imul(al6, bl9)) | 0;\n mid = (mid + Math.imul(al6, bh9)) | 0;\n mid = (mid + Math.imul(ah6, bl9)) | 0;\n hi = (hi + Math.imul(ah6, bh9)) | 0;\n var w15 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w15 >>> 26)) | 0;\n w15 &= 0x3ffffff;\n /* k = 16 */\n lo = Math.imul(al9, bl7);\n mid = Math.imul(al9, bh7);\n mid = (mid + Math.imul(ah9, bl7)) | 0;\n hi = Math.imul(ah9, bh7);\n lo = (lo + Math.imul(al8, bl8)) | 0;\n mid = (mid + Math.imul(al8, bh8)) | 0;\n mid = (mid + Math.imul(ah8, bl8)) | 0;\n hi = (hi + Math.imul(ah8, bh8)) | 0;\n lo = (lo + Math.imul(al7, bl9)) | 0;\n mid = (mid + Math.imul(al7, bh9)) | 0;\n mid = (mid + Math.imul(ah7, bl9)) | 0;\n hi = (hi + Math.imul(ah7, bh9)) | 0;\n var w16 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w16 >>> 26)) | 0;\n w16 &= 0x3ffffff;\n /* k = 17 */\n lo = Math.imul(al9, bl8);\n mid = Math.imul(al9, bh8);\n mid = (mid + Math.imul(ah9, bl8)) | 0;\n hi = Math.imul(ah9, bh8);\n lo = (lo + Math.imul(al8, bl9)) | 0;\n mid = (mid + Math.imul(al8, bh9)) | 0;\n mid = (mid + Math.imul(ah8, bl9)) | 0;\n hi = (hi + Math.imul(ah8, bh9)) | 0;\n var w17 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w17 >>> 26)) | 0;\n w17 &= 0x3ffffff;\n /* k = 18 */\n lo = Math.imul(al9, bl9);\n mid = Math.imul(al9, bh9);\n mid = (mid + Math.imul(ah9, bl9)) | 0;\n hi = Math.imul(ah9, bh9);\n var w18 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w18 >>> 26)) | 0;\n w18 &= 0x3ffffff;\n o[0] = w0;\n o[1] = w1;\n o[2] = w2;\n o[3] = w3;\n o[4] = w4;\n o[5] = w5;\n o[6] = w6;\n o[7] = w7;\n o[8] = w8;\n o[9] = w9;\n o[10] = w10;\n o[11] = w11;\n o[12] = w12;\n o[13] = w13;\n o[14] = w14;\n o[15] = w15;\n o[16] = w16;\n o[17] = w17;\n o[18] = w18;\n if (c !== 0) {\n o[19] = c;\n out.length++;\n }\n return out;\n };\n\n // Polyfill comb\n if (!Math.imul) {\n comb10MulTo = smallMulTo;\n }\n\n function bigMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n out.length = self.length + num.length;\n\n var carry = 0;\n var hncarry = 0;\n for (var k = 0; k < out.length - 1; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = hncarry;\n hncarry = 0;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = k - j;\n var a = self.words[i] | 0;\n var b = num.words[j] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n ncarry = (ncarry + ((r / 0x4000000) | 0)) | 0;\n lo = (lo + rword) | 0;\n rword = lo & 0x3ffffff;\n ncarry = (ncarry + (lo >>> 26)) | 0;\n\n hncarry += ncarry >>> 26;\n ncarry &= 0x3ffffff;\n }\n out.words[k] = rword;\n carry = ncarry;\n ncarry = hncarry;\n }\n if (carry !== 0) {\n out.words[k] = carry;\n } else {\n out.length--;\n }\n\n return out.strip();\n }\n\n function jumboMulTo (self, num, out) {\n var fftm = new FFTM();\n return fftm.mulp(self, num, out);\n }\n\n BN.prototype.mulTo = function mulTo (num, out) {\n var res;\n var len = this.length + num.length;\n if (this.length === 10 && num.length === 10) {\n res = comb10MulTo(this, num, out);\n } else if (len < 63) {\n res = smallMulTo(this, num, out);\n } else if (len < 1024) {\n res = bigMulTo(this, num, out);\n } else {\n res = jumboMulTo(this, num, out);\n }\n\n return res;\n };\n\n // Cooley-Tukey algorithm for FFT\n // slightly revisited to rely on looping instead of recursion\n\n function FFTM (x, y) {\n this.x = x;\n this.y = y;\n }\n\n FFTM.prototype.makeRBT = function makeRBT (N) {\n var t = new Array(N);\n var l = BN.prototype._countBits(N) - 1;\n for (var i = 0; i < N; i++) {\n t[i] = this.revBin(i, l, N);\n }\n\n return t;\n };\n\n // Returns binary-reversed representation of `x`\n FFTM.prototype.revBin = function revBin (x, l, N) {\n if (x === 0 || x === N - 1) return x;\n\n var rb = 0;\n for (var i = 0; i < l; i++) {\n rb |= (x & 1) << (l - i - 1);\n x >>= 1;\n }\n\n return rb;\n };\n\n // Performs \"tweedling\" phase, therefore 'emulating'\n // behaviour of the recursive algorithm\n FFTM.prototype.permute = function permute (rbt, rws, iws, rtws, itws, N) {\n for (var i = 0; i < N; i++) {\n rtws[i] = rws[rbt[i]];\n itws[i] = iws[rbt[i]];\n }\n };\n\n FFTM.prototype.transform = function transform (rws, iws, rtws, itws, N, rbt) {\n this.permute(rbt, rws, iws, rtws, itws, N);\n\n for (var s = 1; s < N; s <<= 1) {\n var l = s << 1;\n\n var rtwdf = Math.cos(2 * Math.PI / l);\n var itwdf = Math.sin(2 * Math.PI / l);\n\n for (var p = 0; p < N; p += l) {\n var rtwdf_ = rtwdf;\n var itwdf_ = itwdf;\n\n for (var j = 0; j < s; j++) {\n var re = rtws[p + j];\n var ie = itws[p + j];\n\n var ro = rtws[p + j + s];\n var io = itws[p + j + s];\n\n var rx = rtwdf_ * ro - itwdf_ * io;\n\n io = rtwdf_ * io + itwdf_ * ro;\n ro = rx;\n\n rtws[p + j] = re + ro;\n itws[p + j] = ie + io;\n\n rtws[p + j + s] = re - ro;\n itws[p + j + s] = ie - io;\n\n /* jshint maxdepth : false */\n if (j !== l) {\n rx = rtwdf * rtwdf_ - itwdf * itwdf_;\n\n itwdf_ = rtwdf * itwdf_ + itwdf * rtwdf_;\n rtwdf_ = rx;\n }\n }\n }\n }\n };\n\n FFTM.prototype.guessLen13b = function guessLen13b (n, m) {\n var N = Math.max(m, n) | 1;\n var odd = N & 1;\n var i = 0;\n for (N = N / 2 | 0; N; N = N >>> 1) {\n i++;\n }\n\n return 1 << i + 1 + odd;\n };\n\n FFTM.prototype.conjugate = function conjugate (rws, iws, N) {\n if (N <= 1) return;\n\n for (var i = 0; i < N / 2; i++) {\n var t = rws[i];\n\n rws[i] = rws[N - i - 1];\n rws[N - i - 1] = t;\n\n t = iws[i];\n\n iws[i] = -iws[N - i - 1];\n iws[N - i - 1] = -t;\n }\n };\n\n FFTM.prototype.normalize13b = function normalize13b (ws, N) {\n var carry = 0;\n for (var i = 0; i < N / 2; i++) {\n var w = Math.round(ws[2 * i + 1] / N) * 0x2000 +\n Math.round(ws[2 * i] / N) +\n carry;\n\n ws[i] = w & 0x3ffffff;\n\n if (w < 0x4000000) {\n carry = 0;\n } else {\n carry = w / 0x4000000 | 0;\n }\n }\n\n return ws;\n };\n\n FFTM.prototype.convert13b = function convert13b (ws, len, rws, N) {\n var carry = 0;\n for (var i = 0; i < len; i++) {\n carry = carry + (ws[i] | 0);\n\n rws[2 * i] = carry & 0x1fff; carry = carry >>> 13;\n rws[2 * i + 1] = carry & 0x1fff; carry = carry >>> 13;\n }\n\n // Pad with zeroes\n for (i = 2 * len; i < N; ++i) {\n rws[i] = 0;\n }\n\n assert(carry === 0);\n assert((carry & ~0x1fff) === 0);\n };\n\n FFTM.prototype.stub = function stub (N) {\n var ph = new Array(N);\n for (var i = 0; i < N; i++) {\n ph[i] = 0;\n }\n\n return ph;\n };\n\n FFTM.prototype.mulp = function mulp (x, y, out) {\n var N = 2 * this.guessLen13b(x.length, y.length);\n\n var rbt = this.makeRBT(N);\n\n var _ = this.stub(N);\n\n var rws = new Array(N);\n var rwst = new Array(N);\n var iwst = new Array(N);\n\n var nrws = new Array(N);\n var nrwst = new Array(N);\n var niwst = new Array(N);\n\n var rmws = out.words;\n rmws.length = N;\n\n this.convert13b(x.words, x.length, rws, N);\n this.convert13b(y.words, y.length, nrws, N);\n\n this.transform(rws, _, rwst, iwst, N, rbt);\n this.transform(nrws, _, nrwst, niwst, N, rbt);\n\n for (var i = 0; i < N; i++) {\n var rx = rwst[i] * nrwst[i] - iwst[i] * niwst[i];\n iwst[i] = rwst[i] * niwst[i] + iwst[i] * nrwst[i];\n rwst[i] = rx;\n }\n\n this.conjugate(rwst, iwst, N);\n this.transform(rwst, iwst, rmws, _, N, rbt);\n this.conjugate(rmws, _, N);\n this.normalize13b(rmws, N);\n\n out.negative = x.negative ^ y.negative;\n out.length = x.length + y.length;\n return out.strip();\n };\n\n // Multiply `this` by `num`\n BN.prototype.mul = function mul (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return this.mulTo(num, out);\n };\n\n // Multiply employing FFT\n BN.prototype.mulf = function mulf (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return jumboMulTo(this, num, out);\n };\n\n // In-place Multiplication\n BN.prototype.imul = function imul (num) {\n return this.clone().mulTo(num, this);\n };\n\n BN.prototype.imuln = function imuln (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n\n // Carry\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = (this.words[i] | 0) * num;\n var lo = (w & 0x3ffffff) + (carry & 0x3ffffff);\n carry >>= 26;\n carry += (w / 0x4000000) | 0;\n // NOTE: lo is 27bit maximum\n carry += lo >>> 26;\n this.words[i] = lo & 0x3ffffff;\n }\n\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n\n return this;\n };\n\n BN.prototype.muln = function muln (num) {\n return this.clone().imuln(num);\n };\n\n // `this` * `this`\n BN.prototype.sqr = function sqr () {\n return this.mul(this);\n };\n\n // `this` * `this` in-place\n BN.prototype.isqr = function isqr () {\n return this.imul(this.clone());\n };\n\n // Math.pow(`this`, `num`)\n BN.prototype.pow = function pow (num) {\n var w = toBitArray(num);\n if (w.length === 0) return new BN(1);\n\n // Skip leading zeroes\n var res = this;\n for (var i = 0; i < w.length; i++, res = res.sqr()) {\n if (w[i] !== 0) break;\n }\n\n if (++i < w.length) {\n for (var q = res.sqr(); i < w.length; i++, q = q.sqr()) {\n if (w[i] === 0) continue;\n\n res = res.mul(q);\n }\n }\n\n return res;\n };\n\n // Shift-left in-place\n BN.prototype.iushln = function iushln (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n var carryMask = (0x3ffffff >>> (26 - r)) << (26 - r);\n var i;\n\n if (r !== 0) {\n var carry = 0;\n\n for (i = 0; i < this.length; i++) {\n var newCarry = this.words[i] & carryMask;\n var c = ((this.words[i] | 0) - newCarry) << r;\n this.words[i] = c | carry;\n carry = newCarry >>> (26 - r);\n }\n\n if (carry) {\n this.words[i] = carry;\n this.length++;\n }\n }\n\n if (s !== 0) {\n for (i = this.length - 1; i >= 0; i--) {\n this.words[i + s] = this.words[i];\n }\n\n for (i = 0; i < s; i++) {\n this.words[i] = 0;\n }\n\n this.length += s;\n }\n\n return this.strip();\n };\n\n BN.prototype.ishln = function ishln (bits) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushln(bits);\n };\n\n // Shift-right in-place\n // NOTE: `hint` is a lowest bit before trailing zeroes\n // NOTE: if `extended` is present - it will be filled with destroyed bits\n BN.prototype.iushrn = function iushrn (bits, hint, extended) {\n assert(typeof bits === 'number' && bits >= 0);\n var h;\n if (hint) {\n h = (hint - (hint % 26)) / 26;\n } else {\n h = 0;\n }\n\n var r = bits % 26;\n var s = Math.min((bits - r) / 26, this.length);\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n var maskedWords = extended;\n\n h -= s;\n h = Math.max(0, h);\n\n // Extended mode, copy masked part\n if (maskedWords) {\n for (var i = 0; i < s; i++) {\n maskedWords.words[i] = this.words[i];\n }\n maskedWords.length = s;\n }\n\n if (s === 0) {\n // No-op, we should not move anything at all\n } else if (this.length > s) {\n this.length -= s;\n for (i = 0; i < this.length; i++) {\n this.words[i] = this.words[i + s];\n }\n } else {\n this.words[0] = 0;\n this.length = 1;\n }\n\n var carry = 0;\n for (i = this.length - 1; i >= 0 && (carry !== 0 || i >= h); i--) {\n var word = this.words[i] | 0;\n this.words[i] = (carry << (26 - r)) | (word >>> r);\n carry = word & mask;\n }\n\n // Push carried bits as a mask\n if (maskedWords && carry !== 0) {\n maskedWords.words[maskedWords.length++] = carry;\n }\n\n if (this.length === 0) {\n this.words[0] = 0;\n this.length = 1;\n }\n\n return this.strip();\n };\n\n BN.prototype.ishrn = function ishrn (bits, hint, extended) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushrn(bits, hint, extended);\n };\n\n // Shift-left\n BN.prototype.shln = function shln (bits) {\n return this.clone().ishln(bits);\n };\n\n BN.prototype.ushln = function ushln (bits) {\n return this.clone().iushln(bits);\n };\n\n // Shift-right\n BN.prototype.shrn = function shrn (bits) {\n return this.clone().ishrn(bits);\n };\n\n BN.prototype.ushrn = function ushrn (bits) {\n return this.clone().iushrn(bits);\n };\n\n // Test if n bit is set\n BN.prototype.testn = function testn (bit) {\n assert(typeof bit === 'number' && bit >= 0);\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) return false;\n\n // Check bit and return\n var w = this.words[s];\n\n return !!(w & q);\n };\n\n // Return only lowers bits of number (in-place)\n BN.prototype.imaskn = function imaskn (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n\n assert(this.negative === 0, 'imaskn works only with positive numbers');\n\n if (this.length <= s) {\n return this;\n }\n\n if (r !== 0) {\n s++;\n }\n this.length = Math.min(s, this.length);\n\n if (r !== 0) {\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n this.words[this.length - 1] &= mask;\n }\n\n return this.strip();\n };\n\n // Return only lowers bits of number\n BN.prototype.maskn = function maskn (bits) {\n return this.clone().imaskn(bits);\n };\n\n // Add plain number `num` to `this`\n BN.prototype.iaddn = function iaddn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.isubn(-num);\n\n // Possible sign change\n if (this.negative !== 0) {\n if (this.length === 1 && (this.words[0] | 0) < num) {\n this.words[0] = num - (this.words[0] | 0);\n this.negative = 0;\n return this;\n }\n\n this.negative = 0;\n this.isubn(num);\n this.negative = 1;\n return this;\n }\n\n // Add without checks\n return this._iaddn(num);\n };\n\n BN.prototype._iaddn = function _iaddn (num) {\n this.words[0] += num;\n\n // Carry\n for (var i = 0; i < this.length && this.words[i] >= 0x4000000; i++) {\n this.words[i] -= 0x4000000;\n if (i === this.length - 1) {\n this.words[i + 1] = 1;\n } else {\n this.words[i + 1]++;\n }\n }\n this.length = Math.max(this.length, i + 1);\n\n return this;\n };\n\n // Subtract plain number `num` from `this`\n BN.prototype.isubn = function isubn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.iaddn(-num);\n\n if (this.negative !== 0) {\n this.negative = 0;\n this.iaddn(num);\n this.negative = 1;\n return this;\n }\n\n this.words[0] -= num;\n\n if (this.length === 1 && this.words[0] < 0) {\n this.words[0] = -this.words[0];\n this.negative = 1;\n } else {\n // Carry\n for (var i = 0; i < this.length && this.words[i] < 0; i++) {\n this.words[i] += 0x4000000;\n this.words[i + 1] -= 1;\n }\n }\n\n return this.strip();\n };\n\n BN.prototype.addn = function addn (num) {\n return this.clone().iaddn(num);\n };\n\n BN.prototype.subn = function subn (num) {\n return this.clone().isubn(num);\n };\n\n BN.prototype.iabs = function iabs () {\n this.negative = 0;\n\n return this;\n };\n\n BN.prototype.abs = function abs () {\n return this.clone().iabs();\n };\n\n BN.prototype._ishlnsubmul = function _ishlnsubmul (num, mul, shift) {\n var len = num.length + shift;\n var i;\n\n this._expand(len);\n\n var w;\n var carry = 0;\n for (i = 0; i < num.length; i++) {\n w = (this.words[i + shift] | 0) + carry;\n var right = (num.words[i] | 0) * mul;\n w -= right & 0x3ffffff;\n carry = (w >> 26) - ((right / 0x4000000) | 0);\n this.words[i + shift] = w & 0x3ffffff;\n }\n for (; i < this.length - shift; i++) {\n w = (this.words[i + shift] | 0) + carry;\n carry = w >> 26;\n this.words[i + shift] = w & 0x3ffffff;\n }\n\n if (carry === 0) return this.strip();\n\n // Subtraction overflow\n assert(carry === -1);\n carry = 0;\n for (i = 0; i < this.length; i++) {\n w = -(this.words[i] | 0) + carry;\n carry = w >> 26;\n this.words[i] = w & 0x3ffffff;\n }\n this.negative = 1;\n\n return this.strip();\n };\n\n BN.prototype._wordDiv = function _wordDiv (num, mode) {\n var shift = this.length - num.length;\n\n var a = this.clone();\n var b = num;\n\n // Normalize\n var bhi = b.words[b.length - 1] | 0;\n var bhiBits = this._countBits(bhi);\n shift = 26 - bhiBits;\n if (shift !== 0) {\n b = b.ushln(shift);\n a.iushln(shift);\n bhi = b.words[b.length - 1] | 0;\n }\n\n // Initialize quotient\n var m = a.length - b.length;\n var q;\n\n if (mode !== 'mod') {\n q = new BN(null);\n q.length = m + 1;\n q.words = new Array(q.length);\n for (var i = 0; i < q.length; i++) {\n q.words[i] = 0;\n }\n }\n\n var diff = a.clone()._ishlnsubmul(b, 1, m);\n if (diff.negative === 0) {\n a = diff;\n if (q) {\n q.words[m] = 1;\n }\n }\n\n for (var j = m - 1; j >= 0; j--) {\n var qj = (a.words[b.length + j] | 0) * 0x4000000 +\n (a.words[b.length + j - 1] | 0);\n\n // NOTE: (qj / bhi) is (0x3ffffff * 0x4000000 + 0x3ffffff) / 0x2000000 max\n // (0x7ffffff)\n qj = Math.min((qj / bhi) | 0, 0x3ffffff);\n\n a._ishlnsubmul(b, qj, j);\n while (a.negative !== 0) {\n qj--;\n a.negative = 0;\n a._ishlnsubmul(b, 1, j);\n if (!a.isZero()) {\n a.negative ^= 1;\n }\n }\n if (q) {\n q.words[j] = qj;\n }\n }\n if (q) {\n q.strip();\n }\n a.strip();\n\n // Denormalize\n if (mode !== 'div' && shift !== 0) {\n a.iushrn(shift);\n }\n\n return {\n div: q || null,\n mod: a\n };\n };\n\n // NOTE: 1) `mode` can be set to `mod` to request mod only,\n // to `div` to request div only, or be absent to\n // request both div & mod\n // 2) `positive` is true if unsigned mod is requested\n BN.prototype.divmod = function divmod (num, mode, positive) {\n assert(!num.isZero());\n\n if (this.isZero()) {\n return {\n div: new BN(0),\n mod: new BN(0)\n };\n }\n\n var div, mod, res;\n if (this.negative !== 0 && num.negative === 0) {\n res = this.neg().divmod(num, mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.iadd(num);\n }\n }\n\n return {\n div: div,\n mod: mod\n };\n }\n\n if (this.negative === 0 && num.negative !== 0) {\n res = this.divmod(num.neg(), mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n return {\n div: div,\n mod: res.mod\n };\n }\n\n if ((this.negative & num.negative) !== 0) {\n res = this.neg().divmod(num.neg(), mode);\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.isub(num);\n }\n }\n\n return {\n div: res.div,\n mod: mod\n };\n }\n\n // Both numbers are positive at this point\n\n // Strip both numbers to approximate shift value\n if (num.length > this.length || this.cmp(num) < 0) {\n return {\n div: new BN(0),\n mod: this\n };\n }\n\n // Very short reduction\n if (num.length === 1) {\n if (mode === 'div') {\n return {\n div: this.divn(num.words[0]),\n mod: null\n };\n }\n\n if (mode === 'mod') {\n return {\n div: null,\n mod: new BN(this.modn(num.words[0]))\n };\n }\n\n return {\n div: this.divn(num.words[0]),\n mod: new BN(this.modn(num.words[0]))\n };\n }\n\n return this._wordDiv(num, mode);\n };\n\n // Find `this` / `num`\n BN.prototype.div = function div (num) {\n return this.divmod(num, 'div', false).div;\n };\n\n // Find `this` % `num`\n BN.prototype.mod = function mod (num) {\n return this.divmod(num, 'mod', false).mod;\n };\n\n BN.prototype.umod = function umod (num) {\n return this.divmod(num, 'mod', true).mod;\n };\n\n // Find Round(`this` / `num`)\n BN.prototype.divRound = function divRound (num) {\n var dm = this.divmod(num);\n\n // Fast case - exact division\n if (dm.mod.isZero()) return dm.div;\n\n var mod = dm.div.negative !== 0 ? dm.mod.isub(num) : dm.mod;\n\n var half = num.ushrn(1);\n var r2 = num.andln(1);\n var cmp = mod.cmp(half);\n\n // Round down\n if (cmp < 0 || r2 === 1 && cmp === 0) return dm.div;\n\n // Round up\n return dm.div.negative !== 0 ? dm.div.isubn(1) : dm.div.iaddn(1);\n };\n\n BN.prototype.modn = function modn (num) {\n assert(num <= 0x3ffffff);\n var p = (1 << 26) % num;\n\n var acc = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n acc = (p * acc + (this.words[i] | 0)) % num;\n }\n\n return acc;\n };\n\n // In-place division by number\n BN.prototype.idivn = function idivn (num) {\n assert(num <= 0x3ffffff);\n\n var carry = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var w = (this.words[i] | 0) + carry * 0x4000000;\n this.words[i] = (w / num) | 0;\n carry = w % num;\n }\n\n return this.strip();\n };\n\n BN.prototype.divn = function divn (num) {\n return this.clone().idivn(num);\n };\n\n BN.prototype.egcd = function egcd (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var x = this;\n var y = p.clone();\n\n if (x.negative !== 0) {\n x = x.umod(p);\n } else {\n x = x.clone();\n }\n\n // A * x + B * y = x\n var A = new BN(1);\n var B = new BN(0);\n\n // C * x + D * y = y\n var C = new BN(0);\n var D = new BN(1);\n\n var g = 0;\n\n while (x.isEven() && y.isEven()) {\n x.iushrn(1);\n y.iushrn(1);\n ++g;\n }\n\n var yp = y.clone();\n var xp = x.clone();\n\n while (!x.isZero()) {\n for (var i = 0, im = 1; (x.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n x.iushrn(i);\n while (i-- > 0) {\n if (A.isOdd() || B.isOdd()) {\n A.iadd(yp);\n B.isub(xp);\n }\n\n A.iushrn(1);\n B.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (y.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n y.iushrn(j);\n while (j-- > 0) {\n if (C.isOdd() || D.isOdd()) {\n C.iadd(yp);\n D.isub(xp);\n }\n\n C.iushrn(1);\n D.iushrn(1);\n }\n }\n\n if (x.cmp(y) >= 0) {\n x.isub(y);\n A.isub(C);\n B.isub(D);\n } else {\n y.isub(x);\n C.isub(A);\n D.isub(B);\n }\n }\n\n return {\n a: C,\n b: D,\n gcd: y.iushln(g)\n };\n };\n\n // This is reduced incarnation of the binary EEA\n // above, designated to invert members of the\n // _prime_ fields F(p) at a maximal speed\n BN.prototype._invmp = function _invmp (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var a = this;\n var b = p.clone();\n\n if (a.negative !== 0) {\n a = a.umod(p);\n } else {\n a = a.clone();\n }\n\n var x1 = new BN(1);\n var x2 = new BN(0);\n\n var delta = b.clone();\n\n while (a.cmpn(1) > 0 && b.cmpn(1) > 0) {\n for (var i = 0, im = 1; (a.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n a.iushrn(i);\n while (i-- > 0) {\n if (x1.isOdd()) {\n x1.iadd(delta);\n }\n\n x1.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (b.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n b.iushrn(j);\n while (j-- > 0) {\n if (x2.isOdd()) {\n x2.iadd(delta);\n }\n\n x2.iushrn(1);\n }\n }\n\n if (a.cmp(b) >= 0) {\n a.isub(b);\n x1.isub(x2);\n } else {\n b.isub(a);\n x2.isub(x1);\n }\n }\n\n var res;\n if (a.cmpn(1) === 0) {\n res = x1;\n } else {\n res = x2;\n }\n\n if (res.cmpn(0) < 0) {\n res.iadd(p);\n }\n\n return res;\n };\n\n BN.prototype.gcd = function gcd (num) {\n if (this.isZero()) return num.abs();\n if (num.isZero()) return this.abs();\n\n var a = this.clone();\n var b = num.clone();\n a.negative = 0;\n b.negative = 0;\n\n // Remove common factor of two\n for (var shift = 0; a.isEven() && b.isEven(); shift++) {\n a.iushrn(1);\n b.iushrn(1);\n }\n\n do {\n while (a.isEven()) {\n a.iushrn(1);\n }\n while (b.isEven()) {\n b.iushrn(1);\n }\n\n var r = a.cmp(b);\n if (r < 0) {\n // Swap `a` and `b` to make `a` always bigger than `b`\n var t = a;\n a = b;\n b = t;\n } else if (r === 0 || b.cmpn(1) === 0) {\n break;\n }\n\n a.isub(b);\n } while (true);\n\n return b.iushln(shift);\n };\n\n // Invert number in the field F(num)\n BN.prototype.invm = function invm (num) {\n return this.egcd(num).a.umod(num);\n };\n\n BN.prototype.isEven = function isEven () {\n return (this.words[0] & 1) === 0;\n };\n\n BN.prototype.isOdd = function isOdd () {\n return (this.words[0] & 1) === 1;\n };\n\n // And first word and num\n BN.prototype.andln = function andln (num) {\n return this.words[0] & num;\n };\n\n // Increment at the bit position in-line\n BN.prototype.bincn = function bincn (bit) {\n assert(typeof bit === 'number');\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) {\n this._expand(s + 1);\n this.words[s] |= q;\n return this;\n }\n\n // Add bit and propagate, if needed\n var carry = q;\n for (var i = s; carry !== 0 && i < this.length; i++) {\n var w = this.words[i] | 0;\n w += carry;\n carry = w >>> 26;\n w &= 0x3ffffff;\n this.words[i] = w;\n }\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n return this;\n };\n\n BN.prototype.isZero = function isZero () {\n return this.length === 1 && this.words[0] === 0;\n };\n\n BN.prototype.cmpn = function cmpn (num) {\n var negative = num < 0;\n\n if (this.negative !== 0 && !negative) return -1;\n if (this.negative === 0 && negative) return 1;\n\n this.strip();\n\n var res;\n if (this.length > 1) {\n res = 1;\n } else {\n if (negative) {\n num = -num;\n }\n\n assert(num <= 0x3ffffff, 'Number is too big');\n\n var w = this.words[0] | 0;\n res = w === num ? 0 : w < num ? -1 : 1;\n }\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Compare two numbers and return:\n // 1 - if `this` > `num`\n // 0 - if `this` == `num`\n // -1 - if `this` < `num`\n BN.prototype.cmp = function cmp (num) {\n if (this.negative !== 0 && num.negative === 0) return -1;\n if (this.negative === 0 && num.negative !== 0) return 1;\n\n var res = this.ucmp(num);\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Unsigned comparison\n BN.prototype.ucmp = function ucmp (num) {\n // At this point both numbers have the same sign\n if (this.length > num.length) return 1;\n if (this.length < num.length) return -1;\n\n var res = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var a = this.words[i] | 0;\n var b = num.words[i] | 0;\n\n if (a === b) continue;\n if (a < b) {\n res = -1;\n } else if (a > b) {\n res = 1;\n }\n break;\n }\n return res;\n };\n\n BN.prototype.gtn = function gtn (num) {\n return this.cmpn(num) === 1;\n };\n\n BN.prototype.gt = function gt (num) {\n return this.cmp(num) === 1;\n };\n\n BN.prototype.gten = function gten (num) {\n return this.cmpn(num) >= 0;\n };\n\n BN.prototype.gte = function gte (num) {\n return this.cmp(num) >= 0;\n };\n\n BN.prototype.ltn = function ltn (num) {\n return this.cmpn(num) === -1;\n };\n\n BN.prototype.lt = function lt (num) {\n return this.cmp(num) === -1;\n };\n\n BN.prototype.lten = function lten (num) {\n return this.cmpn(num) <= 0;\n };\n\n BN.prototype.lte = function lte (num) {\n return this.cmp(num) <= 0;\n };\n\n BN.prototype.eqn = function eqn (num) {\n return this.cmpn(num) === 0;\n };\n\n BN.prototype.eq = function eq (num) {\n return this.cmp(num) === 0;\n };\n\n //\n // A reduce context, could be using montgomery or something better, depending\n // on the `m` itself.\n //\n BN.red = function red (num) {\n return new Red(num);\n };\n\n BN.prototype.toRed = function toRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n assert(this.negative === 0, 'red works only with positives');\n return ctx.convertTo(this)._forceRed(ctx);\n };\n\n BN.prototype.fromRed = function fromRed () {\n assert(this.red, 'fromRed works only with numbers in reduction context');\n return this.red.convertFrom(this);\n };\n\n BN.prototype._forceRed = function _forceRed (ctx) {\n this.red = ctx;\n return this;\n };\n\n BN.prototype.forceRed = function forceRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n return this._forceRed(ctx);\n };\n\n BN.prototype.redAdd = function redAdd (num) {\n assert(this.red, 'redAdd works only with red numbers');\n return this.red.add(this, num);\n };\n\n BN.prototype.redIAdd = function redIAdd (num) {\n assert(this.red, 'redIAdd works only with red numbers');\n return this.red.iadd(this, num);\n };\n\n BN.prototype.redSub = function redSub (num) {\n assert(this.red, 'redSub works only with red numbers');\n return this.red.sub(this, num);\n };\n\n BN.prototype.redISub = function redISub (num) {\n assert(this.red, 'redISub works only with red numbers');\n return this.red.isub(this, num);\n };\n\n BN.prototype.redShl = function redShl (num) {\n assert(this.red, 'redShl works only with red numbers');\n return this.red.shl(this, num);\n };\n\n BN.prototype.redMul = function redMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.mul(this, num);\n };\n\n BN.prototype.redIMul = function redIMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.imul(this, num);\n };\n\n BN.prototype.redSqr = function redSqr () {\n assert(this.red, 'redSqr works only with red numbers');\n this.red._verify1(this);\n return this.red.sqr(this);\n };\n\n BN.prototype.redISqr = function redISqr () {\n assert(this.red, 'redISqr works only with red numbers');\n this.red._verify1(this);\n return this.red.isqr(this);\n };\n\n // Square root over p\n BN.prototype.redSqrt = function redSqrt () {\n assert(this.red, 'redSqrt works only with red numbers');\n this.red._verify1(this);\n return this.red.sqrt(this);\n };\n\n BN.prototype.redInvm = function redInvm () {\n assert(this.red, 'redInvm works only with red numbers');\n this.red._verify1(this);\n return this.red.invm(this);\n };\n\n // Return negative clone of `this` % `red modulo`\n BN.prototype.redNeg = function redNeg () {\n assert(this.red, 'redNeg works only with red numbers');\n this.red._verify1(this);\n return this.red.neg(this);\n };\n\n BN.prototype.redPow = function redPow (num) {\n assert(this.red && !num.red, 'redPow(normalNum)');\n this.red._verify1(this);\n return this.red.pow(this, num);\n };\n\n // Prime numbers with efficient reduction\n var primes = {\n k256: null,\n p224: null,\n p192: null,\n p25519: null\n };\n\n // Pseudo-Mersenne prime\n function MPrime (name, p) {\n // P = 2 ^ N - K\n this.name = name;\n this.p = new BN(p, 16);\n this.n = this.p.bitLength();\n this.k = new BN(1).iushln(this.n).isub(this.p);\n\n this.tmp = this._tmp();\n }\n\n MPrime.prototype._tmp = function _tmp () {\n var tmp = new BN(null);\n tmp.words = new Array(Math.ceil(this.n / 13));\n return tmp;\n };\n\n MPrime.prototype.ireduce = function ireduce (num) {\n // Assumes that `num` is less than `P^2`\n // num = HI * (2 ^ N - K) + HI * K + LO = HI * K + LO (mod P)\n var r = num;\n var rlen;\n\n do {\n this.split(r, this.tmp);\n r = this.imulK(r);\n r = r.iadd(this.tmp);\n rlen = r.bitLength();\n } while (rlen > this.n);\n\n var cmp = rlen < this.n ? -1 : r.ucmp(this.p);\n if (cmp === 0) {\n r.words[0] = 0;\n r.length = 1;\n } else if (cmp > 0) {\n r.isub(this.p);\n } else {\n if (r.strip !== undefined) {\n // r is BN v4 instance\n r.strip();\n } else {\n // r is BN v5 instance\n r._strip();\n }\n }\n\n return r;\n };\n\n MPrime.prototype.split = function split (input, out) {\n input.iushrn(this.n, 0, out);\n };\n\n MPrime.prototype.imulK = function imulK (num) {\n return num.imul(this.k);\n };\n\n function K256 () {\n MPrime.call(\n this,\n 'k256',\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f');\n }\n inherits(K256, MPrime);\n\n K256.prototype.split = function split (input, output) {\n // 256 = 9 * 26 + 22\n var mask = 0x3fffff;\n\n var outLen = Math.min(input.length, 9);\n for (var i = 0; i < outLen; i++) {\n output.words[i] = input.words[i];\n }\n output.length = outLen;\n\n if (input.length <= 9) {\n input.words[0] = 0;\n input.length = 1;\n return;\n }\n\n // Shift by 9 limbs\n var prev = input.words[9];\n output.words[output.length++] = prev & mask;\n\n for (i = 10; i < input.length; i++) {\n var next = input.words[i] | 0;\n input.words[i - 10] = ((next & mask) << 4) | (prev >>> 22);\n prev = next;\n }\n prev >>>= 22;\n input.words[i - 10] = prev;\n if (prev === 0 && input.length > 10) {\n input.length -= 10;\n } else {\n input.length -= 9;\n }\n };\n\n K256.prototype.imulK = function imulK (num) {\n // K = 0x1000003d1 = [ 0x40, 0x3d1 ]\n num.words[num.length] = 0;\n num.words[num.length + 1] = 0;\n num.length += 2;\n\n // bounded at: 0x40 * 0x3ffffff + 0x3d0 = 0x100000390\n var lo = 0;\n for (var i = 0; i < num.length; i++) {\n var w = num.words[i] | 0;\n lo += w * 0x3d1;\n num.words[i] = lo & 0x3ffffff;\n lo = w * 0x40 + ((lo / 0x4000000) | 0);\n }\n\n // Fast length reduction\n if (num.words[num.length - 1] === 0) {\n num.length--;\n if (num.words[num.length - 1] === 0) {\n num.length--;\n }\n }\n return num;\n };\n\n function P224 () {\n MPrime.call(\n this,\n 'p224',\n 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001');\n }\n inherits(P224, MPrime);\n\n function P192 () {\n MPrime.call(\n this,\n 'p192',\n 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff');\n }\n inherits(P192, MPrime);\n\n function P25519 () {\n // 2 ^ 255 - 19\n MPrime.call(\n this,\n '25519',\n '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed');\n }\n inherits(P25519, MPrime);\n\n P25519.prototype.imulK = function imulK (num) {\n // K = 0x13\n var carry = 0;\n for (var i = 0; i < num.length; i++) {\n var hi = (num.words[i] | 0) * 0x13 + carry;\n var lo = hi & 0x3ffffff;\n hi >>>= 26;\n\n num.words[i] = lo;\n carry = hi;\n }\n if (carry !== 0) {\n num.words[num.length++] = carry;\n }\n return num;\n };\n\n // Exported mostly for testing purposes, use plain name instead\n BN._prime = function prime (name) {\n // Cached version of prime\n if (primes[name]) return primes[name];\n\n var prime;\n if (name === 'k256') {\n prime = new K256();\n } else if (name === 'p224') {\n prime = new P224();\n } else if (name === 'p192') {\n prime = new P192();\n } else if (name === 'p25519') {\n prime = new P25519();\n } else {\n throw new Error('Unknown prime ' + name);\n }\n primes[name] = prime;\n\n return prime;\n };\n\n //\n // Base reduction engine\n //\n function Red (m) {\n if (typeof m === 'string') {\n var prime = BN._prime(m);\n this.m = prime.p;\n this.prime = prime;\n } else {\n assert(m.gtn(1), 'modulus must be greater than 1');\n this.m = m;\n this.prime = null;\n }\n }\n\n Red.prototype._verify1 = function _verify1 (a) {\n assert(a.negative === 0, 'red works only with positives');\n assert(a.red, 'red works only with red numbers');\n };\n\n Red.prototype._verify2 = function _verify2 (a, b) {\n assert((a.negative | b.negative) === 0, 'red works only with positives');\n assert(a.red && a.red === b.red,\n 'red works only with red numbers');\n };\n\n Red.prototype.imod = function imod (a) {\n if (this.prime) return this.prime.ireduce(a)._forceRed(this);\n return a.umod(this.m)._forceRed(this);\n };\n\n Red.prototype.neg = function neg (a) {\n if (a.isZero()) {\n return a.clone();\n }\n\n return this.m.sub(a)._forceRed(this);\n };\n\n Red.prototype.add = function add (a, b) {\n this._verify2(a, b);\n\n var res = a.add(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.iadd = function iadd (a, b) {\n this._verify2(a, b);\n\n var res = a.iadd(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res;\n };\n\n Red.prototype.sub = function sub (a, b) {\n this._verify2(a, b);\n\n var res = a.sub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.isub = function isub (a, b) {\n this._verify2(a, b);\n\n var res = a.isub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res;\n };\n\n Red.prototype.shl = function shl (a, num) {\n this._verify1(a);\n return this.imod(a.ushln(num));\n };\n\n Red.prototype.imul = function imul (a, b) {\n this._verify2(a, b);\n return this.imod(a.imul(b));\n };\n\n Red.prototype.mul = function mul (a, b) {\n this._verify2(a, b);\n return this.imod(a.mul(b));\n };\n\n Red.prototype.isqr = function isqr (a) {\n return this.imul(a, a.clone());\n };\n\n Red.prototype.sqr = function sqr (a) {\n return this.mul(a, a);\n };\n\n Red.prototype.sqrt = function sqrt (a) {\n if (a.isZero()) return a.clone();\n\n var mod3 = this.m.andln(3);\n assert(mod3 % 2 === 1);\n\n // Fast case\n if (mod3 === 3) {\n var pow = this.m.add(new BN(1)).iushrn(2);\n return this.pow(a, pow);\n }\n\n // Tonelli-Shanks algorithm (Totally unoptimized and slow)\n //\n // Find Q and S, that Q * 2 ^ S = (P - 1)\n var q = this.m.subn(1);\n var s = 0;\n while (!q.isZero() && q.andln(1) === 0) {\n s++;\n q.iushrn(1);\n }\n assert(!q.isZero());\n\n var one = new BN(1).toRed(this);\n var nOne = one.redNeg();\n\n // Find quadratic non-residue\n // NOTE: Max is such because of generalized Riemann hypothesis.\n var lpow = this.m.subn(1).iushrn(1);\n var z = this.m.bitLength();\n z = new BN(2 * z * z).toRed(this);\n\n while (this.pow(z, lpow).cmp(nOne) !== 0) {\n z.redIAdd(nOne);\n }\n\n var c = this.pow(z, q);\n var r = this.pow(a, q.addn(1).iushrn(1));\n var t = this.pow(a, q);\n var m = s;\n while (t.cmp(one) !== 0) {\n var tmp = t;\n for (var i = 0; tmp.cmp(one) !== 0; i++) {\n tmp = tmp.redSqr();\n }\n assert(i < m);\n var b = this.pow(c, new BN(1).iushln(m - i - 1));\n\n r = r.redMul(b);\n c = b.redSqr();\n t = t.redMul(c);\n m = i;\n }\n\n return r;\n };\n\n Red.prototype.invm = function invm (a) {\n var inv = a._invmp(this.m);\n if (inv.negative !== 0) {\n inv.negative = 0;\n return this.imod(inv).redNeg();\n } else {\n return this.imod(inv);\n }\n };\n\n Red.prototype.pow = function pow (a, num) {\n if (num.isZero()) return new BN(1).toRed(this);\n if (num.cmpn(1) === 0) return a.clone();\n\n var windowSize = 4;\n var wnd = new Array(1 << windowSize);\n wnd[0] = new BN(1).toRed(this);\n wnd[1] = a;\n for (var i = 2; i < wnd.length; i++) {\n wnd[i] = this.mul(wnd[i - 1], a);\n }\n\n var res = wnd[0];\n var current = 0;\n var currentLen = 0;\n var start = num.bitLength() % 26;\n if (start === 0) {\n start = 26;\n }\n\n for (i = num.length - 1; i >= 0; i--) {\n var word = num.words[i];\n for (var j = start - 1; j >= 0; j--) {\n var bit = (word >> j) & 1;\n if (res !== wnd[0]) {\n res = this.sqr(res);\n }\n\n if (bit === 0 && current === 0) {\n currentLen = 0;\n continue;\n }\n\n current <<= 1;\n current |= bit;\n currentLen++;\n if (currentLen !== windowSize && (i !== 0 || j !== 0)) continue;\n\n res = this.mul(res, wnd[current]);\n currentLen = 0;\n current = 0;\n }\n start = 26;\n }\n\n return res;\n };\n\n Red.prototype.convertTo = function convertTo (num) {\n var r = num.umod(this.m);\n\n return r === num ? r.clone() : r;\n };\n\n Red.prototype.convertFrom = function convertFrom (num) {\n var res = num.clone();\n res.red = null;\n return res;\n };\n\n //\n // Montgomery method engine\n //\n\n BN.mont = function mont (num) {\n return new Mont(num);\n };\n\n function Mont (m) {\n Red.call(this, m);\n\n this.shift = this.m.bitLength();\n if (this.shift % 26 !== 0) {\n this.shift += 26 - (this.shift % 26);\n }\n\n this.r = new BN(1).iushln(this.shift);\n this.r2 = this.imod(this.r.sqr());\n this.rinv = this.r._invmp(this.m);\n\n this.minv = this.rinv.mul(this.r).isubn(1).div(this.m);\n this.minv = this.minv.umod(this.r);\n this.minv = this.r.sub(this.minv);\n }\n inherits(Mont, Red);\n\n Mont.prototype.convertTo = function convertTo (num) {\n return this.imod(num.ushln(this.shift));\n };\n\n Mont.prototype.convertFrom = function convertFrom (num) {\n var r = this.imod(num.mul(this.rinv));\n r.red = null;\n return r;\n };\n\n Mont.prototype.imul = function imul (a, b) {\n if (a.isZero() || b.isZero()) {\n a.words[0] = 0;\n a.length = 1;\n return a;\n }\n\n var t = a.imul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.mul = function mul (a, b) {\n if (a.isZero() || b.isZero()) return new BN(0)._forceRed(this);\n\n var t = a.mul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.invm = function invm (a) {\n // (AR)^-1 * R^2 = (A^-1 * R^-1) * R^2 = A^-1 * R\n var res = this.imod(a._invmp(this.m).mul(this.r2));\n return res._forceRed(this);\n };\n})(typeof module === 'undefined' || module, this);\n","import Long from \"long\";\nimport * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Key from \"../Key.js\";\nimport PublicKey from \"../PublicKey.js\";\nimport CACHE from \"../Cache.js\";\n\n/**\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\nconst regex = new RegExp(\n \"^(0|[1-9]\\\\d*)\\\\.(0|[1-9]\\\\d*)\\\\.((?:[0-9a-fA-F][0-9a-fA-F])+)$\"\n);\n\n/**\n * The ID for a crypto-currency account on Hedera.\n */\nexport default class AccountId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long | PublicKey)=} numOrAliasKey\n */\n constructor(props, realm, numOrAliasKey) {\n const result = entity_id.constructor(props, realm, numOrAliasKey);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n this.aliasKey = result.aliasKey;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {AccountId}\n */\n static fromString(text) {\n try {\n const result = entity_id.fromString(text);\n const id = new AccountId(result);\n id._checksum = result.checksum;\n return id;\n } catch {\n let match = regex.exec(text);\n if (match == null) {\n throw new Error(\"invalid account ID\");\n }\n\n return new AccountId(\n Long.fromString(match[1]),\n Long.fromString(match[2]),\n PublicKey.fromString(match[3])\n );\n }\n }\n\n /**\n * @internal\n * @param {proto.IAccountID} id\n * @returns {AccountId}\n */\n static _fromProtobuf(id) {\n let key =\n id.alias != null && id.alias.length > 0\n ? Key._fromProtobufKey(proto.Key.decode(id.alias))\n : null;\n\n if (!(key instanceof PublicKey)) {\n key = null;\n }\n\n const account = key != null ? key : /** @type {Long} */ (id.accountNum);\n\n return new AccountId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n account\n );\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n if (this.aliasKey != null) {\n throw new Error(\n \"cannot calculate checksum with an account ID that has a aliasKey\"\n );\n }\n\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {AccountId}\n */\n static fromBytes(bytes) {\n return AccountId._fromProtobuf(proto.AccountID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {AccountId}\n */\n static fromSolidityAddress(address) {\n return new AccountId(...entity_id.fromSolidityAddress(address));\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.IAccountID}\n */\n _toProtobuf() {\n return {\n alias:\n this.aliasKey != null\n ? proto.Key.encode(this.aliasKey._toProtobufKey()).finish()\n : null,\n accountNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.AccountID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n const account =\n this.aliasKey != null\n ? this.aliasKey.toString()\n : this.num.toString();\n\n return `${this.shard.toString()}.${this.realm.toString()}.${account}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n if (this.aliasKey != null) {\n throw new Error(\n \"cannot calculate checksum with an account ID that has a aliasKey\"\n );\n }\n\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @param {this} other\n * @returns {boolean}\n */\n equals(other) {\n let account = false;\n\n if (this.aliasKey != null && other.aliasKey != null) {\n account = this.aliasKey.equals(other.aliasKey);\n } else if (this.aliasKey == null && other.aliasKey == null) {\n account = this.num.eq(other.num);\n }\n\n return (\n this.shard.eq(other.shard) && this.realm.eq(other.realm) && account\n );\n }\n\n /**\n * @returns {AccountId}\n */\n clone() {\n const id = new AccountId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {AccountId} other\n * @returns {number}\n */\n compare(other) {\n let comparison = this.shard.compare(other.shard);\n if (comparison != 0) {\n return comparison;\n }\n\n comparison = this.realm.compare(other.realm);\n if (comparison != 0) {\n return comparison;\n }\n\n if (this.aliasKey != null && other.aliasKey != null) {\n const t = this.aliasKey.toString();\n const o = other.aliasKey.toString();\n\n if (t > o) {\n return 1;\n } else if (t < o) {\n return -1;\n } else {\n return 0;\n }\n } else if (this.aliasKey == null && other.aliasKey == null) {\n return this.num.compare(other.num);\n } else {\n return 0;\n }\n }\n}\n\nCACHE.accountIdConstructor = (shard, realm, key) =>\n new AccountId(shard, realm, key);\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","module.exports = Long;\r\n\r\n/**\r\n * wasm optimizations, to do native i64 multiplication and divide\r\n */\r\nvar wasm = null;\r\n\r\ntry {\r\n wasm = new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([\r\n 0, 97, 115, 109, 1, 0, 0, 0, 1, 13, 2, 96, 0, 1, 127, 96, 4, 127, 127, 127, 127, 1, 127, 3, 7, 6, 0, 1, 1, 1, 1, 1, 6, 6, 1, 127, 1, 65, 0, 11, 7, 50, 6, 3, 109, 117, 108, 0, 1, 5, 100, 105, 118, 95, 115, 0, 2, 5, 100, 105, 118, 95, 117, 0, 3, 5, 114, 101, 109, 95, 115, 0, 4, 5, 114, 101, 109, 95, 117, 0, 5, 8, 103, 101, 116, 95, 104, 105, 103, 104, 0, 0, 10, 191, 1, 6, 4, 0, 35, 0, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 126, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 127, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 128, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 129, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 130, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11\r\n ])), {}).exports;\r\n} catch (e) {\r\n // no wasm support :(\r\n}\r\n\r\n/**\r\n * Constructs a 64 bit two's-complement integer, given its low and high 32 bit values as *signed* integers.\r\n * See the from* functions below for more convenient ways of constructing Longs.\r\n * @exports Long\r\n * @class A Long class for representing a 64 bit two's-complement integer value.\r\n * @param {number} low The low (signed) 32 bits of the long\r\n * @param {number} high The high (signed) 32 bits of the long\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @constructor\r\n */\r\nfunction Long(low, high, unsigned) {\r\n\r\n /**\r\n * The low 32 bits as a signed value.\r\n * @type {number}\r\n */\r\n this.low = low | 0;\r\n\r\n /**\r\n * The high 32 bits as a signed value.\r\n * @type {number}\r\n */\r\n this.high = high | 0;\r\n\r\n /**\r\n * Whether unsigned or not.\r\n * @type {boolean}\r\n */\r\n this.unsigned = !!unsigned;\r\n}\r\n\r\n// The internal representation of a long is the two given signed, 32-bit values.\r\n// We use 32-bit pieces because these are the size of integers on which\r\n// Javascript performs bit-operations. For operations like addition and\r\n// multiplication, we split each number into 16 bit pieces, which can easily be\r\n// multiplied within Javascript's floating-point representation without overflow\r\n// or change in sign.\r\n//\r\n// In the algorithms below, we frequently reduce the negative case to the\r\n// positive case by negating the input(s) and then post-processing the result.\r\n// Note that we must ALWAYS check specially whether those values are MIN_VALUE\r\n// (-2^63) because -MIN_VALUE == MIN_VALUE (since 2^63 cannot be represented as\r\n// a positive number, it overflows back into a negative). Not handling this\r\n// case would often result in infinite recursion.\r\n//\r\n// Common constant values ZERO, ONE, NEG_ONE, etc. are defined below the from*\r\n// methods on which they depend.\r\n\r\n/**\r\n * An indicator used to reliably determine if an object is a Long or not.\r\n * @type {boolean}\r\n * @const\r\n * @private\r\n */\r\nLong.prototype.__isLong__;\r\n\r\nObject.defineProperty(Long.prototype, \"__isLong__\", { value: true });\r\n\r\n/**\r\n * @function\r\n * @param {*} obj Object\r\n * @returns {boolean}\r\n * @inner\r\n */\r\nfunction isLong(obj) {\r\n return (obj && obj[\"__isLong__\"]) === true;\r\n}\r\n\r\n/**\r\n * Tests if the specified object is a Long.\r\n * @function\r\n * @param {*} obj Object\r\n * @returns {boolean}\r\n */\r\nLong.isLong = isLong;\r\n\r\n/**\r\n * A cache of the Long representations of small integer values.\r\n * @type {!Object}\r\n * @inner\r\n */\r\nvar INT_CACHE = {};\r\n\r\n/**\r\n * A cache of the Long representations of small unsigned integer values.\r\n * @type {!Object}\r\n * @inner\r\n */\r\nvar UINT_CACHE = {};\r\n\r\n/**\r\n * @param {number} value\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromInt(value, unsigned) {\r\n var obj, cachedObj, cache;\r\n if (unsigned) {\r\n value >>>= 0;\r\n if (cache = (0 <= value && value < 256)) {\r\n cachedObj = UINT_CACHE[value];\r\n if (cachedObj)\r\n return cachedObj;\r\n }\r\n obj = fromBits(value, (value | 0) < 0 ? -1 : 0, true);\r\n if (cache)\r\n UINT_CACHE[value] = obj;\r\n return obj;\r\n } else {\r\n value |= 0;\r\n if (cache = (-128 <= value && value < 128)) {\r\n cachedObj = INT_CACHE[value];\r\n if (cachedObj)\r\n return cachedObj;\r\n }\r\n obj = fromBits(value, value < 0 ? -1 : 0, false);\r\n if (cache)\r\n INT_CACHE[value] = obj;\r\n return obj;\r\n }\r\n}\r\n\r\n/**\r\n * Returns a Long representing the given 32 bit integer value.\r\n * @function\r\n * @param {number} value The 32 bit integer in question\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromInt = fromInt;\r\n\r\n/**\r\n * @param {number} value\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromNumber(value, unsigned) {\r\n if (isNaN(value))\r\n return unsigned ? UZERO : ZERO;\r\n if (unsigned) {\r\n if (value < 0)\r\n return UZERO;\r\n if (value >= TWO_PWR_64_DBL)\r\n return MAX_UNSIGNED_VALUE;\r\n } else {\r\n if (value <= -TWO_PWR_63_DBL)\r\n return MIN_VALUE;\r\n if (value + 1 >= TWO_PWR_63_DBL)\r\n return MAX_VALUE;\r\n }\r\n if (value < 0)\r\n return fromNumber(-value, unsigned).neg();\r\n return fromBits((value % TWO_PWR_32_DBL) | 0, (value / TWO_PWR_32_DBL) | 0, unsigned);\r\n}\r\n\r\n/**\r\n * Returns a Long representing the given value, provided that it is a finite number. Otherwise, zero is returned.\r\n * @function\r\n * @param {number} value The number in question\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromNumber = fromNumber;\r\n\r\n/**\r\n * @param {number} lowBits\r\n * @param {number} highBits\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromBits(lowBits, highBits, unsigned) {\r\n return new Long(lowBits, highBits, unsigned);\r\n}\r\n\r\n/**\r\n * Returns a Long representing the 64 bit integer that comes by concatenating the given low and high bits. Each is\r\n * assumed to use 32 bits.\r\n * @function\r\n * @param {number} lowBits The low 32 bits\r\n * @param {number} highBits The high 32 bits\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromBits = fromBits;\r\n\r\n/**\r\n * @function\r\n * @param {number} base\r\n * @param {number} exponent\r\n * @returns {number}\r\n * @inner\r\n */\r\nvar pow_dbl = Math.pow; // Used 4 times (4*8 to 15+4)\r\n\r\n/**\r\n * @param {string} str\r\n * @param {(boolean|number)=} unsigned\r\n * @param {number=} radix\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromString(str, unsigned, radix) {\r\n if (str.length === 0)\r\n throw Error('empty string');\r\n if (str === \"NaN\" || str === \"Infinity\" || str === \"+Infinity\" || str === \"-Infinity\")\r\n return ZERO;\r\n if (typeof unsigned === 'number') {\r\n // For goog.math.long compatibility\r\n radix = unsigned,\r\n unsigned = false;\r\n } else {\r\n unsigned = !! unsigned;\r\n }\r\n radix = radix || 10;\r\n if (radix < 2 || 36 < radix)\r\n throw RangeError('radix');\r\n\r\n var p;\r\n if ((p = str.indexOf('-')) > 0)\r\n throw Error('interior hyphen');\r\n else if (p === 0) {\r\n return fromString(str.substring(1), unsigned, radix).neg();\r\n }\r\n\r\n // Do several (8) digits each time through the loop, so as to\r\n // minimize the calls to the very expensive emulated div.\r\n var radixToPower = fromNumber(pow_dbl(radix, 8));\r\n\r\n var result = ZERO;\r\n for (var i = 0; i < str.length; i += 8) {\r\n var size = Math.min(8, str.length - i),\r\n value = parseInt(str.substring(i, i + size), radix);\r\n if (size < 8) {\r\n var power = fromNumber(pow_dbl(radix, size));\r\n result = result.mul(power).add(fromNumber(value));\r\n } else {\r\n result = result.mul(radixToPower);\r\n result = result.add(fromNumber(value));\r\n }\r\n }\r\n result.unsigned = unsigned;\r\n return result;\r\n}\r\n\r\n/**\r\n * Returns a Long representation of the given string, written using the specified radix.\r\n * @function\r\n * @param {string} str The textual representation of the Long\r\n * @param {(boolean|number)=} unsigned Whether unsigned or not, defaults to signed\r\n * @param {number=} radix The radix in which the text is written (2-36), defaults to 10\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromString = fromString;\r\n\r\n/**\r\n * @function\r\n * @param {!Long|number|string|!{low: number, high: number, unsigned: boolean}} val\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromValue(val, unsigned) {\r\n if (typeof val === 'number')\r\n return fromNumber(val, unsigned);\r\n if (typeof val === 'string')\r\n return fromString(val, unsigned);\r\n // Throws for non-objects, converts non-instanceof Long:\r\n return fromBits(val.low, val.high, typeof unsigned === 'boolean' ? unsigned : val.unsigned);\r\n}\r\n\r\n/**\r\n * Converts the specified value to a Long using the appropriate from* function for its type.\r\n * @function\r\n * @param {!Long|number|string|!{low: number, high: number, unsigned: boolean}} val Value\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long}\r\n */\r\nLong.fromValue = fromValue;\r\n\r\n// NOTE: the compiler should inline these constant values below and then remove these variables, so there should be\r\n// no runtime penalty for these.\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_16_DBL = 1 << 16;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_24_DBL = 1 << 24;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_32_DBL = TWO_PWR_16_DBL * TWO_PWR_16_DBL;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_64_DBL = TWO_PWR_32_DBL * TWO_PWR_32_DBL;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_63_DBL = TWO_PWR_64_DBL / 2;\r\n\r\n/**\r\n * @type {!Long}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_24 = fromInt(TWO_PWR_24_DBL);\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar ZERO = fromInt(0);\r\n\r\n/**\r\n * Signed zero.\r\n * @type {!Long}\r\n */\r\nLong.ZERO = ZERO;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar UZERO = fromInt(0, true);\r\n\r\n/**\r\n * Unsigned zero.\r\n * @type {!Long}\r\n */\r\nLong.UZERO = UZERO;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar ONE = fromInt(1);\r\n\r\n/**\r\n * Signed one.\r\n * @type {!Long}\r\n */\r\nLong.ONE = ONE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar UONE = fromInt(1, true);\r\n\r\n/**\r\n * Unsigned one.\r\n * @type {!Long}\r\n */\r\nLong.UONE = UONE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar NEG_ONE = fromInt(-1);\r\n\r\n/**\r\n * Signed negative one.\r\n * @type {!Long}\r\n */\r\nLong.NEG_ONE = NEG_ONE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar MAX_VALUE = fromBits(0xFFFFFFFF|0, 0x7FFFFFFF|0, false);\r\n\r\n/**\r\n * Maximum signed value.\r\n * @type {!Long}\r\n */\r\nLong.MAX_VALUE = MAX_VALUE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar MAX_UNSIGNED_VALUE = fromBits(0xFFFFFFFF|0, 0xFFFFFFFF|0, true);\r\n\r\n/**\r\n * Maximum unsigned value.\r\n * @type {!Long}\r\n */\r\nLong.MAX_UNSIGNED_VALUE = MAX_UNSIGNED_VALUE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar MIN_VALUE = fromBits(0, 0x80000000|0, false);\r\n\r\n/**\r\n * Minimum signed value.\r\n * @type {!Long}\r\n */\r\nLong.MIN_VALUE = MIN_VALUE;\r\n\r\n/**\r\n * @alias Long.prototype\r\n * @inner\r\n */\r\nvar LongPrototype = Long.prototype;\r\n\r\n/**\r\n * Converts the Long to a 32 bit integer, assuming it is a 32 bit integer.\r\n * @returns {number}\r\n */\r\nLongPrototype.toInt = function toInt() {\r\n return this.unsigned ? this.low >>> 0 : this.low;\r\n};\r\n\r\n/**\r\n * Converts the Long to a the nearest floating-point representation of this value (double, 53 bit mantissa).\r\n * @returns {number}\r\n */\r\nLongPrototype.toNumber = function toNumber() {\r\n if (this.unsigned)\r\n return ((this.high >>> 0) * TWO_PWR_32_DBL) + (this.low >>> 0);\r\n return this.high * TWO_PWR_32_DBL + (this.low >>> 0);\r\n};\r\n\r\n/**\r\n * Converts the Long to a string written in the specified radix.\r\n * @param {number=} radix Radix (2-36), defaults to 10\r\n * @returns {string}\r\n * @override\r\n * @throws {RangeError} If `radix` is out of range\r\n */\r\nLongPrototype.toString = function toString(radix) {\r\n radix = radix || 10;\r\n if (radix < 2 || 36 < radix)\r\n throw RangeError('radix');\r\n if (this.isZero())\r\n return '0';\r\n if (this.isNegative()) { // Unsigned Longs are never negative\r\n if (this.eq(MIN_VALUE)) {\r\n // We need to change the Long value before it can be negated, so we remove\r\n // the bottom-most digit in this base and then recurse to do the rest.\r\n var radixLong = fromNumber(radix),\r\n div = this.div(radixLong),\r\n rem1 = div.mul(radixLong).sub(this);\r\n return div.toString(radix) + rem1.toInt().toString(radix);\r\n } else\r\n return '-' + this.neg().toString(radix);\r\n }\r\n\r\n // Do several (6) digits each time through the loop, so as to\r\n // minimize the calls to the very expensive emulated div.\r\n var radixToPower = fromNumber(pow_dbl(radix, 6), this.unsigned),\r\n rem = this;\r\n var result = '';\r\n while (true) {\r\n var remDiv = rem.div(radixToPower),\r\n intval = rem.sub(remDiv.mul(radixToPower)).toInt() >>> 0,\r\n digits = intval.toString(radix);\r\n rem = remDiv;\r\n if (rem.isZero())\r\n return digits + result;\r\n else {\r\n while (digits.length < 6)\r\n digits = '0' + digits;\r\n result = '' + digits + result;\r\n }\r\n }\r\n};\r\n\r\n/**\r\n * Gets the high 32 bits as a signed integer.\r\n * @returns {number} Signed high bits\r\n */\r\nLongPrototype.getHighBits = function getHighBits() {\r\n return this.high;\r\n};\r\n\r\n/**\r\n * Gets the high 32 bits as an unsigned integer.\r\n * @returns {number} Unsigned high bits\r\n */\r\nLongPrototype.getHighBitsUnsigned = function getHighBitsUnsigned() {\r\n return this.high >>> 0;\r\n};\r\n\r\n/**\r\n * Gets the low 32 bits as a signed integer.\r\n * @returns {number} Signed low bits\r\n */\r\nLongPrototype.getLowBits = function getLowBits() {\r\n return this.low;\r\n};\r\n\r\n/**\r\n * Gets the low 32 bits as an unsigned integer.\r\n * @returns {number} Unsigned low bits\r\n */\r\nLongPrototype.getLowBitsUnsigned = function getLowBitsUnsigned() {\r\n return this.low >>> 0;\r\n};\r\n\r\n/**\r\n * Gets the number of bits needed to represent the absolute value of this Long.\r\n * @returns {number}\r\n */\r\nLongPrototype.getNumBitsAbs = function getNumBitsAbs() {\r\n if (this.isNegative()) // Unsigned Longs are never negative\r\n return this.eq(MIN_VALUE) ? 64 : this.neg().getNumBitsAbs();\r\n var val = this.high != 0 ? this.high : this.low;\r\n for (var bit = 31; bit > 0; bit--)\r\n if ((val & (1 << bit)) != 0)\r\n break;\r\n return this.high != 0 ? bit + 33 : bit + 1;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals zero.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isZero = function isZero() {\r\n return this.high === 0 && this.low === 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals zero. This is an alias of {@link Long#isZero}.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.eqz = LongPrototype.isZero;\r\n\r\n/**\r\n * Tests if this Long's value is negative.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isNegative = function isNegative() {\r\n return !this.unsigned && this.high < 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is positive.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isPositive = function isPositive() {\r\n return this.unsigned || this.high >= 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is odd.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isOdd = function isOdd() {\r\n return (this.low & 1) === 1;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is even.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isEven = function isEven() {\r\n return (this.low & 1) === 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.equals = function equals(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n if (this.unsigned !== other.unsigned && (this.high >>> 31) === 1 && (other.high >>> 31) === 1)\r\n return false;\r\n return this.high === other.high && this.low === other.low;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals the specified's. This is an alias of {@link Long#equals}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.eq = LongPrototype.equals;\r\n\r\n/**\r\n * Tests if this Long's value differs from the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.notEquals = function notEquals(other) {\r\n return !this.eq(/* validates */ other);\r\n};\r\n\r\n/**\r\n * Tests if this Long's value differs from the specified's. This is an alias of {@link Long#notEquals}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.neq = LongPrototype.notEquals;\r\n\r\n/**\r\n * Tests if this Long's value differs from the specified's. This is an alias of {@link Long#notEquals}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.ne = LongPrototype.notEquals;\r\n\r\n/**\r\n * Tests if this Long's value is less than the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lessThan = function lessThan(other) {\r\n return this.comp(/* validates */ other) < 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is less than the specified's. This is an alias of {@link Long#lessThan}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lt = LongPrototype.lessThan;\r\n\r\n/**\r\n * Tests if this Long's value is less than or equal the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lessThanOrEqual = function lessThanOrEqual(other) {\r\n return this.comp(/* validates */ other) <= 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is less than or equal the specified's. This is an alias of {@link Long#lessThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lte = LongPrototype.lessThanOrEqual;\r\n\r\n/**\r\n * Tests if this Long's value is less than or equal the specified's. This is an alias of {@link Long#lessThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.le = LongPrototype.lessThanOrEqual;\r\n\r\n/**\r\n * Tests if this Long's value is greater than the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.greaterThan = function greaterThan(other) {\r\n return this.comp(/* validates */ other) > 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is greater than the specified's. This is an alias of {@link Long#greaterThan}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.gt = LongPrototype.greaterThan;\r\n\r\n/**\r\n * Tests if this Long's value is greater than or equal the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.greaterThanOrEqual = function greaterThanOrEqual(other) {\r\n return this.comp(/* validates */ other) >= 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is greater than or equal the specified's. This is an alias of {@link Long#greaterThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.gte = LongPrototype.greaterThanOrEqual;\r\n\r\n/**\r\n * Tests if this Long's value is greater than or equal the specified's. This is an alias of {@link Long#greaterThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.ge = LongPrototype.greaterThanOrEqual;\r\n\r\n/**\r\n * Compares this Long's value with the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {number} 0 if they are the same, 1 if the this is greater and -1\r\n * if the given one is greater\r\n */\r\nLongPrototype.compare = function compare(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n if (this.eq(other))\r\n return 0;\r\n var thisNeg = this.isNegative(),\r\n otherNeg = other.isNegative();\r\n if (thisNeg && !otherNeg)\r\n return -1;\r\n if (!thisNeg && otherNeg)\r\n return 1;\r\n // At this point the sign bits are the same\r\n if (!this.unsigned)\r\n return this.sub(other).isNegative() ? -1 : 1;\r\n // Both are positive if at least one is unsigned\r\n return (other.high >>> 0) > (this.high >>> 0) || (other.high === this.high && (other.low >>> 0) > (this.low >>> 0)) ? -1 : 1;\r\n};\r\n\r\n/**\r\n * Compares this Long's value with the specified's. This is an alias of {@link Long#compare}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {number} 0 if they are the same, 1 if the this is greater and -1\r\n * if the given one is greater\r\n */\r\nLongPrototype.comp = LongPrototype.compare;\r\n\r\n/**\r\n * Negates this Long's value.\r\n * @returns {!Long} Negated Long\r\n */\r\nLongPrototype.negate = function negate() {\r\n if (!this.unsigned && this.eq(MIN_VALUE))\r\n return MIN_VALUE;\r\n return this.not().add(ONE);\r\n};\r\n\r\n/**\r\n * Negates this Long's value. This is an alias of {@link Long#negate}.\r\n * @function\r\n * @returns {!Long} Negated Long\r\n */\r\nLongPrototype.neg = LongPrototype.negate;\r\n\r\n/**\r\n * Returns the sum of this and the specified Long.\r\n * @param {!Long|number|string} addend Addend\r\n * @returns {!Long} Sum\r\n */\r\nLongPrototype.add = function add(addend) {\r\n if (!isLong(addend))\r\n addend = fromValue(addend);\r\n\r\n // Divide each number into 4 chunks of 16 bits, and then sum the chunks.\r\n\r\n var a48 = this.high >>> 16;\r\n var a32 = this.high & 0xFFFF;\r\n var a16 = this.low >>> 16;\r\n var a00 = this.low & 0xFFFF;\r\n\r\n var b48 = addend.high >>> 16;\r\n var b32 = addend.high & 0xFFFF;\r\n var b16 = addend.low >>> 16;\r\n var b00 = addend.low & 0xFFFF;\r\n\r\n var c48 = 0, c32 = 0, c16 = 0, c00 = 0;\r\n c00 += a00 + b00;\r\n c16 += c00 >>> 16;\r\n c00 &= 0xFFFF;\r\n c16 += a16 + b16;\r\n c32 += c16 >>> 16;\r\n c16 &= 0xFFFF;\r\n c32 += a32 + b32;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c48 += a48 + b48;\r\n c48 &= 0xFFFF;\r\n return fromBits((c16 << 16) | c00, (c48 << 16) | c32, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the difference of this and the specified Long.\r\n * @param {!Long|number|string} subtrahend Subtrahend\r\n * @returns {!Long} Difference\r\n */\r\nLongPrototype.subtract = function subtract(subtrahend) {\r\n if (!isLong(subtrahend))\r\n subtrahend = fromValue(subtrahend);\r\n return this.add(subtrahend.neg());\r\n};\r\n\r\n/**\r\n * Returns the difference of this and the specified Long. This is an alias of {@link Long#subtract}.\r\n * @function\r\n * @param {!Long|number|string} subtrahend Subtrahend\r\n * @returns {!Long} Difference\r\n */\r\nLongPrototype.sub = LongPrototype.subtract;\r\n\r\n/**\r\n * Returns the product of this and the specified Long.\r\n * @param {!Long|number|string} multiplier Multiplier\r\n * @returns {!Long} Product\r\n */\r\nLongPrototype.multiply = function multiply(multiplier) {\r\n if (this.isZero())\r\n return ZERO;\r\n if (!isLong(multiplier))\r\n multiplier = fromValue(multiplier);\r\n\r\n // use wasm support if present\r\n if (wasm) {\r\n var low = wasm.mul(this.low,\r\n this.high,\r\n multiplier.low,\r\n multiplier.high);\r\n return fromBits(low, wasm.get_high(), this.unsigned);\r\n }\r\n\r\n if (multiplier.isZero())\r\n return ZERO;\r\n if (this.eq(MIN_VALUE))\r\n return multiplier.isOdd() ? MIN_VALUE : ZERO;\r\n if (multiplier.eq(MIN_VALUE))\r\n return this.isOdd() ? MIN_VALUE : ZERO;\r\n\r\n if (this.isNegative()) {\r\n if (multiplier.isNegative())\r\n return this.neg().mul(multiplier.neg());\r\n else\r\n return this.neg().mul(multiplier).neg();\r\n } else if (multiplier.isNegative())\r\n return this.mul(multiplier.neg()).neg();\r\n\r\n // If both longs are small, use float multiplication\r\n if (this.lt(TWO_PWR_24) && multiplier.lt(TWO_PWR_24))\r\n return fromNumber(this.toNumber() * multiplier.toNumber(), this.unsigned);\r\n\r\n // Divide each long into 4 chunks of 16 bits, and then add up 4x4 products.\r\n // We can skip products that would overflow.\r\n\r\n var a48 = this.high >>> 16;\r\n var a32 = this.high & 0xFFFF;\r\n var a16 = this.low >>> 16;\r\n var a00 = this.low & 0xFFFF;\r\n\r\n var b48 = multiplier.high >>> 16;\r\n var b32 = multiplier.high & 0xFFFF;\r\n var b16 = multiplier.low >>> 16;\r\n var b00 = multiplier.low & 0xFFFF;\r\n\r\n var c48 = 0, c32 = 0, c16 = 0, c00 = 0;\r\n c00 += a00 * b00;\r\n c16 += c00 >>> 16;\r\n c00 &= 0xFFFF;\r\n c16 += a16 * b00;\r\n c32 += c16 >>> 16;\r\n c16 &= 0xFFFF;\r\n c16 += a00 * b16;\r\n c32 += c16 >>> 16;\r\n c16 &= 0xFFFF;\r\n c32 += a32 * b00;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c32 += a16 * b16;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c32 += a00 * b32;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c48 += a48 * b00 + a32 * b16 + a16 * b32 + a00 * b48;\r\n c48 &= 0xFFFF;\r\n return fromBits((c16 << 16) | c00, (c48 << 16) | c32, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the product of this and the specified Long. This is an alias of {@link Long#multiply}.\r\n * @function\r\n * @param {!Long|number|string} multiplier Multiplier\r\n * @returns {!Long} Product\r\n */\r\nLongPrototype.mul = LongPrototype.multiply;\r\n\r\n/**\r\n * Returns this Long divided by the specified. The result is signed if this Long is signed or\r\n * unsigned if this Long is unsigned.\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Quotient\r\n */\r\nLongPrototype.divide = function divide(divisor) {\r\n if (!isLong(divisor))\r\n divisor = fromValue(divisor);\r\n if (divisor.isZero())\r\n throw Error('division by zero');\r\n\r\n // use wasm support if present\r\n if (wasm) {\r\n // guard against signed division overflow: the largest\r\n // negative number / -1 would be 1 larger than the largest\r\n // positive number, due to two's complement.\r\n if (!this.unsigned &&\r\n this.high === -0x80000000 &&\r\n divisor.low === -1 && divisor.high === -1) {\r\n // be consistent with non-wasm code path\r\n return this;\r\n }\r\n var low = (this.unsigned ? wasm.div_u : wasm.div_s)(\r\n this.low,\r\n this.high,\r\n divisor.low,\r\n divisor.high\r\n );\r\n return fromBits(low, wasm.get_high(), this.unsigned);\r\n }\r\n\r\n if (this.isZero())\r\n return this.unsigned ? UZERO : ZERO;\r\n var approx, rem, res;\r\n if (!this.unsigned) {\r\n // This section is only relevant for signed longs and is derived from the\r\n // closure library as a whole.\r\n if (this.eq(MIN_VALUE)) {\r\n if (divisor.eq(ONE) || divisor.eq(NEG_ONE))\r\n return MIN_VALUE; // recall that -MIN_VALUE == MIN_VALUE\r\n else if (divisor.eq(MIN_VALUE))\r\n return ONE;\r\n else {\r\n // At this point, we have |other| >= 2, so |this/other| < |MIN_VALUE|.\r\n var halfThis = this.shr(1);\r\n approx = halfThis.div(divisor).shl(1);\r\n if (approx.eq(ZERO)) {\r\n return divisor.isNegative() ? ONE : NEG_ONE;\r\n } else {\r\n rem = this.sub(divisor.mul(approx));\r\n res = approx.add(rem.div(divisor));\r\n return res;\r\n }\r\n }\r\n } else if (divisor.eq(MIN_VALUE))\r\n return this.unsigned ? UZERO : ZERO;\r\n if (this.isNegative()) {\r\n if (divisor.isNegative())\r\n return this.neg().div(divisor.neg());\r\n return this.neg().div(divisor).neg();\r\n } else if (divisor.isNegative())\r\n return this.div(divisor.neg()).neg();\r\n res = ZERO;\r\n } else {\r\n // The algorithm below has not been made for unsigned longs. It's therefore\r\n // required to take special care of the MSB prior to running it.\r\n if (!divisor.unsigned)\r\n divisor = divisor.toUnsigned();\r\n if (divisor.gt(this))\r\n return UZERO;\r\n if (divisor.gt(this.shru(1))) // 15 >>> 1 = 7 ; with divisor = 8 ; true\r\n return UONE;\r\n res = UZERO;\r\n }\r\n\r\n // Repeat the following until the remainder is less than other: find a\r\n // floating-point that approximates remainder / other *from below*, add this\r\n // into the result, and subtract it from the remainder. It is critical that\r\n // the approximate value is less than or equal to the real value so that the\r\n // remainder never becomes negative.\r\n rem = this;\r\n while (rem.gte(divisor)) {\r\n // Approximate the result of division. This may be a little greater or\r\n // smaller than the actual value.\r\n approx = Math.max(1, Math.floor(rem.toNumber() / divisor.toNumber()));\r\n\r\n // We will tweak the approximate result by changing it in the 48-th digit or\r\n // the smallest non-fractional digit, whichever is larger.\r\n var log2 = Math.ceil(Math.log(approx) / Math.LN2),\r\n delta = (log2 <= 48) ? 1 : pow_dbl(2, log2 - 48),\r\n\r\n // Decrease the approximation until it is smaller than the remainder. Note\r\n // that if it is too large, the product overflows and is negative.\r\n approxRes = fromNumber(approx),\r\n approxRem = approxRes.mul(divisor);\r\n while (approxRem.isNegative() || approxRem.gt(rem)) {\r\n approx -= delta;\r\n approxRes = fromNumber(approx, this.unsigned);\r\n approxRem = approxRes.mul(divisor);\r\n }\r\n\r\n // We know the answer can't be zero... and actually, zero would cause\r\n // infinite recursion since we would make no progress.\r\n if (approxRes.isZero())\r\n approxRes = ONE;\r\n\r\n res = res.add(approxRes);\r\n rem = rem.sub(approxRem);\r\n }\r\n return res;\r\n};\r\n\r\n/**\r\n * Returns this Long divided by the specified. This is an alias of {@link Long#divide}.\r\n * @function\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Quotient\r\n */\r\nLongPrototype.div = LongPrototype.divide;\r\n\r\n/**\r\n * Returns this Long modulo the specified.\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Remainder\r\n */\r\nLongPrototype.modulo = function modulo(divisor) {\r\n if (!isLong(divisor))\r\n divisor = fromValue(divisor);\r\n\r\n // use wasm support if present\r\n if (wasm) {\r\n var low = (this.unsigned ? wasm.rem_u : wasm.rem_s)(\r\n this.low,\r\n this.high,\r\n divisor.low,\r\n divisor.high\r\n );\r\n return fromBits(low, wasm.get_high(), this.unsigned);\r\n }\r\n\r\n return this.sub(this.div(divisor).mul(divisor));\r\n};\r\n\r\n/**\r\n * Returns this Long modulo the specified. This is an alias of {@link Long#modulo}.\r\n * @function\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Remainder\r\n */\r\nLongPrototype.mod = LongPrototype.modulo;\r\n\r\n/**\r\n * Returns this Long modulo the specified. This is an alias of {@link Long#modulo}.\r\n * @function\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Remainder\r\n */\r\nLongPrototype.rem = LongPrototype.modulo;\r\n\r\n/**\r\n * Returns the bitwise NOT of this Long.\r\n * @returns {!Long}\r\n */\r\nLongPrototype.not = function not() {\r\n return fromBits(~this.low, ~this.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the bitwise AND of this Long and the specified.\r\n * @param {!Long|number|string} other Other Long\r\n * @returns {!Long}\r\n */\r\nLongPrototype.and = function and(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n return fromBits(this.low & other.low, this.high & other.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the bitwise OR of this Long and the specified.\r\n * @param {!Long|number|string} other Other Long\r\n * @returns {!Long}\r\n */\r\nLongPrototype.or = function or(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n return fromBits(this.low | other.low, this.high | other.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the bitwise XOR of this Long and the given one.\r\n * @param {!Long|number|string} other Other Long\r\n * @returns {!Long}\r\n */\r\nLongPrototype.xor = function xor(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n return fromBits(this.low ^ other.low, this.high ^ other.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns this Long with bits shifted to the left by the given amount.\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shiftLeft = function shiftLeft(numBits) {\r\n if (isLong(numBits))\r\n numBits = numBits.toInt();\r\n if ((numBits &= 63) === 0)\r\n return this;\r\n else if (numBits < 32)\r\n return fromBits(this.low << numBits, (this.high << numBits) | (this.low >>> (32 - numBits)), this.unsigned);\r\n else\r\n return fromBits(0, this.low << (numBits - 32), this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns this Long with bits shifted to the left by the given amount. This is an alias of {@link Long#shiftLeft}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shl = LongPrototype.shiftLeft;\r\n\r\n/**\r\n * Returns this Long with bits arithmetically shifted to the right by the given amount.\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shiftRight = function shiftRight(numBits) {\r\n if (isLong(numBits))\r\n numBits = numBits.toInt();\r\n if ((numBits &= 63) === 0)\r\n return this;\r\n else if (numBits < 32)\r\n return fromBits((this.low >>> numBits) | (this.high << (32 - numBits)), this.high >> numBits, this.unsigned);\r\n else\r\n return fromBits(this.high >> (numBits - 32), this.high >= 0 ? 0 : -1, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns this Long with bits arithmetically shifted to the right by the given amount. This is an alias of {@link Long#shiftRight}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shr = LongPrototype.shiftRight;\r\n\r\n/**\r\n * Returns this Long with bits logically shifted to the right by the given amount.\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shiftRightUnsigned = function shiftRightUnsigned(numBits) {\r\n if (isLong(numBits))\r\n numBits = numBits.toInt();\r\n numBits &= 63;\r\n if (numBits === 0)\r\n return this;\r\n else {\r\n var high = this.high;\r\n if (numBits < 32) {\r\n var low = this.low;\r\n return fromBits((low >>> numBits) | (high << (32 - numBits)), high >>> numBits, this.unsigned);\r\n } else if (numBits === 32)\r\n return fromBits(high, 0, this.unsigned);\r\n else\r\n return fromBits(high >>> (numBits - 32), 0, this.unsigned);\r\n }\r\n};\r\n\r\n/**\r\n * Returns this Long with bits logically shifted to the right by the given amount. This is an alias of {@link Long#shiftRightUnsigned}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shru = LongPrototype.shiftRightUnsigned;\r\n\r\n/**\r\n * Returns this Long with bits logically shifted to the right by the given amount. This is an alias of {@link Long#shiftRightUnsigned}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shr_u = LongPrototype.shiftRightUnsigned;\r\n\r\n/**\r\n * Converts this Long to signed.\r\n * @returns {!Long} Signed long\r\n */\r\nLongPrototype.toSigned = function toSigned() {\r\n if (!this.unsigned)\r\n return this;\r\n return fromBits(this.low, this.high, false);\r\n};\r\n\r\n/**\r\n * Converts this Long to unsigned.\r\n * @returns {!Long} Unsigned long\r\n */\r\nLongPrototype.toUnsigned = function toUnsigned() {\r\n if (this.unsigned)\r\n return this;\r\n return fromBits(this.low, this.high, true);\r\n};\r\n\r\n/**\r\n * Converts this Long to its byte representation.\r\n * @param {boolean=} le Whether little or big endian, defaults to big endian\r\n * @returns {!Array.} Byte representation\r\n */\r\nLongPrototype.toBytes = function toBytes(le) {\r\n return le ? this.toBytesLE() : this.toBytesBE();\r\n};\r\n\r\n/**\r\n * Converts this Long to its little endian byte representation.\r\n * @returns {!Array.} Little endian byte representation\r\n */\r\nLongPrototype.toBytesLE = function toBytesLE() {\r\n var hi = this.high,\r\n lo = this.low;\r\n return [\r\n lo & 0xff,\r\n lo >>> 8 & 0xff,\r\n lo >>> 16 & 0xff,\r\n lo >>> 24 ,\r\n hi & 0xff,\r\n hi >>> 8 & 0xff,\r\n hi >>> 16 & 0xff,\r\n hi >>> 24\r\n ];\r\n};\r\n\r\n/**\r\n * Converts this Long to its big endian byte representation.\r\n * @returns {!Array.} Big endian byte representation\r\n */\r\nLongPrototype.toBytesBE = function toBytesBE() {\r\n var hi = this.high,\r\n lo = this.low;\r\n return [\r\n hi >>> 24 ,\r\n hi >>> 16 & 0xff,\r\n hi >>> 8 & 0xff,\r\n hi & 0xff,\r\n lo >>> 24 ,\r\n lo >>> 16 & 0xff,\r\n lo >>> 8 & 0xff,\r\n lo & 0xff\r\n ];\r\n};\r\n\r\n/**\r\n * Creates a Long from its byte representation.\r\n * @param {!Array.} bytes Byte representation\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @param {boolean=} le Whether little or big endian, defaults to big endian\r\n * @returns {Long} The corresponding Long value\r\n */\r\nLong.fromBytes = function fromBytes(bytes, unsigned, le) {\r\n return le ? Long.fromBytesLE(bytes, unsigned) : Long.fromBytesBE(bytes, unsigned);\r\n};\r\n\r\n/**\r\n * Creates a Long from its little endian byte representation.\r\n * @param {!Array.} bytes Little endian byte representation\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {Long} The corresponding Long value\r\n */\r\nLong.fromBytesLE = function fromBytesLE(bytes, unsigned) {\r\n return new Long(\r\n bytes[0] |\r\n bytes[1] << 8 |\r\n bytes[2] << 16 |\r\n bytes[3] << 24,\r\n bytes[4] |\r\n bytes[5] << 8 |\r\n bytes[6] << 16 |\r\n bytes[7] << 24,\r\n unsigned\r\n );\r\n};\r\n\r\n/**\r\n * Creates a Long from its big endian byte representation.\r\n * @param {!Array.} bytes Big endian byte representation\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {Long} The corresponding Long value\r\n */\r\nLong.fromBytesBE = function fromBytesBE(bytes, unsigned) {\r\n return new Long(\r\n bytes[4] << 24 |\r\n bytes[5] << 16 |\r\n bytes[6] << 8 |\r\n bytes[7],\r\n bytes[0] << 24 |\r\n bytes[1] << 16 |\r\n bytes[2] << 8 |\r\n bytes[3],\r\n unsigned\r\n );\r\n};\r\n","module.exports = Long;\r\n\r\n/**\r\n * wasm optimizations, to do native i64 multiplication and divide\r\n */\r\nvar wasm = null;\r\n\r\ntry {\r\n wasm = new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([\r\n 0, 97, 115, 109, 1, 0, 0, 0, 1, 13, 2, 96, 0, 1, 127, 96, 4, 127, 127, 127, 127, 1, 127, 3, 7, 6, 0, 1, 1, 1, 1, 1, 6, 6, 1, 127, 1, 65, 0, 11, 7, 50, 6, 3, 109, 117, 108, 0, 1, 5, 100, 105, 118, 95, 115, 0, 2, 5, 100, 105, 118, 95, 117, 0, 3, 5, 114, 101, 109, 95, 115, 0, 4, 5, 114, 101, 109, 95, 117, 0, 5, 8, 103, 101, 116, 95, 104, 105, 103, 104, 0, 0, 10, 191, 1, 6, 4, 0, 35, 0, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 126, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 127, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 128, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 129, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 130, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11\r\n ])), {}).exports;\r\n} catch (e) {\r\n // no wasm support :(\r\n}\r\n\r\n/**\r\n * Constructs a 64 bit two's-complement integer, given its low and high 32 bit values as *signed* integers.\r\n * See the from* functions below for more convenient ways of constructing Longs.\r\n * @exports Long\r\n * @class A Long class for representing a 64 bit two's-complement integer value.\r\n * @param {number} low The low (signed) 32 bits of the long\r\n * @param {number} high The high (signed) 32 bits of the long\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @constructor\r\n */\r\nfunction Long(low, high, unsigned) {\r\n\r\n /**\r\n * The low 32 bits as a signed value.\r\n * @type {number}\r\n */\r\n this.low = low | 0;\r\n\r\n /**\r\n * The high 32 bits as a signed value.\r\n * @type {number}\r\n */\r\n this.high = high | 0;\r\n\r\n /**\r\n * Whether unsigned or not.\r\n * @type {boolean}\r\n */\r\n this.unsigned = !!unsigned;\r\n}\r\n\r\n// The internal representation of a long is the two given signed, 32-bit values.\r\n// We use 32-bit pieces because these are the size of integers on which\r\n// Javascript performs bit-operations. For operations like addition and\r\n// multiplication, we split each number into 16 bit pieces, which can easily be\r\n// multiplied within Javascript's floating-point representation without overflow\r\n// or change in sign.\r\n//\r\n// In the algorithms below, we frequently reduce the negative case to the\r\n// positive case by negating the input(s) and then post-processing the result.\r\n// Note that we must ALWAYS check specially whether those values are MIN_VALUE\r\n// (-2^63) because -MIN_VALUE == MIN_VALUE (since 2^63 cannot be represented as\r\n// a positive number, it overflows back into a negative). Not handling this\r\n// case would often result in infinite recursion.\r\n//\r\n// Common constant values ZERO, ONE, NEG_ONE, etc. are defined below the from*\r\n// methods on which they depend.\r\n\r\n/**\r\n * An indicator used to reliably determine if an object is a Long or not.\r\n * @type {boolean}\r\n * @const\r\n * @private\r\n */\r\nLong.prototype.__isLong__;\r\n\r\nObject.defineProperty(Long.prototype, \"__isLong__\", { value: true });\r\n\r\n/**\r\n * @function\r\n * @param {*} obj Object\r\n * @returns {boolean}\r\n * @inner\r\n */\r\nfunction isLong(obj) {\r\n return (obj && obj[\"__isLong__\"]) === true;\r\n}\r\n\r\n/**\r\n * Tests if the specified object is a Long.\r\n * @function\r\n * @param {*} obj Object\r\n * @returns {boolean}\r\n */\r\nLong.isLong = isLong;\r\n\r\n/**\r\n * A cache of the Long representations of small integer values.\r\n * @type {!Object}\r\n * @inner\r\n */\r\nvar INT_CACHE = {};\r\n\r\n/**\r\n * A cache of the Long representations of small unsigned integer values.\r\n * @type {!Object}\r\n * @inner\r\n */\r\nvar UINT_CACHE = {};\r\n\r\n/**\r\n * @param {number} value\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromInt(value, unsigned) {\r\n var obj, cachedObj, cache;\r\n if (unsigned) {\r\n value >>>= 0;\r\n if (cache = (0 <= value && value < 256)) {\r\n cachedObj = UINT_CACHE[value];\r\n if (cachedObj)\r\n return cachedObj;\r\n }\r\n obj = fromBits(value, (value | 0) < 0 ? -1 : 0, true);\r\n if (cache)\r\n UINT_CACHE[value] = obj;\r\n return obj;\r\n } else {\r\n value |= 0;\r\n if (cache = (-128 <= value && value < 128)) {\r\n cachedObj = INT_CACHE[value];\r\n if (cachedObj)\r\n return cachedObj;\r\n }\r\n obj = fromBits(value, value < 0 ? -1 : 0, false);\r\n if (cache)\r\n INT_CACHE[value] = obj;\r\n return obj;\r\n }\r\n}\r\n\r\n/**\r\n * Returns a Long representing the given 32 bit integer value.\r\n * @function\r\n * @param {number} value The 32 bit integer in question\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromInt = fromInt;\r\n\r\n/**\r\n * @param {number} value\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromNumber(value, unsigned) {\r\n if (isNaN(value))\r\n return unsigned ? UZERO : ZERO;\r\n if (unsigned) {\r\n if (value < 0)\r\n return UZERO;\r\n if (value >= TWO_PWR_64_DBL)\r\n return MAX_UNSIGNED_VALUE;\r\n } else {\r\n if (value <= -TWO_PWR_63_DBL)\r\n return MIN_VALUE;\r\n if (value + 1 >= TWO_PWR_63_DBL)\r\n return MAX_VALUE;\r\n }\r\n if (value < 0)\r\n return fromNumber(-value, unsigned).neg();\r\n return fromBits((value % TWO_PWR_32_DBL) | 0, (value / TWO_PWR_32_DBL) | 0, unsigned);\r\n}\r\n\r\n/**\r\n * Returns a Long representing the given value, provided that it is a finite number. Otherwise, zero is returned.\r\n * @function\r\n * @param {number} value The number in question\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromNumber = fromNumber;\r\n\r\n/**\r\n * @param {number} lowBits\r\n * @param {number} highBits\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromBits(lowBits, highBits, unsigned) {\r\n return new Long(lowBits, highBits, unsigned);\r\n}\r\n\r\n/**\r\n * Returns a Long representing the 64 bit integer that comes by concatenating the given low and high bits. Each is\r\n * assumed to use 32 bits.\r\n * @function\r\n * @param {number} lowBits The low 32 bits\r\n * @param {number} highBits The high 32 bits\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromBits = fromBits;\r\n\r\n/**\r\n * @function\r\n * @param {number} base\r\n * @param {number} exponent\r\n * @returns {number}\r\n * @inner\r\n */\r\nvar pow_dbl = Math.pow; // Used 4 times (4*8 to 15+4)\r\n\r\n/**\r\n * @param {string} str\r\n * @param {(boolean|number)=} unsigned\r\n * @param {number=} radix\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromString(str, unsigned, radix) {\r\n if (str.length === 0)\r\n throw Error('empty string');\r\n if (str === \"NaN\" || str === \"Infinity\" || str === \"+Infinity\" || str === \"-Infinity\")\r\n return ZERO;\r\n if (typeof unsigned === 'number') {\r\n // For goog.math.long compatibility\r\n radix = unsigned,\r\n unsigned = false;\r\n } else {\r\n unsigned = !! unsigned;\r\n }\r\n radix = radix || 10;\r\n if (radix < 2 || 36 < radix)\r\n throw RangeError('radix');\r\n\r\n var p;\r\n if ((p = str.indexOf('-')) > 0)\r\n throw Error('interior hyphen');\r\n else if (p === 0) {\r\n return fromString(str.substring(1), unsigned, radix).neg();\r\n }\r\n\r\n // Do several (8) digits each time through the loop, so as to\r\n // minimize the calls to the very expensive emulated div.\r\n var radixToPower = fromNumber(pow_dbl(radix, 8));\r\n\r\n var result = ZERO;\r\n for (var i = 0; i < str.length; i += 8) {\r\n var size = Math.min(8, str.length - i),\r\n value = parseInt(str.substring(i, i + size), radix);\r\n if (size < 8) {\r\n var power = fromNumber(pow_dbl(radix, size));\r\n result = result.mul(power).add(fromNumber(value));\r\n } else {\r\n result = result.mul(radixToPower);\r\n result = result.add(fromNumber(value));\r\n }\r\n }\r\n result.unsigned = unsigned;\r\n return result;\r\n}\r\n\r\n/**\r\n * Returns a Long representation of the given string, written using the specified radix.\r\n * @function\r\n * @param {string} str The textual representation of the Long\r\n * @param {(boolean|number)=} unsigned Whether unsigned or not, defaults to signed\r\n * @param {number=} radix The radix in which the text is written (2-36), defaults to 10\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromString = fromString;\r\n\r\n/**\r\n * @function\r\n * @param {!Long|number|string|!{low: number, high: number, unsigned: boolean}} val\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromValue(val, unsigned) {\r\n if (typeof val === 'number')\r\n return fromNumber(val, unsigned);\r\n if (typeof val === 'string')\r\n return fromString(val, unsigned);\r\n // Throws for non-objects, converts non-instanceof Long:\r\n return fromBits(val.low, val.high, typeof unsigned === 'boolean' ? unsigned : val.unsigned);\r\n}\r\n\r\n/**\r\n * Converts the specified value to a Long using the appropriate from* function for its type.\r\n * @function\r\n * @param {!Long|number|string|!{low: number, high: number, unsigned: boolean}} val Value\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long}\r\n */\r\nLong.fromValue = fromValue;\r\n\r\n// NOTE: the compiler should inline these constant values below and then remove these variables, so there should be\r\n// no runtime penalty for these.\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_16_DBL = 1 << 16;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_24_DBL = 1 << 24;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_32_DBL = TWO_PWR_16_DBL * TWO_PWR_16_DBL;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_64_DBL = TWO_PWR_32_DBL * TWO_PWR_32_DBL;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_63_DBL = TWO_PWR_64_DBL / 2;\r\n\r\n/**\r\n * @type {!Long}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_24 = fromInt(TWO_PWR_24_DBL);\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar ZERO = fromInt(0);\r\n\r\n/**\r\n * Signed zero.\r\n * @type {!Long}\r\n */\r\nLong.ZERO = ZERO;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar UZERO = fromInt(0, true);\r\n\r\n/**\r\n * Unsigned zero.\r\n * @type {!Long}\r\n */\r\nLong.UZERO = UZERO;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar ONE = fromInt(1);\r\n\r\n/**\r\n * Signed one.\r\n * @type {!Long}\r\n */\r\nLong.ONE = ONE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar UONE = fromInt(1, true);\r\n\r\n/**\r\n * Unsigned one.\r\n * @type {!Long}\r\n */\r\nLong.UONE = UONE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar NEG_ONE = fromInt(-1);\r\n\r\n/**\r\n * Signed negative one.\r\n * @type {!Long}\r\n */\r\nLong.NEG_ONE = NEG_ONE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar MAX_VALUE = fromBits(0xFFFFFFFF|0, 0x7FFFFFFF|0, false);\r\n\r\n/**\r\n * Maximum signed value.\r\n * @type {!Long}\r\n */\r\nLong.MAX_VALUE = MAX_VALUE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar MAX_UNSIGNED_VALUE = fromBits(0xFFFFFFFF|0, 0xFFFFFFFF|0, true);\r\n\r\n/**\r\n * Maximum unsigned value.\r\n * @type {!Long}\r\n */\r\nLong.MAX_UNSIGNED_VALUE = MAX_UNSIGNED_VALUE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar MIN_VALUE = fromBits(0, 0x80000000|0, false);\r\n\r\n/**\r\n * Minimum signed value.\r\n * @type {!Long}\r\n */\r\nLong.MIN_VALUE = MIN_VALUE;\r\n\r\n/**\r\n * @alias Long.prototype\r\n * @inner\r\n */\r\nvar LongPrototype = Long.prototype;\r\n\r\n/**\r\n * Converts the Long to a 32 bit integer, assuming it is a 32 bit integer.\r\n * @returns {number}\r\n */\r\nLongPrototype.toInt = function toInt() {\r\n return this.unsigned ? this.low >>> 0 : this.low;\r\n};\r\n\r\n/**\r\n * Converts the Long to a the nearest floating-point representation of this value (double, 53 bit mantissa).\r\n * @returns {number}\r\n */\r\nLongPrototype.toNumber = function toNumber() {\r\n if (this.unsigned)\r\n return ((this.high >>> 0) * TWO_PWR_32_DBL) + (this.low >>> 0);\r\n return this.high * TWO_PWR_32_DBL + (this.low >>> 0);\r\n};\r\n\r\n/**\r\n * Converts the Long to a string written in the specified radix.\r\n * @param {number=} radix Radix (2-36), defaults to 10\r\n * @returns {string}\r\n * @override\r\n * @throws {RangeError} If `radix` is out of range\r\n */\r\nLongPrototype.toString = function toString(radix) {\r\n radix = radix || 10;\r\n if (radix < 2 || 36 < radix)\r\n throw RangeError('radix');\r\n if (this.isZero())\r\n return '0';\r\n if (this.isNegative()) { // Unsigned Longs are never negative\r\n if (this.eq(MIN_VALUE)) {\r\n // We need to change the Long value before it can be negated, so we remove\r\n // the bottom-most digit in this base and then recurse to do the rest.\r\n var radixLong = fromNumber(radix),\r\n div = this.div(radixLong),\r\n rem1 = div.mul(radixLong).sub(this);\r\n return div.toString(radix) + rem1.toInt().toString(radix);\r\n } else\r\n return '-' + this.neg().toString(radix);\r\n }\r\n\r\n // Do several (6) digits each time through the loop, so as to\r\n // minimize the calls to the very expensive emulated div.\r\n var radixToPower = fromNumber(pow_dbl(radix, 6), this.unsigned),\r\n rem = this;\r\n var result = '';\r\n while (true) {\r\n var remDiv = rem.div(radixToPower),\r\n intval = rem.sub(remDiv.mul(radixToPower)).toInt() >>> 0,\r\n digits = intval.toString(radix);\r\n rem = remDiv;\r\n if (rem.isZero())\r\n return digits + result;\r\n else {\r\n while (digits.length < 6)\r\n digits = '0' + digits;\r\n result = '' + digits + result;\r\n }\r\n }\r\n};\r\n\r\n/**\r\n * Gets the high 32 bits as a signed integer.\r\n * @returns {number} Signed high bits\r\n */\r\nLongPrototype.getHighBits = function getHighBits() {\r\n return this.high;\r\n};\r\n\r\n/**\r\n * Gets the high 32 bits as an unsigned integer.\r\n * @returns {number} Unsigned high bits\r\n */\r\nLongPrototype.getHighBitsUnsigned = function getHighBitsUnsigned() {\r\n return this.high >>> 0;\r\n};\r\n\r\n/**\r\n * Gets the low 32 bits as a signed integer.\r\n * @returns {number} Signed low bits\r\n */\r\nLongPrototype.getLowBits = function getLowBits() {\r\n return this.low;\r\n};\r\n\r\n/**\r\n * Gets the low 32 bits as an unsigned integer.\r\n * @returns {number} Unsigned low bits\r\n */\r\nLongPrototype.getLowBitsUnsigned = function getLowBitsUnsigned() {\r\n return this.low >>> 0;\r\n};\r\n\r\n/**\r\n * Gets the number of bits needed to represent the absolute value of this Long.\r\n * @returns {number}\r\n */\r\nLongPrototype.getNumBitsAbs = function getNumBitsAbs() {\r\n if (this.isNegative()) // Unsigned Longs are never negative\r\n return this.eq(MIN_VALUE) ? 64 : this.neg().getNumBitsAbs();\r\n var val = this.high != 0 ? this.high : this.low;\r\n for (var bit = 31; bit > 0; bit--)\r\n if ((val & (1 << bit)) != 0)\r\n break;\r\n return this.high != 0 ? bit + 33 : bit + 1;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals zero.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isZero = function isZero() {\r\n return this.high === 0 && this.low === 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals zero. This is an alias of {@link Long#isZero}.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.eqz = LongPrototype.isZero;\r\n\r\n/**\r\n * Tests if this Long's value is negative.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isNegative = function isNegative() {\r\n return !this.unsigned && this.high < 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is positive.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isPositive = function isPositive() {\r\n return this.unsigned || this.high >= 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is odd.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isOdd = function isOdd() {\r\n return (this.low & 1) === 1;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is even.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isEven = function isEven() {\r\n return (this.low & 1) === 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.equals = function equals(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n if (this.unsigned !== other.unsigned && (this.high >>> 31) === 1 && (other.high >>> 31) === 1)\r\n return false;\r\n return this.high === other.high && this.low === other.low;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals the specified's. This is an alias of {@link Long#equals}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.eq = LongPrototype.equals;\r\n\r\n/**\r\n * Tests if this Long's value differs from the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.notEquals = function notEquals(other) {\r\n return !this.eq(/* validates */ other);\r\n};\r\n\r\n/**\r\n * Tests if this Long's value differs from the specified's. This is an alias of {@link Long#notEquals}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.neq = LongPrototype.notEquals;\r\n\r\n/**\r\n * Tests if this Long's value differs from the specified's. This is an alias of {@link Long#notEquals}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.ne = LongPrototype.notEquals;\r\n\r\n/**\r\n * Tests if this Long's value is less than the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lessThan = function lessThan(other) {\r\n return this.comp(/* validates */ other) < 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is less than the specified's. This is an alias of {@link Long#lessThan}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lt = LongPrototype.lessThan;\r\n\r\n/**\r\n * Tests if this Long's value is less than or equal the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lessThanOrEqual = function lessThanOrEqual(other) {\r\n return this.comp(/* validates */ other) <= 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is less than or equal the specified's. This is an alias of {@link Long#lessThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lte = LongPrototype.lessThanOrEqual;\r\n\r\n/**\r\n * Tests if this Long's value is less than or equal the specified's. This is an alias of {@link Long#lessThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.le = LongPrototype.lessThanOrEqual;\r\n\r\n/**\r\n * Tests if this Long's value is greater than the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.greaterThan = function greaterThan(other) {\r\n return this.comp(/* validates */ other) > 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is greater than the specified's. This is an alias of {@link Long#greaterThan}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.gt = LongPrototype.greaterThan;\r\n\r\n/**\r\n * Tests if this Long's value is greater than or equal the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.greaterThanOrEqual = function greaterThanOrEqual(other) {\r\n return this.comp(/* validates */ other) >= 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is greater than or equal the specified's. This is an alias of {@link Long#greaterThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.gte = LongPrototype.greaterThanOrEqual;\r\n\r\n/**\r\n * Tests if this Long's value is greater than or equal the specified's. This is an alias of {@link Long#greaterThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.ge = LongPrototype.greaterThanOrEqual;\r\n\r\n/**\r\n * Compares this Long's value with the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {number} 0 if they are the same, 1 if the this is greater and -1\r\n * if the given one is greater\r\n */\r\nLongPrototype.compare = function compare(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n if (this.eq(other))\r\n return 0;\r\n var thisNeg = this.isNegative(),\r\n otherNeg = other.isNegative();\r\n if (thisNeg && !otherNeg)\r\n return -1;\r\n if (!thisNeg && otherNeg)\r\n return 1;\r\n // At this point the sign bits are the same\r\n if (!this.unsigned)\r\n return this.sub(other).isNegative() ? -1 : 1;\r\n // Both are positive if at least one is unsigned\r\n return (other.high >>> 0) > (this.high >>> 0) || (other.high === this.high && (other.low >>> 0) > (this.low >>> 0)) ? -1 : 1;\r\n};\r\n\r\n/**\r\n * Compares this Long's value with the specified's. This is an alias of {@link Long#compare}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {number} 0 if they are the same, 1 if the this is greater and -1\r\n * if the given one is greater\r\n */\r\nLongPrototype.comp = LongPrototype.compare;\r\n\r\n/**\r\n * Negates this Long's value.\r\n * @returns {!Long} Negated Long\r\n */\r\nLongPrototype.negate = function negate() {\r\n if (!this.unsigned && this.eq(MIN_VALUE))\r\n return MIN_VALUE;\r\n return this.not().add(ONE);\r\n};\r\n\r\n/**\r\n * Negates this Long's value. This is an alias of {@link Long#negate}.\r\n * @function\r\n * @returns {!Long} Negated Long\r\n */\r\nLongPrototype.neg = LongPrototype.negate;\r\n\r\n/**\r\n * Returns the sum of this and the specified Long.\r\n * @param {!Long|number|string} addend Addend\r\n * @returns {!Long} Sum\r\n */\r\nLongPrototype.add = function add(addend) {\r\n if (!isLong(addend))\r\n addend = fromValue(addend);\r\n\r\n // Divide each number into 4 chunks of 16 bits, and then sum the chunks.\r\n\r\n var a48 = this.high >>> 16;\r\n var a32 = this.high & 0xFFFF;\r\n var a16 = this.low >>> 16;\r\n var a00 = this.low & 0xFFFF;\r\n\r\n var b48 = addend.high >>> 16;\r\n var b32 = addend.high & 0xFFFF;\r\n var b16 = addend.low >>> 16;\r\n var b00 = addend.low & 0xFFFF;\r\n\r\n var c48 = 0, c32 = 0, c16 = 0, c00 = 0;\r\n c00 += a00 + b00;\r\n c16 += c00 >>> 16;\r\n c00 &= 0xFFFF;\r\n c16 += a16 + b16;\r\n c32 += c16 >>> 16;\r\n c16 &= 0xFFFF;\r\n c32 += a32 + b32;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c48 += a48 + b48;\r\n c48 &= 0xFFFF;\r\n return fromBits((c16 << 16) | c00, (c48 << 16) | c32, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the difference of this and the specified Long.\r\n * @param {!Long|number|string} subtrahend Subtrahend\r\n * @returns {!Long} Difference\r\n */\r\nLongPrototype.subtract = function subtract(subtrahend) {\r\n if (!isLong(subtrahend))\r\n subtrahend = fromValue(subtrahend);\r\n return this.add(subtrahend.neg());\r\n};\r\n\r\n/**\r\n * Returns the difference of this and the specified Long. This is an alias of {@link Long#subtract}.\r\n * @function\r\n * @param {!Long|number|string} subtrahend Subtrahend\r\n * @returns {!Long} Difference\r\n */\r\nLongPrototype.sub = LongPrototype.subtract;\r\n\r\n/**\r\n * Returns the product of this and the specified Long.\r\n * @param {!Long|number|string} multiplier Multiplier\r\n * @returns {!Long} Product\r\n */\r\nLongPrototype.multiply = function multiply(multiplier) {\r\n if (this.isZero())\r\n return ZERO;\r\n if (!isLong(multiplier))\r\n multiplier = fromValue(multiplier);\r\n\r\n // use wasm support if present\r\n if (wasm) {\r\n var low = wasm.mul(this.low,\r\n this.high,\r\n multiplier.low,\r\n multiplier.high);\r\n return fromBits(low, wasm.get_high(), this.unsigned);\r\n }\r\n\r\n if (multiplier.isZero())\r\n return ZERO;\r\n if (this.eq(MIN_VALUE))\r\n return multiplier.isOdd() ? MIN_VALUE : ZERO;\r\n if (multiplier.eq(MIN_VALUE))\r\n return this.isOdd() ? MIN_VALUE : ZERO;\r\n\r\n if (this.isNegative()) {\r\n if (multiplier.isNegative())\r\n return this.neg().mul(multiplier.neg());\r\n else\r\n return this.neg().mul(multiplier).neg();\r\n } else if (multiplier.isNegative())\r\n return this.mul(multiplier.neg()).neg();\r\n\r\n // If both longs are small, use float multiplication\r\n if (this.lt(TWO_PWR_24) && multiplier.lt(TWO_PWR_24))\r\n return fromNumber(this.toNumber() * multiplier.toNumber(), this.unsigned);\r\n\r\n // Divide each long into 4 chunks of 16 bits, and then add up 4x4 products.\r\n // We can skip products that would overflow.\r\n\r\n var a48 = this.high >>> 16;\r\n var a32 = this.high & 0xFFFF;\r\n var a16 = this.low >>> 16;\r\n var a00 = this.low & 0xFFFF;\r\n\r\n var b48 = multiplier.high >>> 16;\r\n var b32 = multiplier.high & 0xFFFF;\r\n var b16 = multiplier.low >>> 16;\r\n var b00 = multiplier.low & 0xFFFF;\r\n\r\n var c48 = 0, c32 = 0, c16 = 0, c00 = 0;\r\n c00 += a00 * b00;\r\n c16 += c00 >>> 16;\r\n c00 &= 0xFFFF;\r\n c16 += a16 * b00;\r\n c32 += c16 >>> 16;\r\n c16 &= 0xFFFF;\r\n c16 += a00 * b16;\r\n c32 += c16 >>> 16;\r\n c16 &= 0xFFFF;\r\n c32 += a32 * b00;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c32 += a16 * b16;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c32 += a00 * b32;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c48 += a48 * b00 + a32 * b16 + a16 * b32 + a00 * b48;\r\n c48 &= 0xFFFF;\r\n return fromBits((c16 << 16) | c00, (c48 << 16) | c32, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the product of this and the specified Long. This is an alias of {@link Long#multiply}.\r\n * @function\r\n * @param {!Long|number|string} multiplier Multiplier\r\n * @returns {!Long} Product\r\n */\r\nLongPrototype.mul = LongPrototype.multiply;\r\n\r\n/**\r\n * Returns this Long divided by the specified. The result is signed if this Long is signed or\r\n * unsigned if this Long is unsigned.\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Quotient\r\n */\r\nLongPrototype.divide = function divide(divisor) {\r\n if (!isLong(divisor))\r\n divisor = fromValue(divisor);\r\n if (divisor.isZero())\r\n throw Error('division by zero');\r\n\r\n // use wasm support if present\r\n if (wasm) {\r\n // guard against signed division overflow: the largest\r\n // negative number / -1 would be 1 larger than the largest\r\n // positive number, due to two's complement.\r\n if (!this.unsigned &&\r\n this.high === -0x80000000 &&\r\n divisor.low === -1 && divisor.high === -1) {\r\n // be consistent with non-wasm code path\r\n return this;\r\n }\r\n var low = (this.unsigned ? wasm.div_u : wasm.div_s)(\r\n this.low,\r\n this.high,\r\n divisor.low,\r\n divisor.high\r\n );\r\n return fromBits(low, wasm.get_high(), this.unsigned);\r\n }\r\n\r\n if (this.isZero())\r\n return this.unsigned ? UZERO : ZERO;\r\n var approx, rem, res;\r\n if (!this.unsigned) {\r\n // This section is only relevant for signed longs and is derived from the\r\n // closure library as a whole.\r\n if (this.eq(MIN_VALUE)) {\r\n if (divisor.eq(ONE) || divisor.eq(NEG_ONE))\r\n return MIN_VALUE; // recall that -MIN_VALUE == MIN_VALUE\r\n else if (divisor.eq(MIN_VALUE))\r\n return ONE;\r\n else {\r\n // At this point, we have |other| >= 2, so |this/other| < |MIN_VALUE|.\r\n var halfThis = this.shr(1);\r\n approx = halfThis.div(divisor).shl(1);\r\n if (approx.eq(ZERO)) {\r\n return divisor.isNegative() ? ONE : NEG_ONE;\r\n } else {\r\n rem = this.sub(divisor.mul(approx));\r\n res = approx.add(rem.div(divisor));\r\n return res;\r\n }\r\n }\r\n } else if (divisor.eq(MIN_VALUE))\r\n return this.unsigned ? UZERO : ZERO;\r\n if (this.isNegative()) {\r\n if (divisor.isNegative())\r\n return this.neg().div(divisor.neg());\r\n return this.neg().div(divisor).neg();\r\n } else if (divisor.isNegative())\r\n return this.div(divisor.neg()).neg();\r\n res = ZERO;\r\n } else {\r\n // The algorithm below has not been made for unsigned longs. It's therefore\r\n // required to take special care of the MSB prior to running it.\r\n if (!divisor.unsigned)\r\n divisor = divisor.toUnsigned();\r\n if (divisor.gt(this))\r\n return UZERO;\r\n if (divisor.gt(this.shru(1))) // 15 >>> 1 = 7 ; with divisor = 8 ; true\r\n return UONE;\r\n res = UZERO;\r\n }\r\n\r\n // Repeat the following until the remainder is less than other: find a\r\n // floating-point that approximates remainder / other *from below*, add this\r\n // into the result, and subtract it from the remainder. It is critical that\r\n // the approximate value is less than or equal to the real value so that the\r\n // remainder never becomes negative.\r\n rem = this;\r\n while (rem.gte(divisor)) {\r\n // Approximate the result of division. This may be a little greater or\r\n // smaller than the actual value.\r\n approx = Math.max(1, Math.floor(rem.toNumber() / divisor.toNumber()));\r\n\r\n // We will tweak the approximate result by changing it in the 48-th digit or\r\n // the smallest non-fractional digit, whichever is larger.\r\n var log2 = Math.ceil(Math.log(approx) / Math.LN2),\r\n delta = (log2 <= 48) ? 1 : pow_dbl(2, log2 - 48),\r\n\r\n // Decrease the approximation until it is smaller than the remainder. Note\r\n // that if it is too large, the product overflows and is negative.\r\n approxRes = fromNumber(approx),\r\n approxRem = approxRes.mul(divisor);\r\n while (approxRem.isNegative() || approxRem.gt(rem)) {\r\n approx -= delta;\r\n approxRes = fromNumber(approx, this.unsigned);\r\n approxRem = approxRes.mul(divisor);\r\n }\r\n\r\n // We know the answer can't be zero... and actually, zero would cause\r\n // infinite recursion since we would make no progress.\r\n if (approxRes.isZero())\r\n approxRes = ONE;\r\n\r\n res = res.add(approxRes);\r\n rem = rem.sub(approxRem);\r\n }\r\n return res;\r\n};\r\n\r\n/**\r\n * Returns this Long divided by the specified. This is an alias of {@link Long#divide}.\r\n * @function\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Quotient\r\n */\r\nLongPrototype.div = LongPrototype.divide;\r\n\r\n/**\r\n * Returns this Long modulo the specified.\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Remainder\r\n */\r\nLongPrototype.modulo = function modulo(divisor) {\r\n if (!isLong(divisor))\r\n divisor = fromValue(divisor);\r\n\r\n // use wasm support if present\r\n if (wasm) {\r\n var low = (this.unsigned ? wasm.rem_u : wasm.rem_s)(\r\n this.low,\r\n this.high,\r\n divisor.low,\r\n divisor.high\r\n );\r\n return fromBits(low, wasm.get_high(), this.unsigned);\r\n }\r\n\r\n return this.sub(this.div(divisor).mul(divisor));\r\n};\r\n\r\n/**\r\n * Returns this Long modulo the specified. This is an alias of {@link Long#modulo}.\r\n * @function\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Remainder\r\n */\r\nLongPrototype.mod = LongPrototype.modulo;\r\n\r\n/**\r\n * Returns this Long modulo the specified. This is an alias of {@link Long#modulo}.\r\n * @function\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Remainder\r\n */\r\nLongPrototype.rem = LongPrototype.modulo;\r\n\r\n/**\r\n * Returns the bitwise NOT of this Long.\r\n * @returns {!Long}\r\n */\r\nLongPrototype.not = function not() {\r\n return fromBits(~this.low, ~this.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the bitwise AND of this Long and the specified.\r\n * @param {!Long|number|string} other Other Long\r\n * @returns {!Long}\r\n */\r\nLongPrototype.and = function and(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n return fromBits(this.low & other.low, this.high & other.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the bitwise OR of this Long and the specified.\r\n * @param {!Long|number|string} other Other Long\r\n * @returns {!Long}\r\n */\r\nLongPrototype.or = function or(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n return fromBits(this.low | other.low, this.high | other.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the bitwise XOR of this Long and the given one.\r\n * @param {!Long|number|string} other Other Long\r\n * @returns {!Long}\r\n */\r\nLongPrototype.xor = function xor(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n return fromBits(this.low ^ other.low, this.high ^ other.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns this Long with bits shifted to the left by the given amount.\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shiftLeft = function shiftLeft(numBits) {\r\n if (isLong(numBits))\r\n numBits = numBits.toInt();\r\n if ((numBits &= 63) === 0)\r\n return this;\r\n else if (numBits < 32)\r\n return fromBits(this.low << numBits, (this.high << numBits) | (this.low >>> (32 - numBits)), this.unsigned);\r\n else\r\n return fromBits(0, this.low << (numBits - 32), this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns this Long with bits shifted to the left by the given amount. This is an alias of {@link Long#shiftLeft}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shl = LongPrototype.shiftLeft;\r\n\r\n/**\r\n * Returns this Long with bits arithmetically shifted to the right by the given amount.\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shiftRight = function shiftRight(numBits) {\r\n if (isLong(numBits))\r\n numBits = numBits.toInt();\r\n if ((numBits &= 63) === 0)\r\n return this;\r\n else if (numBits < 32)\r\n return fromBits((this.low >>> numBits) | (this.high << (32 - numBits)), this.high >> numBits, this.unsigned);\r\n else\r\n return fromBits(this.high >> (numBits - 32), this.high >= 0 ? 0 : -1, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns this Long with bits arithmetically shifted to the right by the given amount. This is an alias of {@link Long#shiftRight}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shr = LongPrototype.shiftRight;\r\n\r\n/**\r\n * Returns this Long with bits logically shifted to the right by the given amount.\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shiftRightUnsigned = function shiftRightUnsigned(numBits) {\r\n if (isLong(numBits))\r\n numBits = numBits.toInt();\r\n numBits &= 63;\r\n if (numBits === 0)\r\n return this;\r\n else {\r\n var high = this.high;\r\n if (numBits < 32) {\r\n var low = this.low;\r\n return fromBits((low >>> numBits) | (high << (32 - numBits)), high >>> numBits, this.unsigned);\r\n } else if (numBits === 32)\r\n return fromBits(high, 0, this.unsigned);\r\n else\r\n return fromBits(high >>> (numBits - 32), 0, this.unsigned);\r\n }\r\n};\r\n\r\n/**\r\n * Returns this Long with bits logically shifted to the right by the given amount. This is an alias of {@link Long#shiftRightUnsigned}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shru = LongPrototype.shiftRightUnsigned;\r\n\r\n/**\r\n * Returns this Long with bits logically shifted to the right by the given amount. This is an alias of {@link Long#shiftRightUnsigned}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shr_u = LongPrototype.shiftRightUnsigned;\r\n\r\n/**\r\n * Converts this Long to signed.\r\n * @returns {!Long} Signed long\r\n */\r\nLongPrototype.toSigned = function toSigned() {\r\n if (!this.unsigned)\r\n return this;\r\n return fromBits(this.low, this.high, false);\r\n};\r\n\r\n/**\r\n * Converts this Long to unsigned.\r\n * @returns {!Long} Unsigned long\r\n */\r\nLongPrototype.toUnsigned = function toUnsigned() {\r\n if (this.unsigned)\r\n return this;\r\n return fromBits(this.low, this.high, true);\r\n};\r\n\r\n/**\r\n * Converts this Long to its byte representation.\r\n * @param {boolean=} le Whether little or big endian, defaults to big endian\r\n * @returns {!Array.} Byte representation\r\n */\r\nLongPrototype.toBytes = function toBytes(le) {\r\n return le ? this.toBytesLE() : this.toBytesBE();\r\n};\r\n\r\n/**\r\n * Converts this Long to its little endian byte representation.\r\n * @returns {!Array.} Little endian byte representation\r\n */\r\nLongPrototype.toBytesLE = function toBytesLE() {\r\n var hi = this.high,\r\n lo = this.low;\r\n return [\r\n lo & 0xff,\r\n lo >>> 8 & 0xff,\r\n lo >>> 16 & 0xff,\r\n lo >>> 24 ,\r\n hi & 0xff,\r\n hi >>> 8 & 0xff,\r\n hi >>> 16 & 0xff,\r\n hi >>> 24\r\n ];\r\n};\r\n\r\n/**\r\n * Converts this Long to its big endian byte representation.\r\n * @returns {!Array.} Big endian byte representation\r\n */\r\nLongPrototype.toBytesBE = function toBytesBE() {\r\n var hi = this.high,\r\n lo = this.low;\r\n return [\r\n hi >>> 24 ,\r\n hi >>> 16 & 0xff,\r\n hi >>> 8 & 0xff,\r\n hi & 0xff,\r\n lo >>> 24 ,\r\n lo >>> 16 & 0xff,\r\n lo >>> 8 & 0xff,\r\n lo & 0xff\r\n ];\r\n};\r\n\r\n/**\r\n * Creates a Long from its byte representation.\r\n * @param {!Array.} bytes Byte representation\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @param {boolean=} le Whether little or big endian, defaults to big endian\r\n * @returns {Long} The corresponding Long value\r\n */\r\nLong.fromBytes = function fromBytes(bytes, unsigned, le) {\r\n return le ? Long.fromBytesLE(bytes, unsigned) : Long.fromBytesBE(bytes, unsigned);\r\n};\r\n\r\n/**\r\n * Creates a Long from its little endian byte representation.\r\n * @param {!Array.} bytes Little endian byte representation\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {Long} The corresponding Long value\r\n */\r\nLong.fromBytesLE = function fromBytesLE(bytes, unsigned) {\r\n return new Long(\r\n bytes[0] |\r\n bytes[1] << 8 |\r\n bytes[2] << 16 |\r\n bytes[3] << 24,\r\n bytes[4] |\r\n bytes[5] << 8 |\r\n bytes[6] << 16 |\r\n bytes[7] << 24,\r\n unsigned\r\n );\r\n};\r\n\r\n/**\r\n * Creates a Long from its big endian byte representation.\r\n * @param {!Array.} bytes Big endian byte representation\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {Long} The corresponding Long value\r\n */\r\nLong.fromBytesBE = function fromBytesBE(bytes, unsigned) {\r\n return new Long(\r\n bytes[4] << 24 |\r\n bytes[5] << 16 |\r\n bytes[6] << 8 |\r\n bytes[7],\r\n bytes[0] << 24 |\r\n bytes[1] << 16 |\r\n bytes[2] << 8 |\r\n bytes[3],\r\n unsigned\r\n );\r\n};\r\n","import Hbar from \"../Hbar.js\";\nimport TransactionResponse from \"./TransactionResponse.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport TransactionHashMap from \"./TransactionHashMap.js\";\nimport SignatureMap from \"./SignatureMap.js\";\nimport Executable, { ExecutionState } from \"../Executable.js\";\nimport Status from \"../Status.js\";\nimport Long from \"long\";\nimport * as sha384 from \"../cryptography/sha384.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport {\n Transaction as ProtoTransaction,\n SignedTransaction as ProtoSignedTransaction,\n TransactionList as ProtoTransactionList,\n TransactionBody as ProtoTransactionBody,\n ResponseCodeEnum,\n} from \"@hashgraph/proto\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport PublicKey from \"../PublicKey.js\";\nimport List from \"./List.js\";\nimport Timestamp from \"../Timestamp.js\";\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignatureMap} proto.ISignatureMap\n * @typedef {import(\"@hashgraph/proto\").ISignaturePair} proto.ISignaturePair\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").ITransactionList} proto.ITransactionList\n * @typedef {import(\"@hashgraph/proto\").ITransactionID} proto.ITransactionID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ISchedulableTransactionBody} proto.ISchedulableTransactionBody\n */\n\n/**\n * @typedef {import(\"../schedule/ScheduleCreateTransaction.js\").default} ScheduleCreateTransaction\n * @typedef {import(\"../PrivateKey.js\").default} PrivateKey\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n// 90 days (in seconds)\nexport const DEFAULT_AUTO_RENEW_PERIOD = Long.fromValue(7776000);\n\n// maximum value of i64 (so there is never a record generated)\nexport const DEFAULT_RECORD_THRESHOLD = Hbar.fromTinybars(\n Long.fromString(\"9223372036854775807\")\n);\n\n// 120 seconds\nconst DEFAULT_TRANSACTION_VALID_DURATION = 120;\n\nexport const CHUNK_SIZE = 1024;\n\n/**\n * @type {Map, (transactions: proto.ITransaction[], signedTransactions: proto.ISignedTransaction[], transactionIds: TransactionId[], nodeIds: AccountId[], bodies: proto.TransactionBody[]) => Transaction>}\n */\nexport const TRANSACTION_REGISTRY = new Map();\n\n/**\n * Base class for all transactions that may be submitted to Hedera.\n *\n * @abstract\n * @augments {Executable}\n */\nexport default class Transaction extends Executable {\n // A SDK transaction is composed of multiple, raw protobuf transactions.\n // These should be functionally identicasl, with the exception of pointing to\n // different nodes.\n\n // When retrying a transaction after a network error or retry-able\n // status response, we try a different transaction and thus a different node.\n\n constructor() {\n super();\n\n /**\n * List of proto transactions that have been built from this SDK\n * transaction. Each one should share the same transaction ID.\n *\n * @internal\n * @type {List}\n */\n this._transactions = new List();\n\n /**\n * List of proto transactions that have been built from this SDK\n * transaction. Each one should share the same transaction ID.\n *\n * @internal\n * @type {List}\n */\n this._signedTransactions = new List();\n\n /**\n * Set of public keys (as string) who have signed this transaction so\n * we do not allow them to sign it again.\n *\n * @internal\n * @type {Set}\n */\n this._signerPublicKeys = new Set();\n\n /**\n * @protected\n * @type {number}\n */\n this._nextTransactionIndex = 0;\n\n /**\n * @private\n * @type {number}\n */\n this._transactionValidDuration = DEFAULT_TRANSACTION_VALID_DURATION;\n\n /**\n * @protected\n * @type {Hbar}\n */\n this._defaultMaxTransactionFee = new Hbar(2);\n\n /**\n * @private\n * @type {Hbar | null}\n */\n this._maxTransactionFee = null;\n\n /**\n * @private\n * @type {string}\n */\n this._transactionMemo = \"\";\n\n /**\n * @protected\n * @type {List}\n */\n this._transactionIds = new List();\n\n /**\n * @private\n * @type {AccountId | null}\n */\n this._operatorAccountId = null;\n\n /**\n * @private\n * @type {PublicKey[]}\n */\n this._publicKeys = [];\n\n /**\n * @private\n * @type {(((message: Uint8Array) => Promise) | null)[]}\n */\n this._transactionSigners = [];\n\n /**\n * @private\n * @type {?boolean}\n */\n this._regenerateTransactionId = null;\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {Transaction}\n */\n static fromBytes(bytes) {\n const signedTransactions = [];\n const transactionIds = [];\n const nodeIds = [];\n\n /** @type {string[]} */\n const transactionIdStrings = [];\n\n /** @type {string[]} */\n const nodeIdStrings = [];\n\n const bodies = [];\n\n const list = ProtoTransactionList.decode(bytes).transactionList;\n\n if (list.length === 0) {\n const transaction = ProtoTransaction.decode(bytes);\n\n if (transaction.signedTransactionBytes.length !== 0) {\n list.push(transaction);\n } else {\n list.push({\n signedTransactionBytes: ProtoSignedTransaction.encode({\n bodyBytes: transaction.bodyBytes,\n sigMap: transaction.sigMap,\n }).finish(),\n });\n }\n }\n\n for (const transaction of list) {\n if (transaction.signedTransactionBytes == null) {\n throw new Error(\"Transaction.signedTransactionBytes are null\");\n }\n\n const signedTransaction = ProtoSignedTransaction.decode(\n transaction.signedTransactionBytes\n );\n signedTransactions.push(signedTransaction);\n\n const body = ProtoTransactionBody.decode(\n signedTransaction.bodyBytes\n );\n\n if (body.data == null) {\n throw new Error(\"(BUG) body.data was not set in the protobuf\");\n }\n\n bodies.push(body);\n\n if (body.transactionID != null) {\n const transactionId = TransactionId._fromProtobuf(\n /** @type {proto.ITransactionID} */ (body.transactionID)\n );\n\n if (!transactionIdStrings.includes(transactionId.toString())) {\n transactionIds.push(transactionId);\n transactionIdStrings.push(transactionId.toString());\n }\n }\n\n if (body.nodeAccountID != null) {\n const nodeAccountId = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (body.nodeAccountID)\n );\n\n if (!nodeIdStrings.includes(nodeAccountId.toString())) {\n nodeIds.push(nodeAccountId);\n nodeIdStrings.push(nodeAccountId.toString());\n }\n }\n }\n\n const body = bodies[0];\n\n if (body == null || body.data == null) {\n throw new Error(\n \"No transaction found in bytes or failed to decode TransactionBody\"\n );\n }\n\n const fromProtobuf = TRANSACTION_REGISTRY.get(body.data);\n\n if (fromProtobuf == null) {\n throw new Error(\n `(BUG) Transaction.fromBytes() not implemented for type ${body.data}`\n );\n }\n\n return fromProtobuf(\n list,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {ScheduleCreateTransaction}\n */\n schedule() {\n this._requireNotFrozen();\n\n if (SCHEDULE_CREATE_TRANSACTION.length != 1) {\n throw new Error(\n \"ScheduleCreateTransaction has not been loaded yet\"\n );\n }\n\n return SCHEDULE_CREATE_TRANSACTION[0]()._setScheduledTransaction(this);\n }\n\n /**\n * @template {Transaction} TransactionT\n * @param {TransactionT} transaction\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TransactionT}\n */\n static _fromProtobufTransactions(\n transaction,\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n\n const zero = new AccountId(0);\n for (let i = 0; i < nodeIds.length; i++) {\n if (nodeIds[i].equals(zero)) {\n nodeIds.splice(i--, 1);\n }\n }\n\n transaction._transactions.setList(transactions);\n transaction._signedTransactions.setList(signedTransactions).setLocked();\n transaction._transactionIds.setList(transactionIds).setLocked();\n transaction._nodeAccountIds.setList(nodeIds).setLocked();\n\n transaction._nextNodeAccountIdIndex = 0;\n transaction._nextTransactionIndex = 0;\n transaction._transactionValidDuration =\n body.transactionValidDuration != null &&\n body.transactionValidDuration.seconds != null\n ? Long.fromValue(body.transactionValidDuration.seconds).toInt()\n : DEFAULT_TRANSACTION_VALID_DURATION;\n transaction._maxTransactionFee =\n body.transactionFee != null\n ? Hbar.fromTinybars(body.transactionFee)\n : new Hbar(0);\n transaction._transactionMemo = body.memo != null ? body.memo : \"\";\n\n for (let i = 0; i < nodeIds.length; i++) {\n const signedTransaction = signedTransactions[i];\n if (\n signedTransaction.sigMap != null &&\n signedTransaction.sigMap.sigPair != null\n ) {\n for (const sigPair of signedTransaction.sigMap.sigPair) {\n transaction._signerPublicKeys.add(\n hex.encode(\n /** @type {Uint8Array} */ (sigPair.pubKeyPrefix)\n )\n );\n\n transaction._publicKeys.push(\n PublicKey.fromBytes(\n /** @type {Uint8Array} */ (sigPair.pubKeyPrefix)\n )\n );\n transaction._transactionSigners.push(null);\n }\n }\n }\n\n return transaction;\n }\n\n /**\n * @override\n * @param {AccountId[]} nodeIds\n * @returns {this}\n */\n setNodeAccountIds(nodeIds) {\n this._requireNotFrozen();\n super.setNodeAccountIds(nodeIds);\n return this;\n }\n\n /**\n * @returns {number}\n */\n get transactionValidDuration() {\n return this._transactionValidDuration;\n }\n\n /**\n * Sets the duration (in seconds) that this transaction is valid for.\n *\n * This is defaulted to 120 seconds (from the time its executed).\n *\n * @param {number} validDuration\n * @returns {this}\n */\n setTransactionValidDuration(validDuration) {\n this._requireNotFrozen();\n this._transactionValidDuration = validDuration;\n\n return this;\n }\n\n /**\n * @returns {?Hbar}\n */\n get maxTransactionFee() {\n return this._maxTransactionFee;\n }\n\n /**\n * Set the maximum transaction fee the operator (paying account)\n * is willing to pay.\n *\n * @param {number | string | Long | BigNumber | Hbar} maxTransactionFee\n * @returns {this}\n */\n setMaxTransactionFee(maxTransactionFee) {\n this._requireNotFrozen();\n this._maxTransactionFee =\n maxTransactionFee instanceof Hbar\n ? maxTransactionFee\n : new Hbar(maxTransactionFee);\n\n return this;\n }\n\n /**\n * @returns {?boolean}\n */\n get regenerateTransactionId() {\n return this._regenerateTransactionId;\n }\n\n /**\n * Set the maximum transaction fee the operator (paying account)\n * is willing to pay.\n *\n * @param {boolean} regenerateTransactionId\n * @returns {this}\n */\n setRegenerateTransactionId(regenerateTransactionId) {\n this._requireNotFrozen();\n this._regenerateTransactionId = regenerateTransactionId;\n\n return this;\n }\n\n /**\n * @returns {string}\n */\n get transactionMemo() {\n return this._transactionMemo;\n }\n\n /**\n * Set a note or description to be recorded in the transaction\n * record (maximum length of 100 bytes).\n *\n * @param {string} transactionMemo\n * @returns {this}\n */\n setTransactionMemo(transactionMemo) {\n this._requireNotFrozen();\n this._transactionMemo = transactionMemo;\n\n return this;\n }\n\n /**\n * @returns {TransactionId}\n */\n get transactionId() {\n this._transactionIds.setLocked();\n\n if (this._transactionIds.isEmpty) {\n throw new Error(\n \"transaction must have been frozen before getting the transaction ID, try calling `freeze`\"\n );\n }\n\n return this._transactionIds.next;\n }\n\n /**\n * Set the ID for this transaction.\n *\n * The transaction ID includes the operator's account ( the account paying the transaction\n * fee). If two transactions have the same transaction ID, they won't both have an effect. One\n * will complete normally and the other will fail with a duplicate transaction status.\n *\n * Normally, you should not use this method. Just before a transaction is executed, a\n * transaction ID will be generated from the operator on the client.\n *\n * @param {TransactionId} transactionId\n * @returns {this}\n */\n setTransactionId(transactionId) {\n this._requireNotFrozen();\n this._transactionIds.setList([transactionId]).setLocked();\n\n return this;\n }\n\n /**\n * @param {PrivateKey} privateKey\n * @returns {Promise}\n */\n sign(privateKey) {\n return this.signWith(privateKey.publicKey, (message) =>\n Promise.resolve(privateKey.sign(message))\n );\n }\n\n /**\n * @param {PublicKey} publicKey\n * @param {(message: Uint8Array) => Promise} transactionSigner\n * @returns {Promise}\n */\n async signWith(publicKey, transactionSigner) {\n if (!this._signOnDemand) {\n this._requireFrozen();\n }\n\n const publicKeyData = publicKey.toBytesRaw();\n\n // note: this omits the DER prefix on purpose because Hedera doesn't\n // support that in the protobuf. this means that we would fail\n // to re-inflate [this._signerPublicKeys] during [fromBytes] if we used DER\n // prefixes here\n const publicKeyHex = hex.encode(publicKeyData);\n\n if (this._signerPublicKeys.has(publicKeyHex)) {\n // this public key has already signed this transaction\n return this;\n }\n\n this._transactions.clear();\n this._signerPublicKeys.add(publicKeyHex);\n\n if (this._signOnDemand) {\n this._publicKeys.push(publicKey);\n this._transactionSigners.push(transactionSigner);\n\n return this;\n }\n\n for (const signedTransaction of this._signedTransactions.list) {\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n const signature = await transactionSigner(bodyBytes);\n\n if (signedTransaction.sigMap == null) {\n signedTransaction.sigMap = {};\n }\n\n if (signedTransaction.sigMap.sigPair == null) {\n signedTransaction.sigMap.sigPair = [];\n }\n\n signedTransaction.sigMap.sigPair.push(\n publicKey._toProtobufSignature(signature)\n );\n }\n\n return this;\n }\n\n /**\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n signWithOperator(client) {\n const operator = client._operator;\n\n if (operator == null) {\n throw new Error(\n \"`client` must have an operator to sign with the operator\"\n );\n }\n\n if (!this._isFrozen()) {\n this.freezeWith(client);\n }\n\n return this.signWith(operator.publicKey, operator.transactionSigner);\n }\n\n /**\n * @param {PublicKey} publicKey\n * @param {Uint8Array} signature\n * @returns {this}\n */\n addSignature(publicKey, signature) {\n this._requireOneNodeAccountId();\n\n if (!this.isFrozen()) {\n this.freeze();\n }\n\n const publicKeyData = publicKey.toBytesRaw();\n const publicKeyHex = hex.encode(publicKeyData);\n\n if (this._signerPublicKeys.has(publicKeyHex)) {\n // this public key has already signed this transaction\n return this;\n }\n\n this._transactions.clear();\n\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n this._transactionIds.setLocked();\n this._nodeAccountIds.setLocked();\n this._signedTransactions.setLocked();\n\n for (const transaction of this._signedTransactions.list) {\n if (transaction.sigMap == null) {\n transaction.sigMap = {};\n }\n\n if (transaction.sigMap.sigPair == null) {\n transaction.sigMap.sigPair = [];\n }\n\n transaction.sigMap.sigPair.push(\n publicKey._toProtobufSignature(signature)\n );\n }\n\n this._signerPublicKeys.add(publicKeyHex);\n this._publicKeys.push(publicKey);\n this._transactionSigners.push(null);\n\n return this;\n }\n\n /**\n * @returns {SignatureMap}\n */\n getSignatures() {\n this._requireFrozen();\n this._requireNotSignOnDemand();\n\n this._buildAllTransactions();\n\n this._transactionIds.setLocked();\n this._nodeAccountIds.setLocked();\n\n return SignatureMap._fromTransaction(this);\n }\n\n /**\n * @returns {Promise}\n */\n async getSignaturesAsync() {\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n if (!this._transactionIds.isEmpty) {\n this._transactionIds.setLocked();\n }\n\n if (!this._nodeAccountIds.isEmpty) {\n this._nodeAccountIds.setLocked();\n }\n\n await this._buildAllTransactionsAsync();\n\n this._transactions.setLocked();\n this._signedTransactions.setLocked();\n\n return SignatureMap._fromTransaction(this);\n }\n\n _setTransactionId() {\n if (this._operator == null && this._transactionIds.isEmpty) {\n throw new Error(\n \"`transactionId` must be set or `client` must be provided with `freezeWith`\"\n );\n }\n }\n\n /**\n * @param {?import(\"../client/Client.js\").default} client\n */\n _setNodeAccountIds(client) {\n if (!this._nodeAccountIds.isEmpty) {\n return;\n }\n\n if (client == null) {\n throw new Error(\n \"`nodeAccountId` must be set or `client` must be provided with `freezeWith`\"\n );\n }\n\n this._nodeAccountIds.setList(\n client._network.getNodeAccountIdsForExecute()\n );\n }\n\n _buildSignedTransactions() {\n if (this._signedTransactions.locked) {\n return;\n }\n\n this._signedTransactions.setList(\n this._nodeAccountIds.list.map((nodeId) =>\n this._makeSignedTransaction(nodeId)\n )\n );\n }\n\n /**\n * Freeze this transaction from future modification to prepare for\n * signing or serialization.\n *\n * @returns {this}\n */\n freeze() {\n return this.freezeWith(null);\n }\n\n /**\n * Freeze this transaction from further modification to prepare for\n * signing or serialization.\n *\n * Will use the `Client`, if available, to generate a default Transaction ID and select 1/3\n * nodes to prepare this transaction for.\n *\n * @param {?import(\"../client/Client.js\").default} client\n * @returns {this}\n */\n freezeWith(client) {\n this._signOnDemand = client != null ? client._signOnDemand : false;\n this._operator = client != null ? client._operator : null;\n this._maxTransactionFee =\n this._maxTransactionFee == null\n ? client != null && client.defaultMaxTransactionFee != null\n ? client.defaultMaxTransactionFee\n : this._defaultMaxTransactionFee\n : this._maxTransactionFee;\n this._regenerateTransactionId =\n client != null && this._regenerateTransactionId == null\n ? client.defaultRegenerateTransactionId\n : this._regenerateTransactionId;\n\n this._setNodeAccountIds(client);\n this._setTransactionId();\n\n if (client != null) {\n for (const transactionId of this._transactionIds.list) {\n if (transactionId.accountId != null) {\n transactionId.accountId.validateChecksum(client);\n }\n }\n }\n\n this._buildNewTransactionIdList();\n\n if (!this._signOnDemand) {\n this._buildSignedTransactions();\n }\n\n return this;\n }\n\n /**\n * Will error if sign-on-demand is enabled\n *\n * @returns {Uint8Array}\n */\n toBytes() {\n this._requireFrozen();\n this._requireNotSignOnDemand();\n\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n this._transactionIds.setLocked();\n this._nodeAccountIds.setLocked();\n\n this._buildAllTransactions();\n\n return ProtoTransactionList.encode({\n transactionList: /** @type {proto.ITransaction[]} */ (\n this._transactions.list\n ),\n }).finish();\n }\n\n /**\n * @returns {Promise}\n */\n async toBytesAsync() {\n this._requireFrozen();\n\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n this._transactionIds.setLocked();\n this._nodeAccountIds.setLocked();\n\n await this._buildAllTransactionsAsync();\n\n this._transactions.setLocked();\n this._signedTransactions.setLocked();\n\n return ProtoTransactionList.encode({\n transactionList: /** @type {proto.ITransaction[]} */ (\n this._transactions.list\n ),\n }).finish();\n }\n\n /**\n * @returns {Promise}\n */\n async getTransactionHash() {\n this._requireFrozen();\n\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n if (!this._transactionIds.isEmpty) {\n this._transactionIds.setLocked();\n }\n\n if (!this._nodeAccountIds.isEmpty) {\n this._nodeAccountIds.setLocked();\n }\n\n await this._buildAllTransactionsAsync();\n\n this._transactions.setLocked();\n this._signedTransactions.setLocked();\n\n return sha384.digest(\n /** @type {Uint8Array} */ (\n /** @type {proto.ITransaction} */ (this._transactions.get(0))\n .signedTransactionBytes\n )\n );\n }\n\n /**\n * @returns {Promise}\n */\n async getTransactionHashPerNode() {\n this._requireFrozen();\n\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n if (!this._transactionIds.isEmpty) {\n this._transactionIds.setLocked();\n }\n\n if (!this._nodeAccountIds.isEmpty) {\n this._nodeAccountIds.setLocked();\n }\n\n await this._buildAllTransactionsAsync();\n\n return await TransactionHashMap._fromTransaction(this);\n }\n\n isFrozen() {\n return this._signedTransactions.length > 0;\n }\n\n /**\n * @returns {TransactionId}\n */\n _getTransactionId() {\n return this.transactionId;\n }\n\n /**\n * @param {Client} client\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars,@typescript-eslint/no-empty-function\n _validateChecksums(client) {\n // Do nothing\n }\n\n /**\n * @override\n * @protected\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async _beforeExecute(client) {\n if (!this._isFrozen()) {\n this.freezeWith(client);\n }\n\n if (client.isAutoValidateChecksumsEnabled()) {\n this._validateChecksums(client);\n }\n\n if (this._operator != null) {\n await this.signWith(\n this._operator.publicKey,\n this._operator.transactionSigner\n );\n }\n }\n\n /**\n * @override\n * @internal\n * @returns {Promise}\n */\n async _makeRequestAsync() {\n const index =\n this._nextTransactionIndex * this._nodeAccountIds.length +\n this._nodeAccountIds.index;\n\n if (!this._signOnDemand) {\n this._buildTransaction(index);\n return /** @type {proto.ITransaction} */ (\n this._transactions.get(index)\n );\n }\n\n // Nothing is locked we can build a new transaction\n return await this._buildTransactionAsync();\n }\n\n /**\n * @internal\n * @returns {Promise}\n */\n async _signTransaction() {\n const signedTransaction = this._makeSignedTransaction(\n this._nodeAccountIds.next\n );\n\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n\n for (let j = 0; j < this._publicKeys.length; j++) {\n const publicKey = this._publicKeys[j];\n const transactionSigner = this._transactionSigners[j];\n\n if (transactionSigner == null) {\n continue;\n }\n\n const signature = await transactionSigner(bodyBytes);\n\n if (signedTransaction.sigMap == null) {\n signedTransaction.sigMap = {};\n }\n\n if (signedTransaction.sigMap.sigPair == null) {\n signedTransaction.sigMap.sigPair = [];\n }\n\n signedTransaction.sigMap.sigPair.push(\n publicKey._toProtobufSignature(signature)\n );\n }\n\n return signedTransaction;\n }\n\n _buildNewTransactionIdList() {\n if (this._transactionIds.locked || this._operator == null) {\n return;\n }\n\n const transactionId = TransactionId.withValidStart(\n this._operator.accountId,\n Timestamp.generate()\n );\n\n this._transactionIds.set(this._nextTransactionIndex, transactionId);\n }\n\n _buildAllTransactions() {\n for (let i = 0; i < this._signedTransactions.length; i++) {\n this._buildTransaction(i);\n }\n }\n\n async _buildAllTransactionsAsync() {\n this._buildSignedTransactions();\n\n if (this._transactions.locked) {\n return;\n }\n\n for (let i = 0; i < this._signedTransactions.length; i++) {\n this._transactions.push(await this._buildTransactionAsync());\n }\n }\n\n /**\n * @internal\n * @param {number} index\n */\n _buildTransaction(index) {\n if (this._transactions.length < index) {\n for (let i = this._transactions.length; i < index; i++) {\n this._transactions.push(null);\n }\n }\n\n this._transactions.setIfAbsent(index, () => {\n return {\n signedTransactionBytes: ProtoSignedTransaction.encode(\n this._signedTransactions.get(index)\n ).finish(),\n };\n });\n }\n\n /**\n * @internal\n * @returns {Promise}\n */\n async _buildTransactionAsync() {\n return {\n signedTransactionBytes: ProtoSignedTransaction.encode(\n await this._signTransaction()\n ).finish(),\n };\n }\n\n /**\n * @override\n * @internal\n * @param {proto.ITransaction} request\n * @param {proto.ITransactionResponse} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } = response;\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.PlatformTransactionNotCreated:\n return ExecutionState.Retry;\n case Status.Ok:\n return ExecutionState.Finished;\n case Status.TransactionExpired:\n if (\n this._regenerateTransactionId == null ||\n this._regenerateTransactionId\n ) {\n this._buildNewTransactionIdList();\n return ExecutionState.Retry;\n } else {\n return ExecutionState.Error;\n }\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.ITransaction} request\n * @param {proto.ITransactionResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } = response;\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n /**\n * @override\n * @protected\n * @param {proto.ITransactionResponse} response\n * @param {AccountId} nodeId\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n async _mapResponse(response, nodeId, request) {\n const transactionHash = await sha384.digest(\n /** @type {Uint8Array} */ (request.signedTransactionBytes)\n );\n const transactionId = this.transactionId;\n\n this._nextTransactionIndex =\n (this._nextTransactionIndex + 1) % this._transactionIds.length;\n\n this._transactionIds.advance();\n\n return new TransactionResponse({\n nodeId,\n transactionHash,\n transactionId,\n });\n }\n\n /**\n * @override\n * @returns {AccountId}\n */\n _getNodeAccountId() {\n if (this._nodeAccountIds.isEmpty) {\n throw new Error(\n \"(BUG) Transaction::_getNodeAccountId called before transaction has been frozen\"\n );\n }\n\n return this._nodeAccountIds.list[\n this._nextNodeAccountIdIndex % this._nodeAccountIds.length\n ];\n }\n\n /**\n * @internal\n * @param {?AccountId} nodeId\n * @returns {proto.ISignedTransaction}\n */\n _makeSignedTransaction(nodeId) {\n const body = this._makeTransactionBody(nodeId);\n const bodyBytes = ProtoTransactionBody.encode(body).finish();\n\n return {\n bodyBytes,\n sigMap: {\n sigPair: [],\n },\n };\n }\n\n /**\n * @private\n * @param {?AccountId} nodeId\n * @returns {proto.ITransactionBody}\n */\n _makeTransactionBody(nodeId) {\n return {\n [this._getTransactionDataCase()]: this._makeTransactionData(),\n transactionFee:\n this._maxTransactionFee != null\n ? this._maxTransactionFee.toTinybars()\n : null,\n memo: this._transactionMemo,\n transactionID: this._transactionIds.current._toProtobuf(),\n nodeAccountID: nodeId != null ? nodeId._toProtobuf() : null,\n transactionValidDuration: {\n seconds: Long.fromNumber(this._transactionValidDuration),\n },\n };\n }\n\n /**\n * @abstract\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @returns {proto.ISchedulableTransactionBody}\n */\n _getScheduledTransactionBody() {\n return {\n memo: this.transactionMemo,\n transactionFee:\n this.maxTransactionFee != null\n ? this.maxTransactionFee.toTinybars()\n : null,\n [this._getTransactionDataCase()]: this._makeTransactionData(),\n };\n }\n\n /**\n * @abstract\n * @protected\n * @returns {object}\n */\n _makeTransactionData() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @returns {boolean}\n */\n _isFrozen() {\n return (\n this._signOnDemand ||\n this._signedTransactions.length > 0 ||\n this._transactions.length > 0\n );\n }\n\n /**\n * @internal\n */\n _requireNotFrozen() {\n if (this._isFrozen()) {\n throw new Error(\n \"transaction is immutable; it has at least one signature or has been explicitly frozen\"\n );\n }\n }\n\n /**\n * @internal\n */\n _requireNotSignOnDemand() {\n if (this._signOnDemand) {\n throw new Error(\n \"Please use `toBytesAsync()` if `signOnDemand` is enabled\"\n );\n }\n }\n\n /**\n * @internal\n */\n _requireFrozen() {\n if (!this._isFrozen()) {\n throw new Error(\n \"transaction must have been frozen before calculating the hash will be stable, try calling `freeze`\"\n );\n }\n }\n\n /**\n * @internal\n * @protected\n */\n _requireOneNodeAccountId() {\n if (this._nodeAccountIds.length != 1) {\n throw \"transaction did not have exactly one node ID set\";\n }\n }\n}\n\n/**\n * @type {(() => ScheduleCreateTransaction)[]}\n */\nexport const SCHEDULE_CREATE_TRANSACTION = [];\n","import Hbar from \"../Hbar.js\";\nimport TransactionResponse from \"./TransactionResponse.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport TransactionHashMap from \"./TransactionHashMap.js\";\nimport SignatureMap from \"./SignatureMap.js\";\nimport Executable, { ExecutionState } from \"../Executable.js\";\nimport Status from \"../Status.js\";\nimport Long from \"long\";\nimport * as sha384 from \"../cryptography/sha384.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport {\n Transaction as ProtoTransaction,\n SignedTransaction as ProtoSignedTransaction,\n TransactionList as ProtoTransactionList,\n TransactionBody as ProtoTransactionBody,\n ResponseCodeEnum,\n} from \"@hashgraph/proto\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport PublicKey from \"../PublicKey.js\";\nimport List from \"./List.js\";\nimport Timestamp from \"../Timestamp.js\";\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignatureMap} proto.ISignatureMap\n * @typedef {import(\"@hashgraph/proto\").ISignaturePair} proto.ISignaturePair\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").ITransactionList} proto.ITransactionList\n * @typedef {import(\"@hashgraph/proto\").ITransactionID} proto.ITransactionID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ISchedulableTransactionBody} proto.ISchedulableTransactionBody\n */\n\n/**\n * @typedef {import(\"../schedule/ScheduleCreateTransaction.js\").default} ScheduleCreateTransaction\n * @typedef {import(\"../PrivateKey.js\").default} PrivateKey\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n// 90 days (in seconds)\nexport const DEFAULT_AUTO_RENEW_PERIOD = Long.fromValue(7776000);\n\n// maximum value of i64 (so there is never a record generated)\nexport const DEFAULT_RECORD_THRESHOLD = Hbar.fromTinybars(\n Long.fromString(\"9223372036854775807\")\n);\n\n// 120 seconds\nconst DEFAULT_TRANSACTION_VALID_DURATION = 120;\n\nexport const CHUNK_SIZE = 1024;\n\n/**\n * @type {Map, (transactions: proto.ITransaction[], signedTransactions: proto.ISignedTransaction[], transactionIds: TransactionId[], nodeIds: AccountId[], bodies: proto.TransactionBody[]) => Transaction>}\n */\nexport const TRANSACTION_REGISTRY = new Map();\n\n/**\n * Base class for all transactions that may be submitted to Hedera.\n *\n * @abstract\n * @augments {Executable}\n */\nexport default class Transaction extends Executable {\n // A SDK transaction is composed of multiple, raw protobuf transactions.\n // These should be functionally identicasl, with the exception of pointing to\n // different nodes.\n\n // When retrying a transaction after a network error or retry-able\n // status response, we try a different transaction and thus a different node.\n\n constructor() {\n super();\n\n /**\n * List of proto transactions that have been built from this SDK\n * transaction. Each one should share the same transaction ID.\n *\n * @internal\n * @type {List}\n */\n this._transactions = new List();\n\n /**\n * List of proto transactions that have been built from this SDK\n * transaction. Each one should share the same transaction ID.\n *\n * @internal\n * @type {List}\n */\n this._signedTransactions = new List();\n\n /**\n * Set of public keys (as string) who have signed this transaction so\n * we do not allow them to sign it again.\n *\n * @internal\n * @type {Set}\n */\n this._signerPublicKeys = new Set();\n\n /**\n * @protected\n * @type {number}\n */\n this._nextTransactionIndex = 0;\n\n /**\n * @private\n * @type {number}\n */\n this._transactionValidDuration = DEFAULT_TRANSACTION_VALID_DURATION;\n\n /**\n * @protected\n * @type {Hbar}\n */\n this._defaultMaxTransactionFee = new Hbar(2);\n\n /**\n * @private\n * @type {Hbar | null}\n */\n this._maxTransactionFee = null;\n\n /**\n * @private\n * @type {string}\n */\n this._transactionMemo = \"\";\n\n /**\n * @protected\n * @type {List}\n */\n this._transactionIds = new List();\n\n /**\n * @private\n * @type {AccountId | null}\n */\n this._operatorAccountId = null;\n\n /**\n * @private\n * @type {PublicKey[]}\n */\n this._publicKeys = [];\n\n /**\n * @private\n * @type {(((message: Uint8Array) => Promise) | null)[]}\n */\n this._transactionSigners = [];\n\n /**\n * @private\n * @type {?boolean}\n */\n this._regenerateTransactionId = null;\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {Transaction}\n */\n static fromBytes(bytes) {\n const signedTransactions = [];\n const transactionIds = [];\n const nodeIds = [];\n\n /** @type {string[]} */\n const transactionIdStrings = [];\n\n /** @type {string[]} */\n const nodeIdStrings = [];\n\n const bodies = [];\n\n const list = ProtoTransactionList.decode(bytes).transactionList;\n\n if (list.length === 0) {\n const transaction = ProtoTransaction.decode(bytes);\n\n if (transaction.signedTransactionBytes.length !== 0) {\n list.push(transaction);\n } else {\n list.push({\n signedTransactionBytes: ProtoSignedTransaction.encode({\n bodyBytes: transaction.bodyBytes,\n sigMap: transaction.sigMap,\n }).finish(),\n });\n }\n }\n\n for (const transaction of list) {\n if (transaction.signedTransactionBytes == null) {\n throw new Error(\"Transaction.signedTransactionBytes are null\");\n }\n\n const signedTransaction = ProtoSignedTransaction.decode(\n transaction.signedTransactionBytes\n );\n signedTransactions.push(signedTransaction);\n\n const body = ProtoTransactionBody.decode(\n signedTransaction.bodyBytes\n );\n\n if (body.data == null) {\n throw new Error(\"(BUG) body.data was not set in the protobuf\");\n }\n\n bodies.push(body);\n\n if (body.transactionID != null) {\n const transactionId = TransactionId._fromProtobuf(\n /** @type {proto.ITransactionID} */ (body.transactionID)\n );\n\n if (!transactionIdStrings.includes(transactionId.toString())) {\n transactionIds.push(transactionId);\n transactionIdStrings.push(transactionId.toString());\n }\n }\n\n if (body.nodeAccountID != null) {\n const nodeAccountId = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (body.nodeAccountID)\n );\n\n if (!nodeIdStrings.includes(nodeAccountId.toString())) {\n nodeIds.push(nodeAccountId);\n nodeIdStrings.push(nodeAccountId.toString());\n }\n }\n }\n\n const body = bodies[0];\n\n if (body == null || body.data == null) {\n throw new Error(\n \"No transaction found in bytes or failed to decode TransactionBody\"\n );\n }\n\n const fromProtobuf = TRANSACTION_REGISTRY.get(body.data);\n\n if (fromProtobuf == null) {\n throw new Error(\n `(BUG) Transaction.fromBytes() not implemented for type ${body.data}`\n );\n }\n\n return fromProtobuf(\n list,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {ScheduleCreateTransaction}\n */\n schedule() {\n this._requireNotFrozen();\n\n if (SCHEDULE_CREATE_TRANSACTION.length != 1) {\n throw new Error(\n \"ScheduleCreateTransaction has not been loaded yet\"\n );\n }\n\n return SCHEDULE_CREATE_TRANSACTION[0]()._setScheduledTransaction(this);\n }\n\n /**\n * @template {Transaction} TransactionT\n * @param {TransactionT} transaction\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TransactionT}\n */\n static _fromProtobufTransactions(\n transaction,\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n\n const zero = new AccountId(0);\n for (let i = 0; i < nodeIds.length; i++) {\n if (nodeIds[i].equals(zero)) {\n nodeIds.splice(i--, 1);\n }\n }\n\n transaction._transactions.setList(transactions);\n transaction._signedTransactions.setList(signedTransactions).setLocked();\n transaction._transactionIds.setList(transactionIds).setLocked();\n transaction._nodeAccountIds.setList(nodeIds).setLocked();\n\n transaction._nextNodeAccountIdIndex = 0;\n transaction._nextTransactionIndex = 0;\n transaction._transactionValidDuration =\n body.transactionValidDuration != null &&\n body.transactionValidDuration.seconds != null\n ? Long.fromValue(body.transactionValidDuration.seconds).toInt()\n : DEFAULT_TRANSACTION_VALID_DURATION;\n transaction._maxTransactionFee =\n body.transactionFee != null\n ? Hbar.fromTinybars(body.transactionFee)\n : new Hbar(0);\n transaction._transactionMemo = body.memo != null ? body.memo : \"\";\n\n for (let i = 0; i < nodeIds.length; i++) {\n const signedTransaction = signedTransactions[i];\n if (\n signedTransaction.sigMap != null &&\n signedTransaction.sigMap.sigPair != null\n ) {\n for (const sigPair of signedTransaction.sigMap.sigPair) {\n transaction._signerPublicKeys.add(\n hex.encode(\n /** @type {Uint8Array} */ (sigPair.pubKeyPrefix)\n )\n );\n\n transaction._publicKeys.push(\n PublicKey.fromBytes(\n /** @type {Uint8Array} */ (sigPair.pubKeyPrefix)\n )\n );\n transaction._transactionSigners.push(null);\n }\n }\n }\n\n return transaction;\n }\n\n /**\n * @override\n * @param {AccountId[]} nodeIds\n * @returns {this}\n */\n setNodeAccountIds(nodeIds) {\n this._requireNotFrozen();\n super.setNodeAccountIds(nodeIds);\n return this;\n }\n\n /**\n * @returns {number}\n */\n get transactionValidDuration() {\n return this._transactionValidDuration;\n }\n\n /**\n * Sets the duration (in seconds) that this transaction is valid for.\n *\n * This is defaulted to 120 seconds (from the time its executed).\n *\n * @param {number} validDuration\n * @returns {this}\n */\n setTransactionValidDuration(validDuration) {\n this._requireNotFrozen();\n this._transactionValidDuration = validDuration;\n\n return this;\n }\n\n /**\n * @returns {?Hbar}\n */\n get maxTransactionFee() {\n return this._maxTransactionFee;\n }\n\n /**\n * Set the maximum transaction fee the operator (paying account)\n * is willing to pay.\n *\n * @param {number | string | Long | BigNumber | Hbar} maxTransactionFee\n * @returns {this}\n */\n setMaxTransactionFee(maxTransactionFee) {\n this._requireNotFrozen();\n this._maxTransactionFee =\n maxTransactionFee instanceof Hbar\n ? maxTransactionFee\n : new Hbar(maxTransactionFee);\n\n return this;\n }\n\n /**\n * @returns {?boolean}\n */\n get regenerateTransactionId() {\n return this._regenerateTransactionId;\n }\n\n /**\n * Set the maximum transaction fee the operator (paying account)\n * is willing to pay.\n *\n * @param {boolean} regenerateTransactionId\n * @returns {this}\n */\n setRegenerateTransactionId(regenerateTransactionId) {\n this._requireNotFrozen();\n this._regenerateTransactionId = regenerateTransactionId;\n\n return this;\n }\n\n /**\n * @returns {string}\n */\n get transactionMemo() {\n return this._transactionMemo;\n }\n\n /**\n * Set a note or description to be recorded in the transaction\n * record (maximum length of 100 bytes).\n *\n * @param {string} transactionMemo\n * @returns {this}\n */\n setTransactionMemo(transactionMemo) {\n this._requireNotFrozen();\n this._transactionMemo = transactionMemo;\n\n return this;\n }\n\n /**\n * @returns {TransactionId}\n */\n get transactionId() {\n this._transactionIds.setLocked();\n\n if (this._transactionIds.isEmpty) {\n throw new Error(\n \"transaction must have been frozen before getting the transaction ID, try calling `freeze`\"\n );\n }\n\n return this._transactionIds.next;\n }\n\n /**\n * Set the ID for this transaction.\n *\n * The transaction ID includes the operator's account ( the account paying the transaction\n * fee). If two transactions have the same transaction ID, they won't both have an effect. One\n * will complete normally and the other will fail with a duplicate transaction status.\n *\n * Normally, you should not use this method. Just before a transaction is executed, a\n * transaction ID will be generated from the operator on the client.\n *\n * @param {TransactionId} transactionId\n * @returns {this}\n */\n setTransactionId(transactionId) {\n this._requireNotFrozen();\n this._transactionIds.setList([transactionId]).setLocked();\n\n return this;\n }\n\n /**\n * @param {PrivateKey} privateKey\n * @returns {Promise}\n */\n sign(privateKey) {\n return this.signWith(privateKey.publicKey, (message) =>\n Promise.resolve(privateKey.sign(message))\n );\n }\n\n /**\n * @param {PublicKey} publicKey\n * @param {(message: Uint8Array) => Promise} transactionSigner\n * @returns {Promise}\n */\n async signWith(publicKey, transactionSigner) {\n if (!this._signOnDemand) {\n this._requireFrozen();\n }\n\n const publicKeyData = publicKey.toBytesRaw();\n\n // note: this omits the DER prefix on purpose because Hedera doesn't\n // support that in the protobuf. this means that we would fail\n // to re-inflate [this._signerPublicKeys] during [fromBytes] if we used DER\n // prefixes here\n const publicKeyHex = hex.encode(publicKeyData);\n\n if (this._signerPublicKeys.has(publicKeyHex)) {\n // this public key has already signed this transaction\n return this;\n }\n\n this._transactions.clear();\n this._signerPublicKeys.add(publicKeyHex);\n\n if (this._signOnDemand) {\n this._publicKeys.push(publicKey);\n this._transactionSigners.push(transactionSigner);\n\n return this;\n }\n\n for (const signedTransaction of this._signedTransactions.list) {\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n const signature = await transactionSigner(bodyBytes);\n\n if (signedTransaction.sigMap == null) {\n signedTransaction.sigMap = {};\n }\n\n if (signedTransaction.sigMap.sigPair == null) {\n signedTransaction.sigMap.sigPair = [];\n }\n\n signedTransaction.sigMap.sigPair.push(\n publicKey._toProtobufSignature(signature)\n );\n }\n\n return this;\n }\n\n /**\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n signWithOperator(client) {\n const operator = client._operator;\n\n if (operator == null) {\n throw new Error(\n \"`client` must have an operator to sign with the operator\"\n );\n }\n\n if (!this._isFrozen()) {\n this.freezeWith(client);\n }\n\n return this.signWith(operator.publicKey, operator.transactionSigner);\n }\n\n /**\n * @param {PublicKey} publicKey\n * @param {Uint8Array} signature\n * @returns {this}\n */\n addSignature(publicKey, signature) {\n this._requireOneNodeAccountId();\n\n if (!this.isFrozen()) {\n this.freeze();\n }\n\n const publicKeyData = publicKey.toBytesRaw();\n const publicKeyHex = hex.encode(publicKeyData);\n\n if (this._signerPublicKeys.has(publicKeyHex)) {\n // this public key has already signed this transaction\n return this;\n }\n\n this._transactions.clear();\n\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n this._transactionIds.setLocked();\n this._nodeAccountIds.setLocked();\n this._signedTransactions.setLocked();\n\n for (const transaction of this._signedTransactions.list) {\n if (transaction.sigMap == null) {\n transaction.sigMap = {};\n }\n\n if (transaction.sigMap.sigPair == null) {\n transaction.sigMap.sigPair = [];\n }\n\n transaction.sigMap.sigPair.push(\n publicKey._toProtobufSignature(signature)\n );\n }\n\n this._signerPublicKeys.add(publicKeyHex);\n this._publicKeys.push(publicKey);\n this._transactionSigners.push(null);\n\n return this;\n }\n\n /**\n * @returns {SignatureMap}\n */\n getSignatures() {\n this._requireFrozen();\n this._requireNotSignOnDemand();\n\n this._buildAllTransactions();\n\n this._transactionIds.setLocked();\n this._nodeAccountIds.setLocked();\n\n return SignatureMap._fromTransaction(this);\n }\n\n /**\n * @returns {Promise}\n */\n async getSignaturesAsync() {\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n if (!this._transactionIds.isEmpty) {\n this._transactionIds.setLocked();\n }\n\n if (!this._nodeAccountIds.isEmpty) {\n this._nodeAccountIds.setLocked();\n }\n\n await this._buildAllTransactionsAsync();\n\n this._transactions.setLocked();\n this._signedTransactions.setLocked();\n\n return SignatureMap._fromTransaction(this);\n }\n\n _setTransactionId() {\n if (this._operator == null && this._transactionIds.isEmpty) {\n throw new Error(\n \"`transactionId` must be set or `client` must be provided with `freezeWith`\"\n );\n }\n }\n\n /**\n * @param {?import(\"../client/Client.js\").default} client\n */\n _setNodeAccountIds(client) {\n if (!this._nodeAccountIds.isEmpty) {\n return;\n }\n\n if (client == null) {\n throw new Error(\n \"`nodeAccountId` must be set or `client` must be provided with `freezeWith`\"\n );\n }\n\n this._nodeAccountIds.setList(\n client._network.getNodeAccountIdsForExecute()\n );\n }\n\n _buildSignedTransactions() {\n if (this._signedTransactions.locked) {\n return;\n }\n\n this._signedTransactions.setList(\n this._nodeAccountIds.list.map((nodeId) =>\n this._makeSignedTransaction(nodeId)\n )\n );\n }\n\n /**\n * Freeze this transaction from future modification to prepare for\n * signing or serialization.\n *\n * @returns {this}\n */\n freeze() {\n return this.freezeWith(null);\n }\n\n /**\n * Freeze this transaction from further modification to prepare for\n * signing or serialization.\n *\n * Will use the `Client`, if available, to generate a default Transaction ID and select 1/3\n * nodes to prepare this transaction for.\n *\n * @param {?import(\"../client/Client.js\").default} client\n * @returns {this}\n */\n freezeWith(client) {\n this._signOnDemand = client != null ? client._signOnDemand : false;\n this._operator = client != null ? client._operator : null;\n this._maxTransactionFee =\n this._maxTransactionFee == null\n ? client != null && client.defaultMaxTransactionFee != null\n ? client.defaultMaxTransactionFee\n : this._defaultMaxTransactionFee\n : this._maxTransactionFee;\n this._regenerateTransactionId =\n client != null && this._regenerateTransactionId == null\n ? client.defaultRegenerateTransactionId\n : this._regenerateTransactionId;\n\n this._setNodeAccountIds(client);\n this._setTransactionId();\n\n if (client != null) {\n for (const transactionId of this._transactionIds.list) {\n if (transactionId.accountId != null) {\n transactionId.accountId.validateChecksum(client);\n }\n }\n }\n\n this._buildNewTransactionIdList();\n\n if (!this._signOnDemand) {\n this._buildSignedTransactions();\n }\n\n return this;\n }\n\n /**\n * Will error if sign-on-demand is enabled\n *\n * @returns {Uint8Array}\n */\n toBytes() {\n this._requireFrozen();\n this._requireNotSignOnDemand();\n\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n this._transactionIds.setLocked();\n this._nodeAccountIds.setLocked();\n\n this._buildAllTransactions();\n\n return ProtoTransactionList.encode({\n transactionList: /** @type {proto.ITransaction[]} */ (\n this._transactions.list\n ),\n }).finish();\n }\n\n /**\n * @returns {Promise}\n */\n async toBytesAsync() {\n this._requireFrozen();\n\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n this._transactionIds.setLocked();\n this._nodeAccountIds.setLocked();\n\n await this._buildAllTransactionsAsync();\n\n this._transactions.setLocked();\n this._signedTransactions.setLocked();\n\n return ProtoTransactionList.encode({\n transactionList: /** @type {proto.ITransaction[]} */ (\n this._transactions.list\n ),\n }).finish();\n }\n\n /**\n * @returns {Promise}\n */\n async getTransactionHash() {\n this._requireFrozen();\n\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n if (!this._transactionIds.isEmpty) {\n this._transactionIds.setLocked();\n }\n\n if (!this._nodeAccountIds.isEmpty) {\n this._nodeAccountIds.setLocked();\n }\n\n await this._buildAllTransactionsAsync();\n\n this._transactions.setLocked();\n this._signedTransactions.setLocked();\n\n return sha384.digest(\n /** @type {Uint8Array} */ (\n /** @type {proto.ITransaction} */ (this._transactions.get(0))\n .signedTransactionBytes\n )\n );\n }\n\n /**\n * @returns {Promise}\n */\n async getTransactionHashPerNode() {\n this._requireFrozen();\n\n // Locking the transaction IDs and node account IDs is necessary for consistency\n // between before and after execution\n if (!this._transactionIds.isEmpty) {\n this._transactionIds.setLocked();\n }\n\n if (!this._nodeAccountIds.isEmpty) {\n this._nodeAccountIds.setLocked();\n }\n\n await this._buildAllTransactionsAsync();\n\n return await TransactionHashMap._fromTransaction(this);\n }\n\n isFrozen() {\n return this._signedTransactions.length > 0;\n }\n\n /**\n * @returns {TransactionId}\n */\n _getTransactionId() {\n return this.transactionId;\n }\n\n /**\n * @param {Client} client\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars,@typescript-eslint/no-empty-function\n _validateChecksums(client) {\n // Do nothing\n }\n\n /**\n * @override\n * @protected\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async _beforeExecute(client) {\n if (!this._isFrozen()) {\n this.freezeWith(client);\n }\n\n if (client.isAutoValidateChecksumsEnabled()) {\n this._validateChecksums(client);\n }\n\n if (this._operator != null) {\n await this.signWith(\n this._operator.publicKey,\n this._operator.transactionSigner\n );\n }\n }\n\n /**\n * @override\n * @internal\n * @returns {Promise}\n */\n async _makeRequestAsync() {\n const index =\n this._nextTransactionIndex * this._nodeAccountIds.length +\n this._nodeAccountIds.index;\n\n if (!this._signOnDemand) {\n this._buildTransaction(index);\n return /** @type {proto.ITransaction} */ (\n this._transactions.get(index)\n );\n }\n\n // Nothing is locked we can build a new transaction\n return await this._buildTransactionAsync();\n }\n\n /**\n * @internal\n * @returns {Promise}\n */\n async _signTransaction() {\n const signedTransaction = this._makeSignedTransaction(\n this._nodeAccountIds.next\n );\n\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n\n for (let j = 0; j < this._publicKeys.length; j++) {\n const publicKey = this._publicKeys[j];\n const transactionSigner = this._transactionSigners[j];\n\n if (transactionSigner == null) {\n continue;\n }\n\n const signature = await transactionSigner(bodyBytes);\n\n if (signedTransaction.sigMap == null) {\n signedTransaction.sigMap = {};\n }\n\n if (signedTransaction.sigMap.sigPair == null) {\n signedTransaction.sigMap.sigPair = [];\n }\n\n signedTransaction.sigMap.sigPair.push(\n publicKey._toProtobufSignature(signature)\n );\n }\n\n return signedTransaction;\n }\n\n _buildNewTransactionIdList() {\n if (this._transactionIds.locked || this._operator == null) {\n return;\n }\n\n const transactionId = TransactionId.withValidStart(\n this._operator.accountId,\n Timestamp.generate()\n );\n\n this._transactionIds.set(this._nextTransactionIndex, transactionId);\n }\n\n _buildAllTransactions() {\n for (let i = 0; i < this._signedTransactions.length; i++) {\n this._buildTransaction(i);\n }\n }\n\n async _buildAllTransactionsAsync() {\n this._buildSignedTransactions();\n\n if (this._transactions.locked) {\n return;\n }\n\n for (let i = 0; i < this._signedTransactions.length; i++) {\n this._transactions.push(await this._buildTransactionAsync());\n }\n }\n\n /**\n * @internal\n * @param {number} index\n */\n _buildTransaction(index) {\n if (this._transactions.length < index) {\n for (let i = this._transactions.length; i < index; i++) {\n this._transactions.push(null);\n }\n }\n\n this._transactions.setIfAbsent(index, () => {\n return {\n signedTransactionBytes: ProtoSignedTransaction.encode(\n this._signedTransactions.get(index)\n ).finish(),\n };\n });\n }\n\n /**\n * @internal\n * @returns {Promise}\n */\n async _buildTransactionAsync() {\n return {\n signedTransactionBytes: ProtoSignedTransaction.encode(\n await this._signTransaction()\n ).finish(),\n };\n }\n\n /**\n * @override\n * @internal\n * @param {proto.ITransaction} request\n * @param {proto.ITransactionResponse} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } = response;\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.PlatformTransactionNotCreated:\n return ExecutionState.Retry;\n case Status.Ok:\n return ExecutionState.Finished;\n case Status.TransactionExpired:\n if (\n this._regenerateTransactionId == null ||\n this._regenerateTransactionId\n ) {\n this._buildNewTransactionIdList();\n return ExecutionState.Retry;\n } else {\n return ExecutionState.Error;\n }\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.ITransaction} request\n * @param {proto.ITransactionResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } = response;\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n /**\n * @override\n * @protected\n * @param {proto.ITransactionResponse} response\n * @param {AccountId} nodeId\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n async _mapResponse(response, nodeId, request) {\n const transactionHash = await sha384.digest(\n /** @type {Uint8Array} */ (request.signedTransactionBytes)\n );\n const transactionId = this.transactionId;\n\n this._nextTransactionIndex =\n (this._nextTransactionIndex + 1) % this._transactionIds.length;\n\n this._transactionIds.advance();\n\n return new TransactionResponse({\n nodeId,\n transactionHash,\n transactionId,\n });\n }\n\n /**\n * @override\n * @returns {AccountId}\n */\n _getNodeAccountId() {\n if (this._nodeAccountIds.isEmpty) {\n throw new Error(\n \"(BUG) Transaction::_getNodeAccountId called before transaction has been frozen\"\n );\n }\n\n return this._nodeAccountIds.list[\n this._nextNodeAccountIdIndex % this._nodeAccountIds.length\n ];\n }\n\n /**\n * @internal\n * @param {?AccountId} nodeId\n * @returns {proto.ISignedTransaction}\n */\n _makeSignedTransaction(nodeId) {\n const body = this._makeTransactionBody(nodeId);\n const bodyBytes = ProtoTransactionBody.encode(body).finish();\n\n return {\n bodyBytes,\n sigMap: {\n sigPair: [],\n },\n };\n }\n\n /**\n * @private\n * @param {?AccountId} nodeId\n * @returns {proto.ITransactionBody}\n */\n _makeTransactionBody(nodeId) {\n return {\n [this._getTransactionDataCase()]: this._makeTransactionData(),\n transactionFee:\n this._maxTransactionFee != null\n ? this._maxTransactionFee.toTinybars()\n : null,\n memo: this._transactionMemo,\n transactionID: this._transactionIds.current._toProtobuf(),\n nodeAccountID: nodeId != null ? nodeId._toProtobuf() : null,\n transactionValidDuration: {\n seconds: Long.fromNumber(this._transactionValidDuration),\n },\n };\n }\n\n /**\n * @abstract\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @returns {proto.ISchedulableTransactionBody}\n */\n _getScheduledTransactionBody() {\n return {\n memo: this.transactionMemo,\n transactionFee:\n this.maxTransactionFee != null\n ? this.maxTransactionFee.toTinybars()\n : null,\n [this._getTransactionDataCase()]: this._makeTransactionData(),\n };\n }\n\n /**\n * @abstract\n * @protected\n * @returns {object}\n */\n _makeTransactionData() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @returns {boolean}\n */\n _isFrozen() {\n return (\n this._signOnDemand ||\n this._signedTransactions.length > 0 ||\n this._transactions.length > 0\n );\n }\n\n /**\n * @internal\n */\n _requireNotFrozen() {\n if (this._isFrozen()) {\n throw new Error(\n \"transaction is immutable; it has at least one signature or has been explicitly frozen\"\n );\n }\n }\n\n /**\n * @internal\n */\n _requireNotSignOnDemand() {\n if (this._signOnDemand) {\n throw new Error(\n \"Please use `toBytesAsync()` if `signOnDemand` is enabled\"\n );\n }\n }\n\n /**\n * @internal\n */\n _requireFrozen() {\n if (!this._isFrozen()) {\n throw new Error(\n \"transaction must have been frozen before calculating the hash will be stable, try calling `freeze`\"\n );\n }\n }\n\n /**\n * @internal\n * @protected\n */\n _requireOneNodeAccountId() {\n if (this._nodeAccountIds.length != 1) {\n throw \"transaction did not have exactly one node ID set\";\n }\n }\n}\n\n/**\n * @type {(() => ScheduleCreateTransaction)[]}\n */\nexport const SCHEDULE_CREATE_TRANSACTION = [];\n","var superPropBase = require(\"./superPropBase.js\");\n\nfunction _get(target, property, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n module.exports = _get = Reflect.get;\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n } else {\n module.exports = _get = function _get(target, property, receiver) {\n var base = superPropBase(target, property);\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.get) {\n return desc.get.call(receiver);\n }\n\n return desc.value;\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n }\n\n return _get(target, property, receiver || target);\n}\n\nmodule.exports = _get;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","import Hbar from \"../Hbar.js\";\nimport TransactionResponse from \"./TransactionResponse.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport TransactionHashMap from \"./TransactionHashMap.js\";\nimport SignatureMap from \"./SignatureMap.js\";\nimport Executable, { ExecutionState } from \"../Executable.js\";\nimport Status from \"../Status.js\";\nimport Long from \"long\";\nimport * as sha384 from \"../cryptography/sha384.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport {\n Transaction as ProtoTransaction,\n SignedTransaction as ProtoSignedTransaction,\n TransactionList as ProtoTransactionList,\n TransactionBody as ProtoTransactionBody,\n ResponseCodeEnum,\n} from \"@hashgraph/proto\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport { arrayEqual } from \"../array.js\";\nimport PublicKey from \"../PublicKey.js\";\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignaturePair} proto.ISignaturePair\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").ITransactionList} proto.ITransactionList\n * @typedef {import(\"@hashgraph/proto\").ITransactionID} proto.ITransactionID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ISchedulableTransactionBody} proto.ISchedulableTransactionBody\n */\n\n/**\n * @typedef {import(\"../schedule/ScheduleCreateTransaction.js\").default} ScheduleCreateTransaction\n * @typedef {import(\"../PrivateKey.js\").default} PrivateKey\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n// 90 days (in seconds)\nexport const DEFAULT_AUTO_RENEW_PERIOD = Long.fromValue(7776000);\n\n// maximum value of i64 (so there is never a record generated)\nexport const DEFAULT_RECORD_THRESHOLD = Hbar.fromTinybars(\n Long.fromString(\"9223372036854775807\")\n);\n\n// 120 seconds\nconst DEFAULT_TRANSACTION_VALID_DURATION = 120;\n\nexport const CHUNK_SIZE = 1024;\n\n/**\n * @type {Map, (transactions: proto.ITransaction[], signedTransactions: proto.ISignedTransaction[], transactionIds: TransactionId[], nodeIds: AccountId[], bodies: proto.TransactionBody[]) => Transaction>}\n */\nexport const TRANSACTION_REGISTRY = new Map();\n\n/**\n * Base class for all transactions that may be submitted to Hedera.\n *\n * @abstract\n * @augments {Executable}\n */\nexport default class Transaction extends Executable {\n // A SDK transaction is composed of multiple, raw protobuf transactions.\n // These should be functionally identicasl, with the exception of pointing to\n // different nodes.\n\n // When retrying a transaction after a network error or retry-able\n // status response, we try a different transaction and thus a different node.\n\n constructor() {\n super();\n\n /**\n * List of proto transactions that have been built from this SDK\n * transaction. Each one should share the same transaction ID.\n *\n * @internal\n * @type {(proto.ITransaction | null)[]}\n */\n this._transactions = [];\n\n /**\n * List of proto transactions that have been built from this SDK\n * transaction. Each one should share the same transaction ID.\n *\n * @internal\n * @type {proto.ISignedTransaction[]}\n */\n this._signedTransactions = [];\n\n /**\n * Set of public keys (as string) who have signed this transaction so\n * we do not allow them to sign it again.\n *\n * @internal\n * @type {Set}\n */\n this._signerPublicKeys = new Set();\n\n /**\n * @protected\n * @type {number}\n */\n this._nextTransactionIndex = 0;\n\n /**\n * @private\n * @type {number}\n */\n this._transactionValidDuration = DEFAULT_TRANSACTION_VALID_DURATION;\n\n /**\n * @private\n * @type {Hbar}\n */\n this._maxTransactionFee = new Hbar(2);\n\n /**\n * @private\n * @type {string}\n */\n this._transactionMemo = \"\";\n\n /**\n * @protected\n * @type {TransactionId[]}\n */\n this._transactionIds = [];\n\n this._signOnDemand = false;\n\n /**\n * @private\n * @type {PublicKey[]}\n */\n this._publicKeys = [];\n\n /**\n * @private\n * @type {(((message: Uint8Array) => Promise) | null)[]}\n */\n this._transactionSigners = [];\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {Transaction}\n */\n static fromBytes(bytes) {\n const signedTransactions = [];\n const transactionIds = [];\n const nodeIds = [];\n\n /** @type {string[]} */\n const transactionIdStrings = [];\n\n /** @type {string[]} */\n const nodeIdStrings = [];\n\n const bodies = [];\n\n const list = ProtoTransactionList.decode(bytes).transactionList;\n\n if (list.length == 0) {\n const transaction = ProtoTransaction.decode(bytes);\n\n if (transaction.signedTransactionBytes.length != 0) {\n list.push(transaction);\n } else {\n list.push({\n signedTransactionBytes: ProtoSignedTransaction.encode({\n bodyBytes: transaction.bodyBytes,\n sigMap: transaction.sigMap,\n }).finish(),\n });\n }\n }\n\n for (const transaction of list) {\n if (transaction.signedTransactionBytes == null) {\n throw new Error(\"Transaction.signedTransactionBytes are null\");\n }\n\n const signedTransaction = ProtoSignedTransaction.decode(\n transaction.signedTransactionBytes\n );\n signedTransactions.push(signedTransaction);\n\n const body = ProtoTransactionBody.decode(\n signedTransaction.bodyBytes\n );\n\n if (body.data == null) {\n throw new Error(\"(BUG) body.data was not set in the protobuf\");\n }\n\n bodies.push(body);\n\n if (body.transactionID != null) {\n const transactionId = TransactionId._fromProtobuf(\n /** @type {proto.ITransactionID} */ (body.transactionID)\n );\n\n if (!transactionIdStrings.includes(transactionId.toString())) {\n transactionIds.push(transactionId);\n transactionIdStrings.push(transactionId.toString());\n }\n }\n\n if (body.nodeAccountID != null) {\n const nodeAccountId = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (body.nodeAccountID)\n );\n\n if (!nodeIdStrings.includes(nodeAccountId.toString())) {\n nodeIds.push(nodeAccountId);\n nodeIdStrings.push(nodeAccountId.toString());\n }\n }\n }\n\n const body = bodies[0];\n\n if (body == null || body.data == null) {\n throw new Error(\n \"No transaction found in bytes or failed to decode TransactionBody\"\n );\n }\n\n const fromProtobuf = TRANSACTION_REGISTRY.get(body.data);\n\n if (fromProtobuf == null) {\n throw new Error(\n `(BUG) Transaction.fromBytes() not implemented for type ${body.data}`\n );\n }\n\n return fromProtobuf(\n list,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {ScheduleCreateTransaction}\n */\n schedule() {\n this._requireNotFrozen();\n\n if (SCHEDULE_CREATE_TRANSACTION.length != 1) {\n throw new Error(\n \"ScheduleCreateTransaction has not been loaded yet\"\n );\n }\n\n return SCHEDULE_CREATE_TRANSACTION[0]()._setScheduledTransaction(this);\n }\n\n /**\n * @template {Transaction} TransactionT\n * @param {TransactionT} transaction\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TransactionT}\n */\n static _fromProtobufTransactions(\n transaction,\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n\n const zero = new AccountId(0);\n for (let i = 0; i < nodeIds.length; i++) {\n if (nodeIds[i].equals(zero)) {\n nodeIds.splice(i--, 1);\n }\n }\n\n transaction._transactions = transactions;\n transaction._signedTransactions = signedTransactions;\n transaction._transactionIds = transactionIds;\n transaction._nodeIds = nodeIds;\n transaction._nextNodeIndex = 0;\n transaction._nextTransactionIndex = 0;\n transaction._transactionValidDuration =\n body.transactionValidDuration != null &&\n body.transactionValidDuration.seconds != null\n ? Long.fromValue(body.transactionValidDuration.seconds).toInt()\n : DEFAULT_TRANSACTION_VALID_DURATION;\n transaction._maxTransactionFee =\n body.transactionFee != null\n ? Hbar.fromTinybars(body.transactionFee)\n : new Hbar(0);\n transaction._transactionMemo = body.memo != null ? body.memo : \"\";\n\n for (let i = 0; i < nodeIds.length; i++) {\n const signedTransaction = signedTransactions[i];\n if (\n signedTransaction.sigMap != null &&\n signedTransaction.sigMap.sigPair != null\n ) {\n for (const sigPair of signedTransaction.sigMap.sigPair) {\n transaction._signerPublicKeys.add(\n hex.encode(\n /** @type {Uint8Array} */ (sigPair.pubKeyPrefix)\n )\n );\n\n transaction._publicKeys.push(\n PublicKey.fromBytes(\n /** @type {Uint8Array} */ (sigPair.pubKeyPrefix)\n )\n );\n transaction._transactionSigners.push(null);\n }\n }\n }\n\n return transaction;\n }\n\n /**\n * @override\n * @param {AccountId[]} nodeIds\n * @returns {this}\n */\n setNodeAccountIds(nodeIds) {\n this._requireNotFrozen();\n super.setNodeAccountIds(nodeIds);\n return this;\n }\n\n /**\n * @returns {number}\n */\n get transactionValidDuration() {\n return this._transactionValidDuration;\n }\n\n /**\n * Sets the duration (in seconds) that this transaction is valid for.\n *\n * This is defaulted to 120 seconds (from the time its executed).\n *\n * @param {number} validDuration\n * @returns {this}\n */\n setTransactionValidDuration(validDuration) {\n this._requireNotFrozen();\n this._transactionValidDuration = validDuration;\n\n return this;\n }\n\n /**\n * @returns {?Hbar}\n */\n get maxTransactionFee() {\n return this._maxTransactionFee;\n }\n\n /**\n * Set the maximum transaction fee the operator (paying account)\n * is willing to pay.\n *\n * @param {number | string | Long | BigNumber | Hbar} maxTransactionFee\n * @returns {this}\n */\n setMaxTransactionFee(maxTransactionFee) {\n this._requireNotFrozen();\n this._maxTransactionFee =\n maxTransactionFee instanceof Hbar\n ? maxTransactionFee\n : new Hbar(maxTransactionFee);\n\n return this;\n }\n\n /**\n * @returns {string}\n */\n get transactionMemo() {\n return this._transactionMemo;\n }\n\n /**\n * Set a note or description to be recorded in the transaction\n * record (maximum length of 100 bytes).\n *\n * @param {string} transactionMemo\n * @returns {this}\n */\n setTransactionMemo(transactionMemo) {\n this._requireNotFrozen();\n this._transactionMemo = transactionMemo;\n\n return this;\n }\n\n /**\n * @returns {TransactionId}\n */\n get transactionId() {\n if (this._transactionIds.length === 0) {\n throw new Error(\n \"transaction must have been frozen before getting the transaction ID, try calling `freeze`\"\n );\n }\n\n return this._transactionIds[this._nextTransactionIndex];\n }\n\n /**\n * Set the ID for this transaction.\n *\n * The transaction ID includes the operator's account ( the account paying the transaction\n * fee). If two transactions have the same transaction ID, they won't both have an effect. One\n * will complete normally and the other will fail with a duplicate transaction status.\n *\n * Normally, you should not use this method. Just before a transaction is executed, a\n * transaction ID will be generated from the operator on the client.\n *\n * @param {TransactionId} transactionId\n * @returns {this}\n */\n setTransactionId(transactionId) {\n this._requireNotFrozen();\n this._transactionIds = [transactionId];\n\n return this;\n }\n\n /**\n * @param {PrivateKey} privateKey\n * @returns {Promise}\n */\n sign(privateKey) {\n return this.signWith(privateKey.publicKey, (message) =>\n Promise.resolve(privateKey.sign(message))\n );\n }\n\n /**\n * @param {PublicKey} publicKey\n * @param {(message: Uint8Array) => Promise} transactionSigner\n * @returns {Promise}\n */\n async signWith(publicKey, transactionSigner) {\n this._requireFrozen();\n\n const publicKeyData = publicKey.toBytesRaw();\n\n // note: this omits the DER prefix on purpose because Hedera doesn't\n // support that in the protobuf. this means that we would fail\n // to re-inflate [this._signerPublicKeys] during [fromBytes] if we used DER\n // prefixes here\n const publicKeyHex = hex.encode(publicKeyData);\n\n if (this._signerPublicKeys.has(publicKeyHex)) {\n // this public key has already signed this transaction\n return this;\n }\n\n this._transactions = [];\n this._signerPublicKeys.add(publicKeyHex);\n\n if (this._signOnDemand) {\n this._publicKeys.push(publicKey);\n this._transactionSigners.push(transactionSigner);\n\n return this;\n }\n\n for (const signedTransaction of this._signedTransactions) {\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n const signature = await transactionSigner(bodyBytes);\n\n if (signedTransaction.sigMap == null) {\n signedTransaction.sigMap = {};\n }\n\n if (signedTransaction.sigMap.sigPair == null) {\n signedTransaction.sigMap.sigPair = [];\n }\n\n signedTransaction.sigMap.sigPair.push(\n publicKey._toProtobufSignature(signature)\n );\n }\n\n return this;\n }\n\n /**\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n signWithOperator(client) {\n const operator = client._operator;\n\n if (operator == null) {\n throw new Error(\n \"`client` must have an operator to sign with the operator\"\n );\n }\n\n if (!this._isFrozen()) {\n this.freezeWith(client);\n }\n\n return this.signWith(operator.publicKey, operator.transactionSigner);\n }\n /**\n * @internal\n * @protected\n */\n _requireOneNodeAccountId() {\n if (this._nodeIds.length != 1) {\n throw \"transaction did not have exactly one node ID set\";\n }\n }\n\n /**\n * @param {PublicKey} publicKey\n * @param {Uint8Array} signature\n * @returns {this}\n */\n addSignature(publicKey, signature) {\n this._requireOneNodeAccountId();\n\n if (!this.isFrozen()) {\n this.freeze();\n }\n\n const publicKeyData = publicKey.toBytesRaw();\n const publicKeyHex = hex.encode(publicKeyData);\n\n if (this._signerPublicKeys.has(publicKeyHex)) {\n // this public key has already signed this transaction\n return this;\n }\n\n this._transactions = [];\n\n for (const transaction of this._signedTransactions) {\n if (transaction.sigMap == null) {\n transaction.sigMap = {};\n }\n\n if (transaction.sigMap.sigPair == null) {\n transaction.sigMap.sigPair = [];\n }\n\n transaction.sigMap.sigPair.push(\n publicKey._toProtobufSignature(signature)\n );\n }\n\n this._signerPublicKeys.add(publicKeyHex);\n this._publicKeys.push(publicKey);\n this._transactionSigners.push(null);\n\n return this;\n }\n\n /**\n * @returns {SignatureMap}\n */\n getSignatures() {\n if (this._signOnDemand) {\n throw new Error(\n \"Please use `getSignaturesAsync()` if `signOnDemand` is enabled\"\n );\n }\n\n this._buildAllTransactions();\n\n return SignatureMap._fromTransaction(this);\n }\n\n /**\n * @returns {Promise}\n */\n async getSignaturesAsync() {\n await this._buildAllTransactionsAsync();\n\n return SignatureMap._fromTransaction(this);\n }\n\n /**\n * Freeze this transaction from future modification to prepare for\n * signing or serialization.\n *\n * @returns {this}\n */\n freeze() {\n return this.freezeWith(null);\n }\n\n /**\n * Freeze this transaction from further modification to prepare for\n * signing or serialization.\n *\n * Will use the `Client`, if available, to generate a default Transaction ID and select 1/3\n * nodes to prepare this transaction for.\n *\n * @param {?import(\"../client/Client.js\").default} client\n * @returns {this}\n */\n freezeWith(client) {\n if (client != null) {\n this._signOnDemand = client._signOnDemand;\n }\n\n if (client != null && this._maxTransactionFee == null) {\n this._maxTransactionFee = client.maxTransactionFee;\n }\n\n if (client != null && this._transactionIds.length === 0) {\n const operator = client._operator;\n\n if (operator == null) {\n throw new Error(\n \"`client` must have an `operator` or `transactionId` must be set\"\n );\n }\n\n this.setTransactionId(TransactionId.generate(operator.accountId));\n }\n\n if (this._transactionIds.length === 0) {\n throw new Error(\n \"`transactionId` must be set or `client` must be provided with `freezeWith`\"\n );\n }\n\n if (client != null && this._transactionIds[0].accountId != null) {\n this._transactionIds[0].accountId.validateChecksum(client);\n }\n\n if (this._nodeIds.length > 0) {\n // Do nothing\n } else if (client != null) {\n this._nodeIds = client._network.getNodeAccountIdsForExecute();\n } else {\n throw new Error(\n \"`nodeAccountId` must be set or `client` must be provided with `freezeWith`\"\n );\n }\n\n this._signedTransactions = this._nodeIds.map((nodeId) =>\n this._makeSignedTransaction(nodeId)\n );\n\n return this;\n }\n\n /**\n * Will error if sign-on-demand is enabled\n *\n * @returns {Uint8Array}\n */\n toBytes() {\n this._requireFrozen();\n\n if (this._signOnDemand) {\n throw new Error(\n \"Please use `toBytesAsync()` if `signOnDemand` is enabled\"\n );\n }\n\n this._buildAllTransactions();\n\n return ProtoTransactionList.encode({\n transactionList: /** @type {proto.ITransaction[]} */ (\n this._transactions\n ),\n }).finish();\n }\n\n /**\n * @returns {Promise}\n */\n async toBytesAsync() {\n this._requireFrozen();\n\n await this._buildAllTransactionsAsync();\n\n return ProtoTransactionList.encode({\n transactionList: /** @type {proto.ITransaction[]} */ (\n this._transactions\n ),\n }).finish();\n }\n\n /**\n * @returns {Promise}\n */\n async getTransactionHash() {\n this._requireFrozen();\n\n await this._buildAllTransactionsAsync();\n\n return sha384.digest(\n /** @type {Uint8Array} */ (\n /** @type {proto.ITransaction} */ (this._transactions[0])\n .signedTransactionBytes\n )\n );\n }\n\n /**\n * @returns {Promise}\n */\n async getTransactionHashPerNode() {\n this._requireFrozen();\n await this._buildAllTransactionsAsync();\n return await TransactionHashMap._fromTransaction(this);\n }\n\n isFrozen() {\n return this._signedTransactions.length > 0;\n }\n\n /**\n * @returns {TransactionId}\n */\n _getTransactionId() {\n return this.transactionId;\n }\n\n /**\n * @param {Client} client\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars,@typescript-eslint/no-empty-function\n _validateChecksums(client) {\n // Do nothing\n }\n\n /**\n * @override\n * @protected\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async _beforeExecute(client) {\n if (!this._isFrozen()) {\n this.freezeWith(client);\n }\n\n if (client.isAutoValidateChecksumsEnabled()) {\n this._validateChecksums(client);\n }\n\n // on execute, sign each transaction with the operator, if present\n // and we are signing a transaction that used the default transaction ID\n\n const transactionId = this.transactionId;\n const operatorAccountId = client.operatorAccountId;\n\n if (\n operatorAccountId != null &&\n transactionId.accountId != null &&\n operatorAccountId.equals(transactionId.accountId)\n ) {\n await this.signWithOperator(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @returns {Promise}\n */\n async _makeRequestAsync() {\n const index =\n this._nextTransactionIndex * this._nodeIds.length +\n this._nextNodeIndex;\n\n if (this._signOnDemand) {\n await this._buildTransactionAsync(index);\n } else {\n this._buildTransaction(index);\n }\n\n return /** @type {proto.ITransaction} */ (this._transactions[index]);\n }\n\n /**\n * @param {number} index\n * @internal\n */\n async _signTranscation(index) {\n const signedTransaction = this._signedTransactions[index];\n\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n\n if (\n signedTransaction.sigMap != null &&\n signedTransaction.sigMap.sigPair != null &&\n signedTransaction.sigMap.sigPair.length > 0\n ) {\n for (let i = 0; i < this._publicKeys.length; i++) {\n const publicKey = this._publicKeys[i];\n const signer = this._transactionSigners[i];\n\n if (\n signedTransaction.sigMap.sigPair[0].pubKeyPrefix != null &&\n signer != null &&\n arrayEqual(\n signedTransaction.sigMap.sigPair[0].pubKeyPrefix,\n publicKey.toBytesRaw()\n )\n ) {\n return;\n }\n }\n }\n\n for (let j = 0; j < this._publicKeys.length; j++) {\n const publicKey = this._publicKeys[j];\n const transactionSigner = this._transactionSigners[j];\n\n if (transactionSigner == null) {\n continue;\n }\n\n const signature = await transactionSigner(bodyBytes);\n\n if (signedTransaction.sigMap == null) {\n signedTransaction.sigMap = {};\n }\n\n if (signedTransaction.sigMap.sigPair == null) {\n signedTransaction.sigMap.sigPair = [];\n }\n\n signedTransaction.sigMap.sigPair.push(\n publicKey._toProtobufSignature(signature)\n );\n }\n }\n\n _buildAllTransactions() {\n for (let i = 0; i < this._signedTransactions.length; i++) {\n this._buildTransaction(i);\n }\n }\n\n async _buildAllTransactionsAsync() {\n for (let i = 0; i < this._signedTransactions.length; i++) {\n await this._buildTransactionAsync(i);\n }\n }\n\n /**\n * @param {number} index\n * @internal\n */\n _buildTransaction(index) {\n if (this._transactions.length < index) {\n for (let i = this._transactions.length; i < index; i++) {\n this._transactions.push(null);\n }\n }\n\n // console.log(JSON.stringify(this._signedTransactions[index]));\n\n this._transactions[index] = {\n signedTransactionBytes: ProtoSignedTransaction.encode(\n this._signedTransactions[index]\n ).finish(),\n };\n }\n\n /**\n * @param {number} index\n * @internal\n */\n async _buildTransactionAsync(index) {\n if (this._transactions.length < index) {\n for (let i = this._transactions.length; i < index; i++) {\n this._transactions.push(null);\n }\n } else if (\n this._transactions.length > index &&\n this._transactions[index] != null &&\n /** @type {proto.ITransaction} */ (this._transactions[index])\n .signedTransactionBytes != null\n ) {\n return;\n }\n\n await this._signTranscation(index);\n\n this._transactions.push({\n signedTransactionBytes: ProtoSignedTransaction.encode(\n this._signedTransactions[index]\n ).finish(),\n });\n }\n\n /**\n * @override\n * @internal\n * @param {proto.ITransaction} request\n * @param {proto.ITransactionResponse} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } = response;\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.PlatformTransactionNotCreated:\n return ExecutionState.Retry;\n case Status.Ok:\n return ExecutionState.Finished;\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.ITransaction} request\n * @param {proto.ITransactionResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } = response;\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n /**\n * @override\n * @protected\n * @param {proto.ITransactionResponse} response\n * @param {AccountId} nodeId\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n async _mapResponse(response, nodeId, request) {\n const transactionHash = await sha384.digest(\n /** @type {Uint8Array} */ (request.signedTransactionBytes)\n );\n const transactionId = this.transactionId;\n\n this._nextTransactionIndex =\n (this._nextTransactionIndex + 1) % this._transactionIds.length;\n\n return new TransactionResponse({\n nodeId,\n transactionHash,\n transactionId,\n });\n }\n\n /**\n * @override\n * @returns {AccountId}\n */\n _getNodeAccountId() {\n if (this._nodeIds.length === 0) {\n throw new Error(\n \"(BUG) Transaction::_getNodeAccountId called before transaction has been frozen\"\n );\n }\n\n return this._nodeIds[this._nextNodeIndex % this._nodeIds.length];\n }\n\n /**\n * @internal\n * @param {?AccountId} nodeId\n * @returns {proto.ISignedTransaction}\n */\n _makeSignedTransaction(nodeId) {\n const body = this._makeTransactionBody(nodeId);\n const bodyBytes = ProtoTransactionBody.encode(body).finish();\n\n return {\n bodyBytes,\n sigMap: {\n sigPair: [],\n },\n };\n }\n\n /**\n * @private\n * @param {?AccountId} nodeId\n * @returns {proto.ITransactionBody}\n */\n _makeTransactionBody(nodeId) {\n return {\n [this._getTransactionDataCase()]: this._makeTransactionData(),\n transactionFee:\n this._maxTransactionFee != null\n ? this._maxTransactionFee.toTinybars()\n : null,\n memo: this._transactionMemo,\n transactionID:\n this._transactionIds[this._nextTransactionIndex] != null\n ? this._transactionIds[\n this._nextTransactionIndex\n ]._toProtobuf()\n : null,\n nodeAccountID: nodeId != null ? nodeId._toProtobuf() : null,\n transactionValidDuration: {\n seconds: Long.fromNumber(this._transactionValidDuration),\n },\n };\n }\n\n /**\n * @abstract\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @returns {proto.ISchedulableTransactionBody}\n */\n _getScheduledTransactionBody() {\n return {\n memo: this.transactionMemo,\n transactionFee:\n this.maxTransactionFee != null\n ? this.maxTransactionFee.toTinybars()\n : null,\n [this._getTransactionDataCase()]: this._makeTransactionData(),\n };\n }\n\n /**\n * @abstract\n * @protected\n * @returns {object}\n */\n _makeTransactionData() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @returns {boolean}\n */\n _isFrozen() {\n return this._signedTransactions.length > 0;\n }\n\n /**\n * @internal\n */\n _requireNotFrozen() {\n if (this._isFrozen()) {\n throw new Error(\n \"transaction is immutable; it has at least one signature or has been explicitly frozen\"\n );\n }\n }\n\n /**\n * @internal\n */\n _requireFrozen() {\n if (!this._isFrozen()) {\n throw new Error(\n \"transaction must have been frozen before calculating the hash will be stable, try calling `freeze`\"\n );\n }\n }\n}\n\n/**\n * @type {(() => ScheduleCreateTransaction)[]}\n */\nexport const SCHEDULE_CREATE_TRANSACTION = [];\n","/*! safe-buffer. MIT License. Feross Aboukhadijeh */\n/* eslint-disable node/no-deprecated-api */\nvar buffer = require('buffer')\nvar Buffer = buffer.Buffer\n\n// alternative to using Object.keys for old browsers\nfunction copyProps (src, dst) {\n for (var key in src) {\n dst[key] = src[key]\n }\n}\nif (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {\n module.exports = buffer\n} else {\n // Copy properties from require('buffer')\n copyProps(buffer, exports)\n exports.Buffer = SafeBuffer\n}\n\nfunction SafeBuffer (arg, encodingOrOffset, length) {\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.prototype = Object.create(Buffer.prototype)\n\n// Copy static methods from Buffer\ncopyProps(Buffer, SafeBuffer)\n\nSafeBuffer.from = function (arg, encodingOrOffset, length) {\n if (typeof arg === 'number') {\n throw new TypeError('Argument must not be a number')\n }\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.alloc = function (size, fill, encoding) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n var buf = Buffer(size)\n if (fill !== undefined) {\n if (typeof encoding === 'string') {\n buf.fill(fill, encoding)\n } else {\n buf.fill(fill)\n }\n } else {\n buf.fill(0)\n }\n return buf\n}\n\nSafeBuffer.allocUnsafe = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return Buffer(size)\n}\n\nSafeBuffer.allocUnsafeSlow = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return buffer.SlowBuffer(size)\n}\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * The ID for a crypto-currency token on Hedera.\n */\nexport default class TokenId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {TokenId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new TokenId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.ITokenID} id\n * @returns {TokenId}\n */\n static _fromProtobuf(id) {\n const tokenId = new TokenId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.tokenNum != null ? id.tokenNum : 0\n );\n\n return tokenId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TokenId}\n */\n static fromBytes(bytes) {\n return TokenId._fromProtobuf(proto.TokenID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {TokenId}\n */\n static fromSolidityAddress(address) {\n return new TokenId(...entity_id.fromSolidityAddress(address));\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.ITokenID}\n */\n _toProtobuf() {\n return {\n tokenNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TokenID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {TokenId}\n */\n clone() {\n const id = new TokenId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {TokenId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * The ID for a crypto-currency token on Hedera.\n */\nexport default class TokenId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {TokenId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new TokenId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.ITokenID} id\n * @returns {TokenId}\n */\n static _fromProtobuf(id) {\n const tokenId = new TokenId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.tokenNum != null ? id.tokenNum : 0\n );\n\n return tokenId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TokenId}\n */\n static fromBytes(bytes) {\n return TokenId._fromProtobuf(proto.TokenID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {TokenId}\n */\n static fromSolidityAddress(address) {\n return new TokenId(...entity_id.fromSolidityAddress(address));\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.ITokenID}\n */\n _toProtobuf() {\n return {\n tokenNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TokenID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {TokenId}\n */\n clone() {\n const id = new TokenId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {TokenId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n","module.exports = Long;\r\n\r\n/**\r\n * wasm optimizations, to do native i64 multiplication and divide\r\n */\r\nvar wasm = null;\r\n\r\ntry {\r\n wasm = new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([\r\n 0, 97, 115, 109, 1, 0, 0, 0, 1, 13, 2, 96, 0, 1, 127, 96, 4, 127, 127, 127, 127, 1, 127, 3, 7, 6, 0, 1, 1, 1, 1, 1, 6, 6, 1, 127, 1, 65, 0, 11, 7, 50, 6, 3, 109, 117, 108, 0, 1, 5, 100, 105, 118, 95, 115, 0, 2, 5, 100, 105, 118, 95, 117, 0, 3, 5, 114, 101, 109, 95, 115, 0, 4, 5, 114, 101, 109, 95, 117, 0, 5, 8, 103, 101, 116, 95, 104, 105, 103, 104, 0, 0, 10, 191, 1, 6, 4, 0, 35, 0, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 126, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 127, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 128, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 129, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 130, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11\r\n ])), {}).exports;\r\n} catch (e) {\r\n // no wasm support :(\r\n}\r\n\r\n/**\r\n * Constructs a 64 bit two's-complement integer, given its low and high 32 bit values as *signed* integers.\r\n * See the from* functions below for more convenient ways of constructing Longs.\r\n * @exports Long\r\n * @class A Long class for representing a 64 bit two's-complement integer value.\r\n * @param {number} low The low (signed) 32 bits of the long\r\n * @param {number} high The high (signed) 32 bits of the long\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @constructor\r\n */\r\nfunction Long(low, high, unsigned) {\r\n\r\n /**\r\n * The low 32 bits as a signed value.\r\n * @type {number}\r\n */\r\n this.low = low | 0;\r\n\r\n /**\r\n * The high 32 bits as a signed value.\r\n * @type {number}\r\n */\r\n this.high = high | 0;\r\n\r\n /**\r\n * Whether unsigned or not.\r\n * @type {boolean}\r\n */\r\n this.unsigned = !!unsigned;\r\n}\r\n\r\n// The internal representation of a long is the two given signed, 32-bit values.\r\n// We use 32-bit pieces because these are the size of integers on which\r\n// Javascript performs bit-operations. For operations like addition and\r\n// multiplication, we split each number into 16 bit pieces, which can easily be\r\n// multiplied within Javascript's floating-point representation without overflow\r\n// or change in sign.\r\n//\r\n// In the algorithms below, we frequently reduce the negative case to the\r\n// positive case by negating the input(s) and then post-processing the result.\r\n// Note that we must ALWAYS check specially whether those values are MIN_VALUE\r\n// (-2^63) because -MIN_VALUE == MIN_VALUE (since 2^63 cannot be represented as\r\n// a positive number, it overflows back into a negative). Not handling this\r\n// case would often result in infinite recursion.\r\n//\r\n// Common constant values ZERO, ONE, NEG_ONE, etc. are defined below the from*\r\n// methods on which they depend.\r\n\r\n/**\r\n * An indicator used to reliably determine if an object is a Long or not.\r\n * @type {boolean}\r\n * @const\r\n * @private\r\n */\r\nLong.prototype.__isLong__;\r\n\r\nObject.defineProperty(Long.prototype, \"__isLong__\", { value: true });\r\n\r\n/**\r\n * @function\r\n * @param {*} obj Object\r\n * @returns {boolean}\r\n * @inner\r\n */\r\nfunction isLong(obj) {\r\n return (obj && obj[\"__isLong__\"]) === true;\r\n}\r\n\r\n/**\r\n * Tests if the specified object is a Long.\r\n * @function\r\n * @param {*} obj Object\r\n * @returns {boolean}\r\n */\r\nLong.isLong = isLong;\r\n\r\n/**\r\n * A cache of the Long representations of small integer values.\r\n * @type {!Object}\r\n * @inner\r\n */\r\nvar INT_CACHE = {};\r\n\r\n/**\r\n * A cache of the Long representations of small unsigned integer values.\r\n * @type {!Object}\r\n * @inner\r\n */\r\nvar UINT_CACHE = {};\r\n\r\n/**\r\n * @param {number} value\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromInt(value, unsigned) {\r\n var obj, cachedObj, cache;\r\n if (unsigned) {\r\n value >>>= 0;\r\n if (cache = (0 <= value && value < 256)) {\r\n cachedObj = UINT_CACHE[value];\r\n if (cachedObj)\r\n return cachedObj;\r\n }\r\n obj = fromBits(value, (value | 0) < 0 ? -1 : 0, true);\r\n if (cache)\r\n UINT_CACHE[value] = obj;\r\n return obj;\r\n } else {\r\n value |= 0;\r\n if (cache = (-128 <= value && value < 128)) {\r\n cachedObj = INT_CACHE[value];\r\n if (cachedObj)\r\n return cachedObj;\r\n }\r\n obj = fromBits(value, value < 0 ? -1 : 0, false);\r\n if (cache)\r\n INT_CACHE[value] = obj;\r\n return obj;\r\n }\r\n}\r\n\r\n/**\r\n * Returns a Long representing the given 32 bit integer value.\r\n * @function\r\n * @param {number} value The 32 bit integer in question\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromInt = fromInt;\r\n\r\n/**\r\n * @param {number} value\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromNumber(value, unsigned) {\r\n if (isNaN(value))\r\n return unsigned ? UZERO : ZERO;\r\n if (unsigned) {\r\n if (value < 0)\r\n return UZERO;\r\n if (value >= TWO_PWR_64_DBL)\r\n return MAX_UNSIGNED_VALUE;\r\n } else {\r\n if (value <= -TWO_PWR_63_DBL)\r\n return MIN_VALUE;\r\n if (value + 1 >= TWO_PWR_63_DBL)\r\n return MAX_VALUE;\r\n }\r\n if (value < 0)\r\n return fromNumber(-value, unsigned).neg();\r\n return fromBits((value % TWO_PWR_32_DBL) | 0, (value / TWO_PWR_32_DBL) | 0, unsigned);\r\n}\r\n\r\n/**\r\n * Returns a Long representing the given value, provided that it is a finite number. Otherwise, zero is returned.\r\n * @function\r\n * @param {number} value The number in question\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromNumber = fromNumber;\r\n\r\n/**\r\n * @param {number} lowBits\r\n * @param {number} highBits\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromBits(lowBits, highBits, unsigned) {\r\n return new Long(lowBits, highBits, unsigned);\r\n}\r\n\r\n/**\r\n * Returns a Long representing the 64 bit integer that comes by concatenating the given low and high bits. Each is\r\n * assumed to use 32 bits.\r\n * @function\r\n * @param {number} lowBits The low 32 bits\r\n * @param {number} highBits The high 32 bits\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromBits = fromBits;\r\n\r\n/**\r\n * @function\r\n * @param {number} base\r\n * @param {number} exponent\r\n * @returns {number}\r\n * @inner\r\n */\r\nvar pow_dbl = Math.pow; // Used 4 times (4*8 to 15+4)\r\n\r\n/**\r\n * @param {string} str\r\n * @param {(boolean|number)=} unsigned\r\n * @param {number=} radix\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromString(str, unsigned, radix) {\r\n if (str.length === 0)\r\n throw Error('empty string');\r\n if (str === \"NaN\" || str === \"Infinity\" || str === \"+Infinity\" || str === \"-Infinity\")\r\n return ZERO;\r\n if (typeof unsigned === 'number') {\r\n // For goog.math.long compatibility\r\n radix = unsigned,\r\n unsigned = false;\r\n } else {\r\n unsigned = !! unsigned;\r\n }\r\n radix = radix || 10;\r\n if (radix < 2 || 36 < radix)\r\n throw RangeError('radix');\r\n\r\n var p;\r\n if ((p = str.indexOf('-')) > 0)\r\n throw Error('interior hyphen');\r\n else if (p === 0) {\r\n return fromString(str.substring(1), unsigned, radix).neg();\r\n }\r\n\r\n // Do several (8) digits each time through the loop, so as to\r\n // minimize the calls to the very expensive emulated div.\r\n var radixToPower = fromNumber(pow_dbl(radix, 8));\r\n\r\n var result = ZERO;\r\n for (var i = 0; i < str.length; i += 8) {\r\n var size = Math.min(8, str.length - i),\r\n value = parseInt(str.substring(i, i + size), radix);\r\n if (size < 8) {\r\n var power = fromNumber(pow_dbl(radix, size));\r\n result = result.mul(power).add(fromNumber(value));\r\n } else {\r\n result = result.mul(radixToPower);\r\n result = result.add(fromNumber(value));\r\n }\r\n }\r\n result.unsigned = unsigned;\r\n return result;\r\n}\r\n\r\n/**\r\n * Returns a Long representation of the given string, written using the specified radix.\r\n * @function\r\n * @param {string} str The textual representation of the Long\r\n * @param {(boolean|number)=} unsigned Whether unsigned or not, defaults to signed\r\n * @param {number=} radix The radix in which the text is written (2-36), defaults to 10\r\n * @returns {!Long} The corresponding Long value\r\n */\r\nLong.fromString = fromString;\r\n\r\n/**\r\n * @function\r\n * @param {!Long|number|string|!{low: number, high: number, unsigned: boolean}} val\r\n * @param {boolean=} unsigned\r\n * @returns {!Long}\r\n * @inner\r\n */\r\nfunction fromValue(val, unsigned) {\r\n if (typeof val === 'number')\r\n return fromNumber(val, unsigned);\r\n if (typeof val === 'string')\r\n return fromString(val, unsigned);\r\n // Throws for non-objects, converts non-instanceof Long:\r\n return fromBits(val.low, val.high, typeof unsigned === 'boolean' ? unsigned : val.unsigned);\r\n}\r\n\r\n/**\r\n * Converts the specified value to a Long using the appropriate from* function for its type.\r\n * @function\r\n * @param {!Long|number|string|!{low: number, high: number, unsigned: boolean}} val Value\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {!Long}\r\n */\r\nLong.fromValue = fromValue;\r\n\r\n// NOTE: the compiler should inline these constant values below and then remove these variables, so there should be\r\n// no runtime penalty for these.\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_16_DBL = 1 << 16;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_24_DBL = 1 << 24;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_32_DBL = TWO_PWR_16_DBL * TWO_PWR_16_DBL;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_64_DBL = TWO_PWR_32_DBL * TWO_PWR_32_DBL;\r\n\r\n/**\r\n * @type {number}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_63_DBL = TWO_PWR_64_DBL / 2;\r\n\r\n/**\r\n * @type {!Long}\r\n * @const\r\n * @inner\r\n */\r\nvar TWO_PWR_24 = fromInt(TWO_PWR_24_DBL);\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar ZERO = fromInt(0);\r\n\r\n/**\r\n * Signed zero.\r\n * @type {!Long}\r\n */\r\nLong.ZERO = ZERO;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar UZERO = fromInt(0, true);\r\n\r\n/**\r\n * Unsigned zero.\r\n * @type {!Long}\r\n */\r\nLong.UZERO = UZERO;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar ONE = fromInt(1);\r\n\r\n/**\r\n * Signed one.\r\n * @type {!Long}\r\n */\r\nLong.ONE = ONE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar UONE = fromInt(1, true);\r\n\r\n/**\r\n * Unsigned one.\r\n * @type {!Long}\r\n */\r\nLong.UONE = UONE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar NEG_ONE = fromInt(-1);\r\n\r\n/**\r\n * Signed negative one.\r\n * @type {!Long}\r\n */\r\nLong.NEG_ONE = NEG_ONE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar MAX_VALUE = fromBits(0xFFFFFFFF|0, 0x7FFFFFFF|0, false);\r\n\r\n/**\r\n * Maximum signed value.\r\n * @type {!Long}\r\n */\r\nLong.MAX_VALUE = MAX_VALUE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar MAX_UNSIGNED_VALUE = fromBits(0xFFFFFFFF|0, 0xFFFFFFFF|0, true);\r\n\r\n/**\r\n * Maximum unsigned value.\r\n * @type {!Long}\r\n */\r\nLong.MAX_UNSIGNED_VALUE = MAX_UNSIGNED_VALUE;\r\n\r\n/**\r\n * @type {!Long}\r\n * @inner\r\n */\r\nvar MIN_VALUE = fromBits(0, 0x80000000|0, false);\r\n\r\n/**\r\n * Minimum signed value.\r\n * @type {!Long}\r\n */\r\nLong.MIN_VALUE = MIN_VALUE;\r\n\r\n/**\r\n * @alias Long.prototype\r\n * @inner\r\n */\r\nvar LongPrototype = Long.prototype;\r\n\r\n/**\r\n * Converts the Long to a 32 bit integer, assuming it is a 32 bit integer.\r\n * @returns {number}\r\n */\r\nLongPrototype.toInt = function toInt() {\r\n return this.unsigned ? this.low >>> 0 : this.low;\r\n};\r\n\r\n/**\r\n * Converts the Long to a the nearest floating-point representation of this value (double, 53 bit mantissa).\r\n * @returns {number}\r\n */\r\nLongPrototype.toNumber = function toNumber() {\r\n if (this.unsigned)\r\n return ((this.high >>> 0) * TWO_PWR_32_DBL) + (this.low >>> 0);\r\n return this.high * TWO_PWR_32_DBL + (this.low >>> 0);\r\n};\r\n\r\n/**\r\n * Converts the Long to a string written in the specified radix.\r\n * @param {number=} radix Radix (2-36), defaults to 10\r\n * @returns {string}\r\n * @override\r\n * @throws {RangeError} If `radix` is out of range\r\n */\r\nLongPrototype.toString = function toString(radix) {\r\n radix = radix || 10;\r\n if (radix < 2 || 36 < radix)\r\n throw RangeError('radix');\r\n if (this.isZero())\r\n return '0';\r\n if (this.isNegative()) { // Unsigned Longs are never negative\r\n if (this.eq(MIN_VALUE)) {\r\n // We need to change the Long value before it can be negated, so we remove\r\n // the bottom-most digit in this base and then recurse to do the rest.\r\n var radixLong = fromNumber(radix),\r\n div = this.div(radixLong),\r\n rem1 = div.mul(radixLong).sub(this);\r\n return div.toString(radix) + rem1.toInt().toString(radix);\r\n } else\r\n return '-' + this.neg().toString(radix);\r\n }\r\n\r\n // Do several (6) digits each time through the loop, so as to\r\n // minimize the calls to the very expensive emulated div.\r\n var radixToPower = fromNumber(pow_dbl(radix, 6), this.unsigned),\r\n rem = this;\r\n var result = '';\r\n while (true) {\r\n var remDiv = rem.div(radixToPower),\r\n intval = rem.sub(remDiv.mul(radixToPower)).toInt() >>> 0,\r\n digits = intval.toString(radix);\r\n rem = remDiv;\r\n if (rem.isZero())\r\n return digits + result;\r\n else {\r\n while (digits.length < 6)\r\n digits = '0' + digits;\r\n result = '' + digits + result;\r\n }\r\n }\r\n};\r\n\r\n/**\r\n * Gets the high 32 bits as a signed integer.\r\n * @returns {number} Signed high bits\r\n */\r\nLongPrototype.getHighBits = function getHighBits() {\r\n return this.high;\r\n};\r\n\r\n/**\r\n * Gets the high 32 bits as an unsigned integer.\r\n * @returns {number} Unsigned high bits\r\n */\r\nLongPrototype.getHighBitsUnsigned = function getHighBitsUnsigned() {\r\n return this.high >>> 0;\r\n};\r\n\r\n/**\r\n * Gets the low 32 bits as a signed integer.\r\n * @returns {number} Signed low bits\r\n */\r\nLongPrototype.getLowBits = function getLowBits() {\r\n return this.low;\r\n};\r\n\r\n/**\r\n * Gets the low 32 bits as an unsigned integer.\r\n * @returns {number} Unsigned low bits\r\n */\r\nLongPrototype.getLowBitsUnsigned = function getLowBitsUnsigned() {\r\n return this.low >>> 0;\r\n};\r\n\r\n/**\r\n * Gets the number of bits needed to represent the absolute value of this Long.\r\n * @returns {number}\r\n */\r\nLongPrototype.getNumBitsAbs = function getNumBitsAbs() {\r\n if (this.isNegative()) // Unsigned Longs are never negative\r\n return this.eq(MIN_VALUE) ? 64 : this.neg().getNumBitsAbs();\r\n var val = this.high != 0 ? this.high : this.low;\r\n for (var bit = 31; bit > 0; bit--)\r\n if ((val & (1 << bit)) != 0)\r\n break;\r\n return this.high != 0 ? bit + 33 : bit + 1;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals zero.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isZero = function isZero() {\r\n return this.high === 0 && this.low === 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals zero. This is an alias of {@link Long#isZero}.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.eqz = LongPrototype.isZero;\r\n\r\n/**\r\n * Tests if this Long's value is negative.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isNegative = function isNegative() {\r\n return !this.unsigned && this.high < 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is positive.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isPositive = function isPositive() {\r\n return this.unsigned || this.high >= 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is odd.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isOdd = function isOdd() {\r\n return (this.low & 1) === 1;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is even.\r\n * @returns {boolean}\r\n */\r\nLongPrototype.isEven = function isEven() {\r\n return (this.low & 1) === 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.equals = function equals(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n if (this.unsigned !== other.unsigned && (this.high >>> 31) === 1 && (other.high >>> 31) === 1)\r\n return false;\r\n return this.high === other.high && this.low === other.low;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value equals the specified's. This is an alias of {@link Long#equals}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.eq = LongPrototype.equals;\r\n\r\n/**\r\n * Tests if this Long's value differs from the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.notEquals = function notEquals(other) {\r\n return !this.eq(/* validates */ other);\r\n};\r\n\r\n/**\r\n * Tests if this Long's value differs from the specified's. This is an alias of {@link Long#notEquals}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.neq = LongPrototype.notEquals;\r\n\r\n/**\r\n * Tests if this Long's value differs from the specified's. This is an alias of {@link Long#notEquals}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.ne = LongPrototype.notEquals;\r\n\r\n/**\r\n * Tests if this Long's value is less than the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lessThan = function lessThan(other) {\r\n return this.comp(/* validates */ other) < 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is less than the specified's. This is an alias of {@link Long#lessThan}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lt = LongPrototype.lessThan;\r\n\r\n/**\r\n * Tests if this Long's value is less than or equal the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lessThanOrEqual = function lessThanOrEqual(other) {\r\n return this.comp(/* validates */ other) <= 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is less than or equal the specified's. This is an alias of {@link Long#lessThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.lte = LongPrototype.lessThanOrEqual;\r\n\r\n/**\r\n * Tests if this Long's value is less than or equal the specified's. This is an alias of {@link Long#lessThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.le = LongPrototype.lessThanOrEqual;\r\n\r\n/**\r\n * Tests if this Long's value is greater than the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.greaterThan = function greaterThan(other) {\r\n return this.comp(/* validates */ other) > 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is greater than the specified's. This is an alias of {@link Long#greaterThan}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.gt = LongPrototype.greaterThan;\r\n\r\n/**\r\n * Tests if this Long's value is greater than or equal the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.greaterThanOrEqual = function greaterThanOrEqual(other) {\r\n return this.comp(/* validates */ other) >= 0;\r\n};\r\n\r\n/**\r\n * Tests if this Long's value is greater than or equal the specified's. This is an alias of {@link Long#greaterThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.gte = LongPrototype.greaterThanOrEqual;\r\n\r\n/**\r\n * Tests if this Long's value is greater than or equal the specified's. This is an alias of {@link Long#greaterThanOrEqual}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {boolean}\r\n */\r\nLongPrototype.ge = LongPrototype.greaterThanOrEqual;\r\n\r\n/**\r\n * Compares this Long's value with the specified's.\r\n * @param {!Long|number|string} other Other value\r\n * @returns {number} 0 if they are the same, 1 if the this is greater and -1\r\n * if the given one is greater\r\n */\r\nLongPrototype.compare = function compare(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n if (this.eq(other))\r\n return 0;\r\n var thisNeg = this.isNegative(),\r\n otherNeg = other.isNegative();\r\n if (thisNeg && !otherNeg)\r\n return -1;\r\n if (!thisNeg && otherNeg)\r\n return 1;\r\n // At this point the sign bits are the same\r\n if (!this.unsigned)\r\n return this.sub(other).isNegative() ? -1 : 1;\r\n // Both are positive if at least one is unsigned\r\n return (other.high >>> 0) > (this.high >>> 0) || (other.high === this.high && (other.low >>> 0) > (this.low >>> 0)) ? -1 : 1;\r\n};\r\n\r\n/**\r\n * Compares this Long's value with the specified's. This is an alias of {@link Long#compare}.\r\n * @function\r\n * @param {!Long|number|string} other Other value\r\n * @returns {number} 0 if they are the same, 1 if the this is greater and -1\r\n * if the given one is greater\r\n */\r\nLongPrototype.comp = LongPrototype.compare;\r\n\r\n/**\r\n * Negates this Long's value.\r\n * @returns {!Long} Negated Long\r\n */\r\nLongPrototype.negate = function negate() {\r\n if (!this.unsigned && this.eq(MIN_VALUE))\r\n return MIN_VALUE;\r\n return this.not().add(ONE);\r\n};\r\n\r\n/**\r\n * Negates this Long's value. This is an alias of {@link Long#negate}.\r\n * @function\r\n * @returns {!Long} Negated Long\r\n */\r\nLongPrototype.neg = LongPrototype.negate;\r\n\r\n/**\r\n * Returns the sum of this and the specified Long.\r\n * @param {!Long|number|string} addend Addend\r\n * @returns {!Long} Sum\r\n */\r\nLongPrototype.add = function add(addend) {\r\n if (!isLong(addend))\r\n addend = fromValue(addend);\r\n\r\n // Divide each number into 4 chunks of 16 bits, and then sum the chunks.\r\n\r\n var a48 = this.high >>> 16;\r\n var a32 = this.high & 0xFFFF;\r\n var a16 = this.low >>> 16;\r\n var a00 = this.low & 0xFFFF;\r\n\r\n var b48 = addend.high >>> 16;\r\n var b32 = addend.high & 0xFFFF;\r\n var b16 = addend.low >>> 16;\r\n var b00 = addend.low & 0xFFFF;\r\n\r\n var c48 = 0, c32 = 0, c16 = 0, c00 = 0;\r\n c00 += a00 + b00;\r\n c16 += c00 >>> 16;\r\n c00 &= 0xFFFF;\r\n c16 += a16 + b16;\r\n c32 += c16 >>> 16;\r\n c16 &= 0xFFFF;\r\n c32 += a32 + b32;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c48 += a48 + b48;\r\n c48 &= 0xFFFF;\r\n return fromBits((c16 << 16) | c00, (c48 << 16) | c32, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the difference of this and the specified Long.\r\n * @param {!Long|number|string} subtrahend Subtrahend\r\n * @returns {!Long} Difference\r\n */\r\nLongPrototype.subtract = function subtract(subtrahend) {\r\n if (!isLong(subtrahend))\r\n subtrahend = fromValue(subtrahend);\r\n return this.add(subtrahend.neg());\r\n};\r\n\r\n/**\r\n * Returns the difference of this and the specified Long. This is an alias of {@link Long#subtract}.\r\n * @function\r\n * @param {!Long|number|string} subtrahend Subtrahend\r\n * @returns {!Long} Difference\r\n */\r\nLongPrototype.sub = LongPrototype.subtract;\r\n\r\n/**\r\n * Returns the product of this and the specified Long.\r\n * @param {!Long|number|string} multiplier Multiplier\r\n * @returns {!Long} Product\r\n */\r\nLongPrototype.multiply = function multiply(multiplier) {\r\n if (this.isZero())\r\n return ZERO;\r\n if (!isLong(multiplier))\r\n multiplier = fromValue(multiplier);\r\n\r\n // use wasm support if present\r\n if (wasm) {\r\n var low = wasm.mul(this.low,\r\n this.high,\r\n multiplier.low,\r\n multiplier.high);\r\n return fromBits(low, wasm.get_high(), this.unsigned);\r\n }\r\n\r\n if (multiplier.isZero())\r\n return ZERO;\r\n if (this.eq(MIN_VALUE))\r\n return multiplier.isOdd() ? MIN_VALUE : ZERO;\r\n if (multiplier.eq(MIN_VALUE))\r\n return this.isOdd() ? MIN_VALUE : ZERO;\r\n\r\n if (this.isNegative()) {\r\n if (multiplier.isNegative())\r\n return this.neg().mul(multiplier.neg());\r\n else\r\n return this.neg().mul(multiplier).neg();\r\n } else if (multiplier.isNegative())\r\n return this.mul(multiplier.neg()).neg();\r\n\r\n // If both longs are small, use float multiplication\r\n if (this.lt(TWO_PWR_24) && multiplier.lt(TWO_PWR_24))\r\n return fromNumber(this.toNumber() * multiplier.toNumber(), this.unsigned);\r\n\r\n // Divide each long into 4 chunks of 16 bits, and then add up 4x4 products.\r\n // We can skip products that would overflow.\r\n\r\n var a48 = this.high >>> 16;\r\n var a32 = this.high & 0xFFFF;\r\n var a16 = this.low >>> 16;\r\n var a00 = this.low & 0xFFFF;\r\n\r\n var b48 = multiplier.high >>> 16;\r\n var b32 = multiplier.high & 0xFFFF;\r\n var b16 = multiplier.low >>> 16;\r\n var b00 = multiplier.low & 0xFFFF;\r\n\r\n var c48 = 0, c32 = 0, c16 = 0, c00 = 0;\r\n c00 += a00 * b00;\r\n c16 += c00 >>> 16;\r\n c00 &= 0xFFFF;\r\n c16 += a16 * b00;\r\n c32 += c16 >>> 16;\r\n c16 &= 0xFFFF;\r\n c16 += a00 * b16;\r\n c32 += c16 >>> 16;\r\n c16 &= 0xFFFF;\r\n c32 += a32 * b00;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c32 += a16 * b16;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c32 += a00 * b32;\r\n c48 += c32 >>> 16;\r\n c32 &= 0xFFFF;\r\n c48 += a48 * b00 + a32 * b16 + a16 * b32 + a00 * b48;\r\n c48 &= 0xFFFF;\r\n return fromBits((c16 << 16) | c00, (c48 << 16) | c32, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the product of this and the specified Long. This is an alias of {@link Long#multiply}.\r\n * @function\r\n * @param {!Long|number|string} multiplier Multiplier\r\n * @returns {!Long} Product\r\n */\r\nLongPrototype.mul = LongPrototype.multiply;\r\n\r\n/**\r\n * Returns this Long divided by the specified. The result is signed if this Long is signed or\r\n * unsigned if this Long is unsigned.\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Quotient\r\n */\r\nLongPrototype.divide = function divide(divisor) {\r\n if (!isLong(divisor))\r\n divisor = fromValue(divisor);\r\n if (divisor.isZero())\r\n throw Error('division by zero');\r\n\r\n // use wasm support if present\r\n if (wasm) {\r\n // guard against signed division overflow: the largest\r\n // negative number / -1 would be 1 larger than the largest\r\n // positive number, due to two's complement.\r\n if (!this.unsigned &&\r\n this.high === -0x80000000 &&\r\n divisor.low === -1 && divisor.high === -1) {\r\n // be consistent with non-wasm code path\r\n return this;\r\n }\r\n var low = (this.unsigned ? wasm.div_u : wasm.div_s)(\r\n this.low,\r\n this.high,\r\n divisor.low,\r\n divisor.high\r\n );\r\n return fromBits(low, wasm.get_high(), this.unsigned);\r\n }\r\n\r\n if (this.isZero())\r\n return this.unsigned ? UZERO : ZERO;\r\n var approx, rem, res;\r\n if (!this.unsigned) {\r\n // This section is only relevant for signed longs and is derived from the\r\n // closure library as a whole.\r\n if (this.eq(MIN_VALUE)) {\r\n if (divisor.eq(ONE) || divisor.eq(NEG_ONE))\r\n return MIN_VALUE; // recall that -MIN_VALUE == MIN_VALUE\r\n else if (divisor.eq(MIN_VALUE))\r\n return ONE;\r\n else {\r\n // At this point, we have |other| >= 2, so |this/other| < |MIN_VALUE|.\r\n var halfThis = this.shr(1);\r\n approx = halfThis.div(divisor).shl(1);\r\n if (approx.eq(ZERO)) {\r\n return divisor.isNegative() ? ONE : NEG_ONE;\r\n } else {\r\n rem = this.sub(divisor.mul(approx));\r\n res = approx.add(rem.div(divisor));\r\n return res;\r\n }\r\n }\r\n } else if (divisor.eq(MIN_VALUE))\r\n return this.unsigned ? UZERO : ZERO;\r\n if (this.isNegative()) {\r\n if (divisor.isNegative())\r\n return this.neg().div(divisor.neg());\r\n return this.neg().div(divisor).neg();\r\n } else if (divisor.isNegative())\r\n return this.div(divisor.neg()).neg();\r\n res = ZERO;\r\n } else {\r\n // The algorithm below has not been made for unsigned longs. It's therefore\r\n // required to take special care of the MSB prior to running it.\r\n if (!divisor.unsigned)\r\n divisor = divisor.toUnsigned();\r\n if (divisor.gt(this))\r\n return UZERO;\r\n if (divisor.gt(this.shru(1))) // 15 >>> 1 = 7 ; with divisor = 8 ; true\r\n return UONE;\r\n res = UZERO;\r\n }\r\n\r\n // Repeat the following until the remainder is less than other: find a\r\n // floating-point that approximates remainder / other *from below*, add this\r\n // into the result, and subtract it from the remainder. It is critical that\r\n // the approximate value is less than or equal to the real value so that the\r\n // remainder never becomes negative.\r\n rem = this;\r\n while (rem.gte(divisor)) {\r\n // Approximate the result of division. This may be a little greater or\r\n // smaller than the actual value.\r\n approx = Math.max(1, Math.floor(rem.toNumber() / divisor.toNumber()));\r\n\r\n // We will tweak the approximate result by changing it in the 48-th digit or\r\n // the smallest non-fractional digit, whichever is larger.\r\n var log2 = Math.ceil(Math.log(approx) / Math.LN2),\r\n delta = (log2 <= 48) ? 1 : pow_dbl(2, log2 - 48),\r\n\r\n // Decrease the approximation until it is smaller than the remainder. Note\r\n // that if it is too large, the product overflows and is negative.\r\n approxRes = fromNumber(approx),\r\n approxRem = approxRes.mul(divisor);\r\n while (approxRem.isNegative() || approxRem.gt(rem)) {\r\n approx -= delta;\r\n approxRes = fromNumber(approx, this.unsigned);\r\n approxRem = approxRes.mul(divisor);\r\n }\r\n\r\n // We know the answer can't be zero... and actually, zero would cause\r\n // infinite recursion since we would make no progress.\r\n if (approxRes.isZero())\r\n approxRes = ONE;\r\n\r\n res = res.add(approxRes);\r\n rem = rem.sub(approxRem);\r\n }\r\n return res;\r\n};\r\n\r\n/**\r\n * Returns this Long divided by the specified. This is an alias of {@link Long#divide}.\r\n * @function\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Quotient\r\n */\r\nLongPrototype.div = LongPrototype.divide;\r\n\r\n/**\r\n * Returns this Long modulo the specified.\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Remainder\r\n */\r\nLongPrototype.modulo = function modulo(divisor) {\r\n if (!isLong(divisor))\r\n divisor = fromValue(divisor);\r\n\r\n // use wasm support if present\r\n if (wasm) {\r\n var low = (this.unsigned ? wasm.rem_u : wasm.rem_s)(\r\n this.low,\r\n this.high,\r\n divisor.low,\r\n divisor.high\r\n );\r\n return fromBits(low, wasm.get_high(), this.unsigned);\r\n }\r\n\r\n return this.sub(this.div(divisor).mul(divisor));\r\n};\r\n\r\n/**\r\n * Returns this Long modulo the specified. This is an alias of {@link Long#modulo}.\r\n * @function\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Remainder\r\n */\r\nLongPrototype.mod = LongPrototype.modulo;\r\n\r\n/**\r\n * Returns this Long modulo the specified. This is an alias of {@link Long#modulo}.\r\n * @function\r\n * @param {!Long|number|string} divisor Divisor\r\n * @returns {!Long} Remainder\r\n */\r\nLongPrototype.rem = LongPrototype.modulo;\r\n\r\n/**\r\n * Returns the bitwise NOT of this Long.\r\n * @returns {!Long}\r\n */\r\nLongPrototype.not = function not() {\r\n return fromBits(~this.low, ~this.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the bitwise AND of this Long and the specified.\r\n * @param {!Long|number|string} other Other Long\r\n * @returns {!Long}\r\n */\r\nLongPrototype.and = function and(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n return fromBits(this.low & other.low, this.high & other.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the bitwise OR of this Long and the specified.\r\n * @param {!Long|number|string} other Other Long\r\n * @returns {!Long}\r\n */\r\nLongPrototype.or = function or(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n return fromBits(this.low | other.low, this.high | other.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns the bitwise XOR of this Long and the given one.\r\n * @param {!Long|number|string} other Other Long\r\n * @returns {!Long}\r\n */\r\nLongPrototype.xor = function xor(other) {\r\n if (!isLong(other))\r\n other = fromValue(other);\r\n return fromBits(this.low ^ other.low, this.high ^ other.high, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns this Long with bits shifted to the left by the given amount.\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shiftLeft = function shiftLeft(numBits) {\r\n if (isLong(numBits))\r\n numBits = numBits.toInt();\r\n if ((numBits &= 63) === 0)\r\n return this;\r\n else if (numBits < 32)\r\n return fromBits(this.low << numBits, (this.high << numBits) | (this.low >>> (32 - numBits)), this.unsigned);\r\n else\r\n return fromBits(0, this.low << (numBits - 32), this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns this Long with bits shifted to the left by the given amount. This is an alias of {@link Long#shiftLeft}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shl = LongPrototype.shiftLeft;\r\n\r\n/**\r\n * Returns this Long with bits arithmetically shifted to the right by the given amount.\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shiftRight = function shiftRight(numBits) {\r\n if (isLong(numBits))\r\n numBits = numBits.toInt();\r\n if ((numBits &= 63) === 0)\r\n return this;\r\n else if (numBits < 32)\r\n return fromBits((this.low >>> numBits) | (this.high << (32 - numBits)), this.high >> numBits, this.unsigned);\r\n else\r\n return fromBits(this.high >> (numBits - 32), this.high >= 0 ? 0 : -1, this.unsigned);\r\n};\r\n\r\n/**\r\n * Returns this Long with bits arithmetically shifted to the right by the given amount. This is an alias of {@link Long#shiftRight}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shr = LongPrototype.shiftRight;\r\n\r\n/**\r\n * Returns this Long with bits logically shifted to the right by the given amount.\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shiftRightUnsigned = function shiftRightUnsigned(numBits) {\r\n if (isLong(numBits))\r\n numBits = numBits.toInt();\r\n numBits &= 63;\r\n if (numBits === 0)\r\n return this;\r\n else {\r\n var high = this.high;\r\n if (numBits < 32) {\r\n var low = this.low;\r\n return fromBits((low >>> numBits) | (high << (32 - numBits)), high >>> numBits, this.unsigned);\r\n } else if (numBits === 32)\r\n return fromBits(high, 0, this.unsigned);\r\n else\r\n return fromBits(high >>> (numBits - 32), 0, this.unsigned);\r\n }\r\n};\r\n\r\n/**\r\n * Returns this Long with bits logically shifted to the right by the given amount. This is an alias of {@link Long#shiftRightUnsigned}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shru = LongPrototype.shiftRightUnsigned;\r\n\r\n/**\r\n * Returns this Long with bits logically shifted to the right by the given amount. This is an alias of {@link Long#shiftRightUnsigned}.\r\n * @function\r\n * @param {number|!Long} numBits Number of bits\r\n * @returns {!Long} Shifted Long\r\n */\r\nLongPrototype.shr_u = LongPrototype.shiftRightUnsigned;\r\n\r\n/**\r\n * Converts this Long to signed.\r\n * @returns {!Long} Signed long\r\n */\r\nLongPrototype.toSigned = function toSigned() {\r\n if (!this.unsigned)\r\n return this;\r\n return fromBits(this.low, this.high, false);\r\n};\r\n\r\n/**\r\n * Converts this Long to unsigned.\r\n * @returns {!Long} Unsigned long\r\n */\r\nLongPrototype.toUnsigned = function toUnsigned() {\r\n if (this.unsigned)\r\n return this;\r\n return fromBits(this.low, this.high, true);\r\n};\r\n\r\n/**\r\n * Converts this Long to its byte representation.\r\n * @param {boolean=} le Whether little or big endian, defaults to big endian\r\n * @returns {!Array.} Byte representation\r\n */\r\nLongPrototype.toBytes = function toBytes(le) {\r\n return le ? this.toBytesLE() : this.toBytesBE();\r\n};\r\n\r\n/**\r\n * Converts this Long to its little endian byte representation.\r\n * @returns {!Array.} Little endian byte representation\r\n */\r\nLongPrototype.toBytesLE = function toBytesLE() {\r\n var hi = this.high,\r\n lo = this.low;\r\n return [\r\n lo & 0xff,\r\n lo >>> 8 & 0xff,\r\n lo >>> 16 & 0xff,\r\n lo >>> 24 ,\r\n hi & 0xff,\r\n hi >>> 8 & 0xff,\r\n hi >>> 16 & 0xff,\r\n hi >>> 24\r\n ];\r\n};\r\n\r\n/**\r\n * Converts this Long to its big endian byte representation.\r\n * @returns {!Array.} Big endian byte representation\r\n */\r\nLongPrototype.toBytesBE = function toBytesBE() {\r\n var hi = this.high,\r\n lo = this.low;\r\n return [\r\n hi >>> 24 ,\r\n hi >>> 16 & 0xff,\r\n hi >>> 8 & 0xff,\r\n hi & 0xff,\r\n lo >>> 24 ,\r\n lo >>> 16 & 0xff,\r\n lo >>> 8 & 0xff,\r\n lo & 0xff\r\n ];\r\n};\r\n\r\n/**\r\n * Creates a Long from its byte representation.\r\n * @param {!Array.} bytes Byte representation\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @param {boolean=} le Whether little or big endian, defaults to big endian\r\n * @returns {Long} The corresponding Long value\r\n */\r\nLong.fromBytes = function fromBytes(bytes, unsigned, le) {\r\n return le ? Long.fromBytesLE(bytes, unsigned) : Long.fromBytesBE(bytes, unsigned);\r\n};\r\n\r\n/**\r\n * Creates a Long from its little endian byte representation.\r\n * @param {!Array.} bytes Little endian byte representation\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {Long} The corresponding Long value\r\n */\r\nLong.fromBytesLE = function fromBytesLE(bytes, unsigned) {\r\n return new Long(\r\n bytes[0] |\r\n bytes[1] << 8 |\r\n bytes[2] << 16 |\r\n bytes[3] << 24,\r\n bytes[4] |\r\n bytes[5] << 8 |\r\n bytes[6] << 16 |\r\n bytes[7] << 24,\r\n unsigned\r\n );\r\n};\r\n\r\n/**\r\n * Creates a Long from its big endian byte representation.\r\n * @param {!Array.} bytes Big endian byte representation\r\n * @param {boolean=} unsigned Whether unsigned or not, defaults to signed\r\n * @returns {Long} The corresponding Long value\r\n */\r\nLong.fromBytesBE = function fromBytesBE(bytes, unsigned) {\r\n return new Long(\r\n bytes[4] << 24 |\r\n bytes[5] << 16 |\r\n bytes[6] << 8 |\r\n bytes[7],\r\n bytes[0] << 24 |\r\n bytes[1] << 16 |\r\n bytes[2] << 8 |\r\n bytes[3],\r\n unsigned\r\n );\r\n};\r\n","import BigNumber from \"bignumber.js\";\nimport { valueToLong } from \"./long.js\";\nimport HbarUnit from \"./HbarUnit.js\";\n\nimport Long from \"long\";\n\n/**\n * @typedef {import(\"./long.js\").LongObject} LongObject\n */\n\nexport default class Hbar {\n /**\n * @param {number | string | Long | LongObject | BigNumber} amount\n * @param {HbarUnit=} unit\n */\n constructor(amount, unit = HbarUnit.Hbar) {\n if (unit === HbarUnit.Tinybar) {\n this._valueInTinybar = valueToLong(amount);\n } else {\n /** @type {BigNumber} */\n let bigAmount;\n\n if (Long.isLong(amount)) {\n bigAmount = new BigNumber(amount.toString(10));\n } else if (\n BigNumber.isBigNumber(amount) ||\n typeof amount === \"string\" ||\n typeof amount === \"number\"\n ) {\n bigAmount = new BigNumber(amount);\n } else {\n bigAmount = new BigNumber(0);\n }\n\n /**\n * @type {BigNumber}\n */\n this._valueInTinybar = bigAmount.multipliedBy(unit._tinybar);\n }\n if (!this._valueInTinybar.isInteger()) {\n throw new Error(\"Hbar in tinybars contains decimals\");\n }\n }\n\n /**\n * @param {number | Long | BigNumber} amount\n * @param {HbarUnit} unit\n * @returns {Hbar}\n */\n static from(amount, unit) {\n return new Hbar(amount, unit);\n }\n\n /**\n * @param {number | Long | string | BigNumber} amount\n * @returns {Hbar}\n */\n static fromTinybars(amount) {\n if (typeof amount === \"string\") {\n return this.fromString(amount, HbarUnit.Tinybar);\n }\n return new Hbar(amount, HbarUnit.Tinybar);\n }\n\n /**\n * @param {string} str\n * @param {HbarUnit=} unit\n * @returns {Hbar}\n */\n static fromString(str, unit = HbarUnit.Hbar) {\n const pattern = /^((?:\\+|-)?\\d+(?:\\.\\d+)?)(?: (tℏ|μℏ|mℏ|ℏ|kℏ|Mℏ|Gℏ))?$/;\n if (pattern.test(str)) {\n let [amount, symbol] = str.split(\" \");\n if (symbol != null) {\n unit = HbarUnit.fromString(symbol);\n }\n return new Hbar(new BigNumber(amount), unit);\n } else {\n throw new Error(\"invalid argument provided\");\n }\n }\n\n /**\n * @param {HbarUnit} unit\n * @returns {BigNumber}\n */\n to(unit) {\n return this._valueInTinybar.dividedBy(unit._tinybar);\n }\n\n /**\n * @returns {BigNumber}\n */\n toBigNumber() {\n return this.to(HbarUnit.Hbar);\n }\n\n /**\n * @returns {Long}\n */\n toTinybars() {\n return Long.fromValue(this._valueInTinybar.toFixed());\n }\n\n /**\n * @returns {Hbar}\n */\n negated() {\n return Hbar.fromTinybars(this._valueInTinybar.negated());\n }\n\n /**\n * @param {HbarUnit=} unit\n * @returns {string}\n */\n toString(unit) {\n if (unit != null) {\n return `${this._valueInTinybar\n .dividedBy(unit._tinybar)\n .toString()} ${unit._symbol}`;\n }\n\n if (\n this._valueInTinybar.isLessThan(10000) &&\n this._valueInTinybar.isGreaterThan(-10000)\n ) {\n return `${this._valueInTinybar.toFixed()} ${\n HbarUnit.Tinybar._symbol\n }`;\n }\n\n return `${this.to(HbarUnit.Hbar).toString()} ${HbarUnit.Hbar._symbol}`;\n }\n}\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","import BigNumber from \"bignumber.js\";\nimport { valueToLong } from \"./long.js\";\nimport HbarUnit from \"./HbarUnit.js\";\n\nimport Long from \"long\";\n\n/**\n * @typedef {import(\"./long.js\").LongObject} LongObject\n */\n\nexport default class Hbar {\n /**\n * @param {number | string | Long | LongObject | BigNumber} amount\n * @param {HbarUnit=} unit\n */\n constructor(amount, unit = HbarUnit.Hbar) {\n if (unit === HbarUnit.Tinybar) {\n this._valueInTinybar = valueToLong(amount);\n } else {\n /** @type {BigNumber} */\n let bigAmount;\n\n if (Long.isLong(amount)) {\n bigAmount = new BigNumber(amount.toString(10));\n } else if (\n BigNumber.isBigNumber(amount) ||\n typeof amount === \"string\" ||\n typeof amount === \"number\"\n ) {\n bigAmount = new BigNumber(amount);\n } else {\n bigAmount = new BigNumber(0);\n }\n\n /**\n * @type {BigNumber}\n */\n this._valueInTinybar = bigAmount.multipliedBy(unit._tinybar);\n }\n if (!this._valueInTinybar.isInteger()) {\n throw new Error(\"Hbar in tinybars contains decimals\");\n }\n }\n\n /**\n * @param {number | Long | BigNumber} amount\n * @param {HbarUnit} unit\n * @returns {Hbar}\n */\n static from(amount, unit) {\n return new Hbar(amount, unit);\n }\n\n /**\n * @param {number | Long | string | BigNumber} amount\n * @returns {Hbar}\n */\n static fromTinybars(amount) {\n if (typeof amount === \"string\") {\n return this.fromString(amount, HbarUnit.Tinybar);\n }\n return new Hbar(amount, HbarUnit.Tinybar);\n }\n\n /**\n * @param {string} str\n * @param {HbarUnit=} unit\n * @returns {Hbar}\n */\n static fromString(str, unit = HbarUnit.Hbar) {\n const pattern = /^((?:\\+|-)?\\d+(?:\\.\\d+)?)(?: (tℏ|μℏ|mℏ|ℏ|kℏ|Mℏ|Gℏ))?$/;\n if (pattern.test(str)) {\n let [amount, symbol] = str.split(\" \");\n if (symbol != null) {\n unit = HbarUnit.fromString(symbol);\n }\n return new Hbar(new BigNumber(amount), unit);\n } else {\n throw new Error(\"invalid argument provided\");\n }\n }\n\n /**\n * @param {HbarUnit} unit\n * @returns {BigNumber}\n */\n to(unit) {\n return this._valueInTinybar.dividedBy(unit._tinybar);\n }\n\n /**\n * @returns {BigNumber}\n */\n toBigNumber() {\n return this.to(HbarUnit.Hbar);\n }\n\n /**\n * @returns {Long}\n */\n toTinybars() {\n return Long.fromValue(this._valueInTinybar.toFixed());\n }\n\n /**\n * @returns {Hbar}\n */\n negated() {\n return Hbar.fromTinybars(this._valueInTinybar.negated());\n }\n\n /**\n * @param {HbarUnit=} unit\n * @returns {string}\n */\n toString(unit) {\n if (unit != null) {\n return `${this._valueInTinybar\n .dividedBy(unit._tinybar)\n .toString()} ${unit._symbol}`;\n }\n\n if (\n this._valueInTinybar.isLessThan(10000) &&\n this._valueInTinybar.isGreaterThan(-10000)\n ) {\n return `${this._valueInTinybar.toFixed()} ${\n HbarUnit.Tinybar._symbol\n }`;\n }\n\n return `${this.to(HbarUnit.Hbar).toString()} ${HbarUnit.Hbar._symbol}`;\n }\n}\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * The ID for a crypto-currency token on Hedera.\n */\nexport default class TokenId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {TokenId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new TokenId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.ITokenID} id\n * @returns {TokenId}\n */\n static _fromProtobuf(id) {\n const tokenId = new TokenId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.tokenNum != null ? id.tokenNum : 0\n );\n\n return tokenId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TokenId}\n */\n static fromBytes(bytes) {\n return TokenId._fromProtobuf(proto.TokenID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {TokenId}\n */\n static fromSolidityAddress(address) {\n return new TokenId(...entity_id.fromSolidityAddress(address));\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.ITokenID}\n */\n _toProtobuf() {\n return {\n tokenNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TokenID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {TokenId}\n */\n clone() {\n const id = new TokenId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {TokenId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n","import * as $protobuf from \"protobufjs/minimal.js\";\nimport { proto } from \"./proto.js\";\nimport Long from \"long\";\n\n/**\n * Patch protobuf race condition between loading protobuf and Long.js libraries.\n */\n(() => {\n var $util = $protobuf.util;\n\n if ($util.Long == null) {\n console.log(`Patching Protobuf Long.js instance...`);\n $util.Long = Long;\n\n if ($protobuf.Reader._configure != null) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n $protobuf.Reader._configure($protobuf.BufferReader);\n }\n }\n})();\n\n// re-export protobuf reader for usage by @hashgraph/sdk\nexport const Reader = $protobuf.Reader;\nexport const Writer = $protobuf.Writer;\n\nexport const TokenUnitBalance = proto.TokenUnitBalance;\nexport const SingleAccountBalances = proto.SingleAccountBalances;\nexport const AllAccountBalances = proto.AllAccountBalances;\nexport const ShardID = proto.ShardID;\nexport const RealmID = proto.RealmID;\nexport const AccountID = proto.AccountID;\nexport const FileID = proto.FileID;\nexport const ContractID = proto.ContractID;\nexport const TransactionID = proto.TransactionID;\nexport const AccountAmount = proto.AccountAmount;\nexport const TransferList = proto.TransferList;\nexport const NftTransfer = proto.NftTransfer;\nexport const TokenTransferList = proto.TokenTransferList;\nexport const Fraction = proto.Fraction;\nexport const TopicID = proto.TopicID;\nexport const TokenID = proto.TokenID;\nexport const ScheduleID = proto.ScheduleID;\nexport const TokenType = proto.TokenType;\nexport const SubType = proto.SubType;\nexport const TokenSupplyType = proto.TokenSupplyType;\nexport const TokenFreezeStatus = proto.TokenFreezeStatus;\nexport const TokenKycStatus = proto.TokenKycStatus;\nexport const Key = proto.Key;\nexport const ThresholdKey = proto.ThresholdKey;\nexport const KeyList = proto.KeyList;\nexport const Signature = proto.Signature;\nexport const ThresholdSignature = proto.ThresholdSignature;\nexport const SignatureList = proto.SignatureList;\nexport const SignaturePair = proto.SignaturePair;\nexport const SignatureMap = proto.SignatureMap;\nexport const HederaFunctionality = proto.HederaFunctionality;\nexport const FeeComponents = proto.FeeComponents;\nexport const TransactionFeeSchedule = proto.TransactionFeeSchedule;\nexport const FeeData = proto.FeeData;\nexport const FeeSchedule = proto.FeeSchedule;\nexport const CurrentAndNextFeeSchedule = proto.CurrentAndNextFeeSchedule;\nexport const ServiceEndpoint = proto.ServiceEndpoint;\nexport const NodeAddress = proto.NodeAddress;\nexport const NodeAddressBook = proto.NodeAddressBook;\nexport const SemanticVersion = proto.SemanticVersion;\nexport const Setting = proto.Setting;\nexport const ServicesConfigurationList = proto.ServicesConfigurationList;\nexport const TokenRelationship = proto.TokenRelationship;\nexport const TokenBalance = proto.TokenBalance;\nexport const TokenBalances = proto.TokenBalances;\nexport const Timestamp = proto.Timestamp;\nexport const TimestampSeconds = proto.TimestampSeconds;\nexport const ConsensusCreateTopicTransactionBody = proto.ConsensusCreateTopicTransactionBody;\nexport const Duration = proto.Duration;\nexport const ConsensusDeleteTopicTransactionBody = proto.ConsensusDeleteTopicTransactionBody;\nexport const ConsensusGetTopicInfoQuery = proto.ConsensusGetTopicInfoQuery;\nexport const ConsensusGetTopicInfoResponse = proto.ConsensusGetTopicInfoResponse;\nexport const ResponseType = proto.ResponseType;\nexport const QueryHeader = proto.QueryHeader;\nexport const Transaction = proto.Transaction;\nexport const TransactionBody = proto.TransactionBody;\nexport const SystemDeleteTransactionBody = proto.SystemDeleteTransactionBody;\nexport const SystemUndeleteTransactionBody = proto.SystemUndeleteTransactionBody;\nexport const FreezeTransactionBody = proto.FreezeTransactionBody;\nexport const ContractCallTransactionBody = proto.ContractCallTransactionBody;\nexport const ContractCreateTransactionBody = proto.ContractCreateTransactionBody;\nexport const ContractUpdateTransactionBody = proto.ContractUpdateTransactionBody;\nexport const LiveHash = proto.LiveHash;\nexport const CryptoAddLiveHashTransactionBody = proto.CryptoAddLiveHashTransactionBody;\nexport const CryptoCreateTransactionBody = proto.CryptoCreateTransactionBody;\nexport const CryptoDeleteTransactionBody = proto.CryptoDeleteTransactionBody;\nexport const CryptoDeleteLiveHashTransactionBody = proto.CryptoDeleteLiveHashTransactionBody;\nexport const CryptoTransferTransactionBody = proto.CryptoTransferTransactionBody;\nexport const CryptoUpdateTransactionBody = proto.CryptoUpdateTransactionBody;\nexport const CryptoApproveAllowanceTransactionBody = proto.CryptoApproveAllowanceTransactionBody;\nexport const CryptoAdjustAllowanceTransactionBody = proto.CryptoAdjustAllowanceTransactionBody;\nexport const FileAppendTransactionBody = proto.FileAppendTransactionBody;\nexport const FileCreateTransactionBody = proto.FileCreateTransactionBody;\nexport const FileDeleteTransactionBody = proto.FileDeleteTransactionBody;\nexport const FileUpdateTransactionBody = proto.FileUpdateTransactionBody;\nexport const ContractDeleteTransactionBody = proto.ContractDeleteTransactionBody;\nexport const ConsensusUpdateTopicTransactionBody = proto.ConsensusUpdateTopicTransactionBody;\nexport const ConsensusMessageChunkInfo = proto.ConsensusMessageChunkInfo;\nexport const ConsensusSubmitMessageTransactionBody = proto.ConsensusSubmitMessageTransactionBody;\nexport const UncheckedSubmitBody = proto.UncheckedSubmitBody;\nexport const TokenCreateTransactionBody = proto.TokenCreateTransactionBody;\nexport const FractionalFee = proto.FractionalFee;\nexport const FixedFee = proto.FixedFee;\nexport const CustomFee = proto.CustomFee;\nexport const AssessedCustomFee = proto.AssessedCustomFee;\nexport const RoyaltyFee = proto.RoyaltyFee;\nexport const TokenFreezeAccountTransactionBody = proto.TokenFreezeAccountTransactionBody;\nexport const TokenUnfreezeAccountTransactionBody = proto.TokenUnfreezeAccountTransactionBody;\nexport const TokenGrantKycTransactionBody = proto.TokenGrantKycTransactionBody;\nexport const TokenRevokeKycTransactionBody = proto.TokenRevokeKycTransactionBody;\nexport const TokenDeleteTransactionBody = proto.TokenDeleteTransactionBody;\nexport const TokenUpdateTransactionBody = proto.TokenUpdateTransactionBody;\nexport const TokenMintTransactionBody = proto.TokenMintTransactionBody;\nexport const TokenBurnTransactionBody = proto.TokenBurnTransactionBody;\nexport const TokenWipeAccountTransactionBody = proto.TokenWipeAccountTransactionBody;\nexport const TokenAssociateTransactionBody = proto.TokenAssociateTransactionBody;\nexport const TokenDissociateTransactionBody = proto.TokenDissociateTransactionBody;\nexport const TokenFeeScheduleUpdateTransactionBody = proto.TokenFeeScheduleUpdateTransactionBody;\nexport const ScheduleCreateTransactionBody = proto.ScheduleCreateTransactionBody;\nexport const SchedulableTransactionBody = proto.SchedulableTransactionBody;\nexport const ScheduleDeleteTransactionBody = proto.ScheduleDeleteTransactionBody;\nexport const ScheduleSignTransactionBody = proto.ScheduleSignTransactionBody;\nexport const ResponseHeader = proto.ResponseHeader;\nexport const TransactionResponse = proto.TransactionResponse;\nexport const ResponseCodeEnum = proto.ResponseCodeEnum;\nexport const ConsensusTopicInfo = proto.ConsensusTopicInfo;\nexport const ConsensusService = proto.ConsensusService;\nexport const Query = proto.Query;\nexport const GetByKeyQuery = proto.GetByKeyQuery;\nexport const EntityID = proto.EntityID;\nexport const GetByKeyResponse = proto.GetByKeyResponse;\nexport const GetBySolidityIDQuery = proto.GetBySolidityIDQuery;\nexport const GetBySolidityIDResponse = proto.GetBySolidityIDResponse;\nexport const ContractLoginfo = proto.ContractLoginfo;\nexport const ContractFunctionResult = proto.ContractFunctionResult;\nexport const ContractCallLocalQuery = proto.ContractCallLocalQuery;\nexport const ContractCallLocalResponse = proto.ContractCallLocalResponse;\nexport const ContractGetInfoQuery = proto.ContractGetInfoQuery;\nexport const ContractGetInfoResponse = proto.ContractGetInfoResponse;\nexport const ContractInfo = proto.ContractGetInfoResponse.ContractInfo;\nexport const ContractGetBytecodeQuery = proto.ContractGetBytecodeQuery;\nexport const ContractGetBytecodeResponse = proto.ContractGetBytecodeResponse;\nexport const ContractGetRecordsQuery = proto.ContractGetRecordsQuery;\nexport const ContractGetRecordsResponse = proto.ContractGetRecordsResponse;\nexport const ContractStateChange = proto.ContractStateChange;\nexport const StorageChange = proto.StorageChange;\nexport const TransactionRecord = proto.TransactionRecord;\nexport const TransactionReceipt = proto.TransactionReceipt;\nexport const ExchangeRate = proto.ExchangeRate;\nexport const ExchangeRateSet = proto.ExchangeRateSet;\nexport const CryptoGetAccountBalanceQuery = proto.CryptoGetAccountBalanceQuery;\nexport const CryptoGetAccountBalanceResponse = proto.CryptoGetAccountBalanceResponse;\nexport const CryptoGetAccountRecordsQuery = proto.CryptoGetAccountRecordsQuery;\nexport const CryptoGetAccountRecordsResponse = proto.CryptoGetAccountRecordsResponse;\nexport const CryptoGetInfoQuery = proto.CryptoGetInfoQuery;\nexport const CryptoGetInfoResponse = proto.CryptoGetInfoResponse;\nexport const AccountInfo = proto.CryptoGetInfoResponse.AccountInfo;\nexport const CryptoAllowance = proto.CryptoAllowance;\nexport const TokenAllowance = proto.TokenAllowance;\nexport const NftAllowance = proto.NftAllowance;\nexport const CryptoGetLiveHashQuery = proto.CryptoGetLiveHashQuery;\nexport const CryptoGetLiveHashResponse = proto.CryptoGetLiveHashResponse;\nexport const CryptoGetStakersQuery = proto.CryptoGetStakersQuery;\nexport const ProxyStaker = proto.ProxyStaker;\nexport const AllProxyStakers = proto.AllProxyStakers;\nexport const CryptoGetStakersResponse = proto.CryptoGetStakersResponse;\nexport const FileGetContentsQuery = proto.FileGetContentsQuery;\nexport const FileGetContentsResponse = proto.FileGetContentsResponse;\nexport const FileContents = proto.FileGetContentsResponse.FileContents;\nexport const FileGetInfoQuery = proto.FileGetInfoQuery;\nexport const FileGetInfoResponse = proto.FileGetInfoResponse;\nexport const FileInfo = proto.FileGetInfoResponse.FileInfo;\nexport const TransactionGetReceiptQuery = proto.TransactionGetReceiptQuery;\nexport const TransactionGetReceiptResponse = proto.TransactionGetReceiptResponse;\nexport const TransactionGetRecordQuery = proto.TransactionGetRecordQuery;\nexport const TransactionGetRecordResponse = proto.TransactionGetRecordResponse;\nexport const TransactionGetFastRecordQuery = proto.TransactionGetFastRecordQuery;\nexport const TransactionGetFastRecordResponse = proto.TransactionGetFastRecordResponse;\nexport const NetworkGetVersionInfoQuery = proto.NetworkGetVersionInfoQuery;\nexport const NetworkGetVersionInfoResponse = proto.NetworkGetVersionInfoResponse;\nexport const TokenGetInfoQuery = proto.TokenGetInfoQuery;\nexport const TokenInfo = proto.TokenInfo;\nexport const TokenGetInfoResponse = proto.TokenGetInfoResponse;\nexport const ScheduleGetInfoQuery = proto.ScheduleGetInfoQuery;\nexport const ScheduleInfo = proto.ScheduleInfo;\nexport const ScheduleGetInfoResponse = proto.ScheduleGetInfoResponse;\nexport const TokenGetAccountNftInfosQuery = proto.TokenGetAccountNftInfosQuery;\nexport const TokenGetAccountNftInfosResponse = proto.TokenGetAccountNftInfosResponse;\nexport const NftID = proto.NftID;\nexport const TokenGetNftInfoQuery = proto.TokenGetNftInfoQuery;\nexport const TokenNftInfo = proto.TokenNftInfo;\nexport const TokenGetNftInfoResponse = proto.TokenGetNftInfoResponse;\nexport const TokenGetNftInfosQuery = proto.TokenGetNftInfosQuery;\nexport const TokenGetNftInfosResponse = proto.TokenGetNftInfosResponse;\nexport const Response = proto.Response;\nexport const CryptoService = proto.CryptoService;\nexport const FileService = proto.FileService;\nexport const FreezeService = proto.FreezeService;\nexport const ConsensusTopicQuery = proto.ConsensusTopicQuery;\nexport const ConsensusTopicResponse = proto.ConsensusTopicResponse;\nexport const MirrorConsensusService = proto.MirrorConsensusService;\nexport const NetworkService = proto.NetworkService;\nexport const ScheduleService = proto.ScheduleService;\nexport const SmartContractService = proto.SmartContractService;\nexport const ThrottleGroup = proto.ThrottleGroup;\nexport const ThrottleBucket = proto.ThrottleBucket;\nexport const ThrottleDefinitions = proto.ThrottleDefinitions;\nexport const TokenService = proto.TokenService;\nexport const SignedTransaction = proto.SignedTransaction;\nexport const TransactionList = proto.TransactionList;\nexport const DoubleValue = proto.DoubleValue;\nexport const FloatValue = proto.FloatValue;\nexport const UInt64Value = proto.UInt64Value;\nexport const UInt32Value = proto.UInt32Value;\nexport const BoolValue = proto.BoolValue;\nexport const StringValue = proto.StringValue;\nexport const BytesValue = proto.BytesValue;\nexport const TokenPauseTransactionBody = proto.TokenPauseTransactionBody;\nexport const TokenUnpauseTransactionBody = proto.TokenUnpauseTransactionBody;\nexport const TokenPauseStatus = proto.TokenPauseStatus;\nexport const FreezeType = proto.FreezeType;\nexport const AddressBookQuery = proto.AddressBookQuery;\nexport const MirrorNetworkService = proto.MirrorNetworkService;\n","import * as $protobuf from \"protobufjs/minimal.js\";\nimport { proto } from \"./proto.js\";\nimport Long from \"long\";\n\n/**\n * Patch protobuf race condition between loading protobuf and Long.js libraries.\n */\n(() => {\n var $util = $protobuf.util;\n\n if ($util.Long == null) {\n console.log(`Patching Protobuf Long.js instance...`);\n $util.Long = Long;\n\n if ($protobuf.Reader._configure != null) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n $protobuf.Reader._configure($protobuf.BufferReader);\n }\n }\n})();\n\n// re-export protobuf reader for usage by @hashgraph/sdk\nexport const Reader = $protobuf.Reader;\nexport const Writer = $protobuf.Writer;\n\nexport const TokenUnitBalance = proto.TokenUnitBalance;\nexport const SingleAccountBalances = proto.SingleAccountBalances;\nexport const AllAccountBalances = proto.AllAccountBalances;\nexport const ShardID = proto.ShardID;\nexport const RealmID = proto.RealmID;\nexport const AccountID = proto.AccountID;\nexport const FileID = proto.FileID;\nexport const ContractID = proto.ContractID;\nexport const TransactionID = proto.TransactionID;\nexport const AccountAmount = proto.AccountAmount;\nexport const TransferList = proto.TransferList;\nexport const NftTransfer = proto.NftTransfer;\nexport const TokenTransferList = proto.TokenTransferList;\nexport const Fraction = proto.Fraction;\nexport const TopicID = proto.TopicID;\nexport const TokenID = proto.TokenID;\nexport const ScheduleID = proto.ScheduleID;\nexport const TokenType = proto.TokenType;\nexport const SubType = proto.SubType;\nexport const TokenSupplyType = proto.TokenSupplyType;\nexport const TokenFreezeStatus = proto.TokenFreezeStatus;\nexport const TokenKycStatus = proto.TokenKycStatus;\nexport const Key = proto.Key;\nexport const ThresholdKey = proto.ThresholdKey;\nexport const KeyList = proto.KeyList;\nexport const Signature = proto.Signature;\nexport const ThresholdSignature = proto.ThresholdSignature;\nexport const SignatureList = proto.SignatureList;\nexport const SignaturePair = proto.SignaturePair;\nexport const SignatureMap = proto.SignatureMap;\nexport const HederaFunctionality = proto.HederaFunctionality;\nexport const FeeComponents = proto.FeeComponents;\nexport const TransactionFeeSchedule = proto.TransactionFeeSchedule;\nexport const FeeData = proto.FeeData;\nexport const FeeSchedule = proto.FeeSchedule;\nexport const CurrentAndNextFeeSchedule = proto.CurrentAndNextFeeSchedule;\nexport const ServiceEndpoint = proto.ServiceEndpoint;\nexport const NodeAddress = proto.NodeAddress;\nexport const NodeAddressBook = proto.NodeAddressBook;\nexport const SemanticVersion = proto.SemanticVersion;\nexport const Setting = proto.Setting;\nexport const ServicesConfigurationList = proto.ServicesConfigurationList;\nexport const TokenRelationship = proto.TokenRelationship;\nexport const TokenBalance = proto.TokenBalance;\nexport const TokenBalances = proto.TokenBalances;\nexport const Timestamp = proto.Timestamp;\nexport const TimestampSeconds = proto.TimestampSeconds;\nexport const ConsensusCreateTopicTransactionBody = proto.ConsensusCreateTopicTransactionBody;\nexport const Duration = proto.Duration;\nexport const ConsensusDeleteTopicTransactionBody = proto.ConsensusDeleteTopicTransactionBody;\nexport const ConsensusGetTopicInfoQuery = proto.ConsensusGetTopicInfoQuery;\nexport const ConsensusGetTopicInfoResponse = proto.ConsensusGetTopicInfoResponse;\nexport const ResponseType = proto.ResponseType;\nexport const QueryHeader = proto.QueryHeader;\nexport const Transaction = proto.Transaction;\nexport const TransactionBody = proto.TransactionBody;\nexport const SystemDeleteTransactionBody = proto.SystemDeleteTransactionBody;\nexport const SystemUndeleteTransactionBody = proto.SystemUndeleteTransactionBody;\nexport const FreezeTransactionBody = proto.FreezeTransactionBody;\nexport const ContractCallTransactionBody = proto.ContractCallTransactionBody;\nexport const ContractCreateTransactionBody = proto.ContractCreateTransactionBody;\nexport const ContractUpdateTransactionBody = proto.ContractUpdateTransactionBody;\nexport const LiveHash = proto.LiveHash;\nexport const CryptoAddLiveHashTransactionBody = proto.CryptoAddLiveHashTransactionBody;\nexport const CryptoCreateTransactionBody = proto.CryptoCreateTransactionBody;\nexport const CryptoDeleteTransactionBody = proto.CryptoDeleteTransactionBody;\nexport const CryptoDeleteLiveHashTransactionBody = proto.CryptoDeleteLiveHashTransactionBody;\nexport const CryptoTransferTransactionBody = proto.CryptoTransferTransactionBody;\nexport const CryptoUpdateTransactionBody = proto.CryptoUpdateTransactionBody;\nexport const CryptoApproveAllowanceTransactionBody = proto.CryptoApproveAllowanceTransactionBody;\nexport const CryptoAdjustAllowanceTransactionBody = proto.CryptoAdjustAllowanceTransactionBody;\nexport const FileAppendTransactionBody = proto.FileAppendTransactionBody;\nexport const FileCreateTransactionBody = proto.FileCreateTransactionBody;\nexport const FileDeleteTransactionBody = proto.FileDeleteTransactionBody;\nexport const FileUpdateTransactionBody = proto.FileUpdateTransactionBody;\nexport const ContractDeleteTransactionBody = proto.ContractDeleteTransactionBody;\nexport const ConsensusUpdateTopicTransactionBody = proto.ConsensusUpdateTopicTransactionBody;\nexport const ConsensusMessageChunkInfo = proto.ConsensusMessageChunkInfo;\nexport const ConsensusSubmitMessageTransactionBody = proto.ConsensusSubmitMessageTransactionBody;\nexport const UncheckedSubmitBody = proto.UncheckedSubmitBody;\nexport const TokenCreateTransactionBody = proto.TokenCreateTransactionBody;\nexport const FractionalFee = proto.FractionalFee;\nexport const FixedFee = proto.FixedFee;\nexport const CustomFee = proto.CustomFee;\nexport const AssessedCustomFee = proto.AssessedCustomFee;\nexport const RoyaltyFee = proto.RoyaltyFee;\nexport const TokenFreezeAccountTransactionBody = proto.TokenFreezeAccountTransactionBody;\nexport const TokenUnfreezeAccountTransactionBody = proto.TokenUnfreezeAccountTransactionBody;\nexport const TokenGrantKycTransactionBody = proto.TokenGrantKycTransactionBody;\nexport const TokenRevokeKycTransactionBody = proto.TokenRevokeKycTransactionBody;\nexport const TokenDeleteTransactionBody = proto.TokenDeleteTransactionBody;\nexport const TokenUpdateTransactionBody = proto.TokenUpdateTransactionBody;\nexport const TokenMintTransactionBody = proto.TokenMintTransactionBody;\nexport const TokenBurnTransactionBody = proto.TokenBurnTransactionBody;\nexport const TokenWipeAccountTransactionBody = proto.TokenWipeAccountTransactionBody;\nexport const TokenAssociateTransactionBody = proto.TokenAssociateTransactionBody;\nexport const TokenDissociateTransactionBody = proto.TokenDissociateTransactionBody;\nexport const TokenFeeScheduleUpdateTransactionBody = proto.TokenFeeScheduleUpdateTransactionBody;\nexport const ScheduleCreateTransactionBody = proto.ScheduleCreateTransactionBody;\nexport const SchedulableTransactionBody = proto.SchedulableTransactionBody;\nexport const ScheduleDeleteTransactionBody = proto.ScheduleDeleteTransactionBody;\nexport const ScheduleSignTransactionBody = proto.ScheduleSignTransactionBody;\nexport const ResponseHeader = proto.ResponseHeader;\nexport const TransactionResponse = proto.TransactionResponse;\nexport const ResponseCodeEnum = proto.ResponseCodeEnum;\nexport const ConsensusTopicInfo = proto.ConsensusTopicInfo;\nexport const ConsensusService = proto.ConsensusService;\nexport const Query = proto.Query;\nexport const GetByKeyQuery = proto.GetByKeyQuery;\nexport const EntityID = proto.EntityID;\nexport const GetByKeyResponse = proto.GetByKeyResponse;\nexport const GetBySolidityIDQuery = proto.GetBySolidityIDQuery;\nexport const GetBySolidityIDResponse = proto.GetBySolidityIDResponse;\nexport const ContractLoginfo = proto.ContractLoginfo;\nexport const ContractFunctionResult = proto.ContractFunctionResult;\nexport const ContractCallLocalQuery = proto.ContractCallLocalQuery;\nexport const ContractCallLocalResponse = proto.ContractCallLocalResponse;\nexport const ContractGetInfoQuery = proto.ContractGetInfoQuery;\nexport const ContractGetInfoResponse = proto.ContractGetInfoResponse;\nexport const ContractInfo = proto.ContractGetInfoResponse.ContractInfo;\nexport const ContractGetBytecodeQuery = proto.ContractGetBytecodeQuery;\nexport const ContractGetBytecodeResponse = proto.ContractGetBytecodeResponse;\nexport const ContractGetRecordsQuery = proto.ContractGetRecordsQuery;\nexport const ContractGetRecordsResponse = proto.ContractGetRecordsResponse;\nexport const ContractStateChange = proto.ContractStateChange;\nexport const StorageChange = proto.StorageChange;\nexport const TransactionRecord = proto.TransactionRecord;\nexport const TransactionReceipt = proto.TransactionReceipt;\nexport const ExchangeRate = proto.ExchangeRate;\nexport const ExchangeRateSet = proto.ExchangeRateSet;\nexport const CryptoGetAccountBalanceQuery = proto.CryptoGetAccountBalanceQuery;\nexport const CryptoGetAccountBalanceResponse = proto.CryptoGetAccountBalanceResponse;\nexport const CryptoGetAccountRecordsQuery = proto.CryptoGetAccountRecordsQuery;\nexport const CryptoGetAccountRecordsResponse = proto.CryptoGetAccountRecordsResponse;\nexport const CryptoGetInfoQuery = proto.CryptoGetInfoQuery;\nexport const CryptoGetInfoResponse = proto.CryptoGetInfoResponse;\nexport const AccountInfo = proto.CryptoGetInfoResponse.AccountInfo;\nexport const CryptoAllowance = proto.CryptoAllowance;\nexport const TokenAllowance = proto.TokenAllowance;\nexport const NftAllowance = proto.NftAllowance;\nexport const CryptoGetLiveHashQuery = proto.CryptoGetLiveHashQuery;\nexport const CryptoGetLiveHashResponse = proto.CryptoGetLiveHashResponse;\nexport const CryptoGetStakersQuery = proto.CryptoGetStakersQuery;\nexport const ProxyStaker = proto.ProxyStaker;\nexport const AllProxyStakers = proto.AllProxyStakers;\nexport const CryptoGetStakersResponse = proto.CryptoGetStakersResponse;\nexport const FileGetContentsQuery = proto.FileGetContentsQuery;\nexport const FileGetContentsResponse = proto.FileGetContentsResponse;\nexport const FileContents = proto.FileGetContentsResponse.FileContents;\nexport const FileGetInfoQuery = proto.FileGetInfoQuery;\nexport const FileGetInfoResponse = proto.FileGetInfoResponse;\nexport const FileInfo = proto.FileGetInfoResponse.FileInfo;\nexport const TransactionGetReceiptQuery = proto.TransactionGetReceiptQuery;\nexport const TransactionGetReceiptResponse = proto.TransactionGetReceiptResponse;\nexport const TransactionGetRecordQuery = proto.TransactionGetRecordQuery;\nexport const TransactionGetRecordResponse = proto.TransactionGetRecordResponse;\nexport const TransactionGetFastRecordQuery = proto.TransactionGetFastRecordQuery;\nexport const TransactionGetFastRecordResponse = proto.TransactionGetFastRecordResponse;\nexport const NetworkGetVersionInfoQuery = proto.NetworkGetVersionInfoQuery;\nexport const NetworkGetVersionInfoResponse = proto.NetworkGetVersionInfoResponse;\nexport const TokenGetInfoQuery = proto.TokenGetInfoQuery;\nexport const TokenInfo = proto.TokenInfo;\nexport const TokenGetInfoResponse = proto.TokenGetInfoResponse;\nexport const ScheduleGetInfoQuery = proto.ScheduleGetInfoQuery;\nexport const ScheduleInfo = proto.ScheduleInfo;\nexport const ScheduleGetInfoResponse = proto.ScheduleGetInfoResponse;\nexport const TokenGetAccountNftInfosQuery = proto.TokenGetAccountNftInfosQuery;\nexport const TokenGetAccountNftInfosResponse = proto.TokenGetAccountNftInfosResponse;\nexport const NftID = proto.NftID;\nexport const TokenGetNftInfoQuery = proto.TokenGetNftInfoQuery;\nexport const TokenNftInfo = proto.TokenNftInfo;\nexport const TokenGetNftInfoResponse = proto.TokenGetNftInfoResponse;\nexport const TokenGetNftInfosQuery = proto.TokenGetNftInfosQuery;\nexport const TokenGetNftInfosResponse = proto.TokenGetNftInfosResponse;\nexport const Response = proto.Response;\nexport const CryptoService = proto.CryptoService;\nexport const FileService = proto.FileService;\nexport const FreezeService = proto.FreezeService;\nexport const ConsensusTopicQuery = proto.ConsensusTopicQuery;\nexport const ConsensusTopicResponse = proto.ConsensusTopicResponse;\nexport const MirrorConsensusService = proto.MirrorConsensusService;\nexport const NetworkService = proto.NetworkService;\nexport const ScheduleService = proto.ScheduleService;\nexport const SmartContractService = proto.SmartContractService;\nexport const ThrottleGroup = proto.ThrottleGroup;\nexport const ThrottleBucket = proto.ThrottleBucket;\nexport const ThrottleDefinitions = proto.ThrottleDefinitions;\nexport const TokenService = proto.TokenService;\nexport const SignedTransaction = proto.SignedTransaction;\nexport const TransactionList = proto.TransactionList;\nexport const DoubleValue = proto.DoubleValue;\nexport const FloatValue = proto.FloatValue;\nexport const UInt64Value = proto.UInt64Value;\nexport const UInt32Value = proto.UInt32Value;\nexport const BoolValue = proto.BoolValue;\nexport const StringValue = proto.StringValue;\nexport const BytesValue = proto.BytesValue;\nexport const TokenPauseTransactionBody = proto.TokenPauseTransactionBody;\nexport const TokenUnpauseTransactionBody = proto.TokenUnpauseTransactionBody;\nexport const TokenPauseStatus = proto.TokenPauseStatus;\nexport const FreezeType = proto.FreezeType;\nexport const AddressBookQuery = proto.AddressBookQuery;\nexport const MirrorNetworkService = proto.MirrorNetworkService;\n","import BigNumber from \"bignumber.js\";\nimport { valueToLong } from \"./long.js\";\nimport HbarUnit from \"./HbarUnit.js\";\n\nimport Long from \"long\";\n\n/**\n * @typedef {import(\"./long.js\").LongObject} LongObject\n */\n\nexport default class Hbar {\n /**\n * @param {number | string | Long | LongObject | BigNumber} amount\n * @param {HbarUnit=} unit\n */\n constructor(amount, unit = HbarUnit.Hbar) {\n if (unit === HbarUnit.Tinybar) {\n this._valueInTinybar = valueToLong(amount);\n } else {\n /** @type {BigNumber} */\n let bigAmount;\n\n if (Long.isLong(amount)) {\n bigAmount = new BigNumber(amount.toString(10));\n } else if (\n BigNumber.isBigNumber(amount) ||\n typeof amount === \"string\" ||\n typeof amount === \"number\"\n ) {\n bigAmount = new BigNumber(amount);\n } else {\n bigAmount = new BigNumber(0);\n }\n\n /**\n * @type {BigNumber}\n */\n this._valueInTinybar = bigAmount.multipliedBy(unit._tinybar);\n }\n if (!this._valueInTinybar.isInteger()) {\n throw new Error(\"Hbar in tinybars contains decimals\");\n }\n }\n\n /**\n * @param {number | Long | BigNumber} amount\n * @param {HbarUnit} unit\n * @returns {Hbar}\n */\n static from(amount, unit) {\n return new Hbar(amount, unit);\n }\n\n /**\n * @param {number | Long | string | BigNumber} amount\n * @returns {Hbar}\n */\n static fromTinybars(amount) {\n if (typeof amount === \"string\") {\n return this.fromString(amount, HbarUnit.Tinybar);\n }\n return new Hbar(amount, HbarUnit.Tinybar);\n }\n\n /**\n * @param {string} str\n * @param {HbarUnit=} unit\n * @returns {Hbar}\n */\n static fromString(str, unit = HbarUnit.Hbar) {\n const pattern = /^((?:\\+|-)?\\d+(?:\\.\\d+)?)(?: (tℏ|μℏ|mℏ|ℏ|kℏ|Mℏ|Gℏ))?$/;\n if (pattern.test(str)) {\n let [amount, symbol] = str.split(\" \");\n if (symbol != null) {\n unit = HbarUnit.fromString(symbol);\n }\n return new Hbar(new BigNumber(amount), unit);\n } else {\n throw new Error(\"invalid argument provided\");\n }\n }\n\n /**\n * @param {HbarUnit} unit\n * @returns {BigNumber}\n */\n to(unit) {\n return this._valueInTinybar.dividedBy(unit._tinybar);\n }\n\n /**\n * @returns {BigNumber}\n */\n toBigNumber() {\n return this.to(HbarUnit.Hbar);\n }\n\n /**\n * @returns {Long}\n */\n toTinybars() {\n return Long.fromValue(this._valueInTinybar.toFixed());\n }\n\n /**\n * @returns {Hbar}\n */\n negated() {\n return Hbar.fromTinybars(this._valueInTinybar.negated());\n }\n\n /**\n * @param {HbarUnit=} unit\n * @returns {string}\n */\n toString(unit) {\n if (unit != null) {\n return `${this._valueInTinybar\n .dividedBy(unit._tinybar)\n .toString()} ${unit._symbol}`;\n }\n\n if (\n this._valueInTinybar.isLessThan(10000) &&\n this._valueInTinybar.isGreaterThan(-10000)\n ) {\n return `${this._valueInTinybar.toFixed()} ${\n HbarUnit.Tinybar._symbol\n }`;\n }\n\n return `${this.to(HbarUnit.Hbar).toString()} ${HbarUnit.Hbar._symbol}`;\n }\n}\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","import * as $protobuf from \"protobufjs/minimal.js\";\nimport { proto } from \"./proto.js\";\n\n// re-export protobuf reader for usage by @hashgraph/sdk\nexport const Reader = $protobuf.Reader;\nexport const Writer = $protobuf.Writer;\n\nexport const TokenUnitBalance = proto.TokenUnitBalance;\nexport const SingleAccountBalances = proto.SingleAccountBalances;\nexport const AllAccountBalances = proto.AllAccountBalances;\nexport const ShardID = proto.ShardID;\nexport const RealmID = proto.RealmID;\nexport const AccountID = proto.AccountID;\nexport const FileID = proto.FileID;\nexport const ContractID = proto.ContractID;\nexport const TransactionID = proto.TransactionID;\nexport const AccountAmount = proto.AccountAmount;\nexport const TransferList = proto.TransferList;\nexport const NftTransfer = proto.NftTransfer;\nexport const TokenTransferList = proto.TokenTransferList;\nexport const Fraction = proto.Fraction;\nexport const TopicID = proto.TopicID;\nexport const TokenID = proto.TokenID;\nexport const ScheduleID = proto.ScheduleID;\nexport const TokenType = proto.TokenType;\nexport const SubType = proto.SubType;\nexport const TokenSupplyType = proto.TokenSupplyType;\nexport const TokenFreezeStatus = proto.TokenFreezeStatus;\nexport const TokenKycStatus = proto.TokenKycStatus;\nexport const Key = proto.Key;\nexport const ThresholdKey = proto.ThresholdKey;\nexport const KeyList = proto.KeyList;\nexport const Signature = proto.Signature;\nexport const ThresholdSignature = proto.ThresholdSignature;\nexport const SignatureList = proto.SignatureList;\nexport const SignaturePair = proto.SignaturePair;\nexport const SignatureMap = proto.SignatureMap;\nexport const HederaFunctionality = proto.HederaFunctionality;\nexport const FeeComponents = proto.FeeComponents;\nexport const TransactionFeeSchedule = proto.TransactionFeeSchedule;\nexport const FeeData = proto.FeeData;\nexport const FeeSchedule = proto.FeeSchedule;\nexport const CurrentAndNextFeeSchedule = proto.CurrentAndNextFeeSchedule;\nexport const ServiceEndpoint = proto.ServiceEndpoint;\nexport const NodeAddress = proto.NodeAddress;\nexport const NodeAddressBook = proto.NodeAddressBook;\nexport const SemanticVersion = proto.SemanticVersion;\nexport const Setting = proto.Setting;\nexport const ServicesConfigurationList = proto.ServicesConfigurationList;\nexport const TokenRelationship = proto.TokenRelationship;\nexport const TokenBalance = proto.TokenBalance;\nexport const TokenBalances = proto.TokenBalances;\nexport const Timestamp = proto.Timestamp;\nexport const TimestampSeconds = proto.TimestampSeconds;\nexport const ConsensusCreateTopicTransactionBody = proto.ConsensusCreateTopicTransactionBody;\nexport const Duration = proto.Duration;\nexport const ConsensusDeleteTopicTransactionBody = proto.ConsensusDeleteTopicTransactionBody;\nexport const ConsensusGetTopicInfoQuery = proto.ConsensusGetTopicInfoQuery;\nexport const ConsensusGetTopicInfoResponse = proto.ConsensusGetTopicInfoResponse;\nexport const ResponseType = proto.ResponseType;\nexport const QueryHeader = proto.QueryHeader;\nexport const Transaction = proto.Transaction;\nexport const TransactionBody = proto.TransactionBody;\nexport const SystemDeleteTransactionBody = proto.SystemDeleteTransactionBody;\nexport const SystemUndeleteTransactionBody = proto.SystemUndeleteTransactionBody;\nexport const FreezeTransactionBody = proto.FreezeTransactionBody;\nexport const ContractCallTransactionBody = proto.ContractCallTransactionBody;\nexport const ContractCreateTransactionBody = proto.ContractCreateTransactionBody;\nexport const ContractUpdateTransactionBody = proto.ContractUpdateTransactionBody;\nexport const LiveHash = proto.LiveHash;\nexport const CryptoAddLiveHashTransactionBody = proto.CryptoAddLiveHashTransactionBody;\nexport const CryptoCreateTransactionBody = proto.CryptoCreateTransactionBody;\nexport const CryptoDeleteTransactionBody = proto.CryptoDeleteTransactionBody;\nexport const CryptoDeleteLiveHashTransactionBody = proto.CryptoDeleteLiveHashTransactionBody;\nexport const CryptoTransferTransactionBody = proto.CryptoTransferTransactionBody;\nexport const CryptoUpdateTransactionBody = proto.CryptoUpdateTransactionBody;\nexport const FileAppendTransactionBody = proto.FileAppendTransactionBody;\nexport const FileCreateTransactionBody = proto.FileCreateTransactionBody;\nexport const FileDeleteTransactionBody = proto.FileDeleteTransactionBody;\nexport const FileUpdateTransactionBody = proto.FileUpdateTransactionBody;\nexport const ContractDeleteTransactionBody = proto.ContractDeleteTransactionBody;\nexport const ConsensusUpdateTopicTransactionBody = proto.ConsensusUpdateTopicTransactionBody;\nexport const ConsensusMessageChunkInfo = proto.ConsensusMessageChunkInfo;\nexport const ConsensusSubmitMessageTransactionBody = proto.ConsensusSubmitMessageTransactionBody;\nexport const UncheckedSubmitBody = proto.UncheckedSubmitBody;\nexport const TokenCreateTransactionBody = proto.TokenCreateTransactionBody;\nexport const FractionalFee = proto.FractionalFee;\nexport const FixedFee = proto.FixedFee;\nexport const CustomFee = proto.CustomFee;\nexport const AssessedCustomFee = proto.AssessedCustomFee;\nexport const RoyaltyFee = proto.RoyaltyFee;\nexport const TokenFreezeAccountTransactionBody = proto.TokenFreezeAccountTransactionBody;\nexport const TokenUnfreezeAccountTransactionBody = proto.TokenUnfreezeAccountTransactionBody;\nexport const TokenGrantKycTransactionBody = proto.TokenGrantKycTransactionBody;\nexport const TokenRevokeKycTransactionBody = proto.TokenRevokeKycTransactionBody;\nexport const TokenDeleteTransactionBody = proto.TokenDeleteTransactionBody;\nexport const TokenUpdateTransactionBody = proto.TokenUpdateTransactionBody;\nexport const TokenMintTransactionBody = proto.TokenMintTransactionBody;\nexport const TokenBurnTransactionBody = proto.TokenBurnTransactionBody;\nexport const TokenWipeAccountTransactionBody = proto.TokenWipeAccountTransactionBody;\nexport const TokenAssociateTransactionBody = proto.TokenAssociateTransactionBody;\nexport const TokenDissociateTransactionBody = proto.TokenDissociateTransactionBody;\nexport const TokenFeeScheduleUpdateTransactionBody = proto.TokenFeeScheduleUpdateTransactionBody;\nexport const ScheduleCreateTransactionBody = proto.ScheduleCreateTransactionBody;\nexport const SchedulableTransactionBody = proto.SchedulableTransactionBody;\nexport const ScheduleDeleteTransactionBody = proto.ScheduleDeleteTransactionBody;\nexport const ScheduleSignTransactionBody = proto.ScheduleSignTransactionBody;\nexport const ResponseHeader = proto.ResponseHeader;\nexport const TransactionResponse = proto.TransactionResponse;\nexport const ResponseCodeEnum = proto.ResponseCodeEnum;\nexport const ConsensusTopicInfo = proto.ConsensusTopicInfo;\nexport const ConsensusService = proto.ConsensusService;\nexport const Query = proto.Query;\nexport const GetByKeyQuery = proto.GetByKeyQuery;\nexport const EntityID = proto.EntityID;\nexport const GetByKeyResponse = proto.GetByKeyResponse;\nexport const GetBySolidityIDQuery = proto.GetBySolidityIDQuery;\nexport const GetBySolidityIDResponse = proto.GetBySolidityIDResponse;\nexport const ContractLoginfo = proto.ContractLoginfo;\nexport const ContractFunctionResult = proto.ContractFunctionResult;\nexport const ContractCallLocalQuery = proto.ContractCallLocalQuery;\nexport const ContractCallLocalResponse = proto.ContractCallLocalResponse;\nexport const ContractGetInfoQuery = proto.ContractGetInfoQuery;\nexport const ContractGetInfoResponse = proto.ContractGetInfoResponse;\nexport const ContractInfo = proto.ContractGetInfoResponse.ContractInfo;\nexport const ContractGetBytecodeQuery = proto.ContractGetBytecodeQuery;\nexport const ContractGetBytecodeResponse = proto.ContractGetBytecodeResponse;\nexport const ContractGetRecordsQuery = proto.ContractGetRecordsQuery;\nexport const ContractGetRecordsResponse = proto.ContractGetRecordsResponse;\nexport const TransactionRecord = proto.TransactionRecord;\nexport const TransactionReceipt = proto.TransactionReceipt;\nexport const ExchangeRate = proto.ExchangeRate;\nexport const ExchangeRateSet = proto.ExchangeRateSet;\nexport const CryptoGetAccountBalanceQuery = proto.CryptoGetAccountBalanceQuery;\nexport const CryptoGetAccountBalanceResponse = proto.CryptoGetAccountBalanceResponse;\nexport const CryptoGetAccountRecordsQuery = proto.CryptoGetAccountRecordsQuery;\nexport const CryptoGetAccountRecordsResponse = proto.CryptoGetAccountRecordsResponse;\nexport const CryptoGetInfoQuery = proto.CryptoGetInfoQuery;\nexport const CryptoGetInfoResponse = proto.CryptoGetInfoResponse;\nexport const AccountInfo = proto.CryptoGetInfoResponse.AccountInfo;\nexport const CryptoGetLiveHashQuery = proto.CryptoGetLiveHashQuery;\nexport const CryptoGetLiveHashResponse = proto.CryptoGetLiveHashResponse;\nexport const CryptoGetStakersQuery = proto.CryptoGetStakersQuery;\nexport const ProxyStaker = proto.ProxyStaker;\nexport const AllProxyStakers = proto.AllProxyStakers;\nexport const CryptoGetStakersResponse = proto.CryptoGetStakersResponse;\nexport const FileGetContentsQuery = proto.FileGetContentsQuery;\nexport const FileGetContentsResponse = proto.FileGetContentsResponse;\nexport const FileContents = proto.FileGetContentsResponse.FileContents;\nexport const FileGetInfoQuery = proto.FileGetInfoQuery;\nexport const FileGetInfoResponse = proto.FileGetInfoResponse;\nexport const FileInfo = proto.FileGetInfoResponse.FileInfo;\nexport const TransactionGetReceiptQuery = proto.TransactionGetReceiptQuery;\nexport const TransactionGetReceiptResponse = proto.TransactionGetReceiptResponse;\nexport const TransactionGetRecordQuery = proto.TransactionGetRecordQuery;\nexport const TransactionGetRecordResponse = proto.TransactionGetRecordResponse;\nexport const TransactionGetFastRecordQuery = proto.TransactionGetFastRecordQuery;\nexport const TransactionGetFastRecordResponse = proto.TransactionGetFastRecordResponse;\nexport const NetworkGetVersionInfoQuery = proto.NetworkGetVersionInfoQuery;\nexport const NetworkGetVersionInfoResponse = proto.NetworkGetVersionInfoResponse;\nexport const TokenGetInfoQuery = proto.TokenGetInfoQuery;\nexport const TokenInfo = proto.TokenInfo;\nexport const TokenGetInfoResponse = proto.TokenGetInfoResponse;\nexport const ScheduleGetInfoQuery = proto.ScheduleGetInfoQuery;\nexport const ScheduleInfo = proto.ScheduleInfo;\nexport const ScheduleGetInfoResponse = proto.ScheduleGetInfoResponse;\nexport const TokenGetAccountNftInfosQuery = proto.TokenGetAccountNftInfosQuery;\nexport const TokenGetAccountNftInfosResponse = proto.TokenGetAccountNftInfosResponse;\nexport const NftID = proto.NftID;\nexport const TokenGetNftInfoQuery = proto.TokenGetNftInfoQuery;\nexport const TokenNftInfo = proto.TokenNftInfo;\nexport const TokenGetNftInfoResponse = proto.TokenGetNftInfoResponse;\nexport const TokenGetNftInfosQuery = proto.TokenGetNftInfosQuery;\nexport const TokenGetNftInfosResponse = proto.TokenGetNftInfosResponse;\nexport const Response = proto.Response;\nexport const CryptoService = proto.CryptoService;\nexport const FileService = proto.FileService;\nexport const FreezeService = proto.FreezeService;\nexport const ConsensusTopicQuery = proto.ConsensusTopicQuery;\nexport const ConsensusTopicResponse = proto.ConsensusTopicResponse;\nexport const MirrorConsensusService = proto.MirrorConsensusService;\nexport const NetworkService = proto.NetworkService;\nexport const ScheduleService = proto.ScheduleService;\nexport const SmartContractService = proto.SmartContractService;\nexport const ThrottleGroup = proto.ThrottleGroup;\nexport const ThrottleBucket = proto.ThrottleBucket;\nexport const ThrottleDefinitions = proto.ThrottleDefinitions;\nexport const TokenService = proto.TokenService;\nexport const SignedTransaction = proto.SignedTransaction;\nexport const TransactionList = proto.TransactionList;\nexport const DoubleValue = proto.DoubleValue;\nexport const FloatValue = proto.FloatValue;\nexport const UInt64Value = proto.UInt64Value;\nexport const UInt32Value = proto.UInt32Value;\nexport const BoolValue = proto.BoolValue;\nexport const StringValue = proto.StringValue;\nexport const BytesValue = proto.BytesValue;\nexport const TokenPauseTransactionBody = proto.TokenPauseTransactionBody;\nexport const TokenUnpauseTransactionBody = proto.TokenUnpauseTransactionBody;\nexport const TokenPauseStatus = proto.TokenPauseStatus;\nexport const FreezeType = proto.FreezeType;\n","import CACHE from \"./Cache.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n */\n\nexport default class Key {\n /**\n * @internal\n * @abstract\n * @returns {proto.IKey}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n _toProtobufKey() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @param {proto.IKey} key\n * @returns {Key}\n */\n static _fromProtobufKey(key) {\n if (key.contractID != null) {\n if (CACHE.contractId == null) {\n throw new Error(\n \"`ContractId` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.contractId(key.contractID);\n }\n\n if (key.delegatableContractId != null) {\n if (CACHE.delegateContractId == null) {\n throw new Error(\n \"`ContractId` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.delegateContractId(key.delegatableContractId);\n }\n\n if (key.ed25519 != null && key.ed25519.byteLength > 0) {\n if (CACHE.publicKeyED25519 == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.publicKeyED25519(key.ed25519);\n }\n\n if (key.ECDSASecp256k1 != null && key.ECDSASecp256k1.byteLength > 0) {\n if (CACHE.publicKeyECDSA == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.publicKeyECDSA(key.ECDSASecp256k1);\n }\n\n if (key.thresholdKey != null && key.thresholdKey.threshold != null) {\n if (CACHE.thresholdKey == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.thresholdKey(key.thresholdKey);\n }\n\n if (key.keyList != null) {\n if (CACHE.keyList == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.keyList(key.keyList);\n }\n\n throw new Error(\n `(BUG) keyFromProtobuf: not implemented key case: ${JSON.stringify(\n key\n )}`\n );\n }\n}\n","import Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n */\n\nconst MAX_NS = Long.fromNumber(1000000000);\n\nexport default class Timestamp {\n /**\n * @param {Long | number} seconds\n * @param {Long | number} nanos\n */\n constructor(seconds, nanos) {\n /**\n * @readonly\n * @type {Long}\n */\n this.seconds =\n seconds instanceof Long ? seconds : Long.fromNumber(seconds);\n\n /**\n * @readonly\n * @type {Long}\n */\n this.nanos = nanos instanceof Long ? nanos : Long.fromNumber(nanos);\n\n Object.freeze(this);\n }\n\n /**\n * @returns {Timestamp}\n */\n static generate() {\n const jitter = Math.floor(Math.random() * 5000) + 8000;\n const now = Date.now() - jitter;\n const seconds = Math.floor(now / 1000);\n const nanos =\n Math.floor(now % 1000) * 1000000 +\n Math.floor(Math.random() * 1000000);\n\n return new Timestamp(seconds, nanos);\n }\n\n /**\n * @param {string | number | Date} date\n * @returns {Timestamp}\n */\n static fromDate(date) {\n let ms;\n\n if (typeof date === \"number\") {\n ms = date;\n } else if (typeof date === \"string\") {\n ms = Date.parse(date);\n } else if (date instanceof Date) {\n ms = date.getTime();\n } else {\n throw new TypeError(\n `invalid type '${typeof date}' for 'data', expected 'Date'`\n );\n }\n\n const seconds = Math.floor(ms / 1000);\n const nanos = Math.floor(ms % 1000) * 1000000;\n\n return new Timestamp(seconds, nanos);\n }\n\n /**\n * @returns {Date}\n */\n toDate() {\n return new Date(\n this.seconds.toInt() * 1000 +\n Math.floor(this.nanos.toInt() / 1000000)\n );\n }\n\n /**\n * @param {Long | number} nanos\n * @returns {Timestamp}\n */\n plusNanos(nanos) {\n const ns = this.nanos.add(nanos);\n\n return new Timestamp(this.seconds.add(ns.div(MAX_NS)), ns.mod(MAX_NS));\n }\n\n /**\n * @internal\n * @returns {proto.ITimestamp}\n */\n _toProtobuf() {\n return {\n seconds: this.seconds,\n nanos: this.nanos.toInt(),\n };\n }\n\n /**\n * @internal\n * @param {proto.ITimestamp} timestamp\n * @returns {Timestamp}\n */\n static _fromProtobuf(timestamp) {\n return new Timestamp(\n timestamp.seconds instanceof Long\n ? timestamp.seconds.toInt()\n : timestamp.seconds != null\n ? timestamp.seconds\n : 0,\n\n timestamp.nanos != null ? timestamp.nanos : 0\n );\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.seconds.toString()}.${this.nanos.toString()}`;\n }\n\n /**\n * @param {Timestamp} other\n * @returns {number}\n */\n compare(other) {\n const comparison = this.seconds.compare(other.seconds);\n\n if (comparison != 0) {\n return comparison;\n }\n\n return this.nanos.compare(other.nanos);\n }\n}\n","import CACHE from \"./Cache.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n */\n\nexport default class Key {\n /**\n * @internal\n * @abstract\n * @returns {proto.IKey}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n _toProtobufKey() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @param {proto.IKey} key\n * @returns {Key}\n */\n static _fromProtobufKey(key) {\n if (key.contractID != null) {\n if (CACHE.contractId == null) {\n throw new Error(\n \"`ContractId` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.contractId(key.contractID);\n }\n\n if (key.delegatableContractId != null) {\n if (CACHE.delegateContractId == null) {\n throw new Error(\n \"`ContractId` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.delegateContractId(key.delegatableContractId);\n }\n\n if (key.ed25519 != null && key.ed25519.byteLength > 0) {\n if (CACHE.publicKeyED25519 == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.publicKeyED25519(key.ed25519);\n }\n\n if (key.ECDSASecp256k1 != null && key.ECDSASecp256k1.byteLength > 0) {\n if (CACHE.publicKeyECDSA == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.publicKeyECDSA(key.ECDSASecp256k1);\n }\n\n if (key.thresholdKey != null && key.thresholdKey.threshold != null) {\n if (CACHE.thresholdKey == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.thresholdKey(key.thresholdKey);\n }\n\n if (key.keyList != null) {\n if (CACHE.keyList == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.keyList(key.keyList);\n }\n\n throw new Error(\n `(BUG) keyFromProtobuf: not implemented key case: ${JSON.stringify(\n key\n )}`\n );\n }\n}\n","import Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n */\n\nconst MAX_NS = Long.fromNumber(1000000000);\n\nexport default class Timestamp {\n /**\n * @param {Long | number} seconds\n * @param {Long | number} nanos\n */\n constructor(seconds, nanos) {\n /**\n * @readonly\n * @type {Long}\n */\n this.seconds =\n seconds instanceof Long ? seconds : Long.fromNumber(seconds);\n\n /**\n * @readonly\n * @type {Long}\n */\n this.nanos = nanos instanceof Long ? nanos : Long.fromNumber(nanos);\n\n Object.freeze(this);\n }\n\n /**\n * @returns {Timestamp}\n */\n static generate() {\n const jitter = Math.floor(Math.random() * 5000) + 8000;\n const now = Date.now() - jitter;\n const seconds = Math.floor(now / 1000);\n const nanos =\n Math.floor(now % 1000) * 1000000 +\n Math.floor(Math.random() * 1000000);\n\n return new Timestamp(seconds, nanos);\n }\n\n /**\n * @param {string | number | Date} date\n * @returns {Timestamp}\n */\n static fromDate(date) {\n let ms;\n\n if (typeof date === \"number\") {\n ms = date;\n } else if (typeof date === \"string\") {\n ms = Date.parse(date);\n } else if (date instanceof Date) {\n ms = date.getTime();\n } else {\n throw new TypeError(\n `invalid type '${typeof date}' for 'data', expected 'Date'`\n );\n }\n\n const seconds = Math.floor(ms / 1000);\n const nanos = Math.floor(ms % 1000) * 1000000;\n\n return new Timestamp(seconds, nanos);\n }\n\n /**\n * @returns {Date}\n */\n toDate() {\n return new Date(\n this.seconds.toInt() * 1000 +\n Math.floor(this.nanos.toInt() / 1000000)\n );\n }\n\n /**\n * @param {Long | number} nanos\n * @returns {Timestamp}\n */\n plusNanos(nanos) {\n const ns = this.nanos.add(nanos);\n\n return new Timestamp(this.seconds.add(ns.div(MAX_NS)), ns.mod(MAX_NS));\n }\n\n /**\n * @internal\n * @returns {proto.ITimestamp}\n */\n _toProtobuf() {\n return {\n seconds: this.seconds,\n nanos: this.nanos.toInt(),\n };\n }\n\n /**\n * @internal\n * @param {proto.ITimestamp} timestamp\n * @returns {Timestamp}\n */\n static _fromProtobuf(timestamp) {\n return new Timestamp(\n timestamp.seconds instanceof Long\n ? timestamp.seconds.toInt()\n : timestamp.seconds != null\n ? timestamp.seconds\n : 0,\n\n timestamp.nanos != null ? timestamp.nanos : 0\n );\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.seconds.toString()}.${this.nanos.toString()}`;\n }\n\n /**\n * @param {Timestamp} other\n * @returns {number}\n */\n compare(other) {\n const comparison = this.seconds.compare(other.seconds);\n\n if (comparison != 0) {\n return comparison;\n }\n\n return this.nanos.compare(other.nanos);\n }\n}\n","import CACHE from \"./Cache.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n */\n\nexport default class Key {\n /**\n * @internal\n * @abstract\n * @returns {proto.IKey}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n _toProtobufKey() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @param {proto.IKey} key\n * @returns {Key}\n */\n static _fromProtobufKey(key) {\n if (key.contractID != null) {\n if (CACHE.contractId == null) {\n throw new Error(\n \"`ContractId` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.contractId(key.contractID);\n }\n\n if (key.delegatableContractId != null) {\n if (CACHE.delegateContractId == null) {\n throw new Error(\n \"`ContractId` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.delegateContractId(key.delegatableContractId);\n }\n\n if (key.ed25519 != null && key.ed25519.byteLength > 0) {\n if (CACHE.publicKeyED25519 == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.publicKeyED25519(key.ed25519);\n }\n\n if (key.ECDSASecp256k1 != null && key.ECDSASecp256k1.byteLength > 0) {\n if (CACHE.publicKeyECDSA == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.publicKeyECDSA(key.ECDSASecp256k1);\n }\n\n if (key.thresholdKey != null && key.thresholdKey.threshold != null) {\n if (CACHE.thresholdKey == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.thresholdKey(key.thresholdKey);\n }\n\n if (key.keyList != null) {\n if (CACHE.keyList == null) {\n throw new Error(\n \"`PublicKey` was not loaded before decoding `Key`\"\n );\n }\n\n return CACHE.keyList(key.keyList);\n }\n\n throw new Error(\n `(BUG) keyFromProtobuf: not implemented key case: ${JSON.stringify(\n key\n )}`\n );\n }\n}\n","import Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n */\n\nconst MAX_NS = Long.fromNumber(1000000000);\n\nexport default class Timestamp {\n /**\n * @param {Long | number} seconds\n * @param {Long | number} nanos\n */\n constructor(seconds, nanos) {\n /**\n * @readonly\n * @type {Long}\n */\n this.seconds =\n seconds instanceof Long ? seconds : Long.fromNumber(seconds);\n\n /**\n * @readonly\n * @type {Long}\n */\n this.nanos = nanos instanceof Long ? nanos : Long.fromNumber(nanos);\n\n Object.freeze(this);\n }\n\n /**\n * @returns {Timestamp}\n */\n static generate() {\n const jitter = Math.floor(Math.random() * 5000) + 8000;\n const now = Date.now() - jitter;\n const seconds = Math.floor(now / 1000);\n const nanos =\n Math.floor(now % 1000) * 1000000 +\n Math.floor(Math.random() * 1000000);\n\n return new Timestamp(seconds, nanos);\n }\n\n /**\n * @param {string | number | Date} date\n * @returns {Timestamp}\n */\n static fromDate(date) {\n let ms;\n\n if (typeof date === \"number\") {\n ms = date;\n } else if (typeof date === \"string\") {\n ms = Date.parse(date);\n } else if (date instanceof Date) {\n ms = date.getTime();\n } else {\n throw new TypeError(\n `invalid type '${typeof date}' for 'data', expected 'Date'`\n );\n }\n\n const seconds = Math.floor(ms / 1000);\n const nanos = Math.floor(ms % 1000) * 1000000;\n\n return new Timestamp(seconds, nanos);\n }\n\n /**\n * @returns {Date}\n */\n toDate() {\n return new Date(\n this.seconds.toInt() * 1000 +\n Math.floor(this.nanos.toInt() / 1000000)\n );\n }\n\n /**\n * @param {Long | number} nanos\n * @returns {Timestamp}\n */\n plusNanos(nanos) {\n const ns = this.nanos.add(nanos);\n\n return new Timestamp(this.seconds.add(ns.div(MAX_NS)), ns.mod(MAX_NS));\n }\n\n /**\n * @internal\n * @returns {proto.ITimestamp}\n */\n _toProtobuf() {\n return {\n seconds: this.seconds,\n nanos: this.nanos.toInt(),\n };\n }\n\n /**\n * @internal\n * @param {proto.ITimestamp} timestamp\n * @returns {Timestamp}\n */\n static _fromProtobuf(timestamp) {\n return new Timestamp(\n timestamp.seconds instanceof Long\n ? timestamp.seconds.toInt()\n : timestamp.seconds != null\n ? timestamp.seconds\n : 0,\n\n timestamp.nanos != null ? timestamp.nanos : 0\n );\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.seconds.toString()}.${this.nanos.toString()}`;\n }\n\n /**\n * @param {Timestamp} other\n * @returns {number}\n */\n compare(other) {\n const comparison = this.seconds.compare(other.seconds);\n\n if (comparison != 0) {\n return comparison;\n }\n\n return this.nanos.compare(other.nanos);\n }\n}\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\n\nvar iterableToArray = require(\"./iterableToArray.js\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","import Status from \"../Status.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Hbar from \"../Hbar.js\";\nimport Executable, { ExecutionState } from \"../Executable.js\";\nimport TransactionId from \"../transaction/TransactionId.js\";\nimport {\n Query as ProtoQuery,\n TransactionBody as ProtoTransactionBody,\n SignedTransaction as ProtoSignedTransaction,\n ResponseType as ProtoResponseType,\n ResponseCodeEnum,\n} from \"@hashgraph/proto\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport MaxQueryPaymentExceeded from \"../MaxQueryPaymentExceeded.js\";\nimport Long from \"long\";\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\n/**\n * @typedef {import(\"../client/Client.js\").ClientOperator} ClientOperator\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @type {Map Query<*>>}\n */\nexport const QUERY_REGISTRY = new Map();\n\n/**\n * Base class for all queries that can be submitted to Hedera.\n *\n * @abstract\n * @template OutputT\n * @augments {Executable}\n */\nexport default class Query extends Executable {\n constructor() {\n super();\n\n /** @type {?TransactionId} */\n this._paymentTransactionId = null;\n\n /** @type {proto.ITransaction[]} */\n this._paymentTransactions = [];\n\n /** @type {?Hbar} */\n this._queryPayment = null;\n\n /** @type {?Hbar} */\n this._maxQueryPayment = null;\n }\n\n /**\n * @template T\n * @param {Uint8Array} bytes\n * @returns {Query}\n */\n static fromBytes(bytes) {\n const query = ProtoQuery.decode(bytes);\n\n if (query.query == null) {\n throw new Error(\"(BUG) query.query was not set in the protobuf\");\n }\n\n const fromProtobuf = /** @type {(query: proto.IQuery) => Query} */ (\n QUERY_REGISTRY.get(query.query)\n );\n\n if (fromProtobuf == null) {\n throw new Error(\n `(BUG) Query.fromBytes() not implemented for type ${query.query}`\n );\n }\n\n return fromProtobuf(query);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return ProtoQuery.encode(this._makeRequest()).finish();\n }\n\n /**\n * Set an explicit payment amount for this query.\n *\n * The client will submit exactly this amount for the payment of this query. Hedera\n * will not return any remainder.\n *\n * @param {Hbar} queryPayment\n * @returns {this}\n */\n setQueryPayment(queryPayment) {\n this._queryPayment = queryPayment;\n\n return this;\n }\n\n /**\n * Set the maximum payment allowable for this query.\n *\n * @param {Hbar} maxQueryPayment\n * @returns {this}\n */\n setMaxQueryPayment(maxQueryPayment) {\n this._maxQueryPayment = maxQueryPayment;\n\n return this;\n }\n\n /**\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n getCost(client) {\n if (this._nodeAccountIds.isEmpty) {\n this._nodeAccountIds.setList(\n client._network.getNodeAccountIdsForExecute()\n );\n }\n\n if (COST_QUERY.length != 1) {\n throw new Error(\"CostQuery has not been loaded yet\");\n }\n\n return COST_QUERY[0](this).execute(client);\n }\n\n /**\n * @param {TransactionId} paymentTransactionId\n * @returns {this}\n */\n setPaymentTransactionId(paymentTransactionId) {\n this._paymentTransactionId = paymentTransactionId;\n return this;\n }\n\n /**\n * @returns {?TransactionId}\n */\n get paymentTransactionId() {\n return this._paymentTransactionId;\n }\n\n /**\n * @returns {TransactionId}\n */\n _getTransactionId() {\n if (this._paymentTransactionId == null) {\n throw new Error(\n \"Query.PaymentTransactionId was not set duration execution\"\n );\n }\n\n return this._paymentTransactionId;\n }\n\n /**\n * @protected\n * @returns {boolean}\n */\n _isPaymentRequired() {\n return true;\n }\n\n /**\n * @param {Client} client\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars,@typescript-eslint/no-empty-function\n _validateChecksums(client) {\n // Do nothing\n }\n\n /**\n * @template MirrorChannelT\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async _beforeExecute(client) {\n if (this._paymentTransactions.length > 0) {\n return;\n }\n\n if (client.isAutoValidateChecksumsEnabled()) {\n this._validateChecksums(client);\n }\n\n if (this._nodeAccountIds.isEmpty) {\n this._nodeAccountIds.setList(\n client._network.getNodeAccountIdsForExecute()\n );\n }\n\n const operator = client._operator;\n\n if (this._paymentTransactionId == null) {\n if (this._isPaymentRequired()) {\n if (operator != null) {\n this._paymentTransactionId = TransactionId.generate(\n operator.accountId\n );\n } else {\n throw new Error(\n \"`client` must have an `operator` or an explicit payment transaction must be provided\"\n );\n }\n } else {\n this._paymentTransactionId = TransactionId.generate(\n new AccountId(0)\n );\n }\n }\n\n let cost =\n this._queryPayment != null\n ? this._queryPayment\n : client.maxQueryPayment;\n\n if (\n this._paymentTransactions.length !== 0 ||\n !this._isPaymentRequired()\n ) {\n cost = new Hbar(0);\n } else {\n if (this._queryPayment == null) {\n const actualCost = await this.getCost(client);\n\n if (\n cost.toTinybars().toInt() < actualCost.toTinybars().toInt()\n ) {\n throw new MaxQueryPaymentExceeded(cost, actualCost);\n }\n\n cost = actualCost;\n }\n }\n\n for (const node of this._nodeAccountIds.list) {\n this._paymentTransactions.push(\n await _makePaymentTransaction(\n /** @type {import(\"../transaction/TransactionId.js\").default} */ (\n this._paymentTransactionId\n ),\n node,\n this._isPaymentRequired() ? operator : null,\n /** @type {Hbar} */ (cost)\n )\n );\n }\n }\n\n /**\n * @abstract\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponseHeader(response) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @returns {proto.IQueryHeader}\n */\n _makeRequestHeader() {\n /** @type {proto.IQueryHeader} */\n let header = {};\n\n if (this._isPaymentRequired() && this._paymentTransactions.length > 0) {\n header = {\n responseType: ProtoResponseType.ANSWER_ONLY,\n payment:\n this._paymentTransactions[this._nextNodeAccountIdIndex],\n };\n }\n\n return header;\n }\n\n /**\n * @abstract\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _onMakeRequest(header) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @returns {proto.IQuery}\n */\n _makeRequest() {\n /** @type {proto.IQueryHeader} */\n let header = {};\n\n if (this._isPaymentRequired() && this._paymentTransactions != null) {\n header = {\n payment:\n this._paymentTransactions[this._nextNodeAccountIdIndex],\n responseType: ProtoResponseType.ANSWER_ONLY,\n };\n }\n\n return this._onMakeRequest(header);\n }\n\n /**\n * @override\n * @internal\n * @returns {Promise}\n */\n _makeRequestAsync() {\n return Promise.resolve(this._makeRequest());\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.PlatformTransactionNotCreated:\n return ExecutionState.Retry;\n case Status.Ok:\n return ExecutionState.Finished;\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n /**\n * @returns {AccountId}\n */\n _getNodeAccountId() {\n if (!this._nodeAccountIds.isEmpty) {\n // if there are payment transactions,\n // we need to use the node of the current payment transaction\n return this._nodeAccountIds.list[this._nextNodeAccountIdIndex];\n } else {\n throw new Error(\n \"(BUG) nodeAccountIds were not set for query before executing\"\n );\n }\n }\n\n /**\n * @override\n * @protected\n * @returns {void}\n */\n _advanceRequest() {\n if (this._isPaymentRequired() && this._paymentTransactions.length > 0) {\n // each time we move our cursor to the next transaction\n // wrapping around to ensure we are cycling\n super._nextNodeAccountIdIndex =\n (this._nextNodeAccountIdIndex + 1) %\n this._paymentTransactions.length;\n } else {\n super._advanceRequest();\n }\n }\n}\n\n/**\n * @param {TransactionId} paymentTransactionId\n * @param {AccountId} nodeId\n * @param {?ClientOperator} operator\n * @param {Hbar} paymentAmount\n * @returns {Promise}\n */\nexport async function _makePaymentTransaction(\n paymentTransactionId,\n nodeId,\n operator,\n paymentAmount\n) {\n const accountAmounts = [];\n\n if (operator != null) {\n accountAmounts.push({\n accountID: operator.accountId._toProtobuf(),\n amount: paymentAmount.negated().toTinybars(),\n });\n accountAmounts.push({\n accountID: nodeId._toProtobuf(),\n amount: paymentAmount.toTinybars(),\n });\n } else {\n accountAmounts.push({\n accountID: new AccountId(0)._toProtobuf(),\n amount: paymentAmount.negated().toTinybars(),\n });\n accountAmounts.push({\n accountID: nodeId._toProtobuf(),\n amount: paymentAmount.toTinybars(),\n });\n }\n /**\n * @type {proto.ITransactionBody}\n */\n const body = {\n transactionID: paymentTransactionId._toProtobuf(),\n nodeAccountID: nodeId._toProtobuf(),\n transactionFee: new Hbar(1).toTinybars(),\n transactionValidDuration: {\n seconds: Long.fromNumber(120),\n },\n cryptoTransfer: {\n transfers: {\n accountAmounts,\n },\n },\n };\n\n /** @type {proto.ISignedTransaction} */\n const signedTransaction = {\n bodyBytes: ProtoTransactionBody.encode(body).finish(),\n };\n\n if (operator != null) {\n const signature = await operator.transactionSigner(\n /** @type {Uint8Array} */ (signedTransaction.bodyBytes)\n );\n\n signedTransaction.sigMap = {\n sigPair: [operator.publicKey._toProtobufSignature(signature)],\n };\n }\n\n return {\n signedTransactionBytes:\n ProtoSignedTransaction.encode(signedTransaction).finish(),\n };\n}\n\n/**\n * @type {((query: Query<*>) => import(\"./CostQuery.js\").default<*>)[]}\n */\nexport const COST_QUERY = [];\n","import Status from \"../Status.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Hbar from \"../Hbar.js\";\nimport Executable, { ExecutionState } from \"../Executable.js\";\nimport TransactionId from \"../transaction/TransactionId.js\";\nimport {\n Query as ProtoQuery,\n TransactionBody as ProtoTransactionBody,\n SignedTransaction as ProtoSignedTransaction,\n ResponseType as ProtoResponseType,\n ResponseCodeEnum,\n} from \"@hashgraph/proto\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport MaxQueryPaymentExceeded from \"../MaxQueryPaymentExceeded.js\";\nimport Long from \"long\";\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\n/**\n * @typedef {import(\"../client/Client.js\").ClientOperator} ClientOperator\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @type {Map Query<*>>}\n */\nexport const QUERY_REGISTRY = new Map();\n\n/**\n * Base class for all queries that can be submitted to Hedera.\n *\n * @abstract\n * @template OutputT\n * @augments {Executable}\n */\nexport default class Query extends Executable {\n constructor() {\n super();\n\n /** @type {?TransactionId} */\n this._paymentTransactionId = null;\n\n /** @type {proto.ITransaction[]} */\n this._paymentTransactions = [];\n\n /** @type {?Hbar} */\n this._queryPayment = null;\n\n /** @type {?Hbar} */\n this._maxQueryPayment = null;\n }\n\n /**\n * @template T\n * @param {Uint8Array} bytes\n * @returns {Query}\n */\n static fromBytes(bytes) {\n const query = ProtoQuery.decode(bytes);\n\n if (query.query == null) {\n throw new Error(\"(BUG) query.query was not set in the protobuf\");\n }\n\n const fromProtobuf = /** @type {(query: proto.IQuery) => Query} */ (\n QUERY_REGISTRY.get(query.query)\n );\n\n if (fromProtobuf == null) {\n throw new Error(\n `(BUG) Query.fromBytes() not implemented for type ${query.query}`\n );\n }\n\n return fromProtobuf(query);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return ProtoQuery.encode(this._makeRequest()).finish();\n }\n\n /**\n * Set an explicit payment amount for this query.\n *\n * The client will submit exactly this amount for the payment of this query. Hedera\n * will not return any remainder.\n *\n * @param {Hbar} queryPayment\n * @returns {this}\n */\n setQueryPayment(queryPayment) {\n this._queryPayment = queryPayment;\n\n return this;\n }\n\n /**\n * Set the maximum payment allowable for this query.\n *\n * @param {Hbar} maxQueryPayment\n * @returns {this}\n */\n setMaxQueryPayment(maxQueryPayment) {\n this._maxQueryPayment = maxQueryPayment;\n\n return this;\n }\n\n /**\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n getCost(client) {\n if (this._nodeAccountIds.isEmpty) {\n this._nodeAccountIds.setList(\n client._network.getNodeAccountIdsForExecute()\n );\n }\n\n if (COST_QUERY.length != 1) {\n throw new Error(\"CostQuery has not been loaded yet\");\n }\n\n return COST_QUERY[0](this).execute(client);\n }\n\n /**\n * @param {TransactionId} paymentTransactionId\n * @returns {this}\n */\n setPaymentTransactionId(paymentTransactionId) {\n this._paymentTransactionId = paymentTransactionId;\n return this;\n }\n\n /**\n * @returns {?TransactionId}\n */\n get paymentTransactionId() {\n return this._paymentTransactionId;\n }\n\n /**\n * @returns {TransactionId}\n */\n _getTransactionId() {\n if (this._paymentTransactionId == null) {\n throw new Error(\n \"Query.PaymentTransactionId was not set duration execution\"\n );\n }\n\n return this._paymentTransactionId;\n }\n\n /**\n * @protected\n * @returns {boolean}\n */\n _isPaymentRequired() {\n return true;\n }\n\n /**\n * @param {Client} client\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars,@typescript-eslint/no-empty-function\n _validateChecksums(client) {\n // Do nothing\n }\n\n /**\n * @template MirrorChannelT\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async _beforeExecute(client) {\n if (this._paymentTransactions.length > 0) {\n return;\n }\n\n if (client.isAutoValidateChecksumsEnabled()) {\n this._validateChecksums(client);\n }\n\n if (this._nodeAccountIds.isEmpty) {\n this._nodeAccountIds.setList(\n client._network.getNodeAccountIdsForExecute()\n );\n }\n\n const operator = client._operator;\n\n if (this._paymentTransactionId == null) {\n if (this._isPaymentRequired()) {\n if (operator != null) {\n this._paymentTransactionId = TransactionId.generate(\n operator.accountId\n );\n } else {\n throw new Error(\n \"`client` must have an `operator` or an explicit payment transaction must be provided\"\n );\n }\n } else {\n this._paymentTransactionId = TransactionId.generate(\n new AccountId(0)\n );\n }\n }\n\n let cost =\n this._queryPayment != null\n ? this._queryPayment\n : client.maxQueryPayment;\n\n if (\n this._paymentTransactions.length !== 0 ||\n !this._isPaymentRequired()\n ) {\n cost = new Hbar(0);\n } else {\n if (this._queryPayment == null) {\n const actualCost = await this.getCost(client);\n\n if (\n cost.toTinybars().toInt() < actualCost.toTinybars().toInt()\n ) {\n throw new MaxQueryPaymentExceeded(cost, actualCost);\n }\n\n cost = actualCost;\n }\n }\n\n for (const node of this._nodeAccountIds.list) {\n this._paymentTransactions.push(\n await _makePaymentTransaction(\n /** @type {import(\"../transaction/TransactionId.js\").default} */ (\n this._paymentTransactionId\n ),\n node,\n this._isPaymentRequired() ? operator : null,\n /** @type {Hbar} */ (cost)\n )\n );\n }\n }\n\n /**\n * @abstract\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponseHeader(response) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @returns {proto.IQueryHeader}\n */\n _makeRequestHeader() {\n /** @type {proto.IQueryHeader} */\n let header = {};\n\n if (this._isPaymentRequired() && this._paymentTransactions.length > 0) {\n header = {\n responseType: ProtoResponseType.ANSWER_ONLY,\n payment:\n this._paymentTransactions[this._nextNodeAccountIdIndex],\n };\n }\n\n return header;\n }\n\n /**\n * @abstract\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _onMakeRequest(header) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @returns {proto.IQuery}\n */\n _makeRequest() {\n /** @type {proto.IQueryHeader} */\n let header = {};\n\n if (this._isPaymentRequired() && this._paymentTransactions != null) {\n header = {\n payment:\n this._paymentTransactions[this._nextNodeAccountIdIndex],\n responseType: ProtoResponseType.ANSWER_ONLY,\n };\n }\n\n return this._onMakeRequest(header);\n }\n\n /**\n * @override\n * @internal\n * @returns {Promise}\n */\n _makeRequestAsync() {\n return Promise.resolve(this._makeRequest());\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.PlatformTransactionNotCreated:\n return ExecutionState.Retry;\n case Status.Ok:\n return ExecutionState.Finished;\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n /**\n * @returns {AccountId}\n */\n _getNodeAccountId() {\n if (!this._nodeAccountIds.isEmpty) {\n // if there are payment transactions,\n // we need to use the node of the current payment transaction\n return this._nodeAccountIds.list[this._nextNodeAccountIdIndex];\n } else {\n throw new Error(\n \"(BUG) nodeAccountIds were not set for query before executing\"\n );\n }\n }\n\n /**\n * @override\n * @protected\n * @returns {void}\n */\n _advanceRequest() {\n if (this._isPaymentRequired() && this._paymentTransactions.length > 0) {\n // each time we move our cursor to the next transaction\n // wrapping around to ensure we are cycling\n super._nextNodeAccountIdIndex =\n (this._nextNodeAccountIdIndex + 1) %\n this._paymentTransactions.length;\n } else {\n super._advanceRequest();\n }\n }\n}\n\n/**\n * @param {TransactionId} paymentTransactionId\n * @param {AccountId} nodeId\n * @param {?ClientOperator} operator\n * @param {Hbar} paymentAmount\n * @returns {Promise}\n */\nexport async function _makePaymentTransaction(\n paymentTransactionId,\n nodeId,\n operator,\n paymentAmount\n) {\n const accountAmounts = [];\n\n if (operator != null) {\n accountAmounts.push({\n accountID: operator.accountId._toProtobuf(),\n amount: paymentAmount.negated().toTinybars(),\n });\n accountAmounts.push({\n accountID: nodeId._toProtobuf(),\n amount: paymentAmount.toTinybars(),\n });\n } else {\n accountAmounts.push({\n accountID: new AccountId(0)._toProtobuf(),\n amount: paymentAmount.negated().toTinybars(),\n });\n accountAmounts.push({\n accountID: nodeId._toProtobuf(),\n amount: paymentAmount.toTinybars(),\n });\n }\n /**\n * @type {proto.ITransactionBody}\n */\n const body = {\n transactionID: paymentTransactionId._toProtobuf(),\n nodeAccountID: nodeId._toProtobuf(),\n transactionFee: new Hbar(1).toTinybars(),\n transactionValidDuration: {\n seconds: Long.fromNumber(120),\n },\n cryptoTransfer: {\n transfers: {\n accountAmounts,\n },\n },\n };\n\n /** @type {proto.ISignedTransaction} */\n const signedTransaction = {\n bodyBytes: ProtoTransactionBody.encode(body).finish(),\n };\n\n if (operator != null) {\n const signature = await operator.transactionSigner(\n /** @type {Uint8Array} */ (signedTransaction.bodyBytes)\n );\n\n signedTransaction.sigMap = {\n sigPair: [operator.publicKey._toProtobufSignature(signature)],\n };\n }\n\n return {\n signedTransactionBytes:\n ProtoSignedTransaction.encode(signedTransaction).finish(),\n };\n}\n\n/**\n * @type {((query: Query<*>) => import(\"./CostQuery.js\").default<*>)[]}\n */\nexport const COST_QUERY = [];\n","import Status from \"../Status.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Hbar from \"../Hbar.js\";\nimport Executable, { ExecutionState } from \"../Executable.js\";\nimport TransactionId from \"../transaction/TransactionId.js\";\nimport {\n Query as ProtoQuery,\n TransactionBody as ProtoTransactionBody,\n SignedTransaction as ProtoSignedTransaction,\n ResponseType as ProtoResponseType,\n ResponseCodeEnum,\n} from \"@hashgraph/proto\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport MaxQueryPaymentExceeded from \"../MaxQueryPaymentExceeded.js\";\nimport Long from \"long\";\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\n/**\n * @typedef {import(\"../client/Client.js\").ClientOperator} ClientOperator\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @type {Map Query<*>>}\n */\nexport const QUERY_REGISTRY = new Map();\n\n/**\n * Base class for all queries that can be submitted to Hedera.\n *\n * @abstract\n * @template OutputT\n * @augments {Executable}\n */\nexport default class Query extends Executable {\n constructor() {\n super();\n\n /** @type {?TransactionId} */\n this._paymentTransactionId = null;\n\n /** @type {proto.ITransaction[]} */\n this._paymentTransactions = [];\n\n /** @type {?Hbar} */\n this._queryPayment = null;\n\n /** @type {?Hbar} */\n this._maxQueryPayment = null;\n }\n\n /**\n * @template T\n * @param {Uint8Array} bytes\n * @returns {Query}\n */\n static fromBytes(bytes) {\n const query = ProtoQuery.decode(bytes);\n\n if (query.query == null) {\n throw new Error(\"(BUG) query.query was not set in the protobuf\");\n }\n\n const fromProtobuf = /** @type {(query: proto.IQuery) => Query} */ (\n QUERY_REGISTRY.get(query.query)\n );\n\n if (fromProtobuf == null) {\n throw new Error(\n `(BUG) Query.fromBytes() not implemented for type ${query.query}`\n );\n }\n\n return fromProtobuf(query);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return ProtoQuery.encode(this._makeRequest()).finish();\n }\n\n /**\n * Set an explicit payment amount for this query.\n *\n * The client will submit exactly this amount for the payment of this query. Hedera\n * will not return any remainder.\n *\n * @param {Hbar} queryPayment\n * @returns {this}\n */\n setQueryPayment(queryPayment) {\n this._queryPayment = queryPayment;\n\n return this;\n }\n\n /**\n * Set the maximum payment allowable for this query.\n *\n * @param {Hbar} maxQueryPayment\n * @returns {this}\n */\n setMaxQueryPayment(maxQueryPayment) {\n this._maxQueryPayment = maxQueryPayment;\n\n return this;\n }\n\n /**\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n getCost(client) {\n if (this._nodeIds.length == 0) {\n this._nodeIds = client._network.getNodeAccountIdsForExecute();\n }\n\n if (COST_QUERY.length != 1) {\n throw new Error(\"CostQuery has not been loaded yet\");\n }\n\n return COST_QUERY[0](this).execute(client);\n }\n\n /**\n * @param {TransactionId} paymentTransactionId\n * @returns {this}\n */\n setPaymentTransactionId(paymentTransactionId) {\n this._paymentTransactionId = paymentTransactionId;\n return this;\n }\n\n /**\n * @returns {?TransactionId}\n */\n get paymentTransactionId() {\n return this._paymentTransactionId;\n }\n\n /**\n * @returns {TransactionId}\n */\n _getTransactionId() {\n if (this._paymentTransactionId == null) {\n throw new Error(\n \"Query.PaymentTransactionId was not set duration execution\"\n );\n }\n\n return this._paymentTransactionId;\n }\n\n /**\n * @protected\n * @returns {boolean}\n */\n _isPaymentRequired() {\n return true;\n }\n\n /**\n * @param {Client} client\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars,@typescript-eslint/no-empty-function\n _validateChecksums(client) {\n // Do nothing\n }\n\n /**\n * @template MirrorChannelT\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async _beforeExecute(client) {\n if (this._paymentTransactions.length > 0) {\n return;\n }\n\n if (client.isAutoValidateChecksumsEnabled()) {\n this._validateChecksums(client);\n }\n\n if (this._nodeIds.length == 0) {\n this._nodeIds = client._network.getNodeAccountIdsForExecute();\n }\n\n const operator = client._operator;\n\n if (this._paymentTransactionId == null) {\n if (this._isPaymentRequired()) {\n if (operator != null) {\n this._paymentTransactionId = TransactionId.generate(\n operator.accountId\n );\n } else {\n throw new Error(\n \"`client` must have an `operator` or an explicit payment transaction must be provided\"\n );\n }\n } else {\n this._paymentTransactionId = TransactionId.generate(\n new AccountId(0)\n );\n }\n }\n\n let cost =\n this._queryPayment != null\n ? this._queryPayment\n : client.maxQueryPayment;\n\n if (\n this._paymentTransactions.length !== 0 ||\n !this._isPaymentRequired()\n ) {\n cost = new Hbar(0);\n } else {\n if (this._queryPayment == null) {\n const actualCost = await this.getCost(client);\n\n if (\n cost.toTinybars().toInt() < actualCost.toTinybars().toInt()\n ) {\n throw new MaxQueryPaymentExceeded(cost, actualCost);\n }\n\n cost = actualCost;\n }\n }\n\n for (const node of this._nodeIds) {\n this._paymentTransactions.push(\n await _makePaymentTransaction(\n /** @type {import(\"../transaction/TransactionId.js\").default} */ (\n this._paymentTransactionId\n ),\n node,\n this._isPaymentRequired() ? operator : null,\n /** @type {Hbar} */ (cost)\n )\n );\n }\n }\n\n /**\n * @abstract\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponseHeader(response) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @returns {proto.IQueryHeader}\n */\n _makeRequestHeader() {\n /** @type {proto.IQueryHeader} */\n let header = {};\n\n if (this._isPaymentRequired() && this._paymentTransactions.length > 0) {\n header = {\n responseType: ProtoResponseType.ANSWER_ONLY,\n payment: this._paymentTransactions[this._nextNodeIndex],\n };\n }\n\n return header;\n }\n\n /**\n * @abstract\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _onMakeRequest(header) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @returns {proto.IQuery}\n */\n _makeRequest() {\n /** @type {proto.IQueryHeader} */\n let header = {};\n\n if (this._isPaymentRequired() && this._paymentTransactions != null) {\n header = {\n payment: this._paymentTransactions[this._nextNodeIndex],\n responseType: ProtoResponseType.ANSWER_ONLY,\n };\n }\n\n return this._onMakeRequest(header);\n }\n\n /**\n * @override\n * @internal\n * @returns {Promise}\n */\n _makeRequestAsync() {\n return Promise.resolve(this._makeRequest());\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.PlatformTransactionNotCreated:\n return ExecutionState.Retry;\n case Status.Ok:\n return ExecutionState.Finished;\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n const status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n /**\n * @returns {AccountId}\n */\n _getNodeAccountId() {\n if (this._nodeIds.length > 0) {\n // if there are payment transactions,\n // we need to use the node of the current payment transaction\n return this._nodeIds[this._nextNodeIndex];\n } else {\n throw new Error(\n \"(BUG) nodeAccountIds were not set for query before executing\"\n );\n }\n }\n\n /**\n * @override\n * @protected\n * @returns {void}\n */\n _advanceRequest() {\n if (this._isPaymentRequired() && this._paymentTransactions.length > 0) {\n // each time we move our cursor to the next transaction\n // wrapping around to ensure we are cycling\n super._nextNodeIndex =\n (this._nextNodeIndex + 1) % this._paymentTransactions.length;\n } else {\n super._advanceRequest();\n }\n }\n}\n\n/**\n * @param {TransactionId} paymentTransactionId\n * @param {AccountId} nodeId\n * @param {?ClientOperator} operator\n * @param {Hbar} paymentAmount\n * @returns {Promise}\n */\nexport async function _makePaymentTransaction(\n paymentTransactionId,\n nodeId,\n operator,\n paymentAmount\n) {\n const accountAmounts = [];\n\n if (operator != null) {\n accountAmounts.push({\n accountID: operator.accountId._toProtobuf(),\n amount: paymentAmount.negated().toTinybars(),\n });\n accountAmounts.push({\n accountID: nodeId._toProtobuf(),\n amount: paymentAmount.toTinybars(),\n });\n } else {\n accountAmounts.push({\n accountID: new AccountId(0)._toProtobuf(),\n amount: paymentAmount.negated().toTinybars(),\n });\n accountAmounts.push({\n accountID: nodeId._toProtobuf(),\n amount: paymentAmount.toTinybars(),\n });\n }\n /**\n * @type {proto.ITransactionBody}\n */\n const body = {\n transactionID: paymentTransactionId._toProtobuf(),\n nodeAccountID: nodeId._toProtobuf(),\n transactionFee: new Hbar(1).toTinybars(),\n transactionValidDuration: {\n seconds: Long.fromNumber(120),\n },\n cryptoTransfer: {\n transfers: {\n accountAmounts,\n },\n },\n };\n\n /** @type {proto.ISignedTransaction} */\n const signedTransaction = {\n bodyBytes: ProtoTransactionBody.encode(body).finish(),\n };\n\n if (operator != null) {\n const signature = await operator.transactionSigner(\n /** @type {Uint8Array} */ (signedTransaction.bodyBytes)\n );\n\n signedTransaction.sigMap = {\n sigPair: [operator.publicKey._toProtobufSignature(signature)],\n };\n }\n\n return {\n signedTransactionBytes:\n ProtoSignedTransaction.encode(signedTransaction).finish(),\n };\n}\n\n/**\n * @type {((query: Query<*>) => import(\"./CostQuery.js\").default<*>)[]}\n */\nexport const COST_QUERY = [];\n","var getPrototypeOf = require(\"./getPrototypeOf.js\");\n\nvar setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nvar isNativeFunction = require(\"./isNativeFunction.js\");\n\nvar construct = require(\"./construct.js\");\n\nfunction _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n return _wrapNativeSuper(Class);\n}\n\nmodule.exports = _wrapNativeSuper;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","\"use strict\";\nimport { id } from \"./id\";\nimport { isValidName, namehash } from \"./namehash\";\nimport { hashMessage, messagePrefix } from \"./message\";\nimport { TypedDataEncoder as _TypedDataEncoder } from \"./typed-data\";\nexport { id, namehash, isValidName, messagePrefix, hashMessage, _TypedDataEncoder, };\n//# sourceMappingURL=index.js.map","import * as entity_id from \"../EntityIdHelper.js\";\nimport Key from \"../Key.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport CACHE from \"../Cache.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport Long from \"long\";\n\n/**\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * The ID for a crypto-currency contract on Hedera.\n */\nexport default class ContractId extends Key {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n * @param {Uint8Array=} evmAddress\n */\n constructor(props, realm, num, evmAddress) {\n super();\n\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n this.evmAddress = evmAddress != null ? evmAddress : null;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {Long | number} shard\n * @param {Long | number} realm\n * @param {string} evmAddress\n * @returns {ContractId}\n */\n static fromEvmAddress(shard, realm, evmAddress) {\n return new ContractId(shard, realm, 0, hex.decode(evmAddress));\n }\n\n /**\n * @param {string} text\n * @returns {ContractId}\n */\n static fromString(text) {\n const result = entity_id.fromStringSplitter(text);\n\n if (Number.isNaN(result.shard) || Number.isNaN(result.realm)) {\n throw new Error(\"invalid format for entity ID\");\n }\n\n const shard =\n result.shard != null ? Long.fromString(result.shard) : Long.ZERO;\n const realm =\n result.realm != null ? Long.fromString(result.realm) : Long.ZERO;\n const [num, evmAddress] =\n result.numOrHex.length < 40\n ? [Long.fromString(result.numOrHex), undefined]\n : [Long.ZERO, hex.decode(result.numOrHex)];\n\n return new ContractId(shard, realm, num, evmAddress);\n }\n\n /**\n * @internal\n * @param {proto.IContractID} id\n * @returns {ContractId}\n */\n static _fromProtobuf(id) {\n const contractId = new ContractId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.contractNum != null ? id.contractNum : 0\n );\n\n return contractId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {ContractId}\n */\n static fromBytes(bytes) {\n return ContractId._fromProtobuf(proto.ContractID.decode(bytes));\n }\n\n /**\n * @deprecated - Use `ContractId.fromEvmAddress()` instead\n * @param {string} address\n * @returns {ContractId}\n */\n static fromSolidityAddress(address) {\n console.warn(\"Deprecated: use `ContractId.fromEvmAdress()` instead\");\n\n const [shard, realm, contract] = entity_id.fromSolidityAddress(address);\n return new ContractId(shard, realm, contract);\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n if (this.evmAddress != null) {\n return hex.encode(this.evmAddress);\n } else {\n return entity_id.toSolidityAddress([\n this.shard,\n this.realm,\n this.num,\n ]);\n }\n }\n\n /**\n * @internal\n * @returns {proto.IContractID}\n */\n _toProtobuf() {\n return {\n contractNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n evmAddress: this.evmAddress,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n if (this.evmAddress != null) {\n return `${this.shard.toString()}.${this.realm.toString()}.${hex.encode(\n this.evmAddress\n )}`;\n } else {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ContractID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {ContractId}\n */\n clone() {\n const id = new ContractId(this);\n id._checksum = this._checksum;\n id.evmAddress = this.evmAddress;\n return id;\n }\n\n /**\n * @param {ContractId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n return {\n contractID: this._toProtobuf(),\n };\n }\n\n /**\n * @param {proto.IContractID} key\n * @returns {ContractId}\n */\n static __fromProtobufKey(key) {\n return ContractId._fromProtobuf(key);\n }\n}\n\nCACHE.contractId = (key) => ContractId.__fromProtobufKey(key);\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport Key from \"../Key.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport CACHE from \"../Cache.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport Long from \"long\";\n\n/**\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * The ID for a crypto-currency contract on Hedera.\n */\nexport default class ContractId extends Key {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n * @param {Uint8Array=} evmAddress\n */\n constructor(props, realm, num, evmAddress) {\n super();\n\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n this.evmAddress = evmAddress != null ? evmAddress : null;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {Long | number} shard\n * @param {Long | number} realm\n * @param {string} evmAddress\n * @returns {ContractId}\n */\n static fromEvmAddress(shard, realm, evmAddress) {\n return new ContractId(shard, realm, 0, hex.decode(evmAddress));\n }\n\n /**\n * @param {string} text\n * @returns {ContractId}\n */\n static fromString(text) {\n const result = entity_id.fromStringSplitter(text);\n\n if (Number.isNaN(result.shard) || Number.isNaN(result.realm)) {\n throw new Error(\"invalid format for entity ID\");\n }\n\n const shard =\n result.shard != null ? Long.fromString(result.shard) : Long.ZERO;\n const realm =\n result.realm != null ? Long.fromString(result.realm) : Long.ZERO;\n const [num, evmAddress] =\n result.numOrHex.length < 40\n ? [Long.fromString(result.numOrHex), undefined]\n : [Long.ZERO, hex.decode(result.numOrHex)];\n\n return new ContractId(shard, realm, num, evmAddress);\n }\n\n /**\n * @internal\n * @param {proto.IContractID} id\n * @returns {ContractId}\n */\n static _fromProtobuf(id) {\n const contractId = new ContractId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.contractNum != null ? id.contractNum : 0\n );\n\n return contractId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {ContractId}\n */\n static fromBytes(bytes) {\n return ContractId._fromProtobuf(proto.ContractID.decode(bytes));\n }\n\n /**\n * @deprecated - Use `ContractId.fromEvmAddress()` instead\n * @param {string} address\n * @returns {ContractId}\n */\n static fromSolidityAddress(address) {\n console.warn(\"Deprecated: use `ContractId.fromEvmAdress()` instead\");\n\n const [shard, realm, contract] = entity_id.fromSolidityAddress(address);\n return new ContractId(shard, realm, contract);\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n if (this.evmAddress != null) {\n return hex.encode(this.evmAddress);\n } else {\n return entity_id.toSolidityAddress([\n this.shard,\n this.realm,\n this.num,\n ]);\n }\n }\n\n /**\n * @internal\n * @returns {proto.IContractID}\n */\n _toProtobuf() {\n return {\n contractNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n evmAddress: this.evmAddress,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n if (this.evmAddress != null) {\n return `${this.shard.toString()}.${this.realm.toString()}.${hex.encode(\n this.evmAddress\n )}`;\n } else {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ContractID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {ContractId}\n */\n clone() {\n const id = new ContractId(this);\n id._checksum = this._checksum;\n id.evmAddress = this.evmAddress;\n return id;\n }\n\n /**\n * @param {ContractId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n return {\n contractID: this._toProtobuf(),\n };\n }\n\n /**\n * @param {proto.IContractID} key\n * @returns {ContractId}\n */\n static __fromProtobufKey(key) {\n return ContractId._fromProtobuf(key);\n }\n}\n\nCACHE.contractId = (key) => ContractId.__fromProtobufKey(key);\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * The ID for a crypto-currency file on Hedera.\n */\nexport default class FileId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {FileId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new FileId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.IFileID} id\n * @returns {FileId}\n */\n static _fromProtobuf(id) {\n const fileId = new FileId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.fileNum != null ? id.fileNum : 0\n );\n\n return fileId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {FileId}\n */\n static fromBytes(bytes) {\n return FileId._fromProtobuf(proto.FileID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {FileId}\n */\n static fromSolidityAddress(address) {\n const [shard, realm, file] = entity_id.fromSolidityAddress(address);\n return new FileId(shard, realm, file);\n }\n\n /**\n * @returns {string} solidity address\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.IFileID}\n */\n _toProtobuf() {\n return {\n fileNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.FileID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {FileId}\n */\n clone() {\n const id = new FileId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {FileId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n","import Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n */\n\nexport default class Duration {\n /**\n * @param {Long | number} seconds\n */\n constructor(seconds) {\n /**\n * @readonly\n * @type {Long}\n */\n this.seconds =\n seconds instanceof Long ? seconds : Long.fromNumber(seconds);\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @returns {proto.IDuration}\n */\n _toProtobuf() {\n return {\n seconds: this.seconds,\n };\n }\n\n /**\n * @internal\n * @param {proto.IDuration} duration\n * @returns {Duration}\n */\n static _fromProtobuf(duration) {\n return new Duration(/** @type {Long} */ (duration.seconds));\n }\n}\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * The ID for a crypto-currency file on Hedera.\n */\nexport default class FileId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {FileId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new FileId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.IFileID} id\n * @returns {FileId}\n */\n static _fromProtobuf(id) {\n const fileId = new FileId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.fileNum != null ? id.fileNum : 0\n );\n\n return fileId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {FileId}\n */\n static fromBytes(bytes) {\n return FileId._fromProtobuf(proto.FileID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {FileId}\n */\n static fromSolidityAddress(address) {\n const [shard, realm, file] = entity_id.fromSolidityAddress(address);\n return new FileId(shard, realm, file);\n }\n\n /**\n * @returns {string} solidity address\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.IFileID}\n */\n _toProtobuf() {\n return {\n fileNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.FileID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {FileId}\n */\n clone() {\n const id = new FileId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {FileId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n","import Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n */\n\nexport default class Duration {\n /**\n * @param {Long | number} seconds\n */\n constructor(seconds) {\n /**\n * @readonly\n * @type {Long}\n */\n this.seconds =\n seconds instanceof Long ? seconds : Long.fromNumber(seconds);\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @returns {proto.IDuration}\n */\n _toProtobuf() {\n return {\n seconds: this.seconds,\n };\n }\n\n /**\n * @internal\n * @param {proto.IDuration} duration\n * @returns {Duration}\n */\n static _fromProtobuf(duration) {\n return new Duration(/** @type {Long} */ (duration.seconds));\n }\n}\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport Key from \"../Key.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport CACHE from \"../Cache.js\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * The ID for a crypto-currency contract on Hedera.\n */\nexport default class ContractId extends Key {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n super();\n\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {ContractId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new ContractId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.IContractID} id\n * @returns {ContractId}\n */\n static _fromProtobuf(id) {\n const contractId = new ContractId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.contractNum != null ? id.contractNum : 0\n );\n\n return contractId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {ContractId}\n */\n static fromBytes(bytes) {\n return ContractId._fromProtobuf(proto.ContractID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {ContractId}\n */\n static fromSolidityAddress(address) {\n const [shard, realm, contract] = entity_id.fromSolidityAddress(address);\n return new ContractId(shard, realm, contract);\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.IContractID}\n */\n _toProtobuf() {\n return {\n contractNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ContractID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {ContractId}\n */\n clone() {\n const id = new ContractId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {ContractId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n return {\n contractID: this._toProtobuf(),\n };\n }\n\n /**\n * @param {proto.IContractID} key\n * @returns {ContractId}\n */\n static __fromProtobufKey(key) {\n return ContractId._fromProtobuf(key);\n }\n}\n\nCACHE.contractId = (key) => ContractId.__fromProtobufKey(key);\n","import Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n */\n\nexport default class Duration {\n /**\n * @param {Long | number} seconds\n */\n constructor(seconds) {\n /**\n * @readonly\n * @type {Long}\n */\n this.seconds =\n seconds instanceof Long ? seconds : Long.fromNumber(seconds);\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @returns {proto.IDuration}\n */\n _toProtobuf() {\n return {\n seconds: this.seconds,\n };\n }\n\n /**\n * @internal\n * @param {proto.IDuration} duration\n * @returns {Duration}\n */\n static _fromProtobuf(duration) {\n return new Duration(/** @type {Long} */ (duration.seconds));\n }\n}\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * The ID for a crypto-currency file on Hedera.\n */\nexport default class FileId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {FileId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new FileId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.IFileID} id\n * @returns {FileId}\n */\n static _fromProtobuf(id) {\n const fileId = new FileId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.fileNum != null ? id.fileNum : 0\n );\n\n return fileId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {FileId}\n */\n static fromBytes(bytes) {\n return FileId._fromProtobuf(proto.FileID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {FileId}\n */\n static fromSolidityAddress(address) {\n const [shard, realm, file] = entity_id.fromSolidityAddress(address);\n return new FileId(shard, realm, file);\n }\n\n /**\n * @returns {string} solidity address\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.IFileID}\n */\n _toProtobuf() {\n return {\n fileNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.FileID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {FileId}\n */\n clone() {\n const id = new FileId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {FileId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n","'use strict';\n\nvar utils = exports;\nvar BN = require('bn.js');\nvar minAssert = require('minimalistic-assert');\nvar minUtils = require('minimalistic-crypto-utils');\n\nutils.assert = minAssert;\nutils.toArray = minUtils.toArray;\nutils.zero2 = minUtils.zero2;\nutils.toHex = minUtils.toHex;\nutils.encode = minUtils.encode;\n\n// Represent num in a w-NAF form\nfunction getNAF(num, w, bits) {\n var naf = new Array(Math.max(num.bitLength(), bits) + 1);\n naf.fill(0);\n\n var ws = 1 << (w + 1);\n var k = num.clone();\n\n for (var i = 0; i < naf.length; i++) {\n var z;\n var mod = k.andln(ws - 1);\n if (k.isOdd()) {\n if (mod > (ws >> 1) - 1)\n z = (ws >> 1) - mod;\n else\n z = mod;\n k.isubn(z);\n } else {\n z = 0;\n }\n\n naf[i] = z;\n k.iushrn(1);\n }\n\n return naf;\n}\nutils.getNAF = getNAF;\n\n// Represent k1, k2 in a Joint Sparse Form\nfunction getJSF(k1, k2) {\n var jsf = [\n [],\n [],\n ];\n\n k1 = k1.clone();\n k2 = k2.clone();\n var d1 = 0;\n var d2 = 0;\n var m8;\n while (k1.cmpn(-d1) > 0 || k2.cmpn(-d2) > 0) {\n // First phase\n var m14 = (k1.andln(3) + d1) & 3;\n var m24 = (k2.andln(3) + d2) & 3;\n if (m14 === 3)\n m14 = -1;\n if (m24 === 3)\n m24 = -1;\n var u1;\n if ((m14 & 1) === 0) {\n u1 = 0;\n } else {\n m8 = (k1.andln(7) + d1) & 7;\n if ((m8 === 3 || m8 === 5) && m24 === 2)\n u1 = -m14;\n else\n u1 = m14;\n }\n jsf[0].push(u1);\n\n var u2;\n if ((m24 & 1) === 0) {\n u2 = 0;\n } else {\n m8 = (k2.andln(7) + d2) & 7;\n if ((m8 === 3 || m8 === 5) && m14 === 2)\n u2 = -m24;\n else\n u2 = m24;\n }\n jsf[1].push(u2);\n\n // Second phase\n if (2 * d1 === u1 + 1)\n d1 = 1 - d1;\n if (2 * d2 === u2 + 1)\n d2 = 1 - d2;\n k1.iushrn(1);\n k2.iushrn(1);\n }\n\n return jsf;\n}\nutils.getJSF = getJSF;\n\nfunction cachedProperty(obj, name, computer) {\n var key = '_' + name;\n obj.prototype[name] = function cachedProperty() {\n return this[key] !== undefined ? this[key] :\n this[key] = computer.call(this);\n };\n}\nutils.cachedProperty = cachedProperty;\n\nfunction parseBytes(bytes) {\n return typeof bytes === 'string' ? utils.toArray(bytes, 'hex') :\n bytes;\n}\nutils.parseBytes = parseBytes;\n\nfunction intFromLE(bytes) {\n return new BN(bytes, 'hex', 'le');\n}\nutils.intFromLE = intFromLE;\n\n","module.exports = assert;\n\nfunction assert(val, msg) {\n if (!val)\n throw new Error(msg || 'Assertion failed');\n}\n\nassert.equal = function assertEqual(l, r, msg) {\n if (l != r)\n throw new Error(msg || ('Assertion failed: ' + l + ' != ' + r));\n};\n","/**\n * @type {string[]}\n */\nconst byteToHex = [];\n\nfor (let n = 0; n <= 0xff; n += 1) {\n byteToHex.push(n.toString(16).padStart(2, \"0\"));\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function encode(data) {\n let string = \"\";\n\n for (const byte of data) {\n string += byteToHex[byte];\n }\n\n return string;\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function decode(text) {\n const str = text.startsWith(\"0x\") ? text.substring(2) : text;\n const result = str.match(/.{1,2}/gu);\n\n return new Uint8Array(\n (result == null ? [] : result).map((byte) => parseInt(byte, 16))\n );\n}\n","import AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Long from \"long\";\n\n/**\n * The client-generated ID for a transaction.\n *\n * This is used for retrieving receipts and records for a transaction, for appending to a file\n * right after creating it, for instantiating a smart contract with bytecode in a file just created,\n * and internally by the network for detecting when duplicate transactions are submitted.\n */\nexport default class TransactionId {\n /**\n * Don't use this method directly.\n * Use `TransactionId.[generate|withNonce|withValidStart]()` instead.\n *\n * @param {?AccountId} accountId\n * @param {?Timestamp} validStart\n * @param {?boolean} scheduled\n * @param {?Long | number} nonce\n */\n constructor(accountId, validStart, scheduled = false, nonce = null) {\n /**\n * The Account ID that paid for this transaction.\n *\n * @readonly\n */\n this.accountId = accountId;\n\n /**\n * The time from when this transaction is valid.\n *\n * When a transaction is submitted there is additionally a validDuration (defaults to 120s)\n * and together they define a time window that a transaction may be processed in.\n *\n * @readonly\n */\n this.validStart = validStart;\n\n this.scheduled = scheduled;\n\n this.nonce = null;\n if (nonce != null && nonce != 0) {\n this.setNonce(nonce);\n }\n\n Object.freeze(this);\n }\n\n /**\n * @param {Long | number} nonce\n * @returns {TransactionId}\n */\n setNonce(nonce) {\n this.nonce = typeof nonce === \"number\" ? Long.fromNumber(nonce) : nonce;\n return this;\n }\n\n /**\n * @param {AccountId} accountId\n * @param {Timestamp} validStart\n * @returns {TransactionId}\n */\n static withValidStart(accountId, validStart) {\n return new TransactionId(accountId, validStart, null);\n }\n\n /**\n * Generates a new transaction ID for the given account ID.\n *\n * Note that transaction IDs are made of the valid start of the transaction and the account\n * that will be charged the transaction fees for the transaction.\n *\n * @param {AccountId | string} id\n * @returns {TransactionId}\n */\n static generate(id) {\n return new TransactionId(\n typeof id === \"string\"\n ? AccountId.fromString(id)\n : new AccountId(id),\n Timestamp.generate()\n );\n }\n\n /**\n * @param {string} wholeId\n * @returns {TransactionId}\n */\n static fromString(wholeId) {\n let account, seconds, nanos, isScheduled, nonce;\n let rest;\n // 1.1.1@5.4?scheduled/117\n\n [account, rest] = wholeId.split(\"@\");\n [seconds, rest] = rest.split(\".\");\n if (rest.includes(\"?\")) {\n [nanos, rest] = rest.split(\"?scheduled\");\n isScheduled = true;\n if (rest.includes(\"/\")) {\n nonce = rest.replace(\"/\", \"\");\n } else {\n nonce = null;\n }\n } else if (rest.includes(\"/\")) {\n [nanos, nonce] = rest.split(\"/\");\n isScheduled = false;\n } else {\n nanos = rest;\n }\n\n return new TransactionId(\n AccountId.fromString(account),\n new Timestamp(Long.fromValue(seconds), Long.fromValue(nanos)),\n isScheduled,\n nonce != null ? Long.fromString(nonce) : null\n );\n }\n\n /**\n * @param {boolean} scheduled\n * @returns {this}\n */\n setScheduled(scheduled) {\n this.scheduled = scheduled;\n return this;\n }\n\n /**\n * @returns {string}\n */\n toString() {\n if (this.accountId != null && this.validStart != null) {\n const nonce =\n this.nonce != null ? \"/\".concat(this.nonce.toString()) : \"\";\n const scheduled = this.scheduled ? \"?scheduled\" : \"\";\n return `${this.accountId.toString()}@${this.validStart.seconds.toString()}.${this.validStart.nanos.toString()}${scheduled}${nonce}`;\n } else {\n throw new Error(\"neither `accountId` nor `validStart` are set\");\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransactionID} id\n * @returns {TransactionId}\n */\n static _fromProtobuf(id) {\n if (id.accountID != null && id.transactionValidStart != null) {\n return new TransactionId(\n AccountId._fromProtobuf(id.accountID),\n Timestamp._fromProtobuf(id.transactionValidStart),\n id.scheduled,\n id.nonce\n );\n } else {\n throw new Error(\n \"Neither `nonce` or `accountID` and `transactionValidStart` are set\"\n );\n }\n }\n\n /**\n * @internal\n * @returns {proto.ITransactionID}\n */\n _toProtobuf() {\n return {\n accountID:\n this.accountId != null ? this.accountId._toProtobuf() : null,\n transactionValidStart:\n this.validStart != null ? this.validStart._toProtobuf() : null,\n scheduled: this.scheduled,\n nonce: this.nonce != null ? this.nonce.toInt() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TransactionId}\n */\n static fromBytes(bytes) {\n return TransactionId._fromProtobuf(proto.TransactionID.decode(bytes));\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TransactionID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {TransactionId}\n */\n clone() {\n return new TransactionId(\n this.accountId,\n this.validStart,\n this.scheduled,\n this.nonce\n );\n }\n\n /**\n * @param {TransactionId} other\n * @returns {number}\n */\n compare(other) {\n const comparison = /** @type {AccountId} */ (this.accountId).compare(\n /** @type {AccountId} */ (other.accountId)\n );\n\n if (comparison != 0) {\n return comparison;\n }\n\n return /** @type {Timestamp} */ (this.validStart).compare(\n /** @type {Timestamp} */ (other.validStart)\n );\n }\n}\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\n/**/\n\nvar Buffer = require('safe-buffer').Buffer;\n/**/\n\nvar isEncoding = Buffer.isEncoding || function (encoding) {\n encoding = '' + encoding;\n switch (encoding && encoding.toLowerCase()) {\n case 'hex':case 'utf8':case 'utf-8':case 'ascii':case 'binary':case 'base64':case 'ucs2':case 'ucs-2':case 'utf16le':case 'utf-16le':case 'raw':\n return true;\n default:\n return false;\n }\n};\n\nfunction _normalizeEncoding(enc) {\n if (!enc) return 'utf8';\n var retried;\n while (true) {\n switch (enc) {\n case 'utf8':\n case 'utf-8':\n return 'utf8';\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return 'utf16le';\n case 'latin1':\n case 'binary':\n return 'latin1';\n case 'base64':\n case 'ascii':\n case 'hex':\n return enc;\n default:\n if (retried) return; // undefined\n enc = ('' + enc).toLowerCase();\n retried = true;\n }\n }\n};\n\n// Do not cache `Buffer.isEncoding` when checking encoding names as some\n// modules monkey-patch it to support additional encodings\nfunction normalizeEncoding(enc) {\n var nenc = _normalizeEncoding(enc);\n if (typeof nenc !== 'string' && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) throw new Error('Unknown encoding: ' + enc);\n return nenc || enc;\n}\n\n// StringDecoder provides an interface for efficiently splitting a series of\n// buffers into a series of JS strings without breaking apart multi-byte\n// characters.\nexports.StringDecoder = StringDecoder;\nfunction StringDecoder(encoding) {\n this.encoding = normalizeEncoding(encoding);\n var nb;\n switch (this.encoding) {\n case 'utf16le':\n this.text = utf16Text;\n this.end = utf16End;\n nb = 4;\n break;\n case 'utf8':\n this.fillLast = utf8FillLast;\n nb = 4;\n break;\n case 'base64':\n this.text = base64Text;\n this.end = base64End;\n nb = 3;\n break;\n default:\n this.write = simpleWrite;\n this.end = simpleEnd;\n return;\n }\n this.lastNeed = 0;\n this.lastTotal = 0;\n this.lastChar = Buffer.allocUnsafe(nb);\n}\n\nStringDecoder.prototype.write = function (buf) {\n if (buf.length === 0) return '';\n var r;\n var i;\n if (this.lastNeed) {\n r = this.fillLast(buf);\n if (r === undefined) return '';\n i = this.lastNeed;\n this.lastNeed = 0;\n } else {\n i = 0;\n }\n if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i);\n return r || '';\n};\n\nStringDecoder.prototype.end = utf8End;\n\n// Returns only complete characters in a Buffer\nStringDecoder.prototype.text = utf8Text;\n\n// Attempts to complete a partial non-UTF-8 character using bytes from a Buffer\nStringDecoder.prototype.fillLast = function (buf) {\n if (this.lastNeed <= buf.length) {\n buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed);\n return this.lastChar.toString(this.encoding, 0, this.lastTotal);\n }\n buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length);\n this.lastNeed -= buf.length;\n};\n\n// Checks the type of a UTF-8 byte, whether it's ASCII, a leading byte, or a\n// continuation byte. If an invalid byte is detected, -2 is returned.\nfunction utf8CheckByte(byte) {\n if (byte <= 0x7F) return 0;else if (byte >> 5 === 0x06) return 2;else if (byte >> 4 === 0x0E) return 3;else if (byte >> 3 === 0x1E) return 4;\n return byte >> 6 === 0x02 ? -1 : -2;\n}\n\n// Checks at most 3 bytes at the end of a Buffer in order to detect an\n// incomplete multi-byte UTF-8 character. The total number of bytes (2, 3, or 4)\n// needed to complete the UTF-8 character (if applicable) are returned.\nfunction utf8CheckIncomplete(self, buf, i) {\n var j = buf.length - 1;\n if (j < i) return 0;\n var nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) self.lastNeed = nb - 1;\n return nb;\n }\n if (--j < i || nb === -2) return 0;\n nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) self.lastNeed = nb - 2;\n return nb;\n }\n if (--j < i || nb === -2) return 0;\n nb = utf8CheckByte(buf[j]);\n if (nb >= 0) {\n if (nb > 0) {\n if (nb === 2) nb = 0;else self.lastNeed = nb - 3;\n }\n return nb;\n }\n return 0;\n}\n\n// Validates as many continuation bytes for a multi-byte UTF-8 character as\n// needed or are available. If we see a non-continuation byte where we expect\n// one, we \"replace\" the validated continuation bytes we've seen so far with\n// a single UTF-8 replacement character ('\\ufffd'), to match v8's UTF-8 decoding\n// behavior. The continuation byte check is included three times in the case\n// where all of the continuation bytes for a character exist in the same buffer.\n// It is also done this way as a slight performance increase instead of using a\n// loop.\nfunction utf8CheckExtraBytes(self, buf, p) {\n if ((buf[0] & 0xC0) !== 0x80) {\n self.lastNeed = 0;\n return '\\ufffd';\n }\n if (self.lastNeed > 1 && buf.length > 1) {\n if ((buf[1] & 0xC0) !== 0x80) {\n self.lastNeed = 1;\n return '\\ufffd';\n }\n if (self.lastNeed > 2 && buf.length > 2) {\n if ((buf[2] & 0xC0) !== 0x80) {\n self.lastNeed = 2;\n return '\\ufffd';\n }\n }\n }\n}\n\n// Attempts to complete a multi-byte UTF-8 character using bytes from a Buffer.\nfunction utf8FillLast(buf) {\n var p = this.lastTotal - this.lastNeed;\n var r = utf8CheckExtraBytes(this, buf, p);\n if (r !== undefined) return r;\n if (this.lastNeed <= buf.length) {\n buf.copy(this.lastChar, p, 0, this.lastNeed);\n return this.lastChar.toString(this.encoding, 0, this.lastTotal);\n }\n buf.copy(this.lastChar, p, 0, buf.length);\n this.lastNeed -= buf.length;\n}\n\n// Returns all complete UTF-8 characters in a Buffer. If the Buffer ended on a\n// partial character, the character's bytes are buffered until the required\n// number of bytes are available.\nfunction utf8Text(buf, i) {\n var total = utf8CheckIncomplete(this, buf, i);\n if (!this.lastNeed) return buf.toString('utf8', i);\n this.lastTotal = total;\n var end = buf.length - (total - this.lastNeed);\n buf.copy(this.lastChar, 0, end);\n return buf.toString('utf8', i, end);\n}\n\n// For UTF-8, a replacement character is added when ending on a partial\n// character.\nfunction utf8End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) return r + '\\ufffd';\n return r;\n}\n\n// UTF-16LE typically needs two bytes per character, but even if we have an even\n// number of bytes available, we need to check if we end on a leading/high\n// surrogate. In that case, we need to wait for the next two bytes in order to\n// decode the last character properly.\nfunction utf16Text(buf, i) {\n if ((buf.length - i) % 2 === 0) {\n var r = buf.toString('utf16le', i);\n if (r) {\n var c = r.charCodeAt(r.length - 1);\n if (c >= 0xD800 && c <= 0xDBFF) {\n this.lastNeed = 2;\n this.lastTotal = 4;\n this.lastChar[0] = buf[buf.length - 2];\n this.lastChar[1] = buf[buf.length - 1];\n return r.slice(0, -1);\n }\n }\n return r;\n }\n this.lastNeed = 1;\n this.lastTotal = 2;\n this.lastChar[0] = buf[buf.length - 1];\n return buf.toString('utf16le', i, buf.length - 1);\n}\n\n// For UTF-16LE we do not explicitly append special replacement characters if we\n// end on a partial character, we simply let v8 handle that.\nfunction utf16End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) {\n var end = this.lastTotal - this.lastNeed;\n return r + this.lastChar.toString('utf16le', 0, end);\n }\n return r;\n}\n\nfunction base64Text(buf, i) {\n var n = (buf.length - i) % 3;\n if (n === 0) return buf.toString('base64', i);\n this.lastNeed = 3 - n;\n this.lastTotal = 3;\n if (n === 1) {\n this.lastChar[0] = buf[buf.length - 1];\n } else {\n this.lastChar[0] = buf[buf.length - 2];\n this.lastChar[1] = buf[buf.length - 1];\n }\n return buf.toString('base64', i, buf.length - n);\n}\n\nfunction base64End(buf) {\n var r = buf && buf.length ? this.write(buf) : '';\n if (this.lastNeed) return r + this.lastChar.toString('base64', 0, 3 - this.lastNeed);\n return r;\n}\n\n// Pass bytes on through for single-byte encodings (e.g. ascii, latin1, hex)\nfunction simpleWrite(buf) {\n return buf.toString(this.encoding);\n}\n\nfunction simpleEnd(buf) {\n return buf && buf.length ? this.write(buf) : '';\n}","'use strict';\n\nvar utils = exports;\nvar BN = require('bn.js');\nvar minAssert = require('minimalistic-assert');\nvar minUtils = require('minimalistic-crypto-utils');\n\nutils.assert = minAssert;\nutils.toArray = minUtils.toArray;\nutils.zero2 = minUtils.zero2;\nutils.toHex = minUtils.toHex;\nutils.encode = minUtils.encode;\n\n// Represent num in a w-NAF form\nfunction getNAF(num, w, bits) {\n var naf = new Array(Math.max(num.bitLength(), bits) + 1);\n naf.fill(0);\n\n var ws = 1 << (w + 1);\n var k = num.clone();\n\n for (var i = 0; i < naf.length; i++) {\n var z;\n var mod = k.andln(ws - 1);\n if (k.isOdd()) {\n if (mod > (ws >> 1) - 1)\n z = (ws >> 1) - mod;\n else\n z = mod;\n k.isubn(z);\n } else {\n z = 0;\n }\n\n naf[i] = z;\n k.iushrn(1);\n }\n\n return naf;\n}\nutils.getNAF = getNAF;\n\n// Represent k1, k2 in a Joint Sparse Form\nfunction getJSF(k1, k2) {\n var jsf = [\n [],\n [],\n ];\n\n k1 = k1.clone();\n k2 = k2.clone();\n var d1 = 0;\n var d2 = 0;\n var m8;\n while (k1.cmpn(-d1) > 0 || k2.cmpn(-d2) > 0) {\n // First phase\n var m14 = (k1.andln(3) + d1) & 3;\n var m24 = (k2.andln(3) + d2) & 3;\n if (m14 === 3)\n m14 = -1;\n if (m24 === 3)\n m24 = -1;\n var u1;\n if ((m14 & 1) === 0) {\n u1 = 0;\n } else {\n m8 = (k1.andln(7) + d1) & 7;\n if ((m8 === 3 || m8 === 5) && m24 === 2)\n u1 = -m14;\n else\n u1 = m14;\n }\n jsf[0].push(u1);\n\n var u2;\n if ((m24 & 1) === 0) {\n u2 = 0;\n } else {\n m8 = (k2.andln(7) + d2) & 7;\n if ((m8 === 3 || m8 === 5) && m14 === 2)\n u2 = -m24;\n else\n u2 = m24;\n }\n jsf[1].push(u2);\n\n // Second phase\n if (2 * d1 === u1 + 1)\n d1 = 1 - d1;\n if (2 * d2 === u2 + 1)\n d2 = 1 - d2;\n k1.iushrn(1);\n k2.iushrn(1);\n }\n\n return jsf;\n}\nutils.getJSF = getJSF;\n\nfunction cachedProperty(obj, name, computer) {\n var key = '_' + name;\n obj.prototype[name] = function cachedProperty() {\n return this[key] !== undefined ? this[key] :\n this[key] = computer.call(this);\n };\n}\nutils.cachedProperty = cachedProperty;\n\nfunction parseBytes(bytes) {\n return typeof bytes === 'string' ? utils.toArray(bytes, 'hex') :\n bytes;\n}\nutils.parseBytes = parseBytes;\n\nfunction intFromLE(bytes) {\n return new BN(bytes, 'hex', 'le');\n}\nutils.intFromLE = intFromLE;\n\n","/**\n * @type {string[]}\n */\nconst byteToHex = [];\n\nfor (let n = 0; n <= 0xff; n += 1) {\n byteToHex.push(n.toString(16).padStart(2, \"0\"));\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function encode(data) {\n let string = \"\";\n\n for (const byte of data) {\n string += byteToHex[byte];\n }\n\n return string;\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function decode(text) {\n const str = text.startsWith(\"0x\") ? text.substring(2) : text;\n const result = str.match(/.{1,2}/gu);\n\n return new Uint8Array(\n (result == null ? [] : result).map((byte) => parseInt(byte, 16))\n );\n}\n","import AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Long from \"long\";\n\n/**\n * The client-generated ID for a transaction.\n *\n * This is used for retrieving receipts and records for a transaction, for appending to a file\n * right after creating it, for instantiating a smart contract with bytecode in a file just created,\n * and internally by the network for detecting when duplicate transactions are submitted.\n */\nexport default class TransactionId {\n /**\n * Don't use this method directly.\n * Use `TransactionId.[generate|withNonce|withValidStart]()` instead.\n *\n * @param {?AccountId} accountId\n * @param {?Timestamp} validStart\n * @param {?boolean} scheduled\n * @param {?Long | number} nonce\n */\n constructor(accountId, validStart, scheduled = false, nonce = null) {\n /**\n * The Account ID that paid for this transaction.\n *\n * @readonly\n */\n this.accountId = accountId;\n\n /**\n * The time from when this transaction is valid.\n *\n * When a transaction is submitted there is additionally a validDuration (defaults to 120s)\n * and together they define a time window that a transaction may be processed in.\n *\n * @readonly\n */\n this.validStart = validStart;\n\n this.scheduled = scheduled;\n\n this.nonce = null;\n if (nonce != null && nonce != 0) {\n this.setNonce(nonce);\n }\n\n Object.freeze(this);\n }\n\n /**\n * @param {Long | number} nonce\n * @returns {TransactionId}\n */\n setNonce(nonce) {\n this.nonce = typeof nonce === \"number\" ? Long.fromNumber(nonce) : nonce;\n return this;\n }\n\n /**\n * @param {AccountId} accountId\n * @param {Timestamp} validStart\n * @returns {TransactionId}\n */\n static withValidStart(accountId, validStart) {\n return new TransactionId(accountId, validStart, null);\n }\n\n /**\n * Generates a new transaction ID for the given account ID.\n *\n * Note that transaction IDs are made of the valid start of the transaction and the account\n * that will be charged the transaction fees for the transaction.\n *\n * @param {AccountId | string} id\n * @returns {TransactionId}\n */\n static generate(id) {\n return new TransactionId(\n typeof id === \"string\"\n ? AccountId.fromString(id)\n : new AccountId(id),\n Timestamp.generate()\n );\n }\n\n /**\n * @param {string} wholeId\n * @returns {TransactionId}\n */\n static fromString(wholeId) {\n let account, seconds, nanos, isScheduled, nonce;\n let rest;\n // 1.1.1@5.4?scheduled/117\n\n [account, rest] = wholeId.split(\"@\");\n [seconds, rest] = rest.split(\".\");\n if (rest.includes(\"?\")) {\n [nanos, rest] = rest.split(\"?scheduled\");\n isScheduled = true;\n if (rest.includes(\"/\")) {\n nonce = rest.replace(\"/\", \"\");\n } else {\n nonce = null;\n }\n } else if (rest.includes(\"/\")) {\n [nanos, nonce] = rest.split(\"/\");\n isScheduled = false;\n } else {\n nanos = rest;\n }\n\n return new TransactionId(\n AccountId.fromString(account),\n new Timestamp(Long.fromValue(seconds), Long.fromValue(nanos)),\n isScheduled,\n nonce != null ? Long.fromString(nonce) : null\n );\n }\n\n /**\n * @param {boolean} scheduled\n * @returns {this}\n */\n setScheduled(scheduled) {\n this.scheduled = scheduled;\n return this;\n }\n\n /**\n * @returns {string}\n */\n toString() {\n if (this.accountId != null && this.validStart != null) {\n const nonce =\n this.nonce != null ? \"/\".concat(this.nonce.toString()) : \"\";\n const scheduled = this.scheduled ? \"?scheduled\" : \"\";\n return `${this.accountId.toString()}@${this.validStart.seconds.toString()}.${this.validStart.nanos.toString()}${scheduled}${nonce}`;\n } else {\n throw new Error(\"neither `accountId` nor `validStart` are set\");\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransactionID} id\n * @returns {TransactionId}\n */\n static _fromProtobuf(id) {\n if (id.accountID != null && id.transactionValidStart != null) {\n return new TransactionId(\n AccountId._fromProtobuf(id.accountID),\n Timestamp._fromProtobuf(id.transactionValidStart),\n id.scheduled,\n id.nonce\n );\n } else {\n throw new Error(\n \"Neither `nonce` or `accountID` and `transactionValidStart` are set\"\n );\n }\n }\n\n /**\n * @internal\n * @returns {proto.ITransactionID}\n */\n _toProtobuf() {\n return {\n accountID:\n this.accountId != null ? this.accountId._toProtobuf() : null,\n transactionValidStart:\n this.validStart != null ? this.validStart._toProtobuf() : null,\n scheduled: this.scheduled,\n nonce: this.nonce != null ? this.nonce.toInt() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TransactionId}\n */\n static fromBytes(bytes) {\n return TransactionId._fromProtobuf(proto.TransactionID.decode(bytes));\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TransactionID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {TransactionId}\n */\n clone() {\n return new TransactionId(\n this.accountId,\n this.validStart,\n this.scheduled,\n this.nonce\n );\n }\n\n /**\n * @param {TransactionId} other\n * @returns {number}\n */\n compare(other) {\n const comparison = /** @type {AccountId} */ (this.accountId).compare(\n /** @type {AccountId} */ (other.accountId)\n );\n\n if (comparison != 0) {\n return comparison;\n }\n\n return /** @type {Timestamp} */ (this.validStart).compare(\n /** @type {Timestamp} */ (other.validStart)\n );\n }\n}\n","'use strict';\n\nvar utils = exports;\nvar BN = require('bn.js');\nvar minAssert = require('minimalistic-assert');\nvar minUtils = require('minimalistic-crypto-utils');\n\nutils.assert = minAssert;\nutils.toArray = minUtils.toArray;\nutils.zero2 = minUtils.zero2;\nutils.toHex = minUtils.toHex;\nutils.encode = minUtils.encode;\n\n// Represent num in a w-NAF form\nfunction getNAF(num, w, bits) {\n var naf = new Array(Math.max(num.bitLength(), bits) + 1);\n naf.fill(0);\n\n var ws = 1 << (w + 1);\n var k = num.clone();\n\n for (var i = 0; i < naf.length; i++) {\n var z;\n var mod = k.andln(ws - 1);\n if (k.isOdd()) {\n if (mod > (ws >> 1) - 1)\n z = (ws >> 1) - mod;\n else\n z = mod;\n k.isubn(z);\n } else {\n z = 0;\n }\n\n naf[i] = z;\n k.iushrn(1);\n }\n\n return naf;\n}\nutils.getNAF = getNAF;\n\n// Represent k1, k2 in a Joint Sparse Form\nfunction getJSF(k1, k2) {\n var jsf = [\n [],\n [],\n ];\n\n k1 = k1.clone();\n k2 = k2.clone();\n var d1 = 0;\n var d2 = 0;\n var m8;\n while (k1.cmpn(-d1) > 0 || k2.cmpn(-d2) > 0) {\n // First phase\n var m14 = (k1.andln(3) + d1) & 3;\n var m24 = (k2.andln(3) + d2) & 3;\n if (m14 === 3)\n m14 = -1;\n if (m24 === 3)\n m24 = -1;\n var u1;\n if ((m14 & 1) === 0) {\n u1 = 0;\n } else {\n m8 = (k1.andln(7) + d1) & 7;\n if ((m8 === 3 || m8 === 5) && m24 === 2)\n u1 = -m14;\n else\n u1 = m14;\n }\n jsf[0].push(u1);\n\n var u2;\n if ((m24 & 1) === 0) {\n u2 = 0;\n } else {\n m8 = (k2.andln(7) + d2) & 7;\n if ((m8 === 3 || m8 === 5) && m14 === 2)\n u2 = -m24;\n else\n u2 = m24;\n }\n jsf[1].push(u2);\n\n // Second phase\n if (2 * d1 === u1 + 1)\n d1 = 1 - d1;\n if (2 * d2 === u2 + 1)\n d2 = 1 - d2;\n k1.iushrn(1);\n k2.iushrn(1);\n }\n\n return jsf;\n}\nutils.getJSF = getJSF;\n\nfunction cachedProperty(obj, name, computer) {\n var key = '_' + name;\n obj.prototype[name] = function cachedProperty() {\n return this[key] !== undefined ? this[key] :\n this[key] = computer.call(this);\n };\n}\nutils.cachedProperty = cachedProperty;\n\nfunction parseBytes(bytes) {\n return typeof bytes === 'string' ? utils.toArray(bytes, 'hex') :\n bytes;\n}\nutils.parseBytes = parseBytes;\n\nfunction intFromLE(bytes) {\n return new BN(bytes, 'hex', 'le');\n}\nutils.intFromLE = intFromLE;\n\n","import AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Long from \"long\";\n\n/**\n * The client-generated ID for a transaction.\n *\n * This is used for retrieving receipts and records for a transaction, for appending to a file\n * right after creating it, for instantiating a smart contract with bytecode in a file just created,\n * and internally by the network for detecting when duplicate transactions are submitted.\n */\nexport default class TransactionId {\n /**\n * Don't use this method directly.\n * Use `TransactionId.[generate|withNonce|withValidStart]()` instead.\n *\n * @param {?AccountId} accountId\n * @param {?Timestamp} validStart\n * @param {?boolean} scheduled\n * @param {?Long | number} nonce\n */\n constructor(accountId, validStart, scheduled = false, nonce = null) {\n /**\n * The Account ID that paid for this transaction.\n *\n * @readonly\n */\n this.accountId = accountId;\n\n /**\n * The time from when this transaction is valid.\n *\n * When a transaction is submitted there is additionally a validDuration (defaults to 120s)\n * and together they define a time window that a transaction may be processed in.\n *\n * @readonly\n */\n this.validStart = validStart;\n\n this.scheduled = scheduled;\n\n this.nonce = null;\n if (nonce != null) {\n this.setNonce(nonce);\n }\n\n Object.freeze(this);\n }\n\n /**\n * @param {Long | number} nonce\n * @returns {TransactionId}\n */\n setNonce(nonce) {\n this.nonce = typeof nonce === \"number\" ? Long.fromNumber(nonce) : nonce;\n return this;\n }\n\n /**\n * @param {AccountId} accountId\n * @param {Timestamp} validStart\n * @returns {TransactionId}\n */\n static withValidStart(accountId, validStart) {\n return new TransactionId(accountId, validStart, null);\n }\n\n /**\n * Generates a new transaction ID for the given account ID.\n *\n * Note that transaction IDs are made of the valid start of the transaction and the account\n * that will be charged the transaction fees for the transaction.\n *\n * @param {AccountId | string} id\n * @returns {TransactionId}\n */\n static generate(id) {\n return new TransactionId(\n typeof id === \"string\"\n ? AccountId.fromString(id)\n : new AccountId(id),\n Timestamp.generate()\n );\n }\n\n /**\n * @param {string} wholeId\n * @returns {TransactionId}\n */\n static fromString(wholeId) {\n let account, seconds, nanos, isScheduled, nonce;\n let rest;\n // 1.1.1@5.4?scheduled/117\n\n [account, rest] = wholeId.split(\"@\");\n [seconds, rest] = rest.split(\".\");\n if (rest.includes(\"?\")) {\n [nanos, rest] = rest.split(\"?scheduled\");\n isScheduled = true;\n if (rest.includes(\"/\")) {\n nonce = rest.replace(\"/\", \"\");\n } else {\n nonce = null;\n }\n } else if (rest.includes(\"/\")) {\n [nanos, nonce] = rest.split(\"/\");\n isScheduled = false;\n } else {\n nanos = rest;\n }\n\n return new TransactionId(\n AccountId.fromString(account),\n new Timestamp(Long.fromValue(seconds), Long.fromValue(nanos)),\n isScheduled,\n nonce != null ? Long.fromString(nonce) : null\n );\n }\n\n /**\n * @param {boolean} scheduled\n * @returns {this}\n */\n setScheduled(scheduled) {\n this.scheduled = scheduled;\n return this;\n }\n\n /**\n * @returns {string}\n */\n toString() {\n if (this.accountId != null && this.validStart != null) {\n const nonce =\n this.nonce != null ? \"/\".concat(this.nonce.toString()) : \"\";\n const scheduled = this.scheduled ? \"?scheduled\" : \"\";\n return `${this.accountId.toString()}@${this.validStart.seconds.toString()}.${this.validStart.nanos.toString()}${scheduled}${nonce}`;\n } else {\n throw new Error(\"neither `accountId` nor `validStart` are set\");\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransactionID} id\n * @returns {TransactionId}\n */\n static _fromProtobuf(id) {\n if (id.accountID != null && id.transactionValidStart != null) {\n return new TransactionId(\n AccountId._fromProtobuf(id.accountID),\n Timestamp._fromProtobuf(id.transactionValidStart),\n id.scheduled,\n id.nonce\n );\n } else {\n throw new Error(\n \"Neither `nonce` or `accountID` and `transactionValidStart` are set\"\n );\n }\n }\n\n /**\n * @internal\n * @returns {proto.ITransactionID}\n */\n _toProtobuf() {\n return {\n accountID:\n this.accountId != null ? this.accountId._toProtobuf() : null,\n transactionValidStart:\n this.validStart != null ? this.validStart._toProtobuf() : null,\n scheduled: this.scheduled,\n nonce: this.nonce != null ? this.nonce.toInt() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TransactionId}\n */\n static fromBytes(bytes) {\n return TransactionId._fromProtobuf(proto.TransactionID.decode(bytes));\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TransactionID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {TransactionId}\n */\n clone() {\n return new TransactionId(\n this.accountId,\n this.validStart,\n this.scheduled,\n this.nonce\n );\n }\n\n /**\n * @param {TransactionId} other\n * @returns {number}\n */\n compare(other) {\n const comparison = /** @type {AccountId} */ (this.accountId).compare(\n /** @type {AccountId} */ (other.accountId)\n );\n\n if (comparison != 0) {\n return comparison;\n }\n\n return /** @type {Timestamp} */ (this.validStart).compare(\n /** @type {Timestamp} */ (other.validStart)\n );\n }\n}\n","/**\n * @abstract\n * @template {{ toString(): string }} KeyT\n * @template {any} ValueT\n */\nexport default class ObjectMap {\n /**\n * @param {(s: string) => KeyT} fromString\n */\n constructor(fromString) {\n /** @type {Map} */\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n this._map = new Map();\n\n /** @type {Map} */\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n this.__map = new Map();\n\n this._fromString = fromString;\n }\n\n /**\n * @param {KeyT | string} key\n * @returns {?ValueT}\n */\n get(key) {\n const k = typeof key === \"string\" ? key : key.toString();\n\n const value = this._map.get(k);\n return value != null ? value : null;\n }\n\n /**\n * @internal\n * @param {KeyT} key\n * @param {ValueT} value\n */\n _set(key, value) {\n const k = typeof key === \"string\" ? key : key.toString();\n\n this._map.set(k, value);\n this.__map.set(key, value);\n }\n\n /**\n * @returns {IterableIterator}\n */\n values() {\n return this._map.values();\n }\n\n /**\n * @returns {number}\n */\n get size() {\n return this._map.size;\n }\n\n /**\n * @returns {IterableIterator}\n */\n keys() {\n return this.__map.keys();\n }\n\n /**\n * @returns {IterableIterator<[KeyT, ValueT]>}\n */\n [Symbol.iterator]() {\n return this.__map[Symbol.iterator]();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n /** @type {Object.} */\n const map = {};\n\n for (const [key, value] of this._map) {\n map[key] = value;\n }\n\n return JSON.stringify(map);\n }\n}\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file index.js\r\n * @author Fabian Vogelsteller \r\n * @date 2017\r\n */\r\n\"use strict\";\r\nvar errors = require('./errors');\r\nvar formatters = require('./formatters');\r\nmodule.exports = {\r\n errors: errors,\r\n formatters: formatters\r\n};\r\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar R = typeof Reflect === 'object' ? Reflect : null\nvar ReflectApply = R && typeof R.apply === 'function'\n ? R.apply\n : function ReflectApply(target, receiver, args) {\n return Function.prototype.apply.call(target, receiver, args);\n }\n\nvar ReflectOwnKeys\nif (R && typeof R.ownKeys === 'function') {\n ReflectOwnKeys = R.ownKeys\n} else if (Object.getOwnPropertySymbols) {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target)\n .concat(Object.getOwnPropertySymbols(target));\n };\n} else {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target);\n };\n}\n\nfunction ProcessEmitWarning(warning) {\n if (console && console.warn) console.warn(warning);\n}\n\nvar NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {\n return value !== value;\n}\n\nfunction EventEmitter() {\n EventEmitter.init.call(this);\n}\nmodule.exports = EventEmitter;\nmodule.exports.once = once;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._eventsCount = 0;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nvar defaultMaxListeners = 10;\n\nfunction checkListener(listener) {\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n}\n\nObject.defineProperty(EventEmitter, 'defaultMaxListeners', {\n enumerable: true,\n get: function() {\n return defaultMaxListeners;\n },\n set: function(arg) {\n if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + arg + '.');\n }\n defaultMaxListeners = arg;\n }\n});\n\nEventEmitter.init = function() {\n\n if (this._events === undefined ||\n this._events === Object.getPrototypeOf(this)._events) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n }\n\n this._maxListeners = this._maxListeners || undefined;\n};\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {\n if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + n + '.');\n }\n this._maxListeners = n;\n return this;\n};\n\nfunction _getMaxListeners(that) {\n if (that._maxListeners === undefined)\n return EventEmitter.defaultMaxListeners;\n return that._maxListeners;\n}\n\nEventEmitter.prototype.getMaxListeners = function getMaxListeners() {\n return _getMaxListeners(this);\n};\n\nEventEmitter.prototype.emit = function emit(type) {\n var args = [];\n for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);\n var doError = (type === 'error');\n\n var events = this._events;\n if (events !== undefined)\n doError = (doError && events.error === undefined);\n else if (!doError)\n return false;\n\n // If there is no 'error' event listener then throw.\n if (doError) {\n var er;\n if (args.length > 0)\n er = args[0];\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n\n var handler = events[type];\n\n if (handler === undefined)\n return false;\n\n if (typeof handler === 'function') {\n ReflectApply(handler, this, args);\n } else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n ReflectApply(listeners[i], this, args);\n }\n\n return true;\n};\n\nfunction _addListener(target, type, listener, prepend) {\n var m;\n var events;\n var existing;\n\n checkListener(listener);\n\n events = target._events;\n if (events === undefined) {\n events = target._events = Object.create(null);\n target._eventsCount = 0;\n } else {\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (events.newListener !== undefined) {\n target.emit('newListener', type,\n listener.listener ? listener.listener : listener);\n\n // Re-assign `events` because a newListener handler could have caused the\n // this._events to be assigned to a new object\n events = target._events;\n }\n existing = events[type];\n }\n\n if (existing === undefined) {\n // Optimize the case of one listener. Don't need the extra array object.\n existing = events[type] = listener;\n ++target._eventsCount;\n } else {\n if (typeof existing === 'function') {\n // Adding the second element, need to change to array.\n existing = events[type] =\n prepend ? [listener, existing] : [existing, listener];\n // If we've already got an array, just append.\n } else if (prepend) {\n existing.unshift(listener);\n } else {\n existing.push(listener);\n }\n\n // Check for listener leak\n m = _getMaxListeners(target);\n if (m > 0 && existing.length > m && !existing.warned) {\n existing.warned = true;\n // No error code for this since it is a Warning\n // eslint-disable-next-line no-restricted-syntax\n var w = new Error('Possible EventEmitter memory leak detected. ' +\n existing.length + ' ' + String(type) + ' listeners ' +\n 'added. Use emitter.setMaxListeners() to ' +\n 'increase limit');\n w.name = 'MaxListenersExceededWarning';\n w.emitter = target;\n w.type = type;\n w.count = existing.length;\n ProcessEmitWarning(w);\n }\n }\n\n return target;\n}\n\nEventEmitter.prototype.addListener = function addListener(type, listener) {\n return _addListener(this, type, listener, false);\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.prependListener =\n function prependListener(type, listener) {\n return _addListener(this, type, listener, true);\n };\n\nfunction onceWrapper() {\n if (!this.fired) {\n this.target.removeListener(this.type, this.wrapFn);\n this.fired = true;\n if (arguments.length === 0)\n return this.listener.call(this.target);\n return this.listener.apply(this.target, arguments);\n }\n}\n\nfunction _onceWrap(target, type, listener) {\n var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };\n var wrapped = onceWrapper.bind(state);\n wrapped.listener = listener;\n state.wrapFn = wrapped;\n return wrapped;\n}\n\nEventEmitter.prototype.once = function once(type, listener) {\n checkListener(listener);\n this.on(type, _onceWrap(this, type, listener));\n return this;\n};\n\nEventEmitter.prototype.prependOnceListener =\n function prependOnceListener(type, listener) {\n checkListener(listener);\n this.prependListener(type, _onceWrap(this, type, listener));\n return this;\n };\n\n// Emits a 'removeListener' event if and only if the listener was removed.\nEventEmitter.prototype.removeListener =\n function removeListener(type, listener) {\n var list, events, position, i, originalListener;\n\n checkListener(listener);\n\n events = this._events;\n if (events === undefined)\n return this;\n\n list = events[type];\n if (list === undefined)\n return this;\n\n if (list === listener || list.listener === listener) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else {\n delete events[type];\n if (events.removeListener)\n this.emit('removeListener', type, list.listener || listener);\n }\n } else if (typeof list !== 'function') {\n position = -1;\n\n for (i = list.length - 1; i >= 0; i--) {\n if (list[i] === listener || list[i].listener === listener) {\n originalListener = list[i].listener;\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (position === 0)\n list.shift();\n else {\n spliceOne(list, position);\n }\n\n if (list.length === 1)\n events[type] = list[0];\n\n if (events.removeListener !== undefined)\n this.emit('removeListener', type, originalListener || listener);\n }\n\n return this;\n };\n\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\n\nEventEmitter.prototype.removeAllListeners =\n function removeAllListeners(type) {\n var listeners, events, i;\n\n events = this._events;\n if (events === undefined)\n return this;\n\n // not listening for removeListener, no need to emit\n if (events.removeListener === undefined) {\n if (arguments.length === 0) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n } else if (events[type] !== undefined) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else\n delete events[type];\n }\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n var keys = Object.keys(events);\n var key;\n for (i = 0; i < keys.length; ++i) {\n key = keys[i];\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = Object.create(null);\n this._eventsCount = 0;\n return this;\n }\n\n listeners = events[type];\n\n if (typeof listeners === 'function') {\n this.removeListener(type, listeners);\n } else if (listeners !== undefined) {\n // LIFO order\n for (i = listeners.length - 1; i >= 0; i--) {\n this.removeListener(type, listeners[i]);\n }\n }\n\n return this;\n };\n\nfunction _listeners(target, type, unwrap) {\n var events = target._events;\n\n if (events === undefined)\n return [];\n\n var evlistener = events[type];\n if (evlistener === undefined)\n return [];\n\n if (typeof evlistener === 'function')\n return unwrap ? [evlistener.listener || evlistener] : [evlistener];\n\n return unwrap ?\n unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);\n}\n\nEventEmitter.prototype.listeners = function listeners(type) {\n return _listeners(this, type, true);\n};\n\nEventEmitter.prototype.rawListeners = function rawListeners(type) {\n return _listeners(this, type, false);\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n if (typeof emitter.listenerCount === 'function') {\n return emitter.listenerCount(type);\n } else {\n return listenerCount.call(emitter, type);\n }\n};\n\nEventEmitter.prototype.listenerCount = listenerCount;\nfunction listenerCount(type) {\n var events = this._events;\n\n if (events !== undefined) {\n var evlistener = events[type];\n\n if (typeof evlistener === 'function') {\n return 1;\n } else if (evlistener !== undefined) {\n return evlistener.length;\n }\n }\n\n return 0;\n}\n\nEventEmitter.prototype.eventNames = function eventNames() {\n return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];\n};\n\nfunction arrayClone(arr, n) {\n var copy = new Array(n);\n for (var i = 0; i < n; ++i)\n copy[i] = arr[i];\n return copy;\n}\n\nfunction spliceOne(list, index) {\n for (; index + 1 < list.length; index++)\n list[index] = list[index + 1];\n list.pop();\n}\n\nfunction unwrapListeners(arr) {\n var ret = new Array(arr.length);\n for (var i = 0; i < ret.length; ++i) {\n ret[i] = arr[i].listener || arr[i];\n }\n return ret;\n}\n\nfunction once(emitter, name) {\n return new Promise(function (resolve, reject) {\n function errorListener(err) {\n emitter.removeListener(name, resolver);\n reject(err);\n }\n\n function resolver() {\n if (typeof emitter.removeListener === 'function') {\n emitter.removeListener('error', errorListener);\n }\n resolve([].slice.call(arguments));\n };\n\n eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });\n if (name !== 'error') {\n addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });\n }\n });\n}\n\nfunction addErrorHandlerIfEventEmitter(emitter, handler, flags) {\n if (typeof emitter.on === 'function') {\n eventTargetAgnosticAddListener(emitter, 'error', handler, flags);\n }\n}\n\nfunction eventTargetAgnosticAddListener(emitter, name, listener, flags) {\n if (typeof emitter.on === 'function') {\n if (flags.once) {\n emitter.once(name, listener);\n } else {\n emitter.on(name, listener);\n }\n } else if (typeof emitter.addEventListener === 'function') {\n // EventTarget does not have `error` event semantics like Node\n // EventEmitters, we do not listen for `error` events here.\n emitter.addEventListener(name, function wrapListener(arg) {\n // IE does not have builtin `{ once: true }` support so we\n // have to do it manually.\n if (flags.once) {\n emitter.removeEventListener(name, wrapListener);\n }\n listener(arg);\n });\n } else {\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof emitter);\n }\n}\n","/**\n * @abstract\n * @template {{ toString(): string }} KeyT\n * @template {any} ValueT\n */\nexport default class ObjectMap {\n /**\n * @param {(s: string) => KeyT} fromString\n */\n constructor(fromString) {\n /** @type {Map} */\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n this._map = new Map();\n\n /** @type {Map} */\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n this.__map = new Map();\n\n this._fromString = fromString;\n }\n\n /**\n * @param {KeyT | string} key\n * @returns {?ValueT}\n */\n get(key) {\n const k = typeof key === \"string\" ? key : key.toString();\n\n const value = this._map.get(k);\n return value != null ? value : null;\n }\n\n /**\n * @internal\n * @param {KeyT} key\n * @param {ValueT} value\n */\n _set(key, value) {\n const k = typeof key === \"string\" ? key : key.toString();\n\n this._map.set(k, value);\n this.__map.set(key, value);\n }\n\n /**\n * @returns {IterableIterator}\n */\n values() {\n return this._map.values();\n }\n\n /**\n * @returns {number}\n */\n get size() {\n return this._map.size;\n }\n\n /**\n * @returns {IterableIterator}\n */\n keys() {\n return this.__map.keys();\n }\n\n /**\n * @returns {IterableIterator<[KeyT, ValueT]>}\n */\n [Symbol.iterator]() {\n return this.__map[Symbol.iterator]();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n /** @type {Object.} */\n const map = {};\n\n for (const [key, value] of this._map) {\n map[key] = value;\n }\n\n return JSON.stringify(map);\n }\n}\n","/*! safe-buffer. MIT License. Feross Aboukhadijeh */\n/* eslint-disable node/no-deprecated-api */\nvar buffer = require('buffer')\nvar Buffer = buffer.Buffer\n\n// alternative to using Object.keys for old browsers\nfunction copyProps (src, dst) {\n for (var key in src) {\n dst[key] = src[key]\n }\n}\nif (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {\n module.exports = buffer\n} else {\n // Copy properties from require('buffer')\n copyProps(buffer, exports)\n exports.Buffer = SafeBuffer\n}\n\nfunction SafeBuffer (arg, encodingOrOffset, length) {\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.prototype = Object.create(Buffer.prototype)\n\n// Copy static methods from Buffer\ncopyProps(Buffer, SafeBuffer)\n\nSafeBuffer.from = function (arg, encodingOrOffset, length) {\n if (typeof arg === 'number') {\n throw new TypeError('Argument must not be a number')\n }\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.alloc = function (size, fill, encoding) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n var buf = Buffer(size)\n if (fill !== undefined) {\n if (typeof encoding === 'string') {\n buf.fill(fill, encoding)\n } else {\n buf.fill(fill)\n }\n } else {\n buf.fill(0)\n }\n return buf\n}\n\nSafeBuffer.allocUnsafe = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return Buffer(size)\n}\n\nSafeBuffer.allocUnsafeSlow = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return buffer.SlowBuffer(size)\n}\n","/**\n * @abstract\n * @template {{ toString(): string }} KeyT\n * @template {any} ValueT\n */\nexport default class ObjectMap {\n /**\n * @param {(s: string) => KeyT} fromString\n */\n constructor(fromString) {\n /** @type {Map} */\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n this._map = new Map();\n\n /** @type {Map} */\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n this.__map = new Map();\n\n this._fromString = fromString;\n }\n\n /**\n * @param {KeyT | string} key\n * @returns {?ValueT}\n */\n get(key) {\n const k = typeof key === \"string\" ? key : key.toString();\n\n const value = this._map.get(k);\n return value != null ? value : null;\n }\n\n /**\n * @internal\n * @param {KeyT} key\n * @param {ValueT} value\n */\n _set(key, value) {\n const k = typeof key === \"string\" ? key : key.toString();\n\n this._map.set(k, value);\n this.__map.set(key, value);\n }\n\n /**\n * @returns {IterableIterator}\n */\n values() {\n return this._map.values();\n }\n\n /**\n * @returns {number}\n */\n get size() {\n return this._map.size;\n }\n\n /**\n * @returns {IterableIterator}\n */\n keys() {\n return this.__map.keys();\n }\n\n /**\n * @returns {IterableIterator<[KeyT, ValueT]>}\n */\n [Symbol.iterator]() {\n return this.__map[Symbol.iterator]();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n /** @type {Object.} */\n const map = {};\n\n for (const [key, value] of this._map) {\n map[key] = value;\n }\n\n return JSON.stringify(map);\n }\n}\n","\"use strict\";\nimport { arrayify, concat, hexConcat, hexlify } from \"@ethersproject/bytes\";\nimport { BigNumber } from \"@ethersproject/bignumber\";\nimport { defineReadOnly } from \"@ethersproject/properties\";\nimport { Logger } from \"@ethersproject/logger\";\nimport { version } from \"../_version\";\nconst logger = new Logger(version);\nexport function checkResultErrors(result) {\n // Find the first error (if any)\n const errors = [];\n const checkErrors = function (path, object) {\n if (!Array.isArray(object)) {\n return;\n }\n for (let key in object) {\n const childPath = path.slice();\n childPath.push(key);\n try {\n checkErrors(childPath, object[key]);\n }\n catch (error) {\n errors.push({ path: childPath, error: error });\n }\n }\n };\n checkErrors([], result);\n return errors;\n}\nexport class Coder {\n constructor(name, type, localName, dynamic) {\n // @TODO: defineReadOnly these\n this.name = name;\n this.type = type;\n this.localName = localName;\n this.dynamic = dynamic;\n }\n _throwError(message, value) {\n logger.throwArgumentError(message, this.localName, value);\n }\n}\nexport class Writer {\n constructor(wordSize) {\n defineReadOnly(this, \"wordSize\", wordSize || 32);\n this._data = [];\n this._dataLength = 0;\n this._padding = new Uint8Array(wordSize);\n }\n get data() {\n return hexConcat(this._data);\n }\n get length() { return this._dataLength; }\n _writeData(data) {\n this._data.push(data);\n this._dataLength += data.length;\n return data.length;\n }\n appendWriter(writer) {\n return this._writeData(concat(writer._data));\n }\n // Arrayish items; padded on the right to wordSize\n writeBytes(value) {\n let bytes = arrayify(value);\n const paddingOffset = bytes.length % this.wordSize;\n if (paddingOffset) {\n bytes = concat([bytes, this._padding.slice(paddingOffset)]);\n }\n return this._writeData(bytes);\n }\n _getValue(value) {\n let bytes = arrayify(BigNumber.from(value));\n if (bytes.length > this.wordSize) {\n logger.throwError(\"value out-of-bounds\", Logger.errors.BUFFER_OVERRUN, {\n length: this.wordSize,\n offset: bytes.length\n });\n }\n if (bytes.length % this.wordSize) {\n bytes = concat([this._padding.slice(bytes.length % this.wordSize), bytes]);\n }\n return bytes;\n }\n // BigNumberish items; padded on the left to wordSize\n writeValue(value) {\n return this._writeData(this._getValue(value));\n }\n writeUpdatableValue() {\n const offset = this._data.length;\n this._data.push(this._padding);\n this._dataLength += this.wordSize;\n return (value) => {\n this._data[offset] = this._getValue(value);\n };\n }\n}\nexport class Reader {\n constructor(data, wordSize, coerceFunc, allowLoose) {\n defineReadOnly(this, \"_data\", arrayify(data));\n defineReadOnly(this, \"wordSize\", wordSize || 32);\n defineReadOnly(this, \"_coerceFunc\", coerceFunc);\n defineReadOnly(this, \"allowLoose\", allowLoose);\n this._offset = 0;\n }\n get data() { return hexlify(this._data); }\n get consumed() { return this._offset; }\n // The default Coerce function\n static coerce(name, value) {\n let match = name.match(\"^u?int([0-9]+)$\");\n if (match && parseInt(match[1]) <= 48) {\n value = value.toNumber();\n }\n return value;\n }\n coerce(name, value) {\n if (this._coerceFunc) {\n return this._coerceFunc(name, value);\n }\n return Reader.coerce(name, value);\n }\n _peekBytes(offset, length, loose) {\n let alignedLength = Math.ceil(length / this.wordSize) * this.wordSize;\n if (this._offset + alignedLength > this._data.length) {\n if (this.allowLoose && loose && this._offset + length <= this._data.length) {\n alignedLength = length;\n }\n else {\n logger.throwError(\"data out-of-bounds\", Logger.errors.BUFFER_OVERRUN, {\n length: this._data.length,\n offset: this._offset + alignedLength\n });\n }\n }\n return this._data.slice(this._offset, this._offset + alignedLength);\n }\n subReader(offset) {\n return new Reader(this._data.slice(this._offset + offset), this.wordSize, this._coerceFunc, this.allowLoose);\n }\n readBytes(length, loose) {\n let bytes = this._peekBytes(0, length, !!loose);\n this._offset += bytes.length;\n // @TODO: Make sure the length..end bytes are all 0?\n return bytes.slice(0, length);\n }\n readValue() {\n return BigNumber.from(this.readBytes(this.wordSize));\n }\n}\n//# sourceMappingURL=abstract-coder.js.map","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nvar isNativeReflectConstruct = require(\"./isNativeReflectConstruct.js\");\n\nfunction _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n module.exports = _construct = Reflect.construct;\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n } else {\n module.exports = _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n }\n\n return _construct.apply(null, arguments);\n}\n\nmodule.exports = _construct;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","'use strict';\n\nvar assert = require('minimalistic-assert');\nvar inherits = require('inherits');\n\nexports.inherits = inherits;\n\nfunction isSurrogatePair(msg, i) {\n if ((msg.charCodeAt(i) & 0xFC00) !== 0xD800) {\n return false;\n }\n if (i < 0 || i + 1 >= msg.length) {\n return false;\n }\n return (msg.charCodeAt(i + 1) & 0xFC00) === 0xDC00;\n}\n\nfunction toArray(msg, enc) {\n if (Array.isArray(msg))\n return msg.slice();\n if (!msg)\n return [];\n var res = [];\n if (typeof msg === 'string') {\n if (!enc) {\n // Inspired by stringToUtf8ByteArray() in closure-library by Google\n // https://github.com/google/closure-library/blob/8598d87242af59aac233270742c8984e2b2bdbe0/closure/goog/crypt/crypt.js#L117-L143\n // Apache License 2.0\n // https://github.com/google/closure-library/blob/master/LICENSE\n var p = 0;\n for (var i = 0; i < msg.length; i++) {\n var c = msg.charCodeAt(i);\n if (c < 128) {\n res[p++] = c;\n } else if (c < 2048) {\n res[p++] = (c >> 6) | 192;\n res[p++] = (c & 63) | 128;\n } else if (isSurrogatePair(msg, i)) {\n c = 0x10000 + ((c & 0x03FF) << 10) + (msg.charCodeAt(++i) & 0x03FF);\n res[p++] = (c >> 18) | 240;\n res[p++] = ((c >> 12) & 63) | 128;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n } else {\n res[p++] = (c >> 12) | 224;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n }\n }\n } else if (enc === 'hex') {\n msg = msg.replace(/[^a-z0-9]+/ig, '');\n if (msg.length % 2 !== 0)\n msg = '0' + msg;\n for (i = 0; i < msg.length; i += 2)\n res.push(parseInt(msg[i] + msg[i + 1], 16));\n }\n } else {\n for (i = 0; i < msg.length; i++)\n res[i] = msg[i] | 0;\n }\n return res;\n}\nexports.toArray = toArray;\n\nfunction toHex(msg) {\n var res = '';\n for (var i = 0; i < msg.length; i++)\n res += zero2(msg[i].toString(16));\n return res;\n}\nexports.toHex = toHex;\n\nfunction htonl(w) {\n var res = (w >>> 24) |\n ((w >>> 8) & 0xff00) |\n ((w << 8) & 0xff0000) |\n ((w & 0xff) << 24);\n return res >>> 0;\n}\nexports.htonl = htonl;\n\nfunction toHex32(msg, endian) {\n var res = '';\n for (var i = 0; i < msg.length; i++) {\n var w = msg[i];\n if (endian === 'little')\n w = htonl(w);\n res += zero8(w.toString(16));\n }\n return res;\n}\nexports.toHex32 = toHex32;\n\nfunction zero2(word) {\n if (word.length === 1)\n return '0' + word;\n else\n return word;\n}\nexports.zero2 = zero2;\n\nfunction zero8(word) {\n if (word.length === 7)\n return '0' + word;\n else if (word.length === 6)\n return '00' + word;\n else if (word.length === 5)\n return '000' + word;\n else if (word.length === 4)\n return '0000' + word;\n else if (word.length === 3)\n return '00000' + word;\n else if (word.length === 2)\n return '000000' + word;\n else if (word.length === 1)\n return '0000000' + word;\n else\n return word;\n}\nexports.zero8 = zero8;\n\nfunction join32(msg, start, end, endian) {\n var len = end - start;\n assert(len % 4 === 0);\n var res = new Array(len / 4);\n for (var i = 0, k = start; i < res.length; i++, k += 4) {\n var w;\n if (endian === 'big')\n w = (msg[k] << 24) | (msg[k + 1] << 16) | (msg[k + 2] << 8) | msg[k + 3];\n else\n w = (msg[k + 3] << 24) | (msg[k + 2] << 16) | (msg[k + 1] << 8) | msg[k];\n res[i] = w >>> 0;\n }\n return res;\n}\nexports.join32 = join32;\n\nfunction split32(msg, endian) {\n var res = new Array(msg.length * 4);\n for (var i = 0, k = 0; i < msg.length; i++, k += 4) {\n var m = msg[i];\n if (endian === 'big') {\n res[k] = m >>> 24;\n res[k + 1] = (m >>> 16) & 0xff;\n res[k + 2] = (m >>> 8) & 0xff;\n res[k + 3] = m & 0xff;\n } else {\n res[k + 3] = m >>> 24;\n res[k + 2] = (m >>> 16) & 0xff;\n res[k + 1] = (m >>> 8) & 0xff;\n res[k] = m & 0xff;\n }\n }\n return res;\n}\nexports.split32 = split32;\n\nfunction rotr32(w, b) {\n return (w >>> b) | (w << (32 - b));\n}\nexports.rotr32 = rotr32;\n\nfunction rotl32(w, b) {\n return (w << b) | (w >>> (32 - b));\n}\nexports.rotl32 = rotl32;\n\nfunction sum32(a, b) {\n return (a + b) >>> 0;\n}\nexports.sum32 = sum32;\n\nfunction sum32_3(a, b, c) {\n return (a + b + c) >>> 0;\n}\nexports.sum32_3 = sum32_3;\n\nfunction sum32_4(a, b, c, d) {\n return (a + b + c + d) >>> 0;\n}\nexports.sum32_4 = sum32_4;\n\nfunction sum32_5(a, b, c, d, e) {\n return (a + b + c + d + e) >>> 0;\n}\nexports.sum32_5 = sum32_5;\n\nfunction sum64(buf, pos, ah, al) {\n var bh = buf[pos];\n var bl = buf[pos + 1];\n\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n buf[pos] = hi >>> 0;\n buf[pos + 1] = lo;\n}\nexports.sum64 = sum64;\n\nfunction sum64_hi(ah, al, bh, bl) {\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n return hi >>> 0;\n}\nexports.sum64_hi = sum64_hi;\n\nfunction sum64_lo(ah, al, bh, bl) {\n var lo = al + bl;\n return lo >>> 0;\n}\nexports.sum64_lo = sum64_lo;\n\nfunction sum64_4_hi(ah, al, bh, bl, ch, cl, dh, dl) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n\n var hi = ah + bh + ch + dh + carry;\n return hi >>> 0;\n}\nexports.sum64_4_hi = sum64_4_hi;\n\nfunction sum64_4_lo(ah, al, bh, bl, ch, cl, dh, dl) {\n var lo = al + bl + cl + dl;\n return lo >>> 0;\n}\nexports.sum64_4_lo = sum64_4_lo;\n\nfunction sum64_5_hi(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n lo = (lo + el) >>> 0;\n carry += lo < el ? 1 : 0;\n\n var hi = ah + bh + ch + dh + eh + carry;\n return hi >>> 0;\n}\nexports.sum64_5_hi = sum64_5_hi;\n\nfunction sum64_5_lo(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var lo = al + bl + cl + dl + el;\n\n return lo >>> 0;\n}\nexports.sum64_5_lo = sum64_5_lo;\n\nfunction rotr64_hi(ah, al, num) {\n var r = (al << (32 - num)) | (ah >>> num);\n return r >>> 0;\n}\nexports.rotr64_hi = rotr64_hi;\n\nfunction rotr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.rotr64_lo = rotr64_lo;\n\nfunction shr64_hi(ah, al, num) {\n return ah >>> num;\n}\nexports.shr64_hi = shr64_hi;\n\nfunction shr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.shr64_lo = shr64_lo;\n","import * as hex from \"./encoding/hex.js\";\n\nexport default class LedgerId {\n /**\n * @hideconstructor\n * @internal\n * @param {Uint8Array} ledgerId\n */\n constructor(ledgerId) {\n /**\n * @readonly\n * @type {Uint8Array}\n */\n this._ledgerId = ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @param {string} ledgerId\n * @returns {LedgerId}\n */\n static fromString(ledgerId) {\n switch (ledgerId) {\n case NETNAMES[0]:\n case \"0\":\n return LedgerId.MAINNET;\n case NETNAMES[1]:\n case \"1\":\n return LedgerId.TESTNET;\n case NETNAMES[2]:\n case \"2\":\n return LedgerId.PREVIEWNET;\n default: {\n let ledgerIdDecoded = hex.decode(ledgerId);\n if (ledgerIdDecoded.length == 0 && ledgerId.length != 0) {\n throw new Error(\"Default reached for fromString\");\n } else {\n return new LedgerId(ledgerIdDecoded);\n }\n }\n }\n }\n\n /**\n * If the ledger ID is a known value such as `[0]`, `[1]`, `[2]` this method\n * will instead return \"mainnet\", \"testnet\", or \"previewnet\", otherwise it will\n * hex encode the bytes.\n *\n * @returns {string}\n */\n toString() {\n if (this._ledgerId.length == 1) {\n switch (this._ledgerId[0]) {\n case 0:\n return NETNAMES[0];\n case 1:\n return NETNAMES[1];\n case 2:\n return NETNAMES[2];\n default:\n return hex.encode(this._ledgerId);\n }\n } else {\n return hex.encode(this._ledgerId);\n }\n }\n\n /**\n * @returns {string}\n */\n _toStringForChecksum() {\n // legacy checksum logic from NetworkName\n if (this._ledgerId.length == 1) {\n switch (this._ledgerId[0]) {\n case 0:\n return \"0\";\n case 1:\n return \"1\";\n case 2:\n return \"2\";\n default:\n return hex.encode(this._ledgerId);\n }\n } else {\n return hex.encode(this._ledgerId);\n }\n }\n\n /**\n * Using the UTF-8 byte representation of \"mainnet\", \"testnet\",\n * or \"previewnet\" is NOT supported.\n *\n * @param {Uint8Array} bytes\n * @returns {LedgerId}\n */\n static fromBytes(bytes) {\n return new LedgerId(bytes);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return this._ledgerId;\n }\n\n /**\n * @returns {boolean}\n */\n isMainnet() {\n return this.toString() == NETNAMES[0];\n }\n\n /**\n * @returns {boolean}\n */\n isTestnet() {\n return this.toString() == NETNAMES[1];\n }\n\n /**\n * @returns {boolean}\n */\n isPreviewnet() {\n return this.toString() == NETNAMES[2];\n }\n}\n\nconst NETNAMES = [\"mainnet\", \"testnet\", \"previewnet\"];\n\nLedgerId.MAINNET = new LedgerId(new Uint8Array([0]));\n\nLedgerId.TESTNET = new LedgerId(new Uint8Array([1]));\n\nLedgerId.PREVIEWNET = new LedgerId(new Uint8Array([2]));\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n */\r\n/**\r\n * @file utils.js\r\n * @author Marek Kotewicz \r\n * @author Fabian Vogelsteller \r\n * @date 2017\r\n */\r\nvar { Hbar, HbarUnit } = require('@hashgraph/sdk');\r\nvar ethjsUnit = require('ethjs-unit');\r\nvar utils = require('./utils.js');\r\nvar soliditySha3 = require('./soliditySha3.js');\r\nvar randombytes = require('randombytes');\r\nvar BN = require('bn.js');\r\n/**\r\n * Fires an error in an event emitter and callback and returns the eventemitter\r\n *\r\n * @method _fireError\r\n * @param {Object} error a string, a error, or an object with {message, data}\r\n * @param {Object} emitter\r\n * @param {Function} reject\r\n * @param {Function} callback\r\n * @param {any} optionalData\r\n * @return {Object} the emitter\r\n */\r\nvar _fireError = function (error, emitter, reject, callback, optionalData) {\r\n /*jshint maxcomplexity: 10 */\r\n // add data if given\r\n if (!!error && typeof error === 'object' && !(error instanceof Error) && error.data) {\r\n if (!!error.data && typeof error.data === 'object' || Array.isArray(error.data)) {\r\n error.data = JSON.stringify(error.data, null, 2);\r\n }\r\n error = error.message + \"\\n\" + error.data;\r\n }\r\n if (typeof error === 'string') {\r\n error = new Error(error);\r\n }\r\n if (typeof callback === 'function') {\r\n callback(error, optionalData);\r\n }\r\n if (typeof reject === 'function') {\r\n // suppress uncatched error if an error listener is present\r\n // OR suppress uncatched error if an callback listener is present\r\n if (emitter &&\r\n (typeof emitter.listeners === 'function' &&\r\n emitter.listeners('error').length) || typeof callback === 'function') {\r\n emitter.catch(function () { });\r\n }\r\n // reject later, to be able to return emitter\r\n setTimeout(function () {\r\n reject(error);\r\n }, 1);\r\n }\r\n if (emitter && typeof emitter.emit === 'function') {\r\n // emit later, to be able to return emitter\r\n setTimeout(function () {\r\n emitter.emit('error', error, optionalData);\r\n emitter.removeAllListeners();\r\n }, 1);\r\n }\r\n return emitter;\r\n};\r\n/**\r\n * Should be used to create full function/event name from json abi\r\n *\r\n * @method _jsonInterfaceMethodToString\r\n * @param {Object} json\r\n * @return {String} full function/event name\r\n */\r\nvar _jsonInterfaceMethodToString = function (json) {\r\n if (!!json && typeof json === 'object' && json.name && json.name.indexOf('(') !== -1) {\r\n return json.name;\r\n }\r\n return json.name + '(' + _flattenTypes(false, json.inputs).join(',') + ')';\r\n};\r\n/**\r\n * Should be used to flatten json abi inputs/outputs into an array of type-representing-strings\r\n *\r\n * @method _flattenTypes\r\n * @param {bool} includeTuple\r\n * @param {Object} puts\r\n * @return {Array} parameters as strings\r\n */\r\nvar _flattenTypes = function (includeTuple, puts) {\r\n // console.log(\"entered _flattenTypes. inputs/outputs: \" + puts)\r\n var types = [];\r\n puts.forEach(function (param) {\r\n if (typeof param.components === 'object') {\r\n if (param.type.substring(0, 5) !== 'tuple') {\r\n throw new Error('components found but type is not tuple; report on GitHub');\r\n }\r\n var suffix = '';\r\n var arrayBracket = param.type.indexOf('[');\r\n if (arrayBracket >= 0) {\r\n suffix = param.type.substring(arrayBracket);\r\n }\r\n var result = _flattenTypes(includeTuple, param.components);\r\n // console.log(\"result should have things: \" + result)\r\n if (Array.isArray(result) && includeTuple) {\r\n // console.log(\"include tuple word, and its an array. joining...: \" + result.types)\r\n types.push('tuple(' + result.join(',') + ')' + suffix);\r\n }\r\n else if (!includeTuple) {\r\n // console.log(\"don't include tuple, but its an array. joining...: \" + result)\r\n types.push('(' + result.join(',') + ')' + suffix);\r\n }\r\n else {\r\n // console.log(\"its a single type within a tuple: \" + result.types)\r\n types.push('(' + result + ')');\r\n }\r\n }\r\n else {\r\n // console.log(\"its a type and not directly in a tuple: \" + param.type)\r\n types.push(param.type);\r\n }\r\n });\r\n return types;\r\n};\r\n/**\r\n * Returns a random hex string by the given bytes size\r\n *\r\n * @param {Number} size\r\n * @returns {string}\r\n */\r\nvar randomHex = function (size) {\r\n return '0x' + randombytes(size).toString('hex');\r\n};\r\n/**\r\n * Should be called to get ascii from it's hex representation\r\n *\r\n * @method hexToAscii\r\n * @param {String} hex\r\n * @returns {String} ascii string representation of hex value\r\n */\r\nvar hexToAscii = function (hex) {\r\n if (!utils.isHexStrict(hex))\r\n throw new Error('The parameter must be a valid HEX string.');\r\n var str = \"\";\r\n var i = 0, l = hex.length;\r\n if (hex.substring(0, 2) === '0x') {\r\n i = 2;\r\n }\r\n for (; i < l; i += 2) {\r\n var code = parseInt(hex.substr(i, 2), 16);\r\n str += String.fromCharCode(code);\r\n }\r\n return str;\r\n};\r\n/**\r\n * Should be called to get hex representation (prefixed by 0x) of ascii string\r\n *\r\n * @method asciiToHex\r\n * @param {String} str\r\n * @returns {String} hex representation of input string\r\n */\r\nvar asciiToHex = function (str) {\r\n if (!str)\r\n return \"0x00\";\r\n var hex = \"\";\r\n for (var i = 0; i < str.length; i++) {\r\n var code = str.charCodeAt(i);\r\n var n = code.toString(16);\r\n hex += n.length < 2 ? '0' + n : n;\r\n }\r\n return \"0x\" + hex;\r\n};\r\n/**\r\n * Returns Hedera unit name\r\n *\r\n * @method getUnitValue\r\n * @param {String} unit the unit to convert to, default Hbar\r\n * @throws error if the unit is not correct\r\n */\r\nvar getUnitValue = function (unit) {\r\n unit = unit ? unit : 'Hbar';\r\n if (!HbarUnit[unit]) {\r\n throw new Error('This unit \"' + unit + '\" doesn\\'t exist, please use the one of the following units' + JSON.stringify(Object.keys(HBarUnit), null, 2));\r\n }\r\n return unit;\r\n};\r\n/**\r\n * @method fromTinybar\r\n * @param {string|BN} number\r\n * @param {string} unit\r\n * @returns {string|BN} converted tinybars to given unit\r\n */\r\nvar fromTinybar = function (number, unit) {\r\n unit = getUnitValue(unit);\r\n if (!utils.isBN(number) && !(typeof number === 'string')) {\r\n throw new Error('Please pass numbers as strings or BN objects to avoid precision errors.');\r\n }\r\n if (utils.isBN(number)) {\r\n const stringNumber = number.toString();\r\n return Hbar.from(stringNumber, HbarUnit.Tinybar).to(HbarUnit[unit]).toString(10);\r\n }\r\n return Hbar.from(number, HbarUnit.Tinybar).to(HbarUnit[unit]).toString(10);\r\n};\r\n/**\r\n * Takes a number of a unit and converts it to tinybar.\r\n * @method toTinybar\r\n * @param {String|BN} amount\r\n * @param {String} unit\r\n * @return {String|Object} When given a BN object it returns one as well\r\n */\r\nvar toTinybar = function (number, unit) {\r\n unit = getUnitValue(unit);\r\n if (!utils.isBN(number) && !(typeof number === 'string')) {\r\n throw new Error('Please pass numbers as strings or BN objects to avoid precision errors.');\r\n }\r\n if (utils.isBN(number)) {\r\n const stringNumber = number.toString();\r\n const stringValue = Hbar.from(stringNumber, HbarUnit[unit]).toTinybars().toString(10);\r\n return utils.toBN(stringValue);\r\n }\r\n return Hbar.from(number, HbarUnit[unit]).toTinybars().toString(10);\r\n};\r\n/**\r\n * Converts to a hedera checksum address\r\n *\r\n * @method toChecksumAddress\r\n * @param {String} address\r\n * @param {NodeClient} client\r\n * @return {String}\r\n */\r\nvar toChecksumAddress = function (address, client) {\r\n return utils.getChecksumAddress(address, client);\r\n};\r\n/**\r\n * Returns -1 if ab; 0 if a == b.\r\n * For more details on this type of function, see\r\n * developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort\r\n *\r\n * @method compareBlockNumbers\r\n *\r\n * @param {String|Number|BN} a\r\n *\r\n * @param {String|Number|BN} b\r\n *\r\n * @returns {Number} -1, 0, or 1\r\n */\r\nvar compareBlockNumbers = function (a, b) {\r\n if (a == b) {\r\n return 0;\r\n }\r\n else if ((\"genesis\" == a || \"earliest\" == a || 0 == a) && (\"genesis\" == b || \"earliest\" == b || 0 == b)) {\r\n return 0;\r\n }\r\n else if (\"genesis\" == a || \"earliest\" == a) {\r\n // b !== a, thus a < b\r\n return -1;\r\n }\r\n else if (\"genesis\" == b || \"earliest\" == b) {\r\n // b !== a, thus a > b\r\n return 1;\r\n }\r\n else if (a == \"latest\") {\r\n if (b == \"pending\") {\r\n return -1;\r\n }\r\n else {\r\n // b !== (\"pending\" OR \"latest\"), thus a > b\r\n return 1;\r\n }\r\n }\r\n else if (b === \"latest\") {\r\n if (a == \"pending\") {\r\n return 1;\r\n }\r\n else {\r\n // b !== (\"pending\" OR \"latest\"), thus a > b\r\n return -1;\r\n }\r\n }\r\n else if (a == \"pending\") {\r\n // b (== OR <) \"latest\", thus a > b\r\n return 1;\r\n }\r\n else if (b == \"pending\") {\r\n return -1;\r\n }\r\n else {\r\n let bnA = new BN(a);\r\n let bnB = new BN(b);\r\n if (bnA.lt(bnB)) {\r\n return -1;\r\n }\r\n else if (bnA.eq(bnB)) {\r\n return 0;\r\n }\r\n else {\r\n return 1;\r\n }\r\n }\r\n};\r\nmodule.exports = {\r\n _fireError: _fireError,\r\n _jsonInterfaceMethodToString: _jsonInterfaceMethodToString,\r\n _flattenTypes: _flattenTypes,\r\n // extractDisplayName: extractDisplayName,\r\n // extractTypeName: extractTypeName,\r\n randomHex: randomHex,\r\n BN: utils.BN,\r\n isBN: utils.isBN,\r\n isBigNumber: utils.isBigNumber,\r\n isHex: utils.isHex,\r\n isHexStrict: utils.isHexStrict,\r\n sha3: utils.sha3,\r\n sha3Raw: utils.sha3Raw,\r\n keccak256: utils.sha3,\r\n soliditySha3: soliditySha3.soliditySha3,\r\n soliditySha3Raw: soliditySha3.soliditySha3Raw,\r\n encodePacked: soliditySha3.encodePacked,\r\n isAddress: utils.isAddress,\r\n checkAddressChecksum: utils.checkAddressChecksum,\r\n toChecksumAddress: toChecksumAddress,\r\n toHex: utils.toHex,\r\n toBN: utils.toBN,\r\n bytesToHex: utils.bytesToHex,\r\n hexToBytes: utils.hexToBytes,\r\n hexToNumberString: utils.hexToNumberString,\r\n hexToNumber: utils.hexToNumber,\r\n toDecimal: utils.hexToNumber,\r\n numberToHex: utils.numberToHex,\r\n fromDecimal: utils.numberToHex,\r\n hexToUtf8: utils.hexToUtf8,\r\n hexToString: utils.hexToUtf8,\r\n toUtf8: utils.hexToUtf8,\r\n stripHexPrefix: utils.stripHexPrefix,\r\n utf8ToHex: utils.utf8ToHex,\r\n stringToHex: utils.utf8ToHex,\r\n fromUtf8: utils.utf8ToHex,\r\n hexToAscii: hexToAscii,\r\n toAscii: hexToAscii,\r\n asciiToHex: asciiToHex,\r\n fromAscii: asciiToHex,\r\n unitMap: ethjsUnit.unitMap,\r\n toTinybar: toTinybar,\r\n fromTinybar: fromTinybar,\r\n padLeft: utils.leftPad,\r\n leftPad: utils.leftPad,\r\n padRight: utils.rightPad,\r\n rightPad: utils.rightPad,\r\n toTwosComplement: utils.toTwosComplement,\r\n isBloom: utils.isBloom,\r\n isUserEthereumAddressInBloom: utils.isUserEthereumAddressInBloom,\r\n isContractAddressInBloom: utils.isContractAddressInBloom,\r\n isTopic: utils.isTopic,\r\n isTopicInBloom: utils.isTopicInBloom,\r\n isInBloom: utils.isInBloom,\r\n compareBlockNumbers: compareBlockNumbers,\r\n toNumber: utils.toNumber\r\n};\r\n","'use strict';\n\nvar assert = require('minimalistic-assert');\nvar inherits = require('inherits');\n\nexports.inherits = inherits;\n\nfunction isSurrogatePair(msg, i) {\n if ((msg.charCodeAt(i) & 0xFC00) !== 0xD800) {\n return false;\n }\n if (i < 0 || i + 1 >= msg.length) {\n return false;\n }\n return (msg.charCodeAt(i + 1) & 0xFC00) === 0xDC00;\n}\n\nfunction toArray(msg, enc) {\n if (Array.isArray(msg))\n return msg.slice();\n if (!msg)\n return [];\n var res = [];\n if (typeof msg === 'string') {\n if (!enc) {\n // Inspired by stringToUtf8ByteArray() in closure-library by Google\n // https://github.com/google/closure-library/blob/8598d87242af59aac233270742c8984e2b2bdbe0/closure/goog/crypt/crypt.js#L117-L143\n // Apache License 2.0\n // https://github.com/google/closure-library/blob/master/LICENSE\n var p = 0;\n for (var i = 0; i < msg.length; i++) {\n var c = msg.charCodeAt(i);\n if (c < 128) {\n res[p++] = c;\n } else if (c < 2048) {\n res[p++] = (c >> 6) | 192;\n res[p++] = (c & 63) | 128;\n } else if (isSurrogatePair(msg, i)) {\n c = 0x10000 + ((c & 0x03FF) << 10) + (msg.charCodeAt(++i) & 0x03FF);\n res[p++] = (c >> 18) | 240;\n res[p++] = ((c >> 12) & 63) | 128;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n } else {\n res[p++] = (c >> 12) | 224;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n }\n }\n } else if (enc === 'hex') {\n msg = msg.replace(/[^a-z0-9]+/ig, '');\n if (msg.length % 2 !== 0)\n msg = '0' + msg;\n for (i = 0; i < msg.length; i += 2)\n res.push(parseInt(msg[i] + msg[i + 1], 16));\n }\n } else {\n for (i = 0; i < msg.length; i++)\n res[i] = msg[i] | 0;\n }\n return res;\n}\nexports.toArray = toArray;\n\nfunction toHex(msg) {\n var res = '';\n for (var i = 0; i < msg.length; i++)\n res += zero2(msg[i].toString(16));\n return res;\n}\nexports.toHex = toHex;\n\nfunction htonl(w) {\n var res = (w >>> 24) |\n ((w >>> 8) & 0xff00) |\n ((w << 8) & 0xff0000) |\n ((w & 0xff) << 24);\n return res >>> 0;\n}\nexports.htonl = htonl;\n\nfunction toHex32(msg, endian) {\n var res = '';\n for (var i = 0; i < msg.length; i++) {\n var w = msg[i];\n if (endian === 'little')\n w = htonl(w);\n res += zero8(w.toString(16));\n }\n return res;\n}\nexports.toHex32 = toHex32;\n\nfunction zero2(word) {\n if (word.length === 1)\n return '0' + word;\n else\n return word;\n}\nexports.zero2 = zero2;\n\nfunction zero8(word) {\n if (word.length === 7)\n return '0' + word;\n else if (word.length === 6)\n return '00' + word;\n else if (word.length === 5)\n return '000' + word;\n else if (word.length === 4)\n return '0000' + word;\n else if (word.length === 3)\n return '00000' + word;\n else if (word.length === 2)\n return '000000' + word;\n else if (word.length === 1)\n return '0000000' + word;\n else\n return word;\n}\nexports.zero8 = zero8;\n\nfunction join32(msg, start, end, endian) {\n var len = end - start;\n assert(len % 4 === 0);\n var res = new Array(len / 4);\n for (var i = 0, k = start; i < res.length; i++, k += 4) {\n var w;\n if (endian === 'big')\n w = (msg[k] << 24) | (msg[k + 1] << 16) | (msg[k + 2] << 8) | msg[k + 3];\n else\n w = (msg[k + 3] << 24) | (msg[k + 2] << 16) | (msg[k + 1] << 8) | msg[k];\n res[i] = w >>> 0;\n }\n return res;\n}\nexports.join32 = join32;\n\nfunction split32(msg, endian) {\n var res = new Array(msg.length * 4);\n for (var i = 0, k = 0; i < msg.length; i++, k += 4) {\n var m = msg[i];\n if (endian === 'big') {\n res[k] = m >>> 24;\n res[k + 1] = (m >>> 16) & 0xff;\n res[k + 2] = (m >>> 8) & 0xff;\n res[k + 3] = m & 0xff;\n } else {\n res[k + 3] = m >>> 24;\n res[k + 2] = (m >>> 16) & 0xff;\n res[k + 1] = (m >>> 8) & 0xff;\n res[k] = m & 0xff;\n }\n }\n return res;\n}\nexports.split32 = split32;\n\nfunction rotr32(w, b) {\n return (w >>> b) | (w << (32 - b));\n}\nexports.rotr32 = rotr32;\n\nfunction rotl32(w, b) {\n return (w << b) | (w >>> (32 - b));\n}\nexports.rotl32 = rotl32;\n\nfunction sum32(a, b) {\n return (a + b) >>> 0;\n}\nexports.sum32 = sum32;\n\nfunction sum32_3(a, b, c) {\n return (a + b + c) >>> 0;\n}\nexports.sum32_3 = sum32_3;\n\nfunction sum32_4(a, b, c, d) {\n return (a + b + c + d) >>> 0;\n}\nexports.sum32_4 = sum32_4;\n\nfunction sum32_5(a, b, c, d, e) {\n return (a + b + c + d + e) >>> 0;\n}\nexports.sum32_5 = sum32_5;\n\nfunction sum64(buf, pos, ah, al) {\n var bh = buf[pos];\n var bl = buf[pos + 1];\n\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n buf[pos] = hi >>> 0;\n buf[pos + 1] = lo;\n}\nexports.sum64 = sum64;\n\nfunction sum64_hi(ah, al, bh, bl) {\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n return hi >>> 0;\n}\nexports.sum64_hi = sum64_hi;\n\nfunction sum64_lo(ah, al, bh, bl) {\n var lo = al + bl;\n return lo >>> 0;\n}\nexports.sum64_lo = sum64_lo;\n\nfunction sum64_4_hi(ah, al, bh, bl, ch, cl, dh, dl) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n\n var hi = ah + bh + ch + dh + carry;\n return hi >>> 0;\n}\nexports.sum64_4_hi = sum64_4_hi;\n\nfunction sum64_4_lo(ah, al, bh, bl, ch, cl, dh, dl) {\n var lo = al + bl + cl + dl;\n return lo >>> 0;\n}\nexports.sum64_4_lo = sum64_4_lo;\n\nfunction sum64_5_hi(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n lo = (lo + el) >>> 0;\n carry += lo < el ? 1 : 0;\n\n var hi = ah + bh + ch + dh + eh + carry;\n return hi >>> 0;\n}\nexports.sum64_5_hi = sum64_5_hi;\n\nfunction sum64_5_lo(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var lo = al + bl + cl + dl + el;\n\n return lo >>> 0;\n}\nexports.sum64_5_lo = sum64_5_lo;\n\nfunction rotr64_hi(ah, al, num) {\n var r = (al << (32 - num)) | (ah >>> num);\n return r >>> 0;\n}\nexports.rotr64_hi = rotr64_hi;\n\nfunction rotr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.rotr64_lo = rotr64_lo;\n\nfunction shr64_hi(ah, al, num) {\n return ah >>> num;\n}\nexports.shr64_hi = shr64_hi;\n\nfunction shr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.shr64_lo = shr64_lo;\n","import * as hex from \"./encoding/hex.js\";\n\nexport default class LedgerId {\n /**\n * @hideconstructor\n * @internal\n * @param {Uint8Array} ledgerId\n */\n constructor(ledgerId) {\n /**\n * @readonly\n * @type {Uint8Array}\n */\n this._ledgerId = ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @param {string} ledgerId\n * @returns {LedgerId}\n */\n static fromString(ledgerId) {\n switch (ledgerId) {\n case NETNAMES[0]:\n case \"0\":\n return LedgerId.MAINNET;\n case NETNAMES[1]:\n case \"1\":\n return LedgerId.TESTNET;\n case NETNAMES[2]:\n case \"2\":\n return LedgerId.PREVIEWNET;\n default: {\n let ledgerIdDecoded = hex.decode(ledgerId);\n if (ledgerIdDecoded.length == 0 && ledgerId.length != 0) {\n throw new Error(\"Default reached for fromString\");\n } else {\n return new LedgerId(ledgerIdDecoded);\n }\n }\n }\n }\n\n /**\n * If the ledger ID is a known value such as `[0]`, `[1]`, `[2]` this method\n * will instead return \"mainnet\", \"testnet\", or \"previewnet\", otherwise it will\n * hex encode the bytes.\n *\n * @returns {string}\n */\n toString() {\n if (this._ledgerId.length == 1) {\n switch (this._ledgerId[0]) {\n case 0:\n return NETNAMES[0];\n case 1:\n return NETNAMES[1];\n case 2:\n return NETNAMES[2];\n default:\n return hex.encode(this._ledgerId);\n }\n } else {\n return hex.encode(this._ledgerId);\n }\n }\n\n /**\n * @returns {string}\n */\n _toStringForChecksum() {\n // legacy checksum logic from NetworkName\n if (this._ledgerId.length == 1) {\n switch (this._ledgerId[0]) {\n case 0:\n return \"0\";\n case 1:\n return \"1\";\n case 2:\n return \"2\";\n default:\n return hex.encode(this._ledgerId);\n }\n } else {\n return hex.encode(this._ledgerId);\n }\n }\n\n /**\n * Using the UTF-8 byte representation of \"mainnet\", \"testnet\",\n * or \"previewnet\" is NOT supported.\n *\n * @param {Uint8Array} bytes\n * @returns {LedgerId}\n */\n static fromBytes(bytes) {\n return new LedgerId(bytes);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return this._ledgerId;\n }\n\n /**\n * @returns {boolean}\n */\n isMainnet() {\n return this.toString() == NETNAMES[0];\n }\n\n /**\n * @returns {boolean}\n */\n isTestnet() {\n return this.toString() == NETNAMES[1];\n }\n\n /**\n * @returns {boolean}\n */\n isPreviewnet() {\n return this.toString() == NETNAMES[2];\n }\n}\n\nconst NETNAMES = [\"mainnet\", \"testnet\", \"previewnet\"];\n\nLedgerId.MAINNET = new LedgerId(new Uint8Array([0]));\n\nLedgerId.TESTNET = new LedgerId(new Uint8Array([1]));\n\nLedgerId.PREVIEWNET = new LedgerId(new Uint8Array([2]));\n","'use strict';\n\nvar assert = require('minimalistic-assert');\nvar inherits = require('inherits');\n\nexports.inherits = inherits;\n\nfunction isSurrogatePair(msg, i) {\n if ((msg.charCodeAt(i) & 0xFC00) !== 0xD800) {\n return false;\n }\n if (i < 0 || i + 1 >= msg.length) {\n return false;\n }\n return (msg.charCodeAt(i + 1) & 0xFC00) === 0xDC00;\n}\n\nfunction toArray(msg, enc) {\n if (Array.isArray(msg))\n return msg.slice();\n if (!msg)\n return [];\n var res = [];\n if (typeof msg === 'string') {\n if (!enc) {\n // Inspired by stringToUtf8ByteArray() in closure-library by Google\n // https://github.com/google/closure-library/blob/8598d87242af59aac233270742c8984e2b2bdbe0/closure/goog/crypt/crypt.js#L117-L143\n // Apache License 2.0\n // https://github.com/google/closure-library/blob/master/LICENSE\n var p = 0;\n for (var i = 0; i < msg.length; i++) {\n var c = msg.charCodeAt(i);\n if (c < 128) {\n res[p++] = c;\n } else if (c < 2048) {\n res[p++] = (c >> 6) | 192;\n res[p++] = (c & 63) | 128;\n } else if (isSurrogatePair(msg, i)) {\n c = 0x10000 + ((c & 0x03FF) << 10) + (msg.charCodeAt(++i) & 0x03FF);\n res[p++] = (c >> 18) | 240;\n res[p++] = ((c >> 12) & 63) | 128;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n } else {\n res[p++] = (c >> 12) | 224;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n }\n }\n } else if (enc === 'hex') {\n msg = msg.replace(/[^a-z0-9]+/ig, '');\n if (msg.length % 2 !== 0)\n msg = '0' + msg;\n for (i = 0; i < msg.length; i += 2)\n res.push(parseInt(msg[i] + msg[i + 1], 16));\n }\n } else {\n for (i = 0; i < msg.length; i++)\n res[i] = msg[i] | 0;\n }\n return res;\n}\nexports.toArray = toArray;\n\nfunction toHex(msg) {\n var res = '';\n for (var i = 0; i < msg.length; i++)\n res += zero2(msg[i].toString(16));\n return res;\n}\nexports.toHex = toHex;\n\nfunction htonl(w) {\n var res = (w >>> 24) |\n ((w >>> 8) & 0xff00) |\n ((w << 8) & 0xff0000) |\n ((w & 0xff) << 24);\n return res >>> 0;\n}\nexports.htonl = htonl;\n\nfunction toHex32(msg, endian) {\n var res = '';\n for (var i = 0; i < msg.length; i++) {\n var w = msg[i];\n if (endian === 'little')\n w = htonl(w);\n res += zero8(w.toString(16));\n }\n return res;\n}\nexports.toHex32 = toHex32;\n\nfunction zero2(word) {\n if (word.length === 1)\n return '0' + word;\n else\n return word;\n}\nexports.zero2 = zero2;\n\nfunction zero8(word) {\n if (word.length === 7)\n return '0' + word;\n else if (word.length === 6)\n return '00' + word;\n else if (word.length === 5)\n return '000' + word;\n else if (word.length === 4)\n return '0000' + word;\n else if (word.length === 3)\n return '00000' + word;\n else if (word.length === 2)\n return '000000' + word;\n else if (word.length === 1)\n return '0000000' + word;\n else\n return word;\n}\nexports.zero8 = zero8;\n\nfunction join32(msg, start, end, endian) {\n var len = end - start;\n assert(len % 4 === 0);\n var res = new Array(len / 4);\n for (var i = 0, k = start; i < res.length; i++, k += 4) {\n var w;\n if (endian === 'big')\n w = (msg[k] << 24) | (msg[k + 1] << 16) | (msg[k + 2] << 8) | msg[k + 3];\n else\n w = (msg[k + 3] << 24) | (msg[k + 2] << 16) | (msg[k + 1] << 8) | msg[k];\n res[i] = w >>> 0;\n }\n return res;\n}\nexports.join32 = join32;\n\nfunction split32(msg, endian) {\n var res = new Array(msg.length * 4);\n for (var i = 0, k = 0; i < msg.length; i++, k += 4) {\n var m = msg[i];\n if (endian === 'big') {\n res[k] = m >>> 24;\n res[k + 1] = (m >>> 16) & 0xff;\n res[k + 2] = (m >>> 8) & 0xff;\n res[k + 3] = m & 0xff;\n } else {\n res[k + 3] = m >>> 24;\n res[k + 2] = (m >>> 16) & 0xff;\n res[k + 1] = (m >>> 8) & 0xff;\n res[k] = m & 0xff;\n }\n }\n return res;\n}\nexports.split32 = split32;\n\nfunction rotr32(w, b) {\n return (w >>> b) | (w << (32 - b));\n}\nexports.rotr32 = rotr32;\n\nfunction rotl32(w, b) {\n return (w << b) | (w >>> (32 - b));\n}\nexports.rotl32 = rotl32;\n\nfunction sum32(a, b) {\n return (a + b) >>> 0;\n}\nexports.sum32 = sum32;\n\nfunction sum32_3(a, b, c) {\n return (a + b + c) >>> 0;\n}\nexports.sum32_3 = sum32_3;\n\nfunction sum32_4(a, b, c, d) {\n return (a + b + c + d) >>> 0;\n}\nexports.sum32_4 = sum32_4;\n\nfunction sum32_5(a, b, c, d, e) {\n return (a + b + c + d + e) >>> 0;\n}\nexports.sum32_5 = sum32_5;\n\nfunction sum64(buf, pos, ah, al) {\n var bh = buf[pos];\n var bl = buf[pos + 1];\n\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n buf[pos] = hi >>> 0;\n buf[pos + 1] = lo;\n}\nexports.sum64 = sum64;\n\nfunction sum64_hi(ah, al, bh, bl) {\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n return hi >>> 0;\n}\nexports.sum64_hi = sum64_hi;\n\nfunction sum64_lo(ah, al, bh, bl) {\n var lo = al + bl;\n return lo >>> 0;\n}\nexports.sum64_lo = sum64_lo;\n\nfunction sum64_4_hi(ah, al, bh, bl, ch, cl, dh, dl) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n\n var hi = ah + bh + ch + dh + carry;\n return hi >>> 0;\n}\nexports.sum64_4_hi = sum64_4_hi;\n\nfunction sum64_4_lo(ah, al, bh, bl, ch, cl, dh, dl) {\n var lo = al + bl + cl + dl;\n return lo >>> 0;\n}\nexports.sum64_4_lo = sum64_4_lo;\n\nfunction sum64_5_hi(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n lo = (lo + el) >>> 0;\n carry += lo < el ? 1 : 0;\n\n var hi = ah + bh + ch + dh + eh + carry;\n return hi >>> 0;\n}\nexports.sum64_5_hi = sum64_5_hi;\n\nfunction sum64_5_lo(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var lo = al + bl + cl + dl + el;\n\n return lo >>> 0;\n}\nexports.sum64_5_lo = sum64_5_lo;\n\nfunction rotr64_hi(ah, al, num) {\n var r = (al << (32 - num)) | (ah >>> num);\n return r >>> 0;\n}\nexports.rotr64_hi = rotr64_hi;\n\nfunction rotr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.rotr64_lo = rotr64_lo;\n\nfunction shr64_hi(ah, al, num) {\n return ah >>> num;\n}\nexports.shr64_hi = shr64_hi;\n\nfunction shr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.shr64_lo = shr64_lo;\n","/**\n * @type {string[]}\n */\nconst byteToHex = [];\n\nfor (let n = 0; n <= 0xff; n += 1) {\n byteToHex.push(n.toString(16).padStart(2, \"0\"));\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function encode(data) {\n let string = \"\";\n\n for (const byte of data) {\n string += byteToHex[byte];\n }\n\n return string;\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function decode(text) {\n const str = text.startsWith(\"0x\") ? text.substring(2) : text;\n const result = str.match(/.{1,2}/gu);\n\n return new Uint8Array(\n (result == null ? [] : result).map((byte) => parseInt(byte, 16))\n );\n}\n","import * as hex from \"./encoding/hex.js\";\n\nexport default class LedgerId {\n /**\n * @hideconstructor\n * @internal\n * @param {Uint8Array} ledgerId\n */\n constructor(ledgerId) {\n /**\n * @readonly\n * @type {Uint8Array}\n */\n this._ledgerId = ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @param {string} ledgerId\n * @returns {LedgerId}\n */\n static fromString(ledgerId) {\n switch (ledgerId) {\n case NETNAMES[0]:\n case \"0\":\n return LedgerId.MAINNET;\n case NETNAMES[1]:\n case \"1\":\n return LedgerId.TESTNET;\n case NETNAMES[2]:\n case \"2\":\n return LedgerId.PREVIEWNET;\n default: {\n let ledgerIdDecoded = hex.decode(ledgerId);\n if (ledgerIdDecoded.length == 0 && ledgerId.length != 0) {\n throw new Error(\"Default reached for fromString\");\n } else {\n return new LedgerId(ledgerIdDecoded);\n }\n }\n }\n }\n\n /**\n * If the ledger ID is a known value such as `[0]`, `[1]`, `[2]` this method\n * will instead return \"mainnet\", \"testnet\", or \"previewnet\", otherwise it will\n * hex encode the bytes.\n *\n * @returns {string}\n */\n toString() {\n if (this._ledgerId.length == 1) {\n switch (this._ledgerId[0]) {\n case 0:\n return NETNAMES[0];\n case 1:\n return NETNAMES[1];\n case 2:\n return NETNAMES[2];\n default:\n return hex.encode(this._ledgerId);\n }\n } else {\n return hex.encode(this._ledgerId);\n }\n }\n\n /**\n * @returns {string}\n */\n _toStringForChecksum() {\n // legacy checksum logic from NetworkName\n if (this._ledgerId.length == 1) {\n switch (this._ledgerId[0]) {\n case 0:\n return \"0\";\n case 1:\n return \"1\";\n case 2:\n return \"2\";\n default:\n return hex.encode(this._ledgerId);\n }\n } else {\n return hex.encode(this._ledgerId);\n }\n }\n\n /**\n * Using the UTF-8 byte representation of \"mainnet\", \"testnet\",\n * or \"previewnet\" is NOT supported.\n *\n * @param {Uint8Array} bytes\n * @returns {LedgerId}\n */\n static fromBytes(bytes) {\n return new LedgerId(bytes);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return this._ledgerId;\n }\n\n /**\n * @returns {boolean}\n */\n isMainnet() {\n return this.toString() == NETNAMES[0];\n }\n\n /**\n * @returns {boolean}\n */\n isTestnet() {\n return this.toString() == NETNAMES[1];\n }\n\n /**\n * @returns {boolean}\n */\n isPreviewnet() {\n return this.toString() == NETNAMES[2];\n }\n}\n\nconst NETNAMES = [\"mainnet\", \"testnet\", \"previewnet\"];\n\nLedgerId.MAINNET = new LedgerId(new Uint8Array([0]));\n\nLedgerId.TESTNET = new LedgerId(new Uint8Array([1]));\n\nLedgerId.PREVIEWNET = new LedgerId(new Uint8Array([2]));\n","/**\n * Signals that a key could not be realized from the input.\n */\nexport default class BadKeyError extends Error {\n /**\n * @param {Error | string} messageOrCause\n */\n constructor(messageOrCause) {\n super(\n messageOrCause instanceof Error\n ? messageOrCause.message\n : messageOrCause\n );\n\n this.name = \"BadKeyError\";\n\n if (messageOrCause instanceof Error) {\n /** @type {?Error} */\n this.cause = messageOrCause;\n this.stack = messageOrCause.stack;\n }\n }\n}\n","import * as cryptography from \"@hashgraph/cryptography\";\nimport { arrayEqual } from \"./array.js\";\nimport Key from \"./Key.js\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @typedef {import(\"./transaction/Transaction.js\").default} Transaction\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignaturePair} proto.ISignaturePair\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n */\n\nexport default class PublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {cryptography.PublicKey} key\n */\n constructor(key) {\n super();\n\n this._key = key;\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytes(data) {\n return new PublicKey(cryptography.PublicKey.fromBytes(data));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesED25519(data) {\n return new PublicKey(cryptography.PublicKey.fromBytesED25519(data));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesECDSA(data) {\n return new PublicKey(cryptography.PublicKey.fromBytesECDSA(data));\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromString(text) {\n return new PublicKey(cryptography.PublicKey.fromString(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return this._key.verify(message, signature);\n }\n\n /**\n * @param {Transaction} transaction\n * @returns {boolean}\n */\n verifyTransaction(transaction) {\n transaction._requireFrozen();\n\n if (!transaction.isFrozen()) {\n transaction.freeze();\n }\n\n for (const signedTransaction of transaction._signedTransactions.list) {\n if (\n signedTransaction.sigMap != null &&\n signedTransaction.sigMap.sigPair != null\n ) {\n let found = false;\n for (const sigPair of signedTransaction.sigMap.sigPair) {\n const pubKeyPrefix = /** @type {Uint8Array} */ (\n sigPair.pubKeyPrefix\n );\n if (arrayEqual(pubKeyPrefix, this.toBytesRaw())) {\n found = true;\n\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n\n let signature = null;\n if (sigPair.ed25519 != null) {\n signature = sigPair.ed25519;\n } else if (sigPair.ECDSASecp256k1 != null) {\n signature = sigPair.ECDSASecp256k1;\n }\n\n if (signature == null) {\n continue;\n }\n\n if (!this.verify(bodyBytes, signature)) {\n return false;\n }\n }\n }\n\n if (!found) {\n return false;\n }\n }\n }\n\n return true;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return this._key.toBytes();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n return this._key.toBytesDer();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._key.toBytesRaw();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this._key.toString();\n }\n\n /**\n * @returns {string}\n */\n toStringDer() {\n return this._key.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringRaw() {\n return this._key.toStringRaw();\n }\n\n /**\n * @param {PublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n return this._key.equals(other._key);\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n switch (this._key._type) {\n case \"ED25519\":\n return {\n ed25519: this._key.toBytesRaw(),\n };\n case \"secp256k1\":\n return {\n ECDSASecp256k1: this._key.toBytesRaw(),\n };\n default:\n throw new Error(`unrecognized key type ${this._key._type}`);\n }\n }\n\n /**\n * @param {Uint8Array} signature\n * @returns {proto.ISignaturePair}\n */\n _toProtobufSignature(signature) {\n switch (this._key._type) {\n case \"ED25519\":\n return {\n pubKeyPrefix: this._key.toBytesRaw(),\n ed25519: signature,\n };\n case \"secp256k1\":\n return {\n pubKeyPrefix: this._key.toBytesRaw(),\n ECDSASecp256k1: signature,\n };\n default:\n throw new Error(`unrecognized key type ${this._key._type}`);\n }\n }\n\n /**\n * @param {Long | number} shard\n * @param {Long | number} realm\n * @returns {AccountId}\n */\n toAccountId(shard, realm) {\n if (CACHE.accountIdConstructor == null) {\n throw new Error(\"`AccountId` not loaded\");\n }\n\n return CACHE.accountIdConstructor(shard, realm, this);\n }\n}\n\nCACHE.publicKeyED25519 = (key) => PublicKey.fromBytesED25519(key);\nCACHE.publicKeyECDSA = (key) => PublicKey.fromBytesECDSA(key);\n","var superPropBase = require(\"./superPropBase.js\");\n\nvar defineProperty = require(\"./defineProperty.js\");\n\nfunction set(target, property, value, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.set) {\n set = Reflect.set;\n } else {\n set = function set(target, property, value, receiver) {\n var base = superPropBase(target, property);\n var desc;\n\n if (base) {\n desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.set) {\n desc.set.call(receiver, value);\n return true;\n } else if (!desc.writable) {\n return false;\n }\n }\n\n desc = Object.getOwnPropertyDescriptor(receiver, property);\n\n if (desc) {\n if (!desc.writable) {\n return false;\n }\n\n desc.value = value;\n Object.defineProperty(receiver, property, desc);\n } else {\n defineProperty(receiver, property, value);\n }\n\n return true;\n };\n }\n\n return set(target, property, value, receiver);\n}\n\nfunction _set(target, property, value, receiver, isStrict) {\n var s = set(target, property, value, receiver || target);\n\n if (!s && isStrict) {\n throw new Error('failed to set property');\n }\n\n return value;\n}\n\nmodule.exports = _set;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function decode(data) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextDecoder().decode(data);\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function encode(text) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextEncoder().encode(text);\n}\n","/**\n * Signals that a key could not be realized from the input.\n */\nexport default class BadKeyError extends Error {\n /**\n * @param {Error | string} messageOrCause\n */\n constructor(messageOrCause) {\n super(\n messageOrCause instanceof Error\n ? messageOrCause.message\n : messageOrCause\n );\n\n this.name = \"BadKeyError\";\n\n if (messageOrCause instanceof Error) {\n /** @type {?Error} */\n this.cause = messageOrCause;\n this.stack = messageOrCause.stack;\n }\n }\n}\n","import * as cryptography from \"@hashgraph/cryptography\";\nimport { arrayEqual } from \"./array.js\";\nimport Key from \"./Key.js\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @typedef {import(\"./transaction/Transaction.js\").default} Transaction\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignaturePair} proto.ISignaturePair\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n */\n\nexport default class PublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {cryptography.PublicKey} key\n */\n constructor(key) {\n super();\n\n this._key = key;\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytes(data) {\n return new PublicKey(cryptography.PublicKey.fromBytes(data));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesED25519(data) {\n return new PublicKey(cryptography.PublicKey.fromBytesED25519(data));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesECDSA(data) {\n return new PublicKey(cryptography.PublicKey.fromBytesECDSA(data));\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromString(text) {\n return new PublicKey(cryptography.PublicKey.fromString(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return this._key.verify(message, signature);\n }\n\n /**\n * @param {Transaction} transaction\n * @returns {boolean}\n */\n verifyTransaction(transaction) {\n transaction._requireFrozen();\n\n if (!transaction.isFrozen()) {\n transaction.freeze();\n }\n\n for (const signedTransaction of transaction._signedTransactions.list) {\n if (\n signedTransaction.sigMap != null &&\n signedTransaction.sigMap.sigPair != null\n ) {\n let found = false;\n for (const sigPair of signedTransaction.sigMap.sigPair) {\n const pubKeyPrefix = /** @type {Uint8Array} */ (\n sigPair.pubKeyPrefix\n );\n if (arrayEqual(pubKeyPrefix, this.toBytesRaw())) {\n found = true;\n\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n\n let signature = null;\n if (sigPair.ed25519 != null) {\n signature = sigPair.ed25519;\n } else if (sigPair.ECDSASecp256k1 != null) {\n signature = sigPair.ECDSASecp256k1;\n }\n\n if (signature == null) {\n continue;\n }\n\n if (!this.verify(bodyBytes, signature)) {\n return false;\n }\n }\n }\n\n if (!found) {\n return false;\n }\n }\n }\n\n return true;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return this._key.toBytes();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n return this._key.toBytesDer();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._key.toBytesRaw();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this._key.toString();\n }\n\n /**\n * @returns {string}\n */\n toStringDer() {\n return this._key.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringRaw() {\n return this._key.toStringRaw();\n }\n\n /**\n * @param {PublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n return this._key.equals(other._key);\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n switch (this._key._type) {\n case \"ED25519\":\n return {\n ed25519: this._key.toBytesRaw(),\n };\n case \"secp256k1\":\n return {\n ECDSASecp256k1: this._key.toBytesRaw(),\n };\n default:\n throw new Error(`unrecognized key type ${this._key._type}`);\n }\n }\n\n /**\n * @param {Uint8Array} signature\n * @returns {proto.ISignaturePair}\n */\n _toProtobufSignature(signature) {\n switch (this._key._type) {\n case \"ED25519\":\n return {\n pubKeyPrefix: this._key.toBytesRaw(),\n ed25519: signature,\n };\n case \"secp256k1\":\n return {\n pubKeyPrefix: this._key.toBytesRaw(),\n ECDSASecp256k1: signature,\n };\n default:\n throw new Error(`unrecognized key type ${this._key._type}`);\n }\n }\n\n /**\n * @param {Long | number} shard\n * @param {Long | number} realm\n * @returns {AccountId}\n */\n toAccountId(shard, realm) {\n if (CACHE.accountIdConstructor == null) {\n throw new Error(\"`AccountId` not loaded\");\n }\n\n return CACHE.accountIdConstructor(shard, realm, this);\n }\n}\n\nCACHE.publicKeyED25519 = (key) => PublicKey.fromBytesED25519(key);\nCACHE.publicKeyECDSA = (key) => PublicKey.fromBytesECDSA(key);\n","/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function decode(data) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextDecoder().decode(data);\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function encode(text) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextEncoder().encode(text);\n}\n","\"use strict\";\n/**\n * Re-exports commonly used modules:\n * * Exports [`BN`](https://github.com/indutny/bn.js), [`rlp`](https://github.com/ethereumjs/rlp).\n * @packageDocumentation\n */\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.rlp = exports.BN = void 0;\nvar bn_js_1 = __importDefault(require(\"bn.js\"));\nexports.BN = bn_js_1.default;\nvar rlp = __importStar(require(\"rlp\"));\nexports.rlp = rlp;\n//# sourceMappingURL=externals.js.map","/**\n * Signals that a key could not be realized from the input.\n */\nexport default class BadKeyError extends Error {\n /**\n * @param {Error | string} messageOrCause\n */\n constructor(messageOrCause) {\n super(\n messageOrCause instanceof Error\n ? messageOrCause.message\n : messageOrCause\n );\n\n this.name = \"BadKeyError\";\n\n if (messageOrCause instanceof Error) {\n /** @type {Error=} */\n this.cause = messageOrCause;\n this.stack = messageOrCause.stack;\n }\n }\n}\n","import * as cryptography from \"@hashgraph/cryptography\";\nimport { arrayEqual } from \"./array.js\";\nimport Key from \"./Key.js\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @typedef {import(\"./transaction/Transaction.js\").default} Transaction\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignaturePair} proto.ISignaturePair\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n */\n\nexport default class PublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {cryptography.PublicKey} key\n */\n constructor(key) {\n super();\n\n this._key = key;\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytes(data) {\n return new PublicKey(cryptography.PublicKey.fromBytes(data));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesED25519(data) {\n return new PublicKey(cryptography.PublicKey.fromBytesED25519(data));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesECDSA(data) {\n return new PublicKey(cryptography.PublicKey.fromBytesECDSA(data));\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromString(text) {\n return new PublicKey(cryptography.PublicKey.fromString(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return this._key.verify(message, signature);\n }\n\n /**\n * @param {Transaction} transaction\n * @returns {boolean}\n */\n verifyTransaction(transaction) {\n transaction._requireFrozen();\n\n if (!transaction.isFrozen()) {\n transaction.freeze();\n }\n\n for (const signedTransaction of transaction._signedTransactions) {\n if (\n signedTransaction.sigMap != null &&\n signedTransaction.sigMap.sigPair != null\n ) {\n let found = false;\n for (const sigPair of signedTransaction.sigMap.sigPair) {\n const pubKeyPrefix = /** @type {Uint8Array} */ (\n sigPair.pubKeyPrefix\n );\n if (arrayEqual(pubKeyPrefix, this.toBytesRaw())) {\n found = true;\n\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n\n let signature = null;\n if (sigPair.ed25519 != null) {\n signature = sigPair.ed25519;\n } else if (sigPair.ECDSASecp256k1 != null) {\n signature = sigPair.ECDSASecp256k1;\n }\n\n if (signature == null) {\n continue;\n }\n\n if (!this.verify(bodyBytes, signature)) {\n return false;\n }\n }\n }\n\n if (!found) {\n return false;\n }\n }\n }\n\n return true;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return this._key.toBytes();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n return this._key.toBytesDer();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._key.toBytesRaw();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this._key.toString();\n }\n\n /**\n * @returns {string}\n */\n toStringDer() {\n return this._key.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringRaw() {\n return this._key.toStringRaw();\n }\n\n /**\n * @param {PublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n return this._key.equals(other._key);\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n switch (this._key._type) {\n case \"ED25519\":\n return {\n ed25519: this._key.toBytesRaw(),\n };\n case \"secp256k1\":\n return {\n ECDSASecp256k1: this._key.toBytesRaw(),\n };\n default:\n throw new Error(`unrecognized key type ${this._key._type}`);\n }\n }\n\n /**\n * @param {Uint8Array} signature\n * @returns {proto.ISignaturePair}\n */\n _toProtobufSignature(signature) {\n switch (this._key._type) {\n case \"ED25519\":\n return {\n pubKeyPrefix: this._key.toBytesRaw(),\n ed25519: signature,\n };\n case \"secp256k1\":\n return {\n pubKeyPrefix: this._key.toBytesRaw(),\n ECDSASecp256k1: signature,\n };\n default:\n throw new Error(`unrecognized key type ${this._key._type}`);\n }\n }\n\n /**\n * @param {Long | number} shard\n * @param {Long | number} realm\n * @returns {AccountId}\n */\n toAccountId(shard, realm) {\n if (CACHE.accountIdConstructor == null) {\n throw new Error(\"`AccountId` not loaded\");\n }\n\n return CACHE.accountIdConstructor(shard, realm, this);\n }\n}\n\nCACHE.publicKeyED25519 = (key) => PublicKey.fromBytesED25519(key);\nCACHE.publicKeyECDSA = (key) => PublicKey.fromBytesECDSA(key);\n","/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function decode(data) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextDecoder().decode(data);\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function encode(text) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextEncoder().encode(text);\n}\n","/**\n * @type {string[]}\n */\nconst byteToHex = [];\n\nfor (let n = 0; n <= 0xff; n += 1) {\n byteToHex.push(n.toString(16).padStart(2, \"0\"));\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function encode(data) {\n let string = \"\";\n\n for (const byte of data) {\n string += byteToHex[byte];\n }\n\n return string;\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function decode(text) {\n const str = text.startsWith(\"0x\") ? text.substring(2) : text;\n const result = str.match(/.{1,2}/gu);\n\n return new Uint8Array(\n (result == null ? [] : result).map((byte) => parseInt(byte, 16))\n );\n}\n","/**\n * @typedef {import(\"./contract/ContractId.js\").default} ContractId\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n * @typedef {import(\"./KeyList.js\").default} KeyList\n * @typedef {import(\"./PublicKey.js\").default} PublicKey\n * @typedef {import(\"./PrivateKey.js\").default} PrivateKey\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IKeyList} proto.IKeyList\n * @typedef {import(\"@hashgraph/proto\").IThresholdKey} proto.IThresholdKey\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n */\n\n/**\n * @namespace cryptography\n * @typedef {import(\"@hashgraph/cryptography\").PrivateKey} cryptography.PrivateKey\n */\n\n/**\n * @template {object} ProtobufT\n * @template {object} SdkT\n * @typedef {{ (proto: ProtobufT): SdkT }} FromProtobufKeyFuncT\n */\n\nconst CACHE = {\n /** @type {FromProtobufKeyFuncT | null} */\n contractId: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n keyList: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n thresholdKey: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n publicKeyED25519: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n publicKeyECDSA: null,\n\n /** @type {((key: cryptography.PrivateKey) => PrivateKey) | null} */\n privateKeyConstructor: null,\n\n /** @type {((shard: Long | number, realm: Long | number, key: PublicKey) => AccountId) | null} */\n accountIdConstructor: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n delegateContractId: null,\n};\n\nexport default CACHE;\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport { TopicID as ProtoTopicID } from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITopicID} proto.ITopicID\n */\n\n/**\n * Unique identifier for a topic (used by the consensus service).\n */\nexport default class TopicId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {TopicId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new TopicId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.ITopicID} id\n * @returns {TopicId}\n */\n static _fromProtobuf(id) {\n const topicId = new TopicId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.topicNum != null ? id.topicNum : 0\n );\n\n return topicId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TopicId}\n */\n static fromBytes(bytes) {\n return TopicId._fromProtobuf(ProtoTopicID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {TopicId}\n */\n static fromSolidityAddress(address) {\n const [shard, realm, topic] = entity_id.fromSolidityAddress(address);\n return new TopicId(shard, realm, topic);\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @returns {proto.ITopicID}\n */\n _toProtobuf() {\n return {\n topicNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return ProtoTopicID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {TopicId}\n */\n clone() {\n const id = new TopicId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {TopicId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n","'use strict'\n\n// limit of Crypto.getRandomValues()\n// https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues\nvar MAX_BYTES = 65536\n\n// Node supports requesting up to this number of bytes\n// https://github.com/nodejs/node/blob/master/lib/internal/crypto/random.js#L48\nvar MAX_UINT32 = 4294967295\n\nfunction oldBrowser () {\n throw new Error('Secure random number generation is not supported by this browser.\\nUse Chrome, Firefox or Internet Explorer 11')\n}\n\nvar Buffer = require('safe-buffer').Buffer\nvar crypto = global.crypto || global.msCrypto\n\nif (crypto && crypto.getRandomValues) {\n module.exports = randomBytes\n} else {\n module.exports = oldBrowser\n}\n\nfunction randomBytes (size, cb) {\n // phantomjs needs to throw\n if (size > MAX_UINT32) throw new RangeError('requested too many random bytes')\n\n var bytes = Buffer.allocUnsafe(size)\n\n if (size > 0) { // getRandomValues fails on IE if size == 0\n if (size > MAX_BYTES) { // this is the max bytes crypto.getRandomValues\n // can do at once see https://developer.mozilla.org/en-US/docs/Web/API/window.crypto.getRandomValues\n for (var generated = 0; generated < size; generated += MAX_BYTES) {\n // buffer.slice automatically checks if the end is past the end of\n // the buffer so we don't have to here\n crypto.getRandomValues(bytes.slice(generated, generated + MAX_BYTES))\n }\n } else {\n crypto.getRandomValues(bytes)\n }\n }\n\n if (typeof cb === 'function') {\n return process.nextTick(function () {\n cb(null, bytes)\n })\n }\n\n return bytes\n}\n","var Buffer = require('safe-buffer').Buffer\nvar Transform = require('stream').Transform\nvar StringDecoder = require('string_decoder').StringDecoder\nvar inherits = require('inherits')\n\nfunction CipherBase (hashMode) {\n Transform.call(this)\n this.hashMode = typeof hashMode === 'string'\n if (this.hashMode) {\n this[hashMode] = this._finalOrDigest\n } else {\n this.final = this._finalOrDigest\n }\n if (this._final) {\n this.__final = this._final\n this._final = null\n }\n this._decoder = null\n this._encoding = null\n}\ninherits(CipherBase, Transform)\n\nCipherBase.prototype.update = function (data, inputEnc, outputEnc) {\n if (typeof data === 'string') {\n data = Buffer.from(data, inputEnc)\n }\n\n var outData = this._update(data)\n if (this.hashMode) return this\n\n if (outputEnc) {\n outData = this._toString(outData, outputEnc)\n }\n\n return outData\n}\n\nCipherBase.prototype.setAutoPadding = function () {}\nCipherBase.prototype.getAuthTag = function () {\n throw new Error('trying to get auth tag in unsupported state')\n}\n\nCipherBase.prototype.setAuthTag = function () {\n throw new Error('trying to set auth tag in unsupported state')\n}\n\nCipherBase.prototype.setAAD = function () {\n throw new Error('trying to set aad in unsupported state')\n}\n\nCipherBase.prototype._transform = function (data, _, next) {\n var err\n try {\n if (this.hashMode) {\n this._update(data)\n } else {\n this.push(this._update(data))\n }\n } catch (e) {\n err = e\n } finally {\n next(err)\n }\n}\nCipherBase.prototype._flush = function (done) {\n var err\n try {\n this.push(this.__final())\n } catch (e) {\n err = e\n }\n\n done(err)\n}\nCipherBase.prototype._finalOrDigest = function (outputEnc) {\n var outData = this.__final() || Buffer.alloc(0)\n if (outputEnc) {\n outData = this._toString(outData, outputEnc, true)\n }\n return outData\n}\n\nCipherBase.prototype._toString = function (value, enc, fin) {\n if (!this._decoder) {\n this._decoder = new StringDecoder(enc)\n this._encoding = enc\n }\n\n if (this._encoding !== enc) throw new Error('can\\'t switch encodings')\n\n var out = this._decoder.write(value)\n if (fin) {\n out += this._decoder.end()\n }\n\n return out\n}\n\nmodule.exports = CipherBase\n","/**\n * @type {string[]}\n */\nconst byteToHex = [];\n\nfor (let n = 0; n <= 0xff; n += 1) {\n byteToHex.push(n.toString(16).padStart(2, \"0\"));\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function encode(data) {\n let string = \"\";\n\n for (const byte of data) {\n string += byteToHex[byte];\n }\n\n return string;\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function decode(text) {\n const str = text.startsWith(\"0x\") ? text.substring(2) : text;\n const result = str.match(/.{1,2}/gu);\n\n return new Uint8Array(\n (result == null ? [] : result).map((byte) => parseInt(byte, 16))\n );\n}\n","/**\n * @typedef {import(\"./contract/ContractId.js\").default} ContractId\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n * @typedef {import(\"./KeyList.js\").default} KeyList\n * @typedef {import(\"./PublicKey.js\").default} PublicKey\n * @typedef {import(\"./PrivateKey.js\").default} PrivateKey\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IKeyList} proto.IKeyList\n * @typedef {import(\"@hashgraph/proto\").IThresholdKey} proto.IThresholdKey\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n */\n\n/**\n * @namespace cryptography\n * @typedef {import(\"@hashgraph/cryptography\").PrivateKey} cryptography.PrivateKey\n */\n\n/**\n * @template {object} ProtobufT\n * @template {object} SdkT\n * @typedef {{ (proto: ProtobufT): SdkT }} FromProtobufKeyFuncT\n */\n\nconst CACHE = {\n /** @type {FromProtobufKeyFuncT | null} */\n contractId: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n keyList: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n thresholdKey: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n publicKeyED25519: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n publicKeyECDSA: null,\n\n /** @type {((key: cryptography.PrivateKey) => PrivateKey) | null} */\n privateKeyConstructor: null,\n\n /** @type {((shard: Long | number, realm: Long | number, key: PublicKey) => AccountId) | null} */\n accountIdConstructor: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n delegateContractId: null,\n};\n\nexport default CACHE;\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport { TopicID as ProtoTopicID } from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITopicID} proto.ITopicID\n */\n\n/**\n * Unique identifier for a topic (used by the consensus service).\n */\nexport default class TopicId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {TopicId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new TopicId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.ITopicID} id\n * @returns {TopicId}\n */\n static _fromProtobuf(id) {\n const topicId = new TopicId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.topicNum != null ? id.topicNum : 0\n );\n\n return topicId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TopicId}\n */\n static fromBytes(bytes) {\n return TopicId._fromProtobuf(ProtoTopicID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {TopicId}\n */\n static fromSolidityAddress(address) {\n const [shard, realm, topic] = entity_id.fromSolidityAddress(address);\n return new TopicId(shard, realm, topic);\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @returns {proto.ITopicID}\n */\n _toProtobuf() {\n return {\n topicNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return ProtoTopicID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {TopicId}\n */\n clone() {\n const id = new TopicId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {TopicId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n","/**\n * @type {string[]}\n */\nconst byteToHex = [];\n\nfor (let n = 0; n <= 0xff; n += 1) {\n byteToHex.push(n.toString(16).padStart(2, \"0\"));\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function encode(data) {\n let string = \"\";\n\n for (const byte of data) {\n string += byteToHex[byte];\n }\n\n return string;\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function decode(text) {\n const str = text.startsWith(\"0x\") ? text.substring(2) : text;\n const result = str.match(/.{1,2}/gu);\n\n return new Uint8Array(\n (result == null ? [] : result).map((byte) => parseInt(byte, 16))\n );\n}\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport { TopicID as ProtoTopicID } from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITopicID} proto.ITopicID\n */\n\n/**\n * Unique identifier for a topic (used by the consensus service).\n */\nexport default class TopicId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {TopicId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new TopicId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.ITopicID} id\n * @returns {TopicId}\n */\n static _fromProtobuf(id) {\n const topicId = new TopicId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.topicNum != null ? id.topicNum : 0\n );\n\n return topicId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TopicId}\n */\n static fromBytes(bytes) {\n return TopicId._fromProtobuf(ProtoTopicID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {TopicId}\n */\n static fromSolidityAddress(address) {\n const [shard, realm, topic] = entity_id.fromSolidityAddress(address);\n return new TopicId(shard, realm, topic);\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @returns {proto.ITopicID}\n */\n _toProtobuf() {\n return {\n topicNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return ProtoTopicID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {TopicId}\n */\n clone() {\n const id = new TopicId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {TopicId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n",";(function (globalObject) {\r\n 'use strict';\r\n\r\n/*\r\n * bignumber.js v9.0.2\r\n * A JavaScript library for arbitrary-precision arithmetic.\r\n * https://github.com/MikeMcl/bignumber.js\r\n * Copyright (c) 2021 Michael Mclaughlin \r\n * MIT Licensed.\r\n *\r\n * BigNumber.prototype methods | BigNumber methods\r\n * |\r\n * absoluteValue abs | clone\r\n * comparedTo | config set\r\n * decimalPlaces dp | DECIMAL_PLACES\r\n * dividedBy div | ROUNDING_MODE\r\n * dividedToIntegerBy idiv | EXPONENTIAL_AT\r\n * exponentiatedBy pow | RANGE\r\n * integerValue | CRYPTO\r\n * isEqualTo eq | MODULO_MODE\r\n * isFinite | POW_PRECISION\r\n * isGreaterThan gt | FORMAT\r\n * isGreaterThanOrEqualTo gte | ALPHABET\r\n * isInteger | isBigNumber\r\n * isLessThan lt | maximum max\r\n * isLessThanOrEqualTo lte | minimum min\r\n * isNaN | random\r\n * isNegative | sum\r\n * isPositive |\r\n * isZero |\r\n * minus |\r\n * modulo mod |\r\n * multipliedBy times |\r\n * negated |\r\n * plus |\r\n * precision sd |\r\n * shiftedBy |\r\n * squareRoot sqrt |\r\n * toExponential |\r\n * toFixed |\r\n * toFormat |\r\n * toFraction |\r\n * toJSON |\r\n * toNumber |\r\n * toPrecision |\r\n * toString |\r\n * valueOf |\r\n *\r\n */\r\n\r\n\r\n var BigNumber,\r\n isNumeric = /^-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:e[+-]?\\d+)?$/i,\r\n mathceil = Math.ceil,\r\n mathfloor = Math.floor,\r\n\r\n bignumberError = '[BigNumber Error] ',\r\n tooManyDigits = bignumberError + 'Number primitive has more than 15 significant digits: ',\r\n\r\n BASE = 1e14,\r\n LOG_BASE = 14,\r\n MAX_SAFE_INTEGER = 0x1fffffffffffff, // 2^53 - 1\r\n // MAX_INT32 = 0x7fffffff, // 2^31 - 1\r\n POWS_TEN = [1, 10, 100, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9, 1e10, 1e11, 1e12, 1e13],\r\n SQRT_BASE = 1e7,\r\n\r\n // EDITABLE\r\n // The limit on the value of DECIMAL_PLACES, TO_EXP_NEG, TO_EXP_POS, MIN_EXP, MAX_EXP, and\r\n // the arguments to toExponential, toFixed, toFormat, and toPrecision.\r\n MAX = 1E9; // 0 to MAX_INT32\r\n\r\n\r\n /*\r\n * Create and return a BigNumber constructor.\r\n */\r\n function clone(configObject) {\r\n var div, convertBase, parseNumeric,\r\n P = BigNumber.prototype = { constructor: BigNumber, toString: null, valueOf: null },\r\n ONE = new BigNumber(1),\r\n\r\n\r\n //----------------------------- EDITABLE CONFIG DEFAULTS -------------------------------\r\n\r\n\r\n // The default values below must be integers within the inclusive ranges stated.\r\n // The values can also be changed at run-time using BigNumber.set.\r\n\r\n // The maximum number of decimal places for operations involving division.\r\n DECIMAL_PLACES = 20, // 0 to MAX\r\n\r\n // The rounding mode used when rounding to the above decimal places, and when using\r\n // toExponential, toFixed, toFormat and toPrecision, and round (default value).\r\n // UP 0 Away from zero.\r\n // DOWN 1 Towards zero.\r\n // CEIL 2 Towards +Infinity.\r\n // FLOOR 3 Towards -Infinity.\r\n // HALF_UP 4 Towards nearest neighbour. If equidistant, up.\r\n // HALF_DOWN 5 Towards nearest neighbour. If equidistant, down.\r\n // HALF_EVEN 6 Towards nearest neighbour. If equidistant, towards even neighbour.\r\n // HALF_CEIL 7 Towards nearest neighbour. If equidistant, towards +Infinity.\r\n // HALF_FLOOR 8 Towards nearest neighbour. If equidistant, towards -Infinity.\r\n ROUNDING_MODE = 4, // 0 to 8\r\n\r\n // EXPONENTIAL_AT : [TO_EXP_NEG , TO_EXP_POS]\r\n\r\n // The exponent value at and beneath which toString returns exponential notation.\r\n // Number type: -7\r\n TO_EXP_NEG = -7, // 0 to -MAX\r\n\r\n // The exponent value at and above which toString returns exponential notation.\r\n // Number type: 21\r\n TO_EXP_POS = 21, // 0 to MAX\r\n\r\n // RANGE : [MIN_EXP, MAX_EXP]\r\n\r\n // The minimum exponent value, beneath which underflow to zero occurs.\r\n // Number type: -324 (5e-324)\r\n MIN_EXP = -1e7, // -1 to -MAX\r\n\r\n // The maximum exponent value, above which overflow to Infinity occurs.\r\n // Number type: 308 (1.7976931348623157e+308)\r\n // For MAX_EXP > 1e7, e.g. new BigNumber('1e100000000').plus(1) may be slow.\r\n MAX_EXP = 1e7, // 1 to MAX\r\n\r\n // Whether to use cryptographically-secure random number generation, if available.\r\n CRYPTO = false, // true or false\r\n\r\n // The modulo mode used when calculating the modulus: a mod n.\r\n // The quotient (q = a / n) is calculated according to the corresponding rounding mode.\r\n // The remainder (r) is calculated as: r = a - n * q.\r\n //\r\n // UP 0 The remainder is positive if the dividend is negative, else is negative.\r\n // DOWN 1 The remainder has the same sign as the dividend.\r\n // This modulo mode is commonly known as 'truncated division' and is\r\n // equivalent to (a % n) in JavaScript.\r\n // FLOOR 3 The remainder has the same sign as the divisor (Python %).\r\n // HALF_EVEN 6 This modulo mode implements the IEEE 754 remainder function.\r\n // EUCLID 9 Euclidian division. q = sign(n) * floor(a / abs(n)).\r\n // The remainder is always positive.\r\n //\r\n // The truncated division, floored division, Euclidian division and IEEE 754 remainder\r\n // modes are commonly used for the modulus operation.\r\n // Although the other rounding modes can also be used, they may not give useful results.\r\n MODULO_MODE = 1, // 0 to 9\r\n\r\n // The maximum number of significant digits of the result of the exponentiatedBy operation.\r\n // If POW_PRECISION is 0, there will be unlimited significant digits.\r\n POW_PRECISION = 0, // 0 to MAX\r\n\r\n // The format specification used by the BigNumber.prototype.toFormat method.\r\n FORMAT = {\r\n prefix: '',\r\n groupSize: 3,\r\n secondaryGroupSize: 0,\r\n groupSeparator: ',',\r\n decimalSeparator: '.',\r\n fractionGroupSize: 0,\r\n fractionGroupSeparator: '\\xA0', // non-breaking space\r\n suffix: ''\r\n },\r\n\r\n // The alphabet used for base conversion. It must be at least 2 characters long, with no '+',\r\n // '-', '.', whitespace, or repeated character.\r\n // '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$_'\r\n ALPHABET = '0123456789abcdefghijklmnopqrstuvwxyz',\r\n alphabetHasNormalDecimalDigits = true;\r\n\r\n\r\n //------------------------------------------------------------------------------------------\r\n\r\n\r\n // CONSTRUCTOR\r\n\r\n\r\n /*\r\n * The BigNumber constructor and exported function.\r\n * Create and return a new instance of a BigNumber object.\r\n *\r\n * v {number|string|BigNumber} A numeric value.\r\n * [b] {number} The base of v. Integer, 2 to ALPHABET.length inclusive.\r\n */\r\n function BigNumber(v, b) {\r\n var alphabet, c, caseChanged, e, i, isNum, len, str,\r\n x = this;\r\n\r\n // Enable constructor call without `new`.\r\n if (!(x instanceof BigNumber)) return new BigNumber(v, b);\r\n\r\n if (b == null) {\r\n\r\n if (v && v._isBigNumber === true) {\r\n x.s = v.s;\r\n\r\n if (!v.c || v.e > MAX_EXP) {\r\n x.c = x.e = null;\r\n } else if (v.e < MIN_EXP) {\r\n x.c = [x.e = 0];\r\n } else {\r\n x.e = v.e;\r\n x.c = v.c.slice();\r\n }\r\n\r\n return;\r\n }\r\n\r\n if ((isNum = typeof v == 'number') && v * 0 == 0) {\r\n\r\n // Use `1 / n` to handle minus zero also.\r\n x.s = 1 / v < 0 ? (v = -v, -1) : 1;\r\n\r\n // Fast path for integers, where n < 2147483648 (2**31).\r\n if (v === ~~v) {\r\n for (e = 0, i = v; i >= 10; i /= 10, e++);\r\n\r\n if (e > MAX_EXP) {\r\n x.c = x.e = null;\r\n } else {\r\n x.e = e;\r\n x.c = [v];\r\n }\r\n\r\n return;\r\n }\r\n\r\n str = String(v);\r\n } else {\r\n\r\n if (!isNumeric.test(str = String(v))) return parseNumeric(x, str, isNum);\r\n\r\n x.s = str.charCodeAt(0) == 45 ? (str = str.slice(1), -1) : 1;\r\n }\r\n\r\n // Decimal point?\r\n if ((e = str.indexOf('.')) > -1) str = str.replace('.', '');\r\n\r\n // Exponential form?\r\n if ((i = str.search(/e/i)) > 0) {\r\n\r\n // Determine exponent.\r\n if (e < 0) e = i;\r\n e += +str.slice(i + 1);\r\n str = str.substring(0, i);\r\n } else if (e < 0) {\r\n\r\n // Integer.\r\n e = str.length;\r\n }\r\n\r\n } else {\r\n\r\n // '[BigNumber Error] Base {not a primitive number|not an integer|out of range}: {b}'\r\n intCheck(b, 2, ALPHABET.length, 'Base');\r\n\r\n // Allow exponential notation to be used with base 10 argument, while\r\n // also rounding to DECIMAL_PLACES as with other bases.\r\n if (b == 10 && alphabetHasNormalDecimalDigits) {\r\n x = new BigNumber(v);\r\n return round(x, DECIMAL_PLACES + x.e + 1, ROUNDING_MODE);\r\n }\r\n\r\n str = String(v);\r\n\r\n if (isNum = typeof v == 'number') {\r\n\r\n // Avoid potential interpretation of Infinity and NaN as base 44+ values.\r\n if (v * 0 != 0) return parseNumeric(x, str, isNum, b);\r\n\r\n x.s = 1 / v < 0 ? (str = str.slice(1), -1) : 1;\r\n\r\n // '[BigNumber Error] Number primitive has more than 15 significant digits: {n}'\r\n if (BigNumber.DEBUG && str.replace(/^0\\.0*|\\./, '').length > 15) {\r\n throw Error\r\n (tooManyDigits + v);\r\n }\r\n } else {\r\n x.s = str.charCodeAt(0) === 45 ? (str = str.slice(1), -1) : 1;\r\n }\r\n\r\n alphabet = ALPHABET.slice(0, b);\r\n e = i = 0;\r\n\r\n // Check that str is a valid base b number.\r\n // Don't use RegExp, so alphabet can contain special characters.\r\n for (len = str.length; i < len; i++) {\r\n if (alphabet.indexOf(c = str.charAt(i)) < 0) {\r\n if (c == '.') {\r\n\r\n // If '.' is not the first character and it has not be found before.\r\n if (i > e) {\r\n e = len;\r\n continue;\r\n }\r\n } else if (!caseChanged) {\r\n\r\n // Allow e.g. hexadecimal 'FF' as well as 'ff'.\r\n if (str == str.toUpperCase() && (str = str.toLowerCase()) ||\r\n str == str.toLowerCase() && (str = str.toUpperCase())) {\r\n caseChanged = true;\r\n i = -1;\r\n e = 0;\r\n continue;\r\n }\r\n }\r\n\r\n return parseNumeric(x, String(v), isNum, b);\r\n }\r\n }\r\n\r\n // Prevent later check for length on converted number.\r\n isNum = false;\r\n str = convertBase(str, b, 10, x.s);\r\n\r\n // Decimal point?\r\n if ((e = str.indexOf('.')) > -1) str = str.replace('.', '');\r\n else e = str.length;\r\n }\r\n\r\n // Determine leading zeros.\r\n for (i = 0; str.charCodeAt(i) === 48; i++);\r\n\r\n // Determine trailing zeros.\r\n for (len = str.length; str.charCodeAt(--len) === 48;);\r\n\r\n if (str = str.slice(i, ++len)) {\r\n len -= i;\r\n\r\n // '[BigNumber Error] Number primitive has more than 15 significant digits: {n}'\r\n if (isNum && BigNumber.DEBUG &&\r\n len > 15 && (v > MAX_SAFE_INTEGER || v !== mathfloor(v))) {\r\n throw Error\r\n (tooManyDigits + (x.s * v));\r\n }\r\n\r\n // Overflow?\r\n if ((e = e - i - 1) > MAX_EXP) {\r\n\r\n // Infinity.\r\n x.c = x.e = null;\r\n\r\n // Underflow?\r\n } else if (e < MIN_EXP) {\r\n\r\n // Zero.\r\n x.c = [x.e = 0];\r\n } else {\r\n x.e = e;\r\n x.c = [];\r\n\r\n // Transform base\r\n\r\n // e is the base 10 exponent.\r\n // i is where to slice str to get the first element of the coefficient array.\r\n i = (e + 1) % LOG_BASE;\r\n if (e < 0) i += LOG_BASE; // i < 1\r\n\r\n if (i < len) {\r\n if (i) x.c.push(+str.slice(0, i));\r\n\r\n for (len -= LOG_BASE; i < len;) {\r\n x.c.push(+str.slice(i, i += LOG_BASE));\r\n }\r\n\r\n i = LOG_BASE - (str = str.slice(i)).length;\r\n } else {\r\n i -= len;\r\n }\r\n\r\n for (; i--; str += '0');\r\n x.c.push(+str);\r\n }\r\n } else {\r\n\r\n // Zero.\r\n x.c = [x.e = 0];\r\n }\r\n }\r\n\r\n\r\n // CONSTRUCTOR PROPERTIES\r\n\r\n\r\n BigNumber.clone = clone;\r\n\r\n BigNumber.ROUND_UP = 0;\r\n BigNumber.ROUND_DOWN = 1;\r\n BigNumber.ROUND_CEIL = 2;\r\n BigNumber.ROUND_FLOOR = 3;\r\n BigNumber.ROUND_HALF_UP = 4;\r\n BigNumber.ROUND_HALF_DOWN = 5;\r\n BigNumber.ROUND_HALF_EVEN = 6;\r\n BigNumber.ROUND_HALF_CEIL = 7;\r\n BigNumber.ROUND_HALF_FLOOR = 8;\r\n BigNumber.EUCLID = 9;\r\n\r\n\r\n /*\r\n * Configure infrequently-changing library-wide settings.\r\n *\r\n * Accept an object with the following optional properties (if the value of a property is\r\n * a number, it must be an integer within the inclusive range stated):\r\n *\r\n * DECIMAL_PLACES {number} 0 to MAX\r\n * ROUNDING_MODE {number} 0 to 8\r\n * EXPONENTIAL_AT {number|number[]} -MAX to MAX or [-MAX to 0, 0 to MAX]\r\n * RANGE {number|number[]} -MAX to MAX (not zero) or [-MAX to -1, 1 to MAX]\r\n * CRYPTO {boolean} true or false\r\n * MODULO_MODE {number} 0 to 9\r\n * POW_PRECISION {number} 0 to MAX\r\n * ALPHABET {string} A string of two or more unique characters which does\r\n * not contain '.'.\r\n * FORMAT {object} An object with some of the following properties:\r\n * prefix {string}\r\n * groupSize {number}\r\n * secondaryGroupSize {number}\r\n * groupSeparator {string}\r\n * decimalSeparator {string}\r\n * fractionGroupSize {number}\r\n * fractionGroupSeparator {string}\r\n * suffix {string}\r\n *\r\n * (The values assigned to the above FORMAT object properties are not checked for validity.)\r\n *\r\n * E.g.\r\n * BigNumber.config({ DECIMAL_PLACES : 20, ROUNDING_MODE : 4 })\r\n *\r\n * Ignore properties/parameters set to null or undefined, except for ALPHABET.\r\n *\r\n * Return an object with the properties current values.\r\n */\r\n BigNumber.config = BigNumber.set = function (obj) {\r\n var p, v;\r\n\r\n if (obj != null) {\r\n\r\n if (typeof obj == 'object') {\r\n\r\n // DECIMAL_PLACES {number} Integer, 0 to MAX inclusive.\r\n // '[BigNumber Error] DECIMAL_PLACES {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'DECIMAL_PLACES')) {\r\n v = obj[p];\r\n intCheck(v, 0, MAX, p);\r\n DECIMAL_PLACES = v;\r\n }\r\n\r\n // ROUNDING_MODE {number} Integer, 0 to 8 inclusive.\r\n // '[BigNumber Error] ROUNDING_MODE {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'ROUNDING_MODE')) {\r\n v = obj[p];\r\n intCheck(v, 0, 8, p);\r\n ROUNDING_MODE = v;\r\n }\r\n\r\n // EXPONENTIAL_AT {number|number[]}\r\n // Integer, -MAX to MAX inclusive or\r\n // [integer -MAX to 0 inclusive, 0 to MAX inclusive].\r\n // '[BigNumber Error] EXPONENTIAL_AT {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'EXPONENTIAL_AT')) {\r\n v = obj[p];\r\n if (v && v.pop) {\r\n intCheck(v[0], -MAX, 0, p);\r\n intCheck(v[1], 0, MAX, p);\r\n TO_EXP_NEG = v[0];\r\n TO_EXP_POS = v[1];\r\n } else {\r\n intCheck(v, -MAX, MAX, p);\r\n TO_EXP_NEG = -(TO_EXP_POS = v < 0 ? -v : v);\r\n }\r\n }\r\n\r\n // RANGE {number|number[]} Non-zero integer, -MAX to MAX inclusive or\r\n // [integer -MAX to -1 inclusive, integer 1 to MAX inclusive].\r\n // '[BigNumber Error] RANGE {not a primitive number|not an integer|out of range|cannot be zero}: {v}'\r\n if (obj.hasOwnProperty(p = 'RANGE')) {\r\n v = obj[p];\r\n if (v && v.pop) {\r\n intCheck(v[0], -MAX, -1, p);\r\n intCheck(v[1], 1, MAX, p);\r\n MIN_EXP = v[0];\r\n MAX_EXP = v[1];\r\n } else {\r\n intCheck(v, -MAX, MAX, p);\r\n if (v) {\r\n MIN_EXP = -(MAX_EXP = v < 0 ? -v : v);\r\n } else {\r\n throw Error\r\n (bignumberError + p + ' cannot be zero: ' + v);\r\n }\r\n }\r\n }\r\n\r\n // CRYPTO {boolean} true or false.\r\n // '[BigNumber Error] CRYPTO not true or false: {v}'\r\n // '[BigNumber Error] crypto unavailable'\r\n if (obj.hasOwnProperty(p = 'CRYPTO')) {\r\n v = obj[p];\r\n if (v === !!v) {\r\n if (v) {\r\n if (typeof crypto != 'undefined' && crypto &&\r\n (crypto.getRandomValues || crypto.randomBytes)) {\r\n CRYPTO = v;\r\n } else {\r\n CRYPTO = !v;\r\n throw Error\r\n (bignumberError + 'crypto unavailable');\r\n }\r\n } else {\r\n CRYPTO = v;\r\n }\r\n } else {\r\n throw Error\r\n (bignumberError + p + ' not true or false: ' + v);\r\n }\r\n }\r\n\r\n // MODULO_MODE {number} Integer, 0 to 9 inclusive.\r\n // '[BigNumber Error] MODULO_MODE {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'MODULO_MODE')) {\r\n v = obj[p];\r\n intCheck(v, 0, 9, p);\r\n MODULO_MODE = v;\r\n }\r\n\r\n // POW_PRECISION {number} Integer, 0 to MAX inclusive.\r\n // '[BigNumber Error] POW_PRECISION {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'POW_PRECISION')) {\r\n v = obj[p];\r\n intCheck(v, 0, MAX, p);\r\n POW_PRECISION = v;\r\n }\r\n\r\n // FORMAT {object}\r\n // '[BigNumber Error] FORMAT not an object: {v}'\r\n if (obj.hasOwnProperty(p = 'FORMAT')) {\r\n v = obj[p];\r\n if (typeof v == 'object') FORMAT = v;\r\n else throw Error\r\n (bignumberError + p + ' not an object: ' + v);\r\n }\r\n\r\n // ALPHABET {string}\r\n // '[BigNumber Error] ALPHABET invalid: {v}'\r\n if (obj.hasOwnProperty(p = 'ALPHABET')) {\r\n v = obj[p];\r\n\r\n // Disallow if less than two characters,\r\n // or if it contains '+', '-', '.', whitespace, or a repeated character.\r\n if (typeof v == 'string' && !/^.?$|[+\\-.\\s]|(.).*\\1/.test(v)) {\r\n alphabetHasNormalDecimalDigits = v.slice(0, 10) == '0123456789';\r\n ALPHABET = v;\r\n } else {\r\n throw Error\r\n (bignumberError + p + ' invalid: ' + v);\r\n }\r\n }\r\n\r\n } else {\r\n\r\n // '[BigNumber Error] Object expected: {v}'\r\n throw Error\r\n (bignumberError + 'Object expected: ' + obj);\r\n }\r\n }\r\n\r\n return {\r\n DECIMAL_PLACES: DECIMAL_PLACES,\r\n ROUNDING_MODE: ROUNDING_MODE,\r\n EXPONENTIAL_AT: [TO_EXP_NEG, TO_EXP_POS],\r\n RANGE: [MIN_EXP, MAX_EXP],\r\n CRYPTO: CRYPTO,\r\n MODULO_MODE: MODULO_MODE,\r\n POW_PRECISION: POW_PRECISION,\r\n FORMAT: FORMAT,\r\n ALPHABET: ALPHABET\r\n };\r\n };\r\n\r\n\r\n /*\r\n * Return true if v is a BigNumber instance, otherwise return false.\r\n *\r\n * If BigNumber.DEBUG is true, throw if a BigNumber instance is not well-formed.\r\n *\r\n * v {any}\r\n *\r\n * '[BigNumber Error] Invalid BigNumber: {v}'\r\n */\r\n BigNumber.isBigNumber = function (v) {\r\n if (!v || v._isBigNumber !== true) return false;\r\n if (!BigNumber.DEBUG) return true;\r\n\r\n var i, n,\r\n c = v.c,\r\n e = v.e,\r\n s = v.s;\r\n\r\n out: if ({}.toString.call(c) == '[object Array]') {\r\n\r\n if ((s === 1 || s === -1) && e >= -MAX && e <= MAX && e === mathfloor(e)) {\r\n\r\n // If the first element is zero, the BigNumber value must be zero.\r\n if (c[0] === 0) {\r\n if (e === 0 && c.length === 1) return true;\r\n break out;\r\n }\r\n\r\n // Calculate number of digits that c[0] should have, based on the exponent.\r\n i = (e + 1) % LOG_BASE;\r\n if (i < 1) i += LOG_BASE;\r\n\r\n // Calculate number of digits of c[0].\r\n //if (Math.ceil(Math.log(c[0] + 1) / Math.LN10) == i) {\r\n if (String(c[0]).length == i) {\r\n\r\n for (i = 0; i < c.length; i++) {\r\n n = c[i];\r\n if (n < 0 || n >= BASE || n !== mathfloor(n)) break out;\r\n }\r\n\r\n // Last element cannot be zero, unless it is the only element.\r\n if (n !== 0) return true;\r\n }\r\n }\r\n\r\n // Infinity/NaN\r\n } else if (c === null && e === null && (s === null || s === 1 || s === -1)) {\r\n return true;\r\n }\r\n\r\n throw Error\r\n (bignumberError + 'Invalid BigNumber: ' + v);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the maximum of the arguments.\r\n *\r\n * arguments {number|string|BigNumber}\r\n */\r\n BigNumber.maximum = BigNumber.max = function () {\r\n return maxOrMin(arguments, P.lt);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the minimum of the arguments.\r\n *\r\n * arguments {number|string|BigNumber}\r\n */\r\n BigNumber.minimum = BigNumber.min = function () {\r\n return maxOrMin(arguments, P.gt);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber with a random value equal to or greater than 0 and less than 1,\r\n * and with dp, or DECIMAL_PLACES if dp is omitted, decimal places (or less if trailing\r\n * zeros are produced).\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp}'\r\n * '[BigNumber Error] crypto unavailable'\r\n */\r\n BigNumber.random = (function () {\r\n var pow2_53 = 0x20000000000000;\r\n\r\n // Return a 53 bit integer n, where 0 <= n < 9007199254740992.\r\n // Check if Math.random() produces more than 32 bits of randomness.\r\n // If it does, assume at least 53 bits are produced, otherwise assume at least 30 bits.\r\n // 0x40000000 is 2^30, 0x800000 is 2^23, 0x1fffff is 2^21 - 1.\r\n var random53bitInt = (Math.random() * pow2_53) & 0x1fffff\r\n ? function () { return mathfloor(Math.random() * pow2_53); }\r\n : function () { return ((Math.random() * 0x40000000 | 0) * 0x800000) +\r\n (Math.random() * 0x800000 | 0); };\r\n\r\n return function (dp) {\r\n var a, b, e, k, v,\r\n i = 0,\r\n c = [],\r\n rand = new BigNumber(ONE);\r\n\r\n if (dp == null) dp = DECIMAL_PLACES;\r\n else intCheck(dp, 0, MAX);\r\n\r\n k = mathceil(dp / LOG_BASE);\r\n\r\n if (CRYPTO) {\r\n\r\n // Browsers supporting crypto.getRandomValues.\r\n if (crypto.getRandomValues) {\r\n\r\n a = crypto.getRandomValues(new Uint32Array(k *= 2));\r\n\r\n for (; i < k;) {\r\n\r\n // 53 bits:\r\n // ((Math.pow(2, 32) - 1) * Math.pow(2, 21)).toString(2)\r\n // 11111 11111111 11111111 11111111 11100000 00000000 00000000\r\n // ((Math.pow(2, 32) - 1) >>> 11).toString(2)\r\n // 11111 11111111 11111111\r\n // 0x20000 is 2^21.\r\n v = a[i] * 0x20000 + (a[i + 1] >>> 11);\r\n\r\n // Rejection sampling:\r\n // 0 <= v < 9007199254740992\r\n // Probability that v >= 9e15, is\r\n // 7199254740992 / 9007199254740992 ~= 0.0008, i.e. 1 in 1251\r\n if (v >= 9e15) {\r\n b = crypto.getRandomValues(new Uint32Array(2));\r\n a[i] = b[0];\r\n a[i + 1] = b[1];\r\n } else {\r\n\r\n // 0 <= v <= 8999999999999999\r\n // 0 <= (v % 1e14) <= 99999999999999\r\n c.push(v % 1e14);\r\n i += 2;\r\n }\r\n }\r\n i = k / 2;\r\n\r\n // Node.js supporting crypto.randomBytes.\r\n } else if (crypto.randomBytes) {\r\n\r\n // buffer\r\n a = crypto.randomBytes(k *= 7);\r\n\r\n for (; i < k;) {\r\n\r\n // 0x1000000000000 is 2^48, 0x10000000000 is 2^40\r\n // 0x100000000 is 2^32, 0x1000000 is 2^24\r\n // 11111 11111111 11111111 11111111 11111111 11111111 11111111\r\n // 0 <= v < 9007199254740992\r\n v = ((a[i] & 31) * 0x1000000000000) + (a[i + 1] * 0x10000000000) +\r\n (a[i + 2] * 0x100000000) + (a[i + 3] * 0x1000000) +\r\n (a[i + 4] << 16) + (a[i + 5] << 8) + a[i + 6];\r\n\r\n if (v >= 9e15) {\r\n crypto.randomBytes(7).copy(a, i);\r\n } else {\r\n\r\n // 0 <= (v % 1e14) <= 99999999999999\r\n c.push(v % 1e14);\r\n i += 7;\r\n }\r\n }\r\n i = k / 7;\r\n } else {\r\n CRYPTO = false;\r\n throw Error\r\n (bignumberError + 'crypto unavailable');\r\n }\r\n }\r\n\r\n // Use Math.random.\r\n if (!CRYPTO) {\r\n\r\n for (; i < k;) {\r\n v = random53bitInt();\r\n if (v < 9e15) c[i++] = v % 1e14;\r\n }\r\n }\r\n\r\n k = c[--i];\r\n dp %= LOG_BASE;\r\n\r\n // Convert trailing digits to zeros according to dp.\r\n if (k && dp) {\r\n v = POWS_TEN[LOG_BASE - dp];\r\n c[i] = mathfloor(k / v) * v;\r\n }\r\n\r\n // Remove trailing elements which are zero.\r\n for (; c[i] === 0; c.pop(), i--);\r\n\r\n // Zero?\r\n if (i < 0) {\r\n c = [e = 0];\r\n } else {\r\n\r\n // Remove leading elements which are zero and adjust exponent accordingly.\r\n for (e = -1 ; c[0] === 0; c.splice(0, 1), e -= LOG_BASE);\r\n\r\n // Count the digits of the first element of c to determine leading zeros, and...\r\n for (i = 1, v = c[0]; v >= 10; v /= 10, i++);\r\n\r\n // adjust the exponent accordingly.\r\n if (i < LOG_BASE) e -= LOG_BASE - i;\r\n }\r\n\r\n rand.e = e;\r\n rand.c = c;\r\n return rand;\r\n };\r\n })();\r\n\r\n\r\n /*\r\n * Return a BigNumber whose value is the sum of the arguments.\r\n *\r\n * arguments {number|string|BigNumber}\r\n */\r\n BigNumber.sum = function () {\r\n var i = 1,\r\n args = arguments,\r\n sum = new BigNumber(args[0]);\r\n for (; i < args.length;) sum = sum.plus(args[i++]);\r\n return sum;\r\n };\r\n\r\n\r\n // PRIVATE FUNCTIONS\r\n\r\n\r\n // Called by BigNumber and BigNumber.prototype.toString.\r\n convertBase = (function () {\r\n var decimal = '0123456789';\r\n\r\n /*\r\n * Convert string of baseIn to an array of numbers of baseOut.\r\n * Eg. toBaseOut('255', 10, 16) returns [15, 15].\r\n * Eg. toBaseOut('ff', 16, 10) returns [2, 5, 5].\r\n */\r\n function toBaseOut(str, baseIn, baseOut, alphabet) {\r\n var j,\r\n arr = [0],\r\n arrL,\r\n i = 0,\r\n len = str.length;\r\n\r\n for (; i < len;) {\r\n for (arrL = arr.length; arrL--; arr[arrL] *= baseIn);\r\n\r\n arr[0] += alphabet.indexOf(str.charAt(i++));\r\n\r\n for (j = 0; j < arr.length; j++) {\r\n\r\n if (arr[j] > baseOut - 1) {\r\n if (arr[j + 1] == null) arr[j + 1] = 0;\r\n arr[j + 1] += arr[j] / baseOut | 0;\r\n arr[j] %= baseOut;\r\n }\r\n }\r\n }\r\n\r\n return arr.reverse();\r\n }\r\n\r\n // Convert a numeric string of baseIn to a numeric string of baseOut.\r\n // If the caller is toString, we are converting from base 10 to baseOut.\r\n // If the caller is BigNumber, we are converting from baseIn to base 10.\r\n return function (str, baseIn, baseOut, sign, callerIsToString) {\r\n var alphabet, d, e, k, r, x, xc, y,\r\n i = str.indexOf('.'),\r\n dp = DECIMAL_PLACES,\r\n rm = ROUNDING_MODE;\r\n\r\n // Non-integer.\r\n if (i >= 0) {\r\n k = POW_PRECISION;\r\n\r\n // Unlimited precision.\r\n POW_PRECISION = 0;\r\n str = str.replace('.', '');\r\n y = new BigNumber(baseIn);\r\n x = y.pow(str.length - i);\r\n POW_PRECISION = k;\r\n\r\n // Convert str as if an integer, then restore the fraction part by dividing the\r\n // result by its base raised to a power.\r\n\r\n y.c = toBaseOut(toFixedPoint(coeffToString(x.c), x.e, '0'),\r\n 10, baseOut, decimal);\r\n y.e = y.c.length;\r\n }\r\n\r\n // Convert the number as integer.\r\n\r\n xc = toBaseOut(str, baseIn, baseOut, callerIsToString\r\n ? (alphabet = ALPHABET, decimal)\r\n : (alphabet = decimal, ALPHABET));\r\n\r\n // xc now represents str as an integer and converted to baseOut. e is the exponent.\r\n e = k = xc.length;\r\n\r\n // Remove trailing zeros.\r\n for (; xc[--k] == 0; xc.pop());\r\n\r\n // Zero?\r\n if (!xc[0]) return alphabet.charAt(0);\r\n\r\n // Does str represent an integer? If so, no need for the division.\r\n if (i < 0) {\r\n --e;\r\n } else {\r\n x.c = xc;\r\n x.e = e;\r\n\r\n // The sign is needed for correct rounding.\r\n x.s = sign;\r\n x = div(x, y, dp, rm, baseOut);\r\n xc = x.c;\r\n r = x.r;\r\n e = x.e;\r\n }\r\n\r\n // xc now represents str converted to baseOut.\r\n\r\n // THe index of the rounding digit.\r\n d = e + dp + 1;\r\n\r\n // The rounding digit: the digit to the right of the digit that may be rounded up.\r\n i = xc[d];\r\n\r\n // Look at the rounding digits and mode to determine whether to round up.\r\n\r\n k = baseOut / 2;\r\n r = r || d < 0 || xc[d + 1] != null;\r\n\r\n r = rm < 4 ? (i != null || r) && (rm == 0 || rm == (x.s < 0 ? 3 : 2))\r\n : i > k || i == k &&(rm == 4 || r || rm == 6 && xc[d - 1] & 1 ||\r\n rm == (x.s < 0 ? 8 : 7));\r\n\r\n // If the index of the rounding digit is not greater than zero, or xc represents\r\n // zero, then the result of the base conversion is zero or, if rounding up, a value\r\n // such as 0.00001.\r\n if (d < 1 || !xc[0]) {\r\n\r\n // 1^-dp or 0\r\n str = r ? toFixedPoint(alphabet.charAt(1), -dp, alphabet.charAt(0)) : alphabet.charAt(0);\r\n } else {\r\n\r\n // Truncate xc to the required number of decimal places.\r\n xc.length = d;\r\n\r\n // Round up?\r\n if (r) {\r\n\r\n // Rounding up may mean the previous digit has to be rounded up and so on.\r\n for (--baseOut; ++xc[--d] > baseOut;) {\r\n xc[d] = 0;\r\n\r\n if (!d) {\r\n ++e;\r\n xc = [1].concat(xc);\r\n }\r\n }\r\n }\r\n\r\n // Determine trailing zeros.\r\n for (k = xc.length; !xc[--k];);\r\n\r\n // E.g. [4, 11, 15] becomes 4bf.\r\n for (i = 0, str = ''; i <= k; str += alphabet.charAt(xc[i++]));\r\n\r\n // Add leading zeros, decimal point and trailing zeros as required.\r\n str = toFixedPoint(str, e, alphabet.charAt(0));\r\n }\r\n\r\n // The caller will add the sign.\r\n return str;\r\n };\r\n })();\r\n\r\n\r\n // Perform division in the specified base. Called by div and convertBase.\r\n div = (function () {\r\n\r\n // Assume non-zero x and k.\r\n function multiply(x, k, base) {\r\n var m, temp, xlo, xhi,\r\n carry = 0,\r\n i = x.length,\r\n klo = k % SQRT_BASE,\r\n khi = k / SQRT_BASE | 0;\r\n\r\n for (x = x.slice(); i--;) {\r\n xlo = x[i] % SQRT_BASE;\r\n xhi = x[i] / SQRT_BASE | 0;\r\n m = khi * xlo + xhi * klo;\r\n temp = klo * xlo + ((m % SQRT_BASE) * SQRT_BASE) + carry;\r\n carry = (temp / base | 0) + (m / SQRT_BASE | 0) + khi * xhi;\r\n x[i] = temp % base;\r\n }\r\n\r\n if (carry) x = [carry].concat(x);\r\n\r\n return x;\r\n }\r\n\r\n function compare(a, b, aL, bL) {\r\n var i, cmp;\r\n\r\n if (aL != bL) {\r\n cmp = aL > bL ? 1 : -1;\r\n } else {\r\n\r\n for (i = cmp = 0; i < aL; i++) {\r\n\r\n if (a[i] != b[i]) {\r\n cmp = a[i] > b[i] ? 1 : -1;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return cmp;\r\n }\r\n\r\n function subtract(a, b, aL, base) {\r\n var i = 0;\r\n\r\n // Subtract b from a.\r\n for (; aL--;) {\r\n a[aL] -= i;\r\n i = a[aL] < b[aL] ? 1 : 0;\r\n a[aL] = i * base + a[aL] - b[aL];\r\n }\r\n\r\n // Remove leading zeros.\r\n for (; !a[0] && a.length > 1; a.splice(0, 1));\r\n }\r\n\r\n // x: dividend, y: divisor.\r\n return function (x, y, dp, rm, base) {\r\n var cmp, e, i, more, n, prod, prodL, q, qc, rem, remL, rem0, xi, xL, yc0,\r\n yL, yz,\r\n s = x.s == y.s ? 1 : -1,\r\n xc = x.c,\r\n yc = y.c;\r\n\r\n // Either NaN, Infinity or 0?\r\n if (!xc || !xc[0] || !yc || !yc[0]) {\r\n\r\n return new BigNumber(\r\n\r\n // Return NaN if either NaN, or both Infinity or 0.\r\n !x.s || !y.s || (xc ? yc && xc[0] == yc[0] : !yc) ? NaN :\r\n\r\n // Return ±0 if x is ±0 or y is ±Infinity, or return ±Infinity as y is ±0.\r\n xc && xc[0] == 0 || !yc ? s * 0 : s / 0\r\n );\r\n }\r\n\r\n q = new BigNumber(s);\r\n qc = q.c = [];\r\n e = x.e - y.e;\r\n s = dp + e + 1;\r\n\r\n if (!base) {\r\n base = BASE;\r\n e = bitFloor(x.e / LOG_BASE) - bitFloor(y.e / LOG_BASE);\r\n s = s / LOG_BASE | 0;\r\n }\r\n\r\n // Result exponent may be one less then the current value of e.\r\n // The coefficients of the BigNumbers from convertBase may have trailing zeros.\r\n for (i = 0; yc[i] == (xc[i] || 0); i++);\r\n\r\n if (yc[i] > (xc[i] || 0)) e--;\r\n\r\n if (s < 0) {\r\n qc.push(1);\r\n more = true;\r\n } else {\r\n xL = xc.length;\r\n yL = yc.length;\r\n i = 0;\r\n s += 2;\r\n\r\n // Normalise xc and yc so highest order digit of yc is >= base / 2.\r\n\r\n n = mathfloor(base / (yc[0] + 1));\r\n\r\n // Not necessary, but to handle odd bases where yc[0] == (base / 2) - 1.\r\n // if (n > 1 || n++ == 1 && yc[0] < base / 2) {\r\n if (n > 1) {\r\n yc = multiply(yc, n, base);\r\n xc = multiply(xc, n, base);\r\n yL = yc.length;\r\n xL = xc.length;\r\n }\r\n\r\n xi = yL;\r\n rem = xc.slice(0, yL);\r\n remL = rem.length;\r\n\r\n // Add zeros to make remainder as long as divisor.\r\n for (; remL < yL; rem[remL++] = 0);\r\n yz = yc.slice();\r\n yz = [0].concat(yz);\r\n yc0 = yc[0];\r\n if (yc[1] >= base / 2) yc0++;\r\n // Not necessary, but to prevent trial digit n > base, when using base 3.\r\n // else if (base == 3 && yc0 == 1) yc0 = 1 + 1e-15;\r\n\r\n do {\r\n n = 0;\r\n\r\n // Compare divisor and remainder.\r\n cmp = compare(yc, rem, yL, remL);\r\n\r\n // If divisor < remainder.\r\n if (cmp < 0) {\r\n\r\n // Calculate trial digit, n.\r\n\r\n rem0 = rem[0];\r\n if (yL != remL) rem0 = rem0 * base + (rem[1] || 0);\r\n\r\n // n is how many times the divisor goes into the current remainder.\r\n n = mathfloor(rem0 / yc0);\r\n\r\n // Algorithm:\r\n // product = divisor multiplied by trial digit (n).\r\n // Compare product and remainder.\r\n // If product is greater than remainder:\r\n // Subtract divisor from product, decrement trial digit.\r\n // Subtract product from remainder.\r\n // If product was less than remainder at the last compare:\r\n // Compare new remainder and divisor.\r\n // If remainder is greater than divisor:\r\n // Subtract divisor from remainder, increment trial digit.\r\n\r\n if (n > 1) {\r\n\r\n // n may be > base only when base is 3.\r\n if (n >= base) n = base - 1;\r\n\r\n // product = divisor * trial digit.\r\n prod = multiply(yc, n, base);\r\n prodL = prod.length;\r\n remL = rem.length;\r\n\r\n // Compare product and remainder.\r\n // If product > remainder then trial digit n too high.\r\n // n is 1 too high about 5% of the time, and is not known to have\r\n // ever been more than 1 too high.\r\n while (compare(prod, rem, prodL, remL) == 1) {\r\n n--;\r\n\r\n // Subtract divisor from product.\r\n subtract(prod, yL < prodL ? yz : yc, prodL, base);\r\n prodL = prod.length;\r\n cmp = 1;\r\n }\r\n } else {\r\n\r\n // n is 0 or 1, cmp is -1.\r\n // If n is 0, there is no need to compare yc and rem again below,\r\n // so change cmp to 1 to avoid it.\r\n // If n is 1, leave cmp as -1, so yc and rem are compared again.\r\n if (n == 0) {\r\n\r\n // divisor < remainder, so n must be at least 1.\r\n cmp = n = 1;\r\n }\r\n\r\n // product = divisor\r\n prod = yc.slice();\r\n prodL = prod.length;\r\n }\r\n\r\n if (prodL < remL) prod = [0].concat(prod);\r\n\r\n // Subtract product from remainder.\r\n subtract(rem, prod, remL, base);\r\n remL = rem.length;\r\n\r\n // If product was < remainder.\r\n if (cmp == -1) {\r\n\r\n // Compare divisor and new remainder.\r\n // If divisor < new remainder, subtract divisor from remainder.\r\n // Trial digit n too low.\r\n // n is 1 too low about 5% of the time, and very rarely 2 too low.\r\n while (compare(yc, rem, yL, remL) < 1) {\r\n n++;\r\n\r\n // Subtract divisor from remainder.\r\n subtract(rem, yL < remL ? yz : yc, remL, base);\r\n remL = rem.length;\r\n }\r\n }\r\n } else if (cmp === 0) {\r\n n++;\r\n rem = [0];\r\n } // else cmp === 1 and n will be 0\r\n\r\n // Add the next digit, n, to the result array.\r\n qc[i++] = n;\r\n\r\n // Update the remainder.\r\n if (rem[0]) {\r\n rem[remL++] = xc[xi] || 0;\r\n } else {\r\n rem = [xc[xi]];\r\n remL = 1;\r\n }\r\n } while ((xi++ < xL || rem[0] != null) && s--);\r\n\r\n more = rem[0] != null;\r\n\r\n // Leading zero?\r\n if (!qc[0]) qc.splice(0, 1);\r\n }\r\n\r\n if (base == BASE) {\r\n\r\n // To calculate q.e, first get the number of digits of qc[0].\r\n for (i = 1, s = qc[0]; s >= 10; s /= 10, i++);\r\n\r\n round(q, dp + (q.e = i + e * LOG_BASE - 1) + 1, rm, more);\r\n\r\n // Caller is convertBase.\r\n } else {\r\n q.e = e;\r\n q.r = +more;\r\n }\r\n\r\n return q;\r\n };\r\n })();\r\n\r\n\r\n /*\r\n * Return a string representing the value of BigNumber n in fixed-point or exponential\r\n * notation rounded to the specified decimal places or significant digits.\r\n *\r\n * n: a BigNumber.\r\n * i: the index of the last digit required (i.e. the digit that may be rounded up).\r\n * rm: the rounding mode.\r\n * id: 1 (toExponential) or 2 (toPrecision).\r\n */\r\n function format(n, i, rm, id) {\r\n var c0, e, ne, len, str;\r\n\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n\r\n if (!n.c) return n.toString();\r\n\r\n c0 = n.c[0];\r\n ne = n.e;\r\n\r\n if (i == null) {\r\n str = coeffToString(n.c);\r\n str = id == 1 || id == 2 && (ne <= TO_EXP_NEG || ne >= TO_EXP_POS)\r\n ? toExponential(str, ne)\r\n : toFixedPoint(str, ne, '0');\r\n } else {\r\n n = round(new BigNumber(n), i, rm);\r\n\r\n // n.e may have changed if the value was rounded up.\r\n e = n.e;\r\n\r\n str = coeffToString(n.c);\r\n len = str.length;\r\n\r\n // toPrecision returns exponential notation if the number of significant digits\r\n // specified is less than the number of digits necessary to represent the integer\r\n // part of the value in fixed-point notation.\r\n\r\n // Exponential notation.\r\n if (id == 1 || id == 2 && (i <= e || e <= TO_EXP_NEG)) {\r\n\r\n // Append zeros?\r\n for (; len < i; str += '0', len++);\r\n str = toExponential(str, e);\r\n\r\n // Fixed-point notation.\r\n } else {\r\n i -= ne;\r\n str = toFixedPoint(str, e, '0');\r\n\r\n // Append zeros?\r\n if (e + 1 > len) {\r\n if (--i > 0) for (str += '.'; i--; str += '0');\r\n } else {\r\n i += e - len;\r\n if (i > 0) {\r\n if (e + 1 == len) str += '.';\r\n for (; i--; str += '0');\r\n }\r\n }\r\n }\r\n }\r\n\r\n return n.s < 0 && c0 ? '-' + str : str;\r\n }\r\n\r\n\r\n // Handle BigNumber.max and BigNumber.min.\r\n function maxOrMin(args, method) {\r\n var n,\r\n i = 1,\r\n m = new BigNumber(args[0]);\r\n\r\n for (; i < args.length; i++) {\r\n n = new BigNumber(args[i]);\r\n\r\n // If any number is NaN, return NaN.\r\n if (!n.s) {\r\n m = n;\r\n break;\r\n } else if (method.call(m, n)) {\r\n m = n;\r\n }\r\n }\r\n\r\n return m;\r\n }\r\n\r\n\r\n /*\r\n * Strip trailing zeros, calculate base 10 exponent and check against MIN_EXP and MAX_EXP.\r\n * Called by minus, plus and times.\r\n */\r\n function normalise(n, c, e) {\r\n var i = 1,\r\n j = c.length;\r\n\r\n // Remove trailing zeros.\r\n for (; !c[--j]; c.pop());\r\n\r\n // Calculate the base 10 exponent. First get the number of digits of c[0].\r\n for (j = c[0]; j >= 10; j /= 10, i++);\r\n\r\n // Overflow?\r\n if ((e = i + e * LOG_BASE - 1) > MAX_EXP) {\r\n\r\n // Infinity.\r\n n.c = n.e = null;\r\n\r\n // Underflow?\r\n } else if (e < MIN_EXP) {\r\n\r\n // Zero.\r\n n.c = [n.e = 0];\r\n } else {\r\n n.e = e;\r\n n.c = c;\r\n }\r\n\r\n return n;\r\n }\r\n\r\n\r\n // Handle values that fail the validity test in BigNumber.\r\n parseNumeric = (function () {\r\n var basePrefix = /^(-?)0([xbo])(?=\\w[\\w.]*$)/i,\r\n dotAfter = /^([^.]+)\\.$/,\r\n dotBefore = /^\\.([^.]+)$/,\r\n isInfinityOrNaN = /^-?(Infinity|NaN)$/,\r\n whitespaceOrPlus = /^\\s*\\+(?=[\\w.])|^\\s+|\\s+$/g;\r\n\r\n return function (x, str, isNum, b) {\r\n var base,\r\n s = isNum ? str : str.replace(whitespaceOrPlus, '');\r\n\r\n // No exception on ±Infinity or NaN.\r\n if (isInfinityOrNaN.test(s)) {\r\n x.s = isNaN(s) ? null : s < 0 ? -1 : 1;\r\n } else {\r\n if (!isNum) {\r\n\r\n // basePrefix = /^(-?)0([xbo])(?=\\w[\\w.]*$)/i\r\n s = s.replace(basePrefix, function (m, p1, p2) {\r\n base = (p2 = p2.toLowerCase()) == 'x' ? 16 : p2 == 'b' ? 2 : 8;\r\n return !b || b == base ? p1 : m;\r\n });\r\n\r\n if (b) {\r\n base = b;\r\n\r\n // E.g. '1.' to '1', '.1' to '0.1'\r\n s = s.replace(dotAfter, '$1').replace(dotBefore, '0.$1');\r\n }\r\n\r\n if (str != s) return new BigNumber(s, base);\r\n }\r\n\r\n // '[BigNumber Error] Not a number: {n}'\r\n // '[BigNumber Error] Not a base {b} number: {n}'\r\n if (BigNumber.DEBUG) {\r\n throw Error\r\n (bignumberError + 'Not a' + (b ? ' base ' + b : '') + ' number: ' + str);\r\n }\r\n\r\n // NaN\r\n x.s = null;\r\n }\r\n\r\n x.c = x.e = null;\r\n }\r\n })();\r\n\r\n\r\n /*\r\n * Round x to sd significant digits using rounding mode rm. Check for over/under-flow.\r\n * If r is truthy, it is known that there are more digits after the rounding digit.\r\n */\r\n function round(x, sd, rm, r) {\r\n var d, i, j, k, n, ni, rd,\r\n xc = x.c,\r\n pows10 = POWS_TEN;\r\n\r\n // if x is not Infinity or NaN...\r\n if (xc) {\r\n\r\n // rd is the rounding digit, i.e. the digit after the digit that may be rounded up.\r\n // n is a base 1e14 number, the value of the element of array x.c containing rd.\r\n // ni is the index of n within x.c.\r\n // d is the number of digits of n.\r\n // i is the index of rd within n including leading zeros.\r\n // j is the actual index of rd within n (if < 0, rd is a leading zero).\r\n out: {\r\n\r\n // Get the number of digits of the first element of xc.\r\n for (d = 1, k = xc[0]; k >= 10; k /= 10, d++);\r\n i = sd - d;\r\n\r\n // If the rounding digit is in the first element of xc...\r\n if (i < 0) {\r\n i += LOG_BASE;\r\n j = sd;\r\n n = xc[ni = 0];\r\n\r\n // Get the rounding digit at index j of n.\r\n rd = n / pows10[d - j - 1] % 10 | 0;\r\n } else {\r\n ni = mathceil((i + 1) / LOG_BASE);\r\n\r\n if (ni >= xc.length) {\r\n\r\n if (r) {\r\n\r\n // Needed by sqrt.\r\n for (; xc.length <= ni; xc.push(0));\r\n n = rd = 0;\r\n d = 1;\r\n i %= LOG_BASE;\r\n j = i - LOG_BASE + 1;\r\n } else {\r\n break out;\r\n }\r\n } else {\r\n n = k = xc[ni];\r\n\r\n // Get the number of digits of n.\r\n for (d = 1; k >= 10; k /= 10, d++);\r\n\r\n // Get the index of rd within n.\r\n i %= LOG_BASE;\r\n\r\n // Get the index of rd within n, adjusted for leading zeros.\r\n // The number of leading zeros of n is given by LOG_BASE - d.\r\n j = i - LOG_BASE + d;\r\n\r\n // Get the rounding digit at index j of n.\r\n rd = j < 0 ? 0 : n / pows10[d - j - 1] % 10 | 0;\r\n }\r\n }\r\n\r\n r = r || sd < 0 ||\r\n\r\n // Are there any non-zero digits after the rounding digit?\r\n // The expression n % pows10[d - j - 1] returns all digits of n to the right\r\n // of the digit at j, e.g. if n is 908714 and j is 2, the expression gives 714.\r\n xc[ni + 1] != null || (j < 0 ? n : n % pows10[d - j - 1]);\r\n\r\n r = rm < 4\r\n ? (rd || r) && (rm == 0 || rm == (x.s < 0 ? 3 : 2))\r\n : rd > 5 || rd == 5 && (rm == 4 || r || rm == 6 &&\r\n\r\n // Check whether the digit to the left of the rounding digit is odd.\r\n ((i > 0 ? j > 0 ? n / pows10[d - j] : 0 : xc[ni - 1]) % 10) & 1 ||\r\n rm == (x.s < 0 ? 8 : 7));\r\n\r\n if (sd < 1 || !xc[0]) {\r\n xc.length = 0;\r\n\r\n if (r) {\r\n\r\n // Convert sd to decimal places.\r\n sd -= x.e + 1;\r\n\r\n // 1, 0.1, 0.01, 0.001, 0.0001 etc.\r\n xc[0] = pows10[(LOG_BASE - sd % LOG_BASE) % LOG_BASE];\r\n x.e = -sd || 0;\r\n } else {\r\n\r\n // Zero.\r\n xc[0] = x.e = 0;\r\n }\r\n\r\n return x;\r\n }\r\n\r\n // Remove excess digits.\r\n if (i == 0) {\r\n xc.length = ni;\r\n k = 1;\r\n ni--;\r\n } else {\r\n xc.length = ni + 1;\r\n k = pows10[LOG_BASE - i];\r\n\r\n // E.g. 56700 becomes 56000 if 7 is the rounding digit.\r\n // j > 0 means i > number of leading zeros of n.\r\n xc[ni] = j > 0 ? mathfloor(n / pows10[d - j] % pows10[j]) * k : 0;\r\n }\r\n\r\n // Round up?\r\n if (r) {\r\n\r\n for (; ;) {\r\n\r\n // If the digit to be rounded up is in the first element of xc...\r\n if (ni == 0) {\r\n\r\n // i will be the length of xc[0] before k is added.\r\n for (i = 1, j = xc[0]; j >= 10; j /= 10, i++);\r\n j = xc[0] += k;\r\n for (k = 1; j >= 10; j /= 10, k++);\r\n\r\n // if i != k the length has increased.\r\n if (i != k) {\r\n x.e++;\r\n if (xc[0] == BASE) xc[0] = 1;\r\n }\r\n\r\n break;\r\n } else {\r\n xc[ni] += k;\r\n if (xc[ni] != BASE) break;\r\n xc[ni--] = 0;\r\n k = 1;\r\n }\r\n }\r\n }\r\n\r\n // Remove trailing zeros.\r\n for (i = xc.length; xc[--i] === 0; xc.pop());\r\n }\r\n\r\n // Overflow? Infinity.\r\n if (x.e > MAX_EXP) {\r\n x.c = x.e = null;\r\n\r\n // Underflow? Zero.\r\n } else if (x.e < MIN_EXP) {\r\n x.c = [x.e = 0];\r\n }\r\n }\r\n\r\n return x;\r\n }\r\n\r\n\r\n function valueOf(n) {\r\n var str,\r\n e = n.e;\r\n\r\n if (e === null) return n.toString();\r\n\r\n str = coeffToString(n.c);\r\n\r\n str = e <= TO_EXP_NEG || e >= TO_EXP_POS\r\n ? toExponential(str, e)\r\n : toFixedPoint(str, e, '0');\r\n\r\n return n.s < 0 ? '-' + str : str;\r\n }\r\n\r\n\r\n // PROTOTYPE/INSTANCE METHODS\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the absolute value of this BigNumber.\r\n */\r\n P.absoluteValue = P.abs = function () {\r\n var x = new BigNumber(this);\r\n if (x.s < 0) x.s = 1;\r\n return x;\r\n };\r\n\r\n\r\n /*\r\n * Return\r\n * 1 if the value of this BigNumber is greater than the value of BigNumber(y, b),\r\n * -1 if the value of this BigNumber is less than the value of BigNumber(y, b),\r\n * 0 if they have the same value,\r\n * or null if the value of either is NaN.\r\n */\r\n P.comparedTo = function (y, b) {\r\n return compare(this, new BigNumber(y, b));\r\n };\r\n\r\n\r\n /*\r\n * If dp is undefined or null or true or false, return the number of decimal places of the\r\n * value of this BigNumber, or null if the value of this BigNumber is ±Infinity or NaN.\r\n *\r\n * Otherwise, if dp is a number, return a new BigNumber whose value is the value of this\r\n * BigNumber rounded to a maximum of dp decimal places using rounding mode rm, or\r\n * ROUNDING_MODE if rm is omitted.\r\n *\r\n * [dp] {number} Decimal places: integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n */\r\n P.decimalPlaces = P.dp = function (dp, rm) {\r\n var c, n, v,\r\n x = this;\r\n\r\n if (dp != null) {\r\n intCheck(dp, 0, MAX);\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n\r\n return round(new BigNumber(x), dp + x.e + 1, rm);\r\n }\r\n\r\n if (!(c = x.c)) return null;\r\n n = ((v = c.length - 1) - bitFloor(this.e / LOG_BASE)) * LOG_BASE;\r\n\r\n // Subtract the number of trailing zeros of the last number.\r\n if (v = c[v]) for (; v % 10 == 0; v /= 10, n--);\r\n if (n < 0) n = 0;\r\n\r\n return n;\r\n };\r\n\r\n\r\n /*\r\n * n / 0 = I\r\n * n / N = N\r\n * n / I = 0\r\n * 0 / n = 0\r\n * 0 / 0 = N\r\n * 0 / N = N\r\n * 0 / I = 0\r\n * N / n = N\r\n * N / 0 = N\r\n * N / N = N\r\n * N / I = N\r\n * I / n = I\r\n * I / 0 = I\r\n * I / N = N\r\n * I / I = N\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber divided by the value of\r\n * BigNumber(y, b), rounded according to DECIMAL_PLACES and ROUNDING_MODE.\r\n */\r\n P.dividedBy = P.div = function (y, b) {\r\n return div(this, new BigNumber(y, b), DECIMAL_PLACES, ROUNDING_MODE);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the integer part of dividing the value of this\r\n * BigNumber by the value of BigNumber(y, b).\r\n */\r\n P.dividedToIntegerBy = P.idiv = function (y, b) {\r\n return div(this, new BigNumber(y, b), 0, 1);\r\n };\r\n\r\n\r\n /*\r\n * Return a BigNumber whose value is the value of this BigNumber exponentiated by n.\r\n *\r\n * If m is present, return the result modulo m.\r\n * If n is negative round according to DECIMAL_PLACES and ROUNDING_MODE.\r\n * If POW_PRECISION is non-zero and m is not present, round to POW_PRECISION using ROUNDING_MODE.\r\n *\r\n * The modular power operation works efficiently when x, n, and m are integers, otherwise it\r\n * is equivalent to calculating x.exponentiatedBy(n).modulo(m) with a POW_PRECISION of 0.\r\n *\r\n * n {number|string|BigNumber} The exponent. An integer.\r\n * [m] {number|string|BigNumber} The modulus.\r\n *\r\n * '[BigNumber Error] Exponent not an integer: {n}'\r\n */\r\n P.exponentiatedBy = P.pow = function (n, m) {\r\n var half, isModExp, i, k, more, nIsBig, nIsNeg, nIsOdd, y,\r\n x = this;\r\n\r\n n = new BigNumber(n);\r\n\r\n // Allow NaN and ±Infinity, but not other non-integers.\r\n if (n.c && !n.isInteger()) {\r\n throw Error\r\n (bignumberError + 'Exponent not an integer: ' + valueOf(n));\r\n }\r\n\r\n if (m != null) m = new BigNumber(m);\r\n\r\n // Exponent of MAX_SAFE_INTEGER is 15.\r\n nIsBig = n.e > 14;\r\n\r\n // If x is NaN, ±Infinity, ±0 or ±1, or n is ±Infinity, NaN or ±0.\r\n if (!x.c || !x.c[0] || x.c[0] == 1 && !x.e && x.c.length == 1 || !n.c || !n.c[0]) {\r\n\r\n // The sign of the result of pow when x is negative depends on the evenness of n.\r\n // If +n overflows to ±Infinity, the evenness of n would be not be known.\r\n y = new BigNumber(Math.pow(+valueOf(x), nIsBig ? 2 - isOdd(n) : +valueOf(n)));\r\n return m ? y.mod(m) : y;\r\n }\r\n\r\n nIsNeg = n.s < 0;\r\n\r\n if (m) {\r\n\r\n // x % m returns NaN if abs(m) is zero, or m is NaN.\r\n if (m.c ? !m.c[0] : !m.s) return new BigNumber(NaN);\r\n\r\n isModExp = !nIsNeg && x.isInteger() && m.isInteger();\r\n\r\n if (isModExp) x = x.mod(m);\r\n\r\n // Overflow to ±Infinity: >=2**1e10 or >=1.0000024**1e15.\r\n // Underflow to ±0: <=0.79**1e10 or <=0.9999975**1e15.\r\n } else if (n.e > 9 && (x.e > 0 || x.e < -1 || (x.e == 0\r\n // [1, 240000000]\r\n ? x.c[0] > 1 || nIsBig && x.c[1] >= 24e7\r\n // [80000000000000] [99999750000000]\r\n : x.c[0] < 8e13 || nIsBig && x.c[0] <= 9999975e7))) {\r\n\r\n // If x is negative and n is odd, k = -0, else k = 0.\r\n k = x.s < 0 && isOdd(n) ? -0 : 0;\r\n\r\n // If x >= 1, k = ±Infinity.\r\n if (x.e > -1) k = 1 / k;\r\n\r\n // If n is negative return ±0, else return ±Infinity.\r\n return new BigNumber(nIsNeg ? 1 / k : k);\r\n\r\n } else if (POW_PRECISION) {\r\n\r\n // Truncating each coefficient array to a length of k after each multiplication\r\n // equates to truncating significant digits to POW_PRECISION + [28, 41],\r\n // i.e. there will be a minimum of 28 guard digits retained.\r\n k = mathceil(POW_PRECISION / LOG_BASE + 2);\r\n }\r\n\r\n if (nIsBig) {\r\n half = new BigNumber(0.5);\r\n if (nIsNeg) n.s = 1;\r\n nIsOdd = isOdd(n);\r\n } else {\r\n i = Math.abs(+valueOf(n));\r\n nIsOdd = i % 2;\r\n }\r\n\r\n y = new BigNumber(ONE);\r\n\r\n // Performs 54 loop iterations for n of 9007199254740991.\r\n for (; ;) {\r\n\r\n if (nIsOdd) {\r\n y = y.times(x);\r\n if (!y.c) break;\r\n\r\n if (k) {\r\n if (y.c.length > k) y.c.length = k;\r\n } else if (isModExp) {\r\n y = y.mod(m); //y = y.minus(div(y, m, 0, MODULO_MODE).times(m));\r\n }\r\n }\r\n\r\n if (i) {\r\n i = mathfloor(i / 2);\r\n if (i === 0) break;\r\n nIsOdd = i % 2;\r\n } else {\r\n n = n.times(half);\r\n round(n, n.e + 1, 1);\r\n\r\n if (n.e > 14) {\r\n nIsOdd = isOdd(n);\r\n } else {\r\n i = +valueOf(n);\r\n if (i === 0) break;\r\n nIsOdd = i % 2;\r\n }\r\n }\r\n\r\n x = x.times(x);\r\n\r\n if (k) {\r\n if (x.c && x.c.length > k) x.c.length = k;\r\n } else if (isModExp) {\r\n x = x.mod(m); //x = x.minus(div(x, m, 0, MODULO_MODE).times(m));\r\n }\r\n }\r\n\r\n if (isModExp) return y;\r\n if (nIsNeg) y = ONE.div(y);\r\n\r\n return m ? y.mod(m) : k ? round(y, POW_PRECISION, ROUNDING_MODE, more) : y;\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the value of this BigNumber rounded to an integer\r\n * using rounding mode rm, or ROUNDING_MODE if rm is omitted.\r\n *\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {rm}'\r\n */\r\n P.integerValue = function (rm) {\r\n var n = new BigNumber(this);\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n return round(n, n.e + 1, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is equal to the value of BigNumber(y, b),\r\n * otherwise return false.\r\n */\r\n P.isEqualTo = P.eq = function (y, b) {\r\n return compare(this, new BigNumber(y, b)) === 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is a finite number, otherwise return false.\r\n */\r\n P.isFinite = function () {\r\n return !!this.c;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is greater than the value of BigNumber(y, b),\r\n * otherwise return false.\r\n */\r\n P.isGreaterThan = P.gt = function (y, b) {\r\n return compare(this, new BigNumber(y, b)) > 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is greater than or equal to the value of\r\n * BigNumber(y, b), otherwise return false.\r\n */\r\n P.isGreaterThanOrEqualTo = P.gte = function (y, b) {\r\n return (b = compare(this, new BigNumber(y, b))) === 1 || b === 0;\r\n\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is an integer, otherwise return false.\r\n */\r\n P.isInteger = function () {\r\n return !!this.c && bitFloor(this.e / LOG_BASE) > this.c.length - 2;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is less than the value of BigNumber(y, b),\r\n * otherwise return false.\r\n */\r\n P.isLessThan = P.lt = function (y, b) {\r\n return compare(this, new BigNumber(y, b)) < 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is less than or equal to the value of\r\n * BigNumber(y, b), otherwise return false.\r\n */\r\n P.isLessThanOrEqualTo = P.lte = function (y, b) {\r\n return (b = compare(this, new BigNumber(y, b))) === -1 || b === 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is NaN, otherwise return false.\r\n */\r\n P.isNaN = function () {\r\n return !this.s;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is negative, otherwise return false.\r\n */\r\n P.isNegative = function () {\r\n return this.s < 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is positive, otherwise return false.\r\n */\r\n P.isPositive = function () {\r\n return this.s > 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is 0 or -0, otherwise return false.\r\n */\r\n P.isZero = function () {\r\n return !!this.c && this.c[0] == 0;\r\n };\r\n\r\n\r\n /*\r\n * n - 0 = n\r\n * n - N = N\r\n * n - I = -I\r\n * 0 - n = -n\r\n * 0 - 0 = 0\r\n * 0 - N = N\r\n * 0 - I = -I\r\n * N - n = N\r\n * N - 0 = N\r\n * N - N = N\r\n * N - I = N\r\n * I - n = I\r\n * I - 0 = I\r\n * I - N = N\r\n * I - I = N\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber minus the value of\r\n * BigNumber(y, b).\r\n */\r\n P.minus = function (y, b) {\r\n var i, j, t, xLTy,\r\n x = this,\r\n a = x.s;\r\n\r\n y = new BigNumber(y, b);\r\n b = y.s;\r\n\r\n // Either NaN?\r\n if (!a || !b) return new BigNumber(NaN);\r\n\r\n // Signs differ?\r\n if (a != b) {\r\n y.s = -b;\r\n return x.plus(y);\r\n }\r\n\r\n var xe = x.e / LOG_BASE,\r\n ye = y.e / LOG_BASE,\r\n xc = x.c,\r\n yc = y.c;\r\n\r\n if (!xe || !ye) {\r\n\r\n // Either Infinity?\r\n if (!xc || !yc) return xc ? (y.s = -b, y) : new BigNumber(yc ? x : NaN);\r\n\r\n // Either zero?\r\n if (!xc[0] || !yc[0]) {\r\n\r\n // Return y if y is non-zero, x if x is non-zero, or zero if both are zero.\r\n return yc[0] ? (y.s = -b, y) : new BigNumber(xc[0] ? x :\r\n\r\n // IEEE 754 (2008) 6.3: n - n = -0 when rounding to -Infinity\r\n ROUNDING_MODE == 3 ? -0 : 0);\r\n }\r\n }\r\n\r\n xe = bitFloor(xe);\r\n ye = bitFloor(ye);\r\n xc = xc.slice();\r\n\r\n // Determine which is the bigger number.\r\n if (a = xe - ye) {\r\n\r\n if (xLTy = a < 0) {\r\n a = -a;\r\n t = xc;\r\n } else {\r\n ye = xe;\r\n t = yc;\r\n }\r\n\r\n t.reverse();\r\n\r\n // Prepend zeros to equalise exponents.\r\n for (b = a; b--; t.push(0));\r\n t.reverse();\r\n } else {\r\n\r\n // Exponents equal. Check digit by digit.\r\n j = (xLTy = (a = xc.length) < (b = yc.length)) ? a : b;\r\n\r\n for (a = b = 0; b < j; b++) {\r\n\r\n if (xc[b] != yc[b]) {\r\n xLTy = xc[b] < yc[b];\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // x < y? Point xc to the array of the bigger number.\r\n if (xLTy) t = xc, xc = yc, yc = t, y.s = -y.s;\r\n\r\n b = (j = yc.length) - (i = xc.length);\r\n\r\n // Append zeros to xc if shorter.\r\n // No need to add zeros to yc if shorter as subtract only needs to start at yc.length.\r\n if (b > 0) for (; b--; xc[i++] = 0);\r\n b = BASE - 1;\r\n\r\n // Subtract yc from xc.\r\n for (; j > a;) {\r\n\r\n if (xc[--j] < yc[j]) {\r\n for (i = j; i && !xc[--i]; xc[i] = b);\r\n --xc[i];\r\n xc[j] += BASE;\r\n }\r\n\r\n xc[j] -= yc[j];\r\n }\r\n\r\n // Remove leading zeros and adjust exponent accordingly.\r\n for (; xc[0] == 0; xc.splice(0, 1), --ye);\r\n\r\n // Zero?\r\n if (!xc[0]) {\r\n\r\n // Following IEEE 754 (2008) 6.3,\r\n // n - n = +0 but n - n = -0 when rounding towards -Infinity.\r\n y.s = ROUNDING_MODE == 3 ? -1 : 1;\r\n y.c = [y.e = 0];\r\n return y;\r\n }\r\n\r\n // No need to check for Infinity as +x - +y != Infinity && -x - -y != Infinity\r\n // for finite x and y.\r\n return normalise(y, xc, ye);\r\n };\r\n\r\n\r\n /*\r\n * n % 0 = N\r\n * n % N = N\r\n * n % I = n\r\n * 0 % n = 0\r\n * -0 % n = -0\r\n * 0 % 0 = N\r\n * 0 % N = N\r\n * 0 % I = 0\r\n * N % n = N\r\n * N % 0 = N\r\n * N % N = N\r\n * N % I = N\r\n * I % n = N\r\n * I % 0 = N\r\n * I % N = N\r\n * I % I = N\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber modulo the value of\r\n * BigNumber(y, b). The result depends on the value of MODULO_MODE.\r\n */\r\n P.modulo = P.mod = function (y, b) {\r\n var q, s,\r\n x = this;\r\n\r\n y = new BigNumber(y, b);\r\n\r\n // Return NaN if x is Infinity or NaN, or y is NaN or zero.\r\n if (!x.c || !y.s || y.c && !y.c[0]) {\r\n return new BigNumber(NaN);\r\n\r\n // Return x if y is Infinity or x is zero.\r\n } else if (!y.c || x.c && !x.c[0]) {\r\n return new BigNumber(x);\r\n }\r\n\r\n if (MODULO_MODE == 9) {\r\n\r\n // Euclidian division: q = sign(y) * floor(x / abs(y))\r\n // r = x - qy where 0 <= r < abs(y)\r\n s = y.s;\r\n y.s = 1;\r\n q = div(x, y, 0, 3);\r\n y.s = s;\r\n q.s *= s;\r\n } else {\r\n q = div(x, y, 0, MODULO_MODE);\r\n }\r\n\r\n y = x.minus(q.times(y));\r\n\r\n // To match JavaScript %, ensure sign of zero is sign of dividend.\r\n if (!y.c[0] && MODULO_MODE == 1) y.s = x.s;\r\n\r\n return y;\r\n };\r\n\r\n\r\n /*\r\n * n * 0 = 0\r\n * n * N = N\r\n * n * I = I\r\n * 0 * n = 0\r\n * 0 * 0 = 0\r\n * 0 * N = N\r\n * 0 * I = N\r\n * N * n = N\r\n * N * 0 = N\r\n * N * N = N\r\n * N * I = N\r\n * I * n = I\r\n * I * 0 = N\r\n * I * N = N\r\n * I * I = I\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber multiplied by the value\r\n * of BigNumber(y, b).\r\n */\r\n P.multipliedBy = P.times = function (y, b) {\r\n var c, e, i, j, k, m, xcL, xlo, xhi, ycL, ylo, yhi, zc,\r\n base, sqrtBase,\r\n x = this,\r\n xc = x.c,\r\n yc = (y = new BigNumber(y, b)).c;\r\n\r\n // Either NaN, ±Infinity or ±0?\r\n if (!xc || !yc || !xc[0] || !yc[0]) {\r\n\r\n // Return NaN if either is NaN, or one is 0 and the other is Infinity.\r\n if (!x.s || !y.s || xc && !xc[0] && !yc || yc && !yc[0] && !xc) {\r\n y.c = y.e = y.s = null;\r\n } else {\r\n y.s *= x.s;\r\n\r\n // Return ±Infinity if either is ±Infinity.\r\n if (!xc || !yc) {\r\n y.c = y.e = null;\r\n\r\n // Return ±0 if either is ±0.\r\n } else {\r\n y.c = [0];\r\n y.e = 0;\r\n }\r\n }\r\n\r\n return y;\r\n }\r\n\r\n e = bitFloor(x.e / LOG_BASE) + bitFloor(y.e / LOG_BASE);\r\n y.s *= x.s;\r\n xcL = xc.length;\r\n ycL = yc.length;\r\n\r\n // Ensure xc points to longer array and xcL to its length.\r\n if (xcL < ycL) zc = xc, xc = yc, yc = zc, i = xcL, xcL = ycL, ycL = i;\r\n\r\n // Initialise the result array with zeros.\r\n for (i = xcL + ycL, zc = []; i--; zc.push(0));\r\n\r\n base = BASE;\r\n sqrtBase = SQRT_BASE;\r\n\r\n for (i = ycL; --i >= 0;) {\r\n c = 0;\r\n ylo = yc[i] % sqrtBase;\r\n yhi = yc[i] / sqrtBase | 0;\r\n\r\n for (k = xcL, j = i + k; j > i;) {\r\n xlo = xc[--k] % sqrtBase;\r\n xhi = xc[k] / sqrtBase | 0;\r\n m = yhi * xlo + xhi * ylo;\r\n xlo = ylo * xlo + ((m % sqrtBase) * sqrtBase) + zc[j] + c;\r\n c = (xlo / base | 0) + (m / sqrtBase | 0) + yhi * xhi;\r\n zc[j--] = xlo % base;\r\n }\r\n\r\n zc[j] = c;\r\n }\r\n\r\n if (c) {\r\n ++e;\r\n } else {\r\n zc.splice(0, 1);\r\n }\r\n\r\n return normalise(y, zc, e);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the value of this BigNumber negated,\r\n * i.e. multiplied by -1.\r\n */\r\n P.negated = function () {\r\n var x = new BigNumber(this);\r\n x.s = -x.s || null;\r\n return x;\r\n };\r\n\r\n\r\n /*\r\n * n + 0 = n\r\n * n + N = N\r\n * n + I = I\r\n * 0 + n = n\r\n * 0 + 0 = 0\r\n * 0 + N = N\r\n * 0 + I = I\r\n * N + n = N\r\n * N + 0 = N\r\n * N + N = N\r\n * N + I = N\r\n * I + n = I\r\n * I + 0 = I\r\n * I + N = N\r\n * I + I = I\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber plus the value of\r\n * BigNumber(y, b).\r\n */\r\n P.plus = function (y, b) {\r\n var t,\r\n x = this,\r\n a = x.s;\r\n\r\n y = new BigNumber(y, b);\r\n b = y.s;\r\n\r\n // Either NaN?\r\n if (!a || !b) return new BigNumber(NaN);\r\n\r\n // Signs differ?\r\n if (a != b) {\r\n y.s = -b;\r\n return x.minus(y);\r\n }\r\n\r\n var xe = x.e / LOG_BASE,\r\n ye = y.e / LOG_BASE,\r\n xc = x.c,\r\n yc = y.c;\r\n\r\n if (!xe || !ye) {\r\n\r\n // Return ±Infinity if either ±Infinity.\r\n if (!xc || !yc) return new BigNumber(a / 0);\r\n\r\n // Either zero?\r\n // Return y if y is non-zero, x if x is non-zero, or zero if both are zero.\r\n if (!xc[0] || !yc[0]) return yc[0] ? y : new BigNumber(xc[0] ? x : a * 0);\r\n }\r\n\r\n xe = bitFloor(xe);\r\n ye = bitFloor(ye);\r\n xc = xc.slice();\r\n\r\n // Prepend zeros to equalise exponents. Faster to use reverse then do unshifts.\r\n if (a = xe - ye) {\r\n if (a > 0) {\r\n ye = xe;\r\n t = yc;\r\n } else {\r\n a = -a;\r\n t = xc;\r\n }\r\n\r\n t.reverse();\r\n for (; a--; t.push(0));\r\n t.reverse();\r\n }\r\n\r\n a = xc.length;\r\n b = yc.length;\r\n\r\n // Point xc to the longer array, and b to the shorter length.\r\n if (a - b < 0) t = yc, yc = xc, xc = t, b = a;\r\n\r\n // Only start adding at yc.length - 1 as the further digits of xc can be ignored.\r\n for (a = 0; b;) {\r\n a = (xc[--b] = xc[b] + yc[b] + a) / BASE | 0;\r\n xc[b] = BASE === xc[b] ? 0 : xc[b] % BASE;\r\n }\r\n\r\n if (a) {\r\n xc = [a].concat(xc);\r\n ++ye;\r\n }\r\n\r\n // No need to check for zero, as +x + +y != 0 && -x + -y != 0\r\n // ye = MAX_EXP + 1 possible\r\n return normalise(y, xc, ye);\r\n };\r\n\r\n\r\n /*\r\n * If sd is undefined or null or true or false, return the number of significant digits of\r\n * the value of this BigNumber, or null if the value of this BigNumber is ±Infinity or NaN.\r\n * If sd is true include integer-part trailing zeros in the count.\r\n *\r\n * Otherwise, if sd is a number, return a new BigNumber whose value is the value of this\r\n * BigNumber rounded to a maximum of sd significant digits using rounding mode rm, or\r\n * ROUNDING_MODE if rm is omitted.\r\n *\r\n * sd {number|boolean} number: significant digits: integer, 1 to MAX inclusive.\r\n * boolean: whether to count integer-part trailing zeros: true or false.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {sd|rm}'\r\n */\r\n P.precision = P.sd = function (sd, rm) {\r\n var c, n, v,\r\n x = this;\r\n\r\n if (sd != null && sd !== !!sd) {\r\n intCheck(sd, 1, MAX);\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n\r\n return round(new BigNumber(x), sd, rm);\r\n }\r\n\r\n if (!(c = x.c)) return null;\r\n v = c.length - 1;\r\n n = v * LOG_BASE + 1;\r\n\r\n if (v = c[v]) {\r\n\r\n // Subtract the number of trailing zeros of the last element.\r\n for (; v % 10 == 0; v /= 10, n--);\r\n\r\n // Add the number of digits of the first element.\r\n for (v = c[0]; v >= 10; v /= 10, n++);\r\n }\r\n\r\n if (sd && x.e + 1 > n) n = x.e + 1;\r\n\r\n return n;\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the value of this BigNumber shifted by k places\r\n * (powers of 10). Shift to the right if n > 0, and to the left if n < 0.\r\n *\r\n * k {number} Integer, -MAX_SAFE_INTEGER to MAX_SAFE_INTEGER inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {k}'\r\n */\r\n P.shiftedBy = function (k) {\r\n intCheck(k, -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER);\r\n return this.times('1e' + k);\r\n };\r\n\r\n\r\n /*\r\n * sqrt(-n) = N\r\n * sqrt(N) = N\r\n * sqrt(-I) = N\r\n * sqrt(I) = I\r\n * sqrt(0) = 0\r\n * sqrt(-0) = -0\r\n *\r\n * Return a new BigNumber whose value is the square root of the value of this BigNumber,\r\n * rounded according to DECIMAL_PLACES and ROUNDING_MODE.\r\n */\r\n P.squareRoot = P.sqrt = function () {\r\n var m, n, r, rep, t,\r\n x = this,\r\n c = x.c,\r\n s = x.s,\r\n e = x.e,\r\n dp = DECIMAL_PLACES + 4,\r\n half = new BigNumber('0.5');\r\n\r\n // Negative/NaN/Infinity/zero?\r\n if (s !== 1 || !c || !c[0]) {\r\n return new BigNumber(!s || s < 0 && (!c || c[0]) ? NaN : c ? x : 1 / 0);\r\n }\r\n\r\n // Initial estimate.\r\n s = Math.sqrt(+valueOf(x));\r\n\r\n // Math.sqrt underflow/overflow?\r\n // Pass x to Math.sqrt as integer, then adjust the exponent of the result.\r\n if (s == 0 || s == 1 / 0) {\r\n n = coeffToString(c);\r\n if ((n.length + e) % 2 == 0) n += '0';\r\n s = Math.sqrt(+n);\r\n e = bitFloor((e + 1) / 2) - (e < 0 || e % 2);\r\n\r\n if (s == 1 / 0) {\r\n n = '5e' + e;\r\n } else {\r\n n = s.toExponential();\r\n n = n.slice(0, n.indexOf('e') + 1) + e;\r\n }\r\n\r\n r = new BigNumber(n);\r\n } else {\r\n r = new BigNumber(s + '');\r\n }\r\n\r\n // Check for zero.\r\n // r could be zero if MIN_EXP is changed after the this value was created.\r\n // This would cause a division by zero (x/t) and hence Infinity below, which would cause\r\n // coeffToString to throw.\r\n if (r.c[0]) {\r\n e = r.e;\r\n s = e + dp;\r\n if (s < 3) s = 0;\r\n\r\n // Newton-Raphson iteration.\r\n for (; ;) {\r\n t = r;\r\n r = half.times(t.plus(div(x, t, dp, 1)));\r\n\r\n if (coeffToString(t.c).slice(0, s) === (n = coeffToString(r.c)).slice(0, s)) {\r\n\r\n // The exponent of r may here be one less than the final result exponent,\r\n // e.g 0.0009999 (e-4) --> 0.001 (e-3), so adjust s so the rounding digits\r\n // are indexed correctly.\r\n if (r.e < e) --s;\r\n n = n.slice(s - 3, s + 1);\r\n\r\n // The 4th rounding digit may be in error by -1 so if the 4 rounding digits\r\n // are 9999 or 4999 (i.e. approaching a rounding boundary) continue the\r\n // iteration.\r\n if (n == '9999' || !rep && n == '4999') {\r\n\r\n // On the first iteration only, check to see if rounding up gives the\r\n // exact result as the nines may infinitely repeat.\r\n if (!rep) {\r\n round(t, t.e + DECIMAL_PLACES + 2, 0);\r\n\r\n if (t.times(t).eq(x)) {\r\n r = t;\r\n break;\r\n }\r\n }\r\n\r\n dp += 4;\r\n s += 4;\r\n rep = 1;\r\n } else {\r\n\r\n // If rounding digits are null, 0{0,4} or 50{0,3}, check for exact\r\n // result. If not, then there are further digits and m will be truthy.\r\n if (!+n || !+n.slice(1) && n.charAt(0) == '5') {\r\n\r\n // Truncate to the first rounding digit.\r\n round(r, r.e + DECIMAL_PLACES + 2, 1);\r\n m = !r.times(r).eq(x);\r\n }\r\n\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n return round(r, r.e + DECIMAL_PLACES + 1, ROUNDING_MODE, m);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in exponential notation and\r\n * rounded using ROUNDING_MODE to dp fixed decimal places.\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n */\r\n P.toExponential = function (dp, rm) {\r\n if (dp != null) {\r\n intCheck(dp, 0, MAX);\r\n dp++;\r\n }\r\n return format(this, dp, rm, 1);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in fixed-point notation rounding\r\n * to dp fixed decimal places using rounding mode rm, or ROUNDING_MODE if rm is omitted.\r\n *\r\n * Note: as with JavaScript's number type, (-0).toFixed(0) is '0',\r\n * but e.g. (-0.00001).toFixed(0) is '-0'.\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n */\r\n P.toFixed = function (dp, rm) {\r\n if (dp != null) {\r\n intCheck(dp, 0, MAX);\r\n dp = dp + this.e + 1;\r\n }\r\n return format(this, dp, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in fixed-point notation rounded\r\n * using rm or ROUNDING_MODE to dp decimal places, and formatted according to the properties\r\n * of the format or FORMAT object (see BigNumber.set).\r\n *\r\n * The formatting object may contain some or all of the properties shown below.\r\n *\r\n * FORMAT = {\r\n * prefix: '',\r\n * groupSize: 3,\r\n * secondaryGroupSize: 0,\r\n * groupSeparator: ',',\r\n * decimalSeparator: '.',\r\n * fractionGroupSize: 0,\r\n * fractionGroupSeparator: '\\xA0', // non-breaking space\r\n * suffix: ''\r\n * };\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n * [format] {object} Formatting options. See FORMAT pbject above.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n * '[BigNumber Error] Argument not an object: {format}'\r\n */\r\n P.toFormat = function (dp, rm, format) {\r\n var str,\r\n x = this;\r\n\r\n if (format == null) {\r\n if (dp != null && rm && typeof rm == 'object') {\r\n format = rm;\r\n rm = null;\r\n } else if (dp && typeof dp == 'object') {\r\n format = dp;\r\n dp = rm = null;\r\n } else {\r\n format = FORMAT;\r\n }\r\n } else if (typeof format != 'object') {\r\n throw Error\r\n (bignumberError + 'Argument not an object: ' + format);\r\n }\r\n\r\n str = x.toFixed(dp, rm);\r\n\r\n if (x.c) {\r\n var i,\r\n arr = str.split('.'),\r\n g1 = +format.groupSize,\r\n g2 = +format.secondaryGroupSize,\r\n groupSeparator = format.groupSeparator || '',\r\n intPart = arr[0],\r\n fractionPart = arr[1],\r\n isNeg = x.s < 0,\r\n intDigits = isNeg ? intPart.slice(1) : intPart,\r\n len = intDigits.length;\r\n\r\n if (g2) i = g1, g1 = g2, g2 = i, len -= i;\r\n\r\n if (g1 > 0 && len > 0) {\r\n i = len % g1 || g1;\r\n intPart = intDigits.substr(0, i);\r\n for (; i < len; i += g1) intPart += groupSeparator + intDigits.substr(i, g1);\r\n if (g2 > 0) intPart += groupSeparator + intDigits.slice(i);\r\n if (isNeg) intPart = '-' + intPart;\r\n }\r\n\r\n str = fractionPart\r\n ? intPart + (format.decimalSeparator || '') + ((g2 = +format.fractionGroupSize)\r\n ? fractionPart.replace(new RegExp('\\\\d{' + g2 + '}\\\\B', 'g'),\r\n '$&' + (format.fractionGroupSeparator || ''))\r\n : fractionPart)\r\n : intPart;\r\n }\r\n\r\n return (format.prefix || '') + str + (format.suffix || '');\r\n };\r\n\r\n\r\n /*\r\n * Return an array of two BigNumbers representing the value of this BigNumber as a simple\r\n * fraction with an integer numerator and an integer denominator.\r\n * The denominator will be a positive non-zero value less than or equal to the specified\r\n * maximum denominator. If a maximum denominator is not specified, the denominator will be\r\n * the lowest value necessary to represent the number exactly.\r\n *\r\n * [md] {number|string|BigNumber} Integer >= 1, or Infinity. The maximum denominator.\r\n *\r\n * '[BigNumber Error] Argument {not an integer|out of range} : {md}'\r\n */\r\n P.toFraction = function (md) {\r\n var d, d0, d1, d2, e, exp, n, n0, n1, q, r, s,\r\n x = this,\r\n xc = x.c;\r\n\r\n if (md != null) {\r\n n = new BigNumber(md);\r\n\r\n // Throw if md is less than one or is not an integer, unless it is Infinity.\r\n if (!n.isInteger() && (n.c || n.s !== 1) || n.lt(ONE)) {\r\n throw Error\r\n (bignumberError + 'Argument ' +\r\n (n.isInteger() ? 'out of range: ' : 'not an integer: ') + valueOf(n));\r\n }\r\n }\r\n\r\n if (!xc) return new BigNumber(x);\r\n\r\n d = new BigNumber(ONE);\r\n n1 = d0 = new BigNumber(ONE);\r\n d1 = n0 = new BigNumber(ONE);\r\n s = coeffToString(xc);\r\n\r\n // Determine initial denominator.\r\n // d is a power of 10 and the minimum max denominator that specifies the value exactly.\r\n e = d.e = s.length - x.e - 1;\r\n d.c[0] = POWS_TEN[(exp = e % LOG_BASE) < 0 ? LOG_BASE + exp : exp];\r\n md = !md || n.comparedTo(d) > 0 ? (e > 0 ? d : n1) : n;\r\n\r\n exp = MAX_EXP;\r\n MAX_EXP = 1 / 0;\r\n n = new BigNumber(s);\r\n\r\n // n0 = d1 = 0\r\n n0.c[0] = 0;\r\n\r\n for (; ;) {\r\n q = div(n, d, 0, 1);\r\n d2 = d0.plus(q.times(d1));\r\n if (d2.comparedTo(md) == 1) break;\r\n d0 = d1;\r\n d1 = d2;\r\n n1 = n0.plus(q.times(d2 = n1));\r\n n0 = d2;\r\n d = n.minus(q.times(d2 = d));\r\n n = d2;\r\n }\r\n\r\n d2 = div(md.minus(d0), d1, 0, 1);\r\n n0 = n0.plus(d2.times(n1));\r\n d0 = d0.plus(d2.times(d1));\r\n n0.s = n1.s = x.s;\r\n e = e * 2;\r\n\r\n // Determine which fraction is closer to x, n0/d0 or n1/d1\r\n r = div(n1, d1, e, ROUNDING_MODE).minus(x).abs().comparedTo(\r\n div(n0, d0, e, ROUNDING_MODE).minus(x).abs()) < 1 ? [n1, d1] : [n0, d0];\r\n\r\n MAX_EXP = exp;\r\n\r\n return r;\r\n };\r\n\r\n\r\n /*\r\n * Return the value of this BigNumber converted to a number primitive.\r\n */\r\n P.toNumber = function () {\r\n return +valueOf(this);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber rounded to sd significant digits\r\n * using rounding mode rm or ROUNDING_MODE. If sd is less than the number of digits\r\n * necessary to represent the integer part of the value in fixed-point notation, then use\r\n * exponential notation.\r\n *\r\n * [sd] {number} Significant digits. Integer, 1 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {sd|rm}'\r\n */\r\n P.toPrecision = function (sd, rm) {\r\n if (sd != null) intCheck(sd, 1, MAX);\r\n return format(this, sd, rm, 2);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in base b, or base 10 if b is\r\n * omitted. If a base is specified, including base 10, round according to DECIMAL_PLACES and\r\n * ROUNDING_MODE. If a base is not specified, and this BigNumber has a positive exponent\r\n * that is equal to or greater than TO_EXP_POS, or a negative exponent equal to or less than\r\n * TO_EXP_NEG, return exponential notation.\r\n *\r\n * [b] {number} Integer, 2 to ALPHABET.length inclusive.\r\n *\r\n * '[BigNumber Error] Base {not a primitive number|not an integer|out of range}: {b}'\r\n */\r\n P.toString = function (b) {\r\n var str,\r\n n = this,\r\n s = n.s,\r\n e = n.e;\r\n\r\n // Infinity or NaN?\r\n if (e === null) {\r\n if (s) {\r\n str = 'Infinity';\r\n if (s < 0) str = '-' + str;\r\n } else {\r\n str = 'NaN';\r\n }\r\n } else {\r\n if (b == null) {\r\n str = e <= TO_EXP_NEG || e >= TO_EXP_POS\r\n ? toExponential(coeffToString(n.c), e)\r\n : toFixedPoint(coeffToString(n.c), e, '0');\r\n } else if (b === 10 && alphabetHasNormalDecimalDigits) {\r\n n = round(new BigNumber(n), DECIMAL_PLACES + e + 1, ROUNDING_MODE);\r\n str = toFixedPoint(coeffToString(n.c), n.e, '0');\r\n } else {\r\n intCheck(b, 2, ALPHABET.length, 'Base');\r\n str = convertBase(toFixedPoint(coeffToString(n.c), e, '0'), 10, b, s, true);\r\n }\r\n\r\n if (s < 0 && n.c[0]) str = '-' + str;\r\n }\r\n\r\n return str;\r\n };\r\n\r\n\r\n /*\r\n * Return as toString, but do not accept a base argument, and include the minus sign for\r\n * negative zero.\r\n */\r\n P.valueOf = P.toJSON = function () {\r\n return valueOf(this);\r\n };\r\n\r\n\r\n P._isBigNumber = true;\r\n\r\n if (configObject != null) BigNumber.set(configObject);\r\n\r\n return BigNumber;\r\n }\r\n\r\n\r\n // PRIVATE HELPER FUNCTIONS\r\n\r\n // These functions don't need access to variables,\r\n // e.g. DECIMAL_PLACES, in the scope of the `clone` function above.\r\n\r\n\r\n function bitFloor(n) {\r\n var i = n | 0;\r\n return n > 0 || n === i ? i : i - 1;\r\n }\r\n\r\n\r\n // Return a coefficient array as a string of base 10 digits.\r\n function coeffToString(a) {\r\n var s, z,\r\n i = 1,\r\n j = a.length,\r\n r = a[0] + '';\r\n\r\n for (; i < j;) {\r\n s = a[i++] + '';\r\n z = LOG_BASE - s.length;\r\n for (; z--; s = '0' + s);\r\n r += s;\r\n }\r\n\r\n // Determine trailing zeros.\r\n for (j = r.length; r.charCodeAt(--j) === 48;);\r\n\r\n return r.slice(0, j + 1 || 1);\r\n }\r\n\r\n\r\n // Compare the value of BigNumbers x and y.\r\n function compare(x, y) {\r\n var a, b,\r\n xc = x.c,\r\n yc = y.c,\r\n i = x.s,\r\n j = y.s,\r\n k = x.e,\r\n l = y.e;\r\n\r\n // Either NaN?\r\n if (!i || !j) return null;\r\n\r\n a = xc && !xc[0];\r\n b = yc && !yc[0];\r\n\r\n // Either zero?\r\n if (a || b) return a ? b ? 0 : -j : i;\r\n\r\n // Signs differ?\r\n if (i != j) return i;\r\n\r\n a = i < 0;\r\n b = k == l;\r\n\r\n // Either Infinity?\r\n if (!xc || !yc) return b ? 0 : !xc ^ a ? 1 : -1;\r\n\r\n // Compare exponents.\r\n if (!b) return k > l ^ a ? 1 : -1;\r\n\r\n j = (k = xc.length) < (l = yc.length) ? k : l;\r\n\r\n // Compare digit by digit.\r\n for (i = 0; i < j; i++) if (xc[i] != yc[i]) return xc[i] > yc[i] ^ a ? 1 : -1;\r\n\r\n // Compare lengths.\r\n return k == l ? 0 : k > l ^ a ? 1 : -1;\r\n }\r\n\r\n\r\n /*\r\n * Check that n is a primitive number, an integer, and in range, otherwise throw.\r\n */\r\n function intCheck(n, min, max, name) {\r\n if (n < min || n > max || n !== mathfloor(n)) {\r\n throw Error\r\n (bignumberError + (name || 'Argument') + (typeof n == 'number'\r\n ? n < min || n > max ? ' out of range: ' : ' not an integer: '\r\n : ' not a primitive number: ') + String(n));\r\n }\r\n }\r\n\r\n\r\n // Assumes finite n.\r\n function isOdd(n) {\r\n var k = n.c.length - 1;\r\n return bitFloor(n.e / LOG_BASE) == k && n.c[k] % 2 != 0;\r\n }\r\n\r\n\r\n function toExponential(str, e) {\r\n return (str.length > 1 ? str.charAt(0) + '.' + str.slice(1) : str) +\r\n (e < 0 ? 'e' : 'e+') + e;\r\n }\r\n\r\n\r\n function toFixedPoint(str, e, z) {\r\n var len, zs;\r\n\r\n // Negative exponent?\r\n if (e < 0) {\r\n\r\n // Prepend zeros.\r\n for (zs = z + '.'; ++e; zs += z);\r\n str = zs + str;\r\n\r\n // Positive exponent\r\n } else {\r\n len = str.length;\r\n\r\n // Append zeros.\r\n if (++e > len) {\r\n for (zs = z, e -= len; --e; zs += z);\r\n str += zs;\r\n } else if (e < len) {\r\n str = str.slice(0, e) + '.' + str.slice(e);\r\n }\r\n }\r\n\r\n return str;\r\n }\r\n\r\n\r\n // EXPORT\r\n\r\n\r\n BigNumber = clone();\r\n BigNumber['default'] = BigNumber.BigNumber = BigNumber;\r\n\r\n // AMD.\r\n if (typeof define == 'function' && define.amd) {\r\n define(function () { return BigNumber; });\r\n\r\n // Node.js and other environments that support module.exports.\r\n } else if (typeof module != 'undefined' && module.exports) {\r\n module.exports = BigNumber;\r\n\r\n // Browser.\r\n } else {\r\n if (!globalObject) {\r\n globalObject = typeof self != 'undefined' && self ? self : window;\r\n }\r\n\r\n globalObject.BigNumber = BigNumber;\r\n }\r\n})(this);\r\n","import Key from \"./Key.js\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IKeyList} proto.IKeyList\n * @typedef {import(\"@hashgraph/proto\").IThresholdKey} proto.IThresholdKey\n */\n\n/**\n * A list of Keys (`Key`) with an optional threshold.\n */\nexport default class KeyList extends Key {\n /**\n * @param {?Key[]} [keys]\n * @param {?number} [threshold]\n */\n constructor(keys, threshold) {\n super();\n\n /**\n * @private\n * @type {Key[]}\n */\n this._keys = keys == null ? [] : keys;\n\n /**\n * @type {?number}\n */\n this._threshold = threshold == null ? null : threshold;\n }\n\n /**\n * @param {Key[]} keys\n * @returns {KeyList}\n */\n static of(...keys) {\n return new KeyList(keys, null);\n }\n\n /**\n * @template T\n * @param {ArrayLike} arrayLike\n * @param {((key: Key) => Key)} [mapFn]\n * @param {T} [thisArg]\n * @returns {KeyList}\n */\n static from(arrayLike, mapFn, thisArg) {\n if (mapFn == null) {\n return new KeyList(Array.from(arrayLike));\n }\n\n return new KeyList(Array.from(arrayLike, mapFn, thisArg));\n }\n\n /**\n * @returns {?number}\n */\n get threshold() {\n return this._threshold;\n }\n\n /**\n * @param {number} threshold\n * @returns {this}\n */\n setThreshold(threshold) {\n this._threshold = threshold;\n return this;\n }\n\n /**\n * @param {Key[]} keys\n * @returns {number}\n */\n push(...keys) {\n return this._keys.push(...keys);\n }\n\n /**\n * @param {number} start\n * @param {number} deleteCount\n * @param {Key[]} items\n * @returns {KeyList}\n */\n splice(start, deleteCount, ...items) {\n return new KeyList(\n this._keys.splice(start, deleteCount, ...items),\n this.threshold\n );\n }\n\n /**\n * @param {number=} start\n * @param {number=} end\n * @returns {KeyList}\n */\n slice(start, end) {\n return new KeyList(this._keys.slice(start, end), this.threshold);\n }\n\n /**\n * @returns {Iterator}\n */\n [Symbol.iterator]() {\n return this._keys[Symbol.iterator]();\n }\n\n /**\n * @returns {Key[]}\n */\n toArray() {\n return this._keys.slice();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify({\n threshold: this._threshold,\n keys: this._keys.toString(),\n });\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n const keys = this._keys.map((key) => key._toProtobufKey());\n\n if (this.threshold == null) {\n return { keyList: { keys } };\n } else {\n return {\n thresholdKey: {\n threshold: this.threshold,\n keys: { keys },\n },\n };\n }\n }\n\n /**\n * @param {proto.IKeyList} key\n * @returns {KeyList}\n */\n static __fromProtobufKeyList(key) {\n const keys = (key.keys != null ? key.keys : []).map((key) =>\n Key._fromProtobufKey(key)\n );\n return new KeyList(keys);\n }\n\n /**\n * @param {proto.IThresholdKey} key\n * @returns {KeyList}\n */\n static __fromProtobufThresoldKey(key) {\n const list = KeyList.__fromProtobufKeyList(\n key.keys != null ? key.keys : {}\n );\n list.setThreshold(key.threshold != null ? key.threshold : 0);\n return list;\n }\n}\n\nCACHE.keyList = (key) => KeyList.__fromProtobufKeyList(key);\nCACHE.thresholdKey = (key) => KeyList.__fromProtobufThresoldKey(key);\n","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\nexport default class Status {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case Status.Ok:\n return \"OK\";\n case Status.InvalidTransaction:\n return \"INVALID_TRANSACTION\";\n case Status.PayerAccountNotFound:\n return \"PAYER_ACCOUNT_NOT_FOUND\";\n case Status.InvalidNodeAccount:\n return \"INVALID_NODE_ACCOUNT\";\n case Status.TransactionExpired:\n return \"TRANSACTION_EXPIRED\";\n case Status.InvalidTransactionStart:\n return \"INVALID_TRANSACTION_START\";\n case Status.InvalidTransactionDuration:\n return \"INVALID_TRANSACTION_DURATION\";\n case Status.InvalidSignature:\n return \"INVALID_SIGNATURE\";\n case Status.MemoTooLong:\n return \"MEMO_TOO_LONG\";\n case Status.InsufficientTxFee:\n return \"INSUFFICIENT_TX_FEE\";\n case Status.InsufficientPayerBalance:\n return \"INSUFFICIENT_PAYER_BALANCE\";\n case Status.DuplicateTransaction:\n return \"DUPLICATE_TRANSACTION\";\n case Status.Busy:\n return \"BUSY\";\n case Status.NotSupported:\n return \"NOT_SUPPORTED\";\n case Status.InvalidFileId:\n return \"INVALID_FILE_ID\";\n case Status.InvalidAccountId:\n return \"INVALID_ACCOUNT_ID\";\n case Status.InvalidContractId:\n return \"INVALID_CONTRACT_ID\";\n case Status.InvalidTransactionId:\n return \"INVALID_TRANSACTION_ID\";\n case Status.ReceiptNotFound:\n return \"RECEIPT_NOT_FOUND\";\n case Status.RecordNotFound:\n return \"RECORD_NOT_FOUND\";\n case Status.InvalidSolidityId:\n return \"INVALID_SOLIDITY_ID\";\n case Status.Unknown:\n return \"UNKNOWN\";\n case Status.Success:\n return \"SUCCESS\";\n case Status.FailInvalid:\n return \"FAIL_INVALID\";\n case Status.FailFee:\n return \"FAIL_FEE\";\n case Status.FailBalance:\n return \"FAIL_BALANCE\";\n case Status.KeyRequired:\n return \"KEY_REQUIRED\";\n case Status.BadEncoding:\n return \"BAD_ENCODING\";\n case Status.InsufficientAccountBalance:\n return \"INSUFFICIENT_ACCOUNT_BALANCE\";\n case Status.InvalidSolidityAddress:\n return \"INVALID_SOLIDITY_ADDRESS\";\n case Status.InsufficientGas:\n return \"INSUFFICIENT_GAS\";\n case Status.ContractSizeLimitExceeded:\n return \"CONTRACT_SIZE_LIMIT_EXCEEDED\";\n case Status.LocalCallModificationException:\n return \"LOCAL_CALL_MODIFICATION_EXCEPTION\";\n case Status.ContractRevertExecuted:\n return \"CONTRACT_REVERT_EXECUTED\";\n case Status.ContractExecutionException:\n return \"CONTRACT_EXECUTION_EXCEPTION\";\n case Status.InvalidReceivingNodeAccount:\n return \"INVALID_RECEIVING_NODE_ACCOUNT\";\n case Status.MissingQueryHeader:\n return \"MISSING_QUERY_HEADER\";\n case Status.AccountUpdateFailed:\n return \"ACCOUNT_UPDATE_FAILED\";\n case Status.InvalidKeyEncoding:\n return \"INVALID_KEY_ENCODING\";\n case Status.NullSolidityAddress:\n return \"NULL_SOLIDITY_ADDRESS\";\n case Status.ContractUpdateFailed:\n return \"CONTRACT_UPDATE_FAILED\";\n case Status.InvalidQueryHeader:\n return \"INVALID_QUERY_HEADER\";\n case Status.InvalidFeeSubmitted:\n return \"INVALID_FEE_SUBMITTED\";\n case Status.InvalidPayerSignature:\n return \"INVALID_PAYER_SIGNATURE\";\n case Status.KeyNotProvided:\n return \"KEY_NOT_PROVIDED\";\n case Status.InvalidExpirationTime:\n return \"INVALID_EXPIRATION_TIME\";\n case Status.NoWaclKey:\n return \"NO_WACL_KEY\";\n case Status.FileContentEmpty:\n return \"FILE_CONTENT_EMPTY\";\n case Status.InvalidAccountAmounts:\n return \"INVALID_ACCOUNT_AMOUNTS\";\n case Status.EmptyTransactionBody:\n return \"EMPTY_TRANSACTION_BODY\";\n case Status.InvalidTransactionBody:\n return \"INVALID_TRANSACTION_BODY\";\n case Status.InvalidSignatureTypeMismatchingKey:\n return \"INVALID_SIGNATURE_TYPE_MISMATCHING_KEY\";\n case Status.InvalidSignatureCountMismatchingKey:\n return \"INVALID_SIGNATURE_COUNT_MISMATCHING_KEY\";\n case Status.EmptyLiveHashBody:\n return \"EMPTY_LIVE_HASH_BODY\";\n case Status.EmptyLiveHash:\n return \"EMPTY_LIVE_HASH\";\n case Status.EmptyLiveHashKeys:\n return \"EMPTY_LIVE_HASH_KEYS\";\n case Status.InvalidLiveHashSize:\n return \"INVALID_LIVE_HASH_SIZE\";\n case Status.EmptyQueryBody:\n return \"EMPTY_QUERY_BODY\";\n case Status.EmptyLiveHashQuery:\n return \"EMPTY_LIVE_HASH_QUERY\";\n case Status.LiveHashNotFound:\n return \"LIVE_HASH_NOT_FOUND\";\n case Status.AccountIdDoesNotExist:\n return \"ACCOUNT_ID_DOES_NOT_EXIST\";\n case Status.LiveHashAlreadyExists:\n return \"LIVE_HASH_ALREADY_EXISTS\";\n case Status.InvalidFileWacl:\n return \"INVALID_FILE_WACL\";\n case Status.SerializationFailed:\n return \"SERIALIZATION_FAILED\";\n case Status.TransactionOversize:\n return \"TRANSACTION_OVERSIZE\";\n case Status.TransactionTooManyLayers:\n return \"TRANSACTION_TOO_MANY_LAYERS\";\n case Status.ContractDeleted:\n return \"CONTRACT_DELETED\";\n case Status.PlatformNotActive:\n return \"PLATFORM_NOT_ACTIVE\";\n case Status.KeyPrefixMismatch:\n return \"KEY_PREFIX_MISMATCH\";\n case Status.PlatformTransactionNotCreated:\n return \"PLATFORM_TRANSACTION_NOT_CREATED\";\n case Status.InvalidRenewalPeriod:\n return \"INVALID_RENEWAL_PERIOD\";\n case Status.InvalidPayerAccountId:\n return \"INVALID_PAYER_ACCOUNT_ID\";\n case Status.AccountDeleted:\n return \"ACCOUNT_DELETED\";\n case Status.FileDeleted:\n return \"FILE_DELETED\";\n case Status.AccountRepeatedInAccountAmounts:\n return \"ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS\";\n case Status.SettingNegativeAccountBalance:\n return \"SETTING_NEGATIVE_ACCOUNT_BALANCE\";\n case Status.ObtainerRequired:\n return \"OBTAINER_REQUIRED\";\n case Status.ObtainerSameContractId:\n return \"OBTAINER_SAME_CONTRACT_ID\";\n case Status.ObtainerDoesNotExist:\n return \"OBTAINER_DOES_NOT_EXIST\";\n case Status.ModifyingImmutableContract:\n return \"MODIFYING_IMMUTABLE_CONTRACT\";\n case Status.FileSystemException:\n return \"FILE_SYSTEM_EXCEPTION\";\n case Status.AutorenewDurationNotInRange:\n return \"AUTORENEW_DURATION_NOT_IN_RANGE\";\n case Status.ErrorDecodingBytestring:\n return \"ERROR_DECODING_BYTESTRING\";\n case Status.ContractFileEmpty:\n return \"CONTRACT_FILE_EMPTY\";\n case Status.ContractBytecodeEmpty:\n return \"CONTRACT_BYTECODE_EMPTY\";\n case Status.InvalidInitialBalance:\n return \"INVALID_INITIAL_BALANCE\";\n case Status.InvalidReceiveRecordThreshold:\n return \"INVALID_RECEIVE_RECORD_THRESHOLD\";\n case Status.InvalidSendRecordThreshold:\n return \"INVALID_SEND_RECORD_THRESHOLD\";\n case Status.AccountIsNotGenesisAccount:\n return \"ACCOUNT_IS_NOT_GENESIS_ACCOUNT\";\n case Status.PayerAccountUnauthorized:\n return \"PAYER_ACCOUNT_UNAUTHORIZED\";\n case Status.InvalidFreezeTransactionBody:\n return \"INVALID_FREEZE_TRANSACTION_BODY\";\n case Status.FreezeTransactionBodyNotFound:\n return \"FREEZE_TRANSACTION_BODY_NOT_FOUND\";\n case Status.TransferListSizeLimitExceeded:\n return \"TRANSFER_LIST_SIZE_LIMIT_EXCEEDED\";\n case Status.ResultSizeLimitExceeded:\n return \"RESULT_SIZE_LIMIT_EXCEEDED\";\n case Status.NotSpecialAccount:\n return \"NOT_SPECIAL_ACCOUNT\";\n case Status.ContractNegativeGas:\n return \"CONTRACT_NEGATIVE_GAS\";\n case Status.ContractNegativeValue:\n return \"CONTRACT_NEGATIVE_VALUE\";\n case Status.InvalidFeeFile:\n return \"INVALID_FEE_FILE\";\n case Status.InvalidExchangeRateFile:\n return \"INVALID_EXCHANGE_RATE_FILE\";\n case Status.InsufficientLocalCallGas:\n return \"INSUFFICIENT_LOCAL_CALL_GAS\";\n case Status.EntityNotAllowedToDelete:\n return \"ENTITY_NOT_ALLOWED_TO_DELETE\";\n case Status.AuthorizationFailed:\n return \"AUTHORIZATION_FAILED\";\n case Status.FileUploadedProtoInvalid:\n return \"FILE_UPLOADED_PROTO_INVALID\";\n case Status.FileUploadedProtoNotSavedToDisk:\n return \"FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK\";\n case Status.FeeScheduleFilePartUploaded:\n return \"FEE_SCHEDULE_FILE_PART_UPLOADED\";\n case Status.ExchangeRateChangeLimitExceeded:\n return \"EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED\";\n case Status.MaxContractStorageExceeded:\n return \"MAX_CONTRACT_STORAGE_EXCEEDED\";\n case Status.TransferAccountSameAsDeleteAccount:\n return \"TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT\";\n case Status.TotalLedgerBalanceInvalid:\n return \"TOTAL_LEDGER_BALANCE_INVALID\";\n case Status.ExpirationReductionNotAllowed:\n return \"EXPIRATION_REDUCTION_NOT_ALLOWED\";\n case Status.MaxGasLimitExceeded:\n return \"MAX_GAS_LIMIT_EXCEEDED\";\n case Status.MaxFileSizeExceeded:\n return \"MAX_FILE_SIZE_EXCEEDED\";\n case Status.ReceiverSigRequired:\n return \"RECEIVER_SIG_REQUIRED\";\n case Status.InvalidTopicId:\n return \"INVALID_TOPIC_ID\";\n case Status.InvalidAdminKey:\n return \"INVALID_ADMIN_KEY\";\n case Status.InvalidSubmitKey:\n return \"INVALID_SUBMIT_KEY\";\n case Status.Unauthorized:\n return \"UNAUTHORIZED\";\n case Status.InvalidTopicMessage:\n return \"INVALID_TOPIC_MESSAGE\";\n case Status.InvalidAutorenewAccount:\n return \"INVALID_AUTORENEW_ACCOUNT\";\n case Status.AutorenewAccountNotAllowed:\n return \"AUTORENEW_ACCOUNT_NOT_ALLOWED\";\n case Status.TopicExpired:\n return \"TOPIC_EXPIRED\";\n case Status.InvalidChunkNumber:\n return \"INVALID_CHUNK_NUMBER\";\n case Status.InvalidChunkTransactionId:\n return \"INVALID_CHUNK_TRANSACTION_ID\";\n case Status.AccountFrozenForToken:\n return \"ACCOUNT_FROZEN_FOR_TOKEN\";\n case Status.TokensPerAccountLimitExceeded:\n return \"TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED\";\n case Status.InvalidTokenId:\n return \"INVALID_TOKEN_ID\";\n case Status.InvalidTokenDecimals:\n return \"INVALID_TOKEN_DECIMALS\";\n case Status.InvalidTokenInitialSupply:\n return \"INVALID_TOKEN_INITIAL_SUPPLY\";\n case Status.InvalidTreasuryAccountForToken:\n return \"INVALID_TREASURY_ACCOUNT_FOR_TOKEN\";\n case Status.InvalidTokenSymbol:\n return \"INVALID_TOKEN_SYMBOL\";\n case Status.TokenHasNoFreezeKey:\n return \"TOKEN_HAS_NO_FREEZE_KEY\";\n case Status.TransfersNotZeroSumForToken:\n return \"TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN\";\n case Status.MissingTokenSymbol:\n return \"MISSING_TOKEN_SYMBOL\";\n case Status.TokenSymbolTooLong:\n return \"TOKEN_SYMBOL_TOO_LONG\";\n case Status.AccountKycNotGrantedForToken:\n return \"ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN\";\n case Status.TokenHasNoKycKey:\n return \"TOKEN_HAS_NO_KYC_KEY\";\n case Status.InsufficientTokenBalance:\n return \"INSUFFICIENT_TOKEN_BALANCE\";\n case Status.TokenWasDeleted:\n return \"TOKEN_WAS_DELETED\";\n case Status.TokenHasNoSupplyKey:\n return \"TOKEN_HAS_NO_SUPPLY_KEY\";\n case Status.TokenHasNoWipeKey:\n return \"TOKEN_HAS_NO_WIPE_KEY\";\n case Status.InvalidTokenMintAmount:\n return \"INVALID_TOKEN_MINT_AMOUNT\";\n case Status.InvalidTokenBurnAmount:\n return \"INVALID_TOKEN_BURN_AMOUNT\";\n case Status.TokenNotAssociatedToAccount:\n return \"TOKEN_NOT_ASSOCIATED_TO_ACCOUNT\";\n case Status.CannotWipeTokenTreasuryAccount:\n return \"CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT\";\n case Status.InvalidKycKey:\n return \"INVALID_KYC_KEY\";\n case Status.InvalidWipeKey:\n return \"INVALID_WIPE_KEY\";\n case Status.InvalidFreezeKey:\n return \"INVALID_FREEZE_KEY\";\n case Status.InvalidSupplyKey:\n return \"INVALID_SUPPLY_KEY\";\n case Status.MissingTokenName:\n return \"MISSING_TOKEN_NAME\";\n case Status.TokenNameTooLong:\n return \"TOKEN_NAME_TOO_LONG\";\n case Status.InvalidWipingAmount:\n return \"INVALID_WIPING_AMOUNT\";\n case Status.TokenIsImmutable:\n return \"TOKEN_IS_IMMUTABLE\";\n case Status.TokenAlreadyAssociatedToAccount:\n return \"TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT\";\n case Status.TransactionRequiresZeroTokenBalances:\n return \"TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES\";\n case Status.AccountIsTreasury:\n return \"ACCOUNT_IS_TREASURY\";\n case Status.TokenIdRepeatedInTokenList:\n return \"TOKEN_ID_REPEATED_IN_TOKEN_LIST\";\n case Status.TokenTransferListSizeLimitExceeded:\n return \"TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED\";\n case Status.EmptyTokenTransferBody:\n return \"EMPTY_TOKEN_TRANSFER_BODY\";\n case Status.EmptyTokenTransferAccountAmounts:\n return \"EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS\";\n case Status.InvalidScheduleId:\n return \"INVALID_SCHEDULE_ID\";\n case Status.ScheduleIsImmutable:\n return \"SCHEDULE_IS_IMMUTABLE\";\n case Status.InvalidSchedulePayerId:\n return \"INVALID_SCHEDULE_PAYER_ID\";\n case Status.InvalidScheduleAccountId:\n return \"INVALID_SCHEDULE_ACCOUNT_ID\";\n case Status.NoNewValidSignatures:\n return \"NO_NEW_VALID_SIGNATURES\";\n case Status.UnresolvableRequiredSigners:\n return \"UNRESOLVABLE_REQUIRED_SIGNERS\";\n case Status.ScheduledTransactionNotInWhitelist:\n return \"SCHEDULED_TRANSACTION_NOT_IN_WHITELIST\";\n case Status.SomeSignaturesWereInvalid:\n return \"SOME_SIGNATURES_WERE_INVALID\";\n case Status.TransactionIdFieldNotAllowed:\n return \"TRANSACTION_ID_FIELD_NOT_ALLOWED\";\n case Status.IdenticalScheduleAlreadyCreated:\n return \"IDENTICAL_SCHEDULE_ALREADY_CREATED\";\n case Status.InvalidZeroByteInString:\n return \"INVALID_ZERO_BYTE_IN_STRING\";\n case Status.ScheduleAlreadyDeleted:\n return \"SCHEDULE_ALREADY_DELETED\";\n case Status.ScheduleAlreadyExecuted:\n return \"SCHEDULE_ALREADY_EXECUTED\";\n case Status.MessageSizeTooLarge:\n return \"MESSAGE_SIZE_TOO_LARGE\";\n case Status.OperationRepeatedInBucketGroups:\n return \"OPERATION_REPEATED_IN_BUCKET_GROUPS\";\n case Status.BucketCapacityOverflow:\n return \"BUCKET_CAPACITY_OVERFLOW\";\n case Status.NodeCapacityNotSufficientForOperation:\n return \"NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION\";\n case Status.BucketHasNoThrottleGroups:\n return \"BUCKET_HAS_NO_THROTTLE_GROUPS\";\n case Status.ThrottleGroupHasZeroOpsPerSec:\n return \"THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC\";\n case Status.SuccessButMissingExpectedOperation:\n return \"SUCCESS_BUT_MISSING_EXPECTED_OPERATION\";\n case Status.UnparseableThrottleDefinitions:\n return \"UNPARSEABLE_THROTTLE_DEFINITIONS\";\n case Status.InvalidThrottleDefinitions:\n return \"INVALID_THROTTLE_DEFINITIONS\";\n case Status.AccountExpiredAndPendingRemoval:\n return \"ACCOUNT_EXPIRED_AND_PENDING_REMOVAL\";\n case Status.InvalidTokenMaxSupply:\n return \"INVALID_TOKEN_MAX_SUPPLY\";\n case Status.InvalidTokenNftSerialNumber:\n return \"INVALID_TOKEN_NFT_SERIAL_NUMBER\";\n case Status.InvalidNftId:\n return \"INVALID_NFT_ID\";\n case Status.MetadataTooLong:\n return \"METADATA_TOO_LONG\";\n case Status.BatchSizeLimitExceeded:\n return \"BATCH_SIZE_LIMIT_EXCEEDED\";\n case Status.InvalidQueryRange:\n return \"INVALID_QUERY_RANGE\";\n case Status.FractionDividesByZero:\n return \"FRACTION_DIVIDES_BY_ZERO\";\n case Status.InsufficientPayerBalanceForCustomFee:\n return \"INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE\";\n case Status.CustomFeesListTooLong:\n return \"CUSTOM_FEES_LIST_TOO_LONG\";\n case Status.InvalidCustomFeeCollector:\n return \"INVALID_CUSTOM_FEE_COLLECTOR\";\n case Status.InvalidTokenIdInCustomFees:\n return \"INVALID_TOKEN_ID_IN_CUSTOM_FEES\";\n case Status.TokenNotAssociatedToFeeCollector:\n return \"TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR\";\n case Status.TokenMaxSupplyReached:\n return \"TOKEN_MAX_SUPPLY_REACHED\";\n case Status.SenderDoesNotOwnNftSerialNo:\n return \"SENDER_DOES_NOT_OWN_NFT_SERIAL_NO\";\n case Status.CustomFeeNotFullySpecified:\n return \"CUSTOM_FEE_NOT_FULLY_SPECIFIED\";\n case Status.CustomFeeMustBePositive:\n return \"CUSTOM_FEE_MUST_BE_POSITIVE\";\n case Status.TokenHasNoFeeScheduleKey:\n return \"TOKEN_HAS_NO_FEE_SCHEDULE_KEY\";\n case Status.CustomFeeOutsideNumericRange:\n return \"CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE\";\n case Status.RoyaltyFractionCannotExceedOne:\n return \"ROYALTY_FRACTION_CANNOT_EXCEED_ONE\";\n case Status.FractionalFeeMaxAmountLessThanMinAmount:\n return \"FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT\";\n case Status.CustomScheduleAlreadyHasNoFees:\n return \"CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES\";\n case Status.CustomFeeDenominationMustBeFungibleCommon:\n return \"CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON\";\n case Status.CustomFractionalFeeOnlyAllowedForFungibleCommon:\n return \"CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON\";\n case Status.InvalidCustomFeeScheduleKey:\n return \"INVALID_CUSTOM_FEE_SCHEDULE_KEY\";\n case Status.InvalidTokenMintMetadata:\n return \"INVALID_TOKEN_MINT_METADATA\";\n case Status.InvalidTokenBurnMetadata:\n return \"INVALID_TOKEN_BURN_METADATA\";\n case Status.CurrentTreasuryStillOwnsNfts:\n return \"CURRENT_TREASURY_STILL_OWNS_NFTS\";\n case Status.AccountStillOwnsNfts:\n return \"ACCOUNT_STILL_OWNS_NFTS\";\n case Status.TreasuryMustOwnBurnedNft:\n return \"TREASURY_MUST_OWN_BURNED_NFT\";\n case Status.AccountDoesNotOwnWipedNft:\n return \"ACCOUNT_DOES_NOT_OWN_WIPED_NFT\";\n case Status.AccountAmountTransfersOnlyAllowedForFungibleCommon:\n return \"ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON\";\n case Status.MaxNftsInPriceRegimeHaveBeenMinted:\n return \"MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED\";\n case Status.PayerAccountDeleted:\n return \"PAYER_ACCOUNT_DELETED\";\n case Status.CustomFeeChargingExceededMaxRecursionDepth:\n return \"CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH\";\n case Status.CustomFeeChargingExceededMaxAccountAmounts:\n return \"CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS\";\n case Status.InsufficientSenderAccountBalanceForCustomFee:\n return \"INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE\";\n case Status.SerialNumberLimitReached:\n return \"SERIAL_NUMBER_LIMIT_REACHED\";\n case Status.CustomRoyaltyFeeOnlyAllowedForNonFungibleUnique:\n return \"CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE\";\n case Status.NoRemainingAutomaticAssociations:\n return \"NO_REMAINING_AUTOMATIC_ASSOCIATIONS\";\n case Status.ExistingAutomaticAssociationsExceedGivenLimit:\n return \"EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT\";\n case Status.RequestedNumAutomaticAssociationsExceedsAssociationLimit:\n return \"REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT\";\n case Status.TokenIsPaused:\n return \"TOKEN_IS_PAUSED\";\n case Status.TokenHasNoPauseKey:\n return \"TOKEN_HAS_NO_PAUSE_KEY\";\n case Status.InvalidPauseKey:\n return \"INVALID_PAUSE_KEY\";\n case Status.FreezeUpdateFileDoesNotExist:\n return \"FREEZE_UPDATE_FILE_DOES_NOT_EXIST\";\n case Status.FreezeUpdateFileHashDoesNotMatch:\n return \"FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH\";\n case Status.NoUpgradeHasBeenPrepared:\n return \"NO_UPGRADE_HAS_BEEN_PREPARED\";\n case Status.NoFreezeIsScheduled:\n return \"NO_FREEZE_IS_SCHEDULED\";\n case Status.UpdateFileHashChangedSincePrepareUpgrade:\n return \"UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE\";\n case Status.FreezeStartTimeMustBeFuture:\n return \"FREEZE_START_TIME_MUST_BE_FUTURE\";\n case Status.PreparedUpdateFileIsImmutable:\n return \"PREPARED_UPDATE_FILE_IS_IMMUTABLE\";\n case Status.FreezeAlreadyScheduled:\n return \"FREEZE_ALREADY_SCHEDULED\";\n case Status.FreezeUpgradeInProgress:\n return \"FREEZE_UPGRADE_IN_PROGRESS\";\n case Status.UpdateFileIdDoesNotMatchPrepared:\n return \"UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED\";\n case Status.UpdateFileHashDoesNotMatchPrepared:\n return \"UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED\";\n case Status.ConsensusGasExhausted:\n return \"CONSENSUS_GAS_EXHAUSTED\";\n case Status.RevertedSuccess:\n return \"REVERTED_SUCCESS\";\n case Status.MaxStorageInPriceRegimeHasBeenUsed:\n return \"MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED\";\n case Status.InvalidAliasKey:\n return \"INVALID_ALIAS_KEY\";\n case Status.UnexpectedTokenDecimals:\n return \"UNEXPECTED_TOKEN_DECIMALS\";\n case Status.InvalidProxyAccountId:\n return \"INVALID_PROXY_ACCOUNT_ID\";\n case Status.InvalidTransferAccountId:\n return \"INVALID_TRANSFER_ACCOUNT_ID\";\n case Status.InvalidFeeCollectorAccountId:\n return \"INVALID_FEE_COLLECTOR_ACCOUNT_ID\";\n case Status.AliasIsImmutable:\n return \"ALIAS_IS_IMMUTABLE\";\n case Status.SpenderAccountSameAsOwner:\n return \"SPENDER_ACCOUNT_SAME_AS_OWNER\";\n case Status.AmountExceedsTokenMaxSupply:\n return \"AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY\";\n case Status.NegativeAllowanceAmount:\n return \"NEGATIVE_ALLOWANCE_AMOUNT\";\n case Status.CannotApproveForAllFungibleCommon:\n return \"CANNOT_APPROVE_FOR_ALL_FUNGIBLE_COMMON\";\n case Status.SpenderDoesNotHaveAllowance:\n return \"SPENDER_DOES_NOT_HAVE_ALLOWANCE\";\n case Status.AmountExceedsAllowance:\n return \"AMOUNT_EXCEEDS_ALLOWANCE\";\n case Status.MaxAllowancesExceeded:\n return \"MAX_ALLOWANCES_EXCEEDED\";\n case Status.EmptyAllowances:\n return \"EMPTY_ALLOWANCES\";\n case Status.SpenderAccountRepeatedInAllowances:\n return \"SPENDER_ACCOUNT_REPEATED_IN_ALLOWANCES\";\n case Status.RepeatedSerialNumsInNFTAllowances:\n return \"REPEATED_SERIAL_NUMS_IN_NFT_ALLOWANCES\";\n case Status.FungibleTokenInNFTAllowances:\n return \"FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES\";\n case Status.NFTInFungibleTokenAllowances:\n return \"NFT_IN_FUNGIBLE_PAYER_ALLOWANCES\";\n case Status.PayerAndOwnerNotEqual:\n return \"PAYER_AND_OWNER_NOT_EQUAL\";\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {Status}\n */\n static _fromCode(code) {\n switch (code) {\n case 0:\n return Status.Ok;\n case 1:\n return Status.InvalidTransaction;\n case 2:\n return Status.PayerAccountNotFound;\n case 3:\n return Status.InvalidNodeAccount;\n case 4:\n return Status.TransactionExpired;\n case 5:\n return Status.InvalidTransactionStart;\n case 6:\n return Status.InvalidTransactionDuration;\n case 7:\n return Status.InvalidSignature;\n case 8:\n return Status.MemoTooLong;\n case 9:\n return Status.InsufficientTxFee;\n case 10:\n return Status.InsufficientPayerBalance;\n case 11:\n return Status.DuplicateTransaction;\n case 12:\n return Status.Busy;\n case 13:\n return Status.NotSupported;\n case 14:\n return Status.InvalidFileId;\n case 15:\n return Status.InvalidAccountId;\n case 16:\n return Status.InvalidContractId;\n case 17:\n return Status.InvalidTransactionId;\n case 18:\n return Status.ReceiptNotFound;\n case 19:\n return Status.RecordNotFound;\n case 20:\n return Status.InvalidSolidityId;\n case 21:\n return Status.Unknown;\n case 22:\n return Status.Success;\n case 23:\n return Status.FailInvalid;\n case 24:\n return Status.FailFee;\n case 25:\n return Status.FailBalance;\n case 26:\n return Status.KeyRequired;\n case 27:\n return Status.BadEncoding;\n case 28:\n return Status.InsufficientAccountBalance;\n case 29:\n return Status.InvalidSolidityAddress;\n case 30:\n return Status.InsufficientGas;\n case 31:\n return Status.ContractSizeLimitExceeded;\n case 32:\n return Status.LocalCallModificationException;\n case 33:\n return Status.ContractRevertExecuted;\n case 34:\n return Status.ContractExecutionException;\n case 35:\n return Status.InvalidReceivingNodeAccount;\n case 36:\n return Status.MissingQueryHeader;\n case 37:\n return Status.AccountUpdateFailed;\n case 38:\n return Status.InvalidKeyEncoding;\n case 39:\n return Status.NullSolidityAddress;\n case 40:\n return Status.ContractUpdateFailed;\n case 41:\n return Status.InvalidQueryHeader;\n case 42:\n return Status.InvalidFeeSubmitted;\n case 43:\n return Status.InvalidPayerSignature;\n case 44:\n return Status.KeyNotProvided;\n case 45:\n return Status.InvalidExpirationTime;\n case 46:\n return Status.NoWaclKey;\n case 47:\n return Status.FileContentEmpty;\n case 48:\n return Status.InvalidAccountAmounts;\n case 49:\n return Status.EmptyTransactionBody;\n case 50:\n return Status.InvalidTransactionBody;\n case 51:\n return Status.InvalidSignatureTypeMismatchingKey;\n case 52:\n return Status.InvalidSignatureCountMismatchingKey;\n case 53:\n return Status.EmptyLiveHashBody;\n case 54:\n return Status.EmptyLiveHash;\n case 55:\n return Status.EmptyLiveHashKeys;\n case 56:\n return Status.InvalidLiveHashSize;\n case 57:\n return Status.EmptyQueryBody;\n case 58:\n return Status.EmptyLiveHashQuery;\n case 59:\n return Status.LiveHashNotFound;\n case 60:\n return Status.AccountIdDoesNotExist;\n case 61:\n return Status.LiveHashAlreadyExists;\n case 62:\n return Status.InvalidFileWacl;\n case 63:\n return Status.SerializationFailed;\n case 64:\n return Status.TransactionOversize;\n case 65:\n return Status.TransactionTooManyLayers;\n case 66:\n return Status.ContractDeleted;\n case 67:\n return Status.PlatformNotActive;\n case 68:\n return Status.KeyPrefixMismatch;\n case 69:\n return Status.PlatformTransactionNotCreated;\n case 70:\n return Status.InvalidRenewalPeriod;\n case 71:\n return Status.InvalidPayerAccountId;\n case 72:\n return Status.AccountDeleted;\n case 73:\n return Status.FileDeleted;\n case 74:\n return Status.AccountRepeatedInAccountAmounts;\n case 75:\n return Status.SettingNegativeAccountBalance;\n case 76:\n return Status.ObtainerRequired;\n case 77:\n return Status.ObtainerSameContractId;\n case 78:\n return Status.ObtainerDoesNotExist;\n case 79:\n return Status.ModifyingImmutableContract;\n case 80:\n return Status.FileSystemException;\n case 81:\n return Status.AutorenewDurationNotInRange;\n case 82:\n return Status.ErrorDecodingBytestring;\n case 83:\n return Status.ContractFileEmpty;\n case 84:\n return Status.ContractBytecodeEmpty;\n case 85:\n return Status.InvalidInitialBalance;\n case 86:\n return Status.InvalidReceiveRecordThreshold;\n case 87:\n return Status.InvalidSendRecordThreshold;\n case 88:\n return Status.AccountIsNotGenesisAccount;\n case 89:\n return Status.PayerAccountUnauthorized;\n case 90:\n return Status.InvalidFreezeTransactionBody;\n case 91:\n return Status.FreezeTransactionBodyNotFound;\n case 92:\n return Status.TransferListSizeLimitExceeded;\n case 93:\n return Status.ResultSizeLimitExceeded;\n case 94:\n return Status.NotSpecialAccount;\n case 95:\n return Status.ContractNegativeGas;\n case 96:\n return Status.ContractNegativeValue;\n case 97:\n return Status.InvalidFeeFile;\n case 98:\n return Status.InvalidExchangeRateFile;\n case 99:\n return Status.InsufficientLocalCallGas;\n case 100:\n return Status.EntityNotAllowedToDelete;\n case 101:\n return Status.AuthorizationFailed;\n case 102:\n return Status.FileUploadedProtoInvalid;\n case 103:\n return Status.FileUploadedProtoNotSavedToDisk;\n case 104:\n return Status.FeeScheduleFilePartUploaded;\n case 105:\n return Status.ExchangeRateChangeLimitExceeded;\n case 106:\n return Status.MaxContractStorageExceeded;\n case 107:\n return Status.TransferAccountSameAsDeleteAccount;\n case 108:\n return Status.TotalLedgerBalanceInvalid;\n case 110:\n return Status.ExpirationReductionNotAllowed;\n case 111:\n return Status.MaxGasLimitExceeded;\n case 112:\n return Status.MaxFileSizeExceeded;\n case 113:\n return Status.ReceiverSigRequired;\n case 150:\n return Status.InvalidTopicId;\n case 155:\n return Status.InvalidAdminKey;\n case 156:\n return Status.InvalidSubmitKey;\n case 157:\n return Status.Unauthorized;\n case 158:\n return Status.InvalidTopicMessage;\n case 159:\n return Status.InvalidAutorenewAccount;\n case 160:\n return Status.AutorenewAccountNotAllowed;\n case 162:\n return Status.TopicExpired;\n case 163:\n return Status.InvalidChunkNumber;\n case 164:\n return Status.InvalidChunkTransactionId;\n case 165:\n return Status.AccountFrozenForToken;\n case 166:\n return Status.TokensPerAccountLimitExceeded;\n case 167:\n return Status.InvalidTokenId;\n case 168:\n return Status.InvalidTokenDecimals;\n case 169:\n return Status.InvalidTokenInitialSupply;\n case 170:\n return Status.InvalidTreasuryAccountForToken;\n case 171:\n return Status.InvalidTokenSymbol;\n case 172:\n return Status.TokenHasNoFreezeKey;\n case 173:\n return Status.TransfersNotZeroSumForToken;\n case 174:\n return Status.MissingTokenSymbol;\n case 175:\n return Status.TokenSymbolTooLong;\n case 176:\n return Status.AccountKycNotGrantedForToken;\n case 177:\n return Status.TokenHasNoKycKey;\n case 178:\n return Status.InsufficientTokenBalance;\n case 179:\n return Status.TokenWasDeleted;\n case 180:\n return Status.TokenHasNoSupplyKey;\n case 181:\n return Status.TokenHasNoWipeKey;\n case 182:\n return Status.InvalidTokenMintAmount;\n case 183:\n return Status.InvalidTokenBurnAmount;\n case 184:\n return Status.TokenNotAssociatedToAccount;\n case 185:\n return Status.CannotWipeTokenTreasuryAccount;\n case 186:\n return Status.InvalidKycKey;\n case 187:\n return Status.InvalidWipeKey;\n case 188:\n return Status.InvalidFreezeKey;\n case 189:\n return Status.InvalidSupplyKey;\n case 190:\n return Status.MissingTokenName;\n case 191:\n return Status.TokenNameTooLong;\n case 192:\n return Status.InvalidWipingAmount;\n case 193:\n return Status.TokenIsImmutable;\n case 194:\n return Status.TokenAlreadyAssociatedToAccount;\n case 195:\n return Status.TransactionRequiresZeroTokenBalances;\n case 196:\n return Status.AccountIsTreasury;\n case 197:\n return Status.TokenIdRepeatedInTokenList;\n case 198:\n return Status.TokenTransferListSizeLimitExceeded;\n case 199:\n return Status.EmptyTokenTransferBody;\n case 200:\n return Status.EmptyTokenTransferAccountAmounts;\n case 201:\n return Status.InvalidScheduleId;\n case 202:\n return Status.ScheduleIsImmutable;\n case 203:\n return Status.InvalidSchedulePayerId;\n case 204:\n return Status.InvalidScheduleAccountId;\n case 205:\n return Status.NoNewValidSignatures;\n case 206:\n return Status.UnresolvableRequiredSigners;\n case 207:\n return Status.ScheduledTransactionNotInWhitelist;\n case 208:\n return Status.SomeSignaturesWereInvalid;\n case 209:\n return Status.TransactionIdFieldNotAllowed;\n case 210:\n return Status.IdenticalScheduleAlreadyCreated;\n case 211:\n return Status.InvalidZeroByteInString;\n case 212:\n return Status.ScheduleAlreadyDeleted;\n case 213:\n return Status.ScheduleAlreadyExecuted;\n case 214:\n return Status.MessageSizeTooLarge;\n case 215:\n return Status.OperationRepeatedInBucketGroups;\n case 216:\n return Status.BucketCapacityOverflow;\n case 217:\n return Status.NodeCapacityNotSufficientForOperation;\n case 218:\n return Status.BucketHasNoThrottleGroups;\n case 219:\n return Status.ThrottleGroupHasZeroOpsPerSec;\n case 220:\n return Status.SuccessButMissingExpectedOperation;\n case 221:\n return Status.UnparseableThrottleDefinitions;\n case 222:\n return Status.InvalidThrottleDefinitions;\n case 223:\n return Status.AccountExpiredAndPendingRemoval;\n case 224:\n return Status.InvalidTokenMaxSupply;\n case 225:\n return Status.InvalidTokenNftSerialNumber;\n case 226:\n return Status.InvalidNftId;\n case 227:\n return Status.MetadataTooLong;\n case 228:\n return Status.BatchSizeLimitExceeded;\n case 229:\n return Status.InvalidQueryRange;\n case 230:\n return Status.FractionDividesByZero;\n case 231:\n return Status.InsufficientPayerBalanceForCustomFee;\n case 232:\n return Status.CustomFeesListTooLong;\n case 233:\n return Status.InvalidCustomFeeCollector;\n case 234:\n return Status.InvalidTokenIdInCustomFees;\n case 235:\n return Status.TokenNotAssociatedToFeeCollector;\n case 236:\n return Status.TokenMaxSupplyReached;\n case 237:\n return Status.SenderDoesNotOwnNftSerialNo;\n case 238:\n return Status.CustomFeeNotFullySpecified;\n case 239:\n return Status.CustomFeeMustBePositive;\n case 240:\n return Status.TokenHasNoFeeScheduleKey;\n case 241:\n return Status.CustomFeeOutsideNumericRange;\n case 242:\n return Status.RoyaltyFractionCannotExceedOne;\n case 243:\n return Status.FractionalFeeMaxAmountLessThanMinAmount;\n case 244:\n return Status.CustomScheduleAlreadyHasNoFees;\n case 245:\n return Status.CustomFeeDenominationMustBeFungibleCommon;\n case 246:\n return Status.CustomFractionalFeeOnlyAllowedForFungibleCommon;\n case 247:\n return Status.InvalidCustomFeeScheduleKey;\n case 248:\n return Status.InvalidTokenMintMetadata;\n case 249:\n return Status.InvalidTokenBurnMetadata;\n case 250:\n return Status.CurrentTreasuryStillOwnsNfts;\n case 251:\n return Status.AccountStillOwnsNfts;\n case 252:\n return Status.TreasuryMustOwnBurnedNft;\n case 253:\n return Status.AccountDoesNotOwnWipedNft;\n case 254:\n return Status.AccountAmountTransfersOnlyAllowedForFungibleCommon;\n case 255:\n return Status.MaxNftsInPriceRegimeHaveBeenMinted;\n case 256:\n return Status.PayerAccountDeleted;\n case 257:\n return Status.CustomFeeChargingExceededMaxRecursionDepth;\n case 258:\n return Status.CustomFeeChargingExceededMaxAccountAmounts;\n case 259:\n return Status.InsufficientSenderAccountBalanceForCustomFee;\n case 260:\n return Status.SerialNumberLimitReached;\n case 261:\n return Status.CustomRoyaltyFeeOnlyAllowedForNonFungibleUnique;\n case 262:\n return Status.NoRemainingAutomaticAssociations;\n case 263:\n return Status.ExistingAutomaticAssociationsExceedGivenLimit;\n case 264:\n return Status.RequestedNumAutomaticAssociationsExceedsAssociationLimit;\n case 265:\n return Status.TokenIsPaused;\n case 266:\n return Status.TokenHasNoPauseKey;\n case 267:\n return Status.InvalidPauseKey;\n case 268:\n return Status.FreezeUpdateFileDoesNotExist;\n case 269:\n return Status.FreezeUpdateFileHashDoesNotMatch;\n case 270:\n return Status.NoUpgradeHasBeenPrepared;\n case 271:\n return Status.NoFreezeIsScheduled;\n case 272:\n return Status.UpdateFileHashChangedSincePrepareUpgrade;\n case 273:\n return Status.FreezeStartTimeMustBeFuture;\n case 274:\n return Status.PreparedUpdateFileIsImmutable;\n case 275:\n return Status.FreezeAlreadyScheduled;\n case 276:\n return Status.FreezeUpgradeInProgress;\n case 277:\n return Status.UpdateFileIdDoesNotMatchPrepared;\n case 278:\n return Status.UpdateFileHashDoesNotMatchPrepared;\n case 279:\n return Status.ConsensusGasExhausted;\n case 280:\n return Status.RevertedSuccess;\n case 281:\n return Status.MaxStorageInPriceRegimeHasBeenUsed;\n case 282:\n return Status.InvalidAliasKey;\n case 283:\n return Status.UnexpectedTokenDecimals;\n case 284:\n return Status.InvalidProxyAccountId;\n case 285:\n return Status.InvalidTransferAccountId;\n case 286:\n return Status.InvalidFeeCollectorAccountId;\n case 287:\n return Status.AliasIsImmutable;\n case 288:\n return Status.SpenderAccountSameAsOwner;\n case 289:\n return Status.AmountExceedsTokenMaxSupply;\n case 290:\n return Status.NegativeAllowanceAmount;\n case 291:\n return Status.CannotApproveForAllFungibleCommon;\n case 292:\n return Status.SpenderDoesNotHaveAllowance;\n case 293:\n return Status.AmountExceedsAllowance;\n case 294:\n return Status.MaxAllowancesExceeded;\n case 295:\n return Status.EmptyAllowances;\n case 296:\n return Status.SpenderAccountRepeatedInAllowances;\n case 297:\n return Status.RepeatedSerialNumsInNFTAllowances;\n case 298:\n return Status.FungibleTokenInNFTAllowances;\n case 299:\n return Status.NFTInFungibleTokenAllowances;\n case 300:\n return Status.PayerAndOwnerNotEqual;\n default:\n throw new Error(\n `(BUG) Status.fromCode() does not handle code: ${code}`\n );\n }\n }\n\n /**\n * @returns {proto.ResponseCodeEnum}\n */\n valueOf() {\n return this._code;\n }\n}\n\n/**\n * The transaction passed the precheck validations.\n */\nStatus.Ok = new Status(0);\n\n/**\n * For any error not handled by specific error codes listed below.\n */\nStatus.InvalidTransaction = new Status(1);\n\n/**\n * Payer account does not exist.\n */\nStatus.PayerAccountNotFound = new Status(2);\n\n/**\n * Node Account provided does not match the node account of the node the transaction was submitted\n * to.\n */\nStatus.InvalidNodeAccount = new Status(3);\n\n/**\n * Pre-Check error when TransactionValidStart + transactionValidDuration is less than current\n * consensus time.\n */\nStatus.TransactionExpired = new Status(4);\n\n/**\n * Transaction start time is greater than current consensus time\n */\nStatus.InvalidTransactionStart = new Status(5);\n\n/**\n * valid transaction duration is a positive non zero number that does not exceed 120 seconds\n */\nStatus.InvalidTransactionDuration = new Status(6);\n\n/**\n * The transaction signature is not valid\n */\nStatus.InvalidSignature = new Status(7);\n\n/**\n * Transaction memo size exceeded 100 bytes\n */\nStatus.MemoTooLong = new Status(8);\n\n/**\n * The fee provided in the transaction is insufficient for this type of transaction\n */\nStatus.InsufficientTxFee = new Status(9);\n\n/**\n * The payer account has insufficient cryptocurrency to pay the transaction fee\n */\nStatus.InsufficientPayerBalance = new Status(10);\n\n/**\n * This transaction ID is a duplicate of one that was submitted to this node or reached consensus\n * in the last 180 seconds (receipt period)\n */\nStatus.DuplicateTransaction = new Status(11);\n\n/**\n * If API is throttled out\n */\nStatus.Busy = new Status(12);\n\n/**\n * The API is not currently supported\n */\nStatus.NotSupported = new Status(13);\n\n/**\n * The file id is invalid or does not exist\n */\nStatus.InvalidFileId = new Status(14);\n\n/**\n * The account id is invalid or does not exist\n */\nStatus.InvalidAccountId = new Status(15);\n\n/**\n * The contract id is invalid or does not exist\n */\nStatus.InvalidContractId = new Status(16);\n\n/**\n * Transaction id is not valid\n */\nStatus.InvalidTransactionId = new Status(17);\n\n/**\n * Receipt for given transaction id does not exist\n */\nStatus.ReceiptNotFound = new Status(18);\n\n/**\n * Record for given transaction id does not exist\n */\nStatus.RecordNotFound = new Status(19);\n\n/**\n * The solidity id is invalid or entity with this solidity id does not exist\n */\nStatus.InvalidSolidityId = new Status(20);\n\n/**\n * The responding node has submitted the transaction to the network. Its final status is still\n * unknown.\n */\nStatus.Unknown = new Status(21);\n\n/**\n * The transaction succeeded\n */\nStatus.Success = new Status(22);\n\n/**\n * There was a system error and the transaction failed because of invalid request parameters.\n */\nStatus.FailInvalid = new Status(23);\n\n/**\n * There was a system error while performing fee calculation, reserved for future.\n */\nStatus.FailFee = new Status(24);\n\n/**\n * There was a system error while performing balance checks, reserved for future.\n */\nStatus.FailBalance = new Status(25);\n\n/**\n * Key not provided in the transaction body\n */\nStatus.KeyRequired = new Status(26);\n\n/**\n * Unsupported algorithm/encoding used for keys in the transaction\n */\nStatus.BadEncoding = new Status(27);\n\n/**\n * When the account balance is not sufficient for the transfer\n */\nStatus.InsufficientAccountBalance = new Status(28);\n\n/**\n * During an update transaction when the system is not able to find the Users Solidity address\n */\nStatus.InvalidSolidityAddress = new Status(29);\n\n/**\n * Not enough gas was supplied to execute transaction\n */\nStatus.InsufficientGas = new Status(30);\n\n/**\n * contract byte code size is over the limit\n */\nStatus.ContractSizeLimitExceeded = new Status(31);\n\n/**\n * local execution (query) is requested for a function which changes state\n */\nStatus.LocalCallModificationException = new Status(32);\n\n/**\n * Contract REVERT OPCODE executed\n */\nStatus.ContractRevertExecuted = new Status(33);\n\n/**\n * For any contract execution related error not handled by specific error codes listed above.\n */\nStatus.ContractExecutionException = new Status(34);\n\n/**\n * In Query validation, account with +ve(amount) value should be Receiving node account, the\n * receiver account should be only one account in the list\n */\nStatus.InvalidReceivingNodeAccount = new Status(35);\n\n/**\n * Header is missing in Query request\n */\nStatus.MissingQueryHeader = new Status(36);\n\n/**\n * The update of the account failed\n */\nStatus.AccountUpdateFailed = new Status(37);\n\n/**\n * Provided key encoding was not supported by the system\n */\nStatus.InvalidKeyEncoding = new Status(38);\n\n/**\n * null solidity address\n */\nStatus.NullSolidityAddress = new Status(39);\n\n/**\n * update of the contract failed\n */\nStatus.ContractUpdateFailed = new Status(40);\n\n/**\n * the query header is invalid\n */\nStatus.InvalidQueryHeader = new Status(41);\n\n/**\n * Invalid fee submitted\n */\nStatus.InvalidFeeSubmitted = new Status(42);\n\n/**\n * Payer signature is invalid\n */\nStatus.InvalidPayerSignature = new Status(43);\n\n/**\n * The keys were not provided in the request.\n */\nStatus.KeyNotProvided = new Status(44);\n\n/**\n * Expiration time provided in the transaction was invalid.\n */\nStatus.InvalidExpirationTime = new Status(45);\n\n/**\n * WriteAccess Control Keys are not provided for the file\n */\nStatus.NoWaclKey = new Status(46);\n\n/**\n * The contents of file are provided as empty.\n */\nStatus.FileContentEmpty = new Status(47);\n\n/**\n * The crypto transfer credit and debit do not sum equal to 0\n */\nStatus.InvalidAccountAmounts = new Status(48);\n\n/**\n * Transaction body provided is empty\n */\nStatus.EmptyTransactionBody = new Status(49);\n\n/**\n * Invalid transaction body provided\n */\nStatus.InvalidTransactionBody = new Status(50);\n\n/**\n * the type of key (base ed25519 key, KeyList, or ThresholdKey) does not match the type of\n * signature (base ed25519 signature, SignatureList, or ThresholdKeySignature)\n */\nStatus.InvalidSignatureTypeMismatchingKey = new Status(51);\n\n/**\n * the number of key (KeyList, or ThresholdKey) does not match that of signature (SignatureList,\n * or ThresholdKeySignature). e.g. if a keyList has 3 base keys, then the corresponding\n * signatureList should also have 3 base signatures.\n */\nStatus.InvalidSignatureCountMismatchingKey = new Status(52);\n\n/**\n * the livehash body is empty\n */\nStatus.EmptyLiveHashBody = new Status(53);\n\n/**\n * the livehash data is missing\n */\nStatus.EmptyLiveHash = new Status(54);\n\n/**\n * the keys for a livehash are missing\n */\nStatus.EmptyLiveHashKeys = new Status(55);\n\n/**\n * the livehash data is not the output of a SHA-384 digest\n */\nStatus.InvalidLiveHashSize = new Status(56);\n\n/**\n * the query body is empty\n */\nStatus.EmptyQueryBody = new Status(57);\n\n/**\n * the crypto livehash query is empty\n */\nStatus.EmptyLiveHashQuery = new Status(58);\n\n/**\n * the livehash is not present\n */\nStatus.LiveHashNotFound = new Status(59);\n\n/**\n * the account id passed has not yet been created.\n */\nStatus.AccountIdDoesNotExist = new Status(60);\n\n/**\n * the livehash already exists for a given account\n */\nStatus.LiveHashAlreadyExists = new Status(61);\n\n/**\n * File WACL keys are invalid\n */\nStatus.InvalidFileWacl = new Status(62);\n\n/**\n * Serialization failure\n */\nStatus.SerializationFailed = new Status(63);\n\n/**\n * The size of the Transaction is greater than transactionMaxBytes\n */\nStatus.TransactionOversize = new Status(64);\n\n/**\n * The Transaction has more than 50 levels\n */\nStatus.TransactionTooManyLayers = new Status(65);\n\n/**\n * Contract is marked as deleted\n */\nStatus.ContractDeleted = new Status(66);\n\n/**\n * the platform node is either disconnected or lagging behind.\n */\nStatus.PlatformNotActive = new Status(67);\n\n/**\n * one public key matches more than one prefixes on the signature map\n */\nStatus.KeyPrefixMismatch = new Status(68);\n\n/**\n * transaction not created by platform due to large backlog\n */\nStatus.PlatformTransactionNotCreated = new Status(69);\n\n/**\n * auto renewal period is not a positive number of seconds\n */\nStatus.InvalidRenewalPeriod = new Status(70);\n\n/**\n * the response code when a smart contract id is passed for a crypto API request\n */\nStatus.InvalidPayerAccountId = new Status(71);\n\n/**\n * the account has been marked as deleted\n */\nStatus.AccountDeleted = new Status(72);\n\n/**\n * the file has been marked as deleted\n */\nStatus.FileDeleted = new Status(73);\n\n/**\n * same accounts repeated in the transfer account list\n */\nStatus.AccountRepeatedInAccountAmounts = new Status(74);\n\n/**\n * attempting to set negative balance value for crypto account\n */\nStatus.SettingNegativeAccountBalance = new Status(75);\n\n/**\n * when deleting smart contract that has crypto balance either transfer account or transfer smart\n * contract is required\n */\nStatus.ObtainerRequired = new Status(76);\n\n/**\n * when deleting smart contract that has crypto balance you can not use the same contract id as\n * transferContractId as the one being deleted\n */\nStatus.ObtainerSameContractId = new Status(77);\n\n/**\n * transferAccountId or transferContractId specified for contract delete does not exist\n */\nStatus.ObtainerDoesNotExist = new Status(78);\n\n/**\n * attempting to modify (update or delete a immutable smart contract, i.e. one created without a\n * admin key)\n */\nStatus.ModifyingImmutableContract = new Status(79);\n\n/**\n * Unexpected exception thrown by file system functions\n */\nStatus.FileSystemException = new Status(80);\n\n/**\n * the duration is not a subset of [MINIMUM_AUTORENEW_DURATION,MAXIMUM_AUTORENEW_DURATION]\n */\nStatus.AutorenewDurationNotInRange = new Status(81);\n\n/**\n * Decoding the smart contract binary to a byte array failed. Check that the input is a valid hex\n * string.\n */\nStatus.ErrorDecodingBytestring = new Status(82);\n\n/**\n * File to create a smart contract was of length zero\n */\nStatus.ContractFileEmpty = new Status(83);\n\n/**\n * Bytecode for smart contract is of length zero\n */\nStatus.ContractBytecodeEmpty = new Status(84);\n\n/**\n * Attempt to set negative initial balance\n */\nStatus.InvalidInitialBalance = new Status(85);\n\n/**\n * [Deprecated]. attempt to set negative receive record threshold\n */\nStatus.InvalidReceiveRecordThreshold = new Status(86);\n\n/**\n * [Deprecated]. attempt to set negative send record threshold\n */\nStatus.InvalidSendRecordThreshold = new Status(87);\n\n/**\n * Special Account Operations should be performed by only Genesis account, return this code if it\n * is not Genesis Account\n */\nStatus.AccountIsNotGenesisAccount = new Status(88);\n\n/**\n * The fee payer account doesn't have permission to submit such Transaction\n */\nStatus.PayerAccountUnauthorized = new Status(89);\n\n/**\n * FreezeTransactionBody is invalid\n */\nStatus.InvalidFreezeTransactionBody = new Status(90);\n\n/**\n * FreezeTransactionBody does not exist\n */\nStatus.FreezeTransactionBodyNotFound = new Status(91);\n\n/**\n * Exceeded the number of accounts (both from and to) allowed for crypto transfer list\n */\nStatus.TransferListSizeLimitExceeded = new Status(92);\n\n/**\n * Smart contract result size greater than specified maxResultSize\n */\nStatus.ResultSizeLimitExceeded = new Status(93);\n\n/**\n * The payer account is not a special account(account 0.0.55)\n */\nStatus.NotSpecialAccount = new Status(94);\n\n/**\n * Negative gas was offered in smart contract call\n */\nStatus.ContractNegativeGas = new Status(95);\n\n/**\n * Negative value / initial balance was specified in a smart contract call / create\n */\nStatus.ContractNegativeValue = new Status(96);\n\n/**\n * Failed to update fee file\n */\nStatus.InvalidFeeFile = new Status(97);\n\n/**\n * Failed to update exchange rate file\n */\nStatus.InvalidExchangeRateFile = new Status(98);\n\n/**\n * Payment tendered for contract local call cannot cover both the fee and the gas\n */\nStatus.InsufficientLocalCallGas = new Status(99);\n\n/**\n * Entities with Entity ID below 1000 are not allowed to be deleted\n */\nStatus.EntityNotAllowedToDelete = new Status(100);\n\n/**\n * Violating one of these rules: 1) treasury account can update all entities below 0.0.1000, 2)\n * account 0.0.50 can update all entities from 0.0.51 - 0.0.80, 3) Network Function Master Account\n * A/c 0.0.50 - Update all Network Function accounts & perform all the Network Functions listed\n * below, 4) Network Function Accounts: i) A/c 0.0.55 - Update Address Book files (0.0.101/102),\n * ii) A/c 0.0.56 - Update Fee schedule (0.0.111), iii) A/c 0.0.57 - Update Exchange Rate\n * (0.0.112).\n */\nStatus.AuthorizationFailed = new Status(101);\n\n/**\n * Fee Schedule Proto uploaded but not valid (append or update is required)\n */\nStatus.FileUploadedProtoInvalid = new Status(102);\n\n/**\n * Fee Schedule Proto uploaded but not valid (append or update is required)\n */\nStatus.FileUploadedProtoNotSavedToDisk = new Status(103);\n\n/**\n * Fee Schedule Proto File Part uploaded\n */\nStatus.FeeScheduleFilePartUploaded = new Status(104);\n\n/**\n * The change on Exchange Rate exceeds Exchange_Rate_Allowed_Percentage\n */\nStatus.ExchangeRateChangeLimitExceeded = new Status(105);\n\n/**\n * Contract permanent storage exceeded the currently allowable limit\n */\nStatus.MaxContractStorageExceeded = new Status(106);\n\n/**\n * Transfer Account should not be same as Account to be deleted\n */\nStatus.TransferAccountSameAsDeleteAccount = new Status(107);\n\nStatus.TotalLedgerBalanceInvalid = new Status(108);\n/**\n * The expiration date/time on a smart contract may not be reduced\n */\nStatus.ExpirationReductionNotAllowed = new Status(110);\n\n/**\n * Gas exceeded currently allowable gas limit per transaction\n */\nStatus.MaxGasLimitExceeded = new Status(111);\n\n/**\n * File size exceeded the currently allowable limit\n */\nStatus.MaxFileSizeExceeded = new Status(112);\n\n/**\n * When a valid signature is not provided for operations on account with receiverSigRequired=true\n */\nStatus.ReceiverSigRequired = new Status(113);\n\n/**\n * The Topic ID specified is not in the system.\n */\nStatus.InvalidTopicId = new Status(150);\n\n/**\n * A provided admin key was invalid.\n */\nStatus.InvalidAdminKey = new Status(155);\n\n/**\n * A provided submit key was invalid.\n */\nStatus.InvalidSubmitKey = new Status(156);\n\n/**\n * An attempted operation was not authorized (ie - a deleteTopic for a topic with no adminKey).\n */\nStatus.Unauthorized = new Status(157);\n\n/**\n * A ConsensusService message is empty.\n */\nStatus.InvalidTopicMessage = new Status(158);\n\n/**\n * The autoRenewAccount specified is not a valid, active account.\n */\nStatus.InvalidAutorenewAccount = new Status(159);\n\n/**\n * An adminKey was not specified on the topic, so there must not be an autoRenewAccount.\n */\nStatus.AutorenewAccountNotAllowed = new Status(160);\n\n/**\n * The topic has expired, was not automatically renewed, and is in a 7 day grace period before the\n * topic will be deleted unrecoverably. This error response code will not be returned until\n * autoRenew functionality is supported by HAPI.\n */\nStatus.TopicExpired = new Status(162);\n\n/**\n * chunk number must be from 1 to total (chunks) inclusive.\n */\nStatus.InvalidChunkNumber = new Status(163);\n\n/**\n * For every chunk, the payer account that is part of initialTransactionID must match the Payer\n * Account of this transaction. The entire initialTransactionID should match the transactionID of\n * the first chunk, but this is not checked or enforced by Hedera except when the chunk number is 1.\n */\nStatus.InvalidChunkTransactionId = new Status(164);\n\n/**\n * Account is frozen and cannot transact with the token\n */\nStatus.AccountFrozenForToken = new Status(165);\n\n/**\n * An involved account already has more than tokens.maxPerAccount associations with\n * non-deleted tokens.\n */\nStatus.TokensPerAccountLimitExceeded = new Status(166);\n\n/**\n * The token is invalid or does not exist\n */\nStatus.InvalidTokenId = new Status(167);\n\n/**\n * Invalid token decimals\n */\nStatus.InvalidTokenDecimals = new Status(168);\n\n/**\n * Invalid token initial supply\n */\nStatus.InvalidTokenInitialSupply = new Status(169);\n\n/**\n * Treasury Account does not exist or is deleted\n */\nStatus.InvalidTreasuryAccountForToken = new Status(170);\n\n/**\n * Token Symbol is not UTF-8 capitalized alphabetical string\n */\nStatus.InvalidTokenSymbol = new Status(171);\n\n/**\n * Freeze key is not set on token\n */\nStatus.TokenHasNoFreezeKey = new Status(172);\n\n/**\n * Amounts in transfer list are not net zero\n */\nStatus.TransfersNotZeroSumForToken = new Status(173);\n\n/**\n * A token symbol was not provided\n */\nStatus.MissingTokenSymbol = new Status(174);\n\n/**\n * The provided token symbol was too long\n */\nStatus.TokenSymbolTooLong = new Status(175);\n\n/**\n * KYC must be granted and account does not have KYC granted\n */\nStatus.AccountKycNotGrantedForToken = new Status(176);\n\n/**\n * KYC key is not set on token\n */\nStatus.TokenHasNoKycKey = new Status(177);\n\n/**\n * Token balance is not sufficient for the transaction\n */\nStatus.InsufficientTokenBalance = new Status(178);\n\n/**\n * Token transactions cannot be executed on deleted token\n */\nStatus.TokenWasDeleted = new Status(179);\n\n/**\n * Supply key is not set on token\n */\nStatus.TokenHasNoSupplyKey = new Status(180);\n\n/**\n * Wipe key is not set on token\n */\nStatus.TokenHasNoWipeKey = new Status(181);\n\n/**\n * The requested token mint amount would cause an invalid total supply\n */\nStatus.InvalidTokenMintAmount = new Status(182);\n\n/**\n * The requested token burn amount would cause an invalid total supply\n */\nStatus.InvalidTokenBurnAmount = new Status(183);\n\n/**\n * A required token-account relationship is missing\n */\nStatus.TokenNotAssociatedToAccount = new Status(184);\n\n/**\n * The target of a wipe operation was the token treasury account\n */\nStatus.CannotWipeTokenTreasuryAccount = new Status(185);\n\n/**\n * The provided KYC key was invalid.\n */\nStatus.InvalidKycKey = new Status(186);\n\n/**\n * The provided wipe key was invalid.\n */\nStatus.InvalidWipeKey = new Status(187);\n\n/**\n * The provided freeze key was invalid.\n */\nStatus.InvalidFreezeKey = new Status(188);\n\n/**\n * The provided supply key was invalid.\n */\nStatus.InvalidSupplyKey = new Status(189);\n\n/**\n * Token Name is not provided\n */\nStatus.MissingTokenName = new Status(190);\n\n/**\n * Token Name is too long\n */\nStatus.TokenNameTooLong = new Status(191);\n\n/**\n * The provided wipe amount must not be negative, zero or bigger than the token holder balance\n */\nStatus.InvalidWipingAmount = new Status(192);\n\n/**\n * Token does not have Admin key set, thus update/delete transactions cannot be performed\n */\nStatus.TokenIsImmutable = new Status(193);\n\n/**\n * An associateToken operation specified a token already associated to the account\n */\nStatus.TokenAlreadyAssociatedToAccount = new Status(194);\n\n/**\n * An attempted operation is invalid until all token balances for the target account are zero\n */\nStatus.TransactionRequiresZeroTokenBalances = new Status(195);\n\n/**\n * An attempted operation is invalid because the account is a treasury\n */\nStatus.AccountIsTreasury = new Status(196);\n\n/**\n * Same TokenIDs present in the token list\n */\nStatus.TokenIdRepeatedInTokenList = new Status(197);\n\n/**\n * Exceeded the number of token transfers (both from and to) allowed for token transfer list\n */\nStatus.TokenTransferListSizeLimitExceeded = new Status(198);\n\n/**\n * TokenTransfersTransactionBody has no TokenTransferList\n */\nStatus.EmptyTokenTransferBody = new Status(199);\n\n/**\n * TokenTransfersTransactionBody has a TokenTransferList with no AccountAmounts\n */\nStatus.EmptyTokenTransferAccountAmounts = new Status(200);\n\n/**\n * The Scheduled entity does not exist; or has now expired, been deleted, or been executed\n */\nStatus.InvalidScheduleId = new Status(201);\n\n/**\n * The Scheduled entity cannot be modified. Admin key not set\n */\nStatus.ScheduleIsImmutable = new Status(202);\n\n/**\n * The provided Scheduled Payer does not exist\n */\nStatus.InvalidSchedulePayerId = new Status(203);\n\n/**\n * The Schedule Create Transaction TransactionID account does not exist\n */\nStatus.InvalidScheduleAccountId = new Status(204);\n\n/**\n * The provided sig map did not contain any new valid signatures from required signers of the\n * scheduled transaction\n */\nStatus.NoNewValidSignatures = new Status(205);\n\n/**\n * The required signers for a scheduled transaction cannot be resolved, for example because they do\n * not exist or have been deleted\n */\nStatus.UnresolvableRequiredSigners = new Status(206);\n\n/**\n * Only whitelisted transaction types may be scheduled\n */\nStatus.ScheduledTransactionNotInWhitelist = new Status(207);\n\n/**\n * At least one of the signatures in the provided sig map did not represent a valid signature for\n * any required signer\n */\nStatus.SomeSignaturesWereInvalid = new Status(208);\n\n/**\n * The scheduled field in the TransactionID may not be set to true\n */\nStatus.TransactionIdFieldNotAllowed = new Status(209);\n\n/**\n * A schedule already exists with the same identifying fields of an attempted ScheduleCreate (that\n * is, all fields other than scheduledPayerAccountID)\n */\nStatus.IdenticalScheduleAlreadyCreated = new Status(210);\n\n/**\n * A string field in the transaction has a UTF-8 encoding with the prohibited zero byte\n */\nStatus.InvalidZeroByteInString = new Status(211);\n\n/**\n * A schedule being signed or deleted has already been deleted\n */\nStatus.ScheduleAlreadyDeleted = new Status(212);\n\n/**\n * A schedule being signed or deleted has already been executed\n */\nStatus.ScheduleAlreadyExecuted = new Status(213);\n\n/**\n * ConsensusSubmitMessage request's message size is larger than allowed.\n */\nStatus.MessageSizeTooLarge = new Status(214);\n\n/**\n * An operation was assigned to more than one throttle group in a given bucket\n */\nStatus.OperationRepeatedInBucketGroups = new Status(215);\n\n/**\n * The capacity needed to satisfy all opsPerSec groups in a bucket overflowed a signed 8-byte\n * integral type\n */\nStatus.BucketCapacityOverflow = new Status(216);\n\n/**\n * Given the network size in the address book, the node-level capacity for an operation would never\n * be enough to accept a single request; usually means a bucket burstPeriod should be increased\n */\nStatus.NodeCapacityNotSufficientForOperation = new Status(217);\n\n/**\n * A bucket was defined without any throttle groups\n */\nStatus.BucketHasNoThrottleGroups = new Status(218);\n\n/**\n * A throttle group was granted zero opsPerSec\n */\nStatus.ThrottleGroupHasZeroOpsPerSec = new Status(219);\n\n/**\n * The throttle definitions file was updated, but some supported operations were not assigned a\n * bucket\n */\nStatus.SuccessButMissingExpectedOperation = new Status(220);\n\n/**\n * The new contents for the throttle definitions system file were not valid protobuf\n */\nStatus.UnparseableThrottleDefinitions = new Status(221);\n\n/**\n * The new throttle definitions system file were invalid, and no more specific error could be\n * divined\n */\nStatus.InvalidThrottleDefinitions = new Status(222);\n\n/**\n * The transaction references an account which has passed its expiration without renewal funds\n * available, and currently remains in the ledger only because of the grace period given to expired\n * entities\n */\nStatus.AccountExpiredAndPendingRemoval = new Status(223);\n\n/**\n * Invalid token max supply\n */\nStatus.InvalidTokenMaxSupply = new Status(224);\n\n/**\n * Invalid token nft serial number\n */\nStatus.InvalidTokenNftSerialNumber = new Status(225);\n\n/**\n * Invalid nft id\n */\nStatus.InvalidNftId = new Status(226);\n\n/**\n * Nft metadata is too long\n */\nStatus.MetadataTooLong = new Status(227);\n\n/**\n * Repeated operations count exceeds the limit\n */\nStatus.BatchSizeLimitExceeded = new Status(228);\n\n/**\n * The range of data to be gathered is out of the set boundaries\n */\nStatus.InvalidQueryRange = new Status(229);\n\n/**\n * A custom fractional fee set a denominator of zero\n */\nStatus.FractionDividesByZero = new Status(230);\n\n/**\n * The transaction payer could not afford a custom fee\n */\nStatus.InsufficientPayerBalanceForCustomFee = new Status(231);\n\n/**\n * More than 10 custom fees were specified\n */\nStatus.CustomFeesListTooLong = new Status(232);\n\n/**\n * Any of the feeCollector accounts for customFees is invalid\n */\nStatus.InvalidCustomFeeCollector = new Status(233);\n\n/**\n * Any of the token Ids in customFees is invalid\n */\nStatus.InvalidTokenIdInCustomFees = new Status(234);\n\n/**\n * Any of the token Ids in customFees are not associated to feeCollector\n */\nStatus.TokenNotAssociatedToFeeCollector = new Status(235);\n\n/**\n * A token cannot have more units minted due to its configured supply ceiling\n */\nStatus.TokenMaxSupplyReached = new Status(236);\n\n/**\n * The transaction attempted to move an NFT serial number from an account other than its owner\n */\nStatus.SenderDoesNotOwnNftSerialNo = new Status(237);\n\n/**\n * A custom fee schedule entry did not specify either a fixed or fractional fee\n */\nStatus.CustomFeeNotFullySpecified = new Status(238);\n\n/**\n * Only positive fees may be assessed at this time\n */\nStatus.CustomFeeMustBePositive = new Status(239);\n\n/**\n * Fee schedule key is not set on token\n */\nStatus.TokenHasNoFeeScheduleKey = new Status(240);\n\n/**\n * A fractional custom fee exceeded the range of a 64-bit signed integer\n */\nStatus.CustomFeeOutsideNumericRange = new Status(241);\n\n/**\n * A royalty cannot exceed the total fungible value exchanged for an NFT\n */\nStatus.RoyaltyFractionCannotExceedOne = new Status(242);\n\n/**\n * Each fractional custom fee must have its maximum_amount, if specified, at least its\n * minimum_amount\n */\nStatus.FractionalFeeMaxAmountLessThanMinAmount = new Status(243);\n\n/**\n * A fee schedule update tried to clear the custom fees from a token whose fee schedule was already\n * empty\n */\nStatus.CustomScheduleAlreadyHasNoFees = new Status(244);\n\n/**\n * Only tokens of type FUNGIBLE_COMMON can be used to as fee schedule denominations\n */\nStatus.CustomFeeDenominationMustBeFungibleCommon = new Status(245);\n\n/**\n * Only tokens of type FUNGIBLE_COMMON can have fractional fees\n */\nStatus.CustomFractionalFeeOnlyAllowedForFungibleCommon = new Status(246);\n\n/**\n * The provided custom fee schedule key was invalid\n */\nStatus.InvalidCustomFeeScheduleKey = new Status(247);\n\n/**\n * The requested token mint metadata was invalid\n */\nStatus.InvalidTokenMintMetadata = new Status(248);\n\n/**\n * The requested token burn metadata was invalid\n */\nStatus.InvalidTokenBurnMetadata = new Status(249);\n\n/**\n * The treasury for a unique token cannot be changed until it owns no NFTs\n */\nStatus.CurrentTreasuryStillOwnsNfts = new Status(250);\n\n/**\n * An account cannot be dissociated from a unique token if it owns NFTs for the token\n */\nStatus.AccountStillOwnsNfts = new Status(251);\n\n/**\n * A NFT can only be burned when owned by the unique token's treasury\n */\nStatus.TreasuryMustOwnBurnedNft = new Status(252);\n\n/**\n * An account did not own the NFT to be wiped\n */\nStatus.AccountDoesNotOwnWipedNft = new Status(253);\n\n/**\n * An AccountAmount token transfers list referenced a token type other than FUNGIBLE_COMMON\n */\nStatus.AccountAmountTransfersOnlyAllowedForFungibleCommon = new Status(254);\n\n/**\n * All the NFTs allowed in the current price regime have already been minted\n */\nStatus.MaxNftsInPriceRegimeHaveBeenMinted = new Status(255);\n\n/**\n * The payer account has been marked as deleted\n */\nStatus.PayerAccountDeleted = new Status(256);\n\n/**\n * The reference chain of custom fees for a transferred token exceeded the maximum length of 2\n */\nStatus.CustomFeeChargingExceededMaxRecursionDepth = new Status(257);\n\n/**\n * More than 20 balance adjustments were to satisfy a CryptoTransfer and its implied custom fee\n * payments\n */\nStatus.CustomFeeChargingExceededMaxAccountAmounts = new Status(258);\n\n/**\n * The sender account in the token transfer transaction could not afford a custom fee\n */\nStatus.InsufficientSenderAccountBalanceForCustomFee = new Status(259);\n\n/**\n * Currently no more than 4,294,967,295 NFTs may be minted for a given unique token type\n */\nStatus.SerialNumberLimitReached = new Status(260);\n\n/**\n * Only tokens of type NON_FUNGIBLE_UNIQUE can have royalty fees\n */\nStatus.CustomRoyaltyFeeOnlyAllowedForNonFungibleUnique = new Status(261);\n\n/**\n * The account has reached the limit on the automatic associations count.\n */\nStatus.NoRemainingAutomaticAssociations = new Status(262);\n\n/**\n * Already existing automatic associations are more than the new maximum automatic associations.\n */\nStatus.ExistingAutomaticAssociationsExceedGivenLimit = new Status(263);\n\n/**\n * Cannot set the number of automatic associations for an account more than the\n * maximum allowed token associations tokens.maxPerAccount\n */\nStatus.RequestedNumAutomaticAssociationsExceedsAssociationLimit = new Status(\n 264\n);\n\n/**\n * Token is paused. This Token cannot be a part of any kind of Transaction until unpaused.\n */\nStatus.TokenIsPaused = new Status(265);\n\n/**\n * Pause key is not set on token\n */\nStatus.TokenHasNoPauseKey = new Status(266);\n\n/**\n * The provided pause key was invalid\n */\nStatus.InvalidPauseKey = new Status(267);\n\n/**\n * The update file in a freeze transaction body must exist.\n */\nStatus.FreezeUpdateFileDoesNotExist = new Status(268);\n\n/**\n * The hash of the update file in a freeze transaction body must match the in-memory hash.\n */\nStatus.FreezeUpdateFileHashDoesNotMatch = new Status(269);\n\n/**\n * A FREEZE_UPGRADE transaction was handled with no previous update prepared.\n */\nStatus.NoUpgradeHasBeenPrepared = new Status(270);\n\n/**\n * A FREEZE_ABORT transaction was handled with no scheduled freeze.\n */\nStatus.NoFreezeIsScheduled = new Status(271);\n\n/**\n * The update file hash when handling a FREEZE_UPGRADE transaction differs from the file\n * hash at the time of handling the PREPARE_UPGRADE transaction.\n */\nStatus.UpdateFileHashChangedSincePrepareUpgrade = new Status(272);\n\n/**\n * The given freeze start time was in the (consensus) past.\n */\nStatus.FreezeStartTimeMustBeFuture = new Status(273);\n\n/**\n * The prepared update file cannot be updated or appended until either the upgrade has\n * been completed, or a FREEZE_ABORT has been handled.\n */\nStatus.PreparedUpdateFileIsImmutable = new Status(274);\n\n/**\n * Once a freeze is scheduled, it must be aborted before any other type of freeze can\n * can be performed.\n */\nStatus.FreezeAlreadyScheduled = new Status(275);\n\n/**\n * If an NMT upgrade has been prepared, the following operation must be a FREEZE_UPGRADE.\n * (To issue a FREEZE_ONLY, submit a FREEZE_ABORT first.)\n */\nStatus.FreezeUpgradeInProgress = new Status(276);\n\n/**\n * If an NMT upgrade has been prepared, the subsequent FREEZE_UPGRADE transaction must\n * confirm the id of the file to be used in the upgrade.\n */\nStatus.UpdateFileIdDoesNotMatchPrepared = new Status(277);\n\n/**\n * If an NMT upgrade has been prepared, the subsequent FREEZE_UPGRADE transaction must\n * confirm the hash of the file to be used in the upgrade.\n */\nStatus.UpdateFileHashDoesNotMatchPrepared = new Status(278);\n\n/**\n * Consensus throttle did not allow execution of this transaction. System is throttled at\n * consensus level.\n */\nStatus.ConsensusGasExhausted = new Status(279);\n\n/**\n * A precompiled contract succeeded, but was later reverted.\n */\nStatus.RevertedSuccess = new Status(280);\n\n/**\n * All contract storage allocated to the current price regime has been consumed.\n */\nStatus.MaxStorageInPriceRegimeHasBeenUsed = new Status(281);\n\n/**\n * An alias used in a CryptoTransfer transaction is not the serialization of a primitive Key\n * message--that is, a Key with a single Ed25519 or ECDSA(secp256k1) public key and no\n * unknown protobuf fields.\n */\nStatus.InvalidAliasKey = new Status(282);\n\n/**\n * A fungible token transfer expected a different number of decimals than the involved\n * type actually has.\n */\nStatus.UnexpectedTokenDecimals = new Status(283);\n\n/**\n * The proxy account id is invalid or does not exist.\n */\nStatus.InvalidProxyAccountId = new Status(284);\n\n/**\n * The transfer account id in CryptoDelete transaction is invalid or does not exist.\n */\nStatus.InvalidTransferAccountId = new Status(285);\n\n/**\n * The fee collector account id in TokenFeeScheduleUpdate is invalid or does not exist.\n */\nStatus.InvalidFeeCollectorAccountId = new Status(286);\n\n/**\n * The alias already set on an account cannot be updated using CryptoUpdate transaction.\n */\nStatus.AliasIsImmutable = new Status(287);\n\n/**\n * An approved allowance specifies a spender account that is the same as the hbar/token\n * owner account.\n */\nStatus.SpenderAccountSameAsOwner = new Status(288);\n\n/**\n * The establishment or adjustment of an approved allowance cause the token allowance\n * to exceed the token maximum supply.\n */\nStatus.AmountExceedsTokenMaxSupply = new Status(289);\n\n/**\n * The specified amount for an approved allowance cannot be negative.\n */\nStatus.NegativeAllowanceAmount = new Status(290);\n\n/**\n * The approveForAll flag cannot be set for a fungible token.\n */\nStatus.CannotApproveForAllFungibleCommon = new Status(291);\n\n/**\n * The spender does not have an existing approved allowance with the hbar/token owner.\n */\nStatus.SpenderDoesNotHaveAllowance = new Status(292);\n\n/**\n * The transfer amount exceeds the current approved allowance for the spender account.\n */\nStatus.AmountExceedsAllowance = new Status(293);\n\n/**\n * The payer account of an approveAllowances or adjustAllowance transaction is attempting\n * to go beyond the maximum allowed number of allowances.\n */\nStatus.MaxAllowancesExceeded = new Status(294);\n\n/**\n * No allowances have been specified in the approval/adjust transaction.\n */\nStatus.EmptyAllowances = new Status(295);\n\n/**\n * Spender is repeated more than once in Crypto or Token or NFT allowance lists in a single\n * CryptoApproveAllowance or CryptoAdjustAllowance transaction.\n */\nStatus.SpenderAccountRepeatedInAllowances = new Status(296);\n\n/**\n * Serial numbers are repeated in nft allowance for a single spender account\n */\nStatus.RepeatedSerialNumsInNFTAllowances = new Status(297);\n\n/**\n * Fungible common token used in NFT allowances\n */\nStatus.FungibleTokenInNFTAllowances = new Status(298);\n\n/**\n * Non fungible token used in fungible token allowances\n */\nStatus.NFTInFungibleTokenAllowances = new Status(299);\n\n/**\n * An approval/adjustment transaction was submitted where the payer and owner account are\n * not the same. Currently only the owner is permitted to perform these operations.\n */\nStatus.PayerAndOwnerNotEqual = new Status(300);\n","\"use strict\";\nvar util = exports;\n\n// used to return a Promise where callback is omitted\nutil.asPromise = require(\"@protobufjs/aspromise\");\n\n// converts to / from base64 encoded strings\nutil.base64 = require(\"@protobufjs/base64\");\n\n// base class of rpc.Service\nutil.EventEmitter = require(\"@protobufjs/eventemitter\");\n\n// float handling accross browsers\nutil.float = require(\"@protobufjs/float\");\n\n// requires modules optionally and hides the call from bundlers\nutil.inquire = require(\"@protobufjs/inquire\");\n\n// converts to / from utf8 encoded strings\nutil.utf8 = require(\"@protobufjs/utf8\");\n\n// provides a node-like buffer pool in the browser\nutil.pool = require(\"@protobufjs/pool\");\n\n// utility to work with the low and high bits of a 64 bit value\nutil.LongBits = require(\"./longbits\");\n\n/**\n * Whether running within node or not.\n * @memberof util\n * @type {boolean}\n */\nutil.isNode = Boolean(typeof global !== \"undefined\"\n && global\n && global.process\n && global.process.versions\n && global.process.versions.node);\n\n/**\n * Global object reference.\n * @memberof util\n * @type {Object}\n */\nutil.global = util.isNode && global\n || typeof window !== \"undefined\" && window\n || typeof self !== \"undefined\" && self\n || this; // eslint-disable-line no-invalid-this\n\n/**\n * An immuable empty array.\n * @memberof util\n * @type {Array.<*>}\n * @const\n */\nutil.emptyArray = Object.freeze ? Object.freeze([]) : /* istanbul ignore next */ []; // used on prototypes\n\n/**\n * An immutable empty object.\n * @type {Object}\n * @const\n */\nutil.emptyObject = Object.freeze ? Object.freeze({}) : /* istanbul ignore next */ {}; // used on prototypes\n\n/**\n * Tests if the specified value is an integer.\n * @function\n * @param {*} value Value to test\n * @returns {boolean} `true` if the value is an integer\n */\nutil.isInteger = Number.isInteger || /* istanbul ignore next */ function isInteger(value) {\n return typeof value === \"number\" && isFinite(value) && Math.floor(value) === value;\n};\n\n/**\n * Tests if the specified value is a string.\n * @param {*} value Value to test\n * @returns {boolean} `true` if the value is a string\n */\nutil.isString = function isString(value) {\n return typeof value === \"string\" || value instanceof String;\n};\n\n/**\n * Tests if the specified value is a non-null object.\n * @param {*} value Value to test\n * @returns {boolean} `true` if the value is a non-null object\n */\nutil.isObject = function isObject(value) {\n return value && typeof value === \"object\";\n};\n\n/**\n * Checks if a property on a message is considered to be present.\n * This is an alias of {@link util.isSet}.\n * @function\n * @param {Object} obj Plain object or message instance\n * @param {string} prop Property name\n * @returns {boolean} `true` if considered to be present, otherwise `false`\n */\nutil.isset =\n\n/**\n * Checks if a property on a message is considered to be present.\n * @param {Object} obj Plain object or message instance\n * @param {string} prop Property name\n * @returns {boolean} `true` if considered to be present, otherwise `false`\n */\nutil.isSet = function isSet(obj, prop) {\n var value = obj[prop];\n if (value != null && obj.hasOwnProperty(prop)) // eslint-disable-line eqeqeq, no-prototype-builtins\n return typeof value !== \"object\" || (Array.isArray(value) ? value.length : Object.keys(value).length) > 0;\n return false;\n};\n\n/**\n * Any compatible Buffer instance.\n * This is a minimal stand-alone definition of a Buffer instance. The actual type is that exported by node's typings.\n * @interface Buffer\n * @extends Uint8Array\n */\n\n/**\n * Node's Buffer class if available.\n * @type {Constructor}\n */\nutil.Buffer = (function() {\n try {\n var Buffer = util.inquire(\"buffer\").Buffer;\n // refuse to use non-node buffers if not explicitly assigned (perf reasons):\n return Buffer.prototype.utf8Write ? Buffer : /* istanbul ignore next */ null;\n } catch (e) {\n /* istanbul ignore next */\n return null;\n }\n})();\n\n// Internal alias of or polyfull for Buffer.from.\nutil._Buffer_from = null;\n\n// Internal alias of or polyfill for Buffer.allocUnsafe.\nutil._Buffer_allocUnsafe = null;\n\n/**\n * Creates a new buffer of whatever type supported by the environment.\n * @param {number|number[]} [sizeOrArray=0] Buffer size or number array\n * @returns {Uint8Array|Buffer} Buffer\n */\nutil.newBuffer = function newBuffer(sizeOrArray) {\n /* istanbul ignore next */\n return typeof sizeOrArray === \"number\"\n ? util.Buffer\n ? util._Buffer_allocUnsafe(sizeOrArray)\n : new util.Array(sizeOrArray)\n : util.Buffer\n ? util._Buffer_from(sizeOrArray)\n : typeof Uint8Array === \"undefined\"\n ? sizeOrArray\n : new Uint8Array(sizeOrArray);\n};\n\n/**\n * Array implementation used in the browser. `Uint8Array` if supported, otherwise `Array`.\n * @type {Constructor}\n */\nutil.Array = typeof Uint8Array !== \"undefined\" ? Uint8Array /* istanbul ignore next */ : Array;\n\n/**\n * Any compatible Long instance.\n * This is a minimal stand-alone definition of a Long instance. The actual type is that exported by long.js.\n * @interface Long\n * @property {number} low Low bits\n * @property {number} high High bits\n * @property {boolean} unsigned Whether unsigned or not\n */\n\n/**\n * Long.js's Long class if available.\n * @type {Constructor}\n */\nutil.Long = /* istanbul ignore next */ util.global.dcodeIO && /* istanbul ignore next */ util.global.dcodeIO.Long\n || /* istanbul ignore next */ util.global.Long\n || util.inquire(\"long\");\n\n/**\n * Regular expression used to verify 2 bit (`bool`) map keys.\n * @type {RegExp}\n * @const\n */\nutil.key2Re = /^true|false|0|1$/;\n\n/**\n * Regular expression used to verify 32 bit (`int32` etc.) map keys.\n * @type {RegExp}\n * @const\n */\nutil.key32Re = /^-?(?:0|[1-9][0-9]*)$/;\n\n/**\n * Regular expression used to verify 64 bit (`int64` etc.) map keys.\n * @type {RegExp}\n * @const\n */\nutil.key64Re = /^(?:[\\\\x00-\\\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;\n\n/**\n * Converts a number or long to an 8 characters long hash string.\n * @param {Long|number} value Value to convert\n * @returns {string} Hash\n */\nutil.longToHash = function longToHash(value) {\n return value\n ? util.LongBits.from(value).toHash()\n : util.LongBits.zeroHash;\n};\n\n/**\n * Converts an 8 characters long hash string to a long or number.\n * @param {string} hash Hash\n * @param {boolean} [unsigned=false] Whether unsigned or not\n * @returns {Long|number} Original value\n */\nutil.longFromHash = function longFromHash(hash, unsigned) {\n var bits = util.LongBits.fromHash(hash);\n if (util.Long)\n return util.Long.fromBits(bits.lo, bits.hi, unsigned);\n return bits.toNumber(Boolean(unsigned));\n};\n\n/**\n * Merges the properties of the source object into the destination object.\n * @memberof util\n * @param {Object.} dst Destination object\n * @param {Object.} src Source object\n * @param {boolean} [ifNotSet=false] Merges only if the key is not already set\n * @returns {Object.} Destination object\n */\nfunction merge(dst, src, ifNotSet) { // used by converters\n for (var keys = Object.keys(src), i = 0; i < keys.length; ++i)\n if (dst[keys[i]] === undefined || !ifNotSet)\n dst[keys[i]] = src[keys[i]];\n return dst;\n}\n\nutil.merge = merge;\n\n/**\n * Converts the first character of a string to lower case.\n * @param {string} str String to convert\n * @returns {string} Converted string\n */\nutil.lcFirst = function lcFirst(str) {\n return str.charAt(0).toLowerCase() + str.substring(1);\n};\n\n/**\n * Creates a custom error constructor.\n * @memberof util\n * @param {string} name Error name\n * @returns {Constructor} Custom error constructor\n */\nfunction newError(name) {\n\n function CustomError(message, properties) {\n\n if (!(this instanceof CustomError))\n return new CustomError(message, properties);\n\n // Error.call(this, message);\n // ^ just returns a new error instance because the ctor can be called as a function\n\n Object.defineProperty(this, \"message\", { get: function() { return message; } });\n\n /* istanbul ignore next */\n if (Error.captureStackTrace) // node\n Error.captureStackTrace(this, CustomError);\n else\n Object.defineProperty(this, \"stack\", { value: new Error().stack || \"\" });\n\n if (properties)\n merge(this, properties);\n }\n\n (CustomError.prototype = Object.create(Error.prototype)).constructor = CustomError;\n\n Object.defineProperty(CustomError.prototype, \"name\", { get: function() { return name; } });\n\n CustomError.prototype.toString = function toString() {\n return this.name + \": \" + this.message;\n };\n\n return CustomError;\n}\n\nutil.newError = newError;\n\n/**\n * Constructs a new protocol error.\n * @classdesc Error subclass indicating a protocol specifc error.\n * @memberof util\n * @extends Error\n * @template T extends Message\n * @constructor\n * @param {string} message Error message\n * @param {Object.} [properties] Additional properties\n * @example\n * try {\n * MyMessage.decode(someBuffer); // throws if required fields are missing\n * } catch (e) {\n * if (e instanceof ProtocolError && e.instance)\n * console.log(\"decoded so far: \" + JSON.stringify(e.instance));\n * }\n */\nutil.ProtocolError = newError(\"ProtocolError\");\n\n/**\n * So far decoded message instance.\n * @name util.ProtocolError#instance\n * @type {Message}\n */\n\n/**\n * A OneOf getter as returned by {@link util.oneOfGetter}.\n * @typedef OneOfGetter\n * @type {function}\n * @returns {string|undefined} Set field name, if any\n */\n\n/**\n * Builds a getter for a oneof's present field name.\n * @param {string[]} fieldNames Field names\n * @returns {OneOfGetter} Unbound getter\n */\nutil.oneOfGetter = function getOneOf(fieldNames) {\n var fieldMap = {};\n for (var i = 0; i < fieldNames.length; ++i)\n fieldMap[fieldNames[i]] = 1;\n\n /**\n * @returns {string|undefined} Set field name, if any\n * @this Object\n * @ignore\n */\n return function() { // eslint-disable-line consistent-return\n for (var keys = Object.keys(this), i = keys.length - 1; i > -1; --i)\n if (fieldMap[keys[i]] === 1 && this[keys[i]] !== undefined && this[keys[i]] !== null)\n return keys[i];\n };\n};\n\n/**\n * A OneOf setter as returned by {@link util.oneOfSetter}.\n * @typedef OneOfSetter\n * @type {function}\n * @param {string|undefined} value Field name\n * @returns {undefined}\n */\n\n/**\n * Builds a setter for a oneof's present field name.\n * @param {string[]} fieldNames Field names\n * @returns {OneOfSetter} Unbound setter\n */\nutil.oneOfSetter = function setOneOf(fieldNames) {\n\n /**\n * @param {string} name Field name\n * @returns {undefined}\n * @this Object\n * @ignore\n */\n return function(name) {\n for (var i = 0; i < fieldNames.length; ++i)\n if (fieldNames[i] !== name)\n delete this[fieldNames[i]];\n };\n};\n\n/**\n * Default conversion options used for {@link Message#toJSON} implementations.\n *\n * These options are close to proto3's JSON mapping with the exception that internal types like Any are handled just like messages. More precisely:\n *\n * - Longs become strings\n * - Enums become string keys\n * - Bytes become base64 encoded strings\n * - (Sub-)Messages become plain objects\n * - Maps become plain objects with all string keys\n * - Repeated fields become arrays\n * - NaN and Infinity for float and double fields become strings\n *\n * @type {IConversionOptions}\n * @see https://developers.google.com/protocol-buffers/docs/proto3?hl=en#json\n */\nutil.toJSONOptions = {\n longs: String,\n enums: String,\n bytes: String,\n json: true\n};\n\n// Sets up buffer utility according to the environment (called in index-minimal)\nutil._configure = function() {\n var Buffer = util.Buffer;\n /* istanbul ignore if */\n if (!Buffer) {\n util._Buffer_from = util._Buffer_allocUnsafe = null;\n return;\n }\n // because node 4.x buffers are incompatible & immutable\n // see: https://github.com/dcodeIO/protobuf.js/pull/665\n util._Buffer_from = Buffer.from !== Uint8Array.from && Buffer.from ||\n /* istanbul ignore next */\n function Buffer_from(value, encoding) {\n return new Buffer(value, encoding);\n };\n util._Buffer_allocUnsafe = Buffer.allocUnsafe ||\n /* istanbul ignore next */\n function Buffer_allocUnsafe(size) {\n return new Buffer(size);\n };\n};\n","import GrpcServiceError from \"./grpc/GrpcServiceError.js\";\nimport GrpcStatus from \"./grpc/GrpcStatus.js\";\nimport List from \"./transaction/List.js\";\n\n/**\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n * @typedef {import(\"./channel/Channel.js\").default} Channel\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"./client/Client.js\").ClientOperator} ClientOperator\n */\n\n/**\n * @enum {string}\n */\nexport const ExecutionState = {\n Finished: \"Finished\",\n Retry: \"Retry\",\n Error: \"Error\",\n};\n\nexport const RST_STREAM = /\\brst[^0-9a-zA-Z]stream\\b/i;\n\n/**\n * @abstract\n * @internal\n * @template RequestT\n * @template ResponseT\n * @template OutputT\n */\nexport default class Executable {\n constructor() {\n /**\n * The number of times we can retry the grpc call\n *\n * @private\n * @type {number}\n */\n this._maxAttempts = 10;\n\n /**\n * The index of the next transaction to be executed.\n *\n * @protected\n * @type {number}\n */\n this._nextNodeAccountIdIndex = 0;\n\n /**\n * List of node account IDs for each transaction that has been\n * built.\n *\n * @internal\n * @type {List}\n */\n this._nodeAccountIds = new List();\n\n this._signOnDemand = false;\n\n /** @type {number | null} */\n this._minBackoff = null;\n\n /** @type {number | null} */\n this._maxBackoff = null;\n\n /**\n * @type {ClientOperator | null}\n */\n this._operator = null;\n\n /** @type {number | null} */\n this._requestTimeout = null;\n\n this._grpcDeadline = null;\n }\n\n /**\n * @returns {?AccountId[]}\n */\n get nodeAccountIds() {\n return this._nodeAccountIds.isEmpty ? null : this._nodeAccountIds.list;\n }\n\n /**\n * @param {AccountId[]} nodeIds\n * @returns {this}\n */\n setNodeAccountIds(nodeIds) {\n this._nodeAccountIds.setList(nodeIds).setLocked();\n return this;\n }\n\n /**\n * @deprecated\n * @returns {number}\n */\n get maxRetries() {\n console.warn(\"Deprecated: use maxAttempts instead\");\n return this.maxAttempts;\n }\n\n /**\n * @param {number} maxRetries\n * @returns {this}\n */\n setMaxRetries(maxRetries) {\n console.warn(\"Deprecated: use setMaxAttempts() instead\");\n return this.setMaxAttempts(maxRetries);\n }\n\n /**\n * @returns {number}\n */\n get maxAttempts() {\n return this._maxAttempts;\n }\n\n /**\n * @param {number} maxAttempts\n * @returns {this}\n */\n setMaxAttempts(maxAttempts) {\n this._maxAttempts = maxAttempts;\n\n return this;\n }\n\n /**\n * @returns {?number}\n */\n get grpcDeadline() {\n return this._grpcDeadline;\n }\n\n /**\n * @param {number} grpcDeadline\n * @returns {this}\n */\n setGrpcDeadline(grpcDeadline) {\n this._grpcDeadline = grpcDeadline;\n\n return this;\n }\n\n /**\n * @param {number} minBackoff\n * @returns {this}\n */\n setMinBackoff(minBackoff) {\n if (minBackoff == null) {\n throw new Error(\"minBackoff cannot be null.\");\n } else if (this._maxBackoff != null && minBackoff > this._maxBackoff) {\n throw new Error(\"minBackoff cannot be larger than maxBackoff.\");\n }\n this._minBackoff = minBackoff;\n return this;\n }\n\n /**\n * @returns {number | null}\n */\n get minBackoff() {\n return this._minBackoff;\n }\n\n /**\n * @param {?number} maxBackoff\n * @returns {this}\n */\n setMaxBackoff(maxBackoff) {\n if (maxBackoff == null) {\n throw new Error(\"maxBackoff cannot be null.\");\n } else if (this._minBackoff != null && maxBackoff < this._minBackoff) {\n throw new Error(\"maxBackoff cannot be smaller than minBackoff.\");\n }\n this._maxBackoff = maxBackoff;\n return this;\n }\n\n /**\n * @returns {number | null}\n */\n get maxBackoff() {\n return this._maxBackoff;\n }\n\n /**\n * @abstract\n * @protected\n * @param {import(\"./client/Client.js\").default} client\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _beforeExecute(client) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @returns {Promise}\n */\n _makeRequestAsync() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @internal\n * @param {RequestT} request\n * @param {ResponseT} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @param {ResponseT} response\n * @param {AccountId} nodeAccountId\n * @param {RequestT} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @internal\n * @param {Channel} channel\n * @param {RequestT} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _execute(channel, request) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @returns {AccountId}\n */\n _getNodeAccountId() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @returns {TransactionId}\n */\n _getTransactionId() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @returns {void}\n */\n _advanceRequest() {\n // each time we move our cursor to the next transaction\n // wrapping around to ensure we are cycling\n this._nextNodeAccountIdIndex =\n (this._nextNodeAccountIdIndex + 1) % this._nodeAccountIds.length;\n }\n\n /**\n * @abstract\n * @protected\n * @param {RequestT} request\n * @param {ResponseT} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @param {GrpcServiceError} error\n * @returns {boolean}\n */\n _shouldRetryExceptionally(error) {\n return (\n error.status._code === GrpcStatus.Unavailable._code ||\n error.status._code === GrpcStatus.ResourceExhausted._code ||\n (error.status._code === GrpcStatus.Internal._code &&\n RST_STREAM.test(error.message))\n );\n }\n\n /**\n * @template {Channel} ChannelT\n * @template MirrorChannelT\n * @param {import(\"./client/Client.js\").default} client\n * @param {number=} requestTimeout\n * @returns {Promise}\n */\n async execute(client, requestTimeout) {\n if (this._requestTimeout == null) {\n this._requestTimeout =\n requestTimeout != null ? requestTimeout : client.requestTimeout;\n }\n\n await this._beforeExecute(client);\n\n if (this._maxBackoff == null) {\n this._maxBackoff = client.maxBackoff;\n }\n\n if (this._minBackoff == null) {\n this._minBackoff = client.minBackoff;\n }\n\n const maxAttempts =\n client._maxAttempts != null\n ? client._maxAttempts\n : this._maxAttempts;\n\n const startTime = Date.now();\n\n for (let attempt = 1 /* loop forever */; ; attempt += 1) {\n if (\n this._requestTimeout != null &&\n startTime + this._requestTimeout > Date.now()\n ) {\n throw new Error(\"timeout exceeded\");\n }\n\n const nodeAccountId = this._getNodeAccountId();\n const node = client._network.getNode(nodeAccountId);\n\n if (node == null) {\n throw new Error(\n `NodeAccountId not recognized: ${nodeAccountId.toString()}`\n );\n }\n\n const channel = node.getChannel();\n const request = await this._makeRequestAsync();\n\n // advance the internal index\n // non-free queries and transactions map to more than 1 actual transaction and this will cause\n // the next invocation of makeRequest to return the _next_ transaction\n this._advanceRequest();\n\n let response;\n\n if (!node.isHealthy()) {\n await node.wait();\n }\n\n try {\n const promises = [];\n if (this._grpcDeadline != null) {\n promises.push(\n // eslint-disable-next-line ie11/no-loop-func\n new Promise((_, reject) =>\n setTimeout(\n // eslint-disable-next-line ie11/no-loop-func\n () =>\n reject(new Error(\"grpc deadline exceeded\")),\n /** @type {number=} */ (this._grpcDeadline)\n )\n )\n );\n }\n promises.push(this._execute(channel, request));\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n response = /** @type {ResponseT} */ (\n await Promise.race(promises)\n );\n } catch (err) {\n const error = GrpcServiceError._fromResponse(\n /** @type {Error} */ (err)\n );\n\n if (\n error instanceof GrpcServiceError &&\n this._shouldRetryExceptionally(error) &&\n attempt <= maxAttempts\n ) {\n node.increaseDelay();\n continue;\n }\n\n throw err;\n }\n\n node.decreaseDelay();\n\n switch (this._shouldRetry(request, response)) {\n case ExecutionState.Retry:\n await delayForAttempt(\n attempt,\n this._minBackoff,\n this._maxBackoff\n );\n continue;\n case ExecutionState.Finished:\n return this._mapResponse(response, nodeAccountId, request);\n case ExecutionState.Error:\n throw this._mapStatusError(request, response);\n default:\n throw new Error(\n \"(BUG) non-exhuastive switch statement for `ExecutionState`\"\n );\n }\n }\n }\n}\n\n/**\n * @param {number} attempt\n * @param {number} minBackoff\n * @param {number} maxBackoff\n * @returns {Promise}\n */\nfunction delayForAttempt(attempt, minBackoff, maxBackoff) {\n // 0.1s, 0.2s, 0.4s, 0.8s, ...\n const ms = Math.min(\n Math.floor(minBackoff * Math.pow(2, attempt)),\n maxBackoff\n );\n return new Promise((resolve) => setTimeout(resolve, ms));\n}\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n *\n * @augments {EntityId}\n */\n\nexport default class ScheduleId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {ScheduleId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new ScheduleId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.IScheduleID} id\n * @returns {ScheduleId}\n */\n static _fromProtobuf(id) {\n const scheduleId = new ScheduleId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.scheduleNum != null ? id.scheduleNum : 0\n );\n\n return scheduleId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {ScheduleId}\n */\n static fromBytes(bytes) {\n return ScheduleId._fromProtobuf(proto.ScheduleID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {ScheduleId}\n */\n static fromSolidityAddress(address) {\n return new ScheduleId(...entity_id.fromSolidityAddress(address));\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.ScheduleID}\n */\n _toProtobuf() {\n return {\n scheduleNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ScheduleID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {ScheduleId}\n */\n clone() {\n const id = new ScheduleId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {ScheduleId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n","\"use strict\";\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bufArrToArr = exports.arrToBufArr = exports.validateNoLeadingZeroes = exports.baToJSON = exports.toUtf8 = exports.addHexPrefix = exports.toUnsigned = exports.fromSigned = exports.bufferToHex = exports.bufferToInt = exports.toBuffer = exports.unpadHexString = exports.unpadArray = exports.unpadBuffer = exports.setLengthRight = exports.setLengthLeft = exports.zeros = exports.intToBuffer = exports.intToHex = void 0;\nvar externals_1 = require(\"./externals\");\nvar internal_1 = require(\"./internal\");\nvar helpers_1 = require(\"./helpers\");\n/**\n * Converts a `Number` into a hex `String`\n * @param {Number} i\n * @return {String}\n */\nvar intToHex = function (i) {\n if (!Number.isSafeInteger(i) || i < 0) {\n throw new Error(\"Received an invalid integer type: \".concat(i));\n }\n return \"0x\".concat(i.toString(16));\n};\nexports.intToHex = intToHex;\n/**\n * Converts an `Number` to a `Buffer`\n * @param {Number} i\n * @return {Buffer}\n */\nvar intToBuffer = function (i) {\n var hex = (0, exports.intToHex)(i);\n return Buffer.from((0, internal_1.padToEven)(hex.slice(2)), 'hex');\n};\nexports.intToBuffer = intToBuffer;\n/**\n * Returns a buffer filled with 0s.\n * @param bytes the number of bytes the buffer should be\n */\nvar zeros = function (bytes) {\n return Buffer.allocUnsafe(bytes).fill(0);\n};\nexports.zeros = zeros;\n/**\n * Pads a `Buffer` with zeros till it has `length` bytes.\n * Truncates the beginning or end of input if its length exceeds `length`.\n * @param msg the value to pad (Buffer)\n * @param length the number of bytes the output should be\n * @param right whether to start padding form the left or right\n * @return (Buffer)\n */\nvar setLength = function (msg, length, right) {\n var buf = (0, exports.zeros)(length);\n if (right) {\n if (msg.length < length) {\n msg.copy(buf);\n return buf;\n }\n return msg.slice(0, length);\n }\n else {\n if (msg.length < length) {\n msg.copy(buf, length - msg.length);\n return buf;\n }\n return msg.slice(-length);\n }\n};\n/**\n * Left Pads a `Buffer` with leading zeros till it has `length` bytes.\n * Or it truncates the beginning if it exceeds.\n * @param msg the value to pad (Buffer)\n * @param length the number of bytes the output should be\n * @return (Buffer)\n */\nvar setLengthLeft = function (msg, length) {\n (0, helpers_1.assertIsBuffer)(msg);\n return setLength(msg, length, false);\n};\nexports.setLengthLeft = setLengthLeft;\n/**\n * Right Pads a `Buffer` with trailing zeros till it has `length` bytes.\n * it truncates the end if it exceeds.\n * @param msg the value to pad (Buffer)\n * @param length the number of bytes the output should be\n * @return (Buffer)\n */\nvar setLengthRight = function (msg, length) {\n (0, helpers_1.assertIsBuffer)(msg);\n return setLength(msg, length, true);\n};\nexports.setLengthRight = setLengthRight;\n/**\n * Trims leading zeros from a `Buffer`, `String` or `Number[]`.\n * @param a (Buffer|Array|String)\n * @return (Buffer|Array|String)\n */\nvar stripZeros = function (a) {\n var first = a[0];\n while (a.length > 0 && first.toString() === '0') {\n a = a.slice(1);\n first = a[0];\n }\n return a;\n};\n/**\n * Trims leading zeros from a `Buffer`.\n * @param a (Buffer)\n * @return (Buffer)\n */\nvar unpadBuffer = function (a) {\n (0, helpers_1.assertIsBuffer)(a);\n return stripZeros(a);\n};\nexports.unpadBuffer = unpadBuffer;\n/**\n * Trims leading zeros from an `Array` (of numbers).\n * @param a (number[])\n * @return (number[])\n */\nvar unpadArray = function (a) {\n (0, helpers_1.assertIsArray)(a);\n return stripZeros(a);\n};\nexports.unpadArray = unpadArray;\n/**\n * Trims leading zeros from a hex-prefixed `String`.\n * @param a (String)\n * @return (String)\n */\nvar unpadHexString = function (a) {\n (0, helpers_1.assertIsHexString)(a);\n a = (0, internal_1.stripHexPrefix)(a);\n return stripZeros(a);\n};\nexports.unpadHexString = unpadHexString;\n/**\n * Attempts to turn a value into a `Buffer`.\n * Inputs supported: `Buffer`, `String` (hex-prefixed), `Number`, null/undefined, `BN` and other objects\n * with a `toArray()` or `toBuffer()` method.\n * @param v the value\n */\nvar toBuffer = function (v) {\n if (v === null || v === undefined) {\n return Buffer.allocUnsafe(0);\n }\n if (Buffer.isBuffer(v)) {\n return Buffer.from(v);\n }\n if (Array.isArray(v) || v instanceof Uint8Array) {\n return Buffer.from(v);\n }\n if (typeof v === 'string') {\n if (!(0, internal_1.isHexString)(v)) {\n throw new Error(\"Cannot convert string to buffer. toBuffer only supports 0x-prefixed hex strings and this string was given: \".concat(v));\n }\n return Buffer.from((0, internal_1.padToEven)((0, internal_1.stripHexPrefix)(v)), 'hex');\n }\n if (typeof v === 'number') {\n return (0, exports.intToBuffer)(v);\n }\n if (externals_1.BN.isBN(v)) {\n if (v.isNeg()) {\n throw new Error(\"Cannot convert negative BN to buffer. Given: \".concat(v));\n }\n return v.toArrayLike(Buffer);\n }\n if (v.toArray) {\n // converts a BN to a Buffer\n return Buffer.from(v.toArray());\n }\n if (v.toBuffer) {\n return Buffer.from(v.toBuffer());\n }\n throw new Error('invalid type');\n};\nexports.toBuffer = toBuffer;\n/**\n * Converts a `Buffer` to a `Number`.\n * @param buf `Buffer` object to convert\n * @throws If the input number exceeds 53 bits.\n */\nvar bufferToInt = function (buf) {\n return new externals_1.BN((0, exports.toBuffer)(buf)).toNumber();\n};\nexports.bufferToInt = bufferToInt;\n/**\n * Converts a `Buffer` into a `0x`-prefixed hex `String`.\n * @param buf `Buffer` object to convert\n */\nvar bufferToHex = function (buf) {\n buf = (0, exports.toBuffer)(buf);\n return '0x' + buf.toString('hex');\n};\nexports.bufferToHex = bufferToHex;\n/**\n * Interprets a `Buffer` as a signed integer and returns a `BN`. Assumes 256-bit numbers.\n * @param num Signed integer value\n */\nvar fromSigned = function (num) {\n return new externals_1.BN(num).fromTwos(256);\n};\nexports.fromSigned = fromSigned;\n/**\n * Converts a `BN` to an unsigned integer and returns it as a `Buffer`. Assumes 256-bit numbers.\n * @param num\n */\nvar toUnsigned = function (num) {\n return Buffer.from(num.toTwos(256).toArray());\n};\nexports.toUnsigned = toUnsigned;\n/**\n * Adds \"0x\" to a given `String` if it does not already start with \"0x\".\n */\nvar addHexPrefix = function (str) {\n if (typeof str !== 'string') {\n return str;\n }\n return (0, internal_1.isHexPrefixed)(str) ? str : '0x' + str;\n};\nexports.addHexPrefix = addHexPrefix;\n/**\n * Returns the utf8 string representation from a hex string.\n *\n * Examples:\n *\n * Input 1: '657468657265756d000000000000000000000000000000000000000000000000'\n * Input 2: '657468657265756d'\n * Input 3: '000000000000000000000000000000000000000000000000657468657265756d'\n *\n * Output (all 3 input variants): 'ethereum'\n *\n * Note that this method is not intended to be used with hex strings\n * representing quantities in both big endian or little endian notation.\n *\n * @param string Hex string, should be `0x` prefixed\n * @return Utf8 string\n */\nvar toUtf8 = function (hex) {\n var zerosRegexp = /^(00)+|(00)+$/g;\n hex = (0, internal_1.stripHexPrefix)(hex);\n if (hex.length % 2 !== 0) {\n throw new Error('Invalid non-even hex string input for toUtf8() provided');\n }\n var bufferVal = Buffer.from(hex.replace(zerosRegexp, ''), 'hex');\n return bufferVal.toString('utf8');\n};\nexports.toUtf8 = toUtf8;\n/**\n * Converts a `Buffer` or `Array` to JSON.\n * @param ba (Buffer|Array)\n * @return (Array|String|null)\n */\nvar baToJSON = function (ba) {\n if (Buffer.isBuffer(ba)) {\n return \"0x\".concat(ba.toString('hex'));\n }\n else if (ba instanceof Array) {\n var array = [];\n for (var i = 0; i < ba.length; i++) {\n array.push((0, exports.baToJSON)(ba[i]));\n }\n return array;\n }\n};\nexports.baToJSON = baToJSON;\n/**\n * Checks provided Buffers for leading zeroes and throws if found.\n *\n * Examples:\n *\n * Valid values: 0x1, 0x, 0x01, 0x1234\n * Invalid values: 0x0, 0x00, 0x001, 0x0001\n *\n * Note: This method is useful for validating that RLP encoded integers comply with the rule that all\n * integer values encoded to RLP must be in the most compact form and contain no leading zero bytes\n * @param values An object containing string keys and Buffer values\n * @throws if any provided value is found to have leading zero bytes\n */\nvar validateNoLeadingZeroes = function (values) {\n var e_1, _a;\n try {\n for (var _b = __values(Object.entries(values)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var _d = __read(_c.value, 2), k = _d[0], v = _d[1];\n if (v !== undefined && v.length > 0 && v[0] === 0) {\n throw new Error(\"\".concat(k, \" cannot have leading zeroes, received: \").concat(v.toString('hex')));\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n};\nexports.validateNoLeadingZeroes = validateNoLeadingZeroes;\nfunction arrToBufArr(arr) {\n if (!Array.isArray(arr)) {\n return Buffer.from(arr);\n }\n return arr.map(function (a) { return arrToBufArr(a); });\n}\nexports.arrToBufArr = arrToBufArr;\nfunction bufArrToArr(arr) {\n if (!Array.isArray(arr)) {\n return Uint8Array.from(arr !== null && arr !== void 0 ? arr : []);\n }\n return arr.map(function (a) { return bufArrToArr(a); });\n}\nexports.bufArrToArr = bufArrToArr;\n//# sourceMappingURL=bytes.js.map","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a duplex stream is just a stream that is both readable and writable.\n// Since JS doesn't have multiple prototypal inheritance, this class\n// prototypally inherits from Readable, and then parasitically from\n// Writable.\n\n'use strict';\n\n/**/\n\nvar pna = require('process-nextick-args');\n/**/\n\n/**/\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n for (var key in obj) {\n keys.push(key);\n }return keys;\n};\n/**/\n\nmodule.exports = Duplex;\n\n/**/\nvar util = Object.create(require('core-util-is'));\nutil.inherits = require('inherits');\n/**/\n\nvar Readable = require('./_stream_readable');\nvar Writable = require('./_stream_writable');\n\nutil.inherits(Duplex, Readable);\n\n{\n // avoid scope creep, the keys array can then be collected\n var keys = objectKeys(Writable.prototype);\n for (var v = 0; v < keys.length; v++) {\n var method = keys[v];\n if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];\n }\n}\n\nfunction Duplex(options) {\n if (!(this instanceof Duplex)) return new Duplex(options);\n\n Readable.call(this, options);\n Writable.call(this, options);\n\n if (options && options.readable === false) this.readable = false;\n\n if (options && options.writable === false) this.writable = false;\n\n this.allowHalfOpen = true;\n if (options && options.allowHalfOpen === false) this.allowHalfOpen = false;\n\n this.once('end', onend);\n}\n\nObject.defineProperty(Duplex.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function () {\n return this._writableState.highWaterMark;\n }\n});\n\n// the no-half-open enforcer\nfunction onend() {\n // if we allow half-open state, or if the writable side ended,\n // then we're ok.\n if (this.allowHalfOpen || this._writableState.ended) return;\n\n // no more data can be written.\n // But allow more writes to happen in this tick.\n pna.nextTick(onEndNT, this);\n}\n\nfunction onEndNT(self) {\n self.end();\n}\n\nObject.defineProperty(Duplex.prototype, 'destroyed', {\n get: function () {\n if (this._readableState === undefined || this._writableState === undefined) {\n return false;\n }\n return this._readableState.destroyed && this._writableState.destroyed;\n },\n set: function (value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (this._readableState === undefined || this._writableState === undefined) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._readableState.destroyed = value;\n this._writableState.destroyed = value;\n }\n});\n\nDuplex.prototype._destroy = function (err, cb) {\n this.push(null);\n this.end();\n\n pna.nextTick(cb, err);\n};",";(function (globalObject) {\r\n 'use strict';\r\n\r\n/*\r\n * bignumber.js v9.0.2\r\n * A JavaScript library for arbitrary-precision arithmetic.\r\n * https://github.com/MikeMcl/bignumber.js\r\n * Copyright (c) 2021 Michael Mclaughlin \r\n * MIT Licensed.\r\n *\r\n * BigNumber.prototype methods | BigNumber methods\r\n * |\r\n * absoluteValue abs | clone\r\n * comparedTo | config set\r\n * decimalPlaces dp | DECIMAL_PLACES\r\n * dividedBy div | ROUNDING_MODE\r\n * dividedToIntegerBy idiv | EXPONENTIAL_AT\r\n * exponentiatedBy pow | RANGE\r\n * integerValue | CRYPTO\r\n * isEqualTo eq | MODULO_MODE\r\n * isFinite | POW_PRECISION\r\n * isGreaterThan gt | FORMAT\r\n * isGreaterThanOrEqualTo gte | ALPHABET\r\n * isInteger | isBigNumber\r\n * isLessThan lt | maximum max\r\n * isLessThanOrEqualTo lte | minimum min\r\n * isNaN | random\r\n * isNegative | sum\r\n * isPositive |\r\n * isZero |\r\n * minus |\r\n * modulo mod |\r\n * multipliedBy times |\r\n * negated |\r\n * plus |\r\n * precision sd |\r\n * shiftedBy |\r\n * squareRoot sqrt |\r\n * toExponential |\r\n * toFixed |\r\n * toFormat |\r\n * toFraction |\r\n * toJSON |\r\n * toNumber |\r\n * toPrecision |\r\n * toString |\r\n * valueOf |\r\n *\r\n */\r\n\r\n\r\n var BigNumber,\r\n isNumeric = /^-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:e[+-]?\\d+)?$/i,\r\n mathceil = Math.ceil,\r\n mathfloor = Math.floor,\r\n\r\n bignumberError = '[BigNumber Error] ',\r\n tooManyDigits = bignumberError + 'Number primitive has more than 15 significant digits: ',\r\n\r\n BASE = 1e14,\r\n LOG_BASE = 14,\r\n MAX_SAFE_INTEGER = 0x1fffffffffffff, // 2^53 - 1\r\n // MAX_INT32 = 0x7fffffff, // 2^31 - 1\r\n POWS_TEN = [1, 10, 100, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9, 1e10, 1e11, 1e12, 1e13],\r\n SQRT_BASE = 1e7,\r\n\r\n // EDITABLE\r\n // The limit on the value of DECIMAL_PLACES, TO_EXP_NEG, TO_EXP_POS, MIN_EXP, MAX_EXP, and\r\n // the arguments to toExponential, toFixed, toFormat, and toPrecision.\r\n MAX = 1E9; // 0 to MAX_INT32\r\n\r\n\r\n /*\r\n * Create and return a BigNumber constructor.\r\n */\r\n function clone(configObject) {\r\n var div, convertBase, parseNumeric,\r\n P = BigNumber.prototype = { constructor: BigNumber, toString: null, valueOf: null },\r\n ONE = new BigNumber(1),\r\n\r\n\r\n //----------------------------- EDITABLE CONFIG DEFAULTS -------------------------------\r\n\r\n\r\n // The default values below must be integers within the inclusive ranges stated.\r\n // The values can also be changed at run-time using BigNumber.set.\r\n\r\n // The maximum number of decimal places for operations involving division.\r\n DECIMAL_PLACES = 20, // 0 to MAX\r\n\r\n // The rounding mode used when rounding to the above decimal places, and when using\r\n // toExponential, toFixed, toFormat and toPrecision, and round (default value).\r\n // UP 0 Away from zero.\r\n // DOWN 1 Towards zero.\r\n // CEIL 2 Towards +Infinity.\r\n // FLOOR 3 Towards -Infinity.\r\n // HALF_UP 4 Towards nearest neighbour. If equidistant, up.\r\n // HALF_DOWN 5 Towards nearest neighbour. If equidistant, down.\r\n // HALF_EVEN 6 Towards nearest neighbour. If equidistant, towards even neighbour.\r\n // HALF_CEIL 7 Towards nearest neighbour. If equidistant, towards +Infinity.\r\n // HALF_FLOOR 8 Towards nearest neighbour. If equidistant, towards -Infinity.\r\n ROUNDING_MODE = 4, // 0 to 8\r\n\r\n // EXPONENTIAL_AT : [TO_EXP_NEG , TO_EXP_POS]\r\n\r\n // The exponent value at and beneath which toString returns exponential notation.\r\n // Number type: -7\r\n TO_EXP_NEG = -7, // 0 to -MAX\r\n\r\n // The exponent value at and above which toString returns exponential notation.\r\n // Number type: 21\r\n TO_EXP_POS = 21, // 0 to MAX\r\n\r\n // RANGE : [MIN_EXP, MAX_EXP]\r\n\r\n // The minimum exponent value, beneath which underflow to zero occurs.\r\n // Number type: -324 (5e-324)\r\n MIN_EXP = -1e7, // -1 to -MAX\r\n\r\n // The maximum exponent value, above which overflow to Infinity occurs.\r\n // Number type: 308 (1.7976931348623157e+308)\r\n // For MAX_EXP > 1e7, e.g. new BigNumber('1e100000000').plus(1) may be slow.\r\n MAX_EXP = 1e7, // 1 to MAX\r\n\r\n // Whether to use cryptographically-secure random number generation, if available.\r\n CRYPTO = false, // true or false\r\n\r\n // The modulo mode used when calculating the modulus: a mod n.\r\n // The quotient (q = a / n) is calculated according to the corresponding rounding mode.\r\n // The remainder (r) is calculated as: r = a - n * q.\r\n //\r\n // UP 0 The remainder is positive if the dividend is negative, else is negative.\r\n // DOWN 1 The remainder has the same sign as the dividend.\r\n // This modulo mode is commonly known as 'truncated division' and is\r\n // equivalent to (a % n) in JavaScript.\r\n // FLOOR 3 The remainder has the same sign as the divisor (Python %).\r\n // HALF_EVEN 6 This modulo mode implements the IEEE 754 remainder function.\r\n // EUCLID 9 Euclidian division. q = sign(n) * floor(a / abs(n)).\r\n // The remainder is always positive.\r\n //\r\n // The truncated division, floored division, Euclidian division and IEEE 754 remainder\r\n // modes are commonly used for the modulus operation.\r\n // Although the other rounding modes can also be used, they may not give useful results.\r\n MODULO_MODE = 1, // 0 to 9\r\n\r\n // The maximum number of significant digits of the result of the exponentiatedBy operation.\r\n // If POW_PRECISION is 0, there will be unlimited significant digits.\r\n POW_PRECISION = 0, // 0 to MAX\r\n\r\n // The format specification used by the BigNumber.prototype.toFormat method.\r\n FORMAT = {\r\n prefix: '',\r\n groupSize: 3,\r\n secondaryGroupSize: 0,\r\n groupSeparator: ',',\r\n decimalSeparator: '.',\r\n fractionGroupSize: 0,\r\n fractionGroupSeparator: '\\xA0', // non-breaking space\r\n suffix: ''\r\n },\r\n\r\n // The alphabet used for base conversion. It must be at least 2 characters long, with no '+',\r\n // '-', '.', whitespace, or repeated character.\r\n // '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$_'\r\n ALPHABET = '0123456789abcdefghijklmnopqrstuvwxyz',\r\n alphabetHasNormalDecimalDigits = true;\r\n\r\n\r\n //------------------------------------------------------------------------------------------\r\n\r\n\r\n // CONSTRUCTOR\r\n\r\n\r\n /*\r\n * The BigNumber constructor and exported function.\r\n * Create and return a new instance of a BigNumber object.\r\n *\r\n * v {number|string|BigNumber} A numeric value.\r\n * [b] {number} The base of v. Integer, 2 to ALPHABET.length inclusive.\r\n */\r\n function BigNumber(v, b) {\r\n var alphabet, c, caseChanged, e, i, isNum, len, str,\r\n x = this;\r\n\r\n // Enable constructor call without `new`.\r\n if (!(x instanceof BigNumber)) return new BigNumber(v, b);\r\n\r\n if (b == null) {\r\n\r\n if (v && v._isBigNumber === true) {\r\n x.s = v.s;\r\n\r\n if (!v.c || v.e > MAX_EXP) {\r\n x.c = x.e = null;\r\n } else if (v.e < MIN_EXP) {\r\n x.c = [x.e = 0];\r\n } else {\r\n x.e = v.e;\r\n x.c = v.c.slice();\r\n }\r\n\r\n return;\r\n }\r\n\r\n if ((isNum = typeof v == 'number') && v * 0 == 0) {\r\n\r\n // Use `1 / n` to handle minus zero also.\r\n x.s = 1 / v < 0 ? (v = -v, -1) : 1;\r\n\r\n // Fast path for integers, where n < 2147483648 (2**31).\r\n if (v === ~~v) {\r\n for (e = 0, i = v; i >= 10; i /= 10, e++);\r\n\r\n if (e > MAX_EXP) {\r\n x.c = x.e = null;\r\n } else {\r\n x.e = e;\r\n x.c = [v];\r\n }\r\n\r\n return;\r\n }\r\n\r\n str = String(v);\r\n } else {\r\n\r\n if (!isNumeric.test(str = String(v))) return parseNumeric(x, str, isNum);\r\n\r\n x.s = str.charCodeAt(0) == 45 ? (str = str.slice(1), -1) : 1;\r\n }\r\n\r\n // Decimal point?\r\n if ((e = str.indexOf('.')) > -1) str = str.replace('.', '');\r\n\r\n // Exponential form?\r\n if ((i = str.search(/e/i)) > 0) {\r\n\r\n // Determine exponent.\r\n if (e < 0) e = i;\r\n e += +str.slice(i + 1);\r\n str = str.substring(0, i);\r\n } else if (e < 0) {\r\n\r\n // Integer.\r\n e = str.length;\r\n }\r\n\r\n } else {\r\n\r\n // '[BigNumber Error] Base {not a primitive number|not an integer|out of range}: {b}'\r\n intCheck(b, 2, ALPHABET.length, 'Base');\r\n\r\n // Allow exponential notation to be used with base 10 argument, while\r\n // also rounding to DECIMAL_PLACES as with other bases.\r\n if (b == 10 && alphabetHasNormalDecimalDigits) {\r\n x = new BigNumber(v);\r\n return round(x, DECIMAL_PLACES + x.e + 1, ROUNDING_MODE);\r\n }\r\n\r\n str = String(v);\r\n\r\n if (isNum = typeof v == 'number') {\r\n\r\n // Avoid potential interpretation of Infinity and NaN as base 44+ values.\r\n if (v * 0 != 0) return parseNumeric(x, str, isNum, b);\r\n\r\n x.s = 1 / v < 0 ? (str = str.slice(1), -1) : 1;\r\n\r\n // '[BigNumber Error] Number primitive has more than 15 significant digits: {n}'\r\n if (BigNumber.DEBUG && str.replace(/^0\\.0*|\\./, '').length > 15) {\r\n throw Error\r\n (tooManyDigits + v);\r\n }\r\n } else {\r\n x.s = str.charCodeAt(0) === 45 ? (str = str.slice(1), -1) : 1;\r\n }\r\n\r\n alphabet = ALPHABET.slice(0, b);\r\n e = i = 0;\r\n\r\n // Check that str is a valid base b number.\r\n // Don't use RegExp, so alphabet can contain special characters.\r\n for (len = str.length; i < len; i++) {\r\n if (alphabet.indexOf(c = str.charAt(i)) < 0) {\r\n if (c == '.') {\r\n\r\n // If '.' is not the first character and it has not be found before.\r\n if (i > e) {\r\n e = len;\r\n continue;\r\n }\r\n } else if (!caseChanged) {\r\n\r\n // Allow e.g. hexadecimal 'FF' as well as 'ff'.\r\n if (str == str.toUpperCase() && (str = str.toLowerCase()) ||\r\n str == str.toLowerCase() && (str = str.toUpperCase())) {\r\n caseChanged = true;\r\n i = -1;\r\n e = 0;\r\n continue;\r\n }\r\n }\r\n\r\n return parseNumeric(x, String(v), isNum, b);\r\n }\r\n }\r\n\r\n // Prevent later check for length on converted number.\r\n isNum = false;\r\n str = convertBase(str, b, 10, x.s);\r\n\r\n // Decimal point?\r\n if ((e = str.indexOf('.')) > -1) str = str.replace('.', '');\r\n else e = str.length;\r\n }\r\n\r\n // Determine leading zeros.\r\n for (i = 0; str.charCodeAt(i) === 48; i++);\r\n\r\n // Determine trailing zeros.\r\n for (len = str.length; str.charCodeAt(--len) === 48;);\r\n\r\n if (str = str.slice(i, ++len)) {\r\n len -= i;\r\n\r\n // '[BigNumber Error] Number primitive has more than 15 significant digits: {n}'\r\n if (isNum && BigNumber.DEBUG &&\r\n len > 15 && (v > MAX_SAFE_INTEGER || v !== mathfloor(v))) {\r\n throw Error\r\n (tooManyDigits + (x.s * v));\r\n }\r\n\r\n // Overflow?\r\n if ((e = e - i - 1) > MAX_EXP) {\r\n\r\n // Infinity.\r\n x.c = x.e = null;\r\n\r\n // Underflow?\r\n } else if (e < MIN_EXP) {\r\n\r\n // Zero.\r\n x.c = [x.e = 0];\r\n } else {\r\n x.e = e;\r\n x.c = [];\r\n\r\n // Transform base\r\n\r\n // e is the base 10 exponent.\r\n // i is where to slice str to get the first element of the coefficient array.\r\n i = (e + 1) % LOG_BASE;\r\n if (e < 0) i += LOG_BASE; // i < 1\r\n\r\n if (i < len) {\r\n if (i) x.c.push(+str.slice(0, i));\r\n\r\n for (len -= LOG_BASE; i < len;) {\r\n x.c.push(+str.slice(i, i += LOG_BASE));\r\n }\r\n\r\n i = LOG_BASE - (str = str.slice(i)).length;\r\n } else {\r\n i -= len;\r\n }\r\n\r\n for (; i--; str += '0');\r\n x.c.push(+str);\r\n }\r\n } else {\r\n\r\n // Zero.\r\n x.c = [x.e = 0];\r\n }\r\n }\r\n\r\n\r\n // CONSTRUCTOR PROPERTIES\r\n\r\n\r\n BigNumber.clone = clone;\r\n\r\n BigNumber.ROUND_UP = 0;\r\n BigNumber.ROUND_DOWN = 1;\r\n BigNumber.ROUND_CEIL = 2;\r\n BigNumber.ROUND_FLOOR = 3;\r\n BigNumber.ROUND_HALF_UP = 4;\r\n BigNumber.ROUND_HALF_DOWN = 5;\r\n BigNumber.ROUND_HALF_EVEN = 6;\r\n BigNumber.ROUND_HALF_CEIL = 7;\r\n BigNumber.ROUND_HALF_FLOOR = 8;\r\n BigNumber.EUCLID = 9;\r\n\r\n\r\n /*\r\n * Configure infrequently-changing library-wide settings.\r\n *\r\n * Accept an object with the following optional properties (if the value of a property is\r\n * a number, it must be an integer within the inclusive range stated):\r\n *\r\n * DECIMAL_PLACES {number} 0 to MAX\r\n * ROUNDING_MODE {number} 0 to 8\r\n * EXPONENTIAL_AT {number|number[]} -MAX to MAX or [-MAX to 0, 0 to MAX]\r\n * RANGE {number|number[]} -MAX to MAX (not zero) or [-MAX to -1, 1 to MAX]\r\n * CRYPTO {boolean} true or false\r\n * MODULO_MODE {number} 0 to 9\r\n * POW_PRECISION {number} 0 to MAX\r\n * ALPHABET {string} A string of two or more unique characters which does\r\n * not contain '.'.\r\n * FORMAT {object} An object with some of the following properties:\r\n * prefix {string}\r\n * groupSize {number}\r\n * secondaryGroupSize {number}\r\n * groupSeparator {string}\r\n * decimalSeparator {string}\r\n * fractionGroupSize {number}\r\n * fractionGroupSeparator {string}\r\n * suffix {string}\r\n *\r\n * (The values assigned to the above FORMAT object properties are not checked for validity.)\r\n *\r\n * E.g.\r\n * BigNumber.config({ DECIMAL_PLACES : 20, ROUNDING_MODE : 4 })\r\n *\r\n * Ignore properties/parameters set to null or undefined, except for ALPHABET.\r\n *\r\n * Return an object with the properties current values.\r\n */\r\n BigNumber.config = BigNumber.set = function (obj) {\r\n var p, v;\r\n\r\n if (obj != null) {\r\n\r\n if (typeof obj == 'object') {\r\n\r\n // DECIMAL_PLACES {number} Integer, 0 to MAX inclusive.\r\n // '[BigNumber Error] DECIMAL_PLACES {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'DECIMAL_PLACES')) {\r\n v = obj[p];\r\n intCheck(v, 0, MAX, p);\r\n DECIMAL_PLACES = v;\r\n }\r\n\r\n // ROUNDING_MODE {number} Integer, 0 to 8 inclusive.\r\n // '[BigNumber Error] ROUNDING_MODE {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'ROUNDING_MODE')) {\r\n v = obj[p];\r\n intCheck(v, 0, 8, p);\r\n ROUNDING_MODE = v;\r\n }\r\n\r\n // EXPONENTIAL_AT {number|number[]}\r\n // Integer, -MAX to MAX inclusive or\r\n // [integer -MAX to 0 inclusive, 0 to MAX inclusive].\r\n // '[BigNumber Error] EXPONENTIAL_AT {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'EXPONENTIAL_AT')) {\r\n v = obj[p];\r\n if (v && v.pop) {\r\n intCheck(v[0], -MAX, 0, p);\r\n intCheck(v[1], 0, MAX, p);\r\n TO_EXP_NEG = v[0];\r\n TO_EXP_POS = v[1];\r\n } else {\r\n intCheck(v, -MAX, MAX, p);\r\n TO_EXP_NEG = -(TO_EXP_POS = v < 0 ? -v : v);\r\n }\r\n }\r\n\r\n // RANGE {number|number[]} Non-zero integer, -MAX to MAX inclusive or\r\n // [integer -MAX to -1 inclusive, integer 1 to MAX inclusive].\r\n // '[BigNumber Error] RANGE {not a primitive number|not an integer|out of range|cannot be zero}: {v}'\r\n if (obj.hasOwnProperty(p = 'RANGE')) {\r\n v = obj[p];\r\n if (v && v.pop) {\r\n intCheck(v[0], -MAX, -1, p);\r\n intCheck(v[1], 1, MAX, p);\r\n MIN_EXP = v[0];\r\n MAX_EXP = v[1];\r\n } else {\r\n intCheck(v, -MAX, MAX, p);\r\n if (v) {\r\n MIN_EXP = -(MAX_EXP = v < 0 ? -v : v);\r\n } else {\r\n throw Error\r\n (bignumberError + p + ' cannot be zero: ' + v);\r\n }\r\n }\r\n }\r\n\r\n // CRYPTO {boolean} true or false.\r\n // '[BigNumber Error] CRYPTO not true or false: {v}'\r\n // '[BigNumber Error] crypto unavailable'\r\n if (obj.hasOwnProperty(p = 'CRYPTO')) {\r\n v = obj[p];\r\n if (v === !!v) {\r\n if (v) {\r\n if (typeof crypto != 'undefined' && crypto &&\r\n (crypto.getRandomValues || crypto.randomBytes)) {\r\n CRYPTO = v;\r\n } else {\r\n CRYPTO = !v;\r\n throw Error\r\n (bignumberError + 'crypto unavailable');\r\n }\r\n } else {\r\n CRYPTO = v;\r\n }\r\n } else {\r\n throw Error\r\n (bignumberError + p + ' not true or false: ' + v);\r\n }\r\n }\r\n\r\n // MODULO_MODE {number} Integer, 0 to 9 inclusive.\r\n // '[BigNumber Error] MODULO_MODE {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'MODULO_MODE')) {\r\n v = obj[p];\r\n intCheck(v, 0, 9, p);\r\n MODULO_MODE = v;\r\n }\r\n\r\n // POW_PRECISION {number} Integer, 0 to MAX inclusive.\r\n // '[BigNumber Error] POW_PRECISION {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'POW_PRECISION')) {\r\n v = obj[p];\r\n intCheck(v, 0, MAX, p);\r\n POW_PRECISION = v;\r\n }\r\n\r\n // FORMAT {object}\r\n // '[BigNumber Error] FORMAT not an object: {v}'\r\n if (obj.hasOwnProperty(p = 'FORMAT')) {\r\n v = obj[p];\r\n if (typeof v == 'object') FORMAT = v;\r\n else throw Error\r\n (bignumberError + p + ' not an object: ' + v);\r\n }\r\n\r\n // ALPHABET {string}\r\n // '[BigNumber Error] ALPHABET invalid: {v}'\r\n if (obj.hasOwnProperty(p = 'ALPHABET')) {\r\n v = obj[p];\r\n\r\n // Disallow if less than two characters,\r\n // or if it contains '+', '-', '.', whitespace, or a repeated character.\r\n if (typeof v == 'string' && !/^.?$|[+\\-.\\s]|(.).*\\1/.test(v)) {\r\n alphabetHasNormalDecimalDigits = v.slice(0, 10) == '0123456789';\r\n ALPHABET = v;\r\n } else {\r\n throw Error\r\n (bignumberError + p + ' invalid: ' + v);\r\n }\r\n }\r\n\r\n } else {\r\n\r\n // '[BigNumber Error] Object expected: {v}'\r\n throw Error\r\n (bignumberError + 'Object expected: ' + obj);\r\n }\r\n }\r\n\r\n return {\r\n DECIMAL_PLACES: DECIMAL_PLACES,\r\n ROUNDING_MODE: ROUNDING_MODE,\r\n EXPONENTIAL_AT: [TO_EXP_NEG, TO_EXP_POS],\r\n RANGE: [MIN_EXP, MAX_EXP],\r\n CRYPTO: CRYPTO,\r\n MODULO_MODE: MODULO_MODE,\r\n POW_PRECISION: POW_PRECISION,\r\n FORMAT: FORMAT,\r\n ALPHABET: ALPHABET\r\n };\r\n };\r\n\r\n\r\n /*\r\n * Return true if v is a BigNumber instance, otherwise return false.\r\n *\r\n * If BigNumber.DEBUG is true, throw if a BigNumber instance is not well-formed.\r\n *\r\n * v {any}\r\n *\r\n * '[BigNumber Error] Invalid BigNumber: {v}'\r\n */\r\n BigNumber.isBigNumber = function (v) {\r\n if (!v || v._isBigNumber !== true) return false;\r\n if (!BigNumber.DEBUG) return true;\r\n\r\n var i, n,\r\n c = v.c,\r\n e = v.e,\r\n s = v.s;\r\n\r\n out: if ({}.toString.call(c) == '[object Array]') {\r\n\r\n if ((s === 1 || s === -1) && e >= -MAX && e <= MAX && e === mathfloor(e)) {\r\n\r\n // If the first element is zero, the BigNumber value must be zero.\r\n if (c[0] === 0) {\r\n if (e === 0 && c.length === 1) return true;\r\n break out;\r\n }\r\n\r\n // Calculate number of digits that c[0] should have, based on the exponent.\r\n i = (e + 1) % LOG_BASE;\r\n if (i < 1) i += LOG_BASE;\r\n\r\n // Calculate number of digits of c[0].\r\n //if (Math.ceil(Math.log(c[0] + 1) / Math.LN10) == i) {\r\n if (String(c[0]).length == i) {\r\n\r\n for (i = 0; i < c.length; i++) {\r\n n = c[i];\r\n if (n < 0 || n >= BASE || n !== mathfloor(n)) break out;\r\n }\r\n\r\n // Last element cannot be zero, unless it is the only element.\r\n if (n !== 0) return true;\r\n }\r\n }\r\n\r\n // Infinity/NaN\r\n } else if (c === null && e === null && (s === null || s === 1 || s === -1)) {\r\n return true;\r\n }\r\n\r\n throw Error\r\n (bignumberError + 'Invalid BigNumber: ' + v);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the maximum of the arguments.\r\n *\r\n * arguments {number|string|BigNumber}\r\n */\r\n BigNumber.maximum = BigNumber.max = function () {\r\n return maxOrMin(arguments, P.lt);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the minimum of the arguments.\r\n *\r\n * arguments {number|string|BigNumber}\r\n */\r\n BigNumber.minimum = BigNumber.min = function () {\r\n return maxOrMin(arguments, P.gt);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber with a random value equal to or greater than 0 and less than 1,\r\n * and with dp, or DECIMAL_PLACES if dp is omitted, decimal places (or less if trailing\r\n * zeros are produced).\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp}'\r\n * '[BigNumber Error] crypto unavailable'\r\n */\r\n BigNumber.random = (function () {\r\n var pow2_53 = 0x20000000000000;\r\n\r\n // Return a 53 bit integer n, where 0 <= n < 9007199254740992.\r\n // Check if Math.random() produces more than 32 bits of randomness.\r\n // If it does, assume at least 53 bits are produced, otherwise assume at least 30 bits.\r\n // 0x40000000 is 2^30, 0x800000 is 2^23, 0x1fffff is 2^21 - 1.\r\n var random53bitInt = (Math.random() * pow2_53) & 0x1fffff\r\n ? function () { return mathfloor(Math.random() * pow2_53); }\r\n : function () { return ((Math.random() * 0x40000000 | 0) * 0x800000) +\r\n (Math.random() * 0x800000 | 0); };\r\n\r\n return function (dp) {\r\n var a, b, e, k, v,\r\n i = 0,\r\n c = [],\r\n rand = new BigNumber(ONE);\r\n\r\n if (dp == null) dp = DECIMAL_PLACES;\r\n else intCheck(dp, 0, MAX);\r\n\r\n k = mathceil(dp / LOG_BASE);\r\n\r\n if (CRYPTO) {\r\n\r\n // Browsers supporting crypto.getRandomValues.\r\n if (crypto.getRandomValues) {\r\n\r\n a = crypto.getRandomValues(new Uint32Array(k *= 2));\r\n\r\n for (; i < k;) {\r\n\r\n // 53 bits:\r\n // ((Math.pow(2, 32) - 1) * Math.pow(2, 21)).toString(2)\r\n // 11111 11111111 11111111 11111111 11100000 00000000 00000000\r\n // ((Math.pow(2, 32) - 1) >>> 11).toString(2)\r\n // 11111 11111111 11111111\r\n // 0x20000 is 2^21.\r\n v = a[i] * 0x20000 + (a[i + 1] >>> 11);\r\n\r\n // Rejection sampling:\r\n // 0 <= v < 9007199254740992\r\n // Probability that v >= 9e15, is\r\n // 7199254740992 / 9007199254740992 ~= 0.0008, i.e. 1 in 1251\r\n if (v >= 9e15) {\r\n b = crypto.getRandomValues(new Uint32Array(2));\r\n a[i] = b[0];\r\n a[i + 1] = b[1];\r\n } else {\r\n\r\n // 0 <= v <= 8999999999999999\r\n // 0 <= (v % 1e14) <= 99999999999999\r\n c.push(v % 1e14);\r\n i += 2;\r\n }\r\n }\r\n i = k / 2;\r\n\r\n // Node.js supporting crypto.randomBytes.\r\n } else if (crypto.randomBytes) {\r\n\r\n // buffer\r\n a = crypto.randomBytes(k *= 7);\r\n\r\n for (; i < k;) {\r\n\r\n // 0x1000000000000 is 2^48, 0x10000000000 is 2^40\r\n // 0x100000000 is 2^32, 0x1000000 is 2^24\r\n // 11111 11111111 11111111 11111111 11111111 11111111 11111111\r\n // 0 <= v < 9007199254740992\r\n v = ((a[i] & 31) * 0x1000000000000) + (a[i + 1] * 0x10000000000) +\r\n (a[i + 2] * 0x100000000) + (a[i + 3] * 0x1000000) +\r\n (a[i + 4] << 16) + (a[i + 5] << 8) + a[i + 6];\r\n\r\n if (v >= 9e15) {\r\n crypto.randomBytes(7).copy(a, i);\r\n } else {\r\n\r\n // 0 <= (v % 1e14) <= 99999999999999\r\n c.push(v % 1e14);\r\n i += 7;\r\n }\r\n }\r\n i = k / 7;\r\n } else {\r\n CRYPTO = false;\r\n throw Error\r\n (bignumberError + 'crypto unavailable');\r\n }\r\n }\r\n\r\n // Use Math.random.\r\n if (!CRYPTO) {\r\n\r\n for (; i < k;) {\r\n v = random53bitInt();\r\n if (v < 9e15) c[i++] = v % 1e14;\r\n }\r\n }\r\n\r\n k = c[--i];\r\n dp %= LOG_BASE;\r\n\r\n // Convert trailing digits to zeros according to dp.\r\n if (k && dp) {\r\n v = POWS_TEN[LOG_BASE - dp];\r\n c[i] = mathfloor(k / v) * v;\r\n }\r\n\r\n // Remove trailing elements which are zero.\r\n for (; c[i] === 0; c.pop(), i--);\r\n\r\n // Zero?\r\n if (i < 0) {\r\n c = [e = 0];\r\n } else {\r\n\r\n // Remove leading elements which are zero and adjust exponent accordingly.\r\n for (e = -1 ; c[0] === 0; c.splice(0, 1), e -= LOG_BASE);\r\n\r\n // Count the digits of the first element of c to determine leading zeros, and...\r\n for (i = 1, v = c[0]; v >= 10; v /= 10, i++);\r\n\r\n // adjust the exponent accordingly.\r\n if (i < LOG_BASE) e -= LOG_BASE - i;\r\n }\r\n\r\n rand.e = e;\r\n rand.c = c;\r\n return rand;\r\n };\r\n })();\r\n\r\n\r\n /*\r\n * Return a BigNumber whose value is the sum of the arguments.\r\n *\r\n * arguments {number|string|BigNumber}\r\n */\r\n BigNumber.sum = function () {\r\n var i = 1,\r\n args = arguments,\r\n sum = new BigNumber(args[0]);\r\n for (; i < args.length;) sum = sum.plus(args[i++]);\r\n return sum;\r\n };\r\n\r\n\r\n // PRIVATE FUNCTIONS\r\n\r\n\r\n // Called by BigNumber and BigNumber.prototype.toString.\r\n convertBase = (function () {\r\n var decimal = '0123456789';\r\n\r\n /*\r\n * Convert string of baseIn to an array of numbers of baseOut.\r\n * Eg. toBaseOut('255', 10, 16) returns [15, 15].\r\n * Eg. toBaseOut('ff', 16, 10) returns [2, 5, 5].\r\n */\r\n function toBaseOut(str, baseIn, baseOut, alphabet) {\r\n var j,\r\n arr = [0],\r\n arrL,\r\n i = 0,\r\n len = str.length;\r\n\r\n for (; i < len;) {\r\n for (arrL = arr.length; arrL--; arr[arrL] *= baseIn);\r\n\r\n arr[0] += alphabet.indexOf(str.charAt(i++));\r\n\r\n for (j = 0; j < arr.length; j++) {\r\n\r\n if (arr[j] > baseOut - 1) {\r\n if (arr[j + 1] == null) arr[j + 1] = 0;\r\n arr[j + 1] += arr[j] / baseOut | 0;\r\n arr[j] %= baseOut;\r\n }\r\n }\r\n }\r\n\r\n return arr.reverse();\r\n }\r\n\r\n // Convert a numeric string of baseIn to a numeric string of baseOut.\r\n // If the caller is toString, we are converting from base 10 to baseOut.\r\n // If the caller is BigNumber, we are converting from baseIn to base 10.\r\n return function (str, baseIn, baseOut, sign, callerIsToString) {\r\n var alphabet, d, e, k, r, x, xc, y,\r\n i = str.indexOf('.'),\r\n dp = DECIMAL_PLACES,\r\n rm = ROUNDING_MODE;\r\n\r\n // Non-integer.\r\n if (i >= 0) {\r\n k = POW_PRECISION;\r\n\r\n // Unlimited precision.\r\n POW_PRECISION = 0;\r\n str = str.replace('.', '');\r\n y = new BigNumber(baseIn);\r\n x = y.pow(str.length - i);\r\n POW_PRECISION = k;\r\n\r\n // Convert str as if an integer, then restore the fraction part by dividing the\r\n // result by its base raised to a power.\r\n\r\n y.c = toBaseOut(toFixedPoint(coeffToString(x.c), x.e, '0'),\r\n 10, baseOut, decimal);\r\n y.e = y.c.length;\r\n }\r\n\r\n // Convert the number as integer.\r\n\r\n xc = toBaseOut(str, baseIn, baseOut, callerIsToString\r\n ? (alphabet = ALPHABET, decimal)\r\n : (alphabet = decimal, ALPHABET));\r\n\r\n // xc now represents str as an integer and converted to baseOut. e is the exponent.\r\n e = k = xc.length;\r\n\r\n // Remove trailing zeros.\r\n for (; xc[--k] == 0; xc.pop());\r\n\r\n // Zero?\r\n if (!xc[0]) return alphabet.charAt(0);\r\n\r\n // Does str represent an integer? If so, no need for the division.\r\n if (i < 0) {\r\n --e;\r\n } else {\r\n x.c = xc;\r\n x.e = e;\r\n\r\n // The sign is needed for correct rounding.\r\n x.s = sign;\r\n x = div(x, y, dp, rm, baseOut);\r\n xc = x.c;\r\n r = x.r;\r\n e = x.e;\r\n }\r\n\r\n // xc now represents str converted to baseOut.\r\n\r\n // THe index of the rounding digit.\r\n d = e + dp + 1;\r\n\r\n // The rounding digit: the digit to the right of the digit that may be rounded up.\r\n i = xc[d];\r\n\r\n // Look at the rounding digits and mode to determine whether to round up.\r\n\r\n k = baseOut / 2;\r\n r = r || d < 0 || xc[d + 1] != null;\r\n\r\n r = rm < 4 ? (i != null || r) && (rm == 0 || rm == (x.s < 0 ? 3 : 2))\r\n : i > k || i == k &&(rm == 4 || r || rm == 6 && xc[d - 1] & 1 ||\r\n rm == (x.s < 0 ? 8 : 7));\r\n\r\n // If the index of the rounding digit is not greater than zero, or xc represents\r\n // zero, then the result of the base conversion is zero or, if rounding up, a value\r\n // such as 0.00001.\r\n if (d < 1 || !xc[0]) {\r\n\r\n // 1^-dp or 0\r\n str = r ? toFixedPoint(alphabet.charAt(1), -dp, alphabet.charAt(0)) : alphabet.charAt(0);\r\n } else {\r\n\r\n // Truncate xc to the required number of decimal places.\r\n xc.length = d;\r\n\r\n // Round up?\r\n if (r) {\r\n\r\n // Rounding up may mean the previous digit has to be rounded up and so on.\r\n for (--baseOut; ++xc[--d] > baseOut;) {\r\n xc[d] = 0;\r\n\r\n if (!d) {\r\n ++e;\r\n xc = [1].concat(xc);\r\n }\r\n }\r\n }\r\n\r\n // Determine trailing zeros.\r\n for (k = xc.length; !xc[--k];);\r\n\r\n // E.g. [4, 11, 15] becomes 4bf.\r\n for (i = 0, str = ''; i <= k; str += alphabet.charAt(xc[i++]));\r\n\r\n // Add leading zeros, decimal point and trailing zeros as required.\r\n str = toFixedPoint(str, e, alphabet.charAt(0));\r\n }\r\n\r\n // The caller will add the sign.\r\n return str;\r\n };\r\n })();\r\n\r\n\r\n // Perform division in the specified base. Called by div and convertBase.\r\n div = (function () {\r\n\r\n // Assume non-zero x and k.\r\n function multiply(x, k, base) {\r\n var m, temp, xlo, xhi,\r\n carry = 0,\r\n i = x.length,\r\n klo = k % SQRT_BASE,\r\n khi = k / SQRT_BASE | 0;\r\n\r\n for (x = x.slice(); i--;) {\r\n xlo = x[i] % SQRT_BASE;\r\n xhi = x[i] / SQRT_BASE | 0;\r\n m = khi * xlo + xhi * klo;\r\n temp = klo * xlo + ((m % SQRT_BASE) * SQRT_BASE) + carry;\r\n carry = (temp / base | 0) + (m / SQRT_BASE | 0) + khi * xhi;\r\n x[i] = temp % base;\r\n }\r\n\r\n if (carry) x = [carry].concat(x);\r\n\r\n return x;\r\n }\r\n\r\n function compare(a, b, aL, bL) {\r\n var i, cmp;\r\n\r\n if (aL != bL) {\r\n cmp = aL > bL ? 1 : -1;\r\n } else {\r\n\r\n for (i = cmp = 0; i < aL; i++) {\r\n\r\n if (a[i] != b[i]) {\r\n cmp = a[i] > b[i] ? 1 : -1;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return cmp;\r\n }\r\n\r\n function subtract(a, b, aL, base) {\r\n var i = 0;\r\n\r\n // Subtract b from a.\r\n for (; aL--;) {\r\n a[aL] -= i;\r\n i = a[aL] < b[aL] ? 1 : 0;\r\n a[aL] = i * base + a[aL] - b[aL];\r\n }\r\n\r\n // Remove leading zeros.\r\n for (; !a[0] && a.length > 1; a.splice(0, 1));\r\n }\r\n\r\n // x: dividend, y: divisor.\r\n return function (x, y, dp, rm, base) {\r\n var cmp, e, i, more, n, prod, prodL, q, qc, rem, remL, rem0, xi, xL, yc0,\r\n yL, yz,\r\n s = x.s == y.s ? 1 : -1,\r\n xc = x.c,\r\n yc = y.c;\r\n\r\n // Either NaN, Infinity or 0?\r\n if (!xc || !xc[0] || !yc || !yc[0]) {\r\n\r\n return new BigNumber(\r\n\r\n // Return NaN if either NaN, or both Infinity or 0.\r\n !x.s || !y.s || (xc ? yc && xc[0] == yc[0] : !yc) ? NaN :\r\n\r\n // Return ±0 if x is ±0 or y is ±Infinity, or return ±Infinity as y is ±0.\r\n xc && xc[0] == 0 || !yc ? s * 0 : s / 0\r\n );\r\n }\r\n\r\n q = new BigNumber(s);\r\n qc = q.c = [];\r\n e = x.e - y.e;\r\n s = dp + e + 1;\r\n\r\n if (!base) {\r\n base = BASE;\r\n e = bitFloor(x.e / LOG_BASE) - bitFloor(y.e / LOG_BASE);\r\n s = s / LOG_BASE | 0;\r\n }\r\n\r\n // Result exponent may be one less then the current value of e.\r\n // The coefficients of the BigNumbers from convertBase may have trailing zeros.\r\n for (i = 0; yc[i] == (xc[i] || 0); i++);\r\n\r\n if (yc[i] > (xc[i] || 0)) e--;\r\n\r\n if (s < 0) {\r\n qc.push(1);\r\n more = true;\r\n } else {\r\n xL = xc.length;\r\n yL = yc.length;\r\n i = 0;\r\n s += 2;\r\n\r\n // Normalise xc and yc so highest order digit of yc is >= base / 2.\r\n\r\n n = mathfloor(base / (yc[0] + 1));\r\n\r\n // Not necessary, but to handle odd bases where yc[0] == (base / 2) - 1.\r\n // if (n > 1 || n++ == 1 && yc[0] < base / 2) {\r\n if (n > 1) {\r\n yc = multiply(yc, n, base);\r\n xc = multiply(xc, n, base);\r\n yL = yc.length;\r\n xL = xc.length;\r\n }\r\n\r\n xi = yL;\r\n rem = xc.slice(0, yL);\r\n remL = rem.length;\r\n\r\n // Add zeros to make remainder as long as divisor.\r\n for (; remL < yL; rem[remL++] = 0);\r\n yz = yc.slice();\r\n yz = [0].concat(yz);\r\n yc0 = yc[0];\r\n if (yc[1] >= base / 2) yc0++;\r\n // Not necessary, but to prevent trial digit n > base, when using base 3.\r\n // else if (base == 3 && yc0 == 1) yc0 = 1 + 1e-15;\r\n\r\n do {\r\n n = 0;\r\n\r\n // Compare divisor and remainder.\r\n cmp = compare(yc, rem, yL, remL);\r\n\r\n // If divisor < remainder.\r\n if (cmp < 0) {\r\n\r\n // Calculate trial digit, n.\r\n\r\n rem0 = rem[0];\r\n if (yL != remL) rem0 = rem0 * base + (rem[1] || 0);\r\n\r\n // n is how many times the divisor goes into the current remainder.\r\n n = mathfloor(rem0 / yc0);\r\n\r\n // Algorithm:\r\n // product = divisor multiplied by trial digit (n).\r\n // Compare product and remainder.\r\n // If product is greater than remainder:\r\n // Subtract divisor from product, decrement trial digit.\r\n // Subtract product from remainder.\r\n // If product was less than remainder at the last compare:\r\n // Compare new remainder and divisor.\r\n // If remainder is greater than divisor:\r\n // Subtract divisor from remainder, increment trial digit.\r\n\r\n if (n > 1) {\r\n\r\n // n may be > base only when base is 3.\r\n if (n >= base) n = base - 1;\r\n\r\n // product = divisor * trial digit.\r\n prod = multiply(yc, n, base);\r\n prodL = prod.length;\r\n remL = rem.length;\r\n\r\n // Compare product and remainder.\r\n // If product > remainder then trial digit n too high.\r\n // n is 1 too high about 5% of the time, and is not known to have\r\n // ever been more than 1 too high.\r\n while (compare(prod, rem, prodL, remL) == 1) {\r\n n--;\r\n\r\n // Subtract divisor from product.\r\n subtract(prod, yL < prodL ? yz : yc, prodL, base);\r\n prodL = prod.length;\r\n cmp = 1;\r\n }\r\n } else {\r\n\r\n // n is 0 or 1, cmp is -1.\r\n // If n is 0, there is no need to compare yc and rem again below,\r\n // so change cmp to 1 to avoid it.\r\n // If n is 1, leave cmp as -1, so yc and rem are compared again.\r\n if (n == 0) {\r\n\r\n // divisor < remainder, so n must be at least 1.\r\n cmp = n = 1;\r\n }\r\n\r\n // product = divisor\r\n prod = yc.slice();\r\n prodL = prod.length;\r\n }\r\n\r\n if (prodL < remL) prod = [0].concat(prod);\r\n\r\n // Subtract product from remainder.\r\n subtract(rem, prod, remL, base);\r\n remL = rem.length;\r\n\r\n // If product was < remainder.\r\n if (cmp == -1) {\r\n\r\n // Compare divisor and new remainder.\r\n // If divisor < new remainder, subtract divisor from remainder.\r\n // Trial digit n too low.\r\n // n is 1 too low about 5% of the time, and very rarely 2 too low.\r\n while (compare(yc, rem, yL, remL) < 1) {\r\n n++;\r\n\r\n // Subtract divisor from remainder.\r\n subtract(rem, yL < remL ? yz : yc, remL, base);\r\n remL = rem.length;\r\n }\r\n }\r\n } else if (cmp === 0) {\r\n n++;\r\n rem = [0];\r\n } // else cmp === 1 and n will be 0\r\n\r\n // Add the next digit, n, to the result array.\r\n qc[i++] = n;\r\n\r\n // Update the remainder.\r\n if (rem[0]) {\r\n rem[remL++] = xc[xi] || 0;\r\n } else {\r\n rem = [xc[xi]];\r\n remL = 1;\r\n }\r\n } while ((xi++ < xL || rem[0] != null) && s--);\r\n\r\n more = rem[0] != null;\r\n\r\n // Leading zero?\r\n if (!qc[0]) qc.splice(0, 1);\r\n }\r\n\r\n if (base == BASE) {\r\n\r\n // To calculate q.e, first get the number of digits of qc[0].\r\n for (i = 1, s = qc[0]; s >= 10; s /= 10, i++);\r\n\r\n round(q, dp + (q.e = i + e * LOG_BASE - 1) + 1, rm, more);\r\n\r\n // Caller is convertBase.\r\n } else {\r\n q.e = e;\r\n q.r = +more;\r\n }\r\n\r\n return q;\r\n };\r\n })();\r\n\r\n\r\n /*\r\n * Return a string representing the value of BigNumber n in fixed-point or exponential\r\n * notation rounded to the specified decimal places or significant digits.\r\n *\r\n * n: a BigNumber.\r\n * i: the index of the last digit required (i.e. the digit that may be rounded up).\r\n * rm: the rounding mode.\r\n * id: 1 (toExponential) or 2 (toPrecision).\r\n */\r\n function format(n, i, rm, id) {\r\n var c0, e, ne, len, str;\r\n\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n\r\n if (!n.c) return n.toString();\r\n\r\n c0 = n.c[0];\r\n ne = n.e;\r\n\r\n if (i == null) {\r\n str = coeffToString(n.c);\r\n str = id == 1 || id == 2 && (ne <= TO_EXP_NEG || ne >= TO_EXP_POS)\r\n ? toExponential(str, ne)\r\n : toFixedPoint(str, ne, '0');\r\n } else {\r\n n = round(new BigNumber(n), i, rm);\r\n\r\n // n.e may have changed if the value was rounded up.\r\n e = n.e;\r\n\r\n str = coeffToString(n.c);\r\n len = str.length;\r\n\r\n // toPrecision returns exponential notation if the number of significant digits\r\n // specified is less than the number of digits necessary to represent the integer\r\n // part of the value in fixed-point notation.\r\n\r\n // Exponential notation.\r\n if (id == 1 || id == 2 && (i <= e || e <= TO_EXP_NEG)) {\r\n\r\n // Append zeros?\r\n for (; len < i; str += '0', len++);\r\n str = toExponential(str, e);\r\n\r\n // Fixed-point notation.\r\n } else {\r\n i -= ne;\r\n str = toFixedPoint(str, e, '0');\r\n\r\n // Append zeros?\r\n if (e + 1 > len) {\r\n if (--i > 0) for (str += '.'; i--; str += '0');\r\n } else {\r\n i += e - len;\r\n if (i > 0) {\r\n if (e + 1 == len) str += '.';\r\n for (; i--; str += '0');\r\n }\r\n }\r\n }\r\n }\r\n\r\n return n.s < 0 && c0 ? '-' + str : str;\r\n }\r\n\r\n\r\n // Handle BigNumber.max and BigNumber.min.\r\n function maxOrMin(args, method) {\r\n var n,\r\n i = 1,\r\n m = new BigNumber(args[0]);\r\n\r\n for (; i < args.length; i++) {\r\n n = new BigNumber(args[i]);\r\n\r\n // If any number is NaN, return NaN.\r\n if (!n.s) {\r\n m = n;\r\n break;\r\n } else if (method.call(m, n)) {\r\n m = n;\r\n }\r\n }\r\n\r\n return m;\r\n }\r\n\r\n\r\n /*\r\n * Strip trailing zeros, calculate base 10 exponent and check against MIN_EXP and MAX_EXP.\r\n * Called by minus, plus and times.\r\n */\r\n function normalise(n, c, e) {\r\n var i = 1,\r\n j = c.length;\r\n\r\n // Remove trailing zeros.\r\n for (; !c[--j]; c.pop());\r\n\r\n // Calculate the base 10 exponent. First get the number of digits of c[0].\r\n for (j = c[0]; j >= 10; j /= 10, i++);\r\n\r\n // Overflow?\r\n if ((e = i + e * LOG_BASE - 1) > MAX_EXP) {\r\n\r\n // Infinity.\r\n n.c = n.e = null;\r\n\r\n // Underflow?\r\n } else if (e < MIN_EXP) {\r\n\r\n // Zero.\r\n n.c = [n.e = 0];\r\n } else {\r\n n.e = e;\r\n n.c = c;\r\n }\r\n\r\n return n;\r\n }\r\n\r\n\r\n // Handle values that fail the validity test in BigNumber.\r\n parseNumeric = (function () {\r\n var basePrefix = /^(-?)0([xbo])(?=\\w[\\w.]*$)/i,\r\n dotAfter = /^([^.]+)\\.$/,\r\n dotBefore = /^\\.([^.]+)$/,\r\n isInfinityOrNaN = /^-?(Infinity|NaN)$/,\r\n whitespaceOrPlus = /^\\s*\\+(?=[\\w.])|^\\s+|\\s+$/g;\r\n\r\n return function (x, str, isNum, b) {\r\n var base,\r\n s = isNum ? str : str.replace(whitespaceOrPlus, '');\r\n\r\n // No exception on ±Infinity or NaN.\r\n if (isInfinityOrNaN.test(s)) {\r\n x.s = isNaN(s) ? null : s < 0 ? -1 : 1;\r\n } else {\r\n if (!isNum) {\r\n\r\n // basePrefix = /^(-?)0([xbo])(?=\\w[\\w.]*$)/i\r\n s = s.replace(basePrefix, function (m, p1, p2) {\r\n base = (p2 = p2.toLowerCase()) == 'x' ? 16 : p2 == 'b' ? 2 : 8;\r\n return !b || b == base ? p1 : m;\r\n });\r\n\r\n if (b) {\r\n base = b;\r\n\r\n // E.g. '1.' to '1', '.1' to '0.1'\r\n s = s.replace(dotAfter, '$1').replace(dotBefore, '0.$1');\r\n }\r\n\r\n if (str != s) return new BigNumber(s, base);\r\n }\r\n\r\n // '[BigNumber Error] Not a number: {n}'\r\n // '[BigNumber Error] Not a base {b} number: {n}'\r\n if (BigNumber.DEBUG) {\r\n throw Error\r\n (bignumberError + 'Not a' + (b ? ' base ' + b : '') + ' number: ' + str);\r\n }\r\n\r\n // NaN\r\n x.s = null;\r\n }\r\n\r\n x.c = x.e = null;\r\n }\r\n })();\r\n\r\n\r\n /*\r\n * Round x to sd significant digits using rounding mode rm. Check for over/under-flow.\r\n * If r is truthy, it is known that there are more digits after the rounding digit.\r\n */\r\n function round(x, sd, rm, r) {\r\n var d, i, j, k, n, ni, rd,\r\n xc = x.c,\r\n pows10 = POWS_TEN;\r\n\r\n // if x is not Infinity or NaN...\r\n if (xc) {\r\n\r\n // rd is the rounding digit, i.e. the digit after the digit that may be rounded up.\r\n // n is a base 1e14 number, the value of the element of array x.c containing rd.\r\n // ni is the index of n within x.c.\r\n // d is the number of digits of n.\r\n // i is the index of rd within n including leading zeros.\r\n // j is the actual index of rd within n (if < 0, rd is a leading zero).\r\n out: {\r\n\r\n // Get the number of digits of the first element of xc.\r\n for (d = 1, k = xc[0]; k >= 10; k /= 10, d++);\r\n i = sd - d;\r\n\r\n // If the rounding digit is in the first element of xc...\r\n if (i < 0) {\r\n i += LOG_BASE;\r\n j = sd;\r\n n = xc[ni = 0];\r\n\r\n // Get the rounding digit at index j of n.\r\n rd = n / pows10[d - j - 1] % 10 | 0;\r\n } else {\r\n ni = mathceil((i + 1) / LOG_BASE);\r\n\r\n if (ni >= xc.length) {\r\n\r\n if (r) {\r\n\r\n // Needed by sqrt.\r\n for (; xc.length <= ni; xc.push(0));\r\n n = rd = 0;\r\n d = 1;\r\n i %= LOG_BASE;\r\n j = i - LOG_BASE + 1;\r\n } else {\r\n break out;\r\n }\r\n } else {\r\n n = k = xc[ni];\r\n\r\n // Get the number of digits of n.\r\n for (d = 1; k >= 10; k /= 10, d++);\r\n\r\n // Get the index of rd within n.\r\n i %= LOG_BASE;\r\n\r\n // Get the index of rd within n, adjusted for leading zeros.\r\n // The number of leading zeros of n is given by LOG_BASE - d.\r\n j = i - LOG_BASE + d;\r\n\r\n // Get the rounding digit at index j of n.\r\n rd = j < 0 ? 0 : n / pows10[d - j - 1] % 10 | 0;\r\n }\r\n }\r\n\r\n r = r || sd < 0 ||\r\n\r\n // Are there any non-zero digits after the rounding digit?\r\n // The expression n % pows10[d - j - 1] returns all digits of n to the right\r\n // of the digit at j, e.g. if n is 908714 and j is 2, the expression gives 714.\r\n xc[ni + 1] != null || (j < 0 ? n : n % pows10[d - j - 1]);\r\n\r\n r = rm < 4\r\n ? (rd || r) && (rm == 0 || rm == (x.s < 0 ? 3 : 2))\r\n : rd > 5 || rd == 5 && (rm == 4 || r || rm == 6 &&\r\n\r\n // Check whether the digit to the left of the rounding digit is odd.\r\n ((i > 0 ? j > 0 ? n / pows10[d - j] : 0 : xc[ni - 1]) % 10) & 1 ||\r\n rm == (x.s < 0 ? 8 : 7));\r\n\r\n if (sd < 1 || !xc[0]) {\r\n xc.length = 0;\r\n\r\n if (r) {\r\n\r\n // Convert sd to decimal places.\r\n sd -= x.e + 1;\r\n\r\n // 1, 0.1, 0.01, 0.001, 0.0001 etc.\r\n xc[0] = pows10[(LOG_BASE - sd % LOG_BASE) % LOG_BASE];\r\n x.e = -sd || 0;\r\n } else {\r\n\r\n // Zero.\r\n xc[0] = x.e = 0;\r\n }\r\n\r\n return x;\r\n }\r\n\r\n // Remove excess digits.\r\n if (i == 0) {\r\n xc.length = ni;\r\n k = 1;\r\n ni--;\r\n } else {\r\n xc.length = ni + 1;\r\n k = pows10[LOG_BASE - i];\r\n\r\n // E.g. 56700 becomes 56000 if 7 is the rounding digit.\r\n // j > 0 means i > number of leading zeros of n.\r\n xc[ni] = j > 0 ? mathfloor(n / pows10[d - j] % pows10[j]) * k : 0;\r\n }\r\n\r\n // Round up?\r\n if (r) {\r\n\r\n for (; ;) {\r\n\r\n // If the digit to be rounded up is in the first element of xc...\r\n if (ni == 0) {\r\n\r\n // i will be the length of xc[0] before k is added.\r\n for (i = 1, j = xc[0]; j >= 10; j /= 10, i++);\r\n j = xc[0] += k;\r\n for (k = 1; j >= 10; j /= 10, k++);\r\n\r\n // if i != k the length has increased.\r\n if (i != k) {\r\n x.e++;\r\n if (xc[0] == BASE) xc[0] = 1;\r\n }\r\n\r\n break;\r\n } else {\r\n xc[ni] += k;\r\n if (xc[ni] != BASE) break;\r\n xc[ni--] = 0;\r\n k = 1;\r\n }\r\n }\r\n }\r\n\r\n // Remove trailing zeros.\r\n for (i = xc.length; xc[--i] === 0; xc.pop());\r\n }\r\n\r\n // Overflow? Infinity.\r\n if (x.e > MAX_EXP) {\r\n x.c = x.e = null;\r\n\r\n // Underflow? Zero.\r\n } else if (x.e < MIN_EXP) {\r\n x.c = [x.e = 0];\r\n }\r\n }\r\n\r\n return x;\r\n }\r\n\r\n\r\n function valueOf(n) {\r\n var str,\r\n e = n.e;\r\n\r\n if (e === null) return n.toString();\r\n\r\n str = coeffToString(n.c);\r\n\r\n str = e <= TO_EXP_NEG || e >= TO_EXP_POS\r\n ? toExponential(str, e)\r\n : toFixedPoint(str, e, '0');\r\n\r\n return n.s < 0 ? '-' + str : str;\r\n }\r\n\r\n\r\n // PROTOTYPE/INSTANCE METHODS\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the absolute value of this BigNumber.\r\n */\r\n P.absoluteValue = P.abs = function () {\r\n var x = new BigNumber(this);\r\n if (x.s < 0) x.s = 1;\r\n return x;\r\n };\r\n\r\n\r\n /*\r\n * Return\r\n * 1 if the value of this BigNumber is greater than the value of BigNumber(y, b),\r\n * -1 if the value of this BigNumber is less than the value of BigNumber(y, b),\r\n * 0 if they have the same value,\r\n * or null if the value of either is NaN.\r\n */\r\n P.comparedTo = function (y, b) {\r\n return compare(this, new BigNumber(y, b));\r\n };\r\n\r\n\r\n /*\r\n * If dp is undefined or null or true or false, return the number of decimal places of the\r\n * value of this BigNumber, or null if the value of this BigNumber is ±Infinity or NaN.\r\n *\r\n * Otherwise, if dp is a number, return a new BigNumber whose value is the value of this\r\n * BigNumber rounded to a maximum of dp decimal places using rounding mode rm, or\r\n * ROUNDING_MODE if rm is omitted.\r\n *\r\n * [dp] {number} Decimal places: integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n */\r\n P.decimalPlaces = P.dp = function (dp, rm) {\r\n var c, n, v,\r\n x = this;\r\n\r\n if (dp != null) {\r\n intCheck(dp, 0, MAX);\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n\r\n return round(new BigNumber(x), dp + x.e + 1, rm);\r\n }\r\n\r\n if (!(c = x.c)) return null;\r\n n = ((v = c.length - 1) - bitFloor(this.e / LOG_BASE)) * LOG_BASE;\r\n\r\n // Subtract the number of trailing zeros of the last number.\r\n if (v = c[v]) for (; v % 10 == 0; v /= 10, n--);\r\n if (n < 0) n = 0;\r\n\r\n return n;\r\n };\r\n\r\n\r\n /*\r\n * n / 0 = I\r\n * n / N = N\r\n * n / I = 0\r\n * 0 / n = 0\r\n * 0 / 0 = N\r\n * 0 / N = N\r\n * 0 / I = 0\r\n * N / n = N\r\n * N / 0 = N\r\n * N / N = N\r\n * N / I = N\r\n * I / n = I\r\n * I / 0 = I\r\n * I / N = N\r\n * I / I = N\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber divided by the value of\r\n * BigNumber(y, b), rounded according to DECIMAL_PLACES and ROUNDING_MODE.\r\n */\r\n P.dividedBy = P.div = function (y, b) {\r\n return div(this, new BigNumber(y, b), DECIMAL_PLACES, ROUNDING_MODE);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the integer part of dividing the value of this\r\n * BigNumber by the value of BigNumber(y, b).\r\n */\r\n P.dividedToIntegerBy = P.idiv = function (y, b) {\r\n return div(this, new BigNumber(y, b), 0, 1);\r\n };\r\n\r\n\r\n /*\r\n * Return a BigNumber whose value is the value of this BigNumber exponentiated by n.\r\n *\r\n * If m is present, return the result modulo m.\r\n * If n is negative round according to DECIMAL_PLACES and ROUNDING_MODE.\r\n * If POW_PRECISION is non-zero and m is not present, round to POW_PRECISION using ROUNDING_MODE.\r\n *\r\n * The modular power operation works efficiently when x, n, and m are integers, otherwise it\r\n * is equivalent to calculating x.exponentiatedBy(n).modulo(m) with a POW_PRECISION of 0.\r\n *\r\n * n {number|string|BigNumber} The exponent. An integer.\r\n * [m] {number|string|BigNumber} The modulus.\r\n *\r\n * '[BigNumber Error] Exponent not an integer: {n}'\r\n */\r\n P.exponentiatedBy = P.pow = function (n, m) {\r\n var half, isModExp, i, k, more, nIsBig, nIsNeg, nIsOdd, y,\r\n x = this;\r\n\r\n n = new BigNumber(n);\r\n\r\n // Allow NaN and ±Infinity, but not other non-integers.\r\n if (n.c && !n.isInteger()) {\r\n throw Error\r\n (bignumberError + 'Exponent not an integer: ' + valueOf(n));\r\n }\r\n\r\n if (m != null) m = new BigNumber(m);\r\n\r\n // Exponent of MAX_SAFE_INTEGER is 15.\r\n nIsBig = n.e > 14;\r\n\r\n // If x is NaN, ±Infinity, ±0 or ±1, or n is ±Infinity, NaN or ±0.\r\n if (!x.c || !x.c[0] || x.c[0] == 1 && !x.e && x.c.length == 1 || !n.c || !n.c[0]) {\r\n\r\n // The sign of the result of pow when x is negative depends on the evenness of n.\r\n // If +n overflows to ±Infinity, the evenness of n would be not be known.\r\n y = new BigNumber(Math.pow(+valueOf(x), nIsBig ? 2 - isOdd(n) : +valueOf(n)));\r\n return m ? y.mod(m) : y;\r\n }\r\n\r\n nIsNeg = n.s < 0;\r\n\r\n if (m) {\r\n\r\n // x % m returns NaN if abs(m) is zero, or m is NaN.\r\n if (m.c ? !m.c[0] : !m.s) return new BigNumber(NaN);\r\n\r\n isModExp = !nIsNeg && x.isInteger() && m.isInteger();\r\n\r\n if (isModExp) x = x.mod(m);\r\n\r\n // Overflow to ±Infinity: >=2**1e10 or >=1.0000024**1e15.\r\n // Underflow to ±0: <=0.79**1e10 or <=0.9999975**1e15.\r\n } else if (n.e > 9 && (x.e > 0 || x.e < -1 || (x.e == 0\r\n // [1, 240000000]\r\n ? x.c[0] > 1 || nIsBig && x.c[1] >= 24e7\r\n // [80000000000000] [99999750000000]\r\n : x.c[0] < 8e13 || nIsBig && x.c[0] <= 9999975e7))) {\r\n\r\n // If x is negative and n is odd, k = -0, else k = 0.\r\n k = x.s < 0 && isOdd(n) ? -0 : 0;\r\n\r\n // If x >= 1, k = ±Infinity.\r\n if (x.e > -1) k = 1 / k;\r\n\r\n // If n is negative return ±0, else return ±Infinity.\r\n return new BigNumber(nIsNeg ? 1 / k : k);\r\n\r\n } else if (POW_PRECISION) {\r\n\r\n // Truncating each coefficient array to a length of k after each multiplication\r\n // equates to truncating significant digits to POW_PRECISION + [28, 41],\r\n // i.e. there will be a minimum of 28 guard digits retained.\r\n k = mathceil(POW_PRECISION / LOG_BASE + 2);\r\n }\r\n\r\n if (nIsBig) {\r\n half = new BigNumber(0.5);\r\n if (nIsNeg) n.s = 1;\r\n nIsOdd = isOdd(n);\r\n } else {\r\n i = Math.abs(+valueOf(n));\r\n nIsOdd = i % 2;\r\n }\r\n\r\n y = new BigNumber(ONE);\r\n\r\n // Performs 54 loop iterations for n of 9007199254740991.\r\n for (; ;) {\r\n\r\n if (nIsOdd) {\r\n y = y.times(x);\r\n if (!y.c) break;\r\n\r\n if (k) {\r\n if (y.c.length > k) y.c.length = k;\r\n } else if (isModExp) {\r\n y = y.mod(m); //y = y.minus(div(y, m, 0, MODULO_MODE).times(m));\r\n }\r\n }\r\n\r\n if (i) {\r\n i = mathfloor(i / 2);\r\n if (i === 0) break;\r\n nIsOdd = i % 2;\r\n } else {\r\n n = n.times(half);\r\n round(n, n.e + 1, 1);\r\n\r\n if (n.e > 14) {\r\n nIsOdd = isOdd(n);\r\n } else {\r\n i = +valueOf(n);\r\n if (i === 0) break;\r\n nIsOdd = i % 2;\r\n }\r\n }\r\n\r\n x = x.times(x);\r\n\r\n if (k) {\r\n if (x.c && x.c.length > k) x.c.length = k;\r\n } else if (isModExp) {\r\n x = x.mod(m); //x = x.minus(div(x, m, 0, MODULO_MODE).times(m));\r\n }\r\n }\r\n\r\n if (isModExp) return y;\r\n if (nIsNeg) y = ONE.div(y);\r\n\r\n return m ? y.mod(m) : k ? round(y, POW_PRECISION, ROUNDING_MODE, more) : y;\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the value of this BigNumber rounded to an integer\r\n * using rounding mode rm, or ROUNDING_MODE if rm is omitted.\r\n *\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {rm}'\r\n */\r\n P.integerValue = function (rm) {\r\n var n = new BigNumber(this);\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n return round(n, n.e + 1, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is equal to the value of BigNumber(y, b),\r\n * otherwise return false.\r\n */\r\n P.isEqualTo = P.eq = function (y, b) {\r\n return compare(this, new BigNumber(y, b)) === 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is a finite number, otherwise return false.\r\n */\r\n P.isFinite = function () {\r\n return !!this.c;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is greater than the value of BigNumber(y, b),\r\n * otherwise return false.\r\n */\r\n P.isGreaterThan = P.gt = function (y, b) {\r\n return compare(this, new BigNumber(y, b)) > 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is greater than or equal to the value of\r\n * BigNumber(y, b), otherwise return false.\r\n */\r\n P.isGreaterThanOrEqualTo = P.gte = function (y, b) {\r\n return (b = compare(this, new BigNumber(y, b))) === 1 || b === 0;\r\n\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is an integer, otherwise return false.\r\n */\r\n P.isInteger = function () {\r\n return !!this.c && bitFloor(this.e / LOG_BASE) > this.c.length - 2;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is less than the value of BigNumber(y, b),\r\n * otherwise return false.\r\n */\r\n P.isLessThan = P.lt = function (y, b) {\r\n return compare(this, new BigNumber(y, b)) < 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is less than or equal to the value of\r\n * BigNumber(y, b), otherwise return false.\r\n */\r\n P.isLessThanOrEqualTo = P.lte = function (y, b) {\r\n return (b = compare(this, new BigNumber(y, b))) === -1 || b === 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is NaN, otherwise return false.\r\n */\r\n P.isNaN = function () {\r\n return !this.s;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is negative, otherwise return false.\r\n */\r\n P.isNegative = function () {\r\n return this.s < 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is positive, otherwise return false.\r\n */\r\n P.isPositive = function () {\r\n return this.s > 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is 0 or -0, otherwise return false.\r\n */\r\n P.isZero = function () {\r\n return !!this.c && this.c[0] == 0;\r\n };\r\n\r\n\r\n /*\r\n * n - 0 = n\r\n * n - N = N\r\n * n - I = -I\r\n * 0 - n = -n\r\n * 0 - 0 = 0\r\n * 0 - N = N\r\n * 0 - I = -I\r\n * N - n = N\r\n * N - 0 = N\r\n * N - N = N\r\n * N - I = N\r\n * I - n = I\r\n * I - 0 = I\r\n * I - N = N\r\n * I - I = N\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber minus the value of\r\n * BigNumber(y, b).\r\n */\r\n P.minus = function (y, b) {\r\n var i, j, t, xLTy,\r\n x = this,\r\n a = x.s;\r\n\r\n y = new BigNumber(y, b);\r\n b = y.s;\r\n\r\n // Either NaN?\r\n if (!a || !b) return new BigNumber(NaN);\r\n\r\n // Signs differ?\r\n if (a != b) {\r\n y.s = -b;\r\n return x.plus(y);\r\n }\r\n\r\n var xe = x.e / LOG_BASE,\r\n ye = y.e / LOG_BASE,\r\n xc = x.c,\r\n yc = y.c;\r\n\r\n if (!xe || !ye) {\r\n\r\n // Either Infinity?\r\n if (!xc || !yc) return xc ? (y.s = -b, y) : new BigNumber(yc ? x : NaN);\r\n\r\n // Either zero?\r\n if (!xc[0] || !yc[0]) {\r\n\r\n // Return y if y is non-zero, x if x is non-zero, or zero if both are zero.\r\n return yc[0] ? (y.s = -b, y) : new BigNumber(xc[0] ? x :\r\n\r\n // IEEE 754 (2008) 6.3: n - n = -0 when rounding to -Infinity\r\n ROUNDING_MODE == 3 ? -0 : 0);\r\n }\r\n }\r\n\r\n xe = bitFloor(xe);\r\n ye = bitFloor(ye);\r\n xc = xc.slice();\r\n\r\n // Determine which is the bigger number.\r\n if (a = xe - ye) {\r\n\r\n if (xLTy = a < 0) {\r\n a = -a;\r\n t = xc;\r\n } else {\r\n ye = xe;\r\n t = yc;\r\n }\r\n\r\n t.reverse();\r\n\r\n // Prepend zeros to equalise exponents.\r\n for (b = a; b--; t.push(0));\r\n t.reverse();\r\n } else {\r\n\r\n // Exponents equal. Check digit by digit.\r\n j = (xLTy = (a = xc.length) < (b = yc.length)) ? a : b;\r\n\r\n for (a = b = 0; b < j; b++) {\r\n\r\n if (xc[b] != yc[b]) {\r\n xLTy = xc[b] < yc[b];\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // x < y? Point xc to the array of the bigger number.\r\n if (xLTy) t = xc, xc = yc, yc = t, y.s = -y.s;\r\n\r\n b = (j = yc.length) - (i = xc.length);\r\n\r\n // Append zeros to xc if shorter.\r\n // No need to add zeros to yc if shorter as subtract only needs to start at yc.length.\r\n if (b > 0) for (; b--; xc[i++] = 0);\r\n b = BASE - 1;\r\n\r\n // Subtract yc from xc.\r\n for (; j > a;) {\r\n\r\n if (xc[--j] < yc[j]) {\r\n for (i = j; i && !xc[--i]; xc[i] = b);\r\n --xc[i];\r\n xc[j] += BASE;\r\n }\r\n\r\n xc[j] -= yc[j];\r\n }\r\n\r\n // Remove leading zeros and adjust exponent accordingly.\r\n for (; xc[0] == 0; xc.splice(0, 1), --ye);\r\n\r\n // Zero?\r\n if (!xc[0]) {\r\n\r\n // Following IEEE 754 (2008) 6.3,\r\n // n - n = +0 but n - n = -0 when rounding towards -Infinity.\r\n y.s = ROUNDING_MODE == 3 ? -1 : 1;\r\n y.c = [y.e = 0];\r\n return y;\r\n }\r\n\r\n // No need to check for Infinity as +x - +y != Infinity && -x - -y != Infinity\r\n // for finite x and y.\r\n return normalise(y, xc, ye);\r\n };\r\n\r\n\r\n /*\r\n * n % 0 = N\r\n * n % N = N\r\n * n % I = n\r\n * 0 % n = 0\r\n * -0 % n = -0\r\n * 0 % 0 = N\r\n * 0 % N = N\r\n * 0 % I = 0\r\n * N % n = N\r\n * N % 0 = N\r\n * N % N = N\r\n * N % I = N\r\n * I % n = N\r\n * I % 0 = N\r\n * I % N = N\r\n * I % I = N\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber modulo the value of\r\n * BigNumber(y, b). The result depends on the value of MODULO_MODE.\r\n */\r\n P.modulo = P.mod = function (y, b) {\r\n var q, s,\r\n x = this;\r\n\r\n y = new BigNumber(y, b);\r\n\r\n // Return NaN if x is Infinity or NaN, or y is NaN or zero.\r\n if (!x.c || !y.s || y.c && !y.c[0]) {\r\n return new BigNumber(NaN);\r\n\r\n // Return x if y is Infinity or x is zero.\r\n } else if (!y.c || x.c && !x.c[0]) {\r\n return new BigNumber(x);\r\n }\r\n\r\n if (MODULO_MODE == 9) {\r\n\r\n // Euclidian division: q = sign(y) * floor(x / abs(y))\r\n // r = x - qy where 0 <= r < abs(y)\r\n s = y.s;\r\n y.s = 1;\r\n q = div(x, y, 0, 3);\r\n y.s = s;\r\n q.s *= s;\r\n } else {\r\n q = div(x, y, 0, MODULO_MODE);\r\n }\r\n\r\n y = x.minus(q.times(y));\r\n\r\n // To match JavaScript %, ensure sign of zero is sign of dividend.\r\n if (!y.c[0] && MODULO_MODE == 1) y.s = x.s;\r\n\r\n return y;\r\n };\r\n\r\n\r\n /*\r\n * n * 0 = 0\r\n * n * N = N\r\n * n * I = I\r\n * 0 * n = 0\r\n * 0 * 0 = 0\r\n * 0 * N = N\r\n * 0 * I = N\r\n * N * n = N\r\n * N * 0 = N\r\n * N * N = N\r\n * N * I = N\r\n * I * n = I\r\n * I * 0 = N\r\n * I * N = N\r\n * I * I = I\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber multiplied by the value\r\n * of BigNumber(y, b).\r\n */\r\n P.multipliedBy = P.times = function (y, b) {\r\n var c, e, i, j, k, m, xcL, xlo, xhi, ycL, ylo, yhi, zc,\r\n base, sqrtBase,\r\n x = this,\r\n xc = x.c,\r\n yc = (y = new BigNumber(y, b)).c;\r\n\r\n // Either NaN, ±Infinity or ±0?\r\n if (!xc || !yc || !xc[0] || !yc[0]) {\r\n\r\n // Return NaN if either is NaN, or one is 0 and the other is Infinity.\r\n if (!x.s || !y.s || xc && !xc[0] && !yc || yc && !yc[0] && !xc) {\r\n y.c = y.e = y.s = null;\r\n } else {\r\n y.s *= x.s;\r\n\r\n // Return ±Infinity if either is ±Infinity.\r\n if (!xc || !yc) {\r\n y.c = y.e = null;\r\n\r\n // Return ±0 if either is ±0.\r\n } else {\r\n y.c = [0];\r\n y.e = 0;\r\n }\r\n }\r\n\r\n return y;\r\n }\r\n\r\n e = bitFloor(x.e / LOG_BASE) + bitFloor(y.e / LOG_BASE);\r\n y.s *= x.s;\r\n xcL = xc.length;\r\n ycL = yc.length;\r\n\r\n // Ensure xc points to longer array and xcL to its length.\r\n if (xcL < ycL) zc = xc, xc = yc, yc = zc, i = xcL, xcL = ycL, ycL = i;\r\n\r\n // Initialise the result array with zeros.\r\n for (i = xcL + ycL, zc = []; i--; zc.push(0));\r\n\r\n base = BASE;\r\n sqrtBase = SQRT_BASE;\r\n\r\n for (i = ycL; --i >= 0;) {\r\n c = 0;\r\n ylo = yc[i] % sqrtBase;\r\n yhi = yc[i] / sqrtBase | 0;\r\n\r\n for (k = xcL, j = i + k; j > i;) {\r\n xlo = xc[--k] % sqrtBase;\r\n xhi = xc[k] / sqrtBase | 0;\r\n m = yhi * xlo + xhi * ylo;\r\n xlo = ylo * xlo + ((m % sqrtBase) * sqrtBase) + zc[j] + c;\r\n c = (xlo / base | 0) + (m / sqrtBase | 0) + yhi * xhi;\r\n zc[j--] = xlo % base;\r\n }\r\n\r\n zc[j] = c;\r\n }\r\n\r\n if (c) {\r\n ++e;\r\n } else {\r\n zc.splice(0, 1);\r\n }\r\n\r\n return normalise(y, zc, e);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the value of this BigNumber negated,\r\n * i.e. multiplied by -1.\r\n */\r\n P.negated = function () {\r\n var x = new BigNumber(this);\r\n x.s = -x.s || null;\r\n return x;\r\n };\r\n\r\n\r\n /*\r\n * n + 0 = n\r\n * n + N = N\r\n * n + I = I\r\n * 0 + n = n\r\n * 0 + 0 = 0\r\n * 0 + N = N\r\n * 0 + I = I\r\n * N + n = N\r\n * N + 0 = N\r\n * N + N = N\r\n * N + I = N\r\n * I + n = I\r\n * I + 0 = I\r\n * I + N = N\r\n * I + I = I\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber plus the value of\r\n * BigNumber(y, b).\r\n */\r\n P.plus = function (y, b) {\r\n var t,\r\n x = this,\r\n a = x.s;\r\n\r\n y = new BigNumber(y, b);\r\n b = y.s;\r\n\r\n // Either NaN?\r\n if (!a || !b) return new BigNumber(NaN);\r\n\r\n // Signs differ?\r\n if (a != b) {\r\n y.s = -b;\r\n return x.minus(y);\r\n }\r\n\r\n var xe = x.e / LOG_BASE,\r\n ye = y.e / LOG_BASE,\r\n xc = x.c,\r\n yc = y.c;\r\n\r\n if (!xe || !ye) {\r\n\r\n // Return ±Infinity if either ±Infinity.\r\n if (!xc || !yc) return new BigNumber(a / 0);\r\n\r\n // Either zero?\r\n // Return y if y is non-zero, x if x is non-zero, or zero if both are zero.\r\n if (!xc[0] || !yc[0]) return yc[0] ? y : new BigNumber(xc[0] ? x : a * 0);\r\n }\r\n\r\n xe = bitFloor(xe);\r\n ye = bitFloor(ye);\r\n xc = xc.slice();\r\n\r\n // Prepend zeros to equalise exponents. Faster to use reverse then do unshifts.\r\n if (a = xe - ye) {\r\n if (a > 0) {\r\n ye = xe;\r\n t = yc;\r\n } else {\r\n a = -a;\r\n t = xc;\r\n }\r\n\r\n t.reverse();\r\n for (; a--; t.push(0));\r\n t.reverse();\r\n }\r\n\r\n a = xc.length;\r\n b = yc.length;\r\n\r\n // Point xc to the longer array, and b to the shorter length.\r\n if (a - b < 0) t = yc, yc = xc, xc = t, b = a;\r\n\r\n // Only start adding at yc.length - 1 as the further digits of xc can be ignored.\r\n for (a = 0; b;) {\r\n a = (xc[--b] = xc[b] + yc[b] + a) / BASE | 0;\r\n xc[b] = BASE === xc[b] ? 0 : xc[b] % BASE;\r\n }\r\n\r\n if (a) {\r\n xc = [a].concat(xc);\r\n ++ye;\r\n }\r\n\r\n // No need to check for zero, as +x + +y != 0 && -x + -y != 0\r\n // ye = MAX_EXP + 1 possible\r\n return normalise(y, xc, ye);\r\n };\r\n\r\n\r\n /*\r\n * If sd is undefined or null or true or false, return the number of significant digits of\r\n * the value of this BigNumber, or null if the value of this BigNumber is ±Infinity or NaN.\r\n * If sd is true include integer-part trailing zeros in the count.\r\n *\r\n * Otherwise, if sd is a number, return a new BigNumber whose value is the value of this\r\n * BigNumber rounded to a maximum of sd significant digits using rounding mode rm, or\r\n * ROUNDING_MODE if rm is omitted.\r\n *\r\n * sd {number|boolean} number: significant digits: integer, 1 to MAX inclusive.\r\n * boolean: whether to count integer-part trailing zeros: true or false.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {sd|rm}'\r\n */\r\n P.precision = P.sd = function (sd, rm) {\r\n var c, n, v,\r\n x = this;\r\n\r\n if (sd != null && sd !== !!sd) {\r\n intCheck(sd, 1, MAX);\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n\r\n return round(new BigNumber(x), sd, rm);\r\n }\r\n\r\n if (!(c = x.c)) return null;\r\n v = c.length - 1;\r\n n = v * LOG_BASE + 1;\r\n\r\n if (v = c[v]) {\r\n\r\n // Subtract the number of trailing zeros of the last element.\r\n for (; v % 10 == 0; v /= 10, n--);\r\n\r\n // Add the number of digits of the first element.\r\n for (v = c[0]; v >= 10; v /= 10, n++);\r\n }\r\n\r\n if (sd && x.e + 1 > n) n = x.e + 1;\r\n\r\n return n;\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the value of this BigNumber shifted by k places\r\n * (powers of 10). Shift to the right if n > 0, and to the left if n < 0.\r\n *\r\n * k {number} Integer, -MAX_SAFE_INTEGER to MAX_SAFE_INTEGER inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {k}'\r\n */\r\n P.shiftedBy = function (k) {\r\n intCheck(k, -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER);\r\n return this.times('1e' + k);\r\n };\r\n\r\n\r\n /*\r\n * sqrt(-n) = N\r\n * sqrt(N) = N\r\n * sqrt(-I) = N\r\n * sqrt(I) = I\r\n * sqrt(0) = 0\r\n * sqrt(-0) = -0\r\n *\r\n * Return a new BigNumber whose value is the square root of the value of this BigNumber,\r\n * rounded according to DECIMAL_PLACES and ROUNDING_MODE.\r\n */\r\n P.squareRoot = P.sqrt = function () {\r\n var m, n, r, rep, t,\r\n x = this,\r\n c = x.c,\r\n s = x.s,\r\n e = x.e,\r\n dp = DECIMAL_PLACES + 4,\r\n half = new BigNumber('0.5');\r\n\r\n // Negative/NaN/Infinity/zero?\r\n if (s !== 1 || !c || !c[0]) {\r\n return new BigNumber(!s || s < 0 && (!c || c[0]) ? NaN : c ? x : 1 / 0);\r\n }\r\n\r\n // Initial estimate.\r\n s = Math.sqrt(+valueOf(x));\r\n\r\n // Math.sqrt underflow/overflow?\r\n // Pass x to Math.sqrt as integer, then adjust the exponent of the result.\r\n if (s == 0 || s == 1 / 0) {\r\n n = coeffToString(c);\r\n if ((n.length + e) % 2 == 0) n += '0';\r\n s = Math.sqrt(+n);\r\n e = bitFloor((e + 1) / 2) - (e < 0 || e % 2);\r\n\r\n if (s == 1 / 0) {\r\n n = '5e' + e;\r\n } else {\r\n n = s.toExponential();\r\n n = n.slice(0, n.indexOf('e') + 1) + e;\r\n }\r\n\r\n r = new BigNumber(n);\r\n } else {\r\n r = new BigNumber(s + '');\r\n }\r\n\r\n // Check for zero.\r\n // r could be zero if MIN_EXP is changed after the this value was created.\r\n // This would cause a division by zero (x/t) and hence Infinity below, which would cause\r\n // coeffToString to throw.\r\n if (r.c[0]) {\r\n e = r.e;\r\n s = e + dp;\r\n if (s < 3) s = 0;\r\n\r\n // Newton-Raphson iteration.\r\n for (; ;) {\r\n t = r;\r\n r = half.times(t.plus(div(x, t, dp, 1)));\r\n\r\n if (coeffToString(t.c).slice(0, s) === (n = coeffToString(r.c)).slice(0, s)) {\r\n\r\n // The exponent of r may here be one less than the final result exponent,\r\n // e.g 0.0009999 (e-4) --> 0.001 (e-3), so adjust s so the rounding digits\r\n // are indexed correctly.\r\n if (r.e < e) --s;\r\n n = n.slice(s - 3, s + 1);\r\n\r\n // The 4th rounding digit may be in error by -1 so if the 4 rounding digits\r\n // are 9999 or 4999 (i.e. approaching a rounding boundary) continue the\r\n // iteration.\r\n if (n == '9999' || !rep && n == '4999') {\r\n\r\n // On the first iteration only, check to see if rounding up gives the\r\n // exact result as the nines may infinitely repeat.\r\n if (!rep) {\r\n round(t, t.e + DECIMAL_PLACES + 2, 0);\r\n\r\n if (t.times(t).eq(x)) {\r\n r = t;\r\n break;\r\n }\r\n }\r\n\r\n dp += 4;\r\n s += 4;\r\n rep = 1;\r\n } else {\r\n\r\n // If rounding digits are null, 0{0,4} or 50{0,3}, check for exact\r\n // result. If not, then there are further digits and m will be truthy.\r\n if (!+n || !+n.slice(1) && n.charAt(0) == '5') {\r\n\r\n // Truncate to the first rounding digit.\r\n round(r, r.e + DECIMAL_PLACES + 2, 1);\r\n m = !r.times(r).eq(x);\r\n }\r\n\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n return round(r, r.e + DECIMAL_PLACES + 1, ROUNDING_MODE, m);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in exponential notation and\r\n * rounded using ROUNDING_MODE to dp fixed decimal places.\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n */\r\n P.toExponential = function (dp, rm) {\r\n if (dp != null) {\r\n intCheck(dp, 0, MAX);\r\n dp++;\r\n }\r\n return format(this, dp, rm, 1);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in fixed-point notation rounding\r\n * to dp fixed decimal places using rounding mode rm, or ROUNDING_MODE if rm is omitted.\r\n *\r\n * Note: as with JavaScript's number type, (-0).toFixed(0) is '0',\r\n * but e.g. (-0.00001).toFixed(0) is '-0'.\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n */\r\n P.toFixed = function (dp, rm) {\r\n if (dp != null) {\r\n intCheck(dp, 0, MAX);\r\n dp = dp + this.e + 1;\r\n }\r\n return format(this, dp, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in fixed-point notation rounded\r\n * using rm or ROUNDING_MODE to dp decimal places, and formatted according to the properties\r\n * of the format or FORMAT object (see BigNumber.set).\r\n *\r\n * The formatting object may contain some or all of the properties shown below.\r\n *\r\n * FORMAT = {\r\n * prefix: '',\r\n * groupSize: 3,\r\n * secondaryGroupSize: 0,\r\n * groupSeparator: ',',\r\n * decimalSeparator: '.',\r\n * fractionGroupSize: 0,\r\n * fractionGroupSeparator: '\\xA0', // non-breaking space\r\n * suffix: ''\r\n * };\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n * [format] {object} Formatting options. See FORMAT pbject above.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n * '[BigNumber Error] Argument not an object: {format}'\r\n */\r\n P.toFormat = function (dp, rm, format) {\r\n var str,\r\n x = this;\r\n\r\n if (format == null) {\r\n if (dp != null && rm && typeof rm == 'object') {\r\n format = rm;\r\n rm = null;\r\n } else if (dp && typeof dp == 'object') {\r\n format = dp;\r\n dp = rm = null;\r\n } else {\r\n format = FORMAT;\r\n }\r\n } else if (typeof format != 'object') {\r\n throw Error\r\n (bignumberError + 'Argument not an object: ' + format);\r\n }\r\n\r\n str = x.toFixed(dp, rm);\r\n\r\n if (x.c) {\r\n var i,\r\n arr = str.split('.'),\r\n g1 = +format.groupSize,\r\n g2 = +format.secondaryGroupSize,\r\n groupSeparator = format.groupSeparator || '',\r\n intPart = arr[0],\r\n fractionPart = arr[1],\r\n isNeg = x.s < 0,\r\n intDigits = isNeg ? intPart.slice(1) : intPart,\r\n len = intDigits.length;\r\n\r\n if (g2) i = g1, g1 = g2, g2 = i, len -= i;\r\n\r\n if (g1 > 0 && len > 0) {\r\n i = len % g1 || g1;\r\n intPart = intDigits.substr(0, i);\r\n for (; i < len; i += g1) intPart += groupSeparator + intDigits.substr(i, g1);\r\n if (g2 > 0) intPart += groupSeparator + intDigits.slice(i);\r\n if (isNeg) intPart = '-' + intPart;\r\n }\r\n\r\n str = fractionPart\r\n ? intPart + (format.decimalSeparator || '') + ((g2 = +format.fractionGroupSize)\r\n ? fractionPart.replace(new RegExp('\\\\d{' + g2 + '}\\\\B', 'g'),\r\n '$&' + (format.fractionGroupSeparator || ''))\r\n : fractionPart)\r\n : intPart;\r\n }\r\n\r\n return (format.prefix || '') + str + (format.suffix || '');\r\n };\r\n\r\n\r\n /*\r\n * Return an array of two BigNumbers representing the value of this BigNumber as a simple\r\n * fraction with an integer numerator and an integer denominator.\r\n * The denominator will be a positive non-zero value less than or equal to the specified\r\n * maximum denominator. If a maximum denominator is not specified, the denominator will be\r\n * the lowest value necessary to represent the number exactly.\r\n *\r\n * [md] {number|string|BigNumber} Integer >= 1, or Infinity. The maximum denominator.\r\n *\r\n * '[BigNumber Error] Argument {not an integer|out of range} : {md}'\r\n */\r\n P.toFraction = function (md) {\r\n var d, d0, d1, d2, e, exp, n, n0, n1, q, r, s,\r\n x = this,\r\n xc = x.c;\r\n\r\n if (md != null) {\r\n n = new BigNumber(md);\r\n\r\n // Throw if md is less than one or is not an integer, unless it is Infinity.\r\n if (!n.isInteger() && (n.c || n.s !== 1) || n.lt(ONE)) {\r\n throw Error\r\n (bignumberError + 'Argument ' +\r\n (n.isInteger() ? 'out of range: ' : 'not an integer: ') + valueOf(n));\r\n }\r\n }\r\n\r\n if (!xc) return new BigNumber(x);\r\n\r\n d = new BigNumber(ONE);\r\n n1 = d0 = new BigNumber(ONE);\r\n d1 = n0 = new BigNumber(ONE);\r\n s = coeffToString(xc);\r\n\r\n // Determine initial denominator.\r\n // d is a power of 10 and the minimum max denominator that specifies the value exactly.\r\n e = d.e = s.length - x.e - 1;\r\n d.c[0] = POWS_TEN[(exp = e % LOG_BASE) < 0 ? LOG_BASE + exp : exp];\r\n md = !md || n.comparedTo(d) > 0 ? (e > 0 ? d : n1) : n;\r\n\r\n exp = MAX_EXP;\r\n MAX_EXP = 1 / 0;\r\n n = new BigNumber(s);\r\n\r\n // n0 = d1 = 0\r\n n0.c[0] = 0;\r\n\r\n for (; ;) {\r\n q = div(n, d, 0, 1);\r\n d2 = d0.plus(q.times(d1));\r\n if (d2.comparedTo(md) == 1) break;\r\n d0 = d1;\r\n d1 = d2;\r\n n1 = n0.plus(q.times(d2 = n1));\r\n n0 = d2;\r\n d = n.minus(q.times(d2 = d));\r\n n = d2;\r\n }\r\n\r\n d2 = div(md.minus(d0), d1, 0, 1);\r\n n0 = n0.plus(d2.times(n1));\r\n d0 = d0.plus(d2.times(d1));\r\n n0.s = n1.s = x.s;\r\n e = e * 2;\r\n\r\n // Determine which fraction is closer to x, n0/d0 or n1/d1\r\n r = div(n1, d1, e, ROUNDING_MODE).minus(x).abs().comparedTo(\r\n div(n0, d0, e, ROUNDING_MODE).minus(x).abs()) < 1 ? [n1, d1] : [n0, d0];\r\n\r\n MAX_EXP = exp;\r\n\r\n return r;\r\n };\r\n\r\n\r\n /*\r\n * Return the value of this BigNumber converted to a number primitive.\r\n */\r\n P.toNumber = function () {\r\n return +valueOf(this);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber rounded to sd significant digits\r\n * using rounding mode rm or ROUNDING_MODE. If sd is less than the number of digits\r\n * necessary to represent the integer part of the value in fixed-point notation, then use\r\n * exponential notation.\r\n *\r\n * [sd] {number} Significant digits. Integer, 1 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {sd|rm}'\r\n */\r\n P.toPrecision = function (sd, rm) {\r\n if (sd != null) intCheck(sd, 1, MAX);\r\n return format(this, sd, rm, 2);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in base b, or base 10 if b is\r\n * omitted. If a base is specified, including base 10, round according to DECIMAL_PLACES and\r\n * ROUNDING_MODE. If a base is not specified, and this BigNumber has a positive exponent\r\n * that is equal to or greater than TO_EXP_POS, or a negative exponent equal to or less than\r\n * TO_EXP_NEG, return exponential notation.\r\n *\r\n * [b] {number} Integer, 2 to ALPHABET.length inclusive.\r\n *\r\n * '[BigNumber Error] Base {not a primitive number|not an integer|out of range}: {b}'\r\n */\r\n P.toString = function (b) {\r\n var str,\r\n n = this,\r\n s = n.s,\r\n e = n.e;\r\n\r\n // Infinity or NaN?\r\n if (e === null) {\r\n if (s) {\r\n str = 'Infinity';\r\n if (s < 0) str = '-' + str;\r\n } else {\r\n str = 'NaN';\r\n }\r\n } else {\r\n if (b == null) {\r\n str = e <= TO_EXP_NEG || e >= TO_EXP_POS\r\n ? toExponential(coeffToString(n.c), e)\r\n : toFixedPoint(coeffToString(n.c), e, '0');\r\n } else if (b === 10 && alphabetHasNormalDecimalDigits) {\r\n n = round(new BigNumber(n), DECIMAL_PLACES + e + 1, ROUNDING_MODE);\r\n str = toFixedPoint(coeffToString(n.c), n.e, '0');\r\n } else {\r\n intCheck(b, 2, ALPHABET.length, 'Base');\r\n str = convertBase(toFixedPoint(coeffToString(n.c), e, '0'), 10, b, s, true);\r\n }\r\n\r\n if (s < 0 && n.c[0]) str = '-' + str;\r\n }\r\n\r\n return str;\r\n };\r\n\r\n\r\n /*\r\n * Return as toString, but do not accept a base argument, and include the minus sign for\r\n * negative zero.\r\n */\r\n P.valueOf = P.toJSON = function () {\r\n return valueOf(this);\r\n };\r\n\r\n\r\n P._isBigNumber = true;\r\n\r\n if (configObject != null) BigNumber.set(configObject);\r\n\r\n return BigNumber;\r\n }\r\n\r\n\r\n // PRIVATE HELPER FUNCTIONS\r\n\r\n // These functions don't need access to variables,\r\n // e.g. DECIMAL_PLACES, in the scope of the `clone` function above.\r\n\r\n\r\n function bitFloor(n) {\r\n var i = n | 0;\r\n return n > 0 || n === i ? i : i - 1;\r\n }\r\n\r\n\r\n // Return a coefficient array as a string of base 10 digits.\r\n function coeffToString(a) {\r\n var s, z,\r\n i = 1,\r\n j = a.length,\r\n r = a[0] + '';\r\n\r\n for (; i < j;) {\r\n s = a[i++] + '';\r\n z = LOG_BASE - s.length;\r\n for (; z--; s = '0' + s);\r\n r += s;\r\n }\r\n\r\n // Determine trailing zeros.\r\n for (j = r.length; r.charCodeAt(--j) === 48;);\r\n\r\n return r.slice(0, j + 1 || 1);\r\n }\r\n\r\n\r\n // Compare the value of BigNumbers x and y.\r\n function compare(x, y) {\r\n var a, b,\r\n xc = x.c,\r\n yc = y.c,\r\n i = x.s,\r\n j = y.s,\r\n k = x.e,\r\n l = y.e;\r\n\r\n // Either NaN?\r\n if (!i || !j) return null;\r\n\r\n a = xc && !xc[0];\r\n b = yc && !yc[0];\r\n\r\n // Either zero?\r\n if (a || b) return a ? b ? 0 : -j : i;\r\n\r\n // Signs differ?\r\n if (i != j) return i;\r\n\r\n a = i < 0;\r\n b = k == l;\r\n\r\n // Either Infinity?\r\n if (!xc || !yc) return b ? 0 : !xc ^ a ? 1 : -1;\r\n\r\n // Compare exponents.\r\n if (!b) return k > l ^ a ? 1 : -1;\r\n\r\n j = (k = xc.length) < (l = yc.length) ? k : l;\r\n\r\n // Compare digit by digit.\r\n for (i = 0; i < j; i++) if (xc[i] != yc[i]) return xc[i] > yc[i] ^ a ? 1 : -1;\r\n\r\n // Compare lengths.\r\n return k == l ? 0 : k > l ^ a ? 1 : -1;\r\n }\r\n\r\n\r\n /*\r\n * Check that n is a primitive number, an integer, and in range, otherwise throw.\r\n */\r\n function intCheck(n, min, max, name) {\r\n if (n < min || n > max || n !== mathfloor(n)) {\r\n throw Error\r\n (bignumberError + (name || 'Argument') + (typeof n == 'number'\r\n ? n < min || n > max ? ' out of range: ' : ' not an integer: '\r\n : ' not a primitive number: ') + String(n));\r\n }\r\n }\r\n\r\n\r\n // Assumes finite n.\r\n function isOdd(n) {\r\n var k = n.c.length - 1;\r\n return bitFloor(n.e / LOG_BASE) == k && n.c[k] % 2 != 0;\r\n }\r\n\r\n\r\n function toExponential(str, e) {\r\n return (str.length > 1 ? str.charAt(0) + '.' + str.slice(1) : str) +\r\n (e < 0 ? 'e' : 'e+') + e;\r\n }\r\n\r\n\r\n function toFixedPoint(str, e, z) {\r\n var len, zs;\r\n\r\n // Negative exponent?\r\n if (e < 0) {\r\n\r\n // Prepend zeros.\r\n for (zs = z + '.'; ++e; zs += z);\r\n str = zs + str;\r\n\r\n // Positive exponent\r\n } else {\r\n len = str.length;\r\n\r\n // Append zeros.\r\n if (++e > len) {\r\n for (zs = z, e -= len; --e; zs += z);\r\n str += zs;\r\n } else if (e < len) {\r\n str = str.slice(0, e) + '.' + str.slice(e);\r\n }\r\n }\r\n\r\n return str;\r\n }\r\n\r\n\r\n // EXPORT\r\n\r\n\r\n BigNumber = clone();\r\n BigNumber['default'] = BigNumber.BigNumber = BigNumber;\r\n\r\n // AMD.\r\n if (typeof define == 'function' && define.amd) {\r\n define(function () { return BigNumber; });\r\n\r\n // Node.js and other environments that support module.exports.\r\n } else if (typeof module != 'undefined' && module.exports) {\r\n module.exports = BigNumber;\r\n\r\n // Browser.\r\n } else {\r\n if (!globalObject) {\r\n globalObject = typeof self != 'undefined' && self ? self : window;\r\n }\r\n\r\n globalObject.BigNumber = BigNumber;\r\n }\r\n})(this);\r\n","module.exports = assert;\n\nfunction assert(val, msg) {\n if (!val)\n throw new Error(msg || 'Assertion failed');\n}\n\nassert.equal = function assertEqual(l, r, msg) {\n if (l != r)\n throw new Error(msg || ('Assertion failed: ' + l + ' != ' + r));\n};\n","import Key from \"./Key.js\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IKeyList} proto.IKeyList\n * @typedef {import(\"@hashgraph/proto\").IThresholdKey} proto.IThresholdKey\n */\n\n/**\n * A list of Keys (`Key`) with an optional threshold.\n */\nexport default class KeyList extends Key {\n /**\n * @param {?Key[]} [keys]\n * @param {?number} [threshold]\n */\n constructor(keys, threshold) {\n super();\n\n /**\n * @private\n * @type {Key[]}\n */\n this._keys = keys == null ? [] : keys;\n\n /**\n * @type {?number}\n */\n this._threshold = threshold == null ? null : threshold;\n }\n\n /**\n * @param {Key[]} keys\n * @returns {KeyList}\n */\n static of(...keys) {\n return new KeyList(keys, null);\n }\n\n /**\n * @template T\n * @param {ArrayLike} arrayLike\n * @param {((key: Key) => Key)} [mapFn]\n * @param {T} [thisArg]\n * @returns {KeyList}\n */\n static from(arrayLike, mapFn, thisArg) {\n if (mapFn == null) {\n return new KeyList(Array.from(arrayLike));\n }\n\n return new KeyList(Array.from(arrayLike, mapFn, thisArg));\n }\n\n /**\n * @returns {?number}\n */\n get threshold() {\n return this._threshold;\n }\n\n /**\n * @param {number} threshold\n * @returns {this}\n */\n setThreshold(threshold) {\n this._threshold = threshold;\n return this;\n }\n\n /**\n * @param {Key[]} keys\n * @returns {number}\n */\n push(...keys) {\n return this._keys.push(...keys);\n }\n\n /**\n * @param {number} start\n * @param {number} deleteCount\n * @param {Key[]} items\n * @returns {KeyList}\n */\n splice(start, deleteCount, ...items) {\n return new KeyList(\n this._keys.splice(start, deleteCount, ...items),\n this.threshold\n );\n }\n\n /**\n * @param {number=} start\n * @param {number=} end\n * @returns {KeyList}\n */\n slice(start, end) {\n return new KeyList(this._keys.slice(start, end), this.threshold);\n }\n\n /**\n * @returns {Iterator}\n */\n [Symbol.iterator]() {\n return this._keys[Symbol.iterator]();\n }\n\n /**\n * @returns {Key[]}\n */\n toArray() {\n return this._keys.slice();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify({\n threshold: this._threshold,\n keys: this._keys.toString(),\n });\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n const keys = this._keys.map((key) => key._toProtobufKey());\n\n if (this.threshold == null) {\n return { keyList: { keys } };\n } else {\n return {\n thresholdKey: {\n threshold: this.threshold,\n keys: { keys },\n },\n };\n }\n }\n\n /**\n * @param {proto.IKeyList} key\n * @returns {KeyList}\n */\n static __fromProtobufKeyList(key) {\n const keys = (key.keys != null ? key.keys : []).map((key) =>\n Key._fromProtobufKey(key)\n );\n return new KeyList(keys);\n }\n\n /**\n * @param {proto.IThresholdKey} key\n * @returns {KeyList}\n */\n static __fromProtobufThresoldKey(key) {\n const list = KeyList.__fromProtobufKeyList(\n key.keys != null ? key.keys : {}\n );\n list.setThreshold(key.threshold != null ? key.threshold : 0);\n return list;\n }\n}\n\nCACHE.keyList = (key) => KeyList.__fromProtobufKeyList(key);\nCACHE.thresholdKey = (key) => KeyList.__fromProtobufThresoldKey(key);\n","/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\nexport default class Status {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case Status.Ok:\n return \"OK\";\n case Status.InvalidTransaction:\n return \"INVALID_TRANSACTION\";\n case Status.PayerAccountNotFound:\n return \"PAYER_ACCOUNT_NOT_FOUND\";\n case Status.InvalidNodeAccount:\n return \"INVALID_NODE_ACCOUNT\";\n case Status.TransactionExpired:\n return \"TRANSACTION_EXPIRED\";\n case Status.InvalidTransactionStart:\n return \"INVALID_TRANSACTION_START\";\n case Status.InvalidTransactionDuration:\n return \"INVALID_TRANSACTION_DURATION\";\n case Status.InvalidSignature:\n return \"INVALID_SIGNATURE\";\n case Status.MemoTooLong:\n return \"MEMO_TOO_LONG\";\n case Status.InsufficientTxFee:\n return \"INSUFFICIENT_TX_FEE\";\n case Status.InsufficientPayerBalance:\n return \"INSUFFICIENT_PAYER_BALANCE\";\n case Status.DuplicateTransaction:\n return \"DUPLICATE_TRANSACTION\";\n case Status.Busy:\n return \"BUSY\";\n case Status.NotSupported:\n return \"NOT_SUPPORTED\";\n case Status.InvalidFileId:\n return \"INVALID_FILE_ID\";\n case Status.InvalidAccountId:\n return \"INVALID_ACCOUNT_ID\";\n case Status.InvalidContractId:\n return \"INVALID_CONTRACT_ID\";\n case Status.InvalidTransactionId:\n return \"INVALID_TRANSACTION_ID\";\n case Status.ReceiptNotFound:\n return \"RECEIPT_NOT_FOUND\";\n case Status.RecordNotFound:\n return \"RECORD_NOT_FOUND\";\n case Status.InvalidSolidityId:\n return \"INVALID_SOLIDITY_ID\";\n case Status.Unknown:\n return \"UNKNOWN\";\n case Status.Success:\n return \"SUCCESS\";\n case Status.FailInvalid:\n return \"FAIL_INVALID\";\n case Status.FailFee:\n return \"FAIL_FEE\";\n case Status.FailBalance:\n return \"FAIL_BALANCE\";\n case Status.KeyRequired:\n return \"KEY_REQUIRED\";\n case Status.BadEncoding:\n return \"BAD_ENCODING\";\n case Status.InsufficientAccountBalance:\n return \"INSUFFICIENT_ACCOUNT_BALANCE\";\n case Status.InvalidSolidityAddress:\n return \"INVALID_SOLIDITY_ADDRESS\";\n case Status.InsufficientGas:\n return \"INSUFFICIENT_GAS\";\n case Status.ContractSizeLimitExceeded:\n return \"CONTRACT_SIZE_LIMIT_EXCEEDED\";\n case Status.LocalCallModificationException:\n return \"LOCAL_CALL_MODIFICATION_EXCEPTION\";\n case Status.ContractRevertExecuted:\n return \"CONTRACT_REVERT_EXECUTED\";\n case Status.ContractExecutionException:\n return \"CONTRACT_EXECUTION_EXCEPTION\";\n case Status.InvalidReceivingNodeAccount:\n return \"INVALID_RECEIVING_NODE_ACCOUNT\";\n case Status.MissingQueryHeader:\n return \"MISSING_QUERY_HEADER\";\n case Status.AccountUpdateFailed:\n return \"ACCOUNT_UPDATE_FAILED\";\n case Status.InvalidKeyEncoding:\n return \"INVALID_KEY_ENCODING\";\n case Status.NullSolidityAddress:\n return \"NULL_SOLIDITY_ADDRESS\";\n case Status.ContractUpdateFailed:\n return \"CONTRACT_UPDATE_FAILED\";\n case Status.InvalidQueryHeader:\n return \"INVALID_QUERY_HEADER\";\n case Status.InvalidFeeSubmitted:\n return \"INVALID_FEE_SUBMITTED\";\n case Status.InvalidPayerSignature:\n return \"INVALID_PAYER_SIGNATURE\";\n case Status.KeyNotProvided:\n return \"KEY_NOT_PROVIDED\";\n case Status.InvalidExpirationTime:\n return \"INVALID_EXPIRATION_TIME\";\n case Status.NoWaclKey:\n return \"NO_WACL_KEY\";\n case Status.FileContentEmpty:\n return \"FILE_CONTENT_EMPTY\";\n case Status.InvalidAccountAmounts:\n return \"INVALID_ACCOUNT_AMOUNTS\";\n case Status.EmptyTransactionBody:\n return \"EMPTY_TRANSACTION_BODY\";\n case Status.InvalidTransactionBody:\n return \"INVALID_TRANSACTION_BODY\";\n case Status.InvalidSignatureTypeMismatchingKey:\n return \"INVALID_SIGNATURE_TYPE_MISMATCHING_KEY\";\n case Status.InvalidSignatureCountMismatchingKey:\n return \"INVALID_SIGNATURE_COUNT_MISMATCHING_KEY\";\n case Status.EmptyLiveHashBody:\n return \"EMPTY_LIVE_HASH_BODY\";\n case Status.EmptyLiveHash:\n return \"EMPTY_LIVE_HASH\";\n case Status.EmptyLiveHashKeys:\n return \"EMPTY_LIVE_HASH_KEYS\";\n case Status.InvalidLiveHashSize:\n return \"INVALID_LIVE_HASH_SIZE\";\n case Status.EmptyQueryBody:\n return \"EMPTY_QUERY_BODY\";\n case Status.EmptyLiveHashQuery:\n return \"EMPTY_LIVE_HASH_QUERY\";\n case Status.LiveHashNotFound:\n return \"LIVE_HASH_NOT_FOUND\";\n case Status.AccountIdDoesNotExist:\n return \"ACCOUNT_ID_DOES_NOT_EXIST\";\n case Status.LiveHashAlreadyExists:\n return \"LIVE_HASH_ALREADY_EXISTS\";\n case Status.InvalidFileWacl:\n return \"INVALID_FILE_WACL\";\n case Status.SerializationFailed:\n return \"SERIALIZATION_FAILED\";\n case Status.TransactionOversize:\n return \"TRANSACTION_OVERSIZE\";\n case Status.TransactionTooManyLayers:\n return \"TRANSACTION_TOO_MANY_LAYERS\";\n case Status.ContractDeleted:\n return \"CONTRACT_DELETED\";\n case Status.PlatformNotActive:\n return \"PLATFORM_NOT_ACTIVE\";\n case Status.KeyPrefixMismatch:\n return \"KEY_PREFIX_MISMATCH\";\n case Status.PlatformTransactionNotCreated:\n return \"PLATFORM_TRANSACTION_NOT_CREATED\";\n case Status.InvalidRenewalPeriod:\n return \"INVALID_RENEWAL_PERIOD\";\n case Status.InvalidPayerAccountId:\n return \"INVALID_PAYER_ACCOUNT_ID\";\n case Status.AccountDeleted:\n return \"ACCOUNT_DELETED\";\n case Status.FileDeleted:\n return \"FILE_DELETED\";\n case Status.AccountRepeatedInAccountAmounts:\n return \"ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS\";\n case Status.SettingNegativeAccountBalance:\n return \"SETTING_NEGATIVE_ACCOUNT_BALANCE\";\n case Status.ObtainerRequired:\n return \"OBTAINER_REQUIRED\";\n case Status.ObtainerSameContractId:\n return \"OBTAINER_SAME_CONTRACT_ID\";\n case Status.ObtainerDoesNotExist:\n return \"OBTAINER_DOES_NOT_EXIST\";\n case Status.ModifyingImmutableContract:\n return \"MODIFYING_IMMUTABLE_CONTRACT\";\n case Status.FileSystemException:\n return \"FILE_SYSTEM_EXCEPTION\";\n case Status.AutorenewDurationNotInRange:\n return \"AUTORENEW_DURATION_NOT_IN_RANGE\";\n case Status.ErrorDecodingBytestring:\n return \"ERROR_DECODING_BYTESTRING\";\n case Status.ContractFileEmpty:\n return \"CONTRACT_FILE_EMPTY\";\n case Status.ContractBytecodeEmpty:\n return \"CONTRACT_BYTECODE_EMPTY\";\n case Status.InvalidInitialBalance:\n return \"INVALID_INITIAL_BALANCE\";\n case Status.InvalidReceiveRecordThreshold:\n return \"INVALID_RECEIVE_RECORD_THRESHOLD\";\n case Status.InvalidSendRecordThreshold:\n return \"INVALID_SEND_RECORD_THRESHOLD\";\n case Status.AccountIsNotGenesisAccount:\n return \"ACCOUNT_IS_NOT_GENESIS_ACCOUNT\";\n case Status.PayerAccountUnauthorized:\n return \"PAYER_ACCOUNT_UNAUTHORIZED\";\n case Status.InvalidFreezeTransactionBody:\n return \"INVALID_FREEZE_TRANSACTION_BODY\";\n case Status.FreezeTransactionBodyNotFound:\n return \"FREEZE_TRANSACTION_BODY_NOT_FOUND\";\n case Status.TransferListSizeLimitExceeded:\n return \"TRANSFER_LIST_SIZE_LIMIT_EXCEEDED\";\n case Status.ResultSizeLimitExceeded:\n return \"RESULT_SIZE_LIMIT_EXCEEDED\";\n case Status.NotSpecialAccount:\n return \"NOT_SPECIAL_ACCOUNT\";\n case Status.ContractNegativeGas:\n return \"CONTRACT_NEGATIVE_GAS\";\n case Status.ContractNegativeValue:\n return \"CONTRACT_NEGATIVE_VALUE\";\n case Status.InvalidFeeFile:\n return \"INVALID_FEE_FILE\";\n case Status.InvalidExchangeRateFile:\n return \"INVALID_EXCHANGE_RATE_FILE\";\n case Status.InsufficientLocalCallGas:\n return \"INSUFFICIENT_LOCAL_CALL_GAS\";\n case Status.EntityNotAllowedToDelete:\n return \"ENTITY_NOT_ALLOWED_TO_DELETE\";\n case Status.AuthorizationFailed:\n return \"AUTHORIZATION_FAILED\";\n case Status.FileUploadedProtoInvalid:\n return \"FILE_UPLOADED_PROTO_INVALID\";\n case Status.FileUploadedProtoNotSavedToDisk:\n return \"FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK\";\n case Status.FeeScheduleFilePartUploaded:\n return \"FEE_SCHEDULE_FILE_PART_UPLOADED\";\n case Status.ExchangeRateChangeLimitExceeded:\n return \"EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED\";\n case Status.MaxContractStorageExceeded:\n return \"MAX_CONTRACT_STORAGE_EXCEEDED\";\n case Status.TransferAccountSameAsDeleteAccount:\n return \"TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT\";\n case Status.TotalLedgerBalanceInvalid:\n return \"TOTAL_LEDGER_BALANCE_INVALID\";\n case Status.ExpirationReductionNotAllowed:\n return \"EXPIRATION_REDUCTION_NOT_ALLOWED\";\n case Status.MaxGasLimitExceeded:\n return \"MAX_GAS_LIMIT_EXCEEDED\";\n case Status.MaxFileSizeExceeded:\n return \"MAX_FILE_SIZE_EXCEEDED\";\n case Status.ReceiverSigRequired:\n return \"RECEIVER_SIG_REQUIRED\";\n case Status.InvalidTopicId:\n return \"INVALID_TOPIC_ID\";\n case Status.InvalidAdminKey:\n return \"INVALID_ADMIN_KEY\";\n case Status.InvalidSubmitKey:\n return \"INVALID_SUBMIT_KEY\";\n case Status.Unauthorized:\n return \"UNAUTHORIZED\";\n case Status.InvalidTopicMessage:\n return \"INVALID_TOPIC_MESSAGE\";\n case Status.InvalidAutorenewAccount:\n return \"INVALID_AUTORENEW_ACCOUNT\";\n case Status.AutorenewAccountNotAllowed:\n return \"AUTORENEW_ACCOUNT_NOT_ALLOWED\";\n case Status.TopicExpired:\n return \"TOPIC_EXPIRED\";\n case Status.InvalidChunkNumber:\n return \"INVALID_CHUNK_NUMBER\";\n case Status.InvalidChunkTransactionId:\n return \"INVALID_CHUNK_TRANSACTION_ID\";\n case Status.AccountFrozenForToken:\n return \"ACCOUNT_FROZEN_FOR_TOKEN\";\n case Status.TokensPerAccountLimitExceeded:\n return \"TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED\";\n case Status.InvalidTokenId:\n return \"INVALID_TOKEN_ID\";\n case Status.InvalidTokenDecimals:\n return \"INVALID_TOKEN_DECIMALS\";\n case Status.InvalidTokenInitialSupply:\n return \"INVALID_TOKEN_INITIAL_SUPPLY\";\n case Status.InvalidTreasuryAccountForToken:\n return \"INVALID_TREASURY_ACCOUNT_FOR_TOKEN\";\n case Status.InvalidTokenSymbol:\n return \"INVALID_TOKEN_SYMBOL\";\n case Status.TokenHasNoFreezeKey:\n return \"TOKEN_HAS_NO_FREEZE_KEY\";\n case Status.TransfersNotZeroSumForToken:\n return \"TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN\";\n case Status.MissingTokenSymbol:\n return \"MISSING_TOKEN_SYMBOL\";\n case Status.TokenSymbolTooLong:\n return \"TOKEN_SYMBOL_TOO_LONG\";\n case Status.AccountKycNotGrantedForToken:\n return \"ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN\";\n case Status.TokenHasNoKycKey:\n return \"TOKEN_HAS_NO_KYC_KEY\";\n case Status.InsufficientTokenBalance:\n return \"INSUFFICIENT_TOKEN_BALANCE\";\n case Status.TokenWasDeleted:\n return \"TOKEN_WAS_DELETED\";\n case Status.TokenHasNoSupplyKey:\n return \"TOKEN_HAS_NO_SUPPLY_KEY\";\n case Status.TokenHasNoWipeKey:\n return \"TOKEN_HAS_NO_WIPE_KEY\";\n case Status.InvalidTokenMintAmount:\n return \"INVALID_TOKEN_MINT_AMOUNT\";\n case Status.InvalidTokenBurnAmount:\n return \"INVALID_TOKEN_BURN_AMOUNT\";\n case Status.TokenNotAssociatedToAccount:\n return \"TOKEN_NOT_ASSOCIATED_TO_ACCOUNT\";\n case Status.CannotWipeTokenTreasuryAccount:\n return \"CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT\";\n case Status.InvalidKycKey:\n return \"INVALID_KYC_KEY\";\n case Status.InvalidWipeKey:\n return \"INVALID_WIPE_KEY\";\n case Status.InvalidFreezeKey:\n return \"INVALID_FREEZE_KEY\";\n case Status.InvalidSupplyKey:\n return \"INVALID_SUPPLY_KEY\";\n case Status.MissingTokenName:\n return \"MISSING_TOKEN_NAME\";\n case Status.TokenNameTooLong:\n return \"TOKEN_NAME_TOO_LONG\";\n case Status.InvalidWipingAmount:\n return \"INVALID_WIPING_AMOUNT\";\n case Status.TokenIsImmutable:\n return \"TOKEN_IS_IMMUTABLE\";\n case Status.TokenAlreadyAssociatedToAccount:\n return \"TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT\";\n case Status.TransactionRequiresZeroTokenBalances:\n return \"TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES\";\n case Status.AccountIsTreasury:\n return \"ACCOUNT_IS_TREASURY\";\n case Status.TokenIdRepeatedInTokenList:\n return \"TOKEN_ID_REPEATED_IN_TOKEN_LIST\";\n case Status.TokenTransferListSizeLimitExceeded:\n return \"TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED\";\n case Status.EmptyTokenTransferBody:\n return \"EMPTY_TOKEN_TRANSFER_BODY\";\n case Status.EmptyTokenTransferAccountAmounts:\n return \"EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS\";\n case Status.InvalidScheduleId:\n return \"INVALID_SCHEDULE_ID\";\n case Status.ScheduleIsImmutable:\n return \"SCHEDULE_IS_IMMUTABLE\";\n case Status.InvalidSchedulePayerId:\n return \"INVALID_SCHEDULE_PAYER_ID\";\n case Status.InvalidScheduleAccountId:\n return \"INVALID_SCHEDULE_ACCOUNT_ID\";\n case Status.NoNewValidSignatures:\n return \"NO_NEW_VALID_SIGNATURES\";\n case Status.UnresolvableRequiredSigners:\n return \"UNRESOLVABLE_REQUIRED_SIGNERS\";\n case Status.ScheduledTransactionNotInWhitelist:\n return \"SCHEDULED_TRANSACTION_NOT_IN_WHITELIST\";\n case Status.SomeSignaturesWereInvalid:\n return \"SOME_SIGNATURES_WERE_INVALID\";\n case Status.TransactionIdFieldNotAllowed:\n return \"TRANSACTION_ID_FIELD_NOT_ALLOWED\";\n case Status.IdenticalScheduleAlreadyCreated:\n return \"IDENTICAL_SCHEDULE_ALREADY_CREATED\";\n case Status.InvalidZeroByteInString:\n return \"INVALID_ZERO_BYTE_IN_STRING\";\n case Status.ScheduleAlreadyDeleted:\n return \"SCHEDULE_ALREADY_DELETED\";\n case Status.ScheduleAlreadyExecuted:\n return \"SCHEDULE_ALREADY_EXECUTED\";\n case Status.MessageSizeTooLarge:\n return \"MESSAGE_SIZE_TOO_LARGE\";\n case Status.OperationRepeatedInBucketGroups:\n return \"OPERATION_REPEATED_IN_BUCKET_GROUPS\";\n case Status.BucketCapacityOverflow:\n return \"BUCKET_CAPACITY_OVERFLOW\";\n case Status.NodeCapacityNotSufficientForOperation:\n return \"NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION\";\n case Status.BucketHasNoThrottleGroups:\n return \"BUCKET_HAS_NO_THROTTLE_GROUPS\";\n case Status.ThrottleGroupHasZeroOpsPerSec:\n return \"THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC\";\n case Status.SuccessButMissingExpectedOperation:\n return \"SUCCESS_BUT_MISSING_EXPECTED_OPERATION\";\n case Status.UnparseableThrottleDefinitions:\n return \"UNPARSEABLE_THROTTLE_DEFINITIONS\";\n case Status.InvalidThrottleDefinitions:\n return \"INVALID_THROTTLE_DEFINITIONS\";\n case Status.AccountExpiredAndPendingRemoval:\n return \"ACCOUNT_EXPIRED_AND_PENDING_REMOVAL\";\n case Status.InvalidTokenMaxSupply:\n return \"INVALID_TOKEN_MAX_SUPPLY\";\n case Status.InvalidTokenNftSerialNumber:\n return \"INVALID_TOKEN_NFT_SERIAL_NUMBER\";\n case Status.InvalidNftId:\n return \"INVALID_NFT_ID\";\n case Status.MetadataTooLong:\n return \"METADATA_TOO_LONG\";\n case Status.BatchSizeLimitExceeded:\n return \"BATCH_SIZE_LIMIT_EXCEEDED\";\n case Status.InvalidQueryRange:\n return \"INVALID_QUERY_RANGE\";\n case Status.FractionDividesByZero:\n return \"FRACTION_DIVIDES_BY_ZERO\";\n case Status.InsufficientPayerBalanceForCustomFee:\n return \"INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE\";\n case Status.CustomFeesListTooLong:\n return \"CUSTOM_FEES_LIST_TOO_LONG\";\n case Status.InvalidCustomFeeCollector:\n return \"INVALID_CUSTOM_FEE_COLLECTOR\";\n case Status.InvalidTokenIdInCustomFees:\n return \"INVALID_TOKEN_ID_IN_CUSTOM_FEES\";\n case Status.TokenNotAssociatedToFeeCollector:\n return \"TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR\";\n case Status.TokenMaxSupplyReached:\n return \"TOKEN_MAX_SUPPLY_REACHED\";\n case Status.SenderDoesNotOwnNftSerialNo:\n return \"SENDER_DOES_NOT_OWN_NFT_SERIAL_NO\";\n case Status.CustomFeeNotFullySpecified:\n return \"CUSTOM_FEE_NOT_FULLY_SPECIFIED\";\n case Status.CustomFeeMustBePositive:\n return \"CUSTOM_FEE_MUST_BE_POSITIVE\";\n case Status.TokenHasNoFeeScheduleKey:\n return \"TOKEN_HAS_NO_FEE_SCHEDULE_KEY\";\n case Status.CustomFeeOutsideNumericRange:\n return \"CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE\";\n case Status.RoyaltyFractionCannotExceedOne:\n return \"ROYALTY_FRACTION_CANNOT_EXCEED_ONE\";\n case Status.FractionalFeeMaxAmountLessThanMinAmount:\n return \"FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT\";\n case Status.CustomScheduleAlreadyHasNoFees:\n return \"CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES\";\n case Status.CustomFeeDenominationMustBeFungibleCommon:\n return \"CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON\";\n case Status.CustomFractionalFeeOnlyAllowedForFungibleCommon:\n return \"CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON\";\n case Status.InvalidCustomFeeScheduleKey:\n return \"INVALID_CUSTOM_FEE_SCHEDULE_KEY\";\n case Status.InvalidTokenMintMetadata:\n return \"INVALID_TOKEN_MINT_METADATA\";\n case Status.InvalidTokenBurnMetadata:\n return \"INVALID_TOKEN_BURN_METADATA\";\n case Status.CurrentTreasuryStillOwnsNfts:\n return \"CURRENT_TREASURY_STILL_OWNS_NFTS\";\n case Status.AccountStillOwnsNfts:\n return \"ACCOUNT_STILL_OWNS_NFTS\";\n case Status.TreasuryMustOwnBurnedNft:\n return \"TREASURY_MUST_OWN_BURNED_NFT\";\n case Status.AccountDoesNotOwnWipedNft:\n return \"ACCOUNT_DOES_NOT_OWN_WIPED_NFT\";\n case Status.AccountAmountTransfersOnlyAllowedForFungibleCommon:\n return \"ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON\";\n case Status.MaxNftsInPriceRegimeHaveBeenMinted:\n return \"MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED\";\n case Status.PayerAccountDeleted:\n return \"PAYER_ACCOUNT_DELETED\";\n case Status.CustomFeeChargingExceededMaxRecursionDepth:\n return \"CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH\";\n case Status.CustomFeeChargingExceededMaxAccountAmounts:\n return \"CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS\";\n case Status.InsufficientSenderAccountBalanceForCustomFee:\n return \"INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE\";\n case Status.SerialNumberLimitReached:\n return \"SERIAL_NUMBER_LIMIT_REACHED\";\n case Status.CustomRoyaltyFeeOnlyAllowedForNonFungibleUnique:\n return \"CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE\";\n case Status.NoRemainingAutomaticAssociations:\n return \"NO_REMAINING_AUTOMATIC_ASSOCIATIONS\";\n case Status.ExistingAutomaticAssociationsExceedGivenLimit:\n return \"EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT\";\n case Status.RequestedNumAutomaticAssociationsExceedsAssociationLimit:\n return \"REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT\";\n case Status.TokenIsPaused:\n return \"TOKEN_IS_PAUSED\";\n case Status.TokenHasNoPauseKey:\n return \"TOKEN_HAS_NO_PAUSE_KEY\";\n case Status.InvalidPauseKey:\n return \"INVALID_PAUSE_KEY\";\n case Status.FreezeUpdateFileDoesNotExist:\n return \"FREEZE_UPDATE_FILE_DOES_NOT_EXIST\";\n case Status.FreezeUpdateFileHashDoesNotMatch:\n return \"FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH\";\n case Status.NoUpgradeHasBeenPrepared:\n return \"NO_UPGRADE_HAS_BEEN_PREPARED\";\n case Status.NoFreezeIsScheduled:\n return \"NO_FREEZE_IS_SCHEDULED\";\n case Status.UpdateFileHashChangedSincePrepareUpgrade:\n return \"UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE\";\n case Status.FreezeStartTimeMustBeFuture:\n return \"FREEZE_START_TIME_MUST_BE_FUTURE\";\n case Status.PreparedUpdateFileIsImmutable:\n return \"PREPARED_UPDATE_FILE_IS_IMMUTABLE\";\n case Status.FreezeAlreadyScheduled:\n return \"FREEZE_ALREADY_SCHEDULED\";\n case Status.FreezeUpgradeInProgress:\n return \"FREEZE_UPGRADE_IN_PROGRESS\";\n case Status.UpdateFileIdDoesNotMatchPrepared:\n return \"UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED\";\n case Status.UpdateFileHashDoesNotMatchPrepared:\n return \"UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED\";\n case Status.ConsensusGasExhausted:\n return \"CONSENSUS_GAS_EXHAUSTED\";\n case Status.RevertedSuccess:\n return \"REVERTED_SUCCESS\";\n case Status.MaxStorageInPriceRegimeHasBeenUsed:\n return \"MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED\";\n case Status.InvalidAliasKey:\n return \"INVALID_ALIAS_KEY\";\n case Status.UnexpectedTokenDecimals:\n return \"UNEXPECTED_TOKEN_DECIMALS\";\n case Status.InvalidProxyAccountId:\n return \"INVALID_PROXY_ACCOUNT_ID\";\n case Status.InvalidTransferAccountId:\n return \"INVALID_TRANSFER_ACCOUNT_ID\";\n case Status.InvalidFeeCollectorAccountId:\n return \"INVALID_FEE_COLLECTOR_ACCOUNT_ID\";\n case Status.AliasIsImmutable:\n return \"ALIAS_IS_IMMUTABLE\";\n case Status.SpenderAccountSameAsOwner:\n return \"SPENDER_ACCOUNT_SAME_AS_OWNER\";\n case Status.AmountExceedsTokenMaxSupply:\n return \"AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY\";\n case Status.NegativeAllowanceAmount:\n return \"NEGATIVE_ALLOWANCE_AMOUNT\";\n case Status.CannotApproveForAllFungibleCommon:\n return \"CANNOT_APPROVE_FOR_ALL_FUNGIBLE_COMMON\";\n case Status.SpenderDoesNotHaveAllowance:\n return \"SPENDER_DOES_NOT_HAVE_ALLOWANCE\";\n case Status.AmountExceedsAllowance:\n return \"AMOUNT_EXCEEDS_ALLOWANCE\";\n case Status.MaxAllowancesExceeded:\n return \"MAX_ALLOWANCES_EXCEEDED\";\n case Status.EmptyAllowances:\n return \"EMPTY_ALLOWANCES\";\n case Status.SpenderAccountRepeatedInAllowances:\n return \"SPENDER_ACCOUNT_REPEATED_IN_ALLOWANCES\";\n case Status.RepeatedSerialNumsInNFTAllowances:\n return \"REPEATED_SERIAL_NUMS_IN_NFT_ALLOWANCES\";\n case Status.FungibleTokenInNFTAllowances:\n return \"FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES\";\n case Status.NFTInFungibleTokenAllowances:\n return \"NFT_IN_FUNGIBLE_PAYER_ALLOWANCES\";\n case Status.PayerAndOwnerNotEqual:\n return \"PAYER_AND_OWNER_NOT_EQUAL\";\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {Status}\n */\n static _fromCode(code) {\n switch (code) {\n case 0:\n return Status.Ok;\n case 1:\n return Status.InvalidTransaction;\n case 2:\n return Status.PayerAccountNotFound;\n case 3:\n return Status.InvalidNodeAccount;\n case 4:\n return Status.TransactionExpired;\n case 5:\n return Status.InvalidTransactionStart;\n case 6:\n return Status.InvalidTransactionDuration;\n case 7:\n return Status.InvalidSignature;\n case 8:\n return Status.MemoTooLong;\n case 9:\n return Status.InsufficientTxFee;\n case 10:\n return Status.InsufficientPayerBalance;\n case 11:\n return Status.DuplicateTransaction;\n case 12:\n return Status.Busy;\n case 13:\n return Status.NotSupported;\n case 14:\n return Status.InvalidFileId;\n case 15:\n return Status.InvalidAccountId;\n case 16:\n return Status.InvalidContractId;\n case 17:\n return Status.InvalidTransactionId;\n case 18:\n return Status.ReceiptNotFound;\n case 19:\n return Status.RecordNotFound;\n case 20:\n return Status.InvalidSolidityId;\n case 21:\n return Status.Unknown;\n case 22:\n return Status.Success;\n case 23:\n return Status.FailInvalid;\n case 24:\n return Status.FailFee;\n case 25:\n return Status.FailBalance;\n case 26:\n return Status.KeyRequired;\n case 27:\n return Status.BadEncoding;\n case 28:\n return Status.InsufficientAccountBalance;\n case 29:\n return Status.InvalidSolidityAddress;\n case 30:\n return Status.InsufficientGas;\n case 31:\n return Status.ContractSizeLimitExceeded;\n case 32:\n return Status.LocalCallModificationException;\n case 33:\n return Status.ContractRevertExecuted;\n case 34:\n return Status.ContractExecutionException;\n case 35:\n return Status.InvalidReceivingNodeAccount;\n case 36:\n return Status.MissingQueryHeader;\n case 37:\n return Status.AccountUpdateFailed;\n case 38:\n return Status.InvalidKeyEncoding;\n case 39:\n return Status.NullSolidityAddress;\n case 40:\n return Status.ContractUpdateFailed;\n case 41:\n return Status.InvalidQueryHeader;\n case 42:\n return Status.InvalidFeeSubmitted;\n case 43:\n return Status.InvalidPayerSignature;\n case 44:\n return Status.KeyNotProvided;\n case 45:\n return Status.InvalidExpirationTime;\n case 46:\n return Status.NoWaclKey;\n case 47:\n return Status.FileContentEmpty;\n case 48:\n return Status.InvalidAccountAmounts;\n case 49:\n return Status.EmptyTransactionBody;\n case 50:\n return Status.InvalidTransactionBody;\n case 51:\n return Status.InvalidSignatureTypeMismatchingKey;\n case 52:\n return Status.InvalidSignatureCountMismatchingKey;\n case 53:\n return Status.EmptyLiveHashBody;\n case 54:\n return Status.EmptyLiveHash;\n case 55:\n return Status.EmptyLiveHashKeys;\n case 56:\n return Status.InvalidLiveHashSize;\n case 57:\n return Status.EmptyQueryBody;\n case 58:\n return Status.EmptyLiveHashQuery;\n case 59:\n return Status.LiveHashNotFound;\n case 60:\n return Status.AccountIdDoesNotExist;\n case 61:\n return Status.LiveHashAlreadyExists;\n case 62:\n return Status.InvalidFileWacl;\n case 63:\n return Status.SerializationFailed;\n case 64:\n return Status.TransactionOversize;\n case 65:\n return Status.TransactionTooManyLayers;\n case 66:\n return Status.ContractDeleted;\n case 67:\n return Status.PlatformNotActive;\n case 68:\n return Status.KeyPrefixMismatch;\n case 69:\n return Status.PlatformTransactionNotCreated;\n case 70:\n return Status.InvalidRenewalPeriod;\n case 71:\n return Status.InvalidPayerAccountId;\n case 72:\n return Status.AccountDeleted;\n case 73:\n return Status.FileDeleted;\n case 74:\n return Status.AccountRepeatedInAccountAmounts;\n case 75:\n return Status.SettingNegativeAccountBalance;\n case 76:\n return Status.ObtainerRequired;\n case 77:\n return Status.ObtainerSameContractId;\n case 78:\n return Status.ObtainerDoesNotExist;\n case 79:\n return Status.ModifyingImmutableContract;\n case 80:\n return Status.FileSystemException;\n case 81:\n return Status.AutorenewDurationNotInRange;\n case 82:\n return Status.ErrorDecodingBytestring;\n case 83:\n return Status.ContractFileEmpty;\n case 84:\n return Status.ContractBytecodeEmpty;\n case 85:\n return Status.InvalidInitialBalance;\n case 86:\n return Status.InvalidReceiveRecordThreshold;\n case 87:\n return Status.InvalidSendRecordThreshold;\n case 88:\n return Status.AccountIsNotGenesisAccount;\n case 89:\n return Status.PayerAccountUnauthorized;\n case 90:\n return Status.InvalidFreezeTransactionBody;\n case 91:\n return Status.FreezeTransactionBodyNotFound;\n case 92:\n return Status.TransferListSizeLimitExceeded;\n case 93:\n return Status.ResultSizeLimitExceeded;\n case 94:\n return Status.NotSpecialAccount;\n case 95:\n return Status.ContractNegativeGas;\n case 96:\n return Status.ContractNegativeValue;\n case 97:\n return Status.InvalidFeeFile;\n case 98:\n return Status.InvalidExchangeRateFile;\n case 99:\n return Status.InsufficientLocalCallGas;\n case 100:\n return Status.EntityNotAllowedToDelete;\n case 101:\n return Status.AuthorizationFailed;\n case 102:\n return Status.FileUploadedProtoInvalid;\n case 103:\n return Status.FileUploadedProtoNotSavedToDisk;\n case 104:\n return Status.FeeScheduleFilePartUploaded;\n case 105:\n return Status.ExchangeRateChangeLimitExceeded;\n case 106:\n return Status.MaxContractStorageExceeded;\n case 107:\n return Status.TransferAccountSameAsDeleteAccount;\n case 108:\n return Status.TotalLedgerBalanceInvalid;\n case 110:\n return Status.ExpirationReductionNotAllowed;\n case 111:\n return Status.MaxGasLimitExceeded;\n case 112:\n return Status.MaxFileSizeExceeded;\n case 113:\n return Status.ReceiverSigRequired;\n case 150:\n return Status.InvalidTopicId;\n case 155:\n return Status.InvalidAdminKey;\n case 156:\n return Status.InvalidSubmitKey;\n case 157:\n return Status.Unauthorized;\n case 158:\n return Status.InvalidTopicMessage;\n case 159:\n return Status.InvalidAutorenewAccount;\n case 160:\n return Status.AutorenewAccountNotAllowed;\n case 162:\n return Status.TopicExpired;\n case 163:\n return Status.InvalidChunkNumber;\n case 164:\n return Status.InvalidChunkTransactionId;\n case 165:\n return Status.AccountFrozenForToken;\n case 166:\n return Status.TokensPerAccountLimitExceeded;\n case 167:\n return Status.InvalidTokenId;\n case 168:\n return Status.InvalidTokenDecimals;\n case 169:\n return Status.InvalidTokenInitialSupply;\n case 170:\n return Status.InvalidTreasuryAccountForToken;\n case 171:\n return Status.InvalidTokenSymbol;\n case 172:\n return Status.TokenHasNoFreezeKey;\n case 173:\n return Status.TransfersNotZeroSumForToken;\n case 174:\n return Status.MissingTokenSymbol;\n case 175:\n return Status.TokenSymbolTooLong;\n case 176:\n return Status.AccountKycNotGrantedForToken;\n case 177:\n return Status.TokenHasNoKycKey;\n case 178:\n return Status.InsufficientTokenBalance;\n case 179:\n return Status.TokenWasDeleted;\n case 180:\n return Status.TokenHasNoSupplyKey;\n case 181:\n return Status.TokenHasNoWipeKey;\n case 182:\n return Status.InvalidTokenMintAmount;\n case 183:\n return Status.InvalidTokenBurnAmount;\n case 184:\n return Status.TokenNotAssociatedToAccount;\n case 185:\n return Status.CannotWipeTokenTreasuryAccount;\n case 186:\n return Status.InvalidKycKey;\n case 187:\n return Status.InvalidWipeKey;\n case 188:\n return Status.InvalidFreezeKey;\n case 189:\n return Status.InvalidSupplyKey;\n case 190:\n return Status.MissingTokenName;\n case 191:\n return Status.TokenNameTooLong;\n case 192:\n return Status.InvalidWipingAmount;\n case 193:\n return Status.TokenIsImmutable;\n case 194:\n return Status.TokenAlreadyAssociatedToAccount;\n case 195:\n return Status.TransactionRequiresZeroTokenBalances;\n case 196:\n return Status.AccountIsTreasury;\n case 197:\n return Status.TokenIdRepeatedInTokenList;\n case 198:\n return Status.TokenTransferListSizeLimitExceeded;\n case 199:\n return Status.EmptyTokenTransferBody;\n case 200:\n return Status.EmptyTokenTransferAccountAmounts;\n case 201:\n return Status.InvalidScheduleId;\n case 202:\n return Status.ScheduleIsImmutable;\n case 203:\n return Status.InvalidSchedulePayerId;\n case 204:\n return Status.InvalidScheduleAccountId;\n case 205:\n return Status.NoNewValidSignatures;\n case 206:\n return Status.UnresolvableRequiredSigners;\n case 207:\n return Status.ScheduledTransactionNotInWhitelist;\n case 208:\n return Status.SomeSignaturesWereInvalid;\n case 209:\n return Status.TransactionIdFieldNotAllowed;\n case 210:\n return Status.IdenticalScheduleAlreadyCreated;\n case 211:\n return Status.InvalidZeroByteInString;\n case 212:\n return Status.ScheduleAlreadyDeleted;\n case 213:\n return Status.ScheduleAlreadyExecuted;\n case 214:\n return Status.MessageSizeTooLarge;\n case 215:\n return Status.OperationRepeatedInBucketGroups;\n case 216:\n return Status.BucketCapacityOverflow;\n case 217:\n return Status.NodeCapacityNotSufficientForOperation;\n case 218:\n return Status.BucketHasNoThrottleGroups;\n case 219:\n return Status.ThrottleGroupHasZeroOpsPerSec;\n case 220:\n return Status.SuccessButMissingExpectedOperation;\n case 221:\n return Status.UnparseableThrottleDefinitions;\n case 222:\n return Status.InvalidThrottleDefinitions;\n case 223:\n return Status.AccountExpiredAndPendingRemoval;\n case 224:\n return Status.InvalidTokenMaxSupply;\n case 225:\n return Status.InvalidTokenNftSerialNumber;\n case 226:\n return Status.InvalidNftId;\n case 227:\n return Status.MetadataTooLong;\n case 228:\n return Status.BatchSizeLimitExceeded;\n case 229:\n return Status.InvalidQueryRange;\n case 230:\n return Status.FractionDividesByZero;\n case 231:\n return Status.InsufficientPayerBalanceForCustomFee;\n case 232:\n return Status.CustomFeesListTooLong;\n case 233:\n return Status.InvalidCustomFeeCollector;\n case 234:\n return Status.InvalidTokenIdInCustomFees;\n case 235:\n return Status.TokenNotAssociatedToFeeCollector;\n case 236:\n return Status.TokenMaxSupplyReached;\n case 237:\n return Status.SenderDoesNotOwnNftSerialNo;\n case 238:\n return Status.CustomFeeNotFullySpecified;\n case 239:\n return Status.CustomFeeMustBePositive;\n case 240:\n return Status.TokenHasNoFeeScheduleKey;\n case 241:\n return Status.CustomFeeOutsideNumericRange;\n case 242:\n return Status.RoyaltyFractionCannotExceedOne;\n case 243:\n return Status.FractionalFeeMaxAmountLessThanMinAmount;\n case 244:\n return Status.CustomScheduleAlreadyHasNoFees;\n case 245:\n return Status.CustomFeeDenominationMustBeFungibleCommon;\n case 246:\n return Status.CustomFractionalFeeOnlyAllowedForFungibleCommon;\n case 247:\n return Status.InvalidCustomFeeScheduleKey;\n case 248:\n return Status.InvalidTokenMintMetadata;\n case 249:\n return Status.InvalidTokenBurnMetadata;\n case 250:\n return Status.CurrentTreasuryStillOwnsNfts;\n case 251:\n return Status.AccountStillOwnsNfts;\n case 252:\n return Status.TreasuryMustOwnBurnedNft;\n case 253:\n return Status.AccountDoesNotOwnWipedNft;\n case 254:\n return Status.AccountAmountTransfersOnlyAllowedForFungibleCommon;\n case 255:\n return Status.MaxNftsInPriceRegimeHaveBeenMinted;\n case 256:\n return Status.PayerAccountDeleted;\n case 257:\n return Status.CustomFeeChargingExceededMaxRecursionDepth;\n case 258:\n return Status.CustomFeeChargingExceededMaxAccountAmounts;\n case 259:\n return Status.InsufficientSenderAccountBalanceForCustomFee;\n case 260:\n return Status.SerialNumberLimitReached;\n case 261:\n return Status.CustomRoyaltyFeeOnlyAllowedForNonFungibleUnique;\n case 262:\n return Status.NoRemainingAutomaticAssociations;\n case 263:\n return Status.ExistingAutomaticAssociationsExceedGivenLimit;\n case 264:\n return Status.RequestedNumAutomaticAssociationsExceedsAssociationLimit;\n case 265:\n return Status.TokenIsPaused;\n case 266:\n return Status.TokenHasNoPauseKey;\n case 267:\n return Status.InvalidPauseKey;\n case 268:\n return Status.FreezeUpdateFileDoesNotExist;\n case 269:\n return Status.FreezeUpdateFileHashDoesNotMatch;\n case 270:\n return Status.NoUpgradeHasBeenPrepared;\n case 271:\n return Status.NoFreezeIsScheduled;\n case 272:\n return Status.UpdateFileHashChangedSincePrepareUpgrade;\n case 273:\n return Status.FreezeStartTimeMustBeFuture;\n case 274:\n return Status.PreparedUpdateFileIsImmutable;\n case 275:\n return Status.FreezeAlreadyScheduled;\n case 276:\n return Status.FreezeUpgradeInProgress;\n case 277:\n return Status.UpdateFileIdDoesNotMatchPrepared;\n case 278:\n return Status.UpdateFileHashDoesNotMatchPrepared;\n case 279:\n return Status.ConsensusGasExhausted;\n case 280:\n return Status.RevertedSuccess;\n case 281:\n return Status.MaxStorageInPriceRegimeHasBeenUsed;\n case 282:\n return Status.InvalidAliasKey;\n case 283:\n return Status.UnexpectedTokenDecimals;\n case 284:\n return Status.InvalidProxyAccountId;\n case 285:\n return Status.InvalidTransferAccountId;\n case 286:\n return Status.InvalidFeeCollectorAccountId;\n case 287:\n return Status.AliasIsImmutable;\n case 288:\n return Status.SpenderAccountSameAsOwner;\n case 289:\n return Status.AmountExceedsTokenMaxSupply;\n case 290:\n return Status.NegativeAllowanceAmount;\n case 291:\n return Status.CannotApproveForAllFungibleCommon;\n case 292:\n return Status.SpenderDoesNotHaveAllowance;\n case 293:\n return Status.AmountExceedsAllowance;\n case 294:\n return Status.MaxAllowancesExceeded;\n case 295:\n return Status.EmptyAllowances;\n case 296:\n return Status.SpenderAccountRepeatedInAllowances;\n case 297:\n return Status.RepeatedSerialNumsInNFTAllowances;\n case 298:\n return Status.FungibleTokenInNFTAllowances;\n case 299:\n return Status.NFTInFungibleTokenAllowances;\n case 300:\n return Status.PayerAndOwnerNotEqual;\n default:\n throw new Error(\n `(BUG) Status.fromCode() does not handle code: ${code}`\n );\n }\n }\n\n /**\n * @returns {proto.ResponseCodeEnum}\n */\n valueOf() {\n return this._code;\n }\n}\n\n/**\n * The transaction passed the precheck validations.\n */\nStatus.Ok = new Status(0);\n\n/**\n * For any error not handled by specific error codes listed below.\n */\nStatus.InvalidTransaction = new Status(1);\n\n/**\n * Payer account does not exist.\n */\nStatus.PayerAccountNotFound = new Status(2);\n\n/**\n * Node Account provided does not match the node account of the node the transaction was submitted\n * to.\n */\nStatus.InvalidNodeAccount = new Status(3);\n\n/**\n * Pre-Check error when TransactionValidStart + transactionValidDuration is less than current\n * consensus time.\n */\nStatus.TransactionExpired = new Status(4);\n\n/**\n * Transaction start time is greater than current consensus time\n */\nStatus.InvalidTransactionStart = new Status(5);\n\n/**\n * valid transaction duration is a positive non zero number that does not exceed 120 seconds\n */\nStatus.InvalidTransactionDuration = new Status(6);\n\n/**\n * The transaction signature is not valid\n */\nStatus.InvalidSignature = new Status(7);\n\n/**\n * Transaction memo size exceeded 100 bytes\n */\nStatus.MemoTooLong = new Status(8);\n\n/**\n * The fee provided in the transaction is insufficient for this type of transaction\n */\nStatus.InsufficientTxFee = new Status(9);\n\n/**\n * The payer account has insufficient cryptocurrency to pay the transaction fee\n */\nStatus.InsufficientPayerBalance = new Status(10);\n\n/**\n * This transaction ID is a duplicate of one that was submitted to this node or reached consensus\n * in the last 180 seconds (receipt period)\n */\nStatus.DuplicateTransaction = new Status(11);\n\n/**\n * If API is throttled out\n */\nStatus.Busy = new Status(12);\n\n/**\n * The API is not currently supported\n */\nStatus.NotSupported = new Status(13);\n\n/**\n * The file id is invalid or does not exist\n */\nStatus.InvalidFileId = new Status(14);\n\n/**\n * The account id is invalid or does not exist\n */\nStatus.InvalidAccountId = new Status(15);\n\n/**\n * The contract id is invalid or does not exist\n */\nStatus.InvalidContractId = new Status(16);\n\n/**\n * Transaction id is not valid\n */\nStatus.InvalidTransactionId = new Status(17);\n\n/**\n * Receipt for given transaction id does not exist\n */\nStatus.ReceiptNotFound = new Status(18);\n\n/**\n * Record for given transaction id does not exist\n */\nStatus.RecordNotFound = new Status(19);\n\n/**\n * The solidity id is invalid or entity with this solidity id does not exist\n */\nStatus.InvalidSolidityId = new Status(20);\n\n/**\n * The responding node has submitted the transaction to the network. Its final status is still\n * unknown.\n */\nStatus.Unknown = new Status(21);\n\n/**\n * The transaction succeeded\n */\nStatus.Success = new Status(22);\n\n/**\n * There was a system error and the transaction failed because of invalid request parameters.\n */\nStatus.FailInvalid = new Status(23);\n\n/**\n * There was a system error while performing fee calculation, reserved for future.\n */\nStatus.FailFee = new Status(24);\n\n/**\n * There was a system error while performing balance checks, reserved for future.\n */\nStatus.FailBalance = new Status(25);\n\n/**\n * Key not provided in the transaction body\n */\nStatus.KeyRequired = new Status(26);\n\n/**\n * Unsupported algorithm/encoding used for keys in the transaction\n */\nStatus.BadEncoding = new Status(27);\n\n/**\n * When the account balance is not sufficient for the transfer\n */\nStatus.InsufficientAccountBalance = new Status(28);\n\n/**\n * During an update transaction when the system is not able to find the Users Solidity address\n */\nStatus.InvalidSolidityAddress = new Status(29);\n\n/**\n * Not enough gas was supplied to execute transaction\n */\nStatus.InsufficientGas = new Status(30);\n\n/**\n * contract byte code size is over the limit\n */\nStatus.ContractSizeLimitExceeded = new Status(31);\n\n/**\n * local execution (query) is requested for a function which changes state\n */\nStatus.LocalCallModificationException = new Status(32);\n\n/**\n * Contract REVERT OPCODE executed\n */\nStatus.ContractRevertExecuted = new Status(33);\n\n/**\n * For any contract execution related error not handled by specific error codes listed above.\n */\nStatus.ContractExecutionException = new Status(34);\n\n/**\n * In Query validation, account with +ve(amount) value should be Receiving node account, the\n * receiver account should be only one account in the list\n */\nStatus.InvalidReceivingNodeAccount = new Status(35);\n\n/**\n * Header is missing in Query request\n */\nStatus.MissingQueryHeader = new Status(36);\n\n/**\n * The update of the account failed\n */\nStatus.AccountUpdateFailed = new Status(37);\n\n/**\n * Provided key encoding was not supported by the system\n */\nStatus.InvalidKeyEncoding = new Status(38);\n\n/**\n * null solidity address\n */\nStatus.NullSolidityAddress = new Status(39);\n\n/**\n * update of the contract failed\n */\nStatus.ContractUpdateFailed = new Status(40);\n\n/**\n * the query header is invalid\n */\nStatus.InvalidQueryHeader = new Status(41);\n\n/**\n * Invalid fee submitted\n */\nStatus.InvalidFeeSubmitted = new Status(42);\n\n/**\n * Payer signature is invalid\n */\nStatus.InvalidPayerSignature = new Status(43);\n\n/**\n * The keys were not provided in the request.\n */\nStatus.KeyNotProvided = new Status(44);\n\n/**\n * Expiration time provided in the transaction was invalid.\n */\nStatus.InvalidExpirationTime = new Status(45);\n\n/**\n * WriteAccess Control Keys are not provided for the file\n */\nStatus.NoWaclKey = new Status(46);\n\n/**\n * The contents of file are provided as empty.\n */\nStatus.FileContentEmpty = new Status(47);\n\n/**\n * The crypto transfer credit and debit do not sum equal to 0\n */\nStatus.InvalidAccountAmounts = new Status(48);\n\n/**\n * Transaction body provided is empty\n */\nStatus.EmptyTransactionBody = new Status(49);\n\n/**\n * Invalid transaction body provided\n */\nStatus.InvalidTransactionBody = new Status(50);\n\n/**\n * the type of key (base ed25519 key, KeyList, or ThresholdKey) does not match the type of\n * signature (base ed25519 signature, SignatureList, or ThresholdKeySignature)\n */\nStatus.InvalidSignatureTypeMismatchingKey = new Status(51);\n\n/**\n * the number of key (KeyList, or ThresholdKey) does not match that of signature (SignatureList,\n * or ThresholdKeySignature). e.g. if a keyList has 3 base keys, then the corresponding\n * signatureList should also have 3 base signatures.\n */\nStatus.InvalidSignatureCountMismatchingKey = new Status(52);\n\n/**\n * the livehash body is empty\n */\nStatus.EmptyLiveHashBody = new Status(53);\n\n/**\n * the livehash data is missing\n */\nStatus.EmptyLiveHash = new Status(54);\n\n/**\n * the keys for a livehash are missing\n */\nStatus.EmptyLiveHashKeys = new Status(55);\n\n/**\n * the livehash data is not the output of a SHA-384 digest\n */\nStatus.InvalidLiveHashSize = new Status(56);\n\n/**\n * the query body is empty\n */\nStatus.EmptyQueryBody = new Status(57);\n\n/**\n * the crypto livehash query is empty\n */\nStatus.EmptyLiveHashQuery = new Status(58);\n\n/**\n * the livehash is not present\n */\nStatus.LiveHashNotFound = new Status(59);\n\n/**\n * the account id passed has not yet been created.\n */\nStatus.AccountIdDoesNotExist = new Status(60);\n\n/**\n * the livehash already exists for a given account\n */\nStatus.LiveHashAlreadyExists = new Status(61);\n\n/**\n * File WACL keys are invalid\n */\nStatus.InvalidFileWacl = new Status(62);\n\n/**\n * Serialization failure\n */\nStatus.SerializationFailed = new Status(63);\n\n/**\n * The size of the Transaction is greater than transactionMaxBytes\n */\nStatus.TransactionOversize = new Status(64);\n\n/**\n * The Transaction has more than 50 levels\n */\nStatus.TransactionTooManyLayers = new Status(65);\n\n/**\n * Contract is marked as deleted\n */\nStatus.ContractDeleted = new Status(66);\n\n/**\n * the platform node is either disconnected or lagging behind.\n */\nStatus.PlatformNotActive = new Status(67);\n\n/**\n * one public key matches more than one prefixes on the signature map\n */\nStatus.KeyPrefixMismatch = new Status(68);\n\n/**\n * transaction not created by platform due to large backlog\n */\nStatus.PlatformTransactionNotCreated = new Status(69);\n\n/**\n * auto renewal period is not a positive number of seconds\n */\nStatus.InvalidRenewalPeriod = new Status(70);\n\n/**\n * the response code when a smart contract id is passed for a crypto API request\n */\nStatus.InvalidPayerAccountId = new Status(71);\n\n/**\n * the account has been marked as deleted\n */\nStatus.AccountDeleted = new Status(72);\n\n/**\n * the file has been marked as deleted\n */\nStatus.FileDeleted = new Status(73);\n\n/**\n * same accounts repeated in the transfer account list\n */\nStatus.AccountRepeatedInAccountAmounts = new Status(74);\n\n/**\n * attempting to set negative balance value for crypto account\n */\nStatus.SettingNegativeAccountBalance = new Status(75);\n\n/**\n * when deleting smart contract that has crypto balance either transfer account or transfer smart\n * contract is required\n */\nStatus.ObtainerRequired = new Status(76);\n\n/**\n * when deleting smart contract that has crypto balance you can not use the same contract id as\n * transferContractId as the one being deleted\n */\nStatus.ObtainerSameContractId = new Status(77);\n\n/**\n * transferAccountId or transferContractId specified for contract delete does not exist\n */\nStatus.ObtainerDoesNotExist = new Status(78);\n\n/**\n * attempting to modify (update or delete a immutable smart contract, i.e. one created without a\n * admin key)\n */\nStatus.ModifyingImmutableContract = new Status(79);\n\n/**\n * Unexpected exception thrown by file system functions\n */\nStatus.FileSystemException = new Status(80);\n\n/**\n * the duration is not a subset of [MINIMUM_AUTORENEW_DURATION,MAXIMUM_AUTORENEW_DURATION]\n */\nStatus.AutorenewDurationNotInRange = new Status(81);\n\n/**\n * Decoding the smart contract binary to a byte array failed. Check that the input is a valid hex\n * string.\n */\nStatus.ErrorDecodingBytestring = new Status(82);\n\n/**\n * File to create a smart contract was of length zero\n */\nStatus.ContractFileEmpty = new Status(83);\n\n/**\n * Bytecode for smart contract is of length zero\n */\nStatus.ContractBytecodeEmpty = new Status(84);\n\n/**\n * Attempt to set negative initial balance\n */\nStatus.InvalidInitialBalance = new Status(85);\n\n/**\n * [Deprecated]. attempt to set negative receive record threshold\n */\nStatus.InvalidReceiveRecordThreshold = new Status(86);\n\n/**\n * [Deprecated]. attempt to set negative send record threshold\n */\nStatus.InvalidSendRecordThreshold = new Status(87);\n\n/**\n * Special Account Operations should be performed by only Genesis account, return this code if it\n * is not Genesis Account\n */\nStatus.AccountIsNotGenesisAccount = new Status(88);\n\n/**\n * The fee payer account doesn't have permission to submit such Transaction\n */\nStatus.PayerAccountUnauthorized = new Status(89);\n\n/**\n * FreezeTransactionBody is invalid\n */\nStatus.InvalidFreezeTransactionBody = new Status(90);\n\n/**\n * FreezeTransactionBody does not exist\n */\nStatus.FreezeTransactionBodyNotFound = new Status(91);\n\n/**\n * Exceeded the number of accounts (both from and to) allowed for crypto transfer list\n */\nStatus.TransferListSizeLimitExceeded = new Status(92);\n\n/**\n * Smart contract result size greater than specified maxResultSize\n */\nStatus.ResultSizeLimitExceeded = new Status(93);\n\n/**\n * The payer account is not a special account(account 0.0.55)\n */\nStatus.NotSpecialAccount = new Status(94);\n\n/**\n * Negative gas was offered in smart contract call\n */\nStatus.ContractNegativeGas = new Status(95);\n\n/**\n * Negative value / initial balance was specified in a smart contract call / create\n */\nStatus.ContractNegativeValue = new Status(96);\n\n/**\n * Failed to update fee file\n */\nStatus.InvalidFeeFile = new Status(97);\n\n/**\n * Failed to update exchange rate file\n */\nStatus.InvalidExchangeRateFile = new Status(98);\n\n/**\n * Payment tendered for contract local call cannot cover both the fee and the gas\n */\nStatus.InsufficientLocalCallGas = new Status(99);\n\n/**\n * Entities with Entity ID below 1000 are not allowed to be deleted\n */\nStatus.EntityNotAllowedToDelete = new Status(100);\n\n/**\n * Violating one of these rules: 1) treasury account can update all entities below 0.0.1000, 2)\n * account 0.0.50 can update all entities from 0.0.51 - 0.0.80, 3) Network Function Master Account\n * A/c 0.0.50 - Update all Network Function accounts & perform all the Network Functions listed\n * below, 4) Network Function Accounts: i) A/c 0.0.55 - Update Address Book files (0.0.101/102),\n * ii) A/c 0.0.56 - Update Fee schedule (0.0.111), iii) A/c 0.0.57 - Update Exchange Rate\n * (0.0.112).\n */\nStatus.AuthorizationFailed = new Status(101);\n\n/**\n * Fee Schedule Proto uploaded but not valid (append or update is required)\n */\nStatus.FileUploadedProtoInvalid = new Status(102);\n\n/**\n * Fee Schedule Proto uploaded but not valid (append or update is required)\n */\nStatus.FileUploadedProtoNotSavedToDisk = new Status(103);\n\n/**\n * Fee Schedule Proto File Part uploaded\n */\nStatus.FeeScheduleFilePartUploaded = new Status(104);\n\n/**\n * The change on Exchange Rate exceeds Exchange_Rate_Allowed_Percentage\n */\nStatus.ExchangeRateChangeLimitExceeded = new Status(105);\n\n/**\n * Contract permanent storage exceeded the currently allowable limit\n */\nStatus.MaxContractStorageExceeded = new Status(106);\n\n/**\n * Transfer Account should not be same as Account to be deleted\n */\nStatus.TransferAccountSameAsDeleteAccount = new Status(107);\n\nStatus.TotalLedgerBalanceInvalid = new Status(108);\n/**\n * The expiration date/time on a smart contract may not be reduced\n */\nStatus.ExpirationReductionNotAllowed = new Status(110);\n\n/**\n * Gas exceeded currently allowable gas limit per transaction\n */\nStatus.MaxGasLimitExceeded = new Status(111);\n\n/**\n * File size exceeded the currently allowable limit\n */\nStatus.MaxFileSizeExceeded = new Status(112);\n\n/**\n * When a valid signature is not provided for operations on account with receiverSigRequired=true\n */\nStatus.ReceiverSigRequired = new Status(113);\n\n/**\n * The Topic ID specified is not in the system.\n */\nStatus.InvalidTopicId = new Status(150);\n\n/**\n * A provided admin key was invalid.\n */\nStatus.InvalidAdminKey = new Status(155);\n\n/**\n * A provided submit key was invalid.\n */\nStatus.InvalidSubmitKey = new Status(156);\n\n/**\n * An attempted operation was not authorized (ie - a deleteTopic for a topic with no adminKey).\n */\nStatus.Unauthorized = new Status(157);\n\n/**\n * A ConsensusService message is empty.\n */\nStatus.InvalidTopicMessage = new Status(158);\n\n/**\n * The autoRenewAccount specified is not a valid, active account.\n */\nStatus.InvalidAutorenewAccount = new Status(159);\n\n/**\n * An adminKey was not specified on the topic, so there must not be an autoRenewAccount.\n */\nStatus.AutorenewAccountNotAllowed = new Status(160);\n\n/**\n * The topic has expired, was not automatically renewed, and is in a 7 day grace period before the\n * topic will be deleted unrecoverably. This error response code will not be returned until\n * autoRenew functionality is supported by HAPI.\n */\nStatus.TopicExpired = new Status(162);\n\n/**\n * chunk number must be from 1 to total (chunks) inclusive.\n */\nStatus.InvalidChunkNumber = new Status(163);\n\n/**\n * For every chunk, the payer account that is part of initialTransactionID must match the Payer\n * Account of this transaction. The entire initialTransactionID should match the transactionID of\n * the first chunk, but this is not checked or enforced by Hedera except when the chunk number is 1.\n */\nStatus.InvalidChunkTransactionId = new Status(164);\n\n/**\n * Account is frozen and cannot transact with the token\n */\nStatus.AccountFrozenForToken = new Status(165);\n\n/**\n * An involved account already has more than tokens.maxPerAccount associations with\n * non-deleted tokens.\n */\nStatus.TokensPerAccountLimitExceeded = new Status(166);\n\n/**\n * The token is invalid or does not exist\n */\nStatus.InvalidTokenId = new Status(167);\n\n/**\n * Invalid token decimals\n */\nStatus.InvalidTokenDecimals = new Status(168);\n\n/**\n * Invalid token initial supply\n */\nStatus.InvalidTokenInitialSupply = new Status(169);\n\n/**\n * Treasury Account does not exist or is deleted\n */\nStatus.InvalidTreasuryAccountForToken = new Status(170);\n\n/**\n * Token Symbol is not UTF-8 capitalized alphabetical string\n */\nStatus.InvalidTokenSymbol = new Status(171);\n\n/**\n * Freeze key is not set on token\n */\nStatus.TokenHasNoFreezeKey = new Status(172);\n\n/**\n * Amounts in transfer list are not net zero\n */\nStatus.TransfersNotZeroSumForToken = new Status(173);\n\n/**\n * A token symbol was not provided\n */\nStatus.MissingTokenSymbol = new Status(174);\n\n/**\n * The provided token symbol was too long\n */\nStatus.TokenSymbolTooLong = new Status(175);\n\n/**\n * KYC must be granted and account does not have KYC granted\n */\nStatus.AccountKycNotGrantedForToken = new Status(176);\n\n/**\n * KYC key is not set on token\n */\nStatus.TokenHasNoKycKey = new Status(177);\n\n/**\n * Token balance is not sufficient for the transaction\n */\nStatus.InsufficientTokenBalance = new Status(178);\n\n/**\n * Token transactions cannot be executed on deleted token\n */\nStatus.TokenWasDeleted = new Status(179);\n\n/**\n * Supply key is not set on token\n */\nStatus.TokenHasNoSupplyKey = new Status(180);\n\n/**\n * Wipe key is not set on token\n */\nStatus.TokenHasNoWipeKey = new Status(181);\n\n/**\n * The requested token mint amount would cause an invalid total supply\n */\nStatus.InvalidTokenMintAmount = new Status(182);\n\n/**\n * The requested token burn amount would cause an invalid total supply\n */\nStatus.InvalidTokenBurnAmount = new Status(183);\n\n/**\n * A required token-account relationship is missing\n */\nStatus.TokenNotAssociatedToAccount = new Status(184);\n\n/**\n * The target of a wipe operation was the token treasury account\n */\nStatus.CannotWipeTokenTreasuryAccount = new Status(185);\n\n/**\n * The provided KYC key was invalid.\n */\nStatus.InvalidKycKey = new Status(186);\n\n/**\n * The provided wipe key was invalid.\n */\nStatus.InvalidWipeKey = new Status(187);\n\n/**\n * The provided freeze key was invalid.\n */\nStatus.InvalidFreezeKey = new Status(188);\n\n/**\n * The provided supply key was invalid.\n */\nStatus.InvalidSupplyKey = new Status(189);\n\n/**\n * Token Name is not provided\n */\nStatus.MissingTokenName = new Status(190);\n\n/**\n * Token Name is too long\n */\nStatus.TokenNameTooLong = new Status(191);\n\n/**\n * The provided wipe amount must not be negative, zero or bigger than the token holder balance\n */\nStatus.InvalidWipingAmount = new Status(192);\n\n/**\n * Token does not have Admin key set, thus update/delete transactions cannot be performed\n */\nStatus.TokenIsImmutable = new Status(193);\n\n/**\n * An associateToken operation specified a token already associated to the account\n */\nStatus.TokenAlreadyAssociatedToAccount = new Status(194);\n\n/**\n * An attempted operation is invalid until all token balances for the target account are zero\n */\nStatus.TransactionRequiresZeroTokenBalances = new Status(195);\n\n/**\n * An attempted operation is invalid because the account is a treasury\n */\nStatus.AccountIsTreasury = new Status(196);\n\n/**\n * Same TokenIDs present in the token list\n */\nStatus.TokenIdRepeatedInTokenList = new Status(197);\n\n/**\n * Exceeded the number of token transfers (both from and to) allowed for token transfer list\n */\nStatus.TokenTransferListSizeLimitExceeded = new Status(198);\n\n/**\n * TokenTransfersTransactionBody has no TokenTransferList\n */\nStatus.EmptyTokenTransferBody = new Status(199);\n\n/**\n * TokenTransfersTransactionBody has a TokenTransferList with no AccountAmounts\n */\nStatus.EmptyTokenTransferAccountAmounts = new Status(200);\n\n/**\n * The Scheduled entity does not exist; or has now expired, been deleted, or been executed\n */\nStatus.InvalidScheduleId = new Status(201);\n\n/**\n * The Scheduled entity cannot be modified. Admin key not set\n */\nStatus.ScheduleIsImmutable = new Status(202);\n\n/**\n * The provided Scheduled Payer does not exist\n */\nStatus.InvalidSchedulePayerId = new Status(203);\n\n/**\n * The Schedule Create Transaction TransactionID account does not exist\n */\nStatus.InvalidScheduleAccountId = new Status(204);\n\n/**\n * The provided sig map did not contain any new valid signatures from required signers of the\n * scheduled transaction\n */\nStatus.NoNewValidSignatures = new Status(205);\n\n/**\n * The required signers for a scheduled transaction cannot be resolved, for example because they do\n * not exist or have been deleted\n */\nStatus.UnresolvableRequiredSigners = new Status(206);\n\n/**\n * Only whitelisted transaction types may be scheduled\n */\nStatus.ScheduledTransactionNotInWhitelist = new Status(207);\n\n/**\n * At least one of the signatures in the provided sig map did not represent a valid signature for\n * any required signer\n */\nStatus.SomeSignaturesWereInvalid = new Status(208);\n\n/**\n * The scheduled field in the TransactionID may not be set to true\n */\nStatus.TransactionIdFieldNotAllowed = new Status(209);\n\n/**\n * A schedule already exists with the same identifying fields of an attempted ScheduleCreate (that\n * is, all fields other than scheduledPayerAccountID)\n */\nStatus.IdenticalScheduleAlreadyCreated = new Status(210);\n\n/**\n * A string field in the transaction has a UTF-8 encoding with the prohibited zero byte\n */\nStatus.InvalidZeroByteInString = new Status(211);\n\n/**\n * A schedule being signed or deleted has already been deleted\n */\nStatus.ScheduleAlreadyDeleted = new Status(212);\n\n/**\n * A schedule being signed or deleted has already been executed\n */\nStatus.ScheduleAlreadyExecuted = new Status(213);\n\n/**\n * ConsensusSubmitMessage request's message size is larger than allowed.\n */\nStatus.MessageSizeTooLarge = new Status(214);\n\n/**\n * An operation was assigned to more than one throttle group in a given bucket\n */\nStatus.OperationRepeatedInBucketGroups = new Status(215);\n\n/**\n * The capacity needed to satisfy all opsPerSec groups in a bucket overflowed a signed 8-byte\n * integral type\n */\nStatus.BucketCapacityOverflow = new Status(216);\n\n/**\n * Given the network size in the address book, the node-level capacity for an operation would never\n * be enough to accept a single request; usually means a bucket burstPeriod should be increased\n */\nStatus.NodeCapacityNotSufficientForOperation = new Status(217);\n\n/**\n * A bucket was defined without any throttle groups\n */\nStatus.BucketHasNoThrottleGroups = new Status(218);\n\n/**\n * A throttle group was granted zero opsPerSec\n */\nStatus.ThrottleGroupHasZeroOpsPerSec = new Status(219);\n\n/**\n * The throttle definitions file was updated, but some supported operations were not assigned a\n * bucket\n */\nStatus.SuccessButMissingExpectedOperation = new Status(220);\n\n/**\n * The new contents for the throttle definitions system file were not valid protobuf\n */\nStatus.UnparseableThrottleDefinitions = new Status(221);\n\n/**\n * The new throttle definitions system file were invalid, and no more specific error could be\n * divined\n */\nStatus.InvalidThrottleDefinitions = new Status(222);\n\n/**\n * The transaction references an account which has passed its expiration without renewal funds\n * available, and currently remains in the ledger only because of the grace period given to expired\n * entities\n */\nStatus.AccountExpiredAndPendingRemoval = new Status(223);\n\n/**\n * Invalid token max supply\n */\nStatus.InvalidTokenMaxSupply = new Status(224);\n\n/**\n * Invalid token nft serial number\n */\nStatus.InvalidTokenNftSerialNumber = new Status(225);\n\n/**\n * Invalid nft id\n */\nStatus.InvalidNftId = new Status(226);\n\n/**\n * Nft metadata is too long\n */\nStatus.MetadataTooLong = new Status(227);\n\n/**\n * Repeated operations count exceeds the limit\n */\nStatus.BatchSizeLimitExceeded = new Status(228);\n\n/**\n * The range of data to be gathered is out of the set boundaries\n */\nStatus.InvalidQueryRange = new Status(229);\n\n/**\n * A custom fractional fee set a denominator of zero\n */\nStatus.FractionDividesByZero = new Status(230);\n\n/**\n * The transaction payer could not afford a custom fee\n */\nStatus.InsufficientPayerBalanceForCustomFee = new Status(231);\n\n/**\n * More than 10 custom fees were specified\n */\nStatus.CustomFeesListTooLong = new Status(232);\n\n/**\n * Any of the feeCollector accounts for customFees is invalid\n */\nStatus.InvalidCustomFeeCollector = new Status(233);\n\n/**\n * Any of the token Ids in customFees is invalid\n */\nStatus.InvalidTokenIdInCustomFees = new Status(234);\n\n/**\n * Any of the token Ids in customFees are not associated to feeCollector\n */\nStatus.TokenNotAssociatedToFeeCollector = new Status(235);\n\n/**\n * A token cannot have more units minted due to its configured supply ceiling\n */\nStatus.TokenMaxSupplyReached = new Status(236);\n\n/**\n * The transaction attempted to move an NFT serial number from an account other than its owner\n */\nStatus.SenderDoesNotOwnNftSerialNo = new Status(237);\n\n/**\n * A custom fee schedule entry did not specify either a fixed or fractional fee\n */\nStatus.CustomFeeNotFullySpecified = new Status(238);\n\n/**\n * Only positive fees may be assessed at this time\n */\nStatus.CustomFeeMustBePositive = new Status(239);\n\n/**\n * Fee schedule key is not set on token\n */\nStatus.TokenHasNoFeeScheduleKey = new Status(240);\n\n/**\n * A fractional custom fee exceeded the range of a 64-bit signed integer\n */\nStatus.CustomFeeOutsideNumericRange = new Status(241);\n\n/**\n * A royalty cannot exceed the total fungible value exchanged for an NFT\n */\nStatus.RoyaltyFractionCannotExceedOne = new Status(242);\n\n/**\n * Each fractional custom fee must have its maximum_amount, if specified, at least its\n * minimum_amount\n */\nStatus.FractionalFeeMaxAmountLessThanMinAmount = new Status(243);\n\n/**\n * A fee schedule update tried to clear the custom fees from a token whose fee schedule was already\n * empty\n */\nStatus.CustomScheduleAlreadyHasNoFees = new Status(244);\n\n/**\n * Only tokens of type FUNGIBLE_COMMON can be used to as fee schedule denominations\n */\nStatus.CustomFeeDenominationMustBeFungibleCommon = new Status(245);\n\n/**\n * Only tokens of type FUNGIBLE_COMMON can have fractional fees\n */\nStatus.CustomFractionalFeeOnlyAllowedForFungibleCommon = new Status(246);\n\n/**\n * The provided custom fee schedule key was invalid\n */\nStatus.InvalidCustomFeeScheduleKey = new Status(247);\n\n/**\n * The requested token mint metadata was invalid\n */\nStatus.InvalidTokenMintMetadata = new Status(248);\n\n/**\n * The requested token burn metadata was invalid\n */\nStatus.InvalidTokenBurnMetadata = new Status(249);\n\n/**\n * The treasury for a unique token cannot be changed until it owns no NFTs\n */\nStatus.CurrentTreasuryStillOwnsNfts = new Status(250);\n\n/**\n * An account cannot be dissociated from a unique token if it owns NFTs for the token\n */\nStatus.AccountStillOwnsNfts = new Status(251);\n\n/**\n * A NFT can only be burned when owned by the unique token's treasury\n */\nStatus.TreasuryMustOwnBurnedNft = new Status(252);\n\n/**\n * An account did not own the NFT to be wiped\n */\nStatus.AccountDoesNotOwnWipedNft = new Status(253);\n\n/**\n * An AccountAmount token transfers list referenced a token type other than FUNGIBLE_COMMON\n */\nStatus.AccountAmountTransfersOnlyAllowedForFungibleCommon = new Status(254);\n\n/**\n * All the NFTs allowed in the current price regime have already been minted\n */\nStatus.MaxNftsInPriceRegimeHaveBeenMinted = new Status(255);\n\n/**\n * The payer account has been marked as deleted\n */\nStatus.PayerAccountDeleted = new Status(256);\n\n/**\n * The reference chain of custom fees for a transferred token exceeded the maximum length of 2\n */\nStatus.CustomFeeChargingExceededMaxRecursionDepth = new Status(257);\n\n/**\n * More than 20 balance adjustments were to satisfy a CryptoTransfer and its implied custom fee\n * payments\n */\nStatus.CustomFeeChargingExceededMaxAccountAmounts = new Status(258);\n\n/**\n * The sender account in the token transfer transaction could not afford a custom fee\n */\nStatus.InsufficientSenderAccountBalanceForCustomFee = new Status(259);\n\n/**\n * Currently no more than 4,294,967,295 NFTs may be minted for a given unique token type\n */\nStatus.SerialNumberLimitReached = new Status(260);\n\n/**\n * Only tokens of type NON_FUNGIBLE_UNIQUE can have royalty fees\n */\nStatus.CustomRoyaltyFeeOnlyAllowedForNonFungibleUnique = new Status(261);\n\n/**\n * The account has reached the limit on the automatic associations count.\n */\nStatus.NoRemainingAutomaticAssociations = new Status(262);\n\n/**\n * Already existing automatic associations are more than the new maximum automatic associations.\n */\nStatus.ExistingAutomaticAssociationsExceedGivenLimit = new Status(263);\n\n/**\n * Cannot set the number of automatic associations for an account more than the\n * maximum allowed token associations tokens.maxPerAccount\n */\nStatus.RequestedNumAutomaticAssociationsExceedsAssociationLimit = new Status(\n 264\n);\n\n/**\n * Token is paused. This Token cannot be a part of any kind of Transaction until unpaused.\n */\nStatus.TokenIsPaused = new Status(265);\n\n/**\n * Pause key is not set on token\n */\nStatus.TokenHasNoPauseKey = new Status(266);\n\n/**\n * The provided pause key was invalid\n */\nStatus.InvalidPauseKey = new Status(267);\n\n/**\n * The update file in a freeze transaction body must exist.\n */\nStatus.FreezeUpdateFileDoesNotExist = new Status(268);\n\n/**\n * The hash of the update file in a freeze transaction body must match the in-memory hash.\n */\nStatus.FreezeUpdateFileHashDoesNotMatch = new Status(269);\n\n/**\n * A FREEZE_UPGRADE transaction was handled with no previous update prepared.\n */\nStatus.NoUpgradeHasBeenPrepared = new Status(270);\n\n/**\n * A FREEZE_ABORT transaction was handled with no scheduled freeze.\n */\nStatus.NoFreezeIsScheduled = new Status(271);\n\n/**\n * The update file hash when handling a FREEZE_UPGRADE transaction differs from the file\n * hash at the time of handling the PREPARE_UPGRADE transaction.\n */\nStatus.UpdateFileHashChangedSincePrepareUpgrade = new Status(272);\n\n/**\n * The given freeze start time was in the (consensus) past.\n */\nStatus.FreezeStartTimeMustBeFuture = new Status(273);\n\n/**\n * The prepared update file cannot be updated or appended until either the upgrade has\n * been completed, or a FREEZE_ABORT has been handled.\n */\nStatus.PreparedUpdateFileIsImmutable = new Status(274);\n\n/**\n * Once a freeze is scheduled, it must be aborted before any other type of freeze can\n * can be performed.\n */\nStatus.FreezeAlreadyScheduled = new Status(275);\n\n/**\n * If an NMT upgrade has been prepared, the following operation must be a FREEZE_UPGRADE.\n * (To issue a FREEZE_ONLY, submit a FREEZE_ABORT first.)\n */\nStatus.FreezeUpgradeInProgress = new Status(276);\n\n/**\n * If an NMT upgrade has been prepared, the subsequent FREEZE_UPGRADE transaction must\n * confirm the id of the file to be used in the upgrade.\n */\nStatus.UpdateFileIdDoesNotMatchPrepared = new Status(277);\n\n/**\n * If an NMT upgrade has been prepared, the subsequent FREEZE_UPGRADE transaction must\n * confirm the hash of the file to be used in the upgrade.\n */\nStatus.UpdateFileHashDoesNotMatchPrepared = new Status(278);\n\n/**\n * Consensus throttle did not allow execution of this transaction. System is throttled at\n * consensus level.\n */\nStatus.ConsensusGasExhausted = new Status(279);\n\n/**\n * A precompiled contract succeeded, but was later reverted.\n */\nStatus.RevertedSuccess = new Status(280);\n\n/**\n * All contract storage allocated to the current price regime has been consumed.\n */\nStatus.MaxStorageInPriceRegimeHasBeenUsed = new Status(281);\n\n/**\n * An alias used in a CryptoTransfer transaction is not the serialization of a primitive Key\n * message--that is, a Key with a single Ed25519 or ECDSA(secp256k1) public key and no\n * unknown protobuf fields.\n */\nStatus.InvalidAliasKey = new Status(282);\n\n/**\n * A fungible token transfer expected a different number of decimals than the involved\n * type actually has.\n */\nStatus.UnexpectedTokenDecimals = new Status(283);\n\n/**\n * The proxy account id is invalid or does not exist.\n */\nStatus.InvalidProxyAccountId = new Status(284);\n\n/**\n * The transfer account id in CryptoDelete transaction is invalid or does not exist.\n */\nStatus.InvalidTransferAccountId = new Status(285);\n\n/**\n * The fee collector account id in TokenFeeScheduleUpdate is invalid or does not exist.\n */\nStatus.InvalidFeeCollectorAccountId = new Status(286);\n\n/**\n * The alias already set on an account cannot be updated using CryptoUpdate transaction.\n */\nStatus.AliasIsImmutable = new Status(287);\n\n/**\n * An approved allowance specifies a spender account that is the same as the hbar/token\n * owner account.\n */\nStatus.SpenderAccountSameAsOwner = new Status(288);\n\n/**\n * The establishment or adjustment of an approved allowance cause the token allowance\n * to exceed the token maximum supply.\n */\nStatus.AmountExceedsTokenMaxSupply = new Status(289);\n\n/**\n * The specified amount for an approved allowance cannot be negative.\n */\nStatus.NegativeAllowanceAmount = new Status(290);\n\n/**\n * The approveForAll flag cannot be set for a fungible token.\n */\nStatus.CannotApproveForAllFungibleCommon = new Status(291);\n\n/**\n * The spender does not have an existing approved allowance with the hbar/token owner.\n */\nStatus.SpenderDoesNotHaveAllowance = new Status(292);\n\n/**\n * The transfer amount exceeds the current approved allowance for the spender account.\n */\nStatus.AmountExceedsAllowance = new Status(293);\n\n/**\n * The payer account of an approveAllowances or adjustAllowance transaction is attempting\n * to go beyond the maximum allowed number of allowances.\n */\nStatus.MaxAllowancesExceeded = new Status(294);\n\n/**\n * No allowances have been specified in the approval/adjust transaction.\n */\nStatus.EmptyAllowances = new Status(295);\n\n/**\n * Spender is repeated more than once in Crypto or Token or NFT allowance lists in a single\n * CryptoApproveAllowance or CryptoAdjustAllowance transaction.\n */\nStatus.SpenderAccountRepeatedInAllowances = new Status(296);\n\n/**\n * Serial numbers are repeated in nft allowance for a single spender account\n */\nStatus.RepeatedSerialNumsInNFTAllowances = new Status(297);\n\n/**\n * Fungible common token used in NFT allowances\n */\nStatus.FungibleTokenInNFTAllowances = new Status(298);\n\n/**\n * Non fungible token used in fungible token allowances\n */\nStatus.NFTInFungibleTokenAllowances = new Status(299);\n\n/**\n * An approval/adjustment transaction was submitted where the payer and owner account are\n * not the same. Currently only the owner is permitted to perform these operations.\n */\nStatus.PayerAndOwnerNotEqual = new Status(300);\n","\"use strict\";\nvar util = exports;\n\n// used to return a Promise where callback is omitted\nutil.asPromise = require(\"@protobufjs/aspromise\");\n\n// converts to / from base64 encoded strings\nutil.base64 = require(\"@protobufjs/base64\");\n\n// base class of rpc.Service\nutil.EventEmitter = require(\"@protobufjs/eventemitter\");\n\n// float handling accross browsers\nutil.float = require(\"@protobufjs/float\");\n\n// requires modules optionally and hides the call from bundlers\nutil.inquire = require(\"@protobufjs/inquire\");\n\n// converts to / from utf8 encoded strings\nutil.utf8 = require(\"@protobufjs/utf8\");\n\n// provides a node-like buffer pool in the browser\nutil.pool = require(\"@protobufjs/pool\");\n\n// utility to work with the low and high bits of a 64 bit value\nutil.LongBits = require(\"./longbits\");\n\n/**\n * Whether running within node or not.\n * @memberof util\n * @type {boolean}\n */\nutil.isNode = Boolean(typeof global !== \"undefined\"\n && global\n && global.process\n && global.process.versions\n && global.process.versions.node);\n\n/**\n * Global object reference.\n * @memberof util\n * @type {Object}\n */\nutil.global = util.isNode && global\n || typeof window !== \"undefined\" && window\n || typeof self !== \"undefined\" && self\n || this; // eslint-disable-line no-invalid-this\n\n/**\n * An immuable empty array.\n * @memberof util\n * @type {Array.<*>}\n * @const\n */\nutil.emptyArray = Object.freeze ? Object.freeze([]) : /* istanbul ignore next */ []; // used on prototypes\n\n/**\n * An immutable empty object.\n * @type {Object}\n * @const\n */\nutil.emptyObject = Object.freeze ? Object.freeze({}) : /* istanbul ignore next */ {}; // used on prototypes\n\n/**\n * Tests if the specified value is an integer.\n * @function\n * @param {*} value Value to test\n * @returns {boolean} `true` if the value is an integer\n */\nutil.isInteger = Number.isInteger || /* istanbul ignore next */ function isInteger(value) {\n return typeof value === \"number\" && isFinite(value) && Math.floor(value) === value;\n};\n\n/**\n * Tests if the specified value is a string.\n * @param {*} value Value to test\n * @returns {boolean} `true` if the value is a string\n */\nutil.isString = function isString(value) {\n return typeof value === \"string\" || value instanceof String;\n};\n\n/**\n * Tests if the specified value is a non-null object.\n * @param {*} value Value to test\n * @returns {boolean} `true` if the value is a non-null object\n */\nutil.isObject = function isObject(value) {\n return value && typeof value === \"object\";\n};\n\n/**\n * Checks if a property on a message is considered to be present.\n * This is an alias of {@link util.isSet}.\n * @function\n * @param {Object} obj Plain object or message instance\n * @param {string} prop Property name\n * @returns {boolean} `true` if considered to be present, otherwise `false`\n */\nutil.isset =\n\n/**\n * Checks if a property on a message is considered to be present.\n * @param {Object} obj Plain object or message instance\n * @param {string} prop Property name\n * @returns {boolean} `true` if considered to be present, otherwise `false`\n */\nutil.isSet = function isSet(obj, prop) {\n var value = obj[prop];\n if (value != null && obj.hasOwnProperty(prop)) // eslint-disable-line eqeqeq, no-prototype-builtins\n return typeof value !== \"object\" || (Array.isArray(value) ? value.length : Object.keys(value).length) > 0;\n return false;\n};\n\n/**\n * Any compatible Buffer instance.\n * This is a minimal stand-alone definition of a Buffer instance. The actual type is that exported by node's typings.\n * @interface Buffer\n * @extends Uint8Array\n */\n\n/**\n * Node's Buffer class if available.\n * @type {Constructor}\n */\nutil.Buffer = (function() {\n try {\n var Buffer = util.inquire(\"buffer\").Buffer;\n // refuse to use non-node buffers if not explicitly assigned (perf reasons):\n return Buffer.prototype.utf8Write ? Buffer : /* istanbul ignore next */ null;\n } catch (e) {\n /* istanbul ignore next */\n return null;\n }\n})();\n\n// Internal alias of or polyfull for Buffer.from.\nutil._Buffer_from = null;\n\n// Internal alias of or polyfill for Buffer.allocUnsafe.\nutil._Buffer_allocUnsafe = null;\n\n/**\n * Creates a new buffer of whatever type supported by the environment.\n * @param {number|number[]} [sizeOrArray=0] Buffer size or number array\n * @returns {Uint8Array|Buffer} Buffer\n */\nutil.newBuffer = function newBuffer(sizeOrArray) {\n /* istanbul ignore next */\n return typeof sizeOrArray === \"number\"\n ? util.Buffer\n ? util._Buffer_allocUnsafe(sizeOrArray)\n : new util.Array(sizeOrArray)\n : util.Buffer\n ? util._Buffer_from(sizeOrArray)\n : typeof Uint8Array === \"undefined\"\n ? sizeOrArray\n : new Uint8Array(sizeOrArray);\n};\n\n/**\n * Array implementation used in the browser. `Uint8Array` if supported, otherwise `Array`.\n * @type {Constructor}\n */\nutil.Array = typeof Uint8Array !== \"undefined\" ? Uint8Array /* istanbul ignore next */ : Array;\n\n/**\n * Any compatible Long instance.\n * This is a minimal stand-alone definition of a Long instance. The actual type is that exported by long.js.\n * @interface Long\n * @property {number} low Low bits\n * @property {number} high High bits\n * @property {boolean} unsigned Whether unsigned or not\n */\n\n/**\n * Long.js's Long class if available.\n * @type {Constructor}\n */\nutil.Long = /* istanbul ignore next */ util.global.dcodeIO && /* istanbul ignore next */ util.global.dcodeIO.Long\n || /* istanbul ignore next */ util.global.Long\n || util.inquire(\"long\");\n\n/**\n * Regular expression used to verify 2 bit (`bool`) map keys.\n * @type {RegExp}\n * @const\n */\nutil.key2Re = /^true|false|0|1$/;\n\n/**\n * Regular expression used to verify 32 bit (`int32` etc.) map keys.\n * @type {RegExp}\n * @const\n */\nutil.key32Re = /^-?(?:0|[1-9][0-9]*)$/;\n\n/**\n * Regular expression used to verify 64 bit (`int64` etc.) map keys.\n * @type {RegExp}\n * @const\n */\nutil.key64Re = /^(?:[\\\\x00-\\\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;\n\n/**\n * Converts a number or long to an 8 characters long hash string.\n * @param {Long|number} value Value to convert\n * @returns {string} Hash\n */\nutil.longToHash = function longToHash(value) {\n return value\n ? util.LongBits.from(value).toHash()\n : util.LongBits.zeroHash;\n};\n\n/**\n * Converts an 8 characters long hash string to a long or number.\n * @param {string} hash Hash\n * @param {boolean} [unsigned=false] Whether unsigned or not\n * @returns {Long|number} Original value\n */\nutil.longFromHash = function longFromHash(hash, unsigned) {\n var bits = util.LongBits.fromHash(hash);\n if (util.Long)\n return util.Long.fromBits(bits.lo, bits.hi, unsigned);\n return bits.toNumber(Boolean(unsigned));\n};\n\n/**\n * Merges the properties of the source object into the destination object.\n * @memberof util\n * @param {Object.} dst Destination object\n * @param {Object.} src Source object\n * @param {boolean} [ifNotSet=false] Merges only if the key is not already set\n * @returns {Object.} Destination object\n */\nfunction merge(dst, src, ifNotSet) { // used by converters\n for (var keys = Object.keys(src), i = 0; i < keys.length; ++i)\n if (dst[keys[i]] === undefined || !ifNotSet)\n dst[keys[i]] = src[keys[i]];\n return dst;\n}\n\nutil.merge = merge;\n\n/**\n * Converts the first character of a string to lower case.\n * @param {string} str String to convert\n * @returns {string} Converted string\n */\nutil.lcFirst = function lcFirst(str) {\n return str.charAt(0).toLowerCase() + str.substring(1);\n};\n\n/**\n * Creates a custom error constructor.\n * @memberof util\n * @param {string} name Error name\n * @returns {Constructor} Custom error constructor\n */\nfunction newError(name) {\n\n function CustomError(message, properties) {\n\n if (!(this instanceof CustomError))\n return new CustomError(message, properties);\n\n // Error.call(this, message);\n // ^ just returns a new error instance because the ctor can be called as a function\n\n Object.defineProperty(this, \"message\", { get: function() { return message; } });\n\n /* istanbul ignore next */\n if (Error.captureStackTrace) // node\n Error.captureStackTrace(this, CustomError);\n else\n Object.defineProperty(this, \"stack\", { value: new Error().stack || \"\" });\n\n if (properties)\n merge(this, properties);\n }\n\n (CustomError.prototype = Object.create(Error.prototype)).constructor = CustomError;\n\n Object.defineProperty(CustomError.prototype, \"name\", { get: function() { return name; } });\n\n CustomError.prototype.toString = function toString() {\n return this.name + \": \" + this.message;\n };\n\n return CustomError;\n}\n\nutil.newError = newError;\n\n/**\n * Constructs a new protocol error.\n * @classdesc Error subclass indicating a protocol specifc error.\n * @memberof util\n * @extends Error\n * @template T extends Message\n * @constructor\n * @param {string} message Error message\n * @param {Object.} [properties] Additional properties\n * @example\n * try {\n * MyMessage.decode(someBuffer); // throws if required fields are missing\n * } catch (e) {\n * if (e instanceof ProtocolError && e.instance)\n * console.log(\"decoded so far: \" + JSON.stringify(e.instance));\n * }\n */\nutil.ProtocolError = newError(\"ProtocolError\");\n\n/**\n * So far decoded message instance.\n * @name util.ProtocolError#instance\n * @type {Message}\n */\n\n/**\n * A OneOf getter as returned by {@link util.oneOfGetter}.\n * @typedef OneOfGetter\n * @type {function}\n * @returns {string|undefined} Set field name, if any\n */\n\n/**\n * Builds a getter for a oneof's present field name.\n * @param {string[]} fieldNames Field names\n * @returns {OneOfGetter} Unbound getter\n */\nutil.oneOfGetter = function getOneOf(fieldNames) {\n var fieldMap = {};\n for (var i = 0; i < fieldNames.length; ++i)\n fieldMap[fieldNames[i]] = 1;\n\n /**\n * @returns {string|undefined} Set field name, if any\n * @this Object\n * @ignore\n */\n return function() { // eslint-disable-line consistent-return\n for (var keys = Object.keys(this), i = keys.length - 1; i > -1; --i)\n if (fieldMap[keys[i]] === 1 && this[keys[i]] !== undefined && this[keys[i]] !== null)\n return keys[i];\n };\n};\n\n/**\n * A OneOf setter as returned by {@link util.oneOfSetter}.\n * @typedef OneOfSetter\n * @type {function}\n * @param {string|undefined} value Field name\n * @returns {undefined}\n */\n\n/**\n * Builds a setter for a oneof's present field name.\n * @param {string[]} fieldNames Field names\n * @returns {OneOfSetter} Unbound setter\n */\nutil.oneOfSetter = function setOneOf(fieldNames) {\n\n /**\n * @param {string} name Field name\n * @returns {undefined}\n * @this Object\n * @ignore\n */\n return function(name) {\n for (var i = 0; i < fieldNames.length; ++i)\n if (fieldNames[i] !== name)\n delete this[fieldNames[i]];\n };\n};\n\n/**\n * Default conversion options used for {@link Message#toJSON} implementations.\n *\n * These options are close to proto3's JSON mapping with the exception that internal types like Any are handled just like messages. More precisely:\n *\n * - Longs become strings\n * - Enums become string keys\n * - Bytes become base64 encoded strings\n * - (Sub-)Messages become plain objects\n * - Maps become plain objects with all string keys\n * - Repeated fields become arrays\n * - NaN and Infinity for float and double fields become strings\n *\n * @type {IConversionOptions}\n * @see https://developers.google.com/protocol-buffers/docs/proto3?hl=en#json\n */\nutil.toJSONOptions = {\n longs: String,\n enums: String,\n bytes: String,\n json: true\n};\n\n// Sets up buffer utility according to the environment (called in index-minimal)\nutil._configure = function() {\n var Buffer = util.Buffer;\n /* istanbul ignore if */\n if (!Buffer) {\n util._Buffer_from = util._Buffer_allocUnsafe = null;\n return;\n }\n // because node 4.x buffers are incompatible & immutable\n // see: https://github.com/dcodeIO/protobuf.js/pull/665\n util._Buffer_from = Buffer.from !== Uint8Array.from && Buffer.from ||\n /* istanbul ignore next */\n function Buffer_from(value, encoding) {\n return new Buffer(value, encoding);\n };\n util._Buffer_allocUnsafe = Buffer.allocUnsafe ||\n /* istanbul ignore next */\n function Buffer_allocUnsafe(size) {\n return new Buffer(size);\n };\n};\n","import GrpcServiceError from \"./grpc/GrpcServiceError.js\";\nimport GrpcStatus from \"./grpc/GrpcStatus.js\";\nimport List from \"./transaction/List.js\";\n\n/**\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n * @typedef {import(\"./channel/Channel.js\").default} Channel\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"./client/Client.js\").ClientOperator} ClientOperator\n */\n\n/**\n * @enum {string}\n */\nexport const ExecutionState = {\n Finished: \"Finished\",\n Retry: \"Retry\",\n Error: \"Error\",\n};\n\nexport const RST_STREAM = /\\brst[^0-9a-zA-Z]stream\\b/i;\n\n/**\n * @abstract\n * @internal\n * @template RequestT\n * @template ResponseT\n * @template OutputT\n */\nexport default class Executable {\n constructor() {\n /**\n * The number of times we can retry the grpc call\n *\n * @private\n * @type {number}\n */\n this._maxAttempts = 10;\n\n /**\n * The index of the next transaction to be executed.\n *\n * @protected\n * @type {number}\n */\n this._nextNodeAccountIdIndex = 0;\n\n /**\n * List of node account IDs for each transaction that has been\n * built.\n *\n * @internal\n * @type {List}\n */\n this._nodeAccountIds = new List();\n\n this._signOnDemand = false;\n\n /** @type {number | null} */\n this._minBackoff = null;\n\n /** @type {number | null} */\n this._maxBackoff = null;\n\n /**\n * @type {ClientOperator | null}\n */\n this._operator = null;\n\n /** @type {number | null} */\n this._requestTimeout = null;\n\n this._grpcDeadline = null;\n }\n\n /**\n * @returns {?AccountId[]}\n */\n get nodeAccountIds() {\n return this._nodeAccountIds.isEmpty ? null : this._nodeAccountIds.list;\n }\n\n /**\n * @param {AccountId[]} nodeIds\n * @returns {this}\n */\n setNodeAccountIds(nodeIds) {\n this._nodeAccountIds.setList(nodeIds).setLocked();\n return this;\n }\n\n /**\n * @deprecated\n * @returns {number}\n */\n get maxRetries() {\n console.warn(\"Deprecated: use maxAttempts instead\");\n return this.maxAttempts;\n }\n\n /**\n * @param {number} maxRetries\n * @returns {this}\n */\n setMaxRetries(maxRetries) {\n console.warn(\"Deprecated: use setMaxAttempts() instead\");\n return this.setMaxAttempts(maxRetries);\n }\n\n /**\n * @returns {number}\n */\n get maxAttempts() {\n return this._maxAttempts;\n }\n\n /**\n * @param {number} maxAttempts\n * @returns {this}\n */\n setMaxAttempts(maxAttempts) {\n this._maxAttempts = maxAttempts;\n\n return this;\n }\n\n /**\n * @returns {?number}\n */\n get grpcDeadline() {\n return this._grpcDeadline;\n }\n\n /**\n * @param {number} grpcDeadline\n * @returns {this}\n */\n setGrpcDeadline(grpcDeadline) {\n this._grpcDeadline = grpcDeadline;\n\n return this;\n }\n\n /**\n * @param {number} minBackoff\n * @returns {this}\n */\n setMinBackoff(minBackoff) {\n if (minBackoff == null) {\n throw new Error(\"minBackoff cannot be null.\");\n } else if (this._maxBackoff != null && minBackoff > this._maxBackoff) {\n throw new Error(\"minBackoff cannot be larger than maxBackoff.\");\n }\n this._minBackoff = minBackoff;\n return this;\n }\n\n /**\n * @returns {number | null}\n */\n get minBackoff() {\n return this._minBackoff;\n }\n\n /**\n * @param {?number} maxBackoff\n * @returns {this}\n */\n setMaxBackoff(maxBackoff) {\n if (maxBackoff == null) {\n throw new Error(\"maxBackoff cannot be null.\");\n } else if (this._minBackoff != null && maxBackoff < this._minBackoff) {\n throw new Error(\"maxBackoff cannot be smaller than minBackoff.\");\n }\n this._maxBackoff = maxBackoff;\n return this;\n }\n\n /**\n * @returns {number | null}\n */\n get maxBackoff() {\n return this._maxBackoff;\n }\n\n /**\n * @abstract\n * @protected\n * @param {import(\"./client/Client.js\").default} client\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _beforeExecute(client) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @returns {Promise}\n */\n _makeRequestAsync() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @internal\n * @param {RequestT} request\n * @param {ResponseT} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @param {ResponseT} response\n * @param {AccountId} nodeAccountId\n * @param {RequestT} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @internal\n * @param {Channel} channel\n * @param {RequestT} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _execute(channel, request) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @returns {AccountId}\n */\n _getNodeAccountId() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @returns {TransactionId}\n */\n _getTransactionId() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @returns {void}\n */\n _advanceRequest() {\n // each time we move our cursor to the next transaction\n // wrapping around to ensure we are cycling\n this._nextNodeAccountIdIndex =\n (this._nextNodeAccountIdIndex + 1) % this._nodeAccountIds.length;\n }\n\n /**\n * @abstract\n * @protected\n * @param {RequestT} request\n * @param {ResponseT} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @param {GrpcServiceError} error\n * @returns {boolean}\n */\n _shouldRetryExceptionally(error) {\n return (\n error.status._code === GrpcStatus.Unavailable._code ||\n error.status._code === GrpcStatus.ResourceExhausted._code ||\n (error.status._code === GrpcStatus.Internal._code &&\n RST_STREAM.test(error.message))\n );\n }\n\n /**\n * @template {Channel} ChannelT\n * @template MirrorChannelT\n * @param {import(\"./client/Client.js\").default} client\n * @param {number=} requestTimeout\n * @returns {Promise}\n */\n async execute(client, requestTimeout) {\n if (this._requestTimeout == null) {\n this._requestTimeout =\n requestTimeout != null ? requestTimeout : client.requestTimeout;\n }\n\n await this._beforeExecute(client);\n\n if (this._maxBackoff == null) {\n this._maxBackoff = client.maxBackoff;\n }\n\n if (this._minBackoff == null) {\n this._minBackoff = client.minBackoff;\n }\n\n const maxAttempts =\n client._maxAttempts != null\n ? client._maxAttempts\n : this._maxAttempts;\n\n const startTime = Date.now();\n\n for (let attempt = 1 /* loop forever */; ; attempt += 1) {\n if (\n this._requestTimeout != null &&\n startTime + this._requestTimeout > Date.now()\n ) {\n throw new Error(\"timeout exceeded\");\n }\n\n const nodeAccountId = this._getNodeAccountId();\n const node = client._network.getNode(nodeAccountId);\n\n if (node == null) {\n throw new Error(\n `NodeAccountId not recognized: ${nodeAccountId.toString()}`\n );\n }\n\n const channel = node.getChannel();\n const request = await this._makeRequestAsync();\n\n // advance the internal index\n // non-free queries and transactions map to more than 1 actual transaction and this will cause\n // the next invocation of makeRequest to return the _next_ transaction\n this._advanceRequest();\n\n let response;\n\n if (!node.isHealthy()) {\n await node.wait();\n }\n\n try {\n const promises = [];\n if (this._grpcDeadline != null) {\n promises.push(\n // eslint-disable-next-line ie11/no-loop-func\n new Promise((_, reject) =>\n setTimeout(\n // eslint-disable-next-line ie11/no-loop-func\n () =>\n reject(new Error(\"grpc deadline exceeded\")),\n /** @type {number=} */ (this._grpcDeadline)\n )\n )\n );\n }\n promises.push(this._execute(channel, request));\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n response = /** @type {ResponseT} */ (\n await Promise.race(promises)\n );\n } catch (err) {\n const error = GrpcServiceError._fromResponse(\n /** @type {Error} */ (err)\n );\n\n if (\n error instanceof GrpcServiceError &&\n this._shouldRetryExceptionally(error) &&\n attempt <= maxAttempts\n ) {\n node.increaseDelay();\n continue;\n }\n\n throw err;\n }\n\n node.decreaseDelay();\n\n switch (this._shouldRetry(request, response)) {\n case ExecutionState.Retry:\n await delayForAttempt(\n attempt,\n this._minBackoff,\n this._maxBackoff\n );\n continue;\n case ExecutionState.Finished:\n return this._mapResponse(response, nodeAccountId, request);\n case ExecutionState.Error:\n throw this._mapStatusError(request, response);\n default:\n throw new Error(\n \"(BUG) non-exhuastive switch statement for `ExecutionState`\"\n );\n }\n }\n }\n}\n\n/**\n * @param {number} attempt\n * @param {number} minBackoff\n * @param {number} maxBackoff\n * @returns {Promise}\n */\nfunction delayForAttempt(attempt, minBackoff, maxBackoff) {\n // 0.1s, 0.2s, 0.4s, 0.8s, ...\n const ms = Math.min(\n Math.floor(minBackoff * Math.pow(2, attempt)),\n maxBackoff\n );\n return new Promise((resolve) => setTimeout(resolve, ms));\n}\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n *\n * @augments {EntityId}\n */\n\nexport default class ScheduleId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {ScheduleId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new ScheduleId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.IScheduleID} id\n * @returns {ScheduleId}\n */\n static _fromProtobuf(id) {\n const scheduleId = new ScheduleId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.scheduleNum != null ? id.scheduleNum : 0\n );\n\n return scheduleId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {ScheduleId}\n */\n static fromBytes(bytes) {\n return ScheduleId._fromProtobuf(proto.ScheduleID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {ScheduleId}\n */\n static fromSolidityAddress(address) {\n return new ScheduleId(...entity_id.fromSolidityAddress(address));\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.ScheduleID}\n */\n _toProtobuf() {\n return {\n scheduleNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ScheduleID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {ScheduleId}\n */\n clone() {\n const id = new ScheduleId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {ScheduleId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n",";(function (globalObject) {\r\n 'use strict';\r\n\r\n/*\r\n * bignumber.js v9.0.2\r\n * A JavaScript library for arbitrary-precision arithmetic.\r\n * https://github.com/MikeMcl/bignumber.js\r\n * Copyright (c) 2021 Michael Mclaughlin \r\n * MIT Licensed.\r\n *\r\n * BigNumber.prototype methods | BigNumber methods\r\n * |\r\n * absoluteValue abs | clone\r\n * comparedTo | config set\r\n * decimalPlaces dp | DECIMAL_PLACES\r\n * dividedBy div | ROUNDING_MODE\r\n * dividedToIntegerBy idiv | EXPONENTIAL_AT\r\n * exponentiatedBy pow | RANGE\r\n * integerValue | CRYPTO\r\n * isEqualTo eq | MODULO_MODE\r\n * isFinite | POW_PRECISION\r\n * isGreaterThan gt | FORMAT\r\n * isGreaterThanOrEqualTo gte | ALPHABET\r\n * isInteger | isBigNumber\r\n * isLessThan lt | maximum max\r\n * isLessThanOrEqualTo lte | minimum min\r\n * isNaN | random\r\n * isNegative | sum\r\n * isPositive |\r\n * isZero |\r\n * minus |\r\n * modulo mod |\r\n * multipliedBy times |\r\n * negated |\r\n * plus |\r\n * precision sd |\r\n * shiftedBy |\r\n * squareRoot sqrt |\r\n * toExponential |\r\n * toFixed |\r\n * toFormat |\r\n * toFraction |\r\n * toJSON |\r\n * toNumber |\r\n * toPrecision |\r\n * toString |\r\n * valueOf |\r\n *\r\n */\r\n\r\n\r\n var BigNumber,\r\n isNumeric = /^-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:e[+-]?\\d+)?$/i,\r\n mathceil = Math.ceil,\r\n mathfloor = Math.floor,\r\n\r\n bignumberError = '[BigNumber Error] ',\r\n tooManyDigits = bignumberError + 'Number primitive has more than 15 significant digits: ',\r\n\r\n BASE = 1e14,\r\n LOG_BASE = 14,\r\n MAX_SAFE_INTEGER = 0x1fffffffffffff, // 2^53 - 1\r\n // MAX_INT32 = 0x7fffffff, // 2^31 - 1\r\n POWS_TEN = [1, 10, 100, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9, 1e10, 1e11, 1e12, 1e13],\r\n SQRT_BASE = 1e7,\r\n\r\n // EDITABLE\r\n // The limit on the value of DECIMAL_PLACES, TO_EXP_NEG, TO_EXP_POS, MIN_EXP, MAX_EXP, and\r\n // the arguments to toExponential, toFixed, toFormat, and toPrecision.\r\n MAX = 1E9; // 0 to MAX_INT32\r\n\r\n\r\n /*\r\n * Create and return a BigNumber constructor.\r\n */\r\n function clone(configObject) {\r\n var div, convertBase, parseNumeric,\r\n P = BigNumber.prototype = { constructor: BigNumber, toString: null, valueOf: null },\r\n ONE = new BigNumber(1),\r\n\r\n\r\n //----------------------------- EDITABLE CONFIG DEFAULTS -------------------------------\r\n\r\n\r\n // The default values below must be integers within the inclusive ranges stated.\r\n // The values can also be changed at run-time using BigNumber.set.\r\n\r\n // The maximum number of decimal places for operations involving division.\r\n DECIMAL_PLACES = 20, // 0 to MAX\r\n\r\n // The rounding mode used when rounding to the above decimal places, and when using\r\n // toExponential, toFixed, toFormat and toPrecision, and round (default value).\r\n // UP 0 Away from zero.\r\n // DOWN 1 Towards zero.\r\n // CEIL 2 Towards +Infinity.\r\n // FLOOR 3 Towards -Infinity.\r\n // HALF_UP 4 Towards nearest neighbour. If equidistant, up.\r\n // HALF_DOWN 5 Towards nearest neighbour. If equidistant, down.\r\n // HALF_EVEN 6 Towards nearest neighbour. If equidistant, towards even neighbour.\r\n // HALF_CEIL 7 Towards nearest neighbour. If equidistant, towards +Infinity.\r\n // HALF_FLOOR 8 Towards nearest neighbour. If equidistant, towards -Infinity.\r\n ROUNDING_MODE = 4, // 0 to 8\r\n\r\n // EXPONENTIAL_AT : [TO_EXP_NEG , TO_EXP_POS]\r\n\r\n // The exponent value at and beneath which toString returns exponential notation.\r\n // Number type: -7\r\n TO_EXP_NEG = -7, // 0 to -MAX\r\n\r\n // The exponent value at and above which toString returns exponential notation.\r\n // Number type: 21\r\n TO_EXP_POS = 21, // 0 to MAX\r\n\r\n // RANGE : [MIN_EXP, MAX_EXP]\r\n\r\n // The minimum exponent value, beneath which underflow to zero occurs.\r\n // Number type: -324 (5e-324)\r\n MIN_EXP = -1e7, // -1 to -MAX\r\n\r\n // The maximum exponent value, above which overflow to Infinity occurs.\r\n // Number type: 308 (1.7976931348623157e+308)\r\n // For MAX_EXP > 1e7, e.g. new BigNumber('1e100000000').plus(1) may be slow.\r\n MAX_EXP = 1e7, // 1 to MAX\r\n\r\n // Whether to use cryptographically-secure random number generation, if available.\r\n CRYPTO = false, // true or false\r\n\r\n // The modulo mode used when calculating the modulus: a mod n.\r\n // The quotient (q = a / n) is calculated according to the corresponding rounding mode.\r\n // The remainder (r) is calculated as: r = a - n * q.\r\n //\r\n // UP 0 The remainder is positive if the dividend is negative, else is negative.\r\n // DOWN 1 The remainder has the same sign as the dividend.\r\n // This modulo mode is commonly known as 'truncated division' and is\r\n // equivalent to (a % n) in JavaScript.\r\n // FLOOR 3 The remainder has the same sign as the divisor (Python %).\r\n // HALF_EVEN 6 This modulo mode implements the IEEE 754 remainder function.\r\n // EUCLID 9 Euclidian division. q = sign(n) * floor(a / abs(n)).\r\n // The remainder is always positive.\r\n //\r\n // The truncated division, floored division, Euclidian division and IEEE 754 remainder\r\n // modes are commonly used for the modulus operation.\r\n // Although the other rounding modes can also be used, they may not give useful results.\r\n MODULO_MODE = 1, // 0 to 9\r\n\r\n // The maximum number of significant digits of the result of the exponentiatedBy operation.\r\n // If POW_PRECISION is 0, there will be unlimited significant digits.\r\n POW_PRECISION = 0, // 0 to MAX\r\n\r\n // The format specification used by the BigNumber.prototype.toFormat method.\r\n FORMAT = {\r\n prefix: '',\r\n groupSize: 3,\r\n secondaryGroupSize: 0,\r\n groupSeparator: ',',\r\n decimalSeparator: '.',\r\n fractionGroupSize: 0,\r\n fractionGroupSeparator: '\\xA0', // non-breaking space\r\n suffix: ''\r\n },\r\n\r\n // The alphabet used for base conversion. It must be at least 2 characters long, with no '+',\r\n // '-', '.', whitespace, or repeated character.\r\n // '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$_'\r\n ALPHABET = '0123456789abcdefghijklmnopqrstuvwxyz',\r\n alphabetHasNormalDecimalDigits = true;\r\n\r\n\r\n //------------------------------------------------------------------------------------------\r\n\r\n\r\n // CONSTRUCTOR\r\n\r\n\r\n /*\r\n * The BigNumber constructor and exported function.\r\n * Create and return a new instance of a BigNumber object.\r\n *\r\n * v {number|string|BigNumber} A numeric value.\r\n * [b] {number} The base of v. Integer, 2 to ALPHABET.length inclusive.\r\n */\r\n function BigNumber(v, b) {\r\n var alphabet, c, caseChanged, e, i, isNum, len, str,\r\n x = this;\r\n\r\n // Enable constructor call without `new`.\r\n if (!(x instanceof BigNumber)) return new BigNumber(v, b);\r\n\r\n if (b == null) {\r\n\r\n if (v && v._isBigNumber === true) {\r\n x.s = v.s;\r\n\r\n if (!v.c || v.e > MAX_EXP) {\r\n x.c = x.e = null;\r\n } else if (v.e < MIN_EXP) {\r\n x.c = [x.e = 0];\r\n } else {\r\n x.e = v.e;\r\n x.c = v.c.slice();\r\n }\r\n\r\n return;\r\n }\r\n\r\n if ((isNum = typeof v == 'number') && v * 0 == 0) {\r\n\r\n // Use `1 / n` to handle minus zero also.\r\n x.s = 1 / v < 0 ? (v = -v, -1) : 1;\r\n\r\n // Fast path for integers, where n < 2147483648 (2**31).\r\n if (v === ~~v) {\r\n for (e = 0, i = v; i >= 10; i /= 10, e++);\r\n\r\n if (e > MAX_EXP) {\r\n x.c = x.e = null;\r\n } else {\r\n x.e = e;\r\n x.c = [v];\r\n }\r\n\r\n return;\r\n }\r\n\r\n str = String(v);\r\n } else {\r\n\r\n if (!isNumeric.test(str = String(v))) return parseNumeric(x, str, isNum);\r\n\r\n x.s = str.charCodeAt(0) == 45 ? (str = str.slice(1), -1) : 1;\r\n }\r\n\r\n // Decimal point?\r\n if ((e = str.indexOf('.')) > -1) str = str.replace('.', '');\r\n\r\n // Exponential form?\r\n if ((i = str.search(/e/i)) > 0) {\r\n\r\n // Determine exponent.\r\n if (e < 0) e = i;\r\n e += +str.slice(i + 1);\r\n str = str.substring(0, i);\r\n } else if (e < 0) {\r\n\r\n // Integer.\r\n e = str.length;\r\n }\r\n\r\n } else {\r\n\r\n // '[BigNumber Error] Base {not a primitive number|not an integer|out of range}: {b}'\r\n intCheck(b, 2, ALPHABET.length, 'Base');\r\n\r\n // Allow exponential notation to be used with base 10 argument, while\r\n // also rounding to DECIMAL_PLACES as with other bases.\r\n if (b == 10 && alphabetHasNormalDecimalDigits) {\r\n x = new BigNumber(v);\r\n return round(x, DECIMAL_PLACES + x.e + 1, ROUNDING_MODE);\r\n }\r\n\r\n str = String(v);\r\n\r\n if (isNum = typeof v == 'number') {\r\n\r\n // Avoid potential interpretation of Infinity and NaN as base 44+ values.\r\n if (v * 0 != 0) return parseNumeric(x, str, isNum, b);\r\n\r\n x.s = 1 / v < 0 ? (str = str.slice(1), -1) : 1;\r\n\r\n // '[BigNumber Error] Number primitive has more than 15 significant digits: {n}'\r\n if (BigNumber.DEBUG && str.replace(/^0\\.0*|\\./, '').length > 15) {\r\n throw Error\r\n (tooManyDigits + v);\r\n }\r\n } else {\r\n x.s = str.charCodeAt(0) === 45 ? (str = str.slice(1), -1) : 1;\r\n }\r\n\r\n alphabet = ALPHABET.slice(0, b);\r\n e = i = 0;\r\n\r\n // Check that str is a valid base b number.\r\n // Don't use RegExp, so alphabet can contain special characters.\r\n for (len = str.length; i < len; i++) {\r\n if (alphabet.indexOf(c = str.charAt(i)) < 0) {\r\n if (c == '.') {\r\n\r\n // If '.' is not the first character and it has not be found before.\r\n if (i > e) {\r\n e = len;\r\n continue;\r\n }\r\n } else if (!caseChanged) {\r\n\r\n // Allow e.g. hexadecimal 'FF' as well as 'ff'.\r\n if (str == str.toUpperCase() && (str = str.toLowerCase()) ||\r\n str == str.toLowerCase() && (str = str.toUpperCase())) {\r\n caseChanged = true;\r\n i = -1;\r\n e = 0;\r\n continue;\r\n }\r\n }\r\n\r\n return parseNumeric(x, String(v), isNum, b);\r\n }\r\n }\r\n\r\n // Prevent later check for length on converted number.\r\n isNum = false;\r\n str = convertBase(str, b, 10, x.s);\r\n\r\n // Decimal point?\r\n if ((e = str.indexOf('.')) > -1) str = str.replace('.', '');\r\n else e = str.length;\r\n }\r\n\r\n // Determine leading zeros.\r\n for (i = 0; str.charCodeAt(i) === 48; i++);\r\n\r\n // Determine trailing zeros.\r\n for (len = str.length; str.charCodeAt(--len) === 48;);\r\n\r\n if (str = str.slice(i, ++len)) {\r\n len -= i;\r\n\r\n // '[BigNumber Error] Number primitive has more than 15 significant digits: {n}'\r\n if (isNum && BigNumber.DEBUG &&\r\n len > 15 && (v > MAX_SAFE_INTEGER || v !== mathfloor(v))) {\r\n throw Error\r\n (tooManyDigits + (x.s * v));\r\n }\r\n\r\n // Overflow?\r\n if ((e = e - i - 1) > MAX_EXP) {\r\n\r\n // Infinity.\r\n x.c = x.e = null;\r\n\r\n // Underflow?\r\n } else if (e < MIN_EXP) {\r\n\r\n // Zero.\r\n x.c = [x.e = 0];\r\n } else {\r\n x.e = e;\r\n x.c = [];\r\n\r\n // Transform base\r\n\r\n // e is the base 10 exponent.\r\n // i is where to slice str to get the first element of the coefficient array.\r\n i = (e + 1) % LOG_BASE;\r\n if (e < 0) i += LOG_BASE; // i < 1\r\n\r\n if (i < len) {\r\n if (i) x.c.push(+str.slice(0, i));\r\n\r\n for (len -= LOG_BASE; i < len;) {\r\n x.c.push(+str.slice(i, i += LOG_BASE));\r\n }\r\n\r\n i = LOG_BASE - (str = str.slice(i)).length;\r\n } else {\r\n i -= len;\r\n }\r\n\r\n for (; i--; str += '0');\r\n x.c.push(+str);\r\n }\r\n } else {\r\n\r\n // Zero.\r\n x.c = [x.e = 0];\r\n }\r\n }\r\n\r\n\r\n // CONSTRUCTOR PROPERTIES\r\n\r\n\r\n BigNumber.clone = clone;\r\n\r\n BigNumber.ROUND_UP = 0;\r\n BigNumber.ROUND_DOWN = 1;\r\n BigNumber.ROUND_CEIL = 2;\r\n BigNumber.ROUND_FLOOR = 3;\r\n BigNumber.ROUND_HALF_UP = 4;\r\n BigNumber.ROUND_HALF_DOWN = 5;\r\n BigNumber.ROUND_HALF_EVEN = 6;\r\n BigNumber.ROUND_HALF_CEIL = 7;\r\n BigNumber.ROUND_HALF_FLOOR = 8;\r\n BigNumber.EUCLID = 9;\r\n\r\n\r\n /*\r\n * Configure infrequently-changing library-wide settings.\r\n *\r\n * Accept an object with the following optional properties (if the value of a property is\r\n * a number, it must be an integer within the inclusive range stated):\r\n *\r\n * DECIMAL_PLACES {number} 0 to MAX\r\n * ROUNDING_MODE {number} 0 to 8\r\n * EXPONENTIAL_AT {number|number[]} -MAX to MAX or [-MAX to 0, 0 to MAX]\r\n * RANGE {number|number[]} -MAX to MAX (not zero) or [-MAX to -1, 1 to MAX]\r\n * CRYPTO {boolean} true or false\r\n * MODULO_MODE {number} 0 to 9\r\n * POW_PRECISION {number} 0 to MAX\r\n * ALPHABET {string} A string of two or more unique characters which does\r\n * not contain '.'.\r\n * FORMAT {object} An object with some of the following properties:\r\n * prefix {string}\r\n * groupSize {number}\r\n * secondaryGroupSize {number}\r\n * groupSeparator {string}\r\n * decimalSeparator {string}\r\n * fractionGroupSize {number}\r\n * fractionGroupSeparator {string}\r\n * suffix {string}\r\n *\r\n * (The values assigned to the above FORMAT object properties are not checked for validity.)\r\n *\r\n * E.g.\r\n * BigNumber.config({ DECIMAL_PLACES : 20, ROUNDING_MODE : 4 })\r\n *\r\n * Ignore properties/parameters set to null or undefined, except for ALPHABET.\r\n *\r\n * Return an object with the properties current values.\r\n */\r\n BigNumber.config = BigNumber.set = function (obj) {\r\n var p, v;\r\n\r\n if (obj != null) {\r\n\r\n if (typeof obj == 'object') {\r\n\r\n // DECIMAL_PLACES {number} Integer, 0 to MAX inclusive.\r\n // '[BigNumber Error] DECIMAL_PLACES {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'DECIMAL_PLACES')) {\r\n v = obj[p];\r\n intCheck(v, 0, MAX, p);\r\n DECIMAL_PLACES = v;\r\n }\r\n\r\n // ROUNDING_MODE {number} Integer, 0 to 8 inclusive.\r\n // '[BigNumber Error] ROUNDING_MODE {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'ROUNDING_MODE')) {\r\n v = obj[p];\r\n intCheck(v, 0, 8, p);\r\n ROUNDING_MODE = v;\r\n }\r\n\r\n // EXPONENTIAL_AT {number|number[]}\r\n // Integer, -MAX to MAX inclusive or\r\n // [integer -MAX to 0 inclusive, 0 to MAX inclusive].\r\n // '[BigNumber Error] EXPONENTIAL_AT {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'EXPONENTIAL_AT')) {\r\n v = obj[p];\r\n if (v && v.pop) {\r\n intCheck(v[0], -MAX, 0, p);\r\n intCheck(v[1], 0, MAX, p);\r\n TO_EXP_NEG = v[0];\r\n TO_EXP_POS = v[1];\r\n } else {\r\n intCheck(v, -MAX, MAX, p);\r\n TO_EXP_NEG = -(TO_EXP_POS = v < 0 ? -v : v);\r\n }\r\n }\r\n\r\n // RANGE {number|number[]} Non-zero integer, -MAX to MAX inclusive or\r\n // [integer -MAX to -1 inclusive, integer 1 to MAX inclusive].\r\n // '[BigNumber Error] RANGE {not a primitive number|not an integer|out of range|cannot be zero}: {v}'\r\n if (obj.hasOwnProperty(p = 'RANGE')) {\r\n v = obj[p];\r\n if (v && v.pop) {\r\n intCheck(v[0], -MAX, -1, p);\r\n intCheck(v[1], 1, MAX, p);\r\n MIN_EXP = v[0];\r\n MAX_EXP = v[1];\r\n } else {\r\n intCheck(v, -MAX, MAX, p);\r\n if (v) {\r\n MIN_EXP = -(MAX_EXP = v < 0 ? -v : v);\r\n } else {\r\n throw Error\r\n (bignumberError + p + ' cannot be zero: ' + v);\r\n }\r\n }\r\n }\r\n\r\n // CRYPTO {boolean} true or false.\r\n // '[BigNumber Error] CRYPTO not true or false: {v}'\r\n // '[BigNumber Error] crypto unavailable'\r\n if (obj.hasOwnProperty(p = 'CRYPTO')) {\r\n v = obj[p];\r\n if (v === !!v) {\r\n if (v) {\r\n if (typeof crypto != 'undefined' && crypto &&\r\n (crypto.getRandomValues || crypto.randomBytes)) {\r\n CRYPTO = v;\r\n } else {\r\n CRYPTO = !v;\r\n throw Error\r\n (bignumberError + 'crypto unavailable');\r\n }\r\n } else {\r\n CRYPTO = v;\r\n }\r\n } else {\r\n throw Error\r\n (bignumberError + p + ' not true or false: ' + v);\r\n }\r\n }\r\n\r\n // MODULO_MODE {number} Integer, 0 to 9 inclusive.\r\n // '[BigNumber Error] MODULO_MODE {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'MODULO_MODE')) {\r\n v = obj[p];\r\n intCheck(v, 0, 9, p);\r\n MODULO_MODE = v;\r\n }\r\n\r\n // POW_PRECISION {number} Integer, 0 to MAX inclusive.\r\n // '[BigNumber Error] POW_PRECISION {not a primitive number|not an integer|out of range}: {v}'\r\n if (obj.hasOwnProperty(p = 'POW_PRECISION')) {\r\n v = obj[p];\r\n intCheck(v, 0, MAX, p);\r\n POW_PRECISION = v;\r\n }\r\n\r\n // FORMAT {object}\r\n // '[BigNumber Error] FORMAT not an object: {v}'\r\n if (obj.hasOwnProperty(p = 'FORMAT')) {\r\n v = obj[p];\r\n if (typeof v == 'object') FORMAT = v;\r\n else throw Error\r\n (bignumberError + p + ' not an object: ' + v);\r\n }\r\n\r\n // ALPHABET {string}\r\n // '[BigNumber Error] ALPHABET invalid: {v}'\r\n if (obj.hasOwnProperty(p = 'ALPHABET')) {\r\n v = obj[p];\r\n\r\n // Disallow if less than two characters,\r\n // or if it contains '+', '-', '.', whitespace, or a repeated character.\r\n if (typeof v == 'string' && !/^.?$|[+\\-.\\s]|(.).*\\1/.test(v)) {\r\n alphabetHasNormalDecimalDigits = v.slice(0, 10) == '0123456789';\r\n ALPHABET = v;\r\n } else {\r\n throw Error\r\n (bignumberError + p + ' invalid: ' + v);\r\n }\r\n }\r\n\r\n } else {\r\n\r\n // '[BigNumber Error] Object expected: {v}'\r\n throw Error\r\n (bignumberError + 'Object expected: ' + obj);\r\n }\r\n }\r\n\r\n return {\r\n DECIMAL_PLACES: DECIMAL_PLACES,\r\n ROUNDING_MODE: ROUNDING_MODE,\r\n EXPONENTIAL_AT: [TO_EXP_NEG, TO_EXP_POS],\r\n RANGE: [MIN_EXP, MAX_EXP],\r\n CRYPTO: CRYPTO,\r\n MODULO_MODE: MODULO_MODE,\r\n POW_PRECISION: POW_PRECISION,\r\n FORMAT: FORMAT,\r\n ALPHABET: ALPHABET\r\n };\r\n };\r\n\r\n\r\n /*\r\n * Return true if v is a BigNumber instance, otherwise return false.\r\n *\r\n * If BigNumber.DEBUG is true, throw if a BigNumber instance is not well-formed.\r\n *\r\n * v {any}\r\n *\r\n * '[BigNumber Error] Invalid BigNumber: {v}'\r\n */\r\n BigNumber.isBigNumber = function (v) {\r\n if (!v || v._isBigNumber !== true) return false;\r\n if (!BigNumber.DEBUG) return true;\r\n\r\n var i, n,\r\n c = v.c,\r\n e = v.e,\r\n s = v.s;\r\n\r\n out: if ({}.toString.call(c) == '[object Array]') {\r\n\r\n if ((s === 1 || s === -1) && e >= -MAX && e <= MAX && e === mathfloor(e)) {\r\n\r\n // If the first element is zero, the BigNumber value must be zero.\r\n if (c[0] === 0) {\r\n if (e === 0 && c.length === 1) return true;\r\n break out;\r\n }\r\n\r\n // Calculate number of digits that c[0] should have, based on the exponent.\r\n i = (e + 1) % LOG_BASE;\r\n if (i < 1) i += LOG_BASE;\r\n\r\n // Calculate number of digits of c[0].\r\n //if (Math.ceil(Math.log(c[0] + 1) / Math.LN10) == i) {\r\n if (String(c[0]).length == i) {\r\n\r\n for (i = 0; i < c.length; i++) {\r\n n = c[i];\r\n if (n < 0 || n >= BASE || n !== mathfloor(n)) break out;\r\n }\r\n\r\n // Last element cannot be zero, unless it is the only element.\r\n if (n !== 0) return true;\r\n }\r\n }\r\n\r\n // Infinity/NaN\r\n } else if (c === null && e === null && (s === null || s === 1 || s === -1)) {\r\n return true;\r\n }\r\n\r\n throw Error\r\n (bignumberError + 'Invalid BigNumber: ' + v);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the maximum of the arguments.\r\n *\r\n * arguments {number|string|BigNumber}\r\n */\r\n BigNumber.maximum = BigNumber.max = function () {\r\n return maxOrMin(arguments, P.lt);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the minimum of the arguments.\r\n *\r\n * arguments {number|string|BigNumber}\r\n */\r\n BigNumber.minimum = BigNumber.min = function () {\r\n return maxOrMin(arguments, P.gt);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber with a random value equal to or greater than 0 and less than 1,\r\n * and with dp, or DECIMAL_PLACES if dp is omitted, decimal places (or less if trailing\r\n * zeros are produced).\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp}'\r\n * '[BigNumber Error] crypto unavailable'\r\n */\r\n BigNumber.random = (function () {\r\n var pow2_53 = 0x20000000000000;\r\n\r\n // Return a 53 bit integer n, where 0 <= n < 9007199254740992.\r\n // Check if Math.random() produces more than 32 bits of randomness.\r\n // If it does, assume at least 53 bits are produced, otherwise assume at least 30 bits.\r\n // 0x40000000 is 2^30, 0x800000 is 2^23, 0x1fffff is 2^21 - 1.\r\n var random53bitInt = (Math.random() * pow2_53) & 0x1fffff\r\n ? function () { return mathfloor(Math.random() * pow2_53); }\r\n : function () { return ((Math.random() * 0x40000000 | 0) * 0x800000) +\r\n (Math.random() * 0x800000 | 0); };\r\n\r\n return function (dp) {\r\n var a, b, e, k, v,\r\n i = 0,\r\n c = [],\r\n rand = new BigNumber(ONE);\r\n\r\n if (dp == null) dp = DECIMAL_PLACES;\r\n else intCheck(dp, 0, MAX);\r\n\r\n k = mathceil(dp / LOG_BASE);\r\n\r\n if (CRYPTO) {\r\n\r\n // Browsers supporting crypto.getRandomValues.\r\n if (crypto.getRandomValues) {\r\n\r\n a = crypto.getRandomValues(new Uint32Array(k *= 2));\r\n\r\n for (; i < k;) {\r\n\r\n // 53 bits:\r\n // ((Math.pow(2, 32) - 1) * Math.pow(2, 21)).toString(2)\r\n // 11111 11111111 11111111 11111111 11100000 00000000 00000000\r\n // ((Math.pow(2, 32) - 1) >>> 11).toString(2)\r\n // 11111 11111111 11111111\r\n // 0x20000 is 2^21.\r\n v = a[i] * 0x20000 + (a[i + 1] >>> 11);\r\n\r\n // Rejection sampling:\r\n // 0 <= v < 9007199254740992\r\n // Probability that v >= 9e15, is\r\n // 7199254740992 / 9007199254740992 ~= 0.0008, i.e. 1 in 1251\r\n if (v >= 9e15) {\r\n b = crypto.getRandomValues(new Uint32Array(2));\r\n a[i] = b[0];\r\n a[i + 1] = b[1];\r\n } else {\r\n\r\n // 0 <= v <= 8999999999999999\r\n // 0 <= (v % 1e14) <= 99999999999999\r\n c.push(v % 1e14);\r\n i += 2;\r\n }\r\n }\r\n i = k / 2;\r\n\r\n // Node.js supporting crypto.randomBytes.\r\n } else if (crypto.randomBytes) {\r\n\r\n // buffer\r\n a = crypto.randomBytes(k *= 7);\r\n\r\n for (; i < k;) {\r\n\r\n // 0x1000000000000 is 2^48, 0x10000000000 is 2^40\r\n // 0x100000000 is 2^32, 0x1000000 is 2^24\r\n // 11111 11111111 11111111 11111111 11111111 11111111 11111111\r\n // 0 <= v < 9007199254740992\r\n v = ((a[i] & 31) * 0x1000000000000) + (a[i + 1] * 0x10000000000) +\r\n (a[i + 2] * 0x100000000) + (a[i + 3] * 0x1000000) +\r\n (a[i + 4] << 16) + (a[i + 5] << 8) + a[i + 6];\r\n\r\n if (v >= 9e15) {\r\n crypto.randomBytes(7).copy(a, i);\r\n } else {\r\n\r\n // 0 <= (v % 1e14) <= 99999999999999\r\n c.push(v % 1e14);\r\n i += 7;\r\n }\r\n }\r\n i = k / 7;\r\n } else {\r\n CRYPTO = false;\r\n throw Error\r\n (bignumberError + 'crypto unavailable');\r\n }\r\n }\r\n\r\n // Use Math.random.\r\n if (!CRYPTO) {\r\n\r\n for (; i < k;) {\r\n v = random53bitInt();\r\n if (v < 9e15) c[i++] = v % 1e14;\r\n }\r\n }\r\n\r\n k = c[--i];\r\n dp %= LOG_BASE;\r\n\r\n // Convert trailing digits to zeros according to dp.\r\n if (k && dp) {\r\n v = POWS_TEN[LOG_BASE - dp];\r\n c[i] = mathfloor(k / v) * v;\r\n }\r\n\r\n // Remove trailing elements which are zero.\r\n for (; c[i] === 0; c.pop(), i--);\r\n\r\n // Zero?\r\n if (i < 0) {\r\n c = [e = 0];\r\n } else {\r\n\r\n // Remove leading elements which are zero and adjust exponent accordingly.\r\n for (e = -1 ; c[0] === 0; c.splice(0, 1), e -= LOG_BASE);\r\n\r\n // Count the digits of the first element of c to determine leading zeros, and...\r\n for (i = 1, v = c[0]; v >= 10; v /= 10, i++);\r\n\r\n // adjust the exponent accordingly.\r\n if (i < LOG_BASE) e -= LOG_BASE - i;\r\n }\r\n\r\n rand.e = e;\r\n rand.c = c;\r\n return rand;\r\n };\r\n })();\r\n\r\n\r\n /*\r\n * Return a BigNumber whose value is the sum of the arguments.\r\n *\r\n * arguments {number|string|BigNumber}\r\n */\r\n BigNumber.sum = function () {\r\n var i = 1,\r\n args = arguments,\r\n sum = new BigNumber(args[0]);\r\n for (; i < args.length;) sum = sum.plus(args[i++]);\r\n return sum;\r\n };\r\n\r\n\r\n // PRIVATE FUNCTIONS\r\n\r\n\r\n // Called by BigNumber and BigNumber.prototype.toString.\r\n convertBase = (function () {\r\n var decimal = '0123456789';\r\n\r\n /*\r\n * Convert string of baseIn to an array of numbers of baseOut.\r\n * Eg. toBaseOut('255', 10, 16) returns [15, 15].\r\n * Eg. toBaseOut('ff', 16, 10) returns [2, 5, 5].\r\n */\r\n function toBaseOut(str, baseIn, baseOut, alphabet) {\r\n var j,\r\n arr = [0],\r\n arrL,\r\n i = 0,\r\n len = str.length;\r\n\r\n for (; i < len;) {\r\n for (arrL = arr.length; arrL--; arr[arrL] *= baseIn);\r\n\r\n arr[0] += alphabet.indexOf(str.charAt(i++));\r\n\r\n for (j = 0; j < arr.length; j++) {\r\n\r\n if (arr[j] > baseOut - 1) {\r\n if (arr[j + 1] == null) arr[j + 1] = 0;\r\n arr[j + 1] += arr[j] / baseOut | 0;\r\n arr[j] %= baseOut;\r\n }\r\n }\r\n }\r\n\r\n return arr.reverse();\r\n }\r\n\r\n // Convert a numeric string of baseIn to a numeric string of baseOut.\r\n // If the caller is toString, we are converting from base 10 to baseOut.\r\n // If the caller is BigNumber, we are converting from baseIn to base 10.\r\n return function (str, baseIn, baseOut, sign, callerIsToString) {\r\n var alphabet, d, e, k, r, x, xc, y,\r\n i = str.indexOf('.'),\r\n dp = DECIMAL_PLACES,\r\n rm = ROUNDING_MODE;\r\n\r\n // Non-integer.\r\n if (i >= 0) {\r\n k = POW_PRECISION;\r\n\r\n // Unlimited precision.\r\n POW_PRECISION = 0;\r\n str = str.replace('.', '');\r\n y = new BigNumber(baseIn);\r\n x = y.pow(str.length - i);\r\n POW_PRECISION = k;\r\n\r\n // Convert str as if an integer, then restore the fraction part by dividing the\r\n // result by its base raised to a power.\r\n\r\n y.c = toBaseOut(toFixedPoint(coeffToString(x.c), x.e, '0'),\r\n 10, baseOut, decimal);\r\n y.e = y.c.length;\r\n }\r\n\r\n // Convert the number as integer.\r\n\r\n xc = toBaseOut(str, baseIn, baseOut, callerIsToString\r\n ? (alphabet = ALPHABET, decimal)\r\n : (alphabet = decimal, ALPHABET));\r\n\r\n // xc now represents str as an integer and converted to baseOut. e is the exponent.\r\n e = k = xc.length;\r\n\r\n // Remove trailing zeros.\r\n for (; xc[--k] == 0; xc.pop());\r\n\r\n // Zero?\r\n if (!xc[0]) return alphabet.charAt(0);\r\n\r\n // Does str represent an integer? If so, no need for the division.\r\n if (i < 0) {\r\n --e;\r\n } else {\r\n x.c = xc;\r\n x.e = e;\r\n\r\n // The sign is needed for correct rounding.\r\n x.s = sign;\r\n x = div(x, y, dp, rm, baseOut);\r\n xc = x.c;\r\n r = x.r;\r\n e = x.e;\r\n }\r\n\r\n // xc now represents str converted to baseOut.\r\n\r\n // THe index of the rounding digit.\r\n d = e + dp + 1;\r\n\r\n // The rounding digit: the digit to the right of the digit that may be rounded up.\r\n i = xc[d];\r\n\r\n // Look at the rounding digits and mode to determine whether to round up.\r\n\r\n k = baseOut / 2;\r\n r = r || d < 0 || xc[d + 1] != null;\r\n\r\n r = rm < 4 ? (i != null || r) && (rm == 0 || rm == (x.s < 0 ? 3 : 2))\r\n : i > k || i == k &&(rm == 4 || r || rm == 6 && xc[d - 1] & 1 ||\r\n rm == (x.s < 0 ? 8 : 7));\r\n\r\n // If the index of the rounding digit is not greater than zero, or xc represents\r\n // zero, then the result of the base conversion is zero or, if rounding up, a value\r\n // such as 0.00001.\r\n if (d < 1 || !xc[0]) {\r\n\r\n // 1^-dp or 0\r\n str = r ? toFixedPoint(alphabet.charAt(1), -dp, alphabet.charAt(0)) : alphabet.charAt(0);\r\n } else {\r\n\r\n // Truncate xc to the required number of decimal places.\r\n xc.length = d;\r\n\r\n // Round up?\r\n if (r) {\r\n\r\n // Rounding up may mean the previous digit has to be rounded up and so on.\r\n for (--baseOut; ++xc[--d] > baseOut;) {\r\n xc[d] = 0;\r\n\r\n if (!d) {\r\n ++e;\r\n xc = [1].concat(xc);\r\n }\r\n }\r\n }\r\n\r\n // Determine trailing zeros.\r\n for (k = xc.length; !xc[--k];);\r\n\r\n // E.g. [4, 11, 15] becomes 4bf.\r\n for (i = 0, str = ''; i <= k; str += alphabet.charAt(xc[i++]));\r\n\r\n // Add leading zeros, decimal point and trailing zeros as required.\r\n str = toFixedPoint(str, e, alphabet.charAt(0));\r\n }\r\n\r\n // The caller will add the sign.\r\n return str;\r\n };\r\n })();\r\n\r\n\r\n // Perform division in the specified base. Called by div and convertBase.\r\n div = (function () {\r\n\r\n // Assume non-zero x and k.\r\n function multiply(x, k, base) {\r\n var m, temp, xlo, xhi,\r\n carry = 0,\r\n i = x.length,\r\n klo = k % SQRT_BASE,\r\n khi = k / SQRT_BASE | 0;\r\n\r\n for (x = x.slice(); i--;) {\r\n xlo = x[i] % SQRT_BASE;\r\n xhi = x[i] / SQRT_BASE | 0;\r\n m = khi * xlo + xhi * klo;\r\n temp = klo * xlo + ((m % SQRT_BASE) * SQRT_BASE) + carry;\r\n carry = (temp / base | 0) + (m / SQRT_BASE | 0) + khi * xhi;\r\n x[i] = temp % base;\r\n }\r\n\r\n if (carry) x = [carry].concat(x);\r\n\r\n return x;\r\n }\r\n\r\n function compare(a, b, aL, bL) {\r\n var i, cmp;\r\n\r\n if (aL != bL) {\r\n cmp = aL > bL ? 1 : -1;\r\n } else {\r\n\r\n for (i = cmp = 0; i < aL; i++) {\r\n\r\n if (a[i] != b[i]) {\r\n cmp = a[i] > b[i] ? 1 : -1;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return cmp;\r\n }\r\n\r\n function subtract(a, b, aL, base) {\r\n var i = 0;\r\n\r\n // Subtract b from a.\r\n for (; aL--;) {\r\n a[aL] -= i;\r\n i = a[aL] < b[aL] ? 1 : 0;\r\n a[aL] = i * base + a[aL] - b[aL];\r\n }\r\n\r\n // Remove leading zeros.\r\n for (; !a[0] && a.length > 1; a.splice(0, 1));\r\n }\r\n\r\n // x: dividend, y: divisor.\r\n return function (x, y, dp, rm, base) {\r\n var cmp, e, i, more, n, prod, prodL, q, qc, rem, remL, rem0, xi, xL, yc0,\r\n yL, yz,\r\n s = x.s == y.s ? 1 : -1,\r\n xc = x.c,\r\n yc = y.c;\r\n\r\n // Either NaN, Infinity or 0?\r\n if (!xc || !xc[0] || !yc || !yc[0]) {\r\n\r\n return new BigNumber(\r\n\r\n // Return NaN if either NaN, or both Infinity or 0.\r\n !x.s || !y.s || (xc ? yc && xc[0] == yc[0] : !yc) ? NaN :\r\n\r\n // Return ±0 if x is ±0 or y is ±Infinity, or return ±Infinity as y is ±0.\r\n xc && xc[0] == 0 || !yc ? s * 0 : s / 0\r\n );\r\n }\r\n\r\n q = new BigNumber(s);\r\n qc = q.c = [];\r\n e = x.e - y.e;\r\n s = dp + e + 1;\r\n\r\n if (!base) {\r\n base = BASE;\r\n e = bitFloor(x.e / LOG_BASE) - bitFloor(y.e / LOG_BASE);\r\n s = s / LOG_BASE | 0;\r\n }\r\n\r\n // Result exponent may be one less then the current value of e.\r\n // The coefficients of the BigNumbers from convertBase may have trailing zeros.\r\n for (i = 0; yc[i] == (xc[i] || 0); i++);\r\n\r\n if (yc[i] > (xc[i] || 0)) e--;\r\n\r\n if (s < 0) {\r\n qc.push(1);\r\n more = true;\r\n } else {\r\n xL = xc.length;\r\n yL = yc.length;\r\n i = 0;\r\n s += 2;\r\n\r\n // Normalise xc and yc so highest order digit of yc is >= base / 2.\r\n\r\n n = mathfloor(base / (yc[0] + 1));\r\n\r\n // Not necessary, but to handle odd bases where yc[0] == (base / 2) - 1.\r\n // if (n > 1 || n++ == 1 && yc[0] < base / 2) {\r\n if (n > 1) {\r\n yc = multiply(yc, n, base);\r\n xc = multiply(xc, n, base);\r\n yL = yc.length;\r\n xL = xc.length;\r\n }\r\n\r\n xi = yL;\r\n rem = xc.slice(0, yL);\r\n remL = rem.length;\r\n\r\n // Add zeros to make remainder as long as divisor.\r\n for (; remL < yL; rem[remL++] = 0);\r\n yz = yc.slice();\r\n yz = [0].concat(yz);\r\n yc0 = yc[0];\r\n if (yc[1] >= base / 2) yc0++;\r\n // Not necessary, but to prevent trial digit n > base, when using base 3.\r\n // else if (base == 3 && yc0 == 1) yc0 = 1 + 1e-15;\r\n\r\n do {\r\n n = 0;\r\n\r\n // Compare divisor and remainder.\r\n cmp = compare(yc, rem, yL, remL);\r\n\r\n // If divisor < remainder.\r\n if (cmp < 0) {\r\n\r\n // Calculate trial digit, n.\r\n\r\n rem0 = rem[0];\r\n if (yL != remL) rem0 = rem0 * base + (rem[1] || 0);\r\n\r\n // n is how many times the divisor goes into the current remainder.\r\n n = mathfloor(rem0 / yc0);\r\n\r\n // Algorithm:\r\n // product = divisor multiplied by trial digit (n).\r\n // Compare product and remainder.\r\n // If product is greater than remainder:\r\n // Subtract divisor from product, decrement trial digit.\r\n // Subtract product from remainder.\r\n // If product was less than remainder at the last compare:\r\n // Compare new remainder and divisor.\r\n // If remainder is greater than divisor:\r\n // Subtract divisor from remainder, increment trial digit.\r\n\r\n if (n > 1) {\r\n\r\n // n may be > base only when base is 3.\r\n if (n >= base) n = base - 1;\r\n\r\n // product = divisor * trial digit.\r\n prod = multiply(yc, n, base);\r\n prodL = prod.length;\r\n remL = rem.length;\r\n\r\n // Compare product and remainder.\r\n // If product > remainder then trial digit n too high.\r\n // n is 1 too high about 5% of the time, and is not known to have\r\n // ever been more than 1 too high.\r\n while (compare(prod, rem, prodL, remL) == 1) {\r\n n--;\r\n\r\n // Subtract divisor from product.\r\n subtract(prod, yL < prodL ? yz : yc, prodL, base);\r\n prodL = prod.length;\r\n cmp = 1;\r\n }\r\n } else {\r\n\r\n // n is 0 or 1, cmp is -1.\r\n // If n is 0, there is no need to compare yc and rem again below,\r\n // so change cmp to 1 to avoid it.\r\n // If n is 1, leave cmp as -1, so yc and rem are compared again.\r\n if (n == 0) {\r\n\r\n // divisor < remainder, so n must be at least 1.\r\n cmp = n = 1;\r\n }\r\n\r\n // product = divisor\r\n prod = yc.slice();\r\n prodL = prod.length;\r\n }\r\n\r\n if (prodL < remL) prod = [0].concat(prod);\r\n\r\n // Subtract product from remainder.\r\n subtract(rem, prod, remL, base);\r\n remL = rem.length;\r\n\r\n // If product was < remainder.\r\n if (cmp == -1) {\r\n\r\n // Compare divisor and new remainder.\r\n // If divisor < new remainder, subtract divisor from remainder.\r\n // Trial digit n too low.\r\n // n is 1 too low about 5% of the time, and very rarely 2 too low.\r\n while (compare(yc, rem, yL, remL) < 1) {\r\n n++;\r\n\r\n // Subtract divisor from remainder.\r\n subtract(rem, yL < remL ? yz : yc, remL, base);\r\n remL = rem.length;\r\n }\r\n }\r\n } else if (cmp === 0) {\r\n n++;\r\n rem = [0];\r\n } // else cmp === 1 and n will be 0\r\n\r\n // Add the next digit, n, to the result array.\r\n qc[i++] = n;\r\n\r\n // Update the remainder.\r\n if (rem[0]) {\r\n rem[remL++] = xc[xi] || 0;\r\n } else {\r\n rem = [xc[xi]];\r\n remL = 1;\r\n }\r\n } while ((xi++ < xL || rem[0] != null) && s--);\r\n\r\n more = rem[0] != null;\r\n\r\n // Leading zero?\r\n if (!qc[0]) qc.splice(0, 1);\r\n }\r\n\r\n if (base == BASE) {\r\n\r\n // To calculate q.e, first get the number of digits of qc[0].\r\n for (i = 1, s = qc[0]; s >= 10; s /= 10, i++);\r\n\r\n round(q, dp + (q.e = i + e * LOG_BASE - 1) + 1, rm, more);\r\n\r\n // Caller is convertBase.\r\n } else {\r\n q.e = e;\r\n q.r = +more;\r\n }\r\n\r\n return q;\r\n };\r\n })();\r\n\r\n\r\n /*\r\n * Return a string representing the value of BigNumber n in fixed-point or exponential\r\n * notation rounded to the specified decimal places or significant digits.\r\n *\r\n * n: a BigNumber.\r\n * i: the index of the last digit required (i.e. the digit that may be rounded up).\r\n * rm: the rounding mode.\r\n * id: 1 (toExponential) or 2 (toPrecision).\r\n */\r\n function format(n, i, rm, id) {\r\n var c0, e, ne, len, str;\r\n\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n\r\n if (!n.c) return n.toString();\r\n\r\n c0 = n.c[0];\r\n ne = n.e;\r\n\r\n if (i == null) {\r\n str = coeffToString(n.c);\r\n str = id == 1 || id == 2 && (ne <= TO_EXP_NEG || ne >= TO_EXP_POS)\r\n ? toExponential(str, ne)\r\n : toFixedPoint(str, ne, '0');\r\n } else {\r\n n = round(new BigNumber(n), i, rm);\r\n\r\n // n.e may have changed if the value was rounded up.\r\n e = n.e;\r\n\r\n str = coeffToString(n.c);\r\n len = str.length;\r\n\r\n // toPrecision returns exponential notation if the number of significant digits\r\n // specified is less than the number of digits necessary to represent the integer\r\n // part of the value in fixed-point notation.\r\n\r\n // Exponential notation.\r\n if (id == 1 || id == 2 && (i <= e || e <= TO_EXP_NEG)) {\r\n\r\n // Append zeros?\r\n for (; len < i; str += '0', len++);\r\n str = toExponential(str, e);\r\n\r\n // Fixed-point notation.\r\n } else {\r\n i -= ne;\r\n str = toFixedPoint(str, e, '0');\r\n\r\n // Append zeros?\r\n if (e + 1 > len) {\r\n if (--i > 0) for (str += '.'; i--; str += '0');\r\n } else {\r\n i += e - len;\r\n if (i > 0) {\r\n if (e + 1 == len) str += '.';\r\n for (; i--; str += '0');\r\n }\r\n }\r\n }\r\n }\r\n\r\n return n.s < 0 && c0 ? '-' + str : str;\r\n }\r\n\r\n\r\n // Handle BigNumber.max and BigNumber.min.\r\n function maxOrMin(args, method) {\r\n var n,\r\n i = 1,\r\n m = new BigNumber(args[0]);\r\n\r\n for (; i < args.length; i++) {\r\n n = new BigNumber(args[i]);\r\n\r\n // If any number is NaN, return NaN.\r\n if (!n.s) {\r\n m = n;\r\n break;\r\n } else if (method.call(m, n)) {\r\n m = n;\r\n }\r\n }\r\n\r\n return m;\r\n }\r\n\r\n\r\n /*\r\n * Strip trailing zeros, calculate base 10 exponent and check against MIN_EXP and MAX_EXP.\r\n * Called by minus, plus and times.\r\n */\r\n function normalise(n, c, e) {\r\n var i = 1,\r\n j = c.length;\r\n\r\n // Remove trailing zeros.\r\n for (; !c[--j]; c.pop());\r\n\r\n // Calculate the base 10 exponent. First get the number of digits of c[0].\r\n for (j = c[0]; j >= 10; j /= 10, i++);\r\n\r\n // Overflow?\r\n if ((e = i + e * LOG_BASE - 1) > MAX_EXP) {\r\n\r\n // Infinity.\r\n n.c = n.e = null;\r\n\r\n // Underflow?\r\n } else if (e < MIN_EXP) {\r\n\r\n // Zero.\r\n n.c = [n.e = 0];\r\n } else {\r\n n.e = e;\r\n n.c = c;\r\n }\r\n\r\n return n;\r\n }\r\n\r\n\r\n // Handle values that fail the validity test in BigNumber.\r\n parseNumeric = (function () {\r\n var basePrefix = /^(-?)0([xbo])(?=\\w[\\w.]*$)/i,\r\n dotAfter = /^([^.]+)\\.$/,\r\n dotBefore = /^\\.([^.]+)$/,\r\n isInfinityOrNaN = /^-?(Infinity|NaN)$/,\r\n whitespaceOrPlus = /^\\s*\\+(?=[\\w.])|^\\s+|\\s+$/g;\r\n\r\n return function (x, str, isNum, b) {\r\n var base,\r\n s = isNum ? str : str.replace(whitespaceOrPlus, '');\r\n\r\n // No exception on ±Infinity or NaN.\r\n if (isInfinityOrNaN.test(s)) {\r\n x.s = isNaN(s) ? null : s < 0 ? -1 : 1;\r\n } else {\r\n if (!isNum) {\r\n\r\n // basePrefix = /^(-?)0([xbo])(?=\\w[\\w.]*$)/i\r\n s = s.replace(basePrefix, function (m, p1, p2) {\r\n base = (p2 = p2.toLowerCase()) == 'x' ? 16 : p2 == 'b' ? 2 : 8;\r\n return !b || b == base ? p1 : m;\r\n });\r\n\r\n if (b) {\r\n base = b;\r\n\r\n // E.g. '1.' to '1', '.1' to '0.1'\r\n s = s.replace(dotAfter, '$1').replace(dotBefore, '0.$1');\r\n }\r\n\r\n if (str != s) return new BigNumber(s, base);\r\n }\r\n\r\n // '[BigNumber Error] Not a number: {n}'\r\n // '[BigNumber Error] Not a base {b} number: {n}'\r\n if (BigNumber.DEBUG) {\r\n throw Error\r\n (bignumberError + 'Not a' + (b ? ' base ' + b : '') + ' number: ' + str);\r\n }\r\n\r\n // NaN\r\n x.s = null;\r\n }\r\n\r\n x.c = x.e = null;\r\n }\r\n })();\r\n\r\n\r\n /*\r\n * Round x to sd significant digits using rounding mode rm. Check for over/under-flow.\r\n * If r is truthy, it is known that there are more digits after the rounding digit.\r\n */\r\n function round(x, sd, rm, r) {\r\n var d, i, j, k, n, ni, rd,\r\n xc = x.c,\r\n pows10 = POWS_TEN;\r\n\r\n // if x is not Infinity or NaN...\r\n if (xc) {\r\n\r\n // rd is the rounding digit, i.e. the digit after the digit that may be rounded up.\r\n // n is a base 1e14 number, the value of the element of array x.c containing rd.\r\n // ni is the index of n within x.c.\r\n // d is the number of digits of n.\r\n // i is the index of rd within n including leading zeros.\r\n // j is the actual index of rd within n (if < 0, rd is a leading zero).\r\n out: {\r\n\r\n // Get the number of digits of the first element of xc.\r\n for (d = 1, k = xc[0]; k >= 10; k /= 10, d++);\r\n i = sd - d;\r\n\r\n // If the rounding digit is in the first element of xc...\r\n if (i < 0) {\r\n i += LOG_BASE;\r\n j = sd;\r\n n = xc[ni = 0];\r\n\r\n // Get the rounding digit at index j of n.\r\n rd = n / pows10[d - j - 1] % 10 | 0;\r\n } else {\r\n ni = mathceil((i + 1) / LOG_BASE);\r\n\r\n if (ni >= xc.length) {\r\n\r\n if (r) {\r\n\r\n // Needed by sqrt.\r\n for (; xc.length <= ni; xc.push(0));\r\n n = rd = 0;\r\n d = 1;\r\n i %= LOG_BASE;\r\n j = i - LOG_BASE + 1;\r\n } else {\r\n break out;\r\n }\r\n } else {\r\n n = k = xc[ni];\r\n\r\n // Get the number of digits of n.\r\n for (d = 1; k >= 10; k /= 10, d++);\r\n\r\n // Get the index of rd within n.\r\n i %= LOG_BASE;\r\n\r\n // Get the index of rd within n, adjusted for leading zeros.\r\n // The number of leading zeros of n is given by LOG_BASE - d.\r\n j = i - LOG_BASE + d;\r\n\r\n // Get the rounding digit at index j of n.\r\n rd = j < 0 ? 0 : n / pows10[d - j - 1] % 10 | 0;\r\n }\r\n }\r\n\r\n r = r || sd < 0 ||\r\n\r\n // Are there any non-zero digits after the rounding digit?\r\n // The expression n % pows10[d - j - 1] returns all digits of n to the right\r\n // of the digit at j, e.g. if n is 908714 and j is 2, the expression gives 714.\r\n xc[ni + 1] != null || (j < 0 ? n : n % pows10[d - j - 1]);\r\n\r\n r = rm < 4\r\n ? (rd || r) && (rm == 0 || rm == (x.s < 0 ? 3 : 2))\r\n : rd > 5 || rd == 5 && (rm == 4 || r || rm == 6 &&\r\n\r\n // Check whether the digit to the left of the rounding digit is odd.\r\n ((i > 0 ? j > 0 ? n / pows10[d - j] : 0 : xc[ni - 1]) % 10) & 1 ||\r\n rm == (x.s < 0 ? 8 : 7));\r\n\r\n if (sd < 1 || !xc[0]) {\r\n xc.length = 0;\r\n\r\n if (r) {\r\n\r\n // Convert sd to decimal places.\r\n sd -= x.e + 1;\r\n\r\n // 1, 0.1, 0.01, 0.001, 0.0001 etc.\r\n xc[0] = pows10[(LOG_BASE - sd % LOG_BASE) % LOG_BASE];\r\n x.e = -sd || 0;\r\n } else {\r\n\r\n // Zero.\r\n xc[0] = x.e = 0;\r\n }\r\n\r\n return x;\r\n }\r\n\r\n // Remove excess digits.\r\n if (i == 0) {\r\n xc.length = ni;\r\n k = 1;\r\n ni--;\r\n } else {\r\n xc.length = ni + 1;\r\n k = pows10[LOG_BASE - i];\r\n\r\n // E.g. 56700 becomes 56000 if 7 is the rounding digit.\r\n // j > 0 means i > number of leading zeros of n.\r\n xc[ni] = j > 0 ? mathfloor(n / pows10[d - j] % pows10[j]) * k : 0;\r\n }\r\n\r\n // Round up?\r\n if (r) {\r\n\r\n for (; ;) {\r\n\r\n // If the digit to be rounded up is in the first element of xc...\r\n if (ni == 0) {\r\n\r\n // i will be the length of xc[0] before k is added.\r\n for (i = 1, j = xc[0]; j >= 10; j /= 10, i++);\r\n j = xc[0] += k;\r\n for (k = 1; j >= 10; j /= 10, k++);\r\n\r\n // if i != k the length has increased.\r\n if (i != k) {\r\n x.e++;\r\n if (xc[0] == BASE) xc[0] = 1;\r\n }\r\n\r\n break;\r\n } else {\r\n xc[ni] += k;\r\n if (xc[ni] != BASE) break;\r\n xc[ni--] = 0;\r\n k = 1;\r\n }\r\n }\r\n }\r\n\r\n // Remove trailing zeros.\r\n for (i = xc.length; xc[--i] === 0; xc.pop());\r\n }\r\n\r\n // Overflow? Infinity.\r\n if (x.e > MAX_EXP) {\r\n x.c = x.e = null;\r\n\r\n // Underflow? Zero.\r\n } else if (x.e < MIN_EXP) {\r\n x.c = [x.e = 0];\r\n }\r\n }\r\n\r\n return x;\r\n }\r\n\r\n\r\n function valueOf(n) {\r\n var str,\r\n e = n.e;\r\n\r\n if (e === null) return n.toString();\r\n\r\n str = coeffToString(n.c);\r\n\r\n str = e <= TO_EXP_NEG || e >= TO_EXP_POS\r\n ? toExponential(str, e)\r\n : toFixedPoint(str, e, '0');\r\n\r\n return n.s < 0 ? '-' + str : str;\r\n }\r\n\r\n\r\n // PROTOTYPE/INSTANCE METHODS\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the absolute value of this BigNumber.\r\n */\r\n P.absoluteValue = P.abs = function () {\r\n var x = new BigNumber(this);\r\n if (x.s < 0) x.s = 1;\r\n return x;\r\n };\r\n\r\n\r\n /*\r\n * Return\r\n * 1 if the value of this BigNumber is greater than the value of BigNumber(y, b),\r\n * -1 if the value of this BigNumber is less than the value of BigNumber(y, b),\r\n * 0 if they have the same value,\r\n * or null if the value of either is NaN.\r\n */\r\n P.comparedTo = function (y, b) {\r\n return compare(this, new BigNumber(y, b));\r\n };\r\n\r\n\r\n /*\r\n * If dp is undefined or null or true or false, return the number of decimal places of the\r\n * value of this BigNumber, or null if the value of this BigNumber is ±Infinity or NaN.\r\n *\r\n * Otherwise, if dp is a number, return a new BigNumber whose value is the value of this\r\n * BigNumber rounded to a maximum of dp decimal places using rounding mode rm, or\r\n * ROUNDING_MODE if rm is omitted.\r\n *\r\n * [dp] {number} Decimal places: integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n */\r\n P.decimalPlaces = P.dp = function (dp, rm) {\r\n var c, n, v,\r\n x = this;\r\n\r\n if (dp != null) {\r\n intCheck(dp, 0, MAX);\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n\r\n return round(new BigNumber(x), dp + x.e + 1, rm);\r\n }\r\n\r\n if (!(c = x.c)) return null;\r\n n = ((v = c.length - 1) - bitFloor(this.e / LOG_BASE)) * LOG_BASE;\r\n\r\n // Subtract the number of trailing zeros of the last number.\r\n if (v = c[v]) for (; v % 10 == 0; v /= 10, n--);\r\n if (n < 0) n = 0;\r\n\r\n return n;\r\n };\r\n\r\n\r\n /*\r\n * n / 0 = I\r\n * n / N = N\r\n * n / I = 0\r\n * 0 / n = 0\r\n * 0 / 0 = N\r\n * 0 / N = N\r\n * 0 / I = 0\r\n * N / n = N\r\n * N / 0 = N\r\n * N / N = N\r\n * N / I = N\r\n * I / n = I\r\n * I / 0 = I\r\n * I / N = N\r\n * I / I = N\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber divided by the value of\r\n * BigNumber(y, b), rounded according to DECIMAL_PLACES and ROUNDING_MODE.\r\n */\r\n P.dividedBy = P.div = function (y, b) {\r\n return div(this, new BigNumber(y, b), DECIMAL_PLACES, ROUNDING_MODE);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the integer part of dividing the value of this\r\n * BigNumber by the value of BigNumber(y, b).\r\n */\r\n P.dividedToIntegerBy = P.idiv = function (y, b) {\r\n return div(this, new BigNumber(y, b), 0, 1);\r\n };\r\n\r\n\r\n /*\r\n * Return a BigNumber whose value is the value of this BigNumber exponentiated by n.\r\n *\r\n * If m is present, return the result modulo m.\r\n * If n is negative round according to DECIMAL_PLACES and ROUNDING_MODE.\r\n * If POW_PRECISION is non-zero and m is not present, round to POW_PRECISION using ROUNDING_MODE.\r\n *\r\n * The modular power operation works efficiently when x, n, and m are integers, otherwise it\r\n * is equivalent to calculating x.exponentiatedBy(n).modulo(m) with a POW_PRECISION of 0.\r\n *\r\n * n {number|string|BigNumber} The exponent. An integer.\r\n * [m] {number|string|BigNumber} The modulus.\r\n *\r\n * '[BigNumber Error] Exponent not an integer: {n}'\r\n */\r\n P.exponentiatedBy = P.pow = function (n, m) {\r\n var half, isModExp, i, k, more, nIsBig, nIsNeg, nIsOdd, y,\r\n x = this;\r\n\r\n n = new BigNumber(n);\r\n\r\n // Allow NaN and ±Infinity, but not other non-integers.\r\n if (n.c && !n.isInteger()) {\r\n throw Error\r\n (bignumberError + 'Exponent not an integer: ' + valueOf(n));\r\n }\r\n\r\n if (m != null) m = new BigNumber(m);\r\n\r\n // Exponent of MAX_SAFE_INTEGER is 15.\r\n nIsBig = n.e > 14;\r\n\r\n // If x is NaN, ±Infinity, ±0 or ±1, or n is ±Infinity, NaN or ±0.\r\n if (!x.c || !x.c[0] || x.c[0] == 1 && !x.e && x.c.length == 1 || !n.c || !n.c[0]) {\r\n\r\n // The sign of the result of pow when x is negative depends on the evenness of n.\r\n // If +n overflows to ±Infinity, the evenness of n would be not be known.\r\n y = new BigNumber(Math.pow(+valueOf(x), nIsBig ? 2 - isOdd(n) : +valueOf(n)));\r\n return m ? y.mod(m) : y;\r\n }\r\n\r\n nIsNeg = n.s < 0;\r\n\r\n if (m) {\r\n\r\n // x % m returns NaN if abs(m) is zero, or m is NaN.\r\n if (m.c ? !m.c[0] : !m.s) return new BigNumber(NaN);\r\n\r\n isModExp = !nIsNeg && x.isInteger() && m.isInteger();\r\n\r\n if (isModExp) x = x.mod(m);\r\n\r\n // Overflow to ±Infinity: >=2**1e10 or >=1.0000024**1e15.\r\n // Underflow to ±0: <=0.79**1e10 or <=0.9999975**1e15.\r\n } else if (n.e > 9 && (x.e > 0 || x.e < -1 || (x.e == 0\r\n // [1, 240000000]\r\n ? x.c[0] > 1 || nIsBig && x.c[1] >= 24e7\r\n // [80000000000000] [99999750000000]\r\n : x.c[0] < 8e13 || nIsBig && x.c[0] <= 9999975e7))) {\r\n\r\n // If x is negative and n is odd, k = -0, else k = 0.\r\n k = x.s < 0 && isOdd(n) ? -0 : 0;\r\n\r\n // If x >= 1, k = ±Infinity.\r\n if (x.e > -1) k = 1 / k;\r\n\r\n // If n is negative return ±0, else return ±Infinity.\r\n return new BigNumber(nIsNeg ? 1 / k : k);\r\n\r\n } else if (POW_PRECISION) {\r\n\r\n // Truncating each coefficient array to a length of k after each multiplication\r\n // equates to truncating significant digits to POW_PRECISION + [28, 41],\r\n // i.e. there will be a minimum of 28 guard digits retained.\r\n k = mathceil(POW_PRECISION / LOG_BASE + 2);\r\n }\r\n\r\n if (nIsBig) {\r\n half = new BigNumber(0.5);\r\n if (nIsNeg) n.s = 1;\r\n nIsOdd = isOdd(n);\r\n } else {\r\n i = Math.abs(+valueOf(n));\r\n nIsOdd = i % 2;\r\n }\r\n\r\n y = new BigNumber(ONE);\r\n\r\n // Performs 54 loop iterations for n of 9007199254740991.\r\n for (; ;) {\r\n\r\n if (nIsOdd) {\r\n y = y.times(x);\r\n if (!y.c) break;\r\n\r\n if (k) {\r\n if (y.c.length > k) y.c.length = k;\r\n } else if (isModExp) {\r\n y = y.mod(m); //y = y.minus(div(y, m, 0, MODULO_MODE).times(m));\r\n }\r\n }\r\n\r\n if (i) {\r\n i = mathfloor(i / 2);\r\n if (i === 0) break;\r\n nIsOdd = i % 2;\r\n } else {\r\n n = n.times(half);\r\n round(n, n.e + 1, 1);\r\n\r\n if (n.e > 14) {\r\n nIsOdd = isOdd(n);\r\n } else {\r\n i = +valueOf(n);\r\n if (i === 0) break;\r\n nIsOdd = i % 2;\r\n }\r\n }\r\n\r\n x = x.times(x);\r\n\r\n if (k) {\r\n if (x.c && x.c.length > k) x.c.length = k;\r\n } else if (isModExp) {\r\n x = x.mod(m); //x = x.minus(div(x, m, 0, MODULO_MODE).times(m));\r\n }\r\n }\r\n\r\n if (isModExp) return y;\r\n if (nIsNeg) y = ONE.div(y);\r\n\r\n return m ? y.mod(m) : k ? round(y, POW_PRECISION, ROUNDING_MODE, more) : y;\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the value of this BigNumber rounded to an integer\r\n * using rounding mode rm, or ROUNDING_MODE if rm is omitted.\r\n *\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {rm}'\r\n */\r\n P.integerValue = function (rm) {\r\n var n = new BigNumber(this);\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n return round(n, n.e + 1, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is equal to the value of BigNumber(y, b),\r\n * otherwise return false.\r\n */\r\n P.isEqualTo = P.eq = function (y, b) {\r\n return compare(this, new BigNumber(y, b)) === 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is a finite number, otherwise return false.\r\n */\r\n P.isFinite = function () {\r\n return !!this.c;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is greater than the value of BigNumber(y, b),\r\n * otherwise return false.\r\n */\r\n P.isGreaterThan = P.gt = function (y, b) {\r\n return compare(this, new BigNumber(y, b)) > 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is greater than or equal to the value of\r\n * BigNumber(y, b), otherwise return false.\r\n */\r\n P.isGreaterThanOrEqualTo = P.gte = function (y, b) {\r\n return (b = compare(this, new BigNumber(y, b))) === 1 || b === 0;\r\n\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is an integer, otherwise return false.\r\n */\r\n P.isInteger = function () {\r\n return !!this.c && bitFloor(this.e / LOG_BASE) > this.c.length - 2;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is less than the value of BigNumber(y, b),\r\n * otherwise return false.\r\n */\r\n P.isLessThan = P.lt = function (y, b) {\r\n return compare(this, new BigNumber(y, b)) < 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is less than or equal to the value of\r\n * BigNumber(y, b), otherwise return false.\r\n */\r\n P.isLessThanOrEqualTo = P.lte = function (y, b) {\r\n return (b = compare(this, new BigNumber(y, b))) === -1 || b === 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is NaN, otherwise return false.\r\n */\r\n P.isNaN = function () {\r\n return !this.s;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is negative, otherwise return false.\r\n */\r\n P.isNegative = function () {\r\n return this.s < 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is positive, otherwise return false.\r\n */\r\n P.isPositive = function () {\r\n return this.s > 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this BigNumber is 0 or -0, otherwise return false.\r\n */\r\n P.isZero = function () {\r\n return !!this.c && this.c[0] == 0;\r\n };\r\n\r\n\r\n /*\r\n * n - 0 = n\r\n * n - N = N\r\n * n - I = -I\r\n * 0 - n = -n\r\n * 0 - 0 = 0\r\n * 0 - N = N\r\n * 0 - I = -I\r\n * N - n = N\r\n * N - 0 = N\r\n * N - N = N\r\n * N - I = N\r\n * I - n = I\r\n * I - 0 = I\r\n * I - N = N\r\n * I - I = N\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber minus the value of\r\n * BigNumber(y, b).\r\n */\r\n P.minus = function (y, b) {\r\n var i, j, t, xLTy,\r\n x = this,\r\n a = x.s;\r\n\r\n y = new BigNumber(y, b);\r\n b = y.s;\r\n\r\n // Either NaN?\r\n if (!a || !b) return new BigNumber(NaN);\r\n\r\n // Signs differ?\r\n if (a != b) {\r\n y.s = -b;\r\n return x.plus(y);\r\n }\r\n\r\n var xe = x.e / LOG_BASE,\r\n ye = y.e / LOG_BASE,\r\n xc = x.c,\r\n yc = y.c;\r\n\r\n if (!xe || !ye) {\r\n\r\n // Either Infinity?\r\n if (!xc || !yc) return xc ? (y.s = -b, y) : new BigNumber(yc ? x : NaN);\r\n\r\n // Either zero?\r\n if (!xc[0] || !yc[0]) {\r\n\r\n // Return y if y is non-zero, x if x is non-zero, or zero if both are zero.\r\n return yc[0] ? (y.s = -b, y) : new BigNumber(xc[0] ? x :\r\n\r\n // IEEE 754 (2008) 6.3: n - n = -0 when rounding to -Infinity\r\n ROUNDING_MODE == 3 ? -0 : 0);\r\n }\r\n }\r\n\r\n xe = bitFloor(xe);\r\n ye = bitFloor(ye);\r\n xc = xc.slice();\r\n\r\n // Determine which is the bigger number.\r\n if (a = xe - ye) {\r\n\r\n if (xLTy = a < 0) {\r\n a = -a;\r\n t = xc;\r\n } else {\r\n ye = xe;\r\n t = yc;\r\n }\r\n\r\n t.reverse();\r\n\r\n // Prepend zeros to equalise exponents.\r\n for (b = a; b--; t.push(0));\r\n t.reverse();\r\n } else {\r\n\r\n // Exponents equal. Check digit by digit.\r\n j = (xLTy = (a = xc.length) < (b = yc.length)) ? a : b;\r\n\r\n for (a = b = 0; b < j; b++) {\r\n\r\n if (xc[b] != yc[b]) {\r\n xLTy = xc[b] < yc[b];\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // x < y? Point xc to the array of the bigger number.\r\n if (xLTy) t = xc, xc = yc, yc = t, y.s = -y.s;\r\n\r\n b = (j = yc.length) - (i = xc.length);\r\n\r\n // Append zeros to xc if shorter.\r\n // No need to add zeros to yc if shorter as subtract only needs to start at yc.length.\r\n if (b > 0) for (; b--; xc[i++] = 0);\r\n b = BASE - 1;\r\n\r\n // Subtract yc from xc.\r\n for (; j > a;) {\r\n\r\n if (xc[--j] < yc[j]) {\r\n for (i = j; i && !xc[--i]; xc[i] = b);\r\n --xc[i];\r\n xc[j] += BASE;\r\n }\r\n\r\n xc[j] -= yc[j];\r\n }\r\n\r\n // Remove leading zeros and adjust exponent accordingly.\r\n for (; xc[0] == 0; xc.splice(0, 1), --ye);\r\n\r\n // Zero?\r\n if (!xc[0]) {\r\n\r\n // Following IEEE 754 (2008) 6.3,\r\n // n - n = +0 but n - n = -0 when rounding towards -Infinity.\r\n y.s = ROUNDING_MODE == 3 ? -1 : 1;\r\n y.c = [y.e = 0];\r\n return y;\r\n }\r\n\r\n // No need to check for Infinity as +x - +y != Infinity && -x - -y != Infinity\r\n // for finite x and y.\r\n return normalise(y, xc, ye);\r\n };\r\n\r\n\r\n /*\r\n * n % 0 = N\r\n * n % N = N\r\n * n % I = n\r\n * 0 % n = 0\r\n * -0 % n = -0\r\n * 0 % 0 = N\r\n * 0 % N = N\r\n * 0 % I = 0\r\n * N % n = N\r\n * N % 0 = N\r\n * N % N = N\r\n * N % I = N\r\n * I % n = N\r\n * I % 0 = N\r\n * I % N = N\r\n * I % I = N\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber modulo the value of\r\n * BigNumber(y, b). The result depends on the value of MODULO_MODE.\r\n */\r\n P.modulo = P.mod = function (y, b) {\r\n var q, s,\r\n x = this;\r\n\r\n y = new BigNumber(y, b);\r\n\r\n // Return NaN if x is Infinity or NaN, or y is NaN or zero.\r\n if (!x.c || !y.s || y.c && !y.c[0]) {\r\n return new BigNumber(NaN);\r\n\r\n // Return x if y is Infinity or x is zero.\r\n } else if (!y.c || x.c && !x.c[0]) {\r\n return new BigNumber(x);\r\n }\r\n\r\n if (MODULO_MODE == 9) {\r\n\r\n // Euclidian division: q = sign(y) * floor(x / abs(y))\r\n // r = x - qy where 0 <= r < abs(y)\r\n s = y.s;\r\n y.s = 1;\r\n q = div(x, y, 0, 3);\r\n y.s = s;\r\n q.s *= s;\r\n } else {\r\n q = div(x, y, 0, MODULO_MODE);\r\n }\r\n\r\n y = x.minus(q.times(y));\r\n\r\n // To match JavaScript %, ensure sign of zero is sign of dividend.\r\n if (!y.c[0] && MODULO_MODE == 1) y.s = x.s;\r\n\r\n return y;\r\n };\r\n\r\n\r\n /*\r\n * n * 0 = 0\r\n * n * N = N\r\n * n * I = I\r\n * 0 * n = 0\r\n * 0 * 0 = 0\r\n * 0 * N = N\r\n * 0 * I = N\r\n * N * n = N\r\n * N * 0 = N\r\n * N * N = N\r\n * N * I = N\r\n * I * n = I\r\n * I * 0 = N\r\n * I * N = N\r\n * I * I = I\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber multiplied by the value\r\n * of BigNumber(y, b).\r\n */\r\n P.multipliedBy = P.times = function (y, b) {\r\n var c, e, i, j, k, m, xcL, xlo, xhi, ycL, ylo, yhi, zc,\r\n base, sqrtBase,\r\n x = this,\r\n xc = x.c,\r\n yc = (y = new BigNumber(y, b)).c;\r\n\r\n // Either NaN, ±Infinity or ±0?\r\n if (!xc || !yc || !xc[0] || !yc[0]) {\r\n\r\n // Return NaN if either is NaN, or one is 0 and the other is Infinity.\r\n if (!x.s || !y.s || xc && !xc[0] && !yc || yc && !yc[0] && !xc) {\r\n y.c = y.e = y.s = null;\r\n } else {\r\n y.s *= x.s;\r\n\r\n // Return ±Infinity if either is ±Infinity.\r\n if (!xc || !yc) {\r\n y.c = y.e = null;\r\n\r\n // Return ±0 if either is ±0.\r\n } else {\r\n y.c = [0];\r\n y.e = 0;\r\n }\r\n }\r\n\r\n return y;\r\n }\r\n\r\n e = bitFloor(x.e / LOG_BASE) + bitFloor(y.e / LOG_BASE);\r\n y.s *= x.s;\r\n xcL = xc.length;\r\n ycL = yc.length;\r\n\r\n // Ensure xc points to longer array and xcL to its length.\r\n if (xcL < ycL) zc = xc, xc = yc, yc = zc, i = xcL, xcL = ycL, ycL = i;\r\n\r\n // Initialise the result array with zeros.\r\n for (i = xcL + ycL, zc = []; i--; zc.push(0));\r\n\r\n base = BASE;\r\n sqrtBase = SQRT_BASE;\r\n\r\n for (i = ycL; --i >= 0;) {\r\n c = 0;\r\n ylo = yc[i] % sqrtBase;\r\n yhi = yc[i] / sqrtBase | 0;\r\n\r\n for (k = xcL, j = i + k; j > i;) {\r\n xlo = xc[--k] % sqrtBase;\r\n xhi = xc[k] / sqrtBase | 0;\r\n m = yhi * xlo + xhi * ylo;\r\n xlo = ylo * xlo + ((m % sqrtBase) * sqrtBase) + zc[j] + c;\r\n c = (xlo / base | 0) + (m / sqrtBase | 0) + yhi * xhi;\r\n zc[j--] = xlo % base;\r\n }\r\n\r\n zc[j] = c;\r\n }\r\n\r\n if (c) {\r\n ++e;\r\n } else {\r\n zc.splice(0, 1);\r\n }\r\n\r\n return normalise(y, zc, e);\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the value of this BigNumber negated,\r\n * i.e. multiplied by -1.\r\n */\r\n P.negated = function () {\r\n var x = new BigNumber(this);\r\n x.s = -x.s || null;\r\n return x;\r\n };\r\n\r\n\r\n /*\r\n * n + 0 = n\r\n * n + N = N\r\n * n + I = I\r\n * 0 + n = n\r\n * 0 + 0 = 0\r\n * 0 + N = N\r\n * 0 + I = I\r\n * N + n = N\r\n * N + 0 = N\r\n * N + N = N\r\n * N + I = N\r\n * I + n = I\r\n * I + 0 = I\r\n * I + N = N\r\n * I + I = I\r\n *\r\n * Return a new BigNumber whose value is the value of this BigNumber plus the value of\r\n * BigNumber(y, b).\r\n */\r\n P.plus = function (y, b) {\r\n var t,\r\n x = this,\r\n a = x.s;\r\n\r\n y = new BigNumber(y, b);\r\n b = y.s;\r\n\r\n // Either NaN?\r\n if (!a || !b) return new BigNumber(NaN);\r\n\r\n // Signs differ?\r\n if (a != b) {\r\n y.s = -b;\r\n return x.minus(y);\r\n }\r\n\r\n var xe = x.e / LOG_BASE,\r\n ye = y.e / LOG_BASE,\r\n xc = x.c,\r\n yc = y.c;\r\n\r\n if (!xe || !ye) {\r\n\r\n // Return ±Infinity if either ±Infinity.\r\n if (!xc || !yc) return new BigNumber(a / 0);\r\n\r\n // Either zero?\r\n // Return y if y is non-zero, x if x is non-zero, or zero if both are zero.\r\n if (!xc[0] || !yc[0]) return yc[0] ? y : new BigNumber(xc[0] ? x : a * 0);\r\n }\r\n\r\n xe = bitFloor(xe);\r\n ye = bitFloor(ye);\r\n xc = xc.slice();\r\n\r\n // Prepend zeros to equalise exponents. Faster to use reverse then do unshifts.\r\n if (a = xe - ye) {\r\n if (a > 0) {\r\n ye = xe;\r\n t = yc;\r\n } else {\r\n a = -a;\r\n t = xc;\r\n }\r\n\r\n t.reverse();\r\n for (; a--; t.push(0));\r\n t.reverse();\r\n }\r\n\r\n a = xc.length;\r\n b = yc.length;\r\n\r\n // Point xc to the longer array, and b to the shorter length.\r\n if (a - b < 0) t = yc, yc = xc, xc = t, b = a;\r\n\r\n // Only start adding at yc.length - 1 as the further digits of xc can be ignored.\r\n for (a = 0; b;) {\r\n a = (xc[--b] = xc[b] + yc[b] + a) / BASE | 0;\r\n xc[b] = BASE === xc[b] ? 0 : xc[b] % BASE;\r\n }\r\n\r\n if (a) {\r\n xc = [a].concat(xc);\r\n ++ye;\r\n }\r\n\r\n // No need to check for zero, as +x + +y != 0 && -x + -y != 0\r\n // ye = MAX_EXP + 1 possible\r\n return normalise(y, xc, ye);\r\n };\r\n\r\n\r\n /*\r\n * If sd is undefined or null or true or false, return the number of significant digits of\r\n * the value of this BigNumber, or null if the value of this BigNumber is ±Infinity or NaN.\r\n * If sd is true include integer-part trailing zeros in the count.\r\n *\r\n * Otherwise, if sd is a number, return a new BigNumber whose value is the value of this\r\n * BigNumber rounded to a maximum of sd significant digits using rounding mode rm, or\r\n * ROUNDING_MODE if rm is omitted.\r\n *\r\n * sd {number|boolean} number: significant digits: integer, 1 to MAX inclusive.\r\n * boolean: whether to count integer-part trailing zeros: true or false.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {sd|rm}'\r\n */\r\n P.precision = P.sd = function (sd, rm) {\r\n var c, n, v,\r\n x = this;\r\n\r\n if (sd != null && sd !== !!sd) {\r\n intCheck(sd, 1, MAX);\r\n if (rm == null) rm = ROUNDING_MODE;\r\n else intCheck(rm, 0, 8);\r\n\r\n return round(new BigNumber(x), sd, rm);\r\n }\r\n\r\n if (!(c = x.c)) return null;\r\n v = c.length - 1;\r\n n = v * LOG_BASE + 1;\r\n\r\n if (v = c[v]) {\r\n\r\n // Subtract the number of trailing zeros of the last element.\r\n for (; v % 10 == 0; v /= 10, n--);\r\n\r\n // Add the number of digits of the first element.\r\n for (v = c[0]; v >= 10; v /= 10, n++);\r\n }\r\n\r\n if (sd && x.e + 1 > n) n = x.e + 1;\r\n\r\n return n;\r\n };\r\n\r\n\r\n /*\r\n * Return a new BigNumber whose value is the value of this BigNumber shifted by k places\r\n * (powers of 10). Shift to the right if n > 0, and to the left if n < 0.\r\n *\r\n * k {number} Integer, -MAX_SAFE_INTEGER to MAX_SAFE_INTEGER inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {k}'\r\n */\r\n P.shiftedBy = function (k) {\r\n intCheck(k, -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER);\r\n return this.times('1e' + k);\r\n };\r\n\r\n\r\n /*\r\n * sqrt(-n) = N\r\n * sqrt(N) = N\r\n * sqrt(-I) = N\r\n * sqrt(I) = I\r\n * sqrt(0) = 0\r\n * sqrt(-0) = -0\r\n *\r\n * Return a new BigNumber whose value is the square root of the value of this BigNumber,\r\n * rounded according to DECIMAL_PLACES and ROUNDING_MODE.\r\n */\r\n P.squareRoot = P.sqrt = function () {\r\n var m, n, r, rep, t,\r\n x = this,\r\n c = x.c,\r\n s = x.s,\r\n e = x.e,\r\n dp = DECIMAL_PLACES + 4,\r\n half = new BigNumber('0.5');\r\n\r\n // Negative/NaN/Infinity/zero?\r\n if (s !== 1 || !c || !c[0]) {\r\n return new BigNumber(!s || s < 0 && (!c || c[0]) ? NaN : c ? x : 1 / 0);\r\n }\r\n\r\n // Initial estimate.\r\n s = Math.sqrt(+valueOf(x));\r\n\r\n // Math.sqrt underflow/overflow?\r\n // Pass x to Math.sqrt as integer, then adjust the exponent of the result.\r\n if (s == 0 || s == 1 / 0) {\r\n n = coeffToString(c);\r\n if ((n.length + e) % 2 == 0) n += '0';\r\n s = Math.sqrt(+n);\r\n e = bitFloor((e + 1) / 2) - (e < 0 || e % 2);\r\n\r\n if (s == 1 / 0) {\r\n n = '5e' + e;\r\n } else {\r\n n = s.toExponential();\r\n n = n.slice(0, n.indexOf('e') + 1) + e;\r\n }\r\n\r\n r = new BigNumber(n);\r\n } else {\r\n r = new BigNumber(s + '');\r\n }\r\n\r\n // Check for zero.\r\n // r could be zero if MIN_EXP is changed after the this value was created.\r\n // This would cause a division by zero (x/t) and hence Infinity below, which would cause\r\n // coeffToString to throw.\r\n if (r.c[0]) {\r\n e = r.e;\r\n s = e + dp;\r\n if (s < 3) s = 0;\r\n\r\n // Newton-Raphson iteration.\r\n for (; ;) {\r\n t = r;\r\n r = half.times(t.plus(div(x, t, dp, 1)));\r\n\r\n if (coeffToString(t.c).slice(0, s) === (n = coeffToString(r.c)).slice(0, s)) {\r\n\r\n // The exponent of r may here be one less than the final result exponent,\r\n // e.g 0.0009999 (e-4) --> 0.001 (e-3), so adjust s so the rounding digits\r\n // are indexed correctly.\r\n if (r.e < e) --s;\r\n n = n.slice(s - 3, s + 1);\r\n\r\n // The 4th rounding digit may be in error by -1 so if the 4 rounding digits\r\n // are 9999 or 4999 (i.e. approaching a rounding boundary) continue the\r\n // iteration.\r\n if (n == '9999' || !rep && n == '4999') {\r\n\r\n // On the first iteration only, check to see if rounding up gives the\r\n // exact result as the nines may infinitely repeat.\r\n if (!rep) {\r\n round(t, t.e + DECIMAL_PLACES + 2, 0);\r\n\r\n if (t.times(t).eq(x)) {\r\n r = t;\r\n break;\r\n }\r\n }\r\n\r\n dp += 4;\r\n s += 4;\r\n rep = 1;\r\n } else {\r\n\r\n // If rounding digits are null, 0{0,4} or 50{0,3}, check for exact\r\n // result. If not, then there are further digits and m will be truthy.\r\n if (!+n || !+n.slice(1) && n.charAt(0) == '5') {\r\n\r\n // Truncate to the first rounding digit.\r\n round(r, r.e + DECIMAL_PLACES + 2, 1);\r\n m = !r.times(r).eq(x);\r\n }\r\n\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n return round(r, r.e + DECIMAL_PLACES + 1, ROUNDING_MODE, m);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in exponential notation and\r\n * rounded using ROUNDING_MODE to dp fixed decimal places.\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n */\r\n P.toExponential = function (dp, rm) {\r\n if (dp != null) {\r\n intCheck(dp, 0, MAX);\r\n dp++;\r\n }\r\n return format(this, dp, rm, 1);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in fixed-point notation rounding\r\n * to dp fixed decimal places using rounding mode rm, or ROUNDING_MODE if rm is omitted.\r\n *\r\n * Note: as with JavaScript's number type, (-0).toFixed(0) is '0',\r\n * but e.g. (-0.00001).toFixed(0) is '-0'.\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n */\r\n P.toFixed = function (dp, rm) {\r\n if (dp != null) {\r\n intCheck(dp, 0, MAX);\r\n dp = dp + this.e + 1;\r\n }\r\n return format(this, dp, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in fixed-point notation rounded\r\n * using rm or ROUNDING_MODE to dp decimal places, and formatted according to the properties\r\n * of the format or FORMAT object (see BigNumber.set).\r\n *\r\n * The formatting object may contain some or all of the properties shown below.\r\n *\r\n * FORMAT = {\r\n * prefix: '',\r\n * groupSize: 3,\r\n * secondaryGroupSize: 0,\r\n * groupSeparator: ',',\r\n * decimalSeparator: '.',\r\n * fractionGroupSize: 0,\r\n * fractionGroupSeparator: '\\xA0', // non-breaking space\r\n * suffix: ''\r\n * };\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n * [format] {object} Formatting options. See FORMAT pbject above.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {dp|rm}'\r\n * '[BigNumber Error] Argument not an object: {format}'\r\n */\r\n P.toFormat = function (dp, rm, format) {\r\n var str,\r\n x = this;\r\n\r\n if (format == null) {\r\n if (dp != null && rm && typeof rm == 'object') {\r\n format = rm;\r\n rm = null;\r\n } else if (dp && typeof dp == 'object') {\r\n format = dp;\r\n dp = rm = null;\r\n } else {\r\n format = FORMAT;\r\n }\r\n } else if (typeof format != 'object') {\r\n throw Error\r\n (bignumberError + 'Argument not an object: ' + format);\r\n }\r\n\r\n str = x.toFixed(dp, rm);\r\n\r\n if (x.c) {\r\n var i,\r\n arr = str.split('.'),\r\n g1 = +format.groupSize,\r\n g2 = +format.secondaryGroupSize,\r\n groupSeparator = format.groupSeparator || '',\r\n intPart = arr[0],\r\n fractionPart = arr[1],\r\n isNeg = x.s < 0,\r\n intDigits = isNeg ? intPart.slice(1) : intPart,\r\n len = intDigits.length;\r\n\r\n if (g2) i = g1, g1 = g2, g2 = i, len -= i;\r\n\r\n if (g1 > 0 && len > 0) {\r\n i = len % g1 || g1;\r\n intPart = intDigits.substr(0, i);\r\n for (; i < len; i += g1) intPart += groupSeparator + intDigits.substr(i, g1);\r\n if (g2 > 0) intPart += groupSeparator + intDigits.slice(i);\r\n if (isNeg) intPart = '-' + intPart;\r\n }\r\n\r\n str = fractionPart\r\n ? intPart + (format.decimalSeparator || '') + ((g2 = +format.fractionGroupSize)\r\n ? fractionPart.replace(new RegExp('\\\\d{' + g2 + '}\\\\B', 'g'),\r\n '$&' + (format.fractionGroupSeparator || ''))\r\n : fractionPart)\r\n : intPart;\r\n }\r\n\r\n return (format.prefix || '') + str + (format.suffix || '');\r\n };\r\n\r\n\r\n /*\r\n * Return an array of two BigNumbers representing the value of this BigNumber as a simple\r\n * fraction with an integer numerator and an integer denominator.\r\n * The denominator will be a positive non-zero value less than or equal to the specified\r\n * maximum denominator. If a maximum denominator is not specified, the denominator will be\r\n * the lowest value necessary to represent the number exactly.\r\n *\r\n * [md] {number|string|BigNumber} Integer >= 1, or Infinity. The maximum denominator.\r\n *\r\n * '[BigNumber Error] Argument {not an integer|out of range} : {md}'\r\n */\r\n P.toFraction = function (md) {\r\n var d, d0, d1, d2, e, exp, n, n0, n1, q, r, s,\r\n x = this,\r\n xc = x.c;\r\n\r\n if (md != null) {\r\n n = new BigNumber(md);\r\n\r\n // Throw if md is less than one or is not an integer, unless it is Infinity.\r\n if (!n.isInteger() && (n.c || n.s !== 1) || n.lt(ONE)) {\r\n throw Error\r\n (bignumberError + 'Argument ' +\r\n (n.isInteger() ? 'out of range: ' : 'not an integer: ') + valueOf(n));\r\n }\r\n }\r\n\r\n if (!xc) return new BigNumber(x);\r\n\r\n d = new BigNumber(ONE);\r\n n1 = d0 = new BigNumber(ONE);\r\n d1 = n0 = new BigNumber(ONE);\r\n s = coeffToString(xc);\r\n\r\n // Determine initial denominator.\r\n // d is a power of 10 and the minimum max denominator that specifies the value exactly.\r\n e = d.e = s.length - x.e - 1;\r\n d.c[0] = POWS_TEN[(exp = e % LOG_BASE) < 0 ? LOG_BASE + exp : exp];\r\n md = !md || n.comparedTo(d) > 0 ? (e > 0 ? d : n1) : n;\r\n\r\n exp = MAX_EXP;\r\n MAX_EXP = 1 / 0;\r\n n = new BigNumber(s);\r\n\r\n // n0 = d1 = 0\r\n n0.c[0] = 0;\r\n\r\n for (; ;) {\r\n q = div(n, d, 0, 1);\r\n d2 = d0.plus(q.times(d1));\r\n if (d2.comparedTo(md) == 1) break;\r\n d0 = d1;\r\n d1 = d2;\r\n n1 = n0.plus(q.times(d2 = n1));\r\n n0 = d2;\r\n d = n.minus(q.times(d2 = d));\r\n n = d2;\r\n }\r\n\r\n d2 = div(md.minus(d0), d1, 0, 1);\r\n n0 = n0.plus(d2.times(n1));\r\n d0 = d0.plus(d2.times(d1));\r\n n0.s = n1.s = x.s;\r\n e = e * 2;\r\n\r\n // Determine which fraction is closer to x, n0/d0 or n1/d1\r\n r = div(n1, d1, e, ROUNDING_MODE).minus(x).abs().comparedTo(\r\n div(n0, d0, e, ROUNDING_MODE).minus(x).abs()) < 1 ? [n1, d1] : [n0, d0];\r\n\r\n MAX_EXP = exp;\r\n\r\n return r;\r\n };\r\n\r\n\r\n /*\r\n * Return the value of this BigNumber converted to a number primitive.\r\n */\r\n P.toNumber = function () {\r\n return +valueOf(this);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber rounded to sd significant digits\r\n * using rounding mode rm or ROUNDING_MODE. If sd is less than the number of digits\r\n * necessary to represent the integer part of the value in fixed-point notation, then use\r\n * exponential notation.\r\n *\r\n * [sd] {number} Significant digits. Integer, 1 to MAX inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * '[BigNumber Error] Argument {not a primitive number|not an integer|out of range}: {sd|rm}'\r\n */\r\n P.toPrecision = function (sd, rm) {\r\n if (sd != null) intCheck(sd, 1, MAX);\r\n return format(this, sd, rm, 2);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this BigNumber in base b, or base 10 if b is\r\n * omitted. If a base is specified, including base 10, round according to DECIMAL_PLACES and\r\n * ROUNDING_MODE. If a base is not specified, and this BigNumber has a positive exponent\r\n * that is equal to or greater than TO_EXP_POS, or a negative exponent equal to or less than\r\n * TO_EXP_NEG, return exponential notation.\r\n *\r\n * [b] {number} Integer, 2 to ALPHABET.length inclusive.\r\n *\r\n * '[BigNumber Error] Base {not a primitive number|not an integer|out of range}: {b}'\r\n */\r\n P.toString = function (b) {\r\n var str,\r\n n = this,\r\n s = n.s,\r\n e = n.e;\r\n\r\n // Infinity or NaN?\r\n if (e === null) {\r\n if (s) {\r\n str = 'Infinity';\r\n if (s < 0) str = '-' + str;\r\n } else {\r\n str = 'NaN';\r\n }\r\n } else {\r\n if (b == null) {\r\n str = e <= TO_EXP_NEG || e >= TO_EXP_POS\r\n ? toExponential(coeffToString(n.c), e)\r\n : toFixedPoint(coeffToString(n.c), e, '0');\r\n } else if (b === 10 && alphabetHasNormalDecimalDigits) {\r\n n = round(new BigNumber(n), DECIMAL_PLACES + e + 1, ROUNDING_MODE);\r\n str = toFixedPoint(coeffToString(n.c), n.e, '0');\r\n } else {\r\n intCheck(b, 2, ALPHABET.length, 'Base');\r\n str = convertBase(toFixedPoint(coeffToString(n.c), e, '0'), 10, b, s, true);\r\n }\r\n\r\n if (s < 0 && n.c[0]) str = '-' + str;\r\n }\r\n\r\n return str;\r\n };\r\n\r\n\r\n /*\r\n * Return as toString, but do not accept a base argument, and include the minus sign for\r\n * negative zero.\r\n */\r\n P.valueOf = P.toJSON = function () {\r\n return valueOf(this);\r\n };\r\n\r\n\r\n P._isBigNumber = true;\r\n\r\n if (configObject != null) BigNumber.set(configObject);\r\n\r\n return BigNumber;\r\n }\r\n\r\n\r\n // PRIVATE HELPER FUNCTIONS\r\n\r\n // These functions don't need access to variables,\r\n // e.g. DECIMAL_PLACES, in the scope of the `clone` function above.\r\n\r\n\r\n function bitFloor(n) {\r\n var i = n | 0;\r\n return n > 0 || n === i ? i : i - 1;\r\n }\r\n\r\n\r\n // Return a coefficient array as a string of base 10 digits.\r\n function coeffToString(a) {\r\n var s, z,\r\n i = 1,\r\n j = a.length,\r\n r = a[0] + '';\r\n\r\n for (; i < j;) {\r\n s = a[i++] + '';\r\n z = LOG_BASE - s.length;\r\n for (; z--; s = '0' + s);\r\n r += s;\r\n }\r\n\r\n // Determine trailing zeros.\r\n for (j = r.length; r.charCodeAt(--j) === 48;);\r\n\r\n return r.slice(0, j + 1 || 1);\r\n }\r\n\r\n\r\n // Compare the value of BigNumbers x and y.\r\n function compare(x, y) {\r\n var a, b,\r\n xc = x.c,\r\n yc = y.c,\r\n i = x.s,\r\n j = y.s,\r\n k = x.e,\r\n l = y.e;\r\n\r\n // Either NaN?\r\n if (!i || !j) return null;\r\n\r\n a = xc && !xc[0];\r\n b = yc && !yc[0];\r\n\r\n // Either zero?\r\n if (a || b) return a ? b ? 0 : -j : i;\r\n\r\n // Signs differ?\r\n if (i != j) return i;\r\n\r\n a = i < 0;\r\n b = k == l;\r\n\r\n // Either Infinity?\r\n if (!xc || !yc) return b ? 0 : !xc ^ a ? 1 : -1;\r\n\r\n // Compare exponents.\r\n if (!b) return k > l ^ a ? 1 : -1;\r\n\r\n j = (k = xc.length) < (l = yc.length) ? k : l;\r\n\r\n // Compare digit by digit.\r\n for (i = 0; i < j; i++) if (xc[i] != yc[i]) return xc[i] > yc[i] ^ a ? 1 : -1;\r\n\r\n // Compare lengths.\r\n return k == l ? 0 : k > l ^ a ? 1 : -1;\r\n }\r\n\r\n\r\n /*\r\n * Check that n is a primitive number, an integer, and in range, otherwise throw.\r\n */\r\n function intCheck(n, min, max, name) {\r\n if (n < min || n > max || n !== mathfloor(n)) {\r\n throw Error\r\n (bignumberError + (name || 'Argument') + (typeof n == 'number'\r\n ? n < min || n > max ? ' out of range: ' : ' not an integer: '\r\n : ' not a primitive number: ') + String(n));\r\n }\r\n }\r\n\r\n\r\n // Assumes finite n.\r\n function isOdd(n) {\r\n var k = n.c.length - 1;\r\n return bitFloor(n.e / LOG_BASE) == k && n.c[k] % 2 != 0;\r\n }\r\n\r\n\r\n function toExponential(str, e) {\r\n return (str.length > 1 ? str.charAt(0) + '.' + str.slice(1) : str) +\r\n (e < 0 ? 'e' : 'e+') + e;\r\n }\r\n\r\n\r\n function toFixedPoint(str, e, z) {\r\n var len, zs;\r\n\r\n // Negative exponent?\r\n if (e < 0) {\r\n\r\n // Prepend zeros.\r\n for (zs = z + '.'; ++e; zs += z);\r\n str = zs + str;\r\n\r\n // Positive exponent\r\n } else {\r\n len = str.length;\r\n\r\n // Append zeros.\r\n if (++e > len) {\r\n for (zs = z, e -= len; --e; zs += z);\r\n str += zs;\r\n } else if (e < len) {\r\n str = str.slice(0, e) + '.' + str.slice(e);\r\n }\r\n }\r\n\r\n return str;\r\n }\r\n\r\n\r\n // EXPORT\r\n\r\n\r\n BigNumber = clone();\r\n BigNumber['default'] = BigNumber.BigNumber = BigNumber;\r\n\r\n // AMD.\r\n if (typeof define == 'function' && define.amd) {\r\n define(function () { return BigNumber; });\r\n\r\n // Node.js and other environments that support module.exports.\r\n } else if (typeof module != 'undefined' && module.exports) {\r\n module.exports = BigNumber;\r\n\r\n // Browser.\r\n } else {\r\n if (!globalObject) {\r\n globalObject = typeof self != 'undefined' && self ? self : window;\r\n }\r\n\r\n globalObject.BigNumber = BigNumber;\r\n }\r\n})(this);\r\n","module.exports = assert;\n\nfunction assert(val, msg) {\n if (!val)\n throw new Error(msg || 'Assertion failed');\n}\n\nassert.equal = function assertEqual(l, r, msg) {\n if (l != r)\n throw new Error(msg || ('Assertion failed: ' + l + ' != ' + r));\n};\n","/**\n * @typedef {import(\"./contract/ContractId.js\").default} ContractId\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n * @typedef {import(\"./KeyList.js\").default} KeyList\n * @typedef {import(\"./PublicKey.js\").default} PublicKey\n * @typedef {import(\"./PrivateKey.js\").default} PrivateKey\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IKeyList} proto.IKeyList\n * @typedef {import(\"@hashgraph/proto\").IThresholdKey} proto.IThresholdKey\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n */\n\n/**\n * @namespace cryptography\n * @typedef {import(\"@hashgraph/cryptography\").PrivateKey} cryptography.PrivateKey\n */\n\n/**\n * @template {object} ProtobufT\n * @template {object} SdkT\n * @typedef {{ (proto: ProtobufT): SdkT }} FromProtobufKeyFuncT\n */\n\nconst CACHE = {\n /** @type {FromProtobufKeyFuncT | null} */\n contractId: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n keyList: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n thresholdKey: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n publicKeyED25519: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n publicKeyECDSA: null,\n\n /** @type {((key: cryptography.PrivateKey) => PrivateKey) | null} */\n privateKeyConstructor: null,\n\n /** @type {((shard: Long | number, realm: Long | number, key: PublicKey) => AccountId) | null} */\n accountIdConstructor: null,\n\n /** @type {FromProtobufKeyFuncT | null} */\n delegateContractId: null,\n};\n\nexport default CACHE;\n","import Key from \"./Key.js\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IKeyList} proto.IKeyList\n * @typedef {import(\"@hashgraph/proto\").IThresholdKey} proto.IThresholdKey\n */\n\n/**\n * A list of Keys (`Key`) with an optional threshold.\n */\nexport default class KeyList extends Key {\n /**\n * @param {?Key[]} [keys]\n * @param {?number} [threshold]\n */\n constructor(keys, threshold) {\n super();\n\n /**\n * @private\n * @type {Key[]}\n */\n this._keys = keys == null ? [] : keys;\n\n /**\n * @type {?number}\n */\n this._threshold = threshold == null ? null : threshold;\n }\n\n /**\n * @param {Key[]} keys\n * @returns {KeyList}\n */\n static of(...keys) {\n return new KeyList(keys, null);\n }\n\n /**\n * @template T\n * @param {ArrayLike} arrayLike\n * @param {((key: Key) => Key)} [mapFn]\n * @param {T} [thisArg]\n * @returns {KeyList}\n */\n static from(arrayLike, mapFn, thisArg) {\n if (mapFn == null) {\n return new KeyList(Array.from(arrayLike));\n }\n\n return new KeyList(Array.from(arrayLike, mapFn, thisArg));\n }\n\n /**\n * @returns {?number}\n */\n get threshold() {\n return this._threshold;\n }\n\n /**\n * @param {number} threshold\n * @returns {this}\n */\n setThreshold(threshold) {\n this._threshold = threshold;\n return this;\n }\n\n /**\n * @param {Key[]} keys\n * @returns {number}\n */\n push(...keys) {\n return this._keys.push(...keys);\n }\n\n /**\n * @param {number} start\n * @param {number} deleteCount\n * @param {Key[]} items\n * @returns {KeyList}\n */\n splice(start, deleteCount, ...items) {\n return new KeyList(\n this._keys.splice(start, deleteCount, ...items),\n this.threshold\n );\n }\n\n /**\n * @param {number=} start\n * @param {number=} end\n * @returns {KeyList}\n */\n slice(start, end) {\n return new KeyList(this._keys.slice(start, end), this.threshold);\n }\n\n /**\n * @returns {Iterator}\n */\n [Symbol.iterator]() {\n return this._keys[Symbol.iterator]();\n }\n\n /**\n * @returns {Key[]}\n */\n toArray() {\n return this._keys.slice();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify({\n threshold: this._threshold,\n keys: this._keys.toString(),\n });\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n const keys = this._keys.map((key) => key._toProtobufKey());\n\n if (this.threshold == null) {\n return { keyList: { keys } };\n } else {\n return {\n thresholdKey: {\n threshold: this.threshold,\n keys: { keys },\n },\n };\n }\n }\n\n /**\n * @param {proto.IKeyList} key\n * @returns {KeyList}\n */\n static __fromProtobufKeyList(key) {\n const keys = (key.keys != null ? key.keys : []).map((key) =>\n Key._fromProtobufKey(key)\n );\n return new KeyList(keys);\n }\n\n /**\n * @param {proto.IThresholdKey} key\n * @returns {KeyList}\n */\n static __fromProtobufThresoldKey(key) {\n const list = KeyList.__fromProtobufKeyList(\n key.keys != null ? key.keys : {}\n );\n list.setThreshold(key.threshold != null ? key.threshold : 0);\n return list;\n }\n}\n\nCACHE.keyList = (key) => KeyList.__fromProtobufKeyList(key);\nCACHE.thresholdKey = (key) => KeyList.__fromProtobufThresoldKey(key);\n","\"use strict\";\nvar util = exports;\n\n// used to return a Promise where callback is omitted\nutil.asPromise = require(\"@protobufjs/aspromise\");\n\n// converts to / from base64 encoded strings\nutil.base64 = require(\"@protobufjs/base64\");\n\n// base class of rpc.Service\nutil.EventEmitter = require(\"@protobufjs/eventemitter\");\n\n// float handling accross browsers\nutil.float = require(\"@protobufjs/float\");\n\n// requires modules optionally and hides the call from bundlers\nutil.inquire = require(\"@protobufjs/inquire\");\n\n// converts to / from utf8 encoded strings\nutil.utf8 = require(\"@protobufjs/utf8\");\n\n// provides a node-like buffer pool in the browser\nutil.pool = require(\"@protobufjs/pool\");\n\n// utility to work with the low and high bits of a 64 bit value\nutil.LongBits = require(\"./longbits\");\n\n/**\n * Whether running within node or not.\n * @memberof util\n * @type {boolean}\n */\nutil.isNode = Boolean(typeof global !== \"undefined\"\n && global\n && global.process\n && global.process.versions\n && global.process.versions.node);\n\n/**\n * Global object reference.\n * @memberof util\n * @type {Object}\n */\nutil.global = util.isNode && global\n || typeof window !== \"undefined\" && window\n || typeof self !== \"undefined\" && self\n || this; // eslint-disable-line no-invalid-this\n\n/**\n * An immuable empty array.\n * @memberof util\n * @type {Array.<*>}\n * @const\n */\nutil.emptyArray = Object.freeze ? Object.freeze([]) : /* istanbul ignore next */ []; // used on prototypes\n\n/**\n * An immutable empty object.\n * @type {Object}\n * @const\n */\nutil.emptyObject = Object.freeze ? Object.freeze({}) : /* istanbul ignore next */ {}; // used on prototypes\n\n/**\n * Tests if the specified value is an integer.\n * @function\n * @param {*} value Value to test\n * @returns {boolean} `true` if the value is an integer\n */\nutil.isInteger = Number.isInteger || /* istanbul ignore next */ function isInteger(value) {\n return typeof value === \"number\" && isFinite(value) && Math.floor(value) === value;\n};\n\n/**\n * Tests if the specified value is a string.\n * @param {*} value Value to test\n * @returns {boolean} `true` if the value is a string\n */\nutil.isString = function isString(value) {\n return typeof value === \"string\" || value instanceof String;\n};\n\n/**\n * Tests if the specified value is a non-null object.\n * @param {*} value Value to test\n * @returns {boolean} `true` if the value is a non-null object\n */\nutil.isObject = function isObject(value) {\n return value && typeof value === \"object\";\n};\n\n/**\n * Checks if a property on a message is considered to be present.\n * This is an alias of {@link util.isSet}.\n * @function\n * @param {Object} obj Plain object or message instance\n * @param {string} prop Property name\n * @returns {boolean} `true` if considered to be present, otherwise `false`\n */\nutil.isset =\n\n/**\n * Checks if a property on a message is considered to be present.\n * @param {Object} obj Plain object or message instance\n * @param {string} prop Property name\n * @returns {boolean} `true` if considered to be present, otherwise `false`\n */\nutil.isSet = function isSet(obj, prop) {\n var value = obj[prop];\n if (value != null && obj.hasOwnProperty(prop)) // eslint-disable-line eqeqeq, no-prototype-builtins\n return typeof value !== \"object\" || (Array.isArray(value) ? value.length : Object.keys(value).length) > 0;\n return false;\n};\n\n/**\n * Any compatible Buffer instance.\n * This is a minimal stand-alone definition of a Buffer instance. The actual type is that exported by node's typings.\n * @interface Buffer\n * @extends Uint8Array\n */\n\n/**\n * Node's Buffer class if available.\n * @type {Constructor}\n */\nutil.Buffer = (function() {\n try {\n var Buffer = util.inquire(\"buffer\").Buffer;\n // refuse to use non-node buffers if not explicitly assigned (perf reasons):\n return Buffer.prototype.utf8Write ? Buffer : /* istanbul ignore next */ null;\n } catch (e) {\n /* istanbul ignore next */\n return null;\n }\n})();\n\n// Internal alias of or polyfull for Buffer.from.\nutil._Buffer_from = null;\n\n// Internal alias of or polyfill for Buffer.allocUnsafe.\nutil._Buffer_allocUnsafe = null;\n\n/**\n * Creates a new buffer of whatever type supported by the environment.\n * @param {number|number[]} [sizeOrArray=0] Buffer size or number array\n * @returns {Uint8Array|Buffer} Buffer\n */\nutil.newBuffer = function newBuffer(sizeOrArray) {\n /* istanbul ignore next */\n return typeof sizeOrArray === \"number\"\n ? util.Buffer\n ? util._Buffer_allocUnsafe(sizeOrArray)\n : new util.Array(sizeOrArray)\n : util.Buffer\n ? util._Buffer_from(sizeOrArray)\n : typeof Uint8Array === \"undefined\"\n ? sizeOrArray\n : new Uint8Array(sizeOrArray);\n};\n\n/**\n * Array implementation used in the browser. `Uint8Array` if supported, otherwise `Array`.\n * @type {Constructor}\n */\nutil.Array = typeof Uint8Array !== \"undefined\" ? Uint8Array /* istanbul ignore next */ : Array;\n\n/**\n * Any compatible Long instance.\n * This is a minimal stand-alone definition of a Long instance. The actual type is that exported by long.js.\n * @interface Long\n * @property {number} low Low bits\n * @property {number} high High bits\n * @property {boolean} unsigned Whether unsigned or not\n */\n\n/**\n * Long.js's Long class if available.\n * @type {Constructor}\n */\nutil.Long = /* istanbul ignore next */ util.global.dcodeIO && /* istanbul ignore next */ util.global.dcodeIO.Long\n || /* istanbul ignore next */ util.global.Long\n || util.inquire(\"long\");\n\n/**\n * Regular expression used to verify 2 bit (`bool`) map keys.\n * @type {RegExp}\n * @const\n */\nutil.key2Re = /^true|false|0|1$/;\n\n/**\n * Regular expression used to verify 32 bit (`int32` etc.) map keys.\n * @type {RegExp}\n * @const\n */\nutil.key32Re = /^-?(?:0|[1-9][0-9]*)$/;\n\n/**\n * Regular expression used to verify 64 bit (`int64` etc.) map keys.\n * @type {RegExp}\n * @const\n */\nutil.key64Re = /^(?:[\\\\x00-\\\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;\n\n/**\n * Converts a number or long to an 8 characters long hash string.\n * @param {Long|number} value Value to convert\n * @returns {string} Hash\n */\nutil.longToHash = function longToHash(value) {\n return value\n ? util.LongBits.from(value).toHash()\n : util.LongBits.zeroHash;\n};\n\n/**\n * Converts an 8 characters long hash string to a long or number.\n * @param {string} hash Hash\n * @param {boolean} [unsigned=false] Whether unsigned or not\n * @returns {Long|number} Original value\n */\nutil.longFromHash = function longFromHash(hash, unsigned) {\n var bits = util.LongBits.fromHash(hash);\n if (util.Long)\n return util.Long.fromBits(bits.lo, bits.hi, unsigned);\n return bits.toNumber(Boolean(unsigned));\n};\n\n/**\n * Merges the properties of the source object into the destination object.\n * @memberof util\n * @param {Object.} dst Destination object\n * @param {Object.} src Source object\n * @param {boolean} [ifNotSet=false] Merges only if the key is not already set\n * @returns {Object.} Destination object\n */\nfunction merge(dst, src, ifNotSet) { // used by converters\n for (var keys = Object.keys(src), i = 0; i < keys.length; ++i)\n if (dst[keys[i]] === undefined || !ifNotSet)\n dst[keys[i]] = src[keys[i]];\n return dst;\n}\n\nutil.merge = merge;\n\n/**\n * Converts the first character of a string to lower case.\n * @param {string} str String to convert\n * @returns {string} Converted string\n */\nutil.lcFirst = function lcFirst(str) {\n return str.charAt(0).toLowerCase() + str.substring(1);\n};\n\n/**\n * Creates a custom error constructor.\n * @memberof util\n * @param {string} name Error name\n * @returns {Constructor} Custom error constructor\n */\nfunction newError(name) {\n\n function CustomError(message, properties) {\n\n if (!(this instanceof CustomError))\n return new CustomError(message, properties);\n\n // Error.call(this, message);\n // ^ just returns a new error instance because the ctor can be called as a function\n\n Object.defineProperty(this, \"message\", { get: function() { return message; } });\n\n /* istanbul ignore next */\n if (Error.captureStackTrace) // node\n Error.captureStackTrace(this, CustomError);\n else\n Object.defineProperty(this, \"stack\", { value: new Error().stack || \"\" });\n\n if (properties)\n merge(this, properties);\n }\n\n (CustomError.prototype = Object.create(Error.prototype)).constructor = CustomError;\n\n Object.defineProperty(CustomError.prototype, \"name\", { get: function() { return name; } });\n\n CustomError.prototype.toString = function toString() {\n return this.name + \": \" + this.message;\n };\n\n return CustomError;\n}\n\nutil.newError = newError;\n\n/**\n * Constructs a new protocol error.\n * @classdesc Error subclass indicating a protocol specifc error.\n * @memberof util\n * @extends Error\n * @template T extends Message\n * @constructor\n * @param {string} message Error message\n * @param {Object.} [properties] Additional properties\n * @example\n * try {\n * MyMessage.decode(someBuffer); // throws if required fields are missing\n * } catch (e) {\n * if (e instanceof ProtocolError && e.instance)\n * console.log(\"decoded so far: \" + JSON.stringify(e.instance));\n * }\n */\nutil.ProtocolError = newError(\"ProtocolError\");\n\n/**\n * So far decoded message instance.\n * @name util.ProtocolError#instance\n * @type {Message}\n */\n\n/**\n * A OneOf getter as returned by {@link util.oneOfGetter}.\n * @typedef OneOfGetter\n * @type {function}\n * @returns {string|undefined} Set field name, if any\n */\n\n/**\n * Builds a getter for a oneof's present field name.\n * @param {string[]} fieldNames Field names\n * @returns {OneOfGetter} Unbound getter\n */\nutil.oneOfGetter = function getOneOf(fieldNames) {\n var fieldMap = {};\n for (var i = 0; i < fieldNames.length; ++i)\n fieldMap[fieldNames[i]] = 1;\n\n /**\n * @returns {string|undefined} Set field name, if any\n * @this Object\n * @ignore\n */\n return function() { // eslint-disable-line consistent-return\n for (var keys = Object.keys(this), i = keys.length - 1; i > -1; --i)\n if (fieldMap[keys[i]] === 1 && this[keys[i]] !== undefined && this[keys[i]] !== null)\n return keys[i];\n };\n};\n\n/**\n * A OneOf setter as returned by {@link util.oneOfSetter}.\n * @typedef OneOfSetter\n * @type {function}\n * @param {string|undefined} value Field name\n * @returns {undefined}\n */\n\n/**\n * Builds a setter for a oneof's present field name.\n * @param {string[]} fieldNames Field names\n * @returns {OneOfSetter} Unbound setter\n */\nutil.oneOfSetter = function setOneOf(fieldNames) {\n\n /**\n * @param {string} name Field name\n * @returns {undefined}\n * @this Object\n * @ignore\n */\n return function(name) {\n for (var i = 0; i < fieldNames.length; ++i)\n if (fieldNames[i] !== name)\n delete this[fieldNames[i]];\n };\n};\n\n/**\n * Default conversion options used for {@link Message#toJSON} implementations.\n *\n * These options are close to proto3's JSON mapping with the exception that internal types like Any are handled just like messages. More precisely:\n *\n * - Longs become strings\n * - Enums become string keys\n * - Bytes become base64 encoded strings\n * - (Sub-)Messages become plain objects\n * - Maps become plain objects with all string keys\n * - Repeated fields become arrays\n * - NaN and Infinity for float and double fields become strings\n *\n * @type {IConversionOptions}\n * @see https://developers.google.com/protocol-buffers/docs/proto3?hl=en#json\n */\nutil.toJSONOptions = {\n longs: String,\n enums: String,\n bytes: String,\n json: true\n};\n\n// Sets up buffer utility according to the environment (called in index-minimal)\nutil._configure = function() {\n var Buffer = util.Buffer;\n /* istanbul ignore if */\n if (!Buffer) {\n util._Buffer_from = util._Buffer_allocUnsafe = null;\n return;\n }\n // because node 4.x buffers are incompatible & immutable\n // see: https://github.com/dcodeIO/protobuf.js/pull/665\n util._Buffer_from = Buffer.from !== Uint8Array.from && Buffer.from ||\n /* istanbul ignore next */\n function Buffer_from(value, encoding) {\n return new Buffer(value, encoding);\n };\n util._Buffer_allocUnsafe = Buffer.allocUnsafe ||\n /* istanbul ignore next */\n function Buffer_allocUnsafe(size) {\n return new Buffer(size);\n };\n};\n","/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\nexport default class Status {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case Status.Ok:\n return \"OK\";\n case Status.InvalidTransaction:\n return \"INVALID_TRANSACTION\";\n case Status.PayerAccountNotFound:\n return \"PAYER_ACCOUNT_NOT_FOUND\";\n case Status.InvalidNodeAccount:\n return \"INVALID_NODE_ACCOUNT\";\n case Status.TransactionExpired:\n return \"TRANSACTION_EXPIRED\";\n case Status.InvalidTransactionStart:\n return \"INVALID_TRANSACTION_START\";\n case Status.InvalidTransactionDuration:\n return \"INVALID_TRANSACTION_DURATION\";\n case Status.InvalidSignature:\n return \"INVALID_SIGNATURE\";\n case Status.MemoTooLong:\n return \"MEMO_TOO_LONG\";\n case Status.InsufficientTxFee:\n return \"INSUFFICIENT_TX_FEE\";\n case Status.InsufficientPayerBalance:\n return \"INSUFFICIENT_PAYER_BALANCE\";\n case Status.DuplicateTransaction:\n return \"DUPLICATE_TRANSACTION\";\n case Status.Busy:\n return \"BUSY\";\n case Status.NotSupported:\n return \"NOT_SUPPORTED\";\n case Status.InvalidFileId:\n return \"INVALID_FILE_ID\";\n case Status.InvalidAccountId:\n return \"INVALID_ACCOUNT_ID\";\n case Status.InvalidContractId:\n return \"INVALID_CONTRACT_ID\";\n case Status.InvalidTransactionId:\n return \"INVALID_TRANSACTION_ID\";\n case Status.ReceiptNotFound:\n return \"RECEIPT_NOT_FOUND\";\n case Status.RecordNotFound:\n return \"RECORD_NOT_FOUND\";\n case Status.InvalidSolidityId:\n return \"INVALID_SOLIDITY_ID\";\n case Status.Unknown:\n return \"UNKNOWN\";\n case Status.Success:\n return \"SUCCESS\";\n case Status.FailInvalid:\n return \"FAIL_INVALID\";\n case Status.FailFee:\n return \"FAIL_FEE\";\n case Status.FailBalance:\n return \"FAIL_BALANCE\";\n case Status.KeyRequired:\n return \"KEY_REQUIRED\";\n case Status.BadEncoding:\n return \"BAD_ENCODING\";\n case Status.InsufficientAccountBalance:\n return \"INSUFFICIENT_ACCOUNT_BALANCE\";\n case Status.InvalidSolidityAddress:\n return \"INVALID_SOLIDITY_ADDRESS\";\n case Status.InsufficientGas:\n return \"INSUFFICIENT_GAS\";\n case Status.ContractSizeLimitExceeded:\n return \"CONTRACT_SIZE_LIMIT_EXCEEDED\";\n case Status.LocalCallModificationException:\n return \"LOCAL_CALL_MODIFICATION_EXCEPTION\";\n case Status.ContractRevertExecuted:\n return \"CONTRACT_REVERT_EXECUTED\";\n case Status.ContractExecutionException:\n return \"CONTRACT_EXECUTION_EXCEPTION\";\n case Status.InvalidReceivingNodeAccount:\n return \"INVALID_RECEIVING_NODE_ACCOUNT\";\n case Status.MissingQueryHeader:\n return \"MISSING_QUERY_HEADER\";\n case Status.AccountUpdateFailed:\n return \"ACCOUNT_UPDATE_FAILED\";\n case Status.InvalidKeyEncoding:\n return \"INVALID_KEY_ENCODING\";\n case Status.NullSolidityAddress:\n return \"NULL_SOLIDITY_ADDRESS\";\n case Status.ContractUpdateFailed:\n return \"CONTRACT_UPDATE_FAILED\";\n case Status.InvalidQueryHeader:\n return \"INVALID_QUERY_HEADER\";\n case Status.InvalidFeeSubmitted:\n return \"INVALID_FEE_SUBMITTED\";\n case Status.InvalidPayerSignature:\n return \"INVALID_PAYER_SIGNATURE\";\n case Status.KeyNotProvided:\n return \"KEY_NOT_PROVIDED\";\n case Status.InvalidExpirationTime:\n return \"INVALID_EXPIRATION_TIME\";\n case Status.NoWaclKey:\n return \"NO_WACL_KEY\";\n case Status.FileContentEmpty:\n return \"FILE_CONTENT_EMPTY\";\n case Status.InvalidAccountAmounts:\n return \"INVALID_ACCOUNT_AMOUNTS\";\n case Status.EmptyTransactionBody:\n return \"EMPTY_TRANSACTION_BODY\";\n case Status.InvalidTransactionBody:\n return \"INVALID_TRANSACTION_BODY\";\n case Status.InvalidSignatureTypeMismatchingKey:\n return \"INVALID_SIGNATURE_TYPE_MISMATCHING_KEY\";\n case Status.InvalidSignatureCountMismatchingKey:\n return \"INVALID_SIGNATURE_COUNT_MISMATCHING_KEY\";\n case Status.EmptyLiveHashBody:\n return \"EMPTY_LIVE_HASH_BODY\";\n case Status.EmptyLiveHash:\n return \"EMPTY_LIVE_HASH\";\n case Status.EmptyLiveHashKeys:\n return \"EMPTY_LIVE_HASH_KEYS\";\n case Status.InvalidLiveHashSize:\n return \"INVALID_LIVE_HASH_SIZE\";\n case Status.EmptyQueryBody:\n return \"EMPTY_QUERY_BODY\";\n case Status.EmptyLiveHashQuery:\n return \"EMPTY_LIVE_HASH_QUERY\";\n case Status.LiveHashNotFound:\n return \"LIVE_HASH_NOT_FOUND\";\n case Status.AccountIdDoesNotExist:\n return \"ACCOUNT_ID_DOES_NOT_EXIST\";\n case Status.LiveHashAlreadyExists:\n return \"LIVE_HASH_ALREADY_EXISTS\";\n case Status.InvalidFileWacl:\n return \"INVALID_FILE_WACL\";\n case Status.SerializationFailed:\n return \"SERIALIZATION_FAILED\";\n case Status.TransactionOversize:\n return \"TRANSACTION_OVERSIZE\";\n case Status.TransactionTooManyLayers:\n return \"TRANSACTION_TOO_MANY_LAYERS\";\n case Status.ContractDeleted:\n return \"CONTRACT_DELETED\";\n case Status.PlatformNotActive:\n return \"PLATFORM_NOT_ACTIVE\";\n case Status.KeyPrefixMismatch:\n return \"KEY_PREFIX_MISMATCH\";\n case Status.PlatformTransactionNotCreated:\n return \"PLATFORM_TRANSACTION_NOT_CREATED\";\n case Status.InvalidRenewalPeriod:\n return \"INVALID_RENEWAL_PERIOD\";\n case Status.InvalidPayerAccountId:\n return \"INVALID_PAYER_ACCOUNT_ID\";\n case Status.AccountDeleted:\n return \"ACCOUNT_DELETED\";\n case Status.FileDeleted:\n return \"FILE_DELETED\";\n case Status.AccountRepeatedInAccountAmounts:\n return \"ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS\";\n case Status.SettingNegativeAccountBalance:\n return \"SETTING_NEGATIVE_ACCOUNT_BALANCE\";\n case Status.ObtainerRequired:\n return \"OBTAINER_REQUIRED\";\n case Status.ObtainerSameContractId:\n return \"OBTAINER_SAME_CONTRACT_ID\";\n case Status.ObtainerDoesNotExist:\n return \"OBTAINER_DOES_NOT_EXIST\";\n case Status.ModifyingImmutableContract:\n return \"MODIFYING_IMMUTABLE_CONTRACT\";\n case Status.FileSystemException:\n return \"FILE_SYSTEM_EXCEPTION\";\n case Status.AutorenewDurationNotInRange:\n return \"AUTORENEW_DURATION_NOT_IN_RANGE\";\n case Status.ErrorDecodingBytestring:\n return \"ERROR_DECODING_BYTESTRING\";\n case Status.ContractFileEmpty:\n return \"CONTRACT_FILE_EMPTY\";\n case Status.ContractBytecodeEmpty:\n return \"CONTRACT_BYTECODE_EMPTY\";\n case Status.InvalidInitialBalance:\n return \"INVALID_INITIAL_BALANCE\";\n case Status.InvalidReceiveRecordThreshold:\n return \"INVALID_RECEIVE_RECORD_THRESHOLD\";\n case Status.InvalidSendRecordThreshold:\n return \"INVALID_SEND_RECORD_THRESHOLD\";\n case Status.AccountIsNotGenesisAccount:\n return \"ACCOUNT_IS_NOT_GENESIS_ACCOUNT\";\n case Status.PayerAccountUnauthorized:\n return \"PAYER_ACCOUNT_UNAUTHORIZED\";\n case Status.InvalidFreezeTransactionBody:\n return \"INVALID_FREEZE_TRANSACTION_BODY\";\n case Status.FreezeTransactionBodyNotFound:\n return \"FREEZE_TRANSACTION_BODY_NOT_FOUND\";\n case Status.TransferListSizeLimitExceeded:\n return \"TRANSFER_LIST_SIZE_LIMIT_EXCEEDED\";\n case Status.ResultSizeLimitExceeded:\n return \"RESULT_SIZE_LIMIT_EXCEEDED\";\n case Status.NotSpecialAccount:\n return \"NOT_SPECIAL_ACCOUNT\";\n case Status.ContractNegativeGas:\n return \"CONTRACT_NEGATIVE_GAS\";\n case Status.ContractNegativeValue:\n return \"CONTRACT_NEGATIVE_VALUE\";\n case Status.InvalidFeeFile:\n return \"INVALID_FEE_FILE\";\n case Status.InvalidExchangeRateFile:\n return \"INVALID_EXCHANGE_RATE_FILE\";\n case Status.InsufficientLocalCallGas:\n return \"INSUFFICIENT_LOCAL_CALL_GAS\";\n case Status.EntityNotAllowedToDelete:\n return \"ENTITY_NOT_ALLOWED_TO_DELETE\";\n case Status.AuthorizationFailed:\n return \"AUTHORIZATION_FAILED\";\n case Status.FileUploadedProtoInvalid:\n return \"FILE_UPLOADED_PROTO_INVALID\";\n case Status.FileUploadedProtoNotSavedToDisk:\n return \"FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK\";\n case Status.FeeScheduleFilePartUploaded:\n return \"FEE_SCHEDULE_FILE_PART_UPLOADED\";\n case Status.ExchangeRateChangeLimitExceeded:\n return \"EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED\";\n case Status.MaxContractStorageExceeded:\n return \"MAX_CONTRACT_STORAGE_EXCEEDED\";\n case Status.TransferAccountSameAsDeleteAccount:\n return \"TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT\";\n case Status.TotalLedgerBalanceInvalid:\n return \"TOTAL_LEDGER_BALANCE_INVALID\";\n case Status.ExpirationReductionNotAllowed:\n return \"EXPIRATION_REDUCTION_NOT_ALLOWED\";\n case Status.MaxGasLimitExceeded:\n return \"MAX_GAS_LIMIT_EXCEEDED\";\n case Status.MaxFileSizeExceeded:\n return \"MAX_FILE_SIZE_EXCEEDED\";\n case Status.ReceiverSigRequired:\n return \"RECEIVER_SIG_REQUIRED\";\n case Status.InvalidTopicId:\n return \"INVALID_TOPIC_ID\";\n case Status.InvalidAdminKey:\n return \"INVALID_ADMIN_KEY\";\n case Status.InvalidSubmitKey:\n return \"INVALID_SUBMIT_KEY\";\n case Status.Unauthorized:\n return \"UNAUTHORIZED\";\n case Status.InvalidTopicMessage:\n return \"INVALID_TOPIC_MESSAGE\";\n case Status.InvalidAutorenewAccount:\n return \"INVALID_AUTORENEW_ACCOUNT\";\n case Status.AutorenewAccountNotAllowed:\n return \"AUTORENEW_ACCOUNT_NOT_ALLOWED\";\n case Status.TopicExpired:\n return \"TOPIC_EXPIRED\";\n case Status.InvalidChunkNumber:\n return \"INVALID_CHUNK_NUMBER\";\n case Status.InvalidChunkTransactionId:\n return \"INVALID_CHUNK_TRANSACTION_ID\";\n case Status.AccountFrozenForToken:\n return \"ACCOUNT_FROZEN_FOR_TOKEN\";\n case Status.TokensPerAccountLimitExceeded:\n return \"TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED\";\n case Status.InvalidTokenId:\n return \"INVALID_TOKEN_ID\";\n case Status.InvalidTokenDecimals:\n return \"INVALID_TOKEN_DECIMALS\";\n case Status.InvalidTokenInitialSupply:\n return \"INVALID_TOKEN_INITIAL_SUPPLY\";\n case Status.InvalidTreasuryAccountForToken:\n return \"INVALID_TREASURY_ACCOUNT_FOR_TOKEN\";\n case Status.InvalidTokenSymbol:\n return \"INVALID_TOKEN_SYMBOL\";\n case Status.TokenHasNoFreezeKey:\n return \"TOKEN_HAS_NO_FREEZE_KEY\";\n case Status.TransfersNotZeroSumForToken:\n return \"TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN\";\n case Status.MissingTokenSymbol:\n return \"MISSING_TOKEN_SYMBOL\";\n case Status.TokenSymbolTooLong:\n return \"TOKEN_SYMBOL_TOO_LONG\";\n case Status.AccountKycNotGrantedForToken:\n return \"ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN\";\n case Status.TokenHasNoKycKey:\n return \"TOKEN_HAS_NO_KYC_KEY\";\n case Status.InsufficientTokenBalance:\n return \"INSUFFICIENT_TOKEN_BALANCE\";\n case Status.TokenWasDeleted:\n return \"TOKEN_WAS_DELETED\";\n case Status.TokenHasNoSupplyKey:\n return \"TOKEN_HAS_NO_SUPPLY_KEY\";\n case Status.TokenHasNoWipeKey:\n return \"TOKEN_HAS_NO_WIPE_KEY\";\n case Status.InvalidTokenMintAmount:\n return \"INVALID_TOKEN_MINT_AMOUNT\";\n case Status.InvalidTokenBurnAmount:\n return \"INVALID_TOKEN_BURN_AMOUNT\";\n case Status.TokenNotAssociatedToAccount:\n return \"TOKEN_NOT_ASSOCIATED_TO_ACCOUNT\";\n case Status.CannotWipeTokenTreasuryAccount:\n return \"CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT\";\n case Status.InvalidKycKey:\n return \"INVALID_KYC_KEY\";\n case Status.InvalidWipeKey:\n return \"INVALID_WIPE_KEY\";\n case Status.InvalidFreezeKey:\n return \"INVALID_FREEZE_KEY\";\n case Status.InvalidSupplyKey:\n return \"INVALID_SUPPLY_KEY\";\n case Status.MissingTokenName:\n return \"MISSING_TOKEN_NAME\";\n case Status.TokenNameTooLong:\n return \"TOKEN_NAME_TOO_LONG\";\n case Status.InvalidWipingAmount:\n return \"INVALID_WIPING_AMOUNT\";\n case Status.TokenIsImmutable:\n return \"TOKEN_IS_IMMUTABLE\";\n case Status.TokenAlreadyAssociatedToAccount:\n return \"TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT\";\n case Status.TransactionRequiresZeroTokenBalances:\n return \"TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES\";\n case Status.AccountIsTreasury:\n return \"ACCOUNT_IS_TREASURY\";\n case Status.TokenIdRepeatedInTokenList:\n return \"TOKEN_ID_REPEATED_IN_TOKEN_LIST\";\n case Status.TokenTransferListSizeLimitExceeded:\n return \"TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED\";\n case Status.EmptyTokenTransferBody:\n return \"EMPTY_TOKEN_TRANSFER_BODY\";\n case Status.EmptyTokenTransferAccountAmounts:\n return \"EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS\";\n case Status.InvalidScheduleId:\n return \"INVALID_SCHEDULE_ID\";\n case Status.ScheduleIsImmutable:\n return \"SCHEDULE_IS_IMMUTABLE\";\n case Status.InvalidSchedulePayerId:\n return \"INVALID_SCHEDULE_PAYER_ID\";\n case Status.InvalidScheduleAccountId:\n return \"INVALID_SCHEDULE_ACCOUNT_ID\";\n case Status.NoNewValidSignatures:\n return \"NO_NEW_VALID_SIGNATURES\";\n case Status.UnresolvableRequiredSigners:\n return \"UNRESOLVABLE_REQUIRED_SIGNERS\";\n case Status.ScheduledTransactionNotInWhitelist:\n return \"SCHEDULED_TRANSACTION_NOT_IN_WHITELIST\";\n case Status.SomeSignaturesWereInvalid:\n return \"SOME_SIGNATURES_WERE_INVALID\";\n case Status.TransactionIdFieldNotAllowed:\n return \"TRANSACTION_ID_FIELD_NOT_ALLOWED\";\n case Status.IdenticalScheduleAlreadyCreated:\n return \"IDENTICAL_SCHEDULE_ALREADY_CREATED\";\n case Status.InvalidZeroByteInString:\n return \"INVALID_ZERO_BYTE_IN_STRING\";\n case Status.ScheduleAlreadyDeleted:\n return \"SCHEDULE_ALREADY_DELETED\";\n case Status.ScheduleAlreadyExecuted:\n return \"SCHEDULE_ALREADY_EXECUTED\";\n case Status.MessageSizeTooLarge:\n return \"MESSAGE_SIZE_TOO_LARGE\";\n case Status.OperationRepeatedInBucketGroups:\n return \"OPERATION_REPEATED_IN_BUCKET_GROUPS\";\n case Status.BucketCapacityOverflow:\n return \"BUCKET_CAPACITY_OVERFLOW\";\n case Status.NodeCapacityNotSufficientForOperation:\n return \"NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION\";\n case Status.BucketHasNoThrottleGroups:\n return \"BUCKET_HAS_NO_THROTTLE_GROUPS\";\n case Status.ThrottleGroupHasZeroOpsPerSec:\n return \"THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC\";\n case Status.SuccessButMissingExpectedOperation:\n return \"SUCCESS_BUT_MISSING_EXPECTED_OPERATION\";\n case Status.UnparseableThrottleDefinitions:\n return \"UNPARSEABLE_THROTTLE_DEFINITIONS\";\n case Status.InvalidThrottleDefinitions:\n return \"INVALID_THROTTLE_DEFINITIONS\";\n case Status.AccountExpiredAndPendingRemoval:\n return \"ACCOUNT_EXPIRED_AND_PENDING_REMOVAL\";\n case Status.InvalidTokenMaxSupply:\n return \"INVALID_TOKEN_MAX_SUPPLY\";\n case Status.InvalidTokenNftSerialNumber:\n return \"INVALID_TOKEN_NFT_SERIAL_NUMBER\";\n case Status.InvalidNftId:\n return \"INVALID_NFT_ID\";\n case Status.MetadataTooLong:\n return \"METADATA_TOO_LONG\";\n case Status.BatchSizeLimitExceeded:\n return \"BATCH_SIZE_LIMIT_EXCEEDED\";\n case Status.InvalidQueryRange:\n return \"INVALID_QUERY_RANGE\";\n case Status.FractionDividesByZero:\n return \"FRACTION_DIVIDES_BY_ZERO\";\n case Status.InsufficientPayerBalanceForCustomFee:\n return \"INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE\";\n case Status.CustomFeesListTooLong:\n return \"CUSTOM_FEES_LIST_TOO_LONG\";\n case Status.InvalidCustomFeeCollector:\n return \"INVALID_CUSTOM_FEE_COLLECTOR\";\n case Status.InvalidTokenIdInCustomFees:\n return \"INVALID_TOKEN_ID_IN_CUSTOM_FEES\";\n case Status.TokenNotAssociatedToFeeCollector:\n return \"TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR\";\n case Status.TokenMaxSupplyReached:\n return \"TOKEN_MAX_SUPPLY_REACHED\";\n case Status.SenderDoesNotOwnNftSerialNo:\n return \"SENDER_DOES_NOT_OWN_NFT_SERIAL_NO\";\n case Status.CustomFeeNotFullySpecified:\n return \"CUSTOM_FEE_NOT_FULLY_SPECIFIED\";\n case Status.CustomFeeMustBePositive:\n return \"CUSTOM_FEE_MUST_BE_POSITIVE\";\n case Status.TokenHasNoFeeScheduleKey:\n return \"TOKEN_HAS_NO_FEE_SCHEDULE_KEY\";\n case Status.CustomFeeOutsideNumericRange:\n return \"CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE\";\n case Status.RoyaltyFractionCannotExceedOne:\n return \"ROYALTY_FRACTION_CANNOT_EXCEED_ONE\";\n case Status.FractionalFeeMaxAmountLessThanMinAmount:\n return \"FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT\";\n case Status.CustomScheduleAlreadyHasNoFees:\n return \"CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES\";\n case Status.CustomFeeDenominationMustBeFungibleCommon:\n return \"CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON\";\n case Status.CustomFractionalFeeOnlyAllowedForFungibleCommon:\n return \"CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON\";\n case Status.InvalidCustomFeeScheduleKey:\n return \"INVALID_CUSTOM_FEE_SCHEDULE_KEY\";\n case Status.InvalidTokenMintMetadata:\n return \"INVALID_TOKEN_MINT_METADATA\";\n case Status.InvalidTokenBurnMetadata:\n return \"INVALID_TOKEN_BURN_METADATA\";\n case Status.CurrentTreasuryStillOwnsNfts:\n return \"CURRENT_TREASURY_STILL_OWNS_NFTS\";\n case Status.AccountStillOwnsNfts:\n return \"ACCOUNT_STILL_OWNS_NFTS\";\n case Status.TreasuryMustOwnBurnedNft:\n return \"TREASURY_MUST_OWN_BURNED_NFT\";\n case Status.AccountDoesNotOwnWipedNft:\n return \"ACCOUNT_DOES_NOT_OWN_WIPED_NFT\";\n case Status.AccountAmountTransfersOnlyAllowedForFungibleCommon:\n return \"ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON\";\n case Status.MaxNftsInPriceRegimeHaveBeenMinted:\n return \"MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED\";\n case Status.PayerAccountDeleted:\n return \"PAYER_ACCOUNT_DELETED\";\n case Status.CustomFeeChargingExceededMaxRecursionDepth:\n return \"CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH\";\n case Status.CustomFeeChargingExceededMaxAccountAmounts:\n return \"CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS\";\n case Status.InsufficientSenderAccountBalanceForCustomFee:\n return \"INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE\";\n case Status.SerialNumberLimitReached:\n return \"SERIAL_NUMBER_LIMIT_REACHED\";\n case Status.CustomRoyaltyFeeOnlyAllowedForNonFungibleUnique:\n return \"CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE\";\n case Status.NoRemainingAutomaticAssociations:\n return \"NO_REMAINING_AUTOMATIC_ASSOCIATIONS\";\n case Status.ExistingAutomaticAssociationsExceedGivenLimit:\n return \"EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT\";\n case Status.RequestedNumAutomaticAssociationsExceedsAssociationLimit:\n return \"REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT\";\n case Status.TokenIsPaused:\n return \"TOKEN_IS_PAUSED\";\n case Status.TokenHasNoPauseKey:\n return \"TOKEN_HAS_NO_PAUSE_KEY\";\n case Status.InvalidPauseKey:\n return \"INVALID_PAUSE_KEY\";\n case Status.FreezeUpdateFileDoesNotExist:\n return \"FREEZE_UPDATE_FILE_DOES_NOT_EXIST\";\n case Status.FreezeUpdateFileHashDoesNotMatch:\n return \"FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH\";\n case Status.NoUpgradeHasBeenPrepared:\n return \"NO_UPGRADE_HAS_BEEN_PREPARED\";\n case Status.NoFreezeIsScheduled:\n return \"NO_FREEZE_IS_SCHEDULED\";\n case Status.UpdateFileHashChangedSincePrepareUpgrade:\n return \"UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE\";\n case Status.FreezeStartTimeMustBeFuture:\n return \"FREEZE_START_TIME_MUST_BE_FUTURE\";\n case Status.PreparedUpdateFileIsImmutable:\n return \"PREPARED_UPDATE_FILE_IS_IMMUTABLE\";\n case Status.FreezeAlreadyScheduled:\n return \"FREEZE_ALREADY_SCHEDULED\";\n case Status.FreezeUpgradeInProgress:\n return \"FREEZE_UPGRADE_IN_PROGRESS\";\n case Status.UpdateFileIdDoesNotMatchPrepared:\n return \"UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED\";\n case Status.UpdateFileHashDoesNotMatchPrepared:\n return \"UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED\";\n case Status.ConsensusGasExhausted:\n return \"CONSENSUS_GAS_EXHAUSTED\";\n case Status.RevertedSuccess:\n return \"REVERTED_SUCCESS\";\n case Status.MaxStorageInPriceRegimeHasBeenUsed:\n return \"MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED\";\n case Status.InvalidAliasKey:\n return \"INVALID_ALIAS_KEY\";\n case Status.UnexpectedTokenDecimals:\n return \"UNEXPECTED_TOKEN_DECIMALS\";\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {Status}\n */\n static _fromCode(code) {\n switch (code) {\n case 0:\n return Status.Ok;\n case 1:\n return Status.InvalidTransaction;\n case 2:\n return Status.PayerAccountNotFound;\n case 3:\n return Status.InvalidNodeAccount;\n case 4:\n return Status.TransactionExpired;\n case 5:\n return Status.InvalidTransactionStart;\n case 6:\n return Status.InvalidTransactionDuration;\n case 7:\n return Status.InvalidSignature;\n case 8:\n return Status.MemoTooLong;\n case 9:\n return Status.InsufficientTxFee;\n case 10:\n return Status.InsufficientPayerBalance;\n case 11:\n return Status.DuplicateTransaction;\n case 12:\n return Status.Busy;\n case 13:\n return Status.NotSupported;\n case 14:\n return Status.InvalidFileId;\n case 15:\n return Status.InvalidAccountId;\n case 16:\n return Status.InvalidContractId;\n case 17:\n return Status.InvalidTransactionId;\n case 18:\n return Status.ReceiptNotFound;\n case 19:\n return Status.RecordNotFound;\n case 20:\n return Status.InvalidSolidityId;\n case 21:\n return Status.Unknown;\n case 22:\n return Status.Success;\n case 23:\n return Status.FailInvalid;\n case 24:\n return Status.FailFee;\n case 25:\n return Status.FailBalance;\n case 26:\n return Status.KeyRequired;\n case 27:\n return Status.BadEncoding;\n case 28:\n return Status.InsufficientAccountBalance;\n case 29:\n return Status.InvalidSolidityAddress;\n case 30:\n return Status.InsufficientGas;\n case 31:\n return Status.ContractSizeLimitExceeded;\n case 32:\n return Status.LocalCallModificationException;\n case 33:\n return Status.ContractRevertExecuted;\n case 34:\n return Status.ContractExecutionException;\n case 35:\n return Status.InvalidReceivingNodeAccount;\n case 36:\n return Status.MissingQueryHeader;\n case 37:\n return Status.AccountUpdateFailed;\n case 38:\n return Status.InvalidKeyEncoding;\n case 39:\n return Status.NullSolidityAddress;\n case 40:\n return Status.ContractUpdateFailed;\n case 41:\n return Status.InvalidQueryHeader;\n case 42:\n return Status.InvalidFeeSubmitted;\n case 43:\n return Status.InvalidPayerSignature;\n case 44:\n return Status.KeyNotProvided;\n case 45:\n return Status.InvalidExpirationTime;\n case 46:\n return Status.NoWaclKey;\n case 47:\n return Status.FileContentEmpty;\n case 48:\n return Status.InvalidAccountAmounts;\n case 49:\n return Status.EmptyTransactionBody;\n case 50:\n return Status.InvalidTransactionBody;\n case 51:\n return Status.InvalidSignatureTypeMismatchingKey;\n case 52:\n return Status.InvalidSignatureCountMismatchingKey;\n case 53:\n return Status.EmptyLiveHashBody;\n case 54:\n return Status.EmptyLiveHash;\n case 55:\n return Status.EmptyLiveHashKeys;\n case 56:\n return Status.InvalidLiveHashSize;\n case 57:\n return Status.EmptyQueryBody;\n case 58:\n return Status.EmptyLiveHashQuery;\n case 59:\n return Status.LiveHashNotFound;\n case 60:\n return Status.AccountIdDoesNotExist;\n case 61:\n return Status.LiveHashAlreadyExists;\n case 62:\n return Status.InvalidFileWacl;\n case 63:\n return Status.SerializationFailed;\n case 64:\n return Status.TransactionOversize;\n case 65:\n return Status.TransactionTooManyLayers;\n case 66:\n return Status.ContractDeleted;\n case 67:\n return Status.PlatformNotActive;\n case 68:\n return Status.KeyPrefixMismatch;\n case 69:\n return Status.PlatformTransactionNotCreated;\n case 70:\n return Status.InvalidRenewalPeriod;\n case 71:\n return Status.InvalidPayerAccountId;\n case 72:\n return Status.AccountDeleted;\n case 73:\n return Status.FileDeleted;\n case 74:\n return Status.AccountRepeatedInAccountAmounts;\n case 75:\n return Status.SettingNegativeAccountBalance;\n case 76:\n return Status.ObtainerRequired;\n case 77:\n return Status.ObtainerSameContractId;\n case 78:\n return Status.ObtainerDoesNotExist;\n case 79:\n return Status.ModifyingImmutableContract;\n case 80:\n return Status.FileSystemException;\n case 81:\n return Status.AutorenewDurationNotInRange;\n case 82:\n return Status.ErrorDecodingBytestring;\n case 83:\n return Status.ContractFileEmpty;\n case 84:\n return Status.ContractBytecodeEmpty;\n case 85:\n return Status.InvalidInitialBalance;\n case 86:\n return Status.InvalidReceiveRecordThreshold;\n case 87:\n return Status.InvalidSendRecordThreshold;\n case 88:\n return Status.AccountIsNotGenesisAccount;\n case 89:\n return Status.PayerAccountUnauthorized;\n case 90:\n return Status.InvalidFreezeTransactionBody;\n case 91:\n return Status.FreezeTransactionBodyNotFound;\n case 92:\n return Status.TransferListSizeLimitExceeded;\n case 93:\n return Status.ResultSizeLimitExceeded;\n case 94:\n return Status.NotSpecialAccount;\n case 95:\n return Status.ContractNegativeGas;\n case 96:\n return Status.ContractNegativeValue;\n case 97:\n return Status.InvalidFeeFile;\n case 98:\n return Status.InvalidExchangeRateFile;\n case 99:\n return Status.InsufficientLocalCallGas;\n case 100:\n return Status.EntityNotAllowedToDelete;\n case 101:\n return Status.AuthorizationFailed;\n case 102:\n return Status.FileUploadedProtoInvalid;\n case 103:\n return Status.FileUploadedProtoNotSavedToDisk;\n case 104:\n return Status.FeeScheduleFilePartUploaded;\n case 105:\n return Status.ExchangeRateChangeLimitExceeded;\n case 106:\n return Status.MaxContractStorageExceeded;\n case 107:\n return Status.TransferAccountSameAsDeleteAccount;\n case 108:\n return Status.TotalLedgerBalanceInvalid;\n case 110:\n return Status.ExpirationReductionNotAllowed;\n case 111:\n return Status.MaxGasLimitExceeded;\n case 112:\n return Status.MaxFileSizeExceeded;\n case 113:\n return Status.ReceiverSigRequired;\n case 150:\n return Status.InvalidTopicId;\n case 155:\n return Status.InvalidAdminKey;\n case 156:\n return Status.InvalidSubmitKey;\n case 157:\n return Status.Unauthorized;\n case 158:\n return Status.InvalidTopicMessage;\n case 159:\n return Status.InvalidAutorenewAccount;\n case 160:\n return Status.AutorenewAccountNotAllowed;\n case 162:\n return Status.TopicExpired;\n case 163:\n return Status.InvalidChunkNumber;\n case 164:\n return Status.InvalidChunkTransactionId;\n case 165:\n return Status.AccountFrozenForToken;\n case 166:\n return Status.TokensPerAccountLimitExceeded;\n case 167:\n return Status.InvalidTokenId;\n case 168:\n return Status.InvalidTokenDecimals;\n case 169:\n return Status.InvalidTokenInitialSupply;\n case 170:\n return Status.InvalidTreasuryAccountForToken;\n case 171:\n return Status.InvalidTokenSymbol;\n case 172:\n return Status.TokenHasNoFreezeKey;\n case 173:\n return Status.TransfersNotZeroSumForToken;\n case 174:\n return Status.MissingTokenSymbol;\n case 175:\n return Status.TokenSymbolTooLong;\n case 176:\n return Status.AccountKycNotGrantedForToken;\n case 177:\n return Status.TokenHasNoKycKey;\n case 178:\n return Status.InsufficientTokenBalance;\n case 179:\n return Status.TokenWasDeleted;\n case 180:\n return Status.TokenHasNoSupplyKey;\n case 181:\n return Status.TokenHasNoWipeKey;\n case 182:\n return Status.InvalidTokenMintAmount;\n case 183:\n return Status.InvalidTokenBurnAmount;\n case 184:\n return Status.TokenNotAssociatedToAccount;\n case 185:\n return Status.CannotWipeTokenTreasuryAccount;\n case 186:\n return Status.InvalidKycKey;\n case 187:\n return Status.InvalidWipeKey;\n case 188:\n return Status.InvalidFreezeKey;\n case 189:\n return Status.InvalidSupplyKey;\n case 190:\n return Status.MissingTokenName;\n case 191:\n return Status.TokenNameTooLong;\n case 192:\n return Status.InvalidWipingAmount;\n case 193:\n return Status.TokenIsImmutable;\n case 194:\n return Status.TokenAlreadyAssociatedToAccount;\n case 195:\n return Status.TransactionRequiresZeroTokenBalances;\n case 196:\n return Status.AccountIsTreasury;\n case 197:\n return Status.TokenIdRepeatedInTokenList;\n case 198:\n return Status.TokenTransferListSizeLimitExceeded;\n case 199:\n return Status.EmptyTokenTransferBody;\n case 200:\n return Status.EmptyTokenTransferAccountAmounts;\n case 201:\n return Status.InvalidScheduleId;\n case 202:\n return Status.ScheduleIsImmutable;\n case 203:\n return Status.InvalidSchedulePayerId;\n case 204:\n return Status.InvalidScheduleAccountId;\n case 205:\n return Status.NoNewValidSignatures;\n case 206:\n return Status.UnresolvableRequiredSigners;\n case 207:\n return Status.ScheduledTransactionNotInWhitelist;\n case 208:\n return Status.SomeSignaturesWereInvalid;\n case 209:\n return Status.TransactionIdFieldNotAllowed;\n case 210:\n return Status.IdenticalScheduleAlreadyCreated;\n case 211:\n return Status.InvalidZeroByteInString;\n case 212:\n return Status.ScheduleAlreadyDeleted;\n case 213:\n return Status.ScheduleAlreadyExecuted;\n case 214:\n return Status.MessageSizeTooLarge;\n case 215:\n return Status.OperationRepeatedInBucketGroups;\n case 216:\n return Status.BucketCapacityOverflow;\n case 217:\n return Status.NodeCapacityNotSufficientForOperation;\n case 218:\n return Status.BucketHasNoThrottleGroups;\n case 219:\n return Status.ThrottleGroupHasZeroOpsPerSec;\n case 220:\n return Status.SuccessButMissingExpectedOperation;\n case 221:\n return Status.UnparseableThrottleDefinitions;\n case 222:\n return Status.InvalidThrottleDefinitions;\n case 223:\n return Status.AccountExpiredAndPendingRemoval;\n case 224:\n return Status.InvalidTokenMaxSupply;\n case 225:\n return Status.InvalidTokenNftSerialNumber;\n case 226:\n return Status.InvalidNftId;\n case 227:\n return Status.MetadataTooLong;\n case 228:\n return Status.BatchSizeLimitExceeded;\n case 229:\n return Status.InvalidQueryRange;\n case 230:\n return Status.FractionDividesByZero;\n case 231:\n return Status.InsufficientPayerBalanceForCustomFee;\n case 232:\n return Status.CustomFeesListTooLong;\n case 233:\n return Status.InvalidCustomFeeCollector;\n case 234:\n return Status.InvalidTokenIdInCustomFees;\n case 235:\n return Status.TokenNotAssociatedToFeeCollector;\n case 236:\n return Status.TokenMaxSupplyReached;\n case 237:\n return Status.SenderDoesNotOwnNftSerialNo;\n case 238:\n return Status.CustomFeeNotFullySpecified;\n case 239:\n return Status.CustomFeeMustBePositive;\n case 240:\n return Status.TokenHasNoFeeScheduleKey;\n case 241:\n return Status.CustomFeeOutsideNumericRange;\n case 242:\n return Status.RoyaltyFractionCannotExceedOne;\n case 243:\n return Status.FractionalFeeMaxAmountLessThanMinAmount;\n case 244:\n return Status.CustomScheduleAlreadyHasNoFees;\n case 245:\n return Status.CustomFeeDenominationMustBeFungibleCommon;\n case 246:\n return Status.CustomFractionalFeeOnlyAllowedForFungibleCommon;\n case 247:\n return Status.InvalidCustomFeeScheduleKey;\n case 248:\n return Status.InvalidTokenMintMetadata;\n case 249:\n return Status.InvalidTokenBurnMetadata;\n case 250:\n return Status.CurrentTreasuryStillOwnsNfts;\n case 251:\n return Status.AccountStillOwnsNfts;\n case 252:\n return Status.TreasuryMustOwnBurnedNft;\n case 253:\n return Status.AccountDoesNotOwnWipedNft;\n case 254:\n return Status.AccountAmountTransfersOnlyAllowedForFungibleCommon;\n case 255:\n return Status.MaxNftsInPriceRegimeHaveBeenMinted;\n case 256:\n return Status.PayerAccountDeleted;\n case 257:\n return Status.CustomFeeChargingExceededMaxRecursionDepth;\n case 258:\n return Status.CustomFeeChargingExceededMaxAccountAmounts;\n case 259:\n return Status.InsufficientSenderAccountBalanceForCustomFee;\n case 260:\n return Status.SerialNumberLimitReached;\n case 261:\n return Status.CustomRoyaltyFeeOnlyAllowedForNonFungibleUnique;\n case 262:\n return Status.NoRemainingAutomaticAssociations;\n case 263:\n return Status.ExistingAutomaticAssociationsExceedGivenLimit;\n case 264:\n return Status.RequestedNumAutomaticAssociationsExceedsAssociationLimit;\n case 265:\n return Status.TokenIsPaused;\n case 266:\n return Status.TokenHasNoPauseKey;\n case 267:\n return Status.InvalidPauseKey;\n case 268:\n return Status.FreezeUpdateFileDoesNotExist;\n case 269:\n return Status.FreezeUpdateFileHashDoesNotMatch;\n case 270:\n return Status.NoUpgradeHasBeenPrepared;\n case 271:\n return Status.NoFreezeIsScheduled;\n case 272:\n return Status.UpdateFileHashChangedSincePrepareUpgrade;\n case 273:\n return Status.FreezeStartTimeMustBeFuture;\n case 274:\n return Status.PreparedUpdateFileIsImmutable;\n case 275:\n return Status.FreezeAlreadyScheduled;\n case 276:\n return Status.FreezeUpgradeInProgress;\n case 277:\n return Status.UpdateFileIdDoesNotMatchPrepared;\n case 278:\n return Status.UpdateFileHashDoesNotMatchPrepared;\n case 279:\n return Status.ConsensusGasExhausted;\n case 280:\n return Status.RevertedSuccess;\n case 281:\n return Status.MaxStorageInPriceRegimeHasBeenUsed;\n case 282:\n return Status.InvalidAliasKey;\n case 283:\n return Status.UnexpectedTokenDecimals;\n default:\n throw new Error(\n `(BUG) Status.fromCode() does not handle code: ${code}`\n );\n }\n }\n\n /**\n * @returns {proto.ResponseCodeEnum}\n */\n valueOf() {\n return this._code;\n }\n}\n\n/**\n * The transaction passed the precheck validations.\n */\nStatus.Ok = new Status(0);\n\n/**\n * For any error not handled by specific error codes listed below.\n */\nStatus.InvalidTransaction = new Status(1);\n\n/**\n * Payer account does not exist.\n */\nStatus.PayerAccountNotFound = new Status(2);\n\n/**\n * Node Account provided does not match the node account of the node the transaction was submitted\n * to.\n */\nStatus.InvalidNodeAccount = new Status(3);\n\n/**\n * Pre-Check error when TransactionValidStart + transactionValidDuration is less than current\n * consensus time.\n */\nStatus.TransactionExpired = new Status(4);\n\n/**\n * Transaction start time is greater than current consensus time\n */\nStatus.InvalidTransactionStart = new Status(5);\n\n/**\n * valid transaction duration is a positive non zero number that does not exceed 120 seconds\n */\nStatus.InvalidTransactionDuration = new Status(6);\n\n/**\n * The transaction signature is not valid\n */\nStatus.InvalidSignature = new Status(7);\n\n/**\n * Transaction memo size exceeded 100 bytes\n */\nStatus.MemoTooLong = new Status(8);\n\n/**\n * The fee provided in the transaction is insufficient for this type of transaction\n */\nStatus.InsufficientTxFee = new Status(9);\n\n/**\n * The payer account has insufficient cryptocurrency to pay the transaction fee\n */\nStatus.InsufficientPayerBalance = new Status(10);\n\n/**\n * This transaction ID is a duplicate of one that was submitted to this node or reached consensus\n * in the last 180 seconds (receipt period)\n */\nStatus.DuplicateTransaction = new Status(11);\n\n/**\n * If API is throttled out\n */\nStatus.Busy = new Status(12);\n\n/**\n * The API is not currently supported\n */\nStatus.NotSupported = new Status(13);\n\n/**\n * The file id is invalid or does not exist\n */\nStatus.InvalidFileId = new Status(14);\n\n/**\n * The account id is invalid or does not exist\n */\nStatus.InvalidAccountId = new Status(15);\n\n/**\n * The contract id is invalid or does not exist\n */\nStatus.InvalidContractId = new Status(16);\n\n/**\n * Transaction id is not valid\n */\nStatus.InvalidTransactionId = new Status(17);\n\n/**\n * Receipt for given transaction id does not exist\n */\nStatus.ReceiptNotFound = new Status(18);\n\n/**\n * Record for given transaction id does not exist\n */\nStatus.RecordNotFound = new Status(19);\n\n/**\n * The solidity id is invalid or entity with this solidity id does not exist\n */\nStatus.InvalidSolidityId = new Status(20);\n\n/**\n * The responding node has submitted the transaction to the network. Its final status is still\n * unknown.\n */\nStatus.Unknown = new Status(21);\n\n/**\n * The transaction succeeded\n */\nStatus.Success = new Status(22);\n\n/**\n * There was a system error and the transaction failed because of invalid request parameters.\n */\nStatus.FailInvalid = new Status(23);\n\n/**\n * There was a system error while performing fee calculation, reserved for future.\n */\nStatus.FailFee = new Status(24);\n\n/**\n * There was a system error while performing balance checks, reserved for future.\n */\nStatus.FailBalance = new Status(25);\n\n/**\n * Key not provided in the transaction body\n */\nStatus.KeyRequired = new Status(26);\n\n/**\n * Unsupported algorithm/encoding used for keys in the transaction\n */\nStatus.BadEncoding = new Status(27);\n\n/**\n * When the account balance is not sufficient for the transfer\n */\nStatus.InsufficientAccountBalance = new Status(28);\n\n/**\n * During an update transaction when the system is not able to find the Users Solidity address\n */\nStatus.InvalidSolidityAddress = new Status(29);\n\n/**\n * Not enough gas was supplied to execute transaction\n */\nStatus.InsufficientGas = new Status(30);\n\n/**\n * contract byte code size is over the limit\n */\nStatus.ContractSizeLimitExceeded = new Status(31);\n\n/**\n * local execution (query) is requested for a function which changes state\n */\nStatus.LocalCallModificationException = new Status(32);\n\n/**\n * Contract REVERT OPCODE executed\n */\nStatus.ContractRevertExecuted = new Status(33);\n\n/**\n * For any contract execution related error not handled by specific error codes listed above.\n */\nStatus.ContractExecutionException = new Status(34);\n\n/**\n * In Query validation, account with +ve(amount) value should be Receiving node account, the\n * receiver account should be only one account in the list\n */\nStatus.InvalidReceivingNodeAccount = new Status(35);\n\n/**\n * Header is missing in Query request\n */\nStatus.MissingQueryHeader = new Status(36);\n\n/**\n * The update of the account failed\n */\nStatus.AccountUpdateFailed = new Status(37);\n\n/**\n * Provided key encoding was not supported by the system\n */\nStatus.InvalidKeyEncoding = new Status(38);\n\n/**\n * null solidity address\n */\nStatus.NullSolidityAddress = new Status(39);\n\n/**\n * update of the contract failed\n */\nStatus.ContractUpdateFailed = new Status(40);\n\n/**\n * the query header is invalid\n */\nStatus.InvalidQueryHeader = new Status(41);\n\n/**\n * Invalid fee submitted\n */\nStatus.InvalidFeeSubmitted = new Status(42);\n\n/**\n * Payer signature is invalid\n */\nStatus.InvalidPayerSignature = new Status(43);\n\n/**\n * The keys were not provided in the request.\n */\nStatus.KeyNotProvided = new Status(44);\n\n/**\n * Expiration time provided in the transaction was invalid.\n */\nStatus.InvalidExpirationTime = new Status(45);\n\n/**\n * WriteAccess Control Keys are not provided for the file\n */\nStatus.NoWaclKey = new Status(46);\n\n/**\n * The contents of file are provided as empty.\n */\nStatus.FileContentEmpty = new Status(47);\n\n/**\n * The crypto transfer credit and debit do not sum equal to 0\n */\nStatus.InvalidAccountAmounts = new Status(48);\n\n/**\n * Transaction body provided is empty\n */\nStatus.EmptyTransactionBody = new Status(49);\n\n/**\n * Invalid transaction body provided\n */\nStatus.InvalidTransactionBody = new Status(50);\n\n/**\n * the type of key (base ed25519 key, KeyList, or ThresholdKey) does not match the type of\n * signature (base ed25519 signature, SignatureList, or ThresholdKeySignature)\n */\nStatus.InvalidSignatureTypeMismatchingKey = new Status(51);\n\n/**\n * the number of key (KeyList, or ThresholdKey) does not match that of signature (SignatureList,\n * or ThresholdKeySignature). e.g. if a keyList has 3 base keys, then the corresponding\n * signatureList should also have 3 base signatures.\n */\nStatus.InvalidSignatureCountMismatchingKey = new Status(52);\n\n/**\n * the livehash body is empty\n */\nStatus.EmptyLiveHashBody = new Status(53);\n\n/**\n * the livehash data is missing\n */\nStatus.EmptyLiveHash = new Status(54);\n\n/**\n * the keys for a livehash are missing\n */\nStatus.EmptyLiveHashKeys = new Status(55);\n\n/**\n * the livehash data is not the output of a SHA-384 digest\n */\nStatus.InvalidLiveHashSize = new Status(56);\n\n/**\n * the query body is empty\n */\nStatus.EmptyQueryBody = new Status(57);\n\n/**\n * the crypto livehash query is empty\n */\nStatus.EmptyLiveHashQuery = new Status(58);\n\n/**\n * the livehash is not present\n */\nStatus.LiveHashNotFound = new Status(59);\n\n/**\n * the account id passed has not yet been created.\n */\nStatus.AccountIdDoesNotExist = new Status(60);\n\n/**\n * the livehash already exists for a given account\n */\nStatus.LiveHashAlreadyExists = new Status(61);\n\n/**\n * File WACL keys are invalid\n */\nStatus.InvalidFileWacl = new Status(62);\n\n/**\n * Serialization failure\n */\nStatus.SerializationFailed = new Status(63);\n\n/**\n * The size of the Transaction is greater than transactionMaxBytes\n */\nStatus.TransactionOversize = new Status(64);\n\n/**\n * The Transaction has more than 50 levels\n */\nStatus.TransactionTooManyLayers = new Status(65);\n\n/**\n * Contract is marked as deleted\n */\nStatus.ContractDeleted = new Status(66);\n\n/**\n * the platform node is either disconnected or lagging behind.\n */\nStatus.PlatformNotActive = new Status(67);\n\n/**\n * one public key matches more than one prefixes on the signature map\n */\nStatus.KeyPrefixMismatch = new Status(68);\n\n/**\n * transaction not created by platform due to large backlog\n */\nStatus.PlatformTransactionNotCreated = new Status(69);\n\n/**\n * auto renewal period is not a positive number of seconds\n */\nStatus.InvalidRenewalPeriod = new Status(70);\n\n/**\n * the response code when a smart contract id is passed for a crypto API request\n */\nStatus.InvalidPayerAccountId = new Status(71);\n\n/**\n * the account has been marked as deleted\n */\nStatus.AccountDeleted = new Status(72);\n\n/**\n * the file has been marked as deleted\n */\nStatus.FileDeleted = new Status(73);\n\n/**\n * same accounts repeated in the transfer account list\n */\nStatus.AccountRepeatedInAccountAmounts = new Status(74);\n\n/**\n * attempting to set negative balance value for crypto account\n */\nStatus.SettingNegativeAccountBalance = new Status(75);\n\n/**\n * when deleting smart contract that has crypto balance either transfer account or transfer smart\n * contract is required\n */\nStatus.ObtainerRequired = new Status(76);\n\n/**\n * when deleting smart contract that has crypto balance you can not use the same contract id as\n * transferContractId as the one being deleted\n */\nStatus.ObtainerSameContractId = new Status(77);\n\n/**\n * transferAccountId or transferContractId specified for contract delete does not exist\n */\nStatus.ObtainerDoesNotExist = new Status(78);\n\n/**\n * attempting to modify (update or delete a immutable smart contract, i.e. one created without a\n * admin key)\n */\nStatus.ModifyingImmutableContract = new Status(79);\n\n/**\n * Unexpected exception thrown by file system functions\n */\nStatus.FileSystemException = new Status(80);\n\n/**\n * the duration is not a subset of [MINIMUM_AUTORENEW_DURATION,MAXIMUM_AUTORENEW_DURATION]\n */\nStatus.AutorenewDurationNotInRange = new Status(81);\n\n/**\n * Decoding the smart contract binary to a byte array failed. Check that the input is a valid hex\n * string.\n */\nStatus.ErrorDecodingBytestring = new Status(82);\n\n/**\n * File to create a smart contract was of length zero\n */\nStatus.ContractFileEmpty = new Status(83);\n\n/**\n * Bytecode for smart contract is of length zero\n */\nStatus.ContractBytecodeEmpty = new Status(84);\n\n/**\n * Attempt to set negative initial balance\n */\nStatus.InvalidInitialBalance = new Status(85);\n\n/**\n * [Deprecated]. attempt to set negative receive record threshold\n */\nStatus.InvalidReceiveRecordThreshold = new Status(86);\n\n/**\n * [Deprecated]. attempt to set negative send record threshold\n */\nStatus.InvalidSendRecordThreshold = new Status(87);\n\n/**\n * Special Account Operations should be performed by only Genesis account, return this code if it\n * is not Genesis Account\n */\nStatus.AccountIsNotGenesisAccount = new Status(88);\n\n/**\n * The fee payer account doesn't have permission to submit such Transaction\n */\nStatus.PayerAccountUnauthorized = new Status(89);\n\n/**\n * FreezeTransactionBody is invalid\n */\nStatus.InvalidFreezeTransactionBody = new Status(90);\n\n/**\n * FreezeTransactionBody does not exist\n */\nStatus.FreezeTransactionBodyNotFound = new Status(91);\n\n/**\n * Exceeded the number of accounts (both from and to) allowed for crypto transfer list\n */\nStatus.TransferListSizeLimitExceeded = new Status(92);\n\n/**\n * Smart contract result size greater than specified maxResultSize\n */\nStatus.ResultSizeLimitExceeded = new Status(93);\n\n/**\n * The payer account is not a special account(account 0.0.55)\n */\nStatus.NotSpecialAccount = new Status(94);\n\n/**\n * Negative gas was offered in smart contract call\n */\nStatus.ContractNegativeGas = new Status(95);\n\n/**\n * Negative value / initial balance was specified in a smart contract call / create\n */\nStatus.ContractNegativeValue = new Status(96);\n\n/**\n * Failed to update fee file\n */\nStatus.InvalidFeeFile = new Status(97);\n\n/**\n * Failed to update exchange rate file\n */\nStatus.InvalidExchangeRateFile = new Status(98);\n\n/**\n * Payment tendered for contract local call cannot cover both the fee and the gas\n */\nStatus.InsufficientLocalCallGas = new Status(99);\n\n/**\n * Entities with Entity ID below 1000 are not allowed to be deleted\n */\nStatus.EntityNotAllowedToDelete = new Status(100);\n\n/**\n * Violating one of these rules: 1) treasury account can update all entities below 0.0.1000, 2)\n * account 0.0.50 can update all entities from 0.0.51 - 0.0.80, 3) Network Function Master Account\n * A/c 0.0.50 - Update all Network Function accounts & perform all the Network Functions listed\n * below, 4) Network Function Accounts: i) A/c 0.0.55 - Update Address Book files (0.0.101/102),\n * ii) A/c 0.0.56 - Update Fee schedule (0.0.111), iii) A/c 0.0.57 - Update Exchange Rate\n * (0.0.112).\n */\nStatus.AuthorizationFailed = new Status(101);\n\n/**\n * Fee Schedule Proto uploaded but not valid (append or update is required)\n */\nStatus.FileUploadedProtoInvalid = new Status(102);\n\n/**\n * Fee Schedule Proto uploaded but not valid (append or update is required)\n */\nStatus.FileUploadedProtoNotSavedToDisk = new Status(103);\n\n/**\n * Fee Schedule Proto File Part uploaded\n */\nStatus.FeeScheduleFilePartUploaded = new Status(104);\n\n/**\n * The change on Exchange Rate exceeds Exchange_Rate_Allowed_Percentage\n */\nStatus.ExchangeRateChangeLimitExceeded = new Status(105);\n\n/**\n * Contract permanent storage exceeded the currently allowable limit\n */\nStatus.MaxContractStorageExceeded = new Status(106);\n\n/**\n * Transfer Account should not be same as Account to be deleted\n */\nStatus.TransferAccountSameAsDeleteAccount = new Status(107);\n\nStatus.TotalLedgerBalanceInvalid = new Status(108);\n/**\n * The expiration date/time on a smart contract may not be reduced\n */\nStatus.ExpirationReductionNotAllowed = new Status(110);\n\n/**\n * Gas exceeded currently allowable gas limit per transaction\n */\nStatus.MaxGasLimitExceeded = new Status(111);\n\n/**\n * File size exceeded the currently allowable limit\n */\nStatus.MaxFileSizeExceeded = new Status(112);\n\n/**\n * When a valid signature is not provided for operations on account with receiverSigRequired=true\n */\nStatus.ReceiverSigRequired = new Status(113);\n\n/**\n * The Topic ID specified is not in the system.\n */\nStatus.InvalidTopicId = new Status(150);\n\n/**\n * A provided admin key was invalid.\n */\nStatus.InvalidAdminKey = new Status(155);\n\n/**\n * A provided submit key was invalid.\n */\nStatus.InvalidSubmitKey = new Status(156);\n\n/**\n * An attempted operation was not authorized (ie - a deleteTopic for a topic with no adminKey).\n */\nStatus.Unauthorized = new Status(157);\n\n/**\n * A ConsensusService message is empty.\n */\nStatus.InvalidTopicMessage = new Status(158);\n\n/**\n * The autoRenewAccount specified is not a valid, active account.\n */\nStatus.InvalidAutorenewAccount = new Status(159);\n\n/**\n * An adminKey was not specified on the topic, so there must not be an autoRenewAccount.\n */\nStatus.AutorenewAccountNotAllowed = new Status(160);\n\n/**\n * The topic has expired, was not automatically renewed, and is in a 7 day grace period before the\n * topic will be deleted unrecoverably. This error response code will not be returned until\n * autoRenew functionality is supported by HAPI.\n */\nStatus.TopicExpired = new Status(162);\n\n/**\n * chunk number must be from 1 to total (chunks) inclusive.\n */\nStatus.InvalidChunkNumber = new Status(163);\n\n/**\n * For every chunk, the payer account that is part of initialTransactionID must match the Payer\n * Account of this transaction. The entire initialTransactionID should match the transactionID of\n * the first chunk, but this is not checked or enforced by Hedera except when the chunk number is 1.\n */\nStatus.InvalidChunkTransactionId = new Status(164);\n\n/**\n * Account is frozen and cannot transact with the token\n */\nStatus.AccountFrozenForToken = new Status(165);\n\n/**\n * An involved account already has more than tokens.maxPerAccount associations with\n * non-deleted tokens.\n */\nStatus.TokensPerAccountLimitExceeded = new Status(166);\n\n/**\n * The token is invalid or does not exist\n */\nStatus.InvalidTokenId = new Status(167);\n\n/**\n * Invalid token decimals\n */\nStatus.InvalidTokenDecimals = new Status(168);\n\n/**\n * Invalid token initial supply\n */\nStatus.InvalidTokenInitialSupply = new Status(169);\n\n/**\n * Treasury Account does not exist or is deleted\n */\nStatus.InvalidTreasuryAccountForToken = new Status(170);\n\n/**\n * Token Symbol is not UTF-8 capitalized alphabetical string\n */\nStatus.InvalidTokenSymbol = new Status(171);\n\n/**\n * Freeze key is not set on token\n */\nStatus.TokenHasNoFreezeKey = new Status(172);\n\n/**\n * Amounts in transfer list are not net zero\n */\nStatus.TransfersNotZeroSumForToken = new Status(173);\n\n/**\n * A token symbol was not provided\n */\nStatus.MissingTokenSymbol = new Status(174);\n\n/**\n * The provided token symbol was too long\n */\nStatus.TokenSymbolTooLong = new Status(175);\n\n/**\n * KYC must be granted and account does not have KYC granted\n */\nStatus.AccountKycNotGrantedForToken = new Status(176);\n\n/**\n * KYC key is not set on token\n */\nStatus.TokenHasNoKycKey = new Status(177);\n\n/**\n * Token balance is not sufficient for the transaction\n */\nStatus.InsufficientTokenBalance = new Status(178);\n\n/**\n * Token transactions cannot be executed on deleted token\n */\nStatus.TokenWasDeleted = new Status(179);\n\n/**\n * Supply key is not set on token\n */\nStatus.TokenHasNoSupplyKey = new Status(180);\n\n/**\n * Wipe key is not set on token\n */\nStatus.TokenHasNoWipeKey = new Status(181);\n\n/**\n * The requested token mint amount would cause an invalid total supply\n */\nStatus.InvalidTokenMintAmount = new Status(182);\n\n/**\n * The requested token burn amount would cause an invalid total supply\n */\nStatus.InvalidTokenBurnAmount = new Status(183);\n\n/**\n * A required token-account relationship is missing\n */\nStatus.TokenNotAssociatedToAccount = new Status(184);\n\n/**\n * The target of a wipe operation was the token treasury account\n */\nStatus.CannotWipeTokenTreasuryAccount = new Status(185);\n\n/**\n * The provided KYC key was invalid.\n */\nStatus.InvalidKycKey = new Status(186);\n\n/**\n * The provided wipe key was invalid.\n */\nStatus.InvalidWipeKey = new Status(187);\n\n/**\n * The provided freeze key was invalid.\n */\nStatus.InvalidFreezeKey = new Status(188);\n\n/**\n * The provided supply key was invalid.\n */\nStatus.InvalidSupplyKey = new Status(189);\n\n/**\n * Token Name is not provided\n */\nStatus.MissingTokenName = new Status(190);\n\n/**\n * Token Name is too long\n */\nStatus.TokenNameTooLong = new Status(191);\n\n/**\n * The provided wipe amount must not be negative, zero or bigger than the token holder balance\n */\nStatus.InvalidWipingAmount = new Status(192);\n\n/**\n * Token does not have Admin key set, thus update/delete transactions cannot be performed\n */\nStatus.TokenIsImmutable = new Status(193);\n\n/**\n * An associateToken operation specified a token already associated to the account\n */\nStatus.TokenAlreadyAssociatedToAccount = new Status(194);\n\n/**\n * An attempted operation is invalid until all token balances for the target account are zero\n */\nStatus.TransactionRequiresZeroTokenBalances = new Status(195);\n\n/**\n * An attempted operation is invalid because the account is a treasury\n */\nStatus.AccountIsTreasury = new Status(196);\n\n/**\n * Same TokenIDs present in the token list\n */\nStatus.TokenIdRepeatedInTokenList = new Status(197);\n\n/**\n * Exceeded the number of token transfers (both from and to) allowed for token transfer list\n */\nStatus.TokenTransferListSizeLimitExceeded = new Status(198);\n\n/**\n * TokenTransfersTransactionBody has no TokenTransferList\n */\nStatus.EmptyTokenTransferBody = new Status(199);\n\n/**\n * TokenTransfersTransactionBody has a TokenTransferList with no AccountAmounts\n */\nStatus.EmptyTokenTransferAccountAmounts = new Status(200);\n\n/**\n * The Scheduled entity does not exist; or has now expired, been deleted, or been executed\n */\nStatus.InvalidScheduleId = new Status(201);\n\n/**\n * The Scheduled entity cannot be modified. Admin key not set\n */\nStatus.ScheduleIsImmutable = new Status(202);\n\n/**\n * The provided Scheduled Payer does not exist\n */\nStatus.InvalidSchedulePayerId = new Status(203);\n\n/**\n * The Schedule Create Transaction TransactionID account does not exist\n */\nStatus.InvalidScheduleAccountId = new Status(204);\n\n/**\n * The provided sig map did not contain any new valid signatures from required signers of the\n * scheduled transaction\n */\nStatus.NoNewValidSignatures = new Status(205);\n\n/**\n * The required signers for a scheduled transaction cannot be resolved, for example because they do\n * not exist or have been deleted\n */\nStatus.UnresolvableRequiredSigners = new Status(206);\n\n/**\n * Only whitelisted transaction types may be scheduled\n */\nStatus.ScheduledTransactionNotInWhitelist = new Status(207);\n\n/**\n * At least one of the signatures in the provided sig map did not represent a valid signature for\n * any required signer\n */\nStatus.SomeSignaturesWereInvalid = new Status(208);\n\n/**\n * The scheduled field in the TransactionID may not be set to true\n */\nStatus.TransactionIdFieldNotAllowed = new Status(209);\n\n/**\n * A schedule already exists with the same identifying fields of an attempted ScheduleCreate (that\n * is, all fields other than scheduledPayerAccountID)\n */\nStatus.IdenticalScheduleAlreadyCreated = new Status(210);\n\n/**\n * A string field in the transaction has a UTF-8 encoding with the prohibited zero byte\n */\nStatus.InvalidZeroByteInString = new Status(211);\n\n/**\n * A schedule being signed or deleted has already been deleted\n */\nStatus.ScheduleAlreadyDeleted = new Status(212);\n\n/**\n * A schedule being signed or deleted has already been executed\n */\nStatus.ScheduleAlreadyExecuted = new Status(213);\n\n/**\n * ConsensusSubmitMessage request's message size is larger than allowed.\n */\nStatus.MessageSizeTooLarge = new Status(214);\n\n/**\n * An operation was assigned to more than one throttle group in a given bucket\n */\nStatus.OperationRepeatedInBucketGroups = new Status(215);\n\n/**\n * The capacity needed to satisfy all opsPerSec groups in a bucket overflowed a signed 8-byte\n * integral type\n */\nStatus.BucketCapacityOverflow = new Status(216);\n\n/**\n * Given the network size in the address book, the node-level capacity for an operation would never\n * be enough to accept a single request; usually means a bucket burstPeriod should be increased\n */\nStatus.NodeCapacityNotSufficientForOperation = new Status(217);\n\n/**\n * A bucket was defined without any throttle groups\n */\nStatus.BucketHasNoThrottleGroups = new Status(218);\n\n/**\n * A throttle group was granted zero opsPerSec\n */\nStatus.ThrottleGroupHasZeroOpsPerSec = new Status(219);\n\n/**\n * The throttle definitions file was updated, but some supported operations were not assigned a\n * bucket\n */\nStatus.SuccessButMissingExpectedOperation = new Status(220);\n\n/**\n * The new contents for the throttle definitions system file were not valid protobuf\n */\nStatus.UnparseableThrottleDefinitions = new Status(221);\n\n/**\n * The new throttle definitions system file were invalid, and no more specific error could be\n * divined\n */\nStatus.InvalidThrottleDefinitions = new Status(222);\n\n/**\n * The transaction references an account which has passed its expiration without renewal funds\n * available, and currently remains in the ledger only because of the grace period given to expired\n * entities\n */\nStatus.AccountExpiredAndPendingRemoval = new Status(223);\n\n/**\n * Invalid token max supply\n */\nStatus.InvalidTokenMaxSupply = new Status(224);\n\n/**\n * Invalid token nft serial number\n */\nStatus.InvalidTokenNftSerialNumber = new Status(225);\n\n/**\n * Invalid nft id\n */\nStatus.InvalidNftId = new Status(226);\n\n/**\n * Nft metadata is too long\n */\nStatus.MetadataTooLong = new Status(227);\n\n/**\n * Repeated operations count exceeds the limit\n */\nStatus.BatchSizeLimitExceeded = new Status(228);\n\n/**\n * The range of data to be gathered is out of the set boundaries\n */\nStatus.InvalidQueryRange = new Status(229);\n\n/**\n * A custom fractional fee set a denominator of zero\n */\nStatus.FractionDividesByZero = new Status(230);\n\n/**\n * The transaction payer could not afford a custom fee\n */\nStatus.InsufficientPayerBalanceForCustomFee = new Status(231);\n\n/**\n * More than 10 custom fees were specified\n */\nStatus.CustomFeesListTooLong = new Status(232);\n\n/**\n * Any of the feeCollector accounts for customFees is invalid\n */\nStatus.InvalidCustomFeeCollector = new Status(233);\n\n/**\n * Any of the token Ids in customFees is invalid\n */\nStatus.InvalidTokenIdInCustomFees = new Status(234);\n\n/**\n * Any of the token Ids in customFees are not associated to feeCollector\n */\nStatus.TokenNotAssociatedToFeeCollector = new Status(235);\n\n/**\n * A token cannot have more units minted due to its configured supply ceiling\n */\nStatus.TokenMaxSupplyReached = new Status(236);\n\n/**\n * The transaction attempted to move an NFT serial number from an account other than its owner\n */\nStatus.SenderDoesNotOwnNftSerialNo = new Status(237);\n\n/**\n * A custom fee schedule entry did not specify either a fixed or fractional fee\n */\nStatus.CustomFeeNotFullySpecified = new Status(238);\n\n/**\n * Only positive fees may be assessed at this time\n */\nStatus.CustomFeeMustBePositive = new Status(239);\n\n/**\n * Fee schedule key is not set on token\n */\nStatus.TokenHasNoFeeScheduleKey = new Status(240);\n\n/**\n * A fractional custom fee exceeded the range of a 64-bit signed integer\n */\nStatus.CustomFeeOutsideNumericRange = new Status(241);\n\n/**\n * A royalty cannot exceed the total fungible value exchanged for an NFT\n */\nStatus.RoyaltyFractionCannotExceedOne = new Status(242);\n\n/**\n * Each fractional custom fee must have its maximum_amount, if specified, at least its\n * minimum_amount\n */\nStatus.FractionalFeeMaxAmountLessThanMinAmount = new Status(243);\n\n/**\n * A fee schedule update tried to clear the custom fees from a token whose fee schedule was already\n * empty\n */\nStatus.CustomScheduleAlreadyHasNoFees = new Status(244);\n\n/**\n * Only tokens of type FUNGIBLE_COMMON can be used to as fee schedule denominations\n */\nStatus.CustomFeeDenominationMustBeFungibleCommon = new Status(245);\n\n/**\n * Only tokens of type FUNGIBLE_COMMON can have fractional fees\n */\nStatus.CustomFractionalFeeOnlyAllowedForFungibleCommon = new Status(246);\n\n/**\n * The provided custom fee schedule key was invalid\n */\nStatus.InvalidCustomFeeScheduleKey = new Status(247);\n\n/**\n * The requested token mint metadata was invalid\n */\nStatus.InvalidTokenMintMetadata = new Status(248);\n\n/**\n * The requested token burn metadata was invalid\n */\nStatus.InvalidTokenBurnMetadata = new Status(249);\n\n/**\n * The treasury for a unique token cannot be changed until it owns no NFTs\n */\nStatus.CurrentTreasuryStillOwnsNfts = new Status(250);\n\n/**\n * An account cannot be dissociated from a unique token if it owns NFTs for the token\n */\nStatus.AccountStillOwnsNfts = new Status(251);\n\n/**\n * A NFT can only be burned when owned by the unique token's treasury\n */\nStatus.TreasuryMustOwnBurnedNft = new Status(252);\n\n/**\n * An account did not own the NFT to be wiped\n */\nStatus.AccountDoesNotOwnWipedNft = new Status(253);\n\n/**\n * An AccountAmount token transfers list referenced a token type other than FUNGIBLE_COMMON\n */\nStatus.AccountAmountTransfersOnlyAllowedForFungibleCommon = new Status(254);\n\n/**\n * All the NFTs allowed in the current price regime have already been minted\n */\nStatus.MaxNftsInPriceRegimeHaveBeenMinted = new Status(255);\n\n/**\n * The payer account has been marked as deleted\n */\nStatus.PayerAccountDeleted = new Status(256);\n\n/**\n * The reference chain of custom fees for a transferred token exceeded the maximum length of 2\n */\nStatus.CustomFeeChargingExceededMaxRecursionDepth = new Status(257);\n\n/**\n * More than 20 balance adjustments were to satisfy a CryptoTransfer and its implied custom fee\n * payments\n */\nStatus.CustomFeeChargingExceededMaxAccountAmounts = new Status(258);\n\n/**\n * The sender account in the token transfer transaction could not afford a custom fee\n */\nStatus.InsufficientSenderAccountBalanceForCustomFee = new Status(259);\n\n/**\n * Currently no more than 4,294,967,295 NFTs may be minted for a given unique token type\n */\nStatus.SerialNumberLimitReached = new Status(260);\n\n/**\n * Only tokens of type NON_FUNGIBLE_UNIQUE can have royalty fees\n */\nStatus.CustomRoyaltyFeeOnlyAllowedForNonFungibleUnique = new Status(261);\n\n/**\n * The account has reached the limit on the automatic associations count.\n */\nStatus.NoRemainingAutomaticAssociations = new Status(262);\n\n/**\n * Already existing automatic associations are more than the new maximum automatic associations.\n */\nStatus.ExistingAutomaticAssociationsExceedGivenLimit = new Status(263);\n\n/**\n * Cannot set the number of automatic associations for an account more than the\n * maximum allowed token associations tokens.maxPerAccount\n */\nStatus.RequestedNumAutomaticAssociationsExceedsAssociationLimit = new Status(\n 264\n);\n\n/**\n * Token is paused. This Token cannot be a part of any kind of Transaction until unpaused.\n */\nStatus.TokenIsPaused = new Status(265);\n\n/**\n * Pause key is not set on token\n */\nStatus.TokenHasNoPauseKey = new Status(266);\n\n/**\n * The provided pause key was invalid\n */\nStatus.InvalidPauseKey = new Status(267);\n\n/**\n * The update file in a freeze transaction body must exist.\n */\nStatus.FreezeUpdateFileDoesNotExist = new Status(268);\n\n/**\n * The hash of the update file in a freeze transaction body must match the in-memory hash.\n */\nStatus.FreezeUpdateFileHashDoesNotMatch = new Status(269);\n\n/**\n * A FREEZE_UPGRADE transaction was handled with no previous update prepared.\n */\nStatus.NoUpgradeHasBeenPrepared = new Status(270);\n\n/**\n * A FREEZE_ABORT transaction was handled with no scheduled freeze.\n */\nStatus.NoFreezeIsScheduled = new Status(271);\n\n/**\n * The update file hash when handling a FREEZE_UPGRADE transaction differs from the file\n * hash at the time of handling the PREPARE_UPGRADE transaction.\n */\nStatus.UpdateFileHashChangedSincePrepareUpgrade = new Status(272);\n\n/**\n * The given freeze start time was in the (consensus) past.\n */\nStatus.FreezeStartTimeMustBeFuture = new Status(273);\n\n/**\n * The prepared update file cannot be updated or appended until either the upgrade has\n * been completed, or a FREEZE_ABORT has been handled.\n */\nStatus.PreparedUpdateFileIsImmutable = new Status(274);\n\n/**\n * Once a freeze is scheduled, it must be aborted before any other type of freeze can\n * can be performed.\n */\nStatus.FreezeAlreadyScheduled = new Status(275);\n\n/**\n * If an NMT upgrade has been prepared, the following operation must be a FREEZE_UPGRADE.\n * (To issue a FREEZE_ONLY, submit a FREEZE_ABORT first.)\n */\nStatus.FreezeUpgradeInProgress = new Status(276);\n\n/**\n * If an NMT upgrade has been prepared, the subsequent FREEZE_UPGRADE transaction must\n * confirm the id of the file to be used in the upgrade.\n */\nStatus.UpdateFileIdDoesNotMatchPrepared = new Status(277);\n\n/**\n * If an NMT upgrade has been prepared, the subsequent FREEZE_UPGRADE transaction must\n * confirm the hash of the file to be used in the upgrade.\n */\nStatus.UpdateFileHashDoesNotMatchPrepared = new Status(278);\n\n/**\n * Consensus throttle did not allow execution of this transaction. System is throttled at\n * consensus level.\n */\nStatus.ConsensusGasExhausted = new Status(279);\n\n/**\n * A precompiled contract succeeded, but was later reverted.\n */\nStatus.RevertedSuccess = new Status(280);\n\n/**\n * All contract storage allocated to the current price regime has been consumed.\n */\nStatus.MaxStorageInPriceRegimeHasBeenUsed = new Status(281);\n\n/**\n * An alias used in a CryptoTransfer transaction is not the serialization of a primitive Key\n * message--that is, a Key with a single Ed25519 or ECDSA(secp256k1) public key and no\n * unknown protobuf fields.\n */\nStatus.InvalidAliasKey = new Status(282);\n\n/**\n * A fungible token transfer expected a different number of decimals than the involved\n * type actually has.\n */\nStatus.UnexpectedTokenDecimals = new Status(283);\n","import * as entity_id from \"../EntityIdHelper.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n *\n * @augments {EntityId}\n */\n\nexport default class ScheduleId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n */\n constructor(props, realm, num) {\n const result = entity_id.constructor(props, realm, num);\n\n this.shard = result.shard;\n this.realm = result.realm;\n this.num = result.num;\n\n /**\n * @type {string | null}\n */\n this._checksum = null;\n }\n\n /**\n * @param {string} text\n * @returns {ScheduleId}\n */\n static fromString(text) {\n const result = entity_id.fromString(text);\n const id = new ScheduleId(result);\n id._checksum = result.checksum;\n return id;\n }\n\n /**\n * @internal\n * @param {proto.IScheduleID} id\n * @returns {ScheduleId}\n */\n static _fromProtobuf(id) {\n const scheduleId = new ScheduleId(\n id.shardNum != null ? id.shardNum : 0,\n id.realmNum != null ? id.realmNum : 0,\n id.scheduleNum != null ? id.scheduleNum : 0\n );\n\n return scheduleId;\n }\n\n /**\n * @returns {string | null}\n */\n get checksum() {\n return this._checksum;\n }\n\n /**\n * @deprecated - Use `validateChecksum` instead\n * @param {Client} client\n */\n validate(client) {\n console.warn(\"Deprecated: Use `validateChecksum` instead\");\n this.validateChecksum(client);\n }\n\n /**\n * @param {Client} client\n */\n validateChecksum(client) {\n entity_id.validateChecksum(\n this.shard,\n this.realm,\n this.num,\n this._checksum,\n client\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {ScheduleId}\n */\n static fromBytes(bytes) {\n return ScheduleId._fromProtobuf(proto.ScheduleID.decode(bytes));\n }\n\n /**\n * @param {string} address\n * @returns {ScheduleId}\n */\n static fromSolidityAddress(address) {\n return new ScheduleId(...entity_id.fromSolidityAddress(address));\n }\n\n /**\n * @returns {string}\n */\n toSolidityAddress() {\n return entity_id.toSolidityAddress([this.shard, this.realm, this.num]);\n }\n\n /**\n * @internal\n * @returns {proto.ScheduleID}\n */\n _toProtobuf() {\n return {\n scheduleNum: this.num,\n shardNum: this.shard,\n realmNum: this.realm,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.shard.toString()}.${this.realm.toString()}.${this.num.toString()}`;\n }\n\n /**\n * @param {Client} client\n * @returns {string}\n */\n toStringWithChecksum(client) {\n return entity_id.toStringWithChecksum(this.toString(), client);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ScheduleID.encode(this._toProtobuf()).finish();\n }\n\n /**\n * @returns {ScheduleId}\n */\n clone() {\n const id = new ScheduleId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @param {ScheduleId} other\n * @returns {number}\n */\n compare(other) {\n return entity_id.compare(\n [this.shard, this.realm, this.num],\n [other.shard, other.realm, other.num]\n );\n }\n}\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file index.js\r\n * @author Fabian Vogelsteller \r\n * @date 2017\r\n */\r\nimport { Manager, BatchManager } from \"@arianelabs/hweb3-core-requestmanager\";\r\nconst extend = require(\"./extend\");\r\nexport const packageInit = (pkg, args) => {\r\n args = Array.prototype.slice.call(args);\r\n if (!pkg) {\r\n throw new Error('You need to instantiate using the \"new\" keyword.');\r\n }\r\n // make property of pkg._provider, which can properly set providers\r\n Object.defineProperty(pkg, 'currentProvider', {\r\n get: () => {\r\n return pkg._provider;\r\n },\r\n set: (value) => {\r\n return pkg.setProvider(value);\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n // inherit from parent package or create a new RequestManager\r\n if (args[0] && args[0]._requestManager) {\r\n pkg._requestManager = args[0]._requestManager;\r\n }\r\n else {\r\n pkg._requestManager = new Manager(args[0], args[1]);\r\n }\r\n // add givenProvider\r\n pkg.givenProvider = Manager.givenProvider;\r\n pkg.providers = Manager.providers;\r\n pkg._provider = pkg._requestManager.provider;\r\n // add SETPROVIDER function (don't overwrite if already existing)\r\n if (!pkg.setProvider) {\r\n pkg.setProvider = (provider, net) => {\r\n pkg._requestManager.setProvider(provider, net);\r\n pkg._provider = pkg._requestManager.provider;\r\n return true;\r\n };\r\n }\r\n pkg.setRequestManager = (manager) => {\r\n pkg._requestManager = manager;\r\n pkg._provider = manager.provider;\r\n };\r\n // attach batch request creation\r\n pkg.BatchRequest = BatchManager.bind(null, pkg._requestManager);\r\n // attach extend function\r\n pkg.extend = extend(pkg);\r\n};\r\nexport const addProviders = (pkg) => {\r\n pkg.givenProvider = Manager.givenProvider;\r\n pkg.providers = Manager.providers;\r\n};\r\n","module.exports = function(module) {\n\tif (!module.webpackPolyfill) {\n\t\tmodule.deprecate = function() {};\n\t\tmodule.paths = [];\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n","'use strict';\n\nvar elliptic = exports;\n\nelliptic.version = require('../package.json').version;\nelliptic.utils = require('./elliptic/utils');\nelliptic.rand = require('brorand');\nelliptic.curve = require('./elliptic/curve');\nelliptic.curves = require('./elliptic/curves');\n\n// Protocols\nelliptic.ec = require('./elliptic/ec');\nelliptic.eddsa = require('./elliptic/eddsa');\n","import Long from \"long\";\nimport * as hex from \"./encoding/hex.js\";\nimport BadEntityIdError from \"./BadEntityIdError.js\";\nimport * as util from \"./util.js\";\n\n/**\n * @typedef {import(\"./client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @typedef {object} IEntityId\n * @property {number | Long} num\n * @property {(number | Long)=} shard\n * @property {(number | Long)=} realm\n */\n\n/**\n * @typedef {object} IEntityIdResult\n * @property {Long} shard\n * @property {Long} realm\n * @property {Long} num\n */\n\n/**\n * @typedef {object} IEntityIdParts\n * @property {string?} shard\n * @property {string?} realm\n * @property {string} numOrHex\n * @property {string?} checksum\n */\n\n/**\n * @typedef {object} IEntityIdResultWithChecksum\n * @property {Long} shard\n * @property {Long} realm\n * @property {Long} num\n * @property {string | null} checksum\n */\n\nconst regex = RegExp(\n \"^(0|(?:[1-9]\\\\d*))\\\\.(0|(?:[1-9]\\\\d*))\\\\.(0|(?:[1-9]\\\\d*))(?:-([a-z]{5}))?$\"\n);\n\n/**\n * This regex supports entity IDs\n * - as stand alone nubmers\n * - as shard.realm.num\n * - as shard.realm.hex\n * - can optionally provide checksum for any of the above\n */\nconst ENTITY_ID_REGEX = /^(\\d+)(?:\\.(\\d+)\\.([a-fA-F0-9]+))?(?:-([a-z]{5}))?$/;\n\n/**\n * @param {number | Long | IEntityId} props\n * @param {(number | null | Long)=} realmOrNull\n * @param {(number | null | Long)=} numOrNull\n * @returns {IEntityIdResult}\n */\nexport function constructor(props, realmOrNull, numOrNull) {\n if (\n (realmOrNull == null && numOrNull != null) ||\n (realmOrNull != null && numOrNull == null)\n ) {\n throw new Error(\"invalid entity ID\");\n }\n\n const [shard, realm, num] =\n typeof props === \"number\" || Long.isLong(props)\n ? [\n numOrNull != null\n ? Long.fromValue(/** @type {Long | number} */ (props))\n : Long.ZERO,\n realmOrNull != null ? Long.fromValue(realmOrNull) : Long.ZERO,\n numOrNull != null\n ? Long.fromValue(numOrNull)\n : Long.fromValue(/** @type {Long | number} */ (props)),\n ]\n : [\n props.shard != null ? Long.fromValue(props.shard) : Long.ZERO,\n props.realm != null ? Long.fromValue(props.realm) : Long.ZERO,\n Long.fromValue(props.num),\n ];\n\n if (shard.isNegative() || realm.isNegative() || num.isNegative()) {\n throw new Error(\"negative numbers are not allowed in IDs\");\n }\n\n return {\n shard,\n realm,\n num,\n };\n}\n\n/**\n * @param {[Long, Long, Long]} a\n * @param {[Long, Long, Long]} b\n * @returns {number}\n */\nexport function compare(a, b) {\n let comparison = a[0].compare(b[0]);\n if (comparison != 0) {\n return comparison;\n }\n\n comparison = a[1].compare(b[1]);\n if (comparison != 0) {\n return comparison;\n }\n\n return a[2].compare(b[2]);\n}\n\n/**\n * @typedef {object} ParseAddressResult\n * @property {number} status\n * @property {Long} [num1]\n * @property {Long} [num2]\n * @property {Long} [num3]\n * @property {string} [correctChecksum]\n * @property {string} [givenChecksum]\n * @property {string} [noChecksumFormat]\n * @property {string} [withChecksumFormat]\n */\n\n/**\n * @param {string} text\n * @returns {IEntityIdParts}\n */\nexport function fromStringSplitter(text) {\n const match = ENTITY_ID_REGEX.exec(text);\n\n if (match == null) {\n throw new Error(`failed to parse entity id: ${text}`);\n }\n\n if (match[2] == null && match[3] == null) {\n return {\n shard: \"0\",\n realm: \"0\",\n numOrHex: match[1],\n checksum: match[4],\n };\n } else {\n return {\n shard: match[1],\n realm: match[2],\n numOrHex: match[3],\n checksum: match[4],\n };\n }\n}\n\n/**\n * @param {string} text\n * @returns {IEntityIdResultWithChecksum}\n */\nexport function fromString(text) {\n const result = fromStringSplitter(text);\n\n if (\n Number.isNaN(result.shard) ||\n Number.isNaN(result.realm) ||\n Number.isNaN(result.numOrHex)\n ) {\n throw new Error(\"invalid format for entity ID\");\n }\n\n return {\n shard: result.shard != null ? Long.fromString(result.shard) : Long.ZERO,\n realm: result.realm != null ? Long.fromString(result.realm) : Long.ZERO,\n num: Long.fromString(result.numOrHex),\n checksum: result.checksum,\n };\n}\n\n/**\n * @param {string} address\n * @returns {[Long, Long, Long]}\n */\nexport function fromSolidityAddress(address) {\n const addr = address.startsWith(\"0x\")\n ? hex.decode(address.slice(2))\n : hex.decode(address);\n\n if (addr.length !== 20) {\n throw new Error(`Invalid hex encoded solidity address length:\n expected length 40, got length ${address.length}`);\n }\n\n const shard = Long.fromBytesBE([0, 0, 0, 0, ...addr.slice(0, 4)]);\n const realm = Long.fromBytesBE(Array.from(addr.slice(4, 12)));\n const num = Long.fromBytesBE(Array.from(addr.slice(12, 20)));\n\n return [shard, realm, num];\n}\n\n/**\n * @param {[Long,Long,Long] | [number,number,number]} address\n * @returns {string}\n */\nexport function toSolidityAddress(address) {\n const buffer = new Uint8Array(20);\n const view = util.safeView(buffer);\n const [shard, realm, num] = address;\n\n view.setUint32(0, util.convertToNumber(shard));\n view.setUint32(8, util.convertToNumber(realm));\n view.setUint32(16, util.convertToNumber(num));\n\n return hex.encode(buffer);\n}\n\n/**\n * Parse the address string addr and return an object with the results (8 fields).\n * The first four fields are numbers, which could be implemented as signed 32 bit\n * integers, and the last four are strings.\n *\n * status; //the status of the parsed address\n * // 0 = syntax error\n * // 1 = an invalid with-checksum address (bad checksum)\n * // 2 = a valid no-checksum address\n * // 3 = a valid with-checksum address\n * num1; //the 3 numbers in the address, such as 1.2.3, with leading zeros removed\n * num2;\n * num3;\n * correctchecksum; //the correct checksum\n * givenChecksum; //the checksum in the address that was parsed\n * noChecksumFormat; //the address in no-checksum format\n * withChecksumFormat; //the address in with-checksum format\n *\n * @param {string} ledgerId\n * @param {string} addr\n * @returns {ParseAddressResult}\n */\nexport function _parseAddress(ledgerId, addr) {\n let match = regex.exec(addr);\n if (match === null) {\n let result = { status: 0 }; // When status == 0, the rest of the fields should be ignored\n return result;\n }\n let a = [\n Long.fromString(match[1]),\n Long.fromString(match[2]),\n Long.fromString(match[3]),\n ];\n let ad = `${a[0].toString()}.${a[1].toString()}.${a[2].toString()}`;\n let c = _checksum(ledgerId, ad);\n let s = match[4] === undefined ? 2 : c == match[4] ? 3 : 1; //the status\n let result = {\n status: s,\n num1: a[0],\n num2: a[1],\n num3: a[2],\n givenChecksum: match[4],\n correctChecksum: c,\n noChecksumFormat: ad,\n withChecksumFormat: `${ad}-${c}`,\n };\n return result;\n}\n\n/**\n * Given an address like \"0.0.123\", return a checksum like \"laujm\"\n *\n * @param {string} ledgerId\n * @param {string} addr\n * @returns {string}\n */\nexport function _checksum(ledgerId, addr) {\n let answer = \"\";\n let d = []; // Digits with 10 for \".\", so if addr == \"0.0.123\" then d == [0, 10, 0, 10, 1, 2, 3]\n let s0 = 0; // Sum of even positions (mod 11)\n let s1 = 0; // Sum of odd positions (mod 11)\n let s = 0; // Weighted sum of all positions (mod p3)\n let sh = 0; // Hash of the ledger ID\n let c = 0; // The checksum, as a single number\n const p3 = 26 * 26 * 26; // 3 digits in base 26\n const p5 = 26 * 26 * 26 * 26 * 26; // 5 digits in base 26\n const ascii_a = \"a\".charCodeAt(0); // 97\n const m = 1000003; // Min prime greater than a million. Used for the final permutation.\n const w = 31; // Sum s of digit values weights them by powers of w. Should be coprime to p5.\n\n let id = ledgerId + \"000000000000\";\n let h = [];\n for (var i = 0; i < id.length; i += 2) {\n h.push(parseInt(id.substring(i, i + 2), 16));\n }\n for (let i = 0; i < addr.length; i++) {\n d.push(addr[i] === \".\" ? 10 : parseInt(addr[i], 10));\n }\n for (let i = 0; i < d.length; i++) {\n s = (w * s + d[i]) % p3;\n if (i % 2 === 0) {\n s0 = (s0 + d[i]) % 11;\n } else {\n s1 = (s1 + d[i]) % 11;\n }\n }\n for (let i = 0; i < h.length; i++) {\n sh = (w * sh + h[i]) % p5;\n }\n c = ((((addr.length % 5) * 11 + s0) * 11 + s1) * p3 + s + sh) % p5;\n c = (c * m) % p5;\n\n for (let i = 0; i < 5; i++) {\n answer = String.fromCharCode(ascii_a + (c % 26)) + answer;\n c /= 26;\n }\n\n return answer;\n}\n\n/**\n * @param {Long} shard\n * @param {Long} realm\n * @param {Long} num\n * @param {string | null} checksum\n * @param {Client} client\n */\nexport function validateChecksum(shard, realm, num, checksum, client) {\n if (client._network._ledgerId == null || checksum == null) {\n return;\n }\n\n const expectedChecksum = _checksum(\n client._network._ledgerId._toStringForChecksum(),\n `${shard.toString()}.${realm.toString()}.${num.toString()}`\n );\n\n if (checksum != expectedChecksum) {\n throw new BadEntityIdError(\n shard,\n realm,\n num,\n checksum,\n expectedChecksum\n );\n }\n}\n\n/**\n * @param {string} string\n * @param {Client} client\n * @returns {string}\n */\nexport function toStringWithChecksum(string, client) {\n if (client._network._ledgerId == null) {\n throw new Error(\n \"cannot calculate checksum with a client that does not contain a recognzied ledger ID\"\n );\n }\n\n const checksum = _checksum(\n client._network._ledgerId._toStringForChecksum(),\n string\n );\n\n return `${string}-${checksum}`;\n}\n","import * as proto from \"@hashgraph/proto\";\nimport TokenId from \"../token/TokenId.js\";\nimport Long from \"long\";\n\n/**\n * The ID for a crypto-currency token on Hedera.\n *\n * @augments {EntityId}\n */\nexport default class NftId {\n /**\n * @param {TokenId} token\n * @param {number | Long} serial\n */\n constructor(token, serial) {\n this.tokenId = token;\n this.serial =\n typeof serial === \"number\" ? Long.fromNumber(serial) : serial;\n\n Object.freeze(this);\n }\n\n /**\n * @param {string} text\n * @returns {NftId}\n */\n static fromString(text) {\n const strings =\n text.split(\"/\").length > 1 ? text.split(\"/\") : text.split(\"@\");\n\n for (const string of strings) {\n if (string === \"\") {\n throw new Error(\n \"invalid format for NftId: use [token]/[serial] or [token]@[serial]\"\n );\n }\n }\n\n const token = TokenId.fromString(strings[0]);\n const serial = Long.fromString(strings[1]);\n\n return new NftId(token, serial);\n }\n\n /**\n * @internal\n * @param {proto.INftID} id\n * @returns {NftId}\n */\n static _fromProtobuf(id) {\n return new NftId(\n TokenId._fromProtobuf(/** @type {proto.ITokenID} */ (id.tokenID)),\n id.serialNumber != null ? id.serialNumber : Long.ZERO\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {NftId}\n */\n static fromBytes(bytes) {\n return NftId._fromProtobuf(proto.NftID.decode(bytes));\n }\n\n /**\n * @internal\n * @returns {proto.INftID}\n */\n _toProtobuf() {\n return {\n tokenID: this.tokenId._toProtobuf(),\n serialNumber: Long.fromValue(\n this.serial !== undefined ? this.serial : 0\n ),\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.serial.toString()}@${this.tokenId.toString()}`;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.NftID.encode(this._toProtobuf()).finish();\n }\n}\n","'use strict';\n\nvar objectAssign = require('object-assign');\n\n// compare and isBuffer taken from https://github.com/feross/buffer/blob/680e9e5e488f22aac27599a57dc844a6315928dd/index.js\n// original notice:\n\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\nfunction compare(a, b) {\n if (a === b) {\n return 0;\n }\n\n var x = a.length;\n var y = b.length;\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i];\n y = b[i];\n break;\n }\n }\n\n if (x < y) {\n return -1;\n }\n if (y < x) {\n return 1;\n }\n return 0;\n}\nfunction isBuffer(b) {\n if (global.Buffer && typeof global.Buffer.isBuffer === 'function') {\n return global.Buffer.isBuffer(b);\n }\n return !!(b != null && b._isBuffer);\n}\n\n// based on node assert, original notice:\n// NB: The URL to the CommonJS spec is kept just for tradition.\n// node-assert has evolved a lot since then, both in API and behavior.\n\n// http://wiki.commonjs.org/wiki/Unit_Testing/1.0\n//\n// THIS IS NOT TESTED NOR LIKELY TO WORK OUTSIDE V8!\n//\n// Originally from narwhal.js (http://narwhaljs.org)\n// Copyright (c) 2009 Thomas Robinson <280north.com>\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the 'Software'), to\n// deal in the Software without restriction, including without limitation the\n// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n// sell copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\n// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar util = require('util/');\nvar hasOwn = Object.prototype.hasOwnProperty;\nvar pSlice = Array.prototype.slice;\nvar functionsHaveNames = (function () {\n return function foo() {}.name === 'foo';\n}());\nfunction pToString (obj) {\n return Object.prototype.toString.call(obj);\n}\nfunction isView(arrbuf) {\n if (isBuffer(arrbuf)) {\n return false;\n }\n if (typeof global.ArrayBuffer !== 'function') {\n return false;\n }\n if (typeof ArrayBuffer.isView === 'function') {\n return ArrayBuffer.isView(arrbuf);\n }\n if (!arrbuf) {\n return false;\n }\n if (arrbuf instanceof DataView) {\n return true;\n }\n if (arrbuf.buffer && arrbuf.buffer instanceof ArrayBuffer) {\n return true;\n }\n return false;\n}\n// 1. The assert module provides functions that throw\n// AssertionError's when particular conditions are not met. The\n// assert module must conform to the following interface.\n\nvar assert = module.exports = ok;\n\n// 2. The AssertionError is defined in assert.\n// new assert.AssertionError({ message: message,\n// actual: actual,\n// expected: expected })\n\nvar regex = /\\s*function\\s+([^\\(\\s]*)\\s*/;\n// based on https://github.com/ljharb/function.prototype.name/blob/adeeeec8bfcc6068b187d7d9fb3d5bb1d3a30899/implementation.js\nfunction getName(func) {\n if (!util.isFunction(func)) {\n return;\n }\n if (functionsHaveNames) {\n return func.name;\n }\n var str = func.toString();\n var match = str.match(regex);\n return match && match[1];\n}\nassert.AssertionError = function AssertionError(options) {\n this.name = 'AssertionError';\n this.actual = options.actual;\n this.expected = options.expected;\n this.operator = options.operator;\n if (options.message) {\n this.message = options.message;\n this.generatedMessage = false;\n } else {\n this.message = getMessage(this);\n this.generatedMessage = true;\n }\n var stackStartFunction = options.stackStartFunction || fail;\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, stackStartFunction);\n } else {\n // non v8 browsers so we can have a stacktrace\n var err = new Error();\n if (err.stack) {\n var out = err.stack;\n\n // try to strip useless frames\n var fn_name = getName(stackStartFunction);\n var idx = out.indexOf('\\n' + fn_name);\n if (idx >= 0) {\n // once we have located the function frame\n // we need to strip out everything before it (and its line)\n var next_line = out.indexOf('\\n', idx + 1);\n out = out.substring(next_line + 1);\n }\n\n this.stack = out;\n }\n }\n};\n\n// assert.AssertionError instanceof Error\nutil.inherits(assert.AssertionError, Error);\n\nfunction truncate(s, n) {\n if (typeof s === 'string') {\n return s.length < n ? s : s.slice(0, n);\n } else {\n return s;\n }\n}\nfunction inspect(something) {\n if (functionsHaveNames || !util.isFunction(something)) {\n return util.inspect(something);\n }\n var rawname = getName(something);\n var name = rawname ? ': ' + rawname : '';\n return '[Function' + name + ']';\n}\nfunction getMessage(self) {\n return truncate(inspect(self.actual), 128) + ' ' +\n self.operator + ' ' +\n truncate(inspect(self.expected), 128);\n}\n\n// At present only the three keys mentioned above are used and\n// understood by the spec. Implementations or sub modules can pass\n// other keys to the AssertionError's constructor - they will be\n// ignored.\n\n// 3. All of the following functions must throw an AssertionError\n// when a corresponding condition is not met, with a message that\n// may be undefined if not provided. All assertion methods provide\n// both the actual and expected values to the assertion error for\n// display purposes.\n\nfunction fail(actual, expected, message, operator, stackStartFunction) {\n throw new assert.AssertionError({\n message: message,\n actual: actual,\n expected: expected,\n operator: operator,\n stackStartFunction: stackStartFunction\n });\n}\n\n// EXTENSION! allows for well behaved errors defined elsewhere.\nassert.fail = fail;\n\n// 4. Pure assertion tests whether a value is truthy, as determined\n// by !!guard.\n// assert.ok(guard, message_opt);\n// This statement is equivalent to assert.equal(true, !!guard,\n// message_opt);. To test strictly for the value true, use\n// assert.strictEqual(true, guard, message_opt);.\n\nfunction ok(value, message) {\n if (!value) fail(value, true, message, '==', assert.ok);\n}\nassert.ok = ok;\n\n// 5. The equality assertion tests shallow, coercive equality with\n// ==.\n// assert.equal(actual, expected, message_opt);\n\nassert.equal = function equal(actual, expected, message) {\n if (actual != expected) fail(actual, expected, message, '==', assert.equal);\n};\n\n// 6. The non-equality assertion tests for whether two objects are not equal\n// with != assert.notEqual(actual, expected, message_opt);\n\nassert.notEqual = function notEqual(actual, expected, message) {\n if (actual == expected) {\n fail(actual, expected, message, '!=', assert.notEqual);\n }\n};\n\n// 7. The equivalence assertion tests a deep equality relation.\n// assert.deepEqual(actual, expected, message_opt);\n\nassert.deepEqual = function deepEqual(actual, expected, message) {\n if (!_deepEqual(actual, expected, false)) {\n fail(actual, expected, message, 'deepEqual', assert.deepEqual);\n }\n};\n\nassert.deepStrictEqual = function deepStrictEqual(actual, expected, message) {\n if (!_deepEqual(actual, expected, true)) {\n fail(actual, expected, message, 'deepStrictEqual', assert.deepStrictEqual);\n }\n};\n\nfunction _deepEqual(actual, expected, strict, memos) {\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n } else if (isBuffer(actual) && isBuffer(expected)) {\n return compare(actual, expected) === 0;\n\n // 7.2. If the expected value is a Date object, the actual value is\n // equivalent if it is also a Date object that refers to the same time.\n } else if (util.isDate(actual) && util.isDate(expected)) {\n return actual.getTime() === expected.getTime();\n\n // 7.3 If the expected value is a RegExp object, the actual value is\n // equivalent if it is also a RegExp object with the same source and\n // properties (`global`, `multiline`, `lastIndex`, `ignoreCase`).\n } else if (util.isRegExp(actual) && util.isRegExp(expected)) {\n return actual.source === expected.source &&\n actual.global === expected.global &&\n actual.multiline === expected.multiline &&\n actual.lastIndex === expected.lastIndex &&\n actual.ignoreCase === expected.ignoreCase;\n\n // 7.4. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if ((actual === null || typeof actual !== 'object') &&\n (expected === null || typeof expected !== 'object')) {\n return strict ? actual === expected : actual == expected;\n\n // If both values are instances of typed arrays, wrap their underlying\n // ArrayBuffers in a Buffer each to increase performance\n // This optimization requires the arrays to have the same type as checked by\n // Object.prototype.toString (aka pToString). Never perform binary\n // comparisons for Float*Arrays, though, since e.g. +0 === -0 but their\n // bit patterns are not identical.\n } else if (isView(actual) && isView(expected) &&\n pToString(actual) === pToString(expected) &&\n !(actual instanceof Float32Array ||\n actual instanceof Float64Array)) {\n return compare(new Uint8Array(actual.buffer),\n new Uint8Array(expected.buffer)) === 0;\n\n // 7.5 For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else if (isBuffer(actual) !== isBuffer(expected)) {\n return false;\n } else {\n memos = memos || {actual: [], expected: []};\n\n var actualIndex = memos.actual.indexOf(actual);\n if (actualIndex !== -1) {\n if (actualIndex === memos.expected.indexOf(expected)) {\n return true;\n }\n }\n\n memos.actual.push(actual);\n memos.expected.push(expected);\n\n return objEquiv(actual, expected, strict, memos);\n }\n}\n\nfunction isArguments(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n}\n\nfunction objEquiv(a, b, strict, actualVisitedObjects) {\n if (a === null || a === undefined || b === null || b === undefined)\n return false;\n // if one is a primitive, the other must be same\n if (util.isPrimitive(a) || util.isPrimitive(b))\n return a === b;\n if (strict && Object.getPrototypeOf(a) !== Object.getPrototypeOf(b))\n return false;\n var aIsArgs = isArguments(a);\n var bIsArgs = isArguments(b);\n if ((aIsArgs && !bIsArgs) || (!aIsArgs && bIsArgs))\n return false;\n if (aIsArgs) {\n a = pSlice.call(a);\n b = pSlice.call(b);\n return _deepEqual(a, b, strict);\n }\n var ka = objectKeys(a);\n var kb = objectKeys(b);\n var key, i;\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length !== kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] !== kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!_deepEqual(a[key], b[key], strict, actualVisitedObjects))\n return false;\n }\n return true;\n}\n\n// 8. The non-equivalence assertion tests for any deep inequality.\n// assert.notDeepEqual(actual, expected, message_opt);\n\nassert.notDeepEqual = function notDeepEqual(actual, expected, message) {\n if (_deepEqual(actual, expected, false)) {\n fail(actual, expected, message, 'notDeepEqual', assert.notDeepEqual);\n }\n};\n\nassert.notDeepStrictEqual = notDeepStrictEqual;\nfunction notDeepStrictEqual(actual, expected, message) {\n if (_deepEqual(actual, expected, true)) {\n fail(actual, expected, message, 'notDeepStrictEqual', notDeepStrictEqual);\n }\n}\n\n\n// 9. The strict equality assertion tests strict equality, as determined by ===.\n// assert.strictEqual(actual, expected, message_opt);\n\nassert.strictEqual = function strictEqual(actual, expected, message) {\n if (actual !== expected) {\n fail(actual, expected, message, '===', assert.strictEqual);\n }\n};\n\n// 10. The strict non-equality assertion tests for strict inequality, as\n// determined by !==. assert.notStrictEqual(actual, expected, message_opt);\n\nassert.notStrictEqual = function notStrictEqual(actual, expected, message) {\n if (actual === expected) {\n fail(actual, expected, message, '!==', assert.notStrictEqual);\n }\n};\n\nfunction expectedException(actual, expected) {\n if (!actual || !expected) {\n return false;\n }\n\n if (Object.prototype.toString.call(expected) == '[object RegExp]') {\n return expected.test(actual);\n }\n\n try {\n if (actual instanceof expected) {\n return true;\n }\n } catch (e) {\n // Ignore. The instanceof check doesn't work for arrow functions.\n }\n\n if (Error.isPrototypeOf(expected)) {\n return false;\n }\n\n return expected.call({}, actual) === true;\n}\n\nfunction _tryBlock(block) {\n var error;\n try {\n block();\n } catch (e) {\n error = e;\n }\n return error;\n}\n\nfunction _throws(shouldThrow, block, expected, message) {\n var actual;\n\n if (typeof block !== 'function') {\n throw new TypeError('\"block\" argument must be a function');\n }\n\n if (typeof expected === 'string') {\n message = expected;\n expected = null;\n }\n\n actual = _tryBlock(block);\n\n message = (expected && expected.name ? ' (' + expected.name + ').' : '.') +\n (message ? ' ' + message : '.');\n\n if (shouldThrow && !actual) {\n fail(actual, expected, 'Missing expected exception' + message);\n }\n\n var userProvidedMessage = typeof message === 'string';\n var isUnwantedException = !shouldThrow && util.isError(actual);\n var isUnexpectedException = !shouldThrow && actual && !expected;\n\n if ((isUnwantedException &&\n userProvidedMessage &&\n expectedException(actual, expected)) ||\n isUnexpectedException) {\n fail(actual, expected, 'Got unwanted exception' + message);\n }\n\n if ((shouldThrow && actual && expected &&\n !expectedException(actual, expected)) || (!shouldThrow && actual)) {\n throw actual;\n }\n}\n\n// 11. Expected to throw an error:\n// assert.throws(block, Error_opt, message_opt);\n\nassert.throws = function(block, /*optional*/error, /*optional*/message) {\n _throws(true, block, error, message);\n};\n\n// EXTENSION! This is annoying to write outside this module.\nassert.doesNotThrow = function(block, /*optional*/error, /*optional*/message) {\n _throws(false, block, error, message);\n};\n\nassert.ifError = function(err) { if (err) throw err; };\n\n// Expose a strict only variant of assert\nfunction strict(value, message) {\n if (!value) fail(value, true, message, '==', strict);\n}\nassert.strict = objectAssign(strict, assert, {\n equal: assert.strictEqual,\n deepEqual: assert.deepStrictEqual,\n notEqual: assert.notStrictEqual,\n notDeepEqual: assert.notDeepStrictEqual\n});\nassert.strict.strict = assert.strict;\n\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n for (var key in obj) {\n if (hasOwn.call(obj, key)) keys.push(key);\n }\n return keys;\n};\n","\"use strict\";\n/*\nThe MIT License\n\nCopyright (c) 2016 Nick Dodson. nickdodson.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isHexString = exports.getKeys = exports.fromAscii = exports.fromUtf8 = exports.toAscii = exports.arrayContainsArray = exports.getBinarySize = exports.padToEven = exports.stripHexPrefix = exports.isHexPrefixed = void 0;\n/**\n * Returns a `Boolean` on whether or not the a `String` starts with '0x'\n * @param str the string input value\n * @return a boolean if it is or is not hex prefixed\n * @throws if the str input is not a string\n */\nfunction isHexPrefixed(str) {\n if (typeof str !== 'string') {\n throw new Error(\"[isHexPrefixed] input must be type 'string', received type \".concat(typeof str));\n }\n return str[0] === '0' && str[1] === 'x';\n}\nexports.isHexPrefixed = isHexPrefixed;\n/**\n * Removes '0x' from a given `String` if present\n * @param str the string value\n * @returns the string without 0x prefix\n */\nvar stripHexPrefix = function (str) {\n if (typeof str !== 'string')\n throw new Error(\"[stripHexPrefix] input must be type 'string', received \".concat(typeof str));\n return isHexPrefixed(str) ? str.slice(2) : str;\n};\nexports.stripHexPrefix = stripHexPrefix;\n/**\n * Pads a `String` to have an even length\n * @param value\n * @return output\n */\nfunction padToEven(value) {\n var a = value;\n if (typeof a !== 'string') {\n throw new Error(\"[padToEven] value must be type 'string', received \".concat(typeof a));\n }\n if (a.length % 2)\n a = \"0\".concat(a);\n return a;\n}\nexports.padToEven = padToEven;\n/**\n * Get the binary size of a string\n * @param str\n * @returns the number of bytes contained within the string\n */\nfunction getBinarySize(str) {\n if (typeof str !== 'string') {\n throw new Error(\"[getBinarySize] method requires input type 'string', recieved \".concat(typeof str));\n }\n return Buffer.byteLength(str, 'utf8');\n}\nexports.getBinarySize = getBinarySize;\n/**\n * Returns TRUE if the first specified array contains all elements\n * from the second one. FALSE otherwise.\n *\n * @param superset\n * @param subset\n *\n */\nfunction arrayContainsArray(superset, subset, some) {\n if (Array.isArray(superset) !== true) {\n throw new Error(\"[arrayContainsArray] method requires input 'superset' to be an array, got type '\".concat(typeof superset, \"'\"));\n }\n if (Array.isArray(subset) !== true) {\n throw new Error(\"[arrayContainsArray] method requires input 'subset' to be an array, got type '\".concat(typeof subset, \"'\"));\n }\n return subset[some ? 'some' : 'every'](function (value) { return superset.indexOf(value) >= 0; });\n}\nexports.arrayContainsArray = arrayContainsArray;\n/**\n * Should be called to get ascii from its hex representation\n *\n * @param string in hex\n * @returns ascii string representation of hex value\n */\nfunction toAscii(hex) {\n var str = '';\n var i = 0;\n var l = hex.length;\n if (hex.substring(0, 2) === '0x')\n i = 2;\n for (; i < l; i += 2) {\n var code = parseInt(hex.substr(i, 2), 16);\n str += String.fromCharCode(code);\n }\n return str;\n}\nexports.toAscii = toAscii;\n/**\n * Should be called to get hex representation (prefixed by 0x) of utf8 string\n *\n * @param string\n * @param optional padding\n * @returns hex representation of input string\n */\nfunction fromUtf8(stringValue) {\n var str = Buffer.from(stringValue, 'utf8');\n return \"0x\".concat(padToEven(str.toString('hex')).replace(/^0+|0+$/g, ''));\n}\nexports.fromUtf8 = fromUtf8;\n/**\n * Should be called to get hex representation (prefixed by 0x) of ascii string\n *\n * @param string\n * @param optional padding\n * @returns hex representation of input string\n */\nfunction fromAscii(stringValue) {\n var hex = '';\n for (var i = 0; i < stringValue.length; i++) {\n var code = stringValue.charCodeAt(i);\n var n = code.toString(16);\n hex += n.length < 2 ? \"0\".concat(n) : n;\n }\n return \"0x\".concat(hex);\n}\nexports.fromAscii = fromAscii;\n/**\n * Returns the keys from an array of objects.\n * @example\n * ```js\n * getKeys([{a: '1', b: '2'}, {a: '3', b: '4'}], 'a') => ['1', '3']\n *````\n * @param params\n * @param key\n * @param allowEmpty\n * @returns output just a simple array of output keys\n */\nfunction getKeys(params, key, allowEmpty) {\n if (!Array.isArray(params)) {\n throw new Error(\"[getKeys] method expects input 'params' to be an array, got \".concat(typeof params));\n }\n if (typeof key !== 'string') {\n throw new Error(\"[getKeys] method expects input 'key' to be type 'string', got \".concat(typeof params));\n }\n var result = [];\n for (var i = 0; i < params.length; i++) {\n var value = params[i][key];\n if (allowEmpty && !value) {\n value = '';\n }\n else if (typeof value !== 'string') {\n throw new Error(\"invalid abi - expected type 'string', received \".concat(typeof value));\n }\n result.push(value);\n }\n return result;\n}\nexports.getKeys = getKeys;\n/**\n * Is the string a hex string.\n *\n * @param value\n * @param length\n * @returns output the string is a hex string\n */\nfunction isHexString(value, length) {\n if (typeof value !== 'string' || !value.match(/^0x[0-9A-Fa-f]*$/))\n return false;\n if (length && value.length !== 2 + 2 * length)\n return false;\n return true;\n}\nexports.isHexString = isHexString;\n//# sourceMappingURL=internal.js.map","'use strict';\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar codes = {};\n\nfunction createErrorType(code, message, Base) {\n if (!Base) {\n Base = Error;\n }\n\n function getMessage(arg1, arg2, arg3) {\n if (typeof message === 'string') {\n return message;\n } else {\n return message(arg1, arg2, arg3);\n }\n }\n\n var NodeError =\n /*#__PURE__*/\n function (_Base) {\n _inheritsLoose(NodeError, _Base);\n\n function NodeError(arg1, arg2, arg3) {\n return _Base.call(this, getMessage(arg1, arg2, arg3)) || this;\n }\n\n return NodeError;\n }(Base);\n\n NodeError.prototype.name = Base.name;\n NodeError.prototype.code = code;\n codes[code] = NodeError;\n} // https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js\n\n\nfunction oneOf(expected, thing) {\n if (Array.isArray(expected)) {\n var len = expected.length;\n expected = expected.map(function (i) {\n return String(i);\n });\n\n if (len > 2) {\n return \"one of \".concat(thing, \" \").concat(expected.slice(0, len - 1).join(', '), \", or \") + expected[len - 1];\n } else if (len === 2) {\n return \"one of \".concat(thing, \" \").concat(expected[0], \" or \").concat(expected[1]);\n } else {\n return \"of \".concat(thing, \" \").concat(expected[0]);\n }\n } else {\n return \"of \".concat(thing, \" \").concat(String(expected));\n }\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith\n\n\nfunction startsWith(str, search, pos) {\n return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\n\n\nfunction includes(str, search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n\n if (start + search.length > str.length) {\n return false;\n } else {\n return str.indexOf(search, start) !== -1;\n }\n}\n\ncreateErrorType('ERR_INVALID_OPT_VALUE', function (name, value) {\n return 'The value \"' + value + '\" is invalid for option \"' + name + '\"';\n}, TypeError);\ncreateErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) {\n // determiner: 'must be' or 'must not be'\n var determiner;\n\n if (typeof expected === 'string' && startsWith(expected, 'not ')) {\n determiner = 'must not be';\n expected = expected.replace(/^not /, '');\n } else {\n determiner = 'must be';\n }\n\n var msg;\n\n if (endsWith(name, ' argument')) {\n // For cases like 'first argument'\n msg = \"The \".concat(name, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } else {\n var type = includes(name, '.') ? 'property' : 'argument';\n msg = \"The \\\"\".concat(name, \"\\\" \").concat(type, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n }\n\n msg += \". Received type \".concat(typeof actual);\n return msg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_PUSH_AFTER_EOF', 'stream.push() after EOF');\ncreateErrorType('ERR_METHOD_NOT_IMPLEMENTED', function (name) {\n return 'The ' + name + ' method is not implemented';\n});\ncreateErrorType('ERR_STREAM_PREMATURE_CLOSE', 'Premature close');\ncreateErrorType('ERR_STREAM_DESTROYED', function (name) {\n return 'Cannot call ' + name + ' after a stream was destroyed';\n});\ncreateErrorType('ERR_MULTIPLE_CALLBACK', 'Callback called multiple times');\ncreateErrorType('ERR_STREAM_CANNOT_PIPE', 'Cannot pipe, not readable');\ncreateErrorType('ERR_STREAM_WRITE_AFTER_END', 'write after end');\ncreateErrorType('ERR_STREAM_NULL_VALUES', 'May not write null values to stream', TypeError);\ncreateErrorType('ERR_UNKNOWN_ENCODING', function (arg) {\n return 'Unknown encoding: ' + arg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_UNSHIFT_AFTER_END_EVENT', 'stream.unshift() after end event');\nmodule.exports.codes = codes;\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// a duplex stream is just a stream that is both readable and writable.\n// Since JS doesn't have multiple prototypal inheritance, this class\n// prototypally inherits from Readable, and then parasitically from\n// Writable.\n'use strict';\n/**/\n\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n\n for (var key in obj) {\n keys.push(key);\n }\n\n return keys;\n};\n/**/\n\n\nmodule.exports = Duplex;\n\nvar Readable = require('./_stream_readable');\n\nvar Writable = require('./_stream_writable');\n\nrequire('inherits')(Duplex, Readable);\n\n{\n // Allow the keys array to be GC'ed.\n var keys = objectKeys(Writable.prototype);\n\n for (var v = 0; v < keys.length; v++) {\n var method = keys[v];\n if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];\n }\n}\n\nfunction Duplex(options) {\n if (!(this instanceof Duplex)) return new Duplex(options);\n Readable.call(this, options);\n Writable.call(this, options);\n this.allowHalfOpen = true;\n\n if (options) {\n if (options.readable === false) this.readable = false;\n if (options.writable === false) this.writable = false;\n\n if (options.allowHalfOpen === false) {\n this.allowHalfOpen = false;\n this.once('end', onend);\n }\n }\n}\n\nObject.defineProperty(Duplex.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n}); // the no-half-open enforcer\n\nfunction onend() {\n // If the writable side ended, then we're ok.\n if (this._writableState.ended) return; // no more data can be written.\n // But allow more writes to happen in this tick.\n\n process.nextTick(onEndNT, this);\n}\n\nfunction onEndNT(self) {\n self.end();\n}\n\nObject.defineProperty(Duplex.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined || this._writableState === undefined) {\n return false;\n }\n\n return this._readableState.destroyed && this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (this._readableState === undefined || this._writableState === undefined) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._readableState.destroyed = value;\n this._writableState.destroyed = value;\n }\n});","'use strict'\nvar inherits = require('inherits')\nvar MD5 = require('md5.js')\nvar RIPEMD160 = require('ripemd160')\nvar sha = require('sha.js')\nvar Base = require('cipher-base')\n\nfunction Hash (hash) {\n Base.call(this, 'digest')\n\n this._hash = hash\n}\n\ninherits(Hash, Base)\n\nHash.prototype._update = function (data) {\n this._hash.update(data)\n}\n\nHash.prototype._final = function () {\n return this._hash.digest()\n}\n\nmodule.exports = function createHash (alg) {\n alg = alg.toLowerCase()\n if (alg === 'md5') return new MD5()\n if (alg === 'rmd160' || alg === 'ripemd160') return new RIPEMD160()\n\n return new Hash(sha(alg))\n}\n","'use strict';\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar codes = {};\n\nfunction createErrorType(code, message, Base) {\n if (!Base) {\n Base = Error;\n }\n\n function getMessage(arg1, arg2, arg3) {\n if (typeof message === 'string') {\n return message;\n } else {\n return message(arg1, arg2, arg3);\n }\n }\n\n var NodeError =\n /*#__PURE__*/\n function (_Base) {\n _inheritsLoose(NodeError, _Base);\n\n function NodeError(arg1, arg2, arg3) {\n return _Base.call(this, getMessage(arg1, arg2, arg3)) || this;\n }\n\n return NodeError;\n }(Base);\n\n NodeError.prototype.name = Base.name;\n NodeError.prototype.code = code;\n codes[code] = NodeError;\n} // https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js\n\n\nfunction oneOf(expected, thing) {\n if (Array.isArray(expected)) {\n var len = expected.length;\n expected = expected.map(function (i) {\n return String(i);\n });\n\n if (len > 2) {\n return \"one of \".concat(thing, \" \").concat(expected.slice(0, len - 1).join(', '), \", or \") + expected[len - 1];\n } else if (len === 2) {\n return \"one of \".concat(thing, \" \").concat(expected[0], \" or \").concat(expected[1]);\n } else {\n return \"of \".concat(thing, \" \").concat(expected[0]);\n }\n } else {\n return \"of \".concat(thing, \" \").concat(String(expected));\n }\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith\n\n\nfunction startsWith(str, search, pos) {\n return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\n\n\nfunction includes(str, search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n\n if (start + search.length > str.length) {\n return false;\n } else {\n return str.indexOf(search, start) !== -1;\n }\n}\n\ncreateErrorType('ERR_INVALID_OPT_VALUE', function (name, value) {\n return 'The value \"' + value + '\" is invalid for option \"' + name + '\"';\n}, TypeError);\ncreateErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) {\n // determiner: 'must be' or 'must not be'\n var determiner;\n\n if (typeof expected === 'string' && startsWith(expected, 'not ')) {\n determiner = 'must not be';\n expected = expected.replace(/^not /, '');\n } else {\n determiner = 'must be';\n }\n\n var msg;\n\n if (endsWith(name, ' argument')) {\n // For cases like 'first argument'\n msg = \"The \".concat(name, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } else {\n var type = includes(name, '.') ? 'property' : 'argument';\n msg = \"The \\\"\".concat(name, \"\\\" \").concat(type, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n }\n\n msg += \". Received type \".concat(typeof actual);\n return msg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_PUSH_AFTER_EOF', 'stream.push() after EOF');\ncreateErrorType('ERR_METHOD_NOT_IMPLEMENTED', function (name) {\n return 'The ' + name + ' method is not implemented';\n});\ncreateErrorType('ERR_STREAM_PREMATURE_CLOSE', 'Premature close');\ncreateErrorType('ERR_STREAM_DESTROYED', function (name) {\n return 'Cannot call ' + name + ' after a stream was destroyed';\n});\ncreateErrorType('ERR_MULTIPLE_CALLBACK', 'Callback called multiple times');\ncreateErrorType('ERR_STREAM_CANNOT_PIPE', 'Cannot pipe, not readable');\ncreateErrorType('ERR_STREAM_WRITE_AFTER_END', 'write after end');\ncreateErrorType('ERR_STREAM_NULL_VALUES', 'May not write null values to stream', TypeError);\ncreateErrorType('ERR_UNKNOWN_ENCODING', function (arg) {\n return 'Unknown encoding: ' + arg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_UNSHIFT_AFTER_END_EVENT', 'stream.unshift() after end event');\nmodule.exports.codes = codes;\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// a duplex stream is just a stream that is both readable and writable.\n// Since JS doesn't have multiple prototypal inheritance, this class\n// prototypally inherits from Readable, and then parasitically from\n// Writable.\n'use strict';\n/**/\n\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n\n for (var key in obj) {\n keys.push(key);\n }\n\n return keys;\n};\n/**/\n\n\nmodule.exports = Duplex;\n\nvar Readable = require('./_stream_readable');\n\nvar Writable = require('./_stream_writable');\n\nrequire('inherits')(Duplex, Readable);\n\n{\n // Allow the keys array to be GC'ed.\n var keys = objectKeys(Writable.prototype);\n\n for (var v = 0; v < keys.length; v++) {\n var method = keys[v];\n if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];\n }\n}\n\nfunction Duplex(options) {\n if (!(this instanceof Duplex)) return new Duplex(options);\n Readable.call(this, options);\n Writable.call(this, options);\n this.allowHalfOpen = true;\n\n if (options) {\n if (options.readable === false) this.readable = false;\n if (options.writable === false) this.writable = false;\n\n if (options.allowHalfOpen === false) {\n this.allowHalfOpen = false;\n this.once('end', onend);\n }\n }\n}\n\nObject.defineProperty(Duplex.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n}); // the no-half-open enforcer\n\nfunction onend() {\n // If the writable side ended, then we're ok.\n if (this._writableState.ended) return; // no more data can be written.\n // But allow more writes to happen in this tick.\n\n process.nextTick(onEndNT, this);\n}\n\nfunction onEndNT(self) {\n self.end();\n}\n\nObject.defineProperty(Duplex.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined || this._writableState === undefined) {\n return false;\n }\n\n return this._readableState.destroyed && this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (this._readableState === undefined || this._writableState === undefined) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._readableState.destroyed = value;\n this._writableState.destroyed = value;\n }\n});","var Buffer = require('safe-buffer').Buffer\n\n// prototype class for hash functions\nfunction Hash (blockSize, finalSize) {\n this._block = Buffer.alloc(blockSize)\n this._finalSize = finalSize\n this._blockSize = blockSize\n this._len = 0\n}\n\nHash.prototype.update = function (data, enc) {\n if (typeof data === 'string') {\n enc = enc || 'utf8'\n data = Buffer.from(data, enc)\n }\n\n var block = this._block\n var blockSize = this._blockSize\n var length = data.length\n var accum = this._len\n\n for (var offset = 0; offset < length;) {\n var assigned = accum % blockSize\n var remainder = Math.min(length - offset, blockSize - assigned)\n\n for (var i = 0; i < remainder; i++) {\n block[assigned + i] = data[offset + i]\n }\n\n accum += remainder\n offset += remainder\n\n if ((accum % blockSize) === 0) {\n this._update(block)\n }\n }\n\n this._len += length\n return this\n}\n\nHash.prototype.digest = function (enc) {\n var rem = this._len % this._blockSize\n\n this._block[rem] = 0x80\n\n // zero (rem + 1) trailing bits, where (rem + 1) is the smallest\n // non-negative solution to the equation (length + 1 + (rem + 1)) === finalSize mod blockSize\n this._block.fill(0, rem + 1)\n\n if (rem >= this._finalSize) {\n this._update(this._block)\n this._block.fill(0)\n }\n\n var bits = this._len * 8\n\n // uint32\n if (bits <= 0xffffffff) {\n this._block.writeUInt32BE(bits, this._blockSize - 4)\n\n // uint64\n } else {\n var lowBits = (bits & 0xffffffff) >>> 0\n var highBits = (bits - lowBits) / 0x100000000\n\n this._block.writeUInt32BE(highBits, this._blockSize - 8)\n this._block.writeUInt32BE(lowBits, this._blockSize - 4)\n }\n\n this._update(this._block)\n var hash = this._hash()\n\n return enc ? hash.toString(enc) : hash\n}\n\nHash.prototype._update = function () {\n throw new Error('_update must be implemented by subclass')\n}\n\nmodule.exports = Hash\n","import Long from \"long\";\nimport * as hex from \"./encoding/hex.js\";\nimport BadEntityIdError from \"./BadEntityIdError.js\";\nimport * as util from \"./util.js\";\n\n/**\n * @typedef {import(\"./client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @typedef {object} IEntityId\n * @property {number | Long} num\n * @property {(number | Long)=} shard\n * @property {(number | Long)=} realm\n */\n\n/**\n * @typedef {object} IEntityIdResult\n * @property {Long} shard\n * @property {Long} realm\n * @property {Long} num\n */\n\n/**\n * @typedef {object} IEntityIdParts\n * @property {string?} shard\n * @property {string?} realm\n * @property {string} numOrHex\n * @property {string?} checksum\n */\n\n/**\n * @typedef {object} IEntityIdResultWithChecksum\n * @property {Long} shard\n * @property {Long} realm\n * @property {Long} num\n * @property {string | null} checksum\n */\n\nconst regex = RegExp(\n \"^(0|(?:[1-9]\\\\d*))\\\\.(0|(?:[1-9]\\\\d*))\\\\.(0|(?:[1-9]\\\\d*))(?:-([a-z]{5}))?$\"\n);\n\n/**\n * This regex supports entity IDs\n * - as stand alone nubmers\n * - as shard.realm.num\n * - as shard.realm.hex\n * - can optionally provide checksum for any of the above\n */\nconst ENTITY_ID_REGEX = /^(\\d+)(?:\\.(\\d+)\\.([a-fA-F0-9]+))?(?:-([a-z]{5}))?$/;\n\n/**\n * @param {number | Long | IEntityId} props\n * @param {(number | null | Long)=} realmOrNull\n * @param {(number | null | Long)=} numOrNull\n * @returns {IEntityIdResult}\n */\nexport function constructor(props, realmOrNull, numOrNull) {\n if (\n (realmOrNull == null && numOrNull != null) ||\n (realmOrNull != null && numOrNull == null)\n ) {\n throw new Error(\"invalid entity ID\");\n }\n\n const [shard, realm, num] =\n typeof props === \"number\" || Long.isLong(props)\n ? [\n numOrNull != null\n ? Long.fromValue(/** @type {Long | number} */ (props))\n : Long.ZERO,\n realmOrNull != null ? Long.fromValue(realmOrNull) : Long.ZERO,\n numOrNull != null\n ? Long.fromValue(numOrNull)\n : Long.fromValue(/** @type {Long | number} */ (props)),\n ]\n : [\n props.shard != null ? Long.fromValue(props.shard) : Long.ZERO,\n props.realm != null ? Long.fromValue(props.realm) : Long.ZERO,\n Long.fromValue(props.num),\n ];\n\n if (shard.isNegative() || realm.isNegative() || num.isNegative()) {\n throw new Error(\"negative numbers are not allowed in IDs\");\n }\n\n return {\n shard,\n realm,\n num,\n };\n}\n\n/**\n * @param {[Long, Long, Long]} a\n * @param {[Long, Long, Long]} b\n * @returns {number}\n */\nexport function compare(a, b) {\n let comparison = a[0].compare(b[0]);\n if (comparison != 0) {\n return comparison;\n }\n\n comparison = a[1].compare(b[1]);\n if (comparison != 0) {\n return comparison;\n }\n\n return a[2].compare(b[2]);\n}\n\n/**\n * @typedef {object} ParseAddressResult\n * @property {number} status\n * @property {Long} [num1]\n * @property {Long} [num2]\n * @property {Long} [num3]\n * @property {string} [correctChecksum]\n * @property {string} [givenChecksum]\n * @property {string} [noChecksumFormat]\n * @property {string} [withChecksumFormat]\n */\n\n/**\n * @param {string} text\n * @returns {IEntityIdParts}\n */\nexport function fromStringSplitter(text) {\n const match = ENTITY_ID_REGEX.exec(text);\n\n if (match == null) {\n throw new Error(`failed to parse entity id: ${text}`);\n }\n\n if (match[2] == null && match[3] == null) {\n return {\n shard: \"0\",\n realm: \"0\",\n numOrHex: match[1],\n checksum: match[4],\n };\n } else {\n return {\n shard: match[1],\n realm: match[2],\n numOrHex: match[3],\n checksum: match[4],\n };\n }\n}\n\n/**\n * @param {string} text\n * @returns {IEntityIdResultWithChecksum}\n */\nexport function fromString(text) {\n const result = fromStringSplitter(text);\n\n if (\n Number.isNaN(result.shard) ||\n Number.isNaN(result.realm) ||\n Number.isNaN(result.numOrHex)\n ) {\n throw new Error(\"invalid format for entity ID\");\n }\n\n return {\n shard: result.shard != null ? Long.fromString(result.shard) : Long.ZERO,\n realm: result.realm != null ? Long.fromString(result.realm) : Long.ZERO,\n num: Long.fromString(result.numOrHex),\n checksum: result.checksum,\n };\n}\n\n/**\n * @param {string} address\n * @returns {[Long, Long, Long]}\n */\nexport function fromSolidityAddress(address) {\n const addr = address.startsWith(\"0x\")\n ? hex.decode(address.slice(2))\n : hex.decode(address);\n\n if (addr.length !== 20) {\n throw new Error(`Invalid hex encoded solidity address length:\n expected length 40, got length ${address.length}`);\n }\n\n const shard = Long.fromBytesBE([0, 0, 0, 0, ...addr.slice(0, 4)]);\n const realm = Long.fromBytesBE(Array.from(addr.slice(4, 12)));\n const num = Long.fromBytesBE(Array.from(addr.slice(12, 20)));\n\n return [shard, realm, num];\n}\n\n/**\n * @param {[Long,Long,Long] | [number,number,number]} address\n * @returns {string}\n */\nexport function toSolidityAddress(address) {\n const buffer = new Uint8Array(20);\n const view = util.safeView(buffer);\n const [shard, realm, num] = address;\n\n view.setUint32(0, util.convertToNumber(shard));\n view.setUint32(8, util.convertToNumber(realm));\n view.setUint32(16, util.convertToNumber(num));\n\n return hex.encode(buffer);\n}\n\n/**\n * Parse the address string addr and return an object with the results (8 fields).\n * The first four fields are numbers, which could be implemented as signed 32 bit\n * integers, and the last four are strings.\n *\n * status; //the status of the parsed address\n * // 0 = syntax error\n * // 1 = an invalid with-checksum address (bad checksum)\n * // 2 = a valid no-checksum address\n * // 3 = a valid with-checksum address\n * num1; //the 3 numbers in the address, such as 1.2.3, with leading zeros removed\n * num2;\n * num3;\n * correctchecksum; //the correct checksum\n * givenChecksum; //the checksum in the address that was parsed\n * noChecksumFormat; //the address in no-checksum format\n * withChecksumFormat; //the address in with-checksum format\n *\n * @param {string} ledgerId\n * @param {string} addr\n * @returns {ParseAddressResult}\n */\nexport function _parseAddress(ledgerId, addr) {\n let match = regex.exec(addr);\n if (match === null) {\n let result = { status: 0 }; // When status == 0, the rest of the fields should be ignored\n return result;\n }\n let a = [\n Long.fromString(match[1]),\n Long.fromString(match[2]),\n Long.fromString(match[3]),\n ];\n let ad = `${a[0].toString()}.${a[1].toString()}.${a[2].toString()}`;\n let c = _checksum(ledgerId, ad);\n let s = match[4] === undefined ? 2 : c == match[4] ? 3 : 1; //the status\n let result = {\n status: s,\n num1: a[0],\n num2: a[1],\n num3: a[2],\n givenChecksum: match[4],\n correctChecksum: c,\n noChecksumFormat: ad,\n withChecksumFormat: `${ad}-${c}`,\n };\n return result;\n}\n\n/**\n * Given an address like \"0.0.123\", return a checksum like \"laujm\"\n *\n * @param {string} ledgerId\n * @param {string} addr\n * @returns {string}\n */\nexport function _checksum(ledgerId, addr) {\n let answer = \"\";\n let d = []; // Digits with 10 for \".\", so if addr == \"0.0.123\" then d == [0, 10, 0, 10, 1, 2, 3]\n let s0 = 0; // Sum of even positions (mod 11)\n let s1 = 0; // Sum of odd positions (mod 11)\n let s = 0; // Weighted sum of all positions (mod p3)\n let sh = 0; // Hash of the ledger ID\n let c = 0; // The checksum, as a single number\n const p3 = 26 * 26 * 26; // 3 digits in base 26\n const p5 = 26 * 26 * 26 * 26 * 26; // 5 digits in base 26\n const ascii_a = \"a\".charCodeAt(0); // 97\n const m = 1000003; // Min prime greater than a million. Used for the final permutation.\n const w = 31; // Sum s of digit values weights them by powers of w. Should be coprime to p5.\n\n let id = ledgerId + \"000000000000\";\n let h = [];\n for (var i = 0; i < id.length; i += 2) {\n h.push(parseInt(id.substring(i, i + 2), 16));\n }\n for (let i = 0; i < addr.length; i++) {\n d.push(addr[i] === \".\" ? 10 : parseInt(addr[i], 10));\n }\n for (let i = 0; i < d.length; i++) {\n s = (w * s + d[i]) % p3;\n if (i % 2 === 0) {\n s0 = (s0 + d[i]) % 11;\n } else {\n s1 = (s1 + d[i]) % 11;\n }\n }\n for (let i = 0; i < h.length; i++) {\n sh = (w * sh + h[i]) % p5;\n }\n c = ((((addr.length % 5) * 11 + s0) * 11 + s1) * p3 + s + sh) % p5;\n c = (c * m) % p5;\n\n for (let i = 0; i < 5; i++) {\n answer = String.fromCharCode(ascii_a + (c % 26)) + answer;\n c /= 26;\n }\n\n return answer;\n}\n\n/**\n * @param {Long} shard\n * @param {Long} realm\n * @param {Long} num\n * @param {string | null} checksum\n * @param {Client} client\n */\nexport function validateChecksum(shard, realm, num, checksum, client) {\n if (client._network._ledgerId == null || checksum == null) {\n return;\n }\n\n const expectedChecksum = _checksum(\n client._network._ledgerId._toStringForChecksum(),\n `${shard.toString()}.${realm.toString()}.${num.toString()}`\n );\n\n if (checksum != expectedChecksum) {\n throw new BadEntityIdError(\n shard,\n realm,\n num,\n checksum,\n expectedChecksum\n );\n }\n}\n\n/**\n * @param {string} string\n * @param {Client} client\n * @returns {string}\n */\nexport function toStringWithChecksum(string, client) {\n if (client._network._ledgerId == null) {\n throw new Error(\n \"cannot calculate checksum with a client that does not contain a recognzied ledger ID\"\n );\n }\n\n const checksum = _checksum(\n client._network._ledgerId._toStringForChecksum(),\n string\n );\n\n return `${string}-${checksum}`;\n}\n","import * as proto from \"@hashgraph/proto\";\nimport TokenId from \"../token/TokenId.js\";\nimport Long from \"long\";\n\n/**\n * The ID for a crypto-currency token on Hedera.\n *\n * @augments {EntityId}\n */\nexport default class NftId {\n /**\n * @param {TokenId} token\n * @param {number | Long} serial\n */\n constructor(token, serial) {\n this.tokenId = token;\n this.serial =\n typeof serial === \"number\" ? Long.fromNumber(serial) : serial;\n\n Object.freeze(this);\n }\n\n /**\n * @param {string} text\n * @returns {NftId}\n */\n static fromString(text) {\n const strings =\n text.split(\"/\").length > 1 ? text.split(\"/\") : text.split(\"@\");\n\n for (const string of strings) {\n if (string === \"\") {\n throw new Error(\n \"invalid format for NftId: use [token]/[serial] or [token]@[serial]\"\n );\n }\n }\n\n const token = TokenId.fromString(strings[0]);\n const serial = Long.fromString(strings[1]);\n\n return new NftId(token, serial);\n }\n\n /**\n * @internal\n * @param {proto.INftID} id\n * @returns {NftId}\n */\n static _fromProtobuf(id) {\n return new NftId(\n TokenId._fromProtobuf(/** @type {proto.ITokenID} */ (id.tokenID)),\n id.serialNumber != null ? id.serialNumber : Long.ZERO\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {NftId}\n */\n static fromBytes(bytes) {\n return NftId._fromProtobuf(proto.NftID.decode(bytes));\n }\n\n /**\n * @internal\n * @returns {proto.INftID}\n */\n _toProtobuf() {\n return {\n tokenID: this.tokenId._toProtobuf(),\n serialNumber: Long.fromValue(\n this.serial !== undefined ? this.serial : 0\n ),\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.serial.toString()}@${this.tokenId.toString()}`;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.NftID.encode(this._toProtobuf()).finish();\n }\n}\n","'use strict';\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar codes = {};\n\nfunction createErrorType(code, message, Base) {\n if (!Base) {\n Base = Error;\n }\n\n function getMessage(arg1, arg2, arg3) {\n if (typeof message === 'string') {\n return message;\n } else {\n return message(arg1, arg2, arg3);\n }\n }\n\n var NodeError =\n /*#__PURE__*/\n function (_Base) {\n _inheritsLoose(NodeError, _Base);\n\n function NodeError(arg1, arg2, arg3) {\n return _Base.call(this, getMessage(arg1, arg2, arg3)) || this;\n }\n\n return NodeError;\n }(Base);\n\n NodeError.prototype.name = Base.name;\n NodeError.prototype.code = code;\n codes[code] = NodeError;\n} // https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js\n\n\nfunction oneOf(expected, thing) {\n if (Array.isArray(expected)) {\n var len = expected.length;\n expected = expected.map(function (i) {\n return String(i);\n });\n\n if (len > 2) {\n return \"one of \".concat(thing, \" \").concat(expected.slice(0, len - 1).join(', '), \", or \") + expected[len - 1];\n } else if (len === 2) {\n return \"one of \".concat(thing, \" \").concat(expected[0], \" or \").concat(expected[1]);\n } else {\n return \"of \".concat(thing, \" \").concat(expected[0]);\n }\n } else {\n return \"of \".concat(thing, \" \").concat(String(expected));\n }\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith\n\n\nfunction startsWith(str, search, pos) {\n return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\n\n\nfunction includes(str, search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n\n if (start + search.length > str.length) {\n return false;\n } else {\n return str.indexOf(search, start) !== -1;\n }\n}\n\ncreateErrorType('ERR_INVALID_OPT_VALUE', function (name, value) {\n return 'The value \"' + value + '\" is invalid for option \"' + name + '\"';\n}, TypeError);\ncreateErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) {\n // determiner: 'must be' or 'must not be'\n var determiner;\n\n if (typeof expected === 'string' && startsWith(expected, 'not ')) {\n determiner = 'must not be';\n expected = expected.replace(/^not /, '');\n } else {\n determiner = 'must be';\n }\n\n var msg;\n\n if (endsWith(name, ' argument')) {\n // For cases like 'first argument'\n msg = \"The \".concat(name, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } else {\n var type = includes(name, '.') ? 'property' : 'argument';\n msg = \"The \\\"\".concat(name, \"\\\" \").concat(type, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n }\n\n msg += \". Received type \".concat(typeof actual);\n return msg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_PUSH_AFTER_EOF', 'stream.push() after EOF');\ncreateErrorType('ERR_METHOD_NOT_IMPLEMENTED', function (name) {\n return 'The ' + name + ' method is not implemented';\n});\ncreateErrorType('ERR_STREAM_PREMATURE_CLOSE', 'Premature close');\ncreateErrorType('ERR_STREAM_DESTROYED', function (name) {\n return 'Cannot call ' + name + ' after a stream was destroyed';\n});\ncreateErrorType('ERR_MULTIPLE_CALLBACK', 'Callback called multiple times');\ncreateErrorType('ERR_STREAM_CANNOT_PIPE', 'Cannot pipe, not readable');\ncreateErrorType('ERR_STREAM_WRITE_AFTER_END', 'write after end');\ncreateErrorType('ERR_STREAM_NULL_VALUES', 'May not write null values to stream', TypeError);\ncreateErrorType('ERR_UNKNOWN_ENCODING', function (arg) {\n return 'Unknown encoding: ' + arg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_UNSHIFT_AFTER_END_EVENT', 'stream.unshift() after end event');\nmodule.exports.codes = codes;\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// a duplex stream is just a stream that is both readable and writable.\n// Since JS doesn't have multiple prototypal inheritance, this class\n// prototypally inherits from Readable, and then parasitically from\n// Writable.\n'use strict';\n/**/\n\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n\n for (var key in obj) {\n keys.push(key);\n }\n\n return keys;\n};\n/**/\n\n\nmodule.exports = Duplex;\n\nvar Readable = require('./_stream_readable');\n\nvar Writable = require('./_stream_writable');\n\nrequire('inherits')(Duplex, Readable);\n\n{\n // Allow the keys array to be GC'ed.\n var keys = objectKeys(Writable.prototype);\n\n for (var v = 0; v < keys.length; v++) {\n var method = keys[v];\n if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];\n }\n}\n\nfunction Duplex(options) {\n if (!(this instanceof Duplex)) return new Duplex(options);\n Readable.call(this, options);\n Writable.call(this, options);\n this.allowHalfOpen = true;\n\n if (options) {\n if (options.readable === false) this.readable = false;\n if (options.writable === false) this.writable = false;\n\n if (options.allowHalfOpen === false) {\n this.allowHalfOpen = false;\n this.once('end', onend);\n }\n }\n}\n\nObject.defineProperty(Duplex.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n}); // the no-half-open enforcer\n\nfunction onend() {\n // If the writable side ended, then we're ok.\n if (this._writableState.ended) return; // no more data can be written.\n // But allow more writes to happen in this tick.\n\n process.nextTick(onEndNT, this);\n}\n\nfunction onEndNT(self) {\n self.end();\n}\n\nObject.defineProperty(Duplex.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined || this._writableState === undefined) {\n return false;\n }\n\n return this._readableState.destroyed && this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (this._readableState === undefined || this._writableState === undefined) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._readableState.destroyed = value;\n this._writableState.destroyed = value;\n }\n});","'use strict';\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar codes = {};\n\nfunction createErrorType(code, message, Base) {\n if (!Base) {\n Base = Error;\n }\n\n function getMessage(arg1, arg2, arg3) {\n if (typeof message === 'string') {\n return message;\n } else {\n return message(arg1, arg2, arg3);\n }\n }\n\n var NodeError =\n /*#__PURE__*/\n function (_Base) {\n _inheritsLoose(NodeError, _Base);\n\n function NodeError(arg1, arg2, arg3) {\n return _Base.call(this, getMessage(arg1, arg2, arg3)) || this;\n }\n\n return NodeError;\n }(Base);\n\n NodeError.prototype.name = Base.name;\n NodeError.prototype.code = code;\n codes[code] = NodeError;\n} // https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js\n\n\nfunction oneOf(expected, thing) {\n if (Array.isArray(expected)) {\n var len = expected.length;\n expected = expected.map(function (i) {\n return String(i);\n });\n\n if (len > 2) {\n return \"one of \".concat(thing, \" \").concat(expected.slice(0, len - 1).join(', '), \", or \") + expected[len - 1];\n } else if (len === 2) {\n return \"one of \".concat(thing, \" \").concat(expected[0], \" or \").concat(expected[1]);\n } else {\n return \"of \".concat(thing, \" \").concat(expected[0]);\n }\n } else {\n return \"of \".concat(thing, \" \").concat(String(expected));\n }\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith\n\n\nfunction startsWith(str, search, pos) {\n return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\n\n\nfunction includes(str, search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n\n if (start + search.length > str.length) {\n return false;\n } else {\n return str.indexOf(search, start) !== -1;\n }\n}\n\ncreateErrorType('ERR_INVALID_OPT_VALUE', function (name, value) {\n return 'The value \"' + value + '\" is invalid for option \"' + name + '\"';\n}, TypeError);\ncreateErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) {\n // determiner: 'must be' or 'must not be'\n var determiner;\n\n if (typeof expected === 'string' && startsWith(expected, 'not ')) {\n determiner = 'must not be';\n expected = expected.replace(/^not /, '');\n } else {\n determiner = 'must be';\n }\n\n var msg;\n\n if (endsWith(name, ' argument')) {\n // For cases like 'first argument'\n msg = \"The \".concat(name, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } else {\n var type = includes(name, '.') ? 'property' : 'argument';\n msg = \"The \\\"\".concat(name, \"\\\" \").concat(type, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n }\n\n msg += \". Received type \".concat(typeof actual);\n return msg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_PUSH_AFTER_EOF', 'stream.push() after EOF');\ncreateErrorType('ERR_METHOD_NOT_IMPLEMENTED', function (name) {\n return 'The ' + name + ' method is not implemented';\n});\ncreateErrorType('ERR_STREAM_PREMATURE_CLOSE', 'Premature close');\ncreateErrorType('ERR_STREAM_DESTROYED', function (name) {\n return 'Cannot call ' + name + ' after a stream was destroyed';\n});\ncreateErrorType('ERR_MULTIPLE_CALLBACK', 'Callback called multiple times');\ncreateErrorType('ERR_STREAM_CANNOT_PIPE', 'Cannot pipe, not readable');\ncreateErrorType('ERR_STREAM_WRITE_AFTER_END', 'write after end');\ncreateErrorType('ERR_STREAM_NULL_VALUES', 'May not write null values to stream', TypeError);\ncreateErrorType('ERR_UNKNOWN_ENCODING', function (arg) {\n return 'Unknown encoding: ' + arg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_UNSHIFT_AFTER_END_EVENT', 'stream.unshift() after end event');\nmodule.exports.codes = codes;\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// a duplex stream is just a stream that is both readable and writable.\n// Since JS doesn't have multiple prototypal inheritance, this class\n// prototypally inherits from Readable, and then parasitically from\n// Writable.\n'use strict';\n/**/\n\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n\n for (var key in obj) {\n keys.push(key);\n }\n\n return keys;\n};\n/**/\n\n\nmodule.exports = Duplex;\n\nvar Readable = require('./_stream_readable');\n\nvar Writable = require('./_stream_writable');\n\nrequire('inherits')(Duplex, Readable);\n\n{\n // Allow the keys array to be GC'ed.\n var keys = objectKeys(Writable.prototype);\n\n for (var v = 0; v < keys.length; v++) {\n var method = keys[v];\n if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];\n }\n}\n\nfunction Duplex(options) {\n if (!(this instanceof Duplex)) return new Duplex(options);\n Readable.call(this, options);\n Writable.call(this, options);\n this.allowHalfOpen = true;\n\n if (options) {\n if (options.readable === false) this.readable = false;\n if (options.writable === false) this.writable = false;\n\n if (options.allowHalfOpen === false) {\n this.allowHalfOpen = false;\n this.once('end', onend);\n }\n }\n}\n\nObject.defineProperty(Duplex.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n}); // the no-half-open enforcer\n\nfunction onend() {\n // If the writable side ended, then we're ok.\n if (this._writableState.ended) return; // no more data can be written.\n // But allow more writes to happen in this tick.\n\n process.nextTick(onEndNT, this);\n}\n\nfunction onEndNT(self) {\n self.end();\n}\n\nObject.defineProperty(Duplex.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined || this._writableState === undefined) {\n return false;\n }\n\n return this._readableState.destroyed && this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (this._readableState === undefined || this._writableState === undefined) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._readableState.destroyed = value;\n this._writableState.destroyed = value;\n }\n});","var Buffer = require('safe-buffer').Buffer\n\n// prototype class for hash functions\nfunction Hash (blockSize, finalSize) {\n this._block = Buffer.alloc(blockSize)\n this._finalSize = finalSize\n this._blockSize = blockSize\n this._len = 0\n}\n\nHash.prototype.update = function (data, enc) {\n if (typeof data === 'string') {\n enc = enc || 'utf8'\n data = Buffer.from(data, enc)\n }\n\n var block = this._block\n var blockSize = this._blockSize\n var length = data.length\n var accum = this._len\n\n for (var offset = 0; offset < length;) {\n var assigned = accum % blockSize\n var remainder = Math.min(length - offset, blockSize - assigned)\n\n for (var i = 0; i < remainder; i++) {\n block[assigned + i] = data[offset + i]\n }\n\n accum += remainder\n offset += remainder\n\n if ((accum % blockSize) === 0) {\n this._update(block)\n }\n }\n\n this._len += length\n return this\n}\n\nHash.prototype.digest = function (enc) {\n var rem = this._len % this._blockSize\n\n this._block[rem] = 0x80\n\n // zero (rem + 1) trailing bits, where (rem + 1) is the smallest\n // non-negative solution to the equation (length + 1 + (rem + 1)) === finalSize mod blockSize\n this._block.fill(0, rem + 1)\n\n if (rem >= this._finalSize) {\n this._update(this._block)\n this._block.fill(0)\n }\n\n var bits = this._len * 8\n\n // uint32\n if (bits <= 0xffffffff) {\n this._block.writeUInt32BE(bits, this._blockSize - 4)\n\n // uint64\n } else {\n var lowBits = (bits & 0xffffffff) >>> 0\n var highBits = (bits - lowBits) / 0x100000000\n\n this._block.writeUInt32BE(highBits, this._blockSize - 8)\n this._block.writeUInt32BE(lowBits, this._blockSize - 4)\n }\n\n this._update(this._block)\n var hash = this._hash()\n\n return enc ? hash.toString(enc) : hash\n}\n\nHash.prototype._update = function () {\n throw new Error('_update must be implemented by subclass')\n}\n\nmodule.exports = Hash\n","import Long from \"long\";\nimport * as hex from \"./encoding/hex.js\";\nimport BadEntityIdError from \"./BadEntityIdError.js\";\nimport * as util from \"./util.js\";\nimport PublicKey from \"./PublicKey.js\";\n\n/**\n * @typedef {import(\"./client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @typedef {object} IEntityId\n * @property {(PublicKey | null)=} aliasKey\n * @property {number | Long} num\n * @property {(number | Long)=} shard\n * @property {(number | Long)=} realm\n */\n\n/**\n * @typedef {object} IEntityIdResult\n * @property {Long} shard\n * @property {Long} realm\n * @property {Long} num\n * @property {(PublicKey | null)=} aliasKey\n */\n\n/**\n * @typedef {object} IEntityIdResultWithChecksum\n * @property {Long} shard\n * @property {Long} realm\n * @property {Long} num\n * @property {string | null} checksum\n * @property {PublicKey | null} aliasKey\n */\n\nconst regex = RegExp(\n \"^(0|(?:[1-9]\\\\d*))\\\\.(0|(?:[1-9]\\\\d*))\\\\.(0|(?:[1-9]\\\\d*))(?:-([a-z]{5}))?$\"\n);\n\n/**\n * @param {number | Long | IEntityId} props\n * @param {(number | null | Long)=} realm\n * @param {(number | null | Long | PublicKey)=} numOrAliasKey\n * @returns {IEntityIdResult}\n */\nexport function constructor(props, realm, numOrAliasKey) {\n let shard_ = Long.ZERO;\n let realm_ = Long.ZERO;\n let num_ = Long.ZERO;\n let aliasKey_;\n\n if (numOrAliasKey instanceof PublicKey) {\n aliasKey_ = numOrAliasKey;\n }\n\n if (typeof props === \"number\" || Long.isLong(props)) {\n if (realm == null || typeof realm === \"string\") {\n num_ = Long.fromValue(props);\n } else {\n shard_ = Long.fromValue(props);\n realm_ = Long.fromValue(realm);\n num_ =\n numOrAliasKey != null && !(numOrAliasKey instanceof PublicKey)\n ? Long.fromValue(numOrAliasKey)\n : Long.ZERO;\n }\n } else {\n shard_ = Long.fromValue(props.shard != null ? props.shard : 0);\n realm_ = Long.fromValue(props.realm != null ? props.realm : 0);\n num_ = Long.fromValue(props.num != null ? props.num : 0);\n aliasKey_ = props.aliasKey;\n }\n\n if (shard_.isNegative() || realm_.isNegative() || num_.isNegative()) {\n throw new Error(\"negative numbers are not allowed in IDs\");\n }\n\n return {\n shard: shard_,\n realm: realm_,\n num: num_,\n aliasKey: aliasKey_,\n };\n}\n\n/**\n * @param {[Long, Long, Long]} a\n * @param {[Long, Long, Long]} b\n * @returns {number}\n */\nexport function compare(a, b) {\n let comparison = a[0].compare(b[0]);\n if (comparison != 0) {\n return comparison;\n }\n\n comparison = a[1].compare(b[1]);\n if (comparison != 0) {\n return comparison;\n }\n\n return a[2].compare(b[2]);\n}\n\n/**\n * @typedef {object} ParseAddressResult\n * @property {number} status\n * @property {Long} [num1]\n * @property {Long} [num2]\n * @property {Long} [num3]\n * @property {string} [correctChecksum]\n * @property {string} [givenChecksum]\n * @property {string} [noChecksumFormat]\n * @property {string} [withChecksumFormat]\n */\n\n/**\n * @param {string} text\n * @returns {IEntityIdResultWithChecksum}\n */\nexport function fromString(text) {\n const [id, checksum] = text.split(\"-\");\n const parts = id.split(\".\");\n\n for (const part of parts) {\n if (part === \"\") {\n throw new Error(\"invalid format for entity ID\");\n }\n }\n\n const components = parts.map(Number);\n\n for (const component of components) {\n if (Number.isNaN(component)) {\n throw new Error(\"invalid format for entity ID\");\n }\n }\n\n let shard = Long.ZERO;\n let realm = Long.ZERO;\n let num;\n\n if (components.length === 1) {\n num = Long.fromNumber(components[0]);\n } else if (components.length === 3) {\n shard = Long.fromNumber(components[0]);\n realm = Long.fromNumber(components[1]);\n num = Long.fromNumber(components[2]);\n } else {\n throw new Error(\"invalid format for entity ID\");\n }\n\n return {\n shard,\n realm,\n num,\n checksum,\n aliasKey: null,\n };\n}\n\n/**\n * @param {string} address\n * @returns {[Long, Long, Long]}\n */\nexport function fromSolidityAddress(address) {\n const addr = address.startsWith(\"0x\")\n ? hex.decode(address.slice(2))\n : hex.decode(address);\n\n if (addr.length !== 20) {\n throw new Error(`Invalid hex encoded solidity address length:\n expected length 40, got length ${address.length}`);\n }\n\n const shard = Long.fromBytesBE([0, 0, 0, 0, ...addr.slice(0, 4)]);\n const realm = Long.fromBytesBE(Array.from(addr.slice(4, 12)));\n const num = Long.fromBytesBE(Array.from(addr.slice(12, 20)));\n\n return [shard, realm, num];\n}\n\n/**\n * @param {[Long,Long,Long] | [number,number,number]} address\n * @returns {string}\n */\nexport function toSolidityAddress(address) {\n const buffer = new Uint8Array(20);\n const view = util.safeView(buffer);\n const [shard, realm, num] = address;\n\n view.setUint32(0, util.convertToNumber(shard));\n view.setUint32(8, util.convertToNumber(realm));\n view.setUint32(16, util.convertToNumber(num));\n\n return hex.encode(buffer);\n}\n\n/**\n * Parse the address string addr and return an object with the results (8 fields).\n * The first four fields are numbers, which could be implemented as signed 32 bit\n * integers, and the last four are strings.\n *\n * status; //the status of the parsed address\n * // 0 = syntax error\n * // 1 = an invalid with-checksum address (bad checksum)\n * // 2 = a valid no-checksum address\n * // 3 = a valid with-checksum address\n * num1; //the 3 numbers in the address, such as 1.2.3, with leading zeros removed\n * num2;\n * num3;\n * correctchecksum; //the correct checksum\n * givenChecksum; //the checksum in the address that was parsed\n * noChecksumFormat; //the address in no-checksum format\n * withChecksumFormat; //the address in with-checksum format\n *\n * @param {string} ledgerId\n * @param {string} addr\n * @returns {ParseAddressResult}\n */\nexport function _parseAddress(ledgerId, addr) {\n let match = regex.exec(addr);\n if (match === null) {\n let result = { status: 0 }; // When status == 0, the rest of the fields should be ignored\n return result;\n }\n let a = [\n Long.fromString(match[1]),\n Long.fromString(match[2]),\n Long.fromString(match[3]),\n ];\n let ad = `${a[0].toString()}.${a[1].toString()}.${a[2].toString()}`;\n let c = _checksum(ledgerId, ad);\n let s = match[4] === undefined ? 2 : c == match[4] ? 3 : 1; //the status\n let result = {\n status: s,\n num1: a[0],\n num2: a[1],\n num3: a[2],\n givenChecksum: match[4],\n correctChecksum: c,\n noChecksumFormat: ad,\n withChecksumFormat: `${ad}-${c}`,\n };\n return result;\n}\n\n/**\n * Given an address like \"0.0.123\", return a checksum like \"laujm\"\n *\n * @param {string} ledgerId\n * @param {string} addr\n * @returns {string}\n */\nexport function _checksum(ledgerId, addr) {\n let answer = \"\";\n let d = []; // Digits with 10 for \".\", so if addr == \"0.0.123\" then d == [0, 10, 0, 10, 1, 2, 3]\n let s0 = 0; // Sum of even positions (mod 11)\n let s1 = 0; // Sum of odd positions (mod 11)\n let s = 0; // Weighted sum of all positions (mod p3)\n let sh = 0; // Hash of the ledger ID\n let c = 0; // The checksum, as a single number\n const p3 = 26 * 26 * 26; // 3 digits in base 26\n const p5 = 26 * 26 * 26 * 26 * 26; // 5 digits in base 26\n const ascii_a = \"a\".charCodeAt(0); // 97\n const m = 1000003; // Min prime greater than a million. Used for the final permutation.\n const w = 31; // Sum s of digit values weights them by powers of w. Should be coprime to p5.\n\n let id = ledgerId + \"000000000000\";\n let h = [];\n for (var i = 0; i < id.length; i += 2) {\n h.push(parseInt(id.substring(i, i + 2), 16));\n }\n for (let i = 0; i < addr.length; i++) {\n d.push(addr[i] === \".\" ? 10 : parseInt(addr[i], 10));\n }\n for (let i = 0; i < d.length; i++) {\n s = (w * s + d[i]) % p3;\n if (i % 2 === 0) {\n s0 = (s0 + d[i]) % 11;\n } else {\n s1 = (s1 + d[i]) % 11;\n }\n }\n for (let i = 0; i < h.length; i++) {\n sh = (w * sh + h[i]) % p5;\n }\n c = ((((addr.length % 5) * 11 + s0) * 11 + s1) * p3 + s + sh) % p5;\n c = (c * m) % p5;\n\n for (let i = 0; i < 5; i++) {\n answer = String.fromCharCode(ascii_a + (c % 26)) + answer;\n c /= 26;\n }\n\n return answer;\n}\n\n/**\n * @param {Long} shard\n * @param {Long} realm\n * @param {Long} num\n * @param {string | null} checksum\n * @param {Client} client\n */\nexport function validateChecksum(shard, realm, num, checksum, client) {\n if (client._network._ledgerId == null || checksum == null) {\n return;\n }\n\n const expectedChecksum = _checksum(\n client._network._ledgerId._toStringForChecksum(),\n `${shard.toString()}.${realm.toString()}.${num.toString()}`\n );\n\n if (checksum != expectedChecksum) {\n throw new BadEntityIdError(\n shard,\n realm,\n num,\n checksum,\n expectedChecksum\n );\n }\n}\n\n/**\n * @param {string} string\n * @param {Client} client\n * @returns {string}\n */\nexport function toStringWithChecksum(string, client) {\n if (client._network._ledgerId == null) {\n throw new Error(\n \"cannot calculate checksum with a client that does not contain a recognzied ledger ID\"\n );\n }\n\n const checksum = _checksum(\n client._network._ledgerId._toStringForChecksum(),\n string\n );\n\n return `${string}-${checksum}`;\n}\n","import GrpcServiceError from \"./grpc/GrpcServiceError.js\";\nimport GrpcStatus from \"./grpc/GrpcStatus.js\";\n\n/**\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n * @typedef {import(\"./channel/Channel.js\").default} Channel\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * @enum {string}\n */\nexport const ExecutionState = {\n Finished: \"Finished\",\n Retry: \"Retry\",\n Error: \"Error\",\n};\n\nexport const RST_STREAM = /\\brst[^0-9a-zA-Z]stream\\b/i;\n\n/**\n * @abstract\n * @internal\n * @template RequestT\n * @template ResponseT\n * @template OutputT\n */\nexport default class Executable {\n constructor() {\n /**\n * The number of times we can retry the grpc call\n *\n * @private\n * @type {number}\n */\n this._maxAttempts = 10;\n\n /**\n * The index of the next transaction to be executed.\n *\n * @protected\n * @type {number}\n */\n this._nextNodeIndex = 0;\n\n /**\n * List of node account IDs for each transaction that has been\n * built.\n *\n * @internal\n * @type {AccountId[]}\n */\n this._nodeIds = [];\n\n /** @type {number | null} */\n this._minBackoff = null;\n\n /** @type {number | null} */\n this._maxBackoff = null;\n }\n\n /**\n * @returns {?AccountId[]}\n */\n get nodeAccountIds() {\n return this._nodeIds.length != 0 ? this._nodeIds : null;\n }\n\n /**\n * @param {AccountId[]} nodeIds\n * @returns {this}\n */\n setNodeAccountIds(nodeIds) {\n this._nodeIds = nodeIds;\n\n return this;\n }\n\n /**\n * @deprecated\n * @returns {number}\n */\n get maxRetries() {\n console.warn(\"Deprecated: use maxAttempts instead\");\n return this.maxAttempts;\n }\n\n /**\n * @param {number} maxRetries\n * @returns {this}\n */\n setMaxRetries(maxRetries) {\n console.warn(\"Deprecated: use setMaxAttempts() instead\");\n return this.setMaxAttempts(maxRetries);\n }\n\n /**\n * @returns {number}\n */\n get maxAttempts() {\n return this._maxAttempts;\n }\n\n /**\n * @param {number} maxAttempts\n * @returns {this}\n */\n setMaxAttempts(maxAttempts) {\n this._maxAttempts = maxAttempts;\n\n return this;\n }\n\n /**\n * @param {number} minBackoff\n * @returns {this}\n */\n setMinBackoff(minBackoff) {\n if (minBackoff == null) {\n throw new Error(\"minBackoff cannot be null.\");\n } else if (this._maxBackoff != null && minBackoff > this._maxBackoff) {\n throw new Error(\"minBackoff cannot be larger than maxBackoff.\");\n }\n this._minBackoff = minBackoff;\n return this;\n }\n\n /**\n * @returns {number | null}\n */\n get minBackoff() {\n return this._minBackoff;\n }\n\n /**\n * @param {?number} maxBackoff\n * @returns {this}\n */\n setMaxBackoff(maxBackoff) {\n if (maxBackoff == null) {\n throw new Error(\"maxBackoff cannot be null.\");\n } else if (this._minBackoff != null && maxBackoff < this._minBackoff) {\n throw new Error(\"maxBackoff cannot be smaller than minBackoff.\");\n }\n this._maxBackoff = maxBackoff;\n return this;\n }\n\n /**\n * @returns {number | null}\n */\n get maxBackoff() {\n return this._maxBackoff;\n }\n\n // /**\n // * @param {?number} minBackoff\n // * @param {?number} maxBackoff\n // * @returns {this}\n // */\n // _setBackoff(minBackoff, maxBackoff) {\n // if (minBackoff == null) {\n // throw new Error(\"minBackoff cannot be null.\");\n // }\n // if (maxBackoff == null) {\n // throw new Error(\"maxBackoff cannot be null.\");\n // }\n // if (minBackoff > maxBackoff) {\n // throw new Error(\"minBackoff cannot be larger than maxBackoff.\");\n // }\n // this._minBackoff = minBackoff;\n // this._maxAttempts = maxBackoff;\n // return this;\n // }\n\n // /**\n // * @typedef {Object} Backoff\n // * @property {number | null} minBackoff\n // * @property {number | null} maxBackoff\n // * @returns {Backoff}\n // */\n // get _backoff() {\n // return { minBackoff: this._minBackoff, maxBackoff: this._maxBackoff };\n // }\n\n /**\n * @abstract\n * @protected\n * @param {import(\"./client/Client.js\").default} client\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _beforeExecute(client) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @returns {Promise}\n */\n _makeRequestAsync() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @internal\n * @param {RequestT} request\n * @param {ResponseT} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @param {ResponseT} response\n * @param {AccountId} nodeAccountId\n * @param {RequestT} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @internal\n * @param {Channel} channel\n * @param {RequestT} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _execute(channel, request) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @returns {AccountId}\n */\n _getNodeAccountId() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @protected\n * @returns {TransactionId}\n */\n _getTransactionId() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @returns {void}\n */\n _advanceRequest() {\n // each time we move our cursor to the next transaction\n // wrapping around to ensure we are cycling\n this._nextNodeIndex = (this._nextNodeIndex + 1) % this._nodeIds.length;\n }\n\n /**\n * @abstract\n * @protected\n * @param {RequestT} request\n * @param {ResponseT} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @protected\n * @param {GrpcServiceError} error\n * @returns {boolean}\n */\n _shouldRetryExceptionally(error) {\n return (\n error.status._code === GrpcStatus.Unavailable._code ||\n error.status._code === GrpcStatus.ResourceExhausted._code ||\n (error.status._code === GrpcStatus.Internal._code &&\n RST_STREAM.test(error.message))\n );\n }\n\n /**\n * @template {Channel} ChannelT\n * @template MirrorChannelT\n * @param {import(\"./client/Client.js\").default} client\n * @returns {Promise}\n */\n async execute(client) {\n await this._beforeExecute(client);\n\n if (this._maxBackoff == null) {\n this._maxBackoff = client.maxBackoff;\n }\n if (this._minBackoff == null) {\n this._minBackoff = client.minBackoff;\n }\n\n const maxAttempts =\n client._maxAttempts != null\n ? client._maxAttempts\n : this._maxAttempts;\n\n for (let attempt = 1 /* loop forever */; ; attempt += 1) {\n const nodeAccountId = this._getNodeAccountId();\n const node = client._network.getNode(nodeAccountId);\n\n if (node == null) {\n throw new Error(\n `NodeAccountId not recognized: ${nodeAccountId.toString()}`\n );\n }\n\n const channel = node.getChannel();\n const request = await this._makeRequestAsync();\n\n // advance the internal index\n // non-free queries and transactions map to more than 1 actual transaction and this will cause\n // the next invocation of makeRequest to return the _next_ transaction\n this._advanceRequest();\n\n let response;\n\n if (!node.isHealthy()) {\n await node.wait();\n }\n\n try {\n response = await this._execute(channel, request);\n } catch (err) {\n const error = GrpcServiceError._fromResponse(\n /** @type {Error} */ (err)\n );\n\n if (\n error instanceof GrpcServiceError &&\n this._shouldRetryExceptionally(error) &&\n attempt <= maxAttempts\n ) {\n node.increaseDelay();\n continue;\n }\n\n throw err;\n }\n\n node.decreaseDelay();\n\n switch (this._shouldRetry(request, response)) {\n case ExecutionState.Retry:\n await delayForAttempt(\n attempt,\n this._minBackoff,\n this._maxBackoff\n );\n continue;\n case ExecutionState.Finished:\n return this._mapResponse(response, nodeAccountId, request);\n case ExecutionState.Error:\n throw this._mapStatusError(request, response);\n default:\n throw new Error(\n \"(BUG) non-exhuastive switch statement for `ExecutionState`\"\n );\n }\n }\n }\n}\n\n/**\n * @param {number} attempt\n * @param {number} minBackoff\n * @param {number} maxBackoff\n * @returns {Promise}\n */\nfunction delayForAttempt(attempt, minBackoff, maxBackoff) {\n // 0.1s, 0.2s, 0.4s, 0.8s, ...\n const ms = Math.min(\n Math.floor(minBackoff * Math.pow(2, attempt)),\n maxBackoff\n );\n return new Promise((resolve) => setTimeout(resolve, ms));\n}\n","/**\n * @param {Uint8Array} array1\n * @param {Uint8Array} array2\n * @returns {boolean}\n */\nexport function arrayEqual(array1, array2) {\n if (array1 === array2) {\n return true;\n }\n\n if (array1.byteLength !== array2.byteLength) {\n return false;\n }\n\n const view1 = new DataView(\n array1.buffer,\n array1.byteOffset,\n array1.byteLength\n );\n const view2 = new DataView(\n array2.buffer,\n array2.byteOffset,\n array2.byteLength\n );\n\n let i = array1.byteLength;\n\n while (i--) {\n if (view1.getUint8(i) !== view2.getUint8(i)) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * @param {Uint8Array} array\n * @param {Uint8Array} arrayPrefix\n * @returns {boolean}\n */\nexport function arrayStartsWith(array, arrayPrefix) {\n if (array.byteLength < arrayPrefix.byteLength) {\n return false;\n }\n\n let i = arrayPrefix.byteLength;\n\n while (i--) {\n if (array[i] !== arrayPrefix[i]) {\n return false;\n }\n }\n\n return true;\n}\n","import * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @enum {string}\n */\nexport const HashAlgorithm = {\n Sha256: \"SHA-256\",\n Sha384: \"SHA-384\",\n Sha512: \"SHA-512\",\n};\n\n/**\n * @param {HashAlgorithm} algorithm\n * @param {Uint8Array | string} secretKey\n * @param {Uint8Array | string} data\n * @returns {Promise}\n */\nexport async function hash(algorithm, secretKey, data) {\n const key =\n typeof secretKey === \"string\" ? utf8.encode(secretKey) : secretKey;\n const value = typeof data === \"string\" ? utf8.encode(data) : data;\n\n try {\n const key_ = await window.crypto.subtle.importKey(\n \"raw\",\n key,\n {\n name: \"HMAC\",\n hash: algorithm,\n },\n false,\n [\"sign\"]\n );\n\n return new Uint8Array(\n await window.crypto.subtle.sign(\"HMAC\", key_, value)\n );\n } catch {\n throw new Error(\"Fallback if SubtleCrypto fails is not implemented\");\n }\n}\n","'use strict';\n\nvar utils = require('./utils');\nvar assert = require('minimalistic-assert');\n\nfunction BlockHash() {\n this.pending = null;\n this.pendingTotal = 0;\n this.blockSize = this.constructor.blockSize;\n this.outSize = this.constructor.outSize;\n this.hmacStrength = this.constructor.hmacStrength;\n this.padLength = this.constructor.padLength / 8;\n this.endian = 'big';\n\n this._delta8 = this.blockSize / 8;\n this._delta32 = this.blockSize / 32;\n}\nexports.BlockHash = BlockHash;\n\nBlockHash.prototype.update = function update(msg, enc) {\n // Convert message to array, pad it, and join into 32bit blocks\n msg = utils.toArray(msg, enc);\n if (!this.pending)\n this.pending = msg;\n else\n this.pending = this.pending.concat(msg);\n this.pendingTotal += msg.length;\n\n // Enough data, try updating\n if (this.pending.length >= this._delta8) {\n msg = this.pending;\n\n // Process pending data in blocks\n var r = msg.length % this._delta8;\n this.pending = msg.slice(msg.length - r, msg.length);\n if (this.pending.length === 0)\n this.pending = null;\n\n msg = utils.join32(msg, 0, msg.length - r, this.endian);\n for (var i = 0; i < msg.length; i += this._delta32)\n this._update(msg, i, i + this._delta32);\n }\n\n return this;\n};\n\nBlockHash.prototype.digest = function digest(enc) {\n this.update(this._pad());\n assert(this.pending === null);\n\n return this._digest(enc);\n};\n\nBlockHash.prototype._pad = function pad() {\n var len = this.pendingTotal;\n var bytes = this._delta8;\n var k = bytes - ((len + this.padLength) % bytes);\n var res = new Array(k + this.padLength);\n res[0] = 0x80;\n for (var i = 1; i < k; i++)\n res[i] = 0;\n\n // Append length\n len <<= 3;\n if (this.endian === 'big') {\n for (var t = 8; t < this.padLength; t++)\n res[i++] = 0;\n\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = len & 0xff;\n } else {\n res[i++] = len & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n\n for (t = 8; t < this.padLength; t++)\n res[i++] = 0;\n }\n\n return res;\n};\n","import StatusError from \"./StatusError.js\";\n\n/**\n * @typedef {import(\"./Status.js\").default} Status\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class PrecheckStatusError extends StatusError {\n /**\n * @param {object} props\n * @param {Status} props.status\n * @param {TransactionId} props.transactionId\n */\n constructor(props) {\n super(\n props,\n `transaction ${props.transactionId.toString()} failed precheck with status ${props.status.toString()}`\n );\n }\n}\n","import TokenId from \"./TokenId.js\";\nimport CustomFee from \"./CustomFee.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n * @typedef {import(\"@hashgraph/proto\").IFixedFee} proto.IFixedFee\n */\n\nexport default class CustomFixedFee extends CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {TokenId | string} [props.denominatingTokenId]\n * @param {Long | number} [props.amount]\n */\n constructor(props = {}) {\n super(props);\n\n /**\n * @type {?TokenId}\n */\n this._denominatingTokenId;\n\n if (props.denominatingTokenId != null) {\n this.setDenominatingTokenId(props.denominatingTokenId);\n }\n\n /**\n * @type {?Long}\n */\n this._amount;\n\n if (props.amount != null) {\n this.setAmount(props.amount);\n }\n }\n\n /**\n * @param {Hbar} amount\n * @returns {CustomFixedFee}\n */\n setHbarAmount(amount) {\n this._amount = amount.toTinybars();\n this._denominatingTokenId = null;\n return this;\n }\n\n /**\n * @returns {TokenId | Hbar | null}\n */\n get hbarAmount() {\n return this._denominatingTokenId != null\n ? null\n : Hbar.fromTinybars(this._amount != null ? this._amount : 0);\n }\n\n /**\n * @returns {CustomFixedFee}\n */\n setDenominatingTokenToSameToken() {\n this._denominatingTokenId = new TokenId(0, 0, 0);\n return this;\n }\n\n /**\n * @returns {?TokenId}\n */\n get denominatingTokenId() {\n return this._denominatingTokenId;\n }\n\n /**\n * @param {TokenId | string} denominatingTokenId\n * @returns {CustomFixedFee}\n */\n setDenominatingTokenId(denominatingTokenId) {\n this._denominatingTokenId =\n typeof denominatingTokenId === \"string\"\n ? TokenId.fromString(denominatingTokenId)\n : denominatingTokenId;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get amount() {\n return this._amount;\n }\n\n /**\n * @param {Long | number} amount\n * @returns {CustomFixedFee}\n */\n setAmount(amount) {\n this._amount =\n typeof amount === \"number\" ? Long.fromNumber(amount) : amount;\n return this;\n }\n\n /**\n * @internal\n * @override\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n const fee = /** @type {proto.IFixedFee} */ (info.fixedFee);\n\n return new CustomFixedFee({\n feeCollectorAccountId:\n info.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(info.feeCollectorAccountId)\n : undefined,\n denominatingTokenId:\n fee.denominatingTokenId != null\n ? TokenId._fromProtobuf(fee.denominatingTokenId)\n : undefined,\n amount: fee.amount != null ? fee.amount : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n fixedFee: {\n denominatingTokenId:\n this._denominatingTokenId != null\n ? this._denominatingTokenId._toProtobuf()\n : null,\n amount: this._amount,\n },\n };\n }\n}\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\n\nfunction isArray(arg) {\n if (Array.isArray) {\n return Array.isArray(arg);\n }\n return objectToString(arg) === '[object Array]';\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\n\nfunction isError(e) {\n return (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('buffer').Buffer.isBuffer;\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file index.js\r\n * @author Fabian Vogelsteller \r\n * @author Marek Kotewicz \r\n * @date 2017\r\n */\r\n'use strict';\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar errors = require('@arianelabs/hweb3-core-helpers').errors;\r\nvar formatters = require('@arianelabs/hweb3-core-helpers').formatters;\r\nvar utils = require('@arianelabs/hweb3-utils');\r\nvar promiEvent = require('@arianelabs/hweb3-core-promievent');\r\nvar Subscriptions = require('@arianelabs/hweb3-core-subscriptions').subscriptions;\r\nvar EthersTransactionUtils = require('@ethersproject/transactions');\r\nvar Method = function Method(options) {\r\n if (!options.call || !options.name) {\r\n throw new Error('When creating a method you need to provide at least the \"name\" and \"call\" property.');\r\n }\r\n this.name = options.name;\r\n this.call = options.call;\r\n this.params = options.params || 0;\r\n this.inputFormatter = options.inputFormatter;\r\n this.outputFormatter = options.outputFormatter;\r\n this.transformPayload = options.transformPayload;\r\n this.extraFormatters = options.extraFormatters;\r\n this.abiCoder = options.abiCoder; // Will be used to encode the revert reason string\r\n this.requestManager = options.requestManager;\r\n // reference to eth.accounts\r\n this.accounts = options.accounts;\r\n this.defaultBlock = options.defaultBlock || 'latest';\r\n this.defaultAccount = options.defaultAccount || null;\r\n this.transactionBlockTimeout = options.transactionBlockTimeout || 50;\r\n this.transactionConfirmationBlocks = options.transactionConfirmationBlocks || 24;\r\n this.transactionPollingTimeout = options.transactionPollingTimeout || 750;\r\n this.transactionPollingInterval = options.transactionPollingInterval || 1000;\r\n this.blockHeaderTimeout = options.blockHeaderTimeout || 10; // 10 seconds\r\n this.defaultCommon = options.defaultCommon;\r\n this.defaultChain = options.defaultChain;\r\n this.defaultHardfork = options.defaultHardfork;\r\n this.handleRevert = options.handleRevert;\r\n};\r\nMethod.prototype.setRequestManager = function (requestManager, accounts) {\r\n this.requestManager = requestManager;\r\n // reference to eth.accounts\r\n if (accounts) {\r\n this.accounts = accounts;\r\n }\r\n};\r\nMethod.prototype.createFunction = function (requestManager, accounts) {\r\n var func = this.buildCall();\r\n func.call = this.call;\r\n this.setRequestManager(requestManager || this.requestManager, accounts || this.accounts);\r\n return func;\r\n};\r\nMethod.prototype.attachToObject = function (obj) {\r\n var func = this.buildCall();\r\n func.call = this.call;\r\n var name = this.name.split('.');\r\n if (name.length > 1) {\r\n obj[name[0]] = obj[name[0]] || {};\r\n obj[name[0]][name[1]] = func;\r\n }\r\n else {\r\n obj[name[0]] = func;\r\n }\r\n};\r\n/**\r\n * Should be used to determine name of the jsonrpc method based on arguments\r\n *\r\n * @method getCall\r\n * @param {Array} arguments\r\n * @return {String} name of jsonrpc method\r\n */\r\nMethod.prototype.getCall = function (args) {\r\n return typeof this.call === 'function' ? this.call(args) : this.call;\r\n};\r\n/**\r\n * Should be used to extract callback from array of arguments. Modifies input param\r\n *\r\n * @method extractCallback\r\n * @param {Array} arguments\r\n * @return {Function|Null} callback, if exists\r\n */\r\nMethod.prototype.extractCallback = function (args) {\r\n if (typeof (args[args.length - 1]) === 'function') {\r\n return args.pop(); // modify the args array!\r\n }\r\n};\r\n/**\r\n * Should be called to check if the number of arguments is correct\r\n *\r\n * @method validateArgs\r\n * @param {Array} arguments\r\n * @throws {Error} if it is not\r\n */\r\nMethod.prototype.validateArgs = function (args) {\r\n if (args.length !== this.params) {\r\n throw errors.InvalidNumberOfParams(args.length, this.params, this.name);\r\n }\r\n};\r\n/**\r\n * Should be called to format input args of method\r\n *\r\n * @method formatInput\r\n * @param {Array}\r\n * @return {Array}\r\n */\r\nMethod.prototype.formatInput = function (args) {\r\n var _this = this;\r\n if (!this.inputFormatter) {\r\n return args;\r\n }\r\n return this.inputFormatter.map(function (formatter, index) {\r\n // bind this for defaultBlock, and defaultAccount\r\n return formatter ? formatter.call(_this, args[index]) : args[index];\r\n });\r\n};\r\n/**\r\n * Should be called to format output(result) of method\r\n *\r\n * @method formatOutput\r\n * @param {Object}\r\n * @return {Object}\r\n */\r\nMethod.prototype.formatOutput = function (result) {\r\n var _this = this;\r\n if (Array.isArray(result)) {\r\n return result.map(function (res) {\r\n return _this.outputFormatter && res ? _this.outputFormatter(res) : res;\r\n });\r\n }\r\n else {\r\n return this.outputFormatter && result ? this.outputFormatter(result) : result;\r\n }\r\n};\r\n/**\r\n * Should create payload from given input args\r\n *\r\n * @method toPayload\r\n * @param {Array} args\r\n * @return {Object}\r\n */\r\nMethod.prototype.toPayload = function (args) {\r\n var call = this.getCall(args);\r\n var callback = this.extractCallback(args);\r\n var params = this.formatInput(args);\r\n this.validateArgs(params);\r\n var payload = {\r\n method: call,\r\n params: params,\r\n callback: callback\r\n };\r\n if (this.transformPayload) {\r\n payload = this.transformPayload(payload);\r\n }\r\n return payload;\r\n};\r\nMethod.prototype._confirmTransaction = function (defer, result, payload) {\r\n var method = this, promiseResolved = false, canUnsubscribe = true, timeoutCount = 0, confirmationCount = 0, intervalId = null, blockHeaderTimeoutId = null, lastBlock = null, receiptJSON = '', gasProvided = ((!!payload.params[0] && typeof payload.params[0] === 'object') && payload.params[0].gas) ? payload.params[0].gas : null, isContractDeployment = (!!payload.params[0] && typeof payload.params[0] === 'object') &&\r\n payload.params[0].data &&\r\n payload.params[0].from &&\r\n !payload.params[0].to, hasBytecode = isContractDeployment && payload.params[0].data.length > 2;\r\n // add custom send Methods\r\n var _ethereumCalls = [\r\n new Method({\r\n name: 'getBlockByNumber',\r\n call: 'eth_getBlockByNumber',\r\n params: 2,\r\n inputFormatter: [formatters.inputBlockNumberFormatter, function (val) {\r\n return !!val;\r\n }],\r\n outputFormatter: formatters.outputBlockFormatter\r\n }),\r\n new Method({\r\n name: 'getTransactionReceipt',\r\n call: 'eth_getTransactionReceipt',\r\n params: 1,\r\n inputFormatter: [null],\r\n outputFormatter: formatters.outputTransactionReceiptFormatter\r\n }),\r\n new Method({\r\n name: 'getCode',\r\n call: 'eth_getCode',\r\n params: 2,\r\n inputFormatter: [formatters.inputAddressFormatter, formatters.inputDefaultBlockNumberFormatter]\r\n }),\r\n new Method({\r\n name: 'getTransactionByHash',\r\n call: 'eth_getTransactionByHash',\r\n params: 1,\r\n inputFormatter: [null],\r\n outputFormatter: formatters.outputTransactionFormatter\r\n }),\r\n new Subscriptions({\r\n name: 'subscribe',\r\n type: 'eth',\r\n subscriptions: {\r\n 'newBlockHeaders': {\r\n subscriptionName: 'newHeads',\r\n params: 0,\r\n outputFormatter: formatters.outputBlockFormatter\r\n }\r\n }\r\n })\r\n ];\r\n // attach methods to this._ethereumCall\r\n var _ethereumCall = {};\r\n _ethereumCalls.forEach(mthd => {\r\n mthd.attachToObject(_ethereumCall);\r\n mthd.requestManager = method.requestManager; // assign rather than call setRequestManager()\r\n });\r\n // fire \"receipt\" and confirmation events and resolve after\r\n var checkConfirmation = function (existingReceipt, isPolling, err, blockHeader, sub) {\r\n if (!err) {\r\n // create fake unsubscribe\r\n if (!sub) {\r\n sub = {\r\n unsubscribe: function () {\r\n clearInterval(intervalId);\r\n clearTimeout(blockHeaderTimeoutId);\r\n }\r\n };\r\n }\r\n // if we have a valid receipt we don't need to send a request\r\n return (existingReceipt ? promiEvent.resolve(existingReceipt) : _ethereumCall.getTransactionReceipt(result))\r\n // catch error from requesting receipt\r\n .catch(function (err) {\r\n sub.unsubscribe();\r\n promiseResolved = true;\r\n utils._fireError({\r\n message: 'Failed to check for transaction receipt:',\r\n data: err\r\n }, defer.eventEmitter, defer.reject);\r\n })\r\n // if CONFIRMATION listener exists check for confirmations, by setting canUnsubscribe = false\r\n .then(function (receipt) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if (!receipt || !receipt.blockHash) {\r\n throw new Error('Receipt missing or blockHash null');\r\n }\r\n // apply extra formatters\r\n if (method.extraFormatters && method.extraFormatters.receiptFormatter) {\r\n receipt = method.extraFormatters.receiptFormatter(receipt);\r\n }\r\n // check if confirmation listener exists\r\n if (defer.eventEmitter.listeners('confirmation').length > 0) {\r\n var block;\r\n // If there was an immediately retrieved receipt, it's already\r\n // been confirmed by the direct call to checkConfirmation needed\r\n // for parity instant-seal\r\n if (existingReceipt === undefined || confirmationCount !== 0) {\r\n // Get latest block to emit with confirmation\r\n var latestBlock = yield _ethereumCall.getBlockByNumber('latest');\r\n var latestBlockHash = latestBlock ? latestBlock.hash : null;\r\n if (isPolling) { // Check if actually a new block is existing on polling\r\n if (lastBlock) {\r\n block = yield _ethereumCall.getBlockByNumber(lastBlock.number + 1);\r\n if (block) {\r\n lastBlock = block;\r\n defer.eventEmitter.emit('confirmation', confirmationCount, receipt, latestBlockHash);\r\n }\r\n }\r\n else {\r\n block = yield _ethereumCall.getBlockByNumber(receipt.blockNumber);\r\n lastBlock = block;\r\n defer.eventEmitter.emit('confirmation', confirmationCount, receipt, latestBlockHash);\r\n }\r\n }\r\n else {\r\n defer.eventEmitter.emit('confirmation', confirmationCount, receipt, latestBlockHash);\r\n }\r\n }\r\n if ((isPolling && block) || !isPolling) {\r\n confirmationCount++;\r\n }\r\n canUnsubscribe = false;\r\n if (confirmationCount === method.transactionConfirmationBlocks + 1) { // add 1 so we account for conf 0\r\n sub.unsubscribe();\r\n defer.eventEmitter.removeAllListeners();\r\n }\r\n }\r\n return receipt;\r\n });\r\n })\r\n // CHECK for CONTRACT DEPLOYMENT\r\n .then(function (receipt) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if (isContractDeployment && !promiseResolved) {\r\n if (!receipt.contractAddress) {\r\n if (canUnsubscribe) {\r\n sub.unsubscribe();\r\n promiseResolved = true;\r\n }\r\n utils._fireError(errors.NoContractAddressFoundError(receipt), defer.eventEmitter, defer.reject, null, receipt);\r\n return;\r\n }\r\n var code;\r\n try {\r\n code = yield _ethereumCall.getCode(receipt.contractAddress);\r\n }\r\n catch (err) {\r\n // ignore;\r\n }\r\n if (!code) {\r\n return;\r\n }\r\n // If deployment is status.true and there was a real\r\n // bytecode string, assume it was successful.\r\n var deploymentSuccess = receipt.status === true && hasBytecode;\r\n if (deploymentSuccess || code.length > 2) {\r\n defer.eventEmitter.emit('receipt', receipt);\r\n // if contract, return instance instead of receipt\r\n if (method.extraFormatters && method.extraFormatters.contractDeployFormatter) {\r\n defer.resolve(method.extraFormatters.contractDeployFormatter(receipt));\r\n }\r\n else {\r\n defer.resolve(receipt);\r\n }\r\n // need to remove listeners, as they aren't removed automatically when succesfull\r\n if (canUnsubscribe) {\r\n defer.eventEmitter.removeAllListeners();\r\n }\r\n }\r\n else {\r\n utils._fireError(errors.ContractCodeNotStoredError(receipt), defer.eventEmitter, defer.reject, null, receipt);\r\n }\r\n if (canUnsubscribe) {\r\n sub.unsubscribe();\r\n }\r\n promiseResolved = true;\r\n }\r\n return receipt;\r\n });\r\n })\r\n // CHECK for normal tx check for receipt only\r\n .then(function (receipt) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if (!isContractDeployment && !promiseResolved) {\r\n if (!receipt.outOfGas &&\r\n (!gasProvided || gasProvided !== receipt.gasUsed) &&\r\n (receipt.status === true || receipt.status === '0x1' || typeof receipt.status === 'undefined')) {\r\n defer.eventEmitter.emit('receipt', receipt);\r\n defer.resolve(receipt);\r\n // need to remove listeners, as they aren't removed automatically when succesfull\r\n if (canUnsubscribe) {\r\n defer.eventEmitter.removeAllListeners();\r\n }\r\n }\r\n else {\r\n receiptJSON = JSON.stringify(receipt, null, 2);\r\n if (receipt.status === false || receipt.status === '0x0') {\r\n try {\r\n var revertMessage = null;\r\n if (method.handleRevert &&\r\n (method.call === 'eth_sendTransaction' || method.call === 'eth_sendRawTransaction')) {\r\n var txReplayOptions = payload.params[0];\r\n // If send was raw, fetch the transaction and reconstitute the\r\n // original params so they can be replayed with `eth_call`\r\n if (method.call === 'eth_sendRawTransaction') {\r\n var rawTransactionHex = payload.params[0];\r\n var parsedTx = EthersTransactionUtils.parse(rawTransactionHex);\r\n txReplayOptions = formatters.inputTransactionFormatter({\r\n data: parsedTx.data,\r\n to: parsedTx.to,\r\n from: parsedTx.from,\r\n gas: parsedTx.gasLimit.toHexString(),\r\n gasPrice: parsedTx.gasPrice.toHexString(),\r\n value: parsedTx.value.toHexString()\r\n });\r\n }\r\n // Get revert reason string with eth_call\r\n revertMessage = yield method.getRevertReason(txReplayOptions, receipt.blockNumber);\r\n if (revertMessage) { // Only throw a revert error if a revert reason is existing\r\n utils._fireError(errors.TransactionRevertInstructionError(revertMessage.reason, revertMessage.signature, receipt), defer.eventEmitter, defer.reject, null, receipt);\r\n }\r\n else {\r\n throw false; // Throw false and let the try/catch statement handle the error correctly after\r\n }\r\n }\r\n else {\r\n throw false; // Throw false and let the try/catch statement handle the error correctly after\r\n }\r\n }\r\n catch (error) {\r\n // Throw an normal revert error if no revert reason is given or the detection of it is disabled\r\n utils._fireError(errors.TransactionRevertedWithoutReasonError(receipt), defer.eventEmitter, defer.reject, null, receipt);\r\n }\r\n }\r\n else {\r\n // Throw OOG if status is not existing and provided gas and used gas are equal\r\n utils._fireError(errors.TransactionOutOfGasError(receipt), defer.eventEmitter, defer.reject, null, receipt);\r\n }\r\n }\r\n if (canUnsubscribe) {\r\n sub.unsubscribe();\r\n }\r\n promiseResolved = true;\r\n }\r\n });\r\n })\r\n // time out the transaction if not mined after 50 blocks\r\n .catch(function () {\r\n timeoutCount++;\r\n // check to see if we are http polling\r\n if (!!isPolling) {\r\n // polling timeout is different than transactionBlockTimeout blocks since we are triggering every second\r\n if (timeoutCount - 1 >= method.transactionPollingTimeout) {\r\n sub.unsubscribe();\r\n promiseResolved = true;\r\n utils._fireError(errors.TransactionError('Transaction was not mined within ' + method.transactionPollingTimeout + ' seconds, please make sure your transaction was properly sent. Be aware that it might still be mined!'), defer.eventEmitter, defer.reject);\r\n }\r\n }\r\n else {\r\n if (timeoutCount - 1 >= method.transactionBlockTimeout) {\r\n sub.unsubscribe();\r\n promiseResolved = true;\r\n utils._fireError(errors.TransactionError('Transaction was not mined within ' + method.transactionBlockTimeout + ' blocks, please make sure your transaction was properly sent. Be aware that it might still be mined!'), defer.eventEmitter, defer.reject);\r\n }\r\n }\r\n });\r\n }\r\n else {\r\n sub.unsubscribe();\r\n promiseResolved = true;\r\n utils._fireError({\r\n message: 'Failed to subscribe to new newBlockHeaders to confirm the transaction receipts.',\r\n data: err\r\n }, defer.eventEmitter, defer.reject);\r\n }\r\n };\r\n // start watching for confirmation depending on the support features of the provider\r\n var startWatching = function (existingReceipt) {\r\n let blockHeaderArrived = false;\r\n const startInterval = () => {\r\n intervalId = setInterval(checkConfirmation.bind(null, existingReceipt, true), method.transactionPollingInterval);\r\n };\r\n // If provider do not support event subscription use polling\r\n if (!this.requestManager.provider.on) {\r\n return startInterval();\r\n }\r\n // Subscribe to new block headers to look for tx receipt\r\n _ethereumCall.subscribe('newBlockHeaders', function (err, blockHeader, sub) {\r\n blockHeaderArrived = true;\r\n if (err || !blockHeader) {\r\n // fall back to polling\r\n return startInterval();\r\n }\r\n checkConfirmation(existingReceipt, false, err, blockHeader, sub);\r\n });\r\n // Fallback to polling if tx receipt didn't arrived in \"blockHeaderTimeout\" [10 seconds]\r\n blockHeaderTimeoutId = setTimeout(() => {\r\n if (!blockHeaderArrived) {\r\n startInterval();\r\n }\r\n }, this.blockHeaderTimeout * 1000);\r\n }.bind(this);\r\n // first check if we already have a confirmed transaction\r\n _ethereumCall.getTransactionReceipt(result)\r\n .then(function (receipt) {\r\n if (receipt && receipt.blockHash) {\r\n if (defer.eventEmitter.listeners('confirmation').length > 0) {\r\n // We must keep on watching for new Blocks, if a confirmation listener is present\r\n startWatching(receipt);\r\n }\r\n checkConfirmation(receipt, false);\r\n }\r\n else if (!promiseResolved) {\r\n startWatching();\r\n }\r\n })\r\n .catch(function () {\r\n if (!promiseResolved)\r\n startWatching();\r\n });\r\n};\r\nvar getWallet = function (from, accounts) {\r\n var wallet = null;\r\n // is index given\r\n if (typeof from === 'number') {\r\n wallet = accounts.wallet[from];\r\n // is account given\r\n }\r\n else if (!!from && typeof from === 'object' && from.address && from.privateKey) {\r\n wallet = from;\r\n // search in wallet for address\r\n }\r\n else {\r\n wallet = accounts.wallet[from.toLowerCase()];\r\n }\r\n return wallet;\r\n};\r\nMethod.prototype.buildCall = function () {\r\n var method = this, isSendTx = (method.call === 'eth_sendTransaction' || method.call === 'eth_sendRawTransaction'), // || method.call === 'personal_sendTransaction'\r\n isCall = (method.call === 'eth_call');\r\n // actual send function\r\n var send = function () {\r\n var defer = promiEvent(!isSendTx), payload = method.toPayload(Array.prototype.slice.call(arguments));\r\n // CALLBACK function\r\n var sendTxCallback = function (err, result) {\r\n if (method.handleRevert && isCall && method.abiCoder) {\r\n var reasonData;\r\n // Ganache / Geth <= 1.9.13 return the reason data as a successful eth_call response\r\n // Geth >= 1.9.15 attaches the reason data to an error object.\r\n // Geth 1.9.14 is missing revert reason (https://github.com/ethereum/web3.js/issues/3520)\r\n if (!err && method.isRevertReasonString(result)) {\r\n reasonData = result.substring(10);\r\n }\r\n else if (err && err.data) {\r\n reasonData = err.data.substring(10);\r\n }\r\n if (reasonData) {\r\n var reason = method.abiCoder.decodeParameter('string', '0x' + reasonData);\r\n var signature = 'Error(String)';\r\n utils._fireError(errors.RevertInstructionError(reason, signature), defer.eventEmitter, defer.reject, payload.callback, {\r\n reason: reason,\r\n signature: signature\r\n });\r\n return;\r\n }\r\n }\r\n try {\r\n result = method.formatOutput(result);\r\n }\r\n catch (e) {\r\n err = e;\r\n }\r\n if (result instanceof Error) {\r\n err = result;\r\n }\r\n if (!err) {\r\n if (payload.callback) {\r\n payload.callback(null, result);\r\n }\r\n }\r\n else {\r\n if (err.error) {\r\n err = err.error;\r\n }\r\n return utils._fireError(err, defer.eventEmitter, defer.reject, payload.callback);\r\n }\r\n // return PROMISE\r\n if (!isSendTx) {\r\n if (!err) {\r\n defer.resolve(result);\r\n }\r\n // return PROMIEVENT\r\n }\r\n else {\r\n defer.eventEmitter.emit('transactionHash', result);\r\n method._confirmTransaction(defer, result, payload);\r\n }\r\n };\r\n // SENDS the SIGNED SIGNATURE\r\n var sendSignedTx = function (sign) {\r\n var signedPayload = Object.assign(Object.assign({}, payload), { method: 'eth_sendRawTransaction', params: [sign.rawTransaction] });\r\n method.requestManager.send(signedPayload, sendTxCallback);\r\n };\r\n var sendRequest = function (payload, method) {\r\n if (method && method.accounts && method.accounts.wallet && method.accounts.wallet.length) {\r\n var wallet;\r\n // ETH_SENDTRANSACTION\r\n if (payload.method === 'eth_sendTransaction') {\r\n var tx = payload.params[0];\r\n wallet = getWallet((!!tx && typeof tx === 'object') ? tx.from : null, method.accounts);\r\n // If wallet was found, sign tx, and send using sendRawTransaction\r\n if (wallet && wallet.privateKey) {\r\n var tx = JSON.parse(JSON.stringify(tx));\r\n delete tx.from;\r\n if (method.defaultChain && !tx.chain) {\r\n tx.chain = method.defaultChain;\r\n }\r\n if (method.defaultHardfork && !tx.hardfork) {\r\n tx.hardfork = method.defaultHardfork;\r\n }\r\n if (method.defaultCommon && !tx.common) {\r\n tx.common = method.defaultCommon;\r\n }\r\n method.accounts.signTransaction(tx, wallet.privateKey)\r\n .then(sendSignedTx)\r\n .catch(function (err) {\r\n if (typeof defer.eventEmitter.listeners === 'function' && defer.eventEmitter.listeners('error').length) {\r\n try {\r\n defer.eventEmitter.emit('error', err);\r\n }\r\n catch (err) {\r\n // Ignore userland error prevent it to bubble up within web3.\r\n }\r\n defer.eventEmitter.removeAllListeners();\r\n defer.eventEmitter.catch(function () {\r\n });\r\n }\r\n defer.reject(err);\r\n });\r\n return;\r\n }\r\n // ETH_SIGN\r\n }\r\n else if (payload.method === 'eth_sign') {\r\n var data = payload.params[1];\r\n wallet = getWallet(payload.params[0], method.accounts);\r\n // If wallet was found, sign tx, and send using sendRawTransaction\r\n if (wallet && wallet.privateKey) {\r\n var sign = method.accounts.sign(data, wallet.privateKey);\r\n if (payload.callback) {\r\n payload.callback(null, sign.signature);\r\n }\r\n defer.resolve(sign.signature);\r\n return;\r\n }\r\n }\r\n }\r\n return method.requestManager.send(payload, sendTxCallback);\r\n };\r\n // Send the actual transaction\r\n if (isSendTx\r\n && !!payload.params[0]\r\n && typeof payload.params[0] === 'object'\r\n && (typeof payload.params[0].gasPrice === 'undefined'\r\n && (typeof payload.params[0].maxPriorityFeePerGas === 'undefined'\r\n || typeof payload.params[0].maxFeePerGas === 'undefined'))) {\r\n _handleTxPricing(method, payload.params[0]).then(txPricing => {\r\n if (txPricing.gasPrice !== undefined) {\r\n payload.params[0].gasPrice = txPricing.gasPrice;\r\n }\r\n else if (txPricing.maxPriorityFeePerGas !== undefined\r\n && txPricing.maxFeePerGas !== undefined) {\r\n payload.params[0].maxPriorityFeePerGas = txPricing.maxPriorityFeePerGas;\r\n payload.params[0].maxFeePerGas = txPricing.maxFeePerGas;\r\n }\r\n if (isSendTx) {\r\n setTimeout(() => {\r\n defer.eventEmitter.emit('sending', payload);\r\n }, 0);\r\n }\r\n sendRequest(payload, method);\r\n });\r\n }\r\n else {\r\n if (isSendTx) {\r\n setTimeout(() => {\r\n defer.eventEmitter.emit('sending', payload);\r\n }, 0);\r\n }\r\n sendRequest(payload, method);\r\n }\r\n if (isSendTx) {\r\n setTimeout(() => {\r\n defer.eventEmitter.emit('sent', payload);\r\n }, 0);\r\n }\r\n return defer.eventEmitter;\r\n };\r\n // necessary to attach things to the method\r\n send.method = method;\r\n // necessary for batch requests\r\n send.request = this.request.bind(this);\r\n return send;\r\n};\r\nfunction _handleTxPricing(method, tx) {\r\n return new Promise((resolve, reject) => {\r\n try {\r\n var getBlockByNumber = (new Method({\r\n name: 'getBlockByNumber',\r\n call: 'eth_getBlockByNumber',\r\n params: 2,\r\n inputFormatter: [function (blockNumber) {\r\n return blockNumber ? utils.toHex(blockNumber) : 'latest';\r\n }, function () {\r\n return false;\r\n }]\r\n })).createFunction(method.requestManager);\r\n var getGasPrice = (new Method({\r\n name: 'getGasPrice',\r\n call: 'eth_gasPrice',\r\n params: 0\r\n })).createFunction(method.requestManager);\r\n Promise.all([\r\n getBlockByNumber(),\r\n getGasPrice()\r\n ]).then(responses => {\r\n const [block, gasPrice] = responses;\r\n if ((tx.type === '0x2' || tx.type === undefined) &&\r\n (block && block.baseFeePerGas)) {\r\n // The network supports EIP-1559\r\n // Taken from https://github.com/ethers-io/ethers.js/blob/ba6854bdd5a912fe873d5da494cb5c62c190adde/packages/abstract-provider/src.ts/index.ts#L230\r\n let maxPriorityFeePerGas, maxFeePerGas;\r\n if (tx.gasPrice) {\r\n // Using legacy gasPrice property on an eip-1559 network,\r\n // so use gasPrice as both fee properties\r\n maxPriorityFeePerGas = tx.gasPrice;\r\n maxFeePerGas = tx.gasPrice;\r\n delete tx.gasPrice;\r\n }\r\n else {\r\n maxPriorityFeePerGas = tx.maxPriorityFeePerGas || '0x9502F900'; // 2.5 Gwei\r\n maxFeePerGas = tx.maxFeePerGas ||\r\n utils.toHex(utils.toBN(block.baseFeePerGas)\r\n .mul(utils.toBN(2))\r\n .add(utils.toBN(maxPriorityFeePerGas)));\r\n }\r\n resolve({ maxFeePerGas, maxPriorityFeePerGas });\r\n }\r\n else {\r\n if (tx.maxPriorityFeePerGas || tx.maxFeePerGas)\r\n throw Error(\"Network doesn't support eip-1559\");\r\n resolve({ gasPrice });\r\n }\r\n });\r\n }\r\n catch (error) {\r\n reject(error);\r\n }\r\n });\r\n}\r\n/**\r\n * Returns the revert reason string if existing or otherwise false.\r\n *\r\n * @method getRevertReason\r\n *\r\n * @param {Object} txOptions\r\n * @param {Number} blockNumber\r\n *\r\n * @returns {Promise}\r\n */\r\nMethod.prototype.getRevertReason = function (txOptions, blockNumber) {\r\n var self = this;\r\n return new Promise(function (resolve, reject) {\r\n (new Method({\r\n name: 'call',\r\n call: 'eth_call',\r\n params: 2,\r\n abiCoder: self.abiCoder,\r\n handleRevert: true\r\n }))\r\n .createFunction(self.requestManager)(txOptions, utils.numberToHex(blockNumber))\r\n .then(function () {\r\n resolve(false);\r\n })\r\n .catch(function (error) {\r\n if (error.reason) {\r\n resolve({\r\n reason: error.reason,\r\n signature: error.signature\r\n });\r\n }\r\n else {\r\n reject(error);\r\n }\r\n });\r\n });\r\n};\r\n/**\r\n * Checks if the given hex string is a revert message from the EVM\r\n *\r\n * @method isRevertReasonString\r\n *\r\n * @param {String} data - Hex string prefixed with 0x\r\n *\r\n * @returns {Boolean}\r\n */\r\nMethod.prototype.isRevertReasonString = function (data) {\r\n return typeof data === 'string' && ((data.length - 2) / 2) % 32 === 4 && data.substring(0, 10) === '0x08c379a0';\r\n};\r\n/**\r\n * Should be called to create the pure JSONRPC request which can be used in a batch request\r\n *\r\n * @method request\r\n * @return {Object} jsonrpc request\r\n */\r\nMethod.prototype.request = function () {\r\n var payload = this.toPayload(Array.prototype.slice.call(arguments));\r\n payload.format = this.formatOutput.bind(this);\r\n return payload;\r\n};\r\nmodule.exports = Method;\r\n","/**\n * @param {Uint8Array} array1\n * @param {Uint8Array} array2\n * @returns {boolean}\n */\nexport function arrayEqual(array1, array2) {\n if (array1 === array2) {\n return true;\n }\n\n if (array1.byteLength !== array2.byteLength) {\n return false;\n }\n\n const view1 = new DataView(\n array1.buffer,\n array1.byteOffset,\n array1.byteLength\n );\n const view2 = new DataView(\n array2.buffer,\n array2.byteOffset,\n array2.byteLength\n );\n\n let i = array1.byteLength;\n\n while (i--) {\n if (view1.getUint8(i) !== view2.getUint8(i)) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * @param {Uint8Array} array\n * @param {Uint8Array} arrayPrefix\n * @returns {boolean}\n */\nexport function arrayStartsWith(array, arrayPrefix) {\n if (array.byteLength < arrayPrefix.byteLength) {\n return false;\n }\n\n let i = arrayPrefix.byteLength;\n\n while (i--) {\n if (array[i] !== arrayPrefix[i]) {\n return false;\n }\n }\n\n return true;\n}\n","import * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @enum {string}\n */\nexport const HashAlgorithm = {\n Sha256: \"SHA-256\",\n Sha384: \"SHA-384\",\n Sha512: \"SHA-512\",\n};\n\n/**\n * @param {HashAlgorithm} algorithm\n * @param {Uint8Array | string} secretKey\n * @param {Uint8Array | string} data\n * @returns {Promise}\n */\nexport async function hash(algorithm, secretKey, data) {\n const key =\n typeof secretKey === \"string\" ? utf8.encode(secretKey) : secretKey;\n const value = typeof data === \"string\" ? utf8.encode(data) : data;\n\n try {\n const key_ = await window.crypto.subtle.importKey(\n \"raw\",\n key,\n {\n name: \"HMAC\",\n hash: algorithm,\n },\n false,\n [\"sign\"]\n );\n\n return new Uint8Array(\n await window.crypto.subtle.sign(\"HMAC\", key_, value)\n );\n } catch {\n throw new Error(\"Fallback if SubtleCrypto fails is not implemented\");\n }\n}\n","'use strict';\n\nvar utils = require('./utils');\nvar assert = require('minimalistic-assert');\n\nfunction BlockHash() {\n this.pending = null;\n this.pendingTotal = 0;\n this.blockSize = this.constructor.blockSize;\n this.outSize = this.constructor.outSize;\n this.hmacStrength = this.constructor.hmacStrength;\n this.padLength = this.constructor.padLength / 8;\n this.endian = 'big';\n\n this._delta8 = this.blockSize / 8;\n this._delta32 = this.blockSize / 32;\n}\nexports.BlockHash = BlockHash;\n\nBlockHash.prototype.update = function update(msg, enc) {\n // Convert message to array, pad it, and join into 32bit blocks\n msg = utils.toArray(msg, enc);\n if (!this.pending)\n this.pending = msg;\n else\n this.pending = this.pending.concat(msg);\n this.pendingTotal += msg.length;\n\n // Enough data, try updating\n if (this.pending.length >= this._delta8) {\n msg = this.pending;\n\n // Process pending data in blocks\n var r = msg.length % this._delta8;\n this.pending = msg.slice(msg.length - r, msg.length);\n if (this.pending.length === 0)\n this.pending = null;\n\n msg = utils.join32(msg, 0, msg.length - r, this.endian);\n for (var i = 0; i < msg.length; i += this._delta32)\n this._update(msg, i, i + this._delta32);\n }\n\n return this;\n};\n\nBlockHash.prototype.digest = function digest(enc) {\n this.update(this._pad());\n assert(this.pending === null);\n\n return this._digest(enc);\n};\n\nBlockHash.prototype._pad = function pad() {\n var len = this.pendingTotal;\n var bytes = this._delta8;\n var k = bytes - ((len + this.padLength) % bytes);\n var res = new Array(k + this.padLength);\n res[0] = 0x80;\n for (var i = 1; i < k; i++)\n res[i] = 0;\n\n // Append length\n len <<= 3;\n if (this.endian === 'big') {\n for (var t = 8; t < this.padLength; t++)\n res[i++] = 0;\n\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = len & 0xff;\n } else {\n res[i++] = len & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n\n for (t = 8; t < this.padLength; t++)\n res[i++] = 0;\n }\n\n return res;\n};\n","import StatusError from \"./StatusError.js\";\n\n/**\n * @typedef {import(\"./Status.js\").default} Status\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class PrecheckStatusError extends StatusError {\n /**\n * @param {object} props\n * @param {Status} props.status\n * @param {TransactionId} props.transactionId\n */\n constructor(props) {\n super(\n props,\n `transaction ${props.transactionId.toString()} failed precheck with status ${props.status.toString()}`\n );\n }\n}\n","import TokenId from \"./TokenId.js\";\nimport CustomFee from \"./CustomFee.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n * @typedef {import(\"@hashgraph/proto\").IFixedFee} proto.IFixedFee\n */\n\nexport default class CustomFixedFee extends CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {TokenId | string} [props.denominatingTokenId]\n * @param {Long | number} [props.amount]\n */\n constructor(props = {}) {\n super(props);\n\n /**\n * @type {?TokenId}\n */\n this._denominatingTokenId;\n\n if (props.denominatingTokenId != null) {\n this.setDenominatingTokenId(props.denominatingTokenId);\n }\n\n /**\n * @type {?Long}\n */\n this._amount;\n\n if (props.amount != null) {\n this.setAmount(props.amount);\n }\n }\n\n /**\n * @param {Hbar} amount\n * @returns {CustomFixedFee}\n */\n setHbarAmount(amount) {\n this._amount = amount.toTinybars();\n this._denominatingTokenId = null;\n return this;\n }\n\n /**\n * @returns {TokenId | Hbar | null}\n */\n get hbarAmount() {\n return this._denominatingTokenId != null\n ? null\n : Hbar.fromTinybars(this._amount != null ? this._amount : 0);\n }\n\n /**\n * @returns {CustomFixedFee}\n */\n setDenominatingTokenToSameToken() {\n this._denominatingTokenId = new TokenId(0, 0, 0);\n return this;\n }\n\n /**\n * @returns {?TokenId}\n */\n get denominatingTokenId() {\n return this._denominatingTokenId;\n }\n\n /**\n * @param {TokenId | string} denominatingTokenId\n * @returns {CustomFixedFee}\n */\n setDenominatingTokenId(denominatingTokenId) {\n this._denominatingTokenId =\n typeof denominatingTokenId === \"string\"\n ? TokenId.fromString(denominatingTokenId)\n : denominatingTokenId;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get amount() {\n return this._amount;\n }\n\n /**\n * @param {Long | number} amount\n * @returns {CustomFixedFee}\n */\n setAmount(amount) {\n this._amount =\n typeof amount === \"number\" ? Long.fromNumber(amount) : amount;\n return this;\n }\n\n /**\n * @internal\n * @override\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n const fee = /** @type {proto.IFixedFee} */ (info.fixedFee);\n\n return new CustomFixedFee({\n feeCollectorAccountId:\n info.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(info.feeCollectorAccountId)\n : undefined,\n denominatingTokenId:\n fee.denominatingTokenId != null\n ? TokenId._fromProtobuf(fee.denominatingTokenId)\n : undefined,\n amount: fee.amount != null ? fee.amount : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n fixedFee: {\n denominatingTokenId:\n this._denominatingTokenId != null\n ? this._denominatingTokenId._toProtobuf()\n : null,\n amount: this._amount,\n },\n };\n }\n}\n","module.exports = function xor (a, b) {\n var length = Math.min(a.length, b.length)\n var buffer = new Buffer(length)\n\n for (var i = 0; i < length; ++i) {\n buffer[i] = a[i] ^ b[i]\n }\n\n return buffer\n}\n","'use strict';\n\nconst inherits = require('inherits');\nconst Reporter = require('../base/reporter').Reporter;\nconst Buffer = require('safer-buffer').Buffer;\n\nfunction DecoderBuffer(base, options) {\n Reporter.call(this, options);\n if (!Buffer.isBuffer(base)) {\n this.error('Input not Buffer');\n return;\n }\n\n this.base = base;\n this.offset = 0;\n this.length = base.length;\n}\ninherits(DecoderBuffer, Reporter);\nexports.DecoderBuffer = DecoderBuffer;\n\nDecoderBuffer.isDecoderBuffer = function isDecoderBuffer(data) {\n if (data instanceof DecoderBuffer) {\n return true;\n }\n\n // Or accept compatible API\n const isCompatible = typeof data === 'object' &&\n Buffer.isBuffer(data.base) &&\n data.constructor.name === 'DecoderBuffer' &&\n typeof data.offset === 'number' &&\n typeof data.length === 'number' &&\n typeof data.save === 'function' &&\n typeof data.restore === 'function' &&\n typeof data.isEmpty === 'function' &&\n typeof data.readUInt8 === 'function' &&\n typeof data.skip === 'function' &&\n typeof data.raw === 'function';\n\n return isCompatible;\n};\n\nDecoderBuffer.prototype.save = function save() {\n return { offset: this.offset, reporter: Reporter.prototype.save.call(this) };\n};\n\nDecoderBuffer.prototype.restore = function restore(save) {\n // Return skipped data\n const res = new DecoderBuffer(this.base);\n res.offset = save.offset;\n res.length = this.offset;\n\n this.offset = save.offset;\n Reporter.prototype.restore.call(this, save.reporter);\n\n return res;\n};\n\nDecoderBuffer.prototype.isEmpty = function isEmpty() {\n return this.offset === this.length;\n};\n\nDecoderBuffer.prototype.readUInt8 = function readUInt8(fail) {\n if (this.offset + 1 <= this.length)\n return this.base.readUInt8(this.offset++, true);\n else\n return this.error(fail || 'DecoderBuffer overrun');\n};\n\nDecoderBuffer.prototype.skip = function skip(bytes, fail) {\n if (!(this.offset + bytes <= this.length))\n return this.error(fail || 'DecoderBuffer overrun');\n\n const res = new DecoderBuffer(this.base);\n\n // Share reporter state\n res._reporterState = this._reporterState;\n\n res.offset = this.offset;\n res.length = this.offset + bytes;\n this.offset += bytes;\n return res;\n};\n\nDecoderBuffer.prototype.raw = function raw(save) {\n return this.base.slice(save ? save.offset : this.offset, this.length);\n};\n\nfunction EncoderBuffer(value, reporter) {\n if (Array.isArray(value)) {\n this.length = 0;\n this.value = value.map(function(item) {\n if (!EncoderBuffer.isEncoderBuffer(item))\n item = new EncoderBuffer(item, reporter);\n this.length += item.length;\n return item;\n }, this);\n } else if (typeof value === 'number') {\n if (!(0 <= value && value <= 0xff))\n return reporter.error('non-byte EncoderBuffer value');\n this.value = value;\n this.length = 1;\n } else if (typeof value === 'string') {\n this.value = value;\n this.length = Buffer.byteLength(value);\n } else if (Buffer.isBuffer(value)) {\n this.value = value;\n this.length = value.length;\n } else {\n return reporter.error('Unsupported type: ' + typeof value);\n }\n}\nexports.EncoderBuffer = EncoderBuffer;\n\nEncoderBuffer.isEncoderBuffer = function isEncoderBuffer(data) {\n if (data instanceof EncoderBuffer) {\n return true;\n }\n\n // Or accept compatible API\n const isCompatible = typeof data === 'object' &&\n data.constructor.name === 'EncoderBuffer' &&\n typeof data.length === 'number' &&\n typeof data.join === 'function';\n\n return isCompatible;\n};\n\nEncoderBuffer.prototype.join = function join(out, offset) {\n if (!out)\n out = Buffer.alloc(this.length);\n if (!offset)\n offset = 0;\n\n if (this.length === 0)\n return out;\n\n if (Array.isArray(this.value)) {\n this.value.forEach(function(item) {\n item.join(out, offset);\n offset += item.length;\n });\n } else {\n if (typeof this.value === 'number')\n out[offset] = this.value;\n else if (typeof this.value === 'string')\n out.write(this.value, offset);\n else if (Buffer.isBuffer(this.value))\n this.value.copy(out, offset);\n offset += this.length;\n }\n\n return out;\n};\n","/**\n * @param {Uint8Array} array1\n * @param {Uint8Array} array2\n * @returns {boolean}\n */\nexport function arrayEqual(array1, array2) {\n if (array1 === array2) {\n return true;\n }\n\n if (array1.byteLength !== array2.byteLength) {\n return false;\n }\n\n const view1 = new DataView(\n array1.buffer,\n array1.byteOffset,\n array1.byteLength\n );\n const view2 = new DataView(\n array2.buffer,\n array2.byteOffset,\n array2.byteLength\n );\n\n let i = array1.byteLength;\n\n while (i--) {\n if (view1.getUint8(i) !== view2.getUint8(i)) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * @param {Uint8Array} array\n * @param {Uint8Array} arrayPrefix\n * @returns {boolean}\n */\nexport function arrayStartsWith(array, arrayPrefix) {\n if (array.byteLength < arrayPrefix.byteLength) {\n return false;\n }\n\n let i = arrayPrefix.byteLength;\n\n while (i--) {\n if (array[i] !== arrayPrefix[i]) {\n return false;\n }\n }\n\n return true;\n}\n","import * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @enum {string}\n */\nexport const HashAlgorithm = {\n Sha256: \"SHA-256\",\n Sha384: \"SHA-384\",\n Sha512: \"SHA-512\",\n};\n\n/**\n * @param {HashAlgorithm} algorithm\n * @param {Uint8Array | string} secretKey\n * @param {Uint8Array | string} data\n * @returns {Promise}\n */\nexport async function hash(algorithm, secretKey, data) {\n const key =\n typeof secretKey === \"string\" ? utf8.encode(secretKey) : secretKey;\n const value = typeof data === \"string\" ? utf8.encode(data) : data;\n\n try {\n const key_ = await window.crypto.subtle.importKey(\n \"raw\",\n key,\n {\n name: \"HMAC\",\n hash: algorithm,\n },\n false,\n [\"sign\"]\n );\n\n return new Uint8Array(\n await window.crypto.subtle.sign(\"HMAC\", key_, value)\n );\n } catch {\n throw new Error(\"Fallback if SubtleCrypto fails is not implemented\");\n }\n}\n","'use strict';\n\nvar utils = require('./utils');\nvar assert = require('minimalistic-assert');\n\nfunction BlockHash() {\n this.pending = null;\n this.pendingTotal = 0;\n this.blockSize = this.constructor.blockSize;\n this.outSize = this.constructor.outSize;\n this.hmacStrength = this.constructor.hmacStrength;\n this.padLength = this.constructor.padLength / 8;\n this.endian = 'big';\n\n this._delta8 = this.blockSize / 8;\n this._delta32 = this.blockSize / 32;\n}\nexports.BlockHash = BlockHash;\n\nBlockHash.prototype.update = function update(msg, enc) {\n // Convert message to array, pad it, and join into 32bit blocks\n msg = utils.toArray(msg, enc);\n if (!this.pending)\n this.pending = msg;\n else\n this.pending = this.pending.concat(msg);\n this.pendingTotal += msg.length;\n\n // Enough data, try updating\n if (this.pending.length >= this._delta8) {\n msg = this.pending;\n\n // Process pending data in blocks\n var r = msg.length % this._delta8;\n this.pending = msg.slice(msg.length - r, msg.length);\n if (this.pending.length === 0)\n this.pending = null;\n\n msg = utils.join32(msg, 0, msg.length - r, this.endian);\n for (var i = 0; i < msg.length; i += this._delta32)\n this._update(msg, i, i + this._delta32);\n }\n\n return this;\n};\n\nBlockHash.prototype.digest = function digest(enc) {\n this.update(this._pad());\n assert(this.pending === null);\n\n return this._digest(enc);\n};\n\nBlockHash.prototype._pad = function pad() {\n var len = this.pendingTotal;\n var bytes = this._delta8;\n var k = bytes - ((len + this.padLength) % bytes);\n var res = new Array(k + this.padLength);\n res[0] = 0x80;\n for (var i = 1; i < k; i++)\n res[i] = 0;\n\n // Append length\n len <<= 3;\n if (this.endian === 'big') {\n for (var t = 8; t < this.padLength; t++)\n res[i++] = 0;\n\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = len & 0xff;\n } else {\n res[i++] = len & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n\n for (t = 8; t < this.padLength; t++)\n res[i++] = 0;\n }\n\n return res;\n};\n","import BigNumber from \"bignumber.js\";\nimport Long from \"long\";\n\n/**\n * Utility Error Messages\n */\nexport const REQUIRE_NON_NULL_ERROR = \"This value cannot be null | undefined.\";\nexport const REQUIRE_STRING_ERROR = \"This value must be a string.\";\nexport const REQUIRE_UINT8ARRAY_ERROR = \"This value must be a Uint8Array.\";\nexport const REQUIRE_STRING_OR_UINT8ARRAY_ERROR =\n \"This value must be a string or Uint8Array.\";\nexport const REQUIRE_NUMBER_ERROR = \"This value must be a Number.\";\nexport const REQUIRE_BIGNUMBER_ERROR = \"This value must be a BigNumber.\";\nexport const REQUIRE_ARRAY_ERROR = \"The provided variable must be an Array.\";\nexport const REQUIRE_LONG_ERROR = \"This value must be a Long.\";\n\nexport const REQUIRE_TYPE_ERROR =\n \"The provided variables are not matching types.\";\n\nexport const FUNCTION_CONVERT_TO_BIGNUMBER_ERROR =\n \"This value must be a String, Number, or BigNumber to be converted.\";\nexport const FUNCTION_CONVERT_TO_NUMBER_ERROR =\n \"This value must be a String, Number, or BigNumber to be converted.\";\nexport const FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR =\n \"Unable to parse given variable. Returns NaN.\";\n\n//Soft Checks\n\n/**\n * Takes any param and returns false if null or undefined.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isNonNull(variable) {\n if (variable == null || variable == undefined) {\n return false;\n } else {\n return true;\n }\n}\n\n/**\n * Takes any param and returns true if param variable and type are the same.\n *\n * @param {any | null | undefined} variable\n * @param {any | null | undefined} type\n * @returns {boolean}\n */\nexport function isType(variable, type) {\n return typeof variable == typeof type;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isUint8Array(variable) {\n return isNonNull(variable) && variable instanceof Uint8Array;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type Number.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isNumber(variable) {\n return (\n isNonNull(variable) &&\n (typeof variable == \"number\" || variable instanceof Number)\n );\n}\n\n/**\n * Takes any param and returns true if param is not null and of type BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isBigNumber(variable) {\n return isNonNull(variable) && variable instanceof BigNumber;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isLong(variable) {\n return isNonNull(variable) && variable instanceof Long;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type string.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isString(variable) {\n return isNonNull(variable) && typeof variable == \"string\";\n}\n\n/**\n * Takes any param and returns true if param is not null and type string or Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isStringOrUint8Array(variable) {\n return (\n isNonNull(variable) && (isString(variable) || isUint8Array(variable))\n );\n}\n\n//Requires\n\n/**\n * Takes any param and throws custom error if null or undefined.\n *\n * @param {any} variable\n * @returns {object}\n */\nexport function requireNonNull(variable) {\n if (!isNonNull(variable)) {\n throw new Error(REQUIRE_NON_NULL_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return variable;\n }\n}\n\n/**\n * Takes any param and throws custom error if params are not same type.\n *\n * @param {any | null | undefined} variable\n * @param {any | null | undefined} type\n * @returns {object}\n */\nexport function requireType(variable, type) {\n if (!isType(variable, type)) {\n throw new Error(REQUIRE_TYPE_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return variable;\n }\n}\n\n/**\n * Takes any param and throws custom error if non BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {BigNumber}\n */\nexport function requireBigNumber(variable) {\n if (!isBigNumber(requireNonNull(variable))) {\n throw new Error(REQUIRE_BIGNUMBER_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {BigNumber} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {Long}\n */\nexport function requireLong(variable) {\n if (!isLong(requireNonNull(variable))) {\n throw new Error(REQUIRE_LONG_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {Long} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non string.\n *\n * @param {any | null | undefined} variable\n * @returns {string}\n */\nexport function requireString(variable) {\n if (!isString(requireNonNull(variable))) {\n throw new Error(REQUIRE_STRING_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {string} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {Uint8Array}\n */\nexport function requireUint8Array(variable) {\n if (!isUint8Array(requireNonNull(variable))) {\n throw new Error(REQUIRE_UINT8ARRAY_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {Uint8Array} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {number}\n */\nexport function requireNumber(variable) {\n if (!isNumber(requireNonNull(variable))) {\n throw new Error(REQUIRE_NUMBER_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {number} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if null or undefined and not a string or Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {string | Uint8Array}\n */\nexport function requireStringOrUint8Array(variable) {\n if (isStringOrUint8Array(requireNonNull(variable))) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {string | Uint8Array} */ (variable);\n } else {\n throw new Error(REQUIRE_STRING_OR_UINT8ARRAY_ERROR);\n }\n}\n\n//Conversions\n\n/**\n * Converts number or string to BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {BigNumber}\n */\nexport function convertToBigNumber(variable) {\n requireNonNull(variable);\n if (\n isBigNumber(variable) ||\n isString(variable) ||\n isNumber(variable) ||\n isLong(variable)\n ) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n return new BigNumber(variable);\n }\n throw new Error(FUNCTION_CONVERT_TO_BIGNUMBER_ERROR);\n}\n\n/**\n * Converts Array of Numbers or Strings to Array of BigNumbers.\n *\n * @param {any | null | undefined} variable\n * @returns {Array}\n */\nexport function convertToBigNumberArray(variable) {\n if (variable instanceof Array) {\n return /** @type {Array} */ (\n variable.map(convertToBigNumber)\n );\n } else {\n throw new Error(REQUIRE_ARRAY_ERROR);\n }\n}\n\n/**\n * @param {*} variable\n * @returns {number}\n */\nexport function convertToNumber(variable) {\n requireNonNull(variable);\n if (\n isBigNumber(variable) ||\n isString(variable) ||\n isNumber(variable) ||\n isLong(variable)\n ) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n const num = parseInt(variable);\n if (isNaN(num)) {\n throw new Error(FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR);\n } else {\n return num;\n }\n } else {\n throw new Error(FUNCTION_CONVERT_TO_NUMBER_ERROR);\n }\n}\n\n/**\n * Creates a DataView on top of an Uint8Array that could be or not be pooled, ensuring that we don't get out of bounds.\n *\n * @param {Uint8Array} arr\n * @param {number | undefined} offset\n * @param {number | undefined} length\n * @returns {DataView}\n */\nexport function safeView(arr, offset = 0, length = arr.byteLength) {\n if (!(Number.isInteger(offset) && offset >= 0))\n throw new Error(\"Invalid offset!\");\n if (!(Number.isInteger(length) && length >= 0))\n throw new Error(\"Invalid length!\");\n return new DataView(\n arr.buffer,\n arr.byteOffset + offset,\n Math.min(length, arr.byteLength - offset)\n );\n}\n","import StatusError from \"./StatusError.js\";\n\n/**\n * @typedef {import(\"./Status.js\").default} Status\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class PrecheckStatusError extends StatusError {\n /**\n * @param {object} props\n * @param {Status} props.status\n * @param {TransactionId} props.transactionId\n */\n constructor(props) {\n super(\n props,\n `transaction ${props.transactionId.toString()} failed precheck with status ${props.status.toString()}`\n );\n }\n}\n","import TokenId from \"./TokenId.js\";\nimport CustomFee from \"./CustomFee.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n * @typedef {import(\"@hashgraph/proto\").IFixedFee} proto.IFixedFee\n */\n\nexport default class CustomFixedFee extends CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {TokenId | string} [props.denominatingTokenId]\n * @param {Long | number} [props.amount]\n */\n constructor(props = {}) {\n super(props);\n\n /**\n * @type {?TokenId}\n */\n this._denominatingTokenId;\n\n if (props.denominatingTokenId != null) {\n this.setDenominatingTokenId(props.denominatingTokenId);\n }\n\n /**\n * @type {?Long}\n */\n this._amount;\n\n if (props.amount != null) {\n this.setAmount(props.amount);\n }\n }\n\n /**\n * @param {Hbar} amount\n * @returns {CustomFixedFee}\n */\n setHbarAmount(amount) {\n this._amount = amount.toTinybars();\n this._denominatingTokenId = null;\n return this;\n }\n\n /**\n * @returns {TokenId | Hbar | null}\n */\n get hbarAmount() {\n return this._denominatingTokenId != null\n ? null\n : Hbar.fromTinybars(this._amount != null ? this._amount : 0);\n }\n\n /**\n * @returns {CustomFixedFee}\n */\n setDenominatingTokenToSameToken() {\n this._denominatingTokenId = new TokenId(0, 0, 0);\n return this;\n }\n\n /**\n * @returns {?TokenId}\n */\n get denominatingTokenId() {\n return this._denominatingTokenId;\n }\n\n /**\n * @param {TokenId | string} denominatingTokenId\n * @returns {CustomFixedFee}\n */\n setDenominatingTokenId(denominatingTokenId) {\n this._denominatingTokenId =\n typeof denominatingTokenId === \"string\"\n ? TokenId.fromString(denominatingTokenId)\n : denominatingTokenId;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get amount() {\n return this._amount;\n }\n\n /**\n * @param {Long | number} amount\n * @returns {CustomFixedFee}\n */\n setAmount(amount) {\n this._amount =\n typeof amount === \"number\" ? Long.fromNumber(amount) : amount;\n return this;\n }\n\n /**\n * @internal\n * @override\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n const fee = /** @type {proto.IFixedFee} */ (info.fixedFee);\n\n return new CustomFixedFee({\n feeCollectorAccountId:\n info.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(info.feeCollectorAccountId)\n : undefined,\n denominatingTokenId:\n fee.denominatingTokenId != null\n ? TokenId._fromProtobuf(fee.denominatingTokenId)\n : undefined,\n amount: fee.amount != null ? fee.amount : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n fixedFee: {\n denominatingTokenId:\n this._denominatingTokenId != null\n ? this._denominatingTokenId._toProtobuf()\n : null,\n amount: this._amount,\n },\n };\n }\n}\n","export const version = \"strings/5.5.0\";\n//# sourceMappingURL=_version.js.map","export { default as Key } from \"./Key.js\";\nexport { default as KeyList } from \"./KeyList.js\";\nexport { default as PrivateKey } from \"./PrivateKey.js\";\nexport { default as PublicKey } from \"./PublicKey.js\";\nexport { default as Mnemonic } from \"./Mnemonic.js\";\nexport { default as BadKeyError } from \"./BadKeyError.js\";\nexport { default as BadMnemonicError } from \"./BadMnemonicError.js\";\nexport { default as BadMnemonicReason } from \"./BadMnemonicReason.js\";\n","(function(nacl) {\n'use strict';\n\n// Ported in 2014 by Dmitry Chestnykh and Devi Mandiri.\n// Public domain.\n//\n// Implementation derived from TweetNaCl version 20140427.\n// See for details: http://tweetnacl.cr.yp.to/\n\nvar gf = function(init) {\n var i, r = new Float64Array(16);\n if (init) for (i = 0; i < init.length; i++) r[i] = init[i];\n return r;\n};\n\n// Pluggable, initialized in high-level API below.\nvar randombytes = function(/* x, n */) { throw new Error('no PRNG'); };\n\nvar _0 = new Uint8Array(16);\nvar _9 = new Uint8Array(32); _9[0] = 9;\n\nvar gf0 = gf(),\n gf1 = gf([1]),\n _121665 = gf([0xdb41, 1]),\n D = gf([0x78a3, 0x1359, 0x4dca, 0x75eb, 0xd8ab, 0x4141, 0x0a4d, 0x0070, 0xe898, 0x7779, 0x4079, 0x8cc7, 0xfe73, 0x2b6f, 0x6cee, 0x5203]),\n D2 = gf([0xf159, 0x26b2, 0x9b94, 0xebd6, 0xb156, 0x8283, 0x149a, 0x00e0, 0xd130, 0xeef3, 0x80f2, 0x198e, 0xfce7, 0x56df, 0xd9dc, 0x2406]),\n X = gf([0xd51a, 0x8f25, 0x2d60, 0xc956, 0xa7b2, 0x9525, 0xc760, 0x692c, 0xdc5c, 0xfdd6, 0xe231, 0xc0a4, 0x53fe, 0xcd6e, 0x36d3, 0x2169]),\n Y = gf([0x6658, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666]),\n I = gf([0xa0b0, 0x4a0e, 0x1b27, 0xc4ee, 0xe478, 0xad2f, 0x1806, 0x2f43, 0xd7a7, 0x3dfb, 0x0099, 0x2b4d, 0xdf0b, 0x4fc1, 0x2480, 0x2b83]);\n\nfunction ts64(x, i, h, l) {\n x[i] = (h >> 24) & 0xff;\n x[i+1] = (h >> 16) & 0xff;\n x[i+2] = (h >> 8) & 0xff;\n x[i+3] = h & 0xff;\n x[i+4] = (l >> 24) & 0xff;\n x[i+5] = (l >> 16) & 0xff;\n x[i+6] = (l >> 8) & 0xff;\n x[i+7] = l & 0xff;\n}\n\nfunction vn(x, xi, y, yi, n) {\n var i,d = 0;\n for (i = 0; i < n; i++) d |= x[xi+i]^y[yi+i];\n return (1 & ((d - 1) >>> 8)) - 1;\n}\n\nfunction crypto_verify_16(x, xi, y, yi) {\n return vn(x,xi,y,yi,16);\n}\n\nfunction crypto_verify_32(x, xi, y, yi) {\n return vn(x,xi,y,yi,32);\n}\n\nfunction core_salsa20(o, p, k, c) {\n var j0 = c[ 0] & 0xff | (c[ 1] & 0xff)<<8 | (c[ 2] & 0xff)<<16 | (c[ 3] & 0xff)<<24,\n j1 = k[ 0] & 0xff | (k[ 1] & 0xff)<<8 | (k[ 2] & 0xff)<<16 | (k[ 3] & 0xff)<<24,\n j2 = k[ 4] & 0xff | (k[ 5] & 0xff)<<8 | (k[ 6] & 0xff)<<16 | (k[ 7] & 0xff)<<24,\n j3 = k[ 8] & 0xff | (k[ 9] & 0xff)<<8 | (k[10] & 0xff)<<16 | (k[11] & 0xff)<<24,\n j4 = k[12] & 0xff | (k[13] & 0xff)<<8 | (k[14] & 0xff)<<16 | (k[15] & 0xff)<<24,\n j5 = c[ 4] & 0xff | (c[ 5] & 0xff)<<8 | (c[ 6] & 0xff)<<16 | (c[ 7] & 0xff)<<24,\n j6 = p[ 0] & 0xff | (p[ 1] & 0xff)<<8 | (p[ 2] & 0xff)<<16 | (p[ 3] & 0xff)<<24,\n j7 = p[ 4] & 0xff | (p[ 5] & 0xff)<<8 | (p[ 6] & 0xff)<<16 | (p[ 7] & 0xff)<<24,\n j8 = p[ 8] & 0xff | (p[ 9] & 0xff)<<8 | (p[10] & 0xff)<<16 | (p[11] & 0xff)<<24,\n j9 = p[12] & 0xff | (p[13] & 0xff)<<8 | (p[14] & 0xff)<<16 | (p[15] & 0xff)<<24,\n j10 = c[ 8] & 0xff | (c[ 9] & 0xff)<<8 | (c[10] & 0xff)<<16 | (c[11] & 0xff)<<24,\n j11 = k[16] & 0xff | (k[17] & 0xff)<<8 | (k[18] & 0xff)<<16 | (k[19] & 0xff)<<24,\n j12 = k[20] & 0xff | (k[21] & 0xff)<<8 | (k[22] & 0xff)<<16 | (k[23] & 0xff)<<24,\n j13 = k[24] & 0xff | (k[25] & 0xff)<<8 | (k[26] & 0xff)<<16 | (k[27] & 0xff)<<24,\n j14 = k[28] & 0xff | (k[29] & 0xff)<<8 | (k[30] & 0xff)<<16 | (k[31] & 0xff)<<24,\n j15 = c[12] & 0xff | (c[13] & 0xff)<<8 | (c[14] & 0xff)<<16 | (c[15] & 0xff)<<24;\n\n var x0 = j0, x1 = j1, x2 = j2, x3 = j3, x4 = j4, x5 = j5, x6 = j6, x7 = j7,\n x8 = j8, x9 = j9, x10 = j10, x11 = j11, x12 = j12, x13 = j13, x14 = j14,\n x15 = j15, u;\n\n for (var i = 0; i < 20; i += 2) {\n u = x0 + x12 | 0;\n x4 ^= u<<7 | u>>>(32-7);\n u = x4 + x0 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x4 | 0;\n x12 ^= u<<13 | u>>>(32-13);\n u = x12 + x8 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x1 | 0;\n x9 ^= u<<7 | u>>>(32-7);\n u = x9 + x5 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x9 | 0;\n x1 ^= u<<13 | u>>>(32-13);\n u = x1 + x13 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x6 | 0;\n x14 ^= u<<7 | u>>>(32-7);\n u = x14 + x10 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x14 | 0;\n x6 ^= u<<13 | u>>>(32-13);\n u = x6 + x2 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x11 | 0;\n x3 ^= u<<7 | u>>>(32-7);\n u = x3 + x15 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x3 | 0;\n x11 ^= u<<13 | u>>>(32-13);\n u = x11 + x7 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n\n u = x0 + x3 | 0;\n x1 ^= u<<7 | u>>>(32-7);\n u = x1 + x0 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x1 | 0;\n x3 ^= u<<13 | u>>>(32-13);\n u = x3 + x2 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x4 | 0;\n x6 ^= u<<7 | u>>>(32-7);\n u = x6 + x5 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x6 | 0;\n x4 ^= u<<13 | u>>>(32-13);\n u = x4 + x7 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x9 | 0;\n x11 ^= u<<7 | u>>>(32-7);\n u = x11 + x10 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x11 | 0;\n x9 ^= u<<13 | u>>>(32-13);\n u = x9 + x8 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x14 | 0;\n x12 ^= u<<7 | u>>>(32-7);\n u = x12 + x15 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x12 | 0;\n x14 ^= u<<13 | u>>>(32-13);\n u = x14 + x13 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n }\n x0 = x0 + j0 | 0;\n x1 = x1 + j1 | 0;\n x2 = x2 + j2 | 0;\n x3 = x3 + j3 | 0;\n x4 = x4 + j4 | 0;\n x5 = x5 + j5 | 0;\n x6 = x6 + j6 | 0;\n x7 = x7 + j7 | 0;\n x8 = x8 + j8 | 0;\n x9 = x9 + j9 | 0;\n x10 = x10 + j10 | 0;\n x11 = x11 + j11 | 0;\n x12 = x12 + j12 | 0;\n x13 = x13 + j13 | 0;\n x14 = x14 + j14 | 0;\n x15 = x15 + j15 | 0;\n\n o[ 0] = x0 >>> 0 & 0xff;\n o[ 1] = x0 >>> 8 & 0xff;\n o[ 2] = x0 >>> 16 & 0xff;\n o[ 3] = x0 >>> 24 & 0xff;\n\n o[ 4] = x1 >>> 0 & 0xff;\n o[ 5] = x1 >>> 8 & 0xff;\n o[ 6] = x1 >>> 16 & 0xff;\n o[ 7] = x1 >>> 24 & 0xff;\n\n o[ 8] = x2 >>> 0 & 0xff;\n o[ 9] = x2 >>> 8 & 0xff;\n o[10] = x2 >>> 16 & 0xff;\n o[11] = x2 >>> 24 & 0xff;\n\n o[12] = x3 >>> 0 & 0xff;\n o[13] = x3 >>> 8 & 0xff;\n o[14] = x3 >>> 16 & 0xff;\n o[15] = x3 >>> 24 & 0xff;\n\n o[16] = x4 >>> 0 & 0xff;\n o[17] = x4 >>> 8 & 0xff;\n o[18] = x4 >>> 16 & 0xff;\n o[19] = x4 >>> 24 & 0xff;\n\n o[20] = x5 >>> 0 & 0xff;\n o[21] = x5 >>> 8 & 0xff;\n o[22] = x5 >>> 16 & 0xff;\n o[23] = x5 >>> 24 & 0xff;\n\n o[24] = x6 >>> 0 & 0xff;\n o[25] = x6 >>> 8 & 0xff;\n o[26] = x6 >>> 16 & 0xff;\n o[27] = x6 >>> 24 & 0xff;\n\n o[28] = x7 >>> 0 & 0xff;\n o[29] = x7 >>> 8 & 0xff;\n o[30] = x7 >>> 16 & 0xff;\n o[31] = x7 >>> 24 & 0xff;\n\n o[32] = x8 >>> 0 & 0xff;\n o[33] = x8 >>> 8 & 0xff;\n o[34] = x8 >>> 16 & 0xff;\n o[35] = x8 >>> 24 & 0xff;\n\n o[36] = x9 >>> 0 & 0xff;\n o[37] = x9 >>> 8 & 0xff;\n o[38] = x9 >>> 16 & 0xff;\n o[39] = x9 >>> 24 & 0xff;\n\n o[40] = x10 >>> 0 & 0xff;\n o[41] = x10 >>> 8 & 0xff;\n o[42] = x10 >>> 16 & 0xff;\n o[43] = x10 >>> 24 & 0xff;\n\n o[44] = x11 >>> 0 & 0xff;\n o[45] = x11 >>> 8 & 0xff;\n o[46] = x11 >>> 16 & 0xff;\n o[47] = x11 >>> 24 & 0xff;\n\n o[48] = x12 >>> 0 & 0xff;\n o[49] = x12 >>> 8 & 0xff;\n o[50] = x12 >>> 16 & 0xff;\n o[51] = x12 >>> 24 & 0xff;\n\n o[52] = x13 >>> 0 & 0xff;\n o[53] = x13 >>> 8 & 0xff;\n o[54] = x13 >>> 16 & 0xff;\n o[55] = x13 >>> 24 & 0xff;\n\n o[56] = x14 >>> 0 & 0xff;\n o[57] = x14 >>> 8 & 0xff;\n o[58] = x14 >>> 16 & 0xff;\n o[59] = x14 >>> 24 & 0xff;\n\n o[60] = x15 >>> 0 & 0xff;\n o[61] = x15 >>> 8 & 0xff;\n o[62] = x15 >>> 16 & 0xff;\n o[63] = x15 >>> 24 & 0xff;\n}\n\nfunction core_hsalsa20(o,p,k,c) {\n var j0 = c[ 0] & 0xff | (c[ 1] & 0xff)<<8 | (c[ 2] & 0xff)<<16 | (c[ 3] & 0xff)<<24,\n j1 = k[ 0] & 0xff | (k[ 1] & 0xff)<<8 | (k[ 2] & 0xff)<<16 | (k[ 3] & 0xff)<<24,\n j2 = k[ 4] & 0xff | (k[ 5] & 0xff)<<8 | (k[ 6] & 0xff)<<16 | (k[ 7] & 0xff)<<24,\n j3 = k[ 8] & 0xff | (k[ 9] & 0xff)<<8 | (k[10] & 0xff)<<16 | (k[11] & 0xff)<<24,\n j4 = k[12] & 0xff | (k[13] & 0xff)<<8 | (k[14] & 0xff)<<16 | (k[15] & 0xff)<<24,\n j5 = c[ 4] & 0xff | (c[ 5] & 0xff)<<8 | (c[ 6] & 0xff)<<16 | (c[ 7] & 0xff)<<24,\n j6 = p[ 0] & 0xff | (p[ 1] & 0xff)<<8 | (p[ 2] & 0xff)<<16 | (p[ 3] & 0xff)<<24,\n j7 = p[ 4] & 0xff | (p[ 5] & 0xff)<<8 | (p[ 6] & 0xff)<<16 | (p[ 7] & 0xff)<<24,\n j8 = p[ 8] & 0xff | (p[ 9] & 0xff)<<8 | (p[10] & 0xff)<<16 | (p[11] & 0xff)<<24,\n j9 = p[12] & 0xff | (p[13] & 0xff)<<8 | (p[14] & 0xff)<<16 | (p[15] & 0xff)<<24,\n j10 = c[ 8] & 0xff | (c[ 9] & 0xff)<<8 | (c[10] & 0xff)<<16 | (c[11] & 0xff)<<24,\n j11 = k[16] & 0xff | (k[17] & 0xff)<<8 | (k[18] & 0xff)<<16 | (k[19] & 0xff)<<24,\n j12 = k[20] & 0xff | (k[21] & 0xff)<<8 | (k[22] & 0xff)<<16 | (k[23] & 0xff)<<24,\n j13 = k[24] & 0xff | (k[25] & 0xff)<<8 | (k[26] & 0xff)<<16 | (k[27] & 0xff)<<24,\n j14 = k[28] & 0xff | (k[29] & 0xff)<<8 | (k[30] & 0xff)<<16 | (k[31] & 0xff)<<24,\n j15 = c[12] & 0xff | (c[13] & 0xff)<<8 | (c[14] & 0xff)<<16 | (c[15] & 0xff)<<24;\n\n var x0 = j0, x1 = j1, x2 = j2, x3 = j3, x4 = j4, x5 = j5, x6 = j6, x7 = j7,\n x8 = j8, x9 = j9, x10 = j10, x11 = j11, x12 = j12, x13 = j13, x14 = j14,\n x15 = j15, u;\n\n for (var i = 0; i < 20; i += 2) {\n u = x0 + x12 | 0;\n x4 ^= u<<7 | u>>>(32-7);\n u = x4 + x0 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x4 | 0;\n x12 ^= u<<13 | u>>>(32-13);\n u = x12 + x8 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x1 | 0;\n x9 ^= u<<7 | u>>>(32-7);\n u = x9 + x5 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x9 | 0;\n x1 ^= u<<13 | u>>>(32-13);\n u = x1 + x13 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x6 | 0;\n x14 ^= u<<7 | u>>>(32-7);\n u = x14 + x10 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x14 | 0;\n x6 ^= u<<13 | u>>>(32-13);\n u = x6 + x2 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x11 | 0;\n x3 ^= u<<7 | u>>>(32-7);\n u = x3 + x15 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x3 | 0;\n x11 ^= u<<13 | u>>>(32-13);\n u = x11 + x7 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n\n u = x0 + x3 | 0;\n x1 ^= u<<7 | u>>>(32-7);\n u = x1 + x0 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x1 | 0;\n x3 ^= u<<13 | u>>>(32-13);\n u = x3 + x2 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x4 | 0;\n x6 ^= u<<7 | u>>>(32-7);\n u = x6 + x5 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x6 | 0;\n x4 ^= u<<13 | u>>>(32-13);\n u = x4 + x7 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x9 | 0;\n x11 ^= u<<7 | u>>>(32-7);\n u = x11 + x10 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x11 | 0;\n x9 ^= u<<13 | u>>>(32-13);\n u = x9 + x8 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x14 | 0;\n x12 ^= u<<7 | u>>>(32-7);\n u = x12 + x15 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x12 | 0;\n x14 ^= u<<13 | u>>>(32-13);\n u = x14 + x13 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n }\n\n o[ 0] = x0 >>> 0 & 0xff;\n o[ 1] = x0 >>> 8 & 0xff;\n o[ 2] = x0 >>> 16 & 0xff;\n o[ 3] = x0 >>> 24 & 0xff;\n\n o[ 4] = x5 >>> 0 & 0xff;\n o[ 5] = x5 >>> 8 & 0xff;\n o[ 6] = x5 >>> 16 & 0xff;\n o[ 7] = x5 >>> 24 & 0xff;\n\n o[ 8] = x10 >>> 0 & 0xff;\n o[ 9] = x10 >>> 8 & 0xff;\n o[10] = x10 >>> 16 & 0xff;\n o[11] = x10 >>> 24 & 0xff;\n\n o[12] = x15 >>> 0 & 0xff;\n o[13] = x15 >>> 8 & 0xff;\n o[14] = x15 >>> 16 & 0xff;\n o[15] = x15 >>> 24 & 0xff;\n\n o[16] = x6 >>> 0 & 0xff;\n o[17] = x6 >>> 8 & 0xff;\n o[18] = x6 >>> 16 & 0xff;\n o[19] = x6 >>> 24 & 0xff;\n\n o[20] = x7 >>> 0 & 0xff;\n o[21] = x7 >>> 8 & 0xff;\n o[22] = x7 >>> 16 & 0xff;\n o[23] = x7 >>> 24 & 0xff;\n\n o[24] = x8 >>> 0 & 0xff;\n o[25] = x8 >>> 8 & 0xff;\n o[26] = x8 >>> 16 & 0xff;\n o[27] = x8 >>> 24 & 0xff;\n\n o[28] = x9 >>> 0 & 0xff;\n o[29] = x9 >>> 8 & 0xff;\n o[30] = x9 >>> 16 & 0xff;\n o[31] = x9 >>> 24 & 0xff;\n}\n\nfunction crypto_core_salsa20(out,inp,k,c) {\n core_salsa20(out,inp,k,c);\n}\n\nfunction crypto_core_hsalsa20(out,inp,k,c) {\n core_hsalsa20(out,inp,k,c);\n}\n\nvar sigma = new Uint8Array([101, 120, 112, 97, 110, 100, 32, 51, 50, 45, 98, 121, 116, 101, 32, 107]);\n // \"expand 32-byte k\"\n\nfunction crypto_stream_salsa20_xor(c,cpos,m,mpos,b,n,k) {\n var z = new Uint8Array(16), x = new Uint8Array(64);\n var u, i;\n for (i = 0; i < 16; i++) z[i] = 0;\n for (i = 0; i < 8; i++) z[i] = n[i];\n while (b >= 64) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < 64; i++) c[cpos+i] = m[mpos+i] ^ x[i];\n u = 1;\n for (i = 8; i < 16; i++) {\n u = u + (z[i] & 0xff) | 0;\n z[i] = u & 0xff;\n u >>>= 8;\n }\n b -= 64;\n cpos += 64;\n mpos += 64;\n }\n if (b > 0) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < b; i++) c[cpos+i] = m[mpos+i] ^ x[i];\n }\n return 0;\n}\n\nfunction crypto_stream_salsa20(c,cpos,b,n,k) {\n var z = new Uint8Array(16), x = new Uint8Array(64);\n var u, i;\n for (i = 0; i < 16; i++) z[i] = 0;\n for (i = 0; i < 8; i++) z[i] = n[i];\n while (b >= 64) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < 64; i++) c[cpos+i] = x[i];\n u = 1;\n for (i = 8; i < 16; i++) {\n u = u + (z[i] & 0xff) | 0;\n z[i] = u & 0xff;\n u >>>= 8;\n }\n b -= 64;\n cpos += 64;\n }\n if (b > 0) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < b; i++) c[cpos+i] = x[i];\n }\n return 0;\n}\n\nfunction crypto_stream(c,cpos,d,n,k) {\n var s = new Uint8Array(32);\n crypto_core_hsalsa20(s,n,k,sigma);\n var sn = new Uint8Array(8);\n for (var i = 0; i < 8; i++) sn[i] = n[i+16];\n return crypto_stream_salsa20(c,cpos,d,sn,s);\n}\n\nfunction crypto_stream_xor(c,cpos,m,mpos,d,n,k) {\n var s = new Uint8Array(32);\n crypto_core_hsalsa20(s,n,k,sigma);\n var sn = new Uint8Array(8);\n for (var i = 0; i < 8; i++) sn[i] = n[i+16];\n return crypto_stream_salsa20_xor(c,cpos,m,mpos,d,sn,s);\n}\n\n/*\n* Port of Andrew Moon's Poly1305-donna-16. Public domain.\n* https://github.com/floodyberry/poly1305-donna\n*/\n\nvar poly1305 = function(key) {\n this.buffer = new Uint8Array(16);\n this.r = new Uint16Array(10);\n this.h = new Uint16Array(10);\n this.pad = new Uint16Array(8);\n this.leftover = 0;\n this.fin = 0;\n\n var t0, t1, t2, t3, t4, t5, t6, t7;\n\n t0 = key[ 0] & 0xff | (key[ 1] & 0xff) << 8; this.r[0] = ( t0 ) & 0x1fff;\n t1 = key[ 2] & 0xff | (key[ 3] & 0xff) << 8; this.r[1] = ((t0 >>> 13) | (t1 << 3)) & 0x1fff;\n t2 = key[ 4] & 0xff | (key[ 5] & 0xff) << 8; this.r[2] = ((t1 >>> 10) | (t2 << 6)) & 0x1f03;\n t3 = key[ 6] & 0xff | (key[ 7] & 0xff) << 8; this.r[3] = ((t2 >>> 7) | (t3 << 9)) & 0x1fff;\n t4 = key[ 8] & 0xff | (key[ 9] & 0xff) << 8; this.r[4] = ((t3 >>> 4) | (t4 << 12)) & 0x00ff;\n this.r[5] = ((t4 >>> 1)) & 0x1ffe;\n t5 = key[10] & 0xff | (key[11] & 0xff) << 8; this.r[6] = ((t4 >>> 14) | (t5 << 2)) & 0x1fff;\n t6 = key[12] & 0xff | (key[13] & 0xff) << 8; this.r[7] = ((t5 >>> 11) | (t6 << 5)) & 0x1f81;\n t7 = key[14] & 0xff | (key[15] & 0xff) << 8; this.r[8] = ((t6 >>> 8) | (t7 << 8)) & 0x1fff;\n this.r[9] = ((t7 >>> 5)) & 0x007f;\n\n this.pad[0] = key[16] & 0xff | (key[17] & 0xff) << 8;\n this.pad[1] = key[18] & 0xff | (key[19] & 0xff) << 8;\n this.pad[2] = key[20] & 0xff | (key[21] & 0xff) << 8;\n this.pad[3] = key[22] & 0xff | (key[23] & 0xff) << 8;\n this.pad[4] = key[24] & 0xff | (key[25] & 0xff) << 8;\n this.pad[5] = key[26] & 0xff | (key[27] & 0xff) << 8;\n this.pad[6] = key[28] & 0xff | (key[29] & 0xff) << 8;\n this.pad[7] = key[30] & 0xff | (key[31] & 0xff) << 8;\n};\n\npoly1305.prototype.blocks = function(m, mpos, bytes) {\n var hibit = this.fin ? 0 : (1 << 11);\n var t0, t1, t2, t3, t4, t5, t6, t7, c;\n var d0, d1, d2, d3, d4, d5, d6, d7, d8, d9;\n\n var h0 = this.h[0],\n h1 = this.h[1],\n h2 = this.h[2],\n h3 = this.h[3],\n h4 = this.h[4],\n h5 = this.h[5],\n h6 = this.h[6],\n h7 = this.h[7],\n h8 = this.h[8],\n h9 = this.h[9];\n\n var r0 = this.r[0],\n r1 = this.r[1],\n r2 = this.r[2],\n r3 = this.r[3],\n r4 = this.r[4],\n r5 = this.r[5],\n r6 = this.r[6],\n r7 = this.r[7],\n r8 = this.r[8],\n r9 = this.r[9];\n\n while (bytes >= 16) {\n t0 = m[mpos+ 0] & 0xff | (m[mpos+ 1] & 0xff) << 8; h0 += ( t0 ) & 0x1fff;\n t1 = m[mpos+ 2] & 0xff | (m[mpos+ 3] & 0xff) << 8; h1 += ((t0 >>> 13) | (t1 << 3)) & 0x1fff;\n t2 = m[mpos+ 4] & 0xff | (m[mpos+ 5] & 0xff) << 8; h2 += ((t1 >>> 10) | (t2 << 6)) & 0x1fff;\n t3 = m[mpos+ 6] & 0xff | (m[mpos+ 7] & 0xff) << 8; h3 += ((t2 >>> 7) | (t3 << 9)) & 0x1fff;\n t4 = m[mpos+ 8] & 0xff | (m[mpos+ 9] & 0xff) << 8; h4 += ((t3 >>> 4) | (t4 << 12)) & 0x1fff;\n h5 += ((t4 >>> 1)) & 0x1fff;\n t5 = m[mpos+10] & 0xff | (m[mpos+11] & 0xff) << 8; h6 += ((t4 >>> 14) | (t5 << 2)) & 0x1fff;\n t6 = m[mpos+12] & 0xff | (m[mpos+13] & 0xff) << 8; h7 += ((t5 >>> 11) | (t6 << 5)) & 0x1fff;\n t7 = m[mpos+14] & 0xff | (m[mpos+15] & 0xff) << 8; h8 += ((t6 >>> 8) | (t7 << 8)) & 0x1fff;\n h9 += ((t7 >>> 5)) | hibit;\n\n c = 0;\n\n d0 = c;\n d0 += h0 * r0;\n d0 += h1 * (5 * r9);\n d0 += h2 * (5 * r8);\n d0 += h3 * (5 * r7);\n d0 += h4 * (5 * r6);\n c = (d0 >>> 13); d0 &= 0x1fff;\n d0 += h5 * (5 * r5);\n d0 += h6 * (5 * r4);\n d0 += h7 * (5 * r3);\n d0 += h8 * (5 * r2);\n d0 += h9 * (5 * r1);\n c += (d0 >>> 13); d0 &= 0x1fff;\n\n d1 = c;\n d1 += h0 * r1;\n d1 += h1 * r0;\n d1 += h2 * (5 * r9);\n d1 += h3 * (5 * r8);\n d1 += h4 * (5 * r7);\n c = (d1 >>> 13); d1 &= 0x1fff;\n d1 += h5 * (5 * r6);\n d1 += h6 * (5 * r5);\n d1 += h7 * (5 * r4);\n d1 += h8 * (5 * r3);\n d1 += h9 * (5 * r2);\n c += (d1 >>> 13); d1 &= 0x1fff;\n\n d2 = c;\n d2 += h0 * r2;\n d2 += h1 * r1;\n d2 += h2 * r0;\n d2 += h3 * (5 * r9);\n d2 += h4 * (5 * r8);\n c = (d2 >>> 13); d2 &= 0x1fff;\n d2 += h5 * (5 * r7);\n d2 += h6 * (5 * r6);\n d2 += h7 * (5 * r5);\n d2 += h8 * (5 * r4);\n d2 += h9 * (5 * r3);\n c += (d2 >>> 13); d2 &= 0x1fff;\n\n d3 = c;\n d3 += h0 * r3;\n d3 += h1 * r2;\n d3 += h2 * r1;\n d3 += h3 * r0;\n d3 += h4 * (5 * r9);\n c = (d3 >>> 13); d3 &= 0x1fff;\n d3 += h5 * (5 * r8);\n d3 += h6 * (5 * r7);\n d3 += h7 * (5 * r6);\n d3 += h8 * (5 * r5);\n d3 += h9 * (5 * r4);\n c += (d3 >>> 13); d3 &= 0x1fff;\n\n d4 = c;\n d4 += h0 * r4;\n d4 += h1 * r3;\n d4 += h2 * r2;\n d4 += h3 * r1;\n d4 += h4 * r0;\n c = (d4 >>> 13); d4 &= 0x1fff;\n d4 += h5 * (5 * r9);\n d4 += h6 * (5 * r8);\n d4 += h7 * (5 * r7);\n d4 += h8 * (5 * r6);\n d4 += h9 * (5 * r5);\n c += (d4 >>> 13); d4 &= 0x1fff;\n\n d5 = c;\n d5 += h0 * r5;\n d5 += h1 * r4;\n d5 += h2 * r3;\n d5 += h3 * r2;\n d5 += h4 * r1;\n c = (d5 >>> 13); d5 &= 0x1fff;\n d5 += h5 * r0;\n d5 += h6 * (5 * r9);\n d5 += h7 * (5 * r8);\n d5 += h8 * (5 * r7);\n d5 += h9 * (5 * r6);\n c += (d5 >>> 13); d5 &= 0x1fff;\n\n d6 = c;\n d6 += h0 * r6;\n d6 += h1 * r5;\n d6 += h2 * r4;\n d6 += h3 * r3;\n d6 += h4 * r2;\n c = (d6 >>> 13); d6 &= 0x1fff;\n d6 += h5 * r1;\n d6 += h6 * r0;\n d6 += h7 * (5 * r9);\n d6 += h8 * (5 * r8);\n d6 += h9 * (5 * r7);\n c += (d6 >>> 13); d6 &= 0x1fff;\n\n d7 = c;\n d7 += h0 * r7;\n d7 += h1 * r6;\n d7 += h2 * r5;\n d7 += h3 * r4;\n d7 += h4 * r3;\n c = (d7 >>> 13); d7 &= 0x1fff;\n d7 += h5 * r2;\n d7 += h6 * r1;\n d7 += h7 * r0;\n d7 += h8 * (5 * r9);\n d7 += h9 * (5 * r8);\n c += (d7 >>> 13); d7 &= 0x1fff;\n\n d8 = c;\n d8 += h0 * r8;\n d8 += h1 * r7;\n d8 += h2 * r6;\n d8 += h3 * r5;\n d8 += h4 * r4;\n c = (d8 >>> 13); d8 &= 0x1fff;\n d8 += h5 * r3;\n d8 += h6 * r2;\n d8 += h7 * r1;\n d8 += h8 * r0;\n d8 += h9 * (5 * r9);\n c += (d8 >>> 13); d8 &= 0x1fff;\n\n d9 = c;\n d9 += h0 * r9;\n d9 += h1 * r8;\n d9 += h2 * r7;\n d9 += h3 * r6;\n d9 += h4 * r5;\n c = (d9 >>> 13); d9 &= 0x1fff;\n d9 += h5 * r4;\n d9 += h6 * r3;\n d9 += h7 * r2;\n d9 += h8 * r1;\n d9 += h9 * r0;\n c += (d9 >>> 13); d9 &= 0x1fff;\n\n c = (((c << 2) + c)) | 0;\n c = (c + d0) | 0;\n d0 = c & 0x1fff;\n c = (c >>> 13);\n d1 += c;\n\n h0 = d0;\n h1 = d1;\n h2 = d2;\n h3 = d3;\n h4 = d4;\n h5 = d5;\n h6 = d6;\n h7 = d7;\n h8 = d8;\n h9 = d9;\n\n mpos += 16;\n bytes -= 16;\n }\n this.h[0] = h0;\n this.h[1] = h1;\n this.h[2] = h2;\n this.h[3] = h3;\n this.h[4] = h4;\n this.h[5] = h5;\n this.h[6] = h6;\n this.h[7] = h7;\n this.h[8] = h8;\n this.h[9] = h9;\n};\n\npoly1305.prototype.finish = function(mac, macpos) {\n var g = new Uint16Array(10);\n var c, mask, f, i;\n\n if (this.leftover) {\n i = this.leftover;\n this.buffer[i++] = 1;\n for (; i < 16; i++) this.buffer[i] = 0;\n this.fin = 1;\n this.blocks(this.buffer, 0, 16);\n }\n\n c = this.h[1] >>> 13;\n this.h[1] &= 0x1fff;\n for (i = 2; i < 10; i++) {\n this.h[i] += c;\n c = this.h[i] >>> 13;\n this.h[i] &= 0x1fff;\n }\n this.h[0] += (c * 5);\n c = this.h[0] >>> 13;\n this.h[0] &= 0x1fff;\n this.h[1] += c;\n c = this.h[1] >>> 13;\n this.h[1] &= 0x1fff;\n this.h[2] += c;\n\n g[0] = this.h[0] + 5;\n c = g[0] >>> 13;\n g[0] &= 0x1fff;\n for (i = 1; i < 10; i++) {\n g[i] = this.h[i] + c;\n c = g[i] >>> 13;\n g[i] &= 0x1fff;\n }\n g[9] -= (1 << 13);\n\n mask = (c ^ 1) - 1;\n for (i = 0; i < 10; i++) g[i] &= mask;\n mask = ~mask;\n for (i = 0; i < 10; i++) this.h[i] = (this.h[i] & mask) | g[i];\n\n this.h[0] = ((this.h[0] ) | (this.h[1] << 13) ) & 0xffff;\n this.h[1] = ((this.h[1] >>> 3) | (this.h[2] << 10) ) & 0xffff;\n this.h[2] = ((this.h[2] >>> 6) | (this.h[3] << 7) ) & 0xffff;\n this.h[3] = ((this.h[3] >>> 9) | (this.h[4] << 4) ) & 0xffff;\n this.h[4] = ((this.h[4] >>> 12) | (this.h[5] << 1) | (this.h[6] << 14)) & 0xffff;\n this.h[5] = ((this.h[6] >>> 2) | (this.h[7] << 11) ) & 0xffff;\n this.h[6] = ((this.h[7] >>> 5) | (this.h[8] << 8) ) & 0xffff;\n this.h[7] = ((this.h[8] >>> 8) | (this.h[9] << 5) ) & 0xffff;\n\n f = this.h[0] + this.pad[0];\n this.h[0] = f & 0xffff;\n for (i = 1; i < 8; i++) {\n f = (((this.h[i] + this.pad[i]) | 0) + (f >>> 16)) | 0;\n this.h[i] = f & 0xffff;\n }\n\n mac[macpos+ 0] = (this.h[0] >>> 0) & 0xff;\n mac[macpos+ 1] = (this.h[0] >>> 8) & 0xff;\n mac[macpos+ 2] = (this.h[1] >>> 0) & 0xff;\n mac[macpos+ 3] = (this.h[1] >>> 8) & 0xff;\n mac[macpos+ 4] = (this.h[2] >>> 0) & 0xff;\n mac[macpos+ 5] = (this.h[2] >>> 8) & 0xff;\n mac[macpos+ 6] = (this.h[3] >>> 0) & 0xff;\n mac[macpos+ 7] = (this.h[3] >>> 8) & 0xff;\n mac[macpos+ 8] = (this.h[4] >>> 0) & 0xff;\n mac[macpos+ 9] = (this.h[4] >>> 8) & 0xff;\n mac[macpos+10] = (this.h[5] >>> 0) & 0xff;\n mac[macpos+11] = (this.h[5] >>> 8) & 0xff;\n mac[macpos+12] = (this.h[6] >>> 0) & 0xff;\n mac[macpos+13] = (this.h[6] >>> 8) & 0xff;\n mac[macpos+14] = (this.h[7] >>> 0) & 0xff;\n mac[macpos+15] = (this.h[7] >>> 8) & 0xff;\n};\n\npoly1305.prototype.update = function(m, mpos, bytes) {\n var i, want;\n\n if (this.leftover) {\n want = (16 - this.leftover);\n if (want > bytes)\n want = bytes;\n for (i = 0; i < want; i++)\n this.buffer[this.leftover + i] = m[mpos+i];\n bytes -= want;\n mpos += want;\n this.leftover += want;\n if (this.leftover < 16)\n return;\n this.blocks(this.buffer, 0, 16);\n this.leftover = 0;\n }\n\n if (bytes >= 16) {\n want = bytes - (bytes % 16);\n this.blocks(m, mpos, want);\n mpos += want;\n bytes -= want;\n }\n\n if (bytes) {\n for (i = 0; i < bytes; i++)\n this.buffer[this.leftover + i] = m[mpos+i];\n this.leftover += bytes;\n }\n};\n\nfunction crypto_onetimeauth(out, outpos, m, mpos, n, k) {\n var s = new poly1305(k);\n s.update(m, mpos, n);\n s.finish(out, outpos);\n return 0;\n}\n\nfunction crypto_onetimeauth_verify(h, hpos, m, mpos, n, k) {\n var x = new Uint8Array(16);\n crypto_onetimeauth(x,0,m,mpos,n,k);\n return crypto_verify_16(h,hpos,x,0);\n}\n\nfunction crypto_secretbox(c,m,d,n,k) {\n var i;\n if (d < 32) return -1;\n crypto_stream_xor(c,0,m,0,d,n,k);\n crypto_onetimeauth(c, 16, c, 32, d - 32, c);\n for (i = 0; i < 16; i++) c[i] = 0;\n return 0;\n}\n\nfunction crypto_secretbox_open(m,c,d,n,k) {\n var i;\n var x = new Uint8Array(32);\n if (d < 32) return -1;\n crypto_stream(x,0,32,n,k);\n if (crypto_onetimeauth_verify(c, 16,c, 32,d - 32,x) !== 0) return -1;\n crypto_stream_xor(m,0,c,0,d,n,k);\n for (i = 0; i < 32; i++) m[i] = 0;\n return 0;\n}\n\nfunction set25519(r, a) {\n var i;\n for (i = 0; i < 16; i++) r[i] = a[i]|0;\n}\n\nfunction car25519(o) {\n var i, v, c = 1;\n for (i = 0; i < 16; i++) {\n v = o[i] + c + 65535;\n c = Math.floor(v / 65536);\n o[i] = v - c * 65536;\n }\n o[0] += c-1 + 37 * (c-1);\n}\n\nfunction sel25519(p, q, b) {\n var t, c = ~(b-1);\n for (var i = 0; i < 16; i++) {\n t = c & (p[i] ^ q[i]);\n p[i] ^= t;\n q[i] ^= t;\n }\n}\n\nfunction pack25519(o, n) {\n var i, j, b;\n var m = gf(), t = gf();\n for (i = 0; i < 16; i++) t[i] = n[i];\n car25519(t);\n car25519(t);\n car25519(t);\n for (j = 0; j < 2; j++) {\n m[0] = t[0] - 0xffed;\n for (i = 1; i < 15; i++) {\n m[i] = t[i] - 0xffff - ((m[i-1]>>16) & 1);\n m[i-1] &= 0xffff;\n }\n m[15] = t[15] - 0x7fff - ((m[14]>>16) & 1);\n b = (m[15]>>16) & 1;\n m[14] &= 0xffff;\n sel25519(t, m, 1-b);\n }\n for (i = 0; i < 16; i++) {\n o[2*i] = t[i] & 0xff;\n o[2*i+1] = t[i]>>8;\n }\n}\n\nfunction neq25519(a, b) {\n var c = new Uint8Array(32), d = new Uint8Array(32);\n pack25519(c, a);\n pack25519(d, b);\n return crypto_verify_32(c, 0, d, 0);\n}\n\nfunction par25519(a) {\n var d = new Uint8Array(32);\n pack25519(d, a);\n return d[0] & 1;\n}\n\nfunction unpack25519(o, n) {\n var i;\n for (i = 0; i < 16; i++) o[i] = n[2*i] + (n[2*i+1] << 8);\n o[15] &= 0x7fff;\n}\n\nfunction A(o, a, b) {\n for (var i = 0; i < 16; i++) o[i] = a[i] + b[i];\n}\n\nfunction Z(o, a, b) {\n for (var i = 0; i < 16; i++) o[i] = a[i] - b[i];\n}\n\nfunction M(o, a, b) {\n var v, c,\n t0 = 0, t1 = 0, t2 = 0, t3 = 0, t4 = 0, t5 = 0, t6 = 0, t7 = 0,\n t8 = 0, t9 = 0, t10 = 0, t11 = 0, t12 = 0, t13 = 0, t14 = 0, t15 = 0,\n t16 = 0, t17 = 0, t18 = 0, t19 = 0, t20 = 0, t21 = 0, t22 = 0, t23 = 0,\n t24 = 0, t25 = 0, t26 = 0, t27 = 0, t28 = 0, t29 = 0, t30 = 0,\n b0 = b[0],\n b1 = b[1],\n b2 = b[2],\n b3 = b[3],\n b4 = b[4],\n b5 = b[5],\n b6 = b[6],\n b7 = b[7],\n b8 = b[8],\n b9 = b[9],\n b10 = b[10],\n b11 = b[11],\n b12 = b[12],\n b13 = b[13],\n b14 = b[14],\n b15 = b[15];\n\n v = a[0];\n t0 += v * b0;\n t1 += v * b1;\n t2 += v * b2;\n t3 += v * b3;\n t4 += v * b4;\n t5 += v * b5;\n t6 += v * b6;\n t7 += v * b7;\n t8 += v * b8;\n t9 += v * b9;\n t10 += v * b10;\n t11 += v * b11;\n t12 += v * b12;\n t13 += v * b13;\n t14 += v * b14;\n t15 += v * b15;\n v = a[1];\n t1 += v * b0;\n t2 += v * b1;\n t3 += v * b2;\n t4 += v * b3;\n t5 += v * b4;\n t6 += v * b5;\n t7 += v * b6;\n t8 += v * b7;\n t9 += v * b8;\n t10 += v * b9;\n t11 += v * b10;\n t12 += v * b11;\n t13 += v * b12;\n t14 += v * b13;\n t15 += v * b14;\n t16 += v * b15;\n v = a[2];\n t2 += v * b0;\n t3 += v * b1;\n t4 += v * b2;\n t5 += v * b3;\n t6 += v * b4;\n t7 += v * b5;\n t8 += v * b6;\n t9 += v * b7;\n t10 += v * b8;\n t11 += v * b9;\n t12 += v * b10;\n t13 += v * b11;\n t14 += v * b12;\n t15 += v * b13;\n t16 += v * b14;\n t17 += v * b15;\n v = a[3];\n t3 += v * b0;\n t4 += v * b1;\n t5 += v * b2;\n t6 += v * b3;\n t7 += v * b4;\n t8 += v * b5;\n t9 += v * b6;\n t10 += v * b7;\n t11 += v * b8;\n t12 += v * b9;\n t13 += v * b10;\n t14 += v * b11;\n t15 += v * b12;\n t16 += v * b13;\n t17 += v * b14;\n t18 += v * b15;\n v = a[4];\n t4 += v * b0;\n t5 += v * b1;\n t6 += v * b2;\n t7 += v * b3;\n t8 += v * b4;\n t9 += v * b5;\n t10 += v * b6;\n t11 += v * b7;\n t12 += v * b8;\n t13 += v * b9;\n t14 += v * b10;\n t15 += v * b11;\n t16 += v * b12;\n t17 += v * b13;\n t18 += v * b14;\n t19 += v * b15;\n v = a[5];\n t5 += v * b0;\n t6 += v * b1;\n t7 += v * b2;\n t8 += v * b3;\n t9 += v * b4;\n t10 += v * b5;\n t11 += v * b6;\n t12 += v * b7;\n t13 += v * b8;\n t14 += v * b9;\n t15 += v * b10;\n t16 += v * b11;\n t17 += v * b12;\n t18 += v * b13;\n t19 += v * b14;\n t20 += v * b15;\n v = a[6];\n t6 += v * b0;\n t7 += v * b1;\n t8 += v * b2;\n t9 += v * b3;\n t10 += v * b4;\n t11 += v * b5;\n t12 += v * b6;\n t13 += v * b7;\n t14 += v * b8;\n t15 += v * b9;\n t16 += v * b10;\n t17 += v * b11;\n t18 += v * b12;\n t19 += v * b13;\n t20 += v * b14;\n t21 += v * b15;\n v = a[7];\n t7 += v * b0;\n t8 += v * b1;\n t9 += v * b2;\n t10 += v * b3;\n t11 += v * b4;\n t12 += v * b5;\n t13 += v * b6;\n t14 += v * b7;\n t15 += v * b8;\n t16 += v * b9;\n t17 += v * b10;\n t18 += v * b11;\n t19 += v * b12;\n t20 += v * b13;\n t21 += v * b14;\n t22 += v * b15;\n v = a[8];\n t8 += v * b0;\n t9 += v * b1;\n t10 += v * b2;\n t11 += v * b3;\n t12 += v * b4;\n t13 += v * b5;\n t14 += v * b6;\n t15 += v * b7;\n t16 += v * b8;\n t17 += v * b9;\n t18 += v * b10;\n t19 += v * b11;\n t20 += v * b12;\n t21 += v * b13;\n t22 += v * b14;\n t23 += v * b15;\n v = a[9];\n t9 += v * b0;\n t10 += v * b1;\n t11 += v * b2;\n t12 += v * b3;\n t13 += v * b4;\n t14 += v * b5;\n t15 += v * b6;\n t16 += v * b7;\n t17 += v * b8;\n t18 += v * b9;\n t19 += v * b10;\n t20 += v * b11;\n t21 += v * b12;\n t22 += v * b13;\n t23 += v * b14;\n t24 += v * b15;\n v = a[10];\n t10 += v * b0;\n t11 += v * b1;\n t12 += v * b2;\n t13 += v * b3;\n t14 += v * b4;\n t15 += v * b5;\n t16 += v * b6;\n t17 += v * b7;\n t18 += v * b8;\n t19 += v * b9;\n t20 += v * b10;\n t21 += v * b11;\n t22 += v * b12;\n t23 += v * b13;\n t24 += v * b14;\n t25 += v * b15;\n v = a[11];\n t11 += v * b0;\n t12 += v * b1;\n t13 += v * b2;\n t14 += v * b3;\n t15 += v * b4;\n t16 += v * b5;\n t17 += v * b6;\n t18 += v * b7;\n t19 += v * b8;\n t20 += v * b9;\n t21 += v * b10;\n t22 += v * b11;\n t23 += v * b12;\n t24 += v * b13;\n t25 += v * b14;\n t26 += v * b15;\n v = a[12];\n t12 += v * b0;\n t13 += v * b1;\n t14 += v * b2;\n t15 += v * b3;\n t16 += v * b4;\n t17 += v * b5;\n t18 += v * b6;\n t19 += v * b7;\n t20 += v * b8;\n t21 += v * b9;\n t22 += v * b10;\n t23 += v * b11;\n t24 += v * b12;\n t25 += v * b13;\n t26 += v * b14;\n t27 += v * b15;\n v = a[13];\n t13 += v * b0;\n t14 += v * b1;\n t15 += v * b2;\n t16 += v * b3;\n t17 += v * b4;\n t18 += v * b5;\n t19 += v * b6;\n t20 += v * b7;\n t21 += v * b8;\n t22 += v * b9;\n t23 += v * b10;\n t24 += v * b11;\n t25 += v * b12;\n t26 += v * b13;\n t27 += v * b14;\n t28 += v * b15;\n v = a[14];\n t14 += v * b0;\n t15 += v * b1;\n t16 += v * b2;\n t17 += v * b3;\n t18 += v * b4;\n t19 += v * b5;\n t20 += v * b6;\n t21 += v * b7;\n t22 += v * b8;\n t23 += v * b9;\n t24 += v * b10;\n t25 += v * b11;\n t26 += v * b12;\n t27 += v * b13;\n t28 += v * b14;\n t29 += v * b15;\n v = a[15];\n t15 += v * b0;\n t16 += v * b1;\n t17 += v * b2;\n t18 += v * b3;\n t19 += v * b4;\n t20 += v * b5;\n t21 += v * b6;\n t22 += v * b7;\n t23 += v * b8;\n t24 += v * b9;\n t25 += v * b10;\n t26 += v * b11;\n t27 += v * b12;\n t28 += v * b13;\n t29 += v * b14;\n t30 += v * b15;\n\n t0 += 38 * t16;\n t1 += 38 * t17;\n t2 += 38 * t18;\n t3 += 38 * t19;\n t4 += 38 * t20;\n t5 += 38 * t21;\n t6 += 38 * t22;\n t7 += 38 * t23;\n t8 += 38 * t24;\n t9 += 38 * t25;\n t10 += 38 * t26;\n t11 += 38 * t27;\n t12 += 38 * t28;\n t13 += 38 * t29;\n t14 += 38 * t30;\n // t15 left as is\n\n // first car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c-1 + 37 * (c-1);\n\n // second car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c-1 + 37 * (c-1);\n\n o[ 0] = t0;\n o[ 1] = t1;\n o[ 2] = t2;\n o[ 3] = t3;\n o[ 4] = t4;\n o[ 5] = t5;\n o[ 6] = t6;\n o[ 7] = t7;\n o[ 8] = t8;\n o[ 9] = t9;\n o[10] = t10;\n o[11] = t11;\n o[12] = t12;\n o[13] = t13;\n o[14] = t14;\n o[15] = t15;\n}\n\nfunction S(o, a) {\n M(o, a, a);\n}\n\nfunction inv25519(o, i) {\n var c = gf();\n var a;\n for (a = 0; a < 16; a++) c[a] = i[a];\n for (a = 253; a >= 0; a--) {\n S(c, c);\n if(a !== 2 && a !== 4) M(c, c, i);\n }\n for (a = 0; a < 16; a++) o[a] = c[a];\n}\n\nfunction pow2523(o, i) {\n var c = gf();\n var a;\n for (a = 0; a < 16; a++) c[a] = i[a];\n for (a = 250; a >= 0; a--) {\n S(c, c);\n if(a !== 1) M(c, c, i);\n }\n for (a = 0; a < 16; a++) o[a] = c[a];\n}\n\nfunction crypto_scalarmult(q, n, p) {\n var z = new Uint8Array(32);\n var x = new Float64Array(80), r, i;\n var a = gf(), b = gf(), c = gf(),\n d = gf(), e = gf(), f = gf();\n for (i = 0; i < 31; i++) z[i] = n[i];\n z[31]=(n[31]&127)|64;\n z[0]&=248;\n unpack25519(x,p);\n for (i = 0; i < 16; i++) {\n b[i]=x[i];\n d[i]=a[i]=c[i]=0;\n }\n a[0]=d[0]=1;\n for (i=254; i>=0; --i) {\n r=(z[i>>>3]>>>(i&7))&1;\n sel25519(a,b,r);\n sel25519(c,d,r);\n A(e,a,c);\n Z(a,a,c);\n A(c,b,d);\n Z(b,b,d);\n S(d,e);\n S(f,a);\n M(a,c,a);\n M(c,b,e);\n A(e,a,c);\n Z(a,a,c);\n S(b,a);\n Z(c,d,f);\n M(a,c,_121665);\n A(a,a,d);\n M(c,c,a);\n M(a,d,f);\n M(d,b,x);\n S(b,e);\n sel25519(a,b,r);\n sel25519(c,d,r);\n }\n for (i = 0; i < 16; i++) {\n x[i+16]=a[i];\n x[i+32]=c[i];\n x[i+48]=b[i];\n x[i+64]=d[i];\n }\n var x32 = x.subarray(32);\n var x16 = x.subarray(16);\n inv25519(x32,x32);\n M(x16,x16,x32);\n pack25519(q,x16);\n return 0;\n}\n\nfunction crypto_scalarmult_base(q, n) {\n return crypto_scalarmult(q, n, _9);\n}\n\nfunction crypto_box_keypair(y, x) {\n randombytes(x, 32);\n return crypto_scalarmult_base(y, x);\n}\n\nfunction crypto_box_beforenm(k, y, x) {\n var s = new Uint8Array(32);\n crypto_scalarmult(s, x, y);\n return crypto_core_hsalsa20(k, _0, s, sigma);\n}\n\nvar crypto_box_afternm = crypto_secretbox;\nvar crypto_box_open_afternm = crypto_secretbox_open;\n\nfunction crypto_box(c, m, d, n, y, x) {\n var k = new Uint8Array(32);\n crypto_box_beforenm(k, y, x);\n return crypto_box_afternm(c, m, d, n, k);\n}\n\nfunction crypto_box_open(m, c, d, n, y, x) {\n var k = new Uint8Array(32);\n crypto_box_beforenm(k, y, x);\n return crypto_box_open_afternm(m, c, d, n, k);\n}\n\nvar K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n];\n\nfunction crypto_hashblocks_hl(hh, hl, m, n) {\n var wh = new Int32Array(16), wl = new Int32Array(16),\n bh0, bh1, bh2, bh3, bh4, bh5, bh6, bh7,\n bl0, bl1, bl2, bl3, bl4, bl5, bl6, bl7,\n th, tl, i, j, h, l, a, b, c, d;\n\n var ah0 = hh[0],\n ah1 = hh[1],\n ah2 = hh[2],\n ah3 = hh[3],\n ah4 = hh[4],\n ah5 = hh[5],\n ah6 = hh[6],\n ah7 = hh[7],\n\n al0 = hl[0],\n al1 = hl[1],\n al2 = hl[2],\n al3 = hl[3],\n al4 = hl[4],\n al5 = hl[5],\n al6 = hl[6],\n al7 = hl[7];\n\n var pos = 0;\n while (n >= 128) {\n for (i = 0; i < 16; i++) {\n j = 8 * i + pos;\n wh[i] = (m[j+0] << 24) | (m[j+1] << 16) | (m[j+2] << 8) | m[j+3];\n wl[i] = (m[j+4] << 24) | (m[j+5] << 16) | (m[j+6] << 8) | m[j+7];\n }\n for (i = 0; i < 80; i++) {\n bh0 = ah0;\n bh1 = ah1;\n bh2 = ah2;\n bh3 = ah3;\n bh4 = ah4;\n bh5 = ah5;\n bh6 = ah6;\n bh7 = ah7;\n\n bl0 = al0;\n bl1 = al1;\n bl2 = al2;\n bl3 = al3;\n bl4 = al4;\n bl5 = al5;\n bl6 = al6;\n bl7 = al7;\n\n // add\n h = ah7;\n l = al7;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n // Sigma1\n h = ((ah4 >>> 14) | (al4 << (32-14))) ^ ((ah4 >>> 18) | (al4 << (32-18))) ^ ((al4 >>> (41-32)) | (ah4 << (32-(41-32))));\n l = ((al4 >>> 14) | (ah4 << (32-14))) ^ ((al4 >>> 18) | (ah4 << (32-18))) ^ ((ah4 >>> (41-32)) | (al4 << (32-(41-32))));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // Ch\n h = (ah4 & ah5) ^ (~ah4 & ah6);\n l = (al4 & al5) ^ (~al4 & al6);\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // K\n h = K[i*2];\n l = K[i*2+1];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // w\n h = wh[i%16];\n l = wl[i%16];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n th = c & 0xffff | d << 16;\n tl = a & 0xffff | b << 16;\n\n // add\n h = th;\n l = tl;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n // Sigma0\n h = ((ah0 >>> 28) | (al0 << (32-28))) ^ ((al0 >>> (34-32)) | (ah0 << (32-(34-32)))) ^ ((al0 >>> (39-32)) | (ah0 << (32-(39-32))));\n l = ((al0 >>> 28) | (ah0 << (32-28))) ^ ((ah0 >>> (34-32)) | (al0 << (32-(34-32)))) ^ ((ah0 >>> (39-32)) | (al0 << (32-(39-32))));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // Maj\n h = (ah0 & ah1) ^ (ah0 & ah2) ^ (ah1 & ah2);\n l = (al0 & al1) ^ (al0 & al2) ^ (al1 & al2);\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n bh7 = (c & 0xffff) | (d << 16);\n bl7 = (a & 0xffff) | (b << 16);\n\n // add\n h = bh3;\n l = bl3;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = th;\n l = tl;\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n bh3 = (c & 0xffff) | (d << 16);\n bl3 = (a & 0xffff) | (b << 16);\n\n ah1 = bh0;\n ah2 = bh1;\n ah3 = bh2;\n ah4 = bh3;\n ah5 = bh4;\n ah6 = bh5;\n ah7 = bh6;\n ah0 = bh7;\n\n al1 = bl0;\n al2 = bl1;\n al3 = bl2;\n al4 = bl3;\n al5 = bl4;\n al6 = bl5;\n al7 = bl6;\n al0 = bl7;\n\n if (i%16 === 15) {\n for (j = 0; j < 16; j++) {\n // add\n h = wh[j];\n l = wl[j];\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = wh[(j+9)%16];\n l = wl[(j+9)%16];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // sigma0\n th = wh[(j+1)%16];\n tl = wl[(j+1)%16];\n h = ((th >>> 1) | (tl << (32-1))) ^ ((th >>> 8) | (tl << (32-8))) ^ (th >>> 7);\n l = ((tl >>> 1) | (th << (32-1))) ^ ((tl >>> 8) | (th << (32-8))) ^ ((tl >>> 7) | (th << (32-7)));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // sigma1\n th = wh[(j+14)%16];\n tl = wl[(j+14)%16];\n h = ((th >>> 19) | (tl << (32-19))) ^ ((tl >>> (61-32)) | (th << (32-(61-32)))) ^ (th >>> 6);\n l = ((tl >>> 19) | (th << (32-19))) ^ ((th >>> (61-32)) | (tl << (32-(61-32)))) ^ ((tl >>> 6) | (th << (32-6)));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n wh[j] = (c & 0xffff) | (d << 16);\n wl[j] = (a & 0xffff) | (b << 16);\n }\n }\n }\n\n // add\n h = ah0;\n l = al0;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[0];\n l = hl[0];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[0] = ah0 = (c & 0xffff) | (d << 16);\n hl[0] = al0 = (a & 0xffff) | (b << 16);\n\n h = ah1;\n l = al1;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[1];\n l = hl[1];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[1] = ah1 = (c & 0xffff) | (d << 16);\n hl[1] = al1 = (a & 0xffff) | (b << 16);\n\n h = ah2;\n l = al2;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[2];\n l = hl[2];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[2] = ah2 = (c & 0xffff) | (d << 16);\n hl[2] = al2 = (a & 0xffff) | (b << 16);\n\n h = ah3;\n l = al3;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[3];\n l = hl[3];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[3] = ah3 = (c & 0xffff) | (d << 16);\n hl[3] = al3 = (a & 0xffff) | (b << 16);\n\n h = ah4;\n l = al4;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[4];\n l = hl[4];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[4] = ah4 = (c & 0xffff) | (d << 16);\n hl[4] = al4 = (a & 0xffff) | (b << 16);\n\n h = ah5;\n l = al5;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[5];\n l = hl[5];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[5] = ah5 = (c & 0xffff) | (d << 16);\n hl[5] = al5 = (a & 0xffff) | (b << 16);\n\n h = ah6;\n l = al6;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[6];\n l = hl[6];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[6] = ah6 = (c & 0xffff) | (d << 16);\n hl[6] = al6 = (a & 0xffff) | (b << 16);\n\n h = ah7;\n l = al7;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[7];\n l = hl[7];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[7] = ah7 = (c & 0xffff) | (d << 16);\n hl[7] = al7 = (a & 0xffff) | (b << 16);\n\n pos += 128;\n n -= 128;\n }\n\n return n;\n}\n\nfunction crypto_hash(out, m, n) {\n var hh = new Int32Array(8),\n hl = new Int32Array(8),\n x = new Uint8Array(256),\n i, b = n;\n\n hh[0] = 0x6a09e667;\n hh[1] = 0xbb67ae85;\n hh[2] = 0x3c6ef372;\n hh[3] = 0xa54ff53a;\n hh[4] = 0x510e527f;\n hh[5] = 0x9b05688c;\n hh[6] = 0x1f83d9ab;\n hh[7] = 0x5be0cd19;\n\n hl[0] = 0xf3bcc908;\n hl[1] = 0x84caa73b;\n hl[2] = 0xfe94f82b;\n hl[3] = 0x5f1d36f1;\n hl[4] = 0xade682d1;\n hl[5] = 0x2b3e6c1f;\n hl[6] = 0xfb41bd6b;\n hl[7] = 0x137e2179;\n\n crypto_hashblocks_hl(hh, hl, m, n);\n n %= 128;\n\n for (i = 0; i < n; i++) x[i] = m[b-n+i];\n x[n] = 128;\n\n n = 256-128*(n<112?1:0);\n x[n-9] = 0;\n ts64(x, n-8, (b / 0x20000000) | 0, b << 3);\n crypto_hashblocks_hl(hh, hl, x, n);\n\n for (i = 0; i < 8; i++) ts64(out, 8*i, hh[i], hl[i]);\n\n return 0;\n}\n\nfunction add(p, q) {\n var a = gf(), b = gf(), c = gf(),\n d = gf(), e = gf(), f = gf(),\n g = gf(), h = gf(), t = gf();\n\n Z(a, p[1], p[0]);\n Z(t, q[1], q[0]);\n M(a, a, t);\n A(b, p[0], p[1]);\n A(t, q[0], q[1]);\n M(b, b, t);\n M(c, p[3], q[3]);\n M(c, c, D2);\n M(d, p[2], q[2]);\n A(d, d, d);\n Z(e, b, a);\n Z(f, d, c);\n A(g, d, c);\n A(h, b, a);\n\n M(p[0], e, f);\n M(p[1], h, g);\n M(p[2], g, f);\n M(p[3], e, h);\n}\n\nfunction cswap(p, q, b) {\n var i;\n for (i = 0; i < 4; i++) {\n sel25519(p[i], q[i], b);\n }\n}\n\nfunction pack(r, p) {\n var tx = gf(), ty = gf(), zi = gf();\n inv25519(zi, p[2]);\n M(tx, p[0], zi);\n M(ty, p[1], zi);\n pack25519(r, ty);\n r[31] ^= par25519(tx) << 7;\n}\n\nfunction scalarmult(p, q, s) {\n var b, i;\n set25519(p[0], gf0);\n set25519(p[1], gf1);\n set25519(p[2], gf1);\n set25519(p[3], gf0);\n for (i = 255; i >= 0; --i) {\n b = (s[(i/8)|0] >> (i&7)) & 1;\n cswap(p, q, b);\n add(q, p);\n add(p, p);\n cswap(p, q, b);\n }\n}\n\nfunction scalarbase(p, s) {\n var q = [gf(), gf(), gf(), gf()];\n set25519(q[0], X);\n set25519(q[1], Y);\n set25519(q[2], gf1);\n M(q[3], X, Y);\n scalarmult(p, q, s);\n}\n\nfunction crypto_sign_keypair(pk, sk, seeded) {\n var d = new Uint8Array(64);\n var p = [gf(), gf(), gf(), gf()];\n var i;\n\n if (!seeded) randombytes(sk, 32);\n crypto_hash(d, sk, 32);\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n\n scalarbase(p, d);\n pack(pk, p);\n\n for (i = 0; i < 32; i++) sk[i+32] = pk[i];\n return 0;\n}\n\nvar L = new Float64Array([0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x10]);\n\nfunction modL(r, x) {\n var carry, i, j, k;\n for (i = 63; i >= 32; --i) {\n carry = 0;\n for (j = i - 32, k = i - 12; j < k; ++j) {\n x[j] += carry - 16 * x[i] * L[j - (i - 32)];\n carry = Math.floor((x[j] + 128) / 256);\n x[j] -= carry * 256;\n }\n x[j] += carry;\n x[i] = 0;\n }\n carry = 0;\n for (j = 0; j < 32; j++) {\n x[j] += carry - (x[31] >> 4) * L[j];\n carry = x[j] >> 8;\n x[j] &= 255;\n }\n for (j = 0; j < 32; j++) x[j] -= carry * L[j];\n for (i = 0; i < 32; i++) {\n x[i+1] += x[i] >> 8;\n r[i] = x[i] & 255;\n }\n}\n\nfunction reduce(r) {\n var x = new Float64Array(64), i;\n for (i = 0; i < 64; i++) x[i] = r[i];\n for (i = 0; i < 64; i++) r[i] = 0;\n modL(r, x);\n}\n\n// Note: difference from C - smlen returned, not passed as argument.\nfunction crypto_sign(sm, m, n, sk) {\n var d = new Uint8Array(64), h = new Uint8Array(64), r = new Uint8Array(64);\n var i, j, x = new Float64Array(64);\n var p = [gf(), gf(), gf(), gf()];\n\n crypto_hash(d, sk, 32);\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n\n var smlen = n + 64;\n for (i = 0; i < n; i++) sm[64 + i] = m[i];\n for (i = 0; i < 32; i++) sm[32 + i] = d[32 + i];\n\n crypto_hash(r, sm.subarray(32), n+32);\n reduce(r);\n scalarbase(p, r);\n pack(sm, p);\n\n for (i = 32; i < 64; i++) sm[i] = sk[i];\n crypto_hash(h, sm, n + 64);\n reduce(h);\n\n for (i = 0; i < 64; i++) x[i] = 0;\n for (i = 0; i < 32; i++) x[i] = r[i];\n for (i = 0; i < 32; i++) {\n for (j = 0; j < 32; j++) {\n x[i+j] += h[i] * d[j];\n }\n }\n\n modL(sm.subarray(32), x);\n return smlen;\n}\n\nfunction unpackneg(r, p) {\n var t = gf(), chk = gf(), num = gf(),\n den = gf(), den2 = gf(), den4 = gf(),\n den6 = gf();\n\n set25519(r[2], gf1);\n unpack25519(r[1], p);\n S(num, r[1]);\n M(den, num, D);\n Z(num, num, r[2]);\n A(den, r[2], den);\n\n S(den2, den);\n S(den4, den2);\n M(den6, den4, den2);\n M(t, den6, num);\n M(t, t, den);\n\n pow2523(t, t);\n M(t, t, num);\n M(t, t, den);\n M(t, t, den);\n M(r[0], t, den);\n\n S(chk, r[0]);\n M(chk, chk, den);\n if (neq25519(chk, num)) M(r[0], r[0], I);\n\n S(chk, r[0]);\n M(chk, chk, den);\n if (neq25519(chk, num)) return -1;\n\n if (par25519(r[0]) === (p[31]>>7)) Z(r[0], gf0, r[0]);\n\n M(r[3], r[0], r[1]);\n return 0;\n}\n\nfunction crypto_sign_open(m, sm, n, pk) {\n var i;\n var t = new Uint8Array(32), h = new Uint8Array(64);\n var p = [gf(), gf(), gf(), gf()],\n q = [gf(), gf(), gf(), gf()];\n\n if (n < 64) return -1;\n\n if (unpackneg(q, pk)) return -1;\n\n for (i = 0; i < n; i++) m[i] = sm[i];\n for (i = 0; i < 32; i++) m[i+32] = pk[i];\n crypto_hash(h, m, n);\n reduce(h);\n scalarmult(p, q, h);\n\n scalarbase(q, sm.subarray(32));\n add(p, q);\n pack(t, p);\n\n n -= 64;\n if (crypto_verify_32(sm, 0, t, 0)) {\n for (i = 0; i < n; i++) m[i] = 0;\n return -1;\n }\n\n for (i = 0; i < n; i++) m[i] = sm[i + 64];\n return n;\n}\n\nvar crypto_secretbox_KEYBYTES = 32,\n crypto_secretbox_NONCEBYTES = 24,\n crypto_secretbox_ZEROBYTES = 32,\n crypto_secretbox_BOXZEROBYTES = 16,\n crypto_scalarmult_BYTES = 32,\n crypto_scalarmult_SCALARBYTES = 32,\n crypto_box_PUBLICKEYBYTES = 32,\n crypto_box_SECRETKEYBYTES = 32,\n crypto_box_BEFORENMBYTES = 32,\n crypto_box_NONCEBYTES = crypto_secretbox_NONCEBYTES,\n crypto_box_ZEROBYTES = crypto_secretbox_ZEROBYTES,\n crypto_box_BOXZEROBYTES = crypto_secretbox_BOXZEROBYTES,\n crypto_sign_BYTES = 64,\n crypto_sign_PUBLICKEYBYTES = 32,\n crypto_sign_SECRETKEYBYTES = 64,\n crypto_sign_SEEDBYTES = 32,\n crypto_hash_BYTES = 64;\n\nnacl.lowlevel = {\n crypto_core_hsalsa20: crypto_core_hsalsa20,\n crypto_stream_xor: crypto_stream_xor,\n crypto_stream: crypto_stream,\n crypto_stream_salsa20_xor: crypto_stream_salsa20_xor,\n crypto_stream_salsa20: crypto_stream_salsa20,\n crypto_onetimeauth: crypto_onetimeauth,\n crypto_onetimeauth_verify: crypto_onetimeauth_verify,\n crypto_verify_16: crypto_verify_16,\n crypto_verify_32: crypto_verify_32,\n crypto_secretbox: crypto_secretbox,\n crypto_secretbox_open: crypto_secretbox_open,\n crypto_scalarmult: crypto_scalarmult,\n crypto_scalarmult_base: crypto_scalarmult_base,\n crypto_box_beforenm: crypto_box_beforenm,\n crypto_box_afternm: crypto_box_afternm,\n crypto_box: crypto_box,\n crypto_box_open: crypto_box_open,\n crypto_box_keypair: crypto_box_keypair,\n crypto_hash: crypto_hash,\n crypto_sign: crypto_sign,\n crypto_sign_keypair: crypto_sign_keypair,\n crypto_sign_open: crypto_sign_open,\n\n crypto_secretbox_KEYBYTES: crypto_secretbox_KEYBYTES,\n crypto_secretbox_NONCEBYTES: crypto_secretbox_NONCEBYTES,\n crypto_secretbox_ZEROBYTES: crypto_secretbox_ZEROBYTES,\n crypto_secretbox_BOXZEROBYTES: crypto_secretbox_BOXZEROBYTES,\n crypto_scalarmult_BYTES: crypto_scalarmult_BYTES,\n crypto_scalarmult_SCALARBYTES: crypto_scalarmult_SCALARBYTES,\n crypto_box_PUBLICKEYBYTES: crypto_box_PUBLICKEYBYTES,\n crypto_box_SECRETKEYBYTES: crypto_box_SECRETKEYBYTES,\n crypto_box_BEFORENMBYTES: crypto_box_BEFORENMBYTES,\n crypto_box_NONCEBYTES: crypto_box_NONCEBYTES,\n crypto_box_ZEROBYTES: crypto_box_ZEROBYTES,\n crypto_box_BOXZEROBYTES: crypto_box_BOXZEROBYTES,\n crypto_sign_BYTES: crypto_sign_BYTES,\n crypto_sign_PUBLICKEYBYTES: crypto_sign_PUBLICKEYBYTES,\n crypto_sign_SECRETKEYBYTES: crypto_sign_SECRETKEYBYTES,\n crypto_sign_SEEDBYTES: crypto_sign_SEEDBYTES,\n crypto_hash_BYTES: crypto_hash_BYTES,\n\n gf: gf,\n D: D,\n L: L,\n pack25519: pack25519,\n unpack25519: unpack25519,\n M: M,\n A: A,\n S: S,\n Z: Z,\n pow2523: pow2523,\n add: add,\n set25519: set25519,\n modL: modL,\n scalarmult: scalarmult,\n scalarbase: scalarbase,\n};\n\n/* High-level API */\n\nfunction checkLengths(k, n) {\n if (k.length !== crypto_secretbox_KEYBYTES) throw new Error('bad key size');\n if (n.length !== crypto_secretbox_NONCEBYTES) throw new Error('bad nonce size');\n}\n\nfunction checkBoxLengths(pk, sk) {\n if (pk.length !== crypto_box_PUBLICKEYBYTES) throw new Error('bad public key size');\n if (sk.length !== crypto_box_SECRETKEYBYTES) throw new Error('bad secret key size');\n}\n\nfunction checkArrayTypes() {\n for (var i = 0; i < arguments.length; i++) {\n if (!(arguments[i] instanceof Uint8Array))\n throw new TypeError('unexpected type, use Uint8Array');\n }\n}\n\nfunction cleanup(arr) {\n for (var i = 0; i < arr.length; i++) arr[i] = 0;\n}\n\nnacl.randomBytes = function(n) {\n var b = new Uint8Array(n);\n randombytes(b, n);\n return b;\n};\n\nnacl.secretbox = function(msg, nonce, key) {\n checkArrayTypes(msg, nonce, key);\n checkLengths(key, nonce);\n var m = new Uint8Array(crypto_secretbox_ZEROBYTES + msg.length);\n var c = new Uint8Array(m.length);\n for (var i = 0; i < msg.length; i++) m[i+crypto_secretbox_ZEROBYTES] = msg[i];\n crypto_secretbox(c, m, m.length, nonce, key);\n return c.subarray(crypto_secretbox_BOXZEROBYTES);\n};\n\nnacl.secretbox.open = function(box, nonce, key) {\n checkArrayTypes(box, nonce, key);\n checkLengths(key, nonce);\n var c = new Uint8Array(crypto_secretbox_BOXZEROBYTES + box.length);\n var m = new Uint8Array(c.length);\n for (var i = 0; i < box.length; i++) c[i+crypto_secretbox_BOXZEROBYTES] = box[i];\n if (c.length < 32) return null;\n if (crypto_secretbox_open(m, c, c.length, nonce, key) !== 0) return null;\n return m.subarray(crypto_secretbox_ZEROBYTES);\n};\n\nnacl.secretbox.keyLength = crypto_secretbox_KEYBYTES;\nnacl.secretbox.nonceLength = crypto_secretbox_NONCEBYTES;\nnacl.secretbox.overheadLength = crypto_secretbox_BOXZEROBYTES;\n\nnacl.scalarMult = function(n, p) {\n checkArrayTypes(n, p);\n if (n.length !== crypto_scalarmult_SCALARBYTES) throw new Error('bad n size');\n if (p.length !== crypto_scalarmult_BYTES) throw new Error('bad p size');\n var q = new Uint8Array(crypto_scalarmult_BYTES);\n crypto_scalarmult(q, n, p);\n return q;\n};\n\nnacl.scalarMult.base = function(n) {\n checkArrayTypes(n);\n if (n.length !== crypto_scalarmult_SCALARBYTES) throw new Error('bad n size');\n var q = new Uint8Array(crypto_scalarmult_BYTES);\n crypto_scalarmult_base(q, n);\n return q;\n};\n\nnacl.scalarMult.scalarLength = crypto_scalarmult_SCALARBYTES;\nnacl.scalarMult.groupElementLength = crypto_scalarmult_BYTES;\n\nnacl.box = function(msg, nonce, publicKey, secretKey) {\n var k = nacl.box.before(publicKey, secretKey);\n return nacl.secretbox(msg, nonce, k);\n};\n\nnacl.box.before = function(publicKey, secretKey) {\n checkArrayTypes(publicKey, secretKey);\n checkBoxLengths(publicKey, secretKey);\n var k = new Uint8Array(crypto_box_BEFORENMBYTES);\n crypto_box_beforenm(k, publicKey, secretKey);\n return k;\n};\n\nnacl.box.after = nacl.secretbox;\n\nnacl.box.open = function(msg, nonce, publicKey, secretKey) {\n var k = nacl.box.before(publicKey, secretKey);\n return nacl.secretbox.open(msg, nonce, k);\n};\n\nnacl.box.open.after = nacl.secretbox.open;\n\nnacl.box.keyPair = function() {\n var pk = new Uint8Array(crypto_box_PUBLICKEYBYTES);\n var sk = new Uint8Array(crypto_box_SECRETKEYBYTES);\n crypto_box_keypair(pk, sk);\n return {publicKey: pk, secretKey: sk};\n};\n\nnacl.box.keyPair.fromSecretKey = function(secretKey) {\n checkArrayTypes(secretKey);\n if (secretKey.length !== crypto_box_SECRETKEYBYTES)\n throw new Error('bad secret key size');\n var pk = new Uint8Array(crypto_box_PUBLICKEYBYTES);\n crypto_scalarmult_base(pk, secretKey);\n return {publicKey: pk, secretKey: new Uint8Array(secretKey)};\n};\n\nnacl.box.publicKeyLength = crypto_box_PUBLICKEYBYTES;\nnacl.box.secretKeyLength = crypto_box_SECRETKEYBYTES;\nnacl.box.sharedKeyLength = crypto_box_BEFORENMBYTES;\nnacl.box.nonceLength = crypto_box_NONCEBYTES;\nnacl.box.overheadLength = nacl.secretbox.overheadLength;\n\nnacl.sign = function(msg, secretKey) {\n checkArrayTypes(msg, secretKey);\n if (secretKey.length !== crypto_sign_SECRETKEYBYTES)\n throw new Error('bad secret key size');\n var signedMsg = new Uint8Array(crypto_sign_BYTES+msg.length);\n crypto_sign(signedMsg, msg, msg.length, secretKey);\n return signedMsg;\n};\n\nnacl.sign.open = function(signedMsg, publicKey) {\n checkArrayTypes(signedMsg, publicKey);\n if (publicKey.length !== crypto_sign_PUBLICKEYBYTES)\n throw new Error('bad public key size');\n var tmp = new Uint8Array(signedMsg.length);\n var mlen = crypto_sign_open(tmp, signedMsg, signedMsg.length, publicKey);\n if (mlen < 0) return null;\n var m = new Uint8Array(mlen);\n for (var i = 0; i < m.length; i++) m[i] = tmp[i];\n return m;\n};\n\nnacl.sign.detached = function(msg, secretKey) {\n var signedMsg = nacl.sign(msg, secretKey);\n var sig = new Uint8Array(crypto_sign_BYTES);\n for (var i = 0; i < sig.length; i++) sig[i] = signedMsg[i];\n return sig;\n};\n\nnacl.sign.detached.verify = function(msg, sig, publicKey) {\n checkArrayTypes(msg, sig, publicKey);\n if (sig.length !== crypto_sign_BYTES)\n throw new Error('bad signature size');\n if (publicKey.length !== crypto_sign_PUBLICKEYBYTES)\n throw new Error('bad public key size');\n var sm = new Uint8Array(crypto_sign_BYTES + msg.length);\n var m = new Uint8Array(crypto_sign_BYTES + msg.length);\n var i;\n for (i = 0; i < crypto_sign_BYTES; i++) sm[i] = sig[i];\n for (i = 0; i < msg.length; i++) sm[i+crypto_sign_BYTES] = msg[i];\n return (crypto_sign_open(m, sm, sm.length, publicKey) >= 0);\n};\n\nnacl.sign.keyPair = function() {\n var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);\n var sk = new Uint8Array(crypto_sign_SECRETKEYBYTES);\n crypto_sign_keypair(pk, sk);\n return {publicKey: pk, secretKey: sk};\n};\n\nnacl.sign.keyPair.fromSecretKey = function(secretKey) {\n checkArrayTypes(secretKey);\n if (secretKey.length !== crypto_sign_SECRETKEYBYTES)\n throw new Error('bad secret key size');\n var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);\n for (var i = 0; i < pk.length; i++) pk[i] = secretKey[32+i];\n return {publicKey: pk, secretKey: new Uint8Array(secretKey)};\n};\n\nnacl.sign.keyPair.fromSeed = function(seed) {\n checkArrayTypes(seed);\n if (seed.length !== crypto_sign_SEEDBYTES)\n throw new Error('bad seed size');\n var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);\n var sk = new Uint8Array(crypto_sign_SECRETKEYBYTES);\n for (var i = 0; i < 32; i++) sk[i] = seed[i];\n crypto_sign_keypair(pk, sk, true);\n return {publicKey: pk, secretKey: sk};\n};\n\nnacl.sign.publicKeyLength = crypto_sign_PUBLICKEYBYTES;\nnacl.sign.secretKeyLength = crypto_sign_SECRETKEYBYTES;\nnacl.sign.seedLength = crypto_sign_SEEDBYTES;\nnacl.sign.signatureLength = crypto_sign_BYTES;\n\nnacl.hash = function(msg) {\n checkArrayTypes(msg);\n var h = new Uint8Array(crypto_hash_BYTES);\n crypto_hash(h, msg, msg.length);\n return h;\n};\n\nnacl.hash.hashLength = crypto_hash_BYTES;\n\nnacl.verify = function(x, y) {\n checkArrayTypes(x, y);\n // Zero length arguments are considered not equal.\n if (x.length === 0 || y.length === 0) return false;\n if (x.length !== y.length) return false;\n return (vn(x, 0, y, 0, x.length) === 0) ? true : false;\n};\n\nnacl.setPRNG = function(fn) {\n randombytes = fn;\n};\n\n(function() {\n // Initialize PRNG if environment provides CSPRNG.\n // If not, methods calling randombytes will throw.\n var crypto = typeof self !== 'undefined' ? (self.crypto || self.msCrypto) : null;\n if (crypto && crypto.getRandomValues) {\n // Browsers.\n var QUOTA = 65536;\n nacl.setPRNG(function(x, n) {\n var i, v = new Uint8Array(n);\n for (i = 0; i < n; i += QUOTA) {\n crypto.getRandomValues(v.subarray(i, i + Math.min(n - i, QUOTA)));\n }\n for (i = 0; i < n; i++) x[i] = v[i];\n cleanup(v);\n });\n } else if (typeof require !== 'undefined') {\n // Node.js.\n crypto = require('crypto');\n if (crypto && crypto.randomBytes) {\n nacl.setPRNG(function(x, n) {\n var i, v = crypto.randomBytes(n);\n for (i = 0; i < n; i++) x[i] = v[i];\n cleanup(v);\n });\n }\n }\n})();\n\n})(typeof module !== 'undefined' && module.exports ? module.exports : (self.nacl = self.nacl || {}));\n","import * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @typedef {import(\"./hmac.js\").HashAlgorithm} HashAlgorithm\n */\n\n/**\n * @param {HashAlgorithm} algorithm\n * @param {Uint8Array | string} password\n * @param {Uint8Array | string} salt\n * @param {number} iterations\n * @param {number} length\n * @returns {Promise}\n */\nexport async function deriveKey(algorithm, password, salt, iterations, length) {\n const pass =\n typeof password === \"string\"\n ? // Valid ASCII is also valid UTF-8 so encoding the password as UTF-8\n // should be fine if only valid ASCII characters are used in the password\n utf8.encode(password)\n : password;\n\n const nacl = typeof salt === \"string\" ? utf8.encode(salt) : salt;\n\n try {\n const key = await window.crypto.subtle.importKey(\n \"raw\",\n pass,\n {\n name: \"PBKDF2\",\n hash: algorithm,\n },\n false,\n [\"deriveBits\"]\n );\n\n return new Uint8Array(\n await window.crypto.subtle.deriveBits(\n {\n name: \"PBKDF2\",\n hash: algorithm,\n salt: nacl,\n iterations,\n },\n key,\n length << 3\n )\n );\n } catch {\n throw new Error(\"(BUG) Non-Exhaustive switch statement for algorithms\");\n }\n}\n","'use strict';\n\nvar BN = require('bn.js');\nvar utils = require('../utils');\nvar getNAF = utils.getNAF;\nvar getJSF = utils.getJSF;\nvar assert = utils.assert;\n\nfunction BaseCurve(type, conf) {\n this.type = type;\n this.p = new BN(conf.p, 16);\n\n // Use Montgomery, when there is no fast reduction for the prime\n this.red = conf.prime ? BN.red(conf.prime) : BN.mont(this.p);\n\n // Useful for many curves\n this.zero = new BN(0).toRed(this.red);\n this.one = new BN(1).toRed(this.red);\n this.two = new BN(2).toRed(this.red);\n\n // Curve configuration, optional\n this.n = conf.n && new BN(conf.n, 16);\n this.g = conf.g && this.pointFromJSON(conf.g, conf.gRed);\n\n // Temporary arrays\n this._wnafT1 = new Array(4);\n this._wnafT2 = new Array(4);\n this._wnafT3 = new Array(4);\n this._wnafT4 = new Array(4);\n\n this._bitLength = this.n ? this.n.bitLength() : 0;\n\n // Generalized Greg Maxwell's trick\n var adjustCount = this.n && this.p.div(this.n);\n if (!adjustCount || adjustCount.cmpn(100) > 0) {\n this.redN = null;\n } else {\n this._maxwellTrick = true;\n this.redN = this.n.toRed(this.red);\n }\n}\nmodule.exports = BaseCurve;\n\nBaseCurve.prototype.point = function point() {\n throw new Error('Not implemented');\n};\n\nBaseCurve.prototype.validate = function validate() {\n throw new Error('Not implemented');\n};\n\nBaseCurve.prototype._fixedNafMul = function _fixedNafMul(p, k) {\n assert(p.precomputed);\n var doubles = p._getDoubles();\n\n var naf = getNAF(k, 1, this._bitLength);\n var I = (1 << (doubles.step + 1)) - (doubles.step % 2 === 0 ? 2 : 1);\n I /= 3;\n\n // Translate into more windowed form\n var repr = [];\n var j;\n var nafW;\n for (j = 0; j < naf.length; j += doubles.step) {\n nafW = 0;\n for (var l = j + doubles.step - 1; l >= j; l--)\n nafW = (nafW << 1) + naf[l];\n repr.push(nafW);\n }\n\n var a = this.jpoint(null, null, null);\n var b = this.jpoint(null, null, null);\n for (var i = I; i > 0; i--) {\n for (j = 0; j < repr.length; j++) {\n nafW = repr[j];\n if (nafW === i)\n b = b.mixedAdd(doubles.points[j]);\n else if (nafW === -i)\n b = b.mixedAdd(doubles.points[j].neg());\n }\n a = a.add(b);\n }\n return a.toP();\n};\n\nBaseCurve.prototype._wnafMul = function _wnafMul(p, k) {\n var w = 4;\n\n // Precompute window\n var nafPoints = p._getNAFPoints(w);\n w = nafPoints.wnd;\n var wnd = nafPoints.points;\n\n // Get NAF form\n var naf = getNAF(k, w, this._bitLength);\n\n // Add `this`*(N+1) for every w-NAF index\n var acc = this.jpoint(null, null, null);\n for (var i = naf.length - 1; i >= 0; i--) {\n // Count zeroes\n for (var l = 0; i >= 0 && naf[i] === 0; i--)\n l++;\n if (i >= 0)\n l++;\n acc = acc.dblp(l);\n\n if (i < 0)\n break;\n var z = naf[i];\n assert(z !== 0);\n if (p.type === 'affine') {\n // J +- P\n if (z > 0)\n acc = acc.mixedAdd(wnd[(z - 1) >> 1]);\n else\n acc = acc.mixedAdd(wnd[(-z - 1) >> 1].neg());\n } else {\n // J +- J\n if (z > 0)\n acc = acc.add(wnd[(z - 1) >> 1]);\n else\n acc = acc.add(wnd[(-z - 1) >> 1].neg());\n }\n }\n return p.type === 'affine' ? acc.toP() : acc;\n};\n\nBaseCurve.prototype._wnafMulAdd = function _wnafMulAdd(defW,\n points,\n coeffs,\n len,\n jacobianResult) {\n var wndWidth = this._wnafT1;\n var wnd = this._wnafT2;\n var naf = this._wnafT3;\n\n // Fill all arrays\n var max = 0;\n var i;\n var j;\n var p;\n for (i = 0; i < len; i++) {\n p = points[i];\n var nafPoints = p._getNAFPoints(defW);\n wndWidth[i] = nafPoints.wnd;\n wnd[i] = nafPoints.points;\n }\n\n // Comb small window NAFs\n for (i = len - 1; i >= 1; i -= 2) {\n var a = i - 1;\n var b = i;\n if (wndWidth[a] !== 1 || wndWidth[b] !== 1) {\n naf[a] = getNAF(coeffs[a], wndWidth[a], this._bitLength);\n naf[b] = getNAF(coeffs[b], wndWidth[b], this._bitLength);\n max = Math.max(naf[a].length, max);\n max = Math.max(naf[b].length, max);\n continue;\n }\n\n var comb = [\n points[a], /* 1 */\n null, /* 3 */\n null, /* 5 */\n points[b], /* 7 */\n ];\n\n // Try to avoid Projective points, if possible\n if (points[a].y.cmp(points[b].y) === 0) {\n comb[1] = points[a].add(points[b]);\n comb[2] = points[a].toJ().mixedAdd(points[b].neg());\n } else if (points[a].y.cmp(points[b].y.redNeg()) === 0) {\n comb[1] = points[a].toJ().mixedAdd(points[b]);\n comb[2] = points[a].add(points[b].neg());\n } else {\n comb[1] = points[a].toJ().mixedAdd(points[b]);\n comb[2] = points[a].toJ().mixedAdd(points[b].neg());\n }\n\n var index = [\n -3, /* -1 -1 */\n -1, /* -1 0 */\n -5, /* -1 1 */\n -7, /* 0 -1 */\n 0, /* 0 0 */\n 7, /* 0 1 */\n 5, /* 1 -1 */\n 1, /* 1 0 */\n 3, /* 1 1 */\n ];\n\n var jsf = getJSF(coeffs[a], coeffs[b]);\n max = Math.max(jsf[0].length, max);\n naf[a] = new Array(max);\n naf[b] = new Array(max);\n for (j = 0; j < max; j++) {\n var ja = jsf[0][j] | 0;\n var jb = jsf[1][j] | 0;\n\n naf[a][j] = index[(ja + 1) * 3 + (jb + 1)];\n naf[b][j] = 0;\n wnd[a] = comb;\n }\n }\n\n var acc = this.jpoint(null, null, null);\n var tmp = this._wnafT4;\n for (i = max; i >= 0; i--) {\n var k = 0;\n\n while (i >= 0) {\n var zero = true;\n for (j = 0; j < len; j++) {\n tmp[j] = naf[j][i] | 0;\n if (tmp[j] !== 0)\n zero = false;\n }\n if (!zero)\n break;\n k++;\n i--;\n }\n if (i >= 0)\n k++;\n acc = acc.dblp(k);\n if (i < 0)\n break;\n\n for (j = 0; j < len; j++) {\n var z = tmp[j];\n p;\n if (z === 0)\n continue;\n else if (z > 0)\n p = wnd[j][(z - 1) >> 1];\n else if (z < 0)\n p = wnd[j][(-z - 1) >> 1].neg();\n\n if (p.type === 'affine')\n acc = acc.mixedAdd(p);\n else\n acc = acc.add(p);\n }\n }\n // Zeroify references\n for (i = 0; i < len; i++)\n wnd[i] = null;\n\n if (jacobianResult)\n return acc;\n else\n return acc.toP();\n};\n\nfunction BasePoint(curve, type) {\n this.curve = curve;\n this.type = type;\n this.precomputed = null;\n}\nBaseCurve.BasePoint = BasePoint;\n\nBasePoint.prototype.eq = function eq(/*other*/) {\n throw new Error('Not implemented');\n};\n\nBasePoint.prototype.validate = function validate() {\n return this.curve.validate(this);\n};\n\nBaseCurve.prototype.decodePoint = function decodePoint(bytes, enc) {\n bytes = utils.toArray(bytes, enc);\n\n var len = this.p.byteLength();\n\n // uncompressed, hybrid-odd, hybrid-even\n if ((bytes[0] === 0x04 || bytes[0] === 0x06 || bytes[0] === 0x07) &&\n bytes.length - 1 === 2 * len) {\n if (bytes[0] === 0x06)\n assert(bytes[bytes.length - 1] % 2 === 0);\n else if (bytes[0] === 0x07)\n assert(bytes[bytes.length - 1] % 2 === 1);\n\n var res = this.point(bytes.slice(1, 1 + len),\n bytes.slice(1 + len, 1 + 2 * len));\n\n return res;\n } else if ((bytes[0] === 0x02 || bytes[0] === 0x03) &&\n bytes.length - 1 === len) {\n return this.pointFromX(bytes.slice(1, 1 + len), bytes[0] === 0x03);\n }\n throw new Error('Unknown point format');\n};\n\nBasePoint.prototype.encodeCompressed = function encodeCompressed(enc) {\n return this.encode(enc, true);\n};\n\nBasePoint.prototype._encode = function _encode(compact) {\n var len = this.curve.p.byteLength();\n var x = this.getX().toArray('be', len);\n\n if (compact)\n return [ this.getY().isEven() ? 0x02 : 0x03 ].concat(x);\n\n return [ 0x04 ].concat(x, this.getY().toArray('be', len));\n};\n\nBasePoint.prototype.encode = function encode(enc, compact) {\n return utils.encode(this._encode(compact), enc);\n};\n\nBasePoint.prototype.precompute = function precompute(power) {\n if (this.precomputed)\n return this;\n\n var precomputed = {\n doubles: null,\n naf: null,\n beta: null,\n };\n precomputed.naf = this._getNAFPoints(8);\n precomputed.doubles = this._getDoubles(4, power);\n precomputed.beta = this._getBeta();\n this.precomputed = precomputed;\n\n return this;\n};\n\nBasePoint.prototype._hasDoubles = function _hasDoubles(k) {\n if (!this.precomputed)\n return false;\n\n var doubles = this.precomputed.doubles;\n if (!doubles)\n return false;\n\n return doubles.points.length >= Math.ceil((k.bitLength() + 1) / doubles.step);\n};\n\nBasePoint.prototype._getDoubles = function _getDoubles(step, power) {\n if (this.precomputed && this.precomputed.doubles)\n return this.precomputed.doubles;\n\n var doubles = [ this ];\n var acc = this;\n for (var i = 0; i < power; i += step) {\n for (var j = 0; j < step; j++)\n acc = acc.dbl();\n doubles.push(acc);\n }\n return {\n step: step,\n points: doubles,\n };\n};\n\nBasePoint.prototype._getNAFPoints = function _getNAFPoints(wnd) {\n if (this.precomputed && this.precomputed.naf)\n return this.precomputed.naf;\n\n var res = [ this ];\n var max = (1 << wnd) - 1;\n var dbl = max === 1 ? null : this.dbl();\n for (var i = 1; i < max; i++)\n res[i] = res[i - 1].add(dbl);\n return {\n wnd: wnd,\n points: res,\n };\n};\n\nBasePoint.prototype._getBeta = function _getBeta() {\n return null;\n};\n\nBasePoint.prototype.dblp = function dblp(k) {\n var r = this;\n for (var i = 0; i < k; i++)\n r = r.dbl();\n return r;\n};\n","var hash = exports;\n\nhash.utils = require('./hash/utils');\nhash.common = require('./hash/common');\nhash.sha = require('./hash/sha');\nhash.ripemd = require('./hash/ripemd');\nhash.hmac = require('./hash/hmac');\n\n// Proxy hash functions to the main object\nhash.sha1 = hash.sha.sha1;\nhash.sha256 = hash.sha.sha256;\nhash.sha224 = hash.sha.sha224;\nhash.sha384 = hash.sha.sha384;\nhash.sha512 = hash.sha.sha512;\nhash.ripemd160 = hash.ripemd.ripemd160;\n","import StatusError from \"./StatusError.js\";\n\n/**\n * @typedef {import(\"./Status.js\").default} Status\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"./transaction/TransactionReceipt.js\").default} TransactionReceipt\n */\n\nexport default class ReceiptStatusError extends StatusError {\n /**\n * @param {object} props\n * @param {TransactionReceipt} props.transactionReceipt\n * @param {Status} props.status\n * @param {TransactionId} props.transactionId\n */\n constructor(props) {\n super(\n props,\n `receipt for transaction ${props.transactionId.toString()} contained error status ${props.status.toString()}`\n );\n\n /**\n * @type {TransactionReceipt}\n * @readonly\n */\n this.transactionReceipt = props.transactionReceipt;\n }\n}\n","import BigNumber from \"bignumber.js\";\nimport Long from \"long\";\n\n/**\n * Utility Error Messages\n */\nexport const REQUIRE_NON_NULL_ERROR = \"This value cannot be null | undefined.\";\nexport const REQUIRE_STRING_ERROR = \"This value must be a string.\";\nexport const REQUIRE_UINT8ARRAY_ERROR = \"This value must be a Uint8Array.\";\nexport const REQUIRE_STRING_OR_UINT8ARRAY_ERROR =\n \"This value must be a string or Uint8Array.\";\nexport const REQUIRE_NUMBER_ERROR = \"This value must be a Number.\";\nexport const REQUIRE_BIGNUMBER_ERROR = \"This value must be a BigNumber.\";\nexport const REQUIRE_ARRAY_ERROR = \"The provided variable must be an Array.\";\nexport const REQUIRE_LONG_ERROR = \"This value must be a Long.\";\n\nexport const REQUIRE_TYPE_ERROR =\n \"The provided variables are not matching types.\";\n\nexport const FUNCTION_CONVERT_TO_BIGNUMBER_ERROR =\n \"This value must be a String, Number, or BigNumber to be converted.\";\nexport const FUNCTION_CONVERT_TO_NUMBER_ERROR =\n \"This value must be a String, Number, or BigNumber to be converted.\";\nexport const FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR =\n \"Unable to parse given variable. Returns NaN.\";\n\n//Soft Checks\n\n/**\n * Takes any param and returns false if null or undefined.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isNonNull(variable) {\n if (variable == null || variable == undefined) {\n return false;\n } else {\n return true;\n }\n}\n\n/**\n * Takes any param and returns true if param variable and type are the same.\n *\n * @param {any | null | undefined} variable\n * @param {any | null | undefined} type\n * @returns {boolean}\n */\nexport function isType(variable, type) {\n return typeof variable == typeof type;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isUint8Array(variable) {\n return isNonNull(variable) && variable instanceof Uint8Array;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type Number.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isNumber(variable) {\n return (\n isNonNull(variable) &&\n (typeof variable == \"number\" || variable instanceof Number)\n );\n}\n\n/**\n * Takes any param and returns true if param is not null and of type BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isBigNumber(variable) {\n return isNonNull(variable) && variable instanceof BigNumber;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isLong(variable) {\n return isNonNull(variable) && variable instanceof Long;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type string.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isString(variable) {\n return isNonNull(variable) && typeof variable == \"string\";\n}\n\n/**\n * Takes any param and returns true if param is not null and type string or Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isStringOrUint8Array(variable) {\n return (\n isNonNull(variable) && (isString(variable) || isUint8Array(variable))\n );\n}\n\n//Requires\n\n/**\n * Takes any param and throws custom error if null or undefined.\n *\n * @param {any} variable\n * @returns {object}\n */\nexport function requireNonNull(variable) {\n if (!isNonNull(variable)) {\n throw new Error(REQUIRE_NON_NULL_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return variable;\n }\n}\n\n/**\n * Takes any param and throws custom error if params are not same type.\n *\n * @param {any | null | undefined} variable\n * @param {any | null | undefined} type\n * @returns {object}\n */\nexport function requireType(variable, type) {\n if (!isType(variable, type)) {\n throw new Error(REQUIRE_TYPE_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return variable;\n }\n}\n\n/**\n * Takes any param and throws custom error if non BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {BigNumber}\n */\nexport function requireBigNumber(variable) {\n if (!isBigNumber(requireNonNull(variable))) {\n throw new Error(REQUIRE_BIGNUMBER_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {BigNumber} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {Long}\n */\nexport function requireLong(variable) {\n if (!isLong(requireNonNull(variable))) {\n throw new Error(REQUIRE_LONG_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {Long} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non string.\n *\n * @param {any | null | undefined} variable\n * @returns {string}\n */\nexport function requireString(variable) {\n if (!isString(requireNonNull(variable))) {\n throw new Error(REQUIRE_STRING_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {string} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {Uint8Array}\n */\nexport function requireUint8Array(variable) {\n if (!isUint8Array(requireNonNull(variable))) {\n throw new Error(REQUIRE_UINT8ARRAY_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {Uint8Array} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {number}\n */\nexport function requireNumber(variable) {\n if (!isNumber(requireNonNull(variable))) {\n throw new Error(REQUIRE_NUMBER_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {number} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if null or undefined and not a string or Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {string | Uint8Array}\n */\nexport function requireStringOrUint8Array(variable) {\n if (isStringOrUint8Array(requireNonNull(variable))) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {string | Uint8Array} */ (variable);\n } else {\n throw new Error(REQUIRE_STRING_OR_UINT8ARRAY_ERROR);\n }\n}\n\n//Conversions\n\n/**\n * Converts number or string to BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {BigNumber}\n */\nexport function convertToBigNumber(variable) {\n requireNonNull(variable);\n if (\n isBigNumber(variable) ||\n isString(variable) ||\n isNumber(variable) ||\n isLong(variable)\n ) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n return new BigNumber(variable);\n }\n throw new Error(FUNCTION_CONVERT_TO_BIGNUMBER_ERROR);\n}\n\n/**\n * Converts Array of Numbers or Strings to Array of BigNumbers.\n *\n * @param {any | null | undefined} variable\n * @returns {Array}\n */\nexport function convertToBigNumberArray(variable) {\n if (variable instanceof Array) {\n return /** @type {Array} */ (\n variable.map(convertToBigNumber)\n );\n } else {\n throw new Error(REQUIRE_ARRAY_ERROR);\n }\n}\n\n/**\n * @param {*} variable\n * @returns {number}\n */\nexport function convertToNumber(variable) {\n requireNonNull(variable);\n if (\n isBigNumber(variable) ||\n isString(variable) ||\n isNumber(variable) ||\n isLong(variable)\n ) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n const num = parseInt(variable);\n if (isNaN(num)) {\n throw new Error(FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR);\n } else {\n return num;\n }\n } else {\n throw new Error(FUNCTION_CONVERT_TO_NUMBER_ERROR);\n }\n}\n\n/**\n * Creates a DataView on top of an Uint8Array that could be or not be pooled, ensuring that we don't get out of bounds.\n *\n * @param {Uint8Array} arr\n * @param {number | undefined} offset\n * @param {number | undefined} length\n * @returns {DataView}\n */\nexport function safeView(arr, offset = 0, length = arr.byteLength) {\n if (!(Number.isInteger(offset) && offset >= 0))\n throw new Error(\"Invalid offset!\");\n if (!(Number.isInteger(length) && length >= 0))\n throw new Error(\"Invalid length!\");\n return new DataView(\n arr.buffer,\n arr.byteOffset + offset,\n Math.min(length, arr.byteLength - offset)\n );\n}\n","import AccountId from \"../account/AccountId.js\";\nimport ContractId from \"../contract/ContractId.js\";\nimport FileId from \"../file/FileId.js\";\nimport TopicId from \"../topic/TopicId.js\";\nimport TokenId from \"../token/TokenId.js\";\nimport ScheduleId from \"../schedule/ScheduleId.js\";\nimport ExchangeRate from \"../ExchangeRate.js\";\nimport Status from \"../Status.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport TransactionId from \"../transaction/TransactionId.js\";\n\n/**\n * The consensus result for a transaction, which might not be currently known,\n * or may succeed or fail.\n */\nexport default class TransactionReceipt {\n /**\n * @private\n * @param {object} props\n * @param {Status} props.status\n * @param {?AccountId} props.accountId\n * @param {?FileId} props.fileId\n * @param {?ContractId} props.contractId\n * @param {?TopicId} props.topicId\n * @param {?TokenId} props.tokenId\n * @param {?ScheduleId} props.scheduleId\n * @param {?ExchangeRate} props.exchangeRate\n * @param {?Long} props.topicSequenceNumber\n * @param {?Uint8Array} props.topicRunningHash\n * @param {?Long} props.totalSupply\n * @param {?TransactionId} props.scheduledTransactionId\n * @param {Long[]} props.serials\n * @param {TransactionReceipt[]} props.duplicates\n * @param {TransactionReceipt[]} props.children\n */\n constructor(props) {\n /**\n * Whether the transaction succeeded or failed (or is unknown).\n *\n * @readonly\n */\n this.status = props.status;\n\n /**\n * The account ID, if a new account was created.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * The file ID, if a new file was created.\n *\n * @readonly\n */\n this.fileId = props.fileId;\n\n /**\n * The contract ID, if a new contract was created.\n *\n * @readonly\n */\n this.contractId = props.contractId;\n\n /**\n * The topic ID, if a new topic was created.\n *\n * @readonly\n */\n this.topicId = props.topicId;\n\n /**\n * The token ID, if a new token was created.\n *\n * @readonly\n */\n this.tokenId = props.tokenId;\n\n /**\n * The schedule ID, if a new schedule was created.\n *\n * @readonly\n */\n this.scheduleId = props.scheduleId;\n\n /**\n * The exchange rate of Hbars to cents (USD).\n *\n * @readonly\n */\n this.exchangeRate = props.exchangeRate;\n\n /**\n * Updated sequence number for a consensus service topic.\n *\n * @readonly\n */\n this.topicSequenceNumber = props.topicSequenceNumber;\n\n /**\n * Updated running hash for a consensus service topic.\n *\n * @readonly\n */\n this.topicRunningHash = props.topicRunningHash;\n\n /**\n * Updated total supply for a token\n *\n * @readonly\n */\n this.totalSupply = props.totalSupply;\n\n this.scheduledTransactionId = props.scheduledTransactionId;\n\n this.serials = props.serials;\n\n /**\n * @readonly\n */\n this.duplicates = props.duplicates;\n\n /**\n * @readonly\n */\n this.children = props.children;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @returns {proto.ITransactionGetReceiptResponse}\n */\n _toProtobuf() {\n const duplicates = this.duplicates.map(\n (receipt) =>\n /** @type {proto.ITransactionReceipt} */ (\n receipt._toProtobuf().receipt\n )\n );\n const children = this.children.map(\n (receipt) =>\n /** @type {proto.ITransactionReceipt} */ (\n receipt._toProtobuf().receipt\n )\n );\n\n return {\n duplicateTransactionReceipts: duplicates,\n childTransactionReceipts: children,\n receipt: {\n status: this.status.valueOf(),\n\n accountID:\n this.accountId != null\n ? this.accountId._toProtobuf()\n : null,\n fileID: this.fileId != null ? this.fileId._toProtobuf() : null,\n contractID:\n this.contractId != null\n ? this.contractId._toProtobuf()\n : null,\n topicID:\n this.topicId != null ? this.topicId._toProtobuf() : null,\n tokenID:\n this.tokenId != null ? this.tokenId._toProtobuf() : null,\n scheduleID:\n this.scheduleId != null\n ? this.scheduleId._toProtobuf()\n : null,\n\n topicRunningHash:\n this.topicRunningHash == null\n ? null\n : this.topicRunningHash,\n\n topicSequenceNumber: this.topicSequenceNumber,\n\n exchangeRate: {\n nextRate: null,\n currentRate:\n this.exchangeRate != null\n ? this.exchangeRate._toProtobuf()\n : null,\n },\n\n scheduledTransactionID:\n this.scheduledTransactionId != null\n ? this.scheduledTransactionId._toProtobuf()\n : null,\n\n serialNumbers: this.serials,\n newTotalSupply: this.totalSupply,\n },\n };\n }\n\n /**\n * @internal\n * @param {proto.ITransactionGetReceiptResponse} response\n * @returns {TransactionReceipt}\n */\n static _fromProtobuf(response) {\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n response.receipt\n );\n\n const exchangeRateSet = /** @type {proto.IExchangeRateSet} */ (\n receipt.exchangeRate\n );\n\n const children =\n response.childTransactionReceipts != null\n ? response.childTransactionReceipts.map((child) =>\n TransactionReceipt._fromProtobuf({ receipt: child })\n )\n : [];\n\n const duplicates =\n response.duplicateTransactionReceipts != null\n ? response.duplicateTransactionReceipts.map((duplicate) =>\n TransactionReceipt._fromProtobuf({ receipt: duplicate })\n )\n : [];\n\n return new TransactionReceipt({\n status: Status._fromCode(\n receipt.status != null ? receipt.status : 0\n ),\n\n accountId:\n receipt.accountID != null\n ? AccountId._fromProtobuf(receipt.accountID)\n : null,\n\n fileId:\n receipt.fileID != null\n ? FileId._fromProtobuf(receipt.fileID)\n : null,\n\n contractId:\n receipt.contractID != null\n ? ContractId._fromProtobuf(receipt.contractID)\n : null,\n\n topicId:\n receipt.topicID != null\n ? TopicId._fromProtobuf(receipt.topicID)\n : null,\n\n tokenId:\n receipt.tokenID != null\n ? TokenId._fromProtobuf(receipt.tokenID)\n : null,\n\n scheduleId:\n receipt.scheduleID != null\n ? ScheduleId._fromProtobuf(receipt.scheduleID)\n : null,\n\n exchangeRate:\n receipt.exchangeRate != null\n ? ExchangeRate._fromProtobuf(\n /** @type {proto.IExchangeRate} */\n (exchangeRateSet.currentRate)\n )\n : null,\n\n topicSequenceNumber:\n receipt.topicSequenceNumber == null\n ? null\n : Long.fromValue(receipt.topicSequenceNumber),\n\n topicRunningHash:\n receipt.topicRunningHash != null\n ? receipt.topicRunningHash\n : null,\n\n totalSupply:\n receipt.newTotalSupply != null ? receipt.newTotalSupply : null,\n\n scheduledTransactionId:\n receipt.scheduledTransactionID != null\n ? TransactionId._fromProtobuf(\n receipt.scheduledTransactionID\n )\n : null,\n serials: receipt.serialNumbers != null ? receipt.serialNumbers : [],\n children,\n duplicates,\n });\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TransactionReceipt}\n */\n static fromBytes(bytes) {\n return TransactionReceipt._fromProtobuf(\n proto.TransactionGetReceiptResponse.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TransactionGetReceiptResponse.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import AccountId from \"./AccountId.js\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ICryptoAllowance} proto.ICryptoAllowance\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"long\")} Long\n */\n\nexport default class HbarAllowance {\n /**\n * @internal\n * @param {object} props\n * @param {AccountId} props.spenderAccountId\n * @param {AccountId | null} props.ownerAccountId\n * @param {Hbar} props.amount\n */\n constructor(props) {\n /**\n * The account ID of the hbar allowance spender.\n *\n * @readonly\n */\n this.spenderAccountId = props.spenderAccountId;\n\n /**\n * The account ID of the hbar allowance owner.\n *\n * @readonly\n */\n this.ownerAccountId = props.ownerAccountId;\n\n /**\n * The current balance of the spender's allowance in tinybars.\n *\n * @readonly\n */\n this.amount = props.amount;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ICryptoAllowance} approval\n * @returns {HbarAllowance}\n */\n static _fromProtobuf(approval) {\n return new HbarAllowance({\n spenderAccountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (approval.spender)\n ),\n ownerAccountId:\n approval.owner != null\n ? AccountId._fromProtobuf(\n /**@type {proto.IAccountID}*/ (approval.owner)\n )\n : null,\n amount: Hbar.fromTinybars(\n approval.amount != null ? approval.amount : 0\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.ICryptoAllowance}\n */\n _toProtobuf() {\n return {\n spender: this.spenderAccountId._toProtobuf(),\n owner:\n this.ownerAccountId != null\n ? this.ownerAccountId._toProtobuf()\n : null,\n amount: this.amount.toTinybars(),\n };\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport AccountId from \"./AccountId.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenAllowance} proto.ITokenAllowance\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\nexport default class TokenAllowance {\n /**\n * @internal\n * @param {object} props\n * @param {TokenId} props.tokenId\n * @param {AccountId} props.spenderAccountId\n * @param {AccountId | null} props.ownerAccountId\n * @param {Long | null} props.amount\n */\n constructor(props) {\n /**\n * The token that the allowance pertains to.\n *\n * @readonly\n */\n this.tokenId = props.tokenId;\n\n /**\n * The account ID of the spender of the hbar allowance.\n *\n * @readonly\n */\n this.spenderAccountId = props.spenderAccountId;\n\n /**\n * The account ID of the owner of the hbar allowance.\n *\n * @readonly\n */\n this.ownerAccountId = props.ownerAccountId;\n\n /**\n * The current balance of the spender's token allowance.\n * **NOTE**: If `null`, the spender has access to all of the account owner's NFT instances\n * (currently owned and any in the future).\n *\n * @readonly\n */\n this.amount = props.amount;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ITokenAllowance} allowance\n * @returns {TokenAllowance}\n */\n static _fromProtobuf(allowance) {\n return new TokenAllowance({\n tokenId: TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (allowance.tokenId)\n ),\n spenderAccountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (allowance.spender)\n ),\n ownerAccountId:\n allowance.owner != null\n ? AccountId._fromProtobuf(\n /**@type {proto.IAccountID}*/ (allowance.owner)\n )\n : null,\n amount:\n allowance.amount != null\n ? Long.fromValue(/** @type {Long} */ (allowance.amount))\n : null,\n });\n }\n\n /**\n * @internal\n * @returns {proto.ITokenAllowance}\n */\n _toProtobuf() {\n return {\n tokenId: this.tokenId._toProtobuf(),\n spender: this.spenderAccountId._toProtobuf(),\n owner:\n this.ownerAccountId != null\n ? this.ownerAccountId._toProtobuf()\n : null,\n amount: this.amount,\n };\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport AccountId from \"./AccountId.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").INftAllowance} proto.INftAllowance\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\nexport default class TokenNftAllowance {\n /**\n * @internal\n * @param {object} props\n * @param {TokenId} props.tokenId\n * @param {AccountId} props.spenderAccountId\n * @param {AccountId | null} props.ownerAccountId\n * @param {Long[] | null} props.serialNumbers\n */\n constructor(props) {\n /**\n * The token that the allowance pertains to.\n *\n * @readonly\n */\n this.tokenId = props.tokenId;\n\n /**\n * The account ID of the spender of the hbar allowance.\n *\n * @readonly\n */\n this.spenderAccountId = props.spenderAccountId;\n\n /**\n * The account ID of the owner of the hbar allowance.\n *\n * @readonly\n */\n this.ownerAccountId = props.ownerAccountId;\n\n /**\n * The current balance of the spender's token allowance.\n * **NOTE**: If `null`, the spender has access to all of the account owner's NFT instances\n * (currently owned and any in the future).\n *\n * @readonly\n */\n this.serialNumbers = props.serialNumbers;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.INftAllowance} allowance\n * @returns {TokenNftAllowance}\n */\n static _fromProtobuf(allowance) {\n return new TokenNftAllowance({\n tokenId: TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (allowance.tokenId)\n ),\n spenderAccountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (allowance.spender)\n ),\n ownerAccountId:\n allowance.owner != null\n ? AccountId._fromProtobuf(\n /**@type {proto.IAccountID}*/ (allowance.owner)\n )\n : null,\n serialNumbers:\n allowance.approvedForAll != null &&\n allowance.approvedForAll.value\n ? null\n : allowance.serialNumbers != null\n ? allowance.serialNumbers.map((serialNumber) =>\n Long.fromValue(serialNumber)\n )\n : [],\n });\n }\n\n /**\n * @internal\n * @returns {proto.INftAllowance}\n */\n _toProtobuf() {\n return {\n tokenId: this.tokenId._toProtobuf(),\n spender: this.spenderAccountId._toProtobuf(),\n owner:\n this.ownerAccountId != null\n ? this.ownerAccountId._toProtobuf()\n : null,\n approvedForAll: this.serialNumbers == null ? { value: true } : null,\n serialNumbers: this.serialNumbers,\n };\n }\n}\n","import ContractFunctionSelector, {\n ArgumentType,\n} from \"./ContractFunctionSelector.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport BigNumber from \"bignumber.js\";\nimport * as util from \"../util.js\";\n\nexport default class ContractFunctionParameters {\n constructor() {\n /**\n * @type {ContractFunctionSelector}\n */\n this._selector = new ContractFunctionSelector();\n\n /**\n * @type {import(\"./ContractFunctionSelector.js\").Argument[]}\n */\n this._arguments = [];\n }\n\n /**\n * @param {string} value\n * @returns {ContractFunctionParameters}\n */\n addString(value) {\n this._selector.addString();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {string[]} value\n * @returns {ContractFunctionParameters}\n */\n addStringArray(value) {\n this._selector.addStringArray();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {Uint8Array} value\n * @returns {ContractFunctionParameters}\n */\n addBytes(value) {\n this._selector.addBytes();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {Uint8Array} value\n * @returns {ContractFunctionParameters}\n */\n addBytes32(value) {\n if (value.length !== 32) {\n throw new Error(\n `addBytes32 expected array to be of length 32, but received ${value.length}`\n );\n }\n\n this._selector.addBytes32();\n return this._addParam(value, false);\n }\n\n /**\n * @param {Uint8Array[]} value\n * @returns {ContractFunctionParameters}\n */\n addBytesArray(value) {\n this._selector.addBytesArray();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {Uint8Array[]} value\n * @returns {ContractFunctionParameters}\n */\n addBytes32Array(value) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, entry] of value.entries()) {\n if (entry.length !== 32) {\n throw new Error(\n `addBytes32 expected array to be of length 32, but received ${entry.length}`\n );\n }\n }\n\n this._selector.addBytes32Array();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {boolean} value\n * @returns {ContractFunctionParameters}\n */\n addBool(value) {\n this._selector.addBool();\n\n return this._addParam(value, false);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addInt8(value) {\n this._selector.addInt8();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addInt32(value) {\n this._selector.addInt32();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber} value\n * @returns {ContractFunctionParameters}\n */\n addInt64(value) {\n this._selector.addInt64();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber} value\n * @returns {ContractFunctionParameters}\n */\n addInt256(value) {\n this._selector.addInt256();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt8Array(value) {\n this._selector.addInt8Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt32Array(value) {\n this._selector.addInt32Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt64Array(value) {\n this._selector.addInt64Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt256Array(value) {\n this._selector.addInt256Array();\n console.log(\"asdf\");\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addUint8(value) {\n this._selector.addUint8();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addUint32(value) {\n this._selector.addUint32();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber} value\n * @returns {ContractFunctionParameters}\n */\n addUint64(value) {\n this._selector.addUint64();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber | number} value\n * @returns {ContractFunctionParameters}\n */\n addUint256(value) {\n this._selector.addUint256();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint8Array(value) {\n this._selector.addUint8Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint32Array(value) {\n this._selector.addUint32Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint64Array(value) {\n this._selector.addUint64Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint256Array(value) {\n this._selector.addUint256Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {string} value\n * @returns {ContractFunctionParameters}\n */\n addAddress(value) {\n // Allow `0x` prefix\n if (value.length !== 40 && value.length !== 42) {\n throw new Error(\n \"`address` type requires parameter to be 40 or 42 characters\"\n );\n }\n\n const par =\n value.length === 40\n ? hex.decode(value)\n : hex.decode(value.substring(2));\n\n this._selector.addAddress();\n\n return this._addParam(par, false);\n }\n\n /**\n * @param {string[]} value\n * @returns {ContractFunctionParameters}\n */\n addAddressArray(value) {\n /**\n * @type {Uint8Array[]}\n */\n const par = [];\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, entry] of value.entries()) {\n if (entry.length !== 40 && entry.length !== 42) {\n throw new Error(\n \"`address` type requires parameter to be 40 or 42 characters\"\n );\n }\n\n const buf =\n entry.length === 40\n ? hex.decode(entry)\n : hex.decode(entry.substring(2));\n\n par.push(buf);\n }\n\n this._selector.addAddressArray();\n\n return this._addParam(par, true);\n }\n\n /**\n * @param {string} address\n * @param {ContractFunctionSelector} selector\n * @returns {ContractFunctionParameters}\n */\n addFunction(address, selector) {\n const addressParam = hex.decode(address);\n const functionSelector = selector._build();\n\n if (addressParam.length !== 20) {\n throw new Error(\n \"`function` type requires parameter `address` to be exactly 20 bytes\"\n );\n }\n\n this._selector.addFunction();\n\n const proto = new Uint8Array(24);\n proto.set(addressParam, 0);\n proto.set(functionSelector, 20);\n\n return this._addParam(proto, false);\n }\n\n /**\n * @internal\n * @param {string | boolean | number | Uint8Array | BigNumber | string[] | boolean[] | number[] | Uint8Array[] | BigNumber[]} param\n * @param {boolean} dynamic\n * @returns {ContractFunctionParameters}\n */\n _addParam(param, dynamic) {\n const index = this._selector._paramTypes.length - 1;\n const value = argumentToBytes(param, this._selector._paramTypes[index]);\n\n this._arguments.push({ dynamic, value });\n\n return this;\n }\n\n /**\n * @internal\n * @param {string=} name\n * @returns {Uint8Array}\n */\n _build(name) {\n const includeId = name != null;\n const nameOffset = includeId ? 4 : 0;\n\n const length =\n this._arguments.length === 0\n ? nameOffset\n : this._arguments.length * 32 +\n this._arguments\n .map((arg) => (arg.dynamic ? arg.value.length : 0))\n .reduce((sum, value) => sum + value) +\n nameOffset;\n\n const func = new Uint8Array(length);\n\n if (includeId) {\n func.set(this._selector._build(name), 0);\n }\n\n let offset = 32 * this._arguments.length;\n\n for (const [i, { dynamic, value }] of this._arguments.entries()) {\n if (dynamic) {\n const view = util.safeView(func, nameOffset + i * 32 + 28);\n view.setUint32(0, offset);\n func.set(value, view.getUint32(0) + nameOffset);\n offset += value.length;\n } else {\n func.set(value, nameOffset + i * 32);\n }\n }\n\n return func;\n }\n}\n\n/**\n * @param {string | boolean | number | Uint8Array | BigNumber | string[] | boolean[] | number[] | Uint8Array[] | BigNumber[]} param\n * @param {import(\"./ContractFunctionSelector.js\").SolidityType} ty\n * @returns {Uint8Array}\n */\nfunction argumentToBytes(param, ty) {\n let value = new Uint8Array(32);\n let valueView = util.safeView(value);\n /** @type {Uint8Array} */\n let par;\n\n if (ty.array) {\n if (!Array.isArray(param)) {\n throw new TypeError(\n \"SolidityType indicates type is array, but parameter is not an array\"\n );\n }\n\n /**\n * @type {Uint8Array[]}\n */\n const values = [];\n\n // Generic over any type of array\n // Destructuring required so the first variable must be assigned\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, p] of param.entries()) {\n const arg = argumentToBytes(p, { ty: ty.ty, array: false });\n values.push(arg);\n }\n\n const totalLengthOfValues = values\n .map((a) => a.length)\n .reduce((total, current) => total + current);\n\n switch (ty.ty) {\n case ArgumentType.uint8:\n case ArgumentType.int8:\n case ArgumentType.uint16:\n case ArgumentType.int16:\n case ArgumentType.uint32:\n case ArgumentType.int32:\n case ArgumentType.uint64:\n case ArgumentType.int64:\n case ArgumentType.uint256:\n case ArgumentType.int256:\n case ArgumentType.bool:\n case ArgumentType.bytes32:\n case ArgumentType.address:\n case ArgumentType.func:\n value = new Uint8Array(totalLengthOfValues + 32);\n break;\n case ArgumentType.bytes:\n case ArgumentType.string:\n value = new Uint8Array(\n values.length * 32 + totalLengthOfValues + 32\n );\n break;\n default:\n throw new TypeError(\n `Expected param type to be ArgumentType, but received ${ty.ty}`\n );\n }\n\n valueView = util.safeView(value, 28);\n valueView.setUint32(0, values.length);\n\n let offset = 32 * values.length;\n\n for (const [i, e] of values.entries()) {\n switch (ty.ty) {\n case ArgumentType.uint8:\n case ArgumentType.int8:\n case ArgumentType.uint16:\n case ArgumentType.int16:\n case ArgumentType.uint32:\n case ArgumentType.int32:\n case ArgumentType.uint64:\n case ArgumentType.int64:\n case ArgumentType.uint256:\n case ArgumentType.int256:\n case ArgumentType.bool:\n case ArgumentType.bytes32:\n case ArgumentType.address:\n case ArgumentType.func:\n value.set(e, i * 32 + 32);\n break;\n case ArgumentType.bytes:\n case ArgumentType.string:\n // eslint-disable-next-line no-case-declarations\n const view = util.safeView(value, (i + 1) * 32 + 28);\n view.setUint32(0, offset);\n value.set(e, view.getUint32(0) + 32);\n offset += e.length;\n break;\n default:\n throw new TypeError(\n `Expected param type to be ArgumentType, but received ${ty.ty}`\n );\n }\n }\n\n return value;\n }\n\n switch (ty.ty) {\n case ArgumentType.uint8:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 31,\n valueView.setUint8.bind(valueView)\n );\n return value;\n case ArgumentType.int8:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 31,\n valueView.setInt8.bind(valueView)\n );\n return value;\n case ArgumentType.uint16:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 30,\n valueView.setUint16.bind(valueView)\n );\n return value;\n case ArgumentType.int16:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 30,\n valueView.setInt16.bind(valueView)\n );\n return value;\n case ArgumentType.uint32:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 28,\n valueView.setUint32.bind(valueView)\n );\n return value;\n case ArgumentType.int32:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 28,\n valueView.setInt32.bind(valueView)\n );\n return value;\n // int64, uint64, and int256 both expect the parameter to be an Uint8Array instead of number\n case ArgumentType.uint64:\n case ArgumentType.int64:\n if (BigNumber.isBigNumber(param)) {\n // eslint-disable-next-line no-case-declarations\n let par = param.toString(16);\n if (par.length > 16) {\n throw new TypeError(\n \"uint64/int64 requires BigNumber to be less than or equal to 8 bytes\"\n );\n } else if (!param.isInteger()) {\n throw new TypeError(\n \"uint64/int64 requires BigNumber to be an integer\"\n );\n }\n\n if (par.length % 2 === 1) {\n par = `0${par}`;\n }\n\n // eslint-disable-next-line no-case-declarations\n const buf = hex.decode(par);\n value.set(buf, 32 - buf.length);\n }\n return value;\n case ArgumentType.int256:\n case ArgumentType.uint256:\n if (BigNumber.isBigNumber(param)) {\n let par = param.toString(16);\n if (par.length % 2 === 1) {\n par = `0${par}`;\n }\n\n const buf = hex.decode(par);\n value.set(buf, 32 - buf.length);\n }\n return value;\n case ArgumentType.address:\n value.set(/** @type {Uint8Array} */ (param), 32 - 20);\n return value;\n case ArgumentType.bool:\n value[31] = /** @type {boolean} */ (param) ? 1 : 0;\n return value;\n case ArgumentType.func:\n value.set(/** @type {Uint8Array} */ (param), 32 - 24);\n return value;\n case ArgumentType.bytes32:\n value.set(/** @type {Uint8Array} */ (param), 0);\n return value;\n // Bytes should have not the length already encoded\n // JS String type is encoded as UTF-16 whilst Solidity `string` type is UTF-8 encoded.\n // So if will assume is already correctly updated to being a Uint8Array of UTF-8 string\n case ArgumentType.bytes:\n case ArgumentType.string:\n // If value is of type string, encode it in UTF-8 format and conver it to Uint8Array\n // Required because JS Strings are UTF-16\n // eslint-disable-next-line no-case-declarations\n par =\n param instanceof Uint8Array\n ? param\n : utf8.encode(/** @type {string} */ (param));\n\n // Resize value to a 32 byte boundary if needed\n if (\n Math.floor(par.length / 32) >= 0 &&\n Math.floor(par.length % 32) !== 0\n ) {\n value = new Uint8Array(\n (Math.floor(par.length / 32) + 1) * 32 + 32\n );\n } else {\n value = new Uint8Array(64);\n }\n\n value.set(par, 32);\n\n valueView = util.safeView(value, 28);\n valueView.setUint32(0, par.length);\n return value;\n default:\n throw new Error(`Unsupported argument type: ${ty.toString()}`);\n }\n}\n\n/**\n * @param {number | BigNumber} param\n * @param {number} byteoffset\n * @param {(byteOffset: number, value: number) => void} func\n * @returns {void}\n */\nfunction numberToBytes(param, byteoffset, func) {\n const value = BigNumber.isBigNumber(param) ? param.toNumber() : param;\n\n func(byteoffset, value);\n}\n","import AccountId from \"../account/AccountId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n */\n\nexport default class CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n */\n constructor(props = {}) {\n /**\n * @type {?AccountId}\n */\n this._feeCollectorAccountId;\n\n if (props.feeCollectorAccountId != null) {\n this.setFeeCollectorAccountId(props.feeCollectorAccountId);\n }\n }\n\n /**\n * @returns {?AccountId}\n */\n get feeCollectorAccountId() {\n return this._feeCollectorAccountId;\n }\n\n /**\n * @param {AccountId | string} feeCollectorAccountId\n * @returns {this}\n */\n setFeeCollectorAccountId(feeCollectorAccountId) {\n this._feeCollectorAccountId =\n typeof feeCollectorAccountId === \"string\"\n ? AccountId.fromString(feeCollectorAccountId)\n : feeCollectorAccountId;\n return this;\n }\n\n /**\n * @internal\n * @abstract\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n throw new Error(\"not implemented\");\n }\n}\n","import CustomFee from \"./CustomFee.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\n\n/**\n * @typedef {import(\"./FeeAssessmentMethod.js\").default} FeeAssessmentMethod\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n * @typedef {import(\"@hashgraph/proto\").IFractionalFee} proto.IFractionalFee\n * @typedef {import(\"@hashgraph/proto\").IFraction} proto.IFraction\n */\n\nexport default class CustomFractionalFee extends CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {Long | number} [props.numerator]\n * @param {Long | number} [props.denominator]\n * @param {Long | number} [props.min]\n * @param {Long | number} [props.max]\n * @param {FeeAssessmentMethod} [props.assessmentMethod]\n */\n constructor(props = {}) {\n super(props);\n\n /**\n * @type {?Long}\n */\n this._numerator;\n\n if (props.numerator != null) {\n this.setNumerator(props.numerator);\n }\n\n /**\n * @type {?Long}\n */\n this._denominator;\n\n if (props.denominator != null) {\n this.setDenominator(props.denominator);\n }\n\n /**\n * @type {?Long}\n */\n this._min;\n\n if (props.min != null) {\n this.setMin(props.min);\n }\n\n /**\n * @type {?Long}\n */\n this._max;\n\n if (props.max != null) {\n this.setMax(props.max);\n }\n\n /**\n * @type {?FeeAssessmentMethod}\n */\n this._assessmentMethod;\n\n if (props.assessmentMethod != null) {\n this.setAssessmentMethod(props.assessmentMethod);\n }\n }\n\n /**\n * @returns {?Long}\n */\n get numerator() {\n return this._numerator;\n }\n\n /**\n * @param {Long | number} numerator\n * @returns {CustomFractionalFee}\n */\n setNumerator(numerator) {\n this._numerator =\n typeof numerator === \"number\"\n ? Long.fromNumber(numerator)\n : numerator;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get denominator() {\n return this._denominator;\n }\n\n /**\n * @param {Long | number} denominator\n * @returns {CustomFractionalFee}\n */\n setDenominator(denominator) {\n this._denominator =\n typeof denominator === \"number\"\n ? Long.fromNumber(denominator)\n : denominator;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get min() {\n return this._min;\n }\n\n /**\n * @param {Long | number} min\n * @returns {CustomFractionalFee}\n */\n setMin(min) {\n this._min = typeof min === \"number\" ? Long.fromNumber(min) : min;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get max() {\n return this._max;\n }\n\n /**\n * @param {Long | number} max\n * @returns {CustomFractionalFee}\n */\n setMax(max) {\n this._max = typeof max === \"number\" ? Long.fromNumber(max) : max;\n return this;\n }\n\n /**\n * @returns {?FeeAssessmentMethod}\n */\n get assessmentMethod() {\n return this._assessmentMethod;\n }\n\n /**\n * @param {FeeAssessmentMethod} assessmentMethod\n * @returns {CustomFractionalFee}\n */\n setAssessmentMethod(assessmentMethod) {\n this._assessmentMethod = assessmentMethod;\n return this;\n }\n\n /**\n * @internal\n * @override\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n const fee = /** @type {proto.IFractionalFee} */ (info.fractionalFee);\n const fractional = /** @type {proto.IFraction} */ (\n fee.fractionalAmount\n );\n\n return new CustomFractionalFee({\n feeCollectorAccountId:\n info.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(info.feeCollectorAccountId)\n : undefined,\n numerator:\n fractional.numerator != null ? fractional.numerator : undefined,\n denominator:\n fractional.denominator != null\n ? fractional.denominator\n : undefined,\n min: fee.minimumAmount != null ? fee.minimumAmount : undefined,\n max: fee.maximumAmount != null ? fee.maximumAmount : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n fractionalFee: {\n fractionalAmount: {\n numerator: this._numerator,\n denominator: this._denominator,\n },\n minimumAmount: this._min,\n maximumAmount: this._max,\n },\n };\n }\n}\n","import CustomFee from \"./CustomFee.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\nimport CustomFixedFee from \"./CustomFixedFee.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IFraction} proto.IFraction\n * @typedef {import(\"@hashgraph/proto\").IRoyaltyFee} proto.IRoyaltyFee\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n * @typedef {import(\"@hashgraph/proto\").IFixedFee} proto.IFixedFee\n */\n\nexport default class CustomRoyalyFee extends CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {Long | number} [props.numerator]\n * @param {Long | number} [props.denominator]\n * @param {CustomFixedFee} [props.fallbackFee]\n */\n constructor(props = {}) {\n super(props);\n\n /**\n * @type {?CustomFixedFee}\n */\n this._fallbackFee;\n\n if (props.fallbackFee != null) {\n this.setFallbackFee(props.fallbackFee);\n }\n\n /**\n * @type {?Long}\n */\n this._numerator;\n\n if (props.numerator != null) {\n this.setNumerator(props.numerator);\n }\n\n /**\n * @type {?Long}\n */\n this._denominator;\n\n if (props.denominator != null) {\n this.setDenominator(props.denominator);\n }\n }\n\n /**\n * @returns {?CustomFixedFee}\n */\n get fallbackFee() {\n return this._fallbackFee;\n }\n\n /**\n * @param {CustomFixedFee} fallbackFee\n * @returns {CustomRoyalyFee}\n */\n setFallbackFee(fallbackFee) {\n this._fallbackFee = fallbackFee;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get numerator() {\n return this._numerator;\n }\n\n /**\n * @param {Long | number} numerator\n * @returns {CustomRoyalyFee}\n */\n setNumerator(numerator) {\n this._numerator =\n typeof numerator === \"number\"\n ? Long.fromNumber(numerator)\n : numerator;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get denominator() {\n return this._denominator;\n }\n\n /**\n * @param {Long | number} denominator\n * @returns {CustomRoyalyFee}\n */\n setDenominator(denominator) {\n this._denominator =\n typeof denominator === \"number\"\n ? Long.fromNumber(denominator)\n : denominator;\n return this;\n }\n\n /**\n * @internal\n * @override\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n const fee = /** @type {proto.IRoyaltyFee} */ (info.royaltyFee);\n const fraction = /** @type {proto.IFraction} */ (\n fee.exchangeValueFraction\n );\n\n return new CustomRoyalyFee({\n feeCollectorAccountId:\n info.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(info.feeCollectorAccountId)\n : undefined,\n fallbackFee:\n fee.fallbackFee != null\n ? /** @type {CustomFixedFee} */ (\n CustomFixedFee._fromProtobuf({\n fixedFee: fee.fallbackFee,\n })\n )\n : undefined,\n numerator:\n fraction.numerator != null ? fraction.numerator : undefined,\n denominator:\n fraction.denominator != null ? fraction.denominator : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n royaltyFee: {\n exchangeValueFraction: {\n numerator: this._numerator,\n denominator: this._denominator,\n },\n fallbackFee:\n this._fallbackFee != null\n ? this._fallbackFee._toProtobuf().fixedFee\n : null,\n },\n };\n }\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getLength = exports.decode = exports.encode = void 0;\nvar bn_js_1 = __importDefault(require(\"bn.js\"));\n/**\n * RLP Encoding based on: https://github.com/ethereum/wiki/wiki/%5BEnglish%5D-RLP\n * This function takes in a data, convert it to buffer if not, and a length for recursion\n * @param input - will be converted to buffer\n * @returns returns buffer of encoded data\n **/\nfunction encode(input) {\n if (Array.isArray(input)) {\n var output = [];\n for (var i = 0; i < input.length; i++) {\n output.push(encode(input[i]));\n }\n var buf = Buffer.concat(output);\n return Buffer.concat([encodeLength(buf.length, 192), buf]);\n }\n else {\n var inputBuf = toBuffer(input);\n return inputBuf.length === 1 && inputBuf[0] < 128\n ? inputBuf\n : Buffer.concat([encodeLength(inputBuf.length, 128), inputBuf]);\n }\n}\nexports.encode = encode;\n/**\n * Parse integers. Check if there is no leading zeros\n * @param v The value to parse\n * @param base The base to parse the integer into\n */\nfunction safeParseInt(v, base) {\n if (v[0] === '0' && v[1] === '0') {\n throw new Error('invalid RLP: extra zeros');\n }\n return parseInt(v, base);\n}\nfunction encodeLength(len, offset) {\n if (len < 56) {\n return Buffer.from([len + offset]);\n }\n else {\n var hexLength = intToHex(len);\n var lLength = hexLength.length / 2;\n var firstByte = intToHex(offset + 55 + lLength);\n return Buffer.from(firstByte + hexLength, 'hex');\n }\n}\nfunction decode(input, stream) {\n if (stream === void 0) { stream = false; }\n if (!input || input.length === 0) {\n return Buffer.from([]);\n }\n var inputBuffer = toBuffer(input);\n var decoded = _decode(inputBuffer);\n if (stream) {\n return decoded;\n }\n if (decoded.remainder.length !== 0) {\n throw new Error('invalid remainder');\n }\n return decoded.data;\n}\nexports.decode = decode;\n/**\n * Get the length of the RLP input\n * @param input\n * @returns The length of the input or an empty Buffer if no input\n */\nfunction getLength(input) {\n if (!input || input.length === 0) {\n return Buffer.from([]);\n }\n var inputBuffer = toBuffer(input);\n var firstByte = inputBuffer[0];\n if (firstByte <= 0x7f) {\n return inputBuffer.length;\n }\n else if (firstByte <= 0xb7) {\n return firstByte - 0x7f;\n }\n else if (firstByte <= 0xbf) {\n return firstByte - 0xb6;\n }\n else if (firstByte <= 0xf7) {\n // a list between 0-55 bytes long\n return firstByte - 0xbf;\n }\n else {\n // a list over 55 bytes long\n var llength = firstByte - 0xf6;\n var length_1 = safeParseInt(inputBuffer.slice(1, llength).toString('hex'), 16);\n return llength + length_1;\n }\n}\nexports.getLength = getLength;\n/** Decode an input with RLP */\nfunction _decode(input) {\n var length, llength, data, innerRemainder, d;\n var decoded = [];\n var firstByte = input[0];\n if (firstByte <= 0x7f) {\n // a single byte whose value is in the [0x00, 0x7f] range, that byte is its own RLP encoding.\n return {\n data: input.slice(0, 1),\n remainder: input.slice(1),\n };\n }\n else if (firstByte <= 0xb7) {\n // string is 0-55 bytes long. A single byte with value 0x80 plus the length of the string followed by the string\n // The range of the first byte is [0x80, 0xb7]\n length = firstByte - 0x7f;\n // set 0x80 null to 0\n if (firstByte === 0x80) {\n data = Buffer.from([]);\n }\n else {\n data = input.slice(1, length);\n }\n if (length === 2 && data[0] < 0x80) {\n throw new Error('invalid rlp encoding: byte must be less 0x80');\n }\n return {\n data: data,\n remainder: input.slice(length),\n };\n }\n else if (firstByte <= 0xbf) {\n // string is greater than 55 bytes long. A single byte with the value (0xb7 plus the length of the length),\n // followed by the length, followed by the string\n llength = firstByte - 0xb6;\n if (input.length - 1 < llength) {\n throw new Error('invalid RLP: not enough bytes for string length');\n }\n length = safeParseInt(input.slice(1, llength).toString('hex'), 16);\n if (length <= 55) {\n throw new Error('invalid RLP: expected string length to be greater than 55');\n }\n data = input.slice(llength, length + llength);\n if (data.length < length) {\n throw new Error('invalid RLP: not enough bytes for string');\n }\n return {\n data: data,\n remainder: input.slice(length + llength),\n };\n }\n else if (firstByte <= 0xf7) {\n // a list between 0-55 bytes long\n length = firstByte - 0xbf;\n innerRemainder = input.slice(1, length);\n while (innerRemainder.length) {\n d = _decode(innerRemainder);\n decoded.push(d.data);\n innerRemainder = d.remainder;\n }\n return {\n data: decoded,\n remainder: input.slice(length),\n };\n }\n else {\n // a list over 55 bytes long\n llength = firstByte - 0xf6;\n length = safeParseInt(input.slice(1, llength).toString('hex'), 16);\n var totalLength = llength + length;\n if (totalLength > input.length) {\n throw new Error('invalid rlp: total length is larger than the data');\n }\n innerRemainder = input.slice(llength, totalLength);\n if (innerRemainder.length === 0) {\n throw new Error('invalid rlp, List has a invalid length');\n }\n while (innerRemainder.length) {\n d = _decode(innerRemainder);\n decoded.push(d.data);\n innerRemainder = d.remainder;\n }\n return {\n data: decoded,\n remainder: input.slice(totalLength),\n };\n }\n}\n/** Check if a string is prefixed by 0x */\nfunction isHexPrefixed(str) {\n return str.slice(0, 2) === '0x';\n}\n/** Removes 0x from a given String */\nfunction stripHexPrefix(str) {\n if (typeof str !== 'string') {\n return str;\n }\n return isHexPrefixed(str) ? str.slice(2) : str;\n}\n/** Transform an integer into its hexadecimal value */\nfunction intToHex(integer) {\n if (integer < 0) {\n throw new Error('Invalid integer as argument, must be unsigned!');\n }\n var hex = integer.toString(16);\n return hex.length % 2 ? \"0\" + hex : hex;\n}\n/** Pad a string to be even */\nfunction padToEven(a) {\n return a.length % 2 ? \"0\" + a : a;\n}\n/** Transform an integer into a Buffer */\nfunction intToBuffer(integer) {\n var hex = intToHex(integer);\n return Buffer.from(hex, 'hex');\n}\n/** Transform anything into a Buffer */\nfunction toBuffer(v) {\n if (!Buffer.isBuffer(v)) {\n if (typeof v === 'string') {\n if (isHexPrefixed(v)) {\n return Buffer.from(padToEven(stripHexPrefix(v)), 'hex');\n }\n else {\n return Buffer.from(v);\n }\n }\n else if (typeof v === 'number' || typeof v === 'bigint') {\n if (!v) {\n return Buffer.from([]);\n }\n else {\n return intToBuffer(v);\n }\n }\n else if (v === null || v === undefined) {\n return Buffer.from([]);\n }\n else if (v instanceof Uint8Array) {\n return Buffer.from(v);\n }\n else if (bn_js_1.default.isBN(v)) {\n // converts a BN to a Buffer\n return Buffer.from(v.toArray());\n }\n else {\n throw new Error('invalid type');\n }\n }\n return v;\n}\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.assertIsString = exports.assertIsArray = exports.assertIsBuffer = exports.assertIsHexString = void 0;\nvar internal_1 = require(\"./internal\");\n/**\n * Throws if a string is not hex prefixed\n * @param {string} input string to check hex prefix of\n */\nvar assertIsHexString = function (input) {\n if (!(0, internal_1.isHexString)(input)) {\n var msg = \"This method only supports 0x-prefixed hex strings but input was: \".concat(input);\n throw new Error(msg);\n }\n};\nexports.assertIsHexString = assertIsHexString;\n/**\n * Throws if input is not a buffer\n * @param {Buffer} input value to check\n */\nvar assertIsBuffer = function (input) {\n if (!Buffer.isBuffer(input)) {\n var msg = \"This method only supports Buffer but input was: \".concat(input);\n throw new Error(msg);\n }\n};\nexports.assertIsBuffer = assertIsBuffer;\n/**\n * Throws if input is not an array\n * @param {number[]} input value to check\n */\nvar assertIsArray = function (input) {\n if (!Array.isArray(input)) {\n var msg = \"This method only supports number arrays but input was: \".concat(input);\n throw new Error(msg);\n }\n};\nexports.assertIsArray = assertIsArray;\n/**\n * Throws if input is not a string\n * @param {string} input value to check\n */\nvar assertIsString = function (input) {\n if (typeof input !== 'string') {\n var msg = \"This method only supports strings but input was: \".concat(input);\n throw new Error(msg);\n }\n};\nexports.assertIsString = assertIsString;\n//# sourceMappingURL=helpers.js.map","\n/**\n * Module exports.\n */\n\nmodule.exports = deprecate;\n\n/**\n * Mark that a method should not be used.\n * Returns a modified function which warns once by default.\n *\n * If `localStorage.noDeprecation = true` is set, then it is a no-op.\n *\n * If `localStorage.throwDeprecation = true` is set, then deprecated functions\n * will throw an Error when invoked.\n *\n * If `localStorage.traceDeprecation = true` is set, then deprecated functions\n * will invoke `console.trace()` instead of `console.error()`.\n *\n * @param {Function} fn - the function to deprecate\n * @param {String} msg - the string to print to the console when `fn` is invoked\n * @returns {Function} a new \"deprecated\" version of `fn`\n * @api public\n */\n\nfunction deprecate (fn, msg) {\n if (config('noDeprecation')) {\n return fn;\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (config('throwDeprecation')) {\n throw new Error(msg);\n } else if (config('traceDeprecation')) {\n console.trace(msg);\n } else {\n console.warn(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n}\n\n/**\n * Checks `localStorage` for boolean values for the given `name`.\n *\n * @param {String} name\n * @returns {Boolean}\n * @api private\n */\n\nfunction config (name) {\n // accessing global.localStorage can trigger a DOMException in sandboxed iframes\n try {\n if (!global.localStorage) return false;\n } catch (_) {\n return false;\n }\n var val = global.localStorage[name];\n if (null == val) return false;\n return String(val).toLowerCase() === 'true';\n}\n","'use strict';\n\nif (typeof process === 'undefined' ||\n !process.version ||\n process.version.indexOf('v0.') === 0 ||\n process.version.indexOf('v1.') === 0 && process.version.indexOf('v1.8.') !== 0) {\n module.exports = { nextTick: nextTick };\n} else {\n module.exports = process\n}\n\nfunction nextTick(fn, arg1, arg2, arg3) {\n if (typeof fn !== 'function') {\n throw new TypeError('\"callback\" argument must be a function');\n }\n var len = arguments.length;\n var args, i;\n switch (len) {\n case 0:\n case 1:\n return process.nextTick(fn);\n case 2:\n return process.nextTick(function afterTickOne() {\n fn.call(null, arg1);\n });\n case 3:\n return process.nextTick(function afterTickTwo() {\n fn.call(null, arg1, arg2);\n });\n case 4:\n return process.nextTick(function afterTickThree() {\n fn.call(null, arg1, arg2, arg3);\n });\n default:\n args = new Array(len - 1);\n i = 0;\n while (i < args.length) {\n args[i++] = arguments[i];\n }\n return process.nextTick(function afterTick() {\n fn.apply(null, args);\n });\n }\n}\n\n","export { default as Key } from \"./Key.js\";\nexport { default as KeyList } from \"./KeyList.js\";\nexport { default as PrivateKey } from \"./PrivateKey.js\";\nexport { default as PublicKey } from \"./PublicKey.js\";\nexport { default as Mnemonic } from \"./Mnemonic.js\";\nexport { default as BadKeyError } from \"./BadKeyError.js\";\nexport { default as BadMnemonicError } from \"./BadMnemonicError.js\";\nexport { default as BadMnemonicReason } from \"./BadMnemonicReason.js\";\n","(function(nacl) {\n'use strict';\n\n// Ported in 2014 by Dmitry Chestnykh and Devi Mandiri.\n// Public domain.\n//\n// Implementation derived from TweetNaCl version 20140427.\n// See for details: http://tweetnacl.cr.yp.to/\n\nvar gf = function(init) {\n var i, r = new Float64Array(16);\n if (init) for (i = 0; i < init.length; i++) r[i] = init[i];\n return r;\n};\n\n// Pluggable, initialized in high-level API below.\nvar randombytes = function(/* x, n */) { throw new Error('no PRNG'); };\n\nvar _0 = new Uint8Array(16);\nvar _9 = new Uint8Array(32); _9[0] = 9;\n\nvar gf0 = gf(),\n gf1 = gf([1]),\n _121665 = gf([0xdb41, 1]),\n D = gf([0x78a3, 0x1359, 0x4dca, 0x75eb, 0xd8ab, 0x4141, 0x0a4d, 0x0070, 0xe898, 0x7779, 0x4079, 0x8cc7, 0xfe73, 0x2b6f, 0x6cee, 0x5203]),\n D2 = gf([0xf159, 0x26b2, 0x9b94, 0xebd6, 0xb156, 0x8283, 0x149a, 0x00e0, 0xd130, 0xeef3, 0x80f2, 0x198e, 0xfce7, 0x56df, 0xd9dc, 0x2406]),\n X = gf([0xd51a, 0x8f25, 0x2d60, 0xc956, 0xa7b2, 0x9525, 0xc760, 0x692c, 0xdc5c, 0xfdd6, 0xe231, 0xc0a4, 0x53fe, 0xcd6e, 0x36d3, 0x2169]),\n Y = gf([0x6658, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666]),\n I = gf([0xa0b0, 0x4a0e, 0x1b27, 0xc4ee, 0xe478, 0xad2f, 0x1806, 0x2f43, 0xd7a7, 0x3dfb, 0x0099, 0x2b4d, 0xdf0b, 0x4fc1, 0x2480, 0x2b83]);\n\nfunction ts64(x, i, h, l) {\n x[i] = (h >> 24) & 0xff;\n x[i+1] = (h >> 16) & 0xff;\n x[i+2] = (h >> 8) & 0xff;\n x[i+3] = h & 0xff;\n x[i+4] = (l >> 24) & 0xff;\n x[i+5] = (l >> 16) & 0xff;\n x[i+6] = (l >> 8) & 0xff;\n x[i+7] = l & 0xff;\n}\n\nfunction vn(x, xi, y, yi, n) {\n var i,d = 0;\n for (i = 0; i < n; i++) d |= x[xi+i]^y[yi+i];\n return (1 & ((d - 1) >>> 8)) - 1;\n}\n\nfunction crypto_verify_16(x, xi, y, yi) {\n return vn(x,xi,y,yi,16);\n}\n\nfunction crypto_verify_32(x, xi, y, yi) {\n return vn(x,xi,y,yi,32);\n}\n\nfunction core_salsa20(o, p, k, c) {\n var j0 = c[ 0] & 0xff | (c[ 1] & 0xff)<<8 | (c[ 2] & 0xff)<<16 | (c[ 3] & 0xff)<<24,\n j1 = k[ 0] & 0xff | (k[ 1] & 0xff)<<8 | (k[ 2] & 0xff)<<16 | (k[ 3] & 0xff)<<24,\n j2 = k[ 4] & 0xff | (k[ 5] & 0xff)<<8 | (k[ 6] & 0xff)<<16 | (k[ 7] & 0xff)<<24,\n j3 = k[ 8] & 0xff | (k[ 9] & 0xff)<<8 | (k[10] & 0xff)<<16 | (k[11] & 0xff)<<24,\n j4 = k[12] & 0xff | (k[13] & 0xff)<<8 | (k[14] & 0xff)<<16 | (k[15] & 0xff)<<24,\n j5 = c[ 4] & 0xff | (c[ 5] & 0xff)<<8 | (c[ 6] & 0xff)<<16 | (c[ 7] & 0xff)<<24,\n j6 = p[ 0] & 0xff | (p[ 1] & 0xff)<<8 | (p[ 2] & 0xff)<<16 | (p[ 3] & 0xff)<<24,\n j7 = p[ 4] & 0xff | (p[ 5] & 0xff)<<8 | (p[ 6] & 0xff)<<16 | (p[ 7] & 0xff)<<24,\n j8 = p[ 8] & 0xff | (p[ 9] & 0xff)<<8 | (p[10] & 0xff)<<16 | (p[11] & 0xff)<<24,\n j9 = p[12] & 0xff | (p[13] & 0xff)<<8 | (p[14] & 0xff)<<16 | (p[15] & 0xff)<<24,\n j10 = c[ 8] & 0xff | (c[ 9] & 0xff)<<8 | (c[10] & 0xff)<<16 | (c[11] & 0xff)<<24,\n j11 = k[16] & 0xff | (k[17] & 0xff)<<8 | (k[18] & 0xff)<<16 | (k[19] & 0xff)<<24,\n j12 = k[20] & 0xff | (k[21] & 0xff)<<8 | (k[22] & 0xff)<<16 | (k[23] & 0xff)<<24,\n j13 = k[24] & 0xff | (k[25] & 0xff)<<8 | (k[26] & 0xff)<<16 | (k[27] & 0xff)<<24,\n j14 = k[28] & 0xff | (k[29] & 0xff)<<8 | (k[30] & 0xff)<<16 | (k[31] & 0xff)<<24,\n j15 = c[12] & 0xff | (c[13] & 0xff)<<8 | (c[14] & 0xff)<<16 | (c[15] & 0xff)<<24;\n\n var x0 = j0, x1 = j1, x2 = j2, x3 = j3, x4 = j4, x5 = j5, x6 = j6, x7 = j7,\n x8 = j8, x9 = j9, x10 = j10, x11 = j11, x12 = j12, x13 = j13, x14 = j14,\n x15 = j15, u;\n\n for (var i = 0; i < 20; i += 2) {\n u = x0 + x12 | 0;\n x4 ^= u<<7 | u>>>(32-7);\n u = x4 + x0 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x4 | 0;\n x12 ^= u<<13 | u>>>(32-13);\n u = x12 + x8 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x1 | 0;\n x9 ^= u<<7 | u>>>(32-7);\n u = x9 + x5 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x9 | 0;\n x1 ^= u<<13 | u>>>(32-13);\n u = x1 + x13 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x6 | 0;\n x14 ^= u<<7 | u>>>(32-7);\n u = x14 + x10 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x14 | 0;\n x6 ^= u<<13 | u>>>(32-13);\n u = x6 + x2 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x11 | 0;\n x3 ^= u<<7 | u>>>(32-7);\n u = x3 + x15 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x3 | 0;\n x11 ^= u<<13 | u>>>(32-13);\n u = x11 + x7 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n\n u = x0 + x3 | 0;\n x1 ^= u<<7 | u>>>(32-7);\n u = x1 + x0 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x1 | 0;\n x3 ^= u<<13 | u>>>(32-13);\n u = x3 + x2 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x4 | 0;\n x6 ^= u<<7 | u>>>(32-7);\n u = x6 + x5 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x6 | 0;\n x4 ^= u<<13 | u>>>(32-13);\n u = x4 + x7 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x9 | 0;\n x11 ^= u<<7 | u>>>(32-7);\n u = x11 + x10 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x11 | 0;\n x9 ^= u<<13 | u>>>(32-13);\n u = x9 + x8 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x14 | 0;\n x12 ^= u<<7 | u>>>(32-7);\n u = x12 + x15 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x12 | 0;\n x14 ^= u<<13 | u>>>(32-13);\n u = x14 + x13 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n }\n x0 = x0 + j0 | 0;\n x1 = x1 + j1 | 0;\n x2 = x2 + j2 | 0;\n x3 = x3 + j3 | 0;\n x4 = x4 + j4 | 0;\n x5 = x5 + j5 | 0;\n x6 = x6 + j6 | 0;\n x7 = x7 + j7 | 0;\n x8 = x8 + j8 | 0;\n x9 = x9 + j9 | 0;\n x10 = x10 + j10 | 0;\n x11 = x11 + j11 | 0;\n x12 = x12 + j12 | 0;\n x13 = x13 + j13 | 0;\n x14 = x14 + j14 | 0;\n x15 = x15 + j15 | 0;\n\n o[ 0] = x0 >>> 0 & 0xff;\n o[ 1] = x0 >>> 8 & 0xff;\n o[ 2] = x0 >>> 16 & 0xff;\n o[ 3] = x0 >>> 24 & 0xff;\n\n o[ 4] = x1 >>> 0 & 0xff;\n o[ 5] = x1 >>> 8 & 0xff;\n o[ 6] = x1 >>> 16 & 0xff;\n o[ 7] = x1 >>> 24 & 0xff;\n\n o[ 8] = x2 >>> 0 & 0xff;\n o[ 9] = x2 >>> 8 & 0xff;\n o[10] = x2 >>> 16 & 0xff;\n o[11] = x2 >>> 24 & 0xff;\n\n o[12] = x3 >>> 0 & 0xff;\n o[13] = x3 >>> 8 & 0xff;\n o[14] = x3 >>> 16 & 0xff;\n o[15] = x3 >>> 24 & 0xff;\n\n o[16] = x4 >>> 0 & 0xff;\n o[17] = x4 >>> 8 & 0xff;\n o[18] = x4 >>> 16 & 0xff;\n o[19] = x4 >>> 24 & 0xff;\n\n o[20] = x5 >>> 0 & 0xff;\n o[21] = x5 >>> 8 & 0xff;\n o[22] = x5 >>> 16 & 0xff;\n o[23] = x5 >>> 24 & 0xff;\n\n o[24] = x6 >>> 0 & 0xff;\n o[25] = x6 >>> 8 & 0xff;\n o[26] = x6 >>> 16 & 0xff;\n o[27] = x6 >>> 24 & 0xff;\n\n o[28] = x7 >>> 0 & 0xff;\n o[29] = x7 >>> 8 & 0xff;\n o[30] = x7 >>> 16 & 0xff;\n o[31] = x7 >>> 24 & 0xff;\n\n o[32] = x8 >>> 0 & 0xff;\n o[33] = x8 >>> 8 & 0xff;\n o[34] = x8 >>> 16 & 0xff;\n o[35] = x8 >>> 24 & 0xff;\n\n o[36] = x9 >>> 0 & 0xff;\n o[37] = x9 >>> 8 & 0xff;\n o[38] = x9 >>> 16 & 0xff;\n o[39] = x9 >>> 24 & 0xff;\n\n o[40] = x10 >>> 0 & 0xff;\n o[41] = x10 >>> 8 & 0xff;\n o[42] = x10 >>> 16 & 0xff;\n o[43] = x10 >>> 24 & 0xff;\n\n o[44] = x11 >>> 0 & 0xff;\n o[45] = x11 >>> 8 & 0xff;\n o[46] = x11 >>> 16 & 0xff;\n o[47] = x11 >>> 24 & 0xff;\n\n o[48] = x12 >>> 0 & 0xff;\n o[49] = x12 >>> 8 & 0xff;\n o[50] = x12 >>> 16 & 0xff;\n o[51] = x12 >>> 24 & 0xff;\n\n o[52] = x13 >>> 0 & 0xff;\n o[53] = x13 >>> 8 & 0xff;\n o[54] = x13 >>> 16 & 0xff;\n o[55] = x13 >>> 24 & 0xff;\n\n o[56] = x14 >>> 0 & 0xff;\n o[57] = x14 >>> 8 & 0xff;\n o[58] = x14 >>> 16 & 0xff;\n o[59] = x14 >>> 24 & 0xff;\n\n o[60] = x15 >>> 0 & 0xff;\n o[61] = x15 >>> 8 & 0xff;\n o[62] = x15 >>> 16 & 0xff;\n o[63] = x15 >>> 24 & 0xff;\n}\n\nfunction core_hsalsa20(o,p,k,c) {\n var j0 = c[ 0] & 0xff | (c[ 1] & 0xff)<<8 | (c[ 2] & 0xff)<<16 | (c[ 3] & 0xff)<<24,\n j1 = k[ 0] & 0xff | (k[ 1] & 0xff)<<8 | (k[ 2] & 0xff)<<16 | (k[ 3] & 0xff)<<24,\n j2 = k[ 4] & 0xff | (k[ 5] & 0xff)<<8 | (k[ 6] & 0xff)<<16 | (k[ 7] & 0xff)<<24,\n j3 = k[ 8] & 0xff | (k[ 9] & 0xff)<<8 | (k[10] & 0xff)<<16 | (k[11] & 0xff)<<24,\n j4 = k[12] & 0xff | (k[13] & 0xff)<<8 | (k[14] & 0xff)<<16 | (k[15] & 0xff)<<24,\n j5 = c[ 4] & 0xff | (c[ 5] & 0xff)<<8 | (c[ 6] & 0xff)<<16 | (c[ 7] & 0xff)<<24,\n j6 = p[ 0] & 0xff | (p[ 1] & 0xff)<<8 | (p[ 2] & 0xff)<<16 | (p[ 3] & 0xff)<<24,\n j7 = p[ 4] & 0xff | (p[ 5] & 0xff)<<8 | (p[ 6] & 0xff)<<16 | (p[ 7] & 0xff)<<24,\n j8 = p[ 8] & 0xff | (p[ 9] & 0xff)<<8 | (p[10] & 0xff)<<16 | (p[11] & 0xff)<<24,\n j9 = p[12] & 0xff | (p[13] & 0xff)<<8 | (p[14] & 0xff)<<16 | (p[15] & 0xff)<<24,\n j10 = c[ 8] & 0xff | (c[ 9] & 0xff)<<8 | (c[10] & 0xff)<<16 | (c[11] & 0xff)<<24,\n j11 = k[16] & 0xff | (k[17] & 0xff)<<8 | (k[18] & 0xff)<<16 | (k[19] & 0xff)<<24,\n j12 = k[20] & 0xff | (k[21] & 0xff)<<8 | (k[22] & 0xff)<<16 | (k[23] & 0xff)<<24,\n j13 = k[24] & 0xff | (k[25] & 0xff)<<8 | (k[26] & 0xff)<<16 | (k[27] & 0xff)<<24,\n j14 = k[28] & 0xff | (k[29] & 0xff)<<8 | (k[30] & 0xff)<<16 | (k[31] & 0xff)<<24,\n j15 = c[12] & 0xff | (c[13] & 0xff)<<8 | (c[14] & 0xff)<<16 | (c[15] & 0xff)<<24;\n\n var x0 = j0, x1 = j1, x2 = j2, x3 = j3, x4 = j4, x5 = j5, x6 = j6, x7 = j7,\n x8 = j8, x9 = j9, x10 = j10, x11 = j11, x12 = j12, x13 = j13, x14 = j14,\n x15 = j15, u;\n\n for (var i = 0; i < 20; i += 2) {\n u = x0 + x12 | 0;\n x4 ^= u<<7 | u>>>(32-7);\n u = x4 + x0 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x4 | 0;\n x12 ^= u<<13 | u>>>(32-13);\n u = x12 + x8 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x1 | 0;\n x9 ^= u<<7 | u>>>(32-7);\n u = x9 + x5 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x9 | 0;\n x1 ^= u<<13 | u>>>(32-13);\n u = x1 + x13 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x6 | 0;\n x14 ^= u<<7 | u>>>(32-7);\n u = x14 + x10 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x14 | 0;\n x6 ^= u<<13 | u>>>(32-13);\n u = x6 + x2 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x11 | 0;\n x3 ^= u<<7 | u>>>(32-7);\n u = x3 + x15 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x3 | 0;\n x11 ^= u<<13 | u>>>(32-13);\n u = x11 + x7 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n\n u = x0 + x3 | 0;\n x1 ^= u<<7 | u>>>(32-7);\n u = x1 + x0 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x1 | 0;\n x3 ^= u<<13 | u>>>(32-13);\n u = x3 + x2 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x4 | 0;\n x6 ^= u<<7 | u>>>(32-7);\n u = x6 + x5 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x6 | 0;\n x4 ^= u<<13 | u>>>(32-13);\n u = x4 + x7 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x9 | 0;\n x11 ^= u<<7 | u>>>(32-7);\n u = x11 + x10 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x11 | 0;\n x9 ^= u<<13 | u>>>(32-13);\n u = x9 + x8 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x14 | 0;\n x12 ^= u<<7 | u>>>(32-7);\n u = x12 + x15 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x12 | 0;\n x14 ^= u<<13 | u>>>(32-13);\n u = x14 + x13 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n }\n\n o[ 0] = x0 >>> 0 & 0xff;\n o[ 1] = x0 >>> 8 & 0xff;\n o[ 2] = x0 >>> 16 & 0xff;\n o[ 3] = x0 >>> 24 & 0xff;\n\n o[ 4] = x5 >>> 0 & 0xff;\n o[ 5] = x5 >>> 8 & 0xff;\n o[ 6] = x5 >>> 16 & 0xff;\n o[ 7] = x5 >>> 24 & 0xff;\n\n o[ 8] = x10 >>> 0 & 0xff;\n o[ 9] = x10 >>> 8 & 0xff;\n o[10] = x10 >>> 16 & 0xff;\n o[11] = x10 >>> 24 & 0xff;\n\n o[12] = x15 >>> 0 & 0xff;\n o[13] = x15 >>> 8 & 0xff;\n o[14] = x15 >>> 16 & 0xff;\n o[15] = x15 >>> 24 & 0xff;\n\n o[16] = x6 >>> 0 & 0xff;\n o[17] = x6 >>> 8 & 0xff;\n o[18] = x6 >>> 16 & 0xff;\n o[19] = x6 >>> 24 & 0xff;\n\n o[20] = x7 >>> 0 & 0xff;\n o[21] = x7 >>> 8 & 0xff;\n o[22] = x7 >>> 16 & 0xff;\n o[23] = x7 >>> 24 & 0xff;\n\n o[24] = x8 >>> 0 & 0xff;\n o[25] = x8 >>> 8 & 0xff;\n o[26] = x8 >>> 16 & 0xff;\n o[27] = x8 >>> 24 & 0xff;\n\n o[28] = x9 >>> 0 & 0xff;\n o[29] = x9 >>> 8 & 0xff;\n o[30] = x9 >>> 16 & 0xff;\n o[31] = x9 >>> 24 & 0xff;\n}\n\nfunction crypto_core_salsa20(out,inp,k,c) {\n core_salsa20(out,inp,k,c);\n}\n\nfunction crypto_core_hsalsa20(out,inp,k,c) {\n core_hsalsa20(out,inp,k,c);\n}\n\nvar sigma = new Uint8Array([101, 120, 112, 97, 110, 100, 32, 51, 50, 45, 98, 121, 116, 101, 32, 107]);\n // \"expand 32-byte k\"\n\nfunction crypto_stream_salsa20_xor(c,cpos,m,mpos,b,n,k) {\n var z = new Uint8Array(16), x = new Uint8Array(64);\n var u, i;\n for (i = 0; i < 16; i++) z[i] = 0;\n for (i = 0; i < 8; i++) z[i] = n[i];\n while (b >= 64) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < 64; i++) c[cpos+i] = m[mpos+i] ^ x[i];\n u = 1;\n for (i = 8; i < 16; i++) {\n u = u + (z[i] & 0xff) | 0;\n z[i] = u & 0xff;\n u >>>= 8;\n }\n b -= 64;\n cpos += 64;\n mpos += 64;\n }\n if (b > 0) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < b; i++) c[cpos+i] = m[mpos+i] ^ x[i];\n }\n return 0;\n}\n\nfunction crypto_stream_salsa20(c,cpos,b,n,k) {\n var z = new Uint8Array(16), x = new Uint8Array(64);\n var u, i;\n for (i = 0; i < 16; i++) z[i] = 0;\n for (i = 0; i < 8; i++) z[i] = n[i];\n while (b >= 64) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < 64; i++) c[cpos+i] = x[i];\n u = 1;\n for (i = 8; i < 16; i++) {\n u = u + (z[i] & 0xff) | 0;\n z[i] = u & 0xff;\n u >>>= 8;\n }\n b -= 64;\n cpos += 64;\n }\n if (b > 0) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < b; i++) c[cpos+i] = x[i];\n }\n return 0;\n}\n\nfunction crypto_stream(c,cpos,d,n,k) {\n var s = new Uint8Array(32);\n crypto_core_hsalsa20(s,n,k,sigma);\n var sn = new Uint8Array(8);\n for (var i = 0; i < 8; i++) sn[i] = n[i+16];\n return crypto_stream_salsa20(c,cpos,d,sn,s);\n}\n\nfunction crypto_stream_xor(c,cpos,m,mpos,d,n,k) {\n var s = new Uint8Array(32);\n crypto_core_hsalsa20(s,n,k,sigma);\n var sn = new Uint8Array(8);\n for (var i = 0; i < 8; i++) sn[i] = n[i+16];\n return crypto_stream_salsa20_xor(c,cpos,m,mpos,d,sn,s);\n}\n\n/*\n* Port of Andrew Moon's Poly1305-donna-16. Public domain.\n* https://github.com/floodyberry/poly1305-donna\n*/\n\nvar poly1305 = function(key) {\n this.buffer = new Uint8Array(16);\n this.r = new Uint16Array(10);\n this.h = new Uint16Array(10);\n this.pad = new Uint16Array(8);\n this.leftover = 0;\n this.fin = 0;\n\n var t0, t1, t2, t3, t4, t5, t6, t7;\n\n t0 = key[ 0] & 0xff | (key[ 1] & 0xff) << 8; this.r[0] = ( t0 ) & 0x1fff;\n t1 = key[ 2] & 0xff | (key[ 3] & 0xff) << 8; this.r[1] = ((t0 >>> 13) | (t1 << 3)) & 0x1fff;\n t2 = key[ 4] & 0xff | (key[ 5] & 0xff) << 8; this.r[2] = ((t1 >>> 10) | (t2 << 6)) & 0x1f03;\n t3 = key[ 6] & 0xff | (key[ 7] & 0xff) << 8; this.r[3] = ((t2 >>> 7) | (t3 << 9)) & 0x1fff;\n t4 = key[ 8] & 0xff | (key[ 9] & 0xff) << 8; this.r[4] = ((t3 >>> 4) | (t4 << 12)) & 0x00ff;\n this.r[5] = ((t4 >>> 1)) & 0x1ffe;\n t5 = key[10] & 0xff | (key[11] & 0xff) << 8; this.r[6] = ((t4 >>> 14) | (t5 << 2)) & 0x1fff;\n t6 = key[12] & 0xff | (key[13] & 0xff) << 8; this.r[7] = ((t5 >>> 11) | (t6 << 5)) & 0x1f81;\n t7 = key[14] & 0xff | (key[15] & 0xff) << 8; this.r[8] = ((t6 >>> 8) | (t7 << 8)) & 0x1fff;\n this.r[9] = ((t7 >>> 5)) & 0x007f;\n\n this.pad[0] = key[16] & 0xff | (key[17] & 0xff) << 8;\n this.pad[1] = key[18] & 0xff | (key[19] & 0xff) << 8;\n this.pad[2] = key[20] & 0xff | (key[21] & 0xff) << 8;\n this.pad[3] = key[22] & 0xff | (key[23] & 0xff) << 8;\n this.pad[4] = key[24] & 0xff | (key[25] & 0xff) << 8;\n this.pad[5] = key[26] & 0xff | (key[27] & 0xff) << 8;\n this.pad[6] = key[28] & 0xff | (key[29] & 0xff) << 8;\n this.pad[7] = key[30] & 0xff | (key[31] & 0xff) << 8;\n};\n\npoly1305.prototype.blocks = function(m, mpos, bytes) {\n var hibit = this.fin ? 0 : (1 << 11);\n var t0, t1, t2, t3, t4, t5, t6, t7, c;\n var d0, d1, d2, d3, d4, d5, d6, d7, d8, d9;\n\n var h0 = this.h[0],\n h1 = this.h[1],\n h2 = this.h[2],\n h3 = this.h[3],\n h4 = this.h[4],\n h5 = this.h[5],\n h6 = this.h[6],\n h7 = this.h[7],\n h8 = this.h[8],\n h9 = this.h[9];\n\n var r0 = this.r[0],\n r1 = this.r[1],\n r2 = this.r[2],\n r3 = this.r[3],\n r4 = this.r[4],\n r5 = this.r[5],\n r6 = this.r[6],\n r7 = this.r[7],\n r8 = this.r[8],\n r9 = this.r[9];\n\n while (bytes >= 16) {\n t0 = m[mpos+ 0] & 0xff | (m[mpos+ 1] & 0xff) << 8; h0 += ( t0 ) & 0x1fff;\n t1 = m[mpos+ 2] & 0xff | (m[mpos+ 3] & 0xff) << 8; h1 += ((t0 >>> 13) | (t1 << 3)) & 0x1fff;\n t2 = m[mpos+ 4] & 0xff | (m[mpos+ 5] & 0xff) << 8; h2 += ((t1 >>> 10) | (t2 << 6)) & 0x1fff;\n t3 = m[mpos+ 6] & 0xff | (m[mpos+ 7] & 0xff) << 8; h3 += ((t2 >>> 7) | (t3 << 9)) & 0x1fff;\n t4 = m[mpos+ 8] & 0xff | (m[mpos+ 9] & 0xff) << 8; h4 += ((t3 >>> 4) | (t4 << 12)) & 0x1fff;\n h5 += ((t4 >>> 1)) & 0x1fff;\n t5 = m[mpos+10] & 0xff | (m[mpos+11] & 0xff) << 8; h6 += ((t4 >>> 14) | (t5 << 2)) & 0x1fff;\n t6 = m[mpos+12] & 0xff | (m[mpos+13] & 0xff) << 8; h7 += ((t5 >>> 11) | (t6 << 5)) & 0x1fff;\n t7 = m[mpos+14] & 0xff | (m[mpos+15] & 0xff) << 8; h8 += ((t6 >>> 8) | (t7 << 8)) & 0x1fff;\n h9 += ((t7 >>> 5)) | hibit;\n\n c = 0;\n\n d0 = c;\n d0 += h0 * r0;\n d0 += h1 * (5 * r9);\n d0 += h2 * (5 * r8);\n d0 += h3 * (5 * r7);\n d0 += h4 * (5 * r6);\n c = (d0 >>> 13); d0 &= 0x1fff;\n d0 += h5 * (5 * r5);\n d0 += h6 * (5 * r4);\n d0 += h7 * (5 * r3);\n d0 += h8 * (5 * r2);\n d0 += h9 * (5 * r1);\n c += (d0 >>> 13); d0 &= 0x1fff;\n\n d1 = c;\n d1 += h0 * r1;\n d1 += h1 * r0;\n d1 += h2 * (5 * r9);\n d1 += h3 * (5 * r8);\n d1 += h4 * (5 * r7);\n c = (d1 >>> 13); d1 &= 0x1fff;\n d1 += h5 * (5 * r6);\n d1 += h6 * (5 * r5);\n d1 += h7 * (5 * r4);\n d1 += h8 * (5 * r3);\n d1 += h9 * (5 * r2);\n c += (d1 >>> 13); d1 &= 0x1fff;\n\n d2 = c;\n d2 += h0 * r2;\n d2 += h1 * r1;\n d2 += h2 * r0;\n d2 += h3 * (5 * r9);\n d2 += h4 * (5 * r8);\n c = (d2 >>> 13); d2 &= 0x1fff;\n d2 += h5 * (5 * r7);\n d2 += h6 * (5 * r6);\n d2 += h7 * (5 * r5);\n d2 += h8 * (5 * r4);\n d2 += h9 * (5 * r3);\n c += (d2 >>> 13); d2 &= 0x1fff;\n\n d3 = c;\n d3 += h0 * r3;\n d3 += h1 * r2;\n d3 += h2 * r1;\n d3 += h3 * r0;\n d3 += h4 * (5 * r9);\n c = (d3 >>> 13); d3 &= 0x1fff;\n d3 += h5 * (5 * r8);\n d3 += h6 * (5 * r7);\n d3 += h7 * (5 * r6);\n d3 += h8 * (5 * r5);\n d3 += h9 * (5 * r4);\n c += (d3 >>> 13); d3 &= 0x1fff;\n\n d4 = c;\n d4 += h0 * r4;\n d4 += h1 * r3;\n d4 += h2 * r2;\n d4 += h3 * r1;\n d4 += h4 * r0;\n c = (d4 >>> 13); d4 &= 0x1fff;\n d4 += h5 * (5 * r9);\n d4 += h6 * (5 * r8);\n d4 += h7 * (5 * r7);\n d4 += h8 * (5 * r6);\n d4 += h9 * (5 * r5);\n c += (d4 >>> 13); d4 &= 0x1fff;\n\n d5 = c;\n d5 += h0 * r5;\n d5 += h1 * r4;\n d5 += h2 * r3;\n d5 += h3 * r2;\n d5 += h4 * r1;\n c = (d5 >>> 13); d5 &= 0x1fff;\n d5 += h5 * r0;\n d5 += h6 * (5 * r9);\n d5 += h7 * (5 * r8);\n d5 += h8 * (5 * r7);\n d5 += h9 * (5 * r6);\n c += (d5 >>> 13); d5 &= 0x1fff;\n\n d6 = c;\n d6 += h0 * r6;\n d6 += h1 * r5;\n d6 += h2 * r4;\n d6 += h3 * r3;\n d6 += h4 * r2;\n c = (d6 >>> 13); d6 &= 0x1fff;\n d6 += h5 * r1;\n d6 += h6 * r0;\n d6 += h7 * (5 * r9);\n d6 += h8 * (5 * r8);\n d6 += h9 * (5 * r7);\n c += (d6 >>> 13); d6 &= 0x1fff;\n\n d7 = c;\n d7 += h0 * r7;\n d7 += h1 * r6;\n d7 += h2 * r5;\n d7 += h3 * r4;\n d7 += h4 * r3;\n c = (d7 >>> 13); d7 &= 0x1fff;\n d7 += h5 * r2;\n d7 += h6 * r1;\n d7 += h7 * r0;\n d7 += h8 * (5 * r9);\n d7 += h9 * (5 * r8);\n c += (d7 >>> 13); d7 &= 0x1fff;\n\n d8 = c;\n d8 += h0 * r8;\n d8 += h1 * r7;\n d8 += h2 * r6;\n d8 += h3 * r5;\n d8 += h4 * r4;\n c = (d8 >>> 13); d8 &= 0x1fff;\n d8 += h5 * r3;\n d8 += h6 * r2;\n d8 += h7 * r1;\n d8 += h8 * r0;\n d8 += h9 * (5 * r9);\n c += (d8 >>> 13); d8 &= 0x1fff;\n\n d9 = c;\n d9 += h0 * r9;\n d9 += h1 * r8;\n d9 += h2 * r7;\n d9 += h3 * r6;\n d9 += h4 * r5;\n c = (d9 >>> 13); d9 &= 0x1fff;\n d9 += h5 * r4;\n d9 += h6 * r3;\n d9 += h7 * r2;\n d9 += h8 * r1;\n d9 += h9 * r0;\n c += (d9 >>> 13); d9 &= 0x1fff;\n\n c = (((c << 2) + c)) | 0;\n c = (c + d0) | 0;\n d0 = c & 0x1fff;\n c = (c >>> 13);\n d1 += c;\n\n h0 = d0;\n h1 = d1;\n h2 = d2;\n h3 = d3;\n h4 = d4;\n h5 = d5;\n h6 = d6;\n h7 = d7;\n h8 = d8;\n h9 = d9;\n\n mpos += 16;\n bytes -= 16;\n }\n this.h[0] = h0;\n this.h[1] = h1;\n this.h[2] = h2;\n this.h[3] = h3;\n this.h[4] = h4;\n this.h[5] = h5;\n this.h[6] = h6;\n this.h[7] = h7;\n this.h[8] = h8;\n this.h[9] = h9;\n};\n\npoly1305.prototype.finish = function(mac, macpos) {\n var g = new Uint16Array(10);\n var c, mask, f, i;\n\n if (this.leftover) {\n i = this.leftover;\n this.buffer[i++] = 1;\n for (; i < 16; i++) this.buffer[i] = 0;\n this.fin = 1;\n this.blocks(this.buffer, 0, 16);\n }\n\n c = this.h[1] >>> 13;\n this.h[1] &= 0x1fff;\n for (i = 2; i < 10; i++) {\n this.h[i] += c;\n c = this.h[i] >>> 13;\n this.h[i] &= 0x1fff;\n }\n this.h[0] += (c * 5);\n c = this.h[0] >>> 13;\n this.h[0] &= 0x1fff;\n this.h[1] += c;\n c = this.h[1] >>> 13;\n this.h[1] &= 0x1fff;\n this.h[2] += c;\n\n g[0] = this.h[0] + 5;\n c = g[0] >>> 13;\n g[0] &= 0x1fff;\n for (i = 1; i < 10; i++) {\n g[i] = this.h[i] + c;\n c = g[i] >>> 13;\n g[i] &= 0x1fff;\n }\n g[9] -= (1 << 13);\n\n mask = (c ^ 1) - 1;\n for (i = 0; i < 10; i++) g[i] &= mask;\n mask = ~mask;\n for (i = 0; i < 10; i++) this.h[i] = (this.h[i] & mask) | g[i];\n\n this.h[0] = ((this.h[0] ) | (this.h[1] << 13) ) & 0xffff;\n this.h[1] = ((this.h[1] >>> 3) | (this.h[2] << 10) ) & 0xffff;\n this.h[2] = ((this.h[2] >>> 6) | (this.h[3] << 7) ) & 0xffff;\n this.h[3] = ((this.h[3] >>> 9) | (this.h[4] << 4) ) & 0xffff;\n this.h[4] = ((this.h[4] >>> 12) | (this.h[5] << 1) | (this.h[6] << 14)) & 0xffff;\n this.h[5] = ((this.h[6] >>> 2) | (this.h[7] << 11) ) & 0xffff;\n this.h[6] = ((this.h[7] >>> 5) | (this.h[8] << 8) ) & 0xffff;\n this.h[7] = ((this.h[8] >>> 8) | (this.h[9] << 5) ) & 0xffff;\n\n f = this.h[0] + this.pad[0];\n this.h[0] = f & 0xffff;\n for (i = 1; i < 8; i++) {\n f = (((this.h[i] + this.pad[i]) | 0) + (f >>> 16)) | 0;\n this.h[i] = f & 0xffff;\n }\n\n mac[macpos+ 0] = (this.h[0] >>> 0) & 0xff;\n mac[macpos+ 1] = (this.h[0] >>> 8) & 0xff;\n mac[macpos+ 2] = (this.h[1] >>> 0) & 0xff;\n mac[macpos+ 3] = (this.h[1] >>> 8) & 0xff;\n mac[macpos+ 4] = (this.h[2] >>> 0) & 0xff;\n mac[macpos+ 5] = (this.h[2] >>> 8) & 0xff;\n mac[macpos+ 6] = (this.h[3] >>> 0) & 0xff;\n mac[macpos+ 7] = (this.h[3] >>> 8) & 0xff;\n mac[macpos+ 8] = (this.h[4] >>> 0) & 0xff;\n mac[macpos+ 9] = (this.h[4] >>> 8) & 0xff;\n mac[macpos+10] = (this.h[5] >>> 0) & 0xff;\n mac[macpos+11] = (this.h[5] >>> 8) & 0xff;\n mac[macpos+12] = (this.h[6] >>> 0) & 0xff;\n mac[macpos+13] = (this.h[6] >>> 8) & 0xff;\n mac[macpos+14] = (this.h[7] >>> 0) & 0xff;\n mac[macpos+15] = (this.h[7] >>> 8) & 0xff;\n};\n\npoly1305.prototype.update = function(m, mpos, bytes) {\n var i, want;\n\n if (this.leftover) {\n want = (16 - this.leftover);\n if (want > bytes)\n want = bytes;\n for (i = 0; i < want; i++)\n this.buffer[this.leftover + i] = m[mpos+i];\n bytes -= want;\n mpos += want;\n this.leftover += want;\n if (this.leftover < 16)\n return;\n this.blocks(this.buffer, 0, 16);\n this.leftover = 0;\n }\n\n if (bytes >= 16) {\n want = bytes - (bytes % 16);\n this.blocks(m, mpos, want);\n mpos += want;\n bytes -= want;\n }\n\n if (bytes) {\n for (i = 0; i < bytes; i++)\n this.buffer[this.leftover + i] = m[mpos+i];\n this.leftover += bytes;\n }\n};\n\nfunction crypto_onetimeauth(out, outpos, m, mpos, n, k) {\n var s = new poly1305(k);\n s.update(m, mpos, n);\n s.finish(out, outpos);\n return 0;\n}\n\nfunction crypto_onetimeauth_verify(h, hpos, m, mpos, n, k) {\n var x = new Uint8Array(16);\n crypto_onetimeauth(x,0,m,mpos,n,k);\n return crypto_verify_16(h,hpos,x,0);\n}\n\nfunction crypto_secretbox(c,m,d,n,k) {\n var i;\n if (d < 32) return -1;\n crypto_stream_xor(c,0,m,0,d,n,k);\n crypto_onetimeauth(c, 16, c, 32, d - 32, c);\n for (i = 0; i < 16; i++) c[i] = 0;\n return 0;\n}\n\nfunction crypto_secretbox_open(m,c,d,n,k) {\n var i;\n var x = new Uint8Array(32);\n if (d < 32) return -1;\n crypto_stream(x,0,32,n,k);\n if (crypto_onetimeauth_verify(c, 16,c, 32,d - 32,x) !== 0) return -1;\n crypto_stream_xor(m,0,c,0,d,n,k);\n for (i = 0; i < 32; i++) m[i] = 0;\n return 0;\n}\n\nfunction set25519(r, a) {\n var i;\n for (i = 0; i < 16; i++) r[i] = a[i]|0;\n}\n\nfunction car25519(o) {\n var i, v, c = 1;\n for (i = 0; i < 16; i++) {\n v = o[i] + c + 65535;\n c = Math.floor(v / 65536);\n o[i] = v - c * 65536;\n }\n o[0] += c-1 + 37 * (c-1);\n}\n\nfunction sel25519(p, q, b) {\n var t, c = ~(b-1);\n for (var i = 0; i < 16; i++) {\n t = c & (p[i] ^ q[i]);\n p[i] ^= t;\n q[i] ^= t;\n }\n}\n\nfunction pack25519(o, n) {\n var i, j, b;\n var m = gf(), t = gf();\n for (i = 0; i < 16; i++) t[i] = n[i];\n car25519(t);\n car25519(t);\n car25519(t);\n for (j = 0; j < 2; j++) {\n m[0] = t[0] - 0xffed;\n for (i = 1; i < 15; i++) {\n m[i] = t[i] - 0xffff - ((m[i-1]>>16) & 1);\n m[i-1] &= 0xffff;\n }\n m[15] = t[15] - 0x7fff - ((m[14]>>16) & 1);\n b = (m[15]>>16) & 1;\n m[14] &= 0xffff;\n sel25519(t, m, 1-b);\n }\n for (i = 0; i < 16; i++) {\n o[2*i] = t[i] & 0xff;\n o[2*i+1] = t[i]>>8;\n }\n}\n\nfunction neq25519(a, b) {\n var c = new Uint8Array(32), d = new Uint8Array(32);\n pack25519(c, a);\n pack25519(d, b);\n return crypto_verify_32(c, 0, d, 0);\n}\n\nfunction par25519(a) {\n var d = new Uint8Array(32);\n pack25519(d, a);\n return d[0] & 1;\n}\n\nfunction unpack25519(o, n) {\n var i;\n for (i = 0; i < 16; i++) o[i] = n[2*i] + (n[2*i+1] << 8);\n o[15] &= 0x7fff;\n}\n\nfunction A(o, a, b) {\n for (var i = 0; i < 16; i++) o[i] = a[i] + b[i];\n}\n\nfunction Z(o, a, b) {\n for (var i = 0; i < 16; i++) o[i] = a[i] - b[i];\n}\n\nfunction M(o, a, b) {\n var v, c,\n t0 = 0, t1 = 0, t2 = 0, t3 = 0, t4 = 0, t5 = 0, t6 = 0, t7 = 0,\n t8 = 0, t9 = 0, t10 = 0, t11 = 0, t12 = 0, t13 = 0, t14 = 0, t15 = 0,\n t16 = 0, t17 = 0, t18 = 0, t19 = 0, t20 = 0, t21 = 0, t22 = 0, t23 = 0,\n t24 = 0, t25 = 0, t26 = 0, t27 = 0, t28 = 0, t29 = 0, t30 = 0,\n b0 = b[0],\n b1 = b[1],\n b2 = b[2],\n b3 = b[3],\n b4 = b[4],\n b5 = b[5],\n b6 = b[6],\n b7 = b[7],\n b8 = b[8],\n b9 = b[9],\n b10 = b[10],\n b11 = b[11],\n b12 = b[12],\n b13 = b[13],\n b14 = b[14],\n b15 = b[15];\n\n v = a[0];\n t0 += v * b0;\n t1 += v * b1;\n t2 += v * b2;\n t3 += v * b3;\n t4 += v * b4;\n t5 += v * b5;\n t6 += v * b6;\n t7 += v * b7;\n t8 += v * b8;\n t9 += v * b9;\n t10 += v * b10;\n t11 += v * b11;\n t12 += v * b12;\n t13 += v * b13;\n t14 += v * b14;\n t15 += v * b15;\n v = a[1];\n t1 += v * b0;\n t2 += v * b1;\n t3 += v * b2;\n t4 += v * b3;\n t5 += v * b4;\n t6 += v * b5;\n t7 += v * b6;\n t8 += v * b7;\n t9 += v * b8;\n t10 += v * b9;\n t11 += v * b10;\n t12 += v * b11;\n t13 += v * b12;\n t14 += v * b13;\n t15 += v * b14;\n t16 += v * b15;\n v = a[2];\n t2 += v * b0;\n t3 += v * b1;\n t4 += v * b2;\n t5 += v * b3;\n t6 += v * b4;\n t7 += v * b5;\n t8 += v * b6;\n t9 += v * b7;\n t10 += v * b8;\n t11 += v * b9;\n t12 += v * b10;\n t13 += v * b11;\n t14 += v * b12;\n t15 += v * b13;\n t16 += v * b14;\n t17 += v * b15;\n v = a[3];\n t3 += v * b0;\n t4 += v * b1;\n t5 += v * b2;\n t6 += v * b3;\n t7 += v * b4;\n t8 += v * b5;\n t9 += v * b6;\n t10 += v * b7;\n t11 += v * b8;\n t12 += v * b9;\n t13 += v * b10;\n t14 += v * b11;\n t15 += v * b12;\n t16 += v * b13;\n t17 += v * b14;\n t18 += v * b15;\n v = a[4];\n t4 += v * b0;\n t5 += v * b1;\n t6 += v * b2;\n t7 += v * b3;\n t8 += v * b4;\n t9 += v * b5;\n t10 += v * b6;\n t11 += v * b7;\n t12 += v * b8;\n t13 += v * b9;\n t14 += v * b10;\n t15 += v * b11;\n t16 += v * b12;\n t17 += v * b13;\n t18 += v * b14;\n t19 += v * b15;\n v = a[5];\n t5 += v * b0;\n t6 += v * b1;\n t7 += v * b2;\n t8 += v * b3;\n t9 += v * b4;\n t10 += v * b5;\n t11 += v * b6;\n t12 += v * b7;\n t13 += v * b8;\n t14 += v * b9;\n t15 += v * b10;\n t16 += v * b11;\n t17 += v * b12;\n t18 += v * b13;\n t19 += v * b14;\n t20 += v * b15;\n v = a[6];\n t6 += v * b0;\n t7 += v * b1;\n t8 += v * b2;\n t9 += v * b3;\n t10 += v * b4;\n t11 += v * b5;\n t12 += v * b6;\n t13 += v * b7;\n t14 += v * b8;\n t15 += v * b9;\n t16 += v * b10;\n t17 += v * b11;\n t18 += v * b12;\n t19 += v * b13;\n t20 += v * b14;\n t21 += v * b15;\n v = a[7];\n t7 += v * b0;\n t8 += v * b1;\n t9 += v * b2;\n t10 += v * b3;\n t11 += v * b4;\n t12 += v * b5;\n t13 += v * b6;\n t14 += v * b7;\n t15 += v * b8;\n t16 += v * b9;\n t17 += v * b10;\n t18 += v * b11;\n t19 += v * b12;\n t20 += v * b13;\n t21 += v * b14;\n t22 += v * b15;\n v = a[8];\n t8 += v * b0;\n t9 += v * b1;\n t10 += v * b2;\n t11 += v * b3;\n t12 += v * b4;\n t13 += v * b5;\n t14 += v * b6;\n t15 += v * b7;\n t16 += v * b8;\n t17 += v * b9;\n t18 += v * b10;\n t19 += v * b11;\n t20 += v * b12;\n t21 += v * b13;\n t22 += v * b14;\n t23 += v * b15;\n v = a[9];\n t9 += v * b0;\n t10 += v * b1;\n t11 += v * b2;\n t12 += v * b3;\n t13 += v * b4;\n t14 += v * b5;\n t15 += v * b6;\n t16 += v * b7;\n t17 += v * b8;\n t18 += v * b9;\n t19 += v * b10;\n t20 += v * b11;\n t21 += v * b12;\n t22 += v * b13;\n t23 += v * b14;\n t24 += v * b15;\n v = a[10];\n t10 += v * b0;\n t11 += v * b1;\n t12 += v * b2;\n t13 += v * b3;\n t14 += v * b4;\n t15 += v * b5;\n t16 += v * b6;\n t17 += v * b7;\n t18 += v * b8;\n t19 += v * b9;\n t20 += v * b10;\n t21 += v * b11;\n t22 += v * b12;\n t23 += v * b13;\n t24 += v * b14;\n t25 += v * b15;\n v = a[11];\n t11 += v * b0;\n t12 += v * b1;\n t13 += v * b2;\n t14 += v * b3;\n t15 += v * b4;\n t16 += v * b5;\n t17 += v * b6;\n t18 += v * b7;\n t19 += v * b8;\n t20 += v * b9;\n t21 += v * b10;\n t22 += v * b11;\n t23 += v * b12;\n t24 += v * b13;\n t25 += v * b14;\n t26 += v * b15;\n v = a[12];\n t12 += v * b0;\n t13 += v * b1;\n t14 += v * b2;\n t15 += v * b3;\n t16 += v * b4;\n t17 += v * b5;\n t18 += v * b6;\n t19 += v * b7;\n t20 += v * b8;\n t21 += v * b9;\n t22 += v * b10;\n t23 += v * b11;\n t24 += v * b12;\n t25 += v * b13;\n t26 += v * b14;\n t27 += v * b15;\n v = a[13];\n t13 += v * b0;\n t14 += v * b1;\n t15 += v * b2;\n t16 += v * b3;\n t17 += v * b4;\n t18 += v * b5;\n t19 += v * b6;\n t20 += v * b7;\n t21 += v * b8;\n t22 += v * b9;\n t23 += v * b10;\n t24 += v * b11;\n t25 += v * b12;\n t26 += v * b13;\n t27 += v * b14;\n t28 += v * b15;\n v = a[14];\n t14 += v * b0;\n t15 += v * b1;\n t16 += v * b2;\n t17 += v * b3;\n t18 += v * b4;\n t19 += v * b5;\n t20 += v * b6;\n t21 += v * b7;\n t22 += v * b8;\n t23 += v * b9;\n t24 += v * b10;\n t25 += v * b11;\n t26 += v * b12;\n t27 += v * b13;\n t28 += v * b14;\n t29 += v * b15;\n v = a[15];\n t15 += v * b0;\n t16 += v * b1;\n t17 += v * b2;\n t18 += v * b3;\n t19 += v * b4;\n t20 += v * b5;\n t21 += v * b6;\n t22 += v * b7;\n t23 += v * b8;\n t24 += v * b9;\n t25 += v * b10;\n t26 += v * b11;\n t27 += v * b12;\n t28 += v * b13;\n t29 += v * b14;\n t30 += v * b15;\n\n t0 += 38 * t16;\n t1 += 38 * t17;\n t2 += 38 * t18;\n t3 += 38 * t19;\n t4 += 38 * t20;\n t5 += 38 * t21;\n t6 += 38 * t22;\n t7 += 38 * t23;\n t8 += 38 * t24;\n t9 += 38 * t25;\n t10 += 38 * t26;\n t11 += 38 * t27;\n t12 += 38 * t28;\n t13 += 38 * t29;\n t14 += 38 * t30;\n // t15 left as is\n\n // first car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c-1 + 37 * (c-1);\n\n // second car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c-1 + 37 * (c-1);\n\n o[ 0] = t0;\n o[ 1] = t1;\n o[ 2] = t2;\n o[ 3] = t3;\n o[ 4] = t4;\n o[ 5] = t5;\n o[ 6] = t6;\n o[ 7] = t7;\n o[ 8] = t8;\n o[ 9] = t9;\n o[10] = t10;\n o[11] = t11;\n o[12] = t12;\n o[13] = t13;\n o[14] = t14;\n o[15] = t15;\n}\n\nfunction S(o, a) {\n M(o, a, a);\n}\n\nfunction inv25519(o, i) {\n var c = gf();\n var a;\n for (a = 0; a < 16; a++) c[a] = i[a];\n for (a = 253; a >= 0; a--) {\n S(c, c);\n if(a !== 2 && a !== 4) M(c, c, i);\n }\n for (a = 0; a < 16; a++) o[a] = c[a];\n}\n\nfunction pow2523(o, i) {\n var c = gf();\n var a;\n for (a = 0; a < 16; a++) c[a] = i[a];\n for (a = 250; a >= 0; a--) {\n S(c, c);\n if(a !== 1) M(c, c, i);\n }\n for (a = 0; a < 16; a++) o[a] = c[a];\n}\n\nfunction crypto_scalarmult(q, n, p) {\n var z = new Uint8Array(32);\n var x = new Float64Array(80), r, i;\n var a = gf(), b = gf(), c = gf(),\n d = gf(), e = gf(), f = gf();\n for (i = 0; i < 31; i++) z[i] = n[i];\n z[31]=(n[31]&127)|64;\n z[0]&=248;\n unpack25519(x,p);\n for (i = 0; i < 16; i++) {\n b[i]=x[i];\n d[i]=a[i]=c[i]=0;\n }\n a[0]=d[0]=1;\n for (i=254; i>=0; --i) {\n r=(z[i>>>3]>>>(i&7))&1;\n sel25519(a,b,r);\n sel25519(c,d,r);\n A(e,a,c);\n Z(a,a,c);\n A(c,b,d);\n Z(b,b,d);\n S(d,e);\n S(f,a);\n M(a,c,a);\n M(c,b,e);\n A(e,a,c);\n Z(a,a,c);\n S(b,a);\n Z(c,d,f);\n M(a,c,_121665);\n A(a,a,d);\n M(c,c,a);\n M(a,d,f);\n M(d,b,x);\n S(b,e);\n sel25519(a,b,r);\n sel25519(c,d,r);\n }\n for (i = 0; i < 16; i++) {\n x[i+16]=a[i];\n x[i+32]=c[i];\n x[i+48]=b[i];\n x[i+64]=d[i];\n }\n var x32 = x.subarray(32);\n var x16 = x.subarray(16);\n inv25519(x32,x32);\n M(x16,x16,x32);\n pack25519(q,x16);\n return 0;\n}\n\nfunction crypto_scalarmult_base(q, n) {\n return crypto_scalarmult(q, n, _9);\n}\n\nfunction crypto_box_keypair(y, x) {\n randombytes(x, 32);\n return crypto_scalarmult_base(y, x);\n}\n\nfunction crypto_box_beforenm(k, y, x) {\n var s = new Uint8Array(32);\n crypto_scalarmult(s, x, y);\n return crypto_core_hsalsa20(k, _0, s, sigma);\n}\n\nvar crypto_box_afternm = crypto_secretbox;\nvar crypto_box_open_afternm = crypto_secretbox_open;\n\nfunction crypto_box(c, m, d, n, y, x) {\n var k = new Uint8Array(32);\n crypto_box_beforenm(k, y, x);\n return crypto_box_afternm(c, m, d, n, k);\n}\n\nfunction crypto_box_open(m, c, d, n, y, x) {\n var k = new Uint8Array(32);\n crypto_box_beforenm(k, y, x);\n return crypto_box_open_afternm(m, c, d, n, k);\n}\n\nvar K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n];\n\nfunction crypto_hashblocks_hl(hh, hl, m, n) {\n var wh = new Int32Array(16), wl = new Int32Array(16),\n bh0, bh1, bh2, bh3, bh4, bh5, bh6, bh7,\n bl0, bl1, bl2, bl3, bl4, bl5, bl6, bl7,\n th, tl, i, j, h, l, a, b, c, d;\n\n var ah0 = hh[0],\n ah1 = hh[1],\n ah2 = hh[2],\n ah3 = hh[3],\n ah4 = hh[4],\n ah5 = hh[5],\n ah6 = hh[6],\n ah7 = hh[7],\n\n al0 = hl[0],\n al1 = hl[1],\n al2 = hl[2],\n al3 = hl[3],\n al4 = hl[4],\n al5 = hl[5],\n al6 = hl[6],\n al7 = hl[7];\n\n var pos = 0;\n while (n >= 128) {\n for (i = 0; i < 16; i++) {\n j = 8 * i + pos;\n wh[i] = (m[j+0] << 24) | (m[j+1] << 16) | (m[j+2] << 8) | m[j+3];\n wl[i] = (m[j+4] << 24) | (m[j+5] << 16) | (m[j+6] << 8) | m[j+7];\n }\n for (i = 0; i < 80; i++) {\n bh0 = ah0;\n bh1 = ah1;\n bh2 = ah2;\n bh3 = ah3;\n bh4 = ah4;\n bh5 = ah5;\n bh6 = ah6;\n bh7 = ah7;\n\n bl0 = al0;\n bl1 = al1;\n bl2 = al2;\n bl3 = al3;\n bl4 = al4;\n bl5 = al5;\n bl6 = al6;\n bl7 = al7;\n\n // add\n h = ah7;\n l = al7;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n // Sigma1\n h = ((ah4 >>> 14) | (al4 << (32-14))) ^ ((ah4 >>> 18) | (al4 << (32-18))) ^ ((al4 >>> (41-32)) | (ah4 << (32-(41-32))));\n l = ((al4 >>> 14) | (ah4 << (32-14))) ^ ((al4 >>> 18) | (ah4 << (32-18))) ^ ((ah4 >>> (41-32)) | (al4 << (32-(41-32))));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // Ch\n h = (ah4 & ah5) ^ (~ah4 & ah6);\n l = (al4 & al5) ^ (~al4 & al6);\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // K\n h = K[i*2];\n l = K[i*2+1];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // w\n h = wh[i%16];\n l = wl[i%16];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n th = c & 0xffff | d << 16;\n tl = a & 0xffff | b << 16;\n\n // add\n h = th;\n l = tl;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n // Sigma0\n h = ((ah0 >>> 28) | (al0 << (32-28))) ^ ((al0 >>> (34-32)) | (ah0 << (32-(34-32)))) ^ ((al0 >>> (39-32)) | (ah0 << (32-(39-32))));\n l = ((al0 >>> 28) | (ah0 << (32-28))) ^ ((ah0 >>> (34-32)) | (al0 << (32-(34-32)))) ^ ((ah0 >>> (39-32)) | (al0 << (32-(39-32))));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // Maj\n h = (ah0 & ah1) ^ (ah0 & ah2) ^ (ah1 & ah2);\n l = (al0 & al1) ^ (al0 & al2) ^ (al1 & al2);\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n bh7 = (c & 0xffff) | (d << 16);\n bl7 = (a & 0xffff) | (b << 16);\n\n // add\n h = bh3;\n l = bl3;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = th;\n l = tl;\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n bh3 = (c & 0xffff) | (d << 16);\n bl3 = (a & 0xffff) | (b << 16);\n\n ah1 = bh0;\n ah2 = bh1;\n ah3 = bh2;\n ah4 = bh3;\n ah5 = bh4;\n ah6 = bh5;\n ah7 = bh6;\n ah0 = bh7;\n\n al1 = bl0;\n al2 = bl1;\n al3 = bl2;\n al4 = bl3;\n al5 = bl4;\n al6 = bl5;\n al7 = bl6;\n al0 = bl7;\n\n if (i%16 === 15) {\n for (j = 0; j < 16; j++) {\n // add\n h = wh[j];\n l = wl[j];\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = wh[(j+9)%16];\n l = wl[(j+9)%16];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // sigma0\n th = wh[(j+1)%16];\n tl = wl[(j+1)%16];\n h = ((th >>> 1) | (tl << (32-1))) ^ ((th >>> 8) | (tl << (32-8))) ^ (th >>> 7);\n l = ((tl >>> 1) | (th << (32-1))) ^ ((tl >>> 8) | (th << (32-8))) ^ ((tl >>> 7) | (th << (32-7)));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // sigma1\n th = wh[(j+14)%16];\n tl = wl[(j+14)%16];\n h = ((th >>> 19) | (tl << (32-19))) ^ ((tl >>> (61-32)) | (th << (32-(61-32)))) ^ (th >>> 6);\n l = ((tl >>> 19) | (th << (32-19))) ^ ((th >>> (61-32)) | (tl << (32-(61-32)))) ^ ((tl >>> 6) | (th << (32-6)));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n wh[j] = (c & 0xffff) | (d << 16);\n wl[j] = (a & 0xffff) | (b << 16);\n }\n }\n }\n\n // add\n h = ah0;\n l = al0;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[0];\n l = hl[0];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[0] = ah0 = (c & 0xffff) | (d << 16);\n hl[0] = al0 = (a & 0xffff) | (b << 16);\n\n h = ah1;\n l = al1;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[1];\n l = hl[1];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[1] = ah1 = (c & 0xffff) | (d << 16);\n hl[1] = al1 = (a & 0xffff) | (b << 16);\n\n h = ah2;\n l = al2;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[2];\n l = hl[2];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[2] = ah2 = (c & 0xffff) | (d << 16);\n hl[2] = al2 = (a & 0xffff) | (b << 16);\n\n h = ah3;\n l = al3;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[3];\n l = hl[3];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[3] = ah3 = (c & 0xffff) | (d << 16);\n hl[3] = al3 = (a & 0xffff) | (b << 16);\n\n h = ah4;\n l = al4;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[4];\n l = hl[4];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[4] = ah4 = (c & 0xffff) | (d << 16);\n hl[4] = al4 = (a & 0xffff) | (b << 16);\n\n h = ah5;\n l = al5;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[5];\n l = hl[5];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[5] = ah5 = (c & 0xffff) | (d << 16);\n hl[5] = al5 = (a & 0xffff) | (b << 16);\n\n h = ah6;\n l = al6;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[6];\n l = hl[6];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[6] = ah6 = (c & 0xffff) | (d << 16);\n hl[6] = al6 = (a & 0xffff) | (b << 16);\n\n h = ah7;\n l = al7;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[7];\n l = hl[7];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[7] = ah7 = (c & 0xffff) | (d << 16);\n hl[7] = al7 = (a & 0xffff) | (b << 16);\n\n pos += 128;\n n -= 128;\n }\n\n return n;\n}\n\nfunction crypto_hash(out, m, n) {\n var hh = new Int32Array(8),\n hl = new Int32Array(8),\n x = new Uint8Array(256),\n i, b = n;\n\n hh[0] = 0x6a09e667;\n hh[1] = 0xbb67ae85;\n hh[2] = 0x3c6ef372;\n hh[3] = 0xa54ff53a;\n hh[4] = 0x510e527f;\n hh[5] = 0x9b05688c;\n hh[6] = 0x1f83d9ab;\n hh[7] = 0x5be0cd19;\n\n hl[0] = 0xf3bcc908;\n hl[1] = 0x84caa73b;\n hl[2] = 0xfe94f82b;\n hl[3] = 0x5f1d36f1;\n hl[4] = 0xade682d1;\n hl[5] = 0x2b3e6c1f;\n hl[6] = 0xfb41bd6b;\n hl[7] = 0x137e2179;\n\n crypto_hashblocks_hl(hh, hl, m, n);\n n %= 128;\n\n for (i = 0; i < n; i++) x[i] = m[b-n+i];\n x[n] = 128;\n\n n = 256-128*(n<112?1:0);\n x[n-9] = 0;\n ts64(x, n-8, (b / 0x20000000) | 0, b << 3);\n crypto_hashblocks_hl(hh, hl, x, n);\n\n for (i = 0; i < 8; i++) ts64(out, 8*i, hh[i], hl[i]);\n\n return 0;\n}\n\nfunction add(p, q) {\n var a = gf(), b = gf(), c = gf(),\n d = gf(), e = gf(), f = gf(),\n g = gf(), h = gf(), t = gf();\n\n Z(a, p[1], p[0]);\n Z(t, q[1], q[0]);\n M(a, a, t);\n A(b, p[0], p[1]);\n A(t, q[0], q[1]);\n M(b, b, t);\n M(c, p[3], q[3]);\n M(c, c, D2);\n M(d, p[2], q[2]);\n A(d, d, d);\n Z(e, b, a);\n Z(f, d, c);\n A(g, d, c);\n A(h, b, a);\n\n M(p[0], e, f);\n M(p[1], h, g);\n M(p[2], g, f);\n M(p[3], e, h);\n}\n\nfunction cswap(p, q, b) {\n var i;\n for (i = 0; i < 4; i++) {\n sel25519(p[i], q[i], b);\n }\n}\n\nfunction pack(r, p) {\n var tx = gf(), ty = gf(), zi = gf();\n inv25519(zi, p[2]);\n M(tx, p[0], zi);\n M(ty, p[1], zi);\n pack25519(r, ty);\n r[31] ^= par25519(tx) << 7;\n}\n\nfunction scalarmult(p, q, s) {\n var b, i;\n set25519(p[0], gf0);\n set25519(p[1], gf1);\n set25519(p[2], gf1);\n set25519(p[3], gf0);\n for (i = 255; i >= 0; --i) {\n b = (s[(i/8)|0] >> (i&7)) & 1;\n cswap(p, q, b);\n add(q, p);\n add(p, p);\n cswap(p, q, b);\n }\n}\n\nfunction scalarbase(p, s) {\n var q = [gf(), gf(), gf(), gf()];\n set25519(q[0], X);\n set25519(q[1], Y);\n set25519(q[2], gf1);\n M(q[3], X, Y);\n scalarmult(p, q, s);\n}\n\nfunction crypto_sign_keypair(pk, sk, seeded) {\n var d = new Uint8Array(64);\n var p = [gf(), gf(), gf(), gf()];\n var i;\n\n if (!seeded) randombytes(sk, 32);\n crypto_hash(d, sk, 32);\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n\n scalarbase(p, d);\n pack(pk, p);\n\n for (i = 0; i < 32; i++) sk[i+32] = pk[i];\n return 0;\n}\n\nvar L = new Float64Array([0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x10]);\n\nfunction modL(r, x) {\n var carry, i, j, k;\n for (i = 63; i >= 32; --i) {\n carry = 0;\n for (j = i - 32, k = i - 12; j < k; ++j) {\n x[j] += carry - 16 * x[i] * L[j - (i - 32)];\n carry = Math.floor((x[j] + 128) / 256);\n x[j] -= carry * 256;\n }\n x[j] += carry;\n x[i] = 0;\n }\n carry = 0;\n for (j = 0; j < 32; j++) {\n x[j] += carry - (x[31] >> 4) * L[j];\n carry = x[j] >> 8;\n x[j] &= 255;\n }\n for (j = 0; j < 32; j++) x[j] -= carry * L[j];\n for (i = 0; i < 32; i++) {\n x[i+1] += x[i] >> 8;\n r[i] = x[i] & 255;\n }\n}\n\nfunction reduce(r) {\n var x = new Float64Array(64), i;\n for (i = 0; i < 64; i++) x[i] = r[i];\n for (i = 0; i < 64; i++) r[i] = 0;\n modL(r, x);\n}\n\n// Note: difference from C - smlen returned, not passed as argument.\nfunction crypto_sign(sm, m, n, sk) {\n var d = new Uint8Array(64), h = new Uint8Array(64), r = new Uint8Array(64);\n var i, j, x = new Float64Array(64);\n var p = [gf(), gf(), gf(), gf()];\n\n crypto_hash(d, sk, 32);\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n\n var smlen = n + 64;\n for (i = 0; i < n; i++) sm[64 + i] = m[i];\n for (i = 0; i < 32; i++) sm[32 + i] = d[32 + i];\n\n crypto_hash(r, sm.subarray(32), n+32);\n reduce(r);\n scalarbase(p, r);\n pack(sm, p);\n\n for (i = 32; i < 64; i++) sm[i] = sk[i];\n crypto_hash(h, sm, n + 64);\n reduce(h);\n\n for (i = 0; i < 64; i++) x[i] = 0;\n for (i = 0; i < 32; i++) x[i] = r[i];\n for (i = 0; i < 32; i++) {\n for (j = 0; j < 32; j++) {\n x[i+j] += h[i] * d[j];\n }\n }\n\n modL(sm.subarray(32), x);\n return smlen;\n}\n\nfunction unpackneg(r, p) {\n var t = gf(), chk = gf(), num = gf(),\n den = gf(), den2 = gf(), den4 = gf(),\n den6 = gf();\n\n set25519(r[2], gf1);\n unpack25519(r[1], p);\n S(num, r[1]);\n M(den, num, D);\n Z(num, num, r[2]);\n A(den, r[2], den);\n\n S(den2, den);\n S(den4, den2);\n M(den6, den4, den2);\n M(t, den6, num);\n M(t, t, den);\n\n pow2523(t, t);\n M(t, t, num);\n M(t, t, den);\n M(t, t, den);\n M(r[0], t, den);\n\n S(chk, r[0]);\n M(chk, chk, den);\n if (neq25519(chk, num)) M(r[0], r[0], I);\n\n S(chk, r[0]);\n M(chk, chk, den);\n if (neq25519(chk, num)) return -1;\n\n if (par25519(r[0]) === (p[31]>>7)) Z(r[0], gf0, r[0]);\n\n M(r[3], r[0], r[1]);\n return 0;\n}\n\nfunction crypto_sign_open(m, sm, n, pk) {\n var i;\n var t = new Uint8Array(32), h = new Uint8Array(64);\n var p = [gf(), gf(), gf(), gf()],\n q = [gf(), gf(), gf(), gf()];\n\n if (n < 64) return -1;\n\n if (unpackneg(q, pk)) return -1;\n\n for (i = 0; i < n; i++) m[i] = sm[i];\n for (i = 0; i < 32; i++) m[i+32] = pk[i];\n crypto_hash(h, m, n);\n reduce(h);\n scalarmult(p, q, h);\n\n scalarbase(q, sm.subarray(32));\n add(p, q);\n pack(t, p);\n\n n -= 64;\n if (crypto_verify_32(sm, 0, t, 0)) {\n for (i = 0; i < n; i++) m[i] = 0;\n return -1;\n }\n\n for (i = 0; i < n; i++) m[i] = sm[i + 64];\n return n;\n}\n\nvar crypto_secretbox_KEYBYTES = 32,\n crypto_secretbox_NONCEBYTES = 24,\n crypto_secretbox_ZEROBYTES = 32,\n crypto_secretbox_BOXZEROBYTES = 16,\n crypto_scalarmult_BYTES = 32,\n crypto_scalarmult_SCALARBYTES = 32,\n crypto_box_PUBLICKEYBYTES = 32,\n crypto_box_SECRETKEYBYTES = 32,\n crypto_box_BEFORENMBYTES = 32,\n crypto_box_NONCEBYTES = crypto_secretbox_NONCEBYTES,\n crypto_box_ZEROBYTES = crypto_secretbox_ZEROBYTES,\n crypto_box_BOXZEROBYTES = crypto_secretbox_BOXZEROBYTES,\n crypto_sign_BYTES = 64,\n crypto_sign_PUBLICKEYBYTES = 32,\n crypto_sign_SECRETKEYBYTES = 64,\n crypto_sign_SEEDBYTES = 32,\n crypto_hash_BYTES = 64;\n\nnacl.lowlevel = {\n crypto_core_hsalsa20: crypto_core_hsalsa20,\n crypto_stream_xor: crypto_stream_xor,\n crypto_stream: crypto_stream,\n crypto_stream_salsa20_xor: crypto_stream_salsa20_xor,\n crypto_stream_salsa20: crypto_stream_salsa20,\n crypto_onetimeauth: crypto_onetimeauth,\n crypto_onetimeauth_verify: crypto_onetimeauth_verify,\n crypto_verify_16: crypto_verify_16,\n crypto_verify_32: crypto_verify_32,\n crypto_secretbox: crypto_secretbox,\n crypto_secretbox_open: crypto_secretbox_open,\n crypto_scalarmult: crypto_scalarmult,\n crypto_scalarmult_base: crypto_scalarmult_base,\n crypto_box_beforenm: crypto_box_beforenm,\n crypto_box_afternm: crypto_box_afternm,\n crypto_box: crypto_box,\n crypto_box_open: crypto_box_open,\n crypto_box_keypair: crypto_box_keypair,\n crypto_hash: crypto_hash,\n crypto_sign: crypto_sign,\n crypto_sign_keypair: crypto_sign_keypair,\n crypto_sign_open: crypto_sign_open,\n\n crypto_secretbox_KEYBYTES: crypto_secretbox_KEYBYTES,\n crypto_secretbox_NONCEBYTES: crypto_secretbox_NONCEBYTES,\n crypto_secretbox_ZEROBYTES: crypto_secretbox_ZEROBYTES,\n crypto_secretbox_BOXZEROBYTES: crypto_secretbox_BOXZEROBYTES,\n crypto_scalarmult_BYTES: crypto_scalarmult_BYTES,\n crypto_scalarmult_SCALARBYTES: crypto_scalarmult_SCALARBYTES,\n crypto_box_PUBLICKEYBYTES: crypto_box_PUBLICKEYBYTES,\n crypto_box_SECRETKEYBYTES: crypto_box_SECRETKEYBYTES,\n crypto_box_BEFORENMBYTES: crypto_box_BEFORENMBYTES,\n crypto_box_NONCEBYTES: crypto_box_NONCEBYTES,\n crypto_box_ZEROBYTES: crypto_box_ZEROBYTES,\n crypto_box_BOXZEROBYTES: crypto_box_BOXZEROBYTES,\n crypto_sign_BYTES: crypto_sign_BYTES,\n crypto_sign_PUBLICKEYBYTES: crypto_sign_PUBLICKEYBYTES,\n crypto_sign_SECRETKEYBYTES: crypto_sign_SECRETKEYBYTES,\n crypto_sign_SEEDBYTES: crypto_sign_SEEDBYTES,\n crypto_hash_BYTES: crypto_hash_BYTES,\n\n gf: gf,\n D: D,\n L: L,\n pack25519: pack25519,\n unpack25519: unpack25519,\n M: M,\n A: A,\n S: S,\n Z: Z,\n pow2523: pow2523,\n add: add,\n set25519: set25519,\n modL: modL,\n scalarmult: scalarmult,\n scalarbase: scalarbase,\n};\n\n/* High-level API */\n\nfunction checkLengths(k, n) {\n if (k.length !== crypto_secretbox_KEYBYTES) throw new Error('bad key size');\n if (n.length !== crypto_secretbox_NONCEBYTES) throw new Error('bad nonce size');\n}\n\nfunction checkBoxLengths(pk, sk) {\n if (pk.length !== crypto_box_PUBLICKEYBYTES) throw new Error('bad public key size');\n if (sk.length !== crypto_box_SECRETKEYBYTES) throw new Error('bad secret key size');\n}\n\nfunction checkArrayTypes() {\n for (var i = 0; i < arguments.length; i++) {\n if (!(arguments[i] instanceof Uint8Array))\n throw new TypeError('unexpected type, use Uint8Array');\n }\n}\n\nfunction cleanup(arr) {\n for (var i = 0; i < arr.length; i++) arr[i] = 0;\n}\n\nnacl.randomBytes = function(n) {\n var b = new Uint8Array(n);\n randombytes(b, n);\n return b;\n};\n\nnacl.secretbox = function(msg, nonce, key) {\n checkArrayTypes(msg, nonce, key);\n checkLengths(key, nonce);\n var m = new Uint8Array(crypto_secretbox_ZEROBYTES + msg.length);\n var c = new Uint8Array(m.length);\n for (var i = 0; i < msg.length; i++) m[i+crypto_secretbox_ZEROBYTES] = msg[i];\n crypto_secretbox(c, m, m.length, nonce, key);\n return c.subarray(crypto_secretbox_BOXZEROBYTES);\n};\n\nnacl.secretbox.open = function(box, nonce, key) {\n checkArrayTypes(box, nonce, key);\n checkLengths(key, nonce);\n var c = new Uint8Array(crypto_secretbox_BOXZEROBYTES + box.length);\n var m = new Uint8Array(c.length);\n for (var i = 0; i < box.length; i++) c[i+crypto_secretbox_BOXZEROBYTES] = box[i];\n if (c.length < 32) return null;\n if (crypto_secretbox_open(m, c, c.length, nonce, key) !== 0) return null;\n return m.subarray(crypto_secretbox_ZEROBYTES);\n};\n\nnacl.secretbox.keyLength = crypto_secretbox_KEYBYTES;\nnacl.secretbox.nonceLength = crypto_secretbox_NONCEBYTES;\nnacl.secretbox.overheadLength = crypto_secretbox_BOXZEROBYTES;\n\nnacl.scalarMult = function(n, p) {\n checkArrayTypes(n, p);\n if (n.length !== crypto_scalarmult_SCALARBYTES) throw new Error('bad n size');\n if (p.length !== crypto_scalarmult_BYTES) throw new Error('bad p size');\n var q = new Uint8Array(crypto_scalarmult_BYTES);\n crypto_scalarmult(q, n, p);\n return q;\n};\n\nnacl.scalarMult.base = function(n) {\n checkArrayTypes(n);\n if (n.length !== crypto_scalarmult_SCALARBYTES) throw new Error('bad n size');\n var q = new Uint8Array(crypto_scalarmult_BYTES);\n crypto_scalarmult_base(q, n);\n return q;\n};\n\nnacl.scalarMult.scalarLength = crypto_scalarmult_SCALARBYTES;\nnacl.scalarMult.groupElementLength = crypto_scalarmult_BYTES;\n\nnacl.box = function(msg, nonce, publicKey, secretKey) {\n var k = nacl.box.before(publicKey, secretKey);\n return nacl.secretbox(msg, nonce, k);\n};\n\nnacl.box.before = function(publicKey, secretKey) {\n checkArrayTypes(publicKey, secretKey);\n checkBoxLengths(publicKey, secretKey);\n var k = new Uint8Array(crypto_box_BEFORENMBYTES);\n crypto_box_beforenm(k, publicKey, secretKey);\n return k;\n};\n\nnacl.box.after = nacl.secretbox;\n\nnacl.box.open = function(msg, nonce, publicKey, secretKey) {\n var k = nacl.box.before(publicKey, secretKey);\n return nacl.secretbox.open(msg, nonce, k);\n};\n\nnacl.box.open.after = nacl.secretbox.open;\n\nnacl.box.keyPair = function() {\n var pk = new Uint8Array(crypto_box_PUBLICKEYBYTES);\n var sk = new Uint8Array(crypto_box_SECRETKEYBYTES);\n crypto_box_keypair(pk, sk);\n return {publicKey: pk, secretKey: sk};\n};\n\nnacl.box.keyPair.fromSecretKey = function(secretKey) {\n checkArrayTypes(secretKey);\n if (secretKey.length !== crypto_box_SECRETKEYBYTES)\n throw new Error('bad secret key size');\n var pk = new Uint8Array(crypto_box_PUBLICKEYBYTES);\n crypto_scalarmult_base(pk, secretKey);\n return {publicKey: pk, secretKey: new Uint8Array(secretKey)};\n};\n\nnacl.box.publicKeyLength = crypto_box_PUBLICKEYBYTES;\nnacl.box.secretKeyLength = crypto_box_SECRETKEYBYTES;\nnacl.box.sharedKeyLength = crypto_box_BEFORENMBYTES;\nnacl.box.nonceLength = crypto_box_NONCEBYTES;\nnacl.box.overheadLength = nacl.secretbox.overheadLength;\n\nnacl.sign = function(msg, secretKey) {\n checkArrayTypes(msg, secretKey);\n if (secretKey.length !== crypto_sign_SECRETKEYBYTES)\n throw new Error('bad secret key size');\n var signedMsg = new Uint8Array(crypto_sign_BYTES+msg.length);\n crypto_sign(signedMsg, msg, msg.length, secretKey);\n return signedMsg;\n};\n\nnacl.sign.open = function(signedMsg, publicKey) {\n checkArrayTypes(signedMsg, publicKey);\n if (publicKey.length !== crypto_sign_PUBLICKEYBYTES)\n throw new Error('bad public key size');\n var tmp = new Uint8Array(signedMsg.length);\n var mlen = crypto_sign_open(tmp, signedMsg, signedMsg.length, publicKey);\n if (mlen < 0) return null;\n var m = new Uint8Array(mlen);\n for (var i = 0; i < m.length; i++) m[i] = tmp[i];\n return m;\n};\n\nnacl.sign.detached = function(msg, secretKey) {\n var signedMsg = nacl.sign(msg, secretKey);\n var sig = new Uint8Array(crypto_sign_BYTES);\n for (var i = 0; i < sig.length; i++) sig[i] = signedMsg[i];\n return sig;\n};\n\nnacl.sign.detached.verify = function(msg, sig, publicKey) {\n checkArrayTypes(msg, sig, publicKey);\n if (sig.length !== crypto_sign_BYTES)\n throw new Error('bad signature size');\n if (publicKey.length !== crypto_sign_PUBLICKEYBYTES)\n throw new Error('bad public key size');\n var sm = new Uint8Array(crypto_sign_BYTES + msg.length);\n var m = new Uint8Array(crypto_sign_BYTES + msg.length);\n var i;\n for (i = 0; i < crypto_sign_BYTES; i++) sm[i] = sig[i];\n for (i = 0; i < msg.length; i++) sm[i+crypto_sign_BYTES] = msg[i];\n return (crypto_sign_open(m, sm, sm.length, publicKey) >= 0);\n};\n\nnacl.sign.keyPair = function() {\n var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);\n var sk = new Uint8Array(crypto_sign_SECRETKEYBYTES);\n crypto_sign_keypair(pk, sk);\n return {publicKey: pk, secretKey: sk};\n};\n\nnacl.sign.keyPair.fromSecretKey = function(secretKey) {\n checkArrayTypes(secretKey);\n if (secretKey.length !== crypto_sign_SECRETKEYBYTES)\n throw new Error('bad secret key size');\n var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);\n for (var i = 0; i < pk.length; i++) pk[i] = secretKey[32+i];\n return {publicKey: pk, secretKey: new Uint8Array(secretKey)};\n};\n\nnacl.sign.keyPair.fromSeed = function(seed) {\n checkArrayTypes(seed);\n if (seed.length !== crypto_sign_SEEDBYTES)\n throw new Error('bad seed size');\n var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);\n var sk = new Uint8Array(crypto_sign_SECRETKEYBYTES);\n for (var i = 0; i < 32; i++) sk[i] = seed[i];\n crypto_sign_keypair(pk, sk, true);\n return {publicKey: pk, secretKey: sk};\n};\n\nnacl.sign.publicKeyLength = crypto_sign_PUBLICKEYBYTES;\nnacl.sign.secretKeyLength = crypto_sign_SECRETKEYBYTES;\nnacl.sign.seedLength = crypto_sign_SEEDBYTES;\nnacl.sign.signatureLength = crypto_sign_BYTES;\n\nnacl.hash = function(msg) {\n checkArrayTypes(msg);\n var h = new Uint8Array(crypto_hash_BYTES);\n crypto_hash(h, msg, msg.length);\n return h;\n};\n\nnacl.hash.hashLength = crypto_hash_BYTES;\n\nnacl.verify = function(x, y) {\n checkArrayTypes(x, y);\n // Zero length arguments are considered not equal.\n if (x.length === 0 || y.length === 0) return false;\n if (x.length !== y.length) return false;\n return (vn(x, 0, y, 0, x.length) === 0) ? true : false;\n};\n\nnacl.setPRNG = function(fn) {\n randombytes = fn;\n};\n\n(function() {\n // Initialize PRNG if environment provides CSPRNG.\n // If not, methods calling randombytes will throw.\n var crypto = typeof self !== 'undefined' ? (self.crypto || self.msCrypto) : null;\n if (crypto && crypto.getRandomValues) {\n // Browsers.\n var QUOTA = 65536;\n nacl.setPRNG(function(x, n) {\n var i, v = new Uint8Array(n);\n for (i = 0; i < n; i += QUOTA) {\n crypto.getRandomValues(v.subarray(i, i + Math.min(n - i, QUOTA)));\n }\n for (i = 0; i < n; i++) x[i] = v[i];\n cleanup(v);\n });\n } else if (typeof require !== 'undefined') {\n // Node.js.\n crypto = require('crypto');\n if (crypto && crypto.randomBytes) {\n nacl.setPRNG(function(x, n) {\n var i, v = crypto.randomBytes(n);\n for (i = 0; i < n; i++) x[i] = v[i];\n cleanup(v);\n });\n }\n }\n})();\n\n})(typeof module !== 'undefined' && module.exports ? module.exports : (self.nacl = self.nacl || {}));\n","import * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @typedef {import(\"./hmac.js\").HashAlgorithm} HashAlgorithm\n */\n\n/**\n * @param {HashAlgorithm} algorithm\n * @param {Uint8Array | string} password\n * @param {Uint8Array | string} salt\n * @param {number} iterations\n * @param {number} length\n * @returns {Promise}\n */\nexport async function deriveKey(algorithm, password, salt, iterations, length) {\n const pass =\n typeof password === \"string\"\n ? // Valid ASCII is also valid UTF-8 so encoding the password as UTF-8\n // should be fine if only valid ASCII characters are used in the password\n utf8.encode(password)\n : password;\n\n const nacl = typeof salt === \"string\" ? utf8.encode(salt) : salt;\n\n try {\n const key = await window.crypto.subtle.importKey(\n \"raw\",\n pass,\n {\n name: \"PBKDF2\",\n hash: algorithm,\n },\n false,\n [\"deriveBits\"]\n );\n\n return new Uint8Array(\n await window.crypto.subtle.deriveBits(\n {\n name: \"PBKDF2\",\n hash: algorithm,\n salt: nacl,\n iterations,\n },\n key,\n length << 3\n )\n );\n } catch {\n throw new Error(\"(BUG) Non-Exhaustive switch statement for algorithms\");\n }\n}\n","'use strict';\n\nvar BN = require('bn.js');\nvar utils = require('../utils');\nvar getNAF = utils.getNAF;\nvar getJSF = utils.getJSF;\nvar assert = utils.assert;\n\nfunction BaseCurve(type, conf) {\n this.type = type;\n this.p = new BN(conf.p, 16);\n\n // Use Montgomery, when there is no fast reduction for the prime\n this.red = conf.prime ? BN.red(conf.prime) : BN.mont(this.p);\n\n // Useful for many curves\n this.zero = new BN(0).toRed(this.red);\n this.one = new BN(1).toRed(this.red);\n this.two = new BN(2).toRed(this.red);\n\n // Curve configuration, optional\n this.n = conf.n && new BN(conf.n, 16);\n this.g = conf.g && this.pointFromJSON(conf.g, conf.gRed);\n\n // Temporary arrays\n this._wnafT1 = new Array(4);\n this._wnafT2 = new Array(4);\n this._wnafT3 = new Array(4);\n this._wnafT4 = new Array(4);\n\n this._bitLength = this.n ? this.n.bitLength() : 0;\n\n // Generalized Greg Maxwell's trick\n var adjustCount = this.n && this.p.div(this.n);\n if (!adjustCount || adjustCount.cmpn(100) > 0) {\n this.redN = null;\n } else {\n this._maxwellTrick = true;\n this.redN = this.n.toRed(this.red);\n }\n}\nmodule.exports = BaseCurve;\n\nBaseCurve.prototype.point = function point() {\n throw new Error('Not implemented');\n};\n\nBaseCurve.prototype.validate = function validate() {\n throw new Error('Not implemented');\n};\n\nBaseCurve.prototype._fixedNafMul = function _fixedNafMul(p, k) {\n assert(p.precomputed);\n var doubles = p._getDoubles();\n\n var naf = getNAF(k, 1, this._bitLength);\n var I = (1 << (doubles.step + 1)) - (doubles.step % 2 === 0 ? 2 : 1);\n I /= 3;\n\n // Translate into more windowed form\n var repr = [];\n var j;\n var nafW;\n for (j = 0; j < naf.length; j += doubles.step) {\n nafW = 0;\n for (var l = j + doubles.step - 1; l >= j; l--)\n nafW = (nafW << 1) + naf[l];\n repr.push(nafW);\n }\n\n var a = this.jpoint(null, null, null);\n var b = this.jpoint(null, null, null);\n for (var i = I; i > 0; i--) {\n for (j = 0; j < repr.length; j++) {\n nafW = repr[j];\n if (nafW === i)\n b = b.mixedAdd(doubles.points[j]);\n else if (nafW === -i)\n b = b.mixedAdd(doubles.points[j].neg());\n }\n a = a.add(b);\n }\n return a.toP();\n};\n\nBaseCurve.prototype._wnafMul = function _wnafMul(p, k) {\n var w = 4;\n\n // Precompute window\n var nafPoints = p._getNAFPoints(w);\n w = nafPoints.wnd;\n var wnd = nafPoints.points;\n\n // Get NAF form\n var naf = getNAF(k, w, this._bitLength);\n\n // Add `this`*(N+1) for every w-NAF index\n var acc = this.jpoint(null, null, null);\n for (var i = naf.length - 1; i >= 0; i--) {\n // Count zeroes\n for (var l = 0; i >= 0 && naf[i] === 0; i--)\n l++;\n if (i >= 0)\n l++;\n acc = acc.dblp(l);\n\n if (i < 0)\n break;\n var z = naf[i];\n assert(z !== 0);\n if (p.type === 'affine') {\n // J +- P\n if (z > 0)\n acc = acc.mixedAdd(wnd[(z - 1) >> 1]);\n else\n acc = acc.mixedAdd(wnd[(-z - 1) >> 1].neg());\n } else {\n // J +- J\n if (z > 0)\n acc = acc.add(wnd[(z - 1) >> 1]);\n else\n acc = acc.add(wnd[(-z - 1) >> 1].neg());\n }\n }\n return p.type === 'affine' ? acc.toP() : acc;\n};\n\nBaseCurve.prototype._wnafMulAdd = function _wnafMulAdd(defW,\n points,\n coeffs,\n len,\n jacobianResult) {\n var wndWidth = this._wnafT1;\n var wnd = this._wnafT2;\n var naf = this._wnafT3;\n\n // Fill all arrays\n var max = 0;\n var i;\n var j;\n var p;\n for (i = 0; i < len; i++) {\n p = points[i];\n var nafPoints = p._getNAFPoints(defW);\n wndWidth[i] = nafPoints.wnd;\n wnd[i] = nafPoints.points;\n }\n\n // Comb small window NAFs\n for (i = len - 1; i >= 1; i -= 2) {\n var a = i - 1;\n var b = i;\n if (wndWidth[a] !== 1 || wndWidth[b] !== 1) {\n naf[a] = getNAF(coeffs[a], wndWidth[a], this._bitLength);\n naf[b] = getNAF(coeffs[b], wndWidth[b], this._bitLength);\n max = Math.max(naf[a].length, max);\n max = Math.max(naf[b].length, max);\n continue;\n }\n\n var comb = [\n points[a], /* 1 */\n null, /* 3 */\n null, /* 5 */\n points[b], /* 7 */\n ];\n\n // Try to avoid Projective points, if possible\n if (points[a].y.cmp(points[b].y) === 0) {\n comb[1] = points[a].add(points[b]);\n comb[2] = points[a].toJ().mixedAdd(points[b].neg());\n } else if (points[a].y.cmp(points[b].y.redNeg()) === 0) {\n comb[1] = points[a].toJ().mixedAdd(points[b]);\n comb[2] = points[a].add(points[b].neg());\n } else {\n comb[1] = points[a].toJ().mixedAdd(points[b]);\n comb[2] = points[a].toJ().mixedAdd(points[b].neg());\n }\n\n var index = [\n -3, /* -1 -1 */\n -1, /* -1 0 */\n -5, /* -1 1 */\n -7, /* 0 -1 */\n 0, /* 0 0 */\n 7, /* 0 1 */\n 5, /* 1 -1 */\n 1, /* 1 0 */\n 3, /* 1 1 */\n ];\n\n var jsf = getJSF(coeffs[a], coeffs[b]);\n max = Math.max(jsf[0].length, max);\n naf[a] = new Array(max);\n naf[b] = new Array(max);\n for (j = 0; j < max; j++) {\n var ja = jsf[0][j] | 0;\n var jb = jsf[1][j] | 0;\n\n naf[a][j] = index[(ja + 1) * 3 + (jb + 1)];\n naf[b][j] = 0;\n wnd[a] = comb;\n }\n }\n\n var acc = this.jpoint(null, null, null);\n var tmp = this._wnafT4;\n for (i = max; i >= 0; i--) {\n var k = 0;\n\n while (i >= 0) {\n var zero = true;\n for (j = 0; j < len; j++) {\n tmp[j] = naf[j][i] | 0;\n if (tmp[j] !== 0)\n zero = false;\n }\n if (!zero)\n break;\n k++;\n i--;\n }\n if (i >= 0)\n k++;\n acc = acc.dblp(k);\n if (i < 0)\n break;\n\n for (j = 0; j < len; j++) {\n var z = tmp[j];\n p;\n if (z === 0)\n continue;\n else if (z > 0)\n p = wnd[j][(z - 1) >> 1];\n else if (z < 0)\n p = wnd[j][(-z - 1) >> 1].neg();\n\n if (p.type === 'affine')\n acc = acc.mixedAdd(p);\n else\n acc = acc.add(p);\n }\n }\n // Zeroify references\n for (i = 0; i < len; i++)\n wnd[i] = null;\n\n if (jacobianResult)\n return acc;\n else\n return acc.toP();\n};\n\nfunction BasePoint(curve, type) {\n this.curve = curve;\n this.type = type;\n this.precomputed = null;\n}\nBaseCurve.BasePoint = BasePoint;\n\nBasePoint.prototype.eq = function eq(/*other*/) {\n throw new Error('Not implemented');\n};\n\nBasePoint.prototype.validate = function validate() {\n return this.curve.validate(this);\n};\n\nBaseCurve.prototype.decodePoint = function decodePoint(bytes, enc) {\n bytes = utils.toArray(bytes, enc);\n\n var len = this.p.byteLength();\n\n // uncompressed, hybrid-odd, hybrid-even\n if ((bytes[0] === 0x04 || bytes[0] === 0x06 || bytes[0] === 0x07) &&\n bytes.length - 1 === 2 * len) {\n if (bytes[0] === 0x06)\n assert(bytes[bytes.length - 1] % 2 === 0);\n else if (bytes[0] === 0x07)\n assert(bytes[bytes.length - 1] % 2 === 1);\n\n var res = this.point(bytes.slice(1, 1 + len),\n bytes.slice(1 + len, 1 + 2 * len));\n\n return res;\n } else if ((bytes[0] === 0x02 || bytes[0] === 0x03) &&\n bytes.length - 1 === len) {\n return this.pointFromX(bytes.slice(1, 1 + len), bytes[0] === 0x03);\n }\n throw new Error('Unknown point format');\n};\n\nBasePoint.prototype.encodeCompressed = function encodeCompressed(enc) {\n return this.encode(enc, true);\n};\n\nBasePoint.prototype._encode = function _encode(compact) {\n var len = this.curve.p.byteLength();\n var x = this.getX().toArray('be', len);\n\n if (compact)\n return [ this.getY().isEven() ? 0x02 : 0x03 ].concat(x);\n\n return [ 0x04 ].concat(x, this.getY().toArray('be', len));\n};\n\nBasePoint.prototype.encode = function encode(enc, compact) {\n return utils.encode(this._encode(compact), enc);\n};\n\nBasePoint.prototype.precompute = function precompute(power) {\n if (this.precomputed)\n return this;\n\n var precomputed = {\n doubles: null,\n naf: null,\n beta: null,\n };\n precomputed.naf = this._getNAFPoints(8);\n precomputed.doubles = this._getDoubles(4, power);\n precomputed.beta = this._getBeta();\n this.precomputed = precomputed;\n\n return this;\n};\n\nBasePoint.prototype._hasDoubles = function _hasDoubles(k) {\n if (!this.precomputed)\n return false;\n\n var doubles = this.precomputed.doubles;\n if (!doubles)\n return false;\n\n return doubles.points.length >= Math.ceil((k.bitLength() + 1) / doubles.step);\n};\n\nBasePoint.prototype._getDoubles = function _getDoubles(step, power) {\n if (this.precomputed && this.precomputed.doubles)\n return this.precomputed.doubles;\n\n var doubles = [ this ];\n var acc = this;\n for (var i = 0; i < power; i += step) {\n for (var j = 0; j < step; j++)\n acc = acc.dbl();\n doubles.push(acc);\n }\n return {\n step: step,\n points: doubles,\n };\n};\n\nBasePoint.prototype._getNAFPoints = function _getNAFPoints(wnd) {\n if (this.precomputed && this.precomputed.naf)\n return this.precomputed.naf;\n\n var res = [ this ];\n var max = (1 << wnd) - 1;\n var dbl = max === 1 ? null : this.dbl();\n for (var i = 1; i < max; i++)\n res[i] = res[i - 1].add(dbl);\n return {\n wnd: wnd,\n points: res,\n };\n};\n\nBasePoint.prototype._getBeta = function _getBeta() {\n return null;\n};\n\nBasePoint.prototype.dblp = function dblp(k) {\n var r = this;\n for (var i = 0; i < k; i++)\n r = r.dbl();\n return r;\n};\n","import StatusError from \"./StatusError.js\";\n\n/**\n * @typedef {import(\"./Status.js\").default} Status\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"./transaction/TransactionReceipt.js\").default} TransactionReceipt\n */\n\nexport default class ReceiptStatusError extends StatusError {\n /**\n * @param {object} props\n * @param {TransactionReceipt} props.transactionReceipt\n * @param {Status} props.status\n * @param {TransactionId} props.transactionId\n */\n constructor(props) {\n super(\n props,\n `receipt for transaction ${props.transactionId.toString()} contained error status ${props.status.toString()}`\n );\n\n /**\n * @type {TransactionReceipt}\n * @readonly\n */\n this.transactionReceipt = props.transactionReceipt;\n }\n}\n","import BigNumber from \"bignumber.js\";\nimport Long from \"long\";\n\n/**\n * Utility Error Messages\n */\nexport const REQUIRE_NON_NULL_ERROR = \"This value cannot be null | undefined.\";\nexport const REQUIRE_STRING_ERROR = \"This value must be a string.\";\nexport const REQUIRE_UINT8ARRAY_ERROR = \"This value must be a Uint8Array.\";\nexport const REQUIRE_STRING_OR_UINT8ARRAY_ERROR =\n \"This value must be a string or Uint8Array.\";\nexport const REQUIRE_NUMBER_ERROR = \"This value must be a Number.\";\nexport const REQUIRE_BIGNUMBER_ERROR = \"This value must be a BigNumber.\";\nexport const REQUIRE_ARRAY_ERROR = \"The provided variable must be an Array.\";\nexport const REQUIRE_LONG_ERROR = \"This value must be a Long.\";\n\nexport const REQUIRE_TYPE_ERROR =\n \"The provided variables are not matching types.\";\n\nexport const FUNCTION_CONVERT_TO_BIGNUMBER_ERROR =\n \"This value must be a String, Number, or BigNumber to be converted.\";\nexport const FUNCTION_CONVERT_TO_NUMBER_ERROR =\n \"This value must be a String, Number, or BigNumber to be converted.\";\nexport const FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR =\n \"Unable to parse given variable. Returns NaN.\";\n\n//Soft Checks\n\n/**\n * Takes any param and returns false if null or undefined.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isNonNull(variable) {\n if (variable == null || variable == undefined) {\n return false;\n } else {\n return true;\n }\n}\n\n/**\n * Takes any param and returns true if param variable and type are the same.\n *\n * @param {any | null | undefined} variable\n * @param {any | null | undefined} type\n * @returns {boolean}\n */\nexport function isType(variable, type) {\n return typeof variable == typeof type;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isUint8Array(variable) {\n return isNonNull(variable) && variable instanceof Uint8Array;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type Number.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isNumber(variable) {\n return (\n isNonNull(variable) &&\n (typeof variable == \"number\" || variable instanceof Number)\n );\n}\n\n/**\n * Takes any param and returns true if param is not null and of type BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isBigNumber(variable) {\n return isNonNull(variable) && variable instanceof BigNumber;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isLong(variable) {\n return isNonNull(variable) && variable instanceof Long;\n}\n\n/**\n * Takes any param and returns true if param is not null and of type string.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isString(variable) {\n return isNonNull(variable) && typeof variable == \"string\";\n}\n\n/**\n * Takes any param and returns true if param is not null and type string or Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {boolean}\n */\nexport function isStringOrUint8Array(variable) {\n return (\n isNonNull(variable) && (isString(variable) || isUint8Array(variable))\n );\n}\n\n//Requires\n\n/**\n * Takes any param and throws custom error if null or undefined.\n *\n * @param {any} variable\n * @returns {object}\n */\nexport function requireNonNull(variable) {\n if (!isNonNull(variable)) {\n throw new Error(REQUIRE_NON_NULL_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return variable;\n }\n}\n\n/**\n * Takes any param and throws custom error if params are not same type.\n *\n * @param {any | null | undefined} variable\n * @param {any | null | undefined} type\n * @returns {object}\n */\nexport function requireType(variable, type) {\n if (!isType(variable, type)) {\n throw new Error(REQUIRE_TYPE_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return variable;\n }\n}\n\n/**\n * Takes any param and throws custom error if non BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {BigNumber}\n */\nexport function requireBigNumber(variable) {\n if (!isBigNumber(requireNonNull(variable))) {\n throw new Error(REQUIRE_BIGNUMBER_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {BigNumber} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {Long}\n */\nexport function requireLong(variable) {\n if (!isLong(requireNonNull(variable))) {\n throw new Error(REQUIRE_LONG_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {Long} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non string.\n *\n * @param {any | null | undefined} variable\n * @returns {string}\n */\nexport function requireString(variable) {\n if (!isString(requireNonNull(variable))) {\n throw new Error(REQUIRE_STRING_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {string} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {Uint8Array}\n */\nexport function requireUint8Array(variable) {\n if (!isUint8Array(requireNonNull(variable))) {\n throw new Error(REQUIRE_UINT8ARRAY_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {Uint8Array} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if non Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {number}\n */\nexport function requireNumber(variable) {\n if (!isNumber(requireNonNull(variable))) {\n throw new Error(REQUIRE_NUMBER_ERROR);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {number} */ (variable);\n }\n}\n\n/**\n * Takes any param and throws custom error if null or undefined and not a string or Uint8Array.\n *\n * @param {any | null | undefined} variable\n * @returns {string | Uint8Array}\n */\nexport function requireStringOrUint8Array(variable) {\n if (isStringOrUint8Array(requireNonNull(variable))) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return /** @type {string | Uint8Array} */ (variable);\n } else {\n throw new Error(REQUIRE_STRING_OR_UINT8ARRAY_ERROR);\n }\n}\n\n//Conversions\n\n/**\n * Converts number or string to BigNumber.\n *\n * @param {any | null | undefined} variable\n * @returns {BigNumber}\n */\nexport function convertToBigNumber(variable) {\n requireNonNull(variable);\n if (\n isBigNumber(variable) ||\n isString(variable) ||\n isNumber(variable) ||\n isLong(variable)\n ) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n return new BigNumber(variable);\n }\n throw new Error(FUNCTION_CONVERT_TO_BIGNUMBER_ERROR);\n}\n\n/**\n * Converts Array of Numbers or Strings to Array of BigNumbers.\n *\n * @param {any | null | undefined} variable\n * @returns {Array}\n */\nexport function convertToBigNumberArray(variable) {\n if (variable instanceof Array) {\n return /** @type {Array} */ (\n variable.map(convertToBigNumber)\n );\n } else {\n throw new Error(REQUIRE_ARRAY_ERROR);\n }\n}\n\n/**\n * @param {*} variable\n * @returns {number}\n */\nexport function convertToNumber(variable) {\n requireNonNull(variable);\n if (\n isBigNumber(variable) ||\n isString(variable) ||\n isNumber(variable) ||\n isLong(variable)\n ) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n const num = parseInt(variable);\n if (isNaN(num)) {\n throw new Error(FUNCTION_CONVERT_TO_NUMBER_PARSE_ERROR);\n } else {\n return num;\n }\n } else {\n throw new Error(FUNCTION_CONVERT_TO_NUMBER_ERROR);\n }\n}\n\n/**\n * Creates a DataView on top of an Uint8Array that could be or not be pooled, ensuring that we don't get out of bounds.\n *\n * @param {Uint8Array} arr\n * @param {number | undefined} offset\n * @param {number | undefined} length\n * @returns {DataView}\n */\nexport function safeView(arr, offset = 0, length = arr.byteLength) {\n if (!(Number.isInteger(offset) && offset >= 0))\n throw new Error(\"Invalid offset!\");\n if (!(Number.isInteger(length) && length >= 0))\n throw new Error(\"Invalid length!\");\n return new DataView(\n arr.buffer,\n arr.byteOffset + offset,\n Math.min(length, arr.byteLength - offset)\n );\n}\n","import AccountId from \"../account/AccountId.js\";\nimport ContractId from \"../contract/ContractId.js\";\nimport FileId from \"../file/FileId.js\";\nimport TopicId from \"../topic/TopicId.js\";\nimport TokenId from \"../token/TokenId.js\";\nimport ScheduleId from \"../schedule/ScheduleId.js\";\nimport ExchangeRate from \"../ExchangeRate.js\";\nimport Status from \"../Status.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport TransactionId from \"../transaction/TransactionId.js\";\n\n/**\n * The consensus result for a transaction, which might not be currently known,\n * or may succeed or fail.\n */\nexport default class TransactionReceipt {\n /**\n * @private\n * @param {object} props\n * @param {Status} props.status\n * @param {?AccountId} props.accountId\n * @param {?FileId} props.fileId\n * @param {?ContractId} props.contractId\n * @param {?TopicId} props.topicId\n * @param {?TokenId} props.tokenId\n * @param {?ScheduleId} props.scheduleId\n * @param {?ExchangeRate} props.exchangeRate\n * @param {?Long} props.topicSequenceNumber\n * @param {?Uint8Array} props.topicRunningHash\n * @param {?Long} props.totalSupply\n * @param {?TransactionId} props.scheduledTransactionId\n * @param {Long[]} props.serials\n * @param {TransactionReceipt[]} props.duplicates\n * @param {TransactionReceipt[]} props.children\n */\n constructor(props) {\n /**\n * Whether the transaction succeeded or failed (or is unknown).\n *\n * @readonly\n */\n this.status = props.status;\n\n /**\n * The account ID, if a new account was created.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * The file ID, if a new file was created.\n *\n * @readonly\n */\n this.fileId = props.fileId;\n\n /**\n * The contract ID, if a new contract was created.\n *\n * @readonly\n */\n this.contractId = props.contractId;\n\n /**\n * The topic ID, if a new topic was created.\n *\n * @readonly\n */\n this.topicId = props.topicId;\n\n /**\n * The token ID, if a new token was created.\n *\n * @readonly\n */\n this.tokenId = props.tokenId;\n\n /**\n * The schedule ID, if a new schedule was created.\n *\n * @readonly\n */\n this.scheduleId = props.scheduleId;\n\n /**\n * The exchange rate of Hbars to cents (USD).\n *\n * @readonly\n */\n this.exchangeRate = props.exchangeRate;\n\n /**\n * Updated sequence number for a consensus service topic.\n *\n * @readonly\n */\n this.topicSequenceNumber = props.topicSequenceNumber;\n\n /**\n * Updated running hash for a consensus service topic.\n *\n * @readonly\n */\n this.topicRunningHash = props.topicRunningHash;\n\n /**\n * Updated total supply for a token\n *\n * @readonly\n */\n this.totalSupply = props.totalSupply;\n\n this.scheduledTransactionId = props.scheduledTransactionId;\n\n this.serials = props.serials;\n\n /**\n * @readonly\n */\n this.duplicates = props.duplicates;\n\n /**\n * @readonly\n */\n this.children = props.children;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @returns {proto.ITransactionGetReceiptResponse}\n */\n _toProtobuf() {\n const duplicates = this.duplicates.map(\n (receipt) =>\n /** @type {proto.ITransactionReceipt} */ (\n receipt._toProtobuf().receipt\n )\n );\n const children = this.children.map(\n (receipt) =>\n /** @type {proto.ITransactionReceipt} */ (\n receipt._toProtobuf().receipt\n )\n );\n\n return {\n duplicateTransactionReceipts: duplicates,\n childTransactionReceipts: children,\n receipt: {\n status: this.status.valueOf(),\n\n accountID:\n this.accountId != null\n ? this.accountId._toProtobuf()\n : null,\n fileID: this.fileId != null ? this.fileId._toProtobuf() : null,\n contractID:\n this.contractId != null\n ? this.contractId._toProtobuf()\n : null,\n topicID:\n this.topicId != null ? this.topicId._toProtobuf() : null,\n tokenID:\n this.tokenId != null ? this.tokenId._toProtobuf() : null,\n scheduleID:\n this.scheduleId != null\n ? this.scheduleId._toProtobuf()\n : null,\n\n topicRunningHash:\n this.topicRunningHash == null\n ? null\n : this.topicRunningHash,\n\n topicSequenceNumber: this.topicSequenceNumber,\n\n exchangeRate: {\n nextRate: null,\n currentRate:\n this.exchangeRate != null\n ? this.exchangeRate._toProtobuf()\n : null,\n },\n\n scheduledTransactionID:\n this.scheduledTransactionId != null\n ? this.scheduledTransactionId._toProtobuf()\n : null,\n\n serialNumbers: this.serials,\n newTotalSupply: this.totalSupply,\n },\n };\n }\n\n /**\n * @internal\n * @param {proto.ITransactionGetReceiptResponse} response\n * @returns {TransactionReceipt}\n */\n static _fromProtobuf(response) {\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n response.receipt\n );\n\n const exchangeRateSet = /** @type {proto.IExchangeRateSet} */ (\n receipt.exchangeRate\n );\n\n const children =\n response.childTransactionReceipts != null\n ? response.childTransactionReceipts.map((child) =>\n TransactionReceipt._fromProtobuf({ receipt: child })\n )\n : [];\n\n const duplicates =\n response.duplicateTransactionReceipts != null\n ? response.duplicateTransactionReceipts.map((duplicate) =>\n TransactionReceipt._fromProtobuf({ receipt: duplicate })\n )\n : [];\n\n return new TransactionReceipt({\n status: Status._fromCode(\n receipt.status != null ? receipt.status : 0\n ),\n\n accountId:\n receipt.accountID != null\n ? AccountId._fromProtobuf(receipt.accountID)\n : null,\n\n fileId:\n receipt.fileID != null\n ? FileId._fromProtobuf(receipt.fileID)\n : null,\n\n contractId:\n receipt.contractID != null\n ? ContractId._fromProtobuf(receipt.contractID)\n : null,\n\n topicId:\n receipt.topicID != null\n ? TopicId._fromProtobuf(receipt.topicID)\n : null,\n\n tokenId:\n receipt.tokenID != null\n ? TokenId._fromProtobuf(receipt.tokenID)\n : null,\n\n scheduleId:\n receipt.scheduleID != null\n ? ScheduleId._fromProtobuf(receipt.scheduleID)\n : null,\n\n exchangeRate:\n receipt.exchangeRate != null\n ? ExchangeRate._fromProtobuf(\n /** @type {proto.IExchangeRate} */\n (exchangeRateSet.currentRate)\n )\n : null,\n\n topicSequenceNumber:\n receipt.topicSequenceNumber == null\n ? null\n : Long.fromValue(receipt.topicSequenceNumber),\n\n topicRunningHash:\n receipt.topicRunningHash != null\n ? receipt.topicRunningHash\n : null,\n\n totalSupply:\n receipt.newTotalSupply != null ? receipt.newTotalSupply : null,\n\n scheduledTransactionId:\n receipt.scheduledTransactionID != null\n ? TransactionId._fromProtobuf(\n receipt.scheduledTransactionID\n )\n : null,\n serials: receipt.serialNumbers != null ? receipt.serialNumbers : [],\n children,\n duplicates,\n });\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TransactionReceipt}\n */\n static fromBytes(bytes) {\n return TransactionReceipt._fromProtobuf(\n proto.TransactionGetReceiptResponse.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TransactionGetReceiptResponse.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import AccountId from \"./AccountId.js\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ICryptoAllowance} proto.ICryptoAllowance\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"long\")} Long\n */\n\nexport default class HbarAllowance {\n /**\n * @internal\n * @param {object} props\n * @param {AccountId} props.spenderAccountId\n * @param {AccountId | null} props.ownerAccountId\n * @param {Hbar} props.amount\n */\n constructor(props) {\n /**\n * The account ID of the hbar allowance spender.\n *\n * @readonly\n */\n this.spenderAccountId = props.spenderAccountId;\n\n /**\n * The account ID of the hbar allowance owner.\n *\n * @readonly\n */\n this.ownerAccountId = props.ownerAccountId;\n\n /**\n * The current balance of the spender's allowance in tinybars.\n *\n * @readonly\n */\n this.amount = props.amount;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ICryptoAllowance} approval\n * @returns {HbarAllowance}\n */\n static _fromProtobuf(approval) {\n return new HbarAllowance({\n spenderAccountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (approval.spender)\n ),\n ownerAccountId:\n approval.owner != null\n ? AccountId._fromProtobuf(\n /**@type {proto.IAccountID}*/ (approval.owner)\n )\n : null,\n amount: Hbar.fromTinybars(\n approval.amount != null ? approval.amount : 0\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.ICryptoAllowance}\n */\n _toProtobuf() {\n return {\n spender: this.spenderAccountId._toProtobuf(),\n owner:\n this.ownerAccountId != null\n ? this.ownerAccountId._toProtobuf()\n : null,\n amount: this.amount.toTinybars(),\n };\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport AccountId from \"./AccountId.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenAllowance} proto.ITokenAllowance\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\nexport default class TokenAllowance {\n /**\n * @internal\n * @param {object} props\n * @param {TokenId} props.tokenId\n * @param {AccountId} props.spenderAccountId\n * @param {AccountId | null} props.ownerAccountId\n * @param {Long | null} props.amount\n */\n constructor(props) {\n /**\n * The token that the allowance pertains to.\n *\n * @readonly\n */\n this.tokenId = props.tokenId;\n\n /**\n * The account ID of the spender of the hbar allowance.\n *\n * @readonly\n */\n this.spenderAccountId = props.spenderAccountId;\n\n /**\n * The account ID of the owner of the hbar allowance.\n *\n * @readonly\n */\n this.ownerAccountId = props.ownerAccountId;\n\n /**\n * The current balance of the spender's token allowance.\n * **NOTE**: If `null`, the spender has access to all of the account owner's NFT instances\n * (currently owned and any in the future).\n *\n * @readonly\n */\n this.amount = props.amount;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ITokenAllowance} allowance\n * @returns {TokenAllowance}\n */\n static _fromProtobuf(allowance) {\n return new TokenAllowance({\n tokenId: TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (allowance.tokenId)\n ),\n spenderAccountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (allowance.spender)\n ),\n ownerAccountId:\n allowance.owner != null\n ? AccountId._fromProtobuf(\n /**@type {proto.IAccountID}*/ (allowance.owner)\n )\n : null,\n amount:\n allowance.amount != null\n ? Long.fromValue(/** @type {Long} */ (allowance.amount))\n : null,\n });\n }\n\n /**\n * @internal\n * @returns {proto.ITokenAllowance}\n */\n _toProtobuf() {\n return {\n tokenId: this.tokenId._toProtobuf(),\n spender: this.spenderAccountId._toProtobuf(),\n owner:\n this.ownerAccountId != null\n ? this.ownerAccountId._toProtobuf()\n : null,\n amount: this.amount,\n };\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport AccountId from \"./AccountId.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").INftAllowance} proto.INftAllowance\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\nexport default class TokenNftAllowance {\n /**\n * @internal\n * @param {object} props\n * @param {TokenId} props.tokenId\n * @param {AccountId} props.spenderAccountId\n * @param {AccountId | null} props.ownerAccountId\n * @param {Long[] | null} props.serialNumbers\n */\n constructor(props) {\n /**\n * The token that the allowance pertains to.\n *\n * @readonly\n */\n this.tokenId = props.tokenId;\n\n /**\n * The account ID of the spender of the hbar allowance.\n *\n * @readonly\n */\n this.spenderAccountId = props.spenderAccountId;\n\n /**\n * The account ID of the owner of the hbar allowance.\n *\n * @readonly\n */\n this.ownerAccountId = props.ownerAccountId;\n\n /**\n * The current balance of the spender's token allowance.\n * **NOTE**: If `null`, the spender has access to all of the account owner's NFT instances\n * (currently owned and any in the future).\n *\n * @readonly\n */\n this.serialNumbers = props.serialNumbers;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.INftAllowance} allowance\n * @returns {TokenNftAllowance}\n */\n static _fromProtobuf(allowance) {\n return new TokenNftAllowance({\n tokenId: TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (allowance.tokenId)\n ),\n spenderAccountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (allowance.spender)\n ),\n ownerAccountId:\n allowance.owner != null\n ? AccountId._fromProtobuf(\n /**@type {proto.IAccountID}*/ (allowance.owner)\n )\n : null,\n serialNumbers:\n allowance.approvedForAll != null &&\n allowance.approvedForAll.value\n ? null\n : allowance.serialNumbers != null\n ? allowance.serialNumbers.map((serialNumber) =>\n Long.fromValue(serialNumber)\n )\n : [],\n });\n }\n\n /**\n * @internal\n * @returns {proto.INftAllowance}\n */\n _toProtobuf() {\n return {\n tokenId: this.tokenId._toProtobuf(),\n spender: this.spenderAccountId._toProtobuf(),\n owner:\n this.ownerAccountId != null\n ? this.ownerAccountId._toProtobuf()\n : null,\n approvedForAll: this.serialNumbers == null ? { value: true } : null,\n serialNumbers: this.serialNumbers,\n };\n }\n}\n","import ContractFunctionSelector, {\n ArgumentType,\n} from \"./ContractFunctionSelector.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport BigNumber from \"bignumber.js\";\nimport * as util from \"../util.js\";\n\nexport default class ContractFunctionParameters {\n constructor() {\n /**\n * @type {ContractFunctionSelector}\n */\n this._selector = new ContractFunctionSelector();\n\n /**\n * @type {import(\"./ContractFunctionSelector.js\").Argument[]}\n */\n this._arguments = [];\n }\n\n /**\n * @param {string} value\n * @returns {ContractFunctionParameters}\n */\n addString(value) {\n this._selector.addString();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {string[]} value\n * @returns {ContractFunctionParameters}\n */\n addStringArray(value) {\n this._selector.addStringArray();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {Uint8Array} value\n * @returns {ContractFunctionParameters}\n */\n addBytes(value) {\n this._selector.addBytes();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {Uint8Array} value\n * @returns {ContractFunctionParameters}\n */\n addBytes32(value) {\n if (value.length !== 32) {\n throw new Error(\n `addBytes32 expected array to be of length 32, but received ${value.length}`\n );\n }\n\n this._selector.addBytes32();\n return this._addParam(value, false);\n }\n\n /**\n * @param {Uint8Array[]} value\n * @returns {ContractFunctionParameters}\n */\n addBytesArray(value) {\n this._selector.addBytesArray();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {Uint8Array[]} value\n * @returns {ContractFunctionParameters}\n */\n addBytes32Array(value) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, entry] of value.entries()) {\n if (entry.length !== 32) {\n throw new Error(\n `addBytes32 expected array to be of length 32, but received ${entry.length}`\n );\n }\n }\n\n this._selector.addBytes32Array();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {boolean} value\n * @returns {ContractFunctionParameters}\n */\n addBool(value) {\n this._selector.addBool();\n\n return this._addParam(value, false);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addInt8(value) {\n this._selector.addInt8();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addInt32(value) {\n this._selector.addInt32();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber} value\n * @returns {ContractFunctionParameters}\n */\n addInt64(value) {\n this._selector.addInt64();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber} value\n * @returns {ContractFunctionParameters}\n */\n addInt256(value) {\n this._selector.addInt256();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt8Array(value) {\n this._selector.addInt8Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt32Array(value) {\n this._selector.addInt32Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt64Array(value) {\n this._selector.addInt64Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt256Array(value) {\n this._selector.addInt256Array();\n console.log(\"asdf\");\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addUint8(value) {\n this._selector.addUint8();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addUint32(value) {\n this._selector.addUint32();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber} value\n * @returns {ContractFunctionParameters}\n */\n addUint64(value) {\n this._selector.addUint64();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber | number} value\n * @returns {ContractFunctionParameters}\n */\n addUint256(value) {\n this._selector.addUint256();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint8Array(value) {\n this._selector.addUint8Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint32Array(value) {\n this._selector.addUint32Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint64Array(value) {\n this._selector.addUint64Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint256Array(value) {\n this._selector.addUint256Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {string} value\n * @returns {ContractFunctionParameters}\n */\n addAddress(value) {\n // Allow `0x` prefix\n if (value.length !== 40 && value.length !== 42) {\n throw new Error(\n \"`address` type requires parameter to be 40 or 42 characters\"\n );\n }\n\n const par =\n value.length === 40\n ? hex.decode(value)\n : hex.decode(value.substring(2));\n\n this._selector.addAddress();\n\n return this._addParam(par, false);\n }\n\n /**\n * @param {string[]} value\n * @returns {ContractFunctionParameters}\n */\n addAddressArray(value) {\n /**\n * @type {Uint8Array[]}\n */\n const par = [];\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, entry] of value.entries()) {\n if (entry.length !== 40 && entry.length !== 42) {\n throw new Error(\n \"`address` type requires parameter to be 40 or 42 characters\"\n );\n }\n\n const buf =\n entry.length === 40\n ? hex.decode(entry)\n : hex.decode(entry.substring(2));\n\n par.push(buf);\n }\n\n this._selector.addAddressArray();\n\n return this._addParam(par, true);\n }\n\n /**\n * @param {string} address\n * @param {ContractFunctionSelector} selector\n * @returns {ContractFunctionParameters}\n */\n addFunction(address, selector) {\n const addressParam = hex.decode(address);\n const functionSelector = selector._build();\n\n if (addressParam.length !== 20) {\n throw new Error(\n \"`function` type requires parameter `address` to be exactly 20 bytes\"\n );\n }\n\n this._selector.addFunction();\n\n const proto = new Uint8Array(24);\n proto.set(addressParam, 0);\n proto.set(functionSelector, 20);\n\n return this._addParam(proto, false);\n }\n\n /**\n * @internal\n * @param {string | boolean | number | Uint8Array | BigNumber | string[] | boolean[] | number[] | Uint8Array[] | BigNumber[]} param\n * @param {boolean} dynamic\n * @returns {ContractFunctionParameters}\n */\n _addParam(param, dynamic) {\n const index = this._selector._paramTypes.length - 1;\n const value = argumentToBytes(param, this._selector._paramTypes[index]);\n\n this._arguments.push({ dynamic, value });\n\n return this;\n }\n\n /**\n * @internal\n * @param {string=} name\n * @returns {Uint8Array}\n */\n _build(name) {\n const includeId = name != null;\n const nameOffset = includeId ? 4 : 0;\n\n const length =\n this._arguments.length === 0\n ? nameOffset\n : this._arguments.length * 32 +\n this._arguments\n .map((arg) => (arg.dynamic ? arg.value.length : 0))\n .reduce((sum, value) => sum + value) +\n nameOffset;\n\n const func = new Uint8Array(length);\n\n if (includeId) {\n func.set(this._selector._build(name), 0);\n }\n\n let offset = 32 * this._arguments.length;\n\n for (const [i, { dynamic, value }] of this._arguments.entries()) {\n if (dynamic) {\n const view = util.safeView(func, nameOffset + i * 32 + 28);\n view.setUint32(0, offset);\n func.set(value, view.getUint32(0) + nameOffset);\n offset += value.length;\n } else {\n func.set(value, nameOffset + i * 32);\n }\n }\n\n return func;\n }\n}\n\n/**\n * @param {string | boolean | number | Uint8Array | BigNumber | string[] | boolean[] | number[] | Uint8Array[] | BigNumber[]} param\n * @param {import(\"./ContractFunctionSelector.js\").SolidityType} ty\n * @returns {Uint8Array}\n */\nfunction argumentToBytes(param, ty) {\n let value = new Uint8Array(32);\n let valueView = util.safeView(value);\n /** @type {Uint8Array} */\n let par;\n\n if (ty.array) {\n if (!Array.isArray(param)) {\n throw new TypeError(\n \"SolidityType indicates type is array, but parameter is not an array\"\n );\n }\n\n /**\n * @type {Uint8Array[]}\n */\n const values = [];\n\n // Generic over any type of array\n // Destructuring required so the first variable must be assigned\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, p] of param.entries()) {\n const arg = argumentToBytes(p, { ty: ty.ty, array: false });\n values.push(arg);\n }\n\n const totalLengthOfValues = values\n .map((a) => a.length)\n .reduce((total, current) => total + current);\n\n switch (ty.ty) {\n case ArgumentType.uint8:\n case ArgumentType.int8:\n case ArgumentType.uint16:\n case ArgumentType.int16:\n case ArgumentType.uint32:\n case ArgumentType.int32:\n case ArgumentType.uint64:\n case ArgumentType.int64:\n case ArgumentType.uint256:\n case ArgumentType.int256:\n case ArgumentType.bool:\n case ArgumentType.bytes32:\n case ArgumentType.address:\n case ArgumentType.func:\n value = new Uint8Array(totalLengthOfValues + 32);\n break;\n case ArgumentType.bytes:\n case ArgumentType.string:\n value = new Uint8Array(\n values.length * 32 + totalLengthOfValues + 32\n );\n break;\n default:\n throw new TypeError(\n `Expected param type to be ArgumentType, but received ${ty.ty}`\n );\n }\n\n valueView = util.safeView(value, 28);\n valueView.setUint32(0, values.length);\n\n let offset = 32 * values.length;\n\n for (const [i, e] of values.entries()) {\n switch (ty.ty) {\n case ArgumentType.uint8:\n case ArgumentType.int8:\n case ArgumentType.uint16:\n case ArgumentType.int16:\n case ArgumentType.uint32:\n case ArgumentType.int32:\n case ArgumentType.uint64:\n case ArgumentType.int64:\n case ArgumentType.uint256:\n case ArgumentType.int256:\n case ArgumentType.bool:\n case ArgumentType.bytes32:\n case ArgumentType.address:\n case ArgumentType.func:\n value.set(e, i * 32 + 32);\n break;\n case ArgumentType.bytes:\n case ArgumentType.string:\n // eslint-disable-next-line no-case-declarations\n const view = util.safeView(value, (i + 1) * 32 + 28);\n view.setUint32(0, offset);\n value.set(e, view.getUint32(0) + 32);\n offset += e.length;\n break;\n default:\n throw new TypeError(\n `Expected param type to be ArgumentType, but received ${ty.ty}`\n );\n }\n }\n\n return value;\n }\n\n switch (ty.ty) {\n case ArgumentType.uint8:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 31,\n valueView.setUint8.bind(valueView)\n );\n return value;\n case ArgumentType.int8:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 31,\n valueView.setInt8.bind(valueView)\n );\n return value;\n case ArgumentType.uint16:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 30,\n valueView.setUint16.bind(valueView)\n );\n return value;\n case ArgumentType.int16:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 30,\n valueView.setInt16.bind(valueView)\n );\n return value;\n case ArgumentType.uint32:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 28,\n valueView.setUint32.bind(valueView)\n );\n return value;\n case ArgumentType.int32:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 28,\n valueView.setInt32.bind(valueView)\n );\n return value;\n // int64, uint64, and int256 both expect the parameter to be an Uint8Array instead of number\n case ArgumentType.uint64:\n case ArgumentType.int64:\n if (BigNumber.isBigNumber(param)) {\n // eslint-disable-next-line no-case-declarations\n let par = param.toString(16);\n if (par.length > 16) {\n throw new TypeError(\n \"uint64/int64 requires BigNumber to be less than or equal to 8 bytes\"\n );\n } else if (!param.isInteger()) {\n throw new TypeError(\n \"uint64/int64 requires BigNumber to be an integer\"\n );\n }\n\n if (par.length % 2 === 1) {\n par = `0${par}`;\n }\n\n // eslint-disable-next-line no-case-declarations\n const buf = hex.decode(par);\n value.set(buf, 32 - buf.length);\n }\n return value;\n case ArgumentType.int256:\n case ArgumentType.uint256:\n if (BigNumber.isBigNumber(param)) {\n let par = param.toString(16);\n if (par.length % 2 === 1) {\n par = `0${par}`;\n }\n\n const buf = hex.decode(par);\n value.set(buf, 32 - buf.length);\n }\n return value;\n case ArgumentType.address:\n value.set(/** @type {Uint8Array} */ (param), 32 - 20);\n return value;\n case ArgumentType.bool:\n value[31] = /** @type {boolean} */ (param) ? 1 : 0;\n return value;\n case ArgumentType.func:\n value.set(/** @type {Uint8Array} */ (param), 32 - 24);\n return value;\n case ArgumentType.bytes32:\n value.set(/** @type {Uint8Array} */ (param), 0);\n return value;\n // Bytes should have not the length already encoded\n // JS String type is encoded as UTF-16 whilst Solidity `string` type is UTF-8 encoded.\n // So if will assume is already correctly updated to being a Uint8Array of UTF-8 string\n case ArgumentType.bytes:\n case ArgumentType.string:\n // If value is of type string, encode it in UTF-8 format and conver it to Uint8Array\n // Required because JS Strings are UTF-16\n // eslint-disable-next-line no-case-declarations\n par =\n param instanceof Uint8Array\n ? param\n : utf8.encode(/** @type {string} */ (param));\n\n // Resize value to a 32 byte boundary if needed\n if (\n Math.floor(par.length / 32) >= 0 &&\n Math.floor(par.length % 32) !== 0\n ) {\n value = new Uint8Array(\n (Math.floor(par.length / 32) + 1) * 32 + 32\n );\n } else {\n value = new Uint8Array(64);\n }\n\n value.set(par, 32);\n\n valueView = util.safeView(value, 28);\n valueView.setUint32(0, par.length);\n return value;\n default:\n throw new Error(`Unsupported argument type: ${ty.toString()}`);\n }\n}\n\n/**\n * @param {number | BigNumber} param\n * @param {number} byteoffset\n * @param {(byteOffset: number, value: number) => void} func\n * @returns {void}\n */\nfunction numberToBytes(param, byteoffset, func) {\n const value = BigNumber.isBigNumber(param) ? param.toNumber() : param;\n\n func(byteoffset, value);\n}\n","import AccountId from \"../account/AccountId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n */\n\nexport default class CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n */\n constructor(props = {}) {\n /**\n * @type {?AccountId}\n */\n this._feeCollectorAccountId;\n\n if (props.feeCollectorAccountId != null) {\n this.setFeeCollectorAccountId(props.feeCollectorAccountId);\n }\n }\n\n /**\n * @returns {?AccountId}\n */\n get feeCollectorAccountId() {\n return this._feeCollectorAccountId;\n }\n\n /**\n * @param {AccountId | string} feeCollectorAccountId\n * @returns {this}\n */\n setFeeCollectorAccountId(feeCollectorAccountId) {\n this._feeCollectorAccountId =\n typeof feeCollectorAccountId === \"string\"\n ? AccountId.fromString(feeCollectorAccountId)\n : feeCollectorAccountId;\n return this;\n }\n\n /**\n * @internal\n * @abstract\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n throw new Error(\"not implemented\");\n }\n}\n","import CustomFee from \"./CustomFee.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\n\n/**\n * @typedef {import(\"./FeeAssessmentMethod.js\").default} FeeAssessmentMethod\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n * @typedef {import(\"@hashgraph/proto\").IFractionalFee} proto.IFractionalFee\n * @typedef {import(\"@hashgraph/proto\").IFraction} proto.IFraction\n */\n\nexport default class CustomFractionalFee extends CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {Long | number} [props.numerator]\n * @param {Long | number} [props.denominator]\n * @param {Long | number} [props.min]\n * @param {Long | number} [props.max]\n * @param {FeeAssessmentMethod} [props.assessmentMethod]\n */\n constructor(props = {}) {\n super(props);\n\n /**\n * @type {?Long}\n */\n this._numerator;\n\n if (props.numerator != null) {\n this.setNumerator(props.numerator);\n }\n\n /**\n * @type {?Long}\n */\n this._denominator;\n\n if (props.denominator != null) {\n this.setDenominator(props.denominator);\n }\n\n /**\n * @type {?Long}\n */\n this._min;\n\n if (props.min != null) {\n this.setMin(props.min);\n }\n\n /**\n * @type {?Long}\n */\n this._max;\n\n if (props.max != null) {\n this.setMax(props.max);\n }\n\n /**\n * @type {?FeeAssessmentMethod}\n */\n this._assessmentMethod;\n\n if (props.assessmentMethod != null) {\n this.setAssessmentMethod(props.assessmentMethod);\n }\n }\n\n /**\n * @returns {?Long}\n */\n get numerator() {\n return this._numerator;\n }\n\n /**\n * @param {Long | number} numerator\n * @returns {CustomFractionalFee}\n */\n setNumerator(numerator) {\n this._numerator =\n typeof numerator === \"number\"\n ? Long.fromNumber(numerator)\n : numerator;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get denominator() {\n return this._denominator;\n }\n\n /**\n * @param {Long | number} denominator\n * @returns {CustomFractionalFee}\n */\n setDenominator(denominator) {\n this._denominator =\n typeof denominator === \"number\"\n ? Long.fromNumber(denominator)\n : denominator;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get min() {\n return this._min;\n }\n\n /**\n * @param {Long | number} min\n * @returns {CustomFractionalFee}\n */\n setMin(min) {\n this._min = typeof min === \"number\" ? Long.fromNumber(min) : min;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get max() {\n return this._max;\n }\n\n /**\n * @param {Long | number} max\n * @returns {CustomFractionalFee}\n */\n setMax(max) {\n this._max = typeof max === \"number\" ? Long.fromNumber(max) : max;\n return this;\n }\n\n /**\n * @returns {?FeeAssessmentMethod}\n */\n get assessmentMethod() {\n return this._assessmentMethod;\n }\n\n /**\n * @param {FeeAssessmentMethod} assessmentMethod\n * @returns {CustomFractionalFee}\n */\n setAssessmentMethod(assessmentMethod) {\n this._assessmentMethod = assessmentMethod;\n return this;\n }\n\n /**\n * @internal\n * @override\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n const fee = /** @type {proto.IFractionalFee} */ (info.fractionalFee);\n const fractional = /** @type {proto.IFraction} */ (\n fee.fractionalAmount\n );\n\n return new CustomFractionalFee({\n feeCollectorAccountId:\n info.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(info.feeCollectorAccountId)\n : undefined,\n numerator:\n fractional.numerator != null ? fractional.numerator : undefined,\n denominator:\n fractional.denominator != null\n ? fractional.denominator\n : undefined,\n min: fee.minimumAmount != null ? fee.minimumAmount : undefined,\n max: fee.maximumAmount != null ? fee.maximumAmount : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n fractionalFee: {\n fractionalAmount: {\n numerator: this._numerator,\n denominator: this._denominator,\n },\n minimumAmount: this._min,\n maximumAmount: this._max,\n },\n };\n }\n}\n","import CustomFee from \"./CustomFee.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\nimport CustomFixedFee from \"./CustomFixedFee.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IFraction} proto.IFraction\n * @typedef {import(\"@hashgraph/proto\").IRoyaltyFee} proto.IRoyaltyFee\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n * @typedef {import(\"@hashgraph/proto\").IFixedFee} proto.IFixedFee\n */\n\nexport default class CustomRoyalyFee extends CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {Long | number} [props.numerator]\n * @param {Long | number} [props.denominator]\n * @param {CustomFixedFee} [props.fallbackFee]\n */\n constructor(props = {}) {\n super(props);\n\n /**\n * @type {?CustomFixedFee}\n */\n this._fallbackFee;\n\n if (props.fallbackFee != null) {\n this.setFallbackFee(props.fallbackFee);\n }\n\n /**\n * @type {?Long}\n */\n this._numerator;\n\n if (props.numerator != null) {\n this.setNumerator(props.numerator);\n }\n\n /**\n * @type {?Long}\n */\n this._denominator;\n\n if (props.denominator != null) {\n this.setDenominator(props.denominator);\n }\n }\n\n /**\n * @returns {?CustomFixedFee}\n */\n get fallbackFee() {\n return this._fallbackFee;\n }\n\n /**\n * @param {CustomFixedFee} fallbackFee\n * @returns {CustomRoyalyFee}\n */\n setFallbackFee(fallbackFee) {\n this._fallbackFee = fallbackFee;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get numerator() {\n return this._numerator;\n }\n\n /**\n * @param {Long | number} numerator\n * @returns {CustomRoyalyFee}\n */\n setNumerator(numerator) {\n this._numerator =\n typeof numerator === \"number\"\n ? Long.fromNumber(numerator)\n : numerator;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get denominator() {\n return this._denominator;\n }\n\n /**\n * @param {Long | number} denominator\n * @returns {CustomRoyalyFee}\n */\n setDenominator(denominator) {\n this._denominator =\n typeof denominator === \"number\"\n ? Long.fromNumber(denominator)\n : denominator;\n return this;\n }\n\n /**\n * @internal\n * @override\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n const fee = /** @type {proto.IRoyaltyFee} */ (info.royaltyFee);\n const fraction = /** @type {proto.IFraction} */ (\n fee.exchangeValueFraction\n );\n\n return new CustomRoyalyFee({\n feeCollectorAccountId:\n info.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(info.feeCollectorAccountId)\n : undefined,\n fallbackFee:\n fee.fallbackFee != null\n ? /** @type {CustomFixedFee} */ (\n CustomFixedFee._fromProtobuf({\n fixedFee: fee.fallbackFee,\n })\n )\n : undefined,\n numerator:\n fraction.numerator != null ? fraction.numerator : undefined,\n denominator:\n fraction.denominator != null ? fraction.denominator : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n royaltyFee: {\n exchangeValueFraction: {\n numerator: this._numerator,\n denominator: this._denominator,\n },\n fallbackFee:\n this._fallbackFee != null\n ? this._fallbackFee._toProtobuf().fixedFee\n : null,\n },\n };\n }\n}\n","// based on the aes implimentation in triple sec\n// https://github.com/keybase/triplesec\n// which is in turn based on the one from crypto-js\n// https://code.google.com/p/crypto-js/\n\nvar Buffer = require('safe-buffer').Buffer\n\nfunction asUInt32Array (buf) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n\n var len = (buf.length / 4) | 0\n var out = new Array(len)\n\n for (var i = 0; i < len; i++) {\n out[i] = buf.readUInt32BE(i * 4)\n }\n\n return out\n}\n\nfunction scrubVec (v) {\n for (var i = 0; i < v.length; v++) {\n v[i] = 0\n }\n}\n\nfunction cryptBlock (M, keySchedule, SUB_MIX, SBOX, nRounds) {\n var SUB_MIX0 = SUB_MIX[0]\n var SUB_MIX1 = SUB_MIX[1]\n var SUB_MIX2 = SUB_MIX[2]\n var SUB_MIX3 = SUB_MIX[3]\n\n var s0 = M[0] ^ keySchedule[0]\n var s1 = M[1] ^ keySchedule[1]\n var s2 = M[2] ^ keySchedule[2]\n var s3 = M[3] ^ keySchedule[3]\n var t0, t1, t2, t3\n var ksRow = 4\n\n for (var round = 1; round < nRounds; round++) {\n t0 = SUB_MIX0[s0 >>> 24] ^ SUB_MIX1[(s1 >>> 16) & 0xff] ^ SUB_MIX2[(s2 >>> 8) & 0xff] ^ SUB_MIX3[s3 & 0xff] ^ keySchedule[ksRow++]\n t1 = SUB_MIX0[s1 >>> 24] ^ SUB_MIX1[(s2 >>> 16) & 0xff] ^ SUB_MIX2[(s3 >>> 8) & 0xff] ^ SUB_MIX3[s0 & 0xff] ^ keySchedule[ksRow++]\n t2 = SUB_MIX0[s2 >>> 24] ^ SUB_MIX1[(s3 >>> 16) & 0xff] ^ SUB_MIX2[(s0 >>> 8) & 0xff] ^ SUB_MIX3[s1 & 0xff] ^ keySchedule[ksRow++]\n t3 = SUB_MIX0[s3 >>> 24] ^ SUB_MIX1[(s0 >>> 16) & 0xff] ^ SUB_MIX2[(s1 >>> 8) & 0xff] ^ SUB_MIX3[s2 & 0xff] ^ keySchedule[ksRow++]\n s0 = t0\n s1 = t1\n s2 = t2\n s3 = t3\n }\n\n t0 = ((SBOX[s0 >>> 24] << 24) | (SBOX[(s1 >>> 16) & 0xff] << 16) | (SBOX[(s2 >>> 8) & 0xff] << 8) | SBOX[s3 & 0xff]) ^ keySchedule[ksRow++]\n t1 = ((SBOX[s1 >>> 24] << 24) | (SBOX[(s2 >>> 16) & 0xff] << 16) | (SBOX[(s3 >>> 8) & 0xff] << 8) | SBOX[s0 & 0xff]) ^ keySchedule[ksRow++]\n t2 = ((SBOX[s2 >>> 24] << 24) | (SBOX[(s3 >>> 16) & 0xff] << 16) | (SBOX[(s0 >>> 8) & 0xff] << 8) | SBOX[s1 & 0xff]) ^ keySchedule[ksRow++]\n t3 = ((SBOX[s3 >>> 24] << 24) | (SBOX[(s0 >>> 16) & 0xff] << 16) | (SBOX[(s1 >>> 8) & 0xff] << 8) | SBOX[s2 & 0xff]) ^ keySchedule[ksRow++]\n t0 = t0 >>> 0\n t1 = t1 >>> 0\n t2 = t2 >>> 0\n t3 = t3 >>> 0\n\n return [t0, t1, t2, t3]\n}\n\n// AES constants\nvar RCON = [0x00, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36]\nvar G = (function () {\n // Compute double table\n var d = new Array(256)\n for (var j = 0; j < 256; j++) {\n if (j < 128) {\n d[j] = j << 1\n } else {\n d[j] = (j << 1) ^ 0x11b\n }\n }\n\n var SBOX = []\n var INV_SBOX = []\n var SUB_MIX = [[], [], [], []]\n var INV_SUB_MIX = [[], [], [], []]\n\n // Walk GF(2^8)\n var x = 0\n var xi = 0\n for (var i = 0; i < 256; ++i) {\n // Compute sbox\n var sx = xi ^ (xi << 1) ^ (xi << 2) ^ (xi << 3) ^ (xi << 4)\n sx = (sx >>> 8) ^ (sx & 0xff) ^ 0x63\n SBOX[x] = sx\n INV_SBOX[sx] = x\n\n // Compute multiplication\n var x2 = d[x]\n var x4 = d[x2]\n var x8 = d[x4]\n\n // Compute sub bytes, mix columns tables\n var t = (d[sx] * 0x101) ^ (sx * 0x1010100)\n SUB_MIX[0][x] = (t << 24) | (t >>> 8)\n SUB_MIX[1][x] = (t << 16) | (t >>> 16)\n SUB_MIX[2][x] = (t << 8) | (t >>> 24)\n SUB_MIX[3][x] = t\n\n // Compute inv sub bytes, inv mix columns tables\n t = (x8 * 0x1010101) ^ (x4 * 0x10001) ^ (x2 * 0x101) ^ (x * 0x1010100)\n INV_SUB_MIX[0][sx] = (t << 24) | (t >>> 8)\n INV_SUB_MIX[1][sx] = (t << 16) | (t >>> 16)\n INV_SUB_MIX[2][sx] = (t << 8) | (t >>> 24)\n INV_SUB_MIX[3][sx] = t\n\n if (x === 0) {\n x = xi = 1\n } else {\n x = x2 ^ d[d[d[x8 ^ x2]]]\n xi ^= d[d[xi]]\n }\n }\n\n return {\n SBOX: SBOX,\n INV_SBOX: INV_SBOX,\n SUB_MIX: SUB_MIX,\n INV_SUB_MIX: INV_SUB_MIX\n }\n})()\n\nfunction AES (key) {\n this._key = asUInt32Array(key)\n this._reset()\n}\n\nAES.blockSize = 4 * 4\nAES.keySize = 256 / 8\nAES.prototype.blockSize = AES.blockSize\nAES.prototype.keySize = AES.keySize\nAES.prototype._reset = function () {\n var keyWords = this._key\n var keySize = keyWords.length\n var nRounds = keySize + 6\n var ksRows = (nRounds + 1) * 4\n\n var keySchedule = []\n for (var k = 0; k < keySize; k++) {\n keySchedule[k] = keyWords[k]\n }\n\n for (k = keySize; k < ksRows; k++) {\n var t = keySchedule[k - 1]\n\n if (k % keySize === 0) {\n t = (t << 8) | (t >>> 24)\n t =\n (G.SBOX[t >>> 24] << 24) |\n (G.SBOX[(t >>> 16) & 0xff] << 16) |\n (G.SBOX[(t >>> 8) & 0xff] << 8) |\n (G.SBOX[t & 0xff])\n\n t ^= RCON[(k / keySize) | 0] << 24\n } else if (keySize > 6 && k % keySize === 4) {\n t =\n (G.SBOX[t >>> 24] << 24) |\n (G.SBOX[(t >>> 16) & 0xff] << 16) |\n (G.SBOX[(t >>> 8) & 0xff] << 8) |\n (G.SBOX[t & 0xff])\n }\n\n keySchedule[k] = keySchedule[k - keySize] ^ t\n }\n\n var invKeySchedule = []\n for (var ik = 0; ik < ksRows; ik++) {\n var ksR = ksRows - ik\n var tt = keySchedule[ksR - (ik % 4 ? 0 : 4)]\n\n if (ik < 4 || ksR <= 4) {\n invKeySchedule[ik] = tt\n } else {\n invKeySchedule[ik] =\n G.INV_SUB_MIX[0][G.SBOX[tt >>> 24]] ^\n G.INV_SUB_MIX[1][G.SBOX[(tt >>> 16) & 0xff]] ^\n G.INV_SUB_MIX[2][G.SBOX[(tt >>> 8) & 0xff]] ^\n G.INV_SUB_MIX[3][G.SBOX[tt & 0xff]]\n }\n }\n\n this._nRounds = nRounds\n this._keySchedule = keySchedule\n this._invKeySchedule = invKeySchedule\n}\n\nAES.prototype.encryptBlockRaw = function (M) {\n M = asUInt32Array(M)\n return cryptBlock(M, this._keySchedule, G.SUB_MIX, G.SBOX, this._nRounds)\n}\n\nAES.prototype.encryptBlock = function (M) {\n var out = this.encryptBlockRaw(M)\n var buf = Buffer.allocUnsafe(16)\n buf.writeUInt32BE(out[0], 0)\n buf.writeUInt32BE(out[1], 4)\n buf.writeUInt32BE(out[2], 8)\n buf.writeUInt32BE(out[3], 12)\n return buf\n}\n\nAES.prototype.decryptBlock = function (M) {\n M = asUInt32Array(M)\n\n // swap\n var m1 = M[1]\n M[1] = M[3]\n M[3] = m1\n\n var out = cryptBlock(M, this._invKeySchedule, G.INV_SUB_MIX, G.INV_SBOX, this._nRounds)\n var buf = Buffer.allocUnsafe(16)\n buf.writeUInt32BE(out[0], 0)\n buf.writeUInt32BE(out[3], 4)\n buf.writeUInt32BE(out[2], 8)\n buf.writeUInt32BE(out[1], 12)\n return buf\n}\n\nAES.prototype.scrub = function () {\n scrubVec(this._keySchedule)\n scrubVec(this._invKeySchedule)\n scrubVec(this._key)\n}\n\nmodule.exports.AES = AES\n","var Buffer = require('safe-buffer').Buffer\nvar MD5 = require('md5.js')\n\n/* eslint-disable camelcase */\nfunction EVP_BytesToKey (password, salt, keyBits, ivLen) {\n if (!Buffer.isBuffer(password)) password = Buffer.from(password, 'binary')\n if (salt) {\n if (!Buffer.isBuffer(salt)) salt = Buffer.from(salt, 'binary')\n if (salt.length !== 8) throw new RangeError('salt should be Buffer with 8 byte length')\n }\n\n var keyLen = keyBits / 8\n var key = Buffer.alloc(keyLen)\n var iv = Buffer.alloc(ivLen || 0)\n var tmp = Buffer.alloc(0)\n\n while (keyLen > 0 || ivLen > 0) {\n var hash = new MD5()\n hash.update(tmp)\n hash.update(password)\n if (salt) hash.update(salt)\n tmp = hash.digest()\n\n var used = 0\n\n if (keyLen > 0) {\n var keyStart = key.length - keyLen\n used = Math.min(keyLen, tmp.length)\n tmp.copy(key, keyStart, 0, used)\n keyLen -= used\n }\n\n if (used < tmp.length && ivLen > 0) {\n var ivStart = iv.length - ivLen\n var length = Math.min(ivLen, tmp.length - used)\n tmp.copy(iv, ivStart, used, used + length)\n ivLen -= length\n }\n }\n\n tmp.fill(0)\n return { key: key, iv: iv }\n}\n\nmodule.exports = EVP_BytesToKey\n","var asn1 = require('./asn1')\nvar aesid = require('./aesid.json')\nvar fixProc = require('./fixProc')\nvar ciphers = require('browserify-aes')\nvar compat = require('pbkdf2')\nvar Buffer = require('safe-buffer').Buffer\nmodule.exports = parseKeys\n\nfunction parseKeys (buffer) {\n var password\n if (typeof buffer === 'object' && !Buffer.isBuffer(buffer)) {\n password = buffer.passphrase\n buffer = buffer.key\n }\n if (typeof buffer === 'string') {\n buffer = Buffer.from(buffer)\n }\n\n var stripped = fixProc(buffer, password)\n\n var type = stripped.tag\n var data = stripped.data\n var subtype, ndata\n switch (type) {\n case 'CERTIFICATE':\n ndata = asn1.certificate.decode(data, 'der').tbsCertificate.subjectPublicKeyInfo\n // falls through\n case 'PUBLIC KEY':\n if (!ndata) {\n ndata = asn1.PublicKey.decode(data, 'der')\n }\n subtype = ndata.algorithm.algorithm.join('.')\n switch (subtype) {\n case '1.2.840.113549.1.1.1':\n return asn1.RSAPublicKey.decode(ndata.subjectPublicKey.data, 'der')\n case '1.2.840.10045.2.1':\n ndata.subjectPrivateKey = ndata.subjectPublicKey\n return {\n type: 'ec',\n data: ndata\n }\n case '1.2.840.10040.4.1':\n ndata.algorithm.params.pub_key = asn1.DSAparam.decode(ndata.subjectPublicKey.data, 'der')\n return {\n type: 'dsa',\n data: ndata.algorithm.params\n }\n default: throw new Error('unknown key id ' + subtype)\n }\n // throw new Error('unknown key type ' + type)\n case 'ENCRYPTED PRIVATE KEY':\n data = asn1.EncryptedPrivateKey.decode(data, 'der')\n data = decrypt(data, password)\n // falls through\n case 'PRIVATE KEY':\n ndata = asn1.PrivateKey.decode(data, 'der')\n subtype = ndata.algorithm.algorithm.join('.')\n switch (subtype) {\n case '1.2.840.113549.1.1.1':\n return asn1.RSAPrivateKey.decode(ndata.subjectPrivateKey, 'der')\n case '1.2.840.10045.2.1':\n return {\n curve: ndata.algorithm.curve,\n privateKey: asn1.ECPrivateKey.decode(ndata.subjectPrivateKey, 'der').privateKey\n }\n case '1.2.840.10040.4.1':\n ndata.algorithm.params.priv_key = asn1.DSAparam.decode(ndata.subjectPrivateKey, 'der')\n return {\n type: 'dsa',\n params: ndata.algorithm.params\n }\n default: throw new Error('unknown key id ' + subtype)\n }\n // throw new Error('unknown key type ' + type)\n case 'RSA PUBLIC KEY':\n return asn1.RSAPublicKey.decode(data, 'der')\n case 'RSA PRIVATE KEY':\n return asn1.RSAPrivateKey.decode(data, 'der')\n case 'DSA PRIVATE KEY':\n return {\n type: 'dsa',\n params: asn1.DSAPrivateKey.decode(data, 'der')\n }\n case 'EC PRIVATE KEY':\n data = asn1.ECPrivateKey.decode(data, 'der')\n return {\n curve: data.parameters.value,\n privateKey: data.privateKey\n }\n default: throw new Error('unknown key type ' + type)\n }\n}\nparseKeys.signature = asn1.signature\nfunction decrypt (data, password) {\n var salt = data.algorithm.decrypt.kde.kdeparams.salt\n var iters = parseInt(data.algorithm.decrypt.kde.kdeparams.iters.toString(), 10)\n var algo = aesid[data.algorithm.decrypt.cipher.algo.join('.')]\n var iv = data.algorithm.decrypt.cipher.iv\n var cipherText = data.subjectPrivateKey\n var keylen = parseInt(algo.split('-')[1], 10) / 8\n var key = compat.pbkdf2Sync(password, salt, iters, keylen, 'sha1')\n var cipher = ciphers.createDecipheriv(algo, key, iv)\n var out = []\n out.push(cipher.update(cipherText))\n out.push(cipher.final())\n return Buffer.concat(out)\n}\n","export { default as Key } from \"./Key.js\";\nexport { default as KeyList } from \"./KeyList.js\";\nexport { default as PrivateKey } from \"./PrivateKey.js\";\nexport { default as PublicKey } from \"./PublicKey.js\";\nexport { default as Mnemonic } from \"./Mnemonic.js\";\nexport { default as BadKeyError } from \"./BadKeyError.js\";\nexport { default as BadMnemonicError } from \"./BadMnemonicError.js\";\nexport { default as BadMnemonicReason } from \"./BadMnemonicReason.js\";\n","(function(nacl) {\n'use strict';\n\n// Ported in 2014 by Dmitry Chestnykh and Devi Mandiri.\n// Public domain.\n//\n// Implementation derived from TweetNaCl version 20140427.\n// See for details: http://tweetnacl.cr.yp.to/\n\nvar gf = function(init) {\n var i, r = new Float64Array(16);\n if (init) for (i = 0; i < init.length; i++) r[i] = init[i];\n return r;\n};\n\n// Pluggable, initialized in high-level API below.\nvar randombytes = function(/* x, n */) { throw new Error('no PRNG'); };\n\nvar _0 = new Uint8Array(16);\nvar _9 = new Uint8Array(32); _9[0] = 9;\n\nvar gf0 = gf(),\n gf1 = gf([1]),\n _121665 = gf([0xdb41, 1]),\n D = gf([0x78a3, 0x1359, 0x4dca, 0x75eb, 0xd8ab, 0x4141, 0x0a4d, 0x0070, 0xe898, 0x7779, 0x4079, 0x8cc7, 0xfe73, 0x2b6f, 0x6cee, 0x5203]),\n D2 = gf([0xf159, 0x26b2, 0x9b94, 0xebd6, 0xb156, 0x8283, 0x149a, 0x00e0, 0xd130, 0xeef3, 0x80f2, 0x198e, 0xfce7, 0x56df, 0xd9dc, 0x2406]),\n X = gf([0xd51a, 0x8f25, 0x2d60, 0xc956, 0xa7b2, 0x9525, 0xc760, 0x692c, 0xdc5c, 0xfdd6, 0xe231, 0xc0a4, 0x53fe, 0xcd6e, 0x36d3, 0x2169]),\n Y = gf([0x6658, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666]),\n I = gf([0xa0b0, 0x4a0e, 0x1b27, 0xc4ee, 0xe478, 0xad2f, 0x1806, 0x2f43, 0xd7a7, 0x3dfb, 0x0099, 0x2b4d, 0xdf0b, 0x4fc1, 0x2480, 0x2b83]);\n\nfunction ts64(x, i, h, l) {\n x[i] = (h >> 24) & 0xff;\n x[i+1] = (h >> 16) & 0xff;\n x[i+2] = (h >> 8) & 0xff;\n x[i+3] = h & 0xff;\n x[i+4] = (l >> 24) & 0xff;\n x[i+5] = (l >> 16) & 0xff;\n x[i+6] = (l >> 8) & 0xff;\n x[i+7] = l & 0xff;\n}\n\nfunction vn(x, xi, y, yi, n) {\n var i,d = 0;\n for (i = 0; i < n; i++) d |= x[xi+i]^y[yi+i];\n return (1 & ((d - 1) >>> 8)) - 1;\n}\n\nfunction crypto_verify_16(x, xi, y, yi) {\n return vn(x,xi,y,yi,16);\n}\n\nfunction crypto_verify_32(x, xi, y, yi) {\n return vn(x,xi,y,yi,32);\n}\n\nfunction core_salsa20(o, p, k, c) {\n var j0 = c[ 0] & 0xff | (c[ 1] & 0xff)<<8 | (c[ 2] & 0xff)<<16 | (c[ 3] & 0xff)<<24,\n j1 = k[ 0] & 0xff | (k[ 1] & 0xff)<<8 | (k[ 2] & 0xff)<<16 | (k[ 3] & 0xff)<<24,\n j2 = k[ 4] & 0xff | (k[ 5] & 0xff)<<8 | (k[ 6] & 0xff)<<16 | (k[ 7] & 0xff)<<24,\n j3 = k[ 8] & 0xff | (k[ 9] & 0xff)<<8 | (k[10] & 0xff)<<16 | (k[11] & 0xff)<<24,\n j4 = k[12] & 0xff | (k[13] & 0xff)<<8 | (k[14] & 0xff)<<16 | (k[15] & 0xff)<<24,\n j5 = c[ 4] & 0xff | (c[ 5] & 0xff)<<8 | (c[ 6] & 0xff)<<16 | (c[ 7] & 0xff)<<24,\n j6 = p[ 0] & 0xff | (p[ 1] & 0xff)<<8 | (p[ 2] & 0xff)<<16 | (p[ 3] & 0xff)<<24,\n j7 = p[ 4] & 0xff | (p[ 5] & 0xff)<<8 | (p[ 6] & 0xff)<<16 | (p[ 7] & 0xff)<<24,\n j8 = p[ 8] & 0xff | (p[ 9] & 0xff)<<8 | (p[10] & 0xff)<<16 | (p[11] & 0xff)<<24,\n j9 = p[12] & 0xff | (p[13] & 0xff)<<8 | (p[14] & 0xff)<<16 | (p[15] & 0xff)<<24,\n j10 = c[ 8] & 0xff | (c[ 9] & 0xff)<<8 | (c[10] & 0xff)<<16 | (c[11] & 0xff)<<24,\n j11 = k[16] & 0xff | (k[17] & 0xff)<<8 | (k[18] & 0xff)<<16 | (k[19] & 0xff)<<24,\n j12 = k[20] & 0xff | (k[21] & 0xff)<<8 | (k[22] & 0xff)<<16 | (k[23] & 0xff)<<24,\n j13 = k[24] & 0xff | (k[25] & 0xff)<<8 | (k[26] & 0xff)<<16 | (k[27] & 0xff)<<24,\n j14 = k[28] & 0xff | (k[29] & 0xff)<<8 | (k[30] & 0xff)<<16 | (k[31] & 0xff)<<24,\n j15 = c[12] & 0xff | (c[13] & 0xff)<<8 | (c[14] & 0xff)<<16 | (c[15] & 0xff)<<24;\n\n var x0 = j0, x1 = j1, x2 = j2, x3 = j3, x4 = j4, x5 = j5, x6 = j6, x7 = j7,\n x8 = j8, x9 = j9, x10 = j10, x11 = j11, x12 = j12, x13 = j13, x14 = j14,\n x15 = j15, u;\n\n for (var i = 0; i < 20; i += 2) {\n u = x0 + x12 | 0;\n x4 ^= u<<7 | u>>>(32-7);\n u = x4 + x0 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x4 | 0;\n x12 ^= u<<13 | u>>>(32-13);\n u = x12 + x8 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x1 | 0;\n x9 ^= u<<7 | u>>>(32-7);\n u = x9 + x5 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x9 | 0;\n x1 ^= u<<13 | u>>>(32-13);\n u = x1 + x13 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x6 | 0;\n x14 ^= u<<7 | u>>>(32-7);\n u = x14 + x10 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x14 | 0;\n x6 ^= u<<13 | u>>>(32-13);\n u = x6 + x2 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x11 | 0;\n x3 ^= u<<7 | u>>>(32-7);\n u = x3 + x15 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x3 | 0;\n x11 ^= u<<13 | u>>>(32-13);\n u = x11 + x7 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n\n u = x0 + x3 | 0;\n x1 ^= u<<7 | u>>>(32-7);\n u = x1 + x0 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x1 | 0;\n x3 ^= u<<13 | u>>>(32-13);\n u = x3 + x2 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x4 | 0;\n x6 ^= u<<7 | u>>>(32-7);\n u = x6 + x5 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x6 | 0;\n x4 ^= u<<13 | u>>>(32-13);\n u = x4 + x7 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x9 | 0;\n x11 ^= u<<7 | u>>>(32-7);\n u = x11 + x10 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x11 | 0;\n x9 ^= u<<13 | u>>>(32-13);\n u = x9 + x8 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x14 | 0;\n x12 ^= u<<7 | u>>>(32-7);\n u = x12 + x15 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x12 | 0;\n x14 ^= u<<13 | u>>>(32-13);\n u = x14 + x13 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n }\n x0 = x0 + j0 | 0;\n x1 = x1 + j1 | 0;\n x2 = x2 + j2 | 0;\n x3 = x3 + j3 | 0;\n x4 = x4 + j4 | 0;\n x5 = x5 + j5 | 0;\n x6 = x6 + j6 | 0;\n x7 = x7 + j7 | 0;\n x8 = x8 + j8 | 0;\n x9 = x9 + j9 | 0;\n x10 = x10 + j10 | 0;\n x11 = x11 + j11 | 0;\n x12 = x12 + j12 | 0;\n x13 = x13 + j13 | 0;\n x14 = x14 + j14 | 0;\n x15 = x15 + j15 | 0;\n\n o[ 0] = x0 >>> 0 & 0xff;\n o[ 1] = x0 >>> 8 & 0xff;\n o[ 2] = x0 >>> 16 & 0xff;\n o[ 3] = x0 >>> 24 & 0xff;\n\n o[ 4] = x1 >>> 0 & 0xff;\n o[ 5] = x1 >>> 8 & 0xff;\n o[ 6] = x1 >>> 16 & 0xff;\n o[ 7] = x1 >>> 24 & 0xff;\n\n o[ 8] = x2 >>> 0 & 0xff;\n o[ 9] = x2 >>> 8 & 0xff;\n o[10] = x2 >>> 16 & 0xff;\n o[11] = x2 >>> 24 & 0xff;\n\n o[12] = x3 >>> 0 & 0xff;\n o[13] = x3 >>> 8 & 0xff;\n o[14] = x3 >>> 16 & 0xff;\n o[15] = x3 >>> 24 & 0xff;\n\n o[16] = x4 >>> 0 & 0xff;\n o[17] = x4 >>> 8 & 0xff;\n o[18] = x4 >>> 16 & 0xff;\n o[19] = x4 >>> 24 & 0xff;\n\n o[20] = x5 >>> 0 & 0xff;\n o[21] = x5 >>> 8 & 0xff;\n o[22] = x5 >>> 16 & 0xff;\n o[23] = x5 >>> 24 & 0xff;\n\n o[24] = x6 >>> 0 & 0xff;\n o[25] = x6 >>> 8 & 0xff;\n o[26] = x6 >>> 16 & 0xff;\n o[27] = x6 >>> 24 & 0xff;\n\n o[28] = x7 >>> 0 & 0xff;\n o[29] = x7 >>> 8 & 0xff;\n o[30] = x7 >>> 16 & 0xff;\n o[31] = x7 >>> 24 & 0xff;\n\n o[32] = x8 >>> 0 & 0xff;\n o[33] = x8 >>> 8 & 0xff;\n o[34] = x8 >>> 16 & 0xff;\n o[35] = x8 >>> 24 & 0xff;\n\n o[36] = x9 >>> 0 & 0xff;\n o[37] = x9 >>> 8 & 0xff;\n o[38] = x9 >>> 16 & 0xff;\n o[39] = x9 >>> 24 & 0xff;\n\n o[40] = x10 >>> 0 & 0xff;\n o[41] = x10 >>> 8 & 0xff;\n o[42] = x10 >>> 16 & 0xff;\n o[43] = x10 >>> 24 & 0xff;\n\n o[44] = x11 >>> 0 & 0xff;\n o[45] = x11 >>> 8 & 0xff;\n o[46] = x11 >>> 16 & 0xff;\n o[47] = x11 >>> 24 & 0xff;\n\n o[48] = x12 >>> 0 & 0xff;\n o[49] = x12 >>> 8 & 0xff;\n o[50] = x12 >>> 16 & 0xff;\n o[51] = x12 >>> 24 & 0xff;\n\n o[52] = x13 >>> 0 & 0xff;\n o[53] = x13 >>> 8 & 0xff;\n o[54] = x13 >>> 16 & 0xff;\n o[55] = x13 >>> 24 & 0xff;\n\n o[56] = x14 >>> 0 & 0xff;\n o[57] = x14 >>> 8 & 0xff;\n o[58] = x14 >>> 16 & 0xff;\n o[59] = x14 >>> 24 & 0xff;\n\n o[60] = x15 >>> 0 & 0xff;\n o[61] = x15 >>> 8 & 0xff;\n o[62] = x15 >>> 16 & 0xff;\n o[63] = x15 >>> 24 & 0xff;\n}\n\nfunction core_hsalsa20(o,p,k,c) {\n var j0 = c[ 0] & 0xff | (c[ 1] & 0xff)<<8 | (c[ 2] & 0xff)<<16 | (c[ 3] & 0xff)<<24,\n j1 = k[ 0] & 0xff | (k[ 1] & 0xff)<<8 | (k[ 2] & 0xff)<<16 | (k[ 3] & 0xff)<<24,\n j2 = k[ 4] & 0xff | (k[ 5] & 0xff)<<8 | (k[ 6] & 0xff)<<16 | (k[ 7] & 0xff)<<24,\n j3 = k[ 8] & 0xff | (k[ 9] & 0xff)<<8 | (k[10] & 0xff)<<16 | (k[11] & 0xff)<<24,\n j4 = k[12] & 0xff | (k[13] & 0xff)<<8 | (k[14] & 0xff)<<16 | (k[15] & 0xff)<<24,\n j5 = c[ 4] & 0xff | (c[ 5] & 0xff)<<8 | (c[ 6] & 0xff)<<16 | (c[ 7] & 0xff)<<24,\n j6 = p[ 0] & 0xff | (p[ 1] & 0xff)<<8 | (p[ 2] & 0xff)<<16 | (p[ 3] & 0xff)<<24,\n j7 = p[ 4] & 0xff | (p[ 5] & 0xff)<<8 | (p[ 6] & 0xff)<<16 | (p[ 7] & 0xff)<<24,\n j8 = p[ 8] & 0xff | (p[ 9] & 0xff)<<8 | (p[10] & 0xff)<<16 | (p[11] & 0xff)<<24,\n j9 = p[12] & 0xff | (p[13] & 0xff)<<8 | (p[14] & 0xff)<<16 | (p[15] & 0xff)<<24,\n j10 = c[ 8] & 0xff | (c[ 9] & 0xff)<<8 | (c[10] & 0xff)<<16 | (c[11] & 0xff)<<24,\n j11 = k[16] & 0xff | (k[17] & 0xff)<<8 | (k[18] & 0xff)<<16 | (k[19] & 0xff)<<24,\n j12 = k[20] & 0xff | (k[21] & 0xff)<<8 | (k[22] & 0xff)<<16 | (k[23] & 0xff)<<24,\n j13 = k[24] & 0xff | (k[25] & 0xff)<<8 | (k[26] & 0xff)<<16 | (k[27] & 0xff)<<24,\n j14 = k[28] & 0xff | (k[29] & 0xff)<<8 | (k[30] & 0xff)<<16 | (k[31] & 0xff)<<24,\n j15 = c[12] & 0xff | (c[13] & 0xff)<<8 | (c[14] & 0xff)<<16 | (c[15] & 0xff)<<24;\n\n var x0 = j0, x1 = j1, x2 = j2, x3 = j3, x4 = j4, x5 = j5, x6 = j6, x7 = j7,\n x8 = j8, x9 = j9, x10 = j10, x11 = j11, x12 = j12, x13 = j13, x14 = j14,\n x15 = j15, u;\n\n for (var i = 0; i < 20; i += 2) {\n u = x0 + x12 | 0;\n x4 ^= u<<7 | u>>>(32-7);\n u = x4 + x0 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x4 | 0;\n x12 ^= u<<13 | u>>>(32-13);\n u = x12 + x8 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x1 | 0;\n x9 ^= u<<7 | u>>>(32-7);\n u = x9 + x5 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x9 | 0;\n x1 ^= u<<13 | u>>>(32-13);\n u = x1 + x13 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x6 | 0;\n x14 ^= u<<7 | u>>>(32-7);\n u = x14 + x10 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x14 | 0;\n x6 ^= u<<13 | u>>>(32-13);\n u = x6 + x2 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x11 | 0;\n x3 ^= u<<7 | u>>>(32-7);\n u = x3 + x15 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x3 | 0;\n x11 ^= u<<13 | u>>>(32-13);\n u = x11 + x7 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n\n u = x0 + x3 | 0;\n x1 ^= u<<7 | u>>>(32-7);\n u = x1 + x0 | 0;\n x2 ^= u<<9 | u>>>(32-9);\n u = x2 + x1 | 0;\n x3 ^= u<<13 | u>>>(32-13);\n u = x3 + x2 | 0;\n x0 ^= u<<18 | u>>>(32-18);\n\n u = x5 + x4 | 0;\n x6 ^= u<<7 | u>>>(32-7);\n u = x6 + x5 | 0;\n x7 ^= u<<9 | u>>>(32-9);\n u = x7 + x6 | 0;\n x4 ^= u<<13 | u>>>(32-13);\n u = x4 + x7 | 0;\n x5 ^= u<<18 | u>>>(32-18);\n\n u = x10 + x9 | 0;\n x11 ^= u<<7 | u>>>(32-7);\n u = x11 + x10 | 0;\n x8 ^= u<<9 | u>>>(32-9);\n u = x8 + x11 | 0;\n x9 ^= u<<13 | u>>>(32-13);\n u = x9 + x8 | 0;\n x10 ^= u<<18 | u>>>(32-18);\n\n u = x15 + x14 | 0;\n x12 ^= u<<7 | u>>>(32-7);\n u = x12 + x15 | 0;\n x13 ^= u<<9 | u>>>(32-9);\n u = x13 + x12 | 0;\n x14 ^= u<<13 | u>>>(32-13);\n u = x14 + x13 | 0;\n x15 ^= u<<18 | u>>>(32-18);\n }\n\n o[ 0] = x0 >>> 0 & 0xff;\n o[ 1] = x0 >>> 8 & 0xff;\n o[ 2] = x0 >>> 16 & 0xff;\n o[ 3] = x0 >>> 24 & 0xff;\n\n o[ 4] = x5 >>> 0 & 0xff;\n o[ 5] = x5 >>> 8 & 0xff;\n o[ 6] = x5 >>> 16 & 0xff;\n o[ 7] = x5 >>> 24 & 0xff;\n\n o[ 8] = x10 >>> 0 & 0xff;\n o[ 9] = x10 >>> 8 & 0xff;\n o[10] = x10 >>> 16 & 0xff;\n o[11] = x10 >>> 24 & 0xff;\n\n o[12] = x15 >>> 0 & 0xff;\n o[13] = x15 >>> 8 & 0xff;\n o[14] = x15 >>> 16 & 0xff;\n o[15] = x15 >>> 24 & 0xff;\n\n o[16] = x6 >>> 0 & 0xff;\n o[17] = x6 >>> 8 & 0xff;\n o[18] = x6 >>> 16 & 0xff;\n o[19] = x6 >>> 24 & 0xff;\n\n o[20] = x7 >>> 0 & 0xff;\n o[21] = x7 >>> 8 & 0xff;\n o[22] = x7 >>> 16 & 0xff;\n o[23] = x7 >>> 24 & 0xff;\n\n o[24] = x8 >>> 0 & 0xff;\n o[25] = x8 >>> 8 & 0xff;\n o[26] = x8 >>> 16 & 0xff;\n o[27] = x8 >>> 24 & 0xff;\n\n o[28] = x9 >>> 0 & 0xff;\n o[29] = x9 >>> 8 & 0xff;\n o[30] = x9 >>> 16 & 0xff;\n o[31] = x9 >>> 24 & 0xff;\n}\n\nfunction crypto_core_salsa20(out,inp,k,c) {\n core_salsa20(out,inp,k,c);\n}\n\nfunction crypto_core_hsalsa20(out,inp,k,c) {\n core_hsalsa20(out,inp,k,c);\n}\n\nvar sigma = new Uint8Array([101, 120, 112, 97, 110, 100, 32, 51, 50, 45, 98, 121, 116, 101, 32, 107]);\n // \"expand 32-byte k\"\n\nfunction crypto_stream_salsa20_xor(c,cpos,m,mpos,b,n,k) {\n var z = new Uint8Array(16), x = new Uint8Array(64);\n var u, i;\n for (i = 0; i < 16; i++) z[i] = 0;\n for (i = 0; i < 8; i++) z[i] = n[i];\n while (b >= 64) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < 64; i++) c[cpos+i] = m[mpos+i] ^ x[i];\n u = 1;\n for (i = 8; i < 16; i++) {\n u = u + (z[i] & 0xff) | 0;\n z[i] = u & 0xff;\n u >>>= 8;\n }\n b -= 64;\n cpos += 64;\n mpos += 64;\n }\n if (b > 0) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < b; i++) c[cpos+i] = m[mpos+i] ^ x[i];\n }\n return 0;\n}\n\nfunction crypto_stream_salsa20(c,cpos,b,n,k) {\n var z = new Uint8Array(16), x = new Uint8Array(64);\n var u, i;\n for (i = 0; i < 16; i++) z[i] = 0;\n for (i = 0; i < 8; i++) z[i] = n[i];\n while (b >= 64) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < 64; i++) c[cpos+i] = x[i];\n u = 1;\n for (i = 8; i < 16; i++) {\n u = u + (z[i] & 0xff) | 0;\n z[i] = u & 0xff;\n u >>>= 8;\n }\n b -= 64;\n cpos += 64;\n }\n if (b > 0) {\n crypto_core_salsa20(x,z,k,sigma);\n for (i = 0; i < b; i++) c[cpos+i] = x[i];\n }\n return 0;\n}\n\nfunction crypto_stream(c,cpos,d,n,k) {\n var s = new Uint8Array(32);\n crypto_core_hsalsa20(s,n,k,sigma);\n var sn = new Uint8Array(8);\n for (var i = 0; i < 8; i++) sn[i] = n[i+16];\n return crypto_stream_salsa20(c,cpos,d,sn,s);\n}\n\nfunction crypto_stream_xor(c,cpos,m,mpos,d,n,k) {\n var s = new Uint8Array(32);\n crypto_core_hsalsa20(s,n,k,sigma);\n var sn = new Uint8Array(8);\n for (var i = 0; i < 8; i++) sn[i] = n[i+16];\n return crypto_stream_salsa20_xor(c,cpos,m,mpos,d,sn,s);\n}\n\n/*\n* Port of Andrew Moon's Poly1305-donna-16. Public domain.\n* https://github.com/floodyberry/poly1305-donna\n*/\n\nvar poly1305 = function(key) {\n this.buffer = new Uint8Array(16);\n this.r = new Uint16Array(10);\n this.h = new Uint16Array(10);\n this.pad = new Uint16Array(8);\n this.leftover = 0;\n this.fin = 0;\n\n var t0, t1, t2, t3, t4, t5, t6, t7;\n\n t0 = key[ 0] & 0xff | (key[ 1] & 0xff) << 8; this.r[0] = ( t0 ) & 0x1fff;\n t1 = key[ 2] & 0xff | (key[ 3] & 0xff) << 8; this.r[1] = ((t0 >>> 13) | (t1 << 3)) & 0x1fff;\n t2 = key[ 4] & 0xff | (key[ 5] & 0xff) << 8; this.r[2] = ((t1 >>> 10) | (t2 << 6)) & 0x1f03;\n t3 = key[ 6] & 0xff | (key[ 7] & 0xff) << 8; this.r[3] = ((t2 >>> 7) | (t3 << 9)) & 0x1fff;\n t4 = key[ 8] & 0xff | (key[ 9] & 0xff) << 8; this.r[4] = ((t3 >>> 4) | (t4 << 12)) & 0x00ff;\n this.r[5] = ((t4 >>> 1)) & 0x1ffe;\n t5 = key[10] & 0xff | (key[11] & 0xff) << 8; this.r[6] = ((t4 >>> 14) | (t5 << 2)) & 0x1fff;\n t6 = key[12] & 0xff | (key[13] & 0xff) << 8; this.r[7] = ((t5 >>> 11) | (t6 << 5)) & 0x1f81;\n t7 = key[14] & 0xff | (key[15] & 0xff) << 8; this.r[8] = ((t6 >>> 8) | (t7 << 8)) & 0x1fff;\n this.r[9] = ((t7 >>> 5)) & 0x007f;\n\n this.pad[0] = key[16] & 0xff | (key[17] & 0xff) << 8;\n this.pad[1] = key[18] & 0xff | (key[19] & 0xff) << 8;\n this.pad[2] = key[20] & 0xff | (key[21] & 0xff) << 8;\n this.pad[3] = key[22] & 0xff | (key[23] & 0xff) << 8;\n this.pad[4] = key[24] & 0xff | (key[25] & 0xff) << 8;\n this.pad[5] = key[26] & 0xff | (key[27] & 0xff) << 8;\n this.pad[6] = key[28] & 0xff | (key[29] & 0xff) << 8;\n this.pad[7] = key[30] & 0xff | (key[31] & 0xff) << 8;\n};\n\npoly1305.prototype.blocks = function(m, mpos, bytes) {\n var hibit = this.fin ? 0 : (1 << 11);\n var t0, t1, t2, t3, t4, t5, t6, t7, c;\n var d0, d1, d2, d3, d4, d5, d6, d7, d8, d9;\n\n var h0 = this.h[0],\n h1 = this.h[1],\n h2 = this.h[2],\n h3 = this.h[3],\n h4 = this.h[4],\n h5 = this.h[5],\n h6 = this.h[6],\n h7 = this.h[7],\n h8 = this.h[8],\n h9 = this.h[9];\n\n var r0 = this.r[0],\n r1 = this.r[1],\n r2 = this.r[2],\n r3 = this.r[3],\n r4 = this.r[4],\n r5 = this.r[5],\n r6 = this.r[6],\n r7 = this.r[7],\n r8 = this.r[8],\n r9 = this.r[9];\n\n while (bytes >= 16) {\n t0 = m[mpos+ 0] & 0xff | (m[mpos+ 1] & 0xff) << 8; h0 += ( t0 ) & 0x1fff;\n t1 = m[mpos+ 2] & 0xff | (m[mpos+ 3] & 0xff) << 8; h1 += ((t0 >>> 13) | (t1 << 3)) & 0x1fff;\n t2 = m[mpos+ 4] & 0xff | (m[mpos+ 5] & 0xff) << 8; h2 += ((t1 >>> 10) | (t2 << 6)) & 0x1fff;\n t3 = m[mpos+ 6] & 0xff | (m[mpos+ 7] & 0xff) << 8; h3 += ((t2 >>> 7) | (t3 << 9)) & 0x1fff;\n t4 = m[mpos+ 8] & 0xff | (m[mpos+ 9] & 0xff) << 8; h4 += ((t3 >>> 4) | (t4 << 12)) & 0x1fff;\n h5 += ((t4 >>> 1)) & 0x1fff;\n t5 = m[mpos+10] & 0xff | (m[mpos+11] & 0xff) << 8; h6 += ((t4 >>> 14) | (t5 << 2)) & 0x1fff;\n t6 = m[mpos+12] & 0xff | (m[mpos+13] & 0xff) << 8; h7 += ((t5 >>> 11) | (t6 << 5)) & 0x1fff;\n t7 = m[mpos+14] & 0xff | (m[mpos+15] & 0xff) << 8; h8 += ((t6 >>> 8) | (t7 << 8)) & 0x1fff;\n h9 += ((t7 >>> 5)) | hibit;\n\n c = 0;\n\n d0 = c;\n d0 += h0 * r0;\n d0 += h1 * (5 * r9);\n d0 += h2 * (5 * r8);\n d0 += h3 * (5 * r7);\n d0 += h4 * (5 * r6);\n c = (d0 >>> 13); d0 &= 0x1fff;\n d0 += h5 * (5 * r5);\n d0 += h6 * (5 * r4);\n d0 += h7 * (5 * r3);\n d0 += h8 * (5 * r2);\n d0 += h9 * (5 * r1);\n c += (d0 >>> 13); d0 &= 0x1fff;\n\n d1 = c;\n d1 += h0 * r1;\n d1 += h1 * r0;\n d1 += h2 * (5 * r9);\n d1 += h3 * (5 * r8);\n d1 += h4 * (5 * r7);\n c = (d1 >>> 13); d1 &= 0x1fff;\n d1 += h5 * (5 * r6);\n d1 += h6 * (5 * r5);\n d1 += h7 * (5 * r4);\n d1 += h8 * (5 * r3);\n d1 += h9 * (5 * r2);\n c += (d1 >>> 13); d1 &= 0x1fff;\n\n d2 = c;\n d2 += h0 * r2;\n d2 += h1 * r1;\n d2 += h2 * r0;\n d2 += h3 * (5 * r9);\n d2 += h4 * (5 * r8);\n c = (d2 >>> 13); d2 &= 0x1fff;\n d2 += h5 * (5 * r7);\n d2 += h6 * (5 * r6);\n d2 += h7 * (5 * r5);\n d2 += h8 * (5 * r4);\n d2 += h9 * (5 * r3);\n c += (d2 >>> 13); d2 &= 0x1fff;\n\n d3 = c;\n d3 += h0 * r3;\n d3 += h1 * r2;\n d3 += h2 * r1;\n d3 += h3 * r0;\n d3 += h4 * (5 * r9);\n c = (d3 >>> 13); d3 &= 0x1fff;\n d3 += h5 * (5 * r8);\n d3 += h6 * (5 * r7);\n d3 += h7 * (5 * r6);\n d3 += h8 * (5 * r5);\n d3 += h9 * (5 * r4);\n c += (d3 >>> 13); d3 &= 0x1fff;\n\n d4 = c;\n d4 += h0 * r4;\n d4 += h1 * r3;\n d4 += h2 * r2;\n d4 += h3 * r1;\n d4 += h4 * r0;\n c = (d4 >>> 13); d4 &= 0x1fff;\n d4 += h5 * (5 * r9);\n d4 += h6 * (5 * r8);\n d4 += h7 * (5 * r7);\n d4 += h8 * (5 * r6);\n d4 += h9 * (5 * r5);\n c += (d4 >>> 13); d4 &= 0x1fff;\n\n d5 = c;\n d5 += h0 * r5;\n d5 += h1 * r4;\n d5 += h2 * r3;\n d5 += h3 * r2;\n d5 += h4 * r1;\n c = (d5 >>> 13); d5 &= 0x1fff;\n d5 += h5 * r0;\n d5 += h6 * (5 * r9);\n d5 += h7 * (5 * r8);\n d5 += h8 * (5 * r7);\n d5 += h9 * (5 * r6);\n c += (d5 >>> 13); d5 &= 0x1fff;\n\n d6 = c;\n d6 += h0 * r6;\n d6 += h1 * r5;\n d6 += h2 * r4;\n d6 += h3 * r3;\n d6 += h4 * r2;\n c = (d6 >>> 13); d6 &= 0x1fff;\n d6 += h5 * r1;\n d6 += h6 * r0;\n d6 += h7 * (5 * r9);\n d6 += h8 * (5 * r8);\n d6 += h9 * (5 * r7);\n c += (d6 >>> 13); d6 &= 0x1fff;\n\n d7 = c;\n d7 += h0 * r7;\n d7 += h1 * r6;\n d7 += h2 * r5;\n d7 += h3 * r4;\n d7 += h4 * r3;\n c = (d7 >>> 13); d7 &= 0x1fff;\n d7 += h5 * r2;\n d7 += h6 * r1;\n d7 += h7 * r0;\n d7 += h8 * (5 * r9);\n d7 += h9 * (5 * r8);\n c += (d7 >>> 13); d7 &= 0x1fff;\n\n d8 = c;\n d8 += h0 * r8;\n d8 += h1 * r7;\n d8 += h2 * r6;\n d8 += h3 * r5;\n d8 += h4 * r4;\n c = (d8 >>> 13); d8 &= 0x1fff;\n d8 += h5 * r3;\n d8 += h6 * r2;\n d8 += h7 * r1;\n d8 += h8 * r0;\n d8 += h9 * (5 * r9);\n c += (d8 >>> 13); d8 &= 0x1fff;\n\n d9 = c;\n d9 += h0 * r9;\n d9 += h1 * r8;\n d9 += h2 * r7;\n d9 += h3 * r6;\n d9 += h4 * r5;\n c = (d9 >>> 13); d9 &= 0x1fff;\n d9 += h5 * r4;\n d9 += h6 * r3;\n d9 += h7 * r2;\n d9 += h8 * r1;\n d9 += h9 * r0;\n c += (d9 >>> 13); d9 &= 0x1fff;\n\n c = (((c << 2) + c)) | 0;\n c = (c + d0) | 0;\n d0 = c & 0x1fff;\n c = (c >>> 13);\n d1 += c;\n\n h0 = d0;\n h1 = d1;\n h2 = d2;\n h3 = d3;\n h4 = d4;\n h5 = d5;\n h6 = d6;\n h7 = d7;\n h8 = d8;\n h9 = d9;\n\n mpos += 16;\n bytes -= 16;\n }\n this.h[0] = h0;\n this.h[1] = h1;\n this.h[2] = h2;\n this.h[3] = h3;\n this.h[4] = h4;\n this.h[5] = h5;\n this.h[6] = h6;\n this.h[7] = h7;\n this.h[8] = h8;\n this.h[9] = h9;\n};\n\npoly1305.prototype.finish = function(mac, macpos) {\n var g = new Uint16Array(10);\n var c, mask, f, i;\n\n if (this.leftover) {\n i = this.leftover;\n this.buffer[i++] = 1;\n for (; i < 16; i++) this.buffer[i] = 0;\n this.fin = 1;\n this.blocks(this.buffer, 0, 16);\n }\n\n c = this.h[1] >>> 13;\n this.h[1] &= 0x1fff;\n for (i = 2; i < 10; i++) {\n this.h[i] += c;\n c = this.h[i] >>> 13;\n this.h[i] &= 0x1fff;\n }\n this.h[0] += (c * 5);\n c = this.h[0] >>> 13;\n this.h[0] &= 0x1fff;\n this.h[1] += c;\n c = this.h[1] >>> 13;\n this.h[1] &= 0x1fff;\n this.h[2] += c;\n\n g[0] = this.h[0] + 5;\n c = g[0] >>> 13;\n g[0] &= 0x1fff;\n for (i = 1; i < 10; i++) {\n g[i] = this.h[i] + c;\n c = g[i] >>> 13;\n g[i] &= 0x1fff;\n }\n g[9] -= (1 << 13);\n\n mask = (c ^ 1) - 1;\n for (i = 0; i < 10; i++) g[i] &= mask;\n mask = ~mask;\n for (i = 0; i < 10; i++) this.h[i] = (this.h[i] & mask) | g[i];\n\n this.h[0] = ((this.h[0] ) | (this.h[1] << 13) ) & 0xffff;\n this.h[1] = ((this.h[1] >>> 3) | (this.h[2] << 10) ) & 0xffff;\n this.h[2] = ((this.h[2] >>> 6) | (this.h[3] << 7) ) & 0xffff;\n this.h[3] = ((this.h[3] >>> 9) | (this.h[4] << 4) ) & 0xffff;\n this.h[4] = ((this.h[4] >>> 12) | (this.h[5] << 1) | (this.h[6] << 14)) & 0xffff;\n this.h[5] = ((this.h[6] >>> 2) | (this.h[7] << 11) ) & 0xffff;\n this.h[6] = ((this.h[7] >>> 5) | (this.h[8] << 8) ) & 0xffff;\n this.h[7] = ((this.h[8] >>> 8) | (this.h[9] << 5) ) & 0xffff;\n\n f = this.h[0] + this.pad[0];\n this.h[0] = f & 0xffff;\n for (i = 1; i < 8; i++) {\n f = (((this.h[i] + this.pad[i]) | 0) + (f >>> 16)) | 0;\n this.h[i] = f & 0xffff;\n }\n\n mac[macpos+ 0] = (this.h[0] >>> 0) & 0xff;\n mac[macpos+ 1] = (this.h[0] >>> 8) & 0xff;\n mac[macpos+ 2] = (this.h[1] >>> 0) & 0xff;\n mac[macpos+ 3] = (this.h[1] >>> 8) & 0xff;\n mac[macpos+ 4] = (this.h[2] >>> 0) & 0xff;\n mac[macpos+ 5] = (this.h[2] >>> 8) & 0xff;\n mac[macpos+ 6] = (this.h[3] >>> 0) & 0xff;\n mac[macpos+ 7] = (this.h[3] >>> 8) & 0xff;\n mac[macpos+ 8] = (this.h[4] >>> 0) & 0xff;\n mac[macpos+ 9] = (this.h[4] >>> 8) & 0xff;\n mac[macpos+10] = (this.h[5] >>> 0) & 0xff;\n mac[macpos+11] = (this.h[5] >>> 8) & 0xff;\n mac[macpos+12] = (this.h[6] >>> 0) & 0xff;\n mac[macpos+13] = (this.h[6] >>> 8) & 0xff;\n mac[macpos+14] = (this.h[7] >>> 0) & 0xff;\n mac[macpos+15] = (this.h[7] >>> 8) & 0xff;\n};\n\npoly1305.prototype.update = function(m, mpos, bytes) {\n var i, want;\n\n if (this.leftover) {\n want = (16 - this.leftover);\n if (want > bytes)\n want = bytes;\n for (i = 0; i < want; i++)\n this.buffer[this.leftover + i] = m[mpos+i];\n bytes -= want;\n mpos += want;\n this.leftover += want;\n if (this.leftover < 16)\n return;\n this.blocks(this.buffer, 0, 16);\n this.leftover = 0;\n }\n\n if (bytes >= 16) {\n want = bytes - (bytes % 16);\n this.blocks(m, mpos, want);\n mpos += want;\n bytes -= want;\n }\n\n if (bytes) {\n for (i = 0; i < bytes; i++)\n this.buffer[this.leftover + i] = m[mpos+i];\n this.leftover += bytes;\n }\n};\n\nfunction crypto_onetimeauth(out, outpos, m, mpos, n, k) {\n var s = new poly1305(k);\n s.update(m, mpos, n);\n s.finish(out, outpos);\n return 0;\n}\n\nfunction crypto_onetimeauth_verify(h, hpos, m, mpos, n, k) {\n var x = new Uint8Array(16);\n crypto_onetimeauth(x,0,m,mpos,n,k);\n return crypto_verify_16(h,hpos,x,0);\n}\n\nfunction crypto_secretbox(c,m,d,n,k) {\n var i;\n if (d < 32) return -1;\n crypto_stream_xor(c,0,m,0,d,n,k);\n crypto_onetimeauth(c, 16, c, 32, d - 32, c);\n for (i = 0; i < 16; i++) c[i] = 0;\n return 0;\n}\n\nfunction crypto_secretbox_open(m,c,d,n,k) {\n var i;\n var x = new Uint8Array(32);\n if (d < 32) return -1;\n crypto_stream(x,0,32,n,k);\n if (crypto_onetimeauth_verify(c, 16,c, 32,d - 32,x) !== 0) return -1;\n crypto_stream_xor(m,0,c,0,d,n,k);\n for (i = 0; i < 32; i++) m[i] = 0;\n return 0;\n}\n\nfunction set25519(r, a) {\n var i;\n for (i = 0; i < 16; i++) r[i] = a[i]|0;\n}\n\nfunction car25519(o) {\n var i, v, c = 1;\n for (i = 0; i < 16; i++) {\n v = o[i] + c + 65535;\n c = Math.floor(v / 65536);\n o[i] = v - c * 65536;\n }\n o[0] += c-1 + 37 * (c-1);\n}\n\nfunction sel25519(p, q, b) {\n var t, c = ~(b-1);\n for (var i = 0; i < 16; i++) {\n t = c & (p[i] ^ q[i]);\n p[i] ^= t;\n q[i] ^= t;\n }\n}\n\nfunction pack25519(o, n) {\n var i, j, b;\n var m = gf(), t = gf();\n for (i = 0; i < 16; i++) t[i] = n[i];\n car25519(t);\n car25519(t);\n car25519(t);\n for (j = 0; j < 2; j++) {\n m[0] = t[0] - 0xffed;\n for (i = 1; i < 15; i++) {\n m[i] = t[i] - 0xffff - ((m[i-1]>>16) & 1);\n m[i-1] &= 0xffff;\n }\n m[15] = t[15] - 0x7fff - ((m[14]>>16) & 1);\n b = (m[15]>>16) & 1;\n m[14] &= 0xffff;\n sel25519(t, m, 1-b);\n }\n for (i = 0; i < 16; i++) {\n o[2*i] = t[i] & 0xff;\n o[2*i+1] = t[i]>>8;\n }\n}\n\nfunction neq25519(a, b) {\n var c = new Uint8Array(32), d = new Uint8Array(32);\n pack25519(c, a);\n pack25519(d, b);\n return crypto_verify_32(c, 0, d, 0);\n}\n\nfunction par25519(a) {\n var d = new Uint8Array(32);\n pack25519(d, a);\n return d[0] & 1;\n}\n\nfunction unpack25519(o, n) {\n var i;\n for (i = 0; i < 16; i++) o[i] = n[2*i] + (n[2*i+1] << 8);\n o[15] &= 0x7fff;\n}\n\nfunction A(o, a, b) {\n for (var i = 0; i < 16; i++) o[i] = a[i] + b[i];\n}\n\nfunction Z(o, a, b) {\n for (var i = 0; i < 16; i++) o[i] = a[i] - b[i];\n}\n\nfunction M(o, a, b) {\n var v, c,\n t0 = 0, t1 = 0, t2 = 0, t3 = 0, t4 = 0, t5 = 0, t6 = 0, t7 = 0,\n t8 = 0, t9 = 0, t10 = 0, t11 = 0, t12 = 0, t13 = 0, t14 = 0, t15 = 0,\n t16 = 0, t17 = 0, t18 = 0, t19 = 0, t20 = 0, t21 = 0, t22 = 0, t23 = 0,\n t24 = 0, t25 = 0, t26 = 0, t27 = 0, t28 = 0, t29 = 0, t30 = 0,\n b0 = b[0],\n b1 = b[1],\n b2 = b[2],\n b3 = b[3],\n b4 = b[4],\n b5 = b[5],\n b6 = b[6],\n b7 = b[7],\n b8 = b[8],\n b9 = b[9],\n b10 = b[10],\n b11 = b[11],\n b12 = b[12],\n b13 = b[13],\n b14 = b[14],\n b15 = b[15];\n\n v = a[0];\n t0 += v * b0;\n t1 += v * b1;\n t2 += v * b2;\n t3 += v * b3;\n t4 += v * b4;\n t5 += v * b5;\n t6 += v * b6;\n t7 += v * b7;\n t8 += v * b8;\n t9 += v * b9;\n t10 += v * b10;\n t11 += v * b11;\n t12 += v * b12;\n t13 += v * b13;\n t14 += v * b14;\n t15 += v * b15;\n v = a[1];\n t1 += v * b0;\n t2 += v * b1;\n t3 += v * b2;\n t4 += v * b3;\n t5 += v * b4;\n t6 += v * b5;\n t7 += v * b6;\n t8 += v * b7;\n t9 += v * b8;\n t10 += v * b9;\n t11 += v * b10;\n t12 += v * b11;\n t13 += v * b12;\n t14 += v * b13;\n t15 += v * b14;\n t16 += v * b15;\n v = a[2];\n t2 += v * b0;\n t3 += v * b1;\n t4 += v * b2;\n t5 += v * b3;\n t6 += v * b4;\n t7 += v * b5;\n t8 += v * b6;\n t9 += v * b7;\n t10 += v * b8;\n t11 += v * b9;\n t12 += v * b10;\n t13 += v * b11;\n t14 += v * b12;\n t15 += v * b13;\n t16 += v * b14;\n t17 += v * b15;\n v = a[3];\n t3 += v * b0;\n t4 += v * b1;\n t5 += v * b2;\n t6 += v * b3;\n t7 += v * b4;\n t8 += v * b5;\n t9 += v * b6;\n t10 += v * b7;\n t11 += v * b8;\n t12 += v * b9;\n t13 += v * b10;\n t14 += v * b11;\n t15 += v * b12;\n t16 += v * b13;\n t17 += v * b14;\n t18 += v * b15;\n v = a[4];\n t4 += v * b0;\n t5 += v * b1;\n t6 += v * b2;\n t7 += v * b3;\n t8 += v * b4;\n t9 += v * b5;\n t10 += v * b6;\n t11 += v * b7;\n t12 += v * b8;\n t13 += v * b9;\n t14 += v * b10;\n t15 += v * b11;\n t16 += v * b12;\n t17 += v * b13;\n t18 += v * b14;\n t19 += v * b15;\n v = a[5];\n t5 += v * b0;\n t6 += v * b1;\n t7 += v * b2;\n t8 += v * b3;\n t9 += v * b4;\n t10 += v * b5;\n t11 += v * b6;\n t12 += v * b7;\n t13 += v * b8;\n t14 += v * b9;\n t15 += v * b10;\n t16 += v * b11;\n t17 += v * b12;\n t18 += v * b13;\n t19 += v * b14;\n t20 += v * b15;\n v = a[6];\n t6 += v * b0;\n t7 += v * b1;\n t8 += v * b2;\n t9 += v * b3;\n t10 += v * b4;\n t11 += v * b5;\n t12 += v * b6;\n t13 += v * b7;\n t14 += v * b8;\n t15 += v * b9;\n t16 += v * b10;\n t17 += v * b11;\n t18 += v * b12;\n t19 += v * b13;\n t20 += v * b14;\n t21 += v * b15;\n v = a[7];\n t7 += v * b0;\n t8 += v * b1;\n t9 += v * b2;\n t10 += v * b3;\n t11 += v * b4;\n t12 += v * b5;\n t13 += v * b6;\n t14 += v * b7;\n t15 += v * b8;\n t16 += v * b9;\n t17 += v * b10;\n t18 += v * b11;\n t19 += v * b12;\n t20 += v * b13;\n t21 += v * b14;\n t22 += v * b15;\n v = a[8];\n t8 += v * b0;\n t9 += v * b1;\n t10 += v * b2;\n t11 += v * b3;\n t12 += v * b4;\n t13 += v * b5;\n t14 += v * b6;\n t15 += v * b7;\n t16 += v * b8;\n t17 += v * b9;\n t18 += v * b10;\n t19 += v * b11;\n t20 += v * b12;\n t21 += v * b13;\n t22 += v * b14;\n t23 += v * b15;\n v = a[9];\n t9 += v * b0;\n t10 += v * b1;\n t11 += v * b2;\n t12 += v * b3;\n t13 += v * b4;\n t14 += v * b5;\n t15 += v * b6;\n t16 += v * b7;\n t17 += v * b8;\n t18 += v * b9;\n t19 += v * b10;\n t20 += v * b11;\n t21 += v * b12;\n t22 += v * b13;\n t23 += v * b14;\n t24 += v * b15;\n v = a[10];\n t10 += v * b0;\n t11 += v * b1;\n t12 += v * b2;\n t13 += v * b3;\n t14 += v * b4;\n t15 += v * b5;\n t16 += v * b6;\n t17 += v * b7;\n t18 += v * b8;\n t19 += v * b9;\n t20 += v * b10;\n t21 += v * b11;\n t22 += v * b12;\n t23 += v * b13;\n t24 += v * b14;\n t25 += v * b15;\n v = a[11];\n t11 += v * b0;\n t12 += v * b1;\n t13 += v * b2;\n t14 += v * b3;\n t15 += v * b4;\n t16 += v * b5;\n t17 += v * b6;\n t18 += v * b7;\n t19 += v * b8;\n t20 += v * b9;\n t21 += v * b10;\n t22 += v * b11;\n t23 += v * b12;\n t24 += v * b13;\n t25 += v * b14;\n t26 += v * b15;\n v = a[12];\n t12 += v * b0;\n t13 += v * b1;\n t14 += v * b2;\n t15 += v * b3;\n t16 += v * b4;\n t17 += v * b5;\n t18 += v * b6;\n t19 += v * b7;\n t20 += v * b8;\n t21 += v * b9;\n t22 += v * b10;\n t23 += v * b11;\n t24 += v * b12;\n t25 += v * b13;\n t26 += v * b14;\n t27 += v * b15;\n v = a[13];\n t13 += v * b0;\n t14 += v * b1;\n t15 += v * b2;\n t16 += v * b3;\n t17 += v * b4;\n t18 += v * b5;\n t19 += v * b6;\n t20 += v * b7;\n t21 += v * b8;\n t22 += v * b9;\n t23 += v * b10;\n t24 += v * b11;\n t25 += v * b12;\n t26 += v * b13;\n t27 += v * b14;\n t28 += v * b15;\n v = a[14];\n t14 += v * b0;\n t15 += v * b1;\n t16 += v * b2;\n t17 += v * b3;\n t18 += v * b4;\n t19 += v * b5;\n t20 += v * b6;\n t21 += v * b7;\n t22 += v * b8;\n t23 += v * b9;\n t24 += v * b10;\n t25 += v * b11;\n t26 += v * b12;\n t27 += v * b13;\n t28 += v * b14;\n t29 += v * b15;\n v = a[15];\n t15 += v * b0;\n t16 += v * b1;\n t17 += v * b2;\n t18 += v * b3;\n t19 += v * b4;\n t20 += v * b5;\n t21 += v * b6;\n t22 += v * b7;\n t23 += v * b8;\n t24 += v * b9;\n t25 += v * b10;\n t26 += v * b11;\n t27 += v * b12;\n t28 += v * b13;\n t29 += v * b14;\n t30 += v * b15;\n\n t0 += 38 * t16;\n t1 += 38 * t17;\n t2 += 38 * t18;\n t3 += 38 * t19;\n t4 += 38 * t20;\n t5 += 38 * t21;\n t6 += 38 * t22;\n t7 += 38 * t23;\n t8 += 38 * t24;\n t9 += 38 * t25;\n t10 += 38 * t26;\n t11 += 38 * t27;\n t12 += 38 * t28;\n t13 += 38 * t29;\n t14 += 38 * t30;\n // t15 left as is\n\n // first car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c-1 + 37 * (c-1);\n\n // second car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c-1 + 37 * (c-1);\n\n o[ 0] = t0;\n o[ 1] = t1;\n o[ 2] = t2;\n o[ 3] = t3;\n o[ 4] = t4;\n o[ 5] = t5;\n o[ 6] = t6;\n o[ 7] = t7;\n o[ 8] = t8;\n o[ 9] = t9;\n o[10] = t10;\n o[11] = t11;\n o[12] = t12;\n o[13] = t13;\n o[14] = t14;\n o[15] = t15;\n}\n\nfunction S(o, a) {\n M(o, a, a);\n}\n\nfunction inv25519(o, i) {\n var c = gf();\n var a;\n for (a = 0; a < 16; a++) c[a] = i[a];\n for (a = 253; a >= 0; a--) {\n S(c, c);\n if(a !== 2 && a !== 4) M(c, c, i);\n }\n for (a = 0; a < 16; a++) o[a] = c[a];\n}\n\nfunction pow2523(o, i) {\n var c = gf();\n var a;\n for (a = 0; a < 16; a++) c[a] = i[a];\n for (a = 250; a >= 0; a--) {\n S(c, c);\n if(a !== 1) M(c, c, i);\n }\n for (a = 0; a < 16; a++) o[a] = c[a];\n}\n\nfunction crypto_scalarmult(q, n, p) {\n var z = new Uint8Array(32);\n var x = new Float64Array(80), r, i;\n var a = gf(), b = gf(), c = gf(),\n d = gf(), e = gf(), f = gf();\n for (i = 0; i < 31; i++) z[i] = n[i];\n z[31]=(n[31]&127)|64;\n z[0]&=248;\n unpack25519(x,p);\n for (i = 0; i < 16; i++) {\n b[i]=x[i];\n d[i]=a[i]=c[i]=0;\n }\n a[0]=d[0]=1;\n for (i=254; i>=0; --i) {\n r=(z[i>>>3]>>>(i&7))&1;\n sel25519(a,b,r);\n sel25519(c,d,r);\n A(e,a,c);\n Z(a,a,c);\n A(c,b,d);\n Z(b,b,d);\n S(d,e);\n S(f,a);\n M(a,c,a);\n M(c,b,e);\n A(e,a,c);\n Z(a,a,c);\n S(b,a);\n Z(c,d,f);\n M(a,c,_121665);\n A(a,a,d);\n M(c,c,a);\n M(a,d,f);\n M(d,b,x);\n S(b,e);\n sel25519(a,b,r);\n sel25519(c,d,r);\n }\n for (i = 0; i < 16; i++) {\n x[i+16]=a[i];\n x[i+32]=c[i];\n x[i+48]=b[i];\n x[i+64]=d[i];\n }\n var x32 = x.subarray(32);\n var x16 = x.subarray(16);\n inv25519(x32,x32);\n M(x16,x16,x32);\n pack25519(q,x16);\n return 0;\n}\n\nfunction crypto_scalarmult_base(q, n) {\n return crypto_scalarmult(q, n, _9);\n}\n\nfunction crypto_box_keypair(y, x) {\n randombytes(x, 32);\n return crypto_scalarmult_base(y, x);\n}\n\nfunction crypto_box_beforenm(k, y, x) {\n var s = new Uint8Array(32);\n crypto_scalarmult(s, x, y);\n return crypto_core_hsalsa20(k, _0, s, sigma);\n}\n\nvar crypto_box_afternm = crypto_secretbox;\nvar crypto_box_open_afternm = crypto_secretbox_open;\n\nfunction crypto_box(c, m, d, n, y, x) {\n var k = new Uint8Array(32);\n crypto_box_beforenm(k, y, x);\n return crypto_box_afternm(c, m, d, n, k);\n}\n\nfunction crypto_box_open(m, c, d, n, y, x) {\n var k = new Uint8Array(32);\n crypto_box_beforenm(k, y, x);\n return crypto_box_open_afternm(m, c, d, n, k);\n}\n\nvar K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n];\n\nfunction crypto_hashblocks_hl(hh, hl, m, n) {\n var wh = new Int32Array(16), wl = new Int32Array(16),\n bh0, bh1, bh2, bh3, bh4, bh5, bh6, bh7,\n bl0, bl1, bl2, bl3, bl4, bl5, bl6, bl7,\n th, tl, i, j, h, l, a, b, c, d;\n\n var ah0 = hh[0],\n ah1 = hh[1],\n ah2 = hh[2],\n ah3 = hh[3],\n ah4 = hh[4],\n ah5 = hh[5],\n ah6 = hh[6],\n ah7 = hh[7],\n\n al0 = hl[0],\n al1 = hl[1],\n al2 = hl[2],\n al3 = hl[3],\n al4 = hl[4],\n al5 = hl[5],\n al6 = hl[6],\n al7 = hl[7];\n\n var pos = 0;\n while (n >= 128) {\n for (i = 0; i < 16; i++) {\n j = 8 * i + pos;\n wh[i] = (m[j+0] << 24) | (m[j+1] << 16) | (m[j+2] << 8) | m[j+3];\n wl[i] = (m[j+4] << 24) | (m[j+5] << 16) | (m[j+6] << 8) | m[j+7];\n }\n for (i = 0; i < 80; i++) {\n bh0 = ah0;\n bh1 = ah1;\n bh2 = ah2;\n bh3 = ah3;\n bh4 = ah4;\n bh5 = ah5;\n bh6 = ah6;\n bh7 = ah7;\n\n bl0 = al0;\n bl1 = al1;\n bl2 = al2;\n bl3 = al3;\n bl4 = al4;\n bl5 = al5;\n bl6 = al6;\n bl7 = al7;\n\n // add\n h = ah7;\n l = al7;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n // Sigma1\n h = ((ah4 >>> 14) | (al4 << (32-14))) ^ ((ah4 >>> 18) | (al4 << (32-18))) ^ ((al4 >>> (41-32)) | (ah4 << (32-(41-32))));\n l = ((al4 >>> 14) | (ah4 << (32-14))) ^ ((al4 >>> 18) | (ah4 << (32-18))) ^ ((ah4 >>> (41-32)) | (al4 << (32-(41-32))));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // Ch\n h = (ah4 & ah5) ^ (~ah4 & ah6);\n l = (al4 & al5) ^ (~al4 & al6);\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // K\n h = K[i*2];\n l = K[i*2+1];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // w\n h = wh[i%16];\n l = wl[i%16];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n th = c & 0xffff | d << 16;\n tl = a & 0xffff | b << 16;\n\n // add\n h = th;\n l = tl;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n // Sigma0\n h = ((ah0 >>> 28) | (al0 << (32-28))) ^ ((al0 >>> (34-32)) | (ah0 << (32-(34-32)))) ^ ((al0 >>> (39-32)) | (ah0 << (32-(39-32))));\n l = ((al0 >>> 28) | (ah0 << (32-28))) ^ ((ah0 >>> (34-32)) | (al0 << (32-(34-32)))) ^ ((ah0 >>> (39-32)) | (al0 << (32-(39-32))));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // Maj\n h = (ah0 & ah1) ^ (ah0 & ah2) ^ (ah1 & ah2);\n l = (al0 & al1) ^ (al0 & al2) ^ (al1 & al2);\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n bh7 = (c & 0xffff) | (d << 16);\n bl7 = (a & 0xffff) | (b << 16);\n\n // add\n h = bh3;\n l = bl3;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = th;\n l = tl;\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n bh3 = (c & 0xffff) | (d << 16);\n bl3 = (a & 0xffff) | (b << 16);\n\n ah1 = bh0;\n ah2 = bh1;\n ah3 = bh2;\n ah4 = bh3;\n ah5 = bh4;\n ah6 = bh5;\n ah7 = bh6;\n ah0 = bh7;\n\n al1 = bl0;\n al2 = bl1;\n al3 = bl2;\n al4 = bl3;\n al5 = bl4;\n al6 = bl5;\n al7 = bl6;\n al0 = bl7;\n\n if (i%16 === 15) {\n for (j = 0; j < 16; j++) {\n // add\n h = wh[j];\n l = wl[j];\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = wh[(j+9)%16];\n l = wl[(j+9)%16];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // sigma0\n th = wh[(j+1)%16];\n tl = wl[(j+1)%16];\n h = ((th >>> 1) | (tl << (32-1))) ^ ((th >>> 8) | (tl << (32-8))) ^ (th >>> 7);\n l = ((tl >>> 1) | (th << (32-1))) ^ ((tl >>> 8) | (th << (32-8))) ^ ((tl >>> 7) | (th << (32-7)));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // sigma1\n th = wh[(j+14)%16];\n tl = wl[(j+14)%16];\n h = ((th >>> 19) | (tl << (32-19))) ^ ((tl >>> (61-32)) | (th << (32-(61-32)))) ^ (th >>> 6);\n l = ((tl >>> 19) | (th << (32-19))) ^ ((th >>> (61-32)) | (tl << (32-(61-32)))) ^ ((tl >>> 6) | (th << (32-6)));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n wh[j] = (c & 0xffff) | (d << 16);\n wl[j] = (a & 0xffff) | (b << 16);\n }\n }\n }\n\n // add\n h = ah0;\n l = al0;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[0];\n l = hl[0];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[0] = ah0 = (c & 0xffff) | (d << 16);\n hl[0] = al0 = (a & 0xffff) | (b << 16);\n\n h = ah1;\n l = al1;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[1];\n l = hl[1];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[1] = ah1 = (c & 0xffff) | (d << 16);\n hl[1] = al1 = (a & 0xffff) | (b << 16);\n\n h = ah2;\n l = al2;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[2];\n l = hl[2];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[2] = ah2 = (c & 0xffff) | (d << 16);\n hl[2] = al2 = (a & 0xffff) | (b << 16);\n\n h = ah3;\n l = al3;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[3];\n l = hl[3];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[3] = ah3 = (c & 0xffff) | (d << 16);\n hl[3] = al3 = (a & 0xffff) | (b << 16);\n\n h = ah4;\n l = al4;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[4];\n l = hl[4];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[4] = ah4 = (c & 0xffff) | (d << 16);\n hl[4] = al4 = (a & 0xffff) | (b << 16);\n\n h = ah5;\n l = al5;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[5];\n l = hl[5];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[5] = ah5 = (c & 0xffff) | (d << 16);\n hl[5] = al5 = (a & 0xffff) | (b << 16);\n\n h = ah6;\n l = al6;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[6];\n l = hl[6];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[6] = ah6 = (c & 0xffff) | (d << 16);\n hl[6] = al6 = (a & 0xffff) | (b << 16);\n\n h = ah7;\n l = al7;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[7];\n l = hl[7];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[7] = ah7 = (c & 0xffff) | (d << 16);\n hl[7] = al7 = (a & 0xffff) | (b << 16);\n\n pos += 128;\n n -= 128;\n }\n\n return n;\n}\n\nfunction crypto_hash(out, m, n) {\n var hh = new Int32Array(8),\n hl = new Int32Array(8),\n x = new Uint8Array(256),\n i, b = n;\n\n hh[0] = 0x6a09e667;\n hh[1] = 0xbb67ae85;\n hh[2] = 0x3c6ef372;\n hh[3] = 0xa54ff53a;\n hh[4] = 0x510e527f;\n hh[5] = 0x9b05688c;\n hh[6] = 0x1f83d9ab;\n hh[7] = 0x5be0cd19;\n\n hl[0] = 0xf3bcc908;\n hl[1] = 0x84caa73b;\n hl[2] = 0xfe94f82b;\n hl[3] = 0x5f1d36f1;\n hl[4] = 0xade682d1;\n hl[5] = 0x2b3e6c1f;\n hl[6] = 0xfb41bd6b;\n hl[7] = 0x137e2179;\n\n crypto_hashblocks_hl(hh, hl, m, n);\n n %= 128;\n\n for (i = 0; i < n; i++) x[i] = m[b-n+i];\n x[n] = 128;\n\n n = 256-128*(n<112?1:0);\n x[n-9] = 0;\n ts64(x, n-8, (b / 0x20000000) | 0, b << 3);\n crypto_hashblocks_hl(hh, hl, x, n);\n\n for (i = 0; i < 8; i++) ts64(out, 8*i, hh[i], hl[i]);\n\n return 0;\n}\n\nfunction add(p, q) {\n var a = gf(), b = gf(), c = gf(),\n d = gf(), e = gf(), f = gf(),\n g = gf(), h = gf(), t = gf();\n\n Z(a, p[1], p[0]);\n Z(t, q[1], q[0]);\n M(a, a, t);\n A(b, p[0], p[1]);\n A(t, q[0], q[1]);\n M(b, b, t);\n M(c, p[3], q[3]);\n M(c, c, D2);\n M(d, p[2], q[2]);\n A(d, d, d);\n Z(e, b, a);\n Z(f, d, c);\n A(g, d, c);\n A(h, b, a);\n\n M(p[0], e, f);\n M(p[1], h, g);\n M(p[2], g, f);\n M(p[3], e, h);\n}\n\nfunction cswap(p, q, b) {\n var i;\n for (i = 0; i < 4; i++) {\n sel25519(p[i], q[i], b);\n }\n}\n\nfunction pack(r, p) {\n var tx = gf(), ty = gf(), zi = gf();\n inv25519(zi, p[2]);\n M(tx, p[0], zi);\n M(ty, p[1], zi);\n pack25519(r, ty);\n r[31] ^= par25519(tx) << 7;\n}\n\nfunction scalarmult(p, q, s) {\n var b, i;\n set25519(p[0], gf0);\n set25519(p[1], gf1);\n set25519(p[2], gf1);\n set25519(p[3], gf0);\n for (i = 255; i >= 0; --i) {\n b = (s[(i/8)|0] >> (i&7)) & 1;\n cswap(p, q, b);\n add(q, p);\n add(p, p);\n cswap(p, q, b);\n }\n}\n\nfunction scalarbase(p, s) {\n var q = [gf(), gf(), gf(), gf()];\n set25519(q[0], X);\n set25519(q[1], Y);\n set25519(q[2], gf1);\n M(q[3], X, Y);\n scalarmult(p, q, s);\n}\n\nfunction crypto_sign_keypair(pk, sk, seeded) {\n var d = new Uint8Array(64);\n var p = [gf(), gf(), gf(), gf()];\n var i;\n\n if (!seeded) randombytes(sk, 32);\n crypto_hash(d, sk, 32);\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n\n scalarbase(p, d);\n pack(pk, p);\n\n for (i = 0; i < 32; i++) sk[i+32] = pk[i];\n return 0;\n}\n\nvar L = new Float64Array([0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x10]);\n\nfunction modL(r, x) {\n var carry, i, j, k;\n for (i = 63; i >= 32; --i) {\n carry = 0;\n for (j = i - 32, k = i - 12; j < k; ++j) {\n x[j] += carry - 16 * x[i] * L[j - (i - 32)];\n carry = Math.floor((x[j] + 128) / 256);\n x[j] -= carry * 256;\n }\n x[j] += carry;\n x[i] = 0;\n }\n carry = 0;\n for (j = 0; j < 32; j++) {\n x[j] += carry - (x[31] >> 4) * L[j];\n carry = x[j] >> 8;\n x[j] &= 255;\n }\n for (j = 0; j < 32; j++) x[j] -= carry * L[j];\n for (i = 0; i < 32; i++) {\n x[i+1] += x[i] >> 8;\n r[i] = x[i] & 255;\n }\n}\n\nfunction reduce(r) {\n var x = new Float64Array(64), i;\n for (i = 0; i < 64; i++) x[i] = r[i];\n for (i = 0; i < 64; i++) r[i] = 0;\n modL(r, x);\n}\n\n// Note: difference from C - smlen returned, not passed as argument.\nfunction crypto_sign(sm, m, n, sk) {\n var d = new Uint8Array(64), h = new Uint8Array(64), r = new Uint8Array(64);\n var i, j, x = new Float64Array(64);\n var p = [gf(), gf(), gf(), gf()];\n\n crypto_hash(d, sk, 32);\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n\n var smlen = n + 64;\n for (i = 0; i < n; i++) sm[64 + i] = m[i];\n for (i = 0; i < 32; i++) sm[32 + i] = d[32 + i];\n\n crypto_hash(r, sm.subarray(32), n+32);\n reduce(r);\n scalarbase(p, r);\n pack(sm, p);\n\n for (i = 32; i < 64; i++) sm[i] = sk[i];\n crypto_hash(h, sm, n + 64);\n reduce(h);\n\n for (i = 0; i < 64; i++) x[i] = 0;\n for (i = 0; i < 32; i++) x[i] = r[i];\n for (i = 0; i < 32; i++) {\n for (j = 0; j < 32; j++) {\n x[i+j] += h[i] * d[j];\n }\n }\n\n modL(sm.subarray(32), x);\n return smlen;\n}\n\nfunction unpackneg(r, p) {\n var t = gf(), chk = gf(), num = gf(),\n den = gf(), den2 = gf(), den4 = gf(),\n den6 = gf();\n\n set25519(r[2], gf1);\n unpack25519(r[1], p);\n S(num, r[1]);\n M(den, num, D);\n Z(num, num, r[2]);\n A(den, r[2], den);\n\n S(den2, den);\n S(den4, den2);\n M(den6, den4, den2);\n M(t, den6, num);\n M(t, t, den);\n\n pow2523(t, t);\n M(t, t, num);\n M(t, t, den);\n M(t, t, den);\n M(r[0], t, den);\n\n S(chk, r[0]);\n M(chk, chk, den);\n if (neq25519(chk, num)) M(r[0], r[0], I);\n\n S(chk, r[0]);\n M(chk, chk, den);\n if (neq25519(chk, num)) return -1;\n\n if (par25519(r[0]) === (p[31]>>7)) Z(r[0], gf0, r[0]);\n\n M(r[3], r[0], r[1]);\n return 0;\n}\n\nfunction crypto_sign_open(m, sm, n, pk) {\n var i;\n var t = new Uint8Array(32), h = new Uint8Array(64);\n var p = [gf(), gf(), gf(), gf()],\n q = [gf(), gf(), gf(), gf()];\n\n if (n < 64) return -1;\n\n if (unpackneg(q, pk)) return -1;\n\n for (i = 0; i < n; i++) m[i] = sm[i];\n for (i = 0; i < 32; i++) m[i+32] = pk[i];\n crypto_hash(h, m, n);\n reduce(h);\n scalarmult(p, q, h);\n\n scalarbase(q, sm.subarray(32));\n add(p, q);\n pack(t, p);\n\n n -= 64;\n if (crypto_verify_32(sm, 0, t, 0)) {\n for (i = 0; i < n; i++) m[i] = 0;\n return -1;\n }\n\n for (i = 0; i < n; i++) m[i] = sm[i + 64];\n return n;\n}\n\nvar crypto_secretbox_KEYBYTES = 32,\n crypto_secretbox_NONCEBYTES = 24,\n crypto_secretbox_ZEROBYTES = 32,\n crypto_secretbox_BOXZEROBYTES = 16,\n crypto_scalarmult_BYTES = 32,\n crypto_scalarmult_SCALARBYTES = 32,\n crypto_box_PUBLICKEYBYTES = 32,\n crypto_box_SECRETKEYBYTES = 32,\n crypto_box_BEFORENMBYTES = 32,\n crypto_box_NONCEBYTES = crypto_secretbox_NONCEBYTES,\n crypto_box_ZEROBYTES = crypto_secretbox_ZEROBYTES,\n crypto_box_BOXZEROBYTES = crypto_secretbox_BOXZEROBYTES,\n crypto_sign_BYTES = 64,\n crypto_sign_PUBLICKEYBYTES = 32,\n crypto_sign_SECRETKEYBYTES = 64,\n crypto_sign_SEEDBYTES = 32,\n crypto_hash_BYTES = 64;\n\nnacl.lowlevel = {\n crypto_core_hsalsa20: crypto_core_hsalsa20,\n crypto_stream_xor: crypto_stream_xor,\n crypto_stream: crypto_stream,\n crypto_stream_salsa20_xor: crypto_stream_salsa20_xor,\n crypto_stream_salsa20: crypto_stream_salsa20,\n crypto_onetimeauth: crypto_onetimeauth,\n crypto_onetimeauth_verify: crypto_onetimeauth_verify,\n crypto_verify_16: crypto_verify_16,\n crypto_verify_32: crypto_verify_32,\n crypto_secretbox: crypto_secretbox,\n crypto_secretbox_open: crypto_secretbox_open,\n crypto_scalarmult: crypto_scalarmult,\n crypto_scalarmult_base: crypto_scalarmult_base,\n crypto_box_beforenm: crypto_box_beforenm,\n crypto_box_afternm: crypto_box_afternm,\n crypto_box: crypto_box,\n crypto_box_open: crypto_box_open,\n crypto_box_keypair: crypto_box_keypair,\n crypto_hash: crypto_hash,\n crypto_sign: crypto_sign,\n crypto_sign_keypair: crypto_sign_keypair,\n crypto_sign_open: crypto_sign_open,\n\n crypto_secretbox_KEYBYTES: crypto_secretbox_KEYBYTES,\n crypto_secretbox_NONCEBYTES: crypto_secretbox_NONCEBYTES,\n crypto_secretbox_ZEROBYTES: crypto_secretbox_ZEROBYTES,\n crypto_secretbox_BOXZEROBYTES: crypto_secretbox_BOXZEROBYTES,\n crypto_scalarmult_BYTES: crypto_scalarmult_BYTES,\n crypto_scalarmult_SCALARBYTES: crypto_scalarmult_SCALARBYTES,\n crypto_box_PUBLICKEYBYTES: crypto_box_PUBLICKEYBYTES,\n crypto_box_SECRETKEYBYTES: crypto_box_SECRETKEYBYTES,\n crypto_box_BEFORENMBYTES: crypto_box_BEFORENMBYTES,\n crypto_box_NONCEBYTES: crypto_box_NONCEBYTES,\n crypto_box_ZEROBYTES: crypto_box_ZEROBYTES,\n crypto_box_BOXZEROBYTES: crypto_box_BOXZEROBYTES,\n crypto_sign_BYTES: crypto_sign_BYTES,\n crypto_sign_PUBLICKEYBYTES: crypto_sign_PUBLICKEYBYTES,\n crypto_sign_SECRETKEYBYTES: crypto_sign_SECRETKEYBYTES,\n crypto_sign_SEEDBYTES: crypto_sign_SEEDBYTES,\n crypto_hash_BYTES: crypto_hash_BYTES,\n\n gf: gf,\n D: D,\n L: L,\n pack25519: pack25519,\n unpack25519: unpack25519,\n M: M,\n A: A,\n S: S,\n Z: Z,\n pow2523: pow2523,\n add: add,\n set25519: set25519,\n modL: modL,\n scalarmult: scalarmult,\n scalarbase: scalarbase,\n};\n\n/* High-level API */\n\nfunction checkLengths(k, n) {\n if (k.length !== crypto_secretbox_KEYBYTES) throw new Error('bad key size');\n if (n.length !== crypto_secretbox_NONCEBYTES) throw new Error('bad nonce size');\n}\n\nfunction checkBoxLengths(pk, sk) {\n if (pk.length !== crypto_box_PUBLICKEYBYTES) throw new Error('bad public key size');\n if (sk.length !== crypto_box_SECRETKEYBYTES) throw new Error('bad secret key size');\n}\n\nfunction checkArrayTypes() {\n for (var i = 0; i < arguments.length; i++) {\n if (!(arguments[i] instanceof Uint8Array))\n throw new TypeError('unexpected type, use Uint8Array');\n }\n}\n\nfunction cleanup(arr) {\n for (var i = 0; i < arr.length; i++) arr[i] = 0;\n}\n\nnacl.randomBytes = function(n) {\n var b = new Uint8Array(n);\n randombytes(b, n);\n return b;\n};\n\nnacl.secretbox = function(msg, nonce, key) {\n checkArrayTypes(msg, nonce, key);\n checkLengths(key, nonce);\n var m = new Uint8Array(crypto_secretbox_ZEROBYTES + msg.length);\n var c = new Uint8Array(m.length);\n for (var i = 0; i < msg.length; i++) m[i+crypto_secretbox_ZEROBYTES] = msg[i];\n crypto_secretbox(c, m, m.length, nonce, key);\n return c.subarray(crypto_secretbox_BOXZEROBYTES);\n};\n\nnacl.secretbox.open = function(box, nonce, key) {\n checkArrayTypes(box, nonce, key);\n checkLengths(key, nonce);\n var c = new Uint8Array(crypto_secretbox_BOXZEROBYTES + box.length);\n var m = new Uint8Array(c.length);\n for (var i = 0; i < box.length; i++) c[i+crypto_secretbox_BOXZEROBYTES] = box[i];\n if (c.length < 32) return null;\n if (crypto_secretbox_open(m, c, c.length, nonce, key) !== 0) return null;\n return m.subarray(crypto_secretbox_ZEROBYTES);\n};\n\nnacl.secretbox.keyLength = crypto_secretbox_KEYBYTES;\nnacl.secretbox.nonceLength = crypto_secretbox_NONCEBYTES;\nnacl.secretbox.overheadLength = crypto_secretbox_BOXZEROBYTES;\n\nnacl.scalarMult = function(n, p) {\n checkArrayTypes(n, p);\n if (n.length !== crypto_scalarmult_SCALARBYTES) throw new Error('bad n size');\n if (p.length !== crypto_scalarmult_BYTES) throw new Error('bad p size');\n var q = new Uint8Array(crypto_scalarmult_BYTES);\n crypto_scalarmult(q, n, p);\n return q;\n};\n\nnacl.scalarMult.base = function(n) {\n checkArrayTypes(n);\n if (n.length !== crypto_scalarmult_SCALARBYTES) throw new Error('bad n size');\n var q = new Uint8Array(crypto_scalarmult_BYTES);\n crypto_scalarmult_base(q, n);\n return q;\n};\n\nnacl.scalarMult.scalarLength = crypto_scalarmult_SCALARBYTES;\nnacl.scalarMult.groupElementLength = crypto_scalarmult_BYTES;\n\nnacl.box = function(msg, nonce, publicKey, secretKey) {\n var k = nacl.box.before(publicKey, secretKey);\n return nacl.secretbox(msg, nonce, k);\n};\n\nnacl.box.before = function(publicKey, secretKey) {\n checkArrayTypes(publicKey, secretKey);\n checkBoxLengths(publicKey, secretKey);\n var k = new Uint8Array(crypto_box_BEFORENMBYTES);\n crypto_box_beforenm(k, publicKey, secretKey);\n return k;\n};\n\nnacl.box.after = nacl.secretbox;\n\nnacl.box.open = function(msg, nonce, publicKey, secretKey) {\n var k = nacl.box.before(publicKey, secretKey);\n return nacl.secretbox.open(msg, nonce, k);\n};\n\nnacl.box.open.after = nacl.secretbox.open;\n\nnacl.box.keyPair = function() {\n var pk = new Uint8Array(crypto_box_PUBLICKEYBYTES);\n var sk = new Uint8Array(crypto_box_SECRETKEYBYTES);\n crypto_box_keypair(pk, sk);\n return {publicKey: pk, secretKey: sk};\n};\n\nnacl.box.keyPair.fromSecretKey = function(secretKey) {\n checkArrayTypes(secretKey);\n if (secretKey.length !== crypto_box_SECRETKEYBYTES)\n throw new Error('bad secret key size');\n var pk = new Uint8Array(crypto_box_PUBLICKEYBYTES);\n crypto_scalarmult_base(pk, secretKey);\n return {publicKey: pk, secretKey: new Uint8Array(secretKey)};\n};\n\nnacl.box.publicKeyLength = crypto_box_PUBLICKEYBYTES;\nnacl.box.secretKeyLength = crypto_box_SECRETKEYBYTES;\nnacl.box.sharedKeyLength = crypto_box_BEFORENMBYTES;\nnacl.box.nonceLength = crypto_box_NONCEBYTES;\nnacl.box.overheadLength = nacl.secretbox.overheadLength;\n\nnacl.sign = function(msg, secretKey) {\n checkArrayTypes(msg, secretKey);\n if (secretKey.length !== crypto_sign_SECRETKEYBYTES)\n throw new Error('bad secret key size');\n var signedMsg = new Uint8Array(crypto_sign_BYTES+msg.length);\n crypto_sign(signedMsg, msg, msg.length, secretKey);\n return signedMsg;\n};\n\nnacl.sign.open = function(signedMsg, publicKey) {\n checkArrayTypes(signedMsg, publicKey);\n if (publicKey.length !== crypto_sign_PUBLICKEYBYTES)\n throw new Error('bad public key size');\n var tmp = new Uint8Array(signedMsg.length);\n var mlen = crypto_sign_open(tmp, signedMsg, signedMsg.length, publicKey);\n if (mlen < 0) return null;\n var m = new Uint8Array(mlen);\n for (var i = 0; i < m.length; i++) m[i] = tmp[i];\n return m;\n};\n\nnacl.sign.detached = function(msg, secretKey) {\n var signedMsg = nacl.sign(msg, secretKey);\n var sig = new Uint8Array(crypto_sign_BYTES);\n for (var i = 0; i < sig.length; i++) sig[i] = signedMsg[i];\n return sig;\n};\n\nnacl.sign.detached.verify = function(msg, sig, publicKey) {\n checkArrayTypes(msg, sig, publicKey);\n if (sig.length !== crypto_sign_BYTES)\n throw new Error('bad signature size');\n if (publicKey.length !== crypto_sign_PUBLICKEYBYTES)\n throw new Error('bad public key size');\n var sm = new Uint8Array(crypto_sign_BYTES + msg.length);\n var m = new Uint8Array(crypto_sign_BYTES + msg.length);\n var i;\n for (i = 0; i < crypto_sign_BYTES; i++) sm[i] = sig[i];\n for (i = 0; i < msg.length; i++) sm[i+crypto_sign_BYTES] = msg[i];\n return (crypto_sign_open(m, sm, sm.length, publicKey) >= 0);\n};\n\nnacl.sign.keyPair = function() {\n var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);\n var sk = new Uint8Array(crypto_sign_SECRETKEYBYTES);\n crypto_sign_keypair(pk, sk);\n return {publicKey: pk, secretKey: sk};\n};\n\nnacl.sign.keyPair.fromSecretKey = function(secretKey) {\n checkArrayTypes(secretKey);\n if (secretKey.length !== crypto_sign_SECRETKEYBYTES)\n throw new Error('bad secret key size');\n var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);\n for (var i = 0; i < pk.length; i++) pk[i] = secretKey[32+i];\n return {publicKey: pk, secretKey: new Uint8Array(secretKey)};\n};\n\nnacl.sign.keyPair.fromSeed = function(seed) {\n checkArrayTypes(seed);\n if (seed.length !== crypto_sign_SEEDBYTES)\n throw new Error('bad seed size');\n var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);\n var sk = new Uint8Array(crypto_sign_SECRETKEYBYTES);\n for (var i = 0; i < 32; i++) sk[i] = seed[i];\n crypto_sign_keypair(pk, sk, true);\n return {publicKey: pk, secretKey: sk};\n};\n\nnacl.sign.publicKeyLength = crypto_sign_PUBLICKEYBYTES;\nnacl.sign.secretKeyLength = crypto_sign_SECRETKEYBYTES;\nnacl.sign.seedLength = crypto_sign_SEEDBYTES;\nnacl.sign.signatureLength = crypto_sign_BYTES;\n\nnacl.hash = function(msg) {\n checkArrayTypes(msg);\n var h = new Uint8Array(crypto_hash_BYTES);\n crypto_hash(h, msg, msg.length);\n return h;\n};\n\nnacl.hash.hashLength = crypto_hash_BYTES;\n\nnacl.verify = function(x, y) {\n checkArrayTypes(x, y);\n // Zero length arguments are considered not equal.\n if (x.length === 0 || y.length === 0) return false;\n if (x.length !== y.length) return false;\n return (vn(x, 0, y, 0, x.length) === 0) ? true : false;\n};\n\nnacl.setPRNG = function(fn) {\n randombytes = fn;\n};\n\n(function() {\n // Initialize PRNG if environment provides CSPRNG.\n // If not, methods calling randombytes will throw.\n var crypto = typeof self !== 'undefined' ? (self.crypto || self.msCrypto) : null;\n if (crypto && crypto.getRandomValues) {\n // Browsers.\n var QUOTA = 65536;\n nacl.setPRNG(function(x, n) {\n var i, v = new Uint8Array(n);\n for (i = 0; i < n; i += QUOTA) {\n crypto.getRandomValues(v.subarray(i, i + Math.min(n - i, QUOTA)));\n }\n for (i = 0; i < n; i++) x[i] = v[i];\n cleanup(v);\n });\n } else if (typeof require !== 'undefined') {\n // Node.js.\n crypto = require('crypto');\n if (crypto && crypto.randomBytes) {\n nacl.setPRNG(function(x, n) {\n var i, v = crypto.randomBytes(n);\n for (i = 0; i < n; i++) x[i] = v[i];\n cleanup(v);\n });\n }\n }\n})();\n\n})(typeof module !== 'undefined' && module.exports ? module.exports : (self.nacl = self.nacl || {}));\n","import * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @typedef {import(\"./hmac.js\").HashAlgorithm} HashAlgorithm\n */\n\n/**\n * @param {HashAlgorithm} algorithm\n * @param {Uint8Array | string} password\n * @param {Uint8Array | string} salt\n * @param {number} iterations\n * @param {number} length\n * @returns {Promise}\n */\nexport async function deriveKey(algorithm, password, salt, iterations, length) {\n const pass =\n typeof password === \"string\"\n ? // Valid ASCII is also valid UTF-8 so encoding the password as UTF-8\n // should be fine if only valid ASCII characters are used in the password\n utf8.encode(password)\n : password;\n\n const nacl = typeof salt === \"string\" ? utf8.encode(salt) : salt;\n\n try {\n const key = await window.crypto.subtle.importKey(\n \"raw\",\n pass,\n {\n name: \"PBKDF2\",\n hash: algorithm,\n },\n false,\n [\"deriveBits\"]\n );\n\n return new Uint8Array(\n await window.crypto.subtle.deriveBits(\n {\n name: \"PBKDF2\",\n hash: algorithm,\n salt: nacl,\n iterations,\n },\n key,\n length << 3\n )\n );\n } catch {\n throw new Error(\"(BUG) Non-Exhaustive switch statement for algorithms\");\n }\n}\n","'use strict';\n\nvar BN = require('bn.js');\nvar utils = require('../utils');\nvar getNAF = utils.getNAF;\nvar getJSF = utils.getJSF;\nvar assert = utils.assert;\n\nfunction BaseCurve(type, conf) {\n this.type = type;\n this.p = new BN(conf.p, 16);\n\n // Use Montgomery, when there is no fast reduction for the prime\n this.red = conf.prime ? BN.red(conf.prime) : BN.mont(this.p);\n\n // Useful for many curves\n this.zero = new BN(0).toRed(this.red);\n this.one = new BN(1).toRed(this.red);\n this.two = new BN(2).toRed(this.red);\n\n // Curve configuration, optional\n this.n = conf.n && new BN(conf.n, 16);\n this.g = conf.g && this.pointFromJSON(conf.g, conf.gRed);\n\n // Temporary arrays\n this._wnafT1 = new Array(4);\n this._wnafT2 = new Array(4);\n this._wnafT3 = new Array(4);\n this._wnafT4 = new Array(4);\n\n this._bitLength = this.n ? this.n.bitLength() : 0;\n\n // Generalized Greg Maxwell's trick\n var adjustCount = this.n && this.p.div(this.n);\n if (!adjustCount || adjustCount.cmpn(100) > 0) {\n this.redN = null;\n } else {\n this._maxwellTrick = true;\n this.redN = this.n.toRed(this.red);\n }\n}\nmodule.exports = BaseCurve;\n\nBaseCurve.prototype.point = function point() {\n throw new Error('Not implemented');\n};\n\nBaseCurve.prototype.validate = function validate() {\n throw new Error('Not implemented');\n};\n\nBaseCurve.prototype._fixedNafMul = function _fixedNafMul(p, k) {\n assert(p.precomputed);\n var doubles = p._getDoubles();\n\n var naf = getNAF(k, 1, this._bitLength);\n var I = (1 << (doubles.step + 1)) - (doubles.step % 2 === 0 ? 2 : 1);\n I /= 3;\n\n // Translate into more windowed form\n var repr = [];\n var j;\n var nafW;\n for (j = 0; j < naf.length; j += doubles.step) {\n nafW = 0;\n for (var l = j + doubles.step - 1; l >= j; l--)\n nafW = (nafW << 1) + naf[l];\n repr.push(nafW);\n }\n\n var a = this.jpoint(null, null, null);\n var b = this.jpoint(null, null, null);\n for (var i = I; i > 0; i--) {\n for (j = 0; j < repr.length; j++) {\n nafW = repr[j];\n if (nafW === i)\n b = b.mixedAdd(doubles.points[j]);\n else if (nafW === -i)\n b = b.mixedAdd(doubles.points[j].neg());\n }\n a = a.add(b);\n }\n return a.toP();\n};\n\nBaseCurve.prototype._wnafMul = function _wnafMul(p, k) {\n var w = 4;\n\n // Precompute window\n var nafPoints = p._getNAFPoints(w);\n w = nafPoints.wnd;\n var wnd = nafPoints.points;\n\n // Get NAF form\n var naf = getNAF(k, w, this._bitLength);\n\n // Add `this`*(N+1) for every w-NAF index\n var acc = this.jpoint(null, null, null);\n for (var i = naf.length - 1; i >= 0; i--) {\n // Count zeroes\n for (var l = 0; i >= 0 && naf[i] === 0; i--)\n l++;\n if (i >= 0)\n l++;\n acc = acc.dblp(l);\n\n if (i < 0)\n break;\n var z = naf[i];\n assert(z !== 0);\n if (p.type === 'affine') {\n // J +- P\n if (z > 0)\n acc = acc.mixedAdd(wnd[(z - 1) >> 1]);\n else\n acc = acc.mixedAdd(wnd[(-z - 1) >> 1].neg());\n } else {\n // J +- J\n if (z > 0)\n acc = acc.add(wnd[(z - 1) >> 1]);\n else\n acc = acc.add(wnd[(-z - 1) >> 1].neg());\n }\n }\n return p.type === 'affine' ? acc.toP() : acc;\n};\n\nBaseCurve.prototype._wnafMulAdd = function _wnafMulAdd(defW,\n points,\n coeffs,\n len,\n jacobianResult) {\n var wndWidth = this._wnafT1;\n var wnd = this._wnafT2;\n var naf = this._wnafT3;\n\n // Fill all arrays\n var max = 0;\n var i;\n var j;\n var p;\n for (i = 0; i < len; i++) {\n p = points[i];\n var nafPoints = p._getNAFPoints(defW);\n wndWidth[i] = nafPoints.wnd;\n wnd[i] = nafPoints.points;\n }\n\n // Comb small window NAFs\n for (i = len - 1; i >= 1; i -= 2) {\n var a = i - 1;\n var b = i;\n if (wndWidth[a] !== 1 || wndWidth[b] !== 1) {\n naf[a] = getNAF(coeffs[a], wndWidth[a], this._bitLength);\n naf[b] = getNAF(coeffs[b], wndWidth[b], this._bitLength);\n max = Math.max(naf[a].length, max);\n max = Math.max(naf[b].length, max);\n continue;\n }\n\n var comb = [\n points[a], /* 1 */\n null, /* 3 */\n null, /* 5 */\n points[b], /* 7 */\n ];\n\n // Try to avoid Projective points, if possible\n if (points[a].y.cmp(points[b].y) === 0) {\n comb[1] = points[a].add(points[b]);\n comb[2] = points[a].toJ().mixedAdd(points[b].neg());\n } else if (points[a].y.cmp(points[b].y.redNeg()) === 0) {\n comb[1] = points[a].toJ().mixedAdd(points[b]);\n comb[2] = points[a].add(points[b].neg());\n } else {\n comb[1] = points[a].toJ().mixedAdd(points[b]);\n comb[2] = points[a].toJ().mixedAdd(points[b].neg());\n }\n\n var index = [\n -3, /* -1 -1 */\n -1, /* -1 0 */\n -5, /* -1 1 */\n -7, /* 0 -1 */\n 0, /* 0 0 */\n 7, /* 0 1 */\n 5, /* 1 -1 */\n 1, /* 1 0 */\n 3, /* 1 1 */\n ];\n\n var jsf = getJSF(coeffs[a], coeffs[b]);\n max = Math.max(jsf[0].length, max);\n naf[a] = new Array(max);\n naf[b] = new Array(max);\n for (j = 0; j < max; j++) {\n var ja = jsf[0][j] | 0;\n var jb = jsf[1][j] | 0;\n\n naf[a][j] = index[(ja + 1) * 3 + (jb + 1)];\n naf[b][j] = 0;\n wnd[a] = comb;\n }\n }\n\n var acc = this.jpoint(null, null, null);\n var tmp = this._wnafT4;\n for (i = max; i >= 0; i--) {\n var k = 0;\n\n while (i >= 0) {\n var zero = true;\n for (j = 0; j < len; j++) {\n tmp[j] = naf[j][i] | 0;\n if (tmp[j] !== 0)\n zero = false;\n }\n if (!zero)\n break;\n k++;\n i--;\n }\n if (i >= 0)\n k++;\n acc = acc.dblp(k);\n if (i < 0)\n break;\n\n for (j = 0; j < len; j++) {\n var z = tmp[j];\n p;\n if (z === 0)\n continue;\n else if (z > 0)\n p = wnd[j][(z - 1) >> 1];\n else if (z < 0)\n p = wnd[j][(-z - 1) >> 1].neg();\n\n if (p.type === 'affine')\n acc = acc.mixedAdd(p);\n else\n acc = acc.add(p);\n }\n }\n // Zeroify references\n for (i = 0; i < len; i++)\n wnd[i] = null;\n\n if (jacobianResult)\n return acc;\n else\n return acc.toP();\n};\n\nfunction BasePoint(curve, type) {\n this.curve = curve;\n this.type = type;\n this.precomputed = null;\n}\nBaseCurve.BasePoint = BasePoint;\n\nBasePoint.prototype.eq = function eq(/*other*/) {\n throw new Error('Not implemented');\n};\n\nBasePoint.prototype.validate = function validate() {\n return this.curve.validate(this);\n};\n\nBaseCurve.prototype.decodePoint = function decodePoint(bytes, enc) {\n bytes = utils.toArray(bytes, enc);\n\n var len = this.p.byteLength();\n\n // uncompressed, hybrid-odd, hybrid-even\n if ((bytes[0] === 0x04 || bytes[0] === 0x06 || bytes[0] === 0x07) &&\n bytes.length - 1 === 2 * len) {\n if (bytes[0] === 0x06)\n assert(bytes[bytes.length - 1] % 2 === 0);\n else if (bytes[0] === 0x07)\n assert(bytes[bytes.length - 1] % 2 === 1);\n\n var res = this.point(bytes.slice(1, 1 + len),\n bytes.slice(1 + len, 1 + 2 * len));\n\n return res;\n } else if ((bytes[0] === 0x02 || bytes[0] === 0x03) &&\n bytes.length - 1 === len) {\n return this.pointFromX(bytes.slice(1, 1 + len), bytes[0] === 0x03);\n }\n throw new Error('Unknown point format');\n};\n\nBasePoint.prototype.encodeCompressed = function encodeCompressed(enc) {\n return this.encode(enc, true);\n};\n\nBasePoint.prototype._encode = function _encode(compact) {\n var len = this.curve.p.byteLength();\n var x = this.getX().toArray('be', len);\n\n if (compact)\n return [ this.getY().isEven() ? 0x02 : 0x03 ].concat(x);\n\n return [ 0x04 ].concat(x, this.getY().toArray('be', len));\n};\n\nBasePoint.prototype.encode = function encode(enc, compact) {\n return utils.encode(this._encode(compact), enc);\n};\n\nBasePoint.prototype.precompute = function precompute(power) {\n if (this.precomputed)\n return this;\n\n var precomputed = {\n doubles: null,\n naf: null,\n beta: null,\n };\n precomputed.naf = this._getNAFPoints(8);\n precomputed.doubles = this._getDoubles(4, power);\n precomputed.beta = this._getBeta();\n this.precomputed = precomputed;\n\n return this;\n};\n\nBasePoint.prototype._hasDoubles = function _hasDoubles(k) {\n if (!this.precomputed)\n return false;\n\n var doubles = this.precomputed.doubles;\n if (!doubles)\n return false;\n\n return doubles.points.length >= Math.ceil((k.bitLength() + 1) / doubles.step);\n};\n\nBasePoint.prototype._getDoubles = function _getDoubles(step, power) {\n if (this.precomputed && this.precomputed.doubles)\n return this.precomputed.doubles;\n\n var doubles = [ this ];\n var acc = this;\n for (var i = 0; i < power; i += step) {\n for (var j = 0; j < step; j++)\n acc = acc.dbl();\n doubles.push(acc);\n }\n return {\n step: step,\n points: doubles,\n };\n};\n\nBasePoint.prototype._getNAFPoints = function _getNAFPoints(wnd) {\n if (this.precomputed && this.precomputed.naf)\n return this.precomputed.naf;\n\n var res = [ this ];\n var max = (1 << wnd) - 1;\n var dbl = max === 1 ? null : this.dbl();\n for (var i = 1; i < max; i++)\n res[i] = res[i - 1].add(dbl);\n return {\n wnd: wnd,\n points: res,\n };\n};\n\nBasePoint.prototype._getBeta = function _getBeta() {\n return null;\n};\n\nBasePoint.prototype.dblp = function dblp(k) {\n var r = this;\n for (var i = 0; i < k; i++)\n r = r.dbl();\n return r;\n};\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","import StatusError from \"./StatusError.js\";\n\n/**\n * @typedef {import(\"./Status.js\").default} Status\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"./transaction/TransactionReceipt.js\").default} TransactionReceipt\n */\n\nexport default class ReceiptStatusError extends StatusError {\n /**\n * @param {object} props\n * @param {TransactionReceipt} props.transactionReceipt\n * @param {Status} props.status\n * @param {TransactionId} props.transactionId\n */\n constructor(props) {\n super(\n props,\n `receipt for transaction ${props.transactionId.toString()} contained error status ${props.status.toString()}`\n );\n\n /**\n * @type {TransactionReceipt}\n * @readonly\n */\n this.transactionReceipt = props.transactionReceipt;\n }\n}\n","import AccountId from \"../account/AccountId.js\";\nimport ContractId from \"../contract/ContractId.js\";\nimport FileId from \"../file/FileId.js\";\nimport TopicId from \"../topic/TopicId.js\";\nimport TokenId from \"../token/TokenId.js\";\nimport ScheduleId from \"../schedule/ScheduleId.js\";\nimport ExchangeRate from \"../ExchangeRate.js\";\nimport Status from \"../Status.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport TransactionId from \"../transaction/TransactionId.js\";\n\n/**\n * The consensus result for a transaction, which might not be currently known,\n * or may succeed or fail.\n */\nexport default class TransactionReceipt {\n /**\n * @private\n * @param {object} props\n * @param {Status} props.status\n * @param {?AccountId} props.accountId\n * @param {?FileId} props.fileId\n * @param {?ContractId} props.contractId\n * @param {?TopicId} props.topicId\n * @param {?TokenId} props.tokenId\n * @param {?ScheduleId} props.scheduleId\n * @param {?ExchangeRate} props.exchangeRate\n * @param {?Long} props.topicSequenceNumber\n * @param {?Uint8Array} props.topicRunningHash\n * @param {?Long} props.totalSupply\n * @param {?TransactionId} props.scheduledTransactionId\n * @param {Long[]} props.serials\n * @param {TransactionReceipt[]} props.duplicates\n * @param {TransactionReceipt[]} props.children\n */\n constructor(props) {\n /**\n * Whether the transaction succeeded or failed (or is unknown).\n *\n * @readonly\n */\n this.status = props.status;\n\n /**\n * The account ID, if a new account was created.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * The file ID, if a new file was created.\n *\n * @readonly\n */\n this.fileId = props.fileId;\n\n /**\n * The contract ID, if a new contract was created.\n *\n * @readonly\n */\n this.contractId = props.contractId;\n\n /**\n * The topic ID, if a new topic was created.\n *\n * @readonly\n */\n this.topicId = props.topicId;\n\n /**\n * The token ID, if a new token was created.\n *\n * @readonly\n */\n this.tokenId = props.tokenId;\n\n /**\n * The schedule ID, if a new schedule was created.\n *\n * @readonly\n */\n this.scheduleId = props.scheduleId;\n\n /**\n * The exchange rate of Hbars to cents (USD).\n *\n * @readonly\n */\n this.exchangeRate = props.exchangeRate;\n\n /**\n * Updated sequence number for a consensus service topic.\n *\n * @readonly\n */\n this.topicSequenceNumber = props.topicSequenceNumber;\n\n /**\n * Updated running hash for a consensus service topic.\n *\n * @readonly\n */\n this.topicRunningHash = props.topicRunningHash;\n\n /**\n * Updated total supply for a token\n *\n * @readonly\n */\n this.totalSupply = props.totalSupply;\n\n this.scheduledTransactionId = props.scheduledTransactionId;\n\n this.serials = props.serials;\n\n /**\n * @readonly\n */\n this.duplicates = props.duplicates;\n\n /**\n * @readonly\n */\n this.children = props.children;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @returns {proto.ITransactionGetReceiptResponse}\n */\n _toProtobuf() {\n const duplicates = this.duplicates.map(\n (receipt) =>\n /** @type {proto.ITransactionReceipt} */ (\n receipt._toProtobuf().receipt\n )\n );\n const children = this.children.map(\n (receipt) =>\n /** @type {proto.ITransactionReceipt} */ (\n receipt._toProtobuf().receipt\n )\n );\n\n return {\n duplicateTransactionReceipts: duplicates,\n childTransactionReceipts: children,\n receipt: {\n status: this.status.valueOf(),\n\n accountID:\n this.accountId != null\n ? this.accountId._toProtobuf()\n : null,\n fileID: this.fileId != null ? this.fileId._toProtobuf() : null,\n contractID:\n this.contractId != null\n ? this.contractId._toProtobuf()\n : null,\n topicID:\n this.topicId != null ? this.topicId._toProtobuf() : null,\n tokenID:\n this.topicId != null ? this.topicId._toProtobuf() : null,\n scheduleID:\n this.topicId != null ? this.topicId._toProtobuf() : null,\n\n topicRunningHash:\n this.topicRunningHash == null\n ? null\n : this.topicRunningHash,\n\n topicSequenceNumber: this.topicSequenceNumber,\n\n exchangeRate: {\n nextRate: null,\n currentRate:\n this.exchangeRate != null\n ? this.exchangeRate._toProtobuf()\n : null,\n },\n\n scheduledTransactionID:\n this.scheduledTransactionId != null\n ? this.scheduledTransactionId._toProtobuf()\n : null,\n\n serialNumbers: this.serials,\n },\n };\n }\n\n /**\n * @internal\n * @param {proto.ITransactionGetReceiptResponse} response\n * @returns {TransactionReceipt}\n */\n static _fromProtobuf(response) {\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n response.receipt\n );\n\n const exchangeRateSet = /** @type {proto.IExchangeRateSet} */ (\n receipt.exchangeRate\n );\n\n const children =\n response.childTransactionReceipts != null\n ? response.childTransactionReceipts.map((child) =>\n TransactionReceipt._fromProtobuf({ receipt: child })\n )\n : [];\n\n const duplicates =\n response.duplicateTransactionReceipts != null\n ? response.duplicateTransactionReceipts.map((duplicate) =>\n TransactionReceipt._fromProtobuf({ receipt: duplicate })\n )\n : [];\n\n return new TransactionReceipt({\n status: Status._fromCode(\n receipt.status != null ? receipt.status : 0\n ),\n\n accountId:\n receipt.accountID != null\n ? AccountId._fromProtobuf(receipt.accountID)\n : null,\n\n fileId:\n receipt.fileID != null\n ? FileId._fromProtobuf(receipt.fileID)\n : null,\n\n contractId:\n receipt.contractID != null\n ? ContractId._fromProtobuf(receipt.contractID)\n : null,\n\n topicId:\n receipt.topicID != null\n ? TopicId._fromProtobuf(receipt.topicID)\n : null,\n\n tokenId:\n receipt.tokenID != null\n ? TokenId._fromProtobuf(receipt.tokenID)\n : null,\n\n scheduleId:\n receipt.scheduleID != null\n ? ScheduleId._fromProtobuf(receipt.scheduleID)\n : null,\n\n exchangeRate:\n receipt.exchangeRate != null\n ? ExchangeRate._fromProtobuf(\n /** @type {proto.IExchangeRate} */\n (exchangeRateSet.currentRate)\n )\n : null,\n\n topicSequenceNumber:\n receipt.topicSequenceNumber == null\n ? null\n : Long.fromValue(receipt.topicSequenceNumber),\n\n topicRunningHash:\n receipt.topicRunningHash != null\n ? receipt.topicRunningHash\n : null,\n\n totalSupply:\n receipt.newTotalSupply != null ? receipt.newTotalSupply : null,\n\n scheduledTransactionId:\n receipt.scheduledTransactionID != null\n ? TransactionId._fromProtobuf(\n receipt.scheduledTransactionID\n )\n : null,\n serials: receipt.serialNumbers != null ? receipt.serialNumbers : [],\n children,\n duplicates,\n });\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TransactionReceipt}\n */\n static fromBytes(bytes) {\n return TransactionReceipt._fromProtobuf(\n proto.TransactionGetReceiptResponse.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TransactionGetReceiptResponse.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import ContractFunctionSelector, {\n ArgumentType,\n} from \"./ContractFunctionSelector.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport BigNumber from \"bignumber.js\";\nimport * as util from \"../util.js\";\n\nexport default class ContractFunctionParameters {\n constructor() {\n /**\n * @type {ContractFunctionSelector}\n */\n this._selector = new ContractFunctionSelector();\n\n /**\n * @type {import(\"./ContractFunctionSelector.js\").Argument[]}\n */\n this._arguments = [];\n }\n\n /**\n * @param {string} value\n * @returns {ContractFunctionParameters}\n */\n addString(value) {\n this._selector.addString();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {string[]} value\n * @returns {ContractFunctionParameters}\n */\n addStringArray(value) {\n this._selector.addStringArray();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {Uint8Array} value\n * @returns {ContractFunctionParameters}\n */\n addBytes(value) {\n this._selector.addBytes();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {Uint8Array} value\n * @returns {ContractFunctionParameters}\n */\n addBytes32(value) {\n if (value.length !== 32) {\n throw new Error(\n `addBytes32 expected array to be of length 32, but received ${value.length}`\n );\n }\n\n this._selector.addBytes32();\n return this._addParam(value, false);\n }\n\n /**\n * @param {Uint8Array[]} value\n * @returns {ContractFunctionParameters}\n */\n addBytesArray(value) {\n this._selector.addBytesArray();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {Uint8Array[]} value\n * @returns {ContractFunctionParameters}\n */\n addBytes32Array(value) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, entry] of value.entries()) {\n if (entry.length !== 32) {\n throw new Error(\n `addBytes32 expected array to be of length 32, but received ${entry.length}`\n );\n }\n }\n\n this._selector.addBytes32Array();\n\n return this._addParam(value, true);\n }\n\n /**\n * @param {boolean} value\n * @returns {ContractFunctionParameters}\n */\n addBool(value) {\n this._selector.addBool();\n\n return this._addParam(value, false);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addInt8(value) {\n this._selector.addInt8();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addInt32(value) {\n this._selector.addInt32();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber} value\n * @returns {ContractFunctionParameters}\n */\n addInt64(value) {\n this._selector.addInt64();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber} value\n * @returns {ContractFunctionParameters}\n */\n addInt256(value) {\n this._selector.addInt256();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt8Array(value) {\n this._selector.addInt8Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt32Array(value) {\n this._selector.addInt32Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt64Array(value) {\n this._selector.addInt64Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addInt256Array(value) {\n this._selector.addInt256Array();\n console.log(\"asdf\");\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addUint8(value) {\n this._selector.addUint8();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number} value\n * @returns {ContractFunctionParameters}\n */\n addUint32(value) {\n this._selector.addUint32();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber} value\n * @returns {ContractFunctionParameters}\n */\n addUint64(value) {\n this._selector.addUint64();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {BigNumber | number} value\n * @returns {ContractFunctionParameters}\n */\n addUint256(value) {\n this._selector.addUint256();\n\n return this._addParam(util.convertToBigNumber(value), false);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint8Array(value) {\n this._selector.addUint8Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {number[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint32Array(value) {\n this._selector.addUint32Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint64Array(value) {\n this._selector.addUint64Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {BigNumber[]} value\n * @returns {ContractFunctionParameters}\n */\n addUint256Array(value) {\n this._selector.addUint256Array();\n\n return this._addParam(util.convertToBigNumberArray(value), true);\n }\n\n /**\n * @param {string} value\n * @returns {ContractFunctionParameters}\n */\n addAddress(value) {\n // Allow `0x` prefix\n if (value.length !== 40 && value.length !== 42) {\n throw new Error(\n \"`address` type requires parameter to be 40 or 42 characters\"\n );\n }\n\n const par =\n value.length === 40\n ? hex.decode(value)\n : hex.decode(value.substring(2));\n\n this._selector.addAddress();\n\n return this._addParam(par, false);\n }\n\n /**\n * @param {string[]} value\n * @returns {ContractFunctionParameters}\n */\n addAddressArray(value) {\n /**\n * @type {Uint8Array[]}\n */\n const par = [];\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, entry] of value.entries()) {\n if (entry.length !== 40 && entry.length !== 42) {\n throw new Error(\n \"`address` type requires parameter to be 40 or 42 characters\"\n );\n }\n\n const buf =\n entry.length === 40\n ? hex.decode(entry)\n : hex.decode(entry.substring(2));\n\n par.push(buf);\n }\n\n this._selector.addAddressArray();\n\n return this._addParam(par, true);\n }\n\n /**\n * @param {string} address\n * @param {ContractFunctionSelector} selector\n * @returns {ContractFunctionParameters}\n */\n addFunction(address, selector) {\n const addressParam = hex.decode(address);\n const functionSelector = selector._build();\n\n if (addressParam.length !== 20) {\n throw new Error(\n \"`function` type requires parameter `address` to be exactly 20 bytes\"\n );\n }\n\n this._selector.addFunction();\n\n const proto = new Uint8Array(24);\n proto.set(addressParam, 0);\n proto.set(functionSelector, 20);\n\n return this._addParam(proto, false);\n }\n\n /**\n * @internal\n * @param {string | boolean | number | Uint8Array | BigNumber | string[] | boolean[] | number[] | Uint8Array[] | BigNumber[]} param\n * @param {boolean} dynamic\n * @returns {ContractFunctionParameters}\n */\n _addParam(param, dynamic) {\n const index = this._selector._paramTypes.length - 1;\n const value = argumentToBytes(param, this._selector._paramTypes[index]);\n\n this._arguments.push({ dynamic, value });\n\n return this;\n }\n\n /**\n * @internal\n * @param {string=} name\n * @returns {Uint8Array}\n */\n _build(name) {\n const includeId = name != null;\n const nameOffset = includeId ? 4 : 0;\n\n const length =\n this._arguments.length === 0\n ? nameOffset\n : this._arguments.length * 32 +\n this._arguments\n .map((arg) => (arg.dynamic ? arg.value.length : 0))\n .reduce((sum, value) => sum + value) +\n nameOffset;\n\n const func = new Uint8Array(length);\n\n if (includeId) {\n func.set(this._selector._build(name), 0);\n }\n\n let offset = 32 * this._arguments.length;\n\n for (const [i, { dynamic, value }] of this._arguments.entries()) {\n if (dynamic) {\n const view = util.safeView(func, nameOffset + i * 32 + 28);\n view.setUint32(0, offset);\n func.set(value, view.getUint32(0) + nameOffset);\n offset += value.length;\n } else {\n func.set(value, nameOffset + i * 32);\n }\n }\n\n return func;\n }\n}\n\n/**\n * @param {string | boolean | number | Uint8Array | BigNumber | string[] | boolean[] | number[] | Uint8Array[] | BigNumber[]} param\n * @param {import(\"./ContractFunctionSelector.js\").SolidityType} ty\n * @returns {Uint8Array}\n */\nfunction argumentToBytes(param, ty) {\n let value = new Uint8Array(32);\n let valueView = util.safeView(value);\n /** @type {Uint8Array} */\n let par;\n\n if (ty.array) {\n if (!Array.isArray(param)) {\n throw new TypeError(\n \"SolidityType indicates type is array, but parameter is not an array\"\n );\n }\n\n /**\n * @type {Uint8Array[]}\n */\n const values = [];\n\n // Generic over any type of array\n // Destructuring required so the first variable must be assigned\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, p] of param.entries()) {\n const arg = argumentToBytes(p, { ty: ty.ty, array: false });\n values.push(arg);\n }\n\n const totalLengthOfValues = values\n .map((a) => a.length)\n .reduce((total, current) => total + current);\n\n switch (ty.ty) {\n case ArgumentType.uint8:\n case ArgumentType.int8:\n case ArgumentType.uint16:\n case ArgumentType.int16:\n case ArgumentType.uint32:\n case ArgumentType.int32:\n case ArgumentType.uint64:\n case ArgumentType.int64:\n case ArgumentType.uint256:\n case ArgumentType.int256:\n case ArgumentType.bool:\n case ArgumentType.bytes32:\n case ArgumentType.address:\n case ArgumentType.func:\n value = new Uint8Array(totalLengthOfValues + 32);\n break;\n case ArgumentType.bytes:\n case ArgumentType.string:\n value = new Uint8Array(\n values.length * 32 + totalLengthOfValues + 32\n );\n break;\n default:\n throw new TypeError(\n `Expected param type to be ArgumentType, but received ${ty.ty}`\n );\n }\n\n valueView = util.safeView(value, 28);\n valueView.setUint32(0, values.length);\n\n let offset = 32 * values.length;\n\n for (const [i, e] of values.entries()) {\n switch (ty.ty) {\n case ArgumentType.uint8:\n case ArgumentType.int8:\n case ArgumentType.uint16:\n case ArgumentType.int16:\n case ArgumentType.uint32:\n case ArgumentType.int32:\n case ArgumentType.uint64:\n case ArgumentType.int64:\n case ArgumentType.uint256:\n case ArgumentType.int256:\n case ArgumentType.bool:\n case ArgumentType.bytes32:\n case ArgumentType.address:\n case ArgumentType.func:\n value.set(e, i * 32 + 32);\n break;\n case ArgumentType.bytes:\n case ArgumentType.string:\n // eslint-disable-next-line no-case-declarations\n const view = util.safeView(value, (i + 1) * 32 + 28);\n view.setUint32(0, offset);\n value.set(e, view.getUint32(0) + 32);\n offset += e.length;\n break;\n default:\n throw new TypeError(\n `Expected param type to be ArgumentType, but received ${ty.ty}`\n );\n }\n }\n\n return value;\n }\n\n switch (ty.ty) {\n case ArgumentType.uint8:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 31,\n valueView.setUint8.bind(valueView)\n );\n return value;\n case ArgumentType.int8:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 31,\n valueView.setInt8.bind(valueView)\n );\n return value;\n case ArgumentType.uint16:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 30,\n valueView.setUint16.bind(valueView)\n );\n return value;\n case ArgumentType.int16:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 30,\n valueView.setInt16.bind(valueView)\n );\n return value;\n case ArgumentType.uint32:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 28,\n valueView.setUint32.bind(valueView)\n );\n return value;\n case ArgumentType.int32:\n numberToBytes(\n /** @type {number | BigNumber } */ (param),\n 28,\n valueView.setInt32.bind(valueView)\n );\n return value;\n // int64, uint64, and int256 both expect the parameter to be an Uint8Array instead of number\n case ArgumentType.uint64:\n case ArgumentType.int64:\n if (BigNumber.isBigNumber(param)) {\n // eslint-disable-next-line no-case-declarations\n let par = param.toString(16);\n if (par.length > 16) {\n throw new TypeError(\n \"uint64/int64 requires BigNumber to be less than or equal to 8 bytes\"\n );\n } else if (!param.isInteger()) {\n throw new TypeError(\n \"uint64/int64 requires BigNumber to be an integer\"\n );\n }\n\n if (par.length % 2 === 1) {\n par = `0${par}`;\n }\n\n // eslint-disable-next-line no-case-declarations\n const buf = hex.decode(par);\n value.set(buf, 32 - buf.length);\n }\n return value;\n case ArgumentType.int256:\n case ArgumentType.uint256:\n if (BigNumber.isBigNumber(param)) {\n let par = param.toString(16);\n if (par.length % 2 === 1) {\n par = `0${par}`;\n }\n\n const buf = hex.decode(par);\n value.set(buf, 32 - buf.length);\n }\n return value;\n case ArgumentType.address:\n value.set(/** @type {Uint8Array} */ (param), 32 - 20);\n return value;\n case ArgumentType.bool:\n value[31] = /** @type {boolean} */ (param) ? 1 : 0;\n return value;\n case ArgumentType.func:\n value.set(/** @type {Uint8Array} */ (param), 32 - 24);\n return value;\n case ArgumentType.bytes32:\n value.set(/** @type {Uint8Array} */ (param), 0);\n return value;\n // Bytes should have not the length already encoded\n // JS String type is encoded as UTF-16 whilst Solidity `string` type is UTF-8 encoded.\n // So if will assume is already correctly updated to being a Uint8Array of UTF-8 string\n case ArgumentType.bytes:\n case ArgumentType.string:\n // If value is of type string, encode it in UTF-8 format and conver it to Uint8Array\n // Required because JS Strings are UTF-16\n // eslint-disable-next-line no-case-declarations\n par =\n param instanceof Uint8Array\n ? param\n : utf8.encode(/** @type {string} */ (param));\n\n // Resize value to a 32 byte boundary if needed\n if (\n Math.floor(par.length / 32) >= 0 &&\n Math.floor(par.length % 32) !== 0\n ) {\n value = new Uint8Array(\n (Math.floor(par.length / 32) + 1) * 32 + 32\n );\n } else {\n value = new Uint8Array(64);\n }\n\n value.set(par, 32);\n\n valueView = util.safeView(value, 28);\n valueView.setUint32(0, par.length);\n return value;\n default:\n throw new Error(`Unsupported argument type: ${ty.toString()}`);\n }\n}\n\n/**\n * @param {number | BigNumber} param\n * @param {number} byteoffset\n * @param {(byteOffset: number, value: number) => void} func\n * @returns {void}\n */\nfunction numberToBytes(param, byteoffset, func) {\n const value = BigNumber.isBigNumber(param) ? param.toNumber() : param;\n\n func(byteoffset, value);\n}\n","import AccountId from \"../account/AccountId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n */\n\nexport default class CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n */\n constructor(props = {}) {\n /**\n * @type {?AccountId}\n */\n this._feeCollectorAccountId;\n\n if (props.feeCollectorAccountId != null) {\n this.setFeeCollectorAccountId(props.feeCollectorAccountId);\n }\n }\n\n /**\n * @returns {?AccountId}\n */\n get feeCollectorAccountId() {\n return this._feeCollectorAccountId;\n }\n\n /**\n * @param {AccountId | string} feeCollectorAccountId\n * @returns {this}\n */\n setFeeCollectorAccountId(feeCollectorAccountId) {\n this._feeCollectorAccountId =\n typeof feeCollectorAccountId === \"string\"\n ? AccountId.fromString(feeCollectorAccountId)\n : feeCollectorAccountId;\n return this;\n }\n\n /**\n * @internal\n * @abstract\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n throw new Error(\"not implemented\");\n }\n}\n","import CustomFee from \"./CustomFee.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\nimport CustomFixedFee from \"./CustomFixedFee.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IFraction} proto.IFraction\n * @typedef {import(\"@hashgraph/proto\").IRoyaltyFee} proto.IRoyaltyFee\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n * @typedef {import(\"@hashgraph/proto\").IFixedFee} proto.IFixedFee\n */\n\nexport default class CustomRoyalyFee extends CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {Long | number} [props.numerator]\n * @param {Long | number} [props.denominator]\n * @param {CustomFixedFee} [props.fallbackFee]\n */\n constructor(props = {}) {\n super(props);\n\n /**\n * @type {?CustomFixedFee}\n */\n this._fallbackFee;\n\n if (props.fallbackFee != null) {\n this.setFallbackFee(props.fallbackFee);\n }\n\n /**\n * @type {?Long}\n */\n this._numerator;\n\n if (props.numerator != null) {\n this.setNumerator(props.numerator);\n }\n\n /**\n * @type {?Long}\n */\n this._denominator;\n\n if (props.denominator != null) {\n this.setDenominator(props.denominator);\n }\n }\n\n /**\n * @returns {?CustomFixedFee}\n */\n get fallbackFee() {\n return this._fallbackFee;\n }\n\n /**\n * @param {CustomFixedFee} fallbackFee\n * @returns {CustomRoyalyFee}\n */\n setFallbackFee(fallbackFee) {\n this._fallbackFee = fallbackFee;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get numerator() {\n return this._numerator;\n }\n\n /**\n * @param {Long | number} numerator\n * @returns {CustomRoyalyFee}\n */\n setNumerator(numerator) {\n this._numerator =\n typeof numerator === \"number\"\n ? Long.fromNumber(numerator)\n : numerator;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get denominator() {\n return this._denominator;\n }\n\n /**\n * @param {Long | number} denominator\n * @returns {CustomRoyalyFee}\n */\n setDenominator(denominator) {\n this._denominator =\n typeof denominator === \"number\"\n ? Long.fromNumber(denominator)\n : denominator;\n return this;\n }\n\n /**\n * @internal\n * @override\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n const fee = /** @type {proto.IRoyaltyFee} */ (info.royaltyFee);\n const fraction = /** @type {proto.IFraction} */ (\n fee.exchangeValueFraction\n );\n\n return new CustomRoyalyFee({\n feeCollectorAccountId:\n info.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(info.feeCollectorAccountId)\n : undefined,\n fallbackFee:\n fee.fallbackFee != null\n ? /** @type {CustomFixedFee} */ (\n CustomFixedFee._fromProtobuf({\n fixedFee: fee.fallbackFee,\n })\n )\n : undefined,\n numerator:\n fraction.numerator != null ? fraction.numerator : undefined,\n denominator:\n fraction.denominator != null ? fraction.denominator : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n royaltyFee: {\n exchangeValueFraction: {\n numerator: this._numerator,\n denominator: this._denominator,\n },\n fallbackFee:\n this._fallbackFee != null\n ? this._fallbackFee._toProtobuf().fixedFee\n : null,\n },\n };\n }\n}\n","import CustomFee from \"./CustomFee.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\n\n/**\n * @typedef {import(\"./FeeAssessmentMethod.js\").default} FeeAssessmentMethod\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ICustomFee} proto.ICustomFee\n * @typedef {import(\"@hashgraph/proto\").IFractionalFee} proto.IFractionalFee\n * @typedef {import(\"@hashgraph/proto\").IFraction} proto.IFraction\n */\n\nexport default class CustomFractionalFee extends CustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {Long | number} [props.numerator]\n * @param {Long | number} [props.denominator]\n * @param {Long | number} [props.min]\n * @param {Long | number} [props.max]\n * @param {FeeAssessmentMethod} [props.assessmentMethod]\n */\n constructor(props = {}) {\n super(props);\n\n /**\n * @type {?Long}\n */\n this._numerator;\n\n if (props.numerator != null) {\n this.setNumerator(props.numerator);\n }\n\n /**\n * @type {?Long}\n */\n this._denominator;\n\n if (props.denominator != null) {\n this.setDenominator(props.denominator);\n }\n\n /**\n * @type {?Long}\n */\n this._min;\n\n if (props.min != null) {\n this.setMin(props.min);\n }\n\n /**\n * @type {?Long}\n */\n this._max;\n\n if (props.max != null) {\n this.setMax(props.max);\n }\n\n /**\n * @type {?FeeAssessmentMethod}\n */\n this._assessmentMethod;\n\n if (props.assessmentMethod != null) {\n this.setAssessmentMethod(props.assessmentMethod);\n }\n }\n\n /**\n * @returns {?Long}\n */\n get numerator() {\n return this._numerator;\n }\n\n /**\n * @param {Long | number} numerator\n * @returns {CustomFractionalFee}\n */\n setNumerator(numerator) {\n this._numerator =\n typeof numerator === \"number\"\n ? Long.fromNumber(numerator)\n : numerator;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get denominator() {\n return this._denominator;\n }\n\n /**\n * @param {Long | number} denominator\n * @returns {CustomFractionalFee}\n */\n setDenominator(denominator) {\n this._denominator =\n typeof denominator === \"number\"\n ? Long.fromNumber(denominator)\n : denominator;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get min() {\n return this._min;\n }\n\n /**\n * @param {Long | number} min\n * @returns {CustomFractionalFee}\n */\n setMin(min) {\n this._min = typeof min === \"number\" ? Long.fromNumber(min) : min;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get max() {\n return this._max;\n }\n\n /**\n * @param {Long | number} max\n * @returns {CustomFractionalFee}\n */\n setMax(max) {\n this._max = typeof max === \"number\" ? Long.fromNumber(max) : max;\n return this;\n }\n\n /**\n * @returns {?FeeAssessmentMethod}\n */\n get assessmentMethod() {\n return this._assessmentMethod;\n }\n\n /**\n * @param {FeeAssessmentMethod} assessmentMethod\n * @returns {CustomFractionalFee}\n */\n setAssessmentMethod(assessmentMethod) {\n this._assessmentMethod = assessmentMethod;\n return this;\n }\n\n /**\n * @internal\n * @override\n * @param {proto.ICustomFee} info\n * @returns {CustomFee}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(info) {\n const fee = /** @type {proto.IFractionalFee} */ (info.fractionalFee);\n const fractional = /** @type {proto.IFraction} */ (\n fee.fractionalAmount\n );\n\n return new CustomFractionalFee({\n feeCollectorAccountId:\n info.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(info.feeCollectorAccountId)\n : undefined,\n numerator:\n fractional.numerator != null ? fractional.numerator : undefined,\n denominator:\n fractional.denominator != null\n ? fractional.denominator\n : undefined,\n min: fee.minimumAmount != null ? fee.minimumAmount : undefined,\n max: fee.maximumAmount != null ? fee.maximumAmount : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ICustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n fractionalFee: {\n fractionalAmount: {\n numerator: this._numerator,\n denominator: this._denominator,\n },\n minimumAmount: this._min,\n maximumAmount: this._max,\n },\n };\n }\n}\n","import * as proto from \"@hashgraph/proto\";\nimport TokenId from \"../token/TokenId.js\";\nimport Long from \"long\";\n\n/**\n * The ID for a crypto-currency token on Hedera.\n *\n * @augments {EntityId}\n */\nexport default class NftId {\n /**\n * @param {TokenId} token\n * @param {number | Long} serial\n */\n constructor(token, serial) {\n this.tokenId = token;\n this.serial =\n typeof serial === \"number\" ? Long.fromNumber(serial) : serial;\n\n Object.freeze(this);\n }\n\n /**\n * @param {string} text\n * @returns {NftId}\n */\n static fromString(text) {\n const strings =\n text.split(\"/\").length > 1 ? text.split(\"/\") : text.split(\"@\");\n\n for (const string of strings) {\n if (string === \"\") {\n throw new Error(\n \"invalid format for NftId: use [token]/[serial] or [token]@[serial]\"\n );\n }\n }\n\n const token = TokenId.fromString(strings[0]);\n const serial = Long.fromString(strings[1]);\n\n return new NftId(token, serial);\n }\n\n /**\n * @internal\n * @param {proto.INftID} id\n * @returns {NftId}\n */\n static _fromProtobuf(id) {\n return new NftId(\n TokenId._fromProtobuf(/** @type {proto.ITokenID} */ (id.tokenID)),\n id.serialNumber != null ? id.serialNumber : Long.ZERO\n );\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {NftId}\n */\n static fromBytes(bytes) {\n return NftId._fromProtobuf(proto.NftID.decode(bytes));\n }\n\n /**\n * @internal\n * @returns {proto.INftID}\n */\n _toProtobuf() {\n return {\n tokenID: this.tokenId._toProtobuf(),\n serialNumber: Long.fromValue(\n this.serial !== undefined ? this.serial : 0\n ),\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this.serial.toString()}@${this.tokenId.toString()}`;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.NftID.encode(this._toProtobuf()).finish();\n }\n}\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\n\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","import BadKeyError from \"./BadKeyError.js\";\nimport Ed25519PublicKey from \"./Ed25519PublicKey.js\";\nimport nacl from \"tweetnacl\";\nimport { arrayStartsWith } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\nimport * as random from \"./primitive/random.js\";\n\nexport const derPrefix = \"302e020100300506032b657004220420\";\nexport const derPrefixBytes = hex.decode(derPrefix);\n\nexport default class Ed25519PrivateKey {\n /**\n * @hideconstructor\n * @internal\n * @param {nacl.SignKeyPair | Uint8Array} keyPair\n * @param {Uint8Array=} chainCode\n */\n constructor(keyPair, chainCode) {\n /**\n * @type {nacl.SignKeyPair}\n * @readonly\n * @private\n */\n this._keyPair =\n keyPair instanceof Uint8Array\n ? nacl.sign.keyPair.fromSeed(keyPair)\n : keyPair;\n\n /**\n * @type {?Uint8Array}\n * @readonly\n */\n this._chainCode = chainCode != null ? chainCode : null;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"ED25519\";\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Ed25519PrivateKey}\n */\n static generate() {\n // 32 bytes for the secret key\n // 32 bytes for the chain code (to support derivation)\n const entropy = random.bytes(64);\n\n return new Ed25519PrivateKey(\n nacl.sign.keyPair.fromSeed(entropy.subarray(0, 32)),\n entropy.subarray(32)\n );\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateAsync() {\n // 32 bytes for the secret key\n // 32 bytes for the chain code (to support derivation)\n const entropy = await random.bytesAsync(64);\n\n return new Ed25519PrivateKey(\n nacl.sign.keyPair.fromSeed(entropy.subarray(0, 32)),\n entropy.subarray(32)\n );\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {Ed25519PrivateKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 48:\n return Ed25519PrivateKey.fromBytesDer(data);\n case 32:\n case 64:\n return Ed25519PrivateKey.fromBytesRaw(data);\n default:\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * Construct a private key from bytes with DER header.\n *\n * @param {Uint8Array} data\n * @returns {Ed25519PrivateKey}\n */\n static fromBytesDer(data) {\n if (data.length != 48 || !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n\n const keyPair = nacl.sign.keyPair.fromSeed(data.subarray(16));\n\n return new Ed25519PrivateKey(keyPair);\n }\n\n /**\n * Construct a private key from bytes without DER header.\n *\n * @param {Uint8Array} data\n * @returns {Ed25519PrivateKey}\n */\n static fromBytesRaw(data) {\n switch (data.length) {\n case 32:\n return new Ed25519PrivateKey(nacl.sign.keyPair.fromSeed(data));\n\n case 64:\n // priv + pub key\n return new Ed25519PrivateKey(\n nacl.sign.keyPair.fromSecretKey(data)\n );\n\n default:\n }\n\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {Ed25519PrivateKey}\n */\n static fromString(text) {\n return Ed25519PrivateKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {Ed25519PrivateKey}\n */\n static fromStringDer(text) {\n return Ed25519PrivateKey.fromBytesDer(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {Ed25519PrivateKey}\n */\n static fromStringRaw(text) {\n return Ed25519PrivateKey.fromBytesRaw(hex.decode(text));\n }\n\n /**\n * Get the public key associated with this private key.\n *\n * The public key can be freely given and used by other parties to verify\n * the signatures generated by this private key.\n *\n * @returns {Ed25519PublicKey}\n */\n get publicKey() {\n return new Ed25519PublicKey(this._keyPair.publicKey);\n }\n\n /**\n * Sign a message with this private key.\n *\n * @param {Uint8Array} bytes\n * @returns {Uint8Array} - The signature bytes without the message\n */\n sign(bytes) {\n return nacl.sign.detached(bytes, this._keyPair.secretKey);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(derPrefixBytes.length + 32);\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(\n this._keyPair.secretKey.subarray(0, 32),\n derPrefixBytes.length\n );\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n // copy the bytes so they can't be modified accidentally\n return this._keyPair.secretKey.slice(0, 32);\n }\n}\n","import nacl from \"tweetnacl\";\n\n/**\n * @param {number} count\n * @returns {Uint8Array}\n */\nexport function bytes(count) {\n return nacl.randomBytes(count);\n}\n\n/**\n * @param {number} count\n * @returns {Promise}\n */\nexport function bytesAsync(count) {\n return Promise.resolve(nacl.randomBytes(count));\n}\n","/**\n * Possible statuses for {@link Mnemonic#validate()}.\n *\n * @readonly\n * @enum {string}\n */\nconst BadMnemonicReason = Object.freeze({\n /**\n * The mnemonic did not have a supported number of words (12 or 24 for regular and 22 for legacy).\n */\n BadLength: \"BadLength\",\n\n /**\n * The mnemonic contained words which were not found in the word list.\n */\n UnknownWords: \"UnknownWords\",\n\n /**\n * The checksum encoded in the mnemonic did not match the checksum we just calculated for\n * that mnemonic.\n *\n * 24-word mnemonics have an 8-bit checksum that is appended to the 32 bytes of source entropy\n * after being calculated from it, before being encoded into words.\n *\n * This could happen if two or more of the words were entered out of the original order or\n * replaced with another from the standard word list (as this is only returned if all the words\n * exist in the word list).\n */\n ChecksumMismatch: \"ChecksumMismatch\",\n});\n\nexport default BadMnemonicReason;\n","/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function decode(data) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextDecoder().decode(data);\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function encode(text) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextEncoder().encode(text);\n}\n","var r;\n\nmodule.exports = function rand(len) {\n if (!r)\n r = new Rand(null);\n\n return r.generate(len);\n};\n\nfunction Rand(rand) {\n this.rand = rand;\n}\nmodule.exports.Rand = Rand;\n\nRand.prototype.generate = function generate(len) {\n return this._rand(len);\n};\n\n// Emulate crypto API using randy\nRand.prototype._rand = function _rand(n) {\n if (this.rand.getBytes)\n return this.rand.getBytes(n);\n\n var res = new Uint8Array(n);\n for (var i = 0; i < res.length; i++)\n res[i] = this.rand.getByte();\n return res;\n};\n\nif (typeof self === 'object') {\n if (self.crypto && self.crypto.getRandomValues) {\n // Modern browsers\n Rand.prototype._rand = function _rand(n) {\n var arr = new Uint8Array(n);\n self.crypto.getRandomValues(arr);\n return arr;\n };\n } else if (self.msCrypto && self.msCrypto.getRandomValues) {\n // IE\n Rand.prototype._rand = function _rand(n) {\n var arr = new Uint8Array(n);\n self.msCrypto.getRandomValues(arr);\n return arr;\n };\n\n // Safari's WebWorkers do not have `crypto`\n } else if (typeof window === 'object') {\n // Old junk\n Rand.prototype._rand = function() {\n throw new Error('Not implemented yet');\n };\n }\n} else {\n // Node.js or Web worker with no crypto support\n try {\n var crypto = require('crypto');\n if (typeof crypto.randomBytes !== 'function')\n throw new Error('Not supported');\n\n Rand.prototype._rand = function _rand(n) {\n return crypto.randomBytes(n);\n };\n } catch (e) {\n }\n}\n","'use strict';\n\nvar curves = exports;\n\nvar hash = require('hash.js');\nvar curve = require('./curve');\nvar utils = require('./utils');\n\nvar assert = utils.assert;\n\nfunction PresetCurve(options) {\n if (options.type === 'short')\n this.curve = new curve.short(options);\n else if (options.type === 'edwards')\n this.curve = new curve.edwards(options);\n else\n this.curve = new curve.mont(options);\n this.g = this.curve.g;\n this.n = this.curve.n;\n this.hash = options.hash;\n\n assert(this.g.validate(), 'Invalid curve');\n assert(this.g.mul(this.n).isInfinity(), 'Invalid curve, G*N != O');\n}\ncurves.PresetCurve = PresetCurve;\n\nfunction defineCurve(name, options) {\n Object.defineProperty(curves, name, {\n configurable: true,\n enumerable: true,\n get: function() {\n var curve = new PresetCurve(options);\n Object.defineProperty(curves, name, {\n configurable: true,\n enumerable: true,\n value: curve,\n });\n return curve;\n },\n });\n}\n\ndefineCurve('p192', {\n type: 'short',\n prime: 'p192',\n p: 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff',\n a: 'ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc',\n b: '64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1',\n n: 'ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831',\n hash: hash.sha256,\n gRed: false,\n g: [\n '188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012',\n '07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811',\n ],\n});\n\ndefineCurve('p224', {\n type: 'short',\n prime: 'p224',\n p: 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001',\n a: 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe',\n b: 'b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4',\n n: 'ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d',\n hash: hash.sha256,\n gRed: false,\n g: [\n 'b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21',\n 'bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34',\n ],\n});\n\ndefineCurve('p256', {\n type: 'short',\n prime: null,\n p: 'ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff',\n a: 'ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc',\n b: '5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b',\n n: 'ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551',\n hash: hash.sha256,\n gRed: false,\n g: [\n '6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296',\n '4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5',\n ],\n});\n\ndefineCurve('p384', {\n type: 'short',\n prime: null,\n p: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'fffffffe ffffffff 00000000 00000000 ffffffff',\n a: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'fffffffe ffffffff 00000000 00000000 fffffffc',\n b: 'b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f ' +\n '5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef',\n n: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 ' +\n 'f4372ddf 581a0db2 48b0a77a ecec196a ccc52973',\n hash: hash.sha384,\n gRed: false,\n g: [\n 'aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 ' +\n '5502f25d bf55296c 3a545e38 72760ab7',\n '3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 ' +\n '0a60b1ce 1d7e819d 7a431d7c 90ea0e5f',\n ],\n});\n\ndefineCurve('p521', {\n type: 'short',\n prime: null,\n p: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff',\n a: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff fffffffc',\n b: '00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b ' +\n '99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd ' +\n '3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00',\n n: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 ' +\n 'f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409',\n hash: hash.sha512,\n gRed: false,\n g: [\n '000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 ' +\n '053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 ' +\n 'a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66',\n '00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 ' +\n '579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 ' +\n '3fad0761 353c7086 a272c240 88be9476 9fd16650',\n ],\n});\n\ndefineCurve('curve25519', {\n type: 'mont',\n prime: 'p25519',\n p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed',\n a: '76d06',\n b: '1',\n n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed',\n hash: hash.sha256,\n gRed: false,\n g: [\n '9',\n ],\n});\n\ndefineCurve('ed25519', {\n type: 'edwards',\n prime: 'p25519',\n p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed',\n a: '-1',\n c: '1',\n // -121665 * (121666^(-1)) (mod P)\n d: '52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3',\n n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed',\n hash: hash.sha256,\n gRed: false,\n g: [\n '216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a',\n\n // 4/5\n '6666666666666666666666666666666666666666666666666666666666666658',\n ],\n});\n\nvar pre;\ntry {\n pre = require('./precomputed/secp256k1');\n} catch (e) {\n pre = undefined;\n}\n\ndefineCurve('secp256k1', {\n type: 'short',\n prime: 'k256',\n p: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f',\n a: '0',\n b: '7',\n n: 'ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141',\n h: '1',\n hash: hash.sha256,\n\n // Precomputed endomorphism\n beta: '7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee',\n lambda: '5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72',\n basis: [\n {\n a: '3086d221a7d46bcde86c90e49284eb15',\n b: '-e4437ed6010e88286f547fa90abfe4c3',\n },\n {\n a: '114ca50f7a8e2f3f657c1108d9d44cfd8',\n b: '3086d221a7d46bcde86c90e49284eb15',\n },\n ],\n\n gRed: false,\n g: [\n '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798',\n '483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8',\n pre,\n ],\n});\n","/**\n * @typedef {import(\"./Status.js\").default} Status\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class StatusError extends Error {\n /**\n * @param {object} props\n * @param {Status} props.status\n * @param {TransactionId} props.transactionId\n * @param {string} message\n */\n constructor(props, message) {\n super(message);\n\n this.name = \"StatusError\";\n\n this.status = props.status;\n\n this.transactionId = props.transactionId;\n\n this.message = message;\n\n if (typeof Error.captureStackTrace !== \"undefined\") {\n Error.captureStackTrace(this, StatusError);\n }\n }\n}\n","/**\n * @template {any} T\n */\nexport default class List {\n constructor() {\n /** @type {T[]} */\n this.list = [];\n this.locked = false;\n this.index = 0;\n }\n\n /**\n * @param {T[]} list\n * @returns {this}\n */\n setList(list) {\n if (this.locked) {\n throw new Error(\"list is locked\");\n }\n\n this.list = list;\n this.index = 0;\n\n return this;\n }\n\n /**\n * @param {T[]} items\n * @returns {this}\n */\n push(...items) {\n if (this.locked) {\n throw new Error(\"list is locked\");\n }\n\n this.list.push(...items);\n return this;\n }\n\n /**\n * @returns {this}\n */\n setLocked() {\n this.locked = true;\n return this;\n }\n\n clear() {\n if (this.locked) {\n throw new Error(\"list is locked\");\n }\n\n this.list = [];\n }\n\n /**\n * @param {number} index\n * @returns {T}\n */\n get(index) {\n return this.list[index];\n }\n\n /**\n * @param {number} index\n * @param {T} item\n * @returns {this}\n */\n set(index, item) {\n if (this.locked) {\n throw new Error(\"list is locked\");\n }\n\n if (index == this.length) {\n this.list.push(item);\n } else {\n this.list[index] = item;\n }\n\n return this;\n }\n\n /**\n * @param {number} index\n * @param {() => T} lambda\n * @returns {this}\n */\n setIfAbsent(index, lambda) {\n if (index == this.length || this.list[index] == null) {\n this.set(index, lambda());\n }\n\n return this;\n }\n\n /**\n * @returns {T}\n */\n get next() {\n return this.get(this.advance());\n }\n\n /**\n * @returns {T}\n */\n get current() {\n let index = this.index - 1;\n if (index < 0) {\n index = this.length - 1;\n }\n\n return this.get(index);\n }\n\n /**\n * @returns {number}\n */\n advance() {\n const index = this.index;\n this.index = (this.index + 1) % this.list.length;\n return index;\n }\n\n /**\n * @returns {boolean}\n */\n get isEmpty() {\n return this.length === 0;\n }\n\n /**\n * @returns {number}\n */\n get length() {\n return this.list.length;\n }\n}\n","import TransactionReceipt from \"./TransactionReceipt.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Hbar from \"../Hbar.js\";\nimport Transfer from \"../Transfer.js\";\nimport ContractFunctionResult from \"../contract/ContractFunctionResult.js\";\nimport TokenTransferMap from \"../account/TokenTransferMap.js\";\nimport TokenNftTransferMap from \"../account/TokenNftTransferMap.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport ScheduleId from \"../schedule/ScheduleId.js\";\nimport AssessedCustomFee from \"../token/AssessedCustomFee.js\";\nimport TokenAssocation from \"../token/TokenAssociation.js\";\nimport Key from \"../Key.js\";\nimport PublicKey from \"../PublicKey.js\";\nimport TokenTransfer from \"../token/TokenTransfer.js\";\n\n/**\n * @typedef {import(\"../token/TokenId.js\").default} TokenId\n */\n\n/**\n * Response when the client sends the node TransactionGetRecordResponse.\n */\nexport default class TransactionRecord {\n /**\n * @private\n * @param {object} props\n * @param {ContractFunctionResult} [props.contractFunctionResult]\n * @param {TransactionReceipt} props.receipt\n * @param {Uint8Array} props.transactionHash\n * @param {Timestamp} props.consensusTimestamp\n * @param {TransactionId} props.transactionId\n * @param {string} props.transactionMemo\n * @param {Hbar} props.transactionFee\n * @param {Transfer[]} props.transfers\n * @param {TokenTransferMap} props.tokenTransfers\n * @param {TokenTransfer[]} props.tokenTransfersList\n * @param {?ScheduleId} props.scheduleRef\n * @param {AssessedCustomFee[]} props.assessedCustomFees\n * @param {TokenNftTransferMap} props.nftTransfers\n * @param {TokenAssocation[]} props.automaticTokenAssociations\n * @param {Timestamp | null} props.parentConsensusTimestamp\n * @param {PublicKey | null} props.aliasKey\n * @param {TransactionRecord[]} props.duplicates\n * @param {TransactionRecord[]} props.children\n */\n constructor(props) {\n /**\n * The status (reach consensus, or failed, or is unknown) and the ID of\n * any new account/file/instance created.\n *\n * @readonly\n */\n this.receipt = props.receipt;\n\n /**\n * The hash of the Transaction that executed (not the hash of any Transaction that failed\n * for having a duplicate TransactionID).\n *\n * @readonly\n */\n this.transactionHash = props.transactionHash;\n\n /**\n * The consensus timestamp (or null if didn't reach consensus yet).\n *\n * @readonly\n */\n this.consensusTimestamp = props.consensusTimestamp;\n\n /**\n * The ID of the transaction this record represents.\n *\n * @readonly\n */\n this.transactionId = props.transactionId;\n\n /**\n * The memo that was submitted as part of the transaction (max 100 bytes).\n *\n * @readonly\n */\n this.transactionMemo = props.transactionMemo;\n\n /**\n * The actual transaction fee charged,\n * not the original transactionFee value from TransactionBody.\n *\n * @readonly\n */\n this.transactionFee = props.transactionFee;\n\n /**\n * All hbar transfers as a result of this transaction, such as fees, or transfers performed\n * by the transaction, or by a smart contract it calls, or by the creation of threshold\n * records that it triggers.\n *\n * @readonly\n */\n this.transfers = props.transfers;\n\n /**\n * Record of the value returned by the smart contract function or constructor.\n *\n * @readonly\n */\n this.contractFunctionResult =\n props.contractFunctionResult != null\n ? props.contractFunctionResult\n : null;\n\n /**\n * All the token transfers from this account\n *\n * @readonly\n */\n this.tokenTransfers = props.tokenTransfers;\n\n /**\n * All the token transfers from this account\n *\n * @readonly\n */\n this.tokenTransfersList = props.tokenTransfersList;\n\n /**\n * Reference to the scheduled transaction ID that this transaction record represent\n *\n * @readonly\n */\n this.scheduleRef = props.scheduleRef;\n\n /**\n * All custom fees that were assessed during a CryptoTransfer, and must be paid if the\n * transaction status resolved to SUCCESS\n *\n * @readonly\n */\n this.assessedCustomFees = props.assessedCustomFees;\n\n /** @readonly */\n this.nftTransfers = props.nftTransfers;\n\n /**\n * All token associations implicitly created while handling this transaction\n *\n * @readonly\n */\n this.automaticTokenAssociations = props.automaticTokenAssociations;\n\n /**\n * The parent consensus timestamp\n *\n * @readonly\n */\n this.parentConsensusTimestamp = props.parentConsensusTimestamp;\n\n this.aliasKey = props.aliasKey;\n\n /**\n * @readonly\n */\n this.duplicates = props.duplicates;\n\n /**\n * @readonly\n */\n this.children = props.children;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @returns {proto.ITransactionGetRecordResponse}\n */\n _toProtobuf() {\n const tokenTransfers = this.tokenTransfers._toProtobuf();\n const nftTransfers = this.nftTransfers._toProtobuf();\n\n const tokenTransferLists = [];\n\n for (const tokenTransfer of tokenTransfers) {\n for (const nftTransfer of nftTransfers) {\n if (\n tokenTransfer.token != null &&\n nftTransfer.token != null &&\n tokenTransfer.token.shardNum ===\n nftTransfer.token.shardNum &&\n tokenTransfer.token.realmNum ===\n nftTransfer.token.realmNum &&\n tokenTransfer.token.tokenNum === nftTransfer.token.tokenNum\n ) {\n tokenTransferLists.push({\n token: tokenTransfer.token,\n transfers: tokenTransfer.transfers,\n nftTransfers: tokenTransfer.nftTransfers,\n });\n } else {\n tokenTransferLists.push(tokenTransfer);\n tokenTransferLists.push(nftTransfer);\n }\n }\n }\n\n const duplicates = this.duplicates.map(\n (record) =>\n /** @type {proto.ITransactionRecord} */ (\n record._toProtobuf().transactionRecord\n )\n );\n const children = this.children.map(\n (record) =>\n /** @type {proto.ITransactionRecord} */ (\n record._toProtobuf().transactionRecord\n )\n );\n\n return {\n duplicateTransactionRecords: duplicates,\n childTransactionRecords: children,\n transactionRecord: {\n receipt: this.receipt._toProtobuf().receipt,\n\n transactionHash:\n this.transactionHash != null ? this.transactionHash : null,\n consensusTimestamp:\n this.consensusTimestamp != null\n ? this.consensusTimestamp._toProtobuf()\n : null,\n transactionID:\n this.transactionId != null\n ? this.transactionId._toProtobuf()\n : null,\n memo:\n this.transactionMemo != null ? this.transactionMemo : null,\n\n transactionFee:\n this.transactionFee != null\n ? this.transactionFee.toTinybars()\n : null,\n\n // TODO: Implement `ContractFunctionResult._toProtobuf()`\n // contractCallResult:\n // this.contractFunctionResult != null\n // ? this.contractFunctionResult\n // : null,\n //\n // contractCreateResult:\n // this.contractFunctionResult != null\n // ? this.contractFunctionResult\n // : null,\n\n transferList:\n this.transfers != null\n ? {\n accountAmounts: this.transfers.map((transfer) =>\n transfer._toProtobuf()\n ),\n }\n : null,\n tokenTransferLists,\n scheduleRef:\n this.scheduleRef != null\n ? this.scheduleRef._toProtobuf()\n : null,\n assessedCustomFees: this.assessedCustomFees.map((fee) =>\n fee._toProtobuf()\n ),\n automaticTokenAssociations: this.automaticTokenAssociations.map(\n (association) => association._toProtobuf()\n ),\n parentConsensusTimestamp:\n this.parentConsensusTimestamp != null\n ? this.parentConsensusTimestamp._toProtobuf()\n : null,\n alias:\n this.aliasKey != null\n ? proto.Key.encode(\n this.aliasKey._toProtobufKey()\n ).finish()\n : null,\n },\n };\n }\n\n /**\n * @internal\n * @param {proto.ITransactionGetRecordResponse} response\n * @returns {TransactionRecord}\n */\n static _fromProtobuf(response) {\n const record = /** @type {proto.ITransactionRecord} */ (\n response.transactionRecord\n );\n\n let aliasKey =\n record.alias != null && record.alias.length > 0\n ? Key._fromProtobufKey(proto.Key.decode(record.alias))\n : null;\n\n if (!(aliasKey instanceof PublicKey)) {\n aliasKey = null;\n }\n\n const children =\n response.childTransactionRecords != null\n ? response.childTransactionRecords.map((child) =>\n TransactionRecord._fromProtobuf({\n transactionRecord: child,\n })\n )\n : [];\n\n const duplicates =\n response.duplicateTransactionRecords != null\n ? response.duplicateTransactionRecords.map((duplicate) =>\n TransactionRecord._fromProtobuf({\n transactionRecord: duplicate,\n })\n )\n : [];\n\n const contractFunctionResult =\n record.contractCallResult != null\n ? ContractFunctionResult._fromProtobuf(\n record.contractCallResult\n )\n : record.contractCreateResult != null\n ? ContractFunctionResult._fromProtobuf(\n record.contractCreateResult\n )\n : undefined;\n\n return new TransactionRecord({\n receipt: TransactionReceipt._fromProtobuf({\n receipt: /** @type {proto.ITransactionReceipt} */ (\n record.receipt\n ),\n }),\n transactionHash:\n record.transactionHash != null\n ? record.transactionHash\n : new Uint8Array(),\n consensusTimestamp: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (record.consensusTimestamp)\n ),\n transactionId: TransactionId._fromProtobuf(\n /** @type {proto.ITransactionID} */ (record.transactionID)\n ),\n transactionMemo: record.memo != null ? record.memo : \"\",\n transactionFee: Hbar.fromTinybars(\n record.transactionFee != null ? record.transactionFee : 0\n ),\n transfers: Transfer._fromProtobuf(\n record.transferList != null\n ? record.transferList.accountAmounts != null\n ? record.transferList.accountAmounts\n : []\n : []\n ),\n contractFunctionResult,\n tokenTransfers: TokenTransferMap._fromProtobuf(\n record.tokenTransferLists != null\n ? record.tokenTransferLists\n : []\n ),\n tokenTransfersList: TokenTransfer._fromProtobuf(\n record.tokenTransferLists != null\n ? record.tokenTransferLists\n : []\n ),\n scheduleRef:\n record.scheduleRef != null\n ? ScheduleId._fromProtobuf(record.scheduleRef)\n : null,\n assessedCustomFees:\n record.assessedCustomFees != null\n ? record.assessedCustomFees.map((fee) =>\n AssessedCustomFee._fromProtobuf(fee)\n )\n : [],\n nftTransfers: TokenNftTransferMap._fromProtobuf(\n record.tokenTransferLists != null\n ? record.tokenTransferLists\n : []\n ),\n automaticTokenAssociations:\n record.automaticTokenAssociations != null\n ? record.automaticTokenAssociations.map((association) =>\n TokenAssocation._fromProtobuf(association)\n )\n : [],\n parentConsensusTimestamp:\n record.parentConsensusTimestamp != null\n ? Timestamp._fromProtobuf(record.parentConsensusTimestamp)\n : null,\n aliasKey,\n duplicates,\n children,\n });\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TransactionRecord}\n */\n static fromBytes(bytes) {\n return TransactionRecord._fromProtobuf(\n proto.TransactionGetRecordResponse.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TransactionGetRecordResponse.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import AccountId from \"./account/AccountId.js\";\nimport Hbar from \"./Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"long\")} Long\n */\n\n/**\n * An account, and the amount that it sends or receives during a cryptocurrency transfer.\n */\nexport default class Transfer {\n /**\n * @internal\n * @param {object} props\n * @param {AccountId | string} props.accountId\n * @param {number | string | Long | BigNumber | Hbar} props.amount\n * @param {boolean} props.isApproved\n */\n constructor(props) {\n /**\n * The Account ID that sends or receives cryptocurrency.\n *\n * @readonly\n */\n this.accountId =\n props.accountId instanceof AccountId\n ? props.accountId\n : AccountId.fromString(props.accountId);\n\n /**\n * The amount of tinybars that the account sends(negative) or receives(positive).\n */\n this.amount =\n props.amount instanceof Hbar\n ? props.amount\n : new Hbar(props.amount);\n\n this.isApproved = props.isApproved;\n }\n\n /**\n * @internal\n * @param {proto.IAccountAmount[]} accountAmounts\n * @returns {Transfer[]}\n */\n static _fromProtobuf(accountAmounts) {\n const transfers = [];\n\n for (const transfer of accountAmounts) {\n transfers.push(\n new Transfer({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (transfer.accountID)\n ),\n amount: Hbar.fromTinybars(\n transfer.amount != null ? transfer.amount : 0\n ),\n isApproved: /** @type {boolean} */ (transfer.isApproval),\n })\n );\n }\n\n return transfers;\n }\n\n /**\n * @internal\n * @returns {proto.IAccountAmount}\n */\n _toProtobuf() {\n return {\n accountID: this.accountId._toProtobuf(),\n amount: this.amount.toTinybars(),\n isApproval: this.isApproved,\n };\n }\n}\n","import ContractLogInfo from \"./ContractLogInfo.js\";\nimport ContractId from \"./ContractId.js\";\nimport BigNumber from \"bignumber.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\nimport * as util from \"../util.js\";\nimport Long from \"long\";\nimport ContractStateChange from \"./ContractStateChange.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IContractFunctionResult} proto.IContractFunctionResult\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n */\n/**\n * The result returned by a call to a smart contract function. This is part of the response to\n * a ContractCallLocal query, and is in the record for a ContractCall or ContractCreateInstance\n * transaction. The ContractCreateInstance transaction record has the results of the call to\n * the constructor.\n */\nexport default class ContractFunctionResult {\n /**\n * Constructor isn't part of the stable API\n *\n * @param {object} result\n * @param {?ContractId} result.contractId\n * @param {?string} result.errorMessage\n * @param {Uint8Array} result.bloom\n * @param {Long} result.gasUsed\n * @param {ContractLogInfo[]} result.logs\n * @param {ContractId[]} result.createdContractIds\n * @param {Uint8Array | null} result.evmAddress\n * @param {ContractStateChange[]} result.stateChanges\n * @param {Uint8Array} result.bytes\n */\n constructor(result) {\n /**\n * The smart contract instance whose function was called.\n */\n this.contractId = result.contractId;\n\n this.bytes = result.bytes;\n\n /**\n * Message In case there was an error during smart contract execution.\n */\n this.errorMessage = result.errorMessage;\n\n /**\n * Bloom filter for record\n */\n this.bloom = result.bloom;\n\n /**\n * Units of gas used to execute contract.\n */\n this.gasUsed = result.gasUsed;\n\n /**\n * The log info for events returned by the function.\n */\n this.logs = result.logs;\n\n /**\n * @deprecated the list of smart contracts that were created by the function call.\n *\n * The created ids will now _also_ be externalized through internal transaction\n * records, where each record has its alias field populated with the new contract's\n * EVM address. (This is needed for contracts created with CREATE2, since\n * there is no longer a simple relationship between the new contract's 0.0.X id\n * and its Solidity address.)\n */\n // eslint-disable-next-line deprecation/deprecation\n this.createdContractIds = result.createdContractIds;\n\n this.evmAddress = result.evmAddress;\n\n this.stateChanges = result.stateChanges;\n }\n\n /**\n * @param {proto.IContractFunctionResult} result\n * @returns {ContractFunctionResult}\n */\n static _fromProtobuf(result) {\n const contractId = /** @type {proto.IContractID | null} */ (\n result.contractID\n );\n const gas = /** @type {Long | number} */ (result.gasUsed);\n\n return new ContractFunctionResult({\n bytes: /** @type {Uint8Array} */ (result.contractCallResult),\n contractId:\n contractId != null\n ? ContractId._fromProtobuf(contractId)\n : null,\n errorMessage:\n result.errorMessage != null ? result.errorMessage : null,\n bloom: /** @type {Uint8Array} */ (result.bloom),\n gasUsed: gas instanceof Long ? gas : Long.fromValue(gas),\n logs: (result.logInfo != null ? result.logInfo : []).map((info) =>\n ContractLogInfo._fromProtobuf(info)\n ),\n createdContractIds: (result.createdContractIDs != null\n ? result.createdContractIDs\n : []\n ).map((contractId) => ContractId._fromProtobuf(contractId)),\n evmAddress:\n result.evmAddress != null && result.evmAddress.value != null\n ? result.evmAddress.value\n : null,\n stateChanges: (result.stateChanges != null\n ? result.stateChanges\n : []\n ).map((change) => ContractStateChange._fromProtobuf(change)),\n });\n }\n\n /**\n * @returns {Uint8Array}\n */\n asBytes() {\n return this.bytes;\n }\n\n /**\n * @param {number} [index]\n * @returns {string}\n */\n getString(index) {\n return utf8.decode(this.getBytes(index));\n }\n\n /**\n * @private\n * @param {number} [index]\n * @returns {Uint8Array}\n */\n getBytes(index) {\n // Len should never be larger than Number.MAX\n // index * 32 is the position of the lenth\n // (index + 1) * 32 onward to (index + 1) * 32 + len will be the elements of the array\n // Arrays in solidity cannot be longer than 1024:\n // https://solidity.readthedocs.io/en/v0.4.21/introduction-to-smart-contracts.html\n const offset = this.getInt32(index);\n const len = util.safeView(this.bytes).getInt32(offset + 28);\n\n return this.bytes.subarray(offset + 32, offset + 32 + len);\n }\n\n /**\n * @param {number} [index]\n * @returns {Uint8Array}\n */\n getBytes32(index) {\n return this.bytes.subarray(\n (index != null ? index : 0) * 32,\n (index != null ? index : 0) * 32 + 32\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {boolean}\n */\n getBool(index) {\n return this.bytes[(index != null ? index : 0) * 32 + 31] !== 0;\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getInt8(index) {\n return this.bytes[(index != null ? index : 0) * 32 + 31];\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getInt32(index) {\n // .getInt32() interprets as big-endian\n // Using DataView instead of Uint32Array because the latter interprets\n // using platform endianness which is little-endian on x86\n const position = (index != null ? index : 0) * 32 + 28;\n return util.safeView(this.bytes).getInt32(position);\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getInt64(index) {\n return new BigNumber(\n hex.encode(\n this._getBytes32(index != null ? index : 0).subarray(24, 32)\n ),\n 16\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getInt256(index) {\n return new BigNumber(\n hex.encode(this._getBytes32(index != null ? index : 0)),\n 16\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getUint8(index) {\n return this.bytes[(index != null ? index : 0) * 32 + 31];\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getUint32(index) {\n // .getUint32() interprets as big-endian\n // Using DataView instead of Uint32Array because the latter interprets\n // using platform endianness which is little-endian on x86\n const position = (index != null ? index : 0) * 32 + 28;\n return util.safeView(this.bytes).getUint32(position);\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getUint64(index) {\n return new BigNumber(\n hex.encode(this._getBytes32(index).subarray(24, 32)),\n 16\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getUint256(index) {\n return new BigNumber(hex.encode(this._getBytes32(index)), 16);\n }\n\n /**\n * @param {number} [index]\n * @returns {string}\n */\n getAddress(index) {\n return hex.encode(\n this.bytes.subarray(\n (index != null ? index : 0) * 32 + 12,\n (index != null ? index : 0) * 32 + 32\n )\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {Uint8Array}\n */\n _getBytes32(index) {\n return this.bytes.subarray(\n (index != null ? index : 0) * 32,\n (index != null ? index : 0) * 32 + 32\n );\n }\n}\n","import AccountId from \"./AccountId.js\";\nimport Duration from \"../Duration.js\";\nimport KeyList from \"../KeyList.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ILiveHash} proto.ILiveHash\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n */\n\n/**\n * Response when the client sends the node CryptoGetInfoQuery.\n */\nexport default class LiveHash {\n /**\n * @private\n * @param {object} props\n * @param {AccountId} props.accountId\n * @param {Uint8Array} props.hash\n * @param {KeyList} props.keys\n * @param {Duration} props.duration\n */\n constructor(props) {\n /** @readonly */\n this.accountId = props.accountId;\n\n /** @readonly */\n this.hash = props.hash;\n\n /** @readonly */\n this.keys = props.keys;\n\n /** @readonly */\n this.duration = props.duration;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ILiveHash} liveHash\n * @returns {LiveHash}\n */\n static _fromProtobuf(liveHash) {\n const liveHash_ = /** @type {proto.ILiveHash} */ (liveHash);\n\n return new LiveHash({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (liveHash_.accountId)\n ),\n hash: liveHash_.hash != null ? liveHash_.hash : new Uint8Array(),\n keys:\n liveHash_.keys != null\n ? KeyList.__fromProtobufKeyList(liveHash_.keys)\n : new KeyList(),\n duration: Duration._fromProtobuf(\n /** @type {proto.IDuration} */ (liveHash_.duration)\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.ILiveHash}\n */\n _toProtobuf() {\n return {\n accountId: this.accountId._toProtobuf(),\n hash: this.hash,\n keys: this.keys._toProtobufKey().keyList,\n duration: this.duration._toProtobuf(),\n };\n }\n}\n","/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").TokenType} proto.TokenType\n */\n\nexport default class TokenType {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case TokenType.FungibleCommon:\n return \"FUNGIBLE_COMMON\";\n case TokenType.NonFungibleUnique:\n return \"NON_FUNGIBLE_UNIQUE\";\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {TokenType}\n */\n static _fromCode(code) {\n switch (code) {\n case 0:\n return TokenType.FungibleCommon;\n case 1:\n return TokenType.NonFungibleUnique;\n }\n\n throw new Error(\n `(BUG) TokenType.fromCode() does not handle code: ${code}`\n );\n }\n\n /**\n * @returns {proto.TokenType}\n */\n valueOf() {\n return this._code;\n }\n}\n\n/**\n * Interchangeable value with one another, where any quantity of them has the\n * same value as another equal quantity if they are in the same class. Share\n * a single set of properties, not distinct from one another. Simply represented\n * as a balance or quantity to a given Hedera account.\n */\nTokenType.FungibleCommon = new TokenType(0);\n\n/**\n * Unique, not interchangeable with other tokens of the same type as they\n * typically have different values. Individually traced and can carry unique\n * properties (e.g. serial number).\n */\nTokenType.NonFungibleUnique = new TokenType(1);\n","/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").TokenSupplyType} proto.TokenSupplyType\n */\n\nexport default class TokenSupplyType {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case TokenSupplyType.Infinite:\n return \"INFINITE\";\n case TokenSupplyType.Finite:\n return \"FINITE\";\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {TokenSupplyType}\n */\n static _fromCode(code) {\n switch (code) {\n case 0:\n return TokenSupplyType.Infinite;\n case 1:\n return TokenSupplyType.Finite;\n }\n\n throw new Error(\n `(BUG) TokenSupplyType.fromCode() does not handle code: ${code}`\n );\n }\n\n /**\n * @returns {proto.TokenSupplyType}\n */\n valueOf() {\n return this._code;\n }\n}\n\n/**\n * Interchangeable value with one another, where any quantity of them has the\n * same value as another equal quantity if they are in the same class. Share\n * a single set of properties, not distinct from one another. Simply represented\n * as a balance or quantity to a given Hedera account.\n */\nTokenSupplyType.Infinite = new TokenSupplyType(0);\n\n/**\n * Unique, not interchangeable with other tokens of the same type as they\n * typically have different values. Individually traced and can carry unique\n * properties (e.g. serial number).\n */\nTokenSupplyType.Finite = new TokenSupplyType(1);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.rlphash = exports.ripemd160FromArray = exports.ripemd160FromString = exports.ripemd160 = exports.sha256FromArray = exports.sha256FromString = exports.sha256 = exports.keccakFromArray = exports.keccakFromHexString = exports.keccakFromString = exports.keccak256 = exports.keccak = void 0;\nvar keccak_1 = require(\"ethereum-cryptography/keccak\");\nvar createHash = require('create-hash');\nvar externals_1 = require(\"./externals\");\nvar bytes_1 = require(\"./bytes\");\nvar helpers_1 = require(\"./helpers\");\n/**\n * Creates Keccak hash of a Buffer input\n * @param a The input data (Buffer)\n * @param bits (number = 256) The Keccak width\n */\nvar keccak = function (a, bits) {\n if (bits === void 0) { bits = 256; }\n (0, helpers_1.assertIsBuffer)(a);\n switch (bits) {\n case 224: {\n return (0, keccak_1.keccak224)(a);\n }\n case 256: {\n return (0, keccak_1.keccak256)(a);\n }\n case 384: {\n return (0, keccak_1.keccak384)(a);\n }\n case 512: {\n return (0, keccak_1.keccak512)(a);\n }\n default: {\n throw new Error(\"Invald algorithm: keccak\".concat(bits));\n }\n }\n};\nexports.keccak = keccak;\n/**\n * Creates Keccak-256 hash of the input, alias for keccak(a, 256).\n * @param a The input data (Buffer)\n */\nvar keccak256 = function (a) {\n return (0, exports.keccak)(a);\n};\nexports.keccak256 = keccak256;\n/**\n * Creates Keccak hash of a utf-8 string input\n * @param a The input data (String)\n * @param bits (number = 256) The Keccak width\n */\nvar keccakFromString = function (a, bits) {\n if (bits === void 0) { bits = 256; }\n (0, helpers_1.assertIsString)(a);\n var buf = Buffer.from(a, 'utf8');\n return (0, exports.keccak)(buf, bits);\n};\nexports.keccakFromString = keccakFromString;\n/**\n * Creates Keccak hash of an 0x-prefixed string input\n * @param a The input data (String)\n * @param bits (number = 256) The Keccak width\n */\nvar keccakFromHexString = function (a, bits) {\n if (bits === void 0) { bits = 256; }\n (0, helpers_1.assertIsHexString)(a);\n return (0, exports.keccak)((0, bytes_1.toBuffer)(a), bits);\n};\nexports.keccakFromHexString = keccakFromHexString;\n/**\n * Creates Keccak hash of a number array input\n * @param a The input data (number[])\n * @param bits (number = 256) The Keccak width\n */\nvar keccakFromArray = function (a, bits) {\n if (bits === void 0) { bits = 256; }\n (0, helpers_1.assertIsArray)(a);\n return (0, exports.keccak)((0, bytes_1.toBuffer)(a), bits);\n};\nexports.keccakFromArray = keccakFromArray;\n/**\n * Creates SHA256 hash of an input.\n * @param a The input data (Buffer|Array|String)\n */\nvar _sha256 = function (a) {\n a = (0, bytes_1.toBuffer)(a);\n return createHash('sha256').update(a).digest();\n};\n/**\n * Creates SHA256 hash of a Buffer input.\n * @param a The input data (Buffer)\n */\nvar sha256 = function (a) {\n (0, helpers_1.assertIsBuffer)(a);\n return _sha256(a);\n};\nexports.sha256 = sha256;\n/**\n * Creates SHA256 hash of a string input.\n * @param a The input data (string)\n */\nvar sha256FromString = function (a) {\n (0, helpers_1.assertIsString)(a);\n return _sha256(a);\n};\nexports.sha256FromString = sha256FromString;\n/**\n * Creates SHA256 hash of a number[] input.\n * @param a The input data (number[])\n */\nvar sha256FromArray = function (a) {\n (0, helpers_1.assertIsArray)(a);\n return _sha256(a);\n};\nexports.sha256FromArray = sha256FromArray;\n/**\n * Creates RIPEMD160 hash of the input.\n * @param a The input data (Buffer|Array|String|Number)\n * @param padded Whether it should be padded to 256 bits or not\n */\nvar _ripemd160 = function (a, padded) {\n a = (0, bytes_1.toBuffer)(a);\n var hash = createHash('rmd160').update(a).digest();\n if (padded === true) {\n return (0, bytes_1.setLengthLeft)(hash, 32);\n }\n else {\n return hash;\n }\n};\n/**\n * Creates RIPEMD160 hash of a Buffer input.\n * @param a The input data (Buffer)\n * @param padded Whether it should be padded to 256 bits or not\n */\nvar ripemd160 = function (a, padded) {\n (0, helpers_1.assertIsBuffer)(a);\n return _ripemd160(a, padded);\n};\nexports.ripemd160 = ripemd160;\n/**\n * Creates RIPEMD160 hash of a string input.\n * @param a The input data (String)\n * @param padded Whether it should be padded to 256 bits or not\n */\nvar ripemd160FromString = function (a, padded) {\n (0, helpers_1.assertIsString)(a);\n return _ripemd160(a, padded);\n};\nexports.ripemd160FromString = ripemd160FromString;\n/**\n * Creates RIPEMD160 hash of a number[] input.\n * @param a The input data (number[])\n * @param padded Whether it should be padded to 256 bits or not\n */\nvar ripemd160FromArray = function (a, padded) {\n (0, helpers_1.assertIsArray)(a);\n return _ripemd160(a, padded);\n};\nexports.ripemd160FromArray = ripemd160FromArray;\n/**\n * Creates SHA-3 hash of the RLP encoded version of the input.\n * @param a The input data\n */\nvar rlphash = function (a) {\n return (0, exports.keccak)(externals_1.rlp.encode(a));\n};\nexports.rlphash = rlphash;\n//# sourceMappingURL=hash.js.map","// Ported from https://github.com/mafintosh/end-of-stream with\n// permission from the author, Mathias Buus (@mafintosh).\n'use strict';\n\nvar ERR_STREAM_PREMATURE_CLOSE = require('../../../errors').codes.ERR_STREAM_PREMATURE_CLOSE;\n\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n callback.apply(this, args);\n };\n}\n\nfunction noop() {}\n\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\n\nfunction eos(stream, opts, callback) {\n if (typeof opts === 'function') return eos(stream, null, opts);\n if (!opts) opts = {};\n callback = once(callback || noop);\n var readable = opts.readable || opts.readable !== false && stream.readable;\n var writable = opts.writable || opts.writable !== false && stream.writable;\n\n var onlegacyfinish = function onlegacyfinish() {\n if (!stream.writable) onfinish();\n };\n\n var writableEnded = stream._writableState && stream._writableState.finished;\n\n var onfinish = function onfinish() {\n writable = false;\n writableEnded = true;\n if (!readable) callback.call(stream);\n };\n\n var readableEnded = stream._readableState && stream._readableState.endEmitted;\n\n var onend = function onend() {\n readable = false;\n readableEnded = true;\n if (!writable) callback.call(stream);\n };\n\n var onerror = function onerror(err) {\n callback.call(stream, err);\n };\n\n var onclose = function onclose() {\n var err;\n\n if (readable && !readableEnded) {\n if (!stream._readableState || !stream._readableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n\n if (writable && !writableEnded) {\n if (!stream._writableState || !stream._writableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n };\n\n var onrequest = function onrequest() {\n stream.req.on('finish', onfinish);\n };\n\n if (isRequest(stream)) {\n stream.on('complete', onfinish);\n stream.on('abort', onclose);\n if (stream.req) onrequest();else stream.on('request', onrequest);\n } else if (writable && !stream._writableState) {\n // legacy streams\n stream.on('end', onlegacyfinish);\n stream.on('close', onlegacyfinish);\n }\n\n stream.on('end', onend);\n stream.on('finish', onfinish);\n if (opts.error !== false) stream.on('error', onerror);\n stream.on('close', onclose);\n return function () {\n stream.removeListener('complete', onfinish);\n stream.removeListener('abort', onclose);\n stream.removeListener('request', onrequest);\n if (stream.req) stream.req.removeListener('finish', onfinish);\n stream.removeListener('end', onlegacyfinish);\n stream.removeListener('close', onlegacyfinish);\n stream.removeListener('finish', onfinish);\n stream.removeListener('end', onend);\n stream.removeListener('error', onerror);\n stream.removeListener('close', onclose);\n };\n}\n\nmodule.exports = eos;","'use strict'\nvar inherits = require('inherits')\nvar HashBase = require('hash-base')\nvar Buffer = require('safe-buffer').Buffer\n\nvar ARRAY16 = new Array(16)\n\nfunction MD5 () {\n HashBase.call(this, 64)\n\n // state\n this._a = 0x67452301\n this._b = 0xefcdab89\n this._c = 0x98badcfe\n this._d = 0x10325476\n}\n\ninherits(MD5, HashBase)\n\nMD5.prototype._update = function () {\n var M = ARRAY16\n for (var i = 0; i < 16; ++i) M[i] = this._block.readInt32LE(i * 4)\n\n var a = this._a\n var b = this._b\n var c = this._c\n var d = this._d\n\n a = fnF(a, b, c, d, M[0], 0xd76aa478, 7)\n d = fnF(d, a, b, c, M[1], 0xe8c7b756, 12)\n c = fnF(c, d, a, b, M[2], 0x242070db, 17)\n b = fnF(b, c, d, a, M[3], 0xc1bdceee, 22)\n a = fnF(a, b, c, d, M[4], 0xf57c0faf, 7)\n d = fnF(d, a, b, c, M[5], 0x4787c62a, 12)\n c = fnF(c, d, a, b, M[6], 0xa8304613, 17)\n b = fnF(b, c, d, a, M[7], 0xfd469501, 22)\n a = fnF(a, b, c, d, M[8], 0x698098d8, 7)\n d = fnF(d, a, b, c, M[9], 0x8b44f7af, 12)\n c = fnF(c, d, a, b, M[10], 0xffff5bb1, 17)\n b = fnF(b, c, d, a, M[11], 0x895cd7be, 22)\n a = fnF(a, b, c, d, M[12], 0x6b901122, 7)\n d = fnF(d, a, b, c, M[13], 0xfd987193, 12)\n c = fnF(c, d, a, b, M[14], 0xa679438e, 17)\n b = fnF(b, c, d, a, M[15], 0x49b40821, 22)\n\n a = fnG(a, b, c, d, M[1], 0xf61e2562, 5)\n d = fnG(d, a, b, c, M[6], 0xc040b340, 9)\n c = fnG(c, d, a, b, M[11], 0x265e5a51, 14)\n b = fnG(b, c, d, a, M[0], 0xe9b6c7aa, 20)\n a = fnG(a, b, c, d, M[5], 0xd62f105d, 5)\n d = fnG(d, a, b, c, M[10], 0x02441453, 9)\n c = fnG(c, d, a, b, M[15], 0xd8a1e681, 14)\n b = fnG(b, c, d, a, M[4], 0xe7d3fbc8, 20)\n a = fnG(a, b, c, d, M[9], 0x21e1cde6, 5)\n d = fnG(d, a, b, c, M[14], 0xc33707d6, 9)\n c = fnG(c, d, a, b, M[3], 0xf4d50d87, 14)\n b = fnG(b, c, d, a, M[8], 0x455a14ed, 20)\n a = fnG(a, b, c, d, M[13], 0xa9e3e905, 5)\n d = fnG(d, a, b, c, M[2], 0xfcefa3f8, 9)\n c = fnG(c, d, a, b, M[7], 0x676f02d9, 14)\n b = fnG(b, c, d, a, M[12], 0x8d2a4c8a, 20)\n\n a = fnH(a, b, c, d, M[5], 0xfffa3942, 4)\n d = fnH(d, a, b, c, M[8], 0x8771f681, 11)\n c = fnH(c, d, a, b, M[11], 0x6d9d6122, 16)\n b = fnH(b, c, d, a, M[14], 0xfde5380c, 23)\n a = fnH(a, b, c, d, M[1], 0xa4beea44, 4)\n d = fnH(d, a, b, c, M[4], 0x4bdecfa9, 11)\n c = fnH(c, d, a, b, M[7], 0xf6bb4b60, 16)\n b = fnH(b, c, d, a, M[10], 0xbebfbc70, 23)\n a = fnH(a, b, c, d, M[13], 0x289b7ec6, 4)\n d = fnH(d, a, b, c, M[0], 0xeaa127fa, 11)\n c = fnH(c, d, a, b, M[3], 0xd4ef3085, 16)\n b = fnH(b, c, d, a, M[6], 0x04881d05, 23)\n a = fnH(a, b, c, d, M[9], 0xd9d4d039, 4)\n d = fnH(d, a, b, c, M[12], 0xe6db99e5, 11)\n c = fnH(c, d, a, b, M[15], 0x1fa27cf8, 16)\n b = fnH(b, c, d, a, M[2], 0xc4ac5665, 23)\n\n a = fnI(a, b, c, d, M[0], 0xf4292244, 6)\n d = fnI(d, a, b, c, M[7], 0x432aff97, 10)\n c = fnI(c, d, a, b, M[14], 0xab9423a7, 15)\n b = fnI(b, c, d, a, M[5], 0xfc93a039, 21)\n a = fnI(a, b, c, d, M[12], 0x655b59c3, 6)\n d = fnI(d, a, b, c, M[3], 0x8f0ccc92, 10)\n c = fnI(c, d, a, b, M[10], 0xffeff47d, 15)\n b = fnI(b, c, d, a, M[1], 0x85845dd1, 21)\n a = fnI(a, b, c, d, M[8], 0x6fa87e4f, 6)\n d = fnI(d, a, b, c, M[15], 0xfe2ce6e0, 10)\n c = fnI(c, d, a, b, M[6], 0xa3014314, 15)\n b = fnI(b, c, d, a, M[13], 0x4e0811a1, 21)\n a = fnI(a, b, c, d, M[4], 0xf7537e82, 6)\n d = fnI(d, a, b, c, M[11], 0xbd3af235, 10)\n c = fnI(c, d, a, b, M[2], 0x2ad7d2bb, 15)\n b = fnI(b, c, d, a, M[9], 0xeb86d391, 21)\n\n this._a = (this._a + a) | 0\n this._b = (this._b + b) | 0\n this._c = (this._c + c) | 0\n this._d = (this._d + d) | 0\n}\n\nMD5.prototype._digest = function () {\n // create padding and handle blocks\n this._block[this._blockOffset++] = 0x80\n if (this._blockOffset > 56) {\n this._block.fill(0, this._blockOffset, 64)\n this._update()\n this._blockOffset = 0\n }\n\n this._block.fill(0, this._blockOffset, 56)\n this._block.writeUInt32LE(this._length[0], 56)\n this._block.writeUInt32LE(this._length[1], 60)\n this._update()\n\n // produce result\n var buffer = Buffer.allocUnsafe(16)\n buffer.writeInt32LE(this._a, 0)\n buffer.writeInt32LE(this._b, 4)\n buffer.writeInt32LE(this._c, 8)\n buffer.writeInt32LE(this._d, 12)\n return buffer\n}\n\nfunction rotl (x, n) {\n return (x << n) | (x >>> (32 - n))\n}\n\nfunction fnF (a, b, c, d, m, k, s) {\n return (rotl((a + ((b & c) | ((~b) & d)) + m + k) | 0, s) + b) | 0\n}\n\nfunction fnG (a, b, c, d, m, k, s) {\n return (rotl((a + ((b & d) | (c & (~d))) + m + k) | 0, s) + b) | 0\n}\n\nfunction fnH (a, b, c, d, m, k, s) {\n return (rotl((a + (b ^ c ^ d) + m + k) | 0, s) + b) | 0\n}\n\nfunction fnI (a, b, c, d, m, k, s) {\n return (rotl((a + ((c ^ (b | (~d)))) + m + k) | 0, s) + b) | 0\n}\n\nmodule.exports = MD5\n","// Ported from https://github.com/mafintosh/end-of-stream with\n// permission from the author, Mathias Buus (@mafintosh).\n'use strict';\n\nvar ERR_STREAM_PREMATURE_CLOSE = require('../../../errors').codes.ERR_STREAM_PREMATURE_CLOSE;\n\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n callback.apply(this, args);\n };\n}\n\nfunction noop() {}\n\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\n\nfunction eos(stream, opts, callback) {\n if (typeof opts === 'function') return eos(stream, null, opts);\n if (!opts) opts = {};\n callback = once(callback || noop);\n var readable = opts.readable || opts.readable !== false && stream.readable;\n var writable = opts.writable || opts.writable !== false && stream.writable;\n\n var onlegacyfinish = function onlegacyfinish() {\n if (!stream.writable) onfinish();\n };\n\n var writableEnded = stream._writableState && stream._writableState.finished;\n\n var onfinish = function onfinish() {\n writable = false;\n writableEnded = true;\n if (!readable) callback.call(stream);\n };\n\n var readableEnded = stream._readableState && stream._readableState.endEmitted;\n\n var onend = function onend() {\n readable = false;\n readableEnded = true;\n if (!writable) callback.call(stream);\n };\n\n var onerror = function onerror(err) {\n callback.call(stream, err);\n };\n\n var onclose = function onclose() {\n var err;\n\n if (readable && !readableEnded) {\n if (!stream._readableState || !stream._readableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n\n if (writable && !writableEnded) {\n if (!stream._writableState || !stream._writableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n };\n\n var onrequest = function onrequest() {\n stream.req.on('finish', onfinish);\n };\n\n if (isRequest(stream)) {\n stream.on('complete', onfinish);\n stream.on('abort', onclose);\n if (stream.req) onrequest();else stream.on('request', onrequest);\n } else if (writable && !stream._writableState) {\n // legacy streams\n stream.on('end', onlegacyfinish);\n stream.on('close', onlegacyfinish);\n }\n\n stream.on('end', onend);\n stream.on('finish', onfinish);\n if (opts.error !== false) stream.on('error', onerror);\n stream.on('close', onclose);\n return function () {\n stream.removeListener('complete', onfinish);\n stream.removeListener('abort', onclose);\n stream.removeListener('request', onrequest);\n if (stream.req) stream.req.removeListener('finish', onfinish);\n stream.removeListener('end', onlegacyfinish);\n stream.removeListener('close', onlegacyfinish);\n stream.removeListener('finish', onfinish);\n stream.removeListener('end', onend);\n stream.removeListener('error', onerror);\n stream.removeListener('close', onclose);\n };\n}\n\nmodule.exports = eos;","'use strict'\nvar Buffer = require('buffer').Buffer\nvar inherits = require('inherits')\nvar HashBase = require('hash-base')\n\nvar ARRAY16 = new Array(16)\n\nvar zl = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,\n 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8,\n 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12,\n 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2,\n 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13\n]\n\nvar zr = [\n 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12,\n 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2,\n 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13,\n 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14,\n 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11\n]\n\nvar sl = [\n 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8,\n 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12,\n 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5,\n 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12,\n 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6\n]\n\nvar sr = [\n 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6,\n 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11,\n 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5,\n 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8,\n 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11\n]\n\nvar hl = [0x00000000, 0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xa953fd4e]\nvar hr = [0x50a28be6, 0x5c4dd124, 0x6d703ef3, 0x7a6d76e9, 0x00000000]\n\nfunction RIPEMD160 () {\n HashBase.call(this, 64)\n\n // state\n this._a = 0x67452301\n this._b = 0xefcdab89\n this._c = 0x98badcfe\n this._d = 0x10325476\n this._e = 0xc3d2e1f0\n}\n\ninherits(RIPEMD160, HashBase)\n\nRIPEMD160.prototype._update = function () {\n var words = ARRAY16\n for (var j = 0; j < 16; ++j) words[j] = this._block.readInt32LE(j * 4)\n\n var al = this._a | 0\n var bl = this._b | 0\n var cl = this._c | 0\n var dl = this._d | 0\n var el = this._e | 0\n\n var ar = this._a | 0\n var br = this._b | 0\n var cr = this._c | 0\n var dr = this._d | 0\n var er = this._e | 0\n\n // computation\n for (var i = 0; i < 80; i += 1) {\n var tl\n var tr\n if (i < 16) {\n tl = fn1(al, bl, cl, dl, el, words[zl[i]], hl[0], sl[i])\n tr = fn5(ar, br, cr, dr, er, words[zr[i]], hr[0], sr[i])\n } else if (i < 32) {\n tl = fn2(al, bl, cl, dl, el, words[zl[i]], hl[1], sl[i])\n tr = fn4(ar, br, cr, dr, er, words[zr[i]], hr[1], sr[i])\n } else if (i < 48) {\n tl = fn3(al, bl, cl, dl, el, words[zl[i]], hl[2], sl[i])\n tr = fn3(ar, br, cr, dr, er, words[zr[i]], hr[2], sr[i])\n } else if (i < 64) {\n tl = fn4(al, bl, cl, dl, el, words[zl[i]], hl[3], sl[i])\n tr = fn2(ar, br, cr, dr, er, words[zr[i]], hr[3], sr[i])\n } else { // if (i<80) {\n tl = fn5(al, bl, cl, dl, el, words[zl[i]], hl[4], sl[i])\n tr = fn1(ar, br, cr, dr, er, words[zr[i]], hr[4], sr[i])\n }\n\n al = el\n el = dl\n dl = rotl(cl, 10)\n cl = bl\n bl = tl\n\n ar = er\n er = dr\n dr = rotl(cr, 10)\n cr = br\n br = tr\n }\n\n // update state\n var t = (this._b + cl + dr) | 0\n this._b = (this._c + dl + er) | 0\n this._c = (this._d + el + ar) | 0\n this._d = (this._e + al + br) | 0\n this._e = (this._a + bl + cr) | 0\n this._a = t\n}\n\nRIPEMD160.prototype._digest = function () {\n // create padding and handle blocks\n this._block[this._blockOffset++] = 0x80\n if (this._blockOffset > 56) {\n this._block.fill(0, this._blockOffset, 64)\n this._update()\n this._blockOffset = 0\n }\n\n this._block.fill(0, this._blockOffset, 56)\n this._block.writeUInt32LE(this._length[0], 56)\n this._block.writeUInt32LE(this._length[1], 60)\n this._update()\n\n // produce result\n var buffer = Buffer.alloc ? Buffer.alloc(20) : new Buffer(20)\n buffer.writeInt32LE(this._a, 0)\n buffer.writeInt32LE(this._b, 4)\n buffer.writeInt32LE(this._c, 8)\n buffer.writeInt32LE(this._d, 12)\n buffer.writeInt32LE(this._e, 16)\n return buffer\n}\n\nfunction rotl (x, n) {\n return (x << n) | (x >>> (32 - n))\n}\n\nfunction fn1 (a, b, c, d, e, m, k, s) {\n return (rotl((a + (b ^ c ^ d) + m + k) | 0, s) + e) | 0\n}\n\nfunction fn2 (a, b, c, d, e, m, k, s) {\n return (rotl((a + ((b & c) | ((~b) & d)) + m + k) | 0, s) + e) | 0\n}\n\nfunction fn3 (a, b, c, d, e, m, k, s) {\n return (rotl((a + ((b | (~c)) ^ d) + m + k) | 0, s) + e) | 0\n}\n\nfunction fn4 (a, b, c, d, e, m, k, s) {\n return (rotl((a + ((b & d) | (c & (~d))) + m + k) | 0, s) + e) | 0\n}\n\nfunction fn5 (a, b, c, d, e, m, k, s) {\n return (rotl((a + (b ^ (c | (~d))) + m + k) | 0, s) + e) | 0\n}\n\nmodule.exports = RIPEMD160\n","var exports = module.exports = function SHA (algorithm) {\n algorithm = algorithm.toLowerCase()\n\n var Algorithm = exports[algorithm]\n if (!Algorithm) throw new Error(algorithm + ' is not supported (we accept pull requests)')\n\n return new Algorithm()\n}\n\nexports.sha = require('./sha')\nexports.sha1 = require('./sha1')\nexports.sha224 = require('./sha224')\nexports.sha256 = require('./sha256')\nexports.sha384 = require('./sha384')\nexports.sha512 = require('./sha512')\n","exports = module.exports = require('./lib/_stream_readable.js');\nexports.Stream = exports;\nexports.Readable = exports;\nexports.Writable = require('./lib/_stream_writable.js');\nexports.Duplex = require('./lib/_stream_duplex.js');\nexports.Transform = require('./lib/_stream_transform.js');\nexports.PassThrough = require('./lib/_stream_passthrough.js');\n","/* eslint-disable node/no-deprecated-api */\nvar buffer = require('buffer')\nvar Buffer = buffer.Buffer\n\n// alternative to using Object.keys for old browsers\nfunction copyProps (src, dst) {\n for (var key in src) {\n dst[key] = src[key]\n }\n}\nif (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {\n module.exports = buffer\n} else {\n // Copy properties from require('buffer')\n copyProps(buffer, exports)\n exports.Buffer = SafeBuffer\n}\n\nfunction SafeBuffer (arg, encodingOrOffset, length) {\n return Buffer(arg, encodingOrOffset, length)\n}\n\n// Copy static methods from Buffer\ncopyProps(Buffer, SafeBuffer)\n\nSafeBuffer.from = function (arg, encodingOrOffset, length) {\n if (typeof arg === 'number') {\n throw new TypeError('Argument must not be a number')\n }\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.alloc = function (size, fill, encoding) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n var buf = Buffer(size)\n if (fill !== undefined) {\n if (typeof encoding === 'string') {\n buf.fill(fill, encoding)\n } else {\n buf.fill(fill)\n }\n } else {\n buf.fill(0)\n }\n return buf\n}\n\nSafeBuffer.allocUnsafe = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return Buffer(size)\n}\n\nSafeBuffer.allocUnsafeSlow = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return buffer.SlowBuffer(size)\n}\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// A bit simpler than readable streams.\n// Implement an async ._write(chunk, encoding, cb), and it'll handle all\n// the drain event emission and buffering.\n\n'use strict';\n\n/**/\n\nvar pna = require('process-nextick-args');\n/**/\n\nmodule.exports = Writable;\n\n/* */\nfunction WriteReq(chunk, encoding, cb) {\n this.chunk = chunk;\n this.encoding = encoding;\n this.callback = cb;\n this.next = null;\n}\n\n// It seems a linked list but it is not\n// there will be only 2 of these for each stream\nfunction CorkedRequest(state) {\n var _this = this;\n\n this.next = null;\n this.entry = null;\n this.finish = function () {\n onCorkedFinish(_this, state);\n };\n}\n/* */\n\n/**/\nvar asyncWrite = !process.browser && ['v0.10', 'v0.9.'].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : pna.nextTick;\n/**/\n\n/**/\nvar Duplex;\n/**/\n\nWritable.WritableState = WritableState;\n\n/**/\nvar util = Object.create(require('core-util-is'));\nutil.inherits = require('inherits');\n/**/\n\n/**/\nvar internalUtil = {\n deprecate: require('util-deprecate')\n};\n/**/\n\n/**/\nvar Stream = require('./internal/streams/stream');\n/**/\n\n/**/\n\nvar Buffer = require('safe-buffer').Buffer;\nvar OurUint8Array = global.Uint8Array || function () {};\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n\n/**/\n\nvar destroyImpl = require('./internal/streams/destroy');\n\nutil.inherits(Writable, Stream);\n\nfunction nop() {}\n\nfunction WritableState(options, stream) {\n Duplex = Duplex || require('./_stream_duplex');\n\n options = options || {};\n\n // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream.\n // These options can be provided separately as readableXXX and writableXXX.\n var isDuplex = stream instanceof Duplex;\n\n // object stream flag to indicate whether or not this stream\n // contains buffers or objects.\n this.objectMode = !!options.objectMode;\n\n if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode;\n\n // the point at which write() starts returning false\n // Note: 0 is a valid value, means that we always return false if\n // the entire buffer is not flushed immediately on write()\n var hwm = options.highWaterMark;\n var writableHwm = options.writableHighWaterMark;\n var defaultHwm = this.objectMode ? 16 : 16 * 1024;\n\n if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (writableHwm || writableHwm === 0)) this.highWaterMark = writableHwm;else this.highWaterMark = defaultHwm;\n\n // cast to ints.\n this.highWaterMark = Math.floor(this.highWaterMark);\n\n // if _final has been called\n this.finalCalled = false;\n\n // drain event flag.\n this.needDrain = false;\n // at the start of calling end()\n this.ending = false;\n // when end() has been called, and returned\n this.ended = false;\n // when 'finish' is emitted\n this.finished = false;\n\n // has it been destroyed\n this.destroyed = false;\n\n // should we decode strings into buffers before passing to _write?\n // this is here so that some node-core streams can optimize string\n // handling at a lower level.\n var noDecode = options.decodeStrings === false;\n this.decodeStrings = !noDecode;\n\n // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n this.defaultEncoding = options.defaultEncoding || 'utf8';\n\n // not an actual buffer we keep track of, but a measurement\n // of how much we're waiting to get pushed to some underlying\n // socket or file.\n this.length = 0;\n\n // a flag to see when we're in the middle of a write.\n this.writing = false;\n\n // when true all writes will be buffered until .uncork() call\n this.corked = 0;\n\n // a flag to be able to tell if the onwrite cb is called immediately,\n // or on a later tick. We set this to true at first, because any\n // actions that shouldn't happen until \"later\" should generally also\n // not happen before the first write call.\n this.sync = true;\n\n // a flag to know if we're processing previously buffered items, which\n // may call the _write() callback in the same tick, so that we don't\n // end up in an overlapped onwrite situation.\n this.bufferProcessing = false;\n\n // the callback that's passed to _write(chunk,cb)\n this.onwrite = function (er) {\n onwrite(stream, er);\n };\n\n // the callback that the user supplies to write(chunk,encoding,cb)\n this.writecb = null;\n\n // the amount that is being written when _write is called.\n this.writelen = 0;\n\n this.bufferedRequest = null;\n this.lastBufferedRequest = null;\n\n // number of pending user-supplied write callbacks\n // this must be 0 before 'finish' can be emitted\n this.pendingcb = 0;\n\n // emit prefinish if the only thing we're waiting for is _write cbs\n // This is relevant for synchronous Transform streams\n this.prefinished = false;\n\n // True if the error was already emitted and should not be thrown again\n this.errorEmitted = false;\n\n // count buffered requests\n this.bufferedRequestCount = 0;\n\n // allocate the first CorkedRequest, there is always\n // one allocated and free to use, and we maintain at most two\n this.corkedRequestsFree = new CorkedRequest(this);\n}\n\nWritableState.prototype.getBuffer = function getBuffer() {\n var current = this.bufferedRequest;\n var out = [];\n while (current) {\n out.push(current);\n current = current.next;\n }\n return out;\n};\n\n(function () {\n try {\n Object.defineProperty(WritableState.prototype, 'buffer', {\n get: internalUtil.deprecate(function () {\n return this.getBuffer();\n }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')\n });\n } catch (_) {}\n})();\n\n// Test _writableState for inheritance to account for Duplex streams,\n// whose prototype chain only points to Readable.\nvar realHasInstance;\nif (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {\n realHasInstance = Function.prototype[Symbol.hasInstance];\n Object.defineProperty(Writable, Symbol.hasInstance, {\n value: function (object) {\n if (realHasInstance.call(this, object)) return true;\n if (this !== Writable) return false;\n\n return object && object._writableState instanceof WritableState;\n }\n });\n} else {\n realHasInstance = function (object) {\n return object instanceof this;\n };\n}\n\nfunction Writable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n\n // Writable ctor is applied to Duplexes, too.\n // `realHasInstance` is necessary because using plain `instanceof`\n // would return false, as no `_writableState` property is attached.\n\n // Trying to use the custom `instanceof` for Writable here will also break the\n // Node.js LazyTransform implementation, which has a non-trivial getter for\n // `_writableState` that would lead to infinite recursion.\n if (!realHasInstance.call(Writable, this) && !(this instanceof Duplex)) {\n return new Writable(options);\n }\n\n this._writableState = new WritableState(options, this);\n\n // legacy.\n this.writable = true;\n\n if (options) {\n if (typeof options.write === 'function') this._write = options.write;\n\n if (typeof options.writev === 'function') this._writev = options.writev;\n\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n\n if (typeof options.final === 'function') this._final = options.final;\n }\n\n Stream.call(this);\n}\n\n// Otherwise people can pipe Writable streams, which is just wrong.\nWritable.prototype.pipe = function () {\n this.emit('error', new Error('Cannot pipe, not readable'));\n};\n\nfunction writeAfterEnd(stream, cb) {\n var er = new Error('write after end');\n // TODO: defer error events consistently everywhere, not just the cb\n stream.emit('error', er);\n pna.nextTick(cb, er);\n}\n\n// Checks that a user-supplied chunk is valid, especially for the particular\n// mode the stream is in. Currently this means that `null` is never accepted\n// and undefined/non-string values are only allowed in object mode.\nfunction validChunk(stream, state, chunk, cb) {\n var valid = true;\n var er = false;\n\n if (chunk === null) {\n er = new TypeError('May not write null values to stream');\n } else if (typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {\n er = new TypeError('Invalid non-string/buffer chunk');\n }\n if (er) {\n stream.emit('error', er);\n pna.nextTick(cb, er);\n valid = false;\n }\n return valid;\n}\n\nWritable.prototype.write = function (chunk, encoding, cb) {\n var state = this._writableState;\n var ret = false;\n var isBuf = !state.objectMode && _isUint8Array(chunk);\n\n if (isBuf && !Buffer.isBuffer(chunk)) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;\n\n if (typeof cb !== 'function') cb = nop;\n\n if (state.ended) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {\n state.pendingcb++;\n ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);\n }\n\n return ret;\n};\n\nWritable.prototype.cork = function () {\n var state = this._writableState;\n\n state.corked++;\n};\n\nWritable.prototype.uncork = function () {\n var state = this._writableState;\n\n if (state.corked) {\n state.corked--;\n\n if (!state.writing && !state.corked && !state.finished && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);\n }\n};\n\nWritable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n // node::ParseEncoding() requires lower case.\n if (typeof encoding === 'string') encoding = encoding.toLowerCase();\n if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new TypeError('Unknown encoding: ' + encoding);\n this._writableState.defaultEncoding = encoding;\n return this;\n};\n\nfunction decodeChunk(state, chunk, encoding) {\n if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {\n chunk = Buffer.from(chunk, encoding);\n }\n return chunk;\n}\n\nObject.defineProperty(Writable.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function () {\n return this._writableState.highWaterMark;\n }\n});\n\n// if we're already writing something, then just put this\n// in the queue, and wait our turn. Otherwise, call _write\n// If we return false, then we need a drain event, so set that flag.\nfunction writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {\n if (!isBuf) {\n var newChunk = decodeChunk(state, chunk, encoding);\n if (chunk !== newChunk) {\n isBuf = true;\n encoding = 'buffer';\n chunk = newChunk;\n }\n }\n var len = state.objectMode ? 1 : chunk.length;\n\n state.length += len;\n\n var ret = state.length < state.highWaterMark;\n // we must ensure that previous needDrain will not be reset to false.\n if (!ret) state.needDrain = true;\n\n if (state.writing || state.corked) {\n var last = state.lastBufferedRequest;\n state.lastBufferedRequest = {\n chunk: chunk,\n encoding: encoding,\n isBuf: isBuf,\n callback: cb,\n next: null\n };\n if (last) {\n last.next = state.lastBufferedRequest;\n } else {\n state.bufferedRequest = state.lastBufferedRequest;\n }\n state.bufferedRequestCount += 1;\n } else {\n doWrite(stream, state, false, len, chunk, encoding, cb);\n }\n\n return ret;\n}\n\nfunction doWrite(stream, state, writev, len, chunk, encoding, cb) {\n state.writelen = len;\n state.writecb = cb;\n state.writing = true;\n state.sync = true;\n if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);\n state.sync = false;\n}\n\nfunction onwriteError(stream, state, sync, er, cb) {\n --state.pendingcb;\n\n if (sync) {\n // defer the callback if we are being called synchronously\n // to avoid piling up things on the stack\n pna.nextTick(cb, er);\n // this can emit finish, and it will always happen\n // after error\n pna.nextTick(finishMaybe, stream, state);\n stream._writableState.errorEmitted = true;\n stream.emit('error', er);\n } else {\n // the caller expect this to happen before if\n // it is async\n cb(er);\n stream._writableState.errorEmitted = true;\n stream.emit('error', er);\n // this can emit finish, but finish must\n // always follow error\n finishMaybe(stream, state);\n }\n}\n\nfunction onwriteStateUpdate(state) {\n state.writing = false;\n state.writecb = null;\n state.length -= state.writelen;\n state.writelen = 0;\n}\n\nfunction onwrite(stream, er) {\n var state = stream._writableState;\n var sync = state.sync;\n var cb = state.writecb;\n\n onwriteStateUpdate(state);\n\n if (er) onwriteError(stream, state, sync, er, cb);else {\n // Check if we're actually ready to finish, but don't emit yet\n var finished = needFinish(state);\n\n if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {\n clearBuffer(stream, state);\n }\n\n if (sync) {\n /**/\n asyncWrite(afterWrite, stream, state, finished, cb);\n /**/\n } else {\n afterWrite(stream, state, finished, cb);\n }\n }\n}\n\nfunction afterWrite(stream, state, finished, cb) {\n if (!finished) onwriteDrain(stream, state);\n state.pendingcb--;\n cb();\n finishMaybe(stream, state);\n}\n\n// Must force callback to be called on nextTick, so that we don't\n// emit 'drain' before the write() consumer gets the 'false' return\n// value, and has a chance to attach a 'drain' listener.\nfunction onwriteDrain(stream, state) {\n if (state.length === 0 && state.needDrain) {\n state.needDrain = false;\n stream.emit('drain');\n }\n}\n\n// if there's something in the buffer waiting, then process it\nfunction clearBuffer(stream, state) {\n state.bufferProcessing = true;\n var entry = state.bufferedRequest;\n\n if (stream._writev && entry && entry.next) {\n // Fast case, write everything using _writev()\n var l = state.bufferedRequestCount;\n var buffer = new Array(l);\n var holder = state.corkedRequestsFree;\n holder.entry = entry;\n\n var count = 0;\n var allBuffers = true;\n while (entry) {\n buffer[count] = entry;\n if (!entry.isBuf) allBuffers = false;\n entry = entry.next;\n count += 1;\n }\n buffer.allBuffers = allBuffers;\n\n doWrite(stream, state, true, state.length, buffer, '', holder.finish);\n\n // doWrite is almost always async, defer these to save a bit of time\n // as the hot path ends with doWrite\n state.pendingcb++;\n state.lastBufferedRequest = null;\n if (holder.next) {\n state.corkedRequestsFree = holder.next;\n holder.next = null;\n } else {\n state.corkedRequestsFree = new CorkedRequest(state);\n }\n state.bufferedRequestCount = 0;\n } else {\n // Slow case, write chunks one-by-one\n while (entry) {\n var chunk = entry.chunk;\n var encoding = entry.encoding;\n var cb = entry.callback;\n var len = state.objectMode ? 1 : chunk.length;\n\n doWrite(stream, state, false, len, chunk, encoding, cb);\n entry = entry.next;\n state.bufferedRequestCount--;\n // if we didn't call the onwrite immediately, then\n // it means that we need to wait until it does.\n // also, that means that the chunk and cb are currently\n // being processed, so move the buffer counter past them.\n if (state.writing) {\n break;\n }\n }\n\n if (entry === null) state.lastBufferedRequest = null;\n }\n\n state.bufferedRequest = entry;\n state.bufferProcessing = false;\n}\n\nWritable.prototype._write = function (chunk, encoding, cb) {\n cb(new Error('_write() is not implemented'));\n};\n\nWritable.prototype._writev = null;\n\nWritable.prototype.end = function (chunk, encoding, cb) {\n var state = this._writableState;\n\n if (typeof chunk === 'function') {\n cb = chunk;\n chunk = null;\n encoding = null;\n } else if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (chunk !== null && chunk !== undefined) this.write(chunk, encoding);\n\n // .end() fully uncorks\n if (state.corked) {\n state.corked = 1;\n this.uncork();\n }\n\n // ignore unnecessary end() calls.\n if (!state.ending && !state.finished) endWritable(this, state, cb);\n};\n\nfunction needFinish(state) {\n return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;\n}\nfunction callFinal(stream, state) {\n stream._final(function (err) {\n state.pendingcb--;\n if (err) {\n stream.emit('error', err);\n }\n state.prefinished = true;\n stream.emit('prefinish');\n finishMaybe(stream, state);\n });\n}\nfunction prefinish(stream, state) {\n if (!state.prefinished && !state.finalCalled) {\n if (typeof stream._final === 'function') {\n state.pendingcb++;\n state.finalCalled = true;\n pna.nextTick(callFinal, stream, state);\n } else {\n state.prefinished = true;\n stream.emit('prefinish');\n }\n }\n}\n\nfunction finishMaybe(stream, state) {\n var need = needFinish(state);\n if (need) {\n prefinish(stream, state);\n if (state.pendingcb === 0) {\n state.finished = true;\n stream.emit('finish');\n }\n }\n return need;\n}\n\nfunction endWritable(stream, state, cb) {\n state.ending = true;\n finishMaybe(stream, state);\n if (cb) {\n if (state.finished) pna.nextTick(cb);else stream.once('finish', cb);\n }\n state.ended = true;\n stream.writable = false;\n}\n\nfunction onCorkedFinish(corkReq, state, err) {\n var entry = corkReq.entry;\n corkReq.entry = null;\n while (entry) {\n var cb = entry.callback;\n state.pendingcb--;\n cb(err);\n entry = entry.next;\n }\n if (state.corkedRequestsFree) {\n state.corkedRequestsFree.next = corkReq;\n } else {\n state.corkedRequestsFree = corkReq;\n }\n}\n\nObject.defineProperty(Writable.prototype, 'destroyed', {\n get: function () {\n if (this._writableState === undefined) {\n return false;\n }\n return this._writableState.destroyed;\n },\n set: function (value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._writableState) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._writableState.destroyed = value;\n }\n});\n\nWritable.prototype.destroy = destroyImpl.destroy;\nWritable.prototype._undestroy = destroyImpl.undestroy;\nWritable.prototype._destroy = function (err, cb) {\n this.end();\n cb(err);\n};","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.toType = exports.TypeOutput = exports.bnToRlp = exports.bnToUnpaddedBuffer = exports.bnToHex = void 0;\nvar externals_1 = require(\"./externals\");\nvar internal_1 = require(\"./internal\");\nvar bytes_1 = require(\"./bytes\");\n/**\n * Convert BN to 0x-prefixed hex string.\n */\nfunction bnToHex(value) {\n return \"0x\".concat(value.toString(16));\n}\nexports.bnToHex = bnToHex;\n/**\n * Convert value from BN to an unpadded Buffer\n * (useful for RLP transport)\n * @param value value to convert\n */\nfunction bnToUnpaddedBuffer(value) {\n // Using `bn.toArrayLike(Buffer)` instead of `bn.toBuffer()`\n // for compatibility with browserify and similar tools\n return (0, bytes_1.unpadBuffer)(value.toArrayLike(Buffer));\n}\nexports.bnToUnpaddedBuffer = bnToUnpaddedBuffer;\n/**\n * Deprecated alias for {@link bnToUnpaddedBuffer}\n * @deprecated\n */\nfunction bnToRlp(value) {\n return bnToUnpaddedBuffer(value);\n}\nexports.bnToRlp = bnToRlp;\n/**\n * Type output options\n */\nvar TypeOutput;\n(function (TypeOutput) {\n TypeOutput[TypeOutput[\"Number\"] = 0] = \"Number\";\n TypeOutput[TypeOutput[\"BN\"] = 1] = \"BN\";\n TypeOutput[TypeOutput[\"Buffer\"] = 2] = \"Buffer\";\n TypeOutput[TypeOutput[\"PrefixedHexString\"] = 3] = \"PrefixedHexString\";\n})(TypeOutput = exports.TypeOutput || (exports.TypeOutput = {}));\nfunction toType(input, outputType) {\n if (input === null) {\n return null;\n }\n if (input === undefined) {\n return undefined;\n }\n if (typeof input === 'string' && !(0, internal_1.isHexString)(input)) {\n throw new Error(\"A string must be provided with a 0x-prefix, given: \".concat(input));\n }\n else if (typeof input === 'number' && !Number.isSafeInteger(input)) {\n throw new Error('The provided number is greater than MAX_SAFE_INTEGER (please use an alternative input type)');\n }\n var output = (0, bytes_1.toBuffer)(input);\n if (outputType === TypeOutput.Buffer) {\n return output;\n }\n else if (outputType === TypeOutput.BN) {\n return new externals_1.BN(output);\n }\n else if (outputType === TypeOutput.Number) {\n var bn = new externals_1.BN(output);\n var max = new externals_1.BN(Number.MAX_SAFE_INTEGER.toString());\n if (bn.gt(max)) {\n throw new Error('The provided number is greater than MAX_SAFE_INTEGER (please use an alternative output type)');\n }\n return bn.toNumber();\n }\n else {\n // outputType === TypeOutput.PrefixedHexString\n return \"0x\".concat(output.toString('hex'));\n }\n}\nexports.toType = toType;\n//# sourceMappingURL=types.js.map","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file index.js\r\n * @author Fabian Vogelsteller \r\n * @date 2017\r\n */\r\n\"use strict\";\r\nvar Subscription = require('./subscription.js');\r\nvar Subscriptions = function Subscriptions(options) {\r\n this.name = options.name;\r\n this.type = options.type;\r\n this.subscriptions = options.subscriptions || {};\r\n this.requestManager = null;\r\n};\r\nSubscriptions.prototype.setRequestManager = function (rm) {\r\n this.requestManager = rm;\r\n};\r\nSubscriptions.prototype.attachToObject = function (obj) {\r\n var func = this.buildCall();\r\n var name = this.name.split('.');\r\n if (name.length > 1) {\r\n obj[name[0]] = obj[name[0]] || {};\r\n obj[name[0]][name[1]] = func;\r\n }\r\n else {\r\n obj[name[0]] = func;\r\n }\r\n};\r\nSubscriptions.prototype.buildCall = function () {\r\n var _this = this;\r\n return function () {\r\n if (!_this.subscriptions[arguments[0]]) {\r\n console.warn('Subscription ' + JSON.stringify(arguments[0]) + ' doesn\\'t exist. Subscribing anyway.');\r\n }\r\n var subscription = new Subscription({\r\n subscription: _this.subscriptions[arguments[0]] || {},\r\n requestManager: _this.requestManager,\r\n type: _this.type\r\n });\r\n return subscription.subscribe.apply(subscription, arguments);\r\n };\r\n};\r\nmodule.exports = {\r\n subscriptions: Subscriptions,\r\n subscription: Subscription\r\n};\r\n","import BadKeyError from \"./BadKeyError.js\";\nimport Ed25519PublicKey from \"./Ed25519PublicKey.js\";\nimport nacl from \"tweetnacl\";\nimport { arrayStartsWith } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\nimport * as random from \"./primitive/random.js\";\n\nexport const derPrefix = \"302e020100300506032b657004220420\";\nexport const derPrefixBytes = hex.decode(derPrefix);\n\nexport default class Ed25519PrivateKey {\n /**\n * @hideconstructor\n * @internal\n * @param {nacl.SignKeyPair | Uint8Array} keyPair\n * @param {Uint8Array=} chainCode\n */\n constructor(keyPair, chainCode) {\n /**\n * @type {nacl.SignKeyPair}\n * @readonly\n * @private\n */\n this._keyPair =\n keyPair instanceof Uint8Array\n ? nacl.sign.keyPair.fromSeed(keyPair)\n : keyPair;\n\n /**\n * @type {?Uint8Array}\n * @readonly\n */\n this._chainCode = chainCode != null ? chainCode : null;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"ED25519\";\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Ed25519PrivateKey}\n */\n static generate() {\n // 32 bytes for the secret key\n // 32 bytes for the chain code (to support derivation)\n const entropy = random.bytes(64);\n\n return new Ed25519PrivateKey(\n nacl.sign.keyPair.fromSeed(entropy.subarray(0, 32)),\n entropy.subarray(32)\n );\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateAsync() {\n // 32 bytes for the secret key\n // 32 bytes for the chain code (to support derivation)\n const entropy = await random.bytesAsync(64);\n\n return new Ed25519PrivateKey(\n nacl.sign.keyPair.fromSeed(entropy.subarray(0, 32)),\n entropy.subarray(32)\n );\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {Ed25519PrivateKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 48:\n return Ed25519PrivateKey.fromBytesDer(data);\n case 32:\n case 64:\n return Ed25519PrivateKey.fromBytesRaw(data);\n default:\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * Construct a private key from bytes with DER header.\n *\n * @param {Uint8Array} data\n * @returns {Ed25519PrivateKey}\n */\n static fromBytesDer(data) {\n if (data.length != 48 || !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n\n const keyPair = nacl.sign.keyPair.fromSeed(data.subarray(16));\n\n return new Ed25519PrivateKey(keyPair);\n }\n\n /**\n * Construct a private key from bytes without DER header.\n *\n * @param {Uint8Array} data\n * @returns {Ed25519PrivateKey}\n */\n static fromBytesRaw(data) {\n switch (data.length) {\n case 32:\n return new Ed25519PrivateKey(nacl.sign.keyPair.fromSeed(data));\n\n case 64:\n // priv + pub key\n return new Ed25519PrivateKey(\n nacl.sign.keyPair.fromSecretKey(data)\n );\n\n default:\n }\n\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {Ed25519PrivateKey}\n */\n static fromString(text) {\n return Ed25519PrivateKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {Ed25519PrivateKey}\n */\n static fromStringDer(text) {\n return Ed25519PrivateKey.fromBytesDer(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {Ed25519PrivateKey}\n */\n static fromStringRaw(text) {\n return Ed25519PrivateKey.fromBytesRaw(hex.decode(text));\n }\n\n /**\n * Get the public key associated with this private key.\n *\n * The public key can be freely given and used by other parties to verify\n * the signatures generated by this private key.\n *\n * @returns {Ed25519PublicKey}\n */\n get publicKey() {\n return new Ed25519PublicKey(this._keyPair.publicKey);\n }\n\n /**\n * Sign a message with this private key.\n *\n * @param {Uint8Array} bytes\n * @returns {Uint8Array} - The signature bytes without the message\n */\n sign(bytes) {\n return nacl.sign.detached(bytes, this._keyPair.secretKey);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(derPrefixBytes.length + 32);\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(\n this._keyPair.secretKey.subarray(0, 32),\n derPrefixBytes.length\n );\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n // copy the bytes so they can't be modified accidentally\n return this._keyPair.secretKey.slice(0, 32);\n }\n}\n","import nacl from \"tweetnacl\";\n\n/**\n * @param {number} count\n * @returns {Uint8Array}\n */\nexport function bytes(count) {\n return nacl.randomBytes(count);\n}\n\n/**\n * @param {number} count\n * @returns {Promise}\n */\nexport function bytesAsync(count) {\n return Promise.resolve(nacl.randomBytes(count));\n}\n","/**\n * Possible statuses for {@link Mnemonic#validate()}.\n *\n * @readonly\n * @enum {string}\n */\nconst BadMnemonicReason = Object.freeze({\n /**\n * The mnemonic did not have a supported number of words (12 or 24 for regular and 22 for legacy).\n */\n BadLength: \"BadLength\",\n\n /**\n * The mnemonic contained words which were not found in the word list.\n */\n UnknownWords: \"UnknownWords\",\n\n /**\n * The checksum encoded in the mnemonic did not match the checksum we just calculated for\n * that mnemonic.\n *\n * 24-word mnemonics have an 8-bit checksum that is appended to the 32 bytes of source entropy\n * after being calculated from it, before being encoded into words.\n *\n * This could happen if two or more of the words were entered out of the original order or\n * replaced with another from the standard word list (as this is only returned if all the words\n * exist in the word list).\n */\n ChecksumMismatch: \"ChecksumMismatch\",\n});\n\nexport default BadMnemonicReason;\n","/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function decode(data) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextDecoder().decode(data);\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function encode(text) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextEncoder().encode(text);\n}\n","'use strict';\n\nvar curves = exports;\n\nvar hash = require('hash.js');\nvar curve = require('./curve');\nvar utils = require('./utils');\n\nvar assert = utils.assert;\n\nfunction PresetCurve(options) {\n if (options.type === 'short')\n this.curve = new curve.short(options);\n else if (options.type === 'edwards')\n this.curve = new curve.edwards(options);\n else\n this.curve = new curve.mont(options);\n this.g = this.curve.g;\n this.n = this.curve.n;\n this.hash = options.hash;\n\n assert(this.g.validate(), 'Invalid curve');\n assert(this.g.mul(this.n).isInfinity(), 'Invalid curve, G*N != O');\n}\ncurves.PresetCurve = PresetCurve;\n\nfunction defineCurve(name, options) {\n Object.defineProperty(curves, name, {\n configurable: true,\n enumerable: true,\n get: function() {\n var curve = new PresetCurve(options);\n Object.defineProperty(curves, name, {\n configurable: true,\n enumerable: true,\n value: curve,\n });\n return curve;\n },\n });\n}\n\ndefineCurve('p192', {\n type: 'short',\n prime: 'p192',\n p: 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff',\n a: 'ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc',\n b: '64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1',\n n: 'ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831',\n hash: hash.sha256,\n gRed: false,\n g: [\n '188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012',\n '07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811',\n ],\n});\n\ndefineCurve('p224', {\n type: 'short',\n prime: 'p224',\n p: 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001',\n a: 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe',\n b: 'b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4',\n n: 'ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d',\n hash: hash.sha256,\n gRed: false,\n g: [\n 'b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21',\n 'bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34',\n ],\n});\n\ndefineCurve('p256', {\n type: 'short',\n prime: null,\n p: 'ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff',\n a: 'ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc',\n b: '5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b',\n n: 'ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551',\n hash: hash.sha256,\n gRed: false,\n g: [\n '6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296',\n '4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5',\n ],\n});\n\ndefineCurve('p384', {\n type: 'short',\n prime: null,\n p: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'fffffffe ffffffff 00000000 00000000 ffffffff',\n a: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'fffffffe ffffffff 00000000 00000000 fffffffc',\n b: 'b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f ' +\n '5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef',\n n: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 ' +\n 'f4372ddf 581a0db2 48b0a77a ecec196a ccc52973',\n hash: hash.sha384,\n gRed: false,\n g: [\n 'aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 ' +\n '5502f25d bf55296c 3a545e38 72760ab7',\n '3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 ' +\n '0a60b1ce 1d7e819d 7a431d7c 90ea0e5f',\n ],\n});\n\ndefineCurve('p521', {\n type: 'short',\n prime: null,\n p: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff',\n a: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff fffffffc',\n b: '00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b ' +\n '99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd ' +\n '3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00',\n n: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 ' +\n 'f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409',\n hash: hash.sha512,\n gRed: false,\n g: [\n '000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 ' +\n '053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 ' +\n 'a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66',\n '00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 ' +\n '579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 ' +\n '3fad0761 353c7086 a272c240 88be9476 9fd16650',\n ],\n});\n\ndefineCurve('curve25519', {\n type: 'mont',\n prime: 'p25519',\n p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed',\n a: '76d06',\n b: '1',\n n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed',\n hash: hash.sha256,\n gRed: false,\n g: [\n '9',\n ],\n});\n\ndefineCurve('ed25519', {\n type: 'edwards',\n prime: 'p25519',\n p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed',\n a: '-1',\n c: '1',\n // -121665 * (121666^(-1)) (mod P)\n d: '52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3',\n n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed',\n hash: hash.sha256,\n gRed: false,\n g: [\n '216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a',\n\n // 4/5\n '6666666666666666666666666666666666666666666666666666666666666658',\n ],\n});\n\nvar pre;\ntry {\n pre = require('./precomputed/secp256k1');\n} catch (e) {\n pre = undefined;\n}\n\ndefineCurve('secp256k1', {\n type: 'short',\n prime: 'k256',\n p: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f',\n a: '0',\n b: '7',\n n: 'ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141',\n h: '1',\n hash: hash.sha256,\n\n // Precomputed endomorphism\n beta: '7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee',\n lambda: '5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72',\n basis: [\n {\n a: '3086d221a7d46bcde86c90e49284eb15',\n b: '-e4437ed6010e88286f547fa90abfe4c3',\n },\n {\n a: '114ca50f7a8e2f3f657c1108d9d44cfd8',\n b: '3086d221a7d46bcde86c90e49284eb15',\n },\n ],\n\n gRed: false,\n g: [\n '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798',\n '483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8',\n pre,\n ],\n});\n","var hash = exports;\n\nhash.utils = require('./hash/utils');\nhash.common = require('./hash/common');\nhash.sha = require('./hash/sha');\nhash.ripemd = require('./hash/ripemd');\nhash.hmac = require('./hash/hmac');\n\n// Proxy hash functions to the main object\nhash.sha1 = hash.sha.sha1;\nhash.sha256 = hash.sha.sha256;\nhash.sha224 = hash.sha.sha224;\nhash.sha384 = hash.sha.sha384;\nhash.sha512 = hash.sha.sha512;\nhash.ripemd160 = hash.ripemd.ripemd160;\n","/**\n * @typedef {import(\"./Status.js\").default} Status\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class StatusError extends Error {\n /**\n * @param {object} props\n * @param {Status} props.status\n * @param {TransactionId} props.transactionId\n * @param {string} message\n */\n constructor(props, message) {\n super(message);\n\n this.name = \"StatusError\";\n\n this.status = props.status;\n\n this.transactionId = props.transactionId;\n\n this.message = message;\n\n if (typeof Error.captureStackTrace !== \"undefined\") {\n Error.captureStackTrace(this, StatusError);\n }\n }\n}\n","/**\n * @template {any} T\n */\nexport default class List {\n constructor() {\n /** @type {T[]} */\n this.list = [];\n this.locked = false;\n this.index = 0;\n }\n\n /**\n * @param {T[]} list\n * @returns {this}\n */\n setList(list) {\n if (this.locked) {\n throw new Error(\"list is locked\");\n }\n\n this.list = list;\n this.index = 0;\n\n return this;\n }\n\n /**\n * @param {T[]} items\n * @returns {this}\n */\n push(...items) {\n if (this.locked) {\n throw new Error(\"list is locked\");\n }\n\n this.list.push(...items);\n return this;\n }\n\n /**\n * @returns {this}\n */\n setLocked() {\n this.locked = true;\n return this;\n }\n\n clear() {\n if (this.locked) {\n throw new Error(\"list is locked\");\n }\n\n this.list = [];\n }\n\n /**\n * @param {number} index\n * @returns {T}\n */\n get(index) {\n return this.list[index];\n }\n\n /**\n * @param {number} index\n * @param {T} item\n * @returns {this}\n */\n set(index, item) {\n if (this.locked) {\n throw new Error(\"list is locked\");\n }\n\n if (index == this.length) {\n this.list.push(item);\n } else {\n this.list[index] = item;\n }\n\n return this;\n }\n\n /**\n * @param {number} index\n * @param {() => T} lambda\n * @returns {this}\n */\n setIfAbsent(index, lambda) {\n if (index == this.length || this.list[index] == null) {\n this.set(index, lambda());\n }\n\n return this;\n }\n\n /**\n * @returns {T}\n */\n get next() {\n return this.get(this.advance());\n }\n\n /**\n * @returns {T}\n */\n get current() {\n let index = this.index - 1;\n if (index < 0) {\n index = this.length - 1;\n }\n\n return this.get(index);\n }\n\n /**\n * @returns {number}\n */\n advance() {\n const index = this.index;\n this.index = (this.index + 1) % this.list.length;\n return index;\n }\n\n /**\n * @returns {boolean}\n */\n get isEmpty() {\n return this.length === 0;\n }\n\n /**\n * @returns {number}\n */\n get length() {\n return this.list.length;\n }\n}\n","import TransactionReceipt from \"./TransactionReceipt.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Hbar from \"../Hbar.js\";\nimport Transfer from \"../Transfer.js\";\nimport ContractFunctionResult from \"../contract/ContractFunctionResult.js\";\nimport TokenTransferMap from \"../account/TokenTransferMap.js\";\nimport TokenNftTransferMap from \"../account/TokenNftTransferMap.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport ScheduleId from \"../schedule/ScheduleId.js\";\nimport AssessedCustomFee from \"../token/AssessedCustomFee.js\";\nimport TokenAssocation from \"../token/TokenAssociation.js\";\nimport Key from \"../Key.js\";\nimport PublicKey from \"../PublicKey.js\";\nimport TokenTransfer from \"../token/TokenTransfer.js\";\n\n/**\n * @typedef {import(\"../token/TokenId.js\").default} TokenId\n */\n\n/**\n * Response when the client sends the node TransactionGetRecordResponse.\n */\nexport default class TransactionRecord {\n /**\n * @private\n * @param {object} props\n * @param {ContractFunctionResult} [props.contractFunctionResult]\n * @param {TransactionReceipt} props.receipt\n * @param {Uint8Array} props.transactionHash\n * @param {Timestamp} props.consensusTimestamp\n * @param {TransactionId} props.transactionId\n * @param {string} props.transactionMemo\n * @param {Hbar} props.transactionFee\n * @param {Transfer[]} props.transfers\n * @param {TokenTransferMap} props.tokenTransfers\n * @param {TokenTransfer[]} props.tokenTransfersList\n * @param {?ScheduleId} props.scheduleRef\n * @param {AssessedCustomFee[]} props.assessedCustomFees\n * @param {TokenNftTransferMap} props.nftTransfers\n * @param {TokenAssocation[]} props.automaticTokenAssociations\n * @param {Timestamp | null} props.parentConsensusTimestamp\n * @param {PublicKey | null} props.aliasKey\n * @param {TransactionRecord[]} props.duplicates\n * @param {TransactionRecord[]} props.children\n */\n constructor(props) {\n /**\n * The status (reach consensus, or failed, or is unknown) and the ID of\n * any new account/file/instance created.\n *\n * @readonly\n */\n this.receipt = props.receipt;\n\n /**\n * The hash of the Transaction that executed (not the hash of any Transaction that failed\n * for having a duplicate TransactionID).\n *\n * @readonly\n */\n this.transactionHash = props.transactionHash;\n\n /**\n * The consensus timestamp (or null if didn't reach consensus yet).\n *\n * @readonly\n */\n this.consensusTimestamp = props.consensusTimestamp;\n\n /**\n * The ID of the transaction this record represents.\n *\n * @readonly\n */\n this.transactionId = props.transactionId;\n\n /**\n * The memo that was submitted as part of the transaction (max 100 bytes).\n *\n * @readonly\n */\n this.transactionMemo = props.transactionMemo;\n\n /**\n * The actual transaction fee charged,\n * not the original transactionFee value from TransactionBody.\n *\n * @readonly\n */\n this.transactionFee = props.transactionFee;\n\n /**\n * All hbar transfers as a result of this transaction, such as fees, or transfers performed\n * by the transaction, or by a smart contract it calls, or by the creation of threshold\n * records that it triggers.\n *\n * @readonly\n */\n this.transfers = props.transfers;\n\n /**\n * Record of the value returned by the smart contract function or constructor.\n *\n * @readonly\n */\n this.contractFunctionResult =\n props.contractFunctionResult != null\n ? props.contractFunctionResult\n : null;\n\n /**\n * All the token transfers from this account\n *\n * @readonly\n */\n this.tokenTransfers = props.tokenTransfers;\n\n /**\n * All the token transfers from this account\n *\n * @readonly\n */\n this.tokenTransfersList = props.tokenTransfersList;\n\n /**\n * Reference to the scheduled transaction ID that this transaction record represent\n *\n * @readonly\n */\n this.scheduleRef = props.scheduleRef;\n\n /**\n * All custom fees that were assessed during a CryptoTransfer, and must be paid if the\n * transaction status resolved to SUCCESS\n *\n * @readonly\n */\n this.assessedCustomFees = props.assessedCustomFees;\n\n /** @readonly */\n this.nftTransfers = props.nftTransfers;\n\n /**\n * All token associations implicitly created while handling this transaction\n *\n * @readonly\n */\n this.automaticTokenAssociations = props.automaticTokenAssociations;\n\n /**\n * The parent consensus timestamp\n *\n * @readonly\n */\n this.parentConsensusTimestamp = props.parentConsensusTimestamp;\n\n this.aliasKey = props.aliasKey;\n\n /**\n * @readonly\n */\n this.duplicates = props.duplicates;\n\n /**\n * @readonly\n */\n this.children = props.children;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @returns {proto.ITransactionGetRecordResponse}\n */\n _toProtobuf() {\n const tokenTransfers = this.tokenTransfers._toProtobuf();\n const nftTransfers = this.nftTransfers._toProtobuf();\n\n const tokenTransferLists = [];\n\n for (const tokenTransfer of tokenTransfers) {\n for (const nftTransfer of nftTransfers) {\n if (\n tokenTransfer.token != null &&\n nftTransfer.token != null &&\n tokenTransfer.token.shardNum ===\n nftTransfer.token.shardNum &&\n tokenTransfer.token.realmNum ===\n nftTransfer.token.realmNum &&\n tokenTransfer.token.tokenNum === nftTransfer.token.tokenNum\n ) {\n tokenTransferLists.push({\n token: tokenTransfer.token,\n transfers: tokenTransfer.transfers,\n nftTransfers: tokenTransfer.nftTransfers,\n });\n } else {\n tokenTransferLists.push(tokenTransfer);\n tokenTransferLists.push(nftTransfer);\n }\n }\n }\n\n const duplicates = this.duplicates.map(\n (record) =>\n /** @type {proto.ITransactionRecord} */ (\n record._toProtobuf().transactionRecord\n )\n );\n const children = this.children.map(\n (record) =>\n /** @type {proto.ITransactionRecord} */ (\n record._toProtobuf().transactionRecord\n )\n );\n\n return {\n duplicateTransactionRecords: duplicates,\n childTransactionRecords: children,\n transactionRecord: {\n receipt: this.receipt._toProtobuf().receipt,\n\n transactionHash:\n this.transactionHash != null ? this.transactionHash : null,\n consensusTimestamp:\n this.consensusTimestamp != null\n ? this.consensusTimestamp._toProtobuf()\n : null,\n transactionID:\n this.transactionId != null\n ? this.transactionId._toProtobuf()\n : null,\n memo:\n this.transactionMemo != null ? this.transactionMemo : null,\n\n transactionFee:\n this.transactionFee != null\n ? this.transactionFee.toTinybars()\n : null,\n\n // TODO: Implement `ContractFunctionResult._toProtobuf()`\n // contractCallResult:\n // this.contractFunctionResult != null\n // ? this.contractFunctionResult\n // : null,\n //\n // contractCreateResult:\n // this.contractFunctionResult != null\n // ? this.contractFunctionResult\n // : null,\n\n transferList:\n this.transfers != null\n ? {\n accountAmounts: this.transfers.map((transfer) =>\n transfer._toProtobuf()\n ),\n }\n : null,\n tokenTransferLists,\n scheduleRef:\n this.scheduleRef != null\n ? this.scheduleRef._toProtobuf()\n : null,\n assessedCustomFees: this.assessedCustomFees.map((fee) =>\n fee._toProtobuf()\n ),\n automaticTokenAssociations: this.automaticTokenAssociations.map(\n (association) => association._toProtobuf()\n ),\n parentConsensusTimestamp:\n this.parentConsensusTimestamp != null\n ? this.parentConsensusTimestamp._toProtobuf()\n : null,\n alias:\n this.aliasKey != null\n ? proto.Key.encode(\n this.aliasKey._toProtobufKey()\n ).finish()\n : null,\n },\n };\n }\n\n /**\n * @internal\n * @param {proto.ITransactionGetRecordResponse} response\n * @returns {TransactionRecord}\n */\n static _fromProtobuf(response) {\n const record = /** @type {proto.ITransactionRecord} */ (\n response.transactionRecord\n );\n\n let aliasKey =\n record.alias != null && record.alias.length > 0\n ? Key._fromProtobufKey(proto.Key.decode(record.alias))\n : null;\n\n if (!(aliasKey instanceof PublicKey)) {\n aliasKey = null;\n }\n\n const children =\n response.childTransactionRecords != null\n ? response.childTransactionRecords.map((child) =>\n TransactionRecord._fromProtobuf({\n transactionRecord: child,\n })\n )\n : [];\n\n const duplicates =\n response.duplicateTransactionRecords != null\n ? response.duplicateTransactionRecords.map((duplicate) =>\n TransactionRecord._fromProtobuf({\n transactionRecord: duplicate,\n })\n )\n : [];\n\n const contractFunctionResult =\n record.contractCallResult != null\n ? ContractFunctionResult._fromProtobuf(\n record.contractCallResult\n )\n : record.contractCreateResult != null\n ? ContractFunctionResult._fromProtobuf(\n record.contractCreateResult\n )\n : undefined;\n\n return new TransactionRecord({\n receipt: TransactionReceipt._fromProtobuf({\n receipt: /** @type {proto.ITransactionReceipt} */ (\n record.receipt\n ),\n }),\n transactionHash:\n record.transactionHash != null\n ? record.transactionHash\n : new Uint8Array(),\n consensusTimestamp: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (record.consensusTimestamp)\n ),\n transactionId: TransactionId._fromProtobuf(\n /** @type {proto.ITransactionID} */ (record.transactionID)\n ),\n transactionMemo: record.memo != null ? record.memo : \"\",\n transactionFee: Hbar.fromTinybars(\n record.transactionFee != null ? record.transactionFee : 0\n ),\n transfers: Transfer._fromProtobuf(\n record.transferList != null\n ? record.transferList.accountAmounts != null\n ? record.transferList.accountAmounts\n : []\n : []\n ),\n contractFunctionResult,\n tokenTransfers: TokenTransferMap._fromProtobuf(\n record.tokenTransferLists != null\n ? record.tokenTransferLists\n : []\n ),\n tokenTransfersList: TokenTransfer._fromProtobuf(\n record.tokenTransferLists != null\n ? record.tokenTransferLists\n : []\n ),\n scheduleRef:\n record.scheduleRef != null\n ? ScheduleId._fromProtobuf(record.scheduleRef)\n : null,\n assessedCustomFees:\n record.assessedCustomFees != null\n ? record.assessedCustomFees.map((fee) =>\n AssessedCustomFee._fromProtobuf(fee)\n )\n : [],\n nftTransfers: TokenNftTransferMap._fromProtobuf(\n record.tokenTransferLists != null\n ? record.tokenTransferLists\n : []\n ),\n automaticTokenAssociations:\n record.automaticTokenAssociations != null\n ? record.automaticTokenAssociations.map((association) =>\n TokenAssocation._fromProtobuf(association)\n )\n : [],\n parentConsensusTimestamp:\n record.parentConsensusTimestamp != null\n ? Timestamp._fromProtobuf(record.parentConsensusTimestamp)\n : null,\n aliasKey,\n duplicates,\n children,\n });\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TransactionRecord}\n */\n static fromBytes(bytes) {\n return TransactionRecord._fromProtobuf(\n proto.TransactionGetRecordResponse.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TransactionGetRecordResponse.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import AccountId from \"./account/AccountId.js\";\nimport Hbar from \"./Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"long\")} Long\n */\n\n/**\n * An account, and the amount that it sends or receives during a cryptocurrency transfer.\n */\nexport default class Transfer {\n /**\n * @internal\n * @param {object} props\n * @param {AccountId | string} props.accountId\n * @param {number | string | Long | BigNumber | Hbar} props.amount\n * @param {boolean} props.isApproved\n */\n constructor(props) {\n /**\n * The Account ID that sends or receives cryptocurrency.\n *\n * @readonly\n */\n this.accountId =\n props.accountId instanceof AccountId\n ? props.accountId\n : AccountId.fromString(props.accountId);\n\n /**\n * The amount of tinybars that the account sends(negative) or receives(positive).\n */\n this.amount =\n props.amount instanceof Hbar\n ? props.amount\n : new Hbar(props.amount);\n\n this.isApproved = props.isApproved;\n }\n\n /**\n * @internal\n * @param {proto.IAccountAmount[]} accountAmounts\n * @returns {Transfer[]}\n */\n static _fromProtobuf(accountAmounts) {\n const transfers = [];\n\n for (const transfer of accountAmounts) {\n transfers.push(\n new Transfer({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (transfer.accountID)\n ),\n amount: Hbar.fromTinybars(\n transfer.amount != null ? transfer.amount : 0\n ),\n isApproved: /** @type {boolean} */ (transfer.isApproval),\n })\n );\n }\n\n return transfers;\n }\n\n /**\n * @internal\n * @returns {proto.IAccountAmount}\n */\n _toProtobuf() {\n return {\n accountID: this.accountId._toProtobuf(),\n amount: this.amount.toTinybars(),\n isApproval: this.isApproved,\n };\n }\n}\n","import ContractLogInfo from \"./ContractLogInfo.js\";\nimport ContractId from \"./ContractId.js\";\nimport BigNumber from \"bignumber.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\nimport * as util from \"../util.js\";\nimport Long from \"long\";\nimport ContractStateChange from \"./ContractStateChange.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IContractFunctionResult} proto.IContractFunctionResult\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n */\n/**\n * The result returned by a call to a smart contract function. This is part of the response to\n * a ContractCallLocal query, and is in the record for a ContractCall or ContractCreateInstance\n * transaction. The ContractCreateInstance transaction record has the results of the call to\n * the constructor.\n */\nexport default class ContractFunctionResult {\n /**\n * Constructor isn't part of the stable API\n *\n * @param {object} result\n * @param {?ContractId} result.contractId\n * @param {?string} result.errorMessage\n * @param {Uint8Array} result.bloom\n * @param {Long} result.gasUsed\n * @param {ContractLogInfo[]} result.logs\n * @param {ContractId[]} result.createdContractIds\n * @param {Uint8Array | null} result.evmAddress\n * @param {ContractStateChange[]} result.stateChanges\n * @param {Uint8Array} result.bytes\n */\n constructor(result) {\n /**\n * The smart contract instance whose function was called.\n */\n this.contractId = result.contractId;\n\n this.bytes = result.bytes;\n\n /**\n * Message In case there was an error during smart contract execution.\n */\n this.errorMessage = result.errorMessage;\n\n /**\n * Bloom filter for record\n */\n this.bloom = result.bloom;\n\n /**\n * Units of gas used to execute contract.\n */\n this.gasUsed = result.gasUsed;\n\n /**\n * The log info for events returned by the function.\n */\n this.logs = result.logs;\n\n /**\n * @deprecated the list of smart contracts that were created by the function call.\n *\n * The created ids will now _also_ be externalized through internal transaction\n * records, where each record has its alias field populated with the new contract's\n * EVM address. (This is needed for contracts created with CREATE2, since\n * there is no longer a simple relationship between the new contract's 0.0.X id\n * and its Solidity address.)\n */\n // eslint-disable-next-line deprecation/deprecation\n this.createdContractIds = result.createdContractIds;\n\n this.evmAddress = result.evmAddress;\n\n this.stateChanges = result.stateChanges;\n }\n\n /**\n * @param {proto.IContractFunctionResult} result\n * @returns {ContractFunctionResult}\n */\n static _fromProtobuf(result) {\n const contractId = /** @type {proto.IContractID | null} */ (\n result.contractID\n );\n const gas = /** @type {Long | number} */ (result.gasUsed);\n\n return new ContractFunctionResult({\n bytes: /** @type {Uint8Array} */ (result.contractCallResult),\n contractId:\n contractId != null\n ? ContractId._fromProtobuf(contractId)\n : null,\n errorMessage:\n result.errorMessage != null ? result.errorMessage : null,\n bloom: /** @type {Uint8Array} */ (result.bloom),\n gasUsed: gas instanceof Long ? gas : Long.fromValue(gas),\n logs: (result.logInfo != null ? result.logInfo : []).map((info) =>\n ContractLogInfo._fromProtobuf(info)\n ),\n createdContractIds: (result.createdContractIDs != null\n ? result.createdContractIDs\n : []\n ).map((contractId) => ContractId._fromProtobuf(contractId)),\n evmAddress:\n result.evmAddress != null && result.evmAddress.value != null\n ? result.evmAddress.value\n : null,\n stateChanges: (result.stateChanges != null\n ? result.stateChanges\n : []\n ).map((change) => ContractStateChange._fromProtobuf(change)),\n });\n }\n\n /**\n * @returns {Uint8Array}\n */\n asBytes() {\n return this.bytes;\n }\n\n /**\n * @param {number} [index]\n * @returns {string}\n */\n getString(index) {\n return utf8.decode(this.getBytes(index));\n }\n\n /**\n * @private\n * @param {number} [index]\n * @returns {Uint8Array}\n */\n getBytes(index) {\n // Len should never be larger than Number.MAX\n // index * 32 is the position of the lenth\n // (index + 1) * 32 onward to (index + 1) * 32 + len will be the elements of the array\n // Arrays in solidity cannot be longer than 1024:\n // https://solidity.readthedocs.io/en/v0.4.21/introduction-to-smart-contracts.html\n const offset = this.getInt32(index);\n const len = util.safeView(this.bytes).getInt32(offset + 28);\n\n return this.bytes.subarray(offset + 32, offset + 32 + len);\n }\n\n /**\n * @param {number} [index]\n * @returns {Uint8Array}\n */\n getBytes32(index) {\n return this.bytes.subarray(\n (index != null ? index : 0) * 32,\n (index != null ? index : 0) * 32 + 32\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {boolean}\n */\n getBool(index) {\n return this.bytes[(index != null ? index : 0) * 32 + 31] !== 0;\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getInt8(index) {\n return this.bytes[(index != null ? index : 0) * 32 + 31];\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getInt32(index) {\n // .getInt32() interprets as big-endian\n // Using DataView instead of Uint32Array because the latter interprets\n // using platform endianness which is little-endian on x86\n const position = (index != null ? index : 0) * 32 + 28;\n return util.safeView(this.bytes).getInt32(position);\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getInt64(index) {\n return new BigNumber(\n hex.encode(\n this._getBytes32(index != null ? index : 0).subarray(24, 32)\n ),\n 16\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getInt256(index) {\n return new BigNumber(\n hex.encode(this._getBytes32(index != null ? index : 0)),\n 16\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getUint8(index) {\n return this.bytes[(index != null ? index : 0) * 32 + 31];\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getUint32(index) {\n // .getUint32() interprets as big-endian\n // Using DataView instead of Uint32Array because the latter interprets\n // using platform endianness which is little-endian on x86\n const position = (index != null ? index : 0) * 32 + 28;\n return util.safeView(this.bytes).getUint32(position);\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getUint64(index) {\n return new BigNumber(\n hex.encode(this._getBytes32(index).subarray(24, 32)),\n 16\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getUint256(index) {\n return new BigNumber(hex.encode(this._getBytes32(index)), 16);\n }\n\n /**\n * @param {number} [index]\n * @returns {string}\n */\n getAddress(index) {\n return hex.encode(\n this.bytes.subarray(\n (index != null ? index : 0) * 32 + 12,\n (index != null ? index : 0) * 32 + 32\n )\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {Uint8Array}\n */\n _getBytes32(index) {\n return this.bytes.subarray(\n (index != null ? index : 0) * 32,\n (index != null ? index : 0) * 32 + 32\n );\n }\n}\n","import AccountId from \"./AccountId.js\";\nimport Duration from \"../Duration.js\";\nimport KeyList from \"../KeyList.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ILiveHash} proto.ILiveHash\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n */\n\n/**\n * Response when the client sends the node CryptoGetInfoQuery.\n */\nexport default class LiveHash {\n /**\n * @private\n * @param {object} props\n * @param {AccountId} props.accountId\n * @param {Uint8Array} props.hash\n * @param {KeyList} props.keys\n * @param {Duration} props.duration\n */\n constructor(props) {\n /** @readonly */\n this.accountId = props.accountId;\n\n /** @readonly */\n this.hash = props.hash;\n\n /** @readonly */\n this.keys = props.keys;\n\n /** @readonly */\n this.duration = props.duration;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ILiveHash} liveHash\n * @returns {LiveHash}\n */\n static _fromProtobuf(liveHash) {\n const liveHash_ = /** @type {proto.ILiveHash} */ (liveHash);\n\n return new LiveHash({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (liveHash_.accountId)\n ),\n hash: liveHash_.hash != null ? liveHash_.hash : new Uint8Array(),\n keys:\n liveHash_.keys != null\n ? KeyList.__fromProtobufKeyList(liveHash_.keys)\n : new KeyList(),\n duration: Duration._fromProtobuf(\n /** @type {proto.IDuration} */ (liveHash_.duration)\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.ILiveHash}\n */\n _toProtobuf() {\n return {\n accountId: this.accountId._toProtobuf(),\n hash: this.hash,\n keys: this.keys._toProtobufKey().keyList,\n duration: this.duration._toProtobuf(),\n };\n }\n}\n","/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").TokenType} proto.TokenType\n */\n\nexport default class TokenType {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case TokenType.FungibleCommon:\n return \"FUNGIBLE_COMMON\";\n case TokenType.NonFungibleUnique:\n return \"NON_FUNGIBLE_UNIQUE\";\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {TokenType}\n */\n static _fromCode(code) {\n switch (code) {\n case 0:\n return TokenType.FungibleCommon;\n case 1:\n return TokenType.NonFungibleUnique;\n }\n\n throw new Error(\n `(BUG) TokenType.fromCode() does not handle code: ${code}`\n );\n }\n\n /**\n * @returns {proto.TokenType}\n */\n valueOf() {\n return this._code;\n }\n}\n\n/**\n * Interchangeable value with one another, where any quantity of them has the\n * same value as another equal quantity if they are in the same class. Share\n * a single set of properties, not distinct from one another. Simply represented\n * as a balance or quantity to a given Hedera account.\n */\nTokenType.FungibleCommon = new TokenType(0);\n\n/**\n * Unique, not interchangeable with other tokens of the same type as they\n * typically have different values. Individually traced and can carry unique\n * properties (e.g. serial number).\n */\nTokenType.NonFungibleUnique = new TokenType(1);\n","/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").TokenSupplyType} proto.TokenSupplyType\n */\n\nexport default class TokenSupplyType {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case TokenSupplyType.Infinite:\n return \"INFINITE\";\n case TokenSupplyType.Finite:\n return \"FINITE\";\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {TokenSupplyType}\n */\n static _fromCode(code) {\n switch (code) {\n case 0:\n return TokenSupplyType.Infinite;\n case 1:\n return TokenSupplyType.Finite;\n }\n\n throw new Error(\n `(BUG) TokenSupplyType.fromCode() does not handle code: ${code}`\n );\n }\n\n /**\n * @returns {proto.TokenSupplyType}\n */\n valueOf() {\n return this._code;\n }\n}\n\n/**\n * Interchangeable value with one another, where any quantity of them has the\n * same value as another equal quantity if they are in the same class. Share\n * a single set of properties, not distinct from one another. Simply represented\n * as a balance or quantity to a given Hedera account.\n */\nTokenSupplyType.Infinite = new TokenSupplyType(0);\n\n/**\n * Unique, not interchangeable with other tokens of the same type as they\n * typically have different values. Individually traced and can carry unique\n * properties (e.g. serial number).\n */\nTokenSupplyType.Finite = new TokenSupplyType(1);\n","'use strict'\n\nexports.randomBytes = exports.rng = exports.pseudoRandomBytes = exports.prng = require('randombytes')\nexports.createHash = exports.Hash = require('create-hash')\nexports.createHmac = exports.Hmac = require('create-hmac')\n\nvar algos = require('browserify-sign/algos')\nvar algoKeys = Object.keys(algos)\nvar hashes = ['sha1', 'sha224', 'sha256', 'sha384', 'sha512', 'md5', 'rmd160'].concat(algoKeys)\nexports.getHashes = function () {\n return hashes\n}\n\nvar p = require('pbkdf2')\nexports.pbkdf2 = p.pbkdf2\nexports.pbkdf2Sync = p.pbkdf2Sync\n\nvar aes = require('browserify-cipher')\n\nexports.Cipher = aes.Cipher\nexports.createCipher = aes.createCipher\nexports.Cipheriv = aes.Cipheriv\nexports.createCipheriv = aes.createCipheriv\nexports.Decipher = aes.Decipher\nexports.createDecipher = aes.createDecipher\nexports.Decipheriv = aes.Decipheriv\nexports.createDecipheriv = aes.createDecipheriv\nexports.getCiphers = aes.getCiphers\nexports.listCiphers = aes.listCiphers\n\nvar dh = require('diffie-hellman')\n\nexports.DiffieHellmanGroup = dh.DiffieHellmanGroup\nexports.createDiffieHellmanGroup = dh.createDiffieHellmanGroup\nexports.getDiffieHellman = dh.getDiffieHellman\nexports.createDiffieHellman = dh.createDiffieHellman\nexports.DiffieHellman = dh.DiffieHellman\n\nvar sign = require('browserify-sign')\n\nexports.createSign = sign.createSign\nexports.Sign = sign.Sign\nexports.createVerify = sign.createVerify\nexports.Verify = sign.Verify\n\nexports.createECDH = require('create-ecdh')\n\nvar publicEncrypt = require('public-encrypt')\n\nexports.publicEncrypt = publicEncrypt.publicEncrypt\nexports.privateEncrypt = publicEncrypt.privateEncrypt\nexports.publicDecrypt = publicEncrypt.publicDecrypt\nexports.privateDecrypt = publicEncrypt.privateDecrypt\n\n// the least I can do is make error messages for the rest of the node.js/crypto api.\n// ;[\n// 'createCredentials'\n// ].forEach(function (name) {\n// exports[name] = function () {\n// throw new Error([\n// 'sorry, ' + name + ' is not implemented yet',\n// 'we accept pull requests',\n// 'https://github.com/crypto-browserify/crypto-browserify'\n// ].join('\\n'))\n// }\n// })\n\nvar rf = require('randomfill')\n\nexports.randomFill = rf.randomFill\nexports.randomFillSync = rf.randomFillSync\n\nexports.createCredentials = function () {\n throw new Error([\n 'sorry, createCredentials is not implemented yet',\n 'we accept pull requests',\n 'https://github.com/crypto-browserify/crypto-browserify'\n ].join('\\n'))\n}\n\nexports.constants = {\n 'DH_CHECK_P_NOT_SAFE_PRIME': 2,\n 'DH_CHECK_P_NOT_PRIME': 1,\n 'DH_UNABLE_TO_CHECK_GENERATOR': 4,\n 'DH_NOT_SUITABLE_GENERATOR': 8,\n 'NPN_ENABLED': 1,\n 'ALPN_ENABLED': 1,\n 'RSA_PKCS1_PADDING': 1,\n 'RSA_SSLV23_PADDING': 2,\n 'RSA_NO_PADDING': 3,\n 'RSA_PKCS1_OAEP_PADDING': 4,\n 'RSA_X931_PADDING': 5,\n 'RSA_PKCS1_PSS_PADDING': 6,\n 'POINT_CONVERSION_COMPRESSED': 2,\n 'POINT_CONVERSION_UNCOMPRESSED': 4,\n 'POINT_CONVERSION_HYBRID': 6\n}\n","'use strict';\n\nvar assert = require('minimalistic-assert');\n\nfunction Cipher(options) {\n this.options = options;\n\n this.type = this.options.type;\n this.blockSize = 8;\n this._init();\n\n this.buffer = new Array(this.blockSize);\n this.bufferOff = 0;\n}\nmodule.exports = Cipher;\n\nCipher.prototype._init = function _init() {\n // Might be overrided\n};\n\nCipher.prototype.update = function update(data) {\n if (data.length === 0)\n return [];\n\n if (this.type === 'decrypt')\n return this._updateDecrypt(data);\n else\n return this._updateEncrypt(data);\n};\n\nCipher.prototype._buffer = function _buffer(data, off) {\n // Append data to buffer\n var min = Math.min(this.buffer.length - this.bufferOff, data.length - off);\n for (var i = 0; i < min; i++)\n this.buffer[this.bufferOff + i] = data[off + i];\n this.bufferOff += min;\n\n // Shift next\n return min;\n};\n\nCipher.prototype._flushBuffer = function _flushBuffer(out, off) {\n this._update(this.buffer, 0, out, off);\n this.bufferOff = 0;\n return this.blockSize;\n};\n\nCipher.prototype._updateEncrypt = function _updateEncrypt(data) {\n var inputOff = 0;\n var outputOff = 0;\n\n var count = ((this.bufferOff + data.length) / this.blockSize) | 0;\n var out = new Array(count * this.blockSize);\n\n if (this.bufferOff !== 0) {\n inputOff += this._buffer(data, inputOff);\n\n if (this.bufferOff === this.buffer.length)\n outputOff += this._flushBuffer(out, outputOff);\n }\n\n // Write blocks\n var max = data.length - ((data.length - inputOff) % this.blockSize);\n for (; inputOff < max; inputOff += this.blockSize) {\n this._update(data, inputOff, out, outputOff);\n outputOff += this.blockSize;\n }\n\n // Queue rest\n for (; inputOff < data.length; inputOff++, this.bufferOff++)\n this.buffer[this.bufferOff] = data[inputOff];\n\n return out;\n};\n\nCipher.prototype._updateDecrypt = function _updateDecrypt(data) {\n var inputOff = 0;\n var outputOff = 0;\n\n var count = Math.ceil((this.bufferOff + data.length) / this.blockSize) - 1;\n var out = new Array(count * this.blockSize);\n\n // TODO(indutny): optimize it, this is far from optimal\n for (; count > 0; count--) {\n inputOff += this._buffer(data, inputOff);\n outputOff += this._flushBuffer(out, outputOff);\n }\n\n // Buffer rest of the input\n inputOff += this._buffer(data, inputOff);\n\n return out;\n};\n\nCipher.prototype.final = function final(buffer) {\n var first;\n if (buffer)\n first = this.update(buffer);\n\n var last;\n if (this.type === 'encrypt')\n last = this._finalEncrypt();\n else\n last = this._finalDecrypt();\n\n if (first)\n return first.concat(last);\n else\n return last;\n};\n\nCipher.prototype._pad = function _pad(buffer, off) {\n if (off === 0)\n return false;\n\n while (off < buffer.length)\n buffer[off++] = 0;\n\n return true;\n};\n\nCipher.prototype._finalEncrypt = function _finalEncrypt() {\n if (!this._pad(this.buffer, this.bufferOff))\n return [];\n\n var out = new Array(this.blockSize);\n this._update(this.buffer, 0, out, 0);\n return out;\n};\n\nCipher.prototype._unpad = function _unpad(buffer) {\n return buffer;\n};\n\nCipher.prototype._finalDecrypt = function _finalDecrypt() {\n assert.equal(this.bufferOff, this.blockSize, 'Not enough data to decrypt');\n var out = new Array(this.blockSize);\n this._flushBuffer(out, 0);\n\n return this._unpad(out);\n};\n","var ciphers = require('./encrypter')\nvar deciphers = require('./decrypter')\nvar modes = require('./modes/list.json')\n\nfunction getCiphers () {\n return Object.keys(modes)\n}\n\nexports.createCipher = exports.Cipher = ciphers.createCipher\nexports.createCipheriv = exports.Cipheriv = ciphers.createCipheriv\nexports.createDecipher = exports.Decipher = deciphers.createDecipher\nexports.createDecipheriv = exports.Decipheriv = deciphers.createDecipheriv\nexports.listCiphers = exports.getCiphers = getCiphers\n","var modeModules = {\n ECB: require('./ecb'),\n CBC: require('./cbc'),\n CFB: require('./cfb'),\n CFB8: require('./cfb8'),\n CFB1: require('./cfb1'),\n OFB: require('./ofb'),\n CTR: require('./ctr'),\n GCM: require('./ctr')\n}\n\nvar modes = require('./list.json')\n\nfor (var key in modes) {\n modes[key].module = modeModules[modes[key].mode]\n}\n\nmodule.exports = modes\n","// Ported from https://github.com/mafintosh/end-of-stream with\n// permission from the author, Mathias Buus (@mafintosh).\n'use strict';\n\nvar ERR_STREAM_PREMATURE_CLOSE = require('../../../errors').codes.ERR_STREAM_PREMATURE_CLOSE;\n\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n callback.apply(this, args);\n };\n}\n\nfunction noop() {}\n\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\n\nfunction eos(stream, opts, callback) {\n if (typeof opts === 'function') return eos(stream, null, opts);\n if (!opts) opts = {};\n callback = once(callback || noop);\n var readable = opts.readable || opts.readable !== false && stream.readable;\n var writable = opts.writable || opts.writable !== false && stream.writable;\n\n var onlegacyfinish = function onlegacyfinish() {\n if (!stream.writable) onfinish();\n };\n\n var writableEnded = stream._writableState && stream._writableState.finished;\n\n var onfinish = function onfinish() {\n writable = false;\n writableEnded = true;\n if (!readable) callback.call(stream);\n };\n\n var readableEnded = stream._readableState && stream._readableState.endEmitted;\n\n var onend = function onend() {\n readable = false;\n readableEnded = true;\n if (!writable) callback.call(stream);\n };\n\n var onerror = function onerror(err) {\n callback.call(stream, err);\n };\n\n var onclose = function onclose() {\n var err;\n\n if (readable && !readableEnded) {\n if (!stream._readableState || !stream._readableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n\n if (writable && !writableEnded) {\n if (!stream._writableState || !stream._writableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n };\n\n var onrequest = function onrequest() {\n stream.req.on('finish', onfinish);\n };\n\n if (isRequest(stream)) {\n stream.on('complete', onfinish);\n stream.on('abort', onclose);\n if (stream.req) onrequest();else stream.on('request', onrequest);\n } else if (writable && !stream._writableState) {\n // legacy streams\n stream.on('end', onlegacyfinish);\n stream.on('close', onlegacyfinish);\n }\n\n stream.on('end', onend);\n stream.on('finish', onfinish);\n if (opts.error !== false) stream.on('error', onerror);\n stream.on('close', onclose);\n return function () {\n stream.removeListener('complete', onfinish);\n stream.removeListener('abort', onclose);\n stream.removeListener('request', onrequest);\n if (stream.req) stream.req.removeListener('finish', onfinish);\n stream.removeListener('end', onlegacyfinish);\n stream.removeListener('close', onlegacyfinish);\n stream.removeListener('finish', onfinish);\n stream.removeListener('end', onend);\n stream.removeListener('error', onerror);\n stream.removeListener('close', onclose);\n };\n}\n\nmodule.exports = eos;","var BN = require('bn.js')\nvar randomBytes = require('randombytes')\n\nfunction blind (priv) {\n var r = getr(priv)\n var blinder = r.toRed(BN.mont(priv.modulus)).redPow(new BN(priv.publicExponent)).fromRed()\n return { blinder: blinder, unblinder: r.invm(priv.modulus) }\n}\n\nfunction getr (priv) {\n var len = priv.modulus.byteLength()\n var r\n do {\n r = new BN(randomBytes(len))\n } while (r.cmp(priv.modulus) >= 0 || !r.umod(priv.prime1) || !r.umod(priv.prime2))\n return r\n}\n\nfunction crt (msg, priv) {\n var blinds = blind(priv)\n var len = priv.modulus.byteLength()\n var blinded = new BN(msg).mul(blinds.blinder).umod(priv.modulus)\n var c1 = blinded.toRed(BN.mont(priv.prime1))\n var c2 = blinded.toRed(BN.mont(priv.prime2))\n var qinv = priv.coefficient\n var p = priv.prime1\n var q = priv.prime2\n var m1 = c1.redPow(priv.exponent1).fromRed()\n var m2 = c2.redPow(priv.exponent2).fromRed()\n var h = m1.isub(m2).imul(qinv).umod(p).imul(q)\n return m2.iadd(h).imul(blinds.unblinder).umod(priv.modulus).toArrayLike(Buffer, 'be', len)\n}\ncrt.getr = getr\n\nmodule.exports = crt\n","/* eslint-disable node/no-deprecated-api */\n\n'use strict'\n\nvar buffer = require('buffer')\nvar Buffer = buffer.Buffer\n\nvar safer = {}\n\nvar key\n\nfor (key in buffer) {\n if (!buffer.hasOwnProperty(key)) continue\n if (key === 'SlowBuffer' || key === 'Buffer') continue\n safer[key] = buffer[key]\n}\n\nvar Safer = safer.Buffer = {}\nfor (key in Buffer) {\n if (!Buffer.hasOwnProperty(key)) continue\n if (key === 'allocUnsafe' || key === 'allocUnsafeSlow') continue\n Safer[key] = Buffer[key]\n}\n\nsafer.Buffer.prototype = Buffer.prototype\n\nif (!Safer.from || Safer.from === Uint8Array.from) {\n Safer.from = function (value, encodingOrOffset, length) {\n if (typeof value === 'number') {\n throw new TypeError('The \"value\" argument must not be of type number. Received type ' + typeof value)\n }\n if (value && typeof value.length === 'undefined') {\n throw new TypeError('The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type ' + typeof value)\n }\n return Buffer(value, encodingOrOffset, length)\n }\n}\n\nif (!Safer.alloc) {\n Safer.alloc = function (size, fill, encoding) {\n if (typeof size !== 'number') {\n throw new TypeError('The \"size\" argument must be of type number. Received type ' + typeof size)\n }\n if (size < 0 || size >= 2 * (1 << 30)) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n var buf = Buffer(size)\n if (!fill || fill.length === 0) {\n buf.fill(0)\n } else if (typeof encoding === 'string') {\n buf.fill(fill, encoding)\n } else {\n buf.fill(fill)\n }\n return buf\n }\n}\n\nif (!safer.kStringMaxLength) {\n try {\n safer.kStringMaxLength = process.binding('buffer').kStringMaxLength\n } catch (e) {\n // we can't determine kStringMaxLength in environments where process.binding\n // is unsupported, so let's not set it\n }\n}\n\nif (!safer.constants) {\n safer.constants = {\n MAX_LENGTH: safer.kMaxLength\n }\n if (safer.kStringMaxLength) {\n safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength\n }\n}\n\nmodule.exports = safer\n","'use strict';\n\nconst Reporter = require('../base/reporter').Reporter;\nconst EncoderBuffer = require('../base/buffer').EncoderBuffer;\nconst DecoderBuffer = require('../base/buffer').DecoderBuffer;\nconst assert = require('minimalistic-assert');\n\n// Supported tags\nconst tags = [\n 'seq', 'seqof', 'set', 'setof', 'objid', 'bool',\n 'gentime', 'utctime', 'null_', 'enum', 'int', 'objDesc',\n 'bitstr', 'bmpstr', 'charstr', 'genstr', 'graphstr', 'ia5str', 'iso646str',\n 'numstr', 'octstr', 'printstr', 't61str', 'unistr', 'utf8str', 'videostr'\n];\n\n// Public methods list\nconst methods = [\n 'key', 'obj', 'use', 'optional', 'explicit', 'implicit', 'def', 'choice',\n 'any', 'contains'\n].concat(tags);\n\n// Overrided methods list\nconst overrided = [\n '_peekTag', '_decodeTag', '_use',\n '_decodeStr', '_decodeObjid', '_decodeTime',\n '_decodeNull', '_decodeInt', '_decodeBool', '_decodeList',\n\n '_encodeComposite', '_encodeStr', '_encodeObjid', '_encodeTime',\n '_encodeNull', '_encodeInt', '_encodeBool'\n];\n\nfunction Node(enc, parent, name) {\n const state = {};\n this._baseState = state;\n\n state.name = name;\n state.enc = enc;\n\n state.parent = parent || null;\n state.children = null;\n\n // State\n state.tag = null;\n state.args = null;\n state.reverseArgs = null;\n state.choice = null;\n state.optional = false;\n state.any = false;\n state.obj = false;\n state.use = null;\n state.useDecoder = null;\n state.key = null;\n state['default'] = null;\n state.explicit = null;\n state.implicit = null;\n state.contains = null;\n\n // Should create new instance on each method\n if (!state.parent) {\n state.children = [];\n this._wrap();\n }\n}\nmodule.exports = Node;\n\nconst stateProps = [\n 'enc', 'parent', 'children', 'tag', 'args', 'reverseArgs', 'choice',\n 'optional', 'any', 'obj', 'use', 'alteredUse', 'key', 'default', 'explicit',\n 'implicit', 'contains'\n];\n\nNode.prototype.clone = function clone() {\n const state = this._baseState;\n const cstate = {};\n stateProps.forEach(function(prop) {\n cstate[prop] = state[prop];\n });\n const res = new this.constructor(cstate.parent);\n res._baseState = cstate;\n return res;\n};\n\nNode.prototype._wrap = function wrap() {\n const state = this._baseState;\n methods.forEach(function(method) {\n this[method] = function _wrappedMethod() {\n const clone = new this.constructor(this);\n state.children.push(clone);\n return clone[method].apply(clone, arguments);\n };\n }, this);\n};\n\nNode.prototype._init = function init(body) {\n const state = this._baseState;\n\n assert(state.parent === null);\n body.call(this);\n\n // Filter children\n state.children = state.children.filter(function(child) {\n return child._baseState.parent === this;\n }, this);\n assert.equal(state.children.length, 1, 'Root node can have only one child');\n};\n\nNode.prototype._useArgs = function useArgs(args) {\n const state = this._baseState;\n\n // Filter children and args\n const children = args.filter(function(arg) {\n return arg instanceof this.constructor;\n }, this);\n args = args.filter(function(arg) {\n return !(arg instanceof this.constructor);\n }, this);\n\n if (children.length !== 0) {\n assert(state.children === null);\n state.children = children;\n\n // Replace parent to maintain backward link\n children.forEach(function(child) {\n child._baseState.parent = this;\n }, this);\n }\n if (args.length !== 0) {\n assert(state.args === null);\n state.args = args;\n state.reverseArgs = args.map(function(arg) {\n if (typeof arg !== 'object' || arg.constructor !== Object)\n return arg;\n\n const res = {};\n Object.keys(arg).forEach(function(key) {\n if (key == (key | 0))\n key |= 0;\n const value = arg[key];\n res[value] = key;\n });\n return res;\n });\n }\n};\n\n//\n// Overrided methods\n//\n\noverrided.forEach(function(method) {\n Node.prototype[method] = function _overrided() {\n const state = this._baseState;\n throw new Error(method + ' not implemented for encoding: ' + state.enc);\n };\n});\n\n//\n// Public methods\n//\n\ntags.forEach(function(tag) {\n Node.prototype[tag] = function _tagMethod() {\n const state = this._baseState;\n const args = Array.prototype.slice.call(arguments);\n\n assert(state.tag === null);\n state.tag = tag;\n\n this._useArgs(args);\n\n return this;\n };\n});\n\nNode.prototype.use = function use(item) {\n assert(item);\n const state = this._baseState;\n\n assert(state.use === null);\n state.use = item;\n\n return this;\n};\n\nNode.prototype.optional = function optional() {\n const state = this._baseState;\n\n state.optional = true;\n\n return this;\n};\n\nNode.prototype.def = function def(val) {\n const state = this._baseState;\n\n assert(state['default'] === null);\n state['default'] = val;\n state.optional = true;\n\n return this;\n};\n\nNode.prototype.explicit = function explicit(num) {\n const state = this._baseState;\n\n assert(state.explicit === null && state.implicit === null);\n state.explicit = num;\n\n return this;\n};\n\nNode.prototype.implicit = function implicit(num) {\n const state = this._baseState;\n\n assert(state.explicit === null && state.implicit === null);\n state.implicit = num;\n\n return this;\n};\n\nNode.prototype.obj = function obj() {\n const state = this._baseState;\n const args = Array.prototype.slice.call(arguments);\n\n state.obj = true;\n\n if (args.length !== 0)\n this._useArgs(args);\n\n return this;\n};\n\nNode.prototype.key = function key(newKey) {\n const state = this._baseState;\n\n assert(state.key === null);\n state.key = newKey;\n\n return this;\n};\n\nNode.prototype.any = function any() {\n const state = this._baseState;\n\n state.any = true;\n\n return this;\n};\n\nNode.prototype.choice = function choice(obj) {\n const state = this._baseState;\n\n assert(state.choice === null);\n state.choice = obj;\n this._useArgs(Object.keys(obj).map(function(key) {\n return obj[key];\n }));\n\n return this;\n};\n\nNode.prototype.contains = function contains(item) {\n const state = this._baseState;\n\n assert(state.use === null);\n state.contains = item;\n\n return this;\n};\n\n//\n// Decoding\n//\n\nNode.prototype._decode = function decode(input, options) {\n const state = this._baseState;\n\n // Decode root node\n if (state.parent === null)\n return input.wrapResult(state.children[0]._decode(input, options));\n\n let result = state['default'];\n let present = true;\n\n let prevKey = null;\n if (state.key !== null)\n prevKey = input.enterKey(state.key);\n\n // Check if tag is there\n if (state.optional) {\n let tag = null;\n if (state.explicit !== null)\n tag = state.explicit;\n else if (state.implicit !== null)\n tag = state.implicit;\n else if (state.tag !== null)\n tag = state.tag;\n\n if (tag === null && !state.any) {\n // Trial and Error\n const save = input.save();\n try {\n if (state.choice === null)\n this._decodeGeneric(state.tag, input, options);\n else\n this._decodeChoice(input, options);\n present = true;\n } catch (e) {\n present = false;\n }\n input.restore(save);\n } else {\n present = this._peekTag(input, tag, state.any);\n\n if (input.isError(present))\n return present;\n }\n }\n\n // Push object on stack\n let prevObj;\n if (state.obj && present)\n prevObj = input.enterObject();\n\n if (present) {\n // Unwrap explicit values\n if (state.explicit !== null) {\n const explicit = this._decodeTag(input, state.explicit);\n if (input.isError(explicit))\n return explicit;\n input = explicit;\n }\n\n const start = input.offset;\n\n // Unwrap implicit and normal values\n if (state.use === null && state.choice === null) {\n let save;\n if (state.any)\n save = input.save();\n const body = this._decodeTag(\n input,\n state.implicit !== null ? state.implicit : state.tag,\n state.any\n );\n if (input.isError(body))\n return body;\n\n if (state.any)\n result = input.raw(save);\n else\n input = body;\n }\n\n if (options && options.track && state.tag !== null)\n options.track(input.path(), start, input.length, 'tagged');\n\n if (options && options.track && state.tag !== null)\n options.track(input.path(), input.offset, input.length, 'content');\n\n // Select proper method for tag\n if (state.any) {\n // no-op\n } else if (state.choice === null) {\n result = this._decodeGeneric(state.tag, input, options);\n } else {\n result = this._decodeChoice(input, options);\n }\n\n if (input.isError(result))\n return result;\n\n // Decode children\n if (!state.any && state.choice === null && state.children !== null) {\n state.children.forEach(function decodeChildren(child) {\n // NOTE: We are ignoring errors here, to let parser continue with other\n // parts of encoded data\n child._decode(input, options);\n });\n }\n\n // Decode contained/encoded by schema, only in bit or octet strings\n if (state.contains && (state.tag === 'octstr' || state.tag === 'bitstr')) {\n const data = new DecoderBuffer(result);\n result = this._getUse(state.contains, input._reporterState.obj)\n ._decode(data, options);\n }\n }\n\n // Pop object\n if (state.obj && present)\n result = input.leaveObject(prevObj);\n\n // Set key\n if (state.key !== null && (result !== null || present === true))\n input.leaveKey(prevKey, state.key, result);\n else if (prevKey !== null)\n input.exitKey(prevKey);\n\n return result;\n};\n\nNode.prototype._decodeGeneric = function decodeGeneric(tag, input, options) {\n const state = this._baseState;\n\n if (tag === 'seq' || tag === 'set')\n return null;\n if (tag === 'seqof' || tag === 'setof')\n return this._decodeList(input, tag, state.args[0], options);\n else if (/str$/.test(tag))\n return this._decodeStr(input, tag, options);\n else if (tag === 'objid' && state.args)\n return this._decodeObjid(input, state.args[0], state.args[1], options);\n else if (tag === 'objid')\n return this._decodeObjid(input, null, null, options);\n else if (tag === 'gentime' || tag === 'utctime')\n return this._decodeTime(input, tag, options);\n else if (tag === 'null_')\n return this._decodeNull(input, options);\n else if (tag === 'bool')\n return this._decodeBool(input, options);\n else if (tag === 'objDesc')\n return this._decodeStr(input, tag, options);\n else if (tag === 'int' || tag === 'enum')\n return this._decodeInt(input, state.args && state.args[0], options);\n\n if (state.use !== null) {\n return this._getUse(state.use, input._reporterState.obj)\n ._decode(input, options);\n } else {\n return input.error('unknown tag: ' + tag);\n }\n};\n\nNode.prototype._getUse = function _getUse(entity, obj) {\n\n const state = this._baseState;\n // Create altered use decoder if implicit is set\n state.useDecoder = this._use(entity, obj);\n assert(state.useDecoder._baseState.parent === null);\n state.useDecoder = state.useDecoder._baseState.children[0];\n if (state.implicit !== state.useDecoder._baseState.implicit) {\n state.useDecoder = state.useDecoder.clone();\n state.useDecoder._baseState.implicit = state.implicit;\n }\n return state.useDecoder;\n};\n\nNode.prototype._decodeChoice = function decodeChoice(input, options) {\n const state = this._baseState;\n let result = null;\n let match = false;\n\n Object.keys(state.choice).some(function(key) {\n const save = input.save();\n const node = state.choice[key];\n try {\n const value = node._decode(input, options);\n if (input.isError(value))\n return false;\n\n result = { type: key, value: value };\n match = true;\n } catch (e) {\n input.restore(save);\n return false;\n }\n return true;\n }, this);\n\n if (!match)\n return input.error('Choice not matched');\n\n return result;\n};\n\n//\n// Encoding\n//\n\nNode.prototype._createEncoderBuffer = function createEncoderBuffer(data) {\n return new EncoderBuffer(data, this.reporter);\n};\n\nNode.prototype._encode = function encode(data, reporter, parent) {\n const state = this._baseState;\n if (state['default'] !== null && state['default'] === data)\n return;\n\n const result = this._encodeValue(data, reporter, parent);\n if (result === undefined)\n return;\n\n if (this._skipDefault(result, reporter, parent))\n return;\n\n return result;\n};\n\nNode.prototype._encodeValue = function encode(data, reporter, parent) {\n const state = this._baseState;\n\n // Decode root node\n if (state.parent === null)\n return state.children[0]._encode(data, reporter || new Reporter());\n\n let result = null;\n\n // Set reporter to share it with a child class\n this.reporter = reporter;\n\n // Check if data is there\n if (state.optional && data === undefined) {\n if (state['default'] !== null)\n data = state['default'];\n else\n return;\n }\n\n // Encode children first\n let content = null;\n let primitive = false;\n if (state.any) {\n // Anything that was given is translated to buffer\n result = this._createEncoderBuffer(data);\n } else if (state.choice) {\n result = this._encodeChoice(data, reporter);\n } else if (state.contains) {\n content = this._getUse(state.contains, parent)._encode(data, reporter);\n primitive = true;\n } else if (state.children) {\n content = state.children.map(function(child) {\n if (child._baseState.tag === 'null_')\n return child._encode(null, reporter, data);\n\n if (child._baseState.key === null)\n return reporter.error('Child should have a key');\n const prevKey = reporter.enterKey(child._baseState.key);\n\n if (typeof data !== 'object')\n return reporter.error('Child expected, but input is not object');\n\n const res = child._encode(data[child._baseState.key], reporter, data);\n reporter.leaveKey(prevKey);\n\n return res;\n }, this).filter(function(child) {\n return child;\n });\n content = this._createEncoderBuffer(content);\n } else {\n if (state.tag === 'seqof' || state.tag === 'setof') {\n // TODO(indutny): this should be thrown on DSL level\n if (!(state.args && state.args.length === 1))\n return reporter.error('Too many args for : ' + state.tag);\n\n if (!Array.isArray(data))\n return reporter.error('seqof/setof, but data is not Array');\n\n const child = this.clone();\n child._baseState.implicit = null;\n content = this._createEncoderBuffer(data.map(function(item) {\n const state = this._baseState;\n\n return this._getUse(state.args[0], data)._encode(item, reporter);\n }, child));\n } else if (state.use !== null) {\n result = this._getUse(state.use, parent)._encode(data, reporter);\n } else {\n content = this._encodePrimitive(state.tag, data);\n primitive = true;\n }\n }\n\n // Encode data itself\n if (!state.any && state.choice === null) {\n const tag = state.implicit !== null ? state.implicit : state.tag;\n const cls = state.implicit === null ? 'universal' : 'context';\n\n if (tag === null) {\n if (state.use === null)\n reporter.error('Tag could be omitted only for .use()');\n } else {\n if (state.use === null)\n result = this._encodeComposite(tag, primitive, cls, content);\n }\n }\n\n // Wrap in explicit\n if (state.explicit !== null)\n result = this._encodeComposite(state.explicit, false, 'context', result);\n\n return result;\n};\n\nNode.prototype._encodeChoice = function encodeChoice(data, reporter) {\n const state = this._baseState;\n\n const node = state.choice[data.type];\n if (!node) {\n assert(\n false,\n data.type + ' not found in ' +\n JSON.stringify(Object.keys(state.choice)));\n }\n return node._encode(data.value, reporter);\n};\n\nNode.prototype._encodePrimitive = function encodePrimitive(tag, data) {\n const state = this._baseState;\n\n if (/str$/.test(tag))\n return this._encodeStr(data, tag);\n else if (tag === 'objid' && state.args)\n return this._encodeObjid(data, state.reverseArgs[0], state.args[1]);\n else if (tag === 'objid')\n return this._encodeObjid(data, null, null);\n else if (tag === 'gentime' || tag === 'utctime')\n return this._encodeTime(data, tag);\n else if (tag === 'null_')\n return this._encodeNull();\n else if (tag === 'int' || tag === 'enum')\n return this._encodeInt(data, state.args && state.reverseArgs[0]);\n else if (tag === 'bool')\n return this._encodeBool(data);\n else if (tag === 'objDesc')\n return this._encodeStr(data, tag);\n else\n throw new Error('Unsupported tag: ' + tag);\n};\n\nNode.prototype._isNumstr = function isNumstr(str) {\n return /^[0-9 ]*$/.test(str);\n};\n\nNode.prototype._isPrintstr = function isPrintstr(str) {\n return /^[A-Za-z0-9 '()+,-./:=?]*$/.test(str);\n};\n","'use strict';\n\nconst inherits = require('inherits');\n\nfunction Reporter(options) {\n this._reporterState = {\n obj: null,\n path: [],\n options: options || {},\n errors: []\n };\n}\nexports.Reporter = Reporter;\n\nReporter.prototype.isError = function isError(obj) {\n return obj instanceof ReporterError;\n};\n\nReporter.prototype.save = function save() {\n const state = this._reporterState;\n\n return { obj: state.obj, pathLen: state.path.length };\n};\n\nReporter.prototype.restore = function restore(data) {\n const state = this._reporterState;\n\n state.obj = data.obj;\n state.path = state.path.slice(0, data.pathLen);\n};\n\nReporter.prototype.enterKey = function enterKey(key) {\n return this._reporterState.path.push(key);\n};\n\nReporter.prototype.exitKey = function exitKey(index) {\n const state = this._reporterState;\n\n state.path = state.path.slice(0, index - 1);\n};\n\nReporter.prototype.leaveKey = function leaveKey(index, key, value) {\n const state = this._reporterState;\n\n this.exitKey(index);\n if (state.obj !== null)\n state.obj[key] = value;\n};\n\nReporter.prototype.path = function path() {\n return this._reporterState.path.join('/');\n};\n\nReporter.prototype.enterObject = function enterObject() {\n const state = this._reporterState;\n\n const prev = state.obj;\n state.obj = {};\n return prev;\n};\n\nReporter.prototype.leaveObject = function leaveObject(prev) {\n const state = this._reporterState;\n\n const now = state.obj;\n state.obj = prev;\n return now;\n};\n\nReporter.prototype.error = function error(msg) {\n let err;\n const state = this._reporterState;\n\n const inherited = msg instanceof ReporterError;\n if (inherited) {\n err = msg;\n } else {\n err = new ReporterError(state.path.map(function(elem) {\n return '[' + JSON.stringify(elem) + ']';\n }).join(''), msg.message || msg, msg.stack);\n }\n\n if (!state.options.partial)\n throw err;\n\n if (!inherited)\n state.errors.push(err);\n\n return err;\n};\n\nReporter.prototype.wrapResult = function wrapResult(result) {\n const state = this._reporterState;\n if (!state.options.partial)\n return result;\n\n return {\n result: this.isError(result) ? null : result,\n errors: state.errors\n };\n};\n\nfunction ReporterError(path, msg) {\n this.path = path;\n this.rethrow(msg);\n}\ninherits(ReporterError, Error);\n\nReporterError.prototype.rethrow = function rethrow(msg) {\n this.message = msg + ' at: ' + (this.path || '(shallow)');\n if (Error.captureStackTrace)\n Error.captureStackTrace(this, ReporterError);\n\n if (!this.stack) {\n try {\n // IE only adds stack when thrown\n throw new Error(this.message);\n } catch (e) {\n this.stack = e.stack;\n }\n }\n return this;\n};\n","'use strict';\n\n// Helper\nfunction reverse(map) {\n const res = {};\n\n Object.keys(map).forEach(function(key) {\n // Convert key to integer if it is stringified\n if ((key | 0) == key)\n key = key | 0;\n\n const value = map[key];\n res[value] = key;\n });\n\n return res;\n}\n\nexports.tagClass = {\n 0: 'universal',\n 1: 'application',\n 2: 'context',\n 3: 'private'\n};\nexports.tagClassByName = reverse(exports.tagClass);\n\nexports.tag = {\n 0x00: 'end',\n 0x01: 'bool',\n 0x02: 'int',\n 0x03: 'bitstr',\n 0x04: 'octstr',\n 0x05: 'null_',\n 0x06: 'objid',\n 0x07: 'objDesc',\n 0x08: 'external',\n 0x09: 'real',\n 0x0a: 'enum',\n 0x0b: 'embed',\n 0x0c: 'utf8str',\n 0x0d: 'relativeOid',\n 0x10: 'seq',\n 0x11: 'set',\n 0x12: 'numstr',\n 0x13: 'printstr',\n 0x14: 't61str',\n 0x15: 'videostr',\n 0x16: 'ia5str',\n 0x17: 'utctime',\n 0x18: 'gentime',\n 0x19: 'graphstr',\n 0x1a: 'iso646str',\n 0x1b: 'genstr',\n 0x1c: 'unistr',\n 0x1d: 'charstr',\n 0x1e: 'bmpstr'\n};\nexports.tagByName = reverse(exports.tag);\n","exports = module.exports = require('./lib/_stream_readable.js');\nexports.Stream = exports;\nexports.Readable = exports;\nexports.Writable = require('./lib/_stream_writable.js');\nexports.Duplex = require('./lib/_stream_duplex.js');\nexports.Transform = require('./lib/_stream_transform.js');\nexports.PassThrough = require('./lib/_stream_passthrough.js');\nexports.finished = require('./lib/internal/streams/end-of-stream.js');\nexports.pipeline = require('./lib/internal/streams/pipeline.js');\n","// Ported from https://github.com/mafintosh/end-of-stream with\n// permission from the author, Mathias Buus (@mafintosh).\n'use strict';\n\nvar ERR_STREAM_PREMATURE_CLOSE = require('../../../errors').codes.ERR_STREAM_PREMATURE_CLOSE;\n\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n callback.apply(this, args);\n };\n}\n\nfunction noop() {}\n\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\n\nfunction eos(stream, opts, callback) {\n if (typeof opts === 'function') return eos(stream, null, opts);\n if (!opts) opts = {};\n callback = once(callback || noop);\n var readable = opts.readable || opts.readable !== false && stream.readable;\n var writable = opts.writable || opts.writable !== false && stream.writable;\n\n var onlegacyfinish = function onlegacyfinish() {\n if (!stream.writable) onfinish();\n };\n\n var writableEnded = stream._writableState && stream._writableState.finished;\n\n var onfinish = function onfinish() {\n writable = false;\n writableEnded = true;\n if (!readable) callback.call(stream);\n };\n\n var readableEnded = stream._readableState && stream._readableState.endEmitted;\n\n var onend = function onend() {\n readable = false;\n readableEnded = true;\n if (!writable) callback.call(stream);\n };\n\n var onerror = function onerror(err) {\n callback.call(stream, err);\n };\n\n var onclose = function onclose() {\n var err;\n\n if (readable && !readableEnded) {\n if (!stream._readableState || !stream._readableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n\n if (writable && !writableEnded) {\n if (!stream._writableState || !stream._writableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n };\n\n var onrequest = function onrequest() {\n stream.req.on('finish', onfinish);\n };\n\n if (isRequest(stream)) {\n stream.on('complete', onfinish);\n stream.on('abort', onclose);\n if (stream.req) onrequest();else stream.on('request', onrequest);\n } else if (writable && !stream._writableState) {\n // legacy streams\n stream.on('end', onlegacyfinish);\n stream.on('close', onlegacyfinish);\n }\n\n stream.on('end', onend);\n stream.on('finish', onfinish);\n if (opts.error !== false) stream.on('error', onerror);\n stream.on('close', onclose);\n return function () {\n stream.removeListener('complete', onfinish);\n stream.removeListener('abort', onclose);\n stream.removeListener('request', onrequest);\n if (stream.req) stream.req.removeListener('finish', onfinish);\n stream.removeListener('end', onlegacyfinish);\n stream.removeListener('close', onlegacyfinish);\n stream.removeListener('finish', onfinish);\n stream.removeListener('end', onend);\n stream.removeListener('error', onerror);\n stream.removeListener('close', onclose);\n };\n}\n\nmodule.exports = eos;","import BadKeyError from \"./BadKeyError.js\";\nimport Ed25519PublicKey from \"./Ed25519PublicKey.js\";\nimport nacl from \"tweetnacl\";\nimport { arrayStartsWith } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\nimport * as random from \"./primitive/random.js\";\n\nexport const derPrefix = \"302e020100300506032b657004220420\";\nexport const derPrefixBytes = hex.decode(derPrefix);\n\nexport default class Ed25519PrivateKey {\n /**\n * @hideconstructor\n * @internal\n * @param {nacl.SignKeyPair | Uint8Array} keyPair\n * @param {Uint8Array=} chainCode\n */\n constructor(keyPair, chainCode) {\n /**\n * @type {nacl.SignKeyPair}\n * @readonly\n * @private\n */\n this._keyPair =\n keyPair instanceof Uint8Array\n ? nacl.sign.keyPair.fromSeed(keyPair)\n : keyPair;\n\n /**\n * @type {?Uint8Array}\n * @readonly\n */\n this._chainCode = chainCode != null ? chainCode : null;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"ED25519\";\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Ed25519PrivateKey}\n */\n static generate() {\n // 32 bytes for the secret key\n // 32 bytes for the chain code (to support derivation)\n const entropy = random.bytes(64);\n\n return new Ed25519PrivateKey(\n nacl.sign.keyPair.fromSeed(entropy.subarray(0, 32)),\n entropy.subarray(32)\n );\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateAsync() {\n // 32 bytes for the secret key\n // 32 bytes for the chain code (to support derivation)\n const entropy = await random.bytesAsync(64);\n\n return new Ed25519PrivateKey(\n nacl.sign.keyPair.fromSeed(entropy.subarray(0, 32)),\n entropy.subarray(32)\n );\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {Ed25519PrivateKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 48:\n return Ed25519PrivateKey.fromBytesDer(data);\n case 32:\n case 64:\n return Ed25519PrivateKey.fromBytesRaw(data);\n default:\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * Construct a private key from bytes with DER header.\n *\n * @param {Uint8Array} data\n * @returns {Ed25519PrivateKey}\n */\n static fromBytesDer(data) {\n if (data.length != 48 || !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n\n const keyPair = nacl.sign.keyPair.fromSeed(data.subarray(16));\n\n return new Ed25519PrivateKey(keyPair);\n }\n\n /**\n * Construct a private key from bytes without DER header.\n *\n * @param {Uint8Array} data\n * @returns {Ed25519PrivateKey}\n */\n static fromBytesRaw(data) {\n switch (data.length) {\n case 32:\n return new Ed25519PrivateKey(nacl.sign.keyPair.fromSeed(data));\n\n case 64:\n // priv + pub key\n return new Ed25519PrivateKey(\n nacl.sign.keyPair.fromSecretKey(data)\n );\n\n default:\n }\n\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {Ed25519PrivateKey}\n */\n static fromString(text) {\n return Ed25519PrivateKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {Ed25519PrivateKey}\n */\n static fromStringDer(text) {\n return Ed25519PrivateKey.fromBytesDer(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {Ed25519PrivateKey}\n */\n static fromStringRaw(text) {\n return Ed25519PrivateKey.fromBytesRaw(hex.decode(text));\n }\n\n /**\n * Get the public key associated with this private key.\n *\n * The public key can be freely given and used by other parties to verify\n * the signatures generated by this private key.\n *\n * @returns {Ed25519PublicKey}\n */\n get publicKey() {\n return new Ed25519PublicKey(this._keyPair.publicKey);\n }\n\n /**\n * Sign a message with this private key.\n *\n * @param {Uint8Array} bytes\n * @returns {Uint8Array} - The signature bytes without the message\n */\n sign(bytes) {\n return nacl.sign.detached(bytes, this._keyPair.secretKey);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(derPrefixBytes.length + 32);\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(\n this._keyPair.secretKey.subarray(0, 32),\n derPrefixBytes.length\n );\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n // copy the bytes so they can't be modified accidentally\n return this._keyPair.secretKey.slice(0, 32);\n }\n}\n","import nacl from \"tweetnacl\";\n\n/**\n * @param {number} count\n * @returns {Uint8Array}\n */\nexport function bytes(count) {\n return nacl.randomBytes(count);\n}\n\n/**\n * @param {number} count\n * @returns {Promise}\n */\nexport function bytesAsync(count) {\n return Promise.resolve(nacl.randomBytes(count));\n}\n","/**\n * Possible statuses for {@link Mnemonic#validate()}.\n *\n * @readonly\n * @enum {string}\n */\nconst BadMnemonicReason = Object.freeze({\n /**\n * The mnemonic did not have a supported number of words (12 or 24 for regular and 22 for legacy).\n */\n BadLength: \"BadLength\",\n\n /**\n * The mnemonic contained words which were not found in the word list.\n */\n UnknownWords: \"UnknownWords\",\n\n /**\n * The checksum encoded in the mnemonic did not match the checksum we just calculated for\n * that mnemonic.\n *\n * 24-word mnemonics have an 8-bit checksum that is appended to the 32 bytes of source entropy\n * after being calculated from it, before being encoded into words.\n *\n * This could happen if two or more of the words were entered out of the original order or\n * replaced with another from the standard word list (as this is only returned if all the words\n * exist in the word list).\n */\n ChecksumMismatch: \"ChecksumMismatch\",\n});\n\nexport default BadMnemonicReason;\n","/**\n * @param {Uint8Array} data\n * @returns {string}\n */\nexport function decode(data) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextDecoder().decode(data);\n}\n\n/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function encode(text) {\n // eslint-disable-next-line node/no-unsupported-features/node-builtins\n return new TextEncoder().encode(text);\n}\n","'use strict';\n\nvar curves = exports;\n\nvar hash = require('hash.js');\nvar curve = require('./curve');\nvar utils = require('./utils');\n\nvar assert = utils.assert;\n\nfunction PresetCurve(options) {\n if (options.type === 'short')\n this.curve = new curve.short(options);\n else if (options.type === 'edwards')\n this.curve = new curve.edwards(options);\n else\n this.curve = new curve.mont(options);\n this.g = this.curve.g;\n this.n = this.curve.n;\n this.hash = options.hash;\n\n assert(this.g.validate(), 'Invalid curve');\n assert(this.g.mul(this.n).isInfinity(), 'Invalid curve, G*N != O');\n}\ncurves.PresetCurve = PresetCurve;\n\nfunction defineCurve(name, options) {\n Object.defineProperty(curves, name, {\n configurable: true,\n enumerable: true,\n get: function() {\n var curve = new PresetCurve(options);\n Object.defineProperty(curves, name, {\n configurable: true,\n enumerable: true,\n value: curve,\n });\n return curve;\n },\n });\n}\n\ndefineCurve('p192', {\n type: 'short',\n prime: 'p192',\n p: 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff',\n a: 'ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc',\n b: '64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1',\n n: 'ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831',\n hash: hash.sha256,\n gRed: false,\n g: [\n '188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012',\n '07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811',\n ],\n});\n\ndefineCurve('p224', {\n type: 'short',\n prime: 'p224',\n p: 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001',\n a: 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe',\n b: 'b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4',\n n: 'ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d',\n hash: hash.sha256,\n gRed: false,\n g: [\n 'b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21',\n 'bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34',\n ],\n});\n\ndefineCurve('p256', {\n type: 'short',\n prime: null,\n p: 'ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff',\n a: 'ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc',\n b: '5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b',\n n: 'ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551',\n hash: hash.sha256,\n gRed: false,\n g: [\n '6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296',\n '4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5',\n ],\n});\n\ndefineCurve('p384', {\n type: 'short',\n prime: null,\n p: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'fffffffe ffffffff 00000000 00000000 ffffffff',\n a: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'fffffffe ffffffff 00000000 00000000 fffffffc',\n b: 'b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f ' +\n '5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef',\n n: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 ' +\n 'f4372ddf 581a0db2 48b0a77a ecec196a ccc52973',\n hash: hash.sha384,\n gRed: false,\n g: [\n 'aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 ' +\n '5502f25d bf55296c 3a545e38 72760ab7',\n '3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 ' +\n '0a60b1ce 1d7e819d 7a431d7c 90ea0e5f',\n ],\n});\n\ndefineCurve('p521', {\n type: 'short',\n prime: null,\n p: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff',\n a: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff fffffffc',\n b: '00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b ' +\n '99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd ' +\n '3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00',\n n: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 ' +\n 'f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409',\n hash: hash.sha512,\n gRed: false,\n g: [\n '000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 ' +\n '053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 ' +\n 'a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66',\n '00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 ' +\n '579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 ' +\n '3fad0761 353c7086 a272c240 88be9476 9fd16650',\n ],\n});\n\ndefineCurve('curve25519', {\n type: 'mont',\n prime: 'p25519',\n p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed',\n a: '76d06',\n b: '1',\n n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed',\n hash: hash.sha256,\n gRed: false,\n g: [\n '9',\n ],\n});\n\ndefineCurve('ed25519', {\n type: 'edwards',\n prime: 'p25519',\n p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed',\n a: '-1',\n c: '1',\n // -121665 * (121666^(-1)) (mod P)\n d: '52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3',\n n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed',\n hash: hash.sha256,\n gRed: false,\n g: [\n '216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a',\n\n // 4/5\n '6666666666666666666666666666666666666666666666666666666666666658',\n ],\n});\n\nvar pre;\ntry {\n pre = require('./precomputed/secp256k1');\n} catch (e) {\n pre = undefined;\n}\n\ndefineCurve('secp256k1', {\n type: 'short',\n prime: 'k256',\n p: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f',\n a: '0',\n b: '7',\n n: 'ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141',\n h: '1',\n hash: hash.sha256,\n\n // Precomputed endomorphism\n beta: '7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee',\n lambda: '5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72',\n basis: [\n {\n a: '3086d221a7d46bcde86c90e49284eb15',\n b: '-e4437ed6010e88286f547fa90abfe4c3',\n },\n {\n a: '114ca50f7a8e2f3f657c1108d9d44cfd8',\n b: '3086d221a7d46bcde86c90e49284eb15',\n },\n ],\n\n gRed: false,\n g: [\n '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798',\n '483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8',\n pre,\n ],\n});\n","var hash = exports;\n\nhash.utils = require('./hash/utils');\nhash.common = require('./hash/common');\nhash.sha = require('./hash/sha');\nhash.ripemd = require('./hash/ripemd');\nhash.hmac = require('./hash/hmac');\n\n// Proxy hash functions to the main object\nhash.sha1 = hash.sha.sha1;\nhash.sha256 = hash.sha.sha256;\nhash.sha224 = hash.sha.sha224;\nhash.sha384 = hash.sha.sha384;\nhash.sha512 = hash.sha.sha512;\nhash.ripemd160 = hash.ripemd.ripemd160;\n","/**\n * @typedef {import(\"./Status.js\").default} Status\n * @typedef {import(\"./transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class StatusError extends Error {\n /**\n * @param {object} props\n * @param {Status} props.status\n * @param {TransactionId} props.transactionId\n * @param {string} message\n */\n constructor(props, message) {\n super(message);\n\n this.name = \"StatusError\";\n\n this.status = props.status;\n\n this.transactionId = props.transactionId;\n\n this.message = message;\n\n if (typeof Error.captureStackTrace !== \"undefined\") {\n Error.captureStackTrace(this, StatusError);\n }\n }\n}\n","import TransactionReceipt from \"./TransactionReceipt.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Hbar from \"../Hbar.js\";\nimport Transfer from \"../Transfer.js\";\nimport ContractFunctionResult from \"../contract/ContractFunctionResult.js\";\nimport TokenTransferMap from \"../account/TokenTransferMap.js\";\nimport TokenNftTransferMap from \"../account/TokenNftTransferMap.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport ScheduleId from \"../schedule/ScheduleId.js\";\nimport AssessedCustomFee from \"../token/AssessedCustomFee.js\";\nimport TokenAssocation from \"../token/TokenAssociation.js\";\nimport Key from \"../Key.js\";\nimport PublicKey from \"../PublicKey.js\";\n\n/**\n * @typedef {import(\"../token/TokenId.js\").default} TokenId\n */\n\n/**\n * Response when the client sends the node TransactionGetRecordResponse.\n */\nexport default class TransactionRecord {\n /**\n * @private\n * @param {object} props\n * @param {ContractFunctionResult} [props.contractFunctionResult]\n * @param {TransactionReceipt} props.receipt\n * @param {Uint8Array} props.transactionHash\n * @param {Timestamp} props.consensusTimestamp\n * @param {TransactionId} props.transactionId\n * @param {string} props.transactionMemo\n * @param {Hbar} props.transactionFee\n * @param {Transfer[]} props.transfers\n * @param {TokenTransferMap} props.tokenTransfers\n * @param {?ScheduleId} props.scheduleRef\n * @param {AssessedCustomFee[]} props.assessedCustomFees\n * @param {TokenNftTransferMap} props.nftTransfers\n * @param {TokenAssocation[]} props.automaticTokenAssociations\n * @param {Timestamp | null} props.parentConsensusTimestamp\n * @param {PublicKey | null} props.aliasKey\n * @param {TransactionRecord[]} props.duplicates\n * @param {TransactionRecord[]} props.children\n */\n constructor(props) {\n /**\n * The status (reach consensus, or failed, or is unknown) and the ID of\n * any new account/file/instance created.\n *\n * @readonly\n */\n this.receipt = props.receipt;\n\n /**\n * The hash of the Transaction that executed (not the hash of any Transaction that failed\n * for having a duplicate TransactionID).\n *\n * @readonly\n */\n this.transactionHash = props.transactionHash;\n\n /**\n * The consensus timestamp (or null if didn't reach consensus yet).\n *\n * @readonly\n */\n this.consensusTimestamp = props.consensusTimestamp;\n\n /**\n * The ID of the transaction this record represents.\n *\n * @readonly\n */\n this.transactionId = props.transactionId;\n\n /**\n * The memo that was submitted as part of the transaction (max 100 bytes).\n *\n * @readonly\n */\n this.transactionMemo = props.transactionMemo;\n\n /**\n * The actual transaction fee charged,\n * not the original transactionFee value from TransactionBody.\n *\n * @readonly\n */\n this.transactionFee = props.transactionFee;\n\n /**\n * All hbar transfers as a result of this transaction, such as fees, or transfers performed\n * by the transaction, or by a smart contract it calls, or by the creation of threshold\n * records that it triggers.\n *\n * @readonly\n */\n this.transfers = props.transfers;\n\n /**\n * Record of the value returned by the smart contract function or constructor.\n *\n * @readonly\n */\n this.contractFunctionResult =\n props.contractFunctionResult != null\n ? props.contractFunctionResult\n : null;\n\n /**\n * All the token transfers from this account\n *\n * @readonly\n */\n this.tokenTransfers = props.tokenTransfers;\n\n /**\n * Reference to the scheduled transaction ID that this transaction record represent\n *\n * @readonly\n */\n this.scheduleRef = props.scheduleRef;\n\n /**\n * All custom fees that were assessed during a CryptoTransfer, and must be paid if the\n * transaction status resolved to SUCCESS\n *\n * @readonly\n */\n this.assessedCustomFees = props.assessedCustomFees;\n\n /** @readonly */\n this.nftTransfers = props.nftTransfers;\n\n /**\n * All token associations implicitly created while handling this transaction\n *\n * @readonly\n */\n this.automaticTokenAssociations = props.automaticTokenAssociations;\n\n /**\n * The parent consensus timestamp\n *\n * @readonly\n */\n this.parentConsensusTimestamp = props.parentConsensusTimestamp;\n\n this.aliasKey = props.aliasKey;\n\n /**\n * @readonly\n */\n this.duplicates = props.duplicates;\n\n /**\n * @readonly\n */\n this.children = props.children;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @returns {proto.ITransactionGetRecordResponse}\n */\n _toProtobuf() {\n const tokenTransfers = this.tokenTransfers._toProtobuf();\n const nftTransfers = this.nftTransfers._toProtobuf();\n\n const tokenTransferLists = [];\n\n for (const tokenTransfer of tokenTransfers) {\n for (const nftTransfer of nftTransfers) {\n if (\n tokenTransfer.token != null &&\n nftTransfer.token != null &&\n tokenTransfer.token.shardNum ===\n nftTransfer.token.shardNum &&\n tokenTransfer.token.realmNum ===\n nftTransfer.token.realmNum &&\n tokenTransfer.token.tokenNum === nftTransfer.token.tokenNum\n ) {\n tokenTransferLists.push({\n token: tokenTransfer.token,\n transfers: tokenTransfer.transfers,\n nftTransfers: tokenTransfer.nftTransfers,\n });\n } else {\n tokenTransferLists.push(tokenTransfer);\n tokenTransferLists.push(nftTransfer);\n }\n }\n }\n\n const duplicates = this.duplicates.map(\n (record) =>\n /** @type {proto.ITransactionRecord} */ (\n record._toProtobuf().transactionRecord\n )\n );\n const children = this.children.map(\n (record) =>\n /** @type {proto.ITransactionRecord} */ (\n record._toProtobuf().transactionRecord\n )\n );\n\n return {\n duplicateTransactionRecords: duplicates,\n childTransactionRecords: children,\n transactionRecord: {\n receipt: this.receipt._toProtobuf().receipt,\n\n transactionHash:\n this.transactionHash != null ? this.transactionHash : null,\n consensusTimestamp:\n this.consensusTimestamp != null\n ? this.consensusTimestamp._toProtobuf()\n : null,\n transactionID:\n this.transactionId != null\n ? this.transactionId._toProtobuf()\n : null,\n memo:\n this.transactionMemo != null ? this.transactionMemo : null,\n\n transactionFee:\n this.transactionFee != null\n ? this.transactionFee.toTinybars()\n : null,\n\n contractCallResult:\n this.contractFunctionResult != null\n ? this.contractFunctionResult\n : null,\n\n contractCreateResult:\n this.contractFunctionResult != null\n ? this.contractFunctionResult\n : null,\n\n transferList:\n this.transfers != null\n ? {\n accountAmounts: this.transfers.map((transfer) =>\n transfer._toProtobuf()\n ),\n }\n : null,\n tokenTransferLists,\n scheduleRef:\n this.scheduleRef != null\n ? this.scheduleRef._toProtobuf()\n : null,\n assessedCustomFees: this.assessedCustomFees.map((fee) =>\n fee._toProtobuf()\n ),\n automaticTokenAssociations: this.automaticTokenAssociations.map(\n (association) => association._toProtobuf()\n ),\n parentConsensusTimestamp:\n this.parentConsensusTimestamp != null\n ? this.parentConsensusTimestamp._toProtobuf()\n : null,\n alias:\n this.aliasKey != null\n ? proto.Key.encode(\n this.aliasKey._toProtobufKey()\n ).finish()\n : null,\n },\n };\n }\n\n /**\n * @internal\n * @param {proto.ITransactionGetRecordResponse} response\n * @returns {TransactionRecord}\n */\n static _fromProtobuf(response) {\n const record = /** @type {proto.ITransactionRecord} */ (\n response.transactionRecord\n );\n\n let aliasKey =\n record.alias != null && record.alias.length > 0\n ? Key._fromProtobufKey(proto.Key.decode(record.alias))\n : null;\n\n if (!(aliasKey instanceof PublicKey)) {\n aliasKey = null;\n }\n\n const children =\n response.childTransactionRecords != null\n ? response.childTransactionRecords.map((child) =>\n TransactionRecord._fromProtobuf({\n transactionRecord: child,\n })\n )\n : [];\n\n const duplicates =\n response.duplicateTransactionRecords != null\n ? response.duplicateTransactionRecords.map((duplicate) =>\n TransactionRecord._fromProtobuf({\n transactionRecord: duplicate,\n })\n )\n : [];\n\n const contractFunctionResult =\n record.contractCallResult != null\n ? ContractFunctionResult._fromProtobuf(\n record.contractCallResult\n )\n : record.contractCreateResult != null\n ? ContractFunctionResult._fromProtobuf(\n record.contractCreateResult\n )\n : undefined;\n\n return new TransactionRecord({\n receipt: TransactionReceipt._fromProtobuf({\n receipt: /** @type {proto.ITransactionReceipt} */ (\n record.receipt\n ),\n }),\n transactionHash:\n record.transactionHash != null\n ? record.transactionHash\n : new Uint8Array(),\n consensusTimestamp: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (record.consensusTimestamp)\n ),\n transactionId: TransactionId._fromProtobuf(\n /** @type {proto.ITransactionID} */ (record.transactionID)\n ),\n transactionMemo: record.memo != null ? record.memo : \"\",\n transactionFee: Hbar.fromTinybars(\n record.transactionFee != null ? record.transactionFee : 0\n ),\n transfers: (record.transferList != null\n ? record.transferList.accountAmounts != null\n ? record.transferList.accountAmounts\n : []\n : []\n ).map((aa) => Transfer._fromProtobuf(aa)),\n contractFunctionResult,\n tokenTransfers: TokenTransferMap._fromProtobuf(\n record.tokenTransferLists != null\n ? record.tokenTransferLists\n : []\n ),\n scheduleRef:\n record.scheduleRef != null\n ? ScheduleId._fromProtobuf(record.scheduleRef)\n : null,\n assessedCustomFees:\n record.assessedCustomFees != null\n ? record.assessedCustomFees.map((fee) =>\n AssessedCustomFee._fromProtobuf(fee)\n )\n : [],\n nftTransfers: TokenNftTransferMap._fromProtobuf(\n record.tokenTransferLists != null\n ? record.tokenTransferLists\n : []\n ),\n automaticTokenAssociations:\n record.automaticTokenAssociations != null\n ? record.automaticTokenAssociations.map((association) =>\n TokenAssocation._fromProtobuf(association)\n )\n : [],\n parentConsensusTimestamp:\n record.parentConsensusTimestamp != null\n ? Timestamp._fromProtobuf(record.parentConsensusTimestamp)\n : null,\n aliasKey,\n duplicates,\n children,\n });\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TransactionRecord}\n */\n static fromBytes(bytes) {\n return TransactionRecord._fromProtobuf(\n proto.TransactionGetRecordResponse.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TransactionGetRecordResponse.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import ContractLogInfo from \"./ContractLogInfo.js\";\nimport ContractId from \"./ContractId.js\";\nimport BigNumber from \"bignumber.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\nimport * as util from \"../util.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IContractFunctionResult} proto.IContractFunctionResult\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n */\n/**\n * The result returned by a call to a smart contract function. This is part of the response to\n * a ContractCallLocal query, and is in the record for a ContractCall or ContractCreateInstance\n * transaction. The ContractCreateInstance transaction record has the results of the call to\n * the constructor.\n */\nexport default class ContractFunctionResult {\n /**\n * Constructor isn't part of the stable API\n *\n * @param {object} result\n * @param {?ContractId} result.contractId\n * @param {?string} result.errorMessage\n * @param {Uint8Array} result.bloom\n * @param {Long} result.gasUsed\n * @param {ContractLogInfo[]} result.logs\n * @param {ContractId[]} result.createdContractIds\n * @param {Uint8Array} result.bytes\n */\n constructor(result) {\n /**\n * The smart contract instance whose function was called.\n */\n this.contractId = result.contractId;\n\n this.bytes = result.bytes;\n\n /**\n * Message In case there was an error during smart contract execution.\n */\n this.errorMessage = result.errorMessage;\n\n /**\n * Bloom filter for record\n */\n this.bloom = result.bloom;\n\n /**\n * Units of gas used to execute contract.\n */\n this.gasUsed = result.gasUsed;\n\n /**\n * The log info for events returned by the function.\n */\n this.logs = result.logs;\n\n this.createdContractIds = result.createdContractIds;\n }\n\n /**\n * @param {proto.IContractFunctionResult} result\n * @returns {ContractFunctionResult}\n */\n static _fromProtobuf(result) {\n const contractId = /** @type {proto.IContractID | null} */ (\n result.contractID\n );\n const gas = /** @type {Long | number} */ (result.gasUsed);\n\n return new ContractFunctionResult({\n bytes: /** @type {Uint8Array} */ (result.contractCallResult),\n contractId:\n contractId != null\n ? ContractId._fromProtobuf(contractId)\n : null,\n errorMessage:\n result.errorMessage != null ? result.errorMessage : null,\n bloom: /** @type {Uint8Array} */ (result.bloom),\n gasUsed: gas instanceof Long ? gas : Long.fromValue(gas),\n logs: (result.logInfo != null ? result.logInfo : []).map((info) =>\n ContractLogInfo._fromProtobuf(info)\n ),\n createdContractIds: (result.createdContractIDs != null\n ? result.createdContractIDs\n : []\n ).map((contractId) => ContractId._fromProtobuf(contractId)),\n });\n }\n\n /**\n * @returns {Uint8Array}\n */\n asBytes() {\n return this.bytes;\n }\n\n /**\n * @param {number} [index]\n * @returns {string}\n */\n getString(index) {\n return utf8.decode(this.getBytes(index));\n }\n\n /**\n * @private\n * @param {number} [index]\n * @returns {Uint8Array}\n */\n getBytes(index) {\n // Len should never be larger than Number.MAX\n // index * 32 is the position of the lenth\n // (index + 1) * 32 onward to (index + 1) * 32 + len will be the elements of the array\n // Arrays in solidity cannot be longer than 1024:\n // https://solidity.readthedocs.io/en/v0.4.21/introduction-to-smart-contracts.html\n const offset = this.getInt32(index);\n const len = util.safeView(this.bytes).getInt32(offset + 28);\n\n return this.bytes.subarray(offset + 32, offset + 32 + len);\n }\n\n /**\n * @param {number} [index]\n * @returns {Uint8Array}\n */\n getBytes32(index) {\n return this.bytes.subarray(\n (index != null ? index : 0) * 32,\n (index != null ? index : 0) * 32 + 32\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {boolean}\n */\n getBool(index) {\n return this.bytes[(index != null ? index : 0) * 32 + 31] !== 0;\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getInt8(index) {\n return this.bytes[(index != null ? index : 0) * 32 + 31];\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getInt32(index) {\n // .getInt32() interprets as big-endian\n // Using DataView instead of Uint32Array because the latter interprets\n // using platform endianness which is little-endian on x86\n const position = (index != null ? index : 0) * 32 + 28;\n return util.safeView(this.bytes).getInt32(position);\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getInt64(index) {\n return new BigNumber(\n hex.encode(\n this._getBytes32(index != null ? index : 0).subarray(24, 32)\n ),\n 16\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getInt256(index) {\n return new BigNumber(\n hex.encode(this._getBytes32(index != null ? index : 0)),\n 16\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getUint8(index) {\n return this.bytes[(index != null ? index : 0) * 32 + 31];\n }\n\n /**\n * @param {number} [index]\n * @returns {number}\n */\n getUint32(index) {\n // .getUint32() interprets as big-endian\n // Using DataView instead of Uint32Array because the latter interprets\n // using platform endianness which is little-endian on x86\n const position = (index != null ? index : 0) * 32 + 28;\n return util.safeView(this.bytes).getUint32(position);\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getUint64(index) {\n return new BigNumber(\n hex.encode(this._getBytes32(index).subarray(24, 32)),\n 16\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {BigNumber}\n */\n getUint256(index) {\n return new BigNumber(hex.encode(this._getBytes32(index)), 16);\n }\n\n /**\n * @param {number} [index]\n * @returns {string}\n */\n getAddress(index) {\n return hex.encode(\n this.bytes.subarray(\n (index != null ? index : 0) * 32 + 12,\n (index != null ? index : 0) * 32 + 32\n )\n );\n }\n\n /**\n * @param {number} [index]\n * @returns {Uint8Array}\n */\n _getBytes32(index) {\n return this.bytes.subarray(\n (index != null ? index : 0) * 32,\n (index != null ? index : 0) * 32 + 32\n );\n }\n}\n","import AccountId from \"./AccountId.js\";\nimport Duration from \"../Duration.js\";\nimport KeyList from \"../KeyList.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ILiveHash} proto.ILiveHash\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n */\n\n/**\n * Response when the client sends the node CryptoGetInfoQuery.\n */\nexport default class LiveHash {\n /**\n * @private\n * @param {object} props\n * @param {AccountId} props.accountId\n * @param {Uint8Array} props.hash\n * @param {KeyList} props.keys\n * @param {Duration} props.duration\n */\n constructor(props) {\n /** @readonly */\n this.accountId = props.accountId;\n\n /** @readonly */\n this.hash = props.hash;\n\n /** @readonly */\n this.keys = props.keys;\n\n /** @readonly */\n this.duration = props.duration;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ILiveHash} liveHash\n * @returns {LiveHash}\n */\n static _fromProtobuf(liveHash) {\n const liveHash_ = /** @type {proto.ILiveHash} */ (liveHash);\n\n return new LiveHash({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (liveHash_.accountId)\n ),\n hash: liveHash_.hash != null ? liveHash_.hash : new Uint8Array(),\n keys:\n liveHash_.keys != null\n ? KeyList.__fromProtobufKeyList(liveHash_.keys)\n : new KeyList(),\n duration: Duration._fromProtobuf(\n /** @type {proto.IDuration} */ (liveHash_.duration)\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.ILiveHash}\n */\n _toProtobuf() {\n return {\n accountId: this.accountId._toProtobuf(),\n hash: this.hash,\n keys: this.keys._toProtobufKey().keyList,\n duration: this.duration._toProtobuf(),\n };\n }\n}\n","/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").TokenType} proto.TokenType\n */\n\nexport default class TokenType {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case TokenType.FungibleCommon:\n return \"FUNGIBLE_COMMON\";\n case TokenType.NonFungibleUnique:\n return \"NON_FUNGIBLE_UNIQUE\";\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {TokenType}\n */\n static _fromCode(code) {\n switch (code) {\n case 0:\n return TokenType.FungibleCommon;\n case 1:\n return TokenType.NonFungibleUnique;\n }\n\n throw new Error(\n `(BUG) TokenType.fromCode() does not handle code: ${code}`\n );\n }\n\n /**\n * @returns {proto.TokenType}\n */\n valueOf() {\n return this._code;\n }\n}\n\n/**\n * Interchangeable value with one another, where any quantity of them has the\n * same value as another equal quantity if they are in the same class. Share\n * a single set of properties, not distinct from one another. Simply represented\n * as a balance or quantity to a given Hedera account.\n */\nTokenType.FungibleCommon = new TokenType(0);\n\n/**\n * Unique, not interchangeable with other tokens of the same type as they\n * typically have different values. Individually traced and can carry unique\n * properties (e.g. serial number).\n */\nTokenType.NonFungibleUnique = new TokenType(1);\n","/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").TokenSupplyType} proto.TokenSupplyType\n */\n\nexport default class TokenSupplyType {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case TokenSupplyType.Infinite:\n return \"INFINITE\";\n case TokenSupplyType.Finite:\n return \"FINITE\";\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {TokenSupplyType}\n */\n static _fromCode(code) {\n switch (code) {\n case 0:\n return TokenSupplyType.Infinite;\n case 1:\n return TokenSupplyType.Finite;\n }\n\n throw new Error(\n `(BUG) TokenSupplyType.fromCode() does not handle code: ${code}`\n );\n }\n\n /**\n * @returns {proto.TokenSupplyType}\n */\n valueOf() {\n return this._code;\n }\n}\n\n/**\n * Interchangeable value with one another, where any quantity of them has the\n * same value as another equal quantity if they are in the same class. Share\n * a single set of properties, not distinct from one another. Simply represented\n * as a balance or quantity to a given Hedera account.\n */\nTokenSupplyType.Infinite = new TokenSupplyType(0);\n\n/**\n * Unique, not interchangeable with other tokens of the same type as they\n * typically have different values. Individually traced and can carry unique\n * properties (e.g. serial number).\n */\nTokenSupplyType.Finite = new TokenSupplyType(1);\n","\"use strict\";\nimport { BigNumber } from \"@ethersproject/bignumber\";\nimport { defineReadOnly } from \"@ethersproject/properties\";\nimport { Logger } from \"@ethersproject/logger\";\nimport { version } from \"./_version\";\nconst logger = new Logger(version);\n;\nconst _constructorGuard = {};\nlet ModifiersBytes = { calldata: true, memory: true, storage: true };\nlet ModifiersNest = { calldata: true, memory: true };\nfunction checkModifier(type, name) {\n if (type === \"bytes\" || type === \"string\") {\n if (ModifiersBytes[name]) {\n return true;\n }\n }\n else if (type === \"address\") {\n if (name === \"payable\") {\n return true;\n }\n }\n else if (type.indexOf(\"[\") >= 0 || type === \"tuple\") {\n if (ModifiersNest[name]) {\n return true;\n }\n }\n if (ModifiersBytes[name] || name === \"payable\") {\n logger.throwArgumentError(\"invalid modifier\", \"name\", name);\n }\n return false;\n}\n// @TODO: Make sure that children of an indexed tuple are marked with a null indexed\nfunction parseParamType(param, allowIndexed) {\n let originalParam = param;\n function throwError(i) {\n logger.throwArgumentError(`unexpected character at position ${i}`, \"param\", param);\n }\n param = param.replace(/\\s/g, \" \");\n function newNode(parent) {\n let node = { type: \"\", name: \"\", parent: parent, state: { allowType: true } };\n if (allowIndexed) {\n node.indexed = false;\n }\n return node;\n }\n let parent = { type: \"\", name: \"\", state: { allowType: true } };\n let node = parent;\n for (let i = 0; i < param.length; i++) {\n let c = param[i];\n switch (c) {\n case \"(\":\n if (node.state.allowType && node.type === \"\") {\n node.type = \"tuple\";\n }\n else if (!node.state.allowParams) {\n throwError(i);\n }\n node.state.allowType = false;\n node.type = verifyType(node.type);\n node.components = [newNode(node)];\n node = node.components[0];\n break;\n case \")\":\n delete node.state;\n if (node.name === \"indexed\") {\n if (!allowIndexed) {\n throwError(i);\n }\n node.indexed = true;\n node.name = \"\";\n }\n if (checkModifier(node.type, node.name)) {\n node.name = \"\";\n }\n node.type = verifyType(node.type);\n let child = node;\n node = node.parent;\n if (!node) {\n throwError(i);\n }\n delete child.parent;\n node.state.allowParams = false;\n node.state.allowName = true;\n node.state.allowArray = true;\n break;\n case \",\":\n delete node.state;\n if (node.name === \"indexed\") {\n if (!allowIndexed) {\n throwError(i);\n }\n node.indexed = true;\n node.name = \"\";\n }\n if (checkModifier(node.type, node.name)) {\n node.name = \"\";\n }\n node.type = verifyType(node.type);\n let sibling = newNode(node.parent);\n //{ type: \"\", name: \"\", parent: node.parent, state: { allowType: true } };\n node.parent.components.push(sibling);\n delete node.parent;\n node = sibling;\n break;\n // Hit a space...\n case \" \":\n // If reading type, the type is done and may read a param or name\n if (node.state.allowType) {\n if (node.type !== \"\") {\n node.type = verifyType(node.type);\n delete node.state.allowType;\n node.state.allowName = true;\n node.state.allowParams = true;\n }\n }\n // If reading name, the name is done\n if (node.state.allowName) {\n if (node.name !== \"\") {\n if (node.name === \"indexed\") {\n if (!allowIndexed) {\n throwError(i);\n }\n if (node.indexed) {\n throwError(i);\n }\n node.indexed = true;\n node.name = \"\";\n }\n else if (checkModifier(node.type, node.name)) {\n node.name = \"\";\n }\n else {\n node.state.allowName = false;\n }\n }\n }\n break;\n case \"[\":\n if (!node.state.allowArray) {\n throwError(i);\n }\n node.type += c;\n node.state.allowArray = false;\n node.state.allowName = false;\n node.state.readArray = true;\n break;\n case \"]\":\n if (!node.state.readArray) {\n throwError(i);\n }\n node.type += c;\n node.state.readArray = false;\n node.state.allowArray = true;\n node.state.allowName = true;\n break;\n default:\n if (node.state.allowType) {\n node.type += c;\n node.state.allowParams = true;\n node.state.allowArray = true;\n }\n else if (node.state.allowName) {\n node.name += c;\n delete node.state.allowArray;\n }\n else if (node.state.readArray) {\n node.type += c;\n }\n else {\n throwError(i);\n }\n }\n }\n if (node.parent) {\n logger.throwArgumentError(\"unexpected eof\", \"param\", param);\n }\n delete parent.state;\n if (node.name === \"indexed\") {\n if (!allowIndexed) {\n throwError(originalParam.length - 7);\n }\n if (node.indexed) {\n throwError(originalParam.length - 7);\n }\n node.indexed = true;\n node.name = \"\";\n }\n else if (checkModifier(node.type, node.name)) {\n node.name = \"\";\n }\n parent.type = verifyType(parent.type);\n return parent;\n}\nfunction populate(object, params) {\n for (let key in params) {\n defineReadOnly(object, key, params[key]);\n }\n}\nexport const FormatTypes = Object.freeze({\n // Bare formatting, as is needed for computing a sighash of an event or function\n sighash: \"sighash\",\n // Human-Readable with Minimal spacing and without names (compact human-readable)\n minimal: \"minimal\",\n // Human-Readble with nice spacing, including all names\n full: \"full\",\n // JSON-format a la Solidity\n json: \"json\"\n});\nconst paramTypeArray = new RegExp(/^(.*)\\[([0-9]*)\\]$/);\nexport class ParamType {\n constructor(constructorGuard, params) {\n if (constructorGuard !== _constructorGuard) {\n logger.throwError(\"use fromString\", Logger.errors.UNSUPPORTED_OPERATION, {\n operation: \"new ParamType()\"\n });\n }\n populate(this, params);\n let match = this.type.match(paramTypeArray);\n if (match) {\n populate(this, {\n arrayLength: parseInt(match[2] || \"-1\"),\n arrayChildren: ParamType.fromObject({\n type: match[1],\n components: this.components\n }),\n baseType: \"array\"\n });\n }\n else {\n populate(this, {\n arrayLength: null,\n arrayChildren: null,\n baseType: ((this.components != null) ? \"tuple\" : this.type)\n });\n }\n this._isParamType = true;\n Object.freeze(this);\n }\n // Format the parameter fragment\n // - sighash: \"(uint256,address)\"\n // - minimal: \"tuple(uint256,address) indexed\"\n // - full: \"tuple(uint256 foo, addres bar) indexed baz\"\n format(format) {\n if (!format) {\n format = FormatTypes.sighash;\n }\n if (!FormatTypes[format]) {\n logger.throwArgumentError(\"invalid format type\", \"format\", format);\n }\n if (format === FormatTypes.json) {\n let result = {\n type: ((this.baseType === \"tuple\") ? \"tuple\" : this.type),\n name: (this.name || undefined)\n };\n if (typeof (this.indexed) === \"boolean\") {\n result.indexed = this.indexed;\n }\n if (this.components) {\n result.components = this.components.map((comp) => JSON.parse(comp.format(format)));\n }\n return JSON.stringify(result);\n }\n let result = \"\";\n // Array\n if (this.baseType === \"array\") {\n result += this.arrayChildren.format(format);\n result += \"[\" + (this.arrayLength < 0 ? \"\" : String(this.arrayLength)) + \"]\";\n }\n else {\n if (this.baseType === \"tuple\") {\n if (format !== FormatTypes.sighash) {\n result += this.type;\n }\n result += \"(\" + this.components.map((comp) => comp.format(format)).join((format === FormatTypes.full) ? \", \" : \",\") + \")\";\n }\n else {\n result += this.type;\n }\n }\n if (format !== FormatTypes.sighash) {\n if (this.indexed === true) {\n result += \" indexed\";\n }\n if (format === FormatTypes.full && this.name) {\n result += \" \" + this.name;\n }\n }\n return result;\n }\n static from(value, allowIndexed) {\n if (typeof (value) === \"string\") {\n return ParamType.fromString(value, allowIndexed);\n }\n return ParamType.fromObject(value);\n }\n static fromObject(value) {\n if (ParamType.isParamType(value)) {\n return value;\n }\n return new ParamType(_constructorGuard, {\n name: (value.name || null),\n type: verifyType(value.type),\n indexed: ((value.indexed == null) ? null : !!value.indexed),\n components: (value.components ? value.components.map(ParamType.fromObject) : null)\n });\n }\n static fromString(value, allowIndexed) {\n function ParamTypify(node) {\n return ParamType.fromObject({\n name: node.name,\n type: node.type,\n indexed: node.indexed,\n components: node.components\n });\n }\n return ParamTypify(parseParamType(value, !!allowIndexed));\n }\n static isParamType(value) {\n return !!(value != null && value._isParamType);\n }\n}\n;\nfunction parseParams(value, allowIndex) {\n return splitNesting(value).map((param) => ParamType.fromString(param, allowIndex));\n}\nexport class Fragment {\n constructor(constructorGuard, params) {\n if (constructorGuard !== _constructorGuard) {\n logger.throwError(\"use a static from method\", Logger.errors.UNSUPPORTED_OPERATION, {\n operation: \"new Fragment()\"\n });\n }\n populate(this, params);\n this._isFragment = true;\n Object.freeze(this);\n }\n static from(value) {\n if (Fragment.isFragment(value)) {\n return value;\n }\n if (typeof (value) === \"string\") {\n return Fragment.fromString(value);\n }\n return Fragment.fromObject(value);\n }\n static fromObject(value) {\n if (Fragment.isFragment(value)) {\n return value;\n }\n switch (value.type) {\n case \"function\":\n return FunctionFragment.fromObject(value);\n case \"event\":\n return EventFragment.fromObject(value);\n case \"constructor\":\n return ConstructorFragment.fromObject(value);\n case \"fallback\":\n case \"receive\":\n // @TODO: Something? Maybe return a FunctionFragment? A custom DefaultFunctionFragment?\n return null;\n }\n return logger.throwArgumentError(\"invalid fragment object\", \"value\", value);\n }\n static fromString(value) {\n // Make sure the \"returns\" is surrounded by a space and all whitespace is exactly one space\n value = value.replace(/\\s/g, \" \");\n value = value.replace(/\\(/g, \" (\").replace(/\\)/g, \") \").replace(/\\s+/g, \" \");\n value = value.trim();\n if (value.split(\" \")[0] === \"event\") {\n return EventFragment.fromString(value.substring(5).trim());\n }\n else if (value.split(\" \")[0] === \"function\") {\n return FunctionFragment.fromString(value.substring(8).trim());\n }\n else if (value.split(\"(\")[0].trim() === \"constructor\") {\n return ConstructorFragment.fromString(value.trim());\n }\n return logger.throwArgumentError(\"unsupported fragment\", \"value\", value);\n }\n static isFragment(value) {\n return !!(value && value._isFragment);\n }\n}\nexport class EventFragment extends Fragment {\n format(format) {\n if (!format) {\n format = FormatTypes.sighash;\n }\n if (!FormatTypes[format]) {\n logger.throwArgumentError(\"invalid format type\", \"format\", format);\n }\n if (format === FormatTypes.json) {\n return JSON.stringify({\n type: \"event\",\n anonymous: this.anonymous,\n name: this.name,\n inputs: this.inputs.map((input) => JSON.parse(input.format(format)))\n });\n }\n let result = \"\";\n if (format !== FormatTypes.sighash) {\n result += \"event \";\n }\n result += this.name + \"(\" + this.inputs.map((input) => input.format(format)).join((format === FormatTypes.full) ? \", \" : \",\") + \") \";\n if (format !== FormatTypes.sighash) {\n if (this.anonymous) {\n result += \"anonymous \";\n }\n }\n return result.trim();\n }\n static from(value) {\n if (typeof (value) === \"string\") {\n return EventFragment.fromString(value);\n }\n return EventFragment.fromObject(value);\n }\n static fromObject(value) {\n if (EventFragment.isEventFragment(value)) {\n return value;\n }\n if (value.type !== \"event\") {\n logger.throwArgumentError(\"invalid event object\", \"value\", value);\n }\n const params = {\n name: verifyIdentifier(value.name),\n anonymous: value.anonymous,\n inputs: (value.inputs ? value.inputs.map(ParamType.fromObject) : []),\n type: \"event\"\n };\n return new EventFragment(_constructorGuard, params);\n }\n static fromString(value) {\n let match = value.match(regexParen);\n if (!match) {\n logger.throwArgumentError(\"invalid event string\", \"value\", value);\n }\n let anonymous = false;\n match[3].split(\" \").forEach((modifier) => {\n switch (modifier.trim()) {\n case \"anonymous\":\n anonymous = true;\n break;\n case \"\":\n break;\n default:\n logger.warn(\"unknown modifier: \" + modifier);\n }\n });\n return EventFragment.fromObject({\n name: match[1].trim(),\n anonymous: anonymous,\n inputs: parseParams(match[2], true),\n type: \"event\"\n });\n }\n static isEventFragment(value) {\n return (value && value._isFragment && value.type === \"event\");\n }\n}\nfunction parseGas(value, params) {\n params.gas = null;\n let comps = value.split(\"@\");\n if (comps.length !== 1) {\n if (comps.length > 2) {\n logger.throwArgumentError(\"invalid human-readable ABI signature\", \"value\", value);\n }\n if (!comps[1].match(/^[0-9]+$/)) {\n logger.throwArgumentError(\"invalid human-readable ABI signature gas\", \"value\", value);\n }\n params.gas = BigNumber.from(comps[1]);\n return comps[0];\n }\n return value;\n}\nfunction parseModifiers(value, params) {\n params.constant = false;\n params.payable = false;\n params.stateMutability = \"nonpayable\";\n value.split(\" \").forEach((modifier) => {\n switch (modifier.trim()) {\n case \"constant\":\n params.constant = true;\n break;\n case \"payable\":\n params.payable = true;\n params.stateMutability = \"payable\";\n break;\n case \"nonpayable\":\n params.payable = false;\n params.stateMutability = \"nonpayable\";\n break;\n case \"pure\":\n params.constant = true;\n params.stateMutability = \"pure\";\n break;\n case \"view\":\n params.constant = true;\n params.stateMutability = \"view\";\n break;\n case \"external\":\n case \"public\":\n case \"\":\n break;\n default:\n console.log(\"unknown modifier: \" + modifier);\n }\n });\n}\nfunction verifyState(value) {\n let result = {\n constant: false,\n payable: true,\n stateMutability: \"payable\"\n };\n if (value.stateMutability != null) {\n result.stateMutability = value.stateMutability;\n // Set (and check things are consistent) the constant property\n result.constant = (result.stateMutability === \"view\" || result.stateMutability === \"pure\");\n if (value.constant != null) {\n if ((!!value.constant) !== result.constant) {\n logger.throwArgumentError(\"cannot have constant function with mutability \" + result.stateMutability, \"value\", value);\n }\n }\n // Set (and check things are consistent) the payable property\n result.payable = (result.stateMutability === \"payable\");\n if (value.payable != null) {\n if ((!!value.payable) !== result.payable) {\n logger.throwArgumentError(\"cannot have payable function with mutability \" + result.stateMutability, \"value\", value);\n }\n }\n }\n else if (value.payable != null) {\n result.payable = !!value.payable;\n // If payable we can assume non-constant; otherwise we can't assume\n if (value.constant == null && !result.payable && value.type !== \"constructor\") {\n logger.throwArgumentError(\"unable to determine stateMutability\", \"value\", value);\n }\n result.constant = !!value.constant;\n if (result.constant) {\n result.stateMutability = \"view\";\n }\n else {\n result.stateMutability = (result.payable ? \"payable\" : \"nonpayable\");\n }\n if (result.payable && result.constant) {\n logger.throwArgumentError(\"cannot have constant payable function\", \"value\", value);\n }\n }\n else if (value.constant != null) {\n result.constant = !!value.constant;\n result.payable = !result.constant;\n result.stateMutability = (result.constant ? \"view\" : \"payable\");\n }\n else if (value.type !== \"constructor\") {\n logger.throwArgumentError(\"unable to determine stateMutability\", \"value\", value);\n }\n return result;\n}\nexport class ConstructorFragment extends Fragment {\n format(format) {\n if (!format) {\n format = FormatTypes.sighash;\n }\n if (!FormatTypes[format]) {\n logger.throwArgumentError(\"invalid format type\", \"format\", format);\n }\n if (format === FormatTypes.json) {\n return JSON.stringify({\n type: \"constructor\",\n stateMutability: ((this.stateMutability !== \"nonpayable\") ? this.stateMutability : undefined),\n payble: this.payable,\n gas: (this.gas ? this.gas.toNumber() : undefined),\n inputs: this.inputs.map((input) => JSON.parse(input.format(format)))\n });\n }\n if (format === FormatTypes.sighash) {\n logger.throwError(\"cannot format a constructor for sighash\", Logger.errors.UNSUPPORTED_OPERATION, {\n operation: \"format(sighash)\"\n });\n }\n let result = \"constructor(\" + this.inputs.map((input) => input.format(format)).join((format === FormatTypes.full) ? \", \" : \",\") + \") \";\n if (this.stateMutability && this.stateMutability !== \"nonpayable\") {\n result += this.stateMutability + \" \";\n }\n return result.trim();\n }\n static from(value) {\n if (typeof (value) === \"string\") {\n return ConstructorFragment.fromString(value);\n }\n return ConstructorFragment.fromObject(value);\n }\n static fromObject(value) {\n if (ConstructorFragment.isConstructorFragment(value)) {\n return value;\n }\n if (value.type !== \"constructor\") {\n logger.throwArgumentError(\"invalid constructor object\", \"value\", value);\n }\n let state = verifyState(value);\n if (state.constant) {\n logger.throwArgumentError(\"constructor cannot be constant\", \"value\", value);\n }\n const params = {\n name: null,\n type: value.type,\n inputs: (value.inputs ? value.inputs.map(ParamType.fromObject) : []),\n payable: state.payable,\n stateMutability: state.stateMutability,\n gas: (value.gas ? BigNumber.from(value.gas) : null)\n };\n return new ConstructorFragment(_constructorGuard, params);\n }\n static fromString(value) {\n let params = { type: \"constructor\" };\n value = parseGas(value, params);\n let parens = value.match(regexParen);\n if (!parens || parens[1].trim() !== \"constructor\") {\n logger.throwArgumentError(\"invalid constructor string\", \"value\", value);\n }\n params.inputs = parseParams(parens[2].trim(), false);\n parseModifiers(parens[3].trim(), params);\n return ConstructorFragment.fromObject(params);\n }\n static isConstructorFragment(value) {\n return (value && value._isFragment && value.type === \"constructor\");\n }\n}\nexport class FunctionFragment extends ConstructorFragment {\n format(format) {\n if (!format) {\n format = FormatTypes.sighash;\n }\n if (!FormatTypes[format]) {\n logger.throwArgumentError(\"invalid format type\", \"format\", format);\n }\n if (format === FormatTypes.json) {\n return JSON.stringify({\n type: \"function\",\n name: this.name,\n constant: this.constant,\n stateMutability: ((this.stateMutability !== \"nonpayable\") ? this.stateMutability : undefined),\n payble: this.payable,\n gas: (this.gas ? this.gas.toNumber() : undefined),\n inputs: this.inputs.map((input) => JSON.parse(input.format(format))),\n ouputs: this.outputs.map((output) => JSON.parse(output.format(format))),\n });\n }\n let result = \"\";\n if (format !== FormatTypes.sighash) {\n result += \"function \";\n }\n result += this.name + \"(\" + this.inputs.map((input) => input.format(format)).join((format === FormatTypes.full) ? \", \" : \",\") + \") \";\n if (format !== FormatTypes.sighash) {\n if (this.stateMutability) {\n if (this.stateMutability !== \"nonpayable\") {\n result += (this.stateMutability + \" \");\n }\n }\n else if (this.constant) {\n result += \"view \";\n }\n if (this.outputs && this.outputs.length) {\n result += \"returns (\" + this.outputs.map((output) => output.format(format)).join(\", \") + \") \";\n }\n if (this.gas != null) {\n result += \"@\" + this.gas.toString() + \" \";\n }\n }\n return result.trim();\n }\n static from(value) {\n if (typeof (value) === \"string\") {\n return FunctionFragment.fromString(value);\n }\n return FunctionFragment.fromObject(value);\n }\n static fromObject(value) {\n if (FunctionFragment.isFunctionFragment(value)) {\n return value;\n }\n if (value.type !== \"function\") {\n logger.throwArgumentError(\"invalid function object\", \"value\", value);\n }\n let state = verifyState(value);\n const params = {\n type: value.type,\n name: verifyIdentifier(value.name),\n constant: state.constant,\n inputs: (value.inputs ? value.inputs.map(ParamType.fromObject) : []),\n outputs: (value.outputs ? value.outputs.map(ParamType.fromObject) : []),\n payable: state.payable,\n stateMutability: state.stateMutability,\n gas: (value.gas ? BigNumber.from(value.gas) : null)\n };\n return new FunctionFragment(_constructorGuard, params);\n }\n static fromString(value) {\n let params = { type: \"function\" };\n value = parseGas(value, params);\n let comps = value.split(\" returns \");\n if (comps.length > 2) {\n logger.throwArgumentError(\"invalid function string\", \"value\", value);\n }\n let parens = comps[0].match(regexParen);\n if (!parens) {\n logger.throwArgumentError(\"invalid function signature\", \"value\", value);\n }\n params.name = parens[1].trim();\n if (params.name) {\n verifyIdentifier(params.name);\n }\n params.inputs = parseParams(parens[2], false);\n parseModifiers(parens[3].trim(), params);\n // We have outputs\n if (comps.length > 1) {\n let returns = comps[1].match(regexParen);\n if (returns[1].trim() != \"\" || returns[3].trim() != \"\") {\n logger.throwArgumentError(\"unexpected tokens\", \"value\", value);\n }\n params.outputs = parseParams(returns[2], false);\n }\n else {\n params.outputs = [];\n }\n return FunctionFragment.fromObject(params);\n }\n static isFunctionFragment(value) {\n return (value && value._isFragment && value.type === \"function\");\n }\n}\n//export class ErrorFragment extends Fragment {\n//}\n//export class StructFragment extends Fragment {\n//}\nfunction verifyType(type) {\n // These need to be transformed to their full description\n if (type.match(/^uint($|[^1-9])/)) {\n type = \"uint256\" + type.substring(4);\n }\n else if (type.match(/^int($|[^1-9])/)) {\n type = \"int256\" + type.substring(3);\n }\n // @TODO: more verification\n return type;\n}\nconst regexIdentifier = new RegExp(\"^[A-Za-z_][A-Za-z0-9_]*$\");\nfunction verifyIdentifier(value) {\n if (!value || !value.match(regexIdentifier)) {\n logger.throwArgumentError(`invalid identifier \"${value}\"`, \"value\", value);\n }\n return value;\n}\nconst regexParen = new RegExp(\"^([^)(]*)\\\\((.*)\\\\)([^)(]*)$\");\nfunction splitNesting(value) {\n value = value.trim();\n let result = [];\n let accum = \"\";\n let depth = 0;\n for (let offset = 0; offset < value.length; offset++) {\n let c = value[offset];\n if (c === \",\" && depth === 0) {\n result.push(accum);\n accum = \"\";\n }\n else {\n accum += c;\n if (c === \"(\") {\n depth++;\n }\n else if (c === \")\") {\n depth--;\n if (depth === -1) {\n logger.throwArgumentError(\"unbalanced parenthesis\", \"value\", value);\n }\n }\n }\n }\n if (accum) {\n result.push(accum);\n }\n return result;\n}\n//# sourceMappingURL=fragments.js.map","\"use strict\";\nimport { arrayify } from \"@ethersproject/bytes\";\nimport { Logger } from \"@ethersproject/logger\";\nimport { version } from \"./_version\";\nconst logger = new Logger(version);\n///////////////////////////////\nexport var UnicodeNormalizationForm;\n(function (UnicodeNormalizationForm) {\n UnicodeNormalizationForm[\"current\"] = \"\";\n UnicodeNormalizationForm[\"NFC\"] = \"NFC\";\n UnicodeNormalizationForm[\"NFD\"] = \"NFD\";\n UnicodeNormalizationForm[\"NFKC\"] = \"NFKC\";\n UnicodeNormalizationForm[\"NFKD\"] = \"NFKD\";\n})(UnicodeNormalizationForm || (UnicodeNormalizationForm = {}));\n;\nexport var Utf8ErrorReason;\n(function (Utf8ErrorReason) {\n // A continuation byte was present where there was nothing to continue\n // - offset = the index the codepoint began in\n Utf8ErrorReason[\"UNEXPECTED_CONTINUE\"] = \"unexpected continuation byte\";\n // An invalid (non-continuation) byte to start a UTF-8 codepoint was found\n // - offset = the index the codepoint began in\n Utf8ErrorReason[\"BAD_PREFIX\"] = \"bad codepoint prefix\";\n // The string is too short to process the expected codepoint\n // - offset = the index the codepoint began in\n Utf8ErrorReason[\"OVERRUN\"] = \"string overrun\";\n // A missing continuation byte was expected but not found\n // - offset = the index the continuation byte was expected at\n Utf8ErrorReason[\"MISSING_CONTINUE\"] = \"missing continuation byte\";\n // The computed code point is outside the range for UTF-8\n // - offset = start of this codepoint\n // - badCodepoint = the computed codepoint; outside the UTF-8 range\n Utf8ErrorReason[\"OUT_OF_RANGE\"] = \"out of UTF-8 range\";\n // UTF-8 strings may not contain UTF-16 surrogate pairs\n // - offset = start of this codepoint\n // - badCodepoint = the computed codepoint; inside the UTF-16 surrogate range\n Utf8ErrorReason[\"UTF16_SURROGATE\"] = \"UTF-16 surrogate\";\n // The string is an overlong representation\n // - offset = start of this codepoint\n // - badCodepoint = the computed codepoint; already bounds checked\n Utf8ErrorReason[\"OVERLONG\"] = \"overlong representation\";\n})(Utf8ErrorReason || (Utf8ErrorReason = {}));\n;\nfunction errorFunc(reason, offset, bytes, output, badCodepoint) {\n return logger.throwArgumentError(`invalid codepoint at offset ${offset}; ${reason}`, \"bytes\", bytes);\n}\nfunction ignoreFunc(reason, offset, bytes, output, badCodepoint) {\n // If there is an invalid prefix (including stray continuation), skip any additional continuation bytes\n if (reason === Utf8ErrorReason.BAD_PREFIX || reason === Utf8ErrorReason.UNEXPECTED_CONTINUE) {\n let i = 0;\n for (let o = offset + 1; o < bytes.length; o++) {\n if (bytes[o] >> 6 !== 0x02) {\n break;\n }\n i++;\n }\n return i;\n }\n // This byte runs us past the end of the string, so just jump to the end\n // (but the first byte was read already read and therefore skipped)\n if (reason === Utf8ErrorReason.OVERRUN) {\n return bytes.length - offset - 1;\n }\n // Nothing to skip\n return 0;\n}\nfunction replaceFunc(reason, offset, bytes, output, badCodepoint) {\n // Overlong representations are otherwise \"valid\" code points; just non-deistingtished\n if (reason === Utf8ErrorReason.OVERLONG) {\n output.push(badCodepoint);\n return 0;\n }\n // Put the replacement character into the output\n output.push(0xfffd);\n // Otherwise, process as if ignoring errors\n return ignoreFunc(reason, offset, bytes, output, badCodepoint);\n}\n// Common error handing strategies\nexport const Utf8ErrorFuncs = Object.freeze({\n error: errorFunc,\n ignore: ignoreFunc,\n replace: replaceFunc\n});\n// http://stackoverflow.com/questions/13356493/decode-utf-8-with-javascript#13691499\nfunction getUtf8CodePoints(bytes, onError) {\n if (onError == null) {\n onError = Utf8ErrorFuncs.error;\n }\n bytes = arrayify(bytes);\n const result = [];\n let i = 0;\n // Invalid bytes are ignored\n while (i < bytes.length) {\n const c = bytes[i++];\n // 0xxx xxxx\n if (c >> 7 === 0) {\n result.push(c);\n continue;\n }\n // Multibyte; how many bytes left for this character?\n let extraLength = null;\n let overlongMask = null;\n // 110x xxxx 10xx xxxx\n if ((c & 0xe0) === 0xc0) {\n extraLength = 1;\n overlongMask = 0x7f;\n // 1110 xxxx 10xx xxxx 10xx xxxx\n }\n else if ((c & 0xf0) === 0xe0) {\n extraLength = 2;\n overlongMask = 0x7ff;\n // 1111 0xxx 10xx xxxx 10xx xxxx 10xx xxxx\n }\n else if ((c & 0xf8) === 0xf0) {\n extraLength = 3;\n overlongMask = 0xffff;\n }\n else {\n if ((c & 0xc0) === 0x80) {\n i += onError(Utf8ErrorReason.UNEXPECTED_CONTINUE, i - 1, bytes, result);\n }\n else {\n i += onError(Utf8ErrorReason.BAD_PREFIX, i - 1, bytes, result);\n }\n continue;\n }\n // Do we have enough bytes in our data?\n if (i - 1 + extraLength >= bytes.length) {\n i += onError(Utf8ErrorReason.OVERRUN, i - 1, bytes, result);\n continue;\n }\n // Remove the length prefix from the char\n let res = c & ((1 << (8 - extraLength - 1)) - 1);\n for (let j = 0; j < extraLength; j++) {\n let nextChar = bytes[i];\n // Invalid continuation byte\n if ((nextChar & 0xc0) != 0x80) {\n i += onError(Utf8ErrorReason.MISSING_CONTINUE, i, bytes, result);\n res = null;\n break;\n }\n ;\n res = (res << 6) | (nextChar & 0x3f);\n i++;\n }\n // See above loop for invalid continuation byte\n if (res === null) {\n continue;\n }\n // Maximum code point\n if (res > 0x10ffff) {\n i += onError(Utf8ErrorReason.OUT_OF_RANGE, i - 1 - extraLength, bytes, result, res);\n continue;\n }\n // Reserved for UTF-16 surrogate halves\n if (res >= 0xd800 && res <= 0xdfff) {\n i += onError(Utf8ErrorReason.UTF16_SURROGATE, i - 1 - extraLength, bytes, result, res);\n continue;\n }\n // Check for overlong sequences (more bytes than needed)\n if (res <= overlongMask) {\n i += onError(Utf8ErrorReason.OVERLONG, i - 1 - extraLength, bytes, result, res);\n continue;\n }\n result.push(res);\n }\n return result;\n}\n// http://stackoverflow.com/questions/18729405/how-to-convert-utf8-string-to-byte-array\nexport function toUtf8Bytes(str, form = UnicodeNormalizationForm.current) {\n if (form != UnicodeNormalizationForm.current) {\n logger.checkNormalize();\n str = str.normalize(form);\n }\n let result = [];\n for (let i = 0; i < str.length; i++) {\n const c = str.charCodeAt(i);\n if (c < 0x80) {\n result.push(c);\n }\n else if (c < 0x800) {\n result.push((c >> 6) | 0xc0);\n result.push((c & 0x3f) | 0x80);\n }\n else if ((c & 0xfc00) == 0xd800) {\n i++;\n const c2 = str.charCodeAt(i);\n if (i >= str.length || (c2 & 0xfc00) !== 0xdc00) {\n throw new Error(\"invalid utf-8 string\");\n }\n // Surrogate Pair\n const pair = 0x10000 + ((c & 0x03ff) << 10) + (c2 & 0x03ff);\n result.push((pair >> 18) | 0xf0);\n result.push(((pair >> 12) & 0x3f) | 0x80);\n result.push(((pair >> 6) & 0x3f) | 0x80);\n result.push((pair & 0x3f) | 0x80);\n }\n else {\n result.push((c >> 12) | 0xe0);\n result.push(((c >> 6) & 0x3f) | 0x80);\n result.push((c & 0x3f) | 0x80);\n }\n }\n return arrayify(result);\n}\n;\nfunction escapeChar(value) {\n const hex = (\"0000\" + value.toString(16));\n return \"\\\\u\" + hex.substring(hex.length - 4);\n}\nexport function _toEscapedUtf8String(bytes, onError) {\n return '\"' + getUtf8CodePoints(bytes, onError).map((codePoint) => {\n if (codePoint < 256) {\n switch (codePoint) {\n case 8: return \"\\\\b\";\n case 9: return \"\\\\t\";\n case 10: return \"\\\\n\";\n case 13: return \"\\\\r\";\n case 34: return \"\\\\\\\"\";\n case 92: return \"\\\\\\\\\";\n }\n if (codePoint >= 32 && codePoint < 127) {\n return String.fromCharCode(codePoint);\n }\n }\n if (codePoint <= 0xffff) {\n return escapeChar(codePoint);\n }\n codePoint -= 0x10000;\n return escapeChar(((codePoint >> 10) & 0x3ff) + 0xd800) + escapeChar((codePoint & 0x3ff) + 0xdc00);\n }).join(\"\") + '\"';\n}\nexport function _toUtf8String(codePoints) {\n return codePoints.map((codePoint) => {\n if (codePoint <= 0xffff) {\n return String.fromCharCode(codePoint);\n }\n codePoint -= 0x10000;\n return String.fromCharCode((((codePoint >> 10) & 0x3ff) + 0xd800), ((codePoint & 0x3ff) + 0xdc00));\n }).join(\"\");\n}\nexport function toUtf8String(bytes, onError) {\n return _toUtf8String(getUtf8CodePoints(bytes, onError));\n}\nexport function toUtf8CodePoints(str, form = UnicodeNormalizationForm.current) {\n return getUtf8CodePoints(toUtf8Bytes(str, form));\n}\n//# sourceMappingURL=utf8.js.map","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","export * from \"./exports.js\";\n\nexport { default as Client } from \"./client/WebClient.js\";\n","import Mnemonic from \"./Mnemonic.js\";\nimport BadKeyError from \"./BadKeyError.js\";\nimport Key from \"./Key.js\";\nimport Ed25519PrivateKey from \"./Ed25519PrivateKey.js\";\nimport EcdsaPrivateKey from \"./EcdsaPrivateKey.js\";\nimport PublicKey from \"./PublicKey.js\";\nimport { createKeystore, loadKeystore } from \"./primitive/keystore.js\";\nimport { read as readPem } from \"./encoding/pem.js\";\nimport * as hex from \"./encoding/hex.js\";\nimport * as slip10 from \"./primitive/slip10.js\";\nimport * as derive from \"./util/derive.js\";\n\n/**\n * @typedef {object} ProtoSignaturePair\n * @property {(Uint8Array | null)=} pubKeyPrefix\n * @property {(Uint8Array | null)=} ed25519\n * @property {(Uint8Array | null)=} ECDSASecp256k1\n */\n\n/**\n * @typedef {object} ProtoSigMap\n * @property {(ProtoSignaturePair[] | null)=} sigPair\n */\n\n/**\n * @typedef {object} ProtoSignedTransaction\n * @property {(Uint8Array | null)=} bodyBytes\n * @property {(ProtoSigMap | null)=} sigMap\n */\n\n/**\n * @typedef {object} Transaction\n * @property {() => boolean} isFrozen\n * @property {ProtoSignedTransaction[]} _signedTransactions\n * @property {Set} _signerPublicKeys\n * @property {(publicKey: PublicKey, signature: Uint8Array) => Transaction} addSignature\n * @property {() => void} _requireFrozen\n * @property {() => Transaction} freeze\n */\n\n/**\n * A private key on the Hedera™ network.\n */\nexport default class PrivateKey extends Key {\n /**\n * @hideconstructor\n * @internal\n * @param {Ed25519PrivateKey | EcdsaPrivateKey} key\n */\n constructor(key) {\n super();\n\n /**\n * @type {Ed25519PrivateKey | EcdsaPrivateKey}\n * @readonly\n * @private\n */\n this._key = key;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return this._key._type;\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {PrivateKey}\n */\n static generateED25519() {\n return new PrivateKey(Ed25519PrivateKey.generate());\n }\n\n /**\n * Generate a random EDSA private key.\n *\n * @returns {PrivateKey}\n */\n static generateECDSA() {\n return new PrivateKey(EcdsaPrivateKey.generate());\n }\n\n /**\n * Depredated - Use `generateEd25519()` instead\n * Generate a random Ed25519 private key.\n *\n * @returns {PrivateKey}\n */\n static generate() {\n return PrivateKey.generateED25519();\n }\n\n /**\n * Depredated - Use `generateEd25519Async()` instead\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateAsync() {\n return PrivateKey.generateED25519Async();\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateED25519Async() {\n return new PrivateKey(await Ed25519PrivateKey.generateAsync());\n }\n\n /**\n * Generate a random ECDSA private key.\n *\n * @returns {Promise}\n */\n static async generateECDSAAsync() {\n return new PrivateKey(await EcdsaPrivateKey.generateAsync());\n }\n\n /**\n * Construct a private key from bytes. Requires DER header.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytes(data) {\n try {\n return new PrivateKey(Ed25519PrivateKey.fromBytes(data));\n } catch {\n // Do nothing\n }\n\n try {\n return new PrivateKey(EcdsaPrivateKey.fromBytes(data));\n } catch {\n // Do nothing\n }\n\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n\n /**\n * Construct a ECDSA private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytesECDSA(data) {\n return new PrivateKey(EcdsaPrivateKey.fromBytes(data));\n }\n\n /**\n * Construct a ED25519 private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytesED25519(data) {\n return new PrivateKey(Ed25519PrivateKey.fromBytes(data));\n }\n\n /**\n * Construct a private key from a hex-encoded string. Requires DER header.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromString(text) {\n return PrivateKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Construct a ECDSA private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromStringECDSA(text) {\n return PrivateKey.fromBytesECDSA(hex.decode(text));\n }\n\n /**\n * Construct a Ed25519 private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromStringED25519(text) {\n return PrivateKey.fromBytesED25519(hex.decode(text));\n }\n\n /**\n * Recover a private key from a mnemonic phrase (and optionally a password).\n *\n * @param {Mnemonic | string} mnemonic\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n static async fromMnemonic(mnemonic, passphrase = \"\") {\n return (\n typeof mnemonic === \"string\"\n ? await Mnemonic.fromString(mnemonic)\n : mnemonic\n ).toPrivateKey(passphrase);\n }\n\n /**\n * Recover a private key from a keystore, previously created by `.toKeystore()`.\n *\n * This key will _not_ support child key derivation.\n *\n * @param {Uint8Array} data\n * @param {string} [passphrase]\n * @returns {Promise}\n * @throws {BadKeyError} If the passphrase is incorrect or the hash fails to validate.\n */\n static async fromKeystore(data, passphrase = \"\") {\n return PrivateKey.fromBytes(await loadKeystore(data, passphrase));\n }\n\n /**\n * Recover a private key from a pem string; the private key may be encrypted.\n *\n * This method assumes the .pem file has been converted to a string already.\n *\n * If `passphrase` is not null or empty, this looks for the first `ENCRYPTED PRIVATE KEY`\n * section and uses `passphrase` to decrypt it; otherwise, it looks for the first `PRIVATE KEY`\n * section and decodes that as a DER-encoded private key.\n *\n * @param {string} data\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n static async fromPem(data, passphrase = \"\") {\n const pem = await readPem(data, passphrase);\n\n if (\n pem instanceof Ed25519PrivateKey ||\n pem instanceof EcdsaPrivateKey\n ) {\n return new PrivateKey(pem);\n }\n\n return PrivateKey.fromBytes(pem);\n }\n\n /**\n * Derive a new private key at the given wallet index.\n *\n * Only currently supported for keys created with `fromMnemonic()`; other keys will throw\n * an error.\n *\n * You can check if a key supports derivation with `.supportsDerivation()`\n *\n * @param {number} index\n * @returns {Promise}\n * @throws If this key does not support derivation.\n */\n async derive(index) {\n // return new PrivateKey(await this._key.derive(index));\n if (this._key._chainCode == null) {\n throw new Error(\"this private key does not support key derivation\");\n }\n\n const { keyData, chainCode } = await slip10.derive(\n this.toBytesRaw(),\n this._key._chainCode,\n index\n );\n\n /** @type {new (bytes: Uint8Array, chainCode?: Uint8Array) => Ed25519PrivateKey | EcdsaPrivateKey} */\n const constructor = /** @type {any} */ (this._key.constructor);\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n return new PrivateKey(new constructor(keyData, chainCode));\n }\n\n /**\n * @param {number} index\n * @returns {Promise}\n * @throws If this key does not support derivation.\n */\n async legacyDerive(index) {\n const keyBytes = await derive.legacy(\n this.toBytesRaw().subarray(0, 32),\n index\n );\n\n /** @type {new (bytes: Uint8Array) => Ed25519PrivateKey | EcdsaPrivateKey} */\n const constructor = /** @type {any} */ (this._key.constructor);\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n return new PrivateKey(new constructor(keyBytes));\n }\n\n /**\n * Get the public key associated with this private key.\n *\n * The public key can be freely given and used by other parties to verify\n * the signatures generated by this private key.\n *\n * @returns {PublicKey}\n */\n get publicKey() {\n return new PublicKey(this._key.publicKey);\n }\n\n /**\n * Sign a message with this private key.\n *\n * @param {Uint8Array} bytes\n * @returns {Uint8Array} - The signature bytes without the message\n */\n sign(bytes) {\n return this._key.sign(bytes);\n }\n\n /**\n * @param {Transaction} transaction\n * @returns {Uint8Array}\n */\n signTransaction(transaction) {\n transaction._requireFrozen();\n\n if (!transaction.isFrozen()) {\n transaction.freeze();\n }\n\n if (transaction._signedTransactions.length != 1) {\n throw new Error(\n \"`PrivateKey.signTransaction()` requires `Transaction` to have a single node `AccountId` set\"\n );\n }\n\n const tx = /** @type {ProtoSignedTransaction} */ (\n transaction._signedTransactions[0]\n );\n\n const publicKeyHex = hex.encode(this.publicKey.toBytesRaw());\n\n if (tx.sigMap == null) {\n tx.sigMap = {};\n }\n\n if (tx.sigMap.sigPair == null) {\n tx.sigMap.sigPair = [];\n }\n\n for (const sigPair of tx.sigMap.sigPair) {\n if (\n sigPair.pubKeyPrefix != null &&\n hex.encode(sigPair.pubKeyPrefix) === publicKeyHex\n ) {\n switch (this._type) {\n case \"ED25519\":\n return /** @type {Uint8Array} */ (sigPair.ed25519);\n case \"secp256k1\":\n return /** @type {Uint8Array} */ (\n sigPair.ECDSASecp256k1\n );\n }\n }\n }\n\n const siganture = this.sign(\n tx.bodyBytes != null ? tx.bodyBytes : new Uint8Array()\n );\n\n /** @type {ProtoSignaturePair} */\n const protoSignature = {\n pubKeyPrefix: this.publicKey.toBytesRaw(),\n };\n\n switch (this._type) {\n case \"ED25519\":\n protoSignature.ed25519 = siganture;\n break;\n case \"secp256k1\":\n protoSignature.ECDSASecp256k1 = siganture;\n break;\n }\n\n tx.sigMap.sigPair.push(protoSignature);\n transaction._signerPublicKeys.add(publicKeyHex);\n\n return siganture;\n }\n\n /**\n * Check if `derive` can be called on this private key.\n *\n * This is only the case if the key was created from a mnemonic.\n *\n * @returns {boolean}\n */\n isDerivable() {\n return this._key._chainCode != null;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n if (this._key instanceof Ed25519PrivateKey) {\n return this.toBytesRaw();\n } else {\n return this.toBytesDer();\n }\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n return this._key.toBytesDer();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._key.toBytesRaw();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringDer() {\n return hex.encode(this.toBytesDer());\n }\n\n /**\n * @returns {string}\n */\n toStringRaw() {\n return hex.encode(this.toBytesRaw());\n }\n\n /**\n * Create a keystore with a given passphrase.\n *\n * The key can be recovered later with `fromKeystore()`.\n *\n * Note that this will not retain the ancillary data used for\n * deriving child keys, thus `.derive()` on the restored key will\n * throw even if this instance supports derivation.\n *\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n toKeystore(passphrase = \"\") {\n return createKeystore(this.toBytesRaw(), passphrase);\n }\n}\n","import PrivateKey from \"./PrivateKey.js\";\nimport Ed25519PrivateKey from \"./Ed25519PrivateKey.js\";\nimport BadMnemonicError from \"./BadMnemonicError.js\";\nimport BadMnemonicReason from \"./BadMnemonicReason.js\";\nimport legacyWords from \"./words/legacy.js\";\nimport bip39Words from \"./words/bip39.js\";\nimport nacl from \"tweetnacl\";\nimport * as sha256 from \"./primitive/sha256.js\";\nimport * as pbkdf2 from \"./primitive/pbkdf2.js\";\nimport * as hmac from \"./primitive/hmac.js\";\nimport * as slip10 from \"./primitive/slip10.js\";\nimport * as entropy from \"./util/entropy.js\";\nimport * as random from \"./primitive/random.js\";\n// import EcdsaPrivateKey from \"./EcdsaPrivateKey.js\";\n\n/**\n * Multi-word mnemonic phrase (BIP-39).\n *\n * Compatible with the official Hedera mobile\n * wallets (24-words or 22-words) and BRD (12-words).\n */\nexport default class Mnemonic {\n /**\n * @param {Object} props\n * @param {string[]} props.words\n * @param {boolean} props.legacy\n * @throws {BadMnemonicError}\n * @hideconstructor\n * @private\n */\n constructor({ words, legacy }) {\n this.words = words;\n this._isLegacy = legacy;\n }\n\n /**\n * Returns a new random 24-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static generate() {\n return Mnemonic._generate(24);\n }\n\n /**\n * Returns a new random 12-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static generate12() {\n return Mnemonic._generate(12);\n }\n\n /**\n * @param {number} length\n * @returns {Promise}\n */\n static async _generate(length) {\n // only 12-word or 24-word lengths are supported\n let neededEntropy;\n\n if (length === 12) neededEntropy = 16;\n else if (length === 24) neededEntropy = 32;\n else {\n throw new Error(\n `unsupported phrase length ${length}, only 12 or 24 are supported`\n );\n }\n\n // inlined from (ISC) with heavy alternations for modern crypto\n // https://github.com/bitcoinjs/bip39/blob/8461e83677a1d2c685d0d5a9ba2a76bd228f74c6/ts_src/index.ts#L125\n const seed = await random.bytesAsync(neededEntropy);\n const entropyBits = bytesToBinary(Array.from(seed));\n const checksumBits = await deriveChecksumBits(seed);\n const bits = entropyBits + checksumBits;\n const chunks = bits.match(/(.{1,11})/g);\n\n const words = (chunks != null ? chunks : []).map(\n (binary) => bip39Words[binaryToByte(binary)]\n );\n\n return new Mnemonic({ words, legacy: false });\n }\n\n /**\n * Construct a mnemonic from a list of words. Handles 12, 22 (legacy), and 24 words.\n *\n * An exception of BadMnemonicError will be thrown if the mnemonic\n * contains unknown words or fails the checksum. An invalid mnemonic\n * can still be used to create private keys, the exception will\n * contain the failing mnemonic in case you wish to ignore the\n * validation error and continue.\n *\n * @param {string[]} words\n * @throws {BadMnemonicError}\n * @returns {Promise}\n */\n static async fromWords(words) {\n return await new Mnemonic({\n words,\n legacy: words.length === 22,\n })._validate();\n }\n\n /**\n * Recover a private key from this mnemonic phrase, with an\n * optional passphrase.\n *\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n async toPrivateKey(passphrase = \"\") {\n if (this._isLegacy) {\n if (passphrase.length > 0) {\n throw new Error(\n \"legacy 22-word mnemonics do not support passphrases\"\n );\n }\n\n return this.toLegacyPrivateKey();\n }\n\n return await this._toPrivateKey(passphrase);\n }\n\n // /**\n // * Recover an ecdsa private key from this mnemonic phrase, with an\n // * optional passphrase.\n // *\n // * @param {string} [passphrase]\n // * @returns {Promise}\n // */\n // async toEcdsaPrivateKey(passphrase = \"\") {\n // if (this._isLegacy) {\n // if (passphrase.length > 0) {\n // throw new Error(\n // \"legacy 22-word mnemonics do not support passphrases\"\n // );\n // }\n\n // return this.toLegacyPrivateKey();\n // }\n\n // return await this._toEcdsaPrivateKey(passphrase);\n // }\n\n /**\n * Recover a mnemonic phrase from a string, splitting on spaces. Handles 12, 22 (legacy), and 24 words.\n *\n * @param {string} mnemonic\n * @returns {Promise}\n */\n static async fromString(mnemonic) {\n return Mnemonic.fromWords(mnemonic.split(/\\s|,/));\n }\n\n /**\n * @returns {Promise}\n * @private\n */\n async _validate() {\n // Validate that this is a valid BIP-39 mnemonic\n // as generated by BIP-39's rules.\n\n // Technically, invalid mnemonics can still be used to generate valid private keys,\n // but if they became invalid due to user error then it will be difficult for the user\n // to tell the difference unless they compare the generated keys.\n\n // During validation, the following conditions are checked in order\n\n // 1)) 24 or 12 words\n\n // 2) All strings in {@link this.words} exist in the BIP-39\n // standard English word list (no normalization is done)\n\n // 3) The calculated checksum for the mnemonic equals the\n // checksum encoded in the mnemonic\n\n if (this._isLegacy) {\n if (this.words.length !== 22) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.BadLength,\n []\n );\n }\n\n const unknownWordIndices = this.words.reduce(\n (/** @type {number[]} */ unknowns, word, index) =>\n legacyWords.includes(word.toLowerCase())\n ? unknowns\n : [...unknowns, index],\n []\n );\n\n if (unknownWordIndices.length > 0) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.UnknownWords,\n unknownWordIndices\n );\n }\n\n const [seed, checksum] = entropy.legacy1(this.words, legacyWords);\n const newChecksum = entropy.crc8(seed);\n\n if (checksum !== newChecksum) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.ChecksumMismatch,\n []\n );\n }\n } else {\n if (!(this.words.length === 12 || this.words.length === 24)) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.BadLength,\n []\n );\n }\n\n const unknownWordIndices = this.words.reduce(\n (/** @type {number[]} */ unknowns, word, index) =>\n bip39Words.includes(word) ? unknowns : [...unknowns, index],\n []\n );\n\n if (unknownWordIndices.length > 0) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.UnknownWords,\n unknownWordIndices\n );\n }\n\n // FIXME: calculate checksum and compare\n // https://github.com/bitcoinjs/bip39/blob/master/ts_src/index.ts#L112\n\n const bits = this.words\n .map((word) => {\n return bip39Words\n .indexOf(word)\n .toString(2)\n .padStart(11, \"0\");\n })\n .join(\"\");\n\n const dividerIndex = Math.floor(bits.length / 33) * 32;\n const entropyBits = bits.slice(0, dividerIndex);\n const checksumBits = bits.slice(dividerIndex);\n const entropyBitsRegex = entropyBits.match(/(.{1,8})/g);\n const entropyBytes = /** @type {RegExpMatchArray} */ (\n entropyBitsRegex\n ).map(binaryToByte);\n\n const newChecksum = await deriveChecksumBits(\n Uint8Array.from(entropyBytes)\n );\n\n if (newChecksum !== checksumBits) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.ChecksumMismatch,\n []\n );\n }\n }\n\n return this;\n }\n\n /**\n * @private\n * @param {string} passphrase\n * @returns {Promise}\n */\n async _toPrivateKey(passphrase = \"\") {\n const input = this.words.join(\" \");\n const salt = `mnemonic${passphrase}`;\n\n const seed = await pbkdf2.deriveKey(\n hmac.HashAlgorithm.Sha512,\n input,\n salt,\n 2048,\n 64\n );\n\n const digest = await hmac.hash(\n hmac.HashAlgorithm.Sha512,\n \"ed25519 seed\",\n seed\n );\n\n let keyData = digest.subarray(0, 32);\n let chainCode = digest.subarray(32);\n\n for (const index of [44, 3030, 0, 0]) {\n ({ keyData, chainCode } = await slip10.derive(\n keyData,\n chainCode,\n index\n ));\n }\n\n const keyPair = nacl.sign.keyPair.fromSeed(keyData);\n\n return new PrivateKey(new Ed25519PrivateKey(keyPair, chainCode));\n }\n\n /**\n * @returns {Promise}\n */\n async toLegacyPrivateKey() {\n let seed;\n if (this._isLegacy) {\n [seed] = entropy.legacy1(this.words, legacyWords);\n } else {\n seed = await entropy.legacy2(this.words, bip39Words);\n }\n\n return PrivateKey.fromBytes(seed);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this.words.join(\" \");\n }\n}\n\n/**\n * @param {string} bin\n * @returns {number}\n */\nfunction binaryToByte(bin) {\n return parseInt(bin, 2);\n}\n\n/**\n * @param {number[]} bytes\n * @returns {string}\n */\nfunction bytesToBinary(bytes) {\n return bytes.map((x) => x.toString(2).padStart(8, \"0\")).join(\"\");\n}\n\n/**\n * @param {Uint8Array} entropyBuffer\n * @returns {Promise}\n */\nasync function deriveChecksumBits(entropyBuffer) {\n const ENT = entropyBuffer.length * 8;\n const CS = ENT / 32;\n const hash = await sha256.digest(entropyBuffer);\n\n return bytesToBinary(Array.from(hash)).slice(0, CS);\n}\n","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nmodule.exports = _arrayLikeToArray;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","import Key from \"./Key.js\";\nimport BadKeyError from \"./BadKeyError.js\";\nimport nacl from \"tweetnacl\";\nimport { arrayEqual, arrayStartsWith } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\n\nconst derPrefix = \"302a300506032b6570032100\";\nconst derPrefixBytes = hex.decode(derPrefix);\n\n/**\n * An public key on the Hedera™ network.\n */\nexport default class Ed25519PublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {Uint8Array} keyData\n */\n constructor(keyData) {\n super();\n\n /**\n * @type {Uint8Array}\n * @private\n * @readonly\n */\n this._keyData = keyData;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"ED25519\";\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {Ed25519PublicKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 32:\n return Ed25519PublicKey.fromBytesRaw(data);\n case 44:\n return Ed25519PublicKey.fromBytesDer(data);\n default:\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {Ed25519PublicKey}\n */\n static fromBytesDer(data) {\n if (data.length != 44 || !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new Ed25519PublicKey(data.subarray(12));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {Ed25519PublicKey}\n */\n static fromBytesRaw(data) {\n if (data.length != 32) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new Ed25519PublicKey(data);\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {Ed25519PublicKey}\n */\n static fromString(text) {\n return Ed25519PublicKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return nacl.sign.detached.verify(message, signature, this._keyData);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(derPrefixBytes.length + 32);\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(this._keyData.subarray(0, 32), derPrefixBytes.length);\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._keyData.slice();\n }\n\n /**\n * @param {Ed25519PublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n return arrayEqual(this._keyData, other._keyData);\n }\n}\n","/** @typedef {import(\"./Mnemonic.js\").default} Mnemonic */\nimport BadMnemonicReason from \"./BadMnemonicReason.js\";\n\nexport default class BadMnemonicError extends Error {\n /**\n * @param {Mnemonic} mnemonic\n * @param {string} reason\n * @param {number[]} unknownWordIndices\n * @hideconstructor\n */\n constructor(mnemonic, reason, unknownWordIndices) {\n let reasonMessage;\n\n switch (reason) {\n case BadMnemonicReason.BadLength:\n reasonMessage = \"mnemonic is of an unexpected number of words\";\n break;\n\n case BadMnemonicReason.ChecksumMismatch:\n reasonMessage =\n \"checksum byte in mnemonic did not match the rest of the mnemonic\";\n break;\n\n case BadMnemonicReason.UnknownWords:\n reasonMessage =\n \"mnemonic contained words that are not in the standard word list\";\n break;\n\n default:\n throw new Error(\n `unexpected value ${reason.toString()} for 'reason'`\n );\n }\n\n super(`invalid mnemonic: ${reasonMessage}`);\n\n if (typeof Error.captureStackTrace !== \"undefined\") {\n Error.captureStackTrace(this, BadMnemonicError);\n }\n\n this.name = \"BadMnemonicError\";\n\n /** The reason for which the mnemonic failed validation. */\n this.reason = reason;\n\n /** The mnemonic that failed validation. */\n this.mnemonic = mnemonic;\n\n /**\n * The indices in the mnemonic that were not found in the BIP-39\n * standard English word list.\n */\n this.unknownWordIndices = unknownWordIndices;\n }\n}\n","/**\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function digest(data) {\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/digest\n return new Uint8Array(await crypto.subtle.digest(\"SHA-256\", data));\n}\n","import * as hmac from \"../primitive/hmac.js\";\n\n/**\n * @param {Uint8Array} parentKey\n * @param {Uint8Array} chainCode\n * @param {number} index\n * @returns {Promise<{ keyData: Uint8Array; chainCode: Uint8Array }>}\n */\nexport async function derive(parentKey, chainCode, index) {\n const input = new Uint8Array(37);\n\n // 0x00 + parentKey + index(BE)\n input[0] = 0;\n input.set(parentKey, 1);\n new DataView(input.buffer, input.byteOffset, input.byteLength).setUint32(\n 33,\n index,\n false\n );\n\n // set the index to hardened\n input[33] |= 128;\n\n const digest = await hmac.hash(hmac.HashAlgorithm.Sha512, chainCode, input);\n\n return { keyData: digest.subarray(0, 32), chainCode: digest.subarray(32) };\n}\n","import BadKeyError from \"./BadKeyError.js\";\nimport EcdsaPublicKey from \"./EcdsaPublicKey.js\";\nimport * as hex from \"./encoding/hex.js\";\nimport * as ecdsa from \"./primitive/ecdsa.js\";\nimport { arrayStartsWith } from \"./util/array.js\";\n\nconst derPrefix = \"3030020100300706052b8104000a04220420\";\nconst derPrefixBytes = hex.decode(derPrefix);\n\n/**\n * @typedef {object} KeyPair\n * @property {Uint8Array} publicKey\n * @property {Uint8Array} privateKey\n */\n\nexport default class EcdsaPrivateKey {\n /**\n * @hideconstructor\n * @internal\n * @param {KeyPair} keyPair\n * @param {(Uint8Array)=} chainCode\n */\n constructor(keyPair, chainCode) {\n /**\n * @type {KeyPair}\n * @readonly\n * @private\n */\n this._keyPair = keyPair;\n\n /**\n * @type {?Uint8Array}\n * @readonly\n */\n this._chainCode = chainCode != null ? chainCode : null;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"secp256k1\";\n }\n\n /**\n * Generate a random ECDSA private key.\n *\n * @returns {EcdsaPrivateKey}\n */\n static generate() {\n return new EcdsaPrivateKey(ecdsa.generate());\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateAsync() {\n return new EcdsaPrivateKey(await ecdsa.generateAsync());\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {EcdsaPrivateKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 32:\n return EcdsaPrivateKey.fromBytesRaw(data);\n case 50:\n return EcdsaPrivateKey.fromBytesDer(data);\n default:\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {EcdsaPrivateKey}\n */\n static fromBytesDer(data) {\n if (data.length != 32 && !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\"invalid der header\");\n }\n\n return new EcdsaPrivateKey(\n ecdsa.fromBytes(data.subarray(derPrefixBytes.length))\n );\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {EcdsaPrivateKey}\n */\n static fromBytesRaw(data) {\n return new EcdsaPrivateKey(ecdsa.fromBytes(data));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {EcdsaPrivateKey}\n */\n static fromString(text) {\n return EcdsaPrivateKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {EcdsaPrivateKey}\n */\n static fromStringDer(text) {\n return EcdsaPrivateKey.fromBytesDer(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {EcdsaPrivateKey}\n */\n static fromStringRaw(text) {\n return EcdsaPrivateKey.fromBytesRaw(hex.decode(text));\n }\n\n /**\n * Get the public key associated with this private key.\n *\n * The public key can be freely given and used by other parties to verify\n * the signatures generated by this private key.\n *\n * @returns {EcdsaPublicKey}\n */\n get publicKey() {\n return new EcdsaPublicKey(this._keyPair.publicKey);\n }\n\n /**\n * Sign a message with this private key.\n *\n * @param {Uint8Array} bytes\n * @returns {Uint8Array} - The signature bytes without the message\n */\n sign(bytes) {\n return ecdsa.sign(this._keyPair.privateKey, bytes);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(derPrefixBytes.length + 32);\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(\n this._keyPair.privateKey.subarray(0, 32),\n derPrefixBytes.length\n );\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._keyPair.privateKey.slice(0, 32);\n }\n}\n","import Key from \"./Key.js\";\nimport BadKeyError from \"./BadKeyError.js\";\nimport { arrayEqual, arrayStartsWith } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\nimport * as ecdsa from \"./primitive/ecdsa.js\";\n\nconst derPrefix = \"302d300706052b8104000a032200\";\nconst derPrefixBytes = hex.decode(derPrefix);\n\n/**\n * An public key on the Hedera™ network.\n */\nexport default class EcdsaPublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {Uint8Array} keyData\n */\n constructor(keyData) {\n super();\n\n /**\n * @type {Uint8Array}\n * @private\n * @readonly\n */\n this._keyData = keyData;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"secp256k1\";\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {EcdsaPublicKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 33:\n return EcdsaPublicKey.fromBytesRaw(data);\n case 49:\n return EcdsaPublicKey.fromBytesDer(data);\n default:\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {EcdsaPublicKey}\n */\n static fromBytesDer(data) {\n if (data.length != 44 || !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new EcdsaPublicKey(data.subarray(12));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {EcdsaPublicKey}\n */\n static fromBytesRaw(data) {\n if (data.length != 33) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new EcdsaPublicKey(data);\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {EcdsaPublicKey}\n */\n static fromString(text) {\n return EcdsaPublicKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return ecdsa.verify(this._keyData, message, signature);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(\n derPrefixBytes.length + this._keyData.length\n );\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(this._keyData, derPrefixBytes.length);\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return new Uint8Array(this._keyData.subarray());\n }\n\n /**\n * @param {EcdsaPublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n return arrayEqual(this._keyData, other._keyData);\n }\n}\n","import { keccak256 } from \"./keccak.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport elliptic from \"elliptic\";\n\nconst secp256k1 = new elliptic.ec(\"secp256k1\");\n\n/**\n * @typedef {import(\"../EcdsaPrivateKey.js\").KeyPair} KeyPair\n */\n\n/**\n * @returns {KeyPair}\n */\nexport function generate() {\n const keypair = secp256k1.genKeyPair();\n\n return {\n privateKey: hex.decode(keypair.getPrivate(\"hex\")),\n publicKey: hex.decode(keypair.getPublic(true, \"hex\")),\n };\n}\n\n/**\n * @returns {Promise}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport async function generateAsync() {\n return Promise.resolve(generate());\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {KeyPair}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function fromBytes(data) {\n const keypair = secp256k1.keyFromPrivate(data);\n\n return {\n privateKey: hex.decode(keypair.getPrivate(\"hex\")),\n publicKey: hex.decode(keypair.getPublic(true, \"hex\")),\n };\n}\n\n/**\n * @param {Uint8Array} keydata\n * @param {Uint8Array} message\n * @returns {Uint8Array}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function sign(keydata, message) {\n const msg = hex.encode(message);\n const data = hex.decode(keccak256(`0x${msg}`));\n const keypair = secp256k1.keyFromPrivate(keydata);\n const signature = keypair.sign(data);\n\n const r = signature.r.toArray(\"be\", 32);\n const s = signature.s.toArray(\"be\", 32);\n\n const result = new Uint8Array(64);\n result.set(r, 0);\n result.set(s, 32);\n return result;\n}\n\n/**\n * @param {Uint8Array} keydata\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function verify(keydata, message, signature) {\n const msg = hex.encode(message);\n const data = hex.decode(keccak256(`0x${msg}`));\n const keypair = secp256k1.keyFromPublic(keydata);\n\n return keypair.verify(data, {\n r: signature.subarray(0, 32),\n s: signature.subarray(32, 64),\n });\n}\n","'use strict';\n\nvar utils = exports;\n\nfunction toArray(msg, enc) {\n if (Array.isArray(msg))\n return msg.slice();\n if (!msg)\n return [];\n var res = [];\n if (typeof msg !== 'string') {\n for (var i = 0; i < msg.length; i++)\n res[i] = msg[i] | 0;\n return res;\n }\n if (enc === 'hex') {\n msg = msg.replace(/[^a-z0-9]+/ig, '');\n if (msg.length % 2 !== 0)\n msg = '0' + msg;\n for (var i = 0; i < msg.length; i += 2)\n res.push(parseInt(msg[i] + msg[i + 1], 16));\n } else {\n for (var i = 0; i < msg.length; i++) {\n var c = msg.charCodeAt(i);\n var hi = c >> 8;\n var lo = c & 0xff;\n if (hi)\n res.push(hi, lo);\n else\n res.push(lo);\n }\n }\n return res;\n}\nutils.toArray = toArray;\n\nfunction zero2(word) {\n if (word.length === 1)\n return '0' + word;\n else\n return word;\n}\nutils.zero2 = zero2;\n\nfunction toHex(msg) {\n var res = '';\n for (var i = 0; i < msg.length; i++)\n res += zero2(msg[i].toString(16));\n return res;\n}\nutils.toHex = toHex;\n\nutils.encode = function encode(arr, enc) {\n if (enc === 'hex')\n return toHex(arr);\n else\n return arr;\n};\n","'use strict';\n\nvar curve = exports;\n\ncurve.base = require('./base');\ncurve.short = require('./short');\ncurve.mont = require('./mont');\ncurve.edwards = require('./edwards');\n","'use strict';\n\nvar utils = require('../utils');\nvar rotr32 = utils.rotr32;\n\nfunction ft_1(s, x, y, z) {\n if (s === 0)\n return ch32(x, y, z);\n if (s === 1 || s === 3)\n return p32(x, y, z);\n if (s === 2)\n return maj32(x, y, z);\n}\nexports.ft_1 = ft_1;\n\nfunction ch32(x, y, z) {\n return (x & y) ^ ((~x) & z);\n}\nexports.ch32 = ch32;\n\nfunction maj32(x, y, z) {\n return (x & y) ^ (x & z) ^ (y & z);\n}\nexports.maj32 = maj32;\n\nfunction p32(x, y, z) {\n return x ^ y ^ z;\n}\nexports.p32 = p32;\n\nfunction s0_256(x) {\n return rotr32(x, 2) ^ rotr32(x, 13) ^ rotr32(x, 22);\n}\nexports.s0_256 = s0_256;\n\nfunction s1_256(x) {\n return rotr32(x, 6) ^ rotr32(x, 11) ^ rotr32(x, 25);\n}\nexports.s1_256 = s1_256;\n\nfunction g0_256(x) {\n return rotr32(x, 7) ^ rotr32(x, 18) ^ (x >>> 3);\n}\nexports.g0_256 = g0_256;\n\nfunction g1_256(x) {\n return rotr32(x, 17) ^ rotr32(x, 19) ^ (x >>> 10);\n}\nexports.g1_256 = g1_256;\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar shaCommon = require('./common');\nvar assert = require('minimalistic-assert');\n\nvar sum32 = utils.sum32;\nvar sum32_4 = utils.sum32_4;\nvar sum32_5 = utils.sum32_5;\nvar ch32 = shaCommon.ch32;\nvar maj32 = shaCommon.maj32;\nvar s0_256 = shaCommon.s0_256;\nvar s1_256 = shaCommon.s1_256;\nvar g0_256 = shaCommon.g0_256;\nvar g1_256 = shaCommon.g1_256;\n\nvar BlockHash = common.BlockHash;\n\nvar sha256_K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,\n 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,\n 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc,\n 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7,\n 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13,\n 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3,\n 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5,\n 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208,\n 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n];\n\nfunction SHA256() {\n if (!(this instanceof SHA256))\n return new SHA256();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a,\n 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19\n ];\n this.k = sha256_K;\n this.W = new Array(64);\n}\nutils.inherits(SHA256, BlockHash);\nmodule.exports = SHA256;\n\nSHA256.blockSize = 512;\nSHA256.outSize = 256;\nSHA256.hmacStrength = 192;\nSHA256.padLength = 64;\n\nSHA256.prototype._update = function _update(msg, start) {\n var W = this.W;\n\n for (var i = 0; i < 16; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i++)\n W[i] = sum32_4(g1_256(W[i - 2]), W[i - 7], g0_256(W[i - 15]), W[i - 16]);\n\n var a = this.h[0];\n var b = this.h[1];\n var c = this.h[2];\n var d = this.h[3];\n var e = this.h[4];\n var f = this.h[5];\n var g = this.h[6];\n var h = this.h[7];\n\n assert(this.k.length === W.length);\n for (i = 0; i < W.length; i++) {\n var T1 = sum32_5(h, s1_256(e), ch32(e, f, g), this.k[i], W[i]);\n var T2 = sum32(s0_256(a), maj32(a, b, c));\n h = g;\n g = f;\n f = e;\n e = sum32(d, T1);\n d = c;\n c = b;\n b = a;\n a = sum32(T1, T2);\n }\n\n this.h[0] = sum32(this.h[0], a);\n this.h[1] = sum32(this.h[1], b);\n this.h[2] = sum32(this.h[2], c);\n this.h[3] = sum32(this.h[3], d);\n this.h[4] = sum32(this.h[4], e);\n this.h[5] = sum32(this.h[5], f);\n this.h[6] = sum32(this.h[6], g);\n this.h[7] = sum32(this.h[7], h);\n};\n\nSHA256.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar assert = require('minimalistic-assert');\n\nvar rotr64_hi = utils.rotr64_hi;\nvar rotr64_lo = utils.rotr64_lo;\nvar shr64_hi = utils.shr64_hi;\nvar shr64_lo = utils.shr64_lo;\nvar sum64 = utils.sum64;\nvar sum64_hi = utils.sum64_hi;\nvar sum64_lo = utils.sum64_lo;\nvar sum64_4_hi = utils.sum64_4_hi;\nvar sum64_4_lo = utils.sum64_4_lo;\nvar sum64_5_hi = utils.sum64_5_hi;\nvar sum64_5_lo = utils.sum64_5_lo;\n\nvar BlockHash = common.BlockHash;\n\nvar sha512_K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n];\n\nfunction SHA512() {\n if (!(this instanceof SHA512))\n return new SHA512();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xf3bcc908,\n 0xbb67ae85, 0x84caa73b,\n 0x3c6ef372, 0xfe94f82b,\n 0xa54ff53a, 0x5f1d36f1,\n 0x510e527f, 0xade682d1,\n 0x9b05688c, 0x2b3e6c1f,\n 0x1f83d9ab, 0xfb41bd6b,\n 0x5be0cd19, 0x137e2179 ];\n this.k = sha512_K;\n this.W = new Array(160);\n}\nutils.inherits(SHA512, BlockHash);\nmodule.exports = SHA512;\n\nSHA512.blockSize = 1024;\nSHA512.outSize = 512;\nSHA512.hmacStrength = 192;\nSHA512.padLength = 128;\n\nSHA512.prototype._prepareBlock = function _prepareBlock(msg, start) {\n var W = this.W;\n\n // 32 x 32bit words\n for (var i = 0; i < 32; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i += 2) {\n var c0_hi = g1_512_hi(W[i - 4], W[i - 3]); // i - 2\n var c0_lo = g1_512_lo(W[i - 4], W[i - 3]);\n var c1_hi = W[i - 14]; // i - 7\n var c1_lo = W[i - 13];\n var c2_hi = g0_512_hi(W[i - 30], W[i - 29]); // i - 15\n var c2_lo = g0_512_lo(W[i - 30], W[i - 29]);\n var c3_hi = W[i - 32]; // i - 16\n var c3_lo = W[i - 31];\n\n W[i] = sum64_4_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n W[i + 1] = sum64_4_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n }\n};\n\nSHA512.prototype._update = function _update(msg, start) {\n this._prepareBlock(msg, start);\n\n var W = this.W;\n\n var ah = this.h[0];\n var al = this.h[1];\n var bh = this.h[2];\n var bl = this.h[3];\n var ch = this.h[4];\n var cl = this.h[5];\n var dh = this.h[6];\n var dl = this.h[7];\n var eh = this.h[8];\n var el = this.h[9];\n var fh = this.h[10];\n var fl = this.h[11];\n var gh = this.h[12];\n var gl = this.h[13];\n var hh = this.h[14];\n var hl = this.h[15];\n\n assert(this.k.length === W.length);\n for (var i = 0; i < W.length; i += 2) {\n var c0_hi = hh;\n var c0_lo = hl;\n var c1_hi = s1_512_hi(eh, el);\n var c1_lo = s1_512_lo(eh, el);\n var c2_hi = ch64_hi(eh, el, fh, fl, gh, gl);\n var c2_lo = ch64_lo(eh, el, fh, fl, gh, gl);\n var c3_hi = this.k[i];\n var c3_lo = this.k[i + 1];\n var c4_hi = W[i];\n var c4_lo = W[i + 1];\n\n var T1_hi = sum64_5_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n var T1_lo = sum64_5_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n\n c0_hi = s0_512_hi(ah, al);\n c0_lo = s0_512_lo(ah, al);\n c1_hi = maj64_hi(ah, al, bh, bl, ch, cl);\n c1_lo = maj64_lo(ah, al, bh, bl, ch, cl);\n\n var T2_hi = sum64_hi(c0_hi, c0_lo, c1_hi, c1_lo);\n var T2_lo = sum64_lo(c0_hi, c0_lo, c1_hi, c1_lo);\n\n hh = gh;\n hl = gl;\n\n gh = fh;\n gl = fl;\n\n fh = eh;\n fl = el;\n\n eh = sum64_hi(dh, dl, T1_hi, T1_lo);\n el = sum64_lo(dl, dl, T1_hi, T1_lo);\n\n dh = ch;\n dl = cl;\n\n ch = bh;\n cl = bl;\n\n bh = ah;\n bl = al;\n\n ah = sum64_hi(T1_hi, T1_lo, T2_hi, T2_lo);\n al = sum64_lo(T1_hi, T1_lo, T2_hi, T2_lo);\n }\n\n sum64(this.h, 0, ah, al);\n sum64(this.h, 2, bh, bl);\n sum64(this.h, 4, ch, cl);\n sum64(this.h, 6, dh, dl);\n sum64(this.h, 8, eh, el);\n sum64(this.h, 10, fh, fl);\n sum64(this.h, 12, gh, gl);\n sum64(this.h, 14, hh, hl);\n};\n\nSHA512.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n\nfunction ch64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ ((~xh) & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction ch64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ ((~xl) & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ (xh & zh) ^ (yh & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ (xl & zl) ^ (yl & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 28);\n var c1_hi = rotr64_hi(xl, xh, 2); // 34\n var c2_hi = rotr64_hi(xl, xh, 7); // 39\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 28);\n var c1_lo = rotr64_lo(xl, xh, 2); // 34\n var c2_lo = rotr64_lo(xl, xh, 7); // 39\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 14);\n var c1_hi = rotr64_hi(xh, xl, 18);\n var c2_hi = rotr64_hi(xl, xh, 9); // 41\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 14);\n var c1_lo = rotr64_lo(xh, xl, 18);\n var c2_lo = rotr64_lo(xl, xh, 9); // 41\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 1);\n var c1_hi = rotr64_hi(xh, xl, 8);\n var c2_hi = shr64_hi(xh, xl, 7);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 1);\n var c1_lo = rotr64_lo(xh, xl, 8);\n var c2_lo = shr64_lo(xh, xl, 7);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 19);\n var c1_hi = rotr64_hi(xl, xh, 29); // 61\n var c2_hi = shr64_hi(xh, xl, 6);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 19);\n var c1_lo = rotr64_lo(xl, xh, 29); // 61\n var c2_lo = shr64_lo(xh, xl, 6);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n","import Key from \"./Key.js\";\nimport BadKeyError from \"./BadKeyError.js\";\nimport Ed25519PublicKey from \"./Ed25519PublicKey.js\";\nimport EcdsaPublicKey from \"./EcdsaPublicKey.js\";\nimport { arrayEqual } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\n\n/**\n * @typedef {import(\"./PrivateKey.js\").Transaction} Transaction\n */\n\n/**\n * An public key on the Hedera™ network.\n */\nexport default class PublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {Ed25519PublicKey | EcdsaPublicKey} key\n */\n constructor(key) {\n super();\n\n /**\n * @type {Ed25519PublicKey | EcdsaPublicKey}\n * @private\n * @readonly\n */\n this._key = key;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return this._key._type;\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytes(data) {\n try {\n return new PublicKey(Ed25519PublicKey.fromBytes(data));\n } catch {\n // Do nothing\n }\n\n try {\n return new PublicKey(EcdsaPublicKey.fromBytes(data));\n } catch {\n // Do nothing\n }\n\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesED25519(data) {\n return new PublicKey(Ed25519PublicKey.fromBytes(data));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesECDSA(data) {\n return new PublicKey(EcdsaPublicKey.fromBytes(data));\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromString(text) {\n return PublicKey.fromBytes(hex.decode(text));\n }\n\n /**\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromStringED25519(text) {\n return PublicKey.fromBytesED25519(hex.decode(text));\n }\n\n /**\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromStringECDSA(text) {\n return PublicKey.fromBytesECDSA(hex.decode(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return this._key.verify(message, signature);\n }\n\n /**\n * @deprecated - use `@hashgraph/sdk`.PublicKey instead\n * @param {Transaction} transaction\n * @returns {boolean}\n */\n verifyTransaction(transaction) {\n console.log(\"Deprecated: use `@hashgraph/sdk`.PublicKey instead\");\n\n transaction._requireFrozen();\n\n if (!transaction.isFrozen()) {\n transaction.freeze();\n }\n\n for (const signedTransaction of transaction._signedTransactions) {\n if (\n signedTransaction.sigMap != null &&\n signedTransaction.sigMap.sigPair != null\n ) {\n let found = false;\n for (const sigPair of signedTransaction.sigMap.sigPair) {\n const pubKeyPrefix = /** @type {Uint8Array} */ (\n sigPair.pubKeyPrefix\n );\n if (arrayEqual(pubKeyPrefix, this.toBytesRaw())) {\n found = true;\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n const signature =\n sigPair.ed25519 != null\n ? sigPair.ed25519\n : /** @type {Uint8Array} */ (\n sigPair.ECDSASecp256k1\n );\n if (!this.verify(bodyBytes, signature)) {\n return false;\n }\n }\n }\n\n if (!found) {\n return false;\n }\n }\n }\n\n return true;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n if (this._key instanceof Ed25519PublicKey) {\n return this.toBytesRaw();\n } else {\n return this.toBytesDer();\n }\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n return this._key.toBytesDer();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._key.toBytesRaw();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringDer() {\n return hex.encode(this.toBytesDer());\n }\n\n /**\n * @returns {string}\n */\n toStringRaw() {\n return hex.encode(this.toBytesRaw());\n }\n\n /**\n * @param {PublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n if (\n this._key instanceof Ed25519PublicKey &&\n other instanceof Ed25519PublicKey\n ) {\n return this._key.equals(other);\n } else if (\n this._key instanceof EcdsaPublicKey &&\n other instanceof EcdsaPublicKey\n ) {\n return this._key.equals(other);\n } else {\n return false;\n }\n }\n}\n","export const CipherAlgorithm = {\n Aes128Ctr: \"AES-128-CTR\",\n Aes128Cbc: \"AES-128-CBC\",\n};\n\n/**\n * @param {string} algorithm\n * @param {Uint8Array} key\n * @param {Uint8Array} iv\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function createCipheriv(algorithm, key, iv, data) {\n let algorithm_;\n\n switch (algorithm.toUpperCase()) {\n case CipherAlgorithm.Aes128Ctr:\n algorithm_ = {\n name: \"AES-CTR\",\n counter: iv,\n length: 128,\n };\n break;\n case CipherAlgorithm.Aes128Cbc:\n algorithm_ = {\n name: \"AES-CBC\",\n iv: iv,\n };\n break;\n default:\n throw new Error(\n \"(BUG) non-exhaustive switch statement for CipherAlgorithm\"\n );\n }\n\n const key_ = await window.crypto.subtle.importKey(\n \"raw\",\n key,\n algorithm_.name,\n false,\n [\"encrypt\"]\n );\n\n return new Uint8Array(\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/encrypt#return_value\n /** @type {ArrayBuffer} */ (\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n await window.crypto.subtle.encrypt(algorithm_, key_, data)\n )\n );\n}\n\n/**\n * @param {string} algorithm\n * @param {Uint8Array} key\n * @param {Uint8Array} iv\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function createDecipheriv(algorithm, key, iv, data) {\n let algorithm_;\n\n switch (algorithm.toUpperCase()) {\n case CipherAlgorithm.Aes128Ctr:\n algorithm_ = {\n name: \"AES-CTR\",\n counter: iv,\n length: 128,\n };\n break;\n case CipherAlgorithm.Aes128Cbc:\n algorithm_ = {\n name: \"AES-CBC\",\n iv,\n };\n break;\n default:\n throw new Error(\n \"(BUG) non-exhaustive switch statement for CipherAlgorithm\"\n );\n }\n\n const key_ = await window.crypto.subtle.importKey(\n \"raw\",\n key,\n algorithm_.name,\n false,\n [\"decrypt\"]\n );\n\n return new Uint8Array(\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/encrypt#return_value\n /** @type {ArrayBuffer} */ (\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n await window.crypto.subtle.decrypt(algorithm_, key_, data)\n )\n );\n}\n","/**\n * @typedef {Object} AsnSeq\n * @property {AsnType[]} seq\n */\n\n/**\n * @typedef {Object} AsnInt\n * @property {number} int\n */\n\n/**\n * @typedef {Object} AsnBytes\n * @property {Uint8Array} bytes\n */\n\n/**\n * @typedef {Object} AsnIdent\n * @property {string} ident\n */\n\n/**\n * @typedef {{}} AsnNull\n */\n\n/**\n * @typedef {AsnSeq | AsnInt | AsnBytes | AsnIdent | AsnNull} AsnType\n */\n\n/**\n * Note: may throw weird errors on malformed input. Catch and rethrow with, e.g. `BadKeyError`.\n *\n *@param {Uint8Array} data\n *@returns {AsnType}\n */\nexport function decode(data) {\n return decodeIncremental(data)[0];\n}\n\n/**\n * @param {Uint8Array} bytes\n * @returns {[AsnType, Uint8Array]}\n */\nfunction decodeIncremental(bytes) {\n // slice off the initial tag byte, `decodeLength` returns a slice of the remaining data\n const [len, rem] = decodeLength(bytes.subarray(1));\n const data = rem.subarray(0, len);\n const tail = rem.subarray(len);\n\n switch (bytes[0]) {\n case 2:\n return [{ int: decodeInt(data) }, tail];\n case 4: // must always be primitive form in DER; for OCTET STRING this is literal bytes\n return [{ bytes: data }, tail];\n case 5: // empty\n return [{}, tail];\n case 6:\n return [{ ident: decodeObjectIdent(data) }, tail];\n case 48:\n return [{ seq: decodeSeq(data) }, tail];\n default:\n throw new Error(`unsupported DER type tag: ${bytes[0]}`);\n }\n}\n\n/**\n * @param {Uint8Array} seqBytes\n * @returns {AsnType[]}\n */\nfunction decodeSeq(seqBytes) {\n let data = seqBytes;\n\n const seq = [];\n\n while (data.length !== 0) {\n const [decoded, remaining] = decodeIncremental(data);\n seq.push(decoded);\n data = remaining;\n }\n\n return seq;\n}\n\n/**\n * @param {Uint8Array} idBytes\n * @returns {string}\n */\nfunction decodeObjectIdent(idBytes) {\n const id = [\n // first octet is 40 * value1 + value2\n Math.floor(idBytes[0] / 40),\n idBytes[0] % 40,\n ];\n\n // each following ID component is big-endian base128 where the MSB is set if another byte\n // follows for the same value\n let val = 0;\n\n for (const byte of idBytes.subarray(1)) {\n // shift the entire value left by 7 bits\n val *= 128;\n\n if (byte < 128) {\n // no more octets follow for this value, finish it off\n val += byte;\n id.push(val);\n val = 0;\n } else {\n // zero the MSB\n val += byte & 127;\n }\n }\n\n return id.join(\".\");\n}\n\n/**\n * @param {Uint8Array} lenBytes\n * @returns {[number, Uint8Array]}\n */\nfunction decodeLength(lenBytes) {\n if (lenBytes[0] < 128) {\n // definite, short form\n return [lenBytes[0], lenBytes.subarray(1)];\n }\n\n const numBytes = lenBytes[0] - 128;\n\n const intBytes = lenBytes.subarray(1, numBytes + 1);\n const rem = lenBytes.subarray(numBytes + 1);\n\n return [decodeInt(intBytes), rem];\n}\n\n/**\n * @param {Uint8Array} intBytes\n * @returns {number}\n */\nfunction decodeInt(intBytes) {\n const len = intBytes.length;\n if (len === 1) {\n return intBytes[0];\n }\n\n let view = new DataView(\n intBytes.buffer,\n intBytes.byteOffset,\n intBytes.byteLength\n );\n\n if (len === 2) return view.getUint16(0, false);\n\n if (len === 3) {\n // prefix a zero byte and we'll treat it as a 32-bit int\n const data = Uint8Array.of(0, ...intBytes);\n view = new DataView(data.buffer, data.byteOffset, data.byteLength);\n }\n\n if (len > 4) {\n // this probably means a bug in the decoding as this would mean a >4GB structure\n throw new Error(`unsupported DER integer length of ${len} bytes`);\n }\n\n return view.getUint32(0, false);\n}\n","import * as cryptography from \"@hashgraph/cryptography\";\nimport Mnemonic from \"./Mnemonic.js\";\nimport PublicKey from \"./PublicKey.js\";\nimport Key from \"./Key.js\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @typedef {import(\"./transaction/Transaction.js\").default} Transaction\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignaturePair} proto.ISignaturePair\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n */\n\nexport default class PrivateKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {cryptography.PrivateKey} key\n */\n constructor(key) {\n super();\n\n this._key = key;\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {PrivateKey}\n */\n static generateED25519() {\n return new PrivateKey(cryptography.PrivateKey.generateED25519());\n }\n\n /**\n * Generate a random EDSA private key.\n *\n * @returns {PrivateKey}\n */\n static generateECDSA() {\n return new PrivateKey(cryptography.PrivateKey.generateECDSA());\n }\n\n /**\n * Depredated - Use `generateEd25519()` instead\n * Generate a random Ed25519 private key.\n *\n * @returns {PrivateKey}\n */\n static generate() {\n return PrivateKey.generateED25519();\n }\n\n /**\n * Depredated - Use `generateEd25519Async()` instead\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateAsync() {\n return new PrivateKey(await cryptography.PrivateKey.generateAsync());\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateED25519Async() {\n return new PrivateKey(\n await cryptography.PrivateKey.generateED25519Async()\n );\n }\n\n /**\n * Generate a random ECDSA private key.\n *\n * @returns {Promise}\n */\n static async generateECDSAAsync() {\n return new PrivateKey(\n await cryptography.PrivateKey.generateECDSAAsync()\n );\n }\n\n /**\n * Construct a private key from bytes. Requires DER header.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytes(data) {\n return new PrivateKey(cryptography.PrivateKey.fromBytes(data));\n }\n\n /**\n * Construct a ECDSA private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytesECDSA(data) {\n return new PrivateKey(cryptography.PrivateKey.fromBytesECDSA(data));\n }\n\n /**\n * Construct a ED25519 private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytesED25519(data) {\n return new PrivateKey(cryptography.PrivateKey.fromBytesED25519(data));\n }\n\n /**\n * Construct a private key from a hex-encoded string. Requires DER header.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromString(text) {\n return new PrivateKey(cryptography.PrivateKey.fromString(text));\n }\n\n /**\n * Construct a ECDSA private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromStringECDSA(text) {\n return new PrivateKey(cryptography.PrivateKey.fromStringECDSA(text));\n }\n\n /**\n * Construct a Ed25519 private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromStringED25519(text) {\n return new PrivateKey(cryptography.PrivateKey.fromStringED25519(text));\n }\n\n /**\n * Recover a private key from a mnemonic phrase (and optionally a password).\n *\n * @param {Mnemonic | cryptography.Mnemonic | string} mnemonic\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n static async fromMnemonic(mnemonic, passphrase = \"\") {\n if (mnemonic instanceof Mnemonic) {\n return new PrivateKey(\n await cryptography.PrivateKey.fromMnemonic(\n mnemonic._mnemonic,\n passphrase\n )\n );\n }\n\n return new PrivateKey(\n await cryptography.PrivateKey.fromMnemonic(mnemonic, passphrase)\n );\n }\n\n /**\n * Recover a private key from a keystore, previously created by `.toKeystore()`.\n *\n * This key will _not_ support child key derivation.\n *\n * @param {Uint8Array} data\n * @param {string} [passphrase]\n * @returns {Promise}\n * @throws {BadKeyError} If the passphrase is incorrect or the hash fails to validate.\n */\n static async fromKeystore(data, passphrase = \"\") {\n return new PrivateKey(\n await cryptography.PrivateKey.fromKeystore(data, passphrase)\n );\n }\n\n /**\n * Recover a private key from a pem string; the private key may be encrypted.\n *\n * This method assumes the .pem file has been converted to a string already.\n *\n * If `passphrase` is not null or empty, this looks for the first `ENCRYPTED PRIVATE KEY`\n * section and uses `passphrase` to decrypt it; otherwise, it looks for the first `PRIVATE KEY`\n * section and decodes that as a DER-encoded private key.\n *\n * @param {string} data\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n static async fromPem(data, passphrase = \"\") {\n return new PrivateKey(\n await cryptography.PrivateKey.fromPem(data, passphrase)\n );\n }\n\n /**\n * Derive a new private key at the given wallet index.\n *\n * Only currently supported for keys created with `fromMnemonic()`; other keys will throw\n * an error.\n *\n * You can check if a key supports derivation with `.supportsDerivation()`\n *\n * @param {number} index\n * @returns {Promise}\n * @throws If this key does not support derivation.\n */\n async derive(index) {\n return new PrivateKey(await this._key.derive(index));\n }\n\n /**\n * @param {number} index\n * @returns {Promise}\n * @throws If this key does not support derivation.\n */\n async legacyDerive(index) {\n return new PrivateKey(await this._key.legacyDerive(index));\n }\n\n /**\n * Get the public key associated with this private key.\n *\n * The public key can be freely given and used by other parties to verify\n * the signatures generated by this private key.\n *\n * @returns {PublicKey}\n */\n get publicKey() {\n return new PublicKey(this._key.publicKey);\n }\n\n /**\n * Sign a message with this private key.\n *\n * @param {Uint8Array} bytes\n * @returns {Uint8Array} - The signature bytes without the message\n */\n sign(bytes) {\n return this._key.sign(bytes);\n }\n\n /**\n * @param {Transaction} transaction\n * @returns {Uint8Array}\n */\n signTransaction(transaction) {\n const tx = transaction._signedTransactions.get(0);\n const signature =\n tx.bodyBytes != null ? this.sign(tx.bodyBytes) : new Uint8Array();\n\n transaction.addSignature(this.publicKey, signature);\n\n return signature;\n }\n\n /**\n * Check if `derive` can be called on this private key.\n *\n * This is only the case if the key was created from a mnemonic.\n *\n * @returns {boolean}\n */\n isDerivable() {\n return this._key.isDerivable();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return this._key.toBytes();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n return this._key.toBytesDer();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._key.toBytesRaw();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this._key.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringDer() {\n return this._key.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringRaw() {\n return this._key.toStringRaw();\n }\n\n /**\n * Create a keystore with a given passphrase.\n *\n * The key can be recovered later with `fromKeystore()`.\n *\n * Note that this will not retain the ancillary data used for\n * deriving child keys, thus `.derive()` on the restored key will\n * throw even if this instance supports derivation.\n *\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n toKeystore(passphrase = \"\") {\n return this._key.toKeystore(passphrase);\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n return this.publicKey._toProtobufKey();\n }\n\n /**\n * @param {Long | number} shard\n * @param {Long | number} realm\n * @returns {AccountId}\n */\n toAccountId(shard, realm) {\n return this.publicKey.toAccountId(shard, realm);\n }\n}\n\nCACHE.privateKeyConstructor = (key) => new PrivateKey(key);\n","import * as cryptography from \"@hashgraph/cryptography\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @typedef {import(\"./PrivateKey.js\").default} PrivateKey\n */\n\n/**\n * Multi-word mnemonic phrase (BIP-39).\n *\n * Compatible with the official Hedera mobile\n * wallets (24-words or 22-words) and BRD (12-words).\n */\nexport default class Mnemonic {\n /**\n * @param {cryptography.Mnemonic} mnemonic\n * @hideconstructor\n * @private\n */\n constructor(mnemonic) {\n this._mnemonic = mnemonic;\n }\n\n /**\n * Returns a new random 24-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static async generate() {\n return new Mnemonic(await cryptography.Mnemonic._generate(24));\n }\n\n /**\n * Returns a new random 12-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static async generate12() {\n return new Mnemonic(await cryptography.Mnemonic._generate(12));\n }\n\n /**\n * Construct a mnemonic from a list of words. Handles 12, 22 (legacy), and 24 words.\n *\n * An exception of BadMnemonicError will be thrown if the mnemonic\n * contains unknown words or fails the checksum. An invalid mnemonic\n * can still be used to create private keys, the exception will\n * contain the failing mnemonic in case you wish to ignore the\n * validation error and continue.\n *\n * @param {string[]} words\n * @throws {BadMnemonicError}\n * @returns {Promise}\n */\n static async fromWords(words) {\n return new Mnemonic(await cryptography.Mnemonic.fromWords(words));\n }\n\n /**\n * Recover a private key from this mnemonic phrase, with an\n * optional passphrase.\n *\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n async toPrivateKey(passphrase = \"\") {\n if (CACHE.privateKeyConstructor == null) {\n throw new Error(\"`PrivateKey` has not been loaded\");\n }\n\n return CACHE.privateKeyConstructor(\n await this._mnemonic.toPrivateKey(passphrase)\n );\n }\n\n /**\n * Recover a mnemonic phrase from a string, splitting on spaces. Handles 12, 22 (legacy), and 24 words.\n *\n * @param {string} mnemonic\n * @returns {Promise}\n */\n static async fromString(mnemonic) {\n return new Mnemonic(await cryptography.Mnemonic.fromString(mnemonic));\n }\n\n /**\n * @returns {Promise}\n */\n async toLegacyPrivateKey() {\n if (CACHE.privateKeyConstructor == null) {\n throw new Error(\"`PrivateKey` has not been loaded\");\n }\n\n return CACHE.privateKeyConstructor(\n await this._mnemonic.toLegacyPrivateKey()\n );\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this._mnemonic.toString();\n }\n}\n","var getPrototypeOf = require(\"./getPrototypeOf.js\");\n\nfunction _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = getPrototypeOf(object);\n if (object === null) break;\n }\n\n return object;\n}\n\nmodule.exports = _superPropBase;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","import BigNumber from \"bignumber.js\";\n\nexport default class HbarUnit {\n /**\n * @internal\n * @param {string} name\n * @param {string} symbol\n * @param {BigNumber} tinybar\n */\n constructor(name, symbol, tinybar) {\n /**\n * @internal\n * @readonly\n */\n this._name = name;\n\n /**\n * @internal\n * @readonly\n */\n this._symbol = symbol;\n\n /**\n * @internal\n * @readonly\n */\n this._tinybar = tinybar;\n\n Object.freeze(this);\n }\n\n /**\n * @param {string} unit\n * @returns {HbarUnit}\n */\n static fromString(unit) {\n switch (unit) {\n case HbarUnit.Hbar._symbol:\n return HbarUnit.Hbar;\n case HbarUnit.Tinybar._symbol:\n return HbarUnit.Tinybar;\n case HbarUnit.Microbar._symbol:\n return HbarUnit.Microbar;\n case HbarUnit.Millibar._symbol:\n return HbarUnit.Millibar;\n case HbarUnit.Kilobar._symbol:\n return HbarUnit.Kilobar;\n case HbarUnit.Megabar._symbol:\n return HbarUnit.Megabar;\n case HbarUnit.Gigabar._symbol:\n return HbarUnit.Gigabar;\n default:\n throw new Error(\"Unknown unit.\");\n }\n }\n}\n\nHbarUnit.Tinybar = new HbarUnit(\"tinybar\", \"tℏ\", new BigNumber(1));\n\nHbarUnit.Microbar = new HbarUnit(\"microbar\", \"μℏ\", new BigNumber(100));\n\nHbarUnit.Millibar = new HbarUnit(\"millibar\", \"mℏ\", new BigNumber(100000));\n\nHbarUnit.Hbar = new HbarUnit(\"hbar\", \"ℏ\", new BigNumber(\"100000000\"));\n\nHbarUnit.Kilobar = new HbarUnit(\n \"kilobar\",\n \"kℏ\",\n new BigNumber(1000).multipliedBy(new BigNumber(\"100000000\"))\n);\n\nHbarUnit.Megabar = new HbarUnit(\n \"megabar\",\n \"Mℏ\",\n new BigNumber(1000000).multipliedBy(new BigNumber(\"100000000\"))\n);\n\nHbarUnit.Gigabar = new HbarUnit(\n \"gigabar\",\n \"Gℏ\",\n new BigNumber(\"1000000000\").multipliedBy(new BigNumber(\"100000000\"))\n);\n","import ReceiptStatusError from \"../ReceiptStatusError.js\";\nimport Status from \"../Status.js\";\nimport TransactionReceiptQuery from \"./TransactionReceiptQuery.js\";\nimport TransactionRecordQuery from \"./TransactionRecordQuery.js\";\n\n/**\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"./TransactionId.js\").default} TransactionId\n * @typedef {import(\"./TransactionReceipt.js\").default} TransactionReceipt\n * @typedef {import(\"./TransactionRecord.js\").default} TransactionRecord\n */\n\nexport default class TransactionResponse {\n /**\n * @internal\n * @param {object} props\n * @param {AccountId} props.nodeId\n * @param {Uint8Array} props.transactionHash\n * @param {TransactionId} props.transactionId\n */\n constructor(props) {\n /** @readonly */\n this.nodeId = props.nodeId;\n\n /** @readonly */\n this.transactionHash = props.transactionHash;\n\n /** @readonly */\n this.transactionId = props.transactionId;\n\n Object.freeze(this);\n }\n\n /**\n * @param {Client} client\n * @returns {Promise}\n */\n async getReceipt(client) {\n const receipt = await new TransactionReceiptQuery()\n .setTransactionId(this.transactionId)\n .setNodeAccountIds([this.nodeId])\n .execute(client);\n\n if (receipt.status !== Status.Success) {\n throw new ReceiptStatusError({\n transactionReceipt: receipt,\n status: receipt.status,\n transactionId: this.transactionId,\n });\n }\n\n return receipt;\n }\n\n /**\n * @param {Client} client\n * @returns {Promise}\n */\n async getRecord(client) {\n await this.getReceipt(client);\n\n return new TransactionRecordQuery()\n .setTransactionId(this.transactionId)\n .setNodeAccountIds([this.nodeId])\n .execute(client);\n }\n}\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport Status from \"../Status.js\";\nimport TransactionReceipt from \"./TransactionReceipt.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport ReceiptStatusError from \"../ReceiptStatusError.js\";\nimport { ExecutionState } from \"../Executable.js\";\nimport { ResponseCodeEnum } from \"@hashgraph/proto\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ITransactionReceipt} proto.ITransactionReceipt\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetReceiptQuery} proto.ITransactionGetReceiptQuery\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetReceiptResponse} proto.ITransactionGetReceiptResponse\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\n/**\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @augments {Query}\n */\nexport default class TransactionReceiptQuery extends Query {\n /**\n * @param {object} [props]\n * @param {TransactionId | string} [props.transactionId]\n * @param {boolean} [props.includeDuplicates]\n * @param {boolean} [props.includeChildren]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TransactionId}\n */\n this._transactionId = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeChildren = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeDuplicates = null;\n\n if (props.transactionId != null) {\n this.setTransactionId(props.transactionId);\n }\n\n if (props.includeChildren != null) {\n this.setIncludeChildren(props.includeChildren);\n }\n\n if (props.includeDuplicates != null) {\n this.setIncludeDuplicates(props.includeDuplicates);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {TransactionReceiptQuery}\n */\n static _fromProtobuf(query) {\n const receipt = /** @type {proto.ITransactionGetReceiptQuery} */ (\n query.transactionGetReceipt\n );\n\n return new TransactionReceiptQuery({\n transactionId: receipt.transactionID\n ? TransactionId._fromProtobuf(receipt.transactionID)\n : undefined,\n includeDuplicates:\n receipt.includeDuplicates != null\n ? receipt.includeDuplicates\n : undefined,\n includeChildren:\n receipt.includeChildReceipts != null\n ? receipt.includeChildReceipts\n : undefined,\n });\n }\n\n /**\n * @returns {?TransactionId}\n */\n get transactionId() {\n return this._transactionId;\n }\n\n /**\n * Set the transaction ID for which the receipt is being requested.\n *\n * @param {TransactionId | string} transactionId\n * @returns {this}\n */\n setTransactionId(transactionId) {\n this._transactionId =\n typeof transactionId === \"string\"\n ? TransactionId.fromString(transactionId)\n : transactionId.clone();\n\n return this;\n }\n\n /**\n * @param {boolean} includeDuplicates\n * @returns {TransactionReceiptQuery}\n */\n setIncludeDuplicates(includeDuplicates) {\n this._includeDuplicates = includeDuplicates;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeDuplicates() {\n return this._includeDuplicates != null\n ? this._includeDuplicates\n : false;\n }\n\n /**\n * @param {boolean} includeChildren\n * @returns {TransactionReceiptQuery}\n */\n setIncludeChildren(includeChildren) {\n this._includeChildren = includeChildren;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeChildren() {\n return this._includeChildren != null ? this._includeChildren : false;\n }\n\n /**\n * @override\n * @protected\n * @returns {boolean}\n */\n _isPaymentRequired() {\n return false;\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n return ExecutionState.Retry;\n case Status.Ok:\n break;\n default:\n return ExecutionState.Error;\n }\n\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n transactionGetReceipt.receipt\n );\n const receiptStatusCode = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n\n status = Status._fromCode(receiptStatusCode);\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n return ExecutionState.Retry;\n case Status.Success:\n return ExecutionState.Finished;\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Ok:\n // Do nothing\n break;\n\n default:\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n transactionGetReceipt.receipt\n );\n const receiptStatusCode = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n\n status = Status._fromCode(receiptStatusCode);\n\n return new ReceiptStatusError({\n status,\n transactionId: this._getTransactionId(),\n transactionReceipt: TransactionReceipt._fromProtobuf(\n transactionGetReceipt\n ),\n });\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (\n this._transactionId != null &&\n this._transactionId.accountId != null\n ) {\n this._transactionId.accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.getTransactionReceipts(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n return /** @type {proto.IResponseHeader} */ (\n transactionGetReceipt.header\n );\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n\n return Promise.resolve(\n TransactionReceipt._fromProtobuf(transactionGetReceipt)\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n transactionGetReceipt: {\n header,\n transactionID:\n this._transactionId != null\n ? this._transactionId._toProtobuf()\n : null,\n includeDuplicates: this._includeDuplicates,\n includeChildReceipts: this._includeChildren,\n },\n };\n }\n}\n\nQUERY_REGISTRY.set(\n \"transactionGetReceipt\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TransactionReceiptQuery._fromProtobuf\n);\n","// minimal library entry point.\n\n\"use strict\";\nmodule.exports = require(\"./src/index-minimal\");\n","\"use strict\";\nmodule.exports = Writer;\n\nvar util = require(\"./util/minimal\");\n\nvar BufferWriter; // cyclic\n\nvar LongBits = util.LongBits,\n base64 = util.base64,\n utf8 = util.utf8;\n\n/**\n * Constructs a new writer operation instance.\n * @classdesc Scheduled writer operation.\n * @constructor\n * @param {function(*, Uint8Array, number)} fn Function to call\n * @param {number} len Value byte length\n * @param {*} val Value to write\n * @ignore\n */\nfunction Op(fn, len, val) {\n\n /**\n * Function to call.\n * @type {function(Uint8Array, number, *)}\n */\n this.fn = fn;\n\n /**\n * Value byte length.\n * @type {number}\n */\n this.len = len;\n\n /**\n * Next operation.\n * @type {Writer.Op|undefined}\n */\n this.next = undefined;\n\n /**\n * Value to write.\n * @type {*}\n */\n this.val = val; // type varies\n}\n\n/* istanbul ignore next */\nfunction noop() {} // eslint-disable-line no-empty-function\n\n/**\n * Constructs a new writer state instance.\n * @classdesc Copied writer state.\n * @memberof Writer\n * @constructor\n * @param {Writer} writer Writer to copy state from\n * @ignore\n */\nfunction State(writer) {\n\n /**\n * Current head.\n * @type {Writer.Op}\n */\n this.head = writer.head;\n\n /**\n * Current tail.\n * @type {Writer.Op}\n */\n this.tail = writer.tail;\n\n /**\n * Current buffer length.\n * @type {number}\n */\n this.len = writer.len;\n\n /**\n * Next state.\n * @type {State|null}\n */\n this.next = writer.states;\n}\n\n/**\n * Constructs a new writer instance.\n * @classdesc Wire format writer using `Uint8Array` if available, otherwise `Array`.\n * @constructor\n */\nfunction Writer() {\n\n /**\n * Current length.\n * @type {number}\n */\n this.len = 0;\n\n /**\n * Operations head.\n * @type {Object}\n */\n this.head = new Op(noop, 0, 0);\n\n /**\n * Operations tail\n * @type {Object}\n */\n this.tail = this.head;\n\n /**\n * Linked forked states.\n * @type {Object|null}\n */\n this.states = null;\n\n // When a value is written, the writer calculates its byte length and puts it into a linked\n // list of operations to perform when finish() is called. This both allows us to allocate\n // buffers of the exact required size and reduces the amount of work we have to do compared\n // to first calculating over objects and then encoding over objects. In our case, the encoding\n // part is just a linked list walk calling operations with already prepared values.\n}\n\nvar create = function create() {\n return util.Buffer\n ? function create_buffer_setup() {\n return (Writer.create = function create_buffer() {\n return new BufferWriter();\n })();\n }\n /* istanbul ignore next */\n : function create_array() {\n return new Writer();\n };\n};\n\n/**\n * Creates a new writer.\n * @function\n * @returns {BufferWriter|Writer} A {@link BufferWriter} when Buffers are supported, otherwise a {@link Writer}\n */\nWriter.create = create();\n\n/**\n * Allocates a buffer of the specified size.\n * @param {number} size Buffer size\n * @returns {Uint8Array} Buffer\n */\nWriter.alloc = function alloc(size) {\n return new util.Array(size);\n};\n\n// Use Uint8Array buffer pool in the browser, just like node does with buffers\n/* istanbul ignore else */\nif (util.Array !== Array)\n Writer.alloc = util.pool(Writer.alloc, util.Array.prototype.subarray);\n\n/**\n * Pushes a new operation to the queue.\n * @param {function(Uint8Array, number, *)} fn Function to call\n * @param {number} len Value byte length\n * @param {number} val Value to write\n * @returns {Writer} `this`\n * @private\n */\nWriter.prototype._push = function push(fn, len, val) {\n this.tail = this.tail.next = new Op(fn, len, val);\n this.len += len;\n return this;\n};\n\nfunction writeByte(val, buf, pos) {\n buf[pos] = val & 255;\n}\n\nfunction writeVarint32(val, buf, pos) {\n while (val > 127) {\n buf[pos++] = val & 127 | 128;\n val >>>= 7;\n }\n buf[pos] = val;\n}\n\n/**\n * Constructs a new varint writer operation instance.\n * @classdesc Scheduled varint writer operation.\n * @extends Op\n * @constructor\n * @param {number} len Value byte length\n * @param {number} val Value to write\n * @ignore\n */\nfunction VarintOp(len, val) {\n this.len = len;\n this.next = undefined;\n this.val = val;\n}\n\nVarintOp.prototype = Object.create(Op.prototype);\nVarintOp.prototype.fn = writeVarint32;\n\n/**\n * Writes an unsigned 32 bit value as a varint.\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.uint32 = function write_uint32(value) {\n // here, the call to this.push has been inlined and a varint specific Op subclass is used.\n // uint32 is by far the most frequently used operation and benefits significantly from this.\n this.len += (this.tail = this.tail.next = new VarintOp(\n (value = value >>> 0)\n < 128 ? 1\n : value < 16384 ? 2\n : value < 2097152 ? 3\n : value < 268435456 ? 4\n : 5,\n value)).len;\n return this;\n};\n\n/**\n * Writes a signed 32 bit value as a varint.\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.int32 = function write_int32(value) {\n return value < 0\n ? this._push(writeVarint64, 10, LongBits.fromNumber(value)) // 10 bytes per spec\n : this.uint32(value);\n};\n\n/**\n * Writes a 32 bit value as a varint, zig-zag encoded.\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.sint32 = function write_sint32(value) {\n return this.uint32((value << 1 ^ value >> 31) >>> 0);\n};\n\nfunction writeVarint64(val, buf, pos) {\n while (val.hi) {\n buf[pos++] = val.lo & 127 | 128;\n val.lo = (val.lo >>> 7 | val.hi << 25) >>> 0;\n val.hi >>>= 7;\n }\n while (val.lo > 127) {\n buf[pos++] = val.lo & 127 | 128;\n val.lo = val.lo >>> 7;\n }\n buf[pos++] = val.lo;\n}\n\n/**\n * Writes an unsigned 64 bit value as a varint.\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.uint64 = function write_uint64(value) {\n var bits = LongBits.from(value);\n return this._push(writeVarint64, bits.length(), bits);\n};\n\n/**\n * Writes a signed 64 bit value as a varint.\n * @function\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.int64 = Writer.prototype.uint64;\n\n/**\n * Writes a signed 64 bit value as a varint, zig-zag encoded.\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.sint64 = function write_sint64(value) {\n var bits = LongBits.from(value).zzEncode();\n return this._push(writeVarint64, bits.length(), bits);\n};\n\n/**\n * Writes a boolish value as a varint.\n * @param {boolean} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.bool = function write_bool(value) {\n return this._push(writeByte, 1, value ? 1 : 0);\n};\n\nfunction writeFixed32(val, buf, pos) {\n buf[pos ] = val & 255;\n buf[pos + 1] = val >>> 8 & 255;\n buf[pos + 2] = val >>> 16 & 255;\n buf[pos + 3] = val >>> 24;\n}\n\n/**\n * Writes an unsigned 32 bit value as fixed 32 bits.\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.fixed32 = function write_fixed32(value) {\n return this._push(writeFixed32, 4, value >>> 0);\n};\n\n/**\n * Writes a signed 32 bit value as fixed 32 bits.\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.sfixed32 = Writer.prototype.fixed32;\n\n/**\n * Writes an unsigned 64 bit value as fixed 64 bits.\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.fixed64 = function write_fixed64(value) {\n var bits = LongBits.from(value);\n return this._push(writeFixed32, 4, bits.lo)._push(writeFixed32, 4, bits.hi);\n};\n\n/**\n * Writes a signed 64 bit value as fixed 64 bits.\n * @function\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.sfixed64 = Writer.prototype.fixed64;\n\n/**\n * Writes a float (32 bit).\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.float = function write_float(value) {\n return this._push(util.float.writeFloatLE, 4, value);\n};\n\n/**\n * Writes a double (64 bit float).\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.double = function write_double(value) {\n return this._push(util.float.writeDoubleLE, 8, value);\n};\n\nvar writeBytes = util.Array.prototype.set\n ? function writeBytes_set(val, buf, pos) {\n buf.set(val, pos); // also works for plain array values\n }\n /* istanbul ignore next */\n : function writeBytes_for(val, buf, pos) {\n for (var i = 0; i < val.length; ++i)\n buf[pos + i] = val[i];\n };\n\n/**\n * Writes a sequence of bytes.\n * @param {Uint8Array|string} value Buffer or base64 encoded string to write\n * @returns {Writer} `this`\n */\nWriter.prototype.bytes = function write_bytes(value) {\n var len = value.length >>> 0;\n if (!len)\n return this._push(writeByte, 1, 0);\n if (util.isString(value)) {\n var buf = Writer.alloc(len = base64.length(value));\n base64.decode(value, buf, 0);\n value = buf;\n }\n return this.uint32(len)._push(writeBytes, len, value);\n};\n\n/**\n * Writes a string.\n * @param {string} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.string = function write_string(value) {\n var len = utf8.length(value);\n return len\n ? this.uint32(len)._push(utf8.write, len, value)\n : this._push(writeByte, 1, 0);\n};\n\n/**\n * Forks this writer's state by pushing it to a stack.\n * Calling {@link Writer#reset|reset} or {@link Writer#ldelim|ldelim} resets the writer to the previous state.\n * @returns {Writer} `this`\n */\nWriter.prototype.fork = function fork() {\n this.states = new State(this);\n this.head = this.tail = new Op(noop, 0, 0);\n this.len = 0;\n return this;\n};\n\n/**\n * Resets this instance to the last state.\n * @returns {Writer} `this`\n */\nWriter.prototype.reset = function reset() {\n if (this.states) {\n this.head = this.states.head;\n this.tail = this.states.tail;\n this.len = this.states.len;\n this.states = this.states.next;\n } else {\n this.head = this.tail = new Op(noop, 0, 0);\n this.len = 0;\n }\n return this;\n};\n\n/**\n * Resets to the last state and appends the fork state's current write length as a varint followed by its operations.\n * @returns {Writer} `this`\n */\nWriter.prototype.ldelim = function ldelim() {\n var head = this.head,\n tail = this.tail,\n len = this.len;\n this.reset().uint32(len);\n if (len) {\n this.tail.next = head.next; // skip noop\n this.tail = tail;\n this.len += len;\n }\n return this;\n};\n\n/**\n * Finishes the write operation.\n * @returns {Uint8Array} Finished buffer\n */\nWriter.prototype.finish = function finish() {\n var head = this.head.next, // skip noop\n buf = this.constructor.alloc(this.len),\n pos = 0;\n while (head) {\n head.fn(head.val, buf, pos);\n pos += head.len;\n head = head.next;\n }\n // this.head = this.tail = null;\n return buf;\n};\n\nWriter._configure = function(BufferWriter_) {\n BufferWriter = BufferWriter_;\n Writer.create = create();\n BufferWriter._configure();\n};\n","\"use strict\";\nmodule.exports = Reader;\n\nvar util = require(\"./util/minimal\");\n\nvar BufferReader; // cyclic\n\nvar LongBits = util.LongBits,\n utf8 = util.utf8;\n\n/* istanbul ignore next */\nfunction indexOutOfRange(reader, writeLength) {\n return RangeError(\"index out of range: \" + reader.pos + \" + \" + (writeLength || 1) + \" > \" + reader.len);\n}\n\n/**\n * Constructs a new reader instance using the specified buffer.\n * @classdesc Wire format reader using `Uint8Array` if available, otherwise `Array`.\n * @constructor\n * @param {Uint8Array} buffer Buffer to read from\n */\nfunction Reader(buffer) {\n\n /**\n * Read buffer.\n * @type {Uint8Array}\n */\n this.buf = buffer;\n\n /**\n * Read buffer position.\n * @type {number}\n */\n this.pos = 0;\n\n /**\n * Read buffer length.\n * @type {number}\n */\n this.len = buffer.length;\n}\n\nvar create_array = typeof Uint8Array !== \"undefined\"\n ? function create_typed_array(buffer) {\n if (buffer instanceof Uint8Array || Array.isArray(buffer))\n return new Reader(buffer);\n throw Error(\"illegal buffer\");\n }\n /* istanbul ignore next */\n : function create_array(buffer) {\n if (Array.isArray(buffer))\n return new Reader(buffer);\n throw Error(\"illegal buffer\");\n };\n\nvar create = function create() {\n return util.Buffer\n ? function create_buffer_setup(buffer) {\n return (Reader.create = function create_buffer(buffer) {\n return util.Buffer.isBuffer(buffer)\n ? new BufferReader(buffer)\n /* istanbul ignore next */\n : create_array(buffer);\n })(buffer);\n }\n /* istanbul ignore next */\n : create_array;\n};\n\n/**\n * Creates a new reader using the specified buffer.\n * @function\n * @param {Uint8Array|Buffer} buffer Buffer to read from\n * @returns {Reader|BufferReader} A {@link BufferReader} if `buffer` is a Buffer, otherwise a {@link Reader}\n * @throws {Error} If `buffer` is not a valid buffer\n */\nReader.create = create();\n\nReader.prototype._slice = util.Array.prototype.subarray || /* istanbul ignore next */ util.Array.prototype.slice;\n\n/**\n * Reads a varint as an unsigned 32 bit value.\n * @function\n * @returns {number} Value read\n */\nReader.prototype.uint32 = (function read_uint32_setup() {\n var value = 4294967295; // optimizer type-hint, tends to deopt otherwise (?!)\n return function read_uint32() {\n value = ( this.buf[this.pos] & 127 ) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 127) << 7) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 127) << 14) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 127) << 21) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 15) << 28) >>> 0; if (this.buf[this.pos++] < 128) return value;\n\n /* istanbul ignore if */\n if ((this.pos += 5) > this.len) {\n this.pos = this.len;\n throw indexOutOfRange(this, 10);\n }\n return value;\n };\n})();\n\n/**\n * Reads a varint as a signed 32 bit value.\n * @returns {number} Value read\n */\nReader.prototype.int32 = function read_int32() {\n return this.uint32() | 0;\n};\n\n/**\n * Reads a zig-zag encoded varint as a signed 32 bit value.\n * @returns {number} Value read\n */\nReader.prototype.sint32 = function read_sint32() {\n var value = this.uint32();\n return value >>> 1 ^ -(value & 1) | 0;\n};\n\n/* eslint-disable no-invalid-this */\n\nfunction readLongVarint() {\n // tends to deopt with local vars for octet etc.\n var bits = new LongBits(0, 0);\n var i = 0;\n if (this.len - this.pos > 4) { // fast route (lo)\n for (; i < 4; ++i) {\n // 1st..4th\n bits.lo = (bits.lo | (this.buf[this.pos] & 127) << i * 7) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n // 5th\n bits.lo = (bits.lo | (this.buf[this.pos] & 127) << 28) >>> 0;\n bits.hi = (bits.hi | (this.buf[this.pos] & 127) >> 4) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n i = 0;\n } else {\n for (; i < 3; ++i) {\n /* istanbul ignore if */\n if (this.pos >= this.len)\n throw indexOutOfRange(this);\n // 1st..3th\n bits.lo = (bits.lo | (this.buf[this.pos] & 127) << i * 7) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n // 4th\n bits.lo = (bits.lo | (this.buf[this.pos++] & 127) << i * 7) >>> 0;\n return bits;\n }\n if (this.len - this.pos > 4) { // fast route (hi)\n for (; i < 5; ++i) {\n // 6th..10th\n bits.hi = (bits.hi | (this.buf[this.pos] & 127) << i * 7 + 3) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n } else {\n for (; i < 5; ++i) {\n /* istanbul ignore if */\n if (this.pos >= this.len)\n throw indexOutOfRange(this);\n // 6th..10th\n bits.hi = (bits.hi | (this.buf[this.pos] & 127) << i * 7 + 3) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n }\n /* istanbul ignore next */\n throw Error(\"invalid varint encoding\");\n}\n\n/* eslint-enable no-invalid-this */\n\n/**\n * Reads a varint as a signed 64 bit value.\n * @name Reader#int64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a varint as an unsigned 64 bit value.\n * @name Reader#uint64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a zig-zag encoded varint as a signed 64 bit value.\n * @name Reader#sint64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a varint as a boolean.\n * @returns {boolean} Value read\n */\nReader.prototype.bool = function read_bool() {\n return this.uint32() !== 0;\n};\n\nfunction readFixed32_end(buf, end) { // note that this uses `end`, not `pos`\n return (buf[end - 4]\n | buf[end - 3] << 8\n | buf[end - 2] << 16\n | buf[end - 1] << 24) >>> 0;\n}\n\n/**\n * Reads fixed 32 bits as an unsigned 32 bit integer.\n * @returns {number} Value read\n */\nReader.prototype.fixed32 = function read_fixed32() {\n\n /* istanbul ignore if */\n if (this.pos + 4 > this.len)\n throw indexOutOfRange(this, 4);\n\n return readFixed32_end(this.buf, this.pos += 4);\n};\n\n/**\n * Reads fixed 32 bits as a signed 32 bit integer.\n * @returns {number} Value read\n */\nReader.prototype.sfixed32 = function read_sfixed32() {\n\n /* istanbul ignore if */\n if (this.pos + 4 > this.len)\n throw indexOutOfRange(this, 4);\n\n return readFixed32_end(this.buf, this.pos += 4) | 0;\n};\n\n/* eslint-disable no-invalid-this */\n\nfunction readFixed64(/* this: Reader */) {\n\n /* istanbul ignore if */\n if (this.pos + 8 > this.len)\n throw indexOutOfRange(this, 8);\n\n return new LongBits(readFixed32_end(this.buf, this.pos += 4), readFixed32_end(this.buf, this.pos += 4));\n}\n\n/* eslint-enable no-invalid-this */\n\n/**\n * Reads fixed 64 bits.\n * @name Reader#fixed64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads zig-zag encoded fixed 64 bits.\n * @name Reader#sfixed64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a float (32 bit) as a number.\n * @function\n * @returns {number} Value read\n */\nReader.prototype.float = function read_float() {\n\n /* istanbul ignore if */\n if (this.pos + 4 > this.len)\n throw indexOutOfRange(this, 4);\n\n var value = util.float.readFloatLE(this.buf, this.pos);\n this.pos += 4;\n return value;\n};\n\n/**\n * Reads a double (64 bit float) as a number.\n * @function\n * @returns {number} Value read\n */\nReader.prototype.double = function read_double() {\n\n /* istanbul ignore if */\n if (this.pos + 8 > this.len)\n throw indexOutOfRange(this, 4);\n\n var value = util.float.readDoubleLE(this.buf, this.pos);\n this.pos += 8;\n return value;\n};\n\n/**\n * Reads a sequence of bytes preceeded by its length as a varint.\n * @returns {Uint8Array} Value read\n */\nReader.prototype.bytes = function read_bytes() {\n var length = this.uint32(),\n start = this.pos,\n end = this.pos + length;\n\n /* istanbul ignore if */\n if (end > this.len)\n throw indexOutOfRange(this, length);\n\n this.pos += length;\n if (Array.isArray(this.buf)) // plain array\n return this.buf.slice(start, end);\n return start === end // fix for IE 10/Win8 and others' subarray returning array of size 1\n ? new this.buf.constructor(0)\n : this._slice.call(this.buf, start, end);\n};\n\n/**\n * Reads a string preceeded by its byte length as a varint.\n * @returns {string} Value read\n */\nReader.prototype.string = function read_string() {\n var bytes = this.bytes();\n return utf8.read(bytes, 0, bytes.length);\n};\n\n/**\n * Skips the specified number of bytes if specified, otherwise skips a varint.\n * @param {number} [length] Length if known, otherwise a varint is assumed\n * @returns {Reader} `this`\n */\nReader.prototype.skip = function skip(length) {\n if (typeof length === \"number\") {\n /* istanbul ignore if */\n if (this.pos + length > this.len)\n throw indexOutOfRange(this, length);\n this.pos += length;\n } else {\n do {\n /* istanbul ignore if */\n if (this.pos >= this.len)\n throw indexOutOfRange(this);\n } while (this.buf[this.pos++] & 128);\n }\n return this;\n};\n\n/**\n * Skips the next element of the specified wire type.\n * @param {number} wireType Wire type received\n * @returns {Reader} `this`\n */\nReader.prototype.skipType = function(wireType) {\n switch (wireType) {\n case 0:\n this.skip();\n break;\n case 1:\n this.skip(8);\n break;\n case 2:\n this.skip(this.uint32());\n break;\n case 3:\n while ((wireType = this.uint32() & 7) !== 4) {\n this.skipType(wireType);\n }\n break;\n case 5:\n this.skip(4);\n break;\n\n /* istanbul ignore next */\n default:\n throw Error(\"invalid wire type \" + wireType + \" at offset \" + this.pos);\n }\n return this;\n};\n\nReader._configure = function(BufferReader_) {\n BufferReader = BufferReader_;\n Reader.create = create();\n BufferReader._configure();\n\n var fn = util.Long ? \"toLong\" : /* istanbul ignore next */ \"toNumber\";\n util.merge(Reader.prototype, {\n\n int64: function read_int64() {\n return readLongVarint.call(this)[fn](false);\n },\n\n uint64: function read_uint64() {\n return readLongVarint.call(this)[fn](true);\n },\n\n sint64: function read_sint64() {\n return readLongVarint.call(this).zzDecode()[fn](false);\n },\n\n fixed64: function read_fixed64() {\n return readFixed64.call(this)[fn](true);\n },\n\n sfixed64: function read_sfixed64() {\n return readFixed64.call(this)[fn](false);\n }\n\n });\n};\n","export default class GrpcStatus {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {GrpcStatus}\n */\n static _fromValue(code) {\n switch (code) {\n case 0:\n return GrpcStatus.Ok;\n case 1:\n return GrpcStatus.Cancelled;\n case 2:\n return GrpcStatus.Unknown;\n case 3:\n return GrpcStatus.InvalidArgument;\n case 4:\n return GrpcStatus.DeadlineExceeded;\n case 5:\n return GrpcStatus.NotFound;\n case 6:\n return GrpcStatus.AlreadyExists;\n case 7:\n return GrpcStatus.PermissionDenied;\n case 16:\n return GrpcStatus.Unauthenticated;\n case 8:\n return GrpcStatus.ResourceExhausted;\n case 9:\n return GrpcStatus.FailedPrecondition;\n case 10:\n return GrpcStatus.Aborted;\n case 11:\n return GrpcStatus.OutOfRange;\n case 12:\n return GrpcStatus.Unimplemented;\n case 13:\n return GrpcStatus.Internal;\n case 14:\n return GrpcStatus.Unavailable;\n case 15:\n return GrpcStatus.DataLoss;\n default:\n throw new Error(\n \"(BUG) non-exhaustive GrpcStatus switch statement\"\n );\n }\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case GrpcStatus.Ok:\n return \"OK\";\n case GrpcStatus.Cancelled:\n return \"CANCELLED\";\n case GrpcStatus.Unknown:\n return \"UNKNOWN\";\n case GrpcStatus.InvalidArgument:\n return \"INVALID_ARGUMENT\";\n case GrpcStatus.DeadlineExceeded:\n return \"DEADLINE_EXCEEDED\";\n case GrpcStatus.NotFound:\n return \"NOT_FOUND\";\n case GrpcStatus.AlreadyExists:\n return \"ALREADY_EXISTS\";\n case GrpcStatus.PermissionDenied:\n return \"PERMISSION_DENIED\";\n case GrpcStatus.Unauthenticated:\n return \"UNAUTHENTICATED\";\n case GrpcStatus.ResourceExhausted:\n return \"RESOURCE_EXHAUSTED\";\n case GrpcStatus.FailedPrecondition:\n return \"FAILED_PRECONDITION\";\n case GrpcStatus.Aborted:\n return \"ABORTED\";\n case GrpcStatus.OutOfRange:\n return \"OUT_OF_RANGE\";\n case GrpcStatus.Unimplemented:\n return \"UNIMPLEMENTED\";\n case GrpcStatus.Internal:\n return \"INTERNAL\";\n case GrpcStatus.Unavailable:\n return \"UNAVAILABLE\";\n case GrpcStatus.DataLoss:\n return \"DATA_LOSS\";\n\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @returns {number}\n */\n valueOf() {\n return this._code;\n }\n}\n\nGrpcStatus.Ok = new GrpcStatus(0);\nGrpcStatus.Cancelled = new GrpcStatus(1);\nGrpcStatus.Unknown = new GrpcStatus(2);\nGrpcStatus.InvalidArgument = new GrpcStatus(3);\nGrpcStatus.DeadlineExceeded = new GrpcStatus(4);\nGrpcStatus.NotFound = new GrpcStatus(5);\nGrpcStatus.AlreadyExists = new GrpcStatus(6);\nGrpcStatus.PermissionDenied = new GrpcStatus(7);\nGrpcStatus.Unauthenticated = new GrpcStatus(16);\nGrpcStatus.ResourceExhausted = new GrpcStatus(8);\nGrpcStatus.FailedPrecondition = new GrpcStatus(9);\nGrpcStatus.Aborted = new GrpcStatus(10);\nGrpcStatus.OutOfRange = new GrpcStatus(11);\nGrpcStatus.Unimplemented = new GrpcStatus(12);\nGrpcStatus.Internal = new GrpcStatus(13);\nGrpcStatus.Unavailable = new GrpcStatus(14);\nGrpcStatus.DataLoss = new GrpcStatus(15);\n","import Long from \"long\";\n\nexport default class ExchangeRate {\n /**\n * @private\n * @param {object} props\n * @param {number} props.hbars\n * @param {number} props.cents\n * @param {Date} props.expirationTime\n */\n constructor(props) {\n /**\n * Denotes Hbar equivalent to cents (USD)\n *\n * @readonly\n * @type {number}\n */\n this.hbars = props.hbars;\n\n /**\n * Denotes cents (USD) equivalent to Hbar\n *\n * @readonly\n * @type {number}\n */\n this.cents = props.cents;\n\n /**\n * Expiration time of this exchange rate\n *\n * @readonly\n * @type {Date}\n */\n this.expirationTime = props.expirationTime;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {import(\"@hashgraph/proto\").IExchangeRate} rate\n * @returns {ExchangeRate}\n */\n static _fromProtobuf(rate) {\n return new ExchangeRate({\n hbars: /** @type {number} */ (rate.hbarEquiv),\n cents: /** @type {number} */ (rate.centEquiv),\n expirationTime: new Date(\n rate.expirationTime != null\n ? rate.expirationTime.seconds != null\n ? rate.expirationTime.seconds instanceof Long\n ? rate.expirationTime.seconds.toInt()\n : rate.expirationTime.seconds\n : 0 * 1000\n : 0 * 1000\n ),\n });\n }\n\n /**\n * @internal\n * @returns {import(\"@hashgraph/proto\").IExchangeRate}\n */\n _toProtobuf() {\n return {\n hbarEquiv: this.hbars,\n centEquiv: this.cents,\n expirationTime: {\n seconds: Long.fromNumber(this.expirationTime.getSeconds()),\n },\n };\n }\n}\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport TransactionRecord from \"./TransactionRecord.js\";\nimport TransactionReceipt from \"./TransactionReceipt.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport Status from \"../Status.js\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport ReceiptStatusError from \"../ReceiptStatusError.js\";\nimport { ExecutionState } from \"../Executable.js\";\nimport { ResponseType, ResponseCodeEnum } from \"@hashgraph/proto\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").ITransactionRecord} proto.ITransactionRecord\n * @typedef {import(\"@hashgraph/proto\").ITransactionReceipt} proto.ITransactionReceipt\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetRecordResponse} proto.ITransactionGetRecordResponse\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetRecordQuery} proto.ITransactionGetRecordQuery\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * @augments {Query}\n */\nexport default class TransactionRecordQuery extends Query {\n /**\n * @param {object} [props]\n * @param {TransactionId} [props.transactionId]\n * @param {boolean} [props.includeChildren]\n * @param {boolean} [props.includeDuplicates]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TransactionId}\n */\n this._transactionId = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeChildren = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeDuplicates = null;\n\n if (props.transactionId != null) {\n this.setTransactionId(props.transactionId);\n }\n\n if (props.includeChildren != null) {\n this.setIncludeChildren(props.includeChildren);\n }\n\n if (props.includeDuplicates != null) {\n this.setIncludeDuplicates(props.includeDuplicates);\n }\n }\n\n /**\n * @returns {?TransactionId}\n */\n get transactionId() {\n return this._transactionId;\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {TransactionRecordQuery}\n */\n static _fromProtobuf(query) {\n const record = /** @type {proto.ITransactionGetRecordQuery} */ (\n query.transactionGetRecord\n );\n\n return new TransactionRecordQuery({\n transactionId: record.transactionID\n ? TransactionId._fromProtobuf(record.transactionID)\n : undefined,\n includeChildren:\n record.includeChildRecords != null\n ? record.includeChildRecords\n : undefined,\n includeDuplicates:\n record.includeDuplicates != null\n ? record.includeDuplicates\n : undefined,\n });\n }\n\n /**\n * Set the transaction ID for which the record is being requested.\n *\n * @param {TransactionId | string} transactionId\n * @returns {TransactionRecordQuery}\n */\n setTransactionId(transactionId) {\n this._transactionId =\n typeof transactionId === \"string\"\n ? TransactionId.fromString(transactionId)\n : transactionId.clone();\n\n return this;\n }\n\n /**\n * @param {boolean} includeChildren\n * @returns {TransactionRecordQuery}\n */\n setIncludeChildren(includeChildren) {\n this._includeChildren = includeChildren;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeChildren() {\n return this._includeChildren != null ? this._includeChildren : false;\n }\n\n /**\n * @param {boolean} includeDuplicates\n * @returns {TransactionRecordQuery}\n */\n setIncludeDuplicates(includeDuplicates) {\n this._duplicates = includeDuplicates;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeDuplicates() {\n return this._duplicates != null ? this._duplicates : false;\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {ExecutionState}\n */\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n case Status.RecordNotFound:\n return ExecutionState.Retry;\n\n case Status.Ok:\n break;\n\n default:\n return ExecutionState.Error;\n }\n\n const transactionGetRecord =\n /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n const header = /** @type {proto.IResponseHeader} */ (\n transactionGetRecord.header\n );\n\n if (header.responseType === ResponseType.COST_ANSWER) {\n return ExecutionState.Finished;\n }\n\n const record = /** @type {proto.ITransactionRecord} */ (\n transactionGetRecord.transactionRecord\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n record.receipt\n );\n const receiptStatusCode = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n status = Status._fromCode(receiptStatusCode);\n\n switch (status) {\n case Status.Ok:\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n case Status.RecordNotFound:\n return ExecutionState.Retry;\n\n case Status.Success:\n return ExecutionState.Finished;\n\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Ok:\n // Do nothing\n break;\n\n default:\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n const transactionGetRecord =\n /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n const record = /** @type {proto.ITransactionRecord} */ (\n transactionGetRecord.transactionRecord\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n record.receipt\n );\n const receiptStatusError = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n\n status = Status._fromCode(receiptStatusError);\n\n return new ReceiptStatusError({\n status,\n transactionId: this._getTransactionId(),\n transactionReceipt: TransactionReceipt._fromProtobuf({ receipt }),\n });\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (\n this._transactionId != null &&\n this._transactionId.accountId != null\n ) {\n this._transactionId.accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.getTxRecordByTxID(request);\n }\n\n /**\n * @override\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const transactionGetRecord =\n /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n return /** @type {proto.IResponseHeader} */ (\n transactionGetRecord.header\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const record = /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n\n return Promise.resolve(TransactionRecord._fromProtobuf(record));\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n transactionGetRecord: {\n header,\n transactionID:\n this._transactionId != null\n ? this._transactionId._toProtobuf()\n : null,\n includeChildRecords: this._includeChildren,\n includeDuplicates: this._includeDuplicates,\n },\n };\n }\n}\n\nQUERY_REGISTRY.set(\n \"transactionGetRecord\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TransactionRecordQuery._fromProtobuf\n);\n","import ContractId from \"./ContractId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IContractLoginfo} proto.IContractLoginfo\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n */\n\n/**\n * The log information for an event returned by a smart contract function call. One function call\n * may return several such events.\n */\nexport default class ContractLogInfo {\n /**\n * @param {object} props\n * @param {ContractId} props.contractId\n * @param {Uint8Array} props.bloom\n * @param {Uint8Array[]} props.topics\n * @param {Uint8Array} props.data\n */\n constructor(props) {\n /**\n * Address of a contract that emitted the event.\n *\n * @readonly\n */\n this.contractId = props.contractId;\n\n /**\n * Bloom filter for a particular log.\n *\n * @readonly\n */\n this.bloom = props.bloom;\n\n /**\n * Topics of a particular event.\n *\n * @readonly\n */\n this.topics = props.topics;\n\n /**\n * Event data.\n *\n * @readonly\n */\n this.data = props.data;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IContractLoginfo} info\n * @returns {ContractLogInfo}\n */\n static _fromProtobuf(info) {\n return new ContractLogInfo({\n contractId: ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (info.contractID)\n ),\n bloom: info.bloom != null ? info.bloom : new Uint8Array(),\n topics: info.topic != null ? info.topic : [],\n data: info.data != null ? info.data : new Uint8Array(),\n });\n }\n\n /**\n * @internal\n * @returns {proto.IContractLoginfo}\n */\n _toProtobuf() {\n return {\n contractID: this.contractId._toProtobuf(),\n bloom: this.bloom,\n topic: this.topics,\n data: this.data,\n };\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport TokenTransferAccountMap from \"./TokenTransferAccountMap.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenTransferList} proto.ITokenTransferList\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenTransferMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n\n /**\n * @internal\n * @param {TokenId} tokenId\n * @param {AccountId} accountId\n * @param {Long} amount\n */\n __set(tokenId, accountId, amount) {\n const token = tokenId.toString();\n\n let _map = this._map.get(token);\n if (_map == null) {\n _map = new TokenTransferAccountMap();\n this._map.set(token, _map);\n this.__map.set(tokenId, _map);\n }\n\n _map._set(accountId, amount);\n }\n\n /**\n * @param {proto.ITokenTransferList[]} transfers\n * @returns {TokenTransferMap}\n */\n static _fromProtobuf(transfers) {\n const tokenTransfersMap = new TokenTransferMap();\n\n for (const transfer of transfers) {\n const token = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (transfer.token)\n );\n\n for (const aa of transfer.transfers != null\n ? transfer.transfers\n : []) {\n const account = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (aa.accountID)\n );\n\n tokenTransfersMap.__set(\n token,\n account,\n /** @type {Long} */ (aa.amount)\n );\n }\n }\n\n return tokenTransfersMap;\n }\n\n /**\n * @returns {proto.ITokenTransferList[]}\n */\n _toProtobuf() {\n /** @type {proto.ITokenTransferList[]} */\n const tokenTransferList = [];\n\n for (const [tokenId, value] of this) {\n /** @type {proto.IAccountAmount[]} */\n const transfers = [];\n\n for (const [accountId, amount] of value) {\n transfers.push({\n accountID: accountId._toProtobuf(),\n amount: amount,\n });\n }\n\n tokenTransferList.push({\n token: tokenId._toProtobuf(),\n transfers: transfers,\n });\n }\n\n return tokenTransferList;\n }\n}\n","import AccountId from \"../account/AccountId.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenTransferAccountMap extends ObjectMap {\n constructor() {\n super((s) => AccountId.fromString(s));\n }\n}\n","import Long from \"long\";\nimport TokenId from \"../token/TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenTransferList} proto.ITokenTransferList\n * @typedef {import(\"@hashgraph/proto\").INftTransfer} proto.INftTransfer\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {object} NftTransfer\n * @property {AccountId} sender\n * @property {AccountId} recipient\n * @property {Long} serial\n * @property {boolean} isApproved\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenNftTransferMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n\n /**\n * @internal\n * @param {TokenId} tokenId\n * @param {NftTransfer} nftTransfer\n */\n __set(tokenId, nftTransfer) {\n const token = tokenId.toString();\n\n let _map = this._map.get(token);\n if (_map == null) {\n _map = [];\n this._map.set(token, _map);\n this.__map.set(tokenId, _map);\n }\n\n _map.push(nftTransfer);\n }\n\n /**\n * @param {proto.ITokenTransferList[]} transfers\n * @returns {TokenNftTransferMap}\n */\n static _fromProtobuf(transfers) {\n const tokenTransfersMap = new TokenNftTransferMap();\n\n for (const transfer of transfers) {\n const token = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (transfer.token)\n );\n\n for (const aa of transfer.nftTransfers != null\n ? transfer.nftTransfers\n : []) {\n const sender = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (aa.senderAccountID)\n );\n const recipient = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (aa.receiverAccountID)\n );\n\n tokenTransfersMap.__set(token, {\n sender,\n recipient,\n serial: Long.fromValue(\n /** @type {Long} */ (aa.serialNumber)\n ),\n isApproved: false,\n });\n }\n }\n\n return tokenTransfersMap;\n }\n\n /**\n * @returns {proto.ITokenTransferList[]}\n */\n _toProtobuf() {\n /** @type {proto.ITokenTransferList[]} */\n const tokenTransferList = [];\n\n for (const [tokenId, value] of this) {\n /** @type {proto.INftTransfer[]} */\n const transfers = [];\n\n for (const transfer of value) {\n transfers.push({\n senderAccountID: transfer.sender._toProtobuf(),\n receiverAccountID: transfer.recipient._toProtobuf(),\n serialNumber: transfer.serial,\n });\n }\n\n tokenTransferList.push({\n token: tokenId._toProtobuf(),\n nftTransfers: transfers,\n });\n }\n\n return tokenTransferList;\n }\n}\n","import TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IAssessedCustomFee} proto.IAssessedCustomFee\n */\n\nexport default class AssessedCustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {TokenId | string} [props.tokenId]\n * @param {Long | number} [props.amount]\n * @param {AccountId[]} [props.payerAccountIds]\n */\n constructor(props = {}) {\n /**\n * @type {?AccountId}\n */\n this._feeCollectorAccountId;\n\n if (props.feeCollectorAccountId != null) {\n this.setFeeCollectorAccountId(props.feeCollectorAccountId);\n }\n\n /**\n * @type {?TokenId}\n */\n this._tokenId;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n /**\n * @type {?Long}\n */\n this._amount;\n\n if (props.amount != null) {\n this.setAmount(props.amount);\n }\n\n /**\n * @type {?AccountId[]}\n */\n this._payerAccountIds;\n\n if (props.payerAccountIds != null) {\n this.setPayerAccountIds(props.payerAccountIds);\n }\n }\n\n /**\n * @returns {?AccountId}\n */\n get feeCollectorAccountId() {\n return this._feeCollectorAccountId;\n }\n\n /**\n * @param {AccountId | string} feeCollectorAccountId\n * @returns {this}\n */\n setFeeCollectorAccountId(feeCollectorAccountId) {\n this._feeCollectorAccountId =\n typeof feeCollectorAccountId === \"string\"\n ? AccountId.fromString(feeCollectorAccountId)\n : feeCollectorAccountId;\n return this;\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._tokenId =\n typeof tokenId === \"string\" ? TokenId.fromString(tokenId) : tokenId;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get amount() {\n return this._amount;\n }\n\n /**\n * @param {Long | number} amount\n * @returns {AssessedCustomFee}\n */\n setAmount(amount) {\n this._amount =\n typeof amount === \"number\" ? Long.fromNumber(amount) : amount;\n return this;\n }\n\n /**\n * @returns {?AccountId[]}\n */\n get payerAccountIds() {\n return this._payerAccountIds;\n }\n\n /**\n * @param {AccountId[]} payerAccountIds\n * @returns {AssessedCustomFee}\n */\n setPayerAccountIds(payerAccountIds) {\n this._payerAccountIds = payerAccountIds;\n return this;\n }\n\n /**\n * @internal\n * @param {proto.IAssessedCustomFee} fee\n * @returns {AssessedCustomFee}\n */\n static _fromProtobuf(fee) {\n return new AssessedCustomFee({\n feeCollectorAccountId:\n fee.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(fee.feeCollectorAccountId)\n : undefined,\n tokenId:\n fee.tokenId != null\n ? TokenId._fromProtobuf(fee.tokenId)\n : undefined,\n amount: fee.amount != null ? fee.amount : undefined,\n payerAccountIds:\n fee.effectivePayerAccountId != null\n ? fee.effectivePayerAccountId.map((id) =>\n AccountId._fromProtobuf(id)\n )\n : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.IAssessedCustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n tokenId: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n amount: this._amount,\n effectivePayerAccountId:\n this._payerAccountIds != null\n ? this._payerAccountIds.map((id) => id._toProtobuf())\n : null,\n };\n }\n}\n","import Long from \"long\";\nimport AccountId from \"../account/AccountId.js\";\nimport TokenId from \"./TokenId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenTransferList} proto.ITokenTransferList\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n */\n\n/**\n * An account, and the amount that it sends or receives during a cryptocurrency tokentransfer.\n */\nexport default class TokenTransfer {\n /**\n * @internal\n * @param {object} props\n * @param {TokenId | string} props.tokenId\n * @param {AccountId | string} props.accountId\n * @param {number | null} props.expectedDecimals\n * @param {Long | number} props.amount\n * @param {boolean} props.isApproved\n */\n constructor(props) {\n /**\n * The Token ID that sends or receives cryptocurrency.\n *\n * @readonly\n */\n this.tokenId =\n props.tokenId instanceof TokenId\n ? props.tokenId\n : TokenId.fromString(props.tokenId);\n\n /**\n * The Account ID that sends or receives cryptocurrency.\n *\n * @readonly\n */\n this.accountId =\n props.accountId instanceof AccountId\n ? props.accountId\n : AccountId.fromString(props.accountId);\n\n this.expectedDecimals = props.expectedDecimals;\n this.amount = Long.fromValue(props.amount);\n this.isApproved = props.isApproved;\n }\n\n /**\n * @internal\n * @param {proto.ITokenTransferList[]} tokenTransfers\n * @returns {TokenTransfer[]}\n */\n static _fromProtobuf(tokenTransfers) {\n const transfers = [];\n\n for (const tokenTransfer of tokenTransfers) {\n const tokenId = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (tokenTransfer.token)\n );\n const expectedDecimals =\n tokenTransfer.expectedDecimals != null\n ? /** @type {number | null } */ (\n tokenTransfer.expectedDecimals.value\n )\n : null;\n\n for (const transfer of tokenTransfer.transfers != null\n ? tokenTransfer.transfers\n : []) {\n transfers.push(\n new TokenTransfer({\n tokenId,\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (transfer.accountID)\n ),\n expectedDecimals,\n amount:\n transfer.amount != null\n ? transfer.amount\n : Long.ZERO,\n isApproved: transfer.isApproval == true,\n })\n );\n }\n }\n\n return transfers;\n }\n\n /**\n * @internal\n * @returns {proto.IAccountAmount}\n */\n _toProtobuf() {\n return {\n accountID: this.accountId._toProtobuf(),\n amount: this.amount,\n isApproval: this.isApproved,\n };\n }\n}\n","/**\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function digest(data) {\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/digest\n return new Uint8Array(await window.crypto.subtle.digest(\"SHA-384\", data));\n}\n","import Long from \"long\";\nimport Hbar from \"../Hbar.js\";\nimport TokenId from \"../token/TokenId.js\";\nimport TokenBalanceMap from \"./TokenBalanceMap.js\";\nimport TokenDecimalMap from \"./TokenDecimalMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetAccountBalanceResponse} proto.ICryptoGetAccountBalanceResponse\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").ITokenBalance} proto.ITokenBalance\n */\n\n/**\n * @typedef {object} TokenBalanceJson\n * @property {string} tokenId\n * @property {string} balance\n * @property {number} decimals\n */\n\n/**\n * @typedef {object} AccountBalanceJson\n * @property {string} hbars\n * @property {TokenBalanceJson[]} tokens\n */\n\nexport default class AccountBalance {\n /**\n * @private\n * @param {object} props\n * @param {Hbar} props.hbars\n * @param {?TokenBalanceMap} props.tokens\n * @param {?TokenDecimalMap} props.tokenDecimals\n */\n constructor(props) {\n /**\n * The account ID for which this balancermation applies.\n *\n * @readonly\n */\n this.hbars = props.hbars;\n\n /** @readonly */\n this.tokens = props.tokens;\n\n /** @readonly */\n this.tokenDecimals = props.tokenDecimals;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ICryptoGetAccountBalanceResponse} accountBalance\n * @returns {AccountBalance}\n */\n static _fromProtobuf(accountBalance) {\n const tokenBalances = new TokenBalanceMap();\n const tokenDecimals = new TokenDecimalMap();\n\n if (accountBalance.tokenBalances != null) {\n for (const balance of accountBalance.tokenBalances) {\n const tokenId = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (balance.tokenId)\n );\n\n tokenDecimals._set(\n tokenId,\n balance.decimals != null ? balance.decimals : 0\n );\n tokenBalances._set(\n tokenId,\n Long.fromValue(/** @type {Long} */ (balance.balance))\n );\n }\n }\n\n return new AccountBalance({\n hbars: Hbar.fromTinybars(\n /** @type {Long} */ (accountBalance.balance)\n ),\n tokens: tokenBalances,\n tokenDecimals,\n });\n }\n\n /**\n * @returns {proto.ICryptoGetAccountBalanceResponse}\n */\n _toProtobuf() {\n /** @type {proto.ITokenBalance[]} */\n const list = [];\n\n for (const [key, value] of this.tokens != null ? this.tokens : []) {\n list.push({\n tokenId: key._toProtobuf(),\n balance: value,\n decimals:\n this.tokenDecimals != null\n ? this.tokenDecimals.get(key)\n : null,\n });\n }\n\n return {\n balance: this.hbars.toTinybars(),\n tokenBalances: list,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this.toJSON());\n }\n\n /**\n * @returns {AccountBalanceJson}\n */\n toJSON() {\n const tokens = [];\n for (const [key, value] of this.tokens != null ? this.tokens : []) {\n const decimals =\n this.tokenDecimals != null ? this.tokenDecimals.get(key) : null;\n\n tokens.push({\n tokenId: key.toString(),\n balance: value.toString(),\n decimals: decimals != null ? decimals : 0,\n });\n }\n\n return {\n hbars: this.hbars.toString(),\n tokens,\n };\n }\n}\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport AccountId from \"./AccountId.js\";\nimport ContractId from \"../contract/ContractId.js\";\nimport AccountBalance from \"./AccountBalance.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetAccountBalanceQuery} proto.ICryptoGetAccountBalanceQuery\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetAccountBalanceResponse} proto.ICryptoGetAccountBalanceResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * Get the balance of a Hedera™ crypto-currency account.\n *\n * This returns only the balance, so its a smaller and faster reply\n * than AccountInfoQuery.\n *\n * This query is free.\n *\n * @augments {Query}\n */\nexport default class AccountBalanceQuery extends Query {\n /**\n * @param {object} [props]\n * @param {AccountId | string} [props.accountId]\n * @param {ContractId | string} [props.contractId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @type {?AccountId}\n * @private\n */\n this._accountId = null;\n\n /**\n * @type {?ContractId}\n * @private\n */\n this._contractId = null;\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n\n if (props.contractId != null) {\n this.setContractId(props.contractId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {AccountBalanceQuery}\n */\n static _fromProtobuf(query) {\n const balance = /** @type {proto.ICryptoGetAccountBalanceQuery} */ (\n query.cryptogetAccountBalance\n );\n\n return new AccountBalanceQuery({\n accountId:\n balance.accountID != null\n ? AccountId._fromProtobuf(balance.accountID)\n : undefined,\n contractId:\n balance.contractID != null\n ? ContractId._fromProtobuf(balance.contractID)\n : undefined,\n });\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * Set the account ID for which the balance is being requested.\n *\n * This is mutually exclusive with `setContractId`.\n *\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @returns {?ContractId}\n */\n get contractId() {\n return this._contractId;\n }\n\n /**\n * Set the contract ID for which the balance is being requested.\n *\n * This is mutually exclusive with `setAccountId`.\n *\n * @param {ContractId | string} contractId\n * @returns {this}\n */\n setContractId(contractId) {\n this._contractId =\n typeof contractId === \"string\"\n ? ContractId.fromString(contractId)\n : contractId.clone();\n\n return this;\n }\n\n /**\n * @protected\n * @override\n * @returns {boolean}\n */\n _isPaymentRequired() {\n return false;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n\n if (this._contractId != null) {\n this._contractId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.cryptoGetBalance(request);\n }\n\n /**\n * @override\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const cryptogetAccountBalance =\n /** @type {proto.ICryptoGetAccountBalanceResponse} */ (\n response.cryptogetAccountBalance\n );\n return /** @type {proto.IResponseHeader} */ (\n cryptogetAccountBalance.header\n );\n }\n\n /**\n * @override\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const cryptogetAccountBalance =\n /** @type {proto.ICryptoGetAccountBalanceResponse} */ (\n response.cryptogetAccountBalance\n );\n return Promise.resolve(\n AccountBalance._fromProtobuf(cryptogetAccountBalance)\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n cryptogetAccountBalance: {\n header,\n accountID:\n this._accountId != null\n ? this._accountId._toProtobuf()\n : null,\n contractID:\n this._contractId != null\n ? this._contractId._toProtobuf()\n : null,\n },\n };\n }\n}\n\nQUERY_REGISTRY.set(\n \"cryptogetAccountBalance\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n AccountBalanceQuery._fromProtobuf\n);\n","import AccountId from \"./AccountId.js\";\nimport LiveHash from \"./LiveHash.js\";\nimport Hbar from \"../Hbar.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport TokenRelationshipMap from \"./TokenRelationshipMap.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Duration from \"../Duration.js\";\nimport Key from \"../Key.js\";\nimport PublicKey from \"../PublicKey.js\";\nimport LedgerId from \"../LedgerId.js\";\nimport HbarAllowance from \"./HbarAllowance.js\";\nimport TokenAllowance from \"./TokenAllowance.js\";\nimport TokenNftAllowance from \"./TokenNftAllowance.js\";\n\n/**\n * Current information about an account, including the balance.\n */\nexport default class AccountInfo {\n /**\n * @private\n * @param {object} props\n * @param {AccountId} props.accountId\n * @param {?string} props.contractAccountId\n * @param {boolean} props.isDeleted\n * @param {?AccountId} props.proxyAccountId\n * @param {Hbar} props.proxyReceived\n * @param {Key} props.key\n * @param {Hbar} props.balance\n * @param {Hbar} props.sendRecordThreshold\n * @param {Hbar} props.receiveRecordThreshold\n * @param {boolean} props.isReceiverSignatureRequired\n * @param {Timestamp} props.expirationTime\n * @param {Duration} props.autoRenewPeriod\n * @param {LiveHash[]} props.liveHashes\n * @param {TokenRelationshipMap} props.tokenRelationships\n * @param {string} props.accountMemo\n * @param {Long} props.ownedNfts\n * @param {Long} props.maxAutomaticTokenAssociations\n * @param {PublicKey | null} props.aliasKey\n * @param {LedgerId | null} props.ledgerId\n * @param {HbarAllowance[]} props.hbarAllowances\n * @param {TokenAllowance[]} props.tokenAllowances\n * @param {TokenNftAllowance[]} props.nftAllowances\n */\n constructor(props) {\n /**\n * The account ID for which this information applies.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * The Contract Account ID comprising of both the contract instance and the cryptocurrency\n * account owned by the contract instance, in the format used by Solidity.\n *\n * @readonly\n */\n this.contractAccountId = props.contractAccountId;\n\n /**\n * If true, then this account has been deleted, it will disappear when it expires, and\n * all transactions for it will fail except the transaction to extend its expiration date.\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * The Account ID of the account to which this is proxy staked. If proxyAccountID is null,\n * or is an invalid account, or is an account that isn't a node, then this account is\n * automatically proxy staked to a node chosen by the network, but without earning payments.\n * If the proxyAccountID account refuses to accept proxy staking , or if it is not currently\n * running a node, then it will behave as if proxyAccountID was null.\n *\n * @readonly\n */\n this.proxyAccountId = props.proxyAccountId;\n\n /**\n * The total number of tinybars proxy staked to this account.\n *\n * @readonly\n */\n this.proxyReceived = props.proxyReceived;\n\n /**\n * The key for the account, which must sign in order to transfer out, or to modify the account\n * in any way other than extending its expiration date.\n *\n * @readonly\n */\n this.key = props.key;\n\n /**\n * The current balance of account.\n *\n * @readonly\n */\n this.balance = props.balance;\n\n /**\n * The threshold amount (in tinybars) for which an account record is created (and this account\n * charged for them) for any send/withdraw transaction.\n *\n * @readonly\n */\n this.sendRecordThreshold = props.sendRecordThreshold;\n\n /**\n * The threshold amount (in tinybars) for which an account record is created\n * (and this account charged for them) for any transaction above this amount.\n *\n * @readonly\n */\n this.receiveRecordThreshold = props.receiveRecordThreshold;\n\n /**\n * If true, no transaction can transfer to this account unless signed by this account's key.\n *\n * @readonly\n */\n this.isReceiverSignatureRequired = props.isReceiverSignatureRequired;\n\n /**\n * The TimeStamp time at which this account is set to expire.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * The duration for expiration time will extend every this many seconds. If there are\n * insufficient funds, then it extends as long as possible. If it is empty when it\n * expires, then it is deleted.\n *\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /** @readonly */\n this.liveHashes = props.liveHashes;\n\n /** @readonly */\n this.tokenRelationships = props.tokenRelationships;\n\n /** @readonly */\n this.accountMemo = props.accountMemo;\n\n /** @readonly */\n this.ownedNfts = props.ownedNfts;\n\n /** @readonly */\n this.maxAutomaticTokenAssociations =\n props.maxAutomaticTokenAssociations;\n\n this.aliasKey = props.aliasKey;\n\n this.ledgerId = props.ledgerId;\n\n this.hbarAllowances = props.hbarAllowances;\n\n this.tokenAllowances = props.tokenAllowances;\n\n this.nftAllowances = props.nftAllowances;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IAccountInfo} info\n * @returns {AccountInfo}\n */\n static _fromProtobuf(info) {\n let aliasKey =\n info.alias != null && info.alias.length > 0\n ? Key._fromProtobufKey(proto.Key.decode(info.alias))\n : null;\n\n if (!(aliasKey instanceof PublicKey)) {\n aliasKey = null;\n }\n\n return new AccountInfo({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.accountID)\n ),\n contractAccountId:\n info.contractAccountID != null ? info.contractAccountID : null,\n isDeleted: info.deleted != null ? info.deleted : false,\n key: Key._fromProtobufKey(/** @type {proto.IKey} */ (info.key)),\n balance: Hbar.fromTinybars(info.balance != null ? info.balance : 0),\n sendRecordThreshold: Hbar.fromTinybars(\n info.generateSendRecordThreshold != null\n ? info.generateSendRecordThreshold\n : 0\n ),\n receiveRecordThreshold: Hbar.fromTinybars(\n info.generateReceiveRecordThreshold != null\n ? info.generateReceiveRecordThreshold\n : 0\n ),\n isReceiverSignatureRequired:\n info.receiverSigRequired != null\n ? info.receiverSigRequired\n : false,\n expirationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n ),\n autoRenewPeriod:\n info.autoRenewPeriod != null\n ? new Duration(\n /** @type {Long} */ (info.autoRenewPeriod.seconds)\n )\n : new Duration(0),\n proxyAccountId:\n info.proxyAccountID != null &&\n Long.fromValue(\n /** @type {Long | number} */ (info.proxyAccountID.shardNum)\n ).toInt() !== 0 &&\n Long.fromValue(\n /** @type {Long | number} */ (info.proxyAccountID.realmNum)\n ).toInt() !== 0 &&\n Long.fromValue(\n /** @type {Long | number} */ (\n info.proxyAccountID.accountNum\n )\n ).toInt() !== 0\n ? AccountId._fromProtobuf(info.proxyAccountID)\n : null,\n proxyReceived: Hbar.fromTinybars(\n info.proxyReceived != null ? info.proxyReceived : 0\n ),\n liveHashes: (info.liveHashes != null ? info.liveHashes : []).map(\n (hash) => LiveHash._fromProtobuf(hash)\n ),\n tokenRelationships: TokenRelationshipMap._fromProtobuf(\n info.tokenRelationships != null ? info.tokenRelationships : []\n ),\n accountMemo: info.memo != null ? info.memo : \"\",\n ownedNfts: info.ownedNfts ? info.ownedNfts : Long.ZERO,\n maxAutomaticTokenAssociations: info.maxAutomaticTokenAssociations\n ? Long.fromNumber(info.maxAutomaticTokenAssociations)\n : Long.ZERO,\n aliasKey,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n\n hbarAllowances: (info.cryptoAllowances != null\n ? info.cryptoAllowances\n : []\n ).map((allowance) => HbarAllowance._fromProtobuf(allowance)),\n tokenAllowances: (info.tokenAllowances != null\n ? info.tokenAllowances\n : []\n ).map((allowance) => TokenAllowance._fromProtobuf(allowance)),\n nftAllowances: (info.nftAllowances != null\n ? info.nftAllowances\n : []\n ).map((allowance) => TokenNftAllowance._fromProtobuf(allowance)),\n });\n }\n\n /**\n * @returns {proto.IAccountInfo}\n */\n _toProtobuf() {\n return {\n accountID: this.accountId._toProtobuf(),\n contractAccountID: this.contractAccountId,\n deleted: this.isDeleted,\n proxyAccountID:\n this.proxyAccountId != null\n ? this.proxyAccountId._toProtobuf()\n : null,\n proxyReceived: this.proxyReceived.toTinybars(),\n key: this.key._toProtobufKey(),\n balance: this.balance.toTinybars(),\n generateSendRecordThreshold: this.sendRecordThreshold.toTinybars(),\n generateReceiveRecordThreshold:\n this.receiveRecordThreshold.toTinybars(),\n receiverSigRequired: this.isReceiverSignatureRequired,\n expirationTime: this.expirationTime._toProtobuf(),\n autoRenewPeriod: this.autoRenewPeriod._toProtobuf(),\n liveHashes: this.liveHashes.map((hash) => hash._toProtobuf()),\n tokenRelationships:\n this.tokenRelationships != null\n ? this.tokenRelationships._toProtobuf()\n : null,\n memo: this.accountMemo,\n ownedNfts: this.ownedNfts,\n maxAutomaticTokenAssociations:\n this.maxAutomaticTokenAssociations.toInt(),\n alias:\n this.aliasKey != null\n ? proto.Key.encode(this.aliasKey._toProtobufKey()).finish()\n : null,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {AccountInfo}\n */\n static fromBytes(bytes) {\n return AccountInfo._fromProtobuf(\n proto.CryptoGetInfoResponse.AccountInfo.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.CryptoGetInfoResponse.AccountInfo.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport TokenRelationship from \"./TokenRelationship.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenRelationship} proto.ITokenRelationship\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"long\")} Long\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenRelationshipMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n\n /**\n * @param {proto.ITokenRelationship[]} relationships\n * @returns {TokenRelationshipMap}\n */\n static _fromProtobuf(relationships) {\n const tokenRelationships = new TokenRelationshipMap();\n\n for (const relationship of relationships) {\n const tokenId = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (relationship.tokenId)\n );\n\n tokenRelationships._set(\n tokenId,\n TokenRelationship._fromProtobuf(relationship)\n );\n }\n\n return tokenRelationships;\n }\n\n /**\n * @returns {proto.ITokenRelationship[]}\n */\n _toProtobuf() {\n const list = [];\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, relationship] of this) {\n list.push(relationship._toProtobuf());\n }\n\n return list;\n }\n}\n","import AccountId from \"./AccountId.js\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IProxyStaker} proto.IProxyStaker\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n */\n\n/**\n * An account, and the amount that it sends or receives during a cryptocurrency transfer.\n */\nexport default class ProxyStaker {\n /**\n * @private\n * @param {object} props\n * @param {AccountId} props.accountId\n * @param {number | string | Long | BigNumber | Hbar} props.amount\n */\n constructor(props) {\n /**\n * The Account ID that sends or receives cryptocurrency.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * The amount of tinybars that the account sends(negative)\n * or receives(positive).\n *\n * @readonly\n */\n this.amount =\n props.amount instanceof Hbar\n ? props.amount\n : new Hbar(props.amount);\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IProxyStaker} transfer\n * @returns {ProxyStaker}\n */\n static _fromProtobuf(transfer) {\n return new ProxyStaker({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (transfer.accountID)\n ),\n amount: Hbar.fromTinybars(\n transfer.amount != null ? transfer.amount : 0\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.IProxyStaker}\n */\n _toProtobuf() {\n return {\n accountID: this.accountId._toProtobuf(),\n amount: this.amount.toTinybars(),\n };\n }\n}\n","import AccountId from \"../account/AccountId.js\";\nimport Endpoint from \"./Endpoint.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").INodeAddress} proto.INodeAddress\n */\n\n/**\n * @typedef {import(\"./Endpoint.js\").EndPointJson} EndpointJson\n * @typedef {import(\"long\").Long} Long\n */\n\n/**\n * @typedef {object} NodeAddressJson\n * @property {string | null} publicKey\n * @property {string | null} nodeId\n * @property {string | null} accountId\n * @property {string | null} certHash\n * @property {EndpointJson[] | null} addresses\n * @property {string | null} description\n * @property {string | null} stake\n */\n\nexport default class NodeAddress {\n /**\n * @param {object} props\n * @param {string} [props.publicKey]\n * @param {Long} [props.nodeId]\n * @param {AccountId | string} [props.accountId]\n * @param {Uint8Array} [props.certHash]\n * @param {Endpoint[]} [props.addresses]\n * @param {string} [props.description]\n * @param {Long} [props.stake]\n */\n constructor(props = {}) {\n /**\n * @type {string | null}\n */\n this._publicKey = null;\n\n if (props.publicKey != null) {\n this.setPublicKey(props.publicKey);\n }\n\n /**\n * @type {Long |null}\n */\n this._nodeId = null;\n\n if (props.nodeId != null) {\n this.setNodeId(props.nodeId);\n }\n\n /**\n * @type {AccountId | null}\n */\n this._accountId = null;\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n\n /**\n * @type {Uint8Array | null}\n */\n this._certHash = null;\n\n if (props.certHash != null) {\n this.setCertHash(props.certHash);\n }\n\n /**\n * @type {Endpoint[]}\n */\n this._addresses = [];\n\n if (props.addresses != null) {\n this.setAddresses(props.addresses);\n }\n\n /**\n * @type {string | null}\n */\n this._description = null;\n\n if (props.description != null) {\n this.setDescription(props.description);\n }\n\n /**\n * @type {Long | null}\n */\n this._stake = null;\n\n if (props.stake != null) {\n this.setStake(props.stake);\n }\n }\n\n /**\n * @returns {?string}\n */\n get publicKey() {\n return this._publicKey;\n }\n\n /**\n * @param {string} publicKey\n * @returns {this}\n */\n setPublicKey(publicKey) {\n this._publicKey = publicKey;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get nodeId() {\n return this._nodeId;\n }\n\n /**\n * @param {Long} nodeId\n * @returns {this}\n */\n setNodeId(nodeId) {\n this._nodeId = nodeId;\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n return this;\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get certHash() {\n return this._certHash;\n }\n\n /**\n * @param {Uint8Array} certHash\n * @returns {this}\n */\n setCertHash(certHash) {\n this._certHash = certHash;\n return this;\n }\n\n /**\n * @returns {Endpoint[]}\n */\n get addresses() {\n return this._addresses;\n }\n\n /**\n * @param {Endpoint[]} addresses\n * @returns {this}\n */\n setAddresses(addresses) {\n this._addresses = addresses;\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get description() {\n return this._description;\n }\n\n /**\n * @param {string} description\n * @returns {this}\n */\n setDescription(description) {\n this._description = description;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get stake() {\n return this._stake;\n }\n\n /**\n * @param {Long} stake\n * @returns {this}\n */\n setStake(stake) {\n this._stake = stake;\n return this;\n }\n\n /**\n * @internal\n * @param {proto.INodeAddress} nodeAddress\n * @returns {NodeAddress}\n */\n static _fromProtobuf(nodeAddress) {\n return new NodeAddress({\n publicKey:\n nodeAddress.RSA_PubKey != null\n ? nodeAddress.RSA_PubKey\n : undefined,\n nodeId: nodeAddress.nodeId != null ? nodeAddress.nodeId : undefined,\n accountId:\n nodeAddress.nodeAccountId != null\n ? AccountId._fromProtobuf(nodeAddress.nodeAccountId)\n : undefined,\n certHash:\n nodeAddress.nodeCertHash != null\n ? nodeAddress.nodeCertHash\n : undefined,\n addresses:\n nodeAddress.serviceEndpoint != null\n ? nodeAddress.serviceEndpoint.map((address) =>\n Endpoint._fromProtobuf(address)\n )\n : undefined,\n description:\n nodeAddress.description != null\n ? nodeAddress.description\n : undefined,\n stake: nodeAddress.stake != null ? nodeAddress.stake : undefined,\n });\n }\n\n /**\n * @returns {proto.INodeAddress}\n */\n _toProtobuf() {\n return {\n RSA_PubKey: this._publicKey,\n nodeId: this._nodeId,\n nodeAccountId:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n nodeCertHash: this._certHash,\n serviceEndpoint: this._addresses.map((address) =>\n address._toProtobuf()\n ),\n description: this._description,\n stake: this._stake,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this.toJSON());\n }\n\n /**\n * @returns {NodeAddressJson}\n */\n toJSON() {\n return {\n publicKey: this._publicKey,\n nodeId: this._nodeId != null ? this._nodeId.toString() : null,\n accountId:\n this._accountId != null ? this._accountId.toString() : null,\n certHash:\n this._certHash != null ? utf8.decode(this._certHash) : null,\n addresses: this._addresses.map((address) => address.toJSON()),\n description: this._description,\n stake: this._stake != null ? this._stake.toString() : null,\n };\n }\n}\n","import NodeAddress from \"./NodeAddress.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").INodeAddressBook} proto.INodeAddressBook\n */\n\n/**\n * @typedef {import(\"./NodeAddress.js\").NodeAddressJson} NodeAddressJson\n */\n\n/**\n * @typedef {object} NodeAddressBookJson\n * @property {NodeAddressJson[]} nodeAddresses\n */\n\nexport default class NodeAddressBook {\n /**\n * @param {object} props\n * @param {NodeAddress[]} [props.nodeAddresses]\n */\n constructor(props = {}) {\n /**\n * @type {NodeAddress[]}\n */\n this._nodeAddresses = [];\n\n if (props.nodeAddresses != null) {\n this.setNodeAddresses(props.nodeAddresses);\n }\n }\n\n /**\n * @returns {NodeAddress[]}\n */\n get nodeAddresses() {\n return this._nodeAddresses;\n }\n\n /**\n * @param {NodeAddress[]} nodeAddresses\n * @returns {this}\n */\n setNodeAddresses(nodeAddresses) {\n this._nodeAddresses = nodeAddresses;\n return this;\n }\n\n /**\n * @internal\n * @param {proto.INodeAddressBook} nodeAddressBook\n * @returns {NodeAddressBook}\n */\n static _fromProtobuf(nodeAddressBook) {\n return new NodeAddressBook({\n nodeAddresses:\n nodeAddressBook.nodeAddress != null\n ? nodeAddressBook.nodeAddress.map((nodeAddress) =>\n NodeAddress._fromProtobuf(nodeAddress)\n )\n : undefined,\n });\n }\n\n /**\n * @returns {proto.INodeAddressBook}\n */\n _toProtobuf() {\n return {\n nodeAddress: this._nodeAddresses.map((nodeAddress) =>\n nodeAddress._toProtobuf()\n ),\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this.toJSON());\n }\n\n /**\n * @returns {NodeAddressBookJson}\n */\n toJSON() {\n return {\n nodeAddresses: this._nodeAddresses.map((nodeAddress) =>\n nodeAddress.toJSON()\n ),\n };\n }\n}\n","import { keccak256 } from \"../cryptography/keccak.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @enum {number}\n */\nexport const ArgumentType = {\n uint8: 0,\n int8: 1,\n uint16: 2,\n int16: 3,\n uint32: 4,\n int32: 5,\n uint64: 6,\n int64: 7,\n uint256: 8,\n int256: 9,\n string: 10,\n bool: 11,\n bytes: 12,\n bytes32: 13,\n address: 14,\n func: 15,\n};\n\n/**\n * @typedef {object} Argument\n * @property {boolean} dynamic\n * @property {Uint8Array} value\n */\n\n/**\n * @typedef {object} SolidityType\n * @property {ArgumentType} ty\n * @property {boolean} array\n */\n\nexport default class ContractFunctionSelector {\n /**\n * @param {string} [name]\n */\n constructor(name) {\n /**\n * @type {?string}\n */\n this.name = null;\n\n /**\n * @type {string}\n */\n this._params = \"\";\n\n /**\n * @type {SolidityType[]}\n */\n this._paramTypes = [];\n\n if (name != null) {\n this._name = name;\n }\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addString() {\n return this._addParam({ ty: ArgumentType.string, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addStringArray() {\n return this._addParam({ ty: ArgumentType.string, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytes() {\n return this._addParam({ ty: ArgumentType.bytes, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytes32() {\n return this._addParam({ ty: ArgumentType.bytes32, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytesArray() {\n return this._addParam({ ty: ArgumentType.bytes, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytes32Array() {\n return this._addParam({ ty: ArgumentType.bytes32, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt8() {\n return this._addParam({ ty: ArgumentType.int8, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt32() {\n return this._addParam({ ty: ArgumentType.int32, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt64() {\n return this._addParam({ ty: ArgumentType.int64, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt256() {\n return this._addParam({ ty: ArgumentType.int256, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt8Array() {\n return this._addParam({ ty: ArgumentType.int8, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt32Array() {\n return this._addParam({ ty: ArgumentType.int32, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt64Array() {\n return this._addParam({ ty: ArgumentType.int64, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt256Array() {\n return this._addParam({ ty: ArgumentType.int256, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint8() {\n return this._addParam({ ty: ArgumentType.uint8, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint32() {\n return this._addParam({ ty: ArgumentType.uint32, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint64() {\n return this._addParam({ ty: ArgumentType.uint64, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint256() {\n return this._addParam({ ty: ArgumentType.uint256, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint8Array() {\n return this._addParam({ ty: ArgumentType.uint8, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint32Array() {\n return this._addParam({ ty: ArgumentType.uint32, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint64Array() {\n return this._addParam({ ty: ArgumentType.uint64, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint256Array() {\n return this._addParam({ ty: ArgumentType.uint256, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBool() {\n return this._addParam({ ty: ArgumentType.bool, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addAddress() {\n return this._addParam({ ty: ArgumentType.address, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addAddressArray() {\n return this._addParam({ ty: ArgumentType.address, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addFunction() {\n return this._addParam({ ty: ArgumentType.func, array: false });\n }\n\n /**\n * @param {SolidityType} ty\n * @returns {ContractFunctionSelector}\n */\n _addParam(ty) {\n if (this._paramTypes.length > 0) {\n this._params += \",\";\n }\n\n this._params += solidityTypeToString(ty);\n this._paramTypes.push(ty);\n\n return this;\n }\n\n /**\n * @param {string} [name]\n * @returns {Uint8Array}\n */\n _build(name) {\n if (name != null) {\n this._name = name;\n } else if (this._name == null) {\n throw new Error(\"`name` required for ContractFunctionSelector\");\n }\n\n const func = hex.encode(utf8.encode(this.toString()));\n return hex.decode(keccak256(`0x${func}`)).slice(0, 4);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this._name != null ? this._name.toString() : \"\"}(${\n this._params\n })`;\n }\n}\n\n/**\n * @param {SolidityType} ty\n * @returns {string}\n */\nfunction solidityTypeToString(ty) {\n let s = \"\";\n switch (ty.ty) {\n case ArgumentType.uint8:\n s = \"uint8\";\n break;\n case ArgumentType.int8:\n s = \"int8\";\n break;\n case ArgumentType.uint16:\n s = \"uint16\";\n break;\n case ArgumentType.int16:\n s = \"int16\";\n break;\n case ArgumentType.uint32:\n s = \"uint32\";\n break;\n case ArgumentType.int32:\n s = \"int32\";\n break;\n case ArgumentType.uint64:\n s = \"uint64\";\n break;\n case ArgumentType.int64:\n s = \"int64\";\n break;\n case ArgumentType.uint256:\n s = \"uint256\";\n break;\n case ArgumentType.int256:\n s = \"int256\";\n break;\n case ArgumentType.string:\n s = \"string\";\n break;\n case ArgumentType.bool:\n s = \"bool\";\n break;\n case ArgumentType.bytes:\n s = \"bytes\";\n break;\n case ArgumentType.bytes32:\n s = \"bytes32\";\n break;\n case ArgumentType.address:\n s = \"address\";\n break;\n case ArgumentType.func:\n s = \"function\";\n break;\n default:\n s = \"\";\n break;\n }\n\n if (ty.array) {\n s += \"[]\";\n }\n\n return s;\n}\n","import ContractId from \"./ContractId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Duration from \"../Duration.js\";\nimport Hbar from \"../Hbar.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport TokenRelationshipMap from \"../account/TokenRelationshipMap.js\";\nimport Key from \"../Key.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * Response when the client sends the node CryptoGetInfoQuery.\n */\nexport default class ContractInfo {\n /**\n * @private\n * @param {object} props\n * @param {ContractId} props.contractId\n * @param {AccountId} props.accountId\n * @param {string} props.contractAccountId\n * @param {?Key} props.adminKey\n * @param {Timestamp} props.expirationTime\n * @param {Duration} props.autoRenewPeriod\n * @param {Long} props.storage\n * @param {string} props.contractMemo\n * @param {Hbar} props.balance\n * @param {boolean} props.isDeleted\n * @param {TokenRelationshipMap} props.tokenRelationships\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * ID of the contract instance, in the format used in transactions.\n *\n * @readonly\n */\n this.contractId = props.contractId;\n\n /**\n * ID of the cryptocurrency account owned by the contract instance,\n * in the format used in transactions.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * ID of both the contract instance and the cryptocurrency account owned by the contract\n * instance, in the format used by Solidity.\n *\n * @readonly\n */\n this.contractAccountId = props.contractAccountId;\n\n /**\n * The state of the instance and its fields can be modified arbitrarily if this key signs a\n * transaction to modify it. If this is null, then such modifications are not possible,\n * and there is no administrator that can override the normal operation of this smart\n * contract instance. Note that if it is created with no admin keys, then there is no\n * administrator to authorize changing the admin keys, so there can never be any admin keys\n * for that instance.\n *\n * @readonly\n */\n this.adminKey = props.adminKey != null ? props.adminKey : null;\n\n /**\n * The current time at which this contract instance (and its account) is set to expire.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * The expiration time will extend every this many seconds. If there are insufficient funds,\n * then it extends as long as possible. If the account is empty when it expires,\n * then it is deleted.\n *\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /**\n * Number of bytes of storage being used by this instance (which affects the cost to\n * extend the expiration time).\n *\n * @readonly\n */\n this.storage = props.storage;\n\n /**\n * The memo associated with the contract (max 100 bytes).\n *\n * @readonly\n */\n this.contractMemo = props.contractMemo;\n\n /**\n * The current balance of the contract.\n *\n * @readonly\n */\n this.balance = props.balance;\n\n /**\n * Whether the contract has been deleted\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * The tokens associated to the contract\n *\n * @readonly\n */\n this.tokenRelationships = props.tokenRelationships;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IContractInfo} info\n * @returns {ContractInfo}\n */\n static _fromProtobuf(info) {\n const autoRenewPeriod = /** @type {Long | number} */ (\n /** @type {proto.IDuration} */ (info.autoRenewPeriod).seconds\n );\n\n return new ContractInfo({\n contractId: ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (info.contractID)\n ),\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.accountID)\n ),\n contractAccountId:\n info.contractAccountID != null ? info.contractAccountID : \"\",\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n expirationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n ),\n autoRenewPeriod: new Duration(autoRenewPeriod),\n storage:\n info.storage != null\n ? info.storage instanceof Long\n ? info.storage\n : Long.fromValue(info.storage)\n : Long.ZERO,\n contractMemo: info.memo != null ? info.memo : \"\",\n balance: Hbar.fromTinybars(info.balance != null ? info.balance : 0),\n isDeleted: /** @type {boolean} */ (info.deleted),\n tokenRelationships: TokenRelationshipMap._fromProtobuf(\n info.tokenRelationships != null ? info.tokenRelationships : []\n ),\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IContractInfo}\n */\n _toProtobuf() {\n return {\n contractID: this.contractId._toProtobuf(),\n accountID: this.accountId._toProtobuf(),\n contractAccountID: this.contractAccountId,\n adminKey:\n this.adminKey != null ? this.adminKey._toProtobufKey() : null,\n expirationTime: this.expirationTime._toProtobuf(),\n autoRenewPeriod:\n this.autoRenewPeriod != null\n ? this.autoRenewPeriod._toProtobuf()\n : null,\n storage: this.storage,\n memo: this.contractMemo,\n balance: this.balance.toTinybars(),\n deleted: this.isDeleted,\n tokenRelationships:\n this.tokenRelationships != null\n ? this.tokenRelationships._toProtobuf()\n : null,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {ContractInfo}\n */\n static fromBytes(bytes) {\n return ContractInfo._fromProtobuf(\n proto.ContractGetInfoResponse.ContractInfo.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ContractGetInfoResponse.ContractInfo.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import FileId from \"./FileId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport KeyList from \"../KeyList.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * Response when the client sends the node CryptoGetInfoQuery.\n */\nexport default class FileInfo {\n /**\n * @private\n * @param {object} props\n * @param {FileId} props.fileId\n * @param {Long} props.size\n * @param {Timestamp} props.expirationTime\n * @param {boolean} props.isDeleted\n * @param {KeyList} props.keys\n * @param {string} props.fileMemo\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * The ID of the file for which information is requested.\n *\n * @readonly\n */\n this.fileId = props.fileId;\n\n /**\n * Number of bytes in contents.\n *\n * @readonly\n */\n this.size = props.size;\n\n /**\n * The current time at which this account is set to expire.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * True if deleted but not yet expired.\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * One of these keys must sign in order to delete the file.\n * All of these keys must sign in order to update the file.\n *\n * @readonly\n */\n this.keys = props.keys;\n\n this.fileMemo = props.fileMemo;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IFileInfo} info\n * @returns {FileInfo}\n */\n static _fromProtobuf(info) {\n const size = /** @type {Long | number} */ (info.size);\n\n return new FileInfo({\n fileId: FileId._fromProtobuf(\n /** @type {proto.IFileID} */ (info.fileID)\n ),\n size: size instanceof Long ? size : Long.fromValue(size),\n expirationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n ),\n isDeleted: /** @type {boolean} */ (info.deleted),\n keys:\n info.keys != null\n ? KeyList.__fromProtobufKeyList(info.keys)\n : new KeyList(),\n fileMemo: info.memo != null ? info.memo : \"\",\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IFileInfo}\n */\n _toProtobuf() {\n return {\n fileID: this.fileId._toProtobuf(),\n size: this.size,\n expirationTime: this.expirationTime._toProtobuf(),\n deleted: this.isDeleted,\n keys: this.keys._toProtobufKey().keyList,\n memo: this.fileMemo,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {FileInfo}\n */\n static fromBytes(bytes) {\n return FileInfo._fromProtobuf(\n proto.FileGetInfoResponse.FileInfo.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.FileGetInfoResponse.FileInfo.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import SemanticVersion from \"./SemanticVersion.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * Response when the client sends the node CryptoGetVersionInfoQuery.\n */\nexport default class NetworkVersionInfo {\n /**\n * @private\n * @param {object} props\n * @param {SemanticVersion} props.protobufVersion\n * @param {SemanticVersion} props.servicesVesion\n */\n constructor(props) {\n /**\n * The account ID for which this information applies.\n *\n * @readonly\n */\n this.protobufVersion = props.protobufVersion;\n\n /**\n * The account ID for which this information applies.\n *\n * @readonly\n */\n this.servicesVesion = props.servicesVesion;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.INetworkGetVersionInfoResponse} info\n * @returns {NetworkVersionInfo}\n */\n static _fromProtobuf(info) {\n return new NetworkVersionInfo({\n protobufVersion: SemanticVersion._fromProtobuf(\n /** @type {proto.ISemanticVersion} */\n (info.hapiProtoVersion)\n ),\n servicesVesion: SemanticVersion._fromProtobuf(\n /** @type {proto.ISemanticVersion} */\n (info.hederaServicesVersion)\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.INetworkGetVersionInfoResponse}\n */\n _toProtobuf() {\n return {\n hapiProtoVersion: this.protobufVersion._toProtobuf(),\n hederaServicesVersion: this.servicesVesion._toProtobuf(),\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {NetworkVersionInfo}\n */\n static fromBytes(bytes) {\n return NetworkVersionInfo._fromProtobuf(\n proto.NetworkGetVersionInfoResponse.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.NetworkGetVersionInfoResponse.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import * as proto from \"@hashgraph/proto\";\n\nexport default class SemanticVersion {\n /**\n * @private\n * @param {object} props\n * @param {number} props.major\n * @param {number} props.minor\n * @param {number} props.patch\n */\n constructor(props) {\n /** @readonly */\n this.major = props.major;\n /** @readonly */\n this.minor = props.minor;\n /** @readonly */\n this.patch = props.patch;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ISemanticVersion} version\n * @returns {SemanticVersion}\n */\n static _fromProtobuf(version) {\n return new SemanticVersion({\n major: /** @type {number} */ (version.major),\n minor: /** @type {number} */ (version.minor),\n patch: /** @type {number} */ (version.patch),\n });\n }\n\n /**\n * @internal\n * @returns {proto.ISemanticVersion}\n */\n _toProtobuf() {\n return {\n major: this.major,\n minor: this.minor,\n patch: this.patch,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {SemanticVersion}\n */\n static fromBytes(bytes) {\n return SemanticVersion._fromProtobuf(\n proto.SemanticVersion.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.SemanticVersion.encode(this._toProtobuf()).finish();\n }\n}\n","import ScheduleId from \"./ScheduleId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Transaction from \"../transaction/Transaction.js\";\nimport {\n TransactionList as ProtoTransactionList,\n TransactionBody as ProtoTransactionBody,\n SignedTransaction as ProtoSignedTransaction,\n SchedulableTransactionBody as ProtoSchedulableTransactionBody,\n} from \"@hashgraph/proto\";\nimport TransactionId from \"../transaction/TransactionId.js\";\nimport Key from \"../Key.js\";\nimport KeyList from \"../KeyList.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IScheduleInfo} proto.IScheduleInfo\n * @typedef {import(\"@hashgraph/proto\").IScheduleID} proto.IScheduleID\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").IScheduleID} proto.IScheduledID\n * @typedef {import(\"@hashgraph/proto\").IFileID} proto.IFileID\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n * @typedef {import(\"@hashgraph/proto\").ISchedulableTransactionBody} proto.ISchedulableTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n */\n\n/**\n * Response when the client sends the node ScheduleGetInfoQuery.\n */\nexport default class ScheduleInfo {\n /**\n * @private\n * @param {object} props\n * @param {ScheduleId} props.scheduleId;\n * @param {?AccountId} props.creatorAccountID;\n * @param {?AccountId} props.payerAccountID;\n * @param {?proto.ISchedulableTransactionBody} props.schedulableTransactionBody;\n * @param {?Key} props.adminKey\n * @param {?KeyList} props.signers;\n * @param {?string} props.scheduleMemo;\n * @param {?Timestamp} props.expirationTime;\n * @param {?Timestamp} props.executed;\n * @param {?Timestamp} props.deleted;\n * @param {?TransactionId} props.scheduledTransactionId;\n */\n constructor(props) {\n /**\n *\n * @readonly\n */\n this.scheduleId = props.scheduleId;\n\n /**\n *\n * @readonly\n */\n this.creatorAccountId = props.creatorAccountID;\n\n /**\n *\n * @readonly\n */\n this.payerAccountId = props.payerAccountID;\n\n /**\n *\n * @readonly\n */\n this.schedulableTransactionBody = props.schedulableTransactionBody;\n\n /**\n *\n * @readonly\n */\n this.signers = props.signers;\n\n /**\n *\n * @readonly\n */\n this.scheduleMemo = props.scheduleMemo;\n\n /**\n *\n * @readonly\n */\n this.adminKey = props.adminKey != null ? props.adminKey : null;\n\n /**\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n *\n * @readonly\n */\n this.executed = props.executed;\n\n /**\n *\n * @readonly\n */\n this.deleted = props.deleted;\n\n this.scheduledTransactionId = props.scheduledTransactionId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IScheduleInfo} info\n * @returns {ScheduleInfo}\n */\n static _fromProtobuf(info) {\n return new ScheduleInfo({\n scheduleId: ScheduleId._fromProtobuf(\n /** @type {proto.IScheduleID} */ (info.scheduleID)\n ),\n creatorAccountID:\n info.creatorAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n info.creatorAccountID\n )\n )\n : null,\n payerAccountID:\n info.payerAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.payerAccountID)\n )\n : null,\n schedulableTransactionBody:\n info.scheduledTransactionBody != null\n ? info.scheduledTransactionBody\n : null,\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n signers:\n info.signers != null\n ? KeyList.__fromProtobufKeyList(info.signers)\n : null,\n scheduleMemo: info.memo != null ? info.memo : null,\n expirationTime:\n info.expirationTime != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n )\n : null,\n executed:\n info.executionTime != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.executionTime)\n )\n : null,\n deleted:\n info.deletionTime != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.deletionTime)\n )\n : null,\n scheduledTransactionId:\n info.scheduledTransactionID != null\n ? TransactionId._fromProtobuf(info.scheduledTransactionID)\n : null,\n });\n }\n\n /**\n * @returns {proto.IScheduleInfo}\n */\n _toProtobuf() {\n return {\n scheduleID:\n this.scheduleId != null ? this.scheduleId._toProtobuf() : null,\n creatorAccountID:\n this.creatorAccountId != null\n ? this.creatorAccountId._toProtobuf()\n : null,\n payerAccountID:\n this.payerAccountId != null\n ? this.payerAccountId._toProtobuf()\n : null,\n scheduledTransactionBody:\n this.schedulableTransactionBody != null\n ? this.schedulableTransactionBody\n : null,\n adminKey:\n this.adminKey != null ? this.adminKey._toProtobufKey() : null,\n signers:\n this.signers != null\n ? this.signers._toProtobufKey().keyList\n : null,\n memo: this.scheduleMemo != null ? this.scheduleMemo : \"\",\n expirationTime:\n this.expirationTime != null\n ? this.expirationTime._toProtobuf()\n : null,\n scheduledTransactionID:\n this.scheduledTransactionId != null\n ? this.scheduledTransactionId._toProtobuf()\n : null,\n };\n }\n\n /**\n * @returns {Transaction}\n */\n get scheduledTransaction() {\n if (this.schedulableTransactionBody == null) {\n throw new Error(\"Scheduled transaction body is empty\");\n }\n\n const scheduled = new ProtoSchedulableTransactionBody(\n this.schedulableTransactionBody\n );\n const data =\n /** @type {NonNullable} */ (\n scheduled.data\n );\n\n return Transaction.fromBytes(\n ProtoTransactionList.encode({\n transactionList: [\n {\n signedTransactionBytes: ProtoSignedTransaction.encode({\n bodyBytes: ProtoTransactionBody.encode({\n transactionFee:\n this.schedulableTransactionBody\n .transactionFee,\n memo: this.schedulableTransactionBody.memo,\n [data]: scheduled[data],\n }).finish(),\n }).finish(),\n },\n ],\n }).finish()\n );\n }\n}\n","import TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Duration from \"../Duration.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport TokenType from \"./TokenType.js\";\nimport TokenSupplyType from \"./TokenSupplyType.js\";\nimport CustomFixedFee from \"./CustomFixedFee.js\";\nimport CustomFractionalFee from \"./CustomFractionalFee.js\";\nimport CustomRoyaltyFee from \"./CustomRoyaltyFee.js\";\nimport Key from \"../Key.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * @typedef {import(\"./CustomFee.js\").default} CustomFee\n */\n\n/**\n * Response when the client sends the node TokenGetInfoQuery.\n */\nexport default class TokenInfo {\n /**\n * @private\n * @param {object} props\n * @param {TokenId} props.tokenId;\n * @param {string} props.name;\n * @param {string} props.symbol;\n * @param {number} props.decimals;\n * @param {Long} props.totalSupply;\n * @param {AccountId | null} props.treasuryAccountId;\n * @param {Key | null} props.adminKey;\n * @param {Key | null} props.kycKey;\n * @param {Key | null} props.freezeKey;\n * @param {Key | null} props.pauseKey;\n * @param {Key | null} props.wipeKey;\n * @param {Key | null} props.supplyKey;\n * @param {Key | null} props.feeScheduleKey;\n * @param {boolean | null} props.defaultFreezeStatus;\n * @param {boolean | null} props.defaultKycStatus;\n * @param {boolean | null} props.pauseStatus;\n * @param {boolean} props.isDeleted;\n * @param {AccountId | null} props.autoRenewAccountId;\n * @param {Duration | null} props.autoRenewPeriod;\n * @param {Timestamp | null} props.expirationTime;\n * @param {string} props.tokenMemo;\n * @param {CustomFee[]} props.customFees;\n * @param {TokenType | null} props.tokenType;\n * @param {TokenSupplyType | null} props.supplyType;\n * @param {Long | null} props.maxSupply;\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * ID of the token instance\n *\n * @readonly\n */\n this.tokenId = props.tokenId;\n\n /**\n * The name of the token. It is a string of ASCII only characters\n *\n * @readonly\n */\n this.name = props.name;\n\n /**\n * The symbol of the token. It is a UTF-8 capitalized alphabetical string\n *\n * @readonly\n */\n this.symbol = props.symbol;\n\n /**\n * The number of decimal places a token is divisible by\n *\n * @readonly\n */\n this.decimals = props.decimals;\n\n /**\n * The total supply of tokens that are currently in circulation\n *\n * @readonly\n */\n this.totalSupply = props.totalSupply;\n\n /**\n * The ID of the account which is set as treasuryAccountId\n *\n * @readonly\n */\n this.treasuryAccountId = props.treasuryAccountId;\n\n /**\n * The key which can perform update/delete operations on the token. If empty, the token can be perceived as\n * immutable (not being able to be updated/deleted)\n *\n * @readonly\n */\n this.adminKey = props.adminKey;\n\n /**\n * The key which can grant or revoke KYC of an account for the token's transactions. If empty, KYC is not required,\n * and KYC grant or revoke operations are not possible.\n *\n * @readonly\n */\n this.kycKey = props.kycKey;\n\n /**\n * The key which can freeze or unfreeze an account for token transactions. If empty, freezing is not possible\n *\n * @readonly\n */\n this.freezeKey = props.freezeKey;\n\n /**\n * The Key which can pause and unpause the Token.\n *\n * @readonly\n */\n this.pauseKey = props.pauseKey;\n\n /**\n * The key which can wipe token balance of an account. If empty, wipe is not possible\n *\n * @readonly\n */\n this.wipeKey = props.wipeKey;\n\n /**\n * The key which can change the supply of a token. The key is used to sign Token Mint/Burn operations\n *\n * @readonly\n */\n this.supplyKey = props.supplyKey;\n\n this.feeScheduleKey = props.feeScheduleKey;\n\n /**\n * The default Freeze status (not applicable = null, frozen = false, or unfrozen = true) of Hedera accounts relative to this token.\n * FreezeNotApplicable is returned if Token Freeze Key is empty. Frozen is returned if Token Freeze Key is set and\n * defaultFreeze is set to true. Unfrozen is returned if Token Freeze Key is set and defaultFreeze is set to false\n * FreezeNotApplicable = null;\n * Frozen = true;\n * Unfrozen = false;\n *\n * @readonly\n */\n this.defaultFreezeStatus = props.defaultFreezeStatus;\n\n /**\n * The default KYC status (KycNotApplicable or Revoked) of Hedera accounts relative to this token. KycNotApplicable\n * is returned if KYC key is not set, otherwise Revoked\n * KycNotApplicable = null;\n * Granted = true;\n * Revoked = false;\n *\n * @readonly\n */\n this.defaultKycStatus = props.defaultKycStatus;\n\n /**\n * The default pause status of Hedera accounts relative to this token.\n * PauseNotApplicable is returned if pauseKey is not set\n * PauseNotApplicable = null;\n * Paused = true;\n * Unpaused = false;\n *\n * @readonly\n */\n this.pauseStatus = props.pauseStatus;\n\n /**\n * Specifies whether the token was deleted or not\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * An account which will be automatically charged to renew the token's expiration, at autoRenewPeriod interval\n *\n * @readonly\n */\n this.autoRenewAccountId = props.autoRenewAccountId;\n\n /**\n * The interval at which the auto-renew account will be charged to extend the token's expiry\n *\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /**\n * The epoch second at which the token expire: will; if an auto-renew account and period are specified,\n * this is coerced to the current epoch second plus the autoRenewPeriod\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * The memo associated with the token.\n *\n * @readonly\n */\n this.tokenMemo = props.tokenMemo;\n\n this.customFees = props.customFees;\n\n this.tokenType = props.tokenType;\n\n this.supplyType = props.supplyType;\n\n this.maxSupply = props.maxSupply;\n\n this.ledgerId = props.ledgerId;\n }\n\n /**\n * @internal\n * @param {proto.ITokenInfo} info\n * @returns {TokenInfo}\n */\n static _fromProtobuf(info) {\n const defaultFreezeStatus = /** @type {proto.TokenFreezeStatus} */ (\n info.defaultFreezeStatus\n );\n const defaultKycStatus = /** @type {proto.TokenKycStatus} */ (\n info.defaultKycStatus\n );\n const pauseStatus = /**@type {proto.TokenPauseStatus} */ (\n info.pauseStatus\n );\n\n const autoRenewAccountId =\n info.autoRenewAccount != null\n ? AccountId._fromProtobuf(info.autoRenewAccount)\n : new AccountId(0);\n\n return new TokenInfo({\n tokenId: TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (info.tokenId)\n ),\n name: /** @type {string} */ (info.name),\n symbol: /** @type {string} */ (info.symbol),\n decimals: /** @type {number} */ (info.decimals),\n totalSupply: Long.fromValue(/** @type {Long} */ (info.totalSupply)),\n treasuryAccountId:\n info.treasury != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.treasury)\n )\n : null,\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n kycKey:\n info.kycKey != null ? Key._fromProtobufKey(info.kycKey) : null,\n freezeKey:\n info.freezeKey != null\n ? Key._fromProtobufKey(info.freezeKey)\n : null,\n pauseKey:\n info.pauseKey != null\n ? Key._fromProtobufKey(info.pauseKey)\n : null,\n wipeKey:\n info.wipeKey != null\n ? Key._fromProtobufKey(info.wipeKey)\n : null,\n supplyKey:\n info.supplyKey != null\n ? Key._fromProtobufKey(info.supplyKey)\n : null,\n feeScheduleKey:\n info.feeScheduleKey != null\n ? Key._fromProtobufKey(info.feeScheduleKey)\n : null,\n defaultFreezeStatus:\n defaultFreezeStatus === 0 ? null : defaultFreezeStatus == 1,\n defaultKycStatus:\n defaultKycStatus === 0 ? null : defaultKycStatus == 1,\n pauseStatus: pauseStatus === 0 ? null : pauseStatus == 1,\n isDeleted: /** @type {boolean} */ (info.deleted),\n autoRenewAccountId: !(\n autoRenewAccountId.shard.toInt() == 0 &&\n autoRenewAccountId.realm.toInt() == 0 &&\n autoRenewAccountId.num.toInt() == 0\n )\n ? autoRenewAccountId\n : null,\n autoRenewPeriod:\n info.autoRenewPeriod != null\n ? Duration._fromProtobuf(\n /** @type {proto.IDuration} */ (info.autoRenewPeriod)\n )\n : null,\n expirationTime:\n info.expiry != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expiry)\n )\n : null,\n tokenMemo: info.memo != null ? info.memo : \"\",\n customFees:\n info.customFees != null\n ? info.customFees.map((fee) => {\n if (fee.fixedFee != null) {\n return CustomFixedFee._fromProtobuf(fee);\n } else if (fee.fractionalFee != null) {\n return CustomFractionalFee._fromProtobuf(fee);\n } else {\n return CustomRoyaltyFee._fromProtobuf(fee);\n }\n })\n : [],\n tokenType:\n info.tokenType != null\n ? TokenType._fromCode(info.tokenType)\n : null,\n supplyType:\n info.supplyType != null\n ? TokenSupplyType._fromCode(info.supplyType)\n : null,\n maxSupply: info.maxSupply != null ? info.maxSupply : null,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @returns {proto.ITokenInfo}\n */\n _toProtobuf() {\n return {\n tokenId: this.tokenId._toProtobuf(),\n name: this.name,\n symbol: this.symbol,\n decimals: this.decimals,\n totalSupply: this.totalSupply,\n treasury:\n this.treasuryAccountId != null\n ? this.treasuryAccountId._toProtobuf()\n : null,\n adminKey:\n this.adminKey != null ? this.adminKey._toProtobufKey() : null,\n kycKey: this.kycKey != null ? this.kycKey._toProtobufKey() : null,\n freezeKey:\n this.freezeKey != null ? this.freezeKey._toProtobufKey() : null,\n pauseKey:\n this.pauseKey != null ? this.pauseKey._toProtobufKey() : null,\n wipeKey:\n this.wipeKey != null ? this.wipeKey._toProtobufKey() : null,\n supplyKey:\n this.supplyKey != null ? this.supplyKey._toProtobufKey() : null,\n feeScheduleKey:\n this.feeScheduleKey != null\n ? this.feeScheduleKey._toProtobufKey()\n : null,\n defaultFreezeStatus:\n this.defaultFreezeStatus == null\n ? 0\n : this.defaultFreezeStatus\n ? 1\n : 2,\n defaultKycStatus:\n this.defaultKycStatus == null\n ? 0\n : this.defaultKycStatus\n ? 1\n : 2,\n pauseStatus:\n this.pauseStatus == null ? 0 : this.pauseStatus ? 1 : 2,\n deleted: this.isDeleted,\n autoRenewAccount:\n this.autoRenewAccountId != null\n ? this.autoRenewAccountId._toProtobuf()\n : undefined,\n autoRenewPeriod:\n this.autoRenewPeriod != null\n ? this.autoRenewPeriod._toProtobuf()\n : null,\n expiry:\n this.expirationTime != null\n ? this.expirationTime._toProtobuf()\n : null,\n memo: this.tokenMemo,\n customFees: this.customFees.map((fee) => fee._toProtobuf()),\n tokenType: this.tokenType != null ? this.tokenType._code : null,\n supplyType: this.supplyType != null ? this.supplyType._code : null,\n maxSupply: this.maxSupply,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TokenInfo}\n */\n static fromBytes(bytes) {\n return TokenInfo._fromProtobuf(proto.TokenInfo.decode(bytes));\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TokenInfo.encode(this._toProtobuf()).finish();\n }\n}\n","import NftId from \"./NftId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").TokenFreezeStatus} proto.TokenFreezeStatus\n * @typedef {import(\"@hashgraph/proto\").TokenKycStatus} proto.TokenKycStatus\n * @typedef {import(\"@hashgraph/proto\").TokenPauseStatus} proto.TokenPauseStatus\n * @typedef {import(\"@hashgraph/proto\").ITokenNftInfo} proto.ITokenNftInfo\n * @typedef {import(\"@hashgraph/proto\").INftID} proto.INftID\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n */\n\nexport default class TokenNftInfo {\n /**\n * @private\n * @param {object} props\n * @param {NftId} props.nftId\n * @param {AccountId} props.accountId\n * @param {Timestamp} props.creationTime\n * @param {Uint8Array | null} props.metadata\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * ID of the nft instance\n *\n * @readonly\n */\n this.nftId = props.nftId;\n\n /**\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * @readonly\n */\n this.creationTime = props.creationTime;\n\n /**\n * @readonly\n */\n this.metadata = props.metadata;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ITokenNftInfo} info\n * @returns {TokenNftInfo}\n */\n static _fromProtobuf(info) {\n return new TokenNftInfo({\n nftId: NftId._fromProtobuf(\n /** @type {proto.INftID} */ (info.nftID)\n ),\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.accountID)\n ),\n creationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.creationTime)\n ),\n metadata: info.metadata !== undefined ? info.metadata : null,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @returns {proto.ITokenNftInfo}\n */\n _toProtobuf() {\n return {\n nftID: this.nftId._toProtobuf(),\n accountID: this.accountId._toProtobuf(),\n creationTime: this.creationTime._toProtobuf(),\n metadata: this.metadata,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @typedef {object} TokenNftInfoJson\n * @property {string} nftId\n * @property {string} accountId\n * @property {string} creationTime\n * @property {string | null} metadata\n * @property {string | null} ledgerId\n * @returns {TokenNftInfoJson}\n */\n toJson() {\n return {\n nftId: this.nftId.toString(),\n accountId: this.accountId.toString(),\n creationTime: this.creationTime.toString(),\n metadata: this.metadata != null ? hex.encode(this.metadata) : null,\n ledgerId: this.ledgerId != null ? this.ledgerId.toString() : null,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this.toJson());\n }\n}\n","import TopicId from \"./TopicId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport Duration from \"../Duration.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Key from \"../Key.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * Current state of a topic.\n */\nexport default class TopicInfo {\n /**\n * @private\n * @param {object} props\n * @param {TopicId} props.topicId\n * @param {string} props.topicMemo\n * @param {Uint8Array} props.runningHash\n * @param {Long} props.sequenceNumber\n * @param {?Timestamp} props.expirationTime\n * @param {?Key} props.adminKey\n * @param {?Key} props.submitKey\n * @param {?Duration} props.autoRenewPeriod\n * @param {?AccountId} props.autoRenewAccountId\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * The ID of the topic for which information is requested.\n *\n * @readonly\n */\n this.topicId = props.topicId;\n\n /**\n * Short publicly visible memo about the topic. No guarantee of uniqueness.\n *\n * @readonly\n */\n this.topicMemo = props.topicMemo;\n\n /**\n * SHA-384 running hash of (previousRunningHash, topicId, consensusTimestamp, sequenceNumber, message).\n *\n * @readonly\n */\n this.runningHash = props.runningHash;\n\n /**\n * Sequence number (starting at 1 for the first submitMessage) of messages on the topic.\n *\n * @readonly\n */\n this.sequenceNumber = props.sequenceNumber;\n\n /**\n * Effective consensus timestamp at (and after) which submitMessage calls will no longer succeed on the topic.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * Access control for update/delete of the topic. Null if there is no key.\n *\n * @readonly\n */\n this.adminKey = props.adminKey;\n\n /**\n * Access control for ConsensusService.submitMessage. Null if there is no key.\n *\n * @readonly\n */\n this.submitKey = props.submitKey;\n\n /**\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /**\n * @readonly\n */\n this.autoRenewAccountId = props.autoRenewAccountId;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IConsensusGetTopicInfoResponse} infoResponse\n * @returns {TopicInfo}\n */\n static _fromProtobuf(infoResponse) {\n const info = /** @type {proto.IConsensusTopicInfo} */ (\n infoResponse.topicInfo\n );\n\n return new TopicInfo({\n topicId: TopicId._fromProtobuf(\n /** @type {proto.ITopicID} */ (infoResponse.topicID)\n ),\n topicMemo: info.memo != null ? info.memo : \"\",\n runningHash:\n info.runningHash != null ? info.runningHash : new Uint8Array(),\n sequenceNumber:\n info.sequenceNumber != null\n ? info.sequenceNumber instanceof Long\n ? info.sequenceNumber\n : Long.fromValue(info.sequenceNumber)\n : Long.ZERO,\n expirationTime:\n info.expirationTime != null\n ? Timestamp._fromProtobuf(info.expirationTime)\n : null,\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n submitKey:\n info.submitKey != null\n ? Key._fromProtobufKey(info.submitKey)\n : null,\n autoRenewPeriod:\n info.autoRenewPeriod != null\n ? new Duration(\n /** @type {Long} */ (info.autoRenewPeriod.seconds)\n )\n : null,\n autoRenewAccountId:\n info.autoRenewAccount != null\n ? AccountId._fromProtobuf(info.autoRenewAccount)\n : null,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IConsensusGetTopicInfoResponse}\n */\n _toProtobuf() {\n return {\n topicID: this.topicId._toProtobuf(),\n topicInfo: {\n memo: this.topicMemo,\n runningHash: this.runningHash,\n sequenceNumber: this.sequenceNumber,\n expirationTime:\n this.expirationTime != null\n ? this.expirationTime._toProtobuf()\n : null,\n adminKey:\n this.adminKey != null\n ? this.adminKey._toProtobufKey()\n : null,\n submitKey:\n this.submitKey != null\n ? this.submitKey._toProtobufKey()\n : null,\n autoRenewPeriod:\n this.autoRenewPeriod != null\n ? this.autoRenewPeriod._toProtobuf()\n : null,\n autoRenewAccount:\n this.autoRenewAccountId != null\n ? this.autoRenewAccountId._toProtobuf()\n : null,\n },\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TopicInfo}\n */\n static fromBytes(bytes) {\n return TopicInfo._fromProtobuf({\n topicInfo: proto.ConsensusTopicInfo.decode(bytes),\n });\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ConsensusTopicInfo.encode(\n /** @type {proto.IConsensusTopicInfo} */ (\n this._toProtobuf().topicInfo\n )\n ).finish();\n }\n}\n","import Timestamp from \"../Timestamp.js\";\nimport TopicMessageChunk from \"./TopicMessageChunk.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IConsensusTopicResponse} proto.IConsensusTopicResponse\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n */\n\nexport default class TopicMessage {\n /**\n * @private\n * @param {object} props\n * @param {Timestamp} props.consensusTimestamp\n * @param {Uint8Array} props.contents\n * @param {Uint8Array} props.runningHash\n * @param {Long} props.sequenceNumber\n * @param {TopicMessageChunk[]} props.chunks\n */\n constructor(props) {\n /** @readonly */\n this.consensusTimestamp = props.consensusTimestamp;\n /** @readonly */\n this.contents = props.contents;\n /** @readonly */\n this.runningHash = props.runningHash;\n /** @readonly */\n this.sequenceNumber = props.sequenceNumber;\n /** @readonly */\n this.chunks = props.chunks;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IConsensusTopicResponse} response\n * @returns {TopicMessage}\n */\n static _ofSingle(response) {\n return new TopicMessage({\n consensusTimestamp: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (response.consensusTimestamp)\n ),\n contents:\n response.message != null ? response.message : new Uint8Array(),\n runningHash:\n response.runningHash != null\n ? response.runningHash\n : new Uint8Array(),\n sequenceNumber:\n response.sequenceNumber != null\n ? response.sequenceNumber instanceof Long\n ? response.sequenceNumber\n : Long.fromNumber(response.sequenceNumber)\n : Long.ZERO,\n chunks: [TopicMessageChunk._fromProtobuf(response)],\n });\n }\n\n /**\n * @internal\n * @param {proto.IConsensusTopicResponse[]} responses\n * @returns {TopicMessage}\n */\n static _ofMany(responses) {\n const length = responses.length;\n\n const last = /** @type {proto.IConsensusTopicResponse} */ (\n responses[length - 1]\n );\n\n const consensusTimestamp = Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (last.consensusTimestamp)\n );\n\n const runningHash = /** @type {Uint8Array} */ (last.runningHash);\n\n /**\n * @type {Long}\n */\n const sequenceNumber =\n last.sequenceNumber != null\n ? last.sequenceNumber instanceof Long\n ? last.sequenceNumber\n : Long.fromValue(last.sequenceNumber)\n : Long.ZERO;\n\n responses.sort((a, b) =>\n (a != null\n ? a.chunkInfo != null\n ? a.chunkInfo.number != null\n ? a.chunkInfo.number\n : 0\n : 0\n : 0) <\n (b != null\n ? b.chunkInfo != null\n ? b.chunkInfo.number != null\n ? b.chunkInfo.number\n : 0\n : 0\n : 0)\n ? -1\n : 1\n );\n\n /**\n * @type {TopicMessageChunk[]}\n */\n const chunks = responses.map(\n /**\n * @type {proto.IConsensusTopicResponse}\n */ (m) => TopicMessageChunk._fromProtobuf(m)\n );\n\n const size = chunks\n .map((chunk) => chunk.contents.length)\n .reduce((sum, current) => sum + current, 0);\n\n const contents = new Uint8Array(size);\n let offset = 0;\n\n responses.forEach((value) => {\n contents.set(/** @type {Uint8Array} */ (value.message), offset);\n offset += /** @type {Uint8Array} */ (value.message).length;\n });\n\n return new TopicMessage({\n consensusTimestamp,\n contents,\n runningHash,\n sequenceNumber,\n chunks,\n });\n }\n}\n","import Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IConsensusTopicResponse} proto.IConsensusTopicResponse\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n */\n\nexport default class TopicMessageChunk {\n /**\n * @private\n * @param {object} props\n * @param {Timestamp} props.consensusTimestamp\n * @param {Uint8Array} props.contents\n * @param {Uint8Array} props.runningHash\n * @param {Long} props.sequenceNumber\n */\n constructor(props) {\n /** @readonly */\n this.consensusTimestamp = props.consensusTimestamp;\n /** @readonly */\n this.contents = props.contents;\n /** @readonly */\n this.runningHash = props.runningHash;\n /** @readonly */\n this.sequenceNumber = props.sequenceNumber;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IConsensusTopicResponse} response\n * @returns {TopicMessageChunk}\n */\n static _fromProtobuf(response) {\n return new TopicMessageChunk({\n consensusTimestamp: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (response.consensusTimestamp)\n ),\n contents:\n response.message != null ? response.message : new Uint8Array(),\n runningHash:\n response.runningHash != null\n ? response.runningHash\n : new Uint8Array(),\n sequenceNumber:\n response.sequenceNumber != null\n ? response.sequenceNumber instanceof Long\n ? response.sequenceNumber\n : Long.fromValue(response.sequenceNumber)\n : Long.ZERO,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IConsensusTopicResponse}\n */\n _toProtobuf() {\n return {\n consensusTimestamp: this.consensusTimestamp._toProtobuf(),\n message: this.contents,\n runningHash: this.runningHash,\n sequenceNumber: this.sequenceNumber,\n };\n }\n}\n","import ManagedNodeAddress from \"./ManagedNodeAddress.js\";\n\n/**\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n * @typedef {import(\"./channel/Channel.js\").default} Channel\n * @typedef {import(\"./channel/MirrorChannel.js\").default} MirrorChannel\n * @typedef {import(\"./address_book/NodeAddress.js\").default} NodeAddress\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @typedef {object} NewNode\n * @property {string | ManagedNodeAddress} address\n * @property {(address: string, cert?: string) => ChannelT} channelInitFunction\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @typedef {object} CloneNode\n * @property {ManagedNode} node\n * @property {ManagedNodeAddress} address\n */\n\n/**\n * @abstract\n * @template {Channel | MirrorChannel} ChannelT\n */\nexport default class ManagedNode {\n /**\n * @param {object} props\n * @param {NewNode=} [props.newNode]\n * @param {CloneNode=} [props.cloneNode]\n */\n constructor(props = {}) {\n if (props.newNode != null) {\n this._address =\n typeof props.newNode.address === \"string\"\n ? ManagedNodeAddress.fromString(props.newNode.address)\n : props.newNode.address;\n\n /** @type {string=} */\n this._cert = undefined;\n\n /** @type {ChannelT | null} */\n this._channel = null;\n\n /** @type {(address: string, cert?: string) => ChannelT} */\n this._channelInitFunction = props.newNode.channelInitFunction;\n\n this._currentBackoff = 250;\n this._lastUsed = Date.now();\n this._backoffUntil = Date.now();\n this._useCount = 0;\n this._attempts = 0;\n this._minBackoff = 250;\n this._maxBackoff = 8000;\n } else if (props.cloneNode != null) {\n /** @type {ManagedNodeAddress} */\n this._address = props.cloneNode.address;\n\n /** @type {string=} */\n this._cert = props.cloneNode.node._cert;\n\n /** @type {ChannelT | null} */\n this._channel = props.cloneNode.node._channel;\n\n /** @type {(address: string, cert?: string) => ChannelT} */\n this._channelInitFunction =\n props.cloneNode.node._channelInitFunction;\n\n /** @type {number} */\n this._currentBackoff = props.cloneNode.node._currentBackoff;\n\n /** @type {number} */\n this._lastUsed = props.cloneNode.node._lastUsed;\n\n /** @type {number} */\n this._backoffUntil = props.cloneNode.node._backoffUntil;\n\n /** @type {number} */\n this._useCount = props.cloneNode.node._useCount;\n\n /** @type {number} */\n this._attempts = props.cloneNode.node._attempts;\n\n /** @type {number} */\n this._minBackoff = props.cloneNode.node._minBackoff;\n\n /** @type {number} */\n this._maxBackoff = props.cloneNode.node._minBackoff;\n } else {\n throw new Error(\n `failed to create ManagedNode: ${JSON.stringify(props)}`\n );\n }\n }\n\n /**\n * @abstract\n * @returns {string}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n getKey() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @returns {ManagedNode}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n toInsecure() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @returns {ManagedNode}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n toSecure() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @param {string} ledgerId\n * @returns {this}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setCert(ledgerId) {\n return this;\n }\n\n /**\n * @returns {ManagedNodeAddress}\n */\n get address() {\n return this._address;\n }\n\n /**\n * @returns {number}\n */\n get attempts() {\n return this._attempts;\n }\n\n /**\n * @returns {number}\n */\n get minBackoff() {\n return this._minBackoff;\n }\n\n /**\n * @param {number} minBackoff\n * @returns {this}\n */\n setMinBackoff(minBackoff) {\n if (this._currentBackoff <= minBackoff) {\n this._currentBackoff = minBackoff;\n }\n\n this._minBackoff = minBackoff;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get maxBackoff() {\n return this._maxBackoff;\n }\n\n /**\n * @param {number} maxBackoff\n * @returns {this}\n */\n setmaxBackoff(maxBackoff) {\n if (this._currentBackoff <= maxBackoff) {\n this._currentBackoff = maxBackoff;\n }\n\n this._maxBackoff = maxBackoff;\n return this;\n }\n\n getChannel() {\n this._useCount++;\n this.__lastUsed = Date.now();\n\n if (this._channel != null) {\n return this._channel;\n }\n\n this._channel = this._channelInitFunction(\n this.address.toString(),\n this._cert\n );\n return this._channel;\n }\n\n /**\n * Determines if this node is healthy by checking if this node hasn't been\n * in use for a the required `_currentBackoff` period. Since this looks at `this._lastUsed`\n * and that value is only set in the `wait()` method, any node that has not\n * returned a bad gRPC status will always be considered healthy.\n *\n * @returns {boolean}\n */\n isHealthy() {\n return this._backoffUntil <= Date.now();\n }\n\n increaseDelay() {\n this._currentBackoff = Math.min(\n this._currentBackoff * 2,\n this._maxBackoff\n );\n this._backoffUntil = Date.now() + this._currentBackoff;\n }\n\n decreaseDelay() {\n this._currentBackoff = Math.max(\n this._currentBackoff / 2,\n this._minBackoff\n );\n }\n\n /**\n * This is only ever called if the node itself is down.\n * A node returning a transaction with a bad status code does not indicate\n * the node is down, and hence this method will not be called.\n *\n * @returns {Promise}\n */\n wait() {\n const _currentBackoff = this._backoffUntil - this._lastUsed;\n return new Promise((resolve) => setTimeout(resolve, _currentBackoff));\n }\n\n /**\n * @param {ManagedNode<*>} node\n * @returns {number}\n */\n compare(node) {\n if (this.isHealthy() && node.isHealthy()) {\n if (this._useCount < node._useCount) {\n return -1;\n } else if (this._useCount > node._useCount) {\n return 1;\n } else {\n if (this._lastUsed < node._lastUsed) {\n return -1;\n } else if (this._lastUsed > node._lastUsed) {\n return 1;\n } else {\n return 0;\n }\n }\n } else if (this.isHealthy() && !node.isHealthy()) {\n return -1;\n } else if (!this.isHealthy() && node.isHealthy()) {\n return 1;\n } else {\n if (this._useCount < node._useCount) {\n return -1;\n } else if (this._useCount > node._useCount) {\n return 1;\n } else {\n if (this._lastUsed < node._lastUsed) {\n return -1;\n } else if (this._lastUsed > node._lastUsed) {\n return 1;\n } else {\n return 0;\n }\n }\n }\n }\n\n close() {\n if (this._channel != null) {\n this._channel.close();\n }\n\n this._channel = null;\n }\n}\n","import LedgerId from \"../LedgerId.js\";\n// import {\n// PREVIEWNET_ADDRESS_BOOK,\n// TESTNET_ADDRESS_BOOK,\n// MAINNET_ADDRESS_BOOK,\n// } from \"../address_book/AddressBooks.js\";\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../channel/MirrorChannel.js\").default} MirrorChannel\n * @typedef {import(\"../Node.js\").default} Node\n * @typedef {import(\"../MirrorNode.js\").default} MirrorNode\n * @typedef {import(\"../address_book/NodeAddressBook.js\").default} NodeAddressBook\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @typedef {import(\"../ManagedNode.js\").default} ManagedNode\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @template {ManagedNode} NetworkNodeT\n * @template {{ toString: () => string }} KeyT\n */\nexport default class MangedNetwork {\n /**\n * @param {(address: string) => ChannelT} createNetworkChannel\n */\n constructor(createNetworkChannel) {\n /**\n * Map of node account ID (as a string)\n * to the node URL.\n *\n * @internal\n * @type {Map}\n */\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n this._network = new Map();\n\n /**\n * List of node account IDs.\n *\n * @protected\n * @type {NetworkNodeT[]}\n */\n this._nodes = [];\n\n /** @type {(address: string, cert?: string) => ChannelT} */\n this._createNetworkChannel = createNetworkChannel;\n\n /** @type {LedgerId | null} */\n this._ledgerId = null;\n\n /** @type {number} */\n this._minBackoff = 250;\n\n /** @type {number} */\n this._maxNodeAttempts = -1;\n\n this._transportSecurity = false;\n }\n\n /**\n * @returns {boolean}\n */\n isTransportSecurity() {\n return this._transportSecurity;\n }\n\n /**\n * @param {boolean} transportSecurity\n * @returns {this}\n */\n setTransportSecurity(transportSecurity) {\n if (this._transportSecurity != transportSecurity) {\n this._network.clear();\n\n for (let i = 0; i < this._nodes.length; i++) {\n let node = this._nodes[i];\n node.close();\n\n node = /** @type {NetworkNodeT} */ (\n transportSecurity\n ? node\n .toSecure()\n .setCert(\n this._ledgerId != null\n ? this._ledgerId._toStringForChecksum()\n : \"\"\n )\n : node.toInsecure()\n );\n this._nodes[i] = node;\n\n const nodes =\n this._network.get(node.getKey()) != null\n ? /** @type {NetworkNodeT[]} */ (\n this._network.get(node.getKey())\n )\n : [];\n nodes.push(node);\n this._network.set(node.getKey(), nodes);\n }\n }\n\n this._transportSecurity = transportSecurity;\n return this;\n }\n\n /**\n * @deprecated\n * @param {string} networkName\n * @returns {this}\n */\n setNetworkName(networkName) {\n console.warn(\"Deprecated: Use `setLedgerId` instead\");\n return this.setLedgerId(networkName);\n }\n\n /**\n * @deprecated\n * @returns {string | null}\n */\n get networkName() {\n console.warn(\"Deprecated: Use `ledgerId` instead\");\n return this.ledgerId != null ? this.ledgerId.toString() : null;\n }\n\n /**\n * @param {string|LedgerId} ledgerId\n * @returns {this}\n */\n setLedgerId(ledgerId) {\n this._ledgerId =\n typeof ledgerId === \"string\"\n ? LedgerId.fromString(ledgerId)\n : ledgerId;\n return this;\n }\n\n /**\n * @returns {LedgerId | null}\n */\n get ledgerId() {\n return this._ledgerId != null ? this._ledgerId : null;\n }\n\n /**\n * @abstract\n * @param {[string, KeyT]} entry\n * @returns {NetworkNodeT}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _createNodeFromNetworkEntry(entry) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @param {Map} network\n * @returns {number[]}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _getNodesToRemove(network) {\n throw new Error(\"not implemented\");\n }\n\n _removeDeadNodes() {\n if (this._maxNodeAttempts > 0) {\n for (let i = this._nodes.length - 1; i >= 0; i--) {\n const node = this._nodes[i];\n\n if (node._attempts < this._maxNodeAttempts) {\n continue;\n }\n\n this._closeNode(i);\n }\n }\n }\n\n /**\n * @param {number} count\n * @returns {NetworkNodeT[]}\n */\n _getNumberOfMostHealthyNodes(count) {\n this._removeDeadNodes();\n this._nodes.sort((a, b) => a.compare(b));\n\n for (const [, value] of this._network) {\n // eslint-disable-next-line ie11/no-loop-func\n value.sort((a, b) => a.compare(b));\n }\n\n /** @type {NetworkNodeT[]} */\n const nodes = [];\n const keys = new Set();\n\n for (const node of this._nodes) {\n if (keys.size >= count) {\n break;\n }\n\n if (!keys.has(node.getKey())) {\n nodes.push(node);\n }\n }\n\n return nodes;\n }\n\n /**\n * @param {number} i\n */\n _closeNode(i) {\n const node = this._nodes[i];\n\n node.close();\n this._removeNodeFromNetwork(node);\n this._nodes.splice(i, 1);\n }\n\n /**\n * @param {NetworkNodeT} node\n */\n _removeNodeFromNetwork(node) {\n const network = /** @type {NetworkNodeT[]} */ (\n this._network.get(node.getKey())\n );\n\n for (let j = 0; j < network.length; j++) {\n if (network[j] === node) {\n network.splice(j, 1);\n break;\n }\n }\n\n if (network.length === 0) {\n this._network.delete(node.getKey());\n }\n }\n\n /**\n * @param {Map} network\n * @returns {this}\n */\n _setNetwork(network) {\n // Remove nodes that are not in the new network\n for (const i of this._getNodesToRemove(network)) {\n this._closeNode(i);\n }\n\n // Add new nodes\n for (const [key, value] of network) {\n const node = this._createNodeFromNetworkEntry([key, value]);\n\n this._nodes.push(node);\n\n const network = this._network.has(node.getKey())\n ? /** @type {NetworkNodeT[]} */ (\n this._network.get(node.getKey())\n )\n : [];\n network.push(node);\n this._network.set(node.getKey(), network);\n }\n\n shuffle(this._nodes);\n for (const [, value] of this._network) {\n shuffle(value);\n }\n\n this._ledgerId = null;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get maxNodeAttempts() {\n return this._maxNodeAttempts;\n }\n\n /**\n * @param {number} maxNodeAttempts\n * @returns {this}\n */\n setMaxNodeAttempts(maxNodeAttempts) {\n this._maxNodeAttempts = maxNodeAttempts;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get minBackoff() {\n return this._minBackoff;\n }\n\n /**\n * @param {number} minBackoff\n * @returns {this}\n */\n setMinBackoff(minBackoff) {\n this._minBackoff = minBackoff;\n for (const node of this._nodes) {\n node.setMinBackoff(minBackoff);\n }\n return this;\n }\n\n /**\n * @param {KeyT} key\n * @returns {NetworkNodeT}\n */\n getNode(key) {\n return /** @type {NetworkNodeT[]} */ (\n this._network.get(key.toString())\n )[0];\n }\n\n close() {\n for (const node of this._nodes) {\n node.close();\n }\n\n this._network.clear();\n this._nodes = [];\n }\n}\n\n/**\n * https://stackoverflow.com/questions/2450954/how-to-randomize-shuffle-a-javascript-array\n *\n * @template T\n * @param {Array} array\n */\nfunction shuffle(array) {\n var currentIndex = array.length,\n temporaryValue,\n randomIndex;\n\n // While there remain elements to shuffle...\n while (0 !== currentIndex) {\n // Pick a remaining element...\n randomIndex = Math.floor(Math.random() * currentIndex);\n currentIndex -= 1;\n\n // And swap it with the current element.\n temporaryValue = array[currentIndex];\n array[currentIndex] = array[randomIndex];\n array[randomIndex] = temporaryValue;\n }\n}\n","var BN = require('bn.js');\nvar stripHexPrefix = require('strip-hex-prefix');\n\n/**\n * Returns a BN object, converts a number value to a BN\n * @param {String|Number|Object} `arg` input a string number, hex string number, number, BigNumber or BN object\n * @return {Object} `output` BN object of the number\n * @throws if the argument is not an array, object that isn't a bignumber, not a string number or number\n */\nmodule.exports = function numberToBN(arg) {\n if (typeof arg === 'string' || typeof arg === 'number') {\n var multiplier = new BN(1); // eslint-disable-line\n var formattedString = String(arg).toLowerCase().trim();\n var isHexPrefixed = formattedString.substr(0, 2) === '0x' || formattedString.substr(0, 3) === '-0x';\n var stringArg = stripHexPrefix(formattedString); // eslint-disable-line\n if (stringArg.substr(0, 1) === '-') {\n stringArg = stripHexPrefix(stringArg.slice(1));\n multiplier = new BN(-1, 10);\n }\n stringArg = stringArg === '' ? '0' : stringArg;\n\n if ((!stringArg.match(/^-?[0-9]+$/) && stringArg.match(/^[0-9A-Fa-f]+$/))\n || stringArg.match(/^[a-fA-F]+$/)\n || (isHexPrefixed === true && stringArg.match(/^[0-9A-Fa-f]+$/))) {\n return new BN(stringArg, 16).mul(multiplier);\n }\n\n if ((stringArg.match(/^-?[0-9]+$/) || stringArg === '') && isHexPrefixed === false) {\n return new BN(stringArg, 10).mul(multiplier);\n }\n } else if (typeof arg === 'object' && arg.toString && (!arg.pop && !arg.push)) {\n if (arg.toString(10).match(/^-?[0-9]+$/) && (arg.mul || arg.dividedToIntegerBy)) {\n return new BN(arg.toString(10), 10);\n }\n }\n\n throw new Error('[number-to-bn] while converting number ' + JSON.stringify(arg) + ' to BN.js instance, error: invalid number value. Value must be an integer, hex string, BN or BigNumber instance. Note, decimals are not supported.');\n}\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n */\r\n/**\r\n * @file utils.js\r\n * @author Fabian Vogelsteller \r\n * @date 2017\r\n */\r\nvar BN = require('bn.js');\r\nvar numberToBN = require('number-to-bn');\r\nvar utf8 = require('utf8');\r\nvar ethereumjsUtil = require('ethereumjs-util');\r\nvar ethereumBloomFilters = require('ethereum-bloom-filters');\r\n/**\r\n * Returns true if object is BN, otherwise false\r\n *\r\n * @method isBN\r\n * @param {Object} object\r\n * @return {Boolean}\r\n */\r\nvar isBN = function (object) {\r\n return BN.isBN(object);\r\n};\r\n/**\r\n * Returns true if object is BigNumber, otherwise false\r\n *\r\n * @method isBigNumber\r\n * @param {Object} object\r\n * @return {Boolean}\r\n */\r\nvar isBigNumber = function (object) {\r\n return object && object.constructor && object.constructor.name === 'BigNumber';\r\n};\r\n/**\r\n * Takes an input and transforms it into an BN\r\n *\r\n * @method toBN\r\n * @param {Number|String|BN} number, string, HEX string or BN\r\n * @return {BN} BN\r\n */\r\nvar toBN = function (number) {\r\n try {\r\n return numberToBN.apply(null, arguments);\r\n }\r\n catch (e) {\r\n throw new Error(e + ' Given value: \"' + number + '\"');\r\n }\r\n};\r\n/**\r\n * Takes and input transforms it into BN and if it is negative value, into two's complement\r\n *\r\n * @method toTwosComplement\r\n * @param {Number|String|BN} number\r\n * @return {String}\r\n */\r\nvar toTwosComplement = function (number) {\r\n return '0x' + toBN(number).toTwos(256).toString(16, 64);\r\n};\r\n/**\r\n * Checks if the given string is an Hedera address\r\n *\r\n * @method isAddress\r\n * @param {String} address\r\n * @return {Boolean}\r\n */\r\nvar isAddress = function (address) {\r\n // check if it has the basic requirements of an address\r\n return /^0\\.0\\.\\d+$/.test(address);\r\n};\r\n/**\r\n * Checks if the given string is a checksummed Hedera address\r\n *\r\n * @method checkAddressChecksumHedera\r\n * @param {String} checksum\r\n * @param {String} address\r\n * @param {NodeClient} client\r\n * @return {Boolean}\r\n */\r\nvar checkAddressChecksum = function (checksum, address, client) {\r\n return checksum === getChecksumAddress(address, client);\r\n};\r\n/**\r\n * Should be called to pad string to expected length\r\n *\r\n * @method leftPad\r\n * @param {String} string to be padded\r\n * @param {Number} chars that result string should have\r\n * @param {String} sign, by default 0\r\n * @returns {String} right aligned string\r\n */\r\nvar leftPad = function (string, chars, sign) {\r\n var hasPrefix = /^0x/i.test(string) || typeof string === 'number';\r\n string = string.toString(16).replace(/^0x/i, '');\r\n var padding = (chars - string.length + 1 >= 0) ? chars - string.length + 1 : 0;\r\n return (hasPrefix ? '0x' : '') + new Array(padding).join(sign ? sign : \"0\") + string;\r\n};\r\n/**\r\n * Should be called to pad string to expected length\r\n *\r\n * @method rightPad\r\n * @param {String} string to be padded\r\n * @param {Number} chars that result string should have\r\n * @param {String} sign, by default 0\r\n * @returns {String} right aligned string\r\n */\r\nvar rightPad = function (string, chars, sign) {\r\n var hasPrefix = /^0x/i.test(string) || typeof string === 'number';\r\n string = string.toString(16).replace(/^0x/i, '');\r\n var padding = (chars - string.length + 1 >= 0) ? chars - string.length + 1 : 0;\r\n return (hasPrefix ? '0x' : '') + string + (new Array(padding).join(sign ? sign : \"0\"));\r\n};\r\n/**\r\n * Should be called to get hex representation (prefixed by 0x) of utf8 string\r\n *\r\n * @method utf8ToHex\r\n * @param {String} str\r\n * @returns {String} hex representation of input string\r\n */\r\nvar utf8ToHex = function (str) {\r\n str = utf8.encode(str);\r\n var hex = \"\";\r\n // remove \\u0000 padding from either side\r\n str = str.replace(/^(?:\\u0000)*/, '');\r\n str = str.split(\"\").reverse().join(\"\");\r\n str = str.replace(/^(?:\\u0000)*/, '');\r\n str = str.split(\"\").reverse().join(\"\");\r\n for (var i = 0; i < str.length; i++) {\r\n var code = str.charCodeAt(i);\r\n // if (code !== 0) {\r\n var n = code.toString(16);\r\n hex += n.length < 2 ? '0' + n : n;\r\n // }\r\n }\r\n return \"0x\" + hex;\r\n};\r\n/**\r\n * Should be called to get utf8 from it's hex representation\r\n *\r\n * @method hexToUtf8\r\n * @param {String} hex\r\n * @returns {String} ascii string representation of hex value\r\n */\r\nvar hexToUtf8 = function (hex) {\r\n if (!isHexStrict(hex))\r\n throw new Error('The parameter \"' + hex + '\" must be a valid HEX string.');\r\n var str = \"\";\r\n var code = 0;\r\n hex = hex.replace(/^0x/i, '');\r\n // remove 00 padding from either side\r\n hex = hex.replace(/^(?:00)*/, '');\r\n hex = hex.split(\"\").reverse().join(\"\");\r\n hex = hex.replace(/^(?:00)*/, '');\r\n hex = hex.split(\"\").reverse().join(\"\");\r\n var l = hex.length;\r\n for (var i = 0; i < l; i += 2) {\r\n code = parseInt(hex.substr(i, 2), 16);\r\n // if (code !== 0) {\r\n str += String.fromCharCode(code);\r\n // }\r\n }\r\n return utf8.decode(str);\r\n};\r\n/**\r\n * Converts value to it's number representation\r\n *\r\n * @method hexToNumber\r\n * @param {String|Number|BN} value\r\n * @return {String}\r\n */\r\nvar hexToNumber = function (value) {\r\n if (!value) {\r\n return value;\r\n }\r\n if (typeof value === 'string' && !isHexStrict(value)) {\r\n throw new Error('Given value \"' + value + '\" is not a valid hex string.');\r\n }\r\n return toBN(value).toNumber();\r\n};\r\n/**\r\n * Converts value to it's decimal representation in string\r\n *\r\n * @method hexToNumberString\r\n * @param {String|Number|BN} value\r\n * @return {String}\r\n */\r\nvar hexToNumberString = function (value) {\r\n if (!value)\r\n return value;\r\n if (typeof value === 'string' && !isHexStrict(value)) {\r\n throw new Error('Given value \"' + value + '\" is not a valid hex string.');\r\n }\r\n return toBN(value).toString(10);\r\n};\r\n/**\r\n * Converts value to it's hex representation\r\n *\r\n * @method numberToHex\r\n * @param {String|Number|BN} value\r\n * @return {String}\r\n */\r\nvar numberToHex = function (value) {\r\n if ((value === null || value === undefined)) {\r\n return value;\r\n }\r\n if (!isFinite(value) && !isHexStrict(value)) {\r\n throw new Error('Given input \"' + value + '\" is not a number.');\r\n }\r\n var number = toBN(value);\r\n var result = number.toString(16);\r\n return number.lt(new BN(0)) ? '-0x' + result.substr(1) : '0x' + result;\r\n};\r\n/**\r\n * Convert a byte array to a hex string\r\n *\r\n * Note: Implementation from crypto-js\r\n *\r\n * @method bytesToHex\r\n * @param {Array} bytes\r\n * @return {String} the hex string\r\n */\r\nvar bytesToHex = function (bytes) {\r\n for (var hex = [], i = 0; i < bytes.length; i++) {\r\n /* jshint ignore:start */\r\n hex.push((bytes[i] >>> 4).toString(16));\r\n hex.push((bytes[i] & 0xF).toString(16));\r\n /* jshint ignore:end */\r\n }\r\n return '0x' + hex.join(\"\");\r\n};\r\n/**\r\n * Convert a hex string to a byte array\r\n *\r\n * Note: Implementation from crypto-js\r\n *\r\n * @method hexToBytes\r\n * @param {string} hex\r\n * @return {Array} the byte array\r\n */\r\nvar hexToBytes = function (hex) {\r\n hex = hex.toString(16);\r\n if (!isHexStrict(hex)) {\r\n throw new Error('Given value \"' + hex + '\" is not a valid hex string.');\r\n }\r\n hex = hex.replace(/^0x/i, '');\r\n for (var bytes = [], c = 0; c < hex.length; c += 2)\r\n bytes.push(parseInt(hex.substr(c, 2), 16));\r\n return bytes;\r\n};\r\n/**\r\n * Auto converts any given value into it's hex representation.\r\n *\r\n * And even stringifys objects before.\r\n *\r\n * @method toHex\r\n * @param {String|Number|BN|Object|Buffer} value\r\n * @param {Boolean} returnType\r\n * @return {String}\r\n */\r\nvar toHex = function (value, returnType) {\r\n /*jshint maxcomplexity: false */\r\n if (isAddress(value)) {\r\n return returnType ? 'address' : '0x' + value.toLowerCase().replace(/^0x/i, '');\r\n }\r\n if (typeof value === 'boolean') {\r\n return returnType ? 'bool' : value ? '0x01' : '0x00';\r\n }\r\n if (Buffer.isBuffer(value)) {\r\n return '0x' + value.toString('hex');\r\n }\r\n if (typeof value === 'object' && !!value && !isBigNumber(value) && !isBN(value)) {\r\n return returnType ? 'string' : utf8ToHex(JSON.stringify(value));\r\n }\r\n // if its a negative number, pass it through numberToHex\r\n if (typeof value === 'string') {\r\n if (value.indexOf('-0x') === 0 || value.indexOf('-0X') === 0) {\r\n return returnType ? 'int256' : numberToHex(value);\r\n }\r\n else if (value.indexOf('0x') === 0 || value.indexOf('0X') === 0) {\r\n return returnType ? 'bytes' : value;\r\n }\r\n else if (!isFinite(value)) {\r\n return returnType ? 'string' : utf8ToHex(value);\r\n }\r\n }\r\n return returnType ? (value < 0 ? 'int256' : 'uint256') : numberToHex(value);\r\n};\r\n/**\r\n * Check if string is HEX, requires a 0x in front\r\n *\r\n * @method isHexStrict\r\n * @param {String} hex to be checked\r\n * @returns {Boolean}\r\n */\r\nvar isHexStrict = function (hex) {\r\n return ((typeof hex === 'string' || typeof hex === 'number') && /^(-)?0x[0-9a-f]*$/i.test(hex));\r\n};\r\n/**\r\n * Check if string is HEX\r\n *\r\n * @method isHex\r\n * @param {String} hex to be checked\r\n * @returns {Boolean}\r\n */\r\nvar isHex = function (hex) {\r\n return ((typeof hex === 'string' || typeof hex === 'number') && /^(-0x|0x)?[0-9a-f]*$/i.test(hex));\r\n};\r\n/**\r\n * Remove 0x prefix from string\r\n *\r\n * @method stripHexPrefix\r\n * @param {String} str to be checked\r\n * @returns {String}\r\n */\r\nvar stripHexPrefix = function (str) {\r\n if (str !== 0 && isHex(str))\r\n return str.replace(/^(-)?0x/i, '$1');\r\n return str;\r\n};\r\n/**\r\n * Returns true if given string is a valid Ethereum block header bloom.\r\n *\r\n * @method isBloom\r\n * @param {String} bloom encoded bloom filter\r\n * @return {Boolean}\r\n */\r\nvar isBloom = function (bloom) {\r\n return ethereumBloomFilters.isBloom(bloom);\r\n};\r\n/**\r\n * Returns true if the ethereum users address is part of the given bloom\r\n * note: false positives are possible.\r\n *\r\n * @method isUserEthereumAddressInBloom\r\n * @param {String} ethereumAddress encoded bloom filter\r\n * @param {String} bloom ethereum addresss\r\n * @return {Boolean}\r\n */\r\nvar isUserEthereumAddressInBloom = function (bloom, ethereumAddress) {\r\n return ethereumBloomFilters.isUserEthereumAddressInBloom(bloom, ethereumAddress);\r\n};\r\n/**\r\n * Returns true if the contract address is part of the given bloom\r\n * note: false positives are possible.\r\n *\r\n * @method isUserEthereumAddressInBloom\r\n * @param {String} bloom encoded bloom filter\r\n * @param {String} contractAddress contract addresss\r\n * @return {Boolean}\r\n */\r\nvar isContractAddressInBloom = function (bloom, contractAddress) {\r\n return ethereumBloomFilters.isContractAddressInBloom(bloom, contractAddress);\r\n};\r\n/**\r\n * Returns true if given string is a valid log topic.\r\n *\r\n * @method isTopic\r\n * @param {String} topic encoded topic\r\n * @return {Boolean}\r\n */\r\nvar isTopic = function (topic) {\r\n return ethereumBloomFilters.isTopic(topic);\r\n};\r\n/**\r\n * Returns true if the topic is part of the given bloom\r\n * note: false positives are possible.\r\n *\r\n * @method isTopicInBloom\r\n * @param {String} bloom encoded bloom filter\r\n * @param {String} topic encoded topic\r\n * @return {Boolean}\r\n */\r\nvar isTopicInBloom = function (bloom, topic) {\r\n return ethereumBloomFilters.isTopicInBloom(bloom, topic);\r\n};\r\n/**\r\n * Returns true if the value is part of the given bloom\r\n * note: false positives are possible.\r\n *\r\n * @method isInBloom\r\n * @param {String} bloom encoded bloom filter\r\n * @param {String | Uint8Array} topic encoded value\r\n * @return {Boolean}\r\n */\r\nvar isInBloom = function (bloom, topic) {\r\n return ethereumBloomFilters.isInBloom(bloom, topic);\r\n};\r\n/**\r\n * Hashes values to a sha3 hash using keccak 256\r\n *\r\n * To hash a HEX string the hex must have 0x in front.\r\n *\r\n * @method sha3\r\n * @return {String} the sha3 string\r\n */\r\nvar SHA3_NULL_S = '0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470';\r\nvar sha3 = function (value) {\r\n if (isBN(value)) {\r\n value = value.toString();\r\n }\r\n if (isHexStrict(value) && /^0x/i.test((value).toString())) {\r\n value = ethereumjsUtil.toBuffer(value);\r\n }\r\n else if (typeof value === 'string') {\r\n // Assume value is an arbitrary string\r\n value = Buffer.from(value, 'utf-8');\r\n }\r\n var returnValue = ethereumjsUtil.bufferToHex(ethereumjsUtil.keccak256(value));\r\n if (returnValue === SHA3_NULL_S) {\r\n return null;\r\n }\r\n else {\r\n return returnValue;\r\n }\r\n};\r\n// expose the under the hood keccak256\r\nsha3._Hash = ethereumjsUtil.keccak256;\r\n/**\r\n * @method sha3Raw\r\n *\r\n * @param value\r\n *\r\n * @returns {string}\r\n */\r\nvar sha3Raw = function (value) {\r\n value = sha3(value);\r\n if (value === null) {\r\n return SHA3_NULL_S;\r\n }\r\n return value;\r\n};\r\n/**\r\n * Auto converts any given value into it's hex representation,\r\n * then converts hex to number.\r\n *\r\n * @method toNumber\r\n * @param {String|Number|BN} value\r\n * @return {Number}\r\n */\r\nvar toNumber = function (value) {\r\n return typeof value === 'number' ? value : hexToNumber(toHex(value));\r\n};\r\n/**\r\n * Hedera checksum algorithm\r\n * @param {string} ledgerId\r\n * @param {string} addr\r\n * @returns string\r\n */\r\nvar _checksum = function (addr, ledgerId) {\r\n let answer = \"\";\r\n let d = []; // Digits with 10 for \".\", so if addr == \"0.0.123\" then d == [0, 10, 0, 10, 1, 2, 3]\r\n let s0 = 0; // Sum of even positions (mod 11)\r\n let s1 = 0; // Sum of odd positions (mod 11)\r\n let s = 0; // Weighted sum of all positions (mod p3)\r\n let sh = 0; // Hash of the ledger ID\r\n let c = 0; // The checksum, as a single number\r\n const p3 = 26 * 26 * 26; // 3 digits in base 26\r\n const p5 = 26 * 26 * 26 * 26 * 26; // 5 digits in base 26\r\n const ascii_a = \"a\".charCodeAt(0); // 97\r\n const m = 1000003; // Min prime greater than a million. Used for the final permutation.\r\n const w = 31; // Sum s of digit values weights them by powers of w. Should be coprime to p5.\r\n let id = ledgerId + \"000000000000\";\r\n let h = [];\r\n for (var i = 0; i < id.length; i += 2) {\r\n h.push(parseInt(id.substring(i, i + 2), 16));\r\n }\r\n for (let i = 0; i < addr.length; i++) {\r\n d.push(addr[i] === \".\" ? 10 : parseInt(addr[i], 10));\r\n }\r\n for (let i = 0; i < d.length; i++) {\r\n s = (w * s + d[i]) % p3;\r\n if (i % 2 === 0) {\r\n s0 = (s0 + d[i]) % 11;\r\n }\r\n else {\r\n s1 = (s1 + d[i]) % 11;\r\n }\r\n }\r\n for (let i = 0; i < h.length; i++) {\r\n sh = (w * sh + h[i]) % p5;\r\n }\r\n c = ((((addr.length % 5) * 11 + s0) * 11 + s1) * p3 + s + sh) % p5;\r\n c = (c * m) % p5;\r\n for (let i = 0; i < 5; i++) {\r\n answer = String.fromCharCode(ascii_a + (c % 26)) + answer;\r\n c /= 26;\r\n }\r\n return answer;\r\n};\r\n/**\r\n * return a hedera checksum address\r\n * @param {string} address\r\n * @param {NodeClient} client\r\n * @returns\r\n */\r\nvar getChecksumAddress = function (address, client) {\r\n if (!isAddress(address)) {\r\n throw new Error('Address is incorrect');\r\n }\r\n if (!client._network.ledgerId._ledgerId) {\r\n throw new Error('Incorrect client');\r\n }\r\n return _checksum(address, client._network.ledgerId._ledgerId);\r\n};\r\nmodule.exports = {\r\n BN: BN,\r\n isBN: isBN,\r\n isBigNumber: isBigNumber,\r\n toBN: toBN,\r\n isAddress: isAddress,\r\n isBloom: isBloom,\r\n isUserEthereumAddressInBloom: isUserEthereumAddressInBloom,\r\n isContractAddressInBloom: isContractAddressInBloom,\r\n isTopic: isTopic,\r\n isTopicInBloom: isTopicInBloom,\r\n isInBloom: isInBloom,\r\n checkAddressChecksum: checkAddressChecksum,\r\n utf8ToHex: utf8ToHex,\r\n hexToUtf8: hexToUtf8,\r\n hexToNumber: hexToNumber,\r\n hexToNumberString: hexToNumberString,\r\n numberToHex: numberToHex,\r\n toHex: toHex,\r\n hexToBytes: hexToBytes,\r\n bytesToHex: bytesToHex,\r\n isHex: isHex,\r\n isHexStrict: isHexStrict,\r\n stripHexPrefix: stripHexPrefix,\r\n leftPad: leftPad,\r\n rightPad: rightPad,\r\n toTwosComplement: toTwosComplement,\r\n sha3: sha3,\r\n sha3Raw: sha3Raw,\r\n toNumber: toNumber,\r\n getChecksumAddress: getChecksumAddress\r\n};\r\n","var toString = {}.toString;\n\nmodule.exports = Array.isArray || function (arr) {\n return toString.call(arr) == '[object Array]';\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.KECCAK256_RLP = exports.KECCAK256_RLP_S = exports.KECCAK256_RLP_ARRAY = exports.KECCAK256_RLP_ARRAY_S = exports.KECCAK256_NULL = exports.KECCAK256_NULL_S = exports.TWO_POW256 = exports.MAX_INTEGER = exports.MAX_UINT64 = void 0;\nvar buffer_1 = require(\"buffer\");\nvar externals_1 = require(\"./externals\");\n/**\n * 2^64-1\n */\nexports.MAX_UINT64 = new externals_1.BN('ffffffffffffffff', 16);\n/**\n * The max integer that the evm can handle (2^256-1)\n */\nexports.MAX_INTEGER = new externals_1.BN('ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff', 16);\n/**\n * 2^256\n */\nexports.TWO_POW256 = new externals_1.BN('10000000000000000000000000000000000000000000000000000000000000000', 16);\n/**\n * Keccak-256 hash of null\n */\nexports.KECCAK256_NULL_S = 'c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470';\n/**\n * Keccak-256 hash of null\n */\nexports.KECCAK256_NULL = buffer_1.Buffer.from(exports.KECCAK256_NULL_S, 'hex');\n/**\n * Keccak-256 of an RLP of an empty array\n */\nexports.KECCAK256_RLP_ARRAY_S = '1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347';\n/**\n * Keccak-256 of an RLP of an empty array\n */\nexports.KECCAK256_RLP_ARRAY = buffer_1.Buffer.from(exports.KECCAK256_RLP_ARRAY_S, 'hex');\n/**\n * Keccak-256 hash of the RLP of null\n */\nexports.KECCAK256_RLP_S = '56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421';\n/**\n * Keccak-256 hash of the RLP of null\n */\nexports.KECCAK256_RLP = buffer_1.Buffer.from(exports.KECCAK256_RLP_S, 'hex');\n//# sourceMappingURL=constants.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isZeroAddress = exports.zeroAddress = exports.importPublic = exports.privateToAddress = exports.privateToPublic = exports.publicToAddress = exports.pubToAddress = exports.isValidPublic = exports.isValidPrivate = exports.generateAddress2 = exports.generateAddress = exports.isValidChecksumAddress = exports.toChecksumAddress = exports.isValidAddress = exports.Account = void 0;\nvar assert_1 = __importDefault(require(\"assert\"));\nvar externals_1 = require(\"./externals\");\nvar secp256k1_1 = require(\"ethereum-cryptography/secp256k1\");\nvar internal_1 = require(\"./internal\");\nvar constants_1 = require(\"./constants\");\nvar bytes_1 = require(\"./bytes\");\nvar hash_1 = require(\"./hash\");\nvar helpers_1 = require(\"./helpers\");\nvar types_1 = require(\"./types\");\nvar Account = /** @class */ (function () {\n /**\n * This constructor assigns and validates the values.\n * Use the static factory methods to assist in creating an Account from varying data types.\n */\n function Account(nonce, balance, stateRoot, codeHash) {\n if (nonce === void 0) { nonce = new externals_1.BN(0); }\n if (balance === void 0) { balance = new externals_1.BN(0); }\n if (stateRoot === void 0) { stateRoot = constants_1.KECCAK256_RLP; }\n if (codeHash === void 0) { codeHash = constants_1.KECCAK256_NULL; }\n this.nonce = nonce;\n this.balance = balance;\n this.stateRoot = stateRoot;\n this.codeHash = codeHash;\n this._validate();\n }\n Account.fromAccountData = function (accountData) {\n var nonce = accountData.nonce, balance = accountData.balance, stateRoot = accountData.stateRoot, codeHash = accountData.codeHash;\n return new Account(nonce ? new externals_1.BN((0, bytes_1.toBuffer)(nonce)) : undefined, balance ? new externals_1.BN((0, bytes_1.toBuffer)(balance)) : undefined, stateRoot ? (0, bytes_1.toBuffer)(stateRoot) : undefined, codeHash ? (0, bytes_1.toBuffer)(codeHash) : undefined);\n };\n Account.fromRlpSerializedAccount = function (serialized) {\n var values = externals_1.rlp.decode(serialized);\n if (!Array.isArray(values)) {\n throw new Error('Invalid serialized account input. Must be array');\n }\n return this.fromValuesArray(values);\n };\n Account.fromValuesArray = function (values) {\n var _a = __read(values, 4), nonce = _a[0], balance = _a[1], stateRoot = _a[2], codeHash = _a[3];\n return new Account(new externals_1.BN(nonce), new externals_1.BN(balance), stateRoot, codeHash);\n };\n Account.prototype._validate = function () {\n if (this.nonce.lt(new externals_1.BN(0))) {\n throw new Error('nonce must be greater than zero');\n }\n if (this.balance.lt(new externals_1.BN(0))) {\n throw new Error('balance must be greater than zero');\n }\n if (this.stateRoot.length !== 32) {\n throw new Error('stateRoot must have a length of 32');\n }\n if (this.codeHash.length !== 32) {\n throw new Error('codeHash must have a length of 32');\n }\n };\n /**\n * Returns a Buffer Array of the raw Buffers for the account, in order.\n */\n Account.prototype.raw = function () {\n return [\n (0, types_1.bnToUnpaddedBuffer)(this.nonce),\n (0, types_1.bnToUnpaddedBuffer)(this.balance),\n this.stateRoot,\n this.codeHash,\n ];\n };\n /**\n * Returns the RLP serialization of the account as a `Buffer`.\n */\n Account.prototype.serialize = function () {\n return externals_1.rlp.encode(this.raw());\n };\n /**\n * Returns a `Boolean` determining if the account is a contract.\n */\n Account.prototype.isContract = function () {\n return !this.codeHash.equals(constants_1.KECCAK256_NULL);\n };\n /**\n * Returns a `Boolean` determining if the account is empty complying to the definition of\n * account emptiness in [EIP-161](https://eips.ethereum.org/EIPS/eip-161):\n * \"An account is considered empty when it has no code and zero nonce and zero balance.\"\n */\n Account.prototype.isEmpty = function () {\n return this.balance.isZero() && this.nonce.isZero() && this.codeHash.equals(constants_1.KECCAK256_NULL);\n };\n return Account;\n}());\nexports.Account = Account;\n/**\n * Checks if the address is a valid. Accepts checksummed addresses too.\n */\nvar isValidAddress = function (hexAddress) {\n try {\n (0, helpers_1.assertIsString)(hexAddress);\n }\n catch (e) {\n return false;\n }\n return /^0x[0-9a-fA-F]{40}$/.test(hexAddress);\n};\nexports.isValidAddress = isValidAddress;\n/**\n * Returns a checksummed address.\n *\n * If an eip1191ChainId is provided, the chainId will be included in the checksum calculation. This\n * has the effect of checksummed addresses for one chain having invalid checksums for others.\n * For more details see [EIP-1191](https://eips.ethereum.org/EIPS/eip-1191).\n *\n * WARNING: Checksums with and without the chainId will differ and the EIP-1191 checksum is not\n * backwards compatible to the original widely adopted checksum format standard introduced in\n * [EIP-55](https://eips.ethereum.org/EIPS/eip-55), so this will break in existing applications.\n * Usage of this EIP is therefore discouraged unless you have a very targeted use case.\n */\nvar toChecksumAddress = function (hexAddress, eip1191ChainId) {\n (0, helpers_1.assertIsHexString)(hexAddress);\n var address = (0, internal_1.stripHexPrefix)(hexAddress).toLowerCase();\n var prefix = '';\n if (eip1191ChainId) {\n var chainId = (0, types_1.toType)(eip1191ChainId, types_1.TypeOutput.BN);\n prefix = chainId.toString() + '0x';\n }\n var hash = (0, hash_1.keccakFromString)(prefix + address).toString('hex');\n var ret = '0x';\n for (var i = 0; i < address.length; i++) {\n if (parseInt(hash[i], 16) >= 8) {\n ret += address[i].toUpperCase();\n }\n else {\n ret += address[i];\n }\n }\n return ret;\n};\nexports.toChecksumAddress = toChecksumAddress;\n/**\n * Checks if the address is a valid checksummed address.\n *\n * See toChecksumAddress' documentation for details about the eip1191ChainId parameter.\n */\nvar isValidChecksumAddress = function (hexAddress, eip1191ChainId) {\n return (0, exports.isValidAddress)(hexAddress) && (0, exports.toChecksumAddress)(hexAddress, eip1191ChainId) === hexAddress;\n};\nexports.isValidChecksumAddress = isValidChecksumAddress;\n/**\n * Generates an address of a newly created contract.\n * @param from The address which is creating this new address\n * @param nonce The nonce of the from account\n */\nvar generateAddress = function (from, nonce) {\n (0, helpers_1.assertIsBuffer)(from);\n (0, helpers_1.assertIsBuffer)(nonce);\n var nonceBN = new externals_1.BN(nonce);\n if (nonceBN.isZero()) {\n // in RLP we want to encode null in the case of zero nonce\n // read the RLP documentation for an answer if you dare\n return (0, hash_1.rlphash)([from, null]).slice(-20);\n }\n // Only take the lower 160bits of the hash\n return (0, hash_1.rlphash)([from, Buffer.from(nonceBN.toArray())]).slice(-20);\n};\nexports.generateAddress = generateAddress;\n/**\n * Generates an address for a contract created using CREATE2.\n * @param from The address which is creating this new address\n * @param salt A salt\n * @param initCode The init code of the contract being created\n */\nvar generateAddress2 = function (from, salt, initCode) {\n (0, helpers_1.assertIsBuffer)(from);\n (0, helpers_1.assertIsBuffer)(salt);\n (0, helpers_1.assertIsBuffer)(initCode);\n (0, assert_1.default)(from.length === 20);\n (0, assert_1.default)(salt.length === 32);\n var address = (0, hash_1.keccak256)(Buffer.concat([Buffer.from('ff', 'hex'), from, salt, (0, hash_1.keccak256)(initCode)]));\n return address.slice(-20);\n};\nexports.generateAddress2 = generateAddress2;\n/**\n * Checks if the private key satisfies the rules of the curve secp256k1.\n */\nvar isValidPrivate = function (privateKey) {\n return (0, secp256k1_1.privateKeyVerify)(privateKey);\n};\nexports.isValidPrivate = isValidPrivate;\n/**\n * Checks if the public key satisfies the rules of the curve secp256k1\n * and the requirements of Ethereum.\n * @param publicKey The two points of an uncompressed key, unless sanitize is enabled\n * @param sanitize Accept public keys in other formats\n */\nvar isValidPublic = function (publicKey, sanitize) {\n if (sanitize === void 0) { sanitize = false; }\n (0, helpers_1.assertIsBuffer)(publicKey);\n if (publicKey.length === 64) {\n // Convert to SEC1 for secp256k1\n return (0, secp256k1_1.publicKeyVerify)(Buffer.concat([Buffer.from([4]), publicKey]));\n }\n if (!sanitize) {\n return false;\n }\n return (0, secp256k1_1.publicKeyVerify)(publicKey);\n};\nexports.isValidPublic = isValidPublic;\n/**\n * Returns the ethereum address of a given public key.\n * Accepts \"Ethereum public keys\" and SEC1 encoded keys.\n * @param pubKey The two points of an uncompressed key, unless sanitize is enabled\n * @param sanitize Accept public keys in other formats\n */\nvar pubToAddress = function (pubKey, sanitize) {\n if (sanitize === void 0) { sanitize = false; }\n (0, helpers_1.assertIsBuffer)(pubKey);\n if (sanitize && pubKey.length !== 64) {\n pubKey = Buffer.from((0, secp256k1_1.publicKeyConvert)(pubKey, false).slice(1));\n }\n (0, assert_1.default)(pubKey.length === 64);\n // Only take the lower 160bits of the hash\n return (0, hash_1.keccak)(pubKey).slice(-20);\n};\nexports.pubToAddress = pubToAddress;\nexports.publicToAddress = exports.pubToAddress;\n/**\n * Returns the ethereum public key of a given private key.\n * @param privateKey A private key must be 256 bits wide\n */\nvar privateToPublic = function (privateKey) {\n (0, helpers_1.assertIsBuffer)(privateKey);\n // skip the type flag and use the X, Y points\n return Buffer.from((0, secp256k1_1.publicKeyCreate)(privateKey, false)).slice(1);\n};\nexports.privateToPublic = privateToPublic;\n/**\n * Returns the ethereum address of a given private key.\n * @param privateKey A private key must be 256 bits wide\n */\nvar privateToAddress = function (privateKey) {\n return (0, exports.publicToAddress)((0, exports.privateToPublic)(privateKey));\n};\nexports.privateToAddress = privateToAddress;\n/**\n * Converts a public key to the Ethereum format.\n */\nvar importPublic = function (publicKey) {\n (0, helpers_1.assertIsBuffer)(publicKey);\n if (publicKey.length !== 64) {\n publicKey = Buffer.from((0, secp256k1_1.publicKeyConvert)(publicKey, false).slice(1));\n }\n return publicKey;\n};\nexports.importPublic = importPublic;\n/**\n * Returns the zero address.\n */\nvar zeroAddress = function () {\n var addressLength = 20;\n var addr = (0, bytes_1.zeros)(addressLength);\n return (0, bytes_1.bufferToHex)(addr);\n};\nexports.zeroAddress = zeroAddress;\n/**\n * Checks if a given address is the zero address.\n */\nvar isZeroAddress = function (hexAddress) {\n try {\n (0, helpers_1.assertIsString)(hexAddress);\n }\n catch (e) {\n return false;\n }\n var zeroAddr = (0, exports.zeroAddress)();\n return zeroAddr === hexAddress;\n};\nexports.isZeroAddress = isZeroAddress;\n//# sourceMappingURL=account.js.map","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nfunction __export(m) {\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\n}\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar secp256k1_1 = require(\"secp256k1\");\nvar random_1 = require(\"./random\");\nvar SECP256K1_PRIVATE_KEY_SIZE = 32;\nfunction createPrivateKey() {\n return __awaiter(this, void 0, void 0, function () {\n var pk;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!true) return [3 /*break*/, 2];\n return [4 /*yield*/, random_1.getRandomBytes(SECP256K1_PRIVATE_KEY_SIZE)];\n case 1:\n pk = _a.sent();\n if (secp256k1_1.privateKeyVerify(pk)) {\n return [2 /*return*/, pk];\n }\n return [3 /*break*/, 0];\n case 2: return [2 /*return*/];\n }\n });\n });\n}\nexports.createPrivateKey = createPrivateKey;\nfunction createPrivateKeySync() {\n while (true) {\n var pk = random_1.getRandomBytesSync(SECP256K1_PRIVATE_KEY_SIZE);\n if (secp256k1_1.privateKeyVerify(pk)) {\n return pk;\n }\n }\n}\nexports.createPrivateKeySync = createPrivateKeySync;\n__export(require(\"secp256k1\"));\n//# sourceMappingURL=secp256k1.js.map","module.exports = require('./lib')(require('./lib/elliptic'))\n","exports = module.exports = require('./lib/_stream_readable.js');\nexports.Stream = exports;\nexports.Readable = exports;\nexports.Writable = require('./lib/_stream_writable.js');\nexports.Duplex = require('./lib/_stream_duplex.js');\nexports.Transform = require('./lib/_stream_transform.js');\nexports.PassThrough = require('./lib/_stream_passthrough.js');\nexports.finished = require('./lib/internal/streams/end-of-stream.js');\nexports.pipeline = require('./lib/internal/streams/pipeline.js');\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n'use strict';\n\nmodule.exports = Readable;\n/**/\n\nvar Duplex;\n/**/\n\nReadable.ReadableState = ReadableState;\n/**/\n\nvar EE = require('events').EventEmitter;\n\nvar EElistenerCount = function EElistenerCount(emitter, type) {\n return emitter.listeners(type).length;\n};\n/**/\n\n/**/\n\n\nvar Stream = require('./internal/streams/stream');\n/**/\n\n\nvar Buffer = require('buffer').Buffer;\n\nvar OurUint8Array = global.Uint8Array || function () {};\n\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\n\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n/**/\n\n\nvar debugUtil = require('util');\n\nvar debug;\n\nif (debugUtil && debugUtil.debuglog) {\n debug = debugUtil.debuglog('stream');\n} else {\n debug = function debug() {};\n}\n/**/\n\n\nvar BufferList = require('./internal/streams/buffer_list');\n\nvar destroyImpl = require('./internal/streams/destroy');\n\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\n\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_STREAM_UNSHIFT_AFTER_END_EVENT = _require$codes.ERR_STREAM_UNSHIFT_AFTER_END_EVENT; // Lazy loaded to improve the startup performance.\n\n\nvar StringDecoder;\nvar createReadableStreamAsyncIterator;\nvar from;\n\nrequire('inherits')(Readable, Stream);\n\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\nvar kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];\n\nfunction prependListener(emitter, event, fn) {\n // Sadly this is not cacheable as some libraries bundle their own\n // event emitter implementation with them.\n if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn); // This is a hack to make sure that our error handler is attached before any\n // userland ones. NEVER DO THIS. This is here only because this code needs\n // to continue to work with older versions of Node.js that do not include\n // the prependListener() method. The goal is to eventually remove this hack.\n\n if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];\n}\n\nfunction ReadableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {}; // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream.\n // These options can be provided separately as readableXXX and writableXXX.\n\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag. Used to make read(n) ignore n and to\n // make all the buffer merging and length checks go away\n\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode; // the point at which it stops calling _read() to fill the buffer\n // Note: 0 is a valid value, means \"don't call _read preemptively ever\"\n\n this.highWaterMark = getHighWaterMark(this, options, 'readableHighWaterMark', isDuplex); // A linked list is used to store data chunks instead of an array because the\n // linked list can remove elements from the beginning faster than\n // array.shift()\n\n this.buffer = new BufferList();\n this.length = 0;\n this.pipes = null;\n this.pipesCount = 0;\n this.flowing = null;\n this.ended = false;\n this.endEmitted = false;\n this.reading = false; // a flag to be able to tell if the event 'readable'/'data' is emitted\n // immediately, or on a later tick. We set this to true at first, because\n // any actions that shouldn't happen until \"later\" should generally also\n // not happen before the first read call.\n\n this.sync = true; // whenever we return null, then we set a flag to say\n // that we're awaiting a 'readable' event emission.\n\n this.needReadable = false;\n this.emittedReadable = false;\n this.readableListening = false;\n this.resumeScheduled = false;\n this.paused = true; // Should close be emitted on destroy. Defaults to true.\n\n this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'end' (and potentially 'finish')\n\n this.autoDestroy = !!options.autoDestroy; // has it been destroyed\n\n this.destroyed = false; // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n\n this.defaultEncoding = options.defaultEncoding || 'utf8'; // the number of writers that are awaiting a drain event in .pipe()s\n\n this.awaitDrain = 0; // if true, a maybeReadMore has been scheduled\n\n this.readingMore = false;\n this.decoder = null;\n this.encoding = null;\n\n if (options.encoding) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n this.decoder = new StringDecoder(options.encoding);\n this.encoding = options.encoding;\n }\n}\n\nfunction Readable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n if (!(this instanceof Readable)) return new Readable(options); // Checking for a Stream.Duplex instance is faster here instead of inside\n // the ReadableState constructor, at least with V8 6.5\n\n var isDuplex = this instanceof Duplex;\n this._readableState = new ReadableState(options, this, isDuplex); // legacy\n\n this.readable = true;\n\n if (options) {\n if (typeof options.read === 'function') this._read = options.read;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n }\n\n Stream.call(this);\n}\n\nObject.defineProperty(Readable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined) {\n return false;\n }\n\n return this._readableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._readableState) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._readableState.destroyed = value;\n }\n});\nReadable.prototype.destroy = destroyImpl.destroy;\nReadable.prototype._undestroy = destroyImpl.undestroy;\n\nReadable.prototype._destroy = function (err, cb) {\n cb(err);\n}; // Manually shove something into the read() buffer.\n// This returns true if the highWaterMark has not been hit yet,\n// similar to how Writable.write() returns true if you should\n// write() some more.\n\n\nReadable.prototype.push = function (chunk, encoding) {\n var state = this._readableState;\n var skipChunkCheck;\n\n if (!state.objectMode) {\n if (typeof chunk === 'string') {\n encoding = encoding || state.defaultEncoding;\n\n if (encoding !== state.encoding) {\n chunk = Buffer.from(chunk, encoding);\n encoding = '';\n }\n\n skipChunkCheck = true;\n }\n } else {\n skipChunkCheck = true;\n }\n\n return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);\n}; // Unshift should *always* be something directly out of read()\n\n\nReadable.prototype.unshift = function (chunk) {\n return readableAddChunk(this, chunk, null, true, false);\n};\n\nfunction readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {\n debug('readableAddChunk', chunk);\n var state = stream._readableState;\n\n if (chunk === null) {\n state.reading = false;\n onEofChunk(stream, state);\n } else {\n var er;\n if (!skipChunkCheck) er = chunkInvalid(state, chunk);\n\n if (er) {\n errorOrDestroy(stream, er);\n } else if (state.objectMode || chunk && chunk.length > 0) {\n if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (addToFront) {\n if (state.endEmitted) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT());else addChunk(stream, state, chunk, true);\n } else if (state.ended) {\n errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF());\n } else if (state.destroyed) {\n return false;\n } else {\n state.reading = false;\n\n if (state.decoder && !encoding) {\n chunk = state.decoder.write(chunk);\n if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);\n } else {\n addChunk(stream, state, chunk, false);\n }\n }\n } else if (!addToFront) {\n state.reading = false;\n maybeReadMore(stream, state);\n }\n } // We can push more data if we are below the highWaterMark.\n // Also, if we have no data yet, we can stand some more bytes.\n // This is to work around cases where hwm=0, such as the repl.\n\n\n return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n}\n\nfunction addChunk(stream, state, chunk, addToFront) {\n if (state.flowing && state.length === 0 && !state.sync) {\n state.awaitDrain = 0;\n stream.emit('data', chunk);\n } else {\n // update the buffer info.\n state.length += state.objectMode ? 1 : chunk.length;\n if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);\n if (state.needReadable) emitReadable(stream);\n }\n\n maybeReadMore(stream, state);\n}\n\nfunction chunkInvalid(state, chunk) {\n var er;\n\n if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer', 'Uint8Array'], chunk);\n }\n\n return er;\n}\n\nReadable.prototype.isPaused = function () {\n return this._readableState.flowing === false;\n}; // backwards compatibility.\n\n\nReadable.prototype.setEncoding = function (enc) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n var decoder = new StringDecoder(enc);\n this._readableState.decoder = decoder; // If setEncoding(null), decoder.encoding equals utf8\n\n this._readableState.encoding = this._readableState.decoder.encoding; // Iterate over current buffer to convert already stored Buffers:\n\n var p = this._readableState.buffer.head;\n var content = '';\n\n while (p !== null) {\n content += decoder.write(p.data);\n p = p.next;\n }\n\n this._readableState.buffer.clear();\n\n if (content !== '') this._readableState.buffer.push(content);\n this._readableState.length = content.length;\n return this;\n}; // Don't raise the hwm > 1GB\n\n\nvar MAX_HWM = 0x40000000;\n\nfunction computeNewHighWaterMark(n) {\n if (n >= MAX_HWM) {\n // TODO(ronag): Throw ERR_VALUE_OUT_OF_RANGE.\n n = MAX_HWM;\n } else {\n // Get the next highest power of 2 to prevent increasing hwm excessively in\n // tiny amounts\n n--;\n n |= n >>> 1;\n n |= n >>> 2;\n n |= n >>> 4;\n n |= n >>> 8;\n n |= n >>> 16;\n n++;\n }\n\n return n;\n} // This function is designed to be inlinable, so please take care when making\n// changes to the function body.\n\n\nfunction howMuchToRead(n, state) {\n if (n <= 0 || state.length === 0 && state.ended) return 0;\n if (state.objectMode) return 1;\n\n if (n !== n) {\n // Only flow one buffer at a time\n if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;\n } // If we're asking for more than the current hwm, then raise the hwm.\n\n\n if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);\n if (n <= state.length) return n; // Don't have enough\n\n if (!state.ended) {\n state.needReadable = true;\n return 0;\n }\n\n return state.length;\n} // you can override either this method, or the async _read(n) below.\n\n\nReadable.prototype.read = function (n) {\n debug('read', n);\n n = parseInt(n, 10);\n var state = this._readableState;\n var nOrig = n;\n if (n !== 0) state.emittedReadable = false; // if we're doing read(0) to trigger a readable event, but we\n // already have a bunch of data in the buffer, then just trigger\n // the 'readable' event and move on.\n\n if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n debug('read: emitReadable', state.length, state.ended);\n if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);\n return null;\n }\n\n n = howMuchToRead(n, state); // if we've ended, and we're now clear, then finish it up.\n\n if (n === 0 && state.ended) {\n if (state.length === 0) endReadable(this);\n return null;\n } // All the actual chunk generation logic needs to be\n // *below* the call to _read. The reason is that in certain\n // synthetic stream cases, such as passthrough streams, _read\n // may be a completely synchronous operation which may change\n // the state of the read buffer, providing enough data when\n // before there was *not* enough.\n //\n // So, the steps are:\n // 1. Figure out what the state of things will be after we do\n // a read from the buffer.\n //\n // 2. If that resulting state will trigger a _read, then call _read.\n // Note that this may be asynchronous, or synchronous. Yes, it is\n // deeply ugly to write APIs this way, but that still doesn't mean\n // that the Readable class should behave improperly, as streams are\n // designed to be sync/async agnostic.\n // Take note if the _read call is sync or async (ie, if the read call\n // has returned yet), so that we know whether or not it's safe to emit\n // 'readable' etc.\n //\n // 3. Actually pull the requested chunks out of the buffer and return.\n // if we need a readable event, then we need to do some reading.\n\n\n var doRead = state.needReadable;\n debug('need readable', doRead); // if we currently have less than the highWaterMark, then also read some\n\n if (state.length === 0 || state.length - n < state.highWaterMark) {\n doRead = true;\n debug('length less than watermark', doRead);\n } // however, if we've ended, then there's no point, and if we're already\n // reading, then it's unnecessary.\n\n\n if (state.ended || state.reading) {\n doRead = false;\n debug('reading or ended', doRead);\n } else if (doRead) {\n debug('do read');\n state.reading = true;\n state.sync = true; // if the length is currently zero, then we *need* a readable event.\n\n if (state.length === 0) state.needReadable = true; // call internal read method\n\n this._read(state.highWaterMark);\n\n state.sync = false; // If _read pushed data synchronously, then `reading` will be false,\n // and we need to re-evaluate how much data we can return to the user.\n\n if (!state.reading) n = howMuchToRead(nOrig, state);\n }\n\n var ret;\n if (n > 0) ret = fromList(n, state);else ret = null;\n\n if (ret === null) {\n state.needReadable = state.length <= state.highWaterMark;\n n = 0;\n } else {\n state.length -= n;\n state.awaitDrain = 0;\n }\n\n if (state.length === 0) {\n // If we have nothing in the buffer, then we want to know\n // as soon as we *do* get something into the buffer.\n if (!state.ended) state.needReadable = true; // If we tried to read() past the EOF, then emit end on the next tick.\n\n if (nOrig !== n && state.ended) endReadable(this);\n }\n\n if (ret !== null) this.emit('data', ret);\n return ret;\n};\n\nfunction onEofChunk(stream, state) {\n debug('onEofChunk');\n if (state.ended) return;\n\n if (state.decoder) {\n var chunk = state.decoder.end();\n\n if (chunk && chunk.length) {\n state.buffer.push(chunk);\n state.length += state.objectMode ? 1 : chunk.length;\n }\n }\n\n state.ended = true;\n\n if (state.sync) {\n // if we are sync, wait until next tick to emit the data.\n // Otherwise we risk emitting data in the flow()\n // the readable code triggers during a read() call\n emitReadable(stream);\n } else {\n // emit 'readable' now to make sure it gets picked up.\n state.needReadable = false;\n\n if (!state.emittedReadable) {\n state.emittedReadable = true;\n emitReadable_(stream);\n }\n }\n} // Don't emit readable right away in sync mode, because this can trigger\n// another read() call => stack overflow. This way, it might trigger\n// a nextTick recursion warning, but that's not so bad.\n\n\nfunction emitReadable(stream) {\n var state = stream._readableState;\n debug('emitReadable', state.needReadable, state.emittedReadable);\n state.needReadable = false;\n\n if (!state.emittedReadable) {\n debug('emitReadable', state.flowing);\n state.emittedReadable = true;\n process.nextTick(emitReadable_, stream);\n }\n}\n\nfunction emitReadable_(stream) {\n var state = stream._readableState;\n debug('emitReadable_', state.destroyed, state.length, state.ended);\n\n if (!state.destroyed && (state.length || state.ended)) {\n stream.emit('readable');\n state.emittedReadable = false;\n } // The stream needs another readable event if\n // 1. It is not flowing, as the flow mechanism will take\n // care of it.\n // 2. It is not ended.\n // 3. It is below the highWaterMark, so we can schedule\n // another readable later.\n\n\n state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark;\n flow(stream);\n} // at this point, the user has presumably seen the 'readable' event,\n// and called read() to consume some data. that may have triggered\n// in turn another _read(n) call, in which case reading = true if\n// it's in progress.\n// However, if we're not ended, or reading, and the length < hwm,\n// then go ahead and try to read some more preemptively.\n\n\nfunction maybeReadMore(stream, state) {\n if (!state.readingMore) {\n state.readingMore = true;\n process.nextTick(maybeReadMore_, stream, state);\n }\n}\n\nfunction maybeReadMore_(stream, state) {\n // Attempt to read more data if we should.\n //\n // The conditions for reading more data are (one of):\n // - Not enough data buffered (state.length < state.highWaterMark). The loop\n // is responsible for filling the buffer with enough data if such data\n // is available. If highWaterMark is 0 and we are not in the flowing mode\n // we should _not_ attempt to buffer any extra data. We'll get more data\n // when the stream consumer calls read() instead.\n // - No data in the buffer, and the stream is in flowing mode. In this mode\n // the loop below is responsible for ensuring read() is called. Failing to\n // call read here would abort the flow and there's no other mechanism for\n // continuing the flow if the stream consumer has just subscribed to the\n // 'data' event.\n //\n // In addition to the above conditions to keep reading data, the following\n // conditions prevent the data from being read:\n // - The stream has ended (state.ended).\n // - There is already a pending 'read' operation (state.reading). This is a\n // case where the the stream has called the implementation defined _read()\n // method, but they are processing the call asynchronously and have _not_\n // called push() with new data. In this case we skip performing more\n // read()s. The execution ends in this method again after the _read() ends\n // up calling push() with more data.\n while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) {\n var len = state.length;\n debug('maybeReadMore read 0');\n stream.read(0);\n if (len === state.length) // didn't get any data, stop spinning.\n break;\n }\n\n state.readingMore = false;\n} // abstract method. to be overridden in specific implementation classes.\n// call cb(er, data) where data is <= n in length.\n// for virtual (non-string, non-buffer) streams, \"length\" is somewhat\n// arbitrary, and perhaps not very meaningful.\n\n\nReadable.prototype._read = function (n) {\n errorOrDestroy(this, new ERR_METHOD_NOT_IMPLEMENTED('_read()'));\n};\n\nReadable.prototype.pipe = function (dest, pipeOpts) {\n var src = this;\n var state = this._readableState;\n\n switch (state.pipesCount) {\n case 0:\n state.pipes = dest;\n break;\n\n case 1:\n state.pipes = [state.pipes, dest];\n break;\n\n default:\n state.pipes.push(dest);\n break;\n }\n\n state.pipesCount += 1;\n debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);\n var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;\n var endFn = doEnd ? onend : unpipe;\n if (state.endEmitted) process.nextTick(endFn);else src.once('end', endFn);\n dest.on('unpipe', onunpipe);\n\n function onunpipe(readable, unpipeInfo) {\n debug('onunpipe');\n\n if (readable === src) {\n if (unpipeInfo && unpipeInfo.hasUnpiped === false) {\n unpipeInfo.hasUnpiped = true;\n cleanup();\n }\n }\n }\n\n function onend() {\n debug('onend');\n dest.end();\n } // when the dest drains, it reduces the awaitDrain counter\n // on the source. This would be more elegant with a .once()\n // handler in flow(), but adding and removing repeatedly is\n // too slow.\n\n\n var ondrain = pipeOnDrain(src);\n dest.on('drain', ondrain);\n var cleanedUp = false;\n\n function cleanup() {\n debug('cleanup'); // cleanup event handlers once the pipe is broken\n\n dest.removeListener('close', onclose);\n dest.removeListener('finish', onfinish);\n dest.removeListener('drain', ondrain);\n dest.removeListener('error', onerror);\n dest.removeListener('unpipe', onunpipe);\n src.removeListener('end', onend);\n src.removeListener('end', unpipe);\n src.removeListener('data', ondata);\n cleanedUp = true; // if the reader is waiting for a drain event from this\n // specific writer, then it would cause it to never start\n // flowing again.\n // So, if this is awaiting a drain, then we just call it now.\n // If we don't know, then assume that we are waiting for one.\n\n if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();\n }\n\n src.on('data', ondata);\n\n function ondata(chunk) {\n debug('ondata');\n var ret = dest.write(chunk);\n debug('dest.write', ret);\n\n if (ret === false) {\n // If the user unpiped during `dest.write()`, it is possible\n // to get stuck in a permanently paused state if that write\n // also returned false.\n // => Check whether `dest` is still a piping destination.\n if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {\n debug('false write response, pause', state.awaitDrain);\n state.awaitDrain++;\n }\n\n src.pause();\n }\n } // if the dest has an error, then stop piping into it.\n // however, don't suppress the throwing behavior for this.\n\n\n function onerror(er) {\n debug('onerror', er);\n unpipe();\n dest.removeListener('error', onerror);\n if (EElistenerCount(dest, 'error') === 0) errorOrDestroy(dest, er);\n } // Make sure our error handler is attached before userland ones.\n\n\n prependListener(dest, 'error', onerror); // Both close and finish should trigger unpipe, but only once.\n\n function onclose() {\n dest.removeListener('finish', onfinish);\n unpipe();\n }\n\n dest.once('close', onclose);\n\n function onfinish() {\n debug('onfinish');\n dest.removeListener('close', onclose);\n unpipe();\n }\n\n dest.once('finish', onfinish);\n\n function unpipe() {\n debug('unpipe');\n src.unpipe(dest);\n } // tell the dest that it's being piped to\n\n\n dest.emit('pipe', src); // start the flow if it hasn't been started already.\n\n if (!state.flowing) {\n debug('pipe resume');\n src.resume();\n }\n\n return dest;\n};\n\nfunction pipeOnDrain(src) {\n return function pipeOnDrainFunctionResult() {\n var state = src._readableState;\n debug('pipeOnDrain', state.awaitDrain);\n if (state.awaitDrain) state.awaitDrain--;\n\n if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {\n state.flowing = true;\n flow(src);\n }\n };\n}\n\nReadable.prototype.unpipe = function (dest) {\n var state = this._readableState;\n var unpipeInfo = {\n hasUnpiped: false\n }; // if we're not piping anywhere, then do nothing.\n\n if (state.pipesCount === 0) return this; // just one destination. most common case.\n\n if (state.pipesCount === 1) {\n // passed in one, but it's not the right one.\n if (dest && dest !== state.pipes) return this;\n if (!dest) dest = state.pipes; // got a match.\n\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n if (dest) dest.emit('unpipe', this, unpipeInfo);\n return this;\n } // slow case. multiple pipe destinations.\n\n\n if (!dest) {\n // remove all.\n var dests = state.pipes;\n var len = state.pipesCount;\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n\n for (var i = 0; i < len; i++) {\n dests[i].emit('unpipe', this, {\n hasUnpiped: false\n });\n }\n\n return this;\n } // try to find the right one.\n\n\n var index = indexOf(state.pipes, dest);\n if (index === -1) return this;\n state.pipes.splice(index, 1);\n state.pipesCount -= 1;\n if (state.pipesCount === 1) state.pipes = state.pipes[0];\n dest.emit('unpipe', this, unpipeInfo);\n return this;\n}; // set up data events if they are asked for\n// Ensure readable listeners eventually get something\n\n\nReadable.prototype.on = function (ev, fn) {\n var res = Stream.prototype.on.call(this, ev, fn);\n var state = this._readableState;\n\n if (ev === 'data') {\n // update readableListening so that resume() may be a no-op\n // a few lines down. This is needed to support once('readable').\n state.readableListening = this.listenerCount('readable') > 0; // Try start flowing on next tick if stream isn't explicitly paused\n\n if (state.flowing !== false) this.resume();\n } else if (ev === 'readable') {\n if (!state.endEmitted && !state.readableListening) {\n state.readableListening = state.needReadable = true;\n state.flowing = false;\n state.emittedReadable = false;\n debug('on readable', state.length, state.reading);\n\n if (state.length) {\n emitReadable(this);\n } else if (!state.reading) {\n process.nextTick(nReadingNextTick, this);\n }\n }\n }\n\n return res;\n};\n\nReadable.prototype.addListener = Readable.prototype.on;\n\nReadable.prototype.removeListener = function (ev, fn) {\n var res = Stream.prototype.removeListener.call(this, ev, fn);\n\n if (ev === 'readable') {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n\n return res;\n};\n\nReadable.prototype.removeAllListeners = function (ev) {\n var res = Stream.prototype.removeAllListeners.apply(this, arguments);\n\n if (ev === 'readable' || ev === undefined) {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n\n return res;\n};\n\nfunction updateReadableListening(self) {\n var state = self._readableState;\n state.readableListening = self.listenerCount('readable') > 0;\n\n if (state.resumeScheduled && !state.paused) {\n // flowing needs to be set to true now, otherwise\n // the upcoming resume will not flow.\n state.flowing = true; // crude way to check if we should resume\n } else if (self.listenerCount('data') > 0) {\n self.resume();\n }\n}\n\nfunction nReadingNextTick(self) {\n debug('readable nexttick read 0');\n self.read(0);\n} // pause() and resume() are remnants of the legacy readable stream API\n// If the user uses them, then switch into old mode.\n\n\nReadable.prototype.resume = function () {\n var state = this._readableState;\n\n if (!state.flowing) {\n debug('resume'); // we flow only if there is no one listening\n // for readable, but we still have to call\n // resume()\n\n state.flowing = !state.readableListening;\n resume(this, state);\n }\n\n state.paused = false;\n return this;\n};\n\nfunction resume(stream, state) {\n if (!state.resumeScheduled) {\n state.resumeScheduled = true;\n process.nextTick(resume_, stream, state);\n }\n}\n\nfunction resume_(stream, state) {\n debug('resume', state.reading);\n\n if (!state.reading) {\n stream.read(0);\n }\n\n state.resumeScheduled = false;\n stream.emit('resume');\n flow(stream);\n if (state.flowing && !state.reading) stream.read(0);\n}\n\nReadable.prototype.pause = function () {\n debug('call pause flowing=%j', this._readableState.flowing);\n\n if (this._readableState.flowing !== false) {\n debug('pause');\n this._readableState.flowing = false;\n this.emit('pause');\n }\n\n this._readableState.paused = true;\n return this;\n};\n\nfunction flow(stream) {\n var state = stream._readableState;\n debug('flow', state.flowing);\n\n while (state.flowing && stream.read() !== null) {\n ;\n }\n} // wrap an old-style stream as the async data source.\n// This is *not* part of the readable stream interface.\n// It is an ugly unfortunate mess of history.\n\n\nReadable.prototype.wrap = function (stream) {\n var _this = this;\n\n var state = this._readableState;\n var paused = false;\n stream.on('end', function () {\n debug('wrapped end');\n\n if (state.decoder && !state.ended) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) _this.push(chunk);\n }\n\n _this.push(null);\n });\n stream.on('data', function (chunk) {\n debug('wrapped data');\n if (state.decoder) chunk = state.decoder.write(chunk); // don't skip over falsy values in objectMode\n\n if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;\n\n var ret = _this.push(chunk);\n\n if (!ret) {\n paused = true;\n stream.pause();\n }\n }); // proxy all the other methods.\n // important when wrapping filters and duplexes.\n\n for (var i in stream) {\n if (this[i] === undefined && typeof stream[i] === 'function') {\n this[i] = function methodWrap(method) {\n return function methodWrapReturnFunction() {\n return stream[method].apply(stream, arguments);\n };\n }(i);\n }\n } // proxy certain important events.\n\n\n for (var n = 0; n < kProxyEvents.length; n++) {\n stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n]));\n } // when we try to consume some more bytes, simply unpause the\n // underlying stream.\n\n\n this._read = function (n) {\n debug('wrapped _read', n);\n\n if (paused) {\n paused = false;\n stream.resume();\n }\n };\n\n return this;\n};\n\nif (typeof Symbol === 'function') {\n Readable.prototype[Symbol.asyncIterator] = function () {\n if (createReadableStreamAsyncIterator === undefined) {\n createReadableStreamAsyncIterator = require('./internal/streams/async_iterator');\n }\n\n return createReadableStreamAsyncIterator(this);\n };\n}\n\nObject.defineProperty(Readable.prototype, 'readableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.highWaterMark;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState && this._readableState.buffer;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableFlowing', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.flowing;\n },\n set: function set(state) {\n if (this._readableState) {\n this._readableState.flowing = state;\n }\n }\n}); // exposed for testing purposes only.\n\nReadable._fromList = fromList;\nObject.defineProperty(Readable.prototype, 'readableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.length;\n }\n}); // Pluck off n bytes from an array of buffers.\n// Length is the combined lengths of all the buffers in the list.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\n\nfunction fromList(n, state) {\n // nothing buffered\n if (state.length === 0) return null;\n var ret;\n if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {\n // read it all, truncate the list\n if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.first();else ret = state.buffer.concat(state.length);\n state.buffer.clear();\n } else {\n // read part of list\n ret = state.buffer.consume(n, state.decoder);\n }\n return ret;\n}\n\nfunction endReadable(stream) {\n var state = stream._readableState;\n debug('endReadable', state.endEmitted);\n\n if (!state.endEmitted) {\n state.ended = true;\n process.nextTick(endReadableNT, state, stream);\n }\n}\n\nfunction endReadableNT(state, stream) {\n debug('endReadableNT', state.endEmitted, state.length); // Check that we didn't get one last unshift.\n\n if (!state.endEmitted && state.length === 0) {\n state.endEmitted = true;\n stream.readable = false;\n stream.emit('end');\n\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the writable side is ready for autoDestroy as well\n var wState = stream._writableState;\n\n if (!wState || wState.autoDestroy && wState.finished) {\n stream.destroy();\n }\n }\n }\n}\n\nif (typeof Symbol === 'function') {\n Readable.from = function (iterable, opts) {\n if (from === undefined) {\n from = require('./internal/streams/from');\n }\n\n return from(Readable, iterable, opts);\n };\n}\n\nfunction indexOf(xs, x) {\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) return i;\n }\n\n return -1;\n}","module.exports = require('events').EventEmitter;\n","'use strict'; // undocumented cb() API, needed for core, not for public API\n\nfunction destroy(err, cb) {\n var _this = this;\n\n var readableDestroyed = this._readableState && this._readableState.destroyed;\n var writableDestroyed = this._writableState && this._writableState.destroyed;\n\n if (readableDestroyed || writableDestroyed) {\n if (cb) {\n cb(err);\n } else if (err) {\n if (!this._writableState) {\n process.nextTick(emitErrorNT, this, err);\n } else if (!this._writableState.errorEmitted) {\n this._writableState.errorEmitted = true;\n process.nextTick(emitErrorNT, this, err);\n }\n }\n\n return this;\n } // we set destroyed to true before firing error callbacks in order\n // to make it re-entrance safe in case destroy() is called within callbacks\n\n\n if (this._readableState) {\n this._readableState.destroyed = true;\n } // if this is a duplex stream mark the writable part as destroyed as well\n\n\n if (this._writableState) {\n this._writableState.destroyed = true;\n }\n\n this._destroy(err || null, function (err) {\n if (!cb && err) {\n if (!_this._writableState) {\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else if (!_this._writableState.errorEmitted) {\n _this._writableState.errorEmitted = true;\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n } else if (cb) {\n process.nextTick(emitCloseNT, _this);\n cb(err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n });\n\n return this;\n}\n\nfunction emitErrorAndCloseNT(self, err) {\n emitErrorNT(self, err);\n emitCloseNT(self);\n}\n\nfunction emitCloseNT(self) {\n if (self._writableState && !self._writableState.emitClose) return;\n if (self._readableState && !self._readableState.emitClose) return;\n self.emit('close');\n}\n\nfunction undestroy() {\n if (this._readableState) {\n this._readableState.destroyed = false;\n this._readableState.reading = false;\n this._readableState.ended = false;\n this._readableState.endEmitted = false;\n }\n\n if (this._writableState) {\n this._writableState.destroyed = false;\n this._writableState.ended = false;\n this._writableState.ending = false;\n this._writableState.finalCalled = false;\n this._writableState.prefinished = false;\n this._writableState.finished = false;\n this._writableState.errorEmitted = false;\n }\n}\n\nfunction emitErrorNT(self, err) {\n self.emit('error', err);\n}\n\nfunction errorOrDestroy(stream, err) {\n // We have tests that rely on errors being emitted\n // in the same tick, so changing this is semver major.\n // For now when you opt-in to autoDestroy we allow\n // the error to be emitted nextTick. In a future\n // semver major update we should change the default to this.\n var rState = stream._readableState;\n var wState = stream._writableState;\n if (rState && rState.autoDestroy || wState && wState.autoDestroy) stream.destroy(err);else stream.emit('error', err);\n}\n\nmodule.exports = {\n destroy: destroy,\n undestroy: undestroy,\n errorOrDestroy: errorOrDestroy\n};","'use strict';\n\nvar ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE;\n\nfunction highWaterMarkFrom(options, isDuplex, duplexKey) {\n return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null;\n}\n\nfunction getHighWaterMark(state, options, duplexKey, isDuplex) {\n var hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n\n if (hwm != null) {\n if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) {\n var name = isDuplex ? duplexKey : 'highWaterMark';\n throw new ERR_INVALID_OPT_VALUE(name, hwm);\n }\n\n return Math.floor(hwm);\n } // Default value\n\n\n return state.objectMode ? 16 : 16 * 1024;\n}\n\nmodule.exports = {\n getHighWaterMark: getHighWaterMark\n};","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// A bit simpler than readable streams.\n// Implement an async ._write(chunk, encoding, cb), and it'll handle all\n// the drain event emission and buffering.\n'use strict';\n\nmodule.exports = Writable;\n/* */\n\nfunction WriteReq(chunk, encoding, cb) {\n this.chunk = chunk;\n this.encoding = encoding;\n this.callback = cb;\n this.next = null;\n} // It seems a linked list but it is not\n// there will be only 2 of these for each stream\n\n\nfunction CorkedRequest(state) {\n var _this = this;\n\n this.next = null;\n this.entry = null;\n\n this.finish = function () {\n onCorkedFinish(_this, state);\n };\n}\n/* */\n\n/**/\n\n\nvar Duplex;\n/**/\n\nWritable.WritableState = WritableState;\n/**/\n\nvar internalUtil = {\n deprecate: require('util-deprecate')\n};\n/**/\n\n/**/\n\nvar Stream = require('./internal/streams/stream');\n/**/\n\n\nvar Buffer = require('buffer').Buffer;\n\nvar OurUint8Array = global.Uint8Array || function () {};\n\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\n\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n\nvar destroyImpl = require('./internal/streams/destroy');\n\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\n\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED,\n ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES,\n ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END,\n ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING;\n\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\n\nrequire('inherits')(Writable, Stream);\n\nfunction nop() {}\n\nfunction WritableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {}; // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream,\n // e.g. options.readableObjectMode vs. options.writableObjectMode, etc.\n\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag to indicate whether or not this stream\n // contains buffers or objects.\n\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; // the point at which write() starts returning false\n // Note: 0 is a valid value, means that we always return false if\n // the entire buffer is not flushed immediately on write()\n\n this.highWaterMark = getHighWaterMark(this, options, 'writableHighWaterMark', isDuplex); // if _final has been called\n\n this.finalCalled = false; // drain event flag.\n\n this.needDrain = false; // at the start of calling end()\n\n this.ending = false; // when end() has been called, and returned\n\n this.ended = false; // when 'finish' is emitted\n\n this.finished = false; // has it been destroyed\n\n this.destroyed = false; // should we decode strings into buffers before passing to _write?\n // this is here so that some node-core streams can optimize string\n // handling at a lower level.\n\n var noDecode = options.decodeStrings === false;\n this.decodeStrings = !noDecode; // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n\n this.defaultEncoding = options.defaultEncoding || 'utf8'; // not an actual buffer we keep track of, but a measurement\n // of how much we're waiting to get pushed to some underlying\n // socket or file.\n\n this.length = 0; // a flag to see when we're in the middle of a write.\n\n this.writing = false; // when true all writes will be buffered until .uncork() call\n\n this.corked = 0; // a flag to be able to tell if the onwrite cb is called immediately,\n // or on a later tick. We set this to true at first, because any\n // actions that shouldn't happen until \"later\" should generally also\n // not happen before the first write call.\n\n this.sync = true; // a flag to know if we're processing previously buffered items, which\n // may call the _write() callback in the same tick, so that we don't\n // end up in an overlapped onwrite situation.\n\n this.bufferProcessing = false; // the callback that's passed to _write(chunk,cb)\n\n this.onwrite = function (er) {\n onwrite(stream, er);\n }; // the callback that the user supplies to write(chunk,encoding,cb)\n\n\n this.writecb = null; // the amount that is being written when _write is called.\n\n this.writelen = 0;\n this.bufferedRequest = null;\n this.lastBufferedRequest = null; // number of pending user-supplied write callbacks\n // this must be 0 before 'finish' can be emitted\n\n this.pendingcb = 0; // emit prefinish if the only thing we're waiting for is _write cbs\n // This is relevant for synchronous Transform streams\n\n this.prefinished = false; // True if the error was already emitted and should not be thrown again\n\n this.errorEmitted = false; // Should close be emitted on destroy. Defaults to true.\n\n this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'finish' (and potentially 'end')\n\n this.autoDestroy = !!options.autoDestroy; // count buffered requests\n\n this.bufferedRequestCount = 0; // allocate the first CorkedRequest, there is always\n // one allocated and free to use, and we maintain at most two\n\n this.corkedRequestsFree = new CorkedRequest(this);\n}\n\nWritableState.prototype.getBuffer = function getBuffer() {\n var current = this.bufferedRequest;\n var out = [];\n\n while (current) {\n out.push(current);\n current = current.next;\n }\n\n return out;\n};\n\n(function () {\n try {\n Object.defineProperty(WritableState.prototype, 'buffer', {\n get: internalUtil.deprecate(function writableStateBufferGetter() {\n return this.getBuffer();\n }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')\n });\n } catch (_) {}\n})(); // Test _writableState for inheritance to account for Duplex streams,\n// whose prototype chain only points to Readable.\n\n\nvar realHasInstance;\n\nif (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {\n realHasInstance = Function.prototype[Symbol.hasInstance];\n Object.defineProperty(Writable, Symbol.hasInstance, {\n value: function value(object) {\n if (realHasInstance.call(this, object)) return true;\n if (this !== Writable) return false;\n return object && object._writableState instanceof WritableState;\n }\n });\n} else {\n realHasInstance = function realHasInstance(object) {\n return object instanceof this;\n };\n}\n\nfunction Writable(options) {\n Duplex = Duplex || require('./_stream_duplex'); // Writable ctor is applied to Duplexes, too.\n // `realHasInstance` is necessary because using plain `instanceof`\n // would return false, as no `_writableState` property is attached.\n // Trying to use the custom `instanceof` for Writable here will also break the\n // Node.js LazyTransform implementation, which has a non-trivial getter for\n // `_writableState` that would lead to infinite recursion.\n // Checking for a Stream.Duplex instance is faster here instead of inside\n // the WritableState constructor, at least with V8 6.5\n\n var isDuplex = this instanceof Duplex;\n if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options);\n this._writableState = new WritableState(options, this, isDuplex); // legacy.\n\n this.writable = true;\n\n if (options) {\n if (typeof options.write === 'function') this._write = options.write;\n if (typeof options.writev === 'function') this._writev = options.writev;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n if (typeof options.final === 'function') this._final = options.final;\n }\n\n Stream.call(this);\n} // Otherwise people can pipe Writable streams, which is just wrong.\n\n\nWritable.prototype.pipe = function () {\n errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE());\n};\n\nfunction writeAfterEnd(stream, cb) {\n var er = new ERR_STREAM_WRITE_AFTER_END(); // TODO: defer error events consistently everywhere, not just the cb\n\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n} // Checks that a user-supplied chunk is valid, especially for the particular\n// mode the stream is in. Currently this means that `null` is never accepted\n// and undefined/non-string values are only allowed in object mode.\n\n\nfunction validChunk(stream, state, chunk, cb) {\n var er;\n\n if (chunk === null) {\n er = new ERR_STREAM_NULL_VALUES();\n } else if (typeof chunk !== 'string' && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer'], chunk);\n }\n\n if (er) {\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n return false;\n }\n\n return true;\n}\n\nWritable.prototype.write = function (chunk, encoding, cb) {\n var state = this._writableState;\n var ret = false;\n\n var isBuf = !state.objectMode && _isUint8Array(chunk);\n\n if (isBuf && !Buffer.isBuffer(chunk)) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;\n if (typeof cb !== 'function') cb = nop;\n if (state.ending) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {\n state.pendingcb++;\n ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);\n }\n return ret;\n};\n\nWritable.prototype.cork = function () {\n this._writableState.corked++;\n};\n\nWritable.prototype.uncork = function () {\n var state = this._writableState;\n\n if (state.corked) {\n state.corked--;\n if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);\n }\n};\n\nWritable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n // node::ParseEncoding() requires lower case.\n if (typeof encoding === 'string') encoding = encoding.toLowerCase();\n if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding);\n this._writableState.defaultEncoding = encoding;\n return this;\n};\n\nObject.defineProperty(Writable.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\n\nfunction decodeChunk(state, chunk, encoding) {\n if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {\n chunk = Buffer.from(chunk, encoding);\n }\n\n return chunk;\n}\n\nObject.defineProperty(Writable.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n}); // if we're already writing something, then just put this\n// in the queue, and wait our turn. Otherwise, call _write\n// If we return false, then we need a drain event, so set that flag.\n\nfunction writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {\n if (!isBuf) {\n var newChunk = decodeChunk(state, chunk, encoding);\n\n if (chunk !== newChunk) {\n isBuf = true;\n encoding = 'buffer';\n chunk = newChunk;\n }\n }\n\n var len = state.objectMode ? 1 : chunk.length;\n state.length += len;\n var ret = state.length < state.highWaterMark; // we must ensure that previous needDrain will not be reset to false.\n\n if (!ret) state.needDrain = true;\n\n if (state.writing || state.corked) {\n var last = state.lastBufferedRequest;\n state.lastBufferedRequest = {\n chunk: chunk,\n encoding: encoding,\n isBuf: isBuf,\n callback: cb,\n next: null\n };\n\n if (last) {\n last.next = state.lastBufferedRequest;\n } else {\n state.bufferedRequest = state.lastBufferedRequest;\n }\n\n state.bufferedRequestCount += 1;\n } else {\n doWrite(stream, state, false, len, chunk, encoding, cb);\n }\n\n return ret;\n}\n\nfunction doWrite(stream, state, writev, len, chunk, encoding, cb) {\n state.writelen = len;\n state.writecb = cb;\n state.writing = true;\n state.sync = true;\n if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED('write'));else if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);\n state.sync = false;\n}\n\nfunction onwriteError(stream, state, sync, er, cb) {\n --state.pendingcb;\n\n if (sync) {\n // defer the callback if we are being called synchronously\n // to avoid piling up things on the stack\n process.nextTick(cb, er); // this can emit finish, and it will always happen\n // after error\n\n process.nextTick(finishMaybe, stream, state);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er);\n } else {\n // the caller expect this to happen before if\n // it is async\n cb(er);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er); // this can emit finish, but finish must\n // always follow error\n\n finishMaybe(stream, state);\n }\n}\n\nfunction onwriteStateUpdate(state) {\n state.writing = false;\n state.writecb = null;\n state.length -= state.writelen;\n state.writelen = 0;\n}\n\nfunction onwrite(stream, er) {\n var state = stream._writableState;\n var sync = state.sync;\n var cb = state.writecb;\n if (typeof cb !== 'function') throw new ERR_MULTIPLE_CALLBACK();\n onwriteStateUpdate(state);\n if (er) onwriteError(stream, state, sync, er, cb);else {\n // Check if we're actually ready to finish, but don't emit yet\n var finished = needFinish(state) || stream.destroyed;\n\n if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {\n clearBuffer(stream, state);\n }\n\n if (sync) {\n process.nextTick(afterWrite, stream, state, finished, cb);\n } else {\n afterWrite(stream, state, finished, cb);\n }\n }\n}\n\nfunction afterWrite(stream, state, finished, cb) {\n if (!finished) onwriteDrain(stream, state);\n state.pendingcb--;\n cb();\n finishMaybe(stream, state);\n} // Must force callback to be called on nextTick, so that we don't\n// emit 'drain' before the write() consumer gets the 'false' return\n// value, and has a chance to attach a 'drain' listener.\n\n\nfunction onwriteDrain(stream, state) {\n if (state.length === 0 && state.needDrain) {\n state.needDrain = false;\n stream.emit('drain');\n }\n} // if there's something in the buffer waiting, then process it\n\n\nfunction clearBuffer(stream, state) {\n state.bufferProcessing = true;\n var entry = state.bufferedRequest;\n\n if (stream._writev && entry && entry.next) {\n // Fast case, write everything using _writev()\n var l = state.bufferedRequestCount;\n var buffer = new Array(l);\n var holder = state.corkedRequestsFree;\n holder.entry = entry;\n var count = 0;\n var allBuffers = true;\n\n while (entry) {\n buffer[count] = entry;\n if (!entry.isBuf) allBuffers = false;\n entry = entry.next;\n count += 1;\n }\n\n buffer.allBuffers = allBuffers;\n doWrite(stream, state, true, state.length, buffer, '', holder.finish); // doWrite is almost always async, defer these to save a bit of time\n // as the hot path ends with doWrite\n\n state.pendingcb++;\n state.lastBufferedRequest = null;\n\n if (holder.next) {\n state.corkedRequestsFree = holder.next;\n holder.next = null;\n } else {\n state.corkedRequestsFree = new CorkedRequest(state);\n }\n\n state.bufferedRequestCount = 0;\n } else {\n // Slow case, write chunks one-by-one\n while (entry) {\n var chunk = entry.chunk;\n var encoding = entry.encoding;\n var cb = entry.callback;\n var len = state.objectMode ? 1 : chunk.length;\n doWrite(stream, state, false, len, chunk, encoding, cb);\n entry = entry.next;\n state.bufferedRequestCount--; // if we didn't call the onwrite immediately, then\n // it means that we need to wait until it does.\n // also, that means that the chunk and cb are currently\n // being processed, so move the buffer counter past them.\n\n if (state.writing) {\n break;\n }\n }\n\n if (entry === null) state.lastBufferedRequest = null;\n }\n\n state.bufferedRequest = entry;\n state.bufferProcessing = false;\n}\n\nWritable.prototype._write = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_write()'));\n};\n\nWritable.prototype._writev = null;\n\nWritable.prototype.end = function (chunk, encoding, cb) {\n var state = this._writableState;\n\n if (typeof chunk === 'function') {\n cb = chunk;\n chunk = null;\n encoding = null;\n } else if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (chunk !== null && chunk !== undefined) this.write(chunk, encoding); // .end() fully uncorks\n\n if (state.corked) {\n state.corked = 1;\n this.uncork();\n } // ignore unnecessary end() calls.\n\n\n if (!state.ending) endWritable(this, state, cb);\n return this;\n};\n\nObject.defineProperty(Writable.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n});\n\nfunction needFinish(state) {\n return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;\n}\n\nfunction callFinal(stream, state) {\n stream._final(function (err) {\n state.pendingcb--;\n\n if (err) {\n errorOrDestroy(stream, err);\n }\n\n state.prefinished = true;\n stream.emit('prefinish');\n finishMaybe(stream, state);\n });\n}\n\nfunction prefinish(stream, state) {\n if (!state.prefinished && !state.finalCalled) {\n if (typeof stream._final === 'function' && !state.destroyed) {\n state.pendingcb++;\n state.finalCalled = true;\n process.nextTick(callFinal, stream, state);\n } else {\n state.prefinished = true;\n stream.emit('prefinish');\n }\n }\n}\n\nfunction finishMaybe(stream, state) {\n var need = needFinish(state);\n\n if (need) {\n prefinish(stream, state);\n\n if (state.pendingcb === 0) {\n state.finished = true;\n stream.emit('finish');\n\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the readable side is ready for autoDestroy as well\n var rState = stream._readableState;\n\n if (!rState || rState.autoDestroy && rState.endEmitted) {\n stream.destroy();\n }\n }\n }\n }\n\n return need;\n}\n\nfunction endWritable(stream, state, cb) {\n state.ending = true;\n finishMaybe(stream, state);\n\n if (cb) {\n if (state.finished) process.nextTick(cb);else stream.once('finish', cb);\n }\n\n state.ended = true;\n stream.writable = false;\n}\n\nfunction onCorkedFinish(corkReq, state, err) {\n var entry = corkReq.entry;\n corkReq.entry = null;\n\n while (entry) {\n var cb = entry.callback;\n state.pendingcb--;\n cb(err);\n entry = entry.next;\n } // reuse the free corkReq.\n\n\n state.corkedRequestsFree.next = corkReq;\n}\n\nObject.defineProperty(Writable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._writableState === undefined) {\n return false;\n }\n\n return this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._writableState) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._writableState.destroyed = value;\n }\n});\nWritable.prototype.destroy = destroyImpl.destroy;\nWritable.prototype._undestroy = destroyImpl.undestroy;\n\nWritable.prototype._destroy = function (err, cb) {\n cb(err);\n};","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// a transform stream is a readable/writable stream where you do\n// something with the data. Sometimes it's called a \"filter\",\n// but that's not a great name for it, since that implies a thing where\n// some bits pass through, and others are simply ignored. (That would\n// be a valid example of a transform, of course.)\n//\n// While the output is causally related to the input, it's not a\n// necessarily symmetric or synchronous transformation. For example,\n// a zlib stream might take multiple plain-text writes(), and then\n// emit a single compressed chunk some time in the future.\n//\n// Here's how this works:\n//\n// The Transform stream has all the aspects of the readable and writable\n// stream classes. When you write(chunk), that calls _write(chunk,cb)\n// internally, and returns false if there's a lot of pending writes\n// buffered up. When you call read(), that calls _read(n) until\n// there's enough pending readable data buffered up.\n//\n// In a transform stream, the written data is placed in a buffer. When\n// _read(n) is called, it transforms the queued up data, calling the\n// buffered _write cb's as it consumes chunks. If consuming a single\n// written chunk would result in multiple output chunks, then the first\n// outputted bit calls the readcb, and subsequent chunks just go into\n// the read buffer, and will cause it to emit 'readable' if necessary.\n//\n// This way, back-pressure is actually determined by the reading side,\n// since _read has to be called to start processing a new chunk. However,\n// a pathological inflate type of transform can cause excessive buffering\n// here. For example, imagine a stream where every byte of input is\n// interpreted as an integer from 0-255, and then results in that many\n// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in\n// 1kb of data being output. In this case, you could write a very small\n// amount of input, and end up with a very large amount of output. In\n// such a pathological inflating mechanism, there'd be no way to tell\n// the system to stop doing the transform. A single 4MB write could\n// cause the system to run out of memory.\n//\n// However, even in such a pathological case, only a single written chunk\n// would be consumed, and then the rest would wait (un-transformed) until\n// the results of the previous transformed chunk were consumed.\n'use strict';\n\nmodule.exports = Transform;\n\nvar _require$codes = require('../errors').codes,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING,\n ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0;\n\nvar Duplex = require('./_stream_duplex');\n\nrequire('inherits')(Transform, Duplex);\n\nfunction afterTransform(er, data) {\n var ts = this._transformState;\n ts.transforming = false;\n var cb = ts.writecb;\n\n if (cb === null) {\n return this.emit('error', new ERR_MULTIPLE_CALLBACK());\n }\n\n ts.writechunk = null;\n ts.writecb = null;\n if (data != null) // single equals check for both `null` and `undefined`\n this.push(data);\n cb(er);\n var rs = this._readableState;\n rs.reading = false;\n\n if (rs.needReadable || rs.length < rs.highWaterMark) {\n this._read(rs.highWaterMark);\n }\n}\n\nfunction Transform(options) {\n if (!(this instanceof Transform)) return new Transform(options);\n Duplex.call(this, options);\n this._transformState = {\n afterTransform: afterTransform.bind(this),\n needTransform: false,\n transforming: false,\n writecb: null,\n writechunk: null,\n writeencoding: null\n }; // start out asking for a readable event once data is transformed.\n\n this._readableState.needReadable = true; // we have implemented the _read method, and done the other things\n // that Readable wants before the first _read call, so unset the\n // sync guard flag.\n\n this._readableState.sync = false;\n\n if (options) {\n if (typeof options.transform === 'function') this._transform = options.transform;\n if (typeof options.flush === 'function') this._flush = options.flush;\n } // When the writable side finishes, then flush out anything remaining.\n\n\n this.on('prefinish', prefinish);\n}\n\nfunction prefinish() {\n var _this = this;\n\n if (typeof this._flush === 'function' && !this._readableState.destroyed) {\n this._flush(function (er, data) {\n done(_this, er, data);\n });\n } else {\n done(this, null, null);\n }\n}\n\nTransform.prototype.push = function (chunk, encoding) {\n this._transformState.needTransform = false;\n return Duplex.prototype.push.call(this, chunk, encoding);\n}; // This is the part where you do stuff!\n// override this function in implementation classes.\n// 'chunk' is an input chunk.\n//\n// Call `push(newChunk)` to pass along transformed output\n// to the readable side. You may call 'push' zero or more times.\n//\n// Call `cb(err)` when you are done with this chunk. If you pass\n// an error, then that'll put the hurt on the whole operation. If you\n// never call cb(), then you'll never get another chunk.\n\n\nTransform.prototype._transform = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_transform()'));\n};\n\nTransform.prototype._write = function (chunk, encoding, cb) {\n var ts = this._transformState;\n ts.writecb = cb;\n ts.writechunk = chunk;\n ts.writeencoding = encoding;\n\n if (!ts.transforming) {\n var rs = this._readableState;\n if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);\n }\n}; // Doesn't matter what the args are here.\n// _transform does all the work.\n// That we got here means that the readable side wants more data.\n\n\nTransform.prototype._read = function (n) {\n var ts = this._transformState;\n\n if (ts.writechunk !== null && !ts.transforming) {\n ts.transforming = true;\n\n this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);\n } else {\n // mark that we need a transform, so that any data that comes in\n // will get processed, now that we've asked for it.\n ts.needTransform = true;\n }\n};\n\nTransform.prototype._destroy = function (err, cb) {\n Duplex.prototype._destroy.call(this, err, function (err2) {\n cb(err2);\n });\n};\n\nfunction done(stream, er, data) {\n if (er) return stream.emit('error', er);\n if (data != null) // single equals check for both `null` and `undefined`\n stream.push(data); // TODO(BridgeAR): Write a test for these two error cases\n // if there's nothing in the write buffer, then that means\n // that nothing more will ever be provided\n\n if (stream._writableState.length) throw new ERR_TRANSFORM_WITH_LENGTH_0();\n if (stream._transformState.transforming) throw new ERR_TRANSFORM_ALREADY_TRANSFORMING();\n return stream.push(null);\n}","'use strict'\nvar Buffer = require('safe-buffer').Buffer\nvar Transform = require('readable-stream').Transform\nvar inherits = require('inherits')\n\nfunction throwIfNotStringOrBuffer (val, prefix) {\n if (!Buffer.isBuffer(val) && typeof val !== 'string') {\n throw new TypeError(prefix + ' must be a string or a buffer')\n }\n}\n\nfunction HashBase (blockSize) {\n Transform.call(this)\n\n this._block = Buffer.allocUnsafe(blockSize)\n this._blockSize = blockSize\n this._blockOffset = 0\n this._length = [0, 0, 0, 0]\n\n this._finalized = false\n}\n\ninherits(HashBase, Transform)\n\nHashBase.prototype._transform = function (chunk, encoding, callback) {\n var error = null\n try {\n this.update(chunk, encoding)\n } catch (err) {\n error = err\n }\n\n callback(error)\n}\n\nHashBase.prototype._flush = function (callback) {\n var error = null\n try {\n this.push(this.digest())\n } catch (err) {\n error = err\n }\n\n callback(error)\n}\n\nHashBase.prototype.update = function (data, encoding) {\n throwIfNotStringOrBuffer(data, 'Data')\n if (this._finalized) throw new Error('Digest already called')\n if (!Buffer.isBuffer(data)) data = Buffer.from(data, encoding)\n\n // consume data\n var block = this._block\n var offset = 0\n while (this._blockOffset + data.length - offset >= this._blockSize) {\n for (var i = this._blockOffset; i < this._blockSize;) block[i++] = data[offset++]\n this._update()\n this._blockOffset = 0\n }\n while (offset < data.length) block[this._blockOffset++] = data[offset++]\n\n // update length\n for (var j = 0, carry = data.length * 8; carry > 0; ++j) {\n this._length[j] += carry\n carry = (this._length[j] / 0x0100000000) | 0\n if (carry > 0) this._length[j] -= 0x0100000000 * carry\n }\n\n return this\n}\n\nHashBase.prototype._update = function () {\n throw new Error('_update is not implemented')\n}\n\nHashBase.prototype.digest = function (encoding) {\n if (this._finalized) throw new Error('Digest already called')\n this._finalized = true\n\n var digest = this._digest()\n if (encoding !== undefined) digest = digest.toString(encoding)\n\n // reset state\n this._block.fill(0)\n this._blockOffset = 0\n for (var i = 0; i < 4; ++i) this._length[i] = 0\n\n return digest\n}\n\nHashBase.prototype._digest = function () {\n throw new Error('_digest is not implemented')\n}\n\nmodule.exports = HashBase\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n'use strict';\n\nmodule.exports = Readable;\n/**/\n\nvar Duplex;\n/**/\n\nReadable.ReadableState = ReadableState;\n/**/\n\nvar EE = require('events').EventEmitter;\n\nvar EElistenerCount = function EElistenerCount(emitter, type) {\n return emitter.listeners(type).length;\n};\n/**/\n\n/**/\n\n\nvar Stream = require('./internal/streams/stream');\n/**/\n\n\nvar Buffer = require('buffer').Buffer;\n\nvar OurUint8Array = global.Uint8Array || function () {};\n\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\n\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n/**/\n\n\nvar debugUtil = require('util');\n\nvar debug;\n\nif (debugUtil && debugUtil.debuglog) {\n debug = debugUtil.debuglog('stream');\n} else {\n debug = function debug() {};\n}\n/**/\n\n\nvar BufferList = require('./internal/streams/buffer_list');\n\nvar destroyImpl = require('./internal/streams/destroy');\n\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\n\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_STREAM_UNSHIFT_AFTER_END_EVENT = _require$codes.ERR_STREAM_UNSHIFT_AFTER_END_EVENT; // Lazy loaded to improve the startup performance.\n\n\nvar StringDecoder;\nvar createReadableStreamAsyncIterator;\nvar from;\n\nrequire('inherits')(Readable, Stream);\n\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\nvar kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];\n\nfunction prependListener(emitter, event, fn) {\n // Sadly this is not cacheable as some libraries bundle their own\n // event emitter implementation with them.\n if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn); // This is a hack to make sure that our error handler is attached before any\n // userland ones. NEVER DO THIS. This is here only because this code needs\n // to continue to work with older versions of Node.js that do not include\n // the prependListener() method. The goal is to eventually remove this hack.\n\n if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];\n}\n\nfunction ReadableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {}; // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream.\n // These options can be provided separately as readableXXX and writableXXX.\n\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag. Used to make read(n) ignore n and to\n // make all the buffer merging and length checks go away\n\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode; // the point at which it stops calling _read() to fill the buffer\n // Note: 0 is a valid value, means \"don't call _read preemptively ever\"\n\n this.highWaterMark = getHighWaterMark(this, options, 'readableHighWaterMark', isDuplex); // A linked list is used to store data chunks instead of an array because the\n // linked list can remove elements from the beginning faster than\n // array.shift()\n\n this.buffer = new BufferList();\n this.length = 0;\n this.pipes = null;\n this.pipesCount = 0;\n this.flowing = null;\n this.ended = false;\n this.endEmitted = false;\n this.reading = false; // a flag to be able to tell if the event 'readable'/'data' is emitted\n // immediately, or on a later tick. We set this to true at first, because\n // any actions that shouldn't happen until \"later\" should generally also\n // not happen before the first read call.\n\n this.sync = true; // whenever we return null, then we set a flag to say\n // that we're awaiting a 'readable' event emission.\n\n this.needReadable = false;\n this.emittedReadable = false;\n this.readableListening = false;\n this.resumeScheduled = false;\n this.paused = true; // Should close be emitted on destroy. Defaults to true.\n\n this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'end' (and potentially 'finish')\n\n this.autoDestroy = !!options.autoDestroy; // has it been destroyed\n\n this.destroyed = false; // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n\n this.defaultEncoding = options.defaultEncoding || 'utf8'; // the number of writers that are awaiting a drain event in .pipe()s\n\n this.awaitDrain = 0; // if true, a maybeReadMore has been scheduled\n\n this.readingMore = false;\n this.decoder = null;\n this.encoding = null;\n\n if (options.encoding) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n this.decoder = new StringDecoder(options.encoding);\n this.encoding = options.encoding;\n }\n}\n\nfunction Readable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n if (!(this instanceof Readable)) return new Readable(options); // Checking for a Stream.Duplex instance is faster here instead of inside\n // the ReadableState constructor, at least with V8 6.5\n\n var isDuplex = this instanceof Duplex;\n this._readableState = new ReadableState(options, this, isDuplex); // legacy\n\n this.readable = true;\n\n if (options) {\n if (typeof options.read === 'function') this._read = options.read;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n }\n\n Stream.call(this);\n}\n\nObject.defineProperty(Readable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined) {\n return false;\n }\n\n return this._readableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._readableState) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._readableState.destroyed = value;\n }\n});\nReadable.prototype.destroy = destroyImpl.destroy;\nReadable.prototype._undestroy = destroyImpl.undestroy;\n\nReadable.prototype._destroy = function (err, cb) {\n cb(err);\n}; // Manually shove something into the read() buffer.\n// This returns true if the highWaterMark has not been hit yet,\n// similar to how Writable.write() returns true if you should\n// write() some more.\n\n\nReadable.prototype.push = function (chunk, encoding) {\n var state = this._readableState;\n var skipChunkCheck;\n\n if (!state.objectMode) {\n if (typeof chunk === 'string') {\n encoding = encoding || state.defaultEncoding;\n\n if (encoding !== state.encoding) {\n chunk = Buffer.from(chunk, encoding);\n encoding = '';\n }\n\n skipChunkCheck = true;\n }\n } else {\n skipChunkCheck = true;\n }\n\n return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);\n}; // Unshift should *always* be something directly out of read()\n\n\nReadable.prototype.unshift = function (chunk) {\n return readableAddChunk(this, chunk, null, true, false);\n};\n\nfunction readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {\n debug('readableAddChunk', chunk);\n var state = stream._readableState;\n\n if (chunk === null) {\n state.reading = false;\n onEofChunk(stream, state);\n } else {\n var er;\n if (!skipChunkCheck) er = chunkInvalid(state, chunk);\n\n if (er) {\n errorOrDestroy(stream, er);\n } else if (state.objectMode || chunk && chunk.length > 0) {\n if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (addToFront) {\n if (state.endEmitted) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT());else addChunk(stream, state, chunk, true);\n } else if (state.ended) {\n errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF());\n } else if (state.destroyed) {\n return false;\n } else {\n state.reading = false;\n\n if (state.decoder && !encoding) {\n chunk = state.decoder.write(chunk);\n if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);\n } else {\n addChunk(stream, state, chunk, false);\n }\n }\n } else if (!addToFront) {\n state.reading = false;\n maybeReadMore(stream, state);\n }\n } // We can push more data if we are below the highWaterMark.\n // Also, if we have no data yet, we can stand some more bytes.\n // This is to work around cases where hwm=0, such as the repl.\n\n\n return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n}\n\nfunction addChunk(stream, state, chunk, addToFront) {\n if (state.flowing && state.length === 0 && !state.sync) {\n state.awaitDrain = 0;\n stream.emit('data', chunk);\n } else {\n // update the buffer info.\n state.length += state.objectMode ? 1 : chunk.length;\n if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);\n if (state.needReadable) emitReadable(stream);\n }\n\n maybeReadMore(stream, state);\n}\n\nfunction chunkInvalid(state, chunk) {\n var er;\n\n if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer', 'Uint8Array'], chunk);\n }\n\n return er;\n}\n\nReadable.prototype.isPaused = function () {\n return this._readableState.flowing === false;\n}; // backwards compatibility.\n\n\nReadable.prototype.setEncoding = function (enc) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n var decoder = new StringDecoder(enc);\n this._readableState.decoder = decoder; // If setEncoding(null), decoder.encoding equals utf8\n\n this._readableState.encoding = this._readableState.decoder.encoding; // Iterate over current buffer to convert already stored Buffers:\n\n var p = this._readableState.buffer.head;\n var content = '';\n\n while (p !== null) {\n content += decoder.write(p.data);\n p = p.next;\n }\n\n this._readableState.buffer.clear();\n\n if (content !== '') this._readableState.buffer.push(content);\n this._readableState.length = content.length;\n return this;\n}; // Don't raise the hwm > 1GB\n\n\nvar MAX_HWM = 0x40000000;\n\nfunction computeNewHighWaterMark(n) {\n if (n >= MAX_HWM) {\n // TODO(ronag): Throw ERR_VALUE_OUT_OF_RANGE.\n n = MAX_HWM;\n } else {\n // Get the next highest power of 2 to prevent increasing hwm excessively in\n // tiny amounts\n n--;\n n |= n >>> 1;\n n |= n >>> 2;\n n |= n >>> 4;\n n |= n >>> 8;\n n |= n >>> 16;\n n++;\n }\n\n return n;\n} // This function is designed to be inlinable, so please take care when making\n// changes to the function body.\n\n\nfunction howMuchToRead(n, state) {\n if (n <= 0 || state.length === 0 && state.ended) return 0;\n if (state.objectMode) return 1;\n\n if (n !== n) {\n // Only flow one buffer at a time\n if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;\n } // If we're asking for more than the current hwm, then raise the hwm.\n\n\n if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);\n if (n <= state.length) return n; // Don't have enough\n\n if (!state.ended) {\n state.needReadable = true;\n return 0;\n }\n\n return state.length;\n} // you can override either this method, or the async _read(n) below.\n\n\nReadable.prototype.read = function (n) {\n debug('read', n);\n n = parseInt(n, 10);\n var state = this._readableState;\n var nOrig = n;\n if (n !== 0) state.emittedReadable = false; // if we're doing read(0) to trigger a readable event, but we\n // already have a bunch of data in the buffer, then just trigger\n // the 'readable' event and move on.\n\n if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n debug('read: emitReadable', state.length, state.ended);\n if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);\n return null;\n }\n\n n = howMuchToRead(n, state); // if we've ended, and we're now clear, then finish it up.\n\n if (n === 0 && state.ended) {\n if (state.length === 0) endReadable(this);\n return null;\n } // All the actual chunk generation logic needs to be\n // *below* the call to _read. The reason is that in certain\n // synthetic stream cases, such as passthrough streams, _read\n // may be a completely synchronous operation which may change\n // the state of the read buffer, providing enough data when\n // before there was *not* enough.\n //\n // So, the steps are:\n // 1. Figure out what the state of things will be after we do\n // a read from the buffer.\n //\n // 2. If that resulting state will trigger a _read, then call _read.\n // Note that this may be asynchronous, or synchronous. Yes, it is\n // deeply ugly to write APIs this way, but that still doesn't mean\n // that the Readable class should behave improperly, as streams are\n // designed to be sync/async agnostic.\n // Take note if the _read call is sync or async (ie, if the read call\n // has returned yet), so that we know whether or not it's safe to emit\n // 'readable' etc.\n //\n // 3. Actually pull the requested chunks out of the buffer and return.\n // if we need a readable event, then we need to do some reading.\n\n\n var doRead = state.needReadable;\n debug('need readable', doRead); // if we currently have less than the highWaterMark, then also read some\n\n if (state.length === 0 || state.length - n < state.highWaterMark) {\n doRead = true;\n debug('length less than watermark', doRead);\n } // however, if we've ended, then there's no point, and if we're already\n // reading, then it's unnecessary.\n\n\n if (state.ended || state.reading) {\n doRead = false;\n debug('reading or ended', doRead);\n } else if (doRead) {\n debug('do read');\n state.reading = true;\n state.sync = true; // if the length is currently zero, then we *need* a readable event.\n\n if (state.length === 0) state.needReadable = true; // call internal read method\n\n this._read(state.highWaterMark);\n\n state.sync = false; // If _read pushed data synchronously, then `reading` will be false,\n // and we need to re-evaluate how much data we can return to the user.\n\n if (!state.reading) n = howMuchToRead(nOrig, state);\n }\n\n var ret;\n if (n > 0) ret = fromList(n, state);else ret = null;\n\n if (ret === null) {\n state.needReadable = state.length <= state.highWaterMark;\n n = 0;\n } else {\n state.length -= n;\n state.awaitDrain = 0;\n }\n\n if (state.length === 0) {\n // If we have nothing in the buffer, then we want to know\n // as soon as we *do* get something into the buffer.\n if (!state.ended) state.needReadable = true; // If we tried to read() past the EOF, then emit end on the next tick.\n\n if (nOrig !== n && state.ended) endReadable(this);\n }\n\n if (ret !== null) this.emit('data', ret);\n return ret;\n};\n\nfunction onEofChunk(stream, state) {\n debug('onEofChunk');\n if (state.ended) return;\n\n if (state.decoder) {\n var chunk = state.decoder.end();\n\n if (chunk && chunk.length) {\n state.buffer.push(chunk);\n state.length += state.objectMode ? 1 : chunk.length;\n }\n }\n\n state.ended = true;\n\n if (state.sync) {\n // if we are sync, wait until next tick to emit the data.\n // Otherwise we risk emitting data in the flow()\n // the readable code triggers during a read() call\n emitReadable(stream);\n } else {\n // emit 'readable' now to make sure it gets picked up.\n state.needReadable = false;\n\n if (!state.emittedReadable) {\n state.emittedReadable = true;\n emitReadable_(stream);\n }\n }\n} // Don't emit readable right away in sync mode, because this can trigger\n// another read() call => stack overflow. This way, it might trigger\n// a nextTick recursion warning, but that's not so bad.\n\n\nfunction emitReadable(stream) {\n var state = stream._readableState;\n debug('emitReadable', state.needReadable, state.emittedReadable);\n state.needReadable = false;\n\n if (!state.emittedReadable) {\n debug('emitReadable', state.flowing);\n state.emittedReadable = true;\n process.nextTick(emitReadable_, stream);\n }\n}\n\nfunction emitReadable_(stream) {\n var state = stream._readableState;\n debug('emitReadable_', state.destroyed, state.length, state.ended);\n\n if (!state.destroyed && (state.length || state.ended)) {\n stream.emit('readable');\n state.emittedReadable = false;\n } // The stream needs another readable event if\n // 1. It is not flowing, as the flow mechanism will take\n // care of it.\n // 2. It is not ended.\n // 3. It is below the highWaterMark, so we can schedule\n // another readable later.\n\n\n state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark;\n flow(stream);\n} // at this point, the user has presumably seen the 'readable' event,\n// and called read() to consume some data. that may have triggered\n// in turn another _read(n) call, in which case reading = true if\n// it's in progress.\n// However, if we're not ended, or reading, and the length < hwm,\n// then go ahead and try to read some more preemptively.\n\n\nfunction maybeReadMore(stream, state) {\n if (!state.readingMore) {\n state.readingMore = true;\n process.nextTick(maybeReadMore_, stream, state);\n }\n}\n\nfunction maybeReadMore_(stream, state) {\n // Attempt to read more data if we should.\n //\n // The conditions for reading more data are (one of):\n // - Not enough data buffered (state.length < state.highWaterMark). The loop\n // is responsible for filling the buffer with enough data if such data\n // is available. If highWaterMark is 0 and we are not in the flowing mode\n // we should _not_ attempt to buffer any extra data. We'll get more data\n // when the stream consumer calls read() instead.\n // - No data in the buffer, and the stream is in flowing mode. In this mode\n // the loop below is responsible for ensuring read() is called. Failing to\n // call read here would abort the flow and there's no other mechanism for\n // continuing the flow if the stream consumer has just subscribed to the\n // 'data' event.\n //\n // In addition to the above conditions to keep reading data, the following\n // conditions prevent the data from being read:\n // - The stream has ended (state.ended).\n // - There is already a pending 'read' operation (state.reading). This is a\n // case where the the stream has called the implementation defined _read()\n // method, but they are processing the call asynchronously and have _not_\n // called push() with new data. In this case we skip performing more\n // read()s. The execution ends in this method again after the _read() ends\n // up calling push() with more data.\n while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) {\n var len = state.length;\n debug('maybeReadMore read 0');\n stream.read(0);\n if (len === state.length) // didn't get any data, stop spinning.\n break;\n }\n\n state.readingMore = false;\n} // abstract method. to be overridden in specific implementation classes.\n// call cb(er, data) where data is <= n in length.\n// for virtual (non-string, non-buffer) streams, \"length\" is somewhat\n// arbitrary, and perhaps not very meaningful.\n\n\nReadable.prototype._read = function (n) {\n errorOrDestroy(this, new ERR_METHOD_NOT_IMPLEMENTED('_read()'));\n};\n\nReadable.prototype.pipe = function (dest, pipeOpts) {\n var src = this;\n var state = this._readableState;\n\n switch (state.pipesCount) {\n case 0:\n state.pipes = dest;\n break;\n\n case 1:\n state.pipes = [state.pipes, dest];\n break;\n\n default:\n state.pipes.push(dest);\n break;\n }\n\n state.pipesCount += 1;\n debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);\n var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;\n var endFn = doEnd ? onend : unpipe;\n if (state.endEmitted) process.nextTick(endFn);else src.once('end', endFn);\n dest.on('unpipe', onunpipe);\n\n function onunpipe(readable, unpipeInfo) {\n debug('onunpipe');\n\n if (readable === src) {\n if (unpipeInfo && unpipeInfo.hasUnpiped === false) {\n unpipeInfo.hasUnpiped = true;\n cleanup();\n }\n }\n }\n\n function onend() {\n debug('onend');\n dest.end();\n } // when the dest drains, it reduces the awaitDrain counter\n // on the source. This would be more elegant with a .once()\n // handler in flow(), but adding and removing repeatedly is\n // too slow.\n\n\n var ondrain = pipeOnDrain(src);\n dest.on('drain', ondrain);\n var cleanedUp = false;\n\n function cleanup() {\n debug('cleanup'); // cleanup event handlers once the pipe is broken\n\n dest.removeListener('close', onclose);\n dest.removeListener('finish', onfinish);\n dest.removeListener('drain', ondrain);\n dest.removeListener('error', onerror);\n dest.removeListener('unpipe', onunpipe);\n src.removeListener('end', onend);\n src.removeListener('end', unpipe);\n src.removeListener('data', ondata);\n cleanedUp = true; // if the reader is waiting for a drain event from this\n // specific writer, then it would cause it to never start\n // flowing again.\n // So, if this is awaiting a drain, then we just call it now.\n // If we don't know, then assume that we are waiting for one.\n\n if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();\n }\n\n src.on('data', ondata);\n\n function ondata(chunk) {\n debug('ondata');\n var ret = dest.write(chunk);\n debug('dest.write', ret);\n\n if (ret === false) {\n // If the user unpiped during `dest.write()`, it is possible\n // to get stuck in a permanently paused state if that write\n // also returned false.\n // => Check whether `dest` is still a piping destination.\n if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {\n debug('false write response, pause', state.awaitDrain);\n state.awaitDrain++;\n }\n\n src.pause();\n }\n } // if the dest has an error, then stop piping into it.\n // however, don't suppress the throwing behavior for this.\n\n\n function onerror(er) {\n debug('onerror', er);\n unpipe();\n dest.removeListener('error', onerror);\n if (EElistenerCount(dest, 'error') === 0) errorOrDestroy(dest, er);\n } // Make sure our error handler is attached before userland ones.\n\n\n prependListener(dest, 'error', onerror); // Both close and finish should trigger unpipe, but only once.\n\n function onclose() {\n dest.removeListener('finish', onfinish);\n unpipe();\n }\n\n dest.once('close', onclose);\n\n function onfinish() {\n debug('onfinish');\n dest.removeListener('close', onclose);\n unpipe();\n }\n\n dest.once('finish', onfinish);\n\n function unpipe() {\n debug('unpipe');\n src.unpipe(dest);\n } // tell the dest that it's being piped to\n\n\n dest.emit('pipe', src); // start the flow if it hasn't been started already.\n\n if (!state.flowing) {\n debug('pipe resume');\n src.resume();\n }\n\n return dest;\n};\n\nfunction pipeOnDrain(src) {\n return function pipeOnDrainFunctionResult() {\n var state = src._readableState;\n debug('pipeOnDrain', state.awaitDrain);\n if (state.awaitDrain) state.awaitDrain--;\n\n if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {\n state.flowing = true;\n flow(src);\n }\n };\n}\n\nReadable.prototype.unpipe = function (dest) {\n var state = this._readableState;\n var unpipeInfo = {\n hasUnpiped: false\n }; // if we're not piping anywhere, then do nothing.\n\n if (state.pipesCount === 0) return this; // just one destination. most common case.\n\n if (state.pipesCount === 1) {\n // passed in one, but it's not the right one.\n if (dest && dest !== state.pipes) return this;\n if (!dest) dest = state.pipes; // got a match.\n\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n if (dest) dest.emit('unpipe', this, unpipeInfo);\n return this;\n } // slow case. multiple pipe destinations.\n\n\n if (!dest) {\n // remove all.\n var dests = state.pipes;\n var len = state.pipesCount;\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n\n for (var i = 0; i < len; i++) {\n dests[i].emit('unpipe', this, {\n hasUnpiped: false\n });\n }\n\n return this;\n } // try to find the right one.\n\n\n var index = indexOf(state.pipes, dest);\n if (index === -1) return this;\n state.pipes.splice(index, 1);\n state.pipesCount -= 1;\n if (state.pipesCount === 1) state.pipes = state.pipes[0];\n dest.emit('unpipe', this, unpipeInfo);\n return this;\n}; // set up data events if they are asked for\n// Ensure readable listeners eventually get something\n\n\nReadable.prototype.on = function (ev, fn) {\n var res = Stream.prototype.on.call(this, ev, fn);\n var state = this._readableState;\n\n if (ev === 'data') {\n // update readableListening so that resume() may be a no-op\n // a few lines down. This is needed to support once('readable').\n state.readableListening = this.listenerCount('readable') > 0; // Try start flowing on next tick if stream isn't explicitly paused\n\n if (state.flowing !== false) this.resume();\n } else if (ev === 'readable') {\n if (!state.endEmitted && !state.readableListening) {\n state.readableListening = state.needReadable = true;\n state.flowing = false;\n state.emittedReadable = false;\n debug('on readable', state.length, state.reading);\n\n if (state.length) {\n emitReadable(this);\n } else if (!state.reading) {\n process.nextTick(nReadingNextTick, this);\n }\n }\n }\n\n return res;\n};\n\nReadable.prototype.addListener = Readable.prototype.on;\n\nReadable.prototype.removeListener = function (ev, fn) {\n var res = Stream.prototype.removeListener.call(this, ev, fn);\n\n if (ev === 'readable') {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n\n return res;\n};\n\nReadable.prototype.removeAllListeners = function (ev) {\n var res = Stream.prototype.removeAllListeners.apply(this, arguments);\n\n if (ev === 'readable' || ev === undefined) {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n\n return res;\n};\n\nfunction updateReadableListening(self) {\n var state = self._readableState;\n state.readableListening = self.listenerCount('readable') > 0;\n\n if (state.resumeScheduled && !state.paused) {\n // flowing needs to be set to true now, otherwise\n // the upcoming resume will not flow.\n state.flowing = true; // crude way to check if we should resume\n } else if (self.listenerCount('data') > 0) {\n self.resume();\n }\n}\n\nfunction nReadingNextTick(self) {\n debug('readable nexttick read 0');\n self.read(0);\n} // pause() and resume() are remnants of the legacy readable stream API\n// If the user uses them, then switch into old mode.\n\n\nReadable.prototype.resume = function () {\n var state = this._readableState;\n\n if (!state.flowing) {\n debug('resume'); // we flow only if there is no one listening\n // for readable, but we still have to call\n // resume()\n\n state.flowing = !state.readableListening;\n resume(this, state);\n }\n\n state.paused = false;\n return this;\n};\n\nfunction resume(stream, state) {\n if (!state.resumeScheduled) {\n state.resumeScheduled = true;\n process.nextTick(resume_, stream, state);\n }\n}\n\nfunction resume_(stream, state) {\n debug('resume', state.reading);\n\n if (!state.reading) {\n stream.read(0);\n }\n\n state.resumeScheduled = false;\n stream.emit('resume');\n flow(stream);\n if (state.flowing && !state.reading) stream.read(0);\n}\n\nReadable.prototype.pause = function () {\n debug('call pause flowing=%j', this._readableState.flowing);\n\n if (this._readableState.flowing !== false) {\n debug('pause');\n this._readableState.flowing = false;\n this.emit('pause');\n }\n\n this._readableState.paused = true;\n return this;\n};\n\nfunction flow(stream) {\n var state = stream._readableState;\n debug('flow', state.flowing);\n\n while (state.flowing && stream.read() !== null) {\n ;\n }\n} // wrap an old-style stream as the async data source.\n// This is *not* part of the readable stream interface.\n// It is an ugly unfortunate mess of history.\n\n\nReadable.prototype.wrap = function (stream) {\n var _this = this;\n\n var state = this._readableState;\n var paused = false;\n stream.on('end', function () {\n debug('wrapped end');\n\n if (state.decoder && !state.ended) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) _this.push(chunk);\n }\n\n _this.push(null);\n });\n stream.on('data', function (chunk) {\n debug('wrapped data');\n if (state.decoder) chunk = state.decoder.write(chunk); // don't skip over falsy values in objectMode\n\n if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;\n\n var ret = _this.push(chunk);\n\n if (!ret) {\n paused = true;\n stream.pause();\n }\n }); // proxy all the other methods.\n // important when wrapping filters and duplexes.\n\n for (var i in stream) {\n if (this[i] === undefined && typeof stream[i] === 'function') {\n this[i] = function methodWrap(method) {\n return function methodWrapReturnFunction() {\n return stream[method].apply(stream, arguments);\n };\n }(i);\n }\n } // proxy certain important events.\n\n\n for (var n = 0; n < kProxyEvents.length; n++) {\n stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n]));\n } // when we try to consume some more bytes, simply unpause the\n // underlying stream.\n\n\n this._read = function (n) {\n debug('wrapped _read', n);\n\n if (paused) {\n paused = false;\n stream.resume();\n }\n };\n\n return this;\n};\n\nif (typeof Symbol === 'function') {\n Readable.prototype[Symbol.asyncIterator] = function () {\n if (createReadableStreamAsyncIterator === undefined) {\n createReadableStreamAsyncIterator = require('./internal/streams/async_iterator');\n }\n\n return createReadableStreamAsyncIterator(this);\n };\n}\n\nObject.defineProperty(Readable.prototype, 'readableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.highWaterMark;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState && this._readableState.buffer;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableFlowing', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.flowing;\n },\n set: function set(state) {\n if (this._readableState) {\n this._readableState.flowing = state;\n }\n }\n}); // exposed for testing purposes only.\n\nReadable._fromList = fromList;\nObject.defineProperty(Readable.prototype, 'readableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.length;\n }\n}); // Pluck off n bytes from an array of buffers.\n// Length is the combined lengths of all the buffers in the list.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\n\nfunction fromList(n, state) {\n // nothing buffered\n if (state.length === 0) return null;\n var ret;\n if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {\n // read it all, truncate the list\n if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.first();else ret = state.buffer.concat(state.length);\n state.buffer.clear();\n } else {\n // read part of list\n ret = state.buffer.consume(n, state.decoder);\n }\n return ret;\n}\n\nfunction endReadable(stream) {\n var state = stream._readableState;\n debug('endReadable', state.endEmitted);\n\n if (!state.endEmitted) {\n state.ended = true;\n process.nextTick(endReadableNT, state, stream);\n }\n}\n\nfunction endReadableNT(state, stream) {\n debug('endReadableNT', state.endEmitted, state.length); // Check that we didn't get one last unshift.\n\n if (!state.endEmitted && state.length === 0) {\n state.endEmitted = true;\n stream.readable = false;\n stream.emit('end');\n\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the writable side is ready for autoDestroy as well\n var wState = stream._writableState;\n\n if (!wState || wState.autoDestroy && wState.finished) {\n stream.destroy();\n }\n }\n }\n}\n\nif (typeof Symbol === 'function') {\n Readable.from = function (iterable, opts) {\n if (from === undefined) {\n from = require('./internal/streams/from');\n }\n\n return from(Readable, iterable, opts);\n };\n}\n\nfunction indexOf(xs, x) {\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) return i;\n }\n\n return -1;\n}","module.exports = require('events').EventEmitter;\n","'use strict'; // undocumented cb() API, needed for core, not for public API\n\nfunction destroy(err, cb) {\n var _this = this;\n\n var readableDestroyed = this._readableState && this._readableState.destroyed;\n var writableDestroyed = this._writableState && this._writableState.destroyed;\n\n if (readableDestroyed || writableDestroyed) {\n if (cb) {\n cb(err);\n } else if (err) {\n if (!this._writableState) {\n process.nextTick(emitErrorNT, this, err);\n } else if (!this._writableState.errorEmitted) {\n this._writableState.errorEmitted = true;\n process.nextTick(emitErrorNT, this, err);\n }\n }\n\n return this;\n } // we set destroyed to true before firing error callbacks in order\n // to make it re-entrance safe in case destroy() is called within callbacks\n\n\n if (this._readableState) {\n this._readableState.destroyed = true;\n } // if this is a duplex stream mark the writable part as destroyed as well\n\n\n if (this._writableState) {\n this._writableState.destroyed = true;\n }\n\n this._destroy(err || null, function (err) {\n if (!cb && err) {\n if (!_this._writableState) {\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else if (!_this._writableState.errorEmitted) {\n _this._writableState.errorEmitted = true;\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n } else if (cb) {\n process.nextTick(emitCloseNT, _this);\n cb(err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n });\n\n return this;\n}\n\nfunction emitErrorAndCloseNT(self, err) {\n emitErrorNT(self, err);\n emitCloseNT(self);\n}\n\nfunction emitCloseNT(self) {\n if (self._writableState && !self._writableState.emitClose) return;\n if (self._readableState && !self._readableState.emitClose) return;\n self.emit('close');\n}\n\nfunction undestroy() {\n if (this._readableState) {\n this._readableState.destroyed = false;\n this._readableState.reading = false;\n this._readableState.ended = false;\n this._readableState.endEmitted = false;\n }\n\n if (this._writableState) {\n this._writableState.destroyed = false;\n this._writableState.ended = false;\n this._writableState.ending = false;\n this._writableState.finalCalled = false;\n this._writableState.prefinished = false;\n this._writableState.finished = false;\n this._writableState.errorEmitted = false;\n }\n}\n\nfunction emitErrorNT(self, err) {\n self.emit('error', err);\n}\n\nfunction errorOrDestroy(stream, err) {\n // We have tests that rely on errors being emitted\n // in the same tick, so changing this is semver major.\n // For now when you opt-in to autoDestroy we allow\n // the error to be emitted nextTick. In a future\n // semver major update we should change the default to this.\n var rState = stream._readableState;\n var wState = stream._writableState;\n if (rState && rState.autoDestroy || wState && wState.autoDestroy) stream.destroy(err);else stream.emit('error', err);\n}\n\nmodule.exports = {\n destroy: destroy,\n undestroy: undestroy,\n errorOrDestroy: errorOrDestroy\n};","'use strict';\n\nvar ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE;\n\nfunction highWaterMarkFrom(options, isDuplex, duplexKey) {\n return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null;\n}\n\nfunction getHighWaterMark(state, options, duplexKey, isDuplex) {\n var hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n\n if (hwm != null) {\n if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) {\n var name = isDuplex ? duplexKey : 'highWaterMark';\n throw new ERR_INVALID_OPT_VALUE(name, hwm);\n }\n\n return Math.floor(hwm);\n } // Default value\n\n\n return state.objectMode ? 16 : 16 * 1024;\n}\n\nmodule.exports = {\n getHighWaterMark: getHighWaterMark\n};","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// A bit simpler than readable streams.\n// Implement an async ._write(chunk, encoding, cb), and it'll handle all\n// the drain event emission and buffering.\n'use strict';\n\nmodule.exports = Writable;\n/* */\n\nfunction WriteReq(chunk, encoding, cb) {\n this.chunk = chunk;\n this.encoding = encoding;\n this.callback = cb;\n this.next = null;\n} // It seems a linked list but it is not\n// there will be only 2 of these for each stream\n\n\nfunction CorkedRequest(state) {\n var _this = this;\n\n this.next = null;\n this.entry = null;\n\n this.finish = function () {\n onCorkedFinish(_this, state);\n };\n}\n/* */\n\n/**/\n\n\nvar Duplex;\n/**/\n\nWritable.WritableState = WritableState;\n/**/\n\nvar internalUtil = {\n deprecate: require('util-deprecate')\n};\n/**/\n\n/**/\n\nvar Stream = require('./internal/streams/stream');\n/**/\n\n\nvar Buffer = require('buffer').Buffer;\n\nvar OurUint8Array = global.Uint8Array || function () {};\n\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\n\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n\nvar destroyImpl = require('./internal/streams/destroy');\n\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\n\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED,\n ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES,\n ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END,\n ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING;\n\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\n\nrequire('inherits')(Writable, Stream);\n\nfunction nop() {}\n\nfunction WritableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {}; // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream,\n // e.g. options.readableObjectMode vs. options.writableObjectMode, etc.\n\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag to indicate whether or not this stream\n // contains buffers or objects.\n\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; // the point at which write() starts returning false\n // Note: 0 is a valid value, means that we always return false if\n // the entire buffer is not flushed immediately on write()\n\n this.highWaterMark = getHighWaterMark(this, options, 'writableHighWaterMark', isDuplex); // if _final has been called\n\n this.finalCalled = false; // drain event flag.\n\n this.needDrain = false; // at the start of calling end()\n\n this.ending = false; // when end() has been called, and returned\n\n this.ended = false; // when 'finish' is emitted\n\n this.finished = false; // has it been destroyed\n\n this.destroyed = false; // should we decode strings into buffers before passing to _write?\n // this is here so that some node-core streams can optimize string\n // handling at a lower level.\n\n var noDecode = options.decodeStrings === false;\n this.decodeStrings = !noDecode; // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n\n this.defaultEncoding = options.defaultEncoding || 'utf8'; // not an actual buffer we keep track of, but a measurement\n // of how much we're waiting to get pushed to some underlying\n // socket or file.\n\n this.length = 0; // a flag to see when we're in the middle of a write.\n\n this.writing = false; // when true all writes will be buffered until .uncork() call\n\n this.corked = 0; // a flag to be able to tell if the onwrite cb is called immediately,\n // or on a later tick. We set this to true at first, because any\n // actions that shouldn't happen until \"later\" should generally also\n // not happen before the first write call.\n\n this.sync = true; // a flag to know if we're processing previously buffered items, which\n // may call the _write() callback in the same tick, so that we don't\n // end up in an overlapped onwrite situation.\n\n this.bufferProcessing = false; // the callback that's passed to _write(chunk,cb)\n\n this.onwrite = function (er) {\n onwrite(stream, er);\n }; // the callback that the user supplies to write(chunk,encoding,cb)\n\n\n this.writecb = null; // the amount that is being written when _write is called.\n\n this.writelen = 0;\n this.bufferedRequest = null;\n this.lastBufferedRequest = null; // number of pending user-supplied write callbacks\n // this must be 0 before 'finish' can be emitted\n\n this.pendingcb = 0; // emit prefinish if the only thing we're waiting for is _write cbs\n // This is relevant for synchronous Transform streams\n\n this.prefinished = false; // True if the error was already emitted and should not be thrown again\n\n this.errorEmitted = false; // Should close be emitted on destroy. Defaults to true.\n\n this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'finish' (and potentially 'end')\n\n this.autoDestroy = !!options.autoDestroy; // count buffered requests\n\n this.bufferedRequestCount = 0; // allocate the first CorkedRequest, there is always\n // one allocated and free to use, and we maintain at most two\n\n this.corkedRequestsFree = new CorkedRequest(this);\n}\n\nWritableState.prototype.getBuffer = function getBuffer() {\n var current = this.bufferedRequest;\n var out = [];\n\n while (current) {\n out.push(current);\n current = current.next;\n }\n\n return out;\n};\n\n(function () {\n try {\n Object.defineProperty(WritableState.prototype, 'buffer', {\n get: internalUtil.deprecate(function writableStateBufferGetter() {\n return this.getBuffer();\n }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')\n });\n } catch (_) {}\n})(); // Test _writableState for inheritance to account for Duplex streams,\n// whose prototype chain only points to Readable.\n\n\nvar realHasInstance;\n\nif (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {\n realHasInstance = Function.prototype[Symbol.hasInstance];\n Object.defineProperty(Writable, Symbol.hasInstance, {\n value: function value(object) {\n if (realHasInstance.call(this, object)) return true;\n if (this !== Writable) return false;\n return object && object._writableState instanceof WritableState;\n }\n });\n} else {\n realHasInstance = function realHasInstance(object) {\n return object instanceof this;\n };\n}\n\nfunction Writable(options) {\n Duplex = Duplex || require('./_stream_duplex'); // Writable ctor is applied to Duplexes, too.\n // `realHasInstance` is necessary because using plain `instanceof`\n // would return false, as no `_writableState` property is attached.\n // Trying to use the custom `instanceof` for Writable here will also break the\n // Node.js LazyTransform implementation, which has a non-trivial getter for\n // `_writableState` that would lead to infinite recursion.\n // Checking for a Stream.Duplex instance is faster here instead of inside\n // the WritableState constructor, at least with V8 6.5\n\n var isDuplex = this instanceof Duplex;\n if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options);\n this._writableState = new WritableState(options, this, isDuplex); // legacy.\n\n this.writable = true;\n\n if (options) {\n if (typeof options.write === 'function') this._write = options.write;\n if (typeof options.writev === 'function') this._writev = options.writev;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n if (typeof options.final === 'function') this._final = options.final;\n }\n\n Stream.call(this);\n} // Otherwise people can pipe Writable streams, which is just wrong.\n\n\nWritable.prototype.pipe = function () {\n errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE());\n};\n\nfunction writeAfterEnd(stream, cb) {\n var er = new ERR_STREAM_WRITE_AFTER_END(); // TODO: defer error events consistently everywhere, not just the cb\n\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n} // Checks that a user-supplied chunk is valid, especially for the particular\n// mode the stream is in. Currently this means that `null` is never accepted\n// and undefined/non-string values are only allowed in object mode.\n\n\nfunction validChunk(stream, state, chunk, cb) {\n var er;\n\n if (chunk === null) {\n er = new ERR_STREAM_NULL_VALUES();\n } else if (typeof chunk !== 'string' && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer'], chunk);\n }\n\n if (er) {\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n return false;\n }\n\n return true;\n}\n\nWritable.prototype.write = function (chunk, encoding, cb) {\n var state = this._writableState;\n var ret = false;\n\n var isBuf = !state.objectMode && _isUint8Array(chunk);\n\n if (isBuf && !Buffer.isBuffer(chunk)) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;\n if (typeof cb !== 'function') cb = nop;\n if (state.ending) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {\n state.pendingcb++;\n ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);\n }\n return ret;\n};\n\nWritable.prototype.cork = function () {\n this._writableState.corked++;\n};\n\nWritable.prototype.uncork = function () {\n var state = this._writableState;\n\n if (state.corked) {\n state.corked--;\n if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);\n }\n};\n\nWritable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n // node::ParseEncoding() requires lower case.\n if (typeof encoding === 'string') encoding = encoding.toLowerCase();\n if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding);\n this._writableState.defaultEncoding = encoding;\n return this;\n};\n\nObject.defineProperty(Writable.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\n\nfunction decodeChunk(state, chunk, encoding) {\n if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {\n chunk = Buffer.from(chunk, encoding);\n }\n\n return chunk;\n}\n\nObject.defineProperty(Writable.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n}); // if we're already writing something, then just put this\n// in the queue, and wait our turn. Otherwise, call _write\n// If we return false, then we need a drain event, so set that flag.\n\nfunction writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {\n if (!isBuf) {\n var newChunk = decodeChunk(state, chunk, encoding);\n\n if (chunk !== newChunk) {\n isBuf = true;\n encoding = 'buffer';\n chunk = newChunk;\n }\n }\n\n var len = state.objectMode ? 1 : chunk.length;\n state.length += len;\n var ret = state.length < state.highWaterMark; // we must ensure that previous needDrain will not be reset to false.\n\n if (!ret) state.needDrain = true;\n\n if (state.writing || state.corked) {\n var last = state.lastBufferedRequest;\n state.lastBufferedRequest = {\n chunk: chunk,\n encoding: encoding,\n isBuf: isBuf,\n callback: cb,\n next: null\n };\n\n if (last) {\n last.next = state.lastBufferedRequest;\n } else {\n state.bufferedRequest = state.lastBufferedRequest;\n }\n\n state.bufferedRequestCount += 1;\n } else {\n doWrite(stream, state, false, len, chunk, encoding, cb);\n }\n\n return ret;\n}\n\nfunction doWrite(stream, state, writev, len, chunk, encoding, cb) {\n state.writelen = len;\n state.writecb = cb;\n state.writing = true;\n state.sync = true;\n if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED('write'));else if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);\n state.sync = false;\n}\n\nfunction onwriteError(stream, state, sync, er, cb) {\n --state.pendingcb;\n\n if (sync) {\n // defer the callback if we are being called synchronously\n // to avoid piling up things on the stack\n process.nextTick(cb, er); // this can emit finish, and it will always happen\n // after error\n\n process.nextTick(finishMaybe, stream, state);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er);\n } else {\n // the caller expect this to happen before if\n // it is async\n cb(er);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er); // this can emit finish, but finish must\n // always follow error\n\n finishMaybe(stream, state);\n }\n}\n\nfunction onwriteStateUpdate(state) {\n state.writing = false;\n state.writecb = null;\n state.length -= state.writelen;\n state.writelen = 0;\n}\n\nfunction onwrite(stream, er) {\n var state = stream._writableState;\n var sync = state.sync;\n var cb = state.writecb;\n if (typeof cb !== 'function') throw new ERR_MULTIPLE_CALLBACK();\n onwriteStateUpdate(state);\n if (er) onwriteError(stream, state, sync, er, cb);else {\n // Check if we're actually ready to finish, but don't emit yet\n var finished = needFinish(state) || stream.destroyed;\n\n if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {\n clearBuffer(stream, state);\n }\n\n if (sync) {\n process.nextTick(afterWrite, stream, state, finished, cb);\n } else {\n afterWrite(stream, state, finished, cb);\n }\n }\n}\n\nfunction afterWrite(stream, state, finished, cb) {\n if (!finished) onwriteDrain(stream, state);\n state.pendingcb--;\n cb();\n finishMaybe(stream, state);\n} // Must force callback to be called on nextTick, so that we don't\n// emit 'drain' before the write() consumer gets the 'false' return\n// value, and has a chance to attach a 'drain' listener.\n\n\nfunction onwriteDrain(stream, state) {\n if (state.length === 0 && state.needDrain) {\n state.needDrain = false;\n stream.emit('drain');\n }\n} // if there's something in the buffer waiting, then process it\n\n\nfunction clearBuffer(stream, state) {\n state.bufferProcessing = true;\n var entry = state.bufferedRequest;\n\n if (stream._writev && entry && entry.next) {\n // Fast case, write everything using _writev()\n var l = state.bufferedRequestCount;\n var buffer = new Array(l);\n var holder = state.corkedRequestsFree;\n holder.entry = entry;\n var count = 0;\n var allBuffers = true;\n\n while (entry) {\n buffer[count] = entry;\n if (!entry.isBuf) allBuffers = false;\n entry = entry.next;\n count += 1;\n }\n\n buffer.allBuffers = allBuffers;\n doWrite(stream, state, true, state.length, buffer, '', holder.finish); // doWrite is almost always async, defer these to save a bit of time\n // as the hot path ends with doWrite\n\n state.pendingcb++;\n state.lastBufferedRequest = null;\n\n if (holder.next) {\n state.corkedRequestsFree = holder.next;\n holder.next = null;\n } else {\n state.corkedRequestsFree = new CorkedRequest(state);\n }\n\n state.bufferedRequestCount = 0;\n } else {\n // Slow case, write chunks one-by-one\n while (entry) {\n var chunk = entry.chunk;\n var encoding = entry.encoding;\n var cb = entry.callback;\n var len = state.objectMode ? 1 : chunk.length;\n doWrite(stream, state, false, len, chunk, encoding, cb);\n entry = entry.next;\n state.bufferedRequestCount--; // if we didn't call the onwrite immediately, then\n // it means that we need to wait until it does.\n // also, that means that the chunk and cb are currently\n // being processed, so move the buffer counter past them.\n\n if (state.writing) {\n break;\n }\n }\n\n if (entry === null) state.lastBufferedRequest = null;\n }\n\n state.bufferedRequest = entry;\n state.bufferProcessing = false;\n}\n\nWritable.prototype._write = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_write()'));\n};\n\nWritable.prototype._writev = null;\n\nWritable.prototype.end = function (chunk, encoding, cb) {\n var state = this._writableState;\n\n if (typeof chunk === 'function') {\n cb = chunk;\n chunk = null;\n encoding = null;\n } else if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (chunk !== null && chunk !== undefined) this.write(chunk, encoding); // .end() fully uncorks\n\n if (state.corked) {\n state.corked = 1;\n this.uncork();\n } // ignore unnecessary end() calls.\n\n\n if (!state.ending) endWritable(this, state, cb);\n return this;\n};\n\nObject.defineProperty(Writable.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n});\n\nfunction needFinish(state) {\n return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;\n}\n\nfunction callFinal(stream, state) {\n stream._final(function (err) {\n state.pendingcb--;\n\n if (err) {\n errorOrDestroy(stream, err);\n }\n\n state.prefinished = true;\n stream.emit('prefinish');\n finishMaybe(stream, state);\n });\n}\n\nfunction prefinish(stream, state) {\n if (!state.prefinished && !state.finalCalled) {\n if (typeof stream._final === 'function' && !state.destroyed) {\n state.pendingcb++;\n state.finalCalled = true;\n process.nextTick(callFinal, stream, state);\n } else {\n state.prefinished = true;\n stream.emit('prefinish');\n }\n }\n}\n\nfunction finishMaybe(stream, state) {\n var need = needFinish(state);\n\n if (need) {\n prefinish(stream, state);\n\n if (state.pendingcb === 0) {\n state.finished = true;\n stream.emit('finish');\n\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the readable side is ready for autoDestroy as well\n var rState = stream._readableState;\n\n if (!rState || rState.autoDestroy && rState.endEmitted) {\n stream.destroy();\n }\n }\n }\n }\n\n return need;\n}\n\nfunction endWritable(stream, state, cb) {\n state.ending = true;\n finishMaybe(stream, state);\n\n if (cb) {\n if (state.finished) process.nextTick(cb);else stream.once('finish', cb);\n }\n\n state.ended = true;\n stream.writable = false;\n}\n\nfunction onCorkedFinish(corkReq, state, err) {\n var entry = corkReq.entry;\n corkReq.entry = null;\n\n while (entry) {\n var cb = entry.callback;\n state.pendingcb--;\n cb(err);\n entry = entry.next;\n } // reuse the free corkReq.\n\n\n state.corkedRequestsFree.next = corkReq;\n}\n\nObject.defineProperty(Writable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._writableState === undefined) {\n return false;\n }\n\n return this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._writableState) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._writableState.destroyed = value;\n }\n});\nWritable.prototype.destroy = destroyImpl.destroy;\nWritable.prototype._undestroy = destroyImpl.undestroy;\n\nWritable.prototype._destroy = function (err, cb) {\n cb(err);\n};","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// a transform stream is a readable/writable stream where you do\n// something with the data. Sometimes it's called a \"filter\",\n// but that's not a great name for it, since that implies a thing where\n// some bits pass through, and others are simply ignored. (That would\n// be a valid example of a transform, of course.)\n//\n// While the output is causally related to the input, it's not a\n// necessarily symmetric or synchronous transformation. For example,\n// a zlib stream might take multiple plain-text writes(), and then\n// emit a single compressed chunk some time in the future.\n//\n// Here's how this works:\n//\n// The Transform stream has all the aspects of the readable and writable\n// stream classes. When you write(chunk), that calls _write(chunk,cb)\n// internally, and returns false if there's a lot of pending writes\n// buffered up. When you call read(), that calls _read(n) until\n// there's enough pending readable data buffered up.\n//\n// In a transform stream, the written data is placed in a buffer. When\n// _read(n) is called, it transforms the queued up data, calling the\n// buffered _write cb's as it consumes chunks. If consuming a single\n// written chunk would result in multiple output chunks, then the first\n// outputted bit calls the readcb, and subsequent chunks just go into\n// the read buffer, and will cause it to emit 'readable' if necessary.\n//\n// This way, back-pressure is actually determined by the reading side,\n// since _read has to be called to start processing a new chunk. However,\n// a pathological inflate type of transform can cause excessive buffering\n// here. For example, imagine a stream where every byte of input is\n// interpreted as an integer from 0-255, and then results in that many\n// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in\n// 1kb of data being output. In this case, you could write a very small\n// amount of input, and end up with a very large amount of output. In\n// such a pathological inflating mechanism, there'd be no way to tell\n// the system to stop doing the transform. A single 4MB write could\n// cause the system to run out of memory.\n//\n// However, even in such a pathological case, only a single written chunk\n// would be consumed, and then the rest would wait (un-transformed) until\n// the results of the previous transformed chunk were consumed.\n'use strict';\n\nmodule.exports = Transform;\n\nvar _require$codes = require('../errors').codes,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING,\n ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0;\n\nvar Duplex = require('./_stream_duplex');\n\nrequire('inherits')(Transform, Duplex);\n\nfunction afterTransform(er, data) {\n var ts = this._transformState;\n ts.transforming = false;\n var cb = ts.writecb;\n\n if (cb === null) {\n return this.emit('error', new ERR_MULTIPLE_CALLBACK());\n }\n\n ts.writechunk = null;\n ts.writecb = null;\n if (data != null) // single equals check for both `null` and `undefined`\n this.push(data);\n cb(er);\n var rs = this._readableState;\n rs.reading = false;\n\n if (rs.needReadable || rs.length < rs.highWaterMark) {\n this._read(rs.highWaterMark);\n }\n}\n\nfunction Transform(options) {\n if (!(this instanceof Transform)) return new Transform(options);\n Duplex.call(this, options);\n this._transformState = {\n afterTransform: afterTransform.bind(this),\n needTransform: false,\n transforming: false,\n writecb: null,\n writechunk: null,\n writeencoding: null\n }; // start out asking for a readable event once data is transformed.\n\n this._readableState.needReadable = true; // we have implemented the _read method, and done the other things\n // that Readable wants before the first _read call, so unset the\n // sync guard flag.\n\n this._readableState.sync = false;\n\n if (options) {\n if (typeof options.transform === 'function') this._transform = options.transform;\n if (typeof options.flush === 'function') this._flush = options.flush;\n } // When the writable side finishes, then flush out anything remaining.\n\n\n this.on('prefinish', prefinish);\n}\n\nfunction prefinish() {\n var _this = this;\n\n if (typeof this._flush === 'function' && !this._readableState.destroyed) {\n this._flush(function (er, data) {\n done(_this, er, data);\n });\n } else {\n done(this, null, null);\n }\n}\n\nTransform.prototype.push = function (chunk, encoding) {\n this._transformState.needTransform = false;\n return Duplex.prototype.push.call(this, chunk, encoding);\n}; // This is the part where you do stuff!\n// override this function in implementation classes.\n// 'chunk' is an input chunk.\n//\n// Call `push(newChunk)` to pass along transformed output\n// to the readable side. You may call 'push' zero or more times.\n//\n// Call `cb(err)` when you are done with this chunk. If you pass\n// an error, then that'll put the hurt on the whole operation. If you\n// never call cb(), then you'll never get another chunk.\n\n\nTransform.prototype._transform = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_transform()'));\n};\n\nTransform.prototype._write = function (chunk, encoding, cb) {\n var ts = this._transformState;\n ts.writecb = cb;\n ts.writechunk = chunk;\n ts.writeencoding = encoding;\n\n if (!ts.transforming) {\n var rs = this._readableState;\n if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);\n }\n}; // Doesn't matter what the args are here.\n// _transform does all the work.\n// That we got here means that the readable side wants more data.\n\n\nTransform.prototype._read = function (n) {\n var ts = this._transformState;\n\n if (ts.writechunk !== null && !ts.transforming) {\n ts.transforming = true;\n\n this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);\n } else {\n // mark that we need a transform, so that any data that comes in\n // will get processed, now that we've asked for it.\n ts.needTransform = true;\n }\n};\n\nTransform.prototype._destroy = function (err, cb) {\n Duplex.prototype._destroy.call(this, err, function (err2) {\n cb(err2);\n });\n};\n\nfunction done(stream, er, data) {\n if (er) return stream.emit('error', er);\n if (data != null) // single equals check for both `null` and `undefined`\n stream.push(data); // TODO(BridgeAR): Write a test for these two error cases\n // if there's nothing in the write buffer, then that means\n // that nothing more will ever be provided\n\n if (stream._writableState.length) throw new ERR_TRANSFORM_WITH_LENGTH_0();\n if (stream._transformState.transforming) throw new ERR_TRANSFORM_ALREADY_TRANSFORMING();\n return stream.push(null);\n}","/**\n * A JavaScript implementation of the Secure Hash Algorithm, SHA-256, as defined\n * in FIPS 180-2\n * Version 2.2-beta Copyright Angel Marin, Paul Johnston 2000 - 2009.\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n *\n */\n\nvar inherits = require('inherits')\nvar Hash = require('./hash')\nvar Buffer = require('safe-buffer').Buffer\n\nvar K = [\n 0x428A2F98, 0x71374491, 0xB5C0FBCF, 0xE9B5DBA5,\n 0x3956C25B, 0x59F111F1, 0x923F82A4, 0xAB1C5ED5,\n 0xD807AA98, 0x12835B01, 0x243185BE, 0x550C7DC3,\n 0x72BE5D74, 0x80DEB1FE, 0x9BDC06A7, 0xC19BF174,\n 0xE49B69C1, 0xEFBE4786, 0x0FC19DC6, 0x240CA1CC,\n 0x2DE92C6F, 0x4A7484AA, 0x5CB0A9DC, 0x76F988DA,\n 0x983E5152, 0xA831C66D, 0xB00327C8, 0xBF597FC7,\n 0xC6E00BF3, 0xD5A79147, 0x06CA6351, 0x14292967,\n 0x27B70A85, 0x2E1B2138, 0x4D2C6DFC, 0x53380D13,\n 0x650A7354, 0x766A0ABB, 0x81C2C92E, 0x92722C85,\n 0xA2BFE8A1, 0xA81A664B, 0xC24B8B70, 0xC76C51A3,\n 0xD192E819, 0xD6990624, 0xF40E3585, 0x106AA070,\n 0x19A4C116, 0x1E376C08, 0x2748774C, 0x34B0BCB5,\n 0x391C0CB3, 0x4ED8AA4A, 0x5B9CCA4F, 0x682E6FF3,\n 0x748F82EE, 0x78A5636F, 0x84C87814, 0x8CC70208,\n 0x90BEFFFA, 0xA4506CEB, 0xBEF9A3F7, 0xC67178F2\n]\n\nvar W = new Array(64)\n\nfunction Sha256 () {\n this.init()\n\n this._w = W // new Array(64)\n\n Hash.call(this, 64, 56)\n}\n\ninherits(Sha256, Hash)\n\nSha256.prototype.init = function () {\n this._a = 0x6a09e667\n this._b = 0xbb67ae85\n this._c = 0x3c6ef372\n this._d = 0xa54ff53a\n this._e = 0x510e527f\n this._f = 0x9b05688c\n this._g = 0x1f83d9ab\n this._h = 0x5be0cd19\n\n return this\n}\n\nfunction ch (x, y, z) {\n return z ^ (x & (y ^ z))\n}\n\nfunction maj (x, y, z) {\n return (x & y) | (z & (x | y))\n}\n\nfunction sigma0 (x) {\n return (x >>> 2 | x << 30) ^ (x >>> 13 | x << 19) ^ (x >>> 22 | x << 10)\n}\n\nfunction sigma1 (x) {\n return (x >>> 6 | x << 26) ^ (x >>> 11 | x << 21) ^ (x >>> 25 | x << 7)\n}\n\nfunction gamma0 (x) {\n return (x >>> 7 | x << 25) ^ (x >>> 18 | x << 14) ^ (x >>> 3)\n}\n\nfunction gamma1 (x) {\n return (x >>> 17 | x << 15) ^ (x >>> 19 | x << 13) ^ (x >>> 10)\n}\n\nSha256.prototype._update = function (M) {\n var W = this._w\n\n var a = this._a | 0\n var b = this._b | 0\n var c = this._c | 0\n var d = this._d | 0\n var e = this._e | 0\n var f = this._f | 0\n var g = this._g | 0\n var h = this._h | 0\n\n for (var i = 0; i < 16; ++i) W[i] = M.readInt32BE(i * 4)\n for (; i < 64; ++i) W[i] = (gamma1(W[i - 2]) + W[i - 7] + gamma0(W[i - 15]) + W[i - 16]) | 0\n\n for (var j = 0; j < 64; ++j) {\n var T1 = (h + sigma1(e) + ch(e, f, g) + K[j] + W[j]) | 0\n var T2 = (sigma0(a) + maj(a, b, c)) | 0\n\n h = g\n g = f\n f = e\n e = (d + T1) | 0\n d = c\n c = b\n b = a\n a = (T1 + T2) | 0\n }\n\n this._a = (a + this._a) | 0\n this._b = (b + this._b) | 0\n this._c = (c + this._c) | 0\n this._d = (d + this._d) | 0\n this._e = (e + this._e) | 0\n this._f = (f + this._f) | 0\n this._g = (g + this._g) | 0\n this._h = (h + this._h) | 0\n}\n\nSha256.prototype._hash = function () {\n var H = Buffer.allocUnsafe(32)\n\n H.writeInt32BE(this._a, 0)\n H.writeInt32BE(this._b, 4)\n H.writeInt32BE(this._c, 8)\n H.writeInt32BE(this._d, 12)\n H.writeInt32BE(this._e, 16)\n H.writeInt32BE(this._f, 20)\n H.writeInt32BE(this._g, 24)\n H.writeInt32BE(this._h, 28)\n\n return H\n}\n\nmodule.exports = Sha256\n","var inherits = require('inherits')\nvar Hash = require('./hash')\nvar Buffer = require('safe-buffer').Buffer\n\nvar K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n]\n\nvar W = new Array(160)\n\nfunction Sha512 () {\n this.init()\n this._w = W\n\n Hash.call(this, 128, 112)\n}\n\ninherits(Sha512, Hash)\n\nSha512.prototype.init = function () {\n this._ah = 0x6a09e667\n this._bh = 0xbb67ae85\n this._ch = 0x3c6ef372\n this._dh = 0xa54ff53a\n this._eh = 0x510e527f\n this._fh = 0x9b05688c\n this._gh = 0x1f83d9ab\n this._hh = 0x5be0cd19\n\n this._al = 0xf3bcc908\n this._bl = 0x84caa73b\n this._cl = 0xfe94f82b\n this._dl = 0x5f1d36f1\n this._el = 0xade682d1\n this._fl = 0x2b3e6c1f\n this._gl = 0xfb41bd6b\n this._hl = 0x137e2179\n\n return this\n}\n\nfunction Ch (x, y, z) {\n return z ^ (x & (y ^ z))\n}\n\nfunction maj (x, y, z) {\n return (x & y) | (z & (x | y))\n}\n\nfunction sigma0 (x, xl) {\n return (x >>> 28 | xl << 4) ^ (xl >>> 2 | x << 30) ^ (xl >>> 7 | x << 25)\n}\n\nfunction sigma1 (x, xl) {\n return (x >>> 14 | xl << 18) ^ (x >>> 18 | xl << 14) ^ (xl >>> 9 | x << 23)\n}\n\nfunction Gamma0 (x, xl) {\n return (x >>> 1 | xl << 31) ^ (x >>> 8 | xl << 24) ^ (x >>> 7)\n}\n\nfunction Gamma0l (x, xl) {\n return (x >>> 1 | xl << 31) ^ (x >>> 8 | xl << 24) ^ (x >>> 7 | xl << 25)\n}\n\nfunction Gamma1 (x, xl) {\n return (x >>> 19 | xl << 13) ^ (xl >>> 29 | x << 3) ^ (x >>> 6)\n}\n\nfunction Gamma1l (x, xl) {\n return (x >>> 19 | xl << 13) ^ (xl >>> 29 | x << 3) ^ (x >>> 6 | xl << 26)\n}\n\nfunction getCarry (a, b) {\n return (a >>> 0) < (b >>> 0) ? 1 : 0\n}\n\nSha512.prototype._update = function (M) {\n var W = this._w\n\n var ah = this._ah | 0\n var bh = this._bh | 0\n var ch = this._ch | 0\n var dh = this._dh | 0\n var eh = this._eh | 0\n var fh = this._fh | 0\n var gh = this._gh | 0\n var hh = this._hh | 0\n\n var al = this._al | 0\n var bl = this._bl | 0\n var cl = this._cl | 0\n var dl = this._dl | 0\n var el = this._el | 0\n var fl = this._fl | 0\n var gl = this._gl | 0\n var hl = this._hl | 0\n\n for (var i = 0; i < 32; i += 2) {\n W[i] = M.readInt32BE(i * 4)\n W[i + 1] = M.readInt32BE(i * 4 + 4)\n }\n for (; i < 160; i += 2) {\n var xh = W[i - 15 * 2]\n var xl = W[i - 15 * 2 + 1]\n var gamma0 = Gamma0(xh, xl)\n var gamma0l = Gamma0l(xl, xh)\n\n xh = W[i - 2 * 2]\n xl = W[i - 2 * 2 + 1]\n var gamma1 = Gamma1(xh, xl)\n var gamma1l = Gamma1l(xl, xh)\n\n // W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16]\n var Wi7h = W[i - 7 * 2]\n var Wi7l = W[i - 7 * 2 + 1]\n\n var Wi16h = W[i - 16 * 2]\n var Wi16l = W[i - 16 * 2 + 1]\n\n var Wil = (gamma0l + Wi7l) | 0\n var Wih = (gamma0 + Wi7h + getCarry(Wil, gamma0l)) | 0\n Wil = (Wil + gamma1l) | 0\n Wih = (Wih + gamma1 + getCarry(Wil, gamma1l)) | 0\n Wil = (Wil + Wi16l) | 0\n Wih = (Wih + Wi16h + getCarry(Wil, Wi16l)) | 0\n\n W[i] = Wih\n W[i + 1] = Wil\n }\n\n for (var j = 0; j < 160; j += 2) {\n Wih = W[j]\n Wil = W[j + 1]\n\n var majh = maj(ah, bh, ch)\n var majl = maj(al, bl, cl)\n\n var sigma0h = sigma0(ah, al)\n var sigma0l = sigma0(al, ah)\n var sigma1h = sigma1(eh, el)\n var sigma1l = sigma1(el, eh)\n\n // t1 = h + sigma1 + ch + K[j] + W[j]\n var Kih = K[j]\n var Kil = K[j + 1]\n\n var chh = Ch(eh, fh, gh)\n var chl = Ch(el, fl, gl)\n\n var t1l = (hl + sigma1l) | 0\n var t1h = (hh + sigma1h + getCarry(t1l, hl)) | 0\n t1l = (t1l + chl) | 0\n t1h = (t1h + chh + getCarry(t1l, chl)) | 0\n t1l = (t1l + Kil) | 0\n t1h = (t1h + Kih + getCarry(t1l, Kil)) | 0\n t1l = (t1l + Wil) | 0\n t1h = (t1h + Wih + getCarry(t1l, Wil)) | 0\n\n // t2 = sigma0 + maj\n var t2l = (sigma0l + majl) | 0\n var t2h = (sigma0h + majh + getCarry(t2l, sigma0l)) | 0\n\n hh = gh\n hl = gl\n gh = fh\n gl = fl\n fh = eh\n fl = el\n el = (dl + t1l) | 0\n eh = (dh + t1h + getCarry(el, dl)) | 0\n dh = ch\n dl = cl\n ch = bh\n cl = bl\n bh = ah\n bl = al\n al = (t1l + t2l) | 0\n ah = (t1h + t2h + getCarry(al, t1l)) | 0\n }\n\n this._al = (this._al + al) | 0\n this._bl = (this._bl + bl) | 0\n this._cl = (this._cl + cl) | 0\n this._dl = (this._dl + dl) | 0\n this._el = (this._el + el) | 0\n this._fl = (this._fl + fl) | 0\n this._gl = (this._gl + gl) | 0\n this._hl = (this._hl + hl) | 0\n\n this._ah = (this._ah + ah + getCarry(this._al, al)) | 0\n this._bh = (this._bh + bh + getCarry(this._bl, bl)) | 0\n this._ch = (this._ch + ch + getCarry(this._cl, cl)) | 0\n this._dh = (this._dh + dh + getCarry(this._dl, dl)) | 0\n this._eh = (this._eh + eh + getCarry(this._el, el)) | 0\n this._fh = (this._fh + fh + getCarry(this._fl, fl)) | 0\n this._gh = (this._gh + gh + getCarry(this._gl, gl)) | 0\n this._hh = (this._hh + hh + getCarry(this._hl, hl)) | 0\n}\n\nSha512.prototype._hash = function () {\n var H = Buffer.allocUnsafe(64)\n\n function writeInt64BE (h, l, offset) {\n H.writeInt32BE(h, offset)\n H.writeInt32BE(l, offset + 4)\n }\n\n writeInt64BE(this._ah, this._al, 0)\n writeInt64BE(this._bh, this._bl, 8)\n writeInt64BE(this._ch, this._cl, 16)\n writeInt64BE(this._dh, this._dl, 24)\n writeInt64BE(this._eh, this._el, 32)\n writeInt64BE(this._fh, this._fl, 40)\n writeInt64BE(this._gh, this._gl, 48)\n writeInt64BE(this._hh, this._hl, 56)\n\n return H\n}\n\nmodule.exports = Sha512\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nmodule.exports = Stream;\n\nvar EE = require('events').EventEmitter;\nvar inherits = require('inherits');\n\ninherits(Stream, EE);\nStream.Readable = require('readable-stream/readable.js');\nStream.Writable = require('readable-stream/writable.js');\nStream.Duplex = require('readable-stream/duplex.js');\nStream.Transform = require('readable-stream/transform.js');\nStream.PassThrough = require('readable-stream/passthrough.js');\n\n// Backwards-compat with node 0.4.x\nStream.Stream = Stream;\n\n\n\n// old-style streams. Note that the pipe method (the only relevant\n// part of this class) is overridden in the Readable class.\n\nfunction Stream() {\n EE.call(this);\n}\n\nStream.prototype.pipe = function(dest, options) {\n var source = this;\n\n function ondata(chunk) {\n if (dest.writable) {\n if (false === dest.write(chunk) && source.pause) {\n source.pause();\n }\n }\n }\n\n source.on('data', ondata);\n\n function ondrain() {\n if (source.readable && source.resume) {\n source.resume();\n }\n }\n\n dest.on('drain', ondrain);\n\n // If the 'end' option is not supplied, dest.end() will be called when\n // source gets the 'end' or 'close' events. Only dest.end() once.\n if (!dest._isStdio && (!options || options.end !== false)) {\n source.on('end', onend);\n source.on('close', onclose);\n }\n\n var didOnEnd = false;\n function onend() {\n if (didOnEnd) return;\n didOnEnd = true;\n\n dest.end();\n }\n\n\n function onclose() {\n if (didOnEnd) return;\n didOnEnd = true;\n\n if (typeof dest.destroy === 'function') dest.destroy();\n }\n\n // don't leave dangling pipes when there are errors.\n function onerror(er) {\n cleanup();\n if (EE.listenerCount(this, 'error') === 0) {\n throw er; // Unhandled stream error in pipe.\n }\n }\n\n source.on('error', onerror);\n dest.on('error', onerror);\n\n // remove all the event listeners that were added.\n function cleanup() {\n source.removeListener('data', ondata);\n dest.removeListener('drain', ondrain);\n\n source.removeListener('end', onend);\n source.removeListener('close', onclose);\n\n source.removeListener('error', onerror);\n dest.removeListener('error', onerror);\n\n source.removeListener('end', cleanup);\n source.removeListener('close', cleanup);\n\n dest.removeListener('close', cleanup);\n }\n\n source.on('end', cleanup);\n source.on('close', cleanup);\n\n dest.on('close', cleanup);\n\n dest.emit('pipe', source);\n\n // Allow for unix-like usage: A.pipe(B).pipe(C)\n return dest;\n};\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\n/**/\n\nvar pna = require('process-nextick-args');\n/**/\n\nmodule.exports = Readable;\n\n/**/\nvar isArray = require('isarray');\n/**/\n\n/**/\nvar Duplex;\n/**/\n\nReadable.ReadableState = ReadableState;\n\n/**/\nvar EE = require('events').EventEmitter;\n\nvar EElistenerCount = function (emitter, type) {\n return emitter.listeners(type).length;\n};\n/**/\n\n/**/\nvar Stream = require('./internal/streams/stream');\n/**/\n\n/**/\n\nvar Buffer = require('safe-buffer').Buffer;\nvar OurUint8Array = global.Uint8Array || function () {};\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n\n/**/\n\n/**/\nvar util = Object.create(require('core-util-is'));\nutil.inherits = require('inherits');\n/**/\n\n/**/\nvar debugUtil = require('util');\nvar debug = void 0;\nif (debugUtil && debugUtil.debuglog) {\n debug = debugUtil.debuglog('stream');\n} else {\n debug = function () {};\n}\n/**/\n\nvar BufferList = require('./internal/streams/BufferList');\nvar destroyImpl = require('./internal/streams/destroy');\nvar StringDecoder;\n\nutil.inherits(Readable, Stream);\n\nvar kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];\n\nfunction prependListener(emitter, event, fn) {\n // Sadly this is not cacheable as some libraries bundle their own\n // event emitter implementation with them.\n if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn);\n\n // This is a hack to make sure that our error handler is attached before any\n // userland ones. NEVER DO THIS. This is here only because this code needs\n // to continue to work with older versions of Node.js that do not include\n // the prependListener() method. The goal is to eventually remove this hack.\n if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];\n}\n\nfunction ReadableState(options, stream) {\n Duplex = Duplex || require('./_stream_duplex');\n\n options = options || {};\n\n // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream.\n // These options can be provided separately as readableXXX and writableXXX.\n var isDuplex = stream instanceof Duplex;\n\n // object stream flag. Used to make read(n) ignore n and to\n // make all the buffer merging and length checks go away\n this.objectMode = !!options.objectMode;\n\n if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode;\n\n // the point at which it stops calling _read() to fill the buffer\n // Note: 0 is a valid value, means \"don't call _read preemptively ever\"\n var hwm = options.highWaterMark;\n var readableHwm = options.readableHighWaterMark;\n var defaultHwm = this.objectMode ? 16 : 16 * 1024;\n\n if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (readableHwm || readableHwm === 0)) this.highWaterMark = readableHwm;else this.highWaterMark = defaultHwm;\n\n // cast to ints.\n this.highWaterMark = Math.floor(this.highWaterMark);\n\n // A linked list is used to store data chunks instead of an array because the\n // linked list can remove elements from the beginning faster than\n // array.shift()\n this.buffer = new BufferList();\n this.length = 0;\n this.pipes = null;\n this.pipesCount = 0;\n this.flowing = null;\n this.ended = false;\n this.endEmitted = false;\n this.reading = false;\n\n // a flag to be able to tell if the event 'readable'/'data' is emitted\n // immediately, or on a later tick. We set this to true at first, because\n // any actions that shouldn't happen until \"later\" should generally also\n // not happen before the first read call.\n this.sync = true;\n\n // whenever we return null, then we set a flag to say\n // that we're awaiting a 'readable' event emission.\n this.needReadable = false;\n this.emittedReadable = false;\n this.readableListening = false;\n this.resumeScheduled = false;\n\n // has it been destroyed\n this.destroyed = false;\n\n // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n this.defaultEncoding = options.defaultEncoding || 'utf8';\n\n // the number of writers that are awaiting a drain event in .pipe()s\n this.awaitDrain = 0;\n\n // if true, a maybeReadMore has been scheduled\n this.readingMore = false;\n\n this.decoder = null;\n this.encoding = null;\n if (options.encoding) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n this.decoder = new StringDecoder(options.encoding);\n this.encoding = options.encoding;\n }\n}\n\nfunction Readable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n\n if (!(this instanceof Readable)) return new Readable(options);\n\n this._readableState = new ReadableState(options, this);\n\n // legacy\n this.readable = true;\n\n if (options) {\n if (typeof options.read === 'function') this._read = options.read;\n\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n }\n\n Stream.call(this);\n}\n\nObject.defineProperty(Readable.prototype, 'destroyed', {\n get: function () {\n if (this._readableState === undefined) {\n return false;\n }\n return this._readableState.destroyed;\n },\n set: function (value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._readableState) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._readableState.destroyed = value;\n }\n});\n\nReadable.prototype.destroy = destroyImpl.destroy;\nReadable.prototype._undestroy = destroyImpl.undestroy;\nReadable.prototype._destroy = function (err, cb) {\n this.push(null);\n cb(err);\n};\n\n// Manually shove something into the read() buffer.\n// This returns true if the highWaterMark has not been hit yet,\n// similar to how Writable.write() returns true if you should\n// write() some more.\nReadable.prototype.push = function (chunk, encoding) {\n var state = this._readableState;\n var skipChunkCheck;\n\n if (!state.objectMode) {\n if (typeof chunk === 'string') {\n encoding = encoding || state.defaultEncoding;\n if (encoding !== state.encoding) {\n chunk = Buffer.from(chunk, encoding);\n encoding = '';\n }\n skipChunkCheck = true;\n }\n } else {\n skipChunkCheck = true;\n }\n\n return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);\n};\n\n// Unshift should *always* be something directly out of read()\nReadable.prototype.unshift = function (chunk) {\n return readableAddChunk(this, chunk, null, true, false);\n};\n\nfunction readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {\n var state = stream._readableState;\n if (chunk === null) {\n state.reading = false;\n onEofChunk(stream, state);\n } else {\n var er;\n if (!skipChunkCheck) er = chunkInvalid(state, chunk);\n if (er) {\n stream.emit('error', er);\n } else if (state.objectMode || chunk && chunk.length > 0) {\n if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (addToFront) {\n if (state.endEmitted) stream.emit('error', new Error('stream.unshift() after end event'));else addChunk(stream, state, chunk, true);\n } else if (state.ended) {\n stream.emit('error', new Error('stream.push() after EOF'));\n } else {\n state.reading = false;\n if (state.decoder && !encoding) {\n chunk = state.decoder.write(chunk);\n if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);\n } else {\n addChunk(stream, state, chunk, false);\n }\n }\n } else if (!addToFront) {\n state.reading = false;\n }\n }\n\n return needMoreData(state);\n}\n\nfunction addChunk(stream, state, chunk, addToFront) {\n if (state.flowing && state.length === 0 && !state.sync) {\n stream.emit('data', chunk);\n stream.read(0);\n } else {\n // update the buffer info.\n state.length += state.objectMode ? 1 : chunk.length;\n if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);\n\n if (state.needReadable) emitReadable(stream);\n }\n maybeReadMore(stream, state);\n}\n\nfunction chunkInvalid(state, chunk) {\n var er;\n if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {\n er = new TypeError('Invalid non-string/buffer chunk');\n }\n return er;\n}\n\n// if it's past the high water mark, we can push in some more.\n// Also, if we have no data yet, we can stand some\n// more bytes. This is to work around cases where hwm=0,\n// such as the repl. Also, if the push() triggered a\n// readable event, and the user called read(largeNumber) such that\n// needReadable was set, then we ought to push more, so that another\n// 'readable' event will be triggered.\nfunction needMoreData(state) {\n return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0);\n}\n\nReadable.prototype.isPaused = function () {\n return this._readableState.flowing === false;\n};\n\n// backwards compatibility.\nReadable.prototype.setEncoding = function (enc) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n this._readableState.decoder = new StringDecoder(enc);\n this._readableState.encoding = enc;\n return this;\n};\n\n// Don't raise the hwm > 8MB\nvar MAX_HWM = 0x800000;\nfunction computeNewHighWaterMark(n) {\n if (n >= MAX_HWM) {\n n = MAX_HWM;\n } else {\n // Get the next highest power of 2 to prevent increasing hwm excessively in\n // tiny amounts\n n--;\n n |= n >>> 1;\n n |= n >>> 2;\n n |= n >>> 4;\n n |= n >>> 8;\n n |= n >>> 16;\n n++;\n }\n return n;\n}\n\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction howMuchToRead(n, state) {\n if (n <= 0 || state.length === 0 && state.ended) return 0;\n if (state.objectMode) return 1;\n if (n !== n) {\n // Only flow one buffer at a time\n if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;\n }\n // If we're asking for more than the current hwm, then raise the hwm.\n if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);\n if (n <= state.length) return n;\n // Don't have enough\n if (!state.ended) {\n state.needReadable = true;\n return 0;\n }\n return state.length;\n}\n\n// you can override either this method, or the async _read(n) below.\nReadable.prototype.read = function (n) {\n debug('read', n);\n n = parseInt(n, 10);\n var state = this._readableState;\n var nOrig = n;\n\n if (n !== 0) state.emittedReadable = false;\n\n // if we're doing read(0) to trigger a readable event, but we\n // already have a bunch of data in the buffer, then just trigger\n // the 'readable' event and move on.\n if (n === 0 && state.needReadable && (state.length >= state.highWaterMark || state.ended)) {\n debug('read: emitReadable', state.length, state.ended);\n if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);\n return null;\n }\n\n n = howMuchToRead(n, state);\n\n // if we've ended, and we're now clear, then finish it up.\n if (n === 0 && state.ended) {\n if (state.length === 0) endReadable(this);\n return null;\n }\n\n // All the actual chunk generation logic needs to be\n // *below* the call to _read. The reason is that in certain\n // synthetic stream cases, such as passthrough streams, _read\n // may be a completely synchronous operation which may change\n // the state of the read buffer, providing enough data when\n // before there was *not* enough.\n //\n // So, the steps are:\n // 1. Figure out what the state of things will be after we do\n // a read from the buffer.\n //\n // 2. If that resulting state will trigger a _read, then call _read.\n // Note that this may be asynchronous, or synchronous. Yes, it is\n // deeply ugly to write APIs this way, but that still doesn't mean\n // that the Readable class should behave improperly, as streams are\n // designed to be sync/async agnostic.\n // Take note if the _read call is sync or async (ie, if the read call\n // has returned yet), so that we know whether or not it's safe to emit\n // 'readable' etc.\n //\n // 3. Actually pull the requested chunks out of the buffer and return.\n\n // if we need a readable event, then we need to do some reading.\n var doRead = state.needReadable;\n debug('need readable', doRead);\n\n // if we currently have less than the highWaterMark, then also read some\n if (state.length === 0 || state.length - n < state.highWaterMark) {\n doRead = true;\n debug('length less than watermark', doRead);\n }\n\n // however, if we've ended, then there's no point, and if we're already\n // reading, then it's unnecessary.\n if (state.ended || state.reading) {\n doRead = false;\n debug('reading or ended', doRead);\n } else if (doRead) {\n debug('do read');\n state.reading = true;\n state.sync = true;\n // if the length is currently zero, then we *need* a readable event.\n if (state.length === 0) state.needReadable = true;\n // call internal read method\n this._read(state.highWaterMark);\n state.sync = false;\n // If _read pushed data synchronously, then `reading` will be false,\n // and we need to re-evaluate how much data we can return to the user.\n if (!state.reading) n = howMuchToRead(nOrig, state);\n }\n\n var ret;\n if (n > 0) ret = fromList(n, state);else ret = null;\n\n if (ret === null) {\n state.needReadable = true;\n n = 0;\n } else {\n state.length -= n;\n }\n\n if (state.length === 0) {\n // If we have nothing in the buffer, then we want to know\n // as soon as we *do* get something into the buffer.\n if (!state.ended) state.needReadable = true;\n\n // If we tried to read() past the EOF, then emit end on the next tick.\n if (nOrig !== n && state.ended) endReadable(this);\n }\n\n if (ret !== null) this.emit('data', ret);\n\n return ret;\n};\n\nfunction onEofChunk(stream, state) {\n if (state.ended) return;\n if (state.decoder) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) {\n state.buffer.push(chunk);\n state.length += state.objectMode ? 1 : chunk.length;\n }\n }\n state.ended = true;\n\n // emit 'readable' now to make sure it gets picked up.\n emitReadable(stream);\n}\n\n// Don't emit readable right away in sync mode, because this can trigger\n// another read() call => stack overflow. This way, it might trigger\n// a nextTick recursion warning, but that's not so bad.\nfunction emitReadable(stream) {\n var state = stream._readableState;\n state.needReadable = false;\n if (!state.emittedReadable) {\n debug('emitReadable', state.flowing);\n state.emittedReadable = true;\n if (state.sync) pna.nextTick(emitReadable_, stream);else emitReadable_(stream);\n }\n}\n\nfunction emitReadable_(stream) {\n debug('emit readable');\n stream.emit('readable');\n flow(stream);\n}\n\n// at this point, the user has presumably seen the 'readable' event,\n// and called read() to consume some data. that may have triggered\n// in turn another _read(n) call, in which case reading = true if\n// it's in progress.\n// However, if we're not ended, or reading, and the length < hwm,\n// then go ahead and try to read some more preemptively.\nfunction maybeReadMore(stream, state) {\n if (!state.readingMore) {\n state.readingMore = true;\n pna.nextTick(maybeReadMore_, stream, state);\n }\n}\n\nfunction maybeReadMore_(stream, state) {\n var len = state.length;\n while (!state.reading && !state.flowing && !state.ended && state.length < state.highWaterMark) {\n debug('maybeReadMore read 0');\n stream.read(0);\n if (len === state.length)\n // didn't get any data, stop spinning.\n break;else len = state.length;\n }\n state.readingMore = false;\n}\n\n// abstract method. to be overridden in specific implementation classes.\n// call cb(er, data) where data is <= n in length.\n// for virtual (non-string, non-buffer) streams, \"length\" is somewhat\n// arbitrary, and perhaps not very meaningful.\nReadable.prototype._read = function (n) {\n this.emit('error', new Error('_read() is not implemented'));\n};\n\nReadable.prototype.pipe = function (dest, pipeOpts) {\n var src = this;\n var state = this._readableState;\n\n switch (state.pipesCount) {\n case 0:\n state.pipes = dest;\n break;\n case 1:\n state.pipes = [state.pipes, dest];\n break;\n default:\n state.pipes.push(dest);\n break;\n }\n state.pipesCount += 1;\n debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);\n\n var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;\n\n var endFn = doEnd ? onend : unpipe;\n if (state.endEmitted) pna.nextTick(endFn);else src.once('end', endFn);\n\n dest.on('unpipe', onunpipe);\n function onunpipe(readable, unpipeInfo) {\n debug('onunpipe');\n if (readable === src) {\n if (unpipeInfo && unpipeInfo.hasUnpiped === false) {\n unpipeInfo.hasUnpiped = true;\n cleanup();\n }\n }\n }\n\n function onend() {\n debug('onend');\n dest.end();\n }\n\n // when the dest drains, it reduces the awaitDrain counter\n // on the source. This would be more elegant with a .once()\n // handler in flow(), but adding and removing repeatedly is\n // too slow.\n var ondrain = pipeOnDrain(src);\n dest.on('drain', ondrain);\n\n var cleanedUp = false;\n function cleanup() {\n debug('cleanup');\n // cleanup event handlers once the pipe is broken\n dest.removeListener('close', onclose);\n dest.removeListener('finish', onfinish);\n dest.removeListener('drain', ondrain);\n dest.removeListener('error', onerror);\n dest.removeListener('unpipe', onunpipe);\n src.removeListener('end', onend);\n src.removeListener('end', unpipe);\n src.removeListener('data', ondata);\n\n cleanedUp = true;\n\n // if the reader is waiting for a drain event from this\n // specific writer, then it would cause it to never start\n // flowing again.\n // So, if this is awaiting a drain, then we just call it now.\n // If we don't know, then assume that we are waiting for one.\n if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();\n }\n\n // If the user pushes more data while we're writing to dest then we'll end up\n // in ondata again. However, we only want to increase awaitDrain once because\n // dest will only emit one 'drain' event for the multiple writes.\n // => Introduce a guard on increasing awaitDrain.\n var increasedAwaitDrain = false;\n src.on('data', ondata);\n function ondata(chunk) {\n debug('ondata');\n increasedAwaitDrain = false;\n var ret = dest.write(chunk);\n if (false === ret && !increasedAwaitDrain) {\n // If the user unpiped during `dest.write()`, it is possible\n // to get stuck in a permanently paused state if that write\n // also returned false.\n // => Check whether `dest` is still a piping destination.\n if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {\n debug('false write response, pause', src._readableState.awaitDrain);\n src._readableState.awaitDrain++;\n increasedAwaitDrain = true;\n }\n src.pause();\n }\n }\n\n // if the dest has an error, then stop piping into it.\n // however, don't suppress the throwing behavior for this.\n function onerror(er) {\n debug('onerror', er);\n unpipe();\n dest.removeListener('error', onerror);\n if (EElistenerCount(dest, 'error') === 0) dest.emit('error', er);\n }\n\n // Make sure our error handler is attached before userland ones.\n prependListener(dest, 'error', onerror);\n\n // Both close and finish should trigger unpipe, but only once.\n function onclose() {\n dest.removeListener('finish', onfinish);\n unpipe();\n }\n dest.once('close', onclose);\n function onfinish() {\n debug('onfinish');\n dest.removeListener('close', onclose);\n unpipe();\n }\n dest.once('finish', onfinish);\n\n function unpipe() {\n debug('unpipe');\n src.unpipe(dest);\n }\n\n // tell the dest that it's being piped to\n dest.emit('pipe', src);\n\n // start the flow if it hasn't been started already.\n if (!state.flowing) {\n debug('pipe resume');\n src.resume();\n }\n\n return dest;\n};\n\nfunction pipeOnDrain(src) {\n return function () {\n var state = src._readableState;\n debug('pipeOnDrain', state.awaitDrain);\n if (state.awaitDrain) state.awaitDrain--;\n if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {\n state.flowing = true;\n flow(src);\n }\n };\n}\n\nReadable.prototype.unpipe = function (dest) {\n var state = this._readableState;\n var unpipeInfo = { hasUnpiped: false };\n\n // if we're not piping anywhere, then do nothing.\n if (state.pipesCount === 0) return this;\n\n // just one destination. most common case.\n if (state.pipesCount === 1) {\n // passed in one, but it's not the right one.\n if (dest && dest !== state.pipes) return this;\n\n if (!dest) dest = state.pipes;\n\n // got a match.\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n if (dest) dest.emit('unpipe', this, unpipeInfo);\n return this;\n }\n\n // slow case. multiple pipe destinations.\n\n if (!dest) {\n // remove all.\n var dests = state.pipes;\n var len = state.pipesCount;\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n\n for (var i = 0; i < len; i++) {\n dests[i].emit('unpipe', this, unpipeInfo);\n }return this;\n }\n\n // try to find the right one.\n var index = indexOf(state.pipes, dest);\n if (index === -1) return this;\n\n state.pipes.splice(index, 1);\n state.pipesCount -= 1;\n if (state.pipesCount === 1) state.pipes = state.pipes[0];\n\n dest.emit('unpipe', this, unpipeInfo);\n\n return this;\n};\n\n// set up data events if they are asked for\n// Ensure readable listeners eventually get something\nReadable.prototype.on = function (ev, fn) {\n var res = Stream.prototype.on.call(this, ev, fn);\n\n if (ev === 'data') {\n // Start flowing on next tick if stream isn't explicitly paused\n if (this._readableState.flowing !== false) this.resume();\n } else if (ev === 'readable') {\n var state = this._readableState;\n if (!state.endEmitted && !state.readableListening) {\n state.readableListening = state.needReadable = true;\n state.emittedReadable = false;\n if (!state.reading) {\n pna.nextTick(nReadingNextTick, this);\n } else if (state.length) {\n emitReadable(this);\n }\n }\n }\n\n return res;\n};\nReadable.prototype.addListener = Readable.prototype.on;\n\nfunction nReadingNextTick(self) {\n debug('readable nexttick read 0');\n self.read(0);\n}\n\n// pause() and resume() are remnants of the legacy readable stream API\n// If the user uses them, then switch into old mode.\nReadable.prototype.resume = function () {\n var state = this._readableState;\n if (!state.flowing) {\n debug('resume');\n state.flowing = true;\n resume(this, state);\n }\n return this;\n};\n\nfunction resume(stream, state) {\n if (!state.resumeScheduled) {\n state.resumeScheduled = true;\n pna.nextTick(resume_, stream, state);\n }\n}\n\nfunction resume_(stream, state) {\n if (!state.reading) {\n debug('resume read 0');\n stream.read(0);\n }\n\n state.resumeScheduled = false;\n state.awaitDrain = 0;\n stream.emit('resume');\n flow(stream);\n if (state.flowing && !state.reading) stream.read(0);\n}\n\nReadable.prototype.pause = function () {\n debug('call pause flowing=%j', this._readableState.flowing);\n if (false !== this._readableState.flowing) {\n debug('pause');\n this._readableState.flowing = false;\n this.emit('pause');\n }\n return this;\n};\n\nfunction flow(stream) {\n var state = stream._readableState;\n debug('flow', state.flowing);\n while (state.flowing && stream.read() !== null) {}\n}\n\n// wrap an old-style stream as the async data source.\n// This is *not* part of the readable stream interface.\n// It is an ugly unfortunate mess of history.\nReadable.prototype.wrap = function (stream) {\n var _this = this;\n\n var state = this._readableState;\n var paused = false;\n\n stream.on('end', function () {\n debug('wrapped end');\n if (state.decoder && !state.ended) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) _this.push(chunk);\n }\n\n _this.push(null);\n });\n\n stream.on('data', function (chunk) {\n debug('wrapped data');\n if (state.decoder) chunk = state.decoder.write(chunk);\n\n // don't skip over falsy values in objectMode\n if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;\n\n var ret = _this.push(chunk);\n if (!ret) {\n paused = true;\n stream.pause();\n }\n });\n\n // proxy all the other methods.\n // important when wrapping filters and duplexes.\n for (var i in stream) {\n if (this[i] === undefined && typeof stream[i] === 'function') {\n this[i] = function (method) {\n return function () {\n return stream[method].apply(stream, arguments);\n };\n }(i);\n }\n }\n\n // proxy certain important events.\n for (var n = 0; n < kProxyEvents.length; n++) {\n stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n]));\n }\n\n // when we try to consume some more bytes, simply unpause the\n // underlying stream.\n this._read = function (n) {\n debug('wrapped _read', n);\n if (paused) {\n paused = false;\n stream.resume();\n }\n };\n\n return this;\n};\n\nObject.defineProperty(Readable.prototype, 'readableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function () {\n return this._readableState.highWaterMark;\n }\n});\n\n// exposed for testing purposes only.\nReadable._fromList = fromList;\n\n// Pluck off n bytes from an array of buffers.\n// Length is the combined lengths of all the buffers in the list.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction fromList(n, state) {\n // nothing buffered\n if (state.length === 0) return null;\n\n var ret;\n if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {\n // read it all, truncate the list\n if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.head.data;else ret = state.buffer.concat(state.length);\n state.buffer.clear();\n } else {\n // read part of list\n ret = fromListPartial(n, state.buffer, state.decoder);\n }\n\n return ret;\n}\n\n// Extracts only enough buffered data to satisfy the amount requested.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction fromListPartial(n, list, hasStrings) {\n var ret;\n if (n < list.head.data.length) {\n // slice is the same for buffers and strings\n ret = list.head.data.slice(0, n);\n list.head.data = list.head.data.slice(n);\n } else if (n === list.head.data.length) {\n // first chunk is a perfect match\n ret = list.shift();\n } else {\n // result spans more than one buffer\n ret = hasStrings ? copyFromBufferString(n, list) : copyFromBuffer(n, list);\n }\n return ret;\n}\n\n// Copies a specified amount of characters from the list of buffered data\n// chunks.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction copyFromBufferString(n, list) {\n var p = list.head;\n var c = 1;\n var ret = p.data;\n n -= ret.length;\n while (p = p.next) {\n var str = p.data;\n var nb = n > str.length ? str.length : n;\n if (nb === str.length) ret += str;else ret += str.slice(0, n);\n n -= nb;\n if (n === 0) {\n if (nb === str.length) {\n ++c;\n if (p.next) list.head = p.next;else list.head = list.tail = null;\n } else {\n list.head = p;\n p.data = str.slice(nb);\n }\n break;\n }\n ++c;\n }\n list.length -= c;\n return ret;\n}\n\n// Copies a specified amount of bytes from the list of buffered data chunks.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction copyFromBuffer(n, list) {\n var ret = Buffer.allocUnsafe(n);\n var p = list.head;\n var c = 1;\n p.data.copy(ret);\n n -= p.data.length;\n while (p = p.next) {\n var buf = p.data;\n var nb = n > buf.length ? buf.length : n;\n buf.copy(ret, ret.length - n, 0, nb);\n n -= nb;\n if (n === 0) {\n if (nb === buf.length) {\n ++c;\n if (p.next) list.head = p.next;else list.head = list.tail = null;\n } else {\n list.head = p;\n p.data = buf.slice(nb);\n }\n break;\n }\n ++c;\n }\n list.length -= c;\n return ret;\n}\n\nfunction endReadable(stream) {\n var state = stream._readableState;\n\n // If we get here before consuming all the bytes, then that is a\n // bug in node. Should never happen.\n if (state.length > 0) throw new Error('\"endReadable()\" called on non-empty stream');\n\n if (!state.endEmitted) {\n state.ended = true;\n pna.nextTick(endReadableNT, state, stream);\n }\n}\n\nfunction endReadableNT(state, stream) {\n // Check that we didn't get one last unshift.\n if (!state.endEmitted && state.length === 0) {\n state.endEmitted = true;\n stream.readable = false;\n stream.emit('end');\n }\n}\n\nfunction indexOf(xs, x) {\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) return i;\n }\n return -1;\n}","module.exports = require('events').EventEmitter;\n","'use strict';\n\n/**/\n\nvar pna = require('process-nextick-args');\n/**/\n\n// undocumented cb() API, needed for core, not for public API\nfunction destroy(err, cb) {\n var _this = this;\n\n var readableDestroyed = this._readableState && this._readableState.destroyed;\n var writableDestroyed = this._writableState && this._writableState.destroyed;\n\n if (readableDestroyed || writableDestroyed) {\n if (cb) {\n cb(err);\n } else if (err && (!this._writableState || !this._writableState.errorEmitted)) {\n pna.nextTick(emitErrorNT, this, err);\n }\n return this;\n }\n\n // we set destroyed to true before firing error callbacks in order\n // to make it re-entrance safe in case destroy() is called within callbacks\n\n if (this._readableState) {\n this._readableState.destroyed = true;\n }\n\n // if this is a duplex stream mark the writable part as destroyed as well\n if (this._writableState) {\n this._writableState.destroyed = true;\n }\n\n this._destroy(err || null, function (err) {\n if (!cb && err) {\n pna.nextTick(emitErrorNT, _this, err);\n if (_this._writableState) {\n _this._writableState.errorEmitted = true;\n }\n } else if (cb) {\n cb(err);\n }\n });\n\n return this;\n}\n\nfunction undestroy() {\n if (this._readableState) {\n this._readableState.destroyed = false;\n this._readableState.reading = false;\n this._readableState.ended = false;\n this._readableState.endEmitted = false;\n }\n\n if (this._writableState) {\n this._writableState.destroyed = false;\n this._writableState.ended = false;\n this._writableState.ending = false;\n this._writableState.finished = false;\n this._writableState.errorEmitted = false;\n }\n}\n\nfunction emitErrorNT(self, err) {\n self.emit('error', err);\n}\n\nmodule.exports = {\n destroy: destroy,\n undestroy: undestroy\n};","var scope = (typeof global !== \"undefined\" && global) ||\n (typeof self !== \"undefined\" && self) ||\n window;\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(scope, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\n// On some exotic environments, it's not clear which object `setimmediate` was\n// able to install onto. Search each possibility in the same order as the\n// `setimmediate` library.\nexports.setImmediate = (typeof self !== \"undefined\" && self.setImmediate) ||\n (typeof global !== \"undefined\" && global.setImmediate) ||\n (this && this.setImmediate);\nexports.clearImmediate = (typeof self !== \"undefined\" && self.clearImmediate) ||\n (typeof global !== \"undefined\" && global.clearImmediate) ||\n (this && this.clearImmediate);\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a transform stream is a readable/writable stream where you do\n// something with the data. Sometimes it's called a \"filter\",\n// but that's not a great name for it, since that implies a thing where\n// some bits pass through, and others are simply ignored. (That would\n// be a valid example of a transform, of course.)\n//\n// While the output is causally related to the input, it's not a\n// necessarily symmetric or synchronous transformation. For example,\n// a zlib stream might take multiple plain-text writes(), and then\n// emit a single compressed chunk some time in the future.\n//\n// Here's how this works:\n//\n// The Transform stream has all the aspects of the readable and writable\n// stream classes. When you write(chunk), that calls _write(chunk,cb)\n// internally, and returns false if there's a lot of pending writes\n// buffered up. When you call read(), that calls _read(n) until\n// there's enough pending readable data buffered up.\n//\n// In a transform stream, the written data is placed in a buffer. When\n// _read(n) is called, it transforms the queued up data, calling the\n// buffered _write cb's as it consumes chunks. If consuming a single\n// written chunk would result in multiple output chunks, then the first\n// outputted bit calls the readcb, and subsequent chunks just go into\n// the read buffer, and will cause it to emit 'readable' if necessary.\n//\n// This way, back-pressure is actually determined by the reading side,\n// since _read has to be called to start processing a new chunk. However,\n// a pathological inflate type of transform can cause excessive buffering\n// here. For example, imagine a stream where every byte of input is\n// interpreted as an integer from 0-255, and then results in that many\n// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in\n// 1kb of data being output. In this case, you could write a very small\n// amount of input, and end up with a very large amount of output. In\n// such a pathological inflating mechanism, there'd be no way to tell\n// the system to stop doing the transform. A single 4MB write could\n// cause the system to run out of memory.\n//\n// However, even in such a pathological case, only a single written chunk\n// would be consumed, and then the rest would wait (un-transformed) until\n// the results of the previous transformed chunk were consumed.\n\n'use strict';\n\nmodule.exports = Transform;\n\nvar Duplex = require('./_stream_duplex');\n\n/**/\nvar util = Object.create(require('core-util-is'));\nutil.inherits = require('inherits');\n/**/\n\nutil.inherits(Transform, Duplex);\n\nfunction afterTransform(er, data) {\n var ts = this._transformState;\n ts.transforming = false;\n\n var cb = ts.writecb;\n\n if (!cb) {\n return this.emit('error', new Error('write callback called multiple times'));\n }\n\n ts.writechunk = null;\n ts.writecb = null;\n\n if (data != null) // single equals check for both `null` and `undefined`\n this.push(data);\n\n cb(er);\n\n var rs = this._readableState;\n rs.reading = false;\n if (rs.needReadable || rs.length < rs.highWaterMark) {\n this._read(rs.highWaterMark);\n }\n}\n\nfunction Transform(options) {\n if (!(this instanceof Transform)) return new Transform(options);\n\n Duplex.call(this, options);\n\n this._transformState = {\n afterTransform: afterTransform.bind(this),\n needTransform: false,\n transforming: false,\n writecb: null,\n writechunk: null,\n writeencoding: null\n };\n\n // start out asking for a readable event once data is transformed.\n this._readableState.needReadable = true;\n\n // we have implemented the _read method, and done the other things\n // that Readable wants before the first _read call, so unset the\n // sync guard flag.\n this._readableState.sync = false;\n\n if (options) {\n if (typeof options.transform === 'function') this._transform = options.transform;\n\n if (typeof options.flush === 'function') this._flush = options.flush;\n }\n\n // When the writable side finishes, then flush out anything remaining.\n this.on('prefinish', prefinish);\n}\n\nfunction prefinish() {\n var _this = this;\n\n if (typeof this._flush === 'function') {\n this._flush(function (er, data) {\n done(_this, er, data);\n });\n } else {\n done(this, null, null);\n }\n}\n\nTransform.prototype.push = function (chunk, encoding) {\n this._transformState.needTransform = false;\n return Duplex.prototype.push.call(this, chunk, encoding);\n};\n\n// This is the part where you do stuff!\n// override this function in implementation classes.\n// 'chunk' is an input chunk.\n//\n// Call `push(newChunk)` to pass along transformed output\n// to the readable side. You may call 'push' zero or more times.\n//\n// Call `cb(err)` when you are done with this chunk. If you pass\n// an error, then that'll put the hurt on the whole operation. If you\n// never call cb(), then you'll never get another chunk.\nTransform.prototype._transform = function (chunk, encoding, cb) {\n throw new Error('_transform() is not implemented');\n};\n\nTransform.prototype._write = function (chunk, encoding, cb) {\n var ts = this._transformState;\n ts.writecb = cb;\n ts.writechunk = chunk;\n ts.writeencoding = encoding;\n if (!ts.transforming) {\n var rs = this._readableState;\n if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);\n }\n};\n\n// Doesn't matter what the args are here.\n// _transform does all the work.\n// That we got here means that the readable side wants more data.\nTransform.prototype._read = function (n) {\n var ts = this._transformState;\n\n if (ts.writechunk !== null && ts.writecb && !ts.transforming) {\n ts.transforming = true;\n this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);\n } else {\n // mark that we need a transform, so that any data that comes in\n // will get processed, now that we've asked for it.\n ts.needTransform = true;\n }\n};\n\nTransform.prototype._destroy = function (err, cb) {\n var _this2 = this;\n\n Duplex.prototype._destroy.call(this, err, function (err2) {\n cb(err2);\n _this2.emit('close');\n });\n};\n\nfunction done(stream, er, data) {\n if (er) return stream.emit('error', er);\n\n if (data != null) // single equals check for both `null` and `undefined`\n stream.push(data);\n\n // if there's nothing in the write buffer, then that means\n // that nothing more will ever be provided\n if (stream._writableState.length) throw new Error('Calling transform done when ws.length != 0');\n\n if (stream._transformState.transforming) throw new Error('Calling transform done when still transforming');\n\n return stream.push(null);\n}","/* globals __webpack_amd_options__ */\nmodule.exports = __webpack_amd_options__;\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n */\r\n/**\r\n * @file index.js\r\n * @author Fabian Vogelsteller \r\n * @date 2016\r\n */\r\n\"use strict\";\r\nvar EventEmitter = require('eventemitter3');\r\n/**\r\n * This function generates a defer promise and adds eventEmitter functionality to it\r\n *\r\n * @method eventifiedPromise\r\n */\r\nvar PromiEvent = function PromiEvent(justPromise) {\r\n var resolve, reject, eventEmitter = new Promise(function () {\r\n resolve = arguments[0];\r\n reject = arguments[1];\r\n });\r\n if (justPromise) {\r\n return {\r\n resolve: resolve,\r\n reject: reject,\r\n eventEmitter: eventEmitter\r\n };\r\n }\r\n // get eventEmitter\r\n var emitter = new EventEmitter();\r\n // add eventEmitter to the promise\r\n eventEmitter._events = emitter._events;\r\n eventEmitter.emit = emitter.emit;\r\n eventEmitter.on = emitter.on;\r\n eventEmitter.once = emitter.once;\r\n eventEmitter.off = emitter.off;\r\n eventEmitter.listeners = emitter.listeners;\r\n eventEmitter.addListener = emitter.addListener;\r\n eventEmitter.removeListener = emitter.removeListener;\r\n eventEmitter.removeAllListeners = emitter.removeAllListeners;\r\n return {\r\n resolve: resolve,\r\n reject: reject,\r\n eventEmitter: eventEmitter\r\n };\r\n};\r\nPromiEvent.resolve = function (value) {\r\n var promise = PromiEvent(true);\r\n promise.resolve(value);\r\n return promise.eventEmitter;\r\n};\r\nmodule.exports = PromiEvent;\r\n","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","\"use strict\";\n/**\n * BigNumber\n *\n * A wrapper around the BN.js object. We use the BN.js library\n * because it is used by elliptic, so it is required regardless.\n *\n */\nimport _BN from \"bn.js\";\nvar BN = _BN.BN;\nimport { hexlify, isBytes, isHexString } from \"@ethersproject/bytes\";\nimport { Logger } from \"@ethersproject/logger\";\nimport { version } from \"./_version\";\nconst logger = new Logger(version);\nconst _constructorGuard = {};\nconst MAX_SAFE = 0x1fffffffffffff;\nexport function isBigNumberish(value) {\n return (value != null) && (BigNumber.isBigNumber(value) ||\n (typeof (value) === \"number\" && (value % 1) === 0) ||\n (typeof (value) === \"string\" && !!value.match(/^-?[0-9]+$/)) ||\n isHexString(value) ||\n (typeof (value) === \"bigint\") ||\n isBytes(value));\n}\n// Only warn about passing 10 into radix once\nlet _warnedToStringRadix = false;\nexport class BigNumber {\n constructor(constructorGuard, hex) {\n logger.checkNew(new.target, BigNumber);\n if (constructorGuard !== _constructorGuard) {\n logger.throwError(\"cannot call constructor directly; use BigNumber.from\", Logger.errors.UNSUPPORTED_OPERATION, {\n operation: \"new (BigNumber)\"\n });\n }\n this._hex = hex;\n this._isBigNumber = true;\n Object.freeze(this);\n }\n fromTwos(value) {\n return toBigNumber(toBN(this).fromTwos(value));\n }\n toTwos(value) {\n return toBigNumber(toBN(this).toTwos(value));\n }\n abs() {\n if (this._hex[0] === \"-\") {\n return BigNumber.from(this._hex.substring(1));\n }\n return this;\n }\n add(other) {\n return toBigNumber(toBN(this).add(toBN(other)));\n }\n sub(other) {\n return toBigNumber(toBN(this).sub(toBN(other)));\n }\n div(other) {\n const o = BigNumber.from(other);\n if (o.isZero()) {\n throwFault(\"division by zero\", \"div\");\n }\n return toBigNumber(toBN(this).div(toBN(other)));\n }\n mul(other) {\n return toBigNumber(toBN(this).mul(toBN(other)));\n }\n mod(other) {\n const value = toBN(other);\n if (value.isNeg()) {\n throwFault(\"cannot modulo negative values\", \"mod\");\n }\n return toBigNumber(toBN(this).umod(value));\n }\n pow(other) {\n const value = toBN(other);\n if (value.isNeg()) {\n throwFault(\"cannot raise to negative values\", \"pow\");\n }\n return toBigNumber(toBN(this).pow(value));\n }\n and(other) {\n const value = toBN(other);\n if (this.isNegative() || value.isNeg()) {\n throwFault(\"cannot 'and' negative values\", \"and\");\n }\n return toBigNumber(toBN(this).and(value));\n }\n or(other) {\n const value = toBN(other);\n if (this.isNegative() || value.isNeg()) {\n throwFault(\"cannot 'or' negative values\", \"or\");\n }\n return toBigNumber(toBN(this).or(value));\n }\n xor(other) {\n const value = toBN(other);\n if (this.isNegative() || value.isNeg()) {\n throwFault(\"cannot 'xor' negative values\", \"xor\");\n }\n return toBigNumber(toBN(this).xor(value));\n }\n mask(value) {\n if (this.isNegative() || value < 0) {\n throwFault(\"cannot mask negative values\", \"mask\");\n }\n return toBigNumber(toBN(this).maskn(value));\n }\n shl(value) {\n if (this.isNegative() || value < 0) {\n throwFault(\"cannot shift negative values\", \"shl\");\n }\n return toBigNumber(toBN(this).shln(value));\n }\n shr(value) {\n if (this.isNegative() || value < 0) {\n throwFault(\"cannot shift negative values\", \"shr\");\n }\n return toBigNumber(toBN(this).shrn(value));\n }\n eq(other) {\n return toBN(this).eq(toBN(other));\n }\n lt(other) {\n return toBN(this).lt(toBN(other));\n }\n lte(other) {\n return toBN(this).lte(toBN(other));\n }\n gt(other) {\n return toBN(this).gt(toBN(other));\n }\n gte(other) {\n return toBN(this).gte(toBN(other));\n }\n isNegative() {\n return (this._hex[0] === \"-\");\n }\n isZero() {\n return toBN(this).isZero();\n }\n toNumber() {\n try {\n return toBN(this).toNumber();\n }\n catch (error) {\n throwFault(\"overflow\", \"toNumber\", this.toString());\n }\n return null;\n }\n toBigInt() {\n try {\n return BigInt(this.toString());\n }\n catch (e) { }\n return logger.throwError(\"this platform does not support BigInt\", Logger.errors.UNSUPPORTED_OPERATION, {\n value: this.toString()\n });\n }\n toString() {\n // Lots of people expect this, which we do not support, so check (See: #889)\n if (arguments.length > 0) {\n if (arguments[0] === 10) {\n if (!_warnedToStringRadix) {\n _warnedToStringRadix = true;\n logger.warn(\"BigNumber.toString does not accept any parameters; base-10 is assumed\");\n }\n }\n else if (arguments[0] === 16) {\n logger.throwError(\"BigNumber.toString does not accept any parameters; use bigNumber.toHexString()\", Logger.errors.UNEXPECTED_ARGUMENT, {});\n }\n else {\n logger.throwError(\"BigNumber.toString does not accept parameters\", Logger.errors.UNEXPECTED_ARGUMENT, {});\n }\n }\n return toBN(this).toString(10);\n }\n toHexString() {\n return this._hex;\n }\n toJSON(key) {\n return { type: \"BigNumber\", hex: this.toHexString() };\n }\n static from(value) {\n if (value instanceof BigNumber) {\n return value;\n }\n if (typeof (value) === \"string\") {\n if (value.match(/^-?0x[0-9a-f]+$/i)) {\n return new BigNumber(_constructorGuard, toHex(value));\n }\n if (value.match(/^-?[0-9]+$/)) {\n return new BigNumber(_constructorGuard, toHex(new BN(value)));\n }\n return logger.throwArgumentError(\"invalid BigNumber string\", \"value\", value);\n }\n if (typeof (value) === \"number\") {\n if (value % 1) {\n throwFault(\"underflow\", \"BigNumber.from\", value);\n }\n if (value >= MAX_SAFE || value <= -MAX_SAFE) {\n throwFault(\"overflow\", \"BigNumber.from\", value);\n }\n return BigNumber.from(String(value));\n }\n const anyValue = value;\n if (typeof (anyValue) === \"bigint\") {\n return BigNumber.from(anyValue.toString());\n }\n if (isBytes(anyValue)) {\n return BigNumber.from(hexlify(anyValue));\n }\n if (anyValue) {\n // Hexable interface (takes priority)\n if (anyValue.toHexString) {\n const hex = anyValue.toHexString();\n if (typeof (hex) === \"string\") {\n return BigNumber.from(hex);\n }\n }\n else {\n // For now, handle legacy JSON-ified values (goes away in v6)\n let hex = anyValue._hex;\n // New-form JSON\n if (hex == null && anyValue.type === \"BigNumber\") {\n hex = anyValue.hex;\n }\n if (typeof (hex) === \"string\") {\n if (isHexString(hex) || (hex[0] === \"-\" && isHexString(hex.substring(1)))) {\n return BigNumber.from(hex);\n }\n }\n }\n }\n return logger.throwArgumentError(\"invalid BigNumber value\", \"value\", value);\n }\n static isBigNumber(value) {\n return !!(value && value._isBigNumber);\n }\n}\n// Normalize the hex string\nfunction toHex(value) {\n // For BN, call on the hex string\n if (typeof (value) !== \"string\") {\n return toHex(value.toString(16));\n }\n // If negative, prepend the negative sign to the normalized positive value\n if (value[0] === \"-\") {\n // Strip off the negative sign\n value = value.substring(1);\n // Cannot have multiple negative signs (e.g. \"--0x04\")\n if (value[0] === \"-\") {\n logger.throwArgumentError(\"invalid hex\", \"value\", value);\n }\n // Call toHex on the positive component\n value = toHex(value);\n // Do not allow \"-0x00\"\n if (value === \"0x00\") {\n return value;\n }\n // Negate the value\n return \"-\" + value;\n }\n // Add a \"0x\" prefix if missing\n if (value.substring(0, 2) !== \"0x\") {\n value = \"0x\" + value;\n }\n // Normalize zero\n if (value === \"0x\") {\n return \"0x00\";\n }\n // Make the string even length\n if (value.length % 2) {\n value = \"0x0\" + value.substring(2);\n }\n // Trim to smallest even-length string\n while (value.length > 4 && value.substring(0, 4) === \"0x00\") {\n value = \"0x\" + value.substring(4);\n }\n return value;\n}\nfunction toBigNumber(value) {\n return BigNumber.from(toHex(value));\n}\nfunction toBN(value) {\n const hex = BigNumber.from(value).toHexString();\n if (hex[0] === \"-\") {\n return (new BN(\"-\" + hex.substring(3), 16));\n }\n return new BN(hex.substring(2), 16);\n}\nfunction throwFault(fault, operation, value) {\n const params = { fault: fault, operation: operation };\n if (value != null) {\n params.value = value;\n }\n return logger.throwError(fault, Logger.errors.NUMERIC_FAULT, params);\n}\n// value should have no prefix\nexport function _base36To16(value) {\n return (new BN(value, 36)).toString(16);\n}\n// value should have no prefix\nexport function _base16To36(value) {\n return (new BN(value, 16)).toString(36);\n}\n//# sourceMappingURL=bignumber.js.map","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file index.js\r\n * @author Fabian Vogelsteller \r\n * @date 2017\r\n */\r\n\"use strict\";\r\nimport { packageInit, addProviders } from '@arianelabs/hweb3-core';\r\nvar Method = require('@arianelabs/hweb3-core-method');\r\nvar utils = require('@arianelabs/hweb3-utils');\r\nvar Net = require('@arianelabs/hweb3-net');\r\nvar formatters = require('@arianelabs/hweb3-core-helpers').formatters;\r\nvar Personal = function Personal() {\r\n var _this = this;\r\n // sets _requestmanager\r\n packageInit(this, arguments);\r\n this.net = new Net(this);\r\n var defaultAccount = null;\r\n var defaultBlock = 'latest';\r\n Object.defineProperty(this, 'defaultAccount', {\r\n get: function () {\r\n return defaultAccount;\r\n },\r\n set: function (val) {\r\n if (val) {\r\n defaultAccount = utils.toChecksumAddress(formatters.inputAddressFormatter(val));\r\n }\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.defaultAccount = defaultAccount;\r\n });\r\n return val;\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'defaultBlock', {\r\n get: function () {\r\n return defaultBlock;\r\n },\r\n set: function (val) {\r\n defaultBlock = val;\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.defaultBlock = defaultBlock;\r\n });\r\n return val;\r\n },\r\n enumerable: true\r\n });\r\n var methods = [\r\n new Method({\r\n name: 'getAccounts',\r\n call: 'personal_listAccounts',\r\n params: 0,\r\n outputFormatter: utils.toChecksumAddress\r\n }),\r\n new Method({\r\n name: 'newAccount',\r\n call: 'personal_newAccount',\r\n params: 1,\r\n inputFormatter: [null],\r\n outputFormatter: utils.toChecksumAddress\r\n }),\r\n new Method({\r\n name: 'unlockAccount',\r\n call: 'personal_unlockAccount',\r\n params: 3,\r\n inputFormatter: [formatters.inputAddressFormatter, null, null]\r\n }),\r\n new Method({\r\n name: 'lockAccount',\r\n call: 'personal_lockAccount',\r\n params: 1,\r\n inputFormatter: [formatters.inputAddressFormatter]\r\n }),\r\n new Method({\r\n name: 'importRawKey',\r\n call: 'personal_importRawKey',\r\n params: 2\r\n }),\r\n new Method({\r\n name: 'sendTransaction',\r\n call: 'personal_sendTransaction',\r\n params: 2,\r\n inputFormatter: [formatters.inputTransactionFormatter, null]\r\n }),\r\n new Method({\r\n name: 'signTransaction',\r\n call: 'personal_signTransaction',\r\n params: 2,\r\n inputFormatter: [formatters.inputTransactionFormatter, null]\r\n }),\r\n new Method({\r\n name: 'sign',\r\n call: 'personal_sign',\r\n params: 3,\r\n inputFormatter: [formatters.inputSignFormatter, formatters.inputAddressFormatter, null]\r\n }),\r\n new Method({\r\n name: 'ecRecover',\r\n call: 'personal_ecRecover',\r\n params: 2,\r\n inputFormatter: [formatters.inputSignFormatter, null]\r\n })\r\n ];\r\n methods.forEach(function (method) {\r\n method.attachToObject(_this);\r\n method.setRequestManager(_this._requestManager);\r\n method.defaultBlock = _this.defaultBlock;\r\n method.defaultAccount = _this.defaultAccount;\r\n });\r\n};\r\naddProviders(Personal);\r\nexport default Personal;\r\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file index.js\r\n * @author Fabian Vogelsteller \r\n * @date 2017\r\n */\r\n\"use strict\";\r\nvar core = require('@arianelabs/hweb3-core');\r\nvar Method = require('@arianelabs/hweb3-core-method');\r\nvar utils = require('@arianelabs/hweb3-utils');\r\nvar Net = function () {\r\n var _this = this;\r\n // sets _requestmanager\r\n core.packageInit(this, arguments);\r\n [\r\n new Method({\r\n name: 'getId',\r\n call: 'net_version',\r\n params: 0,\r\n outputFormatter: parseInt\r\n }),\r\n new Method({\r\n name: 'isListening',\r\n call: 'net_listening',\r\n params: 0\r\n }),\r\n new Method({\r\n name: 'getPeerCount',\r\n call: 'net_peerCount',\r\n params: 0,\r\n outputFormatter: utils.hexToNumber\r\n })\r\n ].forEach(function (method) {\r\n method.attachToObject(_this);\r\n method.setRequestManager(_this._requestManager);\r\n });\r\n};\r\ncore.addProviders(Net);\r\nmodule.exports = Net;\r\n","export * from \"./exports.js\";\n\nexport { default as Client } from \"./client/WebClient.js\";\n","import Mnemonic from \"./Mnemonic.js\";\nimport BadKeyError from \"./BadKeyError.js\";\nimport Key from \"./Key.js\";\nimport Ed25519PrivateKey from \"./Ed25519PrivateKey.js\";\nimport EcdsaPrivateKey from \"./EcdsaPrivateKey.js\";\nimport PublicKey from \"./PublicKey.js\";\nimport { createKeystore, loadKeystore } from \"./primitive/keystore.js\";\nimport { read as readPem } from \"./encoding/pem.js\";\nimport * as hex from \"./encoding/hex.js\";\nimport * as slip10 from \"./primitive/slip10.js\";\nimport * as derive from \"./util/derive.js\";\n\n/**\n * @typedef {object} ProtoSignaturePair\n * @property {(Uint8Array | null)=} pubKeyPrefix\n * @property {(Uint8Array | null)=} ed25519\n * @property {(Uint8Array | null)=} ECDSASecp256k1\n */\n\n/**\n * @typedef {object} ProtoSigMap\n * @property {(ProtoSignaturePair[] | null)=} sigPair\n */\n\n/**\n * @typedef {object} ProtoSignedTransaction\n * @property {(Uint8Array | null)=} bodyBytes\n * @property {(ProtoSigMap | null)=} sigMap\n */\n\n/**\n * @typedef {object} Transaction\n * @property {() => boolean} isFrozen\n * @property {ProtoSignedTransaction[]} _signedTransactions\n * @property {Set} _signerPublicKeys\n * @property {(publicKey: PublicKey, signature: Uint8Array) => Transaction} addSignature\n * @property {() => void} _requireFrozen\n * @property {() => Transaction} freeze\n */\n\n/**\n * A private key on the Hedera™ network.\n */\nexport default class PrivateKey extends Key {\n /**\n * @hideconstructor\n * @internal\n * @param {Ed25519PrivateKey | EcdsaPrivateKey} key\n */\n constructor(key) {\n super();\n\n /**\n * @type {Ed25519PrivateKey | EcdsaPrivateKey}\n * @readonly\n * @private\n */\n this._key = key;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return this._key._type;\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {PrivateKey}\n */\n static generateED25519() {\n return new PrivateKey(Ed25519PrivateKey.generate());\n }\n\n /**\n * Generate a random EDSA private key.\n *\n * @returns {PrivateKey}\n */\n static generateECDSA() {\n return new PrivateKey(EcdsaPrivateKey.generate());\n }\n\n /**\n * Depredated - Use `generateEd25519()` instead\n * Generate a random Ed25519 private key.\n *\n * @returns {PrivateKey}\n */\n static generate() {\n return PrivateKey.generateED25519();\n }\n\n /**\n * Depredated - Use `generateEd25519Async()` instead\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateAsync() {\n return PrivateKey.generateED25519Async();\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateED25519Async() {\n return new PrivateKey(await Ed25519PrivateKey.generateAsync());\n }\n\n /**\n * Generate a random ECDSA private key.\n *\n * @returns {Promise}\n */\n static async generateECDSAAsync() {\n return new PrivateKey(await EcdsaPrivateKey.generateAsync());\n }\n\n /**\n * Construct a private key from bytes. Requires DER header.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytes(data) {\n try {\n return new PrivateKey(Ed25519PrivateKey.fromBytes(data));\n } catch {\n // Do nothing\n }\n\n try {\n return new PrivateKey(EcdsaPrivateKey.fromBytes(data));\n } catch {\n // Do nothing\n }\n\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n\n /**\n * Construct a ECDSA private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytesECDSA(data) {\n return new PrivateKey(EcdsaPrivateKey.fromBytes(data));\n }\n\n /**\n * Construct a ED25519 private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytesED25519(data) {\n return new PrivateKey(Ed25519PrivateKey.fromBytes(data));\n }\n\n /**\n * Construct a private key from a hex-encoded string. Requires DER header.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromString(text) {\n return PrivateKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Construct a ECDSA private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromStringECDSA(text) {\n return PrivateKey.fromBytesECDSA(hex.decode(text));\n }\n\n /**\n * Construct a Ed25519 private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromStringED25519(text) {\n return PrivateKey.fromBytesED25519(hex.decode(text));\n }\n\n /**\n * Recover a private key from a mnemonic phrase (and optionally a password).\n *\n * @param {Mnemonic | string} mnemonic\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n static async fromMnemonic(mnemonic, passphrase = \"\") {\n return (\n typeof mnemonic === \"string\"\n ? await Mnemonic.fromString(mnemonic)\n : mnemonic\n ).toPrivateKey(passphrase);\n }\n\n /**\n * Recover a private key from a keystore, previously created by `.toKeystore()`.\n *\n * This key will _not_ support child key derivation.\n *\n * @param {Uint8Array} data\n * @param {string} [passphrase]\n * @returns {Promise}\n * @throws {BadKeyError} If the passphrase is incorrect or the hash fails to validate.\n */\n static async fromKeystore(data, passphrase = \"\") {\n return PrivateKey.fromBytes(await loadKeystore(data, passphrase));\n }\n\n /**\n * Recover a private key from a pem string; the private key may be encrypted.\n *\n * This method assumes the .pem file has been converted to a string already.\n *\n * If `passphrase` is not null or empty, this looks for the first `ENCRYPTED PRIVATE KEY`\n * section and uses `passphrase` to decrypt it; otherwise, it looks for the first `PRIVATE KEY`\n * section and decodes that as a DER-encoded private key.\n *\n * @param {string} data\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n static async fromPem(data, passphrase = \"\") {\n const pem = await readPem(data, passphrase);\n\n if (\n pem instanceof Ed25519PrivateKey ||\n pem instanceof EcdsaPrivateKey\n ) {\n return new PrivateKey(pem);\n }\n\n return PrivateKey.fromBytes(pem);\n }\n\n /**\n * Derive a new private key at the given wallet index.\n *\n * Only currently supported for keys created with `fromMnemonic()`; other keys will throw\n * an error.\n *\n * You can check if a key supports derivation with `.supportsDerivation()`\n *\n * @param {number} index\n * @returns {Promise}\n * @throws If this key does not support derivation.\n */\n async derive(index) {\n // return new PrivateKey(await this._key.derive(index));\n if (this._key._chainCode == null) {\n throw new Error(\"this private key does not support key derivation\");\n }\n\n const { keyData, chainCode } = await slip10.derive(\n this.toBytesRaw(),\n this._key._chainCode,\n index\n );\n\n /** @type {new (bytes: Uint8Array, chainCode?: Uint8Array) => Ed25519PrivateKey | EcdsaPrivateKey} */\n const constructor = /** @type {any} */ (this._key.constructor);\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n return new PrivateKey(new constructor(keyData, chainCode));\n }\n\n /**\n * @param {number} index\n * @returns {Promise}\n * @throws If this key does not support derivation.\n */\n async legacyDerive(index) {\n const keyBytes = await derive.legacy(\n this.toBytesRaw().subarray(0, 32),\n index\n );\n\n /** @type {new (bytes: Uint8Array) => Ed25519PrivateKey | EcdsaPrivateKey} */\n const constructor = /** @type {any} */ (this._key.constructor);\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n return new PrivateKey(new constructor(keyBytes));\n }\n\n /**\n * Get the public key associated with this private key.\n *\n * The public key can be freely given and used by other parties to verify\n * the signatures generated by this private key.\n *\n * @returns {PublicKey}\n */\n get publicKey() {\n return new PublicKey(this._key.publicKey);\n }\n\n /**\n * Sign a message with this private key.\n *\n * @param {Uint8Array} bytes\n * @returns {Uint8Array} - The signature bytes without the message\n */\n sign(bytes) {\n return this._key.sign(bytes);\n }\n\n /**\n * @param {Transaction} transaction\n * @returns {Uint8Array}\n */\n signTransaction(transaction) {\n transaction._requireFrozen();\n\n if (!transaction.isFrozen()) {\n transaction.freeze();\n }\n\n if (transaction._signedTransactions.length != 1) {\n throw new Error(\n \"`PrivateKey.signTransaction()` requires `Transaction` to have a single node `AccountId` set\"\n );\n }\n\n const tx = /** @type {ProtoSignedTransaction} */ (\n transaction._signedTransactions[0]\n );\n\n const publicKeyHex = hex.encode(this.publicKey.toBytesRaw());\n\n if (tx.sigMap == null) {\n tx.sigMap = {};\n }\n\n if (tx.sigMap.sigPair == null) {\n tx.sigMap.sigPair = [];\n }\n\n for (const sigPair of tx.sigMap.sigPair) {\n if (\n sigPair.pubKeyPrefix != null &&\n hex.encode(sigPair.pubKeyPrefix) === publicKeyHex\n ) {\n switch (this._type) {\n case \"ED25519\":\n return /** @type {Uint8Array} */ (sigPair.ed25519);\n case \"secp256k1\":\n return /** @type {Uint8Array} */ (\n sigPair.ECDSASecp256k1\n );\n }\n }\n }\n\n const siganture = this.sign(\n tx.bodyBytes != null ? tx.bodyBytes : new Uint8Array()\n );\n\n /** @type {ProtoSignaturePair} */\n const protoSignature = {\n pubKeyPrefix: this.publicKey.toBytesRaw(),\n };\n\n switch (this._type) {\n case \"ED25519\":\n protoSignature.ed25519 = siganture;\n break;\n case \"secp256k1\":\n protoSignature.ECDSASecp256k1 = siganture;\n break;\n }\n\n tx.sigMap.sigPair.push(protoSignature);\n transaction._signerPublicKeys.add(publicKeyHex);\n\n return siganture;\n }\n\n /**\n * Check if `derive` can be called on this private key.\n *\n * This is only the case if the key was created from a mnemonic.\n *\n * @returns {boolean}\n */\n isDerivable() {\n return this._key._chainCode != null;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n if (this._key instanceof Ed25519PrivateKey) {\n return this.toBytesRaw();\n } else {\n return this.toBytesDer();\n }\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n return this._key.toBytesDer();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._key.toBytesRaw();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringDer() {\n return hex.encode(this.toBytesDer());\n }\n\n /**\n * @returns {string}\n */\n toStringRaw() {\n return hex.encode(this.toBytesRaw());\n }\n\n /**\n * Create a keystore with a given passphrase.\n *\n * The key can be recovered later with `fromKeystore()`.\n *\n * Note that this will not retain the ancillary data used for\n * deriving child keys, thus `.derive()` on the restored key will\n * throw even if this instance supports derivation.\n *\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n toKeystore(passphrase = \"\") {\n return createKeystore(this.toBytesRaw(), passphrase);\n }\n}\n","import PrivateKey from \"./PrivateKey.js\";\nimport Ed25519PrivateKey from \"./Ed25519PrivateKey.js\";\nimport BadMnemonicError from \"./BadMnemonicError.js\";\nimport BadMnemonicReason from \"./BadMnemonicReason.js\";\nimport legacyWords from \"./words/legacy.js\";\nimport bip39Words from \"./words/bip39.js\";\nimport nacl from \"tweetnacl\";\nimport * as sha256 from \"./primitive/sha256.js\";\nimport * as pbkdf2 from \"./primitive/pbkdf2.js\";\nimport * as hmac from \"./primitive/hmac.js\";\nimport * as slip10 from \"./primitive/slip10.js\";\nimport * as entropy from \"./util/entropy.js\";\nimport * as random from \"./primitive/random.js\";\n// import EcdsaPrivateKey from \"./EcdsaPrivateKey.js\";\n\n/**\n * Multi-word mnemonic phrase (BIP-39).\n *\n * Compatible with the official Hedera mobile\n * wallets (24-words or 22-words) and BRD (12-words).\n */\nexport default class Mnemonic {\n /**\n * @param {Object} props\n * @param {string[]} props.words\n * @param {boolean} props.legacy\n * @throws {BadMnemonicError}\n * @hideconstructor\n * @private\n */\n constructor({ words, legacy }) {\n this.words = words;\n this._isLegacy = legacy;\n }\n\n /**\n * Returns a new random 24-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static generate() {\n return Mnemonic._generate(24);\n }\n\n /**\n * Returns a new random 12-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static generate12() {\n return Mnemonic._generate(12);\n }\n\n /**\n * @param {number} length\n * @returns {Promise}\n */\n static async _generate(length) {\n // only 12-word or 24-word lengths are supported\n let neededEntropy;\n\n if (length === 12) neededEntropy = 16;\n else if (length === 24) neededEntropy = 32;\n else {\n throw new Error(\n `unsupported phrase length ${length}, only 12 or 24 are supported`\n );\n }\n\n // inlined from (ISC) with heavy alternations for modern crypto\n // https://github.com/bitcoinjs/bip39/blob/8461e83677a1d2c685d0d5a9ba2a76bd228f74c6/ts_src/index.ts#L125\n const seed = await random.bytesAsync(neededEntropy);\n const entropyBits = bytesToBinary(Array.from(seed));\n const checksumBits = await deriveChecksumBits(seed);\n const bits = entropyBits + checksumBits;\n const chunks = bits.match(/(.{1,11})/g);\n\n const words = (chunks != null ? chunks : []).map(\n (binary) => bip39Words[binaryToByte(binary)]\n );\n\n return new Mnemonic({ words, legacy: false });\n }\n\n /**\n * Construct a mnemonic from a list of words. Handles 12, 22 (legacy), and 24 words.\n *\n * An exception of BadMnemonicError will be thrown if the mnemonic\n * contains unknown words or fails the checksum. An invalid mnemonic\n * can still be used to create private keys, the exception will\n * contain the failing mnemonic in case you wish to ignore the\n * validation error and continue.\n *\n * @param {string[]} words\n * @throws {BadMnemonicError}\n * @returns {Promise}\n */\n static async fromWords(words) {\n return await new Mnemonic({\n words,\n legacy: words.length === 22,\n })._validate();\n }\n\n /**\n * Recover a private key from this mnemonic phrase, with an\n * optional passphrase.\n *\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n async toPrivateKey(passphrase = \"\") {\n if (this._isLegacy) {\n if (passphrase.length > 0) {\n throw new Error(\n \"legacy 22-word mnemonics do not support passphrases\"\n );\n }\n\n return this.toLegacyPrivateKey();\n }\n\n return await this._toPrivateKey(passphrase);\n }\n\n // /**\n // * Recover an ecdsa private key from this mnemonic phrase, with an\n // * optional passphrase.\n // *\n // * @param {string} [passphrase]\n // * @returns {Promise}\n // */\n // async toEcdsaPrivateKey(passphrase = \"\") {\n // if (this._isLegacy) {\n // if (passphrase.length > 0) {\n // throw new Error(\n // \"legacy 22-word mnemonics do not support passphrases\"\n // );\n // }\n\n // return this.toLegacyPrivateKey();\n // }\n\n // return await this._toEcdsaPrivateKey(passphrase);\n // }\n\n /**\n * Recover a mnemonic phrase from a string, splitting on spaces. Handles 12, 22 (legacy), and 24 words.\n *\n * @param {string} mnemonic\n * @returns {Promise}\n */\n static async fromString(mnemonic) {\n return Mnemonic.fromWords(mnemonic.split(/\\s|,/));\n }\n\n /**\n * @returns {Promise}\n * @private\n */\n async _validate() {\n // Validate that this is a valid BIP-39 mnemonic\n // as generated by BIP-39's rules.\n\n // Technically, invalid mnemonics can still be used to generate valid private keys,\n // but if they became invalid due to user error then it will be difficult for the user\n // to tell the difference unless they compare the generated keys.\n\n // During validation, the following conditions are checked in order\n\n // 1)) 24 or 12 words\n\n // 2) All strings in {@link this.words} exist in the BIP-39\n // standard English word list (no normalization is done)\n\n // 3) The calculated checksum for the mnemonic equals the\n // checksum encoded in the mnemonic\n\n if (this._isLegacy) {\n if (this.words.length !== 22) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.BadLength,\n []\n );\n }\n\n const unknownWordIndices = this.words.reduce(\n (/** @type {number[]} */ unknowns, word, index) =>\n legacyWords.includes(word.toLowerCase())\n ? unknowns\n : [...unknowns, index],\n []\n );\n\n if (unknownWordIndices.length > 0) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.UnknownWords,\n unknownWordIndices\n );\n }\n\n const [seed, checksum] = entropy.legacy1(this.words, legacyWords);\n const newChecksum = entropy.crc8(seed);\n\n if (checksum !== newChecksum) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.ChecksumMismatch,\n []\n );\n }\n } else {\n if (!(this.words.length === 12 || this.words.length === 24)) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.BadLength,\n []\n );\n }\n\n const unknownWordIndices = this.words.reduce(\n (/** @type {number[]} */ unknowns, word, index) =>\n bip39Words.includes(word) ? unknowns : [...unknowns, index],\n []\n );\n\n if (unknownWordIndices.length > 0) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.UnknownWords,\n unknownWordIndices\n );\n }\n\n // FIXME: calculate checksum and compare\n // https://github.com/bitcoinjs/bip39/blob/master/ts_src/index.ts#L112\n\n const bits = this.words\n .map((word) => {\n return bip39Words\n .indexOf(word)\n .toString(2)\n .padStart(11, \"0\");\n })\n .join(\"\");\n\n const dividerIndex = Math.floor(bits.length / 33) * 32;\n const entropyBits = bits.slice(0, dividerIndex);\n const checksumBits = bits.slice(dividerIndex);\n const entropyBitsRegex = entropyBits.match(/(.{1,8})/g);\n const entropyBytes = /** @type {RegExpMatchArray} */ (\n entropyBitsRegex\n ).map(binaryToByte);\n\n const newChecksum = await deriveChecksumBits(\n Uint8Array.from(entropyBytes)\n );\n\n if (newChecksum !== checksumBits) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.ChecksumMismatch,\n []\n );\n }\n }\n\n return this;\n }\n\n /**\n * @private\n * @param {string} passphrase\n * @returns {Promise}\n */\n async _toPrivateKey(passphrase = \"\") {\n const input = this.words.join(\" \");\n const salt = `mnemonic${passphrase}`;\n\n const seed = await pbkdf2.deriveKey(\n hmac.HashAlgorithm.Sha512,\n input,\n salt,\n 2048,\n 64\n );\n\n const digest = await hmac.hash(\n hmac.HashAlgorithm.Sha512,\n \"ed25519 seed\",\n seed\n );\n\n let keyData = digest.subarray(0, 32);\n let chainCode = digest.subarray(32);\n\n for (const index of [44, 3030, 0, 0]) {\n ({ keyData, chainCode } = await slip10.derive(\n keyData,\n chainCode,\n index\n ));\n }\n\n const keyPair = nacl.sign.keyPair.fromSeed(keyData);\n\n return new PrivateKey(new Ed25519PrivateKey(keyPair, chainCode));\n }\n\n /**\n * @returns {Promise}\n */\n async toLegacyPrivateKey() {\n let seed;\n if (this._isLegacy) {\n [seed] = entropy.legacy1(this.words, legacyWords);\n } else {\n seed = await entropy.legacy2(this.words, bip39Words);\n }\n\n return PrivateKey.fromBytes(seed);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this.words.join(\" \");\n }\n}\n\n/**\n * @param {string} bin\n * @returns {number}\n */\nfunction binaryToByte(bin) {\n return parseInt(bin, 2);\n}\n\n/**\n * @param {number[]} bytes\n * @returns {string}\n */\nfunction bytesToBinary(bytes) {\n return bytes.map((x) => x.toString(2).padStart(8, \"0\")).join(\"\");\n}\n\n/**\n * @param {Uint8Array} entropyBuffer\n * @returns {Promise}\n */\nasync function deriveChecksumBits(entropyBuffer) {\n const ENT = entropyBuffer.length * 8;\n const CS = ENT / 32;\n const hash = await sha256.digest(entropyBuffer);\n\n return bytesToBinary(Array.from(hash)).slice(0, CS);\n}\n","import Key from \"./Key.js\";\nimport BadKeyError from \"./BadKeyError.js\";\nimport nacl from \"tweetnacl\";\nimport { arrayEqual, arrayStartsWith } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\n\nconst derPrefix = \"302a300506032b6570032100\";\nconst derPrefixBytes = hex.decode(derPrefix);\n\n/**\n * An public key on the Hedera™ network.\n */\nexport default class Ed25519PublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {Uint8Array} keyData\n */\n constructor(keyData) {\n super();\n\n /**\n * @type {Uint8Array}\n * @private\n * @readonly\n */\n this._keyData = keyData;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"ED25519\";\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {Ed25519PublicKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 32:\n return Ed25519PublicKey.fromBytesRaw(data);\n case 44:\n return Ed25519PublicKey.fromBytesDer(data);\n default:\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {Ed25519PublicKey}\n */\n static fromBytesDer(data) {\n if (data.length != 44 || !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new Ed25519PublicKey(data.subarray(12));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {Ed25519PublicKey}\n */\n static fromBytesRaw(data) {\n if (data.length != 32) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new Ed25519PublicKey(data);\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {Ed25519PublicKey}\n */\n static fromString(text) {\n return Ed25519PublicKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return nacl.sign.detached.verify(message, signature, this._keyData);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(derPrefixBytes.length + 32);\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(this._keyData.subarray(0, 32), derPrefixBytes.length);\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._keyData.slice();\n }\n\n /**\n * @param {Ed25519PublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n return arrayEqual(this._keyData, other._keyData);\n }\n}\n","/** @typedef {import(\"./Mnemonic.js\").default} Mnemonic */\nimport BadMnemonicReason from \"./BadMnemonicReason.js\";\n\nexport default class BadMnemonicError extends Error {\n /**\n * @param {Mnemonic} mnemonic\n * @param {string} reason\n * @param {number[]} unknownWordIndices\n * @hideconstructor\n */\n constructor(mnemonic, reason, unknownWordIndices) {\n let reasonMessage;\n\n switch (reason) {\n case BadMnemonicReason.BadLength:\n reasonMessage = \"mnemonic is of an unexpected number of words\";\n break;\n\n case BadMnemonicReason.ChecksumMismatch:\n reasonMessage =\n \"checksum byte in mnemonic did not match the rest of the mnemonic\";\n break;\n\n case BadMnemonicReason.UnknownWords:\n reasonMessage =\n \"mnemonic contained words that are not in the standard word list\";\n break;\n\n default:\n throw new Error(\n `unexpected value ${reason.toString()} for 'reason'`\n );\n }\n\n super(`invalid mnemonic: ${reasonMessage}`);\n\n if (typeof Error.captureStackTrace !== \"undefined\") {\n Error.captureStackTrace(this, BadMnemonicError);\n }\n\n this.name = \"BadMnemonicError\";\n\n /** The reason for which the mnemonic failed validation. */\n this.reason = reason;\n\n /** The mnemonic that failed validation. */\n this.mnemonic = mnemonic;\n\n /**\n * The indices in the mnemonic that were not found in the BIP-39\n * standard English word list.\n */\n this.unknownWordIndices = unknownWordIndices;\n }\n}\n","/**\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function digest(data) {\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/digest\n return new Uint8Array(await crypto.subtle.digest(\"SHA-256\", data));\n}\n","import * as hmac from \"../primitive/hmac.js\";\n\n/**\n * @param {Uint8Array} parentKey\n * @param {Uint8Array} chainCode\n * @param {number} index\n * @returns {Promise<{ keyData: Uint8Array; chainCode: Uint8Array }>}\n */\nexport async function derive(parentKey, chainCode, index) {\n const input = new Uint8Array(37);\n\n // 0x00 + parentKey + index(BE)\n input[0] = 0;\n input.set(parentKey, 1);\n new DataView(input.buffer, input.byteOffset, input.byteLength).setUint32(\n 33,\n index,\n false\n );\n\n // set the index to hardened\n input[33] |= 128;\n\n const digest = await hmac.hash(hmac.HashAlgorithm.Sha512, chainCode, input);\n\n return { keyData: digest.subarray(0, 32), chainCode: digest.subarray(32) };\n}\n","import BadKeyError from \"./BadKeyError.js\";\nimport EcdsaPublicKey from \"./EcdsaPublicKey.js\";\nimport * as hex from \"./encoding/hex.js\";\nimport * as ecdsa from \"./primitive/ecdsa.js\";\nimport { arrayStartsWith } from \"./util/array.js\";\n\nconst derPrefix = \"3030020100300706052b8104000a04220420\";\nconst derPrefixBytes = hex.decode(derPrefix);\n\n/**\n * @typedef {object} KeyPair\n * @property {Uint8Array} publicKey\n * @property {Uint8Array} privateKey\n */\n\nexport default class EcdsaPrivateKey {\n /**\n * @hideconstructor\n * @internal\n * @param {KeyPair} keyPair\n * @param {(Uint8Array)=} chainCode\n */\n constructor(keyPair, chainCode) {\n /**\n * @type {KeyPair}\n * @readonly\n * @private\n */\n this._keyPair = keyPair;\n\n /**\n * @type {?Uint8Array}\n * @readonly\n */\n this._chainCode = chainCode != null ? chainCode : null;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"secp256k1\";\n }\n\n /**\n * Generate a random ECDSA private key.\n *\n * @returns {EcdsaPrivateKey}\n */\n static generate() {\n return new EcdsaPrivateKey(ecdsa.generate());\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateAsync() {\n return new EcdsaPrivateKey(await ecdsa.generateAsync());\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {EcdsaPrivateKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 32:\n return EcdsaPrivateKey.fromBytesRaw(data);\n case 50:\n return EcdsaPrivateKey.fromBytesDer(data);\n default:\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {EcdsaPrivateKey}\n */\n static fromBytesDer(data) {\n if (data.length != 32 && !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\"invalid der header\");\n }\n\n return new EcdsaPrivateKey(\n ecdsa.fromBytes(data.subarray(derPrefixBytes.length))\n );\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {EcdsaPrivateKey}\n */\n static fromBytesRaw(data) {\n return new EcdsaPrivateKey(ecdsa.fromBytes(data));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {EcdsaPrivateKey}\n */\n static fromString(text) {\n return EcdsaPrivateKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {EcdsaPrivateKey}\n */\n static fromStringDer(text) {\n return EcdsaPrivateKey.fromBytesDer(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {EcdsaPrivateKey}\n */\n static fromStringRaw(text) {\n return EcdsaPrivateKey.fromBytesRaw(hex.decode(text));\n }\n\n /**\n * Get the public key associated with this private key.\n *\n * The public key can be freely given and used by other parties to verify\n * the signatures generated by this private key.\n *\n * @returns {EcdsaPublicKey}\n */\n get publicKey() {\n return new EcdsaPublicKey(this._keyPair.publicKey);\n }\n\n /**\n * Sign a message with this private key.\n *\n * @param {Uint8Array} bytes\n * @returns {Uint8Array} - The signature bytes without the message\n */\n sign(bytes) {\n return ecdsa.sign(this._keyPair.privateKey, bytes);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(derPrefixBytes.length + 32);\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(\n this._keyPair.privateKey.subarray(0, 32),\n derPrefixBytes.length\n );\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._keyPair.privateKey.slice(0, 32);\n }\n}\n","import Key from \"./Key.js\";\nimport BadKeyError from \"./BadKeyError.js\";\nimport { arrayEqual, arrayStartsWith } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\nimport * as ecdsa from \"./primitive/ecdsa.js\";\n\nconst derPrefix = \"302d300706052b8104000a032200\";\nconst derPrefixBytes = hex.decode(derPrefix);\n\n/**\n * An public key on the Hedera™ network.\n */\nexport default class EcdsaPublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {Uint8Array} keyData\n */\n constructor(keyData) {\n super();\n\n /**\n * @type {Uint8Array}\n * @private\n * @readonly\n */\n this._keyData = keyData;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"secp256k1\";\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {EcdsaPublicKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 33:\n return EcdsaPublicKey.fromBytesRaw(data);\n case 49:\n return EcdsaPublicKey.fromBytesDer(data);\n default:\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {EcdsaPublicKey}\n */\n static fromBytesDer(data) {\n if (data.length != 44 || !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new EcdsaPublicKey(data.subarray(12));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {EcdsaPublicKey}\n */\n static fromBytesRaw(data) {\n if (data.length != 33) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new EcdsaPublicKey(data);\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {EcdsaPublicKey}\n */\n static fromString(text) {\n return EcdsaPublicKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return ecdsa.verify(this._keyData, message, signature);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(\n derPrefixBytes.length + this._keyData.length\n );\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(this._keyData, derPrefixBytes.length);\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return new Uint8Array(this._keyData.subarray());\n }\n\n /**\n * @param {EcdsaPublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n return arrayEqual(this._keyData, other._keyData);\n }\n}\n","import { keccak256 } from \"./keccak.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport elliptic from \"elliptic\";\n\nconst secp256k1 = new elliptic.ec(\"secp256k1\");\n\n/**\n * @typedef {import(\"../EcdsaPrivateKey.js\").KeyPair} KeyPair\n */\n\n/**\n * @returns {KeyPair}\n */\nexport function generate() {\n const keypair = secp256k1.genKeyPair();\n\n return {\n privateKey: hex.decode(keypair.getPrivate(\"hex\")),\n publicKey: hex.decode(keypair.getPublic(true, \"hex\")),\n };\n}\n\n/**\n * @returns {Promise}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport async function generateAsync() {\n return Promise.resolve(generate());\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {KeyPair}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function fromBytes(data) {\n const keypair = secp256k1.keyFromPrivate(data);\n\n return {\n privateKey: hex.decode(keypair.getPrivate(\"hex\")),\n publicKey: hex.decode(keypair.getPublic(true, \"hex\")),\n };\n}\n\n/**\n * @param {Uint8Array} keydata\n * @param {Uint8Array} message\n * @returns {Uint8Array}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function sign(keydata, message) {\n const msg = hex.encode(message);\n const data = hex.decode(keccak256(`0x${msg}`));\n const keypair = secp256k1.keyFromPrivate(keydata);\n const signature = keypair.sign(data);\n\n const r = signature.r.toArray(\"be\", 32);\n const s = signature.s.toArray(\"be\", 32);\n\n const result = new Uint8Array(64);\n result.set(r, 0);\n result.set(s, 32);\n return result;\n}\n\n/**\n * @param {Uint8Array} keydata\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function verify(keydata, message, signature) {\n const msg = hex.encode(message);\n const data = hex.decode(keccak256(`0x${msg}`));\n const keypair = secp256k1.keyFromPublic(keydata);\n\n return keypair.verify(data, {\n r: signature.subarray(0, 32),\n s: signature.subarray(32, 64),\n });\n}\n","'use strict';\n\nvar elliptic = exports;\n\nelliptic.version = require('../package.json').version;\nelliptic.utils = require('./elliptic/utils');\nelliptic.rand = require('brorand');\nelliptic.curve = require('./elliptic/curve');\nelliptic.curves = require('./elliptic/curves');\n\n// Protocols\nelliptic.ec = require('./elliptic/ec');\nelliptic.eddsa = require('./elliptic/eddsa');\n","'use strict';\n\nvar utils = exports;\n\nfunction toArray(msg, enc) {\n if (Array.isArray(msg))\n return msg.slice();\n if (!msg)\n return [];\n var res = [];\n if (typeof msg !== 'string') {\n for (var i = 0; i < msg.length; i++)\n res[i] = msg[i] | 0;\n return res;\n }\n if (enc === 'hex') {\n msg = msg.replace(/[^a-z0-9]+/ig, '');\n if (msg.length % 2 !== 0)\n msg = '0' + msg;\n for (var i = 0; i < msg.length; i += 2)\n res.push(parseInt(msg[i] + msg[i + 1], 16));\n } else {\n for (var i = 0; i < msg.length; i++) {\n var c = msg.charCodeAt(i);\n var hi = c >> 8;\n var lo = c & 0xff;\n if (hi)\n res.push(hi, lo);\n else\n res.push(lo);\n }\n }\n return res;\n}\nutils.toArray = toArray;\n\nfunction zero2(word) {\n if (word.length === 1)\n return '0' + word;\n else\n return word;\n}\nutils.zero2 = zero2;\n\nfunction toHex(msg) {\n var res = '';\n for (var i = 0; i < msg.length; i++)\n res += zero2(msg[i].toString(16));\n return res;\n}\nutils.toHex = toHex;\n\nutils.encode = function encode(arr, enc) {\n if (enc === 'hex')\n return toHex(arr);\n else\n return arr;\n};\n","var r;\n\nmodule.exports = function rand(len) {\n if (!r)\n r = new Rand(null);\n\n return r.generate(len);\n};\n\nfunction Rand(rand) {\n this.rand = rand;\n}\nmodule.exports.Rand = Rand;\n\nRand.prototype.generate = function generate(len) {\n return this._rand(len);\n};\n\n// Emulate crypto API using randy\nRand.prototype._rand = function _rand(n) {\n if (this.rand.getBytes)\n return this.rand.getBytes(n);\n\n var res = new Uint8Array(n);\n for (var i = 0; i < res.length; i++)\n res[i] = this.rand.getByte();\n return res;\n};\n\nif (typeof self === 'object') {\n if (self.crypto && self.crypto.getRandomValues) {\n // Modern browsers\n Rand.prototype._rand = function _rand(n) {\n var arr = new Uint8Array(n);\n self.crypto.getRandomValues(arr);\n return arr;\n };\n } else if (self.msCrypto && self.msCrypto.getRandomValues) {\n // IE\n Rand.prototype._rand = function _rand(n) {\n var arr = new Uint8Array(n);\n self.msCrypto.getRandomValues(arr);\n return arr;\n };\n\n // Safari's WebWorkers do not have `crypto`\n } else if (typeof window === 'object') {\n // Old junk\n Rand.prototype._rand = function() {\n throw new Error('Not implemented yet');\n };\n }\n} else {\n // Node.js or Web worker with no crypto support\n try {\n var crypto = require('crypto');\n if (typeof crypto.randomBytes !== 'function')\n throw new Error('Not supported');\n\n Rand.prototype._rand = function _rand(n) {\n return crypto.randomBytes(n);\n };\n } catch (e) {\n }\n}\n","'use strict';\n\nvar curve = exports;\n\ncurve.base = require('./base');\ncurve.short = require('./short');\ncurve.mont = require('./mont');\ncurve.edwards = require('./edwards');\n","'use strict';\n\nvar utils = require('../utils');\nvar rotr32 = utils.rotr32;\n\nfunction ft_1(s, x, y, z) {\n if (s === 0)\n return ch32(x, y, z);\n if (s === 1 || s === 3)\n return p32(x, y, z);\n if (s === 2)\n return maj32(x, y, z);\n}\nexports.ft_1 = ft_1;\n\nfunction ch32(x, y, z) {\n return (x & y) ^ ((~x) & z);\n}\nexports.ch32 = ch32;\n\nfunction maj32(x, y, z) {\n return (x & y) ^ (x & z) ^ (y & z);\n}\nexports.maj32 = maj32;\n\nfunction p32(x, y, z) {\n return x ^ y ^ z;\n}\nexports.p32 = p32;\n\nfunction s0_256(x) {\n return rotr32(x, 2) ^ rotr32(x, 13) ^ rotr32(x, 22);\n}\nexports.s0_256 = s0_256;\n\nfunction s1_256(x) {\n return rotr32(x, 6) ^ rotr32(x, 11) ^ rotr32(x, 25);\n}\nexports.s1_256 = s1_256;\n\nfunction g0_256(x) {\n return rotr32(x, 7) ^ rotr32(x, 18) ^ (x >>> 3);\n}\nexports.g0_256 = g0_256;\n\nfunction g1_256(x) {\n return rotr32(x, 17) ^ rotr32(x, 19) ^ (x >>> 10);\n}\nexports.g1_256 = g1_256;\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar shaCommon = require('./common');\nvar assert = require('minimalistic-assert');\n\nvar sum32 = utils.sum32;\nvar sum32_4 = utils.sum32_4;\nvar sum32_5 = utils.sum32_5;\nvar ch32 = shaCommon.ch32;\nvar maj32 = shaCommon.maj32;\nvar s0_256 = shaCommon.s0_256;\nvar s1_256 = shaCommon.s1_256;\nvar g0_256 = shaCommon.g0_256;\nvar g1_256 = shaCommon.g1_256;\n\nvar BlockHash = common.BlockHash;\n\nvar sha256_K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,\n 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,\n 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc,\n 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7,\n 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13,\n 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3,\n 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5,\n 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208,\n 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n];\n\nfunction SHA256() {\n if (!(this instanceof SHA256))\n return new SHA256();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a,\n 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19\n ];\n this.k = sha256_K;\n this.W = new Array(64);\n}\nutils.inherits(SHA256, BlockHash);\nmodule.exports = SHA256;\n\nSHA256.blockSize = 512;\nSHA256.outSize = 256;\nSHA256.hmacStrength = 192;\nSHA256.padLength = 64;\n\nSHA256.prototype._update = function _update(msg, start) {\n var W = this.W;\n\n for (var i = 0; i < 16; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i++)\n W[i] = sum32_4(g1_256(W[i - 2]), W[i - 7], g0_256(W[i - 15]), W[i - 16]);\n\n var a = this.h[0];\n var b = this.h[1];\n var c = this.h[2];\n var d = this.h[3];\n var e = this.h[4];\n var f = this.h[5];\n var g = this.h[6];\n var h = this.h[7];\n\n assert(this.k.length === W.length);\n for (i = 0; i < W.length; i++) {\n var T1 = sum32_5(h, s1_256(e), ch32(e, f, g), this.k[i], W[i]);\n var T2 = sum32(s0_256(a), maj32(a, b, c));\n h = g;\n g = f;\n f = e;\n e = sum32(d, T1);\n d = c;\n c = b;\n b = a;\n a = sum32(T1, T2);\n }\n\n this.h[0] = sum32(this.h[0], a);\n this.h[1] = sum32(this.h[1], b);\n this.h[2] = sum32(this.h[2], c);\n this.h[3] = sum32(this.h[3], d);\n this.h[4] = sum32(this.h[4], e);\n this.h[5] = sum32(this.h[5], f);\n this.h[6] = sum32(this.h[6], g);\n this.h[7] = sum32(this.h[7], h);\n};\n\nSHA256.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar assert = require('minimalistic-assert');\n\nvar rotr64_hi = utils.rotr64_hi;\nvar rotr64_lo = utils.rotr64_lo;\nvar shr64_hi = utils.shr64_hi;\nvar shr64_lo = utils.shr64_lo;\nvar sum64 = utils.sum64;\nvar sum64_hi = utils.sum64_hi;\nvar sum64_lo = utils.sum64_lo;\nvar sum64_4_hi = utils.sum64_4_hi;\nvar sum64_4_lo = utils.sum64_4_lo;\nvar sum64_5_hi = utils.sum64_5_hi;\nvar sum64_5_lo = utils.sum64_5_lo;\n\nvar BlockHash = common.BlockHash;\n\nvar sha512_K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n];\n\nfunction SHA512() {\n if (!(this instanceof SHA512))\n return new SHA512();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xf3bcc908,\n 0xbb67ae85, 0x84caa73b,\n 0x3c6ef372, 0xfe94f82b,\n 0xa54ff53a, 0x5f1d36f1,\n 0x510e527f, 0xade682d1,\n 0x9b05688c, 0x2b3e6c1f,\n 0x1f83d9ab, 0xfb41bd6b,\n 0x5be0cd19, 0x137e2179 ];\n this.k = sha512_K;\n this.W = new Array(160);\n}\nutils.inherits(SHA512, BlockHash);\nmodule.exports = SHA512;\n\nSHA512.blockSize = 1024;\nSHA512.outSize = 512;\nSHA512.hmacStrength = 192;\nSHA512.padLength = 128;\n\nSHA512.prototype._prepareBlock = function _prepareBlock(msg, start) {\n var W = this.W;\n\n // 32 x 32bit words\n for (var i = 0; i < 32; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i += 2) {\n var c0_hi = g1_512_hi(W[i - 4], W[i - 3]); // i - 2\n var c0_lo = g1_512_lo(W[i - 4], W[i - 3]);\n var c1_hi = W[i - 14]; // i - 7\n var c1_lo = W[i - 13];\n var c2_hi = g0_512_hi(W[i - 30], W[i - 29]); // i - 15\n var c2_lo = g0_512_lo(W[i - 30], W[i - 29]);\n var c3_hi = W[i - 32]; // i - 16\n var c3_lo = W[i - 31];\n\n W[i] = sum64_4_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n W[i + 1] = sum64_4_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n }\n};\n\nSHA512.prototype._update = function _update(msg, start) {\n this._prepareBlock(msg, start);\n\n var W = this.W;\n\n var ah = this.h[0];\n var al = this.h[1];\n var bh = this.h[2];\n var bl = this.h[3];\n var ch = this.h[4];\n var cl = this.h[5];\n var dh = this.h[6];\n var dl = this.h[7];\n var eh = this.h[8];\n var el = this.h[9];\n var fh = this.h[10];\n var fl = this.h[11];\n var gh = this.h[12];\n var gl = this.h[13];\n var hh = this.h[14];\n var hl = this.h[15];\n\n assert(this.k.length === W.length);\n for (var i = 0; i < W.length; i += 2) {\n var c0_hi = hh;\n var c0_lo = hl;\n var c1_hi = s1_512_hi(eh, el);\n var c1_lo = s1_512_lo(eh, el);\n var c2_hi = ch64_hi(eh, el, fh, fl, gh, gl);\n var c2_lo = ch64_lo(eh, el, fh, fl, gh, gl);\n var c3_hi = this.k[i];\n var c3_lo = this.k[i + 1];\n var c4_hi = W[i];\n var c4_lo = W[i + 1];\n\n var T1_hi = sum64_5_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n var T1_lo = sum64_5_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n\n c0_hi = s0_512_hi(ah, al);\n c0_lo = s0_512_lo(ah, al);\n c1_hi = maj64_hi(ah, al, bh, bl, ch, cl);\n c1_lo = maj64_lo(ah, al, bh, bl, ch, cl);\n\n var T2_hi = sum64_hi(c0_hi, c0_lo, c1_hi, c1_lo);\n var T2_lo = sum64_lo(c0_hi, c0_lo, c1_hi, c1_lo);\n\n hh = gh;\n hl = gl;\n\n gh = fh;\n gl = fl;\n\n fh = eh;\n fl = el;\n\n eh = sum64_hi(dh, dl, T1_hi, T1_lo);\n el = sum64_lo(dl, dl, T1_hi, T1_lo);\n\n dh = ch;\n dl = cl;\n\n ch = bh;\n cl = bl;\n\n bh = ah;\n bl = al;\n\n ah = sum64_hi(T1_hi, T1_lo, T2_hi, T2_lo);\n al = sum64_lo(T1_hi, T1_lo, T2_hi, T2_lo);\n }\n\n sum64(this.h, 0, ah, al);\n sum64(this.h, 2, bh, bl);\n sum64(this.h, 4, ch, cl);\n sum64(this.h, 6, dh, dl);\n sum64(this.h, 8, eh, el);\n sum64(this.h, 10, fh, fl);\n sum64(this.h, 12, gh, gl);\n sum64(this.h, 14, hh, hl);\n};\n\nSHA512.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n\nfunction ch64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ ((~xh) & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction ch64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ ((~xl) & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ (xh & zh) ^ (yh & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ (xl & zl) ^ (yl & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 28);\n var c1_hi = rotr64_hi(xl, xh, 2); // 34\n var c2_hi = rotr64_hi(xl, xh, 7); // 39\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 28);\n var c1_lo = rotr64_lo(xl, xh, 2); // 34\n var c2_lo = rotr64_lo(xl, xh, 7); // 39\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 14);\n var c1_hi = rotr64_hi(xh, xl, 18);\n var c2_hi = rotr64_hi(xl, xh, 9); // 41\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 14);\n var c1_lo = rotr64_lo(xh, xl, 18);\n var c2_lo = rotr64_lo(xl, xh, 9); // 41\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 1);\n var c1_hi = rotr64_hi(xh, xl, 8);\n var c2_hi = shr64_hi(xh, xl, 7);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 1);\n var c1_lo = rotr64_lo(xh, xl, 8);\n var c2_lo = shr64_lo(xh, xl, 7);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 19);\n var c1_hi = rotr64_hi(xl, xh, 29); // 61\n var c2_hi = shr64_hi(xh, xl, 6);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 19);\n var c1_lo = rotr64_lo(xl, xh, 29); // 61\n var c2_lo = shr64_lo(xh, xl, 6);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n","import Key from \"./Key.js\";\nimport BadKeyError from \"./BadKeyError.js\";\nimport Ed25519PublicKey from \"./Ed25519PublicKey.js\";\nimport EcdsaPublicKey from \"./EcdsaPublicKey.js\";\nimport { arrayEqual } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\n\n/**\n * @typedef {import(\"./PrivateKey.js\").Transaction} Transaction\n */\n\n/**\n * An public key on the Hedera™ network.\n */\nexport default class PublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {Ed25519PublicKey | EcdsaPublicKey} key\n */\n constructor(key) {\n super();\n\n /**\n * @type {Ed25519PublicKey | EcdsaPublicKey}\n * @private\n * @readonly\n */\n this._key = key;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return this._key._type;\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytes(data) {\n try {\n return new PublicKey(Ed25519PublicKey.fromBytes(data));\n } catch {\n // Do nothing\n }\n\n try {\n return new PublicKey(EcdsaPublicKey.fromBytes(data));\n } catch {\n // Do nothing\n }\n\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesED25519(data) {\n return new PublicKey(Ed25519PublicKey.fromBytes(data));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesECDSA(data) {\n return new PublicKey(EcdsaPublicKey.fromBytes(data));\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromString(text) {\n return PublicKey.fromBytes(hex.decode(text));\n }\n\n /**\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromStringED25519(text) {\n return PublicKey.fromBytesED25519(hex.decode(text));\n }\n\n /**\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromStringECDSA(text) {\n return PublicKey.fromBytesECDSA(hex.decode(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return this._key.verify(message, signature);\n }\n\n /**\n * @deprecated - use `@hashgraph/sdk`.PublicKey instead\n * @param {Transaction} transaction\n * @returns {boolean}\n */\n verifyTransaction(transaction) {\n console.log(\"Deprecated: use `@hashgraph/sdk`.PublicKey instead\");\n\n transaction._requireFrozen();\n\n if (!transaction.isFrozen()) {\n transaction.freeze();\n }\n\n for (const signedTransaction of transaction._signedTransactions) {\n if (\n signedTransaction.sigMap != null &&\n signedTransaction.sigMap.sigPair != null\n ) {\n let found = false;\n for (const sigPair of signedTransaction.sigMap.sigPair) {\n const pubKeyPrefix = /** @type {Uint8Array} */ (\n sigPair.pubKeyPrefix\n );\n if (arrayEqual(pubKeyPrefix, this.toBytesRaw())) {\n found = true;\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n const signature =\n sigPair.ed25519 != null\n ? sigPair.ed25519\n : /** @type {Uint8Array} */ (\n sigPair.ECDSASecp256k1\n );\n if (!this.verify(bodyBytes, signature)) {\n return false;\n }\n }\n }\n\n if (!found) {\n return false;\n }\n }\n }\n\n return true;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n if (this._key instanceof Ed25519PublicKey) {\n return this.toBytesRaw();\n } else {\n return this.toBytesDer();\n }\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n return this._key.toBytesDer();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._key.toBytesRaw();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringDer() {\n return hex.encode(this.toBytesDer());\n }\n\n /**\n * @returns {string}\n */\n toStringRaw() {\n return hex.encode(this.toBytesRaw());\n }\n\n /**\n * @param {PublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n if (\n this._key instanceof Ed25519PublicKey &&\n other instanceof Ed25519PublicKey\n ) {\n return this._key.equals(other);\n } else if (\n this._key instanceof EcdsaPublicKey &&\n other instanceof EcdsaPublicKey\n ) {\n return this._key.equals(other);\n } else {\n return false;\n }\n }\n}\n","export const CipherAlgorithm = {\n Aes128Ctr: \"AES-128-CTR\",\n Aes128Cbc: \"AES-128-CBC\",\n};\n\n/**\n * @param {string} algorithm\n * @param {Uint8Array} key\n * @param {Uint8Array} iv\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function createCipheriv(algorithm, key, iv, data) {\n let algorithm_;\n\n switch (algorithm.toUpperCase()) {\n case CipherAlgorithm.Aes128Ctr:\n algorithm_ = {\n name: \"AES-CTR\",\n counter: iv,\n length: 128,\n };\n break;\n case CipherAlgorithm.Aes128Cbc:\n algorithm_ = {\n name: \"AES-CBC\",\n iv: iv,\n };\n break;\n default:\n throw new Error(\n \"(BUG) non-exhaustive switch statement for CipherAlgorithm\"\n );\n }\n\n const key_ = await window.crypto.subtle.importKey(\n \"raw\",\n key,\n algorithm_.name,\n false,\n [\"encrypt\"]\n );\n\n return new Uint8Array(\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/encrypt#return_value\n /** @type {ArrayBuffer} */ (\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n await window.crypto.subtle.encrypt(algorithm_, key_, data)\n )\n );\n}\n\n/**\n * @param {string} algorithm\n * @param {Uint8Array} key\n * @param {Uint8Array} iv\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function createDecipheriv(algorithm, key, iv, data) {\n let algorithm_;\n\n switch (algorithm.toUpperCase()) {\n case CipherAlgorithm.Aes128Ctr:\n algorithm_ = {\n name: \"AES-CTR\",\n counter: iv,\n length: 128,\n };\n break;\n case CipherAlgorithm.Aes128Cbc:\n algorithm_ = {\n name: \"AES-CBC\",\n iv,\n };\n break;\n default:\n throw new Error(\n \"(BUG) non-exhaustive switch statement for CipherAlgorithm\"\n );\n }\n\n const key_ = await window.crypto.subtle.importKey(\n \"raw\",\n key,\n algorithm_.name,\n false,\n [\"decrypt\"]\n );\n\n return new Uint8Array(\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/encrypt#return_value\n /** @type {ArrayBuffer} */ (\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n await window.crypto.subtle.decrypt(algorithm_, key_, data)\n )\n );\n}\n","/**\n * @typedef {Object} AsnSeq\n * @property {AsnType[]} seq\n */\n\n/**\n * @typedef {Object} AsnInt\n * @property {number} int\n */\n\n/**\n * @typedef {Object} AsnBytes\n * @property {Uint8Array} bytes\n */\n\n/**\n * @typedef {Object} AsnIdent\n * @property {string} ident\n */\n\n/**\n * @typedef {{}} AsnNull\n */\n\n/**\n * @typedef {AsnSeq | AsnInt | AsnBytes | AsnIdent | AsnNull} AsnType\n */\n\n/**\n * Note: may throw weird errors on malformed input. Catch and rethrow with, e.g. `BadKeyError`.\n *\n *@param {Uint8Array} data\n *@returns {AsnType}\n */\nexport function decode(data) {\n return decodeIncremental(data)[0];\n}\n\n/**\n * @param {Uint8Array} bytes\n * @returns {[AsnType, Uint8Array]}\n */\nfunction decodeIncremental(bytes) {\n // slice off the initial tag byte, `decodeLength` returns a slice of the remaining data\n const [len, rem] = decodeLength(bytes.subarray(1));\n const data = rem.subarray(0, len);\n const tail = rem.subarray(len);\n\n switch (bytes[0]) {\n case 2:\n return [{ int: decodeInt(data) }, tail];\n case 4: // must always be primitive form in DER; for OCTET STRING this is literal bytes\n return [{ bytes: data }, tail];\n case 5: // empty\n return [{}, tail];\n case 6:\n return [{ ident: decodeObjectIdent(data) }, tail];\n case 48:\n return [{ seq: decodeSeq(data) }, tail];\n default:\n throw new Error(`unsupported DER type tag: ${bytes[0]}`);\n }\n}\n\n/**\n * @param {Uint8Array} seqBytes\n * @returns {AsnType[]}\n */\nfunction decodeSeq(seqBytes) {\n let data = seqBytes;\n\n const seq = [];\n\n while (data.length !== 0) {\n const [decoded, remaining] = decodeIncremental(data);\n seq.push(decoded);\n data = remaining;\n }\n\n return seq;\n}\n\n/**\n * @param {Uint8Array} idBytes\n * @returns {string}\n */\nfunction decodeObjectIdent(idBytes) {\n const id = [\n // first octet is 40 * value1 + value2\n Math.floor(idBytes[0] / 40),\n idBytes[0] % 40,\n ];\n\n // each following ID component is big-endian base128 where the MSB is set if another byte\n // follows for the same value\n let val = 0;\n\n for (const byte of idBytes.subarray(1)) {\n // shift the entire value left by 7 bits\n val *= 128;\n\n if (byte < 128) {\n // no more octets follow for this value, finish it off\n val += byte;\n id.push(val);\n val = 0;\n } else {\n // zero the MSB\n val += byte & 127;\n }\n }\n\n return id.join(\".\");\n}\n\n/**\n * @param {Uint8Array} lenBytes\n * @returns {[number, Uint8Array]}\n */\nfunction decodeLength(lenBytes) {\n if (lenBytes[0] < 128) {\n // definite, short form\n return [lenBytes[0], lenBytes.subarray(1)];\n }\n\n const numBytes = lenBytes[0] - 128;\n\n const intBytes = lenBytes.subarray(1, numBytes + 1);\n const rem = lenBytes.subarray(numBytes + 1);\n\n return [decodeInt(intBytes), rem];\n}\n\n/**\n * @param {Uint8Array} intBytes\n * @returns {number}\n */\nfunction decodeInt(intBytes) {\n const len = intBytes.length;\n if (len === 1) {\n return intBytes[0];\n }\n\n let view = new DataView(\n intBytes.buffer,\n intBytes.byteOffset,\n intBytes.byteLength\n );\n\n if (len === 2) return view.getUint16(0, false);\n\n if (len === 3) {\n // prefix a zero byte and we'll treat it as a 32-bit int\n const data = Uint8Array.of(0, ...intBytes);\n view = new DataView(data.buffer, data.byteOffset, data.byteLength);\n }\n\n if (len > 4) {\n // this probably means a bug in the decoding as this would mean a >4GB structure\n throw new Error(`unsupported DER integer length of ${len} bytes`);\n }\n\n return view.getUint32(0, false);\n}\n","import * as cryptography from \"@hashgraph/cryptography\";\nimport Mnemonic from \"./Mnemonic.js\";\nimport PublicKey from \"./PublicKey.js\";\nimport Key from \"./Key.js\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @typedef {import(\"./transaction/Transaction.js\").default} Transaction\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignaturePair} proto.ISignaturePair\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n */\n\nexport default class PrivateKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {cryptography.PrivateKey} key\n */\n constructor(key) {\n super();\n\n this._key = key;\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {PrivateKey}\n */\n static generateED25519() {\n return new PrivateKey(cryptography.PrivateKey.generateED25519());\n }\n\n /**\n * Generate a random EDSA private key.\n *\n * @returns {PrivateKey}\n */\n static generateECDSA() {\n return new PrivateKey(cryptography.PrivateKey.generateECDSA());\n }\n\n /**\n * Depredated - Use `generateEd25519()` instead\n * Generate a random Ed25519 private key.\n *\n * @returns {PrivateKey}\n */\n static generate() {\n return PrivateKey.generateED25519();\n }\n\n /**\n * Depredated - Use `generateEd25519Async()` instead\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateAsync() {\n return new PrivateKey(await cryptography.PrivateKey.generateAsync());\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateED25519Async() {\n return new PrivateKey(\n await cryptography.PrivateKey.generateED25519Async()\n );\n }\n\n /**\n * Generate a random ECDSA private key.\n *\n * @returns {Promise}\n */\n static async generateECDSAAsync() {\n return new PrivateKey(\n await cryptography.PrivateKey.generateECDSAAsync()\n );\n }\n\n /**\n * Construct a private key from bytes. Requires DER header.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytes(data) {\n return new PrivateKey(cryptography.PrivateKey.fromBytes(data));\n }\n\n /**\n * Construct a ECDSA private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytesECDSA(data) {\n return new PrivateKey(cryptography.PrivateKey.fromBytesECDSA(data));\n }\n\n /**\n * Construct a ED25519 private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytesED25519(data) {\n return new PrivateKey(cryptography.PrivateKey.fromBytesED25519(data));\n }\n\n /**\n * Construct a private key from a hex-encoded string. Requires DER header.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromString(text) {\n return new PrivateKey(cryptography.PrivateKey.fromString(text));\n }\n\n /**\n * Construct a ECDSA private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromStringECDSA(text) {\n return new PrivateKey(cryptography.PrivateKey.fromStringECDSA(text));\n }\n\n /**\n * Construct a Ed25519 private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromStringED25519(text) {\n return new PrivateKey(cryptography.PrivateKey.fromStringED25519(text));\n }\n\n /**\n * Recover a private key from a mnemonic phrase (and optionally a password).\n *\n * @param {Mnemonic | cryptography.Mnemonic | string} mnemonic\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n static async fromMnemonic(mnemonic, passphrase = \"\") {\n if (mnemonic instanceof Mnemonic) {\n return new PrivateKey(\n await cryptography.PrivateKey.fromMnemonic(\n mnemonic._mnemonic,\n passphrase\n )\n );\n }\n\n return new PrivateKey(\n await cryptography.PrivateKey.fromMnemonic(mnemonic, passphrase)\n );\n }\n\n /**\n * Recover a private key from a keystore, previously created by `.toKeystore()`.\n *\n * This key will _not_ support child key derivation.\n *\n * @param {Uint8Array} data\n * @param {string} [passphrase]\n * @returns {Promise}\n * @throws {BadKeyError} If the passphrase is incorrect or the hash fails to validate.\n */\n static async fromKeystore(data, passphrase = \"\") {\n return new PrivateKey(\n await cryptography.PrivateKey.fromKeystore(data, passphrase)\n );\n }\n\n /**\n * Recover a private key from a pem string; the private key may be encrypted.\n *\n * This method assumes the .pem file has been converted to a string already.\n *\n * If `passphrase` is not null or empty, this looks for the first `ENCRYPTED PRIVATE KEY`\n * section and uses `passphrase` to decrypt it; otherwise, it looks for the first `PRIVATE KEY`\n * section and decodes that as a DER-encoded private key.\n *\n * @param {string} data\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n static async fromPem(data, passphrase = \"\") {\n return new PrivateKey(\n await cryptography.PrivateKey.fromPem(data, passphrase)\n );\n }\n\n /**\n * Derive a new private key at the given wallet index.\n *\n * Only currently supported for keys created with `fromMnemonic()`; other keys will throw\n * an error.\n *\n * You can check if a key supports derivation with `.supportsDerivation()`\n *\n * @param {number} index\n * @returns {Promise}\n * @throws If this key does not support derivation.\n */\n async derive(index) {\n return new PrivateKey(await this._key.derive(index));\n }\n\n /**\n * @param {number} index\n * @returns {Promise}\n * @throws If this key does not support derivation.\n */\n async legacyDerive(index) {\n return new PrivateKey(await this._key.legacyDerive(index));\n }\n\n /**\n * Get the public key associated with this private key.\n *\n * The public key can be freely given and used by other parties to verify\n * the signatures generated by this private key.\n *\n * @returns {PublicKey}\n */\n get publicKey() {\n return new PublicKey(this._key.publicKey);\n }\n\n /**\n * Sign a message with this private key.\n *\n * @param {Uint8Array} bytes\n * @returns {Uint8Array} - The signature bytes without the message\n */\n sign(bytes) {\n return this._key.sign(bytes);\n }\n\n /**\n * @param {Transaction} transaction\n * @returns {Uint8Array}\n */\n signTransaction(transaction) {\n const tx = transaction._signedTransactions.get(0);\n const signature =\n tx.bodyBytes != null ? this.sign(tx.bodyBytes) : new Uint8Array();\n\n transaction.addSignature(this.publicKey, signature);\n\n return signature;\n }\n\n /**\n * Check if `derive` can be called on this private key.\n *\n * This is only the case if the key was created from a mnemonic.\n *\n * @returns {boolean}\n */\n isDerivable() {\n return this._key.isDerivable();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return this._key.toBytes();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n return this._key.toBytesDer();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._key.toBytesRaw();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this._key.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringDer() {\n return this._key.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringRaw() {\n return this._key.toStringRaw();\n }\n\n /**\n * Create a keystore with a given passphrase.\n *\n * The key can be recovered later with `fromKeystore()`.\n *\n * Note that this will not retain the ancillary data used for\n * deriving child keys, thus `.derive()` on the restored key will\n * throw even if this instance supports derivation.\n *\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n toKeystore(passphrase = \"\") {\n return this._key.toKeystore(passphrase);\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n return this.publicKey._toProtobufKey();\n }\n\n /**\n * @param {Long | number} shard\n * @param {Long | number} realm\n * @returns {AccountId}\n */\n toAccountId(shard, realm) {\n return this.publicKey.toAccountId(shard, realm);\n }\n}\n\nCACHE.privateKeyConstructor = (key) => new PrivateKey(key);\n","import * as cryptography from \"@hashgraph/cryptography\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @typedef {import(\"./PrivateKey.js\").default} PrivateKey\n */\n\n/**\n * Multi-word mnemonic phrase (BIP-39).\n *\n * Compatible with the official Hedera mobile\n * wallets (24-words or 22-words) and BRD (12-words).\n */\nexport default class Mnemonic {\n /**\n * @param {cryptography.Mnemonic} mnemonic\n * @hideconstructor\n * @private\n */\n constructor(mnemonic) {\n this._mnemonic = mnemonic;\n }\n\n /**\n * Returns a new random 24-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static async generate() {\n return new Mnemonic(await cryptography.Mnemonic._generate(24));\n }\n\n /**\n * Returns a new random 12-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static async generate12() {\n return new Mnemonic(await cryptography.Mnemonic._generate(12));\n }\n\n /**\n * Construct a mnemonic from a list of words. Handles 12, 22 (legacy), and 24 words.\n *\n * An exception of BadMnemonicError will be thrown if the mnemonic\n * contains unknown words or fails the checksum. An invalid mnemonic\n * can still be used to create private keys, the exception will\n * contain the failing mnemonic in case you wish to ignore the\n * validation error and continue.\n *\n * @param {string[]} words\n * @throws {BadMnemonicError}\n * @returns {Promise}\n */\n static async fromWords(words) {\n return new Mnemonic(await cryptography.Mnemonic.fromWords(words));\n }\n\n /**\n * Recover a private key from this mnemonic phrase, with an\n * optional passphrase.\n *\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n async toPrivateKey(passphrase = \"\") {\n if (CACHE.privateKeyConstructor == null) {\n throw new Error(\"`PrivateKey` has not been loaded\");\n }\n\n return CACHE.privateKeyConstructor(\n await this._mnemonic.toPrivateKey(passphrase)\n );\n }\n\n /**\n * Recover a mnemonic phrase from a string, splitting on spaces. Handles 12, 22 (legacy), and 24 words.\n *\n * @param {string} mnemonic\n * @returns {Promise}\n */\n static async fromString(mnemonic) {\n return new Mnemonic(await cryptography.Mnemonic.fromString(mnemonic));\n }\n\n /**\n * @returns {Promise}\n */\n async toLegacyPrivateKey() {\n if (CACHE.privateKeyConstructor == null) {\n throw new Error(\"`PrivateKey` has not been loaded\");\n }\n\n return CACHE.privateKeyConstructor(\n await this._mnemonic.toLegacyPrivateKey()\n );\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this._mnemonic.toString();\n }\n}\n","import BigNumber from \"bignumber.js\";\n\nexport default class HbarUnit {\n /**\n * @internal\n * @param {string} name\n * @param {string} symbol\n * @param {BigNumber} tinybar\n */\n constructor(name, symbol, tinybar) {\n /**\n * @internal\n * @readonly\n */\n this._name = name;\n\n /**\n * @internal\n * @readonly\n */\n this._symbol = symbol;\n\n /**\n * @internal\n * @readonly\n */\n this._tinybar = tinybar;\n\n Object.freeze(this);\n }\n\n /**\n * @param {string} unit\n * @returns {HbarUnit}\n */\n static fromString(unit) {\n switch (unit) {\n case HbarUnit.Hbar._symbol:\n return HbarUnit.Hbar;\n case HbarUnit.Tinybar._symbol:\n return HbarUnit.Tinybar;\n case HbarUnit.Microbar._symbol:\n return HbarUnit.Microbar;\n case HbarUnit.Millibar._symbol:\n return HbarUnit.Millibar;\n case HbarUnit.Kilobar._symbol:\n return HbarUnit.Kilobar;\n case HbarUnit.Megabar._symbol:\n return HbarUnit.Megabar;\n case HbarUnit.Gigabar._symbol:\n return HbarUnit.Gigabar;\n default:\n throw new Error(\"Unknown unit.\");\n }\n }\n}\n\nHbarUnit.Tinybar = new HbarUnit(\"tinybar\", \"tℏ\", new BigNumber(1));\n\nHbarUnit.Microbar = new HbarUnit(\"microbar\", \"μℏ\", new BigNumber(100));\n\nHbarUnit.Millibar = new HbarUnit(\"millibar\", \"mℏ\", new BigNumber(100000));\n\nHbarUnit.Hbar = new HbarUnit(\"hbar\", \"ℏ\", new BigNumber(\"100000000\"));\n\nHbarUnit.Kilobar = new HbarUnit(\n \"kilobar\",\n \"kℏ\",\n new BigNumber(1000).multipliedBy(new BigNumber(\"100000000\"))\n);\n\nHbarUnit.Megabar = new HbarUnit(\n \"megabar\",\n \"Mℏ\",\n new BigNumber(1000000).multipliedBy(new BigNumber(\"100000000\"))\n);\n\nHbarUnit.Gigabar = new HbarUnit(\n \"gigabar\",\n \"Gℏ\",\n new BigNumber(\"1000000000\").multipliedBy(new BigNumber(\"100000000\"))\n);\n","import ReceiptStatusError from \"../ReceiptStatusError.js\";\nimport Status from \"../Status.js\";\nimport TransactionReceiptQuery from \"./TransactionReceiptQuery.js\";\nimport TransactionRecordQuery from \"./TransactionRecordQuery.js\";\n\n/**\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"./TransactionId.js\").default} TransactionId\n * @typedef {import(\"./TransactionReceipt.js\").default} TransactionReceipt\n * @typedef {import(\"./TransactionRecord.js\").default} TransactionRecord\n */\n\nexport default class TransactionResponse {\n /**\n * @internal\n * @param {object} props\n * @param {AccountId} props.nodeId\n * @param {Uint8Array} props.transactionHash\n * @param {TransactionId} props.transactionId\n */\n constructor(props) {\n /** @readonly */\n this.nodeId = props.nodeId;\n\n /** @readonly */\n this.transactionHash = props.transactionHash;\n\n /** @readonly */\n this.transactionId = props.transactionId;\n\n Object.freeze(this);\n }\n\n /**\n * @param {Client} client\n * @returns {Promise}\n */\n async getReceipt(client) {\n const receipt = await new TransactionReceiptQuery()\n .setTransactionId(this.transactionId)\n .setNodeAccountIds([this.nodeId])\n .execute(client);\n\n if (receipt.status !== Status.Success) {\n throw new ReceiptStatusError({\n transactionReceipt: receipt,\n status: receipt.status,\n transactionId: this.transactionId,\n });\n }\n\n return receipt;\n }\n\n /**\n * @param {Client} client\n * @returns {Promise}\n */\n async getRecord(client) {\n await this.getReceipt(client);\n\n return new TransactionRecordQuery()\n .setTransactionId(this.transactionId)\n .setNodeAccountIds([this.nodeId])\n .execute(client);\n }\n}\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport Status from \"../Status.js\";\nimport TransactionReceipt from \"./TransactionReceipt.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport ReceiptStatusError from \"../ReceiptStatusError.js\";\nimport { ExecutionState } from \"../Executable.js\";\nimport { ResponseCodeEnum } from \"@hashgraph/proto\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ITransactionReceipt} proto.ITransactionReceipt\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetReceiptQuery} proto.ITransactionGetReceiptQuery\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetReceiptResponse} proto.ITransactionGetReceiptResponse\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\n/**\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @augments {Query}\n */\nexport default class TransactionReceiptQuery extends Query {\n /**\n * @param {object} [props]\n * @param {TransactionId | string} [props.transactionId]\n * @param {boolean} [props.includeDuplicates]\n * @param {boolean} [props.includeChildren]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TransactionId}\n */\n this._transactionId = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeChildren = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeDuplicates = null;\n\n if (props.transactionId != null) {\n this.setTransactionId(props.transactionId);\n }\n\n if (props.includeChildren != null) {\n this.setIncludeChildren(props.includeChildren);\n }\n\n if (props.includeDuplicates != null) {\n this.setIncludeDuplicates(props.includeDuplicates);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {TransactionReceiptQuery}\n */\n static _fromProtobuf(query) {\n const receipt = /** @type {proto.ITransactionGetReceiptQuery} */ (\n query.transactionGetReceipt\n );\n\n return new TransactionReceiptQuery({\n transactionId: receipt.transactionID\n ? TransactionId._fromProtobuf(receipt.transactionID)\n : undefined,\n includeDuplicates:\n receipt.includeDuplicates != null\n ? receipt.includeDuplicates\n : undefined,\n includeChildren:\n receipt.includeChildReceipts != null\n ? receipt.includeChildReceipts\n : undefined,\n });\n }\n\n /**\n * @returns {?TransactionId}\n */\n get transactionId() {\n return this._transactionId;\n }\n\n /**\n * Set the transaction ID for which the receipt is being requested.\n *\n * @param {TransactionId | string} transactionId\n * @returns {this}\n */\n setTransactionId(transactionId) {\n this._transactionId =\n typeof transactionId === \"string\"\n ? TransactionId.fromString(transactionId)\n : transactionId.clone();\n\n return this;\n }\n\n /**\n * @param {boolean} includeDuplicates\n * @returns {TransactionReceiptQuery}\n */\n setIncludeDuplicates(includeDuplicates) {\n this._includeDuplicates = includeDuplicates;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeDuplicates() {\n return this._includeDuplicates != null\n ? this._includeDuplicates\n : false;\n }\n\n /**\n * @param {boolean} includeChildren\n * @returns {TransactionReceiptQuery}\n */\n setIncludeChildren(includeChildren) {\n this._includeChildren = includeChildren;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeChildren() {\n return this._includeChildren != null ? this._includeChildren : false;\n }\n\n /**\n * @override\n * @protected\n * @returns {boolean}\n */\n _isPaymentRequired() {\n return false;\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n return ExecutionState.Retry;\n case Status.Ok:\n break;\n default:\n return ExecutionState.Error;\n }\n\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n transactionGetReceipt.receipt\n );\n const receiptStatusCode = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n\n status = Status._fromCode(receiptStatusCode);\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n return ExecutionState.Retry;\n case Status.Success:\n return ExecutionState.Finished;\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Ok:\n // Do nothing\n break;\n\n default:\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n transactionGetReceipt.receipt\n );\n const receiptStatusCode = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n\n status = Status._fromCode(receiptStatusCode);\n\n return new ReceiptStatusError({\n status,\n transactionId: this._getTransactionId(),\n transactionReceipt: TransactionReceipt._fromProtobuf(\n transactionGetReceipt\n ),\n });\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (\n this._transactionId != null &&\n this._transactionId.accountId != null\n ) {\n this._transactionId.accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.getTransactionReceipts(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n return /** @type {proto.IResponseHeader} */ (\n transactionGetReceipt.header\n );\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n\n return Promise.resolve(\n TransactionReceipt._fromProtobuf(transactionGetReceipt)\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n transactionGetReceipt: {\n header,\n transactionID:\n this._transactionId != null\n ? this._transactionId._toProtobuf()\n : null,\n includeDuplicates: this._includeDuplicates,\n includeChildReceipts: this._includeChildren,\n },\n };\n }\n}\n\nQUERY_REGISTRY.set(\n \"transactionGetReceipt\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TransactionReceiptQuery._fromProtobuf\n);\n","// minimal library entry point.\n\n\"use strict\";\nmodule.exports = require(\"./src/index-minimal\");\n","\"use strict\";\nmodule.exports = Writer;\n\nvar util = require(\"./util/minimal\");\n\nvar BufferWriter; // cyclic\n\nvar LongBits = util.LongBits,\n base64 = util.base64,\n utf8 = util.utf8;\n\n/**\n * Constructs a new writer operation instance.\n * @classdesc Scheduled writer operation.\n * @constructor\n * @param {function(*, Uint8Array, number)} fn Function to call\n * @param {number} len Value byte length\n * @param {*} val Value to write\n * @ignore\n */\nfunction Op(fn, len, val) {\n\n /**\n * Function to call.\n * @type {function(Uint8Array, number, *)}\n */\n this.fn = fn;\n\n /**\n * Value byte length.\n * @type {number}\n */\n this.len = len;\n\n /**\n * Next operation.\n * @type {Writer.Op|undefined}\n */\n this.next = undefined;\n\n /**\n * Value to write.\n * @type {*}\n */\n this.val = val; // type varies\n}\n\n/* istanbul ignore next */\nfunction noop() {} // eslint-disable-line no-empty-function\n\n/**\n * Constructs a new writer state instance.\n * @classdesc Copied writer state.\n * @memberof Writer\n * @constructor\n * @param {Writer} writer Writer to copy state from\n * @ignore\n */\nfunction State(writer) {\n\n /**\n * Current head.\n * @type {Writer.Op}\n */\n this.head = writer.head;\n\n /**\n * Current tail.\n * @type {Writer.Op}\n */\n this.tail = writer.tail;\n\n /**\n * Current buffer length.\n * @type {number}\n */\n this.len = writer.len;\n\n /**\n * Next state.\n * @type {State|null}\n */\n this.next = writer.states;\n}\n\n/**\n * Constructs a new writer instance.\n * @classdesc Wire format writer using `Uint8Array` if available, otherwise `Array`.\n * @constructor\n */\nfunction Writer() {\n\n /**\n * Current length.\n * @type {number}\n */\n this.len = 0;\n\n /**\n * Operations head.\n * @type {Object}\n */\n this.head = new Op(noop, 0, 0);\n\n /**\n * Operations tail\n * @type {Object}\n */\n this.tail = this.head;\n\n /**\n * Linked forked states.\n * @type {Object|null}\n */\n this.states = null;\n\n // When a value is written, the writer calculates its byte length and puts it into a linked\n // list of operations to perform when finish() is called. This both allows us to allocate\n // buffers of the exact required size and reduces the amount of work we have to do compared\n // to first calculating over objects and then encoding over objects. In our case, the encoding\n // part is just a linked list walk calling operations with already prepared values.\n}\n\nvar create = function create() {\n return util.Buffer\n ? function create_buffer_setup() {\n return (Writer.create = function create_buffer() {\n return new BufferWriter();\n })();\n }\n /* istanbul ignore next */\n : function create_array() {\n return new Writer();\n };\n};\n\n/**\n * Creates a new writer.\n * @function\n * @returns {BufferWriter|Writer} A {@link BufferWriter} when Buffers are supported, otherwise a {@link Writer}\n */\nWriter.create = create();\n\n/**\n * Allocates a buffer of the specified size.\n * @param {number} size Buffer size\n * @returns {Uint8Array} Buffer\n */\nWriter.alloc = function alloc(size) {\n return new util.Array(size);\n};\n\n// Use Uint8Array buffer pool in the browser, just like node does with buffers\n/* istanbul ignore else */\nif (util.Array !== Array)\n Writer.alloc = util.pool(Writer.alloc, util.Array.prototype.subarray);\n\n/**\n * Pushes a new operation to the queue.\n * @param {function(Uint8Array, number, *)} fn Function to call\n * @param {number} len Value byte length\n * @param {number} val Value to write\n * @returns {Writer} `this`\n * @private\n */\nWriter.prototype._push = function push(fn, len, val) {\n this.tail = this.tail.next = new Op(fn, len, val);\n this.len += len;\n return this;\n};\n\nfunction writeByte(val, buf, pos) {\n buf[pos] = val & 255;\n}\n\nfunction writeVarint32(val, buf, pos) {\n while (val > 127) {\n buf[pos++] = val & 127 | 128;\n val >>>= 7;\n }\n buf[pos] = val;\n}\n\n/**\n * Constructs a new varint writer operation instance.\n * @classdesc Scheduled varint writer operation.\n * @extends Op\n * @constructor\n * @param {number} len Value byte length\n * @param {number} val Value to write\n * @ignore\n */\nfunction VarintOp(len, val) {\n this.len = len;\n this.next = undefined;\n this.val = val;\n}\n\nVarintOp.prototype = Object.create(Op.prototype);\nVarintOp.prototype.fn = writeVarint32;\n\n/**\n * Writes an unsigned 32 bit value as a varint.\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.uint32 = function write_uint32(value) {\n // here, the call to this.push has been inlined and a varint specific Op subclass is used.\n // uint32 is by far the most frequently used operation and benefits significantly from this.\n this.len += (this.tail = this.tail.next = new VarintOp(\n (value = value >>> 0)\n < 128 ? 1\n : value < 16384 ? 2\n : value < 2097152 ? 3\n : value < 268435456 ? 4\n : 5,\n value)).len;\n return this;\n};\n\n/**\n * Writes a signed 32 bit value as a varint.\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.int32 = function write_int32(value) {\n return value < 0\n ? this._push(writeVarint64, 10, LongBits.fromNumber(value)) // 10 bytes per spec\n : this.uint32(value);\n};\n\n/**\n * Writes a 32 bit value as a varint, zig-zag encoded.\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.sint32 = function write_sint32(value) {\n return this.uint32((value << 1 ^ value >> 31) >>> 0);\n};\n\nfunction writeVarint64(val, buf, pos) {\n while (val.hi) {\n buf[pos++] = val.lo & 127 | 128;\n val.lo = (val.lo >>> 7 | val.hi << 25) >>> 0;\n val.hi >>>= 7;\n }\n while (val.lo > 127) {\n buf[pos++] = val.lo & 127 | 128;\n val.lo = val.lo >>> 7;\n }\n buf[pos++] = val.lo;\n}\n\n/**\n * Writes an unsigned 64 bit value as a varint.\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.uint64 = function write_uint64(value) {\n var bits = LongBits.from(value);\n return this._push(writeVarint64, bits.length(), bits);\n};\n\n/**\n * Writes a signed 64 bit value as a varint.\n * @function\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.int64 = Writer.prototype.uint64;\n\n/**\n * Writes a signed 64 bit value as a varint, zig-zag encoded.\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.sint64 = function write_sint64(value) {\n var bits = LongBits.from(value).zzEncode();\n return this._push(writeVarint64, bits.length(), bits);\n};\n\n/**\n * Writes a boolish value as a varint.\n * @param {boolean} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.bool = function write_bool(value) {\n return this._push(writeByte, 1, value ? 1 : 0);\n};\n\nfunction writeFixed32(val, buf, pos) {\n buf[pos ] = val & 255;\n buf[pos + 1] = val >>> 8 & 255;\n buf[pos + 2] = val >>> 16 & 255;\n buf[pos + 3] = val >>> 24;\n}\n\n/**\n * Writes an unsigned 32 bit value as fixed 32 bits.\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.fixed32 = function write_fixed32(value) {\n return this._push(writeFixed32, 4, value >>> 0);\n};\n\n/**\n * Writes a signed 32 bit value as fixed 32 bits.\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.sfixed32 = Writer.prototype.fixed32;\n\n/**\n * Writes an unsigned 64 bit value as fixed 64 bits.\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.fixed64 = function write_fixed64(value) {\n var bits = LongBits.from(value);\n return this._push(writeFixed32, 4, bits.lo)._push(writeFixed32, 4, bits.hi);\n};\n\n/**\n * Writes a signed 64 bit value as fixed 64 bits.\n * @function\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.sfixed64 = Writer.prototype.fixed64;\n\n/**\n * Writes a float (32 bit).\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.float = function write_float(value) {\n return this._push(util.float.writeFloatLE, 4, value);\n};\n\n/**\n * Writes a double (64 bit float).\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.double = function write_double(value) {\n return this._push(util.float.writeDoubleLE, 8, value);\n};\n\nvar writeBytes = util.Array.prototype.set\n ? function writeBytes_set(val, buf, pos) {\n buf.set(val, pos); // also works for plain array values\n }\n /* istanbul ignore next */\n : function writeBytes_for(val, buf, pos) {\n for (var i = 0; i < val.length; ++i)\n buf[pos + i] = val[i];\n };\n\n/**\n * Writes a sequence of bytes.\n * @param {Uint8Array|string} value Buffer or base64 encoded string to write\n * @returns {Writer} `this`\n */\nWriter.prototype.bytes = function write_bytes(value) {\n var len = value.length >>> 0;\n if (!len)\n return this._push(writeByte, 1, 0);\n if (util.isString(value)) {\n var buf = Writer.alloc(len = base64.length(value));\n base64.decode(value, buf, 0);\n value = buf;\n }\n return this.uint32(len)._push(writeBytes, len, value);\n};\n\n/**\n * Writes a string.\n * @param {string} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.string = function write_string(value) {\n var len = utf8.length(value);\n return len\n ? this.uint32(len)._push(utf8.write, len, value)\n : this._push(writeByte, 1, 0);\n};\n\n/**\n * Forks this writer's state by pushing it to a stack.\n * Calling {@link Writer#reset|reset} or {@link Writer#ldelim|ldelim} resets the writer to the previous state.\n * @returns {Writer} `this`\n */\nWriter.prototype.fork = function fork() {\n this.states = new State(this);\n this.head = this.tail = new Op(noop, 0, 0);\n this.len = 0;\n return this;\n};\n\n/**\n * Resets this instance to the last state.\n * @returns {Writer} `this`\n */\nWriter.prototype.reset = function reset() {\n if (this.states) {\n this.head = this.states.head;\n this.tail = this.states.tail;\n this.len = this.states.len;\n this.states = this.states.next;\n } else {\n this.head = this.tail = new Op(noop, 0, 0);\n this.len = 0;\n }\n return this;\n};\n\n/**\n * Resets to the last state and appends the fork state's current write length as a varint followed by its operations.\n * @returns {Writer} `this`\n */\nWriter.prototype.ldelim = function ldelim() {\n var head = this.head,\n tail = this.tail,\n len = this.len;\n this.reset().uint32(len);\n if (len) {\n this.tail.next = head.next; // skip noop\n this.tail = tail;\n this.len += len;\n }\n return this;\n};\n\n/**\n * Finishes the write operation.\n * @returns {Uint8Array} Finished buffer\n */\nWriter.prototype.finish = function finish() {\n var head = this.head.next, // skip noop\n buf = this.constructor.alloc(this.len),\n pos = 0;\n while (head) {\n head.fn(head.val, buf, pos);\n pos += head.len;\n head = head.next;\n }\n // this.head = this.tail = null;\n return buf;\n};\n\nWriter._configure = function(BufferWriter_) {\n BufferWriter = BufferWriter_;\n Writer.create = create();\n BufferWriter._configure();\n};\n","\"use strict\";\nmodule.exports = Reader;\n\nvar util = require(\"./util/minimal\");\n\nvar BufferReader; // cyclic\n\nvar LongBits = util.LongBits,\n utf8 = util.utf8;\n\n/* istanbul ignore next */\nfunction indexOutOfRange(reader, writeLength) {\n return RangeError(\"index out of range: \" + reader.pos + \" + \" + (writeLength || 1) + \" > \" + reader.len);\n}\n\n/**\n * Constructs a new reader instance using the specified buffer.\n * @classdesc Wire format reader using `Uint8Array` if available, otherwise `Array`.\n * @constructor\n * @param {Uint8Array} buffer Buffer to read from\n */\nfunction Reader(buffer) {\n\n /**\n * Read buffer.\n * @type {Uint8Array}\n */\n this.buf = buffer;\n\n /**\n * Read buffer position.\n * @type {number}\n */\n this.pos = 0;\n\n /**\n * Read buffer length.\n * @type {number}\n */\n this.len = buffer.length;\n}\n\nvar create_array = typeof Uint8Array !== \"undefined\"\n ? function create_typed_array(buffer) {\n if (buffer instanceof Uint8Array || Array.isArray(buffer))\n return new Reader(buffer);\n throw Error(\"illegal buffer\");\n }\n /* istanbul ignore next */\n : function create_array(buffer) {\n if (Array.isArray(buffer))\n return new Reader(buffer);\n throw Error(\"illegal buffer\");\n };\n\nvar create = function create() {\n return util.Buffer\n ? function create_buffer_setup(buffer) {\n return (Reader.create = function create_buffer(buffer) {\n return util.Buffer.isBuffer(buffer)\n ? new BufferReader(buffer)\n /* istanbul ignore next */\n : create_array(buffer);\n })(buffer);\n }\n /* istanbul ignore next */\n : create_array;\n};\n\n/**\n * Creates a new reader using the specified buffer.\n * @function\n * @param {Uint8Array|Buffer} buffer Buffer to read from\n * @returns {Reader|BufferReader} A {@link BufferReader} if `buffer` is a Buffer, otherwise a {@link Reader}\n * @throws {Error} If `buffer` is not a valid buffer\n */\nReader.create = create();\n\nReader.prototype._slice = util.Array.prototype.subarray || /* istanbul ignore next */ util.Array.prototype.slice;\n\n/**\n * Reads a varint as an unsigned 32 bit value.\n * @function\n * @returns {number} Value read\n */\nReader.prototype.uint32 = (function read_uint32_setup() {\n var value = 4294967295; // optimizer type-hint, tends to deopt otherwise (?!)\n return function read_uint32() {\n value = ( this.buf[this.pos] & 127 ) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 127) << 7) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 127) << 14) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 127) << 21) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 15) << 28) >>> 0; if (this.buf[this.pos++] < 128) return value;\n\n /* istanbul ignore if */\n if ((this.pos += 5) > this.len) {\n this.pos = this.len;\n throw indexOutOfRange(this, 10);\n }\n return value;\n };\n})();\n\n/**\n * Reads a varint as a signed 32 bit value.\n * @returns {number} Value read\n */\nReader.prototype.int32 = function read_int32() {\n return this.uint32() | 0;\n};\n\n/**\n * Reads a zig-zag encoded varint as a signed 32 bit value.\n * @returns {number} Value read\n */\nReader.prototype.sint32 = function read_sint32() {\n var value = this.uint32();\n return value >>> 1 ^ -(value & 1) | 0;\n};\n\n/* eslint-disable no-invalid-this */\n\nfunction readLongVarint() {\n // tends to deopt with local vars for octet etc.\n var bits = new LongBits(0, 0);\n var i = 0;\n if (this.len - this.pos > 4) { // fast route (lo)\n for (; i < 4; ++i) {\n // 1st..4th\n bits.lo = (bits.lo | (this.buf[this.pos] & 127) << i * 7) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n // 5th\n bits.lo = (bits.lo | (this.buf[this.pos] & 127) << 28) >>> 0;\n bits.hi = (bits.hi | (this.buf[this.pos] & 127) >> 4) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n i = 0;\n } else {\n for (; i < 3; ++i) {\n /* istanbul ignore if */\n if (this.pos >= this.len)\n throw indexOutOfRange(this);\n // 1st..3th\n bits.lo = (bits.lo | (this.buf[this.pos] & 127) << i * 7) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n // 4th\n bits.lo = (bits.lo | (this.buf[this.pos++] & 127) << i * 7) >>> 0;\n return bits;\n }\n if (this.len - this.pos > 4) { // fast route (hi)\n for (; i < 5; ++i) {\n // 6th..10th\n bits.hi = (bits.hi | (this.buf[this.pos] & 127) << i * 7 + 3) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n } else {\n for (; i < 5; ++i) {\n /* istanbul ignore if */\n if (this.pos >= this.len)\n throw indexOutOfRange(this);\n // 6th..10th\n bits.hi = (bits.hi | (this.buf[this.pos] & 127) << i * 7 + 3) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n }\n /* istanbul ignore next */\n throw Error(\"invalid varint encoding\");\n}\n\n/* eslint-enable no-invalid-this */\n\n/**\n * Reads a varint as a signed 64 bit value.\n * @name Reader#int64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a varint as an unsigned 64 bit value.\n * @name Reader#uint64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a zig-zag encoded varint as a signed 64 bit value.\n * @name Reader#sint64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a varint as a boolean.\n * @returns {boolean} Value read\n */\nReader.prototype.bool = function read_bool() {\n return this.uint32() !== 0;\n};\n\nfunction readFixed32_end(buf, end) { // note that this uses `end`, not `pos`\n return (buf[end - 4]\n | buf[end - 3] << 8\n | buf[end - 2] << 16\n | buf[end - 1] << 24) >>> 0;\n}\n\n/**\n * Reads fixed 32 bits as an unsigned 32 bit integer.\n * @returns {number} Value read\n */\nReader.prototype.fixed32 = function read_fixed32() {\n\n /* istanbul ignore if */\n if (this.pos + 4 > this.len)\n throw indexOutOfRange(this, 4);\n\n return readFixed32_end(this.buf, this.pos += 4);\n};\n\n/**\n * Reads fixed 32 bits as a signed 32 bit integer.\n * @returns {number} Value read\n */\nReader.prototype.sfixed32 = function read_sfixed32() {\n\n /* istanbul ignore if */\n if (this.pos + 4 > this.len)\n throw indexOutOfRange(this, 4);\n\n return readFixed32_end(this.buf, this.pos += 4) | 0;\n};\n\n/* eslint-disable no-invalid-this */\n\nfunction readFixed64(/* this: Reader */) {\n\n /* istanbul ignore if */\n if (this.pos + 8 > this.len)\n throw indexOutOfRange(this, 8);\n\n return new LongBits(readFixed32_end(this.buf, this.pos += 4), readFixed32_end(this.buf, this.pos += 4));\n}\n\n/* eslint-enable no-invalid-this */\n\n/**\n * Reads fixed 64 bits.\n * @name Reader#fixed64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads zig-zag encoded fixed 64 bits.\n * @name Reader#sfixed64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a float (32 bit) as a number.\n * @function\n * @returns {number} Value read\n */\nReader.prototype.float = function read_float() {\n\n /* istanbul ignore if */\n if (this.pos + 4 > this.len)\n throw indexOutOfRange(this, 4);\n\n var value = util.float.readFloatLE(this.buf, this.pos);\n this.pos += 4;\n return value;\n};\n\n/**\n * Reads a double (64 bit float) as a number.\n * @function\n * @returns {number} Value read\n */\nReader.prototype.double = function read_double() {\n\n /* istanbul ignore if */\n if (this.pos + 8 > this.len)\n throw indexOutOfRange(this, 4);\n\n var value = util.float.readDoubleLE(this.buf, this.pos);\n this.pos += 8;\n return value;\n};\n\n/**\n * Reads a sequence of bytes preceeded by its length as a varint.\n * @returns {Uint8Array} Value read\n */\nReader.prototype.bytes = function read_bytes() {\n var length = this.uint32(),\n start = this.pos,\n end = this.pos + length;\n\n /* istanbul ignore if */\n if (end > this.len)\n throw indexOutOfRange(this, length);\n\n this.pos += length;\n if (Array.isArray(this.buf)) // plain array\n return this.buf.slice(start, end);\n return start === end // fix for IE 10/Win8 and others' subarray returning array of size 1\n ? new this.buf.constructor(0)\n : this._slice.call(this.buf, start, end);\n};\n\n/**\n * Reads a string preceeded by its byte length as a varint.\n * @returns {string} Value read\n */\nReader.prototype.string = function read_string() {\n var bytes = this.bytes();\n return utf8.read(bytes, 0, bytes.length);\n};\n\n/**\n * Skips the specified number of bytes if specified, otherwise skips a varint.\n * @param {number} [length] Length if known, otherwise a varint is assumed\n * @returns {Reader} `this`\n */\nReader.prototype.skip = function skip(length) {\n if (typeof length === \"number\") {\n /* istanbul ignore if */\n if (this.pos + length > this.len)\n throw indexOutOfRange(this, length);\n this.pos += length;\n } else {\n do {\n /* istanbul ignore if */\n if (this.pos >= this.len)\n throw indexOutOfRange(this);\n } while (this.buf[this.pos++] & 128);\n }\n return this;\n};\n\n/**\n * Skips the next element of the specified wire type.\n * @param {number} wireType Wire type received\n * @returns {Reader} `this`\n */\nReader.prototype.skipType = function(wireType) {\n switch (wireType) {\n case 0:\n this.skip();\n break;\n case 1:\n this.skip(8);\n break;\n case 2:\n this.skip(this.uint32());\n break;\n case 3:\n while ((wireType = this.uint32() & 7) !== 4) {\n this.skipType(wireType);\n }\n break;\n case 5:\n this.skip(4);\n break;\n\n /* istanbul ignore next */\n default:\n throw Error(\"invalid wire type \" + wireType + \" at offset \" + this.pos);\n }\n return this;\n};\n\nReader._configure = function(BufferReader_) {\n BufferReader = BufferReader_;\n Reader.create = create();\n BufferReader._configure();\n\n var fn = util.Long ? \"toLong\" : /* istanbul ignore next */ \"toNumber\";\n util.merge(Reader.prototype, {\n\n int64: function read_int64() {\n return readLongVarint.call(this)[fn](false);\n },\n\n uint64: function read_uint64() {\n return readLongVarint.call(this)[fn](true);\n },\n\n sint64: function read_sint64() {\n return readLongVarint.call(this).zzDecode()[fn](false);\n },\n\n fixed64: function read_fixed64() {\n return readFixed64.call(this)[fn](true);\n },\n\n sfixed64: function read_sfixed64() {\n return readFixed64.call(this)[fn](false);\n }\n\n });\n};\n","export default class GrpcStatus {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {GrpcStatus}\n */\n static _fromValue(code) {\n switch (code) {\n case 0:\n return GrpcStatus.Ok;\n case 1:\n return GrpcStatus.Cancelled;\n case 2:\n return GrpcStatus.Unknown;\n case 3:\n return GrpcStatus.InvalidArgument;\n case 4:\n return GrpcStatus.DeadlineExceeded;\n case 5:\n return GrpcStatus.NotFound;\n case 6:\n return GrpcStatus.AlreadyExists;\n case 7:\n return GrpcStatus.PermissionDenied;\n case 16:\n return GrpcStatus.Unauthenticated;\n case 8:\n return GrpcStatus.ResourceExhausted;\n case 9:\n return GrpcStatus.FailedPrecondition;\n case 10:\n return GrpcStatus.Aborted;\n case 11:\n return GrpcStatus.OutOfRange;\n case 12:\n return GrpcStatus.Unimplemented;\n case 13:\n return GrpcStatus.Internal;\n case 14:\n return GrpcStatus.Unavailable;\n case 15:\n return GrpcStatus.DataLoss;\n default:\n throw new Error(\n \"(BUG) non-exhaustive GrpcStatus switch statement\"\n );\n }\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case GrpcStatus.Ok:\n return \"OK\";\n case GrpcStatus.Cancelled:\n return \"CANCELLED\";\n case GrpcStatus.Unknown:\n return \"UNKNOWN\";\n case GrpcStatus.InvalidArgument:\n return \"INVALID_ARGUMENT\";\n case GrpcStatus.DeadlineExceeded:\n return \"DEADLINE_EXCEEDED\";\n case GrpcStatus.NotFound:\n return \"NOT_FOUND\";\n case GrpcStatus.AlreadyExists:\n return \"ALREADY_EXISTS\";\n case GrpcStatus.PermissionDenied:\n return \"PERMISSION_DENIED\";\n case GrpcStatus.Unauthenticated:\n return \"UNAUTHENTICATED\";\n case GrpcStatus.ResourceExhausted:\n return \"RESOURCE_EXHAUSTED\";\n case GrpcStatus.FailedPrecondition:\n return \"FAILED_PRECONDITION\";\n case GrpcStatus.Aborted:\n return \"ABORTED\";\n case GrpcStatus.OutOfRange:\n return \"OUT_OF_RANGE\";\n case GrpcStatus.Unimplemented:\n return \"UNIMPLEMENTED\";\n case GrpcStatus.Internal:\n return \"INTERNAL\";\n case GrpcStatus.Unavailable:\n return \"UNAVAILABLE\";\n case GrpcStatus.DataLoss:\n return \"DATA_LOSS\";\n\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @returns {number}\n */\n valueOf() {\n return this._code;\n }\n}\n\nGrpcStatus.Ok = new GrpcStatus(0);\nGrpcStatus.Cancelled = new GrpcStatus(1);\nGrpcStatus.Unknown = new GrpcStatus(2);\nGrpcStatus.InvalidArgument = new GrpcStatus(3);\nGrpcStatus.DeadlineExceeded = new GrpcStatus(4);\nGrpcStatus.NotFound = new GrpcStatus(5);\nGrpcStatus.AlreadyExists = new GrpcStatus(6);\nGrpcStatus.PermissionDenied = new GrpcStatus(7);\nGrpcStatus.Unauthenticated = new GrpcStatus(16);\nGrpcStatus.ResourceExhausted = new GrpcStatus(8);\nGrpcStatus.FailedPrecondition = new GrpcStatus(9);\nGrpcStatus.Aborted = new GrpcStatus(10);\nGrpcStatus.OutOfRange = new GrpcStatus(11);\nGrpcStatus.Unimplemented = new GrpcStatus(12);\nGrpcStatus.Internal = new GrpcStatus(13);\nGrpcStatus.Unavailable = new GrpcStatus(14);\nGrpcStatus.DataLoss = new GrpcStatus(15);\n","import Long from \"long\";\n\nexport default class ExchangeRate {\n /**\n * @private\n * @param {object} props\n * @param {number} props.hbars\n * @param {number} props.cents\n * @param {Date} props.expirationTime\n */\n constructor(props) {\n /**\n * Denotes Hbar equivalent to cents (USD)\n *\n * @readonly\n * @type {number}\n */\n this.hbars = props.hbars;\n\n /**\n * Denotes cents (USD) equivalent to Hbar\n *\n * @readonly\n * @type {number}\n */\n this.cents = props.cents;\n\n /**\n * Expiration time of this exchange rate\n *\n * @readonly\n * @type {Date}\n */\n this.expirationTime = props.expirationTime;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {import(\"@hashgraph/proto\").IExchangeRate} rate\n * @returns {ExchangeRate}\n */\n static _fromProtobuf(rate) {\n return new ExchangeRate({\n hbars: /** @type {number} */ (rate.hbarEquiv),\n cents: /** @type {number} */ (rate.centEquiv),\n expirationTime: new Date(\n rate.expirationTime != null\n ? rate.expirationTime.seconds != null\n ? rate.expirationTime.seconds instanceof Long\n ? rate.expirationTime.seconds.toInt()\n : rate.expirationTime.seconds\n : 0 * 1000\n : 0 * 1000\n ),\n });\n }\n\n /**\n * @internal\n * @returns {import(\"@hashgraph/proto\").IExchangeRate}\n */\n _toProtobuf() {\n return {\n hbarEquiv: this.hbars,\n centEquiv: this.cents,\n expirationTime: {\n seconds: Long.fromNumber(this.expirationTime.getSeconds()),\n },\n };\n }\n}\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport TransactionRecord from \"./TransactionRecord.js\";\nimport TransactionReceipt from \"./TransactionReceipt.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport Status from \"../Status.js\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport ReceiptStatusError from \"../ReceiptStatusError.js\";\nimport { ExecutionState } from \"../Executable.js\";\nimport { ResponseType, ResponseCodeEnum } from \"@hashgraph/proto\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").ITransactionRecord} proto.ITransactionRecord\n * @typedef {import(\"@hashgraph/proto\").ITransactionReceipt} proto.ITransactionReceipt\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetRecordResponse} proto.ITransactionGetRecordResponse\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetRecordQuery} proto.ITransactionGetRecordQuery\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * @augments {Query}\n */\nexport default class TransactionRecordQuery extends Query {\n /**\n * @param {object} [props]\n * @param {TransactionId} [props.transactionId]\n * @param {boolean} [props.includeChildren]\n * @param {boolean} [props.includeDuplicates]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TransactionId}\n */\n this._transactionId = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeChildren = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeDuplicates = null;\n\n if (props.transactionId != null) {\n this.setTransactionId(props.transactionId);\n }\n\n if (props.includeChildren != null) {\n this.setIncludeChildren(props.includeChildren);\n }\n\n if (props.includeDuplicates != null) {\n this.setIncludeDuplicates(props.includeDuplicates);\n }\n }\n\n /**\n * @returns {?TransactionId}\n */\n get transactionId() {\n return this._transactionId;\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {TransactionRecordQuery}\n */\n static _fromProtobuf(query) {\n const record = /** @type {proto.ITransactionGetRecordQuery} */ (\n query.transactionGetRecord\n );\n\n return new TransactionRecordQuery({\n transactionId: record.transactionID\n ? TransactionId._fromProtobuf(record.transactionID)\n : undefined,\n includeChildren:\n record.includeChildRecords != null\n ? record.includeChildRecords\n : undefined,\n includeDuplicates:\n record.includeDuplicates != null\n ? record.includeDuplicates\n : undefined,\n });\n }\n\n /**\n * Set the transaction ID for which the record is being requested.\n *\n * @param {TransactionId | string} transactionId\n * @returns {TransactionRecordQuery}\n */\n setTransactionId(transactionId) {\n this._transactionId =\n typeof transactionId === \"string\"\n ? TransactionId.fromString(transactionId)\n : transactionId.clone();\n\n return this;\n }\n\n /**\n * @param {boolean} includeChildren\n * @returns {TransactionRecordQuery}\n */\n setIncludeChildren(includeChildren) {\n this._includeChildren = includeChildren;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeChildren() {\n return this._includeChildren != null ? this._includeChildren : false;\n }\n\n /**\n * @param {boolean} includeDuplicates\n * @returns {TransactionRecordQuery}\n */\n setIncludeDuplicates(includeDuplicates) {\n this._duplicates = includeDuplicates;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeDuplicates() {\n return this._duplicates != null ? this._duplicates : false;\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {ExecutionState}\n */\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n case Status.RecordNotFound:\n return ExecutionState.Retry;\n\n case Status.Ok:\n break;\n\n default:\n return ExecutionState.Error;\n }\n\n const transactionGetRecord =\n /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n const header = /** @type {proto.IResponseHeader} */ (\n transactionGetRecord.header\n );\n\n if (header.responseType === ResponseType.COST_ANSWER) {\n return ExecutionState.Finished;\n }\n\n const record = /** @type {proto.ITransactionRecord} */ (\n transactionGetRecord.transactionRecord\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n record.receipt\n );\n const receiptStatusCode = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n status = Status._fromCode(receiptStatusCode);\n\n switch (status) {\n case Status.Ok:\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n case Status.RecordNotFound:\n return ExecutionState.Retry;\n\n case Status.Success:\n return ExecutionState.Finished;\n\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Ok:\n // Do nothing\n break;\n\n default:\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n const transactionGetRecord =\n /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n const record = /** @type {proto.ITransactionRecord} */ (\n transactionGetRecord.transactionRecord\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n record.receipt\n );\n const receiptStatusError = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n\n status = Status._fromCode(receiptStatusError);\n\n return new ReceiptStatusError({\n status,\n transactionId: this._getTransactionId(),\n transactionReceipt: TransactionReceipt._fromProtobuf({ receipt }),\n });\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (\n this._transactionId != null &&\n this._transactionId.accountId != null\n ) {\n this._transactionId.accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.getTxRecordByTxID(request);\n }\n\n /**\n * @override\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const transactionGetRecord =\n /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n return /** @type {proto.IResponseHeader} */ (\n transactionGetRecord.header\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const record = /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n\n return Promise.resolve(TransactionRecord._fromProtobuf(record));\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n transactionGetRecord: {\n header,\n transactionID:\n this._transactionId != null\n ? this._transactionId._toProtobuf()\n : null,\n includeChildRecords: this._includeChildren,\n includeDuplicates: this._includeDuplicates,\n },\n };\n }\n}\n\nQUERY_REGISTRY.set(\n \"transactionGetRecord\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TransactionRecordQuery._fromProtobuf\n);\n","import ContractId from \"./ContractId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IContractLoginfo} proto.IContractLoginfo\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n */\n\n/**\n * The log information for an event returned by a smart contract function call. One function call\n * may return several such events.\n */\nexport default class ContractLogInfo {\n /**\n * @param {object} props\n * @param {ContractId} props.contractId\n * @param {Uint8Array} props.bloom\n * @param {Uint8Array[]} props.topics\n * @param {Uint8Array} props.data\n */\n constructor(props) {\n /**\n * Address of a contract that emitted the event.\n *\n * @readonly\n */\n this.contractId = props.contractId;\n\n /**\n * Bloom filter for a particular log.\n *\n * @readonly\n */\n this.bloom = props.bloom;\n\n /**\n * Topics of a particular event.\n *\n * @readonly\n */\n this.topics = props.topics;\n\n /**\n * Event data.\n *\n * @readonly\n */\n this.data = props.data;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IContractLoginfo} info\n * @returns {ContractLogInfo}\n */\n static _fromProtobuf(info) {\n return new ContractLogInfo({\n contractId: ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (info.contractID)\n ),\n bloom: info.bloom != null ? info.bloom : new Uint8Array(),\n topics: info.topic != null ? info.topic : [],\n data: info.data != null ? info.data : new Uint8Array(),\n });\n }\n\n /**\n * @internal\n * @returns {proto.IContractLoginfo}\n */\n _toProtobuf() {\n return {\n contractID: this.contractId._toProtobuf(),\n bloom: this.bloom,\n topic: this.topics,\n data: this.data,\n };\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport TokenTransferAccountMap from \"./TokenTransferAccountMap.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenTransferList} proto.ITokenTransferList\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenTransferMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n\n /**\n * @internal\n * @param {TokenId} tokenId\n * @param {AccountId} accountId\n * @param {Long} amount\n */\n __set(tokenId, accountId, amount) {\n const token = tokenId.toString();\n\n let _map = this._map.get(token);\n if (_map == null) {\n _map = new TokenTransferAccountMap();\n this._map.set(token, _map);\n this.__map.set(tokenId, _map);\n }\n\n _map._set(accountId, amount);\n }\n\n /**\n * @param {proto.ITokenTransferList[]} transfers\n * @returns {TokenTransferMap}\n */\n static _fromProtobuf(transfers) {\n const tokenTransfersMap = new TokenTransferMap();\n\n for (const transfer of transfers) {\n const token = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (transfer.token)\n );\n\n for (const aa of transfer.transfers != null\n ? transfer.transfers\n : []) {\n const account = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (aa.accountID)\n );\n\n tokenTransfersMap.__set(\n token,\n account,\n /** @type {Long} */ (aa.amount)\n );\n }\n }\n\n return tokenTransfersMap;\n }\n\n /**\n * @returns {proto.ITokenTransferList[]}\n */\n _toProtobuf() {\n /** @type {proto.ITokenTransferList[]} */\n const tokenTransferList = [];\n\n for (const [tokenId, value] of this) {\n /** @type {proto.IAccountAmount[]} */\n const transfers = [];\n\n for (const [accountId, amount] of value) {\n transfers.push({\n accountID: accountId._toProtobuf(),\n amount: amount,\n });\n }\n\n tokenTransferList.push({\n token: tokenId._toProtobuf(),\n transfers: transfers,\n });\n }\n\n return tokenTransferList;\n }\n}\n","import AccountId from \"../account/AccountId.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenTransferAccountMap extends ObjectMap {\n constructor() {\n super((s) => AccountId.fromString(s));\n }\n}\n","import Long from \"long\";\nimport TokenId from \"../token/TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenTransferList} proto.ITokenTransferList\n * @typedef {import(\"@hashgraph/proto\").INftTransfer} proto.INftTransfer\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {object} NftTransfer\n * @property {AccountId} sender\n * @property {AccountId} recipient\n * @property {Long} serial\n * @property {boolean} isApproved\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenNftTransferMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n\n /**\n * @internal\n * @param {TokenId} tokenId\n * @param {NftTransfer} nftTransfer\n */\n __set(tokenId, nftTransfer) {\n const token = tokenId.toString();\n\n let _map = this._map.get(token);\n if (_map == null) {\n _map = [];\n this._map.set(token, _map);\n this.__map.set(tokenId, _map);\n }\n\n _map.push(nftTransfer);\n }\n\n /**\n * @param {proto.ITokenTransferList[]} transfers\n * @returns {TokenNftTransferMap}\n */\n static _fromProtobuf(transfers) {\n const tokenTransfersMap = new TokenNftTransferMap();\n\n for (const transfer of transfers) {\n const token = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (transfer.token)\n );\n\n for (const aa of transfer.nftTransfers != null\n ? transfer.nftTransfers\n : []) {\n const sender = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (aa.senderAccountID)\n );\n const recipient = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (aa.receiverAccountID)\n );\n\n tokenTransfersMap.__set(token, {\n sender,\n recipient,\n serial: Long.fromValue(\n /** @type {Long} */ (aa.serialNumber)\n ),\n isApproved: false,\n });\n }\n }\n\n return tokenTransfersMap;\n }\n\n /**\n * @returns {proto.ITokenTransferList[]}\n */\n _toProtobuf() {\n /** @type {proto.ITokenTransferList[]} */\n const tokenTransferList = [];\n\n for (const [tokenId, value] of this) {\n /** @type {proto.INftTransfer[]} */\n const transfers = [];\n\n for (const transfer of value) {\n transfers.push({\n senderAccountID: transfer.sender._toProtobuf(),\n receiverAccountID: transfer.recipient._toProtobuf(),\n serialNumber: transfer.serial,\n });\n }\n\n tokenTransferList.push({\n token: tokenId._toProtobuf(),\n nftTransfers: transfers,\n });\n }\n\n return tokenTransferList;\n }\n}\n","import TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IAssessedCustomFee} proto.IAssessedCustomFee\n */\n\nexport default class AssessedCustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {TokenId | string} [props.tokenId]\n * @param {Long | number} [props.amount]\n * @param {AccountId[]} [props.payerAccountIds]\n */\n constructor(props = {}) {\n /**\n * @type {?AccountId}\n */\n this._feeCollectorAccountId;\n\n if (props.feeCollectorAccountId != null) {\n this.setFeeCollectorAccountId(props.feeCollectorAccountId);\n }\n\n /**\n * @type {?TokenId}\n */\n this._tokenId;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n /**\n * @type {?Long}\n */\n this._amount;\n\n if (props.amount != null) {\n this.setAmount(props.amount);\n }\n\n /**\n * @type {?AccountId[]}\n */\n this._payerAccountIds;\n\n if (props.payerAccountIds != null) {\n this.setPayerAccountIds(props.payerAccountIds);\n }\n }\n\n /**\n * @returns {?AccountId}\n */\n get feeCollectorAccountId() {\n return this._feeCollectorAccountId;\n }\n\n /**\n * @param {AccountId | string} feeCollectorAccountId\n * @returns {this}\n */\n setFeeCollectorAccountId(feeCollectorAccountId) {\n this._feeCollectorAccountId =\n typeof feeCollectorAccountId === \"string\"\n ? AccountId.fromString(feeCollectorAccountId)\n : feeCollectorAccountId;\n return this;\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._tokenId =\n typeof tokenId === \"string\" ? TokenId.fromString(tokenId) : tokenId;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get amount() {\n return this._amount;\n }\n\n /**\n * @param {Long | number} amount\n * @returns {AssessedCustomFee}\n */\n setAmount(amount) {\n this._amount =\n typeof amount === \"number\" ? Long.fromNumber(amount) : amount;\n return this;\n }\n\n /**\n * @returns {?AccountId[]}\n */\n get payerAccountIds() {\n return this._payerAccountIds;\n }\n\n /**\n * @param {AccountId[]} payerAccountIds\n * @returns {AssessedCustomFee}\n */\n setPayerAccountIds(payerAccountIds) {\n this._payerAccountIds = payerAccountIds;\n return this;\n }\n\n /**\n * @internal\n * @param {proto.IAssessedCustomFee} fee\n * @returns {AssessedCustomFee}\n */\n static _fromProtobuf(fee) {\n return new AssessedCustomFee({\n feeCollectorAccountId:\n fee.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(fee.feeCollectorAccountId)\n : undefined,\n tokenId:\n fee.tokenId != null\n ? TokenId._fromProtobuf(fee.tokenId)\n : undefined,\n amount: fee.amount != null ? fee.amount : undefined,\n payerAccountIds:\n fee.effectivePayerAccountId != null\n ? fee.effectivePayerAccountId.map((id) =>\n AccountId._fromProtobuf(id)\n )\n : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.IAssessedCustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n tokenId: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n amount: this._amount,\n effectivePayerAccountId:\n this._payerAccountIds != null\n ? this._payerAccountIds.map((id) => id._toProtobuf())\n : null,\n };\n }\n}\n","import Long from \"long\";\nimport AccountId from \"../account/AccountId.js\";\nimport TokenId from \"./TokenId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenTransferList} proto.ITokenTransferList\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n */\n\n/**\n * An account, and the amount that it sends or receives during a cryptocurrency tokentransfer.\n */\nexport default class TokenTransfer {\n /**\n * @internal\n * @param {object} props\n * @param {TokenId | string} props.tokenId\n * @param {AccountId | string} props.accountId\n * @param {number | null} props.expectedDecimals\n * @param {Long | number} props.amount\n * @param {boolean} props.isApproved\n */\n constructor(props) {\n /**\n * The Token ID that sends or receives cryptocurrency.\n *\n * @readonly\n */\n this.tokenId =\n props.tokenId instanceof TokenId\n ? props.tokenId\n : TokenId.fromString(props.tokenId);\n\n /**\n * The Account ID that sends or receives cryptocurrency.\n *\n * @readonly\n */\n this.accountId =\n props.accountId instanceof AccountId\n ? props.accountId\n : AccountId.fromString(props.accountId);\n\n this.expectedDecimals = props.expectedDecimals;\n this.amount = Long.fromValue(props.amount);\n this.isApproved = props.isApproved;\n }\n\n /**\n * @internal\n * @param {proto.ITokenTransferList[]} tokenTransfers\n * @returns {TokenTransfer[]}\n */\n static _fromProtobuf(tokenTransfers) {\n const transfers = [];\n\n for (const tokenTransfer of tokenTransfers) {\n const tokenId = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (tokenTransfer.token)\n );\n const expectedDecimals =\n tokenTransfer.expectedDecimals != null\n ? /** @type {number | null } */ (\n tokenTransfer.expectedDecimals.value\n )\n : null;\n\n for (const transfer of tokenTransfer.transfers != null\n ? tokenTransfer.transfers\n : []) {\n transfers.push(\n new TokenTransfer({\n tokenId,\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (transfer.accountID)\n ),\n expectedDecimals,\n amount:\n transfer.amount != null\n ? transfer.amount\n : Long.ZERO,\n isApproved: transfer.isApproval == true,\n })\n );\n }\n }\n\n return transfers;\n }\n\n /**\n * @internal\n * @returns {proto.IAccountAmount}\n */\n _toProtobuf() {\n return {\n accountID: this.accountId._toProtobuf(),\n amount: this.amount,\n isApproval: this.isApproved,\n };\n }\n}\n","/**\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function digest(data) {\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/digest\n return new Uint8Array(await window.crypto.subtle.digest(\"SHA-384\", data));\n}\n","import Long from \"long\";\nimport Hbar from \"../Hbar.js\";\nimport TokenId from \"../token/TokenId.js\";\nimport TokenBalanceMap from \"./TokenBalanceMap.js\";\nimport TokenDecimalMap from \"./TokenDecimalMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetAccountBalanceResponse} proto.ICryptoGetAccountBalanceResponse\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").ITokenBalance} proto.ITokenBalance\n */\n\n/**\n * @typedef {object} TokenBalanceJson\n * @property {string} tokenId\n * @property {string} balance\n * @property {number} decimals\n */\n\n/**\n * @typedef {object} AccountBalanceJson\n * @property {string} hbars\n * @property {TokenBalanceJson[]} tokens\n */\n\nexport default class AccountBalance {\n /**\n * @private\n * @param {object} props\n * @param {Hbar} props.hbars\n * @param {?TokenBalanceMap} props.tokens\n * @param {?TokenDecimalMap} props.tokenDecimals\n */\n constructor(props) {\n /**\n * The account ID for which this balancermation applies.\n *\n * @readonly\n */\n this.hbars = props.hbars;\n\n /** @readonly */\n this.tokens = props.tokens;\n\n /** @readonly */\n this.tokenDecimals = props.tokenDecimals;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ICryptoGetAccountBalanceResponse} accountBalance\n * @returns {AccountBalance}\n */\n static _fromProtobuf(accountBalance) {\n const tokenBalances = new TokenBalanceMap();\n const tokenDecimals = new TokenDecimalMap();\n\n if (accountBalance.tokenBalances != null) {\n for (const balance of accountBalance.tokenBalances) {\n const tokenId = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (balance.tokenId)\n );\n\n tokenDecimals._set(\n tokenId,\n balance.decimals != null ? balance.decimals : 0\n );\n tokenBalances._set(\n tokenId,\n Long.fromValue(/** @type {Long} */ (balance.balance))\n );\n }\n }\n\n return new AccountBalance({\n hbars: Hbar.fromTinybars(\n /** @type {Long} */ (accountBalance.balance)\n ),\n tokens: tokenBalances,\n tokenDecimals,\n });\n }\n\n /**\n * @returns {proto.ICryptoGetAccountBalanceResponse}\n */\n _toProtobuf() {\n /** @type {proto.ITokenBalance[]} */\n const list = [];\n\n for (const [key, value] of this.tokens != null ? this.tokens : []) {\n list.push({\n tokenId: key._toProtobuf(),\n balance: value,\n decimals:\n this.tokenDecimals != null\n ? this.tokenDecimals.get(key)\n : null,\n });\n }\n\n return {\n balance: this.hbars.toTinybars(),\n tokenBalances: list,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this.toJSON());\n }\n\n /**\n * @returns {AccountBalanceJson}\n */\n toJSON() {\n const tokens = [];\n for (const [key, value] of this.tokens != null ? this.tokens : []) {\n const decimals =\n this.tokenDecimals != null ? this.tokenDecimals.get(key) : null;\n\n tokens.push({\n tokenId: key.toString(),\n balance: value.toString(),\n decimals: decimals != null ? decimals : 0,\n });\n }\n\n return {\n hbars: this.hbars.toString(),\n tokens,\n };\n }\n}\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport AccountId from \"./AccountId.js\";\nimport ContractId from \"../contract/ContractId.js\";\nimport AccountBalance from \"./AccountBalance.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetAccountBalanceQuery} proto.ICryptoGetAccountBalanceQuery\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetAccountBalanceResponse} proto.ICryptoGetAccountBalanceResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * Get the balance of a Hedera™ crypto-currency account.\n *\n * This returns only the balance, so its a smaller and faster reply\n * than AccountInfoQuery.\n *\n * This query is free.\n *\n * @augments {Query}\n */\nexport default class AccountBalanceQuery extends Query {\n /**\n * @param {object} [props]\n * @param {AccountId | string} [props.accountId]\n * @param {ContractId | string} [props.contractId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @type {?AccountId}\n * @private\n */\n this._accountId = null;\n\n /**\n * @type {?ContractId}\n * @private\n */\n this._contractId = null;\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n\n if (props.contractId != null) {\n this.setContractId(props.contractId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {AccountBalanceQuery}\n */\n static _fromProtobuf(query) {\n const balance = /** @type {proto.ICryptoGetAccountBalanceQuery} */ (\n query.cryptogetAccountBalance\n );\n\n return new AccountBalanceQuery({\n accountId:\n balance.accountID != null\n ? AccountId._fromProtobuf(balance.accountID)\n : undefined,\n contractId:\n balance.contractID != null\n ? ContractId._fromProtobuf(balance.contractID)\n : undefined,\n });\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * Set the account ID for which the balance is being requested.\n *\n * This is mutually exclusive with `setContractId`.\n *\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @returns {?ContractId}\n */\n get contractId() {\n return this._contractId;\n }\n\n /**\n * Set the contract ID for which the balance is being requested.\n *\n * This is mutually exclusive with `setAccountId`.\n *\n * @param {ContractId | string} contractId\n * @returns {this}\n */\n setContractId(contractId) {\n this._contractId =\n typeof contractId === \"string\"\n ? ContractId.fromString(contractId)\n : contractId.clone();\n\n return this;\n }\n\n /**\n * @protected\n * @override\n * @returns {boolean}\n */\n _isPaymentRequired() {\n return false;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n\n if (this._contractId != null) {\n this._contractId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.cryptoGetBalance(request);\n }\n\n /**\n * @override\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const cryptogetAccountBalance =\n /** @type {proto.ICryptoGetAccountBalanceResponse} */ (\n response.cryptogetAccountBalance\n );\n return /** @type {proto.IResponseHeader} */ (\n cryptogetAccountBalance.header\n );\n }\n\n /**\n * @override\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const cryptogetAccountBalance =\n /** @type {proto.ICryptoGetAccountBalanceResponse} */ (\n response.cryptogetAccountBalance\n );\n return Promise.resolve(\n AccountBalance._fromProtobuf(cryptogetAccountBalance)\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n cryptogetAccountBalance: {\n header,\n accountID:\n this._accountId != null\n ? this._accountId._toProtobuf()\n : null,\n contractID:\n this._contractId != null\n ? this._contractId._toProtobuf()\n : null,\n },\n };\n }\n}\n\nQUERY_REGISTRY.set(\n \"cryptogetAccountBalance\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n AccountBalanceQuery._fromProtobuf\n);\n","import AccountId from \"./AccountId.js\";\nimport LiveHash from \"./LiveHash.js\";\nimport Hbar from \"../Hbar.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport TokenRelationshipMap from \"./TokenRelationshipMap.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Duration from \"../Duration.js\";\nimport Key from \"../Key.js\";\nimport PublicKey from \"../PublicKey.js\";\nimport LedgerId from \"../LedgerId.js\";\nimport HbarAllowance from \"./HbarAllowance.js\";\nimport TokenAllowance from \"./TokenAllowance.js\";\nimport TokenNftAllowance from \"./TokenNftAllowance.js\";\n\n/**\n * Current information about an account, including the balance.\n */\nexport default class AccountInfo {\n /**\n * @private\n * @param {object} props\n * @param {AccountId} props.accountId\n * @param {?string} props.contractAccountId\n * @param {boolean} props.isDeleted\n * @param {?AccountId} props.proxyAccountId\n * @param {Hbar} props.proxyReceived\n * @param {Key} props.key\n * @param {Hbar} props.balance\n * @param {Hbar} props.sendRecordThreshold\n * @param {Hbar} props.receiveRecordThreshold\n * @param {boolean} props.isReceiverSignatureRequired\n * @param {Timestamp} props.expirationTime\n * @param {Duration} props.autoRenewPeriod\n * @param {LiveHash[]} props.liveHashes\n * @param {TokenRelationshipMap} props.tokenRelationships\n * @param {string} props.accountMemo\n * @param {Long} props.ownedNfts\n * @param {Long} props.maxAutomaticTokenAssociations\n * @param {PublicKey | null} props.aliasKey\n * @param {LedgerId | null} props.ledgerId\n * @param {HbarAllowance[]} props.hbarAllowances\n * @param {TokenAllowance[]} props.tokenAllowances\n * @param {TokenNftAllowance[]} props.nftAllowances\n */\n constructor(props) {\n /**\n * The account ID for which this information applies.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * The Contract Account ID comprising of both the contract instance and the cryptocurrency\n * account owned by the contract instance, in the format used by Solidity.\n *\n * @readonly\n */\n this.contractAccountId = props.contractAccountId;\n\n /**\n * If true, then this account has been deleted, it will disappear when it expires, and\n * all transactions for it will fail except the transaction to extend its expiration date.\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * The Account ID of the account to which this is proxy staked. If proxyAccountID is null,\n * or is an invalid account, or is an account that isn't a node, then this account is\n * automatically proxy staked to a node chosen by the network, but without earning payments.\n * If the proxyAccountID account refuses to accept proxy staking , or if it is not currently\n * running a node, then it will behave as if proxyAccountID was null.\n *\n * @readonly\n */\n this.proxyAccountId = props.proxyAccountId;\n\n /**\n * The total number of tinybars proxy staked to this account.\n *\n * @readonly\n */\n this.proxyReceived = props.proxyReceived;\n\n /**\n * The key for the account, which must sign in order to transfer out, or to modify the account\n * in any way other than extending its expiration date.\n *\n * @readonly\n */\n this.key = props.key;\n\n /**\n * The current balance of account.\n *\n * @readonly\n */\n this.balance = props.balance;\n\n /**\n * The threshold amount (in tinybars) for which an account record is created (and this account\n * charged for them) for any send/withdraw transaction.\n *\n * @readonly\n */\n this.sendRecordThreshold = props.sendRecordThreshold;\n\n /**\n * The threshold amount (in tinybars) for which an account record is created\n * (and this account charged for them) for any transaction above this amount.\n *\n * @readonly\n */\n this.receiveRecordThreshold = props.receiveRecordThreshold;\n\n /**\n * If true, no transaction can transfer to this account unless signed by this account's key.\n *\n * @readonly\n */\n this.isReceiverSignatureRequired = props.isReceiverSignatureRequired;\n\n /**\n * The TimeStamp time at which this account is set to expire.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * The duration for expiration time will extend every this many seconds. If there are\n * insufficient funds, then it extends as long as possible. If it is empty when it\n * expires, then it is deleted.\n *\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /** @readonly */\n this.liveHashes = props.liveHashes;\n\n /** @readonly */\n this.tokenRelationships = props.tokenRelationships;\n\n /** @readonly */\n this.accountMemo = props.accountMemo;\n\n /** @readonly */\n this.ownedNfts = props.ownedNfts;\n\n /** @readonly */\n this.maxAutomaticTokenAssociations =\n props.maxAutomaticTokenAssociations;\n\n this.aliasKey = props.aliasKey;\n\n this.ledgerId = props.ledgerId;\n\n this.hbarAllowances = props.hbarAllowances;\n\n this.tokenAllowances = props.tokenAllowances;\n\n this.nftAllowances = props.nftAllowances;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IAccountInfo} info\n * @returns {AccountInfo}\n */\n static _fromProtobuf(info) {\n let aliasKey =\n info.alias != null && info.alias.length > 0\n ? Key._fromProtobufKey(proto.Key.decode(info.alias))\n : null;\n\n if (!(aliasKey instanceof PublicKey)) {\n aliasKey = null;\n }\n\n return new AccountInfo({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.accountID)\n ),\n contractAccountId:\n info.contractAccountID != null ? info.contractAccountID : null,\n isDeleted: info.deleted != null ? info.deleted : false,\n key: Key._fromProtobufKey(/** @type {proto.IKey} */ (info.key)),\n balance: Hbar.fromTinybars(info.balance != null ? info.balance : 0),\n sendRecordThreshold: Hbar.fromTinybars(\n info.generateSendRecordThreshold != null\n ? info.generateSendRecordThreshold\n : 0\n ),\n receiveRecordThreshold: Hbar.fromTinybars(\n info.generateReceiveRecordThreshold != null\n ? info.generateReceiveRecordThreshold\n : 0\n ),\n isReceiverSignatureRequired:\n info.receiverSigRequired != null\n ? info.receiverSigRequired\n : false,\n expirationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n ),\n autoRenewPeriod:\n info.autoRenewPeriod != null\n ? new Duration(\n /** @type {Long} */ (info.autoRenewPeriod.seconds)\n )\n : new Duration(0),\n proxyAccountId:\n info.proxyAccountID != null &&\n Long.fromValue(\n /** @type {Long | number} */ (info.proxyAccountID.shardNum)\n ).toInt() !== 0 &&\n Long.fromValue(\n /** @type {Long | number} */ (info.proxyAccountID.realmNum)\n ).toInt() !== 0 &&\n Long.fromValue(\n /** @type {Long | number} */ (\n info.proxyAccountID.accountNum\n )\n ).toInt() !== 0\n ? AccountId._fromProtobuf(info.proxyAccountID)\n : null,\n proxyReceived: Hbar.fromTinybars(\n info.proxyReceived != null ? info.proxyReceived : 0\n ),\n liveHashes: (info.liveHashes != null ? info.liveHashes : []).map(\n (hash) => LiveHash._fromProtobuf(hash)\n ),\n tokenRelationships: TokenRelationshipMap._fromProtobuf(\n info.tokenRelationships != null ? info.tokenRelationships : []\n ),\n accountMemo: info.memo != null ? info.memo : \"\",\n ownedNfts: info.ownedNfts ? info.ownedNfts : Long.ZERO,\n maxAutomaticTokenAssociations: info.maxAutomaticTokenAssociations\n ? Long.fromNumber(info.maxAutomaticTokenAssociations)\n : Long.ZERO,\n aliasKey,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n\n hbarAllowances: (info.cryptoAllowances != null\n ? info.cryptoAllowances\n : []\n ).map((allowance) => HbarAllowance._fromProtobuf(allowance)),\n tokenAllowances: (info.tokenAllowances != null\n ? info.tokenAllowances\n : []\n ).map((allowance) => TokenAllowance._fromProtobuf(allowance)),\n nftAllowances: (info.nftAllowances != null\n ? info.nftAllowances\n : []\n ).map((allowance) => TokenNftAllowance._fromProtobuf(allowance)),\n });\n }\n\n /**\n * @returns {proto.IAccountInfo}\n */\n _toProtobuf() {\n return {\n accountID: this.accountId._toProtobuf(),\n contractAccountID: this.contractAccountId,\n deleted: this.isDeleted,\n proxyAccountID:\n this.proxyAccountId != null\n ? this.proxyAccountId._toProtobuf()\n : null,\n proxyReceived: this.proxyReceived.toTinybars(),\n key: this.key._toProtobufKey(),\n balance: this.balance.toTinybars(),\n generateSendRecordThreshold: this.sendRecordThreshold.toTinybars(),\n generateReceiveRecordThreshold:\n this.receiveRecordThreshold.toTinybars(),\n receiverSigRequired: this.isReceiverSignatureRequired,\n expirationTime: this.expirationTime._toProtobuf(),\n autoRenewPeriod: this.autoRenewPeriod._toProtobuf(),\n liveHashes: this.liveHashes.map((hash) => hash._toProtobuf()),\n tokenRelationships:\n this.tokenRelationships != null\n ? this.tokenRelationships._toProtobuf()\n : null,\n memo: this.accountMemo,\n ownedNfts: this.ownedNfts,\n maxAutomaticTokenAssociations:\n this.maxAutomaticTokenAssociations.toInt(),\n alias:\n this.aliasKey != null\n ? proto.Key.encode(this.aliasKey._toProtobufKey()).finish()\n : null,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {AccountInfo}\n */\n static fromBytes(bytes) {\n return AccountInfo._fromProtobuf(\n proto.CryptoGetInfoResponse.AccountInfo.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.CryptoGetInfoResponse.AccountInfo.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport TokenRelationship from \"./TokenRelationship.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenRelationship} proto.ITokenRelationship\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"long\")} Long\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenRelationshipMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n\n /**\n * @param {proto.ITokenRelationship[]} relationships\n * @returns {TokenRelationshipMap}\n */\n static _fromProtobuf(relationships) {\n const tokenRelationships = new TokenRelationshipMap();\n\n for (const relationship of relationships) {\n const tokenId = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (relationship.tokenId)\n );\n\n tokenRelationships._set(\n tokenId,\n TokenRelationship._fromProtobuf(relationship)\n );\n }\n\n return tokenRelationships;\n }\n\n /**\n * @returns {proto.ITokenRelationship[]}\n */\n _toProtobuf() {\n const list = [];\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, relationship] of this) {\n list.push(relationship._toProtobuf());\n }\n\n return list;\n }\n}\n","import AccountId from \"./AccountId.js\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IProxyStaker} proto.IProxyStaker\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n */\n\n/**\n * An account, and the amount that it sends or receives during a cryptocurrency transfer.\n */\nexport default class ProxyStaker {\n /**\n * @private\n * @param {object} props\n * @param {AccountId} props.accountId\n * @param {number | string | Long | BigNumber | Hbar} props.amount\n */\n constructor(props) {\n /**\n * The Account ID that sends or receives cryptocurrency.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * The amount of tinybars that the account sends(negative)\n * or receives(positive).\n *\n * @readonly\n */\n this.amount =\n props.amount instanceof Hbar\n ? props.amount\n : new Hbar(props.amount);\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IProxyStaker} transfer\n * @returns {ProxyStaker}\n */\n static _fromProtobuf(transfer) {\n return new ProxyStaker({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (transfer.accountID)\n ),\n amount: Hbar.fromTinybars(\n transfer.amount != null ? transfer.amount : 0\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.IProxyStaker}\n */\n _toProtobuf() {\n return {\n accountID: this.accountId._toProtobuf(),\n amount: this.amount.toTinybars(),\n };\n }\n}\n","import AccountId from \"../account/AccountId.js\";\nimport Endpoint from \"./Endpoint.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").INodeAddress} proto.INodeAddress\n */\n\n/**\n * @typedef {import(\"./Endpoint.js\").EndPointJson} EndpointJson\n * @typedef {import(\"long\").Long} Long\n */\n\n/**\n * @typedef {object} NodeAddressJson\n * @property {string | null} publicKey\n * @property {string | null} nodeId\n * @property {string | null} accountId\n * @property {string | null} certHash\n * @property {EndpointJson[] | null} addresses\n * @property {string | null} description\n * @property {string | null} stake\n */\n\nexport default class NodeAddress {\n /**\n * @param {object} props\n * @param {string} [props.publicKey]\n * @param {Long} [props.nodeId]\n * @param {AccountId | string} [props.accountId]\n * @param {Uint8Array} [props.certHash]\n * @param {Endpoint[]} [props.addresses]\n * @param {string} [props.description]\n * @param {Long} [props.stake]\n */\n constructor(props = {}) {\n /**\n * @type {string | null}\n */\n this._publicKey = null;\n\n if (props.publicKey != null) {\n this.setPublicKey(props.publicKey);\n }\n\n /**\n * @type {Long |null}\n */\n this._nodeId = null;\n\n if (props.nodeId != null) {\n this.setNodeId(props.nodeId);\n }\n\n /**\n * @type {AccountId | null}\n */\n this._accountId = null;\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n\n /**\n * @type {Uint8Array | null}\n */\n this._certHash = null;\n\n if (props.certHash != null) {\n this.setCertHash(props.certHash);\n }\n\n /**\n * @type {Endpoint[]}\n */\n this._addresses = [];\n\n if (props.addresses != null) {\n this.setAddresses(props.addresses);\n }\n\n /**\n * @type {string | null}\n */\n this._description = null;\n\n if (props.description != null) {\n this.setDescription(props.description);\n }\n\n /**\n * @type {Long | null}\n */\n this._stake = null;\n\n if (props.stake != null) {\n this.setStake(props.stake);\n }\n }\n\n /**\n * @returns {?string}\n */\n get publicKey() {\n return this._publicKey;\n }\n\n /**\n * @param {string} publicKey\n * @returns {this}\n */\n setPublicKey(publicKey) {\n this._publicKey = publicKey;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get nodeId() {\n return this._nodeId;\n }\n\n /**\n * @param {Long} nodeId\n * @returns {this}\n */\n setNodeId(nodeId) {\n this._nodeId = nodeId;\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n return this;\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get certHash() {\n return this._certHash;\n }\n\n /**\n * @param {Uint8Array} certHash\n * @returns {this}\n */\n setCertHash(certHash) {\n this._certHash = certHash;\n return this;\n }\n\n /**\n * @returns {Endpoint[]}\n */\n get addresses() {\n return this._addresses;\n }\n\n /**\n * @param {Endpoint[]} addresses\n * @returns {this}\n */\n setAddresses(addresses) {\n this._addresses = addresses;\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get description() {\n return this._description;\n }\n\n /**\n * @param {string} description\n * @returns {this}\n */\n setDescription(description) {\n this._description = description;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get stake() {\n return this._stake;\n }\n\n /**\n * @param {Long} stake\n * @returns {this}\n */\n setStake(stake) {\n this._stake = stake;\n return this;\n }\n\n /**\n * @internal\n * @param {proto.INodeAddress} nodeAddress\n * @returns {NodeAddress}\n */\n static _fromProtobuf(nodeAddress) {\n return new NodeAddress({\n publicKey:\n nodeAddress.RSA_PubKey != null\n ? nodeAddress.RSA_PubKey\n : undefined,\n nodeId: nodeAddress.nodeId != null ? nodeAddress.nodeId : undefined,\n accountId:\n nodeAddress.nodeAccountId != null\n ? AccountId._fromProtobuf(nodeAddress.nodeAccountId)\n : undefined,\n certHash:\n nodeAddress.nodeCertHash != null\n ? nodeAddress.nodeCertHash\n : undefined,\n addresses:\n nodeAddress.serviceEndpoint != null\n ? nodeAddress.serviceEndpoint.map((address) =>\n Endpoint._fromProtobuf(address)\n )\n : undefined,\n description:\n nodeAddress.description != null\n ? nodeAddress.description\n : undefined,\n stake: nodeAddress.stake != null ? nodeAddress.stake : undefined,\n });\n }\n\n /**\n * @returns {proto.INodeAddress}\n */\n _toProtobuf() {\n return {\n RSA_PubKey: this._publicKey,\n nodeId: this._nodeId,\n nodeAccountId:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n nodeCertHash: this._certHash,\n serviceEndpoint: this._addresses.map((address) =>\n address._toProtobuf()\n ),\n description: this._description,\n stake: this._stake,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this.toJSON());\n }\n\n /**\n * @returns {NodeAddressJson}\n */\n toJSON() {\n return {\n publicKey: this._publicKey,\n nodeId: this._nodeId != null ? this._nodeId.toString() : null,\n accountId:\n this._accountId != null ? this._accountId.toString() : null,\n certHash:\n this._certHash != null ? utf8.decode(this._certHash) : null,\n addresses: this._addresses.map((address) => address.toJSON()),\n description: this._description,\n stake: this._stake != null ? this._stake.toString() : null,\n };\n }\n}\n","import NodeAddress from \"./NodeAddress.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").INodeAddressBook} proto.INodeAddressBook\n */\n\n/**\n * @typedef {import(\"./NodeAddress.js\").NodeAddressJson} NodeAddressJson\n */\n\n/**\n * @typedef {object} NodeAddressBookJson\n * @property {NodeAddressJson[]} nodeAddresses\n */\n\nexport default class NodeAddressBook {\n /**\n * @param {object} props\n * @param {NodeAddress[]} [props.nodeAddresses]\n */\n constructor(props = {}) {\n /**\n * @type {NodeAddress[]}\n */\n this._nodeAddresses = [];\n\n if (props.nodeAddresses != null) {\n this.setNodeAddresses(props.nodeAddresses);\n }\n }\n\n /**\n * @returns {NodeAddress[]}\n */\n get nodeAddresses() {\n return this._nodeAddresses;\n }\n\n /**\n * @param {NodeAddress[]} nodeAddresses\n * @returns {this}\n */\n setNodeAddresses(nodeAddresses) {\n this._nodeAddresses = nodeAddresses;\n return this;\n }\n\n /**\n * @internal\n * @param {proto.INodeAddressBook} nodeAddressBook\n * @returns {NodeAddressBook}\n */\n static _fromProtobuf(nodeAddressBook) {\n return new NodeAddressBook({\n nodeAddresses:\n nodeAddressBook.nodeAddress != null\n ? nodeAddressBook.nodeAddress.map((nodeAddress) =>\n NodeAddress._fromProtobuf(nodeAddress)\n )\n : undefined,\n });\n }\n\n /**\n * @returns {proto.INodeAddressBook}\n */\n _toProtobuf() {\n return {\n nodeAddress: this._nodeAddresses.map((nodeAddress) =>\n nodeAddress._toProtobuf()\n ),\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this.toJSON());\n }\n\n /**\n * @returns {NodeAddressBookJson}\n */\n toJSON() {\n return {\n nodeAddresses: this._nodeAddresses.map((nodeAddress) =>\n nodeAddress.toJSON()\n ),\n };\n }\n}\n","import { keccak256 } from \"../cryptography/keccak.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @enum {number}\n */\nexport const ArgumentType = {\n uint8: 0,\n int8: 1,\n uint16: 2,\n int16: 3,\n uint32: 4,\n int32: 5,\n uint64: 6,\n int64: 7,\n uint256: 8,\n int256: 9,\n string: 10,\n bool: 11,\n bytes: 12,\n bytes32: 13,\n address: 14,\n func: 15,\n};\n\n/**\n * @typedef {object} Argument\n * @property {boolean} dynamic\n * @property {Uint8Array} value\n */\n\n/**\n * @typedef {object} SolidityType\n * @property {ArgumentType} ty\n * @property {boolean} array\n */\n\nexport default class ContractFunctionSelector {\n /**\n * @param {string} [name]\n */\n constructor(name) {\n /**\n * @type {?string}\n */\n this.name = null;\n\n /**\n * @type {string}\n */\n this._params = \"\";\n\n /**\n * @type {SolidityType[]}\n */\n this._paramTypes = [];\n\n if (name != null) {\n this._name = name;\n }\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addString() {\n return this._addParam({ ty: ArgumentType.string, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addStringArray() {\n return this._addParam({ ty: ArgumentType.string, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytes() {\n return this._addParam({ ty: ArgumentType.bytes, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytes32() {\n return this._addParam({ ty: ArgumentType.bytes32, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytesArray() {\n return this._addParam({ ty: ArgumentType.bytes, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytes32Array() {\n return this._addParam({ ty: ArgumentType.bytes32, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt8() {\n return this._addParam({ ty: ArgumentType.int8, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt32() {\n return this._addParam({ ty: ArgumentType.int32, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt64() {\n return this._addParam({ ty: ArgumentType.int64, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt256() {\n return this._addParam({ ty: ArgumentType.int256, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt8Array() {\n return this._addParam({ ty: ArgumentType.int8, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt32Array() {\n return this._addParam({ ty: ArgumentType.int32, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt64Array() {\n return this._addParam({ ty: ArgumentType.int64, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt256Array() {\n return this._addParam({ ty: ArgumentType.int256, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint8() {\n return this._addParam({ ty: ArgumentType.uint8, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint32() {\n return this._addParam({ ty: ArgumentType.uint32, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint64() {\n return this._addParam({ ty: ArgumentType.uint64, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint256() {\n return this._addParam({ ty: ArgumentType.uint256, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint8Array() {\n return this._addParam({ ty: ArgumentType.uint8, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint32Array() {\n return this._addParam({ ty: ArgumentType.uint32, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint64Array() {\n return this._addParam({ ty: ArgumentType.uint64, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint256Array() {\n return this._addParam({ ty: ArgumentType.uint256, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBool() {\n return this._addParam({ ty: ArgumentType.bool, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addAddress() {\n return this._addParam({ ty: ArgumentType.address, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addAddressArray() {\n return this._addParam({ ty: ArgumentType.address, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addFunction() {\n return this._addParam({ ty: ArgumentType.func, array: false });\n }\n\n /**\n * @param {SolidityType} ty\n * @returns {ContractFunctionSelector}\n */\n _addParam(ty) {\n if (this._paramTypes.length > 0) {\n this._params += \",\";\n }\n\n this._params += solidityTypeToString(ty);\n this._paramTypes.push(ty);\n\n return this;\n }\n\n /**\n * @param {string} [name]\n * @returns {Uint8Array}\n */\n _build(name) {\n if (name != null) {\n this._name = name;\n } else if (this._name == null) {\n throw new Error(\"`name` required for ContractFunctionSelector\");\n }\n\n const func = hex.encode(utf8.encode(this.toString()));\n return hex.decode(keccak256(`0x${func}`)).slice(0, 4);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this._name != null ? this._name.toString() : \"\"}(${\n this._params\n })`;\n }\n}\n\n/**\n * @param {SolidityType} ty\n * @returns {string}\n */\nfunction solidityTypeToString(ty) {\n let s = \"\";\n switch (ty.ty) {\n case ArgumentType.uint8:\n s = \"uint8\";\n break;\n case ArgumentType.int8:\n s = \"int8\";\n break;\n case ArgumentType.uint16:\n s = \"uint16\";\n break;\n case ArgumentType.int16:\n s = \"int16\";\n break;\n case ArgumentType.uint32:\n s = \"uint32\";\n break;\n case ArgumentType.int32:\n s = \"int32\";\n break;\n case ArgumentType.uint64:\n s = \"uint64\";\n break;\n case ArgumentType.int64:\n s = \"int64\";\n break;\n case ArgumentType.uint256:\n s = \"uint256\";\n break;\n case ArgumentType.int256:\n s = \"int256\";\n break;\n case ArgumentType.string:\n s = \"string\";\n break;\n case ArgumentType.bool:\n s = \"bool\";\n break;\n case ArgumentType.bytes:\n s = \"bytes\";\n break;\n case ArgumentType.bytes32:\n s = \"bytes32\";\n break;\n case ArgumentType.address:\n s = \"address\";\n break;\n case ArgumentType.func:\n s = \"function\";\n break;\n default:\n s = \"\";\n break;\n }\n\n if (ty.array) {\n s += \"[]\";\n }\n\n return s;\n}\n","import ContractId from \"./ContractId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Duration from \"../Duration.js\";\nimport Hbar from \"../Hbar.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport TokenRelationshipMap from \"../account/TokenRelationshipMap.js\";\nimport Key from \"../Key.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * Response when the client sends the node CryptoGetInfoQuery.\n */\nexport default class ContractInfo {\n /**\n * @private\n * @param {object} props\n * @param {ContractId} props.contractId\n * @param {AccountId} props.accountId\n * @param {string} props.contractAccountId\n * @param {?Key} props.adminKey\n * @param {Timestamp} props.expirationTime\n * @param {Duration} props.autoRenewPeriod\n * @param {Long} props.storage\n * @param {string} props.contractMemo\n * @param {Hbar} props.balance\n * @param {boolean} props.isDeleted\n * @param {TokenRelationshipMap} props.tokenRelationships\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * ID of the contract instance, in the format used in transactions.\n *\n * @readonly\n */\n this.contractId = props.contractId;\n\n /**\n * ID of the cryptocurrency account owned by the contract instance,\n * in the format used in transactions.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * ID of both the contract instance and the cryptocurrency account owned by the contract\n * instance, in the format used by Solidity.\n *\n * @readonly\n */\n this.contractAccountId = props.contractAccountId;\n\n /**\n * The state of the instance and its fields can be modified arbitrarily if this key signs a\n * transaction to modify it. If this is null, then such modifications are not possible,\n * and there is no administrator that can override the normal operation of this smart\n * contract instance. Note that if it is created with no admin keys, then there is no\n * administrator to authorize changing the admin keys, so there can never be any admin keys\n * for that instance.\n *\n * @readonly\n */\n this.adminKey = props.adminKey != null ? props.adminKey : null;\n\n /**\n * The current time at which this contract instance (and its account) is set to expire.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * The expiration time will extend every this many seconds. If there are insufficient funds,\n * then it extends as long as possible. If the account is empty when it expires,\n * then it is deleted.\n *\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /**\n * Number of bytes of storage being used by this instance (which affects the cost to\n * extend the expiration time).\n *\n * @readonly\n */\n this.storage = props.storage;\n\n /**\n * The memo associated with the contract (max 100 bytes).\n *\n * @readonly\n */\n this.contractMemo = props.contractMemo;\n\n /**\n * The current balance of the contract.\n *\n * @readonly\n */\n this.balance = props.balance;\n\n /**\n * Whether the contract has been deleted\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * The tokens associated to the contract\n *\n * @readonly\n */\n this.tokenRelationships = props.tokenRelationships;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IContractInfo} info\n * @returns {ContractInfo}\n */\n static _fromProtobuf(info) {\n const autoRenewPeriod = /** @type {Long | number} */ (\n /** @type {proto.IDuration} */ (info.autoRenewPeriod).seconds\n );\n\n return new ContractInfo({\n contractId: ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (info.contractID)\n ),\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.accountID)\n ),\n contractAccountId:\n info.contractAccountID != null ? info.contractAccountID : \"\",\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n expirationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n ),\n autoRenewPeriod: new Duration(autoRenewPeriod),\n storage:\n info.storage != null\n ? info.storage instanceof Long\n ? info.storage\n : Long.fromValue(info.storage)\n : Long.ZERO,\n contractMemo: info.memo != null ? info.memo : \"\",\n balance: Hbar.fromTinybars(info.balance != null ? info.balance : 0),\n isDeleted: /** @type {boolean} */ (info.deleted),\n tokenRelationships: TokenRelationshipMap._fromProtobuf(\n info.tokenRelationships != null ? info.tokenRelationships : []\n ),\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IContractInfo}\n */\n _toProtobuf() {\n return {\n contractID: this.contractId._toProtobuf(),\n accountID: this.accountId._toProtobuf(),\n contractAccountID: this.contractAccountId,\n adminKey:\n this.adminKey != null ? this.adminKey._toProtobufKey() : null,\n expirationTime: this.expirationTime._toProtobuf(),\n autoRenewPeriod:\n this.autoRenewPeriod != null\n ? this.autoRenewPeriod._toProtobuf()\n : null,\n storage: this.storage,\n memo: this.contractMemo,\n balance: this.balance.toTinybars(),\n deleted: this.isDeleted,\n tokenRelationships:\n this.tokenRelationships != null\n ? this.tokenRelationships._toProtobuf()\n : null,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {ContractInfo}\n */\n static fromBytes(bytes) {\n return ContractInfo._fromProtobuf(\n proto.ContractGetInfoResponse.ContractInfo.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ContractGetInfoResponse.ContractInfo.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import FileId from \"./FileId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport KeyList from \"../KeyList.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * Response when the client sends the node CryptoGetInfoQuery.\n */\nexport default class FileInfo {\n /**\n * @private\n * @param {object} props\n * @param {FileId} props.fileId\n * @param {Long} props.size\n * @param {Timestamp} props.expirationTime\n * @param {boolean} props.isDeleted\n * @param {KeyList} props.keys\n * @param {string} props.fileMemo\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * The ID of the file for which information is requested.\n *\n * @readonly\n */\n this.fileId = props.fileId;\n\n /**\n * Number of bytes in contents.\n *\n * @readonly\n */\n this.size = props.size;\n\n /**\n * The current time at which this account is set to expire.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * True if deleted but not yet expired.\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * One of these keys must sign in order to delete the file.\n * All of these keys must sign in order to update the file.\n *\n * @readonly\n */\n this.keys = props.keys;\n\n this.fileMemo = props.fileMemo;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IFileInfo} info\n * @returns {FileInfo}\n */\n static _fromProtobuf(info) {\n const size = /** @type {Long | number} */ (info.size);\n\n return new FileInfo({\n fileId: FileId._fromProtobuf(\n /** @type {proto.IFileID} */ (info.fileID)\n ),\n size: size instanceof Long ? size : Long.fromValue(size),\n expirationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n ),\n isDeleted: /** @type {boolean} */ (info.deleted),\n keys:\n info.keys != null\n ? KeyList.__fromProtobufKeyList(info.keys)\n : new KeyList(),\n fileMemo: info.memo != null ? info.memo : \"\",\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IFileInfo}\n */\n _toProtobuf() {\n return {\n fileID: this.fileId._toProtobuf(),\n size: this.size,\n expirationTime: this.expirationTime._toProtobuf(),\n deleted: this.isDeleted,\n keys: this.keys._toProtobufKey().keyList,\n memo: this.fileMemo,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {FileInfo}\n */\n static fromBytes(bytes) {\n return FileInfo._fromProtobuf(\n proto.FileGetInfoResponse.FileInfo.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.FileGetInfoResponse.FileInfo.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import SemanticVersion from \"./SemanticVersion.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * Response when the client sends the node CryptoGetVersionInfoQuery.\n */\nexport default class NetworkVersionInfo {\n /**\n * @private\n * @param {object} props\n * @param {SemanticVersion} props.protobufVersion\n * @param {SemanticVersion} props.servicesVesion\n */\n constructor(props) {\n /**\n * The account ID for which this information applies.\n *\n * @readonly\n */\n this.protobufVersion = props.protobufVersion;\n\n /**\n * The account ID for which this information applies.\n *\n * @readonly\n */\n this.servicesVesion = props.servicesVesion;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.INetworkGetVersionInfoResponse} info\n * @returns {NetworkVersionInfo}\n */\n static _fromProtobuf(info) {\n return new NetworkVersionInfo({\n protobufVersion: SemanticVersion._fromProtobuf(\n /** @type {proto.ISemanticVersion} */\n (info.hapiProtoVersion)\n ),\n servicesVesion: SemanticVersion._fromProtobuf(\n /** @type {proto.ISemanticVersion} */\n (info.hederaServicesVersion)\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.INetworkGetVersionInfoResponse}\n */\n _toProtobuf() {\n return {\n hapiProtoVersion: this.protobufVersion._toProtobuf(),\n hederaServicesVersion: this.servicesVesion._toProtobuf(),\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {NetworkVersionInfo}\n */\n static fromBytes(bytes) {\n return NetworkVersionInfo._fromProtobuf(\n proto.NetworkGetVersionInfoResponse.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.NetworkGetVersionInfoResponse.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import * as proto from \"@hashgraph/proto\";\n\nexport default class SemanticVersion {\n /**\n * @private\n * @param {object} props\n * @param {number} props.major\n * @param {number} props.minor\n * @param {number} props.patch\n */\n constructor(props) {\n /** @readonly */\n this.major = props.major;\n /** @readonly */\n this.minor = props.minor;\n /** @readonly */\n this.patch = props.patch;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ISemanticVersion} version\n * @returns {SemanticVersion}\n */\n static _fromProtobuf(version) {\n return new SemanticVersion({\n major: /** @type {number} */ (version.major),\n minor: /** @type {number} */ (version.minor),\n patch: /** @type {number} */ (version.patch),\n });\n }\n\n /**\n * @internal\n * @returns {proto.ISemanticVersion}\n */\n _toProtobuf() {\n return {\n major: this.major,\n minor: this.minor,\n patch: this.patch,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {SemanticVersion}\n */\n static fromBytes(bytes) {\n return SemanticVersion._fromProtobuf(\n proto.SemanticVersion.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.SemanticVersion.encode(this._toProtobuf()).finish();\n }\n}\n","import ScheduleId from \"./ScheduleId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Transaction from \"../transaction/Transaction.js\";\nimport {\n TransactionList as ProtoTransactionList,\n TransactionBody as ProtoTransactionBody,\n SignedTransaction as ProtoSignedTransaction,\n SchedulableTransactionBody as ProtoSchedulableTransactionBody,\n} from \"@hashgraph/proto\";\nimport TransactionId from \"../transaction/TransactionId.js\";\nimport Key from \"../Key.js\";\nimport KeyList from \"../KeyList.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IScheduleInfo} proto.IScheduleInfo\n * @typedef {import(\"@hashgraph/proto\").IScheduleID} proto.IScheduleID\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").IScheduleID} proto.IScheduledID\n * @typedef {import(\"@hashgraph/proto\").IFileID} proto.IFileID\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n * @typedef {import(\"@hashgraph/proto\").ISchedulableTransactionBody} proto.ISchedulableTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n */\n\n/**\n * Response when the client sends the node ScheduleGetInfoQuery.\n */\nexport default class ScheduleInfo {\n /**\n * @private\n * @param {object} props\n * @param {ScheduleId} props.scheduleId;\n * @param {?AccountId} props.creatorAccountID;\n * @param {?AccountId} props.payerAccountID;\n * @param {?proto.ISchedulableTransactionBody} props.schedulableTransactionBody;\n * @param {?Key} props.adminKey\n * @param {?KeyList} props.signers;\n * @param {?string} props.scheduleMemo;\n * @param {?Timestamp} props.expirationTime;\n * @param {?Timestamp} props.executed;\n * @param {?Timestamp} props.deleted;\n * @param {?TransactionId} props.scheduledTransactionId;\n */\n constructor(props) {\n /**\n *\n * @readonly\n */\n this.scheduleId = props.scheduleId;\n\n /**\n *\n * @readonly\n */\n this.creatorAccountId = props.creatorAccountID;\n\n /**\n *\n * @readonly\n */\n this.payerAccountId = props.payerAccountID;\n\n /**\n *\n * @readonly\n */\n this.schedulableTransactionBody = props.schedulableTransactionBody;\n\n /**\n *\n * @readonly\n */\n this.signers = props.signers;\n\n /**\n *\n * @readonly\n */\n this.scheduleMemo = props.scheduleMemo;\n\n /**\n *\n * @readonly\n */\n this.adminKey = props.adminKey != null ? props.adminKey : null;\n\n /**\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n *\n * @readonly\n */\n this.executed = props.executed;\n\n /**\n *\n * @readonly\n */\n this.deleted = props.deleted;\n\n this.scheduledTransactionId = props.scheduledTransactionId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IScheduleInfo} info\n * @returns {ScheduleInfo}\n */\n static _fromProtobuf(info) {\n return new ScheduleInfo({\n scheduleId: ScheduleId._fromProtobuf(\n /** @type {proto.IScheduleID} */ (info.scheduleID)\n ),\n creatorAccountID:\n info.creatorAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n info.creatorAccountID\n )\n )\n : null,\n payerAccountID:\n info.payerAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.payerAccountID)\n )\n : null,\n schedulableTransactionBody:\n info.scheduledTransactionBody != null\n ? info.scheduledTransactionBody\n : null,\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n signers:\n info.signers != null\n ? KeyList.__fromProtobufKeyList(info.signers)\n : null,\n scheduleMemo: info.memo != null ? info.memo : null,\n expirationTime:\n info.expirationTime != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n )\n : null,\n executed:\n info.executionTime != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.executionTime)\n )\n : null,\n deleted:\n info.deletionTime != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.deletionTime)\n )\n : null,\n scheduledTransactionId:\n info.scheduledTransactionID != null\n ? TransactionId._fromProtobuf(info.scheduledTransactionID)\n : null,\n });\n }\n\n /**\n * @returns {proto.IScheduleInfo}\n */\n _toProtobuf() {\n return {\n scheduleID:\n this.scheduleId != null ? this.scheduleId._toProtobuf() : null,\n creatorAccountID:\n this.creatorAccountId != null\n ? this.creatorAccountId._toProtobuf()\n : null,\n payerAccountID:\n this.payerAccountId != null\n ? this.payerAccountId._toProtobuf()\n : null,\n scheduledTransactionBody:\n this.schedulableTransactionBody != null\n ? this.schedulableTransactionBody\n : null,\n adminKey:\n this.adminKey != null ? this.adminKey._toProtobufKey() : null,\n signers:\n this.signers != null\n ? this.signers._toProtobufKey().keyList\n : null,\n memo: this.scheduleMemo != null ? this.scheduleMemo : \"\",\n expirationTime:\n this.expirationTime != null\n ? this.expirationTime._toProtobuf()\n : null,\n scheduledTransactionID:\n this.scheduledTransactionId != null\n ? this.scheduledTransactionId._toProtobuf()\n : null,\n };\n }\n\n /**\n * @returns {Transaction}\n */\n get scheduledTransaction() {\n if (this.schedulableTransactionBody == null) {\n throw new Error(\"Scheduled transaction body is empty\");\n }\n\n const scheduled = new ProtoSchedulableTransactionBody(\n this.schedulableTransactionBody\n );\n const data =\n /** @type {NonNullable} */ (\n scheduled.data\n );\n\n return Transaction.fromBytes(\n ProtoTransactionList.encode({\n transactionList: [\n {\n signedTransactionBytes: ProtoSignedTransaction.encode({\n bodyBytes: ProtoTransactionBody.encode({\n transactionFee:\n this.schedulableTransactionBody\n .transactionFee,\n memo: this.schedulableTransactionBody.memo,\n [data]: scheduled[data],\n }).finish(),\n }).finish(),\n },\n ],\n }).finish()\n );\n }\n}\n","import TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Duration from \"../Duration.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport TokenType from \"./TokenType.js\";\nimport TokenSupplyType from \"./TokenSupplyType.js\";\nimport CustomFixedFee from \"./CustomFixedFee.js\";\nimport CustomFractionalFee from \"./CustomFractionalFee.js\";\nimport CustomRoyaltyFee from \"./CustomRoyaltyFee.js\";\nimport Key from \"../Key.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * @typedef {import(\"./CustomFee.js\").default} CustomFee\n */\n\n/**\n * Response when the client sends the node TokenGetInfoQuery.\n */\nexport default class TokenInfo {\n /**\n * @private\n * @param {object} props\n * @param {TokenId} props.tokenId;\n * @param {string} props.name;\n * @param {string} props.symbol;\n * @param {number} props.decimals;\n * @param {Long} props.totalSupply;\n * @param {AccountId | null} props.treasuryAccountId;\n * @param {Key | null} props.adminKey;\n * @param {Key | null} props.kycKey;\n * @param {Key | null} props.freezeKey;\n * @param {Key | null} props.pauseKey;\n * @param {Key | null} props.wipeKey;\n * @param {Key | null} props.supplyKey;\n * @param {Key | null} props.feeScheduleKey;\n * @param {boolean | null} props.defaultFreezeStatus;\n * @param {boolean | null} props.defaultKycStatus;\n * @param {boolean | null} props.pauseStatus;\n * @param {boolean} props.isDeleted;\n * @param {AccountId | null} props.autoRenewAccountId;\n * @param {Duration | null} props.autoRenewPeriod;\n * @param {Timestamp | null} props.expirationTime;\n * @param {string} props.tokenMemo;\n * @param {CustomFee[]} props.customFees;\n * @param {TokenType | null} props.tokenType;\n * @param {TokenSupplyType | null} props.supplyType;\n * @param {Long | null} props.maxSupply;\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * ID of the token instance\n *\n * @readonly\n */\n this.tokenId = props.tokenId;\n\n /**\n * The name of the token. It is a string of ASCII only characters\n *\n * @readonly\n */\n this.name = props.name;\n\n /**\n * The symbol of the token. It is a UTF-8 capitalized alphabetical string\n *\n * @readonly\n */\n this.symbol = props.symbol;\n\n /**\n * The number of decimal places a token is divisible by\n *\n * @readonly\n */\n this.decimals = props.decimals;\n\n /**\n * The total supply of tokens that are currently in circulation\n *\n * @readonly\n */\n this.totalSupply = props.totalSupply;\n\n /**\n * The ID of the account which is set as treasuryAccountId\n *\n * @readonly\n */\n this.treasuryAccountId = props.treasuryAccountId;\n\n /**\n * The key which can perform update/delete operations on the token. If empty, the token can be perceived as\n * immutable (not being able to be updated/deleted)\n *\n * @readonly\n */\n this.adminKey = props.adminKey;\n\n /**\n * The key which can grant or revoke KYC of an account for the token's transactions. If empty, KYC is not required,\n * and KYC grant or revoke operations are not possible.\n *\n * @readonly\n */\n this.kycKey = props.kycKey;\n\n /**\n * The key which can freeze or unfreeze an account for token transactions. If empty, freezing is not possible\n *\n * @readonly\n */\n this.freezeKey = props.freezeKey;\n\n /**\n * The Key which can pause and unpause the Token.\n *\n * @readonly\n */\n this.pauseKey = props.pauseKey;\n\n /**\n * The key which can wipe token balance of an account. If empty, wipe is not possible\n *\n * @readonly\n */\n this.wipeKey = props.wipeKey;\n\n /**\n * The key which can change the supply of a token. The key is used to sign Token Mint/Burn operations\n *\n * @readonly\n */\n this.supplyKey = props.supplyKey;\n\n this.feeScheduleKey = props.feeScheduleKey;\n\n /**\n * The default Freeze status (not applicable = null, frozen = false, or unfrozen = true) of Hedera accounts relative to this token.\n * FreezeNotApplicable is returned if Token Freeze Key is empty. Frozen is returned if Token Freeze Key is set and\n * defaultFreeze is set to true. Unfrozen is returned if Token Freeze Key is set and defaultFreeze is set to false\n * FreezeNotApplicable = null;\n * Frozen = true;\n * Unfrozen = false;\n *\n * @readonly\n */\n this.defaultFreezeStatus = props.defaultFreezeStatus;\n\n /**\n * The default KYC status (KycNotApplicable or Revoked) of Hedera accounts relative to this token. KycNotApplicable\n * is returned if KYC key is not set, otherwise Revoked\n * KycNotApplicable = null;\n * Granted = true;\n * Revoked = false;\n *\n * @readonly\n */\n this.defaultKycStatus = props.defaultKycStatus;\n\n /**\n * The default pause status of Hedera accounts relative to this token.\n * PauseNotApplicable is returned if pauseKey is not set\n * PauseNotApplicable = null;\n * Paused = true;\n * Unpaused = false;\n *\n * @readonly\n */\n this.pauseStatus = props.pauseStatus;\n\n /**\n * Specifies whether the token was deleted or not\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * An account which will be automatically charged to renew the token's expiration, at autoRenewPeriod interval\n *\n * @readonly\n */\n this.autoRenewAccountId = props.autoRenewAccountId;\n\n /**\n * The interval at which the auto-renew account will be charged to extend the token's expiry\n *\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /**\n * The epoch second at which the token expire: will; if an auto-renew account and period are specified,\n * this is coerced to the current epoch second plus the autoRenewPeriod\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * The memo associated with the token.\n *\n * @readonly\n */\n this.tokenMemo = props.tokenMemo;\n\n this.customFees = props.customFees;\n\n this.tokenType = props.tokenType;\n\n this.supplyType = props.supplyType;\n\n this.maxSupply = props.maxSupply;\n\n this.ledgerId = props.ledgerId;\n }\n\n /**\n * @internal\n * @param {proto.ITokenInfo} info\n * @returns {TokenInfo}\n */\n static _fromProtobuf(info) {\n const defaultFreezeStatus = /** @type {proto.TokenFreezeStatus} */ (\n info.defaultFreezeStatus\n );\n const defaultKycStatus = /** @type {proto.TokenKycStatus} */ (\n info.defaultKycStatus\n );\n const pauseStatus = /**@type {proto.TokenPauseStatus} */ (\n info.pauseStatus\n );\n\n const autoRenewAccountId =\n info.autoRenewAccount != null\n ? AccountId._fromProtobuf(info.autoRenewAccount)\n : new AccountId(0);\n\n return new TokenInfo({\n tokenId: TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (info.tokenId)\n ),\n name: /** @type {string} */ (info.name),\n symbol: /** @type {string} */ (info.symbol),\n decimals: /** @type {number} */ (info.decimals),\n totalSupply: Long.fromValue(/** @type {Long} */ (info.totalSupply)),\n treasuryAccountId:\n info.treasury != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.treasury)\n )\n : null,\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n kycKey:\n info.kycKey != null ? Key._fromProtobufKey(info.kycKey) : null,\n freezeKey:\n info.freezeKey != null\n ? Key._fromProtobufKey(info.freezeKey)\n : null,\n pauseKey:\n info.pauseKey != null\n ? Key._fromProtobufKey(info.pauseKey)\n : null,\n wipeKey:\n info.wipeKey != null\n ? Key._fromProtobufKey(info.wipeKey)\n : null,\n supplyKey:\n info.supplyKey != null\n ? Key._fromProtobufKey(info.supplyKey)\n : null,\n feeScheduleKey:\n info.feeScheduleKey != null\n ? Key._fromProtobufKey(info.feeScheduleKey)\n : null,\n defaultFreezeStatus:\n defaultFreezeStatus === 0 ? null : defaultFreezeStatus == 1,\n defaultKycStatus:\n defaultKycStatus === 0 ? null : defaultKycStatus == 1,\n pauseStatus: pauseStatus === 0 ? null : pauseStatus == 1,\n isDeleted: /** @type {boolean} */ (info.deleted),\n autoRenewAccountId: !(\n autoRenewAccountId.shard.toInt() == 0 &&\n autoRenewAccountId.realm.toInt() == 0 &&\n autoRenewAccountId.num.toInt() == 0\n )\n ? autoRenewAccountId\n : null,\n autoRenewPeriod:\n info.autoRenewPeriod != null\n ? Duration._fromProtobuf(\n /** @type {proto.IDuration} */ (info.autoRenewPeriod)\n )\n : null,\n expirationTime:\n info.expiry != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expiry)\n )\n : null,\n tokenMemo: info.memo != null ? info.memo : \"\",\n customFees:\n info.customFees != null\n ? info.customFees.map((fee) => {\n if (fee.fixedFee != null) {\n return CustomFixedFee._fromProtobuf(fee);\n } else if (fee.fractionalFee != null) {\n return CustomFractionalFee._fromProtobuf(fee);\n } else {\n return CustomRoyaltyFee._fromProtobuf(fee);\n }\n })\n : [],\n tokenType:\n info.tokenType != null\n ? TokenType._fromCode(info.tokenType)\n : null,\n supplyType:\n info.supplyType != null\n ? TokenSupplyType._fromCode(info.supplyType)\n : null,\n maxSupply: info.maxSupply != null ? info.maxSupply : null,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @returns {proto.ITokenInfo}\n */\n _toProtobuf() {\n return {\n tokenId: this.tokenId._toProtobuf(),\n name: this.name,\n symbol: this.symbol,\n decimals: this.decimals,\n totalSupply: this.totalSupply,\n treasury:\n this.treasuryAccountId != null\n ? this.treasuryAccountId._toProtobuf()\n : null,\n adminKey:\n this.adminKey != null ? this.adminKey._toProtobufKey() : null,\n kycKey: this.kycKey != null ? this.kycKey._toProtobufKey() : null,\n freezeKey:\n this.freezeKey != null ? this.freezeKey._toProtobufKey() : null,\n pauseKey:\n this.pauseKey != null ? this.pauseKey._toProtobufKey() : null,\n wipeKey:\n this.wipeKey != null ? this.wipeKey._toProtobufKey() : null,\n supplyKey:\n this.supplyKey != null ? this.supplyKey._toProtobufKey() : null,\n feeScheduleKey:\n this.feeScheduleKey != null\n ? this.feeScheduleKey._toProtobufKey()\n : null,\n defaultFreezeStatus:\n this.defaultFreezeStatus == null\n ? 0\n : this.defaultFreezeStatus\n ? 1\n : 2,\n defaultKycStatus:\n this.defaultKycStatus == null\n ? 0\n : this.defaultKycStatus\n ? 1\n : 2,\n pauseStatus:\n this.pauseStatus == null ? 0 : this.pauseStatus ? 1 : 2,\n deleted: this.isDeleted,\n autoRenewAccount:\n this.autoRenewAccountId != null\n ? this.autoRenewAccountId._toProtobuf()\n : undefined,\n autoRenewPeriod:\n this.autoRenewPeriod != null\n ? this.autoRenewPeriod._toProtobuf()\n : null,\n expiry:\n this.expirationTime != null\n ? this.expirationTime._toProtobuf()\n : null,\n memo: this.tokenMemo,\n customFees: this.customFees.map((fee) => fee._toProtobuf()),\n tokenType: this.tokenType != null ? this.tokenType._code : null,\n supplyType: this.supplyType != null ? this.supplyType._code : null,\n maxSupply: this.maxSupply,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TokenInfo}\n */\n static fromBytes(bytes) {\n return TokenInfo._fromProtobuf(proto.TokenInfo.decode(bytes));\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TokenInfo.encode(this._toProtobuf()).finish();\n }\n}\n","import NftId from \"./NftId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").TokenFreezeStatus} proto.TokenFreezeStatus\n * @typedef {import(\"@hashgraph/proto\").TokenKycStatus} proto.TokenKycStatus\n * @typedef {import(\"@hashgraph/proto\").TokenPauseStatus} proto.TokenPauseStatus\n * @typedef {import(\"@hashgraph/proto\").ITokenNftInfo} proto.ITokenNftInfo\n * @typedef {import(\"@hashgraph/proto\").INftID} proto.INftID\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n */\n\nexport default class TokenNftInfo {\n /**\n * @private\n * @param {object} props\n * @param {NftId} props.nftId\n * @param {AccountId} props.accountId\n * @param {Timestamp} props.creationTime\n * @param {Uint8Array | null} props.metadata\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * ID of the nft instance\n *\n * @readonly\n */\n this.nftId = props.nftId;\n\n /**\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * @readonly\n */\n this.creationTime = props.creationTime;\n\n /**\n * @readonly\n */\n this.metadata = props.metadata;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ITokenNftInfo} info\n * @returns {TokenNftInfo}\n */\n static _fromProtobuf(info) {\n return new TokenNftInfo({\n nftId: NftId._fromProtobuf(\n /** @type {proto.INftID} */ (info.nftID)\n ),\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.accountID)\n ),\n creationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.creationTime)\n ),\n metadata: info.metadata !== undefined ? info.metadata : null,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @returns {proto.ITokenNftInfo}\n */\n _toProtobuf() {\n return {\n nftID: this.nftId._toProtobuf(),\n accountID: this.accountId._toProtobuf(),\n creationTime: this.creationTime._toProtobuf(),\n metadata: this.metadata,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @typedef {object} TokenNftInfoJson\n * @property {string} nftId\n * @property {string} accountId\n * @property {string} creationTime\n * @property {string | null} metadata\n * @property {string | null} ledgerId\n * @returns {TokenNftInfoJson}\n */\n toJson() {\n return {\n nftId: this.nftId.toString(),\n accountId: this.accountId.toString(),\n creationTime: this.creationTime.toString(),\n metadata: this.metadata != null ? hex.encode(this.metadata) : null,\n ledgerId: this.ledgerId != null ? this.ledgerId.toString() : null,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this.toJson());\n }\n}\n","import TopicId from \"./TopicId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport Duration from \"../Duration.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Key from \"../Key.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * Current state of a topic.\n */\nexport default class TopicInfo {\n /**\n * @private\n * @param {object} props\n * @param {TopicId} props.topicId\n * @param {string} props.topicMemo\n * @param {Uint8Array} props.runningHash\n * @param {Long} props.sequenceNumber\n * @param {?Timestamp} props.expirationTime\n * @param {?Key} props.adminKey\n * @param {?Key} props.submitKey\n * @param {?Duration} props.autoRenewPeriod\n * @param {?AccountId} props.autoRenewAccountId\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * The ID of the topic for which information is requested.\n *\n * @readonly\n */\n this.topicId = props.topicId;\n\n /**\n * Short publicly visible memo about the topic. No guarantee of uniqueness.\n *\n * @readonly\n */\n this.topicMemo = props.topicMemo;\n\n /**\n * SHA-384 running hash of (previousRunningHash, topicId, consensusTimestamp, sequenceNumber, message).\n *\n * @readonly\n */\n this.runningHash = props.runningHash;\n\n /**\n * Sequence number (starting at 1 for the first submitMessage) of messages on the topic.\n *\n * @readonly\n */\n this.sequenceNumber = props.sequenceNumber;\n\n /**\n * Effective consensus timestamp at (and after) which submitMessage calls will no longer succeed on the topic.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * Access control for update/delete of the topic. Null if there is no key.\n *\n * @readonly\n */\n this.adminKey = props.adminKey;\n\n /**\n * Access control for ConsensusService.submitMessage. Null if there is no key.\n *\n * @readonly\n */\n this.submitKey = props.submitKey;\n\n /**\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /**\n * @readonly\n */\n this.autoRenewAccountId = props.autoRenewAccountId;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IConsensusGetTopicInfoResponse} infoResponse\n * @returns {TopicInfo}\n */\n static _fromProtobuf(infoResponse) {\n const info = /** @type {proto.IConsensusTopicInfo} */ (\n infoResponse.topicInfo\n );\n\n return new TopicInfo({\n topicId: TopicId._fromProtobuf(\n /** @type {proto.ITopicID} */ (infoResponse.topicID)\n ),\n topicMemo: info.memo != null ? info.memo : \"\",\n runningHash:\n info.runningHash != null ? info.runningHash : new Uint8Array(),\n sequenceNumber:\n info.sequenceNumber != null\n ? info.sequenceNumber instanceof Long\n ? info.sequenceNumber\n : Long.fromValue(info.sequenceNumber)\n : Long.ZERO,\n expirationTime:\n info.expirationTime != null\n ? Timestamp._fromProtobuf(info.expirationTime)\n : null,\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n submitKey:\n info.submitKey != null\n ? Key._fromProtobufKey(info.submitKey)\n : null,\n autoRenewPeriod:\n info.autoRenewPeriod != null\n ? new Duration(\n /** @type {Long} */ (info.autoRenewPeriod.seconds)\n )\n : null,\n autoRenewAccountId:\n info.autoRenewAccount != null\n ? AccountId._fromProtobuf(info.autoRenewAccount)\n : null,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IConsensusGetTopicInfoResponse}\n */\n _toProtobuf() {\n return {\n topicID: this.topicId._toProtobuf(),\n topicInfo: {\n memo: this.topicMemo,\n runningHash: this.runningHash,\n sequenceNumber: this.sequenceNumber,\n expirationTime:\n this.expirationTime != null\n ? this.expirationTime._toProtobuf()\n : null,\n adminKey:\n this.adminKey != null\n ? this.adminKey._toProtobufKey()\n : null,\n submitKey:\n this.submitKey != null\n ? this.submitKey._toProtobufKey()\n : null,\n autoRenewPeriod:\n this.autoRenewPeriod != null\n ? this.autoRenewPeriod._toProtobuf()\n : null,\n autoRenewAccount:\n this.autoRenewAccountId != null\n ? this.autoRenewAccountId._toProtobuf()\n : null,\n },\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TopicInfo}\n */\n static fromBytes(bytes) {\n return TopicInfo._fromProtobuf({\n topicInfo: proto.ConsensusTopicInfo.decode(bytes),\n });\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ConsensusTopicInfo.encode(\n /** @type {proto.IConsensusTopicInfo} */ (\n this._toProtobuf().topicInfo\n )\n ).finish();\n }\n}\n","import Timestamp from \"../Timestamp.js\";\nimport TopicMessageChunk from \"./TopicMessageChunk.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IConsensusTopicResponse} proto.IConsensusTopicResponse\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n */\n\nexport default class TopicMessage {\n /**\n * @private\n * @param {object} props\n * @param {Timestamp} props.consensusTimestamp\n * @param {Uint8Array} props.contents\n * @param {Uint8Array} props.runningHash\n * @param {Long} props.sequenceNumber\n * @param {TopicMessageChunk[]} props.chunks\n */\n constructor(props) {\n /** @readonly */\n this.consensusTimestamp = props.consensusTimestamp;\n /** @readonly */\n this.contents = props.contents;\n /** @readonly */\n this.runningHash = props.runningHash;\n /** @readonly */\n this.sequenceNumber = props.sequenceNumber;\n /** @readonly */\n this.chunks = props.chunks;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IConsensusTopicResponse} response\n * @returns {TopicMessage}\n */\n static _ofSingle(response) {\n return new TopicMessage({\n consensusTimestamp: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (response.consensusTimestamp)\n ),\n contents:\n response.message != null ? response.message : new Uint8Array(),\n runningHash:\n response.runningHash != null\n ? response.runningHash\n : new Uint8Array(),\n sequenceNumber:\n response.sequenceNumber != null\n ? response.sequenceNumber instanceof Long\n ? response.sequenceNumber\n : Long.fromNumber(response.sequenceNumber)\n : Long.ZERO,\n chunks: [TopicMessageChunk._fromProtobuf(response)],\n });\n }\n\n /**\n * @internal\n * @param {proto.IConsensusTopicResponse[]} responses\n * @returns {TopicMessage}\n */\n static _ofMany(responses) {\n const length = responses.length;\n\n const last = /** @type {proto.IConsensusTopicResponse} */ (\n responses[length - 1]\n );\n\n const consensusTimestamp = Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (last.consensusTimestamp)\n );\n\n const runningHash = /** @type {Uint8Array} */ (last.runningHash);\n\n /**\n * @type {Long}\n */\n const sequenceNumber =\n last.sequenceNumber != null\n ? last.sequenceNumber instanceof Long\n ? last.sequenceNumber\n : Long.fromValue(last.sequenceNumber)\n : Long.ZERO;\n\n responses.sort((a, b) =>\n (a != null\n ? a.chunkInfo != null\n ? a.chunkInfo.number != null\n ? a.chunkInfo.number\n : 0\n : 0\n : 0) <\n (b != null\n ? b.chunkInfo != null\n ? b.chunkInfo.number != null\n ? b.chunkInfo.number\n : 0\n : 0\n : 0)\n ? -1\n : 1\n );\n\n /**\n * @type {TopicMessageChunk[]}\n */\n const chunks = responses.map(\n /**\n * @type {proto.IConsensusTopicResponse}\n */ (m) => TopicMessageChunk._fromProtobuf(m)\n );\n\n const size = chunks\n .map((chunk) => chunk.contents.length)\n .reduce((sum, current) => sum + current, 0);\n\n const contents = new Uint8Array(size);\n let offset = 0;\n\n responses.forEach((value) => {\n contents.set(/** @type {Uint8Array} */ (value.message), offset);\n offset += /** @type {Uint8Array} */ (value.message).length;\n });\n\n return new TopicMessage({\n consensusTimestamp,\n contents,\n runningHash,\n sequenceNumber,\n chunks,\n });\n }\n}\n","import Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IConsensusTopicResponse} proto.IConsensusTopicResponse\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n */\n\nexport default class TopicMessageChunk {\n /**\n * @private\n * @param {object} props\n * @param {Timestamp} props.consensusTimestamp\n * @param {Uint8Array} props.contents\n * @param {Uint8Array} props.runningHash\n * @param {Long} props.sequenceNumber\n */\n constructor(props) {\n /** @readonly */\n this.consensusTimestamp = props.consensusTimestamp;\n /** @readonly */\n this.contents = props.contents;\n /** @readonly */\n this.runningHash = props.runningHash;\n /** @readonly */\n this.sequenceNumber = props.sequenceNumber;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IConsensusTopicResponse} response\n * @returns {TopicMessageChunk}\n */\n static _fromProtobuf(response) {\n return new TopicMessageChunk({\n consensusTimestamp: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (response.consensusTimestamp)\n ),\n contents:\n response.message != null ? response.message : new Uint8Array(),\n runningHash:\n response.runningHash != null\n ? response.runningHash\n : new Uint8Array(),\n sequenceNumber:\n response.sequenceNumber != null\n ? response.sequenceNumber instanceof Long\n ? response.sequenceNumber\n : Long.fromValue(response.sequenceNumber)\n : Long.ZERO,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IConsensusTopicResponse}\n */\n _toProtobuf() {\n return {\n consensusTimestamp: this.consensusTimestamp._toProtobuf(),\n message: this.contents,\n runningHash: this.runningHash,\n sequenceNumber: this.sequenceNumber,\n };\n }\n}\n","import ManagedNodeAddress from \"./ManagedNodeAddress.js\";\n\n/**\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n * @typedef {import(\"./channel/Channel.js\").default} Channel\n * @typedef {import(\"./channel/MirrorChannel.js\").default} MirrorChannel\n * @typedef {import(\"./address_book/NodeAddress.js\").default} NodeAddress\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @typedef {object} NewNode\n * @property {string | ManagedNodeAddress} address\n * @property {(address: string, cert?: string) => ChannelT} channelInitFunction\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @typedef {object} CloneNode\n * @property {ManagedNode} node\n * @property {ManagedNodeAddress} address\n */\n\n/**\n * @abstract\n * @template {Channel | MirrorChannel} ChannelT\n */\nexport default class ManagedNode {\n /**\n * @param {object} props\n * @param {NewNode=} [props.newNode]\n * @param {CloneNode=} [props.cloneNode]\n */\n constructor(props = {}) {\n if (props.newNode != null) {\n this._address =\n typeof props.newNode.address === \"string\"\n ? ManagedNodeAddress.fromString(props.newNode.address)\n : props.newNode.address;\n\n /** @type {string=} */\n this._cert = undefined;\n\n /** @type {ChannelT | null} */\n this._channel = null;\n\n /** @type {(address: string, cert?: string) => ChannelT} */\n this._channelInitFunction = props.newNode.channelInitFunction;\n\n this._currentBackoff = 250;\n this._lastUsed = Date.now();\n this._backoffUntil = Date.now();\n this._useCount = 0;\n this._attempts = 0;\n this._minBackoff = 250;\n this._maxBackoff = 8000;\n } else if (props.cloneNode != null) {\n /** @type {ManagedNodeAddress} */\n this._address = props.cloneNode.address;\n\n /** @type {string=} */\n this._cert = props.cloneNode.node._cert;\n\n /** @type {ChannelT | null} */\n this._channel = props.cloneNode.node._channel;\n\n /** @type {(address: string, cert?: string) => ChannelT} */\n this._channelInitFunction =\n props.cloneNode.node._channelInitFunction;\n\n /** @type {number} */\n this._currentBackoff = props.cloneNode.node._currentBackoff;\n\n /** @type {number} */\n this._lastUsed = props.cloneNode.node._lastUsed;\n\n /** @type {number} */\n this._backoffUntil = props.cloneNode.node._backoffUntil;\n\n /** @type {number} */\n this._useCount = props.cloneNode.node._useCount;\n\n /** @type {number} */\n this._attempts = props.cloneNode.node._attempts;\n\n /** @type {number} */\n this._minBackoff = props.cloneNode.node._minBackoff;\n\n /** @type {number} */\n this._maxBackoff = props.cloneNode.node._minBackoff;\n } else {\n throw new Error(\n `failed to create ManagedNode: ${JSON.stringify(props)}`\n );\n }\n }\n\n /**\n * @abstract\n * @returns {string}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n getKey() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @returns {ManagedNode}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n toInsecure() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @returns {ManagedNode}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n toSecure() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @param {string} ledgerId\n * @returns {this}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setCert(ledgerId) {\n return this;\n }\n\n /**\n * @returns {ManagedNodeAddress}\n */\n get address() {\n return this._address;\n }\n\n /**\n * @returns {number}\n */\n get attempts() {\n return this._attempts;\n }\n\n /**\n * @returns {number}\n */\n get minBackoff() {\n return this._minBackoff;\n }\n\n /**\n * @param {number} minBackoff\n * @returns {this}\n */\n setMinBackoff(minBackoff) {\n if (this._currentBackoff <= minBackoff) {\n this._currentBackoff = minBackoff;\n }\n\n this._minBackoff = minBackoff;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get maxBackoff() {\n return this._maxBackoff;\n }\n\n /**\n * @param {number} maxBackoff\n * @returns {this}\n */\n setmaxBackoff(maxBackoff) {\n if (this._currentBackoff <= maxBackoff) {\n this._currentBackoff = maxBackoff;\n }\n\n this._maxBackoff = maxBackoff;\n return this;\n }\n\n getChannel() {\n this._useCount++;\n this.__lastUsed = Date.now();\n\n if (this._channel != null) {\n return this._channel;\n }\n\n this._channel = this._channelInitFunction(\n this.address.toString(),\n this._cert\n );\n return this._channel;\n }\n\n /**\n * Determines if this node is healthy by checking if this node hasn't been\n * in use for a the required `_currentBackoff` period. Since this looks at `this._lastUsed`\n * and that value is only set in the `wait()` method, any node that has not\n * returned a bad gRPC status will always be considered healthy.\n *\n * @returns {boolean}\n */\n isHealthy() {\n return this._backoffUntil <= Date.now();\n }\n\n increaseDelay() {\n this._currentBackoff = Math.min(\n this._currentBackoff * 2,\n this._maxBackoff\n );\n this._backoffUntil = Date.now() + this._currentBackoff;\n }\n\n decreaseDelay() {\n this._currentBackoff = Math.max(\n this._currentBackoff / 2,\n this._minBackoff\n );\n }\n\n /**\n * This is only ever called if the node itself is down.\n * A node returning a transaction with a bad status code does not indicate\n * the node is down, and hence this method will not be called.\n *\n * @returns {Promise}\n */\n wait() {\n const _currentBackoff = this._backoffUntil - this._lastUsed;\n return new Promise((resolve) => setTimeout(resolve, _currentBackoff));\n }\n\n /**\n * @param {ManagedNode<*>} node\n * @returns {number}\n */\n compare(node) {\n if (this.isHealthy() && node.isHealthy()) {\n if (this._useCount < node._useCount) {\n return -1;\n } else if (this._useCount > node._useCount) {\n return 1;\n } else {\n if (this._lastUsed < node._lastUsed) {\n return -1;\n } else if (this._lastUsed > node._lastUsed) {\n return 1;\n } else {\n return 0;\n }\n }\n } else if (this.isHealthy() && !node.isHealthy()) {\n return -1;\n } else if (!this.isHealthy() && node.isHealthy()) {\n return 1;\n } else {\n if (this._useCount < node._useCount) {\n return -1;\n } else if (this._useCount > node._useCount) {\n return 1;\n } else {\n if (this._lastUsed < node._lastUsed) {\n return -1;\n } else if (this._lastUsed > node._lastUsed) {\n return 1;\n } else {\n return 0;\n }\n }\n }\n }\n\n close() {\n if (this._channel != null) {\n this._channel.close();\n }\n\n this._channel = null;\n }\n}\n","import LedgerId from \"../LedgerId.js\";\n// import {\n// PREVIEWNET_ADDRESS_BOOK,\n// TESTNET_ADDRESS_BOOK,\n// MAINNET_ADDRESS_BOOK,\n// } from \"../address_book/AddressBooks.js\";\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../channel/MirrorChannel.js\").default} MirrorChannel\n * @typedef {import(\"../Node.js\").default} Node\n * @typedef {import(\"../MirrorNode.js\").default} MirrorNode\n * @typedef {import(\"../address_book/NodeAddressBook.js\").default} NodeAddressBook\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @typedef {import(\"../ManagedNode.js\").default} ManagedNode\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @template {ManagedNode} NetworkNodeT\n * @template {{ toString: () => string }} KeyT\n */\nexport default class MangedNetwork {\n /**\n * @param {(address: string) => ChannelT} createNetworkChannel\n */\n constructor(createNetworkChannel) {\n /**\n * Map of node account ID (as a string)\n * to the node URL.\n *\n * @internal\n * @type {Map}\n */\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n this._network = new Map();\n\n /**\n * List of node account IDs.\n *\n * @protected\n * @type {NetworkNodeT[]}\n */\n this._nodes = [];\n\n /** @type {(address: string, cert?: string) => ChannelT} */\n this._createNetworkChannel = createNetworkChannel;\n\n /** @type {LedgerId | null} */\n this._ledgerId = null;\n\n /** @type {number} */\n this._minBackoff = 250;\n\n /** @type {number} */\n this._maxNodeAttempts = -1;\n\n this._transportSecurity = false;\n }\n\n /**\n * @returns {boolean}\n */\n isTransportSecurity() {\n return this._transportSecurity;\n }\n\n /**\n * @param {boolean} transportSecurity\n * @returns {this}\n */\n setTransportSecurity(transportSecurity) {\n if (this._transportSecurity != transportSecurity) {\n this._network.clear();\n\n for (let i = 0; i < this._nodes.length; i++) {\n let node = this._nodes[i];\n node.close();\n\n node = /** @type {NetworkNodeT} */ (\n transportSecurity\n ? node\n .toSecure()\n .setCert(\n this._ledgerId != null\n ? this._ledgerId._toStringForChecksum()\n : \"\"\n )\n : node.toInsecure()\n );\n this._nodes[i] = node;\n\n const nodes =\n this._network.get(node.getKey()) != null\n ? /** @type {NetworkNodeT[]} */ (\n this._network.get(node.getKey())\n )\n : [];\n nodes.push(node);\n this._network.set(node.getKey(), nodes);\n }\n }\n\n this._transportSecurity = transportSecurity;\n return this;\n }\n\n /**\n * @deprecated\n * @param {string} networkName\n * @returns {this}\n */\n setNetworkName(networkName) {\n console.warn(\"Deprecated: Use `setLedgerId` instead\");\n return this.setLedgerId(networkName);\n }\n\n /**\n * @deprecated\n * @returns {string | null}\n */\n get networkName() {\n console.warn(\"Deprecated: Use `ledgerId` instead\");\n return this.ledgerId != null ? this.ledgerId.toString() : null;\n }\n\n /**\n * @param {string|LedgerId} ledgerId\n * @returns {this}\n */\n setLedgerId(ledgerId) {\n this._ledgerId =\n typeof ledgerId === \"string\"\n ? LedgerId.fromString(ledgerId)\n : ledgerId;\n return this;\n }\n\n /**\n * @returns {LedgerId | null}\n */\n get ledgerId() {\n return this._ledgerId != null ? this._ledgerId : null;\n }\n\n /**\n * @abstract\n * @param {[string, KeyT]} entry\n * @returns {NetworkNodeT}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _createNodeFromNetworkEntry(entry) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @param {Map} network\n * @returns {number[]}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _getNodesToRemove(network) {\n throw new Error(\"not implemented\");\n }\n\n _removeDeadNodes() {\n if (this._maxNodeAttempts > 0) {\n for (let i = this._nodes.length - 1; i >= 0; i--) {\n const node = this._nodes[i];\n\n if (node._attempts < this._maxNodeAttempts) {\n continue;\n }\n\n this._closeNode(i);\n }\n }\n }\n\n /**\n * @param {number} count\n * @returns {NetworkNodeT[]}\n */\n _getNumberOfMostHealthyNodes(count) {\n this._removeDeadNodes();\n this._nodes.sort((a, b) => a.compare(b));\n\n for (const [, value] of this._network) {\n // eslint-disable-next-line ie11/no-loop-func\n value.sort((a, b) => a.compare(b));\n }\n\n /** @type {NetworkNodeT[]} */\n const nodes = [];\n const keys = new Set();\n\n for (const node of this._nodes) {\n if (keys.size >= count) {\n break;\n }\n\n if (!keys.has(node.getKey())) {\n nodes.push(node);\n }\n }\n\n return nodes;\n }\n\n /**\n * @param {number} i\n */\n _closeNode(i) {\n const node = this._nodes[i];\n\n node.close();\n this._removeNodeFromNetwork(node);\n this._nodes.splice(i, 1);\n }\n\n /**\n * @param {NetworkNodeT} node\n */\n _removeNodeFromNetwork(node) {\n const network = /** @type {NetworkNodeT[]} */ (\n this._network.get(node.getKey())\n );\n\n for (let j = 0; j < network.length; j++) {\n if (network[j] === node) {\n network.splice(j, 1);\n break;\n }\n }\n\n if (network.length === 0) {\n this._network.delete(node.getKey());\n }\n }\n\n /**\n * @param {Map} network\n * @returns {this}\n */\n _setNetwork(network) {\n // Remove nodes that are not in the new network\n for (const i of this._getNodesToRemove(network)) {\n this._closeNode(i);\n }\n\n // Add new nodes\n for (const [key, value] of network) {\n const node = this._createNodeFromNetworkEntry([key, value]);\n\n this._nodes.push(node);\n\n const network = this._network.has(node.getKey())\n ? /** @type {NetworkNodeT[]} */ (\n this._network.get(node.getKey())\n )\n : [];\n network.push(node);\n this._network.set(node.getKey(), network);\n }\n\n shuffle(this._nodes);\n for (const [, value] of this._network) {\n shuffle(value);\n }\n\n this._ledgerId = null;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get maxNodeAttempts() {\n return this._maxNodeAttempts;\n }\n\n /**\n * @param {number} maxNodeAttempts\n * @returns {this}\n */\n setMaxNodeAttempts(maxNodeAttempts) {\n this._maxNodeAttempts = maxNodeAttempts;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get minBackoff() {\n return this._minBackoff;\n }\n\n /**\n * @param {number} minBackoff\n * @returns {this}\n */\n setMinBackoff(minBackoff) {\n this._minBackoff = minBackoff;\n for (const node of this._nodes) {\n node.setMinBackoff(minBackoff);\n }\n return this;\n }\n\n /**\n * @param {KeyT} key\n * @returns {NetworkNodeT}\n */\n getNode(key) {\n return /** @type {NetworkNodeT[]} */ (\n this._network.get(key.toString())\n )[0];\n }\n\n close() {\n for (const node of this._nodes) {\n node.close();\n }\n\n this._network.clear();\n this._nodes = [];\n }\n}\n\n/**\n * https://stackoverflow.com/questions/2450954/how-to-randomize-shuffle-a-javascript-array\n *\n * @template T\n * @param {Array} array\n */\nfunction shuffle(array) {\n var currentIndex = array.length,\n temporaryValue,\n randomIndex;\n\n // While there remain elements to shuffle...\n while (0 !== currentIndex) {\n // Pick a remaining element...\n randomIndex = Math.floor(Math.random() * currentIndex);\n currentIndex -= 1;\n\n // And swap it with the current element.\n temporaryValue = array[currentIndex];\n array[currentIndex] = array[randomIndex];\n array[randomIndex] = temporaryValue;\n }\n}\n","const A = require(\"./array.js\");\n\nconst at = (bytes, index) => parseInt(bytes.slice(index * 2 + 2, index * 2 + 4), 16);\n\nconst random = bytes => {\n let rnd;\n if (typeof window !== \"undefined\" && window.crypto && window.crypto.getRandomValues) rnd = window.crypto.getRandomValues(new Uint8Array(bytes));else if (typeof require !== \"undefined\") rnd = require(\"c\" + \"rypto\").randomBytes(bytes);else throw \"Safe random numbers not available.\";\n let hex = \"0x\";\n for (let i = 0; i < bytes; ++i) hex += (\"00\" + rnd[i].toString(16)).slice(-2);\n return hex;\n};\n\nconst length = a => (a.length - 2) / 2;\n\nconst flatten = a => \"0x\" + a.reduce((r, s) => r + s.slice(2), \"\");\n\nconst slice = (i, j, bs) => \"0x\" + bs.slice(i * 2 + 2, j * 2 + 2);\n\nconst reverse = hex => {\n let rev = \"0x\";\n for (let i = 0, l = length(hex); i < l; ++i) {\n rev += hex.slice((l - i) * 2, (l - i + 1) * 2);\n }\n return rev;\n};\n\nconst pad = (l, hex) => hex.length === l * 2 + 2 ? hex : pad(l, \"0x\" + \"0\" + hex.slice(2));\n\nconst padRight = (l, hex) => hex.length === l * 2 + 2 ? hex : padRight(l, hex + \"0\");\n\nconst toArray = hex => {\n let arr = [];\n for (let i = 2, l = hex.length; i < l; i += 2) arr.push(parseInt(hex.slice(i, i + 2), 16));\n return arr;\n};\n\nconst fromArray = arr => {\n let hex = \"0x\";\n for (let i = 0, l = arr.length; i < l; ++i) {\n let b = arr[i];\n hex += (b < 16 ? \"0\" : \"\") + b.toString(16);\n }\n return hex;\n};\n\nconst toUint8Array = hex => new Uint8Array(toArray(hex));\n\nconst fromUint8Array = arr => fromArray([].slice.call(arr, 0));\n\nconst fromNumber = num => {\n let hex = num.toString(16);\n return hex.length % 2 === 0 ? \"0x\" + hex : \"0x0\" + hex;\n};\n\nconst toNumber = hex => parseInt(hex.slice(2), 16);\n\nconst concat = (a, b) => a.concat(b.slice(2));\n\nconst fromNat = bn => bn === \"0x0\" ? \"0x\" : bn.length % 2 === 0 ? bn : \"0x0\" + bn.slice(2);\n\nconst toNat = bn => bn[2] === \"0\" ? \"0x\" + bn.slice(3) : bn;\n\nconst fromAscii = ascii => {\n let hex = \"0x\";\n for (let i = 0; i < ascii.length; ++i) hex += (\"00\" + ascii.charCodeAt(i).toString(16)).slice(-2);\n return hex;\n};\n\nconst toAscii = hex => {\n let ascii = \"\";\n for (let i = 2; i < hex.length; i += 2) ascii += String.fromCharCode(parseInt(hex.slice(i, i + 2), 16));\n return ascii;\n};\n\n// From https://gist.github.com/pascaldekloe/62546103a1576803dade9269ccf76330\nconst fromString = s => {\n const makeByte = uint8 => {\n const b = uint8.toString(16);\n return b.length < 2 ? \"0\" + b : b;\n };\n let bytes = \"0x\";\n for (let ci = 0; ci != s.length; ci++) {\n let c = s.charCodeAt(ci);\n if (c < 128) {\n bytes += makeByte(c);\n continue;\n }\n if (c < 2048) {\n bytes += makeByte(c >> 6 | 192);\n } else {\n if (c > 0xd7ff && c < 0xdc00) {\n if (++ci == s.length) return null;\n let c2 = s.charCodeAt(ci);\n if (c2 < 0xdc00 || c2 > 0xdfff) return null;\n c = 0x10000 + ((c & 0x03ff) << 10) + (c2 & 0x03ff);\n bytes += makeByte(c >> 18 | 240);\n bytes += makeByte(c >> 12 & 63 | 128);\n } else {\n // c <= 0xffff\n bytes += makeByte(c >> 12 | 224);\n }\n bytes += makeByte(c >> 6 & 63 | 128);\n }\n bytes += makeByte(c & 63 | 128);\n }\n return bytes;\n};\n\nconst toString = bytes => {\n let s = '';\n let i = 0;\n let l = length(bytes);\n while (i < l) {\n let c = at(bytes, i++);\n if (c > 127) {\n if (c > 191 && c < 224) {\n if (i >= l) return null;\n c = (c & 31) << 6 | at(bytes, i) & 63;\n } else if (c > 223 && c < 240) {\n if (i + 1 >= l) return null;\n c = (c & 15) << 12 | (at(bytes, i) & 63) << 6 | at(bytes, ++i) & 63;\n } else if (c > 239 && c < 248) {\n if (i + 2 >= l) return null;\n c = (c & 7) << 18 | (at(bytes, i) & 63) << 12 | (at(bytes, ++i) & 63) << 6 | at(bytes, ++i) & 63;\n } else return null;\n ++i;\n }\n if (c <= 0xffff) s += String.fromCharCode(c);else if (c <= 0x10ffff) {\n c -= 0x10000;\n s += String.fromCharCode(c >> 10 | 0xd800);\n s += String.fromCharCode(c & 0x3FF | 0xdc00);\n } else return null;\n }\n return s;\n};\n\nmodule.exports = {\n random,\n length,\n concat,\n flatten,\n slice,\n reverse,\n pad,\n padRight,\n fromAscii,\n toAscii,\n fromString,\n toString,\n fromNumber,\n toNumber,\n fromNat,\n toNat,\n fromArray,\n toArray,\n fromUint8Array,\n toUint8Array\n};","'use strict'\nvar inherits = require('inherits')\nvar Legacy = require('./legacy')\nvar Base = require('cipher-base')\nvar Buffer = require('safe-buffer').Buffer\nvar md5 = require('create-hash/md5')\nvar RIPEMD160 = require('ripemd160')\n\nvar sha = require('sha.js')\n\nvar ZEROS = Buffer.alloc(128)\n\nfunction Hmac (alg, key) {\n Base.call(this, 'digest')\n if (typeof key === 'string') {\n key = Buffer.from(key)\n }\n\n var blocksize = (alg === 'sha512' || alg === 'sha384') ? 128 : 64\n\n this._alg = alg\n this._key = key\n if (key.length > blocksize) {\n var hash = alg === 'rmd160' ? new RIPEMD160() : sha(alg)\n key = hash.update(key).digest()\n } else if (key.length < blocksize) {\n key = Buffer.concat([key, ZEROS], blocksize)\n }\n\n var ipad = this._ipad = Buffer.allocUnsafe(blocksize)\n var opad = this._opad = Buffer.allocUnsafe(blocksize)\n\n for (var i = 0; i < blocksize; i++) {\n ipad[i] = key[i] ^ 0x36\n opad[i] = key[i] ^ 0x5C\n }\n this._hash = alg === 'rmd160' ? new RIPEMD160() : sha(alg)\n this._hash.update(ipad)\n}\n\ninherits(Hmac, Base)\n\nHmac.prototype._update = function (data) {\n this._hash.update(data)\n}\n\nHmac.prototype._final = function () {\n var h = this._hash.digest()\n var hash = this._alg === 'rmd160' ? new RIPEMD160() : sha(this._alg)\n return hash.update(this._opad).update(h).digest()\n}\n\nmodule.exports = function createHmac (alg, key) {\n alg = alg.toLowerCase()\n if (alg === 'rmd160' || alg === 'ripemd160') {\n return new Hmac('rmd160', key)\n }\n if (alg === 'md5') {\n return new Legacy(md5, key)\n }\n return new Hmac(alg, key)\n}\n","var MD5 = require('md5.js')\n\nmodule.exports = function (buffer) {\n return new MD5().update(buffer).digest()\n}\n","exports.pbkdf2 = require('./lib/async')\nexports.pbkdf2Sync = require('./lib/sync')\n","var MAX_ALLOC = Math.pow(2, 30) - 1 // default in iojs\n\nmodule.exports = function (iterations, keylen) {\n if (typeof iterations !== 'number') {\n throw new TypeError('Iterations not a number')\n }\n\n if (iterations < 0) {\n throw new TypeError('Bad iterations')\n }\n\n if (typeof keylen !== 'number') {\n throw new TypeError('Key length not a number')\n }\n\n if (keylen < 0 || keylen > MAX_ALLOC || keylen !== keylen) { /* eslint no-self-compare: 0 */\n throw new TypeError('Bad key length')\n }\n}\n","var defaultEncoding\n/* istanbul ignore next */\nif (global.process && global.process.browser) {\n defaultEncoding = 'utf-8'\n} else if (global.process && global.process.version) {\n var pVersionMajor = parseInt(process.version.split('.')[0].slice(1), 10)\n\n defaultEncoding = pVersionMajor >= 6 ? 'utf-8' : 'binary'\n} else {\n defaultEncoding = 'utf-8'\n}\nmodule.exports = defaultEncoding\n","var md5 = require('create-hash/md5')\nvar RIPEMD160 = require('ripemd160')\nvar sha = require('sha.js')\nvar Buffer = require('safe-buffer').Buffer\n\nvar checkParameters = require('./precondition')\nvar defaultEncoding = require('./default-encoding')\nvar toBuffer = require('./to-buffer')\n\nvar ZEROS = Buffer.alloc(128)\nvar sizes = {\n md5: 16,\n sha1: 20,\n sha224: 28,\n sha256: 32,\n sha384: 48,\n sha512: 64,\n rmd160: 20,\n ripemd160: 20\n}\n\nfunction Hmac (alg, key, saltLen) {\n var hash = getDigest(alg)\n var blocksize = (alg === 'sha512' || alg === 'sha384') ? 128 : 64\n\n if (key.length > blocksize) {\n key = hash(key)\n } else if (key.length < blocksize) {\n key = Buffer.concat([key, ZEROS], blocksize)\n }\n\n var ipad = Buffer.allocUnsafe(blocksize + sizes[alg])\n var opad = Buffer.allocUnsafe(blocksize + sizes[alg])\n for (var i = 0; i < blocksize; i++) {\n ipad[i] = key[i] ^ 0x36\n opad[i] = key[i] ^ 0x5C\n }\n\n var ipad1 = Buffer.allocUnsafe(blocksize + saltLen + 4)\n ipad.copy(ipad1, 0, 0, blocksize)\n this.ipad1 = ipad1\n this.ipad2 = ipad\n this.opad = opad\n this.alg = alg\n this.blocksize = blocksize\n this.hash = hash\n this.size = sizes[alg]\n}\n\nHmac.prototype.run = function (data, ipad) {\n data.copy(ipad, this.blocksize)\n var h = this.hash(ipad)\n h.copy(this.opad, this.blocksize)\n return this.hash(this.opad)\n}\n\nfunction getDigest (alg) {\n function shaFunc (data) {\n return sha(alg).update(data).digest()\n }\n function rmd160Func (data) {\n return new RIPEMD160().update(data).digest()\n }\n\n if (alg === 'rmd160' || alg === 'ripemd160') return rmd160Func\n if (alg === 'md5') return md5\n return shaFunc\n}\n\nfunction pbkdf2 (password, salt, iterations, keylen, digest) {\n checkParameters(iterations, keylen)\n password = toBuffer(password, defaultEncoding, 'Password')\n salt = toBuffer(salt, defaultEncoding, 'Salt')\n\n digest = digest || 'sha1'\n\n var hmac = new Hmac(digest, password, salt.length)\n\n var DK = Buffer.allocUnsafe(keylen)\n var block1 = Buffer.allocUnsafe(salt.length + 4)\n salt.copy(block1, 0, 0, salt.length)\n\n var destPos = 0\n var hLen = sizes[digest]\n var l = Math.ceil(keylen / hLen)\n\n for (var i = 1; i <= l; i++) {\n block1.writeUInt32BE(i, salt.length)\n\n var T = hmac.run(block1, hmac.ipad1)\n var U = T\n\n for (var j = 1; j < iterations; j++) {\n U = hmac.run(U, hmac.ipad2)\n for (var k = 0; k < hLen; k++) T[k] ^= U[k]\n }\n\n T.copy(DK, destPos)\n destPos += hLen\n }\n\n return DK\n}\n\nmodule.exports = pbkdf2\n","var Buffer = require('safe-buffer').Buffer\n\nmodule.exports = function (thing, encoding, name) {\n if (Buffer.isBuffer(thing)) {\n return thing\n } else if (typeof thing === 'string') {\n return Buffer.from(thing, encoding)\n } else if (ArrayBuffer.isView(thing)) {\n return Buffer.from(thing.buffer)\n } else {\n throw new TypeError(name + ' must be a string, a Buffer, a typed array or a DataView')\n }\n}\n","'use strict';\n\nexports.readUInt32BE = function readUInt32BE(bytes, off) {\n var res = (bytes[0 + off] << 24) |\n (bytes[1 + off] << 16) |\n (bytes[2 + off] << 8) |\n bytes[3 + off];\n return res >>> 0;\n};\n\nexports.writeUInt32BE = function writeUInt32BE(bytes, value, off) {\n bytes[0 + off] = value >>> 24;\n bytes[1 + off] = (value >>> 16) & 0xff;\n bytes[2 + off] = (value >>> 8) & 0xff;\n bytes[3 + off] = value & 0xff;\n};\n\nexports.ip = function ip(inL, inR, out, off) {\n var outL = 0;\n var outR = 0;\n\n for (var i = 6; i >= 0; i -= 2) {\n for (var j = 0; j <= 24; j += 8) {\n outL <<= 1;\n outL |= (inR >>> (j + i)) & 1;\n }\n for (var j = 0; j <= 24; j += 8) {\n outL <<= 1;\n outL |= (inL >>> (j + i)) & 1;\n }\n }\n\n for (var i = 6; i >= 0; i -= 2) {\n for (var j = 1; j <= 25; j += 8) {\n outR <<= 1;\n outR |= (inR >>> (j + i)) & 1;\n }\n for (var j = 1; j <= 25; j += 8) {\n outR <<= 1;\n outR |= (inL >>> (j + i)) & 1;\n }\n }\n\n out[off + 0] = outL >>> 0;\n out[off + 1] = outR >>> 0;\n};\n\nexports.rip = function rip(inL, inR, out, off) {\n var outL = 0;\n var outR = 0;\n\n for (var i = 0; i < 4; i++) {\n for (var j = 24; j >= 0; j -= 8) {\n outL <<= 1;\n outL |= (inR >>> (j + i)) & 1;\n outL <<= 1;\n outL |= (inL >>> (j + i)) & 1;\n }\n }\n for (var i = 4; i < 8; i++) {\n for (var j = 24; j >= 0; j -= 8) {\n outR <<= 1;\n outR |= (inR >>> (j + i)) & 1;\n outR <<= 1;\n outR |= (inL >>> (j + i)) & 1;\n }\n }\n\n out[off + 0] = outL >>> 0;\n out[off + 1] = outR >>> 0;\n};\n\nexports.pc1 = function pc1(inL, inR, out, off) {\n var outL = 0;\n var outR = 0;\n\n // 7, 15, 23, 31, 39, 47, 55, 63\n // 6, 14, 22, 30, 39, 47, 55, 63\n // 5, 13, 21, 29, 39, 47, 55, 63\n // 4, 12, 20, 28\n for (var i = 7; i >= 5; i--) {\n for (var j = 0; j <= 24; j += 8) {\n outL <<= 1;\n outL |= (inR >> (j + i)) & 1;\n }\n for (var j = 0; j <= 24; j += 8) {\n outL <<= 1;\n outL |= (inL >> (j + i)) & 1;\n }\n }\n for (var j = 0; j <= 24; j += 8) {\n outL <<= 1;\n outL |= (inR >> (j + i)) & 1;\n }\n\n // 1, 9, 17, 25, 33, 41, 49, 57\n // 2, 10, 18, 26, 34, 42, 50, 58\n // 3, 11, 19, 27, 35, 43, 51, 59\n // 36, 44, 52, 60\n for (var i = 1; i <= 3; i++) {\n for (var j = 0; j <= 24; j += 8) {\n outR <<= 1;\n outR |= (inR >> (j + i)) & 1;\n }\n for (var j = 0; j <= 24; j += 8) {\n outR <<= 1;\n outR |= (inL >> (j + i)) & 1;\n }\n }\n for (var j = 0; j <= 24; j += 8) {\n outR <<= 1;\n outR |= (inL >> (j + i)) & 1;\n }\n\n out[off + 0] = outL >>> 0;\n out[off + 1] = outR >>> 0;\n};\n\nexports.r28shl = function r28shl(num, shift) {\n return ((num << shift) & 0xfffffff) | (num >>> (28 - shift));\n};\n\nvar pc2table = [\n // inL => outL\n 14, 11, 17, 4, 27, 23, 25, 0,\n 13, 22, 7, 18, 5, 9, 16, 24,\n 2, 20, 12, 21, 1, 8, 15, 26,\n\n // inR => outR\n 15, 4, 25, 19, 9, 1, 26, 16,\n 5, 11, 23, 8, 12, 7, 17, 0,\n 22, 3, 10, 14, 6, 20, 27, 24\n];\n\nexports.pc2 = function pc2(inL, inR, out, off) {\n var outL = 0;\n var outR = 0;\n\n var len = pc2table.length >>> 1;\n for (var i = 0; i < len; i++) {\n outL <<= 1;\n outL |= (inL >>> pc2table[i]) & 0x1;\n }\n for (var i = len; i < pc2table.length; i++) {\n outR <<= 1;\n outR |= (inR >>> pc2table[i]) & 0x1;\n }\n\n out[off + 0] = outL >>> 0;\n out[off + 1] = outR >>> 0;\n};\n\nexports.expand = function expand(r, out, off) {\n var outL = 0;\n var outR = 0;\n\n outL = ((r & 1) << 5) | (r >>> 27);\n for (var i = 23; i >= 15; i -= 4) {\n outL <<= 6;\n outL |= (r >>> i) & 0x3f;\n }\n for (var i = 11; i >= 3; i -= 4) {\n outR |= (r >>> i) & 0x3f;\n outR <<= 6;\n }\n outR |= ((r & 0x1f) << 1) | (r >>> 31);\n\n out[off + 0] = outL >>> 0;\n out[off + 1] = outR >>> 0;\n};\n\nvar sTable = [\n 14, 0, 4, 15, 13, 7, 1, 4, 2, 14, 15, 2, 11, 13, 8, 1,\n 3, 10, 10, 6, 6, 12, 12, 11, 5, 9, 9, 5, 0, 3, 7, 8,\n 4, 15, 1, 12, 14, 8, 8, 2, 13, 4, 6, 9, 2, 1, 11, 7,\n 15, 5, 12, 11, 9, 3, 7, 14, 3, 10, 10, 0, 5, 6, 0, 13,\n\n 15, 3, 1, 13, 8, 4, 14, 7, 6, 15, 11, 2, 3, 8, 4, 14,\n 9, 12, 7, 0, 2, 1, 13, 10, 12, 6, 0, 9, 5, 11, 10, 5,\n 0, 13, 14, 8, 7, 10, 11, 1, 10, 3, 4, 15, 13, 4, 1, 2,\n 5, 11, 8, 6, 12, 7, 6, 12, 9, 0, 3, 5, 2, 14, 15, 9,\n\n 10, 13, 0, 7, 9, 0, 14, 9, 6, 3, 3, 4, 15, 6, 5, 10,\n 1, 2, 13, 8, 12, 5, 7, 14, 11, 12, 4, 11, 2, 15, 8, 1,\n 13, 1, 6, 10, 4, 13, 9, 0, 8, 6, 15, 9, 3, 8, 0, 7,\n 11, 4, 1, 15, 2, 14, 12, 3, 5, 11, 10, 5, 14, 2, 7, 12,\n\n 7, 13, 13, 8, 14, 11, 3, 5, 0, 6, 6, 15, 9, 0, 10, 3,\n 1, 4, 2, 7, 8, 2, 5, 12, 11, 1, 12, 10, 4, 14, 15, 9,\n 10, 3, 6, 15, 9, 0, 0, 6, 12, 10, 11, 1, 7, 13, 13, 8,\n 15, 9, 1, 4, 3, 5, 14, 11, 5, 12, 2, 7, 8, 2, 4, 14,\n\n 2, 14, 12, 11, 4, 2, 1, 12, 7, 4, 10, 7, 11, 13, 6, 1,\n 8, 5, 5, 0, 3, 15, 15, 10, 13, 3, 0, 9, 14, 8, 9, 6,\n 4, 11, 2, 8, 1, 12, 11, 7, 10, 1, 13, 14, 7, 2, 8, 13,\n 15, 6, 9, 15, 12, 0, 5, 9, 6, 10, 3, 4, 0, 5, 14, 3,\n\n 12, 10, 1, 15, 10, 4, 15, 2, 9, 7, 2, 12, 6, 9, 8, 5,\n 0, 6, 13, 1, 3, 13, 4, 14, 14, 0, 7, 11, 5, 3, 11, 8,\n 9, 4, 14, 3, 15, 2, 5, 12, 2, 9, 8, 5, 12, 15, 3, 10,\n 7, 11, 0, 14, 4, 1, 10, 7, 1, 6, 13, 0, 11, 8, 6, 13,\n\n 4, 13, 11, 0, 2, 11, 14, 7, 15, 4, 0, 9, 8, 1, 13, 10,\n 3, 14, 12, 3, 9, 5, 7, 12, 5, 2, 10, 15, 6, 8, 1, 6,\n 1, 6, 4, 11, 11, 13, 13, 8, 12, 1, 3, 4, 7, 10, 14, 7,\n 10, 9, 15, 5, 6, 0, 8, 15, 0, 14, 5, 2, 9, 3, 2, 12,\n\n 13, 1, 2, 15, 8, 13, 4, 8, 6, 10, 15, 3, 11, 7, 1, 4,\n 10, 12, 9, 5, 3, 6, 14, 11, 5, 0, 0, 14, 12, 9, 7, 2,\n 7, 2, 11, 1, 4, 14, 1, 7, 9, 4, 12, 10, 14, 8, 2, 13,\n 0, 15, 6, 12, 10, 9, 13, 0, 15, 3, 3, 5, 5, 6, 8, 11\n];\n\nexports.substitute = function substitute(inL, inR) {\n var out = 0;\n for (var i = 0; i < 4; i++) {\n var b = (inL >>> (18 - i * 6)) & 0x3f;\n var sb = sTable[i * 0x40 + b];\n\n out <<= 4;\n out |= sb;\n }\n for (var i = 0; i < 4; i++) {\n var b = (inR >>> (18 - i * 6)) & 0x3f;\n var sb = sTable[4 * 0x40 + i * 0x40 + b];\n\n out <<= 4;\n out |= sb;\n }\n return out >>> 0;\n};\n\nvar permuteTable = [\n 16, 25, 12, 11, 3, 20, 4, 15, 31, 17, 9, 6, 27, 14, 1, 22,\n 30, 24, 8, 18, 0, 5, 29, 23, 13, 19, 2, 26, 10, 21, 28, 7\n];\n\nexports.permute = function permute(num) {\n var out = 0;\n for (var i = 0; i < permuteTable.length; i++) {\n out <<= 1;\n out |= (num >>> permuteTable[i]) & 0x1;\n }\n return out >>> 0;\n};\n\nexports.padSplit = function padSplit(num, size, group) {\n var str = num.toString(2);\n while (str.length < size)\n str = '0' + str;\n\n var out = [];\n for (var i = 0; i < size; i += group)\n out.push(str.slice(i, i + group));\n return out.join(' ');\n};\n","'use strict';\n\nvar assert = require('minimalistic-assert');\nvar inherits = require('inherits');\n\nvar utils = require('./utils');\nvar Cipher = require('./cipher');\n\nfunction DESState() {\n this.tmp = new Array(2);\n this.keys = null;\n}\n\nfunction DES(options) {\n Cipher.call(this, options);\n\n var state = new DESState();\n this._desState = state;\n\n this.deriveKeys(state, options.key);\n}\ninherits(DES, Cipher);\nmodule.exports = DES;\n\nDES.create = function create(options) {\n return new DES(options);\n};\n\nvar shiftTable = [\n 1, 1, 2, 2, 2, 2, 2, 2,\n 1, 2, 2, 2, 2, 2, 2, 1\n];\n\nDES.prototype.deriveKeys = function deriveKeys(state, key) {\n state.keys = new Array(16 * 2);\n\n assert.equal(key.length, this.blockSize, 'Invalid key length');\n\n var kL = utils.readUInt32BE(key, 0);\n var kR = utils.readUInt32BE(key, 4);\n\n utils.pc1(kL, kR, state.tmp, 0);\n kL = state.tmp[0];\n kR = state.tmp[1];\n for (var i = 0; i < state.keys.length; i += 2) {\n var shift = shiftTable[i >>> 1];\n kL = utils.r28shl(kL, shift);\n kR = utils.r28shl(kR, shift);\n utils.pc2(kL, kR, state.keys, i);\n }\n};\n\nDES.prototype._update = function _update(inp, inOff, out, outOff) {\n var state = this._desState;\n\n var l = utils.readUInt32BE(inp, inOff);\n var r = utils.readUInt32BE(inp, inOff + 4);\n\n // Initial Permutation\n utils.ip(l, r, state.tmp, 0);\n l = state.tmp[0];\n r = state.tmp[1];\n\n if (this.type === 'encrypt')\n this._encrypt(state, l, r, state.tmp, 0);\n else\n this._decrypt(state, l, r, state.tmp, 0);\n\n l = state.tmp[0];\n r = state.tmp[1];\n\n utils.writeUInt32BE(out, l, outOff);\n utils.writeUInt32BE(out, r, outOff + 4);\n};\n\nDES.prototype._pad = function _pad(buffer, off) {\n var value = buffer.length - off;\n for (var i = off; i < buffer.length; i++)\n buffer[i] = value;\n\n return true;\n};\n\nDES.prototype._unpad = function _unpad(buffer) {\n var pad = buffer[buffer.length - 1];\n for (var i = buffer.length - pad; i < buffer.length; i++)\n assert.equal(buffer[i], pad);\n\n return buffer.slice(0, buffer.length - pad);\n};\n\nDES.prototype._encrypt = function _encrypt(state, lStart, rStart, out, off) {\n var l = lStart;\n var r = rStart;\n\n // Apply f() x16 times\n for (var i = 0; i < state.keys.length; i += 2) {\n var keyL = state.keys[i];\n var keyR = state.keys[i + 1];\n\n // f(r, k)\n utils.expand(r, state.tmp, 0);\n\n keyL ^= state.tmp[0];\n keyR ^= state.tmp[1];\n var s = utils.substitute(keyL, keyR);\n var f = utils.permute(s);\n\n var t = r;\n r = (l ^ f) >>> 0;\n l = t;\n }\n\n // Reverse Initial Permutation\n utils.rip(r, l, out, off);\n};\n\nDES.prototype._decrypt = function _decrypt(state, lStart, rStart, out, off) {\n var l = rStart;\n var r = lStart;\n\n // Apply f() x16 times\n for (var i = state.keys.length - 2; i >= 0; i -= 2) {\n var keyL = state.keys[i];\n var keyR = state.keys[i + 1];\n\n // f(r, k)\n utils.expand(l, state.tmp, 0);\n\n keyL ^= state.tmp[0];\n keyR ^= state.tmp[1];\n var s = utils.substitute(keyL, keyR);\n var f = utils.permute(s);\n\n var t = l;\n l = (r ^ f) >>> 0;\n r = t;\n }\n\n // Reverse Initial Permutation\n utils.rip(l, r, out, off);\n};\n","var xor = require('buffer-xor')\nvar Buffer = require('safe-buffer').Buffer\nvar incr32 = require('../incr32')\n\nfunction getBlock (self) {\n var out = self._cipher.encryptBlockRaw(self._prev)\n incr32(self._prev)\n return out\n}\n\nvar blockSize = 16\nexports.encrypt = function (self, chunk) {\n var chunkNum = Math.ceil(chunk.length / blockSize)\n var start = self._cache.length\n self._cache = Buffer.concat([\n self._cache,\n Buffer.allocUnsafe(chunkNum * blockSize)\n ])\n for (var i = 0; i < chunkNum; i++) {\n var out = getBlock(self)\n var offset = start + i * blockSize\n self._cache.writeUInt32BE(out[0], offset + 0)\n self._cache.writeUInt32BE(out[1], offset + 4)\n self._cache.writeUInt32BE(out[2], offset + 8)\n self._cache.writeUInt32BE(out[3], offset + 12)\n }\n var pad = self._cache.slice(0, chunk.length)\n self._cache = self._cache.slice(chunk.length)\n return xor(chunk, pad)\n}\n","function incr32 (iv) {\n var len = iv.length\n var item\n while (len--) {\n item = iv.readUInt8(len)\n if (item === 255) {\n iv.writeUInt8(0, len)\n } else {\n item++\n iv.writeUInt8(item, len)\n break\n }\n }\n}\nmodule.exports = incr32\n","var aes = require('./aes')\nvar Buffer = require('safe-buffer').Buffer\nvar Transform = require('cipher-base')\nvar inherits = require('inherits')\nvar GHASH = require('./ghash')\nvar xor = require('buffer-xor')\nvar incr32 = require('./incr32')\n\nfunction xorTest (a, b) {\n var out = 0\n if (a.length !== b.length) out++\n\n var len = Math.min(a.length, b.length)\n for (var i = 0; i < len; ++i) {\n out += (a[i] ^ b[i])\n }\n\n return out\n}\n\nfunction calcIv (self, iv, ck) {\n if (iv.length === 12) {\n self._finID = Buffer.concat([iv, Buffer.from([0, 0, 0, 1])])\n return Buffer.concat([iv, Buffer.from([0, 0, 0, 2])])\n }\n var ghash = new GHASH(ck)\n var len = iv.length\n var toPad = len % 16\n ghash.update(iv)\n if (toPad) {\n toPad = 16 - toPad\n ghash.update(Buffer.alloc(toPad, 0))\n }\n ghash.update(Buffer.alloc(8, 0))\n var ivBits = len * 8\n var tail = Buffer.alloc(8)\n tail.writeUIntBE(ivBits, 0, 8)\n ghash.update(tail)\n self._finID = ghash.state\n var out = Buffer.from(self._finID)\n incr32(out)\n return out\n}\nfunction StreamCipher (mode, key, iv, decrypt) {\n Transform.call(this)\n\n var h = Buffer.alloc(4, 0)\n\n this._cipher = new aes.AES(key)\n var ck = this._cipher.encryptBlock(h)\n this._ghash = new GHASH(ck)\n iv = calcIv(this, iv, ck)\n\n this._prev = Buffer.from(iv)\n this._cache = Buffer.allocUnsafe(0)\n this._secCache = Buffer.allocUnsafe(0)\n this._decrypt = decrypt\n this._alen = 0\n this._len = 0\n this._mode = mode\n\n this._authTag = null\n this._called = false\n}\n\ninherits(StreamCipher, Transform)\n\nStreamCipher.prototype._update = function (chunk) {\n if (!this._called && this._alen) {\n var rump = 16 - (this._alen % 16)\n if (rump < 16) {\n rump = Buffer.alloc(rump, 0)\n this._ghash.update(rump)\n }\n }\n\n this._called = true\n var out = this._mode.encrypt(this, chunk)\n if (this._decrypt) {\n this._ghash.update(chunk)\n } else {\n this._ghash.update(out)\n }\n this._len += chunk.length\n return out\n}\n\nStreamCipher.prototype._final = function () {\n if (this._decrypt && !this._authTag) throw new Error('Unsupported state or unable to authenticate data')\n\n var tag = xor(this._ghash.final(this._alen * 8, this._len * 8), this._cipher.encryptBlock(this._finID))\n if (this._decrypt && xorTest(tag, this._authTag)) throw new Error('Unsupported state or unable to authenticate data')\n\n this._authTag = tag\n this._cipher.scrub()\n}\n\nStreamCipher.prototype.getAuthTag = function getAuthTag () {\n if (this._decrypt || !Buffer.isBuffer(this._authTag)) throw new Error('Attempting to get auth tag in unsupported state')\n\n return this._authTag\n}\n\nStreamCipher.prototype.setAuthTag = function setAuthTag (tag) {\n if (!this._decrypt) throw new Error('Attempting to set auth tag in unsupported state')\n\n this._authTag = tag\n}\n\nStreamCipher.prototype.setAAD = function setAAD (buf) {\n if (this._called) throw new Error('Attempting to set AAD in unsupported state')\n\n this._ghash.update(buf)\n this._alen += buf.length\n}\n\nmodule.exports = StreamCipher\n","var aes = require('./aes')\nvar Buffer = require('safe-buffer').Buffer\nvar Transform = require('cipher-base')\nvar inherits = require('inherits')\n\nfunction StreamCipher (mode, key, iv, decrypt) {\n Transform.call(this)\n\n this._cipher = new aes.AES(key)\n this._prev = Buffer.from(iv)\n this._cache = Buffer.allocUnsafe(0)\n this._secCache = Buffer.allocUnsafe(0)\n this._decrypt = decrypt\n this._mode = mode\n}\n\ninherits(StreamCipher, Transform)\n\nStreamCipher.prototype._update = function (chunk) {\n return this._mode.encrypt(this, chunk, this._decrypt)\n}\n\nStreamCipher.prototype._final = function () {\n this._cipher.scrub()\n}\n\nmodule.exports = StreamCipher\n","var randomBytes = require('randombytes');\nmodule.exports = findPrime;\nfindPrime.simpleSieve = simpleSieve;\nfindPrime.fermatTest = fermatTest;\nvar BN = require('bn.js');\nvar TWENTYFOUR = new BN(24);\nvar MillerRabin = require('miller-rabin');\nvar millerRabin = new MillerRabin();\nvar ONE = new BN(1);\nvar TWO = new BN(2);\nvar FIVE = new BN(5);\nvar SIXTEEN = new BN(16);\nvar EIGHT = new BN(8);\nvar TEN = new BN(10);\nvar THREE = new BN(3);\nvar SEVEN = new BN(7);\nvar ELEVEN = new BN(11);\nvar FOUR = new BN(4);\nvar TWELVE = new BN(12);\nvar primes = null;\n\nfunction _getPrimes() {\n if (primes !== null)\n return primes;\n\n var limit = 0x100000;\n var res = [];\n res[0] = 2;\n for (var i = 1, k = 3; k < limit; k += 2) {\n var sqrt = Math.ceil(Math.sqrt(k));\n for (var j = 0; j < i && res[j] <= sqrt; j++)\n if (k % res[j] === 0)\n break;\n\n if (i !== j && res[j] <= sqrt)\n continue;\n\n res[i++] = k;\n }\n primes = res;\n return res;\n}\n\nfunction simpleSieve(p) {\n var primes = _getPrimes();\n\n for (var i = 0; i < primes.length; i++)\n if (p.modn(primes[i]) === 0) {\n if (p.cmpn(primes[i]) === 0) {\n return true;\n } else {\n return false;\n }\n }\n\n return true;\n}\n\nfunction fermatTest(p) {\n var red = BN.mont(p);\n return TWO.toRed(red).redPow(p.subn(1)).fromRed().cmpn(1) === 0;\n}\n\nfunction findPrime(bits, gen) {\n if (bits < 16) {\n // this is what openssl does\n if (gen === 2 || gen === 5) {\n return new BN([0x8c, 0x7b]);\n } else {\n return new BN([0x8c, 0x27]);\n }\n }\n gen = new BN(gen);\n\n var num, n2;\n\n while (true) {\n num = new BN(randomBytes(Math.ceil(bits / 8)));\n while (num.bitLength() > bits) {\n num.ishrn(1);\n }\n if (num.isEven()) {\n num.iadd(ONE);\n }\n if (!num.testn(1)) {\n num.iadd(TWO);\n }\n if (!gen.cmp(TWO)) {\n while (num.mod(TWENTYFOUR).cmp(ELEVEN)) {\n num.iadd(FOUR);\n }\n } else if (!gen.cmp(FIVE)) {\n while (num.mod(TEN).cmp(THREE)) {\n num.iadd(FOUR);\n }\n }\n n2 = num.shrn(1);\n if (simpleSieve(n2) && simpleSieve(num) &&\n fermatTest(n2) && fermatTest(num) &&\n millerRabin.test(n2) && millerRabin.test(num)) {\n return num;\n }\n }\n\n}\n","var bn = require('bn.js');\nvar brorand = require('brorand');\n\nfunction MillerRabin(rand) {\n this.rand = rand || new brorand.Rand();\n}\nmodule.exports = MillerRabin;\n\nMillerRabin.create = function create(rand) {\n return new MillerRabin(rand);\n};\n\nMillerRabin.prototype._randbelow = function _randbelow(n) {\n var len = n.bitLength();\n var min_bytes = Math.ceil(len / 8);\n\n // Generage random bytes until a number less than n is found.\n // This ensures that 0..n-1 have an equal probability of being selected.\n do\n var a = new bn(this.rand.generate(min_bytes));\n while (a.cmp(n) >= 0);\n\n return a;\n};\n\nMillerRabin.prototype._randrange = function _randrange(start, stop) {\n // Generate a random number greater than or equal to start and less than stop.\n var size = stop.sub(start);\n return start.add(this._randbelow(size));\n};\n\nMillerRabin.prototype.test = function test(n, k, cb) {\n var len = n.bitLength();\n var red = bn.mont(n);\n var rone = new bn(1).toRed(red);\n\n if (!k)\n k = Math.max(1, (len / 48) | 0);\n\n // Find d and s, (n - 1) = (2 ^ s) * d;\n var n1 = n.subn(1);\n for (var s = 0; !n1.testn(s); s++) {}\n var d = n.shrn(s);\n\n var rn1 = n1.toRed(red);\n\n var prime = true;\n for (; k > 0; k--) {\n var a = this._randrange(new bn(2), n1);\n if (cb)\n cb(a);\n\n var x = a.toRed(red).redPow(d);\n if (x.cmp(rone) === 0 || x.cmp(rn1) === 0)\n continue;\n\n for (var i = 1; i < s; i++) {\n x = x.redSqr();\n\n if (x.cmp(rone) === 0)\n return false;\n if (x.cmp(rn1) === 0)\n break;\n }\n\n if (i === s)\n return false;\n }\n\n return prime;\n};\n\nMillerRabin.prototype.getDivisor = function getDivisor(n, k) {\n var len = n.bitLength();\n var red = bn.mont(n);\n var rone = new bn(1).toRed(red);\n\n if (!k)\n k = Math.max(1, (len / 48) | 0);\n\n // Find d and s, (n - 1) = (2 ^ s) * d;\n var n1 = n.subn(1);\n for (var s = 0; !n1.testn(s); s++) {}\n var d = n.shrn(s);\n\n var rn1 = n1.toRed(red);\n\n for (; k > 0; k--) {\n var a = this._randrange(new bn(2), n1);\n\n var g = n.gcd(a);\n if (g.cmpn(1) !== 0)\n return g;\n\n var x = a.toRed(red).redPow(d);\n if (x.cmp(rone) === 0 || x.cmp(rn1) === 0)\n continue;\n\n for (var i = 1; i < s; i++) {\n x = x.redSqr();\n\n if (x.cmp(rone) === 0)\n return x.fromRed().subn(1).gcd(n);\n if (x.cmp(rn1) === 0)\n break;\n }\n\n if (i === s) {\n x = x.redSqr();\n return x.fromRed().subn(1).gcd(n);\n }\n }\n\n return false;\n};\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n'use strict';\n\nmodule.exports = Readable;\n/**/\n\nvar Duplex;\n/**/\n\nReadable.ReadableState = ReadableState;\n/**/\n\nvar EE = require('events').EventEmitter;\n\nvar EElistenerCount = function EElistenerCount(emitter, type) {\n return emitter.listeners(type).length;\n};\n/**/\n\n/**/\n\n\nvar Stream = require('./internal/streams/stream');\n/**/\n\n\nvar Buffer = require('buffer').Buffer;\n\nvar OurUint8Array = global.Uint8Array || function () {};\n\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\n\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n/**/\n\n\nvar debugUtil = require('util');\n\nvar debug;\n\nif (debugUtil && debugUtil.debuglog) {\n debug = debugUtil.debuglog('stream');\n} else {\n debug = function debug() {};\n}\n/**/\n\n\nvar BufferList = require('./internal/streams/buffer_list');\n\nvar destroyImpl = require('./internal/streams/destroy');\n\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\n\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_STREAM_UNSHIFT_AFTER_END_EVENT = _require$codes.ERR_STREAM_UNSHIFT_AFTER_END_EVENT; // Lazy loaded to improve the startup performance.\n\n\nvar StringDecoder;\nvar createReadableStreamAsyncIterator;\nvar from;\n\nrequire('inherits')(Readable, Stream);\n\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\nvar kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];\n\nfunction prependListener(emitter, event, fn) {\n // Sadly this is not cacheable as some libraries bundle their own\n // event emitter implementation with them.\n if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn); // This is a hack to make sure that our error handler is attached before any\n // userland ones. NEVER DO THIS. This is here only because this code needs\n // to continue to work with older versions of Node.js that do not include\n // the prependListener() method. The goal is to eventually remove this hack.\n\n if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];\n}\n\nfunction ReadableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {}; // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream.\n // These options can be provided separately as readableXXX and writableXXX.\n\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag. Used to make read(n) ignore n and to\n // make all the buffer merging and length checks go away\n\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode; // the point at which it stops calling _read() to fill the buffer\n // Note: 0 is a valid value, means \"don't call _read preemptively ever\"\n\n this.highWaterMark = getHighWaterMark(this, options, 'readableHighWaterMark', isDuplex); // A linked list is used to store data chunks instead of an array because the\n // linked list can remove elements from the beginning faster than\n // array.shift()\n\n this.buffer = new BufferList();\n this.length = 0;\n this.pipes = null;\n this.pipesCount = 0;\n this.flowing = null;\n this.ended = false;\n this.endEmitted = false;\n this.reading = false; // a flag to be able to tell if the event 'readable'/'data' is emitted\n // immediately, or on a later tick. We set this to true at first, because\n // any actions that shouldn't happen until \"later\" should generally also\n // not happen before the first read call.\n\n this.sync = true; // whenever we return null, then we set a flag to say\n // that we're awaiting a 'readable' event emission.\n\n this.needReadable = false;\n this.emittedReadable = false;\n this.readableListening = false;\n this.resumeScheduled = false;\n this.paused = true; // Should close be emitted on destroy. Defaults to true.\n\n this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'end' (and potentially 'finish')\n\n this.autoDestroy = !!options.autoDestroy; // has it been destroyed\n\n this.destroyed = false; // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n\n this.defaultEncoding = options.defaultEncoding || 'utf8'; // the number of writers that are awaiting a drain event in .pipe()s\n\n this.awaitDrain = 0; // if true, a maybeReadMore has been scheduled\n\n this.readingMore = false;\n this.decoder = null;\n this.encoding = null;\n\n if (options.encoding) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n this.decoder = new StringDecoder(options.encoding);\n this.encoding = options.encoding;\n }\n}\n\nfunction Readable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n if (!(this instanceof Readable)) return new Readable(options); // Checking for a Stream.Duplex instance is faster here instead of inside\n // the ReadableState constructor, at least with V8 6.5\n\n var isDuplex = this instanceof Duplex;\n this._readableState = new ReadableState(options, this, isDuplex); // legacy\n\n this.readable = true;\n\n if (options) {\n if (typeof options.read === 'function') this._read = options.read;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n }\n\n Stream.call(this);\n}\n\nObject.defineProperty(Readable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined) {\n return false;\n }\n\n return this._readableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._readableState) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._readableState.destroyed = value;\n }\n});\nReadable.prototype.destroy = destroyImpl.destroy;\nReadable.prototype._undestroy = destroyImpl.undestroy;\n\nReadable.prototype._destroy = function (err, cb) {\n cb(err);\n}; // Manually shove something into the read() buffer.\n// This returns true if the highWaterMark has not been hit yet,\n// similar to how Writable.write() returns true if you should\n// write() some more.\n\n\nReadable.prototype.push = function (chunk, encoding) {\n var state = this._readableState;\n var skipChunkCheck;\n\n if (!state.objectMode) {\n if (typeof chunk === 'string') {\n encoding = encoding || state.defaultEncoding;\n\n if (encoding !== state.encoding) {\n chunk = Buffer.from(chunk, encoding);\n encoding = '';\n }\n\n skipChunkCheck = true;\n }\n } else {\n skipChunkCheck = true;\n }\n\n return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);\n}; // Unshift should *always* be something directly out of read()\n\n\nReadable.prototype.unshift = function (chunk) {\n return readableAddChunk(this, chunk, null, true, false);\n};\n\nfunction readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {\n debug('readableAddChunk', chunk);\n var state = stream._readableState;\n\n if (chunk === null) {\n state.reading = false;\n onEofChunk(stream, state);\n } else {\n var er;\n if (!skipChunkCheck) er = chunkInvalid(state, chunk);\n\n if (er) {\n errorOrDestroy(stream, er);\n } else if (state.objectMode || chunk && chunk.length > 0) {\n if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (addToFront) {\n if (state.endEmitted) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT());else addChunk(stream, state, chunk, true);\n } else if (state.ended) {\n errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF());\n } else if (state.destroyed) {\n return false;\n } else {\n state.reading = false;\n\n if (state.decoder && !encoding) {\n chunk = state.decoder.write(chunk);\n if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);\n } else {\n addChunk(stream, state, chunk, false);\n }\n }\n } else if (!addToFront) {\n state.reading = false;\n maybeReadMore(stream, state);\n }\n } // We can push more data if we are below the highWaterMark.\n // Also, if we have no data yet, we can stand some more bytes.\n // This is to work around cases where hwm=0, such as the repl.\n\n\n return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n}\n\nfunction addChunk(stream, state, chunk, addToFront) {\n if (state.flowing && state.length === 0 && !state.sync) {\n state.awaitDrain = 0;\n stream.emit('data', chunk);\n } else {\n // update the buffer info.\n state.length += state.objectMode ? 1 : chunk.length;\n if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);\n if (state.needReadable) emitReadable(stream);\n }\n\n maybeReadMore(stream, state);\n}\n\nfunction chunkInvalid(state, chunk) {\n var er;\n\n if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer', 'Uint8Array'], chunk);\n }\n\n return er;\n}\n\nReadable.prototype.isPaused = function () {\n return this._readableState.flowing === false;\n}; // backwards compatibility.\n\n\nReadable.prototype.setEncoding = function (enc) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n var decoder = new StringDecoder(enc);\n this._readableState.decoder = decoder; // If setEncoding(null), decoder.encoding equals utf8\n\n this._readableState.encoding = this._readableState.decoder.encoding; // Iterate over current buffer to convert already stored Buffers:\n\n var p = this._readableState.buffer.head;\n var content = '';\n\n while (p !== null) {\n content += decoder.write(p.data);\n p = p.next;\n }\n\n this._readableState.buffer.clear();\n\n if (content !== '') this._readableState.buffer.push(content);\n this._readableState.length = content.length;\n return this;\n}; // Don't raise the hwm > 1GB\n\n\nvar MAX_HWM = 0x40000000;\n\nfunction computeNewHighWaterMark(n) {\n if (n >= MAX_HWM) {\n // TODO(ronag): Throw ERR_VALUE_OUT_OF_RANGE.\n n = MAX_HWM;\n } else {\n // Get the next highest power of 2 to prevent increasing hwm excessively in\n // tiny amounts\n n--;\n n |= n >>> 1;\n n |= n >>> 2;\n n |= n >>> 4;\n n |= n >>> 8;\n n |= n >>> 16;\n n++;\n }\n\n return n;\n} // This function is designed to be inlinable, so please take care when making\n// changes to the function body.\n\n\nfunction howMuchToRead(n, state) {\n if (n <= 0 || state.length === 0 && state.ended) return 0;\n if (state.objectMode) return 1;\n\n if (n !== n) {\n // Only flow one buffer at a time\n if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;\n } // If we're asking for more than the current hwm, then raise the hwm.\n\n\n if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);\n if (n <= state.length) return n; // Don't have enough\n\n if (!state.ended) {\n state.needReadable = true;\n return 0;\n }\n\n return state.length;\n} // you can override either this method, or the async _read(n) below.\n\n\nReadable.prototype.read = function (n) {\n debug('read', n);\n n = parseInt(n, 10);\n var state = this._readableState;\n var nOrig = n;\n if (n !== 0) state.emittedReadable = false; // if we're doing read(0) to trigger a readable event, but we\n // already have a bunch of data in the buffer, then just trigger\n // the 'readable' event and move on.\n\n if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n debug('read: emitReadable', state.length, state.ended);\n if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);\n return null;\n }\n\n n = howMuchToRead(n, state); // if we've ended, and we're now clear, then finish it up.\n\n if (n === 0 && state.ended) {\n if (state.length === 0) endReadable(this);\n return null;\n } // All the actual chunk generation logic needs to be\n // *below* the call to _read. The reason is that in certain\n // synthetic stream cases, such as passthrough streams, _read\n // may be a completely synchronous operation which may change\n // the state of the read buffer, providing enough data when\n // before there was *not* enough.\n //\n // So, the steps are:\n // 1. Figure out what the state of things will be after we do\n // a read from the buffer.\n //\n // 2. If that resulting state will trigger a _read, then call _read.\n // Note that this may be asynchronous, or synchronous. Yes, it is\n // deeply ugly to write APIs this way, but that still doesn't mean\n // that the Readable class should behave improperly, as streams are\n // designed to be sync/async agnostic.\n // Take note if the _read call is sync or async (ie, if the read call\n // has returned yet), so that we know whether or not it's safe to emit\n // 'readable' etc.\n //\n // 3. Actually pull the requested chunks out of the buffer and return.\n // if we need a readable event, then we need to do some reading.\n\n\n var doRead = state.needReadable;\n debug('need readable', doRead); // if we currently have less than the highWaterMark, then also read some\n\n if (state.length === 0 || state.length - n < state.highWaterMark) {\n doRead = true;\n debug('length less than watermark', doRead);\n } // however, if we've ended, then there's no point, and if we're already\n // reading, then it's unnecessary.\n\n\n if (state.ended || state.reading) {\n doRead = false;\n debug('reading or ended', doRead);\n } else if (doRead) {\n debug('do read');\n state.reading = true;\n state.sync = true; // if the length is currently zero, then we *need* a readable event.\n\n if (state.length === 0) state.needReadable = true; // call internal read method\n\n this._read(state.highWaterMark);\n\n state.sync = false; // If _read pushed data synchronously, then `reading` will be false,\n // and we need to re-evaluate how much data we can return to the user.\n\n if (!state.reading) n = howMuchToRead(nOrig, state);\n }\n\n var ret;\n if (n > 0) ret = fromList(n, state);else ret = null;\n\n if (ret === null) {\n state.needReadable = state.length <= state.highWaterMark;\n n = 0;\n } else {\n state.length -= n;\n state.awaitDrain = 0;\n }\n\n if (state.length === 0) {\n // If we have nothing in the buffer, then we want to know\n // as soon as we *do* get something into the buffer.\n if (!state.ended) state.needReadable = true; // If we tried to read() past the EOF, then emit end on the next tick.\n\n if (nOrig !== n && state.ended) endReadable(this);\n }\n\n if (ret !== null) this.emit('data', ret);\n return ret;\n};\n\nfunction onEofChunk(stream, state) {\n debug('onEofChunk');\n if (state.ended) return;\n\n if (state.decoder) {\n var chunk = state.decoder.end();\n\n if (chunk && chunk.length) {\n state.buffer.push(chunk);\n state.length += state.objectMode ? 1 : chunk.length;\n }\n }\n\n state.ended = true;\n\n if (state.sync) {\n // if we are sync, wait until next tick to emit the data.\n // Otherwise we risk emitting data in the flow()\n // the readable code triggers during a read() call\n emitReadable(stream);\n } else {\n // emit 'readable' now to make sure it gets picked up.\n state.needReadable = false;\n\n if (!state.emittedReadable) {\n state.emittedReadable = true;\n emitReadable_(stream);\n }\n }\n} // Don't emit readable right away in sync mode, because this can trigger\n// another read() call => stack overflow. This way, it might trigger\n// a nextTick recursion warning, but that's not so bad.\n\n\nfunction emitReadable(stream) {\n var state = stream._readableState;\n debug('emitReadable', state.needReadable, state.emittedReadable);\n state.needReadable = false;\n\n if (!state.emittedReadable) {\n debug('emitReadable', state.flowing);\n state.emittedReadable = true;\n process.nextTick(emitReadable_, stream);\n }\n}\n\nfunction emitReadable_(stream) {\n var state = stream._readableState;\n debug('emitReadable_', state.destroyed, state.length, state.ended);\n\n if (!state.destroyed && (state.length || state.ended)) {\n stream.emit('readable');\n state.emittedReadable = false;\n } // The stream needs another readable event if\n // 1. It is not flowing, as the flow mechanism will take\n // care of it.\n // 2. It is not ended.\n // 3. It is below the highWaterMark, so we can schedule\n // another readable later.\n\n\n state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark;\n flow(stream);\n} // at this point, the user has presumably seen the 'readable' event,\n// and called read() to consume some data. that may have triggered\n// in turn another _read(n) call, in which case reading = true if\n// it's in progress.\n// However, if we're not ended, or reading, and the length < hwm,\n// then go ahead and try to read some more preemptively.\n\n\nfunction maybeReadMore(stream, state) {\n if (!state.readingMore) {\n state.readingMore = true;\n process.nextTick(maybeReadMore_, stream, state);\n }\n}\n\nfunction maybeReadMore_(stream, state) {\n // Attempt to read more data if we should.\n //\n // The conditions for reading more data are (one of):\n // - Not enough data buffered (state.length < state.highWaterMark). The loop\n // is responsible for filling the buffer with enough data if such data\n // is available. If highWaterMark is 0 and we are not in the flowing mode\n // we should _not_ attempt to buffer any extra data. We'll get more data\n // when the stream consumer calls read() instead.\n // - No data in the buffer, and the stream is in flowing mode. In this mode\n // the loop below is responsible for ensuring read() is called. Failing to\n // call read here would abort the flow and there's no other mechanism for\n // continuing the flow if the stream consumer has just subscribed to the\n // 'data' event.\n //\n // In addition to the above conditions to keep reading data, the following\n // conditions prevent the data from being read:\n // - The stream has ended (state.ended).\n // - There is already a pending 'read' operation (state.reading). This is a\n // case where the the stream has called the implementation defined _read()\n // method, but they are processing the call asynchronously and have _not_\n // called push() with new data. In this case we skip performing more\n // read()s. The execution ends in this method again after the _read() ends\n // up calling push() with more data.\n while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) {\n var len = state.length;\n debug('maybeReadMore read 0');\n stream.read(0);\n if (len === state.length) // didn't get any data, stop spinning.\n break;\n }\n\n state.readingMore = false;\n} // abstract method. to be overridden in specific implementation classes.\n// call cb(er, data) where data is <= n in length.\n// for virtual (non-string, non-buffer) streams, \"length\" is somewhat\n// arbitrary, and perhaps not very meaningful.\n\n\nReadable.prototype._read = function (n) {\n errorOrDestroy(this, new ERR_METHOD_NOT_IMPLEMENTED('_read()'));\n};\n\nReadable.prototype.pipe = function (dest, pipeOpts) {\n var src = this;\n var state = this._readableState;\n\n switch (state.pipesCount) {\n case 0:\n state.pipes = dest;\n break;\n\n case 1:\n state.pipes = [state.pipes, dest];\n break;\n\n default:\n state.pipes.push(dest);\n break;\n }\n\n state.pipesCount += 1;\n debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);\n var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;\n var endFn = doEnd ? onend : unpipe;\n if (state.endEmitted) process.nextTick(endFn);else src.once('end', endFn);\n dest.on('unpipe', onunpipe);\n\n function onunpipe(readable, unpipeInfo) {\n debug('onunpipe');\n\n if (readable === src) {\n if (unpipeInfo && unpipeInfo.hasUnpiped === false) {\n unpipeInfo.hasUnpiped = true;\n cleanup();\n }\n }\n }\n\n function onend() {\n debug('onend');\n dest.end();\n } // when the dest drains, it reduces the awaitDrain counter\n // on the source. This would be more elegant with a .once()\n // handler in flow(), but adding and removing repeatedly is\n // too slow.\n\n\n var ondrain = pipeOnDrain(src);\n dest.on('drain', ondrain);\n var cleanedUp = false;\n\n function cleanup() {\n debug('cleanup'); // cleanup event handlers once the pipe is broken\n\n dest.removeListener('close', onclose);\n dest.removeListener('finish', onfinish);\n dest.removeListener('drain', ondrain);\n dest.removeListener('error', onerror);\n dest.removeListener('unpipe', onunpipe);\n src.removeListener('end', onend);\n src.removeListener('end', unpipe);\n src.removeListener('data', ondata);\n cleanedUp = true; // if the reader is waiting for a drain event from this\n // specific writer, then it would cause it to never start\n // flowing again.\n // So, if this is awaiting a drain, then we just call it now.\n // If we don't know, then assume that we are waiting for one.\n\n if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();\n }\n\n src.on('data', ondata);\n\n function ondata(chunk) {\n debug('ondata');\n var ret = dest.write(chunk);\n debug('dest.write', ret);\n\n if (ret === false) {\n // If the user unpiped during `dest.write()`, it is possible\n // to get stuck in a permanently paused state if that write\n // also returned false.\n // => Check whether `dest` is still a piping destination.\n if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {\n debug('false write response, pause', state.awaitDrain);\n state.awaitDrain++;\n }\n\n src.pause();\n }\n } // if the dest has an error, then stop piping into it.\n // however, don't suppress the throwing behavior for this.\n\n\n function onerror(er) {\n debug('onerror', er);\n unpipe();\n dest.removeListener('error', onerror);\n if (EElistenerCount(dest, 'error') === 0) errorOrDestroy(dest, er);\n } // Make sure our error handler is attached before userland ones.\n\n\n prependListener(dest, 'error', onerror); // Both close and finish should trigger unpipe, but only once.\n\n function onclose() {\n dest.removeListener('finish', onfinish);\n unpipe();\n }\n\n dest.once('close', onclose);\n\n function onfinish() {\n debug('onfinish');\n dest.removeListener('close', onclose);\n unpipe();\n }\n\n dest.once('finish', onfinish);\n\n function unpipe() {\n debug('unpipe');\n src.unpipe(dest);\n } // tell the dest that it's being piped to\n\n\n dest.emit('pipe', src); // start the flow if it hasn't been started already.\n\n if (!state.flowing) {\n debug('pipe resume');\n src.resume();\n }\n\n return dest;\n};\n\nfunction pipeOnDrain(src) {\n return function pipeOnDrainFunctionResult() {\n var state = src._readableState;\n debug('pipeOnDrain', state.awaitDrain);\n if (state.awaitDrain) state.awaitDrain--;\n\n if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {\n state.flowing = true;\n flow(src);\n }\n };\n}\n\nReadable.prototype.unpipe = function (dest) {\n var state = this._readableState;\n var unpipeInfo = {\n hasUnpiped: false\n }; // if we're not piping anywhere, then do nothing.\n\n if (state.pipesCount === 0) return this; // just one destination. most common case.\n\n if (state.pipesCount === 1) {\n // passed in one, but it's not the right one.\n if (dest && dest !== state.pipes) return this;\n if (!dest) dest = state.pipes; // got a match.\n\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n if (dest) dest.emit('unpipe', this, unpipeInfo);\n return this;\n } // slow case. multiple pipe destinations.\n\n\n if (!dest) {\n // remove all.\n var dests = state.pipes;\n var len = state.pipesCount;\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n\n for (var i = 0; i < len; i++) {\n dests[i].emit('unpipe', this, {\n hasUnpiped: false\n });\n }\n\n return this;\n } // try to find the right one.\n\n\n var index = indexOf(state.pipes, dest);\n if (index === -1) return this;\n state.pipes.splice(index, 1);\n state.pipesCount -= 1;\n if (state.pipesCount === 1) state.pipes = state.pipes[0];\n dest.emit('unpipe', this, unpipeInfo);\n return this;\n}; // set up data events if they are asked for\n// Ensure readable listeners eventually get something\n\n\nReadable.prototype.on = function (ev, fn) {\n var res = Stream.prototype.on.call(this, ev, fn);\n var state = this._readableState;\n\n if (ev === 'data') {\n // update readableListening so that resume() may be a no-op\n // a few lines down. This is needed to support once('readable').\n state.readableListening = this.listenerCount('readable') > 0; // Try start flowing on next tick if stream isn't explicitly paused\n\n if (state.flowing !== false) this.resume();\n } else if (ev === 'readable') {\n if (!state.endEmitted && !state.readableListening) {\n state.readableListening = state.needReadable = true;\n state.flowing = false;\n state.emittedReadable = false;\n debug('on readable', state.length, state.reading);\n\n if (state.length) {\n emitReadable(this);\n } else if (!state.reading) {\n process.nextTick(nReadingNextTick, this);\n }\n }\n }\n\n return res;\n};\n\nReadable.prototype.addListener = Readable.prototype.on;\n\nReadable.prototype.removeListener = function (ev, fn) {\n var res = Stream.prototype.removeListener.call(this, ev, fn);\n\n if (ev === 'readable') {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n\n return res;\n};\n\nReadable.prototype.removeAllListeners = function (ev) {\n var res = Stream.prototype.removeAllListeners.apply(this, arguments);\n\n if (ev === 'readable' || ev === undefined) {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n\n return res;\n};\n\nfunction updateReadableListening(self) {\n var state = self._readableState;\n state.readableListening = self.listenerCount('readable') > 0;\n\n if (state.resumeScheduled && !state.paused) {\n // flowing needs to be set to true now, otherwise\n // the upcoming resume will not flow.\n state.flowing = true; // crude way to check if we should resume\n } else if (self.listenerCount('data') > 0) {\n self.resume();\n }\n}\n\nfunction nReadingNextTick(self) {\n debug('readable nexttick read 0');\n self.read(0);\n} // pause() and resume() are remnants of the legacy readable stream API\n// If the user uses them, then switch into old mode.\n\n\nReadable.prototype.resume = function () {\n var state = this._readableState;\n\n if (!state.flowing) {\n debug('resume'); // we flow only if there is no one listening\n // for readable, but we still have to call\n // resume()\n\n state.flowing = !state.readableListening;\n resume(this, state);\n }\n\n state.paused = false;\n return this;\n};\n\nfunction resume(stream, state) {\n if (!state.resumeScheduled) {\n state.resumeScheduled = true;\n process.nextTick(resume_, stream, state);\n }\n}\n\nfunction resume_(stream, state) {\n debug('resume', state.reading);\n\n if (!state.reading) {\n stream.read(0);\n }\n\n state.resumeScheduled = false;\n stream.emit('resume');\n flow(stream);\n if (state.flowing && !state.reading) stream.read(0);\n}\n\nReadable.prototype.pause = function () {\n debug('call pause flowing=%j', this._readableState.flowing);\n\n if (this._readableState.flowing !== false) {\n debug('pause');\n this._readableState.flowing = false;\n this.emit('pause');\n }\n\n this._readableState.paused = true;\n return this;\n};\n\nfunction flow(stream) {\n var state = stream._readableState;\n debug('flow', state.flowing);\n\n while (state.flowing && stream.read() !== null) {\n ;\n }\n} // wrap an old-style stream as the async data source.\n// This is *not* part of the readable stream interface.\n// It is an ugly unfortunate mess of history.\n\n\nReadable.prototype.wrap = function (stream) {\n var _this = this;\n\n var state = this._readableState;\n var paused = false;\n stream.on('end', function () {\n debug('wrapped end');\n\n if (state.decoder && !state.ended) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) _this.push(chunk);\n }\n\n _this.push(null);\n });\n stream.on('data', function (chunk) {\n debug('wrapped data');\n if (state.decoder) chunk = state.decoder.write(chunk); // don't skip over falsy values in objectMode\n\n if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;\n\n var ret = _this.push(chunk);\n\n if (!ret) {\n paused = true;\n stream.pause();\n }\n }); // proxy all the other methods.\n // important when wrapping filters and duplexes.\n\n for (var i in stream) {\n if (this[i] === undefined && typeof stream[i] === 'function') {\n this[i] = function methodWrap(method) {\n return function methodWrapReturnFunction() {\n return stream[method].apply(stream, arguments);\n };\n }(i);\n }\n } // proxy certain important events.\n\n\n for (var n = 0; n < kProxyEvents.length; n++) {\n stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n]));\n } // when we try to consume some more bytes, simply unpause the\n // underlying stream.\n\n\n this._read = function (n) {\n debug('wrapped _read', n);\n\n if (paused) {\n paused = false;\n stream.resume();\n }\n };\n\n return this;\n};\n\nif (typeof Symbol === 'function') {\n Readable.prototype[Symbol.asyncIterator] = function () {\n if (createReadableStreamAsyncIterator === undefined) {\n createReadableStreamAsyncIterator = require('./internal/streams/async_iterator');\n }\n\n return createReadableStreamAsyncIterator(this);\n };\n}\n\nObject.defineProperty(Readable.prototype, 'readableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.highWaterMark;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState && this._readableState.buffer;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableFlowing', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.flowing;\n },\n set: function set(state) {\n if (this._readableState) {\n this._readableState.flowing = state;\n }\n }\n}); // exposed for testing purposes only.\n\nReadable._fromList = fromList;\nObject.defineProperty(Readable.prototype, 'readableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.length;\n }\n}); // Pluck off n bytes from an array of buffers.\n// Length is the combined lengths of all the buffers in the list.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\n\nfunction fromList(n, state) {\n // nothing buffered\n if (state.length === 0) return null;\n var ret;\n if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {\n // read it all, truncate the list\n if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.first();else ret = state.buffer.concat(state.length);\n state.buffer.clear();\n } else {\n // read part of list\n ret = state.buffer.consume(n, state.decoder);\n }\n return ret;\n}\n\nfunction endReadable(stream) {\n var state = stream._readableState;\n debug('endReadable', state.endEmitted);\n\n if (!state.endEmitted) {\n state.ended = true;\n process.nextTick(endReadableNT, state, stream);\n }\n}\n\nfunction endReadableNT(state, stream) {\n debug('endReadableNT', state.endEmitted, state.length); // Check that we didn't get one last unshift.\n\n if (!state.endEmitted && state.length === 0) {\n state.endEmitted = true;\n stream.readable = false;\n stream.emit('end');\n\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the writable side is ready for autoDestroy as well\n var wState = stream._writableState;\n\n if (!wState || wState.autoDestroy && wState.finished) {\n stream.destroy();\n }\n }\n }\n}\n\nif (typeof Symbol === 'function') {\n Readable.from = function (iterable, opts) {\n if (from === undefined) {\n from = require('./internal/streams/from');\n }\n\n return from(Readable, iterable, opts);\n };\n}\n\nfunction indexOf(xs, x) {\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) return i;\n }\n\n return -1;\n}","module.exports = require('events').EventEmitter;\n","'use strict'; // undocumented cb() API, needed for core, not for public API\n\nfunction destroy(err, cb) {\n var _this = this;\n\n var readableDestroyed = this._readableState && this._readableState.destroyed;\n var writableDestroyed = this._writableState && this._writableState.destroyed;\n\n if (readableDestroyed || writableDestroyed) {\n if (cb) {\n cb(err);\n } else if (err) {\n if (!this._writableState) {\n process.nextTick(emitErrorNT, this, err);\n } else if (!this._writableState.errorEmitted) {\n this._writableState.errorEmitted = true;\n process.nextTick(emitErrorNT, this, err);\n }\n }\n\n return this;\n } // we set destroyed to true before firing error callbacks in order\n // to make it re-entrance safe in case destroy() is called within callbacks\n\n\n if (this._readableState) {\n this._readableState.destroyed = true;\n } // if this is a duplex stream mark the writable part as destroyed as well\n\n\n if (this._writableState) {\n this._writableState.destroyed = true;\n }\n\n this._destroy(err || null, function (err) {\n if (!cb && err) {\n if (!_this._writableState) {\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else if (!_this._writableState.errorEmitted) {\n _this._writableState.errorEmitted = true;\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n } else if (cb) {\n process.nextTick(emitCloseNT, _this);\n cb(err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n });\n\n return this;\n}\n\nfunction emitErrorAndCloseNT(self, err) {\n emitErrorNT(self, err);\n emitCloseNT(self);\n}\n\nfunction emitCloseNT(self) {\n if (self._writableState && !self._writableState.emitClose) return;\n if (self._readableState && !self._readableState.emitClose) return;\n self.emit('close');\n}\n\nfunction undestroy() {\n if (this._readableState) {\n this._readableState.destroyed = false;\n this._readableState.reading = false;\n this._readableState.ended = false;\n this._readableState.endEmitted = false;\n }\n\n if (this._writableState) {\n this._writableState.destroyed = false;\n this._writableState.ended = false;\n this._writableState.ending = false;\n this._writableState.finalCalled = false;\n this._writableState.prefinished = false;\n this._writableState.finished = false;\n this._writableState.errorEmitted = false;\n }\n}\n\nfunction emitErrorNT(self, err) {\n self.emit('error', err);\n}\n\nfunction errorOrDestroy(stream, err) {\n // We have tests that rely on errors being emitted\n // in the same tick, so changing this is semver major.\n // For now when you opt-in to autoDestroy we allow\n // the error to be emitted nextTick. In a future\n // semver major update we should change the default to this.\n var rState = stream._readableState;\n var wState = stream._writableState;\n if (rState && rState.autoDestroy || wState && wState.autoDestroy) stream.destroy(err);else stream.emit('error', err);\n}\n\nmodule.exports = {\n destroy: destroy,\n undestroy: undestroy,\n errorOrDestroy: errorOrDestroy\n};","'use strict';\n\nvar ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE;\n\nfunction highWaterMarkFrom(options, isDuplex, duplexKey) {\n return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null;\n}\n\nfunction getHighWaterMark(state, options, duplexKey, isDuplex) {\n var hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n\n if (hwm != null) {\n if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) {\n var name = isDuplex ? duplexKey : 'highWaterMark';\n throw new ERR_INVALID_OPT_VALUE(name, hwm);\n }\n\n return Math.floor(hwm);\n } // Default value\n\n\n return state.objectMode ? 16 : 16 * 1024;\n}\n\nmodule.exports = {\n getHighWaterMark: getHighWaterMark\n};","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// A bit simpler than readable streams.\n// Implement an async ._write(chunk, encoding, cb), and it'll handle all\n// the drain event emission and buffering.\n'use strict';\n\nmodule.exports = Writable;\n/* */\n\nfunction WriteReq(chunk, encoding, cb) {\n this.chunk = chunk;\n this.encoding = encoding;\n this.callback = cb;\n this.next = null;\n} // It seems a linked list but it is not\n// there will be only 2 of these for each stream\n\n\nfunction CorkedRequest(state) {\n var _this = this;\n\n this.next = null;\n this.entry = null;\n\n this.finish = function () {\n onCorkedFinish(_this, state);\n };\n}\n/* */\n\n/**/\n\n\nvar Duplex;\n/**/\n\nWritable.WritableState = WritableState;\n/**/\n\nvar internalUtil = {\n deprecate: require('util-deprecate')\n};\n/**/\n\n/**/\n\nvar Stream = require('./internal/streams/stream');\n/**/\n\n\nvar Buffer = require('buffer').Buffer;\n\nvar OurUint8Array = global.Uint8Array || function () {};\n\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\n\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n\nvar destroyImpl = require('./internal/streams/destroy');\n\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\n\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED,\n ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES,\n ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END,\n ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING;\n\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\n\nrequire('inherits')(Writable, Stream);\n\nfunction nop() {}\n\nfunction WritableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {}; // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream,\n // e.g. options.readableObjectMode vs. options.writableObjectMode, etc.\n\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag to indicate whether or not this stream\n // contains buffers or objects.\n\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; // the point at which write() starts returning false\n // Note: 0 is a valid value, means that we always return false if\n // the entire buffer is not flushed immediately on write()\n\n this.highWaterMark = getHighWaterMark(this, options, 'writableHighWaterMark', isDuplex); // if _final has been called\n\n this.finalCalled = false; // drain event flag.\n\n this.needDrain = false; // at the start of calling end()\n\n this.ending = false; // when end() has been called, and returned\n\n this.ended = false; // when 'finish' is emitted\n\n this.finished = false; // has it been destroyed\n\n this.destroyed = false; // should we decode strings into buffers before passing to _write?\n // this is here so that some node-core streams can optimize string\n // handling at a lower level.\n\n var noDecode = options.decodeStrings === false;\n this.decodeStrings = !noDecode; // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n\n this.defaultEncoding = options.defaultEncoding || 'utf8'; // not an actual buffer we keep track of, but a measurement\n // of how much we're waiting to get pushed to some underlying\n // socket or file.\n\n this.length = 0; // a flag to see when we're in the middle of a write.\n\n this.writing = false; // when true all writes will be buffered until .uncork() call\n\n this.corked = 0; // a flag to be able to tell if the onwrite cb is called immediately,\n // or on a later tick. We set this to true at first, because any\n // actions that shouldn't happen until \"later\" should generally also\n // not happen before the first write call.\n\n this.sync = true; // a flag to know if we're processing previously buffered items, which\n // may call the _write() callback in the same tick, so that we don't\n // end up in an overlapped onwrite situation.\n\n this.bufferProcessing = false; // the callback that's passed to _write(chunk,cb)\n\n this.onwrite = function (er) {\n onwrite(stream, er);\n }; // the callback that the user supplies to write(chunk,encoding,cb)\n\n\n this.writecb = null; // the amount that is being written when _write is called.\n\n this.writelen = 0;\n this.bufferedRequest = null;\n this.lastBufferedRequest = null; // number of pending user-supplied write callbacks\n // this must be 0 before 'finish' can be emitted\n\n this.pendingcb = 0; // emit prefinish if the only thing we're waiting for is _write cbs\n // This is relevant for synchronous Transform streams\n\n this.prefinished = false; // True if the error was already emitted and should not be thrown again\n\n this.errorEmitted = false; // Should close be emitted on destroy. Defaults to true.\n\n this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'finish' (and potentially 'end')\n\n this.autoDestroy = !!options.autoDestroy; // count buffered requests\n\n this.bufferedRequestCount = 0; // allocate the first CorkedRequest, there is always\n // one allocated and free to use, and we maintain at most two\n\n this.corkedRequestsFree = new CorkedRequest(this);\n}\n\nWritableState.prototype.getBuffer = function getBuffer() {\n var current = this.bufferedRequest;\n var out = [];\n\n while (current) {\n out.push(current);\n current = current.next;\n }\n\n return out;\n};\n\n(function () {\n try {\n Object.defineProperty(WritableState.prototype, 'buffer', {\n get: internalUtil.deprecate(function writableStateBufferGetter() {\n return this.getBuffer();\n }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')\n });\n } catch (_) {}\n})(); // Test _writableState for inheritance to account for Duplex streams,\n// whose prototype chain only points to Readable.\n\n\nvar realHasInstance;\n\nif (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {\n realHasInstance = Function.prototype[Symbol.hasInstance];\n Object.defineProperty(Writable, Symbol.hasInstance, {\n value: function value(object) {\n if (realHasInstance.call(this, object)) return true;\n if (this !== Writable) return false;\n return object && object._writableState instanceof WritableState;\n }\n });\n} else {\n realHasInstance = function realHasInstance(object) {\n return object instanceof this;\n };\n}\n\nfunction Writable(options) {\n Duplex = Duplex || require('./_stream_duplex'); // Writable ctor is applied to Duplexes, too.\n // `realHasInstance` is necessary because using plain `instanceof`\n // would return false, as no `_writableState` property is attached.\n // Trying to use the custom `instanceof` for Writable here will also break the\n // Node.js LazyTransform implementation, which has a non-trivial getter for\n // `_writableState` that would lead to infinite recursion.\n // Checking for a Stream.Duplex instance is faster here instead of inside\n // the WritableState constructor, at least with V8 6.5\n\n var isDuplex = this instanceof Duplex;\n if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options);\n this._writableState = new WritableState(options, this, isDuplex); // legacy.\n\n this.writable = true;\n\n if (options) {\n if (typeof options.write === 'function') this._write = options.write;\n if (typeof options.writev === 'function') this._writev = options.writev;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n if (typeof options.final === 'function') this._final = options.final;\n }\n\n Stream.call(this);\n} // Otherwise people can pipe Writable streams, which is just wrong.\n\n\nWritable.prototype.pipe = function () {\n errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE());\n};\n\nfunction writeAfterEnd(stream, cb) {\n var er = new ERR_STREAM_WRITE_AFTER_END(); // TODO: defer error events consistently everywhere, not just the cb\n\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n} // Checks that a user-supplied chunk is valid, especially for the particular\n// mode the stream is in. Currently this means that `null` is never accepted\n// and undefined/non-string values are only allowed in object mode.\n\n\nfunction validChunk(stream, state, chunk, cb) {\n var er;\n\n if (chunk === null) {\n er = new ERR_STREAM_NULL_VALUES();\n } else if (typeof chunk !== 'string' && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer'], chunk);\n }\n\n if (er) {\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n return false;\n }\n\n return true;\n}\n\nWritable.prototype.write = function (chunk, encoding, cb) {\n var state = this._writableState;\n var ret = false;\n\n var isBuf = !state.objectMode && _isUint8Array(chunk);\n\n if (isBuf && !Buffer.isBuffer(chunk)) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;\n if (typeof cb !== 'function') cb = nop;\n if (state.ending) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {\n state.pendingcb++;\n ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);\n }\n return ret;\n};\n\nWritable.prototype.cork = function () {\n this._writableState.corked++;\n};\n\nWritable.prototype.uncork = function () {\n var state = this._writableState;\n\n if (state.corked) {\n state.corked--;\n if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);\n }\n};\n\nWritable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n // node::ParseEncoding() requires lower case.\n if (typeof encoding === 'string') encoding = encoding.toLowerCase();\n if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding);\n this._writableState.defaultEncoding = encoding;\n return this;\n};\n\nObject.defineProperty(Writable.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\n\nfunction decodeChunk(state, chunk, encoding) {\n if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {\n chunk = Buffer.from(chunk, encoding);\n }\n\n return chunk;\n}\n\nObject.defineProperty(Writable.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n}); // if we're already writing something, then just put this\n// in the queue, and wait our turn. Otherwise, call _write\n// If we return false, then we need a drain event, so set that flag.\n\nfunction writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {\n if (!isBuf) {\n var newChunk = decodeChunk(state, chunk, encoding);\n\n if (chunk !== newChunk) {\n isBuf = true;\n encoding = 'buffer';\n chunk = newChunk;\n }\n }\n\n var len = state.objectMode ? 1 : chunk.length;\n state.length += len;\n var ret = state.length < state.highWaterMark; // we must ensure that previous needDrain will not be reset to false.\n\n if (!ret) state.needDrain = true;\n\n if (state.writing || state.corked) {\n var last = state.lastBufferedRequest;\n state.lastBufferedRequest = {\n chunk: chunk,\n encoding: encoding,\n isBuf: isBuf,\n callback: cb,\n next: null\n };\n\n if (last) {\n last.next = state.lastBufferedRequest;\n } else {\n state.bufferedRequest = state.lastBufferedRequest;\n }\n\n state.bufferedRequestCount += 1;\n } else {\n doWrite(stream, state, false, len, chunk, encoding, cb);\n }\n\n return ret;\n}\n\nfunction doWrite(stream, state, writev, len, chunk, encoding, cb) {\n state.writelen = len;\n state.writecb = cb;\n state.writing = true;\n state.sync = true;\n if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED('write'));else if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);\n state.sync = false;\n}\n\nfunction onwriteError(stream, state, sync, er, cb) {\n --state.pendingcb;\n\n if (sync) {\n // defer the callback if we are being called synchronously\n // to avoid piling up things on the stack\n process.nextTick(cb, er); // this can emit finish, and it will always happen\n // after error\n\n process.nextTick(finishMaybe, stream, state);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er);\n } else {\n // the caller expect this to happen before if\n // it is async\n cb(er);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er); // this can emit finish, but finish must\n // always follow error\n\n finishMaybe(stream, state);\n }\n}\n\nfunction onwriteStateUpdate(state) {\n state.writing = false;\n state.writecb = null;\n state.length -= state.writelen;\n state.writelen = 0;\n}\n\nfunction onwrite(stream, er) {\n var state = stream._writableState;\n var sync = state.sync;\n var cb = state.writecb;\n if (typeof cb !== 'function') throw new ERR_MULTIPLE_CALLBACK();\n onwriteStateUpdate(state);\n if (er) onwriteError(stream, state, sync, er, cb);else {\n // Check if we're actually ready to finish, but don't emit yet\n var finished = needFinish(state) || stream.destroyed;\n\n if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {\n clearBuffer(stream, state);\n }\n\n if (sync) {\n process.nextTick(afterWrite, stream, state, finished, cb);\n } else {\n afterWrite(stream, state, finished, cb);\n }\n }\n}\n\nfunction afterWrite(stream, state, finished, cb) {\n if (!finished) onwriteDrain(stream, state);\n state.pendingcb--;\n cb();\n finishMaybe(stream, state);\n} // Must force callback to be called on nextTick, so that we don't\n// emit 'drain' before the write() consumer gets the 'false' return\n// value, and has a chance to attach a 'drain' listener.\n\n\nfunction onwriteDrain(stream, state) {\n if (state.length === 0 && state.needDrain) {\n state.needDrain = false;\n stream.emit('drain');\n }\n} // if there's something in the buffer waiting, then process it\n\n\nfunction clearBuffer(stream, state) {\n state.bufferProcessing = true;\n var entry = state.bufferedRequest;\n\n if (stream._writev && entry && entry.next) {\n // Fast case, write everything using _writev()\n var l = state.bufferedRequestCount;\n var buffer = new Array(l);\n var holder = state.corkedRequestsFree;\n holder.entry = entry;\n var count = 0;\n var allBuffers = true;\n\n while (entry) {\n buffer[count] = entry;\n if (!entry.isBuf) allBuffers = false;\n entry = entry.next;\n count += 1;\n }\n\n buffer.allBuffers = allBuffers;\n doWrite(stream, state, true, state.length, buffer, '', holder.finish); // doWrite is almost always async, defer these to save a bit of time\n // as the hot path ends with doWrite\n\n state.pendingcb++;\n state.lastBufferedRequest = null;\n\n if (holder.next) {\n state.corkedRequestsFree = holder.next;\n holder.next = null;\n } else {\n state.corkedRequestsFree = new CorkedRequest(state);\n }\n\n state.bufferedRequestCount = 0;\n } else {\n // Slow case, write chunks one-by-one\n while (entry) {\n var chunk = entry.chunk;\n var encoding = entry.encoding;\n var cb = entry.callback;\n var len = state.objectMode ? 1 : chunk.length;\n doWrite(stream, state, false, len, chunk, encoding, cb);\n entry = entry.next;\n state.bufferedRequestCount--; // if we didn't call the onwrite immediately, then\n // it means that we need to wait until it does.\n // also, that means that the chunk and cb are currently\n // being processed, so move the buffer counter past them.\n\n if (state.writing) {\n break;\n }\n }\n\n if (entry === null) state.lastBufferedRequest = null;\n }\n\n state.bufferedRequest = entry;\n state.bufferProcessing = false;\n}\n\nWritable.prototype._write = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_write()'));\n};\n\nWritable.prototype._writev = null;\n\nWritable.prototype.end = function (chunk, encoding, cb) {\n var state = this._writableState;\n\n if (typeof chunk === 'function') {\n cb = chunk;\n chunk = null;\n encoding = null;\n } else if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (chunk !== null && chunk !== undefined) this.write(chunk, encoding); // .end() fully uncorks\n\n if (state.corked) {\n state.corked = 1;\n this.uncork();\n } // ignore unnecessary end() calls.\n\n\n if (!state.ending) endWritable(this, state, cb);\n return this;\n};\n\nObject.defineProperty(Writable.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n});\n\nfunction needFinish(state) {\n return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;\n}\n\nfunction callFinal(stream, state) {\n stream._final(function (err) {\n state.pendingcb--;\n\n if (err) {\n errorOrDestroy(stream, err);\n }\n\n state.prefinished = true;\n stream.emit('prefinish');\n finishMaybe(stream, state);\n });\n}\n\nfunction prefinish(stream, state) {\n if (!state.prefinished && !state.finalCalled) {\n if (typeof stream._final === 'function' && !state.destroyed) {\n state.pendingcb++;\n state.finalCalled = true;\n process.nextTick(callFinal, stream, state);\n } else {\n state.prefinished = true;\n stream.emit('prefinish');\n }\n }\n}\n\nfunction finishMaybe(stream, state) {\n var need = needFinish(state);\n\n if (need) {\n prefinish(stream, state);\n\n if (state.pendingcb === 0) {\n state.finished = true;\n stream.emit('finish');\n\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the readable side is ready for autoDestroy as well\n var rState = stream._readableState;\n\n if (!rState || rState.autoDestroy && rState.endEmitted) {\n stream.destroy();\n }\n }\n }\n }\n\n return need;\n}\n\nfunction endWritable(stream, state, cb) {\n state.ending = true;\n finishMaybe(stream, state);\n\n if (cb) {\n if (state.finished) process.nextTick(cb);else stream.once('finish', cb);\n }\n\n state.ended = true;\n stream.writable = false;\n}\n\nfunction onCorkedFinish(corkReq, state, err) {\n var entry = corkReq.entry;\n corkReq.entry = null;\n\n while (entry) {\n var cb = entry.callback;\n state.pendingcb--;\n cb(err);\n entry = entry.next;\n } // reuse the free corkReq.\n\n\n state.corkedRequestsFree.next = corkReq;\n}\n\nObject.defineProperty(Writable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._writableState === undefined) {\n return false;\n }\n\n return this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._writableState) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._writableState.destroyed = value;\n }\n});\nWritable.prototype.destroy = destroyImpl.destroy;\nWritable.prototype._undestroy = destroyImpl.undestroy;\n\nWritable.prototype._destroy = function (err, cb) {\n cb(err);\n};","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// a transform stream is a readable/writable stream where you do\n// something with the data. Sometimes it's called a \"filter\",\n// but that's not a great name for it, since that implies a thing where\n// some bits pass through, and others are simply ignored. (That would\n// be a valid example of a transform, of course.)\n//\n// While the output is causally related to the input, it's not a\n// necessarily symmetric or synchronous transformation. For example,\n// a zlib stream might take multiple plain-text writes(), and then\n// emit a single compressed chunk some time in the future.\n//\n// Here's how this works:\n//\n// The Transform stream has all the aspects of the readable and writable\n// stream classes. When you write(chunk), that calls _write(chunk,cb)\n// internally, and returns false if there's a lot of pending writes\n// buffered up. When you call read(), that calls _read(n) until\n// there's enough pending readable data buffered up.\n//\n// In a transform stream, the written data is placed in a buffer. When\n// _read(n) is called, it transforms the queued up data, calling the\n// buffered _write cb's as it consumes chunks. If consuming a single\n// written chunk would result in multiple output chunks, then the first\n// outputted bit calls the readcb, and subsequent chunks just go into\n// the read buffer, and will cause it to emit 'readable' if necessary.\n//\n// This way, back-pressure is actually determined by the reading side,\n// since _read has to be called to start processing a new chunk. However,\n// a pathological inflate type of transform can cause excessive buffering\n// here. For example, imagine a stream where every byte of input is\n// interpreted as an integer from 0-255, and then results in that many\n// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in\n// 1kb of data being output. In this case, you could write a very small\n// amount of input, and end up with a very large amount of output. In\n// such a pathological inflating mechanism, there'd be no way to tell\n// the system to stop doing the transform. A single 4MB write could\n// cause the system to run out of memory.\n//\n// However, even in such a pathological case, only a single written chunk\n// would be consumed, and then the rest would wait (un-transformed) until\n// the results of the previous transformed chunk were consumed.\n'use strict';\n\nmodule.exports = Transform;\n\nvar _require$codes = require('../errors').codes,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING,\n ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0;\n\nvar Duplex = require('./_stream_duplex');\n\nrequire('inherits')(Transform, Duplex);\n\nfunction afterTransform(er, data) {\n var ts = this._transformState;\n ts.transforming = false;\n var cb = ts.writecb;\n\n if (cb === null) {\n return this.emit('error', new ERR_MULTIPLE_CALLBACK());\n }\n\n ts.writechunk = null;\n ts.writecb = null;\n if (data != null) // single equals check for both `null` and `undefined`\n this.push(data);\n cb(er);\n var rs = this._readableState;\n rs.reading = false;\n\n if (rs.needReadable || rs.length < rs.highWaterMark) {\n this._read(rs.highWaterMark);\n }\n}\n\nfunction Transform(options) {\n if (!(this instanceof Transform)) return new Transform(options);\n Duplex.call(this, options);\n this._transformState = {\n afterTransform: afterTransform.bind(this),\n needTransform: false,\n transforming: false,\n writecb: null,\n writechunk: null,\n writeencoding: null\n }; // start out asking for a readable event once data is transformed.\n\n this._readableState.needReadable = true; // we have implemented the _read method, and done the other things\n // that Readable wants before the first _read call, so unset the\n // sync guard flag.\n\n this._readableState.sync = false;\n\n if (options) {\n if (typeof options.transform === 'function') this._transform = options.transform;\n if (typeof options.flush === 'function') this._flush = options.flush;\n } // When the writable side finishes, then flush out anything remaining.\n\n\n this.on('prefinish', prefinish);\n}\n\nfunction prefinish() {\n var _this = this;\n\n if (typeof this._flush === 'function' && !this._readableState.destroyed) {\n this._flush(function (er, data) {\n done(_this, er, data);\n });\n } else {\n done(this, null, null);\n }\n}\n\nTransform.prototype.push = function (chunk, encoding) {\n this._transformState.needTransform = false;\n return Duplex.prototype.push.call(this, chunk, encoding);\n}; // This is the part where you do stuff!\n// override this function in implementation classes.\n// 'chunk' is an input chunk.\n//\n// Call `push(newChunk)` to pass along transformed output\n// to the readable side. You may call 'push' zero or more times.\n//\n// Call `cb(err)` when you are done with this chunk. If you pass\n// an error, then that'll put the hurt on the whole operation. If you\n// never call cb(), then you'll never get another chunk.\n\n\nTransform.prototype._transform = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_transform()'));\n};\n\nTransform.prototype._write = function (chunk, encoding, cb) {\n var ts = this._transformState;\n ts.writecb = cb;\n ts.writechunk = chunk;\n ts.writeencoding = encoding;\n\n if (!ts.transforming) {\n var rs = this._readableState;\n if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);\n }\n}; // Doesn't matter what the args are here.\n// _transform does all the work.\n// That we got here means that the readable side wants more data.\n\n\nTransform.prototype._read = function (n) {\n var ts = this._transformState;\n\n if (ts.writechunk !== null && !ts.transforming) {\n ts.transforming = true;\n\n this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);\n } else {\n // mark that we need a transform, so that any data that comes in\n // will get processed, now that we've asked for it.\n ts.needTransform = true;\n }\n};\n\nTransform.prototype._destroy = function (err, cb) {\n Duplex.prototype._destroy.call(this, err, function (err2) {\n cb(err2);\n });\n};\n\nfunction done(stream, er, data) {\n if (er) return stream.emit('error', er);\n if (data != null) // single equals check for both `null` and `undefined`\n stream.push(data); // TODO(BridgeAR): Write a test for these two error cases\n // if there's nothing in the write buffer, then that means\n // that nothing more will ever be provided\n\n if (stream._writableState.length) throw new ERR_TRANSFORM_WITH_LENGTH_0();\n if (stream._transformState.transforming) throw new ERR_TRANSFORM_ALREADY_TRANSFORMING();\n return stream.push(null);\n}","'use strict';\n\nconst asn1 = exports;\n\nasn1.bignum = require('bn.js');\n\nasn1.define = require('./asn1/api').define;\nasn1.base = require('./asn1/base');\nasn1.constants = require('./asn1/constants');\nasn1.decoders = require('./asn1/decoders');\nasn1.encoders = require('./asn1/encoders');\n","'use strict';\n\nconst encoders = exports;\n\nencoders.der = require('./der');\nencoders.pem = require('./pem');\n","'use strict';\n\nconst inherits = require('inherits');\nconst Buffer = require('safer-buffer').Buffer;\nconst Node = require('../base/node');\n\n// Import DER constants\nconst der = require('../constants/der');\n\nfunction DEREncoder(entity) {\n this.enc = 'der';\n this.name = entity.name;\n this.entity = entity;\n\n // Construct base tree\n this.tree = new DERNode();\n this.tree._init(entity.body);\n}\nmodule.exports = DEREncoder;\n\nDEREncoder.prototype.encode = function encode(data, reporter) {\n return this.tree._encode(data, reporter).join();\n};\n\n// Tree methods\n\nfunction DERNode(parent) {\n Node.call(this, 'der', parent);\n}\ninherits(DERNode, Node);\n\nDERNode.prototype._encodeComposite = function encodeComposite(tag,\n primitive,\n cls,\n content) {\n const encodedTag = encodeTag(tag, primitive, cls, this.reporter);\n\n // Short form\n if (content.length < 0x80) {\n const header = Buffer.alloc(2);\n header[0] = encodedTag;\n header[1] = content.length;\n return this._createEncoderBuffer([ header, content ]);\n }\n\n // Long form\n // Count octets required to store length\n let lenOctets = 1;\n for (let i = content.length; i >= 0x100; i >>= 8)\n lenOctets++;\n\n const header = Buffer.alloc(1 + 1 + lenOctets);\n header[0] = encodedTag;\n header[1] = 0x80 | lenOctets;\n\n for (let i = 1 + lenOctets, j = content.length; j > 0; i--, j >>= 8)\n header[i] = j & 0xff;\n\n return this._createEncoderBuffer([ header, content ]);\n};\n\nDERNode.prototype._encodeStr = function encodeStr(str, tag) {\n if (tag === 'bitstr') {\n return this._createEncoderBuffer([ str.unused | 0, str.data ]);\n } else if (tag === 'bmpstr') {\n const buf = Buffer.alloc(str.length * 2);\n for (let i = 0; i < str.length; i++) {\n buf.writeUInt16BE(str.charCodeAt(i), i * 2);\n }\n return this._createEncoderBuffer(buf);\n } else if (tag === 'numstr') {\n if (!this._isNumstr(str)) {\n return this.reporter.error('Encoding of string type: numstr supports ' +\n 'only digits and space');\n }\n return this._createEncoderBuffer(str);\n } else if (tag === 'printstr') {\n if (!this._isPrintstr(str)) {\n return this.reporter.error('Encoding of string type: printstr supports ' +\n 'only latin upper and lower case letters, ' +\n 'digits, space, apostrophe, left and rigth ' +\n 'parenthesis, plus sign, comma, hyphen, ' +\n 'dot, slash, colon, equal sign, ' +\n 'question mark');\n }\n return this._createEncoderBuffer(str);\n } else if (/str$/.test(tag)) {\n return this._createEncoderBuffer(str);\n } else if (tag === 'objDesc') {\n return this._createEncoderBuffer(str);\n } else {\n return this.reporter.error('Encoding of string type: ' + tag +\n ' unsupported');\n }\n};\n\nDERNode.prototype._encodeObjid = function encodeObjid(id, values, relative) {\n if (typeof id === 'string') {\n if (!values)\n return this.reporter.error('string objid given, but no values map found');\n if (!values.hasOwnProperty(id))\n return this.reporter.error('objid not found in values map');\n id = values[id].split(/[\\s.]+/g);\n for (let i = 0; i < id.length; i++)\n id[i] |= 0;\n } else if (Array.isArray(id)) {\n id = id.slice();\n for (let i = 0; i < id.length; i++)\n id[i] |= 0;\n }\n\n if (!Array.isArray(id)) {\n return this.reporter.error('objid() should be either array or string, ' +\n 'got: ' + JSON.stringify(id));\n }\n\n if (!relative) {\n if (id[1] >= 40)\n return this.reporter.error('Second objid identifier OOB');\n id.splice(0, 2, id[0] * 40 + id[1]);\n }\n\n // Count number of octets\n let size = 0;\n for (let i = 0; i < id.length; i++) {\n let ident = id[i];\n for (size++; ident >= 0x80; ident >>= 7)\n size++;\n }\n\n const objid = Buffer.alloc(size);\n let offset = objid.length - 1;\n for (let i = id.length - 1; i >= 0; i--) {\n let ident = id[i];\n objid[offset--] = ident & 0x7f;\n while ((ident >>= 7) > 0)\n objid[offset--] = 0x80 | (ident & 0x7f);\n }\n\n return this._createEncoderBuffer(objid);\n};\n\nfunction two(num) {\n if (num < 10)\n return '0' + num;\n else\n return num;\n}\n\nDERNode.prototype._encodeTime = function encodeTime(time, tag) {\n let str;\n const date = new Date(time);\n\n if (tag === 'gentime') {\n str = [\n two(date.getUTCFullYear()),\n two(date.getUTCMonth() + 1),\n two(date.getUTCDate()),\n two(date.getUTCHours()),\n two(date.getUTCMinutes()),\n two(date.getUTCSeconds()),\n 'Z'\n ].join('');\n } else if (tag === 'utctime') {\n str = [\n two(date.getUTCFullYear() % 100),\n two(date.getUTCMonth() + 1),\n two(date.getUTCDate()),\n two(date.getUTCHours()),\n two(date.getUTCMinutes()),\n two(date.getUTCSeconds()),\n 'Z'\n ].join('');\n } else {\n this.reporter.error('Encoding ' + tag + ' time is not supported yet');\n }\n\n return this._encodeStr(str, 'octstr');\n};\n\nDERNode.prototype._encodeNull = function encodeNull() {\n return this._createEncoderBuffer('');\n};\n\nDERNode.prototype._encodeInt = function encodeInt(num, values) {\n if (typeof num === 'string') {\n if (!values)\n return this.reporter.error('String int or enum given, but no values map');\n if (!values.hasOwnProperty(num)) {\n return this.reporter.error('Values map doesn\\'t contain: ' +\n JSON.stringify(num));\n }\n num = values[num];\n }\n\n // Bignum, assume big endian\n if (typeof num !== 'number' && !Buffer.isBuffer(num)) {\n const numArray = num.toArray();\n if (!num.sign && numArray[0] & 0x80) {\n numArray.unshift(0);\n }\n num = Buffer.from(numArray);\n }\n\n if (Buffer.isBuffer(num)) {\n let size = num.length;\n if (num.length === 0)\n size++;\n\n const out = Buffer.alloc(size);\n num.copy(out);\n if (num.length === 0)\n out[0] = 0;\n return this._createEncoderBuffer(out);\n }\n\n if (num < 0x80)\n return this._createEncoderBuffer(num);\n\n if (num < 0x100)\n return this._createEncoderBuffer([0, num]);\n\n let size = 1;\n for (let i = num; i >= 0x100; i >>= 8)\n size++;\n\n const out = new Array(size);\n for (let i = out.length - 1; i >= 0; i--) {\n out[i] = num & 0xff;\n num >>= 8;\n }\n if(out[0] & 0x80) {\n out.unshift(0);\n }\n\n return this._createEncoderBuffer(Buffer.from(out));\n};\n\nDERNode.prototype._encodeBool = function encodeBool(value) {\n return this._createEncoderBuffer(value ? 0xff : 0);\n};\n\nDERNode.prototype._use = function use(entity, obj) {\n if (typeof entity === 'function')\n entity = entity(obj);\n return entity._getEncoder('der').tree;\n};\n\nDERNode.prototype._skipDefault = function skipDefault(dataBuffer, reporter, parent) {\n const state = this._baseState;\n let i;\n if (state['default'] === null)\n return false;\n\n const data = dataBuffer.join();\n if (state.defaultBuffer === undefined)\n state.defaultBuffer = this._encodeValue(state['default'], reporter, parent).join();\n\n if (data.length !== state.defaultBuffer.length)\n return false;\n\n for (i=0; i < data.length; i++)\n if (data[i] !== state.defaultBuffer[i])\n return false;\n\n return true;\n};\n\n// Utility methods\n\nfunction encodeTag(tag, primitive, cls, reporter) {\n let res;\n\n if (tag === 'seqof')\n tag = 'seq';\n else if (tag === 'setof')\n tag = 'set';\n\n if (der.tagByName.hasOwnProperty(tag))\n res = der.tagByName[tag];\n else if (typeof tag === 'number' && (tag | 0) === tag)\n res = tag;\n else\n return reporter.error('Unknown tag: ' + tag);\n\n if (res >= 0x1f)\n return reporter.error('Multi-octet tag encoding unsupported');\n\n if (!primitive)\n res |= 0x20;\n\n res |= (der.tagClassByName[cls || 'universal'] << 6);\n\n return res;\n}\n","'use strict';\n\nconst decoders = exports;\n\ndecoders.der = require('./der');\ndecoders.pem = require('./pem');\n","'use strict';\n\nconst inherits = require('inherits');\n\nconst bignum = require('bn.js');\nconst DecoderBuffer = require('../base/buffer').DecoderBuffer;\nconst Node = require('../base/node');\n\n// Import DER constants\nconst der = require('../constants/der');\n\nfunction DERDecoder(entity) {\n this.enc = 'der';\n this.name = entity.name;\n this.entity = entity;\n\n // Construct base tree\n this.tree = new DERNode();\n this.tree._init(entity.body);\n}\nmodule.exports = DERDecoder;\n\nDERDecoder.prototype.decode = function decode(data, options) {\n if (!DecoderBuffer.isDecoderBuffer(data)) {\n data = new DecoderBuffer(data, options);\n }\n\n return this.tree._decode(data, options);\n};\n\n// Tree methods\n\nfunction DERNode(parent) {\n Node.call(this, 'der', parent);\n}\ninherits(DERNode, Node);\n\nDERNode.prototype._peekTag = function peekTag(buffer, tag, any) {\n if (buffer.isEmpty())\n return false;\n\n const state = buffer.save();\n const decodedTag = derDecodeTag(buffer, 'Failed to peek tag: \"' + tag + '\"');\n if (buffer.isError(decodedTag))\n return decodedTag;\n\n buffer.restore(state);\n\n return decodedTag.tag === tag || decodedTag.tagStr === tag ||\n (decodedTag.tagStr + 'of') === tag || any;\n};\n\nDERNode.prototype._decodeTag = function decodeTag(buffer, tag, any) {\n const decodedTag = derDecodeTag(buffer,\n 'Failed to decode tag of \"' + tag + '\"');\n if (buffer.isError(decodedTag))\n return decodedTag;\n\n let len = derDecodeLen(buffer,\n decodedTag.primitive,\n 'Failed to get length of \"' + tag + '\"');\n\n // Failure\n if (buffer.isError(len))\n return len;\n\n if (!any &&\n decodedTag.tag !== tag &&\n decodedTag.tagStr !== tag &&\n decodedTag.tagStr + 'of' !== tag) {\n return buffer.error('Failed to match tag: \"' + tag + '\"');\n }\n\n if (decodedTag.primitive || len !== null)\n return buffer.skip(len, 'Failed to match body of: \"' + tag + '\"');\n\n // Indefinite length... find END tag\n const state = buffer.save();\n const res = this._skipUntilEnd(\n buffer,\n 'Failed to skip indefinite length body: \"' + this.tag + '\"');\n if (buffer.isError(res))\n return res;\n\n len = buffer.offset - state.offset;\n buffer.restore(state);\n return buffer.skip(len, 'Failed to match body of: \"' + tag + '\"');\n};\n\nDERNode.prototype._skipUntilEnd = function skipUntilEnd(buffer, fail) {\n for (;;) {\n const tag = derDecodeTag(buffer, fail);\n if (buffer.isError(tag))\n return tag;\n const len = derDecodeLen(buffer, tag.primitive, fail);\n if (buffer.isError(len))\n return len;\n\n let res;\n if (tag.primitive || len !== null)\n res = buffer.skip(len);\n else\n res = this._skipUntilEnd(buffer, fail);\n\n // Failure\n if (buffer.isError(res))\n return res;\n\n if (tag.tagStr === 'end')\n break;\n }\n};\n\nDERNode.prototype._decodeList = function decodeList(buffer, tag, decoder,\n options) {\n const result = [];\n while (!buffer.isEmpty()) {\n const possibleEnd = this._peekTag(buffer, 'end');\n if (buffer.isError(possibleEnd))\n return possibleEnd;\n\n const res = decoder.decode(buffer, 'der', options);\n if (buffer.isError(res) && possibleEnd)\n break;\n result.push(res);\n }\n return result;\n};\n\nDERNode.prototype._decodeStr = function decodeStr(buffer, tag) {\n if (tag === 'bitstr') {\n const unused = buffer.readUInt8();\n if (buffer.isError(unused))\n return unused;\n return { unused: unused, data: buffer.raw() };\n } else if (tag === 'bmpstr') {\n const raw = buffer.raw();\n if (raw.length % 2 === 1)\n return buffer.error('Decoding of string type: bmpstr length mismatch');\n\n let str = '';\n for (let i = 0; i < raw.length / 2; i++) {\n str += String.fromCharCode(raw.readUInt16BE(i * 2));\n }\n return str;\n } else if (tag === 'numstr') {\n const numstr = buffer.raw().toString('ascii');\n if (!this._isNumstr(numstr)) {\n return buffer.error('Decoding of string type: ' +\n 'numstr unsupported characters');\n }\n return numstr;\n } else if (tag === 'octstr') {\n return buffer.raw();\n } else if (tag === 'objDesc') {\n return buffer.raw();\n } else if (tag === 'printstr') {\n const printstr = buffer.raw().toString('ascii');\n if (!this._isPrintstr(printstr)) {\n return buffer.error('Decoding of string type: ' +\n 'printstr unsupported characters');\n }\n return printstr;\n } else if (/str$/.test(tag)) {\n return buffer.raw().toString();\n } else {\n return buffer.error('Decoding of string type: ' + tag + ' unsupported');\n }\n};\n\nDERNode.prototype._decodeObjid = function decodeObjid(buffer, values, relative) {\n let result;\n const identifiers = [];\n let ident = 0;\n let subident = 0;\n while (!buffer.isEmpty()) {\n subident = buffer.readUInt8();\n ident <<= 7;\n ident |= subident & 0x7f;\n if ((subident & 0x80) === 0) {\n identifiers.push(ident);\n ident = 0;\n }\n }\n if (subident & 0x80)\n identifiers.push(ident);\n\n const first = (identifiers[0] / 40) | 0;\n const second = identifiers[0] % 40;\n\n if (relative)\n result = identifiers;\n else\n result = [first, second].concat(identifiers.slice(1));\n\n if (values) {\n let tmp = values[result.join(' ')];\n if (tmp === undefined)\n tmp = values[result.join('.')];\n if (tmp !== undefined)\n result = tmp;\n }\n\n return result;\n};\n\nDERNode.prototype._decodeTime = function decodeTime(buffer, tag) {\n const str = buffer.raw().toString();\n\n let year;\n let mon;\n let day;\n let hour;\n let min;\n let sec;\n if (tag === 'gentime') {\n year = str.slice(0, 4) | 0;\n mon = str.slice(4, 6) | 0;\n day = str.slice(6, 8) | 0;\n hour = str.slice(8, 10) | 0;\n min = str.slice(10, 12) | 0;\n sec = str.slice(12, 14) | 0;\n } else if (tag === 'utctime') {\n year = str.slice(0, 2) | 0;\n mon = str.slice(2, 4) | 0;\n day = str.slice(4, 6) | 0;\n hour = str.slice(6, 8) | 0;\n min = str.slice(8, 10) | 0;\n sec = str.slice(10, 12) | 0;\n if (year < 70)\n year = 2000 + year;\n else\n year = 1900 + year;\n } else {\n return buffer.error('Decoding ' + tag + ' time is not supported yet');\n }\n\n return Date.UTC(year, mon - 1, day, hour, min, sec, 0);\n};\n\nDERNode.prototype._decodeNull = function decodeNull() {\n return null;\n};\n\nDERNode.prototype._decodeBool = function decodeBool(buffer) {\n const res = buffer.readUInt8();\n if (buffer.isError(res))\n return res;\n else\n return res !== 0;\n};\n\nDERNode.prototype._decodeInt = function decodeInt(buffer, values) {\n // Bigint, return as it is (assume big endian)\n const raw = buffer.raw();\n let res = new bignum(raw);\n\n if (values)\n res = values[res.toString(10)] || res;\n\n return res;\n};\n\nDERNode.prototype._use = function use(entity, obj) {\n if (typeof entity === 'function')\n entity = entity(obj);\n return entity._getDecoder('der').tree;\n};\n\n// Utility methods\n\nfunction derDecodeTag(buf, fail) {\n let tag = buf.readUInt8(fail);\n if (buf.isError(tag))\n return tag;\n\n const cls = der.tagClass[tag >> 6];\n const primitive = (tag & 0x20) === 0;\n\n // Multi-octet tag - load\n if ((tag & 0x1f) === 0x1f) {\n let oct = tag;\n tag = 0;\n while ((oct & 0x80) === 0x80) {\n oct = buf.readUInt8(fail);\n if (buf.isError(oct))\n return oct;\n\n tag <<= 7;\n tag |= oct & 0x7f;\n }\n } else {\n tag &= 0x1f;\n }\n const tagStr = der.tag[tag];\n\n return {\n cls: cls,\n primitive: primitive,\n tag: tag,\n tagStr: tagStr\n };\n}\n\nfunction derDecodeLen(buf, primitive, fail) {\n let len = buf.readUInt8(fail);\n if (buf.isError(len))\n return len;\n\n // Indefinite form\n if (!primitive && len === 0x80)\n return null;\n\n // Definite form\n if ((len & 0x80) === 0) {\n // Short form\n return len;\n }\n\n // Long form\n const num = len & 0x7f;\n if (num > 4)\n return buf.error('length octect is too long');\n\n len = 0;\n for (let i = 0; i < num; i++) {\n len <<= 8;\n const j = buf.readUInt8(fail);\n if (buf.isError(j))\n return j;\n len |= j;\n }\n\n return len;\n}\n","var createHash = require('create-hash')\nvar Buffer = require('safe-buffer').Buffer\n\nmodule.exports = function (seed, len) {\n var t = Buffer.alloc(0)\n var i = 0\n var c\n while (t.length < len) {\n c = i2ops(i++)\n t = Buffer.concat([t, createHash('sha1').update(seed).update(c).digest()])\n }\n return t.slice(0, len)\n}\n\nfunction i2ops (c) {\n var out = Buffer.allocUnsafe(4)\n out.writeUInt32BE(c, 0)\n return out\n}\n","module.exports = function xor (a, b) {\n var len = a.length\n var i = -1\n while (++i < len) {\n a[i] ^= b[i]\n }\n return a\n}\n","var BN = require('bn.js')\nvar Buffer = require('safe-buffer').Buffer\n\nfunction withPublic (paddedMsg, key) {\n return Buffer.from(paddedMsg\n .toRed(BN.mont(key.modulus))\n .redPow(new BN(key.publicExponent))\n .fromRed()\n .toArray())\n}\n\nmodule.exports = withPublic\n","// Unique ID creation requires a high quality random # generator. In the\n// browser this is a little complicated due to unknown quality of Math.random()\n// and inconsistent support for the `crypto` API. We do the best we can via\n// feature-detection\n\n// getRandomValues needs to be invoked in a context where \"this\" is a Crypto\n// implementation. Also, find the complete implementation of crypto on IE11.\nvar getRandomValues = (typeof(crypto) != 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto)) ||\n (typeof(msCrypto) != 'undefined' && typeof window.msCrypto.getRandomValues == 'function' && msCrypto.getRandomValues.bind(msCrypto));\n\nif (getRandomValues) {\n // WHATWG crypto RNG - http://wiki.whatwg.org/wiki/Crypto\n var rnds8 = new Uint8Array(16); // eslint-disable-line no-undef\n\n module.exports = function whatwgRNG() {\n getRandomValues(rnds8);\n return rnds8;\n };\n} else {\n // Math.random()-based (RNG)\n //\n // If all else fails, use Math.random(). It's fast, but is of unspecified\n // quality.\n var rnds = new Array(16);\n\n module.exports = function mathRNG() {\n for (var i = 0, r; i < 16; i++) {\n if ((i & 0x03) === 0) r = Math.random() * 0x100000000;\n rnds[i] = r >>> ((i & 0x03) << 3) & 0xff;\n }\n\n return rnds;\n };\n}\n","/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\nvar byteToHex = [];\nfor (var i = 0; i < 256; ++i) {\n byteToHex[i] = (i + 0x100).toString(16).substr(1);\n}\n\nfunction bytesToUuid(buf, offset) {\n var i = offset || 0;\n var bth = byteToHex;\n // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4\n return ([bth[buf[i++]], bth[buf[i++]], \n\tbth[buf[i++]], bth[buf[i++]], '-',\n\tbth[buf[i++]], bth[buf[i++]], '-',\n\tbth[buf[i++]], bth[buf[i++]], '-',\n\tbth[buf[i++]], bth[buf[i++]], '-',\n\tbth[buf[i++]], bth[buf[i++]],\n\tbth[buf[i++]], bth[buf[i++]],\n\tbth[buf[i++]], bth[buf[i++]]]).join('');\n}\n\nmodule.exports = bytesToUuid;\n","module.exports = require('./lib')(require('./lib/elliptic'))\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n'use strict';\n\nmodule.exports = Readable;\n/**/\n\nvar Duplex;\n/**/\n\nReadable.ReadableState = ReadableState;\n/**/\n\nvar EE = require('events').EventEmitter;\n\nvar EElistenerCount = function EElistenerCount(emitter, type) {\n return emitter.listeners(type).length;\n};\n/**/\n\n/**/\n\n\nvar Stream = require('./internal/streams/stream');\n/**/\n\n\nvar Buffer = require('buffer').Buffer;\n\nvar OurUint8Array = global.Uint8Array || function () {};\n\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\n\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n/**/\n\n\nvar debugUtil = require('util');\n\nvar debug;\n\nif (debugUtil && debugUtil.debuglog) {\n debug = debugUtil.debuglog('stream');\n} else {\n debug = function debug() {};\n}\n/**/\n\n\nvar BufferList = require('./internal/streams/buffer_list');\n\nvar destroyImpl = require('./internal/streams/destroy');\n\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\n\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_STREAM_UNSHIFT_AFTER_END_EVENT = _require$codes.ERR_STREAM_UNSHIFT_AFTER_END_EVENT; // Lazy loaded to improve the startup performance.\n\n\nvar StringDecoder;\nvar createReadableStreamAsyncIterator;\nvar from;\n\nrequire('inherits')(Readable, Stream);\n\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\nvar kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];\n\nfunction prependListener(emitter, event, fn) {\n // Sadly this is not cacheable as some libraries bundle their own\n // event emitter implementation with them.\n if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn); // This is a hack to make sure that our error handler is attached before any\n // userland ones. NEVER DO THIS. This is here only because this code needs\n // to continue to work with older versions of Node.js that do not include\n // the prependListener() method. The goal is to eventually remove this hack.\n\n if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];\n}\n\nfunction ReadableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {}; // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream.\n // These options can be provided separately as readableXXX and writableXXX.\n\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag. Used to make read(n) ignore n and to\n // make all the buffer merging and length checks go away\n\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode; // the point at which it stops calling _read() to fill the buffer\n // Note: 0 is a valid value, means \"don't call _read preemptively ever\"\n\n this.highWaterMark = getHighWaterMark(this, options, 'readableHighWaterMark', isDuplex); // A linked list is used to store data chunks instead of an array because the\n // linked list can remove elements from the beginning faster than\n // array.shift()\n\n this.buffer = new BufferList();\n this.length = 0;\n this.pipes = null;\n this.pipesCount = 0;\n this.flowing = null;\n this.ended = false;\n this.endEmitted = false;\n this.reading = false; // a flag to be able to tell if the event 'readable'/'data' is emitted\n // immediately, or on a later tick. We set this to true at first, because\n // any actions that shouldn't happen until \"later\" should generally also\n // not happen before the first read call.\n\n this.sync = true; // whenever we return null, then we set a flag to say\n // that we're awaiting a 'readable' event emission.\n\n this.needReadable = false;\n this.emittedReadable = false;\n this.readableListening = false;\n this.resumeScheduled = false;\n this.paused = true; // Should close be emitted on destroy. Defaults to true.\n\n this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'end' (and potentially 'finish')\n\n this.autoDestroy = !!options.autoDestroy; // has it been destroyed\n\n this.destroyed = false; // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n\n this.defaultEncoding = options.defaultEncoding || 'utf8'; // the number of writers that are awaiting a drain event in .pipe()s\n\n this.awaitDrain = 0; // if true, a maybeReadMore has been scheduled\n\n this.readingMore = false;\n this.decoder = null;\n this.encoding = null;\n\n if (options.encoding) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n this.decoder = new StringDecoder(options.encoding);\n this.encoding = options.encoding;\n }\n}\n\nfunction Readable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n if (!(this instanceof Readable)) return new Readable(options); // Checking for a Stream.Duplex instance is faster here instead of inside\n // the ReadableState constructor, at least with V8 6.5\n\n var isDuplex = this instanceof Duplex;\n this._readableState = new ReadableState(options, this, isDuplex); // legacy\n\n this.readable = true;\n\n if (options) {\n if (typeof options.read === 'function') this._read = options.read;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n }\n\n Stream.call(this);\n}\n\nObject.defineProperty(Readable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined) {\n return false;\n }\n\n return this._readableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._readableState) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._readableState.destroyed = value;\n }\n});\nReadable.prototype.destroy = destroyImpl.destroy;\nReadable.prototype._undestroy = destroyImpl.undestroy;\n\nReadable.prototype._destroy = function (err, cb) {\n cb(err);\n}; // Manually shove something into the read() buffer.\n// This returns true if the highWaterMark has not been hit yet,\n// similar to how Writable.write() returns true if you should\n// write() some more.\n\n\nReadable.prototype.push = function (chunk, encoding) {\n var state = this._readableState;\n var skipChunkCheck;\n\n if (!state.objectMode) {\n if (typeof chunk === 'string') {\n encoding = encoding || state.defaultEncoding;\n\n if (encoding !== state.encoding) {\n chunk = Buffer.from(chunk, encoding);\n encoding = '';\n }\n\n skipChunkCheck = true;\n }\n } else {\n skipChunkCheck = true;\n }\n\n return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);\n}; // Unshift should *always* be something directly out of read()\n\n\nReadable.prototype.unshift = function (chunk) {\n return readableAddChunk(this, chunk, null, true, false);\n};\n\nfunction readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {\n debug('readableAddChunk', chunk);\n var state = stream._readableState;\n\n if (chunk === null) {\n state.reading = false;\n onEofChunk(stream, state);\n } else {\n var er;\n if (!skipChunkCheck) er = chunkInvalid(state, chunk);\n\n if (er) {\n errorOrDestroy(stream, er);\n } else if (state.objectMode || chunk && chunk.length > 0) {\n if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (addToFront) {\n if (state.endEmitted) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT());else addChunk(stream, state, chunk, true);\n } else if (state.ended) {\n errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF());\n } else if (state.destroyed) {\n return false;\n } else {\n state.reading = false;\n\n if (state.decoder && !encoding) {\n chunk = state.decoder.write(chunk);\n if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);\n } else {\n addChunk(stream, state, chunk, false);\n }\n }\n } else if (!addToFront) {\n state.reading = false;\n maybeReadMore(stream, state);\n }\n } // We can push more data if we are below the highWaterMark.\n // Also, if we have no data yet, we can stand some more bytes.\n // This is to work around cases where hwm=0, such as the repl.\n\n\n return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n}\n\nfunction addChunk(stream, state, chunk, addToFront) {\n if (state.flowing && state.length === 0 && !state.sync) {\n state.awaitDrain = 0;\n stream.emit('data', chunk);\n } else {\n // update the buffer info.\n state.length += state.objectMode ? 1 : chunk.length;\n if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);\n if (state.needReadable) emitReadable(stream);\n }\n\n maybeReadMore(stream, state);\n}\n\nfunction chunkInvalid(state, chunk) {\n var er;\n\n if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer', 'Uint8Array'], chunk);\n }\n\n return er;\n}\n\nReadable.prototype.isPaused = function () {\n return this._readableState.flowing === false;\n}; // backwards compatibility.\n\n\nReadable.prototype.setEncoding = function (enc) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n var decoder = new StringDecoder(enc);\n this._readableState.decoder = decoder; // If setEncoding(null), decoder.encoding equals utf8\n\n this._readableState.encoding = this._readableState.decoder.encoding; // Iterate over current buffer to convert already stored Buffers:\n\n var p = this._readableState.buffer.head;\n var content = '';\n\n while (p !== null) {\n content += decoder.write(p.data);\n p = p.next;\n }\n\n this._readableState.buffer.clear();\n\n if (content !== '') this._readableState.buffer.push(content);\n this._readableState.length = content.length;\n return this;\n}; // Don't raise the hwm > 1GB\n\n\nvar MAX_HWM = 0x40000000;\n\nfunction computeNewHighWaterMark(n) {\n if (n >= MAX_HWM) {\n // TODO(ronag): Throw ERR_VALUE_OUT_OF_RANGE.\n n = MAX_HWM;\n } else {\n // Get the next highest power of 2 to prevent increasing hwm excessively in\n // tiny amounts\n n--;\n n |= n >>> 1;\n n |= n >>> 2;\n n |= n >>> 4;\n n |= n >>> 8;\n n |= n >>> 16;\n n++;\n }\n\n return n;\n} // This function is designed to be inlinable, so please take care when making\n// changes to the function body.\n\n\nfunction howMuchToRead(n, state) {\n if (n <= 0 || state.length === 0 && state.ended) return 0;\n if (state.objectMode) return 1;\n\n if (n !== n) {\n // Only flow one buffer at a time\n if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;\n } // If we're asking for more than the current hwm, then raise the hwm.\n\n\n if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);\n if (n <= state.length) return n; // Don't have enough\n\n if (!state.ended) {\n state.needReadable = true;\n return 0;\n }\n\n return state.length;\n} // you can override either this method, or the async _read(n) below.\n\n\nReadable.prototype.read = function (n) {\n debug('read', n);\n n = parseInt(n, 10);\n var state = this._readableState;\n var nOrig = n;\n if (n !== 0) state.emittedReadable = false; // if we're doing read(0) to trigger a readable event, but we\n // already have a bunch of data in the buffer, then just trigger\n // the 'readable' event and move on.\n\n if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n debug('read: emitReadable', state.length, state.ended);\n if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);\n return null;\n }\n\n n = howMuchToRead(n, state); // if we've ended, and we're now clear, then finish it up.\n\n if (n === 0 && state.ended) {\n if (state.length === 0) endReadable(this);\n return null;\n } // All the actual chunk generation logic needs to be\n // *below* the call to _read. The reason is that in certain\n // synthetic stream cases, such as passthrough streams, _read\n // may be a completely synchronous operation which may change\n // the state of the read buffer, providing enough data when\n // before there was *not* enough.\n //\n // So, the steps are:\n // 1. Figure out what the state of things will be after we do\n // a read from the buffer.\n //\n // 2. If that resulting state will trigger a _read, then call _read.\n // Note that this may be asynchronous, or synchronous. Yes, it is\n // deeply ugly to write APIs this way, but that still doesn't mean\n // that the Readable class should behave improperly, as streams are\n // designed to be sync/async agnostic.\n // Take note if the _read call is sync or async (ie, if the read call\n // has returned yet), so that we know whether or not it's safe to emit\n // 'readable' etc.\n //\n // 3. Actually pull the requested chunks out of the buffer and return.\n // if we need a readable event, then we need to do some reading.\n\n\n var doRead = state.needReadable;\n debug('need readable', doRead); // if we currently have less than the highWaterMark, then also read some\n\n if (state.length === 0 || state.length - n < state.highWaterMark) {\n doRead = true;\n debug('length less than watermark', doRead);\n } // however, if we've ended, then there's no point, and if we're already\n // reading, then it's unnecessary.\n\n\n if (state.ended || state.reading) {\n doRead = false;\n debug('reading or ended', doRead);\n } else if (doRead) {\n debug('do read');\n state.reading = true;\n state.sync = true; // if the length is currently zero, then we *need* a readable event.\n\n if (state.length === 0) state.needReadable = true; // call internal read method\n\n this._read(state.highWaterMark);\n\n state.sync = false; // If _read pushed data synchronously, then `reading` will be false,\n // and we need to re-evaluate how much data we can return to the user.\n\n if (!state.reading) n = howMuchToRead(nOrig, state);\n }\n\n var ret;\n if (n > 0) ret = fromList(n, state);else ret = null;\n\n if (ret === null) {\n state.needReadable = state.length <= state.highWaterMark;\n n = 0;\n } else {\n state.length -= n;\n state.awaitDrain = 0;\n }\n\n if (state.length === 0) {\n // If we have nothing in the buffer, then we want to know\n // as soon as we *do* get something into the buffer.\n if (!state.ended) state.needReadable = true; // If we tried to read() past the EOF, then emit end on the next tick.\n\n if (nOrig !== n && state.ended) endReadable(this);\n }\n\n if (ret !== null) this.emit('data', ret);\n return ret;\n};\n\nfunction onEofChunk(stream, state) {\n debug('onEofChunk');\n if (state.ended) return;\n\n if (state.decoder) {\n var chunk = state.decoder.end();\n\n if (chunk && chunk.length) {\n state.buffer.push(chunk);\n state.length += state.objectMode ? 1 : chunk.length;\n }\n }\n\n state.ended = true;\n\n if (state.sync) {\n // if we are sync, wait until next tick to emit the data.\n // Otherwise we risk emitting data in the flow()\n // the readable code triggers during a read() call\n emitReadable(stream);\n } else {\n // emit 'readable' now to make sure it gets picked up.\n state.needReadable = false;\n\n if (!state.emittedReadable) {\n state.emittedReadable = true;\n emitReadable_(stream);\n }\n }\n} // Don't emit readable right away in sync mode, because this can trigger\n// another read() call => stack overflow. This way, it might trigger\n// a nextTick recursion warning, but that's not so bad.\n\n\nfunction emitReadable(stream) {\n var state = stream._readableState;\n debug('emitReadable', state.needReadable, state.emittedReadable);\n state.needReadable = false;\n\n if (!state.emittedReadable) {\n debug('emitReadable', state.flowing);\n state.emittedReadable = true;\n process.nextTick(emitReadable_, stream);\n }\n}\n\nfunction emitReadable_(stream) {\n var state = stream._readableState;\n debug('emitReadable_', state.destroyed, state.length, state.ended);\n\n if (!state.destroyed && (state.length || state.ended)) {\n stream.emit('readable');\n state.emittedReadable = false;\n } // The stream needs another readable event if\n // 1. It is not flowing, as the flow mechanism will take\n // care of it.\n // 2. It is not ended.\n // 3. It is below the highWaterMark, so we can schedule\n // another readable later.\n\n\n state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark;\n flow(stream);\n} // at this point, the user has presumably seen the 'readable' event,\n// and called read() to consume some data. that may have triggered\n// in turn another _read(n) call, in which case reading = true if\n// it's in progress.\n// However, if we're not ended, or reading, and the length < hwm,\n// then go ahead and try to read some more preemptively.\n\n\nfunction maybeReadMore(stream, state) {\n if (!state.readingMore) {\n state.readingMore = true;\n process.nextTick(maybeReadMore_, stream, state);\n }\n}\n\nfunction maybeReadMore_(stream, state) {\n // Attempt to read more data if we should.\n //\n // The conditions for reading more data are (one of):\n // - Not enough data buffered (state.length < state.highWaterMark). The loop\n // is responsible for filling the buffer with enough data if such data\n // is available. If highWaterMark is 0 and we are not in the flowing mode\n // we should _not_ attempt to buffer any extra data. We'll get more data\n // when the stream consumer calls read() instead.\n // - No data in the buffer, and the stream is in flowing mode. In this mode\n // the loop below is responsible for ensuring read() is called. Failing to\n // call read here would abort the flow and there's no other mechanism for\n // continuing the flow if the stream consumer has just subscribed to the\n // 'data' event.\n //\n // In addition to the above conditions to keep reading data, the following\n // conditions prevent the data from being read:\n // - The stream has ended (state.ended).\n // - There is already a pending 'read' operation (state.reading). This is a\n // case where the the stream has called the implementation defined _read()\n // method, but they are processing the call asynchronously and have _not_\n // called push() with new data. In this case we skip performing more\n // read()s. The execution ends in this method again after the _read() ends\n // up calling push() with more data.\n while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) {\n var len = state.length;\n debug('maybeReadMore read 0');\n stream.read(0);\n if (len === state.length) // didn't get any data, stop spinning.\n break;\n }\n\n state.readingMore = false;\n} // abstract method. to be overridden in specific implementation classes.\n// call cb(er, data) where data is <= n in length.\n// for virtual (non-string, non-buffer) streams, \"length\" is somewhat\n// arbitrary, and perhaps not very meaningful.\n\n\nReadable.prototype._read = function (n) {\n errorOrDestroy(this, new ERR_METHOD_NOT_IMPLEMENTED('_read()'));\n};\n\nReadable.prototype.pipe = function (dest, pipeOpts) {\n var src = this;\n var state = this._readableState;\n\n switch (state.pipesCount) {\n case 0:\n state.pipes = dest;\n break;\n\n case 1:\n state.pipes = [state.pipes, dest];\n break;\n\n default:\n state.pipes.push(dest);\n break;\n }\n\n state.pipesCount += 1;\n debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);\n var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;\n var endFn = doEnd ? onend : unpipe;\n if (state.endEmitted) process.nextTick(endFn);else src.once('end', endFn);\n dest.on('unpipe', onunpipe);\n\n function onunpipe(readable, unpipeInfo) {\n debug('onunpipe');\n\n if (readable === src) {\n if (unpipeInfo && unpipeInfo.hasUnpiped === false) {\n unpipeInfo.hasUnpiped = true;\n cleanup();\n }\n }\n }\n\n function onend() {\n debug('onend');\n dest.end();\n } // when the dest drains, it reduces the awaitDrain counter\n // on the source. This would be more elegant with a .once()\n // handler in flow(), but adding and removing repeatedly is\n // too slow.\n\n\n var ondrain = pipeOnDrain(src);\n dest.on('drain', ondrain);\n var cleanedUp = false;\n\n function cleanup() {\n debug('cleanup'); // cleanup event handlers once the pipe is broken\n\n dest.removeListener('close', onclose);\n dest.removeListener('finish', onfinish);\n dest.removeListener('drain', ondrain);\n dest.removeListener('error', onerror);\n dest.removeListener('unpipe', onunpipe);\n src.removeListener('end', onend);\n src.removeListener('end', unpipe);\n src.removeListener('data', ondata);\n cleanedUp = true; // if the reader is waiting for a drain event from this\n // specific writer, then it would cause it to never start\n // flowing again.\n // So, if this is awaiting a drain, then we just call it now.\n // If we don't know, then assume that we are waiting for one.\n\n if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();\n }\n\n src.on('data', ondata);\n\n function ondata(chunk) {\n debug('ondata');\n var ret = dest.write(chunk);\n debug('dest.write', ret);\n\n if (ret === false) {\n // If the user unpiped during `dest.write()`, it is possible\n // to get stuck in a permanently paused state if that write\n // also returned false.\n // => Check whether `dest` is still a piping destination.\n if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {\n debug('false write response, pause', state.awaitDrain);\n state.awaitDrain++;\n }\n\n src.pause();\n }\n } // if the dest has an error, then stop piping into it.\n // however, don't suppress the throwing behavior for this.\n\n\n function onerror(er) {\n debug('onerror', er);\n unpipe();\n dest.removeListener('error', onerror);\n if (EElistenerCount(dest, 'error') === 0) errorOrDestroy(dest, er);\n } // Make sure our error handler is attached before userland ones.\n\n\n prependListener(dest, 'error', onerror); // Both close and finish should trigger unpipe, but only once.\n\n function onclose() {\n dest.removeListener('finish', onfinish);\n unpipe();\n }\n\n dest.once('close', onclose);\n\n function onfinish() {\n debug('onfinish');\n dest.removeListener('close', onclose);\n unpipe();\n }\n\n dest.once('finish', onfinish);\n\n function unpipe() {\n debug('unpipe');\n src.unpipe(dest);\n } // tell the dest that it's being piped to\n\n\n dest.emit('pipe', src); // start the flow if it hasn't been started already.\n\n if (!state.flowing) {\n debug('pipe resume');\n src.resume();\n }\n\n return dest;\n};\n\nfunction pipeOnDrain(src) {\n return function pipeOnDrainFunctionResult() {\n var state = src._readableState;\n debug('pipeOnDrain', state.awaitDrain);\n if (state.awaitDrain) state.awaitDrain--;\n\n if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {\n state.flowing = true;\n flow(src);\n }\n };\n}\n\nReadable.prototype.unpipe = function (dest) {\n var state = this._readableState;\n var unpipeInfo = {\n hasUnpiped: false\n }; // if we're not piping anywhere, then do nothing.\n\n if (state.pipesCount === 0) return this; // just one destination. most common case.\n\n if (state.pipesCount === 1) {\n // passed in one, but it's not the right one.\n if (dest && dest !== state.pipes) return this;\n if (!dest) dest = state.pipes; // got a match.\n\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n if (dest) dest.emit('unpipe', this, unpipeInfo);\n return this;\n } // slow case. multiple pipe destinations.\n\n\n if (!dest) {\n // remove all.\n var dests = state.pipes;\n var len = state.pipesCount;\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n\n for (var i = 0; i < len; i++) {\n dests[i].emit('unpipe', this, {\n hasUnpiped: false\n });\n }\n\n return this;\n } // try to find the right one.\n\n\n var index = indexOf(state.pipes, dest);\n if (index === -1) return this;\n state.pipes.splice(index, 1);\n state.pipesCount -= 1;\n if (state.pipesCount === 1) state.pipes = state.pipes[0];\n dest.emit('unpipe', this, unpipeInfo);\n return this;\n}; // set up data events if they are asked for\n// Ensure readable listeners eventually get something\n\n\nReadable.prototype.on = function (ev, fn) {\n var res = Stream.prototype.on.call(this, ev, fn);\n var state = this._readableState;\n\n if (ev === 'data') {\n // update readableListening so that resume() may be a no-op\n // a few lines down. This is needed to support once('readable').\n state.readableListening = this.listenerCount('readable') > 0; // Try start flowing on next tick if stream isn't explicitly paused\n\n if (state.flowing !== false) this.resume();\n } else if (ev === 'readable') {\n if (!state.endEmitted && !state.readableListening) {\n state.readableListening = state.needReadable = true;\n state.flowing = false;\n state.emittedReadable = false;\n debug('on readable', state.length, state.reading);\n\n if (state.length) {\n emitReadable(this);\n } else if (!state.reading) {\n process.nextTick(nReadingNextTick, this);\n }\n }\n }\n\n return res;\n};\n\nReadable.prototype.addListener = Readable.prototype.on;\n\nReadable.prototype.removeListener = function (ev, fn) {\n var res = Stream.prototype.removeListener.call(this, ev, fn);\n\n if (ev === 'readable') {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n\n return res;\n};\n\nReadable.prototype.removeAllListeners = function (ev) {\n var res = Stream.prototype.removeAllListeners.apply(this, arguments);\n\n if (ev === 'readable' || ev === undefined) {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n\n return res;\n};\n\nfunction updateReadableListening(self) {\n var state = self._readableState;\n state.readableListening = self.listenerCount('readable') > 0;\n\n if (state.resumeScheduled && !state.paused) {\n // flowing needs to be set to true now, otherwise\n // the upcoming resume will not flow.\n state.flowing = true; // crude way to check if we should resume\n } else if (self.listenerCount('data') > 0) {\n self.resume();\n }\n}\n\nfunction nReadingNextTick(self) {\n debug('readable nexttick read 0');\n self.read(0);\n} // pause() and resume() are remnants of the legacy readable stream API\n// If the user uses them, then switch into old mode.\n\n\nReadable.prototype.resume = function () {\n var state = this._readableState;\n\n if (!state.flowing) {\n debug('resume'); // we flow only if there is no one listening\n // for readable, but we still have to call\n // resume()\n\n state.flowing = !state.readableListening;\n resume(this, state);\n }\n\n state.paused = false;\n return this;\n};\n\nfunction resume(stream, state) {\n if (!state.resumeScheduled) {\n state.resumeScheduled = true;\n process.nextTick(resume_, stream, state);\n }\n}\n\nfunction resume_(stream, state) {\n debug('resume', state.reading);\n\n if (!state.reading) {\n stream.read(0);\n }\n\n state.resumeScheduled = false;\n stream.emit('resume');\n flow(stream);\n if (state.flowing && !state.reading) stream.read(0);\n}\n\nReadable.prototype.pause = function () {\n debug('call pause flowing=%j', this._readableState.flowing);\n\n if (this._readableState.flowing !== false) {\n debug('pause');\n this._readableState.flowing = false;\n this.emit('pause');\n }\n\n this._readableState.paused = true;\n return this;\n};\n\nfunction flow(stream) {\n var state = stream._readableState;\n debug('flow', state.flowing);\n\n while (state.flowing && stream.read() !== null) {\n ;\n }\n} // wrap an old-style stream as the async data source.\n// This is *not* part of the readable stream interface.\n// It is an ugly unfortunate mess of history.\n\n\nReadable.prototype.wrap = function (stream) {\n var _this = this;\n\n var state = this._readableState;\n var paused = false;\n stream.on('end', function () {\n debug('wrapped end');\n\n if (state.decoder && !state.ended) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) _this.push(chunk);\n }\n\n _this.push(null);\n });\n stream.on('data', function (chunk) {\n debug('wrapped data');\n if (state.decoder) chunk = state.decoder.write(chunk); // don't skip over falsy values in objectMode\n\n if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;\n\n var ret = _this.push(chunk);\n\n if (!ret) {\n paused = true;\n stream.pause();\n }\n }); // proxy all the other methods.\n // important when wrapping filters and duplexes.\n\n for (var i in stream) {\n if (this[i] === undefined && typeof stream[i] === 'function') {\n this[i] = function methodWrap(method) {\n return function methodWrapReturnFunction() {\n return stream[method].apply(stream, arguments);\n };\n }(i);\n }\n } // proxy certain important events.\n\n\n for (var n = 0; n < kProxyEvents.length; n++) {\n stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n]));\n } // when we try to consume some more bytes, simply unpause the\n // underlying stream.\n\n\n this._read = function (n) {\n debug('wrapped _read', n);\n\n if (paused) {\n paused = false;\n stream.resume();\n }\n };\n\n return this;\n};\n\nif (typeof Symbol === 'function') {\n Readable.prototype[Symbol.asyncIterator] = function () {\n if (createReadableStreamAsyncIterator === undefined) {\n createReadableStreamAsyncIterator = require('./internal/streams/async_iterator');\n }\n\n return createReadableStreamAsyncIterator(this);\n };\n}\n\nObject.defineProperty(Readable.prototype, 'readableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.highWaterMark;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState && this._readableState.buffer;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableFlowing', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.flowing;\n },\n set: function set(state) {\n if (this._readableState) {\n this._readableState.flowing = state;\n }\n }\n}); // exposed for testing purposes only.\n\nReadable._fromList = fromList;\nObject.defineProperty(Readable.prototype, 'readableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.length;\n }\n}); // Pluck off n bytes from an array of buffers.\n// Length is the combined lengths of all the buffers in the list.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\n\nfunction fromList(n, state) {\n // nothing buffered\n if (state.length === 0) return null;\n var ret;\n if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {\n // read it all, truncate the list\n if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.first();else ret = state.buffer.concat(state.length);\n state.buffer.clear();\n } else {\n // read part of list\n ret = state.buffer.consume(n, state.decoder);\n }\n return ret;\n}\n\nfunction endReadable(stream) {\n var state = stream._readableState;\n debug('endReadable', state.endEmitted);\n\n if (!state.endEmitted) {\n state.ended = true;\n process.nextTick(endReadableNT, state, stream);\n }\n}\n\nfunction endReadableNT(state, stream) {\n debug('endReadableNT', state.endEmitted, state.length); // Check that we didn't get one last unshift.\n\n if (!state.endEmitted && state.length === 0) {\n state.endEmitted = true;\n stream.readable = false;\n stream.emit('end');\n\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the writable side is ready for autoDestroy as well\n var wState = stream._writableState;\n\n if (!wState || wState.autoDestroy && wState.finished) {\n stream.destroy();\n }\n }\n }\n}\n\nif (typeof Symbol === 'function') {\n Readable.from = function (iterable, opts) {\n if (from === undefined) {\n from = require('./internal/streams/from');\n }\n\n return from(Readable, iterable, opts);\n };\n}\n\nfunction indexOf(xs, x) {\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) return i;\n }\n\n return -1;\n}","module.exports = require('events').EventEmitter;\n","'use strict'; // undocumented cb() API, needed for core, not for public API\n\nfunction destroy(err, cb) {\n var _this = this;\n\n var readableDestroyed = this._readableState && this._readableState.destroyed;\n var writableDestroyed = this._writableState && this._writableState.destroyed;\n\n if (readableDestroyed || writableDestroyed) {\n if (cb) {\n cb(err);\n } else if (err) {\n if (!this._writableState) {\n process.nextTick(emitErrorNT, this, err);\n } else if (!this._writableState.errorEmitted) {\n this._writableState.errorEmitted = true;\n process.nextTick(emitErrorNT, this, err);\n }\n }\n\n return this;\n } // we set destroyed to true before firing error callbacks in order\n // to make it re-entrance safe in case destroy() is called within callbacks\n\n\n if (this._readableState) {\n this._readableState.destroyed = true;\n } // if this is a duplex stream mark the writable part as destroyed as well\n\n\n if (this._writableState) {\n this._writableState.destroyed = true;\n }\n\n this._destroy(err || null, function (err) {\n if (!cb && err) {\n if (!_this._writableState) {\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else if (!_this._writableState.errorEmitted) {\n _this._writableState.errorEmitted = true;\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n } else if (cb) {\n process.nextTick(emitCloseNT, _this);\n cb(err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n });\n\n return this;\n}\n\nfunction emitErrorAndCloseNT(self, err) {\n emitErrorNT(self, err);\n emitCloseNT(self);\n}\n\nfunction emitCloseNT(self) {\n if (self._writableState && !self._writableState.emitClose) return;\n if (self._readableState && !self._readableState.emitClose) return;\n self.emit('close');\n}\n\nfunction undestroy() {\n if (this._readableState) {\n this._readableState.destroyed = false;\n this._readableState.reading = false;\n this._readableState.ended = false;\n this._readableState.endEmitted = false;\n }\n\n if (this._writableState) {\n this._writableState.destroyed = false;\n this._writableState.ended = false;\n this._writableState.ending = false;\n this._writableState.finalCalled = false;\n this._writableState.prefinished = false;\n this._writableState.finished = false;\n this._writableState.errorEmitted = false;\n }\n}\n\nfunction emitErrorNT(self, err) {\n self.emit('error', err);\n}\n\nfunction errorOrDestroy(stream, err) {\n // We have tests that rely on errors being emitted\n // in the same tick, so changing this is semver major.\n // For now when you opt-in to autoDestroy we allow\n // the error to be emitted nextTick. In a future\n // semver major update we should change the default to this.\n var rState = stream._readableState;\n var wState = stream._writableState;\n if (rState && rState.autoDestroy || wState && wState.autoDestroy) stream.destroy(err);else stream.emit('error', err);\n}\n\nmodule.exports = {\n destroy: destroy,\n undestroy: undestroy,\n errorOrDestroy: errorOrDestroy\n};","'use strict';\n\nvar ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE;\n\nfunction highWaterMarkFrom(options, isDuplex, duplexKey) {\n return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null;\n}\n\nfunction getHighWaterMark(state, options, duplexKey, isDuplex) {\n var hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n\n if (hwm != null) {\n if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) {\n var name = isDuplex ? duplexKey : 'highWaterMark';\n throw new ERR_INVALID_OPT_VALUE(name, hwm);\n }\n\n return Math.floor(hwm);\n } // Default value\n\n\n return state.objectMode ? 16 : 16 * 1024;\n}\n\nmodule.exports = {\n getHighWaterMark: getHighWaterMark\n};","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// A bit simpler than readable streams.\n// Implement an async ._write(chunk, encoding, cb), and it'll handle all\n// the drain event emission and buffering.\n'use strict';\n\nmodule.exports = Writable;\n/* */\n\nfunction WriteReq(chunk, encoding, cb) {\n this.chunk = chunk;\n this.encoding = encoding;\n this.callback = cb;\n this.next = null;\n} // It seems a linked list but it is not\n// there will be only 2 of these for each stream\n\n\nfunction CorkedRequest(state) {\n var _this = this;\n\n this.next = null;\n this.entry = null;\n\n this.finish = function () {\n onCorkedFinish(_this, state);\n };\n}\n/* */\n\n/**/\n\n\nvar Duplex;\n/**/\n\nWritable.WritableState = WritableState;\n/**/\n\nvar internalUtil = {\n deprecate: require('util-deprecate')\n};\n/**/\n\n/**/\n\nvar Stream = require('./internal/streams/stream');\n/**/\n\n\nvar Buffer = require('buffer').Buffer;\n\nvar OurUint8Array = global.Uint8Array || function () {};\n\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\n\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n\nvar destroyImpl = require('./internal/streams/destroy');\n\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\n\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED,\n ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES,\n ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END,\n ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING;\n\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\n\nrequire('inherits')(Writable, Stream);\n\nfunction nop() {}\n\nfunction WritableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {}; // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream,\n // e.g. options.readableObjectMode vs. options.writableObjectMode, etc.\n\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag to indicate whether or not this stream\n // contains buffers or objects.\n\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; // the point at which write() starts returning false\n // Note: 0 is a valid value, means that we always return false if\n // the entire buffer is not flushed immediately on write()\n\n this.highWaterMark = getHighWaterMark(this, options, 'writableHighWaterMark', isDuplex); // if _final has been called\n\n this.finalCalled = false; // drain event flag.\n\n this.needDrain = false; // at the start of calling end()\n\n this.ending = false; // when end() has been called, and returned\n\n this.ended = false; // when 'finish' is emitted\n\n this.finished = false; // has it been destroyed\n\n this.destroyed = false; // should we decode strings into buffers before passing to _write?\n // this is here so that some node-core streams can optimize string\n // handling at a lower level.\n\n var noDecode = options.decodeStrings === false;\n this.decodeStrings = !noDecode; // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n\n this.defaultEncoding = options.defaultEncoding || 'utf8'; // not an actual buffer we keep track of, but a measurement\n // of how much we're waiting to get pushed to some underlying\n // socket or file.\n\n this.length = 0; // a flag to see when we're in the middle of a write.\n\n this.writing = false; // when true all writes will be buffered until .uncork() call\n\n this.corked = 0; // a flag to be able to tell if the onwrite cb is called immediately,\n // or on a later tick. We set this to true at first, because any\n // actions that shouldn't happen until \"later\" should generally also\n // not happen before the first write call.\n\n this.sync = true; // a flag to know if we're processing previously buffered items, which\n // may call the _write() callback in the same tick, so that we don't\n // end up in an overlapped onwrite situation.\n\n this.bufferProcessing = false; // the callback that's passed to _write(chunk,cb)\n\n this.onwrite = function (er) {\n onwrite(stream, er);\n }; // the callback that the user supplies to write(chunk,encoding,cb)\n\n\n this.writecb = null; // the amount that is being written when _write is called.\n\n this.writelen = 0;\n this.bufferedRequest = null;\n this.lastBufferedRequest = null; // number of pending user-supplied write callbacks\n // this must be 0 before 'finish' can be emitted\n\n this.pendingcb = 0; // emit prefinish if the only thing we're waiting for is _write cbs\n // This is relevant for synchronous Transform streams\n\n this.prefinished = false; // True if the error was already emitted and should not be thrown again\n\n this.errorEmitted = false; // Should close be emitted on destroy. Defaults to true.\n\n this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'finish' (and potentially 'end')\n\n this.autoDestroy = !!options.autoDestroy; // count buffered requests\n\n this.bufferedRequestCount = 0; // allocate the first CorkedRequest, there is always\n // one allocated and free to use, and we maintain at most two\n\n this.corkedRequestsFree = new CorkedRequest(this);\n}\n\nWritableState.prototype.getBuffer = function getBuffer() {\n var current = this.bufferedRequest;\n var out = [];\n\n while (current) {\n out.push(current);\n current = current.next;\n }\n\n return out;\n};\n\n(function () {\n try {\n Object.defineProperty(WritableState.prototype, 'buffer', {\n get: internalUtil.deprecate(function writableStateBufferGetter() {\n return this.getBuffer();\n }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')\n });\n } catch (_) {}\n})(); // Test _writableState for inheritance to account for Duplex streams,\n// whose prototype chain only points to Readable.\n\n\nvar realHasInstance;\n\nif (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {\n realHasInstance = Function.prototype[Symbol.hasInstance];\n Object.defineProperty(Writable, Symbol.hasInstance, {\n value: function value(object) {\n if (realHasInstance.call(this, object)) return true;\n if (this !== Writable) return false;\n return object && object._writableState instanceof WritableState;\n }\n });\n} else {\n realHasInstance = function realHasInstance(object) {\n return object instanceof this;\n };\n}\n\nfunction Writable(options) {\n Duplex = Duplex || require('./_stream_duplex'); // Writable ctor is applied to Duplexes, too.\n // `realHasInstance` is necessary because using plain `instanceof`\n // would return false, as no `_writableState` property is attached.\n // Trying to use the custom `instanceof` for Writable here will also break the\n // Node.js LazyTransform implementation, which has a non-trivial getter for\n // `_writableState` that would lead to infinite recursion.\n // Checking for a Stream.Duplex instance is faster here instead of inside\n // the WritableState constructor, at least with V8 6.5\n\n var isDuplex = this instanceof Duplex;\n if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options);\n this._writableState = new WritableState(options, this, isDuplex); // legacy.\n\n this.writable = true;\n\n if (options) {\n if (typeof options.write === 'function') this._write = options.write;\n if (typeof options.writev === 'function') this._writev = options.writev;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n if (typeof options.final === 'function') this._final = options.final;\n }\n\n Stream.call(this);\n} // Otherwise people can pipe Writable streams, which is just wrong.\n\n\nWritable.prototype.pipe = function () {\n errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE());\n};\n\nfunction writeAfterEnd(stream, cb) {\n var er = new ERR_STREAM_WRITE_AFTER_END(); // TODO: defer error events consistently everywhere, not just the cb\n\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n} // Checks that a user-supplied chunk is valid, especially for the particular\n// mode the stream is in. Currently this means that `null` is never accepted\n// and undefined/non-string values are only allowed in object mode.\n\n\nfunction validChunk(stream, state, chunk, cb) {\n var er;\n\n if (chunk === null) {\n er = new ERR_STREAM_NULL_VALUES();\n } else if (typeof chunk !== 'string' && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer'], chunk);\n }\n\n if (er) {\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n return false;\n }\n\n return true;\n}\n\nWritable.prototype.write = function (chunk, encoding, cb) {\n var state = this._writableState;\n var ret = false;\n\n var isBuf = !state.objectMode && _isUint8Array(chunk);\n\n if (isBuf && !Buffer.isBuffer(chunk)) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n\n if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;\n if (typeof cb !== 'function') cb = nop;\n if (state.ending) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {\n state.pendingcb++;\n ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);\n }\n return ret;\n};\n\nWritable.prototype.cork = function () {\n this._writableState.corked++;\n};\n\nWritable.prototype.uncork = function () {\n var state = this._writableState;\n\n if (state.corked) {\n state.corked--;\n if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);\n }\n};\n\nWritable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n // node::ParseEncoding() requires lower case.\n if (typeof encoding === 'string') encoding = encoding.toLowerCase();\n if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding);\n this._writableState.defaultEncoding = encoding;\n return this;\n};\n\nObject.defineProperty(Writable.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\n\nfunction decodeChunk(state, chunk, encoding) {\n if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {\n chunk = Buffer.from(chunk, encoding);\n }\n\n return chunk;\n}\n\nObject.defineProperty(Writable.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n}); // if we're already writing something, then just put this\n// in the queue, and wait our turn. Otherwise, call _write\n// If we return false, then we need a drain event, so set that flag.\n\nfunction writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {\n if (!isBuf) {\n var newChunk = decodeChunk(state, chunk, encoding);\n\n if (chunk !== newChunk) {\n isBuf = true;\n encoding = 'buffer';\n chunk = newChunk;\n }\n }\n\n var len = state.objectMode ? 1 : chunk.length;\n state.length += len;\n var ret = state.length < state.highWaterMark; // we must ensure that previous needDrain will not be reset to false.\n\n if (!ret) state.needDrain = true;\n\n if (state.writing || state.corked) {\n var last = state.lastBufferedRequest;\n state.lastBufferedRequest = {\n chunk: chunk,\n encoding: encoding,\n isBuf: isBuf,\n callback: cb,\n next: null\n };\n\n if (last) {\n last.next = state.lastBufferedRequest;\n } else {\n state.bufferedRequest = state.lastBufferedRequest;\n }\n\n state.bufferedRequestCount += 1;\n } else {\n doWrite(stream, state, false, len, chunk, encoding, cb);\n }\n\n return ret;\n}\n\nfunction doWrite(stream, state, writev, len, chunk, encoding, cb) {\n state.writelen = len;\n state.writecb = cb;\n state.writing = true;\n state.sync = true;\n if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED('write'));else if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);\n state.sync = false;\n}\n\nfunction onwriteError(stream, state, sync, er, cb) {\n --state.pendingcb;\n\n if (sync) {\n // defer the callback if we are being called synchronously\n // to avoid piling up things on the stack\n process.nextTick(cb, er); // this can emit finish, and it will always happen\n // after error\n\n process.nextTick(finishMaybe, stream, state);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er);\n } else {\n // the caller expect this to happen before if\n // it is async\n cb(er);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er); // this can emit finish, but finish must\n // always follow error\n\n finishMaybe(stream, state);\n }\n}\n\nfunction onwriteStateUpdate(state) {\n state.writing = false;\n state.writecb = null;\n state.length -= state.writelen;\n state.writelen = 0;\n}\n\nfunction onwrite(stream, er) {\n var state = stream._writableState;\n var sync = state.sync;\n var cb = state.writecb;\n if (typeof cb !== 'function') throw new ERR_MULTIPLE_CALLBACK();\n onwriteStateUpdate(state);\n if (er) onwriteError(stream, state, sync, er, cb);else {\n // Check if we're actually ready to finish, but don't emit yet\n var finished = needFinish(state) || stream.destroyed;\n\n if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {\n clearBuffer(stream, state);\n }\n\n if (sync) {\n process.nextTick(afterWrite, stream, state, finished, cb);\n } else {\n afterWrite(stream, state, finished, cb);\n }\n }\n}\n\nfunction afterWrite(stream, state, finished, cb) {\n if (!finished) onwriteDrain(stream, state);\n state.pendingcb--;\n cb();\n finishMaybe(stream, state);\n} // Must force callback to be called on nextTick, so that we don't\n// emit 'drain' before the write() consumer gets the 'false' return\n// value, and has a chance to attach a 'drain' listener.\n\n\nfunction onwriteDrain(stream, state) {\n if (state.length === 0 && state.needDrain) {\n state.needDrain = false;\n stream.emit('drain');\n }\n} // if there's something in the buffer waiting, then process it\n\n\nfunction clearBuffer(stream, state) {\n state.bufferProcessing = true;\n var entry = state.bufferedRequest;\n\n if (stream._writev && entry && entry.next) {\n // Fast case, write everything using _writev()\n var l = state.bufferedRequestCount;\n var buffer = new Array(l);\n var holder = state.corkedRequestsFree;\n holder.entry = entry;\n var count = 0;\n var allBuffers = true;\n\n while (entry) {\n buffer[count] = entry;\n if (!entry.isBuf) allBuffers = false;\n entry = entry.next;\n count += 1;\n }\n\n buffer.allBuffers = allBuffers;\n doWrite(stream, state, true, state.length, buffer, '', holder.finish); // doWrite is almost always async, defer these to save a bit of time\n // as the hot path ends with doWrite\n\n state.pendingcb++;\n state.lastBufferedRequest = null;\n\n if (holder.next) {\n state.corkedRequestsFree = holder.next;\n holder.next = null;\n } else {\n state.corkedRequestsFree = new CorkedRequest(state);\n }\n\n state.bufferedRequestCount = 0;\n } else {\n // Slow case, write chunks one-by-one\n while (entry) {\n var chunk = entry.chunk;\n var encoding = entry.encoding;\n var cb = entry.callback;\n var len = state.objectMode ? 1 : chunk.length;\n doWrite(stream, state, false, len, chunk, encoding, cb);\n entry = entry.next;\n state.bufferedRequestCount--; // if we didn't call the onwrite immediately, then\n // it means that we need to wait until it does.\n // also, that means that the chunk and cb are currently\n // being processed, so move the buffer counter past them.\n\n if (state.writing) {\n break;\n }\n }\n\n if (entry === null) state.lastBufferedRequest = null;\n }\n\n state.bufferedRequest = entry;\n state.bufferProcessing = false;\n}\n\nWritable.prototype._write = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_write()'));\n};\n\nWritable.prototype._writev = null;\n\nWritable.prototype.end = function (chunk, encoding, cb) {\n var state = this._writableState;\n\n if (typeof chunk === 'function') {\n cb = chunk;\n chunk = null;\n encoding = null;\n } else if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n\n if (chunk !== null && chunk !== undefined) this.write(chunk, encoding); // .end() fully uncorks\n\n if (state.corked) {\n state.corked = 1;\n this.uncork();\n } // ignore unnecessary end() calls.\n\n\n if (!state.ending) endWritable(this, state, cb);\n return this;\n};\n\nObject.defineProperty(Writable.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n});\n\nfunction needFinish(state) {\n return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;\n}\n\nfunction callFinal(stream, state) {\n stream._final(function (err) {\n state.pendingcb--;\n\n if (err) {\n errorOrDestroy(stream, err);\n }\n\n state.prefinished = true;\n stream.emit('prefinish');\n finishMaybe(stream, state);\n });\n}\n\nfunction prefinish(stream, state) {\n if (!state.prefinished && !state.finalCalled) {\n if (typeof stream._final === 'function' && !state.destroyed) {\n state.pendingcb++;\n state.finalCalled = true;\n process.nextTick(callFinal, stream, state);\n } else {\n state.prefinished = true;\n stream.emit('prefinish');\n }\n }\n}\n\nfunction finishMaybe(stream, state) {\n var need = needFinish(state);\n\n if (need) {\n prefinish(stream, state);\n\n if (state.pendingcb === 0) {\n state.finished = true;\n stream.emit('finish');\n\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the readable side is ready for autoDestroy as well\n var rState = stream._readableState;\n\n if (!rState || rState.autoDestroy && rState.endEmitted) {\n stream.destroy();\n }\n }\n }\n }\n\n return need;\n}\n\nfunction endWritable(stream, state, cb) {\n state.ending = true;\n finishMaybe(stream, state);\n\n if (cb) {\n if (state.finished) process.nextTick(cb);else stream.once('finish', cb);\n }\n\n state.ended = true;\n stream.writable = false;\n}\n\nfunction onCorkedFinish(corkReq, state, err) {\n var entry = corkReq.entry;\n corkReq.entry = null;\n\n while (entry) {\n var cb = entry.callback;\n state.pendingcb--;\n cb(err);\n entry = entry.next;\n } // reuse the free corkReq.\n\n\n state.corkedRequestsFree.next = corkReq;\n}\n\nObject.defineProperty(Writable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._writableState === undefined) {\n return false;\n }\n\n return this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._writableState) {\n return;\n } // backward compatibility, the user is explicitly\n // managing destroyed\n\n\n this._writableState.destroyed = value;\n }\n});\nWritable.prototype.destroy = destroyImpl.destroy;\nWritable.prototype._undestroy = destroyImpl.undestroy;\n\nWritable.prototype._destroy = function (err, cb) {\n cb(err);\n};","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// a transform stream is a readable/writable stream where you do\n// something with the data. Sometimes it's called a \"filter\",\n// but that's not a great name for it, since that implies a thing where\n// some bits pass through, and others are simply ignored. (That would\n// be a valid example of a transform, of course.)\n//\n// While the output is causally related to the input, it's not a\n// necessarily symmetric or synchronous transformation. For example,\n// a zlib stream might take multiple plain-text writes(), and then\n// emit a single compressed chunk some time in the future.\n//\n// Here's how this works:\n//\n// The Transform stream has all the aspects of the readable and writable\n// stream classes. When you write(chunk), that calls _write(chunk,cb)\n// internally, and returns false if there's a lot of pending writes\n// buffered up. When you call read(), that calls _read(n) until\n// there's enough pending readable data buffered up.\n//\n// In a transform stream, the written data is placed in a buffer. When\n// _read(n) is called, it transforms the queued up data, calling the\n// buffered _write cb's as it consumes chunks. If consuming a single\n// written chunk would result in multiple output chunks, then the first\n// outputted bit calls the readcb, and subsequent chunks just go into\n// the read buffer, and will cause it to emit 'readable' if necessary.\n//\n// This way, back-pressure is actually determined by the reading side,\n// since _read has to be called to start processing a new chunk. However,\n// a pathological inflate type of transform can cause excessive buffering\n// here. For example, imagine a stream where every byte of input is\n// interpreted as an integer from 0-255, and then results in that many\n// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in\n// 1kb of data being output. In this case, you could write a very small\n// amount of input, and end up with a very large amount of output. In\n// such a pathological inflating mechanism, there'd be no way to tell\n// the system to stop doing the transform. A single 4MB write could\n// cause the system to run out of memory.\n//\n// However, even in such a pathological case, only a single written chunk\n// would be consumed, and then the rest would wait (un-transformed) until\n// the results of the previous transformed chunk were consumed.\n'use strict';\n\nmodule.exports = Transform;\n\nvar _require$codes = require('../errors').codes,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING,\n ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0;\n\nvar Duplex = require('./_stream_duplex');\n\nrequire('inherits')(Transform, Duplex);\n\nfunction afterTransform(er, data) {\n var ts = this._transformState;\n ts.transforming = false;\n var cb = ts.writecb;\n\n if (cb === null) {\n return this.emit('error', new ERR_MULTIPLE_CALLBACK());\n }\n\n ts.writechunk = null;\n ts.writecb = null;\n if (data != null) // single equals check for both `null` and `undefined`\n this.push(data);\n cb(er);\n var rs = this._readableState;\n rs.reading = false;\n\n if (rs.needReadable || rs.length < rs.highWaterMark) {\n this._read(rs.highWaterMark);\n }\n}\n\nfunction Transform(options) {\n if (!(this instanceof Transform)) return new Transform(options);\n Duplex.call(this, options);\n this._transformState = {\n afterTransform: afterTransform.bind(this),\n needTransform: false,\n transforming: false,\n writecb: null,\n writechunk: null,\n writeencoding: null\n }; // start out asking for a readable event once data is transformed.\n\n this._readableState.needReadable = true; // we have implemented the _read method, and done the other things\n // that Readable wants before the first _read call, so unset the\n // sync guard flag.\n\n this._readableState.sync = false;\n\n if (options) {\n if (typeof options.transform === 'function') this._transform = options.transform;\n if (typeof options.flush === 'function') this._flush = options.flush;\n } // When the writable side finishes, then flush out anything remaining.\n\n\n this.on('prefinish', prefinish);\n}\n\nfunction prefinish() {\n var _this = this;\n\n if (typeof this._flush === 'function' && !this._readableState.destroyed) {\n this._flush(function (er, data) {\n done(_this, er, data);\n });\n } else {\n done(this, null, null);\n }\n}\n\nTransform.prototype.push = function (chunk, encoding) {\n this._transformState.needTransform = false;\n return Duplex.prototype.push.call(this, chunk, encoding);\n}; // This is the part where you do stuff!\n// override this function in implementation classes.\n// 'chunk' is an input chunk.\n//\n// Call `push(newChunk)` to pass along transformed output\n// to the readable side. You may call 'push' zero or more times.\n//\n// Call `cb(err)` when you are done with this chunk. If you pass\n// an error, then that'll put the hurt on the whole operation. If you\n// never call cb(), then you'll never get another chunk.\n\n\nTransform.prototype._transform = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_transform()'));\n};\n\nTransform.prototype._write = function (chunk, encoding, cb) {\n var ts = this._transformState;\n ts.writecb = cb;\n ts.writechunk = chunk;\n ts.writeencoding = encoding;\n\n if (!ts.transforming) {\n var rs = this._readableState;\n if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);\n }\n}; // Doesn't matter what the args are here.\n// _transform does all the work.\n// That we got here means that the readable side wants more data.\n\n\nTransform.prototype._read = function (n) {\n var ts = this._transformState;\n\n if (ts.writechunk !== null && !ts.transforming) {\n ts.transforming = true;\n\n this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);\n } else {\n // mark that we need a transform, so that any data that comes in\n // will get processed, now that we've asked for it.\n ts.needTransform = true;\n }\n};\n\nTransform.prototype._destroy = function (err, cb) {\n Duplex.prototype._destroy.call(this, err, function (err2) {\n cb(err2);\n });\n};\n\nfunction done(stream, er, data) {\n if (er) return stream.emit('error', er);\n if (data != null) // single equals check for both `null` and `undefined`\n stream.push(data); // TODO(BridgeAR): Write a test for these two error cases\n // if there's nothing in the write buffer, then that means\n // that nothing more will ever be provided\n\n if (stream._writableState.length) throw new ERR_TRANSFORM_WITH_LENGTH_0();\n if (stream._transformState.transforming) throw new ERR_TRANSFORM_ALREADY_TRANSFORMING();\n return stream.push(null);\n}","'use strict'\nvar Buffer = require('safe-buffer').Buffer\nvar Transform = require('readable-stream').Transform\nvar inherits = require('inherits')\n\nfunction throwIfNotStringOrBuffer (val, prefix) {\n if (!Buffer.isBuffer(val) && typeof val !== 'string') {\n throw new TypeError(prefix + ' must be a string or a buffer')\n }\n}\n\nfunction HashBase (blockSize) {\n Transform.call(this)\n\n this._block = Buffer.allocUnsafe(blockSize)\n this._blockSize = blockSize\n this._blockOffset = 0\n this._length = [0, 0, 0, 0]\n\n this._finalized = false\n}\n\ninherits(HashBase, Transform)\n\nHashBase.prototype._transform = function (chunk, encoding, callback) {\n var error = null\n try {\n this.update(chunk, encoding)\n } catch (err) {\n error = err\n }\n\n callback(error)\n}\n\nHashBase.prototype._flush = function (callback) {\n var error = null\n try {\n this.push(this.digest())\n } catch (err) {\n error = err\n }\n\n callback(error)\n}\n\nHashBase.prototype.update = function (data, encoding) {\n throwIfNotStringOrBuffer(data, 'Data')\n if (this._finalized) throw new Error('Digest already called')\n if (!Buffer.isBuffer(data)) data = Buffer.from(data, encoding)\n\n // consume data\n var block = this._block\n var offset = 0\n while (this._blockOffset + data.length - offset >= this._blockSize) {\n for (var i = this._blockOffset; i < this._blockSize;) block[i++] = data[offset++]\n this._update()\n this._blockOffset = 0\n }\n while (offset < data.length) block[this._blockOffset++] = data[offset++]\n\n // update length\n for (var j = 0, carry = data.length * 8; carry > 0; ++j) {\n this._length[j] += carry\n carry = (this._length[j] / 0x0100000000) | 0\n if (carry > 0) this._length[j] -= 0x0100000000 * carry\n }\n\n return this\n}\n\nHashBase.prototype._update = function () {\n throw new Error('_update is not implemented')\n}\n\nHashBase.prototype.digest = function (encoding) {\n if (this._finalized) throw new Error('Digest already called')\n this._finalized = true\n\n var digest = this._digest()\n if (encoding !== undefined) digest = digest.toString(encoding)\n\n // reset state\n this._block.fill(0)\n this._blockOffset = 0\n for (var i = 0; i < 4; ++i) this._length[i] = 0\n\n return digest\n}\n\nHashBase.prototype._digest = function () {\n throw new Error('_digest is not implemented')\n}\n\nmodule.exports = HashBase\n","/**\n * A JavaScript implementation of the Secure Hash Algorithm, SHA-256, as defined\n * in FIPS 180-2\n * Version 2.2-beta Copyright Angel Marin, Paul Johnston 2000 - 2009.\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n *\n */\n\nvar inherits = require('inherits')\nvar Hash = require('./hash')\nvar Buffer = require('safe-buffer').Buffer\n\nvar K = [\n 0x428A2F98, 0x71374491, 0xB5C0FBCF, 0xE9B5DBA5,\n 0x3956C25B, 0x59F111F1, 0x923F82A4, 0xAB1C5ED5,\n 0xD807AA98, 0x12835B01, 0x243185BE, 0x550C7DC3,\n 0x72BE5D74, 0x80DEB1FE, 0x9BDC06A7, 0xC19BF174,\n 0xE49B69C1, 0xEFBE4786, 0x0FC19DC6, 0x240CA1CC,\n 0x2DE92C6F, 0x4A7484AA, 0x5CB0A9DC, 0x76F988DA,\n 0x983E5152, 0xA831C66D, 0xB00327C8, 0xBF597FC7,\n 0xC6E00BF3, 0xD5A79147, 0x06CA6351, 0x14292967,\n 0x27B70A85, 0x2E1B2138, 0x4D2C6DFC, 0x53380D13,\n 0x650A7354, 0x766A0ABB, 0x81C2C92E, 0x92722C85,\n 0xA2BFE8A1, 0xA81A664B, 0xC24B8B70, 0xC76C51A3,\n 0xD192E819, 0xD6990624, 0xF40E3585, 0x106AA070,\n 0x19A4C116, 0x1E376C08, 0x2748774C, 0x34B0BCB5,\n 0x391C0CB3, 0x4ED8AA4A, 0x5B9CCA4F, 0x682E6FF3,\n 0x748F82EE, 0x78A5636F, 0x84C87814, 0x8CC70208,\n 0x90BEFFFA, 0xA4506CEB, 0xBEF9A3F7, 0xC67178F2\n]\n\nvar W = new Array(64)\n\nfunction Sha256 () {\n this.init()\n\n this._w = W // new Array(64)\n\n Hash.call(this, 64, 56)\n}\n\ninherits(Sha256, Hash)\n\nSha256.prototype.init = function () {\n this._a = 0x6a09e667\n this._b = 0xbb67ae85\n this._c = 0x3c6ef372\n this._d = 0xa54ff53a\n this._e = 0x510e527f\n this._f = 0x9b05688c\n this._g = 0x1f83d9ab\n this._h = 0x5be0cd19\n\n return this\n}\n\nfunction ch (x, y, z) {\n return z ^ (x & (y ^ z))\n}\n\nfunction maj (x, y, z) {\n return (x & y) | (z & (x | y))\n}\n\nfunction sigma0 (x) {\n return (x >>> 2 | x << 30) ^ (x >>> 13 | x << 19) ^ (x >>> 22 | x << 10)\n}\n\nfunction sigma1 (x) {\n return (x >>> 6 | x << 26) ^ (x >>> 11 | x << 21) ^ (x >>> 25 | x << 7)\n}\n\nfunction gamma0 (x) {\n return (x >>> 7 | x << 25) ^ (x >>> 18 | x << 14) ^ (x >>> 3)\n}\n\nfunction gamma1 (x) {\n return (x >>> 17 | x << 15) ^ (x >>> 19 | x << 13) ^ (x >>> 10)\n}\n\nSha256.prototype._update = function (M) {\n var W = this._w\n\n var a = this._a | 0\n var b = this._b | 0\n var c = this._c | 0\n var d = this._d | 0\n var e = this._e | 0\n var f = this._f | 0\n var g = this._g | 0\n var h = this._h | 0\n\n for (var i = 0; i < 16; ++i) W[i] = M.readInt32BE(i * 4)\n for (; i < 64; ++i) W[i] = (gamma1(W[i - 2]) + W[i - 7] + gamma0(W[i - 15]) + W[i - 16]) | 0\n\n for (var j = 0; j < 64; ++j) {\n var T1 = (h + sigma1(e) + ch(e, f, g) + K[j] + W[j]) | 0\n var T2 = (sigma0(a) + maj(a, b, c)) | 0\n\n h = g\n g = f\n f = e\n e = (d + T1) | 0\n d = c\n c = b\n b = a\n a = (T1 + T2) | 0\n }\n\n this._a = (a + this._a) | 0\n this._b = (b + this._b) | 0\n this._c = (c + this._c) | 0\n this._d = (d + this._d) | 0\n this._e = (e + this._e) | 0\n this._f = (f + this._f) | 0\n this._g = (g + this._g) | 0\n this._h = (h + this._h) | 0\n}\n\nSha256.prototype._hash = function () {\n var H = Buffer.allocUnsafe(32)\n\n H.writeInt32BE(this._a, 0)\n H.writeInt32BE(this._b, 4)\n H.writeInt32BE(this._c, 8)\n H.writeInt32BE(this._d, 12)\n H.writeInt32BE(this._e, 16)\n H.writeInt32BE(this._f, 20)\n H.writeInt32BE(this._g, 24)\n H.writeInt32BE(this._h, 28)\n\n return H\n}\n\nmodule.exports = Sha256\n","var inherits = require('inherits')\nvar Hash = require('./hash')\nvar Buffer = require('safe-buffer').Buffer\n\nvar K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n]\n\nvar W = new Array(160)\n\nfunction Sha512 () {\n this.init()\n this._w = W\n\n Hash.call(this, 128, 112)\n}\n\ninherits(Sha512, Hash)\n\nSha512.prototype.init = function () {\n this._ah = 0x6a09e667\n this._bh = 0xbb67ae85\n this._ch = 0x3c6ef372\n this._dh = 0xa54ff53a\n this._eh = 0x510e527f\n this._fh = 0x9b05688c\n this._gh = 0x1f83d9ab\n this._hh = 0x5be0cd19\n\n this._al = 0xf3bcc908\n this._bl = 0x84caa73b\n this._cl = 0xfe94f82b\n this._dl = 0x5f1d36f1\n this._el = 0xade682d1\n this._fl = 0x2b3e6c1f\n this._gl = 0xfb41bd6b\n this._hl = 0x137e2179\n\n return this\n}\n\nfunction Ch (x, y, z) {\n return z ^ (x & (y ^ z))\n}\n\nfunction maj (x, y, z) {\n return (x & y) | (z & (x | y))\n}\n\nfunction sigma0 (x, xl) {\n return (x >>> 28 | xl << 4) ^ (xl >>> 2 | x << 30) ^ (xl >>> 7 | x << 25)\n}\n\nfunction sigma1 (x, xl) {\n return (x >>> 14 | xl << 18) ^ (x >>> 18 | xl << 14) ^ (xl >>> 9 | x << 23)\n}\n\nfunction Gamma0 (x, xl) {\n return (x >>> 1 | xl << 31) ^ (x >>> 8 | xl << 24) ^ (x >>> 7)\n}\n\nfunction Gamma0l (x, xl) {\n return (x >>> 1 | xl << 31) ^ (x >>> 8 | xl << 24) ^ (x >>> 7 | xl << 25)\n}\n\nfunction Gamma1 (x, xl) {\n return (x >>> 19 | xl << 13) ^ (xl >>> 29 | x << 3) ^ (x >>> 6)\n}\n\nfunction Gamma1l (x, xl) {\n return (x >>> 19 | xl << 13) ^ (xl >>> 29 | x << 3) ^ (x >>> 6 | xl << 26)\n}\n\nfunction getCarry (a, b) {\n return (a >>> 0) < (b >>> 0) ? 1 : 0\n}\n\nSha512.prototype._update = function (M) {\n var W = this._w\n\n var ah = this._ah | 0\n var bh = this._bh | 0\n var ch = this._ch | 0\n var dh = this._dh | 0\n var eh = this._eh | 0\n var fh = this._fh | 0\n var gh = this._gh | 0\n var hh = this._hh | 0\n\n var al = this._al | 0\n var bl = this._bl | 0\n var cl = this._cl | 0\n var dl = this._dl | 0\n var el = this._el | 0\n var fl = this._fl | 0\n var gl = this._gl | 0\n var hl = this._hl | 0\n\n for (var i = 0; i < 32; i += 2) {\n W[i] = M.readInt32BE(i * 4)\n W[i + 1] = M.readInt32BE(i * 4 + 4)\n }\n for (; i < 160; i += 2) {\n var xh = W[i - 15 * 2]\n var xl = W[i - 15 * 2 + 1]\n var gamma0 = Gamma0(xh, xl)\n var gamma0l = Gamma0l(xl, xh)\n\n xh = W[i - 2 * 2]\n xl = W[i - 2 * 2 + 1]\n var gamma1 = Gamma1(xh, xl)\n var gamma1l = Gamma1l(xl, xh)\n\n // W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16]\n var Wi7h = W[i - 7 * 2]\n var Wi7l = W[i - 7 * 2 + 1]\n\n var Wi16h = W[i - 16 * 2]\n var Wi16l = W[i - 16 * 2 + 1]\n\n var Wil = (gamma0l + Wi7l) | 0\n var Wih = (gamma0 + Wi7h + getCarry(Wil, gamma0l)) | 0\n Wil = (Wil + gamma1l) | 0\n Wih = (Wih + gamma1 + getCarry(Wil, gamma1l)) | 0\n Wil = (Wil + Wi16l) | 0\n Wih = (Wih + Wi16h + getCarry(Wil, Wi16l)) | 0\n\n W[i] = Wih\n W[i + 1] = Wil\n }\n\n for (var j = 0; j < 160; j += 2) {\n Wih = W[j]\n Wil = W[j + 1]\n\n var majh = maj(ah, bh, ch)\n var majl = maj(al, bl, cl)\n\n var sigma0h = sigma0(ah, al)\n var sigma0l = sigma0(al, ah)\n var sigma1h = sigma1(eh, el)\n var sigma1l = sigma1(el, eh)\n\n // t1 = h + sigma1 + ch + K[j] + W[j]\n var Kih = K[j]\n var Kil = K[j + 1]\n\n var chh = Ch(eh, fh, gh)\n var chl = Ch(el, fl, gl)\n\n var t1l = (hl + sigma1l) | 0\n var t1h = (hh + sigma1h + getCarry(t1l, hl)) | 0\n t1l = (t1l + chl) | 0\n t1h = (t1h + chh + getCarry(t1l, chl)) | 0\n t1l = (t1l + Kil) | 0\n t1h = (t1h + Kih + getCarry(t1l, Kil)) | 0\n t1l = (t1l + Wil) | 0\n t1h = (t1h + Wih + getCarry(t1l, Wil)) | 0\n\n // t2 = sigma0 + maj\n var t2l = (sigma0l + majl) | 0\n var t2h = (sigma0h + majh + getCarry(t2l, sigma0l)) | 0\n\n hh = gh\n hl = gl\n gh = fh\n gl = fl\n fh = eh\n fl = el\n el = (dl + t1l) | 0\n eh = (dh + t1h + getCarry(el, dl)) | 0\n dh = ch\n dl = cl\n ch = bh\n cl = bl\n bh = ah\n bl = al\n al = (t1l + t2l) | 0\n ah = (t1h + t2h + getCarry(al, t1l)) | 0\n }\n\n this._al = (this._al + al) | 0\n this._bl = (this._bl + bl) | 0\n this._cl = (this._cl + cl) | 0\n this._dl = (this._dl + dl) | 0\n this._el = (this._el + el) | 0\n this._fl = (this._fl + fl) | 0\n this._gl = (this._gl + gl) | 0\n this._hl = (this._hl + hl) | 0\n\n this._ah = (this._ah + ah + getCarry(this._al, al)) | 0\n this._bh = (this._bh + bh + getCarry(this._bl, bl)) | 0\n this._ch = (this._ch + ch + getCarry(this._cl, cl)) | 0\n this._dh = (this._dh + dh + getCarry(this._dl, dl)) | 0\n this._eh = (this._eh + eh + getCarry(this._el, el)) | 0\n this._fh = (this._fh + fh + getCarry(this._fl, fl)) | 0\n this._gh = (this._gh + gh + getCarry(this._gl, gl)) | 0\n this._hh = (this._hh + hh + getCarry(this._hl, hl)) | 0\n}\n\nSha512.prototype._hash = function () {\n var H = Buffer.allocUnsafe(64)\n\n function writeInt64BE (h, l, offset) {\n H.writeInt32BE(h, offset)\n H.writeInt32BE(l, offset + 4)\n }\n\n writeInt64BE(this._ah, this._al, 0)\n writeInt64BE(this._bh, this._bl, 8)\n writeInt64BE(this._ch, this._cl, 16)\n writeInt64BE(this._dh, this._dl, 24)\n writeInt64BE(this._eh, this._el, 32)\n writeInt64BE(this._fh, this._fl, 40)\n writeInt64BE(this._gh, this._gl, 48)\n writeInt64BE(this._hh, this._hl, 56)\n\n return H\n}\n\nmodule.exports = Sha512\n","import CACHE from \"./Cache.js\";\nimport Ed25519PrivateKey from \"./Ed25519PrivateKey.js\";\nimport BadMnemonicError from \"./BadMnemonicError.js\";\nimport BadMnemonicReason from \"./BadMnemonicReason.js\";\nimport legacyWords from \"./words/legacy.js\";\nimport bip39Words from \"./words/bip39.js\";\nimport nacl from \"tweetnacl\";\nimport * as sha256 from \"./primitive/sha256.js\";\nimport * as pbkdf2 from \"./primitive/pbkdf2.js\";\nimport * as hmac from \"./primitive/hmac.js\";\nimport * as slip10 from \"./primitive/slip10.js\";\nimport * as entropy from \"./util/entropy.js\";\nimport * as random from \"./primitive/random.js\";\n\n/**\n * @typedef {import(\"./PrivateKey.js\").default} PrivateKey\n */\n\n/**\n * Multi-word mnemonic phrase (BIP-39).\n *\n * Compatible with the official Hedera mobile\n * wallets (24-words or 22-words) and BRD (12-words).\n */\nexport default class Mnemonic {\n /**\n * @param {Object} props\n * @param {string[]} props.words\n * @param {boolean} props.legacy\n * @throws {BadMnemonicError}\n * @hideconstructor\n * @private\n */\n constructor({ words, legacy }) {\n this.words = words;\n this._isLegacy = legacy;\n }\n\n /**\n * Returns a new random 24-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static generate() {\n return Mnemonic._generate(24);\n }\n\n /**\n * Returns a new random 12-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static generate12() {\n return Mnemonic._generate(12);\n }\n\n /**\n * @param {number} length\n * @returns {Promise}\n */\n static async _generate(length) {\n // only 12-word or 24-word lengths are supported\n let neededEntropy;\n\n if (length === 12) neededEntropy = 16;\n else if (length === 24) neededEntropy = 32;\n else {\n throw new Error(\n `unsupported phrase length ${length}, only 12 or 24 are supported`\n );\n }\n\n // inlined from (ISC) with heavy alternations for modern crypto\n // https://github.com/bitcoinjs/bip39/blob/8461e83677a1d2c685d0d5a9ba2a76bd228f74c6/ts_src/index.ts#L125\n const seed = await random.bytesAsync(neededEntropy);\n const entropyBits = bytesToBinary(Array.from(seed));\n const checksumBits = await deriveChecksumBits(seed);\n const bits = entropyBits + checksumBits;\n const chunks = bits.match(/(.{1,11})/g);\n\n const words = (chunks != null ? chunks : []).map(\n (binary) => bip39Words[binaryToByte(binary)]\n );\n\n return new Mnemonic({ words, legacy: false });\n }\n\n /**\n * Construct a mnemonic from a list of words. Handles 12, 22 (legacy), and 24 words.\n *\n * An exception of BadMnemonicError will be thrown if the mnemonic\n * contains unknown words or fails the checksum. An invalid mnemonic\n * can still be used to create private keys, the exception will\n * contain the failing mnemonic in case you wish to ignore the\n * validation error and continue.\n *\n * @param {string[]} words\n * @throws {BadMnemonicError}\n * @returns {Promise}\n */\n static async fromWords(words) {\n return await new Mnemonic({\n words,\n legacy: words.length === 22,\n })._validate();\n }\n\n /**\n * Recover a private key from this mnemonic phrase, with an\n * optional passphrase.\n *\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n async toPrivateKey(passphrase = \"\") {\n if (this._isLegacy) {\n if (passphrase.length > 0) {\n throw new Error(\n \"legacy 22-word mnemonics do not support passphrases\"\n );\n }\n\n return this.toLegacyPrivateKey();\n }\n\n return await this._toPrivateKey(passphrase);\n }\n\n // /**\n // * Recover an ecdsa private key from this mnemonic phrase, with an\n // * optional passphrase.\n // *\n // * @param {string} [passphrase]\n // * @returns {Promise}\n // */\n // async toEcdsaPrivateKey(passphrase = \"\") {\n // if (this._isLegacy) {\n // if (passphrase.length > 0) {\n // throw new Error(\n // \"legacy 22-word mnemonics do not support passphrases\"\n // );\n // }\n\n // return this.toLegacyPrivateKey();\n // }\n\n // return await this._toEcdsaPrivateKey(passphrase);\n // }\n\n /**\n * Recover a mnemonic phrase from a string, splitting on spaces. Handles 12, 22 (legacy), and 24 words.\n *\n * @param {string} mnemonic\n * @returns {Promise}\n */\n static async fromString(mnemonic) {\n return Mnemonic.fromWords(mnemonic.split(/\\s|,/));\n }\n\n /**\n * @returns {Promise}\n * @private\n */\n async _validate() {\n // Validate that this is a valid BIP-39 mnemonic\n // as generated by BIP-39's rules.\n\n // Technically, invalid mnemonics can still be used to generate valid private keys,\n // but if they became invalid due to user error then it will be difficult for the user\n // to tell the difference unless they compare the generated keys.\n\n // During validation, the following conditions are checked in order\n\n // 1)) 24 or 12 words\n\n // 2) All strings in {@link this.words} exist in the BIP-39\n // standard English word list (no normalization is done)\n\n // 3) The calculated checksum for the mnemonic equals the\n // checksum encoded in the mnemonic\n\n if (this._isLegacy) {\n if (this.words.length !== 22) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.BadLength,\n []\n );\n }\n\n const unknownWordIndices = this.words.reduce(\n (/** @type {number[]} */ unknowns, word, index) =>\n legacyWords.includes(word.toLowerCase())\n ? unknowns\n : [...unknowns, index],\n []\n );\n\n if (unknownWordIndices.length > 0) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.UnknownWords,\n unknownWordIndices\n );\n }\n\n const [seed, checksum] = entropy.legacy1(this.words, legacyWords);\n const newChecksum = entropy.crc8(seed);\n\n if (checksum !== newChecksum) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.ChecksumMismatch,\n []\n );\n }\n } else {\n if (!(this.words.length === 12 || this.words.length === 24)) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.BadLength,\n []\n );\n }\n\n const unknownWordIndices = this.words.reduce(\n (/** @type {number[]} */ unknowns, word, index) =>\n bip39Words.includes(word) ? unknowns : [...unknowns, index],\n []\n );\n\n if (unknownWordIndices.length > 0) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.UnknownWords,\n unknownWordIndices\n );\n }\n\n // FIXME: calculate checksum and compare\n // https://github.com/bitcoinjs/bip39/blob/master/ts_src/index.ts#L112\n\n const bits = this.words\n .map((word) => {\n return bip39Words\n .indexOf(word)\n .toString(2)\n .padStart(11, \"0\");\n })\n .join(\"\");\n\n const dividerIndex = Math.floor(bits.length / 33) * 32;\n const entropyBits = bits.slice(0, dividerIndex);\n const checksumBits = bits.slice(dividerIndex);\n const entropyBitsRegex = entropyBits.match(/(.{1,8})/g);\n const entropyBytes = /** @type {RegExpMatchArray} */ (\n entropyBitsRegex\n ).map(binaryToByte);\n\n const newChecksum = await deriveChecksumBits(\n Uint8Array.from(entropyBytes)\n );\n\n if (newChecksum !== checksumBits) {\n throw new BadMnemonicError(\n this,\n BadMnemonicReason.ChecksumMismatch,\n []\n );\n }\n }\n\n return this;\n }\n\n /**\n * @private\n * @param {string} passphrase\n * @returns {Promise}\n */\n async _toPrivateKey(passphrase = \"\") {\n const input = this.words.join(\" \");\n const salt = `mnemonic${passphrase}`;\n\n const seed = await pbkdf2.deriveKey(\n hmac.HashAlgorithm.Sha512,\n input,\n salt,\n 2048,\n 64\n );\n\n const digest = await hmac.hash(\n hmac.HashAlgorithm.Sha512,\n \"ed25519 seed\",\n seed\n );\n\n let keyData = digest.subarray(0, 32);\n let chainCode = digest.subarray(32);\n\n for (const index of [44, 3030, 0, 0]) {\n ({ keyData, chainCode } = await slip10.derive(\n keyData,\n chainCode,\n index\n ));\n }\n\n const keyPair = nacl.sign.keyPair.fromSeed(keyData);\n\n if (CACHE.privateKeyConstructor == null) {\n throw new Error(\"PrivateKey not found in cache\");\n }\n\n return CACHE.privateKeyConstructor(\n new Ed25519PrivateKey(keyPair, chainCode)\n );\n }\n\n /**\n * @returns {Promise}\n */\n async toLegacyPrivateKey() {\n let seed;\n if (this._isLegacy) {\n [seed] = entropy.legacy1(this.words, legacyWords);\n } else {\n seed = await entropy.legacy2(this.words, bip39Words);\n }\n\n if (CACHE.privateKeyFromBytes == null) {\n throw new Error(\"PrivateKey not found in cache\");\n }\n\n return CACHE.privateKeyFromBytes(seed);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this.words.join(\" \");\n }\n}\n\n/**\n * @param {string} bin\n * @returns {number}\n */\nfunction binaryToByte(bin) {\n return parseInt(bin, 2);\n}\n\n/**\n * @param {number[]} bytes\n * @returns {string}\n */\nfunction bytesToBinary(bytes) {\n return bytes.map((x) => x.toString(2).padStart(8, \"0\")).join(\"\");\n}\n\n/**\n * @param {Uint8Array} entropyBuffer\n * @returns {Promise}\n */\nasync function deriveChecksumBits(entropyBuffer) {\n const ENT = entropyBuffer.length * 8;\n const CS = ENT / 32;\n const hash = await sha256.digest(entropyBuffer);\n\n return bytesToBinary(Array.from(hash)).slice(0, CS);\n}\n","/**\n * @typedef {import(\"./PrivateKey.js\").default} PrivateKey\n * @typedef {import(\"./Ed25519PrivateKey.js\").default} Ed25519PrivateKey\n * @typedef {import(\"./EcdsaPrivateKey.js\").default} EcdsaPrivateKey\n */\n\nconst CACHE = {\n /** @type {((key: Ed25519PrivateKey | EcdsaPrivateKey) => PrivateKey) | null} */\n privateKeyConstructor: null,\n\n /** @type {((bytes: Uint8Array) => PrivateKey) | null} */\n privateKeyFromBytes: null,\n};\n\nexport default CACHE;\n","import Key from \"./Key.js\";\nimport BadKeyError from \"./BadKeyError.js\";\nimport nacl from \"tweetnacl\";\nimport { arrayEqual, arrayStartsWith } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\n\nconst derPrefix = \"302a300506032b6570032100\";\nconst derPrefixBytes = hex.decode(derPrefix);\n\n/**\n * An public key on the Hedera™ network.\n */\nexport default class Ed25519PublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {Uint8Array} keyData\n */\n constructor(keyData) {\n super();\n\n /**\n * @type {Uint8Array}\n * @private\n * @readonly\n */\n this._keyData = keyData;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"ED25519\";\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {Ed25519PublicKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 32:\n return Ed25519PublicKey.fromBytesRaw(data);\n case 44:\n return Ed25519PublicKey.fromBytesDer(data);\n default:\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {Ed25519PublicKey}\n */\n static fromBytesDer(data) {\n if (data.length != 44 || !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new Ed25519PublicKey(data.subarray(12));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {Ed25519PublicKey}\n */\n static fromBytesRaw(data) {\n if (data.length != 32) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new Ed25519PublicKey(data);\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {Ed25519PublicKey}\n */\n static fromString(text) {\n return Ed25519PublicKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return nacl.sign.detached.verify(message, signature, this._keyData);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(derPrefixBytes.length + 32);\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(this._keyData.subarray(0, 32), derPrefixBytes.length);\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._keyData.slice();\n }\n\n /**\n * @param {Ed25519PublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n return arrayEqual(this._keyData, other._keyData);\n }\n}\n","/** @typedef {import(\"./Mnemonic.js\").default} Mnemonic */\nimport BadMnemonicReason from \"./BadMnemonicReason.js\";\n\nexport default class BadMnemonicError extends Error {\n /**\n * @param {Mnemonic} mnemonic\n * @param {string} reason\n * @param {number[]} unknownWordIndices\n * @hideconstructor\n */\n constructor(mnemonic, reason, unknownWordIndices) {\n let reasonMessage;\n\n switch (reason) {\n case BadMnemonicReason.BadLength:\n reasonMessage = \"mnemonic is of an unexpected number of words\";\n break;\n\n case BadMnemonicReason.ChecksumMismatch:\n reasonMessage =\n \"checksum byte in mnemonic did not match the rest of the mnemonic\";\n break;\n\n case BadMnemonicReason.UnknownWords:\n reasonMessage =\n \"mnemonic contained words that are not in the standard word list\";\n break;\n\n default:\n throw new Error(\n `unexpected value ${reason.toString()} for 'reason'`\n );\n }\n\n super(`invalid mnemonic: ${reasonMessage}`);\n\n if (typeof Error.captureStackTrace !== \"undefined\") {\n Error.captureStackTrace(this, BadMnemonicError);\n }\n\n this.name = \"BadMnemonicError\";\n\n /** The reason for which the mnemonic failed validation. */\n this.reason = reason;\n\n /** The mnemonic that failed validation. */\n this.mnemonic = mnemonic;\n\n /**\n * The indices in the mnemonic that were not found in the BIP-39\n * standard English word list.\n */\n this.unknownWordIndices = unknownWordIndices;\n }\n}\n","/**\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function digest(data) {\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/digest\n return new Uint8Array(await crypto.subtle.digest(\"SHA-256\", data));\n}\n","import * as hmac from \"../primitive/hmac.js\";\n\n/**\n * @param {Uint8Array} parentKey\n * @param {Uint8Array} chainCode\n * @param {number} index\n * @returns {Promise<{ keyData: Uint8Array; chainCode: Uint8Array }>}\n */\nexport async function derive(parentKey, chainCode, index) {\n const input = new Uint8Array(37);\n\n // 0x00 + parentKey + index(BE)\n input[0] = 0;\n input.set(parentKey, 1);\n new DataView(input.buffer, input.byteOffset, input.byteLength).setUint32(\n 33,\n index,\n false\n );\n\n // set the index to hardened\n input[33] |= 128;\n\n const digest = await hmac.hash(hmac.HashAlgorithm.Sha512, chainCode, input);\n\n return { keyData: digest.subarray(0, 32), chainCode: digest.subarray(32) };\n}\n","import BadKeyError from \"./BadKeyError.js\";\nimport EcdsaPublicKey from \"./EcdsaPublicKey.js\";\nimport * as hex from \"./encoding/hex.js\";\nimport * as ecdsa from \"./primitive/ecdsa.js\";\nimport { arrayStartsWith } from \"./util/array.js\";\n\nconst derPrefix = \"3030020100300706052b8104000a04220420\";\nconst derPrefixBytes = hex.decode(derPrefix);\n\n/**\n * @typedef {object} KeyPair\n * @property {Uint8Array} publicKey\n * @property {Uint8Array} privateKey\n */\n\nexport default class EcdsaPrivateKey {\n /**\n * @hideconstructor\n * @internal\n * @param {KeyPair} keyPair\n * @param {(Uint8Array)=} chainCode\n */\n constructor(keyPair, chainCode) {\n /**\n * @type {KeyPair}\n * @readonly\n * @private\n */\n this._keyPair = keyPair;\n\n /**\n * @type {?Uint8Array}\n * @readonly\n */\n this._chainCode = chainCode != null ? chainCode : null;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"secp256k1\";\n }\n\n /**\n * Generate a random ECDSA private key.\n *\n * @returns {EcdsaPrivateKey}\n */\n static generate() {\n return new EcdsaPrivateKey(ecdsa.generate());\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateAsync() {\n return new EcdsaPrivateKey(await ecdsa.generateAsync());\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {EcdsaPrivateKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 32:\n return EcdsaPrivateKey.fromBytesRaw(data);\n case 50:\n return EcdsaPrivateKey.fromBytesDer(data);\n default:\n throw new BadKeyError(\n `invalid private key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {EcdsaPrivateKey}\n */\n static fromBytesDer(data) {\n if (data.length != 32 && !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\"invalid der header\");\n }\n\n return new EcdsaPrivateKey(\n ecdsa.fromBytes(data.subarray(derPrefixBytes.length))\n );\n }\n\n /**\n * Construct a private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {EcdsaPrivateKey}\n */\n static fromBytesRaw(data) {\n return new EcdsaPrivateKey(ecdsa.fromBytes(data));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {EcdsaPrivateKey}\n */\n static fromString(text) {\n return EcdsaPrivateKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {EcdsaPrivateKey}\n */\n static fromStringDer(text) {\n return EcdsaPrivateKey.fromBytesDer(hex.decode(text));\n }\n\n /**\n * Construct a private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {EcdsaPrivateKey}\n */\n static fromStringRaw(text) {\n return EcdsaPrivateKey.fromBytesRaw(hex.decode(text));\n }\n\n /**\n * Get the public key associated with this private key.\n *\n * The public key can be freely given and used by other parties to verify\n * the signatures generated by this private key.\n *\n * @returns {EcdsaPublicKey}\n */\n get publicKey() {\n return new EcdsaPublicKey(this._keyPair.publicKey);\n }\n\n /**\n * Sign a message with this private key.\n *\n * @param {Uint8Array} bytes\n * @returns {Uint8Array} - The signature bytes without the message\n */\n sign(bytes) {\n return ecdsa.sign(this._keyPair.privateKey, bytes);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(derPrefixBytes.length + 32);\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(\n this._keyPair.privateKey.subarray(0, 32),\n derPrefixBytes.length\n );\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._keyPair.privateKey.slice(0, 32);\n }\n}\n","import Key from \"./Key.js\";\nimport BadKeyError from \"./BadKeyError.js\";\nimport { arrayEqual, arrayStartsWith } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\nimport * as ecdsa from \"./primitive/ecdsa.js\";\n\nconst derPrefix = \"302d300706052b8104000a032200\";\nconst derPrefixBytes = hex.decode(derPrefix);\n\n/**\n * An public key on the Hedera™ network.\n */\nexport default class EcdsaPublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {Uint8Array} keyData\n */\n constructor(keyData) {\n super();\n\n /**\n * @type {Uint8Array}\n * @private\n * @readonly\n */\n this._keyData = keyData;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return \"secp256k1\";\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {EcdsaPublicKey}\n */\n static fromBytes(data) {\n switch (data.length) {\n case 33:\n return EcdsaPublicKey.fromBytesRaw(data);\n case 49:\n return EcdsaPublicKey.fromBytesDer(data);\n default:\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {EcdsaPublicKey}\n */\n static fromBytesDer(data) {\n if (data.length != 44 || !arrayStartsWith(data, derPrefixBytes)) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new EcdsaPublicKey(data.subarray(12));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {EcdsaPublicKey}\n */\n static fromBytesRaw(data) {\n if (data.length != 33) {\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n return new EcdsaPublicKey(data);\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {EcdsaPublicKey}\n */\n static fromString(text) {\n return EcdsaPublicKey.fromBytes(hex.decode(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return ecdsa.verify(this._keyData, message, signature);\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n const bytes = new Uint8Array(\n derPrefixBytes.length + this._keyData.length\n );\n\n bytes.set(derPrefixBytes, 0);\n bytes.set(this._keyData, derPrefixBytes.length);\n\n return bytes;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return new Uint8Array(this._keyData.subarray());\n }\n\n /**\n * @param {EcdsaPublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n return arrayEqual(this._keyData, other._keyData);\n }\n}\n","import { keccak256 } from \"./keccak.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport elliptic from \"elliptic\";\n\nconst secp256k1 = new elliptic.ec(\"secp256k1\");\n\n/**\n * @typedef {import(\"../EcdsaPrivateKey.js\").KeyPair} KeyPair\n */\n\n/**\n * @returns {KeyPair}\n */\nexport function generate() {\n const keypair = secp256k1.genKeyPair();\n\n return {\n privateKey: hex.decode(keypair.getPrivate(\"hex\")),\n publicKey: hex.decode(keypair.getPublic(true, \"hex\")),\n };\n}\n\n/**\n * @returns {Promise}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport async function generateAsync() {\n return Promise.resolve(generate());\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {KeyPair}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function fromBytes(data) {\n const keypair = secp256k1.keyFromPrivate(data);\n\n return {\n privateKey: hex.decode(keypair.getPrivate(\"hex\")),\n publicKey: hex.decode(keypair.getPublic(true, \"hex\")),\n };\n}\n\n/**\n * @param {Uint8Array} keydata\n * @param {Uint8Array} message\n * @returns {Uint8Array}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function sign(keydata, message) {\n const msg = hex.encode(message);\n const data = hex.decode(keccak256(`0x${msg}`));\n const keypair = secp256k1.keyFromPrivate(keydata);\n const signature = keypair.sign(data);\n\n const r = signature.r.toArray(\"be\", 32);\n const s = signature.s.toArray(\"be\", 32);\n\n const result = new Uint8Array(64);\n result.set(r, 0);\n result.set(s, 32);\n return result;\n}\n\n/**\n * @param {Uint8Array} keydata\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function verify(keydata, message, signature) {\n const msg = hex.encode(message);\n const data = hex.decode(keccak256(`0x${msg}`));\n const keypair = secp256k1.keyFromPublic(keydata);\n\n return keypair.verify(data, {\n r: signature.subarray(0, 32),\n s: signature.subarray(32, 64),\n });\n}\n","'use strict';\n\nvar utils = exports;\n\nfunction toArray(msg, enc) {\n if (Array.isArray(msg))\n return msg.slice();\n if (!msg)\n return [];\n var res = [];\n if (typeof msg !== 'string') {\n for (var i = 0; i < msg.length; i++)\n res[i] = msg[i] | 0;\n return res;\n }\n if (enc === 'hex') {\n msg = msg.replace(/[^a-z0-9]+/ig, '');\n if (msg.length % 2 !== 0)\n msg = '0' + msg;\n for (var i = 0; i < msg.length; i += 2)\n res.push(parseInt(msg[i] + msg[i + 1], 16));\n } else {\n for (var i = 0; i < msg.length; i++) {\n var c = msg.charCodeAt(i);\n var hi = c >> 8;\n var lo = c & 0xff;\n if (hi)\n res.push(hi, lo);\n else\n res.push(lo);\n }\n }\n return res;\n}\nutils.toArray = toArray;\n\nfunction zero2(word) {\n if (word.length === 1)\n return '0' + word;\n else\n return word;\n}\nutils.zero2 = zero2;\n\nfunction toHex(msg) {\n var res = '';\n for (var i = 0; i < msg.length; i++)\n res += zero2(msg[i].toString(16));\n return res;\n}\nutils.toHex = toHex;\n\nutils.encode = function encode(arr, enc) {\n if (enc === 'hex')\n return toHex(arr);\n else\n return arr;\n};\n","var r;\n\nmodule.exports = function rand(len) {\n if (!r)\n r = new Rand(null);\n\n return r.generate(len);\n};\n\nfunction Rand(rand) {\n this.rand = rand;\n}\nmodule.exports.Rand = Rand;\n\nRand.prototype.generate = function generate(len) {\n return this._rand(len);\n};\n\n// Emulate crypto API using randy\nRand.prototype._rand = function _rand(n) {\n if (this.rand.getBytes)\n return this.rand.getBytes(n);\n\n var res = new Uint8Array(n);\n for (var i = 0; i < res.length; i++)\n res[i] = this.rand.getByte();\n return res;\n};\n\nif (typeof self === 'object') {\n if (self.crypto && self.crypto.getRandomValues) {\n // Modern browsers\n Rand.prototype._rand = function _rand(n) {\n var arr = new Uint8Array(n);\n self.crypto.getRandomValues(arr);\n return arr;\n };\n } else if (self.msCrypto && self.msCrypto.getRandomValues) {\n // IE\n Rand.prototype._rand = function _rand(n) {\n var arr = new Uint8Array(n);\n self.msCrypto.getRandomValues(arr);\n return arr;\n };\n\n // Safari's WebWorkers do not have `crypto`\n } else if (typeof window === 'object') {\n // Old junk\n Rand.prototype._rand = function() {\n throw new Error('Not implemented yet');\n };\n }\n} else {\n // Node.js or Web worker with no crypto support\n try {\n var crypto = require('crypto');\n if (typeof crypto.randomBytes !== 'function')\n throw new Error('Not supported');\n\n Rand.prototype._rand = function _rand(n) {\n return crypto.randomBytes(n);\n };\n } catch (e) {\n }\n}\n","'use strict';\n\nvar curve = exports;\n\ncurve.base = require('./base');\ncurve.short = require('./short');\ncurve.mont = require('./mont');\ncurve.edwards = require('./edwards');\n","'use strict';\n\nvar utils = require('../utils');\nvar rotr32 = utils.rotr32;\n\nfunction ft_1(s, x, y, z) {\n if (s === 0)\n return ch32(x, y, z);\n if (s === 1 || s === 3)\n return p32(x, y, z);\n if (s === 2)\n return maj32(x, y, z);\n}\nexports.ft_1 = ft_1;\n\nfunction ch32(x, y, z) {\n return (x & y) ^ ((~x) & z);\n}\nexports.ch32 = ch32;\n\nfunction maj32(x, y, z) {\n return (x & y) ^ (x & z) ^ (y & z);\n}\nexports.maj32 = maj32;\n\nfunction p32(x, y, z) {\n return x ^ y ^ z;\n}\nexports.p32 = p32;\n\nfunction s0_256(x) {\n return rotr32(x, 2) ^ rotr32(x, 13) ^ rotr32(x, 22);\n}\nexports.s0_256 = s0_256;\n\nfunction s1_256(x) {\n return rotr32(x, 6) ^ rotr32(x, 11) ^ rotr32(x, 25);\n}\nexports.s1_256 = s1_256;\n\nfunction g0_256(x) {\n return rotr32(x, 7) ^ rotr32(x, 18) ^ (x >>> 3);\n}\nexports.g0_256 = g0_256;\n\nfunction g1_256(x) {\n return rotr32(x, 17) ^ rotr32(x, 19) ^ (x >>> 10);\n}\nexports.g1_256 = g1_256;\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar shaCommon = require('./common');\nvar assert = require('minimalistic-assert');\n\nvar sum32 = utils.sum32;\nvar sum32_4 = utils.sum32_4;\nvar sum32_5 = utils.sum32_5;\nvar ch32 = shaCommon.ch32;\nvar maj32 = shaCommon.maj32;\nvar s0_256 = shaCommon.s0_256;\nvar s1_256 = shaCommon.s1_256;\nvar g0_256 = shaCommon.g0_256;\nvar g1_256 = shaCommon.g1_256;\n\nvar BlockHash = common.BlockHash;\n\nvar sha256_K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,\n 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,\n 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc,\n 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7,\n 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13,\n 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3,\n 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5,\n 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208,\n 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n];\n\nfunction SHA256() {\n if (!(this instanceof SHA256))\n return new SHA256();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a,\n 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19\n ];\n this.k = sha256_K;\n this.W = new Array(64);\n}\nutils.inherits(SHA256, BlockHash);\nmodule.exports = SHA256;\n\nSHA256.blockSize = 512;\nSHA256.outSize = 256;\nSHA256.hmacStrength = 192;\nSHA256.padLength = 64;\n\nSHA256.prototype._update = function _update(msg, start) {\n var W = this.W;\n\n for (var i = 0; i < 16; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i++)\n W[i] = sum32_4(g1_256(W[i - 2]), W[i - 7], g0_256(W[i - 15]), W[i - 16]);\n\n var a = this.h[0];\n var b = this.h[1];\n var c = this.h[2];\n var d = this.h[3];\n var e = this.h[4];\n var f = this.h[5];\n var g = this.h[6];\n var h = this.h[7];\n\n assert(this.k.length === W.length);\n for (i = 0; i < W.length; i++) {\n var T1 = sum32_5(h, s1_256(e), ch32(e, f, g), this.k[i], W[i]);\n var T2 = sum32(s0_256(a), maj32(a, b, c));\n h = g;\n g = f;\n f = e;\n e = sum32(d, T1);\n d = c;\n c = b;\n b = a;\n a = sum32(T1, T2);\n }\n\n this.h[0] = sum32(this.h[0], a);\n this.h[1] = sum32(this.h[1], b);\n this.h[2] = sum32(this.h[2], c);\n this.h[3] = sum32(this.h[3], d);\n this.h[4] = sum32(this.h[4], e);\n this.h[5] = sum32(this.h[5], f);\n this.h[6] = sum32(this.h[6], g);\n this.h[7] = sum32(this.h[7], h);\n};\n\nSHA256.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar assert = require('minimalistic-assert');\n\nvar rotr64_hi = utils.rotr64_hi;\nvar rotr64_lo = utils.rotr64_lo;\nvar shr64_hi = utils.shr64_hi;\nvar shr64_lo = utils.shr64_lo;\nvar sum64 = utils.sum64;\nvar sum64_hi = utils.sum64_hi;\nvar sum64_lo = utils.sum64_lo;\nvar sum64_4_hi = utils.sum64_4_hi;\nvar sum64_4_lo = utils.sum64_4_lo;\nvar sum64_5_hi = utils.sum64_5_hi;\nvar sum64_5_lo = utils.sum64_5_lo;\n\nvar BlockHash = common.BlockHash;\n\nvar sha512_K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n];\n\nfunction SHA512() {\n if (!(this instanceof SHA512))\n return new SHA512();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xf3bcc908,\n 0xbb67ae85, 0x84caa73b,\n 0x3c6ef372, 0xfe94f82b,\n 0xa54ff53a, 0x5f1d36f1,\n 0x510e527f, 0xade682d1,\n 0x9b05688c, 0x2b3e6c1f,\n 0x1f83d9ab, 0xfb41bd6b,\n 0x5be0cd19, 0x137e2179 ];\n this.k = sha512_K;\n this.W = new Array(160);\n}\nutils.inherits(SHA512, BlockHash);\nmodule.exports = SHA512;\n\nSHA512.blockSize = 1024;\nSHA512.outSize = 512;\nSHA512.hmacStrength = 192;\nSHA512.padLength = 128;\n\nSHA512.prototype._prepareBlock = function _prepareBlock(msg, start) {\n var W = this.W;\n\n // 32 x 32bit words\n for (var i = 0; i < 32; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i += 2) {\n var c0_hi = g1_512_hi(W[i - 4], W[i - 3]); // i - 2\n var c0_lo = g1_512_lo(W[i - 4], W[i - 3]);\n var c1_hi = W[i - 14]; // i - 7\n var c1_lo = W[i - 13];\n var c2_hi = g0_512_hi(W[i - 30], W[i - 29]); // i - 15\n var c2_lo = g0_512_lo(W[i - 30], W[i - 29]);\n var c3_hi = W[i - 32]; // i - 16\n var c3_lo = W[i - 31];\n\n W[i] = sum64_4_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n W[i + 1] = sum64_4_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n }\n};\n\nSHA512.prototype._update = function _update(msg, start) {\n this._prepareBlock(msg, start);\n\n var W = this.W;\n\n var ah = this.h[0];\n var al = this.h[1];\n var bh = this.h[2];\n var bl = this.h[3];\n var ch = this.h[4];\n var cl = this.h[5];\n var dh = this.h[6];\n var dl = this.h[7];\n var eh = this.h[8];\n var el = this.h[9];\n var fh = this.h[10];\n var fl = this.h[11];\n var gh = this.h[12];\n var gl = this.h[13];\n var hh = this.h[14];\n var hl = this.h[15];\n\n assert(this.k.length === W.length);\n for (var i = 0; i < W.length; i += 2) {\n var c0_hi = hh;\n var c0_lo = hl;\n var c1_hi = s1_512_hi(eh, el);\n var c1_lo = s1_512_lo(eh, el);\n var c2_hi = ch64_hi(eh, el, fh, fl, gh, gl);\n var c2_lo = ch64_lo(eh, el, fh, fl, gh, gl);\n var c3_hi = this.k[i];\n var c3_lo = this.k[i + 1];\n var c4_hi = W[i];\n var c4_lo = W[i + 1];\n\n var T1_hi = sum64_5_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n var T1_lo = sum64_5_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n\n c0_hi = s0_512_hi(ah, al);\n c0_lo = s0_512_lo(ah, al);\n c1_hi = maj64_hi(ah, al, bh, bl, ch, cl);\n c1_lo = maj64_lo(ah, al, bh, bl, ch, cl);\n\n var T2_hi = sum64_hi(c0_hi, c0_lo, c1_hi, c1_lo);\n var T2_lo = sum64_lo(c0_hi, c0_lo, c1_hi, c1_lo);\n\n hh = gh;\n hl = gl;\n\n gh = fh;\n gl = fl;\n\n fh = eh;\n fl = el;\n\n eh = sum64_hi(dh, dl, T1_hi, T1_lo);\n el = sum64_lo(dl, dl, T1_hi, T1_lo);\n\n dh = ch;\n dl = cl;\n\n ch = bh;\n cl = bl;\n\n bh = ah;\n bl = al;\n\n ah = sum64_hi(T1_hi, T1_lo, T2_hi, T2_lo);\n al = sum64_lo(T1_hi, T1_lo, T2_hi, T2_lo);\n }\n\n sum64(this.h, 0, ah, al);\n sum64(this.h, 2, bh, bl);\n sum64(this.h, 4, ch, cl);\n sum64(this.h, 6, dh, dl);\n sum64(this.h, 8, eh, el);\n sum64(this.h, 10, fh, fl);\n sum64(this.h, 12, gh, gl);\n sum64(this.h, 14, hh, hl);\n};\n\nSHA512.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n\nfunction ch64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ ((~xh) & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction ch64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ ((~xl) & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ (xh & zh) ^ (yh & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ (xl & zl) ^ (yl & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 28);\n var c1_hi = rotr64_hi(xl, xh, 2); // 34\n var c2_hi = rotr64_hi(xl, xh, 7); // 39\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 28);\n var c1_lo = rotr64_lo(xl, xh, 2); // 34\n var c2_lo = rotr64_lo(xl, xh, 7); // 39\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 14);\n var c1_hi = rotr64_hi(xh, xl, 18);\n var c2_hi = rotr64_hi(xl, xh, 9); // 41\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 14);\n var c1_lo = rotr64_lo(xh, xl, 18);\n var c2_lo = rotr64_lo(xl, xh, 9); // 41\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 1);\n var c1_hi = rotr64_hi(xh, xl, 8);\n var c2_hi = shr64_hi(xh, xl, 7);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 1);\n var c1_lo = rotr64_lo(xh, xl, 8);\n var c2_lo = shr64_lo(xh, xl, 7);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 19);\n var c1_hi = rotr64_hi(xl, xh, 29); // 61\n var c2_hi = shr64_hi(xh, xl, 6);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 19);\n var c1_lo = rotr64_lo(xl, xh, 29); // 61\n var c2_lo = shr64_lo(xh, xl, 6);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n","import Key from \"./Key.js\";\nimport BadKeyError from \"./BadKeyError.js\";\nimport Ed25519PublicKey from \"./Ed25519PublicKey.js\";\nimport EcdsaPublicKey from \"./EcdsaPublicKey.js\";\nimport { arrayEqual } from \"./util/array.js\";\nimport * as hex from \"./encoding/hex.js\";\n\n/**\n * @typedef {import(\"./PrivateKey.js\").Transaction} Transaction\n */\n\n/**\n * An public key on the Hedera™ network.\n */\nexport default class PublicKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {Ed25519PublicKey | EcdsaPublicKey} key\n */\n constructor(key) {\n super();\n\n /**\n * @type {Ed25519PublicKey | EcdsaPublicKey}\n * @private\n * @readonly\n */\n this._key = key;\n }\n\n /**\n * @returns {string}\n */\n get _type() {\n return this._key._type;\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytes(data) {\n try {\n return new PublicKey(Ed25519PublicKey.fromBytes(data));\n } catch {\n // Do nothing\n }\n\n try {\n return new PublicKey(EcdsaPublicKey.fromBytes(data));\n } catch {\n // Do nothing\n }\n\n throw new BadKeyError(\n `invalid public key length: ${data.length} bytes`\n );\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesED25519(data) {\n return new PublicKey(Ed25519PublicKey.fromBytes(data));\n }\n\n /**\n * @param {Uint8Array} data\n * @returns {PublicKey}\n */\n static fromBytesECDSA(data) {\n return new PublicKey(EcdsaPublicKey.fromBytes(data));\n }\n\n /**\n * Parse a public key from a string of hexadecimal digits.\n *\n * The public key may optionally be prefixed with\n * the DER header.\n *\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromString(text) {\n return PublicKey.fromBytes(hex.decode(text));\n }\n\n /**\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromStringED25519(text) {\n return PublicKey.fromBytesED25519(hex.decode(text));\n }\n\n /**\n * @param {string} text\n * @returns {PublicKey}\n */\n static fromStringECDSA(text) {\n return PublicKey.fromBytesECDSA(hex.decode(text));\n }\n\n /**\n * Verify a signature on a message with this public key.\n *\n * @param {Uint8Array} message\n * @param {Uint8Array} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n return this._key.verify(message, signature);\n }\n\n /**\n * @deprecated - use `@hashgraph/sdk`.PublicKey instead\n * @param {Transaction} transaction\n * @returns {boolean}\n */\n verifyTransaction(transaction) {\n console.log(\"Deprecated: use `@hashgraph/sdk`.PublicKey instead\");\n\n transaction._requireFrozen();\n\n if (!transaction.isFrozen()) {\n transaction.freeze();\n }\n\n for (const signedTransaction of transaction._signedTransactions) {\n if (\n signedTransaction.sigMap != null &&\n signedTransaction.sigMap.sigPair != null\n ) {\n let found = false;\n for (const sigPair of signedTransaction.sigMap.sigPair) {\n const pubKeyPrefix = /** @type {Uint8Array} */ (\n sigPair.pubKeyPrefix\n );\n if (arrayEqual(pubKeyPrefix, this.toBytesRaw())) {\n found = true;\n const bodyBytes = /** @type {Uint8Array} */ (\n signedTransaction.bodyBytes\n );\n const signature =\n sigPair.ed25519 != null\n ? sigPair.ed25519\n : /** @type {Uint8Array} */ (\n sigPair.ECDSASecp256k1\n );\n if (!this.verify(bodyBytes, signature)) {\n return false;\n }\n }\n }\n\n if (!found) {\n return false;\n }\n }\n }\n\n return true;\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n if (this._key instanceof Ed25519PublicKey) {\n return this.toBytesRaw();\n } else {\n return this.toBytesDer();\n }\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n return this._key.toBytesDer();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._key.toBytesRaw();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringDer() {\n return hex.encode(this.toBytesDer());\n }\n\n /**\n * @returns {string}\n */\n toStringRaw() {\n return hex.encode(this.toBytesRaw());\n }\n\n /**\n * @param {PublicKey} other\n * @returns {boolean}\n */\n equals(other) {\n if (\n this._key instanceof Ed25519PublicKey &&\n other instanceof Ed25519PublicKey\n ) {\n return this._key.equals(other);\n } else if (\n this._key instanceof EcdsaPublicKey &&\n other instanceof EcdsaPublicKey\n ) {\n return this._key.equals(other);\n } else {\n return false;\n }\n }\n}\n","export const CipherAlgorithm = {\n Aes128Ctr: \"AES-128-CTR\",\n Aes128Cbc: \"AES-128-CBC\",\n};\n\n/**\n * @param {string} algorithm\n * @param {Uint8Array} key\n * @param {Uint8Array} iv\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function createCipheriv(algorithm, key, iv, data) {\n let algorithm_;\n\n switch (algorithm.toUpperCase()) {\n case CipherAlgorithm.Aes128Ctr:\n algorithm_ = {\n name: \"AES-CTR\",\n counter: iv,\n length: 128,\n };\n break;\n case CipherAlgorithm.Aes128Cbc:\n algorithm_ = {\n name: \"AES-CBC\",\n iv: iv,\n };\n break;\n default:\n throw new Error(\n \"(BUG) non-exhaustive switch statement for CipherAlgorithm\"\n );\n }\n\n const key_ = await window.crypto.subtle.importKey(\n \"raw\",\n key,\n algorithm_.name,\n false,\n [\"encrypt\"]\n );\n\n return new Uint8Array(\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/encrypt#return_value\n /** @type {ArrayBuffer} */ (\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n await window.crypto.subtle.encrypt(algorithm_, key_, data)\n )\n );\n}\n\n/**\n * @param {string} algorithm\n * @param {Uint8Array} key\n * @param {Uint8Array} iv\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function createDecipheriv(algorithm, key, iv, data) {\n let algorithm_;\n\n switch (algorithm.toUpperCase()) {\n case CipherAlgorithm.Aes128Ctr:\n algorithm_ = {\n name: \"AES-CTR\",\n counter: iv,\n length: 128,\n };\n break;\n case CipherAlgorithm.Aes128Cbc:\n algorithm_ = {\n name: \"AES-CBC\",\n iv,\n };\n break;\n default:\n throw new Error(\n \"(BUG) non-exhaustive switch statement for CipherAlgorithm\"\n );\n }\n\n const key_ = await window.crypto.subtle.importKey(\n \"raw\",\n key,\n algorithm_.name,\n false,\n [\"decrypt\"]\n );\n\n return new Uint8Array(\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/encrypt#return_value\n /** @type {ArrayBuffer} */ (\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n await window.crypto.subtle.decrypt(algorithm_, key_, data)\n )\n );\n}\n","/**\n * @typedef {Object} AsnSeq\n * @property {AsnType[]} seq\n */\n\n/**\n * @typedef {Object} AsnInt\n * @property {number} int\n */\n\n/**\n * @typedef {Object} AsnBytes\n * @property {Uint8Array} bytes\n */\n\n/**\n * @typedef {Object} AsnIdent\n * @property {string} ident\n */\n\n/**\n * @typedef {{}} AsnNull\n */\n\n/**\n * @typedef {AsnSeq | AsnInt | AsnBytes | AsnIdent | AsnNull} AsnType\n */\n\n/**\n * Note: may throw weird errors on malformed input. Catch and rethrow with, e.g. `BadKeyError`.\n *\n *@param {Uint8Array} data\n *@returns {AsnType}\n */\nexport function decode(data) {\n return decodeIncremental(data)[0];\n}\n\n/**\n * @param {Uint8Array} bytes\n * @returns {[AsnType, Uint8Array]}\n */\nfunction decodeIncremental(bytes) {\n // slice off the initial tag byte, `decodeLength` returns a slice of the remaining data\n const [len, rem] = decodeLength(bytes.subarray(1));\n const data = rem.subarray(0, len);\n const tail = rem.subarray(len);\n\n switch (bytes[0]) {\n case 2:\n return [{ int: decodeInt(data) }, tail];\n case 4: // must always be primitive form in DER; for OCTET STRING this is literal bytes\n return [{ bytes: data }, tail];\n case 5: // empty\n return [{}, tail];\n case 6:\n return [{ ident: decodeObjectIdent(data) }, tail];\n case 48:\n return [{ seq: decodeSeq(data) }, tail];\n default:\n throw new Error(`unsupported DER type tag: ${bytes[0]}`);\n }\n}\n\n/**\n * @param {Uint8Array} seqBytes\n * @returns {AsnType[]}\n */\nfunction decodeSeq(seqBytes) {\n let data = seqBytes;\n\n const seq = [];\n\n while (data.length !== 0) {\n const [decoded, remaining] = decodeIncremental(data);\n seq.push(decoded);\n data = remaining;\n }\n\n return seq;\n}\n\n/**\n * @param {Uint8Array} idBytes\n * @returns {string}\n */\nfunction decodeObjectIdent(idBytes) {\n const id = [\n // first octet is 40 * value1 + value2\n Math.floor(idBytes[0] / 40),\n idBytes[0] % 40,\n ];\n\n // each following ID component is big-endian base128 where the MSB is set if another byte\n // follows for the same value\n let val = 0;\n\n for (const byte of idBytes.subarray(1)) {\n // shift the entire value left by 7 bits\n val *= 128;\n\n if (byte < 128) {\n // no more octets follow for this value, finish it off\n val += byte;\n id.push(val);\n val = 0;\n } else {\n // zero the MSB\n val += byte & 127;\n }\n }\n\n return id.join(\".\");\n}\n\n/**\n * @param {Uint8Array} lenBytes\n * @returns {[number, Uint8Array]}\n */\nfunction decodeLength(lenBytes) {\n if (lenBytes[0] < 128) {\n // definite, short form\n return [lenBytes[0], lenBytes.subarray(1)];\n }\n\n const numBytes = lenBytes[0] - 128;\n\n const intBytes = lenBytes.subarray(1, numBytes + 1);\n const rem = lenBytes.subarray(numBytes + 1);\n\n return [decodeInt(intBytes), rem];\n}\n\n/**\n * @param {Uint8Array} intBytes\n * @returns {number}\n */\nfunction decodeInt(intBytes) {\n const len = intBytes.length;\n if (len === 1) {\n return intBytes[0];\n }\n\n let view = new DataView(\n intBytes.buffer,\n intBytes.byteOffset,\n intBytes.byteLength\n );\n\n if (len === 2) return view.getUint16(0, false);\n\n if (len === 3) {\n // prefix a zero byte and we'll treat it as a 32-bit int\n const data = Uint8Array.of(0, ...intBytes);\n view = new DataView(data.buffer, data.byteOffset, data.byteLength);\n }\n\n if (len > 4) {\n // this probably means a bug in the decoding as this would mean a >4GB structure\n throw new Error(`unsupported DER integer length of ${len} bytes`);\n }\n\n return view.getUint32(0, false);\n}\n","import * as cryptography from \"@hashgraph/cryptography\";\nimport Mnemonic from \"./Mnemonic.js\";\nimport PublicKey from \"./PublicKey.js\";\nimport Key from \"./Key.js\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @typedef {import(\"./transaction/Transaction.js\").default} Transaction\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignaturePair} proto.ISignaturePair\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n */\n\nexport default class PrivateKey extends Key {\n /**\n * @internal\n * @hideconstructor\n * @param {cryptography.PrivateKey} key\n */\n constructor(key) {\n super();\n\n this._key = key;\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {PrivateKey}\n */\n static generateED25519() {\n return new PrivateKey(cryptography.PrivateKey.generateED25519());\n }\n\n /**\n * Generate a random EDSA private key.\n *\n * @returns {PrivateKey}\n */\n static generateECDSA() {\n return new PrivateKey(cryptography.PrivateKey.generateECDSA());\n }\n\n /**\n * Depredated - Use `generateEd25519()` instead\n * Generate a random Ed25519 private key.\n *\n * @returns {PrivateKey}\n */\n static generate() {\n return PrivateKey.generateED25519();\n }\n\n /**\n * Depredated - Use `generateEd25519Async()` instead\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateAsync() {\n return new PrivateKey(await cryptography.PrivateKey.generateAsync());\n }\n\n /**\n * Generate a random Ed25519 private key.\n *\n * @returns {Promise}\n */\n static async generateED25519Async() {\n return new PrivateKey(\n await cryptography.PrivateKey.generateED25519Async()\n );\n }\n\n /**\n * Generate a random ECDSA private key.\n *\n * @returns {Promise}\n */\n static async generateECDSAAsync() {\n return new PrivateKey(\n await cryptography.PrivateKey.generateECDSAAsync()\n );\n }\n\n /**\n * Construct a private key from bytes. Requires DER header.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytes(data) {\n return new PrivateKey(cryptography.PrivateKey.fromBytes(data));\n }\n\n /**\n * Construct a ECDSA private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytesECDSA(data) {\n return new PrivateKey(cryptography.PrivateKey.fromBytesECDSA(data));\n }\n\n /**\n * Construct a ED25519 private key from bytes.\n *\n * @param {Uint8Array} data\n * @returns {PrivateKey}\n */\n static fromBytesED25519(data) {\n return new PrivateKey(cryptography.PrivateKey.fromBytesED25519(data));\n }\n\n /**\n * Construct a private key from a hex-encoded string. Requires DER header.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromString(text) {\n return new PrivateKey(cryptography.PrivateKey.fromString(text));\n }\n\n /**\n * Construct a ECDSA private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromStringECDSA(text) {\n return new PrivateKey(cryptography.PrivateKey.fromStringECDSA(text));\n }\n\n /**\n * Construct a Ed25519 private key from a hex-encoded string.\n *\n * @param {string} text\n * @returns {PrivateKey}\n */\n static fromStringED25519(text) {\n return new PrivateKey(cryptography.PrivateKey.fromStringED25519(text));\n }\n\n /**\n * Recover a private key from a mnemonic phrase (and optionally a password).\n *\n * @param {Mnemonic | cryptography.Mnemonic | string} mnemonic\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n static async fromMnemonic(mnemonic, passphrase = \"\") {\n if (mnemonic instanceof Mnemonic) {\n return new PrivateKey(\n await cryptography.PrivateKey.fromMnemonic(\n mnemonic._mnemonic,\n passphrase\n )\n );\n }\n\n return new PrivateKey(\n await cryptography.PrivateKey.fromMnemonic(mnemonic, passphrase)\n );\n }\n\n /**\n * Recover a private key from a keystore, previously created by `.toKeystore()`.\n *\n * This key will _not_ support child key derivation.\n *\n * @param {Uint8Array} data\n * @param {string} [passphrase]\n * @returns {Promise}\n * @throws {BadKeyError} If the passphrase is incorrect or the hash fails to validate.\n */\n static async fromKeystore(data, passphrase = \"\") {\n return new PrivateKey(\n await cryptography.PrivateKey.fromKeystore(data, passphrase)\n );\n }\n\n /**\n * Recover a private key from a pem string; the private key may be encrypted.\n *\n * This method assumes the .pem file has been converted to a string already.\n *\n * If `passphrase` is not null or empty, this looks for the first `ENCRYPTED PRIVATE KEY`\n * section and uses `passphrase` to decrypt it; otherwise, it looks for the first `PRIVATE KEY`\n * section and decodes that as a DER-encoded private key.\n *\n * @param {string} data\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n static async fromPem(data, passphrase = \"\") {\n return new PrivateKey(\n await cryptography.PrivateKey.fromPem(data, passphrase)\n );\n }\n\n /**\n * Derive a new private key at the given wallet index.\n *\n * Only currently supported for keys created with `fromMnemonic()`; other keys will throw\n * an error.\n *\n * You can check if a key supports derivation with `.supportsDerivation()`\n *\n * @param {number} index\n * @returns {Promise}\n * @throws If this key does not support derivation.\n */\n async derive(index) {\n return new PrivateKey(await this._key.derive(index));\n }\n\n /**\n * @param {number} index\n * @returns {Promise}\n * @throws If this key does not support derivation.\n */\n async legacyDerive(index) {\n return new PrivateKey(await this._key.legacyDerive(index));\n }\n\n /**\n * Get the public key associated with this private key.\n *\n * The public key can be freely given and used by other parties to verify\n * the signatures generated by this private key.\n *\n * @returns {PublicKey}\n */\n get publicKey() {\n return new PublicKey(this._key.publicKey);\n }\n\n /**\n * Sign a message with this private key.\n *\n * @param {Uint8Array} bytes\n * @returns {Uint8Array} - The signature bytes without the message\n */\n sign(bytes) {\n return this._key.sign(bytes);\n }\n\n /**\n * @param {Transaction} transaction\n * @returns {Uint8Array}\n */\n signTransaction(transaction) {\n const tx = transaction._signedTransactions[0];\n const signature =\n tx.bodyBytes != null ? this.sign(tx.bodyBytes) : new Uint8Array();\n\n transaction.addSignature(this.publicKey, signature);\n\n return signature;\n }\n\n /**\n * Check if `derive` can be called on this private key.\n *\n * This is only the case if the key was created from a mnemonic.\n *\n * @returns {boolean}\n */\n isDerivable() {\n return this._key.isDerivable();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return this._key.toBytes();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesDer() {\n return this._key.toBytesDer();\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytesRaw() {\n return this._key.toBytesRaw();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this._key.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringDer() {\n return this._key.toStringDer();\n }\n\n /**\n * @returns {string}\n */\n toStringRaw() {\n return this._key.toStringRaw();\n }\n\n /**\n * Create a keystore with a given passphrase.\n *\n * The key can be recovered later with `fromKeystore()`.\n *\n * Note that this will not retain the ancillary data used for\n * deriving child keys, thus `.derive()` on the restored key will\n * throw even if this instance supports derivation.\n *\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n toKeystore(passphrase = \"\") {\n return this._key.toKeystore(passphrase);\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n return this.publicKey._toProtobufKey();\n }\n\n /**\n * @param {Long | number} shard\n * @param {Long | number} realm\n * @returns {AccountId}\n */\n toAccountId(shard, realm) {\n return this.publicKey.toAccountId(shard, realm);\n }\n}\n\nCACHE.privateKeyConstructor = (key) => new PrivateKey(key);\n","import * as cryptography from \"@hashgraph/cryptography\";\nimport CACHE from \"./Cache.js\";\n\n/**\n * @typedef {import(\"./PrivateKey.js\").default} PrivateKey\n */\n\n/**\n * Multi-word mnemonic phrase (BIP-39).\n *\n * Compatible with the official Hedera mobile\n * wallets (24-words or 22-words) and BRD (12-words).\n */\nexport default class Mnemonic {\n /**\n * @param {cryptography.Mnemonic} mnemonic\n * @hideconstructor\n * @private\n */\n constructor(mnemonic) {\n this._mnemonic = mnemonic;\n }\n\n /**\n * Returns a new random 24-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static async generate() {\n return new Mnemonic(await cryptography.Mnemonic._generate(24));\n }\n\n /**\n * Returns a new random 12-word mnemonic from the BIP-39\n * standard English word list.\n *\n * @returns {Promise}\n */\n static async generate12() {\n return new Mnemonic(await cryptography.Mnemonic._generate(12));\n }\n\n /**\n * Construct a mnemonic from a list of words. Handles 12, 22 (legacy), and 24 words.\n *\n * An exception of BadMnemonicError will be thrown if the mnemonic\n * contains unknown words or fails the checksum. An invalid mnemonic\n * can still be used to create private keys, the exception will\n * contain the failing mnemonic in case you wish to ignore the\n * validation error and continue.\n *\n * @param {string[]} words\n * @throws {BadMnemonicError}\n * @returns {Promise}\n */\n static async fromWords(words) {\n return new Mnemonic(await cryptography.Mnemonic.fromWords(words));\n }\n\n /**\n * Recover a private key from this mnemonic phrase, with an\n * optional passphrase.\n *\n * @param {string} [passphrase]\n * @returns {Promise}\n */\n async toPrivateKey(passphrase = \"\") {\n if (CACHE.privateKeyConstructor == null) {\n throw new Error(\"`PrivateKey` has not been loaded\");\n }\n\n return CACHE.privateKeyConstructor(\n await this._mnemonic.toPrivateKey(passphrase)\n );\n }\n\n /**\n * Recover a mnemonic phrase from a string, splitting on spaces. Handles 12, 22 (legacy), and 24 words.\n *\n * @param {string} mnemonic\n * @returns {Promise}\n */\n static async fromString(mnemonic) {\n return new Mnemonic(await cryptography.Mnemonic.fromString(mnemonic));\n }\n\n /**\n * @returns {Promise}\n */\n async toLegacyPrivateKey() {\n if (CACHE.privateKeyConstructor == null) {\n throw new Error(\"`PrivateKey` has not been loaded\");\n }\n\n return CACHE.privateKeyConstructor(\n await this._mnemonic.toLegacyPrivateKey()\n );\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return this._mnemonic.toString();\n }\n}\n","/**\n * @param {Uint8Array} array1\n * @param {Uint8Array} array2\n * @returns {boolean}\n */\nexport function arrayEqual(array1, array2) {\n if (array1 === array2) {\n return true;\n }\n\n if (array1.byteLength !== array2.byteLength) {\n return false;\n }\n\n const view1 = new DataView(\n array1.buffer,\n array1.byteOffset,\n array1.byteLength\n );\n const view2 = new DataView(\n array2.buffer,\n array2.byteOffset,\n array2.byteLength\n );\n\n let i = array1.byteLength;\n\n while (i--) {\n if (view1.getUint8(i) !== view2.getUint8(i)) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * @param {Uint8Array} array\n * @param {Uint8Array} arrayPrefix\n * @returns {boolean}\n */\nexport function arrayStartsWith(array, arrayPrefix) {\n if (array.byteLength < arrayPrefix.byteLength) {\n return false;\n }\n\n let i = arrayPrefix.byteLength;\n\n while (i--) {\n if (array[i] !== arrayPrefix[i]) {\n return false;\n }\n }\n\n return true;\n}\n","import Long from \"long\";\nimport Hbar from \"../Hbar.js\";\nimport TokenId from \"../token/TokenId.js\";\nimport TokenBalanceMap from \"./TokenBalanceMap.js\";\nimport TokenDecimalMap from \"./TokenDecimalMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetAccountBalanceResponse} proto.ICryptoGetAccountBalanceResponse\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").ITokenBalance} proto.ITokenBalance\n */\n\n/**\n * @typedef {object} TokenBalanceJson\n * @property {string} tokenId\n * @property {string} balance\n * @property {number} decimals\n */\n\n/**\n * @typedef {object} AccountBalanceJson\n * @property {string} hbars\n * @property {TokenBalanceJson[]} tokens\n */\n\nexport default class AccountBalance {\n /**\n * @private\n * @param {object} props\n * @param {Hbar} props.hbars\n * @param {?TokenBalanceMap} props.tokens\n * @param {?TokenDecimalMap} props.tokenDecimals\n */\n constructor(props) {\n /**\n * The account ID for which this balancermation applies.\n *\n * @readonly\n */\n this.hbars = props.hbars;\n\n /** @readonly */\n this.tokens = props.tokens;\n\n /** @readonly */\n this.tokenDecimals = props.tokenDecimals;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ICryptoGetAccountBalanceResponse} accountBalance\n * @returns {AccountBalance}\n */\n static _fromProtobuf(accountBalance) {\n const tokenBalances = new TokenBalanceMap();\n const tokenDecimals = new TokenDecimalMap();\n\n if (accountBalance.tokenBalances != null) {\n for (const balance of accountBalance.tokenBalances) {\n const tokenId = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (balance.tokenId)\n );\n\n tokenDecimals._set(\n tokenId,\n balance.decimals != null ? balance.decimals : 0\n );\n tokenBalances._set(\n tokenId,\n Long.fromValue(/** @type {Long} */ (balance.balance))\n );\n }\n }\n\n return new AccountBalance({\n hbars: Hbar.fromTinybars(\n /** @type {Long} */ (accountBalance.balance)\n ),\n tokens: tokenBalances,\n tokenDecimals,\n });\n }\n\n /**\n * @returns {proto.ICryptoGetAccountBalanceResponse}\n */\n _toProtobuf() {\n /** @type {proto.ITokenBalance[]} */\n const list = [];\n\n for (const [key, value] of this.tokens != null ? this.tokens : []) {\n list.push({\n tokenId: key._toProtobuf(),\n balance: value,\n decimals:\n this.tokenDecimals != null\n ? this.tokenDecimals.get(key)\n : null,\n });\n }\n\n return {\n balance: this.hbars.toTinybars(),\n tokenBalances: list,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this.toJSON());\n }\n\n /**\n * @returns {AccountBalanceJson}\n */\n toJSON() {\n const tokens = [];\n for (const [key, value] of this.tokens != null ? this.tokens : []) {\n const decimals =\n this.tokenDecimals != null ? this.tokenDecimals.get(key) : null;\n\n tokens.push({\n tokenId: key.toString(),\n balance: value.toString(),\n decimals: decimals != null ? decimals : 0,\n });\n }\n\n return {\n hbars: this.hbars.toString(),\n tokens,\n };\n }\n}\n","import BigNumber from \"bignumber.js\";\n\nexport default class HbarUnit {\n /**\n * @internal\n * @param {string} name\n * @param {string} symbol\n * @param {BigNumber} tinybar\n */\n constructor(name, symbol, tinybar) {\n /**\n * @internal\n * @readonly\n */\n this._name = name;\n\n /**\n * @internal\n * @readonly\n */\n this._symbol = symbol;\n\n /**\n * @internal\n * @readonly\n */\n this._tinybar = tinybar;\n\n Object.freeze(this);\n }\n\n /**\n * @param {string} unit\n * @returns {HbarUnit}\n */\n static fromString(unit) {\n switch (unit) {\n case HbarUnit.Hbar._symbol:\n return HbarUnit.Hbar;\n case HbarUnit.Tinybar._symbol:\n return HbarUnit.Tinybar;\n case HbarUnit.Microbar._symbol:\n return HbarUnit.Microbar;\n case HbarUnit.Millibar._symbol:\n return HbarUnit.Millibar;\n case HbarUnit.Kilobar._symbol:\n return HbarUnit.Kilobar;\n case HbarUnit.Megabar._symbol:\n return HbarUnit.Megabar;\n case HbarUnit.Gigabar._symbol:\n return HbarUnit.Gigabar;\n default:\n throw new Error(\"Unknown unit.\");\n }\n }\n}\n\nHbarUnit.Tinybar = new HbarUnit(\"tinybar\", \"tℏ\", new BigNumber(1));\n\nHbarUnit.Microbar = new HbarUnit(\"microbar\", \"μℏ\", new BigNumber(100));\n\nHbarUnit.Millibar = new HbarUnit(\"millibar\", \"mℏ\", new BigNumber(100000));\n\nHbarUnit.Hbar = new HbarUnit(\"hbar\", \"ℏ\", new BigNumber(\"100000000\"));\n\nHbarUnit.Kilobar = new HbarUnit(\n \"kilobar\",\n \"kℏ\",\n new BigNumber(1000).multipliedBy(new BigNumber(\"100000000\"))\n);\n\nHbarUnit.Megabar = new HbarUnit(\n \"megabar\",\n \"Mℏ\",\n new BigNumber(1000000).multipliedBy(new BigNumber(\"100000000\"))\n);\n\nHbarUnit.Gigabar = new HbarUnit(\n \"gigabar\",\n \"Gℏ\",\n new BigNumber(\"1000000000\").multipliedBy(new BigNumber(\"100000000\"))\n);\n","// minimal library entry point.\n\n\"use strict\";\nmodule.exports = require(\"./src/index-minimal\");\n","\"use strict\";\nmodule.exports = Writer;\n\nvar util = require(\"./util/minimal\");\n\nvar BufferWriter; // cyclic\n\nvar LongBits = util.LongBits,\n base64 = util.base64,\n utf8 = util.utf8;\n\n/**\n * Constructs a new writer operation instance.\n * @classdesc Scheduled writer operation.\n * @constructor\n * @param {function(*, Uint8Array, number)} fn Function to call\n * @param {number} len Value byte length\n * @param {*} val Value to write\n * @ignore\n */\nfunction Op(fn, len, val) {\n\n /**\n * Function to call.\n * @type {function(Uint8Array, number, *)}\n */\n this.fn = fn;\n\n /**\n * Value byte length.\n * @type {number}\n */\n this.len = len;\n\n /**\n * Next operation.\n * @type {Writer.Op|undefined}\n */\n this.next = undefined;\n\n /**\n * Value to write.\n * @type {*}\n */\n this.val = val; // type varies\n}\n\n/* istanbul ignore next */\nfunction noop() {} // eslint-disable-line no-empty-function\n\n/**\n * Constructs a new writer state instance.\n * @classdesc Copied writer state.\n * @memberof Writer\n * @constructor\n * @param {Writer} writer Writer to copy state from\n * @ignore\n */\nfunction State(writer) {\n\n /**\n * Current head.\n * @type {Writer.Op}\n */\n this.head = writer.head;\n\n /**\n * Current tail.\n * @type {Writer.Op}\n */\n this.tail = writer.tail;\n\n /**\n * Current buffer length.\n * @type {number}\n */\n this.len = writer.len;\n\n /**\n * Next state.\n * @type {State|null}\n */\n this.next = writer.states;\n}\n\n/**\n * Constructs a new writer instance.\n * @classdesc Wire format writer using `Uint8Array` if available, otherwise `Array`.\n * @constructor\n */\nfunction Writer() {\n\n /**\n * Current length.\n * @type {number}\n */\n this.len = 0;\n\n /**\n * Operations head.\n * @type {Object}\n */\n this.head = new Op(noop, 0, 0);\n\n /**\n * Operations tail\n * @type {Object}\n */\n this.tail = this.head;\n\n /**\n * Linked forked states.\n * @type {Object|null}\n */\n this.states = null;\n\n // When a value is written, the writer calculates its byte length and puts it into a linked\n // list of operations to perform when finish() is called. This both allows us to allocate\n // buffers of the exact required size and reduces the amount of work we have to do compared\n // to first calculating over objects and then encoding over objects. In our case, the encoding\n // part is just a linked list walk calling operations with already prepared values.\n}\n\nvar create = function create() {\n return util.Buffer\n ? function create_buffer_setup() {\n return (Writer.create = function create_buffer() {\n return new BufferWriter();\n })();\n }\n /* istanbul ignore next */\n : function create_array() {\n return new Writer();\n };\n};\n\n/**\n * Creates a new writer.\n * @function\n * @returns {BufferWriter|Writer} A {@link BufferWriter} when Buffers are supported, otherwise a {@link Writer}\n */\nWriter.create = create();\n\n/**\n * Allocates a buffer of the specified size.\n * @param {number} size Buffer size\n * @returns {Uint8Array} Buffer\n */\nWriter.alloc = function alloc(size) {\n return new util.Array(size);\n};\n\n// Use Uint8Array buffer pool in the browser, just like node does with buffers\n/* istanbul ignore else */\nif (util.Array !== Array)\n Writer.alloc = util.pool(Writer.alloc, util.Array.prototype.subarray);\n\n/**\n * Pushes a new operation to the queue.\n * @param {function(Uint8Array, number, *)} fn Function to call\n * @param {number} len Value byte length\n * @param {number} val Value to write\n * @returns {Writer} `this`\n * @private\n */\nWriter.prototype._push = function push(fn, len, val) {\n this.tail = this.tail.next = new Op(fn, len, val);\n this.len += len;\n return this;\n};\n\nfunction writeByte(val, buf, pos) {\n buf[pos] = val & 255;\n}\n\nfunction writeVarint32(val, buf, pos) {\n while (val > 127) {\n buf[pos++] = val & 127 | 128;\n val >>>= 7;\n }\n buf[pos] = val;\n}\n\n/**\n * Constructs a new varint writer operation instance.\n * @classdesc Scheduled varint writer operation.\n * @extends Op\n * @constructor\n * @param {number} len Value byte length\n * @param {number} val Value to write\n * @ignore\n */\nfunction VarintOp(len, val) {\n this.len = len;\n this.next = undefined;\n this.val = val;\n}\n\nVarintOp.prototype = Object.create(Op.prototype);\nVarintOp.prototype.fn = writeVarint32;\n\n/**\n * Writes an unsigned 32 bit value as a varint.\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.uint32 = function write_uint32(value) {\n // here, the call to this.push has been inlined and a varint specific Op subclass is used.\n // uint32 is by far the most frequently used operation and benefits significantly from this.\n this.len += (this.tail = this.tail.next = new VarintOp(\n (value = value >>> 0)\n < 128 ? 1\n : value < 16384 ? 2\n : value < 2097152 ? 3\n : value < 268435456 ? 4\n : 5,\n value)).len;\n return this;\n};\n\n/**\n * Writes a signed 32 bit value as a varint.\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.int32 = function write_int32(value) {\n return value < 0\n ? this._push(writeVarint64, 10, LongBits.fromNumber(value)) // 10 bytes per spec\n : this.uint32(value);\n};\n\n/**\n * Writes a 32 bit value as a varint, zig-zag encoded.\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.sint32 = function write_sint32(value) {\n return this.uint32((value << 1 ^ value >> 31) >>> 0);\n};\n\nfunction writeVarint64(val, buf, pos) {\n while (val.hi) {\n buf[pos++] = val.lo & 127 | 128;\n val.lo = (val.lo >>> 7 | val.hi << 25) >>> 0;\n val.hi >>>= 7;\n }\n while (val.lo > 127) {\n buf[pos++] = val.lo & 127 | 128;\n val.lo = val.lo >>> 7;\n }\n buf[pos++] = val.lo;\n}\n\n/**\n * Writes an unsigned 64 bit value as a varint.\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.uint64 = function write_uint64(value) {\n var bits = LongBits.from(value);\n return this._push(writeVarint64, bits.length(), bits);\n};\n\n/**\n * Writes a signed 64 bit value as a varint.\n * @function\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.int64 = Writer.prototype.uint64;\n\n/**\n * Writes a signed 64 bit value as a varint, zig-zag encoded.\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.sint64 = function write_sint64(value) {\n var bits = LongBits.from(value).zzEncode();\n return this._push(writeVarint64, bits.length(), bits);\n};\n\n/**\n * Writes a boolish value as a varint.\n * @param {boolean} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.bool = function write_bool(value) {\n return this._push(writeByte, 1, value ? 1 : 0);\n};\n\nfunction writeFixed32(val, buf, pos) {\n buf[pos ] = val & 255;\n buf[pos + 1] = val >>> 8 & 255;\n buf[pos + 2] = val >>> 16 & 255;\n buf[pos + 3] = val >>> 24;\n}\n\n/**\n * Writes an unsigned 32 bit value as fixed 32 bits.\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.fixed32 = function write_fixed32(value) {\n return this._push(writeFixed32, 4, value >>> 0);\n};\n\n/**\n * Writes a signed 32 bit value as fixed 32 bits.\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.sfixed32 = Writer.prototype.fixed32;\n\n/**\n * Writes an unsigned 64 bit value as fixed 64 bits.\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.fixed64 = function write_fixed64(value) {\n var bits = LongBits.from(value);\n return this._push(writeFixed32, 4, bits.lo)._push(writeFixed32, 4, bits.hi);\n};\n\n/**\n * Writes a signed 64 bit value as fixed 64 bits.\n * @function\n * @param {Long|number|string} value Value to write\n * @returns {Writer} `this`\n * @throws {TypeError} If `value` is a string and no long library is present.\n */\nWriter.prototype.sfixed64 = Writer.prototype.fixed64;\n\n/**\n * Writes a float (32 bit).\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.float = function write_float(value) {\n return this._push(util.float.writeFloatLE, 4, value);\n};\n\n/**\n * Writes a double (64 bit float).\n * @function\n * @param {number} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.double = function write_double(value) {\n return this._push(util.float.writeDoubleLE, 8, value);\n};\n\nvar writeBytes = util.Array.prototype.set\n ? function writeBytes_set(val, buf, pos) {\n buf.set(val, pos); // also works for plain array values\n }\n /* istanbul ignore next */\n : function writeBytes_for(val, buf, pos) {\n for (var i = 0; i < val.length; ++i)\n buf[pos + i] = val[i];\n };\n\n/**\n * Writes a sequence of bytes.\n * @param {Uint8Array|string} value Buffer or base64 encoded string to write\n * @returns {Writer} `this`\n */\nWriter.prototype.bytes = function write_bytes(value) {\n var len = value.length >>> 0;\n if (!len)\n return this._push(writeByte, 1, 0);\n if (util.isString(value)) {\n var buf = Writer.alloc(len = base64.length(value));\n base64.decode(value, buf, 0);\n value = buf;\n }\n return this.uint32(len)._push(writeBytes, len, value);\n};\n\n/**\n * Writes a string.\n * @param {string} value Value to write\n * @returns {Writer} `this`\n */\nWriter.prototype.string = function write_string(value) {\n var len = utf8.length(value);\n return len\n ? this.uint32(len)._push(utf8.write, len, value)\n : this._push(writeByte, 1, 0);\n};\n\n/**\n * Forks this writer's state by pushing it to a stack.\n * Calling {@link Writer#reset|reset} or {@link Writer#ldelim|ldelim} resets the writer to the previous state.\n * @returns {Writer} `this`\n */\nWriter.prototype.fork = function fork() {\n this.states = new State(this);\n this.head = this.tail = new Op(noop, 0, 0);\n this.len = 0;\n return this;\n};\n\n/**\n * Resets this instance to the last state.\n * @returns {Writer} `this`\n */\nWriter.prototype.reset = function reset() {\n if (this.states) {\n this.head = this.states.head;\n this.tail = this.states.tail;\n this.len = this.states.len;\n this.states = this.states.next;\n } else {\n this.head = this.tail = new Op(noop, 0, 0);\n this.len = 0;\n }\n return this;\n};\n\n/**\n * Resets to the last state and appends the fork state's current write length as a varint followed by its operations.\n * @returns {Writer} `this`\n */\nWriter.prototype.ldelim = function ldelim() {\n var head = this.head,\n tail = this.tail,\n len = this.len;\n this.reset().uint32(len);\n if (len) {\n this.tail.next = head.next; // skip noop\n this.tail = tail;\n this.len += len;\n }\n return this;\n};\n\n/**\n * Finishes the write operation.\n * @returns {Uint8Array} Finished buffer\n */\nWriter.prototype.finish = function finish() {\n var head = this.head.next, // skip noop\n buf = this.constructor.alloc(this.len),\n pos = 0;\n while (head) {\n head.fn(head.val, buf, pos);\n pos += head.len;\n head = head.next;\n }\n // this.head = this.tail = null;\n return buf;\n};\n\nWriter._configure = function(BufferWriter_) {\n BufferWriter = BufferWriter_;\n Writer.create = create();\n BufferWriter._configure();\n};\n","\"use strict\";\nmodule.exports = Reader;\n\nvar util = require(\"./util/minimal\");\n\nvar BufferReader; // cyclic\n\nvar LongBits = util.LongBits,\n utf8 = util.utf8;\n\n/* istanbul ignore next */\nfunction indexOutOfRange(reader, writeLength) {\n return RangeError(\"index out of range: \" + reader.pos + \" + \" + (writeLength || 1) + \" > \" + reader.len);\n}\n\n/**\n * Constructs a new reader instance using the specified buffer.\n * @classdesc Wire format reader using `Uint8Array` if available, otherwise `Array`.\n * @constructor\n * @param {Uint8Array} buffer Buffer to read from\n */\nfunction Reader(buffer) {\n\n /**\n * Read buffer.\n * @type {Uint8Array}\n */\n this.buf = buffer;\n\n /**\n * Read buffer position.\n * @type {number}\n */\n this.pos = 0;\n\n /**\n * Read buffer length.\n * @type {number}\n */\n this.len = buffer.length;\n}\n\nvar create_array = typeof Uint8Array !== \"undefined\"\n ? function create_typed_array(buffer) {\n if (buffer instanceof Uint8Array || Array.isArray(buffer))\n return new Reader(buffer);\n throw Error(\"illegal buffer\");\n }\n /* istanbul ignore next */\n : function create_array(buffer) {\n if (Array.isArray(buffer))\n return new Reader(buffer);\n throw Error(\"illegal buffer\");\n };\n\nvar create = function create() {\n return util.Buffer\n ? function create_buffer_setup(buffer) {\n return (Reader.create = function create_buffer(buffer) {\n return util.Buffer.isBuffer(buffer)\n ? new BufferReader(buffer)\n /* istanbul ignore next */\n : create_array(buffer);\n })(buffer);\n }\n /* istanbul ignore next */\n : create_array;\n};\n\n/**\n * Creates a new reader using the specified buffer.\n * @function\n * @param {Uint8Array|Buffer} buffer Buffer to read from\n * @returns {Reader|BufferReader} A {@link BufferReader} if `buffer` is a Buffer, otherwise a {@link Reader}\n * @throws {Error} If `buffer` is not a valid buffer\n */\nReader.create = create();\n\nReader.prototype._slice = util.Array.prototype.subarray || /* istanbul ignore next */ util.Array.prototype.slice;\n\n/**\n * Reads a varint as an unsigned 32 bit value.\n * @function\n * @returns {number} Value read\n */\nReader.prototype.uint32 = (function read_uint32_setup() {\n var value = 4294967295; // optimizer type-hint, tends to deopt otherwise (?!)\n return function read_uint32() {\n value = ( this.buf[this.pos] & 127 ) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 127) << 7) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 127) << 14) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 127) << 21) >>> 0; if (this.buf[this.pos++] < 128) return value;\n value = (value | (this.buf[this.pos] & 15) << 28) >>> 0; if (this.buf[this.pos++] < 128) return value;\n\n /* istanbul ignore if */\n if ((this.pos += 5) > this.len) {\n this.pos = this.len;\n throw indexOutOfRange(this, 10);\n }\n return value;\n };\n})();\n\n/**\n * Reads a varint as a signed 32 bit value.\n * @returns {number} Value read\n */\nReader.prototype.int32 = function read_int32() {\n return this.uint32() | 0;\n};\n\n/**\n * Reads a zig-zag encoded varint as a signed 32 bit value.\n * @returns {number} Value read\n */\nReader.prototype.sint32 = function read_sint32() {\n var value = this.uint32();\n return value >>> 1 ^ -(value & 1) | 0;\n};\n\n/* eslint-disable no-invalid-this */\n\nfunction readLongVarint() {\n // tends to deopt with local vars for octet etc.\n var bits = new LongBits(0, 0);\n var i = 0;\n if (this.len - this.pos > 4) { // fast route (lo)\n for (; i < 4; ++i) {\n // 1st..4th\n bits.lo = (bits.lo | (this.buf[this.pos] & 127) << i * 7) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n // 5th\n bits.lo = (bits.lo | (this.buf[this.pos] & 127) << 28) >>> 0;\n bits.hi = (bits.hi | (this.buf[this.pos] & 127) >> 4) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n i = 0;\n } else {\n for (; i < 3; ++i) {\n /* istanbul ignore if */\n if (this.pos >= this.len)\n throw indexOutOfRange(this);\n // 1st..3th\n bits.lo = (bits.lo | (this.buf[this.pos] & 127) << i * 7) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n // 4th\n bits.lo = (bits.lo | (this.buf[this.pos++] & 127) << i * 7) >>> 0;\n return bits;\n }\n if (this.len - this.pos > 4) { // fast route (hi)\n for (; i < 5; ++i) {\n // 6th..10th\n bits.hi = (bits.hi | (this.buf[this.pos] & 127) << i * 7 + 3) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n } else {\n for (; i < 5; ++i) {\n /* istanbul ignore if */\n if (this.pos >= this.len)\n throw indexOutOfRange(this);\n // 6th..10th\n bits.hi = (bits.hi | (this.buf[this.pos] & 127) << i * 7 + 3) >>> 0;\n if (this.buf[this.pos++] < 128)\n return bits;\n }\n }\n /* istanbul ignore next */\n throw Error(\"invalid varint encoding\");\n}\n\n/* eslint-enable no-invalid-this */\n\n/**\n * Reads a varint as a signed 64 bit value.\n * @name Reader#int64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a varint as an unsigned 64 bit value.\n * @name Reader#uint64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a zig-zag encoded varint as a signed 64 bit value.\n * @name Reader#sint64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a varint as a boolean.\n * @returns {boolean} Value read\n */\nReader.prototype.bool = function read_bool() {\n return this.uint32() !== 0;\n};\n\nfunction readFixed32_end(buf, end) { // note that this uses `end`, not `pos`\n return (buf[end - 4]\n | buf[end - 3] << 8\n | buf[end - 2] << 16\n | buf[end - 1] << 24) >>> 0;\n}\n\n/**\n * Reads fixed 32 bits as an unsigned 32 bit integer.\n * @returns {number} Value read\n */\nReader.prototype.fixed32 = function read_fixed32() {\n\n /* istanbul ignore if */\n if (this.pos + 4 > this.len)\n throw indexOutOfRange(this, 4);\n\n return readFixed32_end(this.buf, this.pos += 4);\n};\n\n/**\n * Reads fixed 32 bits as a signed 32 bit integer.\n * @returns {number} Value read\n */\nReader.prototype.sfixed32 = function read_sfixed32() {\n\n /* istanbul ignore if */\n if (this.pos + 4 > this.len)\n throw indexOutOfRange(this, 4);\n\n return readFixed32_end(this.buf, this.pos += 4) | 0;\n};\n\n/* eslint-disable no-invalid-this */\n\nfunction readFixed64(/* this: Reader */) {\n\n /* istanbul ignore if */\n if (this.pos + 8 > this.len)\n throw indexOutOfRange(this, 8);\n\n return new LongBits(readFixed32_end(this.buf, this.pos += 4), readFixed32_end(this.buf, this.pos += 4));\n}\n\n/* eslint-enable no-invalid-this */\n\n/**\n * Reads fixed 64 bits.\n * @name Reader#fixed64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads zig-zag encoded fixed 64 bits.\n * @name Reader#sfixed64\n * @function\n * @returns {Long} Value read\n */\n\n/**\n * Reads a float (32 bit) as a number.\n * @function\n * @returns {number} Value read\n */\nReader.prototype.float = function read_float() {\n\n /* istanbul ignore if */\n if (this.pos + 4 > this.len)\n throw indexOutOfRange(this, 4);\n\n var value = util.float.readFloatLE(this.buf, this.pos);\n this.pos += 4;\n return value;\n};\n\n/**\n * Reads a double (64 bit float) as a number.\n * @function\n * @returns {number} Value read\n */\nReader.prototype.double = function read_double() {\n\n /* istanbul ignore if */\n if (this.pos + 8 > this.len)\n throw indexOutOfRange(this, 4);\n\n var value = util.float.readDoubleLE(this.buf, this.pos);\n this.pos += 8;\n return value;\n};\n\n/**\n * Reads a sequence of bytes preceeded by its length as a varint.\n * @returns {Uint8Array} Value read\n */\nReader.prototype.bytes = function read_bytes() {\n var length = this.uint32(),\n start = this.pos,\n end = this.pos + length;\n\n /* istanbul ignore if */\n if (end > this.len)\n throw indexOutOfRange(this, length);\n\n this.pos += length;\n if (Array.isArray(this.buf)) // plain array\n return this.buf.slice(start, end);\n return start === end // fix for IE 10/Win8 and others' subarray returning array of size 1\n ? new this.buf.constructor(0)\n : this._slice.call(this.buf, start, end);\n};\n\n/**\n * Reads a string preceeded by its byte length as a varint.\n * @returns {string} Value read\n */\nReader.prototype.string = function read_string() {\n var bytes = this.bytes();\n return utf8.read(bytes, 0, bytes.length);\n};\n\n/**\n * Skips the specified number of bytes if specified, otherwise skips a varint.\n * @param {number} [length] Length if known, otherwise a varint is assumed\n * @returns {Reader} `this`\n */\nReader.prototype.skip = function skip(length) {\n if (typeof length === \"number\") {\n /* istanbul ignore if */\n if (this.pos + length > this.len)\n throw indexOutOfRange(this, length);\n this.pos += length;\n } else {\n do {\n /* istanbul ignore if */\n if (this.pos >= this.len)\n throw indexOutOfRange(this);\n } while (this.buf[this.pos++] & 128);\n }\n return this;\n};\n\n/**\n * Skips the next element of the specified wire type.\n * @param {number} wireType Wire type received\n * @returns {Reader} `this`\n */\nReader.prototype.skipType = function(wireType) {\n switch (wireType) {\n case 0:\n this.skip();\n break;\n case 1:\n this.skip(8);\n break;\n case 2:\n this.skip(this.uint32());\n break;\n case 3:\n while ((wireType = this.uint32() & 7) !== 4) {\n this.skipType(wireType);\n }\n break;\n case 5:\n this.skip(4);\n break;\n\n /* istanbul ignore next */\n default:\n throw Error(\"invalid wire type \" + wireType + \" at offset \" + this.pos);\n }\n return this;\n};\n\nReader._configure = function(BufferReader_) {\n BufferReader = BufferReader_;\n Reader.create = create();\n BufferReader._configure();\n\n var fn = util.Long ? \"toLong\" : /* istanbul ignore next */ \"toNumber\";\n util.merge(Reader.prototype, {\n\n int64: function read_int64() {\n return readLongVarint.call(this)[fn](false);\n },\n\n uint64: function read_uint64() {\n return readLongVarint.call(this)[fn](true);\n },\n\n sint64: function read_sint64() {\n return readLongVarint.call(this).zzDecode()[fn](false);\n },\n\n fixed64: function read_fixed64() {\n return readFixed64.call(this)[fn](true);\n },\n\n sfixed64: function read_sfixed64() {\n return readFixed64.call(this)[fn](false);\n }\n\n });\n};\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport AccountId from \"./AccountId.js\";\nimport ContractId from \"../contract/ContractId.js\";\nimport AccountBalance from \"./AccountBalance.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetAccountBalanceQuery} proto.ICryptoGetAccountBalanceQuery\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetAccountBalanceResponse} proto.ICryptoGetAccountBalanceResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * Get the balance of a Hedera™ crypto-currency account.\n *\n * This returns only the balance, so its a smaller and faster reply\n * than AccountInfoQuery.\n *\n * This query is free.\n *\n * @augments {Query}\n */\nexport default class AccountBalanceQuery extends Query {\n /**\n * @param {object} [props]\n * @param {AccountId | string} [props.accountId]\n * @param {ContractId | string} [props.contractId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @type {?AccountId}\n * @private\n */\n this._accountId = null;\n\n /**\n * @type {?ContractId}\n * @private\n */\n this._contractId = null;\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n\n if (props.contractId != null) {\n this.setContractId(props.contractId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {AccountBalanceQuery}\n */\n static _fromProtobuf(query) {\n const balance = /** @type {proto.ICryptoGetAccountBalanceQuery} */ (\n query.cryptogetAccountBalance\n );\n\n return new AccountBalanceQuery({\n accountId:\n balance.accountID != null\n ? AccountId._fromProtobuf(balance.accountID)\n : undefined,\n contractId:\n balance.contractID != null\n ? ContractId._fromProtobuf(balance.contractID)\n : undefined,\n });\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * Set the account ID for which the balance is being requested.\n *\n * This is mutually exclusive with `setContractId`.\n *\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @returns {?ContractId}\n */\n get contractId() {\n return this._contractId;\n }\n\n /**\n * Set the contract ID for which the balance is being requested.\n *\n * This is mutually exclusive with `setAccountId`.\n *\n * @param {ContractId | string} contractId\n * @returns {this}\n */\n setContractId(contractId) {\n this._contractId =\n typeof contractId === \"string\"\n ? ContractId.fromString(contractId)\n : contractId.clone();\n\n return this;\n }\n\n /**\n * @protected\n * @override\n * @returns {boolean}\n */\n _isPaymentRequired() {\n return false;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n\n if (this._contractId != null) {\n this._contractId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.cryptoGetBalance(request);\n }\n\n /**\n * @override\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const cryptogetAccountBalance =\n /** @type {proto.ICryptoGetAccountBalanceResponse} */ (\n response.cryptogetAccountBalance\n );\n return /** @type {proto.IResponseHeader} */ (\n cryptogetAccountBalance.header\n );\n }\n\n /**\n * @override\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const cryptogetAccountBalance =\n /** @type {proto.ICryptoGetAccountBalanceResponse} */ (\n response.cryptogetAccountBalance\n );\n return Promise.resolve(\n AccountBalance._fromProtobuf(cryptogetAccountBalance)\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n cryptogetAccountBalance: {\n header,\n accountID:\n this._accountId != null\n ? this._accountId._toProtobuf()\n : null,\n contractID:\n this._contractId != null\n ? this._contractId._toProtobuf()\n : null,\n },\n };\n }\n}\n\nQUERY_REGISTRY.set(\n \"cryptogetAccountBalance\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n AccountBalanceQuery._fromProtobuf\n);\n","export default class GrpcStatus {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {GrpcStatus}\n */\n static _fromValue(code) {\n switch (code) {\n case 0:\n return GrpcStatus.Ok;\n case 1:\n return GrpcStatus.Cancelled;\n case 2:\n return GrpcStatus.Unknown;\n case 3:\n return GrpcStatus.InvalidArgument;\n case 4:\n return GrpcStatus.DeadlineExceeded;\n case 5:\n return GrpcStatus.NotFound;\n case 6:\n return GrpcStatus.AlreadyExists;\n case 7:\n return GrpcStatus.PermissionDenied;\n case 16:\n return GrpcStatus.Unauthenticated;\n case 8:\n return GrpcStatus.ResourceExhausted;\n case 9:\n return GrpcStatus.FailedPrecondition;\n case 10:\n return GrpcStatus.Aborted;\n case 11:\n return GrpcStatus.OutOfRange;\n case 12:\n return GrpcStatus.Unimplemented;\n case 13:\n return GrpcStatus.Internal;\n case 14:\n return GrpcStatus.Unavailable;\n case 15:\n return GrpcStatus.DataLoss;\n default:\n throw new Error(\n \"(BUG) non-exhaustive GrpcStatus switch statement\"\n );\n }\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case GrpcStatus.Ok:\n return \"OK\";\n case GrpcStatus.Cancelled:\n return \"CANCELLED\";\n case GrpcStatus.Unknown:\n return \"UNKNOWN\";\n case GrpcStatus.InvalidArgument:\n return \"INVALID_ARGUMENT\";\n case GrpcStatus.DeadlineExceeded:\n return \"DEADLINE_EXCEEDED\";\n case GrpcStatus.NotFound:\n return \"NOT_FOUND\";\n case GrpcStatus.AlreadyExists:\n return \"ALREADY_EXISTS\";\n case GrpcStatus.PermissionDenied:\n return \"PERMISSION_DENIED\";\n case GrpcStatus.Unauthenticated:\n return \"UNAUTHENTICATED\";\n case GrpcStatus.ResourceExhausted:\n return \"RESOURCE_EXHAUSTED\";\n case GrpcStatus.FailedPrecondition:\n return \"FAILED_PRECONDITION\";\n case GrpcStatus.Aborted:\n return \"ABORTED\";\n case GrpcStatus.OutOfRange:\n return \"OUT_OF_RANGE\";\n case GrpcStatus.Unimplemented:\n return \"UNIMPLEMENTED\";\n case GrpcStatus.Internal:\n return \"INTERNAL\";\n case GrpcStatus.Unavailable:\n return \"UNAVAILABLE\";\n case GrpcStatus.DataLoss:\n return \"DATA_LOSS\";\n\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @returns {number}\n */\n valueOf() {\n return this._code;\n }\n}\n\nGrpcStatus.Ok = new GrpcStatus(0);\nGrpcStatus.Cancelled = new GrpcStatus(1);\nGrpcStatus.Unknown = new GrpcStatus(2);\nGrpcStatus.InvalidArgument = new GrpcStatus(3);\nGrpcStatus.DeadlineExceeded = new GrpcStatus(4);\nGrpcStatus.NotFound = new GrpcStatus(5);\nGrpcStatus.AlreadyExists = new GrpcStatus(6);\nGrpcStatus.PermissionDenied = new GrpcStatus(7);\nGrpcStatus.Unauthenticated = new GrpcStatus(16);\nGrpcStatus.ResourceExhausted = new GrpcStatus(8);\nGrpcStatus.FailedPrecondition = new GrpcStatus(9);\nGrpcStatus.Aborted = new GrpcStatus(10);\nGrpcStatus.OutOfRange = new GrpcStatus(11);\nGrpcStatus.Unimplemented = new GrpcStatus(12);\nGrpcStatus.Internal = new GrpcStatus(13);\nGrpcStatus.Unavailable = new GrpcStatus(14);\nGrpcStatus.DataLoss = new GrpcStatus(15);\n","import ReceiptStatusError from \"../ReceiptStatusError.js\";\nimport Status from \"../Status.js\";\nimport TransactionReceiptQuery from \"./TransactionReceiptQuery.js\";\nimport TransactionRecordQuery from \"./TransactionRecordQuery.js\";\n\n/**\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"./TransactionId.js\").default} TransactionId\n * @typedef {import(\"./TransactionReceipt.js\").default} TransactionReceipt\n * @typedef {import(\"./TransactionRecord.js\").default} TransactionRecord\n */\n\nexport default class TransactionResponse {\n /**\n * @internal\n * @param {object} props\n * @param {AccountId} props.nodeId\n * @param {Uint8Array} props.transactionHash\n * @param {TransactionId} props.transactionId\n */\n constructor(props) {\n /** @readonly */\n this.nodeId = props.nodeId;\n\n /** @readonly */\n this.transactionHash = props.transactionHash;\n\n /** @readonly */\n this.transactionId = props.transactionId;\n\n Object.freeze(this);\n }\n\n /**\n * @param {Client} client\n * @returns {Promise}\n */\n async getReceipt(client) {\n const receipt = await new TransactionReceiptQuery()\n .setTransactionId(this.transactionId)\n .setNodeAccountIds([this.nodeId])\n .execute(client);\n\n if (receipt.status !== Status.Success) {\n throw new ReceiptStatusError({\n transactionReceipt: receipt,\n status: receipt.status,\n transactionId: this.transactionId,\n });\n }\n\n return receipt;\n }\n\n /**\n * @param {Client} client\n * @returns {Promise}\n */\n async getRecord(client) {\n await this.getReceipt(client);\n\n return new TransactionRecordQuery()\n .setTransactionId(this.transactionId)\n .setNodeAccountIds([this.nodeId])\n .execute(client);\n }\n}\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport Status from \"../Status.js\";\nimport TransactionReceipt from \"./TransactionReceipt.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport ReceiptStatusError from \"../ReceiptStatusError.js\";\nimport { ExecutionState } from \"../Executable.js\";\nimport { ResponseCodeEnum } from \"@hashgraph/proto\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ITransactionReceipt} proto.ITransactionReceipt\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetReceiptQuery} proto.ITransactionGetReceiptQuery\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetReceiptResponse} proto.ITransactionGetReceiptResponse\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\n/**\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @augments {Query}\n */\nexport default class TransactionReceiptQuery extends Query {\n /**\n * @param {object} [props]\n * @param {TransactionId | string} [props.transactionId]\n * @param {boolean} [props.includeDuplicates]\n * @param {boolean} [props.includeChildren]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TransactionId}\n */\n this._transactionId = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeChildren = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeDuplicates = null;\n\n if (props.transactionId != null) {\n this.setTransactionId(props.transactionId);\n }\n\n if (props.includeChildren != null) {\n this.setIncludeChildren(props.includeChildren);\n }\n\n if (props.includeDuplicates != null) {\n this.setIncludeDuplicates(props.includeDuplicates);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {TransactionReceiptQuery}\n */\n static _fromProtobuf(query) {\n const receipt = /** @type {proto.ITransactionGetReceiptQuery} */ (\n query.transactionGetReceipt\n );\n\n return new TransactionReceiptQuery({\n transactionId: receipt.transactionID\n ? TransactionId._fromProtobuf(receipt.transactionID)\n : undefined,\n includeDuplicates:\n receipt.includeDuplicates != null\n ? receipt.includeDuplicates\n : undefined,\n includeChildren:\n receipt.includeChildReceipts != null\n ? receipt.includeChildReceipts\n : undefined,\n });\n }\n\n /**\n * @returns {?TransactionId}\n */\n get transactionId() {\n return this._transactionId;\n }\n\n /**\n * Set the transaction ID for which the receipt is being requested.\n *\n * @param {TransactionId | string} transactionId\n * @returns {this}\n */\n setTransactionId(transactionId) {\n this._transactionId =\n typeof transactionId === \"string\"\n ? TransactionId.fromString(transactionId)\n : transactionId.clone();\n\n return this;\n }\n\n /**\n * @param {boolean} includeDuplicates\n * @returns {TransactionReceiptQuery}\n */\n setIncludeDuplicates(includeDuplicates) {\n this._includeDuplicates = includeDuplicates;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeDuplicates() {\n return this._includeDuplicates != null\n ? this._includeDuplicates\n : false;\n }\n\n /**\n * @param {boolean} includeChildren\n * @returns {TransactionReceiptQuery}\n */\n setIncludeChildren(includeChildren) {\n this._includeChildren = includeChildren;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeChildren() {\n return this._includeChildren != null ? this._includeChildren : false;\n }\n\n /**\n * @override\n * @protected\n * @returns {boolean}\n */\n _isPaymentRequired() {\n return false;\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n return ExecutionState.Retry;\n case Status.Ok:\n break;\n default:\n return ExecutionState.Error;\n }\n\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n transactionGetReceipt.receipt\n );\n const receiptStatusCode = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n\n status = Status._fromCode(receiptStatusCode);\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n return ExecutionState.Retry;\n case Status.Success:\n return ExecutionState.Finished;\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Ok:\n // Do nothing\n break;\n\n default:\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n transactionGetReceipt.receipt\n );\n const receiptStatusCode = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n\n status = Status._fromCode(receiptStatusCode);\n\n return new ReceiptStatusError({\n status,\n transactionId: this._getTransactionId(),\n transactionReceipt: TransactionReceipt._fromProtobuf(\n transactionGetReceipt\n ),\n });\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (\n this._transactionId != null &&\n this._transactionId.accountId != null\n ) {\n this._transactionId.accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.getTransactionReceipts(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n return /** @type {proto.IResponseHeader} */ (\n transactionGetReceipt.header\n );\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const transactionGetReceipt =\n /** @type {proto.ITransactionGetReceiptResponse} */ (\n response.transactionGetReceipt\n );\n\n return Promise.resolve(\n TransactionReceipt._fromProtobuf(transactionGetReceipt)\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n transactionGetReceipt: {\n header,\n transactionID:\n this._transactionId != null\n ? this._transactionId._toProtobuf()\n : null,\n includeDuplicates: this._includeDuplicates,\n includeChildReceipts: this._includeChildren,\n },\n };\n }\n}\n\nQUERY_REGISTRY.set(\n \"transactionGetReceipt\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TransactionReceiptQuery._fromProtobuf\n);\n","import Long from \"long\";\n\nexport default class ExchangeRate {\n /**\n * @private\n * @param {object} props\n * @param {number} props.hbars\n * @param {number} props.cents\n * @param {Date} props.expirationTime\n */\n constructor(props) {\n /**\n * Denotes Hbar equivalent to cents (USD)\n *\n * @readonly\n * @type {number}\n */\n this.hbars = props.hbars;\n\n /**\n * Denotes cents (USD) equivalent to Hbar\n *\n * @readonly\n * @type {number}\n */\n this.cents = props.cents;\n\n /**\n * Expiration time of this exchange rate\n *\n * @readonly\n * @type {Date}\n */\n this.expirationTime = props.expirationTime;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {import(\"@hashgraph/proto\").IExchangeRate} rate\n * @returns {ExchangeRate}\n */\n static _fromProtobuf(rate) {\n return new ExchangeRate({\n hbars: /** @type {number} */ (rate.hbarEquiv),\n cents: /** @type {number} */ (rate.centEquiv),\n expirationTime: new Date(\n rate.expirationTime != null\n ? rate.expirationTime.seconds != null\n ? rate.expirationTime.seconds instanceof Long\n ? rate.expirationTime.seconds.toInt()\n : rate.expirationTime.seconds\n : 0 * 1000\n : 0 * 1000\n ),\n });\n }\n\n /**\n * @internal\n * @returns {import(\"@hashgraph/proto\").IExchangeRate}\n */\n _toProtobuf() {\n return {\n hbarEquiv: this.hbars,\n centEquiv: this.cents,\n expirationTime: {\n seconds: Long.fromNumber(this.expirationTime.getSeconds()),\n },\n };\n }\n}\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport TransactionRecord from \"./TransactionRecord.js\";\nimport TransactionReceipt from \"./TransactionReceipt.js\";\nimport TransactionId from \"./TransactionId.js\";\nimport Status from \"../Status.js\";\nimport PrecheckStatusError from \"../PrecheckStatusError.js\";\nimport ReceiptStatusError from \"../ReceiptStatusError.js\";\nimport { ExecutionState } from \"../Executable.js\";\nimport { ResponseType, ResponseCodeEnum } from \"@hashgraph/proto\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").ITransactionRecord} proto.ITransactionRecord\n * @typedef {import(\"@hashgraph/proto\").ITransactionReceipt} proto.ITransactionReceipt\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetRecordResponse} proto.ITransactionGetRecordResponse\n * @typedef {import(\"@hashgraph/proto\").ITransactionGetRecordQuery} proto.ITransactionGetRecordQuery\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ResponseCodeEnum} proto.ResponseCodeEnum\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * @augments {Query}\n */\nexport default class TransactionRecordQuery extends Query {\n /**\n * @param {object} [props]\n * @param {TransactionId} [props.transactionId]\n * @param {boolean} [props.includeChildren]\n * @param {boolean} [props.includeDuplicates]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TransactionId}\n */\n this._transactionId = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeChildren = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._includeDuplicates = null;\n\n if (props.transactionId != null) {\n this.setTransactionId(props.transactionId);\n }\n\n if (props.includeChildren != null) {\n this.setIncludeChildren(props.includeChildren);\n }\n\n if (props.includeDuplicates != null) {\n this.setIncludeDuplicates(props.includeDuplicates);\n }\n }\n\n /**\n * @returns {?TransactionId}\n */\n get transactionId() {\n return this._transactionId;\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {TransactionRecordQuery}\n */\n static _fromProtobuf(query) {\n const record = /** @type {proto.ITransactionGetRecordQuery} */ (\n query.transactionGetRecord\n );\n\n return new TransactionRecordQuery({\n transactionId: record.transactionID\n ? TransactionId._fromProtobuf(record.transactionID)\n : undefined,\n includeChildren:\n record.includeChildRecords != null\n ? record.includeChildRecords\n : undefined,\n includeDuplicates:\n record.includeDuplicates != null\n ? record.includeDuplicates\n : undefined,\n });\n }\n\n /**\n * Set the transaction ID for which the record is being requested.\n *\n * @param {TransactionId | string} transactionId\n * @returns {TransactionRecordQuery}\n */\n setTransactionId(transactionId) {\n this._transactionId =\n typeof transactionId === \"string\"\n ? TransactionId.fromString(transactionId)\n : transactionId.clone();\n\n return this;\n }\n\n /**\n * @param {boolean} includeChildren\n * @returns {TransactionRecordQuery}\n */\n setIncludeChildren(includeChildren) {\n this._includeChildren = includeChildren;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeChildren() {\n return this._includeChildren != null ? this._includeChildren : false;\n }\n\n /**\n * @param {boolean} includeDuplicates\n * @returns {TransactionRecordQuery}\n */\n setIncludeDuplicates(includeDuplicates) {\n this._duplicates = includeDuplicates;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get includeDuplicates() {\n return this._duplicates != null ? this._duplicates : false;\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {ExecutionState}\n */\n _shouldRetry(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n case Status.RecordNotFound:\n return ExecutionState.Retry;\n\n case Status.Ok:\n break;\n\n default:\n return ExecutionState.Error;\n }\n\n const transactionGetRecord =\n /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n const header = /** @type {proto.IResponseHeader} */ (\n transactionGetRecord.header\n );\n\n if (header.responseType === ResponseType.COST_ANSWER) {\n return ExecutionState.Finished;\n }\n\n const record = /** @type {proto.ITransactionRecord} */ (\n transactionGetRecord.transactionRecord\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n record.receipt\n );\n const receiptStatusCode = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n status = Status._fromCode(receiptStatusCode);\n\n switch (status) {\n case Status.Ok:\n case Status.Busy:\n case Status.Unknown:\n case Status.ReceiptNotFound:\n case Status.RecordNotFound:\n return ExecutionState.Retry;\n\n case Status.Success:\n return ExecutionState.Finished;\n\n default:\n return ExecutionState.Error;\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n const { nodeTransactionPrecheckCode } =\n this._mapResponseHeader(response);\n\n let status = Status._fromCode(\n nodeTransactionPrecheckCode != null\n ? nodeTransactionPrecheckCode\n : ResponseCodeEnum.OK\n );\n\n switch (status) {\n case Status.Ok:\n // Do nothing\n break;\n\n default:\n return new PrecheckStatusError({\n status,\n transactionId: this._getTransactionId(),\n });\n }\n\n const transactionGetRecord =\n /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n const record = /** @type {proto.ITransactionRecord} */ (\n transactionGetRecord.transactionRecord\n );\n const receipt = /** @type {proto.ITransactionReceipt} */ (\n record.receipt\n );\n const receiptStatusError = /** @type {proto.ResponseCodeEnum} */ (\n receipt.status\n );\n\n status = Status._fromCode(receiptStatusError);\n\n return new ReceiptStatusError({\n status,\n transactionId: this._getTransactionId(),\n transactionReceipt: TransactionReceipt._fromProtobuf({ receipt }),\n });\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (\n this._transactionId != null &&\n this._transactionId.accountId != null\n ) {\n this._transactionId.accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.getTxRecordByTxID(request);\n }\n\n /**\n * @override\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const transactionGetRecord =\n /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n return /** @type {proto.IResponseHeader} */ (\n transactionGetRecord.header\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const record = /** @type {proto.ITransactionGetRecordResponse} */ (\n response.transactionGetRecord\n );\n\n return Promise.resolve(TransactionRecord._fromProtobuf(record));\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n transactionGetRecord: {\n header,\n transactionID:\n this._transactionId != null\n ? this._transactionId._toProtobuf()\n : null,\n includeChildRecords: this._includeChildren,\n includeDuplicates: this._includeDuplicates,\n },\n };\n }\n}\n\nQUERY_REGISTRY.set(\n \"transactionGetRecord\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TransactionRecordQuery._fromProtobuf\n);\n","import AccountId from \"./account/AccountId.js\";\nimport Hbar from \"./Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"long\")} Long\n */\n\n/**\n * An account, and the amount that it sends or receives during a cryptocurrency transfer.\n */\nexport default class Transfer {\n /**\n * @internal\n * @param {object} props\n * @param {AccountId | string} props.accountId\n * @param {number | string | Long | BigNumber | Hbar} props.amount\n */\n constructor(props) {\n /**\n * The Account ID that sends or receives cryptocurrency.\n *\n * @readonly\n */\n this.accountId =\n props.accountId instanceof AccountId\n ? props.accountId\n : AccountId.fromString(props.accountId);\n\n /**\n * The amount of tinybars that the account sends(negative) or receives(positive).\n *\n * @readonly\n */\n this.amount =\n props.amount instanceof Hbar\n ? props.amount\n : new Hbar(props.amount);\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IAccountAmount} transfer\n * @returns {Transfer}\n */\n static _fromProtobuf(transfer) {\n return new Transfer({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (transfer.accountID)\n ),\n amount: Hbar.fromTinybars(\n transfer.amount != null ? transfer.amount : 0\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.IAccountAmount}\n */\n _toProtobuf() {\n return {\n accountID: this.accountId._toProtobuf(),\n amount: this.amount.toTinybars(),\n };\n }\n}\n","import ContractId from \"./ContractId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IContractLoginfo} proto.IContractLoginfo\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n */\n\n/**\n * The log information for an event returned by a smart contract function call. One function call\n * may return several such events.\n */\nexport default class ContractLogInfo {\n /**\n * @param {object} props\n * @param {ContractId} props.contractId\n * @param {Uint8Array} props.bloom\n * @param {Uint8Array[]} props.topics\n * @param {Uint8Array} props.data\n */\n constructor(props) {\n /**\n * Address of a contract that emitted the event.\n *\n * @readonly\n */\n this.contractId = props.contractId;\n\n /**\n * Bloom filter for a particular log.\n *\n * @readonly\n */\n this.bloom = props.bloom;\n\n /**\n * Topics of a particular event.\n *\n * @readonly\n */\n this.topics = props.topics;\n\n /**\n * Event data.\n *\n * @readonly\n */\n this.data = props.data;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IContractLoginfo} info\n * @returns {ContractLogInfo}\n */\n static _fromProtobuf(info) {\n return new ContractLogInfo({\n contractId: ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (info.contractID)\n ),\n bloom: info.bloom != null ? info.bloom : new Uint8Array(),\n topics: info.topic != null ? info.topic : [],\n data: info.data != null ? info.data : new Uint8Array(),\n });\n }\n\n /**\n * @internal\n * @returns {proto.IContractLoginfo}\n */\n _toProtobuf() {\n return {\n contractID: this.contractId._toProtobuf(),\n bloom: this.bloom,\n topic: this.topics,\n data: this.data,\n };\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport TokenTransferAccountMap from \"./TokenTransferAccountMap.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenTransferList} proto.ITokenTransferList\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenTransferMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n\n /**\n * @internal\n * @param {TokenId} tokenId\n * @param {AccountId} accountId\n * @param {Long} amount\n */\n __set(tokenId, accountId, amount) {\n const token = tokenId.toString();\n\n let _map = this._map.get(token);\n if (_map == null) {\n _map = new TokenTransferAccountMap();\n this._map.set(token, _map);\n this.__map.set(tokenId, _map);\n }\n\n _map._set(accountId, amount);\n }\n\n /**\n * @param {proto.ITokenTransferList[]} transfers\n * @returns {TokenTransferMap}\n */\n static _fromProtobuf(transfers) {\n const tokenTransfersMap = new TokenTransferMap();\n\n for (const transfer of transfers) {\n const token = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (transfer.token)\n );\n\n for (const aa of transfer.transfers != null\n ? transfer.transfers\n : []) {\n const account = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (aa.accountID)\n );\n\n tokenTransfersMap.__set(\n token,\n account,\n /** @type {Long} */ (aa.amount)\n );\n }\n }\n\n return tokenTransfersMap;\n }\n\n /**\n * @returns {proto.ITokenTransferList[]}\n */\n _toProtobuf() {\n /** @type {proto.ITokenTransferList[]} */\n const tokenTransferList = [];\n\n for (const [tokenId, value] of this) {\n /** @type {proto.IAccountAmount[]} */\n const transfers = [];\n\n for (const [accountId, amount] of value) {\n transfers.push({\n accountID: accountId._toProtobuf(),\n amount: amount,\n });\n }\n\n tokenTransferList.push({\n token: tokenId._toProtobuf(),\n transfers: transfers,\n });\n }\n\n return tokenTransferList;\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenTransferList} proto.ITokenTransferList\n * @typedef {import(\"@hashgraph/proto\").INftTransfer} proto.INftTransfer\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {object} NftTransfer\n * @property {AccountId} sender\n * @property {AccountId} recipient\n * @property {Long} serial\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenNftTransferMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n\n /**\n * @internal\n * @param {TokenId} tokenId\n * @param {NftTransfer} nftTransfer\n */\n __set(tokenId, nftTransfer) {\n const token = tokenId.toString();\n\n let _map = this._map.get(token);\n if (_map == null) {\n _map = [];\n this._map.set(token, _map);\n this.__map.set(tokenId, _map);\n }\n\n _map.push(nftTransfer);\n }\n\n /**\n * @param {proto.ITokenTransferList[]} transfers\n * @returns {TokenNftTransferMap}\n */\n static _fromProtobuf(transfers) {\n const tokenTransfersMap = new TokenNftTransferMap();\n\n for (const transfer of transfers) {\n const token = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (transfer.token)\n );\n\n for (const aa of transfer.nftTransfers != null\n ? transfer.nftTransfers\n : []) {\n const sender = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (aa.senderAccountID)\n );\n const recipient = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (aa.receiverAccountID)\n );\n\n tokenTransfersMap.__set(token, {\n sender,\n recipient,\n serial: /** @type {Long} */ (aa.serialNumber),\n });\n }\n }\n\n return tokenTransfersMap;\n }\n\n /**\n * @returns {proto.ITokenTransferList[]}\n */\n _toProtobuf() {\n /** @type {proto.ITokenTransferList[]} */\n const tokenTransferList = [];\n\n for (const [tokenId, value] of this) {\n /** @type {proto.INftTransfer[]} */\n const transfers = [];\n\n for (const transfer of value) {\n transfers.push({\n senderAccountID: transfer.sender._toProtobuf(),\n receiverAccountID: transfer.recipient._toProtobuf(),\n serialNumber: transfer.serial,\n });\n }\n\n tokenTransferList.push({\n token: tokenId._toProtobuf(),\n nftTransfers: transfers,\n });\n }\n\n return tokenTransferList;\n }\n}\n","import TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IAssessedCustomFee} proto.IAssessedCustomFee\n */\n\nexport default class AssessedCustomFee {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.feeCollectorAccountId]\n * @param {TokenId | string} [props.tokenId]\n * @param {Long | number} [props.amount]\n * @param {AccountId[]} [props.payerAccountIds]\n */\n constructor(props = {}) {\n /**\n * @type {?AccountId}\n */\n this._feeCollectorAccountId;\n\n if (props.feeCollectorAccountId != null) {\n this.setFeeCollectorAccountId(props.feeCollectorAccountId);\n }\n\n /**\n * @type {?TokenId}\n */\n this._tokenId;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n /**\n * @type {?Long}\n */\n this._amount;\n\n if (props.amount != null) {\n this.setAmount(props.amount);\n }\n\n /**\n * @type {?AccountId[]}\n */\n this._payerAccountIds;\n\n if (props.payerAccountIds != null) {\n this.setPayerAccountIds(props.payerAccountIds);\n }\n }\n\n /**\n * @returns {?AccountId}\n */\n get feeCollectorAccountId() {\n return this._feeCollectorAccountId;\n }\n\n /**\n * @param {AccountId | string} feeCollectorAccountId\n * @returns {this}\n */\n setFeeCollectorAccountId(feeCollectorAccountId) {\n this._feeCollectorAccountId =\n typeof feeCollectorAccountId === \"string\"\n ? AccountId.fromString(feeCollectorAccountId)\n : feeCollectorAccountId;\n return this;\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._tokenId =\n typeof tokenId === \"string\" ? TokenId.fromString(tokenId) : tokenId;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get amount() {\n return this._amount;\n }\n\n /**\n * @param {Long | number} amount\n * @returns {AssessedCustomFee}\n */\n setAmount(amount) {\n this._amount =\n typeof amount === \"number\" ? Long.fromNumber(amount) : amount;\n return this;\n }\n\n /**\n * @returns {?AccountId[]}\n */\n get payerAccountIds() {\n return this._payerAccountIds;\n }\n\n /**\n * @param {AccountId[]} payerAccountIds\n * @returns {AssessedCustomFee}\n */\n setPayerAccountIds(payerAccountIds) {\n this._payerAccountIds = payerAccountIds;\n return this;\n }\n\n /**\n * @internal\n * @param {proto.IAssessedCustomFee} fee\n * @returns {AssessedCustomFee}\n */\n static _fromProtobuf(fee) {\n return new AssessedCustomFee({\n feeCollectorAccountId:\n fee.feeCollectorAccountId != null\n ? AccountId._fromProtobuf(fee.feeCollectorAccountId)\n : undefined,\n tokenId:\n fee.tokenId != null\n ? TokenId._fromProtobuf(fee.tokenId)\n : undefined,\n amount: fee.amount != null ? fee.amount : undefined,\n payerAccountIds:\n fee.effectivePayerAccountId != null\n ? fee.effectivePayerAccountId.map((id) =>\n AccountId._fromProtobuf(id)\n )\n : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.IAssessedCustomFee}\n */\n _toProtobuf() {\n return {\n feeCollectorAccountId:\n this.feeCollectorAccountId != null\n ? this.feeCollectorAccountId._toProtobuf()\n : null,\n tokenId: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n amount: this._amount,\n effectivePayerAccountId:\n this._payerAccountIds != null\n ? this._payerAccountIds.map((id) => id._toProtobuf())\n : null,\n };\n }\n}\n","/**\n * @param {Uint8Array} data\n * @returns {Promise}\n */\nexport async function digest(data) {\n // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/digest\n return new Uint8Array(await crypto.subtle.digest(\"SHA-384\", data));\n}\n","import AccountId from \"./AccountId.js\";\nimport LiveHash from \"./LiveHash.js\";\nimport Hbar from \"../Hbar.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport TokenRelationshipMap from \"./TokenRelationshipMap.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Duration from \"../Duration.js\";\nimport Key from \"../Key.js\";\nimport PublicKey from \"../PublicKey.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * Current information about an account, including the balance.\n */\nexport default class AccountInfo {\n /**\n * @private\n * @param {object} props\n * @param {AccountId} props.accountId\n * @param {?string} props.contractAccountId\n * @param {boolean} props.isDeleted\n * @param {?AccountId} props.proxyAccountId\n * @param {Hbar} props.proxyReceived\n * @param {Key} props.key\n * @param {Hbar} props.balance\n * @param {Hbar} props.sendRecordThreshold\n * @param {Hbar} props.receiveRecordThreshold\n * @param {boolean} props.isReceiverSignatureRequired\n * @param {Timestamp} props.expirationTime\n * @param {Duration} props.autoRenewPeriod\n * @param {LiveHash[]} props.liveHashes\n * @param {TokenRelationshipMap} props.tokenRelationships\n * @param {string} props.accountMemo\n * @param {Long} props.ownedNfts\n * @param {Long} props.maxAutomaticTokenAssociations\n * @param {PublicKey | null} props.aliasKey\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * The account ID for which this information applies.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * The Contract Account ID comprising of both the contract instance and the cryptocurrency\n * account owned by the contract instance, in the format used by Solidity.\n *\n * @readonly\n */\n this.contractAccountId = props.contractAccountId;\n\n /**\n * If true, then this account has been deleted, it will disappear when it expires, and\n * all transactions for it will fail except the transaction to extend its expiration date.\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * The Account ID of the account to which this is proxy staked. If proxyAccountID is null,\n * or is an invalid account, or is an account that isn't a node, then this account is\n * automatically proxy staked to a node chosen by the network, but without earning payments.\n * If the proxyAccountID account refuses to accept proxy staking , or if it is not currently\n * running a node, then it will behave as if proxyAccountID was null.\n *\n * @readonly\n */\n this.proxyAccountId = props.proxyAccountId;\n\n /**\n * The total number of tinybars proxy staked to this account.\n *\n * @readonly\n */\n this.proxyReceived = props.proxyReceived;\n\n /**\n * The key for the account, which must sign in order to transfer out, or to modify the account\n * in any way other than extending its expiration date.\n *\n * @readonly\n */\n this.key = props.key;\n\n /**\n * The current balance of account.\n *\n * @readonly\n */\n this.balance = props.balance;\n\n /**\n * The threshold amount (in tinybars) for which an account record is created (and this account\n * charged for them) for any send/withdraw transaction.\n *\n * @readonly\n */\n this.sendRecordThreshold = props.sendRecordThreshold;\n\n /**\n * The threshold amount (in tinybars) for which an account record is created\n * (and this account charged for them) for any transaction above this amount.\n *\n * @readonly\n */\n this.receiveRecordThreshold = props.receiveRecordThreshold;\n\n /**\n * If true, no transaction can transfer to this account unless signed by this account's key.\n *\n * @readonly\n */\n this.isReceiverSignatureRequired = props.isReceiverSignatureRequired;\n\n /**\n * The TimeStamp time at which this account is set to expire.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * The duration for expiration time will extend every this many seconds. If there are\n * insufficient funds, then it extends as long as possible. If it is empty when it\n * expires, then it is deleted.\n *\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /** @readonly */\n this.liveHashes = props.liveHashes;\n\n /** @readonly */\n this.tokenRelationships = props.tokenRelationships;\n\n /** @readonly */\n this.accountMemo = props.accountMemo;\n\n /** @readonly */\n this.ownedNfts = props.ownedNfts;\n\n /** @readonly */\n this.maxAutomaticTokenAssociations =\n props.maxAutomaticTokenAssociations;\n\n this.aliasKey = props.aliasKey;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IAccountInfo} info\n * @returns {AccountInfo}\n */\n static _fromProtobuf(info) {\n let aliasKey =\n info.alias != null && info.alias.length > 0\n ? Key._fromProtobufKey(proto.Key.decode(info.alias))\n : null;\n\n if (!(aliasKey instanceof PublicKey)) {\n aliasKey = null;\n }\n\n return new AccountInfo({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.accountID)\n ),\n contractAccountId:\n info.contractAccountID != null ? info.contractAccountID : null,\n isDeleted: info.deleted != null ? info.deleted : false,\n key: Key._fromProtobufKey(/** @type {proto.IKey} */ (info.key)),\n balance: Hbar.fromTinybars(info.balance != null ? info.balance : 0),\n sendRecordThreshold: Hbar.fromTinybars(\n info.generateSendRecordThreshold != null\n ? info.generateSendRecordThreshold\n : 0\n ),\n receiveRecordThreshold: Hbar.fromTinybars(\n info.generateReceiveRecordThreshold != null\n ? info.generateReceiveRecordThreshold\n : 0\n ),\n isReceiverSignatureRequired:\n info.receiverSigRequired != null\n ? info.receiverSigRequired\n : false,\n expirationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n ),\n autoRenewPeriod:\n info.autoRenewPeriod != null\n ? new Duration(\n /** @type {Long} */ (info.autoRenewPeriod.seconds)\n )\n : new Duration(0),\n proxyAccountId:\n info.proxyAccountID != null &&\n Long.fromValue(\n /** @type {Long | number} */ (info.proxyAccountID.shardNum)\n ).toInt() !== 0 &&\n Long.fromValue(\n /** @type {Long | number} */ (info.proxyAccountID.realmNum)\n ).toInt() !== 0 &&\n Long.fromValue(\n /** @type {Long | number} */ (\n info.proxyAccountID.accountNum\n )\n ).toInt() !== 0\n ? AccountId._fromProtobuf(info.proxyAccountID)\n : null,\n proxyReceived: Hbar.fromTinybars(\n info.proxyReceived != null ? info.proxyReceived : 0\n ),\n liveHashes: (info.liveHashes != null ? info.liveHashes : []).map(\n (hash) => LiveHash._fromProtobuf(hash)\n ),\n tokenRelationships: TokenRelationshipMap._fromProtobuf(\n info.tokenRelationships != null ? info.tokenRelationships : []\n ),\n accountMemo: info.memo != null ? info.memo : \"\",\n ownedNfts: info.ownedNfts ? info.ownedNfts : Long.ZERO,\n maxAutomaticTokenAssociations: info.maxAutomaticTokenAssociations\n ? Long.fromNumber(info.maxAutomaticTokenAssociations)\n : Long.ZERO,\n aliasKey,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @returns {proto.IAccountInfo}\n */\n _toProtobuf() {\n return {\n accountID: this.accountId._toProtobuf(),\n contractAccountID: this.contractAccountId,\n deleted: this.isDeleted,\n proxyAccountID:\n this.proxyAccountId != null\n ? this.proxyAccountId._toProtobuf()\n : null,\n proxyReceived: this.proxyReceived.toTinybars(),\n key: this.key._toProtobufKey(),\n balance: this.balance.toTinybars(),\n generateSendRecordThreshold: this.sendRecordThreshold.toTinybars(),\n generateReceiveRecordThreshold:\n this.receiveRecordThreshold.toTinybars(),\n receiverSigRequired: this.isReceiverSignatureRequired,\n expirationTime: this.expirationTime._toProtobuf(),\n autoRenewPeriod: this.autoRenewPeriod._toProtobuf(),\n liveHashes: this.liveHashes.map((hash) => hash._toProtobuf()),\n tokenRelationships:\n this.tokenRelationships != null\n ? this.tokenRelationships._toProtobuf()\n : null,\n memo: this.accountMemo,\n ownedNfts: this.ownedNfts,\n maxAutomaticTokenAssociations:\n this.maxAutomaticTokenAssociations.toInt(),\n alias:\n this.aliasKey != null\n ? proto.Key.encode(this.aliasKey._toProtobufKey()).finish()\n : null,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {AccountInfo}\n */\n static fromBytes(bytes) {\n return AccountInfo._fromProtobuf(\n proto.CryptoGetInfoResponse.AccountInfo.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.CryptoGetInfoResponse.AccountInfo.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport TokenRelationship from \"./TokenRelationship.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenRelationship} proto.ITokenRelationship\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"long\")} Long\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenRelationshipMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n\n /**\n * @param {proto.ITokenRelationship[]} relationships\n * @returns {TokenRelationshipMap}\n */\n static _fromProtobuf(relationships) {\n const tokenRelationships = new TokenRelationshipMap();\n\n for (const relationship of relationships) {\n const tokenId = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (relationship.tokenId)\n );\n\n tokenRelationships._set(\n tokenId,\n TokenRelationship._fromProtobuf(relationship)\n );\n }\n\n return tokenRelationships;\n }\n\n /**\n * @returns {proto.ITokenRelationship[]}\n */\n _toProtobuf() {\n const list = [];\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const [_, relationship] of this) {\n list.push(relationship._toProtobuf());\n }\n\n return list;\n }\n}\n","import AccountId from \"./AccountId.js\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IProxyStaker} proto.IProxyStaker\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n */\n\n/**\n * An account, and the amount that it sends or receives during a cryptocurrency transfer.\n */\nexport default class ProxyStaker {\n /**\n * @private\n * @param {object} props\n * @param {AccountId} props.accountId\n * @param {number | string | Long | BigNumber | Hbar} props.amount\n */\n constructor(props) {\n /**\n * The Account ID that sends or receives cryptocurrency.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * The amount of tinybars that the account sends(negative)\n * or receives(positive).\n *\n * @readonly\n */\n this.amount =\n props.amount instanceof Hbar\n ? props.amount\n : new Hbar(props.amount);\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IProxyStaker} transfer\n * @returns {ProxyStaker}\n */\n static _fromProtobuf(transfer) {\n return new ProxyStaker({\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (transfer.accountID)\n ),\n amount: Hbar.fromTinybars(\n transfer.amount != null ? transfer.amount : 0\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.IProxyStaker}\n */\n _toProtobuf() {\n return {\n accountID: this.accountId._toProtobuf(),\n amount: this.amount.toTinybars(),\n };\n }\n}\n","import { keccak256 } from \"../cryptography/keccak.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @enum {number}\n */\nexport const ArgumentType = {\n uint8: 0,\n int8: 1,\n uint16: 2,\n int16: 3,\n uint32: 4,\n int32: 5,\n uint64: 6,\n int64: 7,\n uint256: 8,\n int256: 9,\n string: 10,\n bool: 11,\n bytes: 12,\n bytes32: 13,\n address: 14,\n func: 15,\n};\n\n/**\n * @typedef {object} Argument\n * @property {boolean} dynamic\n * @property {Uint8Array} value\n */\n\n/**\n * @typedef {object} SolidityType\n * @property {ArgumentType} ty\n * @property {boolean} array\n */\n\nexport default class ContractFunctionSelector {\n /**\n * @param {string} [name]\n */\n constructor(name) {\n /**\n * @type {?string}\n */\n this.name = null;\n\n /**\n * @type {string}\n */\n this._params = \"\";\n\n /**\n * @type {SolidityType[]}\n */\n this._paramTypes = [];\n\n if (name != null) {\n this._name = name;\n }\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addString() {\n return this._addParam({ ty: ArgumentType.string, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addStringArray() {\n return this._addParam({ ty: ArgumentType.string, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytes() {\n return this._addParam({ ty: ArgumentType.bytes, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytes32() {\n return this._addParam({ ty: ArgumentType.bytes32, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytesArray() {\n return this._addParam({ ty: ArgumentType.bytes, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBytes32Array() {\n return this._addParam({ ty: ArgumentType.bytes32, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt8() {\n return this._addParam({ ty: ArgumentType.int8, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt32() {\n return this._addParam({ ty: ArgumentType.int32, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt64() {\n return this._addParam({ ty: ArgumentType.int64, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt256() {\n return this._addParam({ ty: ArgumentType.int256, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt8Array() {\n return this._addParam({ ty: ArgumentType.int8, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt32Array() {\n return this._addParam({ ty: ArgumentType.int32, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt64Array() {\n return this._addParam({ ty: ArgumentType.int64, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addInt256Array() {\n return this._addParam({ ty: ArgumentType.int256, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint8() {\n return this._addParam({ ty: ArgumentType.uint8, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint32() {\n return this._addParam({ ty: ArgumentType.uint32, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint64() {\n return this._addParam({ ty: ArgumentType.uint64, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint256() {\n return this._addParam({ ty: ArgumentType.uint256, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint8Array() {\n return this._addParam({ ty: ArgumentType.uint8, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint32Array() {\n return this._addParam({ ty: ArgumentType.uint32, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint64Array() {\n return this._addParam({ ty: ArgumentType.uint64, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addUint256Array() {\n return this._addParam({ ty: ArgumentType.uint256, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addBool() {\n return this._addParam({ ty: ArgumentType.bool, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addAddress() {\n return this._addParam({ ty: ArgumentType.address, array: false });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addAddressArray() {\n return this._addParam({ ty: ArgumentType.address, array: true });\n }\n\n /**\n * @returns {ContractFunctionSelector}\n */\n addFunction() {\n return this._addParam({ ty: ArgumentType.func, array: false });\n }\n\n /**\n * @param {SolidityType} ty\n * @returns {ContractFunctionSelector}\n */\n _addParam(ty) {\n if (this._paramTypes.length > 0) {\n this._params += \",\";\n }\n\n this._params += solidityTypeToString(ty);\n this._paramTypes.push(ty);\n\n return this;\n }\n\n /**\n * @param {string} [name]\n * @returns {Uint8Array}\n */\n _build(name) {\n if (name != null) {\n this._name = name;\n } else if (this._name == null) {\n throw new Error(\"`name` required for ContractFunctionSelector\");\n }\n\n const func = hex.encode(utf8.encode(this.toString()));\n return hex.decode(keccak256(`0x${func}`)).slice(0, 4);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return `${this._name != null ? this._name.toString() : \"\"}(${\n this._params\n })`;\n }\n}\n\n/**\n * @param {SolidityType} ty\n * @returns {string}\n */\nfunction solidityTypeToString(ty) {\n let s = \"\";\n switch (ty.ty) {\n case ArgumentType.uint8:\n s = \"uint8\";\n break;\n case ArgumentType.int8:\n s = \"int8\";\n break;\n case ArgumentType.uint16:\n s = \"uint16\";\n break;\n case ArgumentType.int16:\n s = \"int16\";\n break;\n case ArgumentType.uint32:\n s = \"uint32\";\n break;\n case ArgumentType.int32:\n s = \"int32\";\n break;\n case ArgumentType.uint64:\n s = \"uint64\";\n break;\n case ArgumentType.int64:\n s = \"int64\";\n break;\n case ArgumentType.uint256:\n s = \"uint256\";\n break;\n case ArgumentType.int256:\n s = \"int256\";\n break;\n case ArgumentType.string:\n s = \"string\";\n break;\n case ArgumentType.bool:\n s = \"bool\";\n break;\n case ArgumentType.bytes:\n s = \"bytes\";\n break;\n case ArgumentType.bytes32:\n s = \"bytes32\";\n break;\n case ArgumentType.address:\n s = \"address\";\n break;\n case ArgumentType.func:\n s = \"function\";\n break;\n default:\n s = \"\";\n break;\n }\n\n if (ty.array) {\n s += \"[]\";\n }\n\n return s;\n}\n","import ContractId from \"./ContractId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Duration from \"../Duration.js\";\nimport Hbar from \"../Hbar.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport TokenRelationshipMap from \"../account/TokenRelationshipMap.js\";\nimport Key from \"../Key.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * Response when the client sends the node CryptoGetInfoQuery.\n */\nexport default class ContractInfo {\n /**\n * @private\n * @param {object} props\n * @param {ContractId} props.contractId\n * @param {AccountId} props.accountId\n * @param {string} props.contractAccountId\n * @param {?Key} props.adminKey\n * @param {Timestamp} props.expirationTime\n * @param {Duration} props.autoRenewPeriod\n * @param {Long} props.storage\n * @param {string} props.contractMemo\n * @param {Hbar} props.balance\n * @param {boolean} props.isDeleted\n * @param {TokenRelationshipMap} props.tokenRelationships\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * ID of the contract instance, in the format used in transactions.\n *\n * @readonly\n */\n this.contractId = props.contractId;\n\n /**\n * ID of the cryptocurrency account owned by the contract instance,\n * in the format used in transactions.\n *\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * ID of both the contract instance and the cryptocurrency account owned by the contract\n * instance, in the format used by Solidity.\n *\n * @readonly\n */\n this.contractAccountId = props.contractAccountId;\n\n /**\n * The state of the instance and its fields can be modified arbitrarily if this key signs a\n * transaction to modify it. If this is null, then such modifications are not possible,\n * and there is no administrator that can override the normal operation of this smart\n * contract instance. Note that if it is created with no admin keys, then there is no\n * administrator to authorize changing the admin keys, so there can never be any admin keys\n * for that instance.\n *\n * @readonly\n */\n this.adminKey = props.adminKey != null ? props.adminKey : null;\n\n /**\n * The current time at which this contract instance (and its account) is set to expire.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * The expiration time will extend every this many seconds. If there are insufficient funds,\n * then it extends as long as possible. If the account is empty when it expires,\n * then it is deleted.\n *\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /**\n * Number of bytes of storage being used by this instance (which affects the cost to\n * extend the expiration time).\n *\n * @readonly\n */\n this.storage = props.storage;\n\n /**\n * The memo associated with the contract (max 100 bytes).\n *\n * @readonly\n */\n this.contractMemo = props.contractMemo;\n\n /**\n * The current balance of the contract.\n *\n * @readonly\n */\n this.balance = props.balance;\n\n /**\n * Whether the contract has been deleted\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * The tokens associated to the contract\n *\n * @readonly\n */\n this.tokenRelationships = props.tokenRelationships;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IContractInfo} info\n * @returns {ContractInfo}\n */\n static _fromProtobuf(info) {\n const autoRenewPeriod = /** @type {Long | number} */ (\n /** @type {proto.IDuration} */ (info.autoRenewPeriod).seconds\n );\n\n return new ContractInfo({\n contractId: ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (info.contractID)\n ),\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.accountID)\n ),\n contractAccountId:\n info.contractAccountID != null ? info.contractAccountID : \"\",\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n expirationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n ),\n autoRenewPeriod: new Duration(autoRenewPeriod),\n storage:\n info.storage != null\n ? info.storage instanceof Long\n ? info.storage\n : Long.fromValue(info.storage)\n : Long.ZERO,\n contractMemo: info.memo != null ? info.memo : \"\",\n balance: Hbar.fromTinybars(info.balance != null ? info.balance : 0),\n isDeleted: /** @type {boolean} */ (info.deleted),\n tokenRelationships: TokenRelationshipMap._fromProtobuf(\n info.tokenRelationships != null ? info.tokenRelationships : []\n ),\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IContractInfo}\n */\n _toProtobuf() {\n return {\n contractID: this.contractId._toProtobuf(),\n accountID: this.accountId._toProtobuf(),\n contractAccountID: this.contractAccountId,\n adminKey:\n this.adminKey != null ? this.adminKey._toProtobufKey() : null,\n expirationTime: this.expirationTime._toProtobuf(),\n autoRenewPeriod:\n this.autoRenewPeriod != null\n ? this.autoRenewPeriod._toProtobuf()\n : null,\n storage: this.storage,\n memo: this.contractMemo,\n balance: this.balance.toTinybars(),\n deleted: this.isDeleted,\n tokenRelationships:\n this.tokenRelationships != null\n ? this.tokenRelationships._toProtobuf()\n : null,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {ContractInfo}\n */\n static fromBytes(bytes) {\n return ContractInfo._fromProtobuf(\n proto.ContractGetInfoResponse.ContractInfo.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ContractGetInfoResponse.ContractInfo.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import FileId from \"./FileId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport KeyList from \"../KeyList.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * Response when the client sends the node CryptoGetInfoQuery.\n */\nexport default class FileInfo {\n /**\n * @private\n * @param {object} props\n * @param {FileId} props.fileId\n * @param {Long} props.size\n * @param {Timestamp} props.expirationTime\n * @param {boolean} props.isDeleted\n * @param {KeyList} props.keys\n * @param {string} props.fileMemo\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * The ID of the file for which information is requested.\n *\n * @readonly\n */\n this.fileId = props.fileId;\n\n /**\n * Number of bytes in contents.\n *\n * @readonly\n */\n this.size = props.size;\n\n /**\n * The current time at which this account is set to expire.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * True if deleted but not yet expired.\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * One of these keys must sign in order to delete the file.\n * All of these keys must sign in order to update the file.\n *\n * @readonly\n */\n this.keys = props.keys;\n\n this.fileMemo = props.fileMemo;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IFileInfo} info\n * @returns {FileInfo}\n */\n static _fromProtobuf(info) {\n const size = /** @type {Long | number} */ (info.size);\n\n return new FileInfo({\n fileId: FileId._fromProtobuf(\n /** @type {proto.IFileID} */ (info.fileID)\n ),\n size: size instanceof Long ? size : Long.fromValue(size),\n expirationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n ),\n isDeleted: /** @type {boolean} */ (info.deleted),\n keys:\n info.keys != null\n ? KeyList.__fromProtobufKeyList(info.keys)\n : new KeyList(),\n fileMemo: info.memo != null ? info.memo : \"\",\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IFileInfo}\n */\n _toProtobuf() {\n return {\n fileID: this.fileId._toProtobuf(),\n size: this.size,\n expirationTime: this.expirationTime._toProtobuf(),\n deleted: this.isDeleted,\n keys: this.keys._toProtobufKey().keyList,\n memo: this.fileMemo,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {FileInfo}\n */\n static fromBytes(bytes) {\n return FileInfo._fromProtobuf(\n proto.FileGetInfoResponse.FileInfo.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.FileGetInfoResponse.FileInfo.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import SemanticVersion from \"./SemanticVersion.js\";\nimport * as proto from \"@hashgraph/proto\";\n\n/**\n * Response when the client sends the node CryptoGetVersionInfoQuery.\n */\nexport default class NetworkVersionInfo {\n /**\n * @private\n * @param {object} props\n * @param {SemanticVersion} props.protobufVersion\n * @param {SemanticVersion} props.servicesVesion\n */\n constructor(props) {\n /**\n * The account ID for which this information applies.\n *\n * @readonly\n */\n this.protobufVersion = props.protobufVersion;\n\n /**\n * The account ID for which this information applies.\n *\n * @readonly\n */\n this.servicesVesion = props.servicesVesion;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.INetworkGetVersionInfoResponse} info\n * @returns {NetworkVersionInfo}\n */\n static _fromProtobuf(info) {\n return new NetworkVersionInfo({\n protobufVersion: SemanticVersion._fromProtobuf(\n /** @type {proto.ISemanticVersion} */\n (info.hapiProtoVersion)\n ),\n servicesVesion: SemanticVersion._fromProtobuf(\n /** @type {proto.ISemanticVersion} */\n (info.hederaServicesVersion)\n ),\n });\n }\n\n /**\n * @internal\n * @returns {proto.INetworkGetVersionInfoResponse}\n */\n _toProtobuf() {\n return {\n hapiProtoVersion: this.protobufVersion._toProtobuf(),\n hederaServicesVersion: this.servicesVesion._toProtobuf(),\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {NetworkVersionInfo}\n */\n static fromBytes(bytes) {\n return NetworkVersionInfo._fromProtobuf(\n proto.NetworkGetVersionInfoResponse.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.NetworkGetVersionInfoResponse.encode(\n this._toProtobuf()\n ).finish();\n }\n}\n","import * as proto from \"@hashgraph/proto\";\n\nexport default class SemanticVersion {\n /**\n * @private\n * @param {object} props\n * @param {number} props.major\n * @param {number} props.minor\n * @param {number} props.patch\n */\n constructor(props) {\n /** @readonly */\n this.major = props.major;\n /** @readonly */\n this.minor = props.minor;\n /** @readonly */\n this.patch = props.patch;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ISemanticVersion} version\n * @returns {SemanticVersion}\n */\n static _fromProtobuf(version) {\n return new SemanticVersion({\n major: /** @type {number} */ (version.major),\n minor: /** @type {number} */ (version.minor),\n patch: /** @type {number} */ (version.patch),\n });\n }\n\n /**\n * @internal\n * @returns {proto.ISemanticVersion}\n */\n _toProtobuf() {\n return {\n major: this.major,\n minor: this.minor,\n patch: this.patch,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {SemanticVersion}\n */\n static fromBytes(bytes) {\n return SemanticVersion._fromProtobuf(\n proto.SemanticVersion.decode(bytes)\n );\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.SemanticVersion.encode(this._toProtobuf()).finish();\n }\n}\n","import ScheduleId from \"./ScheduleId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Transaction from \"../transaction/Transaction.js\";\nimport {\n TransactionList as ProtoTransactionList,\n TransactionBody as ProtoTransactionBody,\n SignedTransaction as ProtoSignedTransaction,\n SchedulableTransactionBody as ProtoSchedulableTransactionBody,\n} from \"@hashgraph/proto\";\nimport TransactionId from \"../transaction/TransactionId.js\";\nimport Key from \"../Key.js\";\nimport KeyList from \"../KeyList.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IScheduleInfo} proto.IScheduleInfo\n * @typedef {import(\"@hashgraph/proto\").IScheduleID} proto.IScheduleID\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").IScheduleID} proto.IScheduledID\n * @typedef {import(\"@hashgraph/proto\").IFileID} proto.IFileID\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n * @typedef {import(\"@hashgraph/proto\").ISchedulableTransactionBody} proto.ISchedulableTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n */\n\n/**\n * Response when the client sends the node ScheduleGetInfoQuery.\n */\nexport default class ScheduleInfo {\n /**\n * @private\n * @param {object} props\n * @param {ScheduleId} props.scheduleId;\n * @param {?AccountId} props.creatorAccountID;\n * @param {?AccountId} props.payerAccountID;\n * @param {?proto.ISchedulableTransactionBody} props.schedulableTransactionBody;\n * @param {?Key} props.adminKey\n * @param {?KeyList} props.signers;\n * @param {?string} props.scheduleMemo;\n * @param {?Timestamp} props.expirationTime;\n * @param {?Timestamp} props.executed;\n * @param {?Timestamp} props.deleted;\n * @param {?TransactionId} props.scheduledTransactionId;\n */\n constructor(props) {\n /**\n *\n * @readonly\n */\n this.scheduleId = props.scheduleId;\n\n /**\n *\n * @readonly\n */\n this.creatorAccountId = props.creatorAccountID;\n\n /**\n *\n * @readonly\n */\n this.payerAccountId = props.payerAccountID;\n\n /**\n *\n * @readonly\n */\n this.schedulableTransactionBody = props.schedulableTransactionBody;\n\n /**\n *\n * @readonly\n */\n this.signers = props.signers;\n\n /**\n *\n * @readonly\n */\n this.scheduleMemo = props.scheduleMemo;\n\n /**\n *\n * @readonly\n */\n this.adminKey = props.adminKey != null ? props.adminKey : null;\n\n /**\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n *\n * @readonly\n */\n this.executed = props.executed;\n\n /**\n *\n * @readonly\n */\n this.deleted = props.deleted;\n\n this.scheduledTransactionId = props.scheduledTransactionId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IScheduleInfo} info\n * @returns {ScheduleInfo}\n */\n static _fromProtobuf(info) {\n return new ScheduleInfo({\n scheduleId: ScheduleId._fromProtobuf(\n /** @type {proto.IScheduleID} */ (info.scheduleID)\n ),\n creatorAccountID:\n info.creatorAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n info.creatorAccountID\n )\n )\n : null,\n payerAccountID:\n info.payerAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.payerAccountID)\n )\n : null,\n schedulableTransactionBody:\n info.scheduledTransactionBody != null\n ? info.scheduledTransactionBody\n : null,\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n signers:\n info.signers != null\n ? KeyList.__fromProtobufKeyList(info.signers)\n : null,\n scheduleMemo: info.memo != null ? info.memo : null,\n expirationTime:\n info.expirationTime != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expirationTime)\n )\n : null,\n executed:\n info.executionTime != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.executionTime)\n )\n : null,\n deleted:\n info.deletionTime != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.deletionTime)\n )\n : null,\n scheduledTransactionId:\n info.scheduledTransactionID != null\n ? TransactionId._fromProtobuf(info.scheduledTransactionID)\n : null,\n });\n }\n\n /**\n * @returns {proto.IScheduleInfo}\n */\n _toProtobuf() {\n return {\n scheduleID:\n this.scheduleId != null ? this.scheduleId._toProtobuf() : null,\n creatorAccountID:\n this.creatorAccountId != null\n ? this.creatorAccountId._toProtobuf()\n : null,\n payerAccountID:\n this.payerAccountId != null\n ? this.payerAccountId._toProtobuf()\n : null,\n scheduledTransactionBody:\n this.schedulableTransactionBody != null\n ? this.schedulableTransactionBody\n : null,\n adminKey:\n this.adminKey != null ? this.adminKey._toProtobufKey() : null,\n signers:\n this.signers != null\n ? this.signers._toProtobufKey().keyList\n : null,\n memo: this.scheduleMemo != null ? this.scheduleMemo : \"\",\n expirationTime:\n this.expirationTime != null\n ? this.expirationTime._toProtobuf()\n : null,\n scheduledTransactionID:\n this.scheduledTransactionId != null\n ? this.scheduledTransactionId._toProtobuf()\n : null,\n };\n }\n\n /**\n * @returns {Transaction}\n */\n get scheduledTransaction() {\n if (this.schedulableTransactionBody == null) {\n throw new Error(\"Scheduled transaction body is empty\");\n }\n\n const scheduled = new ProtoSchedulableTransactionBody(\n this.schedulableTransactionBody\n );\n const data =\n /** @type {NonNullable} */ (\n scheduled.data\n );\n\n return Transaction.fromBytes(\n ProtoTransactionList.encode({\n transactionList: [\n {\n signedTransactionBytes: ProtoSignedTransaction.encode({\n bodyBytes: ProtoTransactionBody.encode({\n transactionFee:\n this.schedulableTransactionBody\n .transactionFee,\n memo: this.schedulableTransactionBody.memo,\n [data]: scheduled[data],\n }).finish(),\n }).finish(),\n },\n ],\n }).finish()\n );\n }\n}\n","import TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Duration from \"../Duration.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport * as proto from \"@hashgraph/proto\";\nimport TokenType from \"./TokenType.js\";\nimport TokenSupplyType from \"./TokenSupplyType.js\";\nimport CustomFixedFee from \"./CustomFixedFee.js\";\nimport CustomFractionalFee from \"./CustomFractionalFee.js\";\nimport CustomRoyaltyFee from \"./CustomRoyaltyFee.js\";\nimport Key from \"../Key.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * @typedef {import(\"./CustomFee.js\").default} CustomFee\n */\n\n/**\n * Response when the client sends the node TokenGetInfoQuery.\n */\nexport default class TokenInfo {\n /**\n * @private\n * @param {object} props\n * @param {TokenId} props.tokenId;\n * @param {string} props.name;\n * @param {string} props.symbol;\n * @param {number} props.decimals;\n * @param {Long} props.totalSupply;\n * @param {AccountId | null} props.treasuryAccountId;\n * @param {Key | null} props.adminKey;\n * @param {Key | null} props.kycKey;\n * @param {Key | null} props.freezeKey;\n * @param {Key | null} props.pauseKey;\n * @param {Key | null} props.wipeKey;\n * @param {Key | null} props.supplyKey;\n * @param {Key | null} props.feeScheduleKey;\n * @param {boolean | null} props.defaultFreezeStatus;\n * @param {boolean | null} props.defaultKycStatus;\n * @param {boolean | null} props.pauseStatus;\n * @param {boolean} props.isDeleted;\n * @param {AccountId | null} props.autoRenewAccountId;\n * @param {Duration | null} props.autoRenewPeriod;\n * @param {Timestamp | null} props.expirationTime;\n * @param {string} props.tokenMemo;\n * @param {CustomFee[]} props.customFees;\n * @param {TokenType | null} props.tokenType;\n * @param {TokenSupplyType | null} props.supplyType;\n * @param {Long | null} props.maxSupply;\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * ID of the token instance\n *\n * @readonly\n */\n this.tokenId = props.tokenId;\n\n /**\n * The name of the token. It is a string of ASCII only characters\n *\n * @readonly\n */\n this.name = props.name;\n\n /**\n * The symbol of the token. It is a UTF-8 capitalized alphabetical string\n *\n * @readonly\n */\n this.symbol = props.symbol;\n\n /**\n * The number of decimal places a token is divisible by\n *\n * @readonly\n */\n this.decimals = props.decimals;\n\n /**\n * The total supply of tokens that are currently in circulation\n *\n * @readonly\n */\n this.totalSupply = props.totalSupply;\n\n /**\n * The ID of the account which is set as treasuryAccountId\n *\n * @readonly\n */\n this.treasuryAccountId = props.treasuryAccountId;\n\n /**\n * The key which can perform update/delete operations on the token. If empty, the token can be perceived as\n * immutable (not being able to be updated/deleted)\n *\n * @readonly\n */\n this.adminKey = props.adminKey;\n\n /**\n * The key which can grant or revoke KYC of an account for the token's transactions. If empty, KYC is not required,\n * and KYC grant or revoke operations are not possible.\n *\n * @readonly\n */\n this.kycKey = props.kycKey;\n\n /**\n * The key which can freeze or unfreeze an account for token transactions. If empty, freezing is not possible\n *\n * @readonly\n */\n this.freezeKey = props.freezeKey;\n\n /**\n * The Key which can pause and unpause the Token.\n *\n * @readonly\n */\n this.pauseKey = props.pauseKey;\n\n /**\n * The key which can wipe token balance of an account. If empty, wipe is not possible\n *\n * @readonly\n */\n this.wipeKey = props.wipeKey;\n\n /**\n * The key which can change the supply of a token. The key is used to sign Token Mint/Burn operations\n *\n * @readonly\n */\n this.supplyKey = props.supplyKey;\n\n this.feeScheduleKey = props.feeScheduleKey;\n\n /**\n * The default Freeze status (not applicable = null, frozen = false, or unfrozen = true) of Hedera accounts relative to this token.\n * FreezeNotApplicable is returned if Token Freeze Key is empty. Frozen is returned if Token Freeze Key is set and\n * defaultFreeze is set to true. Unfrozen is returned if Token Freeze Key is set and defaultFreeze is set to false\n * FreezeNotApplicable = null;\n * Frozen = true;\n * Unfrozen = false;\n *\n * @readonly\n */\n this.defaultFreezeStatus = props.defaultFreezeStatus;\n\n /**\n * The default KYC status (KycNotApplicable or Revoked) of Hedera accounts relative to this token. KycNotApplicable\n * is returned if KYC key is not set, otherwise Revoked\n * KycNotApplicable = null;\n * Granted = true;\n * Revoked = false;\n *\n * @readonly\n */\n this.defaultKycStatus = props.defaultKycStatus;\n\n /**\n * The default pause status of Hedera accounts relative to this token.\n * PauseNotApplicable is returned if pauseKey is not set\n * PauseNotApplicable = null;\n * Paused = true;\n * Unpaused = false;\n *\n * @readonly\n */\n this.pauseStatus = props.pauseStatus;\n\n /**\n * Specifies whether the token was deleted or not\n *\n * @readonly\n */\n this.isDeleted = props.isDeleted;\n\n /**\n * An account which will be automatically charged to renew the token's expiration, at autoRenewPeriod interval\n *\n * @readonly\n */\n this.autoRenewAccountId = props.autoRenewAccountId;\n\n /**\n * The interval at which the auto-renew account will be charged to extend the token's expiry\n *\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /**\n * The epoch second at which the token expire: will; if an auto-renew account and period are specified,\n * this is coerced to the current epoch second plus the autoRenewPeriod\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * The memo associated with the token.\n *\n * @readonly\n */\n this.tokenMemo = props.tokenMemo;\n\n this.customFees = props.customFees;\n\n this.tokenType = props.tokenType;\n\n this.supplyType = props.supplyType;\n\n this.maxSupply = props.maxSupply;\n\n this.ledgerId = props.ledgerId;\n }\n\n /**\n * @internal\n * @param {proto.ITokenInfo} info\n * @returns {TokenInfo}\n */\n static _fromProtobuf(info) {\n const defaultFreezeStatus = /** @type {proto.TokenFreezeStatus} */ (\n info.defaultFreezeStatus\n );\n const defaultKycStatus = /** @type {proto.TokenKycStatus} */ (\n info.defaultKycStatus\n );\n const pauseStatus = /**@type {proto.TokenPauseStatus} */ (\n info.pauseStatus\n );\n\n const autoRenewAccountId =\n info.autoRenewAccount != null\n ? AccountId._fromProtobuf(info.autoRenewAccount)\n : new AccountId(0);\n\n return new TokenInfo({\n tokenId: TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (info.tokenId)\n ),\n name: /** @type {string} */ (info.name),\n symbol: /** @type {string} */ (info.symbol),\n decimals: /** @type {number} */ (info.decimals),\n totalSupply: Long.fromValue(/** @type {Long} */ (info.totalSupply)),\n treasuryAccountId:\n info.treasury != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.treasury)\n )\n : null,\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n kycKey:\n info.kycKey != null ? Key._fromProtobufKey(info.kycKey) : null,\n freezeKey:\n info.freezeKey != null\n ? Key._fromProtobufKey(info.freezeKey)\n : null,\n pauseKey:\n info.pauseKey != null\n ? Key._fromProtobufKey(info.pauseKey)\n : null,\n wipeKey:\n info.wipeKey != null\n ? Key._fromProtobufKey(info.wipeKey)\n : null,\n supplyKey:\n info.supplyKey != null\n ? Key._fromProtobufKey(info.supplyKey)\n : null,\n feeScheduleKey:\n info.feeScheduleKey != null\n ? Key._fromProtobufKey(info.feeScheduleKey)\n : null,\n defaultFreezeStatus:\n defaultFreezeStatus === 0 ? null : defaultFreezeStatus == 1,\n defaultKycStatus:\n defaultKycStatus === 0 ? null : defaultKycStatus == 1,\n pauseStatus: pauseStatus === 0 ? null : pauseStatus == 1,\n isDeleted: /** @type {boolean} */ (info.deleted),\n autoRenewAccountId: !(\n autoRenewAccountId.shard.toInt() == 0 &&\n autoRenewAccountId.realm.toInt() == 0 &&\n autoRenewAccountId.num.toInt() == 0\n )\n ? autoRenewAccountId\n : null,\n autoRenewPeriod:\n info.autoRenewPeriod != null\n ? Duration._fromProtobuf(\n /** @type {proto.IDuration} */ (info.autoRenewPeriod)\n )\n : null,\n expirationTime:\n info.expiry != null\n ? Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.expiry)\n )\n : null,\n tokenMemo: info.memo != null ? info.memo : \"\",\n customFees:\n info.customFees != null\n ? info.customFees.map((fee) => {\n if (fee.fixedFee != null) {\n return CustomFixedFee._fromProtobuf(fee);\n } else if (fee.fractionalFee != null) {\n return CustomFractionalFee._fromProtobuf(fee);\n } else {\n return CustomRoyaltyFee._fromProtobuf(fee);\n }\n })\n : [],\n tokenType:\n info.tokenType != null\n ? TokenType._fromCode(info.tokenType)\n : null,\n supplyType:\n info.supplyType != null\n ? TokenSupplyType._fromCode(info.supplyType)\n : null,\n maxSupply: info.maxSupply != null ? info.maxSupply : null,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @returns {proto.ITokenInfo}\n */\n _toProtobuf() {\n return {\n tokenId: this.tokenId._toProtobuf(),\n name: this.name,\n symbol: this.symbol,\n decimals: this.decimals,\n totalSupply: this.totalSupply,\n treasury:\n this.treasuryAccountId != null\n ? this.treasuryAccountId._toProtobuf()\n : null,\n adminKey:\n this.adminKey != null ? this.adminKey._toProtobufKey() : null,\n kycKey: this.kycKey != null ? this.kycKey._toProtobufKey() : null,\n freezeKey:\n this.freezeKey != null ? this.freezeKey._toProtobufKey() : null,\n pauseKey:\n this.pauseKey != null ? this.pauseKey._toProtobufKey() : null,\n wipeKey:\n this.wipeKey != null ? this.wipeKey._toProtobufKey() : null,\n supplyKey:\n this.supplyKey != null ? this.supplyKey._toProtobufKey() : null,\n feeScheduleKey:\n this.feeScheduleKey != null\n ? this.feeScheduleKey._toProtobufKey()\n : null,\n defaultFreezeStatus:\n this.defaultFreezeStatus == null\n ? 0\n : this.defaultFreezeStatus\n ? 1\n : 2,\n defaultKycStatus:\n this.defaultKycStatus == null\n ? 0\n : this.defaultKycStatus\n ? 1\n : 2,\n pauseStatus:\n this.pauseStatus == null ? 0 : this.pauseStatus ? 1 : 2,\n deleted: this.isDeleted,\n autoRenewAccount:\n this.autoRenewAccountId != null\n ? this.autoRenewAccountId._toProtobuf()\n : undefined,\n autoRenewPeriod:\n this.autoRenewPeriod != null\n ? this.autoRenewPeriod._toProtobuf()\n : null,\n expiry:\n this.expirationTime != null\n ? this.expirationTime._toProtobuf()\n : null,\n memo: this.tokenMemo,\n customFees: this.customFees.map((fee) => fee._toProtobuf()),\n tokenType: this.tokenType != null ? this.tokenType._code : null,\n supplyType: this.supplyType != null ? this.supplyType._code : null,\n maxSupply: this.maxSupply,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TokenInfo}\n */\n static fromBytes(bytes) {\n return TokenInfo._fromProtobuf(proto.TokenInfo.decode(bytes));\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.TokenInfo.encode(this._toProtobuf()).finish();\n }\n}\n","import NftId from \"./NftId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").TokenFreezeStatus} proto.TokenFreezeStatus\n * @typedef {import(\"@hashgraph/proto\").TokenKycStatus} proto.TokenKycStatus\n * @typedef {import(\"@hashgraph/proto\").TokenPauseStatus} proto.TokenPauseStatus\n * @typedef {import(\"@hashgraph/proto\").ITokenNftInfo} proto.ITokenNftInfo\n * @typedef {import(\"@hashgraph/proto\").INftID} proto.INftID\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n * @typedef {import(\"@hashgraph/proto\").IDuration} proto.IDuration\n */\n\nexport default class TokenNftInfo {\n /**\n * @private\n * @param {object} props\n * @param {NftId} props.nftId\n * @param {AccountId} props.accountId\n * @param {Timestamp} props.creationTime\n * @param {Uint8Array | null} props.metadata\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * ID of the nft instance\n *\n * @readonly\n */\n this.nftId = props.nftId;\n\n /**\n * @readonly\n */\n this.accountId = props.accountId;\n\n /**\n * @readonly\n */\n this.creationTime = props.creationTime;\n\n /**\n * @readonly\n */\n this.metadata = props.metadata;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.ITokenNftInfo} info\n * @returns {TokenNftInfo}\n */\n static _fromProtobuf(info) {\n return new TokenNftInfo({\n nftId: NftId._fromProtobuf(\n /** @type {proto.INftID} */ (info.nftID)\n ),\n accountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (info.accountID)\n ),\n creationTime: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (info.creationTime)\n ),\n metadata: info.metadata !== undefined ? info.metadata : null,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @returns {proto.ITokenNftInfo}\n */\n _toProtobuf() {\n return {\n nftID: this.nftId._toProtobuf(),\n accountID: this.accountId._toProtobuf(),\n creationTime: this.creationTime._toProtobuf(),\n metadata: this.metadata,\n ledgerId: this.ledgerId != null ? this.ledgerId.toBytes() : null,\n };\n }\n\n /**\n * @typedef {object} TokenNftInfoJson\n * @property {string} nftId\n * @property {string} accountId\n * @property {string} creationTime\n * @property {string | null} metadata\n * @property {string | null} ledgerId\n * @returns {TokenNftInfoJson}\n */\n toJson() {\n return {\n nftId: this.nftId.toString(),\n accountId: this.accountId.toString(),\n creationTime: this.creationTime.toString(),\n metadata: this.metadata != null ? hex.encode(this.metadata) : null,\n ledgerId: this.ledgerId != null ? this.ledgerId.toString() : null,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this.toJson());\n }\n}\n","import TopicId from \"./TopicId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\nimport Duration from \"../Duration.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport Key from \"../Key.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * Current state of a topic.\n */\nexport default class TopicInfo {\n /**\n * @private\n * @param {object} props\n * @param {TopicId} props.topicId\n * @param {string} props.topicMemo\n * @param {Uint8Array} props.runningHash\n * @param {Long} props.sequenceNumber\n * @param {?Timestamp} props.expirationTime\n * @param {?Key} props.adminKey\n * @param {?Key} props.submitKey\n * @param {?Duration} props.autoRenewPeriod\n * @param {?AccountId} props.autoRenewAccountId\n * @param {LedgerId|null} props.ledgerId\n */\n constructor(props) {\n /**\n * The ID of the topic for which information is requested.\n *\n * @readonly\n */\n this.topicId = props.topicId;\n\n /**\n * Short publicly visible memo about the topic. No guarantee of uniqueness.\n *\n * @readonly\n */\n this.topicMemo = props.topicMemo;\n\n /**\n * SHA-384 running hash of (previousRunningHash, topicId, consensusTimestamp, sequenceNumber, message).\n *\n * @readonly\n */\n this.runningHash = props.runningHash;\n\n /**\n * Sequence number (starting at 1 for the first submitMessage) of messages on the topic.\n *\n * @readonly\n */\n this.sequenceNumber = props.sequenceNumber;\n\n /**\n * Effective consensus timestamp at (and after) which submitMessage calls will no longer succeed on the topic.\n *\n * @readonly\n */\n this.expirationTime = props.expirationTime;\n\n /**\n * Access control for update/delete of the topic. Null if there is no key.\n *\n * @readonly\n */\n this.adminKey = props.adminKey;\n\n /**\n * Access control for ConsensusService.submitMessage. Null if there is no key.\n *\n * @readonly\n */\n this.submitKey = props.submitKey;\n\n /**\n * @readonly\n */\n this.autoRenewPeriod = props.autoRenewPeriod;\n\n /**\n * @readonly\n */\n this.autoRenewAccountId = props.autoRenewAccountId;\n\n this.ledgerId = props.ledgerId;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IConsensusGetTopicInfoResponse} infoResponse\n * @returns {TopicInfo}\n */\n static _fromProtobuf(infoResponse) {\n const info = /** @type {proto.IConsensusTopicInfo} */ (\n infoResponse.topicInfo\n );\n\n return new TopicInfo({\n topicId: TopicId._fromProtobuf(\n /** @type {proto.ITopicID} */ (infoResponse.topicID)\n ),\n topicMemo: info.memo != null ? info.memo : \"\",\n runningHash:\n info.runningHash != null ? info.runningHash : new Uint8Array(),\n sequenceNumber:\n info.sequenceNumber != null\n ? info.sequenceNumber instanceof Long\n ? info.sequenceNumber\n : Long.fromValue(info.sequenceNumber)\n : Long.ZERO,\n expirationTime:\n info.expirationTime != null\n ? Timestamp._fromProtobuf(info.expirationTime)\n : null,\n adminKey:\n info.adminKey != null\n ? Key._fromProtobufKey(info.adminKey)\n : null,\n submitKey:\n info.submitKey != null\n ? Key._fromProtobufKey(info.submitKey)\n : null,\n autoRenewPeriod:\n info.autoRenewPeriod != null\n ? new Duration(\n /** @type {Long} */ (info.autoRenewPeriod.seconds)\n )\n : null,\n autoRenewAccountId:\n info.autoRenewAccount != null\n ? AccountId._fromProtobuf(info.autoRenewAccount)\n : null,\n ledgerId:\n info.ledgerId != null\n ? LedgerId.fromBytes(info.ledgerId)\n : null,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IConsensusGetTopicInfoResponse}\n */\n _toProtobuf() {\n return {\n topicID: this.topicId._toProtobuf(),\n topicInfo: {\n memo: this.topicMemo,\n runningHash: this.runningHash,\n sequenceNumber: this.sequenceNumber,\n expirationTime:\n this.expirationTime != null\n ? this.expirationTime._toProtobuf()\n : null,\n adminKey:\n this.adminKey != null\n ? this.adminKey._toProtobufKey()\n : null,\n submitKey:\n this.submitKey != null\n ? this.submitKey._toProtobufKey()\n : null,\n autoRenewPeriod:\n this.autoRenewPeriod != null\n ? this.autoRenewPeriod._toProtobuf()\n : null,\n autoRenewAccount:\n this.autoRenewAccountId != null\n ? this.autoRenewAccountId._toProtobuf()\n : null,\n },\n };\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {TopicInfo}\n */\n static fromBytes(bytes) {\n return TopicInfo._fromProtobuf({\n topicInfo: proto.ConsensusTopicInfo.decode(bytes),\n });\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ConsensusTopicInfo.encode(\n /** @type {proto.IConsensusTopicInfo} */ (\n this._toProtobuf().topicInfo\n )\n ).finish();\n }\n}\n","import Timestamp from \"../Timestamp.js\";\nimport TopicMessageChunk from \"./TopicMessageChunk.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IConsensusTopicResponse} proto.IConsensusTopicResponse\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n */\n\nexport default class TopicMessage {\n /**\n * @private\n * @param {object} props\n * @param {Timestamp} props.consensusTimestamp\n * @param {Uint8Array} props.contents\n * @param {Uint8Array} props.runningHash\n * @param {Long} props.sequenceNumber\n * @param {TopicMessageChunk[]} props.chunks\n */\n constructor(props) {\n /** @readonly */\n this.consensusTimestamp = props.consensusTimestamp;\n /** @readonly */\n this.contents = props.contents;\n /** @readonly */\n this.runningHash = props.runningHash;\n /** @readonly */\n this.sequenceNumber = props.sequenceNumber;\n /** @readonly */\n this.chunks = props.chunks;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IConsensusTopicResponse} response\n * @returns {TopicMessage}\n */\n static _ofSingle(response) {\n return new TopicMessage({\n consensusTimestamp: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (response.consensusTimestamp)\n ),\n contents:\n response.message != null ? response.message : new Uint8Array(),\n runningHash:\n response.runningHash != null\n ? response.runningHash\n : new Uint8Array(),\n sequenceNumber:\n response.sequenceNumber != null\n ? response.sequenceNumber instanceof Long\n ? response.sequenceNumber\n : Long.fromNumber(response.sequenceNumber)\n : Long.ZERO,\n chunks: [TopicMessageChunk._fromProtobuf(response)],\n });\n }\n\n /**\n * @internal\n * @param {proto.IConsensusTopicResponse[]} responses\n * @returns {TopicMessage}\n */\n static _ofMany(responses) {\n const length = responses.length;\n\n const last = /** @type {proto.IConsensusTopicResponse} */ (\n responses[length - 1]\n );\n\n const consensusTimestamp = Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (last.consensusTimestamp)\n );\n\n const runningHash = /** @type {Uint8Array} */ (last.runningHash);\n\n /**\n * @type {Long}\n */\n const sequenceNumber =\n last.sequenceNumber != null\n ? last.sequenceNumber instanceof Long\n ? last.sequenceNumber\n : Long.fromValue(last.sequenceNumber)\n : Long.ZERO;\n\n responses.sort((a, b) =>\n (a != null\n ? a.chunkInfo != null\n ? a.chunkInfo.number != null\n ? a.chunkInfo.number\n : 0\n : 0\n : 0) <\n (b != null\n ? b.chunkInfo != null\n ? b.chunkInfo.number != null\n ? b.chunkInfo.number\n : 0\n : 0\n : 0)\n ? -1\n : 1\n );\n\n /**\n * @type {TopicMessageChunk[]}\n */\n const chunks = responses.map(\n /**\n * @type {proto.IConsensusTopicResponse}\n */ (m) => TopicMessageChunk._fromProtobuf(m)\n );\n\n const size = chunks\n .map((chunk) => chunk.contents.length)\n .reduce((sum, current) => sum + current, 0);\n\n const contents = new Uint8Array(size);\n let offset = 0;\n\n responses.forEach((value) => {\n contents.set(/** @type {Uint8Array} */ (value.message), offset);\n offset += /** @type {Uint8Array} */ (value.message).length;\n });\n\n return new TopicMessage({\n consensusTimestamp,\n contents,\n runningHash,\n sequenceNumber,\n chunks,\n });\n }\n}\n","import Timestamp from \"../Timestamp.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IConsensusTopicResponse} proto.IConsensusTopicResponse\n * @typedef {import(\"@hashgraph/proto\").ITimestamp} proto.ITimestamp\n */\n\nexport default class TopicMessageChunk {\n /**\n * @private\n * @param {object} props\n * @param {Timestamp} props.consensusTimestamp\n * @param {Uint8Array} props.contents\n * @param {Uint8Array} props.runningHash\n * @param {Long} props.sequenceNumber\n */\n constructor(props) {\n /** @readonly */\n this.consensusTimestamp = props.consensusTimestamp;\n /** @readonly */\n this.contents = props.contents;\n /** @readonly */\n this.runningHash = props.runningHash;\n /** @readonly */\n this.sequenceNumber = props.sequenceNumber;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IConsensusTopicResponse} response\n * @returns {TopicMessageChunk}\n */\n static _fromProtobuf(response) {\n return new TopicMessageChunk({\n consensusTimestamp: Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */\n (response.consensusTimestamp)\n ),\n contents:\n response.message != null ? response.message : new Uint8Array(),\n runningHash:\n response.runningHash != null\n ? response.runningHash\n : new Uint8Array(),\n sequenceNumber:\n response.sequenceNumber != null\n ? response.sequenceNumber instanceof Long\n ? response.sequenceNumber\n : Long.fromValue(response.sequenceNumber)\n : Long.ZERO,\n });\n }\n\n /**\n * @internal\n * @returns {proto.IConsensusTopicResponse}\n */\n _toProtobuf() {\n return {\n consensusTimestamp: this.consensusTimestamp._toProtobuf(),\n message: this.contents,\n runningHash: this.runningHash,\n sequenceNumber: this.sequenceNumber,\n };\n }\n}\n","import ManagedNodeAddress from \"./ManagedNodeAddress.js\";\n\n/**\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n * @typedef {import(\"./channel/Channel.js\").default} Channel\n * @typedef {import(\"./channel/MirrorChannel.js\").default} MirrorChannel\n * @typedef {import(\"./address_book/NodeAddress.js\").default} NodeAddress\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @typedef {object} NewNode\n * @property {string | ManagedNodeAddress} address\n * @property {(address: string, cert?: string) => ChannelT} channelInitFunction\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @typedef {object} CloneNode\n * @property {ManagedNode} node\n * @property {ManagedNodeAddress} address\n */\n\n/**\n * @abstract\n * @template {Channel | MirrorChannel} ChannelT\n */\nexport default class ManagedNode {\n /**\n * @param {object} props\n * @param {NewNode=} [props.newNode]\n * @param {CloneNode=} [props.cloneNode]\n */\n constructor(props = {}) {\n if (props.newNode != null) {\n this._address =\n typeof props.newNode.address === \"string\"\n ? ManagedNodeAddress.fromString(props.newNode.address)\n : props.newNode.address;\n\n /** @type {string=} */\n this._cert = undefined;\n\n /** @type {ChannelT | null} */\n this._channel = null;\n\n /** @type {(address: string, cert?: string) => ChannelT} */\n this._channelInitFunction = props.newNode.channelInitFunction;\n\n this._currentBackoff = 250;\n this._lastUsed = Date.now();\n this._backoffUntil = Date.now();\n this._useCount = 0;\n this._attempts = 0;\n this._minBackoff = 250;\n this._maxBackoff = 8000;\n } else if (props.cloneNode != null) {\n /** @type {ManagedNodeAddress} */\n this._address = props.cloneNode.address;\n\n /** @type {string=} */\n this._cert = props.cloneNode.node._cert;\n\n /** @type {ChannelT | null} */\n this._channel = props.cloneNode.node._channel;\n\n /** @type {(address: string, cert?: string) => ChannelT} */\n this._channelInitFunction =\n props.cloneNode.node._channelInitFunction;\n\n /** @type {number} */\n this._currentBackoff = props.cloneNode.node._currentBackoff;\n\n /** @type {number} */\n this._lastUsed = props.cloneNode.node._lastUsed;\n\n /** @type {number} */\n this._backoffUntil = props.cloneNode.node._backoffUntil;\n\n /** @type {number} */\n this._useCount = props.cloneNode.node._useCount;\n\n /** @type {number} */\n this._attempts = props.cloneNode.node._attempts;\n\n /** @type {number} */\n this._minBackoff = props.cloneNode.node._minBackoff;\n\n /** @type {number} */\n this._maxBackoff = props.cloneNode.node._minBackoff;\n } else {\n throw new Error(\n `failed to create ManagedNode: ${JSON.stringify(props)}`\n );\n }\n }\n\n /**\n * @abstract\n * @returns {string}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n getKey() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @returns {ManagedNode}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n toInsecure() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @returns {ManagedNode}\n */\n // eslint-disable-next-line jsdoc/require-returns-check\n toSecure() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @param {string} ledgerId\n * @returns {this}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setCert(ledgerId) {\n return this;\n }\n\n /**\n * @returns {ManagedNodeAddress}\n */\n get address() {\n return this._address;\n }\n\n /**\n * @returns {number}\n */\n get attempts() {\n return this._attempts;\n }\n\n /**\n * @returns {number}\n */\n get minBackoff() {\n return this._minBackoff;\n }\n\n /**\n * @param {number} minBackoff\n * @returns {this}\n */\n setMinBackoff(minBackoff) {\n if (this._currentBackoff <= minBackoff) {\n this._currentBackoff = minBackoff;\n }\n\n this._minBackoff = minBackoff;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get maxBackoff() {\n return this._maxBackoff;\n }\n\n /**\n * @param {number} maxBackoff\n * @returns {this}\n */\n setmaxBackoff(maxBackoff) {\n if (this._currentBackoff <= maxBackoff) {\n this._currentBackoff = maxBackoff;\n }\n\n this._maxBackoff = maxBackoff;\n return this;\n }\n\n getChannel() {\n this._useCount++;\n this.__lastUsed = Date.now();\n\n if (this._channel != null) {\n return this._channel;\n }\n\n this._channel = this._channelInitFunction(\n this.address.toString(),\n this._cert\n );\n return this._channel;\n }\n\n /**\n * Determines if this node is healthy by checking if this node hasn't been\n * in use for a the required `_currentBackoff` period. Since this looks at `this._lastUsed`\n * and that value is only set in the `wait()` method, any node that has not\n * returned a bad gRPC status will always be considered healthy.\n *\n * @returns {boolean}\n */\n isHealthy() {\n return this._backoffUntil <= Date.now();\n }\n\n increaseDelay() {\n this._currentBackoff = Math.min(\n this._currentBackoff * 2,\n this._maxBackoff\n );\n this._backoffUntil = Date.now() + this._currentBackoff;\n }\n\n decreaseDelay() {\n this._currentBackoff = Math.max(\n this._currentBackoff / 2,\n this._minBackoff\n );\n }\n\n /**\n * This is only ever called if the node itself is down.\n * A node returning a transaction with a bad status code does not indicate\n * the node is down, and hence this method will not be called.\n *\n * @returns {Promise}\n */\n wait() {\n const _currentBackoff = this._backoffUntil - this._lastUsed;\n return new Promise((resolve) => setTimeout(resolve, _currentBackoff));\n }\n\n /**\n * @param {ManagedNode<*>} node\n * @returns {number}\n */\n compare(node) {\n if (this.isHealthy() && node.isHealthy()) {\n if (this._useCount < node._useCount) {\n return -1;\n } else if (this._useCount > node._useCount) {\n return 1;\n } else {\n if (this._lastUsed < node._lastUsed) {\n return -1;\n } else if (this._lastUsed > node._lastUsed) {\n return 1;\n } else {\n return 0;\n }\n }\n } else if (this.isHealthy() && !node.isHealthy()) {\n return -1;\n } else if (!this.isHealthy() && node.isHealthy()) {\n return 1;\n } else {\n if (this._useCount < node._useCount) {\n return -1;\n } else if (this._useCount > node._useCount) {\n return 1;\n } else {\n if (this._lastUsed < node._lastUsed) {\n return -1;\n } else if (this._lastUsed > node._lastUsed) {\n return 1;\n } else {\n return 0;\n }\n }\n }\n }\n\n close() {\n if (this._channel != null) {\n this._channel.close();\n }\n\n this._channel = null;\n }\n}\n","import LedgerId from \"../LedgerId.js\";\n// import {\n// PREVIEWNET_ADDRESS_BOOK,\n// TESTNET_ADDRESS_BOOK,\n// MAINNET_ADDRESS_BOOK,\n// } from \"../address_book/AddressBooks.js\";\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../channel/MirrorChannel.js\").default} MirrorChannel\n * @typedef {import(\"../Node.js\").default} Node\n * @typedef {import(\"../MirrorNode.js\").default} MirrorNode\n * @typedef {import(\"../address_book/NodeAddressBook.js\").default} NodeAddressBook\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @typedef {import(\"../ManagedNode.js\").default} ManagedNode\n */\n\n/**\n * @template {Channel | MirrorChannel} ChannelT\n * @template {ManagedNode} NetworkNodeT\n * @template {{ toString: () => string }} KeyT\n */\nexport default class MangedNetwork {\n /**\n * @param {(address: string) => ChannelT} createNetworkChannel\n */\n constructor(createNetworkChannel) {\n /**\n * Map of node account ID (as a string)\n * to the node URL.\n *\n * @internal\n * @type {Map}\n */\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n this._network = new Map();\n\n /**\n * List of node account IDs.\n *\n * @protected\n * @type {NetworkNodeT[]}\n */\n this._nodes = [];\n\n /** @type {(address: string, cert?: string) => ChannelT} */\n this._createNetworkChannel = createNetworkChannel;\n\n /** @type {LedgerId | null} */\n this._ledgerId = null;\n\n /** @type {number} */\n this._minBackoff = 250;\n\n /** @type {number} */\n this._maxNodeAttempts = -1;\n\n this._transportSecurity = false;\n }\n\n /**\n * @returns {boolean}\n */\n isTransportSecurity() {\n return this._transportSecurity;\n }\n\n /**\n * @param {boolean} transportSecurity\n * @returns {this}\n */\n setTransportSecurity(transportSecurity) {\n if (this._transportSecurity != transportSecurity) {\n this._network.clear();\n\n for (let i = 0; i < this._nodes.length; i++) {\n let node = this._nodes[i];\n node.close();\n\n node = /** @type {NetworkNodeT} */ (\n transportSecurity\n ? node\n .toSecure()\n .setCert(\n this._ledgerId != null\n ? this._ledgerId._toStringForChecksum()\n : \"\"\n )\n : node.toInsecure()\n );\n this._nodes[i] = node;\n\n const nodes =\n this._network.get(node.getKey()) != null\n ? /** @type {NetworkNodeT[]} */ (\n this._network.get(node.getKey())\n )\n : [];\n nodes.push(node);\n this._network.set(node.getKey(), nodes);\n }\n }\n\n this._transportSecurity = transportSecurity;\n return this;\n }\n\n /**\n * @deprecated\n * @param {string} networkName\n * @returns {this}\n */\n setNetworkName(networkName) {\n console.warn(\"Deprecated: Use `setLedgerId` instead\");\n return this.setLedgerId(networkName);\n }\n\n /**\n * @deprecated\n * @returns {string | null}\n */\n get networkName() {\n console.warn(\"Deprecated: Use `ledgerId` instead\");\n return this.ledgerId != null ? this.ledgerId.toString() : null;\n }\n\n /**\n * @param {string|LedgerId} ledgerId\n * @returns {this}\n */\n setLedgerId(ledgerId) {\n this._ledgerId =\n typeof ledgerId === \"string\"\n ? LedgerId.fromString(ledgerId)\n : ledgerId;\n return this;\n }\n\n /**\n * @returns {LedgerId | null}\n */\n get ledgerId() {\n return this._ledgerId != null ? this._ledgerId : null;\n }\n\n /**\n * @abstract\n * @param {[string, KeyT]} entry\n * @returns {NetworkNodeT}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _createNodeFromNetworkEntry(entry) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @param {Map} network\n * @returns {number[]}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _getNodesToRemove(network) {\n throw new Error(\"not implemented\");\n }\n\n _removeDeadNodes() {\n if (this._maxNodeAttempts > 0) {\n for (let i = this._nodes.length - 1; i >= 0; i--) {\n const node = this._nodes[i];\n\n if (node._attempts < this._maxNodeAttempts) {\n continue;\n }\n\n this._closeNode(i);\n }\n }\n }\n\n /**\n * @param {number} count\n * @returns {NetworkNodeT[]}\n */\n _getNumberOfMostHealthyNodes(count) {\n this._removeDeadNodes();\n this._nodes.sort((a, b) => a.compare(b));\n\n for (const [, value] of this._network) {\n // eslint-disable-next-line ie11/no-loop-func\n value.sort((a, b) => a.compare(b));\n }\n\n /** @type {NetworkNodeT[]} */\n const nodes = [];\n const keys = new Set();\n\n for (const node of this._nodes) {\n if (keys.size >= count) {\n break;\n }\n\n if (!keys.has(node.getKey())) {\n nodes.push(node);\n }\n }\n\n return nodes;\n }\n\n /**\n * @param {number} i\n */\n _closeNode(i) {\n const node = this._nodes[i];\n\n node.close();\n this._removeNodeFromNetwork(node);\n this._nodes.splice(i, 1);\n }\n\n /**\n * @param {NetworkNodeT} node\n */\n _removeNodeFromNetwork(node) {\n const network = /** @type {NetworkNodeT[]} */ (\n this._network.get(node.getKey())\n );\n\n for (let j = 0; j < network.length; j++) {\n if (network[j] === node) {\n network.splice(j, 1);\n break;\n }\n }\n\n if (network.length === 0) {\n this._network.delete(node.getKey());\n }\n }\n\n /**\n * @param {Map} network\n * @returns {this}\n */\n _setNetwork(network) {\n // Remove nodes that are not in the new network\n for (const i of this._getNodesToRemove(network)) {\n this._closeNode(i);\n }\n\n // Add new nodes\n for (const [key, value] of network) {\n const node = this._createNodeFromNetworkEntry([key, value]);\n\n this._nodes.push(node);\n\n const network = this._network.has(node.getKey())\n ? /** @type {NetworkNodeT[]} */ (\n this._network.get(node.getKey())\n )\n : [];\n network.push(node);\n this._network.set(node.getKey(), network);\n }\n\n shuffle(this._nodes);\n for (const [, value] of this._network) {\n shuffle(value);\n }\n\n this._ledgerId = null;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get maxNodeAttempts() {\n return this._maxNodeAttempts;\n }\n\n /**\n * @param {number} maxNodeAttempts\n * @returns {this}\n */\n setMaxNodeAttempts(maxNodeAttempts) {\n this._maxNodeAttempts = maxNodeAttempts;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get minBackoff() {\n return this._minBackoff;\n }\n\n /**\n * @param {number} minBackoff\n * @returns {this}\n */\n setMinBackoff(minBackoff) {\n this._minBackoff = minBackoff;\n for (const node of this._nodes) {\n node.setMinBackoff(minBackoff);\n }\n return this;\n }\n\n /**\n * @param {KeyT} key\n * @returns {NetworkNodeT}\n */\n getNode(key) {\n return /** @type {NetworkNodeT[]} */ (\n this._network.get(key.toString())\n )[0];\n }\n\n close() {\n for (const node of this._nodes) {\n node.close();\n }\n\n this._network.clear();\n this._nodes = [];\n }\n}\n\n/**\n * https://stackoverflow.com/questions/2450954/how-to-randomize-shuffle-a-javascript-array\n *\n * @template T\n * @param {Array} array\n */\nfunction shuffle(array) {\n var currentIndex = array.length,\n temporaryValue,\n randomIndex;\n\n // While there remain elements to shuffle...\n while (0 !== currentIndex) {\n // Pick a remaining element...\n randomIndex = Math.floor(Math.random() * currentIndex);\n currentIndex -= 1;\n\n // And swap it with the current element.\n temporaryValue = array[currentIndex];\n array[currentIndex] = array[randomIndex];\n array[randomIndex] = temporaryValue;\n }\n}\n","\"use strict\";\n// See: https://github.com/ethereum/wiki/wiki/Ethereum-Contract-ABI\nimport { arrayify } from \"@ethersproject/bytes\";\nimport { defineReadOnly } from \"@ethersproject/properties\";\nimport { Logger } from \"@ethersproject/logger\";\nimport { version } from \"./_version\";\nconst logger = new Logger(version);\nimport { Reader, Writer } from \"./coders/abstract-coder\";\nimport { AddressCoder } from \"./coders/address\";\nimport { ArrayCoder } from \"./coders/array\";\nimport { BooleanCoder } from \"./coders/boolean\";\nimport { BytesCoder } from \"./coders/bytes\";\nimport { FixedBytesCoder } from \"./coders/fixed-bytes\";\nimport { NullCoder } from \"./coders/null\";\nimport { NumberCoder } from \"./coders/number\";\nimport { StringCoder } from \"./coders/string\";\nimport { TupleCoder } from \"./coders/tuple\";\nimport { ParamType } from \"./fragments\";\nconst paramTypeBytes = new RegExp(/^bytes([0-9]*)$/);\nconst paramTypeNumber = new RegExp(/^(u?int)([0-9]*)$/);\nexport class AbiCoder {\n constructor(coerceFunc) {\n logger.checkNew(new.target, AbiCoder);\n defineReadOnly(this, \"coerceFunc\", coerceFunc || null);\n }\n _getCoder(param) {\n switch (param.baseType) {\n case \"address\":\n return new AddressCoder(param.name);\n case \"bool\":\n return new BooleanCoder(param.name);\n case \"string\":\n return new StringCoder(param.name);\n case \"bytes\":\n return new BytesCoder(param.name);\n case \"array\":\n return new ArrayCoder(this._getCoder(param.arrayChildren), param.arrayLength, param.name);\n case \"tuple\":\n return new TupleCoder((param.components || []).map((component) => {\n return this._getCoder(component);\n }), param.name);\n case \"\":\n return new NullCoder(param.name);\n }\n // u?int[0-9]*\n let match = param.type.match(paramTypeNumber);\n if (match) {\n let size = parseInt(match[2] || \"256\");\n if (size === 0 || size > 256 || (size % 8) !== 0) {\n logger.throwArgumentError(\"invalid \" + match[1] + \" bit length\", \"param\", param);\n }\n return new NumberCoder(size / 8, (match[1] === \"int\"), param.name);\n }\n // bytes[0-9]+\n match = param.type.match(paramTypeBytes);\n if (match) {\n let size = parseInt(match[1]);\n if (size === 0 || size > 32) {\n logger.throwArgumentError(\"invalid bytes length\", \"param\", param);\n }\n return new FixedBytesCoder(size, param.name);\n }\n return logger.throwArgumentError(\"invalid type\", \"type\", param.type);\n }\n _getWordSize() { return 32; }\n _getReader(data, allowLoose) {\n return new Reader(data, this._getWordSize(), this.coerceFunc, allowLoose);\n }\n _getWriter() {\n return new Writer(this._getWordSize());\n }\n encode(types, values) {\n if (types.length !== values.length) {\n logger.throwError(\"types/values length mismatch\", Logger.errors.INVALID_ARGUMENT, {\n count: { types: types.length, values: values.length },\n value: { types: types, values: values }\n });\n }\n const coders = types.map((type) => this._getCoder(ParamType.from(type)));\n const coder = (new TupleCoder(coders, \"_\"));\n const writer = this._getWriter();\n coder.encode(writer, values);\n return writer.data;\n }\n decode(types, data, loose) {\n const coders = types.map((type) => this._getCoder(ParamType.from(type)));\n const coder = new TupleCoder(coders, \"_\");\n return coder.decode(this._getReader(arrayify(data), loose));\n }\n}\nexport const defaultAbiCoder = new AbiCoder();\n//# sourceMappingURL=abi-coder.js.map","\"use strict\";\nimport { Logger } from \"@ethersproject/logger\";\nimport { version } from \"../_version\";\nconst logger = new Logger(version);\nimport { Coder, Writer } from \"./abstract-coder\";\nimport { AnonymousCoder } from \"./anonymous\";\nexport function pack(writer, coders, values) {\n let arrayValues = null;\n if (Array.isArray(values)) {\n arrayValues = values;\n }\n else if (values && typeof (values) === \"object\") {\n let unique = {};\n arrayValues = coders.map((coder) => {\n const name = coder.localName;\n if (!name) {\n logger.throwError(\"cannot encode object for signature with missing names\", Logger.errors.INVALID_ARGUMENT, {\n argument: \"values\",\n coder: coder,\n value: values\n });\n }\n if (unique[name]) {\n logger.throwError(\"cannot encode object for signature with duplicate names\", Logger.errors.INVALID_ARGUMENT, {\n argument: \"values\",\n coder: coder,\n value: values\n });\n }\n unique[name] = true;\n return values[name];\n });\n }\n else {\n logger.throwArgumentError(\"invalid tuple value\", \"tuple\", values);\n }\n if (coders.length !== arrayValues.length) {\n logger.throwArgumentError(\"types/value length mismatch\", \"tuple\", values);\n }\n let staticWriter = new Writer(writer.wordSize);\n let dynamicWriter = new Writer(writer.wordSize);\n let updateFuncs = [];\n coders.forEach((coder, index) => {\n let value = arrayValues[index];\n if (coder.dynamic) {\n // Get current dynamic offset (for the future pointer)\n let dynamicOffset = dynamicWriter.length;\n // Encode the dynamic value into the dynamicWriter\n coder.encode(dynamicWriter, value);\n // Prepare to populate the correct offset once we are done\n let updateFunc = staticWriter.writeUpdatableValue();\n updateFuncs.push((baseOffset) => {\n updateFunc(baseOffset + dynamicOffset);\n });\n }\n else {\n coder.encode(staticWriter, value);\n }\n });\n // Backfill all the dynamic offsets, now that we know the static length\n updateFuncs.forEach((func) => { func(staticWriter.length); });\n let length = writer.appendWriter(staticWriter);\n length += writer.appendWriter(dynamicWriter);\n return length;\n}\nexport function unpack(reader, coders) {\n let values = [];\n // A reader anchored to this base\n let baseReader = reader.subReader(0);\n coders.forEach((coder) => {\n let value = null;\n if (coder.dynamic) {\n let offset = reader.readValue();\n let offsetReader = baseReader.subReader(offset.toNumber());\n try {\n value = coder.decode(offsetReader);\n }\n catch (error) {\n // Cannot recover from this\n if (error.code === Logger.errors.BUFFER_OVERRUN) {\n throw error;\n }\n value = error;\n value.baseType = coder.name;\n value.name = coder.localName;\n value.type = coder.type;\n }\n }\n else {\n try {\n value = coder.decode(reader);\n }\n catch (error) {\n // Cannot recover from this\n if (error.code === Logger.errors.BUFFER_OVERRUN) {\n throw error;\n }\n value = error;\n value.baseType = coder.name;\n value.name = coder.localName;\n value.type = coder.type;\n }\n }\n if (value != undefined) {\n values.push(value);\n }\n });\n // We only output named properties for uniquely named coders\n const uniqueNames = coders.reduce((accum, coder) => {\n const name = coder.localName;\n if (name) {\n if (!accum[name]) {\n accum[name] = 0;\n }\n accum[name]++;\n }\n return accum;\n }, {});\n // Add any named parameters (i.e. tuples)\n coders.forEach((coder, index) => {\n let name = coder.localName;\n if (!name || uniqueNames[name] !== 1) {\n return;\n }\n if (name === \"length\") {\n name = \"_length\";\n }\n if (values[name] != null) {\n return;\n }\n const value = values[index];\n if (value instanceof Error) {\n Object.defineProperty(values, name, {\n get: () => { throw value; }\n });\n }\n else {\n values[name] = value;\n }\n });\n for (let i = 0; i < values.length; i++) {\n const value = values[i];\n if (value instanceof Error) {\n Object.defineProperty(values, i, {\n get: () => { throw value; }\n });\n }\n }\n return Object.freeze(values);\n}\nexport class ArrayCoder extends Coder {\n constructor(coder, length, localName) {\n const type = (coder.type + \"[\" + (length >= 0 ? length : \"\") + \"]\");\n const dynamic = (length === -1 || coder.dynamic);\n super(\"array\", type, localName, dynamic);\n this.coder = coder;\n this.length = length;\n }\n encode(writer, value) {\n if (!Array.isArray(value)) {\n this._throwError(\"expected array value\", value);\n }\n let count = this.length;\n if (count === -1) {\n count = value.length;\n writer.writeValue(value.length);\n }\n logger.checkArgumentCount(value.length, count, \"coder array\" + (this.localName ? (\" \" + this.localName) : \"\"));\n let coders = [];\n for (let i = 0; i < value.length; i++) {\n coders.push(this.coder);\n }\n return pack(writer, coders, value);\n }\n decode(reader) {\n let count = this.length;\n if (count === -1) {\n count = reader.readValue().toNumber();\n }\n let coders = [];\n for (let i = 0; i < count; i++) {\n coders.push(new AnonymousCoder(this.coder));\n }\n return reader.coerce(this.name, unpack(reader, coders));\n }\n}\n//# sourceMappingURL=array.js.map","\"use strict\";\nimport { arrayify, hexlify } from \"@ethersproject/bytes\";\nimport { Coder } from \"./abstract-coder\";\nexport class DynamicBytesCoder extends Coder {\n constructor(type, localName) {\n super(type, type, localName, true);\n }\n encode(writer, value) {\n value = arrayify(value);\n let length = writer.writeValue(value.length);\n length += writer.writeBytes(value);\n return length;\n }\n decode(reader) {\n return reader.readBytes(reader.readValue().toNumber(), true);\n }\n}\nexport class BytesCoder extends DynamicBytesCoder {\n constructor(localName) {\n super(\"bytes\", localName);\n }\n decode(reader) {\n return reader.coerce(this.name, hexlify(super.decode(reader)));\n }\n}\n//# sourceMappingURL=bytes.js.map","import { keccak256 } from \"@ethersproject/keccak256\";\nimport { toUtf8Bytes } from \"@ethersproject/strings\";\nexport function id(text) {\n return keccak256(toUtf8Bytes(text));\n}\n//# sourceMappingURL=id.js.map","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file index.js\r\n * @authors:\r\n * Fabian Vogelsteller \r\n * Gav Wood \r\n * Jeffrey Wilcke \r\n * Marek Kotewicz \r\n * Marian Oancea \r\n * @date 2017\r\n */\r\n\"use strict\";\r\nimport Eth from '@arianelabs/hweb3-eth';\r\nimport { packageInit, addProviders } from '@arianelabs/hweb3-core';\r\nimport Personal from '@arianelabs/hweb3-eth-personal';\r\nvar version = require('../package.json').version;\r\n// var Net = require('@arianelabs/hweb3-net');\r\n// var Shh = require('@arianelabs/hweb3-shh');\r\n// var utils = require('@arianelabs/hweb3-utils');\r\nvar Web3 = function Web3() {\r\n var _this = this;\r\n // sets _requestmanager etc\r\n packageInit(this, arguments);\r\n this.version = version;\r\n // this.utils = utils;\r\n this.eth = new Eth(this);\r\n // this.shh = new Shh(this);\r\n // overwrite package setProvider\r\n var setProvider = this.setProvider;\r\n this.setProvider = function (provider, net) {\r\n /*jshint unused: false */\r\n setProvider.apply(_this, arguments);\r\n _this.eth.setRequestManager(_this._requestManager);\r\n _this.shh.setRequestManager(_this._requestManager);\r\n _this.bzz.setProvider(provider);\r\n return true;\r\n };\r\n};\r\nWeb3.version = version;\r\n// Web3.utils = utils;\r\nWeb3.modules = {\r\n Eth: Eth,\r\n // Net: Net,\r\n Personal: Personal,\r\n};\r\naddProviders(Web3);\r\nexport default Web3;\r\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n */\r\n/**\r\n * @file index.js\r\n * @author Fabian Vogelsteller \r\n * @date 2017\r\n */\r\n\"use strict\";\r\nimport { packageInit, addProviders } from '@arianelabs/hweb3-core';\r\nvar helpers = require('@arianelabs/hweb3-core-helpers');\r\nvar Subscriptions = require('@arianelabs/hweb3-core-subscriptions').subscriptions;\r\nvar Method = require('@arianelabs/hweb3-core-method');\r\nvar utils = require('@arianelabs/hweb3-utils');\r\nvar Net = require('@arianelabs/hweb3-net');\r\nimport Personal from '@arianelabs/hweb3-eth-personal';\r\nimport Accounts from '@arianelabs/hweb3-eth-accounts';\r\nvar BaseContract = require('@arianelabs/hweb3-hed-contract');\r\n// var ENS = require('@arianelabs/hweb3-eth-ens');\r\n// var Iban = require('@arianelabs/hweb3-eth-iban');\r\n// var abi = require('@arianelabs/hweb3-eth-abi');\r\nvar getNetworkType = require('./getNetworkType.js');\r\nvar formatter = helpers.formatters;\r\nvar blockCall = function (args) {\r\n return (typeof args[0] === 'string' && args[0].indexOf('0x') === 0) ? \"eth_getBlockByHash\" : \"eth_getBlockByNumber\";\r\n};\r\nvar transactionFromBlockCall = function (args) {\r\n return (typeof args[0] === 'string' && args[0].indexOf('0x') === 0) ? 'eth_getTransactionByBlockHashAndIndex' : 'eth_getTransactionByBlockNumberAndIndex';\r\n};\r\nvar uncleCall = function (args) {\r\n return (typeof args[0] === 'string' && args[0].indexOf('0x') === 0) ? 'eth_getUncleByBlockHashAndIndex' : 'eth_getUncleByBlockNumberAndIndex';\r\n};\r\nvar getBlockTransactionCountCall = function (args) {\r\n return (typeof args[0] === 'string' && args[0].indexOf('0x') === 0) ? 'eth_getBlockTransactionCountByHash' : 'eth_getBlockTransactionCountByNumber';\r\n};\r\nvar uncleCountCall = function (args) {\r\n return (typeof args[0] === 'string' && args[0].indexOf('0x') === 0) ? 'eth_getUncleCountByBlockHash' : 'eth_getUncleCountByBlockNumber';\r\n};\r\nvar Eth = function Eth() {\r\n var _this = this;\r\n // sets _requestmanager\r\n packageInit(this, arguments);\r\n // overwrite package setRequestManager\r\n var setRequestManager = this.setRequestManager;\r\n this.setRequestManager = function (manager) {\r\n setRequestManager(manager);\r\n _this.net.setRequestManager(manager);\r\n _this.personal.setRequestManager(manager);\r\n _this.accounts.setRequestManager(manager);\r\n _this.Contract._requestManager = _this._requestManager;\r\n _this.Contract.currentProvider = _this._provider;\r\n return true;\r\n };\r\n // overwrite setProvider\r\n var setProvider = this.setProvider;\r\n this.setProvider = function () {\r\n setProvider.apply(_this, arguments);\r\n _this.setRequestManager(_this._requestManager);\r\n // Set detectedAddress/lastSyncCheck back to null because the provider could be connected to a different chain now\r\n _this.ens._detectedAddress = null;\r\n _this.ens._lastSyncCheck = null;\r\n };\r\n var handleRevert = false;\r\n var defaultAccount = null;\r\n var defaultBlock = 'latest';\r\n var transactionBlockTimeout = 50;\r\n var transactionConfirmationBlocks = 24;\r\n var transactionPollingTimeout = 750;\r\n var transactionPollingInterval = 1000;\r\n var blockHeaderTimeout = 10; // 10 seconds\r\n var maxListenersWarningThreshold = 100;\r\n var defaultChain, defaultHardfork, defaultCommon;\r\n Object.defineProperty(this, 'handleRevert', {\r\n get: function () {\r\n return handleRevert;\r\n },\r\n set: function (val) {\r\n handleRevert = val;\r\n // also set on the Contract object\r\n _this.Contract.handleRevert = handleRevert;\r\n // update handleRevert\r\n methods.forEach(function (method) {\r\n method.handleRevert = handleRevert;\r\n });\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'defaultCommon', {\r\n get: function () {\r\n return defaultCommon;\r\n },\r\n set: function (val) {\r\n defaultCommon = val;\r\n // also set on the Contract object\r\n _this.Contract.defaultCommon = defaultCommon;\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.defaultCommon = defaultCommon;\r\n });\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'defaultHardfork', {\r\n get: function () {\r\n return defaultHardfork;\r\n },\r\n set: function (val) {\r\n defaultHardfork = val;\r\n // also set on the Contract object\r\n _this.Contract.defaultHardfork = defaultHardfork;\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.defaultHardfork = defaultHardfork;\r\n });\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'defaultChain', {\r\n get: function () {\r\n return defaultChain;\r\n },\r\n set: function (val) {\r\n defaultChain = val;\r\n // also set on the Contract object\r\n _this.Contract.defaultChain = defaultChain;\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.defaultChain = defaultChain;\r\n });\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'transactionPollingTimeout', {\r\n get: function () {\r\n return transactionPollingTimeout;\r\n },\r\n set: function (val) {\r\n transactionPollingTimeout = val;\r\n // also set on the Contract object\r\n _this.Contract.transactionPollingTimeout = transactionPollingTimeout;\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.transactionPollingTimeout = transactionPollingTimeout;\r\n });\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'transactionPollingInterval', {\r\n get: function () {\r\n return transactionPollingInterval;\r\n },\r\n set: function (val) {\r\n transactionPollingInterval = val;\r\n // also set on the Contract object\r\n _this.Contract.transactionPollingInterval = transactionPollingInterval;\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.transactionPollingInterval = transactionPollingInterval;\r\n });\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'transactionConfirmationBlocks', {\r\n get: function () {\r\n return transactionConfirmationBlocks;\r\n },\r\n set: function (val) {\r\n transactionConfirmationBlocks = val;\r\n // also set on the Contract object\r\n _this.Contract.transactionConfirmationBlocks = transactionConfirmationBlocks;\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.transactionConfirmationBlocks = transactionConfirmationBlocks;\r\n });\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'transactionBlockTimeout', {\r\n get: function () {\r\n return transactionBlockTimeout;\r\n },\r\n set: function (val) {\r\n transactionBlockTimeout = val;\r\n // also set on the Contract object\r\n _this.Contract.transactionBlockTimeout = transactionBlockTimeout;\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.transactionBlockTimeout = transactionBlockTimeout;\r\n });\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'blockHeaderTimeout', {\r\n get: function () {\r\n return blockHeaderTimeout;\r\n },\r\n set: function (val) {\r\n blockHeaderTimeout = val;\r\n // also set on the Contract object\r\n _this.Contract.blockHeaderTimeout = blockHeaderTimeout;\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.blockHeaderTimeout = blockHeaderTimeout;\r\n });\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'defaultAccount', {\r\n get: function () {\r\n return defaultAccount;\r\n },\r\n set: function (val) {\r\n if (val) {\r\n defaultAccount = utils.toChecksumAddress(formatter.inputAddressFormatter(val));\r\n }\r\n // also set on the Contract object\r\n _this.Contract.defaultAccount = defaultAccount;\r\n _this.personal.defaultAccount = defaultAccount;\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.defaultAccount = defaultAccount;\r\n });\r\n return val;\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'defaultBlock', {\r\n get: function () {\r\n return defaultBlock;\r\n },\r\n set: function (val) {\r\n defaultBlock = val;\r\n // also set on the Contract object\r\n _this.Contract.defaultBlock = defaultBlock;\r\n _this.personal.defaultBlock = defaultBlock;\r\n // update defaultBlock\r\n methods.forEach(function (method) {\r\n method.defaultBlock = defaultBlock;\r\n });\r\n return val;\r\n },\r\n enumerable: true\r\n });\r\n Object.defineProperty(this, 'maxListenersWarningThreshold', {\r\n get: function () {\r\n return maxListenersWarningThreshold;\r\n },\r\n set: function (val) {\r\n if (_this.currentProvider && _this.currentProvider.setMaxListeners) {\r\n maxListenersWarningThreshold = val;\r\n _this.currentProvider.setMaxListeners(val);\r\n }\r\n },\r\n enumerable: true\r\n });\r\n this.clearSubscriptions = _this._requestManager.clearSubscriptions.bind(_this._requestManager);\r\n this.removeSubscriptionById = _this._requestManager.removeSubscription.bind(_this._requestManager);\r\n // add net\r\n this.net = new Net(this);\r\n // add chain detection\r\n this.net.getNetworkType = getNetworkType.bind(this);\r\n // add accounts\r\n this.accounts = new Accounts(this);\r\n // add personal\r\n this.personal = new Personal(this);\r\n this.personal.defaultAccount = this.defaultAccount;\r\n // set warnings threshold\r\n this.maxListenersWarningThreshold = maxListenersWarningThreshold;\r\n // create a proxy Contract type for this instance, as a Contract's provider\r\n // is stored as a class member rather than an instance variable. If we do\r\n // not create this proxy type, changing the provider in one instance of\r\n // web3-eth would subsequently change the provider for _all_ contract\r\n // instances!\r\n var self = this;\r\n var Contract = function Contract() {\r\n BaseContract.apply(this, arguments);\r\n // when Eth.setProvider is called, call packageInit\r\n // on all contract instances instantiated via this Eth\r\n // instances. This will update the currentProvider for\r\n // the contract instances\r\n var _this = this;\r\n var setProvider = self.setProvider;\r\n self.setProvider = function () {\r\n setProvider.apply(self, arguments);\r\n packageInit(_this, [self]);\r\n };\r\n };\r\n Contract.setProvider = function () {\r\n BaseContract.setProvider.apply(this, arguments);\r\n };\r\n // make our proxy Contract inherit from web3-eth-contract so that it has all\r\n // the right functionality and so that instanceof and friends work properly\r\n Contract.prototype = Object.create(BaseContract.prototype);\r\n Contract.prototype.constructor = Contract;\r\n // add contract\r\n this.Contract = Contract;\r\n this.Contract.defaultAccount = this.defaultAccount;\r\n this.Contract.defaultBlock = this.defaultBlock;\r\n this.Contract.transactionBlockTimeout = this.transactionBlockTimeout;\r\n this.Contract.transactionConfirmationBlocks = this.transactionConfirmationBlocks;\r\n this.Contract.transactionPollingTimeout = this.transactionPollingTimeout;\r\n this.Contract.transactionPollingInterval = this.transactionPollingInterval;\r\n this.Contract.blockHeaderTimeout = this.blockHeaderTimeout;\r\n this.Contract.handleRevert = this.handleRevert;\r\n this.Contract._requestManager = this._requestManager;\r\n this.Contract._ethAccounts = this.accounts;\r\n this.Contract.currentProvider = this._requestManager.provider;\r\n // add IBAN\r\n // this.Iban = Iban;\r\n //\r\n // // add ABI\r\n // this.abi = abi;\r\n //\r\n // // add ENS\r\n // this.ens = new ENS(this);\r\n // var methods = [\r\n // new Method({\r\n // name: 'getNodeInfo',\r\n // call: 'web3_clientVersion'\r\n // }),\r\n // new Method({\r\n // name: 'getProtocolVersion',\r\n // call: 'eth_protocolVersion',\r\n // params: 0\r\n // }),\r\n // new Method({\r\n // name: 'getCoinbase',\r\n // call: 'eth_coinbase',\r\n // params: 0\r\n // }),\r\n // new Method({\r\n // name: 'isMining',\r\n // call: 'eth_mining',\r\n // params: 0\r\n // }),\r\n // new Method({\r\n // name: 'getHashrate',\r\n // call: 'eth_hashrate',\r\n // params: 0,\r\n // outputFormatter: utils.hexToNumber\r\n // }),\r\n // new Method({\r\n // name: 'isSyncing',\r\n // call: 'eth_syncing',\r\n // params: 0,\r\n // outputFormatter: formatter.outputSyncingFormatter\r\n // }),\r\n // new Method({\r\n // name: 'getGasPrice',\r\n // call: 'eth_gasPrice',\r\n // params: 0,\r\n // outputFormatter: formatter.outputBigNumberFormatter\r\n // }),\r\n // new Method({\r\n // name: 'getFeeHistory',\r\n // call: 'eth_feeHistory',\r\n // params: 3,\r\n // inputFormatter: [utils.numberToHex, formatter.inputBlockNumberFormatter, null]\r\n // }),\r\n // new Method({\r\n // name: 'getAccounts',\r\n // call: 'eth_accounts',\r\n // params: 0,\r\n // outputFormatter: utils.toChecksumAddress\r\n // }),\r\n // new Method({\r\n // name: 'getBlockNumber',\r\n // call: 'eth_blockNumber',\r\n // params: 0,\r\n // outputFormatter: utils.hexToNumber\r\n // }),\r\n // new Method({\r\n // name: 'getBalance',\r\n // call: 'eth_getBalance',\r\n // params: 2,\r\n // inputFormatter: [formatter.inputAddressFormatter, formatter.inputDefaultBlockNumberFormatter],\r\n // outputFormatter: formatter.outputBigNumberFormatter\r\n // }),\r\n // new Method({\r\n // name: 'getStorageAt',\r\n // call: 'eth_getStorageAt',\r\n // params: 3,\r\n // inputFormatter: [formatter.inputAddressFormatter, utils.numberToHex, formatter.inputDefaultBlockNumberFormatter]\r\n // }),\r\n // new Method({\r\n // name: 'getCode',\r\n // call: 'eth_getCode',\r\n // params: 2,\r\n // inputFormatter: [formatter.inputAddressFormatter, formatter.inputDefaultBlockNumberFormatter]\r\n // }),\r\n // new Method({\r\n // name: 'getBlock',\r\n // call: blockCall,\r\n // params: 2,\r\n // inputFormatter: [formatter.inputBlockNumberFormatter, function (val) { return !!val; }],\r\n // outputFormatter: formatter.outputBlockFormatter\r\n // }),\r\n // new Method({\r\n // name: 'getUncle',\r\n // call: uncleCall,\r\n // params: 2,\r\n // inputFormatter: [formatter.inputBlockNumberFormatter, utils.numberToHex],\r\n // outputFormatter: formatter.outputBlockFormatter,\r\n //\r\n // }),\r\n // new Method({\r\n // name: 'getBlockTransactionCount',\r\n // call: getBlockTransactionCountCall,\r\n // params: 1,\r\n // inputFormatter: [formatter.inputBlockNumberFormatter],\r\n // outputFormatter: utils.hexToNumber\r\n // }),\r\n // new Method({\r\n // name: 'getBlockUncleCount',\r\n // call: uncleCountCall,\r\n // params: 1,\r\n // inputFormatter: [formatter.inputBlockNumberFormatter],\r\n // outputFormatter: utils.hexToNumber\r\n // }),\r\n // new Method({\r\n // name: 'getTransaction',\r\n // call: 'eth_getTransactionByHash',\r\n // params: 1,\r\n // inputFormatter: [null],\r\n // outputFormatter: formatter.outputTransactionFormatter\r\n // }),\r\n // new Method({\r\n // name: 'getTransactionFromBlock',\r\n // call: transactionFromBlockCall,\r\n // params: 2,\r\n // inputFormatter: [formatter.inputBlockNumberFormatter, utils.numberToHex],\r\n // outputFormatter: formatter.outputTransactionFormatter\r\n // }),\r\n // new Method({\r\n // name: 'getTransactionReceipt',\r\n // call: 'eth_getTransactionReceipt',\r\n // params: 1,\r\n // inputFormatter: [null],\r\n // outputFormatter: formatter.outputTransactionReceiptFormatter\r\n // }),\r\n // new Method({\r\n // name: 'getTransactionCount',\r\n // call: 'eth_getTransactionCount',\r\n // params: 2,\r\n // inputFormatter: [formatter.inputAddressFormatter, formatter.inputDefaultBlockNumberFormatter],\r\n // outputFormatter: utils.hexToNumber\r\n // }),\r\n // // new Method({\r\n // // name: 'sendSignedTransaction',\r\n // // call: 'eth_sendRawTransaction',\r\n // // params: 1,\r\n // // inputFormatter: [null],\r\n // // abiCoder: abi\r\n // // }),\r\n // new Method({\r\n // name: 'signTransaction',\r\n // call: 'eth_signTransaction',\r\n // params: 1,\r\n // inputFormatter: [formatter.inputTransactionFormatter]\r\n // }),\r\n // // new Method({\r\n // // name: 'sendTransaction',\r\n // // call: 'eth_sendTransaction',\r\n // // params: 1,\r\n // // inputFormatter: [formatter.inputTransactionFormatter],\r\n // // abiCoder: abi\r\n // // }),\r\n // new Method({\r\n // name: 'sign',\r\n // call: 'eth_sign',\r\n // params: 2,\r\n // inputFormatter: [formatter.inputSignFormatter, formatter.inputAddressFormatter],\r\n // transformPayload: function (payload) {\r\n // payload.params.reverse();\r\n // return payload;\r\n // }\r\n // }),\r\n // // new Method({\r\n // // name: 'call',\r\n // // call: 'eth_call',\r\n // // params: 2,\r\n // // inputFormatter: [formatter.inputCallFormatter, formatter.inputDefaultBlockNumberFormatter],\r\n // // abiCoder: abi\r\n // // }),\r\n // new Method({\r\n // name: 'estimateGas',\r\n // call: 'eth_estimateGas',\r\n // params: 1,\r\n // inputFormatter: [formatter.inputCallFormatter],\r\n // outputFormatter: utils.hexToNumber\r\n // }),\r\n // new Method({\r\n // name: 'submitWork',\r\n // call: 'eth_submitWork',\r\n // params: 3\r\n // }),\r\n // new Method({\r\n // name: 'getWork',\r\n // call: 'eth_getWork',\r\n // params: 0\r\n // }),\r\n // new Method({\r\n // name: 'getPastLogs',\r\n // call: 'eth_getLogs',\r\n // params: 1,\r\n // inputFormatter: [formatter.inputLogFormatter],\r\n // outputFormatter: formatter.outputLogFormatter\r\n // }),\r\n // new Method({\r\n // name: 'getChainId',\r\n // call: 'eth_chainId',\r\n // params: 0,\r\n // outputFormatter: utils.hexToNumber\r\n // }),\r\n // new Method({\r\n // name: 'requestAccounts',\r\n // call: 'eth_requestAccounts',\r\n // params: 0,\r\n // outputFormatter: utils.toChecksumAddress\r\n // }),\r\n // new Method({\r\n // name: 'getProof',\r\n // call: 'eth_getProof',\r\n // params: 3,\r\n // inputFormatter: [formatter.inputAddressFormatter, formatter.inputStorageKeysFormatter, formatter.inputDefaultBlockNumberFormatter],\r\n // outputFormatter: formatter.outputProofFormatter\r\n // }),\r\n // new Method({\r\n // name: 'getPendingTransactions',\r\n // call: 'eth_pendingTransactions',\r\n // params: 0,\r\n // outputFormatter: formatter.outputTransactionFormatter\r\n // }),\r\n // new Method({\r\n // name: 'createAccessList',\r\n // call: 'eth_createAccessList',\r\n // params: 2,\r\n // inputFormatter: [formatter.inputTransactionFormatter, formatter.inputDefaultBlockNumberFormatter],\r\n // }),\r\n //\r\n // // subscriptions\r\n // new Subscriptions({\r\n // name: 'subscribe',\r\n // type: 'eth',\r\n // subscriptions: {\r\n // 'newBlockHeaders': {\r\n // // TODO rename on RPC side?\r\n // subscriptionName: 'newHeads', // replace subscription with this name\r\n // params: 0,\r\n // outputFormatter: formatter.outputBlockFormatter\r\n // },\r\n // 'pendingTransactions': {\r\n // subscriptionName: 'newPendingTransactions', // replace subscription with this name\r\n // params: 0\r\n // },\r\n // 'logs': {\r\n // params: 1,\r\n // inputFormatter: [formatter.inputLogFormatter],\r\n // outputFormatter: formatter.outputLogFormatter,\r\n // // DUBLICATE, also in web3-eth-contract\r\n // subscriptionHandler: function (output) {\r\n // if(output.removed) {\r\n // this.emit('changed', output);\r\n // } else {\r\n // this.emit('data', output);\r\n // }\r\n //\r\n // if (typeof this.callback === 'function') {\r\n // this.callback(null, output, this);\r\n // }\r\n // }\r\n // },\r\n // 'syncing': {\r\n // params: 0,\r\n // outputFormatter: formatter.outputSyncingFormatter,\r\n // subscriptionHandler: function (output) {\r\n // var _this = this;\r\n //\r\n // // fire TRUE at start\r\n // if(this._isSyncing !== true) {\r\n // this._isSyncing = true;\r\n // this.emit('changed', _this._isSyncing);\r\n //\r\n // if (typeof this.callback === 'function') {\r\n // this.callback(null, _this._isSyncing, this);\r\n // }\r\n //\r\n // setTimeout(function () {\r\n // _this.emit('data', output);\r\n //\r\n // if (typeof _this.callback === 'function') {\r\n // _this.callback(null, output, _this);\r\n // }\r\n // }, 0);\r\n //\r\n // // fire sync status\r\n // } else {\r\n // this.emit('data', output);\r\n // if ( typeof _this.callback === 'function') {\r\n // this.callback(null, output, this);\r\n // }\r\n //\r\n // // wait for some time before fireing the FALSE\r\n // clearTimeout(this._isSyncingTimeout);\r\n // this._isSyncingTimeout = setTimeout(function () {\r\n // if(output.currentBlock > output.highestBlock - 200) {\r\n // _this._isSyncing = false;\r\n // _this.emit('changed', _this._isSyncing);\r\n //\r\n // if ( typeof _this.callback === 'function') {\r\n // _this.callback(null, _this._isSyncing, _this);\r\n // }\r\n // }\r\n // }, 500);\r\n // }\r\n // }\r\n // }\r\n // }\r\n // })\r\n // ];\r\n // methods.forEach(function(method) {\r\n // method.attachToObject(_this);\r\n // method.setRequestManager(_this._requestManager, _this.accounts); // second param is the eth.accounts module (necessary for signing transactions locally)\r\n // method.defaultBlock = _this.defaultBlock;\r\n // method.defaultAccount = _this.defaultAccount;\r\n // method.transactionBlockTimeout = _this.transactionBlockTimeout;\r\n // method.transactionConfirmationBlocks = _this.transactionConfirmationBlocks;\r\n // method.transactionPollingTimeout = _this.transactionPollingTimeout;\r\n // method.transactionPollingInterval = _this.transactionPollingInterval;\r\n // method.handleRevert = _this.handleRevert;\r\n // });\r\n};\r\n// Adds the static givenProvider and providers property to the Eth module\r\naddProviders(Eth);\r\nexport default Eth;\r\n","/*\r\n This file is part of web3.js.\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file index.js\r\n * @author Fabian Vogelsteller \r\n * @date 2017\r\n */\r\n\"use strict\";\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar errors = require('@arianelabs/hweb3-core-helpers').errors;\r\nimport givenProvider from './givenProvider.js';\r\nimport { HttpProvider } from '@arianelabs/hweb3-providers-http';\r\nexport { default as BatchManager } from './batch.js';\r\n/**\r\n * It's responsible for passing messages to providers\r\n * It's also responsible for polling the ethereum node for incoming messages\r\n * Default poll timeout is 1 second\r\n * Singleton\r\n *\r\n * @param {Client} client\r\n *\r\n * @constructor\r\n */\r\nvar RequestManager = function RequestManager(client) {\r\n this.provider = null;\r\n this.providers = RequestManager.providers;\r\n this.setProvider(client);\r\n this.subscriptions = new Map();\r\n};\r\nRequestManager.givenProvider = givenProvider;\r\nRequestManager.providers = {\r\n HttpProvider: HttpProvider,\r\n};\r\n/**\r\n * Should be used to set provider of request manager\r\n *\r\n * @method setProvider\r\n *\r\n * @param {HttpProviderBase} provider\r\n *\r\n * @returns void\r\n */\r\nRequestManager.prototype.setProvider = function (provider) {\r\n if (!provider && typeof provider !== 'object') {\r\n throw new Error('Can\\'t set provider for \"' + provider + '\"');\r\n }\r\n // reset the old one before changing, if still connected\r\n if (this.provider && this.provider.connected)\r\n this.clearSubscriptions();\r\n this.provider = provider || null;\r\n // listen to incoming notifications\r\n /*\r\n TODO: implement subscription\r\n if (this.provider && this.provider.on) {\r\n if (typeof provider.sendRequest === 'function') { // EIP-1193 provider\r\n this.provider.on('message', function (payload) {\r\n if (payload && payload.type === 'eth_subscription' && payload.data) {\r\n const data = payload.data\r\n if (data.subscription && _this.subscriptions.has(data.subscription)) {\r\n _this.subscriptions.get(data.subscription).callback(null, data.result);\r\n }\r\n }\r\n });\r\n } else { // legacy provider subscription event\r\n this.provider.on('data', function data(result, deprecatedResult) {\r\n result = result || deprecatedResult; // this is for possible old providers, which may had the error first handler\r\n\r\n // if result is a subscription, call callback for that subscription\r\n if (result.method && result.params && result.params.subscription && _this.subscriptions.has(result.params.subscription)) {\r\n _this.subscriptions.get(result.params.subscription).callback(null, result.params.result);\r\n }\r\n });\r\n }\r\n\r\n // resubscribe if the provider has reconnected\r\n this.provider.on('connect', function connect() {\r\n _this.subscriptions.forEach(function (subscription) {\r\n subscription.subscription.resubscribe();\r\n });\r\n });\r\n\r\n // notify all subscriptions about the error condition\r\n this.provider.on('error', function error(error) {\r\n _this.subscriptions.forEach(function (subscription) {\r\n subscription.callback(error);\r\n });\r\n });\r\n\r\n // notify all subscriptions about bad close conditions\r\n const disconnect = function disconnect(event) {\r\n if (!_this._isCleanCloseEvent(event) || _this._isIpcCloseError(event)) {\r\n _this.subscriptions.forEach(function (subscription) {\r\n subscription.callback(errors.ConnectionCloseError(event));\r\n _this.subscriptions.delete(subscription.subscription.id);\r\n });\r\n\r\n if (_this.provider && _this.provider.emit) {\r\n _this.provider.emit('error', errors.ConnectionCloseError(event));\r\n }\r\n }\r\n if (_this.provider && _this.provider.emit) {\r\n _this.provider.emit('end', event);\r\n }\r\n };\r\n // TODO: Remove close once the standard allows it\r\n this.provider.on('close', disconnect);\r\n this.provider.on('disconnect', disconnect);\r\n\r\n // TODO add end, timeout??\r\n }\r\n */\r\n};\r\n/**\r\n * Asynchronously send request to provider.\r\n * Prefers to use the `request` method available on the provider as specified in [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193).\r\n * If `request` is not available, falls back to `sendAsync` and `send` respectively.\r\n * @method send\r\n * @param {Transaction} tx\r\n * @param {Function} callback\r\n */\r\nRequestManager.prototype.send = function (tx, callback) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n callback = callback || function () { };\r\n if (!this.provider) {\r\n return callback(errors.InvalidProvider());\r\n }\r\n try {\r\n const repsponse = yield this.provider.sendRequest(tx);\r\n return callback(null, repsponse);\r\n }\r\n catch (e) {\r\n return callback(e);\r\n }\r\n });\r\n};\r\n/**\r\n * Should be used to take transaction receipt\r\n *\r\n * @method getReceipt\r\n * @param {TransactionResponse} txResponse\r\n * @param {Function} callback triggered on end with (err, result)\r\n */\r\nRequestManager.prototype.getReceipt = function (txResponse, callback) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n callback = callback || function () { };\r\n if (!this.provider) {\r\n return callback(errors.InvalidProvider());\r\n }\r\n try {\r\n const receipt = yield this.provider.waitForReceipt(txResponse);\r\n return callback(null, receipt);\r\n }\r\n catch (e) {\r\n return callback(e);\r\n }\r\n });\r\n};\r\n/**\r\n * Asynchronously send batch request.\r\n * Only works if provider supports batch methods through `sendAsync` or `send`.\r\n * @method sendBatch\r\n * @param {Array.} txs - array of payload objects\r\n * @param {Function} callback\r\n */\r\nRequestManager.prototype.sendBatch = function (txs, callback) {\r\n //\r\n // if (!this.provider) {\r\n // return callback(errors.InvalidProvider());\r\n // }\r\n //\r\n // var payload = Jsonrpc.toBatchPayload(data);\r\n // this.provider[this.provider.sendAsync ? 'sendAsync' : 'send'](payload, function (err, results) {\r\n // if (err) {\r\n // return callback(err);\r\n // }\r\n //\r\n // if (!Array.isArray(results)) {\r\n // return callback(errors.InvalidResponse(results));\r\n // }\r\n //\r\n // callback(null, results);\r\n // });\r\n return callback('Not supported');\r\n};\r\n/**\r\n * Waits for notifications\r\n *\r\n * @method addSubscription\r\n * @param {Subscription} subscription the subscription\r\n * @param {String} type the subscription namespace (eth, personal, etc)\r\n * @param {Function} callback the callback to call for incoming notifications\r\n */\r\nRequestManager.prototype.addSubscription = function (subscription, callback) {\r\n if (this.provider.on) {\r\n this.subscriptions.set(subscription.id, {\r\n callback: callback,\r\n subscription: subscription\r\n });\r\n }\r\n else {\r\n throw new Error('The provider doesn\\'t support subscriptions: ' + this.provider.constructor.name);\r\n }\r\n};\r\n/**\r\n * Waits for notifications\r\n *\r\n * @method removeSubscription\r\n * @param {String} id the subscription id\r\n * @param {Function} callback fired once the subscription is removed\r\n */\r\nRequestManager.prototype.removeSubscription = function (id, callback) {\r\n if (this.subscriptions.has(id)) {\r\n var type = this.subscriptions.get(id).subscription.options.type;\r\n // remove subscription first to avoid reentry\r\n this.subscriptions.delete(id);\r\n // then, try to actually unsubscribe\r\n this.send({\r\n method: type + '_unsubscribe',\r\n params: [id]\r\n }, callback);\r\n return;\r\n }\r\n if (typeof callback === 'function') {\r\n // call the callback if the subscription was already removed\r\n callback(null);\r\n }\r\n};\r\n/**\r\n * Should be called to reset the subscriptions\r\n *\r\n * @method reset\r\n *\r\n * @returns {boolean}\r\n */\r\nRequestManager.prototype.clearSubscriptions = function (keepIsSyncing) {\r\n try {\r\n var _this = this;\r\n // uninstall all subscriptions\r\n if (this.subscriptions.size > 0) {\r\n this.subscriptions.forEach(function (value, id) {\r\n if (!keepIsSyncing || value.name !== 'syncing')\r\n _this.removeSubscription(id);\r\n });\r\n }\r\n // reset notification callbacks etc.\r\n if (this.provider.reset)\r\n this.provider.reset();\r\n return true;\r\n }\r\n catch (e) {\r\n throw new Error(`Error while clearing subscriptions: ${e}`);\r\n }\r\n};\r\n/**\r\n * Evaluates WS close event\r\n *\r\n * @method _isCleanClose\r\n *\r\n * @param {CloseEvent | boolean} event WS close event or exception flag\r\n *\r\n * @returns {boolean}\r\n */\r\nRequestManager.prototype._isCleanCloseEvent = function (event) {\r\n return typeof event === 'object' && ([1000].includes(event.code) || event.wasClean === true);\r\n};\r\n/**\r\n * Detects Ipc close error. The node.net module emits ('close', isException)\r\n *\r\n * @method _isIpcCloseError\r\n *\r\n * @param {CloseEvent | boolean} event WS close event or exception flag\r\n *\r\n * @returns {boolean}\r\n */\r\nRequestManager.prototype._isIpcCloseError = function (event) {\r\n return typeof event === 'boolean' && event;\r\n};\r\nexport const Manager = RequestManager;\r\n","module.exports = require(\"regenerator-runtime\");\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n define(Gp, \"constructor\", GeneratorFunctionPrototype);\n define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction);\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n define(Gp, iteratorSymbol, function() {\n return this;\n });\n\n define(Gp, \"toString\", function() {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, in modern engines\n // we can explicitly access globalThis. In older engines we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n */\r\n/**\r\n * @file givenProvider.js\r\n * @author Patryk Matyjasiak \r\n * @date 2022\r\n */\r\n\"use strict\";\r\nvar givenProvider = null;\r\n// ADD GIVEN PROVIDER\r\n/* jshint ignore:start */\r\nvar global = typeof globalThis === 'object' ? globalThis : undefined;\r\nif (!global) {\r\n try {\r\n global = Function('return this')();\r\n }\r\n catch (e) {\r\n global = self;\r\n }\r\n}\r\n// EIP-1193: window.ethereum\r\nif (typeof global.hedera !== 'undefined') {\r\n givenProvider = global.hedera;\r\n // Legacy web3.currentProvider\r\n}\r\nelse if (typeof global.hweb3 !== 'undefined' && global.hweb3.currentProvider) {\r\n if (global.hweb3.currentProvider.sendAsync) {\r\n global.hweb3.currentProvider.send = global.hweb3.currentProvider.sendAsync;\r\n delete global.hweb3.currentProvider.sendAsync;\r\n }\r\n givenProvider = global.hweb3.currentProvider;\r\n}\r\n/* jshint ignore:end */\r\nexport default givenProvider;\r\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file index.js\r\n * @authors:\r\n * Patryk Matyjasiak \r\n * @date 2022\r\n */\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nimport { AccountInfoQuery, Client, AccountBalanceQuery, TransactionReceiptQuery, } from '@hashgraph/sdk';\r\n/**\r\n * HttpProvider should be used to send Hedera node calls\r\n * @param {Client} client\r\n */\r\nexport class HttpProvider {\r\n constructor(...args) {\r\n this.disconnect = () => false;\r\n /**\r\n * Return the ID of the current network.\r\n *\r\n * @method getLedgerId\r\n * @returns {LedgerId}\r\n */\r\n this.getLedgerId = function () {\r\n return this.client.ledgerId;\r\n };\r\n /**\r\n * Return the entire network map for the current network.\r\n *\r\n * @method getNetwork\r\n * @returns {[key: string]: string | AccountId}\r\n */\r\n this.getNetwork = function () {\r\n return this.client.network;\r\n };\r\n /**\r\n * Return the mirror network.\r\n *\r\n * @method getMirrorNetwork\r\n * @returns string[]\r\n */\r\n this.getMirrorNetwork = function () {\r\n return this.client.mirrorNetwork;\r\n };\r\n /**\r\n * Get the balance for an account.\r\n *\r\n * @method getAccountBalance\r\n * @param {string | AccountId} accountId\r\n * @returns Promise\r\n */\r\n this.getAccountBalance = function (accountId) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const query = new AccountBalanceQuery()\r\n .setAccountId(accountId || this.accountId);\r\n return query.execute(this.client);\r\n });\r\n };\r\n /**\r\n * Get the info for an account.\r\n *\r\n * @method getAccountInfo\r\n * @param {string | AccountId} accountId\r\n * @returns Promise\r\n */\r\n this.getAccountInfo = function (accountId) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const query = new AccountInfoQuery()\r\n .setAccountId(accountId || this.accountId);\r\n return query.execute(this.client);\r\n });\r\n };\r\n /**\r\n * Get the info for an account.\r\n *\r\n * @method getTransactionReceipt\r\n * @param {TransactionId} transactionId\r\n * @returns Promise\r\n */\r\n this.getTransactionReceipt = function (transactionId) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const query = new TransactionReceiptQuery()\r\n .setTransactionId(transactionId);\r\n return query.execute(this.client);\r\n });\r\n };\r\n /**\r\n * Sign and send a request using the wallet.\r\n *\r\n * @method sendRequest\r\n * @param {Transaction} tx\r\n * @returns Promise\r\n */\r\n this.sendRequest = function (tx) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return tx.execute(this.client);\r\n });\r\n };\r\n /**\r\n * Wait for the receipt for a transaction response.\r\n *\r\n * @method waitForReceipt\r\n * @param {TransactionResponse} response\r\n * @returns Promise\r\n */\r\n this.waitForReceipt = function (response) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const query = new TransactionReceiptQuery()\r\n .setTransactionId(response.transactionId);\r\n return query.execute(this.client);\r\n });\r\n };\r\n this.connected = true;\r\n if (args.length === 1) {\r\n this.client = args[0];\r\n }\r\n if (args.length >= 2) {\r\n switch (args[2]) {\r\n case 'testnet':\r\n this.client = Client.forTestnet();\r\n break;\r\n case 'previewnet':\r\n this.client = Client.forPreviewnet();\r\n break;\r\n default: this.client = Client.forMainnet();\r\n }\r\n this.client.setOperator(args[0], args[1]);\r\n this.accountId = args[0];\r\n }\r\n }\r\n}\r\n","module.exports = require(\"regenerator-runtime\");\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n define(Gp, \"constructor\", GeneratorFunctionPrototype);\n define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction);\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n define(Gp, iteratorSymbol, function() {\n return this;\n });\n\n define(Gp, \"toString\", function() {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, in modern engines\n // we can explicitly access globalThis. In older engines we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\n\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","export {\n BadKeyError,\n BadMnemonicError,\n BadMnemonicReason,\n} from \"@hashgraph/cryptography\";\nexport { default as PrivateKey } from \"./PrivateKey.js\";\nexport { default as PublicKey } from \"./PublicKey.js\";\nexport { default as KeyList } from \"./KeyList.js\";\nexport { default as Key } from \"./Key.js\";\nexport { default as Mnemonic } from \"./Mnemonic.js\";\n\nexport { default as AccountAllowanceAdjustTransaction } from \"./account/AccountAllowanceAdjustTransaction.js\";\nexport { default as AccountAllowanceApproveTransaction } from \"./account/AccountAllowanceApproveTransaction.js\";\nexport { default as AccountBalance } from \"./account/AccountBalance.js\";\nexport { default as AccountBalanceQuery } from \"./account/AccountBalanceQuery.js\";\nexport { default as AccountCreateTransaction } from \"./account/AccountCreateTransaction.js\";\nexport { default as AccountDeleteTransaction } from \"./account/AccountDeleteTransaction.js\";\nexport { default as AccountId } from \"./account/AccountId.js\";\nexport { default as AccountInfo } from \"./account/AccountInfo.js\";\nexport { default as AccountInfoQuery } from \"./account/AccountInfoQuery.js\";\nexport { default as AccountRecordsQuery } from \"./account/AccountRecordsQuery.js\";\nexport { default as AccountStakersQuery } from \"./account/AccountStakersQuery.js\";\nexport { default as AccountUpdateTransaction } from \"./account/AccountUpdateTransaction.js\";\nexport { default as AddressBookQuery } from \"./network/AddressBookQuery.js\";\nexport { default as AssessedCustomFee } from \"./token/AssessedCustomFee.js\";\nexport { default as ContractByteCodeQuery } from \"./contract/ContractByteCodeQuery.js\";\nexport { default as ContractCallQuery } from \"./contract/ContractCallQuery.js\";\nexport { default as ContractCreateTransaction } from \"./contract/ContractCreateTransaction.js\";\nexport { default as ContractDeleteTransaction } from \"./contract/ContractDeleteTransaction.js\";\nexport { default as ContractExecuteTransaction } from \"./contract/ContractExecuteTransaction.js\";\nexport { default as ContractFunctionParameters } from \"./contract/ContractFunctionParameters.js\";\nexport { default as ContractFunctionResult } from \"./contract/ContractFunctionResult.js\";\nexport { default as ContractFunctionSelector } from \"./contract/ContractFunctionSelector.js\";\nexport { default as ContractId } from \"./contract/ContractId.js\";\nexport { default as ContractInfo } from \"./contract/ContractInfo.js\";\nexport { default as ContractInfoQuery } from \"./contract/ContractInfoQuery.js\";\nexport { default as ContractLogInfo } from \"./contract/ContractLogInfo.js\";\nexport { default as ContractUpdateTransaction } from \"./contract/ContractUpdateTransaction.js\";\nexport { default as CustomFee } from \"./token/CustomFee.js\";\nexport { default as CustomFixedFee } from \"./token/CustomFixedFee.js\";\nexport { default as CustomFractionalFee } from \"./token/CustomFractionalFee.js\";\nexport { default as CustomRoyaltyFee } from \"./token/CustomRoyaltyFee.js\";\nexport { default as DelegateContractId } from \"./contract/DelegateContractId.js\";\nexport { default as ExchangeRate } from \"./ExchangeRate.js\";\nexport { default as FileAppendTransaction } from \"./file/FileAppendTransaction.js\";\nexport { default as FileContentsQuery } from \"./file/FileContentsQuery.js\";\nexport { default as FileCreateTransaction } from \"./file/FileCreateTransaction.js\";\nexport { default as FileDeleteTransaction } from \"./file/FileDeleteTransaction.js\";\nexport { default as FileId } from \"./file/FileId.js\";\nexport { default as FileInfo } from \"./file/FileInfo.js\";\nexport { default as FileInfoQuery } from \"./file/FileInfoQuery.js\";\nexport { default as FileUpdateTransaction } from \"./file/FileUpdateTransaction.js\";\nexport { default as FreezeTransaction } from \"./system/FreezeTransaction.js\";\nexport { default as Hbar } from \"./Hbar.js\";\nexport { default as HbarAllowance } from \"./account/HbarAllowance.js\";\nexport { default as HbarUnit } from \"./HbarUnit.js\";\nexport { default as LiveHash } from \"./account/LiveHash.js\";\nexport { default as LiveHashAddTransaction } from \"./account/LiveHashAddTransaction.js\";\nexport { default as LiveHashDeleteTransaction } from \"./account/LiveHashDeleteTransaction.js\";\nexport { default as LiveHashQuery } from \"./account/LiveHashQuery.js\";\nexport { default as NetworkVersionInfo } from \"./network/NetworkVersionInfo.js\";\nexport { default as NetworkVersionInfoQuery } from \"./network/NetworkVersionInfoQuery.js\";\nexport { default as NftId } from \"./token/NftId.js\";\nexport { default as ProxyStaker } from \"./account/ProxyStaker.js\";\nexport { default as Query } from \"./query/Query.js\";\nexport { default as ScheduleCreateTransaction } from \"./schedule/ScheduleCreateTransaction.js\";\nexport { default as ScheduleDeleteTransaction } from \"./schedule/ScheduleDeleteTransaction.js\";\nexport { default as ScheduleId } from \"./schedule/ScheduleId.js\";\nexport { default as ScheduleInfo } from \"./schedule/ScheduleInfo.js\";\nexport { default as ScheduleInfoQuery } from \"./schedule/ScheduleInfoQuery.js\";\nexport { default as ScheduleSignTransaction } from \"./schedule/ScheduleSignTransaction.js\";\nexport { default as SemanticVersion } from \"./network/SemanticVersion.js\";\nexport { default as Status } from \"./Status.js\";\nexport { default as SystemDeleteTransaction } from \"./system/SystemDeleteTransaction.js\";\nexport { default as SystemUndeleteTransaction } from \"./system/SystemUndeleteTransaction.js\";\nexport { default as Timestamp } from \"./Timestamp.js\";\nexport { default as TokenAllowance } from \"./account/TokenAllowance.js\";\nexport { default as TokenAssociateTransaction } from \"./token/TokenAssociateTransaction.js\";\nexport { default as TokenBurnTransaction } from \"./token/TokenBurnTransaction.js\";\nexport { default as TokenCreateTransaction } from \"./token/TokenCreateTransaction.js\";\nexport { default as TokenDeleteTransaction } from \"./token/TokenDeleteTransaction.js\";\nexport { default as TokenDissociateTransaction } from \"./token/TokenDissociateTransaction.js\";\nexport { default as TokenFeeScheduleUpdateTransaction } from \"./token/TokenFeeScheduleUpdateTransaction.js\";\nexport { default as TokenFreezeTransaction } from \"./token/TokenFreezeTransaction.js\";\nexport { default as TokenGrantKycTransaction } from \"./token/TokenGrantKycTransaction.js\";\nexport { default as TokenId } from \"./token/TokenId.js\";\nexport { default as TokenInfo } from \"./token/TokenInfo.js\";\nexport { default as TokenInfoQuery } from \"./token/TokenInfoQuery.js\";\nexport { default as TokenMintTransaction } from \"./token/TokenMintTransaction.js\";\nexport { default as TokenNftAllowance } from \"./account/TokenNftAllowance.js\";\nexport { default as TokenNftInfo } from \"./token/TokenNftInfo.js\";\nexport { default as TokenNftInfoQuery } from \"./token/TokenNftInfoQuery.js\";\nexport { default as TokenPauseTransaction } from \"./token/TokenPauseTransaction.js\";\nexport { default as TokenRevokeKycTransaction } from \"./token/TokenRevokeKycTransaction.js\";\nexport { default as TokenSupplyType } from \"./token/TokenSupplyType.js\";\nexport { default as TokenType } from \"./token/TokenType.js\";\nexport { default as TokenUnfreezeTransaction } from \"./token/TokenUnfreezeTransaction.js\";\nexport { default as TokenUnpauseTransaction } from \"./token/TokenUnpauseTransaction.js\";\nexport { default as TokenUpdateTransaction } from \"./token/TokenUpdateTransaction.js\";\nexport { default as TokenWipeTransaction } from \"./token/TokenWipeTransaction.js\";\nexport { default as TopicCreateTransaction } from \"./topic/TopicCreateTransaction.js\";\nexport { default as TopicDeleteTransaction } from \"./topic/TopicDeleteTransaction.js\";\nexport { default as TopicId } from \"./topic/TopicId.js\";\nexport { default as TopicInfo } from \"./topic/TopicInfo.js\";\nexport { default as TopicInfoQuery } from \"./topic/TopicInfoQuery.js\";\nexport { default as TopicMessage } from \"./topic/TopicMessage.js\";\nexport { default as TopicMessageChunk } from \"./topic/TopicMessageChunk.js\";\nexport { default as TopicMessageQuery } from \"./topic/TopicMessageQuery.js\";\nexport { default as TopicMessageSubmitTransaction } from \"./topic/TopicMessageSubmitTransaction.js\";\nexport { default as TopicUpdateTransaction } from \"./topic/TopicUpdateTransaction.js\";\nexport { default as Transaction } from \"./transaction/Transaction.js\";\nexport { default as TransactionId } from \"./transaction/TransactionId.js\";\nexport { default as TransactionReceipt } from \"./transaction/TransactionReceipt.js\";\nexport { default as TransactionReceiptQuery } from \"./transaction/TransactionReceiptQuery.js\";\nexport { default as TransactionRecord } from \"./transaction/TransactionRecord.js\";\nexport { default as TransactionRecordQuery } from \"./transaction/TransactionRecordQuery.js\";\nexport { default as TransactionResponse } from \"./transaction/TransactionResponse.js\";\nexport { default as Transfer } from \"./Transfer.js\";\nexport { default as TransferTransaction } from \"./account/TransferTransaction.js\";\n\nexport { default as StatusError } from \"./StatusError.js\";\nexport { default as PrecheckStatusError } from \"./PrecheckStatusError.js\";\nexport { default as ReceiptStatusError } from \"./ReceiptStatusError.js\";\nexport { default as LedgerId } from \"./LedgerId.js\";\n\n/**\n * @typedef {import(\"./client/Client.js\").NetworkName} ClientNetworkName\n */\n\n/**\n * @typedef {object} NetworkNameType\n * @property {ClientNetworkName} Mainnet\n * @property {ClientNetworkName} Testnet\n * @property {ClientNetworkName} Previewnet\n */\n\n/**\n * @type {NetworkNameType}\n */\nexport const NetworkName = {\n Mainnet: \"mainnet\",\n Testnet: \"testnet\",\n Previewnet: \"previewnet\",\n};\n\nimport \"./query/CostQuery.js\";\n","import Key from \"./Key.js\";\n\n/**\n * A list of Keys (`Key`) with an optional threshold.\n */\nexport default class KeyList extends Key {\n /**\n * @param {?Key[]} [keys]\n * @param {?number} [threshold]\n */\n constructor(keys, threshold) {\n super();\n\n /**\n * @private\n * @type {Key[]}\n */\n this._keys = keys == null ? [] : keys;\n\n /**\n * @type {?number}\n */\n this._threshold = threshold == null ? null : threshold;\n }\n\n /**\n * @param {Key[]} keys\n * @returns {KeyList}\n */\n static of(...keys) {\n return new KeyList(keys, null);\n }\n\n /**\n * @template T\n * @param {ArrayLike} arrayLike\n * @param {((key: Key) => Key)} [mapFn]\n * @param {T} [thisArg]\n * @returns {KeyList}\n */\n static from(arrayLike, mapFn, thisArg) {\n if (mapFn == null) {\n return new KeyList(Array.from(arrayLike));\n }\n\n return new KeyList(Array.from(arrayLike, mapFn, thisArg));\n }\n\n /**\n * @returns {?number}\n */\n get threshold() {\n return this._threshold;\n }\n\n /**\n * @param {number} threshold\n * @returns {this}\n */\n setThreshold(threshold) {\n this._threshold = threshold;\n return this;\n }\n\n /**\n * @param {Key[]} keys\n * @returns {number}\n */\n push(...keys) {\n return this._keys.push(...keys);\n }\n\n /**\n * @param {number} start\n * @param {number} deleteCount\n * @param {Key[]} items\n * @returns {KeyList}\n */\n splice(start, deleteCount, ...items) {\n return new KeyList(\n this._keys.splice(start, deleteCount, ...items),\n this.threshold\n );\n }\n\n /**\n * @param {number=} start\n * @param {number=} end\n * @returns {KeyList}\n */\n slice(start, end) {\n return new KeyList(this._keys.slice(start, end), this.threshold);\n }\n\n /**\n * @returns {Iterator}\n */\n [Symbol.iterator]() {\n return this._keys[Symbol.iterator]();\n }\n\n /**\n * @returns {Key[]}\n */\n toArray() {\n return this._keys.slice();\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify({\n threshold: this._threshold,\n keys: this._keys.toString(),\n });\n }\n}\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n define(Gp, \"constructor\", GeneratorFunctionPrototype);\n define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction);\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n define(Gp, iteratorSymbol, function() {\n return this;\n });\n\n define(Gp, \"toString\", function() {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, in modern engines\n // we can explicitly access globalThis. In older engines we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nmodule.exports = _arrayWithHoles;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nmodule.exports = _iterableToArrayLimit;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableRest;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\n\nmodule.exports = _arrayWithoutHoles;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableSpread;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\n\nmodule.exports = _isNativeFunction;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nmodule.exports = _isNativeReflectConstruct;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","export default [\n \"aback\",\n \"abbey\",\n \"abbot\",\n \"abide\",\n \"ablaze\",\n \"able\",\n \"aboard\",\n \"abode\",\n \"abort\",\n \"abound\",\n \"about\",\n \"above\",\n \"abroad\",\n \"abrupt\",\n \"absent\",\n \"absorb\",\n \"absurd\",\n \"abuse\",\n \"accent\",\n \"accept\",\n \"access\",\n \"accord\",\n \"accuse\",\n \"ace\",\n \"ache\",\n \"aching\",\n \"acid\",\n \"acidic\",\n \"acorn\",\n \"acre\",\n \"across\",\n \"act\",\n \"action\",\n \"active\",\n \"actor\",\n \"actual\",\n \"acute\",\n \"adam\",\n \"adapt\",\n \"add\",\n \"added\",\n \"addict\",\n \"adept\",\n \"adhere\",\n \"adjust\",\n \"admire\",\n \"admit\",\n \"adobe\",\n \"adopt\",\n \"adrift\",\n \"adult\",\n \"adverb\",\n \"advice\",\n \"aerial\",\n \"afar\",\n \"affair\",\n \"affect\",\n \"afford\",\n \"afghan\",\n \"afield\",\n \"afloat\",\n \"afraid\",\n \"afresh\",\n \"after\",\n \"again\",\n \"age\",\n \"agency\",\n \"agenda\",\n \"agent\",\n \"aghast\",\n \"agile\",\n \"ago\",\n \"agony\",\n \"agree\",\n \"agreed\",\n \"ahead\",\n \"aid\",\n \"aide\",\n \"aim\",\n \"air\",\n \"airman\",\n \"airy\",\n \"akin\",\n \"alarm\",\n \"alaska\",\n \"albeit\",\n \"album\",\n \"ale\",\n \"alert\",\n \"alibi\",\n \"alice\",\n \"alien\",\n \"alight\",\n \"align\",\n \"alike\",\n \"alive\",\n \"alkali\",\n \"all\",\n \"alley\",\n \"allied\",\n \"allow\",\n \"alloy\",\n \"ally\",\n \"almond\",\n \"almost\",\n \"aloft\",\n \"alone\",\n \"along\",\n \"aloof\",\n \"aloud\",\n \"alpha\",\n \"alpine\",\n \"also\",\n \"altar\",\n \"alter\",\n \"always\",\n \"amaze\",\n \"amazon\",\n \"amber\",\n \"ambush\",\n \"amen\",\n \"amend\",\n \"amid\",\n \"amidst\",\n \"amiss\",\n \"among\",\n \"amount\",\n \"ample\",\n \"amuse\",\n \"anchor\",\n \"and\",\n \"andrew\",\n \"anew\",\n \"angel\",\n \"anger\",\n \"angle\",\n \"angry\",\n \"animal\",\n \"ankle\",\n \"annoy\",\n \"annual\",\n \"answer\",\n \"anthem\",\n \"any\",\n \"anyhow\",\n \"anyway\",\n \"apart\",\n \"apathy\",\n \"apex\",\n \"apiece\",\n \"appeal\",\n \"appear\",\n \"apple\",\n \"apply\",\n \"april\",\n \"apron\",\n \"arab\",\n \"arcade\",\n \"arcane\",\n \"arch\",\n \"arctic\",\n \"ardent\",\n \"are\",\n \"area\",\n \"argue\",\n \"arid\",\n \"arise\",\n \"ark\",\n \"arm\",\n \"armful\",\n \"army\",\n \"aroma\",\n \"around\",\n \"arouse\",\n \"array\",\n \"arrest\",\n \"arrive\",\n \"arrow\",\n \"arson\",\n \"art\",\n \"artery\",\n \"artful\",\n \"artist\",\n \"ascent\",\n \"ash\",\n \"ashen\",\n \"ashore\",\n \"aside\",\n \"ask\",\n \"asleep\",\n \"aspect\",\n \"assay\",\n \"assent\",\n \"assert\",\n \"assess\",\n \"asset\",\n \"assign\",\n \"assist\",\n \"assume\",\n \"assure\",\n \"asthma\",\n \"astute\",\n \"asylum\",\n \"ate\",\n \"athens\",\n \"atlas\",\n \"atom\",\n \"atomic\",\n \"attach\",\n \"attack\",\n \"attain\",\n \"attend\",\n \"attic\",\n \"auburn\",\n \"audio\",\n \"audit\",\n \"august\",\n \"aunt\",\n \"auntie\",\n \"aura\",\n \"austin\",\n \"author\",\n \"auto\",\n \"autumn\",\n \"avail\",\n \"avenge\",\n \"avenue\",\n \"avert\",\n \"avid\",\n \"avoid\",\n \"await\",\n \"awake\",\n \"awaken\",\n \"award\",\n \"aware\",\n \"awash\",\n \"away\",\n \"awful\",\n \"awhile\",\n \"axe\",\n \"axes\",\n \"axiom\",\n \"axis\",\n \"axle\",\n \"aye\",\n \"babe\",\n \"baby\",\n \"bach\",\n \"back\",\n \"backup\",\n \"bacon\",\n \"bad\",\n \"badge\",\n \"badly\",\n \"bag\",\n \"baggy\",\n \"bail\",\n \"bait\",\n \"bake\",\n \"baker\",\n \"bakery\",\n \"bald\",\n \"ball\",\n \"ballad\",\n \"ballet\",\n \"ballot\",\n \"baltic\",\n \"bamboo\",\n \"ban\",\n \"banal\",\n \"banana\",\n \"band\",\n \"bang\",\n \"bank\",\n \"bar\",\n \"barber\",\n \"bare\",\n \"barely\",\n \"barge\",\n \"bark\",\n \"barley\",\n \"barn\",\n \"baron\",\n \"barrel\",\n \"barren\",\n \"basalt\",\n \"base\",\n \"basic\",\n \"basil\",\n \"basin\",\n \"basis\",\n \"basket\",\n \"bass\",\n \"bat\",\n \"batch\",\n \"bath\",\n \"baton\",\n \"battle\",\n \"bay\",\n \"beach\",\n \"beacon\",\n \"beak\",\n \"beam\",\n \"bean\",\n \"bear\",\n \"beard\",\n \"beast\",\n \"beat\",\n \"beauty\",\n \"become\",\n \"bed\",\n \"beech\",\n \"beef\",\n \"beefy\",\n \"beep\",\n \"beer\",\n \"beet\",\n \"beetle\",\n \"before\",\n \"beg\",\n \"beggar\",\n \"begin\",\n \"behalf\",\n \"behave\",\n \"behind\",\n \"beige\",\n \"being\",\n \"belief\",\n \"bell\",\n \"belly\",\n \"belong\",\n \"below\",\n \"belt\",\n \"bench\",\n \"bend\",\n \"benign\",\n \"bent\",\n \"berlin\",\n \"berry\",\n \"berth\",\n \"beset\",\n \"beside\",\n \"best\",\n \"bestow\",\n \"bet\",\n \"beta\",\n \"betray\",\n \"better\",\n \"beware\",\n \"beyond\",\n \"bias\",\n \"biceps\",\n \"bicker\",\n \"bid\",\n \"big\",\n \"bigger\",\n \"bike\",\n \"bile\",\n \"bill\",\n \"bin\",\n \"binary\",\n \"bind\",\n \"biopsy\",\n \"birch\",\n \"bird\",\n \"birdie\",\n \"birth\",\n \"bishop\",\n \"bit\",\n \"bitch\",\n \"bite\",\n \"bitter\",\n \"black\",\n \"blade\",\n \"blame\",\n \"bland\",\n \"blast\",\n \"blaze\",\n \"bleak\",\n \"blend\",\n \"bless\",\n \"blew\",\n \"blind\",\n \"blink\",\n \"blip\",\n \"bliss\",\n \"blitz\",\n \"block\",\n \"blond\",\n \"blood\",\n \"bloody\",\n \"bloom\",\n \"blot\",\n \"blouse\",\n \"blow\",\n \"blue\",\n \"bluff\",\n \"blunt\",\n \"blur\",\n \"blush\",\n \"boar\",\n \"board\",\n \"boast\",\n \"boat\",\n \"bob\",\n \"bodily\",\n \"body\",\n \"bogus\",\n \"boil\",\n \"bold\",\n \"bolt\",\n \"bomb\",\n \"bombay\",\n \"bond\",\n \"bone\",\n \"bonn\",\n \"bonnet\",\n \"bonus\",\n \"bony\",\n \"book\",\n \"boom\",\n \"boost\",\n \"boot\",\n \"booth\",\n \"booze\",\n \"border\",\n \"bore\",\n \"borrow\",\n \"bosom\",\n \"boss\",\n \"boston\",\n \"both\",\n \"bother\",\n \"bottle\",\n \"bottom\",\n \"bought\",\n \"bounce\",\n \"bound\",\n \"bounty\",\n \"bout\",\n \"bovine\",\n \"bow\",\n \"bowel\",\n \"bowl\",\n \"box\",\n \"boy\",\n \"boyish\",\n \"brace\",\n \"brain\",\n \"brainy\",\n \"brake\",\n \"bran\",\n \"branch\",\n \"brand\",\n \"brandy\",\n \"brass\",\n \"brave\",\n \"bravo\",\n \"brazil\",\n \"breach\",\n \"bread\",\n \"break\",\n \"breast\",\n \"breath\",\n \"bred\",\n \"breed\",\n \"breeze\",\n \"brew\",\n \"bribe\",\n \"brick\",\n \"bride\",\n \"bridge\",\n \"brief\",\n \"bright\",\n \"brim\",\n \"brine\",\n \"bring\",\n \"brink\",\n \"brisk\",\n \"broad\",\n \"broke\",\n \"broken\",\n \"bronze\",\n \"brook\",\n \"broom\",\n \"brown\",\n \"bruise\",\n \"brush\",\n \"brutal\",\n \"brute\",\n \"bubble\",\n \"buck\",\n \"bucket\",\n \"buckle\",\n \"budget\",\n \"buffet\",\n \"buggy\",\n \"build\",\n \"bulb\",\n \"bulge\",\n \"bulk\",\n \"bulky\",\n \"bull\",\n \"bullet\",\n \"bully\",\n \"bump\",\n \"bumpy\",\n \"bunch\",\n \"bundle\",\n \"bunk\",\n \"bunny\",\n \"burden\",\n \"bureau\",\n \"burial\",\n \"buried\",\n \"burly\",\n \"burn\",\n \"burnt\",\n \"burrow\",\n \"burst\",\n \"bury\",\n \"bus\",\n \"bush\",\n \"bust\",\n \"bustle\",\n \"busy\",\n \"but\",\n \"butler\",\n \"butt\",\n \"butter\",\n \"button\",\n \"buy\",\n \"buyer\",\n \"buzz\",\n \"bye\",\n \"byte\",\n \"cab\",\n \"cabin\",\n \"cable\",\n \"cache\",\n \"cactus\",\n \"caesar\",\n \"cage\",\n \"cairo\",\n \"cajun\",\n \"cajole\",\n \"cake\",\n \"calf\",\n \"call\",\n \"caller\",\n \"calm\",\n \"calmly\",\n \"came\",\n \"camel\",\n \"camera\",\n \"camp\",\n \"campus\",\n \"can\",\n \"canada\",\n \"canal\",\n \"canary\",\n \"cancel\",\n \"cancer\",\n \"candid\",\n \"candle\",\n \"candy\",\n \"cane\",\n \"canine\",\n \"canoe\",\n \"canopy\",\n \"canvas\",\n \"canyon\",\n \"cap\",\n \"cape\",\n \"car\",\n \"carbon\",\n \"card\",\n \"care\",\n \"career\",\n \"caress\",\n \"cargo\",\n \"carl\",\n \"carnal\",\n \"carol\",\n \"carp\",\n \"carpet\",\n \"carrot\",\n \"carry\",\n \"cart\",\n \"cartel\",\n \"case\",\n \"cash\",\n \"cask\",\n \"cast\",\n \"castle\",\n \"casual\",\n \"cat\",\n \"catch\",\n \"cater\",\n \"cattle\",\n \"caught\",\n \"causal\",\n \"cause\",\n \"cave\",\n \"cease\",\n \"celery\",\n \"cell\",\n \"cellar\",\n \"celtic\",\n \"cement\",\n \"censor\",\n \"census\",\n \"cent\",\n \"cereal\",\n \"chain\",\n \"chair\",\n \"chalk\",\n \"chalky\",\n \"champ\",\n \"chance\",\n \"change\",\n \"chant\",\n \"chaos\",\n \"chap\",\n \"chapel\",\n \"charge\",\n \"charm\",\n \"chart\",\n \"chase\",\n \"chat\",\n \"cheap\",\n \"cheat\",\n \"check\",\n \"cheek\",\n \"cheeky\",\n \"cheer\",\n \"cheery\",\n \"cheese\",\n \"chef\",\n \"cheque\",\n \"cherry\",\n \"chess\",\n \"chest\",\n \"chew\",\n \"chic\",\n \"chick\",\n \"chief\",\n \"child\",\n \"chile\",\n \"chill\",\n \"chilly\",\n \"chin\",\n \"china\",\n \"chip\",\n \"choice\",\n \"choir\",\n \"choose\",\n \"chop\",\n \"choppy\",\n \"chord\",\n \"chorus\",\n \"chose\",\n \"chosen\",\n \"chris\",\n \"chrome\",\n \"chunk\",\n \"chunky\",\n \"church\",\n \"cider\",\n \"cigar\",\n \"cinema\",\n \"circa\",\n \"circle\",\n \"circus\",\n \"cite\",\n \"city\",\n \"civic\",\n \"civil\",\n \"clad\",\n \"claim\",\n \"clammy\",\n \"clan\",\n \"clap\",\n \"clash\",\n \"clasp\",\n \"class\",\n \"clause\",\n \"claw\",\n \"clay\",\n \"clean\",\n \"clear\",\n \"clergy\",\n \"clerk\",\n \"clever\",\n \"click\",\n \"client\",\n \"cliff\",\n \"climax\",\n \"climb\",\n \"clinch\",\n \"cling\",\n \"clinic\",\n \"clip\",\n \"cloak\",\n \"clock\",\n \"clone\",\n \"close\",\n \"closer\",\n \"closet\",\n \"cloth\",\n \"cloud\",\n \"cloudy\",\n \"clout\",\n \"clown\",\n \"club\",\n \"clue\",\n \"clumsy\",\n \"clung\",\n \"clutch\",\n \"coach\",\n \"coal\",\n \"coarse\",\n \"coast\",\n \"coat\",\n \"coax\",\n \"cobalt\",\n \"cobra\",\n \"coca\",\n \"cock\",\n \"cocoa\",\n \"code\",\n \"coffee\",\n \"coffin\",\n \"cohort\",\n \"coil\",\n \"coin\",\n \"coke\",\n \"cold\",\n \"collar\",\n \"colon\",\n \"colony\",\n \"colt\",\n \"column\",\n \"comb\",\n \"combat\",\n \"come\",\n \"comedy\",\n \"comic\",\n \"commit\",\n \"common\",\n \"compel\",\n \"comply\",\n \"concur\",\n \"cone\",\n \"confer\",\n \"congo\",\n \"consul\",\n \"convex\",\n \"convey\",\n \"convoy\",\n \"cook\",\n \"cool\",\n \"cope\",\n \"copper\",\n \"copy\",\n \"coral\",\n \"cord\",\n \"core\",\n \"cork\",\n \"corn\",\n \"corner\",\n \"corps\",\n \"corpse\",\n \"corpus\",\n \"cortex\",\n \"cosmic\",\n \"cosmos\",\n \"cost\",\n \"costly\",\n \"cotton\",\n \"couch\",\n \"cough\",\n \"could\",\n \"count\",\n \"county\",\n \"coup\",\n \"couple\",\n \"coupon\",\n \"course\",\n \"court\",\n \"cousin\",\n \"cove\",\n \"cover\",\n \"covert\",\n \"cow\",\n \"coward\",\n \"cowboy\",\n \"cozy\",\n \"crab\",\n \"crack\",\n \"cradle\",\n \"craft\",\n \"crafty\",\n \"crag\",\n \"crane\",\n \"crash\",\n \"crate\",\n \"crater\",\n \"crawl\",\n \"crazy\",\n \"creak\",\n \"cream\",\n \"creamy\",\n \"create\",\n \"credit\",\n \"creed\",\n \"creek\",\n \"creep\",\n \"creepy\",\n \"crept\",\n \"crest\",\n \"crew\",\n \"cried\",\n \"crime\",\n \"crisis\",\n \"crisp\",\n \"critic\",\n \"crook\",\n \"crop\",\n \"cross\",\n \"crow\",\n \"crowd\",\n \"crown\",\n \"crude\",\n \"cruel\",\n \"cruise\",\n \"crunch\",\n \"crush\",\n \"crust\",\n \"crux\",\n \"cry\",\n \"crypt\",\n \"cuba\",\n \"cube\",\n \"cubic\",\n \"cuckoo\",\n \"cuff\",\n \"cult\",\n \"cup\",\n \"curb\",\n \"cure\",\n \"curfew\",\n \"curl\",\n \"curry\",\n \"curse\",\n \"cursor\",\n \"curve\",\n \"cuss\",\n \"custom\",\n \"cut\",\n \"cute\",\n \"cycle\",\n \"cyclic\",\n \"cynic\",\n \"czech\",\n \"dad\",\n \"daddy\",\n \"dagger\",\n \"daily\",\n \"dairy\",\n \"daisy\",\n \"dale\",\n \"dam\",\n \"damage\",\n \"damp\",\n \"dampen\",\n \"dance\",\n \"danger\",\n \"danish\",\n \"dare\",\n \"dark\",\n \"darken\",\n \"darn\",\n \"dart\",\n \"dash\",\n \"data\",\n \"date\",\n \"david\",\n \"dawn\",\n \"day\",\n \"dead\",\n \"deadly\",\n \"deaf\",\n \"deal\",\n \"dealer\",\n \"dean\",\n \"dear\",\n \"death\",\n \"debate\",\n \"debit\",\n \"debris\",\n \"debt\",\n \"debtor\",\n \"decade\",\n \"decay\",\n \"decent\",\n \"decide\",\n \"deck\",\n \"decor\",\n \"decree\",\n \"deduce\",\n \"deed\",\n \"deep\",\n \"deeply\",\n \"deer\",\n \"defeat\",\n \"defect\",\n \"defend\",\n \"defer\",\n \"define\",\n \"defy\",\n \"degree\",\n \"deity\",\n \"delay\",\n \"delete\",\n \"delhi\",\n \"delta\",\n \"demand\",\n \"demise\",\n \"demo\",\n \"demure\",\n \"denial\",\n \"denote\",\n \"dense\",\n \"dental\",\n \"deny\",\n \"depart\",\n \"depend\",\n \"depict\",\n \"deploy\",\n \"depot\",\n \"depth\",\n \"deputy\",\n \"derive\",\n \"desert\",\n \"design\",\n \"desire\",\n \"desist\",\n \"desk\",\n \"detail\",\n \"detect\",\n \"deter\",\n \"detest\",\n \"detour\",\n \"device\",\n \"devise\",\n \"devoid\",\n \"devote\",\n \"devour\",\n \"dial\",\n \"diana\",\n \"diary\",\n \"dice\",\n \"dictum\",\n \"did\",\n \"die\",\n \"diesel\",\n \"diet\",\n \"differ\",\n \"dig\",\n \"digest\",\n \"digit\",\n \"dine\",\n \"dinghy\",\n \"dinner\",\n \"diode\",\n \"dip\",\n \"dire\",\n \"direct\",\n \"dirt\",\n \"dirty\",\n \"disc\",\n \"disco\",\n \"dish\",\n \"disk\",\n \"dismal\",\n \"dispel\",\n \"ditch\",\n \"dive\",\n \"divert\",\n \"divide\",\n \"divine\",\n \"dizzy\",\n \"docile\",\n \"dock\",\n \"doctor\",\n \"dog\",\n \"dogma\",\n \"dole\",\n \"doll\",\n \"dollar\",\n \"dolly\",\n \"domain\",\n \"dome\",\n \"domino\",\n \"donate\",\n \"done\",\n \"donkey\",\n \"donor\",\n \"doom\",\n \"door\",\n \"dorsal\",\n \"dose\",\n \"dot\",\n \"double\",\n \"doubt\",\n \"dough\",\n \"dour\",\n \"dove\",\n \"down\",\n \"dozen\",\n \"draft\",\n \"drag\",\n \"dragon\",\n \"drain\",\n \"drama\",\n \"drank\",\n \"draw\",\n \"drawer\",\n \"dread\",\n \"dream\",\n \"dreary\",\n \"dress\",\n \"drew\",\n \"dried\",\n \"drift\",\n \"drill\",\n \"drink\",\n \"drip\",\n \"drive\",\n \"driver\",\n \"drop\",\n \"drove\",\n \"drown\",\n \"drug\",\n \"drum\",\n \"drunk\",\n \"dry\",\n \"dual\",\n \"duck\",\n \"duct\",\n \"due\",\n \"duel\",\n \"duet\",\n \"duke\",\n \"dull\",\n \"duly\",\n \"dumb\",\n \"dummy\",\n \"dump\",\n \"dune\",\n \"dung\",\n \"duress\",\n \"during\",\n \"dusk\",\n \"dust\",\n \"dusty\",\n \"dutch\",\n \"duty\",\n \"dwarf\",\n \"dwell\",\n \"dyer\",\n \"dying\",\n \"dynamo\",\n \"each\",\n \"eager\",\n \"eagle\",\n \"ear\",\n \"earl\",\n \"early\",\n \"earn\",\n \"earth\",\n \"ease\",\n \"easel\",\n \"easily\",\n \"east\",\n \"easter\",\n \"easy\",\n \"eat\",\n \"eaten\",\n \"eater\",\n \"echo\",\n \"eddy\",\n \"eden\",\n \"edge\",\n \"edible\",\n \"edict\",\n \"edit\",\n \"editor\",\n \"eel\",\n \"eerie\",\n \"eerily\",\n \"effect\",\n \"effort\",\n \"egg\",\n \"ego\",\n \"eight\",\n \"eighth\",\n \"eighty\",\n \"either\",\n \"elbow\",\n \"elder\",\n \"eldest\",\n \"elect\",\n \"eleven\",\n \"elicit\",\n \"elite\",\n \"else\",\n \"elude\",\n \"elves\",\n \"embark\",\n \"emblem\",\n \"embryo\",\n \"emerge\",\n \"emit\",\n \"empire\",\n \"employ\",\n \"empty\",\n \"enable\",\n \"enamel\",\n \"end\",\n \"endure\",\n \"enemy\",\n \"energy\",\n \"engage\",\n \"engine\",\n \"enjoy\",\n \"enlist\",\n \"enough\",\n \"ensure\",\n \"entail\",\n \"enter\",\n \"entire\",\n \"entry\",\n \"envoy\",\n \"envy\",\n \"enzyme\",\n \"epic\",\n \"epoch\",\n \"equal\",\n \"equate\",\n \"equip\",\n \"equity\",\n \"era\",\n \"erect\",\n \"eric\",\n \"erode\",\n \"erotic\",\n \"errant\",\n \"error\",\n \"escape\",\n \"escort\",\n \"essay\",\n \"essex\",\n \"estate\",\n \"esteem\",\n \"ethic\",\n \"ethnic\",\n \"europe\",\n \"evade\",\n \"eve\",\n \"even\",\n \"event\",\n \"ever\",\n \"every\",\n \"evict\",\n \"evil\",\n \"evoke\",\n \"evolve\",\n \"exact\",\n \"exam\",\n \"exceed\",\n \"excel\",\n \"except\",\n \"excess\",\n \"excise\",\n \"excite\",\n \"excuse\",\n \"exempt\",\n \"exert\",\n \"exile\",\n \"exist\",\n \"exit\",\n \"exodus\",\n \"exotic\",\n \"expand\",\n \"expect\",\n \"expert\",\n \"expire\",\n \"export\",\n \"expose\",\n \"extend\",\n \"extra\",\n \"eye\",\n \"eyed\",\n \"fabric\",\n \"face\",\n \"facial\",\n \"fact\",\n \"factor\",\n \"fade\",\n \"fail\",\n \"faint\",\n \"fair\",\n \"fairly\",\n \"fairy\",\n \"faith\",\n \"fake\",\n \"falcon\",\n \"fall\",\n \"false\",\n \"falter\",\n \"fame\",\n \"family\",\n \"famine\",\n \"famous\",\n \"fan\",\n \"fancy\",\n \"far\",\n \"farce\",\n \"fare\",\n \"farm\",\n \"farmer\",\n \"fast\",\n \"fasten\",\n \"faster\",\n \"fat\",\n \"fatal\",\n \"fate\",\n \"father\",\n \"fatty\",\n \"fault\",\n \"faulty\",\n \"fauna\",\n \"fear\",\n \"feast\",\n \"feat\",\n \"fed\",\n \"fee\",\n \"feeble\",\n \"feed\",\n \"feel\",\n \"feet\",\n \"fell\",\n \"fellow\",\n \"felt\",\n \"female\",\n \"fence\",\n \"fend\",\n \"ferry\",\n \"fetal\",\n \"fetch\",\n \"feudal\",\n \"fever\",\n \"few\",\n \"fewer\",\n \"fiasco\",\n \"fiddle\",\n \"field\",\n \"fiend\",\n \"fierce\",\n \"fiery\",\n \"fifth\",\n \"fifty\",\n \"fig\",\n \"fight\",\n \"figure\",\n \"file\",\n \"fill\",\n \"filled\",\n \"filler\",\n \"film\",\n \"filter\",\n \"filth\",\n \"filthy\",\n \"final\",\n \"finale\",\n \"find\",\n \"fine\",\n \"finery\",\n \"finger\",\n \"finish\",\n \"finite\",\n \"fire\",\n \"firm\",\n \"firmly\",\n \"first\",\n \"fiscal\",\n \"fish\",\n \"fisher\",\n \"fist\",\n \"fit\",\n \"fitful\",\n \"five\",\n \"fix\",\n \"flag\",\n \"flair\",\n \"flak\",\n \"flame\",\n \"flank\",\n \"flap\",\n \"flare\",\n \"flash\",\n \"flask\",\n \"flat\",\n \"flavor\",\n \"flaw\",\n \"fled\",\n \"flee\",\n \"fleece\",\n \"fleet\",\n \"flesh\",\n \"fleshy\",\n \"flew\",\n \"flick\",\n \"flight\",\n \"flimsy\",\n \"flint\",\n \"flirt\",\n \"float\",\n \"flock\",\n \"flood\",\n \"floor\",\n \"floppy\",\n \"flora\",\n \"floral\",\n \"flour\",\n \"flow\",\n \"flower\",\n \"fluent\",\n \"fluffy\",\n \"fluid\",\n \"flung\",\n \"flurry\",\n \"flush\",\n \"flute\",\n \"flux\",\n \"fly\",\n \"flyer\",\n \"foal\",\n \"foam\",\n \"focal\",\n \"focus\",\n \"fog\",\n \"foil\",\n \"fold\",\n \"folk\",\n \"follow\",\n \"folly\",\n \"fond\",\n \"fondly\",\n \"font\",\n \"food\",\n \"fool\",\n \"foot\",\n \"for\",\n \"forbid\",\n \"force\",\n \"ford\",\n \"forest\",\n \"forge\",\n \"forget\",\n \"fork\",\n \"form\",\n \"formal\",\n \"format\",\n \"former\",\n \"fort\",\n \"forth\",\n \"forty\",\n \"forum\",\n \"fossil\",\n \"foster\",\n \"foul\",\n \"found\",\n \"four\",\n \"fourth\",\n \"fox\",\n \"foyer\",\n \"frail\",\n \"frame\",\n \"franc\",\n \"france\",\n \"frank\",\n \"fraud\",\n \"fred\",\n \"free\",\n \"freed\",\n \"freely\",\n \"freeze\",\n \"french\",\n \"frenzy\",\n \"fresh\",\n \"friar\",\n \"friday\",\n \"fridge\",\n \"fried\",\n \"friend\",\n \"fright\",\n \"fringe\",\n \"frock\",\n \"frog\",\n \"from\",\n \"front\",\n \"frost\",\n \"frosty\",\n \"frown\",\n \"frozen\",\n \"frugal\",\n \"fruit\",\n \"fry\",\n \"fudge\",\n \"fuel\",\n \"full\",\n \"fully\",\n \"fumes\",\n \"fun\",\n \"fund\",\n \"funny\",\n \"fur\",\n \"furry\",\n \"fury\",\n \"fuse\",\n \"fusion\",\n \"fuss\",\n \"fussy\",\n \"futile\",\n \"future\",\n \"fuzzy\",\n \"gadget\",\n \"gain\",\n \"gala\",\n \"galaxy\",\n \"gale\",\n \"gall\",\n \"galley\",\n \"gallon\",\n \"gallop\",\n \"gamble\",\n \"game\",\n \"gamma\",\n \"gandhi\",\n \"gang\",\n \"gap\",\n \"garage\",\n \"garden\",\n \"garlic\",\n \"gas\",\n \"gasp\",\n \"gate\",\n \"gather\",\n \"gauge\",\n \"gaunt\",\n \"gave\",\n \"gaze\",\n \"gear\",\n \"geese\",\n \"gem\",\n \"gemini\",\n \"gender\",\n \"gene\",\n \"geneva\",\n \"genial\",\n \"genius\",\n \"genre\",\n \"gentle\",\n \"gently\",\n \"gentry\",\n \"genus\",\n \"george\",\n \"germ\",\n \"get\",\n \"ghetto\",\n \"ghost\",\n \"giant\",\n \"gift\",\n \"giggle\",\n \"gill\",\n \"gilt\",\n \"ginger\",\n \"girl\",\n \"give\",\n \"given\",\n \"glad\",\n \"glade\",\n \"glance\",\n \"gland\",\n \"glare\",\n \"glass\",\n \"glassy\",\n \"gleam\",\n \"glee\",\n \"glide\",\n \"global\",\n \"globe\",\n \"gloom\",\n \"gloomy\",\n \"gloria\",\n \"glory\",\n \"gloss\",\n \"glossy\",\n \"glove\",\n \"glow\",\n \"glue\",\n \"gnat\",\n \"gnu\",\n \"goal\",\n \"goat\",\n \"gold\",\n \"golden\",\n \"golf\",\n \"gone\",\n \"gong\",\n \"goo\",\n \"good\",\n \"goose\",\n \"gore\",\n \"gorge\",\n \"gory\",\n \"gosh\",\n \"gospel\",\n \"gossip\",\n \"got\",\n \"gothic\",\n \"govern\",\n \"gown\",\n \"grab\",\n \"grace\",\n \"grade\",\n \"grail\",\n \"grain\",\n \"grand\",\n \"grant\",\n \"grape\",\n \"graph\",\n \"grasp\",\n \"grass\",\n \"grassy\",\n \"grate\",\n \"grave\",\n \"gravel\",\n \"gravy\",\n \"grease\",\n \"greasy\",\n \"great\",\n \"greece\",\n \"greed\",\n \"greedy\",\n \"greek\",\n \"green\",\n \"greet\",\n \"grew\",\n \"grey\",\n \"grid\",\n \"grief\",\n \"grill\",\n \"grim\",\n \"grin\",\n \"grind\",\n \"grip\",\n \"grit\",\n \"gritty\",\n \"groan\",\n \"groin\",\n \"groom\",\n \"groove\",\n \"gross\",\n \"ground\",\n \"group\",\n \"grove\",\n \"grow\",\n \"grown\",\n \"growth\",\n \"grudge\",\n \"grunt\",\n \"guard\",\n \"guess\",\n \"guest\",\n \"guide\",\n \"guild\",\n \"guilt\",\n \"guilty\",\n \"guise\",\n \"guitar\",\n \"gulf\",\n \"gully\",\n \"gun\",\n \"gunman\",\n \"guru\",\n \"gut\",\n \"guy\",\n \"gypsy\",\n \"habit\",\n \"hack\",\n \"had\",\n \"hail\",\n \"hair\",\n \"hairy\",\n \"haiti\",\n \"hale\",\n \"half\",\n \"hall\",\n \"halt\",\n \"hamlet\",\n \"hammer\",\n \"hand\",\n \"handle\",\n \"handy\",\n \"hang\",\n \"hangar\",\n \"hanoi\",\n \"happen\",\n \"happy\",\n \"harass\",\n \"harbor\",\n \"hard\",\n \"harder\",\n \"hardly\",\n \"hare\",\n \"harem\",\n \"harm\",\n \"harp\",\n \"harry\",\n \"harsh\",\n \"has\",\n \"hash\",\n \"hassle\",\n \"haste\",\n \"hasten\",\n \"hasty\",\n \"hat\",\n \"hatch\",\n \"hate\",\n \"haul\",\n \"haunt\",\n \"havana\",\n \"have\",\n \"haven\",\n \"havoc\",\n \"hawaii\",\n \"hawk\",\n \"hay\",\n \"hazard\",\n \"haze\",\n \"hazel\",\n \"hazy\",\n \"head\",\n \"heal\",\n \"health\",\n \"heap\",\n \"hear\",\n \"heard\",\n \"heart\",\n \"hearth\",\n \"hearty\",\n \"heat\",\n \"heater\",\n \"heaven\",\n \"heavy\",\n \"hebrew\",\n \"heck\",\n \"hectic\",\n \"hedge\",\n \"heel\",\n \"hefty\",\n \"height\",\n \"heir\",\n \"held\",\n \"helium\",\n \"helix\",\n \"hell\",\n \"hello\",\n \"helm\",\n \"helmet\",\n \"help\",\n \"hemp\",\n \"hence\",\n \"henry\",\n \"her\",\n \"herald\",\n \"herb\",\n \"herd\",\n \"here\",\n \"hereby\",\n \"hermes\",\n \"hernia\",\n \"hero\",\n \"heroic\",\n \"heroin\",\n \"hey\",\n \"heyday\",\n \"hick\",\n \"hidden\",\n \"hide\",\n \"high\",\n \"higher\",\n \"highly\",\n \"hill\",\n \"him\",\n \"hind\",\n \"hinder\",\n \"hint\",\n \"hippie\",\n \"hire\",\n \"his\",\n \"hiss\",\n \"hit\",\n \"hive\",\n \"hoard\",\n \"hoarse\",\n \"hobby\",\n \"hockey\",\n \"hold\",\n \"holder\",\n \"hole\",\n \"hollow\",\n \"holly\",\n \"holy\",\n \"home\",\n \"honest\",\n \"honey\",\n \"hood\",\n \"hook\",\n \"hope\",\n \"horn\",\n \"horrid\",\n \"horror\",\n \"horse\",\n \"hose\",\n \"host\",\n \"hot\",\n \"hotel\",\n \"hound\",\n \"hour\",\n \"house\",\n \"hover\",\n \"how\",\n \"huge\",\n \"hull\",\n \"human\",\n \"humane\",\n \"humble\",\n \"humid\",\n \"hung\",\n \"hunger\",\n \"hungry\",\n \"hunt\",\n \"hurdle\",\n \"hurl\",\n \"hurry\",\n \"hurt\",\n \"hush\",\n \"hut\",\n \"hybrid\",\n \"hymn\",\n \"hyphen\",\n \"ice\",\n \"icing\",\n \"icon\",\n \"idaho\",\n \"idea\",\n \"ideal\",\n \"idiom\",\n \"idiot\",\n \"idle\",\n \"idly\",\n \"idol\",\n \"ignite\",\n \"ignore\",\n \"ill\",\n \"image\",\n \"immune\",\n \"impact\",\n \"imply\",\n \"import\",\n \"impose\",\n \"inca\",\n \"incest\",\n \"inch\",\n \"income\",\n \"incur\",\n \"indeed\",\n \"index\",\n \"india\",\n \"indian\",\n \"indoor\",\n \"induce\",\n \"inept\",\n \"inert\",\n \"infant\",\n \"infect\",\n \"infer\",\n \"influx\",\n \"inform\",\n \"inject\",\n \"injure\",\n \"injury\",\n \"ink\",\n \"inlaid\",\n \"inland\",\n \"inlet\",\n \"inmate\",\n \"inn\",\n \"innate\",\n \"inner\",\n \"input\",\n \"insane\",\n \"insect\",\n \"insert\",\n \"inset\",\n \"inside\",\n \"insist\",\n \"insult\",\n \"insure\",\n \"intact\",\n \"intake\",\n \"intend\",\n \"inter\",\n \"into\",\n \"invade\",\n \"invent\",\n \"invest\",\n \"invite\",\n \"invoke\",\n \"inward\",\n \"iowa\",\n \"iran\",\n \"iraq\",\n \"irish\",\n \"iron\",\n \"ironic\",\n \"irony\",\n \"isaac\",\n \"isabel\",\n \"island\",\n \"isle\",\n \"israel\",\n \"issue\",\n \"italy\",\n \"itch\",\n \"item\",\n \"itself\",\n \"ivan\",\n \"ivory\",\n \"jack\",\n \"jacket\",\n \"jacob\",\n \"jade\",\n \"jaguar\",\n \"jail\",\n \"james\",\n \"jane\",\n \"japan\",\n \"jargon\",\n \"java\",\n \"jaw\",\n \"jazz\",\n \"jeep\",\n \"jelly\",\n \"jerky\",\n \"jest\",\n \"jet\",\n \"jewel\",\n \"jewish\",\n \"jim\",\n \"job\",\n \"jock\",\n \"jockey\",\n \"joe\",\n \"john\",\n \"join\",\n \"joint\",\n \"joke\",\n \"jolly\",\n \"jolt\",\n \"jordan\",\n \"joseph\",\n \"joy\",\n \"joyful\",\n \"joyous\",\n \"judge\",\n \"judy\",\n \"juice\",\n \"juicy\",\n \"july\",\n \"jumble\",\n \"jumbo\",\n \"jump\",\n \"june\",\n \"jungle\",\n \"junior\",\n \"junk\",\n \"junta\",\n \"jury\",\n \"just\",\n \"kansas\",\n \"karate\",\n \"karl\",\n \"keel\",\n \"keen\",\n \"keep\",\n \"keeper\",\n \"kenya\",\n \"kept\",\n \"kernel\",\n \"kettle\",\n \"key\",\n \"khaki\",\n \"kick\",\n \"kid\",\n \"kidnap\",\n \"kidney\",\n \"kill\",\n \"killer\",\n \"kin\",\n \"kind\",\n \"kindly\",\n \"king\",\n \"kiss\",\n \"kite\",\n \"kitten\",\n \"knack\",\n \"knee\",\n \"kneel\",\n \"knew\",\n \"knife\",\n \"knight\",\n \"knit\",\n \"knob\",\n \"knock\",\n \"knot\",\n \"know\",\n \"known\",\n \"koran\",\n \"korea\",\n \"kuwait\",\n \"label\",\n \"lace\",\n \"lack\",\n \"lad\",\n \"ladder\",\n \"laden\",\n \"lady\",\n \"lagoon\",\n \"laity\",\n \"lake\",\n \"lamb\",\n \"lame\",\n \"lamp\",\n \"lance\",\n \"land\",\n \"lane\",\n \"lap\",\n \"lapse\",\n \"large\",\n \"larval\",\n \"laser\",\n \"last\",\n \"latch\",\n \"late\",\n \"lately\",\n \"latent\",\n \"later\",\n \"latest\",\n \"latin\",\n \"latter\",\n \"laugh\",\n \"launch\",\n \"lava\",\n \"lavish\",\n \"law\",\n \"lawful\",\n \"lawn\",\n \"lawyer\",\n \"lay\",\n \"layer\",\n \"layman\",\n \"lazy\",\n \"lead\",\n \"leader\",\n \"leaf\",\n \"leafy\",\n \"league\",\n \"leak\",\n \"leaky\",\n \"lean\",\n \"leap\",\n \"learn\",\n \"lease\",\n \"leash\",\n \"least\",\n \"leave\",\n \"led\",\n \"ledge\",\n \"left\",\n \"leg\",\n \"legacy\",\n \"legal\",\n \"legend\",\n \"legion\",\n \"lemon\",\n \"lend\",\n \"length\",\n \"lens\",\n \"lent\",\n \"leo\",\n \"leper\",\n \"lesion\",\n \"less\",\n \"lessen\",\n \"lesser\",\n \"lesson\",\n \"lest\",\n \"let\",\n \"lethal\",\n \"letter\",\n \"level\",\n \"lever\",\n \"levy\",\n \"lewis\",\n \"liable\",\n \"liar\",\n \"libel\",\n \"libya\",\n \"lice\",\n \"lick\",\n \"lid\",\n \"lie\",\n \"lied\",\n \"lier\",\n \"life\",\n \"lift\",\n \"light\",\n \"like\",\n \"likely\",\n \"limb\",\n \"lime\",\n \"limit\",\n \"limp\",\n \"line\",\n \"linear\",\n \"linen\",\n \"linger\",\n \"link\",\n \"lint\",\n \"lion\",\n \"lip\",\n \"liquid\",\n \"liquor\",\n \"list\",\n \"listen\",\n \"lit\",\n \"live\",\n \"lively\",\n \"liver\",\n \"liz\",\n \"lizard\",\n \"load\",\n \"loaf\",\n \"loan\",\n \"lobby\",\n \"lobe\",\n \"local\",\n \"locate\",\n \"lock\",\n \"locus\",\n \"lodge\",\n \"loft\",\n \"lofty\",\n \"log\",\n \"logic\",\n \"logo\",\n \"london\",\n \"lone\",\n \"lonely\",\n \"long\",\n \"longer\",\n \"look\",\n \"loop\",\n \"loose\",\n \"loosen\",\n \"loot\",\n \"lord\",\n \"lorry\",\n \"lose\",\n \"loss\",\n \"lost\",\n \"lot\",\n \"lotion\",\n \"lotus\",\n \"loud\",\n \"loudly\",\n \"lounge\",\n \"lousy\",\n \"love\",\n \"lovely\",\n \"lover\",\n \"low\",\n \"lower\",\n \"lowest\",\n \"loyal\",\n \"lucid\",\n \"luck\",\n \"lucky\",\n \"lucy\",\n \"lull\",\n \"lump\",\n \"lumpy\",\n \"lunacy\",\n \"lunar\",\n \"lunch\",\n \"lung\",\n \"lure\",\n \"lurid\",\n \"lush\",\n \"lust\",\n \"lute\",\n \"luther\",\n \"luxury\",\n \"lying\",\n \"lymph\",\n \"lynch\",\n \"lyric\",\n \"macho\",\n \"macro\",\n \"mad\",\n \"madam\",\n \"made\",\n \"mafia\",\n \"magic\",\n \"magma\",\n \"magnet\",\n \"magnum\",\n \"magpie\",\n \"maid\",\n \"maiden\",\n \"mail\",\n \"main\",\n \"mainly\",\n \"major\",\n \"make\",\n \"maker\",\n \"male\",\n \"malice\",\n \"mall\",\n \"malt\",\n \"mammal\",\n \"manage\",\n \"mane\",\n \"mania\",\n \"manic\",\n \"manner\",\n \"manor\",\n \"mantle\",\n \"manual\",\n \"manure\",\n \"many\",\n \"map\",\n \"maple\",\n \"marble\",\n \"march\",\n \"mare\",\n \"margin\",\n \"maria\",\n \"marina\",\n \"mark\",\n \"market\",\n \"marry\",\n \"mars\",\n \"marsh\",\n \"martin\",\n \"martyr\",\n \"mary\",\n \"mask\",\n \"mason\",\n \"mass\",\n \"mast\",\n \"master\",\n \"mat\",\n \"match\",\n \"mate\",\n \"matrix\",\n \"matter\",\n \"mature\",\n \"maxim\",\n \"may\",\n \"maybe\",\n \"mayor\",\n \"maze\",\n \"mead\",\n \"meadow\",\n \"meal\",\n \"mean\",\n \"meant\",\n \"meat\",\n \"medal\",\n \"media\",\n \"median\",\n \"medic\",\n \"medium\",\n \"meet\",\n \"mellow\",\n \"melody\",\n \"melon\",\n \"melt\",\n \"member\",\n \"memo\",\n \"memory\",\n \"menace\",\n \"mend\",\n \"mental\",\n \"mentor\",\n \"menu\",\n \"mercy\",\n \"mere\",\n \"merely\",\n \"merge\",\n \"merger\",\n \"merit\",\n \"merry\",\n \"mesh\",\n \"mess\",\n \"messy\",\n \"met\",\n \"metal\",\n \"meter\",\n \"method\",\n \"methyl\",\n \"metric\",\n \"metro\",\n \"mexico\",\n \"miami\",\n \"mickey\",\n \"mid\",\n \"midday\",\n \"middle\",\n \"midst\",\n \"midway\",\n \"might\",\n \"mighty\",\n \"mild\",\n \"mildew\",\n \"mile\",\n \"milk\",\n \"milky\",\n \"mill\",\n \"mimic\",\n \"mince\",\n \"mind\",\n \"mine\",\n \"mini\",\n \"mink\",\n \"minor\",\n \"mint\",\n \"minus\",\n \"minute\",\n \"mire\",\n \"mirror\",\n \"mirth\",\n \"misery\",\n \"miss\",\n \"mist\",\n \"misty\",\n \"mite\",\n \"mix\",\n \"moan\",\n \"moat\",\n \"mob\",\n \"mobile\",\n \"mock\",\n \"mode\",\n \"model\",\n \"modem\",\n \"modern\",\n \"modest\",\n \"modify\",\n \"module\",\n \"moist\",\n \"molar\",\n \"mold\",\n \"mole\",\n \"molten\",\n \"moment\",\n \"monday\",\n \"money\",\n \"monk\",\n \"monkey\",\n \"month\",\n \"mood\",\n \"moody\",\n \"moon\",\n \"moor\",\n \"moral\",\n \"morale\",\n \"morbid\",\n \"more\",\n \"morgue\",\n \"mortal\",\n \"mortar\",\n \"mosaic\",\n \"moscow\",\n \"moses\",\n \"mosque\",\n \"moss\",\n \"most\",\n \"mostly\",\n \"moth\",\n \"mother\",\n \"motion\",\n \"motive\",\n \"motor\",\n \"mount\",\n \"mourn\",\n \"mouse\",\n \"mouth\",\n \"move\",\n \"movie\",\n \"mrs\",\n \"much\",\n \"muck\",\n \"mucus\",\n \"mud\",\n \"muddle\",\n \"muddy\",\n \"mule\",\n \"mummy\",\n \"munich\",\n \"murder\",\n \"murky\",\n \"murmur\",\n \"muscle\",\n \"museum\",\n \"music\",\n \"mussel\",\n \"must\",\n \"mutant\",\n \"mute\",\n \"mutiny\",\n \"mutter\",\n \"mutton\",\n \"mutual\",\n \"muzzle\",\n \"myopic\",\n \"myriad\",\n \"myself\",\n \"mystic\",\n \"myth\",\n \"nadir\",\n \"nail\",\n \"naked\",\n \"name\",\n \"namely\",\n \"nape\",\n \"napkin\",\n \"naples\",\n \"narrow\",\n \"nasal\",\n \"nasty\",\n \"nathan\",\n \"nation\",\n \"native\",\n \"nature\",\n \"nausea\",\n \"naval\",\n \"nave\",\n \"navy\",\n \"near\",\n \"nearer\",\n \"nearly\",\n \"neat\",\n \"neatly\",\n \"neck\",\n \"need\",\n \"needle\",\n \"needy\",\n \"negate\",\n \"neon\",\n \"nepal\",\n \"nephew\",\n \"nerve\",\n \"nest\",\n \"net\",\n \"neural\",\n \"never\",\n \"newly\",\n \"next\",\n \"nice\",\n \"nicely\",\n \"niche\",\n \"nickel\",\n \"niece\",\n \"night\",\n \"nile\",\n \"nimble\",\n \"nine\",\n \"ninety\",\n \"ninth\",\n \"nobel\",\n \"noble\",\n \"nobody\",\n \"node\",\n \"noise\",\n \"noisy\",\n \"none\",\n \"noon\",\n \"nor\",\n \"norm\",\n \"normal\",\n \"north\",\n \"norway\",\n \"nose\",\n \"nosy\",\n \"not\",\n \"note\",\n \"notice\",\n \"notify\",\n \"notion\",\n \"noun\",\n \"novel\",\n \"novice\",\n \"now\",\n \"nozzle\",\n \"null\",\n \"numb\",\n \"number\",\n \"nurse\",\n \"nut\",\n \"nylon\",\n \"nymph\",\n \"oak\",\n \"oar\",\n \"oasis\",\n \"oath\",\n \"obese\",\n \"obey\",\n \"object\",\n \"oblige\",\n \"oboe\",\n \"obtain\",\n \"obtuse\",\n \"occult\",\n \"occupy\",\n \"occur\",\n \"ocean\",\n \"octave\",\n \"odd\",\n \"off\",\n \"offend\",\n \"offer\",\n \"office\",\n \"offset\",\n \"often\",\n \"ohio\",\n \"oil\",\n \"oily\",\n \"okay\",\n \"old\",\n \"older\",\n \"oldest\",\n \"olive\",\n \"omega\",\n \"omen\",\n \"omit\",\n \"once\",\n \"one\",\n \"onion\",\n \"only\",\n \"onset\",\n \"onto\",\n \"onus\",\n \"onward\",\n \"opaque\",\n \"open\",\n \"openly\",\n \"opera\",\n \"opium\",\n \"oppose\",\n \"optic\",\n \"option\",\n \"oracle\",\n \"oral\",\n \"orange\",\n \"orbit\",\n \"orchid\",\n \"ordeal\",\n \"order\",\n \"organ\",\n \"orgasm\",\n \"orient\",\n \"origin\",\n \"ornate\",\n \"orphan\",\n \"oscar\",\n \"other\",\n \"otter\",\n \"ought\",\n \"ounce\",\n \"our\",\n \"out\",\n \"outer\",\n \"output\",\n \"outset\",\n \"oval\",\n \"oven\",\n \"over\",\n \"overt\",\n \"owe\",\n \"owing\",\n \"owl\",\n \"own\",\n \"owner\",\n \"oxford\",\n \"oxide\",\n \"oxygen\",\n \"oyster\",\n \"ozone\",\n \"pace\",\n \"pack\",\n \"packet\",\n \"pact\",\n \"pad\",\n \"paddle\",\n \"paddy\",\n \"pagan\",\n \"page\",\n \"paid\",\n \"pain\",\n \"paint\",\n \"pair\",\n \"palace\",\n \"pale\",\n \"palm\",\n \"pan\",\n \"panama\",\n \"panel\",\n \"panic\",\n \"papa\",\n \"papal\",\n \"paper\",\n \"parade\",\n \"parcel\",\n \"pardon\",\n \"parent\",\n \"paris\",\n \"parish\",\n \"park\",\n \"parody\",\n \"parrot\",\n \"part\",\n \"partly\",\n \"party\",\n \"pascal\",\n \"pass\",\n \"past\",\n \"paste\",\n \"pastel\",\n \"pastor\",\n \"pastry\",\n \"pat\",\n \"patch\",\n \"patent\",\n \"path\",\n \"patio\",\n \"patrol\",\n \"patron\",\n \"paul\",\n \"pause\",\n \"pave\",\n \"paw\",\n \"pawn\",\n \"pay\",\n \"peace\",\n \"peach\",\n \"peak\",\n \"pear\",\n \"pearl\",\n \"pedal\",\n \"peel\",\n \"peer\",\n \"peking\",\n \"pelvic\",\n \"pelvis\",\n \"pen\",\n \"penal\",\n \"pence\",\n \"pencil\",\n \"penny\",\n \"people\",\n \"pepper\",\n \"per\",\n \"perch\",\n \"peril\",\n \"period\",\n \"perish\",\n \"permit\",\n \"person\",\n \"peru\",\n \"pest\",\n \"pet\",\n \"peter\",\n \"petite\",\n \"petrol\",\n \"petty\",\n \"phase\",\n \"philip\",\n \"phone\",\n \"photo\",\n \"phrase\",\n \"piano\",\n \"pick\",\n \"picket\",\n \"picnic\",\n \"pie\",\n \"piece\",\n \"pier\",\n \"pierce\",\n \"piety\",\n \"pig\",\n \"pigeon\",\n \"piggy\",\n \"pike\",\n \"pile\",\n \"pill\",\n \"pillar\",\n \"pillow\",\n \"pilot\",\n \"pin\",\n \"pinch\",\n \"pine\",\n \"pink\",\n \"pint\",\n \"pious\",\n \"pipe\",\n \"pirate\",\n \"piss\",\n \"pistol\",\n \"piston\",\n \"pit\",\n \"pitch\",\n \"pity\",\n \"pivot\",\n \"pixel\",\n \"pizza\",\n \"place\",\n \"placid\",\n \"plague\",\n \"plain\",\n \"plan\",\n \"plane\",\n \"planet\",\n \"plank\",\n \"plant\",\n \"plasma\",\n \"plate\",\n \"play\",\n \"player\",\n \"plea\",\n \"plead\",\n \"please\",\n \"pledge\",\n \"plenty\",\n \"plight\",\n \"plot\",\n \"plough\",\n \"ploy\",\n \"plug\",\n \"plum\",\n \"plump\",\n \"plunge\",\n \"plural\",\n \"plus\",\n \"plush\",\n \"pocket\",\n \"poem\",\n \"poet\",\n \"poetic\",\n \"poetry\",\n \"point\",\n \"poison\",\n \"poland\",\n \"polar\",\n \"pole\",\n \"police\",\n \"policy\",\n \"polish\",\n \"polite\",\n \"poll\",\n \"pollen\",\n \"polo\",\n \"pond\",\n \"ponder\",\n \"pony\",\n \"pool\",\n \"poor\",\n \"poorly\",\n \"pop\",\n \"poppy\",\n \"pore\",\n \"pork\",\n \"port\",\n \"portal\",\n \"pose\",\n \"posh\",\n \"post\",\n \"postal\",\n \"pot\",\n \"potato\",\n \"potent\",\n \"pouch\",\n \"pound\",\n \"pour\",\n \"powder\",\n \"power\",\n \"praise\",\n \"pray\",\n \"prayer\",\n \"preach\",\n \"prefer\",\n \"prefix\",\n \"press\",\n \"pretty\",\n \"price\",\n \"pride\",\n \"priest\",\n \"primal\",\n \"prime\",\n \"prince\",\n \"print\",\n \"prior\",\n \"prism\",\n \"prison\",\n \"privy\",\n \"prize\",\n \"probe\",\n \"profit\",\n \"prompt\",\n \"prone\",\n \"proof\",\n \"propel\",\n \"proper\",\n \"prose\",\n \"proton\",\n \"proud\",\n \"prove\",\n \"proven\",\n \"proxy\",\n \"prune\",\n \"pry\",\n \"psalm\",\n \"pseudo\",\n \"psyche\",\n \"pub\",\n \"public\",\n \"puff\",\n \"pull\",\n \"pulp\",\n \"pulpit\",\n \"pulsar\",\n \"pulse\",\n \"pump\",\n \"punch\",\n \"punish\",\n \"punk\",\n \"pupil\",\n \"puppet\",\n \"puppy\",\n \"pure\",\n \"purely\",\n \"purge\",\n \"purify\",\n \"purple\",\n \"purse\",\n \"pursue\",\n \"push\",\n \"pushy\",\n \"put\",\n \"putt\",\n \"puzzle\",\n \"quaint\",\n \"quake\",\n \"quarry\",\n \"quart\",\n \"quartz\",\n \"quebec\",\n \"queen\",\n \"queer\",\n \"query\",\n \"quest\",\n \"queue\",\n \"quick\",\n \"quid\",\n \"quiet\",\n \"quilt\",\n \"quirk\",\n \"quit\",\n \"quite\",\n \"quiver\",\n \"quiz\",\n \"quota\",\n \"quote\",\n \"rabbit\",\n \"race\",\n \"racial\",\n \"racism\",\n \"rack\",\n \"racket\",\n \"radar\",\n \"radio\",\n \"radish\",\n \"radius\",\n \"raffle\",\n \"raft\",\n \"rage\",\n \"raid\",\n \"rail\",\n \"rain\",\n \"rainy\",\n \"raise\",\n \"rake\",\n \"rally\",\n \"ramp\",\n \"random\",\n \"range\",\n \"rank\",\n \"ransom\",\n \"rape\",\n \"rapid\",\n \"rare\",\n \"rarely\",\n \"rarity\",\n \"rash\",\n \"rat\",\n \"rate\",\n \"rather\",\n \"ratify\",\n \"ratio\",\n \"rattle\",\n \"rave\",\n \"raven\",\n \"raw\",\n \"ray\",\n \"razor\",\n \"reach\",\n \"react\",\n \"read\",\n \"reader\",\n \"ready\",\n \"real\",\n \"really\",\n \"realm\",\n \"reap\",\n \"rear\",\n \"reason\",\n \"rebel\",\n \"recall\",\n \"recent\",\n \"recess\",\n \"recipe\",\n \"reckon\",\n \"record\",\n \"recoup\",\n \"rector\",\n \"red\",\n \"redeem\",\n \"redo\",\n \"reduce\",\n \"reed\",\n \"reef\",\n \"reek\",\n \"refer\",\n \"reform\",\n \"refuge\",\n \"refuse\",\n \"regal\",\n \"regard\",\n \"regent\",\n \"regime\",\n \"region\",\n \"regret\",\n \"reign\",\n \"reject\",\n \"relate\",\n \"relax\",\n \"relay\",\n \"relic\",\n \"relief\",\n \"relish\",\n \"rely\",\n \"remain\",\n \"remark\",\n \"remedy\",\n \"remind\",\n \"remit\",\n \"remote\",\n \"remove\",\n \"renal\",\n \"render\",\n \"rent\",\n \"rental\",\n \"repair\",\n \"repeal\",\n \"repeat\",\n \"repent\",\n \"reply\",\n \"report\",\n \"rescue\",\n \"resent\",\n \"reside\",\n \"resign\",\n \"resin\",\n \"resist\",\n \"resort\",\n \"rest\",\n \"result\",\n \"resume\",\n \"retail\",\n \"retain\",\n \"retina\",\n \"retire\",\n \"return\",\n \"reveal\",\n \"review\",\n \"revise\",\n \"revive\",\n \"revolt\",\n \"reward\",\n \"rex\",\n \"rhine\",\n \"rhino\",\n \"rhyme\",\n \"rhythm\",\n \"ribbon\",\n \"rice\",\n \"rich\",\n \"rick\",\n \"rid\",\n \"ride\",\n \"rider\",\n \"ridge\",\n \"rife\",\n \"rifle\",\n \"rift\",\n \"right\",\n \"rigid\",\n \"rile\",\n \"rim\",\n \"ring\",\n \"rinse\",\n \"riot\",\n \"ripe\",\n \"ripen\",\n \"ripple\",\n \"rise\",\n \"risk\",\n \"risky\",\n \"rite\",\n \"ritual\",\n \"ritz\",\n \"rival\",\n \"river\",\n \"road\",\n \"roar\",\n \"roast\",\n \"rob\",\n \"robe\",\n \"robert\",\n \"robin\",\n \"robot\",\n \"robust\",\n \"rock\",\n \"rocket\",\n \"rocky\",\n \"rod\",\n \"rode\",\n \"rodent\",\n \"rogue\",\n \"role\",\n \"roll\",\n \"roman\",\n \"rome\",\n \"roof\",\n \"room\",\n \"root\",\n \"rope\",\n \"rose\",\n \"rosy\",\n \"rot\",\n \"rotate\",\n \"rotor\",\n \"rotten\",\n \"rouge\",\n \"rough\",\n \"round\",\n \"route\",\n \"rover\",\n \"row\",\n \"royal\",\n \"rub\",\n \"rubber\",\n \"rubble\",\n \"ruby\",\n \"rudder\",\n \"rude\",\n \"rug\",\n \"rugby\",\n \"ruin\",\n \"rule\",\n \"ruler\",\n \"rumble\",\n \"rump\",\n \"run\",\n \"rune\",\n \"rung\",\n \"runway\",\n \"rural\",\n \"rush\",\n \"russia\",\n \"rust\",\n \"rustic\",\n \"rusty\",\n \"sack\",\n \"sacred\",\n \"sad\",\n \"saddle\",\n \"sadism\",\n \"sadly\",\n \"safari\",\n \"safe\",\n \"safely\",\n \"safer\",\n \"safety\",\n \"saga\",\n \"sage\",\n \"sahara\",\n \"said\",\n \"sail\",\n \"sailor\",\n \"saint\",\n \"sake\",\n \"salad\",\n \"salary\",\n \"sale\",\n \"saline\",\n \"saliva\",\n \"salmon\",\n \"saloon\",\n \"salt\",\n \"salty\",\n \"salute\",\n \"sam\",\n \"same\",\n \"sample\",\n \"sand\",\n \"sandy\",\n \"sane\",\n \"sash\",\n \"satin\",\n \"satire\",\n \"saturn\",\n \"sauce\",\n \"saucer\",\n \"saudi\",\n \"sauna\",\n \"savage\",\n \"save\",\n \"saw\",\n \"say\",\n \"scale\",\n \"scalp\",\n \"scan\",\n \"scant\",\n \"scar\",\n \"scarce\",\n \"scare\",\n \"scarf\",\n \"scary\",\n \"scene\",\n \"scenic\",\n \"scent\",\n \"school\",\n \"scold\",\n \"scope\",\n \"score\",\n \"scorn\",\n \"scotch\",\n \"scott\",\n \"scout\",\n \"scrap\",\n \"scrape\",\n \"scream\",\n \"screen\",\n \"screw\",\n \"script\",\n \"scroll\",\n \"scrub\",\n \"scum\",\n \"sea\",\n \"seal\",\n \"seam\",\n \"seaman\",\n \"search\",\n \"season\",\n \"seat\",\n \"second\",\n \"secret\",\n \"sect\",\n \"sector\",\n \"secure\",\n \"see\",\n \"seed\",\n \"seeing\",\n \"seek\",\n \"seem\",\n \"seize\",\n \"seldom\",\n \"select\",\n \"self\",\n \"sell\",\n \"seller\",\n \"semi\",\n \"senate\",\n \"send\",\n \"senile\",\n \"senior\",\n \"sense\",\n \"sensor\",\n \"sent\",\n \"sentry\",\n \"seoul\",\n \"sequel\",\n \"serene\",\n \"serial\",\n \"series\",\n \"sermon\",\n \"serum\",\n \"serve\",\n \"server\",\n \"set\",\n \"settle\",\n \"seven\",\n \"severe\",\n \"sew\",\n \"sewage\",\n \"shabby\",\n \"shade\",\n \"shadow\",\n \"shady\",\n \"shaft\",\n \"shaggy\",\n \"shah\",\n \"shake\",\n \"shaky\",\n \"shall\",\n \"sham\",\n \"shame\",\n \"shape\",\n \"share\",\n \"shark\",\n \"sharp\",\n \"shawl\",\n \"she\",\n \"shear\",\n \"sheen\",\n \"sheep\",\n \"sheer\",\n \"sheet\",\n \"shelf\",\n \"shell\",\n \"sherry\",\n \"shield\",\n \"shift\",\n \"shine\",\n \"shiny\",\n \"ship\",\n \"shire\",\n \"shirk\",\n \"shirt\",\n \"shiver\",\n \"shock\",\n \"shoe\",\n \"shook\",\n \"shoot\",\n \"shop\",\n \"shore\",\n \"short\",\n \"shot\",\n \"should\",\n \"shout\",\n \"show\",\n \"shower\",\n \"shrank\",\n \"shrewd\",\n \"shrill\",\n \"shrimp\",\n \"shrine\",\n \"shrink\",\n \"shrub\",\n \"shrug\",\n \"shut\",\n \"shy\",\n \"shyly\",\n \"sick\",\n \"side\",\n \"siege\",\n \"sigh\",\n \"sight\",\n \"sigma\",\n \"sign\",\n \"signal\",\n \"silent\",\n \"silk\",\n \"silken\",\n \"silky\",\n \"sill\",\n \"silly\",\n \"silo\",\n \"silver\",\n \"simple\",\n \"simply\",\n \"since\",\n \"sinful\",\n \"sing\",\n \"singer\",\n \"single\",\n \"sink\",\n \"sir\",\n \"sire\",\n \"siren\",\n \"sister\",\n \"sit\",\n \"site\",\n \"sitter\",\n \"six\",\n \"sixth\",\n \"sixty\",\n \"size\",\n \"sketch\",\n \"skill\",\n \"skin\",\n \"skinny\",\n \"skip\",\n \"skirt\",\n \"skull\",\n \"sky\",\n \"slab\",\n \"slack\",\n \"slain\",\n \"slam\",\n \"slang\",\n \"slap\",\n \"slat\",\n \"slate\",\n \"slave\",\n \"sleek\",\n \"sleep\",\n \"sleepy\",\n \"sleeve\",\n \"slice\",\n \"slick\",\n \"slid\",\n \"slide\",\n \"slight\",\n \"slim\",\n \"slimy\",\n \"sling\",\n \"slip\",\n \"slit\",\n \"slogan\",\n \"slope\",\n \"sloppy\",\n \"slot\",\n \"slow\",\n \"slowly\",\n \"slug\",\n \"slum\",\n \"slump\",\n \"smack\",\n \"small\",\n \"smart\",\n \"smash\",\n \"smear\",\n \"smell\",\n \"smelly\",\n \"smelt\",\n \"smile\",\n \"smite\",\n \"smoke\",\n \"smoky\",\n \"smooth\",\n \"smug\",\n \"snack\",\n \"snail\",\n \"snake\",\n \"snap\",\n \"snatch\",\n \"sneak\",\n \"snow\",\n \"snowy\",\n \"snug\",\n \"soak\",\n \"soap\",\n \"sober\",\n \"soccer\",\n \"social\",\n \"sock\",\n \"socket\",\n \"socks\",\n \"soda\",\n \"sodden\",\n \"sodium\",\n \"sofa\",\n \"soft\",\n \"soften\",\n \"softly\",\n \"soggy\",\n \"soil\",\n \"solar\",\n \"sold\",\n \"sole\",\n \"solely\",\n \"solemn\",\n \"solid\",\n \"solo\",\n \"solve\",\n \"some\",\n \"son\",\n \"sonar\",\n \"sonata\",\n \"song\",\n \"sonic\",\n \"sony\",\n \"soon\",\n \"sooner\",\n \"soot\",\n \"soothe\",\n \"sordid\",\n \"sore\",\n \"sorrow\",\n \"sorry\",\n \"sort\",\n \"soul\",\n \"sound\",\n \"soup\",\n \"sour\",\n \"source\",\n \"soviet\",\n \"sow\",\n \"space\",\n \"spade\",\n \"spain\",\n \"span\",\n \"spare\",\n \"spark\",\n \"sparse\",\n \"spasm\",\n \"spat\",\n \"spate\",\n \"speak\",\n \"spear\",\n \"speech\",\n \"speed\",\n \"speedy\",\n \"spell\",\n \"spend\",\n \"sphere\",\n \"spice\",\n \"spicy\",\n \"spider\",\n \"spiky\",\n \"spill\",\n \"spin\",\n \"spinal\",\n \"spine\",\n \"spiral\",\n \"spirit\",\n \"spit\",\n \"spite\",\n \"splash\",\n \"split\",\n \"spoil\",\n \"spoke\",\n \"sponge\",\n \"spoon\",\n \"sport\",\n \"spot\",\n \"spouse\",\n \"spray\",\n \"spread\",\n \"spree\",\n \"spring\",\n \"sprint\",\n \"spur\",\n \"squad\",\n \"square\",\n \"squash\",\n \"squat\",\n \"squid\",\n \"stab\",\n \"stable\",\n \"stack\",\n \"staff\",\n \"stage\",\n \"stain\",\n \"stair\",\n \"stairs\",\n \"stake\",\n \"stale\",\n \"stall\",\n \"stamp\",\n \"stance\",\n \"stand\",\n \"staple\",\n \"star\",\n \"starch\",\n \"stare\",\n \"stark\",\n \"start\",\n \"starve\",\n \"state\",\n \"static\",\n \"statue\",\n \"status\",\n \"stay\",\n \"stead\",\n \"steady\",\n \"steak\",\n \"steal\",\n \"steam\",\n \"steel\",\n \"steep\",\n \"steer\",\n \"stem\",\n \"stench\",\n \"step\",\n \"stereo\",\n \"stern\",\n \"stew\",\n \"stick\",\n \"sticky\",\n \"stiff\",\n \"stifle\",\n \"stigma\",\n \"still\",\n \"sting\",\n \"stint\",\n \"stir\",\n \"stitch\",\n \"stock\",\n \"stocky\",\n \"stone\",\n \"stony\",\n \"stool\",\n \"stop\",\n \"store\",\n \"storm\",\n \"stormy\",\n \"story\",\n \"stout\",\n \"stove\",\n \"stow\",\n \"strain\",\n \"strait\",\n \"strand\",\n \"strap\",\n \"strata\",\n \"straw\",\n \"stray\",\n \"streak\",\n \"stream\",\n \"street\",\n \"stress\",\n \"strict\",\n \"stride\",\n \"strife\",\n \"strike\",\n \"string\",\n \"strip\",\n \"stripe\",\n \"strive\",\n \"stroke\",\n \"stroll\",\n \"strong\",\n \"stud\",\n \"studio\",\n \"study\",\n \"stuff\",\n \"stuffy\",\n \"stunt\",\n \"stupid\",\n \"sturdy\",\n \"style\",\n \"submit\",\n \"subtle\",\n \"subtly\",\n \"suburb\",\n \"such\",\n \"sudden\",\n \"sue\",\n \"suez\",\n \"suffer\",\n \"sugar\",\n \"suit\",\n \"suite\",\n \"suitor\",\n \"sullen\",\n \"sultan\",\n \"sum\",\n \"summer\",\n \"summit\",\n \"summon\",\n \"sun\",\n \"sunday\",\n \"sunny\",\n \"sunset\",\n \"super\",\n \"superb\",\n \"supper\",\n \"supple\",\n \"supply\",\n \"sure\",\n \"surely\",\n \"surf\",\n \"surge\",\n \"survey\",\n \"suture\",\n \"swamp\",\n \"swan\",\n \"swap\",\n \"swarm\",\n \"sway\",\n \"swear\",\n \"sweat\",\n \"sweaty\",\n \"sweden\",\n \"sweep\",\n \"sweet\",\n \"swell\",\n \"swift\",\n \"swim\",\n \"swine\",\n \"swing\",\n \"swirl\",\n \"swiss\",\n \"switch\",\n \"sword\",\n \"swore\",\n \"sydney\",\n \"symbol\",\n \"synod\",\n \"syntax\",\n \"syria\",\n \"syrup\",\n \"system\",\n \"table\",\n \"tablet\",\n \"taboo\",\n \"tacit\",\n \"tackle\",\n \"tact\",\n \"tactic\",\n \"tail\",\n \"tailor\",\n \"taiwan\",\n \"take\",\n \"tale\",\n \"talent\",\n \"talk\",\n \"tall\",\n \"tally\",\n \"tame\",\n \"tampa\",\n \"tan\",\n \"tandem\",\n \"tangle\",\n \"tank\",\n \"tap\",\n \"tape\",\n \"target\",\n \"tariff\",\n \"tarp\",\n \"tart\",\n \"tarzan\",\n \"task\",\n \"taste\",\n \"tasty\",\n \"tattoo\",\n \"taurus\",\n \"taut\",\n \"tavern\",\n \"tax\",\n \"taxi\",\n \"tea\",\n \"teach\",\n \"teak\",\n \"team\",\n \"tear\",\n \"tease\",\n \"tech\",\n \"teeth\",\n \"tell\",\n \"temper\",\n \"temple\",\n \"tempo\",\n \"tempt\",\n \"ten\",\n \"tenant\",\n \"tend\",\n \"tender\",\n \"tendon\",\n \"tennis\",\n \"tenor\",\n \"tense\",\n \"tent\",\n \"tenth\",\n \"tenure\",\n \"teresa\",\n \"term\",\n \"terror\",\n \"terse\",\n \"test\",\n \"texas\",\n \"text\",\n \"thank\",\n \"thaw\",\n \"them\",\n \"theme\",\n \"thence\",\n \"theory\",\n \"there\",\n \"these\",\n \"thesis\",\n \"they\",\n \"thick\",\n \"thief\",\n \"thigh\",\n \"thin\",\n \"thing\",\n \"think\",\n \"third\",\n \"thirst\",\n \"thirty\",\n \"this\",\n \"thomas\",\n \"thorn\",\n \"those\",\n \"though\",\n \"thread\",\n \"threat\",\n \"three\",\n \"thrill\",\n \"thrive\",\n \"throat\",\n \"throne\",\n \"throng\",\n \"throw\",\n \"thrust\",\n \"thud\",\n \"thug\",\n \"thumb\",\n \"thus\",\n \"thyme\",\n \"tibet\",\n \"tick\",\n \"ticket\",\n \"tidal\",\n \"tide\",\n \"tidy\",\n \"tie\",\n \"tier\",\n \"tiger\",\n \"tight\",\n \"tile\",\n \"till\",\n \"tilt\",\n \"timber\",\n \"time\",\n \"timid\",\n \"tin\",\n \"tiny\",\n \"tip\",\n \"tire\",\n \"tissue\",\n \"title\",\n \"toad\",\n \"toast\",\n \"today\",\n \"toe\",\n \"toilet\",\n \"token\",\n \"tokyo\",\n \"told\",\n \"toll\",\n \"tom\",\n \"tomato\",\n \"tomb\",\n \"tonal\",\n \"tone\",\n \"tongue\",\n \"tonic\",\n \"too\",\n \"took\",\n \"tool\",\n \"tooth\",\n \"top\",\n \"topaz\",\n \"topic\",\n \"torch\",\n \"torque\",\n \"torso\",\n \"tort\",\n \"toss\",\n \"total\",\n \"touch\",\n \"tough\",\n \"tour\",\n \"toward\",\n \"towel\",\n \"tower\",\n \"town\",\n \"toxic\",\n \"toxin\",\n \"toy\",\n \"trace\",\n \"track\",\n \"tract\",\n \"trade\",\n \"tragic\",\n \"trail\",\n \"train\",\n \"trait\",\n \"tram\",\n \"trance\",\n \"trap\",\n \"trauma\",\n \"travel\",\n \"tray\",\n \"tread\",\n \"treat\",\n \"treaty\",\n \"treble\",\n \"tree\",\n \"trek\",\n \"tremor\",\n \"trench\",\n \"trend\",\n \"trendy\",\n \"trial\",\n \"tribal\",\n \"tribe\",\n \"trick\",\n \"tricky\",\n \"tried\",\n \"trifle\",\n \"trim\",\n \"trio\",\n \"trip\",\n \"triple\",\n \"troop\",\n \"trophy\",\n \"trot\",\n \"trough\",\n \"trout\",\n \"truce\",\n \"truck\",\n \"true\",\n \"truly\",\n \"trunk\",\n \"trust\",\n \"truth\",\n \"try\",\n \"tube\",\n \"tumble\",\n \"tuna\",\n \"tundra\",\n \"tune\",\n \"tunic\",\n \"tunnel\",\n \"turban\",\n \"turf\",\n \"turk\",\n \"turkey\",\n \"turn\",\n \"turtle\",\n \"tutor\",\n \"tweed\",\n \"twelve\",\n \"twenty\",\n \"twice\",\n \"twin\",\n \"twist\",\n \"two\",\n \"tycoon\",\n \"tying\",\n \"type\",\n \"tyrant\",\n \"ugly\",\n \"ulcer\",\n \"ultra\",\n \"umpire\",\n \"unable\",\n \"uncle\",\n \"under\",\n \"uneasy\",\n \"unfair\",\n \"unify\",\n \"union\",\n \"unique\",\n \"unit\",\n \"unite\",\n \"unity\",\n \"unlike\",\n \"unrest\",\n \"unruly\",\n \"until\",\n \"update\",\n \"upheld\",\n \"uphill\",\n \"uphold\",\n \"upon\",\n \"upper\",\n \"uproar\",\n \"upset\",\n \"upshot\",\n \"uptake\",\n \"upturn\",\n \"upward\",\n \"urban\",\n \"urge\",\n \"urgent\",\n \"urging\",\n \"urine\",\n \"usable\",\n \"usage\",\n \"use\",\n \"useful\",\n \"user\",\n \"usual\",\n \"utmost\",\n \"utter\",\n \"vacant\",\n \"vacuum\",\n \"vague\",\n \"vain\",\n \"valet\",\n \"valid\",\n \"valley\",\n \"value\",\n \"valve\",\n \"van\",\n \"vanish\",\n \"vanity\",\n \"vary\",\n \"vase\",\n \"vast\",\n \"vat\",\n \"vault\",\n \"vector\",\n \"veil\",\n \"vein\",\n \"velvet\",\n \"vendor\",\n \"veneer\",\n \"venice\",\n \"venom\",\n \"vent\",\n \"venue\",\n \"venus\",\n \"verb\",\n \"verbal\",\n \"verge\",\n \"verify\",\n \"verity\",\n \"verse\",\n \"versus\",\n \"very\",\n \"vessel\",\n \"vest\",\n \"vet\",\n \"veto\",\n \"via\",\n \"viable\",\n \"vicar\",\n \"vice\",\n \"victim\",\n \"victor\",\n \"video\",\n \"vienna\",\n \"view\",\n \"vigil\",\n \"viking\",\n \"vile\",\n \"villa\",\n \"vine\",\n \"vinyl\",\n \"viola\",\n \"violet\",\n \"violin\",\n \"viral\",\n \"virgo\",\n \"virtue\",\n \"virus\",\n \"visa\",\n \"vision\",\n \"visit\",\n \"visual\",\n \"vital\",\n \"vivid\",\n \"vocal\",\n \"vodka\",\n \"vogue\",\n \"voice\",\n \"void\",\n \"volley\",\n \"volume\",\n \"vote\",\n \"vowel\",\n \"voyage\",\n \"vulgar\",\n \"wade\",\n \"wage\",\n \"waist\",\n \"wait\",\n \"waiter\",\n \"wake\",\n \"walk\",\n \"walker\",\n \"wall\",\n \"wallet\",\n \"walnut\",\n \"wander\",\n \"want\",\n \"war\",\n \"warden\",\n \"warm\",\n \"warmth\",\n \"warn\",\n \"warp\",\n \"warsaw\",\n \"wary\",\n \"was\",\n \"wash\",\n \"wasp\",\n \"waste\",\n \"watch\",\n \"water\",\n \"watery\",\n \"wave\",\n \"wax\",\n \"way\",\n \"weak\",\n \"weaken\",\n \"wealth\",\n \"weapon\",\n \"wear\",\n \"weary\",\n \"weave\",\n \"wedge\",\n \"wee\",\n \"weed\",\n \"week\",\n \"weekly\",\n \"weep\",\n \"weigh\",\n \"weight\",\n \"weird\",\n \"well\",\n \"were\",\n \"west\",\n \"wet\",\n \"whale\",\n \"wharf\",\n \"what\",\n \"wheat\",\n \"wheel\",\n \"when\",\n \"whence\",\n \"where\",\n \"which\",\n \"whiff\",\n \"while\",\n \"whim\",\n \"whip\",\n \"whisky\",\n \"white\",\n \"who\",\n \"whole\",\n \"wholly\",\n \"whom\",\n \"whose\",\n \"why\",\n \"wicked\",\n \"wide\",\n \"widely\",\n \"widen\",\n \"wider\",\n \"widow\",\n \"width\",\n \"wife\",\n \"wig\",\n \"wild\",\n \"wildly\",\n \"will\",\n \"willow\",\n \"wily\",\n \"win\",\n \"wind\",\n \"window\",\n \"windy\",\n \"wine\",\n \"wing\",\n \"wink\",\n \"winner\",\n \"winter\",\n \"wipe\",\n \"wire\",\n \"wisdom\",\n \"wise\",\n \"wish\",\n \"wit\",\n \"witch\",\n \"with\",\n \"within\",\n \"witty\",\n \"wizard\",\n \"woke\",\n \"wolf\",\n \"wolves\",\n \"woman\",\n \"womb\",\n \"won\",\n \"wonder\",\n \"wood\",\n \"wooden\",\n \"woods\",\n \"woody\",\n \"wool\",\n \"word\",\n \"work\",\n \"worker\",\n \"world\",\n \"worm\",\n \"worry\",\n \"worse\",\n \"worst\",\n \"worth\",\n \"worthy\",\n \"would\",\n \"wound\",\n \"wrap\",\n \"wrath\",\n \"wreath\",\n \"wreck\",\n \"wring\",\n \"wrist\",\n \"writ\",\n \"write\",\n \"writer\",\n \"wrong\",\n \"xerox\",\n \"yacht\",\n \"yale\",\n \"yard\",\n \"yarn\",\n \"yeah\",\n \"year\",\n \"yeard\",\n \"yeast\",\n \"yellow\",\n \"yet\",\n \"yield\",\n \"yogurt\",\n \"yolk\",\n \"you\",\n \"young\",\n \"your\",\n \"youth\",\n \"zaire\",\n \"zeal\",\n \"zebra\",\n \"zenith\",\n \"zero\",\n \"zeus\",\n \"zigzag\",\n \"zinc\",\n \"zombie\",\n \"zone\",\n];\n","export default [\n \"abandon\",\n \"ability\",\n \"able\",\n \"about\",\n \"above\",\n \"absent\",\n \"absorb\",\n \"abstract\",\n \"absurd\",\n \"abuse\",\n \"access\",\n \"accident\",\n \"account\",\n \"accuse\",\n \"achieve\",\n \"acid\",\n \"acoustic\",\n \"acquire\",\n \"across\",\n \"act\",\n \"action\",\n \"actor\",\n \"actress\",\n \"actual\",\n \"adapt\",\n \"add\",\n \"addict\",\n \"address\",\n \"adjust\",\n \"admit\",\n \"adult\",\n \"advance\",\n \"advice\",\n \"aerobic\",\n \"affair\",\n \"afford\",\n \"afraid\",\n \"again\",\n \"age\",\n \"agent\",\n \"agree\",\n \"ahead\",\n \"aim\",\n \"air\",\n \"airport\",\n \"aisle\",\n \"alarm\",\n \"album\",\n \"alcohol\",\n \"alert\",\n \"alien\",\n \"all\",\n \"alley\",\n \"allow\",\n \"almost\",\n \"alone\",\n \"alpha\",\n \"already\",\n \"also\",\n \"alter\",\n \"always\",\n \"amateur\",\n \"amazing\",\n \"among\",\n \"amount\",\n \"amused\",\n \"analyst\",\n \"anchor\",\n \"ancient\",\n \"anger\",\n \"angle\",\n \"angry\",\n \"animal\",\n \"ankle\",\n \"announce\",\n \"annual\",\n \"another\",\n \"answer\",\n \"antenna\",\n \"antique\",\n \"anxiety\",\n \"any\",\n \"apart\",\n \"apology\",\n \"appear\",\n \"apple\",\n \"approve\",\n \"april\",\n \"arch\",\n \"arctic\",\n \"area\",\n \"arena\",\n \"argue\",\n \"arm\",\n \"armed\",\n \"armor\",\n \"army\",\n \"around\",\n \"arrange\",\n \"arrest\",\n \"arrive\",\n \"arrow\",\n \"art\",\n \"artefact\",\n \"artist\",\n \"artwork\",\n \"ask\",\n \"aspect\",\n \"assault\",\n \"asset\",\n \"assist\",\n \"assume\",\n \"asthma\",\n \"athlete\",\n \"atom\",\n \"attack\",\n \"attend\",\n \"attitude\",\n \"attract\",\n \"auction\",\n \"audit\",\n \"august\",\n \"aunt\",\n \"author\",\n \"auto\",\n \"autumn\",\n \"average\",\n \"avocado\",\n \"avoid\",\n \"awake\",\n \"aware\",\n \"away\",\n \"awesome\",\n \"awful\",\n \"awkward\",\n \"axis\",\n \"baby\",\n \"bachelor\",\n \"bacon\",\n \"badge\",\n \"bag\",\n \"balance\",\n \"balcony\",\n \"ball\",\n \"bamboo\",\n \"banana\",\n \"banner\",\n \"bar\",\n \"barely\",\n \"bargain\",\n \"barrel\",\n \"base\",\n \"basic\",\n \"basket\",\n \"battle\",\n \"beach\",\n \"bean\",\n \"beauty\",\n \"because\",\n \"become\",\n \"beef\",\n \"before\",\n \"begin\",\n \"behave\",\n \"behind\",\n \"believe\",\n \"below\",\n \"belt\",\n \"bench\",\n \"benefit\",\n \"best\",\n \"betray\",\n \"better\",\n \"between\",\n \"beyond\",\n \"bicycle\",\n \"bid\",\n \"bike\",\n \"bind\",\n \"biology\",\n \"bird\",\n \"birth\",\n \"bitter\",\n \"black\",\n \"blade\",\n \"blame\",\n \"blanket\",\n \"blast\",\n \"bleak\",\n \"bless\",\n \"blind\",\n \"blood\",\n \"blossom\",\n \"blouse\",\n \"blue\",\n \"blur\",\n \"blush\",\n \"board\",\n \"boat\",\n \"body\",\n \"boil\",\n \"bomb\",\n \"bone\",\n \"bonus\",\n \"book\",\n \"boost\",\n \"border\",\n \"boring\",\n \"borrow\",\n \"boss\",\n \"bottom\",\n \"bounce\",\n \"box\",\n \"boy\",\n \"bracket\",\n \"brain\",\n \"brand\",\n \"brass\",\n \"brave\",\n \"bread\",\n \"breeze\",\n \"brick\",\n \"bridge\",\n \"brief\",\n \"bright\",\n \"bring\",\n \"brisk\",\n \"broccoli\",\n \"broken\",\n \"bronze\",\n \"broom\",\n \"brother\",\n \"brown\",\n \"brush\",\n \"bubble\",\n \"buddy\",\n \"budget\",\n \"buffalo\",\n \"build\",\n \"bulb\",\n \"bulk\",\n \"bullet\",\n \"bundle\",\n \"bunker\",\n \"burden\",\n \"burger\",\n \"burst\",\n \"bus\",\n \"business\",\n \"busy\",\n \"butter\",\n \"buyer\",\n \"buzz\",\n \"cabbage\",\n \"cabin\",\n \"cable\",\n \"cactus\",\n \"cage\",\n \"cake\",\n \"call\",\n \"calm\",\n \"camera\",\n \"camp\",\n \"can\",\n \"canal\",\n \"cancel\",\n \"candy\",\n \"cannon\",\n \"canoe\",\n \"canvas\",\n \"canyon\",\n \"capable\",\n \"capital\",\n \"captain\",\n \"car\",\n \"carbon\",\n \"card\",\n \"cargo\",\n \"carpet\",\n \"carry\",\n \"cart\",\n \"case\",\n \"cash\",\n \"casino\",\n \"castle\",\n \"casual\",\n \"cat\",\n \"catalog\",\n \"catch\",\n \"category\",\n \"cattle\",\n \"caught\",\n \"cause\",\n \"caution\",\n \"cave\",\n \"ceiling\",\n \"celery\",\n \"cement\",\n \"census\",\n \"century\",\n \"cereal\",\n \"certain\",\n \"chair\",\n \"chalk\",\n \"champion\",\n \"change\",\n \"chaos\",\n \"chapter\",\n \"charge\",\n \"chase\",\n \"chat\",\n \"cheap\",\n \"check\",\n \"cheese\",\n \"chef\",\n \"cherry\",\n \"chest\",\n \"chicken\",\n \"chief\",\n \"child\",\n \"chimney\",\n \"choice\",\n \"choose\",\n \"chronic\",\n \"chuckle\",\n \"chunk\",\n \"churn\",\n \"cigar\",\n \"cinnamon\",\n \"circle\",\n \"citizen\",\n \"city\",\n \"civil\",\n \"claim\",\n \"clap\",\n \"clarify\",\n \"claw\",\n \"clay\",\n \"clean\",\n \"clerk\",\n \"clever\",\n \"click\",\n \"client\",\n \"cliff\",\n \"climb\",\n \"clinic\",\n \"clip\",\n \"clock\",\n \"clog\",\n \"close\",\n \"cloth\",\n \"cloud\",\n \"clown\",\n \"club\",\n \"clump\",\n \"cluster\",\n \"clutch\",\n \"coach\",\n \"coast\",\n \"coconut\",\n \"code\",\n \"coffee\",\n \"coil\",\n \"coin\",\n \"collect\",\n \"color\",\n \"column\",\n \"combine\",\n \"come\",\n \"comfort\",\n \"comic\",\n \"common\",\n \"company\",\n \"concert\",\n \"conduct\",\n \"confirm\",\n \"congress\",\n \"connect\",\n \"consider\",\n \"control\",\n \"convince\",\n \"cook\",\n \"cool\",\n \"copper\",\n \"copy\",\n \"coral\",\n \"core\",\n \"corn\",\n \"correct\",\n \"cost\",\n \"cotton\",\n \"couch\",\n \"country\",\n \"couple\",\n \"course\",\n \"cousin\",\n \"cover\",\n \"coyote\",\n \"crack\",\n \"cradle\",\n \"craft\",\n \"cram\",\n \"crane\",\n \"crash\",\n \"crater\",\n \"crawl\",\n \"crazy\",\n \"cream\",\n \"credit\",\n \"creek\",\n \"crew\",\n \"cricket\",\n \"crime\",\n \"crisp\",\n \"critic\",\n \"crop\",\n \"cross\",\n \"crouch\",\n \"crowd\",\n \"crucial\",\n \"cruel\",\n \"cruise\",\n \"crumble\",\n \"crunch\",\n \"crush\",\n \"cry\",\n \"crystal\",\n \"cube\",\n \"culture\",\n \"cup\",\n \"cupboard\",\n \"curious\",\n \"current\",\n \"curtain\",\n \"curve\",\n \"cushion\",\n \"custom\",\n \"cute\",\n \"cycle\",\n \"dad\",\n \"damage\",\n \"damp\",\n \"dance\",\n \"danger\",\n \"daring\",\n \"dash\",\n \"daughter\",\n \"dawn\",\n \"day\",\n \"deal\",\n \"debate\",\n \"debris\",\n \"decade\",\n \"december\",\n \"decide\",\n \"decline\",\n \"decorate\",\n \"decrease\",\n \"deer\",\n \"defense\",\n \"define\",\n \"defy\",\n \"degree\",\n \"delay\",\n \"deliver\",\n \"demand\",\n \"demise\",\n \"denial\",\n \"dentist\",\n \"deny\",\n \"depart\",\n \"depend\",\n \"deposit\",\n \"depth\",\n \"deputy\",\n \"derive\",\n \"describe\",\n \"desert\",\n \"design\",\n \"desk\",\n \"despair\",\n \"destroy\",\n \"detail\",\n \"detect\",\n \"develop\",\n \"device\",\n \"devote\",\n \"diagram\",\n \"dial\",\n \"diamond\",\n \"diary\",\n \"dice\",\n \"diesel\",\n \"diet\",\n \"differ\",\n \"digital\",\n \"dignity\",\n \"dilemma\",\n \"dinner\",\n \"dinosaur\",\n \"direct\",\n \"dirt\",\n \"disagree\",\n \"discover\",\n \"disease\",\n \"dish\",\n \"dismiss\",\n \"disorder\",\n \"display\",\n \"distance\",\n \"divert\",\n \"divide\",\n \"divorce\",\n \"dizzy\",\n \"doctor\",\n \"document\",\n \"dog\",\n \"doll\",\n \"dolphin\",\n \"domain\",\n \"donate\",\n \"donkey\",\n \"donor\",\n \"door\",\n \"dose\",\n \"double\",\n \"dove\",\n \"draft\",\n \"dragon\",\n \"drama\",\n \"drastic\",\n \"draw\",\n \"dream\",\n \"dress\",\n \"drift\",\n \"drill\",\n \"drink\",\n \"drip\",\n \"drive\",\n \"drop\",\n \"drum\",\n \"dry\",\n \"duck\",\n \"dumb\",\n \"dune\",\n \"during\",\n \"dust\",\n \"dutch\",\n \"duty\",\n \"dwarf\",\n \"dynamic\",\n \"eager\",\n \"eagle\",\n \"early\",\n \"earn\",\n \"earth\",\n \"easily\",\n \"east\",\n \"easy\",\n \"echo\",\n \"ecology\",\n \"economy\",\n \"edge\",\n \"edit\",\n \"educate\",\n \"effort\",\n \"egg\",\n \"eight\",\n \"either\",\n \"elbow\",\n \"elder\",\n \"electric\",\n \"elegant\",\n \"element\",\n \"elephant\",\n \"elevator\",\n \"elite\",\n \"else\",\n \"embark\",\n \"embody\",\n \"embrace\",\n \"emerge\",\n \"emotion\",\n \"employ\",\n \"empower\",\n \"empty\",\n \"enable\",\n \"enact\",\n \"end\",\n \"endless\",\n \"endorse\",\n \"enemy\",\n \"energy\",\n \"enforce\",\n \"engage\",\n \"engine\",\n \"enhance\",\n \"enjoy\",\n \"enlist\",\n \"enough\",\n \"enrich\",\n \"enroll\",\n \"ensure\",\n \"enter\",\n \"entire\",\n \"entry\",\n \"envelope\",\n \"episode\",\n \"equal\",\n \"equip\",\n \"era\",\n \"erase\",\n \"erode\",\n \"erosion\",\n \"error\",\n \"erupt\",\n \"escape\",\n \"essay\",\n \"essence\",\n \"estate\",\n \"eternal\",\n \"ethics\",\n \"evidence\",\n \"evil\",\n \"evoke\",\n \"evolve\",\n \"exact\",\n \"example\",\n \"excess\",\n \"exchange\",\n \"excite\",\n \"exclude\",\n \"excuse\",\n \"execute\",\n \"exercise\",\n \"exhaust\",\n \"exhibit\",\n \"exile\",\n \"exist\",\n \"exit\",\n \"exotic\",\n \"expand\",\n \"expect\",\n \"expire\",\n \"explain\",\n \"expose\",\n \"express\",\n \"extend\",\n \"extra\",\n \"eye\",\n \"eyebrow\",\n \"fabric\",\n \"face\",\n \"faculty\",\n \"fade\",\n \"faint\",\n \"faith\",\n \"fall\",\n \"false\",\n \"fame\",\n \"family\",\n \"famous\",\n \"fan\",\n \"fancy\",\n \"fantasy\",\n \"farm\",\n \"fashion\",\n \"fat\",\n \"fatal\",\n \"father\",\n \"fatigue\",\n \"fault\",\n \"favorite\",\n \"feature\",\n \"february\",\n \"federal\",\n \"fee\",\n \"feed\",\n \"feel\",\n \"female\",\n \"fence\",\n \"festival\",\n \"fetch\",\n \"fever\",\n \"few\",\n \"fiber\",\n \"fiction\",\n \"field\",\n \"figure\",\n \"file\",\n \"film\",\n \"filter\",\n \"final\",\n \"find\",\n \"fine\",\n \"finger\",\n \"finish\",\n \"fire\",\n \"firm\",\n \"first\",\n \"fiscal\",\n \"fish\",\n \"fit\",\n \"fitness\",\n \"fix\",\n \"flag\",\n \"flame\",\n \"flash\",\n \"flat\",\n \"flavor\",\n \"flee\",\n \"flight\",\n \"flip\",\n \"float\",\n \"flock\",\n \"floor\",\n \"flower\",\n \"fluid\",\n \"flush\",\n \"fly\",\n \"foam\",\n \"focus\",\n \"fog\",\n \"foil\",\n \"fold\",\n \"follow\",\n \"food\",\n \"foot\",\n \"force\",\n \"forest\",\n \"forget\",\n \"fork\",\n \"fortune\",\n \"forum\",\n \"forward\",\n \"fossil\",\n \"foster\",\n \"found\",\n \"fox\",\n \"fragile\",\n \"frame\",\n \"frequent\",\n \"fresh\",\n \"friend\",\n \"fringe\",\n \"frog\",\n \"front\",\n \"frost\",\n \"frown\",\n \"frozen\",\n \"fruit\",\n \"fuel\",\n \"fun\",\n \"funny\",\n \"furnace\",\n \"fury\",\n \"future\",\n \"gadget\",\n \"gain\",\n \"galaxy\",\n \"gallery\",\n \"game\",\n \"gap\",\n \"garage\",\n \"garbage\",\n \"garden\",\n \"garlic\",\n \"garment\",\n \"gas\",\n \"gasp\",\n \"gate\",\n \"gather\",\n \"gauge\",\n \"gaze\",\n \"general\",\n \"genius\",\n \"genre\",\n \"gentle\",\n \"genuine\",\n \"gesture\",\n \"ghost\",\n \"giant\",\n \"gift\",\n \"giggle\",\n \"ginger\",\n \"giraffe\",\n \"girl\",\n \"give\",\n \"glad\",\n \"glance\",\n \"glare\",\n \"glass\",\n \"glide\",\n \"glimpse\",\n \"globe\",\n \"gloom\",\n \"glory\",\n \"glove\",\n \"glow\",\n \"glue\",\n \"goat\",\n \"goddess\",\n \"gold\",\n \"good\",\n \"goose\",\n \"gorilla\",\n \"gospel\",\n \"gossip\",\n \"govern\",\n \"gown\",\n \"grab\",\n \"grace\",\n \"grain\",\n \"grant\",\n \"grape\",\n \"grass\",\n \"gravity\",\n \"great\",\n \"green\",\n \"grid\",\n \"grief\",\n \"grit\",\n \"grocery\",\n \"group\",\n \"grow\",\n \"grunt\",\n \"guard\",\n \"guess\",\n \"guide\",\n \"guilt\",\n \"guitar\",\n \"gun\",\n \"gym\",\n \"habit\",\n \"hair\",\n \"half\",\n \"hammer\",\n \"hamster\",\n \"hand\",\n \"happy\",\n \"harbor\",\n \"hard\",\n \"harsh\",\n \"harvest\",\n \"hat\",\n \"have\",\n \"hawk\",\n \"hazard\",\n \"head\",\n \"health\",\n \"heart\",\n \"heavy\",\n \"hedgehog\",\n \"height\",\n \"hello\",\n \"helmet\",\n \"help\",\n \"hen\",\n \"hero\",\n \"hidden\",\n \"high\",\n \"hill\",\n \"hint\",\n \"hip\",\n \"hire\",\n \"history\",\n \"hobby\",\n \"hockey\",\n \"hold\",\n \"hole\",\n \"holiday\",\n \"hollow\",\n \"home\",\n \"honey\",\n \"hood\",\n \"hope\",\n \"horn\",\n \"horror\",\n \"horse\",\n \"hospital\",\n \"host\",\n \"hotel\",\n \"hour\",\n \"hover\",\n \"hub\",\n \"huge\",\n \"human\",\n \"humble\",\n \"humor\",\n \"hundred\",\n \"hungry\",\n \"hunt\",\n \"hurdle\",\n \"hurry\",\n \"hurt\",\n \"husband\",\n \"hybrid\",\n \"ice\",\n \"icon\",\n \"idea\",\n \"identify\",\n \"idle\",\n \"ignore\",\n \"ill\",\n \"illegal\",\n \"illness\",\n \"image\",\n \"imitate\",\n \"immense\",\n \"immune\",\n \"impact\",\n \"impose\",\n \"improve\",\n \"impulse\",\n \"inch\",\n \"include\",\n \"income\",\n \"increase\",\n \"index\",\n \"indicate\",\n \"indoor\",\n \"industry\",\n \"infant\",\n \"inflict\",\n \"inform\",\n \"inhale\",\n \"inherit\",\n \"initial\",\n \"inject\",\n \"injury\",\n \"inmate\",\n \"inner\",\n \"innocent\",\n \"input\",\n \"inquiry\",\n \"insane\",\n \"insect\",\n \"inside\",\n \"inspire\",\n \"install\",\n \"intact\",\n \"interest\",\n \"into\",\n \"invest\",\n \"invite\",\n \"involve\",\n \"iron\",\n \"island\",\n \"isolate\",\n \"issue\",\n \"item\",\n \"ivory\",\n \"jacket\",\n \"jaguar\",\n \"jar\",\n \"jazz\",\n \"jealous\",\n \"jeans\",\n \"jelly\",\n \"jewel\",\n \"job\",\n \"join\",\n \"joke\",\n \"journey\",\n \"joy\",\n \"judge\",\n \"juice\",\n \"jump\",\n \"jungle\",\n \"junior\",\n \"junk\",\n \"just\",\n \"kangaroo\",\n \"keen\",\n \"keep\",\n \"ketchup\",\n \"key\",\n \"kick\",\n \"kid\",\n \"kidney\",\n \"kind\",\n \"kingdom\",\n \"kiss\",\n \"kit\",\n \"kitchen\",\n \"kite\",\n \"kitten\",\n \"kiwi\",\n \"knee\",\n \"knife\",\n \"knock\",\n \"know\",\n \"lab\",\n \"label\",\n \"labor\",\n \"ladder\",\n \"lady\",\n \"lake\",\n \"lamp\",\n \"language\",\n \"laptop\",\n \"large\",\n \"later\",\n \"latin\",\n \"laugh\",\n \"laundry\",\n \"lava\",\n \"law\",\n \"lawn\",\n \"lawsuit\",\n \"layer\",\n \"lazy\",\n \"leader\",\n \"leaf\",\n \"learn\",\n \"leave\",\n \"lecture\",\n \"left\",\n \"leg\",\n \"legal\",\n \"legend\",\n \"leisure\",\n \"lemon\",\n \"lend\",\n \"length\",\n \"lens\",\n \"leopard\",\n \"lesson\",\n \"letter\",\n \"level\",\n \"liar\",\n \"liberty\",\n \"library\",\n \"license\",\n \"life\",\n \"lift\",\n \"light\",\n \"like\",\n \"limb\",\n \"limit\",\n \"link\",\n \"lion\",\n \"liquid\",\n \"list\",\n \"little\",\n \"live\",\n \"lizard\",\n \"load\",\n \"loan\",\n \"lobster\",\n \"local\",\n \"lock\",\n \"logic\",\n \"lonely\",\n \"long\",\n \"loop\",\n \"lottery\",\n \"loud\",\n \"lounge\",\n \"love\",\n \"loyal\",\n \"lucky\",\n \"luggage\",\n \"lumber\",\n \"lunar\",\n \"lunch\",\n \"luxury\",\n \"lyrics\",\n \"machine\",\n \"mad\",\n \"magic\",\n \"magnet\",\n \"maid\",\n \"mail\",\n \"main\",\n \"major\",\n \"make\",\n \"mammal\",\n \"man\",\n \"manage\",\n \"mandate\",\n \"mango\",\n \"mansion\",\n \"manual\",\n \"maple\",\n \"marble\",\n \"march\",\n \"margin\",\n \"marine\",\n \"market\",\n \"marriage\",\n \"mask\",\n \"mass\",\n \"master\",\n \"match\",\n \"material\",\n \"math\",\n \"matrix\",\n \"matter\",\n \"maximum\",\n \"maze\",\n \"meadow\",\n \"mean\",\n \"measure\",\n \"meat\",\n \"mechanic\",\n \"medal\",\n \"media\",\n \"melody\",\n \"melt\",\n \"member\",\n \"memory\",\n \"mention\",\n \"menu\",\n \"mercy\",\n \"merge\",\n \"merit\",\n \"merry\",\n \"mesh\",\n \"message\",\n \"metal\",\n \"method\",\n \"middle\",\n \"midnight\",\n \"milk\",\n \"million\",\n \"mimic\",\n \"mind\",\n \"minimum\",\n \"minor\",\n \"minute\",\n \"miracle\",\n \"mirror\",\n \"misery\",\n \"miss\",\n \"mistake\",\n \"mix\",\n \"mixed\",\n \"mixture\",\n \"mobile\",\n \"model\",\n \"modify\",\n \"mom\",\n \"moment\",\n \"monitor\",\n \"monkey\",\n \"monster\",\n \"month\",\n \"moon\",\n \"moral\",\n \"more\",\n \"morning\",\n \"mosquito\",\n \"mother\",\n \"motion\",\n \"motor\",\n \"mountain\",\n \"mouse\",\n \"move\",\n \"movie\",\n \"much\",\n \"muffin\",\n \"mule\",\n \"multiply\",\n \"muscle\",\n \"museum\",\n \"mushroom\",\n \"music\",\n \"must\",\n \"mutual\",\n \"myself\",\n \"mystery\",\n \"myth\",\n \"naive\",\n \"name\",\n \"napkin\",\n \"narrow\",\n \"nasty\",\n \"nation\",\n \"nature\",\n \"near\",\n \"neck\",\n \"need\",\n \"negative\",\n \"neglect\",\n \"neither\",\n \"nephew\",\n \"nerve\",\n \"nest\",\n \"net\",\n \"network\",\n \"neutral\",\n \"never\",\n \"news\",\n \"next\",\n \"nice\",\n \"night\",\n \"noble\",\n \"noise\",\n \"nominee\",\n \"noodle\",\n \"normal\",\n \"north\",\n \"nose\",\n \"notable\",\n \"note\",\n \"nothing\",\n \"notice\",\n \"novel\",\n \"now\",\n \"nuclear\",\n \"number\",\n \"nurse\",\n \"nut\",\n \"oak\",\n \"obey\",\n \"object\",\n \"oblige\",\n \"obscure\",\n \"observe\",\n \"obtain\",\n \"obvious\",\n \"occur\",\n \"ocean\",\n \"october\",\n \"odor\",\n \"off\",\n \"offer\",\n \"office\",\n \"often\",\n \"oil\",\n \"okay\",\n \"old\",\n \"olive\",\n \"olympic\",\n \"omit\",\n \"once\",\n \"one\",\n \"onion\",\n \"online\",\n \"only\",\n \"open\",\n \"opera\",\n \"opinion\",\n \"oppose\",\n \"option\",\n \"orange\",\n \"orbit\",\n \"orchard\",\n \"order\",\n \"ordinary\",\n \"organ\",\n \"orient\",\n \"original\",\n \"orphan\",\n \"ostrich\",\n \"other\",\n \"outdoor\",\n \"outer\",\n \"output\",\n \"outside\",\n \"oval\",\n \"oven\",\n \"over\",\n \"own\",\n \"owner\",\n \"oxygen\",\n \"oyster\",\n \"ozone\",\n \"pact\",\n \"paddle\",\n \"page\",\n \"pair\",\n \"palace\",\n \"palm\",\n \"panda\",\n \"panel\",\n \"panic\",\n \"panther\",\n \"paper\",\n \"parade\",\n \"parent\",\n \"park\",\n \"parrot\",\n \"party\",\n \"pass\",\n \"patch\",\n \"path\",\n \"patient\",\n \"patrol\",\n \"pattern\",\n \"pause\",\n \"pave\",\n \"payment\",\n \"peace\",\n \"peanut\",\n \"pear\",\n \"peasant\",\n \"pelican\",\n \"pen\",\n \"penalty\",\n \"pencil\",\n \"people\",\n \"pepper\",\n \"perfect\",\n \"permit\",\n \"person\",\n \"pet\",\n \"phone\",\n \"photo\",\n \"phrase\",\n \"physical\",\n \"piano\",\n \"picnic\",\n \"picture\",\n \"piece\",\n \"pig\",\n \"pigeon\",\n \"pill\",\n \"pilot\",\n \"pink\",\n \"pioneer\",\n \"pipe\",\n \"pistol\",\n \"pitch\",\n \"pizza\",\n \"place\",\n \"planet\",\n \"plastic\",\n \"plate\",\n \"play\",\n \"please\",\n \"pledge\",\n \"pluck\",\n \"plug\",\n \"plunge\",\n \"poem\",\n \"poet\",\n \"point\",\n \"polar\",\n \"pole\",\n \"police\",\n \"pond\",\n \"pony\",\n \"pool\",\n \"popular\",\n \"portion\",\n \"position\",\n \"possible\",\n \"post\",\n \"potato\",\n \"pottery\",\n \"poverty\",\n \"powder\",\n \"power\",\n \"practice\",\n \"praise\",\n \"predict\",\n \"prefer\",\n \"prepare\",\n \"present\",\n \"pretty\",\n \"prevent\",\n \"price\",\n \"pride\",\n \"primary\",\n \"print\",\n \"priority\",\n \"prison\",\n \"private\",\n \"prize\",\n \"problem\",\n \"process\",\n \"produce\",\n \"profit\",\n \"program\",\n \"project\",\n \"promote\",\n \"proof\",\n \"property\",\n \"prosper\",\n \"protect\",\n \"proud\",\n \"provide\",\n \"public\",\n \"pudding\",\n \"pull\",\n \"pulp\",\n \"pulse\",\n \"pumpkin\",\n \"punch\",\n \"pupil\",\n \"puppy\",\n \"purchase\",\n \"purity\",\n \"purpose\",\n \"purse\",\n \"push\",\n \"put\",\n \"puzzle\",\n \"pyramid\",\n \"quality\",\n \"quantum\",\n \"quarter\",\n \"question\",\n \"quick\",\n \"quit\",\n \"quiz\",\n \"quote\",\n \"rabbit\",\n \"raccoon\",\n \"race\",\n \"rack\",\n \"radar\",\n \"radio\",\n \"rail\",\n \"rain\",\n \"raise\",\n \"rally\",\n \"ramp\",\n \"ranch\",\n \"random\",\n \"range\",\n \"rapid\",\n \"rare\",\n \"rate\",\n \"rather\",\n \"raven\",\n \"raw\",\n \"razor\",\n \"ready\",\n \"real\",\n \"reason\",\n \"rebel\",\n \"rebuild\",\n \"recall\",\n \"receive\",\n \"recipe\",\n \"record\",\n \"recycle\",\n \"reduce\",\n \"reflect\",\n \"reform\",\n \"refuse\",\n \"region\",\n \"regret\",\n \"regular\",\n \"reject\",\n \"relax\",\n \"release\",\n \"relief\",\n \"rely\",\n \"remain\",\n \"remember\",\n \"remind\",\n \"remove\",\n \"render\",\n \"renew\",\n \"rent\",\n \"reopen\",\n \"repair\",\n \"repeat\",\n \"replace\",\n \"report\",\n \"require\",\n \"rescue\",\n \"resemble\",\n \"resist\",\n \"resource\",\n \"response\",\n \"result\",\n \"retire\",\n \"retreat\",\n \"return\",\n \"reunion\",\n \"reveal\",\n \"review\",\n \"reward\",\n \"rhythm\",\n \"rib\",\n \"ribbon\",\n \"rice\",\n \"rich\",\n \"ride\",\n \"ridge\",\n \"rifle\",\n \"right\",\n \"rigid\",\n \"ring\",\n \"riot\",\n \"ripple\",\n \"risk\",\n \"ritual\",\n \"rival\",\n \"river\",\n \"road\",\n \"roast\",\n \"robot\",\n \"robust\",\n \"rocket\",\n \"romance\",\n \"roof\",\n \"rookie\",\n \"room\",\n \"rose\",\n \"rotate\",\n \"rough\",\n \"round\",\n \"route\",\n \"royal\",\n \"rubber\",\n \"rude\",\n \"rug\",\n \"rule\",\n \"run\",\n \"runway\",\n \"rural\",\n \"sad\",\n \"saddle\",\n \"sadness\",\n \"safe\",\n \"sail\",\n \"salad\",\n \"salmon\",\n \"salon\",\n \"salt\",\n \"salute\",\n \"same\",\n \"sample\",\n \"sand\",\n \"satisfy\",\n \"satoshi\",\n \"sauce\",\n \"sausage\",\n \"save\",\n \"say\",\n \"scale\",\n \"scan\",\n \"scare\",\n \"scatter\",\n \"scene\",\n \"scheme\",\n \"school\",\n \"science\",\n \"scissors\",\n \"scorpion\",\n \"scout\",\n \"scrap\",\n \"screen\",\n \"script\",\n \"scrub\",\n \"sea\",\n \"search\",\n \"season\",\n \"seat\",\n \"second\",\n \"secret\",\n \"section\",\n \"security\",\n \"seed\",\n \"seek\",\n \"segment\",\n \"select\",\n \"sell\",\n \"seminar\",\n \"senior\",\n \"sense\",\n \"sentence\",\n \"series\",\n \"service\",\n \"session\",\n \"settle\",\n \"setup\",\n \"seven\",\n \"shadow\",\n \"shaft\",\n \"shallow\",\n \"share\",\n \"shed\",\n \"shell\",\n \"sheriff\",\n \"shield\",\n \"shift\",\n \"shine\",\n \"ship\",\n \"shiver\",\n \"shock\",\n \"shoe\",\n \"shoot\",\n \"shop\",\n \"short\",\n \"shoulder\",\n \"shove\",\n \"shrimp\",\n \"shrug\",\n \"shuffle\",\n \"shy\",\n \"sibling\",\n \"sick\",\n \"side\",\n \"siege\",\n \"sight\",\n \"sign\",\n \"silent\",\n \"silk\",\n \"silly\",\n \"silver\",\n \"similar\",\n \"simple\",\n \"since\",\n \"sing\",\n \"siren\",\n \"sister\",\n \"situate\",\n \"six\",\n \"size\",\n \"skate\",\n \"sketch\",\n \"ski\",\n \"skill\",\n \"skin\",\n \"skirt\",\n \"skull\",\n \"slab\",\n \"slam\",\n \"sleep\",\n \"slender\",\n \"slice\",\n \"slide\",\n \"slight\",\n \"slim\",\n \"slogan\",\n \"slot\",\n \"slow\",\n \"slush\",\n \"small\",\n \"smart\",\n \"smile\",\n \"smoke\",\n \"smooth\",\n \"snack\",\n \"snake\",\n \"snap\",\n \"sniff\",\n \"snow\",\n \"soap\",\n \"soccer\",\n \"social\",\n \"sock\",\n \"soda\",\n \"soft\",\n \"solar\",\n \"soldier\",\n \"solid\",\n \"solution\",\n \"solve\",\n \"someone\",\n \"song\",\n \"soon\",\n \"sorry\",\n \"sort\",\n \"soul\",\n \"sound\",\n \"soup\",\n \"source\",\n \"south\",\n \"space\",\n \"spare\",\n \"spatial\",\n \"spawn\",\n \"speak\",\n \"special\",\n \"speed\",\n \"spell\",\n \"spend\",\n \"sphere\",\n \"spice\",\n \"spider\",\n \"spike\",\n \"spin\",\n \"spirit\",\n \"split\",\n \"spoil\",\n \"sponsor\",\n \"spoon\",\n \"sport\",\n \"spot\",\n \"spray\",\n \"spread\",\n \"spring\",\n \"spy\",\n \"square\",\n \"squeeze\",\n \"squirrel\",\n \"stable\",\n \"stadium\",\n \"staff\",\n \"stage\",\n \"stairs\",\n \"stamp\",\n \"stand\",\n \"start\",\n \"state\",\n \"stay\",\n \"steak\",\n \"steel\",\n \"stem\",\n \"step\",\n \"stereo\",\n \"stick\",\n \"still\",\n \"sting\",\n \"stock\",\n \"stomach\",\n \"stone\",\n \"stool\",\n \"story\",\n \"stove\",\n \"strategy\",\n \"street\",\n \"strike\",\n \"strong\",\n \"struggle\",\n \"student\",\n \"stuff\",\n \"stumble\",\n \"style\",\n \"subject\",\n \"submit\",\n \"subway\",\n \"success\",\n \"such\",\n \"sudden\",\n \"suffer\",\n \"sugar\",\n \"suggest\",\n \"suit\",\n \"summer\",\n \"sun\",\n \"sunny\",\n \"sunset\",\n \"super\",\n \"supply\",\n \"supreme\",\n \"sure\",\n \"surface\",\n \"surge\",\n \"surprise\",\n \"surround\",\n \"survey\",\n \"suspect\",\n \"sustain\",\n \"swallow\",\n \"swamp\",\n \"swap\",\n \"swarm\",\n \"swear\",\n \"sweet\",\n \"swift\",\n \"swim\",\n \"swing\",\n \"switch\",\n \"sword\",\n \"symbol\",\n \"symptom\",\n \"syrup\",\n \"system\",\n \"table\",\n \"tackle\",\n \"tag\",\n \"tail\",\n \"talent\",\n \"talk\",\n \"tank\",\n \"tape\",\n \"target\",\n \"task\",\n \"taste\",\n \"tattoo\",\n \"taxi\",\n \"teach\",\n \"team\",\n \"tell\",\n \"ten\",\n \"tenant\",\n \"tennis\",\n \"tent\",\n \"term\",\n \"test\",\n \"text\",\n \"thank\",\n \"that\",\n \"theme\",\n \"then\",\n \"theory\",\n \"there\",\n \"they\",\n \"thing\",\n \"this\",\n \"thought\",\n \"three\",\n \"thrive\",\n \"throw\",\n \"thumb\",\n \"thunder\",\n \"ticket\",\n \"tide\",\n \"tiger\",\n \"tilt\",\n \"timber\",\n \"time\",\n \"tiny\",\n \"tip\",\n \"tired\",\n \"tissue\",\n \"title\",\n \"toast\",\n \"tobacco\",\n \"today\",\n \"toddler\",\n \"toe\",\n \"together\",\n \"toilet\",\n \"token\",\n \"tomato\",\n \"tomorrow\",\n \"tone\",\n \"tongue\",\n \"tonight\",\n \"tool\",\n \"tooth\",\n \"top\",\n \"topic\",\n \"topple\",\n \"torch\",\n \"tornado\",\n \"tortoise\",\n \"toss\",\n \"total\",\n \"tourist\",\n \"toward\",\n \"tower\",\n \"town\",\n \"toy\",\n \"track\",\n \"trade\",\n \"traffic\",\n \"tragic\",\n \"train\",\n \"transfer\",\n \"trap\",\n \"trash\",\n \"travel\",\n \"tray\",\n \"treat\",\n \"tree\",\n \"trend\",\n \"trial\",\n \"tribe\",\n \"trick\",\n \"trigger\",\n \"trim\",\n \"trip\",\n \"trophy\",\n \"trouble\",\n \"truck\",\n \"true\",\n \"truly\",\n \"trumpet\",\n \"trust\",\n \"truth\",\n \"try\",\n \"tube\",\n \"tuition\",\n \"tumble\",\n \"tuna\",\n \"tunnel\",\n \"turkey\",\n \"turn\",\n \"turtle\",\n \"twelve\",\n \"twenty\",\n \"twice\",\n \"twin\",\n \"twist\",\n \"two\",\n \"type\",\n \"typical\",\n \"ugly\",\n \"umbrella\",\n \"unable\",\n \"unaware\",\n \"uncle\",\n \"uncover\",\n \"under\",\n \"undo\",\n \"unfair\",\n \"unfold\",\n \"unhappy\",\n \"uniform\",\n \"unique\",\n \"unit\",\n \"universe\",\n \"unknown\",\n \"unlock\",\n \"until\",\n \"unusual\",\n \"unveil\",\n \"update\",\n \"upgrade\",\n \"uphold\",\n \"upon\",\n \"upper\",\n \"upset\",\n \"urban\",\n \"urge\",\n \"usage\",\n \"use\",\n \"used\",\n \"useful\",\n \"useless\",\n \"usual\",\n \"utility\",\n \"vacant\",\n \"vacuum\",\n \"vague\",\n \"valid\",\n \"valley\",\n \"valve\",\n \"van\",\n \"vanish\",\n \"vapor\",\n \"various\",\n \"vast\",\n \"vault\",\n \"vehicle\",\n \"velvet\",\n \"vendor\",\n \"venture\",\n \"venue\",\n \"verb\",\n \"verify\",\n \"version\",\n \"very\",\n \"vessel\",\n \"veteran\",\n \"viable\",\n \"vibrant\",\n \"vicious\",\n \"victory\",\n \"video\",\n \"view\",\n \"village\",\n \"vintage\",\n \"violin\",\n \"virtual\",\n \"virus\",\n \"visa\",\n \"visit\",\n \"visual\",\n \"vital\",\n \"vivid\",\n \"vocal\",\n \"voice\",\n \"void\",\n \"volcano\",\n \"volume\",\n \"vote\",\n \"voyage\",\n \"wage\",\n \"wagon\",\n \"wait\",\n \"walk\",\n \"wall\",\n \"walnut\",\n \"want\",\n \"warfare\",\n \"warm\",\n \"warrior\",\n \"wash\",\n \"wasp\",\n \"waste\",\n \"water\",\n \"wave\",\n \"way\",\n \"wealth\",\n \"weapon\",\n \"wear\",\n \"weasel\",\n \"weather\",\n \"web\",\n \"wedding\",\n \"weekend\",\n \"weird\",\n \"welcome\",\n \"west\",\n \"wet\",\n \"whale\",\n \"what\",\n \"wheat\",\n \"wheel\",\n \"when\",\n \"where\",\n \"whip\",\n \"whisper\",\n \"wide\",\n \"width\",\n \"wife\",\n \"wild\",\n \"will\",\n \"win\",\n \"window\",\n \"wine\",\n \"wing\",\n \"wink\",\n \"winner\",\n \"winter\",\n \"wire\",\n \"wisdom\",\n \"wise\",\n \"wish\",\n \"witness\",\n \"wolf\",\n \"woman\",\n \"wonder\",\n \"wood\",\n \"wool\",\n \"word\",\n \"work\",\n \"world\",\n \"worry\",\n \"worth\",\n \"wrap\",\n \"wreck\",\n \"wrestle\",\n \"wrist\",\n \"write\",\n \"wrong\",\n \"yard\",\n \"year\",\n \"yellow\",\n \"you\",\n \"young\",\n \"youth\",\n \"zebra\",\n \"zero\",\n \"zone\",\n \"zoo\",\n];\n","import BigNumber from \"bignumber.js\";\nimport * as sha256 from \"../primitive/sha256.js\";\n\n/**\n * @param {string[]} words\n * @param {string[]} wordlist\n * @returns {[Uint8Array, number]}\n */\nexport function legacy1(words, wordlist) {\n const indicies = words.map((word) => wordlist.indexOf(word.toLowerCase()));\n\n const data = convertRadix(indicies, wordlist.length, 256, 33);\n const checksum = data[data.length - 1];\n const result = new Uint8Array(data.length - 1);\n\n for (let i = 0; i < data.length - 1; i += 1) {\n result[i] = data[i] ^ checksum;\n }\n\n return [result, checksum];\n}\n\n/**\n * @param {string[]} words\n * @param {string[]} wordlist\n * @returns {Promise}\n */\nexport async function legacy2(words, wordlist) {\n const concatBitsLen = words.length * 11;\n /** @type {boolean[]} */\n const concatBits = [];\n concatBits.fill(false, 0, concatBitsLen);\n\n for (const [wordIndex, word] of words.entries()) {\n const index = wordlist.indexOf(word.toLowerCase());\n\n if (index < 0) {\n throw new Error(`Word not found in wordlist: ${word}`);\n }\n\n for (let i = 0; i < 11; i += 1) {\n concatBits[wordIndex * 11 + i] = (index & (1 << (10 - i))) !== 0;\n }\n }\n\n const checksumBitsLen = concatBitsLen / 33;\n const entropyBitsLen = concatBitsLen - checksumBitsLen;\n const entropy = new Uint8Array(entropyBitsLen / 8);\n\n for (let i = 0; i < entropy.length; i += 1) {\n for (let j = 0; j < 8; j += 1) {\n if (concatBits[i * 8 + j]) {\n entropy[i] |= 1 << (7 - j);\n }\n }\n }\n\n // Checksum validation\n const hash = await sha256.digest(entropy);\n const hashBits = bytesToBits(hash);\n\n for (let i = 0; i < checksumBitsLen; i += 1) {\n if (concatBits[entropyBitsLen + i] !== hashBits[i]) {\n throw new Error(\"Checksum mismatch\");\n }\n }\n\n return entropy;\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {number}\n */\nexport function crc8(data) {\n let crc = 0xff;\n\n for (let i = 0; i < data.length - 1; i += 1) {\n crc ^= data[i];\n for (let j = 0; j < 8; j += 1) {\n crc = (crc >>> 1) ^ ((crc & 1) === 0 ? 0 : 0xb2);\n }\n }\n\n return crc ^ 0xff;\n}\n\n/**\n * @param {number[]} nums\n * @param {number} fromRadix\n * @param {number} toRadix\n * @param {number} toLength\n * @returns {Uint8Array}\n */\nexport function convertRadix(nums, fromRadix, toRadix, toLength) {\n let num = new BigNumber(0);\n\n for (const element of nums) {\n num = num.times(fromRadix);\n num = num.plus(element);\n }\n\n const result = new Uint8Array(toLength);\n\n for (let i = toLength - 1; i >= 0; i -= 1) {\n const tem = num.dividedToIntegerBy(toRadix);\n const rem = num.modulo(toRadix);\n num = tem;\n result[i] = rem.toNumber();\n }\n\n return result;\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {boolean[]}\n */\nexport function bytesToBits(data) {\n /** @type {boolean[]} */\n const bits = [];\n bits.fill(false, 0, data.length * 8);\n\n for (let i = 0; i < data.length; i += 1) {\n for (let j = 0; j < 8; j += 1) {\n bits[i * 8 + j] = (data[i] & (1 << (7 - j))) !== 0;\n }\n }\n\n return bits;\n}\n","// Originally sourced from:\n// https://github.com/MaiaVictor/eth-lib/blob/da0971f5b09964d9c8449975fa87933f0c9fef35/src/hash.js\n// - added type declarations\n// - switched to es6 module syntax\n//\n// Disable linting for entire file because it's nearly all pure JS\n// eslint-disable\n\nconst HEX_CHARS = \"0123456789abcdef\".split(\"\");\nconst KECCAK_PADDING = [1, 256, 65536, 16777216];\nconst SHIFT = [0, 8, 16, 24];\nconst RC = [\n 1, 0, 32898, 0, 32906, 2147483648, 2147516416, 2147483648, 32907, 0,\n 2147483649, 0, 2147516545, 2147483648, 32777, 2147483648, 138, 0, 136, 0,\n 2147516425, 0, 2147483658, 0, 2147516555, 0, 139, 2147483648, 32905,\n 2147483648, 32771, 2147483648, 32770, 2147483648, 128, 2147483648, 32778, 0,\n 2147483658, 2147483648, 2147516545, 2147483648, 32896, 2147483648,\n 2147483649, 0, 2147516424, 2147483648,\n];\n\n/**\n * @typedef {object} KeccakT\n * @property {number[]} blocks\n * @property {number} blockCount\n * @property {number} outputBlocks\n * @property {number[]} s\n * @property {number} start\n * @property {number} block\n * @property {boolean} reset\n * @property {number=} lastByteIndex\n */\n\n/** @type {(bits: number) => KeccakT} */\nconst Keccak = (bits) => ({\n blocks: [],\n reset: true,\n block: 0,\n start: 0,\n blockCount: (1600 - (bits << 1)) >> 5,\n outputBlocks: bits >> 5,\n // @ts-ignore\n s: ((s) => [].concat(s, s, s, s, s))([0, 0, 0, 0, 0, 0, 0, 0, 0, 0]),\n});\n\n/** @type {(state: KeccakT, message: string | number[]) => string} */\nconst update = (state, /** @type {string | number[]} */ message) => {\n var length = message.length,\n blocks = state.blocks,\n byteCount = state.blockCount << 2,\n blockCount = state.blockCount,\n outputBlocks = state.outputBlocks,\n s = state.s,\n index = 0,\n i,\n code;\n\n // update\n while (index < length) {\n if (state.reset) {\n state.reset = false;\n blocks[0] = state.block;\n for (i = 1; i < blockCount + 1; ++i) {\n blocks[i] = 0;\n }\n }\n if (typeof message !== \"string\") {\n for (i = state.start; index < length && i < byteCount; ++index) {\n blocks[i >> 2] |= message[index] << SHIFT[i++ & 3];\n }\n } else {\n for (i = state.start; index < length && i < byteCount; ++index) {\n code = message.charCodeAt(index);\n if (code < 0x80) {\n blocks[i >> 2] |= code << SHIFT[i++ & 3];\n } else if (code < 0x800) {\n blocks[i >> 2] |= (0xc0 | (code >> 6)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else if (code < 0xd800 || code >= 0xe000) {\n blocks[i >> 2] |= (0xe0 | (code >> 12)) << SHIFT[i++ & 3];\n blocks[i >> 2] |=\n (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else {\n code =\n 0x10000 +\n (((code & 0x3ff) << 10) |\n (message.charCodeAt(++index) & 0x3ff));\n blocks[i >> 2] |= (0xf0 | (code >> 18)) << SHIFT[i++ & 3];\n blocks[i >> 2] |=\n (0x80 | ((code >> 12) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |=\n (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n }\n }\n }\n state.lastByteIndex = i;\n if (i >= byteCount) {\n state.start = i - byteCount;\n state.block = blocks[blockCount];\n for (i = 0; i < blockCount; ++i) {\n s[i] ^= blocks[i];\n }\n f(s);\n state.reset = true;\n } else {\n state.start = i;\n }\n }\n\n // finalize\n i = state.lastByteIndex;\n // @ts-ignore\n blocks[i >> 2] |= KECCAK_PADDING[i & 3];\n if (state.lastByteIndex === byteCount) {\n blocks[0] = blocks[blockCount];\n for (i = 1; i < blockCount + 1; ++i) {\n blocks[i] = 0;\n }\n }\n blocks[blockCount - 1] |= 0x80000000;\n for (i = 0; i < blockCount; ++i) {\n s[i] ^= blocks[i];\n }\n f(s);\n\n // toString\n var hex = \"\";\n var block;\n var j = 0;\n i = 0;\n while (j < outputBlocks) {\n for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) {\n block = s[i];\n hex +=\n HEX_CHARS[(block >> 4) & 0x0f] +\n HEX_CHARS[block & 0x0f] +\n HEX_CHARS[(block >> 12) & 0x0f] +\n HEX_CHARS[(block >> 8) & 0x0f] +\n HEX_CHARS[(block >> 20) & 0x0f] +\n HEX_CHARS[(block >> 16) & 0x0f] +\n HEX_CHARS[(block >> 28) & 0x0f] +\n HEX_CHARS[(block >> 24) & 0x0f];\n }\n if (j % blockCount === 0) {\n f(s);\n i = 0;\n }\n }\n // @ts-ignore\n return \"0x\" + hex;\n};\n\n/** @type {(s: number[]) => void} */\nconst f = (s) => {\n var h,\n l,\n n,\n c0,\n c1,\n c2,\n c3,\n c4,\n c5,\n c6,\n c7,\n c8,\n c9,\n b0,\n b1,\n b2,\n b3,\n b4,\n b5,\n b6,\n b7,\n b8,\n b9,\n b10,\n b11,\n b12,\n b13,\n b14,\n b15,\n b16,\n b17,\n b18,\n b19,\n b20,\n b21,\n b22,\n b23,\n b24,\n b25,\n b26,\n b27,\n b28,\n b29,\n b30,\n b31,\n b32,\n b33,\n b34,\n b35,\n b36,\n b37,\n b38,\n b39,\n b40,\n b41,\n b42,\n b43,\n b44,\n b45,\n b46,\n b47,\n b48,\n b49;\n\n for (n = 0; n < 48; n += 2) {\n c0 = s[0] ^ s[10] ^ s[20] ^ s[30] ^ s[40];\n c1 = s[1] ^ s[11] ^ s[21] ^ s[31] ^ s[41];\n c2 = s[2] ^ s[12] ^ s[22] ^ s[32] ^ s[42];\n c3 = s[3] ^ s[13] ^ s[23] ^ s[33] ^ s[43];\n c4 = s[4] ^ s[14] ^ s[24] ^ s[34] ^ s[44];\n c5 = s[5] ^ s[15] ^ s[25] ^ s[35] ^ s[45];\n c6 = s[6] ^ s[16] ^ s[26] ^ s[36] ^ s[46];\n c7 = s[7] ^ s[17] ^ s[27] ^ s[37] ^ s[47];\n c8 = s[8] ^ s[18] ^ s[28] ^ s[38] ^ s[48];\n c9 = s[9] ^ s[19] ^ s[29] ^ s[39] ^ s[49];\n\n h = c8 ^ ((c2 << 1) | (c3 >>> 31));\n l = c9 ^ ((c3 << 1) | (c2 >>> 31));\n s[0] ^= h;\n s[1] ^= l;\n s[10] ^= h;\n s[11] ^= l;\n s[20] ^= h;\n s[21] ^= l;\n s[30] ^= h;\n s[31] ^= l;\n s[40] ^= h;\n s[41] ^= l;\n h = c0 ^ ((c4 << 1) | (c5 >>> 31));\n l = c1 ^ ((c5 << 1) | (c4 >>> 31));\n s[2] ^= h;\n s[3] ^= l;\n s[12] ^= h;\n s[13] ^= l;\n s[22] ^= h;\n s[23] ^= l;\n s[32] ^= h;\n s[33] ^= l;\n s[42] ^= h;\n s[43] ^= l;\n h = c2 ^ ((c6 << 1) | (c7 >>> 31));\n l = c3 ^ ((c7 << 1) | (c6 >>> 31));\n s[4] ^= h;\n s[5] ^= l;\n s[14] ^= h;\n s[15] ^= l;\n s[24] ^= h;\n s[25] ^= l;\n s[34] ^= h;\n s[35] ^= l;\n s[44] ^= h;\n s[45] ^= l;\n h = c4 ^ ((c8 << 1) | (c9 >>> 31));\n l = c5 ^ ((c9 << 1) | (c8 >>> 31));\n s[6] ^= h;\n s[7] ^= l;\n s[16] ^= h;\n s[17] ^= l;\n s[26] ^= h;\n s[27] ^= l;\n s[36] ^= h;\n s[37] ^= l;\n s[46] ^= h;\n s[47] ^= l;\n h = c6 ^ ((c0 << 1) | (c1 >>> 31));\n l = c7 ^ ((c1 << 1) | (c0 >>> 31));\n s[8] ^= h;\n s[9] ^= l;\n s[18] ^= h;\n s[19] ^= l;\n s[28] ^= h;\n s[29] ^= l;\n s[38] ^= h;\n s[39] ^= l;\n s[48] ^= h;\n s[49] ^= l;\n\n b0 = s[0];\n b1 = s[1];\n b32 = (s[11] << 4) | (s[10] >>> 28);\n b33 = (s[10] << 4) | (s[11] >>> 28);\n b14 = (s[20] << 3) | (s[21] >>> 29);\n b15 = (s[21] << 3) | (s[20] >>> 29);\n b46 = (s[31] << 9) | (s[30] >>> 23);\n b47 = (s[30] << 9) | (s[31] >>> 23);\n b28 = (s[40] << 18) | (s[41] >>> 14);\n b29 = (s[41] << 18) | (s[40] >>> 14);\n b20 = (s[2] << 1) | (s[3] >>> 31);\n b21 = (s[3] << 1) | (s[2] >>> 31);\n b2 = (s[13] << 12) | (s[12] >>> 20);\n b3 = (s[12] << 12) | (s[13] >>> 20);\n b34 = (s[22] << 10) | (s[23] >>> 22);\n b35 = (s[23] << 10) | (s[22] >>> 22);\n b16 = (s[33] << 13) | (s[32] >>> 19);\n b17 = (s[32] << 13) | (s[33] >>> 19);\n b48 = (s[42] << 2) | (s[43] >>> 30);\n b49 = (s[43] << 2) | (s[42] >>> 30);\n b40 = (s[5] << 30) | (s[4] >>> 2);\n b41 = (s[4] << 30) | (s[5] >>> 2);\n b22 = (s[14] << 6) | (s[15] >>> 26);\n b23 = (s[15] << 6) | (s[14] >>> 26);\n b4 = (s[25] << 11) | (s[24] >>> 21);\n b5 = (s[24] << 11) | (s[25] >>> 21);\n b36 = (s[34] << 15) | (s[35] >>> 17);\n b37 = (s[35] << 15) | (s[34] >>> 17);\n b18 = (s[45] << 29) | (s[44] >>> 3);\n b19 = (s[44] << 29) | (s[45] >>> 3);\n b10 = (s[6] << 28) | (s[7] >>> 4);\n b11 = (s[7] << 28) | (s[6] >>> 4);\n b42 = (s[17] << 23) | (s[16] >>> 9);\n b43 = (s[16] << 23) | (s[17] >>> 9);\n b24 = (s[26] << 25) | (s[27] >>> 7);\n b25 = (s[27] << 25) | (s[26] >>> 7);\n b6 = (s[36] << 21) | (s[37] >>> 11);\n b7 = (s[37] << 21) | (s[36] >>> 11);\n b38 = (s[47] << 24) | (s[46] >>> 8);\n b39 = (s[46] << 24) | (s[47] >>> 8);\n b30 = (s[8] << 27) | (s[9] >>> 5);\n b31 = (s[9] << 27) | (s[8] >>> 5);\n b12 = (s[18] << 20) | (s[19] >>> 12);\n b13 = (s[19] << 20) | (s[18] >>> 12);\n b44 = (s[29] << 7) | (s[28] >>> 25);\n b45 = (s[28] << 7) | (s[29] >>> 25);\n b26 = (s[38] << 8) | (s[39] >>> 24);\n b27 = (s[39] << 8) | (s[38] >>> 24);\n b8 = (s[48] << 14) | (s[49] >>> 18);\n b9 = (s[49] << 14) | (s[48] >>> 18);\n\n s[0] = b0 ^ (~b2 & b4);\n s[1] = b1 ^ (~b3 & b5);\n s[10] = b10 ^ (~b12 & b14);\n s[11] = b11 ^ (~b13 & b15);\n s[20] = b20 ^ (~b22 & b24);\n s[21] = b21 ^ (~b23 & b25);\n s[30] = b30 ^ (~b32 & b34);\n s[31] = b31 ^ (~b33 & b35);\n s[40] = b40 ^ (~b42 & b44);\n s[41] = b41 ^ (~b43 & b45);\n s[2] = b2 ^ (~b4 & b6);\n s[3] = b3 ^ (~b5 & b7);\n s[12] = b12 ^ (~b14 & b16);\n s[13] = b13 ^ (~b15 & b17);\n s[22] = b22 ^ (~b24 & b26);\n s[23] = b23 ^ (~b25 & b27);\n s[32] = b32 ^ (~b34 & b36);\n s[33] = b33 ^ (~b35 & b37);\n s[42] = b42 ^ (~b44 & b46);\n s[43] = b43 ^ (~b45 & b47);\n s[4] = b4 ^ (~b6 & b8);\n s[5] = b5 ^ (~b7 & b9);\n s[14] = b14 ^ (~b16 & b18);\n s[15] = b15 ^ (~b17 & b19);\n s[24] = b24 ^ (~b26 & b28);\n s[25] = b25 ^ (~b27 & b29);\n s[34] = b34 ^ (~b36 & b38);\n s[35] = b35 ^ (~b37 & b39);\n s[44] = b44 ^ (~b46 & b48);\n s[45] = b45 ^ (~b47 & b49);\n s[6] = b6 ^ (~b8 & b0);\n s[7] = b7 ^ (~b9 & b1);\n s[16] = b16 ^ (~b18 & b10);\n s[17] = b17 ^ (~b19 & b11);\n s[26] = b26 ^ (~b28 & b20);\n s[27] = b27 ^ (~b29 & b21);\n s[36] = b36 ^ (~b38 & b30);\n s[37] = b37 ^ (~b39 & b31);\n s[46] = b46 ^ (~b48 & b40);\n s[47] = b47 ^ (~b49 & b41);\n s[8] = b8 ^ (~b0 & b2);\n s[9] = b9 ^ (~b1 & b3);\n s[18] = b18 ^ (~b10 & b12);\n s[19] = b19 ^ (~b11 & b13);\n s[28] = b28 ^ (~b20 & b22);\n s[29] = b29 ^ (~b21 & b23);\n s[38] = b38 ^ (~b30 & b32);\n s[39] = b39 ^ (~b31 & b33);\n s[48] = b48 ^ (~b40 & b42);\n s[49] = b49 ^ (~b41 & b43);\n\n s[0] ^= RC[n];\n s[1] ^= RC[n + 1];\n }\n};\n\nconst keccak = (/** @type {number} */ bits) => (/** @type {string} */ str) => {\n var msg;\n if (str.slice(0, 2) === \"0x\") {\n msg = [];\n for (var i = 2, l = str.length; i < l; i += 2)\n msg.push(parseInt(str.slice(i, i + 2), 16));\n } else {\n msg = str;\n }\n // @ts-ignore\n return update(Keccak(bits, bits), msg);\n};\n\n/**\n * @type {(message: string) => string}\n */\nexport const keccak256 = keccak(256);\n","'use strict';\n\nvar utils = require('../utils');\nvar BN = require('bn.js');\nvar inherits = require('inherits');\nvar Base = require('./base');\n\nvar assert = utils.assert;\n\nfunction ShortCurve(conf) {\n Base.call(this, 'short', conf);\n\n this.a = new BN(conf.a, 16).toRed(this.red);\n this.b = new BN(conf.b, 16).toRed(this.red);\n this.tinv = this.two.redInvm();\n\n this.zeroA = this.a.fromRed().cmpn(0) === 0;\n this.threeA = this.a.fromRed().sub(this.p).cmpn(-3) === 0;\n\n // If the curve is endomorphic, precalculate beta and lambda\n this.endo = this._getEndomorphism(conf);\n this._endoWnafT1 = new Array(4);\n this._endoWnafT2 = new Array(4);\n}\ninherits(ShortCurve, Base);\nmodule.exports = ShortCurve;\n\nShortCurve.prototype._getEndomorphism = function _getEndomorphism(conf) {\n // No efficient endomorphism\n if (!this.zeroA || !this.g || !this.n || this.p.modn(3) !== 1)\n return;\n\n // Compute beta and lambda, that lambda * P = (beta * Px; Py)\n var beta;\n var lambda;\n if (conf.beta) {\n beta = new BN(conf.beta, 16).toRed(this.red);\n } else {\n var betas = this._getEndoRoots(this.p);\n // Choose the smallest beta\n beta = betas[0].cmp(betas[1]) < 0 ? betas[0] : betas[1];\n beta = beta.toRed(this.red);\n }\n if (conf.lambda) {\n lambda = new BN(conf.lambda, 16);\n } else {\n // Choose the lambda that is matching selected beta\n var lambdas = this._getEndoRoots(this.n);\n if (this.g.mul(lambdas[0]).x.cmp(this.g.x.redMul(beta)) === 0) {\n lambda = lambdas[0];\n } else {\n lambda = lambdas[1];\n assert(this.g.mul(lambda).x.cmp(this.g.x.redMul(beta)) === 0);\n }\n }\n\n // Get basis vectors, used for balanced length-two representation\n var basis;\n if (conf.basis) {\n basis = conf.basis.map(function(vec) {\n return {\n a: new BN(vec.a, 16),\n b: new BN(vec.b, 16),\n };\n });\n } else {\n basis = this._getEndoBasis(lambda);\n }\n\n return {\n beta: beta,\n lambda: lambda,\n basis: basis,\n };\n};\n\nShortCurve.prototype._getEndoRoots = function _getEndoRoots(num) {\n // Find roots of for x^2 + x + 1 in F\n // Root = (-1 +- Sqrt(-3)) / 2\n //\n var red = num === this.p ? this.red : BN.mont(num);\n var tinv = new BN(2).toRed(red).redInvm();\n var ntinv = tinv.redNeg();\n\n var s = new BN(3).toRed(red).redNeg().redSqrt().redMul(tinv);\n\n var l1 = ntinv.redAdd(s).fromRed();\n var l2 = ntinv.redSub(s).fromRed();\n return [ l1, l2 ];\n};\n\nShortCurve.prototype._getEndoBasis = function _getEndoBasis(lambda) {\n // aprxSqrt >= sqrt(this.n)\n var aprxSqrt = this.n.ushrn(Math.floor(this.n.bitLength() / 2));\n\n // 3.74\n // Run EGCD, until r(L + 1) < aprxSqrt\n var u = lambda;\n var v = this.n.clone();\n var x1 = new BN(1);\n var y1 = new BN(0);\n var x2 = new BN(0);\n var y2 = new BN(1);\n\n // NOTE: all vectors are roots of: a + b * lambda = 0 (mod n)\n var a0;\n var b0;\n // First vector\n var a1;\n var b1;\n // Second vector\n var a2;\n var b2;\n\n var prevR;\n var i = 0;\n var r;\n var x;\n while (u.cmpn(0) !== 0) {\n var q = v.div(u);\n r = v.sub(q.mul(u));\n x = x2.sub(q.mul(x1));\n var y = y2.sub(q.mul(y1));\n\n if (!a1 && r.cmp(aprxSqrt) < 0) {\n a0 = prevR.neg();\n b0 = x1;\n a1 = r.neg();\n b1 = x;\n } else if (a1 && ++i === 2) {\n break;\n }\n prevR = r;\n\n v = u;\n u = r;\n x2 = x1;\n x1 = x;\n y2 = y1;\n y1 = y;\n }\n a2 = r.neg();\n b2 = x;\n\n var len1 = a1.sqr().add(b1.sqr());\n var len2 = a2.sqr().add(b2.sqr());\n if (len2.cmp(len1) >= 0) {\n a2 = a0;\n b2 = b0;\n }\n\n // Normalize signs\n if (a1.negative) {\n a1 = a1.neg();\n b1 = b1.neg();\n }\n if (a2.negative) {\n a2 = a2.neg();\n b2 = b2.neg();\n }\n\n return [\n { a: a1, b: b1 },\n { a: a2, b: b2 },\n ];\n};\n\nShortCurve.prototype._endoSplit = function _endoSplit(k) {\n var basis = this.endo.basis;\n var v1 = basis[0];\n var v2 = basis[1];\n\n var c1 = v2.b.mul(k).divRound(this.n);\n var c2 = v1.b.neg().mul(k).divRound(this.n);\n\n var p1 = c1.mul(v1.a);\n var p2 = c2.mul(v2.a);\n var q1 = c1.mul(v1.b);\n var q2 = c2.mul(v2.b);\n\n // Calculate answer\n var k1 = k.sub(p1).sub(p2);\n var k2 = q1.add(q2).neg();\n return { k1: k1, k2: k2 };\n};\n\nShortCurve.prototype.pointFromX = function pointFromX(x, odd) {\n x = new BN(x, 16);\n if (!x.red)\n x = x.toRed(this.red);\n\n var y2 = x.redSqr().redMul(x).redIAdd(x.redMul(this.a)).redIAdd(this.b);\n var y = y2.redSqrt();\n if (y.redSqr().redSub(y2).cmp(this.zero) !== 0)\n throw new Error('invalid point');\n\n // XXX Is there any way to tell if the number is odd without converting it\n // to non-red form?\n var isOdd = y.fromRed().isOdd();\n if (odd && !isOdd || !odd && isOdd)\n y = y.redNeg();\n\n return this.point(x, y);\n};\n\nShortCurve.prototype.validate = function validate(point) {\n if (point.inf)\n return true;\n\n var x = point.x;\n var y = point.y;\n\n var ax = this.a.redMul(x);\n var rhs = x.redSqr().redMul(x).redIAdd(ax).redIAdd(this.b);\n return y.redSqr().redISub(rhs).cmpn(0) === 0;\n};\n\nShortCurve.prototype._endoWnafMulAdd =\n function _endoWnafMulAdd(points, coeffs, jacobianResult) {\n var npoints = this._endoWnafT1;\n var ncoeffs = this._endoWnafT2;\n for (var i = 0; i < points.length; i++) {\n var split = this._endoSplit(coeffs[i]);\n var p = points[i];\n var beta = p._getBeta();\n\n if (split.k1.negative) {\n split.k1.ineg();\n p = p.neg(true);\n }\n if (split.k2.negative) {\n split.k2.ineg();\n beta = beta.neg(true);\n }\n\n npoints[i * 2] = p;\n npoints[i * 2 + 1] = beta;\n ncoeffs[i * 2] = split.k1;\n ncoeffs[i * 2 + 1] = split.k2;\n }\n var res = this._wnafMulAdd(1, npoints, ncoeffs, i * 2, jacobianResult);\n\n // Clean-up references to points and coefficients\n for (var j = 0; j < i * 2; j++) {\n npoints[j] = null;\n ncoeffs[j] = null;\n }\n return res;\n };\n\nfunction Point(curve, x, y, isRed) {\n Base.BasePoint.call(this, curve, 'affine');\n if (x === null && y === null) {\n this.x = null;\n this.y = null;\n this.inf = true;\n } else {\n this.x = new BN(x, 16);\n this.y = new BN(y, 16);\n // Force redgomery representation when loading from JSON\n if (isRed) {\n this.x.forceRed(this.curve.red);\n this.y.forceRed(this.curve.red);\n }\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.y.red)\n this.y = this.y.toRed(this.curve.red);\n this.inf = false;\n }\n}\ninherits(Point, Base.BasePoint);\n\nShortCurve.prototype.point = function point(x, y, isRed) {\n return new Point(this, x, y, isRed);\n};\n\nShortCurve.prototype.pointFromJSON = function pointFromJSON(obj, red) {\n return Point.fromJSON(this, obj, red);\n};\n\nPoint.prototype._getBeta = function _getBeta() {\n if (!this.curve.endo)\n return;\n\n var pre = this.precomputed;\n if (pre && pre.beta)\n return pre.beta;\n\n var beta = this.curve.point(this.x.redMul(this.curve.endo.beta), this.y);\n if (pre) {\n var curve = this.curve;\n var endoMul = function(p) {\n return curve.point(p.x.redMul(curve.endo.beta), p.y);\n };\n pre.beta = beta;\n beta.precomputed = {\n beta: null,\n naf: pre.naf && {\n wnd: pre.naf.wnd,\n points: pre.naf.points.map(endoMul),\n },\n doubles: pre.doubles && {\n step: pre.doubles.step,\n points: pre.doubles.points.map(endoMul),\n },\n };\n }\n return beta;\n};\n\nPoint.prototype.toJSON = function toJSON() {\n if (!this.precomputed)\n return [ this.x, this.y ];\n\n return [ this.x, this.y, this.precomputed && {\n doubles: this.precomputed.doubles && {\n step: this.precomputed.doubles.step,\n points: this.precomputed.doubles.points.slice(1),\n },\n naf: this.precomputed.naf && {\n wnd: this.precomputed.naf.wnd,\n points: this.precomputed.naf.points.slice(1),\n },\n } ];\n};\n\nPoint.fromJSON = function fromJSON(curve, obj, red) {\n if (typeof obj === 'string')\n obj = JSON.parse(obj);\n var res = curve.point(obj[0], obj[1], red);\n if (!obj[2])\n return res;\n\n function obj2point(obj) {\n return curve.point(obj[0], obj[1], red);\n }\n\n var pre = obj[2];\n res.precomputed = {\n beta: null,\n doubles: pre.doubles && {\n step: pre.doubles.step,\n points: [ res ].concat(pre.doubles.points.map(obj2point)),\n },\n naf: pre.naf && {\n wnd: pre.naf.wnd,\n points: [ res ].concat(pre.naf.points.map(obj2point)),\n },\n };\n return res;\n};\n\nPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nPoint.prototype.isInfinity = function isInfinity() {\n return this.inf;\n};\n\nPoint.prototype.add = function add(p) {\n // O + P = P\n if (this.inf)\n return p;\n\n // P + O = P\n if (p.inf)\n return this;\n\n // P + P = 2P\n if (this.eq(p))\n return this.dbl();\n\n // P + (-P) = O\n if (this.neg().eq(p))\n return this.curve.point(null, null);\n\n // P + Q = O\n if (this.x.cmp(p.x) === 0)\n return this.curve.point(null, null);\n\n var c = this.y.redSub(p.y);\n if (c.cmpn(0) !== 0)\n c = c.redMul(this.x.redSub(p.x).redInvm());\n var nx = c.redSqr().redISub(this.x).redISub(p.x);\n var ny = c.redMul(this.x.redSub(nx)).redISub(this.y);\n return this.curve.point(nx, ny);\n};\n\nPoint.prototype.dbl = function dbl() {\n if (this.inf)\n return this;\n\n // 2P = O\n var ys1 = this.y.redAdd(this.y);\n if (ys1.cmpn(0) === 0)\n return this.curve.point(null, null);\n\n var a = this.curve.a;\n\n var x2 = this.x.redSqr();\n var dyinv = ys1.redInvm();\n var c = x2.redAdd(x2).redIAdd(x2).redIAdd(a).redMul(dyinv);\n\n var nx = c.redSqr().redISub(this.x.redAdd(this.x));\n var ny = c.redMul(this.x.redSub(nx)).redISub(this.y);\n return this.curve.point(nx, ny);\n};\n\nPoint.prototype.getX = function getX() {\n return this.x.fromRed();\n};\n\nPoint.prototype.getY = function getY() {\n return this.y.fromRed();\n};\n\nPoint.prototype.mul = function mul(k) {\n k = new BN(k, 16);\n if (this.isInfinity())\n return this;\n else if (this._hasDoubles(k))\n return this.curve._fixedNafMul(this, k);\n else if (this.curve.endo)\n return this.curve._endoWnafMulAdd([ this ], [ k ]);\n else\n return this.curve._wnafMul(this, k);\n};\n\nPoint.prototype.mulAdd = function mulAdd(k1, p2, k2) {\n var points = [ this, p2 ];\n var coeffs = [ k1, k2 ];\n if (this.curve.endo)\n return this.curve._endoWnafMulAdd(points, coeffs);\n else\n return this.curve._wnafMulAdd(1, points, coeffs, 2);\n};\n\nPoint.prototype.jmulAdd = function jmulAdd(k1, p2, k2) {\n var points = [ this, p2 ];\n var coeffs = [ k1, k2 ];\n if (this.curve.endo)\n return this.curve._endoWnafMulAdd(points, coeffs, true);\n else\n return this.curve._wnafMulAdd(1, points, coeffs, 2, true);\n};\n\nPoint.prototype.eq = function eq(p) {\n return this === p ||\n this.inf === p.inf &&\n (this.inf || this.x.cmp(p.x) === 0 && this.y.cmp(p.y) === 0);\n};\n\nPoint.prototype.neg = function neg(_precompute) {\n if (this.inf)\n return this;\n\n var res = this.curve.point(this.x, this.y.redNeg());\n if (_precompute && this.precomputed) {\n var pre = this.precomputed;\n var negate = function(p) {\n return p.neg();\n };\n res.precomputed = {\n naf: pre.naf && {\n wnd: pre.naf.wnd,\n points: pre.naf.points.map(negate),\n },\n doubles: pre.doubles && {\n step: pre.doubles.step,\n points: pre.doubles.points.map(negate),\n },\n };\n }\n return res;\n};\n\nPoint.prototype.toJ = function toJ() {\n if (this.inf)\n return this.curve.jpoint(null, null, null);\n\n var res = this.curve.jpoint(this.x, this.y, this.curve.one);\n return res;\n};\n\nfunction JPoint(curve, x, y, z) {\n Base.BasePoint.call(this, curve, 'jacobian');\n if (x === null && y === null && z === null) {\n this.x = this.curve.one;\n this.y = this.curve.one;\n this.z = new BN(0);\n } else {\n this.x = new BN(x, 16);\n this.y = new BN(y, 16);\n this.z = new BN(z, 16);\n }\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.y.red)\n this.y = this.y.toRed(this.curve.red);\n if (!this.z.red)\n this.z = this.z.toRed(this.curve.red);\n\n this.zOne = this.z === this.curve.one;\n}\ninherits(JPoint, Base.BasePoint);\n\nShortCurve.prototype.jpoint = function jpoint(x, y, z) {\n return new JPoint(this, x, y, z);\n};\n\nJPoint.prototype.toP = function toP() {\n if (this.isInfinity())\n return this.curve.point(null, null);\n\n var zinv = this.z.redInvm();\n var zinv2 = zinv.redSqr();\n var ax = this.x.redMul(zinv2);\n var ay = this.y.redMul(zinv2).redMul(zinv);\n\n return this.curve.point(ax, ay);\n};\n\nJPoint.prototype.neg = function neg() {\n return this.curve.jpoint(this.x, this.y.redNeg(), this.z);\n};\n\nJPoint.prototype.add = function add(p) {\n // O + P = P\n if (this.isInfinity())\n return p;\n\n // P + O = P\n if (p.isInfinity())\n return this;\n\n // 12M + 4S + 7A\n var pz2 = p.z.redSqr();\n var z2 = this.z.redSqr();\n var u1 = this.x.redMul(pz2);\n var u2 = p.x.redMul(z2);\n var s1 = this.y.redMul(pz2.redMul(p.z));\n var s2 = p.y.redMul(z2.redMul(this.z));\n\n var h = u1.redSub(u2);\n var r = s1.redSub(s2);\n if (h.cmpn(0) === 0) {\n if (r.cmpn(0) !== 0)\n return this.curve.jpoint(null, null, null);\n else\n return this.dbl();\n }\n\n var h2 = h.redSqr();\n var h3 = h2.redMul(h);\n var v = u1.redMul(h2);\n\n var nx = r.redSqr().redIAdd(h3).redISub(v).redISub(v);\n var ny = r.redMul(v.redISub(nx)).redISub(s1.redMul(h3));\n var nz = this.z.redMul(p.z).redMul(h);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.mixedAdd = function mixedAdd(p) {\n // O + P = P\n if (this.isInfinity())\n return p.toJ();\n\n // P + O = P\n if (p.isInfinity())\n return this;\n\n // 8M + 3S + 7A\n var z2 = this.z.redSqr();\n var u1 = this.x;\n var u2 = p.x.redMul(z2);\n var s1 = this.y;\n var s2 = p.y.redMul(z2).redMul(this.z);\n\n var h = u1.redSub(u2);\n var r = s1.redSub(s2);\n if (h.cmpn(0) === 0) {\n if (r.cmpn(0) !== 0)\n return this.curve.jpoint(null, null, null);\n else\n return this.dbl();\n }\n\n var h2 = h.redSqr();\n var h3 = h2.redMul(h);\n var v = u1.redMul(h2);\n\n var nx = r.redSqr().redIAdd(h3).redISub(v).redISub(v);\n var ny = r.redMul(v.redISub(nx)).redISub(s1.redMul(h3));\n var nz = this.z.redMul(h);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.dblp = function dblp(pow) {\n if (pow === 0)\n return this;\n if (this.isInfinity())\n return this;\n if (!pow)\n return this.dbl();\n\n var i;\n if (this.curve.zeroA || this.curve.threeA) {\n var r = this;\n for (i = 0; i < pow; i++)\n r = r.dbl();\n return r;\n }\n\n // 1M + 2S + 1A + N * (4S + 5M + 8A)\n // N = 1 => 6M + 6S + 9A\n var a = this.curve.a;\n var tinv = this.curve.tinv;\n\n var jx = this.x;\n var jy = this.y;\n var jz = this.z;\n var jz4 = jz.redSqr().redSqr();\n\n // Reuse results\n var jyd = jy.redAdd(jy);\n for (i = 0; i < pow; i++) {\n var jx2 = jx.redSqr();\n var jyd2 = jyd.redSqr();\n var jyd4 = jyd2.redSqr();\n var c = jx2.redAdd(jx2).redIAdd(jx2).redIAdd(a.redMul(jz4));\n\n var t1 = jx.redMul(jyd2);\n var nx = c.redSqr().redISub(t1.redAdd(t1));\n var t2 = t1.redISub(nx);\n var dny = c.redMul(t2);\n dny = dny.redIAdd(dny).redISub(jyd4);\n var nz = jyd.redMul(jz);\n if (i + 1 < pow)\n jz4 = jz4.redMul(jyd4);\n\n jx = nx;\n jz = nz;\n jyd = dny;\n }\n\n return this.curve.jpoint(jx, jyd.redMul(tinv), jz);\n};\n\nJPoint.prototype.dbl = function dbl() {\n if (this.isInfinity())\n return this;\n\n if (this.curve.zeroA)\n return this._zeroDbl();\n else if (this.curve.threeA)\n return this._threeDbl();\n else\n return this._dbl();\n};\n\nJPoint.prototype._zeroDbl = function _zeroDbl() {\n var nx;\n var ny;\n var nz;\n // Z = 1\n if (this.zOne) {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html\n // #doubling-mdbl-2007-bl\n // 1M + 5S + 14A\n\n // XX = X1^2\n var xx = this.x.redSqr();\n // YY = Y1^2\n var yy = this.y.redSqr();\n // YYYY = YY^2\n var yyyy = yy.redSqr();\n // S = 2 * ((X1 + YY)^2 - XX - YYYY)\n var s = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy);\n s = s.redIAdd(s);\n // M = 3 * XX + a; a = 0\n var m = xx.redAdd(xx).redIAdd(xx);\n // T = M ^ 2 - 2*S\n var t = m.redSqr().redISub(s).redISub(s);\n\n // 8 * YYYY\n var yyyy8 = yyyy.redIAdd(yyyy);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n\n // X3 = T\n nx = t;\n // Y3 = M * (S - T) - 8 * YYYY\n ny = m.redMul(s.redISub(t)).redISub(yyyy8);\n // Z3 = 2*Y1\n nz = this.y.redAdd(this.y);\n } else {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html\n // #doubling-dbl-2009-l\n // 2M + 5S + 13A\n\n // A = X1^2\n var a = this.x.redSqr();\n // B = Y1^2\n var b = this.y.redSqr();\n // C = B^2\n var c = b.redSqr();\n // D = 2 * ((X1 + B)^2 - A - C)\n var d = this.x.redAdd(b).redSqr().redISub(a).redISub(c);\n d = d.redIAdd(d);\n // E = 3 * A\n var e = a.redAdd(a).redIAdd(a);\n // F = E^2\n var f = e.redSqr();\n\n // 8 * C\n var c8 = c.redIAdd(c);\n c8 = c8.redIAdd(c8);\n c8 = c8.redIAdd(c8);\n\n // X3 = F - 2 * D\n nx = f.redISub(d).redISub(d);\n // Y3 = E * (D - X3) - 8 * C\n ny = e.redMul(d.redISub(nx)).redISub(c8);\n // Z3 = 2 * Y1 * Z1\n nz = this.y.redMul(this.z);\n nz = nz.redIAdd(nz);\n }\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype._threeDbl = function _threeDbl() {\n var nx;\n var ny;\n var nz;\n // Z = 1\n if (this.zOne) {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-3.html\n // #doubling-mdbl-2007-bl\n // 1M + 5S + 15A\n\n // XX = X1^2\n var xx = this.x.redSqr();\n // YY = Y1^2\n var yy = this.y.redSqr();\n // YYYY = YY^2\n var yyyy = yy.redSqr();\n // S = 2 * ((X1 + YY)^2 - XX - YYYY)\n var s = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy);\n s = s.redIAdd(s);\n // M = 3 * XX + a\n var m = xx.redAdd(xx).redIAdd(xx).redIAdd(this.curve.a);\n // T = M^2 - 2 * S\n var t = m.redSqr().redISub(s).redISub(s);\n // X3 = T\n nx = t;\n // Y3 = M * (S - T) - 8 * YYYY\n var yyyy8 = yyyy.redIAdd(yyyy);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n ny = m.redMul(s.redISub(t)).redISub(yyyy8);\n // Z3 = 2 * Y1\n nz = this.y.redAdd(this.y);\n } else {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-3.html#doubling-dbl-2001-b\n // 3M + 5S\n\n // delta = Z1^2\n var delta = this.z.redSqr();\n // gamma = Y1^2\n var gamma = this.y.redSqr();\n // beta = X1 * gamma\n var beta = this.x.redMul(gamma);\n // alpha = 3 * (X1 - delta) * (X1 + delta)\n var alpha = this.x.redSub(delta).redMul(this.x.redAdd(delta));\n alpha = alpha.redAdd(alpha).redIAdd(alpha);\n // X3 = alpha^2 - 8 * beta\n var beta4 = beta.redIAdd(beta);\n beta4 = beta4.redIAdd(beta4);\n var beta8 = beta4.redAdd(beta4);\n nx = alpha.redSqr().redISub(beta8);\n // Z3 = (Y1 + Z1)^2 - gamma - delta\n nz = this.y.redAdd(this.z).redSqr().redISub(gamma).redISub(delta);\n // Y3 = alpha * (4 * beta - X3) - 8 * gamma^2\n var ggamma8 = gamma.redSqr();\n ggamma8 = ggamma8.redIAdd(ggamma8);\n ggamma8 = ggamma8.redIAdd(ggamma8);\n ggamma8 = ggamma8.redIAdd(ggamma8);\n ny = alpha.redMul(beta4.redISub(nx)).redISub(ggamma8);\n }\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype._dbl = function _dbl() {\n var a = this.curve.a;\n\n // 4M + 6S + 10A\n var jx = this.x;\n var jy = this.y;\n var jz = this.z;\n var jz4 = jz.redSqr().redSqr();\n\n var jx2 = jx.redSqr();\n var jy2 = jy.redSqr();\n\n var c = jx2.redAdd(jx2).redIAdd(jx2).redIAdd(a.redMul(jz4));\n\n var jxd4 = jx.redAdd(jx);\n jxd4 = jxd4.redIAdd(jxd4);\n var t1 = jxd4.redMul(jy2);\n var nx = c.redSqr().redISub(t1.redAdd(t1));\n var t2 = t1.redISub(nx);\n\n var jyd8 = jy2.redSqr();\n jyd8 = jyd8.redIAdd(jyd8);\n jyd8 = jyd8.redIAdd(jyd8);\n jyd8 = jyd8.redIAdd(jyd8);\n var ny = c.redMul(t2).redISub(jyd8);\n var nz = jy.redAdd(jy).redMul(jz);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.trpl = function trpl() {\n if (!this.curve.zeroA)\n return this.dbl().add(this);\n\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html#tripling-tpl-2007-bl\n // 5M + 10S + ...\n\n // XX = X1^2\n var xx = this.x.redSqr();\n // YY = Y1^2\n var yy = this.y.redSqr();\n // ZZ = Z1^2\n var zz = this.z.redSqr();\n // YYYY = YY^2\n var yyyy = yy.redSqr();\n // M = 3 * XX + a * ZZ2; a = 0\n var m = xx.redAdd(xx).redIAdd(xx);\n // MM = M^2\n var mm = m.redSqr();\n // E = 6 * ((X1 + YY)^2 - XX - YYYY) - MM\n var e = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy);\n e = e.redIAdd(e);\n e = e.redAdd(e).redIAdd(e);\n e = e.redISub(mm);\n // EE = E^2\n var ee = e.redSqr();\n // T = 16*YYYY\n var t = yyyy.redIAdd(yyyy);\n t = t.redIAdd(t);\n t = t.redIAdd(t);\n t = t.redIAdd(t);\n // U = (M + E)^2 - MM - EE - T\n var u = m.redIAdd(e).redSqr().redISub(mm).redISub(ee).redISub(t);\n // X3 = 4 * (X1 * EE - 4 * YY * U)\n var yyu4 = yy.redMul(u);\n yyu4 = yyu4.redIAdd(yyu4);\n yyu4 = yyu4.redIAdd(yyu4);\n var nx = this.x.redMul(ee).redISub(yyu4);\n nx = nx.redIAdd(nx);\n nx = nx.redIAdd(nx);\n // Y3 = 8 * Y1 * (U * (T - U) - E * EE)\n var ny = this.y.redMul(u.redMul(t.redISub(u)).redISub(e.redMul(ee)));\n ny = ny.redIAdd(ny);\n ny = ny.redIAdd(ny);\n ny = ny.redIAdd(ny);\n // Z3 = (Z1 + E)^2 - ZZ - EE\n var nz = this.z.redAdd(e).redSqr().redISub(zz).redISub(ee);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.mul = function mul(k, kbase) {\n k = new BN(k, kbase);\n\n return this.curve._wnafMul(this, k);\n};\n\nJPoint.prototype.eq = function eq(p) {\n if (p.type === 'affine')\n return this.eq(p.toJ());\n\n if (this === p)\n return true;\n\n // x1 * z2^2 == x2 * z1^2\n var z2 = this.z.redSqr();\n var pz2 = p.z.redSqr();\n if (this.x.redMul(pz2).redISub(p.x.redMul(z2)).cmpn(0) !== 0)\n return false;\n\n // y1 * z2^3 == y2 * z1^3\n var z3 = z2.redMul(this.z);\n var pz3 = pz2.redMul(p.z);\n return this.y.redMul(pz3).redISub(p.y.redMul(z3)).cmpn(0) === 0;\n};\n\nJPoint.prototype.eqXToP = function eqXToP(x) {\n var zs = this.z.redSqr();\n var rx = x.toRed(this.curve.red).redMul(zs);\n if (this.x.cmp(rx) === 0)\n return true;\n\n var xc = x.clone();\n var t = this.curve.redN.redMul(zs);\n for (;;) {\n xc.iadd(this.curve.n);\n if (xc.cmp(this.curve.p) >= 0)\n return false;\n\n rx.redIAdd(t);\n if (this.x.cmp(rx) === 0)\n return true;\n }\n};\n\nJPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nJPoint.prototype.isInfinity = function isInfinity() {\n // XXX This code assumes that zero is always zero in red\n return this.z.cmpn(0) === 0;\n};\n","'use strict';\n\nvar BN = require('bn.js');\nvar inherits = require('inherits');\nvar Base = require('./base');\n\nvar utils = require('../utils');\n\nfunction MontCurve(conf) {\n Base.call(this, 'mont', conf);\n\n this.a = new BN(conf.a, 16).toRed(this.red);\n this.b = new BN(conf.b, 16).toRed(this.red);\n this.i4 = new BN(4).toRed(this.red).redInvm();\n this.two = new BN(2).toRed(this.red);\n this.a24 = this.i4.redMul(this.a.redAdd(this.two));\n}\ninherits(MontCurve, Base);\nmodule.exports = MontCurve;\n\nMontCurve.prototype.validate = function validate(point) {\n var x = point.normalize().x;\n var x2 = x.redSqr();\n var rhs = x2.redMul(x).redAdd(x2.redMul(this.a)).redAdd(x);\n var y = rhs.redSqrt();\n\n return y.redSqr().cmp(rhs) === 0;\n};\n\nfunction Point(curve, x, z) {\n Base.BasePoint.call(this, curve, 'projective');\n if (x === null && z === null) {\n this.x = this.curve.one;\n this.z = this.curve.zero;\n } else {\n this.x = new BN(x, 16);\n this.z = new BN(z, 16);\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.z.red)\n this.z = this.z.toRed(this.curve.red);\n }\n}\ninherits(Point, Base.BasePoint);\n\nMontCurve.prototype.decodePoint = function decodePoint(bytes, enc) {\n return this.point(utils.toArray(bytes, enc), 1);\n};\n\nMontCurve.prototype.point = function point(x, z) {\n return new Point(this, x, z);\n};\n\nMontCurve.prototype.pointFromJSON = function pointFromJSON(obj) {\n return Point.fromJSON(this, obj);\n};\n\nPoint.prototype.precompute = function precompute() {\n // No-op\n};\n\nPoint.prototype._encode = function _encode() {\n return this.getX().toArray('be', this.curve.p.byteLength());\n};\n\nPoint.fromJSON = function fromJSON(curve, obj) {\n return new Point(curve, obj[0], obj[1] || curve.one);\n};\n\nPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nPoint.prototype.isInfinity = function isInfinity() {\n // XXX This code assumes that zero is always zero in red\n return this.z.cmpn(0) === 0;\n};\n\nPoint.prototype.dbl = function dbl() {\n // http://hyperelliptic.org/EFD/g1p/auto-montgom-xz.html#doubling-dbl-1987-m-3\n // 2M + 2S + 4A\n\n // A = X1 + Z1\n var a = this.x.redAdd(this.z);\n // AA = A^2\n var aa = a.redSqr();\n // B = X1 - Z1\n var b = this.x.redSub(this.z);\n // BB = B^2\n var bb = b.redSqr();\n // C = AA - BB\n var c = aa.redSub(bb);\n // X3 = AA * BB\n var nx = aa.redMul(bb);\n // Z3 = C * (BB + A24 * C)\n var nz = c.redMul(bb.redAdd(this.curve.a24.redMul(c)));\n return this.curve.point(nx, nz);\n};\n\nPoint.prototype.add = function add() {\n throw new Error('Not supported on Montgomery curve');\n};\n\nPoint.prototype.diffAdd = function diffAdd(p, diff) {\n // http://hyperelliptic.org/EFD/g1p/auto-montgom-xz.html#diffadd-dadd-1987-m-3\n // 4M + 2S + 6A\n\n // A = X2 + Z2\n var a = this.x.redAdd(this.z);\n // B = X2 - Z2\n var b = this.x.redSub(this.z);\n // C = X3 + Z3\n var c = p.x.redAdd(p.z);\n // D = X3 - Z3\n var d = p.x.redSub(p.z);\n // DA = D * A\n var da = d.redMul(a);\n // CB = C * B\n var cb = c.redMul(b);\n // X5 = Z1 * (DA + CB)^2\n var nx = diff.z.redMul(da.redAdd(cb).redSqr());\n // Z5 = X1 * (DA - CB)^2\n var nz = diff.x.redMul(da.redISub(cb).redSqr());\n return this.curve.point(nx, nz);\n};\n\nPoint.prototype.mul = function mul(k) {\n var t = k.clone();\n var a = this; // (N / 2) * Q + Q\n var b = this.curve.point(null, null); // (N / 2) * Q\n var c = this; // Q\n\n for (var bits = []; t.cmpn(0) !== 0; t.iushrn(1))\n bits.push(t.andln(1));\n\n for (var i = bits.length - 1; i >= 0; i--) {\n if (bits[i] === 0) {\n // N * Q + Q = ((N / 2) * Q + Q)) + (N / 2) * Q\n a = a.diffAdd(b, c);\n // N * Q = 2 * ((N / 2) * Q + Q))\n b = b.dbl();\n } else {\n // N * Q = ((N / 2) * Q + Q) + ((N / 2) * Q)\n b = a.diffAdd(b, c);\n // N * Q + Q = 2 * ((N / 2) * Q + Q)\n a = a.dbl();\n }\n }\n return b;\n};\n\nPoint.prototype.mulAdd = function mulAdd() {\n throw new Error('Not supported on Montgomery curve');\n};\n\nPoint.prototype.jumlAdd = function jumlAdd() {\n throw new Error('Not supported on Montgomery curve');\n};\n\nPoint.prototype.eq = function eq(other) {\n return this.getX().cmp(other.getX()) === 0;\n};\n\nPoint.prototype.normalize = function normalize() {\n this.x = this.x.redMul(this.z.redInvm());\n this.z = this.curve.one;\n return this;\n};\n\nPoint.prototype.getX = function getX() {\n // Normalize coordinates\n this.normalize();\n\n return this.x.fromRed();\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar BN = require('bn.js');\nvar inherits = require('inherits');\nvar Base = require('./base');\n\nvar assert = utils.assert;\n\nfunction EdwardsCurve(conf) {\n // NOTE: Important as we are creating point in Base.call()\n this.twisted = (conf.a | 0) !== 1;\n this.mOneA = this.twisted && (conf.a | 0) === -1;\n this.extended = this.mOneA;\n\n Base.call(this, 'edwards', conf);\n\n this.a = new BN(conf.a, 16).umod(this.red.m);\n this.a = this.a.toRed(this.red);\n this.c = new BN(conf.c, 16).toRed(this.red);\n this.c2 = this.c.redSqr();\n this.d = new BN(conf.d, 16).toRed(this.red);\n this.dd = this.d.redAdd(this.d);\n\n assert(!this.twisted || this.c.fromRed().cmpn(1) === 0);\n this.oneC = (conf.c | 0) === 1;\n}\ninherits(EdwardsCurve, Base);\nmodule.exports = EdwardsCurve;\n\nEdwardsCurve.prototype._mulA = function _mulA(num) {\n if (this.mOneA)\n return num.redNeg();\n else\n return this.a.redMul(num);\n};\n\nEdwardsCurve.prototype._mulC = function _mulC(num) {\n if (this.oneC)\n return num;\n else\n return this.c.redMul(num);\n};\n\n// Just for compatibility with Short curve\nEdwardsCurve.prototype.jpoint = function jpoint(x, y, z, t) {\n return this.point(x, y, z, t);\n};\n\nEdwardsCurve.prototype.pointFromX = function pointFromX(x, odd) {\n x = new BN(x, 16);\n if (!x.red)\n x = x.toRed(this.red);\n\n var x2 = x.redSqr();\n var rhs = this.c2.redSub(this.a.redMul(x2));\n var lhs = this.one.redSub(this.c2.redMul(this.d).redMul(x2));\n\n var y2 = rhs.redMul(lhs.redInvm());\n var y = y2.redSqrt();\n if (y.redSqr().redSub(y2).cmp(this.zero) !== 0)\n throw new Error('invalid point');\n\n var isOdd = y.fromRed().isOdd();\n if (odd && !isOdd || !odd && isOdd)\n y = y.redNeg();\n\n return this.point(x, y);\n};\n\nEdwardsCurve.prototype.pointFromY = function pointFromY(y, odd) {\n y = new BN(y, 16);\n if (!y.red)\n y = y.toRed(this.red);\n\n // x^2 = (y^2 - c^2) / (c^2 d y^2 - a)\n var y2 = y.redSqr();\n var lhs = y2.redSub(this.c2);\n var rhs = y2.redMul(this.d).redMul(this.c2).redSub(this.a);\n var x2 = lhs.redMul(rhs.redInvm());\n\n if (x2.cmp(this.zero) === 0) {\n if (odd)\n throw new Error('invalid point');\n else\n return this.point(this.zero, y);\n }\n\n var x = x2.redSqrt();\n if (x.redSqr().redSub(x2).cmp(this.zero) !== 0)\n throw new Error('invalid point');\n\n if (x.fromRed().isOdd() !== odd)\n x = x.redNeg();\n\n return this.point(x, y);\n};\n\nEdwardsCurve.prototype.validate = function validate(point) {\n if (point.isInfinity())\n return true;\n\n // Curve: A * X^2 + Y^2 = C^2 * (1 + D * X^2 * Y^2)\n point.normalize();\n\n var x2 = point.x.redSqr();\n var y2 = point.y.redSqr();\n var lhs = x2.redMul(this.a).redAdd(y2);\n var rhs = this.c2.redMul(this.one.redAdd(this.d.redMul(x2).redMul(y2)));\n\n return lhs.cmp(rhs) === 0;\n};\n\nfunction Point(curve, x, y, z, t) {\n Base.BasePoint.call(this, curve, 'projective');\n if (x === null && y === null && z === null) {\n this.x = this.curve.zero;\n this.y = this.curve.one;\n this.z = this.curve.one;\n this.t = this.curve.zero;\n this.zOne = true;\n } else {\n this.x = new BN(x, 16);\n this.y = new BN(y, 16);\n this.z = z ? new BN(z, 16) : this.curve.one;\n this.t = t && new BN(t, 16);\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.y.red)\n this.y = this.y.toRed(this.curve.red);\n if (!this.z.red)\n this.z = this.z.toRed(this.curve.red);\n if (this.t && !this.t.red)\n this.t = this.t.toRed(this.curve.red);\n this.zOne = this.z === this.curve.one;\n\n // Use extended coordinates\n if (this.curve.extended && !this.t) {\n this.t = this.x.redMul(this.y);\n if (!this.zOne)\n this.t = this.t.redMul(this.z.redInvm());\n }\n }\n}\ninherits(Point, Base.BasePoint);\n\nEdwardsCurve.prototype.pointFromJSON = function pointFromJSON(obj) {\n return Point.fromJSON(this, obj);\n};\n\nEdwardsCurve.prototype.point = function point(x, y, z, t) {\n return new Point(this, x, y, z, t);\n};\n\nPoint.fromJSON = function fromJSON(curve, obj) {\n return new Point(curve, obj[0], obj[1], obj[2]);\n};\n\nPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nPoint.prototype.isInfinity = function isInfinity() {\n // XXX This code assumes that zero is always zero in red\n return this.x.cmpn(0) === 0 &&\n (this.y.cmp(this.z) === 0 ||\n (this.zOne && this.y.cmp(this.curve.c) === 0));\n};\n\nPoint.prototype._extDbl = function _extDbl() {\n // hyperelliptic.org/EFD/g1p/auto-twisted-extended-1.html\n // #doubling-dbl-2008-hwcd\n // 4M + 4S\n\n // A = X1^2\n var a = this.x.redSqr();\n // B = Y1^2\n var b = this.y.redSqr();\n // C = 2 * Z1^2\n var c = this.z.redSqr();\n c = c.redIAdd(c);\n // D = a * A\n var d = this.curve._mulA(a);\n // E = (X1 + Y1)^2 - A - B\n var e = this.x.redAdd(this.y).redSqr().redISub(a).redISub(b);\n // G = D + B\n var g = d.redAdd(b);\n // F = G - C\n var f = g.redSub(c);\n // H = D - B\n var h = d.redSub(b);\n // X3 = E * F\n var nx = e.redMul(f);\n // Y3 = G * H\n var ny = g.redMul(h);\n // T3 = E * H\n var nt = e.redMul(h);\n // Z3 = F * G\n var nz = f.redMul(g);\n return this.curve.point(nx, ny, nz, nt);\n};\n\nPoint.prototype._projDbl = function _projDbl() {\n // hyperelliptic.org/EFD/g1p/auto-twisted-projective.html\n // #doubling-dbl-2008-bbjlp\n // #doubling-dbl-2007-bl\n // and others\n // Generally 3M + 4S or 2M + 4S\n\n // B = (X1 + Y1)^2\n var b = this.x.redAdd(this.y).redSqr();\n // C = X1^2\n var c = this.x.redSqr();\n // D = Y1^2\n var d = this.y.redSqr();\n\n var nx;\n var ny;\n var nz;\n var e;\n var h;\n var j;\n if (this.curve.twisted) {\n // E = a * C\n e = this.curve._mulA(c);\n // F = E + D\n var f = e.redAdd(d);\n if (this.zOne) {\n // X3 = (B - C - D) * (F - 2)\n nx = b.redSub(c).redSub(d).redMul(f.redSub(this.curve.two));\n // Y3 = F * (E - D)\n ny = f.redMul(e.redSub(d));\n // Z3 = F^2 - 2 * F\n nz = f.redSqr().redSub(f).redSub(f);\n } else {\n // H = Z1^2\n h = this.z.redSqr();\n // J = F - 2 * H\n j = f.redSub(h).redISub(h);\n // X3 = (B-C-D)*J\n nx = b.redSub(c).redISub(d).redMul(j);\n // Y3 = F * (E - D)\n ny = f.redMul(e.redSub(d));\n // Z3 = F * J\n nz = f.redMul(j);\n }\n } else {\n // E = C + D\n e = c.redAdd(d);\n // H = (c * Z1)^2\n h = this.curve._mulC(this.z).redSqr();\n // J = E - 2 * H\n j = e.redSub(h).redSub(h);\n // X3 = c * (B - E) * J\n nx = this.curve._mulC(b.redISub(e)).redMul(j);\n // Y3 = c * E * (C - D)\n ny = this.curve._mulC(e).redMul(c.redISub(d));\n // Z3 = E * J\n nz = e.redMul(j);\n }\n return this.curve.point(nx, ny, nz);\n};\n\nPoint.prototype.dbl = function dbl() {\n if (this.isInfinity())\n return this;\n\n // Double in extended coordinates\n if (this.curve.extended)\n return this._extDbl();\n else\n return this._projDbl();\n};\n\nPoint.prototype._extAdd = function _extAdd(p) {\n // hyperelliptic.org/EFD/g1p/auto-twisted-extended-1.html\n // #addition-add-2008-hwcd-3\n // 8M\n\n // A = (Y1 - X1) * (Y2 - X2)\n var a = this.y.redSub(this.x).redMul(p.y.redSub(p.x));\n // B = (Y1 + X1) * (Y2 + X2)\n var b = this.y.redAdd(this.x).redMul(p.y.redAdd(p.x));\n // C = T1 * k * T2\n var c = this.t.redMul(this.curve.dd).redMul(p.t);\n // D = Z1 * 2 * Z2\n var d = this.z.redMul(p.z.redAdd(p.z));\n // E = B - A\n var e = b.redSub(a);\n // F = D - C\n var f = d.redSub(c);\n // G = D + C\n var g = d.redAdd(c);\n // H = B + A\n var h = b.redAdd(a);\n // X3 = E * F\n var nx = e.redMul(f);\n // Y3 = G * H\n var ny = g.redMul(h);\n // T3 = E * H\n var nt = e.redMul(h);\n // Z3 = F * G\n var nz = f.redMul(g);\n return this.curve.point(nx, ny, nz, nt);\n};\n\nPoint.prototype._projAdd = function _projAdd(p) {\n // hyperelliptic.org/EFD/g1p/auto-twisted-projective.html\n // #addition-add-2008-bbjlp\n // #addition-add-2007-bl\n // 10M + 1S\n\n // A = Z1 * Z2\n var a = this.z.redMul(p.z);\n // B = A^2\n var b = a.redSqr();\n // C = X1 * X2\n var c = this.x.redMul(p.x);\n // D = Y1 * Y2\n var d = this.y.redMul(p.y);\n // E = d * C * D\n var e = this.curve.d.redMul(c).redMul(d);\n // F = B - E\n var f = b.redSub(e);\n // G = B + E\n var g = b.redAdd(e);\n // X3 = A * F * ((X1 + Y1) * (X2 + Y2) - C - D)\n var tmp = this.x.redAdd(this.y).redMul(p.x.redAdd(p.y)).redISub(c).redISub(d);\n var nx = a.redMul(f).redMul(tmp);\n var ny;\n var nz;\n if (this.curve.twisted) {\n // Y3 = A * G * (D - a * C)\n ny = a.redMul(g).redMul(d.redSub(this.curve._mulA(c)));\n // Z3 = F * G\n nz = f.redMul(g);\n } else {\n // Y3 = A * G * (D - C)\n ny = a.redMul(g).redMul(d.redSub(c));\n // Z3 = c * F * G\n nz = this.curve._mulC(f).redMul(g);\n }\n return this.curve.point(nx, ny, nz);\n};\n\nPoint.prototype.add = function add(p) {\n if (this.isInfinity())\n return p;\n if (p.isInfinity())\n return this;\n\n if (this.curve.extended)\n return this._extAdd(p);\n else\n return this._projAdd(p);\n};\n\nPoint.prototype.mul = function mul(k) {\n if (this._hasDoubles(k))\n return this.curve._fixedNafMul(this, k);\n else\n return this.curve._wnafMul(this, k);\n};\n\nPoint.prototype.mulAdd = function mulAdd(k1, p, k2) {\n return this.curve._wnafMulAdd(1, [ this, p ], [ k1, k2 ], 2, false);\n};\n\nPoint.prototype.jmulAdd = function jmulAdd(k1, p, k2) {\n return this.curve._wnafMulAdd(1, [ this, p ], [ k1, k2 ], 2, true);\n};\n\nPoint.prototype.normalize = function normalize() {\n if (this.zOne)\n return this;\n\n // Normalize coordinates\n var zi = this.z.redInvm();\n this.x = this.x.redMul(zi);\n this.y = this.y.redMul(zi);\n if (this.t)\n this.t = this.t.redMul(zi);\n this.z = this.curve.one;\n this.zOne = true;\n return this;\n};\n\nPoint.prototype.neg = function neg() {\n return this.curve.point(this.x.redNeg(),\n this.y,\n this.z,\n this.t && this.t.redNeg());\n};\n\nPoint.prototype.getX = function getX() {\n this.normalize();\n return this.x.fromRed();\n};\n\nPoint.prototype.getY = function getY() {\n this.normalize();\n return this.y.fromRed();\n};\n\nPoint.prototype.eq = function eq(other) {\n return this === other ||\n this.getX().cmp(other.getX()) === 0 &&\n this.getY().cmp(other.getY()) === 0;\n};\n\nPoint.prototype.eqXToP = function eqXToP(x) {\n var rx = x.toRed(this.curve.red).redMul(this.z);\n if (this.x.cmp(rx) === 0)\n return true;\n\n var xc = x.clone();\n var t = this.curve.redN.redMul(this.z);\n for (;;) {\n xc.iadd(this.curve.n);\n if (xc.cmp(this.curve.p) >= 0)\n return false;\n\n rx.redIAdd(t);\n if (this.x.cmp(rx) === 0)\n return true;\n }\n};\n\n// Compatibility with BaseCurve\nPoint.prototype.toP = Point.prototype.normalize;\nPoint.prototype.mixedAdd = Point.prototype.add;\n","'use strict';\n\nexports.sha1 = require('./sha/1');\nexports.sha224 = require('./sha/224');\nexports.sha256 = require('./sha/256');\nexports.sha384 = require('./sha/384');\nexports.sha512 = require('./sha/512');\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar shaCommon = require('./common');\n\nvar rotl32 = utils.rotl32;\nvar sum32 = utils.sum32;\nvar sum32_5 = utils.sum32_5;\nvar ft_1 = shaCommon.ft_1;\nvar BlockHash = common.BlockHash;\n\nvar sha1_K = [\n 0x5A827999, 0x6ED9EBA1,\n 0x8F1BBCDC, 0xCA62C1D6\n];\n\nfunction SHA1() {\n if (!(this instanceof SHA1))\n return new SHA1();\n\n BlockHash.call(this);\n this.h = [\n 0x67452301, 0xefcdab89, 0x98badcfe,\n 0x10325476, 0xc3d2e1f0 ];\n this.W = new Array(80);\n}\n\nutils.inherits(SHA1, BlockHash);\nmodule.exports = SHA1;\n\nSHA1.blockSize = 512;\nSHA1.outSize = 160;\nSHA1.hmacStrength = 80;\nSHA1.padLength = 64;\n\nSHA1.prototype._update = function _update(msg, start) {\n var W = this.W;\n\n for (var i = 0; i < 16; i++)\n W[i] = msg[start + i];\n\n for(; i < W.length; i++)\n W[i] = rotl32(W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16], 1);\n\n var a = this.h[0];\n var b = this.h[1];\n var c = this.h[2];\n var d = this.h[3];\n var e = this.h[4];\n\n for (i = 0; i < W.length; i++) {\n var s = ~~(i / 20);\n var t = sum32_5(rotl32(a, 5), ft_1(s, b, c, d), e, W[i], sha1_K[s]);\n e = d;\n d = c;\n c = rotl32(b, 30);\n b = a;\n a = t;\n }\n\n this.h[0] = sum32(this.h[0], a);\n this.h[1] = sum32(this.h[1], b);\n this.h[2] = sum32(this.h[2], c);\n this.h[3] = sum32(this.h[3], d);\n this.h[4] = sum32(this.h[4], e);\n};\n\nSHA1.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar SHA256 = require('./256');\n\nfunction SHA224() {\n if (!(this instanceof SHA224))\n return new SHA224();\n\n SHA256.call(this);\n this.h = [\n 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939,\n 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4 ];\n}\nutils.inherits(SHA224, SHA256);\nmodule.exports = SHA224;\n\nSHA224.blockSize = 512;\nSHA224.outSize = 224;\nSHA224.hmacStrength = 192;\nSHA224.padLength = 64;\n\nSHA224.prototype._digest = function digest(enc) {\n // Just truncate output\n if (enc === 'hex')\n return utils.toHex32(this.h.slice(0, 7), 'big');\n else\n return utils.split32(this.h.slice(0, 7), 'big');\n};\n\n","'use strict';\n\nvar utils = require('../utils');\n\nvar SHA512 = require('./512');\n\nfunction SHA384() {\n if (!(this instanceof SHA384))\n return new SHA384();\n\n SHA512.call(this);\n this.h = [\n 0xcbbb9d5d, 0xc1059ed8,\n 0x629a292a, 0x367cd507,\n 0x9159015a, 0x3070dd17,\n 0x152fecd8, 0xf70e5939,\n 0x67332667, 0xffc00b31,\n 0x8eb44a87, 0x68581511,\n 0xdb0c2e0d, 0x64f98fa7,\n 0x47b5481d, 0xbefa4fa4 ];\n}\nutils.inherits(SHA384, SHA512);\nmodule.exports = SHA384;\n\nSHA384.blockSize = 1024;\nSHA384.outSize = 384;\nSHA384.hmacStrength = 192;\nSHA384.padLength = 128;\n\nSHA384.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h.slice(0, 12), 'big');\n else\n return utils.split32(this.h.slice(0, 12), 'big');\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar common = require('./common');\n\nvar rotl32 = utils.rotl32;\nvar sum32 = utils.sum32;\nvar sum32_3 = utils.sum32_3;\nvar sum32_4 = utils.sum32_4;\nvar BlockHash = common.BlockHash;\n\nfunction RIPEMD160() {\n if (!(this instanceof RIPEMD160))\n return new RIPEMD160();\n\n BlockHash.call(this);\n\n this.h = [ 0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0 ];\n this.endian = 'little';\n}\nutils.inherits(RIPEMD160, BlockHash);\nexports.ripemd160 = RIPEMD160;\n\nRIPEMD160.blockSize = 512;\nRIPEMD160.outSize = 160;\nRIPEMD160.hmacStrength = 192;\nRIPEMD160.padLength = 64;\n\nRIPEMD160.prototype._update = function update(msg, start) {\n var A = this.h[0];\n var B = this.h[1];\n var C = this.h[2];\n var D = this.h[3];\n var E = this.h[4];\n var Ah = A;\n var Bh = B;\n var Ch = C;\n var Dh = D;\n var Eh = E;\n for (var j = 0; j < 80; j++) {\n var T = sum32(\n rotl32(\n sum32_4(A, f(j, B, C, D), msg[r[j] + start], K(j)),\n s[j]),\n E);\n A = E;\n E = D;\n D = rotl32(C, 10);\n C = B;\n B = T;\n T = sum32(\n rotl32(\n sum32_4(Ah, f(79 - j, Bh, Ch, Dh), msg[rh[j] + start], Kh(j)),\n sh[j]),\n Eh);\n Ah = Eh;\n Eh = Dh;\n Dh = rotl32(Ch, 10);\n Ch = Bh;\n Bh = T;\n }\n T = sum32_3(this.h[1], C, Dh);\n this.h[1] = sum32_3(this.h[2], D, Eh);\n this.h[2] = sum32_3(this.h[3], E, Ah);\n this.h[3] = sum32_3(this.h[4], A, Bh);\n this.h[4] = sum32_3(this.h[0], B, Ch);\n this.h[0] = T;\n};\n\nRIPEMD160.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'little');\n else\n return utils.split32(this.h, 'little');\n};\n\nfunction f(j, x, y, z) {\n if (j <= 15)\n return x ^ y ^ z;\n else if (j <= 31)\n return (x & y) | ((~x) & z);\n else if (j <= 47)\n return (x | (~y)) ^ z;\n else if (j <= 63)\n return (x & z) | (y & (~z));\n else\n return x ^ (y | (~z));\n}\n\nfunction K(j) {\n if (j <= 15)\n return 0x00000000;\n else if (j <= 31)\n return 0x5a827999;\n else if (j <= 47)\n return 0x6ed9eba1;\n else if (j <= 63)\n return 0x8f1bbcdc;\n else\n return 0xa953fd4e;\n}\n\nfunction Kh(j) {\n if (j <= 15)\n return 0x50a28be6;\n else if (j <= 31)\n return 0x5c4dd124;\n else if (j <= 47)\n return 0x6d703ef3;\n else if (j <= 63)\n return 0x7a6d76e9;\n else\n return 0x00000000;\n}\n\nvar r = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,\n 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8,\n 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12,\n 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2,\n 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13\n];\n\nvar rh = [\n 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12,\n 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2,\n 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13,\n 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14,\n 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11\n];\n\nvar s = [\n 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8,\n 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12,\n 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5,\n 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12,\n 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6\n];\n\nvar sh = [\n 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6,\n 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11,\n 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5,\n 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8,\n 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11\n];\n","'use strict';\n\nvar utils = require('./utils');\nvar assert = require('minimalistic-assert');\n\nfunction Hmac(hash, key, enc) {\n if (!(this instanceof Hmac))\n return new Hmac(hash, key, enc);\n this.Hash = hash;\n this.blockSize = hash.blockSize / 8;\n this.outSize = hash.outSize / 8;\n this.inner = null;\n this.outer = null;\n\n this._init(utils.toArray(key, enc));\n}\nmodule.exports = Hmac;\n\nHmac.prototype._init = function init(key) {\n // Shorten key, if needed\n if (key.length > this.blockSize)\n key = new this.Hash().update(key).digest();\n assert(key.length <= this.blockSize);\n\n // Add padding to key\n for (var i = key.length; i < this.blockSize; i++)\n key.push(0);\n\n for (i = 0; i < key.length; i++)\n key[i] ^= 0x36;\n this.inner = new this.Hash().update(key);\n\n // 0x36 ^ 0x5c = 0x6a\n for (i = 0; i < key.length; i++)\n key[i] ^= 0x6a;\n this.outer = new this.Hash().update(key);\n};\n\nHmac.prototype.update = function update(msg, enc) {\n this.inner.update(msg, enc);\n return this;\n};\n\nHmac.prototype.digest = function digest(enc) {\n this.outer.update(this.inner.digest());\n return this.outer.digest(enc);\n};\n","module.exports = {\n doubles: {\n step: 4,\n points: [\n [\n 'e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a',\n 'f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821',\n ],\n [\n '8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508',\n '11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf',\n ],\n [\n '175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739',\n 'd3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695',\n ],\n [\n '363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640',\n '4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9',\n ],\n [\n '8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c',\n '4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36',\n ],\n [\n '723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda',\n '96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f',\n ],\n [\n 'eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa',\n '5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999',\n ],\n [\n '100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0',\n 'cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09',\n ],\n [\n 'e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d',\n '9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d',\n ],\n [\n 'feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d',\n 'e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088',\n ],\n [\n 'da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1',\n '9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d',\n ],\n [\n '53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0',\n '5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8',\n ],\n [\n '8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047',\n '10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a',\n ],\n [\n '385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862',\n '283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453',\n ],\n [\n '6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7',\n '7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160',\n ],\n [\n '3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd',\n '56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0',\n ],\n [\n '85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83',\n '7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6',\n ],\n [\n '948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a',\n '53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589',\n ],\n [\n '6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8',\n 'bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17',\n ],\n [\n 'e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d',\n '4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda',\n ],\n [\n 'e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725',\n '7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd',\n ],\n [\n '213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754',\n '4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2',\n ],\n [\n '4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c',\n '17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6',\n ],\n [\n 'fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6',\n '6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f',\n ],\n [\n '76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39',\n 'c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01',\n ],\n [\n 'c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891',\n '893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3',\n ],\n [\n 'd895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b',\n 'febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f',\n ],\n [\n 'b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03',\n '2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7',\n ],\n [\n 'e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d',\n 'eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78',\n ],\n [\n 'a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070',\n '7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1',\n ],\n [\n '90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4',\n 'e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150',\n ],\n [\n '8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da',\n '662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82',\n ],\n [\n 'e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11',\n '1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc',\n ],\n [\n '8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e',\n 'efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b',\n ],\n [\n 'e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41',\n '2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51',\n ],\n [\n 'b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef',\n '67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45',\n ],\n [\n 'd68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8',\n 'db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120',\n ],\n [\n '324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d',\n '648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84',\n ],\n [\n '4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96',\n '35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d',\n ],\n [\n '9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd',\n 'ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d',\n ],\n [\n '6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5',\n '9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8',\n ],\n [\n 'a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266',\n '40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8',\n ],\n [\n '7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71',\n '34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac',\n ],\n [\n '928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac',\n 'c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f',\n ],\n [\n '85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751',\n '1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962',\n ],\n [\n 'ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e',\n '493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907',\n ],\n [\n '827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241',\n 'c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec',\n ],\n [\n 'eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3',\n 'be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d',\n ],\n [\n 'e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f',\n '4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414',\n ],\n [\n '1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19',\n 'aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd',\n ],\n [\n '146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be',\n 'b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0',\n ],\n [\n 'fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9',\n '6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811',\n ],\n [\n 'da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2',\n '8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1',\n ],\n [\n 'a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13',\n '7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c',\n ],\n [\n '174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c',\n 'ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73',\n ],\n [\n '959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba',\n '2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd',\n ],\n [\n 'd2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151',\n 'e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405',\n ],\n [\n '64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073',\n 'd99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589',\n ],\n [\n '8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458',\n '38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e',\n ],\n [\n '13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b',\n '69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27',\n ],\n [\n 'bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366',\n 'd3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1',\n ],\n [\n '8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa',\n '40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482',\n ],\n [\n '8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0',\n '620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945',\n ],\n [\n 'dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787',\n '7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573',\n ],\n [\n 'f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e',\n 'ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82',\n ],\n ],\n },\n naf: {\n wnd: 7,\n points: [\n [\n 'f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9',\n '388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672',\n ],\n [\n '2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4',\n 'd8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6',\n ],\n [\n '5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc',\n '6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da',\n ],\n [\n 'acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe',\n 'cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37',\n ],\n [\n '774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb',\n 'd984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b',\n ],\n [\n 'f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8',\n 'ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81',\n ],\n [\n 'd7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e',\n '581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58',\n ],\n [\n 'defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34',\n '4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77',\n ],\n [\n '2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c',\n '85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a',\n ],\n [\n '352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5',\n '321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c',\n ],\n [\n '2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f',\n '2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67',\n ],\n [\n '9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714',\n '73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402',\n ],\n [\n 'daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729',\n 'a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55',\n ],\n [\n 'c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db',\n '2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482',\n ],\n [\n '6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4',\n 'e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82',\n ],\n [\n '1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5',\n 'b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396',\n ],\n [\n '605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479',\n '2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49',\n ],\n [\n '62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d',\n '80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf',\n ],\n [\n '80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f',\n '1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a',\n ],\n [\n '7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb',\n 'd0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7',\n ],\n [\n 'd528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9',\n 'eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933',\n ],\n [\n '49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963',\n '758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a',\n ],\n [\n '77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74',\n '958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6',\n ],\n [\n 'f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530',\n 'e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37',\n ],\n [\n '463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b',\n '5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e',\n ],\n [\n 'f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247',\n 'cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6',\n ],\n [\n 'caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1',\n 'cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476',\n ],\n [\n '2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120',\n '4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40',\n ],\n [\n '7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435',\n '91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61',\n ],\n [\n '754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18',\n '673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683',\n ],\n [\n 'e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8',\n '59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5',\n ],\n [\n '186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb',\n '3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b',\n ],\n [\n 'df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f',\n '55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417',\n ],\n [\n '5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143',\n 'efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868',\n ],\n [\n '290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba',\n 'e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a',\n ],\n [\n 'af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45',\n 'f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6',\n ],\n [\n '766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a',\n '744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996',\n ],\n [\n '59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e',\n 'c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e',\n ],\n [\n 'f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8',\n 'e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d',\n ],\n [\n '7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c',\n '30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2',\n ],\n [\n '948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519',\n 'e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e',\n ],\n [\n '7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab',\n '100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437',\n ],\n [\n '3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca',\n 'ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311',\n ],\n [\n 'd3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf',\n '8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4',\n ],\n [\n '1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610',\n '68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575',\n ],\n [\n '733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4',\n 'f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d',\n ],\n [\n '15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c',\n 'd56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d',\n ],\n [\n 'a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940',\n 'edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629',\n ],\n [\n 'e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980',\n 'a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06',\n ],\n [\n '311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3',\n '66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374',\n ],\n [\n '34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf',\n '9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee',\n ],\n [\n 'f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63',\n '4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1',\n ],\n [\n 'd7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448',\n 'fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b',\n ],\n [\n '32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf',\n '5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661',\n ],\n [\n '7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5',\n '8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6',\n ],\n [\n 'ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6',\n '8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e',\n ],\n [\n '16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5',\n '5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d',\n ],\n [\n 'eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99',\n 'f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc',\n ],\n [\n '78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51',\n 'f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4',\n ],\n [\n '494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5',\n '42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c',\n ],\n [\n 'a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5',\n '204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b',\n ],\n [\n 'c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997',\n '4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913',\n ],\n [\n '841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881',\n '73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154',\n ],\n [\n '5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5',\n '39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865',\n ],\n [\n '36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66',\n 'd2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc',\n ],\n [\n '336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726',\n 'ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224',\n ],\n [\n '8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede',\n '6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e',\n ],\n [\n '1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94',\n '60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6',\n ],\n [\n '85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31',\n '3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511',\n ],\n [\n '29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51',\n 'b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b',\n ],\n [\n 'a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252',\n 'ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2',\n ],\n [\n '4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5',\n 'cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c',\n ],\n [\n 'd24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b',\n '6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3',\n ],\n [\n 'ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4',\n '322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d',\n ],\n [\n 'af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f',\n '6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700',\n ],\n [\n 'e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889',\n '2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4',\n ],\n [\n '591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246',\n 'b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196',\n ],\n [\n '11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984',\n '998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4',\n ],\n [\n '3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a',\n 'b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257',\n ],\n [\n 'cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030',\n 'bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13',\n ],\n [\n 'c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197',\n '6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096',\n ],\n [\n 'c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593',\n 'c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38',\n ],\n [\n 'a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef',\n '21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f',\n ],\n [\n '347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38',\n '60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448',\n ],\n [\n 'da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a',\n '49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a',\n ],\n [\n 'c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111',\n '5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4',\n ],\n [\n '4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502',\n '7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437',\n ],\n [\n '3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea',\n 'be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7',\n ],\n [\n 'cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26',\n '8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d',\n ],\n [\n 'b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986',\n '39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a',\n ],\n [\n 'd4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e',\n '62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54',\n ],\n [\n '48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4',\n '25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77',\n ],\n [\n 'dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda',\n 'ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517',\n ],\n [\n '6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859',\n 'cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10',\n ],\n [\n 'e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f',\n 'f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125',\n ],\n [\n 'eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c',\n '6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e',\n ],\n [\n '13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942',\n 'fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1',\n ],\n [\n 'ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a',\n '1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2',\n ],\n [\n 'b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80',\n '5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423',\n ],\n [\n 'ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d',\n '438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8',\n ],\n [\n '8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1',\n 'cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758',\n ],\n [\n '52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63',\n 'c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375',\n ],\n [\n 'e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352',\n '6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d',\n ],\n [\n '7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193',\n 'ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec',\n ],\n [\n '5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00',\n '9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0',\n ],\n [\n '32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58',\n 'ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c',\n ],\n [\n 'e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7',\n 'd3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4',\n ],\n [\n '8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8',\n 'c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f',\n ],\n [\n '4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e',\n '67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649',\n ],\n [\n '3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d',\n 'cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826',\n ],\n [\n '674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b',\n '299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5',\n ],\n [\n 'd32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f',\n 'f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87',\n ],\n [\n '30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6',\n '462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b',\n ],\n [\n 'be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297',\n '62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc',\n ],\n [\n '93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a',\n '7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c',\n ],\n [\n 'b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c',\n 'ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f',\n ],\n [\n 'd5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52',\n '4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a',\n ],\n [\n 'd3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb',\n 'bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46',\n ],\n [\n '463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065',\n 'bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f',\n ],\n [\n '7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917',\n '603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03',\n ],\n [\n '74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9',\n 'cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08',\n ],\n [\n '30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3',\n '553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8',\n ],\n [\n '9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57',\n '712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373',\n ],\n [\n '176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66',\n 'ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3',\n ],\n [\n '75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8',\n '9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8',\n ],\n [\n '809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721',\n '9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1',\n ],\n [\n '1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180',\n '4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9',\n ],\n ],\n },\n};\n","'use strict';\n\nvar BN = require('bn.js');\nvar HmacDRBG = require('hmac-drbg');\nvar utils = require('../utils');\nvar curves = require('../curves');\nvar rand = require('brorand');\nvar assert = utils.assert;\n\nvar KeyPair = require('./key');\nvar Signature = require('./signature');\n\nfunction EC(options) {\n if (!(this instanceof EC))\n return new EC(options);\n\n // Shortcut `elliptic.ec(curve-name)`\n if (typeof options === 'string') {\n assert(Object.prototype.hasOwnProperty.call(curves, options),\n 'Unknown curve ' + options);\n\n options = curves[options];\n }\n\n // Shortcut for `elliptic.ec(elliptic.curves.curveName)`\n if (options instanceof curves.PresetCurve)\n options = { curve: options };\n\n this.curve = options.curve.curve;\n this.n = this.curve.n;\n this.nh = this.n.ushrn(1);\n this.g = this.curve.g;\n\n // Point on curve\n this.g = options.curve.g;\n this.g.precompute(options.curve.n.bitLength() + 1);\n\n // Hash for function for DRBG\n this.hash = options.hash || options.curve.hash;\n}\nmodule.exports = EC;\n\nEC.prototype.keyPair = function keyPair(options) {\n return new KeyPair(this, options);\n};\n\nEC.prototype.keyFromPrivate = function keyFromPrivate(priv, enc) {\n return KeyPair.fromPrivate(this, priv, enc);\n};\n\nEC.prototype.keyFromPublic = function keyFromPublic(pub, enc) {\n return KeyPair.fromPublic(this, pub, enc);\n};\n\nEC.prototype.genKeyPair = function genKeyPair(options) {\n if (!options)\n options = {};\n\n // Instantiate Hmac_DRBG\n var drbg = new HmacDRBG({\n hash: this.hash,\n pers: options.pers,\n persEnc: options.persEnc || 'utf8',\n entropy: options.entropy || rand(this.hash.hmacStrength),\n entropyEnc: options.entropy && options.entropyEnc || 'utf8',\n nonce: this.n.toArray(),\n });\n\n var bytes = this.n.byteLength();\n var ns2 = this.n.sub(new BN(2));\n for (;;) {\n var priv = new BN(drbg.generate(bytes));\n if (priv.cmp(ns2) > 0)\n continue;\n\n priv.iaddn(1);\n return this.keyFromPrivate(priv);\n }\n};\n\nEC.prototype._truncateToN = function _truncateToN(msg, truncOnly) {\n var delta = msg.byteLength() * 8 - this.n.bitLength();\n if (delta > 0)\n msg = msg.ushrn(delta);\n if (!truncOnly && msg.cmp(this.n) >= 0)\n return msg.sub(this.n);\n else\n return msg;\n};\n\nEC.prototype.sign = function sign(msg, key, enc, options) {\n if (typeof enc === 'object') {\n options = enc;\n enc = null;\n }\n if (!options)\n options = {};\n\n key = this.keyFromPrivate(key, enc);\n msg = this._truncateToN(new BN(msg, 16));\n\n // Zero-extend key to provide enough entropy\n var bytes = this.n.byteLength();\n var bkey = key.getPrivate().toArray('be', bytes);\n\n // Zero-extend nonce to have the same byte size as N\n var nonce = msg.toArray('be', bytes);\n\n // Instantiate Hmac_DRBG\n var drbg = new HmacDRBG({\n hash: this.hash,\n entropy: bkey,\n nonce: nonce,\n pers: options.pers,\n persEnc: options.persEnc || 'utf8',\n });\n\n // Number of bytes to generate\n var ns1 = this.n.sub(new BN(1));\n\n for (var iter = 0; ; iter++) {\n var k = options.k ?\n options.k(iter) :\n new BN(drbg.generate(this.n.byteLength()));\n k = this._truncateToN(k, true);\n if (k.cmpn(1) <= 0 || k.cmp(ns1) >= 0)\n continue;\n\n var kp = this.g.mul(k);\n if (kp.isInfinity())\n continue;\n\n var kpX = kp.getX();\n var r = kpX.umod(this.n);\n if (r.cmpn(0) === 0)\n continue;\n\n var s = k.invm(this.n).mul(r.mul(key.getPrivate()).iadd(msg));\n s = s.umod(this.n);\n if (s.cmpn(0) === 0)\n continue;\n\n var recoveryParam = (kp.getY().isOdd() ? 1 : 0) |\n (kpX.cmp(r) !== 0 ? 2 : 0);\n\n // Use complement of `s`, if it is > `n / 2`\n if (options.canonical && s.cmp(this.nh) > 0) {\n s = this.n.sub(s);\n recoveryParam ^= 1;\n }\n\n return new Signature({ r: r, s: s, recoveryParam: recoveryParam });\n }\n};\n\nEC.prototype.verify = function verify(msg, signature, key, enc) {\n msg = this._truncateToN(new BN(msg, 16));\n key = this.keyFromPublic(key, enc);\n signature = new Signature(signature, 'hex');\n\n // Perform primitive values validation\n var r = signature.r;\n var s = signature.s;\n if (r.cmpn(1) < 0 || r.cmp(this.n) >= 0)\n return false;\n if (s.cmpn(1) < 0 || s.cmp(this.n) >= 0)\n return false;\n\n // Validate signature\n var sinv = s.invm(this.n);\n var u1 = sinv.mul(msg).umod(this.n);\n var u2 = sinv.mul(r).umod(this.n);\n var p;\n\n if (!this.curve._maxwellTrick) {\n p = this.g.mulAdd(u1, key.getPublic(), u2);\n if (p.isInfinity())\n return false;\n\n return p.getX().umod(this.n).cmp(r) === 0;\n }\n\n // NOTE: Greg Maxwell's trick, inspired by:\n // https://git.io/vad3K\n\n p = this.g.jmulAdd(u1, key.getPublic(), u2);\n if (p.isInfinity())\n return false;\n\n // Compare `p.x` of Jacobian point with `r`,\n // this will do `p.x == r * p.z^2` instead of multiplying `p.x` by the\n // inverse of `p.z^2`\n return p.eqXToP(r);\n};\n\nEC.prototype.recoverPubKey = function(msg, signature, j, enc) {\n assert((3 & j) === j, 'The recovery param is more than two bits');\n signature = new Signature(signature, enc);\n\n var n = this.n;\n var e = new BN(msg);\n var r = signature.r;\n var s = signature.s;\n\n // A set LSB signifies that the y-coordinate is odd\n var isYOdd = j & 1;\n var isSecondKey = j >> 1;\n if (r.cmp(this.curve.p.umod(this.curve.n)) >= 0 && isSecondKey)\n throw new Error('Unable to find sencond key candinate');\n\n // 1.1. Let x = r + jn.\n if (isSecondKey)\n r = this.curve.pointFromX(r.add(this.curve.n), isYOdd);\n else\n r = this.curve.pointFromX(r, isYOdd);\n\n var rInv = signature.r.invm(n);\n var s1 = n.sub(e).mul(rInv).umod(n);\n var s2 = s.mul(rInv).umod(n);\n\n // 1.6.1 Compute Q = r^-1 (sR - eG)\n // Q = r^-1 (sR + -eG)\n return this.g.mulAdd(s1, r, s2);\n};\n\nEC.prototype.getKeyRecoveryParam = function(e, signature, Q, enc) {\n signature = new Signature(signature, enc);\n if (signature.recoveryParam !== null)\n return signature.recoveryParam;\n\n for (var i = 0; i < 4; i++) {\n var Qprime;\n try {\n Qprime = this.recoverPubKey(e, signature, i);\n } catch (e) {\n continue;\n }\n\n if (Qprime.eq(Q))\n return i;\n }\n throw new Error('Unable to find valid recovery factor');\n};\n","'use strict';\n\nvar hash = require('hash.js');\nvar utils = require('minimalistic-crypto-utils');\nvar assert = require('minimalistic-assert');\n\nfunction HmacDRBG(options) {\n if (!(this instanceof HmacDRBG))\n return new HmacDRBG(options);\n this.hash = options.hash;\n this.predResist = !!options.predResist;\n\n this.outLen = this.hash.outSize;\n this.minEntropy = options.minEntropy || this.hash.hmacStrength;\n\n this._reseed = null;\n this.reseedInterval = null;\n this.K = null;\n this.V = null;\n\n var entropy = utils.toArray(options.entropy, options.entropyEnc || 'hex');\n var nonce = utils.toArray(options.nonce, options.nonceEnc || 'hex');\n var pers = utils.toArray(options.pers, options.persEnc || 'hex');\n assert(entropy.length >= (this.minEntropy / 8),\n 'Not enough entropy. Minimum is: ' + this.minEntropy + ' bits');\n this._init(entropy, nonce, pers);\n}\nmodule.exports = HmacDRBG;\n\nHmacDRBG.prototype._init = function init(entropy, nonce, pers) {\n var seed = entropy.concat(nonce).concat(pers);\n\n this.K = new Array(this.outLen / 8);\n this.V = new Array(this.outLen / 8);\n for (var i = 0; i < this.V.length; i++) {\n this.K[i] = 0x00;\n this.V[i] = 0x01;\n }\n\n this._update(seed);\n this._reseed = 1;\n this.reseedInterval = 0x1000000000000; // 2^48\n};\n\nHmacDRBG.prototype._hmac = function hmac() {\n return new hash.hmac(this.hash, this.K);\n};\n\nHmacDRBG.prototype._update = function update(seed) {\n var kmac = this._hmac()\n .update(this.V)\n .update([ 0x00 ]);\n if (seed)\n kmac = kmac.update(seed);\n this.K = kmac.digest();\n this.V = this._hmac().update(this.V).digest();\n if (!seed)\n return;\n\n this.K = this._hmac()\n .update(this.V)\n .update([ 0x01 ])\n .update(seed)\n .digest();\n this.V = this._hmac().update(this.V).digest();\n};\n\nHmacDRBG.prototype.reseed = function reseed(entropy, entropyEnc, add, addEnc) {\n // Optional entropy enc\n if (typeof entropyEnc !== 'string') {\n addEnc = add;\n add = entropyEnc;\n entropyEnc = null;\n }\n\n entropy = utils.toArray(entropy, entropyEnc);\n add = utils.toArray(add, addEnc);\n\n assert(entropy.length >= (this.minEntropy / 8),\n 'Not enough entropy. Minimum is: ' + this.minEntropy + ' bits');\n\n this._update(entropy.concat(add || []));\n this._reseed = 1;\n};\n\nHmacDRBG.prototype.generate = function generate(len, enc, add, addEnc) {\n if (this._reseed > this.reseedInterval)\n throw new Error('Reseed is required');\n\n // Optional encoding\n if (typeof enc !== 'string') {\n addEnc = add;\n add = enc;\n enc = null;\n }\n\n // Optional additional data\n if (add) {\n add = utils.toArray(add, addEnc || 'hex');\n this._update(add);\n }\n\n var temp = [];\n while (temp.length < len) {\n this.V = this._hmac().update(this.V).digest();\n temp = temp.concat(this.V);\n }\n\n var res = temp.slice(0, len);\n this._update(add);\n this._reseed++;\n return utils.encode(res, enc);\n};\n","'use strict';\n\nvar BN = require('bn.js');\nvar utils = require('../utils');\nvar assert = utils.assert;\n\nfunction KeyPair(ec, options) {\n this.ec = ec;\n this.priv = null;\n this.pub = null;\n\n // KeyPair(ec, { priv: ..., pub: ... })\n if (options.priv)\n this._importPrivate(options.priv, options.privEnc);\n if (options.pub)\n this._importPublic(options.pub, options.pubEnc);\n}\nmodule.exports = KeyPair;\n\nKeyPair.fromPublic = function fromPublic(ec, pub, enc) {\n if (pub instanceof KeyPair)\n return pub;\n\n return new KeyPair(ec, {\n pub: pub,\n pubEnc: enc,\n });\n};\n\nKeyPair.fromPrivate = function fromPrivate(ec, priv, enc) {\n if (priv instanceof KeyPair)\n return priv;\n\n return new KeyPair(ec, {\n priv: priv,\n privEnc: enc,\n });\n};\n\nKeyPair.prototype.validate = function validate() {\n var pub = this.getPublic();\n\n if (pub.isInfinity())\n return { result: false, reason: 'Invalid public key' };\n if (!pub.validate())\n return { result: false, reason: 'Public key is not a point' };\n if (!pub.mul(this.ec.curve.n).isInfinity())\n return { result: false, reason: 'Public key * N != O' };\n\n return { result: true, reason: null };\n};\n\nKeyPair.prototype.getPublic = function getPublic(compact, enc) {\n // compact is optional argument\n if (typeof compact === 'string') {\n enc = compact;\n compact = null;\n }\n\n if (!this.pub)\n this.pub = this.ec.g.mul(this.priv);\n\n if (!enc)\n return this.pub;\n\n return this.pub.encode(enc, compact);\n};\n\nKeyPair.prototype.getPrivate = function getPrivate(enc) {\n if (enc === 'hex')\n return this.priv.toString(16, 2);\n else\n return this.priv;\n};\n\nKeyPair.prototype._importPrivate = function _importPrivate(key, enc) {\n this.priv = new BN(key, enc || 16);\n\n // Ensure that the priv won't be bigger than n, otherwise we may fail\n // in fixed multiplication method\n this.priv = this.priv.umod(this.ec.curve.n);\n};\n\nKeyPair.prototype._importPublic = function _importPublic(key, enc) {\n if (key.x || key.y) {\n // Montgomery points only have an `x` coordinate.\n // Weierstrass/Edwards points on the other hand have both `x` and\n // `y` coordinates.\n if (this.ec.curve.type === 'mont') {\n assert(key.x, 'Need x coordinate');\n } else if (this.ec.curve.type === 'short' ||\n this.ec.curve.type === 'edwards') {\n assert(key.x && key.y, 'Need both x and y coordinate');\n }\n this.pub = this.ec.curve.point(key.x, key.y);\n return;\n }\n this.pub = this.ec.curve.decodePoint(key, enc);\n};\n\n// ECDH\nKeyPair.prototype.derive = function derive(pub) {\n if(!pub.validate()) {\n assert(pub.validate(), 'public point not validated');\n }\n return pub.mul(this.priv).getX();\n};\n\n// ECDSA\nKeyPair.prototype.sign = function sign(msg, enc, options) {\n return this.ec.sign(msg, this, enc, options);\n};\n\nKeyPair.prototype.verify = function verify(msg, signature) {\n return this.ec.verify(msg, signature, this);\n};\n\nKeyPair.prototype.inspect = function inspect() {\n return '';\n};\n","'use strict';\n\nvar BN = require('bn.js');\n\nvar utils = require('../utils');\nvar assert = utils.assert;\n\nfunction Signature(options, enc) {\n if (options instanceof Signature)\n return options;\n\n if (this._importDER(options, enc))\n return;\n\n assert(options.r && options.s, 'Signature without r or s');\n this.r = new BN(options.r, 16);\n this.s = new BN(options.s, 16);\n if (options.recoveryParam === undefined)\n this.recoveryParam = null;\n else\n this.recoveryParam = options.recoveryParam;\n}\nmodule.exports = Signature;\n\nfunction Position() {\n this.place = 0;\n}\n\nfunction getLength(buf, p) {\n var initial = buf[p.place++];\n if (!(initial & 0x80)) {\n return initial;\n }\n var octetLen = initial & 0xf;\n\n // Indefinite length or overflow\n if (octetLen === 0 || octetLen > 4) {\n return false;\n }\n\n var val = 0;\n for (var i = 0, off = p.place; i < octetLen; i++, off++) {\n val <<= 8;\n val |= buf[off];\n val >>>= 0;\n }\n\n // Leading zeroes\n if (val <= 0x7f) {\n return false;\n }\n\n p.place = off;\n return val;\n}\n\nfunction rmPadding(buf) {\n var i = 0;\n var len = buf.length - 1;\n while (!buf[i] && !(buf[i + 1] & 0x80) && i < len) {\n i++;\n }\n if (i === 0) {\n return buf;\n }\n return buf.slice(i);\n}\n\nSignature.prototype._importDER = function _importDER(data, enc) {\n data = utils.toArray(data, enc);\n var p = new Position();\n if (data[p.place++] !== 0x30) {\n return false;\n }\n var len = getLength(data, p);\n if (len === false) {\n return false;\n }\n if ((len + p.place) !== data.length) {\n return false;\n }\n if (data[p.place++] !== 0x02) {\n return false;\n }\n var rlen = getLength(data, p);\n if (rlen === false) {\n return false;\n }\n var r = data.slice(p.place, rlen + p.place);\n p.place += rlen;\n if (data[p.place++] !== 0x02) {\n return false;\n }\n var slen = getLength(data, p);\n if (slen === false) {\n return false;\n }\n if (data.length !== slen + p.place) {\n return false;\n }\n var s = data.slice(p.place, slen + p.place);\n if (r[0] === 0) {\n if (r[1] & 0x80) {\n r = r.slice(1);\n } else {\n // Leading zeroes\n return false;\n }\n }\n if (s[0] === 0) {\n if (s[1] & 0x80) {\n s = s.slice(1);\n } else {\n // Leading zeroes\n return false;\n }\n }\n\n this.r = new BN(r);\n this.s = new BN(s);\n this.recoveryParam = null;\n\n return true;\n};\n\nfunction constructLength(arr, len) {\n if (len < 0x80) {\n arr.push(len);\n return;\n }\n var octets = 1 + (Math.log(len) / Math.LN2 >>> 3);\n arr.push(octets | 0x80);\n while (--octets) {\n arr.push((len >>> (octets << 3)) & 0xff);\n }\n arr.push(len);\n}\n\nSignature.prototype.toDER = function toDER(enc) {\n var r = this.r.toArray();\n var s = this.s.toArray();\n\n // Pad values\n if (r[0] & 0x80)\n r = [ 0 ].concat(r);\n // Pad values\n if (s[0] & 0x80)\n s = [ 0 ].concat(s);\n\n r = rmPadding(r);\n s = rmPadding(s);\n\n while (!s[0] && !(s[1] & 0x80)) {\n s = s.slice(1);\n }\n var arr = [ 0x02 ];\n constructLength(arr, r.length);\n arr = arr.concat(r);\n arr.push(0x02);\n constructLength(arr, s.length);\n var backHalf = arr.concat(s);\n var res = [ 0x30 ];\n constructLength(res, backHalf.length);\n res = res.concat(backHalf);\n return utils.encode(res, enc);\n};\n","'use strict';\n\nvar hash = require('hash.js');\nvar curves = require('../curves');\nvar utils = require('../utils');\nvar assert = utils.assert;\nvar parseBytes = utils.parseBytes;\nvar KeyPair = require('./key');\nvar Signature = require('./signature');\n\nfunction EDDSA(curve) {\n assert(curve === 'ed25519', 'only tested with ed25519 so far');\n\n if (!(this instanceof EDDSA))\n return new EDDSA(curve);\n\n curve = curves[curve].curve;\n this.curve = curve;\n this.g = curve.g;\n this.g.precompute(curve.n.bitLength() + 1);\n\n this.pointClass = curve.point().constructor;\n this.encodingLength = Math.ceil(curve.n.bitLength() / 8);\n this.hash = hash.sha512;\n}\n\nmodule.exports = EDDSA;\n\n/**\n* @param {Array|String} message - message bytes\n* @param {Array|String|KeyPair} secret - secret bytes or a keypair\n* @returns {Signature} - signature\n*/\nEDDSA.prototype.sign = function sign(message, secret) {\n message = parseBytes(message);\n var key = this.keyFromSecret(secret);\n var r = this.hashInt(key.messagePrefix(), message);\n var R = this.g.mul(r);\n var Rencoded = this.encodePoint(R);\n var s_ = this.hashInt(Rencoded, key.pubBytes(), message)\n .mul(key.priv());\n var S = r.add(s_).umod(this.curve.n);\n return this.makeSignature({ R: R, S: S, Rencoded: Rencoded });\n};\n\n/**\n* @param {Array} message - message bytes\n* @param {Array|String|Signature} sig - sig bytes\n* @param {Array|String|Point|KeyPair} pub - public key\n* @returns {Boolean} - true if public key matches sig of message\n*/\nEDDSA.prototype.verify = function verify(message, sig, pub) {\n message = parseBytes(message);\n sig = this.makeSignature(sig);\n var key = this.keyFromPublic(pub);\n var h = this.hashInt(sig.Rencoded(), key.pubBytes(), message);\n var SG = this.g.mul(sig.S());\n var RplusAh = sig.R().add(key.pub().mul(h));\n return RplusAh.eq(SG);\n};\n\nEDDSA.prototype.hashInt = function hashInt() {\n var hash = this.hash();\n for (var i = 0; i < arguments.length; i++)\n hash.update(arguments[i]);\n return utils.intFromLE(hash.digest()).umod(this.curve.n);\n};\n\nEDDSA.prototype.keyFromPublic = function keyFromPublic(pub) {\n return KeyPair.fromPublic(this, pub);\n};\n\nEDDSA.prototype.keyFromSecret = function keyFromSecret(secret) {\n return KeyPair.fromSecret(this, secret);\n};\n\nEDDSA.prototype.makeSignature = function makeSignature(sig) {\n if (sig instanceof Signature)\n return sig;\n return new Signature(this, sig);\n};\n\n/**\n* * https://tools.ietf.org/html/draft-josefsson-eddsa-ed25519-03#section-5.2\n*\n* EDDSA defines methods for encoding and decoding points and integers. These are\n* helper convenience methods, that pass along to utility functions implied\n* parameters.\n*\n*/\nEDDSA.prototype.encodePoint = function encodePoint(point) {\n var enc = point.getY().toArray('le', this.encodingLength);\n enc[this.encodingLength - 1] |= point.getX().isOdd() ? 0x80 : 0;\n return enc;\n};\n\nEDDSA.prototype.decodePoint = function decodePoint(bytes) {\n bytes = utils.parseBytes(bytes);\n\n var lastIx = bytes.length - 1;\n var normed = bytes.slice(0, lastIx).concat(bytes[lastIx] & ~0x80);\n var xIsOdd = (bytes[lastIx] & 0x80) !== 0;\n\n var y = utils.intFromLE(normed);\n return this.curve.pointFromY(y, xIsOdd);\n};\n\nEDDSA.prototype.encodeInt = function encodeInt(num) {\n return num.toArray('le', this.encodingLength);\n};\n\nEDDSA.prototype.decodeInt = function decodeInt(bytes) {\n return utils.intFromLE(bytes);\n};\n\nEDDSA.prototype.isPoint = function isPoint(val) {\n return val instanceof this.pointClass;\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar assert = utils.assert;\nvar parseBytes = utils.parseBytes;\nvar cachedProperty = utils.cachedProperty;\n\n/**\n* @param {EDDSA} eddsa - instance\n* @param {Object} params - public/private key parameters\n*\n* @param {Array} [params.secret] - secret seed bytes\n* @param {Point} [params.pub] - public key point (aka `A` in eddsa terms)\n* @param {Array} [params.pub] - public key point encoded as bytes\n*\n*/\nfunction KeyPair(eddsa, params) {\n this.eddsa = eddsa;\n this._secret = parseBytes(params.secret);\n if (eddsa.isPoint(params.pub))\n this._pub = params.pub;\n else\n this._pubBytes = parseBytes(params.pub);\n}\n\nKeyPair.fromPublic = function fromPublic(eddsa, pub) {\n if (pub instanceof KeyPair)\n return pub;\n return new KeyPair(eddsa, { pub: pub });\n};\n\nKeyPair.fromSecret = function fromSecret(eddsa, secret) {\n if (secret instanceof KeyPair)\n return secret;\n return new KeyPair(eddsa, { secret: secret });\n};\n\nKeyPair.prototype.secret = function secret() {\n return this._secret;\n};\n\ncachedProperty(KeyPair, 'pubBytes', function pubBytes() {\n return this.eddsa.encodePoint(this.pub());\n});\n\ncachedProperty(KeyPair, 'pub', function pub() {\n if (this._pubBytes)\n return this.eddsa.decodePoint(this._pubBytes);\n return this.eddsa.g.mul(this.priv());\n});\n\ncachedProperty(KeyPair, 'privBytes', function privBytes() {\n var eddsa = this.eddsa;\n var hash = this.hash();\n var lastIx = eddsa.encodingLength - 1;\n\n var a = hash.slice(0, eddsa.encodingLength);\n a[0] &= 248;\n a[lastIx] &= 127;\n a[lastIx] |= 64;\n\n return a;\n});\n\ncachedProperty(KeyPair, 'priv', function priv() {\n return this.eddsa.decodeInt(this.privBytes());\n});\n\ncachedProperty(KeyPair, 'hash', function hash() {\n return this.eddsa.hash().update(this.secret()).digest();\n});\n\ncachedProperty(KeyPair, 'messagePrefix', function messagePrefix() {\n return this.hash().slice(this.eddsa.encodingLength);\n});\n\nKeyPair.prototype.sign = function sign(message) {\n assert(this._secret, 'KeyPair can only verify');\n return this.eddsa.sign(message, this);\n};\n\nKeyPair.prototype.verify = function verify(message, sig) {\n return this.eddsa.verify(message, sig, this);\n};\n\nKeyPair.prototype.getSecret = function getSecret(enc) {\n assert(this._secret, 'KeyPair is public only');\n return utils.encode(this.secret(), enc);\n};\n\nKeyPair.prototype.getPublic = function getPublic(enc) {\n return utils.encode(this.pubBytes(), enc);\n};\n\nmodule.exports = KeyPair;\n","'use strict';\n\nvar BN = require('bn.js');\nvar utils = require('../utils');\nvar assert = utils.assert;\nvar cachedProperty = utils.cachedProperty;\nvar parseBytes = utils.parseBytes;\n\n/**\n* @param {EDDSA} eddsa - eddsa instance\n* @param {Array|Object} sig -\n* @param {Array|Point} [sig.R] - R point as Point or bytes\n* @param {Array|bn} [sig.S] - S scalar as bn or bytes\n* @param {Array} [sig.Rencoded] - R point encoded\n* @param {Array} [sig.Sencoded] - S scalar encoded\n*/\nfunction Signature(eddsa, sig) {\n this.eddsa = eddsa;\n\n if (typeof sig !== 'object')\n sig = parseBytes(sig);\n\n if (Array.isArray(sig)) {\n sig = {\n R: sig.slice(0, eddsa.encodingLength),\n S: sig.slice(eddsa.encodingLength),\n };\n }\n\n assert(sig.R && sig.S, 'Signature without R or S');\n\n if (eddsa.isPoint(sig.R))\n this._R = sig.R;\n if (sig.S instanceof BN)\n this._S = sig.S;\n\n this._Rencoded = Array.isArray(sig.R) ? sig.R : sig.Rencoded;\n this._Sencoded = Array.isArray(sig.S) ? sig.S : sig.Sencoded;\n}\n\ncachedProperty(Signature, 'S', function S() {\n return this.eddsa.decodeInt(this.Sencoded());\n});\n\ncachedProperty(Signature, 'R', function R() {\n return this.eddsa.decodePoint(this.Rencoded());\n});\n\ncachedProperty(Signature, 'Rencoded', function Rencoded() {\n return this.eddsa.encodePoint(this.R());\n});\n\ncachedProperty(Signature, 'Sencoded', function Sencoded() {\n return this.eddsa.encodeInt(this.S());\n});\n\nSignature.prototype.toBytes = function toBytes() {\n return this.Rencoded().concat(this.Sencoded());\n};\n\nSignature.prototype.toHex = function toHex() {\n return utils.encode(this.toBytes(), 'hex').toUpperCase();\n};\n\nmodule.exports = Signature;\n","import BadKeyError from \"../BadKeyError.js\";\nimport * as crypto from \"./aes.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\nimport * as hmac from \"./hmac.js\";\nimport * as pbkdf2 from \"./pbkdf2.js\";\nimport * as random from \"./random.js\";\n\nconst HMAC_SHA256 = \"hmac-sha256\";\n\n/**\n * @typedef {Object} KeystoreKdfParams\n * @property {number} dkLen\n * @property {string} salt\n * @property {number} c\n * @property {string} prf\n */\n\n/**\n * @typedef {Object} KeystoreCipherParams\n * @property {string} iv\n */\n\n/**\n * @typedef {Object} KeystoreCrypto\n * @property {string} ciphertext\n * @property {KeystoreCipherParams} cipherparams\n * @property {string} cipher\n * @property {string} kdf\n * @property {KeystoreKdfParams} kdfparams\n * @property {string} mac\n */\n\n/**\n * @typedef {Object} Keystore\n * @property {number} version\n * @property {KeystoreCrypto} crypto\n */\n\n/**\n * @param {Uint8Array} privateKey\n * @param {string} passphrase\n * @returns {Promise}\n */\nexport async function createKeystore(privateKey, passphrase) {\n // all values taken from https://github.com/ethereumjs/ethereumjs-wallet/blob/de3a92e752673ada1d78f95cf80bc56ae1f59775/src/index.ts#L25\n const dkLen = 32;\n const c = 262144;\n const saltLen = 32;\n const salt = await random.bytesAsync(saltLen);\n\n const key = await pbkdf2.deriveKey(\n hmac.HashAlgorithm.Sha256,\n passphrase,\n salt,\n c,\n dkLen\n );\n\n const iv = await random.bytesAsync(16);\n\n // AES-128-CTR with the first half of the derived key and a random IV\n const cipherText = await crypto.createCipheriv(\n crypto.CipherAlgorithm.Aes128Ctr,\n key.slice(0, 16),\n iv,\n privateKey\n );\n\n const mac = await hmac.hash(\n hmac.HashAlgorithm.Sha384,\n key.slice(16),\n cipherText\n );\n\n /**\n * @type {Keystore}\n */\n const keystore = {\n version: 1,\n crypto: {\n ciphertext: hex.encode(cipherText),\n cipherparams: { iv: hex.encode(iv) },\n cipher: crypto.CipherAlgorithm.Aes128Ctr,\n kdf: \"pbkdf2\",\n kdfparams: {\n dkLen,\n salt: hex.encode(salt),\n c,\n prf: HMAC_SHA256,\n },\n mac: hex.encode(mac),\n },\n };\n\n return utf8.encode(JSON.stringify(keystore));\n}\n\n/**\n * @param {Uint8Array} keystoreBytes\n * @param {string} passphrase\n * @returns {Promise}\n */\nexport async function loadKeystore(keystoreBytes, passphrase) {\n /**\n * @type {Keystore}\n */\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n const keystore = JSON.parse(utf8.decode(keystoreBytes));\n\n if (keystore.version !== 1) {\n throw new BadKeyError(\n `unsupported keystore version: ${keystore.version}`\n );\n }\n\n const {\n ciphertext,\n cipherparams: { iv },\n cipher,\n kdf,\n kdfparams: { dkLen, salt, c, prf },\n mac,\n } = keystore.crypto;\n\n if (kdf !== \"pbkdf2\") {\n throw new BadKeyError(`unsupported key derivation function:\" + ${kdf}`);\n }\n\n if (prf !== HMAC_SHA256) {\n throw new BadKeyError(\n `unsupported key derivation hash function: ${prf}`\n );\n }\n\n const saltBytes = hex.decode(salt);\n const ivBytes = hex.decode(iv);\n const cipherBytes = hex.decode(ciphertext);\n\n const key = await pbkdf2.deriveKey(\n hmac.HashAlgorithm.Sha256,\n passphrase,\n saltBytes,\n c,\n dkLen\n );\n\n const macHex = hex.decode(mac);\n const verifyHmac = await hmac.hash(\n hmac.HashAlgorithm.Sha384,\n key.slice(16),\n cipherBytes\n );\n\n // compare that these two Uint8Arrays are equivalent\n if (!macHex.every((b, i) => b === verifyHmac[i])) {\n throw new BadKeyError(\"HMAC mismatch; passphrase is incorrect\");\n }\n\n return crypto.createDecipheriv(\n cipher,\n key.slice(0, 16),\n ivBytes,\n cipherBytes\n );\n}\n","import BadKeyError from \"../BadKeyError.js\";\nimport { EncryptedPrivateKeyInfo } from \"../primitive/pkcs.js\";\nimport * as der from \"./der.js\";\nimport * as base64 from \"./base64.js\";\nimport Ed25519PrivateKey from \"../Ed25519PrivateKey.js\";\nimport EcdsaPrivateKey from \"../EcdsaPrivateKey.js\";\n\nconst BEGIN_PRIVATEKEY = \"-----BEGIN PRIVATE KEY-----\\n\";\nconst END_PRIVATEKEY = \"-----END PRIVATE KEY-----\\n\";\n\nconst BEGIN_ENCRYPTED_PRIVATEKEY = \"-----BEGIN ENCRYPTED PRIVATE KEY-----\\n\";\nconst END_ENCRYPTED_PRIVATEKEY = \"-----END ENCRYPTED PRIVATE KEY-----\\n\";\n\n/**\n * @param {string} pem\n * @param {string} [passphrase]\n * @returns {Promise}\n */\nexport async function read(pem, passphrase) {\n const beginTag = passphrase ? BEGIN_ENCRYPTED_PRIVATEKEY : BEGIN_PRIVATEKEY;\n\n const endTag = passphrase ? END_ENCRYPTED_PRIVATEKEY : END_PRIVATEKEY;\n\n const beginIndex = pem.indexOf(beginTag);\n const endIndex = pem.indexOf(endTag);\n\n if (beginIndex === -1 || endIndex === -1) {\n throw new BadKeyError(\"failed to find a private key in the PEM file\");\n }\n\n const keyEncoded = pem.slice(beginIndex + beginTag.length, endIndex);\n\n const key = base64.decode(keyEncoded);\n\n if (passphrase) {\n let encrypted;\n\n try {\n encrypted = EncryptedPrivateKeyInfo.parse(key);\n } catch (error) {\n const message =\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n error != null && /** @type {Error} */ (error).message != null\n ? // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n /** @type {Error} */ (error).message\n : \"\";\n\n throw new BadKeyError(\n `failed to parse encrypted private key: ${message}`\n );\n }\n\n const decrypted = await encrypted.decrypt(passphrase);\n\n let privateKey = null;\n\n if (decrypted.algId.algIdent === \"1.3.101.112\") {\n privateKey = Ed25519PrivateKey;\n } else if (decrypted.algId.algIdent === \"1.3.132.0.10\") {\n privateKey = EcdsaPrivateKey;\n } else {\n throw new BadKeyError(\n `unknown private key algorithm ${decrypted.algId.toString()}`\n );\n }\n\n const keyData = der.decode(decrypted.privateKey);\n\n if (!(\"bytes\" in keyData)) {\n throw new BadKeyError(\n `expected ASN bytes, got ${JSON.stringify(keyData)}`\n );\n }\n\n return privateKey.fromBytes(keyData.bytes);\n }\n\n return key.subarray(16);\n}\n","import * as crypto from \"./aes.js\";\nimport * as der from \"../encoding/der.js\";\nimport * as pbkdf2 from \"./pbkdf2.js\";\nimport * as hmac from \"./hmac.js\";\n\nexport class AlgorithmIdentifier {\n /**\n * @param {import(\"../encoding/der.js\").AsnType} asn\n */\n constructor(asn) {\n if (\"seq\" in asn && asn.seq.length >= 1 && \"ident\" in asn.seq[0]) {\n /**\n * @type {string}\n */\n this.algIdent = asn.seq[0].ident;\n\n /**\n * @type {import(\"../encoding/der.js\").AsnType | undefined}\n */\n this.parameters = asn.seq[1];\n } else {\n throw new Error(\n `error parsing AlgorithmIdentifier from ${JSON.stringify(asn)}`\n );\n }\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this);\n }\n}\n\nclass PBES2Params {\n /**\n * @param {import(\"../encoding/der.js\").AsnType} asn\n */\n constructor(asn) {\n if (\"seq\" in asn && asn.seq.length === 2) {\n /**\n * @type {AlgorithmIdentifier}\n */\n this.kdf = new AlgorithmIdentifier(asn.seq[0]);\n\n /**\n * @type {AlgorithmIdentifier}\n */\n this.encScheme = new AlgorithmIdentifier(asn.seq[1]);\n } else {\n throw new Error(\n `error parsing PBES2Params from ${JSON.stringify(asn)}`\n );\n }\n }\n}\n\nclass PBKDF2Params {\n /**\n * @param {import(\"../encoding/der.js\").AsnType} asn\n */\n constructor(asn) {\n if (\n \"seq\" in asn &&\n asn.seq.length >= 2 &&\n \"bytes\" in asn.seq[0] &&\n \"int\" in asn.seq[1]\n ) {\n /**\n * @type {Uint8Array}\n */\n this.salt = asn.seq[0].bytes;\n\n /**\n * @type {number}\n */\n this.iterCount = asn.seq[1][\"int\"];\n\n if (asn.seq.length > 2) {\n if (\"seq\" in asn.seq[2]) {\n this.prf = new AlgorithmIdentifier(asn.seq[2]);\n return;\n } else if (\"int\" in asn.seq[2]) {\n /**\n * @type {number | undefined}\n */\n this.keyLength = asn.seq[2][\"int\"];\n }\n\n if (asn.seq.length === 4) {\n /**\n * @type {AlgorithmIdentifier | undefined}\n */\n this.prf = new AlgorithmIdentifier(asn.seq[3]);\n }\n\n return;\n }\n }\n\n throw new Error(\n `error parsing PBKDF2Params from ${JSON.stringify(asn)}`\n );\n }\n}\n\nexport class PrivateKeyInfo {\n /**\n * @param {import(\"../encoding/der.js\").AsnType} asn\n */\n constructor(asn) {\n if (\"seq\" in asn && asn.seq.length === 3) {\n if (\"int\" in asn.seq[0] && asn.seq[0][\"int\"] === 0) {\n /**\n * @type {number}\n */\n this.version = 0;\n } else {\n throw new Error(\n `expected version = 0, got ${JSON.stringify(asn.seq[0])}`\n );\n }\n\n /**\n * @type {AlgorithmIdentifier}\n */\n this.algId = new AlgorithmIdentifier(asn.seq[1]);\n\n if (\"bytes\" in asn.seq[2]) {\n /**\n * @type {Uint8Array}\n */\n this.privateKey = asn.seq[2].bytes;\n } else {\n throw new Error(\n `expected octet string as 3rd element, got ${JSON.stringify(\n asn.seq[2]\n )}`\n );\n }\n\n return;\n }\n\n throw new Error(\n `error parsing PrivateKeyInfo from ${JSON.stringify(asn)}`\n );\n }\n\n /**\n * @param {Uint8Array} encoded\n * @returns {PrivateKeyInfo}\n */\n static parse(encoded) {\n return new PrivateKeyInfo(der.decode(encoded));\n }\n}\n\nexport class EncryptedPrivateKeyInfo {\n /**\n * @param {import(\"../encoding/der.js\").AsnType} asn\n */\n constructor(asn) {\n if (\"seq\" in asn && asn.seq.length === 2 && \"bytes\" in asn.seq[1]) {\n /**\n * @type {AlgorithmIdentifier}\n */\n this.algId = new AlgorithmIdentifier(asn.seq[0]);\n\n /**\n * @type {Uint8Array}\n */\n this.data = asn.seq[1].bytes;\n return;\n }\n\n throw new Error(\n `error parsing EncryptedPrivateKeyInfo from ${JSON.stringify(asn)}`\n );\n }\n\n /**\n * @param {Uint8Array} encoded\n * @returns {EncryptedPrivateKeyInfo}\n */\n static parse(encoded) {\n return new EncryptedPrivateKeyInfo(der.decode(encoded));\n }\n\n /**\n * @param {string} passphrase\n * @returns {Promise}\n */\n async decrypt(passphrase) {\n if (\n this.algId.algIdent !== \"1.2.840.113549.1.5.13\" ||\n !this.algId.parameters\n ) {\n // PBES2\n throw new Error(\n `unsupported key encryption algorithm: ${this.algId.toString()}`\n );\n }\n\n const pbes2Params = new PBES2Params(this.algId.parameters);\n\n if (\n pbes2Params.kdf.algIdent !== \"1.2.840.113549.1.5.12\" ||\n !pbes2Params.kdf.parameters\n ) {\n // PBKDF2\n throw new Error(\n `unsupported key derivation function: ${pbes2Params.kdf.toString()}`\n );\n }\n\n const pbkdf2Params = new PBKDF2Params(pbes2Params.kdf.parameters);\n\n if (!pbkdf2Params.prf) {\n throw new Error(\"unsupported PRF HMAC-SHA-1\");\n } else if (pbkdf2Params.prf.algIdent !== \"1.2.840.113549.2.9\") {\n // HMAC-SHA-256\n throw new Error(`unsupported PRF ${pbkdf2Params.prf.toString()}`);\n }\n\n if (pbes2Params.encScheme.algIdent !== \"2.16.840.1.101.3.4.1.2\") {\n // AES-128-CBC\n throw new Error(\n `unsupported encryption scheme: ${pbes2Params.encScheme.toString()}`\n );\n }\n\n if (\n !pbes2Params.encScheme.parameters ||\n !(\"bytes\" in pbes2Params.encScheme.parameters)\n ) {\n throw new Error(\n \"expected IV as bytes for AES-128-CBC, \" +\n `got: ${JSON.stringify(pbes2Params.encScheme.parameters)}`\n );\n }\n\n const keyLen = pbkdf2Params.keyLength || 16;\n const iv = pbes2Params.encScheme.parameters.bytes;\n\n const key = await pbkdf2.deriveKey(\n hmac.HashAlgorithm.Sha256,\n passphrase,\n pbkdf2Params.salt,\n pbkdf2Params.iterCount,\n keyLen\n );\n\n const decrypted = await crypto.createDecipheriv(\n crypto.CipherAlgorithm.Aes128Cbc,\n key,\n iv,\n this.data\n );\n\n return PrivateKeyInfo.parse(decrypted);\n }\n}\n","/**\n * @param {string} text\n * @returns {Uint8Array}\n */\nexport function decode(text) {\n // note: assumes is available in the global scope if is not\n // eslint-disable-next-line deprecation/deprecation\n return Uint8Array.from(atob(text), (c) => c.charCodeAt(0));\n}\n\n/**\n * @param {Uint8Array} data\n * @returns {string};\n */\nexport function encode(data) {\n // note: assumes is available in the global scope if is not\n // eslint-disable-next-line deprecation/deprecation\n return btoa(String.fromCharCode.apply(null, Array.from(data)));\n}\n","import * as pbkdf2 from \"../primitive/pbkdf2.js\";\nimport * as hmac from \"../primitive/hmac.js\";\n\n/**\n * @param {Uint8Array} seed\n * @param {number} index\n * @returns {Promise}\n */\nexport function legacy(seed, index) {\n const password = new Uint8Array(seed.length + 8);\n password.set(seed, 0);\n\n const view = new DataView(\n password.buffer,\n password.byteOffset,\n password.byteLength\n );\n\n if (index === 0xffffffffff) {\n view.setInt32(seed.length + 0, 0xff);\n view.setInt32(seed.length + 4, -1); // 0xffffffff\n } else {\n view.setInt32(seed.length + 0, index < 0 ? -1 : 0);\n view.setInt32(seed.length + 4, index);\n }\n\n const salt = Uint8Array.from([0xff]);\n return pbkdf2.deriveKey(\n hmac.HashAlgorithm.Sha512,\n password,\n salt,\n 2048,\n 32\n );\n}\n","/**\n * @param {Uint8Array} array1\n * @param {Uint8Array} array2\n * @returns {boolean}\n */\nexport function arrayEqual(array1, array2) {\n if (array1 === array2) {\n return true;\n }\n\n if (array1.byteLength !== array2.byteLength) {\n return false;\n }\n\n const view1 = new DataView(\n array1.buffer,\n array1.byteOffset,\n array1.byteLength\n );\n const view2 = new DataView(\n array2.buffer,\n array2.byteOffset,\n array2.byteLength\n );\n\n let i = array1.byteLength;\n\n while (i--) {\n if (view1.getUint8(i) !== view2.getUint8(i)) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * @param {Uint8Array} array\n * @param {Uint8Array} arrayPrefix\n * @returns {boolean}\n */\nexport function arrayStartsWith(array, arrayPrefix) {\n if (array.byteLength < arrayPrefix.byteLength) {\n return false;\n }\n\n let i = arrayPrefix.byteLength;\n\n while (i--) {\n if (array[i] !== arrayPrefix[i]) {\n return false;\n }\n }\n\n return true;\n}\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport AccountId from \"./AccountId.js\";\nimport TokenId from \"../token/TokenId.js\";\nimport NftId from \"../token/NftId.js\";\nimport Long from \"long\";\nimport Hbar from \"../Hbar.js\";\nimport HbarAllowance from \"./HbarAllowance.js\";\nimport TokenAllowance from \"./TokenAllowance.js\";\nimport TokenNftAllowance from \"./TokenNftAllowance.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ICryptoAdjustAllowanceTransactionBody} proto.ICryptoAdjustAllowanceTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"../long.js\").LongObject} LongObject\n */\n\n/**\n * Change properties for the given account.\n */\nexport default class AccountAllowanceAdjustTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {HbarAllowance[]} [props.hbarAllowances]\n * @param {TokenAllowance[]} [props.tokenAllowances]\n * @param {TokenNftAllowance[]} [props.nftAllowances]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {HbarAllowance[]}\n */\n this._hbarAllowances =\n props.hbarAllowances != null ? props.hbarAllowances : [];\n\n /**\n * @private\n * @type {TokenAllowance[]}\n */\n this._tokenAllowances =\n props.tokenAllowances != null ? props.tokenAllowances : [];\n\n /**\n * @private\n * @type {TokenNftAllowance[]}\n */\n this._nftAllowances =\n props.nftAllowances != null ? props.nftAllowances : [];\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {AccountAllowanceAdjustTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const allowanceAdjust =\n /** @type {proto.ICryptoAdjustAllowanceTransactionBody} */ (\n body.cryptoAdjustAllowance\n );\n\n return Transaction._fromProtobufTransactions(\n new AccountAllowanceAdjustTransaction({\n hbarAllowances: (allowanceAdjust.cryptoAllowances != null\n ? allowanceAdjust.cryptoAllowances\n : []\n ).map((adjust) => HbarAllowance._fromProtobuf(adjust)),\n tokenAllowances: (allowanceAdjust.tokenAllowances != null\n ? allowanceAdjust.tokenAllowances\n : []\n ).map((adjust) => TokenAllowance._fromProtobuf(adjust)),\n nftAllowances: (allowanceAdjust.nftAllowances != null\n ? allowanceAdjust.nftAllowances\n : []\n ).map((adjust) => TokenNftAllowance._fromProtobuf(adjust)),\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {HbarAllowance[]}\n */\n get hbarAllowances() {\n return this._hbarAllowances;\n }\n\n /**\n * @internal\n * @param {AccountId | string} spenderAccountId\n * @param {number | string | Long | LongObject | BigNumber | Hbar} amount\n * @returns {AccountAllowanceAdjustTransaction}\n */\n addHbarAllowance(spenderAccountId, amount) {\n this._requireNotFrozen();\n\n this._hbarAllowances.push(\n new HbarAllowance({\n spenderAccountId:\n typeof spenderAccountId === \"string\"\n ? AccountId.fromString(spenderAccountId)\n : spenderAccountId,\n amount: amount instanceof Hbar ? amount : new Hbar(amount),\n ownerAccountId: null,\n })\n );\n\n return this;\n }\n\n /**\n * @returns {TokenAllowance[]}\n */\n get tokenAllowances() {\n return this._tokenAllowances;\n }\n\n /**\n * @internal\n * @param {TokenId | string} tokenId\n * @param {AccountId | string} spenderAccountId\n * @param {Long | number} amount\n * @returns {AccountAllowanceAdjustTransaction}\n */\n addTokenAllowance(tokenId, spenderAccountId, amount) {\n this._requireNotFrozen();\n\n this._tokenAllowances.push(\n new TokenAllowance({\n tokenId:\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId,\n spenderAccountId:\n typeof spenderAccountId === \"string\"\n ? AccountId.fromString(spenderAccountId)\n : spenderAccountId,\n amount:\n typeof amount === \"number\"\n ? Long.fromNumber(amount)\n : amount,\n ownerAccountId: null,\n })\n );\n\n return this;\n }\n\n /**\n * @internal\n * @param {NftId | string} nftId\n * @param {AccountId | string} spenderAccountId\n * @returns {AccountAllowanceAdjustTransaction}\n */\n addTokenNftAllowance(nftId, spenderAccountId) {\n this._requireNotFrozen();\n\n const id = typeof nftId === \"string\" ? NftId.fromString(nftId) : nftId;\n const spender =\n typeof spenderAccountId === \"string\"\n ? AccountId.fromString(spenderAccountId)\n : spenderAccountId;\n let found = false;\n\n for (const allowance of this._nftAllowances) {\n if (\n allowance.tokenId.compare(id.tokenId) === 0 &&\n allowance.spenderAccountId.compare(spender) === 0\n ) {\n if (allowance.serialNumbers != null) {\n allowance.serialNumbers.push(id.serial);\n }\n found = true;\n break;\n }\n }\n\n if (!found) {\n this._nftAllowances.push(\n new TokenNftAllowance({\n tokenId: id.tokenId,\n spenderAccountId: spender,\n serialNumbers: [id.serial],\n ownerAccountId: null,\n })\n );\n }\n\n return this;\n }\n\n /**\n * @internal\n * @param {TokenId | string} tokenId\n * @param {AccountId | string} spenderAccountId\n * @returns {AccountAllowanceAdjustTransaction}\n */\n addAllTokenNftAllowance(tokenId, spenderAccountId) {\n this._requireNotFrozen();\n\n this._nftAllowances.push(\n new TokenNftAllowance({\n tokenId:\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId,\n spenderAccountId:\n typeof spenderAccountId === \"string\"\n ? AccountId.fromString(spenderAccountId)\n : spenderAccountId,\n serialNumbers: null,\n ownerAccountId: null,\n })\n );\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n this._hbarAllowances.map((adjust) =>\n adjust.spenderAccountId.validateChecksum(client)\n );\n this._tokenAllowances.map((adjust) => {\n adjust.tokenId.validateChecksum(client);\n adjust.spenderAccountId.validateChecksum(client);\n });\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.adjustAllowance(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"cryptoAdjustAllowance\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ICryptoAdjustAllowanceTransactionBody}\n */\n _makeTransactionData() {\n return {\n cryptoAllowances: this._hbarAllowances.map((adjust) =>\n adjust._toProtobuf()\n ),\n tokenAllowances: this._tokenAllowances.map((adjust) =>\n adjust._toProtobuf()\n ),\n nftAllowances: this._nftAllowances.map((adjust) =>\n adjust._toProtobuf()\n ),\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"cryptoAdjustAllowance\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n AccountAllowanceAdjustTransaction._fromProtobuf\n);\n","import BigNumber from \"bignumber.js\";\n\n/**\n * @typedef {{low: number, high: number, unsigned: boolean}} LongObject\n * @typedef {import(\"long\")} Long\n */\n\n/**\n * @param {Long | number | string | LongObject | BigNumber} value\n * @returns {BigNumber}\n */\nexport function valueToLong(value) {\n if (BigNumber.isBigNumber(value)) {\n return value;\n } else {\n return new BigNumber(value.toString());\n }\n}\n","export default class BadEntityIdException extends Error {\n /**\n * @param {Long} shard\n * @param {Long} realm\n * @param {Long} num\n * @param {string} presentChecksum\n * @param {string} expectedChecksum\n */\n constructor(shard, realm, num, presentChecksum, expectedChecksum) {\n super(\n `Entity ID ${shard.toString()}.${realm.toString()}.${num.toString()}-${presentChecksum} was incorrect.`\n );\n\n this.name = \"BadEntityIdException\";\n\n this.shard = shard;\n this.realm = realm;\n this.num = num;\n this.presentChecksum = presentChecksum;\n this.expectedChecksum = expectedChecksum;\n }\n}\n","\"use strict\";\nvar protobuf = exports;\n\n/**\n * Build type, one of `\"full\"`, `\"light\"` or `\"minimal\"`.\n * @name build\n * @type {string}\n * @const\n */\nprotobuf.build = \"minimal\";\n\n// Serialization\nprotobuf.Writer = require(\"./writer\");\nprotobuf.BufferWriter = require(\"./writer_buffer\");\nprotobuf.Reader = require(\"./reader\");\nprotobuf.BufferReader = require(\"./reader_buffer\");\n\n// Utility\nprotobuf.util = require(\"./util/minimal\");\nprotobuf.rpc = require(\"./rpc\");\nprotobuf.roots = require(\"./roots\");\nprotobuf.configure = configure;\n\n/* istanbul ignore next */\n/**\n * Reconfigures the library according to the environment.\n * @returns {undefined}\n */\nfunction configure() {\n protobuf.util._configure();\n protobuf.Writer._configure(protobuf.BufferWriter);\n protobuf.Reader._configure(protobuf.BufferReader);\n}\n\n// Set up buffer utility according to the environment\nconfigure();\n","\"use strict\";\r\nmodule.exports = asPromise;\r\n\r\n/**\r\n * Callback as used by {@link util.asPromise}.\r\n * @typedef asPromiseCallback\r\n * @type {function}\r\n * @param {Error|null} error Error, if any\r\n * @param {...*} params Additional arguments\r\n * @returns {undefined}\r\n */\r\n\r\n/**\r\n * Returns a promise from a node-style callback function.\r\n * @memberof util\r\n * @param {asPromiseCallback} fn Function to call\r\n * @param {*} ctx Function context\r\n * @param {...*} params Function arguments\r\n * @returns {Promise<*>} Promisified function\r\n */\r\nfunction asPromise(fn, ctx/*, varargs */) {\r\n var params = new Array(arguments.length - 1),\r\n offset = 0,\r\n index = 2,\r\n pending = true;\r\n while (index < arguments.length)\r\n params[offset++] = arguments[index++];\r\n return new Promise(function executor(resolve, reject) {\r\n params[offset] = function callback(err/*, varargs */) {\r\n if (pending) {\r\n pending = false;\r\n if (err)\r\n reject(err);\r\n else {\r\n var params = new Array(arguments.length - 1),\r\n offset = 0;\r\n while (offset < params.length)\r\n params[offset++] = arguments[offset];\r\n resolve.apply(null, params);\r\n }\r\n }\r\n };\r\n try {\r\n fn.apply(ctx || null, params);\r\n } catch (err) {\r\n if (pending) {\r\n pending = false;\r\n reject(err);\r\n }\r\n }\r\n });\r\n}\r\n","\"use strict\";\r\n\r\n/**\r\n * A minimal base64 implementation for number arrays.\r\n * @memberof util\r\n * @namespace\r\n */\r\nvar base64 = exports;\r\n\r\n/**\r\n * Calculates the byte length of a base64 encoded string.\r\n * @param {string} string Base64 encoded string\r\n * @returns {number} Byte length\r\n */\r\nbase64.length = function length(string) {\r\n var p = string.length;\r\n if (!p)\r\n return 0;\r\n var n = 0;\r\n while (--p % 4 > 1 && string.charAt(p) === \"=\")\r\n ++n;\r\n return Math.ceil(string.length * 3) / 4 - n;\r\n};\r\n\r\n// Base64 encoding table\r\nvar b64 = new Array(64);\r\n\r\n// Base64 decoding table\r\nvar s64 = new Array(123);\r\n\r\n// 65..90, 97..122, 48..57, 43, 47\r\nfor (var i = 0; i < 64;)\r\n s64[b64[i] = i < 26 ? i + 65 : i < 52 ? i + 71 : i < 62 ? i - 4 : i - 59 | 43] = i++;\r\n\r\n/**\r\n * Encodes a buffer to a base64 encoded string.\r\n * @param {Uint8Array} buffer Source buffer\r\n * @param {number} start Source start\r\n * @param {number} end Source end\r\n * @returns {string} Base64 encoded string\r\n */\r\nbase64.encode = function encode(buffer, start, end) {\r\n var parts = null,\r\n chunk = [];\r\n var i = 0, // output index\r\n j = 0, // goto index\r\n t; // temporary\r\n while (start < end) {\r\n var b = buffer[start++];\r\n switch (j) {\r\n case 0:\r\n chunk[i++] = b64[b >> 2];\r\n t = (b & 3) << 4;\r\n j = 1;\r\n break;\r\n case 1:\r\n chunk[i++] = b64[t | b >> 4];\r\n t = (b & 15) << 2;\r\n j = 2;\r\n break;\r\n case 2:\r\n chunk[i++] = b64[t | b >> 6];\r\n chunk[i++] = b64[b & 63];\r\n j = 0;\r\n break;\r\n }\r\n if (i > 8191) {\r\n (parts || (parts = [])).push(String.fromCharCode.apply(String, chunk));\r\n i = 0;\r\n }\r\n }\r\n if (j) {\r\n chunk[i++] = b64[t];\r\n chunk[i++] = 61;\r\n if (j === 1)\r\n chunk[i++] = 61;\r\n }\r\n if (parts) {\r\n if (i)\r\n parts.push(String.fromCharCode.apply(String, chunk.slice(0, i)));\r\n return parts.join(\"\");\r\n }\r\n return String.fromCharCode.apply(String, chunk.slice(0, i));\r\n};\r\n\r\nvar invalidEncoding = \"invalid encoding\";\r\n\r\n/**\r\n * Decodes a base64 encoded string to a buffer.\r\n * @param {string} string Source string\r\n * @param {Uint8Array} buffer Destination buffer\r\n * @param {number} offset Destination offset\r\n * @returns {number} Number of bytes written\r\n * @throws {Error} If encoding is invalid\r\n */\r\nbase64.decode = function decode(string, buffer, offset) {\r\n var start = offset;\r\n var j = 0, // goto index\r\n t; // temporary\r\n for (var i = 0; i < string.length;) {\r\n var c = string.charCodeAt(i++);\r\n if (c === 61 && j > 1)\r\n break;\r\n if ((c = s64[c]) === undefined)\r\n throw Error(invalidEncoding);\r\n switch (j) {\r\n case 0:\r\n t = c;\r\n j = 1;\r\n break;\r\n case 1:\r\n buffer[offset++] = t << 2 | (c & 48) >> 4;\r\n t = c;\r\n j = 2;\r\n break;\r\n case 2:\r\n buffer[offset++] = (t & 15) << 4 | (c & 60) >> 2;\r\n t = c;\r\n j = 3;\r\n break;\r\n case 3:\r\n buffer[offset++] = (t & 3) << 6 | c;\r\n j = 0;\r\n break;\r\n }\r\n }\r\n if (j === 1)\r\n throw Error(invalidEncoding);\r\n return offset - start;\r\n};\r\n\r\n/**\r\n * Tests if the specified string appears to be base64 encoded.\r\n * @param {string} string String to test\r\n * @returns {boolean} `true` if probably base64 encoded, otherwise false\r\n */\r\nbase64.test = function test(string) {\r\n return /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(string);\r\n};\r\n","\"use strict\";\r\nmodule.exports = EventEmitter;\r\n\r\n/**\r\n * Constructs a new event emitter instance.\r\n * @classdesc A minimal event emitter.\r\n * @memberof util\r\n * @constructor\r\n */\r\nfunction EventEmitter() {\r\n\r\n /**\r\n * Registered listeners.\r\n * @type {Object.}\r\n * @private\r\n */\r\n this._listeners = {};\r\n}\r\n\r\n/**\r\n * Registers an event listener.\r\n * @param {string} evt Event name\r\n * @param {function} fn Listener\r\n * @param {*} [ctx] Listener context\r\n * @returns {util.EventEmitter} `this`\r\n */\r\nEventEmitter.prototype.on = function on(evt, fn, ctx) {\r\n (this._listeners[evt] || (this._listeners[evt] = [])).push({\r\n fn : fn,\r\n ctx : ctx || this\r\n });\r\n return this;\r\n};\r\n\r\n/**\r\n * Removes an event listener or any matching listeners if arguments are omitted.\r\n * @param {string} [evt] Event name. Removes all listeners if omitted.\r\n * @param {function} [fn] Listener to remove. Removes all listeners of `evt` if omitted.\r\n * @returns {util.EventEmitter} `this`\r\n */\r\nEventEmitter.prototype.off = function off(evt, fn) {\r\n if (evt === undefined)\r\n this._listeners = {};\r\n else {\r\n if (fn === undefined)\r\n this._listeners[evt] = [];\r\n else {\r\n var listeners = this._listeners[evt];\r\n for (var i = 0; i < listeners.length;)\r\n if (listeners[i].fn === fn)\r\n listeners.splice(i, 1);\r\n else\r\n ++i;\r\n }\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Emits an event by calling its listeners with the specified arguments.\r\n * @param {string} evt Event name\r\n * @param {...*} args Arguments\r\n * @returns {util.EventEmitter} `this`\r\n */\r\nEventEmitter.prototype.emit = function emit(evt) {\r\n var listeners = this._listeners[evt];\r\n if (listeners) {\r\n var args = [],\r\n i = 1;\r\n for (; i < arguments.length;)\r\n args.push(arguments[i++]);\r\n for (i = 0; i < listeners.length;)\r\n listeners[i].fn.apply(listeners[i++].ctx, args);\r\n }\r\n return this;\r\n};\r\n","\"use strict\";\r\n\r\nmodule.exports = factory(factory);\r\n\r\n/**\r\n * Reads / writes floats / doubles from / to buffers.\r\n * @name util.float\r\n * @namespace\r\n */\r\n\r\n/**\r\n * Writes a 32 bit float to a buffer using little endian byte order.\r\n * @name util.float.writeFloatLE\r\n * @function\r\n * @param {number} val Value to write\r\n * @param {Uint8Array} buf Target buffer\r\n * @param {number} pos Target buffer offset\r\n * @returns {undefined}\r\n */\r\n\r\n/**\r\n * Writes a 32 bit float to a buffer using big endian byte order.\r\n * @name util.float.writeFloatBE\r\n * @function\r\n * @param {number} val Value to write\r\n * @param {Uint8Array} buf Target buffer\r\n * @param {number} pos Target buffer offset\r\n * @returns {undefined}\r\n */\r\n\r\n/**\r\n * Reads a 32 bit float from a buffer using little endian byte order.\r\n * @name util.float.readFloatLE\r\n * @function\r\n * @param {Uint8Array} buf Source buffer\r\n * @param {number} pos Source buffer offset\r\n * @returns {number} Value read\r\n */\r\n\r\n/**\r\n * Reads a 32 bit float from a buffer using big endian byte order.\r\n * @name util.float.readFloatBE\r\n * @function\r\n * @param {Uint8Array} buf Source buffer\r\n * @param {number} pos Source buffer offset\r\n * @returns {number} Value read\r\n */\r\n\r\n/**\r\n * Writes a 64 bit double to a buffer using little endian byte order.\r\n * @name util.float.writeDoubleLE\r\n * @function\r\n * @param {number} val Value to write\r\n * @param {Uint8Array} buf Target buffer\r\n * @param {number} pos Target buffer offset\r\n * @returns {undefined}\r\n */\r\n\r\n/**\r\n * Writes a 64 bit double to a buffer using big endian byte order.\r\n * @name util.float.writeDoubleBE\r\n * @function\r\n * @param {number} val Value to write\r\n * @param {Uint8Array} buf Target buffer\r\n * @param {number} pos Target buffer offset\r\n * @returns {undefined}\r\n */\r\n\r\n/**\r\n * Reads a 64 bit double from a buffer using little endian byte order.\r\n * @name util.float.readDoubleLE\r\n * @function\r\n * @param {Uint8Array} buf Source buffer\r\n * @param {number} pos Source buffer offset\r\n * @returns {number} Value read\r\n */\r\n\r\n/**\r\n * Reads a 64 bit double from a buffer using big endian byte order.\r\n * @name util.float.readDoubleBE\r\n * @function\r\n * @param {Uint8Array} buf Source buffer\r\n * @param {number} pos Source buffer offset\r\n * @returns {number} Value read\r\n */\r\n\r\n// Factory function for the purpose of node-based testing in modified global environments\r\nfunction factory(exports) {\r\n\r\n // float: typed array\r\n if (typeof Float32Array !== \"undefined\") (function() {\r\n\r\n var f32 = new Float32Array([ -0 ]),\r\n f8b = new Uint8Array(f32.buffer),\r\n le = f8b[3] === 128;\r\n\r\n function writeFloat_f32_cpy(val, buf, pos) {\r\n f32[0] = val;\r\n buf[pos ] = f8b[0];\r\n buf[pos + 1] = f8b[1];\r\n buf[pos + 2] = f8b[2];\r\n buf[pos + 3] = f8b[3];\r\n }\r\n\r\n function writeFloat_f32_rev(val, buf, pos) {\r\n f32[0] = val;\r\n buf[pos ] = f8b[3];\r\n buf[pos + 1] = f8b[2];\r\n buf[pos + 2] = f8b[1];\r\n buf[pos + 3] = f8b[0];\r\n }\r\n\r\n /* istanbul ignore next */\r\n exports.writeFloatLE = le ? writeFloat_f32_cpy : writeFloat_f32_rev;\r\n /* istanbul ignore next */\r\n exports.writeFloatBE = le ? writeFloat_f32_rev : writeFloat_f32_cpy;\r\n\r\n function readFloat_f32_cpy(buf, pos) {\r\n f8b[0] = buf[pos ];\r\n f8b[1] = buf[pos + 1];\r\n f8b[2] = buf[pos + 2];\r\n f8b[3] = buf[pos + 3];\r\n return f32[0];\r\n }\r\n\r\n function readFloat_f32_rev(buf, pos) {\r\n f8b[3] = buf[pos ];\r\n f8b[2] = buf[pos + 1];\r\n f8b[1] = buf[pos + 2];\r\n f8b[0] = buf[pos + 3];\r\n return f32[0];\r\n }\r\n\r\n /* istanbul ignore next */\r\n exports.readFloatLE = le ? readFloat_f32_cpy : readFloat_f32_rev;\r\n /* istanbul ignore next */\r\n exports.readFloatBE = le ? readFloat_f32_rev : readFloat_f32_cpy;\r\n\r\n // float: ieee754\r\n })(); else (function() {\r\n\r\n function writeFloat_ieee754(writeUint, val, buf, pos) {\r\n var sign = val < 0 ? 1 : 0;\r\n if (sign)\r\n val = -val;\r\n if (val === 0)\r\n writeUint(1 / val > 0 ? /* positive */ 0 : /* negative 0 */ 2147483648, buf, pos);\r\n else if (isNaN(val))\r\n writeUint(2143289344, buf, pos);\r\n else if (val > 3.4028234663852886e+38) // +-Infinity\r\n writeUint((sign << 31 | 2139095040) >>> 0, buf, pos);\r\n else if (val < 1.1754943508222875e-38) // denormal\r\n writeUint((sign << 31 | Math.round(val / 1.401298464324817e-45)) >>> 0, buf, pos);\r\n else {\r\n var exponent = Math.floor(Math.log(val) / Math.LN2),\r\n mantissa = Math.round(val * Math.pow(2, -exponent) * 8388608) & 8388607;\r\n writeUint((sign << 31 | exponent + 127 << 23 | mantissa) >>> 0, buf, pos);\r\n }\r\n }\r\n\r\n exports.writeFloatLE = writeFloat_ieee754.bind(null, writeUintLE);\r\n exports.writeFloatBE = writeFloat_ieee754.bind(null, writeUintBE);\r\n\r\n function readFloat_ieee754(readUint, buf, pos) {\r\n var uint = readUint(buf, pos),\r\n sign = (uint >> 31) * 2 + 1,\r\n exponent = uint >>> 23 & 255,\r\n mantissa = uint & 8388607;\r\n return exponent === 255\r\n ? mantissa\r\n ? NaN\r\n : sign * Infinity\r\n : exponent === 0 // denormal\r\n ? sign * 1.401298464324817e-45 * mantissa\r\n : sign * Math.pow(2, exponent - 150) * (mantissa + 8388608);\r\n }\r\n\r\n exports.readFloatLE = readFloat_ieee754.bind(null, readUintLE);\r\n exports.readFloatBE = readFloat_ieee754.bind(null, readUintBE);\r\n\r\n })();\r\n\r\n // double: typed array\r\n if (typeof Float64Array !== \"undefined\") (function() {\r\n\r\n var f64 = new Float64Array([-0]),\r\n f8b = new Uint8Array(f64.buffer),\r\n le = f8b[7] === 128;\r\n\r\n function writeDouble_f64_cpy(val, buf, pos) {\r\n f64[0] = val;\r\n buf[pos ] = f8b[0];\r\n buf[pos + 1] = f8b[1];\r\n buf[pos + 2] = f8b[2];\r\n buf[pos + 3] = f8b[3];\r\n buf[pos + 4] = f8b[4];\r\n buf[pos + 5] = f8b[5];\r\n buf[pos + 6] = f8b[6];\r\n buf[pos + 7] = f8b[7];\r\n }\r\n\r\n function writeDouble_f64_rev(val, buf, pos) {\r\n f64[0] = val;\r\n buf[pos ] = f8b[7];\r\n buf[pos + 1] = f8b[6];\r\n buf[pos + 2] = f8b[5];\r\n buf[pos + 3] = f8b[4];\r\n buf[pos + 4] = f8b[3];\r\n buf[pos + 5] = f8b[2];\r\n buf[pos + 6] = f8b[1];\r\n buf[pos + 7] = f8b[0];\r\n }\r\n\r\n /* istanbul ignore next */\r\n exports.writeDoubleLE = le ? writeDouble_f64_cpy : writeDouble_f64_rev;\r\n /* istanbul ignore next */\r\n exports.writeDoubleBE = le ? writeDouble_f64_rev : writeDouble_f64_cpy;\r\n\r\n function readDouble_f64_cpy(buf, pos) {\r\n f8b[0] = buf[pos ];\r\n f8b[1] = buf[pos + 1];\r\n f8b[2] = buf[pos + 2];\r\n f8b[3] = buf[pos + 3];\r\n f8b[4] = buf[pos + 4];\r\n f8b[5] = buf[pos + 5];\r\n f8b[6] = buf[pos + 6];\r\n f8b[7] = buf[pos + 7];\r\n return f64[0];\r\n }\r\n\r\n function readDouble_f64_rev(buf, pos) {\r\n f8b[7] = buf[pos ];\r\n f8b[6] = buf[pos + 1];\r\n f8b[5] = buf[pos + 2];\r\n f8b[4] = buf[pos + 3];\r\n f8b[3] = buf[pos + 4];\r\n f8b[2] = buf[pos + 5];\r\n f8b[1] = buf[pos + 6];\r\n f8b[0] = buf[pos + 7];\r\n return f64[0];\r\n }\r\n\r\n /* istanbul ignore next */\r\n exports.readDoubleLE = le ? readDouble_f64_cpy : readDouble_f64_rev;\r\n /* istanbul ignore next */\r\n exports.readDoubleBE = le ? readDouble_f64_rev : readDouble_f64_cpy;\r\n\r\n // double: ieee754\r\n })(); else (function() {\r\n\r\n function writeDouble_ieee754(writeUint, off0, off1, val, buf, pos) {\r\n var sign = val < 0 ? 1 : 0;\r\n if (sign)\r\n val = -val;\r\n if (val === 0) {\r\n writeUint(0, buf, pos + off0);\r\n writeUint(1 / val > 0 ? /* positive */ 0 : /* negative 0 */ 2147483648, buf, pos + off1);\r\n } else if (isNaN(val)) {\r\n writeUint(0, buf, pos + off0);\r\n writeUint(2146959360, buf, pos + off1);\r\n } else if (val > 1.7976931348623157e+308) { // +-Infinity\r\n writeUint(0, buf, pos + off0);\r\n writeUint((sign << 31 | 2146435072) >>> 0, buf, pos + off1);\r\n } else {\r\n var mantissa;\r\n if (val < 2.2250738585072014e-308) { // denormal\r\n mantissa = val / 5e-324;\r\n writeUint(mantissa >>> 0, buf, pos + off0);\r\n writeUint((sign << 31 | mantissa / 4294967296) >>> 0, buf, pos + off1);\r\n } else {\r\n var exponent = Math.floor(Math.log(val) / Math.LN2);\r\n if (exponent === 1024)\r\n exponent = 1023;\r\n mantissa = val * Math.pow(2, -exponent);\r\n writeUint(mantissa * 4503599627370496 >>> 0, buf, pos + off0);\r\n writeUint((sign << 31 | exponent + 1023 << 20 | mantissa * 1048576 & 1048575) >>> 0, buf, pos + off1);\r\n }\r\n }\r\n }\r\n\r\n exports.writeDoubleLE = writeDouble_ieee754.bind(null, writeUintLE, 0, 4);\r\n exports.writeDoubleBE = writeDouble_ieee754.bind(null, writeUintBE, 4, 0);\r\n\r\n function readDouble_ieee754(readUint, off0, off1, buf, pos) {\r\n var lo = readUint(buf, pos + off0),\r\n hi = readUint(buf, pos + off1);\r\n var sign = (hi >> 31) * 2 + 1,\r\n exponent = hi >>> 20 & 2047,\r\n mantissa = 4294967296 * (hi & 1048575) + lo;\r\n return exponent === 2047\r\n ? mantissa\r\n ? NaN\r\n : sign * Infinity\r\n : exponent === 0 // denormal\r\n ? sign * 5e-324 * mantissa\r\n : sign * Math.pow(2, exponent - 1075) * (mantissa + 4503599627370496);\r\n }\r\n\r\n exports.readDoubleLE = readDouble_ieee754.bind(null, readUintLE, 0, 4);\r\n exports.readDoubleBE = readDouble_ieee754.bind(null, readUintBE, 4, 0);\r\n\r\n })();\r\n\r\n return exports;\r\n}\r\n\r\n// uint helpers\r\n\r\nfunction writeUintLE(val, buf, pos) {\r\n buf[pos ] = val & 255;\r\n buf[pos + 1] = val >>> 8 & 255;\r\n buf[pos + 2] = val >>> 16 & 255;\r\n buf[pos + 3] = val >>> 24;\r\n}\r\n\r\nfunction writeUintBE(val, buf, pos) {\r\n buf[pos ] = val >>> 24;\r\n buf[pos + 1] = val >>> 16 & 255;\r\n buf[pos + 2] = val >>> 8 & 255;\r\n buf[pos + 3] = val & 255;\r\n}\r\n\r\nfunction readUintLE(buf, pos) {\r\n return (buf[pos ]\r\n | buf[pos + 1] << 8\r\n | buf[pos + 2] << 16\r\n | buf[pos + 3] << 24) >>> 0;\r\n}\r\n\r\nfunction readUintBE(buf, pos) {\r\n return (buf[pos ] << 24\r\n | buf[pos + 1] << 16\r\n | buf[pos + 2] << 8\r\n | buf[pos + 3]) >>> 0;\r\n}\r\n","\"use strict\";\r\nmodule.exports = inquire;\r\n\r\n/**\r\n * Requires a module only if available.\r\n * @memberof util\r\n * @param {string} moduleName Module to require\r\n * @returns {?Object} Required module if available and not empty, otherwise `null`\r\n */\r\nfunction inquire(moduleName) {\r\n try {\r\n var mod = eval(\"quire\".replace(/^/,\"re\"))(moduleName); // eslint-disable-line no-eval\r\n if (mod && (mod.length || Object.keys(mod).length))\r\n return mod;\r\n } catch (e) {} // eslint-disable-line no-empty\r\n return null;\r\n}\r\n","\"use strict\";\r\n\r\n/**\r\n * A minimal UTF8 implementation for number arrays.\r\n * @memberof util\r\n * @namespace\r\n */\r\nvar utf8 = exports;\r\n\r\n/**\r\n * Calculates the UTF8 byte length of a string.\r\n * @param {string} string String\r\n * @returns {number} Byte length\r\n */\r\nutf8.length = function utf8_length(string) {\r\n var len = 0,\r\n c = 0;\r\n for (var i = 0; i < string.length; ++i) {\r\n c = string.charCodeAt(i);\r\n if (c < 128)\r\n len += 1;\r\n else if (c < 2048)\r\n len += 2;\r\n else if ((c & 0xFC00) === 0xD800 && (string.charCodeAt(i + 1) & 0xFC00) === 0xDC00) {\r\n ++i;\r\n len += 4;\r\n } else\r\n len += 3;\r\n }\r\n return len;\r\n};\r\n\r\n/**\r\n * Reads UTF8 bytes as a string.\r\n * @param {Uint8Array} buffer Source buffer\r\n * @param {number} start Source start\r\n * @param {number} end Source end\r\n * @returns {string} String read\r\n */\r\nutf8.read = function utf8_read(buffer, start, end) {\r\n var len = end - start;\r\n if (len < 1)\r\n return \"\";\r\n var parts = null,\r\n chunk = [],\r\n i = 0, // char offset\r\n t; // temporary\r\n while (start < end) {\r\n t = buffer[start++];\r\n if (t < 128)\r\n chunk[i++] = t;\r\n else if (t > 191 && t < 224)\r\n chunk[i++] = (t & 31) << 6 | buffer[start++] & 63;\r\n else if (t > 239 && t < 365) {\r\n t = ((t & 7) << 18 | (buffer[start++] & 63) << 12 | (buffer[start++] & 63) << 6 | buffer[start++] & 63) - 0x10000;\r\n chunk[i++] = 0xD800 + (t >> 10);\r\n chunk[i++] = 0xDC00 + (t & 1023);\r\n } else\r\n chunk[i++] = (t & 15) << 12 | (buffer[start++] & 63) << 6 | buffer[start++] & 63;\r\n if (i > 8191) {\r\n (parts || (parts = [])).push(String.fromCharCode.apply(String, chunk));\r\n i = 0;\r\n }\r\n }\r\n if (parts) {\r\n if (i)\r\n parts.push(String.fromCharCode.apply(String, chunk.slice(0, i)));\r\n return parts.join(\"\");\r\n }\r\n return String.fromCharCode.apply(String, chunk.slice(0, i));\r\n};\r\n\r\n/**\r\n * Writes a string as UTF8 bytes.\r\n * @param {string} string Source string\r\n * @param {Uint8Array} buffer Destination buffer\r\n * @param {number} offset Destination offset\r\n * @returns {number} Bytes written\r\n */\r\nutf8.write = function utf8_write(string, buffer, offset) {\r\n var start = offset,\r\n c1, // character 1\r\n c2; // character 2\r\n for (var i = 0; i < string.length; ++i) {\r\n c1 = string.charCodeAt(i);\r\n if (c1 < 128) {\r\n buffer[offset++] = c1;\r\n } else if (c1 < 2048) {\r\n buffer[offset++] = c1 >> 6 | 192;\r\n buffer[offset++] = c1 & 63 | 128;\r\n } else if ((c1 & 0xFC00) === 0xD800 && ((c2 = string.charCodeAt(i + 1)) & 0xFC00) === 0xDC00) {\r\n c1 = 0x10000 + ((c1 & 0x03FF) << 10) + (c2 & 0x03FF);\r\n ++i;\r\n buffer[offset++] = c1 >> 18 | 240;\r\n buffer[offset++] = c1 >> 12 & 63 | 128;\r\n buffer[offset++] = c1 >> 6 & 63 | 128;\r\n buffer[offset++] = c1 & 63 | 128;\r\n } else {\r\n buffer[offset++] = c1 >> 12 | 224;\r\n buffer[offset++] = c1 >> 6 & 63 | 128;\r\n buffer[offset++] = c1 & 63 | 128;\r\n }\r\n }\r\n return offset - start;\r\n};\r\n","\"use strict\";\r\nmodule.exports = pool;\r\n\r\n/**\r\n * An allocator as used by {@link util.pool}.\r\n * @typedef PoolAllocator\r\n * @type {function}\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\n\r\n/**\r\n * A slicer as used by {@link util.pool}.\r\n * @typedef PoolSlicer\r\n * @type {function}\r\n * @param {number} start Start offset\r\n * @param {number} end End offset\r\n * @returns {Uint8Array} Buffer slice\r\n * @this {Uint8Array}\r\n */\r\n\r\n/**\r\n * A general purpose buffer pool.\r\n * @memberof util\r\n * @function\r\n * @param {PoolAllocator} alloc Allocator\r\n * @param {PoolSlicer} slice Slicer\r\n * @param {number} [size=8192] Slab size\r\n * @returns {PoolAllocator} Pooled allocator\r\n */\r\nfunction pool(alloc, slice, size) {\r\n var SIZE = size || 8192;\r\n var MAX = SIZE >>> 1;\r\n var slab = null;\r\n var offset = SIZE;\r\n return function pool_alloc(size) {\r\n if (size < 1 || size > MAX)\r\n return alloc(size);\r\n if (offset + size > SIZE) {\r\n slab = alloc(SIZE);\r\n offset = 0;\r\n }\r\n var buf = slice.call(slab, offset, offset += size);\r\n if (offset & 7) // align to 32 bit\r\n offset = (offset | 7) + 1;\r\n return buf;\r\n };\r\n}\r\n","\"use strict\";\nmodule.exports = LongBits;\n\nvar util = require(\"../util/minimal\");\n\n/**\n * Constructs new long bits.\n * @classdesc Helper class for working with the low and high bits of a 64 bit value.\n * @memberof util\n * @constructor\n * @param {number} lo Low 32 bits, unsigned\n * @param {number} hi High 32 bits, unsigned\n */\nfunction LongBits(lo, hi) {\n\n // note that the casts below are theoretically unnecessary as of today, but older statically\n // generated converter code might still call the ctor with signed 32bits. kept for compat.\n\n /**\n * Low bits.\n * @type {number}\n */\n this.lo = lo >>> 0;\n\n /**\n * High bits.\n * @type {number}\n */\n this.hi = hi >>> 0;\n}\n\n/**\n * Zero bits.\n * @memberof util.LongBits\n * @type {util.LongBits}\n */\nvar zero = LongBits.zero = new LongBits(0, 0);\n\nzero.toNumber = function() { return 0; };\nzero.zzEncode = zero.zzDecode = function() { return this; };\nzero.length = function() { return 1; };\n\n/**\n * Zero hash.\n * @memberof util.LongBits\n * @type {string}\n */\nvar zeroHash = LongBits.zeroHash = \"\\0\\0\\0\\0\\0\\0\\0\\0\";\n\n/**\n * Constructs new long bits from the specified number.\n * @param {number} value Value\n * @returns {util.LongBits} Instance\n */\nLongBits.fromNumber = function fromNumber(value) {\n if (value === 0)\n return zero;\n var sign = value < 0;\n if (sign)\n value = -value;\n var lo = value >>> 0,\n hi = (value - lo) / 4294967296 >>> 0;\n if (sign) {\n hi = ~hi >>> 0;\n lo = ~lo >>> 0;\n if (++lo > 4294967295) {\n lo = 0;\n if (++hi > 4294967295)\n hi = 0;\n }\n }\n return new LongBits(lo, hi);\n};\n\n/**\n * Constructs new long bits from a number, long or string.\n * @param {Long|number|string} value Value\n * @returns {util.LongBits} Instance\n */\nLongBits.from = function from(value) {\n if (typeof value === \"number\")\n return LongBits.fromNumber(value);\n if (util.isString(value)) {\n /* istanbul ignore else */\n if (util.Long)\n value = util.Long.fromString(value);\n else\n return LongBits.fromNumber(parseInt(value, 10));\n }\n return value.low || value.high ? new LongBits(value.low >>> 0, value.high >>> 0) : zero;\n};\n\n/**\n * Converts this long bits to a possibly unsafe JavaScript number.\n * @param {boolean} [unsigned=false] Whether unsigned or not\n * @returns {number} Possibly unsafe number\n */\nLongBits.prototype.toNumber = function toNumber(unsigned) {\n if (!unsigned && this.hi >>> 31) {\n var lo = ~this.lo + 1 >>> 0,\n hi = ~this.hi >>> 0;\n if (!lo)\n hi = hi + 1 >>> 0;\n return -(lo + hi * 4294967296);\n }\n return this.lo + this.hi * 4294967296;\n};\n\n/**\n * Converts this long bits to a long.\n * @param {boolean} [unsigned=false] Whether unsigned or not\n * @returns {Long} Long\n */\nLongBits.prototype.toLong = function toLong(unsigned) {\n return util.Long\n ? new util.Long(this.lo | 0, this.hi | 0, Boolean(unsigned))\n /* istanbul ignore next */\n : { low: this.lo | 0, high: this.hi | 0, unsigned: Boolean(unsigned) };\n};\n\nvar charCodeAt = String.prototype.charCodeAt;\n\n/**\n * Constructs new long bits from the specified 8 characters long hash.\n * @param {string} hash Hash\n * @returns {util.LongBits} Bits\n */\nLongBits.fromHash = function fromHash(hash) {\n if (hash === zeroHash)\n return zero;\n return new LongBits(\n ( charCodeAt.call(hash, 0)\n | charCodeAt.call(hash, 1) << 8\n | charCodeAt.call(hash, 2) << 16\n | charCodeAt.call(hash, 3) << 24) >>> 0\n ,\n ( charCodeAt.call(hash, 4)\n | charCodeAt.call(hash, 5) << 8\n | charCodeAt.call(hash, 6) << 16\n | charCodeAt.call(hash, 7) << 24) >>> 0\n );\n};\n\n/**\n * Converts this long bits to a 8 characters long hash.\n * @returns {string} Hash\n */\nLongBits.prototype.toHash = function toHash() {\n return String.fromCharCode(\n this.lo & 255,\n this.lo >>> 8 & 255,\n this.lo >>> 16 & 255,\n this.lo >>> 24 ,\n this.hi & 255,\n this.hi >>> 8 & 255,\n this.hi >>> 16 & 255,\n this.hi >>> 24\n );\n};\n\n/**\n * Zig-zag encodes this long bits.\n * @returns {util.LongBits} `this`\n */\nLongBits.prototype.zzEncode = function zzEncode() {\n var mask = this.hi >> 31;\n this.hi = ((this.hi << 1 | this.lo >>> 31) ^ mask) >>> 0;\n this.lo = ( this.lo << 1 ^ mask) >>> 0;\n return this;\n};\n\n/**\n * Zig-zag decodes this long bits.\n * @returns {util.LongBits} `this`\n */\nLongBits.prototype.zzDecode = function zzDecode() {\n var mask = -(this.lo & 1);\n this.lo = ((this.lo >>> 1 | this.hi << 31) ^ mask) >>> 0;\n this.hi = ( this.hi >>> 1 ^ mask) >>> 0;\n return this;\n};\n\n/**\n * Calculates the length of this longbits when encoded as a varint.\n * @returns {number} Length\n */\nLongBits.prototype.length = function length() {\n var part0 = this.lo,\n part1 = (this.lo >>> 28 | this.hi << 4) >>> 0,\n part2 = this.hi >>> 24;\n return part2 === 0\n ? part1 === 0\n ? part0 < 16384\n ? part0 < 128 ? 1 : 2\n : part0 < 2097152 ? 3 : 4\n : part1 < 16384\n ? part1 < 128 ? 5 : 6\n : part1 < 2097152 ? 7 : 8\n : part2 < 128 ? 9 : 10;\n};\n","\"use strict\";\nmodule.exports = BufferWriter;\n\n// extends Writer\nvar Writer = require(\"./writer\");\n(BufferWriter.prototype = Object.create(Writer.prototype)).constructor = BufferWriter;\n\nvar util = require(\"./util/minimal\");\n\n/**\n * Constructs a new buffer writer instance.\n * @classdesc Wire format writer using node buffers.\n * @extends Writer\n * @constructor\n */\nfunction BufferWriter() {\n Writer.call(this);\n}\n\nBufferWriter._configure = function () {\n /**\n * Allocates a buffer of the specified size.\n * @function\n * @param {number} size Buffer size\n * @returns {Buffer} Buffer\n */\n BufferWriter.alloc = util._Buffer_allocUnsafe;\n\n BufferWriter.writeBytesBuffer = util.Buffer && util.Buffer.prototype instanceof Uint8Array && util.Buffer.prototype.set.name === \"set\"\n ? function writeBytesBuffer_set(val, buf, pos) {\n buf.set(val, pos); // faster than copy (requires node >= 4 where Buffers extend Uint8Array and set is properly inherited)\n // also works for plain array values\n }\n /* istanbul ignore next */\n : function writeBytesBuffer_copy(val, buf, pos) {\n if (val.copy) // Buffer values\n val.copy(buf, pos, 0, val.length);\n else for (var i = 0; i < val.length;) // plain array values\n buf[pos++] = val[i++];\n };\n};\n\n\n/**\n * @override\n */\nBufferWriter.prototype.bytes = function write_bytes_buffer(value) {\n if (util.isString(value))\n value = util._Buffer_from(value, \"base64\");\n var len = value.length >>> 0;\n this.uint32(len);\n if (len)\n this._push(BufferWriter.writeBytesBuffer, len, value);\n return this;\n};\n\nfunction writeStringBuffer(val, buf, pos) {\n if (val.length < 40) // plain js is faster for short strings (probably due to redundant assertions)\n util.utf8.write(val, buf, pos);\n else if (buf.utf8Write)\n buf.utf8Write(val, pos);\n else\n buf.write(val, pos);\n}\n\n/**\n * @override\n */\nBufferWriter.prototype.string = function write_string_buffer(value) {\n var len = util.Buffer.byteLength(value);\n this.uint32(len);\n if (len)\n this._push(writeStringBuffer, len, value);\n return this;\n};\n\n\n/**\n * Finishes the write operation.\n * @name BufferWriter#finish\n * @function\n * @returns {Buffer} Finished buffer\n */\n\nBufferWriter._configure();\n","\"use strict\";\nmodule.exports = BufferReader;\n\n// extends Reader\nvar Reader = require(\"./reader\");\n(BufferReader.prototype = Object.create(Reader.prototype)).constructor = BufferReader;\n\nvar util = require(\"./util/minimal\");\n\n/**\n * Constructs a new buffer reader instance.\n * @classdesc Wire format reader using node buffers.\n * @extends Reader\n * @constructor\n * @param {Buffer} buffer Buffer to read from\n */\nfunction BufferReader(buffer) {\n Reader.call(this, buffer);\n\n /**\n * Read buffer.\n * @name BufferReader#buf\n * @type {Buffer}\n */\n}\n\nBufferReader._configure = function () {\n /* istanbul ignore else */\n if (util.Buffer)\n BufferReader.prototype._slice = util.Buffer.prototype.slice;\n};\n\n\n/**\n * @override\n */\nBufferReader.prototype.string = function read_string_buffer() {\n var len = this.uint32(); // modifies pos\n return this.buf.utf8Slice\n ? this.buf.utf8Slice(this.pos, this.pos = Math.min(this.pos + len, this.len))\n : this.buf.toString(\"utf-8\", this.pos, this.pos = Math.min(this.pos + len, this.len));\n};\n\n/**\n * Reads a sequence of bytes preceeded by its length as a varint.\n * @name BufferReader#bytes\n * @function\n * @returns {Buffer} Value read\n */\n\nBufferReader._configure();\n","\"use strict\";\n\n/**\n * Streaming RPC helpers.\n * @namespace\n */\nvar rpc = exports;\n\n/**\n * RPC implementation passed to {@link Service#create} performing a service request on network level, i.e. by utilizing http requests or websockets.\n * @typedef RPCImpl\n * @type {function}\n * @param {Method|rpc.ServiceMethod,Message<{}>>} method Reflected or static method being called\n * @param {Uint8Array} requestData Request data\n * @param {RPCImplCallback} callback Callback function\n * @returns {undefined}\n * @example\n * function rpcImpl(method, requestData, callback) {\n * if (protobuf.util.lcFirst(method.name) !== \"myMethod\") // compatible with static code\n * throw Error(\"no such method\");\n * asynchronouslyObtainAResponse(requestData, function(err, responseData) {\n * callback(err, responseData);\n * });\n * }\n */\n\n/**\n * Node-style callback as used by {@link RPCImpl}.\n * @typedef RPCImplCallback\n * @type {function}\n * @param {Error|null} error Error, if any, otherwise `null`\n * @param {Uint8Array|null} [response] Response data or `null` to signal end of stream, if there hasn't been an error\n * @returns {undefined}\n */\n\nrpc.Service = require(\"./rpc/service\");\n","\"use strict\";\nmodule.exports = Service;\n\nvar util = require(\"../util/minimal\");\n\n// Extends EventEmitter\n(Service.prototype = Object.create(util.EventEmitter.prototype)).constructor = Service;\n\n/**\n * A service method callback as used by {@link rpc.ServiceMethod|ServiceMethod}.\n *\n * Differs from {@link RPCImplCallback} in that it is an actual callback of a service method which may not return `response = null`.\n * @typedef rpc.ServiceMethodCallback\n * @template TRes extends Message\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {TRes} [response] Response message\n * @returns {undefined}\n */\n\n/**\n * A service method part of a {@link rpc.Service} as created by {@link Service.create}.\n * @typedef rpc.ServiceMethod\n * @template TReq extends Message\n * @template TRes extends Message\n * @type {function}\n * @param {TReq|Properties} request Request message or plain object\n * @param {rpc.ServiceMethodCallback} [callback] Node-style callback called with the error, if any, and the response message\n * @returns {Promise>} Promise if `callback` has been omitted, otherwise `undefined`\n */\n\n/**\n * Constructs a new RPC service instance.\n * @classdesc An RPC service as returned by {@link Service#create}.\n * @exports rpc.Service\n * @extends util.EventEmitter\n * @constructor\n * @param {RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n */\nfunction Service(rpcImpl, requestDelimited, responseDelimited) {\n\n if (typeof rpcImpl !== \"function\")\n throw TypeError(\"rpcImpl must be a function\");\n\n util.EventEmitter.call(this);\n\n /**\n * RPC implementation. Becomes `null` once the service is ended.\n * @type {RPCImpl|null}\n */\n this.rpcImpl = rpcImpl;\n\n /**\n * Whether requests are length-delimited.\n * @type {boolean}\n */\n this.requestDelimited = Boolean(requestDelimited);\n\n /**\n * Whether responses are length-delimited.\n * @type {boolean}\n */\n this.responseDelimited = Boolean(responseDelimited);\n}\n\n/**\n * Calls a service method through {@link rpc.Service#rpcImpl|rpcImpl}.\n * @param {Method|rpc.ServiceMethod} method Reflected or static method\n * @param {Constructor} requestCtor Request constructor\n * @param {Constructor} responseCtor Response constructor\n * @param {TReq|Properties} request Request message or plain object\n * @param {rpc.ServiceMethodCallback} callback Service callback\n * @returns {undefined}\n * @template TReq extends Message\n * @template TRes extends Message\n */\nService.prototype.rpcCall = function rpcCall(method, requestCtor, responseCtor, request, callback) {\n\n if (!request)\n throw TypeError(\"request must be specified\");\n\n var self = this;\n if (!callback)\n return util.asPromise(rpcCall, self, method, requestCtor, responseCtor, request);\n\n if (!self.rpcImpl) {\n setTimeout(function() { callback(Error(\"already ended\")); }, 0);\n return undefined;\n }\n\n try {\n return self.rpcImpl(\n method,\n requestCtor[self.requestDelimited ? \"encodeDelimited\" : \"encode\"](request).finish(),\n function rpcCallback(err, response) {\n\n if (err) {\n self.emit(\"error\", err, method);\n return callback(err);\n }\n\n if (response === null) {\n self.end(/* endedByRPC */ true);\n return undefined;\n }\n\n if (!(response instanceof responseCtor)) {\n try {\n response = responseCtor[self.responseDelimited ? \"decodeDelimited\" : \"decode\"](response);\n } catch (err) {\n self.emit(\"error\", err, method);\n return callback(err);\n }\n }\n\n self.emit(\"data\", response, method);\n return callback(null, response);\n }\n );\n } catch (err) {\n self.emit(\"error\", err, method);\n setTimeout(function() { callback(err); }, 0);\n return undefined;\n }\n};\n\n/**\n * Ends this service and emits the `end` event.\n * @param {boolean} [endedByRPC=false] Whether the service has been ended by the RPC implementation.\n * @returns {rpc.Service} `this`\n */\nService.prototype.end = function end(endedByRPC) {\n if (this.rpcImpl) {\n if (!endedByRPC) // signal end to rpcImpl\n this.rpcImpl(null, null, null);\n this.rpcImpl = null;\n this.emit(\"end\").off();\n }\n return this;\n};\n","\"use strict\";\nmodule.exports = {};\n\n/**\n * Named roots.\n * This is where pbjs stores generated structures (the option `-r, --root` specifies a name).\n * Can also be used manually to make roots available accross modules.\n * @name roots\n * @type {Object.}\n * @example\n * // pbjs -r myroot -o compiled.js ...\n *\n * // in another module:\n * require(\"./compiled.js\");\n *\n * // in any subsequent module:\n * var root = protobuf.roots[\"myroot\"];\n */\n","/*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/\nimport * as $protobuf from \"protobufjs/minimal\";\n\n// Common aliases\nconst $Reader = $protobuf.Reader, $Writer = $protobuf.Writer, $util = $protobuf.util;\n\n// Exported root namespace\nconst $root = $protobuf.roots.hashgraph || ($protobuf.roots.hashgraph = {});\n\nexport const proto = $root.proto = (() => {\n\n /**\n * Namespace proto.\n * @exports proto\n * @namespace\n */\n const proto = {};\n\n proto.TokenUnitBalance = (function() {\n\n /**\n * Properties of a TokenUnitBalance.\n * @memberof proto\n * @interface ITokenUnitBalance\n * @property {proto.ITokenID|null} [tokenId] A unique token id\n * @property {Long|null} [balance] Number of transferable units of the identified token. For token of type FUNGIBLE_COMMON -\n * balance in the smallest denomination. For token of type NON_FUNGIBLE_UNIQUE - the number of\n * NFTs held by the account\n */\n\n /**\n * Constructs a new TokenUnitBalance.\n * @memberof proto\n * @classdesc Represents a TokenUnitBalance.\n * @implements ITokenUnitBalance\n * @constructor\n * @param {proto.ITokenUnitBalance=} [p] Properties to set\n */\n function TokenUnitBalance(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * A unique token id\n * @member {proto.ITokenID|null|undefined} tokenId\n * @memberof proto.TokenUnitBalance\n * @instance\n */\n TokenUnitBalance.prototype.tokenId = null;\n\n /**\n * Number of transferable units of the identified token. For token of type FUNGIBLE_COMMON -\n * balance in the smallest denomination. For token of type NON_FUNGIBLE_UNIQUE - the number of\n * NFTs held by the account\n * @member {Long} balance\n * @memberof proto.TokenUnitBalance\n * @instance\n */\n TokenUnitBalance.prototype.balance = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Creates a new TokenUnitBalance instance using the specified properties.\n * @function create\n * @memberof proto.TokenUnitBalance\n * @static\n * @param {proto.ITokenUnitBalance=} [properties] Properties to set\n * @returns {proto.TokenUnitBalance} TokenUnitBalance instance\n */\n TokenUnitBalance.create = function create(properties) {\n return new TokenUnitBalance(properties);\n };\n\n /**\n * Encodes the specified TokenUnitBalance message. Does not implicitly {@link proto.TokenUnitBalance.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenUnitBalance\n * @static\n * @param {proto.ITokenUnitBalance} m TokenUnitBalance message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenUnitBalance.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.tokenId != null && Object.hasOwnProperty.call(m, \"tokenId\"))\n $root.proto.TokenID.encode(m.tokenId, w.uint32(10).fork()).ldelim();\n if (m.balance != null && Object.hasOwnProperty.call(m, \"balance\"))\n w.uint32(16).uint64(m.balance);\n return w;\n };\n\n /**\n * Decodes a TokenUnitBalance message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenUnitBalance\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenUnitBalance} TokenUnitBalance\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenUnitBalance.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenUnitBalance();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.tokenId = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.balance = r.uint64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenUnitBalance;\n })();\n\n proto.SingleAccountBalances = (function() {\n\n /**\n * Properties of a SingleAccountBalances.\n * @memberof proto\n * @interface ISingleAccountBalances\n * @property {proto.IAccountID|null} [accountID] The account\n * @property {Long|null} [hbarBalance] The account's hbar balance\n * @property {Array.|null} [tokenUnitBalances] The list of the account's token balances\n */\n\n /**\n * Constructs a new SingleAccountBalances.\n * @memberof proto\n * @classdesc Includes all currency balances (both hbar and token) of a single account in the ledger.\n * @implements ISingleAccountBalances\n * @constructor\n * @param {proto.ISingleAccountBalances=} [p] Properties to set\n */\n function SingleAccountBalances(p) {\n this.tokenUnitBalances = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The account\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.SingleAccountBalances\n * @instance\n */\n SingleAccountBalances.prototype.accountID = null;\n\n /**\n * The account's hbar balance\n * @member {Long} hbarBalance\n * @memberof proto.SingleAccountBalances\n * @instance\n */\n SingleAccountBalances.prototype.hbarBalance = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * The list of the account's token balances\n * @member {Array.} tokenUnitBalances\n * @memberof proto.SingleAccountBalances\n * @instance\n */\n SingleAccountBalances.prototype.tokenUnitBalances = $util.emptyArray;\n\n /**\n * Creates a new SingleAccountBalances instance using the specified properties.\n * @function create\n * @memberof proto.SingleAccountBalances\n * @static\n * @param {proto.ISingleAccountBalances=} [properties] Properties to set\n * @returns {proto.SingleAccountBalances} SingleAccountBalances instance\n */\n SingleAccountBalances.create = function create(properties) {\n return new SingleAccountBalances(properties);\n };\n\n /**\n * Encodes the specified SingleAccountBalances message. Does not implicitly {@link proto.SingleAccountBalances.verify|verify} messages.\n * @function encode\n * @memberof proto.SingleAccountBalances\n * @static\n * @param {proto.ISingleAccountBalances} m SingleAccountBalances message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n SingleAccountBalances.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(10).fork()).ldelim();\n if (m.hbarBalance != null && Object.hasOwnProperty.call(m, \"hbarBalance\"))\n w.uint32(16).uint64(m.hbarBalance);\n if (m.tokenUnitBalances != null && m.tokenUnitBalances.length) {\n for (var i = 0; i < m.tokenUnitBalances.length; ++i)\n $root.proto.TokenUnitBalance.encode(m.tokenUnitBalances[i], w.uint32(26).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a SingleAccountBalances message from the specified reader or buffer.\n * @function decode\n * @memberof proto.SingleAccountBalances\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.SingleAccountBalances} SingleAccountBalances\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n SingleAccountBalances.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.SingleAccountBalances();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n m.hbarBalance = r.uint64();\n break;\n case 3:\n if (!(m.tokenUnitBalances && m.tokenUnitBalances.length))\n m.tokenUnitBalances = [];\n m.tokenUnitBalances.push($root.proto.TokenUnitBalance.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return SingleAccountBalances;\n })();\n\n proto.AllAccountBalances = (function() {\n\n /**\n * Properties of an AllAccountBalances.\n * @memberof proto\n * @interface IAllAccountBalances\n * @property {proto.ITimestamp|null} [consensusTimestamp] An instant in consensus time\n * @property {Array.|null} [allAccounts] The list of account balances for all accounts, after handling all transactions with consensus\n * timestamp up to and including the above instant\n */\n\n /**\n * Constructs a new AllAccountBalances.\n * @memberof proto\n * @classdesc Includes all currency balances (both hbar and token) of all accounts in the ledger.\n * @implements IAllAccountBalances\n * @constructor\n * @param {proto.IAllAccountBalances=} [p] Properties to set\n */\n function AllAccountBalances(p) {\n this.allAccounts = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * An instant in consensus time\n * @member {proto.ITimestamp|null|undefined} consensusTimestamp\n * @memberof proto.AllAccountBalances\n * @instance\n */\n AllAccountBalances.prototype.consensusTimestamp = null;\n\n /**\n * The list of account balances for all accounts, after handling all transactions with consensus\n * timestamp up to and including the above instant\n * @member {Array.} allAccounts\n * @memberof proto.AllAccountBalances\n * @instance\n */\n AllAccountBalances.prototype.allAccounts = $util.emptyArray;\n\n /**\n * Creates a new AllAccountBalances instance using the specified properties.\n * @function create\n * @memberof proto.AllAccountBalances\n * @static\n * @param {proto.IAllAccountBalances=} [properties] Properties to set\n * @returns {proto.AllAccountBalances} AllAccountBalances instance\n */\n AllAccountBalances.create = function create(properties) {\n return new AllAccountBalances(properties);\n };\n\n /**\n * Encodes the specified AllAccountBalances message. Does not implicitly {@link proto.AllAccountBalances.verify|verify} messages.\n * @function encode\n * @memberof proto.AllAccountBalances\n * @static\n * @param {proto.IAllAccountBalances} m AllAccountBalances message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n AllAccountBalances.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.consensusTimestamp != null && Object.hasOwnProperty.call(m, \"consensusTimestamp\"))\n $root.proto.Timestamp.encode(m.consensusTimestamp, w.uint32(10).fork()).ldelim();\n if (m.allAccounts != null && m.allAccounts.length) {\n for (var i = 0; i < m.allAccounts.length; ++i)\n $root.proto.SingleAccountBalances.encode(m.allAccounts[i], w.uint32(18).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes an AllAccountBalances message from the specified reader or buffer.\n * @function decode\n * @memberof proto.AllAccountBalances\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.AllAccountBalances} AllAccountBalances\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n AllAccountBalances.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.AllAccountBalances();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.consensusTimestamp = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.allAccounts && m.allAccounts.length))\n m.allAccounts = [];\n m.allAccounts.push($root.proto.SingleAccountBalances.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return AllAccountBalances;\n })();\n\n proto.ShardID = (function() {\n\n /**\n * Properties of a ShardID.\n * @memberof proto\n * @interface IShardID\n * @property {Long|null} [shardNum] the shard number (nonnegative)\n */\n\n /**\n * Constructs a new ShardID.\n * @memberof proto\n * @classdesc Each shard has a nonnegative shard number. Each realm within a given shard has a nonnegative\n * realm number (that number might be reused in other shards). And each account, file, and smart\n * contract instance within a given realm has a nonnegative number (which might be reused in other\n * realms). Every account, file, and smart contract instance is within exactly one realm. So a\n * FileID is a triplet of numbers, like 0.1.2 for entity number 2 within realm 1 within shard 0.\n * Each realm maintains a single counter for assigning numbers, so if there is a file with ID\n * 0.1.2, then there won't be an account or smart contract instance with ID 0.1.2.\n * \n * Everything is partitioned into realms so that each Solidity smart contract can access everything\n * in just a single realm, locking all those entities while it's running, but other smart contracts\n * could potentially run in other realms in parallel. So realms allow Solidity to be parallelized\n * somewhat, even though the language itself assumes everything is serial.\n * @implements IShardID\n * @constructor\n * @param {proto.IShardID=} [p] Properties to set\n */\n function ShardID(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * the shard number (nonnegative)\n * @member {Long} shardNum\n * @memberof proto.ShardID\n * @instance\n */\n ShardID.prototype.shardNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new ShardID instance using the specified properties.\n * @function create\n * @memberof proto.ShardID\n * @static\n * @param {proto.IShardID=} [properties] Properties to set\n * @returns {proto.ShardID} ShardID instance\n */\n ShardID.create = function create(properties) {\n return new ShardID(properties);\n };\n\n /**\n * Encodes the specified ShardID message. Does not implicitly {@link proto.ShardID.verify|verify} messages.\n * @function encode\n * @memberof proto.ShardID\n * @static\n * @param {proto.IShardID} m ShardID message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ShardID.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.shardNum != null && Object.hasOwnProperty.call(m, \"shardNum\"))\n w.uint32(8).int64(m.shardNum);\n return w;\n };\n\n /**\n * Decodes a ShardID message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ShardID\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ShardID} ShardID\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ShardID.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ShardID();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.shardNum = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ShardID;\n })();\n\n proto.RealmID = (function() {\n\n /**\n * Properties of a RealmID.\n * @memberof proto\n * @interface IRealmID\n * @property {Long|null} [shardNum] The shard number (nonnegative)\n * @property {Long|null} [realmNum] The realm number (nonnegative)\n */\n\n /**\n * Constructs a new RealmID.\n * @memberof proto\n * @classdesc The ID for a realm. Within a given shard, every realm has a unique ID. Each account, file, and\n * contract instance belongs to exactly one realm.\n * @implements IRealmID\n * @constructor\n * @param {proto.IRealmID=} [p] Properties to set\n */\n function RealmID(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The shard number (nonnegative)\n * @member {Long} shardNum\n * @memberof proto.RealmID\n * @instance\n */\n RealmID.prototype.shardNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The realm number (nonnegative)\n * @member {Long} realmNum\n * @memberof proto.RealmID\n * @instance\n */\n RealmID.prototype.realmNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new RealmID instance using the specified properties.\n * @function create\n * @memberof proto.RealmID\n * @static\n * @param {proto.IRealmID=} [properties] Properties to set\n * @returns {proto.RealmID} RealmID instance\n */\n RealmID.create = function create(properties) {\n return new RealmID(properties);\n };\n\n /**\n * Encodes the specified RealmID message. Does not implicitly {@link proto.RealmID.verify|verify} messages.\n * @function encode\n * @memberof proto.RealmID\n * @static\n * @param {proto.IRealmID} m RealmID message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n RealmID.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.shardNum != null && Object.hasOwnProperty.call(m, \"shardNum\"))\n w.uint32(8).int64(m.shardNum);\n if (m.realmNum != null && Object.hasOwnProperty.call(m, \"realmNum\"))\n w.uint32(16).int64(m.realmNum);\n return w;\n };\n\n /**\n * Decodes a RealmID message from the specified reader or buffer.\n * @function decode\n * @memberof proto.RealmID\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.RealmID} RealmID\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n RealmID.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.RealmID();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.shardNum = r.int64();\n break;\n case 2:\n m.realmNum = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return RealmID;\n })();\n\n proto.AccountID = (function() {\n\n /**\n * Properties of an AccountID.\n * @memberof proto\n * @interface IAccountID\n * @property {Long|null} [shardNum] The shard number (nonnegative)\n * @property {Long|null} [realmNum] The realm number (nonnegative)\n * @property {Long|null} [accountNum] A non-negative account number unique within its realm\n * @property {Uint8Array|null} [alias] The public key bytes to be used as the account's alias. The public key bytes are the result of serializing\n * a protobuf Key message for any primitive key type. Currently only primitive key bytes are supported as an alias\n * (ThresholdKey, KeyList, ContractID, and delegatable_contract_id are not supported)\n * \n * At most one account can ever have a given alias and it is used for account creation if it\n * was automatically created using a crypto transfer. It will be null if an account is created normally.\n * It is immutable once it is set for an account.\n * \n * If a transaction auto-creates the account, any further transfers to that alias will simply be deposited\n * in that account, without creating anything, and with no creation fee being charged.\n */\n\n /**\n * Constructs a new AccountID.\n * @memberof proto\n * @classdesc The ID for an a cryptocurrency account\n * @implements IAccountID\n * @constructor\n * @param {proto.IAccountID=} [p] Properties to set\n */\n function AccountID(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The shard number (nonnegative)\n * @member {Long} shardNum\n * @memberof proto.AccountID\n * @instance\n */\n AccountID.prototype.shardNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The realm number (nonnegative)\n * @member {Long} realmNum\n * @memberof proto.AccountID\n * @instance\n */\n AccountID.prototype.realmNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * A non-negative account number unique within its realm\n * @member {Long|null|undefined} accountNum\n * @memberof proto.AccountID\n * @instance\n */\n AccountID.prototype.accountNum = null;\n\n /**\n * The public key bytes to be used as the account's alias. The public key bytes are the result of serializing\n * a protobuf Key message for any primitive key type. Currently only primitive key bytes are supported as an alias\n * (ThresholdKey, KeyList, ContractID, and delegatable_contract_id are not supported)\n * \n * At most one account can ever have a given alias and it is used for account creation if it\n * was automatically created using a crypto transfer. It will be null if an account is created normally.\n * It is immutable once it is set for an account.\n * \n * If a transaction auto-creates the account, any further transfers to that alias will simply be deposited\n * in that account, without creating anything, and with no creation fee being charged.\n * @member {Uint8Array|null|undefined} alias\n * @memberof proto.AccountID\n * @instance\n */\n AccountID.prototype.alias = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * The account number unique within its realm which can be either a non-negative integer or an alias public key.\n * For any AccountID fields in the query response, transaction record or transaction receipt only accountNum will\n * be populated.\n * @member {\"accountNum\"|\"alias\"|undefined} account\n * @memberof proto.AccountID\n * @instance\n */\n Object.defineProperty(AccountID.prototype, \"account\", {\n get: $util.oneOfGetter($oneOfFields = [\"accountNum\", \"alias\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new AccountID instance using the specified properties.\n * @function create\n * @memberof proto.AccountID\n * @static\n * @param {proto.IAccountID=} [properties] Properties to set\n * @returns {proto.AccountID} AccountID instance\n */\n AccountID.create = function create(properties) {\n return new AccountID(properties);\n };\n\n /**\n * Encodes the specified AccountID message. Does not implicitly {@link proto.AccountID.verify|verify} messages.\n * @function encode\n * @memberof proto.AccountID\n * @static\n * @param {proto.IAccountID} m AccountID message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n AccountID.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.shardNum != null && Object.hasOwnProperty.call(m, \"shardNum\"))\n w.uint32(8).int64(m.shardNum);\n if (m.realmNum != null && Object.hasOwnProperty.call(m, \"realmNum\"))\n w.uint32(16).int64(m.realmNum);\n if (m.accountNum != null && Object.hasOwnProperty.call(m, \"accountNum\"))\n w.uint32(24).int64(m.accountNum);\n if (m.alias != null && Object.hasOwnProperty.call(m, \"alias\"))\n w.uint32(34).bytes(m.alias);\n return w;\n };\n\n /**\n * Decodes an AccountID message from the specified reader or buffer.\n * @function decode\n * @memberof proto.AccountID\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.AccountID} AccountID\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n AccountID.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.AccountID();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.shardNum = r.int64();\n break;\n case 2:\n m.realmNum = r.int64();\n break;\n case 3:\n m.accountNum = r.int64();\n break;\n case 4:\n m.alias = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return AccountID;\n })();\n\n proto.FileID = (function() {\n\n /**\n * Properties of a FileID.\n * @memberof proto\n * @interface IFileID\n * @property {Long|null} [shardNum] The shard number (nonnegative)\n * @property {Long|null} [realmNum] The realm number (nonnegative)\n * @property {Long|null} [fileNum] A nonnegative File number unique within its realm\n */\n\n /**\n * Constructs a new FileID.\n * @memberof proto\n * @classdesc The ID for a file\n * @implements IFileID\n * @constructor\n * @param {proto.IFileID=} [p] Properties to set\n */\n function FileID(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The shard number (nonnegative)\n * @member {Long} shardNum\n * @memberof proto.FileID\n * @instance\n */\n FileID.prototype.shardNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The realm number (nonnegative)\n * @member {Long} realmNum\n * @memberof proto.FileID\n * @instance\n */\n FileID.prototype.realmNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * A nonnegative File number unique within its realm\n * @member {Long} fileNum\n * @memberof proto.FileID\n * @instance\n */\n FileID.prototype.fileNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new FileID instance using the specified properties.\n * @function create\n * @memberof proto.FileID\n * @static\n * @param {proto.IFileID=} [properties] Properties to set\n * @returns {proto.FileID} FileID instance\n */\n FileID.create = function create(properties) {\n return new FileID(properties);\n };\n\n /**\n * Encodes the specified FileID message. Does not implicitly {@link proto.FileID.verify|verify} messages.\n * @function encode\n * @memberof proto.FileID\n * @static\n * @param {proto.IFileID} m FileID message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FileID.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.shardNum != null && Object.hasOwnProperty.call(m, \"shardNum\"))\n w.uint32(8).int64(m.shardNum);\n if (m.realmNum != null && Object.hasOwnProperty.call(m, \"realmNum\"))\n w.uint32(16).int64(m.realmNum);\n if (m.fileNum != null && Object.hasOwnProperty.call(m, \"fileNum\"))\n w.uint32(24).int64(m.fileNum);\n return w;\n };\n\n /**\n * Decodes a FileID message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FileID\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FileID} FileID\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FileID.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FileID();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.shardNum = r.int64();\n break;\n case 2:\n m.realmNum = r.int64();\n break;\n case 3:\n m.fileNum = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FileID;\n })();\n\n proto.ContractID = (function() {\n\n /**\n * Properties of a ContractID.\n * @memberof proto\n * @interface IContractID\n * @property {Long|null} [shardNum] The shard number (nonnegative)\n * @property {Long|null} [realmNum] The realm number (nonnegative)\n * @property {Long|null} [contractNum] A nonnegative number unique within a given shard and realm\n * @property {Uint8Array|null} [evmAddress] The 20-byte EVM address of the contract to call.\n * \n * Every contract has an EVM address determined by its shard.realm.num id.\n * This address is as follows:\n *
    \n *
  1. The first 4 bytes are the big-endian representation of the shard.
  2. \n *
  3. The next 8 bytes are the big-endian representation of the realm.
  4. \n *
  5. The final 8 bytes are the big-endian representation of the number.
  6. \n *
\n * \n * Contracts created via CREATE2 have an additional, primary address that is\n * derived from the EIP-1014\n * specification, and does not have a simple relation to a shard.realm.num id.\n * \n * (Please do note that CREATE2 contracts can also be referenced by the three-part\n * EVM address described above.)\n */\n\n /**\n * Constructs a new ContractID.\n * @memberof proto\n * @classdesc The ID for a smart contract instance\n * @implements IContractID\n * @constructor\n * @param {proto.IContractID=} [p] Properties to set\n */\n function ContractID(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The shard number (nonnegative)\n * @member {Long} shardNum\n * @memberof proto.ContractID\n * @instance\n */\n ContractID.prototype.shardNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The realm number (nonnegative)\n * @member {Long} realmNum\n * @memberof proto.ContractID\n * @instance\n */\n ContractID.prototype.realmNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * A nonnegative number unique within a given shard and realm\n * @member {Long|null|undefined} contractNum\n * @memberof proto.ContractID\n * @instance\n */\n ContractID.prototype.contractNum = null;\n\n /**\n * The 20-byte EVM address of the contract to call.\n * \n * Every contract has an EVM address determined by its shard.realm.num id.\n * This address is as follows:\n *
    \n *
  1. The first 4 bytes are the big-endian representation of the shard.
  2. \n *
  3. The next 8 bytes are the big-endian representation of the realm.
  4. \n *
  5. The final 8 bytes are the big-endian representation of the number.
  6. \n *
\n * \n * Contracts created via CREATE2 have an additional, primary address that is\n * derived from the EIP-1014\n * specification, and does not have a simple relation to a shard.realm.num id.\n * \n * (Please do note that CREATE2 contracts can also be referenced by the three-part\n * EVM address described above.)\n * @member {Uint8Array|null|undefined} evmAddress\n * @memberof proto.ContractID\n * @instance\n */\n ContractID.prototype.evmAddress = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * ContractID contract.\n * @member {\"contractNum\"|\"evmAddress\"|undefined} contract\n * @memberof proto.ContractID\n * @instance\n */\n Object.defineProperty(ContractID.prototype, \"contract\", {\n get: $util.oneOfGetter($oneOfFields = [\"contractNum\", \"evmAddress\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new ContractID instance using the specified properties.\n * @function create\n * @memberof proto.ContractID\n * @static\n * @param {proto.IContractID=} [properties] Properties to set\n * @returns {proto.ContractID} ContractID instance\n */\n ContractID.create = function create(properties) {\n return new ContractID(properties);\n };\n\n /**\n * Encodes the specified ContractID message. Does not implicitly {@link proto.ContractID.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractID\n * @static\n * @param {proto.IContractID} m ContractID message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractID.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.shardNum != null && Object.hasOwnProperty.call(m, \"shardNum\"))\n w.uint32(8).int64(m.shardNum);\n if (m.realmNum != null && Object.hasOwnProperty.call(m, \"realmNum\"))\n w.uint32(16).int64(m.realmNum);\n if (m.contractNum != null && Object.hasOwnProperty.call(m, \"contractNum\"))\n w.uint32(24).int64(m.contractNum);\n if (m.evmAddress != null && Object.hasOwnProperty.call(m, \"evmAddress\"))\n w.uint32(34).bytes(m.evmAddress);\n return w;\n };\n\n /**\n * Decodes a ContractID message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractID\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractID} ContractID\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractID.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractID();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.shardNum = r.int64();\n break;\n case 2:\n m.realmNum = r.int64();\n break;\n case 3:\n m.contractNum = r.int64();\n break;\n case 4:\n m.evmAddress = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractID;\n })();\n\n proto.TransactionID = (function() {\n\n /**\n * Properties of a TransactionID.\n * @memberof proto\n * @interface ITransactionID\n * @property {proto.ITimestamp|null} [transactionValidStart] The transaction is invalid if consensusTimestamp < transactionID.transactionStartValid\n * @property {proto.IAccountID|null} [accountID] The Account ID that paid for this transaction\n * @property {boolean|null} [scheduled] Whether the Transaction is of type Scheduled or no\n * @property {number|null} [nonce] The identifier for an internal transaction that was spawned as part\n * of handling a user transaction. (These internal transactions share the\n * transactionValidStart and accountID of the user transaction, so a\n * nonce is necessary to give them a unique TransactionID.)\n * \n * An example is when a \"parent\" ContractCreate or ContractCall transaction\n * calls one or more HTS precompiled contracts; each of the \"child\"\n * transactions spawned for a precompile has a id with a different nonce.\n */\n\n /**\n * Constructs a new TransactionID.\n * @memberof proto\n * @classdesc The ID for a transaction. This is used for retrieving receipts and records for a transaction, for\n * appending to a file right after creating it, for instantiating a smart contract with bytecode in\n * a file just created, and internally by the network for detecting when duplicate transactions are\n * submitted. A user might get a transaction processed faster by submitting it to N nodes, each with\n * a different node account, but all with the same TransactionID. Then, the transaction will take\n * effect when the first of all those nodes submits the transaction and it reaches consensus. The\n * other transactions will not take effect. So this could make the transaction take effect faster,\n * if any given node might be slow. However, the full transaction fee is charged for each\n * transaction, so the total fee is N times as much if the transaction is sent to N nodes.\n * \n * Applicable to Scheduled Transactions:\n * - The ID of a Scheduled Transaction has transactionValidStart and accountIDs inherited from the\n * ScheduleCreate transaction that created it. That is to say that they are equal\n * - The scheduled property is true for Scheduled Transactions\n * - transactionValidStart, accountID and scheduled properties should be omitted\n * @implements ITransactionID\n * @constructor\n * @param {proto.ITransactionID=} [p] Properties to set\n */\n function TransactionID(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The transaction is invalid if consensusTimestamp < transactionID.transactionStartValid\n * @member {proto.ITimestamp|null|undefined} transactionValidStart\n * @memberof proto.TransactionID\n * @instance\n */\n TransactionID.prototype.transactionValidStart = null;\n\n /**\n * The Account ID that paid for this transaction\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.TransactionID\n * @instance\n */\n TransactionID.prototype.accountID = null;\n\n /**\n * Whether the Transaction is of type Scheduled or no\n * @member {boolean} scheduled\n * @memberof proto.TransactionID\n * @instance\n */\n TransactionID.prototype.scheduled = false;\n\n /**\n * The identifier for an internal transaction that was spawned as part\n * of handling a user transaction. (These internal transactions share the\n * transactionValidStart and accountID of the user transaction, so a\n * nonce is necessary to give them a unique TransactionID.)\n * \n * An example is when a \"parent\" ContractCreate or ContractCall transaction\n * calls one or more HTS precompiled contracts; each of the \"child\"\n * transactions spawned for a precompile has a id with a different nonce.\n * @member {number} nonce\n * @memberof proto.TransactionID\n * @instance\n */\n TransactionID.prototype.nonce = 0;\n\n /**\n * Creates a new TransactionID instance using the specified properties.\n * @function create\n * @memberof proto.TransactionID\n * @static\n * @param {proto.ITransactionID=} [properties] Properties to set\n * @returns {proto.TransactionID} TransactionID instance\n */\n TransactionID.create = function create(properties) {\n return new TransactionID(properties);\n };\n\n /**\n * Encodes the specified TransactionID message. Does not implicitly {@link proto.TransactionID.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionID\n * @static\n * @param {proto.ITransactionID} m TransactionID message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionID.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.transactionValidStart != null && Object.hasOwnProperty.call(m, \"transactionValidStart\"))\n $root.proto.Timestamp.encode(m.transactionValidStart, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n if (m.scheduled != null && Object.hasOwnProperty.call(m, \"scheduled\"))\n w.uint32(24).bool(m.scheduled);\n if (m.nonce != null && Object.hasOwnProperty.call(m, \"nonce\"))\n w.uint32(32).int32(m.nonce);\n return w;\n };\n\n /**\n * Decodes a TransactionID message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionID\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionID} TransactionID\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionID.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionID();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.transactionValidStart = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.scheduled = r.bool();\n break;\n case 4:\n m.nonce = r.int32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionID;\n })();\n\n proto.AccountAmount = (function() {\n\n /**\n * Properties of an AccountAmount.\n * @memberof proto\n * @interface IAccountAmount\n * @property {proto.IAccountID|null} [accountID] The Account ID that sends/receives cryptocurrency or tokens\n * @property {Long|null} [amount] The amount of tinybars (for Crypto transfers) or in the lowest\n * denomination (for Token transfers) that the account sends(negative) or\n * receives(positive)\n * @property {boolean|null} [isApproval] If true then the transfer is expected to be an approved allowance and the\n * accountID is expected to be the owner. The default is false (omitted).\n */\n\n /**\n * Constructs a new AccountAmount.\n * @memberof proto\n * @classdesc An account, and the amount that it sends or receives during a cryptocurrency or token transfer.\n * @implements IAccountAmount\n * @constructor\n * @param {proto.IAccountAmount=} [p] Properties to set\n */\n function AccountAmount(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The Account ID that sends/receives cryptocurrency or tokens\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.AccountAmount\n * @instance\n */\n AccountAmount.prototype.accountID = null;\n\n /**\n * The amount of tinybars (for Crypto transfers) or in the lowest\n * denomination (for Token transfers) that the account sends(negative) or\n * receives(positive)\n * @member {Long} amount\n * @memberof proto.AccountAmount\n * @instance\n */\n AccountAmount.prototype.amount = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * If true then the transfer is expected to be an approved allowance and the\n * accountID is expected to be the owner. The default is false (omitted).\n * @member {boolean} isApproval\n * @memberof proto.AccountAmount\n * @instance\n */\n AccountAmount.prototype.isApproval = false;\n\n /**\n * Creates a new AccountAmount instance using the specified properties.\n * @function create\n * @memberof proto.AccountAmount\n * @static\n * @param {proto.IAccountAmount=} [properties] Properties to set\n * @returns {proto.AccountAmount} AccountAmount instance\n */\n AccountAmount.create = function create(properties) {\n return new AccountAmount(properties);\n };\n\n /**\n * Encodes the specified AccountAmount message. Does not implicitly {@link proto.AccountAmount.verify|verify} messages.\n * @function encode\n * @memberof proto.AccountAmount\n * @static\n * @param {proto.IAccountAmount} m AccountAmount message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n AccountAmount.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(10).fork()).ldelim();\n if (m.amount != null && Object.hasOwnProperty.call(m, \"amount\"))\n w.uint32(16).sint64(m.amount);\n if (m.isApproval != null && Object.hasOwnProperty.call(m, \"isApproval\"))\n w.uint32(24).bool(m.isApproval);\n return w;\n };\n\n /**\n * Decodes an AccountAmount message from the specified reader or buffer.\n * @function decode\n * @memberof proto.AccountAmount\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.AccountAmount} AccountAmount\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n AccountAmount.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.AccountAmount();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n m.amount = r.sint64();\n break;\n case 3:\n m.isApproval = r.bool();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return AccountAmount;\n })();\n\n proto.TransferList = (function() {\n\n /**\n * Properties of a TransferList.\n * @memberof proto\n * @interface ITransferList\n * @property {Array.|null} [accountAmounts] Multiple list of AccountAmount pairs, each of which has an account and\n * an amount to transfer into it (positive) or out of it (negative)\n */\n\n /**\n * Constructs a new TransferList.\n * @memberof proto\n * @classdesc A list of accounts and amounts to transfer out of each account (negative) or into it (positive).\n * @implements ITransferList\n * @constructor\n * @param {proto.ITransferList=} [p] Properties to set\n */\n function TransferList(p) {\n this.accountAmounts = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Multiple list of AccountAmount pairs, each of which has an account and\n * an amount to transfer into it (positive) or out of it (negative)\n * @member {Array.} accountAmounts\n * @memberof proto.TransferList\n * @instance\n */\n TransferList.prototype.accountAmounts = $util.emptyArray;\n\n /**\n * Creates a new TransferList instance using the specified properties.\n * @function create\n * @memberof proto.TransferList\n * @static\n * @param {proto.ITransferList=} [properties] Properties to set\n * @returns {proto.TransferList} TransferList instance\n */\n TransferList.create = function create(properties) {\n return new TransferList(properties);\n };\n\n /**\n * Encodes the specified TransferList message. Does not implicitly {@link proto.TransferList.verify|verify} messages.\n * @function encode\n * @memberof proto.TransferList\n * @static\n * @param {proto.ITransferList} m TransferList message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransferList.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.accountAmounts != null && m.accountAmounts.length) {\n for (var i = 0; i < m.accountAmounts.length; ++i)\n $root.proto.AccountAmount.encode(m.accountAmounts[i], w.uint32(10).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TransferList message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransferList\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransferList} TransferList\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransferList.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransferList();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.accountAmounts && m.accountAmounts.length))\n m.accountAmounts = [];\n m.accountAmounts.push($root.proto.AccountAmount.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransferList;\n })();\n\n proto.NftTransfer = (function() {\n\n /**\n * Properties of a NftTransfer.\n * @memberof proto\n * @interface INftTransfer\n * @property {proto.IAccountID|null} [senderAccountID] The accountID of the sender\n * @property {proto.IAccountID|null} [receiverAccountID] The accountID of the receiver\n * @property {Long|null} [serialNumber] The serial number of the NFT\n * @property {boolean|null} [isApproval] If true then the transfer is expected to be an approved allowance and the\n * senderAccountID is expected to be the owner. The default is false (omitted).\n */\n\n /**\n * Constructs a new NftTransfer.\n * @memberof proto\n * @classdesc A sender account, a receiver account, and the serial number of an NFT of a Token with\n * NON_FUNGIBLE_UNIQUE type. When minting NFTs the sender will be the default AccountID instance\n * (0.0.0) and when burning NFTs, the receiver will be the default AccountID instance.\n * @implements INftTransfer\n * @constructor\n * @param {proto.INftTransfer=} [p] Properties to set\n */\n function NftTransfer(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The accountID of the sender\n * @member {proto.IAccountID|null|undefined} senderAccountID\n * @memberof proto.NftTransfer\n * @instance\n */\n NftTransfer.prototype.senderAccountID = null;\n\n /**\n * The accountID of the receiver\n * @member {proto.IAccountID|null|undefined} receiverAccountID\n * @memberof proto.NftTransfer\n * @instance\n */\n NftTransfer.prototype.receiverAccountID = null;\n\n /**\n * The serial number of the NFT\n * @member {Long} serialNumber\n * @memberof proto.NftTransfer\n * @instance\n */\n NftTransfer.prototype.serialNumber = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * If true then the transfer is expected to be an approved allowance and the\n * senderAccountID is expected to be the owner. The default is false (omitted).\n * @member {boolean} isApproval\n * @memberof proto.NftTransfer\n * @instance\n */\n NftTransfer.prototype.isApproval = false;\n\n /**\n * Creates a new NftTransfer instance using the specified properties.\n * @function create\n * @memberof proto.NftTransfer\n * @static\n * @param {proto.INftTransfer=} [properties] Properties to set\n * @returns {proto.NftTransfer} NftTransfer instance\n */\n NftTransfer.create = function create(properties) {\n return new NftTransfer(properties);\n };\n\n /**\n * Encodes the specified NftTransfer message. Does not implicitly {@link proto.NftTransfer.verify|verify} messages.\n * @function encode\n * @memberof proto.NftTransfer\n * @static\n * @param {proto.INftTransfer} m NftTransfer message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n NftTransfer.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.senderAccountID != null && Object.hasOwnProperty.call(m, \"senderAccountID\"))\n $root.proto.AccountID.encode(m.senderAccountID, w.uint32(10).fork()).ldelim();\n if (m.receiverAccountID != null && Object.hasOwnProperty.call(m, \"receiverAccountID\"))\n $root.proto.AccountID.encode(m.receiverAccountID, w.uint32(18).fork()).ldelim();\n if (m.serialNumber != null && Object.hasOwnProperty.call(m, \"serialNumber\"))\n w.uint32(24).int64(m.serialNumber);\n if (m.isApproval != null && Object.hasOwnProperty.call(m, \"isApproval\"))\n w.uint32(32).bool(m.isApproval);\n return w;\n };\n\n /**\n * Decodes a NftTransfer message from the specified reader or buffer.\n * @function decode\n * @memberof proto.NftTransfer\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.NftTransfer} NftTransfer\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n NftTransfer.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.NftTransfer();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.senderAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n m.receiverAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.serialNumber = r.int64();\n break;\n case 4:\n m.isApproval = r.bool();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return NftTransfer;\n })();\n\n proto.TokenTransferList = (function() {\n\n /**\n * Properties of a TokenTransferList.\n * @memberof proto\n * @interface ITokenTransferList\n * @property {proto.ITokenID|null} [token] The ID of the token\n * @property {Array.|null} [transfers] Applicable to tokens of type FUNGIBLE_COMMON. Multiple list of AccountAmounts, each of which\n * has an account and amount\n * @property {Array.|null} [nftTransfers] Applicable to tokens of type NON_FUNGIBLE_UNIQUE. Multiple list of NftTransfers, each of\n * which has a sender and receiver account, including the serial number of the NFT\n * @property {google.protobuf.IUInt32Value|null} [expectedDecimals] If present, the number of decimals this fungible token type is expected to have. The transfer\n * will fail with UNEXPECTED_TOKEN_DECIMALS if the actual decimals differ.\n */\n\n /**\n * Constructs a new TokenTransferList.\n * @memberof proto\n * @classdesc A list of token IDs and amounts representing the transferred out (negative) or into (positive)\n * amounts, represented in the lowest denomination of the token\n * @implements ITokenTransferList\n * @constructor\n * @param {proto.ITokenTransferList=} [p] Properties to set\n */\n function TokenTransferList(p) {\n this.transfers = [];\n this.nftTransfers = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The ID of the token\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenTransferList\n * @instance\n */\n TokenTransferList.prototype.token = null;\n\n /**\n * Applicable to tokens of type FUNGIBLE_COMMON. Multiple list of AccountAmounts, each of which\n * has an account and amount\n * @member {Array.} transfers\n * @memberof proto.TokenTransferList\n * @instance\n */\n TokenTransferList.prototype.transfers = $util.emptyArray;\n\n /**\n * Applicable to tokens of type NON_FUNGIBLE_UNIQUE. Multiple list of NftTransfers, each of\n * which has a sender and receiver account, including the serial number of the NFT\n * @member {Array.} nftTransfers\n * @memberof proto.TokenTransferList\n * @instance\n */\n TokenTransferList.prototype.nftTransfers = $util.emptyArray;\n\n /**\n * If present, the number of decimals this fungible token type is expected to have. The transfer\n * will fail with UNEXPECTED_TOKEN_DECIMALS if the actual decimals differ.\n * @member {google.protobuf.IUInt32Value|null|undefined} expectedDecimals\n * @memberof proto.TokenTransferList\n * @instance\n */\n TokenTransferList.prototype.expectedDecimals = null;\n\n /**\n * Creates a new TokenTransferList instance using the specified properties.\n * @function create\n * @memberof proto.TokenTransferList\n * @static\n * @param {proto.ITokenTransferList=} [properties] Properties to set\n * @returns {proto.TokenTransferList} TokenTransferList instance\n */\n TokenTransferList.create = function create(properties) {\n return new TokenTransferList(properties);\n };\n\n /**\n * Encodes the specified TokenTransferList message. Does not implicitly {@link proto.TokenTransferList.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenTransferList\n * @static\n * @param {proto.ITokenTransferList} m TokenTransferList message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenTransferList.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n if (m.transfers != null && m.transfers.length) {\n for (var i = 0; i < m.transfers.length; ++i)\n $root.proto.AccountAmount.encode(m.transfers[i], w.uint32(18).fork()).ldelim();\n }\n if (m.nftTransfers != null && m.nftTransfers.length) {\n for (var i = 0; i < m.nftTransfers.length; ++i)\n $root.proto.NftTransfer.encode(m.nftTransfers[i], w.uint32(26).fork()).ldelim();\n }\n if (m.expectedDecimals != null && Object.hasOwnProperty.call(m, \"expectedDecimals\"))\n $root.google.protobuf.UInt32Value.encode(m.expectedDecimals, w.uint32(34).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenTransferList message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenTransferList\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenTransferList} TokenTransferList\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenTransferList.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenTransferList();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.transfers && m.transfers.length))\n m.transfers = [];\n m.transfers.push($root.proto.AccountAmount.decode(r, r.uint32()));\n break;\n case 3:\n if (!(m.nftTransfers && m.nftTransfers.length))\n m.nftTransfers = [];\n m.nftTransfers.push($root.proto.NftTransfer.decode(r, r.uint32()));\n break;\n case 4:\n m.expectedDecimals = $root.google.protobuf.UInt32Value.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenTransferList;\n })();\n\n proto.Fraction = (function() {\n\n /**\n * Properties of a Fraction.\n * @memberof proto\n * @interface IFraction\n * @property {Long|null} [numerator] The rational's numerator\n * @property {Long|null} [denominator] The rational's denominator; a zero value will result in FRACTION_DIVIDES_BY_ZERO\n */\n\n /**\n * Constructs a new Fraction.\n * @memberof proto\n * @classdesc A rational number, used to set the amount of a value transfer to collect as a custom fee\n * @implements IFraction\n * @constructor\n * @param {proto.IFraction=} [p] Properties to set\n */\n function Fraction(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The rational's numerator\n * @member {Long} numerator\n * @memberof proto.Fraction\n * @instance\n */\n Fraction.prototype.numerator = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The rational's denominator; a zero value will result in FRACTION_DIVIDES_BY_ZERO\n * @member {Long} denominator\n * @memberof proto.Fraction\n * @instance\n */\n Fraction.prototype.denominator = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new Fraction instance using the specified properties.\n * @function create\n * @memberof proto.Fraction\n * @static\n * @param {proto.IFraction=} [properties] Properties to set\n * @returns {proto.Fraction} Fraction instance\n */\n Fraction.create = function create(properties) {\n return new Fraction(properties);\n };\n\n /**\n * Encodes the specified Fraction message. Does not implicitly {@link proto.Fraction.verify|verify} messages.\n * @function encode\n * @memberof proto.Fraction\n * @static\n * @param {proto.IFraction} m Fraction message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Fraction.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.numerator != null && Object.hasOwnProperty.call(m, \"numerator\"))\n w.uint32(8).int64(m.numerator);\n if (m.denominator != null && Object.hasOwnProperty.call(m, \"denominator\"))\n w.uint32(16).int64(m.denominator);\n return w;\n };\n\n /**\n * Decodes a Fraction message from the specified reader or buffer.\n * @function decode\n * @memberof proto.Fraction\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.Fraction} Fraction\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Fraction.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.Fraction();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.numerator = r.int64();\n break;\n case 2:\n m.denominator = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Fraction;\n })();\n\n proto.TopicID = (function() {\n\n /**\n * Properties of a TopicID.\n * @memberof proto\n * @interface ITopicID\n * @property {Long|null} [shardNum] The shard number (nonnegative)\n * @property {Long|null} [realmNum] The realm number (nonnegative)\n * @property {Long|null} [topicNum] Unique topic identifier within a realm (nonnegative).\n */\n\n /**\n * Constructs a new TopicID.\n * @memberof proto\n * @classdesc Unique identifier for a topic (used by the consensus service)\n * @implements ITopicID\n * @constructor\n * @param {proto.ITopicID=} [p] Properties to set\n */\n function TopicID(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The shard number (nonnegative)\n * @member {Long} shardNum\n * @memberof proto.TopicID\n * @instance\n */\n TopicID.prototype.shardNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The realm number (nonnegative)\n * @member {Long} realmNum\n * @memberof proto.TopicID\n * @instance\n */\n TopicID.prototype.realmNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Unique topic identifier within a realm (nonnegative).\n * @member {Long} topicNum\n * @memberof proto.TopicID\n * @instance\n */\n TopicID.prototype.topicNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new TopicID instance using the specified properties.\n * @function create\n * @memberof proto.TopicID\n * @static\n * @param {proto.ITopicID=} [properties] Properties to set\n * @returns {proto.TopicID} TopicID instance\n */\n TopicID.create = function create(properties) {\n return new TopicID(properties);\n };\n\n /**\n * Encodes the specified TopicID message. Does not implicitly {@link proto.TopicID.verify|verify} messages.\n * @function encode\n * @memberof proto.TopicID\n * @static\n * @param {proto.ITopicID} m TopicID message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TopicID.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.shardNum != null && Object.hasOwnProperty.call(m, \"shardNum\"))\n w.uint32(8).int64(m.shardNum);\n if (m.realmNum != null && Object.hasOwnProperty.call(m, \"realmNum\"))\n w.uint32(16).int64(m.realmNum);\n if (m.topicNum != null && Object.hasOwnProperty.call(m, \"topicNum\"))\n w.uint32(24).int64(m.topicNum);\n return w;\n };\n\n /**\n * Decodes a TopicID message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TopicID\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TopicID} TopicID\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TopicID.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TopicID();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.shardNum = r.int64();\n break;\n case 2:\n m.realmNum = r.int64();\n break;\n case 3:\n m.topicNum = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TopicID;\n })();\n\n proto.TokenID = (function() {\n\n /**\n * Properties of a TokenID.\n * @memberof proto\n * @interface ITokenID\n * @property {Long|null} [shardNum] A nonnegative shard number\n * @property {Long|null} [realmNum] A nonnegative realm number\n * @property {Long|null} [tokenNum] A nonnegative token number\n */\n\n /**\n * Constructs a new TokenID.\n * @memberof proto\n * @classdesc Unique identifier for a token\n * @implements ITokenID\n * @constructor\n * @param {proto.ITokenID=} [p] Properties to set\n */\n function TokenID(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * A nonnegative shard number\n * @member {Long} shardNum\n * @memberof proto.TokenID\n * @instance\n */\n TokenID.prototype.shardNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * A nonnegative realm number\n * @member {Long} realmNum\n * @memberof proto.TokenID\n * @instance\n */\n TokenID.prototype.realmNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * A nonnegative token number\n * @member {Long} tokenNum\n * @memberof proto.TokenID\n * @instance\n */\n TokenID.prototype.tokenNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new TokenID instance using the specified properties.\n * @function create\n * @memberof proto.TokenID\n * @static\n * @param {proto.ITokenID=} [properties] Properties to set\n * @returns {proto.TokenID} TokenID instance\n */\n TokenID.create = function create(properties) {\n return new TokenID(properties);\n };\n\n /**\n * Encodes the specified TokenID message. Does not implicitly {@link proto.TokenID.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenID\n * @static\n * @param {proto.ITokenID} m TokenID message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenID.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.shardNum != null && Object.hasOwnProperty.call(m, \"shardNum\"))\n w.uint32(8).int64(m.shardNum);\n if (m.realmNum != null && Object.hasOwnProperty.call(m, \"realmNum\"))\n w.uint32(16).int64(m.realmNum);\n if (m.tokenNum != null && Object.hasOwnProperty.call(m, \"tokenNum\"))\n w.uint32(24).int64(m.tokenNum);\n return w;\n };\n\n /**\n * Decodes a TokenID message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenID\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenID} TokenID\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenID.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenID();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.shardNum = r.int64();\n break;\n case 2:\n m.realmNum = r.int64();\n break;\n case 3:\n m.tokenNum = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenID;\n })();\n\n proto.ScheduleID = (function() {\n\n /**\n * Properties of a ScheduleID.\n * @memberof proto\n * @interface IScheduleID\n * @property {Long|null} [shardNum] A nonnegative shard number\n * @property {Long|null} [realmNum] A nonnegative realm number\n * @property {Long|null} [scheduleNum] A nonnegative schedule number\n */\n\n /**\n * Constructs a new ScheduleID.\n * @memberof proto\n * @classdesc Unique identifier for a Schedule\n * @implements IScheduleID\n * @constructor\n * @param {proto.IScheduleID=} [p] Properties to set\n */\n function ScheduleID(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * A nonnegative shard number\n * @member {Long} shardNum\n * @memberof proto.ScheduleID\n * @instance\n */\n ScheduleID.prototype.shardNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * A nonnegative realm number\n * @member {Long} realmNum\n * @memberof proto.ScheduleID\n * @instance\n */\n ScheduleID.prototype.realmNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * A nonnegative schedule number\n * @member {Long} scheduleNum\n * @memberof proto.ScheduleID\n * @instance\n */\n ScheduleID.prototype.scheduleNum = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new ScheduleID instance using the specified properties.\n * @function create\n * @memberof proto.ScheduleID\n * @static\n * @param {proto.IScheduleID=} [properties] Properties to set\n * @returns {proto.ScheduleID} ScheduleID instance\n */\n ScheduleID.create = function create(properties) {\n return new ScheduleID(properties);\n };\n\n /**\n * Encodes the specified ScheduleID message. Does not implicitly {@link proto.ScheduleID.verify|verify} messages.\n * @function encode\n * @memberof proto.ScheduleID\n * @static\n * @param {proto.IScheduleID} m ScheduleID message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ScheduleID.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.shardNum != null && Object.hasOwnProperty.call(m, \"shardNum\"))\n w.uint32(8).int64(m.shardNum);\n if (m.realmNum != null && Object.hasOwnProperty.call(m, \"realmNum\"))\n w.uint32(16).int64(m.realmNum);\n if (m.scheduleNum != null && Object.hasOwnProperty.call(m, \"scheduleNum\"))\n w.uint32(24).int64(m.scheduleNum);\n return w;\n };\n\n /**\n * Decodes a ScheduleID message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ScheduleID\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ScheduleID} ScheduleID\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ScheduleID.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ScheduleID();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.shardNum = r.int64();\n break;\n case 2:\n m.realmNum = r.int64();\n break;\n case 3:\n m.scheduleNum = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ScheduleID;\n })();\n\n /**\n * Possible Token Types (IWA Compatibility).\n * Apart from fungible and non-fungible, Tokens can have either a common or unique representation.\n * This distinction might seem subtle, but it is important when considering how tokens can be traced\n * and if they can have isolated and unique properties.\n * @name proto.TokenType\n * @enum {number}\n * @property {number} FUNGIBLE_COMMON=0 Interchangeable value with one another, where any quantity of them has the same value as\n * another equal quantity if they are in the same class. Share a single set of properties, not\n * distinct from one another. Simply represented as a balance or quantity to a given Hedera\n * account.\n * @property {number} NON_FUNGIBLE_UNIQUE=1 Unique, not interchangeable with other tokens of the same type as they typically have\n * different values. Individually traced and can carry unique properties (e.g. serial number).\n */\n proto.TokenType = (function() {\n const valuesById = {}, values = Object.create(valuesById);\n values[valuesById[0] = \"FUNGIBLE_COMMON\"] = 0;\n values[valuesById[1] = \"NON_FUNGIBLE_UNIQUE\"] = 1;\n return values;\n })();\n\n /**\n * Allows a set of resource prices to be scoped to a certain type of a HAPI operation.\n * \n * For example, the resource prices for a TokenMint operation are different between minting fungible\n * and non-fungible tokens. This enum allows us to \"mark\" a set of prices as applying to one or the\n * other.\n * \n * Similarly, the resource prices for a basic TokenCreate without a custom fee schedule yield a\n * total price of $1. The resource prices for a TokenCreate with a custom fee schedule are different\n * and yield a total base price of $2.\n * @name proto.SubType\n * @enum {number}\n * @property {number} DEFAULT=0 The resource prices have no special scope\n * @property {number} TOKEN_FUNGIBLE_COMMON=1 The resource prices are scoped to an operation on a fungible common token\n * @property {number} TOKEN_NON_FUNGIBLE_UNIQUE=2 The resource prices are scoped to an operation on a non-fungible unique token\n * @property {number} TOKEN_FUNGIBLE_COMMON_WITH_CUSTOM_FEES=3 The resource prices are scoped to an operation on a fungible common\n * token with a custom fee schedule\n * @property {number} TOKEN_NON_FUNGIBLE_UNIQUE_WITH_CUSTOM_FEES=4 The resource prices are scoped to an operation on a non-fungible unique\n * token with a custom fee schedule\n */\n proto.SubType = (function() {\n const valuesById = {}, values = Object.create(valuesById);\n values[valuesById[0] = \"DEFAULT\"] = 0;\n values[valuesById[1] = \"TOKEN_FUNGIBLE_COMMON\"] = 1;\n values[valuesById[2] = \"TOKEN_NON_FUNGIBLE_UNIQUE\"] = 2;\n values[valuesById[3] = \"TOKEN_FUNGIBLE_COMMON_WITH_CUSTOM_FEES\"] = 3;\n values[valuesById[4] = \"TOKEN_NON_FUNGIBLE_UNIQUE_WITH_CUSTOM_FEES\"] = 4;\n return values;\n })();\n\n /**\n * Possible Token Supply Types (IWA Compatibility).\n * Indicates how many tokens can have during its lifetime.\n * @name proto.TokenSupplyType\n * @enum {number}\n * @property {number} INFINITE=0 Indicates that tokens of that type have an upper bound of Long.MAX_VALUE.\n * @property {number} FINITE=1 Indicates that tokens of that type have an upper bound of maxSupply,\n * provided on token creation.\n */\n proto.TokenSupplyType = (function() {\n const valuesById = {}, values = Object.create(valuesById);\n values[valuesById[0] = \"INFINITE\"] = 0;\n values[valuesById[1] = \"FINITE\"] = 1;\n return values;\n })();\n\n /**\n * Possible Freeze statuses returned on TokenGetInfoQuery or CryptoGetInfoResponse in\n * TokenRelationship\n * @name proto.TokenFreezeStatus\n * @enum {number}\n * @property {number} FreezeNotApplicable=0 UNDOCUMENTED\n * @property {number} Frozen=1 UNDOCUMENTED\n * @property {number} Unfrozen=2 UNDOCUMENTED\n */\n proto.TokenFreezeStatus = (function() {\n const valuesById = {}, values = Object.create(valuesById);\n values[valuesById[0] = \"FreezeNotApplicable\"] = 0;\n values[valuesById[1] = \"Frozen\"] = 1;\n values[valuesById[2] = \"Unfrozen\"] = 2;\n return values;\n })();\n\n /**\n * Possible KYC statuses returned on TokenGetInfoQuery or CryptoGetInfoResponse in TokenRelationship\n * @name proto.TokenKycStatus\n * @enum {number}\n * @property {number} KycNotApplicable=0 UNDOCUMENTED\n * @property {number} Granted=1 UNDOCUMENTED\n * @property {number} Revoked=2 UNDOCUMENTED\n */\n proto.TokenKycStatus = (function() {\n const valuesById = {}, values = Object.create(valuesById);\n values[valuesById[0] = \"KycNotApplicable\"] = 0;\n values[valuesById[1] = \"Granted\"] = 1;\n values[valuesById[2] = \"Revoked\"] = 2;\n return values;\n })();\n\n /**\n * Possible Pause statuses returned on TokenGetInfoQuery\n * @name proto.TokenPauseStatus\n * @enum {number}\n * @property {number} PauseNotApplicable=0 Indicates that a Token has no pauseKey\n * @property {number} Paused=1 Indicates that a Token is Paused\n * @property {number} Unpaused=2 Indicates that a Token is Unpaused.\n */\n proto.TokenPauseStatus = (function() {\n const valuesById = {}, values = Object.create(valuesById);\n values[valuesById[0] = \"PauseNotApplicable\"] = 0;\n values[valuesById[1] = \"Paused\"] = 1;\n values[valuesById[2] = \"Unpaused\"] = 2;\n return values;\n })();\n\n proto.Key = (function() {\n\n /**\n * Properties of a Key.\n * @memberof proto\n * @interface IKey\n * @property {proto.IContractID|null} [contractID] smart contract instance that is authorized as if it had signed with a key\n * @property {Uint8Array|null} [ed25519] Ed25519 public key bytes\n * @property {Uint8Array|null} [RSA_3072] (NOT SUPPORTED) RSA-3072 public key bytes\n * @property {Uint8Array|null} [ECDSA_384] (NOT SUPPORTED) ECDSA with the p-384 curve public key bytes\n * @property {proto.IThresholdKey|null} [thresholdKey] a threshold N followed by a list of M keys, any N of which are required to form a valid\n * signature\n * @property {proto.IKeyList|null} [keyList] A list of Keys of the Key type.\n * @property {Uint8Array|null} [ECDSASecp256k1] Compressed ECDSA(secp256k1) public key bytes\n * @property {proto.IContractID|null} [delegatableContractId] A smart contract that, if the recipient of the active message frame, should be treated\n * as having signed. (Note this does not mean the code being executed in the frame\n * will belong to the given contract, since it could be running another contract's code via\n * delegatecall. So setting this key is a more permissive version of setting the\n * contractID key, which also requires the code in the active message frame belong to the\n * the contract with the given id.)\n */\n\n /**\n * Constructs a new Key.\n * @memberof proto\n * @classdesc A Key can be a public key from either the Ed25519 or ECDSA(secp256k1) signature schemes, where\n * in the ECDSA(secp256k1) case we require the 33-byte compressed form of the public key. We call\n * these public keys primitive keys.\n * \n * If an account has primitive key associated to it, then the corresponding private key must sign\n * any transaction to transfer cryptocurrency out of it.\n * \n * A Key can also be the ID of a smart contract instance, which is then authorized to perform any\n * precompiled contract action that requires this key to sign.\n * \n * Note that when a Key is a smart contract ID, it doesn't mean the contract with that ID\n * will actually create a cryptographic signature. It only means that when the contract calls a\n * precompiled contract, the resulting \"child transaction\" will be authorized to perform any action\n * controlled by the Key.\n * \n * A Key can be a \"threshold key\", which means a list of M keys, any N of which must sign in order\n * for the threshold signature to be considered valid. The keys within a threshold signature may\n * themselves be threshold signatures, to allow complex signature requirements.\n * \n * A Key can be a \"key list\" where all keys in the list must sign unless specified otherwise in the\n * documentation for a specific transaction type (e.g. FileDeleteTransactionBody). Their use is\n * dependent on context. For example, a Hedera file is created with a list of keys, where all of\n * them must sign a transaction to create or modify the file, but only one of them is needed to sign\n * a transaction to delete the file. So it's a single list that sometimes acts as a 1-of-M threshold\n * key, and sometimes acts as an M-of-M threshold key. A key list is always an M-of-M, unless\n * specified otherwise in documentation. A key list can have nested key lists or threshold keys.\n * Nested key lists are always M-of-M. A key list can have repeated primitive public keys, but all\n * repeated keys are only required to sign once.\n * \n * A Key can contain a ThresholdKey or KeyList, which in turn contain a Key, so this mutual\n * recursion would allow nesting arbitrarily deep. A ThresholdKey which contains a list of primitive\n * keys has 3 levels: ThresholdKey -> KeyList -> Key. A KeyList which contains several primitive\n * keys has 2 levels: KeyList -> Key. A Key with 2 levels of nested ThresholdKeys has 7 levels:\n * Key -> ThresholdKey -> KeyList -> Key -> ThresholdKey -> KeyList -> Key.\n * \n * Each Key should not have more than 46 levels, which implies 15 levels of nested ThresholdKeys.\n * @implements IKey\n * @constructor\n * @param {proto.IKey=} [p] Properties to set\n */\n function Key(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * smart contract instance that is authorized as if it had signed with a key\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.Key\n * @instance\n */\n Key.prototype.contractID = null;\n\n /**\n * Ed25519 public key bytes\n * @member {Uint8Array|null|undefined} ed25519\n * @memberof proto.Key\n * @instance\n */\n Key.prototype.ed25519 = null;\n\n /**\n * (NOT SUPPORTED) RSA-3072 public key bytes\n * @member {Uint8Array|null|undefined} RSA_3072\n * @memberof proto.Key\n * @instance\n */\n Key.prototype.RSA_3072 = null;\n\n /**\n * (NOT SUPPORTED) ECDSA with the p-384 curve public key bytes\n * @member {Uint8Array|null|undefined} ECDSA_384\n * @memberof proto.Key\n * @instance\n */\n Key.prototype.ECDSA_384 = null;\n\n /**\n * a threshold N followed by a list of M keys, any N of which are required to form a valid\n * signature\n * @member {proto.IThresholdKey|null|undefined} thresholdKey\n * @memberof proto.Key\n * @instance\n */\n Key.prototype.thresholdKey = null;\n\n /**\n * A list of Keys of the Key type.\n * @member {proto.IKeyList|null|undefined} keyList\n * @memberof proto.Key\n * @instance\n */\n Key.prototype.keyList = null;\n\n /**\n * Compressed ECDSA(secp256k1) public key bytes\n * @member {Uint8Array|null|undefined} ECDSASecp256k1\n * @memberof proto.Key\n * @instance\n */\n Key.prototype.ECDSASecp256k1 = null;\n\n /**\n * A smart contract that, if the recipient of the active message frame, should be treated\n * as having signed. (Note this does not mean the code being executed in the frame\n * will belong to the given contract, since it could be running another contract's code via\n * delegatecall. So setting this key is a more permissive version of setting the\n * contractID key, which also requires the code in the active message frame belong to the\n * the contract with the given id.)\n * @member {proto.IContractID|null|undefined} delegatableContractId\n * @memberof proto.Key\n * @instance\n */\n Key.prototype.delegatableContractId = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * Key key.\n * @member {\"contractID\"|\"ed25519\"|\"RSA_3072\"|\"ECDSA_384\"|\"thresholdKey\"|\"keyList\"|\"ECDSASecp256k1\"|\"delegatableContractId\"|undefined} key\n * @memberof proto.Key\n * @instance\n */\n Object.defineProperty(Key.prototype, \"key\", {\n get: $util.oneOfGetter($oneOfFields = [\"contractID\", \"ed25519\", \"RSA_3072\", \"ECDSA_384\", \"thresholdKey\", \"keyList\", \"ECDSASecp256k1\", \"delegatableContractId\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new Key instance using the specified properties.\n * @function create\n * @memberof proto.Key\n * @static\n * @param {proto.IKey=} [properties] Properties to set\n * @returns {proto.Key} Key instance\n */\n Key.create = function create(properties) {\n return new Key(properties);\n };\n\n /**\n * Encodes the specified Key message. Does not implicitly {@link proto.Key.verify|verify} messages.\n * @function encode\n * @memberof proto.Key\n * @static\n * @param {proto.IKey} m Key message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Key.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(10).fork()).ldelim();\n if (m.ed25519 != null && Object.hasOwnProperty.call(m, \"ed25519\"))\n w.uint32(18).bytes(m.ed25519);\n if (m.RSA_3072 != null && Object.hasOwnProperty.call(m, \"RSA_3072\"))\n w.uint32(26).bytes(m.RSA_3072);\n if (m.ECDSA_384 != null && Object.hasOwnProperty.call(m, \"ECDSA_384\"))\n w.uint32(34).bytes(m.ECDSA_384);\n if (m.thresholdKey != null && Object.hasOwnProperty.call(m, \"thresholdKey\"))\n $root.proto.ThresholdKey.encode(m.thresholdKey, w.uint32(42).fork()).ldelim();\n if (m.keyList != null && Object.hasOwnProperty.call(m, \"keyList\"))\n $root.proto.KeyList.encode(m.keyList, w.uint32(50).fork()).ldelim();\n if (m.ECDSASecp256k1 != null && Object.hasOwnProperty.call(m, \"ECDSASecp256k1\"))\n w.uint32(58).bytes(m.ECDSASecp256k1);\n if (m.delegatableContractId != null && Object.hasOwnProperty.call(m, \"delegatableContractId\"))\n $root.proto.ContractID.encode(m.delegatableContractId, w.uint32(66).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a Key message from the specified reader or buffer.\n * @function decode\n * @memberof proto.Key\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.Key} Key\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Key.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.Key();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 2:\n m.ed25519 = r.bytes();\n break;\n case 3:\n m.RSA_3072 = r.bytes();\n break;\n case 4:\n m.ECDSA_384 = r.bytes();\n break;\n case 5:\n m.thresholdKey = $root.proto.ThresholdKey.decode(r, r.uint32());\n break;\n case 6:\n m.keyList = $root.proto.KeyList.decode(r, r.uint32());\n break;\n case 7:\n m.ECDSASecp256k1 = r.bytes();\n break;\n case 8:\n m.delegatableContractId = $root.proto.ContractID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Key;\n })();\n\n proto.ThresholdKey = (function() {\n\n /**\n * Properties of a ThresholdKey.\n * @memberof proto\n * @interface IThresholdKey\n * @property {number|null} [threshold] A valid signature set must have at least this many signatures\n * @property {proto.IKeyList|null} [keys] List of all the keys that can sign\n */\n\n /**\n * Constructs a new ThresholdKey.\n * @memberof proto\n * @classdesc A set of public keys that are used together to form a threshold signature. If the threshold is N\n * and there are M keys, then this is an N of M threshold signature. If an account is associated\n * with ThresholdKeys, then a transaction to move cryptocurrency out of it must be signed by a list\n * of M signatures, where at most M-N of them are blank, and the other at least N of them are valid\n * signatures corresponding to at least N of the public keys listed here.\n * @implements IThresholdKey\n * @constructor\n * @param {proto.IThresholdKey=} [p] Properties to set\n */\n function ThresholdKey(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * A valid signature set must have at least this many signatures\n * @member {number} threshold\n * @memberof proto.ThresholdKey\n * @instance\n */\n ThresholdKey.prototype.threshold = 0;\n\n /**\n * List of all the keys that can sign\n * @member {proto.IKeyList|null|undefined} keys\n * @memberof proto.ThresholdKey\n * @instance\n */\n ThresholdKey.prototype.keys = null;\n\n /**\n * Creates a new ThresholdKey instance using the specified properties.\n * @function create\n * @memberof proto.ThresholdKey\n * @static\n * @param {proto.IThresholdKey=} [properties] Properties to set\n * @returns {proto.ThresholdKey} ThresholdKey instance\n */\n ThresholdKey.create = function create(properties) {\n return new ThresholdKey(properties);\n };\n\n /**\n * Encodes the specified ThresholdKey message. Does not implicitly {@link proto.ThresholdKey.verify|verify} messages.\n * @function encode\n * @memberof proto.ThresholdKey\n * @static\n * @param {proto.IThresholdKey} m ThresholdKey message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ThresholdKey.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.threshold != null && Object.hasOwnProperty.call(m, \"threshold\"))\n w.uint32(8).uint32(m.threshold);\n if (m.keys != null && Object.hasOwnProperty.call(m, \"keys\"))\n $root.proto.KeyList.encode(m.keys, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ThresholdKey message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ThresholdKey\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ThresholdKey} ThresholdKey\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ThresholdKey.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ThresholdKey();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.threshold = r.uint32();\n break;\n case 2:\n m.keys = $root.proto.KeyList.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ThresholdKey;\n })();\n\n proto.KeyList = (function() {\n\n /**\n * Properties of a KeyList.\n * @memberof proto\n * @interface IKeyList\n * @property {Array.|null} [keys] list of keys\n */\n\n /**\n * Constructs a new KeyList.\n * @memberof proto\n * @classdesc A list of keys that requires all keys (M-of-M) to sign unless otherwise specified in\n * documentation. A KeyList may contain repeated keys, but all repeated keys are only required to\n * sign once.\n * @implements IKeyList\n * @constructor\n * @param {proto.IKeyList=} [p] Properties to set\n */\n function KeyList(p) {\n this.keys = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * list of keys\n * @member {Array.} keys\n * @memberof proto.KeyList\n * @instance\n */\n KeyList.prototype.keys = $util.emptyArray;\n\n /**\n * Creates a new KeyList instance using the specified properties.\n * @function create\n * @memberof proto.KeyList\n * @static\n * @param {proto.IKeyList=} [properties] Properties to set\n * @returns {proto.KeyList} KeyList instance\n */\n KeyList.create = function create(properties) {\n return new KeyList(properties);\n };\n\n /**\n * Encodes the specified KeyList message. Does not implicitly {@link proto.KeyList.verify|verify} messages.\n * @function encode\n * @memberof proto.KeyList\n * @static\n * @param {proto.IKeyList} m KeyList message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n KeyList.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.keys != null && m.keys.length) {\n for (var i = 0; i < m.keys.length; ++i)\n $root.proto.Key.encode(m.keys[i], w.uint32(10).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a KeyList message from the specified reader or buffer.\n * @function decode\n * @memberof proto.KeyList\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.KeyList} KeyList\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n KeyList.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.KeyList();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.keys && m.keys.length))\n m.keys = [];\n m.keys.push($root.proto.Key.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return KeyList;\n })();\n\n proto.Signature = (function() {\n\n /**\n * Properties of a Signature.\n * @memberof proto\n * @interface ISignature\n * @property {Uint8Array|null} [contract] smart contract virtual signature (always length zero)\n * @property {Uint8Array|null} [ed25519] ed25519 signature bytes\n * @property {Uint8Array|null} [RSA_3072] RSA-3072 signature bytes\n * @property {Uint8Array|null} [ECDSA_384] ECDSA p-384 signature bytes\n * @property {proto.IThresholdSignature|null} [thresholdSignature] A list of signatures for a single N-of-M threshold Key. This must be a list of exactly M\n * signatures, at least N of which are non-null.\n * @property {proto.ISignatureList|null} [signatureList] A list of M signatures, each corresponding to a Key in a KeyList of the same length.\n */\n\n /**\n * Constructs a new Signature.\n * @memberof proto\n * @classdesc This message is DEPRECATED and UNUSABLE with network nodes. It is retained\n * here only for historical reasons.\n * \n * Please use the SignaturePair and SignatureMap messages.\n * @implements ISignature\n * @constructor\n * @param {proto.ISignature=} [p] Properties to set\n */\n function Signature(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * smart contract virtual signature (always length zero)\n * @member {Uint8Array|null|undefined} contract\n * @memberof proto.Signature\n * @instance\n */\n Signature.prototype.contract = null;\n\n /**\n * ed25519 signature bytes\n * @member {Uint8Array|null|undefined} ed25519\n * @memberof proto.Signature\n * @instance\n */\n Signature.prototype.ed25519 = null;\n\n /**\n * RSA-3072 signature bytes\n * @member {Uint8Array|null|undefined} RSA_3072\n * @memberof proto.Signature\n * @instance\n */\n Signature.prototype.RSA_3072 = null;\n\n /**\n * ECDSA p-384 signature bytes\n * @member {Uint8Array|null|undefined} ECDSA_384\n * @memberof proto.Signature\n * @instance\n */\n Signature.prototype.ECDSA_384 = null;\n\n /**\n * A list of signatures for a single N-of-M threshold Key. This must be a list of exactly M\n * signatures, at least N of which are non-null.\n * @member {proto.IThresholdSignature|null|undefined} thresholdSignature\n * @memberof proto.Signature\n * @instance\n */\n Signature.prototype.thresholdSignature = null;\n\n /**\n * A list of M signatures, each corresponding to a Key in a KeyList of the same length.\n * @member {proto.ISignatureList|null|undefined} signatureList\n * @memberof proto.Signature\n * @instance\n */\n Signature.prototype.signatureList = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * Signature signature.\n * @member {\"contract\"|\"ed25519\"|\"RSA_3072\"|\"ECDSA_384\"|\"thresholdSignature\"|\"signatureList\"|undefined} signature\n * @memberof proto.Signature\n * @instance\n */\n Object.defineProperty(Signature.prototype, \"signature\", {\n get: $util.oneOfGetter($oneOfFields = [\"contract\", \"ed25519\", \"RSA_3072\", \"ECDSA_384\", \"thresholdSignature\", \"signatureList\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new Signature instance using the specified properties.\n * @function create\n * @memberof proto.Signature\n * @static\n * @param {proto.ISignature=} [properties] Properties to set\n * @returns {proto.Signature} Signature instance\n */\n Signature.create = function create(properties) {\n return new Signature(properties);\n };\n\n /**\n * Encodes the specified Signature message. Does not implicitly {@link proto.Signature.verify|verify} messages.\n * @function encode\n * @memberof proto.Signature\n * @static\n * @param {proto.ISignature} m Signature message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Signature.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.contract != null && Object.hasOwnProperty.call(m, \"contract\"))\n w.uint32(10).bytes(m.contract);\n if (m.ed25519 != null && Object.hasOwnProperty.call(m, \"ed25519\"))\n w.uint32(18).bytes(m.ed25519);\n if (m.RSA_3072 != null && Object.hasOwnProperty.call(m, \"RSA_3072\"))\n w.uint32(26).bytes(m.RSA_3072);\n if (m.ECDSA_384 != null && Object.hasOwnProperty.call(m, \"ECDSA_384\"))\n w.uint32(34).bytes(m.ECDSA_384);\n if (m.thresholdSignature != null && Object.hasOwnProperty.call(m, \"thresholdSignature\"))\n $root.proto.ThresholdSignature.encode(m.thresholdSignature, w.uint32(42).fork()).ldelim();\n if (m.signatureList != null && Object.hasOwnProperty.call(m, \"signatureList\"))\n $root.proto.SignatureList.encode(m.signatureList, w.uint32(50).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a Signature message from the specified reader or buffer.\n * @function decode\n * @memberof proto.Signature\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.Signature} Signature\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Signature.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.Signature();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.contract = r.bytes();\n break;\n case 2:\n m.ed25519 = r.bytes();\n break;\n case 3:\n m.RSA_3072 = r.bytes();\n break;\n case 4:\n m.ECDSA_384 = r.bytes();\n break;\n case 5:\n m.thresholdSignature = $root.proto.ThresholdSignature.decode(r, r.uint32());\n break;\n case 6:\n m.signatureList = $root.proto.SignatureList.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Signature;\n })();\n\n proto.ThresholdSignature = (function() {\n\n /**\n * Properties of a ThresholdSignature.\n * @memberof proto\n * @interface IThresholdSignature\n * @property {proto.ISignatureList|null} [sigs] for an N-of-M threshold key, this is a list of M signatures, at least N of which must be\n * non-null\n */\n\n /**\n * Constructs a new ThresholdSignature.\n * @memberof proto\n * @classdesc This message is DEPRECATED and UNUSABLE with network nodes. It is retained\n * here only for historical reasons.\n * \n * Please use the SignaturePair and SignatureMap messages.\n * @implements IThresholdSignature\n * @constructor\n * @param {proto.IThresholdSignature=} [p] Properties to set\n */\n function ThresholdSignature(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * for an N-of-M threshold key, this is a list of M signatures, at least N of which must be\n * non-null\n * @member {proto.ISignatureList|null|undefined} sigs\n * @memberof proto.ThresholdSignature\n * @instance\n */\n ThresholdSignature.prototype.sigs = null;\n\n /**\n * Creates a new ThresholdSignature instance using the specified properties.\n * @function create\n * @memberof proto.ThresholdSignature\n * @static\n * @param {proto.IThresholdSignature=} [properties] Properties to set\n * @returns {proto.ThresholdSignature} ThresholdSignature instance\n */\n ThresholdSignature.create = function create(properties) {\n return new ThresholdSignature(properties);\n };\n\n /**\n * Encodes the specified ThresholdSignature message. Does not implicitly {@link proto.ThresholdSignature.verify|verify} messages.\n * @function encode\n * @memberof proto.ThresholdSignature\n * @static\n * @param {proto.IThresholdSignature} m ThresholdSignature message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ThresholdSignature.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.sigs != null && Object.hasOwnProperty.call(m, \"sigs\"))\n $root.proto.SignatureList.encode(m.sigs, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ThresholdSignature message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ThresholdSignature\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ThresholdSignature} ThresholdSignature\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ThresholdSignature.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ThresholdSignature();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 2:\n m.sigs = $root.proto.SignatureList.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ThresholdSignature;\n })();\n\n proto.SignatureList = (function() {\n\n /**\n * Properties of a SignatureList.\n * @memberof proto\n * @interface ISignatureList\n * @property {Array.|null} [sigs] each signature corresponds to a Key in the KeyList\n */\n\n /**\n * Constructs a new SignatureList.\n * @memberof proto\n * @classdesc This message is DEPRECATED and UNUSABLE with network nodes. It is retained\n * here only for historical reasons.\n * \n * Please use the SignaturePair and SignatureMap messages.\n * @implements ISignatureList\n * @constructor\n * @param {proto.ISignatureList=} [p] Properties to set\n */\n function SignatureList(p) {\n this.sigs = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * each signature corresponds to a Key in the KeyList\n * @member {Array.} sigs\n * @memberof proto.SignatureList\n * @instance\n */\n SignatureList.prototype.sigs = $util.emptyArray;\n\n /**\n * Creates a new SignatureList instance using the specified properties.\n * @function create\n * @memberof proto.SignatureList\n * @static\n * @param {proto.ISignatureList=} [properties] Properties to set\n * @returns {proto.SignatureList} SignatureList instance\n */\n SignatureList.create = function create(properties) {\n return new SignatureList(properties);\n };\n\n /**\n * Encodes the specified SignatureList message. Does not implicitly {@link proto.SignatureList.verify|verify} messages.\n * @function encode\n * @memberof proto.SignatureList\n * @static\n * @param {proto.ISignatureList} m SignatureList message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n SignatureList.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.sigs != null && m.sigs.length) {\n for (var i = 0; i < m.sigs.length; ++i)\n $root.proto.Signature.encode(m.sigs[i], w.uint32(18).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a SignatureList message from the specified reader or buffer.\n * @function decode\n * @memberof proto.SignatureList\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.SignatureList} SignatureList\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n SignatureList.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.SignatureList();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 2:\n if (!(m.sigs && m.sigs.length))\n m.sigs = [];\n m.sigs.push($root.proto.Signature.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return SignatureList;\n })();\n\n proto.SignaturePair = (function() {\n\n /**\n * Properties of a SignaturePair.\n * @memberof proto\n * @interface ISignaturePair\n * @property {Uint8Array|null} [pubKeyPrefix] First few bytes of the public key\n * @property {Uint8Array|null} [contract] smart contract virtual signature (always length zero)\n * @property {Uint8Array|null} [ed25519] ed25519 signature\n * @property {Uint8Array|null} [RSA_3072] RSA-3072 signature\n * @property {Uint8Array|null} [ECDSA_384] ECDSA p-384 signature\n * @property {Uint8Array|null} [ECDSASecp256k1] ECDSA(secp256k1) signature\n */\n\n /**\n * Constructs a new SignaturePair.\n * @memberof proto\n * @classdesc The client may use any number of bytes from zero to the whole length of the public key for\n * pubKeyPrefix. If zero bytes are used, then it must be that only one primitive key is required\n * to sign the linked transaction; it will surely resolve to INVALID_SIGNATURE otherwise.\n * \n * IMPORTANT: In the special case that a signature is being provided for a key used to\n * authorize a precompiled contract, the pubKeyPrefix must contain the entire public\n * key! That is, if the key is a Ed25519 key, the pubKeyPrefix should be 32 bytes\n * long. If the key is a ECDSA(secp256k1) key, the pubKeyPrefix should be 33 bytes long,\n * since we require the compressed form of the public key.\n * \n * Only Ed25519 and ECDSA(secp256k1) keys and hence signatures are currently supported.\n * @implements ISignaturePair\n * @constructor\n * @param {proto.ISignaturePair=} [p] Properties to set\n */\n function SignaturePair(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * First few bytes of the public key\n * @member {Uint8Array} pubKeyPrefix\n * @memberof proto.SignaturePair\n * @instance\n */\n SignaturePair.prototype.pubKeyPrefix = $util.newBuffer([]);\n\n /**\n * smart contract virtual signature (always length zero)\n * @member {Uint8Array|null|undefined} contract\n * @memberof proto.SignaturePair\n * @instance\n */\n SignaturePair.prototype.contract = null;\n\n /**\n * ed25519 signature\n * @member {Uint8Array|null|undefined} ed25519\n * @memberof proto.SignaturePair\n * @instance\n */\n SignaturePair.prototype.ed25519 = null;\n\n /**\n * RSA-3072 signature\n * @member {Uint8Array|null|undefined} RSA_3072\n * @memberof proto.SignaturePair\n * @instance\n */\n SignaturePair.prototype.RSA_3072 = null;\n\n /**\n * ECDSA p-384 signature\n * @member {Uint8Array|null|undefined} ECDSA_384\n * @memberof proto.SignaturePair\n * @instance\n */\n SignaturePair.prototype.ECDSA_384 = null;\n\n /**\n * ECDSA(secp256k1) signature\n * @member {Uint8Array|null|undefined} ECDSASecp256k1\n * @memberof proto.SignaturePair\n * @instance\n */\n SignaturePair.prototype.ECDSASecp256k1 = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * SignaturePair signature.\n * @member {\"contract\"|\"ed25519\"|\"RSA_3072\"|\"ECDSA_384\"|\"ECDSASecp256k1\"|undefined} signature\n * @memberof proto.SignaturePair\n * @instance\n */\n Object.defineProperty(SignaturePair.prototype, \"signature\", {\n get: $util.oneOfGetter($oneOfFields = [\"contract\", \"ed25519\", \"RSA_3072\", \"ECDSA_384\", \"ECDSASecp256k1\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new SignaturePair instance using the specified properties.\n * @function create\n * @memberof proto.SignaturePair\n * @static\n * @param {proto.ISignaturePair=} [properties] Properties to set\n * @returns {proto.SignaturePair} SignaturePair instance\n */\n SignaturePair.create = function create(properties) {\n return new SignaturePair(properties);\n };\n\n /**\n * Encodes the specified SignaturePair message. Does not implicitly {@link proto.SignaturePair.verify|verify} messages.\n * @function encode\n * @memberof proto.SignaturePair\n * @static\n * @param {proto.ISignaturePair} m SignaturePair message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n SignaturePair.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.pubKeyPrefix != null && Object.hasOwnProperty.call(m, \"pubKeyPrefix\"))\n w.uint32(10).bytes(m.pubKeyPrefix);\n if (m.contract != null && Object.hasOwnProperty.call(m, \"contract\"))\n w.uint32(18).bytes(m.contract);\n if (m.ed25519 != null && Object.hasOwnProperty.call(m, \"ed25519\"))\n w.uint32(26).bytes(m.ed25519);\n if (m.RSA_3072 != null && Object.hasOwnProperty.call(m, \"RSA_3072\"))\n w.uint32(34).bytes(m.RSA_3072);\n if (m.ECDSA_384 != null && Object.hasOwnProperty.call(m, \"ECDSA_384\"))\n w.uint32(42).bytes(m.ECDSA_384);\n if (m.ECDSASecp256k1 != null && Object.hasOwnProperty.call(m, \"ECDSASecp256k1\"))\n w.uint32(50).bytes(m.ECDSASecp256k1);\n return w;\n };\n\n /**\n * Decodes a SignaturePair message from the specified reader or buffer.\n * @function decode\n * @memberof proto.SignaturePair\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.SignaturePair} SignaturePair\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n SignaturePair.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.SignaturePair();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.pubKeyPrefix = r.bytes();\n break;\n case 2:\n m.contract = r.bytes();\n break;\n case 3:\n m.ed25519 = r.bytes();\n break;\n case 4:\n m.RSA_3072 = r.bytes();\n break;\n case 5:\n m.ECDSA_384 = r.bytes();\n break;\n case 6:\n m.ECDSASecp256k1 = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return SignaturePair;\n })();\n\n proto.SignatureMap = (function() {\n\n /**\n * Properties of a SignatureMap.\n * @memberof proto\n * @interface ISignatureMap\n * @property {Array.|null} [sigPair] Each signature pair corresponds to a unique Key required to sign the transaction.\n */\n\n /**\n * Constructs a new SignatureMap.\n * @memberof proto\n * @classdesc A set of signatures corresponding to every unique public key used to sign a given transaction. If\n * one public key matches more than one prefixes on the signature map, the transaction containing\n * the map will fail immediately with the response code KEY_PREFIX_MISMATCH.\n * @implements ISignatureMap\n * @constructor\n * @param {proto.ISignatureMap=} [p] Properties to set\n */\n function SignatureMap(p) {\n this.sigPair = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Each signature pair corresponds to a unique Key required to sign the transaction.\n * @member {Array.} sigPair\n * @memberof proto.SignatureMap\n * @instance\n */\n SignatureMap.prototype.sigPair = $util.emptyArray;\n\n /**\n * Creates a new SignatureMap instance using the specified properties.\n * @function create\n * @memberof proto.SignatureMap\n * @static\n * @param {proto.ISignatureMap=} [properties] Properties to set\n * @returns {proto.SignatureMap} SignatureMap instance\n */\n SignatureMap.create = function create(properties) {\n return new SignatureMap(properties);\n };\n\n /**\n * Encodes the specified SignatureMap message. Does not implicitly {@link proto.SignatureMap.verify|verify} messages.\n * @function encode\n * @memberof proto.SignatureMap\n * @static\n * @param {proto.ISignatureMap} m SignatureMap message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n SignatureMap.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.sigPair != null && m.sigPair.length) {\n for (var i = 0; i < m.sigPair.length; ++i)\n $root.proto.SignaturePair.encode(m.sigPair[i], w.uint32(10).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a SignatureMap message from the specified reader or buffer.\n * @function decode\n * @memberof proto.SignatureMap\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.SignatureMap} SignatureMap\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n SignatureMap.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.SignatureMap();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.sigPair && m.sigPair.length))\n m.sigPair = [];\n m.sigPair.push($root.proto.SignaturePair.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return SignatureMap;\n })();\n\n /**\n * The transactions and queries supported by Hedera Hashgraph.\n * @name proto.HederaFunctionality\n * @enum {number}\n * @property {number} NONE=0 UNSPECIFIED - Need to keep first value as unspecified because first element is ignored and\n * not parsed (0 is ignored by parser)\n * @property {number} CryptoTransfer=1 crypto transfer\n * @property {number} CryptoUpdate=2 crypto update account\n * @property {number} CryptoDelete=3 crypto delete account\n * @property {number} CryptoAddLiveHash=4 Add a livehash to a crypto account\n * @property {number} CryptoDeleteLiveHash=5 Delete a livehash from a crypto account\n * @property {number} ContractCall=6 Smart Contract Call\n * @property {number} ContractCreate=7 Smart Contract Create Contract\n * @property {number} ContractUpdate=8 Smart Contract update contract\n * @property {number} FileCreate=9 File Operation create file\n * @property {number} FileAppend=10 File Operation append file\n * @property {number} FileUpdate=11 File Operation update file\n * @property {number} FileDelete=12 File Operation delete file\n * @property {number} CryptoGetAccountBalance=13 crypto get account balance\n * @property {number} CryptoGetAccountRecords=14 crypto get account record\n * @property {number} CryptoGetInfo=15 Crypto get info\n * @property {number} ContractCallLocal=16 Smart Contract Call\n * @property {number} ContractGetInfo=17 Smart Contract get info\n * @property {number} ContractGetBytecode=18 Smart Contract, get the byte code\n * @property {number} GetBySolidityID=19 Smart Contract, get by solidity ID\n * @property {number} GetByKey=20 Smart Contract, get by key\n * @property {number} CryptoGetLiveHash=21 Get a live hash from a crypto account\n * @property {number} CryptoGetStakers=22 Crypto, get the stakers for the node\n * @property {number} FileGetContents=23 File Operations get file contents\n * @property {number} FileGetInfo=24 File Operations get the info of the file\n * @property {number} TransactionGetRecord=25 Crypto get the transaction records\n * @property {number} ContractGetRecords=26 Contract get the transaction records\n * @property {number} CryptoCreate=27 crypto create account\n * @property {number} SystemDelete=28 system delete file\n * @property {number} SystemUndelete=29 system undelete file\n * @property {number} ContractDelete=30 delete contract\n * @property {number} Freeze=31 freeze\n * @property {number} CreateTransactionRecord=32 Create Tx Record\n * @property {number} CryptoAccountAutoRenew=33 Crypto Auto Renew\n * @property {number} ContractAutoRenew=34 Contract Auto Renew\n * @property {number} GetVersionInfo=35 Get Version\n * @property {number} TransactionGetReceipt=36 Transaction Get Receipt\n * @property {number} ConsensusCreateTopic=50 Create Topic\n * @property {number} ConsensusUpdateTopic=51 Update Topic\n * @property {number} ConsensusDeleteTopic=52 Delete Topic\n * @property {number} ConsensusGetTopicInfo=53 Get Topic information\n * @property {number} ConsensusSubmitMessage=54 Submit message to topic\n * @property {number} UncheckedSubmit=55 UncheckedSubmit value\n * @property {number} TokenCreate=56 Create Token\n * @property {number} TokenGetInfo=58 Get Token information\n * @property {number} TokenFreezeAccount=59 Freeze Account\n * @property {number} TokenUnfreezeAccount=60 Unfreeze Account\n * @property {number} TokenGrantKycToAccount=61 Grant KYC to Account\n * @property {number} TokenRevokeKycFromAccount=62 Revoke KYC from Account\n * @property {number} TokenDelete=63 Delete Token\n * @property {number} TokenUpdate=64 Update Token\n * @property {number} TokenMint=65 Mint tokens to treasury\n * @property {number} TokenBurn=66 Burn tokens from treasury\n * @property {number} TokenAccountWipe=67 Wipe token amount from Account holder\n * @property {number} TokenAssociateToAccount=68 Associate tokens to an account\n * @property {number} TokenDissociateFromAccount=69 Dissociate tokens from an account\n * @property {number} ScheduleCreate=70 Create Scheduled Transaction\n * @property {number} ScheduleDelete=71 Delete Scheduled Transaction\n * @property {number} ScheduleSign=72 Sign Scheduled Transaction\n * @property {number} ScheduleGetInfo=73 Get Scheduled Transaction Information\n * @property {number} TokenGetAccountNftInfos=74 Get Token Account Nft Information\n * @property {number} TokenGetNftInfo=75 Get Token Nft Information\n * @property {number} TokenGetNftInfos=76 Get Token Nft List Information\n * @property {number} TokenFeeScheduleUpdate=77 Update a token's custom fee schedule, if permissible\n * @property {number} NetworkGetExecutionTime=78 Get execution time(s) by TransactionID, if available\n * @property {number} TokenPause=79 Pause the Token\n * @property {number} TokenUnpause=80 Unpause the Token\n * @property {number} CryptoApproveAllowance=81 Approve allowance for a spender relative to the payer account\n * @property {number} CryptoAdjustAllowance=82 Adjust allowances for a spender relative to the payer account\n */\n proto.HederaFunctionality = (function() {\n const valuesById = {}, values = Object.create(valuesById);\n values[valuesById[0] = \"NONE\"] = 0;\n values[valuesById[1] = \"CryptoTransfer\"] = 1;\n values[valuesById[2] = \"CryptoUpdate\"] = 2;\n values[valuesById[3] = \"CryptoDelete\"] = 3;\n values[valuesById[4] = \"CryptoAddLiveHash\"] = 4;\n values[valuesById[5] = \"CryptoDeleteLiveHash\"] = 5;\n values[valuesById[6] = \"ContractCall\"] = 6;\n values[valuesById[7] = \"ContractCreate\"] = 7;\n values[valuesById[8] = \"ContractUpdate\"] = 8;\n values[valuesById[9] = \"FileCreate\"] = 9;\n values[valuesById[10] = \"FileAppend\"] = 10;\n values[valuesById[11] = \"FileUpdate\"] = 11;\n values[valuesById[12] = \"FileDelete\"] = 12;\n values[valuesById[13] = \"CryptoGetAccountBalance\"] = 13;\n values[valuesById[14] = \"CryptoGetAccountRecords\"] = 14;\n values[valuesById[15] = \"CryptoGetInfo\"] = 15;\n values[valuesById[16] = \"ContractCallLocal\"] = 16;\n values[valuesById[17] = \"ContractGetInfo\"] = 17;\n values[valuesById[18] = \"ContractGetBytecode\"] = 18;\n values[valuesById[19] = \"GetBySolidityID\"] = 19;\n values[valuesById[20] = \"GetByKey\"] = 20;\n values[valuesById[21] = \"CryptoGetLiveHash\"] = 21;\n values[valuesById[22] = \"CryptoGetStakers\"] = 22;\n values[valuesById[23] = \"FileGetContents\"] = 23;\n values[valuesById[24] = \"FileGetInfo\"] = 24;\n values[valuesById[25] = \"TransactionGetRecord\"] = 25;\n values[valuesById[26] = \"ContractGetRecords\"] = 26;\n values[valuesById[27] = \"CryptoCreate\"] = 27;\n values[valuesById[28] = \"SystemDelete\"] = 28;\n values[valuesById[29] = \"SystemUndelete\"] = 29;\n values[valuesById[30] = \"ContractDelete\"] = 30;\n values[valuesById[31] = \"Freeze\"] = 31;\n values[valuesById[32] = \"CreateTransactionRecord\"] = 32;\n values[valuesById[33] = \"CryptoAccountAutoRenew\"] = 33;\n values[valuesById[34] = \"ContractAutoRenew\"] = 34;\n values[valuesById[35] = \"GetVersionInfo\"] = 35;\n values[valuesById[36] = \"TransactionGetReceipt\"] = 36;\n values[valuesById[50] = \"ConsensusCreateTopic\"] = 50;\n values[valuesById[51] = \"ConsensusUpdateTopic\"] = 51;\n values[valuesById[52] = \"ConsensusDeleteTopic\"] = 52;\n values[valuesById[53] = \"ConsensusGetTopicInfo\"] = 53;\n values[valuesById[54] = \"ConsensusSubmitMessage\"] = 54;\n values[valuesById[55] = \"UncheckedSubmit\"] = 55;\n values[valuesById[56] = \"TokenCreate\"] = 56;\n values[valuesById[58] = \"TokenGetInfo\"] = 58;\n values[valuesById[59] = \"TokenFreezeAccount\"] = 59;\n values[valuesById[60] = \"TokenUnfreezeAccount\"] = 60;\n values[valuesById[61] = \"TokenGrantKycToAccount\"] = 61;\n values[valuesById[62] = \"TokenRevokeKycFromAccount\"] = 62;\n values[valuesById[63] = \"TokenDelete\"] = 63;\n values[valuesById[64] = \"TokenUpdate\"] = 64;\n values[valuesById[65] = \"TokenMint\"] = 65;\n values[valuesById[66] = \"TokenBurn\"] = 66;\n values[valuesById[67] = \"TokenAccountWipe\"] = 67;\n values[valuesById[68] = \"TokenAssociateToAccount\"] = 68;\n values[valuesById[69] = \"TokenDissociateFromAccount\"] = 69;\n values[valuesById[70] = \"ScheduleCreate\"] = 70;\n values[valuesById[71] = \"ScheduleDelete\"] = 71;\n values[valuesById[72] = \"ScheduleSign\"] = 72;\n values[valuesById[73] = \"ScheduleGetInfo\"] = 73;\n values[valuesById[74] = \"TokenGetAccountNftInfos\"] = 74;\n values[valuesById[75] = \"TokenGetNftInfo\"] = 75;\n values[valuesById[76] = \"TokenGetNftInfos\"] = 76;\n values[valuesById[77] = \"TokenFeeScheduleUpdate\"] = 77;\n values[valuesById[78] = \"NetworkGetExecutionTime\"] = 78;\n values[valuesById[79] = \"TokenPause\"] = 79;\n values[valuesById[80] = \"TokenUnpause\"] = 80;\n values[valuesById[81] = \"CryptoApproveAllowance\"] = 81;\n values[valuesById[82] = \"CryptoAdjustAllowance\"] = 82;\n return values;\n })();\n\n proto.FeeComponents = (function() {\n\n /**\n * Properties of a FeeComponents.\n * @memberof proto\n * @interface IFeeComponents\n * @property {Long|null} [min] A minimum, the calculated fee must be greater than this value\n * @property {Long|null} [max] A maximum, the calculated fee must be less than this value\n * @property {Long|null} [constant] A constant contribution to the fee\n * @property {Long|null} [bpt] The price of bandwidth consumed by a transaction, measured in bytes\n * @property {Long|null} [vpt] The price per signature verification for a transaction\n * @property {Long|null} [rbh] The price of RAM consumed by a transaction, measured in byte-hours\n * @property {Long|null} [sbh] The price of storage consumed by a transaction, measured in byte-hours\n * @property {Long|null} [gas] The price of computation for a smart contract transaction, measured in gas\n * @property {Long|null} [tv] The price per hbar transferred for a transfer\n * @property {Long|null} [bpr] The price of bandwidth for data retrieved from memory for a response, measured in bytes\n * @property {Long|null} [sbpr] The price of bandwidth for data retrieved from disk for a response, measured in bytes\n */\n\n /**\n * Constructs a new FeeComponents.\n * @memberof proto\n * @classdesc A set of prices the nodes use in determining transaction and query fees, and constants involved\n * in fee calculations. Nodes multiply the amount of resources consumed by a transaction or query\n * by the corresponding price to calculate the appropriate fee. Units are one-thousandth of a\n * tinyCent.\n * @implements IFeeComponents\n * @constructor\n * @param {proto.IFeeComponents=} [p] Properties to set\n */\n function FeeComponents(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * A minimum, the calculated fee must be greater than this value\n * @member {Long} min\n * @memberof proto.FeeComponents\n * @instance\n */\n FeeComponents.prototype.min = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * A maximum, the calculated fee must be less than this value\n * @member {Long} max\n * @memberof proto.FeeComponents\n * @instance\n */\n FeeComponents.prototype.max = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * A constant contribution to the fee\n * @member {Long} constant\n * @memberof proto.FeeComponents\n * @instance\n */\n FeeComponents.prototype.constant = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The price of bandwidth consumed by a transaction, measured in bytes\n * @member {Long} bpt\n * @memberof proto.FeeComponents\n * @instance\n */\n FeeComponents.prototype.bpt = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The price per signature verification for a transaction\n * @member {Long} vpt\n * @memberof proto.FeeComponents\n * @instance\n */\n FeeComponents.prototype.vpt = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The price of RAM consumed by a transaction, measured in byte-hours\n * @member {Long} rbh\n * @memberof proto.FeeComponents\n * @instance\n */\n FeeComponents.prototype.rbh = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The price of storage consumed by a transaction, measured in byte-hours\n * @member {Long} sbh\n * @memberof proto.FeeComponents\n * @instance\n */\n FeeComponents.prototype.sbh = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The price of computation for a smart contract transaction, measured in gas\n * @member {Long} gas\n * @memberof proto.FeeComponents\n * @instance\n */\n FeeComponents.prototype.gas = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The price per hbar transferred for a transfer\n * @member {Long} tv\n * @memberof proto.FeeComponents\n * @instance\n */\n FeeComponents.prototype.tv = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The price of bandwidth for data retrieved from memory for a response, measured in bytes\n * @member {Long} bpr\n * @memberof proto.FeeComponents\n * @instance\n */\n FeeComponents.prototype.bpr = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The price of bandwidth for data retrieved from disk for a response, measured in bytes\n * @member {Long} sbpr\n * @memberof proto.FeeComponents\n * @instance\n */\n FeeComponents.prototype.sbpr = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new FeeComponents instance using the specified properties.\n * @function create\n * @memberof proto.FeeComponents\n * @static\n * @param {proto.IFeeComponents=} [properties] Properties to set\n * @returns {proto.FeeComponents} FeeComponents instance\n */\n FeeComponents.create = function create(properties) {\n return new FeeComponents(properties);\n };\n\n /**\n * Encodes the specified FeeComponents message. Does not implicitly {@link proto.FeeComponents.verify|verify} messages.\n * @function encode\n * @memberof proto.FeeComponents\n * @static\n * @param {proto.IFeeComponents} m FeeComponents message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FeeComponents.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.min != null && Object.hasOwnProperty.call(m, \"min\"))\n w.uint32(8).int64(m.min);\n if (m.max != null && Object.hasOwnProperty.call(m, \"max\"))\n w.uint32(16).int64(m.max);\n if (m.constant != null && Object.hasOwnProperty.call(m, \"constant\"))\n w.uint32(24).int64(m.constant);\n if (m.bpt != null && Object.hasOwnProperty.call(m, \"bpt\"))\n w.uint32(32).int64(m.bpt);\n if (m.vpt != null && Object.hasOwnProperty.call(m, \"vpt\"))\n w.uint32(40).int64(m.vpt);\n if (m.rbh != null && Object.hasOwnProperty.call(m, \"rbh\"))\n w.uint32(48).int64(m.rbh);\n if (m.sbh != null && Object.hasOwnProperty.call(m, \"sbh\"))\n w.uint32(56).int64(m.sbh);\n if (m.gas != null && Object.hasOwnProperty.call(m, \"gas\"))\n w.uint32(64).int64(m.gas);\n if (m.tv != null && Object.hasOwnProperty.call(m, \"tv\"))\n w.uint32(72).int64(m.tv);\n if (m.bpr != null && Object.hasOwnProperty.call(m, \"bpr\"))\n w.uint32(80).int64(m.bpr);\n if (m.sbpr != null && Object.hasOwnProperty.call(m, \"sbpr\"))\n w.uint32(88).int64(m.sbpr);\n return w;\n };\n\n /**\n * Decodes a FeeComponents message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FeeComponents\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FeeComponents} FeeComponents\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FeeComponents.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FeeComponents();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.min = r.int64();\n break;\n case 2:\n m.max = r.int64();\n break;\n case 3:\n m.constant = r.int64();\n break;\n case 4:\n m.bpt = r.int64();\n break;\n case 5:\n m.vpt = r.int64();\n break;\n case 6:\n m.rbh = r.int64();\n break;\n case 7:\n m.sbh = r.int64();\n break;\n case 8:\n m.gas = r.int64();\n break;\n case 9:\n m.tv = r.int64();\n break;\n case 10:\n m.bpr = r.int64();\n break;\n case 11:\n m.sbpr = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FeeComponents;\n })();\n\n proto.TransactionFeeSchedule = (function() {\n\n /**\n * Properties of a TransactionFeeSchedule.\n * @memberof proto\n * @interface ITransactionFeeSchedule\n * @property {proto.HederaFunctionality|null} [hederaFunctionality] A particular transaction or query\n * @property {proto.IFeeData|null} [feeData] Resource price coefficients\n * @property {Array.|null} [fees] Resource price coefficients. Supports subtype price definition.\n */\n\n /**\n * Constructs a new TransactionFeeSchedule.\n * @memberof proto\n * @classdesc The fees for a specific transaction or query based on the fee data.\n * @implements ITransactionFeeSchedule\n * @constructor\n * @param {proto.ITransactionFeeSchedule=} [p] Properties to set\n */\n function TransactionFeeSchedule(p) {\n this.fees = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * A particular transaction or query\n * @member {proto.HederaFunctionality} hederaFunctionality\n * @memberof proto.TransactionFeeSchedule\n * @instance\n */\n TransactionFeeSchedule.prototype.hederaFunctionality = 0;\n\n /**\n * Resource price coefficients\n * @member {proto.IFeeData|null|undefined} feeData\n * @memberof proto.TransactionFeeSchedule\n * @instance\n */\n TransactionFeeSchedule.prototype.feeData = null;\n\n /**\n * Resource price coefficients. Supports subtype price definition.\n * @member {Array.} fees\n * @memberof proto.TransactionFeeSchedule\n * @instance\n */\n TransactionFeeSchedule.prototype.fees = $util.emptyArray;\n\n /**\n * Creates a new TransactionFeeSchedule instance using the specified properties.\n * @function create\n * @memberof proto.TransactionFeeSchedule\n * @static\n * @param {proto.ITransactionFeeSchedule=} [properties] Properties to set\n * @returns {proto.TransactionFeeSchedule} TransactionFeeSchedule instance\n */\n TransactionFeeSchedule.create = function create(properties) {\n return new TransactionFeeSchedule(properties);\n };\n\n /**\n * Encodes the specified TransactionFeeSchedule message. Does not implicitly {@link proto.TransactionFeeSchedule.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionFeeSchedule\n * @static\n * @param {proto.ITransactionFeeSchedule} m TransactionFeeSchedule message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionFeeSchedule.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.hederaFunctionality != null && Object.hasOwnProperty.call(m, \"hederaFunctionality\"))\n w.uint32(8).int32(m.hederaFunctionality);\n if (m.feeData != null && Object.hasOwnProperty.call(m, \"feeData\"))\n $root.proto.FeeData.encode(m.feeData, w.uint32(18).fork()).ldelim();\n if (m.fees != null && m.fees.length) {\n for (var i = 0; i < m.fees.length; ++i)\n $root.proto.FeeData.encode(m.fees[i], w.uint32(26).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TransactionFeeSchedule message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionFeeSchedule\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionFeeSchedule} TransactionFeeSchedule\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionFeeSchedule.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionFeeSchedule();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.hederaFunctionality = r.int32();\n break;\n case 2:\n m.feeData = $root.proto.FeeData.decode(r, r.uint32());\n break;\n case 3:\n if (!(m.fees && m.fees.length))\n m.fees = [];\n m.fees.push($root.proto.FeeData.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionFeeSchedule;\n })();\n\n proto.FeeData = (function() {\n\n /**\n * Properties of a FeeData.\n * @memberof proto\n * @interface IFeeData\n * @property {proto.IFeeComponents|null} [nodedata] Fee paid to the submitting node\n * @property {proto.IFeeComponents|null} [networkdata] Fee paid to the network for processing a transaction into consensus\n * @property {proto.IFeeComponents|null} [servicedata] Fee paid to the network for providing the service associated with the\n * transaction; for instance, storing a file\n * @property {proto.SubType|null} [subType] SubType distinguishing between different types of FeeData, correlating\n * to the same HederaFunctionality\n */\n\n /**\n * Constructs a new FeeData.\n * @memberof proto\n * @classdesc The total fee charged for a transaction. It is composed of three components – a node fee that\n * compensates the specific node that submitted the transaction, a network fee that compensates the\n * network for assigning the transaction a consensus timestamp, and a service fee that compensates\n * the network for the ongoing maintenance of the consequences of the transaction.\n * @implements IFeeData\n * @constructor\n * @param {proto.IFeeData=} [p] Properties to set\n */\n function FeeData(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Fee paid to the submitting node\n * @member {proto.IFeeComponents|null|undefined} nodedata\n * @memberof proto.FeeData\n * @instance\n */\n FeeData.prototype.nodedata = null;\n\n /**\n * Fee paid to the network for processing a transaction into consensus\n * @member {proto.IFeeComponents|null|undefined} networkdata\n * @memberof proto.FeeData\n * @instance\n */\n FeeData.prototype.networkdata = null;\n\n /**\n * Fee paid to the network for providing the service associated with the\n * transaction; for instance, storing a file\n * @member {proto.IFeeComponents|null|undefined} servicedata\n * @memberof proto.FeeData\n * @instance\n */\n FeeData.prototype.servicedata = null;\n\n /**\n * SubType distinguishing between different types of FeeData, correlating\n * to the same HederaFunctionality\n * @member {proto.SubType} subType\n * @memberof proto.FeeData\n * @instance\n */\n FeeData.prototype.subType = 0;\n\n /**\n * Creates a new FeeData instance using the specified properties.\n * @function create\n * @memberof proto.FeeData\n * @static\n * @param {proto.IFeeData=} [properties] Properties to set\n * @returns {proto.FeeData} FeeData instance\n */\n FeeData.create = function create(properties) {\n return new FeeData(properties);\n };\n\n /**\n * Encodes the specified FeeData message. Does not implicitly {@link proto.FeeData.verify|verify} messages.\n * @function encode\n * @memberof proto.FeeData\n * @static\n * @param {proto.IFeeData} m FeeData message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FeeData.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.nodedata != null && Object.hasOwnProperty.call(m, \"nodedata\"))\n $root.proto.FeeComponents.encode(m.nodedata, w.uint32(10).fork()).ldelim();\n if (m.networkdata != null && Object.hasOwnProperty.call(m, \"networkdata\"))\n $root.proto.FeeComponents.encode(m.networkdata, w.uint32(18).fork()).ldelim();\n if (m.servicedata != null && Object.hasOwnProperty.call(m, \"servicedata\"))\n $root.proto.FeeComponents.encode(m.servicedata, w.uint32(26).fork()).ldelim();\n if (m.subType != null && Object.hasOwnProperty.call(m, \"subType\"))\n w.uint32(32).int32(m.subType);\n return w;\n };\n\n /**\n * Decodes a FeeData message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FeeData\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FeeData} FeeData\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FeeData.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FeeData();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.nodedata = $root.proto.FeeComponents.decode(r, r.uint32());\n break;\n case 2:\n m.networkdata = $root.proto.FeeComponents.decode(r, r.uint32());\n break;\n case 3:\n m.servicedata = $root.proto.FeeComponents.decode(r, r.uint32());\n break;\n case 4:\n m.subType = r.int32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FeeData;\n })();\n\n proto.FeeSchedule = (function() {\n\n /**\n * Properties of a FeeSchedule.\n * @memberof proto\n * @interface IFeeSchedule\n * @property {Array.|null} [transactionFeeSchedule] List of price coefficients for network resources\n * @property {proto.ITimestampSeconds|null} [expiryTime] FeeSchedule expiry time\n */\n\n /**\n * Constructs a new FeeSchedule.\n * @memberof proto\n * @classdesc A list of resource prices fee for different transactions and queries and the time period at which\n * this fee schedule will expire. Nodes use the prices to determine the fees for all transactions\n * based on how much of those resources each transaction uses.\n * @implements IFeeSchedule\n * @constructor\n * @param {proto.IFeeSchedule=} [p] Properties to set\n */\n function FeeSchedule(p) {\n this.transactionFeeSchedule = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * List of price coefficients for network resources\n * @member {Array.} transactionFeeSchedule\n * @memberof proto.FeeSchedule\n * @instance\n */\n FeeSchedule.prototype.transactionFeeSchedule = $util.emptyArray;\n\n /**\n * FeeSchedule expiry time\n * @member {proto.ITimestampSeconds|null|undefined} expiryTime\n * @memberof proto.FeeSchedule\n * @instance\n */\n FeeSchedule.prototype.expiryTime = null;\n\n /**\n * Creates a new FeeSchedule instance using the specified properties.\n * @function create\n * @memberof proto.FeeSchedule\n * @static\n * @param {proto.IFeeSchedule=} [properties] Properties to set\n * @returns {proto.FeeSchedule} FeeSchedule instance\n */\n FeeSchedule.create = function create(properties) {\n return new FeeSchedule(properties);\n };\n\n /**\n * Encodes the specified FeeSchedule message. Does not implicitly {@link proto.FeeSchedule.verify|verify} messages.\n * @function encode\n * @memberof proto.FeeSchedule\n * @static\n * @param {proto.IFeeSchedule} m FeeSchedule message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FeeSchedule.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.transactionFeeSchedule != null && m.transactionFeeSchedule.length) {\n for (var i = 0; i < m.transactionFeeSchedule.length; ++i)\n $root.proto.TransactionFeeSchedule.encode(m.transactionFeeSchedule[i], w.uint32(10).fork()).ldelim();\n }\n if (m.expiryTime != null && Object.hasOwnProperty.call(m, \"expiryTime\"))\n $root.proto.TimestampSeconds.encode(m.expiryTime, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a FeeSchedule message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FeeSchedule\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FeeSchedule} FeeSchedule\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FeeSchedule.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FeeSchedule();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.transactionFeeSchedule && m.transactionFeeSchedule.length))\n m.transactionFeeSchedule = [];\n m.transactionFeeSchedule.push($root.proto.TransactionFeeSchedule.decode(r, r.uint32()));\n break;\n case 2:\n m.expiryTime = $root.proto.TimestampSeconds.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FeeSchedule;\n })();\n\n proto.CurrentAndNextFeeSchedule = (function() {\n\n /**\n * Properties of a CurrentAndNextFeeSchedule.\n * @memberof proto\n * @interface ICurrentAndNextFeeSchedule\n * @property {proto.IFeeSchedule|null} [currentFeeSchedule] Contains current Fee Schedule\n * @property {proto.IFeeSchedule|null} [nextFeeSchedule] Contains next Fee Schedule\n */\n\n /**\n * Constructs a new CurrentAndNextFeeSchedule.\n * @memberof proto\n * @classdesc This contains two Fee Schedules with expiry timestamp.\n * @implements ICurrentAndNextFeeSchedule\n * @constructor\n * @param {proto.ICurrentAndNextFeeSchedule=} [p] Properties to set\n */\n function CurrentAndNextFeeSchedule(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Contains current Fee Schedule\n * @member {proto.IFeeSchedule|null|undefined} currentFeeSchedule\n * @memberof proto.CurrentAndNextFeeSchedule\n * @instance\n */\n CurrentAndNextFeeSchedule.prototype.currentFeeSchedule = null;\n\n /**\n * Contains next Fee Schedule\n * @member {proto.IFeeSchedule|null|undefined} nextFeeSchedule\n * @memberof proto.CurrentAndNextFeeSchedule\n * @instance\n */\n CurrentAndNextFeeSchedule.prototype.nextFeeSchedule = null;\n\n /**\n * Creates a new CurrentAndNextFeeSchedule instance using the specified properties.\n * @function create\n * @memberof proto.CurrentAndNextFeeSchedule\n * @static\n * @param {proto.ICurrentAndNextFeeSchedule=} [properties] Properties to set\n * @returns {proto.CurrentAndNextFeeSchedule} CurrentAndNextFeeSchedule instance\n */\n CurrentAndNextFeeSchedule.create = function create(properties) {\n return new CurrentAndNextFeeSchedule(properties);\n };\n\n /**\n * Encodes the specified CurrentAndNextFeeSchedule message. Does not implicitly {@link proto.CurrentAndNextFeeSchedule.verify|verify} messages.\n * @function encode\n * @memberof proto.CurrentAndNextFeeSchedule\n * @static\n * @param {proto.ICurrentAndNextFeeSchedule} m CurrentAndNextFeeSchedule message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CurrentAndNextFeeSchedule.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.currentFeeSchedule != null && Object.hasOwnProperty.call(m, \"currentFeeSchedule\"))\n $root.proto.FeeSchedule.encode(m.currentFeeSchedule, w.uint32(10).fork()).ldelim();\n if (m.nextFeeSchedule != null && Object.hasOwnProperty.call(m, \"nextFeeSchedule\"))\n $root.proto.FeeSchedule.encode(m.nextFeeSchedule, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a CurrentAndNextFeeSchedule message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CurrentAndNextFeeSchedule\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CurrentAndNextFeeSchedule} CurrentAndNextFeeSchedule\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CurrentAndNextFeeSchedule.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CurrentAndNextFeeSchedule();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.currentFeeSchedule = $root.proto.FeeSchedule.decode(r, r.uint32());\n break;\n case 2:\n m.nextFeeSchedule = $root.proto.FeeSchedule.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CurrentAndNextFeeSchedule;\n })();\n\n proto.ServiceEndpoint = (function() {\n\n /**\n * Properties of a ServiceEndpoint.\n * @memberof proto\n * @interface IServiceEndpoint\n * @property {Uint8Array|null} [ipAddressV4] The 32-bit IPv4 address of the node encoded in left to right order (e.g. 127.0.0.1 has 127\n * as its first byte)\n * @property {number|null} [port] The port of the node\n */\n\n /**\n * Constructs a new ServiceEndpoint.\n * @memberof proto\n * @classdesc Contains the IP address and the port representing a service endpoint of a Node in a network. Used\n * to reach the Hedera API and submit transactions to the network.\n * @implements IServiceEndpoint\n * @constructor\n * @param {proto.IServiceEndpoint=} [p] Properties to set\n */\n function ServiceEndpoint(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The 32-bit IPv4 address of the node encoded in left to right order (e.g. 127.0.0.1 has 127\n * as its first byte)\n * @member {Uint8Array} ipAddressV4\n * @memberof proto.ServiceEndpoint\n * @instance\n */\n ServiceEndpoint.prototype.ipAddressV4 = $util.newBuffer([]);\n\n /**\n * The port of the node\n * @member {number} port\n * @memberof proto.ServiceEndpoint\n * @instance\n */\n ServiceEndpoint.prototype.port = 0;\n\n /**\n * Creates a new ServiceEndpoint instance using the specified properties.\n * @function create\n * @memberof proto.ServiceEndpoint\n * @static\n * @param {proto.IServiceEndpoint=} [properties] Properties to set\n * @returns {proto.ServiceEndpoint} ServiceEndpoint instance\n */\n ServiceEndpoint.create = function create(properties) {\n return new ServiceEndpoint(properties);\n };\n\n /**\n * Encodes the specified ServiceEndpoint message. Does not implicitly {@link proto.ServiceEndpoint.verify|verify} messages.\n * @function encode\n * @memberof proto.ServiceEndpoint\n * @static\n * @param {proto.IServiceEndpoint} m ServiceEndpoint message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ServiceEndpoint.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.ipAddressV4 != null && Object.hasOwnProperty.call(m, \"ipAddressV4\"))\n w.uint32(10).bytes(m.ipAddressV4);\n if (m.port != null && Object.hasOwnProperty.call(m, \"port\"))\n w.uint32(16).int32(m.port);\n return w;\n };\n\n /**\n * Decodes a ServiceEndpoint message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ServiceEndpoint\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ServiceEndpoint} ServiceEndpoint\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ServiceEndpoint.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ServiceEndpoint();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.ipAddressV4 = r.bytes();\n break;\n case 2:\n m.port = r.int32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ServiceEndpoint;\n })();\n\n proto.NodeAddress = (function() {\n\n /**\n * Properties of a NodeAddress.\n * @memberof proto\n * @interface INodeAddress\n * @property {Uint8Array|null} [ipAddress] The IP address of the Node with separator & octets encoded in UTF-8. Usage is deprecated,\n * ServiceEndpoint is preferred to retrieve a node's list of IP addresses and ports\n * @property {number|null} [portno] The port number of the grpc server for the node. Usage is deprecated, ServiceEndpoint is\n * preferred to retrieve a node's list of IP addresses and ports\n * @property {Uint8Array|null} [memo] Usage is deprecated, nodeAccountId is preferred to retrieve a node's account ID\n * @property {string|null} [RSA_PubKey] The node's X509 RSA public key used to sign stream files (e.g., record stream\n * files). Precisely, this field is a string of hexadecimal characters which,\n * translated to binary, are the public key's DER encoding.\n * @property {Long|null} [nodeId] # A non-sequential identifier for the node\n * @property {proto.IAccountID|null} [nodeAccountId] # The account to be paid for queries and transactions sent to this node\n * @property {Uint8Array|null} [nodeCertHash] # Hash of the node's TLS certificate. Precisely, this field is a string of\n * hexadecimal characters which, translated to binary, are the SHA-384 hash of\n * the UTF-8 NFKD encoding of the node's TLS cert in PEM format. Its value can be\n * used to verify the node's certificate it presents during TLS negotiations.\n * @property {Array.|null} [serviceEndpoint] # A node's service IP addresses and ports\n * @property {string|null} [description] A description of the node, with UTF-8 encoding up to 100 bytes\n * @property {Long|null} [stake] The amount of tinybars staked to the node\n */\n\n /**\n * Constructs a new NodeAddress.\n * @memberof proto\n * @classdesc The data about a node, including its service endpoints and the Hedera account to be paid for\n * services provided by the node (that is, queries answered and transactions submitted.)\n * \n * If the serviceEndpoint list is not set, or empty, then the endpoint given by the\n * (deprecated) ipAddress and portno fields should be used.\n * \n * All fields are populated in the 0.0.102 address book file while only fields that start with # are\n * populated in the 0.0.101 address book file.\n * @implements INodeAddress\n * @constructor\n * @param {proto.INodeAddress=} [p] Properties to set\n */\n function NodeAddress(p) {\n this.serviceEndpoint = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The IP address of the Node with separator & octets encoded in UTF-8. Usage is deprecated,\n * ServiceEndpoint is preferred to retrieve a node's list of IP addresses and ports\n * @member {Uint8Array} ipAddress\n * @memberof proto.NodeAddress\n * @instance\n */\n NodeAddress.prototype.ipAddress = $util.newBuffer([]);\n\n /**\n * The port number of the grpc server for the node. Usage is deprecated, ServiceEndpoint is\n * preferred to retrieve a node's list of IP addresses and ports\n * @member {number} portno\n * @memberof proto.NodeAddress\n * @instance\n */\n NodeAddress.prototype.portno = 0;\n\n /**\n * Usage is deprecated, nodeAccountId is preferred to retrieve a node's account ID\n * @member {Uint8Array} memo\n * @memberof proto.NodeAddress\n * @instance\n */\n NodeAddress.prototype.memo = $util.newBuffer([]);\n\n /**\n * The node's X509 RSA public key used to sign stream files (e.g., record stream\n * files). Precisely, this field is a string of hexadecimal characters which,\n * translated to binary, are the public key's DER encoding.\n * @member {string} RSA_PubKey\n * @memberof proto.NodeAddress\n * @instance\n */\n NodeAddress.prototype.RSA_PubKey = \"\";\n\n /**\n * # A non-sequential identifier for the node\n * @member {Long} nodeId\n * @memberof proto.NodeAddress\n * @instance\n */\n NodeAddress.prototype.nodeId = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * # The account to be paid for queries and transactions sent to this node\n * @member {proto.IAccountID|null|undefined} nodeAccountId\n * @memberof proto.NodeAddress\n * @instance\n */\n NodeAddress.prototype.nodeAccountId = null;\n\n /**\n * # Hash of the node's TLS certificate. Precisely, this field is a string of\n * hexadecimal characters which, translated to binary, are the SHA-384 hash of\n * the UTF-8 NFKD encoding of the node's TLS cert in PEM format. Its value can be\n * used to verify the node's certificate it presents during TLS negotiations.\n * @member {Uint8Array} nodeCertHash\n * @memberof proto.NodeAddress\n * @instance\n */\n NodeAddress.prototype.nodeCertHash = $util.newBuffer([]);\n\n /**\n * # A node's service IP addresses and ports\n * @member {Array.} serviceEndpoint\n * @memberof proto.NodeAddress\n * @instance\n */\n NodeAddress.prototype.serviceEndpoint = $util.emptyArray;\n\n /**\n * A description of the node, with UTF-8 encoding up to 100 bytes\n * @member {string} description\n * @memberof proto.NodeAddress\n * @instance\n */\n NodeAddress.prototype.description = \"\";\n\n /**\n * The amount of tinybars staked to the node\n * @member {Long} stake\n * @memberof proto.NodeAddress\n * @instance\n */\n NodeAddress.prototype.stake = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new NodeAddress instance using the specified properties.\n * @function create\n * @memberof proto.NodeAddress\n * @static\n * @param {proto.INodeAddress=} [properties] Properties to set\n * @returns {proto.NodeAddress} NodeAddress instance\n */\n NodeAddress.create = function create(properties) {\n return new NodeAddress(properties);\n };\n\n /**\n * Encodes the specified NodeAddress message. Does not implicitly {@link proto.NodeAddress.verify|verify} messages.\n * @function encode\n * @memberof proto.NodeAddress\n * @static\n * @param {proto.INodeAddress} m NodeAddress message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n NodeAddress.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.ipAddress != null && Object.hasOwnProperty.call(m, \"ipAddress\"))\n w.uint32(10).bytes(m.ipAddress);\n if (m.portno != null && Object.hasOwnProperty.call(m, \"portno\"))\n w.uint32(16).int32(m.portno);\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(26).bytes(m.memo);\n if (m.RSA_PubKey != null && Object.hasOwnProperty.call(m, \"RSA_PubKey\"))\n w.uint32(34).string(m.RSA_PubKey);\n if (m.nodeId != null && Object.hasOwnProperty.call(m, \"nodeId\"))\n w.uint32(40).int64(m.nodeId);\n if (m.nodeAccountId != null && Object.hasOwnProperty.call(m, \"nodeAccountId\"))\n $root.proto.AccountID.encode(m.nodeAccountId, w.uint32(50).fork()).ldelim();\n if (m.nodeCertHash != null && Object.hasOwnProperty.call(m, \"nodeCertHash\"))\n w.uint32(58).bytes(m.nodeCertHash);\n if (m.serviceEndpoint != null && m.serviceEndpoint.length) {\n for (var i = 0; i < m.serviceEndpoint.length; ++i)\n $root.proto.ServiceEndpoint.encode(m.serviceEndpoint[i], w.uint32(66).fork()).ldelim();\n }\n if (m.description != null && Object.hasOwnProperty.call(m, \"description\"))\n w.uint32(74).string(m.description);\n if (m.stake != null && Object.hasOwnProperty.call(m, \"stake\"))\n w.uint32(80).int64(m.stake);\n return w;\n };\n\n /**\n * Decodes a NodeAddress message from the specified reader or buffer.\n * @function decode\n * @memberof proto.NodeAddress\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.NodeAddress} NodeAddress\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n NodeAddress.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.NodeAddress();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.ipAddress = r.bytes();\n break;\n case 2:\n m.portno = r.int32();\n break;\n case 3:\n m.memo = r.bytes();\n break;\n case 4:\n m.RSA_PubKey = r.string();\n break;\n case 5:\n m.nodeId = r.int64();\n break;\n case 6:\n m.nodeAccountId = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 7:\n m.nodeCertHash = r.bytes();\n break;\n case 8:\n if (!(m.serviceEndpoint && m.serviceEndpoint.length))\n m.serviceEndpoint = [];\n m.serviceEndpoint.push($root.proto.ServiceEndpoint.decode(r, r.uint32()));\n break;\n case 9:\n m.description = r.string();\n break;\n case 10:\n m.stake = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return NodeAddress;\n })();\n\n proto.NodeAddressBook = (function() {\n\n /**\n * Properties of a NodeAddressBook.\n * @memberof proto\n * @interface INodeAddressBook\n * @property {Array.|null} [nodeAddress] Metadata of all nodes in the network\n */\n\n /**\n * Constructs a new NodeAddressBook.\n * @memberof proto\n * @classdesc A list of nodes and their metadata that contains all details of the nodes for the network. Used\n * to parse the contents of system files 0.0.101 and 0.0.102.\n * @implements INodeAddressBook\n * @constructor\n * @param {proto.INodeAddressBook=} [p] Properties to set\n */\n function NodeAddressBook(p) {\n this.nodeAddress = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Metadata of all nodes in the network\n * @member {Array.} nodeAddress\n * @memberof proto.NodeAddressBook\n * @instance\n */\n NodeAddressBook.prototype.nodeAddress = $util.emptyArray;\n\n /**\n * Creates a new NodeAddressBook instance using the specified properties.\n * @function create\n * @memberof proto.NodeAddressBook\n * @static\n * @param {proto.INodeAddressBook=} [properties] Properties to set\n * @returns {proto.NodeAddressBook} NodeAddressBook instance\n */\n NodeAddressBook.create = function create(properties) {\n return new NodeAddressBook(properties);\n };\n\n /**\n * Encodes the specified NodeAddressBook message. Does not implicitly {@link proto.NodeAddressBook.verify|verify} messages.\n * @function encode\n * @memberof proto.NodeAddressBook\n * @static\n * @param {proto.INodeAddressBook} m NodeAddressBook message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n NodeAddressBook.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.nodeAddress != null && m.nodeAddress.length) {\n for (var i = 0; i < m.nodeAddress.length; ++i)\n $root.proto.NodeAddress.encode(m.nodeAddress[i], w.uint32(10).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a NodeAddressBook message from the specified reader or buffer.\n * @function decode\n * @memberof proto.NodeAddressBook\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.NodeAddressBook} NodeAddressBook\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n NodeAddressBook.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.NodeAddressBook();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.nodeAddress && m.nodeAddress.length))\n m.nodeAddress = [];\n m.nodeAddress.push($root.proto.NodeAddress.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return NodeAddressBook;\n })();\n\n proto.SemanticVersion = (function() {\n\n /**\n * Properties of a SemanticVersion.\n * @memberof proto\n * @interface ISemanticVersion\n * @property {number|null} [major] Increases with incompatible API changes\n * @property {number|null} [minor] Increases with backwards-compatible new functionality\n * @property {number|null} [patch] Increases with backwards-compatible bug fixes\n * @property {string|null} [pre] A pre-release version MAY be denoted by appending a hyphen and a series of dot separated\n * identifiers (https://semver.org/#spec-item-9); so given a semver 0.14.0-alpha.1+21AF26D3,\n * this field would contain 'alpha.1'\n * @property {string|null} [build] Build metadata MAY be denoted by appending a plus sign and a series of dot separated\n * identifiers immediately following the patch or pre-release version\n * (https://semver.org/#spec-item-10); so given a semver 0.14.0-alpha.1+21AF26D3, this field\n * would contain '21AF26D3'\n */\n\n /**\n * Constructs a new SemanticVersion.\n * @memberof proto\n * @classdesc Hedera follows semantic versioning (https://semver.org/) for both the HAPI protobufs and the\n * Services software. This type allows the getVersionInfo query in the\n * NetworkService to return the deployed versions of both protobufs and software on the\n * node answering the query.\n * @implements ISemanticVersion\n * @constructor\n * @param {proto.ISemanticVersion=} [p] Properties to set\n */\n function SemanticVersion(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Increases with incompatible API changes\n * @member {number} major\n * @memberof proto.SemanticVersion\n * @instance\n */\n SemanticVersion.prototype.major = 0;\n\n /**\n * Increases with backwards-compatible new functionality\n * @member {number} minor\n * @memberof proto.SemanticVersion\n * @instance\n */\n SemanticVersion.prototype.minor = 0;\n\n /**\n * Increases with backwards-compatible bug fixes\n * @member {number} patch\n * @memberof proto.SemanticVersion\n * @instance\n */\n SemanticVersion.prototype.patch = 0;\n\n /**\n * A pre-release version MAY be denoted by appending a hyphen and a series of dot separated\n * identifiers (https://semver.org/#spec-item-9); so given a semver 0.14.0-alpha.1+21AF26D3,\n * this field would contain 'alpha.1'\n * @member {string} pre\n * @memberof proto.SemanticVersion\n * @instance\n */\n SemanticVersion.prototype.pre = \"\";\n\n /**\n * Build metadata MAY be denoted by appending a plus sign and a series of dot separated\n * identifiers immediately following the patch or pre-release version\n * (https://semver.org/#spec-item-10); so given a semver 0.14.0-alpha.1+21AF26D3, this field\n * would contain '21AF26D3'\n * @member {string} build\n * @memberof proto.SemanticVersion\n * @instance\n */\n SemanticVersion.prototype.build = \"\";\n\n /**\n * Creates a new SemanticVersion instance using the specified properties.\n * @function create\n * @memberof proto.SemanticVersion\n * @static\n * @param {proto.ISemanticVersion=} [properties] Properties to set\n * @returns {proto.SemanticVersion} SemanticVersion instance\n */\n SemanticVersion.create = function create(properties) {\n return new SemanticVersion(properties);\n };\n\n /**\n * Encodes the specified SemanticVersion message. Does not implicitly {@link proto.SemanticVersion.verify|verify} messages.\n * @function encode\n * @memberof proto.SemanticVersion\n * @static\n * @param {proto.ISemanticVersion} m SemanticVersion message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n SemanticVersion.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.major != null && Object.hasOwnProperty.call(m, \"major\"))\n w.uint32(8).int32(m.major);\n if (m.minor != null && Object.hasOwnProperty.call(m, \"minor\"))\n w.uint32(16).int32(m.minor);\n if (m.patch != null && Object.hasOwnProperty.call(m, \"patch\"))\n w.uint32(24).int32(m.patch);\n if (m.pre != null && Object.hasOwnProperty.call(m, \"pre\"))\n w.uint32(34).string(m.pre);\n if (m.build != null && Object.hasOwnProperty.call(m, \"build\"))\n w.uint32(42).string(m.build);\n return w;\n };\n\n /**\n * Decodes a SemanticVersion message from the specified reader or buffer.\n * @function decode\n * @memberof proto.SemanticVersion\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.SemanticVersion} SemanticVersion\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n SemanticVersion.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.SemanticVersion();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.major = r.int32();\n break;\n case 2:\n m.minor = r.int32();\n break;\n case 3:\n m.patch = r.int32();\n break;\n case 4:\n m.pre = r.string();\n break;\n case 5:\n m.build = r.string();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return SemanticVersion;\n })();\n\n proto.Setting = (function() {\n\n /**\n * Properties of a Setting.\n * @memberof proto\n * @interface ISetting\n * @property {string|null} [name] name of the property\n * @property {string|null} [value] value of the property\n * @property {Uint8Array|null} [data] any data associated with property\n */\n\n /**\n * Constructs a new Setting.\n * @memberof proto\n * @classdesc UNDOCUMENTED\n * @implements ISetting\n * @constructor\n * @param {proto.ISetting=} [p] Properties to set\n */\n function Setting(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * name of the property\n * @member {string} name\n * @memberof proto.Setting\n * @instance\n */\n Setting.prototype.name = \"\";\n\n /**\n * value of the property\n * @member {string} value\n * @memberof proto.Setting\n * @instance\n */\n Setting.prototype.value = \"\";\n\n /**\n * any data associated with property\n * @member {Uint8Array} data\n * @memberof proto.Setting\n * @instance\n */\n Setting.prototype.data = $util.newBuffer([]);\n\n /**\n * Creates a new Setting instance using the specified properties.\n * @function create\n * @memberof proto.Setting\n * @static\n * @param {proto.ISetting=} [properties] Properties to set\n * @returns {proto.Setting} Setting instance\n */\n Setting.create = function create(properties) {\n return new Setting(properties);\n };\n\n /**\n * Encodes the specified Setting message. Does not implicitly {@link proto.Setting.verify|verify} messages.\n * @function encode\n * @memberof proto.Setting\n * @static\n * @param {proto.ISetting} m Setting message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Setting.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.name != null && Object.hasOwnProperty.call(m, \"name\"))\n w.uint32(10).string(m.name);\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(18).string(m.value);\n if (m.data != null && Object.hasOwnProperty.call(m, \"data\"))\n w.uint32(26).bytes(m.data);\n return w;\n };\n\n /**\n * Decodes a Setting message from the specified reader or buffer.\n * @function decode\n * @memberof proto.Setting\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.Setting} Setting\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Setting.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.Setting();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.name = r.string();\n break;\n case 2:\n m.value = r.string();\n break;\n case 3:\n m.data = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Setting;\n })();\n\n proto.ServicesConfigurationList = (function() {\n\n /**\n * Properties of a ServicesConfigurationList.\n * @memberof proto\n * @interface IServicesConfigurationList\n * @property {Array.|null} [nameValue] list of name value pairs of the application properties\n */\n\n /**\n * Constructs a new ServicesConfigurationList.\n * @memberof proto\n * @classdesc UNDOCUMENTED\n * @implements IServicesConfigurationList\n * @constructor\n * @param {proto.IServicesConfigurationList=} [p] Properties to set\n */\n function ServicesConfigurationList(p) {\n this.nameValue = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * list of name value pairs of the application properties\n * @member {Array.} nameValue\n * @memberof proto.ServicesConfigurationList\n * @instance\n */\n ServicesConfigurationList.prototype.nameValue = $util.emptyArray;\n\n /**\n * Creates a new ServicesConfigurationList instance using the specified properties.\n * @function create\n * @memberof proto.ServicesConfigurationList\n * @static\n * @param {proto.IServicesConfigurationList=} [properties] Properties to set\n * @returns {proto.ServicesConfigurationList} ServicesConfigurationList instance\n */\n ServicesConfigurationList.create = function create(properties) {\n return new ServicesConfigurationList(properties);\n };\n\n /**\n * Encodes the specified ServicesConfigurationList message. Does not implicitly {@link proto.ServicesConfigurationList.verify|verify} messages.\n * @function encode\n * @memberof proto.ServicesConfigurationList\n * @static\n * @param {proto.IServicesConfigurationList} m ServicesConfigurationList message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ServicesConfigurationList.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.nameValue != null && m.nameValue.length) {\n for (var i = 0; i < m.nameValue.length; ++i)\n $root.proto.Setting.encode(m.nameValue[i], w.uint32(10).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a ServicesConfigurationList message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ServicesConfigurationList\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ServicesConfigurationList} ServicesConfigurationList\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ServicesConfigurationList.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ServicesConfigurationList();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.nameValue && m.nameValue.length))\n m.nameValue = [];\n m.nameValue.push($root.proto.Setting.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ServicesConfigurationList;\n })();\n\n proto.TokenRelationship = (function() {\n\n /**\n * Properties of a TokenRelationship.\n * @memberof proto\n * @interface ITokenRelationship\n * @property {proto.ITokenID|null} [tokenId] The ID of the token\n * @property {string|null} [symbol] The Symbol of the token\n * @property {Long|null} [balance] For token of type FUNGIBLE_COMMON - the balance that the Account holds in the smallest\n * denomination. For token of type NON_FUNGIBLE_UNIQUE - the number of NFTs held by the account\n * @property {proto.TokenKycStatus|null} [kycStatus] The KYC status of the account (KycNotApplicable, Granted or Revoked). If the token does not\n * have KYC key, KycNotApplicable is returned\n * @property {proto.TokenFreezeStatus|null} [freezeStatus] The Freeze status of the account (FreezeNotApplicable, Frozen or Unfrozen). If the token does\n * not have Freeze key, FreezeNotApplicable is returned\n * @property {number|null} [decimals] Tokens divide into 10decimals pieces\n * @property {boolean|null} [automaticAssociation] Specifies if the relationship is created implicitly. False : explicitly associated, True :\n * implicitly associated.\n */\n\n /**\n * Constructs a new TokenRelationship.\n * @memberof proto\n * @classdesc Token's information related to the given Account\n * @implements ITokenRelationship\n * @constructor\n * @param {proto.ITokenRelationship=} [p] Properties to set\n */\n function TokenRelationship(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The ID of the token\n * @member {proto.ITokenID|null|undefined} tokenId\n * @memberof proto.TokenRelationship\n * @instance\n */\n TokenRelationship.prototype.tokenId = null;\n\n /**\n * The Symbol of the token\n * @member {string} symbol\n * @memberof proto.TokenRelationship\n * @instance\n */\n TokenRelationship.prototype.symbol = \"\";\n\n /**\n * For token of type FUNGIBLE_COMMON - the balance that the Account holds in the smallest\n * denomination. For token of type NON_FUNGIBLE_UNIQUE - the number of NFTs held by the account\n * @member {Long} balance\n * @memberof proto.TokenRelationship\n * @instance\n */\n TokenRelationship.prototype.balance = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * The KYC status of the account (KycNotApplicable, Granted or Revoked). If the token does not\n * have KYC key, KycNotApplicable is returned\n * @member {proto.TokenKycStatus} kycStatus\n * @memberof proto.TokenRelationship\n * @instance\n */\n TokenRelationship.prototype.kycStatus = 0;\n\n /**\n * The Freeze status of the account (FreezeNotApplicable, Frozen or Unfrozen). If the token does\n * not have Freeze key, FreezeNotApplicable is returned\n * @member {proto.TokenFreezeStatus} freezeStatus\n * @memberof proto.TokenRelationship\n * @instance\n */\n TokenRelationship.prototype.freezeStatus = 0;\n\n /**\n * Tokens divide into 10decimals pieces\n * @member {number} decimals\n * @memberof proto.TokenRelationship\n * @instance\n */\n TokenRelationship.prototype.decimals = 0;\n\n /**\n * Specifies if the relationship is created implicitly. False : explicitly associated, True :\n * implicitly associated.\n * @member {boolean} automaticAssociation\n * @memberof proto.TokenRelationship\n * @instance\n */\n TokenRelationship.prototype.automaticAssociation = false;\n\n /**\n * Creates a new TokenRelationship instance using the specified properties.\n * @function create\n * @memberof proto.TokenRelationship\n * @static\n * @param {proto.ITokenRelationship=} [properties] Properties to set\n * @returns {proto.TokenRelationship} TokenRelationship instance\n */\n TokenRelationship.create = function create(properties) {\n return new TokenRelationship(properties);\n };\n\n /**\n * Encodes the specified TokenRelationship message. Does not implicitly {@link proto.TokenRelationship.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenRelationship\n * @static\n * @param {proto.ITokenRelationship} m TokenRelationship message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenRelationship.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.tokenId != null && Object.hasOwnProperty.call(m, \"tokenId\"))\n $root.proto.TokenID.encode(m.tokenId, w.uint32(10).fork()).ldelim();\n if (m.symbol != null && Object.hasOwnProperty.call(m, \"symbol\"))\n w.uint32(18).string(m.symbol);\n if (m.balance != null && Object.hasOwnProperty.call(m, \"balance\"))\n w.uint32(24).uint64(m.balance);\n if (m.kycStatus != null && Object.hasOwnProperty.call(m, \"kycStatus\"))\n w.uint32(32).int32(m.kycStatus);\n if (m.freezeStatus != null && Object.hasOwnProperty.call(m, \"freezeStatus\"))\n w.uint32(40).int32(m.freezeStatus);\n if (m.decimals != null && Object.hasOwnProperty.call(m, \"decimals\"))\n w.uint32(48).uint32(m.decimals);\n if (m.automaticAssociation != null && Object.hasOwnProperty.call(m, \"automaticAssociation\"))\n w.uint32(56).bool(m.automaticAssociation);\n return w;\n };\n\n /**\n * Decodes a TokenRelationship message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenRelationship\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenRelationship} TokenRelationship\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenRelationship.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenRelationship();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.tokenId = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.symbol = r.string();\n break;\n case 3:\n m.balance = r.uint64();\n break;\n case 4:\n m.kycStatus = r.int32();\n break;\n case 5:\n m.freezeStatus = r.int32();\n break;\n case 6:\n m.decimals = r.uint32();\n break;\n case 7:\n m.automaticAssociation = r.bool();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenRelationship;\n })();\n\n proto.TokenBalance = (function() {\n\n /**\n * Properties of a TokenBalance.\n * @memberof proto\n * @interface ITokenBalance\n * @property {proto.ITokenID|null} [tokenId] A unique token id\n * @property {Long|null} [balance] Number of transferable units of the identified token. For token of type FUNGIBLE_COMMON -\n * balance in the smallest denomination. For token of type NON_FUNGIBLE_UNIQUE - the number of\n * NFTs held by the account\n * @property {number|null} [decimals] Tokens divide into 10decimals pieces\n */\n\n /**\n * Constructs a new TokenBalance.\n * @memberof proto\n * @classdesc A number of transferable units of a certain token.\n * \n * The transferable unit of a token is its smallest denomination, as given by the token's\n * decimals property---each minted token contains 10decimals\n * transferable units. For example, we could think of the cent as the transferable unit of the US\n * dollar (decimals=2); and the tinybar as the transferable unit of hbar\n * (decimals=8).\n * \n * Transferable units are not directly comparable across different tokens.\n * @implements ITokenBalance\n * @constructor\n * @param {proto.ITokenBalance=} [p] Properties to set\n */\n function TokenBalance(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * A unique token id\n * @member {proto.ITokenID|null|undefined} tokenId\n * @memberof proto.TokenBalance\n * @instance\n */\n TokenBalance.prototype.tokenId = null;\n\n /**\n * Number of transferable units of the identified token. For token of type FUNGIBLE_COMMON -\n * balance in the smallest denomination. For token of type NON_FUNGIBLE_UNIQUE - the number of\n * NFTs held by the account\n * @member {Long} balance\n * @memberof proto.TokenBalance\n * @instance\n */\n TokenBalance.prototype.balance = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Tokens divide into 10decimals pieces\n * @member {number} decimals\n * @memberof proto.TokenBalance\n * @instance\n */\n TokenBalance.prototype.decimals = 0;\n\n /**\n * Creates a new TokenBalance instance using the specified properties.\n * @function create\n * @memberof proto.TokenBalance\n * @static\n * @param {proto.ITokenBalance=} [properties] Properties to set\n * @returns {proto.TokenBalance} TokenBalance instance\n */\n TokenBalance.create = function create(properties) {\n return new TokenBalance(properties);\n };\n\n /**\n * Encodes the specified TokenBalance message. Does not implicitly {@link proto.TokenBalance.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenBalance\n * @static\n * @param {proto.ITokenBalance} m TokenBalance message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenBalance.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.tokenId != null && Object.hasOwnProperty.call(m, \"tokenId\"))\n $root.proto.TokenID.encode(m.tokenId, w.uint32(10).fork()).ldelim();\n if (m.balance != null && Object.hasOwnProperty.call(m, \"balance\"))\n w.uint32(16).uint64(m.balance);\n if (m.decimals != null && Object.hasOwnProperty.call(m, \"decimals\"))\n w.uint32(24).uint32(m.decimals);\n return w;\n };\n\n /**\n * Decodes a TokenBalance message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenBalance\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenBalance} TokenBalance\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenBalance.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenBalance();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.tokenId = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.balance = r.uint64();\n break;\n case 3:\n m.decimals = r.uint32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenBalance;\n })();\n\n proto.TokenBalances = (function() {\n\n /**\n * Properties of a TokenBalances.\n * @memberof proto\n * @interface ITokenBalances\n * @property {Array.|null} [tokenBalances] TokenBalances tokenBalances\n */\n\n /**\n * Constructs a new TokenBalances.\n * @memberof proto\n * @classdesc A sequence of token balances\n * @implements ITokenBalances\n * @constructor\n * @param {proto.ITokenBalances=} [p] Properties to set\n */\n function TokenBalances(p) {\n this.tokenBalances = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * TokenBalances tokenBalances.\n * @member {Array.} tokenBalances\n * @memberof proto.TokenBalances\n * @instance\n */\n TokenBalances.prototype.tokenBalances = $util.emptyArray;\n\n /**\n * Creates a new TokenBalances instance using the specified properties.\n * @function create\n * @memberof proto.TokenBalances\n * @static\n * @param {proto.ITokenBalances=} [properties] Properties to set\n * @returns {proto.TokenBalances} TokenBalances instance\n */\n TokenBalances.create = function create(properties) {\n return new TokenBalances(properties);\n };\n\n /**\n * Encodes the specified TokenBalances message. Does not implicitly {@link proto.TokenBalances.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenBalances\n * @static\n * @param {proto.ITokenBalances} m TokenBalances message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenBalances.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.tokenBalances != null && m.tokenBalances.length) {\n for (var i = 0; i < m.tokenBalances.length; ++i)\n $root.proto.TokenBalance.encode(m.tokenBalances[i], w.uint32(10).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TokenBalances message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenBalances\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenBalances} TokenBalances\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenBalances.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenBalances();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.tokenBalances && m.tokenBalances.length))\n m.tokenBalances = [];\n m.tokenBalances.push($root.proto.TokenBalance.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenBalances;\n })();\n\n proto.TokenAssociation = (function() {\n\n /**\n * Properties of a TokenAssociation.\n * @memberof proto\n * @interface ITokenAssociation\n * @property {proto.ITokenID|null} [tokenId] TokenAssociation tokenId\n * @property {proto.IAccountID|null} [accountId] TokenAssociation accountId\n */\n\n /**\n * Constructs a new TokenAssociation.\n * @memberof proto\n * @classdesc Represents a TokenAssociation.\n * @implements ITokenAssociation\n * @constructor\n * @param {proto.ITokenAssociation=} [p] Properties to set\n */\n function TokenAssociation(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * TokenAssociation tokenId.\n * @member {proto.ITokenID|null|undefined} tokenId\n * @memberof proto.TokenAssociation\n * @instance\n */\n TokenAssociation.prototype.tokenId = null;\n\n /**\n * TokenAssociation accountId.\n * @member {proto.IAccountID|null|undefined} accountId\n * @memberof proto.TokenAssociation\n * @instance\n */\n TokenAssociation.prototype.accountId = null;\n\n /**\n * Creates a new TokenAssociation instance using the specified properties.\n * @function create\n * @memberof proto.TokenAssociation\n * @static\n * @param {proto.ITokenAssociation=} [properties] Properties to set\n * @returns {proto.TokenAssociation} TokenAssociation instance\n */\n TokenAssociation.create = function create(properties) {\n return new TokenAssociation(properties);\n };\n\n /**\n * Encodes the specified TokenAssociation message. Does not implicitly {@link proto.TokenAssociation.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenAssociation\n * @static\n * @param {proto.ITokenAssociation} m TokenAssociation message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenAssociation.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.tokenId != null && Object.hasOwnProperty.call(m, \"tokenId\"))\n $root.proto.TokenID.encode(m.tokenId, w.uint32(10).fork()).ldelim();\n if (m.accountId != null && Object.hasOwnProperty.call(m, \"accountId\"))\n $root.proto.AccountID.encode(m.accountId, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenAssociation message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenAssociation\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenAssociation} TokenAssociation\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenAssociation.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenAssociation();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.tokenId = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.accountId = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenAssociation;\n })();\n\n proto.CryptoAllowance = (function() {\n\n /**\n * Properties of a CryptoAllowance.\n * @memberof proto\n * @interface ICryptoAllowance\n * @property {proto.IAccountID|null} [owner] The account ID of the hbar owner (ie. the grantor of the allowance).\n * @property {proto.IAccountID|null} [spender] The account ID of the spender of the hbar allowance.\n * @property {Long|null} [amount] The amount of the spender's allowance in tinybars.\n */\n\n /**\n * Constructs a new CryptoAllowance.\n * @memberof proto\n * @classdesc An approved allowance of hbar transfers for a spender.\n * @implements ICryptoAllowance\n * @constructor\n * @param {proto.ICryptoAllowance=} [p] Properties to set\n */\n function CryptoAllowance(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The account ID of the hbar owner (ie. the grantor of the allowance).\n * @member {proto.IAccountID|null|undefined} owner\n * @memberof proto.CryptoAllowance\n * @instance\n */\n CryptoAllowance.prototype.owner = null;\n\n /**\n * The account ID of the spender of the hbar allowance.\n * @member {proto.IAccountID|null|undefined} spender\n * @memberof proto.CryptoAllowance\n * @instance\n */\n CryptoAllowance.prototype.spender = null;\n\n /**\n * The amount of the spender's allowance in tinybars.\n * @member {Long} amount\n * @memberof proto.CryptoAllowance\n * @instance\n */\n CryptoAllowance.prototype.amount = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new CryptoAllowance instance using the specified properties.\n * @function create\n * @memberof proto.CryptoAllowance\n * @static\n * @param {proto.ICryptoAllowance=} [properties] Properties to set\n * @returns {proto.CryptoAllowance} CryptoAllowance instance\n */\n CryptoAllowance.create = function create(properties) {\n return new CryptoAllowance(properties);\n };\n\n /**\n * Encodes the specified CryptoAllowance message. Does not implicitly {@link proto.CryptoAllowance.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoAllowance\n * @static\n * @param {proto.ICryptoAllowance} m CryptoAllowance message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoAllowance.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.owner != null && Object.hasOwnProperty.call(m, \"owner\"))\n $root.proto.AccountID.encode(m.owner, w.uint32(10).fork()).ldelim();\n if (m.spender != null && Object.hasOwnProperty.call(m, \"spender\"))\n $root.proto.AccountID.encode(m.spender, w.uint32(18).fork()).ldelim();\n if (m.amount != null && Object.hasOwnProperty.call(m, \"amount\"))\n w.uint32(24).int64(m.amount);\n return w;\n };\n\n /**\n * Decodes a CryptoAllowance message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoAllowance\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoAllowance} CryptoAllowance\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoAllowance.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoAllowance();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.owner = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n m.spender = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.amount = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoAllowance;\n })();\n\n proto.NftAllowance = (function() {\n\n /**\n * Properties of a NftAllowance.\n * @memberof proto\n * @interface INftAllowance\n * @property {proto.ITokenID|null} [tokenId] The token that the allowance pertains to.\n * @property {proto.IAccountID|null} [owner] The account ID of the token owner (ie. the grantor of the allowance).\n * @property {proto.IAccountID|null} [spender] The account ID of the token allowance spender.\n * @property {Array.|null} [serialNumbers] The list of serial numbers that the spender is permitted to transfer.\n * @property {google.protobuf.IBoolValue|null} [approvedForAll] If true, the spender has access to all of the account owner's NFT instances (currently\n * owned and any in the future). If this field is set to true the serialNumbers field\n * should be empty.\n */\n\n /**\n * Constructs a new NftAllowance.\n * @memberof proto\n * @classdesc An approved allowance of non-fungible token transfers for a spender.\n * @implements INftAllowance\n * @constructor\n * @param {proto.INftAllowance=} [p] Properties to set\n */\n function NftAllowance(p) {\n this.serialNumbers = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token that the allowance pertains to.\n * @member {proto.ITokenID|null|undefined} tokenId\n * @memberof proto.NftAllowance\n * @instance\n */\n NftAllowance.prototype.tokenId = null;\n\n /**\n * The account ID of the token owner (ie. the grantor of the allowance).\n * @member {proto.IAccountID|null|undefined} owner\n * @memberof proto.NftAllowance\n * @instance\n */\n NftAllowance.prototype.owner = null;\n\n /**\n * The account ID of the token allowance spender.\n * @member {proto.IAccountID|null|undefined} spender\n * @memberof proto.NftAllowance\n * @instance\n */\n NftAllowance.prototype.spender = null;\n\n /**\n * The list of serial numbers that the spender is permitted to transfer.\n * @member {Array.} serialNumbers\n * @memberof proto.NftAllowance\n * @instance\n */\n NftAllowance.prototype.serialNumbers = $util.emptyArray;\n\n /**\n * If true, the spender has access to all of the account owner's NFT instances (currently\n * owned and any in the future). If this field is set to true the serialNumbers field\n * should be empty.\n * @member {google.protobuf.IBoolValue|null|undefined} approvedForAll\n * @memberof proto.NftAllowance\n * @instance\n */\n NftAllowance.prototype.approvedForAll = null;\n\n /**\n * Creates a new NftAllowance instance using the specified properties.\n * @function create\n * @memberof proto.NftAllowance\n * @static\n * @param {proto.INftAllowance=} [properties] Properties to set\n * @returns {proto.NftAllowance} NftAllowance instance\n */\n NftAllowance.create = function create(properties) {\n return new NftAllowance(properties);\n };\n\n /**\n * Encodes the specified NftAllowance message. Does not implicitly {@link proto.NftAllowance.verify|verify} messages.\n * @function encode\n * @memberof proto.NftAllowance\n * @static\n * @param {proto.INftAllowance} m NftAllowance message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n NftAllowance.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.tokenId != null && Object.hasOwnProperty.call(m, \"tokenId\"))\n $root.proto.TokenID.encode(m.tokenId, w.uint32(10).fork()).ldelim();\n if (m.owner != null && Object.hasOwnProperty.call(m, \"owner\"))\n $root.proto.AccountID.encode(m.owner, w.uint32(18).fork()).ldelim();\n if (m.spender != null && Object.hasOwnProperty.call(m, \"spender\"))\n $root.proto.AccountID.encode(m.spender, w.uint32(26).fork()).ldelim();\n if (m.serialNumbers != null && m.serialNumbers.length) {\n w.uint32(34).fork();\n for (var i = 0; i < m.serialNumbers.length; ++i)\n w.int64(m.serialNumbers[i]);\n w.ldelim();\n }\n if (m.approvedForAll != null && Object.hasOwnProperty.call(m, \"approvedForAll\"))\n $root.google.protobuf.BoolValue.encode(m.approvedForAll, w.uint32(42).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a NftAllowance message from the specified reader or buffer.\n * @function decode\n * @memberof proto.NftAllowance\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.NftAllowance} NftAllowance\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n NftAllowance.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.NftAllowance();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.tokenId = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.owner = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.spender = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 4:\n if (!(m.serialNumbers && m.serialNumbers.length))\n m.serialNumbers = [];\n if ((t & 7) === 2) {\n var c2 = r.uint32() + r.pos;\n while (r.pos < c2)\n m.serialNumbers.push(r.int64());\n } else\n m.serialNumbers.push(r.int64());\n break;\n case 5:\n m.approvedForAll = $root.google.protobuf.BoolValue.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return NftAllowance;\n })();\n\n proto.TokenAllowance = (function() {\n\n /**\n * Properties of a TokenAllowance.\n * @memberof proto\n * @interface ITokenAllowance\n * @property {proto.ITokenID|null} [tokenId] The token that the allowance pertains to.\n * @property {proto.IAccountID|null} [owner] The account ID of the token owner (ie. the grantor of the allowance).\n * @property {proto.IAccountID|null} [spender] The account ID of the token allowance spender.\n * @property {Long|null} [amount] The amount of the spender's token allowance.\n */\n\n /**\n * Constructs a new TokenAllowance.\n * @memberof proto\n * @classdesc An approved allowance of fungible token transfers for a spender.\n * @implements ITokenAllowance\n * @constructor\n * @param {proto.ITokenAllowance=} [p] Properties to set\n */\n function TokenAllowance(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token that the allowance pertains to.\n * @member {proto.ITokenID|null|undefined} tokenId\n * @memberof proto.TokenAllowance\n * @instance\n */\n TokenAllowance.prototype.tokenId = null;\n\n /**\n * The account ID of the token owner (ie. the grantor of the allowance).\n * @member {proto.IAccountID|null|undefined} owner\n * @memberof proto.TokenAllowance\n * @instance\n */\n TokenAllowance.prototype.owner = null;\n\n /**\n * The account ID of the token allowance spender.\n * @member {proto.IAccountID|null|undefined} spender\n * @memberof proto.TokenAllowance\n * @instance\n */\n TokenAllowance.prototype.spender = null;\n\n /**\n * The amount of the spender's token allowance.\n * @member {Long} amount\n * @memberof proto.TokenAllowance\n * @instance\n */\n TokenAllowance.prototype.amount = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new TokenAllowance instance using the specified properties.\n * @function create\n * @memberof proto.TokenAllowance\n * @static\n * @param {proto.ITokenAllowance=} [properties] Properties to set\n * @returns {proto.TokenAllowance} TokenAllowance instance\n */\n TokenAllowance.create = function create(properties) {\n return new TokenAllowance(properties);\n };\n\n /**\n * Encodes the specified TokenAllowance message. Does not implicitly {@link proto.TokenAllowance.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenAllowance\n * @static\n * @param {proto.ITokenAllowance} m TokenAllowance message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenAllowance.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.tokenId != null && Object.hasOwnProperty.call(m, \"tokenId\"))\n $root.proto.TokenID.encode(m.tokenId, w.uint32(10).fork()).ldelim();\n if (m.owner != null && Object.hasOwnProperty.call(m, \"owner\"))\n $root.proto.AccountID.encode(m.owner, w.uint32(18).fork()).ldelim();\n if (m.spender != null && Object.hasOwnProperty.call(m, \"spender\"))\n $root.proto.AccountID.encode(m.spender, w.uint32(26).fork()).ldelim();\n if (m.amount != null && Object.hasOwnProperty.call(m, \"amount\"))\n w.uint32(32).int64(m.amount);\n return w;\n };\n\n /**\n * Decodes a TokenAllowance message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenAllowance\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenAllowance} TokenAllowance\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenAllowance.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenAllowance();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.tokenId = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.owner = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.spender = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 4:\n m.amount = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenAllowance;\n })();\n\n proto.Timestamp = (function() {\n\n /**\n * Properties of a Timestamp.\n * @memberof proto\n * @interface ITimestamp\n * @property {Long|null} [seconds] Number of complete seconds since the start of the epoch\n * @property {number|null} [nanos] Number of nanoseconds since the start of the last second\n */\n\n /**\n * Constructs a new Timestamp.\n * @memberof proto\n * @classdesc An exact date and time. This is the same data structure as the protobuf Timestamp.proto (see the\n * comments in https://github.com/google/protobuf/blob/master/src/google/protobuf/timestamp.proto)\n * @implements ITimestamp\n * @constructor\n * @param {proto.ITimestamp=} [p] Properties to set\n */\n function Timestamp(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Number of complete seconds since the start of the epoch\n * @member {Long} seconds\n * @memberof proto.Timestamp\n * @instance\n */\n Timestamp.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Number of nanoseconds since the start of the last second\n * @member {number} nanos\n * @memberof proto.Timestamp\n * @instance\n */\n Timestamp.prototype.nanos = 0;\n\n /**\n * Creates a new Timestamp instance using the specified properties.\n * @function create\n * @memberof proto.Timestamp\n * @static\n * @param {proto.ITimestamp=} [properties] Properties to set\n * @returns {proto.Timestamp} Timestamp instance\n */\n Timestamp.create = function create(properties) {\n return new Timestamp(properties);\n };\n\n /**\n * Encodes the specified Timestamp message. Does not implicitly {@link proto.Timestamp.verify|verify} messages.\n * @function encode\n * @memberof proto.Timestamp\n * @static\n * @param {proto.ITimestamp} m Timestamp message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Timestamp.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.seconds != null && Object.hasOwnProperty.call(m, \"seconds\"))\n w.uint32(8).int64(m.seconds);\n if (m.nanos != null && Object.hasOwnProperty.call(m, \"nanos\"))\n w.uint32(16).int32(m.nanos);\n return w;\n };\n\n /**\n * Decodes a Timestamp message from the specified reader or buffer.\n * @function decode\n * @memberof proto.Timestamp\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.Timestamp} Timestamp\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Timestamp.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.Timestamp();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.seconds = r.int64();\n break;\n case 2:\n m.nanos = r.int32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Timestamp;\n })();\n\n proto.TimestampSeconds = (function() {\n\n /**\n * Properties of a TimestampSeconds.\n * @memberof proto\n * @interface ITimestampSeconds\n * @property {Long|null} [seconds] Number of complete seconds since the start of the epoch\n */\n\n /**\n * Constructs a new TimestampSeconds.\n * @memberof proto\n * @classdesc An exact date and time, with a resolution of one second (no nanoseconds).\n * @implements ITimestampSeconds\n * @constructor\n * @param {proto.ITimestampSeconds=} [p] Properties to set\n */\n function TimestampSeconds(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Number of complete seconds since the start of the epoch\n * @member {Long} seconds\n * @memberof proto.TimestampSeconds\n * @instance\n */\n TimestampSeconds.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new TimestampSeconds instance using the specified properties.\n * @function create\n * @memberof proto.TimestampSeconds\n * @static\n * @param {proto.ITimestampSeconds=} [properties] Properties to set\n * @returns {proto.TimestampSeconds} TimestampSeconds instance\n */\n TimestampSeconds.create = function create(properties) {\n return new TimestampSeconds(properties);\n };\n\n /**\n * Encodes the specified TimestampSeconds message. Does not implicitly {@link proto.TimestampSeconds.verify|verify} messages.\n * @function encode\n * @memberof proto.TimestampSeconds\n * @static\n * @param {proto.ITimestampSeconds} m TimestampSeconds message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TimestampSeconds.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.seconds != null && Object.hasOwnProperty.call(m, \"seconds\"))\n w.uint32(8).int64(m.seconds);\n return w;\n };\n\n /**\n * Decodes a TimestampSeconds message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TimestampSeconds\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TimestampSeconds} TimestampSeconds\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TimestampSeconds.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TimestampSeconds();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.seconds = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TimestampSeconds;\n })();\n\n proto.ConsensusCreateTopicTransactionBody = (function() {\n\n /**\n * Properties of a ConsensusCreateTopicTransactionBody.\n * @memberof proto\n * @interface IConsensusCreateTopicTransactionBody\n * @property {string|null} [memo] Short publicly visible memo about the topic. No guarantee of uniqueness.\n * @property {proto.IKey|null} [adminKey] Access control for updateTopic/deleteTopic.\n * Anyone can increase the topic's expirationTime via ConsensusService.updateTopic(), regardless of the adminKey.\n * If no adminKey is specified, updateTopic may only be used to extend the topic's expirationTime, and deleteTopic\n * is disallowed.\n * @property {proto.IKey|null} [submitKey] Access control for submitMessage.\n * If unspecified, no access control is performed on ConsensusService.submitMessage (all submissions are allowed).\n * @property {proto.IDuration|null} [autoRenewPeriod] The initial lifetime of the topic and the amount of time to attempt to extend the topic's lifetime by\n * automatically at the topic's expirationTime, if the autoRenewAccount is configured (once autoRenew functionality\n * is supported by HAPI).\n * Limited to MIN_AUTORENEW_PERIOD and MAX_AUTORENEW_PERIOD value by server-side configuration.\n * Required.\n * @property {proto.IAccountID|null} [autoRenewAccount] Optional account to be used at the topic's expirationTime to extend the life of the topic (once autoRenew\n * functionality is supported by HAPI).\n * The topic lifetime will be extended up to a maximum of the autoRenewPeriod or however long the topic\n * can be extended using all funds on the account (whichever is the smaller duration/amount and if any extension\n * is possible with the account's funds).\n * If specified, there must be an adminKey and the autoRenewAccount must sign this transaction.\n */\n\n /**\n * Constructs a new ConsensusCreateTopicTransactionBody.\n * @memberof proto\n * @classdesc See [ConsensusService.createTopic()](#proto.ConsensusService)\n * @implements IConsensusCreateTopicTransactionBody\n * @constructor\n * @param {proto.IConsensusCreateTopicTransactionBody=} [p] Properties to set\n */\n function ConsensusCreateTopicTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Short publicly visible memo about the topic. No guarantee of uniqueness.\n * @member {string} memo\n * @memberof proto.ConsensusCreateTopicTransactionBody\n * @instance\n */\n ConsensusCreateTopicTransactionBody.prototype.memo = \"\";\n\n /**\n * Access control for updateTopic/deleteTopic.\n * Anyone can increase the topic's expirationTime via ConsensusService.updateTopic(), regardless of the adminKey.\n * If no adminKey is specified, updateTopic may only be used to extend the topic's expirationTime, and deleteTopic\n * is disallowed.\n * @member {proto.IKey|null|undefined} adminKey\n * @memberof proto.ConsensusCreateTopicTransactionBody\n * @instance\n */\n ConsensusCreateTopicTransactionBody.prototype.adminKey = null;\n\n /**\n * Access control for submitMessage.\n * If unspecified, no access control is performed on ConsensusService.submitMessage (all submissions are allowed).\n * @member {proto.IKey|null|undefined} submitKey\n * @memberof proto.ConsensusCreateTopicTransactionBody\n * @instance\n */\n ConsensusCreateTopicTransactionBody.prototype.submitKey = null;\n\n /**\n * The initial lifetime of the topic and the amount of time to attempt to extend the topic's lifetime by\n * automatically at the topic's expirationTime, if the autoRenewAccount is configured (once autoRenew functionality\n * is supported by HAPI).\n * Limited to MIN_AUTORENEW_PERIOD and MAX_AUTORENEW_PERIOD value by server-side configuration.\n * Required.\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.ConsensusCreateTopicTransactionBody\n * @instance\n */\n ConsensusCreateTopicTransactionBody.prototype.autoRenewPeriod = null;\n\n /**\n * Optional account to be used at the topic's expirationTime to extend the life of the topic (once autoRenew\n * functionality is supported by HAPI).\n * The topic lifetime will be extended up to a maximum of the autoRenewPeriod or however long the topic\n * can be extended using all funds on the account (whichever is the smaller duration/amount and if any extension\n * is possible with the account's funds).\n * If specified, there must be an adminKey and the autoRenewAccount must sign this transaction.\n * @member {proto.IAccountID|null|undefined} autoRenewAccount\n * @memberof proto.ConsensusCreateTopicTransactionBody\n * @instance\n */\n ConsensusCreateTopicTransactionBody.prototype.autoRenewAccount = null;\n\n /**\n * Creates a new ConsensusCreateTopicTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.ConsensusCreateTopicTransactionBody\n * @static\n * @param {proto.IConsensusCreateTopicTransactionBody=} [properties] Properties to set\n * @returns {proto.ConsensusCreateTopicTransactionBody} ConsensusCreateTopicTransactionBody instance\n */\n ConsensusCreateTopicTransactionBody.create = function create(properties) {\n return new ConsensusCreateTopicTransactionBody(properties);\n };\n\n /**\n * Encodes the specified ConsensusCreateTopicTransactionBody message. Does not implicitly {@link proto.ConsensusCreateTopicTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.ConsensusCreateTopicTransactionBody\n * @static\n * @param {proto.IConsensusCreateTopicTransactionBody} m ConsensusCreateTopicTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ConsensusCreateTopicTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(10).string(m.memo);\n if (m.adminKey != null && Object.hasOwnProperty.call(m, \"adminKey\"))\n $root.proto.Key.encode(m.adminKey, w.uint32(18).fork()).ldelim();\n if (m.submitKey != null && Object.hasOwnProperty.call(m, \"submitKey\"))\n $root.proto.Key.encode(m.submitKey, w.uint32(26).fork()).ldelim();\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(50).fork()).ldelim();\n if (m.autoRenewAccount != null && Object.hasOwnProperty.call(m, \"autoRenewAccount\"))\n $root.proto.AccountID.encode(m.autoRenewAccount, w.uint32(58).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ConsensusCreateTopicTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ConsensusCreateTopicTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ConsensusCreateTopicTransactionBody} ConsensusCreateTopicTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ConsensusCreateTopicTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ConsensusCreateTopicTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.memo = r.string();\n break;\n case 2:\n m.adminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 3:\n m.submitKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 6:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 7:\n m.autoRenewAccount = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ConsensusCreateTopicTransactionBody;\n })();\n\n proto.Duration = (function() {\n\n /**\n * Properties of a Duration.\n * @memberof proto\n * @interface IDuration\n * @property {Long|null} [seconds] The number of seconds\n */\n\n /**\n * Constructs a new Duration.\n * @memberof proto\n * @classdesc A length of time in seconds.\n * @implements IDuration\n * @constructor\n * @param {proto.IDuration=} [p] Properties to set\n */\n function Duration(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The number of seconds\n * @member {Long} seconds\n * @memberof proto.Duration\n * @instance\n */\n Duration.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new Duration instance using the specified properties.\n * @function create\n * @memberof proto.Duration\n * @static\n * @param {proto.IDuration=} [properties] Properties to set\n * @returns {proto.Duration} Duration instance\n */\n Duration.create = function create(properties) {\n return new Duration(properties);\n };\n\n /**\n * Encodes the specified Duration message. Does not implicitly {@link proto.Duration.verify|verify} messages.\n * @function encode\n * @memberof proto.Duration\n * @static\n * @param {proto.IDuration} m Duration message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Duration.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.seconds != null && Object.hasOwnProperty.call(m, \"seconds\"))\n w.uint32(8).int64(m.seconds);\n return w;\n };\n\n /**\n * Decodes a Duration message from the specified reader or buffer.\n * @function decode\n * @memberof proto.Duration\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.Duration} Duration\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Duration.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.Duration();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.seconds = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Duration;\n })();\n\n proto.ConsensusDeleteTopicTransactionBody = (function() {\n\n /**\n * Properties of a ConsensusDeleteTopicTransactionBody.\n * @memberof proto\n * @interface IConsensusDeleteTopicTransactionBody\n * @property {proto.ITopicID|null} [topicID] Topic identifier\n */\n\n /**\n * Constructs a new ConsensusDeleteTopicTransactionBody.\n * @memberof proto\n * @classdesc See [ConsensusService.deleteTopic()](#proto.ConsensusService)\n * @implements IConsensusDeleteTopicTransactionBody\n * @constructor\n * @param {proto.IConsensusDeleteTopicTransactionBody=} [p] Properties to set\n */\n function ConsensusDeleteTopicTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Topic identifier\n * @member {proto.ITopicID|null|undefined} topicID\n * @memberof proto.ConsensusDeleteTopicTransactionBody\n * @instance\n */\n ConsensusDeleteTopicTransactionBody.prototype.topicID = null;\n\n /**\n * Creates a new ConsensusDeleteTopicTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.ConsensusDeleteTopicTransactionBody\n * @static\n * @param {proto.IConsensusDeleteTopicTransactionBody=} [properties] Properties to set\n * @returns {proto.ConsensusDeleteTopicTransactionBody} ConsensusDeleteTopicTransactionBody instance\n */\n ConsensusDeleteTopicTransactionBody.create = function create(properties) {\n return new ConsensusDeleteTopicTransactionBody(properties);\n };\n\n /**\n * Encodes the specified ConsensusDeleteTopicTransactionBody message. Does not implicitly {@link proto.ConsensusDeleteTopicTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.ConsensusDeleteTopicTransactionBody\n * @static\n * @param {proto.IConsensusDeleteTopicTransactionBody} m ConsensusDeleteTopicTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ConsensusDeleteTopicTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.topicID != null && Object.hasOwnProperty.call(m, \"topicID\"))\n $root.proto.TopicID.encode(m.topicID, w.uint32(10).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ConsensusDeleteTopicTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ConsensusDeleteTopicTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ConsensusDeleteTopicTransactionBody} ConsensusDeleteTopicTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ConsensusDeleteTopicTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ConsensusDeleteTopicTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.topicID = $root.proto.TopicID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ConsensusDeleteTopicTransactionBody;\n })();\n\n proto.ConsensusGetTopicInfoQuery = (function() {\n\n /**\n * Properties of a ConsensusGetTopicInfoQuery.\n * @memberof proto\n * @interface IConsensusGetTopicInfoQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of response is requested\n * (cost, state proof, both, or neither).\n * @property {proto.ITopicID|null} [topicID] The Topic for which information is being requested\n */\n\n /**\n * Constructs a new ConsensusGetTopicInfoQuery.\n * @memberof proto\n * @classdesc See [ConsensusService.getTopicInfo()](#proto.ConsensusService)\n * @implements IConsensusGetTopicInfoQuery\n * @constructor\n * @param {proto.IConsensusGetTopicInfoQuery=} [p] Properties to set\n */\n function ConsensusGetTopicInfoQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of response is requested\n * (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.ConsensusGetTopicInfoQuery\n * @instance\n */\n ConsensusGetTopicInfoQuery.prototype.header = null;\n\n /**\n * The Topic for which information is being requested\n * @member {proto.ITopicID|null|undefined} topicID\n * @memberof proto.ConsensusGetTopicInfoQuery\n * @instance\n */\n ConsensusGetTopicInfoQuery.prototype.topicID = null;\n\n /**\n * Creates a new ConsensusGetTopicInfoQuery instance using the specified properties.\n * @function create\n * @memberof proto.ConsensusGetTopicInfoQuery\n * @static\n * @param {proto.IConsensusGetTopicInfoQuery=} [properties] Properties to set\n * @returns {proto.ConsensusGetTopicInfoQuery} ConsensusGetTopicInfoQuery instance\n */\n ConsensusGetTopicInfoQuery.create = function create(properties) {\n return new ConsensusGetTopicInfoQuery(properties);\n };\n\n /**\n * Encodes the specified ConsensusGetTopicInfoQuery message. Does not implicitly {@link proto.ConsensusGetTopicInfoQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.ConsensusGetTopicInfoQuery\n * @static\n * @param {proto.IConsensusGetTopicInfoQuery} m ConsensusGetTopicInfoQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ConsensusGetTopicInfoQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.topicID != null && Object.hasOwnProperty.call(m, \"topicID\"))\n $root.proto.TopicID.encode(m.topicID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ConsensusGetTopicInfoQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ConsensusGetTopicInfoQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ConsensusGetTopicInfoQuery} ConsensusGetTopicInfoQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ConsensusGetTopicInfoQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ConsensusGetTopicInfoQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.topicID = $root.proto.TopicID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ConsensusGetTopicInfoQuery;\n })();\n\n proto.ConsensusGetTopicInfoResponse = (function() {\n\n /**\n * Properties of a ConsensusGetTopicInfoResponse.\n * @memberof proto\n * @interface IConsensusGetTopicInfoResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof, or both, or neither.\n * @property {proto.ITopicID|null} [topicID] Topic identifier.\n * @property {proto.IConsensusTopicInfo|null} [topicInfo] Current state of the topic\n */\n\n /**\n * Constructs a new ConsensusGetTopicInfoResponse.\n * @memberof proto\n * @classdesc Retrieve the parameters of and state of a consensus topic.\n * @implements IConsensusGetTopicInfoResponse\n * @constructor\n * @param {proto.IConsensusGetTopicInfoResponse=} [p] Properties to set\n */\n function ConsensusGetTopicInfoResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof, or both, or neither.\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.ConsensusGetTopicInfoResponse\n * @instance\n */\n ConsensusGetTopicInfoResponse.prototype.header = null;\n\n /**\n * Topic identifier.\n * @member {proto.ITopicID|null|undefined} topicID\n * @memberof proto.ConsensusGetTopicInfoResponse\n * @instance\n */\n ConsensusGetTopicInfoResponse.prototype.topicID = null;\n\n /**\n * Current state of the topic\n * @member {proto.IConsensusTopicInfo|null|undefined} topicInfo\n * @memberof proto.ConsensusGetTopicInfoResponse\n * @instance\n */\n ConsensusGetTopicInfoResponse.prototype.topicInfo = null;\n\n /**\n * Creates a new ConsensusGetTopicInfoResponse instance using the specified properties.\n * @function create\n * @memberof proto.ConsensusGetTopicInfoResponse\n * @static\n * @param {proto.IConsensusGetTopicInfoResponse=} [properties] Properties to set\n * @returns {proto.ConsensusGetTopicInfoResponse} ConsensusGetTopicInfoResponse instance\n */\n ConsensusGetTopicInfoResponse.create = function create(properties) {\n return new ConsensusGetTopicInfoResponse(properties);\n };\n\n /**\n * Encodes the specified ConsensusGetTopicInfoResponse message. Does not implicitly {@link proto.ConsensusGetTopicInfoResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.ConsensusGetTopicInfoResponse\n * @static\n * @param {proto.IConsensusGetTopicInfoResponse} m ConsensusGetTopicInfoResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ConsensusGetTopicInfoResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.topicID != null && Object.hasOwnProperty.call(m, \"topicID\"))\n $root.proto.TopicID.encode(m.topicID, w.uint32(18).fork()).ldelim();\n if (m.topicInfo != null && Object.hasOwnProperty.call(m, \"topicInfo\"))\n $root.proto.ConsensusTopicInfo.encode(m.topicInfo, w.uint32(42).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ConsensusGetTopicInfoResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ConsensusGetTopicInfoResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ConsensusGetTopicInfoResponse} ConsensusGetTopicInfoResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ConsensusGetTopicInfoResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ConsensusGetTopicInfoResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.topicID = $root.proto.TopicID.decode(r, r.uint32());\n break;\n case 5:\n m.topicInfo = $root.proto.ConsensusTopicInfo.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ConsensusGetTopicInfoResponse;\n })();\n\n /**\n * The client uses the ResponseType to indicate that it desires the node send just the answer, or\n * both the answer and a state proof. It can also ask for just the cost and not the answer itself\n * (allowing it to tailor the payment transaction accordingly). If the payment in the query fails\n * the precheck, then the response may have some fields blank. The state proof is only available for\n * some types of information. It is available for a Record, but not a receipt. It is available for\n * the information in each kind of *GetInfo request.\n * @name proto.ResponseType\n * @enum {number}\n * @property {number} ANSWER_ONLY=0 Response returns answer\n * @property {number} ANSWER_STATE_PROOF=1 (NOT YET SUPPORTED) Response returns both answer and state proof\n * @property {number} COST_ANSWER=2 Response returns the cost of answer\n * @property {number} COST_ANSWER_STATE_PROOF=3 (NOT YET SUPPORTED) Response returns the total cost of answer and state proof\n */\n proto.ResponseType = (function() {\n const valuesById = {}, values = Object.create(valuesById);\n values[valuesById[0] = \"ANSWER_ONLY\"] = 0;\n values[valuesById[1] = \"ANSWER_STATE_PROOF\"] = 1;\n values[valuesById[2] = \"COST_ANSWER\"] = 2;\n values[valuesById[3] = \"COST_ANSWER_STATE_PROOF\"] = 3;\n return values;\n })();\n\n proto.QueryHeader = (function() {\n\n /**\n * Properties of a QueryHeader.\n * @memberof proto\n * @interface IQueryHeader\n * @property {proto.ITransaction|null} [payment] A signed CryptoTransferTransaction to pay the node a fee for handling this query\n * @property {proto.ResponseType|null} [responseType] The requested response, asking for cost, state proof, both, or neither\n */\n\n /**\n * Constructs a new QueryHeader.\n * @memberof proto\n * @classdesc Each query from the client to the node will contain the QueryHeader, which gives the requested\n * response type, and includes a payment transaction that will compensate the node for responding to\n * the query. The payment can be blank if the query is free.\n * @implements IQueryHeader\n * @constructor\n * @param {proto.IQueryHeader=} [p] Properties to set\n */\n function QueryHeader(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * A signed CryptoTransferTransaction to pay the node a fee for handling this query\n * @member {proto.ITransaction|null|undefined} payment\n * @memberof proto.QueryHeader\n * @instance\n */\n QueryHeader.prototype.payment = null;\n\n /**\n * The requested response, asking for cost, state proof, both, or neither\n * @member {proto.ResponseType} responseType\n * @memberof proto.QueryHeader\n * @instance\n */\n QueryHeader.prototype.responseType = 0;\n\n /**\n * Creates a new QueryHeader instance using the specified properties.\n * @function create\n * @memberof proto.QueryHeader\n * @static\n * @param {proto.IQueryHeader=} [properties] Properties to set\n * @returns {proto.QueryHeader} QueryHeader instance\n */\n QueryHeader.create = function create(properties) {\n return new QueryHeader(properties);\n };\n\n /**\n * Encodes the specified QueryHeader message. Does not implicitly {@link proto.QueryHeader.verify|verify} messages.\n * @function encode\n * @memberof proto.QueryHeader\n * @static\n * @param {proto.IQueryHeader} m QueryHeader message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n QueryHeader.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.payment != null && Object.hasOwnProperty.call(m, \"payment\"))\n $root.proto.Transaction.encode(m.payment, w.uint32(10).fork()).ldelim();\n if (m.responseType != null && Object.hasOwnProperty.call(m, \"responseType\"))\n w.uint32(16).int32(m.responseType);\n return w;\n };\n\n /**\n * Decodes a QueryHeader message from the specified reader or buffer.\n * @function decode\n * @memberof proto.QueryHeader\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.QueryHeader} QueryHeader\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n QueryHeader.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.QueryHeader();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.payment = $root.proto.Transaction.decode(r, r.uint32());\n break;\n case 2:\n m.responseType = r.int32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return QueryHeader;\n })();\n\n proto.Transaction = (function() {\n\n /**\n * Properties of a Transaction.\n * @memberof proto\n * @interface ITransaction\n * @property {proto.ITransactionBody|null} [body] the body of the transaction, which needs to be signed\n * @property {proto.ISignatureList|null} [sigs] The signatures on the body, to authorize the transaction; deprecated and to be succeeded by\n * SignatureMap field\n * @property {proto.ISignatureMap|null} [sigMap] The signatures on the body with the new format, to authorize the transaction\n * @property {Uint8Array|null} [bodyBytes] TransactionBody serialized into bytes, which needs to be signed\n * @property {Uint8Array|null} [signedTransactionBytes] SignedTransaction serialized into bytes\n */\n\n /**\n * Constructs a new Transaction.\n * @memberof proto\n * @classdesc A single signed transaction, including all its signatures. The SignatureList will have a\n * Signature for each Key in the transaction, either explicit or implicit, in the order that they\n * appear in the transaction. For example, a CryptoTransfer will first have a Signature\n * corresponding to the Key for the paying account, followed by a Signature corresponding to the Key\n * for each account that is sending or receiving cryptocurrency in the transfer. Each Transaction\n * should not have more than 50 levels.\n * The SignatureList field is deprecated and succeeded by SignatureMap.\n * @implements ITransaction\n * @constructor\n * @param {proto.ITransaction=} [p] Properties to set\n */\n function Transaction(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * the body of the transaction, which needs to be signed\n * @member {proto.ITransactionBody|null|undefined} body\n * @memberof proto.Transaction\n * @instance\n */\n Transaction.prototype.body = null;\n\n /**\n * The signatures on the body, to authorize the transaction; deprecated and to be succeeded by\n * SignatureMap field\n * @member {proto.ISignatureList|null|undefined} sigs\n * @memberof proto.Transaction\n * @instance\n */\n Transaction.prototype.sigs = null;\n\n /**\n * The signatures on the body with the new format, to authorize the transaction\n * @member {proto.ISignatureMap|null|undefined} sigMap\n * @memberof proto.Transaction\n * @instance\n */\n Transaction.prototype.sigMap = null;\n\n /**\n * TransactionBody serialized into bytes, which needs to be signed\n * @member {Uint8Array} bodyBytes\n * @memberof proto.Transaction\n * @instance\n */\n Transaction.prototype.bodyBytes = $util.newBuffer([]);\n\n /**\n * SignedTransaction serialized into bytes\n * @member {Uint8Array} signedTransactionBytes\n * @memberof proto.Transaction\n * @instance\n */\n Transaction.prototype.signedTransactionBytes = $util.newBuffer([]);\n\n /**\n * Creates a new Transaction instance using the specified properties.\n * @function create\n * @memberof proto.Transaction\n * @static\n * @param {proto.ITransaction=} [properties] Properties to set\n * @returns {proto.Transaction} Transaction instance\n */\n Transaction.create = function create(properties) {\n return new Transaction(properties);\n };\n\n /**\n * Encodes the specified Transaction message. Does not implicitly {@link proto.Transaction.verify|verify} messages.\n * @function encode\n * @memberof proto.Transaction\n * @static\n * @param {proto.ITransaction} m Transaction message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Transaction.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.body != null && Object.hasOwnProperty.call(m, \"body\"))\n $root.proto.TransactionBody.encode(m.body, w.uint32(10).fork()).ldelim();\n if (m.sigs != null && Object.hasOwnProperty.call(m, \"sigs\"))\n $root.proto.SignatureList.encode(m.sigs, w.uint32(18).fork()).ldelim();\n if (m.sigMap != null && Object.hasOwnProperty.call(m, \"sigMap\"))\n $root.proto.SignatureMap.encode(m.sigMap, w.uint32(26).fork()).ldelim();\n if (m.bodyBytes != null && Object.hasOwnProperty.call(m, \"bodyBytes\"))\n w.uint32(34).bytes(m.bodyBytes);\n if (m.signedTransactionBytes != null && Object.hasOwnProperty.call(m, \"signedTransactionBytes\"))\n w.uint32(42).bytes(m.signedTransactionBytes);\n return w;\n };\n\n /**\n * Decodes a Transaction message from the specified reader or buffer.\n * @function decode\n * @memberof proto.Transaction\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.Transaction} Transaction\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Transaction.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.Transaction();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.body = $root.proto.TransactionBody.decode(r, r.uint32());\n break;\n case 2:\n m.sigs = $root.proto.SignatureList.decode(r, r.uint32());\n break;\n case 3:\n m.sigMap = $root.proto.SignatureMap.decode(r, r.uint32());\n break;\n case 4:\n m.bodyBytes = r.bytes();\n break;\n case 5:\n m.signedTransactionBytes = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Transaction;\n })();\n\n proto.TransactionBody = (function() {\n\n /**\n * Properties of a TransactionBody.\n * @memberof proto\n * @interface ITransactionBody\n * @property {proto.ITransactionID|null} [transactionID] The ID for this transaction, which includes the payer's account (the account paying the\n * transaction fee). If two transactions have the same transactionID, they won't both have an\n * effect\n * @property {proto.IAccountID|null} [nodeAccountID] The account of the node that submits the client's transaction to the network\n * @property {Long|null} [transactionFee] The maximum transaction fee the client is willing to pay\n * @property {proto.IDuration|null} [transactionValidDuration] The transaction is invalid if consensusTimestamp > transactionID.transactionValidStart +\n * transactionValidDuration\n * @property {boolean|null} [generateRecord] Should a record of this transaction be generated? (A receipt is always generated, but the\n * record is optional)\n * @property {string|null} [memo] Any notes or descriptions that should be put into the record (max length 100)\n * @property {proto.IContractCallTransactionBody|null} [contractCall] Calls a function of a contract instance\n * @property {proto.IContractCreateTransactionBody|null} [contractCreateInstance] Creates a contract instance\n * @property {proto.IContractUpdateTransactionBody|null} [contractUpdateInstance] Updates a contract\n * @property {proto.IContractDeleteTransactionBody|null} [contractDeleteInstance] Delete contract and transfer remaining balance into specified account\n * @property {proto.ICryptoAddLiveHashTransactionBody|null} [cryptoAddLiveHash] Attach a new livehash to an account\n * @property {proto.ICryptoAdjustAllowanceTransactionBody|null} [cryptoAdjustAllowance] Adjusts the approved allowance for a spender to transfer the paying account's hbar or tokens.\n * @property {proto.ICryptoApproveAllowanceTransactionBody|null} [cryptoApproveAllowance] Adds one or more approved allowances for spenders to transfer the paying account's hbar or tokens.\n * @property {proto.ICryptoCreateTransactionBody|null} [cryptoCreateAccount] Create a new cryptocurrency account\n * @property {proto.ICryptoDeleteTransactionBody|null} [cryptoDelete] Delete a cryptocurrency account (mark as deleted, and transfer hbars out)\n * @property {proto.ICryptoDeleteLiveHashTransactionBody|null} [cryptoDeleteLiveHash] Remove a livehash from an account\n * @property {proto.ICryptoTransferTransactionBody|null} [cryptoTransfer] Transfer amount between accounts\n * @property {proto.ICryptoUpdateTransactionBody|null} [cryptoUpdateAccount] Modify information such as the expiration date for an account\n * @property {proto.IFileAppendTransactionBody|null} [fileAppend] Add bytes to the end of the contents of a file\n * @property {proto.IFileCreateTransactionBody|null} [fileCreate] Create a new file\n * @property {proto.IFileDeleteTransactionBody|null} [fileDelete] Delete a file (remove contents and mark as deleted until it expires)\n * @property {proto.IFileUpdateTransactionBody|null} [fileUpdate] Modify information such as the expiration date for a file\n * @property {proto.ISystemDeleteTransactionBody|null} [systemDelete] Hedera administrative deletion of a file or smart contract\n * @property {proto.ISystemUndeleteTransactionBody|null} [systemUndelete] To undelete an entity deleted by SystemDelete\n * @property {proto.IFreezeTransactionBody|null} [freeze] Freeze the nodes\n * @property {proto.IConsensusCreateTopicTransactionBody|null} [consensusCreateTopic] Creates a topic\n * @property {proto.IConsensusUpdateTopicTransactionBody|null} [consensusUpdateTopic] Updates a topic\n * @property {proto.IConsensusDeleteTopicTransactionBody|null} [consensusDeleteTopic] Deletes a topic\n * @property {proto.IConsensusSubmitMessageTransactionBody|null} [consensusSubmitMessage] Submits message to a topic\n * @property {proto.IUncheckedSubmitBody|null} [uncheckedSubmit] UNDOCUMENTED\n * @property {proto.ITokenCreateTransactionBody|null} [tokenCreation] Creates a token instance\n * @property {proto.ITokenFreezeAccountTransactionBody|null} [tokenFreeze] Freezes account not to be able to transact with a token\n * @property {proto.ITokenUnfreezeAccountTransactionBody|null} [tokenUnfreeze] Unfreezes account for a token\n * @property {proto.ITokenGrantKycTransactionBody|null} [tokenGrantKyc] Grants KYC to an account for a token\n * @property {proto.ITokenRevokeKycTransactionBody|null} [tokenRevokeKyc] Revokes KYC of an account for a token\n * @property {proto.ITokenDeleteTransactionBody|null} [tokenDeletion] Deletes a token instance\n * @property {proto.ITokenUpdateTransactionBody|null} [tokenUpdate] Updates a token instance\n * @property {proto.ITokenMintTransactionBody|null} [tokenMint] Mints new tokens to a token's treasury account\n * @property {proto.ITokenBurnTransactionBody|null} [tokenBurn] Burns tokens from a token's treasury account\n * @property {proto.ITokenWipeAccountTransactionBody|null} [tokenWipe] Wipes amount of tokens from an account\n * @property {proto.ITokenAssociateTransactionBody|null} [tokenAssociate] Associate tokens to an account\n * @property {proto.ITokenDissociateTransactionBody|null} [tokenDissociate] Dissociate tokens from an account\n * @property {proto.ITokenFeeScheduleUpdateTransactionBody|null} [tokenFeeScheduleUpdate] Updates a token's custom fee schedule\n * @property {proto.ITokenPauseTransactionBody|null} [tokenPause] Pauses the Token\n * @property {proto.ITokenUnpauseTransactionBody|null} [tokenUnpause] Unpauses the Token\n * @property {proto.IScheduleCreateTransactionBody|null} [scheduleCreate] Creates a schedule in the network's action queue\n * @property {proto.IScheduleDeleteTransactionBody|null} [scheduleDelete] Deletes a schedule from the network's action queue\n * @property {proto.IScheduleSignTransactionBody|null} [scheduleSign] Adds one or more Ed25519 keys to the affirmed signers of a scheduled transaction\n */\n\n /**\n * Constructs a new TransactionBody.\n * @memberof proto\n * @classdesc A single transaction. All transaction types are possible here.\n * @implements ITransactionBody\n * @constructor\n * @param {proto.ITransactionBody=} [p] Properties to set\n */\n function TransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The ID for this transaction, which includes the payer's account (the account paying the\n * transaction fee). If two transactions have the same transactionID, they won't both have an\n * effect\n * @member {proto.ITransactionID|null|undefined} transactionID\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.transactionID = null;\n\n /**\n * The account of the node that submits the client's transaction to the network\n * @member {proto.IAccountID|null|undefined} nodeAccountID\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.nodeAccountID = null;\n\n /**\n * The maximum transaction fee the client is willing to pay\n * @member {Long} transactionFee\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.transactionFee = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * The transaction is invalid if consensusTimestamp > transactionID.transactionValidStart +\n * transactionValidDuration\n * @member {proto.IDuration|null|undefined} transactionValidDuration\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.transactionValidDuration = null;\n\n /**\n * Should a record of this transaction be generated? (A receipt is always generated, but the\n * record is optional)\n * @member {boolean} generateRecord\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.generateRecord = false;\n\n /**\n * Any notes or descriptions that should be put into the record (max length 100)\n * @member {string} memo\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.memo = \"\";\n\n /**\n * Calls a function of a contract instance\n * @member {proto.IContractCallTransactionBody|null|undefined} contractCall\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.contractCall = null;\n\n /**\n * Creates a contract instance\n * @member {proto.IContractCreateTransactionBody|null|undefined} contractCreateInstance\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.contractCreateInstance = null;\n\n /**\n * Updates a contract\n * @member {proto.IContractUpdateTransactionBody|null|undefined} contractUpdateInstance\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.contractUpdateInstance = null;\n\n /**\n * Delete contract and transfer remaining balance into specified account\n * @member {proto.IContractDeleteTransactionBody|null|undefined} contractDeleteInstance\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.contractDeleteInstance = null;\n\n /**\n * Attach a new livehash to an account\n * @member {proto.ICryptoAddLiveHashTransactionBody|null|undefined} cryptoAddLiveHash\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.cryptoAddLiveHash = null;\n\n /**\n * Adjusts the approved allowance for a spender to transfer the paying account's hbar or tokens.\n * @member {proto.ICryptoAdjustAllowanceTransactionBody|null|undefined} cryptoAdjustAllowance\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.cryptoAdjustAllowance = null;\n\n /**\n * Adds one or more approved allowances for spenders to transfer the paying account's hbar or tokens.\n * @member {proto.ICryptoApproveAllowanceTransactionBody|null|undefined} cryptoApproveAllowance\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.cryptoApproveAllowance = null;\n\n /**\n * Create a new cryptocurrency account\n * @member {proto.ICryptoCreateTransactionBody|null|undefined} cryptoCreateAccount\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.cryptoCreateAccount = null;\n\n /**\n * Delete a cryptocurrency account (mark as deleted, and transfer hbars out)\n * @member {proto.ICryptoDeleteTransactionBody|null|undefined} cryptoDelete\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.cryptoDelete = null;\n\n /**\n * Remove a livehash from an account\n * @member {proto.ICryptoDeleteLiveHashTransactionBody|null|undefined} cryptoDeleteLiveHash\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.cryptoDeleteLiveHash = null;\n\n /**\n * Transfer amount between accounts\n * @member {proto.ICryptoTransferTransactionBody|null|undefined} cryptoTransfer\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.cryptoTransfer = null;\n\n /**\n * Modify information such as the expiration date for an account\n * @member {proto.ICryptoUpdateTransactionBody|null|undefined} cryptoUpdateAccount\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.cryptoUpdateAccount = null;\n\n /**\n * Add bytes to the end of the contents of a file\n * @member {proto.IFileAppendTransactionBody|null|undefined} fileAppend\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.fileAppend = null;\n\n /**\n * Create a new file\n * @member {proto.IFileCreateTransactionBody|null|undefined} fileCreate\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.fileCreate = null;\n\n /**\n * Delete a file (remove contents and mark as deleted until it expires)\n * @member {proto.IFileDeleteTransactionBody|null|undefined} fileDelete\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.fileDelete = null;\n\n /**\n * Modify information such as the expiration date for a file\n * @member {proto.IFileUpdateTransactionBody|null|undefined} fileUpdate\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.fileUpdate = null;\n\n /**\n * Hedera administrative deletion of a file or smart contract\n * @member {proto.ISystemDeleteTransactionBody|null|undefined} systemDelete\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.systemDelete = null;\n\n /**\n * To undelete an entity deleted by SystemDelete\n * @member {proto.ISystemUndeleteTransactionBody|null|undefined} systemUndelete\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.systemUndelete = null;\n\n /**\n * Freeze the nodes\n * @member {proto.IFreezeTransactionBody|null|undefined} freeze\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.freeze = null;\n\n /**\n * Creates a topic\n * @member {proto.IConsensusCreateTopicTransactionBody|null|undefined} consensusCreateTopic\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.consensusCreateTopic = null;\n\n /**\n * Updates a topic\n * @member {proto.IConsensusUpdateTopicTransactionBody|null|undefined} consensusUpdateTopic\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.consensusUpdateTopic = null;\n\n /**\n * Deletes a topic\n * @member {proto.IConsensusDeleteTopicTransactionBody|null|undefined} consensusDeleteTopic\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.consensusDeleteTopic = null;\n\n /**\n * Submits message to a topic\n * @member {proto.IConsensusSubmitMessageTransactionBody|null|undefined} consensusSubmitMessage\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.consensusSubmitMessage = null;\n\n /**\n * UNDOCUMENTED\n * @member {proto.IUncheckedSubmitBody|null|undefined} uncheckedSubmit\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.uncheckedSubmit = null;\n\n /**\n * Creates a token instance\n * @member {proto.ITokenCreateTransactionBody|null|undefined} tokenCreation\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenCreation = null;\n\n /**\n * Freezes account not to be able to transact with a token\n * @member {proto.ITokenFreezeAccountTransactionBody|null|undefined} tokenFreeze\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenFreeze = null;\n\n /**\n * Unfreezes account for a token\n * @member {proto.ITokenUnfreezeAccountTransactionBody|null|undefined} tokenUnfreeze\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenUnfreeze = null;\n\n /**\n * Grants KYC to an account for a token\n * @member {proto.ITokenGrantKycTransactionBody|null|undefined} tokenGrantKyc\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenGrantKyc = null;\n\n /**\n * Revokes KYC of an account for a token\n * @member {proto.ITokenRevokeKycTransactionBody|null|undefined} tokenRevokeKyc\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenRevokeKyc = null;\n\n /**\n * Deletes a token instance\n * @member {proto.ITokenDeleteTransactionBody|null|undefined} tokenDeletion\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenDeletion = null;\n\n /**\n * Updates a token instance\n * @member {proto.ITokenUpdateTransactionBody|null|undefined} tokenUpdate\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenUpdate = null;\n\n /**\n * Mints new tokens to a token's treasury account\n * @member {proto.ITokenMintTransactionBody|null|undefined} tokenMint\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenMint = null;\n\n /**\n * Burns tokens from a token's treasury account\n * @member {proto.ITokenBurnTransactionBody|null|undefined} tokenBurn\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenBurn = null;\n\n /**\n * Wipes amount of tokens from an account\n * @member {proto.ITokenWipeAccountTransactionBody|null|undefined} tokenWipe\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenWipe = null;\n\n /**\n * Associate tokens to an account\n * @member {proto.ITokenAssociateTransactionBody|null|undefined} tokenAssociate\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenAssociate = null;\n\n /**\n * Dissociate tokens from an account\n * @member {proto.ITokenDissociateTransactionBody|null|undefined} tokenDissociate\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenDissociate = null;\n\n /**\n * Updates a token's custom fee schedule\n * @member {proto.ITokenFeeScheduleUpdateTransactionBody|null|undefined} tokenFeeScheduleUpdate\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenFeeScheduleUpdate = null;\n\n /**\n * Pauses the Token\n * @member {proto.ITokenPauseTransactionBody|null|undefined} tokenPause\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenPause = null;\n\n /**\n * Unpauses the Token\n * @member {proto.ITokenUnpauseTransactionBody|null|undefined} tokenUnpause\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.tokenUnpause = null;\n\n /**\n * Creates a schedule in the network's action queue\n * @member {proto.IScheduleCreateTransactionBody|null|undefined} scheduleCreate\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.scheduleCreate = null;\n\n /**\n * Deletes a schedule from the network's action queue\n * @member {proto.IScheduleDeleteTransactionBody|null|undefined} scheduleDelete\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.scheduleDelete = null;\n\n /**\n * Adds one or more Ed25519 keys to the affirmed signers of a scheduled transaction\n * @member {proto.IScheduleSignTransactionBody|null|undefined} scheduleSign\n * @memberof proto.TransactionBody\n * @instance\n */\n TransactionBody.prototype.scheduleSign = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * The choices here are arranged by service in roughly lexicographical order. The field ordinals are non-sequential, and a result of the historical order of implementation.\n * @member {\"contractCall\"|\"contractCreateInstance\"|\"contractUpdateInstance\"|\"contractDeleteInstance\"|\"cryptoAddLiveHash\"|\"cryptoAdjustAllowance\"|\"cryptoApproveAllowance\"|\"cryptoCreateAccount\"|\"cryptoDelete\"|\"cryptoDeleteLiveHash\"|\"cryptoTransfer\"|\"cryptoUpdateAccount\"|\"fileAppend\"|\"fileCreate\"|\"fileDelete\"|\"fileUpdate\"|\"systemDelete\"|\"systemUndelete\"|\"freeze\"|\"consensusCreateTopic\"|\"consensusUpdateTopic\"|\"consensusDeleteTopic\"|\"consensusSubmitMessage\"|\"uncheckedSubmit\"|\"tokenCreation\"|\"tokenFreeze\"|\"tokenUnfreeze\"|\"tokenGrantKyc\"|\"tokenRevokeKyc\"|\"tokenDeletion\"|\"tokenUpdate\"|\"tokenMint\"|\"tokenBurn\"|\"tokenWipe\"|\"tokenAssociate\"|\"tokenDissociate\"|\"tokenFeeScheduleUpdate\"|\"tokenPause\"|\"tokenUnpause\"|\"scheduleCreate\"|\"scheduleDelete\"|\"scheduleSign\"|undefined} data\n * @memberof proto.TransactionBody\n * @instance\n */\n Object.defineProperty(TransactionBody.prototype, \"data\", {\n get: $util.oneOfGetter($oneOfFields = [\"contractCall\", \"contractCreateInstance\", \"contractUpdateInstance\", \"contractDeleteInstance\", \"cryptoAddLiveHash\", \"cryptoAdjustAllowance\", \"cryptoApproveAllowance\", \"cryptoCreateAccount\", \"cryptoDelete\", \"cryptoDeleteLiveHash\", \"cryptoTransfer\", \"cryptoUpdateAccount\", \"fileAppend\", \"fileCreate\", \"fileDelete\", \"fileUpdate\", \"systemDelete\", \"systemUndelete\", \"freeze\", \"consensusCreateTopic\", \"consensusUpdateTopic\", \"consensusDeleteTopic\", \"consensusSubmitMessage\", \"uncheckedSubmit\", \"tokenCreation\", \"tokenFreeze\", \"tokenUnfreeze\", \"tokenGrantKyc\", \"tokenRevokeKyc\", \"tokenDeletion\", \"tokenUpdate\", \"tokenMint\", \"tokenBurn\", \"tokenWipe\", \"tokenAssociate\", \"tokenDissociate\", \"tokenFeeScheduleUpdate\", \"tokenPause\", \"tokenUnpause\", \"scheduleCreate\", \"scheduleDelete\", \"scheduleSign\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new TransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TransactionBody\n * @static\n * @param {proto.ITransactionBody=} [properties] Properties to set\n * @returns {proto.TransactionBody} TransactionBody instance\n */\n TransactionBody.create = function create(properties) {\n return new TransactionBody(properties);\n };\n\n /**\n * Encodes the specified TransactionBody message. Does not implicitly {@link proto.TransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionBody\n * @static\n * @param {proto.ITransactionBody} m TransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.transactionID != null && Object.hasOwnProperty.call(m, \"transactionID\"))\n $root.proto.TransactionID.encode(m.transactionID, w.uint32(10).fork()).ldelim();\n if (m.nodeAccountID != null && Object.hasOwnProperty.call(m, \"nodeAccountID\"))\n $root.proto.AccountID.encode(m.nodeAccountID, w.uint32(18).fork()).ldelim();\n if (m.transactionFee != null && Object.hasOwnProperty.call(m, \"transactionFee\"))\n w.uint32(24).uint64(m.transactionFee);\n if (m.transactionValidDuration != null && Object.hasOwnProperty.call(m, \"transactionValidDuration\"))\n $root.proto.Duration.encode(m.transactionValidDuration, w.uint32(34).fork()).ldelim();\n if (m.generateRecord != null && Object.hasOwnProperty.call(m, \"generateRecord\"))\n w.uint32(40).bool(m.generateRecord);\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(50).string(m.memo);\n if (m.contractCall != null && Object.hasOwnProperty.call(m, \"contractCall\"))\n $root.proto.ContractCallTransactionBody.encode(m.contractCall, w.uint32(58).fork()).ldelim();\n if (m.contractCreateInstance != null && Object.hasOwnProperty.call(m, \"contractCreateInstance\"))\n $root.proto.ContractCreateTransactionBody.encode(m.contractCreateInstance, w.uint32(66).fork()).ldelim();\n if (m.contractUpdateInstance != null && Object.hasOwnProperty.call(m, \"contractUpdateInstance\"))\n $root.proto.ContractUpdateTransactionBody.encode(m.contractUpdateInstance, w.uint32(74).fork()).ldelim();\n if (m.cryptoAddLiveHash != null && Object.hasOwnProperty.call(m, \"cryptoAddLiveHash\"))\n $root.proto.CryptoAddLiveHashTransactionBody.encode(m.cryptoAddLiveHash, w.uint32(82).fork()).ldelim();\n if (m.cryptoCreateAccount != null && Object.hasOwnProperty.call(m, \"cryptoCreateAccount\"))\n $root.proto.CryptoCreateTransactionBody.encode(m.cryptoCreateAccount, w.uint32(90).fork()).ldelim();\n if (m.cryptoDelete != null && Object.hasOwnProperty.call(m, \"cryptoDelete\"))\n $root.proto.CryptoDeleteTransactionBody.encode(m.cryptoDelete, w.uint32(98).fork()).ldelim();\n if (m.cryptoDeleteLiveHash != null && Object.hasOwnProperty.call(m, \"cryptoDeleteLiveHash\"))\n $root.proto.CryptoDeleteLiveHashTransactionBody.encode(m.cryptoDeleteLiveHash, w.uint32(106).fork()).ldelim();\n if (m.cryptoTransfer != null && Object.hasOwnProperty.call(m, \"cryptoTransfer\"))\n $root.proto.CryptoTransferTransactionBody.encode(m.cryptoTransfer, w.uint32(114).fork()).ldelim();\n if (m.cryptoUpdateAccount != null && Object.hasOwnProperty.call(m, \"cryptoUpdateAccount\"))\n $root.proto.CryptoUpdateTransactionBody.encode(m.cryptoUpdateAccount, w.uint32(122).fork()).ldelim();\n if (m.fileAppend != null && Object.hasOwnProperty.call(m, \"fileAppend\"))\n $root.proto.FileAppendTransactionBody.encode(m.fileAppend, w.uint32(130).fork()).ldelim();\n if (m.fileCreate != null && Object.hasOwnProperty.call(m, \"fileCreate\"))\n $root.proto.FileCreateTransactionBody.encode(m.fileCreate, w.uint32(138).fork()).ldelim();\n if (m.fileDelete != null && Object.hasOwnProperty.call(m, \"fileDelete\"))\n $root.proto.FileDeleteTransactionBody.encode(m.fileDelete, w.uint32(146).fork()).ldelim();\n if (m.fileUpdate != null && Object.hasOwnProperty.call(m, \"fileUpdate\"))\n $root.proto.FileUpdateTransactionBody.encode(m.fileUpdate, w.uint32(154).fork()).ldelim();\n if (m.systemDelete != null && Object.hasOwnProperty.call(m, \"systemDelete\"))\n $root.proto.SystemDeleteTransactionBody.encode(m.systemDelete, w.uint32(162).fork()).ldelim();\n if (m.systemUndelete != null && Object.hasOwnProperty.call(m, \"systemUndelete\"))\n $root.proto.SystemUndeleteTransactionBody.encode(m.systemUndelete, w.uint32(170).fork()).ldelim();\n if (m.contractDeleteInstance != null && Object.hasOwnProperty.call(m, \"contractDeleteInstance\"))\n $root.proto.ContractDeleteTransactionBody.encode(m.contractDeleteInstance, w.uint32(178).fork()).ldelim();\n if (m.freeze != null && Object.hasOwnProperty.call(m, \"freeze\"))\n $root.proto.FreezeTransactionBody.encode(m.freeze, w.uint32(186).fork()).ldelim();\n if (m.consensusCreateTopic != null && Object.hasOwnProperty.call(m, \"consensusCreateTopic\"))\n $root.proto.ConsensusCreateTopicTransactionBody.encode(m.consensusCreateTopic, w.uint32(194).fork()).ldelim();\n if (m.consensusUpdateTopic != null && Object.hasOwnProperty.call(m, \"consensusUpdateTopic\"))\n $root.proto.ConsensusUpdateTopicTransactionBody.encode(m.consensusUpdateTopic, w.uint32(202).fork()).ldelim();\n if (m.consensusDeleteTopic != null && Object.hasOwnProperty.call(m, \"consensusDeleteTopic\"))\n $root.proto.ConsensusDeleteTopicTransactionBody.encode(m.consensusDeleteTopic, w.uint32(210).fork()).ldelim();\n if (m.consensusSubmitMessage != null && Object.hasOwnProperty.call(m, \"consensusSubmitMessage\"))\n $root.proto.ConsensusSubmitMessageTransactionBody.encode(m.consensusSubmitMessage, w.uint32(218).fork()).ldelim();\n if (m.uncheckedSubmit != null && Object.hasOwnProperty.call(m, \"uncheckedSubmit\"))\n $root.proto.UncheckedSubmitBody.encode(m.uncheckedSubmit, w.uint32(226).fork()).ldelim();\n if (m.tokenCreation != null && Object.hasOwnProperty.call(m, \"tokenCreation\"))\n $root.proto.TokenCreateTransactionBody.encode(m.tokenCreation, w.uint32(234).fork()).ldelim();\n if (m.tokenFreeze != null && Object.hasOwnProperty.call(m, \"tokenFreeze\"))\n $root.proto.TokenFreezeAccountTransactionBody.encode(m.tokenFreeze, w.uint32(250).fork()).ldelim();\n if (m.tokenUnfreeze != null && Object.hasOwnProperty.call(m, \"tokenUnfreeze\"))\n $root.proto.TokenUnfreezeAccountTransactionBody.encode(m.tokenUnfreeze, w.uint32(258).fork()).ldelim();\n if (m.tokenGrantKyc != null && Object.hasOwnProperty.call(m, \"tokenGrantKyc\"))\n $root.proto.TokenGrantKycTransactionBody.encode(m.tokenGrantKyc, w.uint32(266).fork()).ldelim();\n if (m.tokenRevokeKyc != null && Object.hasOwnProperty.call(m, \"tokenRevokeKyc\"))\n $root.proto.TokenRevokeKycTransactionBody.encode(m.tokenRevokeKyc, w.uint32(274).fork()).ldelim();\n if (m.tokenDeletion != null && Object.hasOwnProperty.call(m, \"tokenDeletion\"))\n $root.proto.TokenDeleteTransactionBody.encode(m.tokenDeletion, w.uint32(282).fork()).ldelim();\n if (m.tokenUpdate != null && Object.hasOwnProperty.call(m, \"tokenUpdate\"))\n $root.proto.TokenUpdateTransactionBody.encode(m.tokenUpdate, w.uint32(290).fork()).ldelim();\n if (m.tokenMint != null && Object.hasOwnProperty.call(m, \"tokenMint\"))\n $root.proto.TokenMintTransactionBody.encode(m.tokenMint, w.uint32(298).fork()).ldelim();\n if (m.tokenBurn != null && Object.hasOwnProperty.call(m, \"tokenBurn\"))\n $root.proto.TokenBurnTransactionBody.encode(m.tokenBurn, w.uint32(306).fork()).ldelim();\n if (m.tokenWipe != null && Object.hasOwnProperty.call(m, \"tokenWipe\"))\n $root.proto.TokenWipeAccountTransactionBody.encode(m.tokenWipe, w.uint32(314).fork()).ldelim();\n if (m.tokenAssociate != null && Object.hasOwnProperty.call(m, \"tokenAssociate\"))\n $root.proto.TokenAssociateTransactionBody.encode(m.tokenAssociate, w.uint32(322).fork()).ldelim();\n if (m.tokenDissociate != null && Object.hasOwnProperty.call(m, \"tokenDissociate\"))\n $root.proto.TokenDissociateTransactionBody.encode(m.tokenDissociate, w.uint32(330).fork()).ldelim();\n if (m.scheduleCreate != null && Object.hasOwnProperty.call(m, \"scheduleCreate\"))\n $root.proto.ScheduleCreateTransactionBody.encode(m.scheduleCreate, w.uint32(338).fork()).ldelim();\n if (m.scheduleDelete != null && Object.hasOwnProperty.call(m, \"scheduleDelete\"))\n $root.proto.ScheduleDeleteTransactionBody.encode(m.scheduleDelete, w.uint32(346).fork()).ldelim();\n if (m.scheduleSign != null && Object.hasOwnProperty.call(m, \"scheduleSign\"))\n $root.proto.ScheduleSignTransactionBody.encode(m.scheduleSign, w.uint32(354).fork()).ldelim();\n if (m.tokenFeeScheduleUpdate != null && Object.hasOwnProperty.call(m, \"tokenFeeScheduleUpdate\"))\n $root.proto.TokenFeeScheduleUpdateTransactionBody.encode(m.tokenFeeScheduleUpdate, w.uint32(362).fork()).ldelim();\n if (m.tokenPause != null && Object.hasOwnProperty.call(m, \"tokenPause\"))\n $root.proto.TokenPauseTransactionBody.encode(m.tokenPause, w.uint32(370).fork()).ldelim();\n if (m.tokenUnpause != null && Object.hasOwnProperty.call(m, \"tokenUnpause\"))\n $root.proto.TokenUnpauseTransactionBody.encode(m.tokenUnpause, w.uint32(378).fork()).ldelim();\n if (m.cryptoAdjustAllowance != null && Object.hasOwnProperty.call(m, \"cryptoAdjustAllowance\"))\n $root.proto.CryptoAdjustAllowanceTransactionBody.encode(m.cryptoAdjustAllowance, w.uint32(386).fork()).ldelim();\n if (m.cryptoApproveAllowance != null && Object.hasOwnProperty.call(m, \"cryptoApproveAllowance\"))\n $root.proto.CryptoApproveAllowanceTransactionBody.encode(m.cryptoApproveAllowance, w.uint32(394).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionBody} TransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.transactionID = $root.proto.TransactionID.decode(r, r.uint32());\n break;\n case 2:\n m.nodeAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.transactionFee = r.uint64();\n break;\n case 4:\n m.transactionValidDuration = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 5:\n m.generateRecord = r.bool();\n break;\n case 6:\n m.memo = r.string();\n break;\n case 7:\n m.contractCall = $root.proto.ContractCallTransactionBody.decode(r, r.uint32());\n break;\n case 8:\n m.contractCreateInstance = $root.proto.ContractCreateTransactionBody.decode(r, r.uint32());\n break;\n case 9:\n m.contractUpdateInstance = $root.proto.ContractUpdateTransactionBody.decode(r, r.uint32());\n break;\n case 22:\n m.contractDeleteInstance = $root.proto.ContractDeleteTransactionBody.decode(r, r.uint32());\n break;\n case 10:\n m.cryptoAddLiveHash = $root.proto.CryptoAddLiveHashTransactionBody.decode(r, r.uint32());\n break;\n case 48:\n m.cryptoAdjustAllowance = $root.proto.CryptoAdjustAllowanceTransactionBody.decode(r, r.uint32());\n break;\n case 49:\n m.cryptoApproveAllowance = $root.proto.CryptoApproveAllowanceTransactionBody.decode(r, r.uint32());\n break;\n case 11:\n m.cryptoCreateAccount = $root.proto.CryptoCreateTransactionBody.decode(r, r.uint32());\n break;\n case 12:\n m.cryptoDelete = $root.proto.CryptoDeleteTransactionBody.decode(r, r.uint32());\n break;\n case 13:\n m.cryptoDeleteLiveHash = $root.proto.CryptoDeleteLiveHashTransactionBody.decode(r, r.uint32());\n break;\n case 14:\n m.cryptoTransfer = $root.proto.CryptoTransferTransactionBody.decode(r, r.uint32());\n break;\n case 15:\n m.cryptoUpdateAccount = $root.proto.CryptoUpdateTransactionBody.decode(r, r.uint32());\n break;\n case 16:\n m.fileAppend = $root.proto.FileAppendTransactionBody.decode(r, r.uint32());\n break;\n case 17:\n m.fileCreate = $root.proto.FileCreateTransactionBody.decode(r, r.uint32());\n break;\n case 18:\n m.fileDelete = $root.proto.FileDeleteTransactionBody.decode(r, r.uint32());\n break;\n case 19:\n m.fileUpdate = $root.proto.FileUpdateTransactionBody.decode(r, r.uint32());\n break;\n case 20:\n m.systemDelete = $root.proto.SystemDeleteTransactionBody.decode(r, r.uint32());\n break;\n case 21:\n m.systemUndelete = $root.proto.SystemUndeleteTransactionBody.decode(r, r.uint32());\n break;\n case 23:\n m.freeze = $root.proto.FreezeTransactionBody.decode(r, r.uint32());\n break;\n case 24:\n m.consensusCreateTopic = $root.proto.ConsensusCreateTopicTransactionBody.decode(r, r.uint32());\n break;\n case 25:\n m.consensusUpdateTopic = $root.proto.ConsensusUpdateTopicTransactionBody.decode(r, r.uint32());\n break;\n case 26:\n m.consensusDeleteTopic = $root.proto.ConsensusDeleteTopicTransactionBody.decode(r, r.uint32());\n break;\n case 27:\n m.consensusSubmitMessage = $root.proto.ConsensusSubmitMessageTransactionBody.decode(r, r.uint32());\n break;\n case 28:\n m.uncheckedSubmit = $root.proto.UncheckedSubmitBody.decode(r, r.uint32());\n break;\n case 29:\n m.tokenCreation = $root.proto.TokenCreateTransactionBody.decode(r, r.uint32());\n break;\n case 31:\n m.tokenFreeze = $root.proto.TokenFreezeAccountTransactionBody.decode(r, r.uint32());\n break;\n case 32:\n m.tokenUnfreeze = $root.proto.TokenUnfreezeAccountTransactionBody.decode(r, r.uint32());\n break;\n case 33:\n m.tokenGrantKyc = $root.proto.TokenGrantKycTransactionBody.decode(r, r.uint32());\n break;\n case 34:\n m.tokenRevokeKyc = $root.proto.TokenRevokeKycTransactionBody.decode(r, r.uint32());\n break;\n case 35:\n m.tokenDeletion = $root.proto.TokenDeleteTransactionBody.decode(r, r.uint32());\n break;\n case 36:\n m.tokenUpdate = $root.proto.TokenUpdateTransactionBody.decode(r, r.uint32());\n break;\n case 37:\n m.tokenMint = $root.proto.TokenMintTransactionBody.decode(r, r.uint32());\n break;\n case 38:\n m.tokenBurn = $root.proto.TokenBurnTransactionBody.decode(r, r.uint32());\n break;\n case 39:\n m.tokenWipe = $root.proto.TokenWipeAccountTransactionBody.decode(r, r.uint32());\n break;\n case 40:\n m.tokenAssociate = $root.proto.TokenAssociateTransactionBody.decode(r, r.uint32());\n break;\n case 41:\n m.tokenDissociate = $root.proto.TokenDissociateTransactionBody.decode(r, r.uint32());\n break;\n case 45:\n m.tokenFeeScheduleUpdate = $root.proto.TokenFeeScheduleUpdateTransactionBody.decode(r, r.uint32());\n break;\n case 46:\n m.tokenPause = $root.proto.TokenPauseTransactionBody.decode(r, r.uint32());\n break;\n case 47:\n m.tokenUnpause = $root.proto.TokenUnpauseTransactionBody.decode(r, r.uint32());\n break;\n case 42:\n m.scheduleCreate = $root.proto.ScheduleCreateTransactionBody.decode(r, r.uint32());\n break;\n case 43:\n m.scheduleDelete = $root.proto.ScheduleDeleteTransactionBody.decode(r, r.uint32());\n break;\n case 44:\n m.scheduleSign = $root.proto.ScheduleSignTransactionBody.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionBody;\n })();\n\n proto.SystemDeleteTransactionBody = (function() {\n\n /**\n * Properties of a SystemDeleteTransactionBody.\n * @memberof proto\n * @interface ISystemDeleteTransactionBody\n * @property {proto.IFileID|null} [fileID] The file ID of the file to delete, in the format used in transactions\n * @property {proto.IContractID|null} [contractID] The contract ID instance to delete, in the format used in transactions\n * @property {proto.ITimestampSeconds|null} [expirationTime] The timestamp in seconds at which the \"deleted\" file should truly be permanently deleted\n */\n\n /**\n * Constructs a new SystemDeleteTransactionBody.\n * @memberof proto\n * @classdesc Delete a file or smart contract - can only be done with a Hedera administrative multisignature.\n * When it is deleted, it immediately disappears from the system as seen by the user, but is still\n * stored internally until the expiration time, at which time it is truly and permanently deleted.\n * Until that time, it can be undeleted by the Hedera administrative multisignature. When a smart\n * contract is deleted, the cryptocurrency account within it continues to exist, and is not affected\n * by the expiration time here.\n * @implements ISystemDeleteTransactionBody\n * @constructor\n * @param {proto.ISystemDeleteTransactionBody=} [p] Properties to set\n */\n function SystemDeleteTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The file ID of the file to delete, in the format used in transactions\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.SystemDeleteTransactionBody\n * @instance\n */\n SystemDeleteTransactionBody.prototype.fileID = null;\n\n /**\n * The contract ID instance to delete, in the format used in transactions\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.SystemDeleteTransactionBody\n * @instance\n */\n SystemDeleteTransactionBody.prototype.contractID = null;\n\n /**\n * The timestamp in seconds at which the \"deleted\" file should truly be permanently deleted\n * @member {proto.ITimestampSeconds|null|undefined} expirationTime\n * @memberof proto.SystemDeleteTransactionBody\n * @instance\n */\n SystemDeleteTransactionBody.prototype.expirationTime = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * SystemDeleteTransactionBody id.\n * @member {\"fileID\"|\"contractID\"|undefined} id\n * @memberof proto.SystemDeleteTransactionBody\n * @instance\n */\n Object.defineProperty(SystemDeleteTransactionBody.prototype, \"id\", {\n get: $util.oneOfGetter($oneOfFields = [\"fileID\", \"contractID\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new SystemDeleteTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.SystemDeleteTransactionBody\n * @static\n * @param {proto.ISystemDeleteTransactionBody=} [properties] Properties to set\n * @returns {proto.SystemDeleteTransactionBody} SystemDeleteTransactionBody instance\n */\n SystemDeleteTransactionBody.create = function create(properties) {\n return new SystemDeleteTransactionBody(properties);\n };\n\n /**\n * Encodes the specified SystemDeleteTransactionBody message. Does not implicitly {@link proto.SystemDeleteTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.SystemDeleteTransactionBody\n * @static\n * @param {proto.ISystemDeleteTransactionBody} m SystemDeleteTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n SystemDeleteTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(10).fork()).ldelim();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(18).fork()).ldelim();\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.TimestampSeconds.encode(m.expirationTime, w.uint32(26).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a SystemDeleteTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.SystemDeleteTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.SystemDeleteTransactionBody} SystemDeleteTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n SystemDeleteTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.SystemDeleteTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 2:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 3:\n m.expirationTime = $root.proto.TimestampSeconds.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return SystemDeleteTransactionBody;\n })();\n\n proto.SystemUndeleteTransactionBody = (function() {\n\n /**\n * Properties of a SystemUndeleteTransactionBody.\n * @memberof proto\n * @interface ISystemUndeleteTransactionBody\n * @property {proto.IFileID|null} [fileID] The file ID to undelete, in the format used in transactions\n * @property {proto.IContractID|null} [contractID] The contract ID instance to undelete, in the format used in transactions\n */\n\n /**\n * Constructs a new SystemUndeleteTransactionBody.\n * @memberof proto\n * @classdesc Undelete a file or smart contract that was deleted by SystemDelete; requires a Hedera\n * administrative multisignature.\n * @implements ISystemUndeleteTransactionBody\n * @constructor\n * @param {proto.ISystemUndeleteTransactionBody=} [p] Properties to set\n */\n function SystemUndeleteTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The file ID to undelete, in the format used in transactions\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.SystemUndeleteTransactionBody\n * @instance\n */\n SystemUndeleteTransactionBody.prototype.fileID = null;\n\n /**\n * The contract ID instance to undelete, in the format used in transactions\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.SystemUndeleteTransactionBody\n * @instance\n */\n SystemUndeleteTransactionBody.prototype.contractID = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * SystemUndeleteTransactionBody id.\n * @member {\"fileID\"|\"contractID\"|undefined} id\n * @memberof proto.SystemUndeleteTransactionBody\n * @instance\n */\n Object.defineProperty(SystemUndeleteTransactionBody.prototype, \"id\", {\n get: $util.oneOfGetter($oneOfFields = [\"fileID\", \"contractID\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new SystemUndeleteTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.SystemUndeleteTransactionBody\n * @static\n * @param {proto.ISystemUndeleteTransactionBody=} [properties] Properties to set\n * @returns {proto.SystemUndeleteTransactionBody} SystemUndeleteTransactionBody instance\n */\n SystemUndeleteTransactionBody.create = function create(properties) {\n return new SystemUndeleteTransactionBody(properties);\n };\n\n /**\n * Encodes the specified SystemUndeleteTransactionBody message. Does not implicitly {@link proto.SystemUndeleteTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.SystemUndeleteTransactionBody\n * @static\n * @param {proto.ISystemUndeleteTransactionBody} m SystemUndeleteTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n SystemUndeleteTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(10).fork()).ldelim();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a SystemUndeleteTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.SystemUndeleteTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.SystemUndeleteTransactionBody} SystemUndeleteTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n SystemUndeleteTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.SystemUndeleteTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 2:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return SystemUndeleteTransactionBody;\n })();\n\n proto.FreezeTransactionBody = (function() {\n\n /**\n * Properties of a FreezeTransactionBody.\n * @memberof proto\n * @interface IFreezeTransactionBody\n * @property {number|null} [startHour] !! DEPRECATED and REJECTED by nodes\n * The start hour (in UTC time), a value between 0 and 23\n * @property {number|null} [startMin] !! DEPRECATED and REJECTED by nodes\n * The start minute (in UTC time), a value between 0 and 59\n * @property {number|null} [endHour] !! DEPRECATED and REJECTED by nodes\n * The end hour (in UTC time), a value between 0 and 23\n * @property {number|null} [endMin] !! DEPRECATED and REJECTED by nodes\n * The end minute (in UTC time), a value between 0 and 59\n * @property {proto.IFileID|null} [updateFile] If set, the file whose contents should be used for a network software update during the\n * maintenance window.\n * @property {Uint8Array|null} [fileHash] If set, the expected hash of the contents of the update file (used to verify the update).\n * @property {proto.ITimestamp|null} [startTime] The consensus time at which the maintenance window should begin.\n * @property {proto.FreezeType|null} [freezeType] The type of network freeze or upgrade operation to perform.\n */\n\n /**\n * Constructs a new FreezeTransactionBody.\n * @memberof proto\n * @classdesc At consensus, sets the consensus time at which the platform should stop creating events and\n * accepting transactions, and enter a maintenance window.\n * @implements IFreezeTransactionBody\n * @constructor\n * @param {proto.IFreezeTransactionBody=} [p] Properties to set\n */\n function FreezeTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * !! DEPRECATED and REJECTED by nodes\n * The start hour (in UTC time), a value between 0 and 23\n * @member {number} startHour\n * @memberof proto.FreezeTransactionBody\n * @instance\n */\n FreezeTransactionBody.prototype.startHour = 0;\n\n /**\n * !! DEPRECATED and REJECTED by nodes\n * The start minute (in UTC time), a value between 0 and 59\n * @member {number} startMin\n * @memberof proto.FreezeTransactionBody\n * @instance\n */\n FreezeTransactionBody.prototype.startMin = 0;\n\n /**\n * !! DEPRECATED and REJECTED by nodes\n * The end hour (in UTC time), a value between 0 and 23\n * @member {number} endHour\n * @memberof proto.FreezeTransactionBody\n * @instance\n */\n FreezeTransactionBody.prototype.endHour = 0;\n\n /**\n * !! DEPRECATED and REJECTED by nodes\n * The end minute (in UTC time), a value between 0 and 59\n * @member {number} endMin\n * @memberof proto.FreezeTransactionBody\n * @instance\n */\n FreezeTransactionBody.prototype.endMin = 0;\n\n /**\n * If set, the file whose contents should be used for a network software update during the\n * maintenance window.\n * @member {proto.IFileID|null|undefined} updateFile\n * @memberof proto.FreezeTransactionBody\n * @instance\n */\n FreezeTransactionBody.prototype.updateFile = null;\n\n /**\n * If set, the expected hash of the contents of the update file (used to verify the update).\n * @member {Uint8Array} fileHash\n * @memberof proto.FreezeTransactionBody\n * @instance\n */\n FreezeTransactionBody.prototype.fileHash = $util.newBuffer([]);\n\n /**\n * The consensus time at which the maintenance window should begin.\n * @member {proto.ITimestamp|null|undefined} startTime\n * @memberof proto.FreezeTransactionBody\n * @instance\n */\n FreezeTransactionBody.prototype.startTime = null;\n\n /**\n * The type of network freeze or upgrade operation to perform.\n * @member {proto.FreezeType} freezeType\n * @memberof proto.FreezeTransactionBody\n * @instance\n */\n FreezeTransactionBody.prototype.freezeType = 0;\n\n /**\n * Creates a new FreezeTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.FreezeTransactionBody\n * @static\n * @param {proto.IFreezeTransactionBody=} [properties] Properties to set\n * @returns {proto.FreezeTransactionBody} FreezeTransactionBody instance\n */\n FreezeTransactionBody.create = function create(properties) {\n return new FreezeTransactionBody(properties);\n };\n\n /**\n * Encodes the specified FreezeTransactionBody message. Does not implicitly {@link proto.FreezeTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.FreezeTransactionBody\n * @static\n * @param {proto.IFreezeTransactionBody} m FreezeTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FreezeTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.startHour != null && Object.hasOwnProperty.call(m, \"startHour\"))\n w.uint32(8).int32(m.startHour);\n if (m.startMin != null && Object.hasOwnProperty.call(m, \"startMin\"))\n w.uint32(16).int32(m.startMin);\n if (m.endHour != null && Object.hasOwnProperty.call(m, \"endHour\"))\n w.uint32(24).int32(m.endHour);\n if (m.endMin != null && Object.hasOwnProperty.call(m, \"endMin\"))\n w.uint32(32).int32(m.endMin);\n if (m.updateFile != null && Object.hasOwnProperty.call(m, \"updateFile\"))\n $root.proto.FileID.encode(m.updateFile, w.uint32(42).fork()).ldelim();\n if (m.fileHash != null && Object.hasOwnProperty.call(m, \"fileHash\"))\n w.uint32(50).bytes(m.fileHash);\n if (m.startTime != null && Object.hasOwnProperty.call(m, \"startTime\"))\n $root.proto.Timestamp.encode(m.startTime, w.uint32(58).fork()).ldelim();\n if (m.freezeType != null && Object.hasOwnProperty.call(m, \"freezeType\"))\n w.uint32(64).int32(m.freezeType);\n return w;\n };\n\n /**\n * Decodes a FreezeTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FreezeTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FreezeTransactionBody} FreezeTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FreezeTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FreezeTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.startHour = r.int32();\n break;\n case 2:\n m.startMin = r.int32();\n break;\n case 3:\n m.endHour = r.int32();\n break;\n case 4:\n m.endMin = r.int32();\n break;\n case 5:\n m.updateFile = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 6:\n m.fileHash = r.bytes();\n break;\n case 7:\n m.startTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 8:\n m.freezeType = r.int32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FreezeTransactionBody;\n })();\n\n /**\n * The type of network freeze or upgrade operation to be performed. This type dictates which\n * fields are required.\n * @name proto.FreezeType\n * @enum {number}\n * @property {number} UNKNOWN_FREEZE_TYPE=0 An (invalid) default value for this enum, to ensure the client explicitly sets\n * the intended type of freeze transaction.\n * @property {number} FREEZE_ONLY=1 Freezes the network at the specified time. The start_time field must be provided and\n * must reference a future time. Any values specified for the update_file and file_hash\n * fields will be ignored. This transaction does not perform any network changes or\n * upgrades and requires manual intervention to restart the network.\n * @property {number} PREPARE_UPGRADE=2 A non-freezing operation that initiates network wide preparation in advance of a\n * scheduled freeze upgrade. The update_file and file_hash fields must be provided and\n * valid. The start_time field may be omitted and any value present will be ignored.\n * @property {number} FREEZE_UPGRADE=3 Freezes the network at the specified time and performs the previously prepared\n * automatic upgrade across the entire network.\n * @property {number} FREEZE_ABORT=4 Aborts a pending network freeze operation.\n * @property {number} TELEMETRY_UPGRADE=5 Performs an immediate upgrade on auxilary services and containers providing\n * telemetry/metrics. Does not impact network operations.\n */\n proto.FreezeType = (function() {\n const valuesById = {}, values = Object.create(valuesById);\n values[valuesById[0] = \"UNKNOWN_FREEZE_TYPE\"] = 0;\n values[valuesById[1] = \"FREEZE_ONLY\"] = 1;\n values[valuesById[2] = \"PREPARE_UPGRADE\"] = 2;\n values[valuesById[3] = \"FREEZE_UPGRADE\"] = 3;\n values[valuesById[4] = \"FREEZE_ABORT\"] = 4;\n values[valuesById[5] = \"TELEMETRY_UPGRADE\"] = 5;\n return values;\n })();\n\n proto.ContractCallTransactionBody = (function() {\n\n /**\n * Properties of a ContractCallTransactionBody.\n * @memberof proto\n * @interface IContractCallTransactionBody\n * @property {proto.IContractID|null} [contractID] The contract to call\n * @property {Long|null} [gas] the maximum amount of gas to use for the call\n * @property {Long|null} [amount] number of tinybars sent (the function must be payable if this is nonzero)\n * @property {Uint8Array|null} [functionParameters] which function to call, and the parameters to pass to the function\n */\n\n /**\n * Constructs a new ContractCallTransactionBody.\n * @memberof proto\n * @classdesc Call a function of the given smart contract instance, giving it functionParameters as its inputs.\n * The call can use at maximum the given amount of gas – the paying account will not be charged for\n * any unspent gas.\n * \n * If this function results in data being stored, an amount of gas is calculated that reflects this\n * storage burden.\n * \n * The amount of gas used, as well as other attributes of the transaction, e.g. size, number of\n * signatures to be verified, determine the fee for the transaction – which is charged to the paying\n * account.\n * @implements IContractCallTransactionBody\n * @constructor\n * @param {proto.IContractCallTransactionBody=} [p] Properties to set\n */\n function ContractCallTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The contract to call\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractCallTransactionBody\n * @instance\n */\n ContractCallTransactionBody.prototype.contractID = null;\n\n /**\n * the maximum amount of gas to use for the call\n * @member {Long} gas\n * @memberof proto.ContractCallTransactionBody\n * @instance\n */\n ContractCallTransactionBody.prototype.gas = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * number of tinybars sent (the function must be payable if this is nonzero)\n * @member {Long} amount\n * @memberof proto.ContractCallTransactionBody\n * @instance\n */\n ContractCallTransactionBody.prototype.amount = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * which function to call, and the parameters to pass to the function\n * @member {Uint8Array} functionParameters\n * @memberof proto.ContractCallTransactionBody\n * @instance\n */\n ContractCallTransactionBody.prototype.functionParameters = $util.newBuffer([]);\n\n /**\n * Creates a new ContractCallTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.ContractCallTransactionBody\n * @static\n * @param {proto.IContractCallTransactionBody=} [properties] Properties to set\n * @returns {proto.ContractCallTransactionBody} ContractCallTransactionBody instance\n */\n ContractCallTransactionBody.create = function create(properties) {\n return new ContractCallTransactionBody(properties);\n };\n\n /**\n * Encodes the specified ContractCallTransactionBody message. Does not implicitly {@link proto.ContractCallTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractCallTransactionBody\n * @static\n * @param {proto.IContractCallTransactionBody} m ContractCallTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractCallTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(10).fork()).ldelim();\n if (m.gas != null && Object.hasOwnProperty.call(m, \"gas\"))\n w.uint32(16).int64(m.gas);\n if (m.amount != null && Object.hasOwnProperty.call(m, \"amount\"))\n w.uint32(24).int64(m.amount);\n if (m.functionParameters != null && Object.hasOwnProperty.call(m, \"functionParameters\"))\n w.uint32(34).bytes(m.functionParameters);\n return w;\n };\n\n /**\n * Decodes a ContractCallTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractCallTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractCallTransactionBody} ContractCallTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractCallTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractCallTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 2:\n m.gas = r.int64();\n break;\n case 3:\n m.amount = r.int64();\n break;\n case 4:\n m.functionParameters = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractCallTransactionBody;\n })();\n\n proto.ContractCreateTransactionBody = (function() {\n\n /**\n * Properties of a ContractCreateTransactionBody.\n * @memberof proto\n * @interface IContractCreateTransactionBody\n * @property {proto.IFileID|null} [fileID] the file containing the smart contract byte code. A copy will be made and held by the\n * contract instance, and have the same expiration time as the instance. The file is referenced\n * one of two ways:\n * @property {proto.IKey|null} [adminKey] the state of the instance and its fields can be modified arbitrarily if this key signs a\n * transaction to modify it. If this is null, then such modifications are not possible, and\n * there is no administrator that can override the normal operation of this smart contract\n * instance. Note that if it is created with no admin keys, then there is no administrator to\n * authorize changing the admin keys, so there can never be any admin keys for that instance.\n * @property {Long|null} [gas] gas to run the constructor\n * @property {Long|null} [initialBalance] initial number of tinybars to put into the cryptocurrency account associated with and owned\n * by the smart contract\n * @property {proto.IAccountID|null} [proxyAccountID] ID of the account to which this account is proxy staked. If proxyAccountID is null, or is an\n * invalid account, or is an account that isn't a node, then this account is automatically proxy\n * staked to a node chosen by the network, but without earning payments. If the proxyAccountID\n * account refuses to accept proxy staking , or if it is not currently running a node, then it\n * will behave as if proxyAccountID was null.\n * @property {proto.IDuration|null} [autoRenewPeriod] the instance will charge its account every this many seconds to renew for this long\n * @property {Uint8Array|null} [constructorParameters] parameters to pass to the constructor\n * @property {proto.IShardID|null} [shardID] shard in which to create this\n * @property {proto.IRealmID|null} [realmID] realm in which to create this (leave this null to create a new realm)\n * @property {proto.IKey|null} [newRealmAdminKey] if realmID is null, then this the admin key for the new realm that will be created\n * @property {string|null} [memo] the memo that was submitted as part of the contract (max 100 bytes)\n */\n\n /**\n * Constructs a new ContractCreateTransactionBody.\n * @memberof proto\n * @classdesc Start a new smart contract instance. After the instance is created, the ContractID for it is in\n * the receipt, and can be retrieved by the Record or with a GetByKey query. The instance will run\n * the bytecode stored in a previously created file, referenced either by FileID or by the\n * transaction ID of the transaction that created the file\n * \n * \n * The constructor will be executed using the given amount of gas, and any unspent gas will be\n * refunded to the paying account. Constructor inputs come from the given constructorParameters.\n * - The instance will exist for autoRenewPeriod seconds. When that is reached, it will renew\n * itself for another autoRenewPeriod seconds by charging its associated cryptocurrency account\n * (which it creates here). If it has insufficient cryptocurrency to extend that long, it will\n * extend as long as it can. If its balance is zero, the instance will be deleted.\n * \n * - A smart contract instance normally enforces rules, so \"the code is law\". For example, an\n * ERC-20 contract prevents a transfer from being undone without a signature by the recipient of\n * the transfer. This is always enforced if the contract instance was created with the adminKeys\n * being null. But for some uses, it might be desirable to create something like an ERC-20\n * contract that has a specific group of trusted individuals who can act as a \"supreme court\"\n * with the ability to override the normal operation, when a sufficient number of them agree to\n * do so. If adminKeys is not null, then they can sign a transaction that can change the state of\n * the smart contract in arbitrary ways, such as to reverse a transaction that violates some\n * standard of behavior that is not covered by the code itself. The admin keys can also be used\n * to change the autoRenewPeriod, and change the adminKeys field itself. The API currently does\n * not implement this ability. But it does allow the adminKeys field to be set and queried, and\n * will in the future implement such admin abilities for any instance that has a non-null\n * adminKeys.\n * \n * - If this constructor stores information, it is charged gas to store it. There is a fee in hbars\n * to maintain that storage until the expiration time, and that fee is added as part of the\n * transaction fee.\n * \n * - An entity (account, file, or smart contract instance) must be created in a particular realm.\n * If the realmID is left null, then a new realm will be created with the given admin key. If a\n * new realm has a null adminKey, then anyone can create/modify/delete entities in that realm.\n * But if an admin key is given, then any transaction to create/modify/delete an entity in that\n * realm must be signed by that key, though anyone can still call functions on smart contract\n * instances that exist in that realm. A realm ceases to exist when everything within it has\n * expired and no longer exists.\n * \n * - The current API ignores shardID, realmID, and newRealmAdminKey, and creates everything in\n * shard 0 and realm 0, with a null key. Future versions of the API will support multiple realms\n * and multiple shards.\n * \n * - The optional memo field can contain a string whose length is up to 100 bytes. That is the size\n * after Unicode NFD then UTF-8 conversion. This field can be used to describe the smart contract.\n * It could also be used for other purposes. One recommended purpose is to hold a hexadecimal\n * string that is the SHA-384 hash of a PDF file containing a human-readable legal contract. Then,\n * if the admin keys are the public keys of human arbitrators, they can use that legal document to\n * guide their decisions during a binding arbitration tribunal, convened to consider any changes\n * to the smart contract in the future. The memo field can only be changed using the admin keys.\n * If there are no admin keys, then it cannot be changed after the smart contract is created.\n * @implements IContractCreateTransactionBody\n * @constructor\n * @param {proto.IContractCreateTransactionBody=} [p] Properties to set\n */\n function ContractCreateTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * the file containing the smart contract byte code. A copy will be made and held by the\n * contract instance, and have the same expiration time as the instance. The file is referenced\n * one of two ways:\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.ContractCreateTransactionBody\n * @instance\n */\n ContractCreateTransactionBody.prototype.fileID = null;\n\n /**\n * the state of the instance and its fields can be modified arbitrarily if this key signs a\n * transaction to modify it. If this is null, then such modifications are not possible, and\n * there is no administrator that can override the normal operation of this smart contract\n * instance. Note that if it is created with no admin keys, then there is no administrator to\n * authorize changing the admin keys, so there can never be any admin keys for that instance.\n * @member {proto.IKey|null|undefined} adminKey\n * @memberof proto.ContractCreateTransactionBody\n * @instance\n */\n ContractCreateTransactionBody.prototype.adminKey = null;\n\n /**\n * gas to run the constructor\n * @member {Long} gas\n * @memberof proto.ContractCreateTransactionBody\n * @instance\n */\n ContractCreateTransactionBody.prototype.gas = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * initial number of tinybars to put into the cryptocurrency account associated with and owned\n * by the smart contract\n * @member {Long} initialBalance\n * @memberof proto.ContractCreateTransactionBody\n * @instance\n */\n ContractCreateTransactionBody.prototype.initialBalance = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * ID of the account to which this account is proxy staked. If proxyAccountID is null, or is an\n * invalid account, or is an account that isn't a node, then this account is automatically proxy\n * staked to a node chosen by the network, but without earning payments. If the proxyAccountID\n * account refuses to accept proxy staking , or if it is not currently running a node, then it\n * will behave as if proxyAccountID was null.\n * @member {proto.IAccountID|null|undefined} proxyAccountID\n * @memberof proto.ContractCreateTransactionBody\n * @instance\n */\n ContractCreateTransactionBody.prototype.proxyAccountID = null;\n\n /**\n * the instance will charge its account every this many seconds to renew for this long\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.ContractCreateTransactionBody\n * @instance\n */\n ContractCreateTransactionBody.prototype.autoRenewPeriod = null;\n\n /**\n * parameters to pass to the constructor\n * @member {Uint8Array} constructorParameters\n * @memberof proto.ContractCreateTransactionBody\n * @instance\n */\n ContractCreateTransactionBody.prototype.constructorParameters = $util.newBuffer([]);\n\n /**\n * shard in which to create this\n * @member {proto.IShardID|null|undefined} shardID\n * @memberof proto.ContractCreateTransactionBody\n * @instance\n */\n ContractCreateTransactionBody.prototype.shardID = null;\n\n /**\n * realm in which to create this (leave this null to create a new realm)\n * @member {proto.IRealmID|null|undefined} realmID\n * @memberof proto.ContractCreateTransactionBody\n * @instance\n */\n ContractCreateTransactionBody.prototype.realmID = null;\n\n /**\n * if realmID is null, then this the admin key for the new realm that will be created\n * @member {proto.IKey|null|undefined} newRealmAdminKey\n * @memberof proto.ContractCreateTransactionBody\n * @instance\n */\n ContractCreateTransactionBody.prototype.newRealmAdminKey = null;\n\n /**\n * the memo that was submitted as part of the contract (max 100 bytes)\n * @member {string} memo\n * @memberof proto.ContractCreateTransactionBody\n * @instance\n */\n ContractCreateTransactionBody.prototype.memo = \"\";\n\n /**\n * Creates a new ContractCreateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.ContractCreateTransactionBody\n * @static\n * @param {proto.IContractCreateTransactionBody=} [properties] Properties to set\n * @returns {proto.ContractCreateTransactionBody} ContractCreateTransactionBody instance\n */\n ContractCreateTransactionBody.create = function create(properties) {\n return new ContractCreateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified ContractCreateTransactionBody message. Does not implicitly {@link proto.ContractCreateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractCreateTransactionBody\n * @static\n * @param {proto.IContractCreateTransactionBody} m ContractCreateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractCreateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(10).fork()).ldelim();\n if (m.adminKey != null && Object.hasOwnProperty.call(m, \"adminKey\"))\n $root.proto.Key.encode(m.adminKey, w.uint32(26).fork()).ldelim();\n if (m.gas != null && Object.hasOwnProperty.call(m, \"gas\"))\n w.uint32(32).int64(m.gas);\n if (m.initialBalance != null && Object.hasOwnProperty.call(m, \"initialBalance\"))\n w.uint32(40).int64(m.initialBalance);\n if (m.proxyAccountID != null && Object.hasOwnProperty.call(m, \"proxyAccountID\"))\n $root.proto.AccountID.encode(m.proxyAccountID, w.uint32(50).fork()).ldelim();\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(66).fork()).ldelim();\n if (m.constructorParameters != null && Object.hasOwnProperty.call(m, \"constructorParameters\"))\n w.uint32(74).bytes(m.constructorParameters);\n if (m.shardID != null && Object.hasOwnProperty.call(m, \"shardID\"))\n $root.proto.ShardID.encode(m.shardID, w.uint32(82).fork()).ldelim();\n if (m.realmID != null && Object.hasOwnProperty.call(m, \"realmID\"))\n $root.proto.RealmID.encode(m.realmID, w.uint32(90).fork()).ldelim();\n if (m.newRealmAdminKey != null && Object.hasOwnProperty.call(m, \"newRealmAdminKey\"))\n $root.proto.Key.encode(m.newRealmAdminKey, w.uint32(98).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(106).string(m.memo);\n return w;\n };\n\n /**\n * Decodes a ContractCreateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractCreateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractCreateTransactionBody} ContractCreateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractCreateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractCreateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 3:\n m.adminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 4:\n m.gas = r.int64();\n break;\n case 5:\n m.initialBalance = r.int64();\n break;\n case 6:\n m.proxyAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 8:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 9:\n m.constructorParameters = r.bytes();\n break;\n case 10:\n m.shardID = $root.proto.ShardID.decode(r, r.uint32());\n break;\n case 11:\n m.realmID = $root.proto.RealmID.decode(r, r.uint32());\n break;\n case 12:\n m.newRealmAdminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 13:\n m.memo = r.string();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractCreateTransactionBody;\n })();\n\n proto.ContractUpdateTransactionBody = (function() {\n\n /**\n * Properties of a ContractUpdateTransactionBody.\n * @memberof proto\n * @interface IContractUpdateTransactionBody\n * @property {proto.IContractID|null} [contractID] The id of the contract to be updated\n * @property {proto.ITimestamp|null} [expirationTime] The new expiry of the contract, no earlier than the current expiry (resolves to\n * EXPIRATION_REDUCTION_NOT_ALLOWED otherwise)\n * @property {proto.IKey|null} [adminKey] The new key to control updates to the contract\n * @property {proto.IAccountID|null} [proxyAccountID] (NOT YET IMPLEMENTED) The new id of the account to which the contract is proxy staked\n * @property {proto.IDuration|null} [autoRenewPeriod] (NOT YET IMPLEMENTED) The new interval at which the contract will pay to extend its expiry\n * (by the same interval)\n * @property {proto.IFileID|null} [fileID] The new id of the file asserted to contain the bytecode of the Solidity transaction that\n * created this contract\n * @property {string|null} [memo] [Deprecated] If set with a non-zero length, the new memo to be associated with the account\n * (UTF-8 encoding max 100 bytes)\n * @property {google.protobuf.IStringValue|null} [memoWrapper] If set, the new memo to be associated with the account (UTF-8 encoding max 100 bytes)\n */\n\n /**\n * Constructs a new ContractUpdateTransactionBody.\n * @memberof proto\n * @classdesc At consensus, updates the fields of a smart contract to the given values.\n * \n * If no value is given for a field, that field is left unchanged on the contract. For an immutable\n * smart contract (that is, a contract created without an adminKey), only the expirationTime may be\n * updated; setting any other field in this case will cause the transaction status to resolve to\n * MODIFYING_IMMUTABLE_CONTRACT.\n * \n * --- Signing Requirements ---\n * 1. Whether or not a contract has an admin Key, its expiry can be extended with only the\n * transaction payer's signature.\n * 2. Updating any other field of a mutable contract requires the admin key's signature.\n * 3. If the update transaction includes a new admin key, this new key must also sign unless\n * it is exactly an empty KeyList. This special sentinel key removes the existing admin\n * key and causes the contract to become immutable. (Other Key structures without a\n * constituent Ed25519 key will be rejected with INVALID_ADMIN_KEY.)\n * @implements IContractUpdateTransactionBody\n * @constructor\n * @param {proto.IContractUpdateTransactionBody=} [p] Properties to set\n */\n function ContractUpdateTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The id of the contract to be updated\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractUpdateTransactionBody\n * @instance\n */\n ContractUpdateTransactionBody.prototype.contractID = null;\n\n /**\n * The new expiry of the contract, no earlier than the current expiry (resolves to\n * EXPIRATION_REDUCTION_NOT_ALLOWED otherwise)\n * @member {proto.ITimestamp|null|undefined} expirationTime\n * @memberof proto.ContractUpdateTransactionBody\n * @instance\n */\n ContractUpdateTransactionBody.prototype.expirationTime = null;\n\n /**\n * The new key to control updates to the contract\n * @member {proto.IKey|null|undefined} adminKey\n * @memberof proto.ContractUpdateTransactionBody\n * @instance\n */\n ContractUpdateTransactionBody.prototype.adminKey = null;\n\n /**\n * (NOT YET IMPLEMENTED) The new id of the account to which the contract is proxy staked\n * @member {proto.IAccountID|null|undefined} proxyAccountID\n * @memberof proto.ContractUpdateTransactionBody\n * @instance\n */\n ContractUpdateTransactionBody.prototype.proxyAccountID = null;\n\n /**\n * (NOT YET IMPLEMENTED) The new interval at which the contract will pay to extend its expiry\n * (by the same interval)\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.ContractUpdateTransactionBody\n * @instance\n */\n ContractUpdateTransactionBody.prototype.autoRenewPeriod = null;\n\n /**\n * The new id of the file asserted to contain the bytecode of the Solidity transaction that\n * created this contract\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.ContractUpdateTransactionBody\n * @instance\n */\n ContractUpdateTransactionBody.prototype.fileID = null;\n\n /**\n * [Deprecated] If set with a non-zero length, the new memo to be associated with the account\n * (UTF-8 encoding max 100 bytes)\n * @member {string|null|undefined} memo\n * @memberof proto.ContractUpdateTransactionBody\n * @instance\n */\n ContractUpdateTransactionBody.prototype.memo = null;\n\n /**\n * If set, the new memo to be associated with the account (UTF-8 encoding max 100 bytes)\n * @member {google.protobuf.IStringValue|null|undefined} memoWrapper\n * @memberof proto.ContractUpdateTransactionBody\n * @instance\n */\n ContractUpdateTransactionBody.prototype.memoWrapper = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * The new contract memo, assumed to be Unicode encoded with UTF-8 (at most 100 bytes)\n * @member {\"memo\"|\"memoWrapper\"|undefined} memoField\n * @memberof proto.ContractUpdateTransactionBody\n * @instance\n */\n Object.defineProperty(ContractUpdateTransactionBody.prototype, \"memoField\", {\n get: $util.oneOfGetter($oneOfFields = [\"memo\", \"memoWrapper\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new ContractUpdateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.ContractUpdateTransactionBody\n * @static\n * @param {proto.IContractUpdateTransactionBody=} [properties] Properties to set\n * @returns {proto.ContractUpdateTransactionBody} ContractUpdateTransactionBody instance\n */\n ContractUpdateTransactionBody.create = function create(properties) {\n return new ContractUpdateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified ContractUpdateTransactionBody message. Does not implicitly {@link proto.ContractUpdateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractUpdateTransactionBody\n * @static\n * @param {proto.IContractUpdateTransactionBody} m ContractUpdateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractUpdateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(10).fork()).ldelim();\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.Timestamp.encode(m.expirationTime, w.uint32(18).fork()).ldelim();\n if (m.adminKey != null && Object.hasOwnProperty.call(m, \"adminKey\"))\n $root.proto.Key.encode(m.adminKey, w.uint32(26).fork()).ldelim();\n if (m.proxyAccountID != null && Object.hasOwnProperty.call(m, \"proxyAccountID\"))\n $root.proto.AccountID.encode(m.proxyAccountID, w.uint32(50).fork()).ldelim();\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(58).fork()).ldelim();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(66).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(74).string(m.memo);\n if (m.memoWrapper != null && Object.hasOwnProperty.call(m, \"memoWrapper\"))\n $root.google.protobuf.StringValue.encode(m.memoWrapper, w.uint32(82).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ContractUpdateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractUpdateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractUpdateTransactionBody} ContractUpdateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractUpdateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractUpdateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 2:\n m.expirationTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 3:\n m.adminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 6:\n m.proxyAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 7:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 8:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 9:\n m.memo = r.string();\n break;\n case 10:\n m.memoWrapper = $root.google.protobuf.StringValue.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractUpdateTransactionBody;\n })();\n\n proto.LiveHash = (function() {\n\n /**\n * Properties of a LiveHash.\n * @memberof proto\n * @interface ILiveHash\n * @property {proto.IAccountID|null} [accountId] The account to which the livehash is attached\n * @property {Uint8Array|null} [hash] The SHA-384 hash of a credential or certificate\n * @property {proto.IKeyList|null} [keys] A list of keys (primitive or threshold), all of which must sign to attach the livehash to an account, and any one of which can later delete it.\n * @property {proto.IDuration|null} [duration] The duration for which the livehash will remain valid\n */\n\n /**\n * Constructs a new LiveHash.\n * @memberof proto\n * @classdesc A hash---presumably of some kind of credential or certificate---along with a list of keys, each\n * of which may be either a primitive or a threshold key.\n * @implements ILiveHash\n * @constructor\n * @param {proto.ILiveHash=} [p] Properties to set\n */\n function LiveHash(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The account to which the livehash is attached\n * @member {proto.IAccountID|null|undefined} accountId\n * @memberof proto.LiveHash\n * @instance\n */\n LiveHash.prototype.accountId = null;\n\n /**\n * The SHA-384 hash of a credential or certificate\n * @member {Uint8Array} hash\n * @memberof proto.LiveHash\n * @instance\n */\n LiveHash.prototype.hash = $util.newBuffer([]);\n\n /**\n * A list of keys (primitive or threshold), all of which must sign to attach the livehash to an account, and any one of which can later delete it.\n * @member {proto.IKeyList|null|undefined} keys\n * @memberof proto.LiveHash\n * @instance\n */\n LiveHash.prototype.keys = null;\n\n /**\n * The duration for which the livehash will remain valid\n * @member {proto.IDuration|null|undefined} duration\n * @memberof proto.LiveHash\n * @instance\n */\n LiveHash.prototype.duration = null;\n\n /**\n * Creates a new LiveHash instance using the specified properties.\n * @function create\n * @memberof proto.LiveHash\n * @static\n * @param {proto.ILiveHash=} [properties] Properties to set\n * @returns {proto.LiveHash} LiveHash instance\n */\n LiveHash.create = function create(properties) {\n return new LiveHash(properties);\n };\n\n /**\n * Encodes the specified LiveHash message. Does not implicitly {@link proto.LiveHash.verify|verify} messages.\n * @function encode\n * @memberof proto.LiveHash\n * @static\n * @param {proto.ILiveHash} m LiveHash message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n LiveHash.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.accountId != null && Object.hasOwnProperty.call(m, \"accountId\"))\n $root.proto.AccountID.encode(m.accountId, w.uint32(10).fork()).ldelim();\n if (m.hash != null && Object.hasOwnProperty.call(m, \"hash\"))\n w.uint32(18).bytes(m.hash);\n if (m.keys != null && Object.hasOwnProperty.call(m, \"keys\"))\n $root.proto.KeyList.encode(m.keys, w.uint32(26).fork()).ldelim();\n if (m.duration != null && Object.hasOwnProperty.call(m, \"duration\"))\n $root.proto.Duration.encode(m.duration, w.uint32(42).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a LiveHash message from the specified reader or buffer.\n * @function decode\n * @memberof proto.LiveHash\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.LiveHash} LiveHash\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n LiveHash.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.LiveHash();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.accountId = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n m.hash = r.bytes();\n break;\n case 3:\n m.keys = $root.proto.KeyList.decode(r, r.uint32());\n break;\n case 5:\n m.duration = $root.proto.Duration.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return LiveHash;\n })();\n\n proto.CryptoAddLiveHashTransactionBody = (function() {\n\n /**\n * Properties of a CryptoAddLiveHashTransactionBody.\n * @memberof proto\n * @interface ICryptoAddLiveHashTransactionBody\n * @property {proto.ILiveHash|null} [liveHash] A hash of some credential or certificate, along with the keys of the entities that asserted it validity\n */\n\n /**\n * Constructs a new CryptoAddLiveHashTransactionBody.\n * @memberof proto\n * @classdesc At consensus, attaches the given livehash to the given account. The hash can be deleted by the\n * key controlling the account, or by any of the keys associated to the livehash. Hence livehashes\n * provide a revocation service for their implied credentials; for example, when an authority grants\n * a credential to the account, the account owner will cosign with the authority (or authorities) to\n * attach a hash of the credential to the account---hence proving the grant. If the credential is\n * revoked, then any of the authorities may delete it (or the account owner). In this way, the\n * livehash mechanism acts as a revocation service. An account cannot have two identical livehashes\n * associated. To modify the list of keys in a livehash, the livehash should first be deleted, then\n * recreated with a new list of keys.\n * @implements ICryptoAddLiveHashTransactionBody\n * @constructor\n * @param {proto.ICryptoAddLiveHashTransactionBody=} [p] Properties to set\n */\n function CryptoAddLiveHashTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * A hash of some credential or certificate, along with the keys of the entities that asserted it validity\n * @member {proto.ILiveHash|null|undefined} liveHash\n * @memberof proto.CryptoAddLiveHashTransactionBody\n * @instance\n */\n CryptoAddLiveHashTransactionBody.prototype.liveHash = null;\n\n /**\n * Creates a new CryptoAddLiveHashTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.CryptoAddLiveHashTransactionBody\n * @static\n * @param {proto.ICryptoAddLiveHashTransactionBody=} [properties] Properties to set\n * @returns {proto.CryptoAddLiveHashTransactionBody} CryptoAddLiveHashTransactionBody instance\n */\n CryptoAddLiveHashTransactionBody.create = function create(properties) {\n return new CryptoAddLiveHashTransactionBody(properties);\n };\n\n /**\n * Encodes the specified CryptoAddLiveHashTransactionBody message. Does not implicitly {@link proto.CryptoAddLiveHashTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoAddLiveHashTransactionBody\n * @static\n * @param {proto.ICryptoAddLiveHashTransactionBody} m CryptoAddLiveHashTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoAddLiveHashTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.liveHash != null && Object.hasOwnProperty.call(m, \"liveHash\"))\n $root.proto.LiveHash.encode(m.liveHash, w.uint32(26).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a CryptoAddLiveHashTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoAddLiveHashTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoAddLiveHashTransactionBody} CryptoAddLiveHashTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoAddLiveHashTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoAddLiveHashTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 3:\n m.liveHash = $root.proto.LiveHash.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoAddLiveHashTransactionBody;\n })();\n\n proto.CryptoCreateTransactionBody = (function() {\n\n /**\n * Properties of a CryptoCreateTransactionBody.\n * @memberof proto\n * @interface ICryptoCreateTransactionBody\n * @property {proto.IKey|null} [key] The key that must sign each transfer out of the account. If receiverSigRequired is true, then\n * it must also sign any transfer into the account.\n * @property {Long|null} [initialBalance] The initial number of tinybars to put into the account\n * @property {proto.IAccountID|null} [proxyAccountID] ID of the account to which this account is proxy staked. If proxyAccountID is null, or is an\n * invalid account, or is an account that isn't a node, then this account is automatically proxy\n * staked to a node chosen by the network, but without earning payments. If the proxyAccountID\n * account refuses to accept proxy staking , or if it is not currently running a node, then it\n * will behave as if proxyAccountID was null.\n * @property {Long|null} [sendRecordThreshold] [Deprecated]. The threshold amount (in tinybars) for which an account record is created for\n * any send/withdraw transaction\n * @property {Long|null} [receiveRecordThreshold] [Deprecated]. The threshold amount (in tinybars) for which an account record is created for\n * any receive/deposit transaction\n * @property {boolean|null} [receiverSigRequired] If true, this account's key must sign any transaction depositing into this account (in\n * addition to all withdrawals)\n * @property {proto.IDuration|null} [autoRenewPeriod] The account is charged to extend its expiration date every this many seconds. If it doesn't\n * have enough balance, it extends as long as possible. If it is empty when it expires, then it\n * is deleted.\n * @property {proto.IShardID|null} [shardID] The shard in which this account is created\n * @property {proto.IRealmID|null} [realmID] The realm in which this account is created (leave this null to create a new realm)\n * @property {proto.IKey|null} [newRealmAdminKey] If realmID is null, then this the admin key for the new realm that will be created\n * @property {string|null} [memo] The memo associated with the account (UTF-8 encoding max 100 bytes)\n * @property {number|null} [maxAutomaticTokenAssociations] The maximum number of tokens that an Account can be implicitly associated with. Defaults to 0\n * and up to a maximum value of 1000.\n */\n\n /**\n * Constructs a new CryptoCreateTransactionBody.\n * @memberof proto\n * @classdesc Represents a CryptoCreateTransactionBody.\n * @implements ICryptoCreateTransactionBody\n * @constructor\n * @param {proto.ICryptoCreateTransactionBody=} [p] Properties to set\n */\n function CryptoCreateTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The key that must sign each transfer out of the account. If receiverSigRequired is true, then\n * it must also sign any transfer into the account.\n * @member {proto.IKey|null|undefined} key\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.key = null;\n\n /**\n * The initial number of tinybars to put into the account\n * @member {Long} initialBalance\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.initialBalance = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * ID of the account to which this account is proxy staked. If proxyAccountID is null, or is an\n * invalid account, or is an account that isn't a node, then this account is automatically proxy\n * staked to a node chosen by the network, but without earning payments. If the proxyAccountID\n * account refuses to accept proxy staking , or if it is not currently running a node, then it\n * will behave as if proxyAccountID was null.\n * @member {proto.IAccountID|null|undefined} proxyAccountID\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.proxyAccountID = null;\n\n /**\n * [Deprecated]. The threshold amount (in tinybars) for which an account record is created for\n * any send/withdraw transaction\n * @member {Long} sendRecordThreshold\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.sendRecordThreshold = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * [Deprecated]. The threshold amount (in tinybars) for which an account record is created for\n * any receive/deposit transaction\n * @member {Long} receiveRecordThreshold\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.receiveRecordThreshold = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * If true, this account's key must sign any transaction depositing into this account (in\n * addition to all withdrawals)\n * @member {boolean} receiverSigRequired\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.receiverSigRequired = false;\n\n /**\n * The account is charged to extend its expiration date every this many seconds. If it doesn't\n * have enough balance, it extends as long as possible. If it is empty when it expires, then it\n * is deleted.\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.autoRenewPeriod = null;\n\n /**\n * The shard in which this account is created\n * @member {proto.IShardID|null|undefined} shardID\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.shardID = null;\n\n /**\n * The realm in which this account is created (leave this null to create a new realm)\n * @member {proto.IRealmID|null|undefined} realmID\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.realmID = null;\n\n /**\n * If realmID is null, then this the admin key for the new realm that will be created\n * @member {proto.IKey|null|undefined} newRealmAdminKey\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.newRealmAdminKey = null;\n\n /**\n * The memo associated with the account (UTF-8 encoding max 100 bytes)\n * @member {string} memo\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.memo = \"\";\n\n /**\n * The maximum number of tokens that an Account can be implicitly associated with. Defaults to 0\n * and up to a maximum value of 1000.\n * @member {number} maxAutomaticTokenAssociations\n * @memberof proto.CryptoCreateTransactionBody\n * @instance\n */\n CryptoCreateTransactionBody.prototype.maxAutomaticTokenAssociations = 0;\n\n /**\n * Creates a new CryptoCreateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.CryptoCreateTransactionBody\n * @static\n * @param {proto.ICryptoCreateTransactionBody=} [properties] Properties to set\n * @returns {proto.CryptoCreateTransactionBody} CryptoCreateTransactionBody instance\n */\n CryptoCreateTransactionBody.create = function create(properties) {\n return new CryptoCreateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified CryptoCreateTransactionBody message. Does not implicitly {@link proto.CryptoCreateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoCreateTransactionBody\n * @static\n * @param {proto.ICryptoCreateTransactionBody} m CryptoCreateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoCreateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.key != null && Object.hasOwnProperty.call(m, \"key\"))\n $root.proto.Key.encode(m.key, w.uint32(10).fork()).ldelim();\n if (m.initialBalance != null && Object.hasOwnProperty.call(m, \"initialBalance\"))\n w.uint32(16).uint64(m.initialBalance);\n if (m.proxyAccountID != null && Object.hasOwnProperty.call(m, \"proxyAccountID\"))\n $root.proto.AccountID.encode(m.proxyAccountID, w.uint32(26).fork()).ldelim();\n if (m.sendRecordThreshold != null && Object.hasOwnProperty.call(m, \"sendRecordThreshold\"))\n w.uint32(48).uint64(m.sendRecordThreshold);\n if (m.receiveRecordThreshold != null && Object.hasOwnProperty.call(m, \"receiveRecordThreshold\"))\n w.uint32(56).uint64(m.receiveRecordThreshold);\n if (m.receiverSigRequired != null && Object.hasOwnProperty.call(m, \"receiverSigRequired\"))\n w.uint32(64).bool(m.receiverSigRequired);\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(74).fork()).ldelim();\n if (m.shardID != null && Object.hasOwnProperty.call(m, \"shardID\"))\n $root.proto.ShardID.encode(m.shardID, w.uint32(82).fork()).ldelim();\n if (m.realmID != null && Object.hasOwnProperty.call(m, \"realmID\"))\n $root.proto.RealmID.encode(m.realmID, w.uint32(90).fork()).ldelim();\n if (m.newRealmAdminKey != null && Object.hasOwnProperty.call(m, \"newRealmAdminKey\"))\n $root.proto.Key.encode(m.newRealmAdminKey, w.uint32(98).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(106).string(m.memo);\n if (m.maxAutomaticTokenAssociations != null && Object.hasOwnProperty.call(m, \"maxAutomaticTokenAssociations\"))\n w.uint32(112).int32(m.maxAutomaticTokenAssociations);\n return w;\n };\n\n /**\n * Decodes a CryptoCreateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoCreateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoCreateTransactionBody} CryptoCreateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoCreateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoCreateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.key = $root.proto.Key.decode(r, r.uint32());\n break;\n case 2:\n m.initialBalance = r.uint64();\n break;\n case 3:\n m.proxyAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 6:\n m.sendRecordThreshold = r.uint64();\n break;\n case 7:\n m.receiveRecordThreshold = r.uint64();\n break;\n case 8:\n m.receiverSigRequired = r.bool();\n break;\n case 9:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 10:\n m.shardID = $root.proto.ShardID.decode(r, r.uint32());\n break;\n case 11:\n m.realmID = $root.proto.RealmID.decode(r, r.uint32());\n break;\n case 12:\n m.newRealmAdminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 13:\n m.memo = r.string();\n break;\n case 14:\n m.maxAutomaticTokenAssociations = r.int32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoCreateTransactionBody;\n })();\n\n proto.CryptoDeleteTransactionBody = (function() {\n\n /**\n * Properties of a CryptoDeleteTransactionBody.\n * @memberof proto\n * @interface ICryptoDeleteTransactionBody\n * @property {proto.IAccountID|null} [transferAccountID] The account ID which will receive all remaining hbars\n * @property {proto.IAccountID|null} [deleteAccountID] The account ID which should be deleted\n */\n\n /**\n * Constructs a new CryptoDeleteTransactionBody.\n * @memberof proto\n * @classdesc Mark an account as deleted, moving all its current hbars to another account. It will remain in\n * the ledger, marked as deleted, until it expires. Transfers into it a deleted account fail. But a\n * deleted account can still have its expiration extended in the normal way.\n * @implements ICryptoDeleteTransactionBody\n * @constructor\n * @param {proto.ICryptoDeleteTransactionBody=} [p] Properties to set\n */\n function CryptoDeleteTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The account ID which will receive all remaining hbars\n * @member {proto.IAccountID|null|undefined} transferAccountID\n * @memberof proto.CryptoDeleteTransactionBody\n * @instance\n */\n CryptoDeleteTransactionBody.prototype.transferAccountID = null;\n\n /**\n * The account ID which should be deleted\n * @member {proto.IAccountID|null|undefined} deleteAccountID\n * @memberof proto.CryptoDeleteTransactionBody\n * @instance\n */\n CryptoDeleteTransactionBody.prototype.deleteAccountID = null;\n\n /**\n * Creates a new CryptoDeleteTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.CryptoDeleteTransactionBody\n * @static\n * @param {proto.ICryptoDeleteTransactionBody=} [properties] Properties to set\n * @returns {proto.CryptoDeleteTransactionBody} CryptoDeleteTransactionBody instance\n */\n CryptoDeleteTransactionBody.create = function create(properties) {\n return new CryptoDeleteTransactionBody(properties);\n };\n\n /**\n * Encodes the specified CryptoDeleteTransactionBody message. Does not implicitly {@link proto.CryptoDeleteTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoDeleteTransactionBody\n * @static\n * @param {proto.ICryptoDeleteTransactionBody} m CryptoDeleteTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoDeleteTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.transferAccountID != null && Object.hasOwnProperty.call(m, \"transferAccountID\"))\n $root.proto.AccountID.encode(m.transferAccountID, w.uint32(10).fork()).ldelim();\n if (m.deleteAccountID != null && Object.hasOwnProperty.call(m, \"deleteAccountID\"))\n $root.proto.AccountID.encode(m.deleteAccountID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a CryptoDeleteTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoDeleteTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoDeleteTransactionBody} CryptoDeleteTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoDeleteTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoDeleteTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.transferAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n m.deleteAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoDeleteTransactionBody;\n })();\n\n proto.CryptoDeleteLiveHashTransactionBody = (function() {\n\n /**\n * Properties of a CryptoDeleteLiveHashTransactionBody.\n * @memberof proto\n * @interface ICryptoDeleteLiveHashTransactionBody\n * @property {proto.IAccountID|null} [accountOfLiveHash] The account owning the livehash\n * @property {Uint8Array|null} [liveHashToDelete] The SHA-384 livehash to delete from the account\n */\n\n /**\n * Constructs a new CryptoDeleteLiveHashTransactionBody.\n * @memberof proto\n * @classdesc At consensus, deletes a livehash associated to the given account. The transaction must be signed\n * by either the key of the owning account, or at least one of the keys associated to the livehash.\n * @implements ICryptoDeleteLiveHashTransactionBody\n * @constructor\n * @param {proto.ICryptoDeleteLiveHashTransactionBody=} [p] Properties to set\n */\n function CryptoDeleteLiveHashTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The account owning the livehash\n * @member {proto.IAccountID|null|undefined} accountOfLiveHash\n * @memberof proto.CryptoDeleteLiveHashTransactionBody\n * @instance\n */\n CryptoDeleteLiveHashTransactionBody.prototype.accountOfLiveHash = null;\n\n /**\n * The SHA-384 livehash to delete from the account\n * @member {Uint8Array} liveHashToDelete\n * @memberof proto.CryptoDeleteLiveHashTransactionBody\n * @instance\n */\n CryptoDeleteLiveHashTransactionBody.prototype.liveHashToDelete = $util.newBuffer([]);\n\n /**\n * Creates a new CryptoDeleteLiveHashTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.CryptoDeleteLiveHashTransactionBody\n * @static\n * @param {proto.ICryptoDeleteLiveHashTransactionBody=} [properties] Properties to set\n * @returns {proto.CryptoDeleteLiveHashTransactionBody} CryptoDeleteLiveHashTransactionBody instance\n */\n CryptoDeleteLiveHashTransactionBody.create = function create(properties) {\n return new CryptoDeleteLiveHashTransactionBody(properties);\n };\n\n /**\n * Encodes the specified CryptoDeleteLiveHashTransactionBody message. Does not implicitly {@link proto.CryptoDeleteLiveHashTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoDeleteLiveHashTransactionBody\n * @static\n * @param {proto.ICryptoDeleteLiveHashTransactionBody} m CryptoDeleteLiveHashTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoDeleteLiveHashTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.accountOfLiveHash != null && Object.hasOwnProperty.call(m, \"accountOfLiveHash\"))\n $root.proto.AccountID.encode(m.accountOfLiveHash, w.uint32(10).fork()).ldelim();\n if (m.liveHashToDelete != null && Object.hasOwnProperty.call(m, \"liveHashToDelete\"))\n w.uint32(18).bytes(m.liveHashToDelete);\n return w;\n };\n\n /**\n * Decodes a CryptoDeleteLiveHashTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoDeleteLiveHashTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoDeleteLiveHashTransactionBody} CryptoDeleteLiveHashTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoDeleteLiveHashTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoDeleteLiveHashTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.accountOfLiveHash = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n m.liveHashToDelete = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoDeleteLiveHashTransactionBody;\n })();\n\n proto.CryptoTransferTransactionBody = (function() {\n\n /**\n * Properties of a CryptoTransferTransactionBody.\n * @memberof proto\n * @interface ICryptoTransferTransactionBody\n * @property {proto.ITransferList|null} [transfers] The desired hbar balance adjustments\n * @property {Array.|null} [tokenTransfers] The desired token unit balance adjustments; if any custom fees are assessed, the ledger will\n * try to deduct them from the payer of this CryptoTransfer, resolving the transaction to\n * INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE if this is not possible\n */\n\n /**\n * Constructs a new CryptoTransferTransactionBody.\n * @memberof proto\n * @classdesc Transfers cryptocurrency among two or more accounts by making the desired adjustments to their\n * balances. Each transfer list can specify up to 10 adjustments. Each negative amount is withdrawn\n * from the corresponding account (a sender), and each positive one is added to the corresponding\n * account (a receiver). The amounts list must sum to zero. Each amount is a number of tinybars\n * (there are 100,000,000 tinybars in one hbar). If any sender account fails to have sufficient\n * hbars, then the entire transaction fails, and none of those transfers occur, though the\n * transaction fee is still charged. This transaction must be signed by the keys for all the sending\n * accounts, and for any receiving accounts that have receiverSigRequired == true. The signatures\n * are in the same order as the accounts, skipping those accounts that don't need a signature.\n * @implements ICryptoTransferTransactionBody\n * @constructor\n * @param {proto.ICryptoTransferTransactionBody=} [p] Properties to set\n */\n function CryptoTransferTransactionBody(p) {\n this.tokenTransfers = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The desired hbar balance adjustments\n * @member {proto.ITransferList|null|undefined} transfers\n * @memberof proto.CryptoTransferTransactionBody\n * @instance\n */\n CryptoTransferTransactionBody.prototype.transfers = null;\n\n /**\n * The desired token unit balance adjustments; if any custom fees are assessed, the ledger will\n * try to deduct them from the payer of this CryptoTransfer, resolving the transaction to\n * INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE if this is not possible\n * @member {Array.} tokenTransfers\n * @memberof proto.CryptoTransferTransactionBody\n * @instance\n */\n CryptoTransferTransactionBody.prototype.tokenTransfers = $util.emptyArray;\n\n /**\n * Creates a new CryptoTransferTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.CryptoTransferTransactionBody\n * @static\n * @param {proto.ICryptoTransferTransactionBody=} [properties] Properties to set\n * @returns {proto.CryptoTransferTransactionBody} CryptoTransferTransactionBody instance\n */\n CryptoTransferTransactionBody.create = function create(properties) {\n return new CryptoTransferTransactionBody(properties);\n };\n\n /**\n * Encodes the specified CryptoTransferTransactionBody message. Does not implicitly {@link proto.CryptoTransferTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoTransferTransactionBody\n * @static\n * @param {proto.ICryptoTransferTransactionBody} m CryptoTransferTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoTransferTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.transfers != null && Object.hasOwnProperty.call(m, \"transfers\"))\n $root.proto.TransferList.encode(m.transfers, w.uint32(10).fork()).ldelim();\n if (m.tokenTransfers != null && m.tokenTransfers.length) {\n for (var i = 0; i < m.tokenTransfers.length; ++i)\n $root.proto.TokenTransferList.encode(m.tokenTransfers[i], w.uint32(18).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a CryptoTransferTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoTransferTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoTransferTransactionBody} CryptoTransferTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoTransferTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoTransferTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.transfers = $root.proto.TransferList.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.tokenTransfers && m.tokenTransfers.length))\n m.tokenTransfers = [];\n m.tokenTransfers.push($root.proto.TokenTransferList.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoTransferTransactionBody;\n })();\n\n proto.CryptoUpdateTransactionBody = (function() {\n\n /**\n * Properties of a CryptoUpdateTransactionBody.\n * @memberof proto\n * @interface ICryptoUpdateTransactionBody\n * @property {proto.IAccountID|null} [accountIDToUpdate] The account ID which is being updated in this transaction\n * @property {proto.IKey|null} [key] The new key\n * @property {proto.IAccountID|null} [proxyAccountID] ID of the account to which this account is proxy staked. If proxyAccountID is null, or is an\n * invalid account, or is an account that isn't a node, then this account is automatically proxy\n * staked to a node chosen by the network, but without earning payments. If the proxyAccountID\n * account refuses to accept proxy staking , or if it is not currently running a node, then it\n * will behave as if proxyAccountID was null.\n * @property {number|null} [proxyFraction] [Deprecated]. Payments earned from proxy staking are shared between the node and this\n * account, with proxyFraction / 10000 going to this account\n * @property {Long|null} [sendRecordThreshold] [Deprecated]. The new threshold amount (in tinybars) for which an account record is\n * created for any send/withdraw transaction\n * @property {google.protobuf.IUInt64Value|null} [sendRecordThresholdWrapper] [Deprecated]. The new threshold amount (in tinybars) for which an account record is\n * created for any send/withdraw transaction\n * @property {Long|null} [receiveRecordThreshold] [Deprecated]. The new threshold amount (in tinybars) for which an account record is\n * created for any receive/deposit transaction.\n * @property {google.protobuf.IUInt64Value|null} [receiveRecordThresholdWrapper] [Deprecated]. The new threshold amount (in tinybars) for which an account record is\n * created for any receive/deposit transaction.\n * @property {proto.IDuration|null} [autoRenewPeriod] The duration in which it will automatically extend the expiration period. If it doesn't have\n * enough balance, it extends as long as possible. If it is empty when it expires, then it is\n * deleted.\n * @property {proto.ITimestamp|null} [expirationTime] The new expiration time to extend to (ignored if equal to or before the current one)\n * @property {boolean|null} [receiverSigRequired] [Deprecated] Do NOT use this field to set a false value because the server cannot\n * distinguish from the default value. Use receiverSigRequiredWrapper field for this\n * purpose.\n * @property {google.protobuf.IBoolValue|null} [receiverSigRequiredWrapper] If true, this account's key must sign any transaction depositing into this account (in\n * addition to all withdrawals)\n * @property {google.protobuf.IStringValue|null} [memo] If set, the new memo to be associated with the account (UTF-8 encoding max 100 bytes)\n * @property {google.protobuf.IInt32Value|null} [maxAutomaticTokenAssociations] The maximum number of tokens that an Account can be implicitly associated with. Up to a 1000\n * including implicit and explicit associations.\n * @property {Uint8Array|null} [alias] If set, the new public key bytes to be used as the account's alias. Alias can be updated\n * only on accounts that does not have it set previously. It will be immutable once it is\n * set on an account. For successful update of alias, the corresponding alias private key\n * should sign the transaction.\n */\n\n /**\n * Constructs a new CryptoUpdateTransactionBody.\n * @memberof proto\n * @classdesc Change properties for the given account. Any null field is ignored (left unchanged). This\n * transaction must be signed by the existing key for this account. If the transaction is changing\n * the key field, then the transaction must be signed by both the old key (from before the change)\n * and the new key. The old key must sign for security. The new key must sign as a safeguard to\n * avoid accidentally changing to an invalid key, and then having no way to recover.\n * @implements ICryptoUpdateTransactionBody\n * @constructor\n * @param {proto.ICryptoUpdateTransactionBody=} [p] Properties to set\n */\n function CryptoUpdateTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The account ID which is being updated in this transaction\n * @member {proto.IAccountID|null|undefined} accountIDToUpdate\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.accountIDToUpdate = null;\n\n /**\n * The new key\n * @member {proto.IKey|null|undefined} key\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.key = null;\n\n /**\n * ID of the account to which this account is proxy staked. If proxyAccountID is null, or is an\n * invalid account, or is an account that isn't a node, then this account is automatically proxy\n * staked to a node chosen by the network, but without earning payments. If the proxyAccountID\n * account refuses to accept proxy staking , or if it is not currently running a node, then it\n * will behave as if proxyAccountID was null.\n * @member {proto.IAccountID|null|undefined} proxyAccountID\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.proxyAccountID = null;\n\n /**\n * [Deprecated]. Payments earned from proxy staking are shared between the node and this\n * account, with proxyFraction / 10000 going to this account\n * @member {number} proxyFraction\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.proxyFraction = 0;\n\n /**\n * [Deprecated]. The new threshold amount (in tinybars) for which an account record is\n * created for any send/withdraw transaction\n * @member {Long|null|undefined} sendRecordThreshold\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.sendRecordThreshold = null;\n\n /**\n * [Deprecated]. The new threshold amount (in tinybars) for which an account record is\n * created for any send/withdraw transaction\n * @member {google.protobuf.IUInt64Value|null|undefined} sendRecordThresholdWrapper\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.sendRecordThresholdWrapper = null;\n\n /**\n * [Deprecated]. The new threshold amount (in tinybars) for which an account record is\n * created for any receive/deposit transaction.\n * @member {Long|null|undefined} receiveRecordThreshold\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.receiveRecordThreshold = null;\n\n /**\n * [Deprecated]. The new threshold amount (in tinybars) for which an account record is\n * created for any receive/deposit transaction.\n * @member {google.protobuf.IUInt64Value|null|undefined} receiveRecordThresholdWrapper\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.receiveRecordThresholdWrapper = null;\n\n /**\n * The duration in which it will automatically extend the expiration period. If it doesn't have\n * enough balance, it extends as long as possible. If it is empty when it expires, then it is\n * deleted.\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.autoRenewPeriod = null;\n\n /**\n * The new expiration time to extend to (ignored if equal to or before the current one)\n * @member {proto.ITimestamp|null|undefined} expirationTime\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.expirationTime = null;\n\n /**\n * [Deprecated] Do NOT use this field to set a false value because the server cannot\n * distinguish from the default value. Use receiverSigRequiredWrapper field for this\n * purpose.\n * @member {boolean|null|undefined} receiverSigRequired\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.receiverSigRequired = null;\n\n /**\n * If true, this account's key must sign any transaction depositing into this account (in\n * addition to all withdrawals)\n * @member {google.protobuf.IBoolValue|null|undefined} receiverSigRequiredWrapper\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.receiverSigRequiredWrapper = null;\n\n /**\n * If set, the new memo to be associated with the account (UTF-8 encoding max 100 bytes)\n * @member {google.protobuf.IStringValue|null|undefined} memo\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.memo = null;\n\n /**\n * The maximum number of tokens that an Account can be implicitly associated with. Up to a 1000\n * including implicit and explicit associations.\n * @member {google.protobuf.IInt32Value|null|undefined} maxAutomaticTokenAssociations\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.maxAutomaticTokenAssociations = null;\n\n /**\n * If set, the new public key bytes to be used as the account's alias. Alias can be updated\n * only on accounts that does not have it set previously. It will be immutable once it is\n * set on an account. For successful update of alias, the corresponding alias private key\n * should sign the transaction.\n * @member {Uint8Array} alias\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n CryptoUpdateTransactionBody.prototype.alias = $util.newBuffer([]);\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * CryptoUpdateTransactionBody sendRecordThresholdField.\n * @member {\"sendRecordThreshold\"|\"sendRecordThresholdWrapper\"|undefined} sendRecordThresholdField\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n Object.defineProperty(CryptoUpdateTransactionBody.prototype, \"sendRecordThresholdField\", {\n get: $util.oneOfGetter($oneOfFields = [\"sendRecordThreshold\", \"sendRecordThresholdWrapper\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * CryptoUpdateTransactionBody receiveRecordThresholdField.\n * @member {\"receiveRecordThreshold\"|\"receiveRecordThresholdWrapper\"|undefined} receiveRecordThresholdField\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n Object.defineProperty(CryptoUpdateTransactionBody.prototype, \"receiveRecordThresholdField\", {\n get: $util.oneOfGetter($oneOfFields = [\"receiveRecordThreshold\", \"receiveRecordThresholdWrapper\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * CryptoUpdateTransactionBody receiverSigRequiredField.\n * @member {\"receiverSigRequired\"|\"receiverSigRequiredWrapper\"|undefined} receiverSigRequiredField\n * @memberof proto.CryptoUpdateTransactionBody\n * @instance\n */\n Object.defineProperty(CryptoUpdateTransactionBody.prototype, \"receiverSigRequiredField\", {\n get: $util.oneOfGetter($oneOfFields = [\"receiverSigRequired\", \"receiverSigRequiredWrapper\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new CryptoUpdateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.CryptoUpdateTransactionBody\n * @static\n * @param {proto.ICryptoUpdateTransactionBody=} [properties] Properties to set\n * @returns {proto.CryptoUpdateTransactionBody} CryptoUpdateTransactionBody instance\n */\n CryptoUpdateTransactionBody.create = function create(properties) {\n return new CryptoUpdateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified CryptoUpdateTransactionBody message. Does not implicitly {@link proto.CryptoUpdateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoUpdateTransactionBody\n * @static\n * @param {proto.ICryptoUpdateTransactionBody} m CryptoUpdateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoUpdateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.accountIDToUpdate != null && Object.hasOwnProperty.call(m, \"accountIDToUpdate\"))\n $root.proto.AccountID.encode(m.accountIDToUpdate, w.uint32(18).fork()).ldelim();\n if (m.key != null && Object.hasOwnProperty.call(m, \"key\"))\n $root.proto.Key.encode(m.key, w.uint32(26).fork()).ldelim();\n if (m.proxyAccountID != null && Object.hasOwnProperty.call(m, \"proxyAccountID\"))\n $root.proto.AccountID.encode(m.proxyAccountID, w.uint32(34).fork()).ldelim();\n if (m.proxyFraction != null && Object.hasOwnProperty.call(m, \"proxyFraction\"))\n w.uint32(40).int32(m.proxyFraction);\n if (m.sendRecordThreshold != null && Object.hasOwnProperty.call(m, \"sendRecordThreshold\"))\n w.uint32(48).uint64(m.sendRecordThreshold);\n if (m.receiveRecordThreshold != null && Object.hasOwnProperty.call(m, \"receiveRecordThreshold\"))\n w.uint32(56).uint64(m.receiveRecordThreshold);\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(66).fork()).ldelim();\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.Timestamp.encode(m.expirationTime, w.uint32(74).fork()).ldelim();\n if (m.receiverSigRequired != null && Object.hasOwnProperty.call(m, \"receiverSigRequired\"))\n w.uint32(80).bool(m.receiverSigRequired);\n if (m.sendRecordThresholdWrapper != null && Object.hasOwnProperty.call(m, \"sendRecordThresholdWrapper\"))\n $root.google.protobuf.UInt64Value.encode(m.sendRecordThresholdWrapper, w.uint32(90).fork()).ldelim();\n if (m.receiveRecordThresholdWrapper != null && Object.hasOwnProperty.call(m, \"receiveRecordThresholdWrapper\"))\n $root.google.protobuf.UInt64Value.encode(m.receiveRecordThresholdWrapper, w.uint32(98).fork()).ldelim();\n if (m.receiverSigRequiredWrapper != null && Object.hasOwnProperty.call(m, \"receiverSigRequiredWrapper\"))\n $root.google.protobuf.BoolValue.encode(m.receiverSigRequiredWrapper, w.uint32(106).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n $root.google.protobuf.StringValue.encode(m.memo, w.uint32(114).fork()).ldelim();\n if (m.maxAutomaticTokenAssociations != null && Object.hasOwnProperty.call(m, \"maxAutomaticTokenAssociations\"))\n $root.google.protobuf.Int32Value.encode(m.maxAutomaticTokenAssociations, w.uint32(122).fork()).ldelim();\n if (m.alias != null && Object.hasOwnProperty.call(m, \"alias\"))\n w.uint32(130).bytes(m.alias);\n return w;\n };\n\n /**\n * Decodes a CryptoUpdateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoUpdateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoUpdateTransactionBody} CryptoUpdateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoUpdateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoUpdateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 2:\n m.accountIDToUpdate = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.key = $root.proto.Key.decode(r, r.uint32());\n break;\n case 4:\n m.proxyAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 5:\n m.proxyFraction = r.int32();\n break;\n case 6:\n m.sendRecordThreshold = r.uint64();\n break;\n case 11:\n m.sendRecordThresholdWrapper = $root.google.protobuf.UInt64Value.decode(r, r.uint32());\n break;\n case 7:\n m.receiveRecordThreshold = r.uint64();\n break;\n case 12:\n m.receiveRecordThresholdWrapper = $root.google.protobuf.UInt64Value.decode(r, r.uint32());\n break;\n case 8:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 9:\n m.expirationTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 10:\n m.receiverSigRequired = r.bool();\n break;\n case 13:\n m.receiverSigRequiredWrapper = $root.google.protobuf.BoolValue.decode(r, r.uint32());\n break;\n case 14:\n m.memo = $root.google.protobuf.StringValue.decode(r, r.uint32());\n break;\n case 15:\n m.maxAutomaticTokenAssociations = $root.google.protobuf.Int32Value.decode(r, r.uint32());\n break;\n case 16:\n m.alias = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoUpdateTransactionBody;\n })();\n\n proto.CryptoApproveAllowanceTransactionBody = (function() {\n\n /**\n * Properties of a CryptoApproveAllowanceTransactionBody.\n * @memberof proto\n * @interface ICryptoApproveAllowanceTransactionBody\n * @property {Array.|null} [cryptoAllowances] List of hbar allowances approved by the account owner.\n * @property {Array.|null} [nftAllowances] List of non-fungible token allowances approved by the account owner.\n * @property {Array.|null} [tokenAllowances] List of fungible token allowances approved by the account owner.\n */\n\n /**\n * Constructs a new CryptoApproveAllowanceTransactionBody.\n * @memberof proto\n * @classdesc Creates one or more hbar/token approved allowances relative to the payer account of this\n * transaction. Each allowance grants a spender the right to transfer a pre-determined\n * amount of the payer's hbar/token to any other account of the spender's choice.\n * \n * (So if account 0.0.X pays for this transaction, then at consensus each spender\n * account will have new allowances to spend hbar or tokens from 0.0.X).\n * @implements ICryptoApproveAllowanceTransactionBody\n * @constructor\n * @param {proto.ICryptoApproveAllowanceTransactionBody=} [p] Properties to set\n */\n function CryptoApproveAllowanceTransactionBody(p) {\n this.cryptoAllowances = [];\n this.nftAllowances = [];\n this.tokenAllowances = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * List of hbar allowances approved by the account owner.\n * @member {Array.} cryptoAllowances\n * @memberof proto.CryptoApproveAllowanceTransactionBody\n * @instance\n */\n CryptoApproveAllowanceTransactionBody.prototype.cryptoAllowances = $util.emptyArray;\n\n /**\n * List of non-fungible token allowances approved by the account owner.\n * @member {Array.} nftAllowances\n * @memberof proto.CryptoApproveAllowanceTransactionBody\n * @instance\n */\n CryptoApproveAllowanceTransactionBody.prototype.nftAllowances = $util.emptyArray;\n\n /**\n * List of fungible token allowances approved by the account owner.\n * @member {Array.} tokenAllowances\n * @memberof proto.CryptoApproveAllowanceTransactionBody\n * @instance\n */\n CryptoApproveAllowanceTransactionBody.prototype.tokenAllowances = $util.emptyArray;\n\n /**\n * Creates a new CryptoApproveAllowanceTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.CryptoApproveAllowanceTransactionBody\n * @static\n * @param {proto.ICryptoApproveAllowanceTransactionBody=} [properties] Properties to set\n * @returns {proto.CryptoApproveAllowanceTransactionBody} CryptoApproveAllowanceTransactionBody instance\n */\n CryptoApproveAllowanceTransactionBody.create = function create(properties) {\n return new CryptoApproveAllowanceTransactionBody(properties);\n };\n\n /**\n * Encodes the specified CryptoApproveAllowanceTransactionBody message. Does not implicitly {@link proto.CryptoApproveAllowanceTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoApproveAllowanceTransactionBody\n * @static\n * @param {proto.ICryptoApproveAllowanceTransactionBody} m CryptoApproveAllowanceTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoApproveAllowanceTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.cryptoAllowances != null && m.cryptoAllowances.length) {\n for (var i = 0; i < m.cryptoAllowances.length; ++i)\n $root.proto.CryptoAllowance.encode(m.cryptoAllowances[i], w.uint32(10).fork()).ldelim();\n }\n if (m.nftAllowances != null && m.nftAllowances.length) {\n for (var i = 0; i < m.nftAllowances.length; ++i)\n $root.proto.NftAllowance.encode(m.nftAllowances[i], w.uint32(18).fork()).ldelim();\n }\n if (m.tokenAllowances != null && m.tokenAllowances.length) {\n for (var i = 0; i < m.tokenAllowances.length; ++i)\n $root.proto.TokenAllowance.encode(m.tokenAllowances[i], w.uint32(26).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a CryptoApproveAllowanceTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoApproveAllowanceTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoApproveAllowanceTransactionBody} CryptoApproveAllowanceTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoApproveAllowanceTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoApproveAllowanceTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.cryptoAllowances && m.cryptoAllowances.length))\n m.cryptoAllowances = [];\n m.cryptoAllowances.push($root.proto.CryptoAllowance.decode(r, r.uint32()));\n break;\n case 2:\n if (!(m.nftAllowances && m.nftAllowances.length))\n m.nftAllowances = [];\n m.nftAllowances.push($root.proto.NftAllowance.decode(r, r.uint32()));\n break;\n case 3:\n if (!(m.tokenAllowances && m.tokenAllowances.length))\n m.tokenAllowances = [];\n m.tokenAllowances.push($root.proto.TokenAllowance.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoApproveAllowanceTransactionBody;\n })();\n\n proto.CryptoAdjustAllowanceTransactionBody = (function() {\n\n /**\n * Properties of a CryptoAdjustAllowanceTransactionBody.\n * @memberof proto\n * @interface ICryptoAdjustAllowanceTransactionBody\n * @property {Array.|null} [cryptoAllowances] List of hbar allowances approved by the account owner.\n * @property {Array.|null} [nftAllowances] List of non-fungible token allowances approved by the account owner.\n * @property {Array.|null} [tokenAllowances] List of fungible token allowances approved by the account owner.\n */\n\n /**\n * Constructs a new CryptoAdjustAllowanceTransactionBody.\n * @memberof proto\n * @classdesc Modifies or creates an hbar/token allowance for a spender relative to the payer account\n * of this transaction.\n * \n * (So if account 0.0.X pays for this transaction, then at consensus the spender\n * account will have new allowances to spend hbar or tokens from 0.0.X).\n * \n * If the allowance already exists, the hbar/token amount will be used to adjust the current\n * allowance balance. If this value is negative the approved allowance will be decreased.\n * The adjusted allowance balance cannot exceed the total supply of the token nor can it\n * be negative.\n * \n * If the allowance does not exist, it will be created with the hbar/token amount being used\n * as the allowance balance.\n * \n * IMPORTANT: If an allowance for the spender does not currently exist, this transaction\n * behaves like an allowance approval.\n * @implements ICryptoAdjustAllowanceTransactionBody\n * @constructor\n * @param {proto.ICryptoAdjustAllowanceTransactionBody=} [p] Properties to set\n */\n function CryptoAdjustAllowanceTransactionBody(p) {\n this.cryptoAllowances = [];\n this.nftAllowances = [];\n this.tokenAllowances = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * List of hbar allowances approved by the account owner.\n * @member {Array.} cryptoAllowances\n * @memberof proto.CryptoAdjustAllowanceTransactionBody\n * @instance\n */\n CryptoAdjustAllowanceTransactionBody.prototype.cryptoAllowances = $util.emptyArray;\n\n /**\n * List of non-fungible token allowances approved by the account owner.\n * @member {Array.} nftAllowances\n * @memberof proto.CryptoAdjustAllowanceTransactionBody\n * @instance\n */\n CryptoAdjustAllowanceTransactionBody.prototype.nftAllowances = $util.emptyArray;\n\n /**\n * List of fungible token allowances approved by the account owner.\n * @member {Array.} tokenAllowances\n * @memberof proto.CryptoAdjustAllowanceTransactionBody\n * @instance\n */\n CryptoAdjustAllowanceTransactionBody.prototype.tokenAllowances = $util.emptyArray;\n\n /**\n * Creates a new CryptoAdjustAllowanceTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.CryptoAdjustAllowanceTransactionBody\n * @static\n * @param {proto.ICryptoAdjustAllowanceTransactionBody=} [properties] Properties to set\n * @returns {proto.CryptoAdjustAllowanceTransactionBody} CryptoAdjustAllowanceTransactionBody instance\n */\n CryptoAdjustAllowanceTransactionBody.create = function create(properties) {\n return new CryptoAdjustAllowanceTransactionBody(properties);\n };\n\n /**\n * Encodes the specified CryptoAdjustAllowanceTransactionBody message. Does not implicitly {@link proto.CryptoAdjustAllowanceTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoAdjustAllowanceTransactionBody\n * @static\n * @param {proto.ICryptoAdjustAllowanceTransactionBody} m CryptoAdjustAllowanceTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoAdjustAllowanceTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.cryptoAllowances != null && m.cryptoAllowances.length) {\n for (var i = 0; i < m.cryptoAllowances.length; ++i)\n $root.proto.CryptoAllowance.encode(m.cryptoAllowances[i], w.uint32(10).fork()).ldelim();\n }\n if (m.nftAllowances != null && m.nftAllowances.length) {\n for (var i = 0; i < m.nftAllowances.length; ++i)\n $root.proto.NftAllowance.encode(m.nftAllowances[i], w.uint32(18).fork()).ldelim();\n }\n if (m.tokenAllowances != null && m.tokenAllowances.length) {\n for (var i = 0; i < m.tokenAllowances.length; ++i)\n $root.proto.TokenAllowance.encode(m.tokenAllowances[i], w.uint32(26).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a CryptoAdjustAllowanceTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoAdjustAllowanceTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoAdjustAllowanceTransactionBody} CryptoAdjustAllowanceTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoAdjustAllowanceTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoAdjustAllowanceTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.cryptoAllowances && m.cryptoAllowances.length))\n m.cryptoAllowances = [];\n m.cryptoAllowances.push($root.proto.CryptoAllowance.decode(r, r.uint32()));\n break;\n case 2:\n if (!(m.nftAllowances && m.nftAllowances.length))\n m.nftAllowances = [];\n m.nftAllowances.push($root.proto.NftAllowance.decode(r, r.uint32()));\n break;\n case 3:\n if (!(m.tokenAllowances && m.tokenAllowances.length))\n m.tokenAllowances = [];\n m.tokenAllowances.push($root.proto.TokenAllowance.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoAdjustAllowanceTransactionBody;\n })();\n\n proto.FileAppendTransactionBody = (function() {\n\n /**\n * Properties of a FileAppendTransactionBody.\n * @memberof proto\n * @interface IFileAppendTransactionBody\n * @property {proto.IFileID|null} [fileID] The file to which the bytes will be appended\n * @property {Uint8Array|null} [contents] The bytes that will be appended to the end of the specified file\n */\n\n /**\n * Constructs a new FileAppendTransactionBody.\n * @memberof proto\n * @classdesc Append the given contents to the end of the specified file. If a file is too big to create with a\n * single FileCreateTransaction, then it can be created with the first part of its contents, and\n * then appended as many times as necessary to create the entire file. This transaction must be\n * signed by all initial M-of-M KeyList keys. If keys contains additional KeyList or ThresholdKey\n * then M-of-M secondary KeyList or ThresholdKey signing requirements must be meet.\n * @implements IFileAppendTransactionBody\n * @constructor\n * @param {proto.IFileAppendTransactionBody=} [p] Properties to set\n */\n function FileAppendTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The file to which the bytes will be appended\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.FileAppendTransactionBody\n * @instance\n */\n FileAppendTransactionBody.prototype.fileID = null;\n\n /**\n * The bytes that will be appended to the end of the specified file\n * @member {Uint8Array} contents\n * @memberof proto.FileAppendTransactionBody\n * @instance\n */\n FileAppendTransactionBody.prototype.contents = $util.newBuffer([]);\n\n /**\n * Creates a new FileAppendTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.FileAppendTransactionBody\n * @static\n * @param {proto.IFileAppendTransactionBody=} [properties] Properties to set\n * @returns {proto.FileAppendTransactionBody} FileAppendTransactionBody instance\n */\n FileAppendTransactionBody.create = function create(properties) {\n return new FileAppendTransactionBody(properties);\n };\n\n /**\n * Encodes the specified FileAppendTransactionBody message. Does not implicitly {@link proto.FileAppendTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.FileAppendTransactionBody\n * @static\n * @param {proto.IFileAppendTransactionBody} m FileAppendTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FileAppendTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(18).fork()).ldelim();\n if (m.contents != null && Object.hasOwnProperty.call(m, \"contents\"))\n w.uint32(34).bytes(m.contents);\n return w;\n };\n\n /**\n * Decodes a FileAppendTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FileAppendTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FileAppendTransactionBody} FileAppendTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FileAppendTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FileAppendTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 2:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 4:\n m.contents = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FileAppendTransactionBody;\n })();\n\n proto.FileCreateTransactionBody = (function() {\n\n /**\n * Properties of a FileCreateTransactionBody.\n * @memberof proto\n * @interface IFileCreateTransactionBody\n * @property {proto.ITimestamp|null} [expirationTime] The time at which this file should expire (unless FileUpdateTransaction is used before then\n * to extend its life)\n * @property {proto.IKeyList|null} [keys] All keys at the top level of a key list must sign to create or modify the file. Any one of\n * the keys at the top level key list can sign to delete the file.\n * @property {Uint8Array|null} [contents] The bytes that are the contents of the file\n * @property {proto.IShardID|null} [shardID] Shard in which this file is created\n * @property {proto.IRealmID|null} [realmID] The Realm in which to the file is created (leave this null to create a new realm)\n * @property {proto.IKey|null} [newRealmAdminKey] If realmID is null, then this the admin key for the new realm that will be created\n * @property {string|null} [memo] The memo associated with the file (UTF-8 encoding max 100 bytes)\n */\n\n /**\n * Constructs a new FileCreateTransactionBody.\n * @memberof proto\n * @classdesc Create a new file, containing the given contents.\n * After the file is created, the FileID for it can be found in the receipt, or record, or retrieved\n * with a GetByKey query.\n * \n * The file contains the specified contents (possibly empty). The file will automatically disappear\n * at the expirationTime, unless its expiration is extended by another transaction before that time.\n * If the file is deleted, then its contents will become empty and it will be marked as deleted\n * until it expires, and then it will cease to exist.\n * \n * The keys field is a list of keys. All keys within the top-level key list must sign (M-M) to\n * create or modify a file. However, to delete the file, only one key (1-M) is required to sign from\n * the top-level key list. Each of those \"keys\" may itself be threshold key containing other keys\n * (including other threshold keys). In other words, the behavior is an AND for create/modify, OR\n * for delete. This is useful for acting as a revocation server. If it is desired to have the\n * behavior be AND for all 3 operations (or OR for all 3), then the list should have only a single\n * Key, which is a threshold key, with N=1 for OR, N=M for AND.\n * \n * If a file is created without ANY keys in the keys field, the file is immutable and ONLY the\n * expirationTime of the file can be changed with a FileUpdate transaction. The file contents or its\n * keys cannot be changed.\n * \n * An entity (account, file, or smart contract instance) must be created in a particular realm. If\n * the realmID is left null, then a new realm will be created with the given admin key. If a new\n * realm has a null adminKey, then anyone can create/modify/delete entities in that realm. But if an\n * admin key is given, then any transaction to create/modify/delete an entity in that realm must be\n * signed by that key, though anyone can still call functions on smart contract instances that exist\n * in that realm. A realm ceases to exist when everything within it has expired and no longer\n * exists.\n * \n * The current API ignores shardID, realmID, and newRealmAdminKey, and creates everything in shard 0\n * and realm 0, with a null key. Future versions of the API will support multiple realms and\n * multiple shards.\n * @implements IFileCreateTransactionBody\n * @constructor\n * @param {proto.IFileCreateTransactionBody=} [p] Properties to set\n */\n function FileCreateTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The time at which this file should expire (unless FileUpdateTransaction is used before then\n * to extend its life)\n * @member {proto.ITimestamp|null|undefined} expirationTime\n * @memberof proto.FileCreateTransactionBody\n * @instance\n */\n FileCreateTransactionBody.prototype.expirationTime = null;\n\n /**\n * All keys at the top level of a key list must sign to create or modify the file. Any one of\n * the keys at the top level key list can sign to delete the file.\n * @member {proto.IKeyList|null|undefined} keys\n * @memberof proto.FileCreateTransactionBody\n * @instance\n */\n FileCreateTransactionBody.prototype.keys = null;\n\n /**\n * The bytes that are the contents of the file\n * @member {Uint8Array} contents\n * @memberof proto.FileCreateTransactionBody\n * @instance\n */\n FileCreateTransactionBody.prototype.contents = $util.newBuffer([]);\n\n /**\n * Shard in which this file is created\n * @member {proto.IShardID|null|undefined} shardID\n * @memberof proto.FileCreateTransactionBody\n * @instance\n */\n FileCreateTransactionBody.prototype.shardID = null;\n\n /**\n * The Realm in which to the file is created (leave this null to create a new realm)\n * @member {proto.IRealmID|null|undefined} realmID\n * @memberof proto.FileCreateTransactionBody\n * @instance\n */\n FileCreateTransactionBody.prototype.realmID = null;\n\n /**\n * If realmID is null, then this the admin key for the new realm that will be created\n * @member {proto.IKey|null|undefined} newRealmAdminKey\n * @memberof proto.FileCreateTransactionBody\n * @instance\n */\n FileCreateTransactionBody.prototype.newRealmAdminKey = null;\n\n /**\n * The memo associated with the file (UTF-8 encoding max 100 bytes)\n * @member {string} memo\n * @memberof proto.FileCreateTransactionBody\n * @instance\n */\n FileCreateTransactionBody.prototype.memo = \"\";\n\n /**\n * Creates a new FileCreateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.FileCreateTransactionBody\n * @static\n * @param {proto.IFileCreateTransactionBody=} [properties] Properties to set\n * @returns {proto.FileCreateTransactionBody} FileCreateTransactionBody instance\n */\n FileCreateTransactionBody.create = function create(properties) {\n return new FileCreateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified FileCreateTransactionBody message. Does not implicitly {@link proto.FileCreateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.FileCreateTransactionBody\n * @static\n * @param {proto.IFileCreateTransactionBody} m FileCreateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FileCreateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.Timestamp.encode(m.expirationTime, w.uint32(18).fork()).ldelim();\n if (m.keys != null && Object.hasOwnProperty.call(m, \"keys\"))\n $root.proto.KeyList.encode(m.keys, w.uint32(26).fork()).ldelim();\n if (m.contents != null && Object.hasOwnProperty.call(m, \"contents\"))\n w.uint32(34).bytes(m.contents);\n if (m.shardID != null && Object.hasOwnProperty.call(m, \"shardID\"))\n $root.proto.ShardID.encode(m.shardID, w.uint32(42).fork()).ldelim();\n if (m.realmID != null && Object.hasOwnProperty.call(m, \"realmID\"))\n $root.proto.RealmID.encode(m.realmID, w.uint32(50).fork()).ldelim();\n if (m.newRealmAdminKey != null && Object.hasOwnProperty.call(m, \"newRealmAdminKey\"))\n $root.proto.Key.encode(m.newRealmAdminKey, w.uint32(58).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(66).string(m.memo);\n return w;\n };\n\n /**\n * Decodes a FileCreateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FileCreateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FileCreateTransactionBody} FileCreateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FileCreateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FileCreateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 2:\n m.expirationTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 3:\n m.keys = $root.proto.KeyList.decode(r, r.uint32());\n break;\n case 4:\n m.contents = r.bytes();\n break;\n case 5:\n m.shardID = $root.proto.ShardID.decode(r, r.uint32());\n break;\n case 6:\n m.realmID = $root.proto.RealmID.decode(r, r.uint32());\n break;\n case 7:\n m.newRealmAdminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 8:\n m.memo = r.string();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FileCreateTransactionBody;\n })();\n\n proto.FileDeleteTransactionBody = (function() {\n\n /**\n * Properties of a FileDeleteTransactionBody.\n * @memberof proto\n * @interface IFileDeleteTransactionBody\n * @property {proto.IFileID|null} [fileID] The file to delete. It will be marked as deleted until it expires. Then it will disappear.\n */\n\n /**\n * Constructs a new FileDeleteTransactionBody.\n * @memberof proto\n * @classdesc Delete the given file. After deletion, it will be marked as deleted and will have no contents.\n * But information about it will continue to exist until it expires. A list of keys was given when\n * the file was created. All the top level keys on that list must sign transactions to create or\n * modify the file, but any single one of the top level keys can be used to delete the file. This\n * transaction must be signed by 1-of-M KeyList keys. If keys contains additional KeyList or\n * ThresholdKey then 1-of-M secondary KeyList or ThresholdKey signing requirements must be meet.\n * @implements IFileDeleteTransactionBody\n * @constructor\n * @param {proto.IFileDeleteTransactionBody=} [p] Properties to set\n */\n function FileDeleteTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The file to delete. It will be marked as deleted until it expires. Then it will disappear.\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.FileDeleteTransactionBody\n * @instance\n */\n FileDeleteTransactionBody.prototype.fileID = null;\n\n /**\n * Creates a new FileDeleteTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.FileDeleteTransactionBody\n * @static\n * @param {proto.IFileDeleteTransactionBody=} [properties] Properties to set\n * @returns {proto.FileDeleteTransactionBody} FileDeleteTransactionBody instance\n */\n FileDeleteTransactionBody.create = function create(properties) {\n return new FileDeleteTransactionBody(properties);\n };\n\n /**\n * Encodes the specified FileDeleteTransactionBody message. Does not implicitly {@link proto.FileDeleteTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.FileDeleteTransactionBody\n * @static\n * @param {proto.IFileDeleteTransactionBody} m FileDeleteTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FileDeleteTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a FileDeleteTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FileDeleteTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FileDeleteTransactionBody} FileDeleteTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FileDeleteTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FileDeleteTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 2:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FileDeleteTransactionBody;\n })();\n\n proto.FileUpdateTransactionBody = (function() {\n\n /**\n * Properties of a FileUpdateTransactionBody.\n * @memberof proto\n * @interface IFileUpdateTransactionBody\n * @property {proto.IFileID|null} [fileID] The ID of the file to update\n * @property {proto.ITimestamp|null} [expirationTime] The new expiry time (ignored if not later than the current expiry)\n * @property {proto.IKeyList|null} [keys] The new list of keys that can modify or delete the file\n * @property {Uint8Array|null} [contents] The new contents that should overwrite the file's current contents\n * @property {google.protobuf.IStringValue|null} [memo] If set, the new memo to be associated with the file (UTF-8 encoding max 100 bytes)\n */\n\n /**\n * Constructs a new FileUpdateTransactionBody.\n * @memberof proto\n * @classdesc Modify the metadata and/or contents of a file. If a field is not set in the transaction body, the\n * corresponding file attribute will be unchanged. This transaction must be signed by all the keys\n * in the top level of a key list (M-of-M) of the file being updated. If the keys themselves are\n * being updated, then the transaction must also be signed by all the new keys. If the keys contain\n * additional KeyList or ThresholdKey then M-of-M secondary KeyList or ThresholdKey signing\n * requirements must be meet\n * @implements IFileUpdateTransactionBody\n * @constructor\n * @param {proto.IFileUpdateTransactionBody=} [p] Properties to set\n */\n function FileUpdateTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The ID of the file to update\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.FileUpdateTransactionBody\n * @instance\n */\n FileUpdateTransactionBody.prototype.fileID = null;\n\n /**\n * The new expiry time (ignored if not later than the current expiry)\n * @member {proto.ITimestamp|null|undefined} expirationTime\n * @memberof proto.FileUpdateTransactionBody\n * @instance\n */\n FileUpdateTransactionBody.prototype.expirationTime = null;\n\n /**\n * The new list of keys that can modify or delete the file\n * @member {proto.IKeyList|null|undefined} keys\n * @memberof proto.FileUpdateTransactionBody\n * @instance\n */\n FileUpdateTransactionBody.prototype.keys = null;\n\n /**\n * The new contents that should overwrite the file's current contents\n * @member {Uint8Array} contents\n * @memberof proto.FileUpdateTransactionBody\n * @instance\n */\n FileUpdateTransactionBody.prototype.contents = $util.newBuffer([]);\n\n /**\n * If set, the new memo to be associated with the file (UTF-8 encoding max 100 bytes)\n * @member {google.protobuf.IStringValue|null|undefined} memo\n * @memberof proto.FileUpdateTransactionBody\n * @instance\n */\n FileUpdateTransactionBody.prototype.memo = null;\n\n /**\n * Creates a new FileUpdateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.FileUpdateTransactionBody\n * @static\n * @param {proto.IFileUpdateTransactionBody=} [properties] Properties to set\n * @returns {proto.FileUpdateTransactionBody} FileUpdateTransactionBody instance\n */\n FileUpdateTransactionBody.create = function create(properties) {\n return new FileUpdateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified FileUpdateTransactionBody message. Does not implicitly {@link proto.FileUpdateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.FileUpdateTransactionBody\n * @static\n * @param {proto.IFileUpdateTransactionBody} m FileUpdateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FileUpdateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(10).fork()).ldelim();\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.Timestamp.encode(m.expirationTime, w.uint32(18).fork()).ldelim();\n if (m.keys != null && Object.hasOwnProperty.call(m, \"keys\"))\n $root.proto.KeyList.encode(m.keys, w.uint32(26).fork()).ldelim();\n if (m.contents != null && Object.hasOwnProperty.call(m, \"contents\"))\n w.uint32(34).bytes(m.contents);\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n $root.google.protobuf.StringValue.encode(m.memo, w.uint32(42).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a FileUpdateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FileUpdateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FileUpdateTransactionBody} FileUpdateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FileUpdateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FileUpdateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 2:\n m.expirationTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 3:\n m.keys = $root.proto.KeyList.decode(r, r.uint32());\n break;\n case 4:\n m.contents = r.bytes();\n break;\n case 5:\n m.memo = $root.google.protobuf.StringValue.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FileUpdateTransactionBody;\n })();\n\n proto.ContractDeleteTransactionBody = (function() {\n\n /**\n * Properties of a ContractDeleteTransactionBody.\n * @memberof proto\n * @interface IContractDeleteTransactionBody\n * @property {proto.IContractID|null} [contractID] The id of the contract to be deleted\n * @property {proto.IAccountID|null} [transferAccountID] The id of an account to receive any remaining hBars from the deleted contract\n * @property {proto.IContractID|null} [transferContractID] The id of a contract to receive any remaining hBars from the deleted contract\n */\n\n /**\n * Constructs a new ContractDeleteTransactionBody.\n * @memberof proto\n * @classdesc At consensus, marks a contract as deleted and transfers its remaining hBars, if any, to a\n * designated receiver. After a contract is deleted, it can no longer be called.\n * \n * If the target contract is immutable (that is, was created without an admin key), then this\n * transaction resolves to MODIFYING_IMMUTABLE_CONTRACT.\n * \n * --- Signing Requirements ---\n * 1. The admin key of the target contract must sign.\n * 2. If the transfer account or contract has receiverSigRequired, its associated key must also sign\n * @implements IContractDeleteTransactionBody\n * @constructor\n * @param {proto.IContractDeleteTransactionBody=} [p] Properties to set\n */\n function ContractDeleteTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The id of the contract to be deleted\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractDeleteTransactionBody\n * @instance\n */\n ContractDeleteTransactionBody.prototype.contractID = null;\n\n /**\n * The id of an account to receive any remaining hBars from the deleted contract\n * @member {proto.IAccountID|null|undefined} transferAccountID\n * @memberof proto.ContractDeleteTransactionBody\n * @instance\n */\n ContractDeleteTransactionBody.prototype.transferAccountID = null;\n\n /**\n * The id of a contract to receive any remaining hBars from the deleted contract\n * @member {proto.IContractID|null|undefined} transferContractID\n * @memberof proto.ContractDeleteTransactionBody\n * @instance\n */\n ContractDeleteTransactionBody.prototype.transferContractID = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * ContractDeleteTransactionBody obtainers.\n * @member {\"transferAccountID\"|\"transferContractID\"|undefined} obtainers\n * @memberof proto.ContractDeleteTransactionBody\n * @instance\n */\n Object.defineProperty(ContractDeleteTransactionBody.prototype, \"obtainers\", {\n get: $util.oneOfGetter($oneOfFields = [\"transferAccountID\", \"transferContractID\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new ContractDeleteTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.ContractDeleteTransactionBody\n * @static\n * @param {proto.IContractDeleteTransactionBody=} [properties] Properties to set\n * @returns {proto.ContractDeleteTransactionBody} ContractDeleteTransactionBody instance\n */\n ContractDeleteTransactionBody.create = function create(properties) {\n return new ContractDeleteTransactionBody(properties);\n };\n\n /**\n * Encodes the specified ContractDeleteTransactionBody message. Does not implicitly {@link proto.ContractDeleteTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractDeleteTransactionBody\n * @static\n * @param {proto.IContractDeleteTransactionBody} m ContractDeleteTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractDeleteTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(10).fork()).ldelim();\n if (m.transferAccountID != null && Object.hasOwnProperty.call(m, \"transferAccountID\"))\n $root.proto.AccountID.encode(m.transferAccountID, w.uint32(18).fork()).ldelim();\n if (m.transferContractID != null && Object.hasOwnProperty.call(m, \"transferContractID\"))\n $root.proto.ContractID.encode(m.transferContractID, w.uint32(26).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ContractDeleteTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractDeleteTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractDeleteTransactionBody} ContractDeleteTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractDeleteTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractDeleteTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 2:\n m.transferAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.transferContractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractDeleteTransactionBody;\n })();\n\n proto.ConsensusUpdateTopicTransactionBody = (function() {\n\n /**\n * Properties of a ConsensusUpdateTopicTransactionBody.\n * @memberof proto\n * @interface IConsensusUpdateTopicTransactionBody\n * @property {proto.ITopicID|null} [topicID] UNDOCUMENTED\n * @property {google.protobuf.IStringValue|null} [memo] If set, the new memo to be associated with the topic (UTF-8 encoding max 100 bytes)\n * @property {proto.ITimestamp|null} [expirationTime] Effective consensus timestamp at (and after) which all consensus transactions and queries will fail.\n * The expirationTime may be no longer than MAX_AUTORENEW_PERIOD (8000001 seconds) from the consensus timestamp of\n * this transaction.\n * On topics with no adminKey, extending the expirationTime is the only updateTopic option allowed on the topic.\n * If unspecified, no change.\n * @property {proto.IKey|null} [adminKey] Access control for update/delete of the topic.\n * If unspecified, no change.\n * If empty keyList - the adminKey is cleared.\n * @property {proto.IKey|null} [submitKey] Access control for ConsensusService.submitMessage.\n * If unspecified, no change.\n * If empty keyList - the submitKey is cleared.\n * @property {proto.IDuration|null} [autoRenewPeriod] ConsensusUpdateTopicTransactionBody autoRenewPeriod\n * @property {proto.IAccountID|null} [autoRenewAccount] Optional account to be used at the topic's expirationTime to extend the life of the topic.\n * Once autoRenew functionality is supported by HAPI, the topic lifetime will be extended up to a maximum of the\n * autoRenewPeriod or however long the topic can be extended using all funds on the account (whichever is the\n * smaller duration/amount).\n * If specified as the default value (0.0.0), the autoRenewAccount will be removed.\n * If unspecified, no change.\n */\n\n /**\n * Constructs a new ConsensusUpdateTopicTransactionBody.\n * @memberof proto\n * @classdesc All fields left null will not be updated.\n * See [ConsensusService.updateTopic()](#proto.ConsensusService)\n * @implements IConsensusUpdateTopicTransactionBody\n * @constructor\n * @param {proto.IConsensusUpdateTopicTransactionBody=} [p] Properties to set\n */\n function ConsensusUpdateTopicTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * UNDOCUMENTED\n * @member {proto.ITopicID|null|undefined} topicID\n * @memberof proto.ConsensusUpdateTopicTransactionBody\n * @instance\n */\n ConsensusUpdateTopicTransactionBody.prototype.topicID = null;\n\n /**\n * If set, the new memo to be associated with the topic (UTF-8 encoding max 100 bytes)\n * @member {google.protobuf.IStringValue|null|undefined} memo\n * @memberof proto.ConsensusUpdateTopicTransactionBody\n * @instance\n */\n ConsensusUpdateTopicTransactionBody.prototype.memo = null;\n\n /**\n * Effective consensus timestamp at (and after) which all consensus transactions and queries will fail.\n * The expirationTime may be no longer than MAX_AUTORENEW_PERIOD (8000001 seconds) from the consensus timestamp of\n * this transaction.\n * On topics with no adminKey, extending the expirationTime is the only updateTopic option allowed on the topic.\n * If unspecified, no change.\n * @member {proto.ITimestamp|null|undefined} expirationTime\n * @memberof proto.ConsensusUpdateTopicTransactionBody\n * @instance\n */\n ConsensusUpdateTopicTransactionBody.prototype.expirationTime = null;\n\n /**\n * Access control for update/delete of the topic.\n * If unspecified, no change.\n * If empty keyList - the adminKey is cleared.\n * @member {proto.IKey|null|undefined} adminKey\n * @memberof proto.ConsensusUpdateTopicTransactionBody\n * @instance\n */\n ConsensusUpdateTopicTransactionBody.prototype.adminKey = null;\n\n /**\n * Access control for ConsensusService.submitMessage.\n * If unspecified, no change.\n * If empty keyList - the submitKey is cleared.\n * @member {proto.IKey|null|undefined} submitKey\n * @memberof proto.ConsensusUpdateTopicTransactionBody\n * @instance\n */\n ConsensusUpdateTopicTransactionBody.prototype.submitKey = null;\n\n /**\n * ConsensusUpdateTopicTransactionBody autoRenewPeriod.\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.ConsensusUpdateTopicTransactionBody\n * @instance\n */\n ConsensusUpdateTopicTransactionBody.prototype.autoRenewPeriod = null;\n\n /**\n * Optional account to be used at the topic's expirationTime to extend the life of the topic.\n * Once autoRenew functionality is supported by HAPI, the topic lifetime will be extended up to a maximum of the\n * autoRenewPeriod or however long the topic can be extended using all funds on the account (whichever is the\n * smaller duration/amount).\n * If specified as the default value (0.0.0), the autoRenewAccount will be removed.\n * If unspecified, no change.\n * @member {proto.IAccountID|null|undefined} autoRenewAccount\n * @memberof proto.ConsensusUpdateTopicTransactionBody\n * @instance\n */\n ConsensusUpdateTopicTransactionBody.prototype.autoRenewAccount = null;\n\n /**\n * Creates a new ConsensusUpdateTopicTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.ConsensusUpdateTopicTransactionBody\n * @static\n * @param {proto.IConsensusUpdateTopicTransactionBody=} [properties] Properties to set\n * @returns {proto.ConsensusUpdateTopicTransactionBody} ConsensusUpdateTopicTransactionBody instance\n */\n ConsensusUpdateTopicTransactionBody.create = function create(properties) {\n return new ConsensusUpdateTopicTransactionBody(properties);\n };\n\n /**\n * Encodes the specified ConsensusUpdateTopicTransactionBody message. Does not implicitly {@link proto.ConsensusUpdateTopicTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.ConsensusUpdateTopicTransactionBody\n * @static\n * @param {proto.IConsensusUpdateTopicTransactionBody} m ConsensusUpdateTopicTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ConsensusUpdateTopicTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.topicID != null && Object.hasOwnProperty.call(m, \"topicID\"))\n $root.proto.TopicID.encode(m.topicID, w.uint32(10).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n $root.google.protobuf.StringValue.encode(m.memo, w.uint32(18).fork()).ldelim();\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.Timestamp.encode(m.expirationTime, w.uint32(34).fork()).ldelim();\n if (m.adminKey != null && Object.hasOwnProperty.call(m, \"adminKey\"))\n $root.proto.Key.encode(m.adminKey, w.uint32(50).fork()).ldelim();\n if (m.submitKey != null && Object.hasOwnProperty.call(m, \"submitKey\"))\n $root.proto.Key.encode(m.submitKey, w.uint32(58).fork()).ldelim();\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(66).fork()).ldelim();\n if (m.autoRenewAccount != null && Object.hasOwnProperty.call(m, \"autoRenewAccount\"))\n $root.proto.AccountID.encode(m.autoRenewAccount, w.uint32(74).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ConsensusUpdateTopicTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ConsensusUpdateTopicTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ConsensusUpdateTopicTransactionBody} ConsensusUpdateTopicTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ConsensusUpdateTopicTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ConsensusUpdateTopicTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.topicID = $root.proto.TopicID.decode(r, r.uint32());\n break;\n case 2:\n m.memo = $root.google.protobuf.StringValue.decode(r, r.uint32());\n break;\n case 4:\n m.expirationTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 6:\n m.adminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 7:\n m.submitKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 8:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 9:\n m.autoRenewAccount = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ConsensusUpdateTopicTransactionBody;\n })();\n\n proto.ConsensusMessageChunkInfo = (function() {\n\n /**\n * Properties of a ConsensusMessageChunkInfo.\n * @memberof proto\n * @interface IConsensusMessageChunkInfo\n * @property {proto.ITransactionID|null} [initialTransactionID] TransactionID of the first chunk, gets copied to every subsequent chunk in a fragmented message.\n * @property {number|null} [total] The total number of chunks in the message.\n * @property {number|null} [number] The sequence number (from 1 to total) of the current chunk in the message.\n */\n\n /**\n * Constructs a new ConsensusMessageChunkInfo.\n * @memberof proto\n * @classdesc UNDOCUMENTED\n * @implements IConsensusMessageChunkInfo\n * @constructor\n * @param {proto.IConsensusMessageChunkInfo=} [p] Properties to set\n */\n function ConsensusMessageChunkInfo(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * TransactionID of the first chunk, gets copied to every subsequent chunk in a fragmented message.\n * @member {proto.ITransactionID|null|undefined} initialTransactionID\n * @memberof proto.ConsensusMessageChunkInfo\n * @instance\n */\n ConsensusMessageChunkInfo.prototype.initialTransactionID = null;\n\n /**\n * The total number of chunks in the message.\n * @member {number} total\n * @memberof proto.ConsensusMessageChunkInfo\n * @instance\n */\n ConsensusMessageChunkInfo.prototype.total = 0;\n\n /**\n * The sequence number (from 1 to total) of the current chunk in the message.\n * @member {number} number\n * @memberof proto.ConsensusMessageChunkInfo\n * @instance\n */\n ConsensusMessageChunkInfo.prototype.number = 0;\n\n /**\n * Creates a new ConsensusMessageChunkInfo instance using the specified properties.\n * @function create\n * @memberof proto.ConsensusMessageChunkInfo\n * @static\n * @param {proto.IConsensusMessageChunkInfo=} [properties] Properties to set\n * @returns {proto.ConsensusMessageChunkInfo} ConsensusMessageChunkInfo instance\n */\n ConsensusMessageChunkInfo.create = function create(properties) {\n return new ConsensusMessageChunkInfo(properties);\n };\n\n /**\n * Encodes the specified ConsensusMessageChunkInfo message. Does not implicitly {@link proto.ConsensusMessageChunkInfo.verify|verify} messages.\n * @function encode\n * @memberof proto.ConsensusMessageChunkInfo\n * @static\n * @param {proto.IConsensusMessageChunkInfo} m ConsensusMessageChunkInfo message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ConsensusMessageChunkInfo.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.initialTransactionID != null && Object.hasOwnProperty.call(m, \"initialTransactionID\"))\n $root.proto.TransactionID.encode(m.initialTransactionID, w.uint32(10).fork()).ldelim();\n if (m.total != null && Object.hasOwnProperty.call(m, \"total\"))\n w.uint32(16).int32(m.total);\n if (m.number != null && Object.hasOwnProperty.call(m, \"number\"))\n w.uint32(24).int32(m.number);\n return w;\n };\n\n /**\n * Decodes a ConsensusMessageChunkInfo message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ConsensusMessageChunkInfo\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ConsensusMessageChunkInfo} ConsensusMessageChunkInfo\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ConsensusMessageChunkInfo.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ConsensusMessageChunkInfo();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.initialTransactionID = $root.proto.TransactionID.decode(r, r.uint32());\n break;\n case 2:\n m.total = r.int32();\n break;\n case 3:\n m.number = r.int32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ConsensusMessageChunkInfo;\n })();\n\n proto.ConsensusSubmitMessageTransactionBody = (function() {\n\n /**\n * Properties of a ConsensusSubmitMessageTransactionBody.\n * @memberof proto\n * @interface IConsensusSubmitMessageTransactionBody\n * @property {proto.ITopicID|null} [topicID] Topic to submit message to.\n * @property {Uint8Array|null} [message] Message to be submitted. Max size of the Transaction (including signatures) is 6KiB.\n * @property {proto.IConsensusMessageChunkInfo|null} [chunkInfo] Optional information of the current chunk in a fragmented message.\n */\n\n /**\n * Constructs a new ConsensusSubmitMessageTransactionBody.\n * @memberof proto\n * @classdesc UNDOCUMENTED\n * @implements IConsensusSubmitMessageTransactionBody\n * @constructor\n * @param {proto.IConsensusSubmitMessageTransactionBody=} [p] Properties to set\n */\n function ConsensusSubmitMessageTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Topic to submit message to.\n * @member {proto.ITopicID|null|undefined} topicID\n * @memberof proto.ConsensusSubmitMessageTransactionBody\n * @instance\n */\n ConsensusSubmitMessageTransactionBody.prototype.topicID = null;\n\n /**\n * Message to be submitted. Max size of the Transaction (including signatures) is 6KiB.\n * @member {Uint8Array} message\n * @memberof proto.ConsensusSubmitMessageTransactionBody\n * @instance\n */\n ConsensusSubmitMessageTransactionBody.prototype.message = $util.newBuffer([]);\n\n /**\n * Optional information of the current chunk in a fragmented message.\n * @member {proto.IConsensusMessageChunkInfo|null|undefined} chunkInfo\n * @memberof proto.ConsensusSubmitMessageTransactionBody\n * @instance\n */\n ConsensusSubmitMessageTransactionBody.prototype.chunkInfo = null;\n\n /**\n * Creates a new ConsensusSubmitMessageTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.ConsensusSubmitMessageTransactionBody\n * @static\n * @param {proto.IConsensusSubmitMessageTransactionBody=} [properties] Properties to set\n * @returns {proto.ConsensusSubmitMessageTransactionBody} ConsensusSubmitMessageTransactionBody instance\n */\n ConsensusSubmitMessageTransactionBody.create = function create(properties) {\n return new ConsensusSubmitMessageTransactionBody(properties);\n };\n\n /**\n * Encodes the specified ConsensusSubmitMessageTransactionBody message. Does not implicitly {@link proto.ConsensusSubmitMessageTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.ConsensusSubmitMessageTransactionBody\n * @static\n * @param {proto.IConsensusSubmitMessageTransactionBody} m ConsensusSubmitMessageTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ConsensusSubmitMessageTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.topicID != null && Object.hasOwnProperty.call(m, \"topicID\"))\n $root.proto.TopicID.encode(m.topicID, w.uint32(10).fork()).ldelim();\n if (m.message != null && Object.hasOwnProperty.call(m, \"message\"))\n w.uint32(18).bytes(m.message);\n if (m.chunkInfo != null && Object.hasOwnProperty.call(m, \"chunkInfo\"))\n $root.proto.ConsensusMessageChunkInfo.encode(m.chunkInfo, w.uint32(26).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ConsensusSubmitMessageTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ConsensusSubmitMessageTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ConsensusSubmitMessageTransactionBody} ConsensusSubmitMessageTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ConsensusSubmitMessageTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ConsensusSubmitMessageTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.topicID = $root.proto.TopicID.decode(r, r.uint32());\n break;\n case 2:\n m.message = r.bytes();\n break;\n case 3:\n m.chunkInfo = $root.proto.ConsensusMessageChunkInfo.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ConsensusSubmitMessageTransactionBody;\n })();\n\n proto.UncheckedSubmitBody = (function() {\n\n /**\n * Properties of an UncheckedSubmitBody.\n * @memberof proto\n * @interface IUncheckedSubmitBody\n * @property {Uint8Array|null} [transactionBytes] The serialized bytes of the Transaction to be submitted without prechecks\n */\n\n /**\n * Constructs a new UncheckedSubmitBody.\n * @memberof proto\n * @classdesc Submit an arbitrary (serialized) Transaction to the network without prechecks. Requires superuser\n * privileges.\n * @implements IUncheckedSubmitBody\n * @constructor\n * @param {proto.IUncheckedSubmitBody=} [p] Properties to set\n */\n function UncheckedSubmitBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The serialized bytes of the Transaction to be submitted without prechecks\n * @member {Uint8Array} transactionBytes\n * @memberof proto.UncheckedSubmitBody\n * @instance\n */\n UncheckedSubmitBody.prototype.transactionBytes = $util.newBuffer([]);\n\n /**\n * Creates a new UncheckedSubmitBody instance using the specified properties.\n * @function create\n * @memberof proto.UncheckedSubmitBody\n * @static\n * @param {proto.IUncheckedSubmitBody=} [properties] Properties to set\n * @returns {proto.UncheckedSubmitBody} UncheckedSubmitBody instance\n */\n UncheckedSubmitBody.create = function create(properties) {\n return new UncheckedSubmitBody(properties);\n };\n\n /**\n * Encodes the specified UncheckedSubmitBody message. Does not implicitly {@link proto.UncheckedSubmitBody.verify|verify} messages.\n * @function encode\n * @memberof proto.UncheckedSubmitBody\n * @static\n * @param {proto.IUncheckedSubmitBody} m UncheckedSubmitBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n UncheckedSubmitBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.transactionBytes != null && Object.hasOwnProperty.call(m, \"transactionBytes\"))\n w.uint32(10).bytes(m.transactionBytes);\n return w;\n };\n\n /**\n * Decodes an UncheckedSubmitBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.UncheckedSubmitBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.UncheckedSubmitBody} UncheckedSubmitBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n UncheckedSubmitBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.UncheckedSubmitBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.transactionBytes = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return UncheckedSubmitBody;\n })();\n\n proto.TokenCreateTransactionBody = (function() {\n\n /**\n * Properties of a TokenCreateTransactionBody.\n * @memberof proto\n * @interface ITokenCreateTransactionBody\n * @property {string|null} [name] The publicly visible name of the token. The token name is specified as a Unicode string.\n * Its UTF-8 encoding cannot exceed 100 bytes, and cannot contain the 0 byte (NUL).\n * @property {string|null} [symbol] The publicly visible token symbol. The token symbol is specified as a Unicode string.\n * Its UTF-8 encoding cannot exceed 100 bytes, and cannot contain the 0 byte (NUL).\n * @property {number|null} [decimals] For tokens of type FUNGIBLE_COMMON - the number of decimal places a\n * token is divisible by. For tokens of type NON_FUNGIBLE_UNIQUE - value\n * must be 0\n * @property {Long|null} [initialSupply] Specifies the initial supply of tokens to be put in circulation. The\n * initial supply is sent to the Treasury Account. The supply is in the\n * lowest denomination possible. In the case for NON_FUNGIBLE_UNIQUE Type\n * the value must be 0\n * @property {proto.IAccountID|null} [treasury] The account which will act as a treasury for the token. This account\n * will receive the specified initial supply or the newly minted NFTs in\n * the case for NON_FUNGIBLE_UNIQUE Type\n * @property {proto.IKey|null} [adminKey] The key which can perform update/delete operations on the token. If empty, the token can be\n * perceived as immutable (not being able to be updated/deleted)\n * @property {proto.IKey|null} [kycKey] The key which can grant or revoke KYC of an account for the token's transactions. If empty,\n * KYC is not required, and KYC grant or revoke operations are not possible.\n * @property {proto.IKey|null} [freezeKey] The key which can sign to freeze or unfreeze an account for token transactions. If empty,\n * freezing is not possible\n * @property {proto.IKey|null} [wipeKey] The key which can wipe the token balance of an account. If empty, wipe is not possible\n * @property {proto.IKey|null} [supplyKey] The key which can change the supply of a token. The key is used to sign Token Mint/Burn\n * operations\n * @property {boolean|null} [freezeDefault] The default Freeze status (frozen or unfrozen) of Hedera accounts relative to this token. If\n * true, an account must be unfrozen before it can receive the token\n * @property {proto.ITimestamp|null} [expiry] The epoch second at which the token should expire; if an auto-renew account and period are\n * specified, this is coerced to the current epoch second plus the autoRenewPeriod\n * @property {proto.IAccountID|null} [autoRenewAccount] An account which will be automatically charged to renew the token's expiration, at\n * autoRenewPeriod interval\n * @property {proto.IDuration|null} [autoRenewPeriod] The interval at which the auto-renew account will be charged to extend the token's expiry\n * @property {string|null} [memo] The memo associated with the token (UTF-8 encoding max 100 bytes)\n * @property {proto.TokenType|null} [tokenType] IWA compatibility. Specifies the token type. Defaults to FUNGIBLE_COMMON\n * @property {proto.TokenSupplyType|null} [supplyType] IWA compatibility. Specified the token supply type. Defaults to INFINITE\n * @property {Long|null} [maxSupply] IWA Compatibility. Depends on TokenSupplyType. For tokens of type FUNGIBLE_COMMON - the\n * maximum number of tokens that can be in circulation. For tokens of type NON_FUNGIBLE_UNIQUE -\n * the maximum number of NFTs (serial numbers) that can be minted. This field can never be\n * changed!\n * @property {proto.IKey|null} [feeScheduleKey] The key which can change the token's custom fee schedule; must sign a TokenFeeScheduleUpdate\n * transaction\n * @property {Array.|null} [customFees] The custom fees to be assessed during a CryptoTransfer that transfers units of this token\n * @property {proto.IKey|null} [pauseKey] The Key which can pause and unpause the Token.\n * If Empty the token pause status defaults to PauseNotApplicable, otherwise Unpaused.\n */\n\n /**\n * Constructs a new TokenCreateTransactionBody.\n * @memberof proto\n * @classdesc Create a new token. After the token is created, the Token ID for it is in the receipt.\n * The specified Treasury Account is receiving the initial supply of tokens as-well as the tokens\n * from the Token Mint operation once executed. The balance of the treasury account is decreased\n * when the Token Burn operation is executed.\n * \n * The initialSupply is the initial supply of the smallest parts of a token (like a\n * tinybar, not an hbar). These are the smallest units of the token which may be transferred.\n * \n * The supply can change over time. If the total supply at some moment is S parts of tokens,\n * and the token is using D decimals, then S must be less than or equal to\n * 263-1, which is 9,223,372,036,854,775,807. The number of whole tokens (not parts) will\n * be S / 10D.\n * \n * If decimals is 8 or 11, then the number of whole tokens can be at most a few billions or\n * millions, respectively. For example, it could match Bitcoin (21 million whole tokens with 8\n * decimals) or hbars (50 billion whole tokens with 8 decimals). It could even match Bitcoin with\n * milli-satoshis (21 million whole tokens with 11 decimals).\n * \n * Note that a created token is immutable if the adminKey is omitted. No property of\n * an immutable token can ever change, with the sole exception of its expiry. Anyone can pay to\n * extend the expiry time of an immutable token.\n * \n * A token can be either FUNGIBLE_COMMON or NON_FUNGIBLE_UNIQUE, based on its\n * TokenType. If it has been omitted, FUNGIBLE_COMMON type is used.\n * \n * A token can have either INFINITE or FINITE supply type, based on its\n * TokenType. If it has been omitted, INFINITE type is used.\n * \n * If a FUNGIBLE TokenType is used, initialSupply should explicitly be set to a\n * non-negative. If not, the transaction will resolve to INVALID_TOKEN_INITIAL_SUPPLY.\n * \n * If a NON_FUNGIBLE_UNIQUE TokenType is used, initialSupply should explicitly be set\n * to 0. If not, the transaction will resolve to INVALID_TOKEN_INITIAL_SUPPLY.\n * \n * If an INFINITE TokenSupplyType is used, maxSupply should explicitly be set to 0. If\n * it is not 0, the transaction will resolve to INVALID_TOKEN_MAX_SUPPLY.\n * \n * If a FINITE TokenSupplyType is used, maxSupply should be explicitly set to a\n * non-negative value. If it is not, the transaction will resolve to INVALID_TOKEN_MAX_SUPPLY.\n * @implements ITokenCreateTransactionBody\n * @constructor\n * @param {proto.ITokenCreateTransactionBody=} [p] Properties to set\n */\n function TokenCreateTransactionBody(p) {\n this.customFees = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The publicly visible name of the token. The token name is specified as a Unicode string.\n * Its UTF-8 encoding cannot exceed 100 bytes, and cannot contain the 0 byte (NUL).\n * @member {string} name\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.name = \"\";\n\n /**\n * The publicly visible token symbol. The token symbol is specified as a Unicode string.\n * Its UTF-8 encoding cannot exceed 100 bytes, and cannot contain the 0 byte (NUL).\n * @member {string} symbol\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.symbol = \"\";\n\n /**\n * For tokens of type FUNGIBLE_COMMON - the number of decimal places a\n * token is divisible by. For tokens of type NON_FUNGIBLE_UNIQUE - value\n * must be 0\n * @member {number} decimals\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.decimals = 0;\n\n /**\n * Specifies the initial supply of tokens to be put in circulation. The\n * initial supply is sent to the Treasury Account. The supply is in the\n * lowest denomination possible. In the case for NON_FUNGIBLE_UNIQUE Type\n * the value must be 0\n * @member {Long} initialSupply\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.initialSupply = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * The account which will act as a treasury for the token. This account\n * will receive the specified initial supply or the newly minted NFTs in\n * the case for NON_FUNGIBLE_UNIQUE Type\n * @member {proto.IAccountID|null|undefined} treasury\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.treasury = null;\n\n /**\n * The key which can perform update/delete operations on the token. If empty, the token can be\n * perceived as immutable (not being able to be updated/deleted)\n * @member {proto.IKey|null|undefined} adminKey\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.adminKey = null;\n\n /**\n * The key which can grant or revoke KYC of an account for the token's transactions. If empty,\n * KYC is not required, and KYC grant or revoke operations are not possible.\n * @member {proto.IKey|null|undefined} kycKey\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.kycKey = null;\n\n /**\n * The key which can sign to freeze or unfreeze an account for token transactions. If empty,\n * freezing is not possible\n * @member {proto.IKey|null|undefined} freezeKey\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.freezeKey = null;\n\n /**\n * The key which can wipe the token balance of an account. If empty, wipe is not possible\n * @member {proto.IKey|null|undefined} wipeKey\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.wipeKey = null;\n\n /**\n * The key which can change the supply of a token. The key is used to sign Token Mint/Burn\n * operations\n * @member {proto.IKey|null|undefined} supplyKey\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.supplyKey = null;\n\n /**\n * The default Freeze status (frozen or unfrozen) of Hedera accounts relative to this token. If\n * true, an account must be unfrozen before it can receive the token\n * @member {boolean} freezeDefault\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.freezeDefault = false;\n\n /**\n * The epoch second at which the token should expire; if an auto-renew account and period are\n * specified, this is coerced to the current epoch second plus the autoRenewPeriod\n * @member {proto.ITimestamp|null|undefined} expiry\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.expiry = null;\n\n /**\n * An account which will be automatically charged to renew the token's expiration, at\n * autoRenewPeriod interval\n * @member {proto.IAccountID|null|undefined} autoRenewAccount\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.autoRenewAccount = null;\n\n /**\n * The interval at which the auto-renew account will be charged to extend the token's expiry\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.autoRenewPeriod = null;\n\n /**\n * The memo associated with the token (UTF-8 encoding max 100 bytes)\n * @member {string} memo\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.memo = \"\";\n\n /**\n * IWA compatibility. Specifies the token type. Defaults to FUNGIBLE_COMMON\n * @member {proto.TokenType} tokenType\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.tokenType = 0;\n\n /**\n * IWA compatibility. Specified the token supply type. Defaults to INFINITE\n * @member {proto.TokenSupplyType} supplyType\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.supplyType = 0;\n\n /**\n * IWA Compatibility. Depends on TokenSupplyType. For tokens of type FUNGIBLE_COMMON - the\n * maximum number of tokens that can be in circulation. For tokens of type NON_FUNGIBLE_UNIQUE -\n * the maximum number of NFTs (serial numbers) that can be minted. This field can never be\n * changed!\n * @member {Long} maxSupply\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.maxSupply = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The key which can change the token's custom fee schedule; must sign a TokenFeeScheduleUpdate\n * transaction\n * @member {proto.IKey|null|undefined} feeScheduleKey\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.feeScheduleKey = null;\n\n /**\n * The custom fees to be assessed during a CryptoTransfer that transfers units of this token\n * @member {Array.} customFees\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.customFees = $util.emptyArray;\n\n /**\n * The Key which can pause and unpause the Token.\n * If Empty the token pause status defaults to PauseNotApplicable, otherwise Unpaused.\n * @member {proto.IKey|null|undefined} pauseKey\n * @memberof proto.TokenCreateTransactionBody\n * @instance\n */\n TokenCreateTransactionBody.prototype.pauseKey = null;\n\n /**\n * Creates a new TokenCreateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenCreateTransactionBody\n * @static\n * @param {proto.ITokenCreateTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenCreateTransactionBody} TokenCreateTransactionBody instance\n */\n TokenCreateTransactionBody.create = function create(properties) {\n return new TokenCreateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenCreateTransactionBody message. Does not implicitly {@link proto.TokenCreateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenCreateTransactionBody\n * @static\n * @param {proto.ITokenCreateTransactionBody} m TokenCreateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenCreateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.name != null && Object.hasOwnProperty.call(m, \"name\"))\n w.uint32(10).string(m.name);\n if (m.symbol != null && Object.hasOwnProperty.call(m, \"symbol\"))\n w.uint32(18).string(m.symbol);\n if (m.decimals != null && Object.hasOwnProperty.call(m, \"decimals\"))\n w.uint32(24).uint32(m.decimals);\n if (m.initialSupply != null && Object.hasOwnProperty.call(m, \"initialSupply\"))\n w.uint32(32).uint64(m.initialSupply);\n if (m.treasury != null && Object.hasOwnProperty.call(m, \"treasury\"))\n $root.proto.AccountID.encode(m.treasury, w.uint32(42).fork()).ldelim();\n if (m.adminKey != null && Object.hasOwnProperty.call(m, \"adminKey\"))\n $root.proto.Key.encode(m.adminKey, w.uint32(50).fork()).ldelim();\n if (m.kycKey != null && Object.hasOwnProperty.call(m, \"kycKey\"))\n $root.proto.Key.encode(m.kycKey, w.uint32(58).fork()).ldelim();\n if (m.freezeKey != null && Object.hasOwnProperty.call(m, \"freezeKey\"))\n $root.proto.Key.encode(m.freezeKey, w.uint32(66).fork()).ldelim();\n if (m.wipeKey != null && Object.hasOwnProperty.call(m, \"wipeKey\"))\n $root.proto.Key.encode(m.wipeKey, w.uint32(74).fork()).ldelim();\n if (m.supplyKey != null && Object.hasOwnProperty.call(m, \"supplyKey\"))\n $root.proto.Key.encode(m.supplyKey, w.uint32(82).fork()).ldelim();\n if (m.freezeDefault != null && Object.hasOwnProperty.call(m, \"freezeDefault\"))\n w.uint32(88).bool(m.freezeDefault);\n if (m.expiry != null && Object.hasOwnProperty.call(m, \"expiry\"))\n $root.proto.Timestamp.encode(m.expiry, w.uint32(106).fork()).ldelim();\n if (m.autoRenewAccount != null && Object.hasOwnProperty.call(m, \"autoRenewAccount\"))\n $root.proto.AccountID.encode(m.autoRenewAccount, w.uint32(114).fork()).ldelim();\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(122).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(130).string(m.memo);\n if (m.tokenType != null && Object.hasOwnProperty.call(m, \"tokenType\"))\n w.uint32(136).int32(m.tokenType);\n if (m.supplyType != null && Object.hasOwnProperty.call(m, \"supplyType\"))\n w.uint32(144).int32(m.supplyType);\n if (m.maxSupply != null && Object.hasOwnProperty.call(m, \"maxSupply\"))\n w.uint32(152).int64(m.maxSupply);\n if (m.feeScheduleKey != null && Object.hasOwnProperty.call(m, \"feeScheduleKey\"))\n $root.proto.Key.encode(m.feeScheduleKey, w.uint32(162).fork()).ldelim();\n if (m.customFees != null && m.customFees.length) {\n for (var i = 0; i < m.customFees.length; ++i)\n $root.proto.CustomFee.encode(m.customFees[i], w.uint32(170).fork()).ldelim();\n }\n if (m.pauseKey != null && Object.hasOwnProperty.call(m, \"pauseKey\"))\n $root.proto.Key.encode(m.pauseKey, w.uint32(178).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenCreateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenCreateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenCreateTransactionBody} TokenCreateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenCreateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenCreateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.name = r.string();\n break;\n case 2:\n m.symbol = r.string();\n break;\n case 3:\n m.decimals = r.uint32();\n break;\n case 4:\n m.initialSupply = r.uint64();\n break;\n case 5:\n m.treasury = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 6:\n m.adminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 7:\n m.kycKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 8:\n m.freezeKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 9:\n m.wipeKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 10:\n m.supplyKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 11:\n m.freezeDefault = r.bool();\n break;\n case 13:\n m.expiry = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 14:\n m.autoRenewAccount = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 15:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 16:\n m.memo = r.string();\n break;\n case 17:\n m.tokenType = r.int32();\n break;\n case 18:\n m.supplyType = r.int32();\n break;\n case 19:\n m.maxSupply = r.int64();\n break;\n case 20:\n m.feeScheduleKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 21:\n if (!(m.customFees && m.customFees.length))\n m.customFees = [];\n m.customFees.push($root.proto.CustomFee.decode(r, r.uint32()));\n break;\n case 22:\n m.pauseKey = $root.proto.Key.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenCreateTransactionBody;\n })();\n\n proto.FractionalFee = (function() {\n\n /**\n * Properties of a FractionalFee.\n * @memberof proto\n * @interface IFractionalFee\n * @property {proto.IFraction|null} [fractionalAmount] The fraction of the transferred units to assess as a fee\n * @property {Long|null} [minimumAmount] The minimum amount to assess\n * @property {Long|null} [maximumAmount] The maximum amount to assess (zero implies no maximum)\n * @property {boolean|null} [netOfTransfers] If true, assesses the fee to the sender, so the receiver gets the full amount from the token\n * transfer list, and the sender is charged an additional fee; if false, the receiver does NOT get\n * the full amount, but only what is left over after paying the fractional fee\n */\n\n /**\n * Constructs a new FractionalFee.\n * @memberof proto\n * @classdesc A fraction of the transferred units of a token to assess as a fee. The amount assessed will never\n * be less than the given minimum_amount, and never greater than the given maximum_amount. The\n * denomination is always units of the token to which this fractional fee is attached.\n * @implements IFractionalFee\n * @constructor\n * @param {proto.IFractionalFee=} [p] Properties to set\n */\n function FractionalFee(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The fraction of the transferred units to assess as a fee\n * @member {proto.IFraction|null|undefined} fractionalAmount\n * @memberof proto.FractionalFee\n * @instance\n */\n FractionalFee.prototype.fractionalAmount = null;\n\n /**\n * The minimum amount to assess\n * @member {Long} minimumAmount\n * @memberof proto.FractionalFee\n * @instance\n */\n FractionalFee.prototype.minimumAmount = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The maximum amount to assess (zero implies no maximum)\n * @member {Long} maximumAmount\n * @memberof proto.FractionalFee\n * @instance\n */\n FractionalFee.prototype.maximumAmount = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * If true, assesses the fee to the sender, so the receiver gets the full amount from the token\n * transfer list, and the sender is charged an additional fee; if false, the receiver does NOT get\n * the full amount, but only what is left over after paying the fractional fee\n * @member {boolean} netOfTransfers\n * @memberof proto.FractionalFee\n * @instance\n */\n FractionalFee.prototype.netOfTransfers = false;\n\n /**\n * Creates a new FractionalFee instance using the specified properties.\n * @function create\n * @memberof proto.FractionalFee\n * @static\n * @param {proto.IFractionalFee=} [properties] Properties to set\n * @returns {proto.FractionalFee} FractionalFee instance\n */\n FractionalFee.create = function create(properties) {\n return new FractionalFee(properties);\n };\n\n /**\n * Encodes the specified FractionalFee message. Does not implicitly {@link proto.FractionalFee.verify|verify} messages.\n * @function encode\n * @memberof proto.FractionalFee\n * @static\n * @param {proto.IFractionalFee} m FractionalFee message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FractionalFee.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.fractionalAmount != null && Object.hasOwnProperty.call(m, \"fractionalAmount\"))\n $root.proto.Fraction.encode(m.fractionalAmount, w.uint32(10).fork()).ldelim();\n if (m.minimumAmount != null && Object.hasOwnProperty.call(m, \"minimumAmount\"))\n w.uint32(16).int64(m.minimumAmount);\n if (m.maximumAmount != null && Object.hasOwnProperty.call(m, \"maximumAmount\"))\n w.uint32(24).int64(m.maximumAmount);\n if (m.netOfTransfers != null && Object.hasOwnProperty.call(m, \"netOfTransfers\"))\n w.uint32(32).bool(m.netOfTransfers);\n return w;\n };\n\n /**\n * Decodes a FractionalFee message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FractionalFee\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FractionalFee} FractionalFee\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FractionalFee.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FractionalFee();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.fractionalAmount = $root.proto.Fraction.decode(r, r.uint32());\n break;\n case 2:\n m.minimumAmount = r.int64();\n break;\n case 3:\n m.maximumAmount = r.int64();\n break;\n case 4:\n m.netOfTransfers = r.bool();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FractionalFee;\n })();\n\n proto.FixedFee = (function() {\n\n /**\n * Properties of a FixedFee.\n * @memberof proto\n * @interface IFixedFee\n * @property {Long|null} [amount] The number of units to assess as a fee\n * @property {proto.ITokenID|null} [denominatingTokenId] The denomination of the fee; taken as hbar if left unset and, in a TokenCreate, taken as the id\n * of the newly created token if set to the sentinel value of 0.0.0\n */\n\n /**\n * Constructs a new FixedFee.\n * @memberof proto\n * @classdesc A fixed number of units (hbar or token) to assess as a fee during a CryptoTransfer that transfers\n * units of the token to which this fixed fee is attached.\n * @implements IFixedFee\n * @constructor\n * @param {proto.IFixedFee=} [p] Properties to set\n */\n function FixedFee(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The number of units to assess as a fee\n * @member {Long} amount\n * @memberof proto.FixedFee\n * @instance\n */\n FixedFee.prototype.amount = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The denomination of the fee; taken as hbar if left unset and, in a TokenCreate, taken as the id\n * of the newly created token if set to the sentinel value of 0.0.0\n * @member {proto.ITokenID|null|undefined} denominatingTokenId\n * @memberof proto.FixedFee\n * @instance\n */\n FixedFee.prototype.denominatingTokenId = null;\n\n /**\n * Creates a new FixedFee instance using the specified properties.\n * @function create\n * @memberof proto.FixedFee\n * @static\n * @param {proto.IFixedFee=} [properties] Properties to set\n * @returns {proto.FixedFee} FixedFee instance\n */\n FixedFee.create = function create(properties) {\n return new FixedFee(properties);\n };\n\n /**\n * Encodes the specified FixedFee message. Does not implicitly {@link proto.FixedFee.verify|verify} messages.\n * @function encode\n * @memberof proto.FixedFee\n * @static\n * @param {proto.IFixedFee} m FixedFee message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FixedFee.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.amount != null && Object.hasOwnProperty.call(m, \"amount\"))\n w.uint32(8).int64(m.amount);\n if (m.denominatingTokenId != null && Object.hasOwnProperty.call(m, \"denominatingTokenId\"))\n $root.proto.TokenID.encode(m.denominatingTokenId, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a FixedFee message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FixedFee\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FixedFee} FixedFee\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FixedFee.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FixedFee();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.amount = r.int64();\n break;\n case 2:\n m.denominatingTokenId = $root.proto.TokenID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FixedFee;\n })();\n\n proto.RoyaltyFee = (function() {\n\n /**\n * Properties of a RoyaltyFee.\n * @memberof proto\n * @interface IRoyaltyFee\n * @property {proto.IFraction|null} [exchangeValueFraction] The fraction of fungible value exchanged for an NFT to collect as royalty\n * @property {proto.IFixedFee|null} [fallbackFee] If present, the fixed fee to assess to the NFT receiver when no fungible value is exchanged\n * with the sender\n */\n\n /**\n * Constructs a new RoyaltyFee.\n * @memberof proto\n * @classdesc A fee to assess during a CryptoTransfer that changes ownership of an NFT. Defines the fraction of\n * the fungible value exchanged for an NFT that the ledger should collect as a royalty. (\"Fungible\n * value\" includes both ℏ and units of fungible HTS tokens.) When the NFT sender does not receive\n * any fungible value, the ledger will assess the fallback fee, if present, to the new NFT owner.\n * Royalty fees can only be added to tokens of type type NON_FUNGIBLE_UNIQUE.\n * @implements IRoyaltyFee\n * @constructor\n * @param {proto.IRoyaltyFee=} [p] Properties to set\n */\n function RoyaltyFee(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The fraction of fungible value exchanged for an NFT to collect as royalty\n * @member {proto.IFraction|null|undefined} exchangeValueFraction\n * @memberof proto.RoyaltyFee\n * @instance\n */\n RoyaltyFee.prototype.exchangeValueFraction = null;\n\n /**\n * If present, the fixed fee to assess to the NFT receiver when no fungible value is exchanged\n * with the sender\n * @member {proto.IFixedFee|null|undefined} fallbackFee\n * @memberof proto.RoyaltyFee\n * @instance\n */\n RoyaltyFee.prototype.fallbackFee = null;\n\n /**\n * Creates a new RoyaltyFee instance using the specified properties.\n * @function create\n * @memberof proto.RoyaltyFee\n * @static\n * @param {proto.IRoyaltyFee=} [properties] Properties to set\n * @returns {proto.RoyaltyFee} RoyaltyFee instance\n */\n RoyaltyFee.create = function create(properties) {\n return new RoyaltyFee(properties);\n };\n\n /**\n * Encodes the specified RoyaltyFee message. Does not implicitly {@link proto.RoyaltyFee.verify|verify} messages.\n * @function encode\n * @memberof proto.RoyaltyFee\n * @static\n * @param {proto.IRoyaltyFee} m RoyaltyFee message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n RoyaltyFee.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.exchangeValueFraction != null && Object.hasOwnProperty.call(m, \"exchangeValueFraction\"))\n $root.proto.Fraction.encode(m.exchangeValueFraction, w.uint32(10).fork()).ldelim();\n if (m.fallbackFee != null && Object.hasOwnProperty.call(m, \"fallbackFee\"))\n $root.proto.FixedFee.encode(m.fallbackFee, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a RoyaltyFee message from the specified reader or buffer.\n * @function decode\n * @memberof proto.RoyaltyFee\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.RoyaltyFee} RoyaltyFee\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n RoyaltyFee.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.RoyaltyFee();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.exchangeValueFraction = $root.proto.Fraction.decode(r, r.uint32());\n break;\n case 2:\n m.fallbackFee = $root.proto.FixedFee.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return RoyaltyFee;\n })();\n\n proto.CustomFee = (function() {\n\n /**\n * Properties of a CustomFee.\n * @memberof proto\n * @interface ICustomFee\n * @property {proto.IFixedFee|null} [fixedFee] Fixed fee to be charged\n * @property {proto.IFractionalFee|null} [fractionalFee] Fractional fee to be charged\n * @property {proto.IRoyaltyFee|null} [royaltyFee] Royalty fee to be charged\n * @property {proto.IAccountID|null} [feeCollectorAccountId] The account to receive the custom fee\n */\n\n /**\n * Constructs a new CustomFee.\n * @memberof proto\n * @classdesc A transfer fee to assess during a CryptoTransfer that transfers units of the token to which the\n * fee is attached. A custom fee may be either fixed or fractional, and must specify a fee collector\n * account to receive the assessed fees. Only positive fees may be assessed.\n * @implements ICustomFee\n * @constructor\n * @param {proto.ICustomFee=} [p] Properties to set\n */\n function CustomFee(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Fixed fee to be charged\n * @member {proto.IFixedFee|null|undefined} fixedFee\n * @memberof proto.CustomFee\n * @instance\n */\n CustomFee.prototype.fixedFee = null;\n\n /**\n * Fractional fee to be charged\n * @member {proto.IFractionalFee|null|undefined} fractionalFee\n * @memberof proto.CustomFee\n * @instance\n */\n CustomFee.prototype.fractionalFee = null;\n\n /**\n * Royalty fee to be charged\n * @member {proto.IRoyaltyFee|null|undefined} royaltyFee\n * @memberof proto.CustomFee\n * @instance\n */\n CustomFee.prototype.royaltyFee = null;\n\n /**\n * The account to receive the custom fee\n * @member {proto.IAccountID|null|undefined} feeCollectorAccountId\n * @memberof proto.CustomFee\n * @instance\n */\n CustomFee.prototype.feeCollectorAccountId = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * CustomFee fee.\n * @member {\"fixedFee\"|\"fractionalFee\"|\"royaltyFee\"|undefined} fee\n * @memberof proto.CustomFee\n * @instance\n */\n Object.defineProperty(CustomFee.prototype, \"fee\", {\n get: $util.oneOfGetter($oneOfFields = [\"fixedFee\", \"fractionalFee\", \"royaltyFee\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new CustomFee instance using the specified properties.\n * @function create\n * @memberof proto.CustomFee\n * @static\n * @param {proto.ICustomFee=} [properties] Properties to set\n * @returns {proto.CustomFee} CustomFee instance\n */\n CustomFee.create = function create(properties) {\n return new CustomFee(properties);\n };\n\n /**\n * Encodes the specified CustomFee message. Does not implicitly {@link proto.CustomFee.verify|verify} messages.\n * @function encode\n * @memberof proto.CustomFee\n * @static\n * @param {proto.ICustomFee} m CustomFee message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CustomFee.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.fixedFee != null && Object.hasOwnProperty.call(m, \"fixedFee\"))\n $root.proto.FixedFee.encode(m.fixedFee, w.uint32(10).fork()).ldelim();\n if (m.fractionalFee != null && Object.hasOwnProperty.call(m, \"fractionalFee\"))\n $root.proto.FractionalFee.encode(m.fractionalFee, w.uint32(18).fork()).ldelim();\n if (m.feeCollectorAccountId != null && Object.hasOwnProperty.call(m, \"feeCollectorAccountId\"))\n $root.proto.AccountID.encode(m.feeCollectorAccountId, w.uint32(26).fork()).ldelim();\n if (m.royaltyFee != null && Object.hasOwnProperty.call(m, \"royaltyFee\"))\n $root.proto.RoyaltyFee.encode(m.royaltyFee, w.uint32(34).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a CustomFee message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CustomFee\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CustomFee} CustomFee\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CustomFee.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CustomFee();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.fixedFee = $root.proto.FixedFee.decode(r, r.uint32());\n break;\n case 2:\n m.fractionalFee = $root.proto.FractionalFee.decode(r, r.uint32());\n break;\n case 4:\n m.royaltyFee = $root.proto.RoyaltyFee.decode(r, r.uint32());\n break;\n case 3:\n m.feeCollectorAccountId = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CustomFee;\n })();\n\n proto.AssessedCustomFee = (function() {\n\n /**\n * Properties of an AssessedCustomFee.\n * @memberof proto\n * @interface IAssessedCustomFee\n * @property {Long|null} [amount] The number of units assessed for the fee\n * @property {proto.ITokenID|null} [tokenId] The denomination of the fee; taken as hbar if left unset\n * @property {proto.IAccountID|null} [feeCollectorAccountId] The account to receive the assessed fee\n * @property {Array.|null} [effectivePayerAccountId] The account(s) whose final balances would have been higher in the absence of this assessed fee\n */\n\n /**\n * Constructs a new AssessedCustomFee.\n * @memberof proto\n * @classdesc A custom transfer fee that was assessed during handling of a CryptoTransfer.\n * @implements IAssessedCustomFee\n * @constructor\n * @param {proto.IAssessedCustomFee=} [p] Properties to set\n */\n function AssessedCustomFee(p) {\n this.effectivePayerAccountId = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The number of units assessed for the fee\n * @member {Long} amount\n * @memberof proto.AssessedCustomFee\n * @instance\n */\n AssessedCustomFee.prototype.amount = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The denomination of the fee; taken as hbar if left unset\n * @member {proto.ITokenID|null|undefined} tokenId\n * @memberof proto.AssessedCustomFee\n * @instance\n */\n AssessedCustomFee.prototype.tokenId = null;\n\n /**\n * The account to receive the assessed fee\n * @member {proto.IAccountID|null|undefined} feeCollectorAccountId\n * @memberof proto.AssessedCustomFee\n * @instance\n */\n AssessedCustomFee.prototype.feeCollectorAccountId = null;\n\n /**\n * The account(s) whose final balances would have been higher in the absence of this assessed fee\n * @member {Array.} effectivePayerAccountId\n * @memberof proto.AssessedCustomFee\n * @instance\n */\n AssessedCustomFee.prototype.effectivePayerAccountId = $util.emptyArray;\n\n /**\n * Creates a new AssessedCustomFee instance using the specified properties.\n * @function create\n * @memberof proto.AssessedCustomFee\n * @static\n * @param {proto.IAssessedCustomFee=} [properties] Properties to set\n * @returns {proto.AssessedCustomFee} AssessedCustomFee instance\n */\n AssessedCustomFee.create = function create(properties) {\n return new AssessedCustomFee(properties);\n };\n\n /**\n * Encodes the specified AssessedCustomFee message. Does not implicitly {@link proto.AssessedCustomFee.verify|verify} messages.\n * @function encode\n * @memberof proto.AssessedCustomFee\n * @static\n * @param {proto.IAssessedCustomFee} m AssessedCustomFee message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n AssessedCustomFee.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.amount != null && Object.hasOwnProperty.call(m, \"amount\"))\n w.uint32(8).int64(m.amount);\n if (m.tokenId != null && Object.hasOwnProperty.call(m, \"tokenId\"))\n $root.proto.TokenID.encode(m.tokenId, w.uint32(18).fork()).ldelim();\n if (m.feeCollectorAccountId != null && Object.hasOwnProperty.call(m, \"feeCollectorAccountId\"))\n $root.proto.AccountID.encode(m.feeCollectorAccountId, w.uint32(26).fork()).ldelim();\n if (m.effectivePayerAccountId != null && m.effectivePayerAccountId.length) {\n for (var i = 0; i < m.effectivePayerAccountId.length; ++i)\n $root.proto.AccountID.encode(m.effectivePayerAccountId[i], w.uint32(34).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes an AssessedCustomFee message from the specified reader or buffer.\n * @function decode\n * @memberof proto.AssessedCustomFee\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.AssessedCustomFee} AssessedCustomFee\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n AssessedCustomFee.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.AssessedCustomFee();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.amount = r.int64();\n break;\n case 2:\n m.tokenId = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 3:\n m.feeCollectorAccountId = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 4:\n if (!(m.effectivePayerAccountId && m.effectivePayerAccountId.length))\n m.effectivePayerAccountId = [];\n m.effectivePayerAccountId.push($root.proto.AccountID.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return AssessedCustomFee;\n })();\n\n proto.TokenFreezeAccountTransactionBody = (function() {\n\n /**\n * Properties of a TokenFreezeAccountTransactionBody.\n * @memberof proto\n * @interface ITokenFreezeAccountTransactionBody\n * @property {proto.ITokenID|null} [token] The token for which this account will be frozen. If token does not exist, transaction results\n * in INVALID_TOKEN_ID\n * @property {proto.IAccountID|null} [account] The account to be frozen\n */\n\n /**\n * Constructs a new TokenFreezeAccountTransactionBody.\n * @memberof proto\n * @classdesc Freezes transfers of the specified token for the account. Must be signed by the Token's freezeKey.\n * If the provided account is not found, the transaction will resolve to INVALID_ACCOUNT_ID.\n * If the provided account has been deleted, the transaction will resolve to ACCOUNT_DELETED.\n * If the provided token is not found, the transaction will resolve to INVALID_TOKEN_ID.\n * If the provided token has been deleted, the transaction will resolve to TOKEN_WAS_DELETED.\n * If an Association between the provided token and account is not found, the transaction will\n * resolve to TOKEN_NOT_ASSOCIATED_TO_ACCOUNT.\n * If no Freeze Key is defined, the transaction will resolve to TOKEN_HAS_NO_FREEZE_KEY.\n * Once executed the Account is marked as Frozen and will not be able to receive or send tokens\n * unless unfrozen. The operation is idempotent.\n * @implements ITokenFreezeAccountTransactionBody\n * @constructor\n * @param {proto.ITokenFreezeAccountTransactionBody=} [p] Properties to set\n */\n function TokenFreezeAccountTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token for which this account will be frozen. If token does not exist, transaction results\n * in INVALID_TOKEN_ID\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenFreezeAccountTransactionBody\n * @instance\n */\n TokenFreezeAccountTransactionBody.prototype.token = null;\n\n /**\n * The account to be frozen\n * @member {proto.IAccountID|null|undefined} account\n * @memberof proto.TokenFreezeAccountTransactionBody\n * @instance\n */\n TokenFreezeAccountTransactionBody.prototype.account = null;\n\n /**\n * Creates a new TokenFreezeAccountTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenFreezeAccountTransactionBody\n * @static\n * @param {proto.ITokenFreezeAccountTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenFreezeAccountTransactionBody} TokenFreezeAccountTransactionBody instance\n */\n TokenFreezeAccountTransactionBody.create = function create(properties) {\n return new TokenFreezeAccountTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenFreezeAccountTransactionBody message. Does not implicitly {@link proto.TokenFreezeAccountTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenFreezeAccountTransactionBody\n * @static\n * @param {proto.ITokenFreezeAccountTransactionBody} m TokenFreezeAccountTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenFreezeAccountTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n if (m.account != null && Object.hasOwnProperty.call(m, \"account\"))\n $root.proto.AccountID.encode(m.account, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenFreezeAccountTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenFreezeAccountTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenFreezeAccountTransactionBody} TokenFreezeAccountTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenFreezeAccountTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenFreezeAccountTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.account = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenFreezeAccountTransactionBody;\n })();\n\n proto.TokenUnfreezeAccountTransactionBody = (function() {\n\n /**\n * Properties of a TokenUnfreezeAccountTransactionBody.\n * @memberof proto\n * @interface ITokenUnfreezeAccountTransactionBody\n * @property {proto.ITokenID|null} [token] The token for which this account will be unfrozen. If token does not exist, transaction\n * results in INVALID_TOKEN_ID\n * @property {proto.IAccountID|null} [account] The account to be unfrozen\n */\n\n /**\n * Constructs a new TokenUnfreezeAccountTransactionBody.\n * @memberof proto\n * @classdesc Unfreezes transfers of the specified token for the account. Must be signed by the Token's\n * freezeKey.\n * If the provided account is not found, the transaction will resolve to INVALID_ACCOUNT_ID.\n * If the provided account has been deleted, the transaction will resolve to ACCOUNT_DELETED.\n * If the provided token is not found, the transaction will resolve to INVALID_TOKEN_ID.\n * If the provided token has been deleted, the transaction will resolve to TOKEN_WAS_DELETED.\n * If an Association between the provided token and account is not found, the transaction will\n * resolve to TOKEN_NOT_ASSOCIATED_TO_ACCOUNT.\n * If no Freeze Key is defined, the transaction will resolve to TOKEN_HAS_NO_FREEZE_KEY.\n * Once executed the Account is marked as Unfrozen and will be able to receive or send tokens. The\n * operation is idempotent.\n * @implements ITokenUnfreezeAccountTransactionBody\n * @constructor\n * @param {proto.ITokenUnfreezeAccountTransactionBody=} [p] Properties to set\n */\n function TokenUnfreezeAccountTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token for which this account will be unfrozen. If token does not exist, transaction\n * results in INVALID_TOKEN_ID\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenUnfreezeAccountTransactionBody\n * @instance\n */\n TokenUnfreezeAccountTransactionBody.prototype.token = null;\n\n /**\n * The account to be unfrozen\n * @member {proto.IAccountID|null|undefined} account\n * @memberof proto.TokenUnfreezeAccountTransactionBody\n * @instance\n */\n TokenUnfreezeAccountTransactionBody.prototype.account = null;\n\n /**\n * Creates a new TokenUnfreezeAccountTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenUnfreezeAccountTransactionBody\n * @static\n * @param {proto.ITokenUnfreezeAccountTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenUnfreezeAccountTransactionBody} TokenUnfreezeAccountTransactionBody instance\n */\n TokenUnfreezeAccountTransactionBody.create = function create(properties) {\n return new TokenUnfreezeAccountTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenUnfreezeAccountTransactionBody message. Does not implicitly {@link proto.TokenUnfreezeAccountTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenUnfreezeAccountTransactionBody\n * @static\n * @param {proto.ITokenUnfreezeAccountTransactionBody} m TokenUnfreezeAccountTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenUnfreezeAccountTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n if (m.account != null && Object.hasOwnProperty.call(m, \"account\"))\n $root.proto.AccountID.encode(m.account, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenUnfreezeAccountTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenUnfreezeAccountTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenUnfreezeAccountTransactionBody} TokenUnfreezeAccountTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenUnfreezeAccountTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenUnfreezeAccountTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.account = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenUnfreezeAccountTransactionBody;\n })();\n\n proto.TokenGrantKycTransactionBody = (function() {\n\n /**\n * Properties of a TokenGrantKycTransactionBody.\n * @memberof proto\n * @interface ITokenGrantKycTransactionBody\n * @property {proto.ITokenID|null} [token] The token for which this account will be granted KYC. If token does not exist, transaction\n * results in INVALID_TOKEN_ID\n * @property {proto.IAccountID|null} [account] The account to be KYCed\n */\n\n /**\n * Constructs a new TokenGrantKycTransactionBody.\n * @memberof proto\n * @classdesc Grants KYC to the account for the given token. Must be signed by the Token's kycKey.\n * If the provided account is not found, the transaction will resolve to INVALID_ACCOUNT_ID.\n * If the provided account has been deleted, the transaction will resolve to ACCOUNT_DELETED.\n * If the provided token is not found, the transaction will resolve to INVALID_TOKEN_ID.\n * If the provided token has been deleted, the transaction will resolve to TOKEN_WAS_DELETED.\n * If an Association between the provided token and account is not found, the transaction will\n * resolve to TOKEN_NOT_ASSOCIATED_TO_ACCOUNT.\n * If no KYC Key is defined, the transaction will resolve to TOKEN_HAS_NO_KYC_KEY.\n * Once executed the Account is marked as KYC Granted.\n * @implements ITokenGrantKycTransactionBody\n * @constructor\n * @param {proto.ITokenGrantKycTransactionBody=} [p] Properties to set\n */\n function TokenGrantKycTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token for which this account will be granted KYC. If token does not exist, transaction\n * results in INVALID_TOKEN_ID\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenGrantKycTransactionBody\n * @instance\n */\n TokenGrantKycTransactionBody.prototype.token = null;\n\n /**\n * The account to be KYCed\n * @member {proto.IAccountID|null|undefined} account\n * @memberof proto.TokenGrantKycTransactionBody\n * @instance\n */\n TokenGrantKycTransactionBody.prototype.account = null;\n\n /**\n * Creates a new TokenGrantKycTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenGrantKycTransactionBody\n * @static\n * @param {proto.ITokenGrantKycTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenGrantKycTransactionBody} TokenGrantKycTransactionBody instance\n */\n TokenGrantKycTransactionBody.create = function create(properties) {\n return new TokenGrantKycTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenGrantKycTransactionBody message. Does not implicitly {@link proto.TokenGrantKycTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenGrantKycTransactionBody\n * @static\n * @param {proto.ITokenGrantKycTransactionBody} m TokenGrantKycTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenGrantKycTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n if (m.account != null && Object.hasOwnProperty.call(m, \"account\"))\n $root.proto.AccountID.encode(m.account, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenGrantKycTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenGrantKycTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenGrantKycTransactionBody} TokenGrantKycTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenGrantKycTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenGrantKycTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.account = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenGrantKycTransactionBody;\n })();\n\n proto.TokenRevokeKycTransactionBody = (function() {\n\n /**\n * Properties of a TokenRevokeKycTransactionBody.\n * @memberof proto\n * @interface ITokenRevokeKycTransactionBody\n * @property {proto.ITokenID|null} [token] The token for which this account will get his KYC revoked. If token does not exist,\n * transaction results in INVALID_TOKEN_ID\n * @property {proto.IAccountID|null} [account] The account to be KYC Revoked\n */\n\n /**\n * Constructs a new TokenRevokeKycTransactionBody.\n * @memberof proto\n * @classdesc Revokes KYC to the account for the given token. Must be signed by the Token's kycKey.\n * If the provided account is not found, the transaction will resolve to INVALID_ACCOUNT_ID.\n * If the provided account has been deleted, the transaction will resolve to ACCOUNT_DELETED.\n * If the provided token is not found, the transaction will resolve to INVALID_TOKEN_ID.\n * If the provided token has been deleted, the transaction will resolve to TOKEN_WAS_DELETED.\n * If an Association between the provided token and account is not found, the transaction will\n * resolve to TOKEN_NOT_ASSOCIATED_TO_ACCOUNT.\n * If no KYC Key is defined, the transaction will resolve to TOKEN_HAS_NO_KYC_KEY.\n * Once executed the Account is marked as KYC Revoked\n * @implements ITokenRevokeKycTransactionBody\n * @constructor\n * @param {proto.ITokenRevokeKycTransactionBody=} [p] Properties to set\n */\n function TokenRevokeKycTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token for which this account will get his KYC revoked. If token does not exist,\n * transaction results in INVALID_TOKEN_ID\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenRevokeKycTransactionBody\n * @instance\n */\n TokenRevokeKycTransactionBody.prototype.token = null;\n\n /**\n * The account to be KYC Revoked\n * @member {proto.IAccountID|null|undefined} account\n * @memberof proto.TokenRevokeKycTransactionBody\n * @instance\n */\n TokenRevokeKycTransactionBody.prototype.account = null;\n\n /**\n * Creates a new TokenRevokeKycTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenRevokeKycTransactionBody\n * @static\n * @param {proto.ITokenRevokeKycTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenRevokeKycTransactionBody} TokenRevokeKycTransactionBody instance\n */\n TokenRevokeKycTransactionBody.create = function create(properties) {\n return new TokenRevokeKycTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenRevokeKycTransactionBody message. Does not implicitly {@link proto.TokenRevokeKycTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenRevokeKycTransactionBody\n * @static\n * @param {proto.ITokenRevokeKycTransactionBody} m TokenRevokeKycTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenRevokeKycTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n if (m.account != null && Object.hasOwnProperty.call(m, \"account\"))\n $root.proto.AccountID.encode(m.account, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenRevokeKycTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenRevokeKycTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenRevokeKycTransactionBody} TokenRevokeKycTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenRevokeKycTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenRevokeKycTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.account = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenRevokeKycTransactionBody;\n })();\n\n proto.TokenDeleteTransactionBody = (function() {\n\n /**\n * Properties of a TokenDeleteTransactionBody.\n * @memberof proto\n * @interface ITokenDeleteTransactionBody\n * @property {proto.ITokenID|null} [token] The token to be deleted. If invalid token is specified, transaction will\n * result in INVALID_TOKEN_ID\n */\n\n /**\n * Constructs a new TokenDeleteTransactionBody.\n * @memberof proto\n * @classdesc Marks a token as deleted, though it will remain in the ledger.\n * The operation must be signed by the specified Admin Key of the Token. If\n * admin key is not set, Transaction will result in TOKEN_IS_IMMUTABlE.\n * Once deleted update, mint, burn, wipe, freeze, unfreeze, grant kyc, revoke\n * kyc and token transfer transactions will resolve to TOKEN_WAS_DELETED.\n * @implements ITokenDeleteTransactionBody\n * @constructor\n * @param {proto.ITokenDeleteTransactionBody=} [p] Properties to set\n */\n function TokenDeleteTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token to be deleted. If invalid token is specified, transaction will\n * result in INVALID_TOKEN_ID\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenDeleteTransactionBody\n * @instance\n */\n TokenDeleteTransactionBody.prototype.token = null;\n\n /**\n * Creates a new TokenDeleteTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenDeleteTransactionBody\n * @static\n * @param {proto.ITokenDeleteTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenDeleteTransactionBody} TokenDeleteTransactionBody instance\n */\n TokenDeleteTransactionBody.create = function create(properties) {\n return new TokenDeleteTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenDeleteTransactionBody message. Does not implicitly {@link proto.TokenDeleteTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenDeleteTransactionBody\n * @static\n * @param {proto.ITokenDeleteTransactionBody} m TokenDeleteTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenDeleteTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenDeleteTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenDeleteTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenDeleteTransactionBody} TokenDeleteTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenDeleteTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenDeleteTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenDeleteTransactionBody;\n })();\n\n proto.TokenUpdateTransactionBody = (function() {\n\n /**\n * Properties of a TokenUpdateTransactionBody.\n * @memberof proto\n * @interface ITokenUpdateTransactionBody\n * @property {proto.ITokenID|null} [token] The Token to be updated\n * @property {string|null} [symbol] The new publicly visible token symbol. The token symbol is specified as a Unicode string.\n * Its UTF-8 encoding cannot exceed 100 bytes, and cannot contain the 0 byte (NUL).\n * @property {string|null} [name] The new publicly visible name of the token. The token name is specified as a Unicode string.\n * Its UTF-8 encoding cannot exceed 100 bytes, and cannot contain the 0 byte (NUL).\n * @property {proto.IAccountID|null} [treasury] The new Treasury account of the Token. If the provided treasury account is not existing or\n * deleted, the response will be INVALID_TREASURY_ACCOUNT_FOR_TOKEN. If successful, the Token\n * balance held in the previous Treasury Account is transferred to the new one.\n * @property {proto.IKey|null} [adminKey] The new admin key of the Token. If Token is immutable, transaction will resolve to\n * TOKEN_IS_IMMUTABlE.\n * @property {proto.IKey|null} [kycKey] The new KYC key of the Token. If Token does not have currently a KYC key, transaction will\n * resolve to TOKEN_HAS_NO_KYC_KEY.\n * @property {proto.IKey|null} [freezeKey] The new Freeze key of the Token. If the Token does not have currently a Freeze key,\n * transaction will resolve to TOKEN_HAS_NO_FREEZE_KEY.\n * @property {proto.IKey|null} [wipeKey] The new Wipe key of the Token. If the Token does not have currently a Wipe key, transaction\n * will resolve to TOKEN_HAS_NO_WIPE_KEY.\n * @property {proto.IKey|null} [supplyKey] The new Supply key of the Token. If the Token does not have currently a Supply key,\n * transaction will resolve to TOKEN_HAS_NO_SUPPLY_KEY.\n * @property {proto.IAccountID|null} [autoRenewAccount] The new account which will be automatically charged to renew the token's expiration, at\n * autoRenewPeriod interval.\n * @property {proto.IDuration|null} [autoRenewPeriod] The new interval at which the auto-renew account will be charged to extend the token's\n * expiry.\n * @property {proto.ITimestamp|null} [expiry] The new expiry time of the token. Expiry can be updated even if admin key is not set. If the\n * provided expiry is earlier than the current token expiry, transaction wil resolve to\n * INVALID_EXPIRATION_TIME\n * @property {google.protobuf.IStringValue|null} [memo] If set, the new memo to be associated with the token (UTF-8 encoding max 100 bytes)\n * @property {proto.IKey|null} [feeScheduleKey] If set, the new key to use to update the token's custom fee schedule; if the token does not\n * currently have this key, transaction will resolve to TOKEN_HAS_NO_FEE_SCHEDULE_KEY\n * @property {proto.IKey|null} [pauseKey] The Key which can pause and unpause the Token. If the Token does not currently have a pause key,\n * transaction will resolve to TOKEN_HAS_NO_PAUSE_KEY\n */\n\n /**\n * Constructs a new TokenUpdateTransactionBody.\n * @memberof proto\n * @classdesc At consensus, updates an already created token to the given values.\n * \n * If no value is given for a field, that field is left unchanged. For an immutable tokens (that is,\n * a token without an admin key), only the expiry may be updated. Setting any other field in that\n * case will cause the transaction status to resolve to TOKEN_IS_IMMUTABLE.\n * \n * --- Signing Requirements ---\n * 1. Whether or not a token has an admin key, its expiry can be extended with only the transaction\n * payer's signature.\n * 2. Updating any other field of a mutable token requires the admin key's signature.\n * 3. If a new admin key is set, this new key must sign unless it is exactly an empty\n * KeyList. This special sentinel key removes the existing admin key and causes the\n * token to become immutable. (Other Key structures without a constituent\n * Ed25519 key will be rejected with INVALID_ADMIN_KEY.)\n * 4. If a new treasury is set, the new treasury account's key must sign the transaction.\n * \n * --- Nft Requirements ---\n * 1. If a non fungible token has a positive treasury balance, the operation will abort with\n * CURRENT_TREASURY_STILL_OWNS_NFTS.\n * @implements ITokenUpdateTransactionBody\n * @constructor\n * @param {proto.ITokenUpdateTransactionBody=} [p] Properties to set\n */\n function TokenUpdateTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The Token to be updated\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.token = null;\n\n /**\n * The new publicly visible token symbol. The token symbol is specified as a Unicode string.\n * Its UTF-8 encoding cannot exceed 100 bytes, and cannot contain the 0 byte (NUL).\n * @member {string} symbol\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.symbol = \"\";\n\n /**\n * The new publicly visible name of the token. The token name is specified as a Unicode string.\n * Its UTF-8 encoding cannot exceed 100 bytes, and cannot contain the 0 byte (NUL).\n * @member {string} name\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.name = \"\";\n\n /**\n * The new Treasury account of the Token. If the provided treasury account is not existing or\n * deleted, the response will be INVALID_TREASURY_ACCOUNT_FOR_TOKEN. If successful, the Token\n * balance held in the previous Treasury Account is transferred to the new one.\n * @member {proto.IAccountID|null|undefined} treasury\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.treasury = null;\n\n /**\n * The new admin key of the Token. If Token is immutable, transaction will resolve to\n * TOKEN_IS_IMMUTABlE.\n * @member {proto.IKey|null|undefined} adminKey\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.adminKey = null;\n\n /**\n * The new KYC key of the Token. If Token does not have currently a KYC key, transaction will\n * resolve to TOKEN_HAS_NO_KYC_KEY.\n * @member {proto.IKey|null|undefined} kycKey\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.kycKey = null;\n\n /**\n * The new Freeze key of the Token. If the Token does not have currently a Freeze key,\n * transaction will resolve to TOKEN_HAS_NO_FREEZE_KEY.\n * @member {proto.IKey|null|undefined} freezeKey\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.freezeKey = null;\n\n /**\n * The new Wipe key of the Token. If the Token does not have currently a Wipe key, transaction\n * will resolve to TOKEN_HAS_NO_WIPE_KEY.\n * @member {proto.IKey|null|undefined} wipeKey\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.wipeKey = null;\n\n /**\n * The new Supply key of the Token. If the Token does not have currently a Supply key,\n * transaction will resolve to TOKEN_HAS_NO_SUPPLY_KEY.\n * @member {proto.IKey|null|undefined} supplyKey\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.supplyKey = null;\n\n /**\n * The new account which will be automatically charged to renew the token's expiration, at\n * autoRenewPeriod interval.\n * @member {proto.IAccountID|null|undefined} autoRenewAccount\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.autoRenewAccount = null;\n\n /**\n * The new interval at which the auto-renew account will be charged to extend the token's\n * expiry.\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.autoRenewPeriod = null;\n\n /**\n * The new expiry time of the token. Expiry can be updated even if admin key is not set. If the\n * provided expiry is earlier than the current token expiry, transaction wil resolve to\n * INVALID_EXPIRATION_TIME\n * @member {proto.ITimestamp|null|undefined} expiry\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.expiry = null;\n\n /**\n * If set, the new memo to be associated with the token (UTF-8 encoding max 100 bytes)\n * @member {google.protobuf.IStringValue|null|undefined} memo\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.memo = null;\n\n /**\n * If set, the new key to use to update the token's custom fee schedule; if the token does not\n * currently have this key, transaction will resolve to TOKEN_HAS_NO_FEE_SCHEDULE_KEY\n * @member {proto.IKey|null|undefined} feeScheduleKey\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.feeScheduleKey = null;\n\n /**\n * The Key which can pause and unpause the Token. If the Token does not currently have a pause key,\n * transaction will resolve to TOKEN_HAS_NO_PAUSE_KEY\n * @member {proto.IKey|null|undefined} pauseKey\n * @memberof proto.TokenUpdateTransactionBody\n * @instance\n */\n TokenUpdateTransactionBody.prototype.pauseKey = null;\n\n /**\n * Creates a new TokenUpdateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenUpdateTransactionBody\n * @static\n * @param {proto.ITokenUpdateTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenUpdateTransactionBody} TokenUpdateTransactionBody instance\n */\n TokenUpdateTransactionBody.create = function create(properties) {\n return new TokenUpdateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenUpdateTransactionBody message. Does not implicitly {@link proto.TokenUpdateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenUpdateTransactionBody\n * @static\n * @param {proto.ITokenUpdateTransactionBody} m TokenUpdateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenUpdateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n if (m.symbol != null && Object.hasOwnProperty.call(m, \"symbol\"))\n w.uint32(18).string(m.symbol);\n if (m.name != null && Object.hasOwnProperty.call(m, \"name\"))\n w.uint32(26).string(m.name);\n if (m.treasury != null && Object.hasOwnProperty.call(m, \"treasury\"))\n $root.proto.AccountID.encode(m.treasury, w.uint32(34).fork()).ldelim();\n if (m.adminKey != null && Object.hasOwnProperty.call(m, \"adminKey\"))\n $root.proto.Key.encode(m.adminKey, w.uint32(42).fork()).ldelim();\n if (m.kycKey != null && Object.hasOwnProperty.call(m, \"kycKey\"))\n $root.proto.Key.encode(m.kycKey, w.uint32(50).fork()).ldelim();\n if (m.freezeKey != null && Object.hasOwnProperty.call(m, \"freezeKey\"))\n $root.proto.Key.encode(m.freezeKey, w.uint32(58).fork()).ldelim();\n if (m.wipeKey != null && Object.hasOwnProperty.call(m, \"wipeKey\"))\n $root.proto.Key.encode(m.wipeKey, w.uint32(66).fork()).ldelim();\n if (m.supplyKey != null && Object.hasOwnProperty.call(m, \"supplyKey\"))\n $root.proto.Key.encode(m.supplyKey, w.uint32(74).fork()).ldelim();\n if (m.autoRenewAccount != null && Object.hasOwnProperty.call(m, \"autoRenewAccount\"))\n $root.proto.AccountID.encode(m.autoRenewAccount, w.uint32(82).fork()).ldelim();\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(90).fork()).ldelim();\n if (m.expiry != null && Object.hasOwnProperty.call(m, \"expiry\"))\n $root.proto.Timestamp.encode(m.expiry, w.uint32(98).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n $root.google.protobuf.StringValue.encode(m.memo, w.uint32(106).fork()).ldelim();\n if (m.feeScheduleKey != null && Object.hasOwnProperty.call(m, \"feeScheduleKey\"))\n $root.proto.Key.encode(m.feeScheduleKey, w.uint32(114).fork()).ldelim();\n if (m.pauseKey != null && Object.hasOwnProperty.call(m, \"pauseKey\"))\n $root.proto.Key.encode(m.pauseKey, w.uint32(122).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenUpdateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenUpdateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenUpdateTransactionBody} TokenUpdateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenUpdateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenUpdateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.symbol = r.string();\n break;\n case 3:\n m.name = r.string();\n break;\n case 4:\n m.treasury = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 5:\n m.adminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 6:\n m.kycKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 7:\n m.freezeKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 8:\n m.wipeKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 9:\n m.supplyKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 10:\n m.autoRenewAccount = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 11:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 12:\n m.expiry = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 13:\n m.memo = $root.google.protobuf.StringValue.decode(r, r.uint32());\n break;\n case 14:\n m.feeScheduleKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 15:\n m.pauseKey = $root.proto.Key.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenUpdateTransactionBody;\n })();\n\n proto.TokenMintTransactionBody = (function() {\n\n /**\n * Properties of a TokenMintTransactionBody.\n * @memberof proto\n * @interface ITokenMintTransactionBody\n * @property {proto.ITokenID|null} [token] The token for which to mint tokens. If token does not exist, transaction results in\n * INVALID_TOKEN_ID\n * @property {Long|null} [amount] Applicable to tokens of type FUNGIBLE_COMMON. The amount to mint to the Treasury Account.\n * Amount must be a positive non-zero number represented in the lowest denomination of the\n * token. The new supply must be lower than 2^63.\n * @property {Array.|null} [metadata] Applicable to tokens of type NON_FUNGIBLE_UNIQUE. A list of metadata that are being created.\n * Maximum allowed size of each metadata is 100 bytes\n */\n\n /**\n * Constructs a new TokenMintTransactionBody.\n * @memberof proto\n * @classdesc Mints tokens to the Token's treasury Account. If no Supply Key is defined, the transaction will\n * resolve to TOKEN_HAS_NO_SUPPLY_KEY.\n * The operation increases the Total Supply of the Token. The maximum total supply a token can have\n * is 2^63-1.\n * The amount provided must be in the lowest denomination possible. Example:\n * Token A has 2 decimals. In order to mint 100 tokens, one must provide amount of 10000. In order\n * to mint 100.55 tokens, one must provide amount of 10055.\n * If both amount and metadata list get filled, a INVALID_TRANSACTION_BODY response code will be\n * returned.\n * If the metadata list contains metadata which is too large, a METADATA_TOO_LONG response code will\n * be returned.\n * If neither the amount nor the metadata list get filled, a INVALID_TOKEN_MINT_AMOUNT response code\n * will be returned.\n * If the metadata list count is greater than the batch size limit global dynamic property, a\n * BATCH_SIZE_LIMIT_EXCEEDED response code will be returned.\n * @implements ITokenMintTransactionBody\n * @constructor\n * @param {proto.ITokenMintTransactionBody=} [p] Properties to set\n */\n function TokenMintTransactionBody(p) {\n this.metadata = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token for which to mint tokens. If token does not exist, transaction results in\n * INVALID_TOKEN_ID\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenMintTransactionBody\n * @instance\n */\n TokenMintTransactionBody.prototype.token = null;\n\n /**\n * Applicable to tokens of type FUNGIBLE_COMMON. The amount to mint to the Treasury Account.\n * Amount must be a positive non-zero number represented in the lowest denomination of the\n * token. The new supply must be lower than 2^63.\n * @member {Long} amount\n * @memberof proto.TokenMintTransactionBody\n * @instance\n */\n TokenMintTransactionBody.prototype.amount = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Applicable to tokens of type NON_FUNGIBLE_UNIQUE. A list of metadata that are being created.\n * Maximum allowed size of each metadata is 100 bytes\n * @member {Array.} metadata\n * @memberof proto.TokenMintTransactionBody\n * @instance\n */\n TokenMintTransactionBody.prototype.metadata = $util.emptyArray;\n\n /**\n * Creates a new TokenMintTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenMintTransactionBody\n * @static\n * @param {proto.ITokenMintTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenMintTransactionBody} TokenMintTransactionBody instance\n */\n TokenMintTransactionBody.create = function create(properties) {\n return new TokenMintTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenMintTransactionBody message. Does not implicitly {@link proto.TokenMintTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenMintTransactionBody\n * @static\n * @param {proto.ITokenMintTransactionBody} m TokenMintTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenMintTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n if (m.amount != null && Object.hasOwnProperty.call(m, \"amount\"))\n w.uint32(16).uint64(m.amount);\n if (m.metadata != null && m.metadata.length) {\n for (var i = 0; i < m.metadata.length; ++i)\n w.uint32(26).bytes(m.metadata[i]);\n }\n return w;\n };\n\n /**\n * Decodes a TokenMintTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenMintTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenMintTransactionBody} TokenMintTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenMintTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenMintTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.amount = r.uint64();\n break;\n case 3:\n if (!(m.metadata && m.metadata.length))\n m.metadata = [];\n m.metadata.push(r.bytes());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenMintTransactionBody;\n })();\n\n proto.TokenBurnTransactionBody = (function() {\n\n /**\n * Properties of a TokenBurnTransactionBody.\n * @memberof proto\n * @interface ITokenBurnTransactionBody\n * @property {proto.ITokenID|null} [token] The token for which to burn tokens. If token does not exist, transaction results in\n * INVALID_TOKEN_ID\n * @property {Long|null} [amount] Applicable to tokens of type FUNGIBLE_COMMON. The amount to burn from the Treasury Account.\n * Amount must be a positive non-zero number, not bigger than the token balance of the treasury\n * account (0; balance], represented in the lowest denomination.\n * @property {Array.|null} [serialNumbers] Applicable to tokens of type NON_FUNGIBLE_UNIQUE. The list of serial numbers to be burned.\n */\n\n /**\n * Constructs a new TokenBurnTransactionBody.\n * @memberof proto\n * @classdesc Burns tokens from the Token's treasury Account. If no Supply Key is defined, the transaction will\n * resolve to TOKEN_HAS_NO_SUPPLY_KEY.\n * The operation decreases the Total Supply of the Token. Total supply cannot go below zero.\n * The amount provided must be in the lowest denomination possible. Example:\n * Token A has 2 decimals. In order to burn 100 tokens, one must provide amount of 10000. In order\n * to burn 100.55 tokens, one must provide amount of 10055.\n * For non fungible tokens the transaction body accepts serialNumbers list of integers as a parameter.\n * \n * If neither the amount nor the serialNumbers get filled, a INVALID_TOKEN_BURN_AMOUNT response code\n * will be returned.\n * If both amount and serialNumbers get filled, a INVALID_TRANSACTION_BODY response code will be\n * returned.\n * If the serialNumbers' list count is greater than the batch size limit global dynamic property, a\n * BATCH_SIZE_LIMIT_EXCEEDED response code will be returned.\n * If the serialNumbers list contains a non-positive integer as a serial number, a INVALID_NFT_ID\n * response code will be returned.\n * @implements ITokenBurnTransactionBody\n * @constructor\n * @param {proto.ITokenBurnTransactionBody=} [p] Properties to set\n */\n function TokenBurnTransactionBody(p) {\n this.serialNumbers = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token for which to burn tokens. If token does not exist, transaction results in\n * INVALID_TOKEN_ID\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenBurnTransactionBody\n * @instance\n */\n TokenBurnTransactionBody.prototype.token = null;\n\n /**\n * Applicable to tokens of type FUNGIBLE_COMMON. The amount to burn from the Treasury Account.\n * Amount must be a positive non-zero number, not bigger than the token balance of the treasury\n * account (0; balance], represented in the lowest denomination.\n * @member {Long} amount\n * @memberof proto.TokenBurnTransactionBody\n * @instance\n */\n TokenBurnTransactionBody.prototype.amount = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Applicable to tokens of type NON_FUNGIBLE_UNIQUE. The list of serial numbers to be burned.\n * @member {Array.} serialNumbers\n * @memberof proto.TokenBurnTransactionBody\n * @instance\n */\n TokenBurnTransactionBody.prototype.serialNumbers = $util.emptyArray;\n\n /**\n * Creates a new TokenBurnTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenBurnTransactionBody\n * @static\n * @param {proto.ITokenBurnTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenBurnTransactionBody} TokenBurnTransactionBody instance\n */\n TokenBurnTransactionBody.create = function create(properties) {\n return new TokenBurnTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenBurnTransactionBody message. Does not implicitly {@link proto.TokenBurnTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenBurnTransactionBody\n * @static\n * @param {proto.ITokenBurnTransactionBody} m TokenBurnTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenBurnTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n if (m.amount != null && Object.hasOwnProperty.call(m, \"amount\"))\n w.uint32(16).uint64(m.amount);\n if (m.serialNumbers != null && m.serialNumbers.length) {\n w.uint32(26).fork();\n for (var i = 0; i < m.serialNumbers.length; ++i)\n w.int64(m.serialNumbers[i]);\n w.ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TokenBurnTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenBurnTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenBurnTransactionBody} TokenBurnTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenBurnTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenBurnTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.amount = r.uint64();\n break;\n case 3:\n if (!(m.serialNumbers && m.serialNumbers.length))\n m.serialNumbers = [];\n if ((t & 7) === 2) {\n var c2 = r.uint32() + r.pos;\n while (r.pos < c2)\n m.serialNumbers.push(r.int64());\n } else\n m.serialNumbers.push(r.int64());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenBurnTransactionBody;\n })();\n\n proto.TokenWipeAccountTransactionBody = (function() {\n\n /**\n * Properties of a TokenWipeAccountTransactionBody.\n * @memberof proto\n * @interface ITokenWipeAccountTransactionBody\n * @property {proto.ITokenID|null} [token] The token for which the account will be wiped. If token does not exist, transaction results\n * in INVALID_TOKEN_ID\n * @property {proto.IAccountID|null} [account] The account to be wiped\n * @property {Long|null} [amount] Applicable to tokens of type FUNGIBLE_COMMON. The amount of tokens to wipe from the specified\n * account. Amount must be a positive non-zero number in the lowest denomination possible, not\n * bigger than the token balance of the account (0; balance]\n * @property {Array.|null} [serialNumbers] Applicable to tokens of type NON_FUNGIBLE_UNIQUE. The list of serial numbers to be wiped.\n */\n\n /**\n * Constructs a new TokenWipeAccountTransactionBody.\n * @memberof proto\n * @classdesc Wipes the provided amount of tokens from the specified Account. Must be signed by the Token's\n * Wipe key.\n * If the provided account is not found, the transaction will resolve to INVALID_ACCOUNT_ID.\n * If the provided account has been deleted, the transaction will resolve to ACCOUNT_DELETED.\n * If the provided token is not found, the transaction will resolve to INVALID_TOKEN_ID.\n * If the provided token has been deleted, the transaction will resolve to TOKEN_WAS_DELETED.\n * If an Association between the provided token and account is not found, the transaction will\n * resolve to TOKEN_NOT_ASSOCIATED_TO_ACCOUNT.\n * If Wipe Key is not present in the Token, transaction results in TOKEN_HAS_NO_WIPE_KEY.\n * If the provided account is the Token's Treasury Account, transaction results in\n * CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT\n * On success, tokens are removed from the account and the total supply of the token is decreased by\n * the wiped amount.\n * \n * If both amount and serialNumbers get filled, a INVALID_TRANSACTION_BODY response code will be\n * returned.\n * If neither the amount nor the serialNumbers get filled, a INVALID_WIPING_AMOUNT response code\n * will be returned.\n * If the serialNumbers list contains a non-positive integer as a serial number, a INVALID_NFT_ID\n * response code will be returned.\n * If the serialNumbers' list count is greater than the batch size limit global dynamic property, a\n * BATCH_SIZE_LIMIT_EXCEEDED response code will be returned.\n * \n * The amount provided is in the lowest denomination possible. Example:\n * Token A has 2 decimals. In order to wipe 100 tokens from account, one must provide amount of\n * 10000. In order to wipe 100.55 tokens, one must provide amount of 10055.\n * @implements ITokenWipeAccountTransactionBody\n * @constructor\n * @param {proto.ITokenWipeAccountTransactionBody=} [p] Properties to set\n */\n function TokenWipeAccountTransactionBody(p) {\n this.serialNumbers = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token for which the account will be wiped. If token does not exist, transaction results\n * in INVALID_TOKEN_ID\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenWipeAccountTransactionBody\n * @instance\n */\n TokenWipeAccountTransactionBody.prototype.token = null;\n\n /**\n * The account to be wiped\n * @member {proto.IAccountID|null|undefined} account\n * @memberof proto.TokenWipeAccountTransactionBody\n * @instance\n */\n TokenWipeAccountTransactionBody.prototype.account = null;\n\n /**\n * Applicable to tokens of type FUNGIBLE_COMMON. The amount of tokens to wipe from the specified\n * account. Amount must be a positive non-zero number in the lowest denomination possible, not\n * bigger than the token balance of the account (0; balance]\n * @member {Long} amount\n * @memberof proto.TokenWipeAccountTransactionBody\n * @instance\n */\n TokenWipeAccountTransactionBody.prototype.amount = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Applicable to tokens of type NON_FUNGIBLE_UNIQUE. The list of serial numbers to be wiped.\n * @member {Array.} serialNumbers\n * @memberof proto.TokenWipeAccountTransactionBody\n * @instance\n */\n TokenWipeAccountTransactionBody.prototype.serialNumbers = $util.emptyArray;\n\n /**\n * Creates a new TokenWipeAccountTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenWipeAccountTransactionBody\n * @static\n * @param {proto.ITokenWipeAccountTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenWipeAccountTransactionBody} TokenWipeAccountTransactionBody instance\n */\n TokenWipeAccountTransactionBody.create = function create(properties) {\n return new TokenWipeAccountTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenWipeAccountTransactionBody message. Does not implicitly {@link proto.TokenWipeAccountTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenWipeAccountTransactionBody\n * @static\n * @param {proto.ITokenWipeAccountTransactionBody} m TokenWipeAccountTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenWipeAccountTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n if (m.account != null && Object.hasOwnProperty.call(m, \"account\"))\n $root.proto.AccountID.encode(m.account, w.uint32(18).fork()).ldelim();\n if (m.amount != null && Object.hasOwnProperty.call(m, \"amount\"))\n w.uint32(24).uint64(m.amount);\n if (m.serialNumbers != null && m.serialNumbers.length) {\n w.uint32(34).fork();\n for (var i = 0; i < m.serialNumbers.length; ++i)\n w.int64(m.serialNumbers[i]);\n w.ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TokenWipeAccountTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenWipeAccountTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenWipeAccountTransactionBody} TokenWipeAccountTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenWipeAccountTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenWipeAccountTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.account = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.amount = r.uint64();\n break;\n case 4:\n if (!(m.serialNumbers && m.serialNumbers.length))\n m.serialNumbers = [];\n if ((t & 7) === 2) {\n var c2 = r.uint32() + r.pos;\n while (r.pos < c2)\n m.serialNumbers.push(r.int64());\n } else\n m.serialNumbers.push(r.int64());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenWipeAccountTransactionBody;\n })();\n\n proto.TokenAssociateTransactionBody = (function() {\n\n /**\n * Properties of a TokenAssociateTransactionBody.\n * @memberof proto\n * @interface ITokenAssociateTransactionBody\n * @property {proto.IAccountID|null} [account] The account to be associated with the provided tokens\n * @property {Array.|null} [tokens] The tokens to be associated with the provided account. In the case of NON_FUNGIBLE_UNIQUE\n * Type, once an account is associated, it can hold any number of NFTs (serial numbers) of that\n * token type\n */\n\n /**\n * Constructs a new TokenAssociateTransactionBody.\n * @memberof proto\n * @classdesc Associates the provided account with the provided tokens. Must be signed by the provided\n * Account's key.\n * If the provided account is not found, the transaction will resolve to INVALID_ACCOUNT_ID.\n * If the provided account has been deleted, the transaction will resolve to ACCOUNT_DELETED.\n * If any of the provided tokens is not found, the transaction will resolve to INVALID_TOKEN_REF.\n * If any of the provided tokens has been deleted, the transaction will resolve to TOKEN_WAS_DELETED.\n * If an association between the provided account and any of the tokens already exists, the\n * transaction will resolve to TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT.\n * If the provided account's associations count exceed the constraint of maximum token associations\n * per account, the transaction will resolve to TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED.\n * On success, associations between the provided account and tokens are made and the account is\n * ready to interact with the tokens.\n * @implements ITokenAssociateTransactionBody\n * @constructor\n * @param {proto.ITokenAssociateTransactionBody=} [p] Properties to set\n */\n function TokenAssociateTransactionBody(p) {\n this.tokens = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The account to be associated with the provided tokens\n * @member {proto.IAccountID|null|undefined} account\n * @memberof proto.TokenAssociateTransactionBody\n * @instance\n */\n TokenAssociateTransactionBody.prototype.account = null;\n\n /**\n * The tokens to be associated with the provided account. In the case of NON_FUNGIBLE_UNIQUE\n * Type, once an account is associated, it can hold any number of NFTs (serial numbers) of that\n * token type\n * @member {Array.} tokens\n * @memberof proto.TokenAssociateTransactionBody\n * @instance\n */\n TokenAssociateTransactionBody.prototype.tokens = $util.emptyArray;\n\n /**\n * Creates a new TokenAssociateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenAssociateTransactionBody\n * @static\n * @param {proto.ITokenAssociateTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenAssociateTransactionBody} TokenAssociateTransactionBody instance\n */\n TokenAssociateTransactionBody.create = function create(properties) {\n return new TokenAssociateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenAssociateTransactionBody message. Does not implicitly {@link proto.TokenAssociateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenAssociateTransactionBody\n * @static\n * @param {proto.ITokenAssociateTransactionBody} m TokenAssociateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenAssociateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.account != null && Object.hasOwnProperty.call(m, \"account\"))\n $root.proto.AccountID.encode(m.account, w.uint32(10).fork()).ldelim();\n if (m.tokens != null && m.tokens.length) {\n for (var i = 0; i < m.tokens.length; ++i)\n $root.proto.TokenID.encode(m.tokens[i], w.uint32(18).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TokenAssociateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenAssociateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenAssociateTransactionBody} TokenAssociateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenAssociateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenAssociateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.account = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.tokens && m.tokens.length))\n m.tokens = [];\n m.tokens.push($root.proto.TokenID.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenAssociateTransactionBody;\n })();\n\n proto.TokenDissociateTransactionBody = (function() {\n\n /**\n * Properties of a TokenDissociateTransactionBody.\n * @memberof proto\n * @interface ITokenDissociateTransactionBody\n * @property {proto.IAccountID|null} [account] The account to be dissociated with the provided tokens\n * @property {Array.|null} [tokens] The tokens to be dissociated with the provided account\n */\n\n /**\n * Constructs a new TokenDissociateTransactionBody.\n * @memberof proto\n * @classdesc Dissociates the provided account with the provided tokens. Must be signed by the provided\n * Account's key.\n * If the provided account is not found, the transaction will resolve to INVALID_ACCOUNT_ID.\n * If the provided account has been deleted, the transaction will resolve to ACCOUNT_DELETED.\n * If any of the provided tokens is not found, the transaction will resolve to INVALID_TOKEN_REF.\n * If any of the provided tokens has been deleted, the transaction will resolve to TOKEN_WAS_DELETED.\n * If an association between the provided account and any of the tokens does not exist, the\n * transaction will resolve to TOKEN_NOT_ASSOCIATED_TO_ACCOUNT.\n * If a token has not been deleted and has not expired, and the user has a nonzero balance, the\n * transaction will resolve to TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES.\n * If a fungible token has expired, the user can disassociate even if their token balance is\n * not zero.\n * If a non fungible token has expired, the user can not disassociate if their token\n * balance is not zero. The transaction will resolve to TRANSACTION_REQUIRED_ZERO_TOKEN_BALANCES.\n * On success, associations between the provided account and tokens are removed.\n * @implements ITokenDissociateTransactionBody\n * @constructor\n * @param {proto.ITokenDissociateTransactionBody=} [p] Properties to set\n */\n function TokenDissociateTransactionBody(p) {\n this.tokens = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The account to be dissociated with the provided tokens\n * @member {proto.IAccountID|null|undefined} account\n * @memberof proto.TokenDissociateTransactionBody\n * @instance\n */\n TokenDissociateTransactionBody.prototype.account = null;\n\n /**\n * The tokens to be dissociated with the provided account\n * @member {Array.} tokens\n * @memberof proto.TokenDissociateTransactionBody\n * @instance\n */\n TokenDissociateTransactionBody.prototype.tokens = $util.emptyArray;\n\n /**\n * Creates a new TokenDissociateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenDissociateTransactionBody\n * @static\n * @param {proto.ITokenDissociateTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenDissociateTransactionBody} TokenDissociateTransactionBody instance\n */\n TokenDissociateTransactionBody.create = function create(properties) {\n return new TokenDissociateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenDissociateTransactionBody message. Does not implicitly {@link proto.TokenDissociateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenDissociateTransactionBody\n * @static\n * @param {proto.ITokenDissociateTransactionBody} m TokenDissociateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenDissociateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.account != null && Object.hasOwnProperty.call(m, \"account\"))\n $root.proto.AccountID.encode(m.account, w.uint32(10).fork()).ldelim();\n if (m.tokens != null && m.tokens.length) {\n for (var i = 0; i < m.tokens.length; ++i)\n $root.proto.TokenID.encode(m.tokens[i], w.uint32(18).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TokenDissociateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenDissociateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenDissociateTransactionBody} TokenDissociateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenDissociateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenDissociateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.account = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.tokens && m.tokens.length))\n m.tokens = [];\n m.tokens.push($root.proto.TokenID.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenDissociateTransactionBody;\n })();\n\n proto.TokenFeeScheduleUpdateTransactionBody = (function() {\n\n /**\n * Properties of a TokenFeeScheduleUpdateTransactionBody.\n * @memberof proto\n * @interface ITokenFeeScheduleUpdateTransactionBody\n * @property {proto.ITokenID|null} [tokenId] The token whose fee schedule is to be updated\n * @property {Array.|null} [customFees] The new custom fees to be assessed during a CryptoTransfer that transfers units of this token\n */\n\n /**\n * Constructs a new TokenFeeScheduleUpdateTransactionBody.\n * @memberof proto\n * @classdesc At consensus, updates a token type's fee schedule to the given list of custom fees.\n * \n * If the target token type has no fee_schedule_key, resolves to TOKEN_HAS_NO_FEE_SCHEDULE_KEY.\n * Otherwise this transaction must be signed to the fee_schedule_key, or the transaction will\n * resolve to INVALID_SIGNATURE.\n * \n * If the custom_fees list is empty, clears the fee schedule or resolves to\n * CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES if the fee schedule was already empty.\n * @implements ITokenFeeScheduleUpdateTransactionBody\n * @constructor\n * @param {proto.ITokenFeeScheduleUpdateTransactionBody=} [p] Properties to set\n */\n function TokenFeeScheduleUpdateTransactionBody(p) {\n this.customFees = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token whose fee schedule is to be updated\n * @member {proto.ITokenID|null|undefined} tokenId\n * @memberof proto.TokenFeeScheduleUpdateTransactionBody\n * @instance\n */\n TokenFeeScheduleUpdateTransactionBody.prototype.tokenId = null;\n\n /**\n * The new custom fees to be assessed during a CryptoTransfer that transfers units of this token\n * @member {Array.} customFees\n * @memberof proto.TokenFeeScheduleUpdateTransactionBody\n * @instance\n */\n TokenFeeScheduleUpdateTransactionBody.prototype.customFees = $util.emptyArray;\n\n /**\n * Creates a new TokenFeeScheduleUpdateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenFeeScheduleUpdateTransactionBody\n * @static\n * @param {proto.ITokenFeeScheduleUpdateTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenFeeScheduleUpdateTransactionBody} TokenFeeScheduleUpdateTransactionBody instance\n */\n TokenFeeScheduleUpdateTransactionBody.create = function create(properties) {\n return new TokenFeeScheduleUpdateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenFeeScheduleUpdateTransactionBody message. Does not implicitly {@link proto.TokenFeeScheduleUpdateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenFeeScheduleUpdateTransactionBody\n * @static\n * @param {proto.ITokenFeeScheduleUpdateTransactionBody} m TokenFeeScheduleUpdateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenFeeScheduleUpdateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.tokenId != null && Object.hasOwnProperty.call(m, \"tokenId\"))\n $root.proto.TokenID.encode(m.tokenId, w.uint32(10).fork()).ldelim();\n if (m.customFees != null && m.customFees.length) {\n for (var i = 0; i < m.customFees.length; ++i)\n $root.proto.CustomFee.encode(m.customFees[i], w.uint32(18).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TokenFeeScheduleUpdateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenFeeScheduleUpdateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenFeeScheduleUpdateTransactionBody} TokenFeeScheduleUpdateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenFeeScheduleUpdateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenFeeScheduleUpdateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.tokenId = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.customFees && m.customFees.length))\n m.customFees = [];\n m.customFees.push($root.proto.CustomFee.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenFeeScheduleUpdateTransactionBody;\n })();\n\n proto.TokenPauseTransactionBody = (function() {\n\n /**\n * Properties of a TokenPauseTransactionBody.\n * @memberof proto\n * @interface ITokenPauseTransactionBody\n * @property {proto.ITokenID|null} [token] The token to be paused.\n */\n\n /**\n * Constructs a new TokenPauseTransactionBody.\n * @memberof proto\n * @classdesc Pauses the Token from being involved in any kind of Transaction until it is unpaused.\n * Must be signed with the Token's pause key.\n * If the provided token is not found, the transaction will resolve to INVALID_TOKEN_ID.\n * If the provided token has been deleted, the transaction will resolve to TOKEN_WAS_DELETED.\n * If no Pause Key is defined, the transaction will resolve to TOKEN_HAS_NO_PAUSE_KEY.\n * Once executed the Token is marked as paused and will be not able to be a part of any transaction.\n * The operation is idempotent - becomes a no-op if the Token is already Paused.\n * @implements ITokenPauseTransactionBody\n * @constructor\n * @param {proto.ITokenPauseTransactionBody=} [p] Properties to set\n */\n function TokenPauseTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token to be paused.\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenPauseTransactionBody\n * @instance\n */\n TokenPauseTransactionBody.prototype.token = null;\n\n /**\n * Creates a new TokenPauseTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenPauseTransactionBody\n * @static\n * @param {proto.ITokenPauseTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenPauseTransactionBody} TokenPauseTransactionBody instance\n */\n TokenPauseTransactionBody.create = function create(properties) {\n return new TokenPauseTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenPauseTransactionBody message. Does not implicitly {@link proto.TokenPauseTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenPauseTransactionBody\n * @static\n * @param {proto.ITokenPauseTransactionBody} m TokenPauseTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenPauseTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenPauseTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenPauseTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenPauseTransactionBody} TokenPauseTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenPauseTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenPauseTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenPauseTransactionBody;\n })();\n\n proto.TokenUnpauseTransactionBody = (function() {\n\n /**\n * Properties of a TokenUnpauseTransactionBody.\n * @memberof proto\n * @interface ITokenUnpauseTransactionBody\n * @property {proto.ITokenID|null} [token] The token to be unpaused.\n */\n\n /**\n * Constructs a new TokenUnpauseTransactionBody.\n * @memberof proto\n * @classdesc Unpauses the Token. Must be signed with the Token's pause key.\n * If the provided token is not found, the transaction will resolve to INVALID_TOKEN_ID.\n * If the provided token has been deleted, the transaction will resolve to TOKEN_WAS_DELETED.\n * If no Pause Key is defined, the transaction will resolve to TOKEN_HAS_NO_PAUSE_KEY.\n * Once executed the Token is marked as Unpaused and can be used in Transactions.\n * The operation is idempotent - becomes a no-op if the Token is already unpaused.\n * @implements ITokenUnpauseTransactionBody\n * @constructor\n * @param {proto.ITokenUnpauseTransactionBody=} [p] Properties to set\n */\n function TokenUnpauseTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The token to be unpaused.\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenUnpauseTransactionBody\n * @instance\n */\n TokenUnpauseTransactionBody.prototype.token = null;\n\n /**\n * Creates a new TokenUnpauseTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.TokenUnpauseTransactionBody\n * @static\n * @param {proto.ITokenUnpauseTransactionBody=} [properties] Properties to set\n * @returns {proto.TokenUnpauseTransactionBody} TokenUnpauseTransactionBody instance\n */\n TokenUnpauseTransactionBody.create = function create(properties) {\n return new TokenUnpauseTransactionBody(properties);\n };\n\n /**\n * Encodes the specified TokenUnpauseTransactionBody message. Does not implicitly {@link proto.TokenUnpauseTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenUnpauseTransactionBody\n * @static\n * @param {proto.ITokenUnpauseTransactionBody} m TokenUnpauseTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenUnpauseTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(10).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenUnpauseTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenUnpauseTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenUnpauseTransactionBody} TokenUnpauseTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenUnpauseTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenUnpauseTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenUnpauseTransactionBody;\n })();\n\n proto.ScheduleCreateTransactionBody = (function() {\n\n /**\n * Properties of a ScheduleCreateTransactionBody.\n * @memberof proto\n * @interface IScheduleCreateTransactionBody\n * @property {proto.ISchedulableTransactionBody|null} [scheduledTransactionBody] The scheduled transaction\n * @property {string|null} [memo] An optional memo with a UTF-8 encoding of no more than 100 bytes which does not contain the\n * zero byte\n * @property {proto.IKey|null} [adminKey] An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule\n * @property {proto.IAccountID|null} [payerAccountID] An optional id of the account to be charged the service fee for the scheduled transaction at\n * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not\n * given\n */\n\n /**\n * Constructs a new ScheduleCreateTransactionBody.\n * @memberof proto\n * @classdesc Create a new schedule entity (or simply, schedule) in the network's action queue.\n * Upon SUCCESS, the receipt contains the `ScheduleID` of the created schedule. A schedule\n * entity includes a scheduledTransactionBody to be executed when the schedule has\n * collected enough signing Ed25519 keys to satisfy the scheduled transaction's signing\n * requirements. Upon `SUCCESS`, the receipt also includes the scheduledTransactionID to\n * use to query for the record of the scheduled transaction's execution (if it occurs).\n * \n * The expiration time of a schedule is always 30 minutes; it remains in state and can be queried\n * using GetScheduleInfo until expiration, no matter if the scheduled transaction has\n * executed or marked deleted.\n * \n * If the adminKey field is omitted, the resulting schedule is immutable. If the\n * adminKey is set, the ScheduleDelete transaction can be used to mark it as\n * deleted. The creator may also specify an optional memo whose UTF-8 encoding is at most\n * 100 bytes and does not include the zero byte is also supported.\n * \n * When a scheduled transaction whose schedule has collected enough signing keys is executed, the\n * network only charges its payer the service fee, and not the node and network fees. If the\n * optional payerAccountID is set, the network charges this account. Otherwise it charges\n * the payer of the originating ScheduleCreate.\n * \n * Two ScheduleCreate transactions are identical if they are equal in all their\n * fields other than payerAccountID. (Here \"equal\" should be understood in the sense of\n * gRPC object equality in the network software runtime. In particular, a gRPC object with unknown fields is\n * not equal to a gRPC object without unknown fields, even if they agree on all known fields.)\n * \n * A ScheduleCreate transaction that attempts to re-create an identical schedule already in\n * state will receive a receipt with status IDENTICAL_SCHEDULE_ALREADY_CREATED; the receipt\n * will include the ScheduleID of the extant schedule, which may be used in a subsequent\n * ScheduleSign transaction. (The receipt will also include the TransactionID to\n * use in querying for the receipt or record of the scheduled transaction.)\n * \n * Other notable response codes include, INVALID_ACCOUNT_ID,\n * UNSCHEDULABLE_TRANSACTION, UNRESOLVABLE_REQUIRED_SIGNERS,\n * INVALID_SIGNATURE. For more information please see the section of this documentation on\n * the ResponseCode enum.\n * @implements IScheduleCreateTransactionBody\n * @constructor\n * @param {proto.IScheduleCreateTransactionBody=} [p] Properties to set\n */\n function ScheduleCreateTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The scheduled transaction\n * @member {proto.ISchedulableTransactionBody|null|undefined} scheduledTransactionBody\n * @memberof proto.ScheduleCreateTransactionBody\n * @instance\n */\n ScheduleCreateTransactionBody.prototype.scheduledTransactionBody = null;\n\n /**\n * An optional memo with a UTF-8 encoding of no more than 100 bytes which does not contain the\n * zero byte\n * @member {string} memo\n * @memberof proto.ScheduleCreateTransactionBody\n * @instance\n */\n ScheduleCreateTransactionBody.prototype.memo = \"\";\n\n /**\n * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule\n * @member {proto.IKey|null|undefined} adminKey\n * @memberof proto.ScheduleCreateTransactionBody\n * @instance\n */\n ScheduleCreateTransactionBody.prototype.adminKey = null;\n\n /**\n * An optional id of the account to be charged the service fee for the scheduled transaction at\n * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not\n * given\n * @member {proto.IAccountID|null|undefined} payerAccountID\n * @memberof proto.ScheduleCreateTransactionBody\n * @instance\n */\n ScheduleCreateTransactionBody.prototype.payerAccountID = null;\n\n /**\n * Creates a new ScheduleCreateTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.ScheduleCreateTransactionBody\n * @static\n * @param {proto.IScheduleCreateTransactionBody=} [properties] Properties to set\n * @returns {proto.ScheduleCreateTransactionBody} ScheduleCreateTransactionBody instance\n */\n ScheduleCreateTransactionBody.create = function create(properties) {\n return new ScheduleCreateTransactionBody(properties);\n };\n\n /**\n * Encodes the specified ScheduleCreateTransactionBody message. Does not implicitly {@link proto.ScheduleCreateTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.ScheduleCreateTransactionBody\n * @static\n * @param {proto.IScheduleCreateTransactionBody} m ScheduleCreateTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ScheduleCreateTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.scheduledTransactionBody != null && Object.hasOwnProperty.call(m, \"scheduledTransactionBody\"))\n $root.proto.SchedulableTransactionBody.encode(m.scheduledTransactionBody, w.uint32(10).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(18).string(m.memo);\n if (m.adminKey != null && Object.hasOwnProperty.call(m, \"adminKey\"))\n $root.proto.Key.encode(m.adminKey, w.uint32(26).fork()).ldelim();\n if (m.payerAccountID != null && Object.hasOwnProperty.call(m, \"payerAccountID\"))\n $root.proto.AccountID.encode(m.payerAccountID, w.uint32(34).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ScheduleCreateTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ScheduleCreateTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ScheduleCreateTransactionBody} ScheduleCreateTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ScheduleCreateTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ScheduleCreateTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.scheduledTransactionBody = $root.proto.SchedulableTransactionBody.decode(r, r.uint32());\n break;\n case 2:\n m.memo = r.string();\n break;\n case 3:\n m.adminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 4:\n m.payerAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ScheduleCreateTransactionBody;\n })();\n\n proto.SchedulableTransactionBody = (function() {\n\n /**\n * Properties of a SchedulableTransactionBody.\n * @memberof proto\n * @interface ISchedulableTransactionBody\n * @property {Long|null} [transactionFee] The maximum transaction fee the client is willing to pay\n * @property {string|null} [memo] A memo to include the execution record; the UTF-8 encoding may be up to 100 bytes and must not\n * include the zero byte\n * @property {proto.IContractCallTransactionBody|null} [contractCall] Calls a function of a contract instance\n * @property {proto.IContractCreateTransactionBody|null} [contractCreateInstance] Creates a contract instance\n * @property {proto.IContractUpdateTransactionBody|null} [contractUpdateInstance] Updates a contract\n * @property {proto.IContractDeleteTransactionBody|null} [contractDeleteInstance] Delete contract and transfer remaining balance into specified account\n * @property {proto.ICryptoAdjustAllowanceTransactionBody|null} [cryptoAdjustAllowance] Adjusts the approved allowance for a spender to transfer the paying account's hbar or tokens.\n * @property {proto.ICryptoApproveAllowanceTransactionBody|null} [cryptoApproveAllowance] Adds one or more approved allowances for spenders to transfer the paying account's hbar or tokens.\n * @property {proto.ICryptoCreateTransactionBody|null} [cryptoCreateAccount] Create a new cryptocurrency account\n * @property {proto.ICryptoDeleteTransactionBody|null} [cryptoDelete] Delete a cryptocurrency account (mark as deleted, and transfer hbars out)\n * @property {proto.ICryptoTransferTransactionBody|null} [cryptoTransfer] Transfer amount between accounts\n * @property {proto.ICryptoUpdateTransactionBody|null} [cryptoUpdateAccount] Modify information such as the expiration date for an account\n * @property {proto.IFileAppendTransactionBody|null} [fileAppend] Add bytes to the end of the contents of a file\n * @property {proto.IFileCreateTransactionBody|null} [fileCreate] Create a new file\n * @property {proto.IFileDeleteTransactionBody|null} [fileDelete] Delete a file (remove contents and mark as deleted until it expires)\n * @property {proto.IFileUpdateTransactionBody|null} [fileUpdate] Modify information such as the expiration date for a file\n * @property {proto.ISystemDeleteTransactionBody|null} [systemDelete] Hedera administrative deletion of a file or smart contract\n * @property {proto.ISystemUndeleteTransactionBody|null} [systemUndelete] To undelete an entity deleted by SystemDelete\n * @property {proto.IFreezeTransactionBody|null} [freeze] Freeze the nodes\n * @property {proto.IConsensusCreateTopicTransactionBody|null} [consensusCreateTopic] Creates a topic\n * @property {proto.IConsensusUpdateTopicTransactionBody|null} [consensusUpdateTopic] Updates a topic\n * @property {proto.IConsensusDeleteTopicTransactionBody|null} [consensusDeleteTopic] Deletes a topic\n * @property {proto.IConsensusSubmitMessageTransactionBody|null} [consensusSubmitMessage] Submits message to a topic\n * @property {proto.ITokenCreateTransactionBody|null} [tokenCreation] Creates a token instance\n * @property {proto.ITokenFreezeAccountTransactionBody|null} [tokenFreeze] Freezes account not to be able to transact with a token\n * @property {proto.ITokenUnfreezeAccountTransactionBody|null} [tokenUnfreeze] Unfreezes account for a token\n * @property {proto.ITokenGrantKycTransactionBody|null} [tokenGrantKyc] Grants KYC to an account for a token\n * @property {proto.ITokenRevokeKycTransactionBody|null} [tokenRevokeKyc] Revokes KYC of an account for a token\n * @property {proto.ITokenDeleteTransactionBody|null} [tokenDeletion] Deletes a token instance\n * @property {proto.ITokenUpdateTransactionBody|null} [tokenUpdate] Updates a token instance\n * @property {proto.ITokenMintTransactionBody|null} [tokenMint] Mints new tokens to a token's treasury account\n * @property {proto.ITokenBurnTransactionBody|null} [tokenBurn] Burns tokens from a token's treasury account\n * @property {proto.ITokenWipeAccountTransactionBody|null} [tokenWipe] Wipes amount of tokens from an account\n * @property {proto.ITokenAssociateTransactionBody|null} [tokenAssociate] Associate tokens to an account\n * @property {proto.ITokenDissociateTransactionBody|null} [tokenDissociate] Dissociate tokens from an account\n * @property {proto.ITokenFeeScheduleUpdateTransactionBody|null} [tokenFeeScheduleUpdate] Updates a token's custom fee schedule\n * @property {proto.ITokenPauseTransactionBody|null} [tokenPause] Pauses the Token\n * @property {proto.ITokenUnpauseTransactionBody|null} [tokenUnpause] Unpauses the Token\n * @property {proto.IScheduleDeleteTransactionBody|null} [scheduleDelete] Marks a schedule in the network's action queue as deleted, preventing it from executing\n */\n\n /**\n * Constructs a new SchedulableTransactionBody.\n * @memberof proto\n * @classdesc A schedulable transaction. Note that the global/dynamic system property\n * scheduling.whitelist controls which transaction types may be scheduled. In Hedera\n * Services 0.13.0, it will include only CryptoTransfer and ConsensusSubmitMessage\n * functions.\n * @implements ISchedulableTransactionBody\n * @constructor\n * @param {proto.ISchedulableTransactionBody=} [p] Properties to set\n */\n function SchedulableTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The maximum transaction fee the client is willing to pay\n * @member {Long} transactionFee\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.transactionFee = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * A memo to include the execution record; the UTF-8 encoding may be up to 100 bytes and must not\n * include the zero byte\n * @member {string} memo\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.memo = \"\";\n\n /**\n * Calls a function of a contract instance\n * @member {proto.IContractCallTransactionBody|null|undefined} contractCall\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.contractCall = null;\n\n /**\n * Creates a contract instance\n * @member {proto.IContractCreateTransactionBody|null|undefined} contractCreateInstance\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.contractCreateInstance = null;\n\n /**\n * Updates a contract\n * @member {proto.IContractUpdateTransactionBody|null|undefined} contractUpdateInstance\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.contractUpdateInstance = null;\n\n /**\n * Delete contract and transfer remaining balance into specified account\n * @member {proto.IContractDeleteTransactionBody|null|undefined} contractDeleteInstance\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.contractDeleteInstance = null;\n\n /**\n * Adjusts the approved allowance for a spender to transfer the paying account's hbar or tokens.\n * @member {proto.ICryptoAdjustAllowanceTransactionBody|null|undefined} cryptoAdjustAllowance\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.cryptoAdjustAllowance = null;\n\n /**\n * Adds one or more approved allowances for spenders to transfer the paying account's hbar or tokens.\n * @member {proto.ICryptoApproveAllowanceTransactionBody|null|undefined} cryptoApproveAllowance\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.cryptoApproveAllowance = null;\n\n /**\n * Create a new cryptocurrency account\n * @member {proto.ICryptoCreateTransactionBody|null|undefined} cryptoCreateAccount\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.cryptoCreateAccount = null;\n\n /**\n * Delete a cryptocurrency account (mark as deleted, and transfer hbars out)\n * @member {proto.ICryptoDeleteTransactionBody|null|undefined} cryptoDelete\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.cryptoDelete = null;\n\n /**\n * Transfer amount between accounts\n * @member {proto.ICryptoTransferTransactionBody|null|undefined} cryptoTransfer\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.cryptoTransfer = null;\n\n /**\n * Modify information such as the expiration date for an account\n * @member {proto.ICryptoUpdateTransactionBody|null|undefined} cryptoUpdateAccount\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.cryptoUpdateAccount = null;\n\n /**\n * Add bytes to the end of the contents of a file\n * @member {proto.IFileAppendTransactionBody|null|undefined} fileAppend\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.fileAppend = null;\n\n /**\n * Create a new file\n * @member {proto.IFileCreateTransactionBody|null|undefined} fileCreate\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.fileCreate = null;\n\n /**\n * Delete a file (remove contents and mark as deleted until it expires)\n * @member {proto.IFileDeleteTransactionBody|null|undefined} fileDelete\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.fileDelete = null;\n\n /**\n * Modify information such as the expiration date for a file\n * @member {proto.IFileUpdateTransactionBody|null|undefined} fileUpdate\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.fileUpdate = null;\n\n /**\n * Hedera administrative deletion of a file or smart contract\n * @member {proto.ISystemDeleteTransactionBody|null|undefined} systemDelete\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.systemDelete = null;\n\n /**\n * To undelete an entity deleted by SystemDelete\n * @member {proto.ISystemUndeleteTransactionBody|null|undefined} systemUndelete\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.systemUndelete = null;\n\n /**\n * Freeze the nodes\n * @member {proto.IFreezeTransactionBody|null|undefined} freeze\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.freeze = null;\n\n /**\n * Creates a topic\n * @member {proto.IConsensusCreateTopicTransactionBody|null|undefined} consensusCreateTopic\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.consensusCreateTopic = null;\n\n /**\n * Updates a topic\n * @member {proto.IConsensusUpdateTopicTransactionBody|null|undefined} consensusUpdateTopic\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.consensusUpdateTopic = null;\n\n /**\n * Deletes a topic\n * @member {proto.IConsensusDeleteTopicTransactionBody|null|undefined} consensusDeleteTopic\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.consensusDeleteTopic = null;\n\n /**\n * Submits message to a topic\n * @member {proto.IConsensusSubmitMessageTransactionBody|null|undefined} consensusSubmitMessage\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.consensusSubmitMessage = null;\n\n /**\n * Creates a token instance\n * @member {proto.ITokenCreateTransactionBody|null|undefined} tokenCreation\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenCreation = null;\n\n /**\n * Freezes account not to be able to transact with a token\n * @member {proto.ITokenFreezeAccountTransactionBody|null|undefined} tokenFreeze\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenFreeze = null;\n\n /**\n * Unfreezes account for a token\n * @member {proto.ITokenUnfreezeAccountTransactionBody|null|undefined} tokenUnfreeze\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenUnfreeze = null;\n\n /**\n * Grants KYC to an account for a token\n * @member {proto.ITokenGrantKycTransactionBody|null|undefined} tokenGrantKyc\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenGrantKyc = null;\n\n /**\n * Revokes KYC of an account for a token\n * @member {proto.ITokenRevokeKycTransactionBody|null|undefined} tokenRevokeKyc\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenRevokeKyc = null;\n\n /**\n * Deletes a token instance\n * @member {proto.ITokenDeleteTransactionBody|null|undefined} tokenDeletion\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenDeletion = null;\n\n /**\n * Updates a token instance\n * @member {proto.ITokenUpdateTransactionBody|null|undefined} tokenUpdate\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenUpdate = null;\n\n /**\n * Mints new tokens to a token's treasury account\n * @member {proto.ITokenMintTransactionBody|null|undefined} tokenMint\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenMint = null;\n\n /**\n * Burns tokens from a token's treasury account\n * @member {proto.ITokenBurnTransactionBody|null|undefined} tokenBurn\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenBurn = null;\n\n /**\n * Wipes amount of tokens from an account\n * @member {proto.ITokenWipeAccountTransactionBody|null|undefined} tokenWipe\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenWipe = null;\n\n /**\n * Associate tokens to an account\n * @member {proto.ITokenAssociateTransactionBody|null|undefined} tokenAssociate\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenAssociate = null;\n\n /**\n * Dissociate tokens from an account\n * @member {proto.ITokenDissociateTransactionBody|null|undefined} tokenDissociate\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenDissociate = null;\n\n /**\n * Updates a token's custom fee schedule\n * @member {proto.ITokenFeeScheduleUpdateTransactionBody|null|undefined} tokenFeeScheduleUpdate\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenFeeScheduleUpdate = null;\n\n /**\n * Pauses the Token\n * @member {proto.ITokenPauseTransactionBody|null|undefined} tokenPause\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenPause = null;\n\n /**\n * Unpauses the Token\n * @member {proto.ITokenUnpauseTransactionBody|null|undefined} tokenUnpause\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.tokenUnpause = null;\n\n /**\n * Marks a schedule in the network's action queue as deleted, preventing it from executing\n * @member {proto.IScheduleDeleteTransactionBody|null|undefined} scheduleDelete\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n SchedulableTransactionBody.prototype.scheduleDelete = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * The choices here are arranged by service in roughly lexicographical order. The field ordinals are non-sequential, and a result of the historical order of implementation.\n * @member {\"contractCall\"|\"contractCreateInstance\"|\"contractUpdateInstance\"|\"contractDeleteInstance\"|\"cryptoAdjustAllowance\"|\"cryptoApproveAllowance\"|\"cryptoCreateAccount\"|\"cryptoDelete\"|\"cryptoTransfer\"|\"cryptoUpdateAccount\"|\"fileAppend\"|\"fileCreate\"|\"fileDelete\"|\"fileUpdate\"|\"systemDelete\"|\"systemUndelete\"|\"freeze\"|\"consensusCreateTopic\"|\"consensusUpdateTopic\"|\"consensusDeleteTopic\"|\"consensusSubmitMessage\"|\"tokenCreation\"|\"tokenFreeze\"|\"tokenUnfreeze\"|\"tokenGrantKyc\"|\"tokenRevokeKyc\"|\"tokenDeletion\"|\"tokenUpdate\"|\"tokenMint\"|\"tokenBurn\"|\"tokenWipe\"|\"tokenAssociate\"|\"tokenDissociate\"|\"tokenFeeScheduleUpdate\"|\"tokenPause\"|\"tokenUnpause\"|\"scheduleDelete\"|undefined} data\n * @memberof proto.SchedulableTransactionBody\n * @instance\n */\n Object.defineProperty(SchedulableTransactionBody.prototype, \"data\", {\n get: $util.oneOfGetter($oneOfFields = [\"contractCall\", \"contractCreateInstance\", \"contractUpdateInstance\", \"contractDeleteInstance\", \"cryptoAdjustAllowance\", \"cryptoApproveAllowance\", \"cryptoCreateAccount\", \"cryptoDelete\", \"cryptoTransfer\", \"cryptoUpdateAccount\", \"fileAppend\", \"fileCreate\", \"fileDelete\", \"fileUpdate\", \"systemDelete\", \"systemUndelete\", \"freeze\", \"consensusCreateTopic\", \"consensusUpdateTopic\", \"consensusDeleteTopic\", \"consensusSubmitMessage\", \"tokenCreation\", \"tokenFreeze\", \"tokenUnfreeze\", \"tokenGrantKyc\", \"tokenRevokeKyc\", \"tokenDeletion\", \"tokenUpdate\", \"tokenMint\", \"tokenBurn\", \"tokenWipe\", \"tokenAssociate\", \"tokenDissociate\", \"tokenFeeScheduleUpdate\", \"tokenPause\", \"tokenUnpause\", \"scheduleDelete\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new SchedulableTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.SchedulableTransactionBody\n * @static\n * @param {proto.ISchedulableTransactionBody=} [properties] Properties to set\n * @returns {proto.SchedulableTransactionBody} SchedulableTransactionBody instance\n */\n SchedulableTransactionBody.create = function create(properties) {\n return new SchedulableTransactionBody(properties);\n };\n\n /**\n * Encodes the specified SchedulableTransactionBody message. Does not implicitly {@link proto.SchedulableTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.SchedulableTransactionBody\n * @static\n * @param {proto.ISchedulableTransactionBody} m SchedulableTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n SchedulableTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.transactionFee != null && Object.hasOwnProperty.call(m, \"transactionFee\"))\n w.uint32(8).uint64(m.transactionFee);\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(18).string(m.memo);\n if (m.contractCall != null && Object.hasOwnProperty.call(m, \"contractCall\"))\n $root.proto.ContractCallTransactionBody.encode(m.contractCall, w.uint32(26).fork()).ldelim();\n if (m.contractCreateInstance != null && Object.hasOwnProperty.call(m, \"contractCreateInstance\"))\n $root.proto.ContractCreateTransactionBody.encode(m.contractCreateInstance, w.uint32(34).fork()).ldelim();\n if (m.contractUpdateInstance != null && Object.hasOwnProperty.call(m, \"contractUpdateInstance\"))\n $root.proto.ContractUpdateTransactionBody.encode(m.contractUpdateInstance, w.uint32(42).fork()).ldelim();\n if (m.contractDeleteInstance != null && Object.hasOwnProperty.call(m, \"contractDeleteInstance\"))\n $root.proto.ContractDeleteTransactionBody.encode(m.contractDeleteInstance, w.uint32(50).fork()).ldelim();\n if (m.cryptoCreateAccount != null && Object.hasOwnProperty.call(m, \"cryptoCreateAccount\"))\n $root.proto.CryptoCreateTransactionBody.encode(m.cryptoCreateAccount, w.uint32(58).fork()).ldelim();\n if (m.cryptoDelete != null && Object.hasOwnProperty.call(m, \"cryptoDelete\"))\n $root.proto.CryptoDeleteTransactionBody.encode(m.cryptoDelete, w.uint32(66).fork()).ldelim();\n if (m.cryptoTransfer != null && Object.hasOwnProperty.call(m, \"cryptoTransfer\"))\n $root.proto.CryptoTransferTransactionBody.encode(m.cryptoTransfer, w.uint32(74).fork()).ldelim();\n if (m.cryptoUpdateAccount != null && Object.hasOwnProperty.call(m, \"cryptoUpdateAccount\"))\n $root.proto.CryptoUpdateTransactionBody.encode(m.cryptoUpdateAccount, w.uint32(82).fork()).ldelim();\n if (m.fileAppend != null && Object.hasOwnProperty.call(m, \"fileAppend\"))\n $root.proto.FileAppendTransactionBody.encode(m.fileAppend, w.uint32(90).fork()).ldelim();\n if (m.fileCreate != null && Object.hasOwnProperty.call(m, \"fileCreate\"))\n $root.proto.FileCreateTransactionBody.encode(m.fileCreate, w.uint32(98).fork()).ldelim();\n if (m.fileDelete != null && Object.hasOwnProperty.call(m, \"fileDelete\"))\n $root.proto.FileDeleteTransactionBody.encode(m.fileDelete, w.uint32(106).fork()).ldelim();\n if (m.fileUpdate != null && Object.hasOwnProperty.call(m, \"fileUpdate\"))\n $root.proto.FileUpdateTransactionBody.encode(m.fileUpdate, w.uint32(114).fork()).ldelim();\n if (m.systemDelete != null && Object.hasOwnProperty.call(m, \"systemDelete\"))\n $root.proto.SystemDeleteTransactionBody.encode(m.systemDelete, w.uint32(122).fork()).ldelim();\n if (m.systemUndelete != null && Object.hasOwnProperty.call(m, \"systemUndelete\"))\n $root.proto.SystemUndeleteTransactionBody.encode(m.systemUndelete, w.uint32(130).fork()).ldelim();\n if (m.freeze != null && Object.hasOwnProperty.call(m, \"freeze\"))\n $root.proto.FreezeTransactionBody.encode(m.freeze, w.uint32(138).fork()).ldelim();\n if (m.consensusCreateTopic != null && Object.hasOwnProperty.call(m, \"consensusCreateTopic\"))\n $root.proto.ConsensusCreateTopicTransactionBody.encode(m.consensusCreateTopic, w.uint32(146).fork()).ldelim();\n if (m.consensusUpdateTopic != null && Object.hasOwnProperty.call(m, \"consensusUpdateTopic\"))\n $root.proto.ConsensusUpdateTopicTransactionBody.encode(m.consensusUpdateTopic, w.uint32(154).fork()).ldelim();\n if (m.consensusDeleteTopic != null && Object.hasOwnProperty.call(m, \"consensusDeleteTopic\"))\n $root.proto.ConsensusDeleteTopicTransactionBody.encode(m.consensusDeleteTopic, w.uint32(162).fork()).ldelim();\n if (m.consensusSubmitMessage != null && Object.hasOwnProperty.call(m, \"consensusSubmitMessage\"))\n $root.proto.ConsensusSubmitMessageTransactionBody.encode(m.consensusSubmitMessage, w.uint32(170).fork()).ldelim();\n if (m.tokenCreation != null && Object.hasOwnProperty.call(m, \"tokenCreation\"))\n $root.proto.TokenCreateTransactionBody.encode(m.tokenCreation, w.uint32(178).fork()).ldelim();\n if (m.tokenFreeze != null && Object.hasOwnProperty.call(m, \"tokenFreeze\"))\n $root.proto.TokenFreezeAccountTransactionBody.encode(m.tokenFreeze, w.uint32(186).fork()).ldelim();\n if (m.tokenUnfreeze != null && Object.hasOwnProperty.call(m, \"tokenUnfreeze\"))\n $root.proto.TokenUnfreezeAccountTransactionBody.encode(m.tokenUnfreeze, w.uint32(194).fork()).ldelim();\n if (m.tokenGrantKyc != null && Object.hasOwnProperty.call(m, \"tokenGrantKyc\"))\n $root.proto.TokenGrantKycTransactionBody.encode(m.tokenGrantKyc, w.uint32(202).fork()).ldelim();\n if (m.tokenRevokeKyc != null && Object.hasOwnProperty.call(m, \"tokenRevokeKyc\"))\n $root.proto.TokenRevokeKycTransactionBody.encode(m.tokenRevokeKyc, w.uint32(210).fork()).ldelim();\n if (m.tokenDeletion != null && Object.hasOwnProperty.call(m, \"tokenDeletion\"))\n $root.proto.TokenDeleteTransactionBody.encode(m.tokenDeletion, w.uint32(218).fork()).ldelim();\n if (m.tokenUpdate != null && Object.hasOwnProperty.call(m, \"tokenUpdate\"))\n $root.proto.TokenUpdateTransactionBody.encode(m.tokenUpdate, w.uint32(226).fork()).ldelim();\n if (m.tokenMint != null && Object.hasOwnProperty.call(m, \"tokenMint\"))\n $root.proto.TokenMintTransactionBody.encode(m.tokenMint, w.uint32(234).fork()).ldelim();\n if (m.tokenBurn != null && Object.hasOwnProperty.call(m, \"tokenBurn\"))\n $root.proto.TokenBurnTransactionBody.encode(m.tokenBurn, w.uint32(242).fork()).ldelim();\n if (m.tokenWipe != null && Object.hasOwnProperty.call(m, \"tokenWipe\"))\n $root.proto.TokenWipeAccountTransactionBody.encode(m.tokenWipe, w.uint32(250).fork()).ldelim();\n if (m.tokenAssociate != null && Object.hasOwnProperty.call(m, \"tokenAssociate\"))\n $root.proto.TokenAssociateTransactionBody.encode(m.tokenAssociate, w.uint32(258).fork()).ldelim();\n if (m.tokenDissociate != null && Object.hasOwnProperty.call(m, \"tokenDissociate\"))\n $root.proto.TokenDissociateTransactionBody.encode(m.tokenDissociate, w.uint32(266).fork()).ldelim();\n if (m.scheduleDelete != null && Object.hasOwnProperty.call(m, \"scheduleDelete\"))\n $root.proto.ScheduleDeleteTransactionBody.encode(m.scheduleDelete, w.uint32(274).fork()).ldelim();\n if (m.tokenPause != null && Object.hasOwnProperty.call(m, \"tokenPause\"))\n $root.proto.TokenPauseTransactionBody.encode(m.tokenPause, w.uint32(282).fork()).ldelim();\n if (m.tokenUnpause != null && Object.hasOwnProperty.call(m, \"tokenUnpause\"))\n $root.proto.TokenUnpauseTransactionBody.encode(m.tokenUnpause, w.uint32(290).fork()).ldelim();\n if (m.cryptoAdjustAllowance != null && Object.hasOwnProperty.call(m, \"cryptoAdjustAllowance\"))\n $root.proto.CryptoAdjustAllowanceTransactionBody.encode(m.cryptoAdjustAllowance, w.uint32(298).fork()).ldelim();\n if (m.cryptoApproveAllowance != null && Object.hasOwnProperty.call(m, \"cryptoApproveAllowance\"))\n $root.proto.CryptoApproveAllowanceTransactionBody.encode(m.cryptoApproveAllowance, w.uint32(306).fork()).ldelim();\n if (m.tokenFeeScheduleUpdate != null && Object.hasOwnProperty.call(m, \"tokenFeeScheduleUpdate\"))\n $root.proto.TokenFeeScheduleUpdateTransactionBody.encode(m.tokenFeeScheduleUpdate, w.uint32(314).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a SchedulableTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.SchedulableTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.SchedulableTransactionBody} SchedulableTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n SchedulableTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.SchedulableTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.transactionFee = r.uint64();\n break;\n case 2:\n m.memo = r.string();\n break;\n case 3:\n m.contractCall = $root.proto.ContractCallTransactionBody.decode(r, r.uint32());\n break;\n case 4:\n m.contractCreateInstance = $root.proto.ContractCreateTransactionBody.decode(r, r.uint32());\n break;\n case 5:\n m.contractUpdateInstance = $root.proto.ContractUpdateTransactionBody.decode(r, r.uint32());\n break;\n case 6:\n m.contractDeleteInstance = $root.proto.ContractDeleteTransactionBody.decode(r, r.uint32());\n break;\n case 37:\n m.cryptoAdjustAllowance = $root.proto.CryptoAdjustAllowanceTransactionBody.decode(r, r.uint32());\n break;\n case 38:\n m.cryptoApproveAllowance = $root.proto.CryptoApproveAllowanceTransactionBody.decode(r, r.uint32());\n break;\n case 7:\n m.cryptoCreateAccount = $root.proto.CryptoCreateTransactionBody.decode(r, r.uint32());\n break;\n case 8:\n m.cryptoDelete = $root.proto.CryptoDeleteTransactionBody.decode(r, r.uint32());\n break;\n case 9:\n m.cryptoTransfer = $root.proto.CryptoTransferTransactionBody.decode(r, r.uint32());\n break;\n case 10:\n m.cryptoUpdateAccount = $root.proto.CryptoUpdateTransactionBody.decode(r, r.uint32());\n break;\n case 11:\n m.fileAppend = $root.proto.FileAppendTransactionBody.decode(r, r.uint32());\n break;\n case 12:\n m.fileCreate = $root.proto.FileCreateTransactionBody.decode(r, r.uint32());\n break;\n case 13:\n m.fileDelete = $root.proto.FileDeleteTransactionBody.decode(r, r.uint32());\n break;\n case 14:\n m.fileUpdate = $root.proto.FileUpdateTransactionBody.decode(r, r.uint32());\n break;\n case 15:\n m.systemDelete = $root.proto.SystemDeleteTransactionBody.decode(r, r.uint32());\n break;\n case 16:\n m.systemUndelete = $root.proto.SystemUndeleteTransactionBody.decode(r, r.uint32());\n break;\n case 17:\n m.freeze = $root.proto.FreezeTransactionBody.decode(r, r.uint32());\n break;\n case 18:\n m.consensusCreateTopic = $root.proto.ConsensusCreateTopicTransactionBody.decode(r, r.uint32());\n break;\n case 19:\n m.consensusUpdateTopic = $root.proto.ConsensusUpdateTopicTransactionBody.decode(r, r.uint32());\n break;\n case 20:\n m.consensusDeleteTopic = $root.proto.ConsensusDeleteTopicTransactionBody.decode(r, r.uint32());\n break;\n case 21:\n m.consensusSubmitMessage = $root.proto.ConsensusSubmitMessageTransactionBody.decode(r, r.uint32());\n break;\n case 22:\n m.tokenCreation = $root.proto.TokenCreateTransactionBody.decode(r, r.uint32());\n break;\n case 23:\n m.tokenFreeze = $root.proto.TokenFreezeAccountTransactionBody.decode(r, r.uint32());\n break;\n case 24:\n m.tokenUnfreeze = $root.proto.TokenUnfreezeAccountTransactionBody.decode(r, r.uint32());\n break;\n case 25:\n m.tokenGrantKyc = $root.proto.TokenGrantKycTransactionBody.decode(r, r.uint32());\n break;\n case 26:\n m.tokenRevokeKyc = $root.proto.TokenRevokeKycTransactionBody.decode(r, r.uint32());\n break;\n case 27:\n m.tokenDeletion = $root.proto.TokenDeleteTransactionBody.decode(r, r.uint32());\n break;\n case 28:\n m.tokenUpdate = $root.proto.TokenUpdateTransactionBody.decode(r, r.uint32());\n break;\n case 29:\n m.tokenMint = $root.proto.TokenMintTransactionBody.decode(r, r.uint32());\n break;\n case 30:\n m.tokenBurn = $root.proto.TokenBurnTransactionBody.decode(r, r.uint32());\n break;\n case 31:\n m.tokenWipe = $root.proto.TokenWipeAccountTransactionBody.decode(r, r.uint32());\n break;\n case 32:\n m.tokenAssociate = $root.proto.TokenAssociateTransactionBody.decode(r, r.uint32());\n break;\n case 33:\n m.tokenDissociate = $root.proto.TokenDissociateTransactionBody.decode(r, r.uint32());\n break;\n case 39:\n m.tokenFeeScheduleUpdate = $root.proto.TokenFeeScheduleUpdateTransactionBody.decode(r, r.uint32());\n break;\n case 35:\n m.tokenPause = $root.proto.TokenPauseTransactionBody.decode(r, r.uint32());\n break;\n case 36:\n m.tokenUnpause = $root.proto.TokenUnpauseTransactionBody.decode(r, r.uint32());\n break;\n case 34:\n m.scheduleDelete = $root.proto.ScheduleDeleteTransactionBody.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return SchedulableTransactionBody;\n })();\n\n proto.ScheduleDeleteTransactionBody = (function() {\n\n /**\n * Properties of a ScheduleDeleteTransactionBody.\n * @memberof proto\n * @interface IScheduleDeleteTransactionBody\n * @property {proto.IScheduleID|null} [scheduleID] The ID of the Scheduled Entity\n */\n\n /**\n * Constructs a new ScheduleDeleteTransactionBody.\n * @memberof proto\n * @classdesc Marks a schedule in the network's action queue as deleted. Must be signed by the admin key of the\n * target schedule. A deleted schedule cannot receive any additional signing keys, nor will it be\n * executed.\n * \n * Other notable response codes include, INVALID_SCHEDULE_ID,\n * SCHEDULE_WAS_DELETED, SCHEDULE_WAS_EXECUTED, SCHEDULE_IS_IMMUTABLE.\n * For more information please see the section of this documentation on the ResponseCode\n * enum.\n * @implements IScheduleDeleteTransactionBody\n * @constructor\n * @param {proto.IScheduleDeleteTransactionBody=} [p] Properties to set\n */\n function ScheduleDeleteTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The ID of the Scheduled Entity\n * @member {proto.IScheduleID|null|undefined} scheduleID\n * @memberof proto.ScheduleDeleteTransactionBody\n * @instance\n */\n ScheduleDeleteTransactionBody.prototype.scheduleID = null;\n\n /**\n * Creates a new ScheduleDeleteTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.ScheduleDeleteTransactionBody\n * @static\n * @param {proto.IScheduleDeleteTransactionBody=} [properties] Properties to set\n * @returns {proto.ScheduleDeleteTransactionBody} ScheduleDeleteTransactionBody instance\n */\n ScheduleDeleteTransactionBody.create = function create(properties) {\n return new ScheduleDeleteTransactionBody(properties);\n };\n\n /**\n * Encodes the specified ScheduleDeleteTransactionBody message. Does not implicitly {@link proto.ScheduleDeleteTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.ScheduleDeleteTransactionBody\n * @static\n * @param {proto.IScheduleDeleteTransactionBody} m ScheduleDeleteTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ScheduleDeleteTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.scheduleID != null && Object.hasOwnProperty.call(m, \"scheduleID\"))\n $root.proto.ScheduleID.encode(m.scheduleID, w.uint32(10).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ScheduleDeleteTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ScheduleDeleteTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ScheduleDeleteTransactionBody} ScheduleDeleteTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ScheduleDeleteTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ScheduleDeleteTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.scheduleID = $root.proto.ScheduleID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ScheduleDeleteTransactionBody;\n })();\n\n proto.ScheduleSignTransactionBody = (function() {\n\n /**\n * Properties of a ScheduleSignTransactionBody.\n * @memberof proto\n * @interface IScheduleSignTransactionBody\n * @property {proto.IScheduleID|null} [scheduleID] The id of the schedule to add signing keys to\n */\n\n /**\n * Constructs a new ScheduleSignTransactionBody.\n * @memberof proto\n * @classdesc Adds zero or more signing keys to a schedule. If the resulting set of signing keys satisfy the\n * scheduled transaction's signing requirements, it will be executed immediately after the\n * triggering ScheduleSign.\n * \n * Upon SUCCESS, the receipt includes the scheduledTransactionID to use to query\n * for the record of the scheduled transaction's execution (if it occurs).\n * \n * Other notable response codes include INVALID_SCHEDULE_ID, SCHEDULE_WAS_DELETD,\n * INVALID_ACCOUNT_ID, UNRESOLVABLE_REQUIRED_SIGNERS,\n * SOME_SIGNATURES_WERE_INVALID, and NO_NEW_VALID_SIGNATURES. For more information\n * please see the section of this documentation on the ResponseCode enum.\n * @implements IScheduleSignTransactionBody\n * @constructor\n * @param {proto.IScheduleSignTransactionBody=} [p] Properties to set\n */\n function ScheduleSignTransactionBody(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The id of the schedule to add signing keys to\n * @member {proto.IScheduleID|null|undefined} scheduleID\n * @memberof proto.ScheduleSignTransactionBody\n * @instance\n */\n ScheduleSignTransactionBody.prototype.scheduleID = null;\n\n /**\n * Creates a new ScheduleSignTransactionBody instance using the specified properties.\n * @function create\n * @memberof proto.ScheduleSignTransactionBody\n * @static\n * @param {proto.IScheduleSignTransactionBody=} [properties] Properties to set\n * @returns {proto.ScheduleSignTransactionBody} ScheduleSignTransactionBody instance\n */\n ScheduleSignTransactionBody.create = function create(properties) {\n return new ScheduleSignTransactionBody(properties);\n };\n\n /**\n * Encodes the specified ScheduleSignTransactionBody message. Does not implicitly {@link proto.ScheduleSignTransactionBody.verify|verify} messages.\n * @function encode\n * @memberof proto.ScheduleSignTransactionBody\n * @static\n * @param {proto.IScheduleSignTransactionBody} m ScheduleSignTransactionBody message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ScheduleSignTransactionBody.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.scheduleID != null && Object.hasOwnProperty.call(m, \"scheduleID\"))\n $root.proto.ScheduleID.encode(m.scheduleID, w.uint32(10).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ScheduleSignTransactionBody message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ScheduleSignTransactionBody\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ScheduleSignTransactionBody} ScheduleSignTransactionBody\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ScheduleSignTransactionBody.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ScheduleSignTransactionBody();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.scheduleID = $root.proto.ScheduleID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ScheduleSignTransactionBody;\n })();\n\n proto.ResponseHeader = (function() {\n\n /**\n * Properties of a ResponseHeader.\n * @memberof proto\n * @interface IResponseHeader\n * @property {proto.ResponseCodeEnum|null} [nodeTransactionPrecheckCode] Result of fee transaction precheck, saying it passed, or why it failed\n * @property {proto.ResponseType|null} [responseType] The requested response is repeated back here, for convenience\n * @property {Long|null} [cost] The fee that would be charged to get the requested information (if a cost was requested).\n * Note: This cost only includes the query fee and does not include the transfer fee(which is\n * required to execute the transfer transaction to debit the payer account and credit the node\n * account with query fee)\n * @property {Uint8Array|null} [stateProof] The state proof for this information (if a state proof was requested, and is available)\n */\n\n /**\n * Constructs a new ResponseHeader.\n * @memberof proto\n * @classdesc Every query receives a response containing the QueryResponseHeader. Either or both of the cost\n * and stateProof fields may be blank, if the responseType didn't ask for the cost or stateProof.\n * @implements IResponseHeader\n * @constructor\n * @param {proto.IResponseHeader=} [p] Properties to set\n */\n function ResponseHeader(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Result of fee transaction precheck, saying it passed, or why it failed\n * @member {proto.ResponseCodeEnum} nodeTransactionPrecheckCode\n * @memberof proto.ResponseHeader\n * @instance\n */\n ResponseHeader.prototype.nodeTransactionPrecheckCode = 0;\n\n /**\n * The requested response is repeated back here, for convenience\n * @member {proto.ResponseType} responseType\n * @memberof proto.ResponseHeader\n * @instance\n */\n ResponseHeader.prototype.responseType = 0;\n\n /**\n * The fee that would be charged to get the requested information (if a cost was requested).\n * Note: This cost only includes the query fee and does not include the transfer fee(which is\n * required to execute the transfer transaction to debit the payer account and credit the node\n * account with query fee)\n * @member {Long} cost\n * @memberof proto.ResponseHeader\n * @instance\n */\n ResponseHeader.prototype.cost = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * The state proof for this information (if a state proof was requested, and is available)\n * @member {Uint8Array} stateProof\n * @memberof proto.ResponseHeader\n * @instance\n */\n ResponseHeader.prototype.stateProof = $util.newBuffer([]);\n\n /**\n * Creates a new ResponseHeader instance using the specified properties.\n * @function create\n * @memberof proto.ResponseHeader\n * @static\n * @param {proto.IResponseHeader=} [properties] Properties to set\n * @returns {proto.ResponseHeader} ResponseHeader instance\n */\n ResponseHeader.create = function create(properties) {\n return new ResponseHeader(properties);\n };\n\n /**\n * Encodes the specified ResponseHeader message. Does not implicitly {@link proto.ResponseHeader.verify|verify} messages.\n * @function encode\n * @memberof proto.ResponseHeader\n * @static\n * @param {proto.IResponseHeader} m ResponseHeader message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ResponseHeader.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.nodeTransactionPrecheckCode != null && Object.hasOwnProperty.call(m, \"nodeTransactionPrecheckCode\"))\n w.uint32(8).int32(m.nodeTransactionPrecheckCode);\n if (m.responseType != null && Object.hasOwnProperty.call(m, \"responseType\"))\n w.uint32(16).int32(m.responseType);\n if (m.cost != null && Object.hasOwnProperty.call(m, \"cost\"))\n w.uint32(24).uint64(m.cost);\n if (m.stateProof != null && Object.hasOwnProperty.call(m, \"stateProof\"))\n w.uint32(34).bytes(m.stateProof);\n return w;\n };\n\n /**\n * Decodes a ResponseHeader message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ResponseHeader\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ResponseHeader} ResponseHeader\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ResponseHeader.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ResponseHeader();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.nodeTransactionPrecheckCode = r.int32();\n break;\n case 2:\n m.responseType = r.int32();\n break;\n case 3:\n m.cost = r.uint64();\n break;\n case 4:\n m.stateProof = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ResponseHeader;\n })();\n\n proto.TransactionResponse = (function() {\n\n /**\n * Properties of a TransactionResponse.\n * @memberof proto\n * @interface ITransactionResponse\n * @property {proto.ResponseCodeEnum|null} [nodeTransactionPrecheckCode] * The response code that indicates the current status of the transaction.\n * @property {Long|null} [cost] If the response code was INSUFFICIENT_TX_FEE, the actual transaction fee that would be\n * required to execute the transaction.\n */\n\n /**\n * Constructs a new TransactionResponse.\n * @memberof proto\n * @classdesc When the client sends the node a transaction of any kind, the node replies with this, which\n * simply says that the transaction passed the precheck (so the node will submit it to the network)\n * or it failed (so it won't). If the fee offered was insufficient, this will also contain the\n * amount of the required fee. To learn the consensus result, the client should later obtain a\n * receipt (free), or can buy a more detailed record (not free).\n * @implements ITransactionResponse\n * @constructor\n * @param {proto.ITransactionResponse=} [p] Properties to set\n */\n function TransactionResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * * The response code that indicates the current status of the transaction.\n * @member {proto.ResponseCodeEnum} nodeTransactionPrecheckCode\n * @memberof proto.TransactionResponse\n * @instance\n */\n TransactionResponse.prototype.nodeTransactionPrecheckCode = 0;\n\n /**\n * If the response code was INSUFFICIENT_TX_FEE, the actual transaction fee that would be\n * required to execute the transaction.\n * @member {Long} cost\n * @memberof proto.TransactionResponse\n * @instance\n */\n TransactionResponse.prototype.cost = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Creates a new TransactionResponse instance using the specified properties.\n * @function create\n * @memberof proto.TransactionResponse\n * @static\n * @param {proto.ITransactionResponse=} [properties] Properties to set\n * @returns {proto.TransactionResponse} TransactionResponse instance\n */\n TransactionResponse.create = function create(properties) {\n return new TransactionResponse(properties);\n };\n\n /**\n * Encodes the specified TransactionResponse message. Does not implicitly {@link proto.TransactionResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionResponse\n * @static\n * @param {proto.ITransactionResponse} m TransactionResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.nodeTransactionPrecheckCode != null && Object.hasOwnProperty.call(m, \"nodeTransactionPrecheckCode\"))\n w.uint32(8).int32(m.nodeTransactionPrecheckCode);\n if (m.cost != null && Object.hasOwnProperty.call(m, \"cost\"))\n w.uint32(16).uint64(m.cost);\n return w;\n };\n\n /**\n * Decodes a TransactionResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionResponse} TransactionResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.nodeTransactionPrecheckCode = r.int32();\n break;\n case 2:\n m.cost = r.uint64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionResponse;\n })();\n\n /**\n * UNDOCUMENTED\n * @name proto.ResponseCodeEnum\n * @enum {number}\n * @property {number} OK=0 The transaction passed the precheck validations.\n * @property {number} INVALID_TRANSACTION=1 For any error not handled by specific error codes listed below.\n * @property {number} PAYER_ACCOUNT_NOT_FOUND=2 Payer account does not exist.\n * @property {number} INVALID_NODE_ACCOUNT=3 Node Account provided does not match the node account of the node the transaction was submitted\n * to.\n * @property {number} TRANSACTION_EXPIRED=4 Pre-Check error when TransactionValidStart + transactionValidDuration is less than current\n * consensus time.\n * @property {number} INVALID_TRANSACTION_START=5 Transaction start time is greater than current consensus time\n * @property {number} INVALID_TRANSACTION_DURATION=6 The given transactionValidDuration was either non-positive, or greater than the maximum\n * valid duration of 180 secs.\n * @property {number} INVALID_SIGNATURE=7 The transaction signature is not valid\n * @property {number} MEMO_TOO_LONG=8 Transaction memo size exceeded 100 bytes\n * @property {number} INSUFFICIENT_TX_FEE=9 The fee provided in the transaction is insufficient for this type of transaction\n * @property {number} INSUFFICIENT_PAYER_BALANCE=10 The payer account has insufficient cryptocurrency to pay the transaction fee\n * @property {number} DUPLICATE_TRANSACTION=11 This transaction ID is a duplicate of one that was submitted to this node or reached consensus\n * in the last 180 seconds (receipt period)\n * @property {number} BUSY=12 If API is throttled out\n * @property {number} NOT_SUPPORTED=13 The API is not currently supported\n * @property {number} INVALID_FILE_ID=14 The file id is invalid or does not exist\n * @property {number} INVALID_ACCOUNT_ID=15 The account id is invalid or does not exist\n * @property {number} INVALID_CONTRACT_ID=16 The contract id is invalid or does not exist\n * @property {number} INVALID_TRANSACTION_ID=17 Transaction id is not valid\n * @property {number} RECEIPT_NOT_FOUND=18 Receipt for given transaction id does not exist\n * @property {number} RECORD_NOT_FOUND=19 Record for given transaction id does not exist\n * @property {number} INVALID_SOLIDITY_ID=20 The solidity id is invalid or entity with this solidity id does not exist\n * @property {number} UNKNOWN=21 The responding node has submitted the transaction to the network. Its final status is still\n * unknown.\n * @property {number} SUCCESS=22 The transaction succeeded\n * @property {number} FAIL_INVALID=23 There was a system error and the transaction failed because of invalid request parameters.\n * @property {number} FAIL_FEE=24 There was a system error while performing fee calculation, reserved for future.\n * @property {number} FAIL_BALANCE=25 There was a system error while performing balance checks, reserved for future.\n * @property {number} KEY_REQUIRED=26 Key not provided in the transaction body\n * @property {number} BAD_ENCODING=27 Unsupported algorithm/encoding used for keys in the transaction\n * @property {number} INSUFFICIENT_ACCOUNT_BALANCE=28 When the account balance is not sufficient for the transfer\n * @property {number} INVALID_SOLIDITY_ADDRESS=29 During an update transaction when the system is not able to find the Users Solidity address\n * @property {number} INSUFFICIENT_GAS=30 Not enough gas was supplied to execute transaction\n * @property {number} CONTRACT_SIZE_LIMIT_EXCEEDED=31 contract byte code size is over the limit\n * @property {number} LOCAL_CALL_MODIFICATION_EXCEPTION=32 local execution (query) is requested for a function which changes state\n * @property {number} CONTRACT_REVERT_EXECUTED=33 Contract REVERT OPCODE executed\n * @property {number} CONTRACT_EXECUTION_EXCEPTION=34 For any contract execution related error not handled by specific error codes listed above.\n * @property {number} INVALID_RECEIVING_NODE_ACCOUNT=35 In Query validation, account with +ve(amount) value should be Receiving node account, the\n * receiver account should be only one account in the list\n * @property {number} MISSING_QUERY_HEADER=36 Header is missing in Query request\n * @property {number} ACCOUNT_UPDATE_FAILED=37 The update of the account failed\n * @property {number} INVALID_KEY_ENCODING=38 Provided key encoding was not supported by the system\n * @property {number} NULL_SOLIDITY_ADDRESS=39 null solidity address\n * @property {number} CONTRACT_UPDATE_FAILED=40 update of the contract failed\n * @property {number} INVALID_QUERY_HEADER=41 the query header is invalid\n * @property {number} INVALID_FEE_SUBMITTED=42 Invalid fee submitted\n * @property {number} INVALID_PAYER_SIGNATURE=43 Payer signature is invalid\n * @property {number} KEY_NOT_PROVIDED=44 The keys were not provided in the request.\n * @property {number} INVALID_EXPIRATION_TIME=45 Expiration time provided in the transaction was invalid.\n * @property {number} NO_WACL_KEY=46 WriteAccess Control Keys are not provided for the file\n * @property {number} FILE_CONTENT_EMPTY=47 The contents of file are provided as empty.\n * @property {number} INVALID_ACCOUNT_AMOUNTS=48 The crypto transfer credit and debit do not sum equal to 0\n * @property {number} EMPTY_TRANSACTION_BODY=49 Transaction body provided is empty\n * @property {number} INVALID_TRANSACTION_BODY=50 Invalid transaction body provided\n * @property {number} INVALID_SIGNATURE_TYPE_MISMATCHING_KEY=51 the type of key (base ed25519 key, KeyList, or ThresholdKey) does not match the type of\n * signature (base ed25519 signature, SignatureList, or ThresholdKeySignature)\n * @property {number} INVALID_SIGNATURE_COUNT_MISMATCHING_KEY=52 the number of key (KeyList, or ThresholdKey) does not match that of signature (SignatureList,\n * or ThresholdKeySignature). e.g. if a keyList has 3 base keys, then the corresponding\n * signatureList should also have 3 base signatures.\n * @property {number} EMPTY_LIVE_HASH_BODY=53 the livehash body is empty\n * @property {number} EMPTY_LIVE_HASH=54 the livehash data is missing\n * @property {number} EMPTY_LIVE_HASH_KEYS=55 the keys for a livehash are missing\n * @property {number} INVALID_LIVE_HASH_SIZE=56 the livehash data is not the output of a SHA-384 digest\n * @property {number} EMPTY_QUERY_BODY=57 the query body is empty\n * @property {number} EMPTY_LIVE_HASH_QUERY=58 the crypto livehash query is empty\n * @property {number} LIVE_HASH_NOT_FOUND=59 the livehash is not present\n * @property {number} ACCOUNT_ID_DOES_NOT_EXIST=60 the account id passed has not yet been created.\n * @property {number} LIVE_HASH_ALREADY_EXISTS=61 the livehash already exists for a given account\n * @property {number} INVALID_FILE_WACL=62 File WACL keys are invalid\n * @property {number} SERIALIZATION_FAILED=63 Serialization failure\n * @property {number} TRANSACTION_OVERSIZE=64 The size of the Transaction is greater than transactionMaxBytes\n * @property {number} TRANSACTION_TOO_MANY_LAYERS=65 The Transaction has more than 50 levels\n * @property {number} CONTRACT_DELETED=66 Contract is marked as deleted\n * @property {number} PLATFORM_NOT_ACTIVE=67 the platform node is either disconnected or lagging behind.\n * @property {number} KEY_PREFIX_MISMATCH=68 one public key matches more than one prefixes on the signature map\n * @property {number} PLATFORM_TRANSACTION_NOT_CREATED=69 transaction not created by platform due to large backlog\n * @property {number} INVALID_RENEWAL_PERIOD=70 auto renewal period is not a positive number of seconds\n * @property {number} INVALID_PAYER_ACCOUNT_ID=71 the response code when a smart contract id is passed for a crypto API request\n * @property {number} ACCOUNT_DELETED=72 the account has been marked as deleted\n * @property {number} FILE_DELETED=73 the file has been marked as deleted\n * @property {number} ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS=74 same accounts repeated in the transfer account list\n * @property {number} SETTING_NEGATIVE_ACCOUNT_BALANCE=75 attempting to set negative balance value for crypto account\n * @property {number} OBTAINER_REQUIRED=76 when deleting smart contract that has crypto balance either transfer account or transfer smart\n * contract is required\n * @property {number} OBTAINER_SAME_CONTRACT_ID=77 when deleting smart contract that has crypto balance you can not use the same contract id as\n * transferContractId as the one being deleted\n * @property {number} OBTAINER_DOES_NOT_EXIST=78 transferAccountId or transferContractId specified for contract delete does not exist\n * @property {number} MODIFYING_IMMUTABLE_CONTRACT=79 attempting to modify (update or delete a immutable smart contract, i.e. one created without a\n * admin key)\n * @property {number} FILE_SYSTEM_EXCEPTION=80 Unexpected exception thrown by file system functions\n * @property {number} AUTORENEW_DURATION_NOT_IN_RANGE=81 the duration is not a subset of [MINIMUM_AUTORENEW_DURATION,MAXIMUM_AUTORENEW_DURATION]\n * @property {number} ERROR_DECODING_BYTESTRING=82 Decoding the smart contract binary to a byte array failed. Check that the input is a valid hex\n * string.\n * @property {number} CONTRACT_FILE_EMPTY=83 File to create a smart contract was of length zero\n * @property {number} CONTRACT_BYTECODE_EMPTY=84 Bytecode for smart contract is of length zero\n * @property {number} INVALID_INITIAL_BALANCE=85 Attempt to set negative initial balance\n * @property {number} INVALID_RECEIVE_RECORD_THRESHOLD=86 [Deprecated]. attempt to set negative receive record threshold\n * @property {number} INVALID_SEND_RECORD_THRESHOLD=87 [Deprecated]. attempt to set negative send record threshold\n * @property {number} ACCOUNT_IS_NOT_GENESIS_ACCOUNT=88 Special Account Operations should be performed by only Genesis account, return this code if it\n * is not Genesis Account\n * @property {number} PAYER_ACCOUNT_UNAUTHORIZED=89 The fee payer account doesn't have permission to submit such Transaction\n * @property {number} INVALID_FREEZE_TRANSACTION_BODY=90 FreezeTransactionBody is invalid\n * @property {number} FREEZE_TRANSACTION_BODY_NOT_FOUND=91 FreezeTransactionBody does not exist\n * @property {number} TRANSFER_LIST_SIZE_LIMIT_EXCEEDED=92 Exceeded the number of accounts (both from and to) allowed for crypto transfer list\n * @property {number} RESULT_SIZE_LIMIT_EXCEEDED=93 Smart contract result size greater than specified maxResultSize\n * @property {number} NOT_SPECIAL_ACCOUNT=94 The payer account is not a special account(account 0.0.55)\n * @property {number} CONTRACT_NEGATIVE_GAS=95 Negative gas was offered in smart contract call\n * @property {number} CONTRACT_NEGATIVE_VALUE=96 Negative value / initial balance was specified in a smart contract call / create\n * @property {number} INVALID_FEE_FILE=97 Failed to update fee file\n * @property {number} INVALID_EXCHANGE_RATE_FILE=98 Failed to update exchange rate file\n * @property {number} INSUFFICIENT_LOCAL_CALL_GAS=99 Payment tendered for contract local call cannot cover both the fee and the gas\n * @property {number} ENTITY_NOT_ALLOWED_TO_DELETE=100 Entities with Entity ID below 1000 are not allowed to be deleted\n * @property {number} AUTHORIZATION_FAILED=101 Violating one of these rules: 1) treasury account can update all entities below 0.0.1000, 2)\n * account 0.0.50 can update all entities from 0.0.51 - 0.0.80, 3) Network Function Master Account\n * A/c 0.0.50 - Update all Network Function accounts & perform all the Network Functions listed\n * below, 4) Network Function Accounts: i) A/c 0.0.55 - Update Address Book files (0.0.101/102),\n * ii) A/c 0.0.56 - Update Fee schedule (0.0.111), iii) A/c 0.0.57 - Update Exchange Rate\n * (0.0.112).\n * @property {number} FILE_UPLOADED_PROTO_INVALID=102 Fee Schedule Proto uploaded but not valid (append or update is required)\n * @property {number} FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK=103 Fee Schedule Proto uploaded but not valid (append or update is required)\n * @property {number} FEE_SCHEDULE_FILE_PART_UPLOADED=104 Fee Schedule Proto File Part uploaded\n * @property {number} EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED=105 The change on Exchange Rate exceeds Exchange_Rate_Allowed_Percentage\n * @property {number} MAX_CONTRACT_STORAGE_EXCEEDED=106 Contract permanent storage exceeded the currently allowable limit\n * @property {number} TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT=107 Transfer Account should not be same as Account to be deleted\n * @property {number} TOTAL_LEDGER_BALANCE_INVALID=108 TOTAL_LEDGER_BALANCE_INVALID value\n * @property {number} EXPIRATION_REDUCTION_NOT_ALLOWED=110 The expiration date/time on a smart contract may not be reduced\n * @property {number} MAX_GAS_LIMIT_EXCEEDED=111 Gas exceeded currently allowable gas limit per transaction\n * @property {number} MAX_FILE_SIZE_EXCEEDED=112 File size exceeded the currently allowable limit\n * @property {number} RECEIVER_SIG_REQUIRED=113 When a valid signature is not provided for operations on account with receiverSigRequired=true\n * @property {number} INVALID_TOPIC_ID=150 The Topic ID specified is not in the system.\n * @property {number} INVALID_ADMIN_KEY=155 A provided admin key was invalid.\n * @property {number} INVALID_SUBMIT_KEY=156 A provided submit key was invalid.\n * @property {number} UNAUTHORIZED=157 An attempted operation was not authorized (ie - a deleteTopic for a topic with no adminKey).\n * @property {number} INVALID_TOPIC_MESSAGE=158 A ConsensusService message is empty.\n * @property {number} INVALID_AUTORENEW_ACCOUNT=159 The autoRenewAccount specified is not a valid, active account.\n * @property {number} AUTORENEW_ACCOUNT_NOT_ALLOWED=160 An adminKey was not specified on the topic, so there must not be an autoRenewAccount.\n * @property {number} TOPIC_EXPIRED=162 The topic has expired, was not automatically renewed, and is in a 7 day grace period before the\n * topic will be deleted unrecoverably. This error response code will not be returned until\n * autoRenew functionality is supported by HAPI.\n * @property {number} INVALID_CHUNK_NUMBER=163 INVALID_CHUNK_NUMBER value\n * @property {number} INVALID_CHUNK_TRANSACTION_ID=164 INVALID_CHUNK_TRANSACTION_ID value\n * @property {number} ACCOUNT_FROZEN_FOR_TOKEN=165 ACCOUNT_FROZEN_FOR_TOKEN value\n * @property {number} TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED=166 TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED value\n * @property {number} INVALID_TOKEN_ID=167 INVALID_TOKEN_ID value\n * @property {number} INVALID_TOKEN_DECIMALS=168 INVALID_TOKEN_DECIMALS value\n * @property {number} INVALID_TOKEN_INITIAL_SUPPLY=169 INVALID_TOKEN_INITIAL_SUPPLY value\n * @property {number} INVALID_TREASURY_ACCOUNT_FOR_TOKEN=170 INVALID_TREASURY_ACCOUNT_FOR_TOKEN value\n * @property {number} INVALID_TOKEN_SYMBOL=171 INVALID_TOKEN_SYMBOL value\n * @property {number} TOKEN_HAS_NO_FREEZE_KEY=172 TOKEN_HAS_NO_FREEZE_KEY value\n * @property {number} TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN=173 TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN value\n * @property {number} MISSING_TOKEN_SYMBOL=174 MISSING_TOKEN_SYMBOL value\n * @property {number} TOKEN_SYMBOL_TOO_LONG=175 TOKEN_SYMBOL_TOO_LONG value\n * @property {number} ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN=176 ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN value\n * @property {number} TOKEN_HAS_NO_KYC_KEY=177 TOKEN_HAS_NO_KYC_KEY value\n * @property {number} INSUFFICIENT_TOKEN_BALANCE=178 INSUFFICIENT_TOKEN_BALANCE value\n * @property {number} TOKEN_WAS_DELETED=179 TOKEN_WAS_DELETED value\n * @property {number} TOKEN_HAS_NO_SUPPLY_KEY=180 TOKEN_HAS_NO_SUPPLY_KEY value\n * @property {number} TOKEN_HAS_NO_WIPE_KEY=181 TOKEN_HAS_NO_WIPE_KEY value\n * @property {number} INVALID_TOKEN_MINT_AMOUNT=182 INVALID_TOKEN_MINT_AMOUNT value\n * @property {number} INVALID_TOKEN_BURN_AMOUNT=183 INVALID_TOKEN_BURN_AMOUNT value\n * @property {number} TOKEN_NOT_ASSOCIATED_TO_ACCOUNT=184 TOKEN_NOT_ASSOCIATED_TO_ACCOUNT value\n * @property {number} CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT=185 CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT value\n * @property {number} INVALID_KYC_KEY=186 INVALID_KYC_KEY value\n * @property {number} INVALID_WIPE_KEY=187 INVALID_WIPE_KEY value\n * @property {number} INVALID_FREEZE_KEY=188 INVALID_FREEZE_KEY value\n * @property {number} INVALID_SUPPLY_KEY=189 INVALID_SUPPLY_KEY value\n * @property {number} MISSING_TOKEN_NAME=190 MISSING_TOKEN_NAME value\n * @property {number} TOKEN_NAME_TOO_LONG=191 TOKEN_NAME_TOO_LONG value\n * @property {number} INVALID_WIPING_AMOUNT=192 INVALID_WIPING_AMOUNT value\n * @property {number} TOKEN_IS_IMMUTABLE=193 TOKEN_IS_IMMUTABLE value\n * @property {number} TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT=194 TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT value\n * @property {number} TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES=195 TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES value\n * @property {number} ACCOUNT_IS_TREASURY=196 ACCOUNT_IS_TREASURY value\n * @property {number} TOKEN_ID_REPEATED_IN_TOKEN_LIST=197 TOKEN_ID_REPEATED_IN_TOKEN_LIST value\n * @property {number} TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED=198 TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED value\n * @property {number} EMPTY_TOKEN_TRANSFER_BODY=199 EMPTY_TOKEN_TRANSFER_BODY value\n * @property {number} EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS=200 EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS value\n * @property {number} INVALID_SCHEDULE_ID=201 The Scheduled entity does not exist; or has now expired, been deleted, or been executed\n * @property {number} SCHEDULE_IS_IMMUTABLE=202 The Scheduled entity cannot be modified. Admin key not set\n * @property {number} INVALID_SCHEDULE_PAYER_ID=203 The provided Scheduled Payer does not exist\n * @property {number} INVALID_SCHEDULE_ACCOUNT_ID=204 The Schedule Create Transaction TransactionID account does not exist\n * @property {number} NO_NEW_VALID_SIGNATURES=205 The provided sig map did not contain any new valid signatures from required signers of the scheduled transaction\n * @property {number} UNRESOLVABLE_REQUIRED_SIGNERS=206 The required signers for a scheduled transaction cannot be resolved, for example because they do not exist or have been deleted\n * @property {number} SCHEDULED_TRANSACTION_NOT_IN_WHITELIST=207 Only whitelisted transaction types may be scheduled\n * @property {number} SOME_SIGNATURES_WERE_INVALID=208 At least one of the signatures in the provided sig map did not represent a valid signature for any required signer\n * @property {number} TRANSACTION_ID_FIELD_NOT_ALLOWED=209 The scheduled field in the TransactionID may not be set to true\n * @property {number} IDENTICAL_SCHEDULE_ALREADY_CREATED=210 A schedule already exists with the same identifying fields of an attempted ScheduleCreate (that is, all fields other than scheduledPayerAccountID)\n * @property {number} INVALID_ZERO_BYTE_IN_STRING=211 A string field in the transaction has a UTF-8 encoding with the prohibited zero byte\n * @property {number} SCHEDULE_ALREADY_DELETED=212 A schedule being signed or deleted has already been deleted\n * @property {number} SCHEDULE_ALREADY_EXECUTED=213 A schedule being signed or deleted has already been executed\n * @property {number} MESSAGE_SIZE_TOO_LARGE=214 ConsensusSubmitMessage request's message size is larger than allowed.\n * @property {number} OPERATION_REPEATED_IN_BUCKET_GROUPS=215 An operation was assigned to more than one throttle group in a given bucket\n * @property {number} BUCKET_CAPACITY_OVERFLOW=216 The capacity needed to satisfy all opsPerSec groups in a bucket overflowed a signed 8-byte integral type\n * @property {number} NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION=217 Given the network size in the address book, the node-level capacity for an operation would never be enough to accept a single request; usually means a bucket burstPeriod should be increased\n * @property {number} BUCKET_HAS_NO_THROTTLE_GROUPS=218 A bucket was defined without any throttle groups\n * @property {number} THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC=219 A throttle group was granted zero opsPerSec\n * @property {number} SUCCESS_BUT_MISSING_EXPECTED_OPERATION=220 The throttle definitions file was updated, but some supported operations were not assigned a bucket\n * @property {number} UNPARSEABLE_THROTTLE_DEFINITIONS=221 The new contents for the throttle definitions system file were not valid protobuf\n * @property {number} INVALID_THROTTLE_DEFINITIONS=222 The new throttle definitions system file were invalid, and no more specific error could be divined\n * @property {number} ACCOUNT_EXPIRED_AND_PENDING_REMOVAL=223 The transaction references an account which has passed its expiration without renewal funds available, and currently remains in the ledger only because of the grace period given to expired entities\n * @property {number} INVALID_TOKEN_MAX_SUPPLY=224 Invalid token max supply\n * @property {number} INVALID_TOKEN_NFT_SERIAL_NUMBER=225 Invalid token nft serial number\n * @property {number} INVALID_NFT_ID=226 Invalid nft id\n * @property {number} METADATA_TOO_LONG=227 Nft metadata is too long\n * @property {number} BATCH_SIZE_LIMIT_EXCEEDED=228 Repeated operations count exceeds the limit\n * @property {number} INVALID_QUERY_RANGE=229 The range of data to be gathered is out of the set boundaries\n * @property {number} FRACTION_DIVIDES_BY_ZERO=230 A custom fractional fee set a denominator of zero\n * @property {number} INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE=231 The transaction payer could not afford a custom fee\n * @property {number} CUSTOM_FEES_LIST_TOO_LONG=232 More than 10 custom fees were specified\n * @property {number} INVALID_CUSTOM_FEE_COLLECTOR=233 Any of the feeCollector accounts for customFees is invalid\n * @property {number} INVALID_TOKEN_ID_IN_CUSTOM_FEES=234 Any of the token Ids in customFees is invalid\n * @property {number} TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR=235 Any of the token Ids in customFees are not associated to feeCollector\n * @property {number} TOKEN_MAX_SUPPLY_REACHED=236 A token cannot have more units minted due to its configured supply ceiling\n * @property {number} SENDER_DOES_NOT_OWN_NFT_SERIAL_NO=237 The transaction attempted to move an NFT serial number from an account other than its owner\n * @property {number} CUSTOM_FEE_NOT_FULLY_SPECIFIED=238 A custom fee schedule entry did not specify either a fixed or fractional fee\n * @property {number} CUSTOM_FEE_MUST_BE_POSITIVE=239 Only positive fees may be assessed at this time\n * @property {number} TOKEN_HAS_NO_FEE_SCHEDULE_KEY=240 Fee schedule key is not set on token\n * @property {number} CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE=241 A fractional custom fee exceeded the range of a 64-bit signed integer\n * @property {number} ROYALTY_FRACTION_CANNOT_EXCEED_ONE=242 A royalty cannot exceed the total fungible value exchanged for an NFT\n * @property {number} FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT=243 Each fractional custom fee must have its maximum_amount, if specified, at least its minimum_amount\n * @property {number} CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES=244 A fee schedule update tried to clear the custom fees from a token whose fee schedule was already empty\n * @property {number} CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON=245 Only tokens of type FUNGIBLE_COMMON can be used to as fee schedule denominations\n * @property {number} CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON=246 Only tokens of type FUNGIBLE_COMMON can have fractional fees\n * @property {number} INVALID_CUSTOM_FEE_SCHEDULE_KEY=247 The provided custom fee schedule key was invalid\n * @property {number} INVALID_TOKEN_MINT_METADATA=248 The requested token mint metadata was invalid\n * @property {number} INVALID_TOKEN_BURN_METADATA=249 The requested token burn metadata was invalid\n * @property {number} CURRENT_TREASURY_STILL_OWNS_NFTS=250 The treasury for a unique token cannot be changed until it owns no NFTs\n * @property {number} ACCOUNT_STILL_OWNS_NFTS=251 An account cannot be dissociated from a unique token if it owns NFTs for the token\n * @property {number} TREASURY_MUST_OWN_BURNED_NFT=252 A NFT can only be burned when owned by the unique token's treasury\n * @property {number} ACCOUNT_DOES_NOT_OWN_WIPED_NFT=253 An account did not own the NFT to be wiped\n * @property {number} ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON=254 An AccountAmount token transfers list referenced a token type other than FUNGIBLE_COMMON\n * @property {number} MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED=255 All the NFTs allowed in the current price regime have already been minted\n * @property {number} PAYER_ACCOUNT_DELETED=256 The payer account has been marked as deleted\n * @property {number} CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH=257 The reference chain of custom fees for a transferred token exceeded the maximum length of 2\n * @property {number} CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS=258 More than 20 balance adjustments were to satisfy a CryptoTransfer and its implied custom fee payments\n * @property {number} INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE=259 The sender account in the token transfer transaction could not afford a custom fee\n * @property {number} SERIAL_NUMBER_LIMIT_REACHED=260 Currently no more than 4,294,967,295 NFTs may be minted for a given unique token type\n * @property {number} CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE=261 Only tokens of type NON_FUNGIBLE_UNIQUE can have royalty fees\n * @property {number} NO_REMAINING_AUTOMATIC_ASSOCIATIONS=262 The account has reached the limit on the automatic associations count.\n * @property {number} EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT=263 Already existing automatic associations are more than the new maximum automatic associations.\n * @property {number} REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT=264 Cannot set the number of automatic associations for an account more than the maximum allowed\n * token associations tokens.maxPerAccount.\n * @property {number} TOKEN_IS_PAUSED=265 Token is paused. This Token cannot be a part of any kind of Transaction until unpaused.\n * @property {number} TOKEN_HAS_NO_PAUSE_KEY=266 Pause key is not set on token\n * @property {number} INVALID_PAUSE_KEY=267 The provided pause key was invalid\n * @property {number} FREEZE_UPDATE_FILE_DOES_NOT_EXIST=268 The update file in a freeze transaction body must exist.\n * @property {number} FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH=269 The hash of the update file in a freeze transaction body must match the in-memory hash.\n * @property {number} NO_UPGRADE_HAS_BEEN_PREPARED=270 A FREEZE_UPGRADE transaction was handled with no previous update prepared.\n * @property {number} NO_FREEZE_IS_SCHEDULED=271 A FREEZE_ABORT transaction was handled with no scheduled freeze.\n * @property {number} UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE=272 The update file hash when handling a FREEZE_UPGRADE transaction differs from the file\n * hash at the time of handling the PREPARE_UPGRADE transaction.\n * @property {number} FREEZE_START_TIME_MUST_BE_FUTURE=273 The given freeze start time was in the (consensus) past.\n * @property {number} PREPARED_UPDATE_FILE_IS_IMMUTABLE=274 The prepared update file cannot be updated or appended until either the upgrade has\n * been completed, or a FREEZE_ABORT has been handled.\n * @property {number} FREEZE_ALREADY_SCHEDULED=275 Once a freeze is scheduled, it must be aborted before any other type of freeze can\n * can be performed.\n * @property {number} FREEZE_UPGRADE_IN_PROGRESS=276 If an NMT upgrade has been prepared, the following operation must be a FREEZE_UPGRADE.\n * (To issue a FREEZE_ONLY, submit a FREEZE_ABORT first.)\n * @property {number} UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED=277 If an NMT upgrade has been prepared, the subsequent FREEZE_UPGRADE transaction must\n * confirm the id of the file to be used in the upgrade.\n * @property {number} UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED=278 If an NMT upgrade has been prepared, the subsequent FREEZE_UPGRADE transaction must\n * confirm the hash of the file to be used in the upgrade.\n * @property {number} CONSENSUS_GAS_EXHAUSTED=279 Consensus throttle did not allow execution of this transaction. System is throttled at\n * consensus level.\n * @property {number} REVERTED_SUCCESS=280 A precompiled contract succeeded, but was later reverted.\n * @property {number} MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED=281 All contract storage allocated to the current price regime has been consumed.\n * @property {number} INVALID_ALIAS_KEY=282 An alias used in a CryptoTransfer transaction is not the serialization of a primitive Key\n * message--that is, a Key with a single Ed25519 or ECDSA(secp256k1) public key and no\n * unknown protobuf fields.\n * @property {number} UNEXPECTED_TOKEN_DECIMALS=283 A fungible token transfer expected a different number of decimals than the involved\n * type actually has.\n * @property {number} INVALID_PROXY_ACCOUNT_ID=284 The proxy account id is invalid or does not exist.\n * @property {number} INVALID_TRANSFER_ACCOUNT_ID=285 The transfer account id in CryptoDelete transaction is invalid or does not exist.\n * @property {number} INVALID_FEE_COLLECTOR_ACCOUNT_ID=286 The fee collector account id in TokenFeeScheduleUpdate is invalid or does not exist.\n * @property {number} ALIAS_IS_IMMUTABLE=287 The alias already set on an account cannot be updated using CryptoUpdate transaction.\n * @property {number} SPENDER_ACCOUNT_SAME_AS_OWNER=288 An approved allowance specifies a spender account that is the same as the hbar/token\n * owner account.\n * @property {number} AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY=289 The establishment or adjustment of an approved allowance cause the token allowance\n * to exceed the token maximum supply.\n * @property {number} NEGATIVE_ALLOWANCE_AMOUNT=290 The specified amount for an approved allowance cannot be negative.\n * @property {number} CANNOT_APPROVE_FOR_ALL_FUNGIBLE_COMMON=291 The approveForAll flag cannot be set for a fungible token.\n * @property {number} SPENDER_DOES_NOT_HAVE_ALLOWANCE=292 The spender does not have an existing approved allowance with the hbar/token owner.\n * @property {number} AMOUNT_EXCEEDS_ALLOWANCE=293 The transfer amount exceeds the current approved allowance for the spender account.\n * @property {number} MAX_ALLOWANCES_EXCEEDED=294 The payer account of an approveAllowances or adjustAllowance transaction is attempting\n * to go beyond the maximum allowed number of allowances.\n * @property {number} EMPTY_ALLOWANCES=295 No allowances have been specified in the approval/adjust transaction.\n * @property {number} SPENDER_ACCOUNT_REPEATED_IN_ALLOWANCES=296 Spender is repeated more than once in Crypto or Token or NFT allowance lists in a single\n * CryptoApproveAllowance or CryptoAdjustAllowance transaction.\n * @property {number} REPEATED_SERIAL_NUMS_IN_NFT_ALLOWANCES=297 Serial numbers are repeated in nft allowance for a single spender account\n * @property {number} FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES=298 Fungible common token used in NFT allowances\n * @property {number} NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES=299 Non fungible token used in fungible token allowances\n * @property {number} PAYER_AND_OWNER_NOT_EQUAL=300 An approval/adjustment transaction was submitted where the payer and owner account are\n * not the same. Currently only the owner is permitted to perform these operations.\n */\n proto.ResponseCodeEnum = (function() {\n const valuesById = {}, values = Object.create(valuesById);\n values[valuesById[0] = \"OK\"] = 0;\n values[valuesById[1] = \"INVALID_TRANSACTION\"] = 1;\n values[valuesById[2] = \"PAYER_ACCOUNT_NOT_FOUND\"] = 2;\n values[valuesById[3] = \"INVALID_NODE_ACCOUNT\"] = 3;\n values[valuesById[4] = \"TRANSACTION_EXPIRED\"] = 4;\n values[valuesById[5] = \"INVALID_TRANSACTION_START\"] = 5;\n values[valuesById[6] = \"INVALID_TRANSACTION_DURATION\"] = 6;\n values[valuesById[7] = \"INVALID_SIGNATURE\"] = 7;\n values[valuesById[8] = \"MEMO_TOO_LONG\"] = 8;\n values[valuesById[9] = \"INSUFFICIENT_TX_FEE\"] = 9;\n values[valuesById[10] = \"INSUFFICIENT_PAYER_BALANCE\"] = 10;\n values[valuesById[11] = \"DUPLICATE_TRANSACTION\"] = 11;\n values[valuesById[12] = \"BUSY\"] = 12;\n values[valuesById[13] = \"NOT_SUPPORTED\"] = 13;\n values[valuesById[14] = \"INVALID_FILE_ID\"] = 14;\n values[valuesById[15] = \"INVALID_ACCOUNT_ID\"] = 15;\n values[valuesById[16] = \"INVALID_CONTRACT_ID\"] = 16;\n values[valuesById[17] = \"INVALID_TRANSACTION_ID\"] = 17;\n values[valuesById[18] = \"RECEIPT_NOT_FOUND\"] = 18;\n values[valuesById[19] = \"RECORD_NOT_FOUND\"] = 19;\n values[valuesById[20] = \"INVALID_SOLIDITY_ID\"] = 20;\n values[valuesById[21] = \"UNKNOWN\"] = 21;\n values[valuesById[22] = \"SUCCESS\"] = 22;\n values[valuesById[23] = \"FAIL_INVALID\"] = 23;\n values[valuesById[24] = \"FAIL_FEE\"] = 24;\n values[valuesById[25] = \"FAIL_BALANCE\"] = 25;\n values[valuesById[26] = \"KEY_REQUIRED\"] = 26;\n values[valuesById[27] = \"BAD_ENCODING\"] = 27;\n values[valuesById[28] = \"INSUFFICIENT_ACCOUNT_BALANCE\"] = 28;\n values[valuesById[29] = \"INVALID_SOLIDITY_ADDRESS\"] = 29;\n values[valuesById[30] = \"INSUFFICIENT_GAS\"] = 30;\n values[valuesById[31] = \"CONTRACT_SIZE_LIMIT_EXCEEDED\"] = 31;\n values[valuesById[32] = \"LOCAL_CALL_MODIFICATION_EXCEPTION\"] = 32;\n values[valuesById[33] = \"CONTRACT_REVERT_EXECUTED\"] = 33;\n values[valuesById[34] = \"CONTRACT_EXECUTION_EXCEPTION\"] = 34;\n values[valuesById[35] = \"INVALID_RECEIVING_NODE_ACCOUNT\"] = 35;\n values[valuesById[36] = \"MISSING_QUERY_HEADER\"] = 36;\n values[valuesById[37] = \"ACCOUNT_UPDATE_FAILED\"] = 37;\n values[valuesById[38] = \"INVALID_KEY_ENCODING\"] = 38;\n values[valuesById[39] = \"NULL_SOLIDITY_ADDRESS\"] = 39;\n values[valuesById[40] = \"CONTRACT_UPDATE_FAILED\"] = 40;\n values[valuesById[41] = \"INVALID_QUERY_HEADER\"] = 41;\n values[valuesById[42] = \"INVALID_FEE_SUBMITTED\"] = 42;\n values[valuesById[43] = \"INVALID_PAYER_SIGNATURE\"] = 43;\n values[valuesById[44] = \"KEY_NOT_PROVIDED\"] = 44;\n values[valuesById[45] = \"INVALID_EXPIRATION_TIME\"] = 45;\n values[valuesById[46] = \"NO_WACL_KEY\"] = 46;\n values[valuesById[47] = \"FILE_CONTENT_EMPTY\"] = 47;\n values[valuesById[48] = \"INVALID_ACCOUNT_AMOUNTS\"] = 48;\n values[valuesById[49] = \"EMPTY_TRANSACTION_BODY\"] = 49;\n values[valuesById[50] = \"INVALID_TRANSACTION_BODY\"] = 50;\n values[valuesById[51] = \"INVALID_SIGNATURE_TYPE_MISMATCHING_KEY\"] = 51;\n values[valuesById[52] = \"INVALID_SIGNATURE_COUNT_MISMATCHING_KEY\"] = 52;\n values[valuesById[53] = \"EMPTY_LIVE_HASH_BODY\"] = 53;\n values[valuesById[54] = \"EMPTY_LIVE_HASH\"] = 54;\n values[valuesById[55] = \"EMPTY_LIVE_HASH_KEYS\"] = 55;\n values[valuesById[56] = \"INVALID_LIVE_HASH_SIZE\"] = 56;\n values[valuesById[57] = \"EMPTY_QUERY_BODY\"] = 57;\n values[valuesById[58] = \"EMPTY_LIVE_HASH_QUERY\"] = 58;\n values[valuesById[59] = \"LIVE_HASH_NOT_FOUND\"] = 59;\n values[valuesById[60] = \"ACCOUNT_ID_DOES_NOT_EXIST\"] = 60;\n values[valuesById[61] = \"LIVE_HASH_ALREADY_EXISTS\"] = 61;\n values[valuesById[62] = \"INVALID_FILE_WACL\"] = 62;\n values[valuesById[63] = \"SERIALIZATION_FAILED\"] = 63;\n values[valuesById[64] = \"TRANSACTION_OVERSIZE\"] = 64;\n values[valuesById[65] = \"TRANSACTION_TOO_MANY_LAYERS\"] = 65;\n values[valuesById[66] = \"CONTRACT_DELETED\"] = 66;\n values[valuesById[67] = \"PLATFORM_NOT_ACTIVE\"] = 67;\n values[valuesById[68] = \"KEY_PREFIX_MISMATCH\"] = 68;\n values[valuesById[69] = \"PLATFORM_TRANSACTION_NOT_CREATED\"] = 69;\n values[valuesById[70] = \"INVALID_RENEWAL_PERIOD\"] = 70;\n values[valuesById[71] = \"INVALID_PAYER_ACCOUNT_ID\"] = 71;\n values[valuesById[72] = \"ACCOUNT_DELETED\"] = 72;\n values[valuesById[73] = \"FILE_DELETED\"] = 73;\n values[valuesById[74] = \"ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS\"] = 74;\n values[valuesById[75] = \"SETTING_NEGATIVE_ACCOUNT_BALANCE\"] = 75;\n values[valuesById[76] = \"OBTAINER_REQUIRED\"] = 76;\n values[valuesById[77] = \"OBTAINER_SAME_CONTRACT_ID\"] = 77;\n values[valuesById[78] = \"OBTAINER_DOES_NOT_EXIST\"] = 78;\n values[valuesById[79] = \"MODIFYING_IMMUTABLE_CONTRACT\"] = 79;\n values[valuesById[80] = \"FILE_SYSTEM_EXCEPTION\"] = 80;\n values[valuesById[81] = \"AUTORENEW_DURATION_NOT_IN_RANGE\"] = 81;\n values[valuesById[82] = \"ERROR_DECODING_BYTESTRING\"] = 82;\n values[valuesById[83] = \"CONTRACT_FILE_EMPTY\"] = 83;\n values[valuesById[84] = \"CONTRACT_BYTECODE_EMPTY\"] = 84;\n values[valuesById[85] = \"INVALID_INITIAL_BALANCE\"] = 85;\n values[valuesById[86] = \"INVALID_RECEIVE_RECORD_THRESHOLD\"] = 86;\n values[valuesById[87] = \"INVALID_SEND_RECORD_THRESHOLD\"] = 87;\n values[valuesById[88] = \"ACCOUNT_IS_NOT_GENESIS_ACCOUNT\"] = 88;\n values[valuesById[89] = \"PAYER_ACCOUNT_UNAUTHORIZED\"] = 89;\n values[valuesById[90] = \"INVALID_FREEZE_TRANSACTION_BODY\"] = 90;\n values[valuesById[91] = \"FREEZE_TRANSACTION_BODY_NOT_FOUND\"] = 91;\n values[valuesById[92] = \"TRANSFER_LIST_SIZE_LIMIT_EXCEEDED\"] = 92;\n values[valuesById[93] = \"RESULT_SIZE_LIMIT_EXCEEDED\"] = 93;\n values[valuesById[94] = \"NOT_SPECIAL_ACCOUNT\"] = 94;\n values[valuesById[95] = \"CONTRACT_NEGATIVE_GAS\"] = 95;\n values[valuesById[96] = \"CONTRACT_NEGATIVE_VALUE\"] = 96;\n values[valuesById[97] = \"INVALID_FEE_FILE\"] = 97;\n values[valuesById[98] = \"INVALID_EXCHANGE_RATE_FILE\"] = 98;\n values[valuesById[99] = \"INSUFFICIENT_LOCAL_CALL_GAS\"] = 99;\n values[valuesById[100] = \"ENTITY_NOT_ALLOWED_TO_DELETE\"] = 100;\n values[valuesById[101] = \"AUTHORIZATION_FAILED\"] = 101;\n values[valuesById[102] = \"FILE_UPLOADED_PROTO_INVALID\"] = 102;\n values[valuesById[103] = \"FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK\"] = 103;\n values[valuesById[104] = \"FEE_SCHEDULE_FILE_PART_UPLOADED\"] = 104;\n values[valuesById[105] = \"EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED\"] = 105;\n values[valuesById[106] = \"MAX_CONTRACT_STORAGE_EXCEEDED\"] = 106;\n values[valuesById[107] = \"TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT\"] = 107;\n values[valuesById[108] = \"TOTAL_LEDGER_BALANCE_INVALID\"] = 108;\n values[valuesById[110] = \"EXPIRATION_REDUCTION_NOT_ALLOWED\"] = 110;\n values[valuesById[111] = \"MAX_GAS_LIMIT_EXCEEDED\"] = 111;\n values[valuesById[112] = \"MAX_FILE_SIZE_EXCEEDED\"] = 112;\n values[valuesById[113] = \"RECEIVER_SIG_REQUIRED\"] = 113;\n values[valuesById[150] = \"INVALID_TOPIC_ID\"] = 150;\n values[valuesById[155] = \"INVALID_ADMIN_KEY\"] = 155;\n values[valuesById[156] = \"INVALID_SUBMIT_KEY\"] = 156;\n values[valuesById[157] = \"UNAUTHORIZED\"] = 157;\n values[valuesById[158] = \"INVALID_TOPIC_MESSAGE\"] = 158;\n values[valuesById[159] = \"INVALID_AUTORENEW_ACCOUNT\"] = 159;\n values[valuesById[160] = \"AUTORENEW_ACCOUNT_NOT_ALLOWED\"] = 160;\n values[valuesById[162] = \"TOPIC_EXPIRED\"] = 162;\n values[valuesById[163] = \"INVALID_CHUNK_NUMBER\"] = 163;\n values[valuesById[164] = \"INVALID_CHUNK_TRANSACTION_ID\"] = 164;\n values[valuesById[165] = \"ACCOUNT_FROZEN_FOR_TOKEN\"] = 165;\n values[valuesById[166] = \"TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED\"] = 166;\n values[valuesById[167] = \"INVALID_TOKEN_ID\"] = 167;\n values[valuesById[168] = \"INVALID_TOKEN_DECIMALS\"] = 168;\n values[valuesById[169] = \"INVALID_TOKEN_INITIAL_SUPPLY\"] = 169;\n values[valuesById[170] = \"INVALID_TREASURY_ACCOUNT_FOR_TOKEN\"] = 170;\n values[valuesById[171] = \"INVALID_TOKEN_SYMBOL\"] = 171;\n values[valuesById[172] = \"TOKEN_HAS_NO_FREEZE_KEY\"] = 172;\n values[valuesById[173] = \"TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN\"] = 173;\n values[valuesById[174] = \"MISSING_TOKEN_SYMBOL\"] = 174;\n values[valuesById[175] = \"TOKEN_SYMBOL_TOO_LONG\"] = 175;\n values[valuesById[176] = \"ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN\"] = 176;\n values[valuesById[177] = \"TOKEN_HAS_NO_KYC_KEY\"] = 177;\n values[valuesById[178] = \"INSUFFICIENT_TOKEN_BALANCE\"] = 178;\n values[valuesById[179] = \"TOKEN_WAS_DELETED\"] = 179;\n values[valuesById[180] = \"TOKEN_HAS_NO_SUPPLY_KEY\"] = 180;\n values[valuesById[181] = \"TOKEN_HAS_NO_WIPE_KEY\"] = 181;\n values[valuesById[182] = \"INVALID_TOKEN_MINT_AMOUNT\"] = 182;\n values[valuesById[183] = \"INVALID_TOKEN_BURN_AMOUNT\"] = 183;\n values[valuesById[184] = \"TOKEN_NOT_ASSOCIATED_TO_ACCOUNT\"] = 184;\n values[valuesById[185] = \"CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT\"] = 185;\n values[valuesById[186] = \"INVALID_KYC_KEY\"] = 186;\n values[valuesById[187] = \"INVALID_WIPE_KEY\"] = 187;\n values[valuesById[188] = \"INVALID_FREEZE_KEY\"] = 188;\n values[valuesById[189] = \"INVALID_SUPPLY_KEY\"] = 189;\n values[valuesById[190] = \"MISSING_TOKEN_NAME\"] = 190;\n values[valuesById[191] = \"TOKEN_NAME_TOO_LONG\"] = 191;\n values[valuesById[192] = \"INVALID_WIPING_AMOUNT\"] = 192;\n values[valuesById[193] = \"TOKEN_IS_IMMUTABLE\"] = 193;\n values[valuesById[194] = \"TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT\"] = 194;\n values[valuesById[195] = \"TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES\"] = 195;\n values[valuesById[196] = \"ACCOUNT_IS_TREASURY\"] = 196;\n values[valuesById[197] = \"TOKEN_ID_REPEATED_IN_TOKEN_LIST\"] = 197;\n values[valuesById[198] = \"TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED\"] = 198;\n values[valuesById[199] = \"EMPTY_TOKEN_TRANSFER_BODY\"] = 199;\n values[valuesById[200] = \"EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS\"] = 200;\n values[valuesById[201] = \"INVALID_SCHEDULE_ID\"] = 201;\n values[valuesById[202] = \"SCHEDULE_IS_IMMUTABLE\"] = 202;\n values[valuesById[203] = \"INVALID_SCHEDULE_PAYER_ID\"] = 203;\n values[valuesById[204] = \"INVALID_SCHEDULE_ACCOUNT_ID\"] = 204;\n values[valuesById[205] = \"NO_NEW_VALID_SIGNATURES\"] = 205;\n values[valuesById[206] = \"UNRESOLVABLE_REQUIRED_SIGNERS\"] = 206;\n values[valuesById[207] = \"SCHEDULED_TRANSACTION_NOT_IN_WHITELIST\"] = 207;\n values[valuesById[208] = \"SOME_SIGNATURES_WERE_INVALID\"] = 208;\n values[valuesById[209] = \"TRANSACTION_ID_FIELD_NOT_ALLOWED\"] = 209;\n values[valuesById[210] = \"IDENTICAL_SCHEDULE_ALREADY_CREATED\"] = 210;\n values[valuesById[211] = \"INVALID_ZERO_BYTE_IN_STRING\"] = 211;\n values[valuesById[212] = \"SCHEDULE_ALREADY_DELETED\"] = 212;\n values[valuesById[213] = \"SCHEDULE_ALREADY_EXECUTED\"] = 213;\n values[valuesById[214] = \"MESSAGE_SIZE_TOO_LARGE\"] = 214;\n values[valuesById[215] = \"OPERATION_REPEATED_IN_BUCKET_GROUPS\"] = 215;\n values[valuesById[216] = \"BUCKET_CAPACITY_OVERFLOW\"] = 216;\n values[valuesById[217] = \"NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION\"] = 217;\n values[valuesById[218] = \"BUCKET_HAS_NO_THROTTLE_GROUPS\"] = 218;\n values[valuesById[219] = \"THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC\"] = 219;\n values[valuesById[220] = \"SUCCESS_BUT_MISSING_EXPECTED_OPERATION\"] = 220;\n values[valuesById[221] = \"UNPARSEABLE_THROTTLE_DEFINITIONS\"] = 221;\n values[valuesById[222] = \"INVALID_THROTTLE_DEFINITIONS\"] = 222;\n values[valuesById[223] = \"ACCOUNT_EXPIRED_AND_PENDING_REMOVAL\"] = 223;\n values[valuesById[224] = \"INVALID_TOKEN_MAX_SUPPLY\"] = 224;\n values[valuesById[225] = \"INVALID_TOKEN_NFT_SERIAL_NUMBER\"] = 225;\n values[valuesById[226] = \"INVALID_NFT_ID\"] = 226;\n values[valuesById[227] = \"METADATA_TOO_LONG\"] = 227;\n values[valuesById[228] = \"BATCH_SIZE_LIMIT_EXCEEDED\"] = 228;\n values[valuesById[229] = \"INVALID_QUERY_RANGE\"] = 229;\n values[valuesById[230] = \"FRACTION_DIVIDES_BY_ZERO\"] = 230;\n values[valuesById[231] = \"INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE\"] = 231;\n values[valuesById[232] = \"CUSTOM_FEES_LIST_TOO_LONG\"] = 232;\n values[valuesById[233] = \"INVALID_CUSTOM_FEE_COLLECTOR\"] = 233;\n values[valuesById[234] = \"INVALID_TOKEN_ID_IN_CUSTOM_FEES\"] = 234;\n values[valuesById[235] = \"TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR\"] = 235;\n values[valuesById[236] = \"TOKEN_MAX_SUPPLY_REACHED\"] = 236;\n values[valuesById[237] = \"SENDER_DOES_NOT_OWN_NFT_SERIAL_NO\"] = 237;\n values[valuesById[238] = \"CUSTOM_FEE_NOT_FULLY_SPECIFIED\"] = 238;\n values[valuesById[239] = \"CUSTOM_FEE_MUST_BE_POSITIVE\"] = 239;\n values[valuesById[240] = \"TOKEN_HAS_NO_FEE_SCHEDULE_KEY\"] = 240;\n values[valuesById[241] = \"CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE\"] = 241;\n values[valuesById[242] = \"ROYALTY_FRACTION_CANNOT_EXCEED_ONE\"] = 242;\n values[valuesById[243] = \"FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT\"] = 243;\n values[valuesById[244] = \"CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES\"] = 244;\n values[valuesById[245] = \"CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON\"] = 245;\n values[valuesById[246] = \"CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON\"] = 246;\n values[valuesById[247] = \"INVALID_CUSTOM_FEE_SCHEDULE_KEY\"] = 247;\n values[valuesById[248] = \"INVALID_TOKEN_MINT_METADATA\"] = 248;\n values[valuesById[249] = \"INVALID_TOKEN_BURN_METADATA\"] = 249;\n values[valuesById[250] = \"CURRENT_TREASURY_STILL_OWNS_NFTS\"] = 250;\n values[valuesById[251] = \"ACCOUNT_STILL_OWNS_NFTS\"] = 251;\n values[valuesById[252] = \"TREASURY_MUST_OWN_BURNED_NFT\"] = 252;\n values[valuesById[253] = \"ACCOUNT_DOES_NOT_OWN_WIPED_NFT\"] = 253;\n values[valuesById[254] = \"ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON\"] = 254;\n values[valuesById[255] = \"MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED\"] = 255;\n values[valuesById[256] = \"PAYER_ACCOUNT_DELETED\"] = 256;\n values[valuesById[257] = \"CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH\"] = 257;\n values[valuesById[258] = \"CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS\"] = 258;\n values[valuesById[259] = \"INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE\"] = 259;\n values[valuesById[260] = \"SERIAL_NUMBER_LIMIT_REACHED\"] = 260;\n values[valuesById[261] = \"CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE\"] = 261;\n values[valuesById[262] = \"NO_REMAINING_AUTOMATIC_ASSOCIATIONS\"] = 262;\n values[valuesById[263] = \"EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT\"] = 263;\n values[valuesById[264] = \"REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT\"] = 264;\n values[valuesById[265] = \"TOKEN_IS_PAUSED\"] = 265;\n values[valuesById[266] = \"TOKEN_HAS_NO_PAUSE_KEY\"] = 266;\n values[valuesById[267] = \"INVALID_PAUSE_KEY\"] = 267;\n values[valuesById[268] = \"FREEZE_UPDATE_FILE_DOES_NOT_EXIST\"] = 268;\n values[valuesById[269] = \"FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH\"] = 269;\n values[valuesById[270] = \"NO_UPGRADE_HAS_BEEN_PREPARED\"] = 270;\n values[valuesById[271] = \"NO_FREEZE_IS_SCHEDULED\"] = 271;\n values[valuesById[272] = \"UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE\"] = 272;\n values[valuesById[273] = \"FREEZE_START_TIME_MUST_BE_FUTURE\"] = 273;\n values[valuesById[274] = \"PREPARED_UPDATE_FILE_IS_IMMUTABLE\"] = 274;\n values[valuesById[275] = \"FREEZE_ALREADY_SCHEDULED\"] = 275;\n values[valuesById[276] = \"FREEZE_UPGRADE_IN_PROGRESS\"] = 276;\n values[valuesById[277] = \"UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED\"] = 277;\n values[valuesById[278] = \"UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED\"] = 278;\n values[valuesById[279] = \"CONSENSUS_GAS_EXHAUSTED\"] = 279;\n values[valuesById[280] = \"REVERTED_SUCCESS\"] = 280;\n values[valuesById[281] = \"MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED\"] = 281;\n values[valuesById[282] = \"INVALID_ALIAS_KEY\"] = 282;\n values[valuesById[283] = \"UNEXPECTED_TOKEN_DECIMALS\"] = 283;\n values[valuesById[284] = \"INVALID_PROXY_ACCOUNT_ID\"] = 284;\n values[valuesById[285] = \"INVALID_TRANSFER_ACCOUNT_ID\"] = 285;\n values[valuesById[286] = \"INVALID_FEE_COLLECTOR_ACCOUNT_ID\"] = 286;\n values[valuesById[287] = \"ALIAS_IS_IMMUTABLE\"] = 287;\n values[valuesById[288] = \"SPENDER_ACCOUNT_SAME_AS_OWNER\"] = 288;\n values[valuesById[289] = \"AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY\"] = 289;\n values[valuesById[290] = \"NEGATIVE_ALLOWANCE_AMOUNT\"] = 290;\n values[valuesById[291] = \"CANNOT_APPROVE_FOR_ALL_FUNGIBLE_COMMON\"] = 291;\n values[valuesById[292] = \"SPENDER_DOES_NOT_HAVE_ALLOWANCE\"] = 292;\n values[valuesById[293] = \"AMOUNT_EXCEEDS_ALLOWANCE\"] = 293;\n values[valuesById[294] = \"MAX_ALLOWANCES_EXCEEDED\"] = 294;\n values[valuesById[295] = \"EMPTY_ALLOWANCES\"] = 295;\n values[valuesById[296] = \"SPENDER_ACCOUNT_REPEATED_IN_ALLOWANCES\"] = 296;\n values[valuesById[297] = \"REPEATED_SERIAL_NUMS_IN_NFT_ALLOWANCES\"] = 297;\n values[valuesById[298] = \"FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES\"] = 298;\n values[valuesById[299] = \"NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES\"] = 299;\n values[valuesById[300] = \"PAYER_AND_OWNER_NOT_EQUAL\"] = 300;\n return values;\n })();\n\n proto.ConsensusTopicInfo = (function() {\n\n /**\n * Properties of a ConsensusTopicInfo.\n * @memberof proto\n * @interface IConsensusTopicInfo\n * @property {string|null} [memo] The memo associated with the topic (UTF-8 encoding max 100 bytes)\n * @property {Uint8Array|null} [runningHash] When a topic is created, its running hash is initialized to 48 bytes of binary zeros.\n * For each submitted message, the topic's running hash is then updated to the output\n * of a particular SHA-384 digest whose input data include the previous running hash.\n * \n * See the TransactionReceipt.proto documentation for an exact description of the\n * data included in the SHA-384 digest used for the update.\n * @property {Long|null} [sequenceNumber] Sequence number (starting at 1 for the first submitMessage) of messages on the topic.\n * @property {proto.ITimestamp|null} [expirationTime] Effective consensus timestamp at (and after) which submitMessage calls will no longer succeed on the topic\n * and the topic will expire and after AUTORENEW_GRACE_PERIOD be automatically deleted.\n * @property {proto.IKey|null} [adminKey] Access control for update/delete of the topic. Null if there is no key.\n * @property {proto.IKey|null} [submitKey] Access control for ConsensusService.submitMessage. Null if there is no key.\n * @property {proto.IDuration|null} [autoRenewPeriod] If an auto-renew account is specified, when the topic expires, its lifetime will be extended\n * by up to this duration (depending on the solvency of the auto-renew account). If the\n * auto-renew account has no funds at all, the topic will be deleted instead.\n * @property {proto.IAccountID|null} [autoRenewAccount] The account, if any, to charge for automatic renewal of the topic's lifetime upon expiry.\n * @property {Uint8Array|null} [ledgerId] The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n */\n\n /**\n * Constructs a new ConsensusTopicInfo.\n * @memberof proto\n * @classdesc Current state of a topic.\n * @implements IConsensusTopicInfo\n * @constructor\n * @param {proto.IConsensusTopicInfo=} [p] Properties to set\n */\n function ConsensusTopicInfo(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The memo associated with the topic (UTF-8 encoding max 100 bytes)\n * @member {string} memo\n * @memberof proto.ConsensusTopicInfo\n * @instance\n */\n ConsensusTopicInfo.prototype.memo = \"\";\n\n /**\n * When a topic is created, its running hash is initialized to 48 bytes of binary zeros.\n * For each submitted message, the topic's running hash is then updated to the output\n * of a particular SHA-384 digest whose input data include the previous running hash.\n * \n * See the TransactionReceipt.proto documentation for an exact description of the\n * data included in the SHA-384 digest used for the update.\n * @member {Uint8Array} runningHash\n * @memberof proto.ConsensusTopicInfo\n * @instance\n */\n ConsensusTopicInfo.prototype.runningHash = $util.newBuffer([]);\n\n /**\n * Sequence number (starting at 1 for the first submitMessage) of messages on the topic.\n * @member {Long} sequenceNumber\n * @memberof proto.ConsensusTopicInfo\n * @instance\n */\n ConsensusTopicInfo.prototype.sequenceNumber = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Effective consensus timestamp at (and after) which submitMessage calls will no longer succeed on the topic\n * and the topic will expire and after AUTORENEW_GRACE_PERIOD be automatically deleted.\n * @member {proto.ITimestamp|null|undefined} expirationTime\n * @memberof proto.ConsensusTopicInfo\n * @instance\n */\n ConsensusTopicInfo.prototype.expirationTime = null;\n\n /**\n * Access control for update/delete of the topic. Null if there is no key.\n * @member {proto.IKey|null|undefined} adminKey\n * @memberof proto.ConsensusTopicInfo\n * @instance\n */\n ConsensusTopicInfo.prototype.adminKey = null;\n\n /**\n * Access control for ConsensusService.submitMessage. Null if there is no key.\n * @member {proto.IKey|null|undefined} submitKey\n * @memberof proto.ConsensusTopicInfo\n * @instance\n */\n ConsensusTopicInfo.prototype.submitKey = null;\n\n /**\n * If an auto-renew account is specified, when the topic expires, its lifetime will be extended\n * by up to this duration (depending on the solvency of the auto-renew account). If the\n * auto-renew account has no funds at all, the topic will be deleted instead.\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.ConsensusTopicInfo\n * @instance\n */\n ConsensusTopicInfo.prototype.autoRenewPeriod = null;\n\n /**\n * The account, if any, to charge for automatic renewal of the topic's lifetime upon expiry.\n * @member {proto.IAccountID|null|undefined} autoRenewAccount\n * @memberof proto.ConsensusTopicInfo\n * @instance\n */\n ConsensusTopicInfo.prototype.autoRenewAccount = null;\n\n /**\n * The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n * @member {Uint8Array} ledgerId\n * @memberof proto.ConsensusTopicInfo\n * @instance\n */\n ConsensusTopicInfo.prototype.ledgerId = $util.newBuffer([]);\n\n /**\n * Creates a new ConsensusTopicInfo instance using the specified properties.\n * @function create\n * @memberof proto.ConsensusTopicInfo\n * @static\n * @param {proto.IConsensusTopicInfo=} [properties] Properties to set\n * @returns {proto.ConsensusTopicInfo} ConsensusTopicInfo instance\n */\n ConsensusTopicInfo.create = function create(properties) {\n return new ConsensusTopicInfo(properties);\n };\n\n /**\n * Encodes the specified ConsensusTopicInfo message. Does not implicitly {@link proto.ConsensusTopicInfo.verify|verify} messages.\n * @function encode\n * @memberof proto.ConsensusTopicInfo\n * @static\n * @param {proto.IConsensusTopicInfo} m ConsensusTopicInfo message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ConsensusTopicInfo.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(10).string(m.memo);\n if (m.runningHash != null && Object.hasOwnProperty.call(m, \"runningHash\"))\n w.uint32(18).bytes(m.runningHash);\n if (m.sequenceNumber != null && Object.hasOwnProperty.call(m, \"sequenceNumber\"))\n w.uint32(24).uint64(m.sequenceNumber);\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.Timestamp.encode(m.expirationTime, w.uint32(34).fork()).ldelim();\n if (m.adminKey != null && Object.hasOwnProperty.call(m, \"adminKey\"))\n $root.proto.Key.encode(m.adminKey, w.uint32(42).fork()).ldelim();\n if (m.submitKey != null && Object.hasOwnProperty.call(m, \"submitKey\"))\n $root.proto.Key.encode(m.submitKey, w.uint32(50).fork()).ldelim();\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(58).fork()).ldelim();\n if (m.autoRenewAccount != null && Object.hasOwnProperty.call(m, \"autoRenewAccount\"))\n $root.proto.AccountID.encode(m.autoRenewAccount, w.uint32(66).fork()).ldelim();\n if (m.ledgerId != null && Object.hasOwnProperty.call(m, \"ledgerId\"))\n w.uint32(74).bytes(m.ledgerId);\n return w;\n };\n\n /**\n * Decodes a ConsensusTopicInfo message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ConsensusTopicInfo\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ConsensusTopicInfo} ConsensusTopicInfo\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ConsensusTopicInfo.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ConsensusTopicInfo();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.memo = r.string();\n break;\n case 2:\n m.runningHash = r.bytes();\n break;\n case 3:\n m.sequenceNumber = r.uint64();\n break;\n case 4:\n m.expirationTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 5:\n m.adminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 6:\n m.submitKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 7:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 8:\n m.autoRenewAccount = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 9:\n m.ledgerId = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ConsensusTopicInfo;\n })();\n\n proto.ConsensusService = (function() {\n\n /**\n * Constructs a new ConsensusService service.\n * @memberof proto\n * @classdesc The Consensus Service provides the ability for Hedera Hashgraph to provide aBFT consensus as to\n * the order and validity of messages submitted to a *topic*, as well as a *consensus timestamp* for\n * those messages.\n * \n * Automatic renewal can be configured via an autoRenewAccount.\n * Any time an autoRenewAccount is added to a topic, that createTopic/updateTopic transaction must\n * be signed by the autoRenewAccount.\n * \n * The autoRenewPeriod on an account must currently be set a value in createTopic between\n * MIN_AUTORENEW_PERIOD (6999999 seconds) and MAX_AUTORENEW_PERIOD (8000001 seconds). During\n * creation this sets the initial expirationTime of the topic (see more below).\n * \n * If no adminKey is on a topic, there may not be an autoRenewAccount on the topic, deleteTopic is\n * not allowed, and the only change allowed via an updateTopic is to extend the expirationTime.\n * \n * If an adminKey is on a topic, every updateTopic and deleteTopic transaction must be signed by the\n * adminKey, except for updateTopics which only extend the topic's expirationTime (no adminKey\n * authorization required).\n * \n * If an updateTopic modifies the adminKey of a topic, the transaction signatures on the updateTopic\n * must fulfill both the pre-update and post-update adminKey signature requirements.\n * \n * Mirrornet ConsensusService may be used to subscribe to changes on the topic, including changes to\n * the topic definition and the consensus ordering and timestamp of submitted messages.\n * \n * Until autoRenew functionality is supported by HAPI, the topic will not expire, the\n * autoRenewAccount will not be charged, and the topic will not automatically be deleted.\n * \n * Once autoRenew functionality is supported by HAPI:\n * \n * 1. Once the expirationTime is encountered, if an autoRenewAccount is configured on the topic, the\n * account will be charged automatically at the expirationTime, to extend the expirationTime of the\n * topic up to the topic's autoRenewPeriod (or as much extension as the account's balance will\n * supply).\n * \n * 2. If the topic expires and is not automatically renewed, the topic will enter the EXPIRED state.\n * All transactions on the topic will fail with TOPIC_EXPIRED, except an updateTopic() call that\n * modifies only the expirationTime. getTopicInfo() will succeed. This state will be available for\n * a AUTORENEW_GRACE_PERIOD grace period (7 days).\n * \n * 3. After the grace period, if the topic's expirationTime is not extended, the topic will be\n * automatically deleted and no transactions or queries on the topic will succeed after that point.\n * @extends $protobuf.rpc.Service\n * @constructor\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n */\n function ConsensusService(rpcImpl, requestDelimited, responseDelimited) {\n $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);\n }\n\n (ConsensusService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = ConsensusService;\n\n /**\n * Creates new ConsensusService service using the specified rpc implementation.\n * @function create\n * @memberof proto.ConsensusService\n * @static\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n * @returns {ConsensusService} RPC service. Useful where requests and/or responses are streamed.\n */\n ConsensusService.create = function create(rpcImpl, requestDelimited, responseDelimited) {\n return new this(rpcImpl, requestDelimited, responseDelimited);\n };\n\n /**\n * Callback as used by {@link proto.ConsensusService#createTopic}.\n * @memberof proto.ConsensusService\n * @typedef createTopicCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Create a topic to be used for consensus.\n * If an autoRenewAccount is specified, that account must also sign this transaction.\n * If an adminKey is specified, the adminKey must sign the transaction.\n * On success, the resulting TransactionReceipt contains the newly created TopicId.\n * Request is [ConsensusCreateTopicTransactionBody](#proto.ConsensusCreateTopicTransactionBody)\n * @function createTopic\n * @memberof proto.ConsensusService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.ConsensusService.createTopicCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(ConsensusService.prototype.createTopic = function createTopic(request, callback) {\n return this.rpcCall(createTopic, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"createTopic\" });\n\n /**\n * Create a topic to be used for consensus.\n * If an autoRenewAccount is specified, that account must also sign this transaction.\n * If an adminKey is specified, the adminKey must sign the transaction.\n * On success, the resulting TransactionReceipt contains the newly created TopicId.\n * Request is [ConsensusCreateTopicTransactionBody](#proto.ConsensusCreateTopicTransactionBody)\n * @function createTopic\n * @memberof proto.ConsensusService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.ConsensusService#updateTopic}.\n * @memberof proto.ConsensusService\n * @typedef updateTopicCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Update a topic.\n * If there is no adminKey, the only authorized update (available to anyone) is to extend the expirationTime.\n * Otherwise transaction must be signed by the adminKey.\n * If an adminKey is updated, the transaction must be signed by the pre-update adminKey and post-update adminKey.\n * If a new autoRenewAccount is specified (not just being removed), that account must also sign the transaction.\n * Request is [ConsensusUpdateTopicTransactionBody](#proto.ConsensusUpdateTopicTransactionBody)\n * @function updateTopic\n * @memberof proto.ConsensusService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.ConsensusService.updateTopicCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(ConsensusService.prototype.updateTopic = function updateTopic(request, callback) {\n return this.rpcCall(updateTopic, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"updateTopic\" });\n\n /**\n * Update a topic.\n * If there is no adminKey, the only authorized update (available to anyone) is to extend the expirationTime.\n * Otherwise transaction must be signed by the adminKey.\n * If an adminKey is updated, the transaction must be signed by the pre-update adminKey and post-update adminKey.\n * If a new autoRenewAccount is specified (not just being removed), that account must also sign the transaction.\n * Request is [ConsensusUpdateTopicTransactionBody](#proto.ConsensusUpdateTopicTransactionBody)\n * @function updateTopic\n * @memberof proto.ConsensusService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.ConsensusService#deleteTopic}.\n * @memberof proto.ConsensusService\n * @typedef deleteTopicCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Delete a topic. No more transactions or queries on the topic (via HAPI) will succeed.\n * If an adminKey is set, this transaction must be signed by that key.\n * If there is no adminKey, this transaction will fail UNAUTHORIZED.\n * Request is [ConsensusDeleteTopicTransactionBody](#proto.ConsensusDeleteTopicTransactionBody)\n * @function deleteTopic\n * @memberof proto.ConsensusService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.ConsensusService.deleteTopicCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(ConsensusService.prototype.deleteTopic = function deleteTopic(request, callback) {\n return this.rpcCall(deleteTopic, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"deleteTopic\" });\n\n /**\n * Delete a topic. No more transactions or queries on the topic (via HAPI) will succeed.\n * If an adminKey is set, this transaction must be signed by that key.\n * If there is no adminKey, this transaction will fail UNAUTHORIZED.\n * Request is [ConsensusDeleteTopicTransactionBody](#proto.ConsensusDeleteTopicTransactionBody)\n * @function deleteTopic\n * @memberof proto.ConsensusService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.ConsensusService#getTopicInfo}.\n * @memberof proto.ConsensusService\n * @typedef getTopicInfoCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieve the latest state of a topic. This method is unrestricted and allowed on any topic by any payer account.\n * Deleted accounts will not be returned.\n * Request is [ConsensusGetTopicInfoQuery](#proto.ConsensusGetTopicInfoQuery)\n * Response is [ConsensusGetTopicInfoResponse](#proto.ConsensusGetTopicInfoResponse)\n * @function getTopicInfo\n * @memberof proto.ConsensusService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.ConsensusService.getTopicInfoCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(ConsensusService.prototype.getTopicInfo = function getTopicInfo(request, callback) {\n return this.rpcCall(getTopicInfo, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getTopicInfo\" });\n\n /**\n * Retrieve the latest state of a topic. This method is unrestricted and allowed on any topic by any payer account.\n * Deleted accounts will not be returned.\n * Request is [ConsensusGetTopicInfoQuery](#proto.ConsensusGetTopicInfoQuery)\n * Response is [ConsensusGetTopicInfoResponse](#proto.ConsensusGetTopicInfoResponse)\n * @function getTopicInfo\n * @memberof proto.ConsensusService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.ConsensusService#submitMessage}.\n * @memberof proto.ConsensusService\n * @typedef submitMessageCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Submit a message for consensus.\n * Valid and authorized messages on valid topics will be ordered by the consensus service, gossipped to the\n * mirror net, and published (in order) to all subscribers (from the mirror net) on this topic.\n * The submitKey (if any) must sign this transaction.\n * On success, the resulting TransactionReceipt contains the topic's updated topicSequenceNumber and\n * topicRunningHash.\n * Request is [ConsensusSubmitMessageTransactionBody](#proto.ConsensusSubmitMessageTransactionBody)\n * @function submitMessage\n * @memberof proto.ConsensusService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.ConsensusService.submitMessageCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(ConsensusService.prototype.submitMessage = function submitMessage(request, callback) {\n return this.rpcCall(submitMessage, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"submitMessage\" });\n\n /**\n * Submit a message for consensus.\n * Valid and authorized messages on valid topics will be ordered by the consensus service, gossipped to the\n * mirror net, and published (in order) to all subscribers (from the mirror net) on this topic.\n * The submitKey (if any) must sign this transaction.\n * On success, the resulting TransactionReceipt contains the topic's updated topicSequenceNumber and\n * topicRunningHash.\n * Request is [ConsensusSubmitMessageTransactionBody](#proto.ConsensusSubmitMessageTransactionBody)\n * @function submitMessage\n * @memberof proto.ConsensusService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n return ConsensusService;\n })();\n\n proto.Query = (function() {\n\n /**\n * Properties of a Query.\n * @memberof proto\n * @interface IQuery\n * @property {proto.IGetByKeyQuery|null} [getByKey] Get all entities associated with a given key\n * @property {proto.IGetBySolidityIDQuery|null} [getBySolidityID] Get the IDs in the format used in transactions, given the format used in Solidity\n * @property {proto.IContractCallLocalQuery|null} [contractCallLocal] Call a function of a smart contract instance\n * @property {proto.IContractGetInfoQuery|null} [contractGetInfo] Get information about a smart contract instance\n * @property {proto.IContractGetBytecodeQuery|null} [contractGetBytecode] Get bytecode used by a smart contract instance\n * @property {proto.IContractGetRecordsQuery|null} [ContractGetRecords] Get Records of the contract instance\n * @property {proto.ICryptoGetAccountBalanceQuery|null} [cryptogetAccountBalance] Get the current balance in a cryptocurrency account\n * @property {proto.ICryptoGetAccountRecordsQuery|null} [cryptoGetAccountRecords] Get all the records that currently exist for transactions involving an account\n * @property {proto.ICryptoGetInfoQuery|null} [cryptoGetInfo] Get all information about an account\n * @property {proto.ICryptoGetLiveHashQuery|null} [cryptoGetLiveHash] Get a single livehash from a single account, if present\n * @property {proto.ICryptoGetStakersQuery|null} [cryptoGetProxyStakers] Get all the accounts that proxy stake to a given account, and how much they proxy stake\n * (not yet implemented in the current API)\n * @property {proto.IFileGetContentsQuery|null} [fileGetContents] Get the contents of a file (the bytes stored in it)\n * @property {proto.IFileGetInfoQuery|null} [fileGetInfo] Get information about a file, such as its expiration date\n * @property {proto.ITransactionGetReceiptQuery|null} [transactionGetReceipt] Get a receipt for a transaction (lasts 180 seconds)\n * @property {proto.ITransactionGetRecordQuery|null} [transactionGetRecord] Get a record for a transaction\n * @property {proto.ITransactionGetFastRecordQuery|null} [transactionGetFastRecord] Get a record for a transaction (lasts 180 seconds)\n * @property {proto.IConsensusGetTopicInfoQuery|null} [consensusGetTopicInfo] Get the parameters of and state of a consensus topic.\n * @property {proto.INetworkGetVersionInfoQuery|null} [networkGetVersionInfo] Get the versions of the HAPI protobuf and Hedera Services software deployed on the\n * responding node.\n * @property {proto.ITokenGetInfoQuery|null} [tokenGetInfo] Get all information about a token\n * @property {proto.IScheduleGetInfoQuery|null} [scheduleGetInfo] Get all information about a scheduled entity\n * @property {proto.ITokenGetAccountNftInfosQuery|null} [tokenGetAccountNftInfos] Get a list of NFTs associated with the account\n * @property {proto.ITokenGetNftInfoQuery|null} [tokenGetNftInfo] Get all information about a NFT\n * @property {proto.ITokenGetNftInfosQuery|null} [tokenGetNftInfos] Get a list of NFTs for the token\n * @property {proto.INetworkGetExecutionTimeQuery|null} [networkGetExecutionTime] Gets handleTransaction times for one or more \"sufficiently recent\" TransactionIDs\n */\n\n /**\n * Constructs a new Query.\n * @memberof proto\n * @classdesc A single query, which is sent from the client to a node. This includes all possible queries. Each\n * Query should not have more than 50 levels.\n * @implements IQuery\n * @constructor\n * @param {proto.IQuery=} [p] Properties to set\n */\n function Query(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Get all entities associated with a given key\n * @member {proto.IGetByKeyQuery|null|undefined} getByKey\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.getByKey = null;\n\n /**\n * Get the IDs in the format used in transactions, given the format used in Solidity\n * @member {proto.IGetBySolidityIDQuery|null|undefined} getBySolidityID\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.getBySolidityID = null;\n\n /**\n * Call a function of a smart contract instance\n * @member {proto.IContractCallLocalQuery|null|undefined} contractCallLocal\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.contractCallLocal = null;\n\n /**\n * Get information about a smart contract instance\n * @member {proto.IContractGetInfoQuery|null|undefined} contractGetInfo\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.contractGetInfo = null;\n\n /**\n * Get bytecode used by a smart contract instance\n * @member {proto.IContractGetBytecodeQuery|null|undefined} contractGetBytecode\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.contractGetBytecode = null;\n\n /**\n * Get Records of the contract instance\n * @member {proto.IContractGetRecordsQuery|null|undefined} ContractGetRecords\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.ContractGetRecords = null;\n\n /**\n * Get the current balance in a cryptocurrency account\n * @member {proto.ICryptoGetAccountBalanceQuery|null|undefined} cryptogetAccountBalance\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.cryptogetAccountBalance = null;\n\n /**\n * Get all the records that currently exist for transactions involving an account\n * @member {proto.ICryptoGetAccountRecordsQuery|null|undefined} cryptoGetAccountRecords\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.cryptoGetAccountRecords = null;\n\n /**\n * Get all information about an account\n * @member {proto.ICryptoGetInfoQuery|null|undefined} cryptoGetInfo\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.cryptoGetInfo = null;\n\n /**\n * Get a single livehash from a single account, if present\n * @member {proto.ICryptoGetLiveHashQuery|null|undefined} cryptoGetLiveHash\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.cryptoGetLiveHash = null;\n\n /**\n * Get all the accounts that proxy stake to a given account, and how much they proxy stake\n * (not yet implemented in the current API)\n * @member {proto.ICryptoGetStakersQuery|null|undefined} cryptoGetProxyStakers\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.cryptoGetProxyStakers = null;\n\n /**\n * Get the contents of a file (the bytes stored in it)\n * @member {proto.IFileGetContentsQuery|null|undefined} fileGetContents\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.fileGetContents = null;\n\n /**\n * Get information about a file, such as its expiration date\n * @member {proto.IFileGetInfoQuery|null|undefined} fileGetInfo\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.fileGetInfo = null;\n\n /**\n * Get a receipt for a transaction (lasts 180 seconds)\n * @member {proto.ITransactionGetReceiptQuery|null|undefined} transactionGetReceipt\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.transactionGetReceipt = null;\n\n /**\n * Get a record for a transaction\n * @member {proto.ITransactionGetRecordQuery|null|undefined} transactionGetRecord\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.transactionGetRecord = null;\n\n /**\n * Get a record for a transaction (lasts 180 seconds)\n * @member {proto.ITransactionGetFastRecordQuery|null|undefined} transactionGetFastRecord\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.transactionGetFastRecord = null;\n\n /**\n * Get the parameters of and state of a consensus topic.\n * @member {proto.IConsensusGetTopicInfoQuery|null|undefined} consensusGetTopicInfo\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.consensusGetTopicInfo = null;\n\n /**\n * Get the versions of the HAPI protobuf and Hedera Services software deployed on the\n * responding node.\n * @member {proto.INetworkGetVersionInfoQuery|null|undefined} networkGetVersionInfo\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.networkGetVersionInfo = null;\n\n /**\n * Get all information about a token\n * @member {proto.ITokenGetInfoQuery|null|undefined} tokenGetInfo\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.tokenGetInfo = null;\n\n /**\n * Get all information about a scheduled entity\n * @member {proto.IScheduleGetInfoQuery|null|undefined} scheduleGetInfo\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.scheduleGetInfo = null;\n\n /**\n * Get a list of NFTs associated with the account\n * @member {proto.ITokenGetAccountNftInfosQuery|null|undefined} tokenGetAccountNftInfos\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.tokenGetAccountNftInfos = null;\n\n /**\n * Get all information about a NFT\n * @member {proto.ITokenGetNftInfoQuery|null|undefined} tokenGetNftInfo\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.tokenGetNftInfo = null;\n\n /**\n * Get a list of NFTs for the token\n * @member {proto.ITokenGetNftInfosQuery|null|undefined} tokenGetNftInfos\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.tokenGetNftInfos = null;\n\n /**\n * Gets handleTransaction times for one or more \"sufficiently recent\" TransactionIDs\n * @member {proto.INetworkGetExecutionTimeQuery|null|undefined} networkGetExecutionTime\n * @memberof proto.Query\n * @instance\n */\n Query.prototype.networkGetExecutionTime = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * Query query.\n * @member {\"getByKey\"|\"getBySolidityID\"|\"contractCallLocal\"|\"contractGetInfo\"|\"contractGetBytecode\"|\"ContractGetRecords\"|\"cryptogetAccountBalance\"|\"cryptoGetAccountRecords\"|\"cryptoGetInfo\"|\"cryptoGetLiveHash\"|\"cryptoGetProxyStakers\"|\"fileGetContents\"|\"fileGetInfo\"|\"transactionGetReceipt\"|\"transactionGetRecord\"|\"transactionGetFastRecord\"|\"consensusGetTopicInfo\"|\"networkGetVersionInfo\"|\"tokenGetInfo\"|\"scheduleGetInfo\"|\"tokenGetAccountNftInfos\"|\"tokenGetNftInfo\"|\"tokenGetNftInfos\"|\"networkGetExecutionTime\"|undefined} query\n * @memberof proto.Query\n * @instance\n */\n Object.defineProperty(Query.prototype, \"query\", {\n get: $util.oneOfGetter($oneOfFields = [\"getByKey\", \"getBySolidityID\", \"contractCallLocal\", \"contractGetInfo\", \"contractGetBytecode\", \"ContractGetRecords\", \"cryptogetAccountBalance\", \"cryptoGetAccountRecords\", \"cryptoGetInfo\", \"cryptoGetLiveHash\", \"cryptoGetProxyStakers\", \"fileGetContents\", \"fileGetInfo\", \"transactionGetReceipt\", \"transactionGetRecord\", \"transactionGetFastRecord\", \"consensusGetTopicInfo\", \"networkGetVersionInfo\", \"tokenGetInfo\", \"scheduleGetInfo\", \"tokenGetAccountNftInfos\", \"tokenGetNftInfo\", \"tokenGetNftInfos\", \"networkGetExecutionTime\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new Query instance using the specified properties.\n * @function create\n * @memberof proto.Query\n * @static\n * @param {proto.IQuery=} [properties] Properties to set\n * @returns {proto.Query} Query instance\n */\n Query.create = function create(properties) {\n return new Query(properties);\n };\n\n /**\n * Encodes the specified Query message. Does not implicitly {@link proto.Query.verify|verify} messages.\n * @function encode\n * @memberof proto.Query\n * @static\n * @param {proto.IQuery} m Query message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Query.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.getByKey != null && Object.hasOwnProperty.call(m, \"getByKey\"))\n $root.proto.GetByKeyQuery.encode(m.getByKey, w.uint32(10).fork()).ldelim();\n if (m.getBySolidityID != null && Object.hasOwnProperty.call(m, \"getBySolidityID\"))\n $root.proto.GetBySolidityIDQuery.encode(m.getBySolidityID, w.uint32(18).fork()).ldelim();\n if (m.contractCallLocal != null && Object.hasOwnProperty.call(m, \"contractCallLocal\"))\n $root.proto.ContractCallLocalQuery.encode(m.contractCallLocal, w.uint32(26).fork()).ldelim();\n if (m.contractGetInfo != null && Object.hasOwnProperty.call(m, \"contractGetInfo\"))\n $root.proto.ContractGetInfoQuery.encode(m.contractGetInfo, w.uint32(34).fork()).ldelim();\n if (m.contractGetBytecode != null && Object.hasOwnProperty.call(m, \"contractGetBytecode\"))\n $root.proto.ContractGetBytecodeQuery.encode(m.contractGetBytecode, w.uint32(42).fork()).ldelim();\n if (m.ContractGetRecords != null && Object.hasOwnProperty.call(m, \"ContractGetRecords\"))\n $root.proto.ContractGetRecordsQuery.encode(m.ContractGetRecords, w.uint32(50).fork()).ldelim();\n if (m.cryptogetAccountBalance != null && Object.hasOwnProperty.call(m, \"cryptogetAccountBalance\"))\n $root.proto.CryptoGetAccountBalanceQuery.encode(m.cryptogetAccountBalance, w.uint32(58).fork()).ldelim();\n if (m.cryptoGetAccountRecords != null && Object.hasOwnProperty.call(m, \"cryptoGetAccountRecords\"))\n $root.proto.CryptoGetAccountRecordsQuery.encode(m.cryptoGetAccountRecords, w.uint32(66).fork()).ldelim();\n if (m.cryptoGetInfo != null && Object.hasOwnProperty.call(m, \"cryptoGetInfo\"))\n $root.proto.CryptoGetInfoQuery.encode(m.cryptoGetInfo, w.uint32(74).fork()).ldelim();\n if (m.cryptoGetLiveHash != null && Object.hasOwnProperty.call(m, \"cryptoGetLiveHash\"))\n $root.proto.CryptoGetLiveHashQuery.encode(m.cryptoGetLiveHash, w.uint32(82).fork()).ldelim();\n if (m.cryptoGetProxyStakers != null && Object.hasOwnProperty.call(m, \"cryptoGetProxyStakers\"))\n $root.proto.CryptoGetStakersQuery.encode(m.cryptoGetProxyStakers, w.uint32(90).fork()).ldelim();\n if (m.fileGetContents != null && Object.hasOwnProperty.call(m, \"fileGetContents\"))\n $root.proto.FileGetContentsQuery.encode(m.fileGetContents, w.uint32(98).fork()).ldelim();\n if (m.fileGetInfo != null && Object.hasOwnProperty.call(m, \"fileGetInfo\"))\n $root.proto.FileGetInfoQuery.encode(m.fileGetInfo, w.uint32(106).fork()).ldelim();\n if (m.transactionGetReceipt != null && Object.hasOwnProperty.call(m, \"transactionGetReceipt\"))\n $root.proto.TransactionGetReceiptQuery.encode(m.transactionGetReceipt, w.uint32(114).fork()).ldelim();\n if (m.transactionGetRecord != null && Object.hasOwnProperty.call(m, \"transactionGetRecord\"))\n $root.proto.TransactionGetRecordQuery.encode(m.transactionGetRecord, w.uint32(122).fork()).ldelim();\n if (m.transactionGetFastRecord != null && Object.hasOwnProperty.call(m, \"transactionGetFastRecord\"))\n $root.proto.TransactionGetFastRecordQuery.encode(m.transactionGetFastRecord, w.uint32(130).fork()).ldelim();\n if (m.consensusGetTopicInfo != null && Object.hasOwnProperty.call(m, \"consensusGetTopicInfo\"))\n $root.proto.ConsensusGetTopicInfoQuery.encode(m.consensusGetTopicInfo, w.uint32(402).fork()).ldelim();\n if (m.networkGetVersionInfo != null && Object.hasOwnProperty.call(m, \"networkGetVersionInfo\"))\n $root.proto.NetworkGetVersionInfoQuery.encode(m.networkGetVersionInfo, w.uint32(410).fork()).ldelim();\n if (m.tokenGetInfo != null && Object.hasOwnProperty.call(m, \"tokenGetInfo\"))\n $root.proto.TokenGetInfoQuery.encode(m.tokenGetInfo, w.uint32(418).fork()).ldelim();\n if (m.scheduleGetInfo != null && Object.hasOwnProperty.call(m, \"scheduleGetInfo\"))\n $root.proto.ScheduleGetInfoQuery.encode(m.scheduleGetInfo, w.uint32(426).fork()).ldelim();\n if (m.tokenGetAccountNftInfos != null && Object.hasOwnProperty.call(m, \"tokenGetAccountNftInfos\"))\n $root.proto.TokenGetAccountNftInfosQuery.encode(m.tokenGetAccountNftInfos, w.uint32(434).fork()).ldelim();\n if (m.tokenGetNftInfo != null && Object.hasOwnProperty.call(m, \"tokenGetNftInfo\"))\n $root.proto.TokenGetNftInfoQuery.encode(m.tokenGetNftInfo, w.uint32(442).fork()).ldelim();\n if (m.tokenGetNftInfos != null && Object.hasOwnProperty.call(m, \"tokenGetNftInfos\"))\n $root.proto.TokenGetNftInfosQuery.encode(m.tokenGetNftInfos, w.uint32(450).fork()).ldelim();\n if (m.networkGetExecutionTime != null && Object.hasOwnProperty.call(m, \"networkGetExecutionTime\"))\n $root.proto.NetworkGetExecutionTimeQuery.encode(m.networkGetExecutionTime, w.uint32(458).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a Query message from the specified reader or buffer.\n * @function decode\n * @memberof proto.Query\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.Query} Query\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Query.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.Query();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.getByKey = $root.proto.GetByKeyQuery.decode(r, r.uint32());\n break;\n case 2:\n m.getBySolidityID = $root.proto.GetBySolidityIDQuery.decode(r, r.uint32());\n break;\n case 3:\n m.contractCallLocal = $root.proto.ContractCallLocalQuery.decode(r, r.uint32());\n break;\n case 4:\n m.contractGetInfo = $root.proto.ContractGetInfoQuery.decode(r, r.uint32());\n break;\n case 5:\n m.contractGetBytecode = $root.proto.ContractGetBytecodeQuery.decode(r, r.uint32());\n break;\n case 6:\n m.ContractGetRecords = $root.proto.ContractGetRecordsQuery.decode(r, r.uint32());\n break;\n case 7:\n m.cryptogetAccountBalance = $root.proto.CryptoGetAccountBalanceQuery.decode(r, r.uint32());\n break;\n case 8:\n m.cryptoGetAccountRecords = $root.proto.CryptoGetAccountRecordsQuery.decode(r, r.uint32());\n break;\n case 9:\n m.cryptoGetInfo = $root.proto.CryptoGetInfoQuery.decode(r, r.uint32());\n break;\n case 10:\n m.cryptoGetLiveHash = $root.proto.CryptoGetLiveHashQuery.decode(r, r.uint32());\n break;\n case 11:\n m.cryptoGetProxyStakers = $root.proto.CryptoGetStakersQuery.decode(r, r.uint32());\n break;\n case 12:\n m.fileGetContents = $root.proto.FileGetContentsQuery.decode(r, r.uint32());\n break;\n case 13:\n m.fileGetInfo = $root.proto.FileGetInfoQuery.decode(r, r.uint32());\n break;\n case 14:\n m.transactionGetReceipt = $root.proto.TransactionGetReceiptQuery.decode(r, r.uint32());\n break;\n case 15:\n m.transactionGetRecord = $root.proto.TransactionGetRecordQuery.decode(r, r.uint32());\n break;\n case 16:\n m.transactionGetFastRecord = $root.proto.TransactionGetFastRecordQuery.decode(r, r.uint32());\n break;\n case 50:\n m.consensusGetTopicInfo = $root.proto.ConsensusGetTopicInfoQuery.decode(r, r.uint32());\n break;\n case 51:\n m.networkGetVersionInfo = $root.proto.NetworkGetVersionInfoQuery.decode(r, r.uint32());\n break;\n case 52:\n m.tokenGetInfo = $root.proto.TokenGetInfoQuery.decode(r, r.uint32());\n break;\n case 53:\n m.scheduleGetInfo = $root.proto.ScheduleGetInfoQuery.decode(r, r.uint32());\n break;\n case 54:\n m.tokenGetAccountNftInfos = $root.proto.TokenGetAccountNftInfosQuery.decode(r, r.uint32());\n break;\n case 55:\n m.tokenGetNftInfo = $root.proto.TokenGetNftInfoQuery.decode(r, r.uint32());\n break;\n case 56:\n m.tokenGetNftInfos = $root.proto.TokenGetNftInfosQuery.decode(r, r.uint32());\n break;\n case 57:\n m.networkGetExecutionTime = $root.proto.NetworkGetExecutionTimeQuery.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Query;\n })();\n\n proto.GetByKeyQuery = (function() {\n\n /**\n * Properties of a GetByKeyQuery.\n * @memberof proto\n * @interface IGetByKeyQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.IKey|null} [key] The key to search for. It must not contain a contractID nor a ThresholdSignature.\n */\n\n /**\n * Constructs a new GetByKeyQuery.\n * @memberof proto\n * @classdesc Get all accounts, claims, files, and smart contract instances whose associated keys include the\n * given Key. The given Key must not be a contractID or a ThresholdKey. This is not yet implemented\n * in the API, but will be in the future.\n * @implements IGetByKeyQuery\n * @constructor\n * @param {proto.IGetByKeyQuery=} [p] Properties to set\n */\n function GetByKeyQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.GetByKeyQuery\n * @instance\n */\n GetByKeyQuery.prototype.header = null;\n\n /**\n * The key to search for. It must not contain a contractID nor a ThresholdSignature.\n * @member {proto.IKey|null|undefined} key\n * @memberof proto.GetByKeyQuery\n * @instance\n */\n GetByKeyQuery.prototype.key = null;\n\n /**\n * Creates a new GetByKeyQuery instance using the specified properties.\n * @function create\n * @memberof proto.GetByKeyQuery\n * @static\n * @param {proto.IGetByKeyQuery=} [properties] Properties to set\n * @returns {proto.GetByKeyQuery} GetByKeyQuery instance\n */\n GetByKeyQuery.create = function create(properties) {\n return new GetByKeyQuery(properties);\n };\n\n /**\n * Encodes the specified GetByKeyQuery message. Does not implicitly {@link proto.GetByKeyQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.GetByKeyQuery\n * @static\n * @param {proto.IGetByKeyQuery} m GetByKeyQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n GetByKeyQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.key != null && Object.hasOwnProperty.call(m, \"key\"))\n $root.proto.Key.encode(m.key, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a GetByKeyQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.GetByKeyQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.GetByKeyQuery} GetByKeyQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n GetByKeyQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.GetByKeyQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.key = $root.proto.Key.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return GetByKeyQuery;\n })();\n\n proto.EntityID = (function() {\n\n /**\n * Properties of an EntityID.\n * @memberof proto\n * @interface IEntityID\n * @property {proto.IAccountID|null} [accountID] The Account ID for the cryptocurrency account\n * @property {proto.ILiveHash|null} [liveHash] A uniquely identifying livehash of an acount\n * @property {proto.IFileID|null} [fileID] The file ID of the file\n * @property {proto.IContractID|null} [contractID] The smart contract ID that identifies instance\n */\n\n /**\n * Constructs a new EntityID.\n * @memberof proto\n * @classdesc the ID for a single entity (account, livehash, file, or smart contract instance)\n * @implements IEntityID\n * @constructor\n * @param {proto.IEntityID=} [p] Properties to set\n */\n function EntityID(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The Account ID for the cryptocurrency account\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.EntityID\n * @instance\n */\n EntityID.prototype.accountID = null;\n\n /**\n * A uniquely identifying livehash of an acount\n * @member {proto.ILiveHash|null|undefined} liveHash\n * @memberof proto.EntityID\n * @instance\n */\n EntityID.prototype.liveHash = null;\n\n /**\n * The file ID of the file\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.EntityID\n * @instance\n */\n EntityID.prototype.fileID = null;\n\n /**\n * The smart contract ID that identifies instance\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.EntityID\n * @instance\n */\n EntityID.prototype.contractID = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * EntityID entity.\n * @member {\"accountID\"|\"liveHash\"|\"fileID\"|\"contractID\"|undefined} entity\n * @memberof proto.EntityID\n * @instance\n */\n Object.defineProperty(EntityID.prototype, \"entity\", {\n get: $util.oneOfGetter($oneOfFields = [\"accountID\", \"liveHash\", \"fileID\", \"contractID\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new EntityID instance using the specified properties.\n * @function create\n * @memberof proto.EntityID\n * @static\n * @param {proto.IEntityID=} [properties] Properties to set\n * @returns {proto.EntityID} EntityID instance\n */\n EntityID.create = function create(properties) {\n return new EntityID(properties);\n };\n\n /**\n * Encodes the specified EntityID message. Does not implicitly {@link proto.EntityID.verify|verify} messages.\n * @function encode\n * @memberof proto.EntityID\n * @static\n * @param {proto.IEntityID} m EntityID message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n EntityID.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(10).fork()).ldelim();\n if (m.liveHash != null && Object.hasOwnProperty.call(m, \"liveHash\"))\n $root.proto.LiveHash.encode(m.liveHash, w.uint32(18).fork()).ldelim();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(26).fork()).ldelim();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(34).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes an EntityID message from the specified reader or buffer.\n * @function decode\n * @memberof proto.EntityID\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.EntityID} EntityID\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n EntityID.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.EntityID();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n m.liveHash = $root.proto.LiveHash.decode(r, r.uint32());\n break;\n case 3:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 4:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return EntityID;\n })();\n\n proto.GetByKeyResponse = (function() {\n\n /**\n * Properties of a GetByKeyResponse.\n * @memberof proto\n * @interface IGetByKeyResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {Array.|null} [entities] The list of entities that include this public key in their associated Key list\n */\n\n /**\n * Constructs a new GetByKeyResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node GetByKeyQuery\n * @implements IGetByKeyResponse\n * @constructor\n * @param {proto.IGetByKeyResponse=} [p] Properties to set\n */\n function GetByKeyResponse(p) {\n this.entities = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.GetByKeyResponse\n * @instance\n */\n GetByKeyResponse.prototype.header = null;\n\n /**\n * The list of entities that include this public key in their associated Key list\n * @member {Array.} entities\n * @memberof proto.GetByKeyResponse\n * @instance\n */\n GetByKeyResponse.prototype.entities = $util.emptyArray;\n\n /**\n * Creates a new GetByKeyResponse instance using the specified properties.\n * @function create\n * @memberof proto.GetByKeyResponse\n * @static\n * @param {proto.IGetByKeyResponse=} [properties] Properties to set\n * @returns {proto.GetByKeyResponse} GetByKeyResponse instance\n */\n GetByKeyResponse.create = function create(properties) {\n return new GetByKeyResponse(properties);\n };\n\n /**\n * Encodes the specified GetByKeyResponse message. Does not implicitly {@link proto.GetByKeyResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.GetByKeyResponse\n * @static\n * @param {proto.IGetByKeyResponse} m GetByKeyResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n GetByKeyResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.entities != null && m.entities.length) {\n for (var i = 0; i < m.entities.length; ++i)\n $root.proto.EntityID.encode(m.entities[i], w.uint32(18).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a GetByKeyResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.GetByKeyResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.GetByKeyResponse} GetByKeyResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n GetByKeyResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.GetByKeyResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.entities && m.entities.length))\n m.entities = [];\n m.entities.push($root.proto.EntityID.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return GetByKeyResponse;\n })();\n\n proto.GetBySolidityIDQuery = (function() {\n\n /**\n * Properties of a GetBySolidityIDQuery.\n * @memberof proto\n * @interface IGetBySolidityIDQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {string|null} [solidityID] The ID in the format used by Solidity\n */\n\n /**\n * Constructs a new GetBySolidityIDQuery.\n * @memberof proto\n * @classdesc Get the IDs in the format used by transactions, given the ID in the format used by Solidity. If\n * the Solidity ID is for a smart contract instance, then both the ContractID and associated\n * AccountID will be returned.\n * @implements IGetBySolidityIDQuery\n * @constructor\n * @param {proto.IGetBySolidityIDQuery=} [p] Properties to set\n */\n function GetBySolidityIDQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.GetBySolidityIDQuery\n * @instance\n */\n GetBySolidityIDQuery.prototype.header = null;\n\n /**\n * The ID in the format used by Solidity\n * @member {string} solidityID\n * @memberof proto.GetBySolidityIDQuery\n * @instance\n */\n GetBySolidityIDQuery.prototype.solidityID = \"\";\n\n /**\n * Creates a new GetBySolidityIDQuery instance using the specified properties.\n * @function create\n * @memberof proto.GetBySolidityIDQuery\n * @static\n * @param {proto.IGetBySolidityIDQuery=} [properties] Properties to set\n * @returns {proto.GetBySolidityIDQuery} GetBySolidityIDQuery instance\n */\n GetBySolidityIDQuery.create = function create(properties) {\n return new GetBySolidityIDQuery(properties);\n };\n\n /**\n * Encodes the specified GetBySolidityIDQuery message. Does not implicitly {@link proto.GetBySolidityIDQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.GetBySolidityIDQuery\n * @static\n * @param {proto.IGetBySolidityIDQuery} m GetBySolidityIDQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n GetBySolidityIDQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.solidityID != null && Object.hasOwnProperty.call(m, \"solidityID\"))\n w.uint32(18).string(m.solidityID);\n return w;\n };\n\n /**\n * Decodes a GetBySolidityIDQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.GetBySolidityIDQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.GetBySolidityIDQuery} GetBySolidityIDQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n GetBySolidityIDQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.GetBySolidityIDQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.solidityID = r.string();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return GetBySolidityIDQuery;\n })();\n\n proto.GetBySolidityIDResponse = (function() {\n\n /**\n * Properties of a GetBySolidityIDResponse.\n * @memberof proto\n * @interface IGetBySolidityIDResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.IAccountID|null} [accountID] The Account ID for the cryptocurrency account\n * @property {proto.IFileID|null} [fileID] The file Id for the file\n * @property {proto.IContractID|null} [contractID] A smart contract ID for the instance (if this is included, then the associated accountID will\n * also be included)\n */\n\n /**\n * Constructs a new GetBySolidityIDResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node GetBySolidityIDQuery\n * @implements IGetBySolidityIDResponse\n * @constructor\n * @param {proto.IGetBySolidityIDResponse=} [p] Properties to set\n */\n function GetBySolidityIDResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.GetBySolidityIDResponse\n * @instance\n */\n GetBySolidityIDResponse.prototype.header = null;\n\n /**\n * The Account ID for the cryptocurrency account\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.GetBySolidityIDResponse\n * @instance\n */\n GetBySolidityIDResponse.prototype.accountID = null;\n\n /**\n * The file Id for the file\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.GetBySolidityIDResponse\n * @instance\n */\n GetBySolidityIDResponse.prototype.fileID = null;\n\n /**\n * A smart contract ID for the instance (if this is included, then the associated accountID will\n * also be included)\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.GetBySolidityIDResponse\n * @instance\n */\n GetBySolidityIDResponse.prototype.contractID = null;\n\n /**\n * Creates a new GetBySolidityIDResponse instance using the specified properties.\n * @function create\n * @memberof proto.GetBySolidityIDResponse\n * @static\n * @param {proto.IGetBySolidityIDResponse=} [properties] Properties to set\n * @returns {proto.GetBySolidityIDResponse} GetBySolidityIDResponse instance\n */\n GetBySolidityIDResponse.create = function create(properties) {\n return new GetBySolidityIDResponse(properties);\n };\n\n /**\n * Encodes the specified GetBySolidityIDResponse message. Does not implicitly {@link proto.GetBySolidityIDResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.GetBySolidityIDResponse\n * @static\n * @param {proto.IGetBySolidityIDResponse} m GetBySolidityIDResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n GetBySolidityIDResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(26).fork()).ldelim();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(34).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a GetBySolidityIDResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.GetBySolidityIDResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.GetBySolidityIDResponse} GetBySolidityIDResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n GetBySolidityIDResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.GetBySolidityIDResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 4:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return GetBySolidityIDResponse;\n })();\n\n proto.ContractLoginfo = (function() {\n\n /**\n * Properties of a ContractLoginfo.\n * @memberof proto\n * @interface IContractLoginfo\n * @property {proto.IContractID|null} [contractID] address of a contract that emitted the event\n * @property {Uint8Array|null} [bloom] bloom filter for a particular log\n * @property {Array.|null} [topic] topics of a particular event\n * @property {Uint8Array|null} [data] event data\n */\n\n /**\n * Constructs a new ContractLoginfo.\n * @memberof proto\n * @classdesc The log information for an event returned by a smart contract function call. One function call\n * may return several such events.\n * @implements IContractLoginfo\n * @constructor\n * @param {proto.IContractLoginfo=} [p] Properties to set\n */\n function ContractLoginfo(p) {\n this.topic = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * address of a contract that emitted the event\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractLoginfo\n * @instance\n */\n ContractLoginfo.prototype.contractID = null;\n\n /**\n * bloom filter for a particular log\n * @member {Uint8Array} bloom\n * @memberof proto.ContractLoginfo\n * @instance\n */\n ContractLoginfo.prototype.bloom = $util.newBuffer([]);\n\n /**\n * topics of a particular event\n * @member {Array.} topic\n * @memberof proto.ContractLoginfo\n * @instance\n */\n ContractLoginfo.prototype.topic = $util.emptyArray;\n\n /**\n * event data\n * @member {Uint8Array} data\n * @memberof proto.ContractLoginfo\n * @instance\n */\n ContractLoginfo.prototype.data = $util.newBuffer([]);\n\n /**\n * Creates a new ContractLoginfo instance using the specified properties.\n * @function create\n * @memberof proto.ContractLoginfo\n * @static\n * @param {proto.IContractLoginfo=} [properties] Properties to set\n * @returns {proto.ContractLoginfo} ContractLoginfo instance\n */\n ContractLoginfo.create = function create(properties) {\n return new ContractLoginfo(properties);\n };\n\n /**\n * Encodes the specified ContractLoginfo message. Does not implicitly {@link proto.ContractLoginfo.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractLoginfo\n * @static\n * @param {proto.IContractLoginfo} m ContractLoginfo message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractLoginfo.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(10).fork()).ldelim();\n if (m.bloom != null && Object.hasOwnProperty.call(m, \"bloom\"))\n w.uint32(18).bytes(m.bloom);\n if (m.topic != null && m.topic.length) {\n for (var i = 0; i < m.topic.length; ++i)\n w.uint32(26).bytes(m.topic[i]);\n }\n if (m.data != null && Object.hasOwnProperty.call(m, \"data\"))\n w.uint32(34).bytes(m.data);\n return w;\n };\n\n /**\n * Decodes a ContractLoginfo message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractLoginfo\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractLoginfo} ContractLoginfo\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractLoginfo.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractLoginfo();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 2:\n m.bloom = r.bytes();\n break;\n case 3:\n if (!(m.topic && m.topic.length))\n m.topic = [];\n m.topic.push(r.bytes());\n break;\n case 4:\n m.data = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractLoginfo;\n })();\n\n proto.ContractFunctionResult = (function() {\n\n /**\n * Properties of a ContractFunctionResult.\n * @memberof proto\n * @interface IContractFunctionResult\n * @property {proto.IContractID|null} [contractID] the smart contract instance whose function was called\n * @property {Uint8Array|null} [contractCallResult] the result returned by the function\n * @property {string|null} [errorMessage] message In case there was an error during smart contract execution\n * @property {Uint8Array|null} [bloom] bloom filter for record\n * @property {Long|null} [gasUsed] units of gas used to execute contract\n * @property {Array.|null} [logInfo] the log info for events returned by the function\n * @property {Array.|null} [createdContractIDs] [DEPRECATED] the list of smart contracts that were created by the function call.\n * \n * The created ids will now _also_ be externalized through internal transaction\n * records, where each record has its alias field populated with the new contract's\n * EVM address. (This is needed for contracts created with CREATE2, since\n * there is no longer a simple relationship between the new contract's 0.0.X id\n * and its Solidity address.)\n * @property {Array.|null} [stateChanges] the list of state reads and changes caused by this function call\n * @property {google.protobuf.IBytesValue|null} [evmAddress] The new contract's 20-byte EVM address. Only populated after release 0.23,\n * where each created contract will have its own record. (This is an important\n * point--the field is not repeated because there will be a separate\n * child record for each created contract.)\n * \n * Every contract has an EVM address determined by its shard.realm.num id.\n * This address is as follows:\n *
    \n *
  1. The first 4 bytes are the big-endian representation of the shard.
  2. \n *
  3. The next 8 bytes are the big-endian representation of the realm.
  4. \n *
  5. The final 8 bytes are the big-endian representation of the number.
  6. \n *
\n * \n * Contracts created via CREATE2 have an additional, primary address that is\n * derived from the EIP-1014\n * specification, and does not have a simple relation to a shard.realm.num id.\n * \n * (Please do note that CREATE2 contracts can also be referenced by the three-part\n * EVM address described above.)\n */\n\n /**\n * Constructs a new ContractFunctionResult.\n * @memberof proto\n * @classdesc The result returned by a call to a smart contract function. This is part of the response to a\n * ContractCallLocal query, and is in the record for a ContractCall or ContractCreateInstance\n * transaction. The ContractCreateInstance transaction record has the results of the call to the\n * constructor.\n * @implements IContractFunctionResult\n * @constructor\n * @param {proto.IContractFunctionResult=} [p] Properties to set\n */\n function ContractFunctionResult(p) {\n this.logInfo = [];\n this.createdContractIDs = [];\n this.stateChanges = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * the smart contract instance whose function was called\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractFunctionResult\n * @instance\n */\n ContractFunctionResult.prototype.contractID = null;\n\n /**\n * the result returned by the function\n * @member {Uint8Array} contractCallResult\n * @memberof proto.ContractFunctionResult\n * @instance\n */\n ContractFunctionResult.prototype.contractCallResult = $util.newBuffer([]);\n\n /**\n * message In case there was an error during smart contract execution\n * @member {string} errorMessage\n * @memberof proto.ContractFunctionResult\n * @instance\n */\n ContractFunctionResult.prototype.errorMessage = \"\";\n\n /**\n * bloom filter for record\n * @member {Uint8Array} bloom\n * @memberof proto.ContractFunctionResult\n * @instance\n */\n ContractFunctionResult.prototype.bloom = $util.newBuffer([]);\n\n /**\n * units of gas used to execute contract\n * @member {Long} gasUsed\n * @memberof proto.ContractFunctionResult\n * @instance\n */\n ContractFunctionResult.prototype.gasUsed = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * the log info for events returned by the function\n * @member {Array.} logInfo\n * @memberof proto.ContractFunctionResult\n * @instance\n */\n ContractFunctionResult.prototype.logInfo = $util.emptyArray;\n\n /**\n * [DEPRECATED] the list of smart contracts that were created by the function call.\n * \n * The created ids will now _also_ be externalized through internal transaction\n * records, where each record has its alias field populated with the new contract's\n * EVM address. (This is needed for contracts created with CREATE2, since\n * there is no longer a simple relationship between the new contract's 0.0.X id\n * and its Solidity address.)\n * @member {Array.} createdContractIDs\n * @memberof proto.ContractFunctionResult\n * @instance\n */\n ContractFunctionResult.prototype.createdContractIDs = $util.emptyArray;\n\n /**\n * the list of state reads and changes caused by this function call\n * @member {Array.} stateChanges\n * @memberof proto.ContractFunctionResult\n * @instance\n */\n ContractFunctionResult.prototype.stateChanges = $util.emptyArray;\n\n /**\n * The new contract's 20-byte EVM address. Only populated after release 0.23,\n * where each created contract will have its own record. (This is an important\n * point--the field is not repeated because there will be a separate\n * child record for each created contract.)\n * \n * Every contract has an EVM address determined by its shard.realm.num id.\n * This address is as follows:\n *
    \n *
  1. The first 4 bytes are the big-endian representation of the shard.
  2. \n *
  3. The next 8 bytes are the big-endian representation of the realm.
  4. \n *
  5. The final 8 bytes are the big-endian representation of the number.
  6. \n *
\n * \n * Contracts created via CREATE2 have an additional, primary address that is\n * derived from the EIP-1014\n * specification, and does not have a simple relation to a shard.realm.num id.\n * \n * (Please do note that CREATE2 contracts can also be referenced by the three-part\n * EVM address described above.)\n * @member {google.protobuf.IBytesValue|null|undefined} evmAddress\n * @memberof proto.ContractFunctionResult\n * @instance\n */\n ContractFunctionResult.prototype.evmAddress = null;\n\n /**\n * Creates a new ContractFunctionResult instance using the specified properties.\n * @function create\n * @memberof proto.ContractFunctionResult\n * @static\n * @param {proto.IContractFunctionResult=} [properties] Properties to set\n * @returns {proto.ContractFunctionResult} ContractFunctionResult instance\n */\n ContractFunctionResult.create = function create(properties) {\n return new ContractFunctionResult(properties);\n };\n\n /**\n * Encodes the specified ContractFunctionResult message. Does not implicitly {@link proto.ContractFunctionResult.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractFunctionResult\n * @static\n * @param {proto.IContractFunctionResult} m ContractFunctionResult message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractFunctionResult.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(10).fork()).ldelim();\n if (m.contractCallResult != null && Object.hasOwnProperty.call(m, \"contractCallResult\"))\n w.uint32(18).bytes(m.contractCallResult);\n if (m.errorMessage != null && Object.hasOwnProperty.call(m, \"errorMessage\"))\n w.uint32(26).string(m.errorMessage);\n if (m.bloom != null && Object.hasOwnProperty.call(m, \"bloom\"))\n w.uint32(34).bytes(m.bloom);\n if (m.gasUsed != null && Object.hasOwnProperty.call(m, \"gasUsed\"))\n w.uint32(40).uint64(m.gasUsed);\n if (m.logInfo != null && m.logInfo.length) {\n for (var i = 0; i < m.logInfo.length; ++i)\n $root.proto.ContractLoginfo.encode(m.logInfo[i], w.uint32(50).fork()).ldelim();\n }\n if (m.createdContractIDs != null && m.createdContractIDs.length) {\n for (var i = 0; i < m.createdContractIDs.length; ++i)\n $root.proto.ContractID.encode(m.createdContractIDs[i], w.uint32(58).fork()).ldelim();\n }\n if (m.stateChanges != null && m.stateChanges.length) {\n for (var i = 0; i < m.stateChanges.length; ++i)\n $root.proto.ContractStateChange.encode(m.stateChanges[i], w.uint32(66).fork()).ldelim();\n }\n if (m.evmAddress != null && Object.hasOwnProperty.call(m, \"evmAddress\"))\n $root.google.protobuf.BytesValue.encode(m.evmAddress, w.uint32(74).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ContractFunctionResult message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractFunctionResult\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractFunctionResult} ContractFunctionResult\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractFunctionResult.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractFunctionResult();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 2:\n m.contractCallResult = r.bytes();\n break;\n case 3:\n m.errorMessage = r.string();\n break;\n case 4:\n m.bloom = r.bytes();\n break;\n case 5:\n m.gasUsed = r.uint64();\n break;\n case 6:\n if (!(m.logInfo && m.logInfo.length))\n m.logInfo = [];\n m.logInfo.push($root.proto.ContractLoginfo.decode(r, r.uint32()));\n break;\n case 7:\n if (!(m.createdContractIDs && m.createdContractIDs.length))\n m.createdContractIDs = [];\n m.createdContractIDs.push($root.proto.ContractID.decode(r, r.uint32()));\n break;\n case 8:\n if (!(m.stateChanges && m.stateChanges.length))\n m.stateChanges = [];\n m.stateChanges.push($root.proto.ContractStateChange.decode(r, r.uint32()));\n break;\n case 9:\n m.evmAddress = $root.google.protobuf.BytesValue.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractFunctionResult;\n })();\n\n proto.ContractCallLocalQuery = (function() {\n\n /**\n * Properties of a ContractCallLocalQuery.\n * @memberof proto\n * @interface IContractCallLocalQuery\n * @property {proto.IQueryHeader|null} [header] standard info sent from client to node, including the signed payment, and what kind of response is requested (cost, state proof, both, or neither). The payment must cover the fees and all of the gas offered.\n * @property {proto.IContractID|null} [contractID] The contract to make a static call against\n * @property {Long|null} [gas] The amount of gas to use for the call; all of the gas offered will be used and charged a corresponding fee\n * @property {Uint8Array|null} [functionParameters] which function to call, and the parameters to pass to the function\n * @property {Long|null} [maxResultSize] max number of bytes that the result might include. The run will fail if it would have returned more than this number of bytes.\n */\n\n /**\n * Constructs a new ContractCallLocalQuery.\n * @memberof proto\n * @classdesc Call a function of the given smart contract instance, giving it functionParameters as its inputs.\n * This is performed locally on the particular node that the client is communicating with.\n * It cannot change the state of the contract instance (and so, cannot spend anything from the instance's cryptocurrency account).\n * It will not have a consensus timestamp. It cannot generate a record or a receipt. The response will contain the output\n * returned by the function call. This is useful for calling getter functions, which purely read the state and don't change it.\n * It is faster and cheaper than a normal call, because it is purely local to a single node.\n * \n * Unlike a ContractCall transaction, the node will consume the entire amount of provided gas in determining\n * the fee for this query.\n * @implements IContractCallLocalQuery\n * @constructor\n * @param {proto.IContractCallLocalQuery=} [p] Properties to set\n */\n function ContractCallLocalQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * standard info sent from client to node, including the signed payment, and what kind of response is requested (cost, state proof, both, or neither). The payment must cover the fees and all of the gas offered.\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.ContractCallLocalQuery\n * @instance\n */\n ContractCallLocalQuery.prototype.header = null;\n\n /**\n * The contract to make a static call against\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractCallLocalQuery\n * @instance\n */\n ContractCallLocalQuery.prototype.contractID = null;\n\n /**\n * The amount of gas to use for the call; all of the gas offered will be used and charged a corresponding fee\n * @member {Long} gas\n * @memberof proto.ContractCallLocalQuery\n * @instance\n */\n ContractCallLocalQuery.prototype.gas = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * which function to call, and the parameters to pass to the function\n * @member {Uint8Array} functionParameters\n * @memberof proto.ContractCallLocalQuery\n * @instance\n */\n ContractCallLocalQuery.prototype.functionParameters = $util.newBuffer([]);\n\n /**\n * max number of bytes that the result might include. The run will fail if it would have returned more than this number of bytes.\n * @member {Long} maxResultSize\n * @memberof proto.ContractCallLocalQuery\n * @instance\n */\n ContractCallLocalQuery.prototype.maxResultSize = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new ContractCallLocalQuery instance using the specified properties.\n * @function create\n * @memberof proto.ContractCallLocalQuery\n * @static\n * @param {proto.IContractCallLocalQuery=} [properties] Properties to set\n * @returns {proto.ContractCallLocalQuery} ContractCallLocalQuery instance\n */\n ContractCallLocalQuery.create = function create(properties) {\n return new ContractCallLocalQuery(properties);\n };\n\n /**\n * Encodes the specified ContractCallLocalQuery message. Does not implicitly {@link proto.ContractCallLocalQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractCallLocalQuery\n * @static\n * @param {proto.IContractCallLocalQuery} m ContractCallLocalQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractCallLocalQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(18).fork()).ldelim();\n if (m.gas != null && Object.hasOwnProperty.call(m, \"gas\"))\n w.uint32(24).int64(m.gas);\n if (m.functionParameters != null && Object.hasOwnProperty.call(m, \"functionParameters\"))\n w.uint32(34).bytes(m.functionParameters);\n if (m.maxResultSize != null && Object.hasOwnProperty.call(m, \"maxResultSize\"))\n w.uint32(40).int64(m.maxResultSize);\n return w;\n };\n\n /**\n * Decodes a ContractCallLocalQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractCallLocalQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractCallLocalQuery} ContractCallLocalQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractCallLocalQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractCallLocalQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 3:\n m.gas = r.int64();\n break;\n case 4:\n m.functionParameters = r.bytes();\n break;\n case 5:\n m.maxResultSize = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractCallLocalQuery;\n })();\n\n proto.ContractCallLocalResponse = (function() {\n\n /**\n * Properties of a ContractCallLocalResponse.\n * @memberof proto\n * @interface IContractCallLocalResponse\n * @property {proto.IResponseHeader|null} [header] standard response from node to client, including the requested fields: cost, or state proof, or both, or neither\n * @property {proto.IContractFunctionResult|null} [functionResult] the value returned by the function (if it completed and didn't fail)\n */\n\n /**\n * Constructs a new ContractCallLocalResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node ContractCallLocalQuery\n * @implements IContractCallLocalResponse\n * @constructor\n * @param {proto.IContractCallLocalResponse=} [p] Properties to set\n */\n function ContractCallLocalResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * standard response from node to client, including the requested fields: cost, or state proof, or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.ContractCallLocalResponse\n * @instance\n */\n ContractCallLocalResponse.prototype.header = null;\n\n /**\n * the value returned by the function (if it completed and didn't fail)\n * @member {proto.IContractFunctionResult|null|undefined} functionResult\n * @memberof proto.ContractCallLocalResponse\n * @instance\n */\n ContractCallLocalResponse.prototype.functionResult = null;\n\n /**\n * Creates a new ContractCallLocalResponse instance using the specified properties.\n * @function create\n * @memberof proto.ContractCallLocalResponse\n * @static\n * @param {proto.IContractCallLocalResponse=} [properties] Properties to set\n * @returns {proto.ContractCallLocalResponse} ContractCallLocalResponse instance\n */\n ContractCallLocalResponse.create = function create(properties) {\n return new ContractCallLocalResponse(properties);\n };\n\n /**\n * Encodes the specified ContractCallLocalResponse message. Does not implicitly {@link proto.ContractCallLocalResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractCallLocalResponse\n * @static\n * @param {proto.IContractCallLocalResponse} m ContractCallLocalResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractCallLocalResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.functionResult != null && Object.hasOwnProperty.call(m, \"functionResult\"))\n $root.proto.ContractFunctionResult.encode(m.functionResult, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ContractCallLocalResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractCallLocalResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractCallLocalResponse} ContractCallLocalResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractCallLocalResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractCallLocalResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.functionResult = $root.proto.ContractFunctionResult.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractCallLocalResponse;\n })();\n\n proto.ContractStateChange = (function() {\n\n /**\n * Properties of a ContractStateChange.\n * @memberof proto\n * @interface IContractStateChange\n * @property {proto.IContractID|null} [contractID] The contract to which the storage changes apply to\n * @property {Array.|null} [storageChanges] The list of storage changes.\n */\n\n /**\n * Constructs a new ContractStateChange.\n * @memberof proto\n * @classdesc The storage changes to a smart contract's storage as a side effect of the function call.\n * @implements IContractStateChange\n * @constructor\n * @param {proto.IContractStateChange=} [p] Properties to set\n */\n function ContractStateChange(p) {\n this.storageChanges = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The contract to which the storage changes apply to\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractStateChange\n * @instance\n */\n ContractStateChange.prototype.contractID = null;\n\n /**\n * The list of storage changes.\n * @member {Array.} storageChanges\n * @memberof proto.ContractStateChange\n * @instance\n */\n ContractStateChange.prototype.storageChanges = $util.emptyArray;\n\n /**\n * Creates a new ContractStateChange instance using the specified properties.\n * @function create\n * @memberof proto.ContractStateChange\n * @static\n * @param {proto.IContractStateChange=} [properties] Properties to set\n * @returns {proto.ContractStateChange} ContractStateChange instance\n */\n ContractStateChange.create = function create(properties) {\n return new ContractStateChange(properties);\n };\n\n /**\n * Encodes the specified ContractStateChange message. Does not implicitly {@link proto.ContractStateChange.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractStateChange\n * @static\n * @param {proto.IContractStateChange} m ContractStateChange message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractStateChange.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(10).fork()).ldelim();\n if (m.storageChanges != null && m.storageChanges.length) {\n for (var i = 0; i < m.storageChanges.length; ++i)\n $root.proto.StorageChange.encode(m.storageChanges[i], w.uint32(18).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a ContractStateChange message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractStateChange\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractStateChange} ContractStateChange\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractStateChange.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractStateChange();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.storageChanges && m.storageChanges.length))\n m.storageChanges = [];\n m.storageChanges.push($root.proto.StorageChange.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractStateChange;\n })();\n\n proto.StorageChange = (function() {\n\n /**\n * Properties of a StorageChange.\n * @memberof proto\n * @interface IStorageChange\n * @property {Uint8Array|null} [slot] The storage slot changed. Up to 32 bytes, big-endian, zero bytes left trimmed.\n * @property {Uint8Array|null} [valueRead] The value read from the storage slot. Up to 32 bytes, big-endian, zero bytes left trimmed.\n * \n * Because of the way SSTORE operations are charged the slot is always read before being written to.\n * @property {google.protobuf.IBytesValue|null} [valueWritten] The new value written to the slot. Up to 32 bytes, big-endian, zero bytes left trimmed.\n * \n * If a value of zero is written the valueWritten will be present but the inner value will be absent.\n * \n * If a value was read and not written this value will not be present.\n */\n\n /**\n * Constructs a new StorageChange.\n * @memberof proto\n * @classdesc A storage slot change description.\n * @implements IStorageChange\n * @constructor\n * @param {proto.IStorageChange=} [p] Properties to set\n */\n function StorageChange(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The storage slot changed. Up to 32 bytes, big-endian, zero bytes left trimmed.\n * @member {Uint8Array} slot\n * @memberof proto.StorageChange\n * @instance\n */\n StorageChange.prototype.slot = $util.newBuffer([]);\n\n /**\n * The value read from the storage slot. Up to 32 bytes, big-endian, zero bytes left trimmed.\n * \n * Because of the way SSTORE operations are charged the slot is always read before being written to.\n * @member {Uint8Array} valueRead\n * @memberof proto.StorageChange\n * @instance\n */\n StorageChange.prototype.valueRead = $util.newBuffer([]);\n\n /**\n * The new value written to the slot. Up to 32 bytes, big-endian, zero bytes left trimmed.\n * \n * If a value of zero is written the valueWritten will be present but the inner value will be absent.\n * \n * If a value was read and not written this value will not be present.\n * @member {google.protobuf.IBytesValue|null|undefined} valueWritten\n * @memberof proto.StorageChange\n * @instance\n */\n StorageChange.prototype.valueWritten = null;\n\n /**\n * Creates a new StorageChange instance using the specified properties.\n * @function create\n * @memberof proto.StorageChange\n * @static\n * @param {proto.IStorageChange=} [properties] Properties to set\n * @returns {proto.StorageChange} StorageChange instance\n */\n StorageChange.create = function create(properties) {\n return new StorageChange(properties);\n };\n\n /**\n * Encodes the specified StorageChange message. Does not implicitly {@link proto.StorageChange.verify|verify} messages.\n * @function encode\n * @memberof proto.StorageChange\n * @static\n * @param {proto.IStorageChange} m StorageChange message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n StorageChange.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.slot != null && Object.hasOwnProperty.call(m, \"slot\"))\n w.uint32(10).bytes(m.slot);\n if (m.valueRead != null && Object.hasOwnProperty.call(m, \"valueRead\"))\n w.uint32(18).bytes(m.valueRead);\n if (m.valueWritten != null && Object.hasOwnProperty.call(m, \"valueWritten\"))\n $root.google.protobuf.BytesValue.encode(m.valueWritten, w.uint32(26).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a StorageChange message from the specified reader or buffer.\n * @function decode\n * @memberof proto.StorageChange\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.StorageChange} StorageChange\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n StorageChange.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.StorageChange();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.slot = r.bytes();\n break;\n case 2:\n m.valueRead = r.bytes();\n break;\n case 3:\n m.valueWritten = $root.google.protobuf.BytesValue.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return StorageChange;\n })();\n\n proto.ContractGetInfoQuery = (function() {\n\n /**\n * Properties of a ContractGetInfoQuery.\n * @memberof proto\n * @interface IContractGetInfoQuery\n * @property {proto.IQueryHeader|null} [header] standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.IContractID|null} [contractID] the contract for which information is requested\n */\n\n /**\n * Constructs a new ContractGetInfoQuery.\n * @memberof proto\n * @classdesc Get information about a smart contract instance. This includes the account that it uses, the file\n * containing its bytecode, and the time when it will expire.\n * @implements IContractGetInfoQuery\n * @constructor\n * @param {proto.IContractGetInfoQuery=} [p] Properties to set\n */\n function ContractGetInfoQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.ContractGetInfoQuery\n * @instance\n */\n ContractGetInfoQuery.prototype.header = null;\n\n /**\n * the contract for which information is requested\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractGetInfoQuery\n * @instance\n */\n ContractGetInfoQuery.prototype.contractID = null;\n\n /**\n * Creates a new ContractGetInfoQuery instance using the specified properties.\n * @function create\n * @memberof proto.ContractGetInfoQuery\n * @static\n * @param {proto.IContractGetInfoQuery=} [properties] Properties to set\n * @returns {proto.ContractGetInfoQuery} ContractGetInfoQuery instance\n */\n ContractGetInfoQuery.create = function create(properties) {\n return new ContractGetInfoQuery(properties);\n };\n\n /**\n * Encodes the specified ContractGetInfoQuery message. Does not implicitly {@link proto.ContractGetInfoQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractGetInfoQuery\n * @static\n * @param {proto.IContractGetInfoQuery} m ContractGetInfoQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractGetInfoQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ContractGetInfoQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractGetInfoQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractGetInfoQuery} ContractGetInfoQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractGetInfoQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractGetInfoQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractGetInfoQuery;\n })();\n\n proto.ContractGetInfoResponse = (function() {\n\n /**\n * Properties of a ContractGetInfoResponse.\n * @memberof proto\n * @interface IContractGetInfoResponse\n * @property {proto.IResponseHeader|null} [header] standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.ContractGetInfoResponse.IContractInfo|null} [contractInfo] the information about this contract instance (a state proof can be generated for this)\n */\n\n /**\n * Constructs a new ContractGetInfoResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node ContractGetInfoQuery\n * @implements IContractGetInfoResponse\n * @constructor\n * @param {proto.IContractGetInfoResponse=} [p] Properties to set\n */\n function ContractGetInfoResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.ContractGetInfoResponse\n * @instance\n */\n ContractGetInfoResponse.prototype.header = null;\n\n /**\n * the information about this contract instance (a state proof can be generated for this)\n * @member {proto.ContractGetInfoResponse.IContractInfo|null|undefined} contractInfo\n * @memberof proto.ContractGetInfoResponse\n * @instance\n */\n ContractGetInfoResponse.prototype.contractInfo = null;\n\n /**\n * Creates a new ContractGetInfoResponse instance using the specified properties.\n * @function create\n * @memberof proto.ContractGetInfoResponse\n * @static\n * @param {proto.IContractGetInfoResponse=} [properties] Properties to set\n * @returns {proto.ContractGetInfoResponse} ContractGetInfoResponse instance\n */\n ContractGetInfoResponse.create = function create(properties) {\n return new ContractGetInfoResponse(properties);\n };\n\n /**\n * Encodes the specified ContractGetInfoResponse message. Does not implicitly {@link proto.ContractGetInfoResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractGetInfoResponse\n * @static\n * @param {proto.IContractGetInfoResponse} m ContractGetInfoResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractGetInfoResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.contractInfo != null && Object.hasOwnProperty.call(m, \"contractInfo\"))\n $root.proto.ContractGetInfoResponse.ContractInfo.encode(m.contractInfo, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ContractGetInfoResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractGetInfoResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractGetInfoResponse} ContractGetInfoResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractGetInfoResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractGetInfoResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.contractInfo = $root.proto.ContractGetInfoResponse.ContractInfo.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n ContractGetInfoResponse.ContractInfo = (function() {\n\n /**\n * Properties of a ContractInfo.\n * @memberof proto.ContractGetInfoResponse\n * @interface IContractInfo\n * @property {proto.IContractID|null} [contractID] ID of the contract instance, in the format used in transactions\n * @property {proto.IAccountID|null} [accountID] ID of the cryptocurrency account owned by the contract instance, in the format used in\n * transactions\n * @property {string|null} [contractAccountID] ID of both the contract instance and the cryptocurrency account owned by the contract\n * instance, in the format used by Solidity\n * @property {proto.IKey|null} [adminKey] the state of the instance and its fields can be modified arbitrarily if this key signs a\n * transaction to modify it. If this is null, then such modifications are not possible, and\n * there is no administrator that can override the normal operation of this smart contract\n * instance. Note that if it is created with no admin keys, then there is no administrator\n * to authorize changing the admin keys, so there can never be any admin keys for that\n * instance.\n * @property {proto.ITimestamp|null} [expirationTime] the current time at which this contract instance (and its account) is set to expire\n * @property {proto.IDuration|null} [autoRenewPeriod] the expiration time will extend every this many seconds. If there are insufficient funds,\n * then it extends as long as possible. If the account is empty when it expires, then it is\n * deleted.\n * @property {Long|null} [storage] number of bytes of storage being used by this instance (which affects the cost to extend\n * the expiration time)\n * @property {string|null} [memo] the memo associated with the contract (max 100 bytes)\n * @property {Long|null} [balance] The current balance, in tinybars\n * @property {boolean|null} [deleted] Whether the contract has been deleted\n * @property {Array.|null} [tokenRelationships] The tokens associated to the contract\n * @property {Uint8Array|null} [ledgerId] The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n */\n\n /**\n * Constructs a new ContractInfo.\n * @memberof proto.ContractGetInfoResponse\n * @classdesc Represents a ContractInfo.\n * @implements IContractInfo\n * @constructor\n * @param {proto.ContractGetInfoResponse.IContractInfo=} [p] Properties to set\n */\n function ContractInfo(p) {\n this.tokenRelationships = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * ID of the contract instance, in the format used in transactions\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.contractID = null;\n\n /**\n * ID of the cryptocurrency account owned by the contract instance, in the format used in\n * transactions\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.accountID = null;\n\n /**\n * ID of both the contract instance and the cryptocurrency account owned by the contract\n * instance, in the format used by Solidity\n * @member {string} contractAccountID\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.contractAccountID = \"\";\n\n /**\n * the state of the instance and its fields can be modified arbitrarily if this key signs a\n * transaction to modify it. If this is null, then such modifications are not possible, and\n * there is no administrator that can override the normal operation of this smart contract\n * instance. Note that if it is created with no admin keys, then there is no administrator\n * to authorize changing the admin keys, so there can never be any admin keys for that\n * instance.\n * @member {proto.IKey|null|undefined} adminKey\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.adminKey = null;\n\n /**\n * the current time at which this contract instance (and its account) is set to expire\n * @member {proto.ITimestamp|null|undefined} expirationTime\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.expirationTime = null;\n\n /**\n * the expiration time will extend every this many seconds. If there are insufficient funds,\n * then it extends as long as possible. If the account is empty when it expires, then it is\n * deleted.\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.autoRenewPeriod = null;\n\n /**\n * number of bytes of storage being used by this instance (which affects the cost to extend\n * the expiration time)\n * @member {Long} storage\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.storage = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * the memo associated with the contract (max 100 bytes)\n * @member {string} memo\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.memo = \"\";\n\n /**\n * The current balance, in tinybars\n * @member {Long} balance\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.balance = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Whether the contract has been deleted\n * @member {boolean} deleted\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.deleted = false;\n\n /**\n * The tokens associated to the contract\n * @member {Array.} tokenRelationships\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.tokenRelationships = $util.emptyArray;\n\n /**\n * The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n * @member {Uint8Array} ledgerId\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @instance\n */\n ContractInfo.prototype.ledgerId = $util.newBuffer([]);\n\n /**\n * Creates a new ContractInfo instance using the specified properties.\n * @function create\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @static\n * @param {proto.ContractGetInfoResponse.IContractInfo=} [properties] Properties to set\n * @returns {proto.ContractGetInfoResponse.ContractInfo} ContractInfo instance\n */\n ContractInfo.create = function create(properties) {\n return new ContractInfo(properties);\n };\n\n /**\n * Encodes the specified ContractInfo message. Does not implicitly {@link proto.ContractGetInfoResponse.ContractInfo.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @static\n * @param {proto.ContractGetInfoResponse.IContractInfo} m ContractInfo message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractInfo.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n if (m.contractAccountID != null && Object.hasOwnProperty.call(m, \"contractAccountID\"))\n w.uint32(26).string(m.contractAccountID);\n if (m.adminKey != null && Object.hasOwnProperty.call(m, \"adminKey\"))\n $root.proto.Key.encode(m.adminKey, w.uint32(34).fork()).ldelim();\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.Timestamp.encode(m.expirationTime, w.uint32(42).fork()).ldelim();\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(50).fork()).ldelim();\n if (m.storage != null && Object.hasOwnProperty.call(m, \"storage\"))\n w.uint32(56).int64(m.storage);\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(66).string(m.memo);\n if (m.balance != null && Object.hasOwnProperty.call(m, \"balance\"))\n w.uint32(72).uint64(m.balance);\n if (m.deleted != null && Object.hasOwnProperty.call(m, \"deleted\"))\n w.uint32(80).bool(m.deleted);\n if (m.tokenRelationships != null && m.tokenRelationships.length) {\n for (var i = 0; i < m.tokenRelationships.length; ++i)\n $root.proto.TokenRelationship.encode(m.tokenRelationships[i], w.uint32(90).fork()).ldelim();\n }\n if (m.ledgerId != null && Object.hasOwnProperty.call(m, \"ledgerId\"))\n w.uint32(98).bytes(m.ledgerId);\n return w;\n };\n\n /**\n * Decodes a ContractInfo message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractGetInfoResponse.ContractInfo\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractGetInfoResponse.ContractInfo} ContractInfo\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractInfo.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractGetInfoResponse.ContractInfo();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.contractAccountID = r.string();\n break;\n case 4:\n m.adminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 5:\n m.expirationTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 6:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 7:\n m.storage = r.int64();\n break;\n case 8:\n m.memo = r.string();\n break;\n case 9:\n m.balance = r.uint64();\n break;\n case 10:\n m.deleted = r.bool();\n break;\n case 11:\n if (!(m.tokenRelationships && m.tokenRelationships.length))\n m.tokenRelationships = [];\n m.tokenRelationships.push($root.proto.TokenRelationship.decode(r, r.uint32()));\n break;\n case 12:\n m.ledgerId = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractInfo;\n })();\n\n return ContractGetInfoResponse;\n })();\n\n proto.ContractGetBytecodeQuery = (function() {\n\n /**\n * Properties of a ContractGetBytecodeQuery.\n * @memberof proto\n * @interface IContractGetBytecodeQuery\n * @property {proto.IQueryHeader|null} [header] standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.IContractID|null} [contractID] the contract for which information is requested\n */\n\n /**\n * Constructs a new ContractGetBytecodeQuery.\n * @memberof proto\n * @classdesc Get the bytecode for a smart contract instance\n * @implements IContractGetBytecodeQuery\n * @constructor\n * @param {proto.IContractGetBytecodeQuery=} [p] Properties to set\n */\n function ContractGetBytecodeQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.ContractGetBytecodeQuery\n * @instance\n */\n ContractGetBytecodeQuery.prototype.header = null;\n\n /**\n * the contract for which information is requested\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractGetBytecodeQuery\n * @instance\n */\n ContractGetBytecodeQuery.prototype.contractID = null;\n\n /**\n * Creates a new ContractGetBytecodeQuery instance using the specified properties.\n * @function create\n * @memberof proto.ContractGetBytecodeQuery\n * @static\n * @param {proto.IContractGetBytecodeQuery=} [properties] Properties to set\n * @returns {proto.ContractGetBytecodeQuery} ContractGetBytecodeQuery instance\n */\n ContractGetBytecodeQuery.create = function create(properties) {\n return new ContractGetBytecodeQuery(properties);\n };\n\n /**\n * Encodes the specified ContractGetBytecodeQuery message. Does not implicitly {@link proto.ContractGetBytecodeQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractGetBytecodeQuery\n * @static\n * @param {proto.IContractGetBytecodeQuery} m ContractGetBytecodeQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractGetBytecodeQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ContractGetBytecodeQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractGetBytecodeQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractGetBytecodeQuery} ContractGetBytecodeQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractGetBytecodeQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractGetBytecodeQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractGetBytecodeQuery;\n })();\n\n proto.ContractGetBytecodeResponse = (function() {\n\n /**\n * Properties of a ContractGetBytecodeResponse.\n * @memberof proto\n * @interface IContractGetBytecodeResponse\n * @property {proto.IResponseHeader|null} [header] standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {Uint8Array|null} [bytecode] the bytecode\n */\n\n /**\n * Constructs a new ContractGetBytecodeResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node ContractGetBytecodeQuery\n * @implements IContractGetBytecodeResponse\n * @constructor\n * @param {proto.IContractGetBytecodeResponse=} [p] Properties to set\n */\n function ContractGetBytecodeResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.ContractGetBytecodeResponse\n * @instance\n */\n ContractGetBytecodeResponse.prototype.header = null;\n\n /**\n * the bytecode\n * @member {Uint8Array} bytecode\n * @memberof proto.ContractGetBytecodeResponse\n * @instance\n */\n ContractGetBytecodeResponse.prototype.bytecode = $util.newBuffer([]);\n\n /**\n * Creates a new ContractGetBytecodeResponse instance using the specified properties.\n * @function create\n * @memberof proto.ContractGetBytecodeResponse\n * @static\n * @param {proto.IContractGetBytecodeResponse=} [properties] Properties to set\n * @returns {proto.ContractGetBytecodeResponse} ContractGetBytecodeResponse instance\n */\n ContractGetBytecodeResponse.create = function create(properties) {\n return new ContractGetBytecodeResponse(properties);\n };\n\n /**\n * Encodes the specified ContractGetBytecodeResponse message. Does not implicitly {@link proto.ContractGetBytecodeResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractGetBytecodeResponse\n * @static\n * @param {proto.IContractGetBytecodeResponse} m ContractGetBytecodeResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractGetBytecodeResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.bytecode != null && Object.hasOwnProperty.call(m, \"bytecode\"))\n w.uint32(50).bytes(m.bytecode);\n return w;\n };\n\n /**\n * Decodes a ContractGetBytecodeResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractGetBytecodeResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractGetBytecodeResponse} ContractGetBytecodeResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractGetBytecodeResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractGetBytecodeResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 6:\n m.bytecode = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractGetBytecodeResponse;\n })();\n\n proto.ContractGetRecordsQuery = (function() {\n\n /**\n * Properties of a ContractGetRecordsQuery.\n * @memberof proto\n * @interface IContractGetRecordsQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of response is requested (cost, state proof, both, or neither).\n * @property {proto.IContractID|null} [contractID] The smart contract instance for which the records should be retrieved\n */\n\n /**\n * Constructs a new ContractGetRecordsQuery.\n * @memberof proto\n * @classdesc Before v0.9.0, requested records of all transactions against the given contract in the last 25 hours.\n * @implements IContractGetRecordsQuery\n * @constructor\n * @param {proto.IContractGetRecordsQuery=} [p] Properties to set\n */\n function ContractGetRecordsQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.ContractGetRecordsQuery\n * @instance\n */\n ContractGetRecordsQuery.prototype.header = null;\n\n /**\n * The smart contract instance for which the records should be retrieved\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractGetRecordsQuery\n * @instance\n */\n ContractGetRecordsQuery.prototype.contractID = null;\n\n /**\n * Creates a new ContractGetRecordsQuery instance using the specified properties.\n * @function create\n * @memberof proto.ContractGetRecordsQuery\n * @static\n * @param {proto.IContractGetRecordsQuery=} [properties] Properties to set\n * @returns {proto.ContractGetRecordsQuery} ContractGetRecordsQuery instance\n */\n ContractGetRecordsQuery.create = function create(properties) {\n return new ContractGetRecordsQuery(properties);\n };\n\n /**\n * Encodes the specified ContractGetRecordsQuery message. Does not implicitly {@link proto.ContractGetRecordsQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractGetRecordsQuery\n * @static\n * @param {proto.IContractGetRecordsQuery} m ContractGetRecordsQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractGetRecordsQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ContractGetRecordsQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractGetRecordsQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractGetRecordsQuery} ContractGetRecordsQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractGetRecordsQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractGetRecordsQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractGetRecordsQuery;\n })();\n\n proto.ContractGetRecordsResponse = (function() {\n\n /**\n * Properties of a ContractGetRecordsResponse.\n * @memberof proto\n * @interface IContractGetRecordsResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof, or both, or neither\n * @property {proto.IContractID|null} [contractID] The smart contract instance that this record is for\n * @property {Array.|null} [records] List of records, each with contractCreateResult or contractCallResult as its body\n */\n\n /**\n * Constructs a new ContractGetRecordsResponse.\n * @memberof proto\n * @classdesc Before v0.9.0, returned records of all transactions against the given contract in the last 25 hours.\n * @implements IContractGetRecordsResponse\n * @constructor\n * @param {proto.IContractGetRecordsResponse=} [p] Properties to set\n */\n function ContractGetRecordsResponse(p) {\n this.records = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof, or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.ContractGetRecordsResponse\n * @instance\n */\n ContractGetRecordsResponse.prototype.header = null;\n\n /**\n * The smart contract instance that this record is for\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.ContractGetRecordsResponse\n * @instance\n */\n ContractGetRecordsResponse.prototype.contractID = null;\n\n /**\n * List of records, each with contractCreateResult or contractCallResult as its body\n * @member {Array.} records\n * @memberof proto.ContractGetRecordsResponse\n * @instance\n */\n ContractGetRecordsResponse.prototype.records = $util.emptyArray;\n\n /**\n * Creates a new ContractGetRecordsResponse instance using the specified properties.\n * @function create\n * @memberof proto.ContractGetRecordsResponse\n * @static\n * @param {proto.IContractGetRecordsResponse=} [properties] Properties to set\n * @returns {proto.ContractGetRecordsResponse} ContractGetRecordsResponse instance\n */\n ContractGetRecordsResponse.create = function create(properties) {\n return new ContractGetRecordsResponse(properties);\n };\n\n /**\n * Encodes the specified ContractGetRecordsResponse message. Does not implicitly {@link proto.ContractGetRecordsResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.ContractGetRecordsResponse\n * @static\n * @param {proto.IContractGetRecordsResponse} m ContractGetRecordsResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ContractGetRecordsResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(18).fork()).ldelim();\n if (m.records != null && m.records.length) {\n for (var i = 0; i < m.records.length; ++i)\n $root.proto.TransactionRecord.encode(m.records[i], w.uint32(26).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a ContractGetRecordsResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ContractGetRecordsResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ContractGetRecordsResponse} ContractGetRecordsResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ContractGetRecordsResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ContractGetRecordsResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 3:\n if (!(m.records && m.records.length))\n m.records = [];\n m.records.push($root.proto.TransactionRecord.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ContractGetRecordsResponse;\n })();\n\n proto.TransactionRecord = (function() {\n\n /**\n * Properties of a TransactionRecord.\n * @memberof proto\n * @interface ITransactionRecord\n * @property {proto.ITransactionReceipt|null} [receipt] The status (reach consensus, or failed, or is unknown) and the ID of any new\n * account/file/instance created.\n * @property {Uint8Array|null} [transactionHash] The hash of the Transaction that executed (not the hash of any Transaction that failed for\n * having a duplicate TransactionID)\n * @property {proto.ITimestamp|null} [consensusTimestamp] The consensus timestamp (or null if didn't reach consensus yet)\n * @property {proto.ITransactionID|null} [transactionID] The ID of the transaction this record represents\n * @property {string|null} [memo] The memo that was submitted as part of the transaction (max 100 bytes)\n * @property {Long|null} [transactionFee] The actual transaction fee charged, not the original transactionFee value from\n * TransactionBody\n * @property {proto.IContractFunctionResult|null} [contractCallResult] Record of the value returned by the smart contract function (if it completed and didn't\n * fail) from ContractCallTransaction\n * @property {proto.IContractFunctionResult|null} [contractCreateResult] Record of the value returned by the smart contract constructor (if it completed and\n * didn't fail) from ContractCreateTransaction\n * @property {proto.ITransferList|null} [transferList] All hbar transfers as a result of this transaction, such as fees, or transfers performed by\n * the transaction, or by a smart contract it calls, or by the creation of threshold records\n * that it triggers.\n * @property {Array.|null} [tokenTransferLists] All Token transfers as a result of this transaction\n * @property {proto.IScheduleID|null} [scheduleRef] Reference to the scheduled transaction ID that this transaction record represent\n * @property {Array.|null} [assessedCustomFees] All custom fees that were assessed during a CryptoTransfer, and must be paid if the\n * transaction status resolved to SUCCESS\n * @property {Array.|null} [automaticTokenAssociations] All token associations implicitly created while handling this transaction\n * @property {proto.ITimestamp|null} [parentConsensusTimestamp] In the record of an internal transaction, the consensus timestamp of the user\n * transaction that spawned it.\n * @property {Uint8Array|null} [alias] In the record of an internal CryptoCreate transaction triggered by a user\n * transaction with a (previously unused) alias, the new account's alias.\n * @property {Array.|null} [cryptoAdjustments] The current balances of any adjusted crypto allowances as a result of this\n * transaction. This field will only be populated for CryptoAdjustAllowanceTransaction.\n * @property {Array.|null} [nftAdjustments] The current balances of any adjusted non-fungible token allowances as a result of this\n * transaction. This field will only be populated for CryptoAdjustAllowanceTransaction.\n * @property {Array.|null} [tokenAdjustments] The current balances of any adjusted fungible token allowances as a result of this\n * transaction. This field will only be populated for CryptoAdjustAllowanceTransaction.\n */\n\n /**\n * Constructs a new TransactionRecord.\n * @memberof proto\n * @classdesc Response when the client sends the node TransactionGetRecordResponse\n * @implements ITransactionRecord\n * @constructor\n * @param {proto.ITransactionRecord=} [p] Properties to set\n */\n function TransactionRecord(p) {\n this.tokenTransferLists = [];\n this.assessedCustomFees = [];\n this.automaticTokenAssociations = [];\n this.cryptoAdjustments = [];\n this.nftAdjustments = [];\n this.tokenAdjustments = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The status (reach consensus, or failed, or is unknown) and the ID of any new\n * account/file/instance created.\n * @member {proto.ITransactionReceipt|null|undefined} receipt\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.receipt = null;\n\n /**\n * The hash of the Transaction that executed (not the hash of any Transaction that failed for\n * having a duplicate TransactionID)\n * @member {Uint8Array} transactionHash\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.transactionHash = $util.newBuffer([]);\n\n /**\n * The consensus timestamp (or null if didn't reach consensus yet)\n * @member {proto.ITimestamp|null|undefined} consensusTimestamp\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.consensusTimestamp = null;\n\n /**\n * The ID of the transaction this record represents\n * @member {proto.ITransactionID|null|undefined} transactionID\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.transactionID = null;\n\n /**\n * The memo that was submitted as part of the transaction (max 100 bytes)\n * @member {string} memo\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.memo = \"\";\n\n /**\n * The actual transaction fee charged, not the original transactionFee value from\n * TransactionBody\n * @member {Long} transactionFee\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.transactionFee = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Record of the value returned by the smart contract function (if it completed and didn't\n * fail) from ContractCallTransaction\n * @member {proto.IContractFunctionResult|null|undefined} contractCallResult\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.contractCallResult = null;\n\n /**\n * Record of the value returned by the smart contract constructor (if it completed and\n * didn't fail) from ContractCreateTransaction\n * @member {proto.IContractFunctionResult|null|undefined} contractCreateResult\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.contractCreateResult = null;\n\n /**\n * All hbar transfers as a result of this transaction, such as fees, or transfers performed by\n * the transaction, or by a smart contract it calls, or by the creation of threshold records\n * that it triggers.\n * @member {proto.ITransferList|null|undefined} transferList\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.transferList = null;\n\n /**\n * All Token transfers as a result of this transaction\n * @member {Array.} tokenTransferLists\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.tokenTransferLists = $util.emptyArray;\n\n /**\n * Reference to the scheduled transaction ID that this transaction record represent\n * @member {proto.IScheduleID|null|undefined} scheduleRef\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.scheduleRef = null;\n\n /**\n * All custom fees that were assessed during a CryptoTransfer, and must be paid if the\n * transaction status resolved to SUCCESS\n * @member {Array.} assessedCustomFees\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.assessedCustomFees = $util.emptyArray;\n\n /**\n * All token associations implicitly created while handling this transaction\n * @member {Array.} automaticTokenAssociations\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.automaticTokenAssociations = $util.emptyArray;\n\n /**\n * In the record of an internal transaction, the consensus timestamp of the user\n * transaction that spawned it.\n * @member {proto.ITimestamp|null|undefined} parentConsensusTimestamp\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.parentConsensusTimestamp = null;\n\n /**\n * In the record of an internal CryptoCreate transaction triggered by a user\n * transaction with a (previously unused) alias, the new account's alias.\n * @member {Uint8Array} alias\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.alias = $util.newBuffer([]);\n\n /**\n * The current balances of any adjusted crypto allowances as a result of this\n * transaction. This field will only be populated for CryptoAdjustAllowanceTransaction.\n * @member {Array.} cryptoAdjustments\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.cryptoAdjustments = $util.emptyArray;\n\n /**\n * The current balances of any adjusted non-fungible token allowances as a result of this\n * transaction. This field will only be populated for CryptoAdjustAllowanceTransaction.\n * @member {Array.} nftAdjustments\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.nftAdjustments = $util.emptyArray;\n\n /**\n * The current balances of any adjusted fungible token allowances as a result of this\n * transaction. This field will only be populated for CryptoAdjustAllowanceTransaction.\n * @member {Array.} tokenAdjustments\n * @memberof proto.TransactionRecord\n * @instance\n */\n TransactionRecord.prototype.tokenAdjustments = $util.emptyArray;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * TransactionRecord body.\n * @member {\"contractCallResult\"|\"contractCreateResult\"|undefined} body\n * @memberof proto.TransactionRecord\n * @instance\n */\n Object.defineProperty(TransactionRecord.prototype, \"body\", {\n get: $util.oneOfGetter($oneOfFields = [\"contractCallResult\", \"contractCreateResult\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new TransactionRecord instance using the specified properties.\n * @function create\n * @memberof proto.TransactionRecord\n * @static\n * @param {proto.ITransactionRecord=} [properties] Properties to set\n * @returns {proto.TransactionRecord} TransactionRecord instance\n */\n TransactionRecord.create = function create(properties) {\n return new TransactionRecord(properties);\n };\n\n /**\n * Encodes the specified TransactionRecord message. Does not implicitly {@link proto.TransactionRecord.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionRecord\n * @static\n * @param {proto.ITransactionRecord} m TransactionRecord message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionRecord.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.receipt != null && Object.hasOwnProperty.call(m, \"receipt\"))\n $root.proto.TransactionReceipt.encode(m.receipt, w.uint32(10).fork()).ldelim();\n if (m.transactionHash != null && Object.hasOwnProperty.call(m, \"transactionHash\"))\n w.uint32(18).bytes(m.transactionHash);\n if (m.consensusTimestamp != null && Object.hasOwnProperty.call(m, \"consensusTimestamp\"))\n $root.proto.Timestamp.encode(m.consensusTimestamp, w.uint32(26).fork()).ldelim();\n if (m.transactionID != null && Object.hasOwnProperty.call(m, \"transactionID\"))\n $root.proto.TransactionID.encode(m.transactionID, w.uint32(34).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(42).string(m.memo);\n if (m.transactionFee != null && Object.hasOwnProperty.call(m, \"transactionFee\"))\n w.uint32(48).uint64(m.transactionFee);\n if (m.contractCallResult != null && Object.hasOwnProperty.call(m, \"contractCallResult\"))\n $root.proto.ContractFunctionResult.encode(m.contractCallResult, w.uint32(58).fork()).ldelim();\n if (m.contractCreateResult != null && Object.hasOwnProperty.call(m, \"contractCreateResult\"))\n $root.proto.ContractFunctionResult.encode(m.contractCreateResult, w.uint32(66).fork()).ldelim();\n if (m.transferList != null && Object.hasOwnProperty.call(m, \"transferList\"))\n $root.proto.TransferList.encode(m.transferList, w.uint32(82).fork()).ldelim();\n if (m.tokenTransferLists != null && m.tokenTransferLists.length) {\n for (var i = 0; i < m.tokenTransferLists.length; ++i)\n $root.proto.TokenTransferList.encode(m.tokenTransferLists[i], w.uint32(90).fork()).ldelim();\n }\n if (m.scheduleRef != null && Object.hasOwnProperty.call(m, \"scheduleRef\"))\n $root.proto.ScheduleID.encode(m.scheduleRef, w.uint32(98).fork()).ldelim();\n if (m.assessedCustomFees != null && m.assessedCustomFees.length) {\n for (var i = 0; i < m.assessedCustomFees.length; ++i)\n $root.proto.AssessedCustomFee.encode(m.assessedCustomFees[i], w.uint32(106).fork()).ldelim();\n }\n if (m.automaticTokenAssociations != null && m.automaticTokenAssociations.length) {\n for (var i = 0; i < m.automaticTokenAssociations.length; ++i)\n $root.proto.TokenAssociation.encode(m.automaticTokenAssociations[i], w.uint32(114).fork()).ldelim();\n }\n if (m.parentConsensusTimestamp != null && Object.hasOwnProperty.call(m, \"parentConsensusTimestamp\"))\n $root.proto.Timestamp.encode(m.parentConsensusTimestamp, w.uint32(122).fork()).ldelim();\n if (m.alias != null && Object.hasOwnProperty.call(m, \"alias\"))\n w.uint32(130).bytes(m.alias);\n if (m.cryptoAdjustments != null && m.cryptoAdjustments.length) {\n for (var i = 0; i < m.cryptoAdjustments.length; ++i)\n $root.proto.CryptoAllowance.encode(m.cryptoAdjustments[i], w.uint32(138).fork()).ldelim();\n }\n if (m.nftAdjustments != null && m.nftAdjustments.length) {\n for (var i = 0; i < m.nftAdjustments.length; ++i)\n $root.proto.NftAllowance.encode(m.nftAdjustments[i], w.uint32(146).fork()).ldelim();\n }\n if (m.tokenAdjustments != null && m.tokenAdjustments.length) {\n for (var i = 0; i < m.tokenAdjustments.length; ++i)\n $root.proto.TokenAllowance.encode(m.tokenAdjustments[i], w.uint32(154).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TransactionRecord message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionRecord\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionRecord} TransactionRecord\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionRecord.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionRecord();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.receipt = $root.proto.TransactionReceipt.decode(r, r.uint32());\n break;\n case 2:\n m.transactionHash = r.bytes();\n break;\n case 3:\n m.consensusTimestamp = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 4:\n m.transactionID = $root.proto.TransactionID.decode(r, r.uint32());\n break;\n case 5:\n m.memo = r.string();\n break;\n case 6:\n m.transactionFee = r.uint64();\n break;\n case 7:\n m.contractCallResult = $root.proto.ContractFunctionResult.decode(r, r.uint32());\n break;\n case 8:\n m.contractCreateResult = $root.proto.ContractFunctionResult.decode(r, r.uint32());\n break;\n case 10:\n m.transferList = $root.proto.TransferList.decode(r, r.uint32());\n break;\n case 11:\n if (!(m.tokenTransferLists && m.tokenTransferLists.length))\n m.tokenTransferLists = [];\n m.tokenTransferLists.push($root.proto.TokenTransferList.decode(r, r.uint32()));\n break;\n case 12:\n m.scheduleRef = $root.proto.ScheduleID.decode(r, r.uint32());\n break;\n case 13:\n if (!(m.assessedCustomFees && m.assessedCustomFees.length))\n m.assessedCustomFees = [];\n m.assessedCustomFees.push($root.proto.AssessedCustomFee.decode(r, r.uint32()));\n break;\n case 14:\n if (!(m.automaticTokenAssociations && m.automaticTokenAssociations.length))\n m.automaticTokenAssociations = [];\n m.automaticTokenAssociations.push($root.proto.TokenAssociation.decode(r, r.uint32()));\n break;\n case 15:\n m.parentConsensusTimestamp = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 16:\n m.alias = r.bytes();\n break;\n case 17:\n if (!(m.cryptoAdjustments && m.cryptoAdjustments.length))\n m.cryptoAdjustments = [];\n m.cryptoAdjustments.push($root.proto.CryptoAllowance.decode(r, r.uint32()));\n break;\n case 18:\n if (!(m.nftAdjustments && m.nftAdjustments.length))\n m.nftAdjustments = [];\n m.nftAdjustments.push($root.proto.NftAllowance.decode(r, r.uint32()));\n break;\n case 19:\n if (!(m.tokenAdjustments && m.tokenAdjustments.length))\n m.tokenAdjustments = [];\n m.tokenAdjustments.push($root.proto.TokenAllowance.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionRecord;\n })();\n\n proto.TransactionReceipt = (function() {\n\n /**\n * Properties of a TransactionReceipt.\n * @memberof proto\n * @interface ITransactionReceipt\n * @property {proto.ResponseCodeEnum|null} [status] The consensus status of the transaction; is UNKNOWN if consensus has not been reached, or if\n * the associated transaction did not have a valid payer signature\n * @property {proto.IAccountID|null} [accountID] In the receipt of a CryptoCreate, the id of the newly created account\n * @property {proto.IFileID|null} [fileID] In the receipt of a FileCreate, the id of the newly created file\n * @property {proto.IContractID|null} [contractID] In the receipt of a ContractCreate, the id of the newly created contract\n * @property {proto.IExchangeRateSet|null} [exchangeRate] The exchange rates in effect when the transaction reached consensus\n * @property {proto.ITopicID|null} [topicID] In the receipt of a ConsensusCreateTopic, the id of the newly created topic.\n * @property {Long|null} [topicSequenceNumber] In the receipt of a ConsensusSubmitMessage, the new sequence number of the topic that\n * received the message\n * @property {Uint8Array|null} [topicRunningHash] In the receipt of a ConsensusSubmitMessage, the new running hash of the topic that received\n * the message. This 48-byte field is the output of a particular SHA-384 digest whose input\n * data are determined by the value of the topicRunningHashVersion below. The bytes of each\n * uint64 or uint32 are to be in Big-Endian format.\n * \n * IF the topicRunningHashVersion is '0' or '1', then the input data to the SHA-384 digest are,\n * in order:\n * ---\n * 1. The previous running hash of the topic (48 bytes)\n * 2. The topic's shard (8 bytes)\n * 3. The topic's realm (8 bytes)\n * 4. The topic's number (8 bytes)\n * 5. The number of seconds since the epoch before the ConsensusSubmitMessage reached\n * consensus (8 bytes)\n * 6. The number of nanoseconds since 5. before the ConsensusSubmitMessage reached\n * consensus (4 bytes)\n * 7. The topicSequenceNumber from above (8 bytes)\n * 8. The message bytes from the ConsensusSubmitMessage (variable).\n * \n * IF the topicRunningHashVersion is '2', then the input data to the SHA-384 digest are, in\n * order:\n * ---\n * 1. The previous running hash of the topic (48 bytes)\n * 2. The topicRunningHashVersion below (8 bytes)\n * 3. The topic's shard (8 bytes)\n * 4. The topic's realm (8 bytes)\n * 5. The topic's number (8 bytes)\n * 6. The number of seconds since the epoch before the ConsensusSubmitMessage reached\n * consensus (8 bytes)\n * 7. The number of nanoseconds since 6. before the ConsensusSubmitMessage reached\n * consensus (4 bytes)\n * 8. The topicSequenceNumber from above (8 bytes)\n * 9. The output of the SHA-384 digest of the message bytes from the\n * consensusSubmitMessage (48 bytes)\n * \n * Otherwise, IF the topicRunningHashVersion is '3', then the input data to the SHA-384 digest\n * are, in order:\n * ---\n * 1. The previous running hash of the topic (48 bytes)\n * 2. The topicRunningHashVersion below (8 bytes)\n * 3. The payer account's shard (8 bytes)\n * 4. The payer account's realm (8 bytes)\n * 5. The payer account's number (8 bytes)\n * 6. The topic's shard (8 bytes)\n * 7. The topic's realm (8 bytes)\n * 8. The topic's number (8 bytes)\n * 9. The number of seconds since the epoch before the ConsensusSubmitMessage reached\n * consensus (8 bytes)\n * 10. The number of nanoseconds since 9. before the ConsensusSubmitMessage reached\n * consensus (4 bytes)\n * 11. The topicSequenceNumber from above (8 bytes)\n * 12. The output of the SHA-384 digest of the message bytes from the\n * consensusSubmitMessage (48 bytes)\n * @property {Long|null} [topicRunningHashVersion] In the receipt of a ConsensusSubmitMessage, the version of the SHA-384 digest used to update\n * the running hash.\n * @property {proto.ITokenID|null} [tokenID] In the receipt of a CreateToken, the id of the newly created token\n * @property {Long|null} [newTotalSupply] In the receipt of TokenMint, TokenWipe, TokenBurn, For fungible tokens - the current total\n * supply of this token. For non fungible tokens - the total number of NFTs issued for a given\n * tokenID\n * @property {proto.IScheduleID|null} [scheduleID] In the receipt of a ScheduleCreate, the id of the newly created Scheduled Entity\n * @property {proto.ITransactionID|null} [scheduledTransactionID] In the receipt of a ScheduleCreate or ScheduleSign that resolves to SUCCESS, the\n * TransactionID that should be used to query for the receipt or record of the relevant\n * scheduled transaction\n * @property {Array.|null} [serialNumbers] In the receipt of a TokenMint for tokens of type NON_FUNGIBLE_UNIQUE, the serial numbers of\n * the newly created NFTs\n */\n\n /**\n * Constructs a new TransactionReceipt.\n * @memberof proto\n * @classdesc The summary of a transaction's result so far. If the transaction has not reached consensus, this\n * result will be necessarily incomplete.\n * @implements ITransactionReceipt\n * @constructor\n * @param {proto.ITransactionReceipt=} [p] Properties to set\n */\n function TransactionReceipt(p) {\n this.serialNumbers = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The consensus status of the transaction; is UNKNOWN if consensus has not been reached, or if\n * the associated transaction did not have a valid payer signature\n * @member {proto.ResponseCodeEnum} status\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.status = 0;\n\n /**\n * In the receipt of a CryptoCreate, the id of the newly created account\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.accountID = null;\n\n /**\n * In the receipt of a FileCreate, the id of the newly created file\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.fileID = null;\n\n /**\n * In the receipt of a ContractCreate, the id of the newly created contract\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.contractID = null;\n\n /**\n * The exchange rates in effect when the transaction reached consensus\n * @member {proto.IExchangeRateSet|null|undefined} exchangeRate\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.exchangeRate = null;\n\n /**\n * In the receipt of a ConsensusCreateTopic, the id of the newly created topic.\n * @member {proto.ITopicID|null|undefined} topicID\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.topicID = null;\n\n /**\n * In the receipt of a ConsensusSubmitMessage, the new sequence number of the topic that\n * received the message\n * @member {Long} topicSequenceNumber\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.topicSequenceNumber = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * In the receipt of a ConsensusSubmitMessage, the new running hash of the topic that received\n * the message. This 48-byte field is the output of a particular SHA-384 digest whose input\n * data are determined by the value of the topicRunningHashVersion below. The bytes of each\n * uint64 or uint32 are to be in Big-Endian format.\n * \n * IF the topicRunningHashVersion is '0' or '1', then the input data to the SHA-384 digest are,\n * in order:\n * ---\n * 1. The previous running hash of the topic (48 bytes)\n * 2. The topic's shard (8 bytes)\n * 3. The topic's realm (8 bytes)\n * 4. The topic's number (8 bytes)\n * 5. The number of seconds since the epoch before the ConsensusSubmitMessage reached\n * consensus (8 bytes)\n * 6. The number of nanoseconds since 5. before the ConsensusSubmitMessage reached\n * consensus (4 bytes)\n * 7. The topicSequenceNumber from above (8 bytes)\n * 8. The message bytes from the ConsensusSubmitMessage (variable).\n * \n * IF the topicRunningHashVersion is '2', then the input data to the SHA-384 digest are, in\n * order:\n * ---\n * 1. The previous running hash of the topic (48 bytes)\n * 2. The topicRunningHashVersion below (8 bytes)\n * 3. The topic's shard (8 bytes)\n * 4. The topic's realm (8 bytes)\n * 5. The topic's number (8 bytes)\n * 6. The number of seconds since the epoch before the ConsensusSubmitMessage reached\n * consensus (8 bytes)\n * 7. The number of nanoseconds since 6. before the ConsensusSubmitMessage reached\n * consensus (4 bytes)\n * 8. The topicSequenceNumber from above (8 bytes)\n * 9. The output of the SHA-384 digest of the message bytes from the\n * consensusSubmitMessage (48 bytes)\n * \n * Otherwise, IF the topicRunningHashVersion is '3', then the input data to the SHA-384 digest\n * are, in order:\n * ---\n * 1. The previous running hash of the topic (48 bytes)\n * 2. The topicRunningHashVersion below (8 bytes)\n * 3. The payer account's shard (8 bytes)\n * 4. The payer account's realm (8 bytes)\n * 5. The payer account's number (8 bytes)\n * 6. The topic's shard (8 bytes)\n * 7. The topic's realm (8 bytes)\n * 8. The topic's number (8 bytes)\n * 9. The number of seconds since the epoch before the ConsensusSubmitMessage reached\n * consensus (8 bytes)\n * 10. The number of nanoseconds since 9. before the ConsensusSubmitMessage reached\n * consensus (4 bytes)\n * 11. The topicSequenceNumber from above (8 bytes)\n * 12. The output of the SHA-384 digest of the message bytes from the\n * consensusSubmitMessage (48 bytes)\n * @member {Uint8Array} topicRunningHash\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.topicRunningHash = $util.newBuffer([]);\n\n /**\n * In the receipt of a ConsensusSubmitMessage, the version of the SHA-384 digest used to update\n * the running hash.\n * @member {Long} topicRunningHashVersion\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.topicRunningHashVersion = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * In the receipt of a CreateToken, the id of the newly created token\n * @member {proto.ITokenID|null|undefined} tokenID\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.tokenID = null;\n\n /**\n * In the receipt of TokenMint, TokenWipe, TokenBurn, For fungible tokens - the current total\n * supply of this token. For non fungible tokens - the total number of NFTs issued for a given\n * tokenID\n * @member {Long} newTotalSupply\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.newTotalSupply = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * In the receipt of a ScheduleCreate, the id of the newly created Scheduled Entity\n * @member {proto.IScheduleID|null|undefined} scheduleID\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.scheduleID = null;\n\n /**\n * In the receipt of a ScheduleCreate or ScheduleSign that resolves to SUCCESS, the\n * TransactionID that should be used to query for the receipt or record of the relevant\n * scheduled transaction\n * @member {proto.ITransactionID|null|undefined} scheduledTransactionID\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.scheduledTransactionID = null;\n\n /**\n * In the receipt of a TokenMint for tokens of type NON_FUNGIBLE_UNIQUE, the serial numbers of\n * the newly created NFTs\n * @member {Array.} serialNumbers\n * @memberof proto.TransactionReceipt\n * @instance\n */\n TransactionReceipt.prototype.serialNumbers = $util.emptyArray;\n\n /**\n * Creates a new TransactionReceipt instance using the specified properties.\n * @function create\n * @memberof proto.TransactionReceipt\n * @static\n * @param {proto.ITransactionReceipt=} [properties] Properties to set\n * @returns {proto.TransactionReceipt} TransactionReceipt instance\n */\n TransactionReceipt.create = function create(properties) {\n return new TransactionReceipt(properties);\n };\n\n /**\n * Encodes the specified TransactionReceipt message. Does not implicitly {@link proto.TransactionReceipt.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionReceipt\n * @static\n * @param {proto.ITransactionReceipt} m TransactionReceipt message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionReceipt.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.status != null && Object.hasOwnProperty.call(m, \"status\"))\n w.uint32(8).int32(m.status);\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(26).fork()).ldelim();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(34).fork()).ldelim();\n if (m.exchangeRate != null && Object.hasOwnProperty.call(m, \"exchangeRate\"))\n $root.proto.ExchangeRateSet.encode(m.exchangeRate, w.uint32(42).fork()).ldelim();\n if (m.topicID != null && Object.hasOwnProperty.call(m, \"topicID\"))\n $root.proto.TopicID.encode(m.topicID, w.uint32(50).fork()).ldelim();\n if (m.topicSequenceNumber != null && Object.hasOwnProperty.call(m, \"topicSequenceNumber\"))\n w.uint32(56).uint64(m.topicSequenceNumber);\n if (m.topicRunningHash != null && Object.hasOwnProperty.call(m, \"topicRunningHash\"))\n w.uint32(66).bytes(m.topicRunningHash);\n if (m.topicRunningHashVersion != null && Object.hasOwnProperty.call(m, \"topicRunningHashVersion\"))\n w.uint32(72).uint64(m.topicRunningHashVersion);\n if (m.tokenID != null && Object.hasOwnProperty.call(m, \"tokenID\"))\n $root.proto.TokenID.encode(m.tokenID, w.uint32(82).fork()).ldelim();\n if (m.newTotalSupply != null && Object.hasOwnProperty.call(m, \"newTotalSupply\"))\n w.uint32(88).uint64(m.newTotalSupply);\n if (m.scheduleID != null && Object.hasOwnProperty.call(m, \"scheduleID\"))\n $root.proto.ScheduleID.encode(m.scheduleID, w.uint32(98).fork()).ldelim();\n if (m.scheduledTransactionID != null && Object.hasOwnProperty.call(m, \"scheduledTransactionID\"))\n $root.proto.TransactionID.encode(m.scheduledTransactionID, w.uint32(106).fork()).ldelim();\n if (m.serialNumbers != null && m.serialNumbers.length) {\n w.uint32(114).fork();\n for (var i = 0; i < m.serialNumbers.length; ++i)\n w.int64(m.serialNumbers[i]);\n w.ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TransactionReceipt message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionReceipt\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionReceipt} TransactionReceipt\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionReceipt.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionReceipt();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.status = r.int32();\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 4:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n case 5:\n m.exchangeRate = $root.proto.ExchangeRateSet.decode(r, r.uint32());\n break;\n case 6:\n m.topicID = $root.proto.TopicID.decode(r, r.uint32());\n break;\n case 7:\n m.topicSequenceNumber = r.uint64();\n break;\n case 8:\n m.topicRunningHash = r.bytes();\n break;\n case 9:\n m.topicRunningHashVersion = r.uint64();\n break;\n case 10:\n m.tokenID = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 11:\n m.newTotalSupply = r.uint64();\n break;\n case 12:\n m.scheduleID = $root.proto.ScheduleID.decode(r, r.uint32());\n break;\n case 13:\n m.scheduledTransactionID = $root.proto.TransactionID.decode(r, r.uint32());\n break;\n case 14:\n if (!(m.serialNumbers && m.serialNumbers.length))\n m.serialNumbers = [];\n if ((t & 7) === 2) {\n var c2 = r.uint32() + r.pos;\n while (r.pos < c2)\n m.serialNumbers.push(r.int64());\n } else\n m.serialNumbers.push(r.int64());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionReceipt;\n })();\n\n proto.ExchangeRate = (function() {\n\n /**\n * Properties of an ExchangeRate.\n * @memberof proto\n * @interface IExchangeRate\n * @property {number|null} [hbarEquiv] Denominator in calculation of exchange rate between hbar and cents\n * @property {number|null} [centEquiv] Numerator in calculation of exchange rate between hbar and cents\n * @property {proto.ITimestampSeconds|null} [expirationTime] Expiration time in seconds for this exchange rate\n */\n\n /**\n * Constructs a new ExchangeRate.\n * @memberof proto\n * @classdesc An exchange rate between hbar and cents (USD) and the time at which the exchange rate will\n * expire, and be superseded by a new exchange rate.\n * @implements IExchangeRate\n * @constructor\n * @param {proto.IExchangeRate=} [p] Properties to set\n */\n function ExchangeRate(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Denominator in calculation of exchange rate between hbar and cents\n * @member {number} hbarEquiv\n * @memberof proto.ExchangeRate\n * @instance\n */\n ExchangeRate.prototype.hbarEquiv = 0;\n\n /**\n * Numerator in calculation of exchange rate between hbar and cents\n * @member {number} centEquiv\n * @memberof proto.ExchangeRate\n * @instance\n */\n ExchangeRate.prototype.centEquiv = 0;\n\n /**\n * Expiration time in seconds for this exchange rate\n * @member {proto.ITimestampSeconds|null|undefined} expirationTime\n * @memberof proto.ExchangeRate\n * @instance\n */\n ExchangeRate.prototype.expirationTime = null;\n\n /**\n * Creates a new ExchangeRate instance using the specified properties.\n * @function create\n * @memberof proto.ExchangeRate\n * @static\n * @param {proto.IExchangeRate=} [properties] Properties to set\n * @returns {proto.ExchangeRate} ExchangeRate instance\n */\n ExchangeRate.create = function create(properties) {\n return new ExchangeRate(properties);\n };\n\n /**\n * Encodes the specified ExchangeRate message. Does not implicitly {@link proto.ExchangeRate.verify|verify} messages.\n * @function encode\n * @memberof proto.ExchangeRate\n * @static\n * @param {proto.IExchangeRate} m ExchangeRate message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ExchangeRate.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.hbarEquiv != null && Object.hasOwnProperty.call(m, \"hbarEquiv\"))\n w.uint32(8).int32(m.hbarEquiv);\n if (m.centEquiv != null && Object.hasOwnProperty.call(m, \"centEquiv\"))\n w.uint32(16).int32(m.centEquiv);\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.TimestampSeconds.encode(m.expirationTime, w.uint32(26).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes an ExchangeRate message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ExchangeRate\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ExchangeRate} ExchangeRate\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ExchangeRate.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ExchangeRate();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.hbarEquiv = r.int32();\n break;\n case 2:\n m.centEquiv = r.int32();\n break;\n case 3:\n m.expirationTime = $root.proto.TimestampSeconds.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ExchangeRate;\n })();\n\n proto.ExchangeRateSet = (function() {\n\n /**\n * Properties of an ExchangeRateSet.\n * @memberof proto\n * @interface IExchangeRateSet\n * @property {proto.IExchangeRate|null} [currentRate] Current exchange rate\n * @property {proto.IExchangeRate|null} [nextRate] Next exchange rate which will take effect when current rate expires\n */\n\n /**\n * Constructs a new ExchangeRateSet.\n * @memberof proto\n * @classdesc Two sets of exchange rates\n * @implements IExchangeRateSet\n * @constructor\n * @param {proto.IExchangeRateSet=} [p] Properties to set\n */\n function ExchangeRateSet(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Current exchange rate\n * @member {proto.IExchangeRate|null|undefined} currentRate\n * @memberof proto.ExchangeRateSet\n * @instance\n */\n ExchangeRateSet.prototype.currentRate = null;\n\n /**\n * Next exchange rate which will take effect when current rate expires\n * @member {proto.IExchangeRate|null|undefined} nextRate\n * @memberof proto.ExchangeRateSet\n * @instance\n */\n ExchangeRateSet.prototype.nextRate = null;\n\n /**\n * Creates a new ExchangeRateSet instance using the specified properties.\n * @function create\n * @memberof proto.ExchangeRateSet\n * @static\n * @param {proto.IExchangeRateSet=} [properties] Properties to set\n * @returns {proto.ExchangeRateSet} ExchangeRateSet instance\n */\n ExchangeRateSet.create = function create(properties) {\n return new ExchangeRateSet(properties);\n };\n\n /**\n * Encodes the specified ExchangeRateSet message. Does not implicitly {@link proto.ExchangeRateSet.verify|verify} messages.\n * @function encode\n * @memberof proto.ExchangeRateSet\n * @static\n * @param {proto.IExchangeRateSet} m ExchangeRateSet message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ExchangeRateSet.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.currentRate != null && Object.hasOwnProperty.call(m, \"currentRate\"))\n $root.proto.ExchangeRate.encode(m.currentRate, w.uint32(10).fork()).ldelim();\n if (m.nextRate != null && Object.hasOwnProperty.call(m, \"nextRate\"))\n $root.proto.ExchangeRate.encode(m.nextRate, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes an ExchangeRateSet message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ExchangeRateSet\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ExchangeRateSet} ExchangeRateSet\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ExchangeRateSet.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ExchangeRateSet();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.currentRate = $root.proto.ExchangeRate.decode(r, r.uint32());\n break;\n case 2:\n m.nextRate = $root.proto.ExchangeRate.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ExchangeRateSet;\n })();\n\n proto.CryptoGetAccountBalanceQuery = (function() {\n\n /**\n * Properties of a CryptoGetAccountBalanceQuery.\n * @memberof proto\n * @interface ICryptoGetAccountBalanceQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.IAccountID|null} [accountID] * The account ID for which information is requested\n * @property {proto.IContractID|null} [contractID] * The account ID for which information is requested\n */\n\n /**\n * Constructs a new CryptoGetAccountBalanceQuery.\n * @memberof proto\n * @classdesc Get the balance of a cryptocurrency account. This returns only the balance, so it is a smaller\n * reply than CryptoGetInfo, which returns the balance plus additional information.\n * @implements ICryptoGetAccountBalanceQuery\n * @constructor\n * @param {proto.ICryptoGetAccountBalanceQuery=} [p] Properties to set\n */\n function CryptoGetAccountBalanceQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.CryptoGetAccountBalanceQuery\n * @instance\n */\n CryptoGetAccountBalanceQuery.prototype.header = null;\n\n /**\n * * The account ID for which information is requested\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.CryptoGetAccountBalanceQuery\n * @instance\n */\n CryptoGetAccountBalanceQuery.prototype.accountID = null;\n\n /**\n * * The account ID for which information is requested\n * @member {proto.IContractID|null|undefined} contractID\n * @memberof proto.CryptoGetAccountBalanceQuery\n * @instance\n */\n CryptoGetAccountBalanceQuery.prototype.contractID = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * CryptoGetAccountBalanceQuery balanceSource.\n * @member {\"accountID\"|\"contractID\"|undefined} balanceSource\n * @memberof proto.CryptoGetAccountBalanceQuery\n * @instance\n */\n Object.defineProperty(CryptoGetAccountBalanceQuery.prototype, \"balanceSource\", {\n get: $util.oneOfGetter($oneOfFields = [\"accountID\", \"contractID\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new CryptoGetAccountBalanceQuery instance using the specified properties.\n * @function create\n * @memberof proto.CryptoGetAccountBalanceQuery\n * @static\n * @param {proto.ICryptoGetAccountBalanceQuery=} [properties] Properties to set\n * @returns {proto.CryptoGetAccountBalanceQuery} CryptoGetAccountBalanceQuery instance\n */\n CryptoGetAccountBalanceQuery.create = function create(properties) {\n return new CryptoGetAccountBalanceQuery(properties);\n };\n\n /**\n * Encodes the specified CryptoGetAccountBalanceQuery message. Does not implicitly {@link proto.CryptoGetAccountBalanceQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoGetAccountBalanceQuery\n * @static\n * @param {proto.ICryptoGetAccountBalanceQuery} m CryptoGetAccountBalanceQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoGetAccountBalanceQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n if (m.contractID != null && Object.hasOwnProperty.call(m, \"contractID\"))\n $root.proto.ContractID.encode(m.contractID, w.uint32(26).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a CryptoGetAccountBalanceQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoGetAccountBalanceQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoGetAccountBalanceQuery} CryptoGetAccountBalanceQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoGetAccountBalanceQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoGetAccountBalanceQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.contractID = $root.proto.ContractID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoGetAccountBalanceQuery;\n })();\n\n proto.CryptoGetAccountBalanceResponse = (function() {\n\n /**\n * Properties of a CryptoGetAccountBalanceResponse.\n * @memberof proto\n * @interface ICryptoGetAccountBalanceResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither.\n * @property {proto.IAccountID|null} [accountID] The account ID that is being described (this is useful with state proofs, for proving to a\n * third party)\n * @property {Long|null} [balance] The current balance, in tinybars.\n * @property {Array.|null} [tokenBalances] The token balances possessed by the target account.\n */\n\n /**\n * Constructs a new CryptoGetAccountBalanceResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node CryptoGetAccountBalanceQuery\n * @implements ICryptoGetAccountBalanceResponse\n * @constructor\n * @param {proto.ICryptoGetAccountBalanceResponse=} [p] Properties to set\n */\n function CryptoGetAccountBalanceResponse(p) {\n this.tokenBalances = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither.\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.CryptoGetAccountBalanceResponse\n * @instance\n */\n CryptoGetAccountBalanceResponse.prototype.header = null;\n\n /**\n * The account ID that is being described (this is useful with state proofs, for proving to a\n * third party)\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.CryptoGetAccountBalanceResponse\n * @instance\n */\n CryptoGetAccountBalanceResponse.prototype.accountID = null;\n\n /**\n * The current balance, in tinybars.\n * @member {Long} balance\n * @memberof proto.CryptoGetAccountBalanceResponse\n * @instance\n */\n CryptoGetAccountBalanceResponse.prototype.balance = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * The token balances possessed by the target account.\n * @member {Array.} tokenBalances\n * @memberof proto.CryptoGetAccountBalanceResponse\n * @instance\n */\n CryptoGetAccountBalanceResponse.prototype.tokenBalances = $util.emptyArray;\n\n /**\n * Creates a new CryptoGetAccountBalanceResponse instance using the specified properties.\n * @function create\n * @memberof proto.CryptoGetAccountBalanceResponse\n * @static\n * @param {proto.ICryptoGetAccountBalanceResponse=} [properties] Properties to set\n * @returns {proto.CryptoGetAccountBalanceResponse} CryptoGetAccountBalanceResponse instance\n */\n CryptoGetAccountBalanceResponse.create = function create(properties) {\n return new CryptoGetAccountBalanceResponse(properties);\n };\n\n /**\n * Encodes the specified CryptoGetAccountBalanceResponse message. Does not implicitly {@link proto.CryptoGetAccountBalanceResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoGetAccountBalanceResponse\n * @static\n * @param {proto.ICryptoGetAccountBalanceResponse} m CryptoGetAccountBalanceResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoGetAccountBalanceResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n if (m.balance != null && Object.hasOwnProperty.call(m, \"balance\"))\n w.uint32(24).uint64(m.balance);\n if (m.tokenBalances != null && m.tokenBalances.length) {\n for (var i = 0; i < m.tokenBalances.length; ++i)\n $root.proto.TokenBalance.encode(m.tokenBalances[i], w.uint32(34).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a CryptoGetAccountBalanceResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoGetAccountBalanceResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoGetAccountBalanceResponse} CryptoGetAccountBalanceResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoGetAccountBalanceResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoGetAccountBalanceResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.balance = r.uint64();\n break;\n case 4:\n if (!(m.tokenBalances && m.tokenBalances.length))\n m.tokenBalances = [];\n m.tokenBalances.push($root.proto.TokenBalance.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoGetAccountBalanceResponse;\n })();\n\n proto.CryptoGetAccountRecordsQuery = (function() {\n\n /**\n * Properties of a CryptoGetAccountRecordsQuery.\n * @memberof proto\n * @interface ICryptoGetAccountRecordsQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of response is requested (cost, state proof, both, or neither).\n * @property {proto.IAccountID|null} [accountID] The account ID for which the records should be retrieved\n */\n\n /**\n * Constructs a new CryptoGetAccountRecordsQuery.\n * @memberof proto\n * @classdesc Requests records of all transactions for which the given account was the effective payer in the last 3 minutes of consensus time and ledger.keepRecordsInState=true was true during handleTransaction.\n * @implements ICryptoGetAccountRecordsQuery\n * @constructor\n * @param {proto.ICryptoGetAccountRecordsQuery=} [p] Properties to set\n */\n function CryptoGetAccountRecordsQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.CryptoGetAccountRecordsQuery\n * @instance\n */\n CryptoGetAccountRecordsQuery.prototype.header = null;\n\n /**\n * The account ID for which the records should be retrieved\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.CryptoGetAccountRecordsQuery\n * @instance\n */\n CryptoGetAccountRecordsQuery.prototype.accountID = null;\n\n /**\n * Creates a new CryptoGetAccountRecordsQuery instance using the specified properties.\n * @function create\n * @memberof proto.CryptoGetAccountRecordsQuery\n * @static\n * @param {proto.ICryptoGetAccountRecordsQuery=} [properties] Properties to set\n * @returns {proto.CryptoGetAccountRecordsQuery} CryptoGetAccountRecordsQuery instance\n */\n CryptoGetAccountRecordsQuery.create = function create(properties) {\n return new CryptoGetAccountRecordsQuery(properties);\n };\n\n /**\n * Encodes the specified CryptoGetAccountRecordsQuery message. Does not implicitly {@link proto.CryptoGetAccountRecordsQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoGetAccountRecordsQuery\n * @static\n * @param {proto.ICryptoGetAccountRecordsQuery} m CryptoGetAccountRecordsQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoGetAccountRecordsQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a CryptoGetAccountRecordsQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoGetAccountRecordsQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoGetAccountRecordsQuery} CryptoGetAccountRecordsQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoGetAccountRecordsQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoGetAccountRecordsQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoGetAccountRecordsQuery;\n })();\n\n proto.CryptoGetAccountRecordsResponse = (function() {\n\n /**\n * Properties of a CryptoGetAccountRecordsResponse.\n * @memberof proto\n * @interface ICryptoGetAccountRecordsResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof, or both, or neither\n * @property {proto.IAccountID|null} [accountID] The account that this record is for\n * @property {Array.|null} [records] List of records\n */\n\n /**\n * Constructs a new CryptoGetAccountRecordsResponse.\n * @memberof proto\n * @classdesc Returns records of all transactions for which the given account was the effective payer in the last 3 minutes of consensus time and ledger.keepRecordsInState=true was true during handleTransaction.\n * @implements ICryptoGetAccountRecordsResponse\n * @constructor\n * @param {proto.ICryptoGetAccountRecordsResponse=} [p] Properties to set\n */\n function CryptoGetAccountRecordsResponse(p) {\n this.records = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof, or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.CryptoGetAccountRecordsResponse\n * @instance\n */\n CryptoGetAccountRecordsResponse.prototype.header = null;\n\n /**\n * The account that this record is for\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.CryptoGetAccountRecordsResponse\n * @instance\n */\n CryptoGetAccountRecordsResponse.prototype.accountID = null;\n\n /**\n * List of records\n * @member {Array.} records\n * @memberof proto.CryptoGetAccountRecordsResponse\n * @instance\n */\n CryptoGetAccountRecordsResponse.prototype.records = $util.emptyArray;\n\n /**\n * Creates a new CryptoGetAccountRecordsResponse instance using the specified properties.\n * @function create\n * @memberof proto.CryptoGetAccountRecordsResponse\n * @static\n * @param {proto.ICryptoGetAccountRecordsResponse=} [properties] Properties to set\n * @returns {proto.CryptoGetAccountRecordsResponse} CryptoGetAccountRecordsResponse instance\n */\n CryptoGetAccountRecordsResponse.create = function create(properties) {\n return new CryptoGetAccountRecordsResponse(properties);\n };\n\n /**\n * Encodes the specified CryptoGetAccountRecordsResponse message. Does not implicitly {@link proto.CryptoGetAccountRecordsResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoGetAccountRecordsResponse\n * @static\n * @param {proto.ICryptoGetAccountRecordsResponse} m CryptoGetAccountRecordsResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoGetAccountRecordsResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n if (m.records != null && m.records.length) {\n for (var i = 0; i < m.records.length; ++i)\n $root.proto.TransactionRecord.encode(m.records[i], w.uint32(26).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a CryptoGetAccountRecordsResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoGetAccountRecordsResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoGetAccountRecordsResponse} CryptoGetAccountRecordsResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoGetAccountRecordsResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoGetAccountRecordsResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n if (!(m.records && m.records.length))\n m.records = [];\n m.records.push($root.proto.TransactionRecord.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoGetAccountRecordsResponse;\n })();\n\n proto.CryptoGetInfoQuery = (function() {\n\n /**\n * Properties of a CryptoGetInfoQuery.\n * @memberof proto\n * @interface ICryptoGetInfoQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.IAccountID|null} [accountID] The account ID for which information is requested\n */\n\n /**\n * Constructs a new CryptoGetInfoQuery.\n * @memberof proto\n * @classdesc Get all the information about an account, including the balance. This does not get the list of\n * account records.\n * @implements ICryptoGetInfoQuery\n * @constructor\n * @param {proto.ICryptoGetInfoQuery=} [p] Properties to set\n */\n function CryptoGetInfoQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.CryptoGetInfoQuery\n * @instance\n */\n CryptoGetInfoQuery.prototype.header = null;\n\n /**\n * The account ID for which information is requested\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.CryptoGetInfoQuery\n * @instance\n */\n CryptoGetInfoQuery.prototype.accountID = null;\n\n /**\n * Creates a new CryptoGetInfoQuery instance using the specified properties.\n * @function create\n * @memberof proto.CryptoGetInfoQuery\n * @static\n * @param {proto.ICryptoGetInfoQuery=} [properties] Properties to set\n * @returns {proto.CryptoGetInfoQuery} CryptoGetInfoQuery instance\n */\n CryptoGetInfoQuery.create = function create(properties) {\n return new CryptoGetInfoQuery(properties);\n };\n\n /**\n * Encodes the specified CryptoGetInfoQuery message. Does not implicitly {@link proto.CryptoGetInfoQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoGetInfoQuery\n * @static\n * @param {proto.ICryptoGetInfoQuery} m CryptoGetInfoQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoGetInfoQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a CryptoGetInfoQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoGetInfoQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoGetInfoQuery} CryptoGetInfoQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoGetInfoQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoGetInfoQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoGetInfoQuery;\n })();\n\n proto.CryptoGetInfoResponse = (function() {\n\n /**\n * Properties of a CryptoGetInfoResponse.\n * @memberof proto\n * @interface ICryptoGetInfoResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.CryptoGetInfoResponse.IAccountInfo|null} [accountInfo] Info about the account (a state proof can be generated for this)\n */\n\n /**\n * Constructs a new CryptoGetInfoResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node CryptoGetInfoQuery\n * @implements ICryptoGetInfoResponse\n * @constructor\n * @param {proto.ICryptoGetInfoResponse=} [p] Properties to set\n */\n function CryptoGetInfoResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.CryptoGetInfoResponse\n * @instance\n */\n CryptoGetInfoResponse.prototype.header = null;\n\n /**\n * Info about the account (a state proof can be generated for this)\n * @member {proto.CryptoGetInfoResponse.IAccountInfo|null|undefined} accountInfo\n * @memberof proto.CryptoGetInfoResponse\n * @instance\n */\n CryptoGetInfoResponse.prototype.accountInfo = null;\n\n /**\n * Creates a new CryptoGetInfoResponse instance using the specified properties.\n * @function create\n * @memberof proto.CryptoGetInfoResponse\n * @static\n * @param {proto.ICryptoGetInfoResponse=} [properties] Properties to set\n * @returns {proto.CryptoGetInfoResponse} CryptoGetInfoResponse instance\n */\n CryptoGetInfoResponse.create = function create(properties) {\n return new CryptoGetInfoResponse(properties);\n };\n\n /**\n * Encodes the specified CryptoGetInfoResponse message. Does not implicitly {@link proto.CryptoGetInfoResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoGetInfoResponse\n * @static\n * @param {proto.ICryptoGetInfoResponse} m CryptoGetInfoResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoGetInfoResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.accountInfo != null && Object.hasOwnProperty.call(m, \"accountInfo\"))\n $root.proto.CryptoGetInfoResponse.AccountInfo.encode(m.accountInfo, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a CryptoGetInfoResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoGetInfoResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoGetInfoResponse} CryptoGetInfoResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoGetInfoResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoGetInfoResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.accountInfo = $root.proto.CryptoGetInfoResponse.AccountInfo.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n CryptoGetInfoResponse.AccountInfo = (function() {\n\n /**\n * Properties of an AccountInfo.\n * @memberof proto.CryptoGetInfoResponse\n * @interface IAccountInfo\n * @property {proto.IAccountID|null} [accountID] The account ID for which this information applies\n * @property {string|null} [contractAccountID] The Contract Account ID comprising of both the contract instance and the cryptocurrency\n * account owned by the contract instance, in the format used by Solidity\n * @property {boolean|null} [deleted] If true, then this account has been deleted, it will disappear when it expires, and all\n * transactions for it will fail except the transaction to extend its expiration date\n * @property {proto.IAccountID|null} [proxyAccountID] The Account ID of the account to which this is proxy staked. If proxyAccountID is null,\n * or is an invalid account, or is an account that isn't a node, then this account is\n * automatically proxy staked to a node chosen by the network, but without earning payments.\n * If the proxyAccountID account refuses to accept proxy staking , or if it is not currently\n * running a node, then it will behave as if proxyAccountID was null.\n * @property {Long|null} [proxyReceived] The total number of tinybars proxy staked to this account\n * @property {proto.IKey|null} [key] The key for the account, which must sign in order to transfer out, or to modify the\n * account in any way other than extending its expiration date.\n * @property {Long|null} [balance] The current balance of account in tinybars\n * @property {Long|null} [generateSendRecordThreshold] [Deprecated]. The threshold amount, in tinybars, at which a record is created of any\n * transaction that decreases the balance of this account by more than the threshold\n * @property {Long|null} [generateReceiveRecordThreshold] [Deprecated]. The threshold amount, in tinybars, at which a record is created of any\n * transaction that increases the balance of this account by more than the threshold\n * @property {boolean|null} [receiverSigRequired] If true, no transaction can transfer to this account unless signed by this account's key\n * @property {proto.ITimestamp|null} [expirationTime] The TimeStamp time at which this account is set to expire\n * @property {proto.IDuration|null} [autoRenewPeriod] The duration for expiration time will extend every this many seconds. If there are\n * insufficient funds, then it extends as long as possible. If it is empty when it expires,\n * then it is deleted.\n * @property {Array.|null} [liveHashes] All of the livehashes attached to the account (each of which is a hash along with the\n * keys that authorized it and can delete it)\n * @property {Array.|null} [tokenRelationships] All tokens related to this account\n * @property {string|null} [memo] The memo associated with the account\n * @property {Long|null} [ownedNfts] The number of NFTs owned by this account\n * @property {number|null} [maxAutomaticTokenAssociations] The maximum number of tokens that an Account can be implicitly associated with.\n * @property {Uint8Array|null} [alias] The alias of this account\n * @property {Uint8Array|null} [ledgerId] The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n * @property {Array.|null} [cryptoAllowances] All of the hbar allowances approved by the account owner.\n * @property {Array.|null} [nftAllowances] All of the non-fungible token allowances approved by the account owner.\n * @property {Array.|null} [tokenAllowances] All of the fungible token allowances approved by the account owner.\n */\n\n /**\n * Constructs a new AccountInfo.\n * @memberof proto.CryptoGetInfoResponse\n * @classdesc Represents an AccountInfo.\n * @implements IAccountInfo\n * @constructor\n * @param {proto.CryptoGetInfoResponse.IAccountInfo=} [p] Properties to set\n */\n function AccountInfo(p) {\n this.liveHashes = [];\n this.tokenRelationships = [];\n this.cryptoAllowances = [];\n this.nftAllowances = [];\n this.tokenAllowances = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The account ID for which this information applies\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.accountID = null;\n\n /**\n * The Contract Account ID comprising of both the contract instance and the cryptocurrency\n * account owned by the contract instance, in the format used by Solidity\n * @member {string} contractAccountID\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.contractAccountID = \"\";\n\n /**\n * If true, then this account has been deleted, it will disappear when it expires, and all\n * transactions for it will fail except the transaction to extend its expiration date\n * @member {boolean} deleted\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.deleted = false;\n\n /**\n * The Account ID of the account to which this is proxy staked. If proxyAccountID is null,\n * or is an invalid account, or is an account that isn't a node, then this account is\n * automatically proxy staked to a node chosen by the network, but without earning payments.\n * If the proxyAccountID account refuses to accept proxy staking , or if it is not currently\n * running a node, then it will behave as if proxyAccountID was null.\n * @member {proto.IAccountID|null|undefined} proxyAccountID\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.proxyAccountID = null;\n\n /**\n * The total number of tinybars proxy staked to this account\n * @member {Long} proxyReceived\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.proxyReceived = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The key for the account, which must sign in order to transfer out, or to modify the\n * account in any way other than extending its expiration date.\n * @member {proto.IKey|null|undefined} key\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.key = null;\n\n /**\n * The current balance of account in tinybars\n * @member {Long} balance\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.balance = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * [Deprecated]. The threshold amount, in tinybars, at which a record is created of any\n * transaction that decreases the balance of this account by more than the threshold\n * @member {Long} generateSendRecordThreshold\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.generateSendRecordThreshold = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * [Deprecated]. The threshold amount, in tinybars, at which a record is created of any\n * transaction that increases the balance of this account by more than the threshold\n * @member {Long} generateReceiveRecordThreshold\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.generateReceiveRecordThreshold = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * If true, no transaction can transfer to this account unless signed by this account's key\n * @member {boolean} receiverSigRequired\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.receiverSigRequired = false;\n\n /**\n * The TimeStamp time at which this account is set to expire\n * @member {proto.ITimestamp|null|undefined} expirationTime\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.expirationTime = null;\n\n /**\n * The duration for expiration time will extend every this many seconds. If there are\n * insufficient funds, then it extends as long as possible. If it is empty when it expires,\n * then it is deleted.\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.autoRenewPeriod = null;\n\n /**\n * All of the livehashes attached to the account (each of which is a hash along with the\n * keys that authorized it and can delete it)\n * @member {Array.} liveHashes\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.liveHashes = $util.emptyArray;\n\n /**\n * All tokens related to this account\n * @member {Array.} tokenRelationships\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.tokenRelationships = $util.emptyArray;\n\n /**\n * The memo associated with the account\n * @member {string} memo\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.memo = \"\";\n\n /**\n * The number of NFTs owned by this account\n * @member {Long} ownedNfts\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.ownedNfts = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The maximum number of tokens that an Account can be implicitly associated with.\n * @member {number} maxAutomaticTokenAssociations\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.maxAutomaticTokenAssociations = 0;\n\n /**\n * The alias of this account\n * @member {Uint8Array} alias\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.alias = $util.newBuffer([]);\n\n /**\n * The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n * @member {Uint8Array} ledgerId\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.ledgerId = $util.newBuffer([]);\n\n /**\n * All of the hbar allowances approved by the account owner.\n * @member {Array.} cryptoAllowances\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.cryptoAllowances = $util.emptyArray;\n\n /**\n * All of the non-fungible token allowances approved by the account owner.\n * @member {Array.} nftAllowances\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.nftAllowances = $util.emptyArray;\n\n /**\n * All of the fungible token allowances approved by the account owner.\n * @member {Array.} tokenAllowances\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @instance\n */\n AccountInfo.prototype.tokenAllowances = $util.emptyArray;\n\n /**\n * Creates a new AccountInfo instance using the specified properties.\n * @function create\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @static\n * @param {proto.CryptoGetInfoResponse.IAccountInfo=} [properties] Properties to set\n * @returns {proto.CryptoGetInfoResponse.AccountInfo} AccountInfo instance\n */\n AccountInfo.create = function create(properties) {\n return new AccountInfo(properties);\n };\n\n /**\n * Encodes the specified AccountInfo message. Does not implicitly {@link proto.CryptoGetInfoResponse.AccountInfo.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @static\n * @param {proto.CryptoGetInfoResponse.IAccountInfo} m AccountInfo message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n AccountInfo.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(10).fork()).ldelim();\n if (m.contractAccountID != null && Object.hasOwnProperty.call(m, \"contractAccountID\"))\n w.uint32(18).string(m.contractAccountID);\n if (m.deleted != null && Object.hasOwnProperty.call(m, \"deleted\"))\n w.uint32(24).bool(m.deleted);\n if (m.proxyAccountID != null && Object.hasOwnProperty.call(m, \"proxyAccountID\"))\n $root.proto.AccountID.encode(m.proxyAccountID, w.uint32(34).fork()).ldelim();\n if (m.proxyReceived != null && Object.hasOwnProperty.call(m, \"proxyReceived\"))\n w.uint32(48).int64(m.proxyReceived);\n if (m.key != null && Object.hasOwnProperty.call(m, \"key\"))\n $root.proto.Key.encode(m.key, w.uint32(58).fork()).ldelim();\n if (m.balance != null && Object.hasOwnProperty.call(m, \"balance\"))\n w.uint32(64).uint64(m.balance);\n if (m.generateSendRecordThreshold != null && Object.hasOwnProperty.call(m, \"generateSendRecordThreshold\"))\n w.uint32(72).uint64(m.generateSendRecordThreshold);\n if (m.generateReceiveRecordThreshold != null && Object.hasOwnProperty.call(m, \"generateReceiveRecordThreshold\"))\n w.uint32(80).uint64(m.generateReceiveRecordThreshold);\n if (m.receiverSigRequired != null && Object.hasOwnProperty.call(m, \"receiverSigRequired\"))\n w.uint32(88).bool(m.receiverSigRequired);\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.Timestamp.encode(m.expirationTime, w.uint32(98).fork()).ldelim();\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(106).fork()).ldelim();\n if (m.liveHashes != null && m.liveHashes.length) {\n for (var i = 0; i < m.liveHashes.length; ++i)\n $root.proto.LiveHash.encode(m.liveHashes[i], w.uint32(114).fork()).ldelim();\n }\n if (m.tokenRelationships != null && m.tokenRelationships.length) {\n for (var i = 0; i < m.tokenRelationships.length; ++i)\n $root.proto.TokenRelationship.encode(m.tokenRelationships[i], w.uint32(122).fork()).ldelim();\n }\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(130).string(m.memo);\n if (m.ownedNfts != null && Object.hasOwnProperty.call(m, \"ownedNfts\"))\n w.uint32(136).int64(m.ownedNfts);\n if (m.maxAutomaticTokenAssociations != null && Object.hasOwnProperty.call(m, \"maxAutomaticTokenAssociations\"))\n w.uint32(144).int32(m.maxAutomaticTokenAssociations);\n if (m.alias != null && Object.hasOwnProperty.call(m, \"alias\"))\n w.uint32(154).bytes(m.alias);\n if (m.ledgerId != null && Object.hasOwnProperty.call(m, \"ledgerId\"))\n w.uint32(162).bytes(m.ledgerId);\n if (m.cryptoAllowances != null && m.cryptoAllowances.length) {\n for (var i = 0; i < m.cryptoAllowances.length; ++i)\n $root.proto.CryptoAllowance.encode(m.cryptoAllowances[i], w.uint32(170).fork()).ldelim();\n }\n if (m.nftAllowances != null && m.nftAllowances.length) {\n for (var i = 0; i < m.nftAllowances.length; ++i)\n $root.proto.NftAllowance.encode(m.nftAllowances[i], w.uint32(178).fork()).ldelim();\n }\n if (m.tokenAllowances != null && m.tokenAllowances.length) {\n for (var i = 0; i < m.tokenAllowances.length; ++i)\n $root.proto.TokenAllowance.encode(m.tokenAllowances[i], w.uint32(186).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes an AccountInfo message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoGetInfoResponse.AccountInfo\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoGetInfoResponse.AccountInfo} AccountInfo\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n AccountInfo.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoGetInfoResponse.AccountInfo();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n m.contractAccountID = r.string();\n break;\n case 3:\n m.deleted = r.bool();\n break;\n case 4:\n m.proxyAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 6:\n m.proxyReceived = r.int64();\n break;\n case 7:\n m.key = $root.proto.Key.decode(r, r.uint32());\n break;\n case 8:\n m.balance = r.uint64();\n break;\n case 9:\n m.generateSendRecordThreshold = r.uint64();\n break;\n case 10:\n m.generateReceiveRecordThreshold = r.uint64();\n break;\n case 11:\n m.receiverSigRequired = r.bool();\n break;\n case 12:\n m.expirationTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 13:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 14:\n if (!(m.liveHashes && m.liveHashes.length))\n m.liveHashes = [];\n m.liveHashes.push($root.proto.LiveHash.decode(r, r.uint32()));\n break;\n case 15:\n if (!(m.tokenRelationships && m.tokenRelationships.length))\n m.tokenRelationships = [];\n m.tokenRelationships.push($root.proto.TokenRelationship.decode(r, r.uint32()));\n break;\n case 16:\n m.memo = r.string();\n break;\n case 17:\n m.ownedNfts = r.int64();\n break;\n case 18:\n m.maxAutomaticTokenAssociations = r.int32();\n break;\n case 19:\n m.alias = r.bytes();\n break;\n case 20:\n m.ledgerId = r.bytes();\n break;\n case 21:\n if (!(m.cryptoAllowances && m.cryptoAllowances.length))\n m.cryptoAllowances = [];\n m.cryptoAllowances.push($root.proto.CryptoAllowance.decode(r, r.uint32()));\n break;\n case 22:\n if (!(m.nftAllowances && m.nftAllowances.length))\n m.nftAllowances = [];\n m.nftAllowances.push($root.proto.NftAllowance.decode(r, r.uint32()));\n break;\n case 23:\n if (!(m.tokenAllowances && m.tokenAllowances.length))\n m.tokenAllowances = [];\n m.tokenAllowances.push($root.proto.TokenAllowance.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return AccountInfo;\n })();\n\n return CryptoGetInfoResponse;\n })();\n\n proto.CryptoGetLiveHashQuery = (function() {\n\n /**\n * Properties of a CryptoGetLiveHashQuery.\n * @memberof proto\n * @interface ICryptoGetLiveHashQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.IAccountID|null} [accountID] The account to which the livehash is associated\n * @property {Uint8Array|null} [hash] The SHA-384 data in the livehash\n */\n\n /**\n * Constructs a new CryptoGetLiveHashQuery.\n * @memberof proto\n * @classdesc Requests a livehash associated to an account.\n * @implements ICryptoGetLiveHashQuery\n * @constructor\n * @param {proto.ICryptoGetLiveHashQuery=} [p] Properties to set\n */\n function CryptoGetLiveHashQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.CryptoGetLiveHashQuery\n * @instance\n */\n CryptoGetLiveHashQuery.prototype.header = null;\n\n /**\n * The account to which the livehash is associated\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.CryptoGetLiveHashQuery\n * @instance\n */\n CryptoGetLiveHashQuery.prototype.accountID = null;\n\n /**\n * The SHA-384 data in the livehash\n * @member {Uint8Array} hash\n * @memberof proto.CryptoGetLiveHashQuery\n * @instance\n */\n CryptoGetLiveHashQuery.prototype.hash = $util.newBuffer([]);\n\n /**\n * Creates a new CryptoGetLiveHashQuery instance using the specified properties.\n * @function create\n * @memberof proto.CryptoGetLiveHashQuery\n * @static\n * @param {proto.ICryptoGetLiveHashQuery=} [properties] Properties to set\n * @returns {proto.CryptoGetLiveHashQuery} CryptoGetLiveHashQuery instance\n */\n CryptoGetLiveHashQuery.create = function create(properties) {\n return new CryptoGetLiveHashQuery(properties);\n };\n\n /**\n * Encodes the specified CryptoGetLiveHashQuery message. Does not implicitly {@link proto.CryptoGetLiveHashQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoGetLiveHashQuery\n * @static\n * @param {proto.ICryptoGetLiveHashQuery} m CryptoGetLiveHashQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoGetLiveHashQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n if (m.hash != null && Object.hasOwnProperty.call(m, \"hash\"))\n w.uint32(26).bytes(m.hash);\n return w;\n };\n\n /**\n * Decodes a CryptoGetLiveHashQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoGetLiveHashQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoGetLiveHashQuery} CryptoGetLiveHashQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoGetLiveHashQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoGetLiveHashQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.hash = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoGetLiveHashQuery;\n })();\n\n proto.CryptoGetLiveHashResponse = (function() {\n\n /**\n * Properties of a CryptoGetLiveHashResponse.\n * @memberof proto\n * @interface ICryptoGetLiveHashResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.ILiveHash|null} [liveHash] The livehash, if present\n */\n\n /**\n * Constructs a new CryptoGetLiveHashResponse.\n * @memberof proto\n * @classdesc Returns the full livehash associated to an account, if it is present. Note that the only way to\n * obtain a state proof exhibiting the absence of a livehash from an account is to retrieve a state\n * proof of the entire account with its list of livehashes.\n * @implements ICryptoGetLiveHashResponse\n * @constructor\n * @param {proto.ICryptoGetLiveHashResponse=} [p] Properties to set\n */\n function CryptoGetLiveHashResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.CryptoGetLiveHashResponse\n * @instance\n */\n CryptoGetLiveHashResponse.prototype.header = null;\n\n /**\n * The livehash, if present\n * @member {proto.ILiveHash|null|undefined} liveHash\n * @memberof proto.CryptoGetLiveHashResponse\n * @instance\n */\n CryptoGetLiveHashResponse.prototype.liveHash = null;\n\n /**\n * Creates a new CryptoGetLiveHashResponse instance using the specified properties.\n * @function create\n * @memberof proto.CryptoGetLiveHashResponse\n * @static\n * @param {proto.ICryptoGetLiveHashResponse=} [properties] Properties to set\n * @returns {proto.CryptoGetLiveHashResponse} CryptoGetLiveHashResponse instance\n */\n CryptoGetLiveHashResponse.create = function create(properties) {\n return new CryptoGetLiveHashResponse(properties);\n };\n\n /**\n * Encodes the specified CryptoGetLiveHashResponse message. Does not implicitly {@link proto.CryptoGetLiveHashResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoGetLiveHashResponse\n * @static\n * @param {proto.ICryptoGetLiveHashResponse} m CryptoGetLiveHashResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoGetLiveHashResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.liveHash != null && Object.hasOwnProperty.call(m, \"liveHash\"))\n $root.proto.LiveHash.encode(m.liveHash, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a CryptoGetLiveHashResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoGetLiveHashResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoGetLiveHashResponse} CryptoGetLiveHashResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoGetLiveHashResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoGetLiveHashResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.liveHash = $root.proto.LiveHash.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoGetLiveHashResponse;\n })();\n\n proto.CryptoGetStakersQuery = (function() {\n\n /**\n * Properties of a CryptoGetStakersQuery.\n * @memberof proto\n * @interface ICryptoGetStakersQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.IAccountID|null} [accountID] The Account ID for which the records should be retrieved\n */\n\n /**\n * Constructs a new CryptoGetStakersQuery.\n * @memberof proto\n * @classdesc Get all the accounts that are proxy staking to this account. For each of them, give the amount\n * currently staked. This is not yet implemented, but will be in a future version of the API.\n * @implements ICryptoGetStakersQuery\n * @constructor\n * @param {proto.ICryptoGetStakersQuery=} [p] Properties to set\n */\n function CryptoGetStakersQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.CryptoGetStakersQuery\n * @instance\n */\n CryptoGetStakersQuery.prototype.header = null;\n\n /**\n * The Account ID for which the records should be retrieved\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.CryptoGetStakersQuery\n * @instance\n */\n CryptoGetStakersQuery.prototype.accountID = null;\n\n /**\n * Creates a new CryptoGetStakersQuery instance using the specified properties.\n * @function create\n * @memberof proto.CryptoGetStakersQuery\n * @static\n * @param {proto.ICryptoGetStakersQuery=} [properties] Properties to set\n * @returns {proto.CryptoGetStakersQuery} CryptoGetStakersQuery instance\n */\n CryptoGetStakersQuery.create = function create(properties) {\n return new CryptoGetStakersQuery(properties);\n };\n\n /**\n * Encodes the specified CryptoGetStakersQuery message. Does not implicitly {@link proto.CryptoGetStakersQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoGetStakersQuery\n * @static\n * @param {proto.ICryptoGetStakersQuery} m CryptoGetStakersQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoGetStakersQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a CryptoGetStakersQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoGetStakersQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoGetStakersQuery} CryptoGetStakersQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoGetStakersQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoGetStakersQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoGetStakersQuery;\n })();\n\n proto.ProxyStaker = (function() {\n\n /**\n * Properties of a ProxyStaker.\n * @memberof proto\n * @interface IProxyStaker\n * @property {proto.IAccountID|null} [accountID] The Account ID that is proxy staking\n * @property {Long|null} [amount] The number of hbars that are currently proxy staked\n */\n\n /**\n * Constructs a new ProxyStaker.\n * @memberof proto\n * @classdesc information about a single account that is proxy staking\n * @implements IProxyStaker\n * @constructor\n * @param {proto.IProxyStaker=} [p] Properties to set\n */\n function ProxyStaker(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The Account ID that is proxy staking\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.ProxyStaker\n * @instance\n */\n ProxyStaker.prototype.accountID = null;\n\n /**\n * The number of hbars that are currently proxy staked\n * @member {Long} amount\n * @memberof proto.ProxyStaker\n * @instance\n */\n ProxyStaker.prototype.amount = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new ProxyStaker instance using the specified properties.\n * @function create\n * @memberof proto.ProxyStaker\n * @static\n * @param {proto.IProxyStaker=} [properties] Properties to set\n * @returns {proto.ProxyStaker} ProxyStaker instance\n */\n ProxyStaker.create = function create(properties) {\n return new ProxyStaker(properties);\n };\n\n /**\n * Encodes the specified ProxyStaker message. Does not implicitly {@link proto.ProxyStaker.verify|verify} messages.\n * @function encode\n * @memberof proto.ProxyStaker\n * @static\n * @param {proto.IProxyStaker} m ProxyStaker message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ProxyStaker.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(10).fork()).ldelim();\n if (m.amount != null && Object.hasOwnProperty.call(m, \"amount\"))\n w.uint32(16).int64(m.amount);\n return w;\n };\n\n /**\n * Decodes a ProxyStaker message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ProxyStaker\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ProxyStaker} ProxyStaker\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ProxyStaker.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ProxyStaker();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n m.amount = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ProxyStaker;\n })();\n\n proto.AllProxyStakers = (function() {\n\n /**\n * Properties of an AllProxyStakers.\n * @memberof proto\n * @interface IAllProxyStakers\n * @property {proto.IAccountID|null} [accountID] The Account ID that is being proxy staked to\n * @property {Array.|null} [proxyStaker] Each of the proxy staking accounts, and the amount they are proxy staking\n */\n\n /**\n * Constructs a new AllProxyStakers.\n * @memberof proto\n * @classdesc all of the accounts proxy staking to a given account, and the amounts proxy staked\n * @implements IAllProxyStakers\n * @constructor\n * @param {proto.IAllProxyStakers=} [p] Properties to set\n */\n function AllProxyStakers(p) {\n this.proxyStaker = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The Account ID that is being proxy staked to\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.AllProxyStakers\n * @instance\n */\n AllProxyStakers.prototype.accountID = null;\n\n /**\n * Each of the proxy staking accounts, and the amount they are proxy staking\n * @member {Array.} proxyStaker\n * @memberof proto.AllProxyStakers\n * @instance\n */\n AllProxyStakers.prototype.proxyStaker = $util.emptyArray;\n\n /**\n * Creates a new AllProxyStakers instance using the specified properties.\n * @function create\n * @memberof proto.AllProxyStakers\n * @static\n * @param {proto.IAllProxyStakers=} [properties] Properties to set\n * @returns {proto.AllProxyStakers} AllProxyStakers instance\n */\n AllProxyStakers.create = function create(properties) {\n return new AllProxyStakers(properties);\n };\n\n /**\n * Encodes the specified AllProxyStakers message. Does not implicitly {@link proto.AllProxyStakers.verify|verify} messages.\n * @function encode\n * @memberof proto.AllProxyStakers\n * @static\n * @param {proto.IAllProxyStakers} m AllProxyStakers message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n AllProxyStakers.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(10).fork()).ldelim();\n if (m.proxyStaker != null && m.proxyStaker.length) {\n for (var i = 0; i < m.proxyStaker.length; ++i)\n $root.proto.ProxyStaker.encode(m.proxyStaker[i], w.uint32(18).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes an AllProxyStakers message from the specified reader or buffer.\n * @function decode\n * @memberof proto.AllProxyStakers\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.AllProxyStakers} AllProxyStakers\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n AllProxyStakers.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.AllProxyStakers();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.proxyStaker && m.proxyStaker.length))\n m.proxyStaker = [];\n m.proxyStaker.push($root.proto.ProxyStaker.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return AllProxyStakers;\n })();\n\n proto.CryptoGetStakersResponse = (function() {\n\n /**\n * Properties of a CryptoGetStakersResponse.\n * @memberof proto\n * @interface ICryptoGetStakersResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.IAllProxyStakers|null} [stakers] List of accounts proxy staking to this account, and the amount each is currently proxy\n * staking\n */\n\n /**\n * Constructs a new CryptoGetStakersResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node CryptoGetStakersQuery\n * @implements ICryptoGetStakersResponse\n * @constructor\n * @param {proto.ICryptoGetStakersResponse=} [p] Properties to set\n */\n function CryptoGetStakersResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.CryptoGetStakersResponse\n * @instance\n */\n CryptoGetStakersResponse.prototype.header = null;\n\n /**\n * List of accounts proxy staking to this account, and the amount each is currently proxy\n * staking\n * @member {proto.IAllProxyStakers|null|undefined} stakers\n * @memberof proto.CryptoGetStakersResponse\n * @instance\n */\n CryptoGetStakersResponse.prototype.stakers = null;\n\n /**\n * Creates a new CryptoGetStakersResponse instance using the specified properties.\n * @function create\n * @memberof proto.CryptoGetStakersResponse\n * @static\n * @param {proto.ICryptoGetStakersResponse=} [properties] Properties to set\n * @returns {proto.CryptoGetStakersResponse} CryptoGetStakersResponse instance\n */\n CryptoGetStakersResponse.create = function create(properties) {\n return new CryptoGetStakersResponse(properties);\n };\n\n /**\n * Encodes the specified CryptoGetStakersResponse message. Does not implicitly {@link proto.CryptoGetStakersResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.CryptoGetStakersResponse\n * @static\n * @param {proto.ICryptoGetStakersResponse} m CryptoGetStakersResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n CryptoGetStakersResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.stakers != null && Object.hasOwnProperty.call(m, \"stakers\"))\n $root.proto.AllProxyStakers.encode(m.stakers, w.uint32(26).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a CryptoGetStakersResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.CryptoGetStakersResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.CryptoGetStakersResponse} CryptoGetStakersResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n CryptoGetStakersResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.CryptoGetStakersResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 3:\n m.stakers = $root.proto.AllProxyStakers.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return CryptoGetStakersResponse;\n })();\n\n proto.FileGetContentsQuery = (function() {\n\n /**\n * Properties of a FileGetContentsQuery.\n * @memberof proto\n * @interface IFileGetContentsQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.IFileID|null} [fileID] The file ID of the file whose contents are requested\n */\n\n /**\n * Constructs a new FileGetContentsQuery.\n * @memberof proto\n * @classdesc Get the contents of a file. The content field is empty (no bytes) if the file is empty.\n * @implements IFileGetContentsQuery\n * @constructor\n * @param {proto.IFileGetContentsQuery=} [p] Properties to set\n */\n function FileGetContentsQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.FileGetContentsQuery\n * @instance\n */\n FileGetContentsQuery.prototype.header = null;\n\n /**\n * The file ID of the file whose contents are requested\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.FileGetContentsQuery\n * @instance\n */\n FileGetContentsQuery.prototype.fileID = null;\n\n /**\n * Creates a new FileGetContentsQuery instance using the specified properties.\n * @function create\n * @memberof proto.FileGetContentsQuery\n * @static\n * @param {proto.IFileGetContentsQuery=} [properties] Properties to set\n * @returns {proto.FileGetContentsQuery} FileGetContentsQuery instance\n */\n FileGetContentsQuery.create = function create(properties) {\n return new FileGetContentsQuery(properties);\n };\n\n /**\n * Encodes the specified FileGetContentsQuery message. Does not implicitly {@link proto.FileGetContentsQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.FileGetContentsQuery\n * @static\n * @param {proto.IFileGetContentsQuery} m FileGetContentsQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FileGetContentsQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a FileGetContentsQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FileGetContentsQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FileGetContentsQuery} FileGetContentsQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FileGetContentsQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FileGetContentsQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FileGetContentsQuery;\n })();\n\n proto.FileGetContentsResponse = (function() {\n\n /**\n * Properties of a FileGetContentsResponse.\n * @memberof proto\n * @interface IFileGetContentsResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.FileGetContentsResponse.IFileContents|null} [fileContents] the file ID and contents (a state proof can be generated for this)\n */\n\n /**\n * Constructs a new FileGetContentsResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node FileGetContentsQuery\n * @implements IFileGetContentsResponse\n * @constructor\n * @param {proto.IFileGetContentsResponse=} [p] Properties to set\n */\n function FileGetContentsResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.FileGetContentsResponse\n * @instance\n */\n FileGetContentsResponse.prototype.header = null;\n\n /**\n * the file ID and contents (a state proof can be generated for this)\n * @member {proto.FileGetContentsResponse.IFileContents|null|undefined} fileContents\n * @memberof proto.FileGetContentsResponse\n * @instance\n */\n FileGetContentsResponse.prototype.fileContents = null;\n\n /**\n * Creates a new FileGetContentsResponse instance using the specified properties.\n * @function create\n * @memberof proto.FileGetContentsResponse\n * @static\n * @param {proto.IFileGetContentsResponse=} [properties] Properties to set\n * @returns {proto.FileGetContentsResponse} FileGetContentsResponse instance\n */\n FileGetContentsResponse.create = function create(properties) {\n return new FileGetContentsResponse(properties);\n };\n\n /**\n * Encodes the specified FileGetContentsResponse message. Does not implicitly {@link proto.FileGetContentsResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.FileGetContentsResponse\n * @static\n * @param {proto.IFileGetContentsResponse} m FileGetContentsResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FileGetContentsResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.fileContents != null && Object.hasOwnProperty.call(m, \"fileContents\"))\n $root.proto.FileGetContentsResponse.FileContents.encode(m.fileContents, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a FileGetContentsResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FileGetContentsResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FileGetContentsResponse} FileGetContentsResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FileGetContentsResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FileGetContentsResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.fileContents = $root.proto.FileGetContentsResponse.FileContents.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n FileGetContentsResponse.FileContents = (function() {\n\n /**\n * Properties of a FileContents.\n * @memberof proto.FileGetContentsResponse\n * @interface IFileContents\n * @property {proto.IFileID|null} [fileID] The file ID of the file whose contents are being returned\n * @property {Uint8Array|null} [contents] The bytes contained in the file\n */\n\n /**\n * Constructs a new FileContents.\n * @memberof proto.FileGetContentsResponse\n * @classdesc Represents a FileContents.\n * @implements IFileContents\n * @constructor\n * @param {proto.FileGetContentsResponse.IFileContents=} [p] Properties to set\n */\n function FileContents(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The file ID of the file whose contents are being returned\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.FileGetContentsResponse.FileContents\n * @instance\n */\n FileContents.prototype.fileID = null;\n\n /**\n * The bytes contained in the file\n * @member {Uint8Array} contents\n * @memberof proto.FileGetContentsResponse.FileContents\n * @instance\n */\n FileContents.prototype.contents = $util.newBuffer([]);\n\n /**\n * Creates a new FileContents instance using the specified properties.\n * @function create\n * @memberof proto.FileGetContentsResponse.FileContents\n * @static\n * @param {proto.FileGetContentsResponse.IFileContents=} [properties] Properties to set\n * @returns {proto.FileGetContentsResponse.FileContents} FileContents instance\n */\n FileContents.create = function create(properties) {\n return new FileContents(properties);\n };\n\n /**\n * Encodes the specified FileContents message. Does not implicitly {@link proto.FileGetContentsResponse.FileContents.verify|verify} messages.\n * @function encode\n * @memberof proto.FileGetContentsResponse.FileContents\n * @static\n * @param {proto.FileGetContentsResponse.IFileContents} m FileContents message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FileContents.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(10).fork()).ldelim();\n if (m.contents != null && Object.hasOwnProperty.call(m, \"contents\"))\n w.uint32(18).bytes(m.contents);\n return w;\n };\n\n /**\n * Decodes a FileContents message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FileGetContentsResponse.FileContents\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FileGetContentsResponse.FileContents} FileContents\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FileContents.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FileGetContentsResponse.FileContents();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 2:\n m.contents = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FileContents;\n })();\n\n return FileGetContentsResponse;\n })();\n\n proto.FileGetInfoQuery = (function() {\n\n /**\n * Properties of a FileGetInfoQuery.\n * @memberof proto\n * @interface IFileGetInfoQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.IFileID|null} [fileID] The file ID of the file for which information is requested\n */\n\n /**\n * Constructs a new FileGetInfoQuery.\n * @memberof proto\n * @classdesc Get all of the information about a file, except for its contents. When a file expires, it no\n * longer exists, and there will be no info about it, and the fileInfo field will be blank. If a\n * transaction or smart contract deletes the file, but it has not yet expired, then the fileInfo\n * field will be non-empty, the deleted field will be true, its size will be 0, and its contents\n * will be empty.\n * @implements IFileGetInfoQuery\n * @constructor\n * @param {proto.IFileGetInfoQuery=} [p] Properties to set\n */\n function FileGetInfoQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.FileGetInfoQuery\n * @instance\n */\n FileGetInfoQuery.prototype.header = null;\n\n /**\n * The file ID of the file for which information is requested\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.FileGetInfoQuery\n * @instance\n */\n FileGetInfoQuery.prototype.fileID = null;\n\n /**\n * Creates a new FileGetInfoQuery instance using the specified properties.\n * @function create\n * @memberof proto.FileGetInfoQuery\n * @static\n * @param {proto.IFileGetInfoQuery=} [properties] Properties to set\n * @returns {proto.FileGetInfoQuery} FileGetInfoQuery instance\n */\n FileGetInfoQuery.create = function create(properties) {\n return new FileGetInfoQuery(properties);\n };\n\n /**\n * Encodes the specified FileGetInfoQuery message. Does not implicitly {@link proto.FileGetInfoQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.FileGetInfoQuery\n * @static\n * @param {proto.IFileGetInfoQuery} m FileGetInfoQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FileGetInfoQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a FileGetInfoQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FileGetInfoQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FileGetInfoQuery} FileGetInfoQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FileGetInfoQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FileGetInfoQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FileGetInfoQuery;\n })();\n\n proto.FileGetInfoResponse = (function() {\n\n /**\n * Properties of a FileGetInfoResponse.\n * @memberof proto\n * @interface IFileGetInfoResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.FileGetInfoResponse.IFileInfo|null} [fileInfo] The information about the file\n */\n\n /**\n * Constructs a new FileGetInfoResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node FileGetInfoQuery\n * @implements IFileGetInfoResponse\n * @constructor\n * @param {proto.IFileGetInfoResponse=} [p] Properties to set\n */\n function FileGetInfoResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.FileGetInfoResponse\n * @instance\n */\n FileGetInfoResponse.prototype.header = null;\n\n /**\n * The information about the file\n * @member {proto.FileGetInfoResponse.IFileInfo|null|undefined} fileInfo\n * @memberof proto.FileGetInfoResponse\n * @instance\n */\n FileGetInfoResponse.prototype.fileInfo = null;\n\n /**\n * Creates a new FileGetInfoResponse instance using the specified properties.\n * @function create\n * @memberof proto.FileGetInfoResponse\n * @static\n * @param {proto.IFileGetInfoResponse=} [properties] Properties to set\n * @returns {proto.FileGetInfoResponse} FileGetInfoResponse instance\n */\n FileGetInfoResponse.create = function create(properties) {\n return new FileGetInfoResponse(properties);\n };\n\n /**\n * Encodes the specified FileGetInfoResponse message. Does not implicitly {@link proto.FileGetInfoResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.FileGetInfoResponse\n * @static\n * @param {proto.IFileGetInfoResponse} m FileGetInfoResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FileGetInfoResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.fileInfo != null && Object.hasOwnProperty.call(m, \"fileInfo\"))\n $root.proto.FileGetInfoResponse.FileInfo.encode(m.fileInfo, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a FileGetInfoResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FileGetInfoResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FileGetInfoResponse} FileGetInfoResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FileGetInfoResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FileGetInfoResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.fileInfo = $root.proto.FileGetInfoResponse.FileInfo.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n FileGetInfoResponse.FileInfo = (function() {\n\n /**\n * Properties of a FileInfo.\n * @memberof proto.FileGetInfoResponse\n * @interface IFileInfo\n * @property {proto.IFileID|null} [fileID] The file ID of the file for which information is requested\n * @property {Long|null} [size] Number of bytes in contents\n * @property {proto.ITimestamp|null} [expirationTime] The current time at which this account is set to expire\n * @property {boolean|null} [deleted] True if deleted but not yet expired\n * @property {proto.IKeyList|null} [keys] One of these keys must sign in order to modify or delete the file\n * @property {string|null} [memo] The memo associated with the file\n * @property {Uint8Array|null} [ledgerId] The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n */\n\n /**\n * Constructs a new FileInfo.\n * @memberof proto.FileGetInfoResponse\n * @classdesc Represents a FileInfo.\n * @implements IFileInfo\n * @constructor\n * @param {proto.FileGetInfoResponse.IFileInfo=} [p] Properties to set\n */\n function FileInfo(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The file ID of the file for which information is requested\n * @member {proto.IFileID|null|undefined} fileID\n * @memberof proto.FileGetInfoResponse.FileInfo\n * @instance\n */\n FileInfo.prototype.fileID = null;\n\n /**\n * Number of bytes in contents\n * @member {Long} size\n * @memberof proto.FileGetInfoResponse.FileInfo\n * @instance\n */\n FileInfo.prototype.size = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The current time at which this account is set to expire\n * @member {proto.ITimestamp|null|undefined} expirationTime\n * @memberof proto.FileGetInfoResponse.FileInfo\n * @instance\n */\n FileInfo.prototype.expirationTime = null;\n\n /**\n * True if deleted but not yet expired\n * @member {boolean} deleted\n * @memberof proto.FileGetInfoResponse.FileInfo\n * @instance\n */\n FileInfo.prototype.deleted = false;\n\n /**\n * One of these keys must sign in order to modify or delete the file\n * @member {proto.IKeyList|null|undefined} keys\n * @memberof proto.FileGetInfoResponse.FileInfo\n * @instance\n */\n FileInfo.prototype.keys = null;\n\n /**\n * The memo associated with the file\n * @member {string} memo\n * @memberof proto.FileGetInfoResponse.FileInfo\n * @instance\n */\n FileInfo.prototype.memo = \"\";\n\n /**\n * The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n * @member {Uint8Array} ledgerId\n * @memberof proto.FileGetInfoResponse.FileInfo\n * @instance\n */\n FileInfo.prototype.ledgerId = $util.newBuffer([]);\n\n /**\n * Creates a new FileInfo instance using the specified properties.\n * @function create\n * @memberof proto.FileGetInfoResponse.FileInfo\n * @static\n * @param {proto.FileGetInfoResponse.IFileInfo=} [properties] Properties to set\n * @returns {proto.FileGetInfoResponse.FileInfo} FileInfo instance\n */\n FileInfo.create = function create(properties) {\n return new FileInfo(properties);\n };\n\n /**\n * Encodes the specified FileInfo message. Does not implicitly {@link proto.FileGetInfoResponse.FileInfo.verify|verify} messages.\n * @function encode\n * @memberof proto.FileGetInfoResponse.FileInfo\n * @static\n * @param {proto.FileGetInfoResponse.IFileInfo} m FileInfo message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FileInfo.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.fileID != null && Object.hasOwnProperty.call(m, \"fileID\"))\n $root.proto.FileID.encode(m.fileID, w.uint32(10).fork()).ldelim();\n if (m.size != null && Object.hasOwnProperty.call(m, \"size\"))\n w.uint32(16).int64(m.size);\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.Timestamp.encode(m.expirationTime, w.uint32(26).fork()).ldelim();\n if (m.deleted != null && Object.hasOwnProperty.call(m, \"deleted\"))\n w.uint32(32).bool(m.deleted);\n if (m.keys != null && Object.hasOwnProperty.call(m, \"keys\"))\n $root.proto.KeyList.encode(m.keys, w.uint32(42).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(50).string(m.memo);\n if (m.ledgerId != null && Object.hasOwnProperty.call(m, \"ledgerId\"))\n w.uint32(58).bytes(m.ledgerId);\n return w;\n };\n\n /**\n * Decodes a FileInfo message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FileGetInfoResponse.FileInfo\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FileGetInfoResponse.FileInfo} FileInfo\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FileInfo.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FileGetInfoResponse.FileInfo();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.fileID = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 2:\n m.size = r.int64();\n break;\n case 3:\n m.expirationTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 4:\n m.deleted = r.bool();\n break;\n case 5:\n m.keys = $root.proto.KeyList.decode(r, r.uint32());\n break;\n case 6:\n m.memo = r.string();\n break;\n case 7:\n m.ledgerId = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FileInfo;\n })();\n\n return FileGetInfoResponse;\n })();\n\n proto.TransactionGetReceiptQuery = (function() {\n\n /**\n * Properties of a TransactionGetReceiptQuery.\n * @memberof proto\n * @interface ITransactionGetReceiptQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.ITransactionID|null} [transactionID] The ID of the transaction for which the receipt is requested.\n * @property {boolean|null} [includeDuplicates] Whether receipts of processing duplicate transactions should be returned along with the\n * receipt of processing the first consensus transaction with the given id whose status was\n * neither INVALID_NODE_ACCOUNT nor INVALID_PAYER_SIGNATURE; or, if no\n * such receipt exists, the receipt of processing the first transaction to reach consensus with\n * the given transaction id.\n * @property {boolean|null} [includeChildReceipts] Whether the response should include the receipts of any child transactions spawned by the\n * top-level transaction with the given transactionID.\n */\n\n /**\n * Constructs a new TransactionGetReceiptQuery.\n * @memberof proto\n * @classdesc Get the receipt of a transaction, given its transaction ID. Once a transaction reaches consensus,\n * then information about whether it succeeded or failed will be available until the end of the\n * receipt period. Before and after the receipt period, and for a transaction that was never\n * submitted, the receipt is unknown. This query is free (the payment field is left empty). No\n * State proof is available for this response\n * @implements ITransactionGetReceiptQuery\n * @constructor\n * @param {proto.ITransactionGetReceiptQuery=} [p] Properties to set\n */\n function TransactionGetReceiptQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.TransactionGetReceiptQuery\n * @instance\n */\n TransactionGetReceiptQuery.prototype.header = null;\n\n /**\n * The ID of the transaction for which the receipt is requested.\n * @member {proto.ITransactionID|null|undefined} transactionID\n * @memberof proto.TransactionGetReceiptQuery\n * @instance\n */\n TransactionGetReceiptQuery.prototype.transactionID = null;\n\n /**\n * Whether receipts of processing duplicate transactions should be returned along with the\n * receipt of processing the first consensus transaction with the given id whose status was\n * neither INVALID_NODE_ACCOUNT nor INVALID_PAYER_SIGNATURE; or, if no\n * such receipt exists, the receipt of processing the first transaction to reach consensus with\n * the given transaction id.\n * @member {boolean} includeDuplicates\n * @memberof proto.TransactionGetReceiptQuery\n * @instance\n */\n TransactionGetReceiptQuery.prototype.includeDuplicates = false;\n\n /**\n * Whether the response should include the receipts of any child transactions spawned by the\n * top-level transaction with the given transactionID.\n * @member {boolean} includeChildReceipts\n * @memberof proto.TransactionGetReceiptQuery\n * @instance\n */\n TransactionGetReceiptQuery.prototype.includeChildReceipts = false;\n\n /**\n * Creates a new TransactionGetReceiptQuery instance using the specified properties.\n * @function create\n * @memberof proto.TransactionGetReceiptQuery\n * @static\n * @param {proto.ITransactionGetReceiptQuery=} [properties] Properties to set\n * @returns {proto.TransactionGetReceiptQuery} TransactionGetReceiptQuery instance\n */\n TransactionGetReceiptQuery.create = function create(properties) {\n return new TransactionGetReceiptQuery(properties);\n };\n\n /**\n * Encodes the specified TransactionGetReceiptQuery message. Does not implicitly {@link proto.TransactionGetReceiptQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionGetReceiptQuery\n * @static\n * @param {proto.ITransactionGetReceiptQuery} m TransactionGetReceiptQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionGetReceiptQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.transactionID != null && Object.hasOwnProperty.call(m, \"transactionID\"))\n $root.proto.TransactionID.encode(m.transactionID, w.uint32(18).fork()).ldelim();\n if (m.includeDuplicates != null && Object.hasOwnProperty.call(m, \"includeDuplicates\"))\n w.uint32(24).bool(m.includeDuplicates);\n if (m.includeChildReceipts != null && Object.hasOwnProperty.call(m, \"includeChildReceipts\"))\n w.uint32(32).bool(m.includeChildReceipts);\n return w;\n };\n\n /**\n * Decodes a TransactionGetReceiptQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionGetReceiptQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionGetReceiptQuery} TransactionGetReceiptQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionGetReceiptQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionGetReceiptQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.transactionID = $root.proto.TransactionID.decode(r, r.uint32());\n break;\n case 3:\n m.includeDuplicates = r.bool();\n break;\n case 4:\n m.includeChildReceipts = r.bool();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionGetReceiptQuery;\n })();\n\n proto.TransactionGetReceiptResponse = (function() {\n\n /**\n * Properties of a TransactionGetReceiptResponse.\n * @memberof proto\n * @interface ITransactionGetReceiptResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.ITransactionReceipt|null} [receipt] Either the receipt of processing the first consensus transaction with the given id whose\n * status was neither INVALID_NODE_ACCOUNT nor INVALID_PAYER_SIGNATURE;\n * or, if no such receipt exists, the receipt of processing the first transaction to\n * reach consensus with the given transaction id.\n * @property {Array.|null} [duplicateTransactionReceipts] The receipts of processing all transactions with the given id, in consensus time order.\n * @property {Array.|null} [childTransactionReceipts] The receipts (if any) of all child transactions spawned by the transaction with the\n * given top-level id, in consensus order. Always empty if the top-level status is UNKNOWN.\n */\n\n /**\n * Constructs a new TransactionGetReceiptResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node TransactionGetReceiptQuery. If it created a new entity\n * (account, file, or smart contract instance) then one of the three ID fields will be filled in\n * with the ID of the new entity. Sometimes a single transaction will create more than one new\n * entity, such as when a new contract instance is created, and this also creates the new account\n * that it owned by that instance. No State proof is available for this response\n * @implements ITransactionGetReceiptResponse\n * @constructor\n * @param {proto.ITransactionGetReceiptResponse=} [p] Properties to set\n */\n function TransactionGetReceiptResponse(p) {\n this.duplicateTransactionReceipts = [];\n this.childTransactionReceipts = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.TransactionGetReceiptResponse\n * @instance\n */\n TransactionGetReceiptResponse.prototype.header = null;\n\n /**\n * Either the receipt of processing the first consensus transaction with the given id whose\n * status was neither INVALID_NODE_ACCOUNT nor INVALID_PAYER_SIGNATURE;\n * or, if no such receipt exists, the receipt of processing the first transaction to\n * reach consensus with the given transaction id.\n * @member {proto.ITransactionReceipt|null|undefined} receipt\n * @memberof proto.TransactionGetReceiptResponse\n * @instance\n */\n TransactionGetReceiptResponse.prototype.receipt = null;\n\n /**\n * The receipts of processing all transactions with the given id, in consensus time order.\n * @member {Array.} duplicateTransactionReceipts\n * @memberof proto.TransactionGetReceiptResponse\n * @instance\n */\n TransactionGetReceiptResponse.prototype.duplicateTransactionReceipts = $util.emptyArray;\n\n /**\n * The receipts (if any) of all child transactions spawned by the transaction with the\n * given top-level id, in consensus order. Always empty if the top-level status is UNKNOWN.\n * @member {Array.} childTransactionReceipts\n * @memberof proto.TransactionGetReceiptResponse\n * @instance\n */\n TransactionGetReceiptResponse.prototype.childTransactionReceipts = $util.emptyArray;\n\n /**\n * Creates a new TransactionGetReceiptResponse instance using the specified properties.\n * @function create\n * @memberof proto.TransactionGetReceiptResponse\n * @static\n * @param {proto.ITransactionGetReceiptResponse=} [properties] Properties to set\n * @returns {proto.TransactionGetReceiptResponse} TransactionGetReceiptResponse instance\n */\n TransactionGetReceiptResponse.create = function create(properties) {\n return new TransactionGetReceiptResponse(properties);\n };\n\n /**\n * Encodes the specified TransactionGetReceiptResponse message. Does not implicitly {@link proto.TransactionGetReceiptResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionGetReceiptResponse\n * @static\n * @param {proto.ITransactionGetReceiptResponse} m TransactionGetReceiptResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionGetReceiptResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.receipt != null && Object.hasOwnProperty.call(m, \"receipt\"))\n $root.proto.TransactionReceipt.encode(m.receipt, w.uint32(18).fork()).ldelim();\n if (m.duplicateTransactionReceipts != null && m.duplicateTransactionReceipts.length) {\n for (var i = 0; i < m.duplicateTransactionReceipts.length; ++i)\n $root.proto.TransactionReceipt.encode(m.duplicateTransactionReceipts[i], w.uint32(34).fork()).ldelim();\n }\n if (m.childTransactionReceipts != null && m.childTransactionReceipts.length) {\n for (var i = 0; i < m.childTransactionReceipts.length; ++i)\n $root.proto.TransactionReceipt.encode(m.childTransactionReceipts[i], w.uint32(42).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TransactionGetReceiptResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionGetReceiptResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionGetReceiptResponse} TransactionGetReceiptResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionGetReceiptResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionGetReceiptResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.receipt = $root.proto.TransactionReceipt.decode(r, r.uint32());\n break;\n case 4:\n if (!(m.duplicateTransactionReceipts && m.duplicateTransactionReceipts.length))\n m.duplicateTransactionReceipts = [];\n m.duplicateTransactionReceipts.push($root.proto.TransactionReceipt.decode(r, r.uint32()));\n break;\n case 5:\n if (!(m.childTransactionReceipts && m.childTransactionReceipts.length))\n m.childTransactionReceipts = [];\n m.childTransactionReceipts.push($root.proto.TransactionReceipt.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionGetReceiptResponse;\n })();\n\n proto.TransactionGetRecordQuery = (function() {\n\n /**\n * Properties of a TransactionGetRecordQuery.\n * @memberof proto\n * @interface ITransactionGetRecordQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.ITransactionID|null} [transactionID] The ID of the transaction for which the record is requested.\n * @property {boolean|null} [includeDuplicates] Whether records of processing duplicate transactions should be returned along with the record\n * of processing the first consensus transaction with the given id whose status was neither\n * INVALID_NODE_ACCOUNT nor INVALID_PAYER_SIGNATURE; or, if no such\n * record exists, the record of processing the first transaction to reach consensus with the\n * given transaction id..\n * @property {boolean|null} [includeChildRecords] Whether the response should include the records of any child transactions spawned by the\n * top-level transaction with the given transactionID.\n */\n\n /**\n * Constructs a new TransactionGetRecordQuery.\n * @memberof proto\n * @classdesc Get the record for a transaction. If the transaction requested a record, then the record lasts\n * for one hour, and a state proof is available for it. If the transaction created an account, file,\n * or smart contract instance, then the record will contain the ID for what it created. If the\n * transaction called a smart contract function, then the record contains the result of that call.\n * If the transaction was a cryptocurrency transfer, then the record includes the TransferList which\n * gives the details of that transfer. If the transaction didn't return anything that should be in\n * the record, then the results field will be set to nothing.\n * @implements ITransactionGetRecordQuery\n * @constructor\n * @param {proto.ITransactionGetRecordQuery=} [p] Properties to set\n */\n function TransactionGetRecordQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.TransactionGetRecordQuery\n * @instance\n */\n TransactionGetRecordQuery.prototype.header = null;\n\n /**\n * The ID of the transaction for which the record is requested.\n * @member {proto.ITransactionID|null|undefined} transactionID\n * @memberof proto.TransactionGetRecordQuery\n * @instance\n */\n TransactionGetRecordQuery.prototype.transactionID = null;\n\n /**\n * Whether records of processing duplicate transactions should be returned along with the record\n * of processing the first consensus transaction with the given id whose status was neither\n * INVALID_NODE_ACCOUNT nor INVALID_PAYER_SIGNATURE; or, if no such\n * record exists, the record of processing the first transaction to reach consensus with the\n * given transaction id..\n * @member {boolean} includeDuplicates\n * @memberof proto.TransactionGetRecordQuery\n * @instance\n */\n TransactionGetRecordQuery.prototype.includeDuplicates = false;\n\n /**\n * Whether the response should include the records of any child transactions spawned by the\n * top-level transaction with the given transactionID.\n * @member {boolean} includeChildRecords\n * @memberof proto.TransactionGetRecordQuery\n * @instance\n */\n TransactionGetRecordQuery.prototype.includeChildRecords = false;\n\n /**\n * Creates a new TransactionGetRecordQuery instance using the specified properties.\n * @function create\n * @memberof proto.TransactionGetRecordQuery\n * @static\n * @param {proto.ITransactionGetRecordQuery=} [properties] Properties to set\n * @returns {proto.TransactionGetRecordQuery} TransactionGetRecordQuery instance\n */\n TransactionGetRecordQuery.create = function create(properties) {\n return new TransactionGetRecordQuery(properties);\n };\n\n /**\n * Encodes the specified TransactionGetRecordQuery message. Does not implicitly {@link proto.TransactionGetRecordQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionGetRecordQuery\n * @static\n * @param {proto.ITransactionGetRecordQuery} m TransactionGetRecordQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionGetRecordQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.transactionID != null && Object.hasOwnProperty.call(m, \"transactionID\"))\n $root.proto.TransactionID.encode(m.transactionID, w.uint32(18).fork()).ldelim();\n if (m.includeDuplicates != null && Object.hasOwnProperty.call(m, \"includeDuplicates\"))\n w.uint32(24).bool(m.includeDuplicates);\n if (m.includeChildRecords != null && Object.hasOwnProperty.call(m, \"includeChildRecords\"))\n w.uint32(32).bool(m.includeChildRecords);\n return w;\n };\n\n /**\n * Decodes a TransactionGetRecordQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionGetRecordQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionGetRecordQuery} TransactionGetRecordQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionGetRecordQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionGetRecordQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.transactionID = $root.proto.TransactionID.decode(r, r.uint32());\n break;\n case 3:\n m.includeDuplicates = r.bool();\n break;\n case 4:\n m.includeChildRecords = r.bool();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionGetRecordQuery;\n })();\n\n proto.TransactionGetRecordResponse = (function() {\n\n /**\n * Properties of a TransactionGetRecordResponse.\n * @memberof proto\n * @interface ITransactionGetRecordResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither.\n * @property {proto.ITransactionRecord|null} [transactionRecord] Either the record of processing the first consensus transaction with the given id whose\n * status was neither INVALID_NODE_ACCOUNT nor INVALID_PAYER_SIGNATURE;\n * or, if no such record exists, the record of processing the first transaction to reach\n * consensus with the given transaction id.\n * @property {Array.|null} [duplicateTransactionRecords] The records of processing all consensus transaction with the same id as the distinguished\n * record above, in chronological order.\n * @property {Array.|null} [childTransactionRecords] The records of processing all child transaction spawned by the transaction with the given\n * top-level id, in consensus order. Always empty if the top-level status is UNKNOWN.\n */\n\n /**\n * Constructs a new TransactionGetRecordResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node TransactionGetRecordQuery\n * @implements ITransactionGetRecordResponse\n * @constructor\n * @param {proto.ITransactionGetRecordResponse=} [p] Properties to set\n */\n function TransactionGetRecordResponse(p) {\n this.duplicateTransactionRecords = [];\n this.childTransactionRecords = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither.\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.TransactionGetRecordResponse\n * @instance\n */\n TransactionGetRecordResponse.prototype.header = null;\n\n /**\n * Either the record of processing the first consensus transaction with the given id whose\n * status was neither INVALID_NODE_ACCOUNT nor INVALID_PAYER_SIGNATURE;\n * or, if no such record exists, the record of processing the first transaction to reach\n * consensus with the given transaction id.\n * @member {proto.ITransactionRecord|null|undefined} transactionRecord\n * @memberof proto.TransactionGetRecordResponse\n * @instance\n */\n TransactionGetRecordResponse.prototype.transactionRecord = null;\n\n /**\n * The records of processing all consensus transaction with the same id as the distinguished\n * record above, in chronological order.\n * @member {Array.} duplicateTransactionRecords\n * @memberof proto.TransactionGetRecordResponse\n * @instance\n */\n TransactionGetRecordResponse.prototype.duplicateTransactionRecords = $util.emptyArray;\n\n /**\n * The records of processing all child transaction spawned by the transaction with the given\n * top-level id, in consensus order. Always empty if the top-level status is UNKNOWN.\n * @member {Array.} childTransactionRecords\n * @memberof proto.TransactionGetRecordResponse\n * @instance\n */\n TransactionGetRecordResponse.prototype.childTransactionRecords = $util.emptyArray;\n\n /**\n * Creates a new TransactionGetRecordResponse instance using the specified properties.\n * @function create\n * @memberof proto.TransactionGetRecordResponse\n * @static\n * @param {proto.ITransactionGetRecordResponse=} [properties] Properties to set\n * @returns {proto.TransactionGetRecordResponse} TransactionGetRecordResponse instance\n */\n TransactionGetRecordResponse.create = function create(properties) {\n return new TransactionGetRecordResponse(properties);\n };\n\n /**\n * Encodes the specified TransactionGetRecordResponse message. Does not implicitly {@link proto.TransactionGetRecordResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionGetRecordResponse\n * @static\n * @param {proto.ITransactionGetRecordResponse} m TransactionGetRecordResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionGetRecordResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.transactionRecord != null && Object.hasOwnProperty.call(m, \"transactionRecord\"))\n $root.proto.TransactionRecord.encode(m.transactionRecord, w.uint32(26).fork()).ldelim();\n if (m.duplicateTransactionRecords != null && m.duplicateTransactionRecords.length) {\n for (var i = 0; i < m.duplicateTransactionRecords.length; ++i)\n $root.proto.TransactionRecord.encode(m.duplicateTransactionRecords[i], w.uint32(34).fork()).ldelim();\n }\n if (m.childTransactionRecords != null && m.childTransactionRecords.length) {\n for (var i = 0; i < m.childTransactionRecords.length; ++i)\n $root.proto.TransactionRecord.encode(m.childTransactionRecords[i], w.uint32(42).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TransactionGetRecordResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionGetRecordResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionGetRecordResponse} TransactionGetRecordResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionGetRecordResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionGetRecordResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 3:\n m.transactionRecord = $root.proto.TransactionRecord.decode(r, r.uint32());\n break;\n case 4:\n if (!(m.duplicateTransactionRecords && m.duplicateTransactionRecords.length))\n m.duplicateTransactionRecords = [];\n m.duplicateTransactionRecords.push($root.proto.TransactionRecord.decode(r, r.uint32()));\n break;\n case 5:\n if (!(m.childTransactionRecords && m.childTransactionRecords.length))\n m.childTransactionRecords = [];\n m.childTransactionRecords.push($root.proto.TransactionRecord.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionGetRecordResponse;\n })();\n\n proto.TransactionGetFastRecordQuery = (function() {\n\n /**\n * Properties of a TransactionGetFastRecordQuery.\n * @memberof proto\n * @interface ITransactionGetFastRecordQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.ITransactionID|null} [transactionID] The ID of the transaction for which the record is requested.\n */\n\n /**\n * Constructs a new TransactionGetFastRecordQuery.\n * @memberof proto\n * @classdesc Get the tx record of a transaction, given its transaction ID. Once a transaction reaches\n * consensus, then information about whether it succeeded or failed will be available until the end\n * of the receipt period. Before and after the receipt period, and for a transaction that was never\n * submitted, the receipt is unknown. This query is free (the payment field is left empty).\n * @implements ITransactionGetFastRecordQuery\n * @constructor\n * @param {proto.ITransactionGetFastRecordQuery=} [p] Properties to set\n */\n function TransactionGetFastRecordQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.TransactionGetFastRecordQuery\n * @instance\n */\n TransactionGetFastRecordQuery.prototype.header = null;\n\n /**\n * The ID of the transaction for which the record is requested.\n * @member {proto.ITransactionID|null|undefined} transactionID\n * @memberof proto.TransactionGetFastRecordQuery\n * @instance\n */\n TransactionGetFastRecordQuery.prototype.transactionID = null;\n\n /**\n * Creates a new TransactionGetFastRecordQuery instance using the specified properties.\n * @function create\n * @memberof proto.TransactionGetFastRecordQuery\n * @static\n * @param {proto.ITransactionGetFastRecordQuery=} [properties] Properties to set\n * @returns {proto.TransactionGetFastRecordQuery} TransactionGetFastRecordQuery instance\n */\n TransactionGetFastRecordQuery.create = function create(properties) {\n return new TransactionGetFastRecordQuery(properties);\n };\n\n /**\n * Encodes the specified TransactionGetFastRecordQuery message. Does not implicitly {@link proto.TransactionGetFastRecordQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionGetFastRecordQuery\n * @static\n * @param {proto.ITransactionGetFastRecordQuery} m TransactionGetFastRecordQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionGetFastRecordQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.transactionID != null && Object.hasOwnProperty.call(m, \"transactionID\"))\n $root.proto.TransactionID.encode(m.transactionID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TransactionGetFastRecordQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionGetFastRecordQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionGetFastRecordQuery} TransactionGetFastRecordQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionGetFastRecordQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionGetFastRecordQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.transactionID = $root.proto.TransactionID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionGetFastRecordQuery;\n })();\n\n proto.TransactionGetFastRecordResponse = (function() {\n\n /**\n * Properties of a TransactionGetFastRecordResponse.\n * @memberof proto\n * @interface ITransactionGetFastRecordResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.ITransactionRecord|null} [transactionRecord] The requested transaction records\n */\n\n /**\n * Constructs a new TransactionGetFastRecordResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node TransactionGetFastRecordQuery. If it created a new entity\n * (account, file, or smart contract instance) then one of the three ID fields will be filled in\n * with the ID of the new entity. Sometimes a single transaction will create more than one new\n * entity, such as when a new contract instance is created, and this also creates the new account\n * that it owned by that instance.\n * @implements ITransactionGetFastRecordResponse\n * @constructor\n * @param {proto.ITransactionGetFastRecordResponse=} [p] Properties to set\n */\n function TransactionGetFastRecordResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.TransactionGetFastRecordResponse\n * @instance\n */\n TransactionGetFastRecordResponse.prototype.header = null;\n\n /**\n * The requested transaction records\n * @member {proto.ITransactionRecord|null|undefined} transactionRecord\n * @memberof proto.TransactionGetFastRecordResponse\n * @instance\n */\n TransactionGetFastRecordResponse.prototype.transactionRecord = null;\n\n /**\n * Creates a new TransactionGetFastRecordResponse instance using the specified properties.\n * @function create\n * @memberof proto.TransactionGetFastRecordResponse\n * @static\n * @param {proto.ITransactionGetFastRecordResponse=} [properties] Properties to set\n * @returns {proto.TransactionGetFastRecordResponse} TransactionGetFastRecordResponse instance\n */\n TransactionGetFastRecordResponse.create = function create(properties) {\n return new TransactionGetFastRecordResponse(properties);\n };\n\n /**\n * Encodes the specified TransactionGetFastRecordResponse message. Does not implicitly {@link proto.TransactionGetFastRecordResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionGetFastRecordResponse\n * @static\n * @param {proto.ITransactionGetFastRecordResponse} m TransactionGetFastRecordResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionGetFastRecordResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.transactionRecord != null && Object.hasOwnProperty.call(m, \"transactionRecord\"))\n $root.proto.TransactionRecord.encode(m.transactionRecord, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TransactionGetFastRecordResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionGetFastRecordResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionGetFastRecordResponse} TransactionGetFastRecordResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionGetFastRecordResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionGetFastRecordResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.transactionRecord = $root.proto.TransactionRecord.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionGetFastRecordResponse;\n })();\n\n proto.NetworkGetVersionInfoQuery = (function() {\n\n /**\n * Properties of a NetworkGetVersionInfoQuery.\n * @memberof proto\n * @interface INetworkGetVersionInfoQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n */\n\n /**\n * Constructs a new NetworkGetVersionInfoQuery.\n * @memberof proto\n * @classdesc Get the deployed versions of Hedera Services and the HAPI proto in semantic version format\n * @implements INetworkGetVersionInfoQuery\n * @constructor\n * @param {proto.INetworkGetVersionInfoQuery=} [p] Properties to set\n */\n function NetworkGetVersionInfoQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.NetworkGetVersionInfoQuery\n * @instance\n */\n NetworkGetVersionInfoQuery.prototype.header = null;\n\n /**\n * Creates a new NetworkGetVersionInfoQuery instance using the specified properties.\n * @function create\n * @memberof proto.NetworkGetVersionInfoQuery\n * @static\n * @param {proto.INetworkGetVersionInfoQuery=} [properties] Properties to set\n * @returns {proto.NetworkGetVersionInfoQuery} NetworkGetVersionInfoQuery instance\n */\n NetworkGetVersionInfoQuery.create = function create(properties) {\n return new NetworkGetVersionInfoQuery(properties);\n };\n\n /**\n * Encodes the specified NetworkGetVersionInfoQuery message. Does not implicitly {@link proto.NetworkGetVersionInfoQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.NetworkGetVersionInfoQuery\n * @static\n * @param {proto.INetworkGetVersionInfoQuery} m NetworkGetVersionInfoQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n NetworkGetVersionInfoQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a NetworkGetVersionInfoQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.NetworkGetVersionInfoQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.NetworkGetVersionInfoQuery} NetworkGetVersionInfoQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n NetworkGetVersionInfoQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.NetworkGetVersionInfoQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return NetworkGetVersionInfoQuery;\n })();\n\n proto.NetworkGetVersionInfoResponse = (function() {\n\n /**\n * Properties of a NetworkGetVersionInfoResponse.\n * @memberof proto\n * @interface INetworkGetVersionInfoResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.ISemanticVersion|null} [hapiProtoVersion] The Hedera API (HAPI) protobuf version recognized by the responding node.\n * @property {proto.ISemanticVersion|null} [hederaServicesVersion] The version of the Hedera Services software deployed on the responding node.\n */\n\n /**\n * Constructs a new NetworkGetVersionInfoResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node NetworkGetVersionInfoQuery\n * @implements INetworkGetVersionInfoResponse\n * @constructor\n * @param {proto.INetworkGetVersionInfoResponse=} [p] Properties to set\n */\n function NetworkGetVersionInfoResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.NetworkGetVersionInfoResponse\n * @instance\n */\n NetworkGetVersionInfoResponse.prototype.header = null;\n\n /**\n * The Hedera API (HAPI) protobuf version recognized by the responding node.\n * @member {proto.ISemanticVersion|null|undefined} hapiProtoVersion\n * @memberof proto.NetworkGetVersionInfoResponse\n * @instance\n */\n NetworkGetVersionInfoResponse.prototype.hapiProtoVersion = null;\n\n /**\n * The version of the Hedera Services software deployed on the responding node.\n * @member {proto.ISemanticVersion|null|undefined} hederaServicesVersion\n * @memberof proto.NetworkGetVersionInfoResponse\n * @instance\n */\n NetworkGetVersionInfoResponse.prototype.hederaServicesVersion = null;\n\n /**\n * Creates a new NetworkGetVersionInfoResponse instance using the specified properties.\n * @function create\n * @memberof proto.NetworkGetVersionInfoResponse\n * @static\n * @param {proto.INetworkGetVersionInfoResponse=} [properties] Properties to set\n * @returns {proto.NetworkGetVersionInfoResponse} NetworkGetVersionInfoResponse instance\n */\n NetworkGetVersionInfoResponse.create = function create(properties) {\n return new NetworkGetVersionInfoResponse(properties);\n };\n\n /**\n * Encodes the specified NetworkGetVersionInfoResponse message. Does not implicitly {@link proto.NetworkGetVersionInfoResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.NetworkGetVersionInfoResponse\n * @static\n * @param {proto.INetworkGetVersionInfoResponse} m NetworkGetVersionInfoResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n NetworkGetVersionInfoResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.hapiProtoVersion != null && Object.hasOwnProperty.call(m, \"hapiProtoVersion\"))\n $root.proto.SemanticVersion.encode(m.hapiProtoVersion, w.uint32(18).fork()).ldelim();\n if (m.hederaServicesVersion != null && Object.hasOwnProperty.call(m, \"hederaServicesVersion\"))\n $root.proto.SemanticVersion.encode(m.hederaServicesVersion, w.uint32(26).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a NetworkGetVersionInfoResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.NetworkGetVersionInfoResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.NetworkGetVersionInfoResponse} NetworkGetVersionInfoResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n NetworkGetVersionInfoResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.NetworkGetVersionInfoResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.hapiProtoVersion = $root.proto.SemanticVersion.decode(r, r.uint32());\n break;\n case 3:\n m.hederaServicesVersion = $root.proto.SemanticVersion.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return NetworkGetVersionInfoResponse;\n })();\n\n proto.NetworkGetExecutionTimeQuery = (function() {\n\n /**\n * Properties of a NetworkGetExecutionTimeQuery.\n * @memberof proto\n * @interface INetworkGetExecutionTimeQuery\n * @property {proto.IQueryHeader|null} [header] standard info sent from client to node including the signed payment, and what kind of response\n * is requested (cost, state proof, both, or neither).\n * @property {Array.|null} [transactionIds] The id(s) of the transactions to get the execution time(s) of\n */\n\n /**\n * Constructs a new NetworkGetExecutionTimeQuery.\n * @memberof proto\n * @classdesc Gets the time in nanoseconds spent in handleTransaction for one or more\n * TransactionIDs (assuming they have reached consensus \"recently\", since only a limited\n * number of execution times are kept in-memory, depending on the value of the node-local\n * property stats.executionTimesToTrack).\n * @implements INetworkGetExecutionTimeQuery\n * @constructor\n * @param {proto.INetworkGetExecutionTimeQuery=} [p] Properties to set\n */\n function NetworkGetExecutionTimeQuery(p) {\n this.transactionIds = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * standard info sent from client to node including the signed payment, and what kind of response\n * is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.NetworkGetExecutionTimeQuery\n * @instance\n */\n NetworkGetExecutionTimeQuery.prototype.header = null;\n\n /**\n * The id(s) of the transactions to get the execution time(s) of\n * @member {Array.} transactionIds\n * @memberof proto.NetworkGetExecutionTimeQuery\n * @instance\n */\n NetworkGetExecutionTimeQuery.prototype.transactionIds = $util.emptyArray;\n\n /**\n * Creates a new NetworkGetExecutionTimeQuery instance using the specified properties.\n * @function create\n * @memberof proto.NetworkGetExecutionTimeQuery\n * @static\n * @param {proto.INetworkGetExecutionTimeQuery=} [properties] Properties to set\n * @returns {proto.NetworkGetExecutionTimeQuery} NetworkGetExecutionTimeQuery instance\n */\n NetworkGetExecutionTimeQuery.create = function create(properties) {\n return new NetworkGetExecutionTimeQuery(properties);\n };\n\n /**\n * Encodes the specified NetworkGetExecutionTimeQuery message. Does not implicitly {@link proto.NetworkGetExecutionTimeQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.NetworkGetExecutionTimeQuery\n * @static\n * @param {proto.INetworkGetExecutionTimeQuery} m NetworkGetExecutionTimeQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n NetworkGetExecutionTimeQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.transactionIds != null && m.transactionIds.length) {\n for (var i = 0; i < m.transactionIds.length; ++i)\n $root.proto.TransactionID.encode(m.transactionIds[i], w.uint32(18).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a NetworkGetExecutionTimeQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.NetworkGetExecutionTimeQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.NetworkGetExecutionTimeQuery} NetworkGetExecutionTimeQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n NetworkGetExecutionTimeQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.NetworkGetExecutionTimeQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.transactionIds && m.transactionIds.length))\n m.transactionIds = [];\n m.transactionIds.push($root.proto.TransactionID.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return NetworkGetExecutionTimeQuery;\n })();\n\n proto.NetworkGetExecutionTimeResponse = (function() {\n\n /**\n * Properties of a NetworkGetExecutionTimeResponse.\n * @memberof proto\n * @interface INetworkGetExecutionTimeResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {Array.|null} [executionTimes] The execution time(s) of the requested TransactionIDs, if available\n */\n\n /**\n * Constructs a new NetworkGetExecutionTimeResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node NetworkGetExecutionTimeQuery; returns\n * INVALID_TRANSACTION_ID if any of the given TransactionIDs do not have available\n * execution times in the answering node.\n * @implements INetworkGetExecutionTimeResponse\n * @constructor\n * @param {proto.INetworkGetExecutionTimeResponse=} [p] Properties to set\n */\n function NetworkGetExecutionTimeResponse(p) {\n this.executionTimes = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.NetworkGetExecutionTimeResponse\n * @instance\n */\n NetworkGetExecutionTimeResponse.prototype.header = null;\n\n /**\n * The execution time(s) of the requested TransactionIDs, if available\n * @member {Array.} executionTimes\n * @memberof proto.NetworkGetExecutionTimeResponse\n * @instance\n */\n NetworkGetExecutionTimeResponse.prototype.executionTimes = $util.emptyArray;\n\n /**\n * Creates a new NetworkGetExecutionTimeResponse instance using the specified properties.\n * @function create\n * @memberof proto.NetworkGetExecutionTimeResponse\n * @static\n * @param {proto.INetworkGetExecutionTimeResponse=} [properties] Properties to set\n * @returns {proto.NetworkGetExecutionTimeResponse} NetworkGetExecutionTimeResponse instance\n */\n NetworkGetExecutionTimeResponse.create = function create(properties) {\n return new NetworkGetExecutionTimeResponse(properties);\n };\n\n /**\n * Encodes the specified NetworkGetExecutionTimeResponse message. Does not implicitly {@link proto.NetworkGetExecutionTimeResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.NetworkGetExecutionTimeResponse\n * @static\n * @param {proto.INetworkGetExecutionTimeResponse} m NetworkGetExecutionTimeResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n NetworkGetExecutionTimeResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.executionTimes != null && m.executionTimes.length) {\n w.uint32(18).fork();\n for (var i = 0; i < m.executionTimes.length; ++i)\n w.uint64(m.executionTimes[i]);\n w.ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a NetworkGetExecutionTimeResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.NetworkGetExecutionTimeResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.NetworkGetExecutionTimeResponse} NetworkGetExecutionTimeResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n NetworkGetExecutionTimeResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.NetworkGetExecutionTimeResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.executionTimes && m.executionTimes.length))\n m.executionTimes = [];\n if ((t & 7) === 2) {\n var c2 = r.uint32() + r.pos;\n while (r.pos < c2)\n m.executionTimes.push(r.uint64());\n } else\n m.executionTimes.push(r.uint64());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return NetworkGetExecutionTimeResponse;\n })();\n\n proto.TokenGetInfoQuery = (function() {\n\n /**\n * Properties of a TokenGetInfoQuery.\n * @memberof proto\n * @interface ITokenGetInfoQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither)\n * @property {proto.ITokenID|null} [token] The token for which information is requested. If invalid token is provided, INVALID_TOKEN_ID\n * response is returned.\n */\n\n /**\n * Constructs a new TokenGetInfoQuery.\n * @memberof proto\n * @classdesc Gets information about Token instance\n * @implements ITokenGetInfoQuery\n * @constructor\n * @param {proto.ITokenGetInfoQuery=} [p] Properties to set\n */\n function TokenGetInfoQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither)\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.TokenGetInfoQuery\n * @instance\n */\n TokenGetInfoQuery.prototype.header = null;\n\n /**\n * The token for which information is requested. If invalid token is provided, INVALID_TOKEN_ID\n * response is returned.\n * @member {proto.ITokenID|null|undefined} token\n * @memberof proto.TokenGetInfoQuery\n * @instance\n */\n TokenGetInfoQuery.prototype.token = null;\n\n /**\n * Creates a new TokenGetInfoQuery instance using the specified properties.\n * @function create\n * @memberof proto.TokenGetInfoQuery\n * @static\n * @param {proto.ITokenGetInfoQuery=} [properties] Properties to set\n * @returns {proto.TokenGetInfoQuery} TokenGetInfoQuery instance\n */\n TokenGetInfoQuery.create = function create(properties) {\n return new TokenGetInfoQuery(properties);\n };\n\n /**\n * Encodes the specified TokenGetInfoQuery message. Does not implicitly {@link proto.TokenGetInfoQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenGetInfoQuery\n * @static\n * @param {proto.ITokenGetInfoQuery} m TokenGetInfoQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenGetInfoQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.token != null && Object.hasOwnProperty.call(m, \"token\"))\n $root.proto.TokenID.encode(m.token, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenGetInfoQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenGetInfoQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenGetInfoQuery} TokenGetInfoQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenGetInfoQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenGetInfoQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.token = $root.proto.TokenID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenGetInfoQuery;\n })();\n\n proto.TokenInfo = (function() {\n\n /**\n * Properties of a TokenInfo.\n * @memberof proto\n * @interface ITokenInfo\n * @property {proto.ITokenID|null} [tokenId] ID of the token instance\n * @property {string|null} [name] The name of the token. It is a string of ASCII only characters\n * @property {string|null} [symbol] The symbol of the token. It is a UTF-8 capitalized alphabetical string\n * @property {number|null} [decimals] The number of decimal places a token is divisible by. Always 0 for tokens of type\n * NON_FUNGIBLE_UNIQUE\n * @property {Long|null} [totalSupply] For tokens of type FUNGIBLE_COMMON - the total supply of tokens that are currently in\n * circulation. For tokens of type NON_FUNGIBLE_UNIQUE - the number of NFTs created of this\n * token instance\n * @property {proto.IAccountID|null} [treasury] The ID of the account which is set as Treasury\n * @property {proto.IKey|null} [adminKey] The key which can perform update/delete operations on the token. If empty, the token can be\n * perceived as immutable (not being able to be updated/deleted)\n * @property {proto.IKey|null} [kycKey] The key which can grant or revoke KYC of an account for the token's transactions. If empty,\n * KYC is not required, and KYC grant or revoke operations are not possible.\n * @property {proto.IKey|null} [freezeKey] The key which can freeze or unfreeze an account for token transactions. If empty, freezing is\n * not possible\n * @property {proto.IKey|null} [wipeKey] The key which can wipe token balance of an account. If empty, wipe is not possible\n * @property {proto.IKey|null} [supplyKey] The key which can change the supply of a token. The key is used to sign Token Mint/Burn\n * operations\n * @property {proto.TokenFreezeStatus|null} [defaultFreezeStatus] The default Freeze status (not applicable, frozen or unfrozen) of Hedera accounts relative to\n * this token. FreezeNotApplicable is returned if Token Freeze Key is empty. Frozen is returned\n * if Token Freeze Key is set and defaultFreeze is set to true. Unfrozen is returned if Token\n * Freeze Key is set and defaultFreeze is set to false\n * @property {proto.TokenKycStatus|null} [defaultKycStatus] The default KYC status (KycNotApplicable or Revoked) of Hedera accounts relative to this\n * token. KycNotApplicable is returned if KYC key is not set, otherwise Revoked\n * @property {boolean|null} [deleted] Specifies whether the token was deleted or not\n * @property {proto.IAccountID|null} [autoRenewAccount] An account which will be automatically charged to renew the token's expiration, at\n * autoRenewPeriod interval\n * @property {proto.IDuration|null} [autoRenewPeriod] The interval at which the auto-renew account will be charged to extend the token's expiry\n * @property {proto.ITimestamp|null} [expiry] The epoch second at which the token will expire\n * @property {string|null} [memo] The memo associated with the token\n * @property {proto.TokenType|null} [tokenType] The token type\n * @property {proto.TokenSupplyType|null} [supplyType] The token supply type\n * @property {Long|null} [maxSupply] For tokens of type FUNGIBLE_COMMON - The Maximum number of fungible tokens that can be in\n * circulation. For tokens of type NON_FUNGIBLE_UNIQUE - the maximum number of NFTs (serial\n * numbers) that can be in circulation\n * @property {proto.IKey|null} [feeScheduleKey] The key which can change the custom fee schedule of the token; if not set, the fee schedule\n * is immutable\n * @property {Array.|null} [customFees] The custom fees to be assessed during a CryptoTransfer that transfers units of this token\n * @property {proto.IKey|null} [pauseKey] The Key which can pause and unpause the Token.\n * @property {proto.TokenPauseStatus|null} [pauseStatus] Specifies whether the token is paused or not. PauseNotApplicable is returned if pauseKey is not set.\n * @property {Uint8Array|null} [ledgerId] The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n */\n\n /**\n * Constructs a new TokenInfo.\n * @memberof proto\n * @classdesc The metadata about a Token instance\n * @implements ITokenInfo\n * @constructor\n * @param {proto.ITokenInfo=} [p] Properties to set\n */\n function TokenInfo(p) {\n this.customFees = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * ID of the token instance\n * @member {proto.ITokenID|null|undefined} tokenId\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.tokenId = null;\n\n /**\n * The name of the token. It is a string of ASCII only characters\n * @member {string} name\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.name = \"\";\n\n /**\n * The symbol of the token. It is a UTF-8 capitalized alphabetical string\n * @member {string} symbol\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.symbol = \"\";\n\n /**\n * The number of decimal places a token is divisible by. Always 0 for tokens of type\n * NON_FUNGIBLE_UNIQUE\n * @member {number} decimals\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.decimals = 0;\n\n /**\n * For tokens of type FUNGIBLE_COMMON - the total supply of tokens that are currently in\n * circulation. For tokens of type NON_FUNGIBLE_UNIQUE - the number of NFTs created of this\n * token instance\n * @member {Long} totalSupply\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.totalSupply = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * The ID of the account which is set as Treasury\n * @member {proto.IAccountID|null|undefined} treasury\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.treasury = null;\n\n /**\n * The key which can perform update/delete operations on the token. If empty, the token can be\n * perceived as immutable (not being able to be updated/deleted)\n * @member {proto.IKey|null|undefined} adminKey\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.adminKey = null;\n\n /**\n * The key which can grant or revoke KYC of an account for the token's transactions. If empty,\n * KYC is not required, and KYC grant or revoke operations are not possible.\n * @member {proto.IKey|null|undefined} kycKey\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.kycKey = null;\n\n /**\n * The key which can freeze or unfreeze an account for token transactions. If empty, freezing is\n * not possible\n * @member {proto.IKey|null|undefined} freezeKey\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.freezeKey = null;\n\n /**\n * The key which can wipe token balance of an account. If empty, wipe is not possible\n * @member {proto.IKey|null|undefined} wipeKey\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.wipeKey = null;\n\n /**\n * The key which can change the supply of a token. The key is used to sign Token Mint/Burn\n * operations\n * @member {proto.IKey|null|undefined} supplyKey\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.supplyKey = null;\n\n /**\n * The default Freeze status (not applicable, frozen or unfrozen) of Hedera accounts relative to\n * this token. FreezeNotApplicable is returned if Token Freeze Key is empty. Frozen is returned\n * if Token Freeze Key is set and defaultFreeze is set to true. Unfrozen is returned if Token\n * Freeze Key is set and defaultFreeze is set to false\n * @member {proto.TokenFreezeStatus} defaultFreezeStatus\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.defaultFreezeStatus = 0;\n\n /**\n * The default KYC status (KycNotApplicable or Revoked) of Hedera accounts relative to this\n * token. KycNotApplicable is returned if KYC key is not set, otherwise Revoked\n * @member {proto.TokenKycStatus} defaultKycStatus\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.defaultKycStatus = 0;\n\n /**\n * Specifies whether the token was deleted or not\n * @member {boolean} deleted\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.deleted = false;\n\n /**\n * An account which will be automatically charged to renew the token's expiration, at\n * autoRenewPeriod interval\n * @member {proto.IAccountID|null|undefined} autoRenewAccount\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.autoRenewAccount = null;\n\n /**\n * The interval at which the auto-renew account will be charged to extend the token's expiry\n * @member {proto.IDuration|null|undefined} autoRenewPeriod\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.autoRenewPeriod = null;\n\n /**\n * The epoch second at which the token will expire\n * @member {proto.ITimestamp|null|undefined} expiry\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.expiry = null;\n\n /**\n * The memo associated with the token\n * @member {string} memo\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.memo = \"\";\n\n /**\n * The token type\n * @member {proto.TokenType} tokenType\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.tokenType = 0;\n\n /**\n * The token supply type\n * @member {proto.TokenSupplyType} supplyType\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.supplyType = 0;\n\n /**\n * For tokens of type FUNGIBLE_COMMON - The Maximum number of fungible tokens that can be in\n * circulation. For tokens of type NON_FUNGIBLE_UNIQUE - the maximum number of NFTs (serial\n * numbers) that can be in circulation\n * @member {Long} maxSupply\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.maxSupply = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * The key which can change the custom fee schedule of the token; if not set, the fee schedule\n * is immutable\n * @member {proto.IKey|null|undefined} feeScheduleKey\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.feeScheduleKey = null;\n\n /**\n * The custom fees to be assessed during a CryptoTransfer that transfers units of this token\n * @member {Array.} customFees\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.customFees = $util.emptyArray;\n\n /**\n * The Key which can pause and unpause the Token.\n * @member {proto.IKey|null|undefined} pauseKey\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.pauseKey = null;\n\n /**\n * Specifies whether the token is paused or not. PauseNotApplicable is returned if pauseKey is not set.\n * @member {proto.TokenPauseStatus} pauseStatus\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.pauseStatus = 0;\n\n /**\n * The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n * @member {Uint8Array} ledgerId\n * @memberof proto.TokenInfo\n * @instance\n */\n TokenInfo.prototype.ledgerId = $util.newBuffer([]);\n\n /**\n * Creates a new TokenInfo instance using the specified properties.\n * @function create\n * @memberof proto.TokenInfo\n * @static\n * @param {proto.ITokenInfo=} [properties] Properties to set\n * @returns {proto.TokenInfo} TokenInfo instance\n */\n TokenInfo.create = function create(properties) {\n return new TokenInfo(properties);\n };\n\n /**\n * Encodes the specified TokenInfo message. Does not implicitly {@link proto.TokenInfo.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenInfo\n * @static\n * @param {proto.ITokenInfo} m TokenInfo message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenInfo.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.tokenId != null && Object.hasOwnProperty.call(m, \"tokenId\"))\n $root.proto.TokenID.encode(m.tokenId, w.uint32(10).fork()).ldelim();\n if (m.name != null && Object.hasOwnProperty.call(m, \"name\"))\n w.uint32(18).string(m.name);\n if (m.symbol != null && Object.hasOwnProperty.call(m, \"symbol\"))\n w.uint32(26).string(m.symbol);\n if (m.decimals != null && Object.hasOwnProperty.call(m, \"decimals\"))\n w.uint32(32).uint32(m.decimals);\n if (m.totalSupply != null && Object.hasOwnProperty.call(m, \"totalSupply\"))\n w.uint32(40).uint64(m.totalSupply);\n if (m.treasury != null && Object.hasOwnProperty.call(m, \"treasury\"))\n $root.proto.AccountID.encode(m.treasury, w.uint32(50).fork()).ldelim();\n if (m.adminKey != null && Object.hasOwnProperty.call(m, \"adminKey\"))\n $root.proto.Key.encode(m.adminKey, w.uint32(58).fork()).ldelim();\n if (m.kycKey != null && Object.hasOwnProperty.call(m, \"kycKey\"))\n $root.proto.Key.encode(m.kycKey, w.uint32(66).fork()).ldelim();\n if (m.freezeKey != null && Object.hasOwnProperty.call(m, \"freezeKey\"))\n $root.proto.Key.encode(m.freezeKey, w.uint32(74).fork()).ldelim();\n if (m.wipeKey != null && Object.hasOwnProperty.call(m, \"wipeKey\"))\n $root.proto.Key.encode(m.wipeKey, w.uint32(82).fork()).ldelim();\n if (m.supplyKey != null && Object.hasOwnProperty.call(m, \"supplyKey\"))\n $root.proto.Key.encode(m.supplyKey, w.uint32(90).fork()).ldelim();\n if (m.defaultFreezeStatus != null && Object.hasOwnProperty.call(m, \"defaultFreezeStatus\"))\n w.uint32(96).int32(m.defaultFreezeStatus);\n if (m.defaultKycStatus != null && Object.hasOwnProperty.call(m, \"defaultKycStatus\"))\n w.uint32(104).int32(m.defaultKycStatus);\n if (m.deleted != null && Object.hasOwnProperty.call(m, \"deleted\"))\n w.uint32(112).bool(m.deleted);\n if (m.autoRenewAccount != null && Object.hasOwnProperty.call(m, \"autoRenewAccount\"))\n $root.proto.AccountID.encode(m.autoRenewAccount, w.uint32(122).fork()).ldelim();\n if (m.autoRenewPeriod != null && Object.hasOwnProperty.call(m, \"autoRenewPeriod\"))\n $root.proto.Duration.encode(m.autoRenewPeriod, w.uint32(130).fork()).ldelim();\n if (m.expiry != null && Object.hasOwnProperty.call(m, \"expiry\"))\n $root.proto.Timestamp.encode(m.expiry, w.uint32(138).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(146).string(m.memo);\n if (m.tokenType != null && Object.hasOwnProperty.call(m, \"tokenType\"))\n w.uint32(152).int32(m.tokenType);\n if (m.supplyType != null && Object.hasOwnProperty.call(m, \"supplyType\"))\n w.uint32(160).int32(m.supplyType);\n if (m.maxSupply != null && Object.hasOwnProperty.call(m, \"maxSupply\"))\n w.uint32(168).int64(m.maxSupply);\n if (m.feeScheduleKey != null && Object.hasOwnProperty.call(m, \"feeScheduleKey\"))\n $root.proto.Key.encode(m.feeScheduleKey, w.uint32(178).fork()).ldelim();\n if (m.customFees != null && m.customFees.length) {\n for (var i = 0; i < m.customFees.length; ++i)\n $root.proto.CustomFee.encode(m.customFees[i], w.uint32(186).fork()).ldelim();\n }\n if (m.pauseKey != null && Object.hasOwnProperty.call(m, \"pauseKey\"))\n $root.proto.Key.encode(m.pauseKey, w.uint32(194).fork()).ldelim();\n if (m.pauseStatus != null && Object.hasOwnProperty.call(m, \"pauseStatus\"))\n w.uint32(200).int32(m.pauseStatus);\n if (m.ledgerId != null && Object.hasOwnProperty.call(m, \"ledgerId\"))\n w.uint32(210).bytes(m.ledgerId);\n return w;\n };\n\n /**\n * Decodes a TokenInfo message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenInfo\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenInfo} TokenInfo\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenInfo.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenInfo();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.tokenId = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.name = r.string();\n break;\n case 3:\n m.symbol = r.string();\n break;\n case 4:\n m.decimals = r.uint32();\n break;\n case 5:\n m.totalSupply = r.uint64();\n break;\n case 6:\n m.treasury = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 7:\n m.adminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 8:\n m.kycKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 9:\n m.freezeKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 10:\n m.wipeKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 11:\n m.supplyKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 12:\n m.defaultFreezeStatus = r.int32();\n break;\n case 13:\n m.defaultKycStatus = r.int32();\n break;\n case 14:\n m.deleted = r.bool();\n break;\n case 15:\n m.autoRenewAccount = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 16:\n m.autoRenewPeriod = $root.proto.Duration.decode(r, r.uint32());\n break;\n case 17:\n m.expiry = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 18:\n m.memo = r.string();\n break;\n case 19:\n m.tokenType = r.int32();\n break;\n case 20:\n m.supplyType = r.int32();\n break;\n case 21:\n m.maxSupply = r.int64();\n break;\n case 22:\n m.feeScheduleKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 23:\n if (!(m.customFees && m.customFees.length))\n m.customFees = [];\n m.customFees.push($root.proto.CustomFee.decode(r, r.uint32()));\n break;\n case 24:\n m.pauseKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 25:\n m.pauseStatus = r.int32();\n break;\n case 26:\n m.ledgerId = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenInfo;\n })();\n\n proto.TokenGetInfoResponse = (function() {\n\n /**\n * Properties of a TokenGetInfoResponse.\n * @memberof proto\n * @interface ITokenGetInfoResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.ITokenInfo|null} [tokenInfo] The information requested about this token instance\n */\n\n /**\n * Constructs a new TokenGetInfoResponse.\n * @memberof proto\n * @classdesc Response when the client sends the node TokenGetInfoQuery\n * @implements ITokenGetInfoResponse\n * @constructor\n * @param {proto.ITokenGetInfoResponse=} [p] Properties to set\n */\n function TokenGetInfoResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.TokenGetInfoResponse\n * @instance\n */\n TokenGetInfoResponse.prototype.header = null;\n\n /**\n * The information requested about this token instance\n * @member {proto.ITokenInfo|null|undefined} tokenInfo\n * @memberof proto.TokenGetInfoResponse\n * @instance\n */\n TokenGetInfoResponse.prototype.tokenInfo = null;\n\n /**\n * Creates a new TokenGetInfoResponse instance using the specified properties.\n * @function create\n * @memberof proto.TokenGetInfoResponse\n * @static\n * @param {proto.ITokenGetInfoResponse=} [properties] Properties to set\n * @returns {proto.TokenGetInfoResponse} TokenGetInfoResponse instance\n */\n TokenGetInfoResponse.create = function create(properties) {\n return new TokenGetInfoResponse(properties);\n };\n\n /**\n * Encodes the specified TokenGetInfoResponse message. Does not implicitly {@link proto.TokenGetInfoResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenGetInfoResponse\n * @static\n * @param {proto.ITokenGetInfoResponse} m TokenGetInfoResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenGetInfoResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.tokenInfo != null && Object.hasOwnProperty.call(m, \"tokenInfo\"))\n $root.proto.TokenInfo.encode(m.tokenInfo, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenGetInfoResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenGetInfoResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenGetInfoResponse} TokenGetInfoResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenGetInfoResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenGetInfoResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.tokenInfo = $root.proto.TokenInfo.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenGetInfoResponse;\n })();\n\n proto.ScheduleGetInfoQuery = (function() {\n\n /**\n * Properties of a ScheduleGetInfoQuery.\n * @memberof proto\n * @interface IScheduleGetInfoQuery\n * @property {proto.IQueryHeader|null} [header] standard info sent from client to node including the signed payment, and what kind of response\n * is requested (cost, state proof, both, or neither).\n * @property {proto.IScheduleID|null} [scheduleID] The id of the schedule to interrogate\n */\n\n /**\n * Constructs a new ScheduleGetInfoQuery.\n * @memberof proto\n * @classdesc Gets information about a schedule in the network's action queue.\n * \n * Responds with INVALID_SCHEDULE_ID if the requested schedule doesn't exist.\n * @implements IScheduleGetInfoQuery\n * @constructor\n * @param {proto.IScheduleGetInfoQuery=} [p] Properties to set\n */\n function ScheduleGetInfoQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * standard info sent from client to node including the signed payment, and what kind of response\n * is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.ScheduleGetInfoQuery\n * @instance\n */\n ScheduleGetInfoQuery.prototype.header = null;\n\n /**\n * The id of the schedule to interrogate\n * @member {proto.IScheduleID|null|undefined} scheduleID\n * @memberof proto.ScheduleGetInfoQuery\n * @instance\n */\n ScheduleGetInfoQuery.prototype.scheduleID = null;\n\n /**\n * Creates a new ScheduleGetInfoQuery instance using the specified properties.\n * @function create\n * @memberof proto.ScheduleGetInfoQuery\n * @static\n * @param {proto.IScheduleGetInfoQuery=} [properties] Properties to set\n * @returns {proto.ScheduleGetInfoQuery} ScheduleGetInfoQuery instance\n */\n ScheduleGetInfoQuery.create = function create(properties) {\n return new ScheduleGetInfoQuery(properties);\n };\n\n /**\n * Encodes the specified ScheduleGetInfoQuery message. Does not implicitly {@link proto.ScheduleGetInfoQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.ScheduleGetInfoQuery\n * @static\n * @param {proto.IScheduleGetInfoQuery} m ScheduleGetInfoQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ScheduleGetInfoQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.scheduleID != null && Object.hasOwnProperty.call(m, \"scheduleID\"))\n $root.proto.ScheduleID.encode(m.scheduleID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ScheduleGetInfoQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ScheduleGetInfoQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ScheduleGetInfoQuery} ScheduleGetInfoQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ScheduleGetInfoQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ScheduleGetInfoQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.scheduleID = $root.proto.ScheduleID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ScheduleGetInfoQuery;\n })();\n\n proto.ScheduleInfo = (function() {\n\n /**\n * Properties of a ScheduleInfo.\n * @memberof proto\n * @interface IScheduleInfo\n * @property {proto.IScheduleID|null} [scheduleID] The id of the schedule\n * @property {proto.ITimestamp|null} [deletionTime] If the schedule has been deleted, the consensus time when this occurred\n * @property {proto.ITimestamp|null} [executionTime] If the schedule has been executed, the consensus time when this occurred\n * @property {proto.ITimestamp|null} [expirationTime] The time at which the schedule will expire\n * @property {proto.ISchedulableTransactionBody|null} [scheduledTransactionBody] The scheduled transaction\n * @property {string|null} [memo] The publicly visible memo of the schedule\n * @property {proto.IKey|null} [adminKey] The key used to delete the schedule from state\n * @property {proto.IKeyList|null} [signers] The Ed25519 keys the network deems to have signed the scheduled transaction\n * @property {proto.IAccountID|null} [creatorAccountID] The id of the account that created the schedule\n * @property {proto.IAccountID|null} [payerAccountID] The id of the account responsible for the service fee of the scheduled transaction\n * @property {proto.ITransactionID|null} [scheduledTransactionID] The transaction id that will be used in the record of the scheduled transaction (if it\n * executes)\n * @property {Uint8Array|null} [ledgerId] The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n */\n\n /**\n * Constructs a new ScheduleInfo.\n * @memberof proto\n * @classdesc Information summarizing schedule state\n * @implements IScheduleInfo\n * @constructor\n * @param {proto.IScheduleInfo=} [p] Properties to set\n */\n function ScheduleInfo(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The id of the schedule\n * @member {proto.IScheduleID|null|undefined} scheduleID\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.scheduleID = null;\n\n /**\n * If the schedule has been deleted, the consensus time when this occurred\n * @member {proto.ITimestamp|null|undefined} deletionTime\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.deletionTime = null;\n\n /**\n * If the schedule has been executed, the consensus time when this occurred\n * @member {proto.ITimestamp|null|undefined} executionTime\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.executionTime = null;\n\n /**\n * The time at which the schedule will expire\n * @member {proto.ITimestamp|null|undefined} expirationTime\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.expirationTime = null;\n\n /**\n * The scheduled transaction\n * @member {proto.ISchedulableTransactionBody|null|undefined} scheduledTransactionBody\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.scheduledTransactionBody = null;\n\n /**\n * The publicly visible memo of the schedule\n * @member {string} memo\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.memo = \"\";\n\n /**\n * The key used to delete the schedule from state\n * @member {proto.IKey|null|undefined} adminKey\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.adminKey = null;\n\n /**\n * The Ed25519 keys the network deems to have signed the scheduled transaction\n * @member {proto.IKeyList|null|undefined} signers\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.signers = null;\n\n /**\n * The id of the account that created the schedule\n * @member {proto.IAccountID|null|undefined} creatorAccountID\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.creatorAccountID = null;\n\n /**\n * The id of the account responsible for the service fee of the scheduled transaction\n * @member {proto.IAccountID|null|undefined} payerAccountID\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.payerAccountID = null;\n\n /**\n * The transaction id that will be used in the record of the scheduled transaction (if it\n * executes)\n * @member {proto.ITransactionID|null|undefined} scheduledTransactionID\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.scheduledTransactionID = null;\n\n /**\n * The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n * @member {Uint8Array} ledgerId\n * @memberof proto.ScheduleInfo\n * @instance\n */\n ScheduleInfo.prototype.ledgerId = $util.newBuffer([]);\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * ScheduleInfo data.\n * @member {\"deletionTime\"|\"executionTime\"|undefined} data\n * @memberof proto.ScheduleInfo\n * @instance\n */\n Object.defineProperty(ScheduleInfo.prototype, \"data\", {\n get: $util.oneOfGetter($oneOfFields = [\"deletionTime\", \"executionTime\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new ScheduleInfo instance using the specified properties.\n * @function create\n * @memberof proto.ScheduleInfo\n * @static\n * @param {proto.IScheduleInfo=} [properties] Properties to set\n * @returns {proto.ScheduleInfo} ScheduleInfo instance\n */\n ScheduleInfo.create = function create(properties) {\n return new ScheduleInfo(properties);\n };\n\n /**\n * Encodes the specified ScheduleInfo message. Does not implicitly {@link proto.ScheduleInfo.verify|verify} messages.\n * @function encode\n * @memberof proto.ScheduleInfo\n * @static\n * @param {proto.IScheduleInfo} m ScheduleInfo message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ScheduleInfo.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.scheduleID != null && Object.hasOwnProperty.call(m, \"scheduleID\"))\n $root.proto.ScheduleID.encode(m.scheduleID, w.uint32(10).fork()).ldelim();\n if (m.deletionTime != null && Object.hasOwnProperty.call(m, \"deletionTime\"))\n $root.proto.Timestamp.encode(m.deletionTime, w.uint32(18).fork()).ldelim();\n if (m.executionTime != null && Object.hasOwnProperty.call(m, \"executionTime\"))\n $root.proto.Timestamp.encode(m.executionTime, w.uint32(26).fork()).ldelim();\n if (m.expirationTime != null && Object.hasOwnProperty.call(m, \"expirationTime\"))\n $root.proto.Timestamp.encode(m.expirationTime, w.uint32(34).fork()).ldelim();\n if (m.scheduledTransactionBody != null && Object.hasOwnProperty.call(m, \"scheduledTransactionBody\"))\n $root.proto.SchedulableTransactionBody.encode(m.scheduledTransactionBody, w.uint32(42).fork()).ldelim();\n if (m.memo != null && Object.hasOwnProperty.call(m, \"memo\"))\n w.uint32(50).string(m.memo);\n if (m.adminKey != null && Object.hasOwnProperty.call(m, \"adminKey\"))\n $root.proto.Key.encode(m.adminKey, w.uint32(58).fork()).ldelim();\n if (m.signers != null && Object.hasOwnProperty.call(m, \"signers\"))\n $root.proto.KeyList.encode(m.signers, w.uint32(66).fork()).ldelim();\n if (m.creatorAccountID != null && Object.hasOwnProperty.call(m, \"creatorAccountID\"))\n $root.proto.AccountID.encode(m.creatorAccountID, w.uint32(74).fork()).ldelim();\n if (m.payerAccountID != null && Object.hasOwnProperty.call(m, \"payerAccountID\"))\n $root.proto.AccountID.encode(m.payerAccountID, w.uint32(82).fork()).ldelim();\n if (m.scheduledTransactionID != null && Object.hasOwnProperty.call(m, \"scheduledTransactionID\"))\n $root.proto.TransactionID.encode(m.scheduledTransactionID, w.uint32(90).fork()).ldelim();\n if (m.ledgerId != null && Object.hasOwnProperty.call(m, \"ledgerId\"))\n w.uint32(98).bytes(m.ledgerId);\n return w;\n };\n\n /**\n * Decodes a ScheduleInfo message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ScheduleInfo\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ScheduleInfo} ScheduleInfo\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ScheduleInfo.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ScheduleInfo();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.scheduleID = $root.proto.ScheduleID.decode(r, r.uint32());\n break;\n case 2:\n m.deletionTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 3:\n m.executionTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 4:\n m.expirationTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 5:\n m.scheduledTransactionBody = $root.proto.SchedulableTransactionBody.decode(r, r.uint32());\n break;\n case 6:\n m.memo = r.string();\n break;\n case 7:\n m.adminKey = $root.proto.Key.decode(r, r.uint32());\n break;\n case 8:\n m.signers = $root.proto.KeyList.decode(r, r.uint32());\n break;\n case 9:\n m.creatorAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 10:\n m.payerAccountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 11:\n m.scheduledTransactionID = $root.proto.TransactionID.decode(r, r.uint32());\n break;\n case 12:\n m.ledgerId = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ScheduleInfo;\n })();\n\n proto.ScheduleGetInfoResponse = (function() {\n\n /**\n * Properties of a ScheduleGetInfoResponse.\n * @memberof proto\n * @interface IScheduleGetInfoResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof, or\n * both, or neither\n * @property {proto.IScheduleInfo|null} [scheduleInfo] The information requested about this schedule instance\n */\n\n /**\n * Constructs a new ScheduleGetInfoResponse.\n * @memberof proto\n * @classdesc Response wrapper for the ScheduleInfo\n * @implements IScheduleGetInfoResponse\n * @constructor\n * @param {proto.IScheduleGetInfoResponse=} [p] Properties to set\n */\n function ScheduleGetInfoResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof, or\n * both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.ScheduleGetInfoResponse\n * @instance\n */\n ScheduleGetInfoResponse.prototype.header = null;\n\n /**\n * The information requested about this schedule instance\n * @member {proto.IScheduleInfo|null|undefined} scheduleInfo\n * @memberof proto.ScheduleGetInfoResponse\n * @instance\n */\n ScheduleGetInfoResponse.prototype.scheduleInfo = null;\n\n /**\n * Creates a new ScheduleGetInfoResponse instance using the specified properties.\n * @function create\n * @memberof proto.ScheduleGetInfoResponse\n * @static\n * @param {proto.IScheduleGetInfoResponse=} [properties] Properties to set\n * @returns {proto.ScheduleGetInfoResponse} ScheduleGetInfoResponse instance\n */\n ScheduleGetInfoResponse.create = function create(properties) {\n return new ScheduleGetInfoResponse(properties);\n };\n\n /**\n * Encodes the specified ScheduleGetInfoResponse message. Does not implicitly {@link proto.ScheduleGetInfoResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.ScheduleGetInfoResponse\n * @static\n * @param {proto.IScheduleGetInfoResponse} m ScheduleGetInfoResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ScheduleGetInfoResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.scheduleInfo != null && Object.hasOwnProperty.call(m, \"scheduleInfo\"))\n $root.proto.ScheduleInfo.encode(m.scheduleInfo, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ScheduleGetInfoResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ScheduleGetInfoResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ScheduleGetInfoResponse} ScheduleGetInfoResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ScheduleGetInfoResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ScheduleGetInfoResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.scheduleInfo = $root.proto.ScheduleInfo.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ScheduleGetInfoResponse;\n })();\n\n proto.TokenGetAccountNftInfosQuery = (function() {\n\n /**\n * Properties of a TokenGetAccountNftInfosQuery.\n * @memberof proto\n * @interface ITokenGetAccountNftInfosQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.IAccountID|null} [accountID] The Account for which information is requested\n * @property {Long|null} [start] Specifies the start index (inclusive) of the range of NFTs to query for. Value must be in the\n * range [0; ownedNFTs-1]\n * @property {Long|null} [end] Specifies the end index (exclusive) of the range of NFTs to query for. Value must be in the\n * range (start; ownedNFTs]\n */\n\n /**\n * Constructs a new TokenGetAccountNftInfosQuery.\n * @memberof proto\n * @classdesc Applicable only to tokens of type NON_FUNGIBLE_UNIQUE. Gets info on NFTs N through M owned by the\n * specified accountId.\n * Example: If Account A owns 5 NFTs (might be of different Token Entity), having start=0 and end=5\n * will return all of the NFTs\n * \n * INVALID_QUERY_RANGE response code will be returned if:\n * 1) Start > End\n * 2) Start and End indices are non-positive\n * 3) Start and End indices are out of boundaries for the retrieved nft list\n * 4) The range between Start and End is bigger than the global dynamic property for maximum query\n * range\n * \n * NOT_SUPPORTED response code will be returned if the queried token is of type FUNGIBLE_COMMON\n * \n * INVALID_ACCOUNT_ID response code will be returned if the queried account does not exist\n * \n * ACCOUNT_DELETED response code will be returned if the queried account has been deleted\n * @implements ITokenGetAccountNftInfosQuery\n * @constructor\n * @param {proto.ITokenGetAccountNftInfosQuery=} [p] Properties to set\n */\n function TokenGetAccountNftInfosQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.TokenGetAccountNftInfosQuery\n * @instance\n */\n TokenGetAccountNftInfosQuery.prototype.header = null;\n\n /**\n * The Account for which information is requested\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.TokenGetAccountNftInfosQuery\n * @instance\n */\n TokenGetAccountNftInfosQuery.prototype.accountID = null;\n\n /**\n * Specifies the start index (inclusive) of the range of NFTs to query for. Value must be in the\n * range [0; ownedNFTs-1]\n * @member {Long} start\n * @memberof proto.TokenGetAccountNftInfosQuery\n * @instance\n */\n TokenGetAccountNftInfosQuery.prototype.start = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Specifies the end index (exclusive) of the range of NFTs to query for. Value must be in the\n * range (start; ownedNFTs]\n * @member {Long} end\n * @memberof proto.TokenGetAccountNftInfosQuery\n * @instance\n */\n TokenGetAccountNftInfosQuery.prototype.end = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new TokenGetAccountNftInfosQuery instance using the specified properties.\n * @function create\n * @memberof proto.TokenGetAccountNftInfosQuery\n * @static\n * @param {proto.ITokenGetAccountNftInfosQuery=} [properties] Properties to set\n * @returns {proto.TokenGetAccountNftInfosQuery} TokenGetAccountNftInfosQuery instance\n */\n TokenGetAccountNftInfosQuery.create = function create(properties) {\n return new TokenGetAccountNftInfosQuery(properties);\n };\n\n /**\n * Encodes the specified TokenGetAccountNftInfosQuery message. Does not implicitly {@link proto.TokenGetAccountNftInfosQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenGetAccountNftInfosQuery\n * @static\n * @param {proto.ITokenGetAccountNftInfosQuery} m TokenGetAccountNftInfosQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenGetAccountNftInfosQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n if (m.start != null && Object.hasOwnProperty.call(m, \"start\"))\n w.uint32(24).int64(m.start);\n if (m.end != null && Object.hasOwnProperty.call(m, \"end\"))\n w.uint32(32).int64(m.end);\n return w;\n };\n\n /**\n * Decodes a TokenGetAccountNftInfosQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenGetAccountNftInfosQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenGetAccountNftInfosQuery} TokenGetAccountNftInfosQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenGetAccountNftInfosQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenGetAccountNftInfosQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.start = r.int64();\n break;\n case 4:\n m.end = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenGetAccountNftInfosQuery;\n })();\n\n proto.TokenGetAccountNftInfosResponse = (function() {\n\n /**\n * Properties of a TokenGetAccountNftInfosResponse.\n * @memberof proto\n * @interface ITokenGetAccountNftInfosResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {Array.|null} [nfts] List of NFTs associated to the account\n */\n\n /**\n * Constructs a new TokenGetAccountNftInfosResponse.\n * @memberof proto\n * @classdesc UNDOCUMENTED\n * @implements ITokenGetAccountNftInfosResponse\n * @constructor\n * @param {proto.ITokenGetAccountNftInfosResponse=} [p] Properties to set\n */\n function TokenGetAccountNftInfosResponse(p) {\n this.nfts = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.TokenGetAccountNftInfosResponse\n * @instance\n */\n TokenGetAccountNftInfosResponse.prototype.header = null;\n\n /**\n * List of NFTs associated to the account\n * @member {Array.} nfts\n * @memberof proto.TokenGetAccountNftInfosResponse\n * @instance\n */\n TokenGetAccountNftInfosResponse.prototype.nfts = $util.emptyArray;\n\n /**\n * Creates a new TokenGetAccountNftInfosResponse instance using the specified properties.\n * @function create\n * @memberof proto.TokenGetAccountNftInfosResponse\n * @static\n * @param {proto.ITokenGetAccountNftInfosResponse=} [properties] Properties to set\n * @returns {proto.TokenGetAccountNftInfosResponse} TokenGetAccountNftInfosResponse instance\n */\n TokenGetAccountNftInfosResponse.create = function create(properties) {\n return new TokenGetAccountNftInfosResponse(properties);\n };\n\n /**\n * Encodes the specified TokenGetAccountNftInfosResponse message. Does not implicitly {@link proto.TokenGetAccountNftInfosResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenGetAccountNftInfosResponse\n * @static\n * @param {proto.ITokenGetAccountNftInfosResponse} m TokenGetAccountNftInfosResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenGetAccountNftInfosResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.nfts != null && m.nfts.length) {\n for (var i = 0; i < m.nfts.length; ++i)\n $root.proto.TokenNftInfo.encode(m.nfts[i], w.uint32(18).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TokenGetAccountNftInfosResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenGetAccountNftInfosResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenGetAccountNftInfosResponse} TokenGetAccountNftInfosResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenGetAccountNftInfosResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenGetAccountNftInfosResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n if (!(m.nfts && m.nfts.length))\n m.nfts = [];\n m.nfts.push($root.proto.TokenNftInfo.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenGetAccountNftInfosResponse;\n })();\n\n proto.NftID = (function() {\n\n /**\n * Properties of a NftID.\n * @memberof proto\n * @interface INftID\n * @property {proto.ITokenID|null} [tokenID] The (non-fungible) token of which this NFT is an instance\n * @property {Long|null} [serialNumber] The unique identifier of this instance\n */\n\n /**\n * Constructs a new NftID.\n * @memberof proto\n * @classdesc Represents an NFT on the Ledger\n * @implements INftID\n * @constructor\n * @param {proto.INftID=} [p] Properties to set\n */\n function NftID(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The (non-fungible) token of which this NFT is an instance\n * @member {proto.ITokenID|null|undefined} tokenID\n * @memberof proto.NftID\n * @instance\n */\n NftID.prototype.tokenID = null;\n\n /**\n * The unique identifier of this instance\n * @member {Long} serialNumber\n * @memberof proto.NftID\n * @instance\n */\n NftID.prototype.serialNumber = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new NftID instance using the specified properties.\n * @function create\n * @memberof proto.NftID\n * @static\n * @param {proto.INftID=} [properties] Properties to set\n * @returns {proto.NftID} NftID instance\n */\n NftID.create = function create(properties) {\n return new NftID(properties);\n };\n\n /**\n * Encodes the specified NftID message. Does not implicitly {@link proto.NftID.verify|verify} messages.\n * @function encode\n * @memberof proto.NftID\n * @static\n * @param {proto.INftID} m NftID message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n NftID.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.tokenID != null && Object.hasOwnProperty.call(m, \"tokenID\"))\n $root.proto.TokenID.encode(m.tokenID, w.uint32(10).fork()).ldelim();\n if (m.serialNumber != null && Object.hasOwnProperty.call(m, \"serialNumber\"))\n w.uint32(16).int64(m.serialNumber);\n return w;\n };\n\n /**\n * Decodes a NftID message from the specified reader or buffer.\n * @function decode\n * @memberof proto.NftID\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.NftID} NftID\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n NftID.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.NftID();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.tokenID = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 2:\n m.serialNumber = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return NftID;\n })();\n\n proto.TokenGetNftInfoQuery = (function() {\n\n /**\n * Properties of a TokenGetNftInfoQuery.\n * @memberof proto\n * @interface ITokenGetNftInfoQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.INftID|null} [nftID] The ID of the NFT\n */\n\n /**\n * Constructs a new TokenGetNftInfoQuery.\n * @memberof proto\n * @classdesc Applicable only to tokens of type NON_FUNGIBLE_UNIQUE. Gets info on a NFT for a given TokenID (of\n * type NON_FUNGIBLE_UNIQUE) and serial number\n * @implements ITokenGetNftInfoQuery\n * @constructor\n * @param {proto.ITokenGetNftInfoQuery=} [p] Properties to set\n */\n function TokenGetNftInfoQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.TokenGetNftInfoQuery\n * @instance\n */\n TokenGetNftInfoQuery.prototype.header = null;\n\n /**\n * The ID of the NFT\n * @member {proto.INftID|null|undefined} nftID\n * @memberof proto.TokenGetNftInfoQuery\n * @instance\n */\n TokenGetNftInfoQuery.prototype.nftID = null;\n\n /**\n * Creates a new TokenGetNftInfoQuery instance using the specified properties.\n * @function create\n * @memberof proto.TokenGetNftInfoQuery\n * @static\n * @param {proto.ITokenGetNftInfoQuery=} [properties] Properties to set\n * @returns {proto.TokenGetNftInfoQuery} TokenGetNftInfoQuery instance\n */\n TokenGetNftInfoQuery.create = function create(properties) {\n return new TokenGetNftInfoQuery(properties);\n };\n\n /**\n * Encodes the specified TokenGetNftInfoQuery message. Does not implicitly {@link proto.TokenGetNftInfoQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenGetNftInfoQuery\n * @static\n * @param {proto.ITokenGetNftInfoQuery} m TokenGetNftInfoQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenGetNftInfoQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.nftID != null && Object.hasOwnProperty.call(m, \"nftID\"))\n $root.proto.NftID.encode(m.nftID, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenGetNftInfoQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenGetNftInfoQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenGetNftInfoQuery} TokenGetNftInfoQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenGetNftInfoQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenGetNftInfoQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.nftID = $root.proto.NftID.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenGetNftInfoQuery;\n })();\n\n proto.TokenNftInfo = (function() {\n\n /**\n * Properties of a TokenNftInfo.\n * @memberof proto\n * @interface ITokenNftInfo\n * @property {proto.INftID|null} [nftID] The ID of the NFT\n * @property {proto.IAccountID|null} [accountID] The current owner of the NFT\n * @property {proto.ITimestamp|null} [creationTime] The effective consensus timestamp at which the NFT was minted\n * @property {Uint8Array|null} [metadata] Represents the unique metadata of the NFT\n * @property {Uint8Array|null} [ledgerId] The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n */\n\n /**\n * Constructs a new TokenNftInfo.\n * @memberof proto\n * @classdesc UNDOCUMENTED\n * @implements ITokenNftInfo\n * @constructor\n * @param {proto.ITokenNftInfo=} [p] Properties to set\n */\n function TokenNftInfo(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The ID of the NFT\n * @member {proto.INftID|null|undefined} nftID\n * @memberof proto.TokenNftInfo\n * @instance\n */\n TokenNftInfo.prototype.nftID = null;\n\n /**\n * The current owner of the NFT\n * @member {proto.IAccountID|null|undefined} accountID\n * @memberof proto.TokenNftInfo\n * @instance\n */\n TokenNftInfo.prototype.accountID = null;\n\n /**\n * The effective consensus timestamp at which the NFT was minted\n * @member {proto.ITimestamp|null|undefined} creationTime\n * @memberof proto.TokenNftInfo\n * @instance\n */\n TokenNftInfo.prototype.creationTime = null;\n\n /**\n * Represents the unique metadata of the NFT\n * @member {Uint8Array} metadata\n * @memberof proto.TokenNftInfo\n * @instance\n */\n TokenNftInfo.prototype.metadata = $util.newBuffer([]);\n\n /**\n * The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs.\n * @member {Uint8Array} ledgerId\n * @memberof proto.TokenNftInfo\n * @instance\n */\n TokenNftInfo.prototype.ledgerId = $util.newBuffer([]);\n\n /**\n * Creates a new TokenNftInfo instance using the specified properties.\n * @function create\n * @memberof proto.TokenNftInfo\n * @static\n * @param {proto.ITokenNftInfo=} [properties] Properties to set\n * @returns {proto.TokenNftInfo} TokenNftInfo instance\n */\n TokenNftInfo.create = function create(properties) {\n return new TokenNftInfo(properties);\n };\n\n /**\n * Encodes the specified TokenNftInfo message. Does not implicitly {@link proto.TokenNftInfo.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenNftInfo\n * @static\n * @param {proto.ITokenNftInfo} m TokenNftInfo message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenNftInfo.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.nftID != null && Object.hasOwnProperty.call(m, \"nftID\"))\n $root.proto.NftID.encode(m.nftID, w.uint32(10).fork()).ldelim();\n if (m.accountID != null && Object.hasOwnProperty.call(m, \"accountID\"))\n $root.proto.AccountID.encode(m.accountID, w.uint32(18).fork()).ldelim();\n if (m.creationTime != null && Object.hasOwnProperty.call(m, \"creationTime\"))\n $root.proto.Timestamp.encode(m.creationTime, w.uint32(26).fork()).ldelim();\n if (m.metadata != null && Object.hasOwnProperty.call(m, \"metadata\"))\n w.uint32(34).bytes(m.metadata);\n if (m.ledgerId != null && Object.hasOwnProperty.call(m, \"ledgerId\"))\n w.uint32(42).bytes(m.ledgerId);\n return w;\n };\n\n /**\n * Decodes a TokenNftInfo message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenNftInfo\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenNftInfo} TokenNftInfo\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenNftInfo.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenNftInfo();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.nftID = $root.proto.NftID.decode(r, r.uint32());\n break;\n case 2:\n m.accountID = $root.proto.AccountID.decode(r, r.uint32());\n break;\n case 3:\n m.creationTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 4:\n m.metadata = r.bytes();\n break;\n case 5:\n m.ledgerId = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenNftInfo;\n })();\n\n proto.TokenGetNftInfoResponse = (function() {\n\n /**\n * Properties of a TokenGetNftInfoResponse.\n * @memberof proto\n * @interface ITokenGetNftInfoResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.ITokenNftInfo|null} [nft] The information about this NFT\n */\n\n /**\n * Constructs a new TokenGetNftInfoResponse.\n * @memberof proto\n * @classdesc UNDOCUMENTED\n * @implements ITokenGetNftInfoResponse\n * @constructor\n * @param {proto.ITokenGetNftInfoResponse=} [p] Properties to set\n */\n function TokenGetNftInfoResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.TokenGetNftInfoResponse\n * @instance\n */\n TokenGetNftInfoResponse.prototype.header = null;\n\n /**\n * The information about this NFT\n * @member {proto.ITokenNftInfo|null|undefined} nft\n * @memberof proto.TokenGetNftInfoResponse\n * @instance\n */\n TokenGetNftInfoResponse.prototype.nft = null;\n\n /**\n * Creates a new TokenGetNftInfoResponse instance using the specified properties.\n * @function create\n * @memberof proto.TokenGetNftInfoResponse\n * @static\n * @param {proto.ITokenGetNftInfoResponse=} [properties] Properties to set\n * @returns {proto.TokenGetNftInfoResponse} TokenGetNftInfoResponse instance\n */\n TokenGetNftInfoResponse.create = function create(properties) {\n return new TokenGetNftInfoResponse(properties);\n };\n\n /**\n * Encodes the specified TokenGetNftInfoResponse message. Does not implicitly {@link proto.TokenGetNftInfoResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenGetNftInfoResponse\n * @static\n * @param {proto.ITokenGetNftInfoResponse} m TokenGetNftInfoResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenGetNftInfoResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.nft != null && Object.hasOwnProperty.call(m, \"nft\"))\n $root.proto.TokenNftInfo.encode(m.nft, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a TokenGetNftInfoResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenGetNftInfoResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenGetNftInfoResponse} TokenGetNftInfoResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenGetNftInfoResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenGetNftInfoResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.nft = $root.proto.TokenNftInfo.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenGetNftInfoResponse;\n })();\n\n proto.TokenGetNftInfosQuery = (function() {\n\n /**\n * Properties of a TokenGetNftInfosQuery.\n * @memberof proto\n * @interface ITokenGetNftInfosQuery\n * @property {proto.IQueryHeader|null} [header] Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @property {proto.ITokenID|null} [tokenID] The ID of the token for which information is requested\n * @property {Long|null} [start] Specifies the start index (inclusive) of the range of NFTs to query for. Value must be in the\n * range [0; ownedNFTs-1]\n * @property {Long|null} [end] Specifies the end index (exclusive) of the range of NFTs to query for. Value must be in the\n * range (start; ownedNFTs]\n */\n\n /**\n * Constructs a new TokenGetNftInfosQuery.\n * @memberof proto\n * @classdesc Applicable only to tokens of type NON_FUNGIBLE_UNIQUE. Gets info on NFTs N through M on the list\n * of NFTs associated with a given NON_FUNGIBLE_UNIQUE Token.\n * Example: If there are 10 NFTs issued, having start=0 and end=5 will query for the first 5 NFTs.\n * Querying +all 10 NFTs will require start=0 and end=10\n * \n * INVALID_QUERY_RANGE response code will be returned if:\n * 1) Start > End\n * 2) Start and End indices are non-positive\n * 3) Start and End indices are out of boundaries for the retrieved nft list\n * 4) The range between Start and End is bigger than the global dynamic property for maximum query\n * range\n * \n * NOT_SUPPORTED response code will be returned if the queried token is of type FUNGIBLE_COMMON\n * \n * INVALID_TOKEN_ID response code will be returned if the queried token does not exist\n * @implements ITokenGetNftInfosQuery\n * @constructor\n * @param {proto.ITokenGetNftInfosQuery=} [p] Properties to set\n */\n function TokenGetNftInfosQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard info sent from client to node, including the signed payment, and what kind of\n * response is requested (cost, state proof, both, or neither).\n * @member {proto.IQueryHeader|null|undefined} header\n * @memberof proto.TokenGetNftInfosQuery\n * @instance\n */\n TokenGetNftInfosQuery.prototype.header = null;\n\n /**\n * The ID of the token for which information is requested\n * @member {proto.ITokenID|null|undefined} tokenID\n * @memberof proto.TokenGetNftInfosQuery\n * @instance\n */\n TokenGetNftInfosQuery.prototype.tokenID = null;\n\n /**\n * Specifies the start index (inclusive) of the range of NFTs to query for. Value must be in the\n * range [0; ownedNFTs-1]\n * @member {Long} start\n * @memberof proto.TokenGetNftInfosQuery\n * @instance\n */\n TokenGetNftInfosQuery.prototype.start = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Specifies the end index (exclusive) of the range of NFTs to query for. Value must be in the\n * range (start; ownedNFTs]\n * @member {Long} end\n * @memberof proto.TokenGetNftInfosQuery\n * @instance\n */\n TokenGetNftInfosQuery.prototype.end = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new TokenGetNftInfosQuery instance using the specified properties.\n * @function create\n * @memberof proto.TokenGetNftInfosQuery\n * @static\n * @param {proto.ITokenGetNftInfosQuery=} [properties] Properties to set\n * @returns {proto.TokenGetNftInfosQuery} TokenGetNftInfosQuery instance\n */\n TokenGetNftInfosQuery.create = function create(properties) {\n return new TokenGetNftInfosQuery(properties);\n };\n\n /**\n * Encodes the specified TokenGetNftInfosQuery message. Does not implicitly {@link proto.TokenGetNftInfosQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenGetNftInfosQuery\n * @static\n * @param {proto.ITokenGetNftInfosQuery} m TokenGetNftInfosQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenGetNftInfosQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.QueryHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.tokenID != null && Object.hasOwnProperty.call(m, \"tokenID\"))\n $root.proto.TokenID.encode(m.tokenID, w.uint32(18).fork()).ldelim();\n if (m.start != null && Object.hasOwnProperty.call(m, \"start\"))\n w.uint32(24).int64(m.start);\n if (m.end != null && Object.hasOwnProperty.call(m, \"end\"))\n w.uint32(32).int64(m.end);\n return w;\n };\n\n /**\n * Decodes a TokenGetNftInfosQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenGetNftInfosQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenGetNftInfosQuery} TokenGetNftInfosQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenGetNftInfosQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenGetNftInfosQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.QueryHeader.decode(r, r.uint32());\n break;\n case 2:\n m.tokenID = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 3:\n m.start = r.int64();\n break;\n case 4:\n m.end = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenGetNftInfosQuery;\n })();\n\n proto.TokenGetNftInfosResponse = (function() {\n\n /**\n * Properties of a TokenGetNftInfosResponse.\n * @memberof proto\n * @interface ITokenGetNftInfosResponse\n * @property {proto.IResponseHeader|null} [header] Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @property {proto.ITokenID|null} [tokenID] The Token with type NON_FUNGIBLE that this record is for\n * @property {Array.|null} [nfts] List of NFTs associated to the specified token\n */\n\n /**\n * Constructs a new TokenGetNftInfosResponse.\n * @memberof proto\n * @classdesc Represents a TokenGetNftInfosResponse.\n * @implements ITokenGetNftInfosResponse\n * @constructor\n * @param {proto.ITokenGetNftInfosResponse=} [p] Properties to set\n */\n function TokenGetNftInfosResponse(p) {\n this.nfts = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Standard response from node to client, including the requested fields: cost, or state proof,\n * or both, or neither\n * @member {proto.IResponseHeader|null|undefined} header\n * @memberof proto.TokenGetNftInfosResponse\n * @instance\n */\n TokenGetNftInfosResponse.prototype.header = null;\n\n /**\n * The Token with type NON_FUNGIBLE that this record is for\n * @member {proto.ITokenID|null|undefined} tokenID\n * @memberof proto.TokenGetNftInfosResponse\n * @instance\n */\n TokenGetNftInfosResponse.prototype.tokenID = null;\n\n /**\n * List of NFTs associated to the specified token\n * @member {Array.} nfts\n * @memberof proto.TokenGetNftInfosResponse\n * @instance\n */\n TokenGetNftInfosResponse.prototype.nfts = $util.emptyArray;\n\n /**\n * Creates a new TokenGetNftInfosResponse instance using the specified properties.\n * @function create\n * @memberof proto.TokenGetNftInfosResponse\n * @static\n * @param {proto.ITokenGetNftInfosResponse=} [properties] Properties to set\n * @returns {proto.TokenGetNftInfosResponse} TokenGetNftInfosResponse instance\n */\n TokenGetNftInfosResponse.create = function create(properties) {\n return new TokenGetNftInfosResponse(properties);\n };\n\n /**\n * Encodes the specified TokenGetNftInfosResponse message. Does not implicitly {@link proto.TokenGetNftInfosResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.TokenGetNftInfosResponse\n * @static\n * @param {proto.ITokenGetNftInfosResponse} m TokenGetNftInfosResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TokenGetNftInfosResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.header != null && Object.hasOwnProperty.call(m, \"header\"))\n $root.proto.ResponseHeader.encode(m.header, w.uint32(10).fork()).ldelim();\n if (m.tokenID != null && Object.hasOwnProperty.call(m, \"tokenID\"))\n $root.proto.TokenID.encode(m.tokenID, w.uint32(18).fork()).ldelim();\n if (m.nfts != null && m.nfts.length) {\n for (var i = 0; i < m.nfts.length; ++i)\n $root.proto.TokenNftInfo.encode(m.nfts[i], w.uint32(26).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TokenGetNftInfosResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TokenGetNftInfosResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TokenGetNftInfosResponse} TokenGetNftInfosResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TokenGetNftInfosResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TokenGetNftInfosResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.header = $root.proto.ResponseHeader.decode(r, r.uint32());\n break;\n case 2:\n m.tokenID = $root.proto.TokenID.decode(r, r.uint32());\n break;\n case 3:\n if (!(m.nfts && m.nfts.length))\n m.nfts = [];\n m.nfts.push($root.proto.TokenNftInfo.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TokenGetNftInfosResponse;\n })();\n\n proto.Response = (function() {\n\n /**\n * Properties of a Response.\n * @memberof proto\n * @interface IResponse\n * @property {proto.IGetByKeyResponse|null} [getByKey] Get all entities associated with a given key\n * @property {proto.IGetBySolidityIDResponse|null} [getBySolidityID] Get the IDs in the format used in transactions, given the format used in Solidity\n * @property {proto.IContractCallLocalResponse|null} [contractCallLocal] Response to call a function of a smart contract instance\n * @property {proto.IContractGetBytecodeResponse|null} [contractGetBytecodeResponse] Get the bytecode for a smart contract instance\n * @property {proto.IContractGetInfoResponse|null} [contractGetInfo] Get information about a smart contract instance\n * @property {proto.IContractGetRecordsResponse|null} [contractGetRecordsResponse] Get all existing records for a smart contract instance\n * @property {proto.ICryptoGetAccountBalanceResponse|null} [cryptogetAccountBalance] Get the current balance in a cryptocurrency account\n * @property {proto.ICryptoGetAccountRecordsResponse|null} [cryptoGetAccountRecords] Get all the records that currently exist for transactions involving an account\n * @property {proto.ICryptoGetInfoResponse|null} [cryptoGetInfo] Get all information about an account\n * @property {proto.ICryptoGetLiveHashResponse|null} [cryptoGetLiveHash] Contains a livehash associated to an account\n * @property {proto.ICryptoGetStakersResponse|null} [cryptoGetProxyStakers] Get all the accounts that proxy stake to a given account, and how much they proxy stake\n * @property {proto.IFileGetContentsResponse|null} [fileGetContents] Get the contents of a file (the bytes stored in it)\n * @property {proto.IFileGetInfoResponse|null} [fileGetInfo] Get information about a file, such as its expiration date\n * @property {proto.ITransactionGetReceiptResponse|null} [transactionGetReceipt] Get a receipt for a transaction\n * @property {proto.ITransactionGetRecordResponse|null} [transactionGetRecord] Get a record for a transaction\n * @property {proto.ITransactionGetFastRecordResponse|null} [transactionGetFastRecord] Get a record for a transaction (lasts 180 seconds)\n * @property {proto.IConsensusGetTopicInfoResponse|null} [consensusGetTopicInfo] Parameters of and state of a consensus topic..\n * @property {proto.INetworkGetVersionInfoResponse|null} [networkGetVersionInfo] Semantic versions of Hedera Services and HAPI proto\n * @property {proto.ITokenGetInfoResponse|null} [tokenGetInfo] Get all information about a token\n * @property {proto.IScheduleGetInfoResponse|null} [scheduleGetInfo] Get all information about a schedule entity\n * @property {proto.ITokenGetAccountNftInfosResponse|null} [tokenGetAccountNftInfos] A list of the NFTs associated with the account\n * @property {proto.ITokenGetNftInfoResponse|null} [tokenGetNftInfo] All information about an NFT\n * @property {proto.ITokenGetNftInfosResponse|null} [tokenGetNftInfos] A list of the NFTs for the token\n * @property {proto.INetworkGetExecutionTimeResponse|null} [networkGetExecutionTime] Execution times of \"sufficiently recent\" transactions\n */\n\n /**\n * Constructs a new Response.\n * @memberof proto\n * @classdesc A single response, which is returned from the node to the client, after the client sent the node\n * a query. This includes all responses.\n * @implements IResponse\n * @constructor\n * @param {proto.IResponse=} [p] Properties to set\n */\n function Response(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Get all entities associated with a given key\n * @member {proto.IGetByKeyResponse|null|undefined} getByKey\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.getByKey = null;\n\n /**\n * Get the IDs in the format used in transactions, given the format used in Solidity\n * @member {proto.IGetBySolidityIDResponse|null|undefined} getBySolidityID\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.getBySolidityID = null;\n\n /**\n * Response to call a function of a smart contract instance\n * @member {proto.IContractCallLocalResponse|null|undefined} contractCallLocal\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.contractCallLocal = null;\n\n /**\n * Get the bytecode for a smart contract instance\n * @member {proto.IContractGetBytecodeResponse|null|undefined} contractGetBytecodeResponse\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.contractGetBytecodeResponse = null;\n\n /**\n * Get information about a smart contract instance\n * @member {proto.IContractGetInfoResponse|null|undefined} contractGetInfo\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.contractGetInfo = null;\n\n /**\n * Get all existing records for a smart contract instance\n * @member {proto.IContractGetRecordsResponse|null|undefined} contractGetRecordsResponse\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.contractGetRecordsResponse = null;\n\n /**\n * Get the current balance in a cryptocurrency account\n * @member {proto.ICryptoGetAccountBalanceResponse|null|undefined} cryptogetAccountBalance\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.cryptogetAccountBalance = null;\n\n /**\n * Get all the records that currently exist for transactions involving an account\n * @member {proto.ICryptoGetAccountRecordsResponse|null|undefined} cryptoGetAccountRecords\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.cryptoGetAccountRecords = null;\n\n /**\n * Get all information about an account\n * @member {proto.ICryptoGetInfoResponse|null|undefined} cryptoGetInfo\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.cryptoGetInfo = null;\n\n /**\n * Contains a livehash associated to an account\n * @member {proto.ICryptoGetLiveHashResponse|null|undefined} cryptoGetLiveHash\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.cryptoGetLiveHash = null;\n\n /**\n * Get all the accounts that proxy stake to a given account, and how much they proxy stake\n * @member {proto.ICryptoGetStakersResponse|null|undefined} cryptoGetProxyStakers\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.cryptoGetProxyStakers = null;\n\n /**\n * Get the contents of a file (the bytes stored in it)\n * @member {proto.IFileGetContentsResponse|null|undefined} fileGetContents\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.fileGetContents = null;\n\n /**\n * Get information about a file, such as its expiration date\n * @member {proto.IFileGetInfoResponse|null|undefined} fileGetInfo\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.fileGetInfo = null;\n\n /**\n * Get a receipt for a transaction\n * @member {proto.ITransactionGetReceiptResponse|null|undefined} transactionGetReceipt\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.transactionGetReceipt = null;\n\n /**\n * Get a record for a transaction\n * @member {proto.ITransactionGetRecordResponse|null|undefined} transactionGetRecord\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.transactionGetRecord = null;\n\n /**\n * Get a record for a transaction (lasts 180 seconds)\n * @member {proto.ITransactionGetFastRecordResponse|null|undefined} transactionGetFastRecord\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.transactionGetFastRecord = null;\n\n /**\n * Parameters of and state of a consensus topic..\n * @member {proto.IConsensusGetTopicInfoResponse|null|undefined} consensusGetTopicInfo\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.consensusGetTopicInfo = null;\n\n /**\n * Semantic versions of Hedera Services and HAPI proto\n * @member {proto.INetworkGetVersionInfoResponse|null|undefined} networkGetVersionInfo\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.networkGetVersionInfo = null;\n\n /**\n * Get all information about a token\n * @member {proto.ITokenGetInfoResponse|null|undefined} tokenGetInfo\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.tokenGetInfo = null;\n\n /**\n * Get all information about a schedule entity\n * @member {proto.IScheduleGetInfoResponse|null|undefined} scheduleGetInfo\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.scheduleGetInfo = null;\n\n /**\n * A list of the NFTs associated with the account\n * @member {proto.ITokenGetAccountNftInfosResponse|null|undefined} tokenGetAccountNftInfos\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.tokenGetAccountNftInfos = null;\n\n /**\n * All information about an NFT\n * @member {proto.ITokenGetNftInfoResponse|null|undefined} tokenGetNftInfo\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.tokenGetNftInfo = null;\n\n /**\n * A list of the NFTs for the token\n * @member {proto.ITokenGetNftInfosResponse|null|undefined} tokenGetNftInfos\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.tokenGetNftInfos = null;\n\n /**\n * Execution times of \"sufficiently recent\" transactions\n * @member {proto.INetworkGetExecutionTimeResponse|null|undefined} networkGetExecutionTime\n * @memberof proto.Response\n * @instance\n */\n Response.prototype.networkGetExecutionTime = null;\n\n // OneOf field names bound to virtual getters and setters\n let $oneOfFields;\n\n /**\n * Response response.\n * @member {\"getByKey\"|\"getBySolidityID\"|\"contractCallLocal\"|\"contractGetBytecodeResponse\"|\"contractGetInfo\"|\"contractGetRecordsResponse\"|\"cryptogetAccountBalance\"|\"cryptoGetAccountRecords\"|\"cryptoGetInfo\"|\"cryptoGetLiveHash\"|\"cryptoGetProxyStakers\"|\"fileGetContents\"|\"fileGetInfo\"|\"transactionGetReceipt\"|\"transactionGetRecord\"|\"transactionGetFastRecord\"|\"consensusGetTopicInfo\"|\"networkGetVersionInfo\"|\"tokenGetInfo\"|\"scheduleGetInfo\"|\"tokenGetAccountNftInfos\"|\"tokenGetNftInfo\"|\"tokenGetNftInfos\"|\"networkGetExecutionTime\"|undefined} response\n * @memberof proto.Response\n * @instance\n */\n Object.defineProperty(Response.prototype, \"response\", {\n get: $util.oneOfGetter($oneOfFields = [\"getByKey\", \"getBySolidityID\", \"contractCallLocal\", \"contractGetBytecodeResponse\", \"contractGetInfo\", \"contractGetRecordsResponse\", \"cryptogetAccountBalance\", \"cryptoGetAccountRecords\", \"cryptoGetInfo\", \"cryptoGetLiveHash\", \"cryptoGetProxyStakers\", \"fileGetContents\", \"fileGetInfo\", \"transactionGetReceipt\", \"transactionGetRecord\", \"transactionGetFastRecord\", \"consensusGetTopicInfo\", \"networkGetVersionInfo\", \"tokenGetInfo\", \"scheduleGetInfo\", \"tokenGetAccountNftInfos\", \"tokenGetNftInfo\", \"tokenGetNftInfos\", \"networkGetExecutionTime\"]),\n set: $util.oneOfSetter($oneOfFields)\n });\n\n /**\n * Creates a new Response instance using the specified properties.\n * @function create\n * @memberof proto.Response\n * @static\n * @param {proto.IResponse=} [properties] Properties to set\n * @returns {proto.Response} Response instance\n */\n Response.create = function create(properties) {\n return new Response(properties);\n };\n\n /**\n * Encodes the specified Response message. Does not implicitly {@link proto.Response.verify|verify} messages.\n * @function encode\n * @memberof proto.Response\n * @static\n * @param {proto.IResponse} m Response message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Response.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.getByKey != null && Object.hasOwnProperty.call(m, \"getByKey\"))\n $root.proto.GetByKeyResponse.encode(m.getByKey, w.uint32(10).fork()).ldelim();\n if (m.getBySolidityID != null && Object.hasOwnProperty.call(m, \"getBySolidityID\"))\n $root.proto.GetBySolidityIDResponse.encode(m.getBySolidityID, w.uint32(18).fork()).ldelim();\n if (m.contractCallLocal != null && Object.hasOwnProperty.call(m, \"contractCallLocal\"))\n $root.proto.ContractCallLocalResponse.encode(m.contractCallLocal, w.uint32(26).fork()).ldelim();\n if (m.contractGetInfo != null && Object.hasOwnProperty.call(m, \"contractGetInfo\"))\n $root.proto.ContractGetInfoResponse.encode(m.contractGetInfo, w.uint32(34).fork()).ldelim();\n if (m.contractGetBytecodeResponse != null && Object.hasOwnProperty.call(m, \"contractGetBytecodeResponse\"))\n $root.proto.ContractGetBytecodeResponse.encode(m.contractGetBytecodeResponse, w.uint32(42).fork()).ldelim();\n if (m.contractGetRecordsResponse != null && Object.hasOwnProperty.call(m, \"contractGetRecordsResponse\"))\n $root.proto.ContractGetRecordsResponse.encode(m.contractGetRecordsResponse, w.uint32(50).fork()).ldelim();\n if (m.cryptogetAccountBalance != null && Object.hasOwnProperty.call(m, \"cryptogetAccountBalance\"))\n $root.proto.CryptoGetAccountBalanceResponse.encode(m.cryptogetAccountBalance, w.uint32(58).fork()).ldelim();\n if (m.cryptoGetAccountRecords != null && Object.hasOwnProperty.call(m, \"cryptoGetAccountRecords\"))\n $root.proto.CryptoGetAccountRecordsResponse.encode(m.cryptoGetAccountRecords, w.uint32(66).fork()).ldelim();\n if (m.cryptoGetInfo != null && Object.hasOwnProperty.call(m, \"cryptoGetInfo\"))\n $root.proto.CryptoGetInfoResponse.encode(m.cryptoGetInfo, w.uint32(74).fork()).ldelim();\n if (m.cryptoGetLiveHash != null && Object.hasOwnProperty.call(m, \"cryptoGetLiveHash\"))\n $root.proto.CryptoGetLiveHashResponse.encode(m.cryptoGetLiveHash, w.uint32(82).fork()).ldelim();\n if (m.cryptoGetProxyStakers != null && Object.hasOwnProperty.call(m, \"cryptoGetProxyStakers\"))\n $root.proto.CryptoGetStakersResponse.encode(m.cryptoGetProxyStakers, w.uint32(90).fork()).ldelim();\n if (m.fileGetContents != null && Object.hasOwnProperty.call(m, \"fileGetContents\"))\n $root.proto.FileGetContentsResponse.encode(m.fileGetContents, w.uint32(98).fork()).ldelim();\n if (m.fileGetInfo != null && Object.hasOwnProperty.call(m, \"fileGetInfo\"))\n $root.proto.FileGetInfoResponse.encode(m.fileGetInfo, w.uint32(106).fork()).ldelim();\n if (m.transactionGetReceipt != null && Object.hasOwnProperty.call(m, \"transactionGetReceipt\"))\n $root.proto.TransactionGetReceiptResponse.encode(m.transactionGetReceipt, w.uint32(114).fork()).ldelim();\n if (m.transactionGetRecord != null && Object.hasOwnProperty.call(m, \"transactionGetRecord\"))\n $root.proto.TransactionGetRecordResponse.encode(m.transactionGetRecord, w.uint32(122).fork()).ldelim();\n if (m.transactionGetFastRecord != null && Object.hasOwnProperty.call(m, \"transactionGetFastRecord\"))\n $root.proto.TransactionGetFastRecordResponse.encode(m.transactionGetFastRecord, w.uint32(130).fork()).ldelim();\n if (m.consensusGetTopicInfo != null && Object.hasOwnProperty.call(m, \"consensusGetTopicInfo\"))\n $root.proto.ConsensusGetTopicInfoResponse.encode(m.consensusGetTopicInfo, w.uint32(1202).fork()).ldelim();\n if (m.networkGetVersionInfo != null && Object.hasOwnProperty.call(m, \"networkGetVersionInfo\"))\n $root.proto.NetworkGetVersionInfoResponse.encode(m.networkGetVersionInfo, w.uint32(1210).fork()).ldelim();\n if (m.tokenGetInfo != null && Object.hasOwnProperty.call(m, \"tokenGetInfo\"))\n $root.proto.TokenGetInfoResponse.encode(m.tokenGetInfo, w.uint32(1218).fork()).ldelim();\n if (m.scheduleGetInfo != null && Object.hasOwnProperty.call(m, \"scheduleGetInfo\"))\n $root.proto.ScheduleGetInfoResponse.encode(m.scheduleGetInfo, w.uint32(1226).fork()).ldelim();\n if (m.tokenGetAccountNftInfos != null && Object.hasOwnProperty.call(m, \"tokenGetAccountNftInfos\"))\n $root.proto.TokenGetAccountNftInfosResponse.encode(m.tokenGetAccountNftInfos, w.uint32(1234).fork()).ldelim();\n if (m.tokenGetNftInfo != null && Object.hasOwnProperty.call(m, \"tokenGetNftInfo\"))\n $root.proto.TokenGetNftInfoResponse.encode(m.tokenGetNftInfo, w.uint32(1242).fork()).ldelim();\n if (m.tokenGetNftInfos != null && Object.hasOwnProperty.call(m, \"tokenGetNftInfos\"))\n $root.proto.TokenGetNftInfosResponse.encode(m.tokenGetNftInfos, w.uint32(1250).fork()).ldelim();\n if (m.networkGetExecutionTime != null && Object.hasOwnProperty.call(m, \"networkGetExecutionTime\"))\n $root.proto.NetworkGetExecutionTimeResponse.encode(m.networkGetExecutionTime, w.uint32(1258).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a Response message from the specified reader or buffer.\n * @function decode\n * @memberof proto.Response\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.Response} Response\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Response.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.Response();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.getByKey = $root.proto.GetByKeyResponse.decode(r, r.uint32());\n break;\n case 2:\n m.getBySolidityID = $root.proto.GetBySolidityIDResponse.decode(r, r.uint32());\n break;\n case 3:\n m.contractCallLocal = $root.proto.ContractCallLocalResponse.decode(r, r.uint32());\n break;\n case 5:\n m.contractGetBytecodeResponse = $root.proto.ContractGetBytecodeResponse.decode(r, r.uint32());\n break;\n case 4:\n m.contractGetInfo = $root.proto.ContractGetInfoResponse.decode(r, r.uint32());\n break;\n case 6:\n m.contractGetRecordsResponse = $root.proto.ContractGetRecordsResponse.decode(r, r.uint32());\n break;\n case 7:\n m.cryptogetAccountBalance = $root.proto.CryptoGetAccountBalanceResponse.decode(r, r.uint32());\n break;\n case 8:\n m.cryptoGetAccountRecords = $root.proto.CryptoGetAccountRecordsResponse.decode(r, r.uint32());\n break;\n case 9:\n m.cryptoGetInfo = $root.proto.CryptoGetInfoResponse.decode(r, r.uint32());\n break;\n case 10:\n m.cryptoGetLiveHash = $root.proto.CryptoGetLiveHashResponse.decode(r, r.uint32());\n break;\n case 11:\n m.cryptoGetProxyStakers = $root.proto.CryptoGetStakersResponse.decode(r, r.uint32());\n break;\n case 12:\n m.fileGetContents = $root.proto.FileGetContentsResponse.decode(r, r.uint32());\n break;\n case 13:\n m.fileGetInfo = $root.proto.FileGetInfoResponse.decode(r, r.uint32());\n break;\n case 14:\n m.transactionGetReceipt = $root.proto.TransactionGetReceiptResponse.decode(r, r.uint32());\n break;\n case 15:\n m.transactionGetRecord = $root.proto.TransactionGetRecordResponse.decode(r, r.uint32());\n break;\n case 16:\n m.transactionGetFastRecord = $root.proto.TransactionGetFastRecordResponse.decode(r, r.uint32());\n break;\n case 150:\n m.consensusGetTopicInfo = $root.proto.ConsensusGetTopicInfoResponse.decode(r, r.uint32());\n break;\n case 151:\n m.networkGetVersionInfo = $root.proto.NetworkGetVersionInfoResponse.decode(r, r.uint32());\n break;\n case 152:\n m.tokenGetInfo = $root.proto.TokenGetInfoResponse.decode(r, r.uint32());\n break;\n case 153:\n m.scheduleGetInfo = $root.proto.ScheduleGetInfoResponse.decode(r, r.uint32());\n break;\n case 154:\n m.tokenGetAccountNftInfos = $root.proto.TokenGetAccountNftInfosResponse.decode(r, r.uint32());\n break;\n case 155:\n m.tokenGetNftInfo = $root.proto.TokenGetNftInfoResponse.decode(r, r.uint32());\n break;\n case 156:\n m.tokenGetNftInfos = $root.proto.TokenGetNftInfosResponse.decode(r, r.uint32());\n break;\n case 157:\n m.networkGetExecutionTime = $root.proto.NetworkGetExecutionTimeResponse.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Response;\n })();\n\n proto.CryptoService = (function() {\n\n /**\n * Constructs a new CryptoService service.\n * @memberof proto\n * @classdesc Transactions and queries for the Crypto Service\n * @extends $protobuf.rpc.Service\n * @constructor\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n */\n function CryptoService(rpcImpl, requestDelimited, responseDelimited) {\n $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);\n }\n\n (CryptoService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = CryptoService;\n\n /**\n * Creates new CryptoService service using the specified rpc implementation.\n * @function create\n * @memberof proto.CryptoService\n * @static\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n * @returns {CryptoService} RPC service. Useful where requests and/or responses are streamed.\n */\n CryptoService.create = function create(rpcImpl, requestDelimited, responseDelimited) {\n return new this(rpcImpl, requestDelimited, responseDelimited);\n };\n\n /**\n * Callback as used by {@link proto.CryptoService#createAccount}.\n * @memberof proto.CryptoService\n * @typedef createAccountCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Creates a new account by submitting the transaction\n * @function createAccount\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.CryptoService.createAccountCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.createAccount = function createAccount(request, callback) {\n return this.rpcCall(createAccount, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"createAccount\" });\n\n /**\n * Creates a new account by submitting the transaction\n * @function createAccount\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#updateAccount}.\n * @memberof proto.CryptoService\n * @typedef updateAccountCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Updates an account by submitting the transaction\n * @function updateAccount\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.CryptoService.updateAccountCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.updateAccount = function updateAccount(request, callback) {\n return this.rpcCall(updateAccount, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"updateAccount\" });\n\n /**\n * Updates an account by submitting the transaction\n * @function updateAccount\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#cryptoTransfer}.\n * @memberof proto.CryptoService\n * @typedef cryptoTransferCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Initiates a transfer by submitting the transaction\n * @function cryptoTransfer\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.CryptoService.cryptoTransferCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.cryptoTransfer = function cryptoTransfer(request, callback) {\n return this.rpcCall(cryptoTransfer, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"cryptoTransfer\" });\n\n /**\n * Initiates a transfer by submitting the transaction\n * @function cryptoTransfer\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#cryptoDelete}.\n * @memberof proto.CryptoService\n * @typedef cryptoDeleteCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Deletes and account by submitting the transaction\n * @function cryptoDelete\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.CryptoService.cryptoDeleteCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.cryptoDelete = function cryptoDelete(request, callback) {\n return this.rpcCall(cryptoDelete, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"cryptoDelete\" });\n\n /**\n * Deletes and account by submitting the transaction\n * @function cryptoDelete\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#approveAllowances}.\n * @memberof proto.CryptoService\n * @typedef approveAllowancesCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Adds one or more approved allowances for spenders to transfer the paying account's hbar or tokens.\n * @function approveAllowances\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.CryptoService.approveAllowancesCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.approveAllowances = function approveAllowances(request, callback) {\n return this.rpcCall(approveAllowances, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"approveAllowances\" });\n\n /**\n * Adds one or more approved allowances for spenders to transfer the paying account's hbar or tokens.\n * @function approveAllowances\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#adjustAllowance}.\n * @memberof proto.CryptoService\n * @typedef adjustAllowanceCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Adjusts the approved allowance for a spender to transfer the paying account's hbar or tokens.\n * @function adjustAllowance\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.CryptoService.adjustAllowanceCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.adjustAllowance = function adjustAllowance(request, callback) {\n return this.rpcCall(adjustAllowance, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"adjustAllowance\" });\n\n /**\n * Adjusts the approved allowance for a spender to transfer the paying account's hbar or tokens.\n * @function adjustAllowance\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#addLiveHash}.\n * @memberof proto.CryptoService\n * @typedef addLiveHashCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * (NOT CURRENTLY SUPPORTED) Adds a livehash\n * @function addLiveHash\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.CryptoService.addLiveHashCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.addLiveHash = function addLiveHash(request, callback) {\n return this.rpcCall(addLiveHash, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"addLiveHash\" });\n\n /**\n * (NOT CURRENTLY SUPPORTED) Adds a livehash\n * @function addLiveHash\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#deleteLiveHash}.\n * @memberof proto.CryptoService\n * @typedef deleteLiveHashCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * (NOT CURRENTLY SUPPORTED) Deletes a livehash\n * @function deleteLiveHash\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.CryptoService.deleteLiveHashCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.deleteLiveHash = function deleteLiveHash(request, callback) {\n return this.rpcCall(deleteLiveHash, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"deleteLiveHash\" });\n\n /**\n * (NOT CURRENTLY SUPPORTED) Deletes a livehash\n * @function deleteLiveHash\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#getLiveHash}.\n * @memberof proto.CryptoService\n * @typedef getLiveHashCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * (NOT CURRENTLY SUPPORTED) Retrieves a livehash for an account\n * @function getLiveHash\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.CryptoService.getLiveHashCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.getLiveHash = function getLiveHash(request, callback) {\n return this.rpcCall(getLiveHash, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getLiveHash\" });\n\n /**\n * (NOT CURRENTLY SUPPORTED) Retrieves a livehash for an account\n * @function getLiveHash\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#getAccountRecords}.\n * @memberof proto.CryptoService\n * @typedef getAccountRecordsCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Returns all transactions in the last 180s of consensus time for which the given account was\n * the effective payer and network property ledger.keepRecordsInState was\n * true.\n * @function getAccountRecords\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.CryptoService.getAccountRecordsCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.getAccountRecords = function getAccountRecords(request, callback) {\n return this.rpcCall(getAccountRecords, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getAccountRecords\" });\n\n /**\n * Returns all transactions in the last 180s of consensus time for which the given account was\n * the effective payer and network property ledger.keepRecordsInState was\n * true.\n * @function getAccountRecords\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#cryptoGetBalance}.\n * @memberof proto.CryptoService\n * @typedef cryptoGetBalanceCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the balance of an account\n * @function cryptoGetBalance\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.CryptoService.cryptoGetBalanceCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.cryptoGetBalance = function cryptoGetBalance(request, callback) {\n return this.rpcCall(cryptoGetBalance, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"cryptoGetBalance\" });\n\n /**\n * Retrieves the balance of an account\n * @function cryptoGetBalance\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#getAccountInfo}.\n * @memberof proto.CryptoService\n * @typedef getAccountInfoCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the metadata of an account\n * @function getAccountInfo\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.CryptoService.getAccountInfoCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.getAccountInfo = function getAccountInfo(request, callback) {\n return this.rpcCall(getAccountInfo, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getAccountInfo\" });\n\n /**\n * Retrieves the metadata of an account\n * @function getAccountInfo\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#getTransactionReceipts}.\n * @memberof proto.CryptoService\n * @typedef getTransactionReceiptsCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the latest receipt for a transaction that is either awaiting consensus, or reached\n * consensus in the last 180 seconds\n * @function getTransactionReceipts\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.CryptoService.getTransactionReceiptsCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.getTransactionReceipts = function getTransactionReceipts(request, callback) {\n return this.rpcCall(getTransactionReceipts, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getTransactionReceipts\" });\n\n /**\n * Retrieves the latest receipt for a transaction that is either awaiting consensus, or reached\n * consensus in the last 180 seconds\n * @function getTransactionReceipts\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#getFastTransactionRecord}.\n * @memberof proto.CryptoService\n * @typedef getFastTransactionRecordCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * (NOT CURRENTLY SUPPORTED) Returns the records of transactions recently funded by an account\n * @function getFastTransactionRecord\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.CryptoService.getFastTransactionRecordCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.getFastTransactionRecord = function getFastTransactionRecord(request, callback) {\n return this.rpcCall(getFastTransactionRecord, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getFastTransactionRecord\" });\n\n /**\n * (NOT CURRENTLY SUPPORTED) Returns the records of transactions recently funded by an account\n * @function getFastTransactionRecord\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#getTxRecordByTxID}.\n * @memberof proto.CryptoService\n * @typedef getTxRecordByTxIDCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the record of a transaction that is either awaiting consensus, or reached consensus\n * in the last 180 seconds\n * @function getTxRecordByTxID\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.CryptoService.getTxRecordByTxIDCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.getTxRecordByTxID = function getTxRecordByTxID(request, callback) {\n return this.rpcCall(getTxRecordByTxID, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getTxRecordByTxID\" });\n\n /**\n * Retrieves the record of a transaction that is either awaiting consensus, or reached consensus\n * in the last 180 seconds\n * @function getTxRecordByTxID\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.CryptoService#getStakersByAccountID}.\n * @memberof proto.CryptoService\n * @typedef getStakersByAccountIDCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * (NOT CURRENTLY SUPPORTED) Retrieves the stakers for a node by account id\n * @function getStakersByAccountID\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.CryptoService.getStakersByAccountIDCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(CryptoService.prototype.getStakersByAccountID = function getStakersByAccountID(request, callback) {\n return this.rpcCall(getStakersByAccountID, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getStakersByAccountID\" });\n\n /**\n * (NOT CURRENTLY SUPPORTED) Retrieves the stakers for a node by account id\n * @function getStakersByAccountID\n * @memberof proto.CryptoService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n return CryptoService;\n })();\n\n proto.FileService = (function() {\n\n /**\n * Constructs a new FileService service.\n * @memberof proto\n * @classdesc Transactions and queries for the file service.\n * @extends $protobuf.rpc.Service\n * @constructor\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n */\n function FileService(rpcImpl, requestDelimited, responseDelimited) {\n $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);\n }\n\n (FileService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = FileService;\n\n /**\n * Creates new FileService service using the specified rpc implementation.\n * @function create\n * @memberof proto.FileService\n * @static\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n * @returns {FileService} RPC service. Useful where requests and/or responses are streamed.\n */\n FileService.create = function create(rpcImpl, requestDelimited, responseDelimited) {\n return new this(rpcImpl, requestDelimited, responseDelimited);\n };\n\n /**\n * Callback as used by {@link proto.FileService#createFile}.\n * @memberof proto.FileService\n * @typedef createFileCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Creates a file\n * @function createFile\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.FileService.createFileCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(FileService.prototype.createFile = function createFile(request, callback) {\n return this.rpcCall(createFile, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"createFile\" });\n\n /**\n * Creates a file\n * @function createFile\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.FileService#updateFile}.\n * @memberof proto.FileService\n * @typedef updateFileCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Updates a file\n * @function updateFile\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.FileService.updateFileCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(FileService.prototype.updateFile = function updateFile(request, callback) {\n return this.rpcCall(updateFile, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"updateFile\" });\n\n /**\n * Updates a file\n * @function updateFile\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.FileService#deleteFile}.\n * @memberof proto.FileService\n * @typedef deleteFileCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Deletes a file\n * @function deleteFile\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.FileService.deleteFileCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(FileService.prototype.deleteFile = function deleteFile(request, callback) {\n return this.rpcCall(deleteFile, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"deleteFile\" });\n\n /**\n * Deletes a file\n * @function deleteFile\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.FileService#appendContent}.\n * @memberof proto.FileService\n * @typedef appendContentCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Appends to a file\n * @function appendContent\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.FileService.appendContentCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(FileService.prototype.appendContent = function appendContent(request, callback) {\n return this.rpcCall(appendContent, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"appendContent\" });\n\n /**\n * Appends to a file\n * @function appendContent\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.FileService#getFileContent}.\n * @memberof proto.FileService\n * @typedef getFileContentCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the file contents\n * @function getFileContent\n * @memberof proto.FileService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.FileService.getFileContentCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(FileService.prototype.getFileContent = function getFileContent(request, callback) {\n return this.rpcCall(getFileContent, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getFileContent\" });\n\n /**\n * Retrieves the file contents\n * @function getFileContent\n * @memberof proto.FileService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.FileService#getFileInfo}.\n * @memberof proto.FileService\n * @typedef getFileInfoCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the file information\n * @function getFileInfo\n * @memberof proto.FileService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.FileService.getFileInfoCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(FileService.prototype.getFileInfo = function getFileInfo(request, callback) {\n return this.rpcCall(getFileInfo, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getFileInfo\" });\n\n /**\n * Retrieves the file information\n * @function getFileInfo\n * @memberof proto.FileService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.FileService#systemDelete}.\n * @memberof proto.FileService\n * @typedef systemDeleteCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Deletes a file if the submitting account has network admin privileges\n * @function systemDelete\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.FileService.systemDeleteCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(FileService.prototype.systemDelete = function systemDelete(request, callback) {\n return this.rpcCall(systemDelete, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"systemDelete\" });\n\n /**\n * Deletes a file if the submitting account has network admin privileges\n * @function systemDelete\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.FileService#systemUndelete}.\n * @memberof proto.FileService\n * @typedef systemUndeleteCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Undeletes a file if the submitting account has network admin privileges\n * @function systemUndelete\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.FileService.systemUndeleteCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(FileService.prototype.systemUndelete = function systemUndelete(request, callback) {\n return this.rpcCall(systemUndelete, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"systemUndelete\" });\n\n /**\n * Undeletes a file if the submitting account has network admin privileges\n * @function systemUndelete\n * @memberof proto.FileService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n return FileService;\n })();\n\n proto.FreezeService = (function() {\n\n /**\n * Constructs a new FreezeService service.\n * @memberof proto\n * @classdesc The request and responses for freeze service.\n * @extends $protobuf.rpc.Service\n * @constructor\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n */\n function FreezeService(rpcImpl, requestDelimited, responseDelimited) {\n $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);\n }\n\n (FreezeService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = FreezeService;\n\n /**\n * Creates new FreezeService service using the specified rpc implementation.\n * @function create\n * @memberof proto.FreezeService\n * @static\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n * @returns {FreezeService} RPC service. Useful where requests and/or responses are streamed.\n */\n FreezeService.create = function create(rpcImpl, requestDelimited, responseDelimited) {\n return new this(rpcImpl, requestDelimited, responseDelimited);\n };\n\n /**\n * Callback as used by {@link proto.FreezeService#freeze}.\n * @memberof proto.FreezeService\n * @typedef freezeCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Freezes the nodes by submitting the transaction. The grpc server returns the\n * TransactionResponse\n * @function freeze\n * @memberof proto.FreezeService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.FreezeService.freezeCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(FreezeService.prototype.freeze = function freeze(request, callback) {\n return this.rpcCall(freeze, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"freeze\" });\n\n /**\n * Freezes the nodes by submitting the transaction. The grpc server returns the\n * TransactionResponse\n * @function freeze\n * @memberof proto.FreezeService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n return FreezeService;\n })();\n\n proto.ConsensusTopicQuery = (function() {\n\n /**\n * Properties of a ConsensusTopicQuery.\n * @memberof proto\n * @interface IConsensusTopicQuery\n * @property {proto.ITopicID|null} [topicID] A required topic ID to retrieve messages for.\n * @property {proto.ITimestamp|null} [consensusStartTime] Include messages which reached consensus on or after this time. Defaults to current time if\n * not set.\n * @property {proto.ITimestamp|null} [consensusEndTime] Include messages which reached consensus before this time. If not set it will receive\n * indefinitely.\n * @property {Long|null} [limit] The maximum number of messages to receive before stopping. If not set or set to zero it will\n * return messages indefinitely.\n */\n\n /**\n * Constructs a new ConsensusTopicQuery.\n * @memberof proto\n * @classdesc Represents a ConsensusTopicQuery.\n * @implements IConsensusTopicQuery\n * @constructor\n * @param {proto.IConsensusTopicQuery=} [p] Properties to set\n */\n function ConsensusTopicQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * A required topic ID to retrieve messages for.\n * @member {proto.ITopicID|null|undefined} topicID\n * @memberof proto.ConsensusTopicQuery\n * @instance\n */\n ConsensusTopicQuery.prototype.topicID = null;\n\n /**\n * Include messages which reached consensus on or after this time. Defaults to current time if\n * not set.\n * @member {proto.ITimestamp|null|undefined} consensusStartTime\n * @memberof proto.ConsensusTopicQuery\n * @instance\n */\n ConsensusTopicQuery.prototype.consensusStartTime = null;\n\n /**\n * Include messages which reached consensus before this time. If not set it will receive\n * indefinitely.\n * @member {proto.ITimestamp|null|undefined} consensusEndTime\n * @memberof proto.ConsensusTopicQuery\n * @instance\n */\n ConsensusTopicQuery.prototype.consensusEndTime = null;\n\n /**\n * The maximum number of messages to receive before stopping. If not set or set to zero it will\n * return messages indefinitely.\n * @member {Long} limit\n * @memberof proto.ConsensusTopicQuery\n * @instance\n */\n ConsensusTopicQuery.prototype.limit = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Creates a new ConsensusTopicQuery instance using the specified properties.\n * @function create\n * @memberof proto.ConsensusTopicQuery\n * @static\n * @param {proto.IConsensusTopicQuery=} [properties] Properties to set\n * @returns {proto.ConsensusTopicQuery} ConsensusTopicQuery instance\n */\n ConsensusTopicQuery.create = function create(properties) {\n return new ConsensusTopicQuery(properties);\n };\n\n /**\n * Encodes the specified ConsensusTopicQuery message. Does not implicitly {@link proto.ConsensusTopicQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.ConsensusTopicQuery\n * @static\n * @param {proto.IConsensusTopicQuery} m ConsensusTopicQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ConsensusTopicQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.topicID != null && Object.hasOwnProperty.call(m, \"topicID\"))\n $root.proto.TopicID.encode(m.topicID, w.uint32(10).fork()).ldelim();\n if (m.consensusStartTime != null && Object.hasOwnProperty.call(m, \"consensusStartTime\"))\n $root.proto.Timestamp.encode(m.consensusStartTime, w.uint32(18).fork()).ldelim();\n if (m.consensusEndTime != null && Object.hasOwnProperty.call(m, \"consensusEndTime\"))\n $root.proto.Timestamp.encode(m.consensusEndTime, w.uint32(26).fork()).ldelim();\n if (m.limit != null && Object.hasOwnProperty.call(m, \"limit\"))\n w.uint32(32).uint64(m.limit);\n return w;\n };\n\n /**\n * Decodes a ConsensusTopicQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ConsensusTopicQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ConsensusTopicQuery} ConsensusTopicQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ConsensusTopicQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ConsensusTopicQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.topicID = $root.proto.TopicID.decode(r, r.uint32());\n break;\n case 2:\n m.consensusStartTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 3:\n m.consensusEndTime = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 4:\n m.limit = r.uint64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ConsensusTopicQuery;\n })();\n\n proto.ConsensusTopicResponse = (function() {\n\n /**\n * Properties of a ConsensusTopicResponse.\n * @memberof proto\n * @interface IConsensusTopicResponse\n * @property {proto.ITimestamp|null} [consensusTimestamp] The time at which the transaction reached consensus\n * @property {Uint8Array|null} [message] The message body originally in the ConsensusSubmitMessageTransactionBody. Message size will\n * be less than 6KiB.\n * @property {Uint8Array|null} [runningHash] The running hash (SHA384) of every message.\n * @property {Long|null} [sequenceNumber] Starts at 1 for first submitted message. Incremented on each submitted message.\n * @property {Long|null} [runningHashVersion] Version of the SHA-384 digest used to update the running hash.\n * @property {proto.IConsensusMessageChunkInfo|null} [chunkInfo] Optional information of the current chunk in a fragmented message.\n */\n\n /**\n * Constructs a new ConsensusTopicResponse.\n * @memberof proto\n * @classdesc Represents a ConsensusTopicResponse.\n * @implements IConsensusTopicResponse\n * @constructor\n * @param {proto.IConsensusTopicResponse=} [p] Properties to set\n */\n function ConsensusTopicResponse(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The time at which the transaction reached consensus\n * @member {proto.ITimestamp|null|undefined} consensusTimestamp\n * @memberof proto.ConsensusTopicResponse\n * @instance\n */\n ConsensusTopicResponse.prototype.consensusTimestamp = null;\n\n /**\n * The message body originally in the ConsensusSubmitMessageTransactionBody. Message size will\n * be less than 6KiB.\n * @member {Uint8Array} message\n * @memberof proto.ConsensusTopicResponse\n * @instance\n */\n ConsensusTopicResponse.prototype.message = $util.newBuffer([]);\n\n /**\n * The running hash (SHA384) of every message.\n * @member {Uint8Array} runningHash\n * @memberof proto.ConsensusTopicResponse\n * @instance\n */\n ConsensusTopicResponse.prototype.runningHash = $util.newBuffer([]);\n\n /**\n * Starts at 1 for first submitted message. Incremented on each submitted message.\n * @member {Long} sequenceNumber\n * @memberof proto.ConsensusTopicResponse\n * @instance\n */\n ConsensusTopicResponse.prototype.sequenceNumber = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Version of the SHA-384 digest used to update the running hash.\n * @member {Long} runningHashVersion\n * @memberof proto.ConsensusTopicResponse\n * @instance\n */\n ConsensusTopicResponse.prototype.runningHashVersion = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Optional information of the current chunk in a fragmented message.\n * @member {proto.IConsensusMessageChunkInfo|null|undefined} chunkInfo\n * @memberof proto.ConsensusTopicResponse\n * @instance\n */\n ConsensusTopicResponse.prototype.chunkInfo = null;\n\n /**\n * Creates a new ConsensusTopicResponse instance using the specified properties.\n * @function create\n * @memberof proto.ConsensusTopicResponse\n * @static\n * @param {proto.IConsensusTopicResponse=} [properties] Properties to set\n * @returns {proto.ConsensusTopicResponse} ConsensusTopicResponse instance\n */\n ConsensusTopicResponse.create = function create(properties) {\n return new ConsensusTopicResponse(properties);\n };\n\n /**\n * Encodes the specified ConsensusTopicResponse message. Does not implicitly {@link proto.ConsensusTopicResponse.verify|verify} messages.\n * @function encode\n * @memberof proto.ConsensusTopicResponse\n * @static\n * @param {proto.IConsensusTopicResponse} m ConsensusTopicResponse message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ConsensusTopicResponse.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.consensusTimestamp != null && Object.hasOwnProperty.call(m, \"consensusTimestamp\"))\n $root.proto.Timestamp.encode(m.consensusTimestamp, w.uint32(10).fork()).ldelim();\n if (m.message != null && Object.hasOwnProperty.call(m, \"message\"))\n w.uint32(18).bytes(m.message);\n if (m.runningHash != null && Object.hasOwnProperty.call(m, \"runningHash\"))\n w.uint32(26).bytes(m.runningHash);\n if (m.sequenceNumber != null && Object.hasOwnProperty.call(m, \"sequenceNumber\"))\n w.uint32(32).uint64(m.sequenceNumber);\n if (m.runningHashVersion != null && Object.hasOwnProperty.call(m, \"runningHashVersion\"))\n w.uint32(40).uint64(m.runningHashVersion);\n if (m.chunkInfo != null && Object.hasOwnProperty.call(m, \"chunkInfo\"))\n $root.proto.ConsensusMessageChunkInfo.encode(m.chunkInfo, w.uint32(50).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a ConsensusTopicResponse message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ConsensusTopicResponse\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ConsensusTopicResponse} ConsensusTopicResponse\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ConsensusTopicResponse.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ConsensusTopicResponse();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.consensusTimestamp = $root.proto.Timestamp.decode(r, r.uint32());\n break;\n case 2:\n m.message = r.bytes();\n break;\n case 3:\n m.runningHash = r.bytes();\n break;\n case 4:\n m.sequenceNumber = r.uint64();\n break;\n case 5:\n m.runningHashVersion = r.uint64();\n break;\n case 6:\n m.chunkInfo = $root.proto.ConsensusMessageChunkInfo.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ConsensusTopicResponse;\n })();\n\n proto.MirrorConsensusService = (function() {\n\n /**\n * Constructs a new MirrorConsensusService service.\n * @memberof proto\n * @classdesc The Mirror Service provides the ability to query a stream of Hedera Consensus Service (HCS)\n * messages for an HCS Topic via a specific (possibly open-ended) time range.\n * @extends $protobuf.rpc.Service\n * @constructor\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n */\n function MirrorConsensusService(rpcImpl, requestDelimited, responseDelimited) {\n $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);\n }\n\n (MirrorConsensusService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = MirrorConsensusService;\n\n /**\n * Creates new MirrorConsensusService service using the specified rpc implementation.\n * @function create\n * @memberof proto.MirrorConsensusService\n * @static\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n * @returns {MirrorConsensusService} RPC service. Useful where requests and/or responses are streamed.\n */\n MirrorConsensusService.create = function create(rpcImpl, requestDelimited, responseDelimited) {\n return new this(rpcImpl, requestDelimited, responseDelimited);\n };\n\n /**\n * Callback as used by {@link proto.MirrorConsensusService#subscribeTopic}.\n * @memberof proto.MirrorConsensusService\n * @typedef subscribeTopicCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.ConsensusTopicResponse} [response] ConsensusTopicResponse\n */\n\n /**\n * Calls subscribeTopic.\n * @function subscribeTopic\n * @memberof proto.MirrorConsensusService\n * @instance\n * @param {proto.IConsensusTopicQuery} request ConsensusTopicQuery message or plain object\n * @param {proto.MirrorConsensusService.subscribeTopicCallback} callback Node-style callback called with the error, if any, and ConsensusTopicResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(MirrorConsensusService.prototype.subscribeTopic = function subscribeTopic(request, callback) {\n return this.rpcCall(subscribeTopic, $root.proto.ConsensusTopicQuery, $root.proto.ConsensusTopicResponse, request, callback);\n }, \"name\", { value: \"subscribeTopic\" });\n\n /**\n * Calls subscribeTopic.\n * @function subscribeTopic\n * @memberof proto.MirrorConsensusService\n * @instance\n * @param {proto.IConsensusTopicQuery} request ConsensusTopicQuery message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n return MirrorConsensusService;\n })();\n\n proto.AddressBookQuery = (function() {\n\n /**\n * Properties of an AddressBookQuery.\n * @memberof proto\n * @interface IAddressBookQuery\n * @property {proto.IFileID|null} [fileId] The ID of the address book file on the network. Can be either 0.0.101 or 0.0.102.\n * @property {number|null} [limit] The maximum number of node addresses to receive before stopping. If not set or set to zero it will return all node addresses in the database.\n */\n\n /**\n * Constructs a new AddressBookQuery.\n * @memberof proto\n * @classdesc Request object to query an address book for its list of nodes\n * @implements IAddressBookQuery\n * @constructor\n * @param {proto.IAddressBookQuery=} [p] Properties to set\n */\n function AddressBookQuery(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The ID of the address book file on the network. Can be either 0.0.101 or 0.0.102.\n * @member {proto.IFileID|null|undefined} fileId\n * @memberof proto.AddressBookQuery\n * @instance\n */\n AddressBookQuery.prototype.fileId = null;\n\n /**\n * The maximum number of node addresses to receive before stopping. If not set or set to zero it will return all node addresses in the database.\n * @member {number} limit\n * @memberof proto.AddressBookQuery\n * @instance\n */\n AddressBookQuery.prototype.limit = 0;\n\n /**\n * Creates a new AddressBookQuery instance using the specified properties.\n * @function create\n * @memberof proto.AddressBookQuery\n * @static\n * @param {proto.IAddressBookQuery=} [properties] Properties to set\n * @returns {proto.AddressBookQuery} AddressBookQuery instance\n */\n AddressBookQuery.create = function create(properties) {\n return new AddressBookQuery(properties);\n };\n\n /**\n * Encodes the specified AddressBookQuery message. Does not implicitly {@link proto.AddressBookQuery.verify|verify} messages.\n * @function encode\n * @memberof proto.AddressBookQuery\n * @static\n * @param {proto.IAddressBookQuery} m AddressBookQuery message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n AddressBookQuery.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.fileId != null && Object.hasOwnProperty.call(m, \"fileId\"))\n $root.proto.FileID.encode(m.fileId, w.uint32(10).fork()).ldelim();\n if (m.limit != null && Object.hasOwnProperty.call(m, \"limit\"))\n w.uint32(16).int32(m.limit);\n return w;\n };\n\n /**\n * Decodes an AddressBookQuery message from the specified reader or buffer.\n * @function decode\n * @memberof proto.AddressBookQuery\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.AddressBookQuery} AddressBookQuery\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n AddressBookQuery.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.AddressBookQuery();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.fileId = $root.proto.FileID.decode(r, r.uint32());\n break;\n case 2:\n m.limit = r.int32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return AddressBookQuery;\n })();\n\n proto.MirrorNetworkService = (function() {\n\n /**\n * Constructs a new MirrorNetworkService service.\n * @memberof proto\n * @classdesc Provides cross network APIs like address book queries\n * @extends $protobuf.rpc.Service\n * @constructor\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n */\n function MirrorNetworkService(rpcImpl, requestDelimited, responseDelimited) {\n $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);\n }\n\n (MirrorNetworkService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = MirrorNetworkService;\n\n /**\n * Creates new MirrorNetworkService service using the specified rpc implementation.\n * @function create\n * @memberof proto.MirrorNetworkService\n * @static\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n * @returns {MirrorNetworkService} RPC service. Useful where requests and/or responses are streamed.\n */\n MirrorNetworkService.create = function create(rpcImpl, requestDelimited, responseDelimited) {\n return new this(rpcImpl, requestDelimited, responseDelimited);\n };\n\n /**\n * Callback as used by {@link proto.MirrorNetworkService#getNodes}.\n * @memberof proto.MirrorNetworkService\n * @typedef getNodesCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.NodeAddress} [response] NodeAddress\n */\n\n /**\n * Calls getNodes.\n * @function getNodes\n * @memberof proto.MirrorNetworkService\n * @instance\n * @param {proto.IAddressBookQuery} request AddressBookQuery message or plain object\n * @param {proto.MirrorNetworkService.getNodesCallback} callback Node-style callback called with the error, if any, and NodeAddress\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(MirrorNetworkService.prototype.getNodes = function getNodes(request, callback) {\n return this.rpcCall(getNodes, $root.proto.AddressBookQuery, $root.proto.NodeAddress, request, callback);\n }, \"name\", { value: \"getNodes\" });\n\n /**\n * Calls getNodes.\n * @function getNodes\n * @memberof proto.MirrorNetworkService\n * @instance\n * @param {proto.IAddressBookQuery} request AddressBookQuery message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n return MirrorNetworkService;\n })();\n\n proto.NetworkService = (function() {\n\n /**\n * Constructs a new NetworkService service.\n * @memberof proto\n * @classdesc The requests and responses for different network services.\n * @extends $protobuf.rpc.Service\n * @constructor\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n */\n function NetworkService(rpcImpl, requestDelimited, responseDelimited) {\n $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);\n }\n\n (NetworkService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = NetworkService;\n\n /**\n * Creates new NetworkService service using the specified rpc implementation.\n * @function create\n * @memberof proto.NetworkService\n * @static\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n * @returns {NetworkService} RPC service. Useful where requests and/or responses are streamed.\n */\n NetworkService.create = function create(rpcImpl, requestDelimited, responseDelimited) {\n return new this(rpcImpl, requestDelimited, responseDelimited);\n };\n\n /**\n * Callback as used by {@link proto.NetworkService#getVersionInfo}.\n * @memberof proto.NetworkService\n * @typedef getVersionInfoCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the active versions of Hedera Services and HAPI proto\n * @function getVersionInfo\n * @memberof proto.NetworkService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.NetworkService.getVersionInfoCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(NetworkService.prototype.getVersionInfo = function getVersionInfo(request, callback) {\n return this.rpcCall(getVersionInfo, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getVersionInfo\" });\n\n /**\n * Retrieves the active versions of Hedera Services and HAPI proto\n * @function getVersionInfo\n * @memberof proto.NetworkService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.NetworkService#getExecutionTime}.\n * @memberof proto.NetworkService\n * @typedef getExecutionTimeCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the time in nanoseconds spent in handleTransaction for one or more\n * TransactionIDs (assuming they have reached consensus \"recently\", since only a limited\n * number of execution times are kept in-memory, depending on the value of the node-local\n * property stats.executionTimesToTrack).\n * @function getExecutionTime\n * @memberof proto.NetworkService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.NetworkService.getExecutionTimeCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(NetworkService.prototype.getExecutionTime = function getExecutionTime(request, callback) {\n return this.rpcCall(getExecutionTime, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getExecutionTime\" });\n\n /**\n * Retrieves the time in nanoseconds spent in handleTransaction for one or more\n * TransactionIDs (assuming they have reached consensus \"recently\", since only a limited\n * number of execution times are kept in-memory, depending on the value of the node-local\n * property stats.executionTimesToTrack).\n * @function getExecutionTime\n * @memberof proto.NetworkService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.NetworkService#uncheckedSubmit}.\n * @memberof proto.NetworkService\n * @typedef uncheckedSubmitCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Submits a \"wrapped\" transaction to the network, skipping its standard prechecks. (Note that\n * the \"wrapper\" UncheckedSubmit transaction is still subject to normal prechecks,\n * including an authorization requirement that its payer be either the treasury or system admin\n * account.)\n * @function uncheckedSubmit\n * @memberof proto.NetworkService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.NetworkService.uncheckedSubmitCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(NetworkService.prototype.uncheckedSubmit = function uncheckedSubmit(request, callback) {\n return this.rpcCall(uncheckedSubmit, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"uncheckedSubmit\" });\n\n /**\n * Submits a \"wrapped\" transaction to the network, skipping its standard prechecks. (Note that\n * the \"wrapper\" UncheckedSubmit transaction is still subject to normal prechecks,\n * including an authorization requirement that its payer be either the treasury or system admin\n * account.)\n * @function uncheckedSubmit\n * @memberof proto.NetworkService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n return NetworkService;\n })();\n\n proto.ScheduleService = (function() {\n\n /**\n * Constructs a new ScheduleService service.\n * @memberof proto\n * @classdesc Transactions and queries for the Schedule Service\n * The Schedule Service allows transactions to be submitted without all the required signatures and\n * allows anyone to provide the required signatures independently after a transaction has already\n * been created.\n * Execution:\n * Scheduled Transactions are executed once all required signatures are collected and witnessed.\n * Every time new signature is provided, a check is performed on the \"readiness\" of the execution.\n * The Scheduled Transaction will be executed immediately after the transaction that triggered it\n * and will be externalised in a separate Transaction Record.\n * Transaction Record:\n * The timestamp of the Scheduled Transaction will be equal to consensusTimestamp + 1 nano, where\n * consensusTimestamp is the timestamp of the transaction that triggered the execution.\n * The Transaction ID of the Scheduled Transaction will have the scheduled property set to true and\n * inherit the transactionValidStart and accountID from the ScheduleCreate transaction.\n * The scheduleRef property of the transaction record will be populated with the ScheduleID of the\n * Scheduled Transaction.\n * Post execution:\n * Once a given Scheduled Transaction executes, it will be removed from the ledger and any upcoming\n * operation referring the ScheduleID will resolve to INVALID_SCHEDULE_ID.\n * Expiry:\n * Scheduled Transactions have a global expiry time txExpiryTimeSecs (Currently set to 30 minutes).\n * If txExpiryTimeSecs pass and the Scheduled Transaction haven't yet executed, it will be removed\n * from the ledger as if ScheduleDelete operation is executed.\n * @extends $protobuf.rpc.Service\n * @constructor\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n */\n function ScheduleService(rpcImpl, requestDelimited, responseDelimited) {\n $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);\n }\n\n (ScheduleService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = ScheduleService;\n\n /**\n * Creates new ScheduleService service using the specified rpc implementation.\n * @function create\n * @memberof proto.ScheduleService\n * @static\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n * @returns {ScheduleService} RPC service. Useful where requests and/or responses are streamed.\n */\n ScheduleService.create = function create(rpcImpl, requestDelimited, responseDelimited) {\n return new this(rpcImpl, requestDelimited, responseDelimited);\n };\n\n /**\n * Callback as used by {@link proto.ScheduleService#createSchedule}.\n * @memberof proto.ScheduleService\n * @typedef createScheduleCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Creates a new Schedule by submitting the transaction\n * @function createSchedule\n * @memberof proto.ScheduleService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.ScheduleService.createScheduleCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(ScheduleService.prototype.createSchedule = function createSchedule(request, callback) {\n return this.rpcCall(createSchedule, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"createSchedule\" });\n\n /**\n * Creates a new Schedule by submitting the transaction\n * @function createSchedule\n * @memberof proto.ScheduleService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.ScheduleService#signSchedule}.\n * @memberof proto.ScheduleService\n * @typedef signScheduleCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Signs a new Schedule by submitting the transaction\n * @function signSchedule\n * @memberof proto.ScheduleService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.ScheduleService.signScheduleCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(ScheduleService.prototype.signSchedule = function signSchedule(request, callback) {\n return this.rpcCall(signSchedule, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"signSchedule\" });\n\n /**\n * Signs a new Schedule by submitting the transaction\n * @function signSchedule\n * @memberof proto.ScheduleService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.ScheduleService#deleteSchedule}.\n * @memberof proto.ScheduleService\n * @typedef deleteScheduleCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Deletes a new Schedule by submitting the transaction\n * @function deleteSchedule\n * @memberof proto.ScheduleService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.ScheduleService.deleteScheduleCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(ScheduleService.prototype.deleteSchedule = function deleteSchedule(request, callback) {\n return this.rpcCall(deleteSchedule, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"deleteSchedule\" });\n\n /**\n * Deletes a new Schedule by submitting the transaction\n * @function deleteSchedule\n * @memberof proto.ScheduleService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.ScheduleService#getScheduleInfo}.\n * @memberof proto.ScheduleService\n * @typedef getScheduleInfoCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the metadata of a schedule entity\n * @function getScheduleInfo\n * @memberof proto.ScheduleService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.ScheduleService.getScheduleInfoCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(ScheduleService.prototype.getScheduleInfo = function getScheduleInfo(request, callback) {\n return this.rpcCall(getScheduleInfo, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getScheduleInfo\" });\n\n /**\n * Retrieves the metadata of a schedule entity\n * @function getScheduleInfo\n * @memberof proto.ScheduleService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n return ScheduleService;\n })();\n\n proto.SmartContractService = (function() {\n\n /**\n * Constructs a new SmartContractService service.\n * @memberof proto\n * @classdesc Transactions and queries for the file service.\n * @extends $protobuf.rpc.Service\n * @constructor\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n */\n function SmartContractService(rpcImpl, requestDelimited, responseDelimited) {\n $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);\n }\n\n (SmartContractService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = SmartContractService;\n\n /**\n * Creates new SmartContractService service using the specified rpc implementation.\n * @function create\n * @memberof proto.SmartContractService\n * @static\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n * @returns {SmartContractService} RPC service. Useful where requests and/or responses are streamed.\n */\n SmartContractService.create = function create(rpcImpl, requestDelimited, responseDelimited) {\n return new this(rpcImpl, requestDelimited, responseDelimited);\n };\n\n /**\n * Callback as used by {@link proto.SmartContractService#createContract}.\n * @memberof proto.SmartContractService\n * @typedef createContractCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Creates a contract\n * @function createContract\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.SmartContractService.createContractCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(SmartContractService.prototype.createContract = function createContract(request, callback) {\n return this.rpcCall(createContract, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"createContract\" });\n\n /**\n * Creates a contract\n * @function createContract\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.SmartContractService#updateContract}.\n * @memberof proto.SmartContractService\n * @typedef updateContractCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Updates a contract with the content\n * @function updateContract\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.SmartContractService.updateContractCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(SmartContractService.prototype.updateContract = function updateContract(request, callback) {\n return this.rpcCall(updateContract, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"updateContract\" });\n\n /**\n * Updates a contract with the content\n * @function updateContract\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.SmartContractService#contractCallMethod}.\n * @memberof proto.SmartContractService\n * @typedef contractCallMethodCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Calls a contract\n * @function contractCallMethod\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.SmartContractService.contractCallMethodCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(SmartContractService.prototype.contractCallMethod = function contractCallMethod(request, callback) {\n return this.rpcCall(contractCallMethod, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"contractCallMethod\" });\n\n /**\n * Calls a contract\n * @function contractCallMethod\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.SmartContractService#getContractInfo}.\n * @memberof proto.SmartContractService\n * @typedef getContractInfoCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the contract information\n * @function getContractInfo\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.SmartContractService.getContractInfoCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(SmartContractService.prototype.getContractInfo = function getContractInfo(request, callback) {\n return this.rpcCall(getContractInfo, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getContractInfo\" });\n\n /**\n * Retrieves the contract information\n * @function getContractInfo\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.SmartContractService#contractCallLocalMethod}.\n * @memberof proto.SmartContractService\n * @typedef contractCallLocalMethodCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Calls a smart contract to be run on a single node\n * @function contractCallLocalMethod\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.SmartContractService.contractCallLocalMethodCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(SmartContractService.prototype.contractCallLocalMethod = function contractCallLocalMethod(request, callback) {\n return this.rpcCall(contractCallLocalMethod, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"contractCallLocalMethod\" });\n\n /**\n * Calls a smart contract to be run on a single node\n * @function contractCallLocalMethod\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.SmartContractService#contractGetBytecode}.\n * @memberof proto.SmartContractService\n * @typedef ContractGetBytecodeCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the byte code of a contract\n * @function contractGetBytecode\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.SmartContractService.ContractGetBytecodeCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(SmartContractService.prototype.contractGetBytecode = function contractGetBytecode(request, callback) {\n return this.rpcCall(contractGetBytecode, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"ContractGetBytecode\" });\n\n /**\n * Retrieves the byte code of a contract\n * @function contractGetBytecode\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.SmartContractService#getBySolidityID}.\n * @memberof proto.SmartContractService\n * @typedef getBySolidityIDCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves a contract by its Solidity address\n * @function getBySolidityID\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.SmartContractService.getBySolidityIDCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(SmartContractService.prototype.getBySolidityID = function getBySolidityID(request, callback) {\n return this.rpcCall(getBySolidityID, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getBySolidityID\" });\n\n /**\n * Retrieves a contract by its Solidity address\n * @function getBySolidityID\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.SmartContractService#getTxRecordByContractID}.\n * @memberof proto.SmartContractService\n * @typedef getTxRecordByContractIDCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Always returns an empty record list, as contract accounts are never effective payers for\n * transactions\n * @function getTxRecordByContractID\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.SmartContractService.getTxRecordByContractIDCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(SmartContractService.prototype.getTxRecordByContractID = function getTxRecordByContractID(request, callback) {\n return this.rpcCall(getTxRecordByContractID, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getTxRecordByContractID\" });\n\n /**\n * Always returns an empty record list, as contract accounts are never effective payers for\n * transactions\n * @function getTxRecordByContractID\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.SmartContractService#deleteContract}.\n * @memberof proto.SmartContractService\n * @typedef deleteContractCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Deletes a contract instance and transfers any remaining hbars to a specified receiver\n * @function deleteContract\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.SmartContractService.deleteContractCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(SmartContractService.prototype.deleteContract = function deleteContract(request, callback) {\n return this.rpcCall(deleteContract, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"deleteContract\" });\n\n /**\n * Deletes a contract instance and transfers any remaining hbars to a specified receiver\n * @function deleteContract\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.SmartContractService#systemDelete}.\n * @memberof proto.SmartContractService\n * @typedef systemDeleteCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Deletes a contract if the submitting account has network admin privileges\n * @function systemDelete\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.SmartContractService.systemDeleteCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(SmartContractService.prototype.systemDelete = function systemDelete(request, callback) {\n return this.rpcCall(systemDelete, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"systemDelete\" });\n\n /**\n * Deletes a contract if the submitting account has network admin privileges\n * @function systemDelete\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.SmartContractService#systemUndelete}.\n * @memberof proto.SmartContractService\n * @typedef systemUndeleteCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Undeletes a contract if the submitting account has network admin privileges\n * @function systemUndelete\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.SmartContractService.systemUndeleteCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(SmartContractService.prototype.systemUndelete = function systemUndelete(request, callback) {\n return this.rpcCall(systemUndelete, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"systemUndelete\" });\n\n /**\n * Undeletes a contract if the submitting account has network admin privileges\n * @function systemUndelete\n * @memberof proto.SmartContractService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n return SmartContractService;\n })();\n\n proto.ThrottleGroup = (function() {\n\n /**\n * Properties of a ThrottleGroup.\n * @memberof proto\n * @interface IThrottleGroup\n * @property {Array.|null} [operations] The operations to be throttled\n * @property {Long|null} [milliOpsPerSec] The number of total operations per second across the entire network, multiplied by 1000. So, to\n * choose 3 operations per second (which on a network of 30 nodes is a tenth of an operation per\n * second for each node), set milliOpsPerSec = 3000. And to choose 3.6 ops per second, use\n * milliOpsPerSec = 3600. Minimum allowed value is 1, and maximum allowed value is 9223372.\n */\n\n /**\n * Constructs a new ThrottleGroup.\n * @memberof proto\n * @classdesc A set of operations which should be collectively throttled at a given milli-ops-per-second limit.\n * @implements IThrottleGroup\n * @constructor\n * @param {proto.IThrottleGroup=} [p] Properties to set\n */\n function ThrottleGroup(p) {\n this.operations = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * The operations to be throttled\n * @member {Array.} operations\n * @memberof proto.ThrottleGroup\n * @instance\n */\n ThrottleGroup.prototype.operations = $util.emptyArray;\n\n /**\n * The number of total operations per second across the entire network, multiplied by 1000. So, to\n * choose 3 operations per second (which on a network of 30 nodes is a tenth of an operation per\n * second for each node), set milliOpsPerSec = 3000. And to choose 3.6 ops per second, use\n * milliOpsPerSec = 3600. Minimum allowed value is 1, and maximum allowed value is 9223372.\n * @member {Long} milliOpsPerSec\n * @memberof proto.ThrottleGroup\n * @instance\n */\n ThrottleGroup.prototype.milliOpsPerSec = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Creates a new ThrottleGroup instance using the specified properties.\n * @function create\n * @memberof proto.ThrottleGroup\n * @static\n * @param {proto.IThrottleGroup=} [properties] Properties to set\n * @returns {proto.ThrottleGroup} ThrottleGroup instance\n */\n ThrottleGroup.create = function create(properties) {\n return new ThrottleGroup(properties);\n };\n\n /**\n * Encodes the specified ThrottleGroup message. Does not implicitly {@link proto.ThrottleGroup.verify|verify} messages.\n * @function encode\n * @memberof proto.ThrottleGroup\n * @static\n * @param {proto.IThrottleGroup} m ThrottleGroup message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ThrottleGroup.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.operations != null && m.operations.length) {\n w.uint32(10).fork();\n for (var i = 0; i < m.operations.length; ++i)\n w.int32(m.operations[i]);\n w.ldelim();\n }\n if (m.milliOpsPerSec != null && Object.hasOwnProperty.call(m, \"milliOpsPerSec\"))\n w.uint32(16).uint64(m.milliOpsPerSec);\n return w;\n };\n\n /**\n * Decodes a ThrottleGroup message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ThrottleGroup\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ThrottleGroup} ThrottleGroup\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ThrottleGroup.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ThrottleGroup();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.operations && m.operations.length))\n m.operations = [];\n if ((t & 7) === 2) {\n var c2 = r.uint32() + r.pos;\n while (r.pos < c2)\n m.operations.push(r.int32());\n } else\n m.operations.push(r.int32());\n break;\n case 2:\n m.milliOpsPerSec = r.uint64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ThrottleGroup;\n })();\n\n proto.ThrottleBucket = (function() {\n\n /**\n * Properties of a ThrottleBucket.\n * @memberof proto\n * @interface IThrottleBucket\n * @property {string|null} [name] A name for this bucket (primarily for use in logs)\n * @property {Long|null} [burstPeriodMs] The number of milliseconds required for this bucket to drain completely when full. The product\n * of this number and the least common multiple of the milliOpsPerSec values in this bucket must\n * not exceed 9223372036.\n * @property {Array.|null} [throttleGroups] The throttle groups competing for this bucket\n */\n\n /**\n * Constructs a new ThrottleBucket.\n * @memberof proto\n * @classdesc A list of throttle groups that should all compete for the same internal bucket.\n * @implements IThrottleBucket\n * @constructor\n * @param {proto.IThrottleBucket=} [p] Properties to set\n */\n function ThrottleBucket(p) {\n this.throttleGroups = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * A name for this bucket (primarily for use in logs)\n * @member {string} name\n * @memberof proto.ThrottleBucket\n * @instance\n */\n ThrottleBucket.prototype.name = \"\";\n\n /**\n * The number of milliseconds required for this bucket to drain completely when full. The product\n * of this number and the least common multiple of the milliOpsPerSec values in this bucket must\n * not exceed 9223372036.\n * @member {Long} burstPeriodMs\n * @memberof proto.ThrottleBucket\n * @instance\n */\n ThrottleBucket.prototype.burstPeriodMs = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * The throttle groups competing for this bucket\n * @member {Array.} throttleGroups\n * @memberof proto.ThrottleBucket\n * @instance\n */\n ThrottleBucket.prototype.throttleGroups = $util.emptyArray;\n\n /**\n * Creates a new ThrottleBucket instance using the specified properties.\n * @function create\n * @memberof proto.ThrottleBucket\n * @static\n * @param {proto.IThrottleBucket=} [properties] Properties to set\n * @returns {proto.ThrottleBucket} ThrottleBucket instance\n */\n ThrottleBucket.create = function create(properties) {\n return new ThrottleBucket(properties);\n };\n\n /**\n * Encodes the specified ThrottleBucket message. Does not implicitly {@link proto.ThrottleBucket.verify|verify} messages.\n * @function encode\n * @memberof proto.ThrottleBucket\n * @static\n * @param {proto.IThrottleBucket} m ThrottleBucket message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ThrottleBucket.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.name != null && Object.hasOwnProperty.call(m, \"name\"))\n w.uint32(10).string(m.name);\n if (m.burstPeriodMs != null && Object.hasOwnProperty.call(m, \"burstPeriodMs\"))\n w.uint32(16).uint64(m.burstPeriodMs);\n if (m.throttleGroups != null && m.throttleGroups.length) {\n for (var i = 0; i < m.throttleGroups.length; ++i)\n $root.proto.ThrottleGroup.encode(m.throttleGroups[i], w.uint32(26).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a ThrottleBucket message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ThrottleBucket\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ThrottleBucket} ThrottleBucket\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ThrottleBucket.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ThrottleBucket();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.name = r.string();\n break;\n case 2:\n m.burstPeriodMs = r.uint64();\n break;\n case 3:\n if (!(m.throttleGroups && m.throttleGroups.length))\n m.throttleGroups = [];\n m.throttleGroups.push($root.proto.ThrottleGroup.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ThrottleBucket;\n })();\n\n proto.ThrottleDefinitions = (function() {\n\n /**\n * Properties of a ThrottleDefinitions.\n * @memberof proto\n * @interface IThrottleDefinitions\n * @property {Array.|null} [throttleBuckets] ThrottleDefinitions throttleBuckets\n */\n\n /**\n * Constructs a new ThrottleDefinitions.\n * @memberof proto\n * @classdesc A list of throttle buckets which, simultaneously enforced, define the system's throttling policy.\n *
    \n *
  1. When an operation appears in more than one throttling bucket, all its buckets must have room\n * or it will be throttled.
  2. \n *
  3. An operation assigned to no buckets is always throttled.
  4. \n *
\n * @implements IThrottleDefinitions\n * @constructor\n * @param {proto.IThrottleDefinitions=} [p] Properties to set\n */\n function ThrottleDefinitions(p) {\n this.throttleBuckets = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * ThrottleDefinitions throttleBuckets.\n * @member {Array.} throttleBuckets\n * @memberof proto.ThrottleDefinitions\n * @instance\n */\n ThrottleDefinitions.prototype.throttleBuckets = $util.emptyArray;\n\n /**\n * Creates a new ThrottleDefinitions instance using the specified properties.\n * @function create\n * @memberof proto.ThrottleDefinitions\n * @static\n * @param {proto.IThrottleDefinitions=} [properties] Properties to set\n * @returns {proto.ThrottleDefinitions} ThrottleDefinitions instance\n */\n ThrottleDefinitions.create = function create(properties) {\n return new ThrottleDefinitions(properties);\n };\n\n /**\n * Encodes the specified ThrottleDefinitions message. Does not implicitly {@link proto.ThrottleDefinitions.verify|verify} messages.\n * @function encode\n * @memberof proto.ThrottleDefinitions\n * @static\n * @param {proto.IThrottleDefinitions} m ThrottleDefinitions message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n ThrottleDefinitions.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.throttleBuckets != null && m.throttleBuckets.length) {\n for (var i = 0; i < m.throttleBuckets.length; ++i)\n $root.proto.ThrottleBucket.encode(m.throttleBuckets[i], w.uint32(10).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a ThrottleDefinitions message from the specified reader or buffer.\n * @function decode\n * @memberof proto.ThrottleDefinitions\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.ThrottleDefinitions} ThrottleDefinitions\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n ThrottleDefinitions.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.ThrottleDefinitions();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.throttleBuckets && m.throttleBuckets.length))\n m.throttleBuckets = [];\n m.throttleBuckets.push($root.proto.ThrottleBucket.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return ThrottleDefinitions;\n })();\n\n proto.TokenService = (function() {\n\n /**\n * Constructs a new TokenService service.\n * @memberof proto\n * @classdesc Transactions and queries for the Token Service\n * @extends $protobuf.rpc.Service\n * @constructor\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n */\n function TokenService(rpcImpl, requestDelimited, responseDelimited) {\n $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);\n }\n\n (TokenService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = TokenService;\n\n /**\n * Creates new TokenService service using the specified rpc implementation.\n * @function create\n * @memberof proto.TokenService\n * @static\n * @param {$protobuf.RPCImpl} rpcImpl RPC implementation\n * @param {boolean} [requestDelimited=false] Whether requests are length-delimited\n * @param {boolean} [responseDelimited=false] Whether responses are length-delimited\n * @returns {TokenService} RPC service. Useful where requests and/or responses are streamed.\n */\n TokenService.create = function create(rpcImpl, requestDelimited, responseDelimited) {\n return new this(rpcImpl, requestDelimited, responseDelimited);\n };\n\n /**\n * Callback as used by {@link proto.TokenService#createToken}.\n * @memberof proto.TokenService\n * @typedef createTokenCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Creates a new Token by submitting the transaction\n * @function createToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.createTokenCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.createToken = function createToken(request, callback) {\n return this.rpcCall(createToken, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"createToken\" });\n\n /**\n * Creates a new Token by submitting the transaction\n * @function createToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#updateToken}.\n * @memberof proto.TokenService\n * @typedef updateTokenCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Updates the account by submitting the transaction\n * @function updateToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.updateTokenCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.updateToken = function updateToken(request, callback) {\n return this.rpcCall(updateToken, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"updateToken\" });\n\n /**\n * Updates the account by submitting the transaction\n * @function updateToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#mintToken}.\n * @memberof proto.TokenService\n * @typedef mintTokenCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Mints an amount of the token to the defined treasury account\n * @function mintToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.mintTokenCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.mintToken = function mintToken(request, callback) {\n return this.rpcCall(mintToken, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"mintToken\" });\n\n /**\n * Mints an amount of the token to the defined treasury account\n * @function mintToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#burnToken}.\n * @memberof proto.TokenService\n * @typedef burnTokenCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Burns an amount of the token from the defined treasury account\n * @function burnToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.burnTokenCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.burnToken = function burnToken(request, callback) {\n return this.rpcCall(burnToken, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"burnToken\" });\n\n /**\n * Burns an amount of the token from the defined treasury account\n * @function burnToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#deleteToken}.\n * @memberof proto.TokenService\n * @typedef deleteTokenCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Deletes a Token\n * @function deleteToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.deleteTokenCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.deleteToken = function deleteToken(request, callback) {\n return this.rpcCall(deleteToken, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"deleteToken\" });\n\n /**\n * Deletes a Token\n * @function deleteToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#wipeTokenAccount}.\n * @memberof proto.TokenService\n * @typedef wipeTokenAccountCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Wipes the provided amount of tokens from the specified Account ID\n * @function wipeTokenAccount\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.wipeTokenAccountCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.wipeTokenAccount = function wipeTokenAccount(request, callback) {\n return this.rpcCall(wipeTokenAccount, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"wipeTokenAccount\" });\n\n /**\n * Wipes the provided amount of tokens from the specified Account ID\n * @function wipeTokenAccount\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#freezeTokenAccount}.\n * @memberof proto.TokenService\n * @typedef freezeTokenAccountCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Freezes the transfer of tokens to or from the specified Account ID\n * @function freezeTokenAccount\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.freezeTokenAccountCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.freezeTokenAccount = function freezeTokenAccount(request, callback) {\n return this.rpcCall(freezeTokenAccount, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"freezeTokenAccount\" });\n\n /**\n * Freezes the transfer of tokens to or from the specified Account ID\n * @function freezeTokenAccount\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#unfreezeTokenAccount}.\n * @memberof proto.TokenService\n * @typedef unfreezeTokenAccountCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Unfreezes the transfer of tokens to or from the specified Account ID\n * @function unfreezeTokenAccount\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.unfreezeTokenAccountCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.unfreezeTokenAccount = function unfreezeTokenAccount(request, callback) {\n return this.rpcCall(unfreezeTokenAccount, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"unfreezeTokenAccount\" });\n\n /**\n * Unfreezes the transfer of tokens to or from the specified Account ID\n * @function unfreezeTokenAccount\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#grantKycToTokenAccount}.\n * @memberof proto.TokenService\n * @typedef grantKycToTokenAccountCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Flags the provided Account ID as having gone through KYC\n * @function grantKycToTokenAccount\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.grantKycToTokenAccountCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.grantKycToTokenAccount = function grantKycToTokenAccount(request, callback) {\n return this.rpcCall(grantKycToTokenAccount, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"grantKycToTokenAccount\" });\n\n /**\n * Flags the provided Account ID as having gone through KYC\n * @function grantKycToTokenAccount\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#revokeKycFromTokenAccount}.\n * @memberof proto.TokenService\n * @typedef revokeKycFromTokenAccountCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Removes the KYC flag of the provided Account ID\n * @function revokeKycFromTokenAccount\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.revokeKycFromTokenAccountCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.revokeKycFromTokenAccount = function revokeKycFromTokenAccount(request, callback) {\n return this.rpcCall(revokeKycFromTokenAccount, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"revokeKycFromTokenAccount\" });\n\n /**\n * Removes the KYC flag of the provided Account ID\n * @function revokeKycFromTokenAccount\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#associateTokens}.\n * @memberof proto.TokenService\n * @typedef associateTokensCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Associates tokens to an account\n * @function associateTokens\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.associateTokensCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.associateTokens = function associateTokens(request, callback) {\n return this.rpcCall(associateTokens, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"associateTokens\" });\n\n /**\n * Associates tokens to an account\n * @function associateTokens\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#dissociateTokens}.\n * @memberof proto.TokenService\n * @typedef dissociateTokensCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Dissociates tokens from an account\n * @function dissociateTokens\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.dissociateTokensCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.dissociateTokens = function dissociateTokens(request, callback) {\n return this.rpcCall(dissociateTokens, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"dissociateTokens\" });\n\n /**\n * Dissociates tokens from an account\n * @function dissociateTokens\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#updateTokenFeeSchedule}.\n * @memberof proto.TokenService\n * @typedef updateTokenFeeScheduleCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Updates the custom fee schedule on a token\n * @function updateTokenFeeSchedule\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.updateTokenFeeScheduleCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.updateTokenFeeSchedule = function updateTokenFeeSchedule(request, callback) {\n return this.rpcCall(updateTokenFeeSchedule, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"updateTokenFeeSchedule\" });\n\n /**\n * Updates the custom fee schedule on a token\n * @function updateTokenFeeSchedule\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#getTokenInfo}.\n * @memberof proto.TokenService\n * @typedef getTokenInfoCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the metadata of a token\n * @function getTokenInfo\n * @memberof proto.TokenService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.TokenService.getTokenInfoCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.getTokenInfo = function getTokenInfo(request, callback) {\n return this.rpcCall(getTokenInfo, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getTokenInfo\" });\n\n /**\n * Retrieves the metadata of a token\n * @function getTokenInfo\n * @memberof proto.TokenService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#getAccountNftInfos}.\n * @memberof proto.TokenService\n * @typedef getAccountNftInfosCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * (DEPRECATED) Gets info on NFTs N through M on the list of NFTs associated with a given account\n * @function getAccountNftInfos\n * @memberof proto.TokenService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.TokenService.getAccountNftInfosCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.getAccountNftInfos = function getAccountNftInfos(request, callback) {\n return this.rpcCall(getAccountNftInfos, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getAccountNftInfos\" });\n\n /**\n * (DEPRECATED) Gets info on NFTs N through M on the list of NFTs associated with a given account\n * @function getAccountNftInfos\n * @memberof proto.TokenService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#getTokenNftInfo}.\n * @memberof proto.TokenService\n * @typedef getTokenNftInfoCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * Retrieves the metadata of an NFT by TokenID and serial number\n * @function getTokenNftInfo\n * @memberof proto.TokenService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.TokenService.getTokenNftInfoCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.getTokenNftInfo = function getTokenNftInfo(request, callback) {\n return this.rpcCall(getTokenNftInfo, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getTokenNftInfo\" });\n\n /**\n * Retrieves the metadata of an NFT by TokenID and serial number\n * @function getTokenNftInfo\n * @memberof proto.TokenService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#getTokenNftInfos}.\n * @memberof proto.TokenService\n * @typedef getTokenNftInfosCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.Response} [response] Response\n */\n\n /**\n * (DEPRECATED) Gets info on NFTs N through M on the list of NFTs associated with a given Token of type NON_FUNGIBLE\n * @function getTokenNftInfos\n * @memberof proto.TokenService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @param {proto.TokenService.getTokenNftInfosCallback} callback Node-style callback called with the error, if any, and Response\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.getTokenNftInfos = function getTokenNftInfos(request, callback) {\n return this.rpcCall(getTokenNftInfos, $root.proto.Query, $root.proto.Response, request, callback);\n }, \"name\", { value: \"getTokenNftInfos\" });\n\n /**\n * (DEPRECATED) Gets info on NFTs N through M on the list of NFTs associated with a given Token of type NON_FUNGIBLE\n * @function getTokenNftInfos\n * @memberof proto.TokenService\n * @instance\n * @param {proto.IQuery} request Query message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#pauseToken}.\n * @memberof proto.TokenService\n * @typedef pauseTokenCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Calls pauseToken.\n * @function pauseToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.pauseTokenCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.pauseToken = function pauseToken(request, callback) {\n return this.rpcCall(pauseToken, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"pauseToken\" });\n\n /**\n * Calls pauseToken.\n * @function pauseToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n /**\n * Callback as used by {@link proto.TokenService#unpauseToken}.\n * @memberof proto.TokenService\n * @typedef unpauseTokenCallback\n * @type {function}\n * @param {Error|null} error Error, if any\n * @param {proto.TransactionResponse} [response] TransactionResponse\n */\n\n /**\n * Calls unpauseToken.\n * @function unpauseToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @param {proto.TokenService.unpauseTokenCallback} callback Node-style callback called with the error, if any, and TransactionResponse\n * @returns {undefined}\n * @variation 1\n */\n Object.defineProperty(TokenService.prototype.unpauseToken = function unpauseToken(request, callback) {\n return this.rpcCall(unpauseToken, $root.proto.Transaction, $root.proto.TransactionResponse, request, callback);\n }, \"name\", { value: \"unpauseToken\" });\n\n /**\n * Calls unpauseToken.\n * @function unpauseToken\n * @memberof proto.TokenService\n * @instance\n * @param {proto.ITransaction} request Transaction message or plain object\n * @returns {Promise} Promise\n * @variation 2\n */\n\n return TokenService;\n })();\n\n proto.SignedTransaction = (function() {\n\n /**\n * Properties of a SignedTransaction.\n * @memberof proto\n * @interface ISignedTransaction\n * @property {Uint8Array|null} [bodyBytes] TransactionBody serialized into bytes, which needs to be signed\n * @property {proto.ISignatureMap|null} [sigMap] The signatures on the body with the new format, to authorize the transaction\n */\n\n /**\n * Constructs a new SignedTransaction.\n * @memberof proto\n * @classdesc Represents a SignedTransaction.\n * @implements ISignedTransaction\n * @constructor\n * @param {proto.ISignedTransaction=} [p] Properties to set\n */\n function SignedTransaction(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * TransactionBody serialized into bytes, which needs to be signed\n * @member {Uint8Array} bodyBytes\n * @memberof proto.SignedTransaction\n * @instance\n */\n SignedTransaction.prototype.bodyBytes = $util.newBuffer([]);\n\n /**\n * The signatures on the body with the new format, to authorize the transaction\n * @member {proto.ISignatureMap|null|undefined} sigMap\n * @memberof proto.SignedTransaction\n * @instance\n */\n SignedTransaction.prototype.sigMap = null;\n\n /**\n * Creates a new SignedTransaction instance using the specified properties.\n * @function create\n * @memberof proto.SignedTransaction\n * @static\n * @param {proto.ISignedTransaction=} [properties] Properties to set\n * @returns {proto.SignedTransaction} SignedTransaction instance\n */\n SignedTransaction.create = function create(properties) {\n return new SignedTransaction(properties);\n };\n\n /**\n * Encodes the specified SignedTransaction message. Does not implicitly {@link proto.SignedTransaction.verify|verify} messages.\n * @function encode\n * @memberof proto.SignedTransaction\n * @static\n * @param {proto.ISignedTransaction} m SignedTransaction message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n SignedTransaction.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.bodyBytes != null && Object.hasOwnProperty.call(m, \"bodyBytes\"))\n w.uint32(10).bytes(m.bodyBytes);\n if (m.sigMap != null && Object.hasOwnProperty.call(m, \"sigMap\"))\n $root.proto.SignatureMap.encode(m.sigMap, w.uint32(18).fork()).ldelim();\n return w;\n };\n\n /**\n * Decodes a SignedTransaction message from the specified reader or buffer.\n * @function decode\n * @memberof proto.SignedTransaction\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.SignedTransaction} SignedTransaction\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n SignedTransaction.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.SignedTransaction();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.bodyBytes = r.bytes();\n break;\n case 2:\n m.sigMap = $root.proto.SignatureMap.decode(r, r.uint32());\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return SignedTransaction;\n })();\n\n proto.TransactionList = (function() {\n\n /**\n * Properties of a TransactionList.\n * @memberof proto\n * @interface ITransactionList\n * @property {Array.|null} [transactionList] TransactionList transactionList\n */\n\n /**\n * Constructs a new TransactionList.\n * @memberof proto\n * @classdesc A simple protobuf wrapper to store a list of transactions. This is used by\n * `Transaction.[from|to]Bytes()` in the SDKs. The reason the SDK needs a list of transactions is\n * because it holds onto a transaction per node. So if a transaction is to be submitted to nodes 3\n * and 4 the SDK Transaction type would contain a list of 2 protobuf transactions, one for node 3\n * and one for node 4.\n * @implements ITransactionList\n * @constructor\n * @param {proto.ITransactionList=} [p] Properties to set\n */\n function TransactionList(p) {\n this.transactionList = [];\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * TransactionList transactionList.\n * @member {Array.} transactionList\n * @memberof proto.TransactionList\n * @instance\n */\n TransactionList.prototype.transactionList = $util.emptyArray;\n\n /**\n * Creates a new TransactionList instance using the specified properties.\n * @function create\n * @memberof proto.TransactionList\n * @static\n * @param {proto.ITransactionList=} [properties] Properties to set\n * @returns {proto.TransactionList} TransactionList instance\n */\n TransactionList.create = function create(properties) {\n return new TransactionList(properties);\n };\n\n /**\n * Encodes the specified TransactionList message. Does not implicitly {@link proto.TransactionList.verify|verify} messages.\n * @function encode\n * @memberof proto.TransactionList\n * @static\n * @param {proto.ITransactionList} m TransactionList message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n TransactionList.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.transactionList != null && m.transactionList.length) {\n for (var i = 0; i < m.transactionList.length; ++i)\n $root.proto.Transaction.encode(m.transactionList[i], w.uint32(10).fork()).ldelim();\n }\n return w;\n };\n\n /**\n * Decodes a TransactionList message from the specified reader or buffer.\n * @function decode\n * @memberof proto.TransactionList\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.TransactionList} TransactionList\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n TransactionList.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.TransactionList();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n if (!(m.transactionList && m.transactionList.length))\n m.transactionList = [];\n m.transactionList.push($root.proto.Transaction.decode(r, r.uint32()));\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return TransactionList;\n })();\n\n proto.DoubleValue = (function() {\n\n /**\n * Properties of a DoubleValue.\n * @memberof proto\n * @interface IDoubleValue\n * @property {number|null} [value] DoubleValue value\n */\n\n /**\n * Constructs a new DoubleValue.\n * @memberof proto\n * @classdesc Represents a DoubleValue.\n * @implements IDoubleValue\n * @constructor\n * @param {proto.IDoubleValue=} [p] Properties to set\n */\n function DoubleValue(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * DoubleValue value.\n * @member {number} value\n * @memberof proto.DoubleValue\n * @instance\n */\n DoubleValue.prototype.value = 0;\n\n /**\n * Creates a new DoubleValue instance using the specified properties.\n * @function create\n * @memberof proto.DoubleValue\n * @static\n * @param {proto.IDoubleValue=} [properties] Properties to set\n * @returns {proto.DoubleValue} DoubleValue instance\n */\n DoubleValue.create = function create(properties) {\n return new DoubleValue(properties);\n };\n\n /**\n * Encodes the specified DoubleValue message. Does not implicitly {@link proto.DoubleValue.verify|verify} messages.\n * @function encode\n * @memberof proto.DoubleValue\n * @static\n * @param {proto.IDoubleValue} m DoubleValue message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n DoubleValue.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(9).double(m.value);\n return w;\n };\n\n /**\n * Decodes a DoubleValue message from the specified reader or buffer.\n * @function decode\n * @memberof proto.DoubleValue\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.DoubleValue} DoubleValue\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n DoubleValue.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.DoubleValue();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.double();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return DoubleValue;\n })();\n\n proto.FloatValue = (function() {\n\n /**\n * Properties of a FloatValue.\n * @memberof proto\n * @interface IFloatValue\n * @property {number|null} [value] FloatValue value\n */\n\n /**\n * Constructs a new FloatValue.\n * @memberof proto\n * @classdesc Represents a FloatValue.\n * @implements IFloatValue\n * @constructor\n * @param {proto.IFloatValue=} [p] Properties to set\n */\n function FloatValue(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * FloatValue value.\n * @member {number} value\n * @memberof proto.FloatValue\n * @instance\n */\n FloatValue.prototype.value = 0;\n\n /**\n * Creates a new FloatValue instance using the specified properties.\n * @function create\n * @memberof proto.FloatValue\n * @static\n * @param {proto.IFloatValue=} [properties] Properties to set\n * @returns {proto.FloatValue} FloatValue instance\n */\n FloatValue.create = function create(properties) {\n return new FloatValue(properties);\n };\n\n /**\n * Encodes the specified FloatValue message. Does not implicitly {@link proto.FloatValue.verify|verify} messages.\n * @function encode\n * @memberof proto.FloatValue\n * @static\n * @param {proto.IFloatValue} m FloatValue message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FloatValue.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(13).float(m.value);\n return w;\n };\n\n /**\n * Decodes a FloatValue message from the specified reader or buffer.\n * @function decode\n * @memberof proto.FloatValue\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.FloatValue} FloatValue\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FloatValue.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.FloatValue();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.float();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FloatValue;\n })();\n\n proto.Int64Value = (function() {\n\n /**\n * Properties of an Int64Value.\n * @memberof proto\n * @interface IInt64Value\n * @property {Long|null} [value] Int64Value value\n */\n\n /**\n * Constructs a new Int64Value.\n * @memberof proto\n * @classdesc Represents an Int64Value.\n * @implements IInt64Value\n * @constructor\n * @param {proto.IInt64Value=} [p] Properties to set\n */\n function Int64Value(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Int64Value value.\n * @member {Long} value\n * @memberof proto.Int64Value\n * @instance\n */\n Int64Value.prototype.value = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new Int64Value instance using the specified properties.\n * @function create\n * @memberof proto.Int64Value\n * @static\n * @param {proto.IInt64Value=} [properties] Properties to set\n * @returns {proto.Int64Value} Int64Value instance\n */\n Int64Value.create = function create(properties) {\n return new Int64Value(properties);\n };\n\n /**\n * Encodes the specified Int64Value message. Does not implicitly {@link proto.Int64Value.verify|verify} messages.\n * @function encode\n * @memberof proto.Int64Value\n * @static\n * @param {proto.IInt64Value} m Int64Value message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Int64Value.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(8).int64(m.value);\n return w;\n };\n\n /**\n * Decodes an Int64Value message from the specified reader or buffer.\n * @function decode\n * @memberof proto.Int64Value\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.Int64Value} Int64Value\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Int64Value.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.Int64Value();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Int64Value;\n })();\n\n proto.UInt64Value = (function() {\n\n /**\n * Properties of a UInt64Value.\n * @memberof proto\n * @interface IUInt64Value\n * @property {Long|null} [value] UInt64Value value\n */\n\n /**\n * Constructs a new UInt64Value.\n * @memberof proto\n * @classdesc Represents a UInt64Value.\n * @implements IUInt64Value\n * @constructor\n * @param {proto.IUInt64Value=} [p] Properties to set\n */\n function UInt64Value(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * UInt64Value value.\n * @member {Long} value\n * @memberof proto.UInt64Value\n * @instance\n */\n UInt64Value.prototype.value = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Creates a new UInt64Value instance using the specified properties.\n * @function create\n * @memberof proto.UInt64Value\n * @static\n * @param {proto.IUInt64Value=} [properties] Properties to set\n * @returns {proto.UInt64Value} UInt64Value instance\n */\n UInt64Value.create = function create(properties) {\n return new UInt64Value(properties);\n };\n\n /**\n * Encodes the specified UInt64Value message. Does not implicitly {@link proto.UInt64Value.verify|verify} messages.\n * @function encode\n * @memberof proto.UInt64Value\n * @static\n * @param {proto.IUInt64Value} m UInt64Value message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n UInt64Value.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(8).uint64(m.value);\n return w;\n };\n\n /**\n * Decodes a UInt64Value message from the specified reader or buffer.\n * @function decode\n * @memberof proto.UInt64Value\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.UInt64Value} UInt64Value\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n UInt64Value.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.UInt64Value();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.uint64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return UInt64Value;\n })();\n\n proto.Int32Value = (function() {\n\n /**\n * Properties of an Int32Value.\n * @memberof proto\n * @interface IInt32Value\n * @property {number|null} [value] Int32Value value\n */\n\n /**\n * Constructs a new Int32Value.\n * @memberof proto\n * @classdesc Represents an Int32Value.\n * @implements IInt32Value\n * @constructor\n * @param {proto.IInt32Value=} [p] Properties to set\n */\n function Int32Value(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Int32Value value.\n * @member {number} value\n * @memberof proto.Int32Value\n * @instance\n */\n Int32Value.prototype.value = 0;\n\n /**\n * Creates a new Int32Value instance using the specified properties.\n * @function create\n * @memberof proto.Int32Value\n * @static\n * @param {proto.IInt32Value=} [properties] Properties to set\n * @returns {proto.Int32Value} Int32Value instance\n */\n Int32Value.create = function create(properties) {\n return new Int32Value(properties);\n };\n\n /**\n * Encodes the specified Int32Value message. Does not implicitly {@link proto.Int32Value.verify|verify} messages.\n * @function encode\n * @memberof proto.Int32Value\n * @static\n * @param {proto.IInt32Value} m Int32Value message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Int32Value.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(8).int32(m.value);\n return w;\n };\n\n /**\n * Decodes an Int32Value message from the specified reader or buffer.\n * @function decode\n * @memberof proto.Int32Value\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.Int32Value} Int32Value\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Int32Value.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.Int32Value();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.int32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Int32Value;\n })();\n\n proto.UInt32Value = (function() {\n\n /**\n * Properties of a UInt32Value.\n * @memberof proto\n * @interface IUInt32Value\n * @property {number|null} [value] UInt32Value value\n */\n\n /**\n * Constructs a new UInt32Value.\n * @memberof proto\n * @classdesc Represents a UInt32Value.\n * @implements IUInt32Value\n * @constructor\n * @param {proto.IUInt32Value=} [p] Properties to set\n */\n function UInt32Value(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * UInt32Value value.\n * @member {number} value\n * @memberof proto.UInt32Value\n * @instance\n */\n UInt32Value.prototype.value = 0;\n\n /**\n * Creates a new UInt32Value instance using the specified properties.\n * @function create\n * @memberof proto.UInt32Value\n * @static\n * @param {proto.IUInt32Value=} [properties] Properties to set\n * @returns {proto.UInt32Value} UInt32Value instance\n */\n UInt32Value.create = function create(properties) {\n return new UInt32Value(properties);\n };\n\n /**\n * Encodes the specified UInt32Value message. Does not implicitly {@link proto.UInt32Value.verify|verify} messages.\n * @function encode\n * @memberof proto.UInt32Value\n * @static\n * @param {proto.IUInt32Value} m UInt32Value message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n UInt32Value.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(8).uint32(m.value);\n return w;\n };\n\n /**\n * Decodes a UInt32Value message from the specified reader or buffer.\n * @function decode\n * @memberof proto.UInt32Value\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.UInt32Value} UInt32Value\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n UInt32Value.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.UInt32Value();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.uint32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return UInt32Value;\n })();\n\n proto.BoolValue = (function() {\n\n /**\n * Properties of a BoolValue.\n * @memberof proto\n * @interface IBoolValue\n * @property {boolean|null} [value] BoolValue value\n */\n\n /**\n * Constructs a new BoolValue.\n * @memberof proto\n * @classdesc Represents a BoolValue.\n * @implements IBoolValue\n * @constructor\n * @param {proto.IBoolValue=} [p] Properties to set\n */\n function BoolValue(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * BoolValue value.\n * @member {boolean} value\n * @memberof proto.BoolValue\n * @instance\n */\n BoolValue.prototype.value = false;\n\n /**\n * Creates a new BoolValue instance using the specified properties.\n * @function create\n * @memberof proto.BoolValue\n * @static\n * @param {proto.IBoolValue=} [properties] Properties to set\n * @returns {proto.BoolValue} BoolValue instance\n */\n BoolValue.create = function create(properties) {\n return new BoolValue(properties);\n };\n\n /**\n * Encodes the specified BoolValue message. Does not implicitly {@link proto.BoolValue.verify|verify} messages.\n * @function encode\n * @memberof proto.BoolValue\n * @static\n * @param {proto.IBoolValue} m BoolValue message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n BoolValue.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(8).bool(m.value);\n return w;\n };\n\n /**\n * Decodes a BoolValue message from the specified reader or buffer.\n * @function decode\n * @memberof proto.BoolValue\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.BoolValue} BoolValue\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n BoolValue.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.BoolValue();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.bool();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return BoolValue;\n })();\n\n proto.StringValue = (function() {\n\n /**\n * Properties of a StringValue.\n * @memberof proto\n * @interface IStringValue\n * @property {string|null} [value] StringValue value\n */\n\n /**\n * Constructs a new StringValue.\n * @memberof proto\n * @classdesc Represents a StringValue.\n * @implements IStringValue\n * @constructor\n * @param {proto.IStringValue=} [p] Properties to set\n */\n function StringValue(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * StringValue value.\n * @member {string} value\n * @memberof proto.StringValue\n * @instance\n */\n StringValue.prototype.value = \"\";\n\n /**\n * Creates a new StringValue instance using the specified properties.\n * @function create\n * @memberof proto.StringValue\n * @static\n * @param {proto.IStringValue=} [properties] Properties to set\n * @returns {proto.StringValue} StringValue instance\n */\n StringValue.create = function create(properties) {\n return new StringValue(properties);\n };\n\n /**\n * Encodes the specified StringValue message. Does not implicitly {@link proto.StringValue.verify|verify} messages.\n * @function encode\n * @memberof proto.StringValue\n * @static\n * @param {proto.IStringValue} m StringValue message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n StringValue.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(10).string(m.value);\n return w;\n };\n\n /**\n * Decodes a StringValue message from the specified reader or buffer.\n * @function decode\n * @memberof proto.StringValue\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.StringValue} StringValue\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n StringValue.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.StringValue();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.string();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return StringValue;\n })();\n\n proto.BytesValue = (function() {\n\n /**\n * Properties of a BytesValue.\n * @memberof proto\n * @interface IBytesValue\n * @property {Uint8Array|null} [value] BytesValue value\n */\n\n /**\n * Constructs a new BytesValue.\n * @memberof proto\n * @classdesc Represents a BytesValue.\n * @implements IBytesValue\n * @constructor\n * @param {proto.IBytesValue=} [p] Properties to set\n */\n function BytesValue(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * BytesValue value.\n * @member {Uint8Array} value\n * @memberof proto.BytesValue\n * @instance\n */\n BytesValue.prototype.value = $util.newBuffer([]);\n\n /**\n * Creates a new BytesValue instance using the specified properties.\n * @function create\n * @memberof proto.BytesValue\n * @static\n * @param {proto.IBytesValue=} [properties] Properties to set\n * @returns {proto.BytesValue} BytesValue instance\n */\n BytesValue.create = function create(properties) {\n return new BytesValue(properties);\n };\n\n /**\n * Encodes the specified BytesValue message. Does not implicitly {@link proto.BytesValue.verify|verify} messages.\n * @function encode\n * @memberof proto.BytesValue\n * @static\n * @param {proto.IBytesValue} m BytesValue message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n BytesValue.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(10).bytes(m.value);\n return w;\n };\n\n /**\n * Decodes a BytesValue message from the specified reader or buffer.\n * @function decode\n * @memberof proto.BytesValue\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {proto.BytesValue} BytesValue\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n BytesValue.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.proto.BytesValue();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return BytesValue;\n })();\n\n return proto;\n})();\n\nexport const google = $root.google = (() => {\n\n /**\n * Namespace google.\n * @exports google\n * @namespace\n */\n const google = {};\n\n google.protobuf = (function() {\n\n /**\n * Namespace protobuf.\n * @memberof google\n * @namespace\n */\n const protobuf = {};\n\n protobuf.DoubleValue = (function() {\n\n /**\n * Properties of a DoubleValue.\n * @memberof google.protobuf\n * @interface IDoubleValue\n * @property {number|null} [value] DoubleValue value\n */\n\n /**\n * Constructs a new DoubleValue.\n * @memberof google.protobuf\n * @classdesc Represents a DoubleValue.\n * @implements IDoubleValue\n * @constructor\n * @param {google.protobuf.IDoubleValue=} [p] Properties to set\n */\n function DoubleValue(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * DoubleValue value.\n * @member {number} value\n * @memberof google.protobuf.DoubleValue\n * @instance\n */\n DoubleValue.prototype.value = 0;\n\n /**\n * Creates a new DoubleValue instance using the specified properties.\n * @function create\n * @memberof google.protobuf.DoubleValue\n * @static\n * @param {google.protobuf.IDoubleValue=} [properties] Properties to set\n * @returns {google.protobuf.DoubleValue} DoubleValue instance\n */\n DoubleValue.create = function create(properties) {\n return new DoubleValue(properties);\n };\n\n /**\n * Encodes the specified DoubleValue message. Does not implicitly {@link google.protobuf.DoubleValue.verify|verify} messages.\n * @function encode\n * @memberof google.protobuf.DoubleValue\n * @static\n * @param {google.protobuf.IDoubleValue} m DoubleValue message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n DoubleValue.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(9).double(m.value);\n return w;\n };\n\n /**\n * Decodes a DoubleValue message from the specified reader or buffer.\n * @function decode\n * @memberof google.protobuf.DoubleValue\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {google.protobuf.DoubleValue} DoubleValue\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n DoubleValue.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.google.protobuf.DoubleValue();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.double();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return DoubleValue;\n })();\n\n protobuf.FloatValue = (function() {\n\n /**\n * Properties of a FloatValue.\n * @memberof google.protobuf\n * @interface IFloatValue\n * @property {number|null} [value] FloatValue value\n */\n\n /**\n * Constructs a new FloatValue.\n * @memberof google.protobuf\n * @classdesc Represents a FloatValue.\n * @implements IFloatValue\n * @constructor\n * @param {google.protobuf.IFloatValue=} [p] Properties to set\n */\n function FloatValue(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * FloatValue value.\n * @member {number} value\n * @memberof google.protobuf.FloatValue\n * @instance\n */\n FloatValue.prototype.value = 0;\n\n /**\n * Creates a new FloatValue instance using the specified properties.\n * @function create\n * @memberof google.protobuf.FloatValue\n * @static\n * @param {google.protobuf.IFloatValue=} [properties] Properties to set\n * @returns {google.protobuf.FloatValue} FloatValue instance\n */\n FloatValue.create = function create(properties) {\n return new FloatValue(properties);\n };\n\n /**\n * Encodes the specified FloatValue message. Does not implicitly {@link google.protobuf.FloatValue.verify|verify} messages.\n * @function encode\n * @memberof google.protobuf.FloatValue\n * @static\n * @param {google.protobuf.IFloatValue} m FloatValue message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n FloatValue.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(13).float(m.value);\n return w;\n };\n\n /**\n * Decodes a FloatValue message from the specified reader or buffer.\n * @function decode\n * @memberof google.protobuf.FloatValue\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {google.protobuf.FloatValue} FloatValue\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n FloatValue.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.google.protobuf.FloatValue();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.float();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return FloatValue;\n })();\n\n protobuf.Int64Value = (function() {\n\n /**\n * Properties of an Int64Value.\n * @memberof google.protobuf\n * @interface IInt64Value\n * @property {Long|null} [value] Int64Value value\n */\n\n /**\n * Constructs a new Int64Value.\n * @memberof google.protobuf\n * @classdesc Represents an Int64Value.\n * @implements IInt64Value\n * @constructor\n * @param {google.protobuf.IInt64Value=} [p] Properties to set\n */\n function Int64Value(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Int64Value value.\n * @member {Long} value\n * @memberof google.protobuf.Int64Value\n * @instance\n */\n Int64Value.prototype.value = $util.Long ? $util.Long.fromBits(0,0,false) : 0;\n\n /**\n * Creates a new Int64Value instance using the specified properties.\n * @function create\n * @memberof google.protobuf.Int64Value\n * @static\n * @param {google.protobuf.IInt64Value=} [properties] Properties to set\n * @returns {google.protobuf.Int64Value} Int64Value instance\n */\n Int64Value.create = function create(properties) {\n return new Int64Value(properties);\n };\n\n /**\n * Encodes the specified Int64Value message. Does not implicitly {@link google.protobuf.Int64Value.verify|verify} messages.\n * @function encode\n * @memberof google.protobuf.Int64Value\n * @static\n * @param {google.protobuf.IInt64Value} m Int64Value message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Int64Value.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(8).int64(m.value);\n return w;\n };\n\n /**\n * Decodes an Int64Value message from the specified reader or buffer.\n * @function decode\n * @memberof google.protobuf.Int64Value\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {google.protobuf.Int64Value} Int64Value\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Int64Value.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.google.protobuf.Int64Value();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.int64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Int64Value;\n })();\n\n protobuf.UInt64Value = (function() {\n\n /**\n * Properties of a UInt64Value.\n * @memberof google.protobuf\n * @interface IUInt64Value\n * @property {Long|null} [value] UInt64Value value\n */\n\n /**\n * Constructs a new UInt64Value.\n * @memberof google.protobuf\n * @classdesc Represents a UInt64Value.\n * @implements IUInt64Value\n * @constructor\n * @param {google.protobuf.IUInt64Value=} [p] Properties to set\n */\n function UInt64Value(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * UInt64Value value.\n * @member {Long} value\n * @memberof google.protobuf.UInt64Value\n * @instance\n */\n UInt64Value.prototype.value = $util.Long ? $util.Long.fromBits(0,0,true) : 0;\n\n /**\n * Creates a new UInt64Value instance using the specified properties.\n * @function create\n * @memberof google.protobuf.UInt64Value\n * @static\n * @param {google.protobuf.IUInt64Value=} [properties] Properties to set\n * @returns {google.protobuf.UInt64Value} UInt64Value instance\n */\n UInt64Value.create = function create(properties) {\n return new UInt64Value(properties);\n };\n\n /**\n * Encodes the specified UInt64Value message. Does not implicitly {@link google.protobuf.UInt64Value.verify|verify} messages.\n * @function encode\n * @memberof google.protobuf.UInt64Value\n * @static\n * @param {google.protobuf.IUInt64Value} m UInt64Value message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n UInt64Value.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(8).uint64(m.value);\n return w;\n };\n\n /**\n * Decodes a UInt64Value message from the specified reader or buffer.\n * @function decode\n * @memberof google.protobuf.UInt64Value\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {google.protobuf.UInt64Value} UInt64Value\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n UInt64Value.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.google.protobuf.UInt64Value();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.uint64();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return UInt64Value;\n })();\n\n protobuf.Int32Value = (function() {\n\n /**\n * Properties of an Int32Value.\n * @memberof google.protobuf\n * @interface IInt32Value\n * @property {number|null} [value] Int32Value value\n */\n\n /**\n * Constructs a new Int32Value.\n * @memberof google.protobuf\n * @classdesc Represents an Int32Value.\n * @implements IInt32Value\n * @constructor\n * @param {google.protobuf.IInt32Value=} [p] Properties to set\n */\n function Int32Value(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * Int32Value value.\n * @member {number} value\n * @memberof google.protobuf.Int32Value\n * @instance\n */\n Int32Value.prototype.value = 0;\n\n /**\n * Creates a new Int32Value instance using the specified properties.\n * @function create\n * @memberof google.protobuf.Int32Value\n * @static\n * @param {google.protobuf.IInt32Value=} [properties] Properties to set\n * @returns {google.protobuf.Int32Value} Int32Value instance\n */\n Int32Value.create = function create(properties) {\n return new Int32Value(properties);\n };\n\n /**\n * Encodes the specified Int32Value message. Does not implicitly {@link google.protobuf.Int32Value.verify|verify} messages.\n * @function encode\n * @memberof google.protobuf.Int32Value\n * @static\n * @param {google.protobuf.IInt32Value} m Int32Value message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n Int32Value.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(8).int32(m.value);\n return w;\n };\n\n /**\n * Decodes an Int32Value message from the specified reader or buffer.\n * @function decode\n * @memberof google.protobuf.Int32Value\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {google.protobuf.Int32Value} Int32Value\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n Int32Value.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.google.protobuf.Int32Value();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.int32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return Int32Value;\n })();\n\n protobuf.UInt32Value = (function() {\n\n /**\n * Properties of a UInt32Value.\n * @memberof google.protobuf\n * @interface IUInt32Value\n * @property {number|null} [value] UInt32Value value\n */\n\n /**\n * Constructs a new UInt32Value.\n * @memberof google.protobuf\n * @classdesc Represents a UInt32Value.\n * @implements IUInt32Value\n * @constructor\n * @param {google.protobuf.IUInt32Value=} [p] Properties to set\n */\n function UInt32Value(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * UInt32Value value.\n * @member {number} value\n * @memberof google.protobuf.UInt32Value\n * @instance\n */\n UInt32Value.prototype.value = 0;\n\n /**\n * Creates a new UInt32Value instance using the specified properties.\n * @function create\n * @memberof google.protobuf.UInt32Value\n * @static\n * @param {google.protobuf.IUInt32Value=} [properties] Properties to set\n * @returns {google.protobuf.UInt32Value} UInt32Value instance\n */\n UInt32Value.create = function create(properties) {\n return new UInt32Value(properties);\n };\n\n /**\n * Encodes the specified UInt32Value message. Does not implicitly {@link google.protobuf.UInt32Value.verify|verify} messages.\n * @function encode\n * @memberof google.protobuf.UInt32Value\n * @static\n * @param {google.protobuf.IUInt32Value} m UInt32Value message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n UInt32Value.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(8).uint32(m.value);\n return w;\n };\n\n /**\n * Decodes a UInt32Value message from the specified reader or buffer.\n * @function decode\n * @memberof google.protobuf.UInt32Value\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {google.protobuf.UInt32Value} UInt32Value\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n UInt32Value.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.google.protobuf.UInt32Value();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.uint32();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return UInt32Value;\n })();\n\n protobuf.BoolValue = (function() {\n\n /**\n * Properties of a BoolValue.\n * @memberof google.protobuf\n * @interface IBoolValue\n * @property {boolean|null} [value] BoolValue value\n */\n\n /**\n * Constructs a new BoolValue.\n * @memberof google.protobuf\n * @classdesc Represents a BoolValue.\n * @implements IBoolValue\n * @constructor\n * @param {google.protobuf.IBoolValue=} [p] Properties to set\n */\n function BoolValue(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * BoolValue value.\n * @member {boolean} value\n * @memberof google.protobuf.BoolValue\n * @instance\n */\n BoolValue.prototype.value = false;\n\n /**\n * Creates a new BoolValue instance using the specified properties.\n * @function create\n * @memberof google.protobuf.BoolValue\n * @static\n * @param {google.protobuf.IBoolValue=} [properties] Properties to set\n * @returns {google.protobuf.BoolValue} BoolValue instance\n */\n BoolValue.create = function create(properties) {\n return new BoolValue(properties);\n };\n\n /**\n * Encodes the specified BoolValue message. Does not implicitly {@link google.protobuf.BoolValue.verify|verify} messages.\n * @function encode\n * @memberof google.protobuf.BoolValue\n * @static\n * @param {google.protobuf.IBoolValue} m BoolValue message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n BoolValue.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(8).bool(m.value);\n return w;\n };\n\n /**\n * Decodes a BoolValue message from the specified reader or buffer.\n * @function decode\n * @memberof google.protobuf.BoolValue\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {google.protobuf.BoolValue} BoolValue\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n BoolValue.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.google.protobuf.BoolValue();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.bool();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return BoolValue;\n })();\n\n protobuf.StringValue = (function() {\n\n /**\n * Properties of a StringValue.\n * @memberof google.protobuf\n * @interface IStringValue\n * @property {string|null} [value] StringValue value\n */\n\n /**\n * Constructs a new StringValue.\n * @memberof google.protobuf\n * @classdesc Represents a StringValue.\n * @implements IStringValue\n * @constructor\n * @param {google.protobuf.IStringValue=} [p] Properties to set\n */\n function StringValue(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * StringValue value.\n * @member {string} value\n * @memberof google.protobuf.StringValue\n * @instance\n */\n StringValue.prototype.value = \"\";\n\n /**\n * Creates a new StringValue instance using the specified properties.\n * @function create\n * @memberof google.protobuf.StringValue\n * @static\n * @param {google.protobuf.IStringValue=} [properties] Properties to set\n * @returns {google.protobuf.StringValue} StringValue instance\n */\n StringValue.create = function create(properties) {\n return new StringValue(properties);\n };\n\n /**\n * Encodes the specified StringValue message. Does not implicitly {@link google.protobuf.StringValue.verify|verify} messages.\n * @function encode\n * @memberof google.protobuf.StringValue\n * @static\n * @param {google.protobuf.IStringValue} m StringValue message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n StringValue.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(10).string(m.value);\n return w;\n };\n\n /**\n * Decodes a StringValue message from the specified reader or buffer.\n * @function decode\n * @memberof google.protobuf.StringValue\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {google.protobuf.StringValue} StringValue\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n StringValue.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.google.protobuf.StringValue();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.string();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return StringValue;\n })();\n\n protobuf.BytesValue = (function() {\n\n /**\n * Properties of a BytesValue.\n * @memberof google.protobuf\n * @interface IBytesValue\n * @property {Uint8Array|null} [value] BytesValue value\n */\n\n /**\n * Constructs a new BytesValue.\n * @memberof google.protobuf\n * @classdesc Represents a BytesValue.\n * @implements IBytesValue\n * @constructor\n * @param {google.protobuf.IBytesValue=} [p] Properties to set\n */\n function BytesValue(p) {\n if (p)\n for (var ks = Object.keys(p), i = 0; i < ks.length; ++i)\n if (p[ks[i]] != null)\n this[ks[i]] = p[ks[i]];\n }\n\n /**\n * BytesValue value.\n * @member {Uint8Array} value\n * @memberof google.protobuf.BytesValue\n * @instance\n */\n BytesValue.prototype.value = $util.newBuffer([]);\n\n /**\n * Creates a new BytesValue instance using the specified properties.\n * @function create\n * @memberof google.protobuf.BytesValue\n * @static\n * @param {google.protobuf.IBytesValue=} [properties] Properties to set\n * @returns {google.protobuf.BytesValue} BytesValue instance\n */\n BytesValue.create = function create(properties) {\n return new BytesValue(properties);\n };\n\n /**\n * Encodes the specified BytesValue message. Does not implicitly {@link google.protobuf.BytesValue.verify|verify} messages.\n * @function encode\n * @memberof google.protobuf.BytesValue\n * @static\n * @param {google.protobuf.IBytesValue} m BytesValue message or plain object to encode\n * @param {$protobuf.Writer} [w] Writer to encode to\n * @returns {$protobuf.Writer} Writer\n */\n BytesValue.encode = function encode(m, w) {\n if (!w)\n w = $Writer.create();\n if (m.value != null && Object.hasOwnProperty.call(m, \"value\"))\n w.uint32(10).bytes(m.value);\n return w;\n };\n\n /**\n * Decodes a BytesValue message from the specified reader or buffer.\n * @function decode\n * @memberof google.protobuf.BytesValue\n * @static\n * @param {$protobuf.Reader|Uint8Array} r Reader or buffer to decode from\n * @param {number} [l] Message length if known beforehand\n * @returns {google.protobuf.BytesValue} BytesValue\n * @throws {Error} If the payload is not a reader or valid buffer\n * @throws {$protobuf.util.ProtocolError} If required fields are missing\n */\n BytesValue.decode = function decode(r, l) {\n if (!(r instanceof $Reader))\n r = $Reader.create(r);\n var c = l === undefined ? r.len : r.pos + l, m = new $root.google.protobuf.BytesValue();\n while (r.pos < c) {\n var t = r.uint32();\n switch (t >>> 3) {\n case 1:\n m.value = r.bytes();\n break;\n default:\n r.skipType(t & 7);\n break;\n }\n }\n return m;\n };\n\n return BytesValue;\n })();\n\n return protobuf;\n })();\n\n return google;\n})();\n\nexport { $root as default };\n","import GrpcStatus from \"./GrpcStatus.js\";\n\n/**\n * Describes how the gRPC request failed.\n *\n * Exists in order for the Hedera JavaScript SDK to produce the same error type for gRPC errors regardless of\n * operating in node or the browser.\n *\n * Definition taken from .\n */\nexport default class GrpcServiceError extends Error {\n /**\n * @param {GrpcStatus} status\n */\n constructor(status) {\n super(`gRPC service failed with status: ${status.toString()}`);\n\n /**\n * @readonly\n */\n this.status = status;\n\n this.name = \"GrpcServiceError\";\n\n if (typeof Error.captureStackTrace !== \"undefined\") {\n Error.captureStackTrace(this, GrpcServiceError);\n }\n }\n\n /**\n * @param {Error & { code?: number; details?: string }} obj\n * @returns {Error}\n */\n static _fromResponse(obj) {\n if (obj.code != null && obj.details != null) {\n const status = GrpcStatus._fromValue(obj.code);\n const err = new GrpcServiceError(status);\n err.message = obj.details;\n return err;\n } else {\n return /** @type {Error} */ (obj);\n }\n }\n}\n","/**\n * @typedef {import(\"./Hbar.js\").default} Hbar\n */\n\nexport default class MaxQueryPaymentExceeded extends Error {\n /**\n * @param {Hbar} queryCost\n * @param {Hbar} maxQueryPayment\n */\n constructor(queryCost, maxQueryPayment) {\n super();\n\n this.message = `query cost of ${queryCost.toString()} HBAR exceeds max set on client: ${maxQueryPayment.toString()} HBAR`;\n this.name = \"MaxQueryPaymentExceededError\";\n this.queryCost = queryCost;\n this.maxQueryPayment = maxQueryPayment;\n }\n}\n","import * as proto from \"@hashgraph/proto\";\nimport ContractId from \"./ContractId.js\";\nimport StorageChange from \"./StorageChange.js\";\n\nexport default class ContractStateChange {\n /**\n * @private\n * @param {object} props\n * @param {ContractId} props.contractId\n * @param {StorageChange[]} props.storageChanges\n */\n constructor(props) {\n this.contractId = props.contractId;\n this.storageChanges = props.storageChanges;\n\n Object.freeze(this);\n }\n\n /**\n * @internal\n * @param {proto.IContractStateChange} change\n * @returns {ContractStateChange}\n */\n static _fromProtobuf(change) {\n return new ContractStateChange({\n contractId: ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (change.contractID)\n ),\n storageChanges: (change.storageChanges != null\n ? change.storageChanges\n : []\n ).map((change) => StorageChange._fromProtobuf(change)),\n });\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {ContractStateChange}\n */\n static fromBytes(bytes) {\n return ContractStateChange._fromProtobuf(\n proto.ContractStateChange.decode(bytes)\n );\n }\n\n /**\n * @internal\n * @returns {proto.IContractStateChange} change\n */\n _toProtobuf() {\n const storageChanges = this.storageChanges.map((storageChange) =>\n storageChange._toProtobuf()\n );\n return {\n contractID: this.contractId._toProtobuf(),\n storageChanges,\n };\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.ContractStateChange.encode(this._toProtobuf()).finish();\n }\n}\n","import * as proto from \"@hashgraph/proto\";\n\nexport default class StorageChange {\n /**\n * @private\n * @param {object} props\n * @param {Uint8Array} props.slot\n * @param {Uint8Array} props.valueRead\n * @param {Uint8Array?} props.valueWritten\n */\n constructor(props) {\n this.slot = props.slot;\n this.valueRead = props.valueRead;\n this.valueWritten = props.valueWritten;\n }\n\n /**\n * @internal\n * @param {proto.IStorageChange} change\n * @returns {StorageChange}\n */\n static _fromProtobuf(change) {\n return new StorageChange({\n slot: /** @type {Uint8Array} */ (change.slot),\n valueRead: /** @type {Uint8Array} */ (change.valueRead),\n valueWritten:\n change.valueWritten != null && change.valueWritten.value != null\n ? change.valueWritten.value\n : null,\n });\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {StorageChange}\n */\n static fromBytes(bytes) {\n return StorageChange._fromProtobuf(proto.StorageChange.decode(bytes));\n }\n\n /**\n * @internal\n * @returns {proto.IStorageChange}\n */\n _toProtobuf() {\n return {\n slot: this.slot,\n valueRead: this.valueRead,\n valueWritten:\n this.valueWritten != null ? { value: this.valueWritten } : null,\n };\n }\n\n /**\n * @returns {Uint8Array}\n */\n toBytes() {\n return proto.StorageChange.encode(this._toProtobuf()).finish();\n }\n}\n","import AccountId from \"../account/AccountId.js\";\nimport TokenId from \"../token/TokenId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenAssociation} proto.ITokenAssociation\n */\n\nexport default class TokenAssociation {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.accountId]\n * @param {TokenId | string} [props.tokenId]\n */\n constructor(props = {}) {\n /**\n * @type {?AccountId}\n */\n this._accountId;\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n\n /**\n * @type {?TokenId}\n */\n this._tokenId;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId;\n return this;\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._tokenId =\n typeof tokenId === \"string\" ? TokenId.fromString(tokenId) : tokenId;\n return this;\n }\n\n /**\n * @internal\n * @abstract\n * @param {proto.ITokenAssociation} association\n * @returns {TokenAssociation}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(association) {\n return new TokenAssociation({\n accountId:\n association.accountId != null\n ? AccountId._fromProtobuf(association.accountId)\n : undefined,\n tokenId:\n association.tokenId != null\n ? TokenId._fromProtobuf(association.tokenId)\n : undefined,\n });\n }\n\n /**\n * @internal\n * @abstract\n * @returns {proto.ITokenAssociation}\n */\n _toProtobuf() {\n return {\n accountId:\n this._accountId != null\n ? this._accountId._toProtobuf()\n : undefined,\n tokenId:\n this._tokenId != null ? this._tokenId._toProtobuf() : undefined,\n };\n }\n}\n","import AccountId from \"../account/AccountId.js\";\nimport * as sha384 from \"../cryptography/sha384.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TransactionHashMap extends ObjectMap {\n constructor() {\n super((s) => AccountId.fromString(s));\n }\n\n /**\n * @param {import(\"./Transaction.js\").default} transaction\n * @returns {Promise}\n */\n static async _fromTransaction(transaction) {\n const hashes = new TransactionHashMap();\n\n for (let i = 0; i < transaction._nodeAccountIds.length; i++) {\n const nodeAccountId = transaction._nodeAccountIds.list[i];\n const tx = /** @type {proto.ITransaction} */ (\n transaction._transactions.get(i)\n );\n const hash = await sha384.digest(\n /** @type {Uint8Array} */ (tx.signedTransactionBytes)\n );\n\n hashes._set(nodeAccountId, hash);\n }\n\n return hashes;\n }\n}\n","import NodeAccountIdSignatureMap from \"./NodeAccountIdSignatureMap.js\";\nimport ObjectMap from \"../ObjectMap.js\";\nimport AccountId from \"../account/AccountId.js\";\n\n/**\n * @augments {ObjectMap}\n */\nexport default class SignatureMap extends ObjectMap {\n constructor() {\n super((s) => AccountId.fromString(s));\n }\n\n /**\n * @param {import(\"./Transaction.js\").default} transaction\n * @returns {SignatureMap}\n */\n static _fromTransaction(transaction) {\n const signatures = new SignatureMap();\n\n for (let i = 0; i < transaction._nodeAccountIds.length; i++) {\n const sigMap = transaction._signedTransactions.get(i).sigMap;\n\n if (sigMap != null) {\n signatures._set(\n transaction._nodeAccountIds.list[i],\n NodeAccountIdSignatureMap._fromTransactionSigMap(sigMap)\n );\n }\n }\n\n return signatures;\n }\n}\n","import ObjectMap from \"../ObjectMap.js\";\nimport PublicKey from \"../PublicKey.js\";\n\n/**\n * @augments {ObjectMap}\n */\nexport default class NodeAccountIdSignatureMap extends ObjectMap {\n constructor() {\n super((s) => PublicKey.fromString(s));\n }\n\n /**\n * @param {import(\"@hashgraph/proto\").ISignatureMap} sigMap\n * @returns {NodeAccountIdSignatureMap}\n */\n static _fromTransactionSigMap(sigMap) {\n const signatures = new NodeAccountIdSignatureMap();\n\n const sigPairs = sigMap.sigPair != null ? sigMap.sigPair : [];\n\n for (const sigPair of sigPairs) {\n if (sigPair.pubKeyPrefix != null) {\n if (sigPair.ed25519 != null) {\n signatures._set(\n PublicKey.fromBytesED25519(sigPair.pubKeyPrefix),\n sigPair.ed25519\n );\n } else if (sigPair.ECDSASecp256k1 != null) {\n signatures._set(\n PublicKey.fromBytesECDSA(sigPair.pubKeyPrefix),\n sigPair.ECDSASecp256k1\n );\n }\n }\n }\n\n return signatures;\n }\n}\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport AccountId from \"./AccountId.js\";\nimport TokenId from \"../token/TokenId.js\";\nimport NftId from \"../token/NftId.js\";\nimport Long from \"long\";\nimport Hbar from \"../Hbar.js\";\nimport HbarAllowance from \"./HbarAllowance.js\";\nimport TokenAllowance from \"./TokenAllowance.js\";\nimport TokenNftAllowance from \"./TokenNftAllowance.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ICryptoApproveAllowanceTransactionBody} proto.ICryptoApproveAllowanceTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"../long.js\").LongObject} LongObject\n */\n\n/**\n * Change properties for the given account.\n */\nexport default class AccountAllowanceApproveTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {HbarAllowance[]} [props.hbarApprovals]\n * @param {TokenAllowance[]} [props.tokenApprovals]\n * @param {TokenNftAllowance[]} [props.nftApprovals]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {HbarAllowance[]}\n */\n this._hbarApprovals =\n props.hbarApprovals != null ? props.hbarApprovals : [];\n\n /**\n * @private\n * @type {TokenAllowance[]}\n */\n this._tokenApprovals =\n props.tokenApprovals != null ? props.tokenApprovals : [];\n\n /**\n * @private\n * @type {TokenNftAllowance[]}\n */\n this._nftApprovals =\n props.nftApprovals != null ? props.nftApprovals : [];\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {AccountAllowanceApproveTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const allowanceApproval =\n /** @type {proto.ICryptoApproveAllowanceTransactionBody} */ (\n body.cryptoApproveAllowance\n );\n\n return Transaction._fromProtobufTransactions(\n new AccountAllowanceApproveTransaction({\n hbarApprovals: (allowanceApproval.cryptoAllowances != null\n ? allowanceApproval.cryptoAllowances\n : []\n ).map((approval) => HbarAllowance._fromProtobuf(approval)),\n tokenApprovals: (allowanceApproval.tokenAllowances != null\n ? allowanceApproval.tokenAllowances\n : []\n ).map((approval) => TokenAllowance._fromProtobuf(approval)),\n nftApprovals: (allowanceApproval.nftAllowances != null\n ? allowanceApproval.nftAllowances\n : []\n ).map((approval) => TokenNftAllowance._fromProtobuf(approval)),\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {HbarAllowance[]}\n */\n get hbarApprovals() {\n return this._hbarApprovals;\n }\n\n /**\n * @internal\n * @param {AccountId | string} spenderAccountId\n * @param {number | string | Long | LongObject | BigNumber | Hbar} amount\n * @returns {AccountAllowanceApproveTransaction}\n */\n addHbarAllowance(spenderAccountId, amount) {\n this._requireNotFrozen();\n\n this._hbarApprovals.push(\n new HbarAllowance({\n spenderAccountId:\n typeof spenderAccountId === \"string\"\n ? AccountId.fromString(spenderAccountId)\n : spenderAccountId,\n amount: amount instanceof Hbar ? amount : new Hbar(amount),\n ownerAccountId: null,\n })\n );\n\n return this;\n }\n\n /**\n * @returns {TokenAllowance[]}\n */\n get tokenApprovals() {\n return this._tokenApprovals;\n }\n\n /**\n * @internal\n * @param {TokenId | string} tokenId\n * @param {AccountId | string} spenderAccountId\n * @param {Long | number} amount\n * @returns {AccountAllowanceApproveTransaction}\n */\n addTokenAllowance(tokenId, spenderAccountId, amount) {\n this._requireNotFrozen();\n\n this._tokenApprovals.push(\n new TokenAllowance({\n tokenId:\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId,\n spenderAccountId:\n typeof spenderAccountId === \"string\"\n ? AccountId.fromString(spenderAccountId)\n : spenderAccountId,\n amount:\n typeof amount === \"number\"\n ? Long.fromNumber(amount)\n : amount,\n ownerAccountId: null,\n })\n );\n\n return this;\n }\n\n /**\n * @internal\n * @param {NftId | string} nftId\n * @param {AccountId | string} spenderAccountId\n * @returns {AccountAllowanceApproveTransaction}\n */\n addTokenNftAllowance(nftId, spenderAccountId) {\n this._requireNotFrozen();\n\n const id = typeof nftId === \"string\" ? NftId.fromString(nftId) : nftId;\n const spender =\n typeof spenderAccountId === \"string\"\n ? AccountId.fromString(spenderAccountId)\n : spenderAccountId;\n let found = false;\n\n for (const allowance of this._nftApprovals) {\n if (\n allowance.tokenId.compare(id.tokenId) === 0 &&\n allowance.spenderAccountId.compare(spender) === 0\n ) {\n if (allowance.serialNumbers != null) {\n allowance.serialNumbers.push(id.serial);\n }\n found = true;\n break;\n }\n }\n\n if (!found) {\n this._nftApprovals.push(\n new TokenNftAllowance({\n tokenId: id.tokenId,\n spenderAccountId:\n typeof spenderAccountId === \"string\"\n ? AccountId.fromString(spenderAccountId)\n : spenderAccountId,\n serialNumbers: [id.serial],\n ownerAccountId: null,\n })\n );\n }\n return this;\n }\n\n /**\n * @internal\n * @param {TokenId | string} tokenId\n * @param {AccountId | string} spenderAccountId\n * @returns {AccountAllowanceApproveTransaction}\n */\n addAllTokenNftAllowance(tokenId, spenderAccountId) {\n this._requireNotFrozen();\n\n this._nftApprovals.push(\n new TokenNftAllowance({\n tokenId:\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId,\n spenderAccountId:\n typeof spenderAccountId === \"string\"\n ? AccountId.fromString(spenderAccountId)\n : spenderAccountId,\n serialNumbers: null,\n ownerAccountId: null,\n })\n );\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n this._hbarApprovals.map((approval) =>\n approval.spenderAccountId.validateChecksum(client)\n );\n this._tokenApprovals.map((approval) => {\n approval.tokenId.validateChecksum(client);\n approval.spenderAccountId.validateChecksum(client);\n });\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.approveAllowances(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"cryptoApproveAllowance\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ICryptoApproveAllowanceTransactionBody}\n */\n _makeTransactionData() {\n return {\n cryptoAllowances: this._hbarApprovals.map((approval) =>\n approval._toProtobuf()\n ),\n tokenAllowances: this._tokenApprovals.map((approval) =>\n approval._toProtobuf()\n ),\n nftAllowances: this._nftApprovals.map((approval) =>\n approval._toProtobuf()\n ),\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"cryptoApproveAllowance\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n AccountAllowanceApproveTransaction._fromProtobuf\n);\n","import TokenId from \"../token/TokenId.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenBalance} proto.ITokenBalance\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"long\")} Long\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenBalanceMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n}\n","import TokenId from \"../token/TokenId.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenBalance} proto.ITokenBalance\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class TokenDecimalMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n}\n","import Hbar from \"../Hbar.js\";\nimport AccountId from \"./AccountId.js\";\nimport Transaction, {\n DEFAULT_AUTO_RENEW_PERIOD,\n DEFAULT_RECORD_THRESHOLD,\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport Duration from \"../Duration.js\";\nimport Long from \"long\";\nimport Key from \"../Key.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ICryptoCreateTransactionBody} proto.ICryptoCreateTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../Timestamp.js\").default} Timestamp\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Create a new Hedera™ crypto-currency account.\n */\nexport default class AccountCreateTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {Key} [props.key]\n * @param {number | string | Long | BigNumber | Hbar} [props.initialBalance]\n * @param {boolean} [props.receiverSignatureRequired]\n * @param {AccountId} [props.proxyAccountId]\n * @param {Duration | Long | number} [props.autoRenewPeriod]\n * @param {string} [props.accountMemo]\n * @param {Long | number} [props.maxAutomaticTokenAssociations]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?Key}\n */\n this._key = null;\n\n /**\n * @private\n * @type {?Hbar}\n */\n this._initialBalance = null;\n\n /**\n * @private\n * @type {Hbar}\n */\n this._sendRecordThreshold = DEFAULT_RECORD_THRESHOLD;\n\n /**\n * @private\n * @type {Hbar}\n */\n this._receiveRecordThreshold = DEFAULT_RECORD_THRESHOLD;\n\n /**\n * @private\n * @type {boolean}\n */\n this._receiverSignatureRequired = false;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._proxyAccountId = null;\n\n /**\n * @private\n * @type {Duration}\n */\n this._autoRenewPeriod = new Duration(DEFAULT_AUTO_RENEW_PERIOD);\n\n /**\n * @private\n * @type {?string}\n */\n this._accountMemo = null;\n\n /**\n * @private\n * @type {?Long}\n */\n this._maxAutomaticTokenAssociations = null;\n\n if (props.key != null) {\n this.setKey(props.key);\n }\n\n if (props.receiverSignatureRequired != null) {\n this.setReceiverSignatureRequired(props.receiverSignatureRequired);\n }\n\n if (props.initialBalance != null) {\n this.setInitialBalance(props.initialBalance);\n }\n\n if (props.proxyAccountId != null) {\n this.setProxyAccountId(props.proxyAccountId);\n }\n\n if (props.autoRenewPeriod != null) {\n this.setAutoRenewPeriod(props.autoRenewPeriod);\n }\n\n if (props.accountMemo != null) {\n this.setAccountMemo(props.accountMemo);\n }\n\n if (props.maxAutomaticTokenAssociations != null) {\n this.setMaxAutomaticTokenAssociations(\n props.maxAutomaticTokenAssociations\n );\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {AccountCreateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const create = /** @type {proto.ICryptoCreateTransactionBody} */ (\n body.cryptoCreateAccount\n );\n\n return Transaction._fromProtobufTransactions(\n new AccountCreateTransaction({\n key:\n create.key != null\n ? Key._fromProtobufKey(create.key)\n : undefined,\n initialBalance:\n create.initialBalance != null\n ? create.initialBalance\n : undefined,\n receiverSignatureRequired:\n create.receiverSigRequired != null\n ? create.receiverSigRequired\n : undefined,\n proxyAccountId:\n create.proxyAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n create.proxyAccountID\n )\n )\n : undefined,\n autoRenewPeriod:\n create.autoRenewPeriod != null\n ? create.autoRenewPeriod.seconds != null\n ? create.autoRenewPeriod.seconds\n : undefined\n : undefined,\n accountMemo: create.memo != null ? create.memo : undefined,\n maxAutomaticTokenAssociations:\n create.maxAutomaticTokenAssociations != null\n ? create.maxAutomaticTokenAssociations\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?Key}\n */\n get key() {\n return this._key;\n }\n\n /**\n * Set the key for this account.\n *\n * This is the key that must sign each transfer out of the account.\n *\n * If `receiverSignatureRequired` is true, then the key must also sign\n * any transfer into the account.\n *\n * @param {Key} key\n * @returns {this}\n */\n setKey(key) {\n this._requireNotFrozen();\n this._key = key;\n\n return this;\n }\n\n /**\n * @returns {?Hbar}\n */\n get initialBalance() {\n return this._initialBalance;\n }\n\n /**\n * Set the initial amount to transfer into this account.\n *\n * @param {number | string | Long | BigNumber | Hbar} initialBalance\n * @returns {this}\n */\n setInitialBalance(initialBalance) {\n this._requireNotFrozen();\n this._initialBalance =\n initialBalance instanceof Hbar\n ? initialBalance\n : new Hbar(initialBalance);\n\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get receiverSignatureRequired() {\n return this._receiverSignatureRequired;\n }\n\n /**\n * Set to true to require the key for this account to sign any transfer of\n * hbars to this account.\n *\n * @param {boolean} receiverSignatureRequired\n * @returns {this}\n */\n setReceiverSignatureRequired(receiverSignatureRequired) {\n this._requireNotFrozen();\n this._receiverSignatureRequired = receiverSignatureRequired;\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get proxyAccountId() {\n return this._proxyAccountId;\n }\n\n /**\n * Set the ID of the account to which this account is proxy staked.\n *\n * @param {AccountId} proxyAccountId\n * @returns {this}\n */\n setProxyAccountId(proxyAccountId) {\n this._requireNotFrozen();\n this._proxyAccountId = proxyAccountId;\n\n return this;\n }\n\n /**\n * @returns {Duration}\n */\n get autoRenewPeriod() {\n return this._autoRenewPeriod;\n }\n\n /**\n * Set the auto renew period for this account.\n *\n * @param {Duration | Long | number} autoRenewPeriod\n * @returns {this}\n */\n setAutoRenewPeriod(autoRenewPeriod) {\n this._requireNotFrozen();\n this._autoRenewPeriod =\n autoRenewPeriod instanceof Duration\n ? autoRenewPeriod\n : new Duration(autoRenewPeriod);\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get accountMemo() {\n return this._accountMemo;\n }\n\n /**\n * @param {string} memo\n * @returns {this}\n */\n setAccountMemo(memo) {\n this._requireNotFrozen();\n this._accountMemo = memo;\n\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get maxAutomaticTokenAssociations() {\n return this._maxAutomaticTokenAssociations;\n }\n\n /**\n * @param {Long | number} maxAutomaticTokenAssociations\n * @returns {this}\n */\n setMaxAutomaticTokenAssociations(maxAutomaticTokenAssociations) {\n this._requireNotFrozen();\n this._maxAutomaticTokenAssociations =\n typeof maxAutomaticTokenAssociations === \"number\"\n ? Long.fromNumber(maxAutomaticTokenAssociations)\n : maxAutomaticTokenAssociations;\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._proxyAccountId != null) {\n this._proxyAccountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.createAccount(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"cryptoCreateAccount\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ICryptoCreateTransactionBody}\n */\n _makeTransactionData() {\n return {\n key: this._key != null ? this._key._toProtobufKey() : null,\n initialBalance:\n this._initialBalance != null\n ? this._initialBalance.toTinybars()\n : null,\n autoRenewPeriod: this._autoRenewPeriod._toProtobuf(),\n proxyAccountID:\n this._proxyAccountId != null\n ? this._proxyAccountId._toProtobuf()\n : null,\n receiveRecordThreshold: this._receiveRecordThreshold.toTinybars(),\n sendRecordThreshold: this._sendRecordThreshold.toTinybars(),\n receiverSigRequired: this._receiverSignatureRequired,\n memo: this._accountMemo,\n maxAutomaticTokenAssociations:\n this._maxAutomaticTokenAssociations != null\n ? this._maxAutomaticTokenAssociations.toInt()\n : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"cryptoCreateAccount\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n AccountCreateTransaction._fromProtobuf\n);\n","import AccountId from \"./AccountId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ICryptoDeleteTransactionBody} proto.ICryptoDeleteTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Marks an account as deleted, moving all its current hbars to another account.\n *\n * It will remain in the ledger, marked as deleted, until it expires.\n * Transfers into it a deleted account fail. But a deleted account can still have its\n * expiration extended in the normal way.\n */\nexport default class AccountDeleteTransaction extends Transaction {\n /**\n * @param {object} props\n * @param {AccountId} [props.accountId]\n * @param {AccountId} [props.transferAccountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._transferAccountId = null;\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n\n if (props.transferAccountId != null) {\n this.setTransferAccountId(props.transferAccountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {AccountDeleteTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const accountDelete =\n /** @type {proto.ICryptoDeleteTransactionBody} */ (\n body.cryptoDelete\n );\n\n return Transaction._fromProtobufTransactions(\n new AccountDeleteTransaction({\n accountId:\n accountDelete.deleteAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n accountDelete.deleteAccountID\n )\n )\n : undefined,\n transferAccountId:\n accountDelete.transferAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n accountDelete.transferAccountID\n )\n )\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * Set the account ID which is being deleted in this transaction.\n *\n * @param {AccountId | string} accountId\n * @returns {AccountDeleteTransaction}\n */\n setAccountId(accountId) {\n this._requireNotFrozen();\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get transferAccountId() {\n return this._transferAccountId;\n }\n\n /**\n * Set the account ID which will receive all remaining hbars.\n *\n * @param {AccountId | string} transferAccountId\n * @returns {AccountDeleteTransaction}\n */\n setTransferAccountId(transferAccountId) {\n this._requireNotFrozen();\n this._transferAccountId =\n typeof transferAccountId === \"string\"\n ? AccountId.fromString(transferAccountId)\n : transferAccountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n\n if (this._transferAccountId != null) {\n this._transferAccountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.cryptoDelete(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"cryptoDelete\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ICryptoDeleteTransactionBody}\n */\n _makeTransactionData() {\n return {\n deleteAccountID:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n transferAccountID:\n this._transferAccountId != null\n ? this._transferAccountId._toProtobuf()\n : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"cryptoDelete\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n AccountDeleteTransaction._fromProtobuf\n);\n","import Long from \"long\";\nimport TokenId from \"../token/TokenId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenRelationship} proto.ITokenRelationship\n * @typedef {import(\"@hashgraph/proto\").TokenKycStatus} proto.TokenKycStatus\n * @typedef {import(\"@hashgraph/proto\").TokenFreezeStatus} proto.TokenFreezeStatus\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * Token's information related to the given Account\n */\nexport default class TokenRelationship {\n /**\n * @param {object} props\n * @param {TokenId} props.tokenId\n * @param {string} props.symbol\n * @param {Long} props.balance\n * @param {boolean | null} props.isKycGranted\n * @param {boolean | null} props.isFrozen\n * @param {boolean | null} props.automaticAssociation\n */\n constructor(props) {\n /**\n * The ID of the token\n *\n * @readonly\n */\n this.tokenId = props.tokenId;\n\n /**\n * The Symbol of the token\n *\n * @readonly\n */\n this.symbol = props.symbol;\n\n /**\n * The balance that the Account holds in the smallest denomination\n *\n * @readonly\n */\n this.balance = props.balance;\n\n /**\n * The KYC status of the account (KycNotApplicable, Granted or Revoked). If the token does\n * not have KYC key, KycNotApplicable is returned\n *\n * @readonly\n */\n this.isKycGranted = props.isKycGranted;\n\n /**\n * The Freeze status of the account (FreezeNotApplicable, Frozen or Unfrozen). If the token\n * does not have Freeze key, FreezeNotApplicable is returned\n *\n * @readonly\n */\n this.isFrozen = props.isFrozen;\n\n /**\n * Specifies if the relationship is created implicitly. False : explicitly associated, True :\n * implicitly associated.\n *\n * @readonly\n */\n this.automaticAssociation = props.automaticAssociation;\n\n Object.freeze(this);\n }\n\n /**\n * @param {proto.ITokenRelationship} relationship\n * @returns {TokenRelationship}\n */\n static _fromProtobuf(relationship) {\n const tokenId = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (relationship.tokenId)\n );\n const isKycGranted =\n relationship.kycStatus == null || relationship.kycStatus === 0\n ? null\n : relationship.kycStatus === 1;\n const isFrozen =\n relationship.freezeStatus == null || relationship.freezeStatus === 0\n ? null\n : relationship.freezeStatus === 1;\n\n return new TokenRelationship({\n tokenId,\n symbol: /** @type {string} */ (relationship.symbol),\n balance:\n relationship.balance != null\n ? relationship.balance instanceof Long\n ? relationship.balance\n : Long.fromValue(relationship.balance)\n : Long.ZERO,\n isKycGranted,\n isFrozen,\n automaticAssociation:\n relationship.automaticAssociation != null\n ? relationship.automaticAssociation\n : null,\n });\n }\n\n /**\n * @returns {proto.ITokenRelationship}\n */\n _toProtobuf() {\n return {\n tokenId: this.tokenId._toProtobuf(),\n symbol: this.symbol,\n balance: this.balance,\n kycStatus:\n this.isKycGranted == null ? 0 : this.isKycGranted ? 1 : 2,\n freezeStatus: this.isFrozen == null ? 0 : this.isFrozen ? 1 : 2,\n automaticAssociation: this.automaticAssociation,\n };\n }\n}\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport AccountId from \"./AccountId.js\";\nimport AccountInfo from \"./AccountInfo.js\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").IAccountInfo} proto.IAccountInfo\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetInfoQuery} proto.ICryptoGetInfoQuery\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetInfoResponse} proto.ICryptoGetInfoResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @augments {Query}\n */\nexport default class AccountInfoQuery extends Query {\n /**\n * @param {object} props\n * @param {AccountId | string} [props.accountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {AccountInfoQuery}\n */\n static _fromProtobuf(query) {\n const info = /** @type {proto.ICryptoGetInfoQuery} */ (\n query.cryptoGetInfo\n );\n\n return new AccountInfoQuery({\n accountId:\n info.accountID != null\n ? AccountId._fromProtobuf(info.accountID)\n : undefined,\n });\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * Set the account ID for which the info is being requested.\n *\n * @param {AccountId | string} accountId\n * @returns {AccountInfoQuery}\n */\n setAccountId(accountId) {\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.getAccountInfo(request);\n }\n\n /**\n * @override\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async getCost(client) {\n let cost = await super.getCost(client);\n\n if (cost.toTinybars().greaterThan(25)) {\n return cost;\n } else {\n return Hbar.fromTinybars(25);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const cryptoGetInfo = /** @type {proto.ICryptoGetInfoResponse} */ (\n response.cryptoGetInfo\n );\n return /** @type {proto.IResponseHeader} */ (cryptoGetInfo.header);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const info = /** @type {proto.ICryptoGetInfoResponse} */ (\n response.cryptoGetInfo\n );\n\n return Promise.resolve(\n AccountInfo._fromProtobuf(\n /** @type {proto.IAccountInfo} */ (info.accountInfo)\n )\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n cryptoGetInfo: {\n header,\n accountID:\n this._accountId != null\n ? this._accountId._toProtobuf()\n : null,\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"cryptoGetInfo\", AccountInfoQuery._fromProtobuf);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport AccountId from \"./AccountId.js\";\nimport TransactionRecord from \"../transaction/TransactionRecord.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetAccountRecordsQuery} proto.ICryptoGetAccountRecordsQuery\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetAccountRecordsResponse} proto.ICryptoGetAccountRecordsResponse\n * @typedef {import(\"@hashgraph/proto\").ITransactionRecord} proto.ITransactionRecord\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * Get all the records for an account for any transfers into it and out of it,\n * that were above the threshold, during the last 25 hours.\n *\n * @augments {Query}\n */\nexport default class AccountRecordsQuery extends Query {\n /**\n * @param {object} [props]\n * @param {AccountId | string} [props.accountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @type {?AccountId}\n * @private\n */\n this._accountId = null;\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {AccountRecordsQuery}\n */\n static _fromProtobuf(query) {\n const records = /** @type {proto.ICryptoGetAccountRecordsQuery} */ (\n query.cryptoGetAccountRecords\n );\n\n return new AccountRecordsQuery({\n accountId:\n records.accountID != null\n ? AccountId._fromProtobuf(records.accountID)\n : undefined,\n });\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * Set the account ID for which the records are being requested.\n *\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.getAccountRecords(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const cryptoGetAccountRecords =\n /** @type {proto.ICryptoGetAccountRecordsResponse} */ (\n response.cryptoGetAccountRecords\n );\n return /** @type {proto.IResponseHeader} */ (\n cryptoGetAccountRecords.header\n );\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const cryptoGetAccountRecords =\n /** @type {proto.ICryptoGetAccountRecordsResponse} */ (\n response.cryptoGetAccountRecords\n );\n const records = /** @type {proto.ITransactionRecord[]} */ (\n cryptoGetAccountRecords.records\n );\n\n return Promise.resolve(\n records.map((record) =>\n TransactionRecord._fromProtobuf({ transactionRecord: record })\n )\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n cryptoGetAccountRecords: {\n header,\n accountID:\n this._accountId != null\n ? this._accountId._toProtobuf()\n : null,\n },\n };\n }\n}\n\nQUERY_REGISTRY.set(\n \"cryptoGetAccountRecords\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n AccountRecordsQuery._fromProtobuf\n);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport AccountId from \"./AccountId.js\";\nimport ProxyStaker from \"./ProxyStaker.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetStakersQuery} proto.ICryptoGetStakersQuery\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetStakersResponse} proto.ICryptoGetStakersResponse\n * @typedef {import(\"@hashgraph/proto\").IAllProxyStakers} proto.IAllProxyStakers\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * Get all the accounts that are proxy staking to this account.\n * For each of them, give the amount currently staked.\n *\n * This is not yet implemented, but will be in a future version of the API.\n *\n * @augments {Query}\n */\nexport default class AccountStakersQuery extends Query {\n /**\n * @param {object} [props]\n * @param {(AccountId | string)=} props.accountId\n */\n constructor(props = {}) {\n super();\n\n /**\n * @type {?AccountId}\n * @private\n */\n this._accountId = null;\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {AccountStakersQuery}\n */\n static _fromProtobuf(query) {\n const stakers = /** @type {proto.ICryptoGetStakersQuery} */ (\n query.cryptoGetProxyStakers\n );\n\n return new AccountStakersQuery({\n accountId:\n stakers.accountID != null\n ? AccountId._fromProtobuf(stakers.accountID)\n : undefined,\n });\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * Set the account ID for which the stakers are being requested.\n *\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.getStakersByAccountID(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const cryptoGetProxyStakers =\n /** @type {proto.ICryptoGetStakersResponse} */ (\n response.cryptoGetProxyStakers\n );\n return /** @type {proto.IResponseHeader} */ (\n cryptoGetProxyStakers.header\n );\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @returns {Promise}\n */\n _mapResponse(response) {\n const cryptoGetProxyStakers =\n /** @type {proto.ICryptoGetStakersResponse} */ (\n response.cryptoGetProxyStakers\n );\n const stakers = /** @type {proto.IAllProxyStakers} */ (\n cryptoGetProxyStakers.stakers\n );\n\n return Promise.resolve(\n (stakers.proxyStaker != null ? stakers.proxyStaker : []).map(\n (staker) => ProxyStaker._fromProtobuf(staker)\n )\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n cryptoGetProxyStakers: {\n header,\n accountID:\n this._accountId != null\n ? this._accountId._toProtobuf()\n : null,\n },\n };\n }\n}\n\n// @ts-ignore\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"cryptoGetProxyStakers\", AccountStakersQuery._fromProtobuf);\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport AccountId from \"./AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Duration from \"../Duration.js\";\nimport Long from \"long\";\nimport Key from \"../Key.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport PublicKey from \"../PublicKey.js\";\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Change properties for the given account.\n */\nexport default class AccountUpdateTransaction extends Transaction {\n /**\n * @param {object} props\n * @param {AccountId} [props.accountId]\n * @param {Key} [props.key]\n * @param {boolean} [props.receiverSignatureRequired]\n * @param {AccountId} [props.proxyAccountId]\n * @param {Duration | Long | number} [props.autoRenewPeriod]\n * @param {Timestamp | Date} [props.expirationTime]\n * @param {string} [props.accountMemo]\n * @param {Long | number} [props.maxAutomaticTokenAssociations]\n * @param {Key} [props.aliasKey]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._key = null;\n\n /**\n * @private\n * @type {boolean}\n */\n this._receiverSignatureRequired = false;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._proxyAccountId = null;\n\n /**\n * @private\n * @type {?Duration}\n */\n this._autoRenewPeriod = null;\n\n /**\n * @private\n * @type {?Timestamp}\n */\n this._expirationTime = null;\n\n /**\n * @private\n * @type {?string}\n */\n this._accountMemo = null;\n\n /**\n * @private\n * @type {?Long}\n */\n this._maxAutomaticTokenAssociations = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._aliasKey = null;\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n\n if (props.key != null) {\n this.setKey(props.key);\n }\n\n if (props.receiverSignatureRequired != null) {\n this.setReceiverSignatureRequired(props.receiverSignatureRequired);\n }\n\n if (props.proxyAccountId != null) {\n this.setProxyAccountId(props.proxyAccountId);\n }\n\n if (props.autoRenewPeriod != null) {\n this.setAutoRenewPeriod(props.autoRenewPeriod);\n }\n\n if (props.expirationTime != null) {\n this.setExpirationTime(props.expirationTime);\n }\n\n if (props.accountMemo != null) {\n this.setAccountMemo(props.accountMemo);\n }\n\n if (props.maxAutomaticTokenAssociations != null) {\n this.setMaxAutomaticTokenAssociations(\n props.maxAutomaticTokenAssociations\n );\n }\n\n if (props.aliasKey != null) {\n this.setAliasKey(props.aliasKey);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {AccountUpdateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const update = /** @type {proto.ICryptoUpdateTransactionBody} */ (\n body.cryptoUpdateAccount\n );\n\n let aliasKey =\n update.alias != null && update.alias.length > 0\n ? Key._fromProtobufKey(proto.Key.decode(update.alias))\n : undefined;\n\n if (!(aliasKey instanceof PublicKey)) {\n aliasKey = undefined;\n }\n\n return Transaction._fromProtobufTransactions(\n new AccountUpdateTransaction({\n accountId:\n update.accountIDToUpdate != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n update.accountIDToUpdate\n )\n )\n : undefined,\n key:\n update.key != null\n ? Key._fromProtobufKey(update.key)\n : undefined,\n receiverSignatureRequired:\n update.receiverSigRequired != null\n ? update.receiverSigRequired\n : undefined,\n proxyAccountId:\n update.proxyAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n update.proxyAccountID\n )\n )\n : undefined,\n autoRenewPeriod:\n update.autoRenewPeriod != null\n ? update.autoRenewPeriod.seconds != null\n ? update.autoRenewPeriod.seconds\n : undefined\n : undefined,\n expirationTime:\n update.expirationTime != null\n ? Timestamp._fromProtobuf(update.expirationTime)\n : undefined,\n accountMemo:\n update.memo != null\n ? update.memo.value != null\n ? update.memo.value\n : undefined\n : undefined,\n maxAutomaticTokenAssociations:\n update.maxAutomaticTokenAssociations != null &&\n update.maxAutomaticTokenAssociations.value != null\n ? Long.fromNumber(\n update.maxAutomaticTokenAssociations.value\n )\n : undefined,\n aliasKey,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * Sets the account ID which is being updated in this transaction.\n *\n * @param {AccountId | string} accountId\n * @returns {AccountUpdateTransaction}\n */\n setAccountId(accountId) {\n this._requireNotFrozen();\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get key() {\n return this._key;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setKey(key) {\n this._requireNotFrozen();\n this._key = key;\n\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get receiverSignatureRequired() {\n return this._receiverSignatureRequired;\n }\n\n /**\n * @param {boolean} receiverSignatureRequired\n * @returns {this}\n */\n setReceiverSignatureRequired(receiverSignatureRequired) {\n this._requireNotFrozen();\n this._receiverSignatureRequired = receiverSignatureRequired;\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get proxyAccountId() {\n return this._proxyAccountId;\n }\n\n /**\n * @param {AccountId} proxyAccountId\n * @returns {this}\n */\n setProxyAccountId(proxyAccountId) {\n this._requireNotFrozen();\n this._proxyAccountId = proxyAccountId;\n\n return this;\n }\n\n /**\n * @returns {?Duration}\n */\n get autoRenewPeriod() {\n return this._autoRenewPeriod;\n }\n\n /**\n * @param {Duration | Long | number} autoRenewPeriod\n * @returns {this}\n */\n setAutoRenewPeriod(autoRenewPeriod) {\n this._requireNotFrozen();\n this._autoRenewPeriod =\n autoRenewPeriod instanceof Duration\n ? autoRenewPeriod\n : new Duration(autoRenewPeriod);\n\n return this;\n }\n\n /**\n * @returns {?Timestamp}\n */\n get expirationTime() {\n return this._expirationTime;\n }\n\n /**\n * @param {Timestamp | Date} expirationTime\n * @returns {this}\n */\n setExpirationTime(expirationTime) {\n this._requireNotFrozen();\n this._expirationTime =\n expirationTime instanceof Date\n ? Timestamp.fromDate(expirationTime)\n : expirationTime;\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get accountMemo() {\n return this._accountMemo;\n }\n\n /**\n * @param {string} memo\n * @returns {this}\n */\n setAccountMemo(memo) {\n this._requireNotFrozen();\n this._accountMemo = memo;\n\n return this;\n }\n\n /**\n * @returns {this}\n */\n clearAccountMemo() {\n this._requireNotFrozen();\n this._accountMemo = null;\n\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get maxAutomaticTokenAssociations() {\n return this._maxAutomaticTokenAssociations;\n }\n\n /**\n * @param {Long | number} maxAutomaticTokenAssociations\n * @returns {this}\n */\n setMaxAutomaticTokenAssociations(maxAutomaticTokenAssociations) {\n this._requireNotFrozen();\n this._maxAutomaticTokenAssociations =\n typeof maxAutomaticTokenAssociations === \"number\"\n ? Long.fromNumber(maxAutomaticTokenAssociations)\n : maxAutomaticTokenAssociations;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get aliasKey() {\n return this._aliasKey;\n }\n\n /**\n * @param {Key} aliasKey\n * @returns {this}\n */\n setAliasKey(aliasKey) {\n this._requireNotFrozen();\n this._aliasKey = aliasKey;\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n\n if (this._proxyAccountId != null) {\n this._proxyAccountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.updateAccount(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"cryptoUpdateAccount\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ICryptoUpdateTransactionBody}\n */\n _makeTransactionData() {\n return {\n accountIDToUpdate:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n key: this._key != null ? this._key._toProtobufKey() : null,\n expirationTime:\n this._expirationTime != null\n ? this._expirationTime._toProtobuf()\n : null,\n proxyAccountID:\n this._proxyAccountId != null\n ? this._proxyAccountId._toProtobuf()\n : null,\n autoRenewPeriod:\n this._autoRenewPeriod != null\n ? this._autoRenewPeriod._toProtobuf()\n : null,\n receiverSigRequiredWrapper:\n this._receiverSignatureRequired == null\n ? null\n : {\n value: this._receiverSignatureRequired,\n },\n memo:\n this._accountMemo != null\n ? {\n value: this._accountMemo,\n }\n : null,\n maxAutomaticTokenAssociations:\n this._maxAutomaticTokenAssociations != null\n ? { value: this._maxAutomaticTokenAssociations.toInt() }\n : null,\n alias:\n this._key != null\n ? proto.Key.encode(this._key._toProtobufKey()).finish()\n : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"cryptoUpdateAccount\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n AccountUpdateTransaction._fromProtobuf\n);\n","import NodeAddress from \"../address_book/NodeAddress.js\";\nimport NodeAddressBook from \"../address_book/NodeAddressBook.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport FileId from \"../file/FileId.js\";\nimport { RST_STREAM } from \"../Executable.js\";\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../channel/MirrorChannel.js\").default} MirrorChannel\n * @typedef {import(\"../channel/MirrorChannel.js\").MirrorError} MirrorError\n */\n\n/**\n * @template {Channel} ChannelT\n * @typedef {import(\"../client/Client.js\").default} Client\n */\n\nexport default class AddresesBookQuery {\n /**\n * @param {object} props\n * @param {FileId | string} [props.fileId]\n * @param {number} [props.limit]\n */\n constructor(props = {}) {\n /**\n * @private\n * @type {?FileId}\n */\n this._fileId = null;\n if (props.fileId != null) {\n this.setFileId(props.fileId);\n }\n\n /**\n * @private\n * @type {?number}\n */\n this._limit = null;\n if (props.limit != null) {\n this.setLimit(props.limit);\n }\n\n /**\n * @private\n * @type {(error: MirrorError | Error | null) => boolean}\n */\n this._retryHandler = (error) => {\n if (error != null) {\n if (error instanceof Error) {\n // Retry on all errors which are not `MirrorError` because they're\n // likely lower level HTTP/2 errors\n return true;\n } else {\n // Retry on `NOT_FOUND`, `RESOURCE_EXHAUSTED`, `UNAVAILABLE`, and conditionally on `INTERNAL`\n // if the messasge matches the right regex.\n switch (error.code) {\n // INTERNAL\n // eslint-disable-next-line no-fallthrough\n case 13:\n return RST_STREAM.test(error.details.toString());\n // NOT_FOUND\n // eslint-disable-next-line no-fallthrough\n case 5:\n // RESOURCE_EXHAUSTED\n // eslint-disable-next-line no-fallthrough\n case 8:\n // UNAVAILABLE\n // eslint-disable-next-line no-fallthrough\n case 14:\n return true;\n default:\n return false;\n }\n }\n }\n\n return false;\n };\n\n /** @type {NodeAddress[]} */\n this._addresses = [];\n\n /**\n * @private\n * @type {number}\n */\n this._maxAttempts = 10;\n\n /**\n * @private\n * @type {number}\n */\n this._maxBackoff = 8000;\n\n /**\n * @private\n * @type {number}\n */\n this._attempt = 0;\n }\n\n /**\n * @returns {?FileId}\n */\n get fileId() {\n return this._fileId;\n }\n\n /**\n * @param {FileId | string} fileId\n * @returns {AddresesBookQuery}\n */\n setFileId(fileId) {\n this._fileId =\n typeof fileId === \"string\"\n ? FileId.fromString(fileId)\n : fileId.clone();\n\n return this;\n }\n\n /**\n * @returns {?number}\n */\n get limit() {\n return this._limit;\n }\n\n /**\n * @param {number} limit\n * @returns {AddresesBookQuery}\n */\n setLimit(limit) {\n this._limit = limit;\n\n return this;\n }\n\n /**\n * @param {number} attempts\n */\n setMaxAttempts(attempts) {\n this._maxAttempts = attempts;\n }\n\n /**\n * @param {number} backoff\n */\n setMaxBackoff(backoff) {\n this._maxBackoff = backoff;\n }\n\n /**\n * @param {Client} client\n * @param {number=} requestTimeout\n * @returns {Promise}\n */\n execute(client, requestTimeout) {\n return new Promise((resolve, reject) => {\n this._makeServerStreamRequest(\n client,\n /** @type {(value: NodeAddressBook) => void} */ (resolve),\n reject,\n requestTimeout\n );\n });\n }\n\n /**\n * @private\n * @param {Client} client\n * @param {(value: NodeAddressBook) => void} resolve\n * @param {(error: Error) => void} reject\n * @param {number=} requestTimeout\n */\n _makeServerStreamRequest(client, resolve, reject, requestTimeout) {\n const request = proto.AddressBookQuery.encode({\n fileId: this._fileId != null ? this._fileId._toProtobuf() : null,\n limit: this._limit,\n }).finish();\n\n client._mirrorNetwork\n .getNextMirrorNode()\n .getChannel()\n .makeServerStreamRequest(\n \"NetworkService\",\n \"getNodes\",\n request,\n (data) => {\n this._addresses.push(\n NodeAddress._fromProtobuf(\n proto.NodeAddress.decode(data)\n )\n );\n\n if (this._limit != null && this._limit > 0) {\n this._limit = this._limit - 1;\n }\n },\n (error) => {\n const message =\n error instanceof Error ? error.message : error.details;\n\n if (\n this._attempt < this._maxAttempts &&\n this._retryHandler(error)\n ) {\n const delay = Math.min(\n 250 * 2 ** this._attempt,\n this._maxBackoff\n );\n console.warn(\n `Error getting nodes from mirror for file ${\n this._fileId != null\n ? this._fileId.toString()\n : \"UNKNOWN\"\n } during attempt ${\n this._attempt\n }. Waiting ${delay} ms before next attempt: ${message}`\n );\n\n this._attempt += 1;\n\n setTimeout(() => {\n this._makeServerStreamRequest(\n client,\n resolve,\n reject,\n requestTimeout\n );\n }, delay);\n } else {\n reject(new Error(\"failed to query address book\"));\n }\n },\n () => {\n resolve(\n new NodeAddressBook({ nodeAddresses: this._addresses })\n );\n }\n );\n }\n}\n","import IPv4Address from \"./IPv4Address.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IServiceEndpoint} proto.IServiceEndpoint\n */\n\n/**\n * @typedef {object} EndPointJson\n * @property {string | null} address\n * @property {string | null} port\n */\n\nexport default class EndPoint {\n /**\n * @param {object} props\n * @param {IPv4Address} [props.address]\n * @param {number} [props.port]\n */\n constructor(props = {}) {\n /**\n * @type {IPv4Address | null}\n */\n this._address = null;\n\n if (props.address != null) {\n this.setAddress(props.address);\n }\n\n /**\n * @type {number | null}\n */\n this._port = null;\n\n if (props.port != null) {\n this.setPort(props.port);\n }\n }\n\n /**\n * @returns {?IPv4Address}\n */\n get address() {\n return this.address;\n }\n\n /**\n * @param {IPv4Address} address\n * @returns {this}\n */\n setAddress(address) {\n this._address = address;\n return this;\n }\n\n /**\n * @returns {?number}\n */\n get port() {\n return this._port;\n }\n\n /**\n * @param {number} port\n * @returns {this}\n */\n setPort(port) {\n this._port = port;\n return this;\n }\n\n /**\n * @internal\n * @param {proto.IServiceEndpoint} endpoint\n * @returns {EndPoint}\n */\n static _fromProtobuf(endpoint) {\n return new EndPoint({\n address:\n endpoint.ipAddressV4 != null\n ? IPv4Address._fromProtobuf(endpoint.ipAddressV4)\n : undefined,\n port: endpoint.port != null ? endpoint.port : undefined,\n });\n }\n\n /**\n * @returns {proto.IServiceEndpoint}\n */\n _toProtobuf() {\n return {\n ipAddressV4:\n this._address != null ? this._address._toProtobuf() : null,\n port: this._port,\n };\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return JSON.stringify(this.toJSON());\n }\n\n /**\n * @returns {EndPointJson}\n */\n toJSON() {\n return {\n address: this._address != null ? this._address.toString() : null,\n port: this._port != null ? this._port.toString() : null,\n };\n }\n}\n","import IPv4AddressPart from \"./IPv4AddressPart.js\";\n\nexport default class IPv4Address {\n /**\n * @param {object} props\n * @param {IPv4AddressPart} [props.network]\n * @param {IPv4AddressPart} [props.host]\n */\n constructor(props = {}) {\n /**\n * @type {IPv4AddressPart | null}\n */\n this._network = null;\n\n if (props.network != null) {\n this.setNetwork(props.network);\n }\n\n /**\n * @type {IPv4AddressPart | null}\n */\n this._host = null;\n\n if (props.host != null) {\n this.setHost(props.host);\n }\n }\n\n /**\n * @returns {?IPv4AddressPart}\n */\n get newtork() {\n return this._network;\n }\n\n /**\n * @param {IPv4AddressPart} part\n * @returns {this}\n */\n setNetwork(part) {\n this._network = part;\n return this;\n }\n\n /**\n * @returns {?IPv4AddressPart}\n */\n get host() {\n return this._host;\n }\n\n /**\n * @param {IPv4AddressPart} part\n * @returns {this}\n */\n setHost(part) {\n this._host = part;\n return this;\n }\n\n /**\n * @internal\n * @param {Uint8Array} bytes\n * @returns {IPv4Address}\n */\n static _fromProtobuf(bytes) {\n return new IPv4Address({\n network: new IPv4AddressPart().setLeft(bytes[0]).setRight(bytes[1]),\n host: new IPv4AddressPart().setLeft(bytes[2]).setRight(bytes[3]),\n });\n }\n\n /**\n * @returns {Uint8Array}\n */\n _toProtobuf() {\n return Uint8Array.of(\n this._network != null && this._network._left != null\n ? this._network._left\n : 0,\n this._network != null && this._network.right != null\n ? this._network.right\n : 0,\n this._host != null && this._host.left != null ? this._host.left : 0,\n this._host != null && this._host.right != null\n ? this._host.right\n : 0\n );\n }\n\n /**\n * @returns {string}\n */\n toString() {\n if (this._network != null && this._host != null) {\n return `${this._network.toString()}.${this._host.toString()}`;\n } else {\n return \"\";\n }\n }\n}\n","export default class IPv4AddressPart {\n /**\n * @param {object} props\n * @param {number} [props.left]\n * @param {number} [props.right]\n */\n constructor(props = {}) {\n /**\n * @type {number | null}\n */\n this._left = null;\n\n if (props.left != null) {\n this.setLeft(props.left);\n }\n\n /**\n * @type {number | null}\n */\n this._right = null;\n\n if (props.right != null) {\n this.setRight(props.right);\n }\n }\n\n /**\n * @returns {?number}\n */\n get left() {\n return this._left;\n }\n\n /**\n * @param {number} part\n * @returns {this}\n */\n setLeft(part) {\n this._left = part;\n return this;\n }\n\n /**\n * @returns {?number}\n */\n get right() {\n return this._right;\n }\n\n /**\n * @param {number} part\n * @returns {this}\n */\n setRight(part) {\n this._right = part;\n return this;\n }\n\n /**\n * @returns {string}\n */\n toString() {\n if (this._left != null && this._right != null) {\n return `${this._left.toString()}.${this._right.toString()}`;\n } else {\n return \"\";\n }\n }\n}\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport ContractId from \"./ContractId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").IContractGetBytecodeQuery} proto.IContractGetBytecodeQuery\n * @typedef {import(\"@hashgraph/proto\").IContractGetBytecodeResponse} proto.IContractGetBytecodeResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * @augments {Query}\n */\nexport default class ContractByteCodeQuery extends Query {\n /**\n * @param {object} props\n * @param {ContractId | string} [props.contractId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @type {?ContractId}\n * @private\n */\n this._contractId = null;\n if (props.contractId != null) {\n this.setContractId(props.contractId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {ContractByteCodeQuery}\n */\n static _fromProtobuf(query) {\n const bytecode = /** @type {proto.IContractGetBytecodeQuery} */ (\n query.contractGetBytecode\n );\n\n return new ContractByteCodeQuery({\n contractId:\n bytecode.contractID != null\n ? ContractId._fromProtobuf(bytecode.contractID)\n : undefined,\n });\n }\n\n /**\n * @returns {?ContractId}\n */\n get contractId() {\n return this._contractId;\n }\n\n /**\n * Set the contract ID for which the info is being requested.\n *\n * @param {ContractId | string} contractId\n * @returns {ContractByteCodeQuery}\n */\n setContractId(contractId) {\n this._contractId =\n typeof contractId === \"string\"\n ? ContractId.fromString(contractId)\n : contractId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._contractId != null) {\n this._contractId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.smartContract.contractGetBytecode(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const contractGetBytecodeResponse =\n /** @type {proto.IContractGetBytecodeResponse} */ (\n response.contractGetBytecodeResponse\n );\n return /** @type {proto.IResponseHeader} */ (\n contractGetBytecodeResponse.header\n );\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @returns {Promise}\n */\n _mapResponse(response) {\n const contractGetBytecodeResponse =\n /** @type {proto.IContractGetBytecodeResponse} */ (\n response.contractGetBytecodeResponse\n );\n\n return Promise.resolve(\n contractGetBytecodeResponse.bytecode != null\n ? contractGetBytecodeResponse.bytecode\n : new Uint8Array()\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n contractGetBytecode: {\n header,\n contractID:\n this._contractId != null\n ? this._contractId._toProtobuf()\n : null,\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"contractGetBytecode\", ContractByteCodeQuery._fromProtobuf);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport ContractId from \"./ContractId.js\";\nimport ContractFunctionParameters from \"./ContractFunctionParameters.js\";\nimport ContractFunctionResult from \"./ContractFunctionResult.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").IContractCallLocalQuery} proto.IContractCallLocalQuery\n * @typedef {import(\"@hashgraph/proto\").IContractCallLocalResponse} proto.IContractCallLocalResponse\n * @typedef {import(\"@hashgraph/proto\").IContractFunctionResult} proto.IContractFunctionResult\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * @typedef {object} FunctionParameters\n * @property {ContractFunctionParameters} parameters\n * @property {string} name\n */\n\n/**\n * @augments {Query}\n */\nexport default class ContractCallQuery extends Query {\n /**\n * @param {object} [props]\n * @param {ContractId | string} [props.contractId]\n * @param {number | Long} [props.gas]\n * @param {FunctionParameters | Uint8Array} [props.functionParameters]\n * @param {number | Long} [props.maxResultSize]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?ContractId}\n */\n this._contractId = null;\n if (props.contractId != null) {\n this.setContractId(props.contractId);\n }\n\n /**\n * @private\n * @type {?Long}\n */\n this._gas = null;\n if (props.gas != null) {\n this.setGas(props.gas);\n }\n\n /**\n * @private\n * @type {?Uint8Array}\n */\n this._functionParameters = null;\n if (props.functionParameters != null) {\n if (props.functionParameters instanceof Uint8Array) {\n this.setFunctionParameters(props.functionParameters);\n } else {\n this.setFunction(\n props.functionParameters.name,\n props.functionParameters.parameters\n );\n }\n }\n\n /**\n * @private\n * @type {?Long}\n */\n this._maxResultSize = null;\n if (props.maxResultSize != null) {\n this.setMaxResultSize(props.maxResultSize);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {ContractCallQuery}\n */\n static _fromProtobuf(query) {\n const call = /** @type {proto.IContractCallLocalQuery} */ (\n query.contractCallLocal\n );\n\n return new ContractCallQuery({\n contractId:\n call.contractID != null\n ? ContractId._fromProtobuf(call.contractID)\n : undefined,\n gas: call.gas != null ? call.gas : undefined,\n functionParameters:\n call.functionParameters != null\n ? call.functionParameters\n : undefined,\n maxResultSize:\n call.maxResultSize != null ? call.maxResultSize : undefined,\n });\n }\n\n /**\n * @returns {?ContractId}\n */\n get contractId() {\n return this._contractId;\n }\n\n /**\n * Set the contract ID for which the call is being requested.\n *\n * @param {ContractId | string} contractId\n * @returns {ContractCallQuery}\n */\n setContractId(contractId) {\n this._contractId =\n typeof contractId === \"string\"\n ? ContractId.fromString(contractId)\n : contractId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get gas() {\n return this._gas;\n }\n\n /**\n * @param {number | Long} gas\n * @returns {ContractCallQuery}\n */\n setGas(gas) {\n this._gas = gas instanceof Long ? gas : Long.fromValue(gas);\n return this;\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get functionParameters() {\n return this._functionParameters;\n }\n\n /**\n * @param {Uint8Array} params\n * @returns {ContractCallQuery}\n */\n setFunctionParameters(params) {\n this._functionParameters = params;\n return this;\n }\n\n /**\n * @param {string} name\n * @param {?ContractFunctionParameters} [params]\n * @returns {ContractCallQuery}\n */\n setFunction(name, params) {\n this._functionParameters = (\n params != null ? params : new ContractFunctionParameters()\n )._build(name);\n\n return this;\n }\n\n /**\n * @param {number | Long} size\n * @returns {ContractCallQuery}\n */\n setMaxResultSize(size) {\n this._maxResultSize =\n size instanceof Long ? size : Long.fromValue(size);\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._contractId != null) {\n this._contractId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.smartContract.contractCallLocalMethod(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const contractCallLocal =\n /** @type {proto.IContractCallLocalResponse} */ (\n response.contractCallLocal\n );\n return /** @type {proto.IResponseHeader} */ (contractCallLocal.header);\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @returns {Promise}\n */\n _mapResponse(response) {\n const call =\n /**\n *@type {proto.IContractCallLocalResponse}\n */\n (response.contractCallLocal);\n\n return Promise.resolve(\n ContractFunctionResult._fromProtobuf(\n /**\n * @type {proto.IContractFunctionResult}\n */\n (call.functionResult)\n )\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n contractCallLocal: {\n header,\n contractID:\n this._contractId != null\n ? this._contractId._toProtobuf()\n : null,\n gas: this._gas,\n maxResultSize: this._maxResultSize,\n functionParameters: this._functionParameters,\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"contractCallLocal\", ContractCallQuery._fromProtobuf);\n","// Originally sourced from:\n// https://github.com/MaiaVictor/eth-lib/blob/da0971f5b09964d9c8449975fa87933f0c9fef35/src/hash.js\n// - added type declarations\n// - switched to es6 module syntax\n//\n// Disable linting for entire file because it's nearly all pure JS\n// eslint-disable\n\nconst HEX_CHARS = \"0123456789abcdef\".split(\"\");\nconst KECCAK_PADDING = [1, 256, 65536, 16777216];\nconst SHIFT = [0, 8, 16, 24];\nconst RC = [\n 1, 0, 32898, 0, 32906, 2147483648, 2147516416, 2147483648, 32907, 0,\n 2147483649, 0, 2147516545, 2147483648, 32777, 2147483648, 138, 0, 136, 0,\n 2147516425, 0, 2147483658, 0, 2147516555, 0, 139, 2147483648, 32905,\n 2147483648, 32771, 2147483648, 32770, 2147483648, 128, 2147483648, 32778, 0,\n 2147483658, 2147483648, 2147516545, 2147483648, 32896, 2147483648,\n 2147483649, 0, 2147516424, 2147483648,\n];\n\n/**\n * @typedef {object} KeccakT\n * @property {number[]} blocks\n * @property {number} blockCount\n * @property {number} outputBlocks\n * @property {number[]} s\n * @property {number} start\n * @property {number} block\n * @property {boolean} reset\n * @property {number=} lastByteIndex\n */\n\n/** @type {(bits: number) => KeccakT} */\nconst Keccak = (bits) => ({\n blocks: [],\n reset: true,\n block: 0,\n start: 0,\n blockCount: (1600 - (bits << 1)) >> 5,\n outputBlocks: bits >> 5,\n // @ts-ignore\n s: ((s) => [].concat(s, s, s, s, s))([0, 0, 0, 0, 0, 0, 0, 0, 0, 0]),\n});\n\n/** @type {(state: KeccakT, message: string | number[]) => string} */\nconst update = (state, /** @type {string | number[]} */ message) => {\n var length = message.length,\n blocks = state.blocks,\n byteCount = state.blockCount << 2,\n blockCount = state.blockCount,\n outputBlocks = state.outputBlocks,\n s = state.s,\n index = 0,\n i,\n code;\n\n // update\n while (index < length) {\n if (state.reset) {\n state.reset = false;\n blocks[0] = state.block;\n for (i = 1; i < blockCount + 1; ++i) {\n blocks[i] = 0;\n }\n }\n if (typeof message !== \"string\") {\n for (i = state.start; index < length && i < byteCount; ++index) {\n blocks[i >> 2] |= message[index] << SHIFT[i++ & 3];\n }\n } else {\n for (i = state.start; index < length && i < byteCount; ++index) {\n code = message.charCodeAt(index);\n if (code < 0x80) {\n blocks[i >> 2] |= code << SHIFT[i++ & 3];\n } else if (code < 0x800) {\n blocks[i >> 2] |= (0xc0 | (code >> 6)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else if (code < 0xd800 || code >= 0xe000) {\n blocks[i >> 2] |= (0xe0 | (code >> 12)) << SHIFT[i++ & 3];\n blocks[i >> 2] |=\n (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else {\n code =\n 0x10000 +\n (((code & 0x3ff) << 10) |\n (message.charCodeAt(++index) & 0x3ff));\n blocks[i >> 2] |= (0xf0 | (code >> 18)) << SHIFT[i++ & 3];\n blocks[i >> 2] |=\n (0x80 | ((code >> 12) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |=\n (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n }\n }\n }\n state.lastByteIndex = i;\n if (i >= byteCount) {\n state.start = i - byteCount;\n state.block = blocks[blockCount];\n for (i = 0; i < blockCount; ++i) {\n s[i] ^= blocks[i];\n }\n f(s);\n state.reset = true;\n } else {\n state.start = i;\n }\n }\n\n // finalize\n i = state.lastByteIndex;\n // @ts-ignore\n blocks[i >> 2] |= KECCAK_PADDING[i & 3];\n if (state.lastByteIndex === byteCount) {\n blocks[0] = blocks[blockCount];\n for (i = 1; i < blockCount + 1; ++i) {\n blocks[i] = 0;\n }\n }\n blocks[blockCount - 1] |= 0x80000000;\n for (i = 0; i < blockCount; ++i) {\n s[i] ^= blocks[i];\n }\n f(s);\n\n // toString\n var hex = \"\";\n var block;\n var j = 0;\n i = 0;\n while (j < outputBlocks) {\n for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) {\n block = s[i];\n hex +=\n HEX_CHARS[(block >> 4) & 0x0f] +\n HEX_CHARS[block & 0x0f] +\n HEX_CHARS[(block >> 12) & 0x0f] +\n HEX_CHARS[(block >> 8) & 0x0f] +\n HEX_CHARS[(block >> 20) & 0x0f] +\n HEX_CHARS[(block >> 16) & 0x0f] +\n HEX_CHARS[(block >> 28) & 0x0f] +\n HEX_CHARS[(block >> 24) & 0x0f];\n }\n if (j % blockCount === 0) {\n f(s);\n i = 0;\n }\n }\n // @ts-ignore\n return \"0x\" + hex;\n};\n\n/** @type {(s: number[]) => void} */\nconst f = (s) => {\n var h,\n l,\n n,\n c0,\n c1,\n c2,\n c3,\n c4,\n c5,\n c6,\n c7,\n c8,\n c9,\n b0,\n b1,\n b2,\n b3,\n b4,\n b5,\n b6,\n b7,\n b8,\n b9,\n b10,\n b11,\n b12,\n b13,\n b14,\n b15,\n b16,\n b17,\n b18,\n b19,\n b20,\n b21,\n b22,\n b23,\n b24,\n b25,\n b26,\n b27,\n b28,\n b29,\n b30,\n b31,\n b32,\n b33,\n b34,\n b35,\n b36,\n b37,\n b38,\n b39,\n b40,\n b41,\n b42,\n b43,\n b44,\n b45,\n b46,\n b47,\n b48,\n b49;\n\n for (n = 0; n < 48; n += 2) {\n c0 = s[0] ^ s[10] ^ s[20] ^ s[30] ^ s[40];\n c1 = s[1] ^ s[11] ^ s[21] ^ s[31] ^ s[41];\n c2 = s[2] ^ s[12] ^ s[22] ^ s[32] ^ s[42];\n c3 = s[3] ^ s[13] ^ s[23] ^ s[33] ^ s[43];\n c4 = s[4] ^ s[14] ^ s[24] ^ s[34] ^ s[44];\n c5 = s[5] ^ s[15] ^ s[25] ^ s[35] ^ s[45];\n c6 = s[6] ^ s[16] ^ s[26] ^ s[36] ^ s[46];\n c7 = s[7] ^ s[17] ^ s[27] ^ s[37] ^ s[47];\n c8 = s[8] ^ s[18] ^ s[28] ^ s[38] ^ s[48];\n c9 = s[9] ^ s[19] ^ s[29] ^ s[39] ^ s[49];\n\n h = c8 ^ ((c2 << 1) | (c3 >>> 31));\n l = c9 ^ ((c3 << 1) | (c2 >>> 31));\n s[0] ^= h;\n s[1] ^= l;\n s[10] ^= h;\n s[11] ^= l;\n s[20] ^= h;\n s[21] ^= l;\n s[30] ^= h;\n s[31] ^= l;\n s[40] ^= h;\n s[41] ^= l;\n h = c0 ^ ((c4 << 1) | (c5 >>> 31));\n l = c1 ^ ((c5 << 1) | (c4 >>> 31));\n s[2] ^= h;\n s[3] ^= l;\n s[12] ^= h;\n s[13] ^= l;\n s[22] ^= h;\n s[23] ^= l;\n s[32] ^= h;\n s[33] ^= l;\n s[42] ^= h;\n s[43] ^= l;\n h = c2 ^ ((c6 << 1) | (c7 >>> 31));\n l = c3 ^ ((c7 << 1) | (c6 >>> 31));\n s[4] ^= h;\n s[5] ^= l;\n s[14] ^= h;\n s[15] ^= l;\n s[24] ^= h;\n s[25] ^= l;\n s[34] ^= h;\n s[35] ^= l;\n s[44] ^= h;\n s[45] ^= l;\n h = c4 ^ ((c8 << 1) | (c9 >>> 31));\n l = c5 ^ ((c9 << 1) | (c8 >>> 31));\n s[6] ^= h;\n s[7] ^= l;\n s[16] ^= h;\n s[17] ^= l;\n s[26] ^= h;\n s[27] ^= l;\n s[36] ^= h;\n s[37] ^= l;\n s[46] ^= h;\n s[47] ^= l;\n h = c6 ^ ((c0 << 1) | (c1 >>> 31));\n l = c7 ^ ((c1 << 1) | (c0 >>> 31));\n s[8] ^= h;\n s[9] ^= l;\n s[18] ^= h;\n s[19] ^= l;\n s[28] ^= h;\n s[29] ^= l;\n s[38] ^= h;\n s[39] ^= l;\n s[48] ^= h;\n s[49] ^= l;\n\n b0 = s[0];\n b1 = s[1];\n b32 = (s[11] << 4) | (s[10] >>> 28);\n b33 = (s[10] << 4) | (s[11] >>> 28);\n b14 = (s[20] << 3) | (s[21] >>> 29);\n b15 = (s[21] << 3) | (s[20] >>> 29);\n b46 = (s[31] << 9) | (s[30] >>> 23);\n b47 = (s[30] << 9) | (s[31] >>> 23);\n b28 = (s[40] << 18) | (s[41] >>> 14);\n b29 = (s[41] << 18) | (s[40] >>> 14);\n b20 = (s[2] << 1) | (s[3] >>> 31);\n b21 = (s[3] << 1) | (s[2] >>> 31);\n b2 = (s[13] << 12) | (s[12] >>> 20);\n b3 = (s[12] << 12) | (s[13] >>> 20);\n b34 = (s[22] << 10) | (s[23] >>> 22);\n b35 = (s[23] << 10) | (s[22] >>> 22);\n b16 = (s[33] << 13) | (s[32] >>> 19);\n b17 = (s[32] << 13) | (s[33] >>> 19);\n b48 = (s[42] << 2) | (s[43] >>> 30);\n b49 = (s[43] << 2) | (s[42] >>> 30);\n b40 = (s[5] << 30) | (s[4] >>> 2);\n b41 = (s[4] << 30) | (s[5] >>> 2);\n b22 = (s[14] << 6) | (s[15] >>> 26);\n b23 = (s[15] << 6) | (s[14] >>> 26);\n b4 = (s[25] << 11) | (s[24] >>> 21);\n b5 = (s[24] << 11) | (s[25] >>> 21);\n b36 = (s[34] << 15) | (s[35] >>> 17);\n b37 = (s[35] << 15) | (s[34] >>> 17);\n b18 = (s[45] << 29) | (s[44] >>> 3);\n b19 = (s[44] << 29) | (s[45] >>> 3);\n b10 = (s[6] << 28) | (s[7] >>> 4);\n b11 = (s[7] << 28) | (s[6] >>> 4);\n b42 = (s[17] << 23) | (s[16] >>> 9);\n b43 = (s[16] << 23) | (s[17] >>> 9);\n b24 = (s[26] << 25) | (s[27] >>> 7);\n b25 = (s[27] << 25) | (s[26] >>> 7);\n b6 = (s[36] << 21) | (s[37] >>> 11);\n b7 = (s[37] << 21) | (s[36] >>> 11);\n b38 = (s[47] << 24) | (s[46] >>> 8);\n b39 = (s[46] << 24) | (s[47] >>> 8);\n b30 = (s[8] << 27) | (s[9] >>> 5);\n b31 = (s[9] << 27) | (s[8] >>> 5);\n b12 = (s[18] << 20) | (s[19] >>> 12);\n b13 = (s[19] << 20) | (s[18] >>> 12);\n b44 = (s[29] << 7) | (s[28] >>> 25);\n b45 = (s[28] << 7) | (s[29] >>> 25);\n b26 = (s[38] << 8) | (s[39] >>> 24);\n b27 = (s[39] << 8) | (s[38] >>> 24);\n b8 = (s[48] << 14) | (s[49] >>> 18);\n b9 = (s[49] << 14) | (s[48] >>> 18);\n\n s[0] = b0 ^ (~b2 & b4);\n s[1] = b1 ^ (~b3 & b5);\n s[10] = b10 ^ (~b12 & b14);\n s[11] = b11 ^ (~b13 & b15);\n s[20] = b20 ^ (~b22 & b24);\n s[21] = b21 ^ (~b23 & b25);\n s[30] = b30 ^ (~b32 & b34);\n s[31] = b31 ^ (~b33 & b35);\n s[40] = b40 ^ (~b42 & b44);\n s[41] = b41 ^ (~b43 & b45);\n s[2] = b2 ^ (~b4 & b6);\n s[3] = b3 ^ (~b5 & b7);\n s[12] = b12 ^ (~b14 & b16);\n s[13] = b13 ^ (~b15 & b17);\n s[22] = b22 ^ (~b24 & b26);\n s[23] = b23 ^ (~b25 & b27);\n s[32] = b32 ^ (~b34 & b36);\n s[33] = b33 ^ (~b35 & b37);\n s[42] = b42 ^ (~b44 & b46);\n s[43] = b43 ^ (~b45 & b47);\n s[4] = b4 ^ (~b6 & b8);\n s[5] = b5 ^ (~b7 & b9);\n s[14] = b14 ^ (~b16 & b18);\n s[15] = b15 ^ (~b17 & b19);\n s[24] = b24 ^ (~b26 & b28);\n s[25] = b25 ^ (~b27 & b29);\n s[34] = b34 ^ (~b36 & b38);\n s[35] = b35 ^ (~b37 & b39);\n s[44] = b44 ^ (~b46 & b48);\n s[45] = b45 ^ (~b47 & b49);\n s[6] = b6 ^ (~b8 & b0);\n s[7] = b7 ^ (~b9 & b1);\n s[16] = b16 ^ (~b18 & b10);\n s[17] = b17 ^ (~b19 & b11);\n s[26] = b26 ^ (~b28 & b20);\n s[27] = b27 ^ (~b29 & b21);\n s[36] = b36 ^ (~b38 & b30);\n s[37] = b37 ^ (~b39 & b31);\n s[46] = b46 ^ (~b48 & b40);\n s[47] = b47 ^ (~b49 & b41);\n s[8] = b8 ^ (~b0 & b2);\n s[9] = b9 ^ (~b1 & b3);\n s[18] = b18 ^ (~b10 & b12);\n s[19] = b19 ^ (~b11 & b13);\n s[28] = b28 ^ (~b20 & b22);\n s[29] = b29 ^ (~b21 & b23);\n s[38] = b38 ^ (~b30 & b32);\n s[39] = b39 ^ (~b31 & b33);\n s[48] = b48 ^ (~b40 & b42);\n s[49] = b49 ^ (~b41 & b43);\n\n s[0] ^= RC[n];\n s[1] ^= RC[n + 1];\n }\n};\n\nconst keccak = (/** @type {number} */ bits) => (/** @type {string} */ str) => {\n var msg;\n if (str.slice(0, 2) === \"0x\") {\n msg = [];\n for (var i = 2, l = str.length; i < l; i += 2)\n msg.push(parseInt(str.slice(i, i + 2), 16));\n } else {\n msg = str;\n }\n // @ts-ignore\n return update(Keccak(bits, bits), msg);\n};\n\n/**\n * @type {(message: string) => string}\n */\nexport const keccak256 = keccak(256);\n","import Hbar from \"../Hbar.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport FileId from \"../file/FileId.js\";\nimport ContractFunctionParameters from \"./ContractFunctionParameters.js\";\nimport Transaction, {\n DEFAULT_AUTO_RENEW_PERIOD,\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport Long from \"long\";\nimport Duration from \"../Duration.js\";\nimport Key from \"../Key.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IContractCreateTransactionBody} proto.IContractCreateTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").IFileID} proto.IFileID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class ContractCreateTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {FileId | string} [props.bytecodeFileId]\n * @param {Key} [props.adminKey]\n * @param {number | Long} [props.gas]\n * @param {number | string | Long | BigNumber | Hbar} [props.initialBalance]\n * @param {AccountId | string} [props.proxyAccountId]\n * @param {Duration | Long | number} [props.autoRenewPeriod]\n * @param {Uint8Array} [props.constructorParameters]\n * @param {string} [props.contractMemo]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?FileId}\n */\n this._bytecodeFileId = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._adminKey = null;\n\n /**\n * @private\n * @type {?Long}\n */\n this._gas = null;\n\n /**\n * @private\n * @type {?Hbar}\n */\n this._initialBalance = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._proxyAccountId = null;\n\n /**\n * @private\n * @type {Duration}\n */\n this._autoRenewPeriod = new Duration(DEFAULT_AUTO_RENEW_PERIOD);\n\n /**\n * @private\n * @type {?Uint8Array}\n */\n this._constructorParameters = null;\n\n /**\n * @private\n * @type {?string}\n */\n this._contractMemo = null;\n\n this._defaultMaxTransactionFee = new Hbar(20);\n\n if (props.bytecodeFileId != null) {\n this.setBytecodeFileId(props.bytecodeFileId);\n }\n\n if (props.adminKey != null) {\n this.setAdminKey(props.adminKey);\n }\n\n if (props.gas != null) {\n this.setGas(props.gas);\n }\n\n if (props.initialBalance != null) {\n this.setInitialBalance(props.initialBalance);\n }\n\n if (props.proxyAccountId != null) {\n this.setProxyAccountId(props.proxyAccountId);\n }\n\n if (props.autoRenewPeriod != null) {\n this.setAutoRenewPeriod(props.autoRenewPeriod);\n }\n\n if (props.constructorParameters != null) {\n this.setConstructorParameters(props.constructorParameters);\n }\n\n if (props.contractMemo != null) {\n this.setContractMemo(props.contractMemo);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {ContractCreateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const create = /** @type {proto.IContractCreateTransactionBody} */ (\n body.contractCreateInstance\n );\n\n return Transaction._fromProtobufTransactions(\n new ContractCreateTransaction({\n bytecodeFileId:\n create.fileID != null\n ? FileId._fromProtobuf(\n /** @type {proto.IFileID} */ (create.fileID)\n )\n : undefined,\n adminKey:\n create.adminKey != null\n ? Key._fromProtobufKey(create.adminKey)\n : undefined,\n gas: create.gas != null ? create.gas : undefined,\n initialBalance:\n create.initialBalance != null\n ? create.initialBalance\n : undefined,\n proxyAccountId:\n create.proxyAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n create.proxyAccountID\n )\n )\n : undefined,\n autoRenewPeriod:\n create.autoRenewPeriod != null\n ? create.autoRenewPeriod.seconds != null\n ? create.autoRenewPeriod.seconds\n : undefined\n : undefined,\n constructorParameters:\n create.constructorParameters != null\n ? create.constructorParameters\n : undefined,\n contractMemo: create.memo != null ? create.memo : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?FileId}\n */\n get bytecodeFileId() {\n return this._bytecodeFileId;\n }\n\n /**\n * @param {FileId | string} bytecodeFileId\n * @returns {this}\n */\n setBytecodeFileId(bytecodeFileId) {\n this._requireNotFrozen();\n this._bytecodeFileId =\n typeof bytecodeFileId === \"string\"\n ? FileId.fromString(bytecodeFileId)\n : bytecodeFileId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get adminKey() {\n return this._adminKey;\n }\n\n /**\n * @param {Key} adminKey\n * @returns {this}\n */\n setAdminKey(adminKey) {\n this._requireNotFrozen();\n this._adminKey = adminKey;\n\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get gas() {\n return this._gas;\n }\n\n /**\n * @param {number | Long} gas\n * @returns {this}\n */\n setGas(gas) {\n this._requireNotFrozen();\n this._gas = gas instanceof Long ? gas : Long.fromValue(gas);\n\n return this;\n }\n\n /**\n * @returns {?Hbar}\n */\n get initialBalance() {\n return this._initialBalance;\n }\n\n /**\n * Set the initial amount to transfer into this contract.\n *\n * @param {number | string | Long | BigNumber | Hbar} initialBalance\n * @returns {this}\n */\n setInitialBalance(initialBalance) {\n this._requireNotFrozen();\n this._initialBalance =\n initialBalance instanceof Hbar\n ? initialBalance\n : new Hbar(initialBalance);\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get proxyAccountId() {\n return this._proxyAccountId;\n }\n\n /**\n * @param {AccountId | string} proxyAccountId\n * @returns {this}\n */\n setProxyAccountId(proxyAccountId) {\n this._requireNotFrozen();\n this._proxyAccountId =\n proxyAccountId instanceof AccountId\n ? proxyAccountId\n : AccountId.fromString(proxyAccountId);\n\n return this;\n }\n\n /**\n * @returns {Duration}\n */\n get autoRenewPeriod() {\n return this._autoRenewPeriod;\n }\n\n /**\n * @param {Duration | Long | number} autoRenewPeriod\n * @returns {this}\n */\n setAutoRenewPeriod(autoRenewPeriod) {\n this._requireNotFrozen();\n this._autoRenewPeriod =\n autoRenewPeriod instanceof Duration\n ? autoRenewPeriod\n : new Duration(autoRenewPeriod);\n\n return this;\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get constructorParameters() {\n return this._constructorParameters;\n }\n\n /**\n * @param {Uint8Array | ContractFunctionParameters} constructorParameters\n * @returns {this}\n */\n setConstructorParameters(constructorParameters) {\n this._requireNotFrozen();\n this._constructorParameters =\n constructorParameters instanceof ContractFunctionParameters\n ? constructorParameters._build()\n : constructorParameters;\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get contractMemo() {\n return this._contractMemo;\n }\n\n /**\n * @param {string} contractMemo\n * @returns {this}\n */\n setContractMemo(contractMemo) {\n this._requireNotFrozen();\n this._contractMemo = contractMemo;\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._bytecodeFileId != null) {\n this._bytecodeFileId.validateChecksum(client);\n }\n\n if (this._proxyAccountId != null) {\n this._proxyAccountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.smartContract.createContract(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"contractCreateInstance\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IContractCreateTransactionBody}\n */\n _makeTransactionData() {\n return {\n fileID:\n this._bytecodeFileId != null\n ? this._bytecodeFileId._toProtobuf()\n : null,\n adminKey:\n this._adminKey != null ? this._adminKey._toProtobufKey() : null,\n gas: this._gas,\n initialBalance:\n this._initialBalance != null\n ? this._initialBalance.toTinybars()\n : null,\n proxyAccountID:\n this._proxyAccountId != null\n ? this._proxyAccountId._toProtobuf()\n : null,\n autoRenewPeriod: this._autoRenewPeriod._toProtobuf(),\n constructorParameters: this._constructorParameters,\n memo: this._contractMemo,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"contractCreateInstance\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n ContractCreateTransaction._fromProtobuf\n);\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport ContractId from \"./ContractId.js\";\nimport AccountId from \"../account/AccountId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IContractDeleteTransactionBody} proto.IContractDeleteTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class ContractDeleteTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {ContractId | string} [props.contractId]\n * @param {ContractId | string} [props.transferContractId]\n * @param {AccountId | string} [props.transferAccountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?ContractId}\n */\n this._contractId = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._transferAccountId = null;\n\n /**\n * @private\n * @type {?ContractId}\n */\n this._transferContractId = null;\n\n if (props.contractId != null) {\n this.setContractId(props.contractId);\n }\n\n if (props.transferAccountId != null) {\n this.setTransferAccountId(props.transferAccountId);\n }\n\n if (props.transferContractId != null) {\n this.setTransferContractId(props.transferContractId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {ContractDeleteTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const contractDelete =\n /** @type {proto.IContractDeleteTransactionBody} */ (\n body.contractDeleteInstance\n );\n\n return Transaction._fromProtobufTransactions(\n new ContractDeleteTransaction({\n contractId:\n contractDelete.contractID != null\n ? ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (\n contractDelete.contractID\n )\n )\n : undefined,\n transferAccountId:\n contractDelete.transferAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n contractDelete.transferAccountID\n )\n )\n : undefined,\n transferContractId:\n contractDelete.transferContractID != null\n ? ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (\n contractDelete.transferContractID\n )\n )\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?ContractId}\n */\n get contractId() {\n return this._contractId;\n }\n\n /**\n * Sets the contract ID which is being deleted in this transaction.\n *\n * @param {ContractId | string} contractId\n * @returns {ContractDeleteTransaction}\n */\n setContractId(contractId) {\n this._requireNotFrozen();\n this._contractId =\n typeof contractId === \"string\"\n ? ContractId.fromString(contractId)\n : contractId.clone();\n\n return this;\n }\n\n /**\n * @returns {?ContractId}\n */\n get transferContractId() {\n return this._transferContractId;\n }\n\n /**\n * Sets the contract ID which will receive all remaining hbars.\n *\n * @param {ContractId | string} transferContractId\n * @returns {ContractDeleteTransaction}\n */\n setTransferContractId(transferContractId) {\n this._requireNotFrozen();\n this._transferContractId =\n transferContractId instanceof ContractId\n ? transferContractId\n : ContractId.fromString(transferContractId);\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get transferAccountId() {\n return this._transferAccountId;\n }\n\n /**\n * Sets the account ID which will receive all remaining hbars.\n *\n * @param {AccountId | string} transferAccountId\n * @returns {ContractDeleteTransaction}\n */\n setTransferAccountId(transferAccountId) {\n this._requireNotFrozen();\n this._transferAccountId =\n transferAccountId instanceof AccountId\n ? transferAccountId\n : AccountId.fromString(transferAccountId);\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._contractId != null) {\n this._contractId.validateChecksum(client);\n }\n\n if (this._transferAccountId != null) {\n this._transferAccountId.validateChecksum(client);\n }\n\n if (this._transferContractId != null) {\n this._transferContractId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.smartContract.deleteContract(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"contractDeleteInstance\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IContractDeleteTransactionBody}\n */\n _makeTransactionData() {\n return {\n contractID:\n this._contractId != null\n ? this._contractId._toProtobuf()\n : null,\n transferAccountID: this._transferAccountId\n ? this._transferAccountId._toProtobuf()\n : null,\n transferContractID:\n this._transferContractId != null\n ? this._transferContractId._toProtobuf()\n : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"contractDeleteInstance\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n ContractDeleteTransaction._fromProtobuf\n);\n","import Hbar from \"../Hbar.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport ContractId from \"./ContractId.js\";\nimport ContractFunctionParameters from \"./ContractFunctionParameters.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IContractCallTransactionBody} proto.IContractCallTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n * @typedef {import(\"@hashgraph/proto\").IFileID} proto.IFileID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * @typedef {object} FunctionParameters\n * @property {string} name\n * @property {ContractFunctionParameters} parameters\n */\n\nexport default class ContractExecuteTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {ContractId | string} [props.contractId]\n * @param {number | Long} [props.gas]\n * @param {number | string | Long | BigNumber | Hbar} [props.amount]\n * @param {Uint8Array} [props.functionParameters]\n * @param {FunctionParameters} [props.function]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?ContractId}\n */\n this._contractId = null;\n\n /**\n * @private\n * @type {?Long}\n */\n this._gas = null;\n\n /**\n * @private\n * @type {?Hbar}\n */\n this._amount = null;\n\n /**\n * @private\n * @type {?Uint8Array}\n */\n this._functionParameters = null;\n\n if (props.contractId != null) {\n this.setContractId(props.contractId);\n }\n\n if (props.gas != null) {\n this.setGas(props.gas);\n }\n\n if (props.amount != null) {\n this.setPayableAmount(props.amount);\n }\n\n if (props.functionParameters != null) {\n this.setFunctionParameters(props.functionParameters);\n } else if (props.function != null) {\n this.setFunction(props.function.name, props.function.parameters);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {ContractExecuteTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const call = /** @type {proto.IContractCallTransactionBody} */ (\n body.contractCall\n );\n\n return Transaction._fromProtobufTransactions(\n new ContractExecuteTransaction({\n contractId:\n call.contractID != null\n ? ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (call.contractID)\n )\n : undefined,\n gas: call.gas != null ? call.gas : undefined,\n amount: call.amount ? call.amount : undefined,\n functionParameters:\n call.functionParameters != null\n ? call.functionParameters\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?ContractId}\n */\n get contractId() {\n return this._contractId;\n }\n\n /**\n * Sets the contract ID which is being executed in this transaction.\n *\n * @param {ContractId | string} contractId\n * @returns {ContractExecuteTransaction}\n */\n setContractId(contractId) {\n this._requireNotFrozen();\n this._contractId =\n typeof contractId === \"string\"\n ? ContractId.fromString(contractId)\n : contractId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get gas() {\n return this._gas;\n }\n\n /**\n * Sets the contract ID which is being executed in this transaction.\n *\n * @param {number | Long} gas\n * @returns {ContractExecuteTransaction}\n */\n setGas(gas) {\n this._requireNotFrozen();\n this._gas = gas instanceof Long ? gas : Long.fromValue(gas);\n\n return this;\n }\n\n /**\n * @returns {?Hbar}\n */\n get payableAmount() {\n return this._amount;\n }\n\n /**\n * Sets the contract ID which is being executed in this transaction.\n *\n * @param {number | string | Long | BigNumber | Hbar} amount\n * @returns {ContractExecuteTransaction}\n */\n setPayableAmount(amount) {\n this._requireNotFrozen();\n this._amount = amount instanceof Hbar ? amount : new Hbar(amount);\n\n return this;\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get functionParameters() {\n return this._functionParameters;\n }\n\n /**\n * @param {Uint8Array} functionParameters\n * @returns {this}\n */\n setFunctionParameters(functionParameters) {\n this._requireNotFrozen();\n this._functionParameters = functionParameters;\n\n return this;\n }\n\n /**\n * @param {string} name\n * @param {ContractFunctionParameters} [functionParameters]\n * @returns {this}\n */\n setFunction(name, functionParameters) {\n this._requireNotFrozen();\n this._functionParameters =\n functionParameters != null\n ? functionParameters._build(name)\n : new ContractFunctionParameters()._build(name);\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._contractId != null) {\n this._contractId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.smartContract.contractCallMethod(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"contractCall\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IContractCallTransactionBody}\n */\n _makeTransactionData() {\n return {\n contractID:\n this._contractId != null\n ? this._contractId._toProtobuf()\n : null,\n gas: this._gas,\n amount: this._amount != null ? this._amount.toTinybars() : null,\n functionParameters: this._functionParameters,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"contractCall\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n ContractExecuteTransaction._fromProtobuf\n);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport ContractId from \"./ContractId.js\";\nimport ContractInfo from \"./ContractInfo.js\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").IContractGetInfoQuery} proto.IContractGetInfoQuery\n * @typedef {import(\"@hashgraph/proto\").IContractGetInfoResponse} proto.IContractGetInfoResponse\n * @typedef {import(\"@hashgraph/proto\").IContractInfo} proto.IContractInfo\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * @augments {Query}\n */\nexport default class ContractInfoQuery extends Query {\n /**\n * @param {object} [props]\n * @param {ContractId | string} [props.contractId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @type {?ContractId}\n * @private\n */\n this._contractId = null;\n if (props.contractId != null) {\n this.setContractId(props.contractId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {ContractInfoQuery}\n */\n static _fromProtobuf(query) {\n const info = /** @type {proto.IContractGetInfoQuery} */ (\n query.contractGetInfo\n );\n\n return new ContractInfoQuery({\n contractId:\n info.contractID != null\n ? ContractId._fromProtobuf(info.contractID)\n : undefined,\n });\n }\n\n /**\n * @returns {?ContractId}\n */\n get contractId() {\n return this._contractId;\n }\n\n /**\n * Set the contract ID for which the info is being requested.\n *\n * @param {ContractId | string} contractId\n * @returns {ContractInfoQuery}\n */\n setContractId(contractId) {\n this._contractId =\n typeof contractId === \"string\"\n ? ContractId.fromString(contractId)\n : contractId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._contractId != null) {\n this._contractId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.smartContract.getContractInfo(request);\n }\n\n /**\n * @override\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async getCost(client) {\n let cost = await super.getCost(client);\n\n if (cost.toTinybars().greaterThan(25)) {\n return cost;\n } else {\n return Hbar.fromTinybars(25);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const contractGetInfo = /** @type {proto.IContractGetInfoResponse} */ (\n response.contractGetInfo\n );\n return /** @type {proto.IResponseHeader} */ (contractGetInfo.header);\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const info = /** @type {proto.IContractGetInfoResponse} */ (\n response.contractGetInfo\n );\n\n return Promise.resolve(\n ContractInfo._fromProtobuf(\n /** @type {proto.IContractInfo} */ (info.contractInfo)\n )\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n contractGetInfo: {\n header,\n contractID:\n this._contractId != null\n ? this._contractId._toProtobuf()\n : null,\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"contractGetInfo\", ContractInfoQuery._fromProtobuf);\n","import AccountId from \"../account/AccountId.js\";\nimport ContractId from \"./ContractId.js\";\nimport FileId from \"../file/FileId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport Duration from \"../Duration.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Key from \"../Key.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IContractUpdateTransactionBody} proto.IContractUpdateTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n * @typedef {import(\"@hashgraph/proto\").IFileID} proto.IFileID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class ContractUpdateTransaction extends Transaction {\n /**\n * @param {object} props\n * @param {ContractId | string} [props.contractId]\n * @param {FileId | string} [props.bytecodeFileId]\n * @param {Timestamp | Date} [props.expirationTime]\n * @param {Key} [props.adminKey]\n * @param {AccountId | string} [props.proxyAccountId]\n * @param {Duration | Long | number} [props.autoRenewPeriod]\n * @param {string} [props.contractMemo]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?ContractId}\n */\n this._contractId = null;\n\n /**\n * @private\n * @type {?Timestamp}\n */\n this._expirationTime = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._adminKey = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._proxyAccountId = null;\n\n /**\n * @private\n * @type {?Duration}\n */\n this._autoRenewPeriod = null;\n\n /**\n * @private\n * @type {?FileId}\n */\n this._bytecodeFileId = null;\n\n /**\n * @private\n * @type {?string}\n */\n this._contractMemo = null;\n\n if (props.contractId != null) {\n this.setContractId(props.contractId);\n }\n\n if (props.expirationTime != null) {\n this.setExpirationTime(props.expirationTime);\n }\n\n if (props.adminKey != null) {\n this.setAdminKey(props.adminKey);\n }\n\n if (props.proxyAccountId != null) {\n this.setProxyAccountId(props.proxyAccountId);\n }\n\n if (props.autoRenewPeriod != null) {\n this.setAutoRenewPeriod(props.autoRenewPeriod);\n }\n\n if (props.bytecodeFileId != null) {\n this.setBytecodeFileId(props.bytecodeFileId);\n }\n\n if (props.contractMemo != null) {\n this.setContractMemo(props.contractMemo);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {ContractUpdateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const update = /** @type {proto.IContractUpdateTransactionBody} */ (\n body.contractUpdateInstance\n );\n\n let autoRenewPeriod = undefined;\n if (\n update.autoRenewPeriod != null &&\n update.autoRenewPeriod.seconds != null\n ) {\n autoRenewPeriod = update.autoRenewPeriod.seconds;\n }\n\n let contractMemo = undefined;\n if (update.memoWrapper != null && update.memoWrapper.value != null) {\n contractMemo = update.memoWrapper.value;\n }\n\n return Transaction._fromProtobufTransactions(\n new ContractUpdateTransaction({\n contractId:\n update.contractID != null\n ? ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (\n update.contractID\n )\n )\n : undefined,\n bytecodeFileId:\n update.fileID != null\n ? FileId._fromProtobuf(\n /** @type {proto.IFileID} */ (update.fileID)\n )\n : undefined,\n expirationTime:\n update.expirationTime != null\n ? Timestamp._fromProtobuf(update.expirationTime)\n : undefined,\n adminKey:\n update.adminKey != null\n ? Key._fromProtobufKey(update.adminKey)\n : undefined,\n proxyAccountId:\n update.proxyAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n update.proxyAccountID\n )\n )\n : undefined,\n autoRenewPeriod,\n contractMemo,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?ContractId}\n */\n get contractId() {\n return this._contractId;\n }\n\n /**\n * Sets the contract ID which is being deleted in this transaction.\n *\n * @param {ContractId | string} contractId\n * @returns {ContractUpdateTransaction}\n */\n setContractId(contractId) {\n this._requireNotFrozen();\n this._contractId =\n typeof contractId === \"string\"\n ? ContractId.fromString(contractId)\n : contractId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Timestamp}\n */\n get expirationTime() {\n return this._expirationTime;\n }\n\n /**\n * Sets the contract ID which is being deleted in this transaction.\n *\n * @param {Timestamp | Date} expirationTime\n * @returns {ContractUpdateTransaction}\n */\n setExpirationTime(expirationTime) {\n this._requireNotFrozen();\n this._expirationTime =\n expirationTime instanceof Timestamp\n ? expirationTime\n : Timestamp.fromDate(expirationTime);\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get adminKey() {\n return this._adminKey;\n }\n\n /**\n * @param {Key} adminKey\n * @returns {this}\n */\n setAdminKey(adminKey) {\n this._requireNotFrozen();\n this._adminKey = adminKey;\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get proxyAccountId() {\n return this._proxyAccountId;\n }\n\n /**\n * @param {AccountId | string} proxyAccountId\n * @returns {this}\n */\n setProxyAccountId(proxyAccountId) {\n this._requireNotFrozen();\n this._proxyAccountId =\n typeof proxyAccountId === \"string\"\n ? AccountId.fromString(proxyAccountId)\n : proxyAccountId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Duration}\n */\n get autoRenewPeriod() {\n return this._autoRenewPeriod;\n }\n\n /**\n * @param {Duration | Long | number} autoRenewPeriod\n * @returns {this}\n */\n setAutoRenewPeriod(autoRenewPeriod) {\n this._requireNotFrozen();\n this._autoRenewPeriod =\n autoRenewPeriod instanceof Duration\n ? autoRenewPeriod\n : new Duration(autoRenewPeriod);\n\n return this;\n }\n\n /**\n * @returns {?FileId}\n */\n get bytecodeFileId() {\n return this._bytecodeFileId;\n }\n\n /**\n * @param {FileId | string} bytecodeFileId\n * @returns {this}\n */\n setBytecodeFileId(bytecodeFileId) {\n console.warn(\"Deprecated: there is no replacement\");\n this._requireNotFrozen();\n this._bytecodeFileId =\n typeof bytecodeFileId === \"string\"\n ? FileId.fromString(bytecodeFileId)\n : bytecodeFileId.clone();\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get contractMemo() {\n return this._contractMemo;\n }\n\n /**\n * @param {string} contractMemo\n * @returns {this}\n */\n setContractMemo(contractMemo) {\n this._requireNotFrozen();\n this._contractMemo = contractMemo;\n\n return this;\n }\n\n /**\n * @returns {this}\n */\n clearContractMemo() {\n this._requireNotFrozen();\n this._contractMemo = null;\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._contractId != null) {\n this._contractId.validateChecksum(client);\n }\n\n if (this._bytecodeFileId != null) {\n this._bytecodeFileId.validateChecksum(client);\n }\n\n if (this._proxyAccountId != null) {\n this._proxyAccountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.smartContract.updateContract(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"contractUpdateInstance\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IContractUpdateTransactionBody}\n */\n _makeTransactionData() {\n return {\n contractID:\n this._contractId != null\n ? this._contractId._toProtobuf()\n : null,\n expirationTime:\n this._expirationTime != null\n ? this._expirationTime._toProtobuf()\n : null,\n adminKey:\n this._adminKey != null ? this._adminKey._toProtobufKey() : null,\n proxyAccountID:\n this._proxyAccountId != null\n ? this._proxyAccountId._toProtobuf()\n : null,\n autoRenewPeriod:\n this._autoRenewPeriod != null\n ? this._autoRenewPeriod._toProtobuf()\n : null,\n fileID: this._bytecodeFileId\n ? this._bytecodeFileId._toProtobuf()\n : null,\n memoWrapper:\n this._contractMemo != null\n ? {\n value: this._contractMemo,\n }\n : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"contractUpdateInstance\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n ContractUpdateTransaction._fromProtobuf\n);\n","import CACHE from \"../Cache.js\";\nimport ContractId from \"./ContractId.js\";\nimport * as hex from \"../encoding/hex.js\";\n\n/**\n * @namespace {proto}\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n * @typedef {import(\"@hashgraph/proto\").IKey} proto.IKey\n */\n\n/**\n * @typedef {import(\"long\").Long} Long\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\nexport default class DelegateContractId extends ContractId {\n /**\n * @param {number | Long | import(\"../EntityIdHelper\").IEntityId} props\n * @param {(number | Long)=} realm\n * @param {(number | Long)=} num\n * @param {Uint8Array=} evmAddress\n */\n constructor(props, realm, num, evmAddress) {\n super(props, realm, num, evmAddress);\n }\n\n /**\n * @param {Long | number} shard\n * @param {Long | number} realm\n * @param {string} evmAddress\n * @returns {ContractId}\n */\n static fromEvmAddress(shard, realm, evmAddress) {\n return new DelegateContractId(shard, realm, 0, hex.decode(evmAddress));\n }\n\n /**\n * @param {string} text\n * @returns {DelegateContractId}\n */\n static fromString(text) {\n return new DelegateContractId(ContractId.fromString(text));\n }\n\n /**\n * @internal\n * @param {proto.IContractID} id\n * @returns {DelegateContractId}\n */\n static _fromProtobuf(id) {\n return new DelegateContractId(ContractId._fromProtobuf(id));\n }\n\n /**\n * @param {Uint8Array} bytes\n * @returns {DelegateContractId}\n */\n static fromBytes(bytes) {\n return new DelegateContractId(ContractId.fromBytes(bytes));\n }\n\n /**\n * @deprecated - Use `DelegateContractId.fromEvmAddress()` instead\n * @param {string} address\n * @returns {DelegateContractId}\n */\n static fromSolidityAddress(address) {\n // eslint-disable-next-line deprecation/deprecation\n return new DelegateContractId(ContractId.fromSolidityAddress(address));\n }\n\n /**\n * @returns {DelegateContractId}\n */\n clone() {\n const id = new DelegateContractId(this);\n id._checksum = this._checksum;\n return id;\n }\n\n /**\n * @returns {proto.IKey}\n */\n _toProtobufKey() {\n return {\n delegatableContractId: this._toProtobuf(),\n };\n }\n\n /**\n * @param {proto.IContractID} key\n * @returns {DelegateContractId}\n */\n static __fromProtobufKey(key) {\n return DelegateContractId._fromProtobuf(key);\n }\n}\n\nCACHE.delegateContractId = (key) => DelegateContractId.__fromProtobufKey(key);\n","import Hbar from \"../Hbar.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\nimport FileId from \"./FileId.js\";\nimport TransactionId from \"../transaction/TransactionId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport List from \"../transaction/List.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IFileAppendTransactionBody} proto.IFileAppendTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IFileID} proto.IFileID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionResponse.js\").default} TransactionResponse\n * @typedef {import(\"../schedule/ScheduleCreateTransaction.js\").default} ScheduleCreateTransaction\n */\n\n/**\n * A transaction specifically to append data to a file on the network.\n *\n * If a file has multiple keys, all keys must sign to modify its contents.\n */\nexport default class FileAppendTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {FileId | string} [props.fileId]\n * @param {Uint8Array | string} [props.contents]\n * @param {number} [props.maxChunks]\n * @param {number} [props.chunkSize]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?FileId}\n */\n this._fileId = null;\n\n /**\n * @private\n * @type {?Uint8Array}\n */\n this._contents = null;\n\n /**\n * @private\n * @type {number}\n */\n this._maxChunks = 20;\n\n /**\n * @private\n * @type {number}\n */\n this._chunkSize = 2048;\n\n this._defaultMaxTransactionFee = new Hbar(5);\n\n if (props.fileId != null) {\n this.setFileId(props.fileId);\n }\n\n if (props.contents != null) {\n this.setContents(props.contents);\n }\n\n if (props.maxChunks != null) {\n this.setMaxChunks(props.maxChunks);\n }\n\n if (props.chunkSize != null) {\n this.setChunkSize(props.chunkSize);\n }\n\n /** @type {number} */\n this._startIndex = 0;\n\n /** @type {List} */\n this._transactionIds = new List();\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {FileAppendTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const append = /** @type {proto.IFileAppendTransactionBody} */ (\n body.fileAppend\n );\n\n let contents;\n for (let i = 0; i < bodies.length; i += nodeIds.length) {\n const fileAppend = /** @type {proto.IFileAppendTransactionBody} */ (\n bodies[i].fileAppend\n );\n if (fileAppend.contents == null) {\n break;\n }\n\n if (contents == null) {\n contents = new Uint8Array(\n /** @type {Uint8Array} */ (fileAppend.contents)\n );\n continue;\n }\n\n /** @type {Uint8Array} */\n const concat = new Uint8Array(\n contents.length +\n /** @type {Uint8Array} */ (fileAppend.contents).length\n );\n concat.set(contents, 0);\n concat.set(\n /** @type {Uint8Array} */ (fileAppend.contents),\n contents.length\n );\n contents = concat;\n }\n\n return Transaction._fromProtobufTransactions(\n new FileAppendTransaction({\n fileId:\n append.fileID != null\n ? FileId._fromProtobuf(\n /** @type {proto.IFileID} */ (append.fileID)\n )\n : undefined,\n contents: contents,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @param {TransactionId} transactionId\n * @returns {this}\n */\n setTransactionId(transactionId) {\n this._requireNotFrozen();\n\n if (\n transactionId.accountId == null ||\n transactionId.validStart == null\n ) {\n throw new Error(\n \"`FileAppendTransaction` does not support `TransactionId` built from `nonce`\"\n );\n }\n\n this._transactionIds.setList([transactionId]);\n\n return this;\n }\n\n /**\n * @returns {?FileId}\n */\n get fileId() {\n return this._fileId;\n }\n\n /**\n * Set the keys which must sign any transactions modifying this file. Required.\n *\n * All keys must sign to modify the file's contents or keys. No key is required\n * to sign for extending the expiration time (except the one for the operator account\n * paying for the transaction). Only one key must sign to delete the file, however.\n *\n * To require more than one key to sign to delete a file, add them to a\n * KeyList and pass that here.\n *\n * The network currently requires a file to have at least one key (or key list or threshold key)\n * but this requirement may be lifted in the future.\n *\n * @param {FileId | string} fileId\n * @returns {this}\n */\n setFileId(fileId) {\n this._requireNotFrozen();\n this._fileId =\n typeof fileId === \"string\"\n ? FileId.fromString(fileId)\n : fileId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get contents() {\n return this._contents;\n }\n\n /**\n * Set the given byte array as the file's contents.\n *\n * This may be omitted to append an empty file.\n *\n * Note that total size for a given transaction is limited to 6KiB (as of March 2020) by the\n * network; if you exceed this you may receive a HederaPreCheckStatusException\n * with Status#TransactionOversize.\n *\n * In this case, you will need to break the data into chunks of less than ~6KiB and execute this\n * transaction with the first chunk and then use FileAppendTransaction with\n * FileAppendTransaction#setContents(Uint8Array) for the remaining chunks.\n *\n * @param {Uint8Array | string} contents\n * @returns {this}\n */\n setContents(contents) {\n this._requireNotFrozen();\n this._contents =\n contents instanceof Uint8Array ? contents : utf8.encode(contents);\n\n return this;\n }\n\n /**\n * @returns {?number}\n */\n get maxChunks() {\n return this._maxChunks;\n }\n\n /**\n * @param {number} maxChunks\n * @returns {this}\n */\n setMaxChunks(maxChunks) {\n this._requireNotFrozen();\n this._maxChunks = maxChunks;\n return this;\n }\n\n /**\n * @returns {?number}\n */\n get chunkSize() {\n return this._chunkSize;\n }\n\n /**\n * @param {number} chunkSize\n * @returns {this}\n */\n setChunkSize(chunkSize) {\n this._chunkSize = chunkSize;\n return this;\n }\n\n /**\n * Freeze this transaction from further modification to prepare for\n * signing or serialization.\n *\n * Will use the `Client`, if available, to generate a default Transaction ID and select 1/3\n * nodes to prepare this transaction for.\n *\n * @param {?import(\"../client/Client.js\").default} client\n * @returns {this}\n */\n freezeWith(client) {\n super.freezeWith(client);\n\n if (this._contents == null) {\n return this;\n }\n\n const chunks = Math.floor(\n (this._contents.length + (this._chunkSize - 1)) / this._chunkSize\n );\n\n if (chunks > this._maxChunks) {\n throw new Error(\n `Contents with size ${this._contents.length} too long for ${this._maxChunks} chunks`\n );\n }\n\n let nextTransactionId = this.transactionId;\n\n // Hack around the locked list. Should refactor a bit to remove such code\n this._transactionIds.locked = false;\n\n this._transactions.clear();\n this._transactionIds.clear();\n this._signedTransactions.clear();\n super._nextTransactionIndex = 0;\n\n for (let chunk = 0; chunk < chunks; chunk++) {\n this._startIndex = chunk * this._chunkSize;\n\n this._transactionIds.list.push(nextTransactionId);\n\n for (const nodeAccountId of this._nodeAccountIds.list) {\n this._signedTransactions.push(\n this._makeSignedTransaction(nodeAccountId)\n );\n }\n\n nextTransactionId = new TransactionId(\n /** @type {AccountId} */ (nextTransactionId.accountId),\n new Timestamp(\n /** @type {Timestamp} */ (\n nextTransactionId.validStart\n ).seconds,\n /** @type {Timestamp} */ (\n nextTransactionId.validStart\n ).nanos.add(1)\n )\n );\n\n super._nextTransactionIndex = this._nextTransactionIndex + 1;\n }\n\n this._startIndex = 0;\n super._nextTransactionIndex = 0;\n\n return this;\n }\n\n /**\n * @returns {ScheduleCreateTransaction}\n */\n schedule() {\n this._requireNotFrozen();\n\n if (this._contents != null && this._contents.length > this._chunkSize) {\n throw new Error(\n `cannot schedule \\`FileAppendTransaction\\` with message over ${this._chunkSize} bytes`\n );\n }\n\n return super.schedule();\n }\n\n /**\n * @param {import(\"../client/Client.js\").default} client\n * @param {number=} requestTimeout\n * @returns {Promise}\n */\n async execute(client, requestTimeout) {\n return (await this.executeAll(client, requestTimeout))[0];\n }\n\n /**\n * @param {import(\"../client/Client.js\").default} client\n * @param {number=} requestTimeout\n * @returns {Promise}\n */\n async executeAll(client, requestTimeout) {\n if (!super._isFrozen()) {\n this.freezeWith(client);\n }\n\n // on execute, sign each transaction with the operator, if present\n // and we are signing a transaction that used the default transaction ID\n\n const transactionId = this.transactionId;\n const operatorAccountId = client.operatorAccountId;\n\n if (\n operatorAccountId != null &&\n operatorAccountId.equals(\n /** @type {AccountId} */ (transactionId.accountId)\n )\n ) {\n await super.signWithOperator(client);\n }\n\n const responses = [];\n let remainingTimeout = requestTimeout;\n\n for (let i = 0; i < this._transactionIds.length; i++) {\n const startTimestamp = Date.now();\n const response = await super.execute(client, remainingTimeout);\n remainingTimeout = Date.now() - startTimestamp;\n\n await response.getReceipt(client);\n responses.push(response);\n }\n\n return responses;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._fileId != null) {\n this._fileId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.file.appendContent(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"fileAppend\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IFileAppendTransactionBody}\n */\n _makeTransactionData() {\n const length = this._contents != null ? this._contents.length : 0;\n let endIndex = this._startIndex + this._chunkSize;\n if (endIndex > length) {\n endIndex = length;\n }\n\n return {\n fileID: this._fileId != null ? this._fileId._toProtobuf() : null,\n contents:\n this._contents != null\n ? this._contents.slice(this._startIndex, endIndex)\n : null,\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nTRANSACTION_REGISTRY.set(\"fileAppend\", FileAppendTransaction._fromProtobuf);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport FileId from \"./FileId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").IFileGetContentsQuery} proto.IFileGetContentsQuery\n * @typedef {import(\"@hashgraph/proto\").IFileGetContentsResponse} proto.IFileGetContentsResponse\n * @typedef {import(\"@hashgraph/proto\").IFileContents} proto.IFileContents\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * @augments {Query}\n */\nexport default class FileContentsQuery extends Query {\n /**\n * @param {object} [props]\n * @param {FileId | string} [props.fileId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @type {?FileId}\n * @private\n */\n this._fileId = null;\n if (props.fileId != null) {\n this.setFileId(props.fileId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {FileContentsQuery}\n */\n static _fromProtobuf(query) {\n const contents = /** @type {proto.IFileGetContentsQuery} */ (\n query.fileGetContents\n );\n\n return new FileContentsQuery({\n fileId:\n contents.fileID != null\n ? FileId._fromProtobuf(contents.fileID)\n : undefined,\n });\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._fileId != null) {\n this._fileId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.file.getFileContent(request);\n }\n\n /**\n * @returns {?FileId}\n */\n get fileId() {\n return this._fileId;\n }\n\n /**\n * Set the file ID for which the info is being requested.\n *\n * @param {FileId | string} fileId\n * @returns {FileContentsQuery}\n */\n setFileId(fileId) {\n this._fileId =\n typeof fileId === \"string\"\n ? FileId.fromString(fileId)\n : fileId.clone();\n\n return this;\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const fileGetContents = /** @type {proto.IFileGetContentsResponse} */ (\n response.fileGetContents\n );\n return /** @type {proto.IResponseHeader} */ (fileGetContents.header);\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @returns {Promise}\n */\n _mapResponse(response) {\n const fileContentsResponse =\n /** @type {proto.IFileGetContentsResponse} */ (\n response.fileGetContents\n );\n const fileConents = /** @type {proto.IFileContents} */ (\n fileContentsResponse.fileContents\n );\n const contents = /** @type {Uint8Array} */ (fileConents.contents);\n\n return Promise.resolve(contents);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n fileGetContents: {\n header,\n fileID:\n this._fileId != null ? this._fileId._toProtobuf() : null,\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"fileGetContents\", FileContentsQuery._fromProtobuf);\n","import Hbar from \"../Hbar.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n DEFAULT_AUTO_RENEW_PERIOD,\n} from \"../transaction/Transaction.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Key from \"../Key.js\";\nimport KeyList from \"../KeyList.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IFileCreateTransactionBody} proto.IFileCreateTransactionBody\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Create a new Hedera™ crypto-currency file.\n */\nexport default class FileCreateTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {Key[] | KeyList} [props.keys]\n * @param {Timestamp | Date} [props.expirationTime]\n * @param {Uint8Array | string} [props.contents]\n * @param {string} [props.fileMemo]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?Key[]}\n */\n this._keys = null;\n\n /**\n * @private\n * @type {Timestamp}\n */\n this._expirationTime = Timestamp.fromDate(\n Date.now() + DEFAULT_AUTO_RENEW_PERIOD.toInt() * 1000\n );\n\n /**\n * @private\n * @type {?Uint8Array}\n */\n this._contents = null;\n\n /**\n * @private\n * @type {?string}\n */\n this._fileMemo = null;\n\n this._defaultMaxTransactionFee = new Hbar(5);\n\n if (props.keys != null) {\n this.setKeys(props.keys);\n }\n\n if (props.expirationTime != null) {\n this.setExpirationTime(props.expirationTime);\n }\n\n if (props.contents != null) {\n this.setContents(props.contents);\n }\n\n if (props.fileMemo != null) {\n this.setFileMemo(props.fileMemo);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {FileCreateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const create = /** @type {proto.IFileCreateTransactionBody} */ (\n body.fileCreate\n );\n\n return Transaction._fromProtobufTransactions(\n new FileCreateTransaction({\n keys:\n create.keys != null\n ? create.keys.keys != null\n ? create.keys.keys.map((key) =>\n Key._fromProtobufKey(key)\n )\n : undefined\n : undefined,\n expirationTime:\n create.expirationTime != null\n ? Timestamp._fromProtobuf(create.expirationTime)\n : undefined,\n contents: create.contents != null ? create.contents : undefined,\n fileMemo: create.memo != null ? create.memo : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?Key[]}\n */\n get keys() {\n return this._keys;\n }\n\n /**\n * Set the keys which must sign any transactions modifying this file. Required.\n *\n * All keys must sign to modify the file's contents or keys. No key is required\n * to sign for extending the expiration time (except the one for the operator account\n * paying for the transaction). Only one key must sign to delete the file, however.\n *\n * To require more than one key to sign to delete a file, add them to a\n * KeyList and pass that here.\n *\n * The network currently requires a file to have at least one key (or key list or threshold key)\n * but this requirement may be lifted in the future.\n *\n * @param {Key[] | KeyList} keys\n * @returns {this}\n */\n setKeys(keys) {\n this._requireNotFrozen();\n if (keys instanceof KeyList && keys.threshold != null) {\n throw new Error(\"Cannot set threshold key as file key\");\n }\n\n this._keys = keys instanceof KeyList ? keys.toArray() : keys;\n\n return this;\n }\n\n /**\n * @returns {Timestamp}\n */\n get expirationTime() {\n return this._expirationTime;\n }\n\n /**\n * Set the instant at which this file will expire, after which its contents will no longer be\n * available.\n *\n * Defaults to 1/4 of a Julian year from the instant FileCreateTransaction\n * was invoked.\n *\n * May be extended using FileUpdateTransaction#setExpirationTime(Timestamp).\n *\n * @param {Timestamp | Date} expirationTime\n * @returns {this}\n */\n setExpirationTime(expirationTime) {\n this._requireNotFrozen();\n this._expirationTime =\n expirationTime instanceof Timestamp\n ? expirationTime\n : Timestamp.fromDate(expirationTime);\n\n return this;\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get contents() {\n return this._contents;\n }\n\n /**\n * Set the given byte array as the file's contents.\n *\n * This may be omitted to create an empty file.\n *\n * Note that total size for a given transaction is limited to 6KiB (as of March 2020) by the\n * network; if you exceed this you may receive a HederaPreCheckStatusException\n * with Status#TransactionOversize.\n *\n * In this case, you will need to break the data into chunks of less than ~6KiB and execute this\n * transaction with the first chunk and then use FileAppendTransaction with\n * FileAppendTransaction#setContents(Uint8Array) for the remaining chunks.\n *\n * @param {Uint8Array | string} contents\n * @returns {this}\n */\n setContents(contents) {\n this._requireNotFrozen();\n this._contents =\n contents instanceof Uint8Array ? contents : utf8.encode(contents);\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get fileMemo() {\n return this._fileMemo;\n }\n\n /**\n * @param {string} memo\n * @returns {this}\n */\n setFileMemo(memo) {\n this._requireNotFrozen();\n this._fileMemo = memo;\n\n return this;\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.file.createFile(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"fileCreate\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IFileCreateTransactionBody}\n */\n _makeTransactionData() {\n return {\n keys:\n this._keys != null\n ? {\n keys: this._keys.map((key) => key._toProtobufKey()),\n }\n : null,\n expirationTime: this._expirationTime._toProtobuf(),\n contents: this._contents,\n memo: this._fileMemo,\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nTRANSACTION_REGISTRY.set(\"fileCreate\", FileCreateTransaction._fromProtobuf);\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport FileId from \"./FileId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IFileDeleteTransactionBody} proto.IFileDeleteTransactionBody\n */\n\n/**\n * @typedef {import(\"@hashgraph/cryptography\").Key} Key\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * A transaction to delete a file on the Hedera network.\n *\n * When deleted, a file's contents are truncated to zero length and it can no longer be updated\n * or appended to, or its expiration time extended. FileContentsQuery and FileInfoQuery\n * will throw HederaPreCheckStatusException with a status of Status#FileDeleted.\n *\n * Only one of the file's keys needs to sign to delete the file, unless the key you have is part\n * of a KeyList.\n */\nexport default class FileDeleteTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {FileId | string} [props.fileId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?FileId}\n */\n this._fileId = null;\n\n if (props.fileId != null) {\n this.setFileId(props.fileId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {FileDeleteTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const fileDelete = /** @type {proto.IFileDeleteTransactionBody} */ (\n body.fileDelete\n );\n\n return Transaction._fromProtobufTransactions(\n new FileDeleteTransaction({\n fileId:\n fileDelete.fileID != null\n ? FileId._fromProtobuf(fileDelete.fileID)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?FileId}\n */\n get fileId() {\n return this._fileId;\n }\n\n /**\n * Set the file ID which is being deleted in this transaction.\n *\n * @param {FileId | string} fileId\n * @returns {FileDeleteTransaction}\n */\n setFileId(fileId) {\n this._requireNotFrozen();\n this._fileId =\n typeof fileId === \"string\"\n ? FileId.fromString(fileId)\n : fileId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._fileId != null) {\n this._fileId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.file.deleteFile(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"fileDelete\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IFileDeleteTransactionBody}\n */\n _makeTransactionData() {\n return {\n fileID: this._fileId != null ? this._fileId._toProtobuf() : null,\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nTRANSACTION_REGISTRY.set(\"fileDelete\", FileDeleteTransaction._fromProtobuf);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport FileId from \"./FileId.js\";\nimport FileInfo from \"./FileInfo.js\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").IFileGetInfoQuery} proto.IFileGetInfoQuery\n * @typedef {import(\"@hashgraph/proto\").IFileGetInfoResponse} proto.IFileGetInfoResponse\n * @typedef {import(\"@hashgraph/proto\").IFileInfo} proto.IFileInfo\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * @augments {Query}\n */\nexport default class FileInfoQuery extends Query {\n /**\n * @param {object} [props]\n * @param {FileId | string} [props.fileId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @type {?FileId}\n * @private\n */\n this._fileId = null;\n if (props.fileId != null) {\n this.setFileId(props.fileId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {FileInfoQuery}\n */\n static _fromProtobuf(query) {\n const info = /** @type {proto.IFileGetInfoQuery} */ (query.fileGetInfo);\n\n return new FileInfoQuery({\n fileId:\n info.fileID != null\n ? FileId._fromProtobuf(info.fileID)\n : undefined,\n });\n }\n\n /**\n * @returns {?FileId}\n */\n get fileId() {\n return this._fileId;\n }\n\n /**\n * Set the file ID for which the info is being requested.\n *\n * @param {FileId | string} fileId\n * @returns {FileInfoQuery}\n */\n setFileId(fileId) {\n this._fileId =\n typeof fileId === \"string\"\n ? FileId.fromString(fileId)\n : fileId.clone();\n\n return this;\n }\n\n /**\n * @override\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async getCost(client) {\n let cost = await super.getCost(client);\n\n if (cost.toTinybars().greaterThan(25)) {\n return cost;\n } else {\n return Hbar.fromTinybars(25);\n }\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._fileId != null) {\n this._fileId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.file.getFileInfo(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const fileGetInfo = /** @type {proto.IFileGetInfoResponse} */ (\n response.fileGetInfo\n );\n return /** @type {proto.IResponseHeader} */ (fileGetInfo.header);\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const info = /** @type {proto.IFileGetInfoResponse} */ (\n response.fileGetInfo\n );\n\n return Promise.resolve(\n FileInfo._fromProtobuf(\n /** @type {proto.IFileInfo} */ (info.fileInfo)\n )\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n fileGetInfo: {\n header,\n fileID:\n this._fileId != null ? this._fileId._toProtobuf() : null,\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"fileGetInfo\", FileInfoQuery._fromProtobuf);\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\nimport FileId from \"./FileId.js\";\nimport Key from \"../Key.js\";\nimport KeyList from \"../KeyList.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IFileUpdateTransactionBody} proto.IFileUpdateTransactionBody\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Update a new Hedera™ crypto-currency file.\n */\nexport default class FileUpdateTransaction extends Transaction {\n /**\n * @param {object} props\n * @param {FileId | string} [props.fileId]\n * @param {Key[] | KeyList} [props.keys]\n * @param {Timestamp | Date} [props.expirationTime]\n * @param {Uint8Array | string} [props.contents]\n * @param {string} [props.fileMemo]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?FileId}\n */\n this._fileId = null;\n\n /**\n * @private\n * @type {?Key[]}\n */\n this._keys = null;\n\n /**\n * @private\n * @type {?Timestamp}\n */\n this._expirationTime = null;\n\n /**\n * @private\n * @type {?Uint8Array}\n */\n this._contents = null;\n\n /**\n * @private\n * @type {?string}\n */\n this._fileMemo = null;\n\n if (props.fileId != null) {\n this.setFileId(props.fileId);\n }\n\n if (props.keys != null) {\n this.setKeys(props.keys);\n }\n\n if (props.expirationTime != null) {\n this.setExpirationTime(props.expirationTime);\n }\n\n if (props.contents != null) {\n this.setContents(props.contents);\n }\n\n if (props.fileMemo != null) {\n this.setFileMemo(props.fileMemo);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {FileUpdateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const update = /** @type {proto.IFileUpdateTransactionBody} */ (\n body.fileUpdate\n );\n\n return Transaction._fromProtobufTransactions(\n new FileUpdateTransaction({\n fileId:\n update.fileID != null\n ? FileId._fromProtobuf(update.fileID)\n : undefined,\n keys:\n update.keys != null\n ? update.keys.keys != null\n ? update.keys.keys.map((key) =>\n Key._fromProtobufKey(key)\n )\n : undefined\n : undefined,\n expirationTime:\n update.expirationTime != null\n ? Timestamp._fromProtobuf(update.expirationTime)\n : undefined,\n contents: update.contents != null ? update.contents : undefined,\n fileMemo:\n update.memo != null\n ? update.memo.value != null\n ? update.memo.value\n : undefined\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?FileId}\n */\n get fileId() {\n return this._fileId;\n }\n\n /**\n * Set the keys which must sign any transactions modifying this file. Required.\n *\n * All keys must sign to modify the file's contents or keys. No key is required\n * to sign for extending the expiration time (except the one for the operator account\n * paying for the transaction). Only one key must sign to delete the file, however.\n *\n * To require more than one key to sign to delete a file, add them to a\n * KeyList and pass that here.\n *\n * The network currently requires a file to have at least one key (or key list or threshold key)\n * but this requirement may be lifted in the future.\n *\n * @param {FileId | string} fileId\n * @returns {this}\n */\n setFileId(fileId) {\n this._requireNotFrozen();\n this._fileId =\n typeof fileId === \"string\"\n ? FileId.fromString(fileId)\n : fileId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Key[]}\n */\n get keys() {\n return this._keys;\n }\n\n /**\n * Set the keys which must sign any transactions modifying this file. Required.\n *\n * All keys must sign to modify the file's contents or keys. No key is required\n * to sign for extending the expiration time (except the one for the operator account\n * paying for the transaction). Only one key must sign to delete the file, however.\n *\n * To require more than one key to sign to delete a file, add them to a\n * KeyList and pass that here.\n *\n * The network currently requires a file to have at least one key (or key list or threshold key)\n * but this requirement may be lifted in the future.\n *\n * @param {Key[] | KeyList} keys\n * @returns {this}\n */\n setKeys(keys) {\n this._requireNotFrozen();\n if (keys instanceof KeyList && keys.threshold != null) {\n throw new Error(\"Cannot set threshold key as file key\");\n }\n\n this._keys = keys instanceof KeyList ? keys.toArray() : keys;\n\n return this;\n }\n\n /**\n * @returns {?Timestamp}\n */\n get expirationTime() {\n return this._expirationTime;\n }\n\n /**\n * Set the instant at which this file will expire, after which its contents will no longer be\n * available.\n *\n * Defaults to 1/4 of a Julian year from the instant FileUpdateTransaction\n * was invoked.\n *\n * May be extended using FileUpdateTransaction#setExpirationTime(Timestamp).\n *\n * @param {Timestamp | Date} expirationTime\n * @returns {this}\n */\n setExpirationTime(expirationTime) {\n this._requireNotFrozen();\n this._expirationTime =\n expirationTime instanceof Timestamp\n ? expirationTime\n : Timestamp.fromDate(expirationTime);\n\n return this;\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get contents() {\n return this._contents;\n }\n\n /**\n * Set the given byte array as the file's contents.\n *\n * This may be omitted to update an empty file.\n *\n * Note that total size for a given transaction is limited to 6KiB (as of March 2020) by the\n * network; if you exceed this you may receive a HederaPreCheckStatusException\n * with Status#TransactionOversize.\n *\n * In this case, you will need to break the data into chunks of less than ~6KiB and execute this\n * transaction with the first chunk and then use FileAppendTransaction with\n * FileAppendTransaction#setContents(Uint8Array) for the remaining chunks.\n *\n * @param {Uint8Array | string} contents\n * @returns {this}\n */\n setContents(contents) {\n this._requireNotFrozen();\n this._contents =\n contents instanceof Uint8Array ? contents : utf8.encode(contents);\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get fileMemo() {\n return this._fileMemo;\n }\n\n /**\n * @param {string} memo\n * @returns {this}\n */\n setFileMemo(memo) {\n this._requireNotFrozen();\n this._fileMemo = memo;\n\n return this;\n }\n\n /**\n * @returns {this}\n */\n clearFileMemo() {\n this._requireNotFrozen();\n this._fileMemo = null;\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._fileId != null) {\n this._fileId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.file.updateFile(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"fileUpdate\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IFileUpdateTransactionBody}\n */\n _makeTransactionData() {\n return {\n fileID: this._fileId != null ? this._fileId._toProtobuf() : null,\n keys:\n this._keys != null\n ? {\n keys: this._keys.map((key) => key._toProtobufKey()),\n }\n : null,\n expirationTime:\n this._expirationTime != null\n ? this._expirationTime._toProtobuf()\n : null,\n contents: this._contents,\n memo:\n this._fileMemo != null\n ? {\n value: this._fileMemo,\n }\n : null,\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nTRANSACTION_REGISTRY.set(\"fileUpdate\", FileUpdateTransaction._fromProtobuf);\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport FileId from \"../file/FileId.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport FreezeType from \"../FreezeType.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IFreezeTransactionBody} proto.IFreezeTransactionBody\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * @typedef {object} HourMinute\n * @property {number} hour\n * @property {number} minute\n */\n\nexport default class FreezeTransaction extends Transaction {\n /**\n * @param {Object} [props]\n * @param {HourMinute} [props.startTime]\n * @param {HourMinute} [props.endTime]\n * @param {Timestamp} [props.startTimestamp]\n * @param {FileId} [props.updateFileId]\n * @param {FileId} [props.fileId]\n * @param {Uint8Array | string} [props.fileHash]\n * @param { FreezeType } [props.freezeType]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?HourMinute}\n */\n this._startTime = null;\n\n /**\n * @private\n * @type {?Timestamp}\n */\n this._startTimestamp = null;\n\n /**\n * @private\n * @type {?HourMinute}\n */\n this._endTime = null;\n\n /**\n * @private\n * @type {?FileId}\n */\n this._fileId = null;\n\n /**\n * @private\n * @type {?Uint8Array}\n */\n this._fileHash = null;\n\n /**\n * @private\n * @type {?FreezeType}\n */\n this._freezeType = null;\n\n if (props.startTime != null) {\n // eslint-disable-next-line deprecation/deprecation\n this.setStartTime(props.startTime.hour, props.startTime.minute);\n }\n\n if (props.endTime != null) {\n // eslint-disable-next-line deprecation/deprecation\n this.setEndTime(props.endTime.hour, props.endTime.minute);\n }\n\n if (props.startTimestamp != null) {\n this.setStartTimestamp(props.startTimestamp);\n }\n\n if (props.updateFileId != null) {\n // eslint-disable-next-line deprecation/deprecation\n this.setUpdateFileId(props.updateFileId);\n }\n\n if (props.fileId != null) {\n this.setFileId(props.fileId);\n }\n\n if (props.fileHash != null) {\n this.setFileHash(props.fileHash);\n }\n\n if (props.freezeType != null) {\n this.setFreezeType(props.freezeType);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {FreezeTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const freeze = /** @type {proto.IFreezeTransactionBody} */ (\n body.freeze\n );\n\n return Transaction._fromProtobufTransactions(\n new FreezeTransaction({\n startTime:\n freeze.startHour != null && freeze.startMin != null\n ? {\n hour: freeze.startHour,\n minute: freeze.startMin,\n }\n : undefined,\n endTime:\n freeze.endHour != null && freeze.endMin != null\n ? {\n hour: freeze.endHour,\n minute: freeze.endMin,\n }\n : undefined,\n startTimestamp:\n freeze.startTime != null\n ? Timestamp._fromProtobuf(freeze.startTime)\n : undefined,\n updateFileId:\n freeze.updateFile != null\n ? FileId._fromProtobuf(freeze.updateFile)\n : undefined,\n fileHash: freeze.fileHash != null ? freeze.fileHash : undefined,\n freezeType:\n freeze.freezeType != null\n ? FreezeType._fromCode(freeze.freezeType)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @deprecated - Use `startTimestamp` instead\n * @returns {?HourMinute}\n */\n get startTime() {\n return null;\n }\n\n /**\n * @deprecated - Use `startTimestamp` instead\n * @param {number | string} startHourOrString\n * @param {?number} startMinute\n * @returns {FreezeTransaction}\n */\n setStartTime(startHourOrString, startMinute) {\n this._requireNotFrozen();\n if (typeof startHourOrString === \"string\") {\n const split = startHourOrString.split(\":\");\n this._startTime = {\n hour: Number(split[0]),\n minute: Number(split[1]),\n };\n } else {\n this._startTime = {\n hour: startHourOrString,\n minute: /** @type {number} */ (startMinute),\n };\n }\n\n return this;\n }\n\n /**\n * @returns {?Timestamp}\n */\n get startTimestamp() {\n return this._startTimestamp;\n }\n\n /**\n * @param {Timestamp} startTimestamp\n * @returns {FreezeTransaction}\n */\n setStartTimestamp(startTimestamp) {\n this._requireNotFrozen();\n this._startTimestamp = startTimestamp;\n\n return this;\n }\n\n /**\n * @deprecated\n * @returns {?HourMinute}\n */\n get endTime() {\n console.warn(\"`FreezeTransaction.endTime` is deprecated\");\n return this._endTime;\n }\n\n /**\n * @deprecated\n * @param {number | string} endHourOrString\n * @param {?number} endMinute\n * @returns {FreezeTransaction}\n */\n setEndTime(endHourOrString, endMinute) {\n console.warn(\"`FreezeTransaction.endTime` is deprecated\");\n this._requireNotFrozen();\n if (typeof endHourOrString === \"string\") {\n const split = endHourOrString.split(\":\");\n this._endTime = {\n hour: Number(split[0]),\n minute: Number(split[1]),\n };\n } else {\n this._endTime = {\n hour: endHourOrString,\n minute: /** @type {number} */ (endMinute),\n };\n }\n\n return this;\n }\n\n /**\n * @deprecated - Use `fileId` instead\n * @returns {?FileId}\n */\n get updateFileId() {\n return this.fileId;\n }\n\n /**\n * @deprecated - Use `setFileId()` instead\n * @param {FileId} updateFileId\n * @returns {FreezeTransaction}\n */\n setUpdateFileId(updateFileId) {\n return this.setFileId(updateFileId);\n }\n\n /**\n * @returns {?FileId}\n */\n get fileId() {\n return this._fileId;\n }\n\n /**\n * @param {FileId} fileId\n * @returns {FreezeTransaction}\n */\n setFileId(fileId) {\n this._requireNotFrozen();\n this._fileId = fileId;\n\n return this;\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get fileHash() {\n return this._fileHash;\n }\n\n /**\n * @param {Uint8Array | string} fileHash\n * @returns {FreezeTransaction}\n */\n setFileHash(fileHash) {\n this._requireNotFrozen();\n this._fileHash =\n typeof fileHash === \"string\" ? hex.decode(fileHash) : fileHash;\n\n return this;\n }\n\n /**\n * @returns {?FreezeType}\n */\n get freezeType() {\n return this._freezeType;\n }\n\n /**\n * @param {FreezeType} freezeType\n * @returns {FreezeTransaction}\n */\n setFreezeType(freezeType) {\n this._requireNotFrozen();\n this._freezeType = freezeType;\n return this;\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"freeze\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IFreezeTransactionBody}\n */\n _makeTransactionData() {\n return {\n startTime:\n this._startTimestamp != null\n ? this._startTimestamp._toProtobuf()\n : null,\n updateFile:\n this._fileId != null ? this._fileId._toProtobuf() : null,\n fileHash: this._fileHash,\n freezeType:\n this._freezeType != null ? this._freezeType.valueOf() : null,\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nTRANSACTION_REGISTRY.set(\"freeze\", FreezeTransaction._fromProtobuf);\n","/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").FreezeType} proto.FreezeType\n */\n\nexport default class FreezeType {\n /**\n * @hideconstructor\n * @internal\n * @param {number} code\n */\n constructor(code) {\n /** @readonly */\n this._code = code;\n\n Object.freeze(this);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n switch (this) {\n case FreezeType.UnknownFreezeType:\n return \"UNKNOWN_FREEZE_TYPE\";\n case FreezeType.FreezeOnly:\n return \"FREEZE_ONLY\";\n case FreezeType.PrepareUpgrade:\n return \"PREPARE_UPGRADE\";\n case FreezeType.FreezeUpgrade:\n return \"FREEZE_UPGRADE\";\n case FreezeType.FreezeAbort:\n return \"FREEZE_ABORT\";\n case FreezeType.TelemetryUpgrade:\n return \"TELEMETRY_UPGRADE\";\n default:\n return `UNKNOWN (${this._code})`;\n }\n }\n\n /**\n * @internal\n * @param {number} code\n * @returns {FreezeType}\n */\n static _fromCode(code) {\n switch (code) {\n case 0:\n return FreezeType.UnknownFreezeType;\n case 1:\n return FreezeType.FreezeOnly;\n case 2:\n return FreezeType.PrepareUpgrade;\n case 3:\n return FreezeType.FreezeUpgrade;\n case 4:\n return FreezeType.FreezeAbort;\n case 5:\n return FreezeType.TelemetryUpgrade;\n default:\n throw new Error(\n `(BUG) Status.fromCode() does not handle code: ${code}`\n );\n }\n }\n\n /**\n * @returns {proto.FreezeType}\n */\n valueOf() {\n return this._code;\n }\n}\n\n/**\n * An (invalid) default value for this enum, to ensure the client explicitly sets\n * the intended type of freeze transaction.\n */\nFreezeType.UnknownFreezeType = new FreezeType(0);\n\n/**\n * Freezes the network at the specified time. The start_time field must be provided and\n * must reference a future time. Any values specified for the update_file and file_hash\n * fields will be ignored. This transaction does not perform any network changes or\n * upgrades and requires manual intervention to restart the network.\n */\nFreezeType.FreezeOnly = new FreezeType(1);\n\n/**\n * A non-freezing operation that initiates network wide preparation in advance of a\n * scheduled freeze upgrade. The update_file and file_hash fields must be provided and\n * valid. The start_time field may be omitted and any value present will be ignored.\n */\nFreezeType.PrepareUpgrade = new FreezeType(2);\n\n/**\n * Freezes the network at the specified time and performs the previously prepared\n * automatic upgrade across the entire network.\n */\nFreezeType.FreezeUpgrade = new FreezeType(3);\n\n/**\n * Aborts a pending network freeze operation.\n */\nFreezeType.FreezeAbort = new FreezeType(4);\n\n/**\n * Performs an immediate upgrade on auxilary services and containers providing\n * telemetry/metrics. Does not impact network operations.\n */\nFreezeType.TelemetryUpgrade = new FreezeType(5);\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport AccountId from \"./AccountId.js\";\nimport Duration from \"../Duration.js\";\nimport Key from \"../Key.js\";\nimport KeyList from \"../KeyList.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ICryptoAddLiveHashTransactionBody} proto.ICryptoAddLiveHashTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ILiveHash} proto.ILiveHash\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class LiveHashAddTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {Uint8Array} [props.hash]\n * @param {Key[]} [props.keys]\n * @param {Duration | Long | number} [props.duration]\n * @param {AccountId | string} [props.accountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?Uint8Array}\n */\n this._hash = null;\n\n /**\n * @private\n * @type {?Key[]}\n */\n this._keys = null;\n\n /**\n * @private\n * @type {?Duration}\n */\n this._duration = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n\n if (props.hash != null) {\n this.setHash(props.hash);\n }\n\n if (props.keys != null) {\n this.setKeys(props.keys);\n }\n\n if (props.duration != null) {\n this.setDuration(props.duration);\n }\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {LiveHashAddTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const hashes = /** @type {proto.ICryptoAddLiveHashTransactionBody} */ (\n body.cryptoAddLiveHash\n );\n const liveHash_ = /** @type {proto.ILiveHash} */ (hashes.liveHash);\n\n return Transaction._fromProtobufTransactions(\n new LiveHashAddTransaction({\n hash: liveHash_.hash != null ? liveHash_.hash : undefined,\n keys:\n liveHash_.keys != null\n ? liveHash_.keys.keys != null\n ? liveHash_.keys.keys.map((key) =>\n Key._fromProtobufKey(key)\n )\n : undefined\n : undefined,\n duration:\n liveHash_.duration != null\n ? liveHash_.duration.seconds != null\n ? liveHash_.duration.seconds\n : undefined\n : undefined,\n accountId:\n liveHash_.accountId != null\n ? AccountId._fromProtobuf(liveHash_.accountId)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get hash() {\n return this._hash;\n }\n\n /**\n * @param {Uint8Array} hash\n * @returns {LiveHashAddTransaction}\n */\n setHash(hash) {\n this._requireNotFrozen();\n this._hash = hash;\n\n return this;\n }\n\n /**\n * @returns {?Key[]}\n */\n get keys() {\n return this._keys;\n }\n\n /**\n * @param {Key[] | KeyList} keys\n * @returns {LiveHashAddTransaction}\n */\n setKeys(keys) {\n this._requireNotFrozen();\n this._keys = keys instanceof KeyList ? keys.toArray() : keys;\n\n return this;\n }\n\n /**\n * @returns {?Duration}\n */\n get duration() {\n return this._duration;\n }\n\n /**\n * @param {Duration | Long | number} duration\n * @returns {LiveHashAddTransaction}\n */\n setDuration(duration) {\n this._requireNotFrozen();\n this._duration =\n duration instanceof Duration ? duration : new Duration(duration);\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {LiveHashAddTransaction}\n */\n setAccountId(accountId) {\n this._requireNotFrozen();\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.addLiveHash(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"cryptoAddLiveHash\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ICryptoAddLiveHashTransactionBody}\n */\n _makeTransactionData() {\n return {\n liveHash: {\n hash: this._hash,\n keys:\n this._keys != null\n ? {\n keys: this._keys.map((key) =>\n key._toProtobufKey()\n ),\n }\n : undefined,\n duration:\n this._duration != null\n ? this._duration._toProtobuf()\n : null,\n accountId:\n this._accountId != null\n ? this._accountId._toProtobuf()\n : null,\n },\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"cryptoAddLiveHash\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n LiveHashAddTransaction._fromProtobuf\n);\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport AccountId from \"./AccountId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ICryptoDeleteLiveHashTransactionBody} proto.ICryptoDeleteLiveHashTransactionBody\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class LiveHashDeleteTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {Uint8Array} [props.hash]\n * @param {AccountId | string} [props.accountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?Uint8Array}\n */\n this._hash = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n\n if (props.hash != null) {\n this.setHash(props.hash);\n }\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {LiveHashDeleteTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const hashes =\n /** @type {proto.ICryptoDeleteLiveHashTransactionBody} */ (\n body.cryptoDeleteLiveHash\n );\n\n return Transaction._fromProtobufTransactions(\n new LiveHashDeleteTransaction({\n hash:\n hashes.liveHashToDelete != null\n ? hashes.liveHashToDelete\n : undefined,\n accountId:\n hashes.accountOfLiveHash != null\n ? AccountId._fromProtobuf(hashes.accountOfLiveHash)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get hash() {\n return this._hash;\n }\n\n /**\n * @param {Uint8Array} hash\n * @returns {LiveHashDeleteTransaction}\n */\n setHash(hash) {\n this._requireNotFrozen();\n this._hash = hash;\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {LiveHashDeleteTransaction}\n */\n setAccountId(accountId) {\n this._requireNotFrozen();\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.deleteLiveHash(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"cryptoDeleteLiveHash\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ICryptoDeleteLiveHashTransactionBody}\n */\n _makeTransactionData() {\n return {\n liveHashToDelete: this._hash,\n accountOfLiveHash:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"cryptoDeleteLiveHash\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n LiveHashDeleteTransaction._fromProtobuf\n);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport AccountId from \"./AccountId.js\";\nimport LiveHash from \"./LiveHash.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetLiveHashQuery} proto.ICryptoGetLiveHashQuery\n * @typedef {import(\"@hashgraph/proto\").ICryptoGetLiveHashResponse} proto.ICryptoGetLiveHashResponse\n * @typedef {import(\"@hashgraph/proto\").ILiveHash} proto.ILiveHash\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n */\n\n/**\n * @augments {Query}\n */\nexport default class LiveHashQuery extends Query {\n /**\n * @param {object} [props]\n * @param {AccountId | string} [props.accountId]\n * @param {Uint8Array} [props.hash]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @type {?AccountId}\n * @private\n */\n this._accountId = null;\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n\n /**\n * @type {?Uint8Array}\n * @private\n */\n this._hash = null;\n\n if (props.hash != null) {\n this.setHash(props.hash);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {LiveHashQuery}\n */\n static _fromProtobuf(query) {\n const hash = /** @type {proto.ICryptoGetLiveHashQuery} */ (\n query.cryptoGetLiveHash\n );\n\n return new LiveHashQuery({\n accountId:\n hash.accountID != null\n ? AccountId._fromProtobuf(hash.accountID)\n : undefined,\n hash: hash.hash != null ? hash.hash : undefined,\n });\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * Set the account to which the livehash is associated.\n *\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._accountId =\n accountId instanceof AccountId\n ? accountId\n : AccountId.fromString(accountId);\n\n return this;\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get liveHash() {\n return this._hash;\n }\n\n /**\n * Set the SHA-384 data in the livehash.\n *\n * @param {Uint8Array} hash\n * @returns {this}\n */\n setHash(hash) {\n this._hash = hash;\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.getLiveHash(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const cryptoGetLiveHash =\n /** @type {proto.ICryptoGetLiveHashResponse} */ (\n response.cryptoGetLiveHash\n );\n return /** @type {proto.IResponseHeader} */ (cryptoGetLiveHash.header);\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @returns {Promise}\n */\n _mapResponse(response) {\n const hashes = /** @type {proto.ICryptoGetLiveHashResponse} */ (\n response.cryptoGetLiveHash\n );\n\n return Promise.resolve(\n LiveHash._fromProtobuf(\n /** @type {proto.ILiveHash} */ (hashes.liveHash)\n )\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n cryptoGetLiveHash: {\n header,\n accountID:\n this._accountId != null\n ? this._accountId._toProtobuf()\n : null,\n hash: this._hash,\n },\n };\n }\n}\n\n// @ts-ignore\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"cryptoGetLiveHash\", LiveHashQuery._fromProtobuf);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport NetworkVersionInfo from \"./NetworkVersionInfo.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").INetworkGetVersionInfoQuery} proto.INetworkGetVersionInfoQuery\n * @typedef {import(\"@hashgraph/proto\").INetworkGetVersionInfoResponse} proto.INetworkGetVersionInfoResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n */\n\n/**\n * @augments {Query}\n */\nexport default class NetworkVersionInfoQuery extends Query {\n constructor() {\n super();\n }\n\n /**\n * @param {proto.IQuery} query\n * @returns {NetworkVersionInfoQuery}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static _fromProtobuf(query) {\n return new NetworkVersionInfoQuery();\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.network.getVersionInfo(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const networkGetVersionInfo =\n /** @type {proto.INetworkGetVersionInfoResponse} */ (\n response.networkGetVersionInfo\n );\n return /** @type {proto.IResponseHeader} */ (\n networkGetVersionInfo.header\n );\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @returns {Promise}\n */\n _mapResponse(response) {\n const info = /** @type {proto.INetworkGetVersionInfoResponse} */ (\n response.networkGetVersionInfo\n );\n return Promise.resolve(NetworkVersionInfo._fromProtobuf(info));\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n networkGetVersionInfo: {\n header,\n },\n };\n }\n}\n\nQUERY_REGISTRY.set(\n \"networkGetVersionInfo\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n NetworkVersionInfoQuery._fromProtobuf\n);\n","import AccountId from \"../account/AccountId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n SCHEDULE_CREATE_TRANSACTION,\n} from \"../transaction/Transaction.js\";\nimport Key from \"../Key.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IScheduleCreateTransactionBody} proto.IScheduleCreateTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ISignatureMap} proto.ISignatureMap\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../Timestamp.js\").default} Timestamp\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"../PublicKey.js\").default} PublicKey\n * @typedef {import(\"../PrivateKey.js\").default} PrivateKey\n */\n\n/**\n * Create a new Hedera™ crypto-currency account.\n */\nexport default class ScheduleCreateTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {Key} [props.adminKey]\n * @param {AccountId} [props.payerAccountID]\n * @param {string} [props.scheduleMemo]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?Key}\n */\n this._adminKey = null;\n\n /**\n * @private\n * @type {?Transaction}\n */\n this._scheduledTransaction = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._payerAccountId = null;\n\n /**\n * @private\n * @type {?string}\n */\n this._scheduleMemo = null;\n\n /**\n * @private\n * @type {Set}\n */\n this._scheduledSignerPublicKeys = new Set();\n\n if (props.adminKey != null) {\n this.setAdminKey(props.adminKey);\n }\n\n if (props.payerAccountID != null) {\n this.setPayerAccountId(props.payerAccountID);\n }\n\n if (props.scheduleMemo != null) {\n this.setScheduleMemo(props.scheduleMemo);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {ScheduleCreateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const create = /** @type {proto.IScheduleCreateTransactionBody} */ (\n body.scheduleCreate\n );\n\n return Transaction._fromProtobufTransactions(\n new ScheduleCreateTransaction({\n adminKey:\n create.adminKey != null\n ? Key._fromProtobufKey(create.adminKey)\n : undefined,\n payerAccountID:\n create.payerAccountID != null\n ? AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n create.payerAccountID\n )\n )\n : undefined,\n scheduleMemo: create.memo != null ? create.memo : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @internal\n * @param {Transaction} tx\n * @returns {this}\n */\n _setScheduledTransaction(tx) {\n this._scheduledTransaction = tx;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get adminKey() {\n return this._adminKey;\n }\n\n /**\n * Set the key for this account.\n *\n * This is the key that must sign each transfer out of the account.\n *\n * If `receiverSignatureRequired` is true, then the key must also sign\n * any transfer into the account.\n *\n * @param {Key} key\n * @returns {this}\n */\n setAdminKey(key) {\n this._requireNotFrozen();\n this._adminKey = key;\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get payerAccountId() {\n return this._payerAccountId;\n }\n\n /**\n * @param {AccountId} account\n * @returns {this}\n */\n setPayerAccountId(account) {\n this._requireNotFrozen();\n this._payerAccountId = account;\n\n return this;\n }\n\n /**\n * @param {string} memo\n * @returns {this}\n */\n setScheduleMemo(memo) {\n this._requireNotFrozen();\n this._scheduleMemo = memo;\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get getScheduleMemo() {\n this._requireNotFrozen();\n return this._scheduleMemo;\n }\n\n /**\n * @param {Transaction} transaction\n * @returns {this}\n */\n setScheduledTransaction(transaction) {\n this._requireNotFrozen();\n transaction._requireNotFrozen();\n\n this._scheduledTransaction =\n transaction.schedule()._scheduledTransaction;\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._payerAccountId != null) {\n this._payerAccountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.schedule.createSchedule(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"scheduleCreate\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IScheduleCreateTransactionBody}\n */\n _makeTransactionData() {\n return {\n adminKey:\n this._adminKey != null ? this._adminKey._toProtobufKey() : null,\n payerAccountID:\n this._payerAccountId != null\n ? this._payerAccountId._toProtobuf()\n : null,\n scheduledTransactionBody:\n this._scheduledTransaction != null\n ? this._scheduledTransaction._getScheduledTransactionBody()\n : null,\n memo: this._scheduleMemo,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"scheduleCreate\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n ScheduleCreateTransaction._fromProtobuf\n);\n\nSCHEDULE_CREATE_TRANSACTION.push(() => new ScheduleCreateTransaction());\n","import ScheduleId from \"./ScheduleId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IScheduleDeleteTransactionBody} proto.IScheduleDeleteTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IScheduleID} proto.IScheduleID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"@hashgraph/cryptography\").Key} Key\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../Timestamp.js\").default} Timestamp\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * Create a new Hedera™ crypto-currency account.\n */\nexport default class ScheduleDeleteTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {ScheduleId | string} [props.scheduleId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?ScheduleId}\n */\n this._scheduleId = null;\n\n if (props.scheduleId != null) {\n this.setScheduleId(props.scheduleId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {ScheduleDeleteTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const scheduleDelete =\n /** @type {proto.IScheduleDeleteTransactionBody} */ (\n body.scheduleDelete\n );\n\n return Transaction._fromProtobufTransactions(\n new ScheduleDeleteTransaction({\n scheduleId:\n scheduleDelete.scheduleID != null\n ? ScheduleId._fromProtobuf(\n /** @type {proto.IScheduleID} */ (\n scheduleDelete.scheduleID\n )\n )\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?ScheduleId}\n */\n get scheduleId() {\n return this._scheduleId;\n }\n\n /**\n * @param {ScheduleId | string} scheduleId\n * @returns {this}\n */\n setScheduleId(scheduleId) {\n this._requireNotFrozen();\n this._scheduleId =\n typeof scheduleId === \"string\"\n ? ScheduleId.fromString(scheduleId)\n : scheduleId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._scheduleId != null) {\n this._scheduleId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.schedule.deleteSchedule(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"scheduleDelete\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IScheduleDeleteTransactionBody}\n */\n _makeTransactionData() {\n return {\n scheduleID:\n this._scheduleId != null\n ? this._scheduleId._toProtobuf()\n : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"scheduleDelete\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n ScheduleDeleteTransaction._fromProtobuf\n);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport ScheduleId from \"./ScheduleId.js\";\nimport ScheduleInfo from \"./ScheduleInfo.js\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").IScheduleInfo} proto.IScheduleInfo\n * @typedef {import(\"@hashgraph/proto\").IScheduleGetInfoQuery} proto.IScheduleGetInfoQuery\n * @typedef {import(\"@hashgraph/proto\").IScheduleGetInfoResponse} proto.IScheduleGetInfoResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * @augments {Query}\n */\nexport default class ScheduleInfoQuery extends Query {\n /**\n * @param {object} properties\n * @param {ScheduleId | string} [properties.scheduleId]\n */\n constructor(properties = {}) {\n super();\n\n /**\n * @private\n * @type {?ScheduleId}\n */\n this._scheduleId = null;\n\n if (properties.scheduleId != null) {\n this.setScheduleId(properties.scheduleId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {ScheduleInfoQuery}\n */\n static _fromProtobuf(query) {\n const info = /** @type {proto.IScheduleGetInfoQuery} */ (\n query.scheduleGetInfo\n );\n\n return new ScheduleInfoQuery({\n scheduleId:\n info.scheduleID != null\n ? ScheduleId._fromProtobuf(info.scheduleID)\n : undefined,\n });\n }\n\n /**\n * @returns {?ScheduleId}\n */\n get scheduleId() {\n return this._scheduleId;\n }\n\n /**\n *\n * @param {ScheduleId | string} scheduleId\n * @returns {ScheduleInfoQuery}\n */\n setScheduleId(scheduleId) {\n this._scheduleId =\n typeof scheduleId === \"string\"\n ? ScheduleId.fromString(scheduleId)\n : scheduleId.clone();\n\n return this;\n }\n\n /**\n * @override\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async getCost(client) {\n let cost = await super.getCost(client);\n\n if (cost.toTinybars().greaterThan(25)) {\n return cost;\n } else {\n return Hbar.fromTinybars(25);\n }\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._scheduleId != null) {\n this._scheduleId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.schedule.getScheduleInfo(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const scheduleGetInfo = /** @type {proto.IScheduleGetInfoResponse} */ (\n response.scheduleGetInfo\n );\n return /** @type {proto.IResponseHeader} */ (scheduleGetInfo.header);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const info = /** @type {proto.IScheduleGetInfoResponse} */ (\n response.scheduleGetInfo\n );\n\n return Promise.resolve(\n ScheduleInfo._fromProtobuf(\n /** @type {proto.IScheduleInfo} */ (info.scheduleInfo)\n )\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n scheduleGetInfo: {\n header,\n scheduleID:\n this._scheduleId != null\n ? this._scheduleId._toProtobuf()\n : null,\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"scheduleGetInfo\", ScheduleInfoQuery._fromProtobuf);\n","import ScheduleId from \"./ScheduleId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @typedef {object} ProtoSignaturePair\n * @property {(Uint8Array | null)=} pubKeyPrefix\n * @property {(Uint8Array | null)=} ed25519\n */\n\n/**\n * @typedef {object} ProtoSigMap\n * @property {(ProtoSignaturePair[] | null)=} sigPair\n */\n\n/**\n * @typedef {object} ProtoSignedTransaction\n * @property {(Uint8Array | null)=} bodyBytes\n * @property {(ProtoSigMap | null)=} sigMap\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IScheduleSignTransactionBody} proto.IScheduleSignTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ISignatureMap} proto.ISignatureMap\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"@hashgraph/cryptography\").Key} Key\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../Timestamp.js\").default} Timestamp\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"@hashgraph/cryptography\").PublicKey} PublicKey\n */\n\n/**\n * Create a new Hedera™ crypto-currency account.\n */\nexport default class ScheduleSignTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {ScheduleId | string} [props.scheduleId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?ScheduleId}\n */\n this._scheduleId = null;\n\n if (props.scheduleId != null) {\n this.setScheduleId(props.scheduleId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {ScheduleSignTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const sign = /** @type {proto.IScheduleSignTransactionBody} */ (\n body.scheduleSign\n );\n\n return Transaction._fromProtobufTransactions(\n new ScheduleSignTransaction({\n scheduleId:\n sign.scheduleID != null\n ? ScheduleId._fromProtobuf(sign.scheduleID)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?ScheduleId}\n */\n get scheduleId() {\n return this._scheduleId;\n }\n\n /**\n * @param {ScheduleId | string} scheduleId\n * @returns {this}\n */\n setScheduleId(scheduleId) {\n this._requireNotFrozen();\n this._scheduleId =\n typeof scheduleId === \"string\"\n ? ScheduleId.fromString(scheduleId)\n : scheduleId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._scheduleId != null) {\n this._scheduleId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.schedule.signSchedule(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"scheduleSign\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IScheduleSignTransactionBody}\n */\n _makeTransactionData() {\n return {\n scheduleID:\n this._scheduleId != null\n ? this._scheduleId._toProtobuf()\n : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"scheduleSign\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n ScheduleSignTransaction._fromProtobuf\n);\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport FileId from \"../file/FileId.js\";\nimport ContractId from \"../contract/ContractId.js\";\nimport Timestamp from \"../Timestamp.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ISystemDeleteTransactionBody} proto.ISystemDeleteTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n * @typedef {import(\"@hashgraph/proto\").IFileID} proto.IFileID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class SystemDeleteTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {FileId | string} [props.fileId]\n * @param {ContractId | string} [props.contractId]\n * @param {Timestamp} [props.expirationTime]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?FileId}\n */\n this._fileId = null;\n\n /**\n * @private\n * @type {?ContractId}\n */\n this._contractId = null;\n\n /**\n * @private\n * @type {?Timestamp}\n */\n this._expirationTime = null;\n\n if (props.fileId != null) {\n this.setFileId(props.fileId);\n }\n\n if (props.contractId != null) {\n this.setContractId(props.contractId);\n }\n\n if (props.expirationTime != null) {\n this.setExpirationTime(props.expirationTime);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {SystemDeleteTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const systemDelete = /** @type {proto.ISystemDeleteTransactionBody} */ (\n body.systemDelete\n );\n\n return Transaction._fromProtobufTransactions(\n new SystemDeleteTransaction({\n fileId:\n systemDelete.fileID != null\n ? FileId._fromProtobuf(\n /** @type {proto.IFileID} */ (systemDelete.fileID)\n )\n : undefined,\n contractId:\n systemDelete.contractID != null\n ? ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (\n systemDelete.contractID\n )\n )\n : undefined,\n expirationTime:\n systemDelete.expirationTime != null\n ? Timestamp._fromProtobuf(systemDelete.expirationTime)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?FileId}\n */\n get fileId() {\n return this._fileId;\n }\n\n /**\n * @param {FileId | string} fileId\n * @returns {this}\n */\n setFileId(fileId) {\n this._requireNotFrozen();\n this._fileId =\n fileId instanceof FileId ? fileId : FileId.fromString(fileId);\n\n return this;\n }\n\n /**\n * @returns {?ContractId}\n */\n get contractId() {\n return this._contractId;\n }\n\n /**\n * @param {ContractId | string} contractId\n * @returns {this}\n */\n setContractId(contractId) {\n this._requireNotFrozen();\n this._contractId =\n contractId instanceof ContractId\n ? contractId\n : ContractId.fromString(contractId);\n\n return this;\n }\n\n /**\n * @returns {?Timestamp}\n */\n get expirationTime() {\n return this._expirationTime;\n }\n\n /**\n * @param {Timestamp} expirationTime\n * @returns {SystemDeleteTransaction}\n */\n setExpirationTime(expirationTime) {\n this._requireNotFrozen();\n this._expirationTime = expirationTime;\n return this;\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n if (this._fileId != null) {\n return channel.file.systemDelete(request);\n } else {\n return channel.smartContract.systemDelete(request);\n }\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"systemDelete\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ISystemDeleteTransactionBody}\n */\n _makeTransactionData() {\n return {\n fileID: this._fileId != null ? this._fileId._toProtobuf() : null,\n contractID:\n this._contractId != null\n ? this._contractId._toProtobuf()\n : null,\n expirationTime:\n this._expirationTime != null\n ? this._expirationTime._toProtobuf()\n : null,\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nTRANSACTION_REGISTRY.set(\"systemDelete\", SystemDeleteTransaction._fromProtobuf);\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport FileId from \"../file/FileId.js\";\nimport ContractId from \"../contract/ContractId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ISystemUndeleteTransactionBody} proto.ISystemUndeleteTransactionBody\n * @typedef {import(\"@hashgraph/proto\").IContractID} proto.IContractID\n * @typedef {import(\"@hashgraph/proto\").IFileID} proto.IFileID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../Timestamp.js\").default} Timestamp\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\nexport default class SystemUndeleteTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {FileId | string} [props.fileId]\n * @param {ContractId | string} [props.contractId]\n * @param {Timestamp} [props.expirationTime]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?FileId}\n */\n this._fileId = null;\n\n /**\n * @private\n * @type {?ContractId}\n */\n this._contractId = null;\n\n if (props.fileId != null) {\n this.setFileId(props.fileId);\n }\n\n if (props.contractId != null) {\n this.setContractId(props.contractId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {SystemUndeleteTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const systemUndelete =\n /** @type {proto.ISystemUndeleteTransactionBody} */ (\n body.systemUndelete\n );\n\n return Transaction._fromProtobufTransactions(\n new SystemUndeleteTransaction({\n fileId:\n systemUndelete.fileID != null\n ? FileId._fromProtobuf(\n /** @type {proto.IFileID} */ (\n systemUndelete.fileID\n )\n )\n : undefined,\n contractId:\n systemUndelete.contractID != null\n ? ContractId._fromProtobuf(\n /** @type {proto.IContractID} */ (\n systemUndelete.contractID\n )\n )\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?FileId}\n */\n get fileId() {\n return this._fileId;\n }\n\n /**\n * @param {FileId | string} fileId\n * @returns {this}\n */\n setFileId(fileId) {\n this._requireNotFrozen();\n this._fileId =\n fileId instanceof FileId ? fileId : FileId.fromString(fileId);\n\n return this;\n }\n\n /**\n * @returns {?ContractId}\n */\n get contractId() {\n return this._contractId;\n }\n\n /**\n * @param {ContractId | string} contractId\n * @returns {this}\n */\n setContractId(contractId) {\n this._requireNotFrozen();\n this._contractId =\n contractId instanceof ContractId\n ? contractId\n : ContractId.fromString(contractId);\n\n return this;\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n if (this._fileId != null) {\n return channel.file.systemUndelete(request);\n } else {\n return channel.smartContract.systemUndelete(request);\n }\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"systemUndelete\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ISystemUndeleteTransactionBody}\n */\n _makeTransactionData() {\n return {\n fileID: this._fileId != null ? this._fileId._toProtobuf() : null,\n contractID:\n this._contractId != null\n ? this._contractId._toProtobuf()\n : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"systemUndelete\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n SystemUndeleteTransaction._fromProtobuf\n);\n","import Hbar from \"../Hbar.js\";\nimport TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenAssociateTransactionBody} proto.ITokenAssociateTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Associate a new Hedera™ crypto-currency token.\n */\nexport default class TokenAssociateTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {(TokenId | string)[]} [props.tokenIds]\n * @param {AccountId | string} [props.accountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId[]}\n */\n this._tokenIds = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n\n this._defaultMaxTransactionFee = new Hbar(5);\n\n if (props.tokenIds != null) {\n this.setTokenIds(props.tokenIds);\n }\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenAssociateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const associateToken =\n /** @type {proto.ITokenAssociateTransactionBody} */ (\n body.tokenAssociate\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenAssociateTransaction({\n tokenIds:\n associateToken.tokens != null\n ? associateToken.tokens.map((token) =>\n TokenId._fromProtobuf(token)\n )\n : undefined,\n accountId:\n associateToken.account != null\n ? AccountId._fromProtobuf(associateToken.account)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId[]}\n */\n get tokenIds() {\n return this._tokenIds;\n }\n\n /**\n * @param {(TokenId | string)[]} tokenIds\n * @returns {this}\n */\n setTokenIds(tokenIds) {\n this._requireNotFrozen();\n this._tokenIds = tokenIds.map((tokenId) =>\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone()\n );\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._requireNotFrozen();\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n\n for (const tokenId of this._tokenIds != null ? this._tokenIds : []) {\n if (tokenId != null) {\n tokenId.validateChecksum(client);\n }\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.associateTokens(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenAssociate\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenAssociateTransactionBody}\n */\n _makeTransactionData() {\n return {\n tokens:\n this._tokenIds != null\n ? this._tokenIds.map((tokenId) => tokenId._toProtobuf())\n : null,\n account:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenAssociate\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenAssociateTransaction._fromProtobuf\n);\n","import TokenId from \"./TokenId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenBurnTransactionBody} proto.ITokenBurnTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Burn a new Hedera™ crypto-currency token.\n */\nexport default class TokenBurnTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n * @param {Long | number} [props.amount]\n * @param {(Long | number)[]} [props.serials]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n /**\n * @private\n * @type {?Long}\n */\n this._amount = null;\n\n /**\n * @private\n * @type {Long[]}\n */\n this._serials = [];\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n if (props.amount != null) {\n this.setAmount(props.amount);\n }\n\n if (props.serials != null) {\n this.setSerials(props.serials);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenBurnTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const burnToken = /** @type {proto.ITokenBurnTransactionBody} */ (\n body.tokenBurn\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenBurnTransaction({\n tokenId:\n burnToken.token != null\n ? TokenId._fromProtobuf(burnToken.token)\n : undefined,\n amount: burnToken.amount != null ? burnToken.amount : undefined,\n serials:\n burnToken.serialNumbers != null\n ? burnToken.serialNumbers\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get amount() {\n return this._amount;\n }\n\n /**\n * @param {Long | number} amount\n * @returns {this}\n */\n setAmount(amount) {\n this._requireNotFrozen();\n this._amount = amount instanceof Long ? amount : Long.fromValue(amount);\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n }\n\n /**\n * @returns {Long[]}\n */\n get serials() {\n return this._serials;\n }\n\n /**\n * @param {(Long | number)[]} serials\n * @returns {this}\n */\n setSerials(serials) {\n this._requireNotFrozen();\n this._serials = serials.map((serial) =>\n serial instanceof Long ? serial : Long.fromValue(serial)\n );\n\n return this;\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.burnToken(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenBurn\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenBurnTransactionBody}\n */\n _makeTransactionData() {\n return {\n amount: this._amount,\n serialNumbers: this._serials,\n token: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenBurn\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenBurnTransaction._fromProtobuf\n);\n","import Hbar from \"../Hbar.js\";\nimport Transaction, {\n DEFAULT_AUTO_RENEW_PERIOD,\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport Long from \"long\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Duration from \"../Duration.js\";\nimport CustomFixedFee from \"./CustomFixedFee.js\";\nimport CustomFractionalFee from \"./CustomFractionalFee.js\";\nimport CustomRoyaltyFee from \"./CustomRoyaltyFee.js\";\nimport TokenType from \"./TokenType.js\";\nimport TokenSupplyType from \"./TokenSupplyType.js\";\nimport Key from \"../Key.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenCreateTransactionBody} proto.ITokenCreateTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"./CustomFee.js\").default} CustomFee\n */\n\n/**\n * Create a new Hedera™ crypto-currency token.\n */\nexport default class TokenCreateTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {string} [props.tokenName]\n * @param {string} [props.tokenSymbol]\n * @param {Long | number} [props.decimals]\n * @param {Long | number} [props.initialSupply]\n * @param {AccountId | string} [props.treasuryAccountId]\n * @param {Key} [props.adminKey]\n * @param {Key} [props.kycKey]\n * @param {Key} [props.freezeKey]\n * @param {Key} [props.pauseKey]\n * @param {Key} [props.wipeKey]\n * @param {Key} [props.supplyKey]\n * @param {Key} [props.feeScheduleKey]\n * @param {boolean} [props.freezeDefault]\n * @param {AccountId | string} [props.autoRenewAccountId]\n * @param {Timestamp | Date} [props.expirationTime]\n * @param {Duration | Long | number} [props.autoRenewPeriod]\n * @param {string} [props.tokenMemo]\n * @param {CustomFee[]} [props.customFees]\n * @param {TokenType} [props.tokenType]\n * @param {TokenSupplyType} [props.supplyType]\n * @param {Long | number} [props.maxSupply]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?string}\n */\n this._tokenName = null;\n\n /**\n * @private\n * @type {?string}\n */\n this._tokenSymbol = null;\n\n /**\n * @private\n * @type {?Long}\n */\n this._decimals = null;\n\n /**\n * @private\n * @type {?Long}\n */\n this._initialSupply = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._treasuryAccountId = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._adminKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._kycKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._freezeKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._pauseKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._wipeKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._supplyKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._feeScheduleKey = null;\n\n /**\n * @private\n * @type {?boolean}\n */\n this._freezeDefault = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._autoRenewAccountId = null;\n\n /**\n * @private\n * @type {?Timestamp}\n */\n this._expirationTime = null;\n\n /**\n * @private\n * @type {?Duration}\n */\n this._autoRenewPeriod = new Duration(DEFAULT_AUTO_RENEW_PERIOD);\n\n /**\n * @private\n * @type {?string}\n */\n this._tokenMemo = null;\n\n /**\n * @private\n * @type {CustomFee[]}\n */\n this._customFees = [];\n\n /**\n * @private\n * @type {?TokenType}\n */\n this._tokenType = null;\n\n /**\n * @private\n * @type {?TokenSupplyType}\n */\n this._supplyType = null;\n\n /**\n * @private\n * @type {?Long}\n */\n this._maxSupply = null;\n\n this._defaultMaxTransactionFee = new Hbar(30);\n\n if (props.tokenName != null) {\n this.setTokenName(props.tokenName);\n }\n\n if (props.tokenSymbol != null) {\n this.setTokenSymbol(props.tokenSymbol);\n }\n\n if (props.decimals != null) {\n this.setDecimals(props.decimals);\n }\n\n if (props.initialSupply != null) {\n this.setInitialSupply(props.initialSupply);\n }\n\n if (props.treasuryAccountId != null) {\n this.setTreasuryAccountId(props.treasuryAccountId);\n }\n\n if (props.adminKey != null) {\n this.setAdminKey(props.adminKey);\n }\n\n if (props.kycKey != null) {\n this.setKycKey(props.kycKey);\n }\n\n if (props.freezeKey != null) {\n this.setFreezeKey(props.freezeKey);\n }\n\n if (props.pauseKey != null) {\n this.setPauseKey(props.pauseKey);\n }\n\n if (props.wipeKey != null) {\n this.setWipeKey(props.wipeKey);\n }\n\n if (props.supplyKey != null) {\n this.setSupplyKey(props.supplyKey);\n }\n\n if (props.feeScheduleKey != null) {\n this.setFeeScheduleKey(props.feeScheduleKey);\n }\n\n if (props.freezeDefault != null) {\n this.setFreezeDefault(props.freezeDefault);\n }\n\n if (props.autoRenewAccountId != null) {\n this.setAutoRenewAccountId(props.autoRenewAccountId);\n }\n\n if (props.expirationTime != null) {\n this.setExpirationTime(props.expirationTime);\n }\n\n if (props.autoRenewPeriod != null) {\n this.setAutoRenewPeriod(props.autoRenewPeriod);\n }\n\n if (props.tokenMemo != null) {\n this.setTokenMemo(props.tokenMemo);\n }\n\n if (props.customFees != null) {\n this.setCustomFees(props.customFees);\n }\n\n if (props.tokenType != null) {\n this.setTokenType(props.tokenType);\n }\n\n if (props.supplyType != null) {\n this.setSupplyType(props.supplyType);\n }\n\n if (props.maxSupply != null) {\n this.setMaxSupply(props.maxSupply);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenCreateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const create = /** @type {proto.ITokenCreateTransactionBody} */ (\n body.tokenCreation\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenCreateTransaction({\n tokenName: create.name != null ? create.name : undefined,\n tokenSymbol: create.symbol != null ? create.symbol : undefined,\n decimals: create.decimals != null ? create.decimals : undefined,\n initialSupply:\n create.initialSupply != null\n ? create.initialSupply\n : undefined,\n treasuryAccountId:\n create.treasury != null\n ? AccountId._fromProtobuf(create.treasury)\n : undefined,\n adminKey:\n create.adminKey != null\n ? Key._fromProtobufKey(create.adminKey)\n : undefined,\n kycKey:\n create.kycKey != null\n ? Key._fromProtobufKey(create.kycKey)\n : undefined,\n freezeKey:\n create.freezeKey != null\n ? Key._fromProtobufKey(create.freezeKey)\n : undefined,\n pauseKey:\n create.pauseKey != null\n ? Key._fromProtobufKey(create.pauseKey)\n : undefined,\n wipeKey:\n create.wipeKey != null\n ? Key._fromProtobufKey(create.wipeKey)\n : undefined,\n supplyKey:\n create.supplyKey != null\n ? Key._fromProtobufKey(create.supplyKey)\n : undefined,\n feeScheduleKey:\n create.feeScheduleKey != null\n ? Key._fromProtobufKey(create.feeScheduleKey)\n : undefined,\n freezeDefault:\n create.freezeDefault != null\n ? create.freezeDefault\n : undefined,\n autoRenewAccountId:\n create.autoRenewAccount != null\n ? AccountId._fromProtobuf(create.autoRenewAccount)\n : undefined,\n expirationTime:\n create.expiry != null\n ? Timestamp._fromProtobuf(create.expiry)\n : undefined,\n autoRenewPeriod:\n create.autoRenewPeriod != null\n ? Duration._fromProtobuf(create.autoRenewPeriod)\n : undefined,\n tokenMemo: create.memo != null ? create.memo : undefined,\n customFees:\n create.customFees != null\n ? create.customFees.map((fee) => {\n if (fee.fixedFee != null) {\n return CustomFixedFee._fromProtobuf(fee);\n } else if (fee.fractionalFee != null) {\n return CustomFractionalFee._fromProtobuf(fee);\n } else {\n return CustomRoyaltyFee._fromProtobuf(fee);\n }\n })\n : undefined,\n tokenType:\n create.tokenType != null\n ? TokenType._fromCode(create.tokenType)\n : undefined,\n supplyType:\n create.supplyType != null\n ? TokenSupplyType._fromCode(create.supplyType)\n : undefined,\n maxSupply:\n create.maxSupply != null ? create.maxSupply : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?string}\n */\n get tokenName() {\n return this._tokenName;\n }\n\n /**\n * @param {string} name\n * @returns {this}\n */\n setTokenName(name) {\n this._requireNotFrozen();\n this._tokenName = name;\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get tokenSymbol() {\n return this._tokenSymbol;\n }\n\n /**\n * @param {string} symbol\n * @returns {this}\n */\n setTokenSymbol(symbol) {\n this._requireNotFrozen();\n this._tokenSymbol = symbol;\n\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get decimals() {\n return this._decimals;\n }\n\n /**\n * @param {Long | number} decimals\n * @returns {this}\n */\n setDecimals(decimals) {\n this._requireNotFrozen();\n this._decimals =\n decimals instanceof Long ? decimals : Long.fromValue(decimals);\n\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get initialSupply() {\n return this._initialSupply;\n }\n\n /**\n * @param {Long | number} initialSupply\n * @returns {this}\n */\n setInitialSupply(initialSupply) {\n this._requireNotFrozen();\n this._initialSupply = Long.fromValue(initialSupply);\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get treasuryAccountId() {\n return this._treasuryAccountId;\n }\n\n /**\n * @param {AccountId | string} id\n * @returns {this}\n */\n setTreasuryAccountId(id) {\n this._requireNotFrozen();\n this._treasuryAccountId =\n typeof id === \"string\" ? AccountId.fromString(id) : id.clone();\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get adminKey() {\n return this._adminKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setAdminKey(key) {\n this._requireNotFrozen();\n this._adminKey = key;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get kycKey() {\n return this._kycKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setKycKey(key) {\n this._requireNotFrozen();\n this._kycKey = key;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get freezeKey() {\n return this._freezeKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setFreezeKey(key) {\n this._requireNotFrozen();\n this._freezeKey = key;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get pauseKey() {\n return this._pauseKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setPauseKey(key) {\n this._requireNotFrozen();\n this._pauseKey = key;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get wipeKey() {\n return this._wipeKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setWipeKey(key) {\n this._requireNotFrozen();\n this._wipeKey = key;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get supplyKey() {\n return this._supplyKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setSupplyKey(key) {\n this._requireNotFrozen();\n this._supplyKey = key;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get feeScheduleKey() {\n return this._feeScheduleKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setFeeScheduleKey(key) {\n this._requireNotFrozen();\n this._feeScheduleKey = key;\n\n return this;\n }\n\n /**\n * @returns {?boolean}\n */\n get freezeDefault() {\n return this._freezeDefault;\n }\n\n /**\n * @param {boolean} freeze\n * @returns {this}\n */\n setFreezeDefault(freeze) {\n this._requireNotFrozen();\n this._freezeDefault = freeze;\n\n return this;\n }\n\n /**\n * @returns {?Timestamp}\n */\n get expirationTime() {\n return this._expirationTime;\n }\n\n /**\n * @param {Timestamp | Date} time\n * @returns {this}\n */\n setExpirationTime(time) {\n this._requireNotFrozen();\n this._autoRenewPeriod = null;\n this._expirationTime =\n time instanceof Timestamp ? time : Timestamp.fromDate(time);\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get autoRenewAccountId() {\n return this._autoRenewAccountId;\n }\n\n /**\n * @param {AccountId | string} id\n * @returns {this}\n */\n setAutoRenewAccountId(id) {\n this._requireNotFrozen();\n this._autoRenewAccountId =\n id instanceof AccountId ? id : AccountId.fromString(id);\n\n return this;\n }\n\n /**\n * @returns {?Duration}\n */\n get autoRenewPeriod() {\n return this._autoRenewPeriod;\n }\n\n /**\n * Set the auto renew period for this token.\n *\n * @param {Duration | Long | number} autoRenewPeriod\n * @returns {this}\n */\n setAutoRenewPeriod(autoRenewPeriod) {\n this._requireNotFrozen();\n this._autoRenewPeriod =\n autoRenewPeriod instanceof Duration\n ? autoRenewPeriod\n : new Duration(autoRenewPeriod);\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get tokenMemo() {\n return this._tokenMemo;\n }\n\n /**\n * @param {string} memo\n * @returns {this}\n */\n setTokenMemo(memo) {\n this._requireNotFrozen();\n this._tokenMemo = memo;\n\n return this;\n }\n\n /**\n * @returns {CustomFee[]}\n */\n get customFees() {\n return this._customFees;\n }\n\n /**\n * @param {CustomFee[]} customFees\n * @returns {this}\n */\n setCustomFees(customFees) {\n this._customFees = customFees;\n return this;\n }\n\n /**\n * @returns {?TokenType}\n */\n get tokenType() {\n return this._tokenType;\n }\n\n /**\n * @param {TokenType} tokenType\n * @returns {this}\n */\n setTokenType(tokenType) {\n this._tokenType = tokenType;\n return this;\n }\n\n /**\n * @returns {?TokenSupplyType}\n */\n get supplyType() {\n return this._supplyType;\n }\n\n /**\n * @param {TokenSupplyType} supplyType\n * @returns {this}\n */\n setSupplyType(supplyType) {\n this._supplyType = supplyType;\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get maxSupply() {\n return this._maxSupply;\n }\n\n /**\n * @param {Long | number} maxSupply\n * @returns {this}\n */\n setMaxSupply(maxSupply) {\n this._maxSupply =\n typeof maxSupply === \"number\"\n ? Long.fromNumber(maxSupply)\n : maxSupply;\n return this;\n }\n\n /**\n * @param {?import(\"../client/Client.js\").default} client\n * @returns {this}\n */\n freezeWith(client) {\n if (\n this._autoRenewPeriod != null &&\n client != null &&\n client.operatorAccountId\n ) {\n this._autoRenewAccountId = client.operatorAccountId;\n }\n\n return super.freezeWith(client);\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._treasuryAccountId != null) {\n this._treasuryAccountId.validateChecksum(client);\n }\n\n if (this._autoRenewAccountId != null) {\n this._autoRenewAccountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.createToken(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenCreation\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenCreateTransactionBody}\n */\n _makeTransactionData() {\n return {\n name: this._tokenName,\n symbol: this._tokenSymbol,\n decimals: this._decimals != null ? this._decimals.toInt() : null,\n initialSupply: this._initialSupply,\n treasury:\n this._treasuryAccountId != null\n ? this._treasuryAccountId._toProtobuf()\n : null,\n adminKey:\n this._adminKey != null ? this._adminKey._toProtobufKey() : null,\n kycKey: this._kycKey != null ? this._kycKey._toProtobufKey() : null,\n freezeKey:\n this._freezeKey != null\n ? this._freezeKey._toProtobufKey()\n : null,\n pauseKey:\n this._pauseKey != null ? this._pauseKey._toProtobufKey() : null,\n wipeKey:\n this._wipeKey != null ? this._wipeKey._toProtobufKey() : null,\n supplyKey:\n this._supplyKey != null\n ? this._supplyKey._toProtobufKey()\n : null,\n feeScheduleKey:\n this._feeScheduleKey != null\n ? this._feeScheduleKey._toProtobufKey()\n : null,\n freezeDefault: this._freezeDefault,\n autoRenewAccount:\n this._autoRenewAccountId != null\n ? this._autoRenewAccountId._toProtobuf()\n : null,\n expiry:\n this._expirationTime != null\n ? this._expirationTime._toProtobuf()\n : null,\n autoRenewPeriod:\n this._autoRenewPeriod != null\n ? this._autoRenewPeriod._toProtobuf()\n : null,\n memo: this._tokenMemo,\n customFees: this.customFees.map((fee) => fee._toProtobuf()),\n tokenType: this._tokenType != null ? this._tokenType._code : null,\n supplyType:\n this._supplyType != null ? this._supplyType._code : null,\n maxSupply: this.maxSupply,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenCreation\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenCreateTransaction._fromProtobuf\n);\n","import TokenId from \"./TokenId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenDeleteTransactionBody} proto.ITokenDeleteTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Delete a new Hedera™ crypto-currency token.\n */\nexport default class TokenDeleteTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenDeleteTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const deleteToken = /** @type {proto.ITokenDeleteTransactionBody} */ (\n body.tokenDeletion\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenDeleteTransaction({\n tokenId:\n deleteToken.token != null\n ? TokenId._fromProtobuf(deleteToken.token)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.deleteToken(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenDeletion\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenDeleteTransactionBody}\n */\n _makeTransactionData() {\n return {\n token: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenDeletion\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenDeleteTransaction._fromProtobuf\n);\n","import Hbar from \"../Hbar.js\";\nimport TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenDissociateTransactionBody} proto.ITokenDissociateTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Dissociate a new Hedera™ crypto-currency token.\n */\nexport default class TokenDissociateTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {(TokenId | string)[]} [props.tokenIds]\n * @param {AccountId | string} [props.accountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId[]}\n */\n this._tokenIds = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n\n this._defaultMaxTransactionFee = new Hbar(5);\n\n if (props.tokenIds != null) {\n this.setTokenIds(props.tokenIds);\n }\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenDissociateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const dissociateToken =\n /** @type {proto.ITokenDissociateTransactionBody} */ (\n body.tokenDissociate\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenDissociateTransaction({\n tokenIds:\n dissociateToken.tokens != null\n ? dissociateToken.tokens.map((token) =>\n TokenId._fromProtobuf(token)\n )\n : undefined,\n accountId:\n dissociateToken.account != null\n ? AccountId._fromProtobuf(dissociateToken.account)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId[]}\n */\n get tokenIds() {\n return this._tokenIds;\n }\n\n /**\n * @param {(TokenId | string)[]} tokenIds\n * @returns {this}\n */\n setTokenIds(tokenIds) {\n this._requireNotFrozen();\n this._tokenIds = tokenIds.map((tokenId) =>\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone()\n );\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._requireNotFrozen();\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n\n for (const tokenId of this._tokenIds != null ? this._tokenIds : []) {\n if (tokenId != null) {\n tokenId.validateChecksum(client);\n }\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.dissociateTokens(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenDissociate\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenDissociateTransactionBody}\n */\n _makeTransactionData() {\n return {\n tokens:\n this._tokenIds != null\n ? this._tokenIds.map((tokenId) => tokenId._toProtobuf())\n : null,\n account:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenDissociate\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenDissociateTransaction._fromProtobuf\n);\n","import TokenId from \"./TokenId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport CustomFixedFee from \"./CustomFixedFee.js\";\nimport CustomFractionalFee from \"./CustomFractionalFee.js\";\nimport CustomRoyaltyFee from \"./CustomRoyaltyFee.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenFeeScheduleUpdateTransactionBody} proto.ITokenFeeScheduleUpdateTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"./CustomFee.js\").default} CustomFee\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * FeeScheduleUpdate a new Hedera™ crypto-currency token.\n */\nexport default class TokenFeeScheduleUpdateTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n * @param {CustomFee[]} [props.customFees]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n /**\n * @private\n * @type {CustomFee[]}\n */\n this._customFees = [];\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n if (props.customFees != null) {\n this.setCustomFees(props.customFees);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenFeeScheduleUpdateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const feeScheduleUpdate =\n /** @type {proto.ITokenFeeScheduleUpdateTransactionBody} */ (\n body.tokenFeeScheduleUpdate\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenFeeScheduleUpdateTransaction({\n tokenId:\n feeScheduleUpdate.tokenId != null\n ? TokenId._fromProtobuf(feeScheduleUpdate.tokenId)\n : undefined,\n customFees:\n feeScheduleUpdate.customFees != null\n ? feeScheduleUpdate.customFees.map((fee) => {\n if (fee.fixedFee != null) {\n return CustomFixedFee._fromProtobuf(fee);\n } else if (fee.fractionalFee != null) {\n return CustomFractionalFee._fromProtobuf(fee);\n } else {\n return CustomRoyaltyFee._fromProtobuf(fee);\n }\n })\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : TokenId._fromProtobuf(tokenId._toProtobuf());\n\n return this;\n }\n\n /**\n * @returns {CustomFee[]}\n */\n get customFees() {\n return this._customFees;\n }\n\n /**\n * @param {CustomFee[]} fees\n * @returns {this}\n */\n setCustomFees(fees) {\n this._requireNotFrozen();\n this._customFees = fees;\n\n return this;\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.updateTokenFeeSchedule(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenFeeScheduleUpdate\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenFeeScheduleUpdateTransactionBody}\n */\n _makeTransactionData() {\n return {\n tokenId: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n customFees: this._customFees.map((fee) => fee._toProtobuf()),\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenFeeScheduleUpdate\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenFeeScheduleUpdateTransaction._fromProtobuf\n);\n","import TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenFreezeAccountTransactionBody} proto.ITokenFreezeAccountTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Freeze a new Hedera™ crypto-currency token.\n */\nexport default class TokenFreezeTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n * @param {AccountId | string} [props.accountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenFreezeTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const freezeToken =\n /** @type {proto.ITokenFreezeAccountTransactionBody} */ (\n body.tokenFreeze\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenFreezeTransaction({\n tokenId:\n freezeToken.token != null\n ? TokenId._fromProtobuf(freezeToken.token)\n : undefined,\n accountId:\n freezeToken.account != null\n ? AccountId._fromProtobuf(freezeToken.account)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._requireNotFrozen();\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.freezeTokenAccount(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenFreeze\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenFreezeAccountTransactionBody}\n */\n _makeTransactionData() {\n return {\n token: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n account:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenFreeze\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenFreezeTransaction._fromProtobuf\n);\n","import TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenGrantKycTransactionBody} proto.ITokenGrantKycTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * GrantKyc a new Hedera™ crypto-currency token.\n */\nexport default class TokenGrantKycTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n * @param {AccountId | string} [props.accountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenGrantKycTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const grantKycToken =\n /** @type {proto.ITokenGrantKycTransactionBody} */ (\n body.tokenGrantKyc\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenGrantKycTransaction({\n tokenId:\n grantKycToken.token != null\n ? TokenId._fromProtobuf(grantKycToken.token)\n : undefined,\n accountId:\n grantKycToken.account != null\n ? AccountId._fromProtobuf(grantKycToken.account)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._requireNotFrozen();\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.grantKycToTokenAccount(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenGrantKyc\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenGrantKycTransactionBody}\n */\n _makeTransactionData() {\n return {\n token: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n account:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenGrantKyc\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenGrantKycTransaction._fromProtobuf\n);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport TokenId from \"./TokenId.js\";\nimport TokenInfo from \"./TokenInfo.js\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ITokenInfo} proto.ITokenInfo\n * @typedef {import(\"@hashgraph/proto\").ITokenGetInfoQuery} proto.ITokenGetInfoQuery\n * @typedef {import(\"@hashgraph/proto\").ITokenGetInfoResponse} proto.ITokenGetInfoResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * @augments {Query}\n */\nexport default class TokenInfoQuery extends Query {\n /**\n * @param {object} properties\n * @param {TokenId | string} [properties.tokenId]\n */\n constructor(properties = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n if (properties.tokenId != null) {\n this.setTokenId(properties.tokenId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {TokenInfoQuery}\n */\n static _fromProtobuf(query) {\n const info = /** @type {proto.ITokenGetInfoQuery} */ (\n query.tokenGetInfo\n );\n\n return new TokenInfoQuery({\n tokenId:\n info.token != null\n ? TokenId._fromProtobuf(info.token)\n : undefined,\n });\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * Set the token ID for which the info is being requested.\n *\n * @param {TokenId | string} tokenId\n * @returns {TokenInfoQuery}\n */\n setTokenId(tokenId) {\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @override\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async getCost(client) {\n let cost = await super.getCost(client);\n\n if (cost.toTinybars().greaterThan(25)) {\n return cost;\n } else {\n return Hbar.fromTinybars(25);\n }\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.getTokenInfo(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const tokenGetInfo = /** @type {proto.ITokenGetInfoResponse} */ (\n response.tokenGetInfo\n );\n return /** @type {proto.IResponseHeader} */ (tokenGetInfo.header);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const info = /** @type {proto.ITokenGetInfoResponse} */ (\n response.tokenGetInfo\n );\n\n return Promise.resolve(\n TokenInfo._fromProtobuf(\n /** @type {proto.ITokenInfo} */ (info.tokenInfo)\n )\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n tokenGetInfo: {\n header,\n token:\n this._tokenId != null ? this._tokenId._toProtobuf() : null,\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"tokenGetInfo\", TokenInfoQuery._fromProtobuf);\n","import TokenId from \"./TokenId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport Long from \"long\";\nimport * as hex from \"../encoding/hex.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenMintTransactionBody} proto.ITokenMintTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Mint a new Hedera™ crypto-currency token.\n */\nexport default class TokenMintTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n * @param {Long | number} [props.amount]\n * @param {Uint8Array[]} [props.metadata]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n /**\n * @private\n * @type {?Long}\n */\n this._amount = null;\n\n /**\n * @private\n * @type {Uint8Array[]}\n */\n this._metadata = [];\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n if (props.amount != null) {\n this.setAmount(props.amount);\n }\n\n if (props.metadata != null) {\n this.setMetadata(props.metadata);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenMintTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const mintToken = /** @type {proto.ITokenMintTransactionBody} */ (\n body.tokenMint\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenMintTransaction({\n tokenId:\n mintToken.token != null\n ? TokenId._fromProtobuf(mintToken.token)\n : undefined,\n amount: mintToken.amount != null ? mintToken.amount : undefined,\n metadata:\n mintToken.metadata != null ? mintToken.metadata : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get amount() {\n return this._amount;\n }\n\n /**\n * @param {Long | number} amount\n * @returns {this}\n */\n setAmount(amount) {\n this._requireNotFrozen();\n this._amount = amount instanceof Long ? amount : Long.fromValue(amount);\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n }\n\n /**\n * @returns {Uint8Array[]}\n */\n get metadata() {\n return this._metadata;\n }\n\n /**\n * @param {Uint8Array | string} metadata\n * @returns {this}\n */\n addMetadata(metadata) {\n this._requireNotFrozen();\n\n if (typeof metadata === \"string\") {\n console.warn(\n \"Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead.\"\n );\n }\n\n this._metadata.push(\n typeof metadata === \"string\" ? hex.decode(metadata) : metadata\n );\n\n return this;\n }\n\n /**\n * @param {Uint8Array[]} metadata\n * @returns {this}\n */\n setMetadata(metadata) {\n this._requireNotFrozen();\n\n for (const data of metadata) {\n if (typeof data === \"string\") {\n console.warn(\n \"Passing a `string` for token metadata is considered a bug, and has been removed. Please provide a `Uint8Array` instead.\"\n );\n break;\n }\n }\n\n this._metadata = metadata.map((data) =>\n typeof data === \"string\" ? hex.decode(data) : data\n );\n\n return this;\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.mintToken(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenMint\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenMintTransactionBody}\n */\n _makeTransactionData() {\n return {\n amount: this._amount,\n token: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n metadata: this._metadata,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenMint\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenMintTransaction._fromProtobuf\n);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport NftId from \"./NftId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport TokenId from \"../token/TokenId.js\";\nimport TokenNftInfo from \"./TokenNftInfo.js\";\nimport Hbar from \"../Hbar.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenNftInfo} proto.ITokenNftInfo\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").ITokenGetNftInfoQuery} proto.ITokenGetNftInfoQuery\n * @typedef {import(\"@hashgraph/proto\").ITokenGetNftInfosQuery} proto.ITokenGetNftInfosQuery\n * @typedef {import(\"@hashgraph/proto\").ITokenGetAccountNftInfosQuery} proto.ITokenGetAccountNftInfosQuery\n * @typedef {import(\"@hashgraph/proto\").ITokenGetNftInfoResponse} proto.ITokenGetNftInfoResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenGetNftInfosResponse} proto.ITokenGetNftInfosResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenGetAccountNftInfosResponse} proto.ITokenGetAccountNftInfosResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n */\n\n/**\n * @augments {Query}\n */\nexport default class TokenNftInfoQuery extends Query {\n /**\n * @param {object} properties\n * @param {NftId | string} [properties.nftId]\n * @param {AccountId | string} [properties.accountId]\n * @param {TokenId | string} [properties.tokenId]\n * @param {Long | number} [properties.start]\n * @param {Long | number} [properties.end]\n */\n constructor(properties = {}) {\n super();\n\n /**\n * @private\n * @type {?NftId}\n */\n this._nftId = null;\n if (properties.nftId != null) {\n this.setNftId(properties.nftId);\n }\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n if (properties.accountId != null) {\n // eslint-disable-next-line deprecation/deprecation\n this.setAccountId(properties.accountId);\n }\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n if (properties.tokenId != null) {\n // eslint-disable-next-line deprecation/deprecation\n this.setTokenId(properties.tokenId);\n }\n\n /**\n * @private\n * @type {?Long}\n */\n this._start = null;\n if (properties.start != null) {\n // eslint-disable-next-line deprecation/deprecation\n this.setStart(properties.start);\n }\n\n /**\n * @private\n * @type {?Long}\n */\n this._end = null;\n if (properties.end != null) {\n // eslint-disable-next-line deprecation/deprecation\n this.setEnd(properties.end);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {TokenNftInfoQuery}\n */\n static _fromProtobuf(query) {\n if (query.tokenGetNftInfo != null) {\n const info = /** @type {proto.ITokenGetNftInfoQuery} */ (\n query.tokenGetNftInfo\n );\n\n return new TokenNftInfoQuery({\n nftId:\n info.nftID != null\n ? NftId._fromProtobuf(info.nftID)\n : undefined,\n });\n } else if (query.tokenGetAccountNftInfos != null) {\n const info = /** @type {proto.ITokenGetAccountNftInfosQuery} */ (\n query.tokenGetAccountNftInfos\n );\n\n return new TokenNftInfoQuery({\n accountId:\n info.accountID != null\n ? AccountId._fromProtobuf(info.accountID)\n : undefined,\n start: info.start != null ? info.start : undefined,\n end: info.end != null ? info.end : undefined,\n });\n } else {\n const info = /** @type {proto.ITokenGetNftInfosQuery} */ (\n query.tokenGetNftInfos\n );\n\n return new TokenNftInfoQuery({\n tokenId:\n info.tokenID != null\n ? TokenId._fromProtobuf(info.tokenID)\n : undefined,\n start: info.start != null ? info.start : undefined,\n end: info.end != null ? info.end : undefined,\n });\n }\n }\n\n /**\n * @returns {?NftId}\n */\n get nftId() {\n return this._nftId;\n }\n\n /**\n * Set the token ID for which the info is being requested.\n *\n * @param {NftId | string} nftId\n * @returns {TokenNftInfoQuery}\n */\n setNftId(nftId) {\n this._nftId =\n typeof nftId === \"string\"\n ? NftId.fromString(nftId)\n : NftId._fromProtobuf(nftId._toProtobuf());\n\n return this;\n }\n\n /**\n * @deprecated with no replacement\n * @returns {?AccountId}\n */\n get accountId() {\n console.warn(\n \"`TokenNftInfoQuery.accountId` is deprecated with no replacement\"\n );\n return this._accountId;\n }\n\n /**\n * @deprecated with no replacement\n * Set the token ID for which the info is being requested.\n * @param {AccountId | string} accountId\n * @returns {TokenNftInfoQuery}\n */\n setAccountId(accountId) {\n console.warn(\n \"`TokenNftInfoQuery.setAccountId()` is deprecated with no replacement\"\n );\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : AccountId._fromProtobuf(accountId._toProtobuf());\n\n return this;\n }\n\n /**\n * @deprecated with no replacement\n * @returns {?TokenId}\n */\n get tokenId() {\n console.warn(\n \"`TokenNftInfoQuery.tokenId` is deprecated with no replacement\"\n );\n return this._tokenId;\n }\n\n /**\n * @deprecated with no replacement\n * Set the token ID for which the info is being requested.\n * @param {TokenId | string} tokenId\n * @returns {TokenNftInfoQuery}\n */\n setTokenId(tokenId) {\n console.warn(\n \"`TokenNftInfoQuery.setTokenId()` is deprecated with no replacement\"\n );\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : TokenId._fromProtobuf(tokenId._toProtobuf());\n\n return this;\n }\n\n /**\n * @deprecated with no replacement\n * @returns {?Long}\n */\n get start() {\n console.warn(\n \"`TokenNftInfoQuery.start` is deprecated with no replacement\"\n );\n return this._start;\n }\n\n /**\n * @deprecated with no replacement\n * Set the token ID for which the info is being requested.\n * @param {Long | number} start\n * @returns {TokenNftInfoQuery}\n */\n setStart(start) {\n console.warn(\n \"`TokenNftInfoQuery.setStart()` is deprecated with no replacement\"\n );\n this._start =\n typeof start === \"number\" ? Long.fromNumber(start) : start;\n\n return this;\n }\n\n /**\n * @deprecated with no replacement\n * @returns {?Long}\n */\n get end() {\n console.warn(\n \"`TokenNftInfoQuery.end` is deprecated with no replacement\"\n );\n return this._end;\n }\n\n /**\n * @deprecated with no replacement\n * Set the token ID for which the info is being requested.\n * @param {Long | number} end\n * @returns {TokenNftInfoQuery}\n */\n setEnd(end) {\n console.warn(\n \"`TokenNftInfoQuery.setEnd()` is deprecated with no replacement\"\n );\n this._end = typeof end === \"number\" ? Long.fromNumber(end) : end;\n\n return this;\n }\n\n /**\n * @override\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async getCost(client) {\n let cost = await super.getCost(client);\n\n if (cost.toTinybars().greaterThan(25)) {\n return cost;\n } else {\n return Hbar.fromTinybars(25);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.getTokenNftInfo(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const infos = /** @type {proto.ITokenGetNftInfoResponse} */ (\n response.tokenGetNftInfo\n );\n\n return /** @type {proto.IResponseHeader} */ (infos.header);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const nfts = [\n /** @type {proto.ITokenNftInfo} */\n (\n /** @type {proto.ITokenGetNftInfoResponse} */ (\n response.tokenGetNftInfo\n ).nft\n ),\n ];\n\n return Promise.resolve(\n nfts.map((nft) =>\n TokenNftInfo._fromProtobuf(\n /** @type {proto.ITokenNftInfo} */ (nft)\n )\n )\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n tokenGetNftInfo: {\n header,\n nftID: this._nftId != null ? this._nftId._toProtobuf() : null,\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"tokenGetNftInfo\", TokenNftInfoQuery._fromProtobuf);\n","import TokenId from \"./TokenId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenPauseTransactionBody} proto.ITokenPauseTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * Pause a new Hedera™ crypto-currency token.\n */\nexport default class TokenPauseTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenPauseTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const pauseToken = /** @type {proto.ITokenPauseTransactionBody} */ (\n body.tokenPause\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenPauseTransaction({\n tokenId:\n pauseToken.token != null\n ? TokenId._fromProtobuf(pauseToken.token)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.pauseToken(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenPause\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenPauseTransactionBody}\n */\n _makeTransactionData() {\n return {\n token: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenPause\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenPauseTransaction._fromProtobuf\n);\n","import TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenRevokeKycTransactionBody} proto.ITokenRevokeKycTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * RevokeKyc a new Hedera™ crypto-currency token.\n */\nexport default class TokenRevokeKycTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n * @param {AccountId | string} [props.accountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenRevokeKycTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const revokeKycToken =\n /** @type {proto.ITokenRevokeKycTransactionBody} */ (\n body.tokenRevokeKyc\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenRevokeKycTransaction({\n tokenId:\n revokeKycToken.token != null\n ? TokenId._fromProtobuf(revokeKycToken.token)\n : undefined,\n accountId:\n revokeKycToken.account != null\n ? AccountId._fromProtobuf(revokeKycToken.account)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._requireNotFrozen();\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.revokeKycFromTokenAccount(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenRevokeKyc\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenRevokeKycTransactionBody}\n */\n _makeTransactionData() {\n return {\n token: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n account:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenRevokeKyc\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenRevokeKycTransaction._fromProtobuf\n);\n","import TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenUnfreezeAccountTransactionBody} proto.ITokenUnfreezeAccountTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Unfreeze a new Hedera™ crypto-currency token.\n */\nexport default class TokenUnfreezeTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n * @param {AccountId | string} [props.accountId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenUnfreezeTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const unfreezeToken =\n /** @type {proto.ITokenUnfreezeAccountTransactionBody} */ (\n body.tokenUnfreeze\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenUnfreezeTransaction({\n tokenId:\n unfreezeToken.token != null\n ? TokenId._fromProtobuf(unfreezeToken.token)\n : undefined,\n accountId:\n unfreezeToken.account != null\n ? AccountId._fromProtobuf(unfreezeToken.account)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._requireNotFrozen();\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.unfreezeTokenAccount(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenUnfreeze\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenUnfreezeAccountTransactionBody}\n */\n _makeTransactionData() {\n return {\n token: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n account:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenUnfreeze\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenUnfreezeTransaction._fromProtobuf\n);\n","import TokenId from \"./TokenId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenUnpauseTransactionBody} proto.ITokenUnpauseTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * Unpause a new Hedera™ crypto-currency token.\n */\nexport default class TokenUnpauseTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenUnpauseTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const unpauseToken = /** @type {proto.ITokenUnpauseTransactionBody} */ (\n body.tokenUnpause\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenUnpauseTransaction({\n tokenId:\n unpauseToken.token != null\n ? TokenId._fromProtobuf(unpauseToken.token)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.unpauseToken(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenUnpause\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenUnpauseTransactionBody}\n */\n _makeTransactionData() {\n return {\n token: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenUnpause\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenUnpauseTransaction._fromProtobuf\n);\n","import TokenId from \"./TokenId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport Duration from \"../Duration.js\";\nimport Key from \"../Key.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenUpdateTransactionBody} proto.ITokenUpdateTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Update a new Hedera™ crypto-currency token.\n */\nexport default class TokenUpdateTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n * @param {string} [props.tokenName]\n * @param {string} [props.tokenSymbol]\n * @param {AccountId | string} [props.treasuryAccountId]\n * @param {Key} [props.adminKey]\n * @param {Key} [props.kycKey]\n * @param {Key} [props.freezeKey]\n * @param {Key} [props.wipeKey]\n * @param {Key} [props.supplyKey]\n * @param {AccountId | string} [props.autoRenewAccountId]\n * @param {Timestamp | Date} [props.expirationTime]\n * @param {Duration | Long | number} [props.autoRenewPeriod]\n * @param {string} [props.tokenMemo]\n * @param {Key} [props.feeScheduleKey]\n * @param {Key} [props.pauseKey]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n /**\n * @private\n * @type {?string}\n */\n this._tokenName = null;\n\n /**\n * @private\n * @type {?string}\n */\n this._tokenSymbol = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._treasuryAccountId = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._adminKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._kycKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._freezeKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._wipeKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._supplyKey = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._autoRenewAccountId = null;\n\n /**\n * @private\n * @type {?Timestamp}\n */\n this._expirationTime = null;\n\n /**\n * @private\n * @type {?Duration}\n */\n this._autoRenewPeriod = null;\n\n /**\n * @private\n * @type {?string}\n */\n this._tokenMemo = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._feeScheduleKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._pauseKey = null;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n if (props.tokenName != null) {\n this.setTokenName(props.tokenName);\n }\n\n if (props.tokenSymbol != null) {\n this.setTokenSymbol(props.tokenSymbol);\n }\n\n if (props.treasuryAccountId != null) {\n this.setTreasuryAccountId(props.treasuryAccountId);\n }\n\n if (props.adminKey != null) {\n this.setAdminKey(props.adminKey);\n }\n\n if (props.kycKey != null) {\n this.setKycKey(props.kycKey);\n }\n\n if (props.freezeKey != null) {\n this.setFreezeKey(props.freezeKey);\n }\n\n if (props.wipeKey != null) {\n this.setWipeKey(props.wipeKey);\n }\n\n if (props.supplyKey != null) {\n this.setSupplyKey(props.supplyKey);\n }\n\n if (props.autoRenewAccountId != null) {\n this.setAutoRenewAccountId(props.autoRenewAccountId);\n }\n\n if (props.expirationTime != null) {\n this.setExpirationTime(props.expirationTime);\n }\n\n if (props.autoRenewPeriod != null) {\n this.setAutoRenewPeriod(props.autoRenewPeriod);\n }\n\n if (props.tokenMemo != null) {\n this.setTokenMemo(props.tokenMemo);\n }\n\n if (props.feeScheduleKey != null) {\n this.setFeeScheduleKey(props.feeScheduleKey);\n }\n\n if (props.pauseKey != null) {\n this.setPauseKey(props.pauseKey);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenUpdateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const update = /** @type {proto.ITokenUpdateTransactionBody} */ (\n body.tokenUpdate\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenUpdateTransaction({\n tokenId:\n update.token != null\n ? TokenId._fromProtobuf(update.token)\n : undefined,\n tokenName: update.name != null ? update.name : undefined,\n tokenSymbol: update.symbol != null ? update.symbol : undefined,\n treasuryAccountId:\n update.treasury != null\n ? AccountId._fromProtobuf(update.treasury)\n : undefined,\n adminKey:\n update.adminKey != null\n ? Key._fromProtobufKey(update.adminKey)\n : undefined,\n kycKey:\n update.kycKey != null\n ? Key._fromProtobufKey(update.kycKey)\n : undefined,\n freezeKey:\n update.freezeKey != null\n ? Key._fromProtobufKey(update.freezeKey)\n : undefined,\n wipeKey:\n update.wipeKey != null\n ? Key._fromProtobufKey(update.wipeKey)\n : undefined,\n supplyKey:\n update.supplyKey != null\n ? Key._fromProtobufKey(update.supplyKey)\n : undefined,\n autoRenewAccountId:\n update.autoRenewAccount != null\n ? AccountId._fromProtobuf(update.autoRenewAccount)\n : undefined,\n expirationTime:\n update.expiry != null\n ? Timestamp._fromProtobuf(update.expiry)\n : undefined,\n autoRenewPeriod:\n update.autoRenewPeriod != null\n ? Duration._fromProtobuf(update.autoRenewPeriod)\n : undefined,\n tokenMemo:\n update.memo != null\n ? update.memo.value != null\n ? update.memo.value\n : undefined\n : undefined,\n feeScheduleKey:\n update.feeScheduleKey != null\n ? Key._fromProtobufKey(update.feeScheduleKey)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get tokenName() {\n return this._tokenName;\n }\n\n /**\n * @param {string} name\n * @returns {this}\n */\n setTokenName(name) {\n this._requireNotFrozen();\n this._tokenName = name;\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get tokenSymbol() {\n return this._tokenSymbol;\n }\n\n /**\n * @param {string} symbol\n * @returns {this}\n */\n setTokenSymbol(symbol) {\n this._requireNotFrozen();\n this._tokenSymbol = symbol;\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get treasuryAccountId() {\n return this._treasuryAccountId;\n }\n\n /**\n * @param {AccountId | string} id\n * @returns {this}\n */\n setTreasuryAccountId(id) {\n this._requireNotFrozen();\n this._treasuryAccountId =\n typeof id === \"string\" ? AccountId.fromString(id) : id.clone();\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get adminKey() {\n return this._adminKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setAdminKey(key) {\n this._requireNotFrozen();\n this._adminKey = key;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get kycKey() {\n return this._kycKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setKycKey(key) {\n this._requireNotFrozen();\n this._kycKey = key;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get freezeKey() {\n return this._freezeKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setFreezeKey(key) {\n this._requireNotFrozen();\n this._freezeKey = key;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get wipeKey() {\n return this._wipeKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setWipeKey(key) {\n this._requireNotFrozen();\n this._wipeKey = key;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get supplyKey() {\n return this._supplyKey;\n }\n\n /**\n * @param {Key} key\n * @returns {this}\n */\n setSupplyKey(key) {\n this._requireNotFrozen();\n this._supplyKey = key;\n\n return this;\n }\n\n /**\n * @deprecated\n * @param {Key} key\n * @returns {this}\n */\n setsupplyKey(key) {\n this._requireNotFrozen();\n this._supplyKey = key;\n\n return this;\n }\n\n /**\n * @returns {?Timestamp}\n */\n get expirationTime() {\n return this._expirationTime;\n }\n\n /**\n * @param {Timestamp | Date} time\n * @returns {this}\n */\n setExpirationTime(time) {\n this._requireNotFrozen();\n this._expirationTime =\n time instanceof Timestamp ? time : Timestamp.fromDate(time);\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get autoRenewAccountId() {\n return this._autoRenewAccountId;\n }\n\n /**\n * @param {AccountId | string} id\n * @returns {this}\n */\n setAutoRenewAccountId(id) {\n this._requireNotFrozen();\n this._autoRenewAccountId =\n id instanceof AccountId ? id : AccountId.fromString(id);\n\n return this;\n }\n\n /**\n * @returns {?Duration}\n */\n get autoRenewPeriod() {\n return this._autoRenewPeriod;\n }\n\n /**\n * Set the auto renew period for this token.\n *\n * @param {Duration | Long | number} autoRenewPeriod\n * @returns {this}\n */\n setAutoRenewPeriod(autoRenewPeriod) {\n this._requireNotFrozen();\n this._autoRenewPeriod =\n autoRenewPeriod instanceof Duration\n ? autoRenewPeriod\n : new Duration(autoRenewPeriod);\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get tokenMemo() {\n return this._tokenMemo;\n }\n\n /**\n * @param {string} tokenMemo\n * @returns {this}\n */\n setTokenMemo(tokenMemo) {\n this._requireNotFrozen();\n this._tokenMemo = tokenMemo;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get feeScheduleKey() {\n return this._feeScheduleKey;\n }\n\n /**\n * @param {Key} feeScheduleKey\n * @returns {this}\n */\n setFeeScheduleKey(feeScheduleKey) {\n this._requireNotFrozen();\n this._feeScheduleKey = feeScheduleKey;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get pauseKey() {\n return this._pauseKey;\n }\n\n /**\n * @param {Key} pauseKey\n * @returns {this}\n */\n setPauseKey(pauseKey) {\n this._requireNotFrozen();\n this._pauseKey = pauseKey;\n return this;\n }\n\n /**\n * @returns {this}\n */\n clearTokenMemo() {\n this._requireNotFrozen();\n this._tokenMemo = null;\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n\n if (this._treasuryAccountId != null) {\n this._treasuryAccountId.validateChecksum(client);\n }\n\n if (this._autoRenewAccountId != null) {\n this._autoRenewAccountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.updateToken(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenUpdate\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenUpdateTransactionBody}\n */\n _makeTransactionData() {\n return {\n token: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n name: this.tokenName,\n symbol: this.tokenSymbol,\n treasury:\n this._treasuryAccountId != null\n ? this._treasuryAccountId._toProtobuf()\n : null,\n adminKey:\n this._adminKey != null ? this._adminKey._toProtobufKey() : null,\n kycKey: this._kycKey != null ? this._kycKey._toProtobufKey() : null,\n freezeKey:\n this._freezeKey != null\n ? this._freezeKey._toProtobufKey()\n : null,\n wipeKey:\n this._wipeKey != null ? this._wipeKey._toProtobufKey() : null,\n supplyKey:\n this._supplyKey != null\n ? this._supplyKey._toProtobufKey()\n : null,\n autoRenewAccount:\n this._autoRenewAccountId != null\n ? this._autoRenewAccountId._toProtobuf()\n : null,\n expiry:\n this._expirationTime != null\n ? this._expirationTime._toProtobuf()\n : null,\n autoRenewPeriod:\n this._autoRenewPeriod != null\n ? this._autoRenewPeriod._toProtobuf()\n : null,\n memo:\n this._tokenMemo != null\n ? {\n value: this._tokenMemo,\n }\n : null,\n feeScheduleKey:\n this._feeScheduleKey != null\n ? this._feeScheduleKey._toProtobufKey()\n : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenUpdate\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenUpdateTransaction._fromProtobuf\n);\n","import TokenId from \"./TokenId.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport Long from \"long\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ITokenWipeAccountTransactionBody} proto.ITokenWipeAccountTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Wipe a new Hedera™ crypto-currency token.\n */\nexport default class TokenWipeTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {TokenId | string} [props.tokenId]\n * @param {AccountId | string} [props.accountId]\n * @param {Long | number} [props.amount]\n * @param {(Long | number)[]} [props.serials]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TokenId}\n */\n this._tokenId = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._accountId = null;\n\n /**\n * @private\n * @type {Long[]}\n */\n this._serials = [];\n\n /**\n * @private\n * @type {?Long}\n */\n this._amount = null;\n\n if (props.tokenId != null) {\n this.setTokenId(props.tokenId);\n }\n\n if (props.accountId != null) {\n this.setAccountId(props.accountId);\n }\n\n if (props.amount != null) {\n this.setAmount(props.amount);\n }\n\n if (props.serials != null) {\n this.setSerials(props.serials);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TokenWipeTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const wipeToken =\n /** @type {proto.ITokenWipeAccountTransactionBody} */ (\n body.tokenWipe\n );\n\n return Transaction._fromProtobufTransactions(\n new TokenWipeTransaction({\n tokenId:\n wipeToken.token != null\n ? TokenId._fromProtobuf(wipeToken.token)\n : undefined,\n accountId:\n wipeToken.account != null\n ? AccountId._fromProtobuf(wipeToken.account)\n : undefined,\n amount: wipeToken.amount != null ? wipeToken.amount : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TokenId}\n */\n get tokenId() {\n return this._tokenId;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @returns {this}\n */\n setTokenId(tokenId) {\n this._requireNotFrozen();\n this._tokenId =\n typeof tokenId === \"string\"\n ? TokenId.fromString(tokenId)\n : tokenId.clone();\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @returns {this}\n */\n setAccountId(accountId) {\n this._requireNotFrozen();\n this._accountId =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get amount() {\n return this._amount;\n }\n\n /**\n * @param {Long | number} amount\n * @returns {this}\n */\n setAmount(amount) {\n this._requireNotFrozen();\n this._amount = amount instanceof Long ? amount : Long.fromValue(amount);\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._tokenId != null) {\n this._tokenId.validateChecksum(client);\n }\n\n if (this._accountId != null) {\n this._accountId.validateChecksum(client);\n }\n }\n\n /**\n * @returns {Long[]}\n */\n get serials() {\n return this._serials;\n }\n\n /**\n * @param {(Long | number)[]} serials\n * @returns {this}\n */\n setSerials(serials) {\n this._requireNotFrozen();\n this._serials = serials.map((serial) =>\n typeof serial === \"number\" ? Long.fromNumber(serial) : serial\n );\n\n return this;\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.token.wipeTokenAccount(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"tokenWipe\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ITokenWipeAccountTransactionBody}\n */\n _makeTransactionData() {\n return {\n amount: this._amount,\n token: this._tokenId != null ? this._tokenId._toProtobuf() : null,\n account:\n this._accountId != null ? this._accountId._toProtobuf() : null,\n serialNumbers: this.serials,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"tokenWipe\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TokenWipeTransaction._fromProtobuf\n);\n","import AccountId from \"../account/AccountId.js\";\nimport Transaction, {\n DEFAULT_AUTO_RENEW_PERIOD,\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport Duration from \"../Duration.js\";\nimport Key from \"../Key.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IConsensusCreateTopicTransactionBody} proto.IConsensusCreateTopicTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Create a topic to be used for consensus.\n */\nexport default class TopicCreateTransaction extends Transaction {\n /**\n * @param {object} props\n * @param {Key} [props.adminKey]\n * @param {Key} [props.submitKey]\n * @param {Duration | Long | number} [props.autoRenewPeriod]\n * @param {AccountId | string} [props.autoRenewAccountId]\n * @param {string} [props.topicMemo]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?Key}\n */\n this._adminKey = null;\n\n /**\n * @private\n * @type {?Key}\n */\n this._submitKey = null;\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._autoRenewAccountId = null;\n\n /**\n * @private\n * @type {Duration}\n */\n this._autoRenewPeriod = new Duration(DEFAULT_AUTO_RENEW_PERIOD);\n\n /**\n * @private\n * @type {?string}\n */\n this._topicMemo = null;\n\n if (props.adminKey != null) {\n this.setAdminKey(props.adminKey);\n }\n\n if (props.submitKey != null) {\n this.setSubmitKey(props.submitKey);\n }\n\n if (props.autoRenewAccountId != null) {\n this.setAutoRenewAccountId(props.autoRenewAccountId);\n }\n\n if (props.autoRenewPeriod != null) {\n this.setAutoRenewPeriod(props.autoRenewPeriod);\n }\n\n if (props.topicMemo != null) {\n this.setTopicMemo(props.topicMemo);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TopicCreateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const create =\n /** @type {proto.IConsensusCreateTopicTransactionBody} */ (\n body.consensusCreateTopic\n );\n\n return Transaction._fromProtobufTransactions(\n new TopicCreateTransaction({\n adminKey:\n create.adminKey != null\n ? Key._fromProtobufKey(create.adminKey)\n : undefined,\n submitKey:\n create.submitKey != null\n ? Key._fromProtobufKey(create.submitKey)\n : undefined,\n autoRenewAccountId:\n create.autoRenewAccount != null\n ? AccountId._fromProtobuf(create.autoRenewAccount)\n : undefined,\n autoRenewPeriod:\n create.autoRenewPeriod != null\n ? create.autoRenewPeriod.seconds != null\n ? create.autoRenewPeriod.seconds\n : undefined\n : undefined,\n topicMemo: create.memo != null ? create.memo : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?string}\n */\n get topicMemo() {\n return this._topicMemo;\n }\n\n /**\n * @param {string} topicMemo\n * @returns {this}\n */\n setTopicMemo(topicMemo) {\n this._requireNotFrozen();\n this._topicMemo = topicMemo;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get adminKey() {\n return this._adminKey;\n }\n\n /**\n * @param {Key} adminKey\n * @returns {this}\n */\n setAdminKey(adminKey) {\n this._requireNotFrozen();\n this._adminKey = adminKey;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get submitKey() {\n return this._submitKey;\n }\n\n /**\n * @param {Key} submitKey\n * @returns {this}\n */\n setSubmitKey(submitKey) {\n this._requireNotFrozen();\n this._submitKey = submitKey;\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get autoRenewAccountId() {\n return this._autoRenewAccountId;\n }\n\n /**\n * @param {AccountId | string} autoRenewAccountId\n * @returns {this}\n */\n setAutoRenewAccountId(autoRenewAccountId) {\n this._requireNotFrozen();\n this._autoRenewAccountId =\n autoRenewAccountId instanceof AccountId\n ? autoRenewAccountId\n : AccountId.fromString(autoRenewAccountId);\n\n return this;\n }\n\n /**\n * @returns {Duration}\n */\n get autoRenewPeriod() {\n return this._autoRenewPeriod;\n }\n\n /**\n * Set the auto renew period for this account.\n *\n * @param {Duration | Long | number} autoRenewPeriod\n * @returns {this}\n */\n setAutoRenewPeriod(autoRenewPeriod) {\n this._requireNotFrozen();\n this._autoRenewPeriod =\n autoRenewPeriod instanceof Duration\n ? autoRenewPeriod\n : new Duration(autoRenewPeriod);\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._autoRenewAccountId != null) {\n this._autoRenewAccountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.consensus.createTopic(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"consensusCreateTopic\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IConsensusCreateTopicTransactionBody}\n */\n _makeTransactionData() {\n return {\n adminKey:\n this._adminKey != null ? this._adminKey._toProtobufKey() : null,\n submitKey:\n this._submitKey != null\n ? this._submitKey._toProtobufKey()\n : null,\n autoRenewAccount:\n this._autoRenewAccountId != null\n ? this._autoRenewAccountId._toProtobuf()\n : null,\n autoRenewPeriod: this._autoRenewPeriod._toProtobuf(),\n memo: this._topicMemo,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"consensusCreateTopic\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TopicCreateTransaction._fromProtobuf\n);\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport TopicId from \"./TopicId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IConsensusDeleteTopicTransactionBody} proto.IConsensusDeleteTopicTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Delete a topic.\n *\n * No more transactions or queries on the topic will succeed.\n *\n * If an adminKey is set, this transaction must be signed by that key.\n * If there is no adminKey, this transaction will fail with Status#Unautorized.\n */\nexport default class TopicDeleteTransaction extends Transaction {\n /**\n * @param {object} props\n * @param {TopicId | string} [props.topicId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TopicId}\n */\n this._topicId = null;\n\n if (props.topicId != null) {\n this.setTopicId(props.topicId);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TopicDeleteTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const topicDelete =\n /** @type {proto.IConsensusDeleteTopicTransactionBody} */ (\n body.consensusDeleteTopic\n );\n\n return Transaction._fromProtobufTransactions(\n new TopicDeleteTransaction({\n topicId:\n topicDelete.topicID != null\n ? TopicId._fromProtobuf(topicDelete.topicID)\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TopicId}\n */\n get topicId() {\n return this._topicId;\n }\n\n /**\n * Set the topic ID which is being deleted in this transaction.\n *\n * @param {TopicId | string} topicId\n * @returns {TopicDeleteTransaction}\n */\n setTopicId(topicId) {\n this._requireNotFrozen();\n this._topicId =\n typeof topicId === \"string\"\n ? TopicId.fromString(topicId)\n : topicId.clone();\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._topicId != null) {\n this._topicId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.consensus.deleteTopic(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"consensusDeleteTopic\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IConsensusDeleteTopicTransactionBody}\n */\n _makeTransactionData() {\n return {\n topicID: this._topicId != null ? this._topicId._toProtobuf() : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"consensusDeleteTopic\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TopicDeleteTransaction._fromProtobuf\n);\n","import Query, { QUERY_REGISTRY } from \"../query/Query.js\";\nimport TopicId from \"./TopicId.js\";\nimport TopicInfo from \"./TopicInfo.js\";\nimport Hbar from \"../Hbar.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IResponseHeader} proto.IResponseHeader\n * @typedef {import(\"@hashgraph/proto\").IConsensusTopicQuery} proto.IConsensusTopicQuery\n * @typedef {import(\"@hashgraph/proto\").IConsensusGetTopicInfoResponse} proto.IConsensusGetTopicInfoResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n */\n\n/**\n * Retrieve the latest state of a topic.\n *\n * @augments {Query}\n */\nexport default class TopicInfoQuery extends Query {\n /**\n * @param {object} [props]\n * @param {TopicId | string} [props.topicId]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TopicId}\n */\n this._topicId = null;\n\n if (props.topicId != null) {\n this.setTopicId(props.topicId);\n }\n }\n\n /**\n * @internal\n * @param {proto.IQuery} query\n * @returns {TopicInfoQuery}\n */\n static _fromProtobuf(query) {\n const info = /** @type {proto.IConsensusTopicQuery} */ (\n query.consensusGetTopicInfo\n );\n\n return new TopicInfoQuery({\n topicId:\n info.topicID != null\n ? TopicId._fromProtobuf(info.topicID)\n : undefined,\n });\n }\n\n /**\n * @returns {?TopicId}\n */\n get topicId() {\n return this._topicId;\n }\n\n /**\n * Set the topic ID for which the info is being requested.\n *\n * @param {TopicId | string} topicId\n * @returns {TopicInfoQuery}\n */\n setTopicId(topicId) {\n this._topicId =\n typeof topicId === \"string\"\n ? TopicId.fromString(topicId)\n : topicId.clone();\n\n return this;\n }\n\n /**\n * @override\n * @param {import(\"../client/Client.js\").default} client\n * @returns {Promise}\n */\n async getCost(client) {\n let cost = await super.getCost(client);\n\n if (cost.toTinybars().greaterThan(25)) {\n return cost;\n } else {\n return Hbar.fromTinybars(25);\n }\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._topicId != null) {\n this._topicId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.consensus.getTopicInfo(request);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @returns {proto.IResponseHeader}\n */\n _mapResponseHeader(response) {\n const consensusGetTopicInfo =\n /** @type {proto.IConsensusGetTopicInfoResponse} */ (\n response.consensusGetTopicInfo\n );\n return /** @type {proto.IResponseHeader} */ (\n consensusGetTopicInfo.header\n );\n }\n\n /**\n * @protected\n * @override\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n return Promise.resolve(\n TopicInfo._fromProtobuf(\n /** @type {proto.IConsensusGetTopicInfoResponse} */ (\n response.consensusGetTopicInfo\n )\n )\n );\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IQueryHeader} header\n * @returns {proto.IQuery}\n */\n _onMakeRequest(header) {\n return {\n consensusGetTopicInfo: {\n header,\n topicID:\n this._topicId != null ? this._topicId._toProtobuf() : null,\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nQUERY_REGISTRY.set(\"consensusGetTopicInfo\", TopicInfoQuery._fromProtobuf);\n","import TransactionId from \"../transaction/TransactionId.js\";\nimport SubscriptionHandle from \"./SubscriptionHandle.js\";\nimport TopicMessage from \"./TopicMessage.js\";\nimport * as proto from \"@hashgraph/proto\";\nimport TopicId from \"./TopicId.js\";\nimport Long from \"long\";\nimport Timestamp from \"../Timestamp.js\";\nimport { RST_STREAM } from \"../Executable.js\";\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../channel/MirrorChannel.js\").default} MirrorChannel\n * @typedef {import(\"../channel/MirrorChannel.js\").MirrorError} MirrorError\n */\n\n/**\n * @template {Channel} ChannelT\n * @typedef {import(\"../client/Client.js\").default} Client\n */\n\nexport default class TopicMessageQuery {\n /**\n * @param {object} props\n * @param {TopicId | string} [props.topicId]\n * @param {Timestamp} [props.startTime]\n * @param {Timestamp} [props.endTime]\n * @param {(message: TopicMessage, error: Error)=> void} [props.errorHandler]\n * @param {() => void} [props.completionHandler]\n * @param {(error: MirrorError | Error | null) => boolean} [props.retryHandler]\n * @param {Long | number} [props.limit]\n */\n constructor(props = {}) {\n /**\n * @private\n * @type {?TopicId}\n */\n this._topicId = null;\n if (props.topicId != null) {\n this.setTopicId(props.topicId);\n }\n\n /**\n * @private\n * @type {?Timestamp}\n */\n this._startTime = null;\n if (props.startTime != null) {\n this.setStartTime(props.startTime);\n }\n\n /**\n * @private\n * @type {?Timestamp}\n */\n this._endTime = null;\n if (props.endTime != null) {\n this.setEndTime(props.endTime);\n }\n\n /**\n * @private\n * @type {?Long}\n */\n this._limit = null;\n if (props.limit != null) {\n this.setLimit(props.limit);\n }\n\n /**\n * @private\n * @type {(message: TopicMessage, error: Error) => void}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n this._errorHandler = (message, error) => {\n console.error(\n `Error attempting to subscribe to topic: ${\n this._topicId != null ? this._topicId.toString() : \"\"\n }`\n );\n };\n\n if (props.errorHandler != null) {\n this._errorHandler = props.errorHandler;\n }\n\n /*\n * @private\n * @type {((message: TopicMessage) => void) | null}\n */\n this._listener = null;\n\n /**\n * @private\n * @type {() => void}\n */\n this._completionHandler = () => {\n console.log(\n `Subscription to topic ${\n this._topicId != null ? this._topicId.toString() : \"\"\n } complete`\n );\n };\n\n if (props.completionHandler != null) {\n this._completionHandler = props.completionHandler;\n }\n\n /**\n * @private\n * @type {(error: MirrorError | Error | null) => boolean}\n */\n this._retryHandler = (error) => {\n if (error != null) {\n if (error instanceof Error) {\n // Retry on all errors which are not `MirrorError` because they're\n // likely lower level HTTP/2 errors\n return true;\n } else {\n // Retry on `NOT_FOUND`, `RESOURCE_EXHAUSTED`, `UNAVAILABLE`, and conditionally on `INTERNAL`\n // if the messasge matches the right regex.\n switch (error.code) {\n // INTERNAL\n // eslint-disable-next-line no-fallthrough\n case 13:\n return RST_STREAM.test(error.details.toString());\n // NOT_FOUND\n // eslint-disable-next-line no-fallthrough\n case 5:\n // RESOURCE_EXHAUSTED\n // eslint-disable-next-line no-fallthrough\n case 8:\n // UNAVAILABLE\n // eslint-disable-next-line no-fallthrough\n case 14:\n return true;\n default:\n return false;\n }\n }\n }\n\n return false;\n };\n\n if (props.retryHandler != null) {\n this._retryHandler = props.retryHandler;\n }\n\n /**\n * @private\n * @type {number}\n */\n this._maxAttempts = 10;\n\n /**\n * @private\n * @type {number}\n */\n this._maxBackoff = 8000;\n\n /**\n * @private\n * @type {number}\n */\n this._attempt = 0;\n\n /**\n * @private\n * @type {SubscriptionHandle | null}\n */\n this._handle = null;\n }\n\n /**\n * @returns {?TopicId}\n */\n get topicId() {\n return this._topicId;\n }\n\n /**\n * @param {TopicId | string} topicId\n * @returns {TopicMessageQuery}\n */\n setTopicId(topicId) {\n this.requireNotSubscribed();\n\n this._topicId =\n typeof topicId === \"string\"\n ? TopicId.fromString(topicId)\n : topicId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Timestamp}\n */\n get startTime() {\n return this._startTime;\n }\n\n /**\n * @param {Timestamp | Date | number} startTime\n * @returns {TopicMessageQuery}\n */\n setStartTime(startTime) {\n this.requireNotSubscribed();\n\n this._startTime =\n startTime instanceof Timestamp\n ? startTime\n : startTime instanceof Date\n ? Timestamp.fromDate(startTime)\n : new Timestamp(startTime, 0);\n return this;\n }\n\n /**\n * @returns {?Timestamp}\n */\n get endTime() {\n return this._endTime;\n }\n\n /**\n * @param {Timestamp | Date | number} endTime\n * @returns {TopicMessageQuery}\n */\n setEndTime(endTime) {\n this.requireNotSubscribed();\n\n this._endTime =\n endTime instanceof Timestamp\n ? endTime\n : endTime instanceof Date\n ? Timestamp.fromDate(endTime)\n : new Timestamp(endTime, 0);\n return this;\n }\n\n /**\n * @returns {?Long}\n */\n get limit() {\n return this._limit;\n }\n\n /**\n * @param {Long | number} limit\n * @returns {TopicMessageQuery}\n */\n setLimit(limit) {\n this.requireNotSubscribed();\n\n this._limit = limit instanceof Long ? limit : Long.fromValue(limit);\n\n return this;\n }\n\n /**\n * @param {(message: TopicMessage, error: Error)=> void} errorHandler\n * @returns {TopicMessageQuery}\n */\n setErrorHandler(errorHandler) {\n this._errorHandler = errorHandler;\n\n return this;\n }\n\n /**\n * @param {() => void} completionHandler\n * @returns {TopicMessageQuery}\n */\n setCompletionHandler(completionHandler) {\n this.requireNotSubscribed();\n\n this._completionHandler = completionHandler;\n\n return this;\n }\n\n /**\n * @param {number} attempts\n */\n setMaxAttempts(attempts) {\n this.requireNotSubscribed();\n\n this._maxAttempts = attempts;\n }\n\n /**\n * @param {number} backoff\n */\n setMaxBackoff(backoff) {\n this.requireNotSubscribed();\n\n this._maxBackoff = backoff;\n }\n\n /**\n * @param {Client} client\n * @param {((message: TopicMessage, error: Error) => void) | null} errorHandler\n * @param {(message: TopicMessage) => void} listener\n * @returns {SubscriptionHandle}\n */\n subscribe(client, errorHandler, listener) {\n this._handle = new SubscriptionHandle();\n this._listener = listener;\n\n if (errorHandler != null) {\n this._errorHandler = errorHandler;\n }\n\n this._makeServerStreamRequest(client);\n\n return this._handle;\n }\n\n /**\n * @private\n * @param {Client} client\n * @returns {void}\n */\n _makeServerStreamRequest(client) {\n /** @type {Map} */\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n const list = new Map();\n\n const request = proto.ConsensusTopicQuery.encode({\n topicID: this._topicId != null ? this._topicId._toProtobuf() : null,\n consensusStartTime:\n this._startTime != null ? this._startTime._toProtobuf() : null,\n consensusEndTime:\n this._endTime != null ? this._endTime._toProtobuf() : null,\n limit: this._limit,\n }).finish();\n\n const cancel = client._mirrorNetwork\n .getNextMirrorNode()\n .getChannel()\n .makeServerStreamRequest(\n \"ConsensusService\",\n \"subscribeTopic\",\n request,\n (data) => {\n const message = proto.ConsensusTopicResponse.decode(data);\n\n if (this._limit != null && this._limit.gt(0)) {\n this._limit = this._limit.sub(1);\n }\n\n this._startTime = Timestamp._fromProtobuf(\n /** @type {proto.ITimestamp} */ (\n message.consensusTimestamp\n )\n ).plusNanos(1);\n\n if (\n message.chunkInfo == null ||\n (message.chunkInfo != null &&\n message.chunkInfo.total === 1)\n ) {\n this._passTopicMessage(TopicMessage._ofSingle(message));\n } else {\n const chunkInfo =\n /** @type {proto.IConsensusMessageChunkInfo} */ (\n message.chunkInfo\n );\n const initialTransactionID =\n /** @type {proto.ITransactionID} */ (\n chunkInfo.initialTransactionID\n );\n const total = /** @type {number} */ (chunkInfo.total);\n const transactionId =\n TransactionId._fromProtobuf(\n initialTransactionID\n ).toString();\n\n /** @type {proto.ConsensusTopicResponse[]} */\n let responses = [];\n\n const temp = list.get(transactionId);\n if (temp == null) {\n list.set(transactionId, responses);\n } else {\n responses = temp;\n }\n\n responses.push(message);\n\n if (responses.length === total) {\n const topicMessage =\n TopicMessage._ofMany(responses);\n\n list.delete(transactionId);\n\n this._passTopicMessage(topicMessage);\n }\n }\n },\n (error) => {\n const message =\n error instanceof Error ? error.message : error.details;\n\n if (\n this._attempt < this._maxAttempts &&\n this._retryHandler(error)\n ) {\n const delay = Math.min(\n 250 * 2 ** this._attempt,\n this._maxBackoff\n );\n console.warn(\n `Error subscribing to topic ${\n this._topicId != null\n ? this._topicId.toString()\n : \"UNKNOWN\"\n } during attempt ${\n this._attempt\n }. Waiting ${delay} ms before next attempt: ${message}`\n );\n\n this._attempt += 1;\n\n setTimeout(() => {\n this._makeServerStreamRequest(client);\n }, delay);\n }\n },\n this._completionHandler\n );\n\n if (this._handle != null) {\n this._handle._setCall(() => cancel());\n }\n }\n\n requireNotSubscribed() {\n if (this._handle != null) {\n throw new Error(\n \"Cannot change fields on an already subscribed query\"\n );\n }\n }\n\n /**\n * @private\n * @param {TopicMessage} topicMessage\n */\n _passTopicMessage(topicMessage) {\n try {\n if (this._listener != null) {\n this._listener(topicMessage);\n } else {\n throw new Error(\"(BUG) listener is unexpectedly not set\");\n }\n } catch (error) {\n this._errorHandler(topicMessage, /** @type {Error} */ (error));\n }\n }\n}\n","export default class SubscriptionHandle {\n constructor() {\n /** @type {{(): void} | null} */\n this._call = null;\n }\n\n /**\n * @param {() => void} call\n * @returns {void}\n */\n _setCall(call) {\n this._call = call;\n }\n\n unsubscribe() {\n if (this._call != null) {\n this._call();\n }\n }\n}\n","import Transaction, {\n TRANSACTION_REGISTRY,\n CHUNK_SIZE,\n} from \"../transaction/Transaction.js\";\nimport TopicId from \"./TopicId.js\";\nimport * as utf8 from \"../encoding/utf8.js\";\nimport TransactionId from \"../transaction/TransactionId.js\";\nimport Timestamp from \"../Timestamp.js\";\nimport * as util from \"../util.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IConsensusSubmitMessageTransactionBody} proto.IConsensusSubmitMessageTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").IConsensusMessageChunkInfo} proto.IConsensusMessageChunkInfo\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../account/AccountId.js\").default} AccountId\n * @typedef {import(\"../transaction/TransactionResponse.js\").default} TransactionResponse\n * @typedef {import(\"../schedule/ScheduleCreateTransaction.js\").default} ScheduleCreateTransaction\n */\n\nexport default class TopicMessageSubmitTransaction extends Transaction {\n /**\n * @param {object} props\n * @param {TopicId | string} [props.topicId]\n * @param {Uint8Array | string} [props.message]\n * @param {number} [props.maxChunks]\n * @param {number} [props.chunkSize]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TopicId}\n */\n this._topicId = null;\n\n if (props.topicId != null) {\n this.setTopicId(props.topicId);\n }\n\n /**\n * @private\n * @type {?Uint8Array}\n */\n this._message = null;\n\n if (props.message != null) {\n this.setMessage(props.message);\n }\n\n /**\n * @private\n * @type {number}\n */\n this._maxChunks = 20;\n\n /**\n * @private\n * @type {number}\n */\n this._chunkSize = CHUNK_SIZE;\n\n if (props.maxChunks != null) {\n this.setMaxChunks(props.maxChunks);\n }\n\n if (props.chunkSize != null) {\n this.setChunkSize(props.chunkSize);\n }\n\n /** @type {proto.IConsensusMessageChunkInfo | null} */\n this._chunkInfo = null;\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TopicMessageSubmitTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const message =\n /** @type {proto.IConsensusSubmitMessageTransactionBody} */ (\n body.consensusSubmitMessage\n );\n\n return Transaction._fromProtobufTransactions(\n new TopicMessageSubmitTransaction({\n topicId:\n message.topicID != null\n ? TopicId._fromProtobuf(message.topicID)\n : undefined,\n message: message.message != null ? message.message : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @param {TransactionId} transactionId\n * @returns {this}\n */\n setTransactionId(transactionId) {\n this._requireNotFrozen();\n\n if (\n transactionId.accountId == null ||\n transactionId.validStart == null\n ) {\n throw new Error(\n \"`TopicMessageSubmitTransaction` does not support `TransactionId` built from `nonce`\"\n );\n }\n\n this._transactionIds.setList([transactionId]);\n\n return this;\n }\n\n /**\n * @returns {?TopicId}\n */\n get topicId() {\n return this._topicId;\n }\n\n /**\n * @param {TopicId | string} topicId\n * @returns {this}\n */\n setTopicId(topicId) {\n this._requireNotFrozen();\n\n this._topicId =\n typeof topicId === \"string\"\n ? TopicId.fromString(topicId)\n : topicId.clone();\n\n return this;\n }\n\n /**\n * @returns {?Uint8Array}\n */\n get message() {\n return this._message;\n }\n\n /**\n * @param {string | Uint8Array} message\n * @returns {this}\n */\n setMessage(message) {\n this._requireNotFrozen();\n message = util.requireStringOrUint8Array(message);\n this._message =\n message instanceof Uint8Array ? message : utf8.encode(message);\n return this;\n }\n\n /**\n * @returns {?number}\n */\n get maxChunks() {\n return this._maxChunks;\n }\n\n /**\n * @param {number} maxChunks\n * @returns {this}\n */\n setMaxChunks(maxChunks) {\n this._requireNotFrozen();\n this._maxChunks = maxChunks;\n return this;\n }\n\n /**\n * @returns {?number}\n */\n get chunkSize() {\n return this._chunkSize;\n }\n\n /**\n * @param {number} chunkSize\n * @returns {this}\n */\n setChunkSize(chunkSize) {\n this._chunkSize = chunkSize;\n return this;\n }\n\n /**\n * Freeze this transaction from further modification to prepare for\n * signing or serialization.\n *\n * Will use the `Client`, if available, to generate a default Transaction ID and select 1/3\n * nodes to prepare this transaction for.\n *\n * @param {?import(\"../client/Client.js\").default} client\n * @returns {this}\n */\n freezeWith(client) {\n super.freezeWith(client);\n\n if (this._message == null) {\n return this;\n }\n\n const chunks = Math.floor(\n (this._message.length + (this._chunkSize - 1)) / this._chunkSize\n );\n\n if (chunks > this._maxChunks) {\n throw new Error(\n `Message with size ${this._message.length} too long for ${this._maxChunks} chunks`\n );\n }\n\n const initialTransactionId = this.transactionId._toProtobuf();\n let nextTransactionId = this.transactionId;\n\n // Hack around the locked list. Should refactor a bit to remove such code\n this._transactionIds.locked = false;\n\n this._transactions.clear();\n this._transactionIds.clear();\n this._signedTransactions.clear();\n super._nextTransactionIndex = 0;\n\n for (let chunk = 0; chunk < chunks; chunk++) {\n this._chunkInfo = {\n initialTransactionID: initialTransactionId,\n total: chunks,\n number: chunk + 1,\n };\n\n this._transactionIds.list.push(nextTransactionId);\n\n for (const nodeAccountId of this._nodeAccountIds.list) {\n this._signedTransactions.push(\n this._makeSignedTransaction(nodeAccountId)\n );\n }\n\n nextTransactionId = new TransactionId(\n /** @type {AccountId} */ (nextTransactionId.accountId),\n new Timestamp(\n /** @type {Timestamp} */ (\n nextTransactionId.validStart\n ).seconds,\n /** @type {Timestamp} */ (\n nextTransactionId.validStart\n ).nanos.add(1)\n )\n );\n\n super._nextTransactionIndex = this._nextTransactionIndex + 1;\n }\n\n this._chunkInfo = null;\n super._nextTransactionIndex = 0;\n\n return this;\n }\n\n /**\n * @returns {ScheduleCreateTransaction}\n */\n schedule() {\n this._requireNotFrozen();\n\n if (this._message != null && this._message.length > this._chunkSize) {\n throw new Error(\n `cannot schedule \\`TopicMessageSubmitTransaction\\` with message over ${this._chunkSize} bytes`\n );\n }\n\n return super.schedule();\n }\n\n /**\n * @param {import(\"../client/Client.js\").default} client\n * @param {number=} requestTimeout\n * @returns {Promise}\n */\n async execute(client, requestTimeout) {\n return (await this.executeAll(client, requestTimeout))[0];\n }\n\n /**\n * @param {import(\"../client/Client.js\").default} client\n * @param {number=} requestTimeout\n * @returns {Promise}\n */\n async executeAll(client, requestTimeout) {\n if (!super._isFrozen()) {\n this.freezeWith(client);\n }\n\n // on execute, sign each transaction with the operator, if present\n // and we are signing a transaction that used the default transaction ID\n\n const transactionId = this.transactionId;\n const operatorAccountId = client.operatorAccountId;\n\n if (\n operatorAccountId != null &&\n operatorAccountId.equals(\n /** @type {AccountId} */ (transactionId.accountId)\n )\n ) {\n await super.signWithOperator(client);\n }\n\n const responses = [];\n let remainingTimeout = requestTimeout;\n for (let i = 0; i < this._transactionIds.length; i++) {\n const startTimestamp = Date.now();\n responses.push(await super.execute(client, remainingTimeout));\n remainingTimeout = Date.now() - startTimestamp;\n }\n\n return responses;\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.consensus.submitMessage(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"consensusSubmitMessage\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IConsensusSubmitMessageTransactionBody}\n */\n _makeTransactionData() {\n if (this._chunkInfo != null && this._message != null) {\n const num = /** @type {number} */ (this._chunkInfo.number);\n const startIndex = (num - 1) * this._chunkSize;\n let endIndex = startIndex + this._chunkSize;\n\n if (endIndex > this._message.length) {\n endIndex = this._message.length;\n }\n\n return {\n topicID:\n this._topicId != null ? this._topicId._toProtobuf() : null,\n message: this._message.slice(startIndex, endIndex),\n chunkInfo: this._chunkInfo,\n };\n } else {\n return {\n topicID:\n this._topicId != null ? this._topicId._toProtobuf() : null,\n message: this._message,\n };\n }\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"consensusSubmitMessage\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TopicMessageSubmitTransaction._fromProtobuf\n);\n","import Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport TopicId from \"./TopicId.js\";\nimport Duration from \"../Duration.js\";\nimport Key from \"../Key.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IConsensusUpdateTopicTransactionBody} proto.IConsensusUpdateTopicTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * Update a topic.\n *\n * If there is no adminKey, the only authorized update (available to anyone) is to extend the expirationTime.\n * Otherwise transaction must be signed by the adminKey.\n *\n * If an adminKey is updated, the transaction must be signed by the pre-update adminKey and post-update adminKey.\n *\n * If a new autoRenewAccount is specified (not just being removed), that account must also sign the transaction.\n */\nexport default class TopicUpdateTransaction extends Transaction {\n /**\n * @param {object} props\n * @param {TopicId | string} [props.topicId]\n * @param {Key} [props.adminKey]\n * @param {Key} [props.submitKey]\n * @param {Duration | Long | number} [props.autoRenewPeriod]\n * @param {AccountId | string} [props.autoRenewAccountId]\n * @param {string} [props.topicMemo]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {?TopicId}\n */\n this._topicId = null;\n\n if (props.topicId != null) {\n this.setTopicId(props.topicId);\n }\n\n /**\n * @private\n * @type {?string}\n */\n this._topicMemo = null;\n\n if (props.topicMemo != null) {\n this.setTopicMemo(props.topicMemo);\n }\n\n /**\n * @private\n * @type {?Key}\n */\n this._submitKey = null;\n\n if (props.submitKey != null) {\n this.setSubmitKey(props.submitKey);\n }\n\n /**\n * @private\n * @type {?Key}\n */\n this._adminKey = null;\n\n if (props.adminKey != null) {\n this.setAdminKey(props.adminKey);\n }\n\n /**\n * @private\n * @type {?AccountId}\n */\n this._autoRenewAccountId = null;\n\n if (props.autoRenewAccountId != null) {\n this.setAutoRenewAccountId(props.autoRenewAccountId);\n }\n\n /**\n * @private\n * @type {?Duration}\n */\n this._autoRenewPeriod = null;\n\n if (props.autoRenewPeriod != null) {\n this.setAutoRenewPeriod(props.autoRenewPeriod);\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TopicUpdateTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const update =\n /** @type {proto.IConsensusUpdateTopicTransactionBody} */ (\n body.consensusUpdateTopic\n );\n\n return Transaction._fromProtobufTransactions(\n new TopicUpdateTransaction({\n topicId:\n update.topicID != null\n ? TopicId._fromProtobuf(update.topicID)\n : undefined,\n adminKey:\n update.adminKey != null\n ? Key._fromProtobufKey(update.adminKey)\n : undefined,\n submitKey:\n update.submitKey != null\n ? Key._fromProtobufKey(update.submitKey)\n : undefined,\n autoRenewAccountId:\n update.autoRenewAccount != null\n ? AccountId._fromProtobuf(update.autoRenewAccount)\n : undefined,\n autoRenewPeriod:\n update.autoRenewPeriod != null\n ? update.autoRenewPeriod.seconds != null\n ? update.autoRenewPeriod.seconds\n : undefined\n : undefined,\n topicMemo:\n update.memo != null\n ? update.memo.value != null\n ? update.memo.value\n : undefined\n : undefined,\n }),\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {?TopicId}\n */\n get topicId() {\n return this._topicId;\n }\n\n /**\n * @param {TopicId | string} topicId\n * @returns {TopicUpdateTransaction}\n */\n setTopicId(topicId) {\n this._requireNotFrozen();\n this._topicId =\n typeof topicId === \"string\"\n ? TopicId.fromString(topicId)\n : topicId.clone();\n\n return this;\n }\n\n /**\n * @returns {TopicUpdateTransaction}\n */\n clearTopicId() {\n this._requireNotFrozen();\n this._topicId = null;\n\n return this;\n }\n\n /**\n * @returns {?string}\n */\n get topicMemo() {\n return this._topicMemo;\n }\n\n /**\n * @param {string} topicMemo\n * @returns {TopicUpdateTransaction}\n */\n setTopicMemo(topicMemo) {\n this._requireNotFrozen();\n this._topicMemo = topicMemo;\n\n return this;\n }\n\n /**\n * @returns {TopicUpdateTransaction}\n */\n clearTopicMemo() {\n this._requireNotFrozen();\n this._topicMemo = null;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get adminKey() {\n return this._adminKey;\n }\n\n /**\n * @param {Key} adminKey\n * @returns {TopicUpdateTransaction}\n */\n setAdminKey(adminKey) {\n this._requireNotFrozen();\n this._adminKey = adminKey;\n\n return this;\n }\n\n /**\n * @returns {TopicUpdateTransaction}\n */\n clearAdminKey() {\n this._requireNotFrozen();\n this._adminKey = null;\n\n return this;\n }\n\n /**\n * @returns {?Key}\n */\n get submitKey() {\n return this._submitKey;\n }\n\n /**\n * @param {Key} submitKey\n * @returns {TopicUpdateTransaction}\n */\n setSubmitKey(submitKey) {\n this._requireNotFrozen();\n this._submitKey = submitKey;\n\n return this;\n }\n\n /**\n * @returns {TopicUpdateTransaction}\n */\n clearSubmitKey() {\n this._requireNotFrozen();\n this._submitKey = null;\n\n return this;\n }\n\n /**\n * @returns {?AccountId}\n */\n get autoRenewAccountId() {\n return this._autoRenewAccountId;\n }\n\n /**\n * @param {AccountId | string} autoRenewAccountId\n * @returns {TopicUpdateTransaction}\n */\n setAutoRenewAccountId(autoRenewAccountId) {\n this._requireNotFrozen();\n this._autoRenewAccountId =\n autoRenewAccountId instanceof AccountId\n ? autoRenewAccountId\n : AccountId.fromString(autoRenewAccountId);\n\n return this;\n }\n\n /**\n * @returns {TopicUpdateTransaction}\n */\n clearAutoRenewAccountId() {\n this._requireNotFrozen();\n this._autoRenewAccountId = null;\n\n return this;\n }\n\n /**\n * @returns {?Duration}\n */\n get autoRenewPeriod() {\n return this._autoRenewPeriod;\n }\n\n /**\n * Set the auto renew period for this account.\n *\n * @param {Duration | Long | number} autoRenewPeriod\n * @returns {TopicUpdateTransaction}\n */\n setAutoRenewPeriod(autoRenewPeriod) {\n this._requireNotFrozen();\n this._autoRenewPeriod =\n autoRenewPeriod instanceof Duration\n ? autoRenewPeriod\n : new Duration(autoRenewPeriod);\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n if (this._topicId != null) {\n this._topicId.validateChecksum(client);\n }\n\n if (this._autoRenewAccountId != null) {\n this._autoRenewAccountId.validateChecksum(client);\n }\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.consensus.updateTopic(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"consensusUpdateTopic\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.IConsensusUpdateTopicTransactionBody}\n */\n _makeTransactionData() {\n return {\n topicID: this._topicId != null ? this._topicId._toProtobuf() : null,\n adminKey:\n this._adminKey != null ? this._adminKey._toProtobufKey() : null,\n submitKey:\n this._submitKey != null\n ? this._submitKey._toProtobufKey()\n : null,\n memo:\n this._topicMemo != null\n ? {\n value: this._topicMemo,\n }\n : null,\n autoRenewAccount:\n this._autoRenewAccountId != null\n ? this._autoRenewAccountId._toProtobuf()\n : null,\n autoRenewPeriod:\n this._autoRenewPeriod != null\n ? this._autoRenewPeriod._toProtobuf()\n : null,\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"consensusUpdateTopic\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TopicUpdateTransaction._fromProtobuf\n);\n","import Hbar from \"../Hbar.js\";\nimport TokenId from \"../token/TokenId.js\";\nimport AccountId from \"./AccountId.js\";\nimport Transaction, {\n TRANSACTION_REGISTRY,\n} from \"../transaction/Transaction.js\";\nimport Long from \"long\";\nimport NullableTokenDecimalMap from \"./NullableTokenDecimalMap.js\";\nimport Transfer from \"../Transfer.js\";\nimport TokenTransfer from \"../token/TokenTransfer.js\";\nimport TokenTransferMap from \"./TokenTransferMap.js\";\nimport HbarTransferMap from \"./HbarTransferMap.js\";\nimport TokenNftTransferMap from \"./TokenNftTransferMap.js\";\nimport TokenTransferAccountMap from \"./TokenTransferAccountMap.js\";\nimport TokenNftTransfer from \"../token/TokenNftTransfer.js\";\nimport NftId from \"../token/NftId.js\";\n\n/**\n * @typedef {import(\"../long.js\").LongObject} LongObject\n * @typedef {import(\"bignumber.js\").default} BigNumber\n */\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransaction} proto.ITransaction\n * @typedef {import(\"@hashgraph/proto\").ISignedTransaction} proto.ISignedTransaction\n * @typedef {import(\"@hashgraph/proto\").TransactionBody} proto.TransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionBody} proto.ITransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITransactionResponse} proto.ITransactionResponse\n * @typedef {import(\"@hashgraph/proto\").ICryptoTransferTransactionBody} proto.ICryptoTransferTransactionBody\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").ITokenTransferList} proto.ITokenTransferList\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../client/Client.js\").default<*, *>} Client\n * @typedef {import(\"../transaction/TransactionId.js\").default} TransactionId\n */\n\n/**\n * @typedef {object} TransferTokensInput\n * @property {TokenId | string} tokenId\n * @property {AccountId | string} accountId\n * @property {Long | number} amount\n */\n\n/**\n * @typedef {object} TransferTokenObject\n * @property {TokenId} tokenId\n * @property {AccountId} accountId\n * @property {Long} amount\n */\n\n/**\n * @typedef {object} TransferHbarInput\n * @property {AccountId | string} accountId\n * @property {number | string | Long | BigNumber | Hbar} amount\n */\n\n/**\n * @typedef {object} TransferNftInput\n * @property {TokenId | string} tokenId\n * @property {AccountId | string} sender\n * @property {AccountId | string} recipient\n * @property {Long | number} serial\n */\n\n/**\n * Transfers a new Hedera™ crypto-currency token.\n */\nexport default class TransferTransaction extends Transaction {\n /**\n * @param {object} [props]\n * @param {(TransferTokensInput)[]} [props.tokenTransfers]\n * @param {(TransferHbarInput)[]} [props.hbarTransfers]\n * @param {(TransferNftInput)[]} [props.nftTransfers]\n */\n constructor(props = {}) {\n super();\n\n /**\n * @private\n * @type {TokenTransfer[]}\n */\n this._tokenTransfers = [];\n\n /**\n * @private\n * @type {Transfer[]}\n */\n this._hbarTransfers = [];\n\n /**\n * @private\n * @type {TokenNftTransfer[]}\n */\n this._nftTransfers = [];\n\n this._defaultMaxTransactionFee = new Hbar(1);\n\n for (const transfer of props.tokenTransfers != null\n ? props.tokenTransfers\n : []) {\n this.addTokenTransfer(\n transfer.tokenId,\n transfer.accountId,\n transfer.amount\n );\n }\n\n for (const transfer of props.hbarTransfers != null\n ? props.hbarTransfers\n : []) {\n this.addHbarTransfer(transfer.accountId, transfer.amount);\n }\n\n for (const transfer of props.nftTransfers != null\n ? props.nftTransfers\n : []) {\n this.addNftTransfer(\n transfer.tokenId,\n transfer.serial,\n transfer.sender,\n transfer.recipient\n );\n }\n }\n\n /**\n * @internal\n * @param {proto.ITransaction[]} transactions\n * @param {proto.ISignedTransaction[]} signedTransactions\n * @param {TransactionId[]} transactionIds\n * @param {AccountId[]} nodeIds\n * @param {proto.ITransactionBody[]} bodies\n * @returns {TransferTransaction}\n */\n static _fromProtobuf(\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n ) {\n const body = bodies[0];\n const cryptoTransfer =\n /** @type {proto.ICryptoTransferTransactionBody} */ (\n body.cryptoTransfer\n );\n\n const transfers = new TransferTransaction();\n\n transfers._tokenTransfers = TokenTransfer._fromProtobuf(\n cryptoTransfer.tokenTransfers != null\n ? cryptoTransfer.tokenTransfers\n : []\n );\n\n transfers._hbarTransfers = Transfer._fromProtobuf(\n cryptoTransfer.transfers != null\n ? cryptoTransfer.transfers.accountAmounts != null\n ? cryptoTransfer.transfers.accountAmounts\n : []\n : []\n );\n\n transfers._nftTransfers = TokenNftTransfer._fromProtobuf(\n cryptoTransfer.tokenTransfers != null\n ? cryptoTransfer.tokenTransfers\n : []\n );\n\n return Transaction._fromProtobufTransactions(\n transfers,\n transactions,\n signedTransactions,\n transactionIds,\n nodeIds,\n bodies\n );\n }\n\n /**\n * @returns {TokenTransferMap}\n */\n get tokenTransfers() {\n const map = new TokenTransferMap();\n\n for (const transfer of this._tokenTransfers) {\n let transferMap = map.get(transfer.tokenId);\n\n if (transferMap != null) {\n transferMap._set(transfer.accountId, transfer.amount);\n } else {\n transferMap = new TokenTransferAccountMap();\n transferMap._set(transfer.accountId, transfer.amount);\n map._set(transfer.tokenId, transferMap);\n }\n }\n\n return map;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @param {AccountId | string} accountId\n * @param {number | Long} amount\n * @returns {this}\n */\n addTokenTransfer(tokenId, accountId, amount) {\n this._requireNotFrozen();\n\n const token =\n tokenId instanceof TokenId ? tokenId : TokenId.fromString(tokenId);\n const account =\n accountId instanceof AccountId\n ? accountId\n : AccountId.fromString(accountId);\n const value = amount instanceof Long ? amount : Long.fromNumber(amount);\n\n for (const tokenTransfer of this._tokenTransfers) {\n if (\n tokenTransfer.tokenId.compare(token) === 0 &&\n tokenTransfer.accountId.compare(account) === 0\n ) {\n tokenTransfer.amount = tokenTransfer.amount.add(value);\n tokenTransfer.expectedDecimals = null;\n return this;\n }\n }\n\n this._tokenTransfers.push(\n new TokenTransfer({\n tokenId,\n accountId,\n expectedDecimals: null,\n amount,\n isApproved: false,\n })\n );\n\n return this;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @param {AccountId | string} accountId\n * @param {number | Long} amount\n * @param {number} decimals\n * @returns {this}\n */\n addTokenTransferWithDecimals(tokenId, accountId, amount, decimals) {\n this._requireNotFrozen();\n\n const token =\n tokenId instanceof TokenId ? tokenId : TokenId.fromString(tokenId);\n const account =\n accountId instanceof AccountId\n ? accountId\n : AccountId.fromString(accountId);\n const value = amount instanceof Long ? amount : Long.fromNumber(amount);\n\n let found = false;\n\n for (const tokenTransfer of this._tokenTransfers) {\n if (tokenTransfer.tokenId.compare(token) === 0) {\n if (\n tokenTransfer.expectedDecimals != null &&\n tokenTransfer.expectedDecimals !== decimals\n ) {\n throw new Error(\"expected decimals mis-match\");\n } else {\n tokenTransfer.expectedDecimals = decimals;\n }\n\n if (tokenTransfer.accountId.compare(account) === 0) {\n tokenTransfer.amount = tokenTransfer.amount.add(value);\n tokenTransfer.expectedDecimals = decimals;\n found = true;\n }\n }\n }\n\n if (found) {\n return this;\n }\n\n this._tokenTransfers.push(\n new TokenTransfer({\n tokenId,\n accountId,\n expectedDecimals: decimals,\n amount,\n isApproved: false,\n })\n );\n\n return this;\n }\n\n /**\n * @returns {NullableTokenDecimalMap}\n */\n get tokenIdDecimals() {\n const map = new NullableTokenDecimalMap();\n\n for (const transfer of this._tokenTransfers) {\n map._set(transfer.tokenId, transfer.expectedDecimals);\n }\n\n return map;\n }\n\n /**\n * @returns {HbarTransferMap}\n */\n get hbarTransfers() {\n const map = new HbarTransferMap();\n\n for (const transfer of this._hbarTransfers) {\n map._set(transfer.accountId, transfer.amount);\n }\n\n return map;\n }\n\n /**\n * @internal\n * @param {AccountId | string} accountId\n * @param {number | string | Long | LongObject | BigNumber | Hbar} amount\n * @returns {TransferTransaction}\n */\n addHbarTransfer(accountId, amount) {\n this._requireNotFrozen();\n\n const account =\n accountId instanceof AccountId\n ? accountId\n : AccountId.fromString(accountId);\n const hbars = amount instanceof Hbar ? amount : new Hbar(amount);\n\n for (const transfer of this._hbarTransfers) {\n if (transfer.accountId.compare(account) === 0) {\n transfer.amount = Hbar.fromTinybars(\n transfer.amount.toTinybars().add(hbars.toTinybars())\n );\n return this;\n }\n }\n\n this._hbarTransfers.push(\n new Transfer({\n accountId: account,\n amount: hbars,\n isApproved: false,\n })\n );\n\n return this;\n }\n\n /**\n * @param {Client} client\n */\n _validateChecksums(client) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const transfer of this._hbarTransfers) {\n transfer.accountId.validateChecksum(client);\n }\n\n for (const transfer of this._tokenTransfers) {\n transfer.tokenId.validateChecksum(client);\n transfer.accountId.validateChecksum(client);\n }\n\n for (const transfer of this._nftTransfers) {\n transfer.tokenId.validateChecksum(client);\n transfer.senderAccountId.validateChecksum(client);\n transfer.receiverAccountId.validateChecksum(client);\n }\n }\n\n /**\n * @returns {TokenNftTransferMap}\n */\n get nftTransfers() {\n const map = new TokenNftTransferMap();\n\n for (const transfer of this._nftTransfers) {\n const transferList = map.get(transfer.tokenId);\n\n const nftTransfer = {\n sender: transfer.senderAccountId,\n recipient: transfer.receiverAccountId,\n serial: transfer.serialNumber,\n isApproved: transfer.isApproved,\n };\n\n if (transferList != null) {\n transferList.push(nftTransfer);\n } else {\n map._set(transfer.tokenId, [nftTransfer]);\n }\n }\n\n return map;\n }\n\n /**\n * @param {NftId | TokenId | string} tokenIdOrNftId\n * @param {AccountId | string | Long | number} senderAccountIdOrSerialNumber\n * @param {AccountId | string} receiverAccountIdOrSenderAccountId\n * @param {(AccountId | string)=} receiver\n * @returns {TransferTransaction}\n */\n addNftTransfer(\n tokenIdOrNftId,\n senderAccountIdOrSerialNumber,\n receiverAccountIdOrSenderAccountId,\n receiver\n ) {\n this._requireNotFrozen();\n\n let nftId;\n let senderAccountId;\n let receiverAccountId;\n\n if (tokenIdOrNftId instanceof NftId) {\n nftId = tokenIdOrNftId;\n senderAccountId =\n typeof senderAccountIdOrSerialNumber === \"string\"\n ? AccountId.fromString(senderAccountIdOrSerialNumber)\n : /** @type {AccountId} */ (senderAccountIdOrSerialNumber);\n receiverAccountId =\n typeof receiverAccountIdOrSenderAccountId === \"string\"\n ? AccountId.fromString(receiverAccountIdOrSenderAccountId)\n : /** @type {AccountId} */ (\n receiverAccountIdOrSenderAccountId\n );\n } else if (tokenIdOrNftId instanceof TokenId) {\n nftId = new NftId(\n tokenIdOrNftId,\n /** @type {Long} */ (senderAccountIdOrSerialNumber)\n );\n senderAccountId =\n typeof receiverAccountIdOrSenderAccountId === \"string\"\n ? AccountId.fromString(receiverAccountIdOrSenderAccountId)\n : /** @type {AccountId} */ (\n receiverAccountIdOrSenderAccountId\n );\n receiverAccountId =\n typeof receiver === \"string\"\n ? AccountId.fromString(receiver)\n : /** @type {AccountId} */ (receiver);\n } else {\n try {\n nftId = NftId.fromString(tokenIdOrNftId);\n senderAccountId =\n typeof senderAccountIdOrSerialNumber === \"string\"\n ? AccountId.fromString(senderAccountIdOrSerialNumber)\n : /** @type {AccountId} */ (\n senderAccountIdOrSerialNumber\n );\n receiverAccountId =\n typeof receiverAccountIdOrSenderAccountId === \"string\"\n ? AccountId.fromString(\n receiverAccountIdOrSenderAccountId\n )\n : /** @type {AccountId} */ (\n receiverAccountIdOrSenderAccountId\n );\n } catch (_) {\n const tokenId = TokenId.fromString(tokenIdOrNftId);\n nftId = new NftId(\n tokenId,\n /** @type {Long} */ (senderAccountIdOrSerialNumber)\n );\n senderAccountId =\n typeof receiverAccountIdOrSenderAccountId === \"string\"\n ? AccountId.fromString(\n receiverAccountIdOrSenderAccountId\n )\n : /** @type {AccountId} */ (\n receiverAccountIdOrSenderAccountId\n );\n receiverAccountId =\n typeof receiver === \"string\"\n ? AccountId.fromString(receiver)\n : /** @type {AccountId} */ (receiver);\n }\n }\n\n for (const nftTransfer of this._nftTransfers) {\n if (\n nftTransfer.tokenId.compare(nftId.tokenId) === 0 &&\n nftTransfer.serialNumber.compare(nftId.serial) === 0\n ) {\n nftTransfer.senderAccountId = senderAccountId;\n nftTransfer.receiverAccountId = receiverAccountId;\n return this;\n }\n }\n\n this._nftTransfers.push(\n new TokenNftTransfer({\n tokenId: nftId.tokenId,\n serialNumber: nftId.serial,\n senderAccountId,\n receiverAccountId,\n isApproved: false,\n })\n );\n\n return this;\n }\n\n /**\n * @param {AccountId | string} accountId\n * @param {boolean} isApproved\n * @returns {TransferTransaction}\n */\n setHbarTransferApproval(accountId, isApproved) {\n const account =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId;\n\n for (const transfer of this._hbarTransfers) {\n if (transfer.accountId.compare(account) === 0) {\n transfer.isApproved = isApproved;\n }\n }\n\n return this;\n }\n\n /**\n * @param {TokenId | string} tokenId\n * @param {AccountId | string} accountId\n * @param {boolean} isApproved\n * @returns {TransferTransaction}\n */\n setTokenTransferApproval(tokenId, accountId, isApproved) {\n const token =\n typeof tokenId === \"string\" ? TokenId.fromString(tokenId) : tokenId;\n const account =\n typeof accountId === \"string\"\n ? AccountId.fromString(accountId)\n : accountId;\n\n for (const tokenTransfer of this._tokenTransfers) {\n if (\n tokenTransfer.tokenId.compare(token) === 0 &&\n tokenTransfer.accountId.compare(account) === 0\n ) {\n tokenTransfer.isApproved = isApproved;\n }\n }\n\n return this;\n }\n\n /**\n * @param {NftId | string} nftId\n * @param {boolean} isApproved\n * @returns {TransferTransaction}\n */\n setNftTransferApproval(nftId, isApproved) {\n const nft = typeof nftId === \"string\" ? NftId.fromString(nftId) : nftId;\n\n for (const transfer of this._nftTransfers) {\n if (\n transfer.tokenId.compare(nft.tokenId) === 0 &&\n transfer.serialNumber.compare(nft.serial) === 0\n ) {\n transfer.isApproved = isApproved;\n }\n }\n\n return this;\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.ITransaction} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return channel.crypto.cryptoTransfer(request);\n }\n\n /**\n * @override\n * @protected\n * @returns {NonNullable}\n */\n _getTransactionDataCase() {\n return \"cryptoTransfer\";\n }\n\n /**\n * @override\n * @protected\n * @returns {proto.ICryptoTransferTransactionBody}\n */\n _makeTransactionData() {\n /** @type {{tokenId: TokenId; expectedDecimals: number | null; transfers: TokenTransfer[]; nftTransfers: TokenNftTransfer[];}[]} */\n const tokenTransferList = [];\n\n this._tokenTransfers.sort((a, b) => {\n const compare = a.tokenId.compare(b.tokenId);\n\n if (compare !== 0) {\n return compare;\n }\n\n return a.accountId.compare(b.accountId);\n });\n\n this._nftTransfers.sort((a, b) => {\n const senderComparision = a.senderAccountId.compare(\n b.senderAccountId\n );\n if (senderComparision != 0) {\n return senderComparision;\n }\n\n const recipientComparision = a.receiverAccountId.compare(\n b.receiverAccountId\n );\n if (recipientComparision != 0) {\n return recipientComparision;\n }\n\n return a.serialNumber.compare(b.serialNumber);\n });\n\n let i = 0;\n let j = 0;\n while (\n i < this._tokenTransfers.length ||\n j < this._nftTransfers.length\n ) {\n if (\n i < this._tokenTransfers.length &&\n j < this._nftTransfers.length\n ) {\n const iTokenId = this._tokenTransfers[i].tokenId;\n const jTokenId = this._nftTransfers[j].tokenId;\n\n const last =\n tokenTransferList.length > 0\n ? tokenTransferList[tokenTransferList.length - 1]\n : null;\n const lastTokenId = last != null ? last.tokenId : null;\n\n if (\n last != null &&\n lastTokenId != null &&\n lastTokenId.compare(iTokenId) === 0\n ) {\n last.transfers.push(this._tokenTransfers[i++]);\n continue;\n }\n\n if (\n last != null &&\n lastTokenId != null &&\n lastTokenId.compare(jTokenId) === 0\n ) {\n last.nftTransfers.push(this._nftTransfers[j++]);\n continue;\n }\n\n const result = iTokenId.compare(jTokenId);\n\n if (result === 0) {\n tokenTransferList.push({\n tokenId: iTokenId,\n expectedDecimals:\n this._tokenTransfers[i].expectedDecimals,\n transfers: [this._tokenTransfers[i++]],\n nftTransfers: [this._nftTransfers[j++]],\n });\n } else if (result <= 0) {\n tokenTransferList.push({\n tokenId: iTokenId,\n expectedDecimals:\n this._tokenTransfers[i].expectedDecimals,\n transfers: [this._tokenTransfers[i++]],\n nftTransfers: [],\n });\n } else {\n tokenTransferList.push({\n tokenId: iTokenId,\n expectedDecimals: null,\n transfers: [],\n nftTransfers: [this._nftTransfers[j++]],\n });\n }\n } else if (i < this._tokenTransfers.length) {\n const iTokenId = this._tokenTransfers[i].tokenId;\n\n const last =\n tokenTransferList.length > 0\n ? tokenTransferList[tokenTransferList.length - 1]\n : null;\n const lastTokenId = last != null ? last.tokenId : null;\n\n if (\n last != null &&\n lastTokenId != null &&\n lastTokenId.compare(iTokenId) === 0\n ) {\n last.transfers.push(this._tokenTransfers[i++]);\n continue;\n }\n\n tokenTransferList.push({\n tokenId: iTokenId,\n expectedDecimals: this._tokenTransfers[i].expectedDecimals,\n transfers: [this._tokenTransfers[i++]],\n nftTransfers: [],\n });\n } else if (j < this._nftTransfers.length) {\n const jTokenId = this._nftTransfers[j].tokenId;\n\n const last =\n tokenTransferList.length > 0\n ? tokenTransferList[tokenTransferList.length - 1]\n : null;\n const lastTokenId = last != null ? last.tokenId : null;\n\n if (\n last != null &&\n lastTokenId != null &&\n lastTokenId.compare(jTokenId) === 0\n ) {\n last.nftTransfers.push(this._nftTransfers[j++]);\n continue;\n }\n\n tokenTransferList.push({\n tokenId: jTokenId,\n expectedDecimals: null,\n transfers: [],\n nftTransfers: [this._nftTransfers[j++]],\n });\n }\n }\n\n this._hbarTransfers.sort((a, b) => a.accountId.compare(b.accountId));\n\n return {\n transfers: {\n accountAmounts: this._hbarTransfers.map((transfer) => {\n return {\n accountID: transfer.accountId._toProtobuf(),\n amount: transfer.amount.toTinybars(),\n isApproval: transfer.isApproved,\n };\n }),\n },\n tokenTransfers: tokenTransferList.map((tokenTransfer) => {\n return {\n token: tokenTransfer.tokenId._toProtobuf(),\n expectedDecimals:\n tokenTransfer.expectedDecimals != null\n ? { value: tokenTransfer.expectedDecimals }\n : null,\n transfers: tokenTransfer.transfers.map((transfer) =>\n transfer._toProtobuf()\n ),\n nftTransfers: tokenTransfer.nftTransfers.map((transfer) =>\n transfer._toProtobuf()\n ),\n };\n }),\n };\n }\n}\n\nTRANSACTION_REGISTRY.set(\n \"cryptoTransfer\",\n // eslint-disable-next-line @typescript-eslint/unbound-method\n TransferTransaction._fromProtobuf\n);\n","import TokenId from \"../token/TokenId.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenBalance} proto.ITokenBalance\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class NullableTokenDecimalMap extends ObjectMap {\n constructor() {\n super((s) => TokenId.fromString(s));\n }\n}\n","import AccountId from \"./AccountId.js\";\nimport Hbar from \"../Hbar.js\";\nimport ObjectMap from \"../ObjectMap.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITransferList} proto.ITransferList\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n */\n\n/**\n * @typedef {import(\"../long.js\").LongObject} LongObject\n * @typedef {import(\"bignumber.js\").default} BigNumber\n */\n\n/**\n * @augments {ObjectMap}\n */\nexport default class HbarTransferMap extends ObjectMap {\n constructor() {\n super((s) => AccountId.fromString(s));\n }\n\n /**\n * @param {proto.ITransferList} transfers\n * @returns {HbarTransferMap}\n */\n static _fromProtobuf(transfers) {\n const accountTransfers = new HbarTransferMap();\n\n for (const transfer of transfers.accountAmounts != null\n ? transfers.accountAmounts\n : []) {\n const account = AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (transfer.accountID)\n );\n\n accountTransfers._set(\n account,\n Hbar.fromTinybars(/** @type {Long} */ (transfer.amount))\n );\n }\n\n return accountTransfers;\n }\n}\n","import Long from \"long\";\nimport AccountId from \"../account/AccountId.js\";\nimport TokenId from \"./TokenId.js\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").ITokenTransferList} proto.ITokenTransferList\n * @typedef {import(\"@hashgraph/proto\").IAccountAmount} proto.IAccountAmount\n * @typedef {import(\"@hashgraph/proto\").INftTransfer} proto.INftTransfer\n * @typedef {import(\"@hashgraph/proto\").IAccountID} proto.IAccountID\n * @typedef {import(\"@hashgraph/proto\").ITokenID} proto.ITokenID\n */\n\n/**\n * @typedef {import(\"bignumber.js\").default} BigNumber\n */\n\n/**\n * An account, and the amount that it sends or receives during a cryptocurrency tokentransfer.\n */\nexport default class TokenNftTransfer {\n /**\n * @internal\n * @param {object} props\n * @param {TokenId | string} props.tokenId\n * @param {AccountId | string} props.senderAccountId\n * @param {AccountId | string} props.receiverAccountId\n * @param {Long | number} props.serialNumber\n * @param {boolean} props.isApproved\n */\n constructor(props) {\n /**\n * The Token ID that sends or receives cryptocurrency.\n */\n this.tokenId =\n props.tokenId instanceof TokenId\n ? props.tokenId\n : TokenId.fromString(props.tokenId);\n\n /**\n * The Account ID that sends or receives cryptocurrency.\n */\n this.senderAccountId =\n props.senderAccountId instanceof AccountId\n ? props.senderAccountId\n : AccountId.fromString(props.senderAccountId);\n\n /**\n * The Account ID that sends or receives cryptocurrency.\n */\n this.receiverAccountId =\n props.receiverAccountId instanceof AccountId\n ? props.receiverAccountId\n : AccountId.fromString(props.receiverAccountId);\n\n this.serialNumber = Long.fromValue(props.serialNumber);\n this.isApproved = props.isApproved;\n }\n\n /**\n * @internal\n * @param {proto.ITokenTransferList[]} tokenTransfers\n * @returns {TokenNftTransfer[]}\n */\n static _fromProtobuf(tokenTransfers) {\n const transfers = [];\n\n for (const tokenTransfer of tokenTransfers) {\n const tokenId = TokenId._fromProtobuf(\n /** @type {proto.ITokenID} */ (tokenTransfer.token)\n );\n\n for (const transfer of tokenTransfer.nftTransfers != null\n ? tokenTransfer.nftTransfers\n : []) {\n transfers.push(\n new TokenNftTransfer({\n tokenId,\n senderAccountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n transfer.senderAccountID\n )\n ),\n receiverAccountId: AccountId._fromProtobuf(\n /** @type {proto.IAccountID} */ (\n transfer.receiverAccountID\n )\n ),\n serialNumber:\n transfer.serialNumber != null\n ? transfer.serialNumber\n : Long.ZERO,\n isApproved: transfer.isApproval == true,\n })\n );\n }\n }\n\n return transfers;\n }\n\n /**\n * @internal\n * @returns {proto.INftTransfer}\n */\n _toProtobuf() {\n return {\n senderAccountID: this.senderAccountId._toProtobuf(),\n receiverAccountID: this.receiverAccountId._toProtobuf(),\n serialNumber: this.serialNumber,\n isApproval: this.isApproved,\n };\n }\n}\n","import TransactionId from \"../transaction/TransactionId.js\";\nimport Hbar from \"../Hbar.js\";\nimport Executable from \"../Executable.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport { _makePaymentTransaction, COST_QUERY } from \"./Query.js\";\nimport { ResponseType as ProtoResponseType } from \"@hashgraph/proto\";\n\n/**\n * @namespace proto\n * @typedef {import(\"@hashgraph/proto\").IQuery} proto.IQuery\n * @typedef {import(\"@hashgraph/proto\").IResponse} proto.IResponse\n * @typedef {import(\"@hashgraph/proto\").IQueryHeader} proto.IQueryHeader\n */\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../Status.js\").default} Status\n * @typedef {import(\"../Executable.js\").ExecutionState} ExecutionState\n */\n\n/**\n * @template OutputT\n * @augments {Executable}\n */\nexport default class CostQuery extends Executable {\n /**\n * @param {import(\"./Query.js\").default} query\n */\n constructor(query) {\n super();\n\n this._query = query;\n this._grpcDeadline = query._grpcDeadline;\n this._requestTimeout = query._requestTimeout;\n this._nodeAccountIds.setList(query._nodeAccountIds.list);\n\n /**\n * @type {proto.IQueryHeader | null}\n */\n this._header = null;\n }\n\n /**\n * @returns {TransactionId}\n */\n _getTransactionId() {\n return this._query._getTransactionId();\n }\n\n /**\n * @abstract\n * @protected\n * @param {import(\"../client/Client.js\").default<*, *>} client\n * @returns {Promise}\n */\n async _beforeExecute(client) {\n if (client == null) {\n throw new Error(\"Cannot do CostQuery without Client\");\n }\n\n const operator = client._operator;\n\n if (operator == null) {\n throw new Error(\n \"`client` must have an `operator` or an explicit payment transaction must be provided\"\n );\n }\n\n if (this._query._nodeAccountIds.isEmpty) {\n this._query._nodeAccountIds.setList(\n client._network.getNodeAccountIdsForExecute()\n );\n }\n\n this._header = {\n payment: await _makePaymentTransaction(\n /** @type {import(\"../transaction/TransactionId.js\").default} */\n (TransactionId.generate(new AccountId(0))),\n new AccountId(0),\n operator,\n new Hbar(0)\n ),\n responseType: ProtoResponseType.COST_ANSWER,\n };\n }\n\n /**\n * @abstract\n * @internal\n * @returns {Promise}\n */\n _makeRequestAsync() {\n return Promise.resolve(\n this._query._onMakeRequest(\n /** @type {proto.IQueryHeader} */ (this._header)\n )\n );\n }\n\n /**\n * @abstract\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {ExecutionState}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _shouldRetry(request, response) {\n return this._query._shouldRetry(request, response);\n }\n\n /**\n * @abstract\n * @internal\n * @param {proto.IQuery} request\n * @param {proto.IResponse} response\n * @returns {Error}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapStatusError(request, response) {\n return this._query._mapStatusError(request, response);\n }\n\n /**\n * @override\n * @internal\n * @param {proto.IResponse} response\n * @param {AccountId} nodeAccountId\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _mapResponse(response, nodeAccountId, request) {\n const cost = this._query._mapResponseHeader(response).cost;\n return Promise.resolve(\n Hbar.fromTinybars(/** @type {Long | number} */ (cost))\n );\n }\n\n /**\n * @override\n * @internal\n * @param {Channel} channel\n * @param {proto.IQuery} request\n * @returns {Promise}\n */\n _execute(channel, request) {\n return this._query._execute(channel, request);\n }\n\n /**\n * @override\n * @returns {AccountId}\n */\n _getNodeAccountId() {\n if (!this._nodeAccountIds.isEmpty) {\n // if there are payment transactions,\n // we need to use the node of the current payment transaction\n return this._nodeAccountIds.list[this._nextNodeAccountIdIndex];\n } else {\n throw new Error(\n \"(BUG) nodeAccountIds were not set for query before executing\"\n );\n }\n }\n}\n\nCOST_QUERY.push((query) => new CostQuery(query));\n","import Client from \"./Client.js\";\nimport WebChannel from \"../channel/WebChannel.js\";\nimport AccountId from \"../account/AccountId.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * @typedef {import(\"./Client.js\").ClientConfiguration} ClientConfiguration\n */\n\nexport const Network = {\n /**\n * @param {string} name\n * @returns {{[key: string]: (string | AccountId)}}\n */\n fromName(name) {\n switch (name) {\n case \"mainnet\":\n return Network.MAINNET;\n\n case \"testnet\":\n return Network.TESTNET;\n\n case \"previewnet\":\n return Network.PREVIEWNET;\n\n default:\n throw new Error(`unknown network name: ${name}`);\n }\n },\n\n MAINNET: {\n \"https://grpc-web.myhbarwallet.com:443\": new AccountId(3),\n },\n\n TESTNET: {\n \"https://grpc-web.testnet.myhbarwallet.com:443\": new AccountId(3),\n },\n\n PREVIEWNET: {\n \"https://grpc-web.previewnet.myhbarwallet.com:443\": new AccountId(3),\n },\n};\n\n/**\n * @augments {Client}\n */\nexport default class WebClient extends Client {\n /**\n * @param {ClientConfiguration} [props]\n */\n constructor(props) {\n super(props);\n\n if (props != null) {\n if (typeof props.network === \"string\") {\n switch (props.network) {\n case \"mainnet\":\n this.setNetwork(Network.MAINNET);\n this.setLedgerId(LedgerId.MAINNET);\n break;\n\n case \"testnet\":\n this.setNetwork(Network.TESTNET);\n this.setLedgerId(LedgerId.TESTNET);\n break;\n\n case \"previewnet\":\n this.setNetwork(Network.PREVIEWNET);\n this.setLedgerId(LedgerId.PREVIEWNET);\n break;\n\n default:\n throw new Error(\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n `unknown network: ${props.network}`\n );\n }\n } else if (props.network != null) {\n this.setNetwork(props.network);\n }\n }\n }\n\n /**\n * @param {string | ClientConfiguration} data\n * @returns {WebClient}\n */\n static fromConfig(data) {\n return new WebClient(\n typeof data === \"string\"\n ? /** @type {ClientConfiguration | undefined} */ (\n JSON.parse(data)\n )\n : data\n );\n }\n\n /**\n * Construct a client for a specific network.\n *\n * It is the responsibility of the caller to ensure that all nodes in the map are part of the\n * same Hedera network. Failure to do so will result in undefined behavior.\n *\n * The client will load balance all requests to Hedera using a simple round-robin scheme to\n * chose nodes to send transactions to. For one transaction, at most 1/3 of the nodes will be\n * tried.\n *\n * @param {{[key: string]: (string | AccountId)} | string} network\n * @returns {WebClient}\n */\n static forNetwork(network) {\n return new WebClient({ network });\n }\n\n /**\n * @param {string} network\n * @returns {WebClient}\n */\n static forName(network) {\n return new WebClient({ network });\n }\n\n /**\n * Construct a Hedera client pre-configured for Mainnet access.\n *\n * @returns {WebClient}\n */\n static forMainnet() {\n return new WebClient({ network: \"mainnet\" });\n }\n\n /**\n * Construct a Hedera client pre-configured for Testnet access.\n *\n * @returns {WebClient}\n */\n static forTestnet() {\n return new WebClient({ network: \"testnet\" });\n }\n\n /**\n * Construct a Hedera client pre-configured for Previewnet access.\n *\n * @returns {WebClient}\n */\n static forPreviewnet() {\n return new WebClient({ network: \"previewnet\" });\n }\n\n /**\n * @param {{[key: string]: (string | AccountId)} | string} network\n * @returns {void}\n */\n setNetwork(network) {\n if (typeof network === \"string\") {\n switch (network) {\n case \"previewnet\":\n this._network.setNetwork(Network.PREVIEWNET);\n break;\n case \"testnet\":\n this._network.setNetwork(Network.TESTNET);\n break;\n case \"mainnet\":\n this._network.setNetwork(Network.MAINNET);\n }\n } else {\n this._network.setNetwork(network);\n }\n }\n\n /**\n * @param {string[] | string} mirrorNetwork\n * @returns {this}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setMirrorNetwork(mirrorNetwork) {\n if (typeof mirrorNetwork === \"string\") {\n this._mirrorNetwork.setNetwork([]);\n } else {\n this._mirrorNetwork.setNetwork(mirrorNetwork);\n }\n\n return this;\n }\n\n /**\n * @override\n * @returns {(address: string) => WebChannel}\n */\n _createNetworkChannel() {\n return (address) => new WebChannel(address);\n }\n\n /**\n * @override\n * @returns {(address: string) => *}\n */\n _createMirrorNetworkChannel() {\n return () => {\n throw new Error(\"mirror support is not supported in browsers\");\n };\n }\n}\n","import AccountId from \"../account/AccountId.js\";\nimport AccountBalanceQuery from \"../account/AccountBalanceQuery.js\";\nimport Hbar from \"../Hbar.js\";\nimport Network from \"./Network.js\";\nimport MirrorNetwork from \"./MirrorNetwork.js\";\nimport PublicKey from \"../PublicKey.js\";\nimport PrivateKey from \"../PrivateKey.js\";\nimport LedgerId from \"../LedgerId.js\";\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../channel/MirrorChannel.js\").default} MirrorChannel\n */\n\n/**\n * @typedef {object} Operator\n * @property {string | PrivateKey} privateKey\n * @property {string | AccountId} accountId\n */\n\n/**\n * @typedef {object} ClientOperator\n * @property {PublicKey} publicKey\n * @property {AccountId} accountId\n * @property {(message: Uint8Array) => Promise} transactionSigner\n */\n\n/**\n * @typedef {object} ClientConfiguration\n * @property {{[key: string]: (string | AccountId)} | string} network\n * @property {string[] | string} [mirrorNetwork]\n * @property {Operator} [operator]\n */\n\n/**\n * @typedef {\"mainnet\" | \"testnet\" | \"previewnet\"} NetworkName\n */\n\n/**\n * @abstract\n * @template {Channel} ChannelT\n * @template {MirrorChannel} MirrorChannelT\n */\nexport default class Client {\n /**\n * @protected\n * @hideconstructor\n * @param {ClientConfiguration} [props]\n */\n constructor(props) {\n /**\n * List of mirror network URLs.\n *\n * @internal\n * @type {MirrorNetwork}\n */\n this._mirrorNetwork = new MirrorNetwork(\n this._createMirrorNetworkChannel()\n );\n\n /**\n * Map of node account ID (as a string)\n * to the node URL.\n *\n * @internal\n * @type {Network}\n */\n this._network = new Network(this._createNetworkChannel());\n\n /**\n * @internal\n * @type {?ClientOperator}\n */\n this._operator = null;\n\n /**\n * @private\n * @type {?Hbar}\n */\n this._defaultMaxTransactionFee = null;\n\n /**\n * @private\n * @type {Hbar}\n */\n this._maxQueryPayment = new Hbar(1);\n\n if (props != null) {\n if (props.operator != null) {\n this.setOperator(\n props.operator.accountId,\n props.operator.privateKey\n );\n }\n }\n\n this._signOnDemand = false;\n\n this._autoValidateChecksums = false;\n\n /** @type {number | null} */\n this._maxAttempts = null;\n\n /** @type {number} */\n this._minBackoff = 250;\n\n /** @type {number} */\n this._maxBackoff = 8000;\n\n this._defaultRegenerateTransactionId = true;\n\n this._requestTimeout = null;\n }\n\n /**\n * @deprecated\n * @param {NetworkName} networkName\n * @returns {this}\n */\n setNetworkName(networkName) {\n // uses custom NetworkName type\n // remove if phasing out set|get NetworkName\n console.warn(\"Deprecated: Use `setLedgerId` instead\");\n return this.setLedgerId(networkName);\n }\n\n /**\n * @deprecated\n * @returns {string | null}\n */\n get networkName() {\n console.warn(\"Deprecated: Use `ledgerId` instead\");\n return this.ledgerId != null ? this.ledgerId.toString() : null;\n }\n\n /**\n * @param {string|LedgerId} ledgerId\n * @returns {this}\n */\n setLedgerId(ledgerId) {\n this._network.setLedgerId(\n typeof ledgerId === \"string\"\n ? LedgerId.fromString(ledgerId)\n : ledgerId\n );\n\n return this;\n }\n\n /**\n * @returns {LedgerId | null}\n */\n get ledgerId() {\n return this._network._ledgerId != null ? this._network.ledgerId : null;\n }\n\n /**\n * @param {{[key: string]: (string | AccountId)} | string} network\n * @returns {void}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setNetwork(network) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @returns {{[key: string]: (string | AccountId)}}\n */\n get network() {\n return this._network.network;\n }\n\n /**\n * @param {string[] | string} mirrorNetwork\n * @returns {void}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setMirrorNetwork(mirrorNetwork) {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @returns {string[]}\n */\n get mirrorNetwork() {\n return this._mirrorNetwork.network;\n }\n\n /**\n * @returns {boolean}\n */\n get signOnDemand() {\n return this._signOnDemand;\n }\n\n /**\n * @param {boolean} signOnDemand\n */\n setSignOnDemand(signOnDemand) {\n this._signOnDemand = signOnDemand;\n }\n\n /**\n * @returns {boolean}\n */\n isTransportSecurity() {\n return this._network.isTransportSecurity();\n }\n\n /**\n * @param {boolean} transportSecurity\n * @returns {this}\n */\n setTransportSecurity(transportSecurity) {\n this._network.setTransportSecurity(transportSecurity);\n this._mirrorNetwork.setTransportSecurity(transportSecurity);\n return this;\n }\n\n /**\n * Set the account that will, by default, pay for transactions and queries built with this client.\n *\n * @param {AccountId | string} accountId\n * @param {PrivateKey | string} privateKey\n * @returns {this}\n */\n setOperator(accountId, privateKey) {\n const key =\n typeof privateKey === \"string\"\n ? PrivateKey.fromString(privateKey)\n : privateKey;\n\n return this.setOperatorWith(accountId, key.publicKey, (message) =>\n Promise.resolve(key.sign(message))\n );\n }\n\n /**\n * Sets the account that will, by default, pay for transactions and queries built with\n * this client.\n *\n * @param {AccountId | string} accountId\n * @param {PublicKey | string} publicKey\n * @param {(message: Uint8Array) => Promise} transactionSigner\n * @returns {this}\n */\n setOperatorWith(accountId, publicKey, transactionSigner) {\n const accountId_ =\n accountId instanceof AccountId\n ? accountId\n : AccountId.fromString(accountId);\n\n if (this._network._ledgerId != null) {\n accountId_.validateChecksum(this);\n }\n\n this._operator = {\n transactionSigner,\n\n accountId: accountId_,\n\n publicKey:\n publicKey instanceof PublicKey\n ? publicKey\n : PublicKey.fromString(publicKey),\n };\n\n return this;\n }\n\n /**\n * @param {boolean} value\n * @returns {this}\n */\n setAutoValidateChecksums(value) {\n this._autoValidateChecksums = value;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n isAutoValidateChecksumsEnabled() {\n return this._autoValidateChecksums;\n }\n\n /**\n * @returns {?AccountId}\n */\n get operatorAccountId() {\n return this._operator != null ? this._operator.accountId : null;\n }\n\n /**\n * @returns {?PublicKey}\n */\n get operatorPublicKey() {\n return this._operator != null ? this._operator.publicKey : null;\n }\n\n /**\n * @deprecated - Use `defaultMaxTransactionFee` instead\n * @returns {?Hbar}\n */\n get maxTransactionFee() {\n return this._defaultMaxTransactionFee;\n }\n\n /**\n * @deprecated - Use `setDefaultMaxTransactionFee()` instead\n * Set the maximum fee to be paid for transactions\n * executed by this client.\n * @param {Hbar} maxTransactionFee\n * @returns {this}\n */\n setMaxTransactionFee(maxTransactionFee) {\n this._defaultMaxTransactionFee = maxTransactionFee;\n return this;\n }\n\n /**\n * @returns {?Hbar}\n */\n get defaultMaxTransactionFee() {\n return this._defaultMaxTransactionFee;\n }\n\n /**\n * Set the defaultimum fee to be paid for transactions\n * executed by this client.\n *\n * @param {Hbar} defaultMaxTransactionFee\n * @returns {this}\n */\n setDefaultMaxTransactionFee(defaultMaxTransactionFee) {\n this._defaultMaxTransactionFee = defaultMaxTransactionFee;\n return this;\n }\n\n /**\n * @returns {boolean}\n */\n get defaultRegenerateTransactionId() {\n return this._defaultRegenerateTransactionId;\n }\n\n /**\n * Set if a new transaction ID should be generated when a `TRANSACTION_EXPIRED` status\n * is returned.\n *\n * @param {boolean} defaultRegenerateTransactionId\n * @returns {this}\n */\n setDefaultRegenerateTransactionId(defaultRegenerateTransactionId) {\n this._defaultRegenerateTransactionId = defaultRegenerateTransactionId;\n return this;\n }\n\n /**\n * @returns {Hbar}\n */\n get maxQueryPayment() {\n return this._maxQueryPayment;\n }\n\n /**\n * Set the maximum payment allowable for queries.\n *\n * @param {Hbar} maxQueryPayment\n * @returns {Client}\n */\n setMaxQueryPayment(maxQueryPayment) {\n this._maxQueryPayment = maxQueryPayment;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get maxAttempts() {\n return this._maxAttempts != null ? this._maxAttempts : 10;\n }\n\n /**\n * @param {number} maxAttempts\n * @returns {this}\n */\n setMaxAttempts(maxAttempts) {\n this._maxAttempts = maxAttempts;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get maxNodeAttempts() {\n return this._network.maxNodeAttempts;\n }\n\n /**\n * @param {number} maxNodeAttempts\n * @returns {this}\n */\n setMaxNodeAttempts(maxNodeAttempts) {\n this._network.setMaxNodeAttempts(maxNodeAttempts);\n return this;\n }\n\n /**\n * @returns {number}\n */\n get nodeWaitTime() {\n return this._network.minBackoff;\n }\n\n /**\n * @param {number} nodeWaitTime\n * @returns {this}\n */\n setNodeWaitTime(nodeWaitTime) {\n this._network.setMinBackoff(nodeWaitTime);\n return this;\n }\n\n /**\n * @returns {number}\n */\n get maxNodesPerTransaction() {\n return this._network.maxNodesPerTransaction;\n }\n\n /**\n * @param {number} maxNodesPerTransaction\n * @returns {this}\n */\n setMaxNodesPerTransaction(maxNodesPerTransaction) {\n this._network.setMaxNodesPerTransaction(maxNodesPerTransaction);\n return this;\n }\n\n /**\n * @param {?number} minBackoff\n * @returns {this}\n */\n setMinBackoff(minBackoff) {\n if (minBackoff == null) {\n throw new Error(\"minBackoff cannot be null.\");\n }\n if (minBackoff > this._maxBackoff) {\n throw new Error(\"minBackoff cannot be larger than maxBackoff.\");\n }\n this._minBackoff = minBackoff;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get minBackoff() {\n return this._minBackoff;\n }\n\n /**\n * @param {?number} maxBackoff\n * @returns {this}\n */\n setMaxBackoff(maxBackoff) {\n if (maxBackoff == null) {\n throw new Error(\"maxBackoff cannot be null.\");\n } else if (maxBackoff < this._minBackoff) {\n throw new Error(\"maxBackoff cannot be smaller than minBackoff.\");\n }\n this._maxBackoff = maxBackoff;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get maxBackoff() {\n return this._maxBackoff;\n }\n\n /**\n * @param {number} requestTimeout - Number of milliseconds\n * @returns {this}\n */\n setRequestTimeout(requestTimeout) {\n this._requestTimeout = requestTimeout;\n return this;\n }\n\n /**\n * @returns {?number}\n */\n get requestTimeout() {\n return this._requestTimeout;\n }\n\n /**\n * @param {AccountId | string} accountId\n */\n async ping(accountId) {\n try {\n await new AccountBalanceQuery({ accountId })\n .setNodeAccountIds([\n accountId instanceof AccountId\n ? accountId\n : AccountId.fromString(accountId),\n ])\n .execute(this);\n } catch (_) {\n // Do nothing\n }\n }\n\n async pingAll() {\n for (const nodeAccountId of Object.values(this._network.network)) {\n await this.ping(nodeAccountId);\n }\n }\n\n /**\n * @returns {void}\n */\n close() {\n this._network.close();\n this._mirrorNetwork.close();\n }\n\n /**\n * @abstract\n * @returns {(address: string) => ChannelT}\n */\n _createNetworkChannel() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @abstract\n * @returns {(address: string) => MirrorChannelT}\n */\n _createMirrorNetworkChannel() {\n throw new Error(\"not implemented\");\n }\n}\n","import AccountId from \"../account/AccountId.js\";\nimport Node from \"../Node.js\";\nimport {\n PREVIEWNET_ADDRESS_BOOK,\n TESTNET_ADDRESS_BOOK,\n MAINNET_ADDRESS_BOOK,\n} from \"../address_book/AddressBooks.js\";\nimport ManagedNetwork from \"./ManagedNetwork.js\";\n\n/**\n * @typedef {import(\"../channel/Channel.js\").default} Channel\n * @typedef {import(\"../address_book/NodeAddressBook.js\").default} NodeAddressBook\n */\n\n/**\n * @augments {ManagedNetwork}\n */\nexport default class Network extends ManagedNetwork {\n /**\n * @param {(address: string) => Channel} createNetworkChannel\n */\n constructor(createNetworkChannel) {\n super(createNetworkChannel);\n\n this._maxNodesPerTransaction = -1;\n\n /** @type {NodeAddressBook | null} */\n this._addressBook = null;\n }\n\n /**\n * @param {{[key: string]: (string | AccountId)}} network\n */\n setNetwork(network) {\n this._setNetwork(\n // eslint-disable-next-line ie11/no-collection-args\n new Map(\n // eslint-disable-next-line ie11/no-collection-args\n Object.entries(network).map(([key, value]) => {\n return [\n key,\n typeof value === \"string\"\n ? AccountId.fromString(value)\n : value,\n ];\n })\n )\n );\n }\n\n /**\n * @returns {{[key: string]: (string | AccountId)}}\n */\n get network() {\n /**\n * @type {{[key: string]: (string | AccountId)}}\n */\n var n = {};\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const node of this._nodes) {\n n[node.address.toString()] = node.accountId;\n }\n\n return n;\n }\n\n /**\n * @param {string} networkName\n * @returns {this}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setNetworkName(networkName) {\n super.setLedgerId(networkName);\n\n switch (networkName) {\n case \"mainnet\":\n this._addressBook = MAINNET_ADDRESS_BOOK;\n break;\n case \"testnet\":\n this._addressBook = TESTNET_ADDRESS_BOOK;\n break;\n case \"previewnet\":\n this._addressBook = PREVIEWNET_ADDRESS_BOOK;\n break;\n }\n\n if (this._addressBook != null) {\n for (const node of this._nodes) {\n for (const address of this._addressBook.nodeAddresses) {\n if (\n address.accountId != null &&\n address.accountId.toString() ===\n node.accountId.toString()\n ) {\n node.setNodeAddress(address);\n }\n }\n }\n }\n\n return this;\n }\n\n /**\n * @returns {string | null}\n */\n get networkName() {\n return this._ledgerId != null ? this._ledgerId.toString() : null;\n }\n\n /**\n * @abstract\n * @param {[string, (string | AccountId)]} entry\n * @returns {Node}\n */\n _createNodeFromNetworkEntry(entry) {\n const accountId =\n typeof entry[1] === \"string\"\n ? AccountId.fromString(entry[1])\n : entry[1];\n\n return new Node({\n newNode: {\n address: entry[0],\n accountId,\n channelInitFunction: this._createNetworkChannel,\n },\n }).setMinBackoff(this._minBackoff);\n }\n\n /**\n * @abstract\n * @param {Map} network\n * @returns {number[]}\n */\n _getNodesToRemove(network) {\n const indexes = [];\n\n for (let i = this._nodes.length - 1; i >= 0; i--) {\n const node = this._nodes[i];\n const accountId = network.get(node.address.toString());\n\n if (\n accountId == null ||\n accountId.toString() !== node.accountId.toString()\n ) {\n indexes.push(i);\n }\n }\n\n return indexes;\n }\n\n /**\n * @abstract\n * @param {[string, (string | AccountId)]} entry\n * @returns {boolean}\n */\n _checkNetworkContainsEntry(entry) {\n for (const node of this._nodes) {\n if (node.address.toString() === entry[0]) {\n return true;\n }\n }\n\n return false;\n }\n\n /**\n * @returns {number}\n */\n get maxNodesPerTransaction() {\n return this._maxNodesPerTransaction;\n }\n\n /**\n * @param {number} maxNodesPerTransaction\n * @returns {this}\n */\n setMaxNodesPerTransaction(maxNodesPerTransaction) {\n this._maxNodesPerTransaction = maxNodesPerTransaction;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get maxNodeAttempts() {\n return this._maxNodeAttempts;\n }\n\n /**\n * @param {number} maxNodeAttempts\n * @returns {this}\n */\n setMaxNodeAttempts(maxNodeAttempts) {\n this._maxNodeAttempts = maxNodeAttempts;\n return this;\n }\n\n /**\n * @returns {number}\n */\n get minBackoff() {\n return this._minBackoff;\n }\n\n /**\n * @param {number} minBackoff\n * @returns {this}\n */\n setMinBackoff(minBackoff) {\n this._minBackoff = minBackoff;\n for (const node of this._nodes) {\n node.setMinBackoff(minBackoff);\n }\n return this;\n }\n\n /**\n * @internal\n * @returns {number}\n */\n getNumberOfNodesForTransaction() {\n if (this._maxNodesPerTransaction > 0) {\n return this._maxNodesPerTransaction;\n }\n\n return (this._nodes.length + 3 - 1) / 3;\n }\n\n /**\n * @internal\n * @returns {AccountId[]}\n */\n getNodeAccountIdsForExecute() {\n return this._getNumberOfMostHealthyNodes(\n this.getNumberOfNodesForTransaction()\n ).map((node) => node.accountId);\n }\n}\n","import ManagedNode from \"./ManagedNode.js\";\nimport { PREVIEWNET_CERTS, TESTNET_CERTS, MAINNET_CERTS } from \"./NodeCerts.js\";\n\n/**\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n * @typedef {import(\"./address_book/NodeAddress.js\").default} NodeAddress\n * @typedef {import(\"./channel/Channel.js\").default} Channel\n * @typedef {import(\"./ManagedNodeAddress.js\").default} ManagedNodeAddress\n * @typedef {import(\"./LedgerId.js\").default} LedgerId\n */\n\n/**\n * @typedef {object} NewNode\n * @property {AccountId} accountId\n * @property {string} address\n * @property {(address: string, cert?: string) => Channel} channelInitFunction\n */\n\n/**\n * @typedef {object} CloneNode\n * @property {Node} node\n * @property {ManagedNodeAddress} address\n */\n\n/**\n * @augments {ManagedNode}\n */\nexport default class Node extends ManagedNode {\n /**\n * @param {object} props\n * @param {NewNode=} [props.newNode]\n * @param {CloneNode=} [props.cloneNode]\n */\n constructor(props = {}) {\n super(props);\n\n if (props.newNode != null) {\n /** @type {AccountId} */\n this._accountId = props.newNode.accountId;\n\n /** @type {NodeAddress | null} */\n this._nodeAddress = null;\n } else if (props.cloneNode != null) {\n /** @type {AccountId} */\n this._accountId = props.cloneNode.node._accountId;\n\n /** @type {NodeAddress | null} */\n this._nodeAddress = props.cloneNode.node._nodeAddress;\n } else {\n throw new Error(`failed to create node: ${JSON.stringify(props)}`);\n }\n }\n\n /**\n * @returns {string}\n */\n getKey() {\n return this._accountId.toString();\n }\n\n /**\n * @returns {ManagedNode}\n */\n toInsecure() {\n return /** @type {this} */ (\n new Node({\n cloneNode: { node: this, address: this._address.toInsecure() },\n })\n );\n }\n\n /**\n * @returns {ManagedNode}\n */\n toSecure() {\n return /** @type {this} */ (\n new Node({\n cloneNode: { node: this, address: this._address.toSecure() },\n })\n );\n }\n\n /**\n * @param {LedgerId|string} ledgerId\n * @returns {this}\n */\n setCert(ledgerId) {\n switch (ledgerId.toString()) {\n case \"previewnet\":\n this._cert = PREVIEWNET_CERTS[this._accountId.toString()];\n break;\n case \"testnet\":\n this._cert = TESTNET_CERTS[this._accountId.toString()];\n break;\n case \"mainnet\":\n this._cert = MAINNET_CERTS[this._accountId.toString()];\n break;\n }\n\n return this;\n }\n\n /**\n * @returns {AccountId}\n */\n get accountId() {\n return this._accountId;\n }\n\n /**\n * @returns {NodeAddress | null}\n */\n get nodeAddress() {\n return this._nodeAddress;\n }\n\n /**\n * @param {NodeAddress} nodeAddress\n * @returns {this}\n */\n setNodeAddress(nodeAddress) {\n this._nodeAddress = nodeAddress;\n return this;\n }\n}\n","/**\n * @typedef {import(\"./account/AccountId.js\").default} AccountId\n * @typedef {import(\"./channel/Channel.js\").default} Channel\n * @typedef {import(\"./channel/MirrorChannel.js\").default} MirrorChannel\n * @typedef {import(\"./address_book/NodeAddress.js\").default} NodeAddress\n */\n\nexport const HOST_AND_PORT = /^(\\S+):(\\d+)$/;\n\nexport default class ManagedNodeAddress {\n /**\n * @param {object} props\n * @param {string} [props.address]\n * @param {string} [props.host]\n * @param {number | null} [props.port]\n */\n constructor(props = {}) {\n if (props.address != null) {\n const hostAndPortResult = HOST_AND_PORT.exec(props.address);\n\n if (hostAndPortResult == null) {\n throw new Error(`failed to parse address: ${props.address}`);\n }\n\n /** @type {string} */\n this._address = /** @type {string} */ (hostAndPortResult[1]);\n\n /** @type {number | null} */\n this._port =\n hostAndPortResult[2] != null\n ? parseInt(/** @type {string }*/ (hostAndPortResult[2]))\n : null;\n } else if (props.host != null && props.port != null) {\n /** @type {string} */\n this._address = props.host;\n\n /** @type {number | null} */\n this._port = props.port;\n } else {\n throw new Error(\n `failed to create a managed node address: ${JSON.stringify(\n props\n )}`\n );\n }\n\n Object.freeze(this);\n }\n\n /**\n * @param {string} address\n * @returns {ManagedNodeAddress};\n */\n static fromString(address) {\n return new ManagedNodeAddress({ address });\n }\n\n toInsecure() {\n let port = this.port;\n\n switch (this.port) {\n case 50212:\n port = 50211;\n break;\n case 443:\n port = 5600;\n }\n\n return new ManagedNodeAddress({ host: this.address, port });\n }\n\n toSecure() {\n let port = this.port;\n\n switch (this.port) {\n case 50211:\n port = 50212;\n break;\n case 5600:\n port = 443;\n }\n\n return new ManagedNodeAddress({ host: this.address, port });\n }\n\n /**\n * @returns {string}\n */\n get address() {\n return this._address;\n }\n\n /**\n * @returns {number | null}\n */\n get port() {\n return this._port;\n }\n\n /**\n * @returns {boolean}\n */\n isTransportSecurity() {\n return this._port == 50212 || this._port == 443;\n }\n\n /**\n * @returns {string}\n */\n toString() {\n if (this.port == null) {\n return this.address;\n } else {\n return `${this.address}:${this.port}`;\n }\n }\n}\n","/** @type {{[key: string]: string}} */\nexport const PREVIEWNET_CERTS = {\n \"0.0.3\": `-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUenyqJ4UaFBbwokatcUqAwW3o3rswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU4WhgPMjI5NTA2MDcyMjIxNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEm5b1+oG9R0qt\nzM7UZnS5l/xxUNHIHq5+NAvtlviCpJL19jrW9+/UOy00Qqc6vS6tS1hS+dNJmpiZ\nFN0EHew4VDR7ACnL4LDJKmIHWjQ0iwvZo5kCpO0r9BtPN5FvaSxyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUeciBviJtjeuue0GPf1xllNw7qvYwCgYIKoZIzj0EAwMDaAAwZQIw\nJeG0H2HdsI1VhOYmJmYlNeKCNgAk+LMorzPmsIInVBO2HK2IrKfpReWDS/m5j51V\nAjEAxKBxDezJDqAZHTkTXCg+X9Q9V6J6M5yDy5IS90aCWEo+W8C1Hc6hkn2/NrvT\nPhwK\n-----END CERTIFICATE-----\n`,\n \"0.0.4\": `-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUUfjO8LyXBdzrzbAe1Yl+d34IDsIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAERwfj4ZtD/wRb\nf8h9NEMu2sQoLFK9Gc4SQ8o6j4ccLYGdgOoVoq4zzy4Jr7ZtCTuACfCfhp7wy8ra\n+6cugccaSd6AzOKRSVZvQvkUTFKIoAOKwp6IhlU48rmi80MT07eyo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCGhfVMP72Y0G5XUksE3dPgFHrzkwCgYIKoZIzj0EAwMDZwAwZAIw\ncpX7irZWyuujWRYUs9kLNgB2YLQK+n8r1fH+tJg3+zkcZ2pzhGWmpUUZWOzsDqGC\nAjBUbhlmrTc4LrEBN0EMiRYzfPD2kBZxusLBDIg/aDYERCMcsFvF1T9SsuasF/B+\ncI8=\n-----END CERTIFICATE-----\n`,\n \"0.0.5\": `-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUIo4L+7xe/mUmpKy4qOAQEIxz8UMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEoFgCjb1/7BUJ\nEXKIPJLlsOSp/39G8l92wOSr7h+Py7iwVwu68H2ykftMOq3tRwDRXZHz7ViqcIZ9\nlfMcS8sbRtVm9tBbNciVUqTLWX9nHr/c4PhKEi+LdgtSUr2+hHiWo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMR89BHC3yKC4YwUgyBVQUGBCprQwCgYIKoZIzj0EAwMDZwAwZAIw\nUs2BdslcScIwcmxoB60K7/1BPfQI8ccDZIMosas6U2zhinTnRKik1T0i+uHhLl8e\nAjA5apAwSPTnP7j3Bo/FOCkfjTqOjwp2lUqzDJYKolKsHX2sy8hX9MkYiY46SaJ1\nP+0=\n-----END CERTIFICATE-----\n`,\n \"0.0.6\": `-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUWpji03mJsR/16MP8BrOfpNz7aQMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMTU5WhgPMjI5NTA2MDcyMjIxNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE+KDMC99Q1rWi\n+FwlytGMS5qzTDytCvk+PzdONnDZ/weNSv4j3BXSo588IwhIxLtfcBlyo/+PmE1c\n5qGFXuMoZjGr22VpvogkRgPejD+Gawb4A2XHkMCD8NmO66uPw97po1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUN1qEI4eQ+WHavb9ypGV417NvhGowCgYIKoZIzj0EAwMDaAAwZQIw\nL0khkiDOiFRa3wx9l5JNjaSRePPc3ZaTaJQkPYeauMaLWEvmC/0e2/e9gPm5qJ8E\nAjEAgXQMko3vNB8VRN4XjyFJa8p/muZ/tLA15wPnb/boUmiZ+njDDSaiu8tIQrTB\ngHW6\n-----END CERTIFICATE-----\n`,\n \"0.0.7\": `-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEJ7AJvrqDUBNKbssGoJtww3v+WowCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjAwWhgPMjI5NTA2MDcyMjIyMDBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEfgJ8w9GUWM3y\nyusedZOFQrgXFVsdtRsMSHbqyVCN6+Wow6SIjy29GRMSP5R2aswupFgh6lXJRqnr\ntY+hpRumFKsmSo+5+l8DBcql4rzs4utESTehM+Cq9LYc4A1z0UIRo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUMCm3UqSbT01Zr23hLzCGnXbDa+MwCgYIKoZIzj0EAwMDZwAwZAIw\nFNcN7mKJo/bwpRT+y/KbYkCJsvljdbXzJOXXQ3e6J6R+0vLqcT25J/ry6pBZMUwR\nAjAswu29z8KJCSxnWwnPpHDmkRT15zG/xS+pAmx3oeQSqp6ZD7qpdJE8zzhbfe5x\nwAc=\n-----END CERTIFICATE-----\n`,\n};\n\n/** @type {{[key: string]: string}} */\nexport const TESTNET_CERTS = {\n \"0.0.3\": `-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUMkNeM6Sbk9ZFYmRWZmSgTQHHWyUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETLLoIMZjEhDP\nKLHS7bJT4OTYGgR/8mB65yfx3KqMLYFF+q2SpWkIrYgUQLVEUEibVSnLlxRUzH7R\nszcKynpTwh0W0yfWanZKQg+RWoKkEYlu2GvkUtJb8cRVM9NLmJUeo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUSrIepwFx8gZ8/G+WGaxs6GgkMtQwCgYIKoZIzj0EAwMDaQAwZgIx\nAJxC0fjB1OrF9vkCKsfnPS3Z+1hscrZhEDG38NxdLEAfPQ5VmyrSBgJy11FBp8yB\n0QIxAKzbge3Lf7iBMwYwm+2M/GiVgmHNMLdtrYuerWpdbYOHgRNAkyt57JoThn0u\nTzkd5Q==\n-----END CERTIFICATE-----\n`,\n \"0.0.4\": `-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUGLriiLPacglp6U+BtJcF9TI7xEUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEXhR9cb6mH9AE\nGNSGk3OkxN1C/JW49ddYZ/XWD4InjS8D1kXmB1Y39v1mF0L1loG6lDT8Zp46zrj7\n5zMONXZeD2b0mx5hHhtllPTpJ10Tlt9FDoyFbKwPRQ/SAPNADfuzo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUCaKtx8RZ1XJO9rmZMbIcFJZkcv4wCgYIKoZIzj0EAwMDaAAwZQIx\nAPhDW0VrNSmq8hODdhIVV4GyvpYhp3Fksg+sZr3DmUatwn+ptj+X+9IzgPl9QYE3\nkAIwcy2ixgNkjC/DYVmgT4MpUnLneLK0gA23Vj2QwACaTH99H/ybqUH7srj0POB9\n5wvV\n-----END CERTIFICATE-----\n`,\n \"0.0.5\": `-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUEMduome38hvAuIKoGjg/tHatQZMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU4WhgPMjI5NTA2MDcyMjIyNThaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEl1olzP1L4WgX\nd7aujOXmTQZt3tEOGzkMa3S6qJwISLBI7Tb9KaW8zYIe9xWBVAwphCbD0wn9xpPV\nwMr4uTn+JocugYBbe2YoUGzWTkxWnOEKXbh/nQJCe3XE/C0FY8fAo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQULfw7LVtTiUDVIvZwhhWW0soQtSQwCgYIKoZIzj0EAwMDaQAwZgIx\nAID5v3Lo2zlnpFzTdJFqBpw6fV+vmpI+JBj61f264J/uHMbELiu2dwxhwWaMElX7\nwQIxAJxccFr7Bf1KjaMyT2dq75zQzFuKDMj9x92yAqM2Gas/Yay+Ccpm8FBn7BFl\nke1Qwg==\n-----END CERTIFICATE-----\n`,\n \"0.0.6\": `-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUcCg/gZGxk/UjYkhW1jg4Zki+jfwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEOSsXBZicyrxy\ntHJHKh04Mvu6SKM49IC7rAXw5CjlOod5OTeHg0fa5vVoBME4mlWP+LsMMqf8welC\n20b4wMwUC1Hnd66v8crX8L1wvZ9EmKLTvhTd65bS5zloMiSbpdF2o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgMMwqaGuUT6JCH0gsbqullaW6/QwCgYIKoZIzj0EAwMDaAAwZQIx\nAMggJ1eMmT7C14z7wHCsOdDOgmzg733+a5dsuAcxknoz/sQLN8wqy1JxShWgEIA/\nxwIweTDAX/4JZnr3mlSC57lYXbHk/c319VfN9Ybxg0FaDXa8tOqg7Ml6Uu3IGujQ\na3eY\n-----END CERTIFICATE-----\n`,\n \"0.0.7\": `-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUXADwhiD5acpA66GPoXuAevBfZBIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjIyMjU5WhgPMjI5NTA2MDcyMjIyNTlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEBgLhLiGz8qWu\n50vzxSyQkrmhpxuHBJhpGzA0WaUJdAUlaUOL1753ZxxA08wUmcozILNEnMaQ+ROn\n+fuGctv90ZcrSekODjxjbKH2ntVLP8xwkBRCTJ0WRBNenxxBD438o1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUhYOOD/z3ty9O5GuSTXnyujIqBRgwCgYIKoZIzj0EAwMDaQAwZgIx\nAMxbZ4gvkXaORauQFUPRYwOJrihWIA+3ttGDua//YfEbshytQ8b4L65W/1Xs8eOd\nDwIxAImwTzRam8tScdOzmuGgPcML2lkETMpMA2rZYVyEL/VNktIxvB2oE+4M0v5l\nr8IbTA==\n-----END CERTIFICATE-----\n`,\n};\n\n/** @type {{[key: string]: string}} */\nexport const MAINNET_CERTS = {\n \"0.0.3\": `-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUZWoT9TlgbZy+syLbqZhO5++1cVgwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDAxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAwMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8NhDGK/dgWvD\nRHEJ8af7CBDdhvujH5XIrLen33GTLY8DbJwJW2jdsLGx3+DRVVmeNQZxCbcGj0e2\nIyypkG6s0mtnmeymD8mI3JU8m1aZiuIptZSH3Bw1BNn2hKU4x42co1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUbYGliiNtMkGaroQxXWCl+kYHDBwwCgYIKoZIzj0EAwMDZwAwZAIw\nImTOEYu0y73Ggt4NAjFFsN2sV7CsEL3NoJqJ7MZ6U+b3Ax1hnc1eE0oei6xH4VNF\nAjBB4iZNvAn6Esiu4k+JPlYuMesplgMv33fU5GsfvLIovN8pOJDe0c+CUmsnfGbP\nOsQ=\n-----END CERTIFICATE-----\n`,\n \"0.0.4\": `-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUEGWU0F4aKffY+le55ahQaScDYDwwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDExHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAxMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEqW6TqxMmjL3h\n9AVBgfVaFRZlXUcyWa+QYhzxr8sksgJqfDbmGtdaHIdiL1qCPuC4v4G3qrAbXZRm\nTYNo5Lz0X2ic5pES6DbacdjOgHH7TAY4BVKkuVrydln2jjhh7SmBo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUcBlY5a1rV0H1iQuJMwWxrTEWQ6MwCgYIKoZIzj0EAwMDZwAwZAIw\nR+mY9B2U26yD44s03hjz4TlpkyXbVfmgL3Elqo3lrWDJtvT4zpjGjxg3Q1P3SpZQ\nAjAy9DRVrZPzq8iq5Ir7B8XgLQH5QL7SQ3tUL1HzXJYOukvn9Ofr+QADhpb0oJLB\nKug=\n-----END CERTIFICATE-----\n`,\n \"0.0.5\": `-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUbxzfD3ihIK5snumqqKtqtcBPSSQwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDIxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ3WhgPMjI5NTA2MDcyMjQyNDdaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAyMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEWoAjWmW7vpUr\nU69wRbK9Firons4kRoin6N8lMjCD+xzsrsT6/wycpzC0F8fxfIvOYSMWRtinhOKl\nZAxp60OWYP87iH7RqWBAnHIJZj/znKTGd+8Sqp/RVQmButFHg/+Go1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUTMtwuDzI4Hun7SPp2Nb3scjUUXkwCgYIKoZIzj0EAwMDZwAwZAIw\nHKAgaX39Lgc+4/xHXzZR9mi2p3pf6CDO85Xm56UR/t48HnBkRorR3TFCBXACeIIs\nAjBtXglpDnRf6M+nVBlxLdwCQXiwr6vQJ9+dUo+suNkZ1JBmtHypyIqkG2yT4z9C\nLcs=\n-----END CERTIFICATE-----\n`,\n \"0.0.6\": `-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUPwXdJvpCJYO9lm6uQN3S1aBi3PswCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDMxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDAzMR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8PwBQ0ywu+0t\neIYbaiKwzGEScQMOYFYAMw49++6bGRiH/XZjsypqlJWy3F/mB3+HNVZsqgB61Jpj\n2p98Afkl57MYWhWM29t/x5qAQ8LhKGu2k+BOnCcvHDU2pR+fmFSOo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUgI4r3/iwzFN2wh76y/4XDBk7wgkwCgYIKoZIzj0EAwMDaQAwZgIx\nANAjwHdTWYMCCjrtb2NWzDpsKjf3m6ZcaxbEcM1ta/Zji/4x0+VRZa917CkfaEsr\nLAIxAK/erPvIXRU9eNaK/TAQqppSRaF35G6iNnYjQZzfjTU2DczhT4oCjKzGoCHT\nkI1zOg==\n-----END CERTIFICATE-----\n`,\n \"0.0.7\": `-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUXUGzJj13Ck2Cp0BKauLOdzgCPwIwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDQxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ4WhgPMjI5NTA2MDcyMjQyNDhaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA0MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE8Ee64Tbu53i/\nKsuLOJG3GQ4e9gQ+9BtEy7U8kfFzRHh6Ejn7LOW38ZdKX1HP4zXuUusjNvytqDvr\n7eclitqnegcEOkIeFK3wQwBoNILuq+r4LRVi19V+AIcl5w3qkJvIo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQU2tbfu7hd7USgbS2WsG/6BduKEAMwCgYIKoZIzj0EAwMDaAAwZQIw\nRw/BOLoScmU7P/1JnNPsGarmnvcuJrokAv1wk6j8s5LGuQHReX+d+O3RPLggwcAY\nAjEAjoZnt9simul4cVcVy4G/0f39atanUva17gyzlYXEYx7B6UloxLeEcZhlbBf8\nGjRf\n-----END CERTIFICATE-----\n`,\n \"0.0.8\": ``,\n \"0.0.9\": ``,\n \"0.0.10\": `-----BEGIN CERTIFICATE-----\nMIICnzCCAiWgAwIBAgIUNauEDBCmP9igXLWtRpzkQqIGo/wwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDcxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjQ5WhgPMjI5NTA2MDcyMjQyNDlaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA3MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjbkoJBshQXUy\nqm5K8ldpTDR94Wk8iEM7QwHfceIxK5pPgaVGRkoJyVLSK5LMH4jyaIHUrtA0lIBQ\no0MsYkq7TOOm7+vo1Yrd8EMbu5StMb3gsXUrj7E/SBKIxULak6hCo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUyKHMzIBPRV/mrgG7tIjzOiw2xbUwCgYIKoZIzj0EAwMDaAAwZQIx\nANsigVtLgTdKWBPVJPstWA0H8yihf0/dmM3GO4qp5keGTWz/O3tnom4iDB6eSrcA\njwIwU82Dh+Wxl3kAD3YJH5VhlfHTm1rPlJETBHZgvPBOYqippao6+WZFEpn2/IDC\nNTjn\n-----END CERTIFICATE-----\n`,\n \"0.0.11\": `-----BEGIN CERTIFICATE-----\nMIICnjCCAiWgAwIBAgIUWtnJm2kswnXYu7/S5BnnTQiDRcUwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDgxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA4MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEjY9Rl+s00xFV\ntdTpAixLR4kJIGLfSLOdm+ofU/KuKMRSz5x1ORhIicppKZK24U5WLGXQU1fKLvxX\nOmqwqL+6oAONmiHszqVdhWne4QPUba0yw7rf1/OI+IFF1HRK3shQo1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUb/htoTodbq5hjP5RNlQ0rkKwWB0wCgYIKoZIzj0EAwMDZwAwZAIw\nbO+9yArr21XKXjYHPadEAYINDxgXEC3W8e3X6MJsHCIZITddWWOyXRNFhz504vN0\nAjB8aBuhrKcg1b4CrQDZQcosyVPUGIZKkXdQFfbVdivKrGZvqLS+GdPLd3v2MmHY\norA=\n-----END CERTIFICATE-----\n`,\n \"0.0.12\": `-----BEGIN CERTIFICATE-----\nMIICoDCCAiWgAwIBAgIUHBsegV0bKtwpHRoOnnhbK7CTHxMwCgYIKoZIzj0EAwMw\ngYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExEDAOBgNVBAMMBzAw\nMDAwMDkxHzAdBgkqhkiG9w0BCQEWEGFkbWluQGhlZGVyYS5jb20wIBcNMjEwODIz\nMjI0MjUwWhgPMjI5NTA2MDcyMjQyNTBaMIGEMQswCQYDVQQGEwJVUzELMAkGA1UE\nCAwCVFgxEzARBgNVBAcMClJpY2hhcmRzb24xDzANBgNVBAoMBkhlZGVyYTEPMA0G\nA1UECwwGSGVkZXJhMRAwDgYDVQQDDAcwMDAwMDA5MR8wHQYJKoZIhvcNAQkBFhBh\nZG1pbkBoZWRlcmEuY29tMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEK+ZAs/00RXaj\nbuQJJy4zwr/YTj9h5V+vbY7sq9Z1RByEwTRRQOI3OuzzMq1EWKkVJKF/QF5b4yda\nx6W9O/NT4EjBXH5XR5X1V6h7aT01YBqsxgMxuUP7kw9K+fW4k6Zao1QwUjAPBgNV\nHREECDAGhwR/AAABMAsGA1UdDwQEAwIEsDATBgNVHSUEDDAKBggrBgEFBQcDATAd\nBgNVHQ4EFgQUKbecoYirLjf2O2oPkoggEE2P7FcwCgYIKoZIzj0EAwMDaQAwZgIx\nAP67wsVOkeFo/9QRo+PnZhzEvjOZ/+IUoUhimdljcVwn79tzNP+obf7VW3Oq1wH7\n4wIxAL65+WmMTMoI2cN7TCiL7G/W2ChDsASeHfaP/4e4ZViNONWotlY9i9aS3Kwt\nLTea1Q==\n-----END CERTIFICATE-----\n`,\n \"0.0.13\": `-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUBNxMZRKru9jzFA8zsOAI4xkMFCMwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEwMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MFoYDzIyOTUwNjA3MjI0MjUwWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTAxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAShUi9sglwb\n0U8QUrGOXJuHRXA9HP8RypkgNBwNRs1YcmPLcuwK70unWlkB81M44IQ7z/dG/0cW\nhfFdRI5x4jAeiUFivmWmMLT6lJMPxJ0BkWTGVFVwI3SKcgSvHP9pNS2jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqIMCDzCKKwJJLCXhu9YJYPw6lsDAKBggqhkjOPQQDAwNnADBk\nAjBl0bJG2A3443ybvrkKjWu8do6nDSR08/M49+19QfA1aDw0nb2sdCOE+xNitpQ9\n7ngCMGuQHmnKA2EyOIVpNl2EtRoG+vdmLJQaoukhmCWjkGrQHkai473tGa9cRZ/8\n+RZFzw==\n-----END CERTIFICATE-----\n`,\n \"0.0.14\": `-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUJcQrEmPlIh0KWwiC2X6lZ/OdNs8wCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDExMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTExHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASxRizKJSbB\nHmG2amvTHLCyExJngCh42agaFkv5Ab9mZYbqZPe0nUn/8RlVAvEiRNggCMYXC6MU\ne4J6D1aeLhYaa0UY8Fmxd20NUjAOWhJgUXds4ILMMVG+pevofeC8AsujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBS2Ic+LU/6Wssns4Yyf3N6E666xDzAKBggqhkjOPQQDAwNoADBl\nAjAH0JMX48GD6vThA6FUsVnJmBID376PRZgxhuZvn9C0HawvNjZVQTkpzpYCwmia\ndO4CMQCotakNxyiOxu/BbnPx6ld5+dqVCugsfqClhUhy8ROpNHfKxp3rW7HopowT\nWiMlIyI=\n-----END CERTIFICATE-----\n`,\n \"0.0.15\": `-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUSFFNFv1iquxd5txlWA3PlkNju2EwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEyMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTIxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQus3nAPZkb\nja4Efo7iD4s8NLsFwEwQXQBgBGIJwtA2JRgLyXeWpuu125ib6qJzT8CHvQZhel3b\ncwYWi4f2JpabMDepHELLxwZ9fILnAQ8GiHlzhrVq2NI15DI84dXVe4OjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSEO/JFC5/fDcT2gtipDMYMMTd96DAKBggqhkjOPQQDAwNnADBk\nAjBalAU47XQL4ziHD8lj21pcp3+R5FKzn96HclMT/vraknCT1Sl+vCf6EYsqmi6Z\n+RwCMDpxL6P6OMqyE+HzAeYQ4Fa7MYEQfZGMjka4zxetBLvIpwUCT4EAO8gv9GoU\nwCBUzQ==\n-----END CERTIFICATE-----\n`,\n \"0.0.16\": `-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUdnkil4P+VthVMnqygVwGKLt7VfAwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDEzMR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MVoYDzIyOTUwNjA3MjI0MjUxWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTMxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARUdz9ig/iA\nhEAth2YinHKY6WM63BAxUVItzgk65l1T4wTzwoK4XEwclY5vIeFmZy2e0s95lWgq\nSI68VS9gmJ3xp8Q9wOel/bvuF2tvNZmF393TeoNQQVHrQM1yJAx+nPyjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBTBFdNwHKSRDo6CxfA1aglY0N8joTAKBggqhkjOPQQDAwNnADBk\nAjAqPIel58Rcl2kDxZxJPD9mK9xW4TU+d2NuP3n140TQ6nPlw1OwCPI7a4i3wfEe\n08ICMBbrpNRdFZcvy76KoLPfTPvqbtWWaR/0tLZg4Rjj3x7SYgUg3vrVDmodHGkb\n4T2Raw==\n-----END CERTIFICATE-----\n`,\n \"0.0.17\": `-----BEGIN CERTIFICATE-----\nMIICoDCCAiegAwIBAgIUDg+G4Ep+KEmIo+nCOY8DjFX60swwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE0MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTQxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCQRL5xUUh\n1bsTXRPAf/qVFWEOxsJTiMlF3+UJ4MajWE5zmc2QNIzqj7NE24z3fNxgjViNK/8+\noBNQeqXfyJ/4etNMzTyG4JTsvWRAQ3aR1J4WDbfwpcgw6AIOKq9OLP6jVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQB9V2fygf48zyyVL3bnAxCLDUV9zAKBggqhkjOPQQDAwNnADBk\nAjBonlThjjvi3fg7ODQcatPHBkp8Yon/p1ukm3YzYA3kitqroXU7BkmwRae2fbqD\nTTICMHI+fAy+xWGwXAFNcvNTop11IIoszcgJJY+1Mc2Q/USk3pP6iezta+rvnaWu\n7JySHg==\n-----END CERTIFICATE-----\n`,\n \"0.0.18\": `-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUBvI2Vq6O8yXNzbQlj6uQOdpd1lIwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE1MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1MloYDzIyOTUwNjA3MjI0MjUyWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTUxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR+jFDSzCdn\nmMQpgz/vrmD/xioMioumUmyLAkB+voTNsMAOtiaDVbvJty3b4SJETv5tuZyaF5Gb\nQAYuKsP7X8siCCVLZC9i9nCg46NHtuQkEmw1pzUUDmYFDfSV2tWedNqjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBSqvCmoaVEp2d9WPctby+ooPMGmvTAKBggqhkjOPQQDAwNpADBm\nAjEA9fQ2OFZa7fAQGGYydfVaUF0ObxKj3T+hyl0jiCKLe+hyxJSrXCFS2BM71UiG\nZMVxAjEAmCzESBzTVvl4Uv3TyActGTijTCqTNpN3gJmQbZYjKVtqf8Wxj9WeH0pM\nE8BlA/qE\n-----END CERTIFICATE-----\n`,\n \"0.0.19\": `-----BEGIN CERTIFICATE-----\nMIICojCCAiegAwIBAgIUZBwp7UPLJkDgngbUIx5xjbAn+7YwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE2MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTYxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASCVYu2uF3T\nkCkyRP0FfXVyyTA1z8DFqCKGrcODgGJuVAk59H6u8FIRsNipkb3BXFI0xGccok5X\nT+t5bMaGDHYJ4fjU78UtPNmankQ5HoiMRJpy7Vn8mzizUzUqGpnhu6GjVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQzE6RGn4YlIbdrl0niKWTtJzfXoTAKBggqhkjOPQQDAwNpADBm\nAjEAobnXnwlNGNWoHscbl/ytUBSyjC7V11sLYJqtORSRX3k2+bFGsg4ltmOVjTdd\nlXatAjEA/Ja3jufmdruqfLa6qigXuYI00YaI96sOwNhdHlnksYfqF41nDe4BsSW6\neQ6N5M9d\n-----END CERTIFICATE-----\n`,\n \"0.0.20\": `-----BEGIN CERTIFICATE-----\nMIICoTCCAiegAwIBAgIUE1ZRB5n+Yby+Mwgb2xAcVfTZ53kwCgYIKoZIzj0EAwMw\ngYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJUWDETMBEGA1UEBwwKUmljaGFyZHNv\nbjEPMA0GA1UECgwGSGVkZXJhMQ8wDQYDVQQLDAZIZWRlcmExETAPBgNVBAMMCDAw\nMDAwMDE3MR8wHQYJKoZIhvcNAQkBFhBhZG1pbkBoZWRlcmEuY29tMCAXDTIxMDgy\nMzIyNDI1M1oYDzIyOTUwNjA3MjI0MjUzWjCBhTELMAkGA1UEBhMCVVMxCzAJBgNV\nBAgMAlRYMRMwEQYDVQQHDApSaWNoYXJkc29uMQ8wDQYDVQQKDAZIZWRlcmExDzAN\nBgNVBAsMBkhlZGVyYTERMA8GA1UEAwwIMDAwMDAwMTcxHzAdBgkqhkiG9w0BCQEW\nEGFkbWluQGhlZGVyYS5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR0OfTmHjxT\nkBiU3GMa/bTvlTswCDAuFQGIIpMWHaf6V4ighzmn20jCg0AVFStb2q7YLRr4HUx8\nToMzsd7/yjl74BwJgfZnL75T/JInwyMgOBiCTXEf6qVDvhNzL4QJuVujVDBSMA8G\nA1UdEQQIMAaHBH8AAAEwCwYDVR0PBAQDAgSwMBMGA1UdJQQMMAoGCCsGAQUFBwMB\nMB0GA1UdDgQWBBQFKRUUmdFcDFQzBN9XqMvLgPd7NzAKBggqhkjOPQQDAwNoADBl\nAjEA5MUUXSehY3KVIv/2LMgrqo1kPiV39fwYuLSnsMJ67wK8yN1NAkkycg6q2K6g\nrBIvAjB3J3a40TINOZTYG+eQs+MSWyfANJLRuJTEOorXzMWM6+05+JYhPnLA8hke\nCRfzmSw=\n-----END CERTIFICATE-----\n`,\n};\n","import NodeAddressBook from \"./NodeAddressBook.js\";\nimport * as hex from \"../encoding/hex.js\";\nimport * as proto from \"@hashgraph/proto\";\n\nexport const PREVIEWNET_ADDRESS_BOOK = NodeAddressBook._fromProtobuf(\n proto.NodeAddressBook.decode(\n hex.decode(\n \"0ad0070a0e33352e3233312e3230382e31343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340acf070a0d332e3231312e3234382e31373210a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ace070a0c34302e3132312e36342e343810a388031a05302e302e3322cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039663166386131323163326664366337366664353038643365343239663063363462636234346338326137303537333535326161646361643037313536396537323139353866356135643039663935383766666166636662653533343161326630313134616361653334366566336339303231336433343336656262323766343335306339393063356338633366386531653336373037626330386434323536303832336533663234653039613033616430393535613530393830313936323964643034623237623235316463653035356633646463623061343164363666303934316230623837636466653334393864343630333861623564663036663632613561646530383539383537336138386338663538363064633134393261366531383634383561396231333235306536643137623830636433396335633831393130396537336361373332646232336566386261613737366563383563653030393162656362326564656662616135656433653564626662643166383835613466613838316166336631343461386135363538353335333364383933393335393230383662326431643336326534356266653166623435363833616261366336343039373961643662343638373731383437323663366562643538623265616538356337636665336662616265663566366363656438353030333462333834373230366332643637386333363138373630323662386433353165303032616635653066666536663562316632393566646332663436396361613264323338316561306234386361393837636332633865363335653862313963653565313732613933373631613864343930613961343531386437323535383830613134643737623762613737343839326239326134306262383133363265333466633664353137386439623330313132393334323035636237376662396132383234323733393435363461383535346561343732383661343766383632333965373563393437383963653938633939383434373832343632393434663631333136376437623530323033303130303031320218033a606666643661646137346133613334613930346265613437363033303836663862656633623662653138616265643434633464343065313266623133306239376264366238353561656335643062393062306238633733353464356633623065340ad1070a0d33352e3139392e31352e31373710a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad1070a0d332e3133332e3231332e31343610a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad0070a0c34302e37302e31312e32303210a388031a05302e302e3422cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633535376166353739666138333530316265383939623238393037373635626664666364353261623433326230313935613166316563643836666330306162366335353039623066646439376564643363623563656135366132393566333132616262353530383331646266393633663435303131386234666363366532326366343637363230306365396363386564666262663535386463363966303234323634616437643364616232336265643231333363323734653639333434383931353564623130383766393033373039303563363431383561363231316463373432666239613639303964383231383639343762323737343633646662336666306163643437656666313265616431663639373265663263313230333739336334356537373537356265346661313130633765343066613864623963363138376431313366343730343031343137393037316162663539626537643262306465383264653432313564633235353036623163396332366534393137343031633939373530366533373765366266303362363838373237653739343066616436396335653064613363643563626432626537373733353061656132643064343765393761343438633834626536636531333464363462656530393835633239313632663463316535363763636139336430366133633162653861626365333562353537666237376634666536373161363664656337393037353664306538383138313635663262616361613839316161653761633734333766633731373562366562366465623734373233373837353162623662663962306531343833663936363865396664626435363034633339623134643965326265646565633834366139383064373034643137316537626134623766636431613330643934356361313266343761333235643933393861613138663937303636303534643464313566633839393465326465626537336539323731643534383638336636316561343466623235303731653335313861373865643365623337653731613036393166323637303230333031303030312801320218043a606630643934616363663664666633373238373463396462643864373939326562333137616635303031636134313936616261323635383039636233643230306261393631613534333863336135656430356338336264663963643131356432320ad2070a0e33352e3232352e3230312e31393510a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d35322e31352e3130352e31333010a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad1070a0d3130342e34332e3234382e363310a388031a05302e302e3522cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396261343537623733333035663034613931636334366231623936356334653834313735316162633862313431356130626164666431663332633234383233383661323237323565623765633734646561323165353036313764363438656135616333393337343161623031623865666233323132333962386434666462316466626562396533663339616134363538306464303435643138636134346430303263333764646235323763636534646463333262666337333431393637316634636134343634613366326138346663383563373161636630653561383936323664663639613831343734656431363532396638303161386166613937653433356334653034613936346133353735323732383838343365353866306130356366353135336565343530376232633638623364376662353461653661393561393539633837613132663633306539356337623162336333363935653835383636323431373932366437366331363938336661663631323235303338373435393037653963663133643637633261636435303363613435316338353933336163343131386163633237393830316362393638333439393033313435636564323736323964643038393136333137303933353837613737633232303563666135323534336235336333623665613135623834653364326333306331656437353261343633336333366232356239383933656130326164353632656239623738363862336234663437663461323565333536303634393632616337623235653538323934346630306433303739386132363266393231346438633565373464306138333736636332643662613634653138663565346134306166616336323530363264326361323363643238303037303833323164333833343331346630653538343438353932333236373361333265373061653064373131653331303538316263646231346538373133343639346336653039333066343662333762393664343961363435373339343733333165376535303764396535366465356536313436663266303230333031303030312802320218053a606361363738656263626433646338363438663765643033666235396630653231616636373531336561656535313331386536623534396265356163653930366564633166666132366439336135376163656339626537376634306561656564370ad2070a0e33352e3234372e3130392e31333510a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b35342e3234312e33382e3110a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330acf070a0b31332e38382e32322e343710a388031a05302e302e3622cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633432636361633566626336393166626265626461383766666431653735626463643839323234393463663434666462636365653439373838353231633337386266373764623039333465633064323138336437633531646236366638363463313161623764653161633363346366646331663039336132643666333765326233346362653463383133316639363833616434323837386338336433353534633634356161313637626366623036346138336463343563356231313538343939663964393235383766666637616263643566323231636438313530353438343133303030666136653536353930383962316466643635373636656137386561656466636136623435343535666438616235393834646265333565353739356432633633356561373937346434336538656165346665626666653439326537303762343862316230666336343831616539653039643339313333303039623764323634303265366535326535653931623262333830643838663062653766623462333033653730323139373835303537616139346365393234633439323665393136353639323836653836623362613635316361326130613633646634663639303766656665333438336439336234636531643464303363373134323131313337356232633263353164346562383339653337616635333062326362643666353064346362333665323739333731373064396364646163306163653263633234623830346230613237333531636638333062373635323565323664666239646266343961303536363234613736383632343934653732363364306437306365626165393532393433653535383432663563616431336663663630613265366463663761316435333366336135626235346563323139313863373665353235626132393134363637353833316531376533366336316665383534393838323864303962373632303135343132623265353237383439626165633163666663373764653463323934633535303831316535393866663234646131356133343536396464303230333031303030312803320218063a603234373166336665383134303638316665393139313364326363303633663036356534343930616536326666356435343861356162653133316432616639366362653361633235626265323433363663613466386630653736636639343566330ad0070a0c33352e3233352e36352e353110a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d35342e3137372e35312e31323710a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad0070a0c31332e36342e3137302e343010a388031a05302e302e3722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393032663034393061396237663564326364316330643936633661363939306635373362356630656235626462626133393636316566303233303932343139333434363639393639613638613463373037316433323939393066623137393265393030316362353539386561373163326436363736383234333230656534636162663164643335376165376632616462656463316231623061396439353632333737396234633463376234376334373837613136656537313838633732313731373736323461393236346162333963343166376666306234356138396264613430633461643037633464353936643566303964373035366263623561333566343466393561353963323636653039383932646362653436616435316632643262336539393161386636363538653166326362393463373733656234346334346538393264316535356331303736663136303833313965653635376534306631393239363735343361623432616232323233383664313735383665323533373438646162643032356535306235306165363035303732306532333964363465653666623435303763303631346464346265376166646231333330383930666633613665313736353237633331313661663132396139616335653333366439663630316537313237613664376438323061643266393032646163396232343836363861316261623038643130333432656136396137303937313332666637313230636336346663646537383430633635366261313733326261393565396333363735313137356534656333643834613765306432383834326234316262626264366632386534366333613636333365313832373936356335353832306435306461653262303436356363306434326531393562396431353332653632323565623939386436613439303739613861316364346430313735646533633837663937363134383437623363626231376161333462653832306237623361643938616333666165663939336136373738393734373832633063346165336661626263633433303230333031303030312804320218073a606633353738373364343131346131616566303361646336626136396566616632363930653232376162633136613666633665353034396136336662643936383830303462313465343633633230653338343336613361323464333138326464380ad1070a0d33342e3130362e3234372e363510a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33352e38332e38392e31373110a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad1070a0d31332e37382e3233322e31393210a388031a05302e302e3822cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393164376466666637386634656662653538393034353063356263396533353334626666616461643933666237616662313562633762636636376433643362343133626439393934306464383235363461646130346162326534656466306131633062386662376531613830393265393133386539363062653263633638623562393766353764323831633538373265393761343739666338343833363331363065333836336235376233336534383639623138356163653565333662643433616535666136373863396562363666316634303134373836383236623266386661376530303630663434303563306138663964613732303566663436383361323433666130663331356631616662623461346431343064303232333465343437336662393266636233386633656232386336306366376362666236346530363963313830383665346464363139333839323061653066643763313933653665313034653635623831376564393339386532333232333766646630383332326339636563303964343039393237326137633031356432326234646363393639663665613166353138393032313035646636303039326235356134316234663332623935376235376438346535623232333930356538363938393531373333656139663265323436316563306436353232656538313664353835306661636665623431326366663962393939343361383764633064303436343437636539336239376531366437336239366234323633393632663831666366393435386535373537376337383061366631363135616137613132333236373338653236396262373331663839653839313632326535373765613534343230626630636134366265366663346637316366323638316163303235326161383835653133626536373263643238343539303432376463643133376366333131363235653862656533623038666463616166343635623338376365376362333338313666326331346136623939616337643733343331386366633539623765643933396261666566383739303230333031303030312805320218083a603439333161373832303264353566313062333135373537383563336634333964623638313962643131303033646637626332636539326532396135313762376332313838306465623463303137393537343462353736636434336238343938640ad0070a0c33342e3132352e32332e343910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390acf070a0b35302e31382e31372e393310a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a603634653039383631356266343035663765643561343031333434366238396334383863666364366262323561346136373664633737656561313164333364373032363832663061363961383033306538633537373764306534323230333739390ad1070a0d32302e3135302e3133362e383910a388031a05302e302e3922cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633665313863386662663463643465623130343534326362323061616161323532643935663035326631303836643538316334346164373337626636363736633063336637383961663532363562386166623739623530393132646138346530616663663735343763623166666630386430353237303137656236646335636466383362353139363964343433333661363338376364373062393462663463396261663230323938343065356634663836336437303831663066613831653038363361646564623862383961356461633262623535326436653762396662613232326163323863353730373535333866633935373939323934326433343166613238373665366235303765396365376564353732653863666461356465666133363466646638643865323338323961346363626234373866313165656533623332616238356530373239353163356439343230313135666261333237303733343934663433623566366265626638343135326533353665376231366261373634623761336235326362323733343634303136336265313436356536643166613463366536663636363834613633356339613535366161373130306462653634356466386634633432336165343561303863623335623462633138373838366532323939623563303231306135666261336239343439663438336566393465643932326531653938633131336265313636623839633733353832323433313335643434323330366162653561373162373730313866663333356436646437393534323639376231363832333862393637323766643133333962356638326133623661353937643937363033376165323530363435366338623334653966626633626333323431303434316334626663386562613538353937323534656665626661613738383039613563383835343732396135626137386563653139666338343037646438383934613662633738343430333764383738636163653663313532633265383965386136346230363861366332333765303939393362653830363839303230333031303030312806320218093a60363465303938363135626634303566376564356134303133343436623839633438386366636436626232356134613637366463373765656131316433336437303236383266306136396138303330653863353737376430653432323033373939\"\n )\n )\n);\nexport const TESTNET_ADDRESS_BOOK = NodeAddressBook._fromProtobuf(\n proto.NodeAddressBook.decode(\n hex.decode(\n \"0a7f0a0c33342e39342e3130362e363110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a80010a0d35302e31382e3133322e32313110a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a81010a0e3133382e39312e3134322e32313910a388031a05302e302e33320218033a606131373165336261383334373637343761656232653261633464306531313563616161623931383230336230646665316364656162343433343338666332383961626338626138613661666638336462356631623333343034366461383863380a82010a0d33352e3233372e3131392e353510a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a7f0a0a332e3231322e362e313310a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d35322e3136382e37362e32343110a388031a05302e302e342801320218043a603734303964656332653439346236323765653439633639623239346265316365616562636133666463616633363738396538386663376435623065656635353631663532623832643335313931613339633266626564363032373236373136360a82010a0d33352e3234352e32372e31393310a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a80010a0b35322e32302e31382e383610a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a81010a0c34302e37392e38332e31323410a388031a05302e302e352802320218053a603962313431363538346134613338306262383661366337643732303764386165646462633362363365613330353939383235356263653833353162613462356463613532633932383261353461366265643630646536336365303361616132340a82010a0d33342e38332e3131322e31313610a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35342e37302e3139322e333310a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a81010a0c35322e3138332e34352e363510a388031a05302e302e362803320218063a603634383636383562346536653063623936333437326330316665393939333166643965346334343838376261383334323361653766656564323264363438343834636638613362633563636361366133373338376266393664333836373238300a80010a0b33342e39342e3136302e3410a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e35342e3137362e3139392e31303910a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a82010a0d31332e36342e3138312e31333610a388031a05302e302e372804320218073a603339653930393931356138353238303330313534613663373730393530633762343737376261343031333537633065363138373635343231356363323061616363646438653566663239653963346439356366343130316661363862653435630a83010a0e33342e3130362e3130322e32313810a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a82010a0d33352e3135352e34392e31343710a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a81010a0c31332e37382e3233382e333210a388031a05302e302e382805320218083a606134343837346137616131623337373431613037316164616165373866623135326236393664316335386438646566626531643832333034353332613063303139656539366363313964373536383635373864333961316536633331613165650a83010a0e33342e3133332e3139372e32333010a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e31342e3235322e32303710a388031a05302e302e392806320218093a603639383332613733613336303265386431666265356164353864316332363337613162363732643731656538376166313064623634386562393161666232323832353362316634376535376433643461343466663534376233333934616132320a82010a0d35322e3136352e31372e32333110a388031a05302e302e392806320218093a60363938333261373361333630326538643166626535616435386431633236333761316236373264373165653837616631306462363438656239316166623232383235336231663437653537643364346134346666353437623333393461613232\"\n )\n )\n);\nexport const MAINNET_ADDRESS_BOOK = NodeAddressBook._fromProtobuf(\n proto.NodeAddressBook.decode(\n hex.decode(\n \"0ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030633435363165336332373863643635306538306334313363613434343233633163336331336366313437356636663639373664353937616534333262343961623432303836623739623834313332363035346238623364636635376438666364373962666330353831383363613234636434633163626335373465643131313765326635623762336336336365376230366439623465666366373337353633376234316665366635336338313162396465363134336633613532393537636466393536373735313230623333373033666635373632313430376162393537356263326433356330643434663039383366633165663633613466663532303966303730633932616631303632393536303163393662636564303634656331393031393730313963363831316334633864643830636234663461633731663961643736653761633839343536666266346630313166393061626432643930353336653832333436353166366265663932376533643564386237626634353930353039383362656361336162656632613964393761663334353737326137373430653936393932373562303138656130646632383661646436636539323365663930386662653736326137356632313131363836326462343464336463613164343462346432653864633130363663353030366262356137643935346164323535643462363033323733343735653531316165623438356430363961303637633061623563323435333863393333633036623561366165666139343030356332393135323133653463636461653663393432663632373266396464353238326436623839306631663230656664323339396364363734393234666135373034366163366461333265373339353161373331313365393166633262376666323965343835316238336666333966383362613965633666303863656664626236636262626666616266646661613931643933306637323030646134383133376333393463626431336537303165636463323631366664323162616436383161613466303031303230333031303030312804320218073a603665396138616263646364653665313134396133656265313766643538643839303538333961383664623732623036613365613230616131373666383638623235343838353261653432336437613963366237636666396537313436323961320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613163343037373135343330336363373263346662373639326333663934323531626465633132333961316637613839373261626539316133353332336662656361363235613766666165363430366338353564633261663231313039303062306466306536653664623736333634646661316666653835656461353637393336653239383562383536333461333261613532613635393964643663333062653166376136633562386635656563616632363231643861343539363832666364326462616164313536316431316633336663636237663535303061633536386431363564626561616365333238366432383934663634313239643738316436633732666437643539396339653164336166346161343333633233623931306661653463343834313634316636313532366164373837656265613533393837343136376539643361373363633066623135363432396431356563373633613664306630363131356137396239616637383364373762393864383330393661613437343366393734303864396531346263663464646666653435393137363838343762343063623864613763613337353235366432623933356430393566653235326661653831666636653337663834643761393064376535373061346638656633633764373636656564613437326630393230313939303135613839303832353961383733633534353466636262646361643265353238646538353435356234303833633764633461646335613938386530636464666463313539643564373132616264353434616137336563303239303839383134633938613434663236666330363434363539633138336533313834616132373266386431646330626661336530613536303438346362303535626134646262356363333339656338306264313164363432646333613730326538633730336162323139333038346439626436336630646665313261343333633235373665616637383163666164383637656637306264613631373638623262656631346635306336633362386230393666303230333031303030312805320218083a606464336233653763643361323537643832373665343635333533363162303138623730303931663438363635653832303031306538316563303539326236396264346265316662643765636435303964303730313364643034313238343266640ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623263636163363561643066633736343561383137626661626334383761643765343133313165376133313938623337666238343264383463333935623366363764366264383438663130633666303363323930653866376461613864303031613834343164633335326131393136306133313933653638623832656466313961653637363933613961333364346362383765373839613130373037313535313565613737326361613862383661353639623931633534353038333564396333353466306461636563393766653737303931623435623134373639386237663836303134323264636432323631653932386465346461633963343264636261666466393663303732333362613330323730373666333763393639653865643330623662356438663530333462653764393263353936663862653836316535316663633361323432626639643862653965326139653865306631353565626366663233656666613763643537633130353432383131643830373736633935383535323666646230656161333465653139353564353131313933393066653837336534633034646564643239313635383834623938623436333038373838616537666334643461613461386663396263323637346261333231343933623632343435356164343130633164653731626339356431643931666130663230313431386137393565333039656166323937623639396266323763396661323736336364353963656230323165313662383230306331303630663238313766643833636663373637313833343839343631653335393932393162333830643665393339626161346231393233326136613237326464653635316638303436666463333464623237366137373764366662326265633332353562326363323434623461663536366231303566333063363530366464616530656233646564646366393437626362396336306530303039383466336234613863366334656434626639306263313933326237663934646333616536623336303030386562393032303430663962303230333031303030312802320218053a603561383634313561303861306138323566336232656237353031303135353230326533313234336665343161303333333834653738633138633131653565386632303964343933623062326664343565303662333734663262363964663564370ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613365333762373663366364356636363232643639323434343464313263363737633339356632623539303266336262393862386138623530353561373037373036636130323863643735303630613264383730326432643862303439343762646366653061386331343161613238343462316530366536363139303031326538623633323661623066613331373937336263376362346432393439663231303861613034633462306339316261613537323866356235363232656337356162663537386131663762343165646532613637656264363963313865353831666466396336303230616330646539636132633331663063363436393030333331316662623563653764623439633738376531613764323761613432356565376238346461376536363933396639633830643065383266636535356530326466633862356337383431386132366161343336353036393837313962616663656366306264343930303061646463666134303537303862646265666262313937343964323264616230303765343464343565613233623130366638383334633135326532353036326434636632346666323533353663376562333732393130353339336662343962616239303461303266306630626234313763643931396433353238393031323865366262666634666163396639306465313138613937346632613664643031653033326137396231373866363066613166636262643032623537303466623436323935633135313930383136333733656464363633356338353639373866316239353033663166373362346230626538616261326564316665656164353939353362663832656664653933613334373161626435356364613362613861363733666262333739393734396662303036643030336630653633663636356333343631643261376232396463386232303462613539613635363638613436616532383738663030643166393439306466396532383066656266343331356561303465616135363861336139666434386336326336336236656364613639303230333031303030312803320218063a606434363430333938303337393230373965636364356134343331316361306463323262353065633839356235366535336431326232396637326463366462613363616665326535623831303466626461303338616635623434376430666231320ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393361323135636334613761373232636165396331336162643633366466393963636565633661663964623436623639666135313637313665663530636532343930613938316530396162303139636132636234363831316235623631396431626431643565653666343661343263373737636264656536343261313438346563646635646464333732393634326333386336643433613838353838373434373566353832343434333636346330346466656439623839303435666230383565323563336566636234383431373333656666376335323963313339653639333530633263643739623263386431393637396137313265346538636166643332363735343162383332623365313061303132353564656636396466316539643362386438656166303331316465363764356531326232366464303164626264396433653432643335643964653237313330326530663166363964383763626337616361396538383637653964343238643363616230363636656234393064356662616233306266663366373835643033663230373261343362623962356535343635366135393263623631656166643561356566323834633763616563363666376634373332356363306434633164323766363631643861373438636135303731633036656631333464666639366634303836363838333636643436386132343738303031376530623536616261376661623433623362376330623737393036666165353438326633323831316332393265366231343435346531346238393438303161383661303363633437373934646430643734353237613732653432346564336166613034383939656362396136336632613961653732626537666139383961646630643635613332633835316439383031666334313034386466333335363466633762333137303765633866623830313430666537623761316661313230626131636236363033323463656666623462636332643962623764653063663534633831396632646433626365616465633963323566356531396463396231303230333031303030312806320218093a603365303261363732306334343636353965383633303564353562666565383230623335653635306665636163633535333039373435356532633465303332636339646564313662316262343464336235393262626163623663326266663165360ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303930323539663465336439663066333934323536353438653963373330386231306237333430336363393039346439376164313531623737303631373062393737326365623634643636326563656639303161386437643135643331396135396338623731303731616363643839356237633933363130646336393736663637633465313732396261383337336162376535326133663363386632363534393164646536396436653039393934373065373434353938313133316264393663333665363836353230336662326562643564353065616461666237323633393664656331643931373438393862346539626530346337346433303466656164643963626433323334633362376633333036633939636230633333396663323539363962343164353861326237636663313833326532323664383163313936333939336532323535613038376431363938633033643432313062643634353830363434643039356361373661613137393465646434306331633837623566383261386533396636303365393731313662613034353738653765383033343634393564373835643465663763663737313462396562366635663965306239613934663462373338383436313962393237346434613935656631353735346138396439376566356331613838623664363933653061383065626435333766633963663063613931643163363264393135646537656438313862393532653634633230303239336565386532383461343136613732613365313266633764343233623135386639623439363630636263323436366662656430666564326532346531303266646539343265623463666439346265633436643364393066633038633339666563626130336530636132343634616536363462393739353135626132396531663730326333666537303262653739333739366438656462313761613438633039323930623032343534396630363131663561653233656437653136343432646637643164616432323836633262623039643535323264643365643639386332663032303330313030303128093202180c3a606339373462623938326338313931336237333236643561336639646363343836313261313566376161643032663230376230663130636432303137613666626666353830336537636139626662343730396162323862366230396435623133660ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130303962646438653834666164616133353332666334636530316138613137643463336232333266353061393739306532363236383465646334383233653831356131626435623230656365613762663536653239663662623762383331666233626636656663643134373566306238656435666662306231333835623936643136366236323966303339366138666566356630366534626361323565653461313334306565323633613464396262303230643866343732333036663364383836313338646537613031396530353962643061666339303263636261316132313361653264616136306338613031333735356665306134386530333466356234303233613264616465616138386335343836383335336163376137613364663132623266623634313837373465396231346265366561623863633237623838303132616436313632646137346530656562313631333539303566343337333734646162383538366437353061323662626433616332346165643837386334643533653635313037326338373165393464376163633537356339363733383137333461353366656166346437626136626364643234316363363435386336303837643836333032616132353163303466366435366239633332643764393636323437353065643035353738356430373733663433646330393962323863393232383131343865366338316632393766663964313636653030306163303462333132343138363737356663656637356635656261306331303332626631333064663663643761343632313164306466336530353834643932656136373334396438343930353038656234656638386635346338633364343836646538373139663130666139366665623835636337393630373663613738313331386565326439656439303363613133333630343063353961643931613464326636393865393130386165306564623962316362393561643333623139376666623138626431626138623536636265653261616539353835656365323038613165313462343835363436333032303330313030303128083202180b3a603937303834333033333130373866353638326337663332343464383263336233653238316139313837393537386465656163646363326132656265353431616631383831313561643265383338363565356635643234376234613138633165650ab50722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039303938383635646566326632616233373663376630663733386331643837613237616330316166643030383632306333356362366562666362623063333330303331393361333838633334366433303233313732373031323139336262373666643330303462383634333132633638396566353231336362623930313130313530396465616239346632366137333265363337393239646134633463623332353137653361646262333831316435306163346337376331666365386236353136303632313566333437303766336537323635353435653538633839343630396532383337366264623737373566653330343339653065313539326664636230633365653163333035373733643037326136623839353765616663653161313162653936356564616666333834333336366362366134346563323561383930313036653632343735363766373662353530666461343832626165633633303764363938656338383834316664363666323366323130653437623861396463626136626134653166613731366462333363383065333038313934393664636235653536303966623665376336313533373962646465643432376539323331623932353463326261663934333630386138366436393861653961336338363339646638383764366636623561373133383564323433333864393131613231326266373166316532616363386231383662393665633865363963383662366430353832313737373661303963396336383935336564623539313635373862356132363362326634363965336230633037656164613731613434376565613766386663316262383037343235353536376237663062643165366166623033353837313863393862343239653234623232393835393666633736636636616633393663613934333464373932366563376433376434623932616635366434356665666638313936303935323234613931366331666665366236363765323535666333616338636363656639323064633034346232353030333133326238373830363734326630323033303130303031320218033a603333373339306438666561313434616663313265383132353461323864616336656138323839333833366163303732656666643835653061373734383538306566323830393636343863356137663864626234636538313437363831353133370ab70722cc063330383230316132333030643036303932613836343838366637306430313031303130353030303338323031386630303330383230313861303238323031383130306335376564623966663237366530323362323830323163623164383763646631393636623639386366343865346561616137633639323037376365656538636362323339613463393231353937653865383966376363303564336633313331353738393736633465333134343035643461346530336137323431306335633039636135323761643561383562393938363337653732613332653166626330643535343662323436356539653830366332646435303965623035306162356662323730363366643932383135623164643236383965323131316361656236663534396539346139663030663038323164346361366336613631313766356135333363393236336266303734613330643563626566353064316338633233383762636139373265646564613039383362356430613662353764636230303230303036383238623430653430373662343837306232346261643834303536656535326235663432326538383430303238633235303036333832643865396336363132323566346637366561373265333430363037653966633666336332303433333037366131636138636231356564303361633839363664303530376263646536383165346530323331656539663837643131316537623438616338663934643264383432623532646637336635373363633534313439363437393763363236393638666661653734313866336236313039623561306630396533323233663461346435653335303964643235303133386636626331376266366365636531373539343433306466313830613338653930616466326166666266616430633662386331623837663137386130363164636662666638623932633931363664383734633166663561663466626364626665386539643039393337306464663630626537343736333364333665653465623563643531663665336333333965313531653431626462356135636532633863393761306134336233636434636330383138383463383739663964326633373438343238633835373366313763393066336362643032303330313030303128073202180a3a603734306166366266373339653838336338386633333434633961306638623330316533396463393831633531363365306465326133666634326239396534323665643765353662363766343231383530333834356466363266343963396662300ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030393133316161333638663933343532323966393762363235396363636166666561323365303063643565616430326533663639366331653731346565333933396461643836306533386266393561323937346639656234386539333433663861616334303565613935356430353332336531313762336231633934383133613361663432666538303832633364343362616631626434643833363765393364623030616436393665363237613130333661653533346630313165616435653536663337613666666534346236623965303939343031313932616435363061303334366234316138313030393566356632643766643332643665656236353562613735386336623532366331323933383661663731393763376135336165363033643632323833323235343936316631366430656661383037396137363835363138383862653733333439323231373935366262636166616562623631333563356662623234383464356234613566646630333336616330326532366331363532633162643865616633306461653164366433656230306637623466616238643634373866653864393565623931316466393636613064656134653532326462373662383936363537306563633561663039353136343234663061663566386565363665333836643536353037313339393731363961633337353733626635326664303538646539356162326666363865363831313161623233343035656139363462326262383864303263306631636165643731656364643465346534303835393438373666646238353030626335356337626130323036366530356162393864396637653034363664393730326562353765653337323266386663633835613735353035666633323632313730323838623738383732336164623937653464653536323063633930656164313338326663643735373138383966656662313165363737316263336636663366656231396337616335343238373864303361393032373035323663336565643234393465666635346531353363613966363839303230333031303030312801320218043a603765616236393661623935343336363538626331346666366234626534643932356364353162323230646632613164356336656531363061646166323961353165363934646533656531383463653232656164386437646239333231383266330ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038326465373330363566333466666332393334306435393439643232323062316534333636656435636637633665626436313663663934313661353365613030313766366262313136626664336633646566636331356237613464646630653434643032666536393536383830353365373961373730653230316263663731393333393030333965653866303836643466613734366337653035363931383330316639623565383465333932363238323830383561373962333232626361306235643835666539373232316132366262646532353863363230663064636561303261623165646431366363343961336632616239323838653364643166333764633462366136663731333366663932653534316337316237306432613266363664353537323561623138626638366430303965633364323466356431326530623565363830326431313531333732643462373634656265636234616638326636343934383565633537623561303164633637393538663561303363636161623763626139333534613137333732633133313662613437633935336161663934393031623366386332346536613361666436373538653766336231343363653264643363623037316232613734633932316365653934396134623561366265383739663163373930613662386436336231393264376565323961393439316664643638396139386330613763336436303332306631623461633264363232396466643934653432663361363034386137366265316562393538633861313837336265386433333861656339666335396162376633373632363738393430326331666435393566313930383735373565306265383237666334633061346662336433393361643734613934396363393836626662363463616264646165353339333566366463353630373464623933643737656133623831366264643662653533343439373237323238393835396666333463653531383630616666623632316431303438376463333834336631663836643534303334613633653438613161306430323033303130303031280a3202180d3a606132656363316232616539386264323862633161303864386633373161306434663734356337363864306337373339363235363265333433623235643833343235656565613765663865613134323935333432623865623738643332656333660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303039383735356134303862353332316532363330353230303064366437643461326333613535346435653133383461396362356562663437346165383832633633623438366264303864313434646466316139346365396137643632353139363330303661666461616334353838343666313736343031393566653235333961363536393330656661383534663231343865363865633161303863316334396432303063336633303435666537313437663036643533346334626432363231303063623164643339373339643736306438316130626432306638336632353564323530376434636362313130366235333631386336613934343039633838376361653236326434636565396338363233323134376365633134303465306335376262613733313731333065653339363433383838616633643539386564643832623863363165363561653831613465316135366263303664333937313433613938643431636138376433656634333365663061656162363830313139316233653338343830393638663636623665383836363261663435613965323132393934663638623238386562393637626562393834373863323433653231333663316131353931663036316635626330346232316666326261343862323966313834333130383838373362646665393966386135326539343038393731383536653830346465613630326133313137383663393835363532393633633361333737303332396234303966373466646663373436623232613566383431383931323037316334636538343663396234623332306665646636653962363465326362653338346639613832623661616164346232303930373433316466316133336636393230376135363536303062653831303730643038333239303039393538353961343439386435623539333135626365626566656538303765623061336139343266316364663333363764643434343466646232393838366566636464306265346162653961313838383033393533383735656461333364623732393839663736336230323033303130303031280b3202180e3a603139366237623132303739376364623361396430303362393833643537646131303331303662313733306531376636376532633762616161646234333738396166313639366461313031316232353362636263383630333333383566303332380ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061396462376638626161313236383938666162373839313135613362356438393734346631393765323830343161653039386633653838366336393837313732316531316262306164313166336365393132346161393631643661306463383435663439373635633366616231393935383430323637366635363434363262663238316462613535383837383066303365393035373938653138343236396161613630663761313437323333316532666231646561646438373763383463626362363431636139653563386164366534356263313539636230373966636230643434396364636438643932333963316130343765376234343864613063646361323636313061323566323936643936653734363962363736643461343434353136653761353965383532393361383038366638343063303532383534653032613863623230303264616433353832356265346438336235326661393165386337336666303439373436313438383632373837633131313866393234643331636261633162343466656666323264343336623339373965616466396234336134626661373265313562343735356663616232363065303661323739633362623733626337663136613036306434643532326664343930353830333838616135393564383034343733366535323266363432343931356637383033623735383365303935636466373863333235313936393764653831623839666235303035343735336231613137663961616662303634643834633939326639616231316363626338636231303831346463616635323634616134356632316264656661633832636361636161663335386533313337336565316261346537343032666438613730656130633238636135636337346463343235313063393639636432633435396231656333363838613031656133396139393237313063643232393763393861383462363334386135373738303466646332333464336665313930336532633231653137326461323862353961653665346337653865646438623731633439643730323033303130303031280c3202180f3a603538343661353366343437353239666439636462373830346364333136383865643665656265336236336461326635663231316666626337333731393763663366316366626664613631626537643135313066306539323339383131376637340ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061386365616333363765623166316465356630643965663365616630646639623938343438666532303830383437363536326130363063353163323839373730623463616366653932636236353536393832336539363263326132633966656435336264333663613361313232646531633532356135383266323561346437643632386331613364356264623839333661656365373531306537353534656537303333303235633039326338323865656235373338626530326564393633646138316135393230353633346365393435343537376162383266343066313366316565353565306165373237653233633330323834623166343462393961636534646463356639616337616438386439666132323535393335623234646362613834303036343265313663663235333263306230643638393239303436303837313563343037366634366438346130653066656433366537366363646339363335356537613236313630393435633262353461653236636330306664303832333236333436656565656137646437356639313931316539396462636239396561346163366261303536633333323238643838316438353833316439636338373935393364613137343664643065653935646332623936666539336261666366663263643764393239353864373864663333663230356437313135656439666163346462366634636336306535366135343431646135623562353566613539393939303265393538613662366334346438313064646335363138313234316238376632326630353961363838306538303231373336643031383937646236353434396365383137613233373564303335353163623064653530376336303961306338303330656366346266646562323133633033646161373634613138323162373234333334663731663736386437616563623237373035326137303333373635663037323138303536633738663261383761663138333836643866363161356366636233663262613464643539393135663133643338363334643136393537353730323033303130303031280d320218103a603030306162636435396133306135333838633530306265363832663663613239343034363239356339323735383831633230643334626230643639306564613762333862366262643037613364643166646662366137303434626230396366660ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303061663062393134323537626637613436353563346135306430636164356530613165343538316564363632336630653837333066373936623866323963353831373862636363363933326331666333316633396566343462383264336334336233393837333733373366656362313239353232386130346664353061313466333634366438346665316634363763616562393864343633653239373565393935623864326531653339663362663661646463323561653335643635643032363038653033343535333739363665326162636534396238313462656164336331623735373137346165333063303062306334336539396238303439366237326433633133316631633665346663646130356632383131376566396532386334333033626534643863376530343264353862383363633132313934356132633635653739363263616139313835393338663337353764663763636139356366303262356533313934346133613631396130616333663165333462396230313364346332323463346631653730666439666433363938336566383661646535313833363263633833323263306637623631613961633735666238326537623836643638626330663039396130396131346361633561316438643338663961386137306363333766663563633362626432373432666664313436323535633137316536613137383038333237316463653066646536383165643439326362353962303739366432373031373538333864633539303831303765336136656133663961343036623364313133306363656333623437393165343962626332333136303362343661623264306639336434336265373561623961346437313065613934306532383561376231353362306361376364646565366439646365306164383335306334316439306332313562393538383531356166613061633333363561653037653831663362626233366264626561633462333162636231616134653832353635623937376639646164383564363236656566396161613965663864376533666230323033303130303031280e320218113a603933653238313031303462326231376230303935326235613431303264333365646230343363623136646533616433643364363832363066353562623065353837333765613539343463333338663763386362383863373833336663383630630ab70722cc0633303832303161323330306430363039326138363438383666373064303130313031303530303033383230313866303033303832303138613032383230313831303038633037626533303561643630623930626132646162333962306565373736306531613232663835373532323534306437306230336233663965343837356133613239616230383038386631343466353765623235326534366261353933383564306536643432373031313764613061626331623362383036393463396135303538623836643631646661303665373136373039633838653866656163376333613065316432356663306165626636613866373666636239396638343566653138313436316361623638353862393763336134303237666233373132623134653663303738396465313764343137363435373765353131343137656231363236393265623037616531653733353532333565396262343339303437623663303136313337383265376464366636303464616134363734363631643533393631663436633366616136623765373637363264333733623562353432623739656139363365666266333361633638313938626232623636316366663637363931366566333732616434633236633231366334626334373837633834656333326431383464373763373531383663303963663364396639313433336361393835333131396261623331666136616432366634353365353936643962646563613638613537363962633866656537613533356438306338633666336566623164666232383861623661393739383534623763653833313234656330643130326166663934633362373466396333373839353863323565623933336464353363316538303561313836353464366439313836393930663635373034323966393630663334653862346637666439393732646362666539323430653037346461326433353561356637656639633161663632656635393832613831373435373862396331356334396563353636626461636233306363666365663039636466653730386164343837343234653963316265363533663965653736363065376439343263316566613564613238366531616464616230366139613333663964653934363739356230323033303130303031280f320218123a603934383235313739643163333934303137306233356432363665346366613830643737386335653966356261653764653833666638636334373431663362653336616336336431653761653439373261656466366263316533636632303638390ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030626531376339393634376365633635613434343037623533353835366233633362616566356235346635363561663538623834353662613863376365353335643561633732633631633434633736623363353763386538363438343136333762653130613833636665333963303932343736643064626534643663646364636437323061333062356266656235316130316131386635383263343566366338363939336663663764663138323933356465316438363930363034346463663335313836393335643962643765656137393532333532626562623465663961653066373636316537306134323337616661393839393636383763613438666366633562303064333830376630353462653066613863336266613432353033386265366566323935313634663232663733623765383863393465613962653861613466336132343563383962396431666435313932663761353062393538623265663831303462333666316266386664326366623238633134323138303063316334376534656639386166313530303730636336643639643137653865623932663138613661613161363532363661343935323338643130336638663639356235376563663337333635306130353230303837343537323162656138313536323739363763383037363336356466386334633761376434646438663263333835306331386662613731656236306536653864666264313936653035333766643730623334346563626363353330646663383364613666656466343964353161393034313935303262613964373063643335663163663363303639346532333534663930363466646266353335656232336332376330613433643062373863316638363763363164393836393564386465663762633261313062623636373463323266363661616230613931383133646466323763646238353263353965663739653162396531613037356661366565323761376533373734646266346232363436353432376536643561623931666537663066336137313738346563613138326235303230333031303030312810320218133a603038393039376465663031623037633764393734613537353532353161366161613061666236623332613534353334336432393138653732626164303433323163313131633234643432373538306633626131653236616139643735653632360ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030613561643262373634336130346330353564326638636432353131623135313339666334353537353632313338386534396331313962326633393861636131313066363133393662306338363664653530363335323262623835343032373365313366366439346365316536303433386636616662303061616136343631326637313435653962636538626331613533623934313931336161373663396633613238333366616437636632383563376163326433376639396633633263646234396465346431353165363136373835363466323831663534313432346234316661376335316232613936303232383363376433326565303065623833386461313563333861666339366530363164393763656465323231363566663161613935396631633432373562326430393863343035383661353537396662623363623930303732373034313230613861363661353237306634666366643130383663393233363930613335653766643434356533336163303366313339633638363835353635373063646334616166323231303761366331613434323435366137633663373965653034303930653765356434663636626361363063613166343762366466623534336461633363626631396137373139613866353562366638336234613362386136366436303235366430613436353531666137303234626430353633316238613535383038373732353463326632663236386364633333643264626263666237333365396662653233336262396362353961623331613031343862323365386334323638306666313061663463373961346430383334366662373961393364393632393534386561663162623132343639386661656661346364643732343432633033613034623733333433326637343839303361333235633238336434353661623961653932316165376564333339316535643137383765666463323335343061376238356336393161653837306130376639306231316331336233326365343365616564313562333639363835636534393137376363393835303230333031303030312811320218143a603939666162633461646534653636326336653238323366346139366562323134343034383465356136643064333132623730633036386432326236323936333830376332333361343964626239383361376562623330653737303637373261340ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030386434356332316330633935656636356130323964353263393537666430663835663230313233646130333465363136373164646565353437356630373338326136366336366362346463353035303464646664333735383130383364663864313735373733306564386436663336346466346333366132363531353931393535646132303161323430376661386162396232333133383131323235613064613233306662653338306530393061613536656661346632303265633962343832336636353031643936616336393865626632366161636633656532643166333261373231633934376531303736636633356233373364613164383761333661313532653030653731303131373932323832653832356666313731633538333362383835373062666336646138343439653666393566386231323635616235353531393430333135353364316435373666393363343263306361363061616261633463386464313632643831313466326232313531313538336337323533396665353663343939613932396465336134306130643435633137633538396332643739383863653236656166633932613364333762376561303034326434336530336166613632373162323632353561366363636661653533373138323164383165306230356332353062353966306139303734316130653065383861303965643536633562393738306430393566303930366630623831643531323633393832616165303131333663303732643834346131316436646134623261363163363434653161623137663136666634386565323366656465383435326631653432653264333061303739306332356434323036306531643434613637316132656232336431313466363863373165333366313736646235386136386234333030353462633164323938336132336133326561366666393566613763346438653338306562323936653938623739363865636638343534643831376337333765656135646439323165623836633136633762323933303461346137656362653561336131303230333031303030312812320218153a606537396165396337313933643164326263393433383436346338616135663632323461653835323936366134336239383235383833663766373432633533393562643330393935383761393638363662393233396431656666336165353037610ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030623035616265326162303066646430366339353565383637313062306530366631613932363234613438616431636263386466633666323231323936326230633330666462643238346133376335613337363538623633633336656138313632353631613865346639343663626535373232633032383830316630663238316337306638643838633763303061326632653239663539376237393938363965643833353664663537633437626539393434613261616666363530663962346262613064626335336463383830666462623639656134353139303564323830323230326638653239633034613736643237616632656237633534383438356266336634363934633930633431383130383838383433373932383438383335663738313637303764336538643736663465363766353738306263663038383133633535656336333961396264363234313738663565623134376435303061663335316539656631623165333432343834636132363064623763636261653438366631336366323635623562316162363838303636303038303533623230633364656463653737316339613038613033323061613963653435316562396439383361376234396361613130393666386164633039383331386463333865306537636566306438653564353537613036373536383561316339653235366132626339646261333232623362623331373263663731343037376263333830663861306134333361386266613766626663353966366230393365633862663665393339376330396231386531383034306331623536363836343733376338666137653239373935663361343538386464613763326261623439353636356363346139623833366532656239306336326133666361663539316662356638313830346337363138306536323666613236343461376465333435313164366334363637643938393337653237373333663464316539313338383333353465353466643733353137323165373666376235366333343833333838663461366238376232386165626562303230333031303030312813320218163a603962343038383566313362366163316337353336393262613366313739303061333838333165363934613061663937343934623834333838323039636235656662646339386136646162623265316337313833393166633133356264616163330ab70722cc06333038323031613233303064303630393261383634383836663730643031303130313035303030333832303138663030333038323031386130323832303138313030396463643863306135336539306333353539353734663636323034313137643362353033653530613336643330393766616338343239653663656364333762623534303731383038663265653938323033356638353161306339626532313736333833613232653338633161626131363866333266393035373063623332333363666536323539383736363661663637623531346361656632316662386466366430666364333363663236303662393264646561353533366236303638643836373832653339626435633338343435393931643431396237643165633038353939343132633039343964316332343062333563313464633535323734646261373166666165393336313235613566383139663534313332653234333964346163353539373939366563653835653133646666333336316639313331663536636561633562396635353262343963663666396139616336653564636532646233363934363266393361663830653562353662366538626566613136326130363162346137363839326264633834363437333036633630303835386664643237303332373663326337303434303139386566643766653335343563663261623538306337346366643634343561616637626437663734356363323532656162643236356561626565383632343137313034653639343861353537353666646332323264663061313031353234646531633363303863636630343330313165633766653936346564643834353161313330313437633037333633613335663131666465656638663261326237363137353762343335386666383962373561343864363762646336303930363933653062623836373965636262393366666462336633656439366265633933656634363536653337313661623837636534366361386531323539633866656464653866326631656130663365623263343865393635353164653132333330333435373235663435656436396338353735623531363833616661343732363231383236646232326262326431633466316533363436346139303230333031303030312814320218173a60346630613033333466393737363738313632663830643936376637323139313431333630633062376637663033316233376336396536323137333933336564616434366263626139373636376565373262666435613933346261313532326330\"\n )\n )\n);\n","import MirrorNode from \"../MirrorNode.js\";\nimport ManagedNetwork from \"./ManagedNetwork.js\";\n\n/**\n * @typedef {import(\"../channel/MirrorChannel.js\").default} MirrorChannel\n */\n\n/**\n * @augments {ManagedNetwork}\n */\nexport default class MirrorNetwork extends ManagedNetwork {\n /**\n * @param {(address: string) => MirrorChannel} channelInitFunction\n */\n constructor(channelInitFunction) {\n super(channelInitFunction);\n }\n\n /**\n * @param {string[]} network\n */\n setNetwork(network) {\n // eslint-disable-next-line ie11/no-collection-args\n this._setNetwork(new Map(network.map((address) => [address, address])));\n }\n\n /**\n * @returns {string[]}\n */\n get network() {\n /**\n * @type {string[]}\n */\n var n = [];\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n for (const node of this._nodes) {\n n.push(node.address.toString());\n }\n\n return n;\n }\n\n /**\n * @abstract\n * @param {[string, string]} entry\n * @returns {MirrorNode}\n */\n _createNodeFromNetworkEntry(entry) {\n return new MirrorNode({\n newNode: {\n address: entry[1],\n channelInitFunction: this._createNetworkChannel,\n },\n }).setMinBackoff(this._minBackoff);\n }\n\n /**\n * @abstract\n * @param {Map} network\n * @returns {number[]}\n */\n _getNodesToRemove(network) {\n const indexes = [];\n\n const values = Object.values(network);\n\n for (let i = this._nodes.length - 1; i >= 0; i--) {\n const node = this._nodes[i];\n\n if (!values.includes(node.address.toString())) {\n indexes.push(i);\n }\n }\n\n return indexes;\n }\n\n /**\n * @returns {MirrorNode}\n */\n getNextMirrorNode() {\n if (this._createNetworkChannel == null) {\n throw new Error(\"mirror network not supported on browser\");\n }\n\n return this._getNumberOfMostHealthyNodes(1)[0];\n }\n}\n","import ManagedNode from \"./ManagedNode.js\";\n\n/**\n * @typedef {import(\"./channel/MirrorChannel.js\").default} MirrorChannel\n * @typedef {import(\"./ManagedNodeAddress.js\").default} ManagedNodeAddress\n */\n\n/**\n * @typedef {object} NewNode\n * @property {string} address\n * @property {(address: string, cert?: string) => MirrorChannel} channelInitFunction\n */\n\n/**\n * @typedef {object} CloneNode\n * @property {MirrorNode} node\n * @property {ManagedNodeAddress} address\n */\n\n/**\n * @augments {ManagedNode}\n */\nexport default class MirrorNode extends ManagedNode {\n /**\n * @param {object} props\n * @param {NewNode=} [props.newNode]\n * @param {CloneNode=} [props.cloneNode]\n */\n constructor(props = {}) {\n super(props);\n }\n\n /**\n * @returns {string}\n */\n getKey() {\n return this._address.toString();\n }\n\n /**\n * @returns {MirrorNode}\n */\n toInsecure() {\n return new MirrorNode({\n cloneNode: { node: this, address: this._address.toInsecure() },\n });\n }\n\n /**\n * @returns {MirrorNode}\n */\n toSecure() {\n return new MirrorNode({\n cloneNode: { node: this, address: this._address.toSecure() },\n });\n }\n}\n","import Channel, { encodeRequest, decodeUnaryResponse } from \"./Channel.js\";\n\nexport default class WebChannel extends Channel {\n /**\n * @param {string} address\n */\n constructor(address) {\n super();\n\n /**\n * @type {string}\n * @private\n */\n this._address = address;\n }\n\n /**\n * @override\n * @returns {void}\n */\n close() {\n // do nothing\n }\n\n /**\n * @override\n * @protected\n * @param {string} serviceName\n * @returns {import(\"protobufjs\").RPCImpl}\n */\n _createUnaryClient(serviceName) {\n return async (method, requestData, callback) => {\n const response = await fetch(\n `${this._address}/proto.${serviceName}/${method.name}`,\n {\n method: \"POST\",\n headers: {\n \"content-type\": \"application/grpc-web+proto\",\n \"x-user-agent\": \"hedera-sdk-js/v2\",\n \"x-grpc-web\": \"1\",\n },\n body: encodeRequest(requestData),\n }\n );\n\n const responseBuffer = await response.arrayBuffer();\n const unaryResponse = decodeUnaryResponse(responseBuffer);\n\n callback(null, unaryResponse);\n };\n }\n}\n","import {\n CryptoService,\n SmartContractService,\n FileService,\n ConsensusService,\n NetworkService,\n FreezeService,\n TokenService,\n ScheduleService,\n} from \"@hashgraph/proto\";\nimport * as utf8 from \"../encoding/utf8.js\";\n\n/**\n * @internal\n * @abstract\n */\nexport default class Channel {\n /**\n * @protected\n */\n constructor() {\n /**\n * @protected\n * @type {?CryptoService}\n */\n this._crypto = null;\n\n /**\n * @protected\n * @type {?SmartContractService}\n */\n this._smartContract = null;\n\n /**\n * @protected\n * @type {?FileService}\n */\n this._file = null;\n\n /**\n * @protected\n * @type {?ConsensusService}\n */\n this._consensus = null;\n\n /**\n * @protected\n * @type {?FreezeService}\n */\n this._freeze = null;\n\n /**\n * @protected\n * @type {?NetworkService}\n */\n this._network = null;\n\n /**\n * @protected\n * @type {?TokenService}\n */\n this._token = null;\n\n /**\n * @protected\n * @type {?ScheduleService}\n */\n this._schedule = null;\n }\n\n /**\n * @abstract\n * @returns {void}\n */\n close() {\n throw new Error(\"not implemented\");\n }\n\n /**\n * @returns {CryptoService}\n */\n get crypto() {\n if (this._crypto != null) {\n return this._crypto;\n }\n\n this._crypto = CryptoService.create(\n this._createUnaryClient(\"CryptoService\")\n );\n\n return this._crypto;\n }\n\n /**\n * @returns {SmartContractService}\n */\n get smartContract() {\n if (this._smartContract != null) {\n return this._smartContract;\n }\n\n this._smartContract = SmartContractService.create(\n this._createUnaryClient(\"SmartContractService\")\n );\n\n return this._smartContract;\n }\n\n /**\n * @returns {FileService}\n */\n get file() {\n if (this._file != null) {\n return this._file;\n }\n\n this._file = FileService.create(this._createUnaryClient(\"FileService\"));\n\n return this._file;\n }\n\n /**\n * @returns {ConsensusService}\n */\n get consensus() {\n if (this._consensus != null) {\n return this._consensus;\n }\n\n this._consensus = ConsensusService.create(\n this._createUnaryClient(\"ConsensusService\")\n );\n\n return this._consensus;\n }\n\n /**\n * @returns {FreezeService}\n */\n get freeze() {\n if (this._freeze != null) {\n return this._freeze;\n }\n\n this._freeze = FreezeService.create(\n this._createUnaryClient(\"FreezeService\")\n );\n\n return this._freeze;\n }\n\n /**\n * @returns {NetworkService}\n */\n get network() {\n if (this._network != null) {\n return this._network;\n }\n\n this._network = NetworkService.create(\n this._createUnaryClient(\"NetworkService\")\n );\n\n return this._network;\n }\n\n /**\n * @returns {TokenService}\n */\n get token() {\n if (this._token != null) {\n return this._token;\n }\n\n this._token = TokenService.create(\n this._createUnaryClient(\"TokenService\")\n );\n\n return this._token;\n }\n\n /**\n * @returns {ScheduleService}\n */\n get schedule() {\n if (this._schedule != null) {\n return this._schedule;\n }\n\n this._schedule = ScheduleService.create(\n this._createUnaryClient(\"ScheduleService\")\n );\n\n return this._schedule;\n }\n\n /**\n * @abstract\n * @protected\n * @param {string} serviceName\n * @returns {import(\"protobufjs\").RPCImpl}\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _createUnaryClient(serviceName) {\n throw new Error(\"not implemented\");\n }\n}\n\n// grpc-web+proto is a series of data or trailer frames\n\n// a frame is identified by a single byte (0 = data or 1 = trailer) followed by 4 bytes for the\n// length of the frame, followed by the frame data\n\n/**\n * @param {Uint8Array} data\n * @returns {ArrayBuffer}\n */\nexport function encodeRequest(data) {\n // for our requests, we want to transfer a single data frame\n\n const frame = new ArrayBuffer(data.byteLength + 5);\n\n // the frame type (data) is zero and can be left default-initialized\n\n // the length of the frame data\n new DataView(frame, 1, 4).setUint32(0, data.length);\n\n // copy in the frame data\n new Uint8Array(frame, 5).set(data);\n\n return frame;\n}\n\n/**\n * @param {ArrayBuffer} data\n * @param {number} byteOffset\n * @param {number} byteLength\n * @returns {Uint8Array}\n */\nexport function decodeUnaryResponse(\n data,\n byteOffset = 0,\n byteLength = data.byteLength\n) {\n const dataView = new DataView(data, byteOffset, byteLength);\n let dataOffset = 0;\n\n /** @type {?Uint8Array} */\n let unaryResponse = null;\n\n // 0 = successful\n let status = 0;\n\n while (dataOffset < dataView.byteLength) {\n const frameByte = dataView.getUint8(dataOffset + 0);\n const frameType = frameByte >> 7;\n const frameByteLength = dataView.getUint32(dataOffset + 1);\n const frameOffset = dataOffset + 5; // offset from the start of the dataView\n if (frameOffset + frameByteLength > dataView.byteLength) {\n throw new Error(\"(BUG) unexpected frame length past the boundary\");\n }\n const frameData = new Uint8Array(\n data,\n dataView.byteOffset + frameOffset,\n frameByteLength\n );\n\n if (frameType === 0) {\n if (unaryResponse != null) {\n throw new Error(\n \"(BUG) unexpectedly received more than one data frame\"\n );\n }\n\n unaryResponse = frameData;\n } else if (frameType === 1) {\n const trailer = utf8.decode(frameData);\n const [trailerName, trailerValue] = trailer.split(\":\");\n\n if (trailerName === \"grpc-status\") {\n status = parseInt(trailerValue);\n } else {\n throw new Error(`(BUG) unhandled trailer, ${trailer}`);\n }\n } else {\n throw new Error(`(BUG) unexpected frame type: ${frameType}`);\n }\n\n dataOffset += frameByteLength + 5;\n }\n\n if (status !== 0) {\n throw new Error(`(BUG) unhandled grpc-status: ${status}`);\n }\n\n if (unaryResponse == null) {\n throw new Error(\"(BUG) unexpectedly received no response\");\n }\n\n return unaryResponse;\n}\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file batch.js\r\n * @author Marek Kotewicz \r\n * @date 2015\r\n */\r\n\"use strict\";\r\nvar Jsonrpc = require('./jsonrpc');\r\nvar errors = require('@arianelabs/hweb3-core-helpers').errors;\r\nvar Batch = function (requestManager) {\r\n this.requestManager = requestManager;\r\n this.requests = [];\r\n};\r\n/**\r\n * Should be called to add create new request to batch request\r\n *\r\n * @method add\r\n * @param {Object} jsonrpc requet object\r\n */\r\nBatch.prototype.add = function (request) {\r\n this.requests.push(request);\r\n};\r\n/**\r\n * Should be called to execute batch request\r\n *\r\n * @method execute\r\n */\r\nBatch.prototype.execute = function () {\r\n var requests = this.requests;\r\n var sortResponses = this._sortResponses.bind(this);\r\n this.requestManager.sendBatch(requests, function (err, results) {\r\n results = sortResponses(results);\r\n requests.map(function (request, index) {\r\n return results[index] || {};\r\n }).forEach(function (result, index) {\r\n if (requests[index].callback) {\r\n if (result && result.error) {\r\n return requests[index].callback(errors.ErrorResponse(result));\r\n }\r\n if (!Jsonrpc.isValidResponse(result)) {\r\n return requests[index].callback(errors.InvalidResponse(result));\r\n }\r\n try {\r\n requests[index].callback(null, requests[index].format ? requests[index].format(result.result) : result.result);\r\n }\r\n catch (err) {\r\n requests[index].callback(err);\r\n }\r\n }\r\n });\r\n });\r\n};\r\n// Sort responses\r\nBatch.prototype._sortResponses = function (responses) {\r\n return (responses || []).sort((a, b) => a.id - b.id);\r\n};\r\nexport default Batch;\r\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/** @file jsonrpc.js\r\n * @authors:\r\n * Fabian Vogelsteller \r\n * Marek Kotewicz \r\n * Aaron Kumavis \r\n * @date 2015\r\n */\r\n\"use strict\";\r\n// Initialize Jsonrpc as a simple object with utility functions.\r\nvar Jsonrpc = {\r\n messageId: 0\r\n};\r\n/**\r\n * Should be called to valid json create payload object\r\n *\r\n * @method toPayload\r\n * @param {Function} method of jsonrpc call, required\r\n * @param {Array} params, an array of method params, optional\r\n * @returns {Object} valid jsonrpc payload object\r\n */\r\nJsonrpc.toPayload = function (method, params) {\r\n if (!method) {\r\n throw new Error('JSONRPC method should be specified for params: \"' + JSON.stringify(params) + '\"!');\r\n }\r\n // advance message ID\r\n Jsonrpc.messageId++;\r\n return {\r\n jsonrpc: '2.0',\r\n id: Jsonrpc.messageId,\r\n method: method,\r\n params: params || []\r\n };\r\n};\r\n/**\r\n * Should be called to check if jsonrpc response is valid\r\n *\r\n * @method isValidResponse\r\n * @param {Object}\r\n * @returns {Boolean} true if response is valid, otherwise false\r\n */\r\nJsonrpc.isValidResponse = function (response) {\r\n return Array.isArray(response) ? response.every(validateSingleMessage) : validateSingleMessage(response);\r\n function validateSingleMessage(message) {\r\n return !!message &&\r\n !message.error &&\r\n message.jsonrpc === '2.0' &&\r\n (typeof message.id === 'number' || typeof message.id === 'string') &&\r\n message.result !== undefined; // only undefined is not valid json object\r\n }\r\n};\r\n/**\r\n * Should be called to create batch payload object\r\n *\r\n * @method toBatchPayload\r\n * @param {Array} messages, an array of objects with method (required) and params (optional) fields\r\n * @returns {Array} batch payload\r\n */\r\nJsonrpc.toBatchPayload = function (messages) {\r\n return messages.map(function (message) {\r\n return Jsonrpc.toPayload(message.method, message.params);\r\n });\r\n};\r\nexport default Jsonrpc;\r\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file errors.js\r\n * @author Fabian Vogelsteller \r\n * @author Marek Kotewicz \r\n * @date 2017\r\n */\r\n\"use strict\";\r\nmodule.exports = {\r\n ErrorResponse: function (result) {\r\n var message = !!result && !!result.error && !!result.error.message ? result.error.message : JSON.stringify(result);\r\n var data = (!!result.error && !!result.error.data) ? result.error.data : null;\r\n var err = new Error('Returned error: ' + message);\r\n err.data = data;\r\n return err;\r\n },\r\n InvalidNumberOfParams: function (got, expected, method) {\r\n return new Error('Invalid number of parameters for \"' + method + '\". Got ' + got + ' expected ' + expected + '!');\r\n },\r\n InvalidConnection: function (host, event) {\r\n return this.ConnectionError('CONNECTION ERROR: Couldn\\'t connect to node ' + host + '.', event);\r\n },\r\n InvalidProvider: function () {\r\n return new Error('Provider not set or invalid');\r\n },\r\n InvalidResponse: function (result) {\r\n var message = !!result && !!result.error && !!result.error.message ? result.error.message : 'Invalid JSON RPC response: ' + JSON.stringify(result);\r\n return new Error(message);\r\n },\r\n ConnectionTimeout: function (ms) {\r\n return new Error('CONNECTION TIMEOUT: timeout of ' + ms + ' ms achived');\r\n },\r\n ConnectionNotOpenError: function (event) {\r\n return this.ConnectionError('connection not open on send()', event);\r\n },\r\n ConnectionCloseError: function (event) {\r\n if (typeof event === 'object' && event.code && event.reason) {\r\n return this.ConnectionError('CONNECTION ERROR: The connection got closed with ' +\r\n 'the close code `' + event.code + '` and the following ' +\r\n 'reason string `' + event.reason + '`', event);\r\n }\r\n return new Error('CONNECTION ERROR: The connection closed unexpectedly');\r\n },\r\n MaxAttemptsReachedOnReconnectingError: function () {\r\n return new Error('Maximum number of reconnect attempts reached!');\r\n },\r\n PendingRequestsOnReconnectingError: function () {\r\n return new Error('CONNECTION ERROR: Provider started to reconnect before the response got received!');\r\n },\r\n ConnectionError: function (msg, event) {\r\n const error = new Error(msg);\r\n if (event) {\r\n error.code = event.code;\r\n error.reason = event.reason;\r\n }\r\n return error;\r\n },\r\n RevertInstructionError: function (reason, signature) {\r\n var error = new Error('Your request got reverted with the following reason string: ' + reason);\r\n error.reason = reason;\r\n error.signature = signature;\r\n return error;\r\n },\r\n TransactionRevertInstructionError: function (reason, signature, receipt) {\r\n var error = new Error('Transaction has been reverted by the EVM:\\n' + JSON.stringify(receipt, null, 2));\r\n error.reason = reason;\r\n error.signature = signature;\r\n error.receipt = receipt;\r\n return error;\r\n },\r\n TransactionError: function (message, receipt) {\r\n var error = new Error(message);\r\n error.receipt = receipt;\r\n return error;\r\n },\r\n NoContractAddressFoundError: function (receipt) {\r\n return this.TransactionError('The transaction receipt didn\\'t contain a contract address.', receipt);\r\n },\r\n ContractCodeNotStoredError: function (receipt) {\r\n return this.TransactionError('The contract code couldn\\'t be stored, please check your gas limit.', receipt);\r\n },\r\n TransactionRevertedWithoutReasonError: function (receipt) {\r\n return this.TransactionError('Transaction has been reverted by the EVM:\\n' + JSON.stringify(receipt, null, 2), receipt);\r\n },\r\n TransactionOutOfGasError: function (receipt) {\r\n return this.TransactionError('Transaction ran out of gas. Please provide more gas:\\n' + JSON.stringify(receipt, null, 2), receipt);\r\n },\r\n ResolverMethodMissingError: function (address, name) {\r\n return new Error('The resolver at ' + address + 'does not implement requested method: \"' + name + '\".');\r\n },\r\n ContractMissingABIError: function () {\r\n return new Error('You must provide the json interface of the contract when instantiating a contract object.');\r\n },\r\n ContractOnceRequiresCallbackError: function () {\r\n return new Error('Once requires a callback as the second parameter.');\r\n },\r\n ContractEventDoesNotExistError: function (eventName) {\r\n return new Error('Event \"' + eventName + '\" doesn\\'t exist in this contract.');\r\n },\r\n ContractReservedEventError: function (type) {\r\n return new Error('The event \"' + type + '\" is a reserved event name, you can\\'t use it.');\r\n },\r\n ContractMissingDeployDataError: function () {\r\n return new Error('No \"data\" specified in neither the given options, nor the default options.');\r\n },\r\n ContractNoAddressDefinedError: function () {\r\n return new Error('This contract object doesn\\'t have address set yet, please set an address first.');\r\n },\r\n ContractNoFromAddressDefinedError: function () {\r\n return new Error('No \"from\" address specified in neither the given options, nor the default options.');\r\n }\r\n};\r\n","/*\r\n This file is part of web3.js.\r\n\r\n web3.js is free software: you can redistribute it and/or modify\r\n it under the terms of the GNU Lesser General Public License as published by\r\n the Free Software Foundation, either version 3 of the License, or\r\n (at your option) any later version.\r\n\r\n web3.js is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU Lesser General Public License for more details.\r\n\r\n You should have received a copy of the GNU Lesser General Public License\r\n along with web3.js. If not, see .\r\n*/\r\n/**\r\n * @file formatters.js\r\n * @author Fabian Vogelsteller \r\n * @author Marek Kotewicz \r\n * @date 2017\r\n */\r\n\"use strict\";\r\nvar utils = require('@arianelabs/hweb3-utils');\r\nvar Iban = require('@arianelabs/hweb3-eth-iban');\r\n/**\r\n * Will format the given storage key array values to hex strings.\r\n *\r\n * @method inputStorageKeysFormatter\r\n *\r\n * @param {Array} keys\r\n *\r\n * @returns {Array}\r\n */\r\nvar inputStorageKeysFormatter = function (keys) {\r\n return keys.map(utils.numberToHex);\r\n};\r\n/**\r\n * Will format the given proof response from the node.\r\n *\r\n * @method outputProofFormatter\r\n *\r\n * @param {object} proof\r\n *\r\n * @returns {object}\r\n */\r\nvar outputProofFormatter = function (proof) {\r\n proof.address = utils.toChecksumAddress(proof.address);\r\n proof.nonce = utils.hexToNumberString(proof.nonce);\r\n proof.balance = utils.hexToNumberString(proof.balance);\r\n return proof;\r\n};\r\n/**\r\n * Should the format output to a big number\r\n *\r\n * @method outputBigNumberFormatter\r\n *\r\n * @param {String|Number|BigNumber|BN} number\r\n *\r\n * @returns {BN} object\r\n */\r\nvar outputBigNumberFormatter = function (number) {\r\n return utils.toBN(number).toString(10);\r\n};\r\n/**\r\n * Returns true if the given blockNumber is 'latest', 'pending', or 'earliest.\r\n *\r\n * @method isPredefinedBlockNumber\r\n *\r\n * @param {String} blockNumber\r\n *\r\n * @returns {Boolean}\r\n */\r\nvar isPredefinedBlockNumber = function (blockNumber) {\r\n return blockNumber === 'latest' || blockNumber === 'pending' || blockNumber === 'earliest';\r\n};\r\n/**\r\n * Returns the given block number as hex string or does return the defaultBlock property of the current module\r\n *\r\n * @method inputDefaultBlockNumberFormatter\r\n *\r\n * @param {String|Number|BN|BigNumber} blockNumber\r\n *\r\n * @returns {String}\r\n */\r\nvar inputDefaultBlockNumberFormatter = function (blockNumber) {\r\n if (this && (blockNumber === undefined || blockNumber === null)) {\r\n return inputBlockNumberFormatter(this.defaultBlock);\r\n }\r\n return inputBlockNumberFormatter(blockNumber);\r\n};\r\n/**\r\n * Returns the given block number as hex string or the predefined block number 'latest', 'pending', 'earliest', 'genesis'\r\n *\r\n * @param {String|Number|BN|BigNumber} blockNumber\r\n *\r\n * @returns {String}\r\n */\r\nvar inputBlockNumberFormatter = function (blockNumber) {\r\n if (blockNumber === undefined) {\r\n return undefined;\r\n }\r\n if (isPredefinedBlockNumber(blockNumber)) {\r\n return blockNumber;\r\n }\r\n if (blockNumber === 'genesis') {\r\n return '0x0';\r\n }\r\n return (utils.isHexStrict(blockNumber)) ? ((typeof blockNumber === 'string') ? blockNumber.toLowerCase() : blockNumber) : utils.numberToHex(blockNumber);\r\n};\r\n/**\r\n * Formats the input of a transaction and converts all values to HEX\r\n *\r\n * @method _txInputFormatter\r\n * @param {Object} transaction options\r\n * @returns object\r\n */\r\nvar _txInputFormatter = function (options) {\r\n if (options.to) { // it might be contract creation\r\n options.to = inputAddressFormatter(options.to);\r\n }\r\n if (options.data && options.input) {\r\n throw new Error('You can\\'t have \"data\" and \"input\" as properties of transactions at the same time, please use either \"data\" or \"input\" instead.');\r\n }\r\n if (!options.data && options.input) {\r\n options.data = options.input;\r\n delete options.input;\r\n }\r\n if (options.data && !options.data.startsWith('0x')) {\r\n options.data = '0x' + options.data;\r\n }\r\n if (options.data && !utils.isHex(options.data)) {\r\n throw new Error('The data field must be HEX encoded data.');\r\n }\r\n // allow both\r\n if (options.gas || options.gasLimit) {\r\n options.gas = options.gas || options.gasLimit;\r\n }\r\n if (options.maxPriorityFeePerGas || options.maxFeePerGas) {\r\n delete options.gasPrice;\r\n }\r\n ['gasPrice', 'gas', 'value', 'maxPriorityFeePerGas', 'maxFeePerGas', 'nonce'].filter(function (key) {\r\n return options[key] !== undefined;\r\n }).forEach(function (key) {\r\n options[key] = utils.numberToHex(options[key]);\r\n });\r\n return options;\r\n};\r\n/**\r\n * Formats the input of a transaction and converts all values to HEX\r\n *\r\n * @method inputCallFormatter\r\n * @param {Object} transaction options\r\n * @returns object\r\n */\r\nvar inputCallFormatter = function (options) {\r\n options = _txInputFormatter(options);\r\n var from = options.from || (this ? this.defaultAccount : null);\r\n if (from) {\r\n options.from = inputAddressFormatter(from);\r\n }\r\n return options;\r\n};\r\n/**\r\n * Formats the input of a transaction and converts all values to HEX\r\n *\r\n * @method inputTransactionFormatter\r\n * @param {Object} options\r\n * @returns object\r\n */\r\nvar inputTransactionFormatter = function (options) {\r\n options = _txInputFormatter(options);\r\n // check from, only if not number, or object\r\n if (!(typeof options.from === 'number') && !(!!options.from && typeof options.from === 'object')) {\r\n options.from = options.from || (this ? this.defaultAccount : null);\r\n if (!options.from && !(typeof options.from === 'number')) {\r\n throw new Error('The send transactions \"from\" field must be defined!');\r\n }\r\n options.from = inputAddressFormatter(options.from);\r\n }\r\n return options;\r\n};\r\n/**\r\n * Hex encodes the data passed to eth_sign and personal_sign\r\n *\r\n * @method inputSignFormatter\r\n * @param {String} data\r\n * @returns {String}\r\n */\r\nvar inputSignFormatter = function (data) {\r\n return (utils.isHexStrict(data)) ? data : utils.utf8ToHex(data);\r\n};\r\n/**\r\n * Formats the output of a transaction to its proper values\r\n *\r\n * @method outputTransactionFormatter\r\n * @param {Object} tx\r\n * @returns {Object}\r\n */\r\nvar outputTransactionFormatter = function (tx) {\r\n if (tx.blockNumber !== null)\r\n tx.blockNumber = utils.hexToNumber(tx.blockNumber);\r\n if (tx.transactionIndex !== null)\r\n tx.transactionIndex = utils.hexToNumber(tx.transactionIndex);\r\n tx.nonce = utils.hexToNumber(tx.nonce);\r\n tx.gas = utils.hexToNumber(tx.gas);\r\n if (tx.gasPrice)\r\n tx.gasPrice = outputBigNumberFormatter(tx.gasPrice);\r\n if (tx.maxFeePerGas)\r\n tx.maxFeePerGas = outputBigNumberFormatter(tx.maxFeePerGas);\r\n if (tx.maxPriorityFeePerGas)\r\n tx.maxPriorityFeePerGas = outputBigNumberFormatter(tx.maxPriorityFeePerGas);\r\n if (tx.type)\r\n tx.type = utils.hexToNumber(tx.type);\r\n tx.value = outputBigNumberFormatter(tx.value);\r\n if (tx.to && utils.isAddress(tx.to)) { // tx.to could be `0x0` or `null` while contract creation\r\n tx.to = utils.toChecksumAddress(tx.to);\r\n }\r\n else {\r\n tx.to = null; // set to `null` if invalid address\r\n }\r\n if (tx.from) {\r\n tx.from = utils.toChecksumAddress(tx.from);\r\n }\r\n return tx;\r\n};\r\n/**\r\n * Formats the output of a transaction receipt to its proper values\r\n *\r\n * @method outputTransactionReceiptFormatter\r\n * @param {Object} receipt\r\n * @returns {Object}\r\n */\r\nvar outputTransactionReceiptFormatter = function (receipt) {\r\n if (typeof receipt !== 'object') {\r\n throw new Error('Received receipt is invalid: ' + receipt);\r\n }\r\n if (receipt.blockNumber !== null)\r\n receipt.blockNumber = utils.hexToNumber(receipt.blockNumber);\r\n if (receipt.transactionIndex !== null)\r\n receipt.transactionIndex = utils.hexToNumber(receipt.transactionIndex);\r\n receipt.cumulativeGasUsed = utils.hexToNumber(receipt.cumulativeGasUsed);\r\n receipt.gasUsed = utils.hexToNumber(receipt.gasUsed);\r\n if (Array.isArray(receipt.logs)) {\r\n receipt.logs = receipt.logs.map(outputLogFormatter);\r\n }\r\n if (receipt.effectiveGasPrice) {\r\n receipt.effectiveGasPrice = utils.hexToNumber(receipt.effectiveGasPrice);\r\n }\r\n if (receipt.contractAddress) {\r\n receipt.contractAddress = utils.toChecksumAddress(receipt.contractAddress);\r\n }\r\n if (typeof receipt.status !== 'undefined' && receipt.status !== null) {\r\n receipt.status = Boolean(parseInt(receipt.status));\r\n }\r\n return receipt;\r\n};\r\n/**\r\n * Formats the output of a block to its proper values\r\n *\r\n * @method outputBlockFormatter\r\n * @param {Object} block\r\n * @returns {Object}\r\n */\r\nvar outputBlockFormatter = function (block) {\r\n // transform to number\r\n block.gasLimit = utils.hexToNumber(block.gasLimit);\r\n block.gasUsed = utils.hexToNumber(block.gasUsed);\r\n block.size = utils.hexToNumber(block.size);\r\n block.timestamp = utils.hexToNumber(block.timestamp);\r\n if (block.number !== null)\r\n block.number = utils.hexToNumber(block.number);\r\n if (block.difficulty)\r\n block.difficulty = outputBigNumberFormatter(block.difficulty);\r\n if (block.totalDifficulty)\r\n block.totalDifficulty = outputBigNumberFormatter(block.totalDifficulty);\r\n if (Array.isArray(block.transactions)) {\r\n block.transactions.forEach(function (item) {\r\n if (!(typeof item === 'string'))\r\n return outputTransactionFormatter(item);\r\n });\r\n }\r\n if (block.miner)\r\n block.miner = utils.toChecksumAddress(block.miner);\r\n if (block.baseFeePerGas)\r\n block.baseFeePerGas = utils.hexToNumber(block.baseFeePerGas);\r\n return block;\r\n};\r\n/**\r\n * Formats the input of a log\r\n *\r\n * @method inputLogFormatter\r\n * @param {Object} log object\r\n * @returns {Object} log\r\n */\r\nvar inputLogFormatter = function (options) {\r\n var toTopic = function (value) {\r\n if (value === null || typeof value === 'undefined')\r\n return null;\r\n value = String(value);\r\n if (value.indexOf('0x') === 0)\r\n return value;\r\n else\r\n return utils.fromUtf8(value);\r\n };\r\n if (options === undefined)\r\n options = {};\r\n // If options !== undefined, don't blow out existing data\r\n if (options.fromBlock === undefined)\r\n options = Object.assign(Object.assign({}, options), { fromBlock: 'latest' });\r\n if (options.fromBlock || options.fromBlock === 0)\r\n options.fromBlock = inputBlockNumberFormatter(options.fromBlock);\r\n if (options.toBlock || options.toBlock === 0)\r\n options.toBlock = inputBlockNumberFormatter(options.toBlock);\r\n // make sure topics, get converted to hex\r\n options.topics = options.topics || [];\r\n options.topics = options.topics.map(function (topic) {\r\n return (Array.isArray(topic)) ? topic.map(toTopic) : toTopic(topic);\r\n });\r\n toTopic = null;\r\n if (options.address) {\r\n options.address = (Array.isArray(options.address)) ? options.address.map(function (addr) {\r\n return inputAddressFormatter(addr);\r\n }) : inputAddressFormatter(options.address);\r\n }\r\n return options;\r\n};\r\n/**\r\n * Formats the output of a log\r\n *\r\n * @method outputLogFormatter\r\n * @param {Object} log object\r\n * @returns {Object} log\r\n */\r\nvar outputLogFormatter = function (log) {\r\n // generate a custom log id\r\n if (typeof log.blockHash === 'string' &&\r\n typeof log.transactionHash === 'string' &&\r\n typeof log.logIndex === 'string') {\r\n var shaId = utils.sha3(log.blockHash.replace('0x', '') + log.transactionHash.replace('0x', '') + log.logIndex.replace('0x', ''));\r\n log.id = 'log_' + shaId.replace('0x', '').substr(0, 8);\r\n }\r\n else if (!log.id) {\r\n log.id = null;\r\n }\r\n if (log.blockNumber !== null)\r\n log.blockNumber = utils.hexToNumber(log.blockNumber);\r\n if (log.transactionIndex !== null)\r\n log.transactionIndex = utils.hexToNumber(log.transactionIndex);\r\n if (log.logIndex !== null)\r\n log.logIndex = utils.hexToNumber(log.logIndex);\r\n if (log.address) {\r\n log.address = utils.toChecksumAddress(log.address);\r\n }\r\n return log;\r\n};\r\n/**\r\n * Formats the input of a whisper post and converts all values to HEX\r\n *\r\n * @method inputPostFormatter\r\n * @param {Object} transaction object\r\n * @returns {Object}\r\n */\r\nvar inputPostFormatter = function (post) {\r\n // post.payload = utils.toHex(post.payload);\r\n if (post.ttl)\r\n post.ttl = utils.numberToHex(post.ttl);\r\n if (post.workToProve)\r\n post.workToProve = utils.numberToHex(post.workToProve);\r\n if (post.priority)\r\n post.priority = utils.numberToHex(post.priority);\r\n // fallback\r\n if (!Array.isArray(post.topics)) {\r\n post.topics = post.topics ? [post.topics] : [];\r\n }\r\n // format the following options\r\n post.topics = post.topics.map(function (topic) {\r\n // convert only if not hex\r\n return (topic.indexOf('0x') === 0) ? topic : utils.fromUtf8(topic);\r\n });\r\n return post;\r\n};\r\n/**\r\n * Formats the output of a received post message\r\n *\r\n * @method outputPostFormatter\r\n * @param {Object}\r\n * @returns {Object}\r\n */\r\nvar outputPostFormatter = function (post) {\r\n post.expiry = utils.hexToNumber(post.expiry);\r\n post.sent = utils.hexToNumber(post.sent);\r\n post.ttl = utils.hexToNumber(post.ttl);\r\n post.workProved = utils.hexToNumber(post.workProved);\r\n // post.payloadRaw = post.payload;\r\n // post.payload = utils.hexToAscii(post.payload);\r\n // if (utils.isJson(post.payload)) {\r\n // post.payload = JSON.parse(post.payload);\r\n // }\r\n // format the following options\r\n if (!post.topics) {\r\n post.topics = [];\r\n }\r\n post.topics = post.topics.map(function (topic) {\r\n return utils.toUtf8(topic);\r\n });\r\n return post;\r\n};\r\nvar inputAddressFormatter = function (address) {\r\n var iban = new Iban(address);\r\n if (iban.isValid() && iban.isDirect()) {\r\n return iban.toAddress().toLowerCase();\r\n }\r\n else if (utils.isAddress(address)) {\r\n return '0x' + address.toLowerCase().replace('0x', '');\r\n }\r\n throw new Error(`Provided address ${address} is invalid, the capitalization checksum test failed, or it's an indirect IBAN address which can't be converted.`);\r\n};\r\nvar outputSyncingFormatter = function (result) {\r\n result.startingBlock = utils.hexToNumber(result.startingBlock);\r\n result.currentBlock = utils.hexToNumber(result.currentBlock);\r\n result.highestBlock = utils.hexToNumber(result.highestBlock);\r\n if (result.knownStates) {\r\n result.knownStates = utils.hexToNumber(result.knownStates);\r\n result.pulledStates = utils.hexToNumber(result.pulledStates);\r\n }\r\n return result;\r\n};\r\nmodule.exports = {\r\n inputDefaultBlockNumberFormatter: inputDefaultBlockNumberFormatter,\r\n inputBlockNumberFormatter: inputBlockNumberFormatter,\r\n inputCallFormatter: inputCallFormatter,\r\n inputTransactionFormatter: inputTransactionFormatter,\r\n inputAddressFormatter: inputAddressFormatter,\r\n inputPostFormatter: inputPostFormatter,\r\n inputLogFormatter: inputLogFormatter,\r\n inputSignFormatter: inputSignFormatter,\r\n inputStorageKeysFormatter: inputStorageKeysFormatter,\r\n outputProofFormatter: outputProofFormatter,\r\n outputBigNumberFormatter: outputBigNumberFormatter,\r\n outputTransactionFormatter: outputTransactionFormatter,\r\n outputTransactionReceiptFormatter: outputTransactionReceiptFormatter,\r\n outputBlockFormatter: outputBlockFormatter,\r\n outputLogFormatter: outputLogFormatter,\r\n outputPostFormatter: outputPostFormatter,\r\n outputSyncingFormatter: outputSyncingFormatter\r\n};\r\n","'use strict';\n\nvar BN = require('bn.js');\nvar numberToBN = require('number-to-bn');\n\nvar zero = new BN(0);\nvar negative1 = new BN(-1);\n\n// complete ethereum unit map\nvar unitMap = {\n 'noether': '0', // eslint-disable-line\n 'wei': '1', // eslint-disable-line\n 'kwei': '1000', // eslint-disable-line\n 'Kwei': '1000', // eslint-disable-line\n 'babbage': '1000', // eslint-disable-line\n 'femtoether': '1000', // eslint-disable-line\n 'mwei': '1000000', // eslint-disable-line\n 'Mwei': '1000000', // eslint-disable-line\n 'lovelace': '1000000', // eslint-disable-line\n 'picoether': '1000000', // eslint-disable-line\n 'gwei': '1000000000', // eslint-disable-line\n 'Gwei': '1000000000', // eslint-disable-line\n 'shannon': '1000000000', // eslint-disable-line\n 'nanoether': '1000000000', // eslint-disable-line\n 'nano': '1000000000', // eslint-disable-line\n 'szabo': '1000000000000', // eslint-disable-line\n 'microether': '1000000000000', // eslint-disable-line\n 'micro': '1000000000000', // eslint-disable-line\n 'finney': '1000000000000000', // eslint-disable-line\n 'milliether': '1000000000000000', // eslint-disable-line\n 'milli': '1000000000000000', // eslint-disable-line\n 'ether': '1000000000000000000', // eslint-disable-line\n 'kether': '1000000000000000000000', // eslint-disable-line\n 'grand': '1000000000000000000000', // eslint-disable-line\n 'mether': '1000000000000000000000000', // eslint-disable-line\n 'gether': '1000000000000000000000000000', // eslint-disable-line\n 'tether': '1000000000000000000000000000000' };\n\n/**\n * Returns value of unit in Wei\n *\n * @method getValueOfUnit\n * @param {String} unit the unit to convert to, default ether\n * @returns {BigNumber} value of the unit (in Wei)\n * @throws error if the unit is not correct:w\n */\nfunction getValueOfUnit(unitInput) {\n var unit = unitInput ? unitInput.toLowerCase() : 'ether';\n var unitValue = unitMap[unit]; // eslint-disable-line\n\n if (typeof unitValue !== 'string') {\n throw new Error('[ethjs-unit] the unit provided ' + unitInput + ' doesn\\'t exists, please use the one of the following units ' + JSON.stringify(unitMap, null, 2));\n }\n\n return new BN(unitValue, 10);\n}\n\nfunction numberToString(arg) {\n if (typeof arg === 'string') {\n if (!arg.match(/^-?[0-9.]+$/)) {\n throw new Error('while converting number to string, invalid number value \\'' + arg + '\\', should be a number matching (^-?[0-9.]+).');\n }\n return arg;\n } else if (typeof arg === 'number') {\n return String(arg);\n } else if (typeof arg === 'object' && arg.toString && (arg.toTwos || arg.dividedToIntegerBy)) {\n if (arg.toPrecision) {\n return String(arg.toPrecision());\n } else {\n // eslint-disable-line\n return arg.toString(10);\n }\n }\n throw new Error('while converting number to string, invalid number value \\'' + arg + '\\' type ' + typeof arg + '.');\n}\n\nfunction fromWei(weiInput, unit, optionsInput) {\n var wei = numberToBN(weiInput); // eslint-disable-line\n var negative = wei.lt(zero); // eslint-disable-line\n var base = getValueOfUnit(unit);\n var baseLength = unitMap[unit].length - 1 || 1;\n var options = optionsInput || {};\n\n if (negative) {\n wei = wei.mul(negative1);\n }\n\n var fraction = wei.mod(base).toString(10); // eslint-disable-line\n\n while (fraction.length < baseLength) {\n fraction = '0' + fraction;\n }\n\n if (!options.pad) {\n fraction = fraction.match(/^([0-9]*[1-9]|0)(0*)/)[1];\n }\n\n var whole = wei.div(base).toString(10); // eslint-disable-line\n\n if (options.commify) {\n whole = whole.replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n }\n\n var value = '' + whole + (fraction == '0' ? '' : '.' + fraction); // eslint-disable-line\n\n if (negative) {\n value = '-' + value;\n }\n\n return value;\n}\n\nfunction toWei(etherInput, unit) {\n var ether = numberToString(etherInput); // eslint-disable-line\n var base = getValueOfUnit(unit);\n var baseLength = unitMap[unit].length - 1 || 1;\n\n // Is it negative?\n var negative = ether.substring(0, 1) === '-'; // eslint-disable-line\n if (negative) {\n ether = ether.substring(1);\n }\n\n if (ether === '.') {\n throw new Error('[ethjs-unit] while converting number ' + etherInput + ' to wei, invalid value');\n }\n\n // Split it into a whole and fractional part\n var comps = ether.split('.'); // eslint-disable-line\n if (comps.length > 2) {\n throw new Error('[ethjs-unit] while converting number ' + etherInput + ' to wei, too many decimal points');\n }\n\n var whole = comps[0],\n fraction = comps[1]; // eslint-disable-line\n\n if (!whole) {\n whole = '0';\n }\n if (!fraction) {\n fraction = '0';\n }\n if (fraction.length > baseLength) {\n throw new Error('[ethjs-unit] while converting number ' + etherInput + ' to wei, too many decimal places');\n }\n\n while (fraction.length < baseLength) {\n fraction += '0';\n }\n\n whole = new BN(whole);\n fraction = new BN(fraction);\n var wei = whole.mul(base).add(fraction); // eslint-disable-line\n\n if (negative) {\n wei = wei.mul(negative1);\n }\n\n return new BN(wei.toString(10), 10);\n}\n\nmodule.exports = {\n unitMap: unitMap,\n numberToString: numberToString,\n getValueOfUnit: getValueOfUnit,\n fromWei: fromWei,\n toWei: toWei\n};","var isHexPrefixed = require('is-hex-prefixed');\n\n/**\n * Removes '0x' from a given `String` is present\n * @param {String} str the string value\n * @return {String|Optional} a string by pass if necessary\n */\nmodule.exports = function stripHexPrefix(str) {\n if (typeof str !== 'string') {\n return str;\n }\n\n return isHexPrefixed(str) ? str.slice(2) : str;\n}\n","/**\n * Returns a `Boolean` on whether or not the a `String` starts with '0x'\n * @param {String} str the string input value\n * @return {Boolean} a boolean if it is or is not hex prefixed\n * @throws if the str input is not a string\n */\nmodule.exports = function isHexPrefixed(str) {\n if (typeof str !== 'string') {\n throw new Error(\"[is-hex-prefixed] value must be type 'string', is currently type \" + (typeof str) + \", while checking isHexPrefixed.\");\n }\n\n return str.slice(0, 2) === '0x';\n}\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","/*! https://mths.be/utf8js v3.0.0 by @mathias */\n;(function(root) {\n\n\tvar stringFromCharCode = String.fromCharCode;\n\n\t// Taken from https://mths.be/punycode\n\tfunction ucs2decode(string) {\n\t\tvar output = [];\n\t\tvar counter = 0;\n\t\tvar length = string.length;\n\t\tvar value;\n\t\tvar extra;\n\t\twhile (counter < length) {\n\t\t\tvalue = string.charCodeAt(counter++);\n\t\t\tif (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n\t\t\t\t// high surrogate, and there is a next character\n\t\t\t\textra = string.charCodeAt(counter++);\n\t\t\t\tif ((extra & 0xFC00) == 0xDC00) { // low surrogate\n\t\t\t\t\toutput.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n\t\t\t\t} else {\n\t\t\t\t\t// unmatched surrogate; only append this code unit, in case the next\n\t\t\t\t\t// code unit is the high surrogate of a surrogate pair\n\t\t\t\t\toutput.push(value);\n\t\t\t\t\tcounter--;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\toutput.push(value);\n\t\t\t}\n\t\t}\n\t\treturn output;\n\t}\n\n\t// Taken from https://mths.be/punycode\n\tfunction ucs2encode(array) {\n\t\tvar length = array.length;\n\t\tvar index = -1;\n\t\tvar value;\n\t\tvar output = '';\n\t\twhile (++index < length) {\n\t\t\tvalue = array[index];\n\t\t\tif (value > 0xFFFF) {\n\t\t\t\tvalue -= 0x10000;\n\t\t\t\toutput += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800);\n\t\t\t\tvalue = 0xDC00 | value & 0x3FF;\n\t\t\t}\n\t\t\toutput += stringFromCharCode(value);\n\t\t}\n\t\treturn output;\n\t}\n\n\tfunction checkScalarValue(codePoint) {\n\t\tif (codePoint >= 0xD800 && codePoint <= 0xDFFF) {\n\t\t\tthrow Error(\n\t\t\t\t'Lone surrogate U+' + codePoint.toString(16).toUpperCase() +\n\t\t\t\t' is not a scalar value'\n\t\t\t);\n\t\t}\n\t}\n\t/*--------------------------------------------------------------------------*/\n\n\tfunction createByte(codePoint, shift) {\n\t\treturn stringFromCharCode(((codePoint >> shift) & 0x3F) | 0x80);\n\t}\n\n\tfunction encodeCodePoint(codePoint) {\n\t\tif ((codePoint & 0xFFFFFF80) == 0) { // 1-byte sequence\n\t\t\treturn stringFromCharCode(codePoint);\n\t\t}\n\t\tvar symbol = '';\n\t\tif ((codePoint & 0xFFFFF800) == 0) { // 2-byte sequence\n\t\t\tsymbol = stringFromCharCode(((codePoint >> 6) & 0x1F) | 0xC0);\n\t\t}\n\t\telse if ((codePoint & 0xFFFF0000) == 0) { // 3-byte sequence\n\t\t\tcheckScalarValue(codePoint);\n\t\t\tsymbol = stringFromCharCode(((codePoint >> 12) & 0x0F) | 0xE0);\n\t\t\tsymbol += createByte(codePoint, 6);\n\t\t}\n\t\telse if ((codePoint & 0xFFE00000) == 0) { // 4-byte sequence\n\t\t\tsymbol = stringFromCharCode(((codePoint >> 18) & 0x07) | 0xF0);\n\t\t\tsymbol += createByte(codePoint, 12);\n\t\t\tsymbol += createByte(codePoint, 6);\n\t\t}\n\t\tsymbol += stringFromCharCode((codePoint & 0x3F) | 0x80);\n\t\treturn symbol;\n\t}\n\n\tfunction utf8encode(string) {\n\t\tvar codePoints = ucs2decode(string);\n\t\tvar length = codePoints.length;\n\t\tvar index = -1;\n\t\tvar codePoint;\n\t\tvar byteString = '';\n\t\twhile (++index < length) {\n\t\t\tcodePoint = codePoints[index];\n\t\t\tbyteString += encodeCodePoint(codePoint);\n\t\t}\n\t\treturn byteString;\n\t}\n\n\t/*--------------------------------------------------------------------------*/\n\n\tfunction readContinuationByte() {\n\t\tif (byteIndex >= byteCount) {\n\t\t\tthrow Error('Invalid byte index');\n\t\t}\n\n\t\tvar continuationByte = byteArray[byteIndex] & 0xFF;\n\t\tbyteIndex++;\n\n\t\tif ((continuationByte & 0xC0) == 0x80) {\n\t\t\treturn continuationByte & 0x3F;\n\t\t}\n\n\t\t// If we end up here, it’s not a continuation byte\n\t\tthrow Error('Invalid continuation byte');\n\t}\n\n\tfunction decodeSymbol() {\n\t\tvar byte1;\n\t\tvar byte2;\n\t\tvar byte3;\n\t\tvar byte4;\n\t\tvar codePoint;\n\n\t\tif (byteIndex > byteCount) {\n\t\t\tthrow Error('Invalid byte index');\n\t\t}\n\n\t\tif (byteIndex == byteCount) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Read first byte\n\t\tbyte1 = byteArray[byteIndex] & 0xFF;\n\t\tbyteIndex++;\n\n\t\t// 1-byte sequence (no continuation bytes)\n\t\tif ((byte1 & 0x80) == 0) {\n\t\t\treturn byte1;\n\t\t}\n\n\t\t// 2-byte sequence\n\t\tif ((byte1 & 0xE0) == 0xC0) {\n\t\t\tbyte2 = readContinuationByte();\n\t\t\tcodePoint = ((byte1 & 0x1F) << 6) | byte2;\n\t\t\tif (codePoint >= 0x80) {\n\t\t\t\treturn codePoint;\n\t\t\t} else {\n\t\t\t\tthrow Error('Invalid continuation byte');\n\t\t\t}\n\t\t}\n\n\t\t// 3-byte sequence (may include unpaired surrogates)\n\t\tif ((byte1 & 0xF0) == 0xE0) {\n\t\t\tbyte2 = readContinuationByte();\n\t\t\tbyte3 = readContinuationByte();\n\t\t\tcodePoint = ((byte1 & 0x0F) << 12) | (byte2 << 6) | byte3;\n\t\t\tif (codePoint >= 0x0800) {\n\t\t\t\tcheckScalarValue(codePoint);\n\t\t\t\treturn codePoint;\n\t\t\t} else {\n\t\t\t\tthrow Error('Invalid continuation byte');\n\t\t\t}\n\t\t}\n\n\t\t// 4-byte sequence\n\t\tif ((byte1 & 0xF8) == 0xF0) {\n\t\t\tbyte2 = readContinuationByte();\n\t\t\tbyte3 = readContinuationByte();\n\t\t\tbyte4 = readContinuationByte();\n\t\t\tcodePoint = ((byte1 & 0x07) << 0x12) | (byte2 << 0x0C) |\n\t\t\t\t(byte3 << 0x06) | byte4;\n\t\t\tif (codePoint >= 0x010000 && codePoint <= 0x10FFFF) {\n\t\t\t\treturn codePoint;\n\t\t\t}\n\t\t}\n\n\t\tthrow Error('Invalid UTF-8 detected');\n\t}\n\n\tvar byteArray;\n\tvar byteCount;\n\tvar byteIndex;\n\tfunction utf8decode(byteString) {\n\t\tbyteArray = ucs2decode(byteString);\n\t\tbyteCount = byteArray.length;\n\t\tbyteIndex = 0;\n\t\tvar codePoints = [];\n\t\tvar tmp;\n\t\twhile ((tmp = decodeSymbol()) !== false) {\n\t\t\tcodePoints.push(tmp);\n\t\t}\n\t\treturn ucs2encode(codePoints);\n\t}\n\n\t/*--------------------------------------------------------------------------*/\n\n\troot.version = '3.0.0';\n\troot.encode = utf8encode;\n\troot.decode = utf8decode;\n\n}(typeof exports === 'undefined' ? this.utf8 = {} : exports));\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors ||\n function getOwnPropertyDescriptors(obj) {\n var keys = Object.keys(obj);\n var descriptors = {};\n for (var i = 0; i < keys.length; i++) {\n descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]);\n }\n return descriptors;\n };\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n if (typeof process !== 'undefined' && process.noDeprecation === true) {\n return fn;\n }\n\n // Allow for deprecating things in the process of starting up.\n if (typeof process === 'undefined') {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnviron;\nexports.debuglog = function(set) {\n if (isUndefined(debugEnviron))\n debugEnviron = process.env.NODE_DEBUG || '';\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (new RegExp('\\\\b' + set + '\\\\b', 'i').test(debugEnviron)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').substr(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.substr(1, name.length - 2);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('./support/isBuffer');\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = require('inherits');\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nvar kCustomPromisifiedSymbol = typeof Symbol !== 'undefined' ? Symbol('util.promisify.custom') : undefined;\n\nexports.promisify = function promisify(original) {\n if (typeof original !== 'function')\n throw new TypeError('The \"original\" argument must be of type Function');\n\n if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) {\n var fn = original[kCustomPromisifiedSymbol];\n if (typeof fn !== 'function') {\n throw new TypeError('The \"util.promisify.custom\" argument must be of type Function');\n }\n Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return fn;\n }\n\n function fn() {\n var promiseResolve, promiseReject;\n var promise = new Promise(function (resolve, reject) {\n promiseResolve = resolve;\n promiseReject = reject;\n });\n\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n args.push(function (err, value) {\n if (err) {\n promiseReject(err);\n } else {\n promiseResolve(value);\n }\n });\n\n try {\n original.apply(this, args);\n } catch (err) {\n promiseReject(err);\n }\n\n return promise;\n }\n\n Object.setPrototypeOf(fn, Object.getPrototypeOf(original));\n\n if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return Object.defineProperties(\n fn,\n getOwnPropertyDescriptors(original)\n );\n}\n\nexports.promisify.custom = kCustomPromisifiedSymbol\n\nfunction callbackifyOnRejected(reason, cb) {\n // `!reason` guard inspired by bluebird (Ref: https://goo.gl/t5IS6M).\n // Because `null` is a special error value in callbacks which means \"no error\n // occurred\", we error-wrap so the callback consumer can distinguish between\n // \"the promise rejected with null\" or \"the promise fulfilled with undefined\".\n if (!reason) {\n var newReason = new Error('Promise was rejected with a falsy value');\n newReason.reason = reason;\n reason = newReason;\n }\n return cb(reason);\n}\n\nfunction callbackify(original) {\n if (typeof original !== 'function') {\n throw new TypeError('The \"original\" argument must be of type Function');\n }\n\n // We DO NOT return the promise as it gives the user a false sense that\n // the promise is actually somehow related to the callback's execution\n // and that the callback throwing will reject the promise.\n function callbackified() {\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n\n var maybeCb = args.pop();\n if (typeof maybeCb !== 'function') {\n throw new TypeError('The last argument must be of type Function');\n }\n var self = this;\n var cb = function() {\n return maybeCb.apply(self, arguments);\n };\n // In true node style we process the callback on `nextTick` with all the\n // implications (stack, `uncaughtException`, `async_hooks`)\n original.apply(this, args)\n .then(function(ret) { process.nextTick(cb, null, ret) },\n function(rej) { process.nextTick(callbackifyOnRejected, rej, cb) });\n }\n\n Object.setPrototypeOf(callbackified, Object.getPrototypeOf(original));\n Object.defineProperties(callbackified,\n getOwnPropertyDescriptors(original));\n return callbackified;\n}\nexports.callbackify = callbackify;\n","module.exports = function isBuffer(arg) {\n return arg && typeof arg === 'object'\n && typeof arg.copy === 'function'\n && typeof arg.fill === 'function'\n && typeof arg.readUInt8 === 'function';\n}","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n}\n","const errors = {\n IMPOSSIBLE_CASE: 'Impossible case. Please create issue.',\n TWEAK_ADD:\n 'The tweak was out of range or the resulted private key is invalid',\n TWEAK_MUL: 'The tweak was out of range or equal to zero',\n CONTEXT_RANDOMIZE_UNKNOW: 'Unknow error on context randomization',\n SECKEY_INVALID: 'Private Key is invalid',\n PUBKEY_PARSE: 'Public Key could not be parsed',\n PUBKEY_SERIALIZE: 'Public Key serialization error',\n PUBKEY_COMBINE: 'The sum of the public keys is not valid',\n SIG_PARSE: 'Signature could not be parsed',\n SIGN: 'The nonce generation function failed, or the private key was invalid',\n RECOVER: 'Public key could not be recover',\n ECDH: 'Scalar was invalid (zero or overflow)'\n}\n\nfunction assert (cond, msg) {\n if (!cond) throw new Error(msg)\n}\n\nfunction isUint8Array (name, value, length) {\n assert(value instanceof Uint8Array, `Expected ${name} to be an Uint8Array`)\n\n if (length !== undefined) {\n if (Array.isArray(length)) {\n const numbers = length.join(', ')\n const msg = `Expected ${name} to be an Uint8Array with length [${numbers}]`\n assert(length.includes(value.length), msg)\n } else {\n const msg = `Expected ${name} to be an Uint8Array with length ${length}`\n assert(value.length === length, msg)\n }\n }\n}\n\nfunction isCompressed (value) {\n assert(toTypeString(value) === 'Boolean', 'Expected compressed to be a Boolean')\n}\n\nfunction getAssertedOutput (output = (len) => new Uint8Array(len), length) {\n if (typeof output === 'function') output = output(length)\n isUint8Array('output', output, length)\n return output\n}\n\nfunction toTypeString (value) {\n return Object.prototype.toString.call(value).slice(8, -1)\n}\n\nmodule.exports = (secp256k1) => {\n return {\n contextRandomize (seed) {\n assert(\n seed === null || seed instanceof Uint8Array,\n 'Expected seed to be an Uint8Array or null'\n )\n if (seed !== null) isUint8Array('seed', seed, 32)\n\n switch (secp256k1.contextRandomize(seed)) {\n case 1:\n throw new Error(errors.CONTEXT_RANDOMIZE_UNKNOW)\n }\n },\n\n privateKeyVerify (seckey) {\n isUint8Array('private key', seckey, 32)\n\n return secp256k1.privateKeyVerify(seckey) === 0\n },\n\n privateKeyNegate (seckey) {\n isUint8Array('private key', seckey, 32)\n\n switch (secp256k1.privateKeyNegate(seckey)) {\n case 0:\n return seckey\n case 1:\n throw new Error(errors.IMPOSSIBLE_CASE)\n }\n },\n\n privateKeyTweakAdd (seckey, tweak) {\n isUint8Array('private key', seckey, 32)\n isUint8Array('tweak', tweak, 32)\n\n switch (secp256k1.privateKeyTweakAdd(seckey, tweak)) {\n case 0:\n return seckey\n case 1:\n throw new Error(errors.TWEAK_ADD)\n }\n },\n\n privateKeyTweakMul (seckey, tweak) {\n isUint8Array('private key', seckey, 32)\n isUint8Array('tweak', tweak, 32)\n\n switch (secp256k1.privateKeyTweakMul(seckey, tweak)) {\n case 0:\n return seckey\n case 1:\n throw new Error(errors.TWEAK_MUL)\n }\n },\n\n publicKeyVerify (pubkey) {\n isUint8Array('public key', pubkey, [33, 65])\n\n return secp256k1.publicKeyVerify(pubkey) === 0\n },\n\n publicKeyCreate (seckey, compressed = true, output) {\n isUint8Array('private key', seckey, 32)\n isCompressed(compressed)\n output = getAssertedOutput(output, compressed ? 33 : 65)\n\n switch (secp256k1.publicKeyCreate(output, seckey)) {\n case 0:\n return output\n case 1:\n throw new Error(errors.SECKEY_INVALID)\n case 2:\n throw new Error(errors.PUBKEY_SERIALIZE)\n }\n },\n\n publicKeyConvert (pubkey, compressed = true, output) {\n isUint8Array('public key', pubkey, [33, 65])\n isCompressed(compressed)\n output = getAssertedOutput(output, compressed ? 33 : 65)\n\n switch (secp256k1.publicKeyConvert(output, pubkey)) {\n case 0:\n return output\n case 1:\n throw new Error(errors.PUBKEY_PARSE)\n case 2:\n throw new Error(errors.PUBKEY_SERIALIZE)\n }\n },\n\n publicKeyNegate (pubkey, compressed = true, output) {\n isUint8Array('public key', pubkey, [33, 65])\n isCompressed(compressed)\n output = getAssertedOutput(output, compressed ? 33 : 65)\n\n switch (secp256k1.publicKeyNegate(output, pubkey)) {\n case 0:\n return output\n case 1:\n throw new Error(errors.PUBKEY_PARSE)\n case 2:\n throw new Error(errors.IMPOSSIBLE_CASE)\n case 3:\n throw new Error(errors.PUBKEY_SERIALIZE)\n }\n },\n\n publicKeyCombine (pubkeys, compressed = true, output) {\n assert(Array.isArray(pubkeys), 'Expected public keys to be an Array')\n assert(pubkeys.length > 0, 'Expected public keys array will have more than zero items')\n for (const pubkey of pubkeys) {\n isUint8Array('public key', pubkey, [33, 65])\n }\n isCompressed(compressed)\n output = getAssertedOutput(output, compressed ? 33 : 65)\n\n switch (secp256k1.publicKeyCombine(output, pubkeys)) {\n case 0:\n return output\n case 1:\n throw new Error(errors.PUBKEY_PARSE)\n case 2:\n throw new Error(errors.PUBKEY_COMBINE)\n case 3:\n throw new Error(errors.PUBKEY_SERIALIZE)\n }\n },\n\n publicKeyTweakAdd (pubkey, tweak, compressed = true, output) {\n isUint8Array('public key', pubkey, [33, 65])\n isUint8Array('tweak', tweak, 32)\n isCompressed(compressed)\n output = getAssertedOutput(output, compressed ? 33 : 65)\n\n switch (secp256k1.publicKeyTweakAdd(output, pubkey, tweak)) {\n case 0:\n return output\n case 1:\n throw new Error(errors.PUBKEY_PARSE)\n case 2:\n throw new Error(errors.TWEAK_ADD)\n }\n },\n\n publicKeyTweakMul (pubkey, tweak, compressed = true, output) {\n isUint8Array('public key', pubkey, [33, 65])\n isUint8Array('tweak', tweak, 32)\n isCompressed(compressed)\n output = getAssertedOutput(output, compressed ? 33 : 65)\n\n switch (secp256k1.publicKeyTweakMul(output, pubkey, tweak)) {\n case 0:\n return output\n case 1:\n throw new Error(errors.PUBKEY_PARSE)\n case 2:\n throw new Error(errors.TWEAK_MUL)\n }\n },\n\n signatureNormalize (sig) {\n isUint8Array('signature', sig, 64)\n\n switch (secp256k1.signatureNormalize(sig)) {\n case 0:\n return sig\n case 1:\n throw new Error(errors.SIG_PARSE)\n }\n },\n\n signatureExport (sig, output) {\n isUint8Array('signature', sig, 64)\n output = getAssertedOutput(output, 72)\n\n const obj = { output, outputlen: 72 }\n switch (secp256k1.signatureExport(obj, sig)) {\n case 0:\n return output.slice(0, obj.outputlen)\n case 1:\n throw new Error(errors.SIG_PARSE)\n case 2:\n throw new Error(errors.IMPOSSIBLE_CASE)\n }\n },\n\n signatureImport (sig, output) {\n isUint8Array('signature', sig)\n output = getAssertedOutput(output, 64)\n\n switch (secp256k1.signatureImport(output, sig)) {\n case 0:\n return output\n case 1:\n throw new Error(errors.SIG_PARSE)\n case 2:\n throw new Error(errors.IMPOSSIBLE_CASE)\n }\n },\n\n ecdsaSign (msg32, seckey, options = {}, output) {\n isUint8Array('message', msg32, 32)\n isUint8Array('private key', seckey, 32)\n assert(toTypeString(options) === 'Object', 'Expected options to be an Object')\n if (options.data !== undefined) isUint8Array('options.data', options.data)\n if (options.noncefn !== undefined) assert(toTypeString(options.noncefn) === 'Function', 'Expected options.noncefn to be a Function')\n output = getAssertedOutput(output, 64)\n\n const obj = { signature: output, recid: null }\n switch (secp256k1.ecdsaSign(obj, msg32, seckey, options.data, options.noncefn)) {\n case 0:\n return obj\n case 1:\n throw new Error(errors.SIGN)\n case 2:\n throw new Error(errors.IMPOSSIBLE_CASE)\n }\n },\n\n ecdsaVerify (sig, msg32, pubkey) {\n isUint8Array('signature', sig, 64)\n isUint8Array('message', msg32, 32)\n isUint8Array('public key', pubkey, [33, 65])\n\n switch (secp256k1.ecdsaVerify(sig, msg32, pubkey)) {\n case 0:\n return true\n case 3:\n return false\n case 1:\n throw new Error(errors.SIG_PARSE)\n case 2:\n throw new Error(errors.PUBKEY_PARSE)\n }\n },\n\n ecdsaRecover (sig, recid, msg32, compressed = true, output) {\n isUint8Array('signature', sig, 64)\n assert(\n toTypeString(recid) === 'Number' &&\n recid >= 0 &&\n recid <= 3,\n 'Expected recovery id to be a Number within interval [0, 3]'\n )\n isUint8Array('message', msg32, 32)\n isCompressed(compressed)\n output = getAssertedOutput(output, compressed ? 33 : 65)\n\n switch (secp256k1.ecdsaRecover(output, sig, recid, msg32)) {\n case 0:\n return output\n case 1:\n throw new Error(errors.SIG_PARSE)\n case 2:\n throw new Error(errors.RECOVER)\n case 3:\n throw new Error(errors.IMPOSSIBLE_CASE)\n }\n },\n\n ecdh (pubkey, seckey, options = {}, output) {\n isUint8Array('public key', pubkey, [33, 65])\n isUint8Array('private key', seckey, 32)\n assert(toTypeString(options) === 'Object', 'Expected options to be an Object')\n if (options.data !== undefined) isUint8Array('options.data', options.data)\n if (options.hashfn !== undefined) {\n assert(toTypeString(options.hashfn) === 'Function', 'Expected options.hashfn to be a Function')\n if (options.xbuf !== undefined) isUint8Array('options.xbuf', options.xbuf, 32)\n if (options.ybuf !== undefined) isUint8Array('options.ybuf', options.ybuf, 32)\n isUint8Array('output', output)\n } else {\n output = getAssertedOutput(output, 32)\n }\n\n switch (secp256k1.ecdh(output, pubkey, seckey, options.data, options.hashfn, options.xbuf, options.ybuf)) {\n case 0:\n return output\n case 1:\n throw new Error(errors.PUBKEY_PARSE)\n case 2:\n throw new Error(errors.ECDH)\n }\n }\n }\n}\n","const EC = require('elliptic').ec\n\nconst ec = new EC('secp256k1')\nconst ecparams = ec.curve\n\n// Hack, we can not use bn.js@5, while elliptic uses bn.js@4\n// See https://github.com/indutny/elliptic/issues/191#issuecomment-569888758\nconst BN = ecparams.n.constructor\n\nfunction loadCompressedPublicKey (first, xbuf) {\n let x = new BN(xbuf)\n\n // overflow\n if (x.cmp(ecparams.p) >= 0) return null\n x = x.toRed(ecparams.red)\n\n // compute corresponding Y\n let y = x.redSqr().redIMul(x).redIAdd(ecparams.b).redSqrt()\n if ((first === 0x03) !== y.isOdd()) y = y.redNeg()\n\n return ec.keyPair({ pub: { x: x, y: y } })\n}\n\nfunction loadUncompressedPublicKey (first, xbuf, ybuf) {\n let x = new BN(xbuf)\n let y = new BN(ybuf)\n\n // overflow\n if (x.cmp(ecparams.p) >= 0 || y.cmp(ecparams.p) >= 0) return null\n\n x = x.toRed(ecparams.red)\n y = y.toRed(ecparams.red)\n\n // is odd flag\n if ((first === 0x06 || first === 0x07) && y.isOdd() !== (first === 0x07)) return null\n\n // x*x*x + b = y*y\n const x3 = x.redSqr().redIMul(x)\n if (!y.redSqr().redISub(x3.redIAdd(ecparams.b)).isZero()) return null\n\n return ec.keyPair({ pub: { x: x, y: y } })\n}\n\nfunction loadPublicKey (pubkey) {\n // length should be validated in interface\n const first = pubkey[0]\n switch (first) {\n case 0x02:\n case 0x03:\n if (pubkey.length !== 33) return null\n return loadCompressedPublicKey(first, pubkey.subarray(1, 33))\n case 0x04:\n case 0x06:\n case 0x07:\n if (pubkey.length !== 65) return null\n return loadUncompressedPublicKey(first, pubkey.subarray(1, 33), pubkey.subarray(33, 65))\n default:\n return null\n }\n}\n\nfunction savePublicKey (output, point) {\n const pubkey = point.encode(null, output.length === 33)\n // Loop should be faster because we do not need create extra Uint8Array\n // output.set(new Uint8Array(pubkey))\n for (let i = 0; i < output.length; ++i) output[i] = pubkey[i]\n}\n\nmodule.exports = {\n contextRandomize () {\n return 0\n },\n\n privateKeyVerify (seckey) {\n const bn = new BN(seckey)\n return bn.cmp(ecparams.n) < 0 && !bn.isZero() ? 0 : 1\n },\n\n privateKeyNegate (seckey) {\n const bn = new BN(seckey)\n const negate = ecparams.n.sub(bn).umod(ecparams.n).toArrayLike(Uint8Array, 'be', 32)\n seckey.set(negate)\n return 0\n },\n\n privateKeyTweakAdd (seckey, tweak) {\n const bn = new BN(tweak)\n if (bn.cmp(ecparams.n) >= 0) return 1\n\n bn.iadd(new BN(seckey))\n if (bn.cmp(ecparams.n) >= 0) bn.isub(ecparams.n)\n if (bn.isZero()) return 1\n\n const tweaked = bn.toArrayLike(Uint8Array, 'be', 32)\n seckey.set(tweaked)\n\n return 0\n },\n\n privateKeyTweakMul (seckey, tweak) {\n let bn = new BN(tweak)\n if (bn.cmp(ecparams.n) >= 0 || bn.isZero()) return 1\n\n bn.imul(new BN(seckey))\n if (bn.cmp(ecparams.n) >= 0) bn = bn.umod(ecparams.n)\n\n const tweaked = bn.toArrayLike(Uint8Array, 'be', 32)\n seckey.set(tweaked)\n\n return 0\n },\n\n publicKeyVerify (pubkey) {\n const pair = loadPublicKey(pubkey)\n return pair === null ? 1 : 0\n },\n\n publicKeyCreate (output, seckey) {\n const bn = new BN(seckey)\n if (bn.cmp(ecparams.n) >= 0 || bn.isZero()) return 1\n\n const point = ec.keyFromPrivate(seckey).getPublic()\n savePublicKey(output, point)\n\n return 0\n },\n\n publicKeyConvert (output, pubkey) {\n const pair = loadPublicKey(pubkey)\n if (pair === null) return 1\n\n const point = pair.getPublic()\n savePublicKey(output, point)\n\n return 0\n },\n\n publicKeyNegate (output, pubkey) {\n const pair = loadPublicKey(pubkey)\n if (pair === null) return 1\n\n const point = pair.getPublic()\n point.y = point.y.redNeg()\n savePublicKey(output, point)\n\n return 0\n },\n\n publicKeyCombine (output, pubkeys) {\n const pairs = new Array(pubkeys.length)\n for (let i = 0; i < pubkeys.length; ++i) {\n pairs[i] = loadPublicKey(pubkeys[i])\n if (pairs[i] === null) return 1\n }\n\n let point = pairs[0].getPublic()\n for (let i = 1; i < pairs.length; ++i) point = point.add(pairs[i].pub)\n if (point.isInfinity()) return 2\n\n savePublicKey(output, point)\n\n return 0\n },\n\n publicKeyTweakAdd (output, pubkey, tweak) {\n const pair = loadPublicKey(pubkey)\n if (pair === null) return 1\n\n tweak = new BN(tweak)\n if (tweak.cmp(ecparams.n) >= 0) return 2\n\n const point = pair.getPublic().add(ecparams.g.mul(tweak))\n if (point.isInfinity()) return 2\n\n savePublicKey(output, point)\n\n return 0\n },\n\n publicKeyTweakMul (output, pubkey, tweak) {\n const pair = loadPublicKey(pubkey)\n if (pair === null) return 1\n\n tweak = new BN(tweak)\n if (tweak.cmp(ecparams.n) >= 0 || tweak.isZero()) return 2\n\n const point = pair.getPublic().mul(tweak)\n savePublicKey(output, point)\n\n return 0\n },\n\n signatureNormalize (sig) {\n const r = new BN(sig.subarray(0, 32))\n const s = new BN(sig.subarray(32, 64))\n if (r.cmp(ecparams.n) >= 0 || s.cmp(ecparams.n) >= 0) return 1\n\n if (s.cmp(ec.nh) === 1) {\n sig.set(ecparams.n.sub(s).toArrayLike(Uint8Array, 'be', 32), 32)\n }\n\n return 0\n },\n\n // Copied 1-to-1 from https://github.com/bitcoinjs/bip66/blob/master/index.js\n // Adapted for Uint8Array instead Buffer\n signatureExport (obj, sig) {\n const sigR = sig.subarray(0, 32)\n const sigS = sig.subarray(32, 64)\n if (new BN(sigR).cmp(ecparams.n) >= 0) return 1\n if (new BN(sigS).cmp(ecparams.n) >= 0) return 1\n\n const { output } = obj\n\n // Prepare R\n let r = output.subarray(4, 4 + 33)\n r[0] = 0x00\n r.set(sigR, 1)\n\n let lenR = 33\n let posR = 0\n for (; lenR > 1 && r[posR] === 0x00 && !(r[posR + 1] & 0x80); --lenR, ++posR);\n\n r = r.subarray(posR)\n if (r[0] & 0x80) return 1\n if (lenR > 1 && (r[0] === 0x00) && !(r[1] & 0x80)) return 1\n\n // Prepare S\n let s = output.subarray(6 + 33, 6 + 33 + 33)\n s[0] = 0x00\n s.set(sigS, 1)\n\n let lenS = 33\n let posS = 0\n for (; lenS > 1 && s[posS] === 0x00 && !(s[posS + 1] & 0x80); --lenS, ++posS);\n\n s = s.subarray(posS)\n if (s[0] & 0x80) return 1\n if (lenS > 1 && (s[0] === 0x00) && !(s[1] & 0x80)) return 1\n\n // Set output length for return\n obj.outputlen = 6 + lenR + lenS\n\n // Output in specified format\n // 0x30 [total-length] 0x02 [R-length] [R] 0x02 [S-length] [S]\n output[0] = 0x30\n output[1] = obj.outputlen - 2\n output[2] = 0x02\n output[3] = r.length\n output.set(r, 4)\n output[4 + lenR] = 0x02\n output[5 + lenR] = s.length\n output.set(s, 6 + lenR)\n\n return 0\n },\n\n // Copied 1-to-1 from https://github.com/bitcoinjs/bip66/blob/master/index.js\n // Adapted for Uint8Array instead Buffer\n signatureImport (output, sig) {\n if (sig.length < 8) return 1\n if (sig.length > 72) return 1\n if (sig[0] !== 0x30) return 1\n if (sig[1] !== sig.length - 2) return 1\n if (sig[2] !== 0x02) return 1\n\n const lenR = sig[3]\n if (lenR === 0) return 1\n if (5 + lenR >= sig.length) return 1\n if (sig[4 + lenR] !== 0x02) return 1\n\n const lenS = sig[5 + lenR]\n if (lenS === 0) return 1\n if ((6 + lenR + lenS) !== sig.length) return 1\n\n if (sig[4] & 0x80) return 1\n if (lenR > 1 && (sig[4] === 0x00) && !(sig[5] & 0x80)) return 1\n\n if (sig[lenR + 6] & 0x80) return 1\n if (lenS > 1 && (sig[lenR + 6] === 0x00) && !(sig[lenR + 7] & 0x80)) return 1\n\n let sigR = sig.subarray(4, 4 + lenR)\n if (sigR.length === 33 && sigR[0] === 0x00) sigR = sigR.subarray(1)\n if (sigR.length > 32) return 1\n\n let sigS = sig.subarray(6 + lenR)\n if (sigS.length === 33 && sigS[0] === 0x00) sigS = sigS.slice(1)\n if (sigS.length > 32) throw new Error('S length is too long')\n\n let r = new BN(sigR)\n if (r.cmp(ecparams.n) >= 0) r = new BN(0)\n\n let s = new BN(sig.subarray(6 + lenR))\n if (s.cmp(ecparams.n) >= 0) s = new BN(0)\n\n output.set(r.toArrayLike(Uint8Array, 'be', 32), 0)\n output.set(s.toArrayLike(Uint8Array, 'be', 32), 32)\n\n return 0\n },\n\n ecdsaSign (obj, message, seckey, data, noncefn) {\n if (noncefn) {\n const _noncefn = noncefn\n noncefn = (counter) => {\n const nonce = _noncefn(message, seckey, null, data, counter)\n\n const isValid = nonce instanceof Uint8Array && nonce.length === 32\n if (!isValid) throw new Error('This is the way')\n\n return new BN(nonce)\n }\n }\n\n const d = new BN(seckey)\n if (d.cmp(ecparams.n) >= 0 || d.isZero()) return 1\n\n let sig\n try {\n sig = ec.sign(message, seckey, { canonical: true, k: noncefn, pers: data })\n } catch (err) {\n return 1\n }\n\n obj.signature.set(sig.r.toArrayLike(Uint8Array, 'be', 32), 0)\n obj.signature.set(sig.s.toArrayLike(Uint8Array, 'be', 32), 32)\n obj.recid = sig.recoveryParam\n\n return 0\n },\n\n ecdsaVerify (sig, msg32, pubkey) {\n const sigObj = { r: sig.subarray(0, 32), s: sig.subarray(32, 64) }\n\n const sigr = new BN(sigObj.r)\n const sigs = new BN(sigObj.s)\n if (sigr.cmp(ecparams.n) >= 0 || sigs.cmp(ecparams.n) >= 0) return 1\n if (sigs.cmp(ec.nh) === 1 || sigr.isZero() || sigs.isZero()) return 3\n\n const pair = loadPublicKey(pubkey)\n if (pair === null) return 2\n\n const point = pair.getPublic()\n const isValid = ec.verify(msg32, sigObj, point)\n return isValid ? 0 : 3\n },\n\n ecdsaRecover (output, sig, recid, msg32) {\n const sigObj = { r: sig.slice(0, 32), s: sig.slice(32, 64) }\n\n const sigr = new BN(sigObj.r)\n const sigs = new BN(sigObj.s)\n if (sigr.cmp(ecparams.n) >= 0 || sigs.cmp(ecparams.n) >= 0) return 1\n\n if (sigr.isZero() || sigs.isZero()) return 2\n\n // Can throw `throw new Error('Unable to find sencond key candinate');`\n let point\n try {\n point = ec.recoverPubKey(msg32, sigObj, recid)\n } catch (err) {\n return 2\n }\n\n savePublicKey(output, point)\n\n return 0\n },\n\n ecdh (output, pubkey, seckey, data, hashfn, xbuf, ybuf) {\n const pair = loadPublicKey(pubkey)\n if (pair === null) return 1\n\n const scalar = new BN(seckey)\n if (scalar.cmp(ecparams.n) >= 0 || scalar.isZero()) return 2\n\n const point = pair.getPublic().mul(scalar)\n\n if (hashfn === undefined) {\n const data = point.encode(null, true)\n const sha256 = ec.hash().update(data).digest()\n for (let i = 0; i < 32; ++i) output[i] = sha256[i]\n } else {\n if (!xbuf) xbuf = new Uint8Array(32)\n const x = point.getX().toArray('be', 32)\n for (let i = 0; i < 32; ++i) xbuf[i] = x[i]\n\n if (!ybuf) ybuf = new Uint8Array(32)\n const y = point.getY().toArray('be', 32)\n for (let i = 0; i < 32; ++i) ybuf[i] = y[i]\n\n const hash = hashfn(xbuf, ybuf, data)\n\n const isValid = hash instanceof Uint8Array && hash.length === output.length\n if (!isValid) return 2\n\n output.set(hash)\n }\n\n return 0\n }\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar randombytes = require(\"randombytes\");\nfunction getRandomBytes(bytes) {\n return new Promise(function (resolve, reject) {\n randombytes(bytes, function (err, resp) {\n if (err) {\n reject(err);\n return;\n }\n resolve(resp);\n });\n });\n}\nexports.getRandomBytes = getRandomBytes;\nfunction getRandomBytesSync(bytes) {\n return randombytes(bytes);\n}\nexports.getRandomBytesSync = getRandomBytesSync;\n//# sourceMappingURL=random.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar hash_utils_1 = require(\"./hash-utils\");\nvar createKeccakHash = require(\"keccak\");\nexports.keccak224 = hash_utils_1.createHashFunction(function () {\n return createKeccakHash(\"keccak224\");\n});\nexports.keccak256 = hash_utils_1.createHashFunction(function () {\n return createKeccakHash(\"keccak256\");\n});\nexports.keccak384 = hash_utils_1.createHashFunction(function () {\n return createKeccakHash(\"keccak384\");\n});\nexports.keccak512 = hash_utils_1.createHashFunction(function () {\n return createKeccakHash(\"keccak512\");\n});\n//# sourceMappingURL=keccak.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction createHashFunction(hashConstructor) {\n return function (msg) {\n var hash = hashConstructor();\n hash.update(msg);\n return Buffer.from(hash.digest());\n };\n}\nexports.createHashFunction = createHashFunction;\n//# sourceMappingURL=hash-utils.js.map","module.exports = require('./lib/api')(require('./lib/keccak'))\n","const createKeccak = require('./keccak')\nconst createShake = require('./shake')\n\nmodule.exports = function (KeccakState) {\n const Keccak = createKeccak(KeccakState)\n const Shake = createShake(KeccakState)\n\n return function (algorithm, options) {\n const hash = typeof algorithm === 'string' ? algorithm.toLowerCase() : algorithm\n switch (hash) {\n case 'keccak224': return new Keccak(1152, 448, null, 224, options)\n case 'keccak256': return new Keccak(1088, 512, null, 256, options)\n case 'keccak384': return new Keccak(832, 768, null, 384, options)\n case 'keccak512': return new Keccak(576, 1024, null, 512, options)\n\n case 'sha3-224': return new Keccak(1152, 448, 0x06, 224, options)\n case 'sha3-256': return new Keccak(1088, 512, 0x06, 256, options)\n case 'sha3-384': return new Keccak(832, 768, 0x06, 384, options)\n case 'sha3-512': return new Keccak(576, 1024, 0x06, 512, options)\n\n case 'shake128': return new Shake(1344, 256, 0x1f, options)\n case 'shake256': return new Shake(1088, 512, 0x1f, options)\n\n default: throw new Error('Invald algorithm: ' + algorithm)\n }\n }\n}\n","const { Transform } = require('readable-stream')\n\nmodule.exports = (KeccakState) => class Keccak extends Transform {\n constructor (rate, capacity, delimitedSuffix, hashBitLength, options) {\n super(options)\n\n this._rate = rate\n this._capacity = capacity\n this._delimitedSuffix = delimitedSuffix\n this._hashBitLength = hashBitLength\n this._options = options\n\n this._state = new KeccakState()\n this._state.initialize(rate, capacity)\n this._finalized = false\n }\n\n _transform (chunk, encoding, callback) {\n let error = null\n try {\n this.update(chunk, encoding)\n } catch (err) {\n error = err\n }\n\n callback(error)\n }\n\n _flush (callback) {\n let error = null\n try {\n this.push(this.digest())\n } catch (err) {\n error = err\n }\n\n callback(error)\n }\n\n update (data, encoding) {\n if (!Buffer.isBuffer(data) && typeof data !== 'string') throw new TypeError('Data must be a string or a buffer')\n if (this._finalized) throw new Error('Digest already called')\n if (!Buffer.isBuffer(data)) data = Buffer.from(data, encoding)\n\n this._state.absorb(data)\n\n return this\n }\n\n digest (encoding) {\n if (this._finalized) throw new Error('Digest already called')\n this._finalized = true\n\n if (this._delimitedSuffix) this._state.absorbLastFewBits(this._delimitedSuffix)\n let digest = this._state.squeeze(this._hashBitLength / 8)\n if (encoding !== undefined) digest = digest.toString(encoding)\n\n this._resetState()\n\n return digest\n }\n\n // remove result from memory\n _resetState () {\n this._state.initialize(this._rate, this._capacity)\n return this\n }\n\n // because sometimes we need hash right now and little later\n _clone () {\n const clone = new Keccak(this._rate, this._capacity, this._delimitedSuffix, this._hashBitLength, this._options)\n this._state.copy(clone._state)\n clone._finalized = this._finalized\n\n return clone\n }\n}\n","'use strict';\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar _require = require('buffer'),\n Buffer = _require.Buffer;\n\nvar _require2 = require('util'),\n inspect = _require2.inspect;\n\nvar custom = inspect && inspect.custom || 'inspect';\n\nfunction copyBuffer(src, target, offset) {\n Buffer.prototype.copy.call(src, target, offset);\n}\n\nmodule.exports =\n/*#__PURE__*/\nfunction () {\n function BufferList() {\n _classCallCheck(this, BufferList);\n\n this.head = null;\n this.tail = null;\n this.length = 0;\n }\n\n _createClass(BufferList, [{\n key: \"push\",\n value: function push(v) {\n var entry = {\n data: v,\n next: null\n };\n if (this.length > 0) this.tail.next = entry;else this.head = entry;\n this.tail = entry;\n ++this.length;\n }\n }, {\n key: \"unshift\",\n value: function unshift(v) {\n var entry = {\n data: v,\n next: this.head\n };\n if (this.length === 0) this.tail = entry;\n this.head = entry;\n ++this.length;\n }\n }, {\n key: \"shift\",\n value: function shift() {\n if (this.length === 0) return;\n var ret = this.head.data;\n if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next;\n --this.length;\n return ret;\n }\n }, {\n key: \"clear\",\n value: function clear() {\n this.head = this.tail = null;\n this.length = 0;\n }\n }, {\n key: \"join\",\n value: function join(s) {\n if (this.length === 0) return '';\n var p = this.head;\n var ret = '' + p.data;\n\n while (p = p.next) {\n ret += s + p.data;\n }\n\n return ret;\n }\n }, {\n key: \"concat\",\n value: function concat(n) {\n if (this.length === 0) return Buffer.alloc(0);\n var ret = Buffer.allocUnsafe(n >>> 0);\n var p = this.head;\n var i = 0;\n\n while (p) {\n copyBuffer(p.data, ret, i);\n i += p.data.length;\n p = p.next;\n }\n\n return ret;\n } // Consumes a specified amount of bytes or characters from the buffered data.\n\n }, {\n key: \"consume\",\n value: function consume(n, hasStrings) {\n var ret;\n\n if (n < this.head.data.length) {\n // `slice` is the same for buffers and strings.\n ret = this.head.data.slice(0, n);\n this.head.data = this.head.data.slice(n);\n } else if (n === this.head.data.length) {\n // First chunk is a perfect match.\n ret = this.shift();\n } else {\n // Result spans more than one buffer.\n ret = hasStrings ? this._getString(n) : this._getBuffer(n);\n }\n\n return ret;\n }\n }, {\n key: \"first\",\n value: function first() {\n return this.head.data;\n } // Consumes a specified amount of characters from the buffered data.\n\n }, {\n key: \"_getString\",\n value: function _getString(n) {\n var p = this.head;\n var c = 1;\n var ret = p.data;\n n -= ret.length;\n\n while (p = p.next) {\n var str = p.data;\n var nb = n > str.length ? str.length : n;\n if (nb === str.length) ret += str;else ret += str.slice(0, n);\n n -= nb;\n\n if (n === 0) {\n if (nb === str.length) {\n ++c;\n if (p.next) this.head = p.next;else this.head = this.tail = null;\n } else {\n this.head = p;\n p.data = str.slice(nb);\n }\n\n break;\n }\n\n ++c;\n }\n\n this.length -= c;\n return ret;\n } // Consumes a specified amount of bytes from the buffered data.\n\n }, {\n key: \"_getBuffer\",\n value: function _getBuffer(n) {\n var ret = Buffer.allocUnsafe(n);\n var p = this.head;\n var c = 1;\n p.data.copy(ret);\n n -= p.data.length;\n\n while (p = p.next) {\n var buf = p.data;\n var nb = n > buf.length ? buf.length : n;\n buf.copy(ret, ret.length - n, 0, nb);\n n -= nb;\n\n if (n === 0) {\n if (nb === buf.length) {\n ++c;\n if (p.next) this.head = p.next;else this.head = this.tail = null;\n } else {\n this.head = p;\n p.data = buf.slice(nb);\n }\n\n break;\n }\n\n ++c;\n }\n\n this.length -= c;\n return ret;\n } // Make sure the linked list only shows the minimal necessary information.\n\n }, {\n key: custom,\n value: function value(_, options) {\n return inspect(this, _objectSpread({}, options, {\n // Only inspect one level.\n depth: 0,\n // It should not recurse.\n customInspect: false\n }));\n }\n }]);\n\n return BufferList;\n}();","'use strict';\n\nvar _Object$setPrototypeO;\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar finished = require('./end-of-stream');\n\nvar kLastResolve = Symbol('lastResolve');\nvar kLastReject = Symbol('lastReject');\nvar kError = Symbol('error');\nvar kEnded = Symbol('ended');\nvar kLastPromise = Symbol('lastPromise');\nvar kHandlePromise = Symbol('handlePromise');\nvar kStream = Symbol('stream');\n\nfunction createIterResult(value, done) {\n return {\n value: value,\n done: done\n };\n}\n\nfunction readAndResolve(iter) {\n var resolve = iter[kLastResolve];\n\n if (resolve !== null) {\n var data = iter[kStream].read(); // we defer if data is null\n // we can be expecting either 'end' or\n // 'error'\n\n if (data !== null) {\n iter[kLastPromise] = null;\n iter[kLastResolve] = null;\n iter[kLastReject] = null;\n resolve(createIterResult(data, false));\n }\n }\n}\n\nfunction onReadable(iter) {\n // we wait for the next tick, because it might\n // emit an error with process.nextTick\n process.nextTick(readAndResolve, iter);\n}\n\nfunction wrapForNext(lastPromise, iter) {\n return function (resolve, reject) {\n lastPromise.then(function () {\n if (iter[kEnded]) {\n resolve(createIterResult(undefined, true));\n return;\n }\n\n iter[kHandlePromise](resolve, reject);\n }, reject);\n };\n}\n\nvar AsyncIteratorPrototype = Object.getPrototypeOf(function () {});\nvar ReadableStreamAsyncIteratorPrototype = Object.setPrototypeOf((_Object$setPrototypeO = {\n get stream() {\n return this[kStream];\n },\n\n next: function next() {\n var _this = this;\n\n // if we have detected an error in the meanwhile\n // reject straight away\n var error = this[kError];\n\n if (error !== null) {\n return Promise.reject(error);\n }\n\n if (this[kEnded]) {\n return Promise.resolve(createIterResult(undefined, true));\n }\n\n if (this[kStream].destroyed) {\n // We need to defer via nextTick because if .destroy(err) is\n // called, the error will be emitted via nextTick, and\n // we cannot guarantee that there is no error lingering around\n // waiting to be emitted.\n return new Promise(function (resolve, reject) {\n process.nextTick(function () {\n if (_this[kError]) {\n reject(_this[kError]);\n } else {\n resolve(createIterResult(undefined, true));\n }\n });\n });\n } // if we have multiple next() calls\n // we will wait for the previous Promise to finish\n // this logic is optimized to support for await loops,\n // where next() is only called once at a time\n\n\n var lastPromise = this[kLastPromise];\n var promise;\n\n if (lastPromise) {\n promise = new Promise(wrapForNext(lastPromise, this));\n } else {\n // fast path needed to support multiple this.push()\n // without triggering the next() queue\n var data = this[kStream].read();\n\n if (data !== null) {\n return Promise.resolve(createIterResult(data, false));\n }\n\n promise = new Promise(this[kHandlePromise]);\n }\n\n this[kLastPromise] = promise;\n return promise;\n }\n}, _defineProperty(_Object$setPrototypeO, Symbol.asyncIterator, function () {\n return this;\n}), _defineProperty(_Object$setPrototypeO, \"return\", function _return() {\n var _this2 = this;\n\n // destroy(err, cb) is a private API\n // we can guarantee we have that here, because we control the\n // Readable class this is attached to\n return new Promise(function (resolve, reject) {\n _this2[kStream].destroy(null, function (err) {\n if (err) {\n reject(err);\n return;\n }\n\n resolve(createIterResult(undefined, true));\n });\n });\n}), _Object$setPrototypeO), AsyncIteratorPrototype);\n\nvar createReadableStreamAsyncIterator = function createReadableStreamAsyncIterator(stream) {\n var _Object$create;\n\n var iterator = Object.create(ReadableStreamAsyncIteratorPrototype, (_Object$create = {}, _defineProperty(_Object$create, kStream, {\n value: stream,\n writable: true\n }), _defineProperty(_Object$create, kLastResolve, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kLastReject, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kError, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kEnded, {\n value: stream._readableState.endEmitted,\n writable: true\n }), _defineProperty(_Object$create, kHandlePromise, {\n value: function value(resolve, reject) {\n var data = iterator[kStream].read();\n\n if (data) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n resolve(createIterResult(data, false));\n } else {\n iterator[kLastResolve] = resolve;\n iterator[kLastReject] = reject;\n }\n },\n writable: true\n }), _Object$create));\n iterator[kLastPromise] = null;\n finished(stream, function (err) {\n if (err && err.code !== 'ERR_STREAM_PREMATURE_CLOSE') {\n var reject = iterator[kLastReject]; // reject if we are waiting for data in the Promise\n // returned by next() and store the error\n\n if (reject !== null) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n reject(err);\n }\n\n iterator[kError] = err;\n return;\n }\n\n var resolve = iterator[kLastResolve];\n\n if (resolve !== null) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n resolve(createIterResult(undefined, true));\n }\n\n iterator[kEnded] = true;\n });\n stream.on('readable', onReadable.bind(null, iterator));\n return iterator;\n};\n\nmodule.exports = createReadableStreamAsyncIterator;","module.exports = function () {\n throw new Error('Readable.from is not available in the browser')\n};\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// a passthrough stream.\n// basically just the most minimal sort of Transform stream.\n// Every written chunk gets output as-is.\n'use strict';\n\nmodule.exports = PassThrough;\n\nvar Transform = require('./_stream_transform');\n\nrequire('inherits')(PassThrough, Transform);\n\nfunction PassThrough(options) {\n if (!(this instanceof PassThrough)) return new PassThrough(options);\n Transform.call(this, options);\n}\n\nPassThrough.prototype._transform = function (chunk, encoding, cb) {\n cb(null, chunk);\n};","// Ported from https://github.com/mafintosh/pump with\n// permission from the author, Mathias Buus (@mafintosh).\n'use strict';\n\nvar eos;\n\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n callback.apply(void 0, arguments);\n };\n}\n\nvar _require$codes = require('../../../errors').codes,\n ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED;\n\nfunction noop(err) {\n // Rethrow the error if it exists to avoid swallowing it\n if (err) throw err;\n}\n\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\n\nfunction destroyer(stream, reading, writing, callback) {\n callback = once(callback);\n var closed = false;\n stream.on('close', function () {\n closed = true;\n });\n if (eos === undefined) eos = require('./end-of-stream');\n eos(stream, {\n readable: reading,\n writable: writing\n }, function (err) {\n if (err) return callback(err);\n closed = true;\n callback();\n });\n var destroyed = false;\n return function (err) {\n if (closed) return;\n if (destroyed) return;\n destroyed = true; // request.destroy just do .end - .abort is what we want\n\n if (isRequest(stream)) return stream.abort();\n if (typeof stream.destroy === 'function') return stream.destroy();\n callback(err || new ERR_STREAM_DESTROYED('pipe'));\n };\n}\n\nfunction call(fn) {\n fn();\n}\n\nfunction pipe(from, to) {\n return from.pipe(to);\n}\n\nfunction popCallback(streams) {\n if (!streams.length) return noop;\n if (typeof streams[streams.length - 1] !== 'function') return noop;\n return streams.pop();\n}\n\nfunction pipeline() {\n for (var _len = arguments.length, streams = new Array(_len), _key = 0; _key < _len; _key++) {\n streams[_key] = arguments[_key];\n }\n\n var callback = popCallback(streams);\n if (Array.isArray(streams[0])) streams = streams[0];\n\n if (streams.length < 2) {\n throw new ERR_MISSING_ARGS('streams');\n }\n\n var error;\n var destroys = streams.map(function (stream, i) {\n var reading = i < streams.length - 1;\n var writing = i > 0;\n return destroyer(stream, reading, writing, function (err) {\n if (!error) error = err;\n if (err) destroys.forEach(call);\n if (reading) return;\n destroys.forEach(call);\n callback(error);\n });\n });\n return streams.reduce(pipe);\n}\n\nmodule.exports = pipeline;","const { Transform } = require('readable-stream')\n\nmodule.exports = (KeccakState) => class Shake extends Transform {\n constructor (rate, capacity, delimitedSuffix, options) {\n super(options)\n\n this._rate = rate\n this._capacity = capacity\n this._delimitedSuffix = delimitedSuffix\n this._options = options\n\n this._state = new KeccakState()\n this._state.initialize(rate, capacity)\n this._finalized = false\n }\n\n _transform (chunk, encoding, callback) {\n let error = null\n try {\n this.update(chunk, encoding)\n } catch (err) {\n error = err\n }\n\n callback(error)\n }\n\n _flush () {}\n\n _read (size) {\n this.push(this.squeeze(size))\n }\n\n update (data, encoding) {\n if (!Buffer.isBuffer(data) && typeof data !== 'string') throw new TypeError('Data must be a string or a buffer')\n if (this._finalized) throw new Error('Squeeze already called')\n if (!Buffer.isBuffer(data)) data = Buffer.from(data, encoding)\n\n this._state.absorb(data)\n\n return this\n }\n\n squeeze (dataByteLength, encoding) {\n if (!this._finalized) {\n this._finalized = true\n this._state.absorbLastFewBits(this._delimitedSuffix)\n }\n\n let data = this._state.squeeze(dataByteLength)\n if (encoding !== undefined) data = data.toString(encoding)\n\n return data\n }\n\n _resetState () {\n this._state.initialize(this._rate, this._capacity)\n return this\n }\n\n _clone () {\n const clone = new Shake(this._rate, this._capacity, this._delimitedSuffix, this._options)\n this._state.copy(clone._state)\n clone._finalized = this._finalized\n\n return clone\n }\n}\n","const keccakState = require('./keccak-state-unroll')\n\nfunction Keccak () {\n // much faster than `new Array(50)`\n this.state = [\n 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0\n ]\n\n this.blockSize = null\n this.count = 0\n this.squeezing = false\n}\n\nKeccak.prototype.initialize = function (rate, capacity) {\n for (let i = 0; i < 50; ++i) this.state[i] = 0\n this.blockSize = rate / 8\n this.count = 0\n this.squeezing = false\n}\n\nKeccak.prototype.absorb = function (data) {\n for (let i = 0; i < data.length; ++i) {\n this.state[~~(this.count / 4)] ^= data[i] << (8 * (this.count % 4))\n this.count += 1\n if (this.count === this.blockSize) {\n keccakState.p1600(this.state)\n this.count = 0\n }\n }\n}\n\nKeccak.prototype.absorbLastFewBits = function (bits) {\n this.state[~~(this.count / 4)] ^= bits << (8 * (this.count % 4))\n if ((bits & 0x80) !== 0 && this.count === (this.blockSize - 1)) keccakState.p1600(this.state)\n this.state[~~((this.blockSize - 1) / 4)] ^= 0x80 << (8 * ((this.blockSize - 1) % 4))\n keccakState.p1600(this.state)\n this.count = 0\n this.squeezing = true\n}\n\nKeccak.prototype.squeeze = function (length) {\n if (!this.squeezing) this.absorbLastFewBits(0x01)\n\n const output = Buffer.alloc(length)\n for (let i = 0; i < length; ++i) {\n output[i] = (this.state[~~(this.count / 4)] >>> (8 * (this.count % 4))) & 0xff\n this.count += 1\n if (this.count === this.blockSize) {\n keccakState.p1600(this.state)\n this.count = 0\n }\n }\n\n return output\n}\n\nKeccak.prototype.copy = function (dest) {\n for (let i = 0; i < 50; ++i) dest.state[i] = this.state[i]\n dest.blockSize = this.blockSize\n dest.count = this.count\n dest.squeezing = this.squeezing\n}\n\nmodule.exports = Keccak\n","const P1600_ROUND_CONSTANTS = [1, 0, 32898, 0, 32906, 2147483648, 2147516416, 2147483648, 32907, 0, 2147483649, 0, 2147516545, 2147483648, 32777, 2147483648, 138, 0, 136, 0, 2147516425, 0, 2147483658, 0, 2147516555, 0, 139, 2147483648, 32905, 2147483648, 32771, 2147483648, 32770, 2147483648, 128, 2147483648, 32778, 0, 2147483658, 2147483648, 2147516545, 2147483648, 32896, 2147483648, 2147483649, 0, 2147516424, 2147483648]\n\nexports.p1600 = function (s) {\n for (let round = 0; round < 24; ++round) {\n // theta\n const lo0 = s[0] ^ s[10] ^ s[20] ^ s[30] ^ s[40]\n const hi0 = s[1] ^ s[11] ^ s[21] ^ s[31] ^ s[41]\n const lo1 = s[2] ^ s[12] ^ s[22] ^ s[32] ^ s[42]\n const hi1 = s[3] ^ s[13] ^ s[23] ^ s[33] ^ s[43]\n const lo2 = s[4] ^ s[14] ^ s[24] ^ s[34] ^ s[44]\n const hi2 = s[5] ^ s[15] ^ s[25] ^ s[35] ^ s[45]\n const lo3 = s[6] ^ s[16] ^ s[26] ^ s[36] ^ s[46]\n const hi3 = s[7] ^ s[17] ^ s[27] ^ s[37] ^ s[47]\n const lo4 = s[8] ^ s[18] ^ s[28] ^ s[38] ^ s[48]\n const hi4 = s[9] ^ s[19] ^ s[29] ^ s[39] ^ s[49]\n\n let lo = lo4 ^ (lo1 << 1 | hi1 >>> 31)\n let hi = hi4 ^ (hi1 << 1 | lo1 >>> 31)\n const t1slo0 = s[0] ^ lo\n const t1shi0 = s[1] ^ hi\n const t1slo5 = s[10] ^ lo\n const t1shi5 = s[11] ^ hi\n const t1slo10 = s[20] ^ lo\n const t1shi10 = s[21] ^ hi\n const t1slo15 = s[30] ^ lo\n const t1shi15 = s[31] ^ hi\n const t1slo20 = s[40] ^ lo\n const t1shi20 = s[41] ^ hi\n lo = lo0 ^ (lo2 << 1 | hi2 >>> 31)\n hi = hi0 ^ (hi2 << 1 | lo2 >>> 31)\n const t1slo1 = s[2] ^ lo\n const t1shi1 = s[3] ^ hi\n const t1slo6 = s[12] ^ lo\n const t1shi6 = s[13] ^ hi\n const t1slo11 = s[22] ^ lo\n const t1shi11 = s[23] ^ hi\n const t1slo16 = s[32] ^ lo\n const t1shi16 = s[33] ^ hi\n const t1slo21 = s[42] ^ lo\n const t1shi21 = s[43] ^ hi\n lo = lo1 ^ (lo3 << 1 | hi3 >>> 31)\n hi = hi1 ^ (hi3 << 1 | lo3 >>> 31)\n const t1slo2 = s[4] ^ lo\n const t1shi2 = s[5] ^ hi\n const t1slo7 = s[14] ^ lo\n const t1shi7 = s[15] ^ hi\n const t1slo12 = s[24] ^ lo\n const t1shi12 = s[25] ^ hi\n const t1slo17 = s[34] ^ lo\n const t1shi17 = s[35] ^ hi\n const t1slo22 = s[44] ^ lo\n const t1shi22 = s[45] ^ hi\n lo = lo2 ^ (lo4 << 1 | hi4 >>> 31)\n hi = hi2 ^ (hi4 << 1 | lo4 >>> 31)\n const t1slo3 = s[6] ^ lo\n const t1shi3 = s[7] ^ hi\n const t1slo8 = s[16] ^ lo\n const t1shi8 = s[17] ^ hi\n const t1slo13 = s[26] ^ lo\n const t1shi13 = s[27] ^ hi\n const t1slo18 = s[36] ^ lo\n const t1shi18 = s[37] ^ hi\n const t1slo23 = s[46] ^ lo\n const t1shi23 = s[47] ^ hi\n lo = lo3 ^ (lo0 << 1 | hi0 >>> 31)\n hi = hi3 ^ (hi0 << 1 | lo0 >>> 31)\n const t1slo4 = s[8] ^ lo\n const t1shi4 = s[9] ^ hi\n const t1slo9 = s[18] ^ lo\n const t1shi9 = s[19] ^ hi\n const t1slo14 = s[28] ^ lo\n const t1shi14 = s[29] ^ hi\n const t1slo19 = s[38] ^ lo\n const t1shi19 = s[39] ^ hi\n const t1slo24 = s[48] ^ lo\n const t1shi24 = s[49] ^ hi\n\n // rho & pi\n const t2slo0 = t1slo0\n const t2shi0 = t1shi0\n const t2slo16 = (t1shi5 << 4 | t1slo5 >>> 28)\n const t2shi16 = (t1slo5 << 4 | t1shi5 >>> 28)\n const t2slo7 = (t1slo10 << 3 | t1shi10 >>> 29)\n const t2shi7 = (t1shi10 << 3 | t1slo10 >>> 29)\n const t2slo23 = (t1shi15 << 9 | t1slo15 >>> 23)\n const t2shi23 = (t1slo15 << 9 | t1shi15 >>> 23)\n const t2slo14 = (t1slo20 << 18 | t1shi20 >>> 14)\n const t2shi14 = (t1shi20 << 18 | t1slo20 >>> 14)\n const t2slo10 = (t1slo1 << 1 | t1shi1 >>> 31)\n const t2shi10 = (t1shi1 << 1 | t1slo1 >>> 31)\n const t2slo1 = (t1shi6 << 12 | t1slo6 >>> 20)\n const t2shi1 = (t1slo6 << 12 | t1shi6 >>> 20)\n const t2slo17 = (t1slo11 << 10 | t1shi11 >>> 22)\n const t2shi17 = (t1shi11 << 10 | t1slo11 >>> 22)\n const t2slo8 = (t1shi16 << 13 | t1slo16 >>> 19)\n const t2shi8 = (t1slo16 << 13 | t1shi16 >>> 19)\n const t2slo24 = (t1slo21 << 2 | t1shi21 >>> 30)\n const t2shi24 = (t1shi21 << 2 | t1slo21 >>> 30)\n const t2slo20 = (t1shi2 << 30 | t1slo2 >>> 2)\n const t2shi20 = (t1slo2 << 30 | t1shi2 >>> 2)\n const t2slo11 = (t1slo7 << 6 | t1shi7 >>> 26)\n const t2shi11 = (t1shi7 << 6 | t1slo7 >>> 26)\n const t2slo2 = (t1shi12 << 11 | t1slo12 >>> 21)\n const t2shi2 = (t1slo12 << 11 | t1shi12 >>> 21)\n const t2slo18 = (t1slo17 << 15 | t1shi17 >>> 17)\n const t2shi18 = (t1shi17 << 15 | t1slo17 >>> 17)\n const t2slo9 = (t1shi22 << 29 | t1slo22 >>> 3)\n const t2shi9 = (t1slo22 << 29 | t1shi22 >>> 3)\n const t2slo5 = (t1slo3 << 28 | t1shi3 >>> 4)\n const t2shi5 = (t1shi3 << 28 | t1slo3 >>> 4)\n const t2slo21 = (t1shi8 << 23 | t1slo8 >>> 9)\n const t2shi21 = (t1slo8 << 23 | t1shi8 >>> 9)\n const t2slo12 = (t1slo13 << 25 | t1shi13 >>> 7)\n const t2shi12 = (t1shi13 << 25 | t1slo13 >>> 7)\n const t2slo3 = (t1slo18 << 21 | t1shi18 >>> 11)\n const t2shi3 = (t1shi18 << 21 | t1slo18 >>> 11)\n const t2slo19 = (t1shi23 << 24 | t1slo23 >>> 8)\n const t2shi19 = (t1slo23 << 24 | t1shi23 >>> 8)\n const t2slo15 = (t1slo4 << 27 | t1shi4 >>> 5)\n const t2shi15 = (t1shi4 << 27 | t1slo4 >>> 5)\n const t2slo6 = (t1slo9 << 20 | t1shi9 >>> 12)\n const t2shi6 = (t1shi9 << 20 | t1slo9 >>> 12)\n const t2slo22 = (t1shi14 << 7 | t1slo14 >>> 25)\n const t2shi22 = (t1slo14 << 7 | t1shi14 >>> 25)\n const t2slo13 = (t1slo19 << 8 | t1shi19 >>> 24)\n const t2shi13 = (t1shi19 << 8 | t1slo19 >>> 24)\n const t2slo4 = (t1slo24 << 14 | t1shi24 >>> 18)\n const t2shi4 = (t1shi24 << 14 | t1slo24 >>> 18)\n\n // chi\n s[0] = t2slo0 ^ (~t2slo1 & t2slo2)\n s[1] = t2shi0 ^ (~t2shi1 & t2shi2)\n s[10] = t2slo5 ^ (~t2slo6 & t2slo7)\n s[11] = t2shi5 ^ (~t2shi6 & t2shi7)\n s[20] = t2slo10 ^ (~t2slo11 & t2slo12)\n s[21] = t2shi10 ^ (~t2shi11 & t2shi12)\n s[30] = t2slo15 ^ (~t2slo16 & t2slo17)\n s[31] = t2shi15 ^ (~t2shi16 & t2shi17)\n s[40] = t2slo20 ^ (~t2slo21 & t2slo22)\n s[41] = t2shi20 ^ (~t2shi21 & t2shi22)\n s[2] = t2slo1 ^ (~t2slo2 & t2slo3)\n s[3] = t2shi1 ^ (~t2shi2 & t2shi3)\n s[12] = t2slo6 ^ (~t2slo7 & t2slo8)\n s[13] = t2shi6 ^ (~t2shi7 & t2shi8)\n s[22] = t2slo11 ^ (~t2slo12 & t2slo13)\n s[23] = t2shi11 ^ (~t2shi12 & t2shi13)\n s[32] = t2slo16 ^ (~t2slo17 & t2slo18)\n s[33] = t2shi16 ^ (~t2shi17 & t2shi18)\n s[42] = t2slo21 ^ (~t2slo22 & t2slo23)\n s[43] = t2shi21 ^ (~t2shi22 & t2shi23)\n s[4] = t2slo2 ^ (~t2slo3 & t2slo4)\n s[5] = t2shi2 ^ (~t2shi3 & t2shi4)\n s[14] = t2slo7 ^ (~t2slo8 & t2slo9)\n s[15] = t2shi7 ^ (~t2shi8 & t2shi9)\n s[24] = t2slo12 ^ (~t2slo13 & t2slo14)\n s[25] = t2shi12 ^ (~t2shi13 & t2shi14)\n s[34] = t2slo17 ^ (~t2slo18 & t2slo19)\n s[35] = t2shi17 ^ (~t2shi18 & t2shi19)\n s[44] = t2slo22 ^ (~t2slo23 & t2slo24)\n s[45] = t2shi22 ^ (~t2shi23 & t2shi24)\n s[6] = t2slo3 ^ (~t2slo4 & t2slo0)\n s[7] = t2shi3 ^ (~t2shi4 & t2shi0)\n s[16] = t2slo8 ^ (~t2slo9 & t2slo5)\n s[17] = t2shi8 ^ (~t2shi9 & t2shi5)\n s[26] = t2slo13 ^ (~t2slo14 & t2slo10)\n s[27] = t2shi13 ^ (~t2shi14 & t2shi10)\n s[36] = t2slo18 ^ (~t2slo19 & t2slo15)\n s[37] = t2shi18 ^ (~t2shi19 & t2shi15)\n s[46] = t2slo23 ^ (~t2slo24 & t2slo20)\n s[47] = t2shi23 ^ (~t2shi24 & t2shi20)\n s[8] = t2slo4 ^ (~t2slo0 & t2slo1)\n s[9] = t2shi4 ^ (~t2shi0 & t2shi1)\n s[18] = t2slo9 ^ (~t2slo5 & t2slo6)\n s[19] = t2shi9 ^ (~t2shi5 & t2shi6)\n s[28] = t2slo14 ^ (~t2slo10 & t2slo11)\n s[29] = t2shi14 ^ (~t2shi10 & t2shi11)\n s[38] = t2slo19 ^ (~t2slo15 & t2slo16)\n s[39] = t2shi19 ^ (~t2shi15 & t2shi16)\n s[48] = t2slo24 ^ (~t2slo20 & t2slo21)\n s[49] = t2shi24 ^ (~t2shi20 & t2shi21)\n\n // iota\n s[0] ^= P1600_ROUND_CONSTANTS[round * 2]\n s[1] ^= P1600_ROUND_CONSTANTS[round * 2 + 1]\n }\n}\n","exports = module.exports = require('./lib/_stream_readable.js');\nexports.Stream = exports;\nexports.Readable = exports;\nexports.Writable = require('./lib/_stream_writable.js');\nexports.Duplex = require('./lib/_stream_duplex.js');\nexports.Transform = require('./lib/_stream_transform.js');\nexports.PassThrough = require('./lib/_stream_passthrough.js');\nexports.finished = require('./lib/internal/streams/end-of-stream.js');\nexports.pipeline = require('./lib/internal/streams/pipeline.js');\n","'use strict';\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar _require = require('buffer'),\n Buffer = _require.Buffer;\n\nvar _require2 = require('util'),\n inspect = _require2.inspect;\n\nvar custom = inspect && inspect.custom || 'inspect';\n\nfunction copyBuffer(src, target, offset) {\n Buffer.prototype.copy.call(src, target, offset);\n}\n\nmodule.exports =\n/*#__PURE__*/\nfunction () {\n function BufferList() {\n _classCallCheck(this, BufferList);\n\n this.head = null;\n this.tail = null;\n this.length = 0;\n }\n\n _createClass(BufferList, [{\n key: \"push\",\n value: function push(v) {\n var entry = {\n data: v,\n next: null\n };\n if (this.length > 0) this.tail.next = entry;else this.head = entry;\n this.tail = entry;\n ++this.length;\n }\n }, {\n key: \"unshift\",\n value: function unshift(v) {\n var entry = {\n data: v,\n next: this.head\n };\n if (this.length === 0) this.tail = entry;\n this.head = entry;\n ++this.length;\n }\n }, {\n key: \"shift\",\n value: function shift() {\n if (this.length === 0) return;\n var ret = this.head.data;\n if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next;\n --this.length;\n return ret;\n }\n }, {\n key: \"clear\",\n value: function clear() {\n this.head = this.tail = null;\n this.length = 0;\n }\n }, {\n key: \"join\",\n value: function join(s) {\n if (this.length === 0) return '';\n var p = this.head;\n var ret = '' + p.data;\n\n while (p = p.next) {\n ret += s + p.data;\n }\n\n return ret;\n }\n }, {\n key: \"concat\",\n value: function concat(n) {\n if (this.length === 0) return Buffer.alloc(0);\n var ret = Buffer.allocUnsafe(n >>> 0);\n var p = this.head;\n var i = 0;\n\n while (p) {\n copyBuffer(p.data, ret, i);\n i += p.data.length;\n p = p.next;\n }\n\n return ret;\n } // Consumes a specified amount of bytes or characters from the buffered data.\n\n }, {\n key: \"consume\",\n value: function consume(n, hasStrings) {\n var ret;\n\n if (n < this.head.data.length) {\n // `slice` is the same for buffers and strings.\n ret = this.head.data.slice(0, n);\n this.head.data = this.head.data.slice(n);\n } else if (n === this.head.data.length) {\n // First chunk is a perfect match.\n ret = this.shift();\n } else {\n // Result spans more than one buffer.\n ret = hasStrings ? this._getString(n) : this._getBuffer(n);\n }\n\n return ret;\n }\n }, {\n key: \"first\",\n value: function first() {\n return this.head.data;\n } // Consumes a specified amount of characters from the buffered data.\n\n }, {\n key: \"_getString\",\n value: function _getString(n) {\n var p = this.head;\n var c = 1;\n var ret = p.data;\n n -= ret.length;\n\n while (p = p.next) {\n var str = p.data;\n var nb = n > str.length ? str.length : n;\n if (nb === str.length) ret += str;else ret += str.slice(0, n);\n n -= nb;\n\n if (n === 0) {\n if (nb === str.length) {\n ++c;\n if (p.next) this.head = p.next;else this.head = this.tail = null;\n } else {\n this.head = p;\n p.data = str.slice(nb);\n }\n\n break;\n }\n\n ++c;\n }\n\n this.length -= c;\n return ret;\n } // Consumes a specified amount of bytes from the buffered data.\n\n }, {\n key: \"_getBuffer\",\n value: function _getBuffer(n) {\n var ret = Buffer.allocUnsafe(n);\n var p = this.head;\n var c = 1;\n p.data.copy(ret);\n n -= p.data.length;\n\n while (p = p.next) {\n var buf = p.data;\n var nb = n > buf.length ? buf.length : n;\n buf.copy(ret, ret.length - n, 0, nb);\n n -= nb;\n\n if (n === 0) {\n if (nb === buf.length) {\n ++c;\n if (p.next) this.head = p.next;else this.head = this.tail = null;\n } else {\n this.head = p;\n p.data = buf.slice(nb);\n }\n\n break;\n }\n\n ++c;\n }\n\n this.length -= c;\n return ret;\n } // Make sure the linked list only shows the minimal necessary information.\n\n }, {\n key: custom,\n value: function value(_, options) {\n return inspect(this, _objectSpread({}, options, {\n // Only inspect one level.\n depth: 0,\n // It should not recurse.\n customInspect: false\n }));\n }\n }]);\n\n return BufferList;\n}();","'use strict';\n\nvar _Object$setPrototypeO;\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar finished = require('./end-of-stream');\n\nvar kLastResolve = Symbol('lastResolve');\nvar kLastReject = Symbol('lastReject');\nvar kError = Symbol('error');\nvar kEnded = Symbol('ended');\nvar kLastPromise = Symbol('lastPromise');\nvar kHandlePromise = Symbol('handlePromise');\nvar kStream = Symbol('stream');\n\nfunction createIterResult(value, done) {\n return {\n value: value,\n done: done\n };\n}\n\nfunction readAndResolve(iter) {\n var resolve = iter[kLastResolve];\n\n if (resolve !== null) {\n var data = iter[kStream].read(); // we defer if data is null\n // we can be expecting either 'end' or\n // 'error'\n\n if (data !== null) {\n iter[kLastPromise] = null;\n iter[kLastResolve] = null;\n iter[kLastReject] = null;\n resolve(createIterResult(data, false));\n }\n }\n}\n\nfunction onReadable(iter) {\n // we wait for the next tick, because it might\n // emit an error with process.nextTick\n process.nextTick(readAndResolve, iter);\n}\n\nfunction wrapForNext(lastPromise, iter) {\n return function (resolve, reject) {\n lastPromise.then(function () {\n if (iter[kEnded]) {\n resolve(createIterResult(undefined, true));\n return;\n }\n\n iter[kHandlePromise](resolve, reject);\n }, reject);\n };\n}\n\nvar AsyncIteratorPrototype = Object.getPrototypeOf(function () {});\nvar ReadableStreamAsyncIteratorPrototype = Object.setPrototypeOf((_Object$setPrototypeO = {\n get stream() {\n return this[kStream];\n },\n\n next: function next() {\n var _this = this;\n\n // if we have detected an error in the meanwhile\n // reject straight away\n var error = this[kError];\n\n if (error !== null) {\n return Promise.reject(error);\n }\n\n if (this[kEnded]) {\n return Promise.resolve(createIterResult(undefined, true));\n }\n\n if (this[kStream].destroyed) {\n // We need to defer via nextTick because if .destroy(err) is\n // called, the error will be emitted via nextTick, and\n // we cannot guarantee that there is no error lingering around\n // waiting to be emitted.\n return new Promise(function (resolve, reject) {\n process.nextTick(function () {\n if (_this[kError]) {\n reject(_this[kError]);\n } else {\n resolve(createIterResult(undefined, true));\n }\n });\n });\n } // if we have multiple next() calls\n // we will wait for the previous Promise to finish\n // this logic is optimized to support for await loops,\n // where next() is only called once at a time\n\n\n var lastPromise = this[kLastPromise];\n var promise;\n\n if (lastPromise) {\n promise = new Promise(wrapForNext(lastPromise, this));\n } else {\n // fast path needed to support multiple this.push()\n // without triggering the next() queue\n var data = this[kStream].read();\n\n if (data !== null) {\n return Promise.resolve(createIterResult(data, false));\n }\n\n promise = new Promise(this[kHandlePromise]);\n }\n\n this[kLastPromise] = promise;\n return promise;\n }\n}, _defineProperty(_Object$setPrototypeO, Symbol.asyncIterator, function () {\n return this;\n}), _defineProperty(_Object$setPrototypeO, \"return\", function _return() {\n var _this2 = this;\n\n // destroy(err, cb) is a private API\n // we can guarantee we have that here, because we control the\n // Readable class this is attached to\n return new Promise(function (resolve, reject) {\n _this2[kStream].destroy(null, function (err) {\n if (err) {\n reject(err);\n return;\n }\n\n resolve(createIterResult(undefined, true));\n });\n });\n}), _Object$setPrototypeO), AsyncIteratorPrototype);\n\nvar createReadableStreamAsyncIterator = function createReadableStreamAsyncIterator(stream) {\n var _Object$create;\n\n var iterator = Object.create(ReadableStreamAsyncIteratorPrototype, (_Object$create = {}, _defineProperty(_Object$create, kStream, {\n value: stream,\n writable: true\n }), _defineProperty(_Object$create, kLastResolve, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kLastReject, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kError, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kEnded, {\n value: stream._readableState.endEmitted,\n writable: true\n }), _defineProperty(_Object$create, kHandlePromise, {\n value: function value(resolve, reject) {\n var data = iterator[kStream].read();\n\n if (data) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n resolve(createIterResult(data, false));\n } else {\n iterator[kLastResolve] = resolve;\n iterator[kLastReject] = reject;\n }\n },\n writable: true\n }), _Object$create));\n iterator[kLastPromise] = null;\n finished(stream, function (err) {\n if (err && err.code !== 'ERR_STREAM_PREMATURE_CLOSE') {\n var reject = iterator[kLastReject]; // reject if we are waiting for data in the Promise\n // returned by next() and store the error\n\n if (reject !== null) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n reject(err);\n }\n\n iterator[kError] = err;\n return;\n }\n\n var resolve = iterator[kLastResolve];\n\n if (resolve !== null) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n resolve(createIterResult(undefined, true));\n }\n\n iterator[kEnded] = true;\n });\n stream.on('readable', onReadable.bind(null, iterator));\n return iterator;\n};\n\nmodule.exports = createReadableStreamAsyncIterator;","module.exports = function () {\n throw new Error('Readable.from is not available in the browser')\n};\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n// a passthrough stream.\n// basically just the most minimal sort of Transform stream.\n// Every written chunk gets output as-is.\n'use strict';\n\nmodule.exports = PassThrough;\n\nvar Transform = require('./_stream_transform');\n\nrequire('inherits')(PassThrough, Transform);\n\nfunction PassThrough(options) {\n if (!(this instanceof PassThrough)) return new PassThrough(options);\n Transform.call(this, options);\n}\n\nPassThrough.prototype._transform = function (chunk, encoding, cb) {\n cb(null, chunk);\n};","// Ported from https://github.com/mafintosh/pump with\n// permission from the author, Mathias Buus (@mafintosh).\n'use strict';\n\nvar eos;\n\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n callback.apply(void 0, arguments);\n };\n}\n\nvar _require$codes = require('../../../errors').codes,\n ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED;\n\nfunction noop(err) {\n // Rethrow the error if it exists to avoid swallowing it\n if (err) throw err;\n}\n\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\n\nfunction destroyer(stream, reading, writing, callback) {\n callback = once(callback);\n var closed = false;\n stream.on('close', function () {\n closed = true;\n });\n if (eos === undefined) eos = require('./end-of-stream');\n eos(stream, {\n readable: reading,\n writable: writing\n }, function (err) {\n if (err) return callback(err);\n closed = true;\n callback();\n });\n var destroyed = false;\n return function (err) {\n if (closed) return;\n if (destroyed) return;\n destroyed = true; // request.destroy just do .end - .abort is what we want\n\n if (isRequest(stream)) return stream.abort();\n if (typeof stream.destroy === 'function') return stream.destroy();\n callback(err || new ERR_STREAM_DESTROYED('pipe'));\n };\n}\n\nfunction call(fn) {\n fn();\n}\n\nfunction pipe(from, to) {\n return from.pipe(to);\n}\n\nfunction popCallback(streams) {\n if (!streams.length) return noop;\n if (typeof streams[streams.length - 1] !== 'function') return noop;\n return streams.pop();\n}\n\nfunction pipeline() {\n for (var _len = arguments.length, streams = new Array(_len), _key = 0; _key < _len; _key++) {\n streams[_key] = arguments[_key];\n }\n\n var callback = popCallback(streams);\n if (Array.isArray(streams[0])) streams = streams[0];\n\n if (streams.length < 2) {\n throw new ERR_MISSING_ARGS('streams');\n }\n\n var error;\n var destroys = streams.map(function (stream, i) {\n var reading = i < streams.length - 1;\n var writing = i > 0;\n return destroyer(stream, reading, writing, function (err) {\n if (!error) error = err;\n if (err) destroys.forEach(call);\n if (reading) return;\n destroys.forEach(call);\n callback(error);\n });\n });\n return streams.reduce(pipe);\n}\n\nmodule.exports = pipeline;","/*\n * A JavaScript implementation of the Secure Hash Algorithm, SHA-0, as defined\n * in FIPS PUB 180-1\n * This source code is derived from sha1.js of the same repository.\n * The difference between SHA-0 and SHA-1 is just a bitwise rotate left\n * operation was added.\n */\n\nvar inherits = require('inherits')\nvar Hash = require('./hash')\nvar Buffer = require('safe-buffer').Buffer\n\nvar K = [\n 0x5a827999, 0x6ed9eba1, 0x8f1bbcdc | 0, 0xca62c1d6 | 0\n]\n\nvar W = new Array(80)\n\nfunction Sha () {\n this.init()\n this._w = W\n\n Hash.call(this, 64, 56)\n}\n\ninherits(Sha, Hash)\n\nSha.prototype.init = function () {\n this._a = 0x67452301\n this._b = 0xefcdab89\n this._c = 0x98badcfe\n this._d = 0x10325476\n this._e = 0xc3d2e1f0\n\n return this\n}\n\nfunction rotl5 (num) {\n return (num << 5) | (num >>> 27)\n}\n\nfunction rotl30 (num) {\n return (num << 30) | (num >>> 2)\n}\n\nfunction ft (s, b, c, d) {\n if (s === 0) return (b & c) | ((~b) & d)\n if (s === 2) return (b & c) | (b & d) | (c & d)\n return b ^ c ^ d\n}\n\nSha.prototype._update = function (M) {\n var W = this._w\n\n var a = this._a | 0\n var b = this._b | 0\n var c = this._c | 0\n var d = this._d | 0\n var e = this._e | 0\n\n for (var i = 0; i < 16; ++i) W[i] = M.readInt32BE(i * 4)\n for (; i < 80; ++i) W[i] = W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16]\n\n for (var j = 0; j < 80; ++j) {\n var s = ~~(j / 20)\n var t = (rotl5(a) + ft(s, b, c, d) + e + W[j] + K[s]) | 0\n\n e = d\n d = c\n c = rotl30(b)\n b = a\n a = t\n }\n\n this._a = (a + this._a) | 0\n this._b = (b + this._b) | 0\n this._c = (c + this._c) | 0\n this._d = (d + this._d) | 0\n this._e = (e + this._e) | 0\n}\n\nSha.prototype._hash = function () {\n var H = Buffer.allocUnsafe(20)\n\n H.writeInt32BE(this._a | 0, 0)\n H.writeInt32BE(this._b | 0, 4)\n H.writeInt32BE(this._c | 0, 8)\n H.writeInt32BE(this._d | 0, 12)\n H.writeInt32BE(this._e | 0, 16)\n\n return H\n}\n\nmodule.exports = Sha\n","/*\n * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined\n * in FIPS PUB 180-1\n * Version 2.1a Copyright Paul Johnston 2000 - 2002.\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n * Distributed under the BSD License\n * See http://pajhome.org.uk/crypt/md5 for details.\n */\n\nvar inherits = require('inherits')\nvar Hash = require('./hash')\nvar Buffer = require('safe-buffer').Buffer\n\nvar K = [\n 0x5a827999, 0x6ed9eba1, 0x8f1bbcdc | 0, 0xca62c1d6 | 0\n]\n\nvar W = new Array(80)\n\nfunction Sha1 () {\n this.init()\n this._w = W\n\n Hash.call(this, 64, 56)\n}\n\ninherits(Sha1, Hash)\n\nSha1.prototype.init = function () {\n this._a = 0x67452301\n this._b = 0xefcdab89\n this._c = 0x98badcfe\n this._d = 0x10325476\n this._e = 0xc3d2e1f0\n\n return this\n}\n\nfunction rotl1 (num) {\n return (num << 1) | (num >>> 31)\n}\n\nfunction rotl5 (num) {\n return (num << 5) | (num >>> 27)\n}\n\nfunction rotl30 (num) {\n return (num << 30) | (num >>> 2)\n}\n\nfunction ft (s, b, c, d) {\n if (s === 0) return (b & c) | ((~b) & d)\n if (s === 2) return (b & c) | (b & d) | (c & d)\n return b ^ c ^ d\n}\n\nSha1.prototype._update = function (M) {\n var W = this._w\n\n var a = this._a | 0\n var b = this._b | 0\n var c = this._c | 0\n var d = this._d | 0\n var e = this._e | 0\n\n for (var i = 0; i < 16; ++i) W[i] = M.readInt32BE(i * 4)\n for (; i < 80; ++i) W[i] = rotl1(W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16])\n\n for (var j = 0; j < 80; ++j) {\n var s = ~~(j / 20)\n var t = (rotl5(a) + ft(s, b, c, d) + e + W[j] + K[s]) | 0\n\n e = d\n d = c\n c = rotl30(b)\n b = a\n a = t\n }\n\n this._a = (a + this._a) | 0\n this._b = (b + this._b) | 0\n this._c = (c + this._c) | 0\n this._d = (d + this._d) | 0\n this._e = (e + this._e) | 0\n}\n\nSha1.prototype._hash = function () {\n var H = Buffer.allocUnsafe(20)\n\n H.writeInt32BE(this._a | 0, 0)\n H.writeInt32BE(this._b | 0, 4)\n H.writeInt32BE(this._c | 0, 8)\n H.writeInt32BE(this._d | 0, 12)\n H.writeInt32BE(this._e | 0, 16)\n\n return H\n}\n\nmodule.exports = Sha1\n","/**\n * A JavaScript implementation of the Secure Hash Algorithm, SHA-256, as defined\n * in FIPS 180-2\n * Version 2.2-beta Copyright Angel Marin, Paul Johnston 2000 - 2009.\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n *\n */\n\nvar inherits = require('inherits')\nvar Sha256 = require('./sha256')\nvar Hash = require('./hash')\nvar Buffer = require('safe-buffer').Buffer\n\nvar W = new Array(64)\n\nfunction Sha224 () {\n this.init()\n\n this._w = W // new Array(64)\n\n Hash.call(this, 64, 56)\n}\n\ninherits(Sha224, Sha256)\n\nSha224.prototype.init = function () {\n this._a = 0xc1059ed8\n this._b = 0x367cd507\n this._c = 0x3070dd17\n this._d = 0xf70e5939\n this._e = 0xffc00b31\n this._f = 0x68581511\n this._g = 0x64f98fa7\n this._h = 0xbefa4fa4\n\n return this\n}\n\nSha224.prototype._hash = function () {\n var H = Buffer.allocUnsafe(28)\n\n H.writeInt32BE(this._a, 0)\n H.writeInt32BE(this._b, 4)\n H.writeInt32BE(this._c, 8)\n H.writeInt32BE(this._d, 12)\n H.writeInt32BE(this._e, 16)\n H.writeInt32BE(this._f, 20)\n H.writeInt32BE(this._g, 24)\n\n return H\n}\n\nmodule.exports = Sha224\n","var inherits = require('inherits')\nvar SHA512 = require('./sha512')\nvar Hash = require('./hash')\nvar Buffer = require('safe-buffer').Buffer\n\nvar W = new Array(160)\n\nfunction Sha384 () {\n this.init()\n this._w = W\n\n Hash.call(this, 128, 112)\n}\n\ninherits(Sha384, SHA512)\n\nSha384.prototype.init = function () {\n this._ah = 0xcbbb9d5d\n this._bh = 0x629a292a\n this._ch = 0x9159015a\n this._dh = 0x152fecd8\n this._eh = 0x67332667\n this._fh = 0x8eb44a87\n this._gh = 0xdb0c2e0d\n this._hh = 0x47b5481d\n\n this._al = 0xc1059ed8\n this._bl = 0x367cd507\n this._cl = 0x3070dd17\n this._dl = 0xf70e5939\n this._el = 0xffc00b31\n this._fl = 0x68581511\n this._gl = 0x64f98fa7\n this._hl = 0xbefa4fa4\n\n return this\n}\n\nSha384.prototype._hash = function () {\n var H = Buffer.allocUnsafe(48)\n\n function writeInt64BE (h, l, offset) {\n H.writeInt32BE(h, offset)\n H.writeInt32BE(l, offset + 4)\n }\n\n writeInt64BE(this._ah, this._al, 0)\n writeInt64BE(this._bh, this._bl, 8)\n writeInt64BE(this._ch, this._cl, 16)\n writeInt64BE(this._dh, this._dl, 24)\n writeInt64BE(this._eh, this._el, 32)\n writeInt64BE(this._fh, this._fl, 40)\n\n return H\n}\n\nmodule.exports = Sha384\n","'use strict';\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Buffer = require('safe-buffer').Buffer;\nvar util = require('util');\n\nfunction copyBuffer(src, target, offset) {\n src.copy(target, offset);\n}\n\nmodule.exports = function () {\n function BufferList() {\n _classCallCheck(this, BufferList);\n\n this.head = null;\n this.tail = null;\n this.length = 0;\n }\n\n BufferList.prototype.push = function push(v) {\n var entry = { data: v, next: null };\n if (this.length > 0) this.tail.next = entry;else this.head = entry;\n this.tail = entry;\n ++this.length;\n };\n\n BufferList.prototype.unshift = function unshift(v) {\n var entry = { data: v, next: this.head };\n if (this.length === 0) this.tail = entry;\n this.head = entry;\n ++this.length;\n };\n\n BufferList.prototype.shift = function shift() {\n if (this.length === 0) return;\n var ret = this.head.data;\n if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next;\n --this.length;\n return ret;\n };\n\n BufferList.prototype.clear = function clear() {\n this.head = this.tail = null;\n this.length = 0;\n };\n\n BufferList.prototype.join = function join(s) {\n if (this.length === 0) return '';\n var p = this.head;\n var ret = '' + p.data;\n while (p = p.next) {\n ret += s + p.data;\n }return ret;\n };\n\n BufferList.prototype.concat = function concat(n) {\n if (this.length === 0) return Buffer.alloc(0);\n if (this.length === 1) return this.head.data;\n var ret = Buffer.allocUnsafe(n >>> 0);\n var p = this.head;\n var i = 0;\n while (p) {\n copyBuffer(p.data, ret, i);\n i += p.data.length;\n p = p.next;\n }\n return ret;\n };\n\n return BufferList;\n}();\n\nif (util && util.inspect && util.inspect.custom) {\n module.exports.prototype[util.inspect.custom] = function () {\n var obj = util.inspect({ length: this.length });\n return this.constructor.name + ' ' + obj;\n };\n}","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a